ui-thing 0.1.2 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,12 +1,12 @@
1
1
  #!/usr/bin/env node
2
- import{a as fe,b as an,f as me}from"./chunk-QMEJXGGM.js";var xr=fe(Qn=>{"use strict";var vr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");Qn.encode=function(r){if(0<=r&&r<vr.length)return vr[r];throw new TypeError("Must be between 0 and 63: "+r)};Qn.decode=function(r){var n=65,e=90,t=97,s=122,i=48,a=57,o=43,l=47,c=26,p=52;return n<=r&&r<=e?r-n:t<=r&&r<=s?r-t+c:i<=r&&r<=a?r-i+p:r==o?62:r==l?63:-1}});var es=fe(Zn=>{"use strict";var Pr=xr(),Yn=5,Tr=1<<Yn,wr=Tr-1,Cr=Tr;function Ja(r){return r<0?(-r<<1)+1:(r<<1)+0}function Xa(r){var n=(r&1)===1,e=r>>1;return n?-e:e}Zn.encode=function(n){var e="",t,s=Ja(n);do t=s&wr,s>>>=Yn,s>0&&(t|=Cr),e+=Pr.encode(t);while(s>0);return e};Zn.decode=function(n,e,t){var s=n.length,i=0,a=0,o,l;do{if(e>=s)throw new Error("Expected more digits in base 64 VLQ value.");if(l=Pr.decode(n.charCodeAt(e++)),l===-1)throw new Error("Invalid base64 digit: "+n.charAt(e-1));o=!!(l&Cr),l&=wr,i=i+(l<<a),a+=Yn}while(o);t.value=Xa(i),t.rest=e}});var at=fe(ee=>{"use strict";function Qa(r,n,e){if(n in r)return r[n];if(arguments.length===3)return e;throw new Error('"'+n+'" is a required argument.')}ee.getArg=Qa;var Sr=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,Ya=/^data:.+\,.+$/;function kt(r){var n=r.match(Sr);return n?{scheme:n[1],auth:n[2],host:n[3],port:n[4],path:n[5]}:null}ee.urlParse=kt;function it(r){var n="";return r.scheme&&(n+=r.scheme+":"),n+="//",r.auth&&(n+=r.auth+"@"),r.host&&(n+=r.host),r.port&&(n+=":"+r.port),r.path&&(n+=r.path),n}ee.urlGenerate=it;var Za=32;function eo(r){var n=[];return function(e){for(var t=0;t<n.length;t++)if(n[t].input===e){var s=n[0];return n[0]=n[t],n[t]=s,n[0].result}var i=r(e);return n.unshift({input:e,result:i}),n.length>Za&&n.pop(),i}}var ts=eo(function(n){var e=n,t=kt(n);if(t){if(!t.path)return n;e=t.path}for(var s=ee.isAbsolute(e),i=[],a=0,o=0;;)if(a=o,o=e.indexOf("/",a),o===-1){i.push(e.slice(a));break}else for(i.push(e.slice(a,o));o<e.length&&e[o]==="/";)o++;for(var l,c=0,o=i.length-1;o>=0;o--)l=i[o],l==="."?i.splice(o,1):l===".."?c++:c>0&&(l===""?(i.splice(o+1,c),c=0):(i.splice(o,2),c--));return e=i.join("/"),e===""&&(e=s?"/":"."),t?(t.path=e,it(t)):e});ee.normalize=ts;function Ir(r,n){r===""&&(r="."),n===""&&(n=".");var e=kt(n),t=kt(r);if(t&&(r=t.path||"/"),e&&!e.scheme)return t&&(e.scheme=t.scheme),it(e);if(e||n.match(Ya))return n;if(t&&!t.host&&!t.path)return t.host=n,it(t);var s=n.charAt(0)==="/"?n:ts(r.replace(/\/+$/,"")+"/"+n);return t?(t.path=s,it(t)):s}ee.join=Ir;ee.isAbsolute=function(r){return r.charAt(0)==="/"||Sr.test(r)};function to(r,n){r===""&&(r="."),r=r.replace(/\/$/,"");for(var e=0;n.indexOf(r+"/")!==0;){var t=r.lastIndexOf("/");if(t<0||(r=r.slice(0,t),r.match(/^([^\/]+:\/)?\/*$/)))return n;++e}return Array(e+1).join("../")+n.substr(r.length+1)}ee.relative=to;var Er=function(){var r=Object.create(null);return!("__proto__"in r)}();function Ar(r){return r}function no(r){return kr(r)?"$"+r:r}ee.toSetString=Er?Ar:no;function so(r){return kr(r)?r.slice(1):r}ee.fromSetString=Er?Ar:so;function kr(r){if(!r)return!1;var n=r.length;if(n<9||r.charCodeAt(n-1)!==95||r.charCodeAt(n-2)!==95||r.charCodeAt(n-3)!==111||r.charCodeAt(n-4)!==116||r.charCodeAt(n-5)!==111||r.charCodeAt(n-6)!==114||r.charCodeAt(n-7)!==112||r.charCodeAt(n-8)!==95||r.charCodeAt(n-9)!==95)return!1;for(var e=n-10;e>=0;e--)if(r.charCodeAt(e)!==36)return!1;return!0}function ro(r,n,e){var t=Le(r.source,n.source);return t!==0||(t=r.originalLine-n.originalLine,t!==0)||(t=r.originalColumn-n.originalColumn,t!==0||e)||(t=r.generatedColumn-n.generatedColumn,t!==0)||(t=r.generatedLine-n.generatedLine,t!==0)?t:Le(r.name,n.name)}ee.compareByOriginalPositions=ro;function io(r,n,e){var t;return t=r.originalLine-n.originalLine,t!==0||(t=r.originalColumn-n.originalColumn,t!==0||e)||(t=r.generatedColumn-n.generatedColumn,t!==0)||(t=r.generatedLine-n.generatedLine,t!==0)?t:Le(r.name,n.name)}ee.compareByOriginalPositionsNoSource=io;function ao(r,n,e){var t=r.generatedLine-n.generatedLine;return t!==0||(t=r.generatedColumn-n.generatedColumn,t!==0||e)||(t=Le(r.source,n.source),t!==0)||(t=r.originalLine-n.originalLine,t!==0)||(t=r.originalColumn-n.originalColumn,t!==0)?t:Le(r.name,n.name)}ee.compareByGeneratedPositionsDeflated=ao;function oo(r,n,e){var t=r.generatedColumn-n.generatedColumn;return t!==0||e||(t=Le(r.source,n.source),t!==0)||(t=r.originalLine-n.originalLine,t!==0)||(t=r.originalColumn-n.originalColumn,t!==0)?t:Le(r.name,n.name)}ee.compareByGeneratedPositionsDeflatedNoLine=oo;function Le(r,n){return r===n?0:r===null?1:n===null?-1:r>n?1:-1}function lo(r,n){var e=r.generatedLine-n.generatedLine;return e!==0||(e=r.generatedColumn-n.generatedColumn,e!==0)||(e=Le(r.source,n.source),e!==0)||(e=r.originalLine-n.originalLine,e!==0)||(e=r.originalColumn-n.originalColumn,e!==0)?e:Le(r.name,n.name)}ee.compareByGeneratedPositionsInflated=lo;function co(r){return JSON.parse(r.replace(/^\)]}'[^\n]*\n/,""))}ee.parseSourceMapInput=co;function po(r,n,e){if(n=n||"",r&&(r[r.length-1]!=="/"&&n[0]!=="/"&&(r+="/"),n=r+n),e){var t=kt(e);if(!t)throw new Error("sourceMapURL could not be parsed");if(t.path){var s=t.path.lastIndexOf("/");s>=0&&(t.path=t.path.substring(0,s+1))}n=Ir(it(t),n)}return ts(n)}ee.computeSourceURL=po});var rs=fe(Nr=>{"use strict";var ns=at(),ss=Object.prototype.hasOwnProperty,Ke=typeof Map<"u";function Oe(){this._array=[],this._set=Ke?new Map:Object.create(null)}Oe.fromArray=function(n,e){for(var t=new Oe,s=0,i=n.length;s<i;s++)t.add(n[s],e);return t};Oe.prototype.size=function(){return Ke?this._set.size:Object.getOwnPropertyNames(this._set).length};Oe.prototype.add=function(n,e){var t=Ke?n:ns.toSetString(n),s=Ke?this.has(n):ss.call(this._set,t),i=this._array.length;(!s||e)&&this._array.push(n),s||(Ke?this._set.set(n,i):this._set[t]=i)};Oe.prototype.has=function(n){if(Ke)return this._set.has(n);var e=ns.toSetString(n);return ss.call(this._set,e)};Oe.prototype.indexOf=function(n){if(Ke){var e=this._set.get(n);if(e>=0)return e}else{var t=ns.toSetString(n);if(ss.call(this._set,t))return this._set[t]}throw new Error('"'+n+'" is not in the set.')};Oe.prototype.at=function(n){if(n>=0&&n<this._array.length)return this._array[n];throw new Error("No element indexed by "+n)};Oe.prototype.toArray=function(){return this._array.slice()};Nr.ArraySet=Oe});var Lr=fe(Mr=>{"use strict";var Dr=at();function uo(r,n){var e=r.generatedLine,t=n.generatedLine,s=r.generatedColumn,i=n.generatedColumn;return t>e||t==e&&i>=s||Dr.compareByGeneratedPositionsInflated(r,n)<=0}function on(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}on.prototype.unsortedForEach=function(n,e){this._array.forEach(n,e)};on.prototype.add=function(n){uo(this._last,n)?(this._last=n,this._array.push(n)):(this._sorted=!1,this._array.push(n))};on.prototype.toArray=function(){return this._sorted||(this._array.sort(Dr.compareByGeneratedPositionsInflated),this._sorted=!0),this._array};Mr.MappingList=on});var is=fe(Or=>{"use strict";var Nt=es(),Q=at(),ln=rs().ArraySet,ho=Lr().MappingList;function be(r){r||(r={}),this._file=Q.getArg(r,"file",null),this._sourceRoot=Q.getArg(r,"sourceRoot",null),this._skipValidation=Q.getArg(r,"skipValidation",!1),this._sources=new ln,this._names=new ln,this._mappings=new ho,this._sourcesContents=null}be.prototype._version=3;be.fromSourceMap=function(n){var e=n.sourceRoot,t=new be({file:n.file,sourceRoot:e});return n.eachMapping(function(s){var i={generated:{line:s.generatedLine,column:s.generatedColumn}};s.source!=null&&(i.source=s.source,e!=null&&(i.source=Q.relative(e,i.source)),i.original={line:s.originalLine,column:s.originalColumn},s.name!=null&&(i.name=s.name)),t.addMapping(i)}),n.sources.forEach(function(s){var i=s;e!==null&&(i=Q.relative(e,s)),t._sources.has(i)||t._sources.add(i);var a=n.sourceContentFor(s);a!=null&&t.setSourceContent(s,a)}),t};be.prototype.addMapping=function(n){var e=Q.getArg(n,"generated"),t=Q.getArg(n,"original",null),s=Q.getArg(n,"source",null),i=Q.getArg(n,"name",null);this._skipValidation||this._validateMapping(e,t,s,i),s!=null&&(s=String(s),this._sources.has(s)||this._sources.add(s)),i!=null&&(i=String(i),this._names.has(i)||this._names.add(i)),this._mappings.add({generatedLine:e.line,generatedColumn:e.column,originalLine:t!=null&&t.line,originalColumn:t!=null&&t.column,source:s,name:i})};be.prototype.setSourceContent=function(n,e){var t=n;this._sourceRoot!=null&&(t=Q.relative(this._sourceRoot,t)),e!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[Q.toSetString(t)]=e):this._sourcesContents&&(delete this._sourcesContents[Q.toSetString(t)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))};be.prototype.applySourceMap=function(n,e,t){var s=e;if(e==null){if(n.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);s=n.file}var i=this._sourceRoot;i!=null&&(s=Q.relative(i,s));var a=new ln,o=new ln;this._mappings.unsortedForEach(function(l){if(l.source===s&&l.originalLine!=null){var c=n.originalPositionFor({line:l.originalLine,column:l.originalColumn});c.source!=null&&(l.source=c.source,t!=null&&(l.source=Q.join(t,l.source)),i!=null&&(l.source=Q.relative(i,l.source)),l.originalLine=c.line,l.originalColumn=c.column,c.name!=null&&(l.name=c.name))}var p=l.source;p!=null&&!a.has(p)&&a.add(p);var u=l.name;u!=null&&!o.has(u)&&o.add(u)},this),this._sources=a,this._names=o,n.sources.forEach(function(l){var c=n.sourceContentFor(l);c!=null&&(t!=null&&(l=Q.join(t,l)),i!=null&&(l=Q.relative(i,l)),this.setSourceContent(l,c))},this)};be.prototype._validateMapping=function(n,e,t,s){if(e&&typeof e.line!="number"&&typeof e.column!="number")throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if(!(n&&"line"in n&&"column"in n&&n.line>0&&n.column>=0&&!e&&!t&&!s)){if(n&&"line"in n&&"column"in n&&e&&"line"in e&&"column"in e&&n.line>0&&n.column>=0&&e.line>0&&e.column>=0&&t)return;throw new Error("Invalid mapping: "+JSON.stringify({generated:n,source:t,original:e,name:s}))}};be.prototype._serializeMappings=function(){for(var n=0,e=1,t=0,s=0,i=0,a=0,o="",l,c,p,u,h=this._mappings.toArray(),m=0,d=h.length;m<d;m++){if(c=h[m],l="",c.generatedLine!==e)for(n=0;c.generatedLine!==e;)l+=";",e++;else if(m>0){if(!Q.compareByGeneratedPositionsInflated(c,h[m-1]))continue;l+=","}l+=Nt.encode(c.generatedColumn-n),n=c.generatedColumn,c.source!=null&&(u=this._sources.indexOf(c.source),l+=Nt.encode(u-a),a=u,l+=Nt.encode(c.originalLine-1-s),s=c.originalLine-1,l+=Nt.encode(c.originalColumn-t),t=c.originalColumn,c.name!=null&&(p=this._names.indexOf(c.name),l+=Nt.encode(p-i),i=p)),o+=l}return o};be.prototype._generateSourcesContent=function(n,e){return n.map(function(t){if(!this._sourcesContents)return null;e!=null&&(t=Q.relative(e,t));var s=Q.toSetString(t);return Object.prototype.hasOwnProperty.call(this._sourcesContents,s)?this._sourcesContents[s]:null},this)};be.prototype.toJSON=function(){var n={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(n.file=this._file),this._sourceRoot!=null&&(n.sourceRoot=this._sourceRoot),this._sourcesContents&&(n.sourcesContent=this._generateSourcesContent(n.sources,n.sourceRoot)),n};be.prototype.toString=function(){return JSON.stringify(this.toJSON())};Or.SourceMapGenerator=be});var Fr=fe(Je=>{"use strict";Je.GREATEST_LOWER_BOUND=1;Je.LEAST_UPPER_BOUND=2;function as(r,n,e,t,s,i){var a=Math.floor((n-r)/2)+r,o=s(e,t[a],!0);return o===0?a:o>0?n-a>1?as(a,n,e,t,s,i):i==Je.LEAST_UPPER_BOUND?n<t.length?n:-1:a:a-r>1?as(r,a,e,t,s,i):i==Je.LEAST_UPPER_BOUND?a:r<0?-1:r}Je.search=function(n,e,t,s){if(e.length===0)return-1;var i=as(-1,e.length,n,e,t,s||Je.GREATEST_LOWER_BOUND);if(i<0)return-1;for(;i-1>=0&&t(e[i],e[i-1],!0)===0;)--i;return i}});var Rr=fe(_r=>{"use strict";function fo(r){function n(s,i,a){var o=s[i];s[i]=s[a],s[a]=o}function e(s,i){return Math.round(s+Math.random()*(i-s))}function t(s,i,a,o){if(a<o){var l=e(a,o),c=a-1;n(s,l,o);for(var p=s[o],u=a;u<o;u++)i(s[u],p,!1)<=0&&(c+=1,n(s,c,u));n(s,c+1,u);var h=c+1;t(s,i,a,h-1),t(s,i,h+1,o)}}return t}function mo(r){let n=fo.toString();return new Function(`return ${n}`)()(r)}var Ur=new WeakMap;_r.quickSort=function(r,n,e=0){let t=Ur.get(n);t===void 0&&(t=mo(n),Ur.set(n,t)),t(r,n,e,r.length-1)}});var Vr=fe(cn=>{"use strict";var D=at(),ls=Fr(),ot=rs().ArraySet,bo=es(),Dt=Rr().quickSort;function W(r,n){var e=r;return typeof r=="string"&&(e=D.parseSourceMapInput(r)),e.sections!=null?new ve(e,n):new te(e,n)}W.fromSourceMap=function(r,n){return te.fromSourceMap(r,n)};W.prototype._version=3;W.prototype.__generatedMappings=null;Object.defineProperty(W.prototype,"_generatedMappings",{configurable:!0,enumerable:!0,get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}});W.prototype.__originalMappings=null;Object.defineProperty(W.prototype,"_originalMappings",{configurable:!0,enumerable:!0,get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}});W.prototype._charIsMappingSeparator=function(n,e){var t=n.charAt(e);return t===";"||t===","};W.prototype._parseMappings=function(n,e){throw new Error("Subclasses must implement _parseMappings")};W.GENERATED_ORDER=1;W.ORIGINAL_ORDER=2;W.GREATEST_LOWER_BOUND=1;W.LEAST_UPPER_BOUND=2;W.prototype.eachMapping=function(n,e,t){var s=e||null,i=t||W.GENERATED_ORDER,a;switch(i){case W.GENERATED_ORDER:a=this._generatedMappings;break;case W.ORIGINAL_ORDER:a=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}for(var o=this.sourceRoot,l=n.bind(s),c=this._names,p=this._sources,u=this._sourceMapURL,h=0,m=a.length;h<m;h++){var d=a[h],g=d.source===null?null:p.at(d.source);g=D.computeSourceURL(o,g,u),l({source:g,generatedLine:d.generatedLine,generatedColumn:d.generatedColumn,originalLine:d.originalLine,originalColumn:d.originalColumn,name:d.name===null?null:c.at(d.name)})}};W.prototype.allGeneratedPositionsFor=function(n){var e=D.getArg(n,"line"),t={source:D.getArg(n,"source"),originalLine:e,originalColumn:D.getArg(n,"column",0)};if(t.source=this._findSourceIndex(t.source),t.source<0)return[];var s=[],i=this._findMapping(t,this._originalMappings,"originalLine","originalColumn",D.compareByOriginalPositions,ls.LEAST_UPPER_BOUND);if(i>=0){var a=this._originalMappings[i];if(n.column===void 0)for(var o=a.originalLine;a&&a.originalLine===o;)s.push({line:D.getArg(a,"generatedLine",null),column:D.getArg(a,"generatedColumn",null),lastColumn:D.getArg(a,"lastGeneratedColumn",null)}),a=this._originalMappings[++i];else for(var l=a.originalColumn;a&&a.originalLine===e&&a.originalColumn==l;)s.push({line:D.getArg(a,"generatedLine",null),column:D.getArg(a,"generatedColumn",null),lastColumn:D.getArg(a,"lastGeneratedColumn",null)}),a=this._originalMappings[++i]}return s};cn.SourceMapConsumer=W;function te(r,n){var e=r;typeof r=="string"&&(e=D.parseSourceMapInput(r));var t=D.getArg(e,"version"),s=D.getArg(e,"sources"),i=D.getArg(e,"names",[]),a=D.getArg(e,"sourceRoot",null),o=D.getArg(e,"sourcesContent",null),l=D.getArg(e,"mappings"),c=D.getArg(e,"file",null);if(t!=this._version)throw new Error("Unsupported version: "+t);a&&(a=D.normalize(a)),s=s.map(String).map(D.normalize).map(function(p){return a&&D.isAbsolute(a)&&D.isAbsolute(p)?D.relative(a,p):p}),this._names=ot.fromArray(i.map(String),!0),this._sources=ot.fromArray(s,!0),this._absoluteSources=this._sources.toArray().map(function(p){return D.computeSourceURL(a,p,n)}),this.sourceRoot=a,this.sourcesContent=o,this._mappings=l,this._sourceMapURL=n,this.file=c}te.prototype=Object.create(W.prototype);te.prototype.consumer=W;te.prototype._findSourceIndex=function(r){var n=r;if(this.sourceRoot!=null&&(n=D.relative(this.sourceRoot,n)),this._sources.has(n))return this._sources.indexOf(n);var e;for(e=0;e<this._absoluteSources.length;++e)if(this._absoluteSources[e]==r)return e;return-1};te.fromSourceMap=function(n,e){var t=Object.create(te.prototype),s=t._names=ot.fromArray(n._names.toArray(),!0),i=t._sources=ot.fromArray(n._sources.toArray(),!0);t.sourceRoot=n._sourceRoot,t.sourcesContent=n._generateSourcesContent(t._sources.toArray(),t.sourceRoot),t.file=n._file,t._sourceMapURL=e,t._absoluteSources=t._sources.toArray().map(function(m){return D.computeSourceURL(t.sourceRoot,m,e)});for(var a=n._mappings.toArray().slice(),o=t.__generatedMappings=[],l=t.__originalMappings=[],c=0,p=a.length;c<p;c++){var u=a[c],h=new jr;h.generatedLine=u.generatedLine,h.generatedColumn=u.generatedColumn,u.source&&(h.source=i.indexOf(u.source),h.originalLine=u.originalLine,h.originalColumn=u.originalColumn,u.name&&(h.name=s.indexOf(u.name)),l.push(h)),o.push(h)}return Dt(t.__originalMappings,D.compareByOriginalPositions),t};te.prototype._version=3;Object.defineProperty(te.prototype,"sources",{get:function(){return this._absoluteSources.slice()}});function jr(){this.generatedLine=0,this.generatedColumn=0,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}var os=D.compareByGeneratedPositionsDeflatedNoLine;function Br(r,n){let e=r.length,t=r.length-n;if(!(t<=1))if(t==2){let s=r[n],i=r[n+1];os(s,i)>0&&(r[n]=i,r[n+1]=s)}else if(t<20)for(let s=n;s<e;s++)for(let i=s;i>n;i--){let a=r[i-1],o=r[i];if(os(a,o)<=0)break;r[i-1]=o,r[i]=a}else Dt(r,os,n)}te.prototype._parseMappings=function(n,e){var t=1,s=0,i=0,a=0,o=0,l=0,c=n.length,p=0,u={},h={},m=[],d=[],g,f,v,w,E;let x=0;for(;p<c;)if(n.charAt(p)===";")t++,p++,s=0,Br(d,x),x=d.length;else if(n.charAt(p)===",")p++;else{for(g=new jr,g.generatedLine=t,w=p;w<c&&!this._charIsMappingSeparator(n,w);w++);for(f=n.slice(p,w),v=[];p<w;)bo.decode(n,p,h),E=h.value,p=h.rest,v.push(E);if(v.length===2)throw new Error("Found a source, but no line and column");if(v.length===3)throw new Error("Found a source and line, but no column");if(g.generatedColumn=s+v[0],s=g.generatedColumn,v.length>1&&(g.source=o+v[1],o+=v[1],g.originalLine=i+v[2],i=g.originalLine,g.originalLine+=1,g.originalColumn=a+v[3],a=g.originalColumn,v.length>4&&(g.name=l+v[4],l+=v[4])),d.push(g),typeof g.originalLine=="number"){let C=g.source;for(;m.length<=C;)m.push(null);m[C]===null&&(m[C]=[]),m[C].push(g)}}Br(d,x),this.__generatedMappings=d;for(var P=0;P<m.length;P++)m[P]!=null&&Dt(m[P],D.compareByOriginalPositionsNoSource);this.__originalMappings=[].concat(...m)};te.prototype._findMapping=function(n,e,t,s,i,a){if(n[t]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+n[t]);if(n[s]<0)throw new TypeError("Column must be greater than or equal to 0, got "+n[s]);return ls.search(n,e,i,a)};te.prototype.computeColumnSpans=function(){for(var n=0;n<this._generatedMappings.length;++n){var e=this._generatedMappings[n];if(n+1<this._generatedMappings.length){var t=this._generatedMappings[n+1];if(e.generatedLine===t.generatedLine){e.lastGeneratedColumn=t.generatedColumn-1;continue}}e.lastGeneratedColumn=1/0}};te.prototype.originalPositionFor=function(n){var e={generatedLine:D.getArg(n,"line"),generatedColumn:D.getArg(n,"column")},t=this._findMapping(e,this._generatedMappings,"generatedLine","generatedColumn",D.compareByGeneratedPositionsDeflated,D.getArg(n,"bias",W.GREATEST_LOWER_BOUND));if(t>=0){var s=this._generatedMappings[t];if(s.generatedLine===e.generatedLine){var i=D.getArg(s,"source",null);i!==null&&(i=this._sources.at(i),i=D.computeSourceURL(this.sourceRoot,i,this._sourceMapURL));var a=D.getArg(s,"name",null);return a!==null&&(a=this._names.at(a)),{source:i,line:D.getArg(s,"originalLine",null),column:D.getArg(s,"originalColumn",null),name:a}}}return{source:null,line:null,column:null,name:null}};te.prototype.hasContentsOfAllSources=function(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(n){return n==null}):!1};te.prototype.sourceContentFor=function(n,e){if(!this.sourcesContent)return null;var t=this._findSourceIndex(n);if(t>=0)return this.sourcesContent[t];var s=n;this.sourceRoot!=null&&(s=D.relative(this.sourceRoot,s));var i;if(this.sourceRoot!=null&&(i=D.urlParse(this.sourceRoot))){var a=s.replace(/^file:\/\//,"");if(i.scheme=="file"&&this._sources.has(a))return this.sourcesContent[this._sources.indexOf(a)];if((!i.path||i.path=="/")&&this._sources.has("/"+s))return this.sourcesContent[this._sources.indexOf("/"+s)]}if(e)return null;throw new Error('"'+s+'" is not in the SourceMap.')};te.prototype.generatedPositionFor=function(n){var e=D.getArg(n,"source");if(e=this._findSourceIndex(e),e<0)return{line:null,column:null,lastColumn:null};var t={source:e,originalLine:D.getArg(n,"line"),originalColumn:D.getArg(n,"column")},s=this._findMapping(t,this._originalMappings,"originalLine","originalColumn",D.compareByOriginalPositions,D.getArg(n,"bias",W.GREATEST_LOWER_BOUND));if(s>=0){var i=this._originalMappings[s];if(i.source===t.source)return{line:D.getArg(i,"generatedLine",null),column:D.getArg(i,"generatedColumn",null),lastColumn:D.getArg(i,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}};cn.BasicSourceMapConsumer=te;function ve(r,n){var e=r;typeof r=="string"&&(e=D.parseSourceMapInput(r));var t=D.getArg(e,"version"),s=D.getArg(e,"sections");if(t!=this._version)throw new Error("Unsupported version: "+t);this._sources=new ot,this._names=new ot;var i={line:-1,column:0};this._sections=s.map(function(a){if(a.url)throw new Error("Support for url field in sections not implemented.");var o=D.getArg(a,"offset"),l=D.getArg(o,"line"),c=D.getArg(o,"column");if(l<i.line||l===i.line&&c<i.column)throw new Error("Section offsets must be ordered and non-overlapping.");return i=o,{generatedOffset:{generatedLine:l+1,generatedColumn:c+1},consumer:new W(D.getArg(a,"map"),n)}})}ve.prototype=Object.create(W.prototype);ve.prototype.constructor=W;ve.prototype._version=3;Object.defineProperty(ve.prototype,"sources",{get:function(){for(var r=[],n=0;n<this._sections.length;n++)for(var e=0;e<this._sections[n].consumer.sources.length;e++)r.push(this._sections[n].consumer.sources[e]);return r}});ve.prototype.originalPositionFor=function(n){var e={generatedLine:D.getArg(n,"line"),generatedColumn:D.getArg(n,"column")},t=ls.search(e,this._sections,function(i,a){var o=i.generatedLine-a.generatedOffset.generatedLine;return o||i.generatedColumn-a.generatedOffset.generatedColumn}),s=this._sections[t];return s?s.consumer.originalPositionFor({line:e.generatedLine-(s.generatedOffset.generatedLine-1),column:e.generatedColumn-(s.generatedOffset.generatedLine===e.generatedLine?s.generatedOffset.generatedColumn-1:0),bias:n.bias}):{source:null,line:null,column:null,name:null}};ve.prototype.hasContentsOfAllSources=function(){return this._sections.every(function(n){return n.consumer.hasContentsOfAllSources()})};ve.prototype.sourceContentFor=function(n,e){for(var t=0;t<this._sections.length;t++){var s=this._sections[t],i=s.consumer.sourceContentFor(n,!0);if(i)return i}if(e)return null;throw new Error('"'+n+'" is not in the SourceMap.')};ve.prototype.generatedPositionFor=function(n){for(var e=0;e<this._sections.length;e++){var t=this._sections[e];if(t.consumer._findSourceIndex(D.getArg(n,"source"))!==-1){var s=t.consumer.generatedPositionFor(n);if(s){var i={line:s.line+(t.generatedOffset.generatedLine-1),column:s.column+(t.generatedOffset.generatedLine===s.line?t.generatedOffset.generatedColumn-1:0)};return i}}}return{line:null,column:null}};ve.prototype._parseMappings=function(n,e){this.__generatedMappings=[],this.__originalMappings=[];for(var t=0;t<this._sections.length;t++)for(var s=this._sections[t],i=s.consumer._generatedMappings,a=0;a<i.length;a++){var o=i[a],l=s.consumer._sources.at(o.source);l=D.computeSourceURL(s.consumer.sourceRoot,l,this._sourceMapURL),this._sources.add(l),l=this._sources.indexOf(l);var c=null;o.name&&(c=s.consumer._names.at(o.name),this._names.add(c),c=this._names.indexOf(c));var p={source:l,generatedLine:o.generatedLine+(s.generatedOffset.generatedLine-1),generatedColumn:o.generatedColumn+(s.generatedOffset.generatedLine===o.generatedLine?s.generatedOffset.generatedColumn-1:0),originalLine:o.originalLine,originalColumn:o.originalColumn,name:c};this.__generatedMappings.push(p),typeof p.originalLine=="number"&&this.__originalMappings.push(p)}Dt(this.__generatedMappings,D.compareByGeneratedPositionsDeflated),Dt(this.__originalMappings,D.compareByOriginalPositions)};cn.IndexedSourceMapConsumer=ve});var $r=fe(zr=>{"use strict";var go=is().SourceMapGenerator,pn=at(),yo=/(\r?\n)/,vo=10,lt="$$$isSourceNode$$$";function ce(r,n,e,t,s){this.children=[],this.sourceContents={},this.line=r??null,this.column=n??null,this.source=e??null,this.name=s??null,this[lt]=!0,t!=null&&this.add(t)}ce.fromStringWithSourceMap=function(n,e,t){var s=new ce,i=n.split(yo),a=0,o=function(){var h=d(),m=d()||"";return h+m;function d(){return a<i.length?i[a++]:void 0}},l=1,c=0,p=null;return e.eachMapping(function(h){if(p!==null)if(l<h.generatedLine)u(p,o()),l++,c=0;else{var m=i[a]||"",d=m.substr(0,h.generatedColumn-c);i[a]=m.substr(h.generatedColumn-c),c=h.generatedColumn,u(p,d),p=h;return}for(;l<h.generatedLine;)s.add(o()),l++;if(c<h.generatedColumn){var m=i[a]||"";s.add(m.substr(0,h.generatedColumn)),i[a]=m.substr(h.generatedColumn),c=h.generatedColumn}p=h},this),a<i.length&&(p&&u(p,o()),s.add(i.splice(a).join(""))),e.sources.forEach(function(h){var m=e.sourceContentFor(h);m!=null&&(t!=null&&(h=pn.join(t,h)),s.setSourceContent(h,m))}),s;function u(h,m){if(h===null||h.source===void 0)s.add(m);else{var d=t?pn.join(t,h.source):h.source;s.add(new ce(h.originalLine,h.originalColumn,d,m,h.name))}}};ce.prototype.add=function(n){if(Array.isArray(n))n.forEach(function(e){this.add(e)},this);else if(n[lt]||typeof n=="string")n&&this.children.push(n);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+n);return this};ce.prototype.prepend=function(n){if(Array.isArray(n))for(var e=n.length-1;e>=0;e--)this.prepend(n[e]);else if(n[lt]||typeof n=="string")this.children.unshift(n);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+n);return this};ce.prototype.walk=function(n){for(var e,t=0,s=this.children.length;t<s;t++)e=this.children[t],e[lt]?e.walk(n):e!==""&&n(e,{source:this.source,line:this.line,column:this.column,name:this.name})};ce.prototype.join=function(n){var e,t,s=this.children.length;if(s>0){for(e=[],t=0;t<s-1;t++)e.push(this.children[t]),e.push(n);e.push(this.children[t]),this.children=e}return this};ce.prototype.replaceRight=function(n,e){var t=this.children[this.children.length-1];return t[lt]?t.replaceRight(n,e):typeof t=="string"?this.children[this.children.length-1]=t.replace(n,e):this.children.push("".replace(n,e)),this};ce.prototype.setSourceContent=function(n,e){this.sourceContents[pn.toSetString(n)]=e};ce.prototype.walkSourceContents=function(n){for(var e=0,t=this.children.length;e<t;e++)this.children[e][lt]&&this.children[e].walkSourceContents(n);for(var s=Object.keys(this.sourceContents),e=0,t=s.length;e<t;e++)n(pn.fromSetString(s[e]),this.sourceContents[s[e]])};ce.prototype.toString=function(){var n="";return this.walk(function(e){n+=e}),n};ce.prototype.toStringWithSourceMap=function(n){var e={code:"",line:1,column:0},t=new go(n),s=!1,i=null,a=null,o=null,l=null;return this.walk(function(c,p){e.code+=c,p.source!==null&&p.line!==null&&p.column!==null?((i!==p.source||a!==p.line||o!==p.column||l!==p.name)&&t.addMapping({source:p.source,original:{line:p.line,column:p.column},generated:{line:e.line,column:e.column},name:p.name}),i=p.source,a=p.line,o=p.column,l=p.name,s=!0):s&&(t.addMapping({generated:{line:e.line,column:e.column}}),i=null,s=!1);for(var u=0,h=c.length;u<h;u++)c.charCodeAt(u)===vo?(e.line++,e.column=0,u+1===h?(i=null,s=!1):s&&t.addMapping({source:p.source,original:{line:p.line,column:p.column},generated:{line:e.line,column:e.column},name:p.name})):e.column++}),this.walkSourceContents(function(c,p){t.setSourceContent(c,p)}),{code:e.code,map:t}};zr.SourceNode=ce});var cs=fe(un=>{"use strict";un.SourceMapGenerator=is().SourceMapGenerator;un.SourceMapConsumer=Vr().SourceMapConsumer;un.SourceNode=$r().SourceNode});var Hs=fe(zt=>{"use strict";Object.defineProperty(zt,"__esModule",{value:!0});function ai(r,n){if(r==null)return{};var e={},t=Object.keys(r),s,i;for(i=0;i<t.length;i++)s=t[i],!(n.indexOf(s)>=0)&&(e[s]=r[s]);return e}var ke=class{constructor(n,e,t){this.line=void 0,this.column=void 0,this.index=void 0,this.line=n,this.column=e,this.index=t}},dt=class{constructor(n,e){this.start=void 0,this.end=void 0,this.filename=void 0,this.identifierName=void 0,this.start=n,this.end=e}};function re(r,n){let{line:e,column:t,index:s}=r;return new ke(e,t+n,s+n)}var qr="BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED",xo={ImportMetaOutsideModule:{message:`import.meta may appear only with 'sourceType: "module"'`,code:qr},ImportOutsideModule:{message:`'import' and 'export' may appear only with 'sourceType: "module"'`,code:qr}},Hr={ArrayPattern:"array destructuring pattern",AssignmentExpression:"assignment expression",AssignmentPattern:"assignment expression",ArrowFunctionExpression:"arrow function expression",ConditionalExpression:"conditional expression",CatchClause:"catch clause",ForOfStatement:"for-of statement",ForInStatement:"for-in statement",ForStatement:"for-loop",FormalParameters:"function parameter list",Identifier:"identifier",ImportSpecifier:"import specifier",ImportDefaultSpecifier:"import default specifier",ImportNamespaceSpecifier:"import namespace specifier",ObjectPattern:"object destructuring pattern",ParenthesizedExpression:"parenthesized expression",RestElement:"rest element",UpdateExpression:{true:"prefix operation",false:"postfix operation"},VariableDeclarator:"variable declaration",YieldExpression:"yield expression"},fn=({type:r,prefix:n})=>r==="UpdateExpression"?Hr.UpdateExpression[String(n)]:Hr[r],Po={AccessorIsGenerator:({kind:r})=>`A ${r}ter cannot be a generator.`,ArgumentsInClass:"'arguments' is only allowed in functions and class methods.",AsyncFunctionInSingleStatementContext:"Async functions can only be declared at the top level or inside a block.",AwaitBindingIdentifier:"Can not use 'await' as identifier inside an async function.",AwaitBindingIdentifierInStaticBlock:"Can not use 'await' as identifier inside a static block.",AwaitExpressionFormalParameter:"'await' is not allowed in async function parameters.",AwaitUsingNotInAsyncContext:"'await using' is only allowed within async functions and at the top levels of modules.",AwaitNotInAsyncContext:"'await' is only allowed within async functions and at the top levels of modules.",AwaitNotInAsyncFunction:"'await' is only allowed within async functions.",BadGetterArity:"A 'get' accessor must not have any formal parameters.",BadSetterArity:"A 'set' accessor must have exactly one formal parameter.",BadSetterRestParameter:"A 'set' accessor function argument must not be a rest parameter.",ConstructorClassField:"Classes may not have a field named 'constructor'.",ConstructorClassPrivateField:"Classes may not have a private field named '#constructor'.",ConstructorIsAccessor:"Class constructor may not be an accessor.",ConstructorIsAsync:"Constructor can't be an async function.",ConstructorIsGenerator:"Constructor can't be a generator.",DeclarationMissingInitializer:({kind:r})=>`Missing initializer in ${r} declaration.`,DecoratorArgumentsOutsideParentheses:"Decorator arguments must be moved inside parentheses: use '@(decorator(args))' instead of '@(decorator)(args)'.",DecoratorBeforeExport:"Decorators must be placed *before* the 'export' keyword. Remove the 'decoratorsBeforeExport: true' option to use the 'export @decorator class {}' syntax.",DecoratorsBeforeAfterExport:"Decorators can be placed *either* before or after the 'export' keyword, but not in both locations at the same time.",DecoratorConstructor:"Decorators can't be used with a constructor. Did you mean '@dec class { ... }'?",DecoratorExportClass:"Decorators must be placed *after* the 'export' keyword. Remove the 'decoratorsBeforeExport: false' option to use the '@decorator export class {}' syntax.",DecoratorSemicolon:"Decorators must not be followed by a semicolon.",DecoratorStaticBlock:"Decorators can't be used with a static block.",DeferImportRequiresNamespace:'Only `import defer * as x from "./module"` is valid.',DeletePrivateField:"Deleting a private field is not allowed.",DestructureNamedImport:"ES2015 named imports do not destructure. Use another statement for destructuring after the import.",DuplicateConstructor:"Duplicate constructor in the same class.",DuplicateDefaultExport:"Only one default export allowed per module.",DuplicateExport:({exportName:r})=>`\`${r}\` has already been exported. Exported identifiers must be unique.`,DuplicateProto:"Redefinition of __proto__ property.",DuplicateRegExpFlags:"Duplicate regular expression flag.",DynamicImportPhaseRequiresImportExpressions:({phase:r})=>`'import.${r}(...)' can only be parsed when using the 'createImportExpressions' option.`,ElementAfterRest:"Rest element must be last element.",EscapedCharNotAnIdentifier:"Invalid Unicode escape.",ExportBindingIsString:({localName:r,exportName:n})=>`A string literal cannot be used as an exported binding without \`from\`.
2
+ import{a as he,b as an,f as me}from"./chunk-QMEJXGGM.js";var xr=he(Qn=>{"use strict";var vr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");Qn.encode=function(r){if(0<=r&&r<vr.length)return vr[r];throw new TypeError("Must be between 0 and 63: "+r)};Qn.decode=function(r){var n=65,e=90,t=97,s=122,i=48,a=57,o=43,l=47,c=26,p=52;return n<=r&&r<=e?r-n:t<=r&&r<=s?r-t+c:i<=r&&r<=a?r-i+p:r==o?62:r==l?63:-1}});var es=he(Zn=>{"use strict";var Pr=xr(),Yn=5,Tr=1<<Yn,wr=Tr-1,Cr=Tr;function Ja(r){return r<0?(-r<<1)+1:(r<<1)+0}function Xa(r){var n=(r&1)===1,e=r>>1;return n?-e:e}Zn.encode=function(n){var e="",t,s=Ja(n);do t=s&wr,s>>>=Yn,s>0&&(t|=Cr),e+=Pr.encode(t);while(s>0);return e};Zn.decode=function(n,e,t){var s=n.length,i=0,a=0,o,l;do{if(e>=s)throw new Error("Expected more digits in base 64 VLQ value.");if(l=Pr.decode(n.charCodeAt(e++)),l===-1)throw new Error("Invalid base64 digit: "+n.charAt(e-1));o=!!(l&Cr),l&=wr,i=i+(l<<a),a+=Yn}while(o);t.value=Xa(i),t.rest=e}});var at=he(ee=>{"use strict";function Qa(r,n,e){if(n in r)return r[n];if(arguments.length===3)return e;throw new Error('"'+n+'" is a required argument.')}ee.getArg=Qa;var Sr=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,Ya=/^data:.+\,.+$/;function kt(r){var n=r.match(Sr);return n?{scheme:n[1],auth:n[2],host:n[3],port:n[4],path:n[5]}:null}ee.urlParse=kt;function it(r){var n="";return r.scheme&&(n+=r.scheme+":"),n+="//",r.auth&&(n+=r.auth+"@"),r.host&&(n+=r.host),r.port&&(n+=":"+r.port),r.path&&(n+=r.path),n}ee.urlGenerate=it;var Za=32;function eo(r){var n=[];return function(e){for(var t=0;t<n.length;t++)if(n[t].input===e){var s=n[0];return n[0]=n[t],n[t]=s,n[0].result}var i=r(e);return n.unshift({input:e,result:i}),n.length>Za&&n.pop(),i}}var ts=eo(function(n){var e=n,t=kt(n);if(t){if(!t.path)return n;e=t.path}for(var s=ee.isAbsolute(e),i=[],a=0,o=0;;)if(a=o,o=e.indexOf("/",a),o===-1){i.push(e.slice(a));break}else for(i.push(e.slice(a,o));o<e.length&&e[o]==="/";)o++;for(var l,c=0,o=i.length-1;o>=0;o--)l=i[o],l==="."?i.splice(o,1):l===".."?c++:c>0&&(l===""?(i.splice(o+1,c),c=0):(i.splice(o,2),c--));return e=i.join("/"),e===""&&(e=s?"/":"."),t?(t.path=e,it(t)):e});ee.normalize=ts;function Ir(r,n){r===""&&(r="."),n===""&&(n=".");var e=kt(n),t=kt(r);if(t&&(r=t.path||"/"),e&&!e.scheme)return t&&(e.scheme=t.scheme),it(e);if(e||n.match(Ya))return n;if(t&&!t.host&&!t.path)return t.host=n,it(t);var s=n.charAt(0)==="/"?n:ts(r.replace(/\/+$/,"")+"/"+n);return t?(t.path=s,it(t)):s}ee.join=Ir;ee.isAbsolute=function(r){return r.charAt(0)==="/"||Sr.test(r)};function to(r,n){r===""&&(r="."),r=r.replace(/\/$/,"");for(var e=0;n.indexOf(r+"/")!==0;){var t=r.lastIndexOf("/");if(t<0||(r=r.slice(0,t),r.match(/^([^\/]+:\/)?\/*$/)))return n;++e}return Array(e+1).join("../")+n.substr(r.length+1)}ee.relative=to;var Er=function(){var r=Object.create(null);return!("__proto__"in r)}();function Ar(r){return r}function no(r){return kr(r)?"$"+r:r}ee.toSetString=Er?Ar:no;function so(r){return kr(r)?r.slice(1):r}ee.fromSetString=Er?Ar:so;function kr(r){if(!r)return!1;var n=r.length;if(n<9||r.charCodeAt(n-1)!==95||r.charCodeAt(n-2)!==95||r.charCodeAt(n-3)!==111||r.charCodeAt(n-4)!==116||r.charCodeAt(n-5)!==111||r.charCodeAt(n-6)!==114||r.charCodeAt(n-7)!==112||r.charCodeAt(n-8)!==95||r.charCodeAt(n-9)!==95)return!1;for(var e=n-10;e>=0;e--)if(r.charCodeAt(e)!==36)return!1;return!0}function ro(r,n,e){var t=Le(r.source,n.source);return t!==0||(t=r.originalLine-n.originalLine,t!==0)||(t=r.originalColumn-n.originalColumn,t!==0||e)||(t=r.generatedColumn-n.generatedColumn,t!==0)||(t=r.generatedLine-n.generatedLine,t!==0)?t:Le(r.name,n.name)}ee.compareByOriginalPositions=ro;function io(r,n,e){var t;return t=r.originalLine-n.originalLine,t!==0||(t=r.originalColumn-n.originalColumn,t!==0||e)||(t=r.generatedColumn-n.generatedColumn,t!==0)||(t=r.generatedLine-n.generatedLine,t!==0)?t:Le(r.name,n.name)}ee.compareByOriginalPositionsNoSource=io;function ao(r,n,e){var t=r.generatedLine-n.generatedLine;return t!==0||(t=r.generatedColumn-n.generatedColumn,t!==0||e)||(t=Le(r.source,n.source),t!==0)||(t=r.originalLine-n.originalLine,t!==0)||(t=r.originalColumn-n.originalColumn,t!==0)?t:Le(r.name,n.name)}ee.compareByGeneratedPositionsDeflated=ao;function oo(r,n,e){var t=r.generatedColumn-n.generatedColumn;return t!==0||e||(t=Le(r.source,n.source),t!==0)||(t=r.originalLine-n.originalLine,t!==0)||(t=r.originalColumn-n.originalColumn,t!==0)?t:Le(r.name,n.name)}ee.compareByGeneratedPositionsDeflatedNoLine=oo;function Le(r,n){return r===n?0:r===null?1:n===null?-1:r>n?1:-1}function lo(r,n){var e=r.generatedLine-n.generatedLine;return e!==0||(e=r.generatedColumn-n.generatedColumn,e!==0)||(e=Le(r.source,n.source),e!==0)||(e=r.originalLine-n.originalLine,e!==0)||(e=r.originalColumn-n.originalColumn,e!==0)?e:Le(r.name,n.name)}ee.compareByGeneratedPositionsInflated=lo;function co(r){return JSON.parse(r.replace(/^\)]}'[^\n]*\n/,""))}ee.parseSourceMapInput=co;function po(r,n,e){if(n=n||"",r&&(r[r.length-1]!=="/"&&n[0]!=="/"&&(r+="/"),n=r+n),e){var t=kt(e);if(!t)throw new Error("sourceMapURL could not be parsed");if(t.path){var s=t.path.lastIndexOf("/");s>=0&&(t.path=t.path.substring(0,s+1))}n=Ir(it(t),n)}return ts(n)}ee.computeSourceURL=po});var rs=he(Nr=>{"use strict";var ns=at(),ss=Object.prototype.hasOwnProperty,Ke=typeof Map<"u";function Oe(){this._array=[],this._set=Ke?new Map:Object.create(null)}Oe.fromArray=function(n,e){for(var t=new Oe,s=0,i=n.length;s<i;s++)t.add(n[s],e);return t};Oe.prototype.size=function(){return Ke?this._set.size:Object.getOwnPropertyNames(this._set).length};Oe.prototype.add=function(n,e){var t=Ke?n:ns.toSetString(n),s=Ke?this.has(n):ss.call(this._set,t),i=this._array.length;(!s||e)&&this._array.push(n),s||(Ke?this._set.set(n,i):this._set[t]=i)};Oe.prototype.has=function(n){if(Ke)return this._set.has(n);var e=ns.toSetString(n);return ss.call(this._set,e)};Oe.prototype.indexOf=function(n){if(Ke){var e=this._set.get(n);if(e>=0)return e}else{var t=ns.toSetString(n);if(ss.call(this._set,t))return this._set[t]}throw new Error('"'+n+'" is not in the set.')};Oe.prototype.at=function(n){if(n>=0&&n<this._array.length)return this._array[n];throw new Error("No element indexed by "+n)};Oe.prototype.toArray=function(){return this._array.slice()};Nr.ArraySet=Oe});var Lr=he(Mr=>{"use strict";var Dr=at();function uo(r,n){var e=r.generatedLine,t=n.generatedLine,s=r.generatedColumn,i=n.generatedColumn;return t>e||t==e&&i>=s||Dr.compareByGeneratedPositionsInflated(r,n)<=0}function on(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}on.prototype.unsortedForEach=function(n,e){this._array.forEach(n,e)};on.prototype.add=function(n){uo(this._last,n)?(this._last=n,this._array.push(n)):(this._sorted=!1,this._array.push(n))};on.prototype.toArray=function(){return this._sorted||(this._array.sort(Dr.compareByGeneratedPositionsInflated),this._sorted=!0),this._array};Mr.MappingList=on});var is=he(Or=>{"use strict";var Nt=es(),Q=at(),ln=rs().ArraySet,fo=Lr().MappingList;function be(r){r||(r={}),this._file=Q.getArg(r,"file",null),this._sourceRoot=Q.getArg(r,"sourceRoot",null),this._skipValidation=Q.getArg(r,"skipValidation",!1),this._sources=new ln,this._names=new ln,this._mappings=new fo,this._sourcesContents=null}be.prototype._version=3;be.fromSourceMap=function(n){var e=n.sourceRoot,t=new be({file:n.file,sourceRoot:e});return n.eachMapping(function(s){var i={generated:{line:s.generatedLine,column:s.generatedColumn}};s.source!=null&&(i.source=s.source,e!=null&&(i.source=Q.relative(e,i.source)),i.original={line:s.originalLine,column:s.originalColumn},s.name!=null&&(i.name=s.name)),t.addMapping(i)}),n.sources.forEach(function(s){var i=s;e!==null&&(i=Q.relative(e,s)),t._sources.has(i)||t._sources.add(i);var a=n.sourceContentFor(s);a!=null&&t.setSourceContent(s,a)}),t};be.prototype.addMapping=function(n){var e=Q.getArg(n,"generated"),t=Q.getArg(n,"original",null),s=Q.getArg(n,"source",null),i=Q.getArg(n,"name",null);this._skipValidation||this._validateMapping(e,t,s,i),s!=null&&(s=String(s),this._sources.has(s)||this._sources.add(s)),i!=null&&(i=String(i),this._names.has(i)||this._names.add(i)),this._mappings.add({generatedLine:e.line,generatedColumn:e.column,originalLine:t!=null&&t.line,originalColumn:t!=null&&t.column,source:s,name:i})};be.prototype.setSourceContent=function(n,e){var t=n;this._sourceRoot!=null&&(t=Q.relative(this._sourceRoot,t)),e!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[Q.toSetString(t)]=e):this._sourcesContents&&(delete this._sourcesContents[Q.toSetString(t)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))};be.prototype.applySourceMap=function(n,e,t){var s=e;if(e==null){if(n.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);s=n.file}var i=this._sourceRoot;i!=null&&(s=Q.relative(i,s));var a=new ln,o=new ln;this._mappings.unsortedForEach(function(l){if(l.source===s&&l.originalLine!=null){var c=n.originalPositionFor({line:l.originalLine,column:l.originalColumn});c.source!=null&&(l.source=c.source,t!=null&&(l.source=Q.join(t,l.source)),i!=null&&(l.source=Q.relative(i,l.source)),l.originalLine=c.line,l.originalColumn=c.column,c.name!=null&&(l.name=c.name))}var p=l.source;p!=null&&!a.has(p)&&a.add(p);var u=l.name;u!=null&&!o.has(u)&&o.add(u)},this),this._sources=a,this._names=o,n.sources.forEach(function(l){var c=n.sourceContentFor(l);c!=null&&(t!=null&&(l=Q.join(t,l)),i!=null&&(l=Q.relative(i,l)),this.setSourceContent(l,c))},this)};be.prototype._validateMapping=function(n,e,t,s){if(e&&typeof e.line!="number"&&typeof e.column!="number")throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if(!(n&&"line"in n&&"column"in n&&n.line>0&&n.column>=0&&!e&&!t&&!s)){if(n&&"line"in n&&"column"in n&&e&&"line"in e&&"column"in e&&n.line>0&&n.column>=0&&e.line>0&&e.column>=0&&t)return;throw new Error("Invalid mapping: "+JSON.stringify({generated:n,source:t,original:e,name:s}))}};be.prototype._serializeMappings=function(){for(var n=0,e=1,t=0,s=0,i=0,a=0,o="",l,c,p,u,f=this._mappings.toArray(),m=0,d=f.length;m<d;m++){if(c=f[m],l="",c.generatedLine!==e)for(n=0;c.generatedLine!==e;)l+=";",e++;else if(m>0){if(!Q.compareByGeneratedPositionsInflated(c,f[m-1]))continue;l+=","}l+=Nt.encode(c.generatedColumn-n),n=c.generatedColumn,c.source!=null&&(u=this._sources.indexOf(c.source),l+=Nt.encode(u-a),a=u,l+=Nt.encode(c.originalLine-1-s),s=c.originalLine-1,l+=Nt.encode(c.originalColumn-t),t=c.originalColumn,c.name!=null&&(p=this._names.indexOf(c.name),l+=Nt.encode(p-i),i=p)),o+=l}return o};be.prototype._generateSourcesContent=function(n,e){return n.map(function(t){if(!this._sourcesContents)return null;e!=null&&(t=Q.relative(e,t));var s=Q.toSetString(t);return Object.prototype.hasOwnProperty.call(this._sourcesContents,s)?this._sourcesContents[s]:null},this)};be.prototype.toJSON=function(){var n={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(n.file=this._file),this._sourceRoot!=null&&(n.sourceRoot=this._sourceRoot),this._sourcesContents&&(n.sourcesContent=this._generateSourcesContent(n.sources,n.sourceRoot)),n};be.prototype.toString=function(){return JSON.stringify(this.toJSON())};Or.SourceMapGenerator=be});var Fr=he(Je=>{"use strict";Je.GREATEST_LOWER_BOUND=1;Je.LEAST_UPPER_BOUND=2;function as(r,n,e,t,s,i){var a=Math.floor((n-r)/2)+r,o=s(e,t[a],!0);return o===0?a:o>0?n-a>1?as(a,n,e,t,s,i):i==Je.LEAST_UPPER_BOUND?n<t.length?n:-1:a:a-r>1?as(r,a,e,t,s,i):i==Je.LEAST_UPPER_BOUND?a:r<0?-1:r}Je.search=function(n,e,t,s){if(e.length===0)return-1;var i=as(-1,e.length,n,e,t,s||Je.GREATEST_LOWER_BOUND);if(i<0)return-1;for(;i-1>=0&&t(e[i],e[i-1],!0)===0;)--i;return i}});var Rr=he(_r=>{"use strict";function ho(r){function n(s,i,a){var o=s[i];s[i]=s[a],s[a]=o}function e(s,i){return Math.round(s+Math.random()*(i-s))}function t(s,i,a,o){if(a<o){var l=e(a,o),c=a-1;n(s,l,o);for(var p=s[o],u=a;u<o;u++)i(s[u],p,!1)<=0&&(c+=1,n(s,c,u));n(s,c+1,u);var f=c+1;t(s,i,a,f-1),t(s,i,f+1,o)}}return t}function mo(r){let n=ho.toString();return new Function(`return ${n}`)()(r)}var Ur=new WeakMap;_r.quickSort=function(r,n,e=0){let t=Ur.get(n);t===void 0&&(t=mo(n),Ur.set(n,t)),t(r,n,e,r.length-1)}});var Vr=he(cn=>{"use strict";var D=at(),ls=Fr(),ot=rs().ArraySet,bo=es(),Dt=Rr().quickSort;function W(r,n){var e=r;return typeof r=="string"&&(e=D.parseSourceMapInput(r)),e.sections!=null?new ve(e,n):new te(e,n)}W.fromSourceMap=function(r,n){return te.fromSourceMap(r,n)};W.prototype._version=3;W.prototype.__generatedMappings=null;Object.defineProperty(W.prototype,"_generatedMappings",{configurable:!0,enumerable:!0,get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}});W.prototype.__originalMappings=null;Object.defineProperty(W.prototype,"_originalMappings",{configurable:!0,enumerable:!0,get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}});W.prototype._charIsMappingSeparator=function(n,e){var t=n.charAt(e);return t===";"||t===","};W.prototype._parseMappings=function(n,e){throw new Error("Subclasses must implement _parseMappings")};W.GENERATED_ORDER=1;W.ORIGINAL_ORDER=2;W.GREATEST_LOWER_BOUND=1;W.LEAST_UPPER_BOUND=2;W.prototype.eachMapping=function(n,e,t){var s=e||null,i=t||W.GENERATED_ORDER,a;switch(i){case W.GENERATED_ORDER:a=this._generatedMappings;break;case W.ORIGINAL_ORDER:a=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}for(var o=this.sourceRoot,l=n.bind(s),c=this._names,p=this._sources,u=this._sourceMapURL,f=0,m=a.length;f<m;f++){var d=a[f],g=d.source===null?null:p.at(d.source);g=D.computeSourceURL(o,g,u),l({source:g,generatedLine:d.generatedLine,generatedColumn:d.generatedColumn,originalLine:d.originalLine,originalColumn:d.originalColumn,name:d.name===null?null:c.at(d.name)})}};W.prototype.allGeneratedPositionsFor=function(n){var e=D.getArg(n,"line"),t={source:D.getArg(n,"source"),originalLine:e,originalColumn:D.getArg(n,"column",0)};if(t.source=this._findSourceIndex(t.source),t.source<0)return[];var s=[],i=this._findMapping(t,this._originalMappings,"originalLine","originalColumn",D.compareByOriginalPositions,ls.LEAST_UPPER_BOUND);if(i>=0){var a=this._originalMappings[i];if(n.column===void 0)for(var o=a.originalLine;a&&a.originalLine===o;)s.push({line:D.getArg(a,"generatedLine",null),column:D.getArg(a,"generatedColumn",null),lastColumn:D.getArg(a,"lastGeneratedColumn",null)}),a=this._originalMappings[++i];else for(var l=a.originalColumn;a&&a.originalLine===e&&a.originalColumn==l;)s.push({line:D.getArg(a,"generatedLine",null),column:D.getArg(a,"generatedColumn",null),lastColumn:D.getArg(a,"lastGeneratedColumn",null)}),a=this._originalMappings[++i]}return s};cn.SourceMapConsumer=W;function te(r,n){var e=r;typeof r=="string"&&(e=D.parseSourceMapInput(r));var t=D.getArg(e,"version"),s=D.getArg(e,"sources"),i=D.getArg(e,"names",[]),a=D.getArg(e,"sourceRoot",null),o=D.getArg(e,"sourcesContent",null),l=D.getArg(e,"mappings"),c=D.getArg(e,"file",null);if(t!=this._version)throw new Error("Unsupported version: "+t);a&&(a=D.normalize(a)),s=s.map(String).map(D.normalize).map(function(p){return a&&D.isAbsolute(a)&&D.isAbsolute(p)?D.relative(a,p):p}),this._names=ot.fromArray(i.map(String),!0),this._sources=ot.fromArray(s,!0),this._absoluteSources=this._sources.toArray().map(function(p){return D.computeSourceURL(a,p,n)}),this.sourceRoot=a,this.sourcesContent=o,this._mappings=l,this._sourceMapURL=n,this.file=c}te.prototype=Object.create(W.prototype);te.prototype.consumer=W;te.prototype._findSourceIndex=function(r){var n=r;if(this.sourceRoot!=null&&(n=D.relative(this.sourceRoot,n)),this._sources.has(n))return this._sources.indexOf(n);var e;for(e=0;e<this._absoluteSources.length;++e)if(this._absoluteSources[e]==r)return e;return-1};te.fromSourceMap=function(n,e){var t=Object.create(te.prototype),s=t._names=ot.fromArray(n._names.toArray(),!0),i=t._sources=ot.fromArray(n._sources.toArray(),!0);t.sourceRoot=n._sourceRoot,t.sourcesContent=n._generateSourcesContent(t._sources.toArray(),t.sourceRoot),t.file=n._file,t._sourceMapURL=e,t._absoluteSources=t._sources.toArray().map(function(m){return D.computeSourceURL(t.sourceRoot,m,e)});for(var a=n._mappings.toArray().slice(),o=t.__generatedMappings=[],l=t.__originalMappings=[],c=0,p=a.length;c<p;c++){var u=a[c],f=new jr;f.generatedLine=u.generatedLine,f.generatedColumn=u.generatedColumn,u.source&&(f.source=i.indexOf(u.source),f.originalLine=u.originalLine,f.originalColumn=u.originalColumn,u.name&&(f.name=s.indexOf(u.name)),l.push(f)),o.push(f)}return Dt(t.__originalMappings,D.compareByOriginalPositions),t};te.prototype._version=3;Object.defineProperty(te.prototype,"sources",{get:function(){return this._absoluteSources.slice()}});function jr(){this.generatedLine=0,this.generatedColumn=0,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}var os=D.compareByGeneratedPositionsDeflatedNoLine;function Br(r,n){let e=r.length,t=r.length-n;if(!(t<=1))if(t==2){let s=r[n],i=r[n+1];os(s,i)>0&&(r[n]=i,r[n+1]=s)}else if(t<20)for(let s=n;s<e;s++)for(let i=s;i>n;i--){let a=r[i-1],o=r[i];if(os(a,o)<=0)break;r[i-1]=o,r[i]=a}else Dt(r,os,n)}te.prototype._parseMappings=function(n,e){var t=1,s=0,i=0,a=0,o=0,l=0,c=n.length,p=0,u={},f={},m=[],d=[],g,h,v,w,E;let x=0;for(;p<c;)if(n.charAt(p)===";")t++,p++,s=0,Br(d,x),x=d.length;else if(n.charAt(p)===",")p++;else{for(g=new jr,g.generatedLine=t,w=p;w<c&&!this._charIsMappingSeparator(n,w);w++);for(h=n.slice(p,w),v=[];p<w;)bo.decode(n,p,f),E=f.value,p=f.rest,v.push(E);if(v.length===2)throw new Error("Found a source, but no line and column");if(v.length===3)throw new Error("Found a source and line, but no column");if(g.generatedColumn=s+v[0],s=g.generatedColumn,v.length>1&&(g.source=o+v[1],o+=v[1],g.originalLine=i+v[2],i=g.originalLine,g.originalLine+=1,g.originalColumn=a+v[3],a=g.originalColumn,v.length>4&&(g.name=l+v[4],l+=v[4])),d.push(g),typeof g.originalLine=="number"){let C=g.source;for(;m.length<=C;)m.push(null);m[C]===null&&(m[C]=[]),m[C].push(g)}}Br(d,x),this.__generatedMappings=d;for(var P=0;P<m.length;P++)m[P]!=null&&Dt(m[P],D.compareByOriginalPositionsNoSource);this.__originalMappings=[].concat(...m)};te.prototype._findMapping=function(n,e,t,s,i,a){if(n[t]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+n[t]);if(n[s]<0)throw new TypeError("Column must be greater than or equal to 0, got "+n[s]);return ls.search(n,e,i,a)};te.prototype.computeColumnSpans=function(){for(var n=0;n<this._generatedMappings.length;++n){var e=this._generatedMappings[n];if(n+1<this._generatedMappings.length){var t=this._generatedMappings[n+1];if(e.generatedLine===t.generatedLine){e.lastGeneratedColumn=t.generatedColumn-1;continue}}e.lastGeneratedColumn=1/0}};te.prototype.originalPositionFor=function(n){var e={generatedLine:D.getArg(n,"line"),generatedColumn:D.getArg(n,"column")},t=this._findMapping(e,this._generatedMappings,"generatedLine","generatedColumn",D.compareByGeneratedPositionsDeflated,D.getArg(n,"bias",W.GREATEST_LOWER_BOUND));if(t>=0){var s=this._generatedMappings[t];if(s.generatedLine===e.generatedLine){var i=D.getArg(s,"source",null);i!==null&&(i=this._sources.at(i),i=D.computeSourceURL(this.sourceRoot,i,this._sourceMapURL));var a=D.getArg(s,"name",null);return a!==null&&(a=this._names.at(a)),{source:i,line:D.getArg(s,"originalLine",null),column:D.getArg(s,"originalColumn",null),name:a}}}return{source:null,line:null,column:null,name:null}};te.prototype.hasContentsOfAllSources=function(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(n){return n==null}):!1};te.prototype.sourceContentFor=function(n,e){if(!this.sourcesContent)return null;var t=this._findSourceIndex(n);if(t>=0)return this.sourcesContent[t];var s=n;this.sourceRoot!=null&&(s=D.relative(this.sourceRoot,s));var i;if(this.sourceRoot!=null&&(i=D.urlParse(this.sourceRoot))){var a=s.replace(/^file:\/\//,"");if(i.scheme=="file"&&this._sources.has(a))return this.sourcesContent[this._sources.indexOf(a)];if((!i.path||i.path=="/")&&this._sources.has("/"+s))return this.sourcesContent[this._sources.indexOf("/"+s)]}if(e)return null;throw new Error('"'+s+'" is not in the SourceMap.')};te.prototype.generatedPositionFor=function(n){var e=D.getArg(n,"source");if(e=this._findSourceIndex(e),e<0)return{line:null,column:null,lastColumn:null};var t={source:e,originalLine:D.getArg(n,"line"),originalColumn:D.getArg(n,"column")},s=this._findMapping(t,this._originalMappings,"originalLine","originalColumn",D.compareByOriginalPositions,D.getArg(n,"bias",W.GREATEST_LOWER_BOUND));if(s>=0){var i=this._originalMappings[s];if(i.source===t.source)return{line:D.getArg(i,"generatedLine",null),column:D.getArg(i,"generatedColumn",null),lastColumn:D.getArg(i,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}};cn.BasicSourceMapConsumer=te;function ve(r,n){var e=r;typeof r=="string"&&(e=D.parseSourceMapInput(r));var t=D.getArg(e,"version"),s=D.getArg(e,"sections");if(t!=this._version)throw new Error("Unsupported version: "+t);this._sources=new ot,this._names=new ot;var i={line:-1,column:0};this._sections=s.map(function(a){if(a.url)throw new Error("Support for url field in sections not implemented.");var o=D.getArg(a,"offset"),l=D.getArg(o,"line"),c=D.getArg(o,"column");if(l<i.line||l===i.line&&c<i.column)throw new Error("Section offsets must be ordered and non-overlapping.");return i=o,{generatedOffset:{generatedLine:l+1,generatedColumn:c+1},consumer:new W(D.getArg(a,"map"),n)}})}ve.prototype=Object.create(W.prototype);ve.prototype.constructor=W;ve.prototype._version=3;Object.defineProperty(ve.prototype,"sources",{get:function(){for(var r=[],n=0;n<this._sections.length;n++)for(var e=0;e<this._sections[n].consumer.sources.length;e++)r.push(this._sections[n].consumer.sources[e]);return r}});ve.prototype.originalPositionFor=function(n){var e={generatedLine:D.getArg(n,"line"),generatedColumn:D.getArg(n,"column")},t=ls.search(e,this._sections,function(i,a){var o=i.generatedLine-a.generatedOffset.generatedLine;return o||i.generatedColumn-a.generatedOffset.generatedColumn}),s=this._sections[t];return s?s.consumer.originalPositionFor({line:e.generatedLine-(s.generatedOffset.generatedLine-1),column:e.generatedColumn-(s.generatedOffset.generatedLine===e.generatedLine?s.generatedOffset.generatedColumn-1:0),bias:n.bias}):{source:null,line:null,column:null,name:null}};ve.prototype.hasContentsOfAllSources=function(){return this._sections.every(function(n){return n.consumer.hasContentsOfAllSources()})};ve.prototype.sourceContentFor=function(n,e){for(var t=0;t<this._sections.length;t++){var s=this._sections[t],i=s.consumer.sourceContentFor(n,!0);if(i)return i}if(e)return null;throw new Error('"'+n+'" is not in the SourceMap.')};ve.prototype.generatedPositionFor=function(n){for(var e=0;e<this._sections.length;e++){var t=this._sections[e];if(t.consumer._findSourceIndex(D.getArg(n,"source"))!==-1){var s=t.consumer.generatedPositionFor(n);if(s){var i={line:s.line+(t.generatedOffset.generatedLine-1),column:s.column+(t.generatedOffset.generatedLine===s.line?t.generatedOffset.generatedColumn-1:0)};return i}}}return{line:null,column:null}};ve.prototype._parseMappings=function(n,e){this.__generatedMappings=[],this.__originalMappings=[];for(var t=0;t<this._sections.length;t++)for(var s=this._sections[t],i=s.consumer._generatedMappings,a=0;a<i.length;a++){var o=i[a],l=s.consumer._sources.at(o.source);l=D.computeSourceURL(s.consumer.sourceRoot,l,this._sourceMapURL),this._sources.add(l),l=this._sources.indexOf(l);var c=null;o.name&&(c=s.consumer._names.at(o.name),this._names.add(c),c=this._names.indexOf(c));var p={source:l,generatedLine:o.generatedLine+(s.generatedOffset.generatedLine-1),generatedColumn:o.generatedColumn+(s.generatedOffset.generatedLine===o.generatedLine?s.generatedOffset.generatedColumn-1:0),originalLine:o.originalLine,originalColumn:o.originalColumn,name:c};this.__generatedMappings.push(p),typeof p.originalLine=="number"&&this.__originalMappings.push(p)}Dt(this.__generatedMappings,D.compareByGeneratedPositionsDeflated),Dt(this.__originalMappings,D.compareByOriginalPositions)};cn.IndexedSourceMapConsumer=ve});var $r=he(zr=>{"use strict";var go=is().SourceMapGenerator,pn=at(),yo=/(\r?\n)/,vo=10,lt="$$$isSourceNode$$$";function ce(r,n,e,t,s){this.children=[],this.sourceContents={},this.line=r??null,this.column=n??null,this.source=e??null,this.name=s??null,this[lt]=!0,t!=null&&this.add(t)}ce.fromStringWithSourceMap=function(n,e,t){var s=new ce,i=n.split(yo),a=0,o=function(){var f=d(),m=d()||"";return f+m;function d(){return a<i.length?i[a++]:void 0}},l=1,c=0,p=null;return e.eachMapping(function(f){if(p!==null)if(l<f.generatedLine)u(p,o()),l++,c=0;else{var m=i[a]||"",d=m.substr(0,f.generatedColumn-c);i[a]=m.substr(f.generatedColumn-c),c=f.generatedColumn,u(p,d),p=f;return}for(;l<f.generatedLine;)s.add(o()),l++;if(c<f.generatedColumn){var m=i[a]||"";s.add(m.substr(0,f.generatedColumn)),i[a]=m.substr(f.generatedColumn),c=f.generatedColumn}p=f},this),a<i.length&&(p&&u(p,o()),s.add(i.splice(a).join(""))),e.sources.forEach(function(f){var m=e.sourceContentFor(f);m!=null&&(t!=null&&(f=pn.join(t,f)),s.setSourceContent(f,m))}),s;function u(f,m){if(f===null||f.source===void 0)s.add(m);else{var d=t?pn.join(t,f.source):f.source;s.add(new ce(f.originalLine,f.originalColumn,d,m,f.name))}}};ce.prototype.add=function(n){if(Array.isArray(n))n.forEach(function(e){this.add(e)},this);else if(n[lt]||typeof n=="string")n&&this.children.push(n);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+n);return this};ce.prototype.prepend=function(n){if(Array.isArray(n))for(var e=n.length-1;e>=0;e--)this.prepend(n[e]);else if(n[lt]||typeof n=="string")this.children.unshift(n);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+n);return this};ce.prototype.walk=function(n){for(var e,t=0,s=this.children.length;t<s;t++)e=this.children[t],e[lt]?e.walk(n):e!==""&&n(e,{source:this.source,line:this.line,column:this.column,name:this.name})};ce.prototype.join=function(n){var e,t,s=this.children.length;if(s>0){for(e=[],t=0;t<s-1;t++)e.push(this.children[t]),e.push(n);e.push(this.children[t]),this.children=e}return this};ce.prototype.replaceRight=function(n,e){var t=this.children[this.children.length-1];return t[lt]?t.replaceRight(n,e):typeof t=="string"?this.children[this.children.length-1]=t.replace(n,e):this.children.push("".replace(n,e)),this};ce.prototype.setSourceContent=function(n,e){this.sourceContents[pn.toSetString(n)]=e};ce.prototype.walkSourceContents=function(n){for(var e=0,t=this.children.length;e<t;e++)this.children[e][lt]&&this.children[e].walkSourceContents(n);for(var s=Object.keys(this.sourceContents),e=0,t=s.length;e<t;e++)n(pn.fromSetString(s[e]),this.sourceContents[s[e]])};ce.prototype.toString=function(){var n="";return this.walk(function(e){n+=e}),n};ce.prototype.toStringWithSourceMap=function(n){var e={code:"",line:1,column:0},t=new go(n),s=!1,i=null,a=null,o=null,l=null;return this.walk(function(c,p){e.code+=c,p.source!==null&&p.line!==null&&p.column!==null?((i!==p.source||a!==p.line||o!==p.column||l!==p.name)&&t.addMapping({source:p.source,original:{line:p.line,column:p.column},generated:{line:e.line,column:e.column},name:p.name}),i=p.source,a=p.line,o=p.column,l=p.name,s=!0):s&&(t.addMapping({generated:{line:e.line,column:e.column}}),i=null,s=!1);for(var u=0,f=c.length;u<f;u++)c.charCodeAt(u)===vo?(e.line++,e.column=0,u+1===f?(i=null,s=!1):s&&t.addMapping({source:p.source,original:{line:p.line,column:p.column},generated:{line:e.line,column:e.column},name:p.name})):e.column++}),this.walkSourceContents(function(c,p){t.setSourceContent(c,p)}),{code:e.code,map:t}};zr.SourceNode=ce});var cs=he(un=>{"use strict";un.SourceMapGenerator=is().SourceMapGenerator;un.SourceMapConsumer=Vr().SourceMapConsumer;un.SourceNode=$r().SourceNode});var Hs=he(zt=>{"use strict";Object.defineProperty(zt,"__esModule",{value:!0});function ai(r,n){if(r==null)return{};var e={},t=Object.keys(r),s,i;for(i=0;i<t.length;i++)s=t[i],!(n.indexOf(s)>=0)&&(e[s]=r[s]);return e}var ke=class{constructor(n,e,t){this.line=void 0,this.column=void 0,this.index=void 0,this.line=n,this.column=e,this.index=t}},dt=class{constructor(n,e){this.start=void 0,this.end=void 0,this.filename=void 0,this.identifierName=void 0,this.start=n,this.end=e}};function re(r,n){let{line:e,column:t,index:s}=r;return new ke(e,t+n,s+n)}var qr="BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED",xo={ImportMetaOutsideModule:{message:`import.meta may appear only with 'sourceType: "module"'`,code:qr},ImportOutsideModule:{message:`'import' and 'export' may appear only with 'sourceType: "module"'`,code:qr}},Hr={ArrayPattern:"array destructuring pattern",AssignmentExpression:"assignment expression",AssignmentPattern:"assignment expression",ArrowFunctionExpression:"arrow function expression",ConditionalExpression:"conditional expression",CatchClause:"catch clause",ForOfStatement:"for-of statement",ForInStatement:"for-in statement",ForStatement:"for-loop",FormalParameters:"function parameter list",Identifier:"identifier",ImportSpecifier:"import specifier",ImportDefaultSpecifier:"import default specifier",ImportNamespaceSpecifier:"import namespace specifier",ObjectPattern:"object destructuring pattern",ParenthesizedExpression:"parenthesized expression",RestElement:"rest element",UpdateExpression:{true:"prefix operation",false:"postfix operation"},VariableDeclarator:"variable declaration",YieldExpression:"yield expression"},hn=({type:r,prefix:n})=>r==="UpdateExpression"?Hr.UpdateExpression[String(n)]:Hr[r],Po={AccessorIsGenerator:({kind:r})=>`A ${r}ter cannot be a generator.`,ArgumentsInClass:"'arguments' is only allowed in functions and class methods.",AsyncFunctionInSingleStatementContext:"Async functions can only be declared at the top level or inside a block.",AwaitBindingIdentifier:"Can not use 'await' as identifier inside an async function.",AwaitBindingIdentifierInStaticBlock:"Can not use 'await' as identifier inside a static block.",AwaitExpressionFormalParameter:"'await' is not allowed in async function parameters.",AwaitUsingNotInAsyncContext:"'await using' is only allowed within async functions and at the top levels of modules.",AwaitNotInAsyncContext:"'await' is only allowed within async functions and at the top levels of modules.",AwaitNotInAsyncFunction:"'await' is only allowed within async functions.",BadGetterArity:"A 'get' accessor must not have any formal parameters.",BadSetterArity:"A 'set' accessor must have exactly one formal parameter.",BadSetterRestParameter:"A 'set' accessor function argument must not be a rest parameter.",ConstructorClassField:"Classes may not have a field named 'constructor'.",ConstructorClassPrivateField:"Classes may not have a private field named '#constructor'.",ConstructorIsAccessor:"Class constructor may not be an accessor.",ConstructorIsAsync:"Constructor can't be an async function.",ConstructorIsGenerator:"Constructor can't be a generator.",DeclarationMissingInitializer:({kind:r})=>`Missing initializer in ${r} declaration.`,DecoratorArgumentsOutsideParentheses:"Decorator arguments must be moved inside parentheses: use '@(decorator(args))' instead of '@(decorator)(args)'.",DecoratorBeforeExport:"Decorators must be placed *before* the 'export' keyword. Remove the 'decoratorsBeforeExport: true' option to use the 'export @decorator class {}' syntax.",DecoratorsBeforeAfterExport:"Decorators can be placed *either* before or after the 'export' keyword, but not in both locations at the same time.",DecoratorConstructor:"Decorators can't be used with a constructor. Did you mean '@dec class { ... }'?",DecoratorExportClass:"Decorators must be placed *after* the 'export' keyword. Remove the 'decoratorsBeforeExport: false' option to use the '@decorator export class {}' syntax.",DecoratorSemicolon:"Decorators must not be followed by a semicolon.",DecoratorStaticBlock:"Decorators can't be used with a static block.",DeferImportRequiresNamespace:'Only `import defer * as x from "./module"` is valid.',DeletePrivateField:"Deleting a private field is not allowed.",DestructureNamedImport:"ES2015 named imports do not destructure. Use another statement for destructuring after the import.",DuplicateConstructor:"Duplicate constructor in the same class.",DuplicateDefaultExport:"Only one default export allowed per module.",DuplicateExport:({exportName:r})=>`\`${r}\` has already been exported. Exported identifiers must be unique.`,DuplicateProto:"Redefinition of __proto__ property.",DuplicateRegExpFlags:"Duplicate regular expression flag.",DynamicImportPhaseRequiresImportExpressions:({phase:r})=>`'import.${r}(...)' can only be parsed when using the 'createImportExpressions' option.`,ElementAfterRest:"Rest element must be last element.",EscapedCharNotAnIdentifier:"Invalid Unicode escape.",ExportBindingIsString:({localName:r,exportName:n})=>`A string literal cannot be used as an exported binding without \`from\`.
3
3
  - Did you mean \`export { '${r}' as '${n}' } from 'some-module'\`?`,ExportDefaultFromAsIdentifier:"'from' is not allowed as an identifier after 'export default'.",ForInOfLoopInitializer:({type:r})=>`'${r==="ForInStatement"?"for-in":"for-of"}' loop variable declaration may not have an initializer.`,ForInUsing:"For-in loop may not start with 'using' declaration.",ForOfAsync:"The left-hand side of a for-of loop may not be 'async'.",ForOfLet:"The left-hand side of a for-of loop may not start with 'let'.",GeneratorInSingleStatementContext:"Generators can only be declared at the top level or inside a block.",IllegalBreakContinue:({type:r})=>`Unsyntactic ${r==="BreakStatement"?"break":"continue"}.`,IllegalLanguageModeDirective:"Illegal 'use strict' directive in function with non-simple parameter list.",IllegalReturn:"'return' outside of function.",ImportAttributesUseAssert:"The `assert` keyword in import attributes is deprecated and it has been replaced by the `with` keyword. You can enable the `deprecatedAssertSyntax: true` option in the import attributes plugin to suppress this error.",ImportBindingIsString:({importName:r})=>`A string literal cannot be used as an imported binding.
4
- - Did you mean \`import { "${r}" as foo }\`?`,ImportCallArgumentTrailingComma:"Trailing comma is disallowed inside import(...) arguments.",ImportCallArity:({maxArgumentCount:r})=>`\`import()\` requires exactly ${r===1?"one argument":"one or two arguments"}.`,ImportCallNotNewExpression:"Cannot use new with import(...).",ImportCallSpreadArgument:"`...` is not allowed in `import()`.",ImportJSONBindingNotDefault:"A JSON module can only be imported with `default`.",ImportReflectionHasAssertion:"`import module x` cannot have assertions.",ImportReflectionNotBinding:'Only `import module x from "./module"` is valid.',IncompatibleRegExpUVFlags:"The 'u' and 'v' regular expression flags cannot be enabled at the same time.",InvalidBigIntLiteral:"Invalid BigIntLiteral.",InvalidCodePoint:"Code point out of bounds.",InvalidCoverInitializedName:"Invalid shorthand property initializer.",InvalidDecimal:"Invalid decimal.",InvalidDigit:({radix:r})=>`Expected number in radix ${r}.`,InvalidEscapeSequence:"Bad character escape sequence.",InvalidEscapeSequenceTemplate:"Invalid escape sequence in template.",InvalidEscapedReservedWord:({reservedWord:r})=>`Escape sequence in keyword ${r}.`,InvalidIdentifier:({identifierName:r})=>`Invalid identifier ${r}.`,InvalidLhs:({ancestor:r})=>`Invalid left-hand side in ${fn(r)}.`,InvalidLhsBinding:({ancestor:r})=>`Binding invalid left-hand side in ${fn(r)}.`,InvalidLhsOptionalChaining:({ancestor:r})=>`Invalid optional chaining in the left-hand side of ${fn(r)}.`,InvalidNumber:"Invalid number.",InvalidOrMissingExponent:"Floating-point numbers require a valid exponent after the 'e'.",InvalidOrUnexpectedToken:({unexpected:r})=>`Unexpected character '${r}'.`,InvalidParenthesizedAssignment:"Invalid parenthesized assignment pattern.",InvalidPrivateFieldResolution:({identifierName:r})=>`Private name #${r} is not defined.`,InvalidPropertyBindingPattern:"Binding member expression.",InvalidRecordProperty:"Only properties and spread elements are allowed in record definitions.",InvalidRestAssignmentPattern:"Invalid rest operator's argument.",LabelRedeclaration:({labelName:r})=>`Label '${r}' is already declared.`,LetInLexicalBinding:"'let' is disallowed as a lexically bound name.",LineTerminatorBeforeArrow:"No line break is allowed before '=>'.",MalformedRegExpFlags:"Invalid regular expression flag.",MissingClassName:"A class name is required.",MissingEqInAssignment:"Only '=' operator can be used for specifying default value.",MissingSemicolon:"Missing semicolon.",MissingPlugin:({missingPlugin:r})=>`This experimental syntax requires enabling the parser plugin: ${r.map(n=>JSON.stringify(n)).join(", ")}.`,MissingOneOfPlugins:({missingPlugin:r})=>`This experimental syntax requires enabling one of the following parser plugin(s): ${r.map(n=>JSON.stringify(n)).join(", ")}.`,MissingUnicodeEscape:"Expecting Unicode escape sequence \\uXXXX.",MixingCoalesceWithLogical:"Nullish coalescing operator(??) requires parens when mixing with logical operators.",ModuleAttributeDifferentFromType:"The only accepted module attribute is `type`.",ModuleAttributeInvalidValue:"Only string literals are allowed as module attribute values.",ModuleAttributesWithDuplicateKeys:({key:r})=>`Duplicate key "${r}" is not allowed in module attributes.`,ModuleExportNameHasLoneSurrogate:({surrogateCharCode:r})=>`An export name cannot include a lone surrogate, found '\\u${r.toString(16)}'.`,ModuleExportUndefined:({localName:r})=>`Export '${r}' is not defined.`,MultipleDefaultsInSwitch:"Multiple default clauses.",NewlineAfterThrow:"Illegal newline after throw.",NoCatchOrFinally:"Missing catch or finally clause.",NumberIdentifier:"Identifier directly after number.",NumericSeparatorInEscapeSequence:"Numeric separators are not allowed inside unicode escape sequences or hex escape sequences.",ObsoleteAwaitStar:"'await*' has been removed from the async functions proposal. Use Promise.all() instead.",OptionalChainingNoNew:"Constructors in/after an Optional Chain are not allowed.",OptionalChainingNoTemplate:"Tagged Template Literals are not allowed in optionalChain.",OverrideOnConstructor:"'override' modifier cannot appear on a constructor declaration.",ParamDupe:"Argument name clash.",PatternHasAccessor:"Object pattern can't contain getter or setter.",PatternHasMethod:"Object pattern can't contain methods.",PrivateInExpectedIn:({identifierName:r})=>`Private names are only allowed in property accesses (\`obj.#${r}\`) or in \`in\` expressions (\`#${r} in obj\`).`,PrivateNameRedeclaration:({identifierName:r})=>`Duplicate private name #${r}.`,RecordExpressionBarIncorrectEndSyntaxType:"Record expressions ending with '|}' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionBarIncorrectStartSyntaxType:"Record expressions starting with '{|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionHashIncorrectStartSyntaxType:"Record expressions starting with '#{' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",RecordNoProto:"'__proto__' is not allowed in Record expressions.",RestTrailingComma:"Unexpected trailing comma after rest element.",SloppyFunction:"In non-strict mode code, functions can only be declared at top level or inside a block.",SloppyFunctionAnnexB:"In non-strict mode code, functions can only be declared at top level, inside a block, or as the body of an if statement.",SourcePhaseImportRequiresDefault:'Only `import source x from "./module"` is valid.',StaticPrototype:"Classes may not have static property named prototype.",SuperNotAllowed:"`super()` is only valid inside a class constructor of a subclass. Maybe a typo in the method name ('constructor') or not extending another class?",SuperPrivateField:"Private fields can't be accessed on super.",TrailingDecorator:"Decorators must be attached to a class element.",TupleExpressionBarIncorrectEndSyntaxType:"Tuple expressions ending with '|]' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionBarIncorrectStartSyntaxType:"Tuple expressions starting with '[|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionHashIncorrectStartSyntaxType:"Tuple expressions starting with '#[' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",UnexpectedArgumentPlaceholder:"Unexpected argument placeholder.",UnexpectedAwaitAfterPipelineBody:'Unexpected "await" after pipeline body; await must have parentheses in minimal proposal.',UnexpectedDigitAfterHash:"Unexpected digit after hash token.",UnexpectedImportExport:"'import' and 'export' may only appear at the top level.",UnexpectedKeyword:({keyword:r})=>`Unexpected keyword '${r}'.`,UnexpectedLeadingDecorator:"Leading decorators must be attached to a class declaration.",UnexpectedLexicalDeclaration:"Lexical declaration cannot appear in a single-statement context.",UnexpectedNewTarget:"`new.target` can only be used in functions or class properties.",UnexpectedNumericSeparator:"A numeric separator is only allowed between two digits.",UnexpectedPrivateField:"Unexpected private name.",UnexpectedReservedWord:({reservedWord:r})=>`Unexpected reserved word '${r}'.`,UnexpectedSuper:"'super' is only allowed in object methods and classes.",UnexpectedToken:({expected:r,unexpected:n})=>`Unexpected token${n?` '${n}'.`:""}${r?`, expected "${r}"`:""}`,UnexpectedTokenUnaryExponentiation:"Illegal expression. Wrap left hand side or entire exponentiation in parentheses.",UnexpectedUsingDeclaration:"Using declaration cannot appear in the top level when source type is `script`.",UnsupportedBind:"Binding should be performed on object property.",UnsupportedDecoratorExport:"A decorated export must export a class declaration.",UnsupportedDefaultExport:"Only expressions, functions or classes are allowed as the `default` export.",UnsupportedImport:"`import` can only be used in `import()` or `import.meta`.",UnsupportedMetaProperty:({target:r,onlyValidPropertyName:n})=>`The only valid meta property for ${r} is ${r}.${n}.`,UnsupportedParameterDecorator:"Decorators cannot be used to decorate parameters.",UnsupportedPropertyDecorator:"Decorators cannot be used to decorate object literal properties.",UnsupportedSuper:"'super' can only be used with function calls (i.e. super()) or in property accesses (i.e. super.prop or super[prop]).",UnterminatedComment:"Unterminated comment.",UnterminatedRegExp:"Unterminated regular expression.",UnterminatedString:"Unterminated string constant.",UnterminatedTemplate:"Unterminated template.",UsingDeclarationHasBindingPattern:"Using declaration cannot have destructuring patterns.",VarRedeclaration:({identifierName:r})=>`Identifier '${r}' has already been declared.`,YieldBindingIdentifier:"Can not use 'yield' as identifier inside a generator.",YieldInParameter:"Yield expression is not allowed in formal parameters.",ZeroDigitNumericSeparator:"Numeric separator can not be used after leading 0."},To={StrictDelete:"Deleting local variable in strict mode.",StrictEvalArguments:({referenceName:r})=>`Assigning to '${r}' in strict mode.`,StrictEvalArgumentsBinding:({bindingName:r})=>`Binding '${r}' in strict mode.`,StrictFunction:"In strict mode code, functions can only be declared at top level or inside a block.",StrictNumericEscape:"The only valid numeric escape in strict mode is '\\0'.",StrictOctalLiteral:"Legacy octal literals are not allowed in strict mode.",StrictWith:"'with' in strict mode."},wo=new Set(["ArrowFunctionExpression","AssignmentExpression","ConditionalExpression","YieldExpression"]),Co={PipeBodyIsTighter:"Unexpected yield after pipeline body; any yield expression acting as Hack-style pipe body must be parenthesized due to its loose operator precedence.",PipeTopicRequiresHackPipes:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.',PipeTopicUnbound:"Topic reference is unbound; it must be inside a pipe body.",PipeTopicUnconfiguredToken:({token:r})=>`Invalid topic token ${r}. In order to use ${r} as a topic reference, the pipelineOperator plugin must be configured with { "proposal": "hack", "topicToken": "${r}" }.`,PipeTopicUnused:"Hack-style pipe body does not contain a topic reference; Hack-style pipes must use topic at least once.",PipeUnparenthesizedBody:({type:r})=>`Hack-style pipe body cannot be an unparenthesized ${fn({type:r})}; please wrap it in parentheses.`,PipelineBodyNoArrow:'Unexpected arrow "=>" after pipeline body; arrow function in pipeline body must be parenthesized.',PipelineBodySequenceExpression:"Pipeline body may not be a comma-separated sequence expression.",PipelineHeadSequenceExpression:"Pipeline head should not be a comma-separated sequence expression.",PipelineTopicUnused:"Pipeline is in topic style but does not use topic reference.",PrimaryTopicNotAllowed:"Topic reference was used in a lexical context without topic binding.",PrimaryTopicRequiresSmartPipeline:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.'},So=["toMessage"],Io=["message"];function Wr(r,n,e){Object.defineProperty(r,n,{enumerable:!1,configurable:!0,value:e})}function Eo(r){let{toMessage:n}=r,e=ai(r,So);return function t(s,i){let a=new SyntaxError;return Object.assign(a,e,{loc:s,pos:s.index}),"missingPlugin"in i&&Object.assign(a,{missingPlugin:i.missingPlugin}),Wr(a,"clone",function(l={}){var c;let{line:p,column:u,index:h}=(c=l.loc)!=null?c:s;return t(new ke(p,u,h),Object.assign({},i,l.details))}),Wr(a,"details",i),Object.defineProperty(a,"message",{configurable:!0,get(){let o=`${n(i)} (${s.line}:${s.column})`;return this.message=o,o},set(o){Object.defineProperty(this,"message",{value:o,writable:!0})}}),a}}function Re(r,n){if(Array.isArray(r))return t=>Re(t,r[0]);let e={};for(let t of Object.keys(r)){let s=r[t],i=typeof s=="string"?{message:()=>s}:typeof s=="function"?{message:s}:s,{message:a}=i,o=ai(i,Io),l=typeof a=="string"?()=>a:a;e[t]=Eo(Object.assign({code:"BABEL_PARSER_SYNTAX_ERROR",reasonCode:t,toMessage:l},n?{syntaxPlugin:n}:{},o))}return e}var b=Object.assign({},Re(xo),Re(Po),Re(To),Re`pipelineOperator`(Co)),{defineProperty:Ao}=Object,Gr=(r,n)=>Ao(r,n,{enumerable:!1,value:r[n]});function Mt(r){return r.loc.start&&Gr(r.loc.start,"index"),r.loc.end&&Gr(r.loc.end,"index"),r}var ko=r=>class extends r{parse(){let e=Mt(super.parse());return this.options.tokens&&(e.tokens=e.tokens.map(Mt)),e}parseRegExpLiteral({pattern:e,flags:t}){let s=null;try{s=new RegExp(e,t)}catch{}let i=this.estreeParseLiteral(s);return i.regex={pattern:e,flags:t},i}parseBigIntLiteral(e){let t;try{t=BigInt(e)}catch{t=null}let s=this.estreeParseLiteral(t);return s.bigint=String(s.value||e),s}parseDecimalLiteral(e){let s=this.estreeParseLiteral(null);return s.decimal=String(s.value||e),s}estreeParseLiteral(e){return this.parseLiteral(e,"Literal")}parseStringLiteral(e){return this.estreeParseLiteral(e)}parseNumericLiteral(e){return this.estreeParseLiteral(e)}parseNullLiteral(){return this.estreeParseLiteral(null)}parseBooleanLiteral(e){return this.estreeParseLiteral(e)}directiveToStmt(e){let t=e.value;delete e.value,t.type="Literal",t.raw=t.extra.raw,t.value=t.extra.expressionValue;let s=e;return s.type="ExpressionStatement",s.expression=t,s.directive=t.extra.rawValue,delete t.extra,s}initFunction(e,t){super.initFunction(e,t),e.expression=!1}checkDeclaration(e){e!=null&&this.isObjectProperty(e)?this.checkDeclaration(e.value):super.checkDeclaration(e)}getObjectOrClassMethodParams(e){return e.value.params}isValidDirective(e){var t;return e.type==="ExpressionStatement"&&e.expression.type==="Literal"&&typeof e.expression.value=="string"&&!((t=e.expression.extra)!=null&&t.parenthesized)}parseBlockBody(e,t,s,i,a){super.parseBlockBody(e,t,s,i,a);let o=e.directives.map(l=>this.directiveToStmt(l));e.body=o.concat(e.body),delete e.directives}pushClassMethod(e,t,s,i,a,o){this.parseMethod(t,s,i,a,o,"ClassMethod",!0),t.typeParameters&&(t.value.typeParameters=t.typeParameters,delete t.typeParameters),e.body.push(t)}parsePrivateName(){let e=super.parsePrivateName();return this.getPluginOption("estree","classFeatures")?this.convertPrivateNameToPrivateIdentifier(e):e}convertPrivateNameToPrivateIdentifier(e){let t=super.getPrivateNameSV(e);return e=e,delete e.id,e.name=t,e.type="PrivateIdentifier",e}isPrivateName(e){return this.getPluginOption("estree","classFeatures")?e.type==="PrivateIdentifier":super.isPrivateName(e)}getPrivateNameSV(e){return this.getPluginOption("estree","classFeatures")?e.name:super.getPrivateNameSV(e)}parseLiteral(e,t){let s=super.parseLiteral(e,t);return s.raw=s.extra.raw,delete s.extra,s}parseFunctionBody(e,t,s=!1){super.parseFunctionBody(e,t,s),e.expression=e.body.type!=="BlockStatement"}parseMethod(e,t,s,i,a,o,l=!1){let c=this.startNode();return c.kind=e.kind,c=super.parseMethod(c,t,s,i,a,o,l),c.type="FunctionExpression",delete c.kind,e.value=c,o==="ClassPrivateMethod"&&(e.computed=!1),this.finishNode(e,"MethodDefinition")}parseClassProperty(...e){let t=super.parseClassProperty(...e);return this.getPluginOption("estree","classFeatures")&&(t.type="PropertyDefinition"),t}parseClassPrivateProperty(...e){let t=super.parseClassPrivateProperty(...e);return this.getPluginOption("estree","classFeatures")&&(t.type="PropertyDefinition",t.computed=!1),t}parseObjectMethod(e,t,s,i,a){let o=super.parseObjectMethod(e,t,s,i,a);return o&&(o.type="Property",o.kind==="method"&&(o.kind="init"),o.shorthand=!1),o}parseObjectProperty(e,t,s,i){let a=super.parseObjectProperty(e,t,s,i);return a&&(a.kind="init",a.type="Property"),a}isValidLVal(e,t,s){return e==="Property"?"value":super.isValidLVal(e,t,s)}isAssignable(e,t){return e!=null&&this.isObjectProperty(e)?this.isAssignable(e.value,t):super.isAssignable(e,t)}toAssignable(e,t=!1){if(e!=null&&this.isObjectProperty(e)){let{key:s,value:i}=e;this.isPrivateName(s)&&this.classScope.usePrivateName(this.getPrivateNameSV(s),s.loc.start),this.toAssignable(i,t)}else super.toAssignable(e,t)}toAssignableObjectExpressionProp(e,t,s){e.kind==="get"||e.kind==="set"?this.raise(b.PatternHasAccessor,e.key):e.method?this.raise(b.PatternHasMethod,e.key):super.toAssignableObjectExpressionProp(e,t,s)}finishCallExpression(e,t){let s=super.finishCallExpression(e,t);if(s.callee.type==="Import"){if(s.type="ImportExpression",s.source=s.arguments[0],this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions")){var i,a;s.options=(i=s.arguments[1])!=null?i:null,s.attributes=(a=s.arguments[1])!=null?a:null}delete s.arguments,delete s.callee}return s}toReferencedArguments(e){e.type!=="ImportExpression"&&super.toReferencedArguments(e)}parseExport(e,t){let s=this.state.lastTokStartLoc,i=super.parseExport(e,t);switch(i.type){case"ExportAllDeclaration":i.exported=null;break;case"ExportNamedDeclaration":i.specifiers.length===1&&i.specifiers[0].type==="ExportNamespaceSpecifier"&&(i.type="ExportAllDeclaration",i.exported=i.specifiers[0].exported,delete i.specifiers);case"ExportDefaultDeclaration":{var a;let{declaration:o}=i;o?.type==="ClassDeclaration"&&((a=o.decorators)==null?void 0:a.length)>0&&o.start===i.start&&this.resetStartLocation(i,s)}break}return i}parseSubscript(e,t,s,i){let a=super.parseSubscript(e,t,s,i);if(i.optionalChainMember){if((a.type==="OptionalMemberExpression"||a.type==="OptionalCallExpression")&&(a.type=a.type.substring(8)),i.stop){let o=this.startNodeAtNode(a);return o.expression=a,this.finishNode(o,"ChainExpression")}}else(a.type==="MemberExpression"||a.type==="CallExpression")&&(a.optional=!1);return a}isOptionalMemberExpression(e){return e.type==="ChainExpression"?e.expression.type==="MemberExpression":super.isOptionalMemberExpression(e)}hasPropertyAsPrivateName(e){return e.type==="ChainExpression"&&(e=e.expression),super.hasPropertyAsPrivateName(e)}isObjectProperty(e){return e.type==="Property"&&e.kind==="init"&&!e.method}isObjectMethod(e){return e.method||e.kind==="get"||e.kind==="set"}finishNodeAt(e,t,s){return Mt(super.finishNodeAt(e,t,s))}resetStartLocation(e,t){super.resetStartLocation(e,t),Mt(e)}resetEndLocation(e,t=this.state.lastTokEndLoc){super.resetEndLocation(e,t),Mt(e)}},Qe=class{constructor(n,e){this.token=void 0,this.preserveSpace=void 0,this.token=n,this.preserveSpace=!!e}},V={brace:new Qe("{"),j_oTag:new Qe("<tag"),j_cTag:new Qe("</tag"),j_expr:new Qe("<tag>...</tag>",!0)};V.template=new Qe("`",!0);var _=!0,A=!0,ps=!0,Lt=!0,ze=!0,No=!0,yn=class{constructor(n,e={}){this.label=void 0,this.keyword=void 0,this.beforeExpr=void 0,this.startsExpr=void 0,this.rightAssociative=void 0,this.isLoop=void 0,this.isAssign=void 0,this.prefix=void 0,this.postfix=void 0,this.binop=void 0,this.label=n,this.keyword=e.keyword,this.beforeExpr=!!e.beforeExpr,this.startsExpr=!!e.startsExpr,this.rightAssociative=!!e.rightAssociative,this.isLoop=!!e.isLoop,this.isAssign=!!e.isAssign,this.prefix=!!e.prefix,this.postfix=!!e.postfix,this.binop=e.binop!=null?e.binop:null,this.updateContext=null}},Fs=new Map;function R(r,n={}){n.keyword=r;let e=M(r,n);return Fs.set(r,e),e}function se(r,n){return M(r,{beforeExpr:_,binop:n})}var _t=-1,Ue=[],Us=[],_s=[],Rs=[],Bs=[],js=[];function M(r,n={}){var e,t,s,i;return++_t,Us.push(r),_s.push((e=n.binop)!=null?e:-1),Rs.push((t=n.beforeExpr)!=null?t:!1),Bs.push((s=n.startsExpr)!=null?s:!1),js.push((i=n.prefix)!=null?i:!1),Ue.push(new yn(r,n)),_t}function U(r,n={}){var e,t,s,i;return++_t,Fs.set(r,_t),Us.push(r),_s.push((e=n.binop)!=null?e:-1),Rs.push((t=n.beforeExpr)!=null?t:!1),Bs.push((s=n.startsExpr)!=null?s:!1),js.push((i=n.prefix)!=null?i:!1),Ue.push(new yn("name",n)),_t}var Do={bracketL:M("[",{beforeExpr:_,startsExpr:A}),bracketHashL:M("#[",{beforeExpr:_,startsExpr:A}),bracketBarL:M("[|",{beforeExpr:_,startsExpr:A}),bracketR:M("]"),bracketBarR:M("|]"),braceL:M("{",{beforeExpr:_,startsExpr:A}),braceBarL:M("{|",{beforeExpr:_,startsExpr:A}),braceHashL:M("#{",{beforeExpr:_,startsExpr:A}),braceR:M("}"),braceBarR:M("|}"),parenL:M("(",{beforeExpr:_,startsExpr:A}),parenR:M(")"),comma:M(",",{beforeExpr:_}),semi:M(";",{beforeExpr:_}),colon:M(":",{beforeExpr:_}),doubleColon:M("::",{beforeExpr:_}),dot:M("."),question:M("?",{beforeExpr:_}),questionDot:M("?."),arrow:M("=>",{beforeExpr:_}),template:M("template"),ellipsis:M("...",{beforeExpr:_}),backQuote:M("`",{startsExpr:A}),dollarBraceL:M("${",{beforeExpr:_,startsExpr:A}),templateTail:M("...`",{startsExpr:A}),templateNonTail:M("...${",{beforeExpr:_,startsExpr:A}),at:M("@"),hash:M("#",{startsExpr:A}),interpreterDirective:M("#!..."),eq:M("=",{beforeExpr:_,isAssign:Lt}),assign:M("_=",{beforeExpr:_,isAssign:Lt}),slashAssign:M("_=",{beforeExpr:_,isAssign:Lt}),xorAssign:M("_=",{beforeExpr:_,isAssign:Lt}),moduloAssign:M("_=",{beforeExpr:_,isAssign:Lt}),incDec:M("++/--",{prefix:ze,postfix:No,startsExpr:A}),bang:M("!",{beforeExpr:_,prefix:ze,startsExpr:A}),tilde:M("~",{beforeExpr:_,prefix:ze,startsExpr:A}),doubleCaret:M("^^",{startsExpr:A}),doubleAt:M("@@",{startsExpr:A}),pipeline:se("|>",0),nullishCoalescing:se("??",1),logicalOR:se("||",1),logicalAND:se("&&",2),bitwiseOR:se("|",3),bitwiseXOR:se("^",4),bitwiseAND:se("&",5),equality:se("==/!=/===/!==",6),lt:se("</>/<=/>=",7),gt:se("</>/<=/>=",7),relational:se("</>/<=/>=",7),bitShift:se("<</>>/>>>",8),bitShiftL:se("<</>>/>>>",8),bitShiftR:se("<</>>/>>>",8),plusMin:M("+/-",{beforeExpr:_,binop:9,prefix:ze,startsExpr:A}),modulo:M("%",{binop:10,startsExpr:A}),star:M("*",{binop:10}),slash:se("/",10),exponent:M("**",{beforeExpr:_,binop:11,rightAssociative:!0}),_in:R("in",{beforeExpr:_,binop:7}),_instanceof:R("instanceof",{beforeExpr:_,binop:7}),_break:R("break"),_case:R("case",{beforeExpr:_}),_catch:R("catch"),_continue:R("continue"),_debugger:R("debugger"),_default:R("default",{beforeExpr:_}),_else:R("else",{beforeExpr:_}),_finally:R("finally"),_function:R("function",{startsExpr:A}),_if:R("if"),_return:R("return",{beforeExpr:_}),_switch:R("switch"),_throw:R("throw",{beforeExpr:_,prefix:ze,startsExpr:A}),_try:R("try"),_var:R("var"),_const:R("const"),_with:R("with"),_new:R("new",{beforeExpr:_,startsExpr:A}),_this:R("this",{startsExpr:A}),_super:R("super",{startsExpr:A}),_class:R("class",{startsExpr:A}),_extends:R("extends",{beforeExpr:_}),_export:R("export"),_import:R("import",{startsExpr:A}),_null:R("null",{startsExpr:A}),_true:R("true",{startsExpr:A}),_false:R("false",{startsExpr:A}),_typeof:R("typeof",{beforeExpr:_,prefix:ze,startsExpr:A}),_void:R("void",{beforeExpr:_,prefix:ze,startsExpr:A}),_delete:R("delete",{beforeExpr:_,prefix:ze,startsExpr:A}),_do:R("do",{isLoop:ps,beforeExpr:_}),_for:R("for",{isLoop:ps}),_while:R("while",{isLoop:ps}),_as:U("as",{startsExpr:A}),_assert:U("assert",{startsExpr:A}),_async:U("async",{startsExpr:A}),_await:U("await",{startsExpr:A}),_defer:U("defer",{startsExpr:A}),_from:U("from",{startsExpr:A}),_get:U("get",{startsExpr:A}),_let:U("let",{startsExpr:A}),_meta:U("meta",{startsExpr:A}),_of:U("of",{startsExpr:A}),_sent:U("sent",{startsExpr:A}),_set:U("set",{startsExpr:A}),_source:U("source",{startsExpr:A}),_static:U("static",{startsExpr:A}),_using:U("using",{startsExpr:A}),_yield:U("yield",{startsExpr:A}),_asserts:U("asserts",{startsExpr:A}),_checks:U("checks",{startsExpr:A}),_exports:U("exports",{startsExpr:A}),_global:U("global",{startsExpr:A}),_implements:U("implements",{startsExpr:A}),_intrinsic:U("intrinsic",{startsExpr:A}),_infer:U("infer",{startsExpr:A}),_is:U("is",{startsExpr:A}),_mixins:U("mixins",{startsExpr:A}),_proto:U("proto",{startsExpr:A}),_require:U("require",{startsExpr:A}),_satisfies:U("satisfies",{startsExpr:A}),_keyof:U("keyof",{startsExpr:A}),_readonly:U("readonly",{startsExpr:A}),_unique:U("unique",{startsExpr:A}),_abstract:U("abstract",{startsExpr:A}),_declare:U("declare",{startsExpr:A}),_enum:U("enum",{startsExpr:A}),_module:U("module",{startsExpr:A}),_namespace:U("namespace",{startsExpr:A}),_interface:U("interface",{startsExpr:A}),_type:U("type",{startsExpr:A}),_opaque:U("opaque",{startsExpr:A}),name:M("name",{startsExpr:A}),string:M("string",{startsExpr:A}),num:M("num",{startsExpr:A}),bigint:M("bigint",{startsExpr:A}),decimal:M("decimal",{startsExpr:A}),regexp:M("regexp",{startsExpr:A}),privateName:M("#name",{startsExpr:A}),eof:M("eof"),jsxName:M("jsxName"),jsxText:M("jsxText",{beforeExpr:!0}),jsxTagStart:M("jsxTagStart",{startsExpr:!0}),jsxTagEnd:M("jsxTagEnd"),placeholder:M("%%",{startsExpr:!0})};function B(r){return r>=93&&r<=132}function Mo(r){return r<=92}function xe(r){return r>=58&&r<=132}function oi(r){return r>=58&&r<=136}function Lo(r){return Rs[r]}function ms(r){return Bs[r]}function Oo(r){return r>=29&&r<=33}function Kr(r){return r>=129&&r<=131}function Fo(r){return r>=90&&r<=92}function Vs(r){return r>=58&&r<=92}function Uo(r){return r>=39&&r<=59}function _o(r){return r===34}function Ro(r){return js[r]}function Bo(r){return r>=121&&r<=123}function jo(r){return r>=124&&r<=130}function He(r){return Us[r]}function mn(r){return _s[r]}function Vo(r){return r===57}function vn(r){return r>=24&&r<=25}function Fe(r){return Ue[r]}Ue[8].updateContext=r=>{r.pop()},Ue[5].updateContext=Ue[7].updateContext=Ue[23].updateContext=r=>{r.push(V.brace)},Ue[22].updateContext=r=>{r[r.length-1]===V.template?r.pop():r.push(V.template)},Ue[142].updateContext=r=>{r.push(V.j_expr,V.j_oTag)};var zs="\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC",li="\u200C\u200D\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0898-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F\uFF65",zo=new RegExp("["+zs+"]"),$o=new RegExp("["+zs+li+"]");zs=li=null;var ci=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,68,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,349,41,7,1,79,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,159,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,264,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,4026,582,8634,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,689,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,43,8,8936,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,757,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4153,7,221,3,5761,15,7472,16,621,2467,541,1507,4938,6,4191],qo=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,370,1,81,2,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,193,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,84,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,406,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,10,1,2,0,49,6,4,4,14,9,5351,0,7,14,13835,9,87,9,39,4,60,6,26,9,1014,0,2,54,8,3,82,0,12,1,19628,1,4706,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,983,6,110,6,6,9,4759,9,787719,239];function bs(r,n){let e=65536;for(let t=0,s=n.length;t<s;t+=2){if(e+=n[t],e>r)return!1;if(e+=n[t+1],e>=r)return!0}return!1}function _e(r){return r<65?r===36:r<=90?!0:r<97?r===95:r<=122?!0:r<=65535?r>=170&&zo.test(String.fromCharCode(r)):bs(r,ci)}function pt(r){return r<48?r===36:r<58?!0:r<65?!1:r<=90?!0:r<97?r===95:r<=122?!0:r<=65535?r>=170&&$o.test(String.fromCharCode(r)):bs(r,ci)||bs(r,qo)}var $s={keyword:["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete"],strict:["implements","interface","let","package","private","protected","public","static","yield"],strictBind:["eval","arguments"]},Ho=new Set($s.keyword),Wo=new Set($s.strict),Go=new Set($s.strictBind);function pi(r,n){return n&&r==="await"||r==="enum"}function ui(r,n){return pi(r,n)||Wo.has(r)}function di(r){return Go.has(r)}function hi(r,n){return ui(r,n)||di(r)}function Ko(r){return Ho.has(r)}function Jo(r,n,e){return r===64&&n===64&&_e(e)}var Xo=new Set(["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete","implements","interface","let","package","private","protected","public","static","yield","eval","arguments","enum","await"]);function Qo(r){return Xo.has(r)}var Bt=class{constructor(n){this.flags=0,this.names=new Map,this.firstLexicalName="",this.flags=n}},jt=class{constructor(n,e){this.parser=void 0,this.scopeStack=[],this.inModule=void 0,this.undefinedExports=new Map,this.parser=n,this.inModule=e}get inTopLevel(){return(this.currentScope().flags&1)>0}get inFunction(){return(this.currentVarScopeFlags()&2)>0}get allowSuper(){return(this.currentThisScopeFlags()&16)>0}get allowDirectSuper(){return(this.currentThisScopeFlags()&32)>0}get inClass(){return(this.currentThisScopeFlags()&64)>0}get inClassAndNotInNonArrowFunction(){let n=this.currentThisScopeFlags();return(n&64)>0&&(n&2)===0}get inStaticBlock(){for(let n=this.scopeStack.length-1;;n--){let{flags:e}=this.scopeStack[n];if(e&128)return!0;if(e&451)return!1}}get inNonArrowFunction(){return(this.currentThisScopeFlags()&2)>0}get treatFunctionsAsVar(){return this.treatFunctionsAsVarInScope(this.currentScope())}createScope(n){return new Bt(n)}enter(n){this.scopeStack.push(this.createScope(n))}exit(){return this.scopeStack.pop().flags}treatFunctionsAsVarInScope(n){return!!(n.flags&130||!this.parser.inModule&&n.flags&1)}declareName(n,e,t){let s=this.currentScope();if(e&8||e&16){this.checkRedeclarationInScope(s,n,e,t);let i=s.names.get(n)||0;e&16?i=i|4:(s.firstLexicalName||(s.firstLexicalName=n),i=i|2),s.names.set(n,i),e&8&&this.maybeExportDefined(s,n)}else if(e&4)for(let i=this.scopeStack.length-1;i>=0&&(s=this.scopeStack[i],this.checkRedeclarationInScope(s,n,e,t),s.names.set(n,(s.names.get(n)||0)|1),this.maybeExportDefined(s,n),!(s.flags&387));--i);this.parser.inModule&&s.flags&1&&this.undefinedExports.delete(n)}maybeExportDefined(n,e){this.parser.inModule&&n.flags&1&&this.undefinedExports.delete(e)}checkRedeclarationInScope(n,e,t,s){this.isRedeclaredInScope(n,e,t)&&this.parser.raise(b.VarRedeclaration,s,{identifierName:e})}isRedeclaredInScope(n,e,t){if(!(t&1))return!1;if(t&8)return n.names.has(e);let s=n.names.get(e);return t&16?(s&2)>0||!this.treatFunctionsAsVarInScope(n)&&(s&1)>0:(s&2)>0&&!(n.flags&8&&n.firstLexicalName===e)||!this.treatFunctionsAsVarInScope(n)&&(s&4)>0}checkLocalExport(n){let{name:e}=n;this.scopeStack[0].names.has(e)||this.undefinedExports.set(e,n.loc.start)}currentScope(){return this.scopeStack[this.scopeStack.length-1]}currentVarScopeFlags(){for(let n=this.scopeStack.length-1;;n--){let{flags:e}=this.scopeStack[n];if(e&387)return e}}currentThisScopeFlags(){for(let n=this.scopeStack.length-1;;n--){let{flags:e}=this.scopeStack[n];if(e&451&&!(e&4))return e}}},gs=class extends Bt{constructor(...n){super(...n),this.declareFunctions=new Set}},ys=class extends jt{createScope(n){return new gs(n)}declareName(n,e,t){let s=this.currentScope();if(e&2048){this.checkRedeclarationInScope(s,n,e,t),this.maybeExportDefined(s,n),s.declareFunctions.add(n);return}super.declareName(n,e,t)}isRedeclaredInScope(n,e,t){if(super.isRedeclaredInScope(n,e,t))return!0;if(t&2048&&!n.declareFunctions.has(e)){let s=n.names.get(e);return(s&4)>0||(s&2)>0}return!1}checkLocalExport(n){this.scopeStack[0].declareFunctions.has(n.name)||super.checkLocalExport(n)}},vs=class{constructor(){this.sawUnambiguousESM=!1,this.ambiguousScriptDifferentAst=!1}hasPlugin(n){if(typeof n=="string")return this.plugins.has(n);{let[e,t]=n;if(!this.hasPlugin(e))return!1;let s=this.plugins.get(e);for(let i of Object.keys(t))if(s?.[i]!==t[i])return!1;return!0}}getPluginOption(n,e){var t;return(t=this.plugins.get(n))==null?void 0:t[e]}};function fi(r,n){r.trailingComments===void 0?r.trailingComments=n:r.trailingComments.unshift(...n)}function Yo(r,n){r.leadingComments===void 0?r.leadingComments=n:r.leadingComments.unshift(...n)}function Vt(r,n){r.innerComments===void 0?r.innerComments=n:r.innerComments.unshift(...n)}function Ot(r,n,e){let t=null,s=n.length;for(;t===null&&s>0;)t=n[--s];t===null||t.start>e.start?Vt(r,e.comments):fi(t,e.comments)}var xs=class extends vs{addComment(n){this.filename&&(n.loc.filename=this.filename);let{commentsLen:e}=this.state;this.comments.length!=e&&(this.comments.length=e),this.comments.push(n),this.state.commentsLen++}processComment(n){let{commentStack:e}=this.state,t=e.length;if(t===0)return;let s=t-1,i=e[s];i.start===n.end&&(i.leadingNode=n,s--);let{start:a}=n;for(;s>=0;s--){let o=e[s],l=o.end;if(l>a)o.containingNode=n,this.finalizeComment(o),e.splice(s,1);else{l===a&&(o.trailingNode=n);break}}}finalizeComment(n){let{comments:e}=n;if(n.leadingNode!==null||n.trailingNode!==null)n.leadingNode!==null&&fi(n.leadingNode,e),n.trailingNode!==null&&Yo(n.trailingNode,e);else{let{containingNode:t,start:s}=n;if(this.input.charCodeAt(s-1)===44)switch(t.type){case"ObjectExpression":case"ObjectPattern":case"RecordExpression":Ot(t,t.properties,n);break;case"CallExpression":case"OptionalCallExpression":Ot(t,t.arguments,n);break;case"FunctionDeclaration":case"FunctionExpression":case"ArrowFunctionExpression":case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":Ot(t,t.params,n);break;case"ArrayExpression":case"ArrayPattern":case"TupleExpression":Ot(t,t.elements,n);break;case"ExportNamedDeclaration":case"ImportDeclaration":Ot(t,t.specifiers,n);break;default:Vt(t,e)}else Vt(t,e)}}finalizeRemainingComments(){let{commentStack:n}=this.state;for(let e=n.length-1;e>=0;e--)this.finalizeComment(n[e]);this.state.commentStack=[]}resetPreviousNodeTrailingComments(n){let{commentStack:e}=this.state,{length:t}=e;if(t===0)return;let s=e[t-1];s.leadingNode===n&&(s.leadingNode=null)}resetPreviousIdentifierLeadingComments(n){let{commentStack:e}=this.state,{length:t}=e;t!==0&&(e[t-1].trailingNode===n?e[t-1].trailingNode=null:t>=2&&e[t-2].trailingNode===n&&(e[t-2].trailingNode=null))}takeSurroundingComments(n,e,t){let{commentStack:s}=this.state,i=s.length;if(i===0)return;let a=i-1;for(;a>=0;a--){let o=s[a],l=o.end;if(o.start===t)o.leadingNode=n;else if(l===e)o.trailingNode=n;else if(l<e)break}}},mi=/\r\n?|[\n\u2028\u2029]/,dn=new RegExp(mi.source,"g");function Rt(r){switch(r){case 10:case 13:case 8232:case 8233:return!0;default:return!1}}var us=/(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g,bn=/(?:[^\S\n\r\u2028\u2029]|\/\/.*|\/\*.*?\*\/)*/g,Jr=new RegExp("(?=("+bn.source+"))\\1"+/(?=[\n\r\u2028\u2029]|\/\*(?!.*?\*\/)|$)/.source,"y");function Zo(r){switch(r){case 9:case 11:case 12:case 32:case 160:case 5760:case 8192:case 8193:case 8194:case 8195:case 8196:case 8197:case 8198:case 8199:case 8200:case 8201:case 8202:case 8239:case 8287:case 12288:case 65279:return!0;default:return!1}}var Ps=class r{constructor(){this.flags=1024,this.curLine=void 0,this.lineStart=void 0,this.startLoc=void 0,this.endLoc=void 0,this.errors=[],this.potentialArrowAt=-1,this.noArrowAt=[],this.noArrowParamsConversionAt=[],this.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null},this.labels=[],this.commentsLen=0,this.commentStack=[],this.pos=0,this.type=139,this.value=null,this.start=0,this.end=0,this.lastTokEndLoc=null,this.lastTokStartLoc=null,this.context=[V.brace],this.firstInvalidTemplateEscapePos=null,this.strictErrors=new Map,this.tokensLength=0}get strict(){return(this.flags&1)>0}set strict(n){n?this.flags|=1:this.flags&=-2}init({strictMode:n,sourceType:e,startLine:t,startColumn:s}){this.strict=n===!1?!1:n===!0?!0:e==="module",this.curLine=t,this.lineStart=-s,this.startLoc=this.endLoc=new ke(t,s,0)}get maybeInArrowParameters(){return(this.flags&2)>0}set maybeInArrowParameters(n){n?this.flags|=2:this.flags&=-3}get inType(){return(this.flags&4)>0}set inType(n){n?this.flags|=4:this.flags&=-5}get noAnonFunctionType(){return(this.flags&8)>0}set noAnonFunctionType(n){n?this.flags|=8:this.flags&=-9}get hasFlowComment(){return(this.flags&16)>0}set hasFlowComment(n){n?this.flags|=16:this.flags&=-17}get isAmbientContext(){return(this.flags&32)>0}set isAmbientContext(n){n?this.flags|=32:this.flags&=-33}get inAbstractClass(){return(this.flags&64)>0}set inAbstractClass(n){n?this.flags|=64:this.flags&=-65}get inDisallowConditionalTypesContext(){return(this.flags&128)>0}set inDisallowConditionalTypesContext(n){n?this.flags|=128:this.flags&=-129}get soloAwait(){return(this.flags&256)>0}set soloAwait(n){n?this.flags|=256:this.flags&=-257}get inFSharpPipelineDirectBody(){return(this.flags&512)>0}set inFSharpPipelineDirectBody(n){n?this.flags|=512:this.flags&=-513}get canStartJSXElement(){return(this.flags&1024)>0}set canStartJSXElement(n){n?this.flags|=1024:this.flags&=-1025}get containsEsc(){return(this.flags&2048)>0}set containsEsc(n){n?this.flags|=2048:this.flags&=-2049}curPosition(){return new ke(this.curLine,this.pos-this.lineStart,this.pos)}clone(){let n=new r;return n.flags=this.flags,n.curLine=this.curLine,n.lineStart=this.lineStart,n.startLoc=this.startLoc,n.endLoc=this.endLoc,n.errors=this.errors.slice(),n.potentialArrowAt=this.potentialArrowAt,n.noArrowAt=this.noArrowAt.slice(),n.noArrowParamsConversionAt=this.noArrowParamsConversionAt.slice(),n.topicContext=this.topicContext,n.labels=this.labels.slice(),n.commentsLen=this.commentsLen,n.commentStack=this.commentStack.slice(),n.pos=this.pos,n.type=this.type,n.value=this.value,n.start=this.start,n.end=this.end,n.lastTokEndLoc=this.lastTokEndLoc,n.lastTokStartLoc=this.lastTokStartLoc,n.context=this.context.slice(),n.firstInvalidTemplateEscapePos=this.firstInvalidTemplateEscapePos,n.strictErrors=this.strictErrors,n.tokensLength=this.tokensLength,n}},el=function(n){return n>=48&&n<=57},Xr={decBinOct:new Set([46,66,69,79,95,98,101,111]),hex:new Set([46,88,95,120])},hn={bin:r=>r===48||r===49,oct:r=>r>=48&&r<=55,dec:r=>r>=48&&r<=57,hex:r=>r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102};function Qr(r,n,e,t,s,i){let a=e,o=t,l=s,c="",p=null,u=e,{length:h}=n;for(;;){if(e>=h){i.unterminated(a,o,l),c+=n.slice(u,e);break}let m=n.charCodeAt(e);if(tl(r,m,n,e)){c+=n.slice(u,e);break}if(m===92){c+=n.slice(u,e);let d=nl(n,e,t,s,r==="template",i);d.ch===null&&!p?p={pos:e,lineStart:t,curLine:s}:c+=d.ch,{pos:e,lineStart:t,curLine:s}=d,u=e}else m===8232||m===8233?(++e,++s,t=e):m===10||m===13?r==="template"?(c+=n.slice(u,e)+`
4
+ - Did you mean \`import { "${r}" as foo }\`?`,ImportCallArgumentTrailingComma:"Trailing comma is disallowed inside import(...) arguments.",ImportCallArity:({maxArgumentCount:r})=>`\`import()\` requires exactly ${r===1?"one argument":"one or two arguments"}.`,ImportCallNotNewExpression:"Cannot use new with import(...).",ImportCallSpreadArgument:"`...` is not allowed in `import()`.",ImportJSONBindingNotDefault:"A JSON module can only be imported with `default`.",ImportReflectionHasAssertion:"`import module x` cannot have assertions.",ImportReflectionNotBinding:'Only `import module x from "./module"` is valid.',IncompatibleRegExpUVFlags:"The 'u' and 'v' regular expression flags cannot be enabled at the same time.",InvalidBigIntLiteral:"Invalid BigIntLiteral.",InvalidCodePoint:"Code point out of bounds.",InvalidCoverInitializedName:"Invalid shorthand property initializer.",InvalidDecimal:"Invalid decimal.",InvalidDigit:({radix:r})=>`Expected number in radix ${r}.`,InvalidEscapeSequence:"Bad character escape sequence.",InvalidEscapeSequenceTemplate:"Invalid escape sequence in template.",InvalidEscapedReservedWord:({reservedWord:r})=>`Escape sequence in keyword ${r}.`,InvalidIdentifier:({identifierName:r})=>`Invalid identifier ${r}.`,InvalidLhs:({ancestor:r})=>`Invalid left-hand side in ${hn(r)}.`,InvalidLhsBinding:({ancestor:r})=>`Binding invalid left-hand side in ${hn(r)}.`,InvalidLhsOptionalChaining:({ancestor:r})=>`Invalid optional chaining in the left-hand side of ${hn(r)}.`,InvalidNumber:"Invalid number.",InvalidOrMissingExponent:"Floating-point numbers require a valid exponent after the 'e'.",InvalidOrUnexpectedToken:({unexpected:r})=>`Unexpected character '${r}'.`,InvalidParenthesizedAssignment:"Invalid parenthesized assignment pattern.",InvalidPrivateFieldResolution:({identifierName:r})=>`Private name #${r} is not defined.`,InvalidPropertyBindingPattern:"Binding member expression.",InvalidRecordProperty:"Only properties and spread elements are allowed in record definitions.",InvalidRestAssignmentPattern:"Invalid rest operator's argument.",LabelRedeclaration:({labelName:r})=>`Label '${r}' is already declared.`,LetInLexicalBinding:"'let' is disallowed as a lexically bound name.",LineTerminatorBeforeArrow:"No line break is allowed before '=>'.",MalformedRegExpFlags:"Invalid regular expression flag.",MissingClassName:"A class name is required.",MissingEqInAssignment:"Only '=' operator can be used for specifying default value.",MissingSemicolon:"Missing semicolon.",MissingPlugin:({missingPlugin:r})=>`This experimental syntax requires enabling the parser plugin: ${r.map(n=>JSON.stringify(n)).join(", ")}.`,MissingOneOfPlugins:({missingPlugin:r})=>`This experimental syntax requires enabling one of the following parser plugin(s): ${r.map(n=>JSON.stringify(n)).join(", ")}.`,MissingUnicodeEscape:"Expecting Unicode escape sequence \\uXXXX.",MixingCoalesceWithLogical:"Nullish coalescing operator(??) requires parens when mixing with logical operators.",ModuleAttributeDifferentFromType:"The only accepted module attribute is `type`.",ModuleAttributeInvalidValue:"Only string literals are allowed as module attribute values.",ModuleAttributesWithDuplicateKeys:({key:r})=>`Duplicate key "${r}" is not allowed in module attributes.`,ModuleExportNameHasLoneSurrogate:({surrogateCharCode:r})=>`An export name cannot include a lone surrogate, found '\\u${r.toString(16)}'.`,ModuleExportUndefined:({localName:r})=>`Export '${r}' is not defined.`,MultipleDefaultsInSwitch:"Multiple default clauses.",NewlineAfterThrow:"Illegal newline after throw.",NoCatchOrFinally:"Missing catch or finally clause.",NumberIdentifier:"Identifier directly after number.",NumericSeparatorInEscapeSequence:"Numeric separators are not allowed inside unicode escape sequences or hex escape sequences.",ObsoleteAwaitStar:"'await*' has been removed from the async functions proposal. Use Promise.all() instead.",OptionalChainingNoNew:"Constructors in/after an Optional Chain are not allowed.",OptionalChainingNoTemplate:"Tagged Template Literals are not allowed in optionalChain.",OverrideOnConstructor:"'override' modifier cannot appear on a constructor declaration.",ParamDupe:"Argument name clash.",PatternHasAccessor:"Object pattern can't contain getter or setter.",PatternHasMethod:"Object pattern can't contain methods.",PrivateInExpectedIn:({identifierName:r})=>`Private names are only allowed in property accesses (\`obj.#${r}\`) or in \`in\` expressions (\`#${r} in obj\`).`,PrivateNameRedeclaration:({identifierName:r})=>`Duplicate private name #${r}.`,RecordExpressionBarIncorrectEndSyntaxType:"Record expressions ending with '|}' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionBarIncorrectStartSyntaxType:"Record expressions starting with '{|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionHashIncorrectStartSyntaxType:"Record expressions starting with '#{' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",RecordNoProto:"'__proto__' is not allowed in Record expressions.",RestTrailingComma:"Unexpected trailing comma after rest element.",SloppyFunction:"In non-strict mode code, functions can only be declared at top level or inside a block.",SloppyFunctionAnnexB:"In non-strict mode code, functions can only be declared at top level, inside a block, or as the body of an if statement.",SourcePhaseImportRequiresDefault:'Only `import source x from "./module"` is valid.',StaticPrototype:"Classes may not have static property named prototype.",SuperNotAllowed:"`super()` is only valid inside a class constructor of a subclass. Maybe a typo in the method name ('constructor') or not extending another class?",SuperPrivateField:"Private fields can't be accessed on super.",TrailingDecorator:"Decorators must be attached to a class element.",TupleExpressionBarIncorrectEndSyntaxType:"Tuple expressions ending with '|]' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionBarIncorrectStartSyntaxType:"Tuple expressions starting with '[|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionHashIncorrectStartSyntaxType:"Tuple expressions starting with '#[' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",UnexpectedArgumentPlaceholder:"Unexpected argument placeholder.",UnexpectedAwaitAfterPipelineBody:'Unexpected "await" after pipeline body; await must have parentheses in minimal proposal.',UnexpectedDigitAfterHash:"Unexpected digit after hash token.",UnexpectedImportExport:"'import' and 'export' may only appear at the top level.",UnexpectedKeyword:({keyword:r})=>`Unexpected keyword '${r}'.`,UnexpectedLeadingDecorator:"Leading decorators must be attached to a class declaration.",UnexpectedLexicalDeclaration:"Lexical declaration cannot appear in a single-statement context.",UnexpectedNewTarget:"`new.target` can only be used in functions or class properties.",UnexpectedNumericSeparator:"A numeric separator is only allowed between two digits.",UnexpectedPrivateField:"Unexpected private name.",UnexpectedReservedWord:({reservedWord:r})=>`Unexpected reserved word '${r}'.`,UnexpectedSuper:"'super' is only allowed in object methods and classes.",UnexpectedToken:({expected:r,unexpected:n})=>`Unexpected token${n?` '${n}'.`:""}${r?`, expected "${r}"`:""}`,UnexpectedTokenUnaryExponentiation:"Illegal expression. Wrap left hand side or entire exponentiation in parentheses.",UnexpectedUsingDeclaration:"Using declaration cannot appear in the top level when source type is `script`.",UnsupportedBind:"Binding should be performed on object property.",UnsupportedDecoratorExport:"A decorated export must export a class declaration.",UnsupportedDefaultExport:"Only expressions, functions or classes are allowed as the `default` export.",UnsupportedImport:"`import` can only be used in `import()` or `import.meta`.",UnsupportedMetaProperty:({target:r,onlyValidPropertyName:n})=>`The only valid meta property for ${r} is ${r}.${n}.`,UnsupportedParameterDecorator:"Decorators cannot be used to decorate parameters.",UnsupportedPropertyDecorator:"Decorators cannot be used to decorate object literal properties.",UnsupportedSuper:"'super' can only be used with function calls (i.e. super()) or in property accesses (i.e. super.prop or super[prop]).",UnterminatedComment:"Unterminated comment.",UnterminatedRegExp:"Unterminated regular expression.",UnterminatedString:"Unterminated string constant.",UnterminatedTemplate:"Unterminated template.",UsingDeclarationHasBindingPattern:"Using declaration cannot have destructuring patterns.",VarRedeclaration:({identifierName:r})=>`Identifier '${r}' has already been declared.`,YieldBindingIdentifier:"Can not use 'yield' as identifier inside a generator.",YieldInParameter:"Yield expression is not allowed in formal parameters.",ZeroDigitNumericSeparator:"Numeric separator can not be used after leading 0."},To={StrictDelete:"Deleting local variable in strict mode.",StrictEvalArguments:({referenceName:r})=>`Assigning to '${r}' in strict mode.`,StrictEvalArgumentsBinding:({bindingName:r})=>`Binding '${r}' in strict mode.`,StrictFunction:"In strict mode code, functions can only be declared at top level or inside a block.",StrictNumericEscape:"The only valid numeric escape in strict mode is '\\0'.",StrictOctalLiteral:"Legacy octal literals are not allowed in strict mode.",StrictWith:"'with' in strict mode."},wo=new Set(["ArrowFunctionExpression","AssignmentExpression","ConditionalExpression","YieldExpression"]),Co={PipeBodyIsTighter:"Unexpected yield after pipeline body; any yield expression acting as Hack-style pipe body must be parenthesized due to its loose operator precedence.",PipeTopicRequiresHackPipes:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.',PipeTopicUnbound:"Topic reference is unbound; it must be inside a pipe body.",PipeTopicUnconfiguredToken:({token:r})=>`Invalid topic token ${r}. In order to use ${r} as a topic reference, the pipelineOperator plugin must be configured with { "proposal": "hack", "topicToken": "${r}" }.`,PipeTopicUnused:"Hack-style pipe body does not contain a topic reference; Hack-style pipes must use topic at least once.",PipeUnparenthesizedBody:({type:r})=>`Hack-style pipe body cannot be an unparenthesized ${hn({type:r})}; please wrap it in parentheses.`,PipelineBodyNoArrow:'Unexpected arrow "=>" after pipeline body; arrow function in pipeline body must be parenthesized.',PipelineBodySequenceExpression:"Pipeline body may not be a comma-separated sequence expression.",PipelineHeadSequenceExpression:"Pipeline head should not be a comma-separated sequence expression.",PipelineTopicUnused:"Pipeline is in topic style but does not use topic reference.",PrimaryTopicNotAllowed:"Topic reference was used in a lexical context without topic binding.",PrimaryTopicRequiresSmartPipeline:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.'},So=["toMessage"],Io=["message"];function Wr(r,n,e){Object.defineProperty(r,n,{enumerable:!1,configurable:!0,value:e})}function Eo(r){let{toMessage:n}=r,e=ai(r,So);return function t(s,i){let a=new SyntaxError;return Object.assign(a,e,{loc:s,pos:s.index}),"missingPlugin"in i&&Object.assign(a,{missingPlugin:i.missingPlugin}),Wr(a,"clone",function(l={}){var c;let{line:p,column:u,index:f}=(c=l.loc)!=null?c:s;return t(new ke(p,u,f),Object.assign({},i,l.details))}),Wr(a,"details",i),Object.defineProperty(a,"message",{configurable:!0,get(){let o=`${n(i)} (${s.line}:${s.column})`;return this.message=o,o},set(o){Object.defineProperty(this,"message",{value:o,writable:!0})}}),a}}function Re(r,n){if(Array.isArray(r))return t=>Re(t,r[0]);let e={};for(let t of Object.keys(r)){let s=r[t],i=typeof s=="string"?{message:()=>s}:typeof s=="function"?{message:s}:s,{message:a}=i,o=ai(i,Io),l=typeof a=="string"?()=>a:a;e[t]=Eo(Object.assign({code:"BABEL_PARSER_SYNTAX_ERROR",reasonCode:t,toMessage:l},n?{syntaxPlugin:n}:{},o))}return e}var b=Object.assign({},Re(xo),Re(Po),Re(To),Re`pipelineOperator`(Co)),{defineProperty:Ao}=Object,Gr=(r,n)=>Ao(r,n,{enumerable:!1,value:r[n]});function Mt(r){return r.loc.start&&Gr(r.loc.start,"index"),r.loc.end&&Gr(r.loc.end,"index"),r}var ko=r=>class extends r{parse(){let e=Mt(super.parse());return this.options.tokens&&(e.tokens=e.tokens.map(Mt)),e}parseRegExpLiteral({pattern:e,flags:t}){let s=null;try{s=new RegExp(e,t)}catch{}let i=this.estreeParseLiteral(s);return i.regex={pattern:e,flags:t},i}parseBigIntLiteral(e){let t;try{t=BigInt(e)}catch{t=null}let s=this.estreeParseLiteral(t);return s.bigint=String(s.value||e),s}parseDecimalLiteral(e){let s=this.estreeParseLiteral(null);return s.decimal=String(s.value||e),s}estreeParseLiteral(e){return this.parseLiteral(e,"Literal")}parseStringLiteral(e){return this.estreeParseLiteral(e)}parseNumericLiteral(e){return this.estreeParseLiteral(e)}parseNullLiteral(){return this.estreeParseLiteral(null)}parseBooleanLiteral(e){return this.estreeParseLiteral(e)}directiveToStmt(e){let t=e.value;delete e.value,t.type="Literal",t.raw=t.extra.raw,t.value=t.extra.expressionValue;let s=e;return s.type="ExpressionStatement",s.expression=t,s.directive=t.extra.rawValue,delete t.extra,s}initFunction(e,t){super.initFunction(e,t),e.expression=!1}checkDeclaration(e){e!=null&&this.isObjectProperty(e)?this.checkDeclaration(e.value):super.checkDeclaration(e)}getObjectOrClassMethodParams(e){return e.value.params}isValidDirective(e){var t;return e.type==="ExpressionStatement"&&e.expression.type==="Literal"&&typeof e.expression.value=="string"&&!((t=e.expression.extra)!=null&&t.parenthesized)}parseBlockBody(e,t,s,i,a){super.parseBlockBody(e,t,s,i,a);let o=e.directives.map(l=>this.directiveToStmt(l));e.body=o.concat(e.body),delete e.directives}pushClassMethod(e,t,s,i,a,o){this.parseMethod(t,s,i,a,o,"ClassMethod",!0),t.typeParameters&&(t.value.typeParameters=t.typeParameters,delete t.typeParameters),e.body.push(t)}parsePrivateName(){let e=super.parsePrivateName();return this.getPluginOption("estree","classFeatures")?this.convertPrivateNameToPrivateIdentifier(e):e}convertPrivateNameToPrivateIdentifier(e){let t=super.getPrivateNameSV(e);return e=e,delete e.id,e.name=t,e.type="PrivateIdentifier",e}isPrivateName(e){return this.getPluginOption("estree","classFeatures")?e.type==="PrivateIdentifier":super.isPrivateName(e)}getPrivateNameSV(e){return this.getPluginOption("estree","classFeatures")?e.name:super.getPrivateNameSV(e)}parseLiteral(e,t){let s=super.parseLiteral(e,t);return s.raw=s.extra.raw,delete s.extra,s}parseFunctionBody(e,t,s=!1){super.parseFunctionBody(e,t,s),e.expression=e.body.type!=="BlockStatement"}parseMethod(e,t,s,i,a,o,l=!1){let c=this.startNode();return c.kind=e.kind,c=super.parseMethod(c,t,s,i,a,o,l),c.type="FunctionExpression",delete c.kind,e.value=c,o==="ClassPrivateMethod"&&(e.computed=!1),this.finishNode(e,"MethodDefinition")}parseClassProperty(...e){let t=super.parseClassProperty(...e);return this.getPluginOption("estree","classFeatures")&&(t.type="PropertyDefinition"),t}parseClassPrivateProperty(...e){let t=super.parseClassPrivateProperty(...e);return this.getPluginOption("estree","classFeatures")&&(t.type="PropertyDefinition",t.computed=!1),t}parseObjectMethod(e,t,s,i,a){let o=super.parseObjectMethod(e,t,s,i,a);return o&&(o.type="Property",o.kind==="method"&&(o.kind="init"),o.shorthand=!1),o}parseObjectProperty(e,t,s,i){let a=super.parseObjectProperty(e,t,s,i);return a&&(a.kind="init",a.type="Property"),a}isValidLVal(e,t,s){return e==="Property"?"value":super.isValidLVal(e,t,s)}isAssignable(e,t){return e!=null&&this.isObjectProperty(e)?this.isAssignable(e.value,t):super.isAssignable(e,t)}toAssignable(e,t=!1){if(e!=null&&this.isObjectProperty(e)){let{key:s,value:i}=e;this.isPrivateName(s)&&this.classScope.usePrivateName(this.getPrivateNameSV(s),s.loc.start),this.toAssignable(i,t)}else super.toAssignable(e,t)}toAssignableObjectExpressionProp(e,t,s){e.kind==="get"||e.kind==="set"?this.raise(b.PatternHasAccessor,e.key):e.method?this.raise(b.PatternHasMethod,e.key):super.toAssignableObjectExpressionProp(e,t,s)}finishCallExpression(e,t){let s=super.finishCallExpression(e,t);if(s.callee.type==="Import"){if(s.type="ImportExpression",s.source=s.arguments[0],this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions")){var i,a;s.options=(i=s.arguments[1])!=null?i:null,s.attributes=(a=s.arguments[1])!=null?a:null}delete s.arguments,delete s.callee}return s}toReferencedArguments(e){e.type!=="ImportExpression"&&super.toReferencedArguments(e)}parseExport(e,t){let s=this.state.lastTokStartLoc,i=super.parseExport(e,t);switch(i.type){case"ExportAllDeclaration":i.exported=null;break;case"ExportNamedDeclaration":i.specifiers.length===1&&i.specifiers[0].type==="ExportNamespaceSpecifier"&&(i.type="ExportAllDeclaration",i.exported=i.specifiers[0].exported,delete i.specifiers);case"ExportDefaultDeclaration":{var a;let{declaration:o}=i;o?.type==="ClassDeclaration"&&((a=o.decorators)==null?void 0:a.length)>0&&o.start===i.start&&this.resetStartLocation(i,s)}break}return i}parseSubscript(e,t,s,i){let a=super.parseSubscript(e,t,s,i);if(i.optionalChainMember){if((a.type==="OptionalMemberExpression"||a.type==="OptionalCallExpression")&&(a.type=a.type.substring(8)),i.stop){let o=this.startNodeAtNode(a);return o.expression=a,this.finishNode(o,"ChainExpression")}}else(a.type==="MemberExpression"||a.type==="CallExpression")&&(a.optional=!1);return a}isOptionalMemberExpression(e){return e.type==="ChainExpression"?e.expression.type==="MemberExpression":super.isOptionalMemberExpression(e)}hasPropertyAsPrivateName(e){return e.type==="ChainExpression"&&(e=e.expression),super.hasPropertyAsPrivateName(e)}isObjectProperty(e){return e.type==="Property"&&e.kind==="init"&&!e.method}isObjectMethod(e){return e.method||e.kind==="get"||e.kind==="set"}finishNodeAt(e,t,s){return Mt(super.finishNodeAt(e,t,s))}resetStartLocation(e,t){super.resetStartLocation(e,t),Mt(e)}resetEndLocation(e,t=this.state.lastTokEndLoc){super.resetEndLocation(e,t),Mt(e)}},Qe=class{constructor(n,e){this.token=void 0,this.preserveSpace=void 0,this.token=n,this.preserveSpace=!!e}},V={brace:new Qe("{"),j_oTag:new Qe("<tag"),j_cTag:new Qe("</tag"),j_expr:new Qe("<tag>...</tag>",!0)};V.template=new Qe("`",!0);var _=!0,A=!0,ps=!0,Lt=!0,ze=!0,No=!0,yn=class{constructor(n,e={}){this.label=void 0,this.keyword=void 0,this.beforeExpr=void 0,this.startsExpr=void 0,this.rightAssociative=void 0,this.isLoop=void 0,this.isAssign=void 0,this.prefix=void 0,this.postfix=void 0,this.binop=void 0,this.label=n,this.keyword=e.keyword,this.beforeExpr=!!e.beforeExpr,this.startsExpr=!!e.startsExpr,this.rightAssociative=!!e.rightAssociative,this.isLoop=!!e.isLoop,this.isAssign=!!e.isAssign,this.prefix=!!e.prefix,this.postfix=!!e.postfix,this.binop=e.binop!=null?e.binop:null,this.updateContext=null}},Fs=new Map;function R(r,n={}){n.keyword=r;let e=M(r,n);return Fs.set(r,e),e}function se(r,n){return M(r,{beforeExpr:_,binop:n})}var _t=-1,Ue=[],Us=[],_s=[],Rs=[],Bs=[],js=[];function M(r,n={}){var e,t,s,i;return++_t,Us.push(r),_s.push((e=n.binop)!=null?e:-1),Rs.push((t=n.beforeExpr)!=null?t:!1),Bs.push((s=n.startsExpr)!=null?s:!1),js.push((i=n.prefix)!=null?i:!1),Ue.push(new yn(r,n)),_t}function U(r,n={}){var e,t,s,i;return++_t,Fs.set(r,_t),Us.push(r),_s.push((e=n.binop)!=null?e:-1),Rs.push((t=n.beforeExpr)!=null?t:!1),Bs.push((s=n.startsExpr)!=null?s:!1),js.push((i=n.prefix)!=null?i:!1),Ue.push(new yn("name",n)),_t}var Do={bracketL:M("[",{beforeExpr:_,startsExpr:A}),bracketHashL:M("#[",{beforeExpr:_,startsExpr:A}),bracketBarL:M("[|",{beforeExpr:_,startsExpr:A}),bracketR:M("]"),bracketBarR:M("|]"),braceL:M("{",{beforeExpr:_,startsExpr:A}),braceBarL:M("{|",{beforeExpr:_,startsExpr:A}),braceHashL:M("#{",{beforeExpr:_,startsExpr:A}),braceR:M("}"),braceBarR:M("|}"),parenL:M("(",{beforeExpr:_,startsExpr:A}),parenR:M(")"),comma:M(",",{beforeExpr:_}),semi:M(";",{beforeExpr:_}),colon:M(":",{beforeExpr:_}),doubleColon:M("::",{beforeExpr:_}),dot:M("."),question:M("?",{beforeExpr:_}),questionDot:M("?."),arrow:M("=>",{beforeExpr:_}),template:M("template"),ellipsis:M("...",{beforeExpr:_}),backQuote:M("`",{startsExpr:A}),dollarBraceL:M("${",{beforeExpr:_,startsExpr:A}),templateTail:M("...`",{startsExpr:A}),templateNonTail:M("...${",{beforeExpr:_,startsExpr:A}),at:M("@"),hash:M("#",{startsExpr:A}),interpreterDirective:M("#!..."),eq:M("=",{beforeExpr:_,isAssign:Lt}),assign:M("_=",{beforeExpr:_,isAssign:Lt}),slashAssign:M("_=",{beforeExpr:_,isAssign:Lt}),xorAssign:M("_=",{beforeExpr:_,isAssign:Lt}),moduloAssign:M("_=",{beforeExpr:_,isAssign:Lt}),incDec:M("++/--",{prefix:ze,postfix:No,startsExpr:A}),bang:M("!",{beforeExpr:_,prefix:ze,startsExpr:A}),tilde:M("~",{beforeExpr:_,prefix:ze,startsExpr:A}),doubleCaret:M("^^",{startsExpr:A}),doubleAt:M("@@",{startsExpr:A}),pipeline:se("|>",0),nullishCoalescing:se("??",1),logicalOR:se("||",1),logicalAND:se("&&",2),bitwiseOR:se("|",3),bitwiseXOR:se("^",4),bitwiseAND:se("&",5),equality:se("==/!=/===/!==",6),lt:se("</>/<=/>=",7),gt:se("</>/<=/>=",7),relational:se("</>/<=/>=",7),bitShift:se("<</>>/>>>",8),bitShiftL:se("<</>>/>>>",8),bitShiftR:se("<</>>/>>>",8),plusMin:M("+/-",{beforeExpr:_,binop:9,prefix:ze,startsExpr:A}),modulo:M("%",{binop:10,startsExpr:A}),star:M("*",{binop:10}),slash:se("/",10),exponent:M("**",{beforeExpr:_,binop:11,rightAssociative:!0}),_in:R("in",{beforeExpr:_,binop:7}),_instanceof:R("instanceof",{beforeExpr:_,binop:7}),_break:R("break"),_case:R("case",{beforeExpr:_}),_catch:R("catch"),_continue:R("continue"),_debugger:R("debugger"),_default:R("default",{beforeExpr:_}),_else:R("else",{beforeExpr:_}),_finally:R("finally"),_function:R("function",{startsExpr:A}),_if:R("if"),_return:R("return",{beforeExpr:_}),_switch:R("switch"),_throw:R("throw",{beforeExpr:_,prefix:ze,startsExpr:A}),_try:R("try"),_var:R("var"),_const:R("const"),_with:R("with"),_new:R("new",{beforeExpr:_,startsExpr:A}),_this:R("this",{startsExpr:A}),_super:R("super",{startsExpr:A}),_class:R("class",{startsExpr:A}),_extends:R("extends",{beforeExpr:_}),_export:R("export"),_import:R("import",{startsExpr:A}),_null:R("null",{startsExpr:A}),_true:R("true",{startsExpr:A}),_false:R("false",{startsExpr:A}),_typeof:R("typeof",{beforeExpr:_,prefix:ze,startsExpr:A}),_void:R("void",{beforeExpr:_,prefix:ze,startsExpr:A}),_delete:R("delete",{beforeExpr:_,prefix:ze,startsExpr:A}),_do:R("do",{isLoop:ps,beforeExpr:_}),_for:R("for",{isLoop:ps}),_while:R("while",{isLoop:ps}),_as:U("as",{startsExpr:A}),_assert:U("assert",{startsExpr:A}),_async:U("async",{startsExpr:A}),_await:U("await",{startsExpr:A}),_defer:U("defer",{startsExpr:A}),_from:U("from",{startsExpr:A}),_get:U("get",{startsExpr:A}),_let:U("let",{startsExpr:A}),_meta:U("meta",{startsExpr:A}),_of:U("of",{startsExpr:A}),_sent:U("sent",{startsExpr:A}),_set:U("set",{startsExpr:A}),_source:U("source",{startsExpr:A}),_static:U("static",{startsExpr:A}),_using:U("using",{startsExpr:A}),_yield:U("yield",{startsExpr:A}),_asserts:U("asserts",{startsExpr:A}),_checks:U("checks",{startsExpr:A}),_exports:U("exports",{startsExpr:A}),_global:U("global",{startsExpr:A}),_implements:U("implements",{startsExpr:A}),_intrinsic:U("intrinsic",{startsExpr:A}),_infer:U("infer",{startsExpr:A}),_is:U("is",{startsExpr:A}),_mixins:U("mixins",{startsExpr:A}),_proto:U("proto",{startsExpr:A}),_require:U("require",{startsExpr:A}),_satisfies:U("satisfies",{startsExpr:A}),_keyof:U("keyof",{startsExpr:A}),_readonly:U("readonly",{startsExpr:A}),_unique:U("unique",{startsExpr:A}),_abstract:U("abstract",{startsExpr:A}),_declare:U("declare",{startsExpr:A}),_enum:U("enum",{startsExpr:A}),_module:U("module",{startsExpr:A}),_namespace:U("namespace",{startsExpr:A}),_interface:U("interface",{startsExpr:A}),_type:U("type",{startsExpr:A}),_opaque:U("opaque",{startsExpr:A}),name:M("name",{startsExpr:A}),string:M("string",{startsExpr:A}),num:M("num",{startsExpr:A}),bigint:M("bigint",{startsExpr:A}),decimal:M("decimal",{startsExpr:A}),regexp:M("regexp",{startsExpr:A}),privateName:M("#name",{startsExpr:A}),eof:M("eof"),jsxName:M("jsxName"),jsxText:M("jsxText",{beforeExpr:!0}),jsxTagStart:M("jsxTagStart",{startsExpr:!0}),jsxTagEnd:M("jsxTagEnd"),placeholder:M("%%",{startsExpr:!0})};function B(r){return r>=93&&r<=132}function Mo(r){return r<=92}function xe(r){return r>=58&&r<=132}function oi(r){return r>=58&&r<=136}function Lo(r){return Rs[r]}function ms(r){return Bs[r]}function Oo(r){return r>=29&&r<=33}function Kr(r){return r>=129&&r<=131}function Fo(r){return r>=90&&r<=92}function Vs(r){return r>=58&&r<=92}function Uo(r){return r>=39&&r<=59}function _o(r){return r===34}function Ro(r){return js[r]}function Bo(r){return r>=121&&r<=123}function jo(r){return r>=124&&r<=130}function He(r){return Us[r]}function mn(r){return _s[r]}function Vo(r){return r===57}function vn(r){return r>=24&&r<=25}function Fe(r){return Ue[r]}Ue[8].updateContext=r=>{r.pop()},Ue[5].updateContext=Ue[7].updateContext=Ue[23].updateContext=r=>{r.push(V.brace)},Ue[22].updateContext=r=>{r[r.length-1]===V.template?r.pop():r.push(V.template)},Ue[142].updateContext=r=>{r.push(V.j_expr,V.j_oTag)};var zs="\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC",li="\u200C\u200D\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0898-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F\uFF65",zo=new RegExp("["+zs+"]"),$o=new RegExp("["+zs+li+"]");zs=li=null;var ci=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,68,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,349,41,7,1,79,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,159,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,264,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,4026,582,8634,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,689,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,43,8,8936,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,757,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4153,7,221,3,5761,15,7472,16,621,2467,541,1507,4938,6,4191],qo=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,370,1,81,2,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,193,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,84,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,406,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,10,1,2,0,49,6,4,4,14,9,5351,0,7,14,13835,9,87,9,39,4,60,6,26,9,1014,0,2,54,8,3,82,0,12,1,19628,1,4706,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,983,6,110,6,6,9,4759,9,787719,239];function bs(r,n){let e=65536;for(let t=0,s=n.length;t<s;t+=2){if(e+=n[t],e>r)return!1;if(e+=n[t+1],e>=r)return!0}return!1}function _e(r){return r<65?r===36:r<=90?!0:r<97?r===95:r<=122?!0:r<=65535?r>=170&&zo.test(String.fromCharCode(r)):bs(r,ci)}function pt(r){return r<48?r===36:r<58?!0:r<65?!1:r<=90?!0:r<97?r===95:r<=122?!0:r<=65535?r>=170&&$o.test(String.fromCharCode(r)):bs(r,ci)||bs(r,qo)}var $s={keyword:["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete"],strict:["implements","interface","let","package","private","protected","public","static","yield"],strictBind:["eval","arguments"]},Ho=new Set($s.keyword),Wo=new Set($s.strict),Go=new Set($s.strictBind);function pi(r,n){return n&&r==="await"||r==="enum"}function ui(r,n){return pi(r,n)||Wo.has(r)}function di(r){return Go.has(r)}function fi(r,n){return ui(r,n)||di(r)}function Ko(r){return Ho.has(r)}function Jo(r,n,e){return r===64&&n===64&&_e(e)}var Xo=new Set(["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete","implements","interface","let","package","private","protected","public","static","yield","eval","arguments","enum","await"]);function Qo(r){return Xo.has(r)}var Bt=class{constructor(n){this.flags=0,this.names=new Map,this.firstLexicalName="",this.flags=n}},jt=class{constructor(n,e){this.parser=void 0,this.scopeStack=[],this.inModule=void 0,this.undefinedExports=new Map,this.parser=n,this.inModule=e}get inTopLevel(){return(this.currentScope().flags&1)>0}get inFunction(){return(this.currentVarScopeFlags()&2)>0}get allowSuper(){return(this.currentThisScopeFlags()&16)>0}get allowDirectSuper(){return(this.currentThisScopeFlags()&32)>0}get inClass(){return(this.currentThisScopeFlags()&64)>0}get inClassAndNotInNonArrowFunction(){let n=this.currentThisScopeFlags();return(n&64)>0&&(n&2)===0}get inStaticBlock(){for(let n=this.scopeStack.length-1;;n--){let{flags:e}=this.scopeStack[n];if(e&128)return!0;if(e&451)return!1}}get inNonArrowFunction(){return(this.currentThisScopeFlags()&2)>0}get treatFunctionsAsVar(){return this.treatFunctionsAsVarInScope(this.currentScope())}createScope(n){return new Bt(n)}enter(n){this.scopeStack.push(this.createScope(n))}exit(){return this.scopeStack.pop().flags}treatFunctionsAsVarInScope(n){return!!(n.flags&130||!this.parser.inModule&&n.flags&1)}declareName(n,e,t){let s=this.currentScope();if(e&8||e&16){this.checkRedeclarationInScope(s,n,e,t);let i=s.names.get(n)||0;e&16?i=i|4:(s.firstLexicalName||(s.firstLexicalName=n),i=i|2),s.names.set(n,i),e&8&&this.maybeExportDefined(s,n)}else if(e&4)for(let i=this.scopeStack.length-1;i>=0&&(s=this.scopeStack[i],this.checkRedeclarationInScope(s,n,e,t),s.names.set(n,(s.names.get(n)||0)|1),this.maybeExportDefined(s,n),!(s.flags&387));--i);this.parser.inModule&&s.flags&1&&this.undefinedExports.delete(n)}maybeExportDefined(n,e){this.parser.inModule&&n.flags&1&&this.undefinedExports.delete(e)}checkRedeclarationInScope(n,e,t,s){this.isRedeclaredInScope(n,e,t)&&this.parser.raise(b.VarRedeclaration,s,{identifierName:e})}isRedeclaredInScope(n,e,t){if(!(t&1))return!1;if(t&8)return n.names.has(e);let s=n.names.get(e);return t&16?(s&2)>0||!this.treatFunctionsAsVarInScope(n)&&(s&1)>0:(s&2)>0&&!(n.flags&8&&n.firstLexicalName===e)||!this.treatFunctionsAsVarInScope(n)&&(s&4)>0}checkLocalExport(n){let{name:e}=n;this.scopeStack[0].names.has(e)||this.undefinedExports.set(e,n.loc.start)}currentScope(){return this.scopeStack[this.scopeStack.length-1]}currentVarScopeFlags(){for(let n=this.scopeStack.length-1;;n--){let{flags:e}=this.scopeStack[n];if(e&387)return e}}currentThisScopeFlags(){for(let n=this.scopeStack.length-1;;n--){let{flags:e}=this.scopeStack[n];if(e&451&&!(e&4))return e}}},gs=class extends Bt{constructor(...n){super(...n),this.declareFunctions=new Set}},ys=class extends jt{createScope(n){return new gs(n)}declareName(n,e,t){let s=this.currentScope();if(e&2048){this.checkRedeclarationInScope(s,n,e,t),this.maybeExportDefined(s,n),s.declareFunctions.add(n);return}super.declareName(n,e,t)}isRedeclaredInScope(n,e,t){if(super.isRedeclaredInScope(n,e,t))return!0;if(t&2048&&!n.declareFunctions.has(e)){let s=n.names.get(e);return(s&4)>0||(s&2)>0}return!1}checkLocalExport(n){this.scopeStack[0].declareFunctions.has(n.name)||super.checkLocalExport(n)}},vs=class{constructor(){this.sawUnambiguousESM=!1,this.ambiguousScriptDifferentAst=!1}hasPlugin(n){if(typeof n=="string")return this.plugins.has(n);{let[e,t]=n;if(!this.hasPlugin(e))return!1;let s=this.plugins.get(e);for(let i of Object.keys(t))if(s?.[i]!==t[i])return!1;return!0}}getPluginOption(n,e){var t;return(t=this.plugins.get(n))==null?void 0:t[e]}};function hi(r,n){r.trailingComments===void 0?r.trailingComments=n:r.trailingComments.unshift(...n)}function Yo(r,n){r.leadingComments===void 0?r.leadingComments=n:r.leadingComments.unshift(...n)}function Vt(r,n){r.innerComments===void 0?r.innerComments=n:r.innerComments.unshift(...n)}function Ot(r,n,e){let t=null,s=n.length;for(;t===null&&s>0;)t=n[--s];t===null||t.start>e.start?Vt(r,e.comments):hi(t,e.comments)}var xs=class extends vs{addComment(n){this.filename&&(n.loc.filename=this.filename);let{commentsLen:e}=this.state;this.comments.length!=e&&(this.comments.length=e),this.comments.push(n),this.state.commentsLen++}processComment(n){let{commentStack:e}=this.state,t=e.length;if(t===0)return;let s=t-1,i=e[s];i.start===n.end&&(i.leadingNode=n,s--);let{start:a}=n;for(;s>=0;s--){let o=e[s],l=o.end;if(l>a)o.containingNode=n,this.finalizeComment(o),e.splice(s,1);else{l===a&&(o.trailingNode=n);break}}}finalizeComment(n){let{comments:e}=n;if(n.leadingNode!==null||n.trailingNode!==null)n.leadingNode!==null&&hi(n.leadingNode,e),n.trailingNode!==null&&Yo(n.trailingNode,e);else{let{containingNode:t,start:s}=n;if(this.input.charCodeAt(s-1)===44)switch(t.type){case"ObjectExpression":case"ObjectPattern":case"RecordExpression":Ot(t,t.properties,n);break;case"CallExpression":case"OptionalCallExpression":Ot(t,t.arguments,n);break;case"FunctionDeclaration":case"FunctionExpression":case"ArrowFunctionExpression":case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":Ot(t,t.params,n);break;case"ArrayExpression":case"ArrayPattern":case"TupleExpression":Ot(t,t.elements,n);break;case"ExportNamedDeclaration":case"ImportDeclaration":Ot(t,t.specifiers,n);break;default:Vt(t,e)}else Vt(t,e)}}finalizeRemainingComments(){let{commentStack:n}=this.state;for(let e=n.length-1;e>=0;e--)this.finalizeComment(n[e]);this.state.commentStack=[]}resetPreviousNodeTrailingComments(n){let{commentStack:e}=this.state,{length:t}=e;if(t===0)return;let s=e[t-1];s.leadingNode===n&&(s.leadingNode=null)}resetPreviousIdentifierLeadingComments(n){let{commentStack:e}=this.state,{length:t}=e;t!==0&&(e[t-1].trailingNode===n?e[t-1].trailingNode=null:t>=2&&e[t-2].trailingNode===n&&(e[t-2].trailingNode=null))}takeSurroundingComments(n,e,t){let{commentStack:s}=this.state,i=s.length;if(i===0)return;let a=i-1;for(;a>=0;a--){let o=s[a],l=o.end;if(o.start===t)o.leadingNode=n;else if(l===e)o.trailingNode=n;else if(l<e)break}}},mi=/\r\n?|[\n\u2028\u2029]/,dn=new RegExp(mi.source,"g");function Rt(r){switch(r){case 10:case 13:case 8232:case 8233:return!0;default:return!1}}var us=/(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g,bn=/(?:[^\S\n\r\u2028\u2029]|\/\/.*|\/\*.*?\*\/)*/g,Jr=new RegExp("(?=("+bn.source+"))\\1"+/(?=[\n\r\u2028\u2029]|\/\*(?!.*?\*\/)|$)/.source,"y");function Zo(r){switch(r){case 9:case 11:case 12:case 32:case 160:case 5760:case 8192:case 8193:case 8194:case 8195:case 8196:case 8197:case 8198:case 8199:case 8200:case 8201:case 8202:case 8239:case 8287:case 12288:case 65279:return!0;default:return!1}}var Ps=class r{constructor(){this.flags=1024,this.curLine=void 0,this.lineStart=void 0,this.startLoc=void 0,this.endLoc=void 0,this.errors=[],this.potentialArrowAt=-1,this.noArrowAt=[],this.noArrowParamsConversionAt=[],this.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null},this.labels=[],this.commentsLen=0,this.commentStack=[],this.pos=0,this.type=139,this.value=null,this.start=0,this.end=0,this.lastTokEndLoc=null,this.lastTokStartLoc=null,this.context=[V.brace],this.firstInvalidTemplateEscapePos=null,this.strictErrors=new Map,this.tokensLength=0}get strict(){return(this.flags&1)>0}set strict(n){n?this.flags|=1:this.flags&=-2}init({strictMode:n,sourceType:e,startLine:t,startColumn:s}){this.strict=n===!1?!1:n===!0?!0:e==="module",this.curLine=t,this.lineStart=-s,this.startLoc=this.endLoc=new ke(t,s,0)}get maybeInArrowParameters(){return(this.flags&2)>0}set maybeInArrowParameters(n){n?this.flags|=2:this.flags&=-3}get inType(){return(this.flags&4)>0}set inType(n){n?this.flags|=4:this.flags&=-5}get noAnonFunctionType(){return(this.flags&8)>0}set noAnonFunctionType(n){n?this.flags|=8:this.flags&=-9}get hasFlowComment(){return(this.flags&16)>0}set hasFlowComment(n){n?this.flags|=16:this.flags&=-17}get isAmbientContext(){return(this.flags&32)>0}set isAmbientContext(n){n?this.flags|=32:this.flags&=-33}get inAbstractClass(){return(this.flags&64)>0}set inAbstractClass(n){n?this.flags|=64:this.flags&=-65}get inDisallowConditionalTypesContext(){return(this.flags&128)>0}set inDisallowConditionalTypesContext(n){n?this.flags|=128:this.flags&=-129}get soloAwait(){return(this.flags&256)>0}set soloAwait(n){n?this.flags|=256:this.flags&=-257}get inFSharpPipelineDirectBody(){return(this.flags&512)>0}set inFSharpPipelineDirectBody(n){n?this.flags|=512:this.flags&=-513}get canStartJSXElement(){return(this.flags&1024)>0}set canStartJSXElement(n){n?this.flags|=1024:this.flags&=-1025}get containsEsc(){return(this.flags&2048)>0}set containsEsc(n){n?this.flags|=2048:this.flags&=-2049}curPosition(){return new ke(this.curLine,this.pos-this.lineStart,this.pos)}clone(){let n=new r;return n.flags=this.flags,n.curLine=this.curLine,n.lineStart=this.lineStart,n.startLoc=this.startLoc,n.endLoc=this.endLoc,n.errors=this.errors.slice(),n.potentialArrowAt=this.potentialArrowAt,n.noArrowAt=this.noArrowAt.slice(),n.noArrowParamsConversionAt=this.noArrowParamsConversionAt.slice(),n.topicContext=this.topicContext,n.labels=this.labels.slice(),n.commentsLen=this.commentsLen,n.commentStack=this.commentStack.slice(),n.pos=this.pos,n.type=this.type,n.value=this.value,n.start=this.start,n.end=this.end,n.lastTokEndLoc=this.lastTokEndLoc,n.lastTokStartLoc=this.lastTokStartLoc,n.context=this.context.slice(),n.firstInvalidTemplateEscapePos=this.firstInvalidTemplateEscapePos,n.strictErrors=this.strictErrors,n.tokensLength=this.tokensLength,n}},el=function(n){return n>=48&&n<=57},Xr={decBinOct:new Set([46,66,69,79,95,98,101,111]),hex:new Set([46,88,95,120])},fn={bin:r=>r===48||r===49,oct:r=>r>=48&&r<=55,dec:r=>r>=48&&r<=57,hex:r=>r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102};function Qr(r,n,e,t,s,i){let a=e,o=t,l=s,c="",p=null,u=e,{length:f}=n;for(;;){if(e>=f){i.unterminated(a,o,l),c+=n.slice(u,e);break}let m=n.charCodeAt(e);if(tl(r,m,n,e)){c+=n.slice(u,e);break}if(m===92){c+=n.slice(u,e);let d=nl(n,e,t,s,r==="template",i);d.ch===null&&!p?p={pos:e,lineStart:t,curLine:s}:c+=d.ch,{pos:e,lineStart:t,curLine:s}=d,u=e}else m===8232||m===8233?(++e,++s,t=e):m===10||m===13?r==="template"?(c+=n.slice(u,e)+`
5
5
  `,++e,m===13&&n.charCodeAt(e)===10&&++e,++s,u=t=e):i.unterminated(a,o,l):++e}return{pos:e,str:c,firstInvalidLoc:p,lineStart:t,curLine:s,containsInvalid:!!p}}function tl(r,n,e,t){return r==="template"?n===96||n===36&&e.charCodeAt(t+1)===123:n===(r==="double"?34:39)}function nl(r,n,e,t,s,i){let a=!s;n++;let o=c=>({pos:n,ch:c,lineStart:e,curLine:t}),l=r.charCodeAt(n++);switch(l){case 110:return o(`
6
- `);case 114:return o("\r");case 120:{let c;return{code:c,pos:n}=Ts(r,n,e,t,2,!1,a,i),o(c===null?null:String.fromCharCode(c))}case 117:{let c;return{code:c,pos:n}=gi(r,n,e,t,a,i),o(c===null?null:String.fromCodePoint(c))}case 116:return o(" ");case 98:return o("\b");case 118:return o("\v");case 102:return o("\f");case 13:r.charCodeAt(n)===10&&++n;case 10:e=n,++t;case 8232:case 8233:return o("");case 56:case 57:if(s)return o(null);i.strictNumericEscape(n-1,e,t);default:if(l>=48&&l<=55){let c=n-1,u=r.slice(c,n+2).match(/^[0-7]+/)[0],h=parseInt(u,8);h>255&&(u=u.slice(0,-1),h=parseInt(u,8)),n+=u.length-1;let m=r.charCodeAt(n);if(u!=="0"||m===56||m===57){if(s)return o(null);i.strictNumericEscape(c,e,t)}return o(String.fromCharCode(h))}return o(String.fromCharCode(l))}}function Ts(r,n,e,t,s,i,a,o){let l=n,c;return{n:c,pos:n}=bi(r,n,e,t,16,s,i,!1,o,!a),c===null&&(a?o.invalidEscapeSequence(l,e,t):n=l-1),{code:c,pos:n}}function bi(r,n,e,t,s,i,a,o,l,c){let p=n,u=s===16?Xr.hex:Xr.decBinOct,h=s===16?hn.hex:s===10?hn.dec:s===8?hn.oct:hn.bin,m=!1,d=0;for(let g=0,f=i??1/0;g<f;++g){let v=r.charCodeAt(n),w;if(v===95&&o!=="bail"){let E=r.charCodeAt(n-1),x=r.charCodeAt(n+1);if(o){if(Number.isNaN(x)||!h(x)||u.has(E)||u.has(x)){if(c)return{n:null,pos:n};l.unexpectedNumericSeparator(n,e,t)}}else{if(c)return{n:null,pos:n};l.numericSeparatorInEscapeSequence(n,e,t)}++n;continue}if(v>=97?w=v-97+10:v>=65?w=v-65+10:el(v)?w=v-48:w=1/0,w>=s){if(w<=9&&c)return{n:null,pos:n};if(w<=9&&l.invalidDigit(n,e,t,s))w=0;else if(a)w=0,m=!0;else break}++n,d=d*s+w}return n===p||i!=null&&n-p!==i||m?{n:null,pos:n}:{n:d,pos:n}}function gi(r,n,e,t,s,i){let a=r.charCodeAt(n),o;if(a===123){if(++n,{code:o,pos:n}=Ts(r,n,e,t,r.indexOf("}",n)-n,!0,s,i),++n,o!==null&&o>1114111)if(s)i.invalidCodePoint(n,e,t);else return{code:null,pos:n}}else({code:o,pos:n}=Ts(r,n,e,t,4,!1,s,i));return{code:o,pos:n}}function Ft(r,n,e){return new ke(e,r-n,r)}var sl=new Set([103,109,115,105,121,117,100,118]),Ae=class{constructor(n){this.type=n.type,this.value=n.value,this.start=n.start,this.end=n.end,this.loc=new dt(n.startLoc,n.endLoc)}},ws=class extends xs{constructor(n,e){super(),this.isLookahead=void 0,this.tokens=[],this.errorHandlers_readInt={invalidDigit:(t,s,i,a)=>this.options.errorRecovery?(this.raise(b.InvalidDigit,Ft(t,s,i),{radix:a}),!0):!1,numericSeparatorInEscapeSequence:this.errorBuilder(b.NumericSeparatorInEscapeSequence),unexpectedNumericSeparator:this.errorBuilder(b.UnexpectedNumericSeparator)},this.errorHandlers_readCodePoint=Object.assign({},this.errorHandlers_readInt,{invalidEscapeSequence:this.errorBuilder(b.InvalidEscapeSequence),invalidCodePoint:this.errorBuilder(b.InvalidCodePoint)}),this.errorHandlers_readStringContents_string=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:(t,s,i)=>{this.recordStrictModeErrors(b.StrictNumericEscape,Ft(t,s,i))},unterminated:(t,s,i)=>{throw this.raise(b.UnterminatedString,Ft(t-1,s,i))}}),this.errorHandlers_readStringContents_template=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:this.errorBuilder(b.StrictNumericEscape),unterminated:(t,s,i)=>{throw this.raise(b.UnterminatedTemplate,Ft(t,s,i))}}),this.state=new Ps,this.state.init(n),this.input=e,this.length=e.length,this.comments=[],this.isLookahead=!1}pushToken(n){this.tokens.length=this.state.tokensLength,this.tokens.push(n),++this.state.tokensLength}next(){this.checkKeywordEscapes(),this.options.tokens&&this.pushToken(new Ae(this.state)),this.state.lastTokEndLoc=this.state.endLoc,this.state.lastTokStartLoc=this.state.startLoc,this.nextToken()}eat(n){return this.match(n)?(this.next(),!0):!1}match(n){return this.state.type===n}createLookaheadState(n){return{pos:n.pos,value:null,type:n.type,start:n.start,end:n.end,context:[this.curContext()],inType:n.inType,startLoc:n.startLoc,lastTokEndLoc:n.lastTokEndLoc,curLine:n.curLine,lineStart:n.lineStart,curPosition:n.curPosition}}lookahead(){let n=this.state;this.state=this.createLookaheadState(n),this.isLookahead=!0,this.nextToken(),this.isLookahead=!1;let e=this.state;return this.state=n,e}nextTokenStart(){return this.nextTokenStartSince(this.state.pos)}nextTokenStartSince(n){return us.lastIndex=n,us.test(this.input)?us.lastIndex:n}lookaheadCharCode(){return this.input.charCodeAt(this.nextTokenStart())}nextTokenInLineStart(){return this.nextTokenInLineStartSince(this.state.pos)}nextTokenInLineStartSince(n){return bn.lastIndex=n,bn.test(this.input)?bn.lastIndex:n}lookaheadInLineCharCode(){return this.input.charCodeAt(this.nextTokenInLineStart())}codePointAtPos(n){let e=this.input.charCodeAt(n);if((e&64512)===55296&&++n<this.input.length){let t=this.input.charCodeAt(n);(t&64512)===56320&&(e=65536+((e&1023)<<10)+(t&1023))}return e}setStrict(n){this.state.strict=n,n&&(this.state.strictErrors.forEach(([e,t])=>this.raise(e,t)),this.state.strictErrors.clear())}curContext(){return this.state.context[this.state.context.length-1]}nextToken(){if(this.skipSpace(),this.state.start=this.state.pos,this.isLookahead||(this.state.startLoc=this.state.curPosition()),this.state.pos>=this.length){this.finishToken(139);return}this.getTokenFromCode(this.codePointAtPos(this.state.pos))}skipBlockComment(n){let e;this.isLookahead||(e=this.state.curPosition());let t=this.state.pos,s=this.input.indexOf(n,t+2);if(s===-1)throw this.raise(b.UnterminatedComment,this.state.curPosition());for(this.state.pos=s+n.length,dn.lastIndex=t+2;dn.test(this.input)&&dn.lastIndex<=s;)++this.state.curLine,this.state.lineStart=dn.lastIndex;if(this.isLookahead)return;let i={type:"CommentBlock",value:this.input.slice(t+2,s),start:t,end:s+n.length,loc:new dt(e,this.state.curPosition())};return this.options.tokens&&this.pushToken(i),i}skipLineComment(n){let e=this.state.pos,t;this.isLookahead||(t=this.state.curPosition());let s=this.input.charCodeAt(this.state.pos+=n);if(this.state.pos<this.length)for(;!Rt(s)&&++this.state.pos<this.length;)s=this.input.charCodeAt(this.state.pos);if(this.isLookahead)return;let i=this.state.pos,o={type:"CommentLine",value:this.input.slice(e+n,i),start:e,end:i,loc:new dt(t,this.state.curPosition())};return this.options.tokens&&this.pushToken(o),o}skipSpace(){let n=this.state.pos,e=[];e:for(;this.state.pos<this.length;){let t=this.input.charCodeAt(this.state.pos);switch(t){case 32:case 160:case 9:++this.state.pos;break;case 13:this.input.charCodeAt(this.state.pos+1)===10&&++this.state.pos;case 10:case 8232:case 8233:++this.state.pos,++this.state.curLine,this.state.lineStart=this.state.pos;break;case 47:switch(this.input.charCodeAt(this.state.pos+1)){case 42:{let s=this.skipBlockComment("*/");s!==void 0&&(this.addComment(s),this.options.attachComment&&e.push(s));break}case 47:{let s=this.skipLineComment(2);s!==void 0&&(this.addComment(s),this.options.attachComment&&e.push(s));break}default:break e}break;default:if(Zo(t))++this.state.pos;else if(t===45&&!this.inModule&&this.options.annexB){let s=this.state.pos;if(this.input.charCodeAt(s+1)===45&&this.input.charCodeAt(s+2)===62&&(n===0||this.state.lineStart>n)){let i=this.skipLineComment(3);i!==void 0&&(this.addComment(i),this.options.attachComment&&e.push(i))}else break e}else if(t===60&&!this.inModule&&this.options.annexB){let s=this.state.pos;if(this.input.charCodeAt(s+1)===33&&this.input.charCodeAt(s+2)===45&&this.input.charCodeAt(s+3)===45){let i=this.skipLineComment(4);i!==void 0&&(this.addComment(i),this.options.attachComment&&e.push(i))}else break e}else break e}}if(e.length>0){let t=this.state.pos,s={start:n,end:t,comments:e,leadingNode:null,trailingNode:null,containingNode:null};this.state.commentStack.push(s)}}finishToken(n,e){this.state.end=this.state.pos,this.state.endLoc=this.state.curPosition();let t=this.state.type;this.state.type=n,this.state.value=e,this.isLookahead||this.updateContext(t)}replaceToken(n){this.state.type=n,this.updateContext()}readToken_numberSign(){if(this.state.pos===0&&this.readToken_interpreter())return;let n=this.state.pos+1,e=this.codePointAtPos(n);if(e>=48&&e<=57)throw this.raise(b.UnexpectedDigitAfterHash,this.state.curPosition());if(e===123||e===91&&this.hasPlugin("recordAndTuple")){if(this.expectPlugin("recordAndTuple"),this.getPluginOption("recordAndTuple","syntaxType")==="bar")throw this.raise(e===123?b.RecordExpressionHashIncorrectStartSyntaxType:b.TupleExpressionHashIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,e===123?this.finishToken(7):this.finishToken(1)}else _e(e)?(++this.state.pos,this.finishToken(138,this.readWord1(e))):e===92?(++this.state.pos,this.finishToken(138,this.readWord1())):this.finishOp(27,1)}readToken_dot(){let n=this.input.charCodeAt(this.state.pos+1);if(n>=48&&n<=57){this.readNumber(!0);return}n===46&&this.input.charCodeAt(this.state.pos+2)===46?(this.state.pos+=3,this.finishToken(21)):(++this.state.pos,this.finishToken(16))}readToken_slash(){this.input.charCodeAt(this.state.pos+1)===61?this.finishOp(31,2):this.finishOp(56,1)}readToken_interpreter(){if(this.state.pos!==0||this.length<2)return!1;let n=this.input.charCodeAt(this.state.pos+1);if(n!==33)return!1;let e=this.state.pos;for(this.state.pos+=1;!Rt(n)&&++this.state.pos<this.length;)n=this.input.charCodeAt(this.state.pos);let t=this.input.slice(e+2,this.state.pos);return this.finishToken(28,t),!0}readToken_mult_modulo(n){let e=n===42?55:54,t=1,s=this.input.charCodeAt(this.state.pos+1);n===42&&s===42&&(t++,s=this.input.charCodeAt(this.state.pos+2),e=57),s===61&&!this.state.inType&&(t++,e=n===37?33:30),this.finishOp(e,t)}readToken_pipe_amp(n){let e=this.input.charCodeAt(this.state.pos+1);if(e===n){this.input.charCodeAt(this.state.pos+2)===61?this.finishOp(30,3):this.finishOp(n===124?41:42,2);return}if(n===124){if(e===62){this.finishOp(39,2);return}if(this.hasPlugin("recordAndTuple")&&e===125){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(b.RecordExpressionBarIncorrectEndSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(9);return}if(this.hasPlugin("recordAndTuple")&&e===93){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(b.TupleExpressionBarIncorrectEndSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(4);return}}if(e===61){this.finishOp(30,2);return}this.finishOp(n===124?43:45,1)}readToken_caret(){let n=this.input.charCodeAt(this.state.pos+1);n===61&&!this.state.inType?this.finishOp(32,2):n===94&&this.hasPlugin(["pipelineOperator",{proposal:"hack",topicToken:"^^"}])?(this.finishOp(37,2),this.input.codePointAt(this.state.pos)===94&&this.unexpected()):this.finishOp(44,1)}readToken_atSign(){this.input.charCodeAt(this.state.pos+1)===64&&this.hasPlugin(["pipelineOperator",{proposal:"hack",topicToken:"@@"}])?this.finishOp(38,2):this.finishOp(26,1)}readToken_plus_min(n){let e=this.input.charCodeAt(this.state.pos+1);if(e===n){this.finishOp(34,2);return}e===61?this.finishOp(30,2):this.finishOp(53,1)}readToken_lt(){let{pos:n}=this.state,e=this.input.charCodeAt(n+1);if(e===60){if(this.input.charCodeAt(n+2)===61){this.finishOp(30,3);return}this.finishOp(51,2);return}if(e===61){this.finishOp(49,2);return}this.finishOp(47,1)}readToken_gt(){let{pos:n}=this.state,e=this.input.charCodeAt(n+1);if(e===62){let t=this.input.charCodeAt(n+2)===62?3:2;if(this.input.charCodeAt(n+t)===61){this.finishOp(30,t+1);return}this.finishOp(52,t);return}if(e===61){this.finishOp(49,2);return}this.finishOp(48,1)}readToken_eq_excl(n){let e=this.input.charCodeAt(this.state.pos+1);if(e===61){this.finishOp(46,this.input.charCodeAt(this.state.pos+2)===61?3:2);return}if(n===61&&e===62){this.state.pos+=2,this.finishToken(19);return}this.finishOp(n===61?29:35,1)}readToken_question(){let n=this.input.charCodeAt(this.state.pos+1),e=this.input.charCodeAt(this.state.pos+2);n===63?e===61?this.finishOp(30,3):this.finishOp(40,2):n===46&&!(e>=48&&e<=57)?(this.state.pos+=2,this.finishToken(18)):(++this.state.pos,this.finishToken(17))}getTokenFromCode(n){switch(n){case 46:this.readToken_dot();return;case 40:++this.state.pos,this.finishToken(10);return;case 41:++this.state.pos,this.finishToken(11);return;case 59:++this.state.pos,this.finishToken(13);return;case 44:++this.state.pos,this.finishToken(12);return;case 91:if(this.hasPlugin("recordAndTuple")&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(b.TupleExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(2)}else++this.state.pos,this.finishToken(0);return;case 93:++this.state.pos,this.finishToken(3);return;case 123:if(this.hasPlugin("recordAndTuple")&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(b.RecordExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(6)}else++this.state.pos,this.finishToken(5);return;case 125:++this.state.pos,this.finishToken(8);return;case 58:this.hasPlugin("functionBind")&&this.input.charCodeAt(this.state.pos+1)===58?this.finishOp(15,2):(++this.state.pos,this.finishToken(14));return;case 63:this.readToken_question();return;case 96:this.readTemplateToken();return;case 48:{let e=this.input.charCodeAt(this.state.pos+1);if(e===120||e===88){this.readRadixNumber(16);return}if(e===111||e===79){this.readRadixNumber(8);return}if(e===98||e===66){this.readRadixNumber(2);return}}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:this.readNumber(!1);return;case 34:case 39:this.readString(n);return;case 47:this.readToken_slash();return;case 37:case 42:this.readToken_mult_modulo(n);return;case 124:case 38:this.readToken_pipe_amp(n);return;case 94:this.readToken_caret();return;case 43:case 45:this.readToken_plus_min(n);return;case 60:this.readToken_lt();return;case 62:this.readToken_gt();return;case 61:case 33:this.readToken_eq_excl(n);return;case 126:this.finishOp(36,1);return;case 64:this.readToken_atSign();return;case 35:this.readToken_numberSign();return;case 92:this.readWord();return;default:if(_e(n)){this.readWord(n);return}}throw this.raise(b.InvalidOrUnexpectedToken,this.state.curPosition(),{unexpected:String.fromCodePoint(n)})}finishOp(n,e){let t=this.input.slice(this.state.pos,this.state.pos+e);this.state.pos+=e,this.finishToken(n,t)}readRegexp(){let n=this.state.startLoc,e=this.state.start+1,t,s,{pos:i}=this.state;for(;;++i){if(i>=this.length)throw this.raise(b.UnterminatedRegExp,re(n,1));let c=this.input.charCodeAt(i);if(Rt(c))throw this.raise(b.UnterminatedRegExp,re(n,1));if(t)t=!1;else{if(c===91)s=!0;else if(c===93&&s)s=!1;else if(c===47&&!s)break;t=c===92}}let a=this.input.slice(e,i);++i;let o="",l=()=>re(n,i+2-e);for(;i<this.length;){let c=this.codePointAtPos(i),p=String.fromCharCode(c);if(sl.has(c))c===118?o.includes("u")&&this.raise(b.IncompatibleRegExpUVFlags,l()):c===117&&o.includes("v")&&this.raise(b.IncompatibleRegExpUVFlags,l()),o.includes(p)&&this.raise(b.DuplicateRegExpFlags,l());else if(pt(c)||c===92)this.raise(b.MalformedRegExpFlags,l());else break;++i,o+=p}this.state.pos=i,this.finishToken(137,{pattern:a,flags:o})}readInt(n,e,t=!1,s=!0){let{n:i,pos:a}=bi(this.input,this.state.pos,this.state.lineStart,this.state.curLine,n,e,t,s,this.errorHandlers_readInt,!1);return this.state.pos=a,i}readRadixNumber(n){let e=this.state.curPosition(),t=!1;this.state.pos+=2;let s=this.readInt(n);s==null&&this.raise(b.InvalidDigit,re(e,2),{radix:n});let i=this.input.charCodeAt(this.state.pos);if(i===110)++this.state.pos,t=!0;else if(i===109)throw this.raise(b.InvalidDecimal,e);if(_e(this.codePointAtPos(this.state.pos)))throw this.raise(b.NumberIdentifier,this.state.curPosition());if(t){let a=this.input.slice(e.index,this.state.pos).replace(/[_n]/g,"");this.finishToken(135,a);return}this.finishToken(134,s)}readNumber(n){let e=this.state.pos,t=this.state.curPosition(),s=!1,i=!1,a=!1,o=!1,l=!1;!n&&this.readInt(10)===null&&this.raise(b.InvalidNumber,this.state.curPosition());let c=this.state.pos-e>=2&&this.input.charCodeAt(e)===48;if(c){let m=this.input.slice(e,this.state.pos);if(this.recordStrictModeErrors(b.StrictOctalLiteral,t),!this.state.strict){let d=m.indexOf("_");d>0&&this.raise(b.ZeroDigitNumericSeparator,re(t,d))}l=c&&!/[89]/.test(m)}let p=this.input.charCodeAt(this.state.pos);if(p===46&&!l&&(++this.state.pos,this.readInt(10),s=!0,p=this.input.charCodeAt(this.state.pos)),(p===69||p===101)&&!l&&(p=this.input.charCodeAt(++this.state.pos),(p===43||p===45)&&++this.state.pos,this.readInt(10)===null&&this.raise(b.InvalidOrMissingExponent,t),s=!0,o=!0,p=this.input.charCodeAt(this.state.pos)),p===110&&((s||c)&&this.raise(b.InvalidBigIntLiteral,t),++this.state.pos,i=!0),p===109&&(this.expectPlugin("decimal",this.state.curPosition()),(o||c)&&this.raise(b.InvalidDecimal,t),++this.state.pos,a=!0),_e(this.codePointAtPos(this.state.pos)))throw this.raise(b.NumberIdentifier,this.state.curPosition());let u=this.input.slice(e,this.state.pos).replace(/[_mn]/g,"");if(i){this.finishToken(135,u);return}if(a){this.finishToken(136,u);return}let h=l?parseInt(u,8):parseFloat(u);this.finishToken(134,h)}readCodePoint(n){let{code:e,pos:t}=gi(this.input,this.state.pos,this.state.lineStart,this.state.curLine,n,this.errorHandlers_readCodePoint);return this.state.pos=t,e}readString(n){let{str:e,pos:t,curLine:s,lineStart:i}=Qr(n===34?"double":"single",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_string);this.state.pos=t+1,this.state.lineStart=i,this.state.curLine=s,this.finishToken(133,e)}readTemplateContinuation(){this.match(8)||this.unexpected(null,8),this.state.pos--,this.readTemplateToken()}readTemplateToken(){let n=this.input[this.state.pos],{str:e,firstInvalidLoc:t,pos:s,curLine:i,lineStart:a}=Qr("template",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_template);this.state.pos=s+1,this.state.lineStart=a,this.state.curLine=i,t&&(this.state.firstInvalidTemplateEscapePos=new ke(t.curLine,t.pos-t.lineStart,t.pos)),this.input.codePointAt(s)===96?this.finishToken(24,t?null:n+e+"`"):(this.state.pos++,this.finishToken(25,t?null:n+e+"${"))}recordStrictModeErrors(n,e){let t=e.index;this.state.strict&&!this.state.strictErrors.has(t)?this.raise(n,e):this.state.strictErrors.set(t,[n,e])}readWord1(n){this.state.containsEsc=!1;let e="",t=this.state.pos,s=this.state.pos;for(n!==void 0&&(this.state.pos+=n<=65535?1:2);this.state.pos<this.length;){let i=this.codePointAtPos(this.state.pos);if(pt(i))this.state.pos+=i<=65535?1:2;else if(i===92){this.state.containsEsc=!0,e+=this.input.slice(s,this.state.pos);let a=this.state.curPosition(),o=this.state.pos===t?_e:pt;if(this.input.charCodeAt(++this.state.pos)!==117){this.raise(b.MissingUnicodeEscape,this.state.curPosition()),s=this.state.pos-1;continue}++this.state.pos;let l=this.readCodePoint(!0);l!==null&&(o(l)||this.raise(b.EscapedCharNotAnIdentifier,a),e+=String.fromCodePoint(l)),s=this.state.pos}else break}return e+this.input.slice(s,this.state.pos)}readWord(n){let e=this.readWord1(n),t=Fs.get(e);t!==void 0?this.finishToken(t,He(t)):this.finishToken(132,e)}checkKeywordEscapes(){let{type:n}=this.state;Vs(n)&&this.state.containsEsc&&this.raise(b.InvalidEscapedReservedWord,this.state.startLoc,{reservedWord:He(n)})}raise(n,e,t={}){let s=e instanceof ke?e:e.loc.start,i=n(s,t);if(!this.options.errorRecovery)throw i;return this.isLookahead||this.state.errors.push(i),i}raiseOverwrite(n,e,t={}){let s=e instanceof ke?e:e.loc.start,i=s.index,a=this.state.errors;for(let o=a.length-1;o>=0;o--){let l=a[o];if(l.loc.index===i)return a[o]=n(s,t);if(l.loc.index<i)break}return this.raise(n,e,t)}updateContext(n){}unexpected(n,e){throw this.raise(b.UnexpectedToken,n??this.state.startLoc,{expected:e?He(e):null})}expectPlugin(n,e){if(this.hasPlugin(n))return!0;throw this.raise(b.MissingPlugin,e??this.state.startLoc,{missingPlugin:[n]})}expectOnePlugin(n){if(!n.some(e=>this.hasPlugin(e)))throw this.raise(b.MissingOneOfPlugins,this.state.startLoc,{missingPlugin:n})}errorBuilder(n){return(e,t,s)=>{this.raise(n,Ft(e,t,s))}}},Cs=class{constructor(){this.privateNames=new Set,this.loneAccessors=new Map,this.undefinedPrivateNames=new Map}},Ss=class{constructor(n){this.parser=void 0,this.stack=[],this.undefinedPrivateNames=new Map,this.parser=n}current(){return this.stack[this.stack.length-1]}enter(){this.stack.push(new Cs)}exit(){let n=this.stack.pop(),e=this.current();for(let[t,s]of Array.from(n.undefinedPrivateNames))e?e.undefinedPrivateNames.has(t)||e.undefinedPrivateNames.set(t,s):this.parser.raise(b.InvalidPrivateFieldResolution,s,{identifierName:t})}declarePrivateName(n,e,t){let{privateNames:s,loneAccessors:i,undefinedPrivateNames:a}=this.current(),o=s.has(n);if(e&3){let l=o&&i.get(n);if(l){let c=l&4,p=e&4,u=l&3,h=e&3;o=u===h||c!==p,o||i.delete(n)}else o||i.set(n,e)}o&&this.parser.raise(b.PrivateNameRedeclaration,t,{identifierName:n}),s.add(n),a.delete(n)}usePrivateName(n,e){let t;for(t of this.stack)if(t.privateNames.has(n))return;t?t.undefinedPrivateNames.set(n,e):this.parser.raise(b.InvalidPrivateFieldResolution,e,{identifierName:n})}},ht=class{constructor(n=0){this.type=n}canBeArrowParameterDeclaration(){return this.type===2||this.type===1}isCertainlyParameterDeclaration(){return this.type===3}},xn=class extends ht{constructor(n){super(n),this.declarationErrors=new Map}recordDeclarationError(n,e){let t=e.index;this.declarationErrors.set(t,[n,e])}clearDeclarationError(n){this.declarationErrors.delete(n)}iterateErrors(n){this.declarationErrors.forEach(n)}},Is=class{constructor(n){this.parser=void 0,this.stack=[new ht],this.parser=n}enter(n){this.stack.push(n)}exit(){this.stack.pop()}recordParameterInitializerError(n,e){let t=e.loc.start,{stack:s}=this,i=s.length-1,a=s[i];for(;!a.isCertainlyParameterDeclaration();){if(a.canBeArrowParameterDeclaration())a.recordDeclarationError(n,t);else return;a=s[--i]}this.parser.raise(n,t)}recordArrowParameterBindingError(n,e){let{stack:t}=this,s=t[t.length-1],i=e.loc.start;if(s.isCertainlyParameterDeclaration())this.parser.raise(n,i);else if(s.canBeArrowParameterDeclaration())s.recordDeclarationError(n,i);else return}recordAsyncArrowParametersError(n){let{stack:e}=this,t=e.length-1,s=e[t];for(;s.canBeArrowParameterDeclaration();)s.type===2&&s.recordDeclarationError(b.AwaitBindingIdentifier,n),s=e[--t]}validateAsPattern(){let{stack:n}=this,e=n[n.length-1];e.canBeArrowParameterDeclaration()&&e.iterateErrors(([t,s])=>{this.parser.raise(t,s);let i=n.length-2,a=n[i];for(;a.canBeArrowParameterDeclaration();)a.clearDeclarationError(s.index),a=n[--i]})}};function rl(){return new ht(3)}function il(){return new xn(1)}function al(){return new xn(2)}function yi(){return new ht}var Es=class{constructor(){this.stacks=[]}enter(n){this.stacks.push(n)}exit(){this.stacks.pop()}currentFlags(){return this.stacks[this.stacks.length-1]}get hasAwait(){return(this.currentFlags()&2)>0}get hasYield(){return(this.currentFlags()&1)>0}get hasReturn(){return(this.currentFlags()&4)>0}get hasIn(){return(this.currentFlags()&8)>0}};function gn(r,n){return(r?2:0)|(n?1:0)}var As=class extends ws{addExtra(n,e,t,s=!0){if(!n)return;let i=n.extra=n.extra||{};s?i[e]=t:Object.defineProperty(i,e,{enumerable:s,value:t})}isContextual(n){return this.state.type===n&&!this.state.containsEsc}isUnparsedContextual(n,e){let t=n+e.length;if(this.input.slice(n,t)===e){let s=this.input.charCodeAt(t);return!(pt(s)||(s&64512)===55296)}return!1}isLookaheadContextual(n){let e=this.nextTokenStart();return this.isUnparsedContextual(e,n)}eatContextual(n){return this.isContextual(n)?(this.next(),!0):!1}expectContextual(n,e){if(!this.eatContextual(n)){if(e!=null)throw this.raise(e,this.state.startLoc);this.unexpected(null,n)}}canInsertSemicolon(){return this.match(139)||this.match(8)||this.hasPrecedingLineBreak()}hasPrecedingLineBreak(){return mi.test(this.input.slice(this.state.lastTokEndLoc.index,this.state.start))}hasFollowingLineBreak(){return Jr.lastIndex=this.state.end,Jr.test(this.input)}isLineTerminator(){return this.eat(13)||this.canInsertSemicolon()}semicolon(n=!0){(n?this.isLineTerminator():this.eat(13))||this.raise(b.MissingSemicolon,this.state.lastTokEndLoc)}expect(n,e){this.eat(n)||this.unexpected(e,n)}tryParse(n,e=this.state.clone()){let t={node:null};try{let s=n((i=null)=>{throw t.node=i,t});if(this.state.errors.length>e.errors.length){let i=this.state;return this.state=e,this.state.tokensLength=i.tokensLength,{node:s,error:i.errors[e.errors.length],thrown:!1,aborted:!1,failState:i}}return{node:s,error:null,thrown:!1,aborted:!1,failState:null}}catch(s){let i=this.state;if(this.state=e,s instanceof SyntaxError)return{node:null,error:s,thrown:!0,aborted:!1,failState:i};if(s===t)return{node:t.node,error:null,thrown:!1,aborted:!0,failState:i};throw s}}checkExpressionErrors(n,e){if(!n)return!1;let{shorthandAssignLoc:t,doubleProtoLoc:s,privateKeyLoc:i,optionalParametersLoc:a}=n,o=!!t||!!s||!!a||!!i;if(!e)return o;t!=null&&this.raise(b.InvalidCoverInitializedName,t),s!=null&&this.raise(b.DuplicateProto,s),i!=null&&this.raise(b.UnexpectedPrivateField,i),a!=null&&this.unexpected(a)}isLiteralPropertyName(){return oi(this.state.type)}isPrivateName(n){return n.type==="PrivateName"}getPrivateNameSV(n){return n.id.name}hasPropertyAsPrivateName(n){return(n.type==="MemberExpression"||n.type==="OptionalMemberExpression")&&this.isPrivateName(n.property)}isObjectProperty(n){return n.type==="ObjectProperty"}isObjectMethod(n){return n.type==="ObjectMethod"}initializeScopes(n=this.options.sourceType==="module"){let e=this.state.labels;this.state.labels=[];let t=this.exportedIdentifiers;this.exportedIdentifiers=new Set;let s=this.inModule;this.inModule=n;let i=this.scope,a=this.getScopeHandler();this.scope=new a(this,n);let o=this.prodParam;this.prodParam=new Es;let l=this.classScope;this.classScope=new Ss(this);let c=this.expressionScope;return this.expressionScope=new Is(this),()=>{this.state.labels=e,this.exportedIdentifiers=t,this.inModule=s,this.scope=i,this.prodParam=o,this.classScope=l,this.expressionScope=c}}enterInitialScopes(){let n=0;this.inModule&&(n|=2),this.scope.enter(1),this.prodParam.enter(n)}checkDestructuringPrivate(n){let{privateKeyLoc:e}=n;e!==null&&this.expectPlugin("destructuringPrivate",e)}},ut=class{constructor(){this.shorthandAssignLoc=null,this.doubleProtoLoc=null,this.privateKeyLoc=null,this.optionalParametersLoc=null}},ft=class{constructor(n,e,t){this.type="",this.start=e,this.end=0,this.loc=new dt(t),n!=null&&n.options.ranges&&(this.range=[e,0]),n!=null&&n.filename&&(this.loc.filename=n.filename)}},qs=ft.prototype;qs.__clone=function(){let r=new ft(void 0,this.start,this.loc.start),n=Object.keys(this);for(let e=0,t=n.length;e<t;e++){let s=n[e];s!=="leadingComments"&&s!=="trailingComments"&&s!=="innerComments"&&(r[s]=this[s])}return r};function ol(r){return Be(r)}function Be(r){let{type:n,start:e,end:t,loc:s,range:i,extra:a,name:o}=r,l=Object.create(qs);return l.type=n,l.start=e,l.end=t,l.loc=s,l.range=i,l.extra=a,l.name=o,n==="Placeholder"&&(l.expectedNode=r.expectedNode),l}function ll(r){let{type:n,start:e,end:t,loc:s,range:i,extra:a}=r;if(n==="Placeholder")return ol(r);let o=Object.create(qs);return o.type=n,o.start=e,o.end=t,o.loc=s,o.range=i,r.raw!==void 0?o.raw=r.raw:o.extra=a,o.value=r.value,o}var ks=class extends As{startNode(){let n=this.state.startLoc;return new ft(this,n.index,n)}startNodeAt(n){return new ft(this,n.index,n)}startNodeAtNode(n){return this.startNodeAt(n.loc.start)}finishNode(n,e){return this.finishNodeAt(n,e,this.state.lastTokEndLoc)}finishNodeAt(n,e,t){return n.type=e,n.end=t.index,n.loc.end=t,this.options.ranges&&(n.range[1]=t.index),this.options.attachComment&&this.processComment(n),n}resetStartLocation(n,e){n.start=e.index,n.loc.start=e,this.options.ranges&&(n.range[0]=e.index)}resetEndLocation(n,e=this.state.lastTokEndLoc){n.end=e.index,n.loc.end=e,this.options.ranges&&(n.range[1]=e.index)}resetStartLocationFromNode(n,e){this.resetStartLocation(n,e.loc.start)}},cl=new Set(["_","any","bool","boolean","empty","extends","false","interface","mixed","null","number","static","string","true","typeof","void"]),L=Re`flow`({AmbiguousConditionalArrow:"Ambiguous expression: wrap the arrow functions in parentheses to disambiguate.",AmbiguousDeclareModuleKind:"Found both `declare module.exports` and `declare export` in the same module. Modules can only have 1 since they are either an ES module or they are a CommonJS module.",AssignReservedType:({reservedType:r})=>`Cannot overwrite reserved type ${r}.`,DeclareClassElement:"The `declare` modifier can only appear on class fields.",DeclareClassFieldInitializer:"Initializers are not allowed in fields with the `declare` modifier.",DuplicateDeclareModuleExports:"Duplicate `declare module.exports` statement.",EnumBooleanMemberNotInitialized:({memberName:r,enumName:n})=>`Boolean enum members need to be initialized. Use either \`${r} = true,\` or \`${r} = false,\` in enum \`${n}\`.`,EnumDuplicateMemberName:({memberName:r,enumName:n})=>`Enum member names need to be unique, but the name \`${r}\` has already been used before in enum \`${n}\`.`,EnumInconsistentMemberValues:({enumName:r})=>`Enum \`${r}\` has inconsistent member initializers. Either use no initializers, or consistently use literals (either booleans, numbers, or strings) for all member initializers.`,EnumInvalidExplicitType:({invalidEnumType:r,enumName:n})=>`Enum type \`${r}\` is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${n}\`.`,EnumInvalidExplicitTypeUnknownSupplied:({enumName:r})=>`Supplied enum type is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${r}\`.`,EnumInvalidMemberInitializerPrimaryType:({enumName:r,memberName:n,explicitType:e})=>`Enum \`${r}\` has type \`${e}\`, so the initializer of \`${n}\` needs to be a ${e} literal.`,EnumInvalidMemberInitializerSymbolType:({enumName:r,memberName:n})=>`Symbol enum members cannot be initialized. Use \`${n},\` in enum \`${r}\`.`,EnumInvalidMemberInitializerUnknownType:({enumName:r,memberName:n})=>`The enum member initializer for \`${n}\` needs to be a literal (either a boolean, number, or string) in enum \`${r}\`.`,EnumInvalidMemberName:({enumName:r,memberName:n,suggestion:e})=>`Enum member names cannot start with lowercase 'a' through 'z'. Instead of using \`${n}\`, consider using \`${e}\`, in enum \`${r}\`.`,EnumNumberMemberNotInitialized:({enumName:r,memberName:n})=>`Number enum members need to be initialized, e.g. \`${n} = 1\` in enum \`${r}\`.`,EnumStringMemberInconsistentlyInitialized:({enumName:r})=>`String enum members need to consistently either all use initializers, or use no initializers, in enum \`${r}\`.`,GetterMayNotHaveThisParam:"A getter cannot have a `this` parameter.",ImportReflectionHasImportType:"An `import module` declaration can not use `type` or `typeof` keyword.",ImportTypeShorthandOnlyInPureImport:"The `type` and `typeof` keywords on named imports can only be used on regular `import` statements. It cannot be used with `import type` or `import typeof` statements.",InexactInsideExact:"Explicit inexact syntax cannot appear inside an explicit exact object type.",InexactInsideNonObject:"Explicit inexact syntax cannot appear in class or interface definitions.",InexactVariance:"Explicit inexact syntax cannot have variance.",InvalidNonTypeImportInDeclareModule:"Imports within a `declare module` body must always be `import type` or `import typeof`.",MissingTypeParamDefault:"Type parameter declaration needs a default, since a preceding type parameter declaration has a default.",NestedDeclareModule:"`declare module` cannot be used inside another `declare module`.",NestedFlowComment:"Cannot have a flow comment inside another flow comment.",PatternIsOptional:Object.assign({message:"A binding pattern parameter cannot be optional in an implementation signature."},{reasonCode:"OptionalBindingPattern"}),SetterMayNotHaveThisParam:"A setter cannot have a `this` parameter.",SpreadVariance:"Spread properties cannot have variance.",ThisParamAnnotationRequired:"A type annotation is required for the `this` parameter.",ThisParamBannedInConstructor:"Constructors cannot have a `this` parameter; constructors don't bind `this` like other functions.",ThisParamMayNotBeOptional:"The `this` parameter cannot be optional.",ThisParamMustBeFirst:"The `this` parameter must be the first function parameter.",ThisParamNoDefault:"The `this` parameter may not have a default value.",TypeBeforeInitializer:"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.",TypeCastInPattern:"The type cast expression is expected to be wrapped with parenthesis.",UnexpectedExplicitInexactInObject:"Explicit inexact syntax must appear at the end of an inexact object.",UnexpectedReservedType:({reservedType:r})=>`Unexpected reserved type ${r}.`,UnexpectedReservedUnderscore:"`_` is only allowed as a type argument to call or new.",UnexpectedSpaceBetweenModuloChecks:"Spaces between `%` and `checks` are not allowed here.",UnexpectedSpreadType:"Spread operator cannot appear in class or interface definitions.",UnexpectedSubtractionOperand:'Unexpected token, expected "number" or "bigint".',UnexpectedTokenAfterTypeParameter:"Expected an arrow function after this type parameter declaration.",UnexpectedTypeParameterBeforeAsyncArrowFunction:"Type parameters must come after the async keyword, e.g. instead of `<T> async () => {}`, use `async <T>() => {}`.",UnsupportedDeclareExportKind:({unsupportedExportKind:r,suggestion:n})=>`\`declare export ${r}\` is not supported. Use \`${n}\` instead.`,UnsupportedStatementInDeclareModule:"Only declares and type imports are allowed inside declare module.",UnterminatedFlowComment:"Unterminated flow-comment."});function pl(r){return r.type==="DeclareExportAllDeclaration"||r.type==="DeclareExportDeclaration"&&(!r.declaration||r.declaration.type!=="TypeAlias"&&r.declaration.type!=="InterfaceDeclaration")}function Yr(r){return r.importKind==="type"||r.importKind==="typeof"}var ul={const:"declare export var",let:"declare export var",type:"export type",interface:"export interface"};function dl(r,n){let e=[],t=[];for(let s=0;s<r.length;s++)(n(r[s],s,r)?e:t).push(r[s]);return[e,t]}var hl=/\*?\s*@((?:no)?flow)\b/,fl=r=>class extends r{constructor(...e){super(...e),this.flowPragma=void 0}getScopeHandler(){return ys}shouldParseTypes(){return this.getPluginOption("flow","all")||this.flowPragma==="flow"}shouldParseEnums(){return!!this.getPluginOption("flow","enums")}finishToken(e,t){e!==133&&e!==13&&e!==28&&this.flowPragma===void 0&&(this.flowPragma=null),super.finishToken(e,t)}addComment(e){if(this.flowPragma===void 0){let t=hl.exec(e.value);if(t)if(t[1]==="flow")this.flowPragma="flow";else if(t[1]==="noflow")this.flowPragma="noflow";else throw new Error("Unexpected flow pragma")}super.addComment(e)}flowParseTypeInitialiser(e){let t=this.state.inType;this.state.inType=!0,this.expect(e||14);let s=this.flowParseType();return this.state.inType=t,s}flowParsePredicate(){let e=this.startNode(),t=this.state.startLoc;return this.next(),this.expectContextual(110),this.state.lastTokStartLoc.index>t.index+1&&this.raise(L.UnexpectedSpaceBetweenModuloChecks,t),this.eat(10)?(e.value=super.parseExpression(),this.expect(11),this.finishNode(e,"DeclaredPredicate")):this.finishNode(e,"InferredPredicate")}flowParseTypeAndPredicateInitialiser(){let e=this.state.inType;this.state.inType=!0,this.expect(14);let t=null,s=null;return this.match(54)?(this.state.inType=e,s=this.flowParsePredicate()):(t=this.flowParseType(),this.state.inType=e,this.match(54)&&(s=this.flowParsePredicate())),[t,s]}flowParseDeclareClass(e){return this.next(),this.flowParseInterfaceish(e,!0),this.finishNode(e,"DeclareClass")}flowParseDeclareFunction(e){this.next();let t=e.id=this.parseIdentifier(),s=this.startNode(),i=this.startNode();this.match(47)?s.typeParameters=this.flowParseTypeParameterDeclaration():s.typeParameters=null,this.expect(10);let a=this.flowParseFunctionTypeParams();return s.params=a.params,s.rest=a.rest,s.this=a._this,this.expect(11),[s.returnType,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),i.typeAnnotation=this.finishNode(s,"FunctionTypeAnnotation"),t.typeAnnotation=this.finishNode(i,"TypeAnnotation"),this.resetEndLocation(t),this.semicolon(),this.scope.declareName(e.id.name,2048,e.id.loc.start),this.finishNode(e,"DeclareFunction")}flowParseDeclare(e,t){if(this.match(80))return this.flowParseDeclareClass(e);if(this.match(68))return this.flowParseDeclareFunction(e);if(this.match(74))return this.flowParseDeclareVariable(e);if(this.eatContextual(127))return this.match(16)?this.flowParseDeclareModuleExports(e):(t&&this.raise(L.NestedDeclareModule,this.state.lastTokStartLoc),this.flowParseDeclareModule(e));if(this.isContextual(130))return this.flowParseDeclareTypeAlias(e);if(this.isContextual(131))return this.flowParseDeclareOpaqueType(e);if(this.isContextual(129))return this.flowParseDeclareInterface(e);if(this.match(82))return this.flowParseDeclareExportDeclaration(e,t);this.unexpected()}flowParseDeclareVariable(e){return this.next(),e.id=this.flowParseTypeAnnotatableIdentifier(!0),this.scope.declareName(e.id.name,5,e.id.loc.start),this.semicolon(),this.finishNode(e,"DeclareVariable")}flowParseDeclareModule(e){this.scope.enter(0),this.match(133)?e.id=super.parseExprAtom():e.id=this.parseIdentifier();let t=e.body=this.startNode(),s=t.body=[];for(this.expect(5);!this.match(8);){let o=this.startNode();this.match(83)?(this.next(),!this.isContextual(130)&&!this.match(87)&&this.raise(L.InvalidNonTypeImportInDeclareModule,this.state.lastTokStartLoc),super.parseImport(o)):(this.expectContextual(125,L.UnsupportedStatementInDeclareModule),o=this.flowParseDeclare(o,!0)),s.push(o)}this.scope.exit(),this.expect(8),this.finishNode(t,"BlockStatement");let i=null,a=!1;return s.forEach(o=>{pl(o)?(i==="CommonJS"&&this.raise(L.AmbiguousDeclareModuleKind,o),i="ES"):o.type==="DeclareModuleExports"&&(a&&this.raise(L.DuplicateDeclareModuleExports,o),i==="ES"&&this.raise(L.AmbiguousDeclareModuleKind,o),i="CommonJS",a=!0)}),e.kind=i||"CommonJS",this.finishNode(e,"DeclareModule")}flowParseDeclareExportDeclaration(e,t){if(this.expect(82),this.eat(65))return this.match(68)||this.match(80)?e.declaration=this.flowParseDeclare(this.startNode()):(e.declaration=this.flowParseType(),this.semicolon()),e.default=!0,this.finishNode(e,"DeclareExportDeclaration");if(this.match(75)||this.isLet()||(this.isContextual(130)||this.isContextual(129))&&!t){let s=this.state.value;throw this.raise(L.UnsupportedDeclareExportKind,this.state.startLoc,{unsupportedExportKind:s,suggestion:ul[s]})}if(this.match(74)||this.match(68)||this.match(80)||this.isContextual(131))return e.declaration=this.flowParseDeclare(this.startNode()),e.default=!1,this.finishNode(e,"DeclareExportDeclaration");if(this.match(55)||this.match(5)||this.isContextual(129)||this.isContextual(130)||this.isContextual(131))return e=this.parseExport(e,null),e.type==="ExportNamedDeclaration"&&(e.type="ExportDeclaration",e.default=!1,delete e.exportKind),e.type="Declare"+e.type,e;this.unexpected()}flowParseDeclareModuleExports(e){return this.next(),this.expectContextual(111),e.typeAnnotation=this.flowParseTypeAnnotation(),this.semicolon(),this.finishNode(e,"DeclareModuleExports")}flowParseDeclareTypeAlias(e){this.next();let t=this.flowParseTypeAlias(e);return t.type="DeclareTypeAlias",t}flowParseDeclareOpaqueType(e){this.next();let t=this.flowParseOpaqueType(e,!0);return t.type="DeclareOpaqueType",t}flowParseDeclareInterface(e){return this.next(),this.flowParseInterfaceish(e,!1),this.finishNode(e,"DeclareInterface")}flowParseInterfaceish(e,t){if(e.id=this.flowParseRestrictedIdentifier(!t,!0),this.scope.declareName(e.id.name,t?17:8201,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.extends=[],this.eat(81))do e.extends.push(this.flowParseInterfaceExtends());while(!t&&this.eat(12));if(t){if(e.implements=[],e.mixins=[],this.eatContextual(117))do e.mixins.push(this.flowParseInterfaceExtends());while(this.eat(12));if(this.eatContextual(113))do e.implements.push(this.flowParseInterfaceExtends());while(this.eat(12))}e.body=this.flowParseObjectType({allowStatic:t,allowExact:!1,allowSpread:!1,allowProto:t,allowInexact:!1})}flowParseInterfaceExtends(){let e=this.startNode();return e.id=this.flowParseQualifiedTypeIdentifier(),this.match(47)?e.typeParameters=this.flowParseTypeParameterInstantiation():e.typeParameters=null,this.finishNode(e,"InterfaceExtends")}flowParseInterface(e){return this.flowParseInterfaceish(e,!1),this.finishNode(e,"InterfaceDeclaration")}checkNotUnderscore(e){e==="_"&&this.raise(L.UnexpectedReservedUnderscore,this.state.startLoc)}checkReservedType(e,t,s){cl.has(e)&&this.raise(s?L.AssignReservedType:L.UnexpectedReservedType,t,{reservedType:e})}flowParseRestrictedIdentifier(e,t){return this.checkReservedType(this.state.value,this.state.startLoc,t),this.parseIdentifier(e)}flowParseTypeAlias(e){return e.id=this.flowParseRestrictedIdentifier(!1,!0),this.scope.declareName(e.id.name,8201,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.right=this.flowParseTypeInitialiser(29),this.semicolon(),this.finishNode(e,"TypeAlias")}flowParseOpaqueType(e,t){return this.expectContextual(130),e.id=this.flowParseRestrictedIdentifier(!0,!0),this.scope.declareName(e.id.name,8201,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.supertype=null,this.match(14)&&(e.supertype=this.flowParseTypeInitialiser(14)),e.impltype=null,t||(e.impltype=this.flowParseTypeInitialiser(29)),this.semicolon(),this.finishNode(e,"OpaqueType")}flowParseTypeParameter(e=!1){let t=this.state.startLoc,s=this.startNode(),i=this.flowParseVariance(),a=this.flowParseTypeAnnotatableIdentifier();return s.name=a.name,s.variance=i,s.bound=a.typeAnnotation,this.match(29)?(this.eat(29),s.default=this.flowParseType()):e&&this.raise(L.MissingTypeParamDefault,t),this.finishNode(s,"TypeParameter")}flowParseTypeParameterDeclaration(){let e=this.state.inType,t=this.startNode();t.params=[],this.state.inType=!0,this.match(47)||this.match(142)?this.next():this.unexpected();let s=!1;do{let i=this.flowParseTypeParameter(s);t.params.push(i),i.default&&(s=!0),this.match(48)||this.expect(12)}while(!this.match(48));return this.expect(48),this.state.inType=e,this.finishNode(t,"TypeParameterDeclaration")}flowParseTypeParameterInstantiation(){let e=this.startNode(),t=this.state.inType;e.params=[],this.state.inType=!0,this.expect(47);let s=this.state.noAnonFunctionType;for(this.state.noAnonFunctionType=!1;!this.match(48);)e.params.push(this.flowParseType()),this.match(48)||this.expect(12);return this.state.noAnonFunctionType=s,this.expect(48),this.state.inType=t,this.finishNode(e,"TypeParameterInstantiation")}flowParseTypeParameterInstantiationCallOrNew(){let e=this.startNode(),t=this.state.inType;for(e.params=[],this.state.inType=!0,this.expect(47);!this.match(48);)e.params.push(this.flowParseTypeOrImplicitInstantiation()),this.match(48)||this.expect(12);return this.expect(48),this.state.inType=t,this.finishNode(e,"TypeParameterInstantiation")}flowParseInterfaceType(){let e=this.startNode();if(this.expectContextual(129),e.extends=[],this.eat(81))do e.extends.push(this.flowParseInterfaceExtends());while(this.eat(12));return e.body=this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!1,allowProto:!1,allowInexact:!1}),this.finishNode(e,"InterfaceTypeAnnotation")}flowParseObjectPropertyKey(){return this.match(134)||this.match(133)?super.parseExprAtom():this.parseIdentifier(!0)}flowParseObjectTypeIndexer(e,t,s){return e.static=t,this.lookahead().type===14?(e.id=this.flowParseObjectPropertyKey(),e.key=this.flowParseTypeInitialiser()):(e.id=null,e.key=this.flowParseType()),this.expect(3),e.value=this.flowParseTypeInitialiser(),e.variance=s,this.finishNode(e,"ObjectTypeIndexer")}flowParseObjectTypeInternalSlot(e,t){return e.static=t,e.id=this.flowParseObjectPropertyKey(),this.expect(3),this.expect(3),this.match(47)||this.match(10)?(e.method=!0,e.optional=!1,e.value=this.flowParseObjectTypeMethodish(this.startNodeAt(e.loc.start))):(e.method=!1,this.eat(17)&&(e.optional=!0),e.value=this.flowParseTypeInitialiser()),this.finishNode(e,"ObjectTypeInternalSlot")}flowParseObjectTypeMethodish(e){for(e.params=[],e.rest=null,e.typeParameters=null,e.this=null,this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration()),this.expect(10),this.match(78)&&(e.this=this.flowParseFunctionTypeParam(!0),e.this.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)e.params.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(e.rest=this.flowParseFunctionTypeParam(!1)),this.expect(11),e.returnType=this.flowParseTypeInitialiser(),this.finishNode(e,"FunctionTypeAnnotation")}flowParseObjectTypeCallProperty(e,t){let s=this.startNode();return e.static=t,e.value=this.flowParseObjectTypeMethodish(s),this.finishNode(e,"ObjectTypeCallProperty")}flowParseObjectType({allowStatic:e,allowExact:t,allowSpread:s,allowProto:i,allowInexact:a}){let o=this.state.inType;this.state.inType=!0;let l=this.startNode();l.callProperties=[],l.properties=[],l.indexers=[],l.internalSlots=[];let c,p,u=!1;for(t&&this.match(6)?(this.expect(6),c=9,p=!0):(this.expect(5),c=8,p=!1),l.exact=p;!this.match(c);){let m=!1,d=null,g=null,f=this.startNode();if(i&&this.isContextual(118)){let w=this.lookahead();w.type!==14&&w.type!==17&&(this.next(),d=this.state.startLoc,e=!1)}if(e&&this.isContextual(106)){let w=this.lookahead();w.type!==14&&w.type!==17&&(this.next(),m=!0)}let v=this.flowParseVariance();if(this.eat(0))d!=null&&this.unexpected(d),this.eat(0)?(v&&this.unexpected(v.loc.start),l.internalSlots.push(this.flowParseObjectTypeInternalSlot(f,m))):l.indexers.push(this.flowParseObjectTypeIndexer(f,m,v));else if(this.match(10)||this.match(47))d!=null&&this.unexpected(d),v&&this.unexpected(v.loc.start),l.callProperties.push(this.flowParseObjectTypeCallProperty(f,m));else{let w="init";if(this.isContextual(99)||this.isContextual(104)){let x=this.lookahead();oi(x.type)&&(w=this.state.value,this.next())}let E=this.flowParseObjectTypeProperty(f,m,d,v,w,s,a??!p);E===null?(u=!0,g=this.state.lastTokStartLoc):l.properties.push(E)}this.flowObjectTypeSemicolon(),g&&!this.match(8)&&!this.match(9)&&this.raise(L.UnexpectedExplicitInexactInObject,g)}this.expect(c),s&&(l.inexact=u);let h=this.finishNode(l,"ObjectTypeAnnotation");return this.state.inType=o,h}flowParseObjectTypeProperty(e,t,s,i,a,o,l){if(this.eat(21))return this.match(12)||this.match(13)||this.match(8)||this.match(9)?(o?l||this.raise(L.InexactInsideExact,this.state.lastTokStartLoc):this.raise(L.InexactInsideNonObject,this.state.lastTokStartLoc),i&&this.raise(L.InexactVariance,i),null):(o||this.raise(L.UnexpectedSpreadType,this.state.lastTokStartLoc),s!=null&&this.unexpected(s),i&&this.raise(L.SpreadVariance,i),e.argument=this.flowParseType(),this.finishNode(e,"ObjectTypeSpreadProperty"));{e.key=this.flowParseObjectPropertyKey(),e.static=t,e.proto=s!=null,e.kind=a;let c=!1;return this.match(47)||this.match(10)?(e.method=!0,s!=null&&this.unexpected(s),i&&this.unexpected(i.loc.start),e.value=this.flowParseObjectTypeMethodish(this.startNodeAt(e.loc.start)),(a==="get"||a==="set")&&this.flowCheckGetterSetterParams(e),!o&&e.key.name==="constructor"&&e.value.this&&this.raise(L.ThisParamBannedInConstructor,e.value.this)):(a!=="init"&&this.unexpected(),e.method=!1,this.eat(17)&&(c=!0),e.value=this.flowParseTypeInitialiser(),e.variance=i),e.optional=c,this.finishNode(e,"ObjectTypeProperty")}}flowCheckGetterSetterParams(e){let t=e.kind==="get"?0:1,s=e.value.params.length+(e.value.rest?1:0);e.value.this&&this.raise(e.kind==="get"?L.GetterMayNotHaveThisParam:L.SetterMayNotHaveThisParam,e.value.this),s!==t&&this.raise(e.kind==="get"?b.BadGetterArity:b.BadSetterArity,e),e.kind==="set"&&e.value.rest&&this.raise(b.BadSetterRestParameter,e)}flowObjectTypeSemicolon(){!this.eat(13)&&!this.eat(12)&&!this.match(8)&&!this.match(9)&&this.unexpected()}flowParseQualifiedTypeIdentifier(e,t){var s;(s=e)!=null||(e=this.state.startLoc);let i=t||this.flowParseRestrictedIdentifier(!0);for(;this.eat(16);){let a=this.startNodeAt(e);a.qualification=i,a.id=this.flowParseRestrictedIdentifier(!0),i=this.finishNode(a,"QualifiedTypeIdentifier")}return i}flowParseGenericType(e,t){let s=this.startNodeAt(e);return s.typeParameters=null,s.id=this.flowParseQualifiedTypeIdentifier(e,t),this.match(47)&&(s.typeParameters=this.flowParseTypeParameterInstantiation()),this.finishNode(s,"GenericTypeAnnotation")}flowParseTypeofType(){let e=this.startNode();return this.expect(87),e.argument=this.flowParsePrimaryType(),this.finishNode(e,"TypeofTypeAnnotation")}flowParseTupleType(){let e=this.startNode();for(e.types=[],this.expect(0);this.state.pos<this.length&&!this.match(3)&&(e.types.push(this.flowParseType()),!this.match(3));)this.expect(12);return this.expect(3),this.finishNode(e,"TupleTypeAnnotation")}flowParseFunctionTypeParam(e){let t=null,s=!1,i=null,a=this.startNode(),o=this.lookahead(),l=this.state.type===78;return o.type===14||o.type===17?(l&&!e&&this.raise(L.ThisParamMustBeFirst,a),t=this.parseIdentifier(l),this.eat(17)&&(s=!0,l&&this.raise(L.ThisParamMayNotBeOptional,a)),i=this.flowParseTypeInitialiser()):i=this.flowParseType(),a.name=t,a.optional=s,a.typeAnnotation=i,this.finishNode(a,"FunctionTypeParam")}reinterpretTypeAsFunctionTypeParam(e){let t=this.startNodeAt(e.loc.start);return t.name=null,t.optional=!1,t.typeAnnotation=e,this.finishNode(t,"FunctionTypeParam")}flowParseFunctionTypeParams(e=[]){let t=null,s=null;for(this.match(78)&&(s=this.flowParseFunctionTypeParam(!0),s.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)e.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(t=this.flowParseFunctionTypeParam(!1)),{params:e,rest:t,_this:s}}flowIdentToTypeAnnotation(e,t,s){switch(s.name){case"any":return this.finishNode(t,"AnyTypeAnnotation");case"bool":case"boolean":return this.finishNode(t,"BooleanTypeAnnotation");case"mixed":return this.finishNode(t,"MixedTypeAnnotation");case"empty":return this.finishNode(t,"EmptyTypeAnnotation");case"number":return this.finishNode(t,"NumberTypeAnnotation");case"string":return this.finishNode(t,"StringTypeAnnotation");case"symbol":return this.finishNode(t,"SymbolTypeAnnotation");default:return this.checkNotUnderscore(s.name),this.flowParseGenericType(e,s)}}flowParsePrimaryType(){let e=this.state.startLoc,t=this.startNode(),s,i,a=!1,o=this.state.noAnonFunctionType;switch(this.state.type){case 5:return this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!0,allowProto:!1,allowInexact:!0});case 6:return this.flowParseObjectType({allowStatic:!1,allowExact:!0,allowSpread:!0,allowProto:!1,allowInexact:!1});case 0:return this.state.noAnonFunctionType=!1,i=this.flowParseTupleType(),this.state.noAnonFunctionType=o,i;case 47:return t.typeParameters=this.flowParseTypeParameterDeclaration(),this.expect(10),s=this.flowParseFunctionTypeParams(),t.params=s.params,t.rest=s.rest,t.this=s._this,this.expect(11),this.expect(19),t.returnType=this.flowParseType(),this.finishNode(t,"FunctionTypeAnnotation");case 10:if(this.next(),!this.match(11)&&!this.match(21))if(B(this.state.type)||this.match(78)){let l=this.lookahead().type;a=l!==17&&l!==14}else a=!0;if(a){if(this.state.noAnonFunctionType=!1,i=this.flowParseType(),this.state.noAnonFunctionType=o,this.state.noAnonFunctionType||!(this.match(12)||this.match(11)&&this.lookahead().type===19))return this.expect(11),i;this.eat(12)}return i?s=this.flowParseFunctionTypeParams([this.reinterpretTypeAsFunctionTypeParam(i)]):s=this.flowParseFunctionTypeParams(),t.params=s.params,t.rest=s.rest,t.this=s._this,this.expect(11),this.expect(19),t.returnType=this.flowParseType(),t.typeParameters=null,this.finishNode(t,"FunctionTypeAnnotation");case 133:return this.parseLiteral(this.state.value,"StringLiteralTypeAnnotation");case 85:case 86:return t.value=this.match(85),this.next(),this.finishNode(t,"BooleanLiteralTypeAnnotation");case 53:if(this.state.value==="-"){if(this.next(),this.match(134))return this.parseLiteralAtNode(-this.state.value,"NumberLiteralTypeAnnotation",t);if(this.match(135))return this.parseLiteralAtNode(-this.state.value,"BigIntLiteralTypeAnnotation",t);throw this.raise(L.UnexpectedSubtractionOperand,this.state.startLoc)}this.unexpected();return;case 134:return this.parseLiteral(this.state.value,"NumberLiteralTypeAnnotation");case 135:return this.parseLiteral(this.state.value,"BigIntLiteralTypeAnnotation");case 88:return this.next(),this.finishNode(t,"VoidTypeAnnotation");case 84:return this.next(),this.finishNode(t,"NullLiteralTypeAnnotation");case 78:return this.next(),this.finishNode(t,"ThisTypeAnnotation");case 55:return this.next(),this.finishNode(t,"ExistsTypeAnnotation");case 87:return this.flowParseTypeofType();default:if(Vs(this.state.type)){let l=He(this.state.type);return this.next(),super.createIdentifier(t,l)}else if(B(this.state.type))return this.isContextual(129)?this.flowParseInterfaceType():this.flowIdentToTypeAnnotation(e,t,this.parseIdentifier())}this.unexpected()}flowParsePostfixType(){let e=this.state.startLoc,t=this.flowParsePrimaryType(),s=!1;for(;(this.match(0)||this.match(18))&&!this.canInsertSemicolon();){let i=this.startNodeAt(e),a=this.eat(18);s=s||a,this.expect(0),!a&&this.match(3)?(i.elementType=t,this.next(),t=this.finishNode(i,"ArrayTypeAnnotation")):(i.objectType=t,i.indexType=this.flowParseType(),this.expect(3),s?(i.optional=a,t=this.finishNode(i,"OptionalIndexedAccessType")):t=this.finishNode(i,"IndexedAccessType"))}return t}flowParsePrefixType(){let e=this.startNode();return this.eat(17)?(e.typeAnnotation=this.flowParsePrefixType(),this.finishNode(e,"NullableTypeAnnotation")):this.flowParsePostfixType()}flowParseAnonFunctionWithoutParens(){let e=this.flowParsePrefixType();if(!this.state.noAnonFunctionType&&this.eat(19)){let t=this.startNodeAt(e.loc.start);return t.params=[this.reinterpretTypeAsFunctionTypeParam(e)],t.rest=null,t.this=null,t.returnType=this.flowParseType(),t.typeParameters=null,this.finishNode(t,"FunctionTypeAnnotation")}return e}flowParseIntersectionType(){let e=this.startNode();this.eat(45);let t=this.flowParseAnonFunctionWithoutParens();for(e.types=[t];this.eat(45);)e.types.push(this.flowParseAnonFunctionWithoutParens());return e.types.length===1?t:this.finishNode(e,"IntersectionTypeAnnotation")}flowParseUnionType(){let e=this.startNode();this.eat(43);let t=this.flowParseIntersectionType();for(e.types=[t];this.eat(43);)e.types.push(this.flowParseIntersectionType());return e.types.length===1?t:this.finishNode(e,"UnionTypeAnnotation")}flowParseType(){let e=this.state.inType;this.state.inType=!0;let t=this.flowParseUnionType();return this.state.inType=e,t}flowParseTypeOrImplicitInstantiation(){if(this.state.type===132&&this.state.value==="_"){let e=this.state.startLoc,t=this.parseIdentifier();return this.flowParseGenericType(e,t)}else return this.flowParseType()}flowParseTypeAnnotation(){let e=this.startNode();return e.typeAnnotation=this.flowParseTypeInitialiser(),this.finishNode(e,"TypeAnnotation")}flowParseTypeAnnotatableIdentifier(e){let t=e?this.parseIdentifier():this.flowParseRestrictedIdentifier();return this.match(14)&&(t.typeAnnotation=this.flowParseTypeAnnotation(),this.resetEndLocation(t)),t}typeCastToParameter(e){return e.expression.typeAnnotation=e.typeAnnotation,this.resetEndLocation(e.expression,e.typeAnnotation.loc.end),e.expression}flowParseVariance(){let e=null;return this.match(53)?(e=this.startNode(),this.state.value==="+"?e.kind="plus":e.kind="minus",this.next(),this.finishNode(e,"Variance")):e}parseFunctionBody(e,t,s=!1){if(t){this.forwardNoArrowParamsConversionAt(e,()=>super.parseFunctionBody(e,!0,s));return}super.parseFunctionBody(e,!1,s)}parseFunctionBodyAndFinish(e,t,s=!1){if(this.match(14)){let i=this.startNode();[i.typeAnnotation,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),e.returnType=i.typeAnnotation?this.finishNode(i,"TypeAnnotation"):null}return super.parseFunctionBodyAndFinish(e,t,s)}parseStatementLike(e){if(this.state.strict&&this.isContextual(129)){let s=this.lookahead();if(xe(s.type)){let i=this.startNode();return this.next(),this.flowParseInterface(i)}}else if(this.shouldParseEnums()&&this.isContextual(126)){let s=this.startNode();return this.next(),this.flowParseEnumDeclaration(s)}let t=super.parseStatementLike(e);return this.flowPragma===void 0&&!this.isValidDirective(t)&&(this.flowPragma=null),t}parseExpressionStatement(e,t,s){if(t.type==="Identifier"){if(t.name==="declare"){if(this.match(80)||B(this.state.type)||this.match(68)||this.match(74)||this.match(82))return this.flowParseDeclare(e)}else if(B(this.state.type)){if(t.name==="interface")return this.flowParseInterface(e);if(t.name==="type")return this.flowParseTypeAlias(e);if(t.name==="opaque")return this.flowParseOpaqueType(e,!1)}}return super.parseExpressionStatement(e,t,s)}shouldParseExportDeclaration(){let{type:e}=this.state;return Kr(e)||this.shouldParseEnums()&&e===126?!this.state.containsEsc:super.shouldParseExportDeclaration()}isExportDefaultSpecifier(){let{type:e}=this.state;return Kr(e)||this.shouldParseEnums()&&e===126?this.state.containsEsc:super.isExportDefaultSpecifier()}parseExportDefaultExpression(){if(this.shouldParseEnums()&&this.isContextual(126)){let e=this.startNode();return this.next(),this.flowParseEnumDeclaration(e)}return super.parseExportDefaultExpression()}parseConditional(e,t,s){if(!this.match(17))return e;if(this.state.maybeInArrowParameters){let h=this.lookaheadCharCode();if(h===44||h===61||h===58||h===41)return this.setOptionalParametersError(s),e}this.expect(17);let i=this.state.clone(),a=this.state.noArrowAt,o=this.startNodeAt(t),{consequent:l,failed:c}=this.tryParseConditionalConsequent(),[p,u]=this.getArrowLikeExpressions(l);if(c||u.length>0){let h=[...a];if(u.length>0){this.state=i,this.state.noArrowAt=h;for(let m=0;m<u.length;m++)h.push(u[m].start);({consequent:l,failed:c}=this.tryParseConditionalConsequent()),[p,u]=this.getArrowLikeExpressions(l)}c&&p.length>1&&this.raise(L.AmbiguousConditionalArrow,i.startLoc),c&&p.length===1&&(this.state=i,h.push(p[0].start),this.state.noArrowAt=h,{consequent:l,failed:c}=this.tryParseConditionalConsequent())}return this.getArrowLikeExpressions(l,!0),this.state.noArrowAt=a,this.expect(14),o.test=e,o.consequent=l,o.alternate=this.forwardNoArrowParamsConversionAt(o,()=>this.parseMaybeAssign(void 0,void 0)),this.finishNode(o,"ConditionalExpression")}tryParseConditionalConsequent(){this.state.noArrowParamsConversionAt.push(this.state.start);let e=this.parseMaybeAssignAllowIn(),t=!this.match(14);return this.state.noArrowParamsConversionAt.pop(),{consequent:e,failed:t}}getArrowLikeExpressions(e,t){let s=[e],i=[];for(;s.length!==0;){let a=s.pop();a.type==="ArrowFunctionExpression"?(a.typeParameters||!a.returnType?this.finishArrowValidation(a):i.push(a),s.push(a.body)):a.type==="ConditionalExpression"&&(s.push(a.consequent),s.push(a.alternate))}return t?(i.forEach(a=>this.finishArrowValidation(a)),[i,[]]):dl(i,a=>a.params.every(o=>this.isAssignable(o,!0)))}finishArrowValidation(e){var t;this.toAssignableList(e.params,(t=e.extra)==null?void 0:t.trailingCommaLoc,!1),this.scope.enter(6),super.checkParams(e,!1,!0),this.scope.exit()}forwardNoArrowParamsConversionAt(e,t){let s;return this.state.noArrowParamsConversionAt.indexOf(e.start)!==-1?(this.state.noArrowParamsConversionAt.push(this.state.start),s=t(),this.state.noArrowParamsConversionAt.pop()):s=t(),s}parseParenItem(e,t){if(e=super.parseParenItem(e,t),this.eat(17)&&(e.optional=!0,this.resetEndLocation(e)),this.match(14)){let s=this.startNodeAt(t);return s.expression=e,s.typeAnnotation=this.flowParseTypeAnnotation(),this.finishNode(s,"TypeCastExpression")}return e}assertModuleNodeAllowed(e){e.type==="ImportDeclaration"&&(e.importKind==="type"||e.importKind==="typeof")||e.type==="ExportNamedDeclaration"&&e.exportKind==="type"||e.type==="ExportAllDeclaration"&&e.exportKind==="type"||super.assertModuleNodeAllowed(e)}parseExportDeclaration(e){if(this.isContextual(130)){e.exportKind="type";let t=this.startNode();return this.next(),this.match(5)?(e.specifiers=this.parseExportSpecifiers(!0),super.parseExportFrom(e),null):this.flowParseTypeAlias(t)}else if(this.isContextual(131)){e.exportKind="type";let t=this.startNode();return this.next(),this.flowParseOpaqueType(t,!1)}else if(this.isContextual(129)){e.exportKind="type";let t=this.startNode();return this.next(),this.flowParseInterface(t)}else if(this.shouldParseEnums()&&this.isContextual(126)){e.exportKind="value";let t=this.startNode();return this.next(),this.flowParseEnumDeclaration(t)}else return super.parseExportDeclaration(e)}eatExportStar(e){return super.eatExportStar(e)?!0:this.isContextual(130)&&this.lookahead().type===55?(e.exportKind="type",this.next(),this.next(),!0):!1}maybeParseExportNamespaceSpecifier(e){let{startLoc:t}=this.state,s=super.maybeParseExportNamespaceSpecifier(e);return s&&e.exportKind==="type"&&this.unexpected(t),s}parseClassId(e,t,s){super.parseClassId(e,t,s),this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration())}parseClassMember(e,t,s){let{startLoc:i}=this.state;if(this.isContextual(125)){if(super.parseClassMemberFromModifier(e,t))return;t.declare=!0}super.parseClassMember(e,t,s),t.declare&&(t.type!=="ClassProperty"&&t.type!=="ClassPrivateProperty"&&t.type!=="PropertyDefinition"?this.raise(L.DeclareClassElement,i):t.value&&this.raise(L.DeclareClassFieldInitializer,t.value))}isIterator(e){return e==="iterator"||e==="asyncIterator"}readIterator(){let e=super.readWord1(),t="@@"+e;(!this.isIterator(e)||!this.state.inType)&&this.raise(b.InvalidIdentifier,this.state.curPosition(),{identifierName:t}),this.finishToken(132,t)}getTokenFromCode(e){let t=this.input.charCodeAt(this.state.pos+1);e===123&&t===124?this.finishOp(6,2):this.state.inType&&(e===62||e===60)?this.finishOp(e===62?48:47,1):this.state.inType&&e===63?t===46?this.finishOp(18,2):this.finishOp(17,1):Jo(e,t,this.input.charCodeAt(this.state.pos+2))?(this.state.pos+=2,this.readIterator()):super.getTokenFromCode(e)}isAssignable(e,t){return e.type==="TypeCastExpression"?this.isAssignable(e.expression,t):super.isAssignable(e,t)}toAssignable(e,t=!1){!t&&e.type==="AssignmentExpression"&&e.left.type==="TypeCastExpression"&&(e.left=this.typeCastToParameter(e.left)),super.toAssignable(e,t)}toAssignableList(e,t,s){for(let i=0;i<e.length;i++){let a=e[i];a?.type==="TypeCastExpression"&&(e[i]=this.typeCastToParameter(a))}super.toAssignableList(e,t,s)}toReferencedList(e,t){for(let i=0;i<e.length;i++){var s;let a=e[i];a&&a.type==="TypeCastExpression"&&!((s=a.extra)!=null&&s.parenthesized)&&(e.length>1||!t)&&this.raise(L.TypeCastInPattern,a.typeAnnotation)}return e}parseArrayLike(e,t,s,i){let a=super.parseArrayLike(e,t,s,i);return t&&!this.state.maybeInArrowParameters&&this.toReferencedList(a.elements),a}isValidLVal(e,t,s){return e==="TypeCastExpression"||super.isValidLVal(e,t,s)}parseClassProperty(e){return this.match(14)&&(e.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassProperty(e)}parseClassPrivateProperty(e){return this.match(14)&&(e.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassPrivateProperty(e)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(14)||super.isClassProperty()}isNonstaticConstructor(e){return!this.match(14)&&super.isNonstaticConstructor(e)}pushClassMethod(e,t,s,i,a,o){if(t.variance&&this.unexpected(t.variance.loc.start),delete t.variance,this.match(47)&&(t.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassMethod(e,t,s,i,a,o),t.params&&a){let l=t.params;l.length>0&&this.isThisParam(l[0])&&this.raise(L.ThisParamBannedInConstructor,t)}else if(t.type==="MethodDefinition"&&a&&t.value.params){let l=t.value.params;l.length>0&&this.isThisParam(l[0])&&this.raise(L.ThisParamBannedInConstructor,t)}}pushClassPrivateMethod(e,t,s,i){t.variance&&this.unexpected(t.variance.loc.start),delete t.variance,this.match(47)&&(t.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassPrivateMethod(e,t,s,i)}parseClassSuper(e){if(super.parseClassSuper(e),e.superClass&&this.match(47)&&(e.superTypeParameters=this.flowParseTypeParameterInstantiation()),this.isContextual(113)){this.next();let t=e.implements=[];do{let s=this.startNode();s.id=this.flowParseRestrictedIdentifier(!0),this.match(47)?s.typeParameters=this.flowParseTypeParameterInstantiation():s.typeParameters=null,t.push(this.finishNode(s,"ClassImplements"))}while(this.eat(12))}}checkGetterSetterParams(e){super.checkGetterSetterParams(e);let t=this.getObjectOrClassMethodParams(e);if(t.length>0){let s=t[0];this.isThisParam(s)&&e.kind==="get"?this.raise(L.GetterMayNotHaveThisParam,s):this.isThisParam(s)&&this.raise(L.SetterMayNotHaveThisParam,s)}}parsePropertyNamePrefixOperator(e){e.variance=this.flowParseVariance()}parseObjPropValue(e,t,s,i,a,o,l){e.variance&&this.unexpected(e.variance.loc.start),delete e.variance;let c;this.match(47)&&!o&&(c=this.flowParseTypeParameterDeclaration(),this.match(10)||this.unexpected());let p=super.parseObjPropValue(e,t,s,i,a,o,l);return c&&((p.value||p).typeParameters=c),p}parseAssignableListItemTypes(e){return this.eat(17)&&(e.type!=="Identifier"&&this.raise(L.PatternIsOptional,e),this.isThisParam(e)&&this.raise(L.ThisParamMayNotBeOptional,e),e.optional=!0),this.match(14)?e.typeAnnotation=this.flowParseTypeAnnotation():this.isThisParam(e)&&this.raise(L.ThisParamAnnotationRequired,e),this.match(29)&&this.isThisParam(e)&&this.raise(L.ThisParamNoDefault,e),this.resetEndLocation(e),e}parseMaybeDefault(e,t){let s=super.parseMaybeDefault(e,t);return s.type==="AssignmentPattern"&&s.typeAnnotation&&s.right.start<s.typeAnnotation.start&&this.raise(L.TypeBeforeInitializer,s.typeAnnotation),s}checkImportReflection(e){super.checkImportReflection(e),e.module&&e.importKind!=="value"&&this.raise(L.ImportReflectionHasImportType,e.specifiers[0].loc.start)}parseImportSpecifierLocal(e,t,s){t.local=Yr(e)?this.flowParseRestrictedIdentifier(!0,!0):this.parseIdentifier(),e.specifiers.push(this.finishImportSpecifier(t,s))}isPotentialImportPhase(e){if(super.isPotentialImportPhase(e))return!0;if(this.isContextual(130)){if(!e)return!0;let t=this.lookaheadCharCode();return t===123||t===42}return!e&&this.isContextual(87)}applyImportPhase(e,t,s,i){if(super.applyImportPhase(e,t,s,i),t){if(!s&&this.match(65))return;e.exportKind=s==="type"?s:"value"}else s==="type"&&this.match(55)&&this.unexpected(),e.importKind=s==="type"||s==="typeof"?s:"value"}parseImportSpecifier(e,t,s,i,a){let o=e.imported,l=null;o.type==="Identifier"&&(o.name==="type"?l="type":o.name==="typeof"&&(l="typeof"));let c=!1;if(this.isContextual(93)&&!this.isLookaheadContextual("as")){let u=this.parseIdentifier(!0);l!==null&&!xe(this.state.type)?(e.imported=u,e.importKind=l,e.local=Be(u)):(e.imported=o,e.importKind=null,e.local=this.parseIdentifier())}else{if(l!==null&&xe(this.state.type))e.imported=this.parseIdentifier(!0),e.importKind=l;else{if(t)throw this.raise(b.ImportBindingIsString,e,{importName:o.value});e.imported=o,e.importKind=null}this.eatContextual(93)?e.local=this.parseIdentifier():(c=!0,e.local=Be(e.imported))}let p=Yr(e);return s&&p&&this.raise(L.ImportTypeShorthandOnlyInPureImport,e),(s||p)&&this.checkReservedType(e.local.name,e.local.loc.start,!0),c&&!s&&!p&&this.checkReservedWord(e.local.name,e.loc.start,!0,!0),this.finishImportSpecifier(e,"ImportSpecifier")}parseBindingAtom(){switch(this.state.type){case 78:return this.parseIdentifier(!0);default:return super.parseBindingAtom()}}parseFunctionParams(e,t){let s=e.kind;s!=="get"&&s!=="set"&&this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration()),super.parseFunctionParams(e,t)}parseVarId(e,t){super.parseVarId(e,t),this.match(14)&&(e.id.typeAnnotation=this.flowParseTypeAnnotation(),this.resetEndLocation(e.id))}parseAsyncArrowFromCallExpression(e,t){if(this.match(14)){let s=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0,e.returnType=this.flowParseTypeAnnotation(),this.state.noAnonFunctionType=s}return super.parseAsyncArrowFromCallExpression(e,t)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}parseMaybeAssign(e,t){var s;let i=null,a;if(this.hasPlugin("jsx")&&(this.match(142)||this.match(47))){if(i=this.state.clone(),a=this.tryParse(()=>super.parseMaybeAssign(e,t),i),!a.error)return a.node;let{context:c}=this.state,p=c[c.length-1];(p===V.j_oTag||p===V.j_expr)&&c.pop()}if((s=a)!=null&&s.error||this.match(47)){var o,l;i=i||this.state.clone();let c,p=this.tryParse(h=>{var m;c=this.flowParseTypeParameterDeclaration();let d=this.forwardNoArrowParamsConversionAt(c,()=>{let f=super.parseMaybeAssign(e,t);return this.resetStartLocationFromNode(f,c),f});(m=d.extra)!=null&&m.parenthesized&&h();let g=this.maybeUnwrapTypeCastExpression(d);return g.type!=="ArrowFunctionExpression"&&h(),g.typeParameters=c,this.resetStartLocationFromNode(g,c),d},i),u=null;if(p.node&&this.maybeUnwrapTypeCastExpression(p.node).type==="ArrowFunctionExpression"){if(!p.error&&!p.aborted)return p.node.async&&this.raise(L.UnexpectedTypeParameterBeforeAsyncArrowFunction,c),p.node;u=p.node}if((o=a)!=null&&o.node)return this.state=a.failState,a.node;if(u)return this.state=p.failState,u;throw(l=a)!=null&&l.thrown?a.error:p.thrown?p.error:this.raise(L.UnexpectedTokenAfterTypeParameter,c)}return super.parseMaybeAssign(e,t)}parseArrow(e){if(this.match(14)){let t=this.tryParse(()=>{let s=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0;let i=this.startNode();return[i.typeAnnotation,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),this.state.noAnonFunctionType=s,this.canInsertSemicolon()&&this.unexpected(),this.match(19)||this.unexpected(),i});if(t.thrown)return null;t.error&&(this.state=t.failState),e.returnType=t.node.typeAnnotation?this.finishNode(t.node,"TypeAnnotation"):null}return super.parseArrow(e)}shouldParseArrow(e){return this.match(14)||super.shouldParseArrow(e)}setArrowFunctionParameters(e,t){this.state.noArrowParamsConversionAt.indexOf(e.start)!==-1?e.params=t:super.setArrowFunctionParameters(e,t)}checkParams(e,t,s,i=!0){if(!(s&&this.state.noArrowParamsConversionAt.indexOf(e.start)!==-1)){for(let a=0;a<e.params.length;a++)this.isThisParam(e.params[a])&&a>0&&this.raise(L.ThisParamMustBeFirst,e.params[a]);super.checkParams(e,t,s,i)}}parseParenAndDistinguishExpression(e){return super.parseParenAndDistinguishExpression(e&&this.state.noArrowAt.indexOf(this.state.start)===-1)}parseSubscripts(e,t,s){if(e.type==="Identifier"&&e.name==="async"&&this.state.noArrowAt.indexOf(t.index)!==-1){this.next();let i=this.startNodeAt(t);i.callee=e,i.arguments=super.parseCallExpressionArguments(11,!1),e=this.finishNode(i,"CallExpression")}else if(e.type==="Identifier"&&e.name==="async"&&this.match(47)){let i=this.state.clone(),a=this.tryParse(l=>this.parseAsyncArrowWithTypeParameters(t)||l(),i);if(!a.error&&!a.aborted)return a.node;let o=this.tryParse(()=>super.parseSubscripts(e,t,s),i);if(o.node&&!o.error)return o.node;if(a.node)return this.state=a.failState,a.node;if(o.node)return this.state=o.failState,o.node;throw a.error||o.error}return super.parseSubscripts(e,t,s)}parseSubscript(e,t,s,i){if(this.match(18)&&this.isLookaheadToken_lt()){if(i.optionalChainMember=!0,s)return i.stop=!0,e;this.next();let a=this.startNodeAt(t);return a.callee=e,a.typeArguments=this.flowParseTypeParameterInstantiation(),this.expect(10),a.arguments=this.parseCallExpressionArguments(11,!1),a.optional=!0,this.finishCallExpression(a,!0)}else if(!s&&this.shouldParseTypes()&&this.match(47)){let a=this.startNodeAt(t);a.callee=e;let o=this.tryParse(()=>(a.typeArguments=this.flowParseTypeParameterInstantiationCallOrNew(),this.expect(10),a.arguments=super.parseCallExpressionArguments(11,!1),i.optionalChainMember&&(a.optional=!1),this.finishCallExpression(a,i.optionalChainMember)));if(o.node)return o.error&&(this.state=o.failState),o.node}return super.parseSubscript(e,t,s,i)}parseNewCallee(e){super.parseNewCallee(e);let t=null;this.shouldParseTypes()&&this.match(47)&&(t=this.tryParse(()=>this.flowParseTypeParameterInstantiationCallOrNew()).node),e.typeArguments=t}parseAsyncArrowWithTypeParameters(e){let t=this.startNodeAt(e);if(this.parseFunctionParams(t,!1),!!this.parseArrow(t))return super.parseArrowExpression(t,void 0,!0)}readToken_mult_modulo(e){let t=this.input.charCodeAt(this.state.pos+1);if(e===42&&t===47&&this.state.hasFlowComment){this.state.hasFlowComment=!1,this.state.pos+=2,this.nextToken();return}super.readToken_mult_modulo(e)}readToken_pipe_amp(e){let t=this.input.charCodeAt(this.state.pos+1);if(e===124&&t===125){this.finishOp(9,2);return}super.readToken_pipe_amp(e)}parseTopLevel(e,t){let s=super.parseTopLevel(e,t);return this.state.hasFlowComment&&this.raise(L.UnterminatedFlowComment,this.state.curPosition()),s}skipBlockComment(){if(this.hasPlugin("flowComments")&&this.skipFlowComment()){if(this.state.hasFlowComment)throw this.raise(L.NestedFlowComment,this.state.startLoc);this.hasFlowCommentCompletion();let e=this.skipFlowComment();e&&(this.state.pos+=e,this.state.hasFlowComment=!0);return}return super.skipBlockComment(this.state.hasFlowComment?"*-/":"*/")}skipFlowComment(){let{pos:e}=this.state,t=2;for(;[32,9].includes(this.input.charCodeAt(e+t));)t++;let s=this.input.charCodeAt(t+e),i=this.input.charCodeAt(t+e+1);return s===58&&i===58?t+2:this.input.slice(t+e,t+e+12)==="flow-include"?t+12:s===58&&i!==58?t:!1}hasFlowCommentCompletion(){if(this.input.indexOf("*/",this.state.pos)===-1)throw this.raise(b.UnterminatedComment,this.state.curPosition())}flowEnumErrorBooleanMemberNotInitialized(e,{enumName:t,memberName:s}){this.raise(L.EnumBooleanMemberNotInitialized,e,{memberName:s,enumName:t})}flowEnumErrorInvalidMemberInitializer(e,t){return this.raise(t.explicitType?t.explicitType==="symbol"?L.EnumInvalidMemberInitializerSymbolType:L.EnumInvalidMemberInitializerPrimaryType:L.EnumInvalidMemberInitializerUnknownType,e,t)}flowEnumErrorNumberMemberNotInitialized(e,t){this.raise(L.EnumNumberMemberNotInitialized,e,t)}flowEnumErrorStringMemberInconsistentlyInitialized(e,t){this.raise(L.EnumStringMemberInconsistentlyInitialized,e,t)}flowEnumMemberInit(){let e=this.state.startLoc,t=()=>this.match(12)||this.match(8);switch(this.state.type){case 134:{let s=this.parseNumericLiteral(this.state.value);return t()?{type:"number",loc:s.loc.start,value:s}:{type:"invalid",loc:e}}case 133:{let s=this.parseStringLiteral(this.state.value);return t()?{type:"string",loc:s.loc.start,value:s}:{type:"invalid",loc:e}}case 85:case 86:{let s=this.parseBooleanLiteral(this.match(85));return t()?{type:"boolean",loc:s.loc.start,value:s}:{type:"invalid",loc:e}}default:return{type:"invalid",loc:e}}}flowEnumMemberRaw(){let e=this.state.startLoc,t=this.parseIdentifier(!0),s=this.eat(29)?this.flowEnumMemberInit():{type:"none",loc:e};return{id:t,init:s}}flowEnumCheckExplicitTypeMismatch(e,t,s){let{explicitType:i}=t;i!==null&&i!==s&&this.flowEnumErrorInvalidMemberInitializer(e,t)}flowEnumMembers({enumName:e,explicitType:t}){let s=new Set,i={booleanMembers:[],numberMembers:[],stringMembers:[],defaultedMembers:[]},a=!1;for(;!this.match(8);){if(this.eat(21)){a=!0;break}let o=this.startNode(),{id:l,init:c}=this.flowEnumMemberRaw(),p=l.name;if(p==="")continue;/^[a-z]/.test(p)&&this.raise(L.EnumInvalidMemberName,l,{memberName:p,suggestion:p[0].toUpperCase()+p.slice(1),enumName:e}),s.has(p)&&this.raise(L.EnumDuplicateMemberName,l,{memberName:p,enumName:e}),s.add(p);let u={enumName:e,explicitType:t,memberName:p};switch(o.id=l,c.type){case"boolean":{this.flowEnumCheckExplicitTypeMismatch(c.loc,u,"boolean"),o.init=c.value,i.booleanMembers.push(this.finishNode(o,"EnumBooleanMember"));break}case"number":{this.flowEnumCheckExplicitTypeMismatch(c.loc,u,"number"),o.init=c.value,i.numberMembers.push(this.finishNode(o,"EnumNumberMember"));break}case"string":{this.flowEnumCheckExplicitTypeMismatch(c.loc,u,"string"),o.init=c.value,i.stringMembers.push(this.finishNode(o,"EnumStringMember"));break}case"invalid":throw this.flowEnumErrorInvalidMemberInitializer(c.loc,u);case"none":switch(t){case"boolean":this.flowEnumErrorBooleanMemberNotInitialized(c.loc,u);break;case"number":this.flowEnumErrorNumberMemberNotInitialized(c.loc,u);break;default:i.defaultedMembers.push(this.finishNode(o,"EnumDefaultedMember"))}}this.match(8)||this.expect(12)}return{members:i,hasUnknownMembers:a}}flowEnumStringMembers(e,t,{enumName:s}){if(e.length===0)return t;if(t.length===0)return e;if(t.length>e.length){for(let i of e)this.flowEnumErrorStringMemberInconsistentlyInitialized(i,{enumName:s});return t}else{for(let i of t)this.flowEnumErrorStringMemberInconsistentlyInitialized(i,{enumName:s});return e}}flowEnumParseExplicitType({enumName:e}){if(!this.eatContextual(102))return null;if(!B(this.state.type))throw this.raise(L.EnumInvalidExplicitTypeUnknownSupplied,this.state.startLoc,{enumName:e});let{value:t}=this.state;return this.next(),t!=="boolean"&&t!=="number"&&t!=="string"&&t!=="symbol"&&this.raise(L.EnumInvalidExplicitType,this.state.startLoc,{enumName:e,invalidEnumType:t}),t}flowEnumBody(e,t){let s=t.name,i=t.loc.start,a=this.flowEnumParseExplicitType({enumName:s});this.expect(5);let{members:o,hasUnknownMembers:l}=this.flowEnumMembers({enumName:s,explicitType:a});switch(e.hasUnknownMembers=l,a){case"boolean":return e.explicitType=!0,e.members=o.booleanMembers,this.expect(8),this.finishNode(e,"EnumBooleanBody");case"number":return e.explicitType=!0,e.members=o.numberMembers,this.expect(8),this.finishNode(e,"EnumNumberBody");case"string":return e.explicitType=!0,e.members=this.flowEnumStringMembers(o.stringMembers,o.defaultedMembers,{enumName:s}),this.expect(8),this.finishNode(e,"EnumStringBody");case"symbol":return e.members=o.defaultedMembers,this.expect(8),this.finishNode(e,"EnumSymbolBody");default:{let c=()=>(e.members=[],this.expect(8),this.finishNode(e,"EnumStringBody"));e.explicitType=!1;let p=o.booleanMembers.length,u=o.numberMembers.length,h=o.stringMembers.length,m=o.defaultedMembers.length;if(!p&&!u&&!h&&!m)return c();if(!p&&!u)return e.members=this.flowEnumStringMembers(o.stringMembers,o.defaultedMembers,{enumName:s}),this.expect(8),this.finishNode(e,"EnumStringBody");if(!u&&!h&&p>=m){for(let d of o.defaultedMembers)this.flowEnumErrorBooleanMemberNotInitialized(d.loc.start,{enumName:s,memberName:d.id.name});return e.members=o.booleanMembers,this.expect(8),this.finishNode(e,"EnumBooleanBody")}else if(!p&&!h&&u>=m){for(let d of o.defaultedMembers)this.flowEnumErrorNumberMemberNotInitialized(d.loc.start,{enumName:s,memberName:d.id.name});return e.members=o.numberMembers,this.expect(8),this.finishNode(e,"EnumNumberBody")}else return this.raise(L.EnumInconsistentMemberValues,i,{enumName:s}),c()}}}flowParseEnumDeclaration(e){let t=this.parseIdentifier();return e.id=t,e.body=this.flowEnumBody(this.startNode(),t),this.finishNode(e,"EnumDeclaration")}isLookaheadToken_lt(){let e=this.nextTokenStart();if(this.input.charCodeAt(e)===60){let t=this.input.charCodeAt(e+1);return t!==60&&t!==61}return!1}maybeUnwrapTypeCastExpression(e){return e.type==="TypeCastExpression"?e.expression:e}},ml={__proto__:null,quot:'"',amp:"&",apos:"'",lt:"<",gt:">",nbsp:"\xA0",iexcl:"\xA1",cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",brvbar:"\xA6",sect:"\xA7",uml:"\xA8",copy:"\xA9",ordf:"\xAA",laquo:"\xAB",not:"\xAC",shy:"\xAD",reg:"\xAE",macr:"\xAF",deg:"\xB0",plusmn:"\xB1",sup2:"\xB2",sup3:"\xB3",acute:"\xB4",micro:"\xB5",para:"\xB6",middot:"\xB7",cedil:"\xB8",sup1:"\xB9",ordm:"\xBA",raquo:"\xBB",frac14:"\xBC",frac12:"\xBD",frac34:"\xBE",iquest:"\xBF",Agrave:"\xC0",Aacute:"\xC1",Acirc:"\xC2",Atilde:"\xC3",Auml:"\xC4",Aring:"\xC5",AElig:"\xC6",Ccedil:"\xC7",Egrave:"\xC8",Eacute:"\xC9",Ecirc:"\xCA",Euml:"\xCB",Igrave:"\xCC",Iacute:"\xCD",Icirc:"\xCE",Iuml:"\xCF",ETH:"\xD0",Ntilde:"\xD1",Ograve:"\xD2",Oacute:"\xD3",Ocirc:"\xD4",Otilde:"\xD5",Ouml:"\xD6",times:"\xD7",Oslash:"\xD8",Ugrave:"\xD9",Uacute:"\xDA",Ucirc:"\xDB",Uuml:"\xDC",Yacute:"\xDD",THORN:"\xDE",szlig:"\xDF",agrave:"\xE0",aacute:"\xE1",acirc:"\xE2",atilde:"\xE3",auml:"\xE4",aring:"\xE5",aelig:"\xE6",ccedil:"\xE7",egrave:"\xE8",eacute:"\xE9",ecirc:"\xEA",euml:"\xEB",igrave:"\xEC",iacute:"\xED",icirc:"\xEE",iuml:"\xEF",eth:"\xF0",ntilde:"\xF1",ograve:"\xF2",oacute:"\xF3",ocirc:"\xF4",otilde:"\xF5",ouml:"\xF6",divide:"\xF7",oslash:"\xF8",ugrave:"\xF9",uacute:"\xFA",ucirc:"\xFB",uuml:"\xFC",yacute:"\xFD",thorn:"\xFE",yuml:"\xFF",OElig:"\u0152",oelig:"\u0153",Scaron:"\u0160",scaron:"\u0161",Yuml:"\u0178",fnof:"\u0192",circ:"\u02C6",tilde:"\u02DC",Alpha:"\u0391",Beta:"\u0392",Gamma:"\u0393",Delta:"\u0394",Epsilon:"\u0395",Zeta:"\u0396",Eta:"\u0397",Theta:"\u0398",Iota:"\u0399",Kappa:"\u039A",Lambda:"\u039B",Mu:"\u039C",Nu:"\u039D",Xi:"\u039E",Omicron:"\u039F",Pi:"\u03A0",Rho:"\u03A1",Sigma:"\u03A3",Tau:"\u03A4",Upsilon:"\u03A5",Phi:"\u03A6",Chi:"\u03A7",Psi:"\u03A8",Omega:"\u03A9",alpha:"\u03B1",beta:"\u03B2",gamma:"\u03B3",delta:"\u03B4",epsilon:"\u03B5",zeta:"\u03B6",eta:"\u03B7",theta:"\u03B8",iota:"\u03B9",kappa:"\u03BA",lambda:"\u03BB",mu:"\u03BC",nu:"\u03BD",xi:"\u03BE",omicron:"\u03BF",pi:"\u03C0",rho:"\u03C1",sigmaf:"\u03C2",sigma:"\u03C3",tau:"\u03C4",upsilon:"\u03C5",phi:"\u03C6",chi:"\u03C7",psi:"\u03C8",omega:"\u03C9",thetasym:"\u03D1",upsih:"\u03D2",piv:"\u03D6",ensp:"\u2002",emsp:"\u2003",thinsp:"\u2009",zwnj:"\u200C",zwj:"\u200D",lrm:"\u200E",rlm:"\u200F",ndash:"\u2013",mdash:"\u2014",lsquo:"\u2018",rsquo:"\u2019",sbquo:"\u201A",ldquo:"\u201C",rdquo:"\u201D",bdquo:"\u201E",dagger:"\u2020",Dagger:"\u2021",bull:"\u2022",hellip:"\u2026",permil:"\u2030",prime:"\u2032",Prime:"\u2033",lsaquo:"\u2039",rsaquo:"\u203A",oline:"\u203E",frasl:"\u2044",euro:"\u20AC",image:"\u2111",weierp:"\u2118",real:"\u211C",trade:"\u2122",alefsym:"\u2135",larr:"\u2190",uarr:"\u2191",rarr:"\u2192",darr:"\u2193",harr:"\u2194",crarr:"\u21B5",lArr:"\u21D0",uArr:"\u21D1",rArr:"\u21D2",dArr:"\u21D3",hArr:"\u21D4",forall:"\u2200",part:"\u2202",exist:"\u2203",empty:"\u2205",nabla:"\u2207",isin:"\u2208",notin:"\u2209",ni:"\u220B",prod:"\u220F",sum:"\u2211",minus:"\u2212",lowast:"\u2217",radic:"\u221A",prop:"\u221D",infin:"\u221E",ang:"\u2220",and:"\u2227",or:"\u2228",cap:"\u2229",cup:"\u222A",int:"\u222B",there4:"\u2234",sim:"\u223C",cong:"\u2245",asymp:"\u2248",ne:"\u2260",equiv:"\u2261",le:"\u2264",ge:"\u2265",sub:"\u2282",sup:"\u2283",nsub:"\u2284",sube:"\u2286",supe:"\u2287",oplus:"\u2295",otimes:"\u2297",perp:"\u22A5",sdot:"\u22C5",lceil:"\u2308",rceil:"\u2309",lfloor:"\u230A",rfloor:"\u230B",lang:"\u2329",rang:"\u232A",loz:"\u25CA",spades:"\u2660",clubs:"\u2663",hearts:"\u2665",diams:"\u2666"},Xe=Re`jsx`({AttributeIsEmpty:"JSX attributes must only be assigned a non-empty expression.",MissingClosingTagElement:({openingTagName:r})=>`Expected corresponding JSX closing tag for <${r}>.`,MissingClosingTagFragment:"Expected corresponding JSX closing tag for <>.",UnexpectedSequenceExpression:"Sequence expressions cannot be directly nested inside JSX. Did you mean to wrap it in parentheses (...)?",UnexpectedToken:({unexpected:r,HTMLEntity:n})=>`Unexpected token \`${r}\`. Did you mean \`${n}\` or \`{'${r}'}\`?`,UnsupportedJsxValue:"JSX value should be either an expression or a quoted JSX text.",UnterminatedJsxContent:"Unterminated JSX contents.",UnwrappedAdjacentJSXElements:"Adjacent JSX elements must be wrapped in an enclosing tag. Did you want a JSX fragment <>...</>?"});function $e(r){return r?r.type==="JSXOpeningFragment"||r.type==="JSXClosingFragment":!1}function ct(r){if(r.type==="JSXIdentifier")return r.name;if(r.type==="JSXNamespacedName")return r.namespace.name+":"+r.name.name;if(r.type==="JSXMemberExpression")return ct(r.object)+"."+ct(r.property);throw new Error("Node had unexpected type: "+r.type)}var bl=r=>class extends r{jsxReadToken(){let e="",t=this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(Xe.UnterminatedJsxContent,this.state.startLoc);let s=this.input.charCodeAt(this.state.pos);switch(s){case 60:case 123:if(this.state.pos===this.state.start){s===60&&this.state.canStartJSXElement?(++this.state.pos,this.finishToken(142)):super.getTokenFromCode(s);return}e+=this.input.slice(t,this.state.pos),this.finishToken(141,e);return;case 38:e+=this.input.slice(t,this.state.pos),e+=this.jsxReadEntity(),t=this.state.pos;break;case 62:case 125:default:Rt(s)?(e+=this.input.slice(t,this.state.pos),e+=this.jsxReadNewLine(!0),t=this.state.pos):++this.state.pos}}}jsxReadNewLine(e){let t=this.input.charCodeAt(this.state.pos),s;return++this.state.pos,t===13&&this.input.charCodeAt(this.state.pos)===10?(++this.state.pos,s=e?`
6
+ `);case 114:return o("\r");case 120:{let c;return{code:c,pos:n}=Ts(r,n,e,t,2,!1,a,i),o(c===null?null:String.fromCharCode(c))}case 117:{let c;return{code:c,pos:n}=gi(r,n,e,t,a,i),o(c===null?null:String.fromCodePoint(c))}case 116:return o(" ");case 98:return o("\b");case 118:return o("\v");case 102:return o("\f");case 13:r.charCodeAt(n)===10&&++n;case 10:e=n,++t;case 8232:case 8233:return o("");case 56:case 57:if(s)return o(null);i.strictNumericEscape(n-1,e,t);default:if(l>=48&&l<=55){let c=n-1,u=r.slice(c,n+2).match(/^[0-7]+/)[0],f=parseInt(u,8);f>255&&(u=u.slice(0,-1),f=parseInt(u,8)),n+=u.length-1;let m=r.charCodeAt(n);if(u!=="0"||m===56||m===57){if(s)return o(null);i.strictNumericEscape(c,e,t)}return o(String.fromCharCode(f))}return o(String.fromCharCode(l))}}function Ts(r,n,e,t,s,i,a,o){let l=n,c;return{n:c,pos:n}=bi(r,n,e,t,16,s,i,!1,o,!a),c===null&&(a?o.invalidEscapeSequence(l,e,t):n=l-1),{code:c,pos:n}}function bi(r,n,e,t,s,i,a,o,l,c){let p=n,u=s===16?Xr.hex:Xr.decBinOct,f=s===16?fn.hex:s===10?fn.dec:s===8?fn.oct:fn.bin,m=!1,d=0;for(let g=0,h=i??1/0;g<h;++g){let v=r.charCodeAt(n),w;if(v===95&&o!=="bail"){let E=r.charCodeAt(n-1),x=r.charCodeAt(n+1);if(o){if(Number.isNaN(x)||!f(x)||u.has(E)||u.has(x)){if(c)return{n:null,pos:n};l.unexpectedNumericSeparator(n,e,t)}}else{if(c)return{n:null,pos:n};l.numericSeparatorInEscapeSequence(n,e,t)}++n;continue}if(v>=97?w=v-97+10:v>=65?w=v-65+10:el(v)?w=v-48:w=1/0,w>=s){if(w<=9&&c)return{n:null,pos:n};if(w<=9&&l.invalidDigit(n,e,t,s))w=0;else if(a)w=0,m=!0;else break}++n,d=d*s+w}return n===p||i!=null&&n-p!==i||m?{n:null,pos:n}:{n:d,pos:n}}function gi(r,n,e,t,s,i){let a=r.charCodeAt(n),o;if(a===123){if(++n,{code:o,pos:n}=Ts(r,n,e,t,r.indexOf("}",n)-n,!0,s,i),++n,o!==null&&o>1114111)if(s)i.invalidCodePoint(n,e,t);else return{code:null,pos:n}}else({code:o,pos:n}=Ts(r,n,e,t,4,!1,s,i));return{code:o,pos:n}}function Ft(r,n,e){return new ke(e,r-n,r)}var sl=new Set([103,109,115,105,121,117,100,118]),Ae=class{constructor(n){this.type=n.type,this.value=n.value,this.start=n.start,this.end=n.end,this.loc=new dt(n.startLoc,n.endLoc)}},ws=class extends xs{constructor(n,e){super(),this.isLookahead=void 0,this.tokens=[],this.errorHandlers_readInt={invalidDigit:(t,s,i,a)=>this.options.errorRecovery?(this.raise(b.InvalidDigit,Ft(t,s,i),{radix:a}),!0):!1,numericSeparatorInEscapeSequence:this.errorBuilder(b.NumericSeparatorInEscapeSequence),unexpectedNumericSeparator:this.errorBuilder(b.UnexpectedNumericSeparator)},this.errorHandlers_readCodePoint=Object.assign({},this.errorHandlers_readInt,{invalidEscapeSequence:this.errorBuilder(b.InvalidEscapeSequence),invalidCodePoint:this.errorBuilder(b.InvalidCodePoint)}),this.errorHandlers_readStringContents_string=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:(t,s,i)=>{this.recordStrictModeErrors(b.StrictNumericEscape,Ft(t,s,i))},unterminated:(t,s,i)=>{throw this.raise(b.UnterminatedString,Ft(t-1,s,i))}}),this.errorHandlers_readStringContents_template=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:this.errorBuilder(b.StrictNumericEscape),unterminated:(t,s,i)=>{throw this.raise(b.UnterminatedTemplate,Ft(t,s,i))}}),this.state=new Ps,this.state.init(n),this.input=e,this.length=e.length,this.comments=[],this.isLookahead=!1}pushToken(n){this.tokens.length=this.state.tokensLength,this.tokens.push(n),++this.state.tokensLength}next(){this.checkKeywordEscapes(),this.options.tokens&&this.pushToken(new Ae(this.state)),this.state.lastTokEndLoc=this.state.endLoc,this.state.lastTokStartLoc=this.state.startLoc,this.nextToken()}eat(n){return this.match(n)?(this.next(),!0):!1}match(n){return this.state.type===n}createLookaheadState(n){return{pos:n.pos,value:null,type:n.type,start:n.start,end:n.end,context:[this.curContext()],inType:n.inType,startLoc:n.startLoc,lastTokEndLoc:n.lastTokEndLoc,curLine:n.curLine,lineStart:n.lineStart,curPosition:n.curPosition}}lookahead(){let n=this.state;this.state=this.createLookaheadState(n),this.isLookahead=!0,this.nextToken(),this.isLookahead=!1;let e=this.state;return this.state=n,e}nextTokenStart(){return this.nextTokenStartSince(this.state.pos)}nextTokenStartSince(n){return us.lastIndex=n,us.test(this.input)?us.lastIndex:n}lookaheadCharCode(){return this.input.charCodeAt(this.nextTokenStart())}nextTokenInLineStart(){return this.nextTokenInLineStartSince(this.state.pos)}nextTokenInLineStartSince(n){return bn.lastIndex=n,bn.test(this.input)?bn.lastIndex:n}lookaheadInLineCharCode(){return this.input.charCodeAt(this.nextTokenInLineStart())}codePointAtPos(n){let e=this.input.charCodeAt(n);if((e&64512)===55296&&++n<this.input.length){let t=this.input.charCodeAt(n);(t&64512)===56320&&(e=65536+((e&1023)<<10)+(t&1023))}return e}setStrict(n){this.state.strict=n,n&&(this.state.strictErrors.forEach(([e,t])=>this.raise(e,t)),this.state.strictErrors.clear())}curContext(){return this.state.context[this.state.context.length-1]}nextToken(){if(this.skipSpace(),this.state.start=this.state.pos,this.isLookahead||(this.state.startLoc=this.state.curPosition()),this.state.pos>=this.length){this.finishToken(139);return}this.getTokenFromCode(this.codePointAtPos(this.state.pos))}skipBlockComment(n){let e;this.isLookahead||(e=this.state.curPosition());let t=this.state.pos,s=this.input.indexOf(n,t+2);if(s===-1)throw this.raise(b.UnterminatedComment,this.state.curPosition());for(this.state.pos=s+n.length,dn.lastIndex=t+2;dn.test(this.input)&&dn.lastIndex<=s;)++this.state.curLine,this.state.lineStart=dn.lastIndex;if(this.isLookahead)return;let i={type:"CommentBlock",value:this.input.slice(t+2,s),start:t,end:s+n.length,loc:new dt(e,this.state.curPosition())};return this.options.tokens&&this.pushToken(i),i}skipLineComment(n){let e=this.state.pos,t;this.isLookahead||(t=this.state.curPosition());let s=this.input.charCodeAt(this.state.pos+=n);if(this.state.pos<this.length)for(;!Rt(s)&&++this.state.pos<this.length;)s=this.input.charCodeAt(this.state.pos);if(this.isLookahead)return;let i=this.state.pos,o={type:"CommentLine",value:this.input.slice(e+n,i),start:e,end:i,loc:new dt(t,this.state.curPosition())};return this.options.tokens&&this.pushToken(o),o}skipSpace(){let n=this.state.pos,e=[];e:for(;this.state.pos<this.length;){let t=this.input.charCodeAt(this.state.pos);switch(t){case 32:case 160:case 9:++this.state.pos;break;case 13:this.input.charCodeAt(this.state.pos+1)===10&&++this.state.pos;case 10:case 8232:case 8233:++this.state.pos,++this.state.curLine,this.state.lineStart=this.state.pos;break;case 47:switch(this.input.charCodeAt(this.state.pos+1)){case 42:{let s=this.skipBlockComment("*/");s!==void 0&&(this.addComment(s),this.options.attachComment&&e.push(s));break}case 47:{let s=this.skipLineComment(2);s!==void 0&&(this.addComment(s),this.options.attachComment&&e.push(s));break}default:break e}break;default:if(Zo(t))++this.state.pos;else if(t===45&&!this.inModule&&this.options.annexB){let s=this.state.pos;if(this.input.charCodeAt(s+1)===45&&this.input.charCodeAt(s+2)===62&&(n===0||this.state.lineStart>n)){let i=this.skipLineComment(3);i!==void 0&&(this.addComment(i),this.options.attachComment&&e.push(i))}else break e}else if(t===60&&!this.inModule&&this.options.annexB){let s=this.state.pos;if(this.input.charCodeAt(s+1)===33&&this.input.charCodeAt(s+2)===45&&this.input.charCodeAt(s+3)===45){let i=this.skipLineComment(4);i!==void 0&&(this.addComment(i),this.options.attachComment&&e.push(i))}else break e}else break e}}if(e.length>0){let t=this.state.pos,s={start:n,end:t,comments:e,leadingNode:null,trailingNode:null,containingNode:null};this.state.commentStack.push(s)}}finishToken(n,e){this.state.end=this.state.pos,this.state.endLoc=this.state.curPosition();let t=this.state.type;this.state.type=n,this.state.value=e,this.isLookahead||this.updateContext(t)}replaceToken(n){this.state.type=n,this.updateContext()}readToken_numberSign(){if(this.state.pos===0&&this.readToken_interpreter())return;let n=this.state.pos+1,e=this.codePointAtPos(n);if(e>=48&&e<=57)throw this.raise(b.UnexpectedDigitAfterHash,this.state.curPosition());if(e===123||e===91&&this.hasPlugin("recordAndTuple")){if(this.expectPlugin("recordAndTuple"),this.getPluginOption("recordAndTuple","syntaxType")==="bar")throw this.raise(e===123?b.RecordExpressionHashIncorrectStartSyntaxType:b.TupleExpressionHashIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,e===123?this.finishToken(7):this.finishToken(1)}else _e(e)?(++this.state.pos,this.finishToken(138,this.readWord1(e))):e===92?(++this.state.pos,this.finishToken(138,this.readWord1())):this.finishOp(27,1)}readToken_dot(){let n=this.input.charCodeAt(this.state.pos+1);if(n>=48&&n<=57){this.readNumber(!0);return}n===46&&this.input.charCodeAt(this.state.pos+2)===46?(this.state.pos+=3,this.finishToken(21)):(++this.state.pos,this.finishToken(16))}readToken_slash(){this.input.charCodeAt(this.state.pos+1)===61?this.finishOp(31,2):this.finishOp(56,1)}readToken_interpreter(){if(this.state.pos!==0||this.length<2)return!1;let n=this.input.charCodeAt(this.state.pos+1);if(n!==33)return!1;let e=this.state.pos;for(this.state.pos+=1;!Rt(n)&&++this.state.pos<this.length;)n=this.input.charCodeAt(this.state.pos);let t=this.input.slice(e+2,this.state.pos);return this.finishToken(28,t),!0}readToken_mult_modulo(n){let e=n===42?55:54,t=1,s=this.input.charCodeAt(this.state.pos+1);n===42&&s===42&&(t++,s=this.input.charCodeAt(this.state.pos+2),e=57),s===61&&!this.state.inType&&(t++,e=n===37?33:30),this.finishOp(e,t)}readToken_pipe_amp(n){let e=this.input.charCodeAt(this.state.pos+1);if(e===n){this.input.charCodeAt(this.state.pos+2)===61?this.finishOp(30,3):this.finishOp(n===124?41:42,2);return}if(n===124){if(e===62){this.finishOp(39,2);return}if(this.hasPlugin("recordAndTuple")&&e===125){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(b.RecordExpressionBarIncorrectEndSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(9);return}if(this.hasPlugin("recordAndTuple")&&e===93){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(b.TupleExpressionBarIncorrectEndSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(4);return}}if(e===61){this.finishOp(30,2);return}this.finishOp(n===124?43:45,1)}readToken_caret(){let n=this.input.charCodeAt(this.state.pos+1);n===61&&!this.state.inType?this.finishOp(32,2):n===94&&this.hasPlugin(["pipelineOperator",{proposal:"hack",topicToken:"^^"}])?(this.finishOp(37,2),this.input.codePointAt(this.state.pos)===94&&this.unexpected()):this.finishOp(44,1)}readToken_atSign(){this.input.charCodeAt(this.state.pos+1)===64&&this.hasPlugin(["pipelineOperator",{proposal:"hack",topicToken:"@@"}])?this.finishOp(38,2):this.finishOp(26,1)}readToken_plus_min(n){let e=this.input.charCodeAt(this.state.pos+1);if(e===n){this.finishOp(34,2);return}e===61?this.finishOp(30,2):this.finishOp(53,1)}readToken_lt(){let{pos:n}=this.state,e=this.input.charCodeAt(n+1);if(e===60){if(this.input.charCodeAt(n+2)===61){this.finishOp(30,3);return}this.finishOp(51,2);return}if(e===61){this.finishOp(49,2);return}this.finishOp(47,1)}readToken_gt(){let{pos:n}=this.state,e=this.input.charCodeAt(n+1);if(e===62){let t=this.input.charCodeAt(n+2)===62?3:2;if(this.input.charCodeAt(n+t)===61){this.finishOp(30,t+1);return}this.finishOp(52,t);return}if(e===61){this.finishOp(49,2);return}this.finishOp(48,1)}readToken_eq_excl(n){let e=this.input.charCodeAt(this.state.pos+1);if(e===61){this.finishOp(46,this.input.charCodeAt(this.state.pos+2)===61?3:2);return}if(n===61&&e===62){this.state.pos+=2,this.finishToken(19);return}this.finishOp(n===61?29:35,1)}readToken_question(){let n=this.input.charCodeAt(this.state.pos+1),e=this.input.charCodeAt(this.state.pos+2);n===63?e===61?this.finishOp(30,3):this.finishOp(40,2):n===46&&!(e>=48&&e<=57)?(this.state.pos+=2,this.finishToken(18)):(++this.state.pos,this.finishToken(17))}getTokenFromCode(n){switch(n){case 46:this.readToken_dot();return;case 40:++this.state.pos,this.finishToken(10);return;case 41:++this.state.pos,this.finishToken(11);return;case 59:++this.state.pos,this.finishToken(13);return;case 44:++this.state.pos,this.finishToken(12);return;case 91:if(this.hasPlugin("recordAndTuple")&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(b.TupleExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(2)}else++this.state.pos,this.finishToken(0);return;case 93:++this.state.pos,this.finishToken(3);return;case 123:if(this.hasPlugin("recordAndTuple")&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(b.RecordExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(6)}else++this.state.pos,this.finishToken(5);return;case 125:++this.state.pos,this.finishToken(8);return;case 58:this.hasPlugin("functionBind")&&this.input.charCodeAt(this.state.pos+1)===58?this.finishOp(15,2):(++this.state.pos,this.finishToken(14));return;case 63:this.readToken_question();return;case 96:this.readTemplateToken();return;case 48:{let e=this.input.charCodeAt(this.state.pos+1);if(e===120||e===88){this.readRadixNumber(16);return}if(e===111||e===79){this.readRadixNumber(8);return}if(e===98||e===66){this.readRadixNumber(2);return}}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:this.readNumber(!1);return;case 34:case 39:this.readString(n);return;case 47:this.readToken_slash();return;case 37:case 42:this.readToken_mult_modulo(n);return;case 124:case 38:this.readToken_pipe_amp(n);return;case 94:this.readToken_caret();return;case 43:case 45:this.readToken_plus_min(n);return;case 60:this.readToken_lt();return;case 62:this.readToken_gt();return;case 61:case 33:this.readToken_eq_excl(n);return;case 126:this.finishOp(36,1);return;case 64:this.readToken_atSign();return;case 35:this.readToken_numberSign();return;case 92:this.readWord();return;default:if(_e(n)){this.readWord(n);return}}throw this.raise(b.InvalidOrUnexpectedToken,this.state.curPosition(),{unexpected:String.fromCodePoint(n)})}finishOp(n,e){let t=this.input.slice(this.state.pos,this.state.pos+e);this.state.pos+=e,this.finishToken(n,t)}readRegexp(){let n=this.state.startLoc,e=this.state.start+1,t,s,{pos:i}=this.state;for(;;++i){if(i>=this.length)throw this.raise(b.UnterminatedRegExp,re(n,1));let c=this.input.charCodeAt(i);if(Rt(c))throw this.raise(b.UnterminatedRegExp,re(n,1));if(t)t=!1;else{if(c===91)s=!0;else if(c===93&&s)s=!1;else if(c===47&&!s)break;t=c===92}}let a=this.input.slice(e,i);++i;let o="",l=()=>re(n,i+2-e);for(;i<this.length;){let c=this.codePointAtPos(i),p=String.fromCharCode(c);if(sl.has(c))c===118?o.includes("u")&&this.raise(b.IncompatibleRegExpUVFlags,l()):c===117&&o.includes("v")&&this.raise(b.IncompatibleRegExpUVFlags,l()),o.includes(p)&&this.raise(b.DuplicateRegExpFlags,l());else if(pt(c)||c===92)this.raise(b.MalformedRegExpFlags,l());else break;++i,o+=p}this.state.pos=i,this.finishToken(137,{pattern:a,flags:o})}readInt(n,e,t=!1,s=!0){let{n:i,pos:a}=bi(this.input,this.state.pos,this.state.lineStart,this.state.curLine,n,e,t,s,this.errorHandlers_readInt,!1);return this.state.pos=a,i}readRadixNumber(n){let e=this.state.curPosition(),t=!1;this.state.pos+=2;let s=this.readInt(n);s==null&&this.raise(b.InvalidDigit,re(e,2),{radix:n});let i=this.input.charCodeAt(this.state.pos);if(i===110)++this.state.pos,t=!0;else if(i===109)throw this.raise(b.InvalidDecimal,e);if(_e(this.codePointAtPos(this.state.pos)))throw this.raise(b.NumberIdentifier,this.state.curPosition());if(t){let a=this.input.slice(e.index,this.state.pos).replace(/[_n]/g,"");this.finishToken(135,a);return}this.finishToken(134,s)}readNumber(n){let e=this.state.pos,t=this.state.curPosition(),s=!1,i=!1,a=!1,o=!1,l=!1;!n&&this.readInt(10)===null&&this.raise(b.InvalidNumber,this.state.curPosition());let c=this.state.pos-e>=2&&this.input.charCodeAt(e)===48;if(c){let m=this.input.slice(e,this.state.pos);if(this.recordStrictModeErrors(b.StrictOctalLiteral,t),!this.state.strict){let d=m.indexOf("_");d>0&&this.raise(b.ZeroDigitNumericSeparator,re(t,d))}l=c&&!/[89]/.test(m)}let p=this.input.charCodeAt(this.state.pos);if(p===46&&!l&&(++this.state.pos,this.readInt(10),s=!0,p=this.input.charCodeAt(this.state.pos)),(p===69||p===101)&&!l&&(p=this.input.charCodeAt(++this.state.pos),(p===43||p===45)&&++this.state.pos,this.readInt(10)===null&&this.raise(b.InvalidOrMissingExponent,t),s=!0,o=!0,p=this.input.charCodeAt(this.state.pos)),p===110&&((s||c)&&this.raise(b.InvalidBigIntLiteral,t),++this.state.pos,i=!0),p===109&&(this.expectPlugin("decimal",this.state.curPosition()),(o||c)&&this.raise(b.InvalidDecimal,t),++this.state.pos,a=!0),_e(this.codePointAtPos(this.state.pos)))throw this.raise(b.NumberIdentifier,this.state.curPosition());let u=this.input.slice(e,this.state.pos).replace(/[_mn]/g,"");if(i){this.finishToken(135,u);return}if(a){this.finishToken(136,u);return}let f=l?parseInt(u,8):parseFloat(u);this.finishToken(134,f)}readCodePoint(n){let{code:e,pos:t}=gi(this.input,this.state.pos,this.state.lineStart,this.state.curLine,n,this.errorHandlers_readCodePoint);return this.state.pos=t,e}readString(n){let{str:e,pos:t,curLine:s,lineStart:i}=Qr(n===34?"double":"single",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_string);this.state.pos=t+1,this.state.lineStart=i,this.state.curLine=s,this.finishToken(133,e)}readTemplateContinuation(){this.match(8)||this.unexpected(null,8),this.state.pos--,this.readTemplateToken()}readTemplateToken(){let n=this.input[this.state.pos],{str:e,firstInvalidLoc:t,pos:s,curLine:i,lineStart:a}=Qr("template",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_template);this.state.pos=s+1,this.state.lineStart=a,this.state.curLine=i,t&&(this.state.firstInvalidTemplateEscapePos=new ke(t.curLine,t.pos-t.lineStart,t.pos)),this.input.codePointAt(s)===96?this.finishToken(24,t?null:n+e+"`"):(this.state.pos++,this.finishToken(25,t?null:n+e+"${"))}recordStrictModeErrors(n,e){let t=e.index;this.state.strict&&!this.state.strictErrors.has(t)?this.raise(n,e):this.state.strictErrors.set(t,[n,e])}readWord1(n){this.state.containsEsc=!1;let e="",t=this.state.pos,s=this.state.pos;for(n!==void 0&&(this.state.pos+=n<=65535?1:2);this.state.pos<this.length;){let i=this.codePointAtPos(this.state.pos);if(pt(i))this.state.pos+=i<=65535?1:2;else if(i===92){this.state.containsEsc=!0,e+=this.input.slice(s,this.state.pos);let a=this.state.curPosition(),o=this.state.pos===t?_e:pt;if(this.input.charCodeAt(++this.state.pos)!==117){this.raise(b.MissingUnicodeEscape,this.state.curPosition()),s=this.state.pos-1;continue}++this.state.pos;let l=this.readCodePoint(!0);l!==null&&(o(l)||this.raise(b.EscapedCharNotAnIdentifier,a),e+=String.fromCodePoint(l)),s=this.state.pos}else break}return e+this.input.slice(s,this.state.pos)}readWord(n){let e=this.readWord1(n),t=Fs.get(e);t!==void 0?this.finishToken(t,He(t)):this.finishToken(132,e)}checkKeywordEscapes(){let{type:n}=this.state;Vs(n)&&this.state.containsEsc&&this.raise(b.InvalidEscapedReservedWord,this.state.startLoc,{reservedWord:He(n)})}raise(n,e,t={}){let s=e instanceof ke?e:e.loc.start,i=n(s,t);if(!this.options.errorRecovery)throw i;return this.isLookahead||this.state.errors.push(i),i}raiseOverwrite(n,e,t={}){let s=e instanceof ke?e:e.loc.start,i=s.index,a=this.state.errors;for(let o=a.length-1;o>=0;o--){let l=a[o];if(l.loc.index===i)return a[o]=n(s,t);if(l.loc.index<i)break}return this.raise(n,e,t)}updateContext(n){}unexpected(n,e){throw this.raise(b.UnexpectedToken,n??this.state.startLoc,{expected:e?He(e):null})}expectPlugin(n,e){if(this.hasPlugin(n))return!0;throw this.raise(b.MissingPlugin,e??this.state.startLoc,{missingPlugin:[n]})}expectOnePlugin(n){if(!n.some(e=>this.hasPlugin(e)))throw this.raise(b.MissingOneOfPlugins,this.state.startLoc,{missingPlugin:n})}errorBuilder(n){return(e,t,s)=>{this.raise(n,Ft(e,t,s))}}},Cs=class{constructor(){this.privateNames=new Set,this.loneAccessors=new Map,this.undefinedPrivateNames=new Map}},Ss=class{constructor(n){this.parser=void 0,this.stack=[],this.undefinedPrivateNames=new Map,this.parser=n}current(){return this.stack[this.stack.length-1]}enter(){this.stack.push(new Cs)}exit(){let n=this.stack.pop(),e=this.current();for(let[t,s]of Array.from(n.undefinedPrivateNames))e?e.undefinedPrivateNames.has(t)||e.undefinedPrivateNames.set(t,s):this.parser.raise(b.InvalidPrivateFieldResolution,s,{identifierName:t})}declarePrivateName(n,e,t){let{privateNames:s,loneAccessors:i,undefinedPrivateNames:a}=this.current(),o=s.has(n);if(e&3){let l=o&&i.get(n);if(l){let c=l&4,p=e&4,u=l&3,f=e&3;o=u===f||c!==p,o||i.delete(n)}else o||i.set(n,e)}o&&this.parser.raise(b.PrivateNameRedeclaration,t,{identifierName:n}),s.add(n),a.delete(n)}usePrivateName(n,e){let t;for(t of this.stack)if(t.privateNames.has(n))return;t?t.undefinedPrivateNames.set(n,e):this.parser.raise(b.InvalidPrivateFieldResolution,e,{identifierName:n})}},ft=class{constructor(n=0){this.type=n}canBeArrowParameterDeclaration(){return this.type===2||this.type===1}isCertainlyParameterDeclaration(){return this.type===3}},xn=class extends ft{constructor(n){super(n),this.declarationErrors=new Map}recordDeclarationError(n,e){let t=e.index;this.declarationErrors.set(t,[n,e])}clearDeclarationError(n){this.declarationErrors.delete(n)}iterateErrors(n){this.declarationErrors.forEach(n)}},Is=class{constructor(n){this.parser=void 0,this.stack=[new ft],this.parser=n}enter(n){this.stack.push(n)}exit(){this.stack.pop()}recordParameterInitializerError(n,e){let t=e.loc.start,{stack:s}=this,i=s.length-1,a=s[i];for(;!a.isCertainlyParameterDeclaration();){if(a.canBeArrowParameterDeclaration())a.recordDeclarationError(n,t);else return;a=s[--i]}this.parser.raise(n,t)}recordArrowParameterBindingError(n,e){let{stack:t}=this,s=t[t.length-1],i=e.loc.start;if(s.isCertainlyParameterDeclaration())this.parser.raise(n,i);else if(s.canBeArrowParameterDeclaration())s.recordDeclarationError(n,i);else return}recordAsyncArrowParametersError(n){let{stack:e}=this,t=e.length-1,s=e[t];for(;s.canBeArrowParameterDeclaration();)s.type===2&&s.recordDeclarationError(b.AwaitBindingIdentifier,n),s=e[--t]}validateAsPattern(){let{stack:n}=this,e=n[n.length-1];e.canBeArrowParameterDeclaration()&&e.iterateErrors(([t,s])=>{this.parser.raise(t,s);let i=n.length-2,a=n[i];for(;a.canBeArrowParameterDeclaration();)a.clearDeclarationError(s.index),a=n[--i]})}};function rl(){return new ft(3)}function il(){return new xn(1)}function al(){return new xn(2)}function yi(){return new ft}var Es=class{constructor(){this.stacks=[]}enter(n){this.stacks.push(n)}exit(){this.stacks.pop()}currentFlags(){return this.stacks[this.stacks.length-1]}get hasAwait(){return(this.currentFlags()&2)>0}get hasYield(){return(this.currentFlags()&1)>0}get hasReturn(){return(this.currentFlags()&4)>0}get hasIn(){return(this.currentFlags()&8)>0}};function gn(r,n){return(r?2:0)|(n?1:0)}var As=class extends ws{addExtra(n,e,t,s=!0){if(!n)return;let i=n.extra=n.extra||{};s?i[e]=t:Object.defineProperty(i,e,{enumerable:s,value:t})}isContextual(n){return this.state.type===n&&!this.state.containsEsc}isUnparsedContextual(n,e){let t=n+e.length;if(this.input.slice(n,t)===e){let s=this.input.charCodeAt(t);return!(pt(s)||(s&64512)===55296)}return!1}isLookaheadContextual(n){let e=this.nextTokenStart();return this.isUnparsedContextual(e,n)}eatContextual(n){return this.isContextual(n)?(this.next(),!0):!1}expectContextual(n,e){if(!this.eatContextual(n)){if(e!=null)throw this.raise(e,this.state.startLoc);this.unexpected(null,n)}}canInsertSemicolon(){return this.match(139)||this.match(8)||this.hasPrecedingLineBreak()}hasPrecedingLineBreak(){return mi.test(this.input.slice(this.state.lastTokEndLoc.index,this.state.start))}hasFollowingLineBreak(){return Jr.lastIndex=this.state.end,Jr.test(this.input)}isLineTerminator(){return this.eat(13)||this.canInsertSemicolon()}semicolon(n=!0){(n?this.isLineTerminator():this.eat(13))||this.raise(b.MissingSemicolon,this.state.lastTokEndLoc)}expect(n,e){this.eat(n)||this.unexpected(e,n)}tryParse(n,e=this.state.clone()){let t={node:null};try{let s=n((i=null)=>{throw t.node=i,t});if(this.state.errors.length>e.errors.length){let i=this.state;return this.state=e,this.state.tokensLength=i.tokensLength,{node:s,error:i.errors[e.errors.length],thrown:!1,aborted:!1,failState:i}}return{node:s,error:null,thrown:!1,aborted:!1,failState:null}}catch(s){let i=this.state;if(this.state=e,s instanceof SyntaxError)return{node:null,error:s,thrown:!0,aborted:!1,failState:i};if(s===t)return{node:t.node,error:null,thrown:!1,aborted:!0,failState:i};throw s}}checkExpressionErrors(n,e){if(!n)return!1;let{shorthandAssignLoc:t,doubleProtoLoc:s,privateKeyLoc:i,optionalParametersLoc:a}=n,o=!!t||!!s||!!a||!!i;if(!e)return o;t!=null&&this.raise(b.InvalidCoverInitializedName,t),s!=null&&this.raise(b.DuplicateProto,s),i!=null&&this.raise(b.UnexpectedPrivateField,i),a!=null&&this.unexpected(a)}isLiteralPropertyName(){return oi(this.state.type)}isPrivateName(n){return n.type==="PrivateName"}getPrivateNameSV(n){return n.id.name}hasPropertyAsPrivateName(n){return(n.type==="MemberExpression"||n.type==="OptionalMemberExpression")&&this.isPrivateName(n.property)}isObjectProperty(n){return n.type==="ObjectProperty"}isObjectMethod(n){return n.type==="ObjectMethod"}initializeScopes(n=this.options.sourceType==="module"){let e=this.state.labels;this.state.labels=[];let t=this.exportedIdentifiers;this.exportedIdentifiers=new Set;let s=this.inModule;this.inModule=n;let i=this.scope,a=this.getScopeHandler();this.scope=new a(this,n);let o=this.prodParam;this.prodParam=new Es;let l=this.classScope;this.classScope=new Ss(this);let c=this.expressionScope;return this.expressionScope=new Is(this),()=>{this.state.labels=e,this.exportedIdentifiers=t,this.inModule=s,this.scope=i,this.prodParam=o,this.classScope=l,this.expressionScope=c}}enterInitialScopes(){let n=0;this.inModule&&(n|=2),this.scope.enter(1),this.prodParam.enter(n)}checkDestructuringPrivate(n){let{privateKeyLoc:e}=n;e!==null&&this.expectPlugin("destructuringPrivate",e)}},ut=class{constructor(){this.shorthandAssignLoc=null,this.doubleProtoLoc=null,this.privateKeyLoc=null,this.optionalParametersLoc=null}},ht=class{constructor(n,e,t){this.type="",this.start=e,this.end=0,this.loc=new dt(t),n!=null&&n.options.ranges&&(this.range=[e,0]),n!=null&&n.filename&&(this.loc.filename=n.filename)}},qs=ht.prototype;qs.__clone=function(){let r=new ht(void 0,this.start,this.loc.start),n=Object.keys(this);for(let e=0,t=n.length;e<t;e++){let s=n[e];s!=="leadingComments"&&s!=="trailingComments"&&s!=="innerComments"&&(r[s]=this[s])}return r};function ol(r){return Be(r)}function Be(r){let{type:n,start:e,end:t,loc:s,range:i,extra:a,name:o}=r,l=Object.create(qs);return l.type=n,l.start=e,l.end=t,l.loc=s,l.range=i,l.extra=a,l.name=o,n==="Placeholder"&&(l.expectedNode=r.expectedNode),l}function ll(r){let{type:n,start:e,end:t,loc:s,range:i,extra:a}=r;if(n==="Placeholder")return ol(r);let o=Object.create(qs);return o.type=n,o.start=e,o.end=t,o.loc=s,o.range=i,r.raw!==void 0?o.raw=r.raw:o.extra=a,o.value=r.value,o}var ks=class extends As{startNode(){let n=this.state.startLoc;return new ht(this,n.index,n)}startNodeAt(n){return new ht(this,n.index,n)}startNodeAtNode(n){return this.startNodeAt(n.loc.start)}finishNode(n,e){return this.finishNodeAt(n,e,this.state.lastTokEndLoc)}finishNodeAt(n,e,t){return n.type=e,n.end=t.index,n.loc.end=t,this.options.ranges&&(n.range[1]=t.index),this.options.attachComment&&this.processComment(n),n}resetStartLocation(n,e){n.start=e.index,n.loc.start=e,this.options.ranges&&(n.range[0]=e.index)}resetEndLocation(n,e=this.state.lastTokEndLoc){n.end=e.index,n.loc.end=e,this.options.ranges&&(n.range[1]=e.index)}resetStartLocationFromNode(n,e){this.resetStartLocation(n,e.loc.start)}},cl=new Set(["_","any","bool","boolean","empty","extends","false","interface","mixed","null","number","static","string","true","typeof","void"]),L=Re`flow`({AmbiguousConditionalArrow:"Ambiguous expression: wrap the arrow functions in parentheses to disambiguate.",AmbiguousDeclareModuleKind:"Found both `declare module.exports` and `declare export` in the same module. Modules can only have 1 since they are either an ES module or they are a CommonJS module.",AssignReservedType:({reservedType:r})=>`Cannot overwrite reserved type ${r}.`,DeclareClassElement:"The `declare` modifier can only appear on class fields.",DeclareClassFieldInitializer:"Initializers are not allowed in fields with the `declare` modifier.",DuplicateDeclareModuleExports:"Duplicate `declare module.exports` statement.",EnumBooleanMemberNotInitialized:({memberName:r,enumName:n})=>`Boolean enum members need to be initialized. Use either \`${r} = true,\` or \`${r} = false,\` in enum \`${n}\`.`,EnumDuplicateMemberName:({memberName:r,enumName:n})=>`Enum member names need to be unique, but the name \`${r}\` has already been used before in enum \`${n}\`.`,EnumInconsistentMemberValues:({enumName:r})=>`Enum \`${r}\` has inconsistent member initializers. Either use no initializers, or consistently use literals (either booleans, numbers, or strings) for all member initializers.`,EnumInvalidExplicitType:({invalidEnumType:r,enumName:n})=>`Enum type \`${r}\` is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${n}\`.`,EnumInvalidExplicitTypeUnknownSupplied:({enumName:r})=>`Supplied enum type is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${r}\`.`,EnumInvalidMemberInitializerPrimaryType:({enumName:r,memberName:n,explicitType:e})=>`Enum \`${r}\` has type \`${e}\`, so the initializer of \`${n}\` needs to be a ${e} literal.`,EnumInvalidMemberInitializerSymbolType:({enumName:r,memberName:n})=>`Symbol enum members cannot be initialized. Use \`${n},\` in enum \`${r}\`.`,EnumInvalidMemberInitializerUnknownType:({enumName:r,memberName:n})=>`The enum member initializer for \`${n}\` needs to be a literal (either a boolean, number, or string) in enum \`${r}\`.`,EnumInvalidMemberName:({enumName:r,memberName:n,suggestion:e})=>`Enum member names cannot start with lowercase 'a' through 'z'. Instead of using \`${n}\`, consider using \`${e}\`, in enum \`${r}\`.`,EnumNumberMemberNotInitialized:({enumName:r,memberName:n})=>`Number enum members need to be initialized, e.g. \`${n} = 1\` in enum \`${r}\`.`,EnumStringMemberInconsistentlyInitialized:({enumName:r})=>`String enum members need to consistently either all use initializers, or use no initializers, in enum \`${r}\`.`,GetterMayNotHaveThisParam:"A getter cannot have a `this` parameter.",ImportReflectionHasImportType:"An `import module` declaration can not use `type` or `typeof` keyword.",ImportTypeShorthandOnlyInPureImport:"The `type` and `typeof` keywords on named imports can only be used on regular `import` statements. It cannot be used with `import type` or `import typeof` statements.",InexactInsideExact:"Explicit inexact syntax cannot appear inside an explicit exact object type.",InexactInsideNonObject:"Explicit inexact syntax cannot appear in class or interface definitions.",InexactVariance:"Explicit inexact syntax cannot have variance.",InvalidNonTypeImportInDeclareModule:"Imports within a `declare module` body must always be `import type` or `import typeof`.",MissingTypeParamDefault:"Type parameter declaration needs a default, since a preceding type parameter declaration has a default.",NestedDeclareModule:"`declare module` cannot be used inside another `declare module`.",NestedFlowComment:"Cannot have a flow comment inside another flow comment.",PatternIsOptional:Object.assign({message:"A binding pattern parameter cannot be optional in an implementation signature."},{reasonCode:"OptionalBindingPattern"}),SetterMayNotHaveThisParam:"A setter cannot have a `this` parameter.",SpreadVariance:"Spread properties cannot have variance.",ThisParamAnnotationRequired:"A type annotation is required for the `this` parameter.",ThisParamBannedInConstructor:"Constructors cannot have a `this` parameter; constructors don't bind `this` like other functions.",ThisParamMayNotBeOptional:"The `this` parameter cannot be optional.",ThisParamMustBeFirst:"The `this` parameter must be the first function parameter.",ThisParamNoDefault:"The `this` parameter may not have a default value.",TypeBeforeInitializer:"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.",TypeCastInPattern:"The type cast expression is expected to be wrapped with parenthesis.",UnexpectedExplicitInexactInObject:"Explicit inexact syntax must appear at the end of an inexact object.",UnexpectedReservedType:({reservedType:r})=>`Unexpected reserved type ${r}.`,UnexpectedReservedUnderscore:"`_` is only allowed as a type argument to call or new.",UnexpectedSpaceBetweenModuloChecks:"Spaces between `%` and `checks` are not allowed here.",UnexpectedSpreadType:"Spread operator cannot appear in class or interface definitions.",UnexpectedSubtractionOperand:'Unexpected token, expected "number" or "bigint".',UnexpectedTokenAfterTypeParameter:"Expected an arrow function after this type parameter declaration.",UnexpectedTypeParameterBeforeAsyncArrowFunction:"Type parameters must come after the async keyword, e.g. instead of `<T> async () => {}`, use `async <T>() => {}`.",UnsupportedDeclareExportKind:({unsupportedExportKind:r,suggestion:n})=>`\`declare export ${r}\` is not supported. Use \`${n}\` instead.`,UnsupportedStatementInDeclareModule:"Only declares and type imports are allowed inside declare module.",UnterminatedFlowComment:"Unterminated flow-comment."});function pl(r){return r.type==="DeclareExportAllDeclaration"||r.type==="DeclareExportDeclaration"&&(!r.declaration||r.declaration.type!=="TypeAlias"&&r.declaration.type!=="InterfaceDeclaration")}function Yr(r){return r.importKind==="type"||r.importKind==="typeof"}var ul={const:"declare export var",let:"declare export var",type:"export type",interface:"export interface"};function dl(r,n){let e=[],t=[];for(let s=0;s<r.length;s++)(n(r[s],s,r)?e:t).push(r[s]);return[e,t]}var fl=/\*?\s*@((?:no)?flow)\b/,hl=r=>class extends r{constructor(...e){super(...e),this.flowPragma=void 0}getScopeHandler(){return ys}shouldParseTypes(){return this.getPluginOption("flow","all")||this.flowPragma==="flow"}shouldParseEnums(){return!!this.getPluginOption("flow","enums")}finishToken(e,t){e!==133&&e!==13&&e!==28&&this.flowPragma===void 0&&(this.flowPragma=null),super.finishToken(e,t)}addComment(e){if(this.flowPragma===void 0){let t=fl.exec(e.value);if(t)if(t[1]==="flow")this.flowPragma="flow";else if(t[1]==="noflow")this.flowPragma="noflow";else throw new Error("Unexpected flow pragma")}super.addComment(e)}flowParseTypeInitialiser(e){let t=this.state.inType;this.state.inType=!0,this.expect(e||14);let s=this.flowParseType();return this.state.inType=t,s}flowParsePredicate(){let e=this.startNode(),t=this.state.startLoc;return this.next(),this.expectContextual(110),this.state.lastTokStartLoc.index>t.index+1&&this.raise(L.UnexpectedSpaceBetweenModuloChecks,t),this.eat(10)?(e.value=super.parseExpression(),this.expect(11),this.finishNode(e,"DeclaredPredicate")):this.finishNode(e,"InferredPredicate")}flowParseTypeAndPredicateInitialiser(){let e=this.state.inType;this.state.inType=!0,this.expect(14);let t=null,s=null;return this.match(54)?(this.state.inType=e,s=this.flowParsePredicate()):(t=this.flowParseType(),this.state.inType=e,this.match(54)&&(s=this.flowParsePredicate())),[t,s]}flowParseDeclareClass(e){return this.next(),this.flowParseInterfaceish(e,!0),this.finishNode(e,"DeclareClass")}flowParseDeclareFunction(e){this.next();let t=e.id=this.parseIdentifier(),s=this.startNode(),i=this.startNode();this.match(47)?s.typeParameters=this.flowParseTypeParameterDeclaration():s.typeParameters=null,this.expect(10);let a=this.flowParseFunctionTypeParams();return s.params=a.params,s.rest=a.rest,s.this=a._this,this.expect(11),[s.returnType,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),i.typeAnnotation=this.finishNode(s,"FunctionTypeAnnotation"),t.typeAnnotation=this.finishNode(i,"TypeAnnotation"),this.resetEndLocation(t),this.semicolon(),this.scope.declareName(e.id.name,2048,e.id.loc.start),this.finishNode(e,"DeclareFunction")}flowParseDeclare(e,t){if(this.match(80))return this.flowParseDeclareClass(e);if(this.match(68))return this.flowParseDeclareFunction(e);if(this.match(74))return this.flowParseDeclareVariable(e);if(this.eatContextual(127))return this.match(16)?this.flowParseDeclareModuleExports(e):(t&&this.raise(L.NestedDeclareModule,this.state.lastTokStartLoc),this.flowParseDeclareModule(e));if(this.isContextual(130))return this.flowParseDeclareTypeAlias(e);if(this.isContextual(131))return this.flowParseDeclareOpaqueType(e);if(this.isContextual(129))return this.flowParseDeclareInterface(e);if(this.match(82))return this.flowParseDeclareExportDeclaration(e,t);this.unexpected()}flowParseDeclareVariable(e){return this.next(),e.id=this.flowParseTypeAnnotatableIdentifier(!0),this.scope.declareName(e.id.name,5,e.id.loc.start),this.semicolon(),this.finishNode(e,"DeclareVariable")}flowParseDeclareModule(e){this.scope.enter(0),this.match(133)?e.id=super.parseExprAtom():e.id=this.parseIdentifier();let t=e.body=this.startNode(),s=t.body=[];for(this.expect(5);!this.match(8);){let o=this.startNode();this.match(83)?(this.next(),!this.isContextual(130)&&!this.match(87)&&this.raise(L.InvalidNonTypeImportInDeclareModule,this.state.lastTokStartLoc),super.parseImport(o)):(this.expectContextual(125,L.UnsupportedStatementInDeclareModule),o=this.flowParseDeclare(o,!0)),s.push(o)}this.scope.exit(),this.expect(8),this.finishNode(t,"BlockStatement");let i=null,a=!1;return s.forEach(o=>{pl(o)?(i==="CommonJS"&&this.raise(L.AmbiguousDeclareModuleKind,o),i="ES"):o.type==="DeclareModuleExports"&&(a&&this.raise(L.DuplicateDeclareModuleExports,o),i==="ES"&&this.raise(L.AmbiguousDeclareModuleKind,o),i="CommonJS",a=!0)}),e.kind=i||"CommonJS",this.finishNode(e,"DeclareModule")}flowParseDeclareExportDeclaration(e,t){if(this.expect(82),this.eat(65))return this.match(68)||this.match(80)?e.declaration=this.flowParseDeclare(this.startNode()):(e.declaration=this.flowParseType(),this.semicolon()),e.default=!0,this.finishNode(e,"DeclareExportDeclaration");if(this.match(75)||this.isLet()||(this.isContextual(130)||this.isContextual(129))&&!t){let s=this.state.value;throw this.raise(L.UnsupportedDeclareExportKind,this.state.startLoc,{unsupportedExportKind:s,suggestion:ul[s]})}if(this.match(74)||this.match(68)||this.match(80)||this.isContextual(131))return e.declaration=this.flowParseDeclare(this.startNode()),e.default=!1,this.finishNode(e,"DeclareExportDeclaration");if(this.match(55)||this.match(5)||this.isContextual(129)||this.isContextual(130)||this.isContextual(131))return e=this.parseExport(e,null),e.type==="ExportNamedDeclaration"&&(e.type="ExportDeclaration",e.default=!1,delete e.exportKind),e.type="Declare"+e.type,e;this.unexpected()}flowParseDeclareModuleExports(e){return this.next(),this.expectContextual(111),e.typeAnnotation=this.flowParseTypeAnnotation(),this.semicolon(),this.finishNode(e,"DeclareModuleExports")}flowParseDeclareTypeAlias(e){this.next();let t=this.flowParseTypeAlias(e);return t.type="DeclareTypeAlias",t}flowParseDeclareOpaqueType(e){this.next();let t=this.flowParseOpaqueType(e,!0);return t.type="DeclareOpaqueType",t}flowParseDeclareInterface(e){return this.next(),this.flowParseInterfaceish(e,!1),this.finishNode(e,"DeclareInterface")}flowParseInterfaceish(e,t){if(e.id=this.flowParseRestrictedIdentifier(!t,!0),this.scope.declareName(e.id.name,t?17:8201,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.extends=[],this.eat(81))do e.extends.push(this.flowParseInterfaceExtends());while(!t&&this.eat(12));if(t){if(e.implements=[],e.mixins=[],this.eatContextual(117))do e.mixins.push(this.flowParseInterfaceExtends());while(this.eat(12));if(this.eatContextual(113))do e.implements.push(this.flowParseInterfaceExtends());while(this.eat(12))}e.body=this.flowParseObjectType({allowStatic:t,allowExact:!1,allowSpread:!1,allowProto:t,allowInexact:!1})}flowParseInterfaceExtends(){let e=this.startNode();return e.id=this.flowParseQualifiedTypeIdentifier(),this.match(47)?e.typeParameters=this.flowParseTypeParameterInstantiation():e.typeParameters=null,this.finishNode(e,"InterfaceExtends")}flowParseInterface(e){return this.flowParseInterfaceish(e,!1),this.finishNode(e,"InterfaceDeclaration")}checkNotUnderscore(e){e==="_"&&this.raise(L.UnexpectedReservedUnderscore,this.state.startLoc)}checkReservedType(e,t,s){cl.has(e)&&this.raise(s?L.AssignReservedType:L.UnexpectedReservedType,t,{reservedType:e})}flowParseRestrictedIdentifier(e,t){return this.checkReservedType(this.state.value,this.state.startLoc,t),this.parseIdentifier(e)}flowParseTypeAlias(e){return e.id=this.flowParseRestrictedIdentifier(!1,!0),this.scope.declareName(e.id.name,8201,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.right=this.flowParseTypeInitialiser(29),this.semicolon(),this.finishNode(e,"TypeAlias")}flowParseOpaqueType(e,t){return this.expectContextual(130),e.id=this.flowParseRestrictedIdentifier(!0,!0),this.scope.declareName(e.id.name,8201,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.supertype=null,this.match(14)&&(e.supertype=this.flowParseTypeInitialiser(14)),e.impltype=null,t||(e.impltype=this.flowParseTypeInitialiser(29)),this.semicolon(),this.finishNode(e,"OpaqueType")}flowParseTypeParameter(e=!1){let t=this.state.startLoc,s=this.startNode(),i=this.flowParseVariance(),a=this.flowParseTypeAnnotatableIdentifier();return s.name=a.name,s.variance=i,s.bound=a.typeAnnotation,this.match(29)?(this.eat(29),s.default=this.flowParseType()):e&&this.raise(L.MissingTypeParamDefault,t),this.finishNode(s,"TypeParameter")}flowParseTypeParameterDeclaration(){let e=this.state.inType,t=this.startNode();t.params=[],this.state.inType=!0,this.match(47)||this.match(142)?this.next():this.unexpected();let s=!1;do{let i=this.flowParseTypeParameter(s);t.params.push(i),i.default&&(s=!0),this.match(48)||this.expect(12)}while(!this.match(48));return this.expect(48),this.state.inType=e,this.finishNode(t,"TypeParameterDeclaration")}flowParseTypeParameterInstantiation(){let e=this.startNode(),t=this.state.inType;e.params=[],this.state.inType=!0,this.expect(47);let s=this.state.noAnonFunctionType;for(this.state.noAnonFunctionType=!1;!this.match(48);)e.params.push(this.flowParseType()),this.match(48)||this.expect(12);return this.state.noAnonFunctionType=s,this.expect(48),this.state.inType=t,this.finishNode(e,"TypeParameterInstantiation")}flowParseTypeParameterInstantiationCallOrNew(){let e=this.startNode(),t=this.state.inType;for(e.params=[],this.state.inType=!0,this.expect(47);!this.match(48);)e.params.push(this.flowParseTypeOrImplicitInstantiation()),this.match(48)||this.expect(12);return this.expect(48),this.state.inType=t,this.finishNode(e,"TypeParameterInstantiation")}flowParseInterfaceType(){let e=this.startNode();if(this.expectContextual(129),e.extends=[],this.eat(81))do e.extends.push(this.flowParseInterfaceExtends());while(this.eat(12));return e.body=this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!1,allowProto:!1,allowInexact:!1}),this.finishNode(e,"InterfaceTypeAnnotation")}flowParseObjectPropertyKey(){return this.match(134)||this.match(133)?super.parseExprAtom():this.parseIdentifier(!0)}flowParseObjectTypeIndexer(e,t,s){return e.static=t,this.lookahead().type===14?(e.id=this.flowParseObjectPropertyKey(),e.key=this.flowParseTypeInitialiser()):(e.id=null,e.key=this.flowParseType()),this.expect(3),e.value=this.flowParseTypeInitialiser(),e.variance=s,this.finishNode(e,"ObjectTypeIndexer")}flowParseObjectTypeInternalSlot(e,t){return e.static=t,e.id=this.flowParseObjectPropertyKey(),this.expect(3),this.expect(3),this.match(47)||this.match(10)?(e.method=!0,e.optional=!1,e.value=this.flowParseObjectTypeMethodish(this.startNodeAt(e.loc.start))):(e.method=!1,this.eat(17)&&(e.optional=!0),e.value=this.flowParseTypeInitialiser()),this.finishNode(e,"ObjectTypeInternalSlot")}flowParseObjectTypeMethodish(e){for(e.params=[],e.rest=null,e.typeParameters=null,e.this=null,this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration()),this.expect(10),this.match(78)&&(e.this=this.flowParseFunctionTypeParam(!0),e.this.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)e.params.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(e.rest=this.flowParseFunctionTypeParam(!1)),this.expect(11),e.returnType=this.flowParseTypeInitialiser(),this.finishNode(e,"FunctionTypeAnnotation")}flowParseObjectTypeCallProperty(e,t){let s=this.startNode();return e.static=t,e.value=this.flowParseObjectTypeMethodish(s),this.finishNode(e,"ObjectTypeCallProperty")}flowParseObjectType({allowStatic:e,allowExact:t,allowSpread:s,allowProto:i,allowInexact:a}){let o=this.state.inType;this.state.inType=!0;let l=this.startNode();l.callProperties=[],l.properties=[],l.indexers=[],l.internalSlots=[];let c,p,u=!1;for(t&&this.match(6)?(this.expect(6),c=9,p=!0):(this.expect(5),c=8,p=!1),l.exact=p;!this.match(c);){let m=!1,d=null,g=null,h=this.startNode();if(i&&this.isContextual(118)){let w=this.lookahead();w.type!==14&&w.type!==17&&(this.next(),d=this.state.startLoc,e=!1)}if(e&&this.isContextual(106)){let w=this.lookahead();w.type!==14&&w.type!==17&&(this.next(),m=!0)}let v=this.flowParseVariance();if(this.eat(0))d!=null&&this.unexpected(d),this.eat(0)?(v&&this.unexpected(v.loc.start),l.internalSlots.push(this.flowParseObjectTypeInternalSlot(h,m))):l.indexers.push(this.flowParseObjectTypeIndexer(h,m,v));else if(this.match(10)||this.match(47))d!=null&&this.unexpected(d),v&&this.unexpected(v.loc.start),l.callProperties.push(this.flowParseObjectTypeCallProperty(h,m));else{let w="init";if(this.isContextual(99)||this.isContextual(104)){let x=this.lookahead();oi(x.type)&&(w=this.state.value,this.next())}let E=this.flowParseObjectTypeProperty(h,m,d,v,w,s,a??!p);E===null?(u=!0,g=this.state.lastTokStartLoc):l.properties.push(E)}this.flowObjectTypeSemicolon(),g&&!this.match(8)&&!this.match(9)&&this.raise(L.UnexpectedExplicitInexactInObject,g)}this.expect(c),s&&(l.inexact=u);let f=this.finishNode(l,"ObjectTypeAnnotation");return this.state.inType=o,f}flowParseObjectTypeProperty(e,t,s,i,a,o,l){if(this.eat(21))return this.match(12)||this.match(13)||this.match(8)||this.match(9)?(o?l||this.raise(L.InexactInsideExact,this.state.lastTokStartLoc):this.raise(L.InexactInsideNonObject,this.state.lastTokStartLoc),i&&this.raise(L.InexactVariance,i),null):(o||this.raise(L.UnexpectedSpreadType,this.state.lastTokStartLoc),s!=null&&this.unexpected(s),i&&this.raise(L.SpreadVariance,i),e.argument=this.flowParseType(),this.finishNode(e,"ObjectTypeSpreadProperty"));{e.key=this.flowParseObjectPropertyKey(),e.static=t,e.proto=s!=null,e.kind=a;let c=!1;return this.match(47)||this.match(10)?(e.method=!0,s!=null&&this.unexpected(s),i&&this.unexpected(i.loc.start),e.value=this.flowParseObjectTypeMethodish(this.startNodeAt(e.loc.start)),(a==="get"||a==="set")&&this.flowCheckGetterSetterParams(e),!o&&e.key.name==="constructor"&&e.value.this&&this.raise(L.ThisParamBannedInConstructor,e.value.this)):(a!=="init"&&this.unexpected(),e.method=!1,this.eat(17)&&(c=!0),e.value=this.flowParseTypeInitialiser(),e.variance=i),e.optional=c,this.finishNode(e,"ObjectTypeProperty")}}flowCheckGetterSetterParams(e){let t=e.kind==="get"?0:1,s=e.value.params.length+(e.value.rest?1:0);e.value.this&&this.raise(e.kind==="get"?L.GetterMayNotHaveThisParam:L.SetterMayNotHaveThisParam,e.value.this),s!==t&&this.raise(e.kind==="get"?b.BadGetterArity:b.BadSetterArity,e),e.kind==="set"&&e.value.rest&&this.raise(b.BadSetterRestParameter,e)}flowObjectTypeSemicolon(){!this.eat(13)&&!this.eat(12)&&!this.match(8)&&!this.match(9)&&this.unexpected()}flowParseQualifiedTypeIdentifier(e,t){var s;(s=e)!=null||(e=this.state.startLoc);let i=t||this.flowParseRestrictedIdentifier(!0);for(;this.eat(16);){let a=this.startNodeAt(e);a.qualification=i,a.id=this.flowParseRestrictedIdentifier(!0),i=this.finishNode(a,"QualifiedTypeIdentifier")}return i}flowParseGenericType(e,t){let s=this.startNodeAt(e);return s.typeParameters=null,s.id=this.flowParseQualifiedTypeIdentifier(e,t),this.match(47)&&(s.typeParameters=this.flowParseTypeParameterInstantiation()),this.finishNode(s,"GenericTypeAnnotation")}flowParseTypeofType(){let e=this.startNode();return this.expect(87),e.argument=this.flowParsePrimaryType(),this.finishNode(e,"TypeofTypeAnnotation")}flowParseTupleType(){let e=this.startNode();for(e.types=[],this.expect(0);this.state.pos<this.length&&!this.match(3)&&(e.types.push(this.flowParseType()),!this.match(3));)this.expect(12);return this.expect(3),this.finishNode(e,"TupleTypeAnnotation")}flowParseFunctionTypeParam(e){let t=null,s=!1,i=null,a=this.startNode(),o=this.lookahead(),l=this.state.type===78;return o.type===14||o.type===17?(l&&!e&&this.raise(L.ThisParamMustBeFirst,a),t=this.parseIdentifier(l),this.eat(17)&&(s=!0,l&&this.raise(L.ThisParamMayNotBeOptional,a)),i=this.flowParseTypeInitialiser()):i=this.flowParseType(),a.name=t,a.optional=s,a.typeAnnotation=i,this.finishNode(a,"FunctionTypeParam")}reinterpretTypeAsFunctionTypeParam(e){let t=this.startNodeAt(e.loc.start);return t.name=null,t.optional=!1,t.typeAnnotation=e,this.finishNode(t,"FunctionTypeParam")}flowParseFunctionTypeParams(e=[]){let t=null,s=null;for(this.match(78)&&(s=this.flowParseFunctionTypeParam(!0),s.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)e.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(t=this.flowParseFunctionTypeParam(!1)),{params:e,rest:t,_this:s}}flowIdentToTypeAnnotation(e,t,s){switch(s.name){case"any":return this.finishNode(t,"AnyTypeAnnotation");case"bool":case"boolean":return this.finishNode(t,"BooleanTypeAnnotation");case"mixed":return this.finishNode(t,"MixedTypeAnnotation");case"empty":return this.finishNode(t,"EmptyTypeAnnotation");case"number":return this.finishNode(t,"NumberTypeAnnotation");case"string":return this.finishNode(t,"StringTypeAnnotation");case"symbol":return this.finishNode(t,"SymbolTypeAnnotation");default:return this.checkNotUnderscore(s.name),this.flowParseGenericType(e,s)}}flowParsePrimaryType(){let e=this.state.startLoc,t=this.startNode(),s,i,a=!1,o=this.state.noAnonFunctionType;switch(this.state.type){case 5:return this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!0,allowProto:!1,allowInexact:!0});case 6:return this.flowParseObjectType({allowStatic:!1,allowExact:!0,allowSpread:!0,allowProto:!1,allowInexact:!1});case 0:return this.state.noAnonFunctionType=!1,i=this.flowParseTupleType(),this.state.noAnonFunctionType=o,i;case 47:return t.typeParameters=this.flowParseTypeParameterDeclaration(),this.expect(10),s=this.flowParseFunctionTypeParams(),t.params=s.params,t.rest=s.rest,t.this=s._this,this.expect(11),this.expect(19),t.returnType=this.flowParseType(),this.finishNode(t,"FunctionTypeAnnotation");case 10:if(this.next(),!this.match(11)&&!this.match(21))if(B(this.state.type)||this.match(78)){let l=this.lookahead().type;a=l!==17&&l!==14}else a=!0;if(a){if(this.state.noAnonFunctionType=!1,i=this.flowParseType(),this.state.noAnonFunctionType=o,this.state.noAnonFunctionType||!(this.match(12)||this.match(11)&&this.lookahead().type===19))return this.expect(11),i;this.eat(12)}return i?s=this.flowParseFunctionTypeParams([this.reinterpretTypeAsFunctionTypeParam(i)]):s=this.flowParseFunctionTypeParams(),t.params=s.params,t.rest=s.rest,t.this=s._this,this.expect(11),this.expect(19),t.returnType=this.flowParseType(),t.typeParameters=null,this.finishNode(t,"FunctionTypeAnnotation");case 133:return this.parseLiteral(this.state.value,"StringLiteralTypeAnnotation");case 85:case 86:return t.value=this.match(85),this.next(),this.finishNode(t,"BooleanLiteralTypeAnnotation");case 53:if(this.state.value==="-"){if(this.next(),this.match(134))return this.parseLiteralAtNode(-this.state.value,"NumberLiteralTypeAnnotation",t);if(this.match(135))return this.parseLiteralAtNode(-this.state.value,"BigIntLiteralTypeAnnotation",t);throw this.raise(L.UnexpectedSubtractionOperand,this.state.startLoc)}this.unexpected();return;case 134:return this.parseLiteral(this.state.value,"NumberLiteralTypeAnnotation");case 135:return this.parseLiteral(this.state.value,"BigIntLiteralTypeAnnotation");case 88:return this.next(),this.finishNode(t,"VoidTypeAnnotation");case 84:return this.next(),this.finishNode(t,"NullLiteralTypeAnnotation");case 78:return this.next(),this.finishNode(t,"ThisTypeAnnotation");case 55:return this.next(),this.finishNode(t,"ExistsTypeAnnotation");case 87:return this.flowParseTypeofType();default:if(Vs(this.state.type)){let l=He(this.state.type);return this.next(),super.createIdentifier(t,l)}else if(B(this.state.type))return this.isContextual(129)?this.flowParseInterfaceType():this.flowIdentToTypeAnnotation(e,t,this.parseIdentifier())}this.unexpected()}flowParsePostfixType(){let e=this.state.startLoc,t=this.flowParsePrimaryType(),s=!1;for(;(this.match(0)||this.match(18))&&!this.canInsertSemicolon();){let i=this.startNodeAt(e),a=this.eat(18);s=s||a,this.expect(0),!a&&this.match(3)?(i.elementType=t,this.next(),t=this.finishNode(i,"ArrayTypeAnnotation")):(i.objectType=t,i.indexType=this.flowParseType(),this.expect(3),s?(i.optional=a,t=this.finishNode(i,"OptionalIndexedAccessType")):t=this.finishNode(i,"IndexedAccessType"))}return t}flowParsePrefixType(){let e=this.startNode();return this.eat(17)?(e.typeAnnotation=this.flowParsePrefixType(),this.finishNode(e,"NullableTypeAnnotation")):this.flowParsePostfixType()}flowParseAnonFunctionWithoutParens(){let e=this.flowParsePrefixType();if(!this.state.noAnonFunctionType&&this.eat(19)){let t=this.startNodeAt(e.loc.start);return t.params=[this.reinterpretTypeAsFunctionTypeParam(e)],t.rest=null,t.this=null,t.returnType=this.flowParseType(),t.typeParameters=null,this.finishNode(t,"FunctionTypeAnnotation")}return e}flowParseIntersectionType(){let e=this.startNode();this.eat(45);let t=this.flowParseAnonFunctionWithoutParens();for(e.types=[t];this.eat(45);)e.types.push(this.flowParseAnonFunctionWithoutParens());return e.types.length===1?t:this.finishNode(e,"IntersectionTypeAnnotation")}flowParseUnionType(){let e=this.startNode();this.eat(43);let t=this.flowParseIntersectionType();for(e.types=[t];this.eat(43);)e.types.push(this.flowParseIntersectionType());return e.types.length===1?t:this.finishNode(e,"UnionTypeAnnotation")}flowParseType(){let e=this.state.inType;this.state.inType=!0;let t=this.flowParseUnionType();return this.state.inType=e,t}flowParseTypeOrImplicitInstantiation(){if(this.state.type===132&&this.state.value==="_"){let e=this.state.startLoc,t=this.parseIdentifier();return this.flowParseGenericType(e,t)}else return this.flowParseType()}flowParseTypeAnnotation(){let e=this.startNode();return e.typeAnnotation=this.flowParseTypeInitialiser(),this.finishNode(e,"TypeAnnotation")}flowParseTypeAnnotatableIdentifier(e){let t=e?this.parseIdentifier():this.flowParseRestrictedIdentifier();return this.match(14)&&(t.typeAnnotation=this.flowParseTypeAnnotation(),this.resetEndLocation(t)),t}typeCastToParameter(e){return e.expression.typeAnnotation=e.typeAnnotation,this.resetEndLocation(e.expression,e.typeAnnotation.loc.end),e.expression}flowParseVariance(){let e=null;return this.match(53)?(e=this.startNode(),this.state.value==="+"?e.kind="plus":e.kind="minus",this.next(),this.finishNode(e,"Variance")):e}parseFunctionBody(e,t,s=!1){if(t){this.forwardNoArrowParamsConversionAt(e,()=>super.parseFunctionBody(e,!0,s));return}super.parseFunctionBody(e,!1,s)}parseFunctionBodyAndFinish(e,t,s=!1){if(this.match(14)){let i=this.startNode();[i.typeAnnotation,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),e.returnType=i.typeAnnotation?this.finishNode(i,"TypeAnnotation"):null}return super.parseFunctionBodyAndFinish(e,t,s)}parseStatementLike(e){if(this.state.strict&&this.isContextual(129)){let s=this.lookahead();if(xe(s.type)){let i=this.startNode();return this.next(),this.flowParseInterface(i)}}else if(this.shouldParseEnums()&&this.isContextual(126)){let s=this.startNode();return this.next(),this.flowParseEnumDeclaration(s)}let t=super.parseStatementLike(e);return this.flowPragma===void 0&&!this.isValidDirective(t)&&(this.flowPragma=null),t}parseExpressionStatement(e,t,s){if(t.type==="Identifier"){if(t.name==="declare"){if(this.match(80)||B(this.state.type)||this.match(68)||this.match(74)||this.match(82))return this.flowParseDeclare(e)}else if(B(this.state.type)){if(t.name==="interface")return this.flowParseInterface(e);if(t.name==="type")return this.flowParseTypeAlias(e);if(t.name==="opaque")return this.flowParseOpaqueType(e,!1)}}return super.parseExpressionStatement(e,t,s)}shouldParseExportDeclaration(){let{type:e}=this.state;return Kr(e)||this.shouldParseEnums()&&e===126?!this.state.containsEsc:super.shouldParseExportDeclaration()}isExportDefaultSpecifier(){let{type:e}=this.state;return Kr(e)||this.shouldParseEnums()&&e===126?this.state.containsEsc:super.isExportDefaultSpecifier()}parseExportDefaultExpression(){if(this.shouldParseEnums()&&this.isContextual(126)){let e=this.startNode();return this.next(),this.flowParseEnumDeclaration(e)}return super.parseExportDefaultExpression()}parseConditional(e,t,s){if(!this.match(17))return e;if(this.state.maybeInArrowParameters){let f=this.lookaheadCharCode();if(f===44||f===61||f===58||f===41)return this.setOptionalParametersError(s),e}this.expect(17);let i=this.state.clone(),a=this.state.noArrowAt,o=this.startNodeAt(t),{consequent:l,failed:c}=this.tryParseConditionalConsequent(),[p,u]=this.getArrowLikeExpressions(l);if(c||u.length>0){let f=[...a];if(u.length>0){this.state=i,this.state.noArrowAt=f;for(let m=0;m<u.length;m++)f.push(u[m].start);({consequent:l,failed:c}=this.tryParseConditionalConsequent()),[p,u]=this.getArrowLikeExpressions(l)}c&&p.length>1&&this.raise(L.AmbiguousConditionalArrow,i.startLoc),c&&p.length===1&&(this.state=i,f.push(p[0].start),this.state.noArrowAt=f,{consequent:l,failed:c}=this.tryParseConditionalConsequent())}return this.getArrowLikeExpressions(l,!0),this.state.noArrowAt=a,this.expect(14),o.test=e,o.consequent=l,o.alternate=this.forwardNoArrowParamsConversionAt(o,()=>this.parseMaybeAssign(void 0,void 0)),this.finishNode(o,"ConditionalExpression")}tryParseConditionalConsequent(){this.state.noArrowParamsConversionAt.push(this.state.start);let e=this.parseMaybeAssignAllowIn(),t=!this.match(14);return this.state.noArrowParamsConversionAt.pop(),{consequent:e,failed:t}}getArrowLikeExpressions(e,t){let s=[e],i=[];for(;s.length!==0;){let a=s.pop();a.type==="ArrowFunctionExpression"?(a.typeParameters||!a.returnType?this.finishArrowValidation(a):i.push(a),s.push(a.body)):a.type==="ConditionalExpression"&&(s.push(a.consequent),s.push(a.alternate))}return t?(i.forEach(a=>this.finishArrowValidation(a)),[i,[]]):dl(i,a=>a.params.every(o=>this.isAssignable(o,!0)))}finishArrowValidation(e){var t;this.toAssignableList(e.params,(t=e.extra)==null?void 0:t.trailingCommaLoc,!1),this.scope.enter(6),super.checkParams(e,!1,!0),this.scope.exit()}forwardNoArrowParamsConversionAt(e,t){let s;return this.state.noArrowParamsConversionAt.indexOf(e.start)!==-1?(this.state.noArrowParamsConversionAt.push(this.state.start),s=t(),this.state.noArrowParamsConversionAt.pop()):s=t(),s}parseParenItem(e,t){if(e=super.parseParenItem(e,t),this.eat(17)&&(e.optional=!0,this.resetEndLocation(e)),this.match(14)){let s=this.startNodeAt(t);return s.expression=e,s.typeAnnotation=this.flowParseTypeAnnotation(),this.finishNode(s,"TypeCastExpression")}return e}assertModuleNodeAllowed(e){e.type==="ImportDeclaration"&&(e.importKind==="type"||e.importKind==="typeof")||e.type==="ExportNamedDeclaration"&&e.exportKind==="type"||e.type==="ExportAllDeclaration"&&e.exportKind==="type"||super.assertModuleNodeAllowed(e)}parseExportDeclaration(e){if(this.isContextual(130)){e.exportKind="type";let t=this.startNode();return this.next(),this.match(5)?(e.specifiers=this.parseExportSpecifiers(!0),super.parseExportFrom(e),null):this.flowParseTypeAlias(t)}else if(this.isContextual(131)){e.exportKind="type";let t=this.startNode();return this.next(),this.flowParseOpaqueType(t,!1)}else if(this.isContextual(129)){e.exportKind="type";let t=this.startNode();return this.next(),this.flowParseInterface(t)}else if(this.shouldParseEnums()&&this.isContextual(126)){e.exportKind="value";let t=this.startNode();return this.next(),this.flowParseEnumDeclaration(t)}else return super.parseExportDeclaration(e)}eatExportStar(e){return super.eatExportStar(e)?!0:this.isContextual(130)&&this.lookahead().type===55?(e.exportKind="type",this.next(),this.next(),!0):!1}maybeParseExportNamespaceSpecifier(e){let{startLoc:t}=this.state,s=super.maybeParseExportNamespaceSpecifier(e);return s&&e.exportKind==="type"&&this.unexpected(t),s}parseClassId(e,t,s){super.parseClassId(e,t,s),this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration())}parseClassMember(e,t,s){let{startLoc:i}=this.state;if(this.isContextual(125)){if(super.parseClassMemberFromModifier(e,t))return;t.declare=!0}super.parseClassMember(e,t,s),t.declare&&(t.type!=="ClassProperty"&&t.type!=="ClassPrivateProperty"&&t.type!=="PropertyDefinition"?this.raise(L.DeclareClassElement,i):t.value&&this.raise(L.DeclareClassFieldInitializer,t.value))}isIterator(e){return e==="iterator"||e==="asyncIterator"}readIterator(){let e=super.readWord1(),t="@@"+e;(!this.isIterator(e)||!this.state.inType)&&this.raise(b.InvalidIdentifier,this.state.curPosition(),{identifierName:t}),this.finishToken(132,t)}getTokenFromCode(e){let t=this.input.charCodeAt(this.state.pos+1);e===123&&t===124?this.finishOp(6,2):this.state.inType&&(e===62||e===60)?this.finishOp(e===62?48:47,1):this.state.inType&&e===63?t===46?this.finishOp(18,2):this.finishOp(17,1):Jo(e,t,this.input.charCodeAt(this.state.pos+2))?(this.state.pos+=2,this.readIterator()):super.getTokenFromCode(e)}isAssignable(e,t){return e.type==="TypeCastExpression"?this.isAssignable(e.expression,t):super.isAssignable(e,t)}toAssignable(e,t=!1){!t&&e.type==="AssignmentExpression"&&e.left.type==="TypeCastExpression"&&(e.left=this.typeCastToParameter(e.left)),super.toAssignable(e,t)}toAssignableList(e,t,s){for(let i=0;i<e.length;i++){let a=e[i];a?.type==="TypeCastExpression"&&(e[i]=this.typeCastToParameter(a))}super.toAssignableList(e,t,s)}toReferencedList(e,t){for(let i=0;i<e.length;i++){var s;let a=e[i];a&&a.type==="TypeCastExpression"&&!((s=a.extra)!=null&&s.parenthesized)&&(e.length>1||!t)&&this.raise(L.TypeCastInPattern,a.typeAnnotation)}return e}parseArrayLike(e,t,s,i){let a=super.parseArrayLike(e,t,s,i);return t&&!this.state.maybeInArrowParameters&&this.toReferencedList(a.elements),a}isValidLVal(e,t,s){return e==="TypeCastExpression"||super.isValidLVal(e,t,s)}parseClassProperty(e){return this.match(14)&&(e.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassProperty(e)}parseClassPrivateProperty(e){return this.match(14)&&(e.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassPrivateProperty(e)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(14)||super.isClassProperty()}isNonstaticConstructor(e){return!this.match(14)&&super.isNonstaticConstructor(e)}pushClassMethod(e,t,s,i,a,o){if(t.variance&&this.unexpected(t.variance.loc.start),delete t.variance,this.match(47)&&(t.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassMethod(e,t,s,i,a,o),t.params&&a){let l=t.params;l.length>0&&this.isThisParam(l[0])&&this.raise(L.ThisParamBannedInConstructor,t)}else if(t.type==="MethodDefinition"&&a&&t.value.params){let l=t.value.params;l.length>0&&this.isThisParam(l[0])&&this.raise(L.ThisParamBannedInConstructor,t)}}pushClassPrivateMethod(e,t,s,i){t.variance&&this.unexpected(t.variance.loc.start),delete t.variance,this.match(47)&&(t.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassPrivateMethod(e,t,s,i)}parseClassSuper(e){if(super.parseClassSuper(e),e.superClass&&this.match(47)&&(e.superTypeParameters=this.flowParseTypeParameterInstantiation()),this.isContextual(113)){this.next();let t=e.implements=[];do{let s=this.startNode();s.id=this.flowParseRestrictedIdentifier(!0),this.match(47)?s.typeParameters=this.flowParseTypeParameterInstantiation():s.typeParameters=null,t.push(this.finishNode(s,"ClassImplements"))}while(this.eat(12))}}checkGetterSetterParams(e){super.checkGetterSetterParams(e);let t=this.getObjectOrClassMethodParams(e);if(t.length>0){let s=t[0];this.isThisParam(s)&&e.kind==="get"?this.raise(L.GetterMayNotHaveThisParam,s):this.isThisParam(s)&&this.raise(L.SetterMayNotHaveThisParam,s)}}parsePropertyNamePrefixOperator(e){e.variance=this.flowParseVariance()}parseObjPropValue(e,t,s,i,a,o,l){e.variance&&this.unexpected(e.variance.loc.start),delete e.variance;let c;this.match(47)&&!o&&(c=this.flowParseTypeParameterDeclaration(),this.match(10)||this.unexpected());let p=super.parseObjPropValue(e,t,s,i,a,o,l);return c&&((p.value||p).typeParameters=c),p}parseAssignableListItemTypes(e){return this.eat(17)&&(e.type!=="Identifier"&&this.raise(L.PatternIsOptional,e),this.isThisParam(e)&&this.raise(L.ThisParamMayNotBeOptional,e),e.optional=!0),this.match(14)?e.typeAnnotation=this.flowParseTypeAnnotation():this.isThisParam(e)&&this.raise(L.ThisParamAnnotationRequired,e),this.match(29)&&this.isThisParam(e)&&this.raise(L.ThisParamNoDefault,e),this.resetEndLocation(e),e}parseMaybeDefault(e,t){let s=super.parseMaybeDefault(e,t);return s.type==="AssignmentPattern"&&s.typeAnnotation&&s.right.start<s.typeAnnotation.start&&this.raise(L.TypeBeforeInitializer,s.typeAnnotation),s}checkImportReflection(e){super.checkImportReflection(e),e.module&&e.importKind!=="value"&&this.raise(L.ImportReflectionHasImportType,e.specifiers[0].loc.start)}parseImportSpecifierLocal(e,t,s){t.local=Yr(e)?this.flowParseRestrictedIdentifier(!0,!0):this.parseIdentifier(),e.specifiers.push(this.finishImportSpecifier(t,s))}isPotentialImportPhase(e){if(super.isPotentialImportPhase(e))return!0;if(this.isContextual(130)){if(!e)return!0;let t=this.lookaheadCharCode();return t===123||t===42}return!e&&this.isContextual(87)}applyImportPhase(e,t,s,i){if(super.applyImportPhase(e,t,s,i),t){if(!s&&this.match(65))return;e.exportKind=s==="type"?s:"value"}else s==="type"&&this.match(55)&&this.unexpected(),e.importKind=s==="type"||s==="typeof"?s:"value"}parseImportSpecifier(e,t,s,i,a){let o=e.imported,l=null;o.type==="Identifier"&&(o.name==="type"?l="type":o.name==="typeof"&&(l="typeof"));let c=!1;if(this.isContextual(93)&&!this.isLookaheadContextual("as")){let u=this.parseIdentifier(!0);l!==null&&!xe(this.state.type)?(e.imported=u,e.importKind=l,e.local=Be(u)):(e.imported=o,e.importKind=null,e.local=this.parseIdentifier())}else{if(l!==null&&xe(this.state.type))e.imported=this.parseIdentifier(!0),e.importKind=l;else{if(t)throw this.raise(b.ImportBindingIsString,e,{importName:o.value});e.imported=o,e.importKind=null}this.eatContextual(93)?e.local=this.parseIdentifier():(c=!0,e.local=Be(e.imported))}let p=Yr(e);return s&&p&&this.raise(L.ImportTypeShorthandOnlyInPureImport,e),(s||p)&&this.checkReservedType(e.local.name,e.local.loc.start,!0),c&&!s&&!p&&this.checkReservedWord(e.local.name,e.loc.start,!0,!0),this.finishImportSpecifier(e,"ImportSpecifier")}parseBindingAtom(){switch(this.state.type){case 78:return this.parseIdentifier(!0);default:return super.parseBindingAtom()}}parseFunctionParams(e,t){let s=e.kind;s!=="get"&&s!=="set"&&this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration()),super.parseFunctionParams(e,t)}parseVarId(e,t){super.parseVarId(e,t),this.match(14)&&(e.id.typeAnnotation=this.flowParseTypeAnnotation(),this.resetEndLocation(e.id))}parseAsyncArrowFromCallExpression(e,t){if(this.match(14)){let s=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0,e.returnType=this.flowParseTypeAnnotation(),this.state.noAnonFunctionType=s}return super.parseAsyncArrowFromCallExpression(e,t)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}parseMaybeAssign(e,t){var s;let i=null,a;if(this.hasPlugin("jsx")&&(this.match(142)||this.match(47))){if(i=this.state.clone(),a=this.tryParse(()=>super.parseMaybeAssign(e,t),i),!a.error)return a.node;let{context:c}=this.state,p=c[c.length-1];(p===V.j_oTag||p===V.j_expr)&&c.pop()}if((s=a)!=null&&s.error||this.match(47)){var o,l;i=i||this.state.clone();let c,p=this.tryParse(f=>{var m;c=this.flowParseTypeParameterDeclaration();let d=this.forwardNoArrowParamsConversionAt(c,()=>{let h=super.parseMaybeAssign(e,t);return this.resetStartLocationFromNode(h,c),h});(m=d.extra)!=null&&m.parenthesized&&f();let g=this.maybeUnwrapTypeCastExpression(d);return g.type!=="ArrowFunctionExpression"&&f(),g.typeParameters=c,this.resetStartLocationFromNode(g,c),d},i),u=null;if(p.node&&this.maybeUnwrapTypeCastExpression(p.node).type==="ArrowFunctionExpression"){if(!p.error&&!p.aborted)return p.node.async&&this.raise(L.UnexpectedTypeParameterBeforeAsyncArrowFunction,c),p.node;u=p.node}if((o=a)!=null&&o.node)return this.state=a.failState,a.node;if(u)return this.state=p.failState,u;throw(l=a)!=null&&l.thrown?a.error:p.thrown?p.error:this.raise(L.UnexpectedTokenAfterTypeParameter,c)}return super.parseMaybeAssign(e,t)}parseArrow(e){if(this.match(14)){let t=this.tryParse(()=>{let s=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0;let i=this.startNode();return[i.typeAnnotation,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),this.state.noAnonFunctionType=s,this.canInsertSemicolon()&&this.unexpected(),this.match(19)||this.unexpected(),i});if(t.thrown)return null;t.error&&(this.state=t.failState),e.returnType=t.node.typeAnnotation?this.finishNode(t.node,"TypeAnnotation"):null}return super.parseArrow(e)}shouldParseArrow(e){return this.match(14)||super.shouldParseArrow(e)}setArrowFunctionParameters(e,t){this.state.noArrowParamsConversionAt.indexOf(e.start)!==-1?e.params=t:super.setArrowFunctionParameters(e,t)}checkParams(e,t,s,i=!0){if(!(s&&this.state.noArrowParamsConversionAt.indexOf(e.start)!==-1)){for(let a=0;a<e.params.length;a++)this.isThisParam(e.params[a])&&a>0&&this.raise(L.ThisParamMustBeFirst,e.params[a]);super.checkParams(e,t,s,i)}}parseParenAndDistinguishExpression(e){return super.parseParenAndDistinguishExpression(e&&this.state.noArrowAt.indexOf(this.state.start)===-1)}parseSubscripts(e,t,s){if(e.type==="Identifier"&&e.name==="async"&&this.state.noArrowAt.indexOf(t.index)!==-1){this.next();let i=this.startNodeAt(t);i.callee=e,i.arguments=super.parseCallExpressionArguments(11,!1),e=this.finishNode(i,"CallExpression")}else if(e.type==="Identifier"&&e.name==="async"&&this.match(47)){let i=this.state.clone(),a=this.tryParse(l=>this.parseAsyncArrowWithTypeParameters(t)||l(),i);if(!a.error&&!a.aborted)return a.node;let o=this.tryParse(()=>super.parseSubscripts(e,t,s),i);if(o.node&&!o.error)return o.node;if(a.node)return this.state=a.failState,a.node;if(o.node)return this.state=o.failState,o.node;throw a.error||o.error}return super.parseSubscripts(e,t,s)}parseSubscript(e,t,s,i){if(this.match(18)&&this.isLookaheadToken_lt()){if(i.optionalChainMember=!0,s)return i.stop=!0,e;this.next();let a=this.startNodeAt(t);return a.callee=e,a.typeArguments=this.flowParseTypeParameterInstantiation(),this.expect(10),a.arguments=this.parseCallExpressionArguments(11,!1),a.optional=!0,this.finishCallExpression(a,!0)}else if(!s&&this.shouldParseTypes()&&this.match(47)){let a=this.startNodeAt(t);a.callee=e;let o=this.tryParse(()=>(a.typeArguments=this.flowParseTypeParameterInstantiationCallOrNew(),this.expect(10),a.arguments=super.parseCallExpressionArguments(11,!1),i.optionalChainMember&&(a.optional=!1),this.finishCallExpression(a,i.optionalChainMember)));if(o.node)return o.error&&(this.state=o.failState),o.node}return super.parseSubscript(e,t,s,i)}parseNewCallee(e){super.parseNewCallee(e);let t=null;this.shouldParseTypes()&&this.match(47)&&(t=this.tryParse(()=>this.flowParseTypeParameterInstantiationCallOrNew()).node),e.typeArguments=t}parseAsyncArrowWithTypeParameters(e){let t=this.startNodeAt(e);if(this.parseFunctionParams(t,!1),!!this.parseArrow(t))return super.parseArrowExpression(t,void 0,!0)}readToken_mult_modulo(e){let t=this.input.charCodeAt(this.state.pos+1);if(e===42&&t===47&&this.state.hasFlowComment){this.state.hasFlowComment=!1,this.state.pos+=2,this.nextToken();return}super.readToken_mult_modulo(e)}readToken_pipe_amp(e){let t=this.input.charCodeAt(this.state.pos+1);if(e===124&&t===125){this.finishOp(9,2);return}super.readToken_pipe_amp(e)}parseTopLevel(e,t){let s=super.parseTopLevel(e,t);return this.state.hasFlowComment&&this.raise(L.UnterminatedFlowComment,this.state.curPosition()),s}skipBlockComment(){if(this.hasPlugin("flowComments")&&this.skipFlowComment()){if(this.state.hasFlowComment)throw this.raise(L.NestedFlowComment,this.state.startLoc);this.hasFlowCommentCompletion();let e=this.skipFlowComment();e&&(this.state.pos+=e,this.state.hasFlowComment=!0);return}return super.skipBlockComment(this.state.hasFlowComment?"*-/":"*/")}skipFlowComment(){let{pos:e}=this.state,t=2;for(;[32,9].includes(this.input.charCodeAt(e+t));)t++;let s=this.input.charCodeAt(t+e),i=this.input.charCodeAt(t+e+1);return s===58&&i===58?t+2:this.input.slice(t+e,t+e+12)==="flow-include"?t+12:s===58&&i!==58?t:!1}hasFlowCommentCompletion(){if(this.input.indexOf("*/",this.state.pos)===-1)throw this.raise(b.UnterminatedComment,this.state.curPosition())}flowEnumErrorBooleanMemberNotInitialized(e,{enumName:t,memberName:s}){this.raise(L.EnumBooleanMemberNotInitialized,e,{memberName:s,enumName:t})}flowEnumErrorInvalidMemberInitializer(e,t){return this.raise(t.explicitType?t.explicitType==="symbol"?L.EnumInvalidMemberInitializerSymbolType:L.EnumInvalidMemberInitializerPrimaryType:L.EnumInvalidMemberInitializerUnknownType,e,t)}flowEnumErrorNumberMemberNotInitialized(e,t){this.raise(L.EnumNumberMemberNotInitialized,e,t)}flowEnumErrorStringMemberInconsistentlyInitialized(e,t){this.raise(L.EnumStringMemberInconsistentlyInitialized,e,t)}flowEnumMemberInit(){let e=this.state.startLoc,t=()=>this.match(12)||this.match(8);switch(this.state.type){case 134:{let s=this.parseNumericLiteral(this.state.value);return t()?{type:"number",loc:s.loc.start,value:s}:{type:"invalid",loc:e}}case 133:{let s=this.parseStringLiteral(this.state.value);return t()?{type:"string",loc:s.loc.start,value:s}:{type:"invalid",loc:e}}case 85:case 86:{let s=this.parseBooleanLiteral(this.match(85));return t()?{type:"boolean",loc:s.loc.start,value:s}:{type:"invalid",loc:e}}default:return{type:"invalid",loc:e}}}flowEnumMemberRaw(){let e=this.state.startLoc,t=this.parseIdentifier(!0),s=this.eat(29)?this.flowEnumMemberInit():{type:"none",loc:e};return{id:t,init:s}}flowEnumCheckExplicitTypeMismatch(e,t,s){let{explicitType:i}=t;i!==null&&i!==s&&this.flowEnumErrorInvalidMemberInitializer(e,t)}flowEnumMembers({enumName:e,explicitType:t}){let s=new Set,i={booleanMembers:[],numberMembers:[],stringMembers:[],defaultedMembers:[]},a=!1;for(;!this.match(8);){if(this.eat(21)){a=!0;break}let o=this.startNode(),{id:l,init:c}=this.flowEnumMemberRaw(),p=l.name;if(p==="")continue;/^[a-z]/.test(p)&&this.raise(L.EnumInvalidMemberName,l,{memberName:p,suggestion:p[0].toUpperCase()+p.slice(1),enumName:e}),s.has(p)&&this.raise(L.EnumDuplicateMemberName,l,{memberName:p,enumName:e}),s.add(p);let u={enumName:e,explicitType:t,memberName:p};switch(o.id=l,c.type){case"boolean":{this.flowEnumCheckExplicitTypeMismatch(c.loc,u,"boolean"),o.init=c.value,i.booleanMembers.push(this.finishNode(o,"EnumBooleanMember"));break}case"number":{this.flowEnumCheckExplicitTypeMismatch(c.loc,u,"number"),o.init=c.value,i.numberMembers.push(this.finishNode(o,"EnumNumberMember"));break}case"string":{this.flowEnumCheckExplicitTypeMismatch(c.loc,u,"string"),o.init=c.value,i.stringMembers.push(this.finishNode(o,"EnumStringMember"));break}case"invalid":throw this.flowEnumErrorInvalidMemberInitializer(c.loc,u);case"none":switch(t){case"boolean":this.flowEnumErrorBooleanMemberNotInitialized(c.loc,u);break;case"number":this.flowEnumErrorNumberMemberNotInitialized(c.loc,u);break;default:i.defaultedMembers.push(this.finishNode(o,"EnumDefaultedMember"))}}this.match(8)||this.expect(12)}return{members:i,hasUnknownMembers:a}}flowEnumStringMembers(e,t,{enumName:s}){if(e.length===0)return t;if(t.length===0)return e;if(t.length>e.length){for(let i of e)this.flowEnumErrorStringMemberInconsistentlyInitialized(i,{enumName:s});return t}else{for(let i of t)this.flowEnumErrorStringMemberInconsistentlyInitialized(i,{enumName:s});return e}}flowEnumParseExplicitType({enumName:e}){if(!this.eatContextual(102))return null;if(!B(this.state.type))throw this.raise(L.EnumInvalidExplicitTypeUnknownSupplied,this.state.startLoc,{enumName:e});let{value:t}=this.state;return this.next(),t!=="boolean"&&t!=="number"&&t!=="string"&&t!=="symbol"&&this.raise(L.EnumInvalidExplicitType,this.state.startLoc,{enumName:e,invalidEnumType:t}),t}flowEnumBody(e,t){let s=t.name,i=t.loc.start,a=this.flowEnumParseExplicitType({enumName:s});this.expect(5);let{members:o,hasUnknownMembers:l}=this.flowEnumMembers({enumName:s,explicitType:a});switch(e.hasUnknownMembers=l,a){case"boolean":return e.explicitType=!0,e.members=o.booleanMembers,this.expect(8),this.finishNode(e,"EnumBooleanBody");case"number":return e.explicitType=!0,e.members=o.numberMembers,this.expect(8),this.finishNode(e,"EnumNumberBody");case"string":return e.explicitType=!0,e.members=this.flowEnumStringMembers(o.stringMembers,o.defaultedMembers,{enumName:s}),this.expect(8),this.finishNode(e,"EnumStringBody");case"symbol":return e.members=o.defaultedMembers,this.expect(8),this.finishNode(e,"EnumSymbolBody");default:{let c=()=>(e.members=[],this.expect(8),this.finishNode(e,"EnumStringBody"));e.explicitType=!1;let p=o.booleanMembers.length,u=o.numberMembers.length,f=o.stringMembers.length,m=o.defaultedMembers.length;if(!p&&!u&&!f&&!m)return c();if(!p&&!u)return e.members=this.flowEnumStringMembers(o.stringMembers,o.defaultedMembers,{enumName:s}),this.expect(8),this.finishNode(e,"EnumStringBody");if(!u&&!f&&p>=m){for(let d of o.defaultedMembers)this.flowEnumErrorBooleanMemberNotInitialized(d.loc.start,{enumName:s,memberName:d.id.name});return e.members=o.booleanMembers,this.expect(8),this.finishNode(e,"EnumBooleanBody")}else if(!p&&!f&&u>=m){for(let d of o.defaultedMembers)this.flowEnumErrorNumberMemberNotInitialized(d.loc.start,{enumName:s,memberName:d.id.name});return e.members=o.numberMembers,this.expect(8),this.finishNode(e,"EnumNumberBody")}else return this.raise(L.EnumInconsistentMemberValues,i,{enumName:s}),c()}}}flowParseEnumDeclaration(e){let t=this.parseIdentifier();return e.id=t,e.body=this.flowEnumBody(this.startNode(),t),this.finishNode(e,"EnumDeclaration")}isLookaheadToken_lt(){let e=this.nextTokenStart();if(this.input.charCodeAt(e)===60){let t=this.input.charCodeAt(e+1);return t!==60&&t!==61}return!1}maybeUnwrapTypeCastExpression(e){return e.type==="TypeCastExpression"?e.expression:e}},ml={__proto__:null,quot:'"',amp:"&",apos:"'",lt:"<",gt:">",nbsp:"\xA0",iexcl:"\xA1",cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",brvbar:"\xA6",sect:"\xA7",uml:"\xA8",copy:"\xA9",ordf:"\xAA",laquo:"\xAB",not:"\xAC",shy:"\xAD",reg:"\xAE",macr:"\xAF",deg:"\xB0",plusmn:"\xB1",sup2:"\xB2",sup3:"\xB3",acute:"\xB4",micro:"\xB5",para:"\xB6",middot:"\xB7",cedil:"\xB8",sup1:"\xB9",ordm:"\xBA",raquo:"\xBB",frac14:"\xBC",frac12:"\xBD",frac34:"\xBE",iquest:"\xBF",Agrave:"\xC0",Aacute:"\xC1",Acirc:"\xC2",Atilde:"\xC3",Auml:"\xC4",Aring:"\xC5",AElig:"\xC6",Ccedil:"\xC7",Egrave:"\xC8",Eacute:"\xC9",Ecirc:"\xCA",Euml:"\xCB",Igrave:"\xCC",Iacute:"\xCD",Icirc:"\xCE",Iuml:"\xCF",ETH:"\xD0",Ntilde:"\xD1",Ograve:"\xD2",Oacute:"\xD3",Ocirc:"\xD4",Otilde:"\xD5",Ouml:"\xD6",times:"\xD7",Oslash:"\xD8",Ugrave:"\xD9",Uacute:"\xDA",Ucirc:"\xDB",Uuml:"\xDC",Yacute:"\xDD",THORN:"\xDE",szlig:"\xDF",agrave:"\xE0",aacute:"\xE1",acirc:"\xE2",atilde:"\xE3",auml:"\xE4",aring:"\xE5",aelig:"\xE6",ccedil:"\xE7",egrave:"\xE8",eacute:"\xE9",ecirc:"\xEA",euml:"\xEB",igrave:"\xEC",iacute:"\xED",icirc:"\xEE",iuml:"\xEF",eth:"\xF0",ntilde:"\xF1",ograve:"\xF2",oacute:"\xF3",ocirc:"\xF4",otilde:"\xF5",ouml:"\xF6",divide:"\xF7",oslash:"\xF8",ugrave:"\xF9",uacute:"\xFA",ucirc:"\xFB",uuml:"\xFC",yacute:"\xFD",thorn:"\xFE",yuml:"\xFF",OElig:"\u0152",oelig:"\u0153",Scaron:"\u0160",scaron:"\u0161",Yuml:"\u0178",fnof:"\u0192",circ:"\u02C6",tilde:"\u02DC",Alpha:"\u0391",Beta:"\u0392",Gamma:"\u0393",Delta:"\u0394",Epsilon:"\u0395",Zeta:"\u0396",Eta:"\u0397",Theta:"\u0398",Iota:"\u0399",Kappa:"\u039A",Lambda:"\u039B",Mu:"\u039C",Nu:"\u039D",Xi:"\u039E",Omicron:"\u039F",Pi:"\u03A0",Rho:"\u03A1",Sigma:"\u03A3",Tau:"\u03A4",Upsilon:"\u03A5",Phi:"\u03A6",Chi:"\u03A7",Psi:"\u03A8",Omega:"\u03A9",alpha:"\u03B1",beta:"\u03B2",gamma:"\u03B3",delta:"\u03B4",epsilon:"\u03B5",zeta:"\u03B6",eta:"\u03B7",theta:"\u03B8",iota:"\u03B9",kappa:"\u03BA",lambda:"\u03BB",mu:"\u03BC",nu:"\u03BD",xi:"\u03BE",omicron:"\u03BF",pi:"\u03C0",rho:"\u03C1",sigmaf:"\u03C2",sigma:"\u03C3",tau:"\u03C4",upsilon:"\u03C5",phi:"\u03C6",chi:"\u03C7",psi:"\u03C8",omega:"\u03C9",thetasym:"\u03D1",upsih:"\u03D2",piv:"\u03D6",ensp:"\u2002",emsp:"\u2003",thinsp:"\u2009",zwnj:"\u200C",zwj:"\u200D",lrm:"\u200E",rlm:"\u200F",ndash:"\u2013",mdash:"\u2014",lsquo:"\u2018",rsquo:"\u2019",sbquo:"\u201A",ldquo:"\u201C",rdquo:"\u201D",bdquo:"\u201E",dagger:"\u2020",Dagger:"\u2021",bull:"\u2022",hellip:"\u2026",permil:"\u2030",prime:"\u2032",Prime:"\u2033",lsaquo:"\u2039",rsaquo:"\u203A",oline:"\u203E",frasl:"\u2044",euro:"\u20AC",image:"\u2111",weierp:"\u2118",real:"\u211C",trade:"\u2122",alefsym:"\u2135",larr:"\u2190",uarr:"\u2191",rarr:"\u2192",darr:"\u2193",harr:"\u2194",crarr:"\u21B5",lArr:"\u21D0",uArr:"\u21D1",rArr:"\u21D2",dArr:"\u21D3",hArr:"\u21D4",forall:"\u2200",part:"\u2202",exist:"\u2203",empty:"\u2205",nabla:"\u2207",isin:"\u2208",notin:"\u2209",ni:"\u220B",prod:"\u220F",sum:"\u2211",minus:"\u2212",lowast:"\u2217",radic:"\u221A",prop:"\u221D",infin:"\u221E",ang:"\u2220",and:"\u2227",or:"\u2228",cap:"\u2229",cup:"\u222A",int:"\u222B",there4:"\u2234",sim:"\u223C",cong:"\u2245",asymp:"\u2248",ne:"\u2260",equiv:"\u2261",le:"\u2264",ge:"\u2265",sub:"\u2282",sup:"\u2283",nsub:"\u2284",sube:"\u2286",supe:"\u2287",oplus:"\u2295",otimes:"\u2297",perp:"\u22A5",sdot:"\u22C5",lceil:"\u2308",rceil:"\u2309",lfloor:"\u230A",rfloor:"\u230B",lang:"\u2329",rang:"\u232A",loz:"\u25CA",spades:"\u2660",clubs:"\u2663",hearts:"\u2665",diams:"\u2666"},Xe=Re`jsx`({AttributeIsEmpty:"JSX attributes must only be assigned a non-empty expression.",MissingClosingTagElement:({openingTagName:r})=>`Expected corresponding JSX closing tag for <${r}>.`,MissingClosingTagFragment:"Expected corresponding JSX closing tag for <>.",UnexpectedSequenceExpression:"Sequence expressions cannot be directly nested inside JSX. Did you mean to wrap it in parentheses (...)?",UnexpectedToken:({unexpected:r,HTMLEntity:n})=>`Unexpected token \`${r}\`. Did you mean \`${n}\` or \`{'${r}'}\`?`,UnsupportedJsxValue:"JSX value should be either an expression or a quoted JSX text.",UnterminatedJsxContent:"Unterminated JSX contents.",UnwrappedAdjacentJSXElements:"Adjacent JSX elements must be wrapped in an enclosing tag. Did you want a JSX fragment <>...</>?"});function $e(r){return r?r.type==="JSXOpeningFragment"||r.type==="JSXClosingFragment":!1}function ct(r){if(r.type==="JSXIdentifier")return r.name;if(r.type==="JSXNamespacedName")return r.namespace.name+":"+r.name.name;if(r.type==="JSXMemberExpression")return ct(r.object)+"."+ct(r.property);throw new Error("Node had unexpected type: "+r.type)}var bl=r=>class extends r{jsxReadToken(){let e="",t=this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(Xe.UnterminatedJsxContent,this.state.startLoc);let s=this.input.charCodeAt(this.state.pos);switch(s){case 60:case 123:if(this.state.pos===this.state.start){s===60&&this.state.canStartJSXElement?(++this.state.pos,this.finishToken(142)):super.getTokenFromCode(s);return}e+=this.input.slice(t,this.state.pos),this.finishToken(141,e);return;case 38:e+=this.input.slice(t,this.state.pos),e+=this.jsxReadEntity(),t=this.state.pos;break;case 62:case 125:default:Rt(s)?(e+=this.input.slice(t,this.state.pos),e+=this.jsxReadNewLine(!0),t=this.state.pos):++this.state.pos}}}jsxReadNewLine(e){let t=this.input.charCodeAt(this.state.pos),s;return++this.state.pos,t===13&&this.input.charCodeAt(this.state.pos)===10?(++this.state.pos,s=e?`
7
7
  `:`\r
8
- `):s=String.fromCharCode(t),++this.state.curLine,this.state.lineStart=this.state.pos,s}jsxReadString(e){let t="",s=++this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(b.UnterminatedString,this.state.startLoc);let i=this.input.charCodeAt(this.state.pos);if(i===e)break;i===38?(t+=this.input.slice(s,this.state.pos),t+=this.jsxReadEntity(),s=this.state.pos):Rt(i)?(t+=this.input.slice(s,this.state.pos),t+=this.jsxReadNewLine(!1),s=this.state.pos):++this.state.pos}t+=this.input.slice(s,this.state.pos++),this.finishToken(133,t)}jsxReadEntity(){let e=++this.state.pos;if(this.codePointAtPos(this.state.pos)===35){++this.state.pos;let t=10;this.codePointAtPos(this.state.pos)===120&&(t=16,++this.state.pos);let s=this.readInt(t,void 0,!1,"bail");if(s!==null&&this.codePointAtPos(this.state.pos)===59)return++this.state.pos,String.fromCodePoint(s)}else{let t=0,s=!1;for(;t++<10&&this.state.pos<this.length&&!(s=this.codePointAtPos(this.state.pos)==59);)++this.state.pos;if(s){let i=this.input.slice(e,this.state.pos),a=ml[i];if(++this.state.pos,a)return a}}return this.state.pos=e,"&"}jsxReadWord(){let e,t=this.state.pos;do e=this.input.charCodeAt(++this.state.pos);while(pt(e)||e===45);this.finishToken(140,this.input.slice(t,this.state.pos))}jsxParseIdentifier(){let e=this.startNode();return this.match(140)?e.name=this.state.value:Vs(this.state.type)?e.name=He(this.state.type):this.unexpected(),this.next(),this.finishNode(e,"JSXIdentifier")}jsxParseNamespacedName(){let e=this.state.startLoc,t=this.jsxParseIdentifier();if(!this.eat(14))return t;let s=this.startNodeAt(e);return s.namespace=t,s.name=this.jsxParseIdentifier(),this.finishNode(s,"JSXNamespacedName")}jsxParseElementName(){let e=this.state.startLoc,t=this.jsxParseNamespacedName();if(t.type==="JSXNamespacedName")return t;for(;this.eat(16);){let s=this.startNodeAt(e);s.object=t,s.property=this.jsxParseIdentifier(),t=this.finishNode(s,"JSXMemberExpression")}return t}jsxParseAttributeValue(){let e;switch(this.state.type){case 5:return e=this.startNode(),this.setContext(V.brace),this.next(),e=this.jsxParseExpressionContainer(e,V.j_oTag),e.expression.type==="JSXEmptyExpression"&&this.raise(Xe.AttributeIsEmpty,e),e;case 142:case 133:return this.parseExprAtom();default:throw this.raise(Xe.UnsupportedJsxValue,this.state.startLoc)}}jsxParseEmptyExpression(){let e=this.startNodeAt(this.state.lastTokEndLoc);return this.finishNodeAt(e,"JSXEmptyExpression",this.state.startLoc)}jsxParseSpreadChild(e){return this.next(),e.expression=this.parseExpression(),this.setContext(V.j_expr),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(e,"JSXSpreadChild")}jsxParseExpressionContainer(e,t){if(this.match(8))e.expression=this.jsxParseEmptyExpression();else{let s=this.parseExpression();e.expression=s}return this.setContext(t),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(e,"JSXExpressionContainer")}jsxParseAttribute(){let e=this.startNode();return this.match(5)?(this.setContext(V.brace),this.next(),this.expect(21),e.argument=this.parseMaybeAssignAllowIn(),this.setContext(V.j_oTag),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(e,"JSXSpreadAttribute")):(e.name=this.jsxParseNamespacedName(),e.value=this.eat(29)?this.jsxParseAttributeValue():null,this.finishNode(e,"JSXAttribute"))}jsxParseOpeningElementAt(e){let t=this.startNodeAt(e);return this.eat(143)?this.finishNode(t,"JSXOpeningFragment"):(t.name=this.jsxParseElementName(),this.jsxParseOpeningElementAfterName(t))}jsxParseOpeningElementAfterName(e){let t=[];for(;!this.match(56)&&!this.match(143);)t.push(this.jsxParseAttribute());return e.attributes=t,e.selfClosing=this.eat(56),this.expect(143),this.finishNode(e,"JSXOpeningElement")}jsxParseClosingElementAt(e){let t=this.startNodeAt(e);return this.eat(143)?this.finishNode(t,"JSXClosingFragment"):(t.name=this.jsxParseElementName(),this.expect(143),this.finishNode(t,"JSXClosingElement"))}jsxParseElementAt(e){let t=this.startNodeAt(e),s=[],i=this.jsxParseOpeningElementAt(e),a=null;if(!i.selfClosing){e:for(;;)switch(this.state.type){case 142:if(e=this.state.startLoc,this.next(),this.eat(56)){a=this.jsxParseClosingElementAt(e);break e}s.push(this.jsxParseElementAt(e));break;case 141:s.push(this.parseExprAtom());break;case 5:{let o=this.startNode();this.setContext(V.brace),this.next(),this.match(21)?s.push(this.jsxParseSpreadChild(o)):s.push(this.jsxParseExpressionContainer(o,V.j_expr));break}default:this.unexpected()}$e(i)&&!$e(a)&&a!==null?this.raise(Xe.MissingClosingTagFragment,a):!$e(i)&&$e(a)?this.raise(Xe.MissingClosingTagElement,a,{openingTagName:ct(i.name)}):!$e(i)&&!$e(a)&&ct(a.name)!==ct(i.name)&&this.raise(Xe.MissingClosingTagElement,a,{openingTagName:ct(i.name)})}if($e(i)?(t.openingFragment=i,t.closingFragment=a):(t.openingElement=i,t.closingElement=a),t.children=s,this.match(47))throw this.raise(Xe.UnwrappedAdjacentJSXElements,this.state.startLoc);return $e(i)?this.finishNode(t,"JSXFragment"):this.finishNode(t,"JSXElement")}jsxParseElement(){let e=this.state.startLoc;return this.next(),this.jsxParseElementAt(e)}setContext(e){let{context:t}=this.state;t[t.length-1]=e}parseExprAtom(e){return this.match(141)?this.parseLiteral(this.state.value,"JSXText"):this.match(142)?this.jsxParseElement():this.match(47)&&this.input.charCodeAt(this.state.pos)!==33?(this.replaceToken(142),this.jsxParseElement()):super.parseExprAtom(e)}skipSpace(){this.curContext().preserveSpace||super.skipSpace()}getTokenFromCode(e){let t=this.curContext();if(t===V.j_expr){this.jsxReadToken();return}if(t===V.j_oTag||t===V.j_cTag){if(_e(e)){this.jsxReadWord();return}if(e===62){++this.state.pos,this.finishToken(143);return}if((e===34||e===39)&&t===V.j_oTag){this.jsxReadString(e);return}}if(e===60&&this.state.canStartJSXElement&&this.input.charCodeAt(this.state.pos+1)!==33){++this.state.pos,this.finishToken(142);return}super.getTokenFromCode(e)}updateContext(e){let{context:t,type:s}=this.state;if(s===56&&e===142)t.splice(-2,2,V.j_cTag),this.state.canStartJSXElement=!1;else if(s===142)t.push(V.j_oTag);else if(s===143){let i=t[t.length-1];i===V.j_oTag&&e===56||i===V.j_cTag?(t.pop(),this.state.canStartJSXElement=t[t.length-1]===V.j_expr):(this.setContext(V.j_expr),this.state.canStartJSXElement=!0)}else this.state.canStartJSXElement=Lo(s)}},Ns=class extends Bt{constructor(...n){super(...n),this.tsNames=new Map}},Ds=class extends jt{constructor(...n){super(...n),this.importsStack=[]}createScope(n){return this.importsStack.push(new Set),new Ns(n)}enter(n){n==256&&this.importsStack.push(new Set),super.enter(n)}exit(){let n=super.exit();return n==256&&this.importsStack.pop(),n}hasImport(n,e){let t=this.importsStack.length;if(this.importsStack[t-1].has(n))return!0;if(!e&&t>1){for(let s=0;s<t-1;s++)if(this.importsStack[s].has(n))return!0}return!1}declareName(n,e,t){if(e&4096){this.hasImport(n,!0)&&this.parser.raise(b.VarRedeclaration,t,{identifierName:n}),this.importsStack[this.importsStack.length-1].add(n);return}let s=this.currentScope(),i=s.tsNames.get(n)||0;if(e&1024){this.maybeExportDefined(s,n),s.tsNames.set(n,i|16);return}super.declareName(n,e,t),e&2&&(e&1||(this.checkRedeclarationInScope(s,n,e,t),this.maybeExportDefined(s,n)),i=i|1),e&256&&(i=i|2),e&512&&(i=i|4),e&128&&(i=i|8),i&&s.tsNames.set(n,i)}isRedeclaredInScope(n,e,t){let s=n.tsNames.get(e);if((s&2)>0){if(t&256){let i=!!(t&512),a=(s&4)>0;return i!==a}return!0}return t&128&&(s&8)>0?n.names.get(e)&2?!!(t&1):!1:t&2&&(s&1)>0?!0:super.isRedeclaredInScope(n,e,t)}checkLocalExport(n){let{name:e}=n;if(this.hasImport(e))return;let t=this.scopeStack.length;for(let s=t-1;s>=0;s--){let a=this.scopeStack[s].tsNames.get(e);if((a&1)>0||(a&16)>0)return}super.checkLocalExport(n)}},gl=(r,n)=>Object.hasOwnProperty.call(r,n)&&r[n],vi=r=>r.type==="ParenthesizedExpression"?vi(r.expression):r,Ms=class extends ks{toAssignable(n,e=!1){var t,s;let i;switch((n.type==="ParenthesizedExpression"||(t=n.extra)!=null&&t.parenthesized)&&(i=vi(n),e?i.type==="Identifier"?this.expressionScope.recordArrowParameterBindingError(b.InvalidParenthesizedAssignment,n):i.type!=="MemberExpression"&&!this.isOptionalMemberExpression(i)&&this.raise(b.InvalidParenthesizedAssignment,n):this.raise(b.InvalidParenthesizedAssignment,n)),n.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":break;case"ObjectExpression":n.type="ObjectPattern";for(let o=0,l=n.properties.length,c=l-1;o<l;o++){var a;let p=n.properties[o],u=o===c;this.toAssignableObjectExpressionProp(p,u,e),u&&p.type==="RestElement"&&(a=n.extra)!=null&&a.trailingCommaLoc&&this.raise(b.RestTrailingComma,n.extra.trailingCommaLoc)}break;case"ObjectProperty":{let{key:o,value:l}=n;this.isPrivateName(o)&&this.classScope.usePrivateName(this.getPrivateNameSV(o),o.loc.start),this.toAssignable(l,e);break}case"SpreadElement":throw new Error("Internal @babel/parser error (this is a bug, please report it). SpreadElement should be converted by .toAssignable's caller.");case"ArrayExpression":n.type="ArrayPattern",this.toAssignableList(n.elements,(s=n.extra)==null?void 0:s.trailingCommaLoc,e);break;case"AssignmentExpression":n.operator!=="="&&this.raise(b.MissingEqInAssignment,n.left.loc.end),n.type="AssignmentPattern",delete n.operator,this.toAssignable(n.left,e);break;case"ParenthesizedExpression":this.toAssignable(i,e);break}}toAssignableObjectExpressionProp(n,e,t){if(n.type==="ObjectMethod")this.raise(n.kind==="get"||n.kind==="set"?b.PatternHasAccessor:b.PatternHasMethod,n.key);else if(n.type==="SpreadElement"){n.type="RestElement";let s=n.argument;this.checkToRestConversion(s,!1),this.toAssignable(s,t),e||this.raise(b.RestTrailingComma,n)}else this.toAssignable(n,t)}toAssignableList(n,e,t){let s=n.length-1;for(let i=0;i<=s;i++){let a=n[i];if(a){if(a.type==="SpreadElement"){a.type="RestElement";let o=a.argument;this.checkToRestConversion(o,!0),this.toAssignable(o,t)}else this.toAssignable(a,t);a.type==="RestElement"&&(i<s?this.raise(b.RestTrailingComma,a):e&&this.raise(b.RestTrailingComma,e))}}}isAssignable(n,e){switch(n.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":return!0;case"ObjectExpression":{let t=n.properties.length-1;return n.properties.every((s,i)=>s.type!=="ObjectMethod"&&(i===t||s.type!=="SpreadElement")&&this.isAssignable(s))}case"ObjectProperty":return this.isAssignable(n.value);case"SpreadElement":return this.isAssignable(n.argument);case"ArrayExpression":return n.elements.every(t=>t===null||this.isAssignable(t));case"AssignmentExpression":return n.operator==="=";case"ParenthesizedExpression":return this.isAssignable(n.expression);case"MemberExpression":case"OptionalMemberExpression":return!e;default:return!1}}toReferencedList(n,e){return n}toReferencedListDeep(n,e){this.toReferencedList(n,e);for(let t of n)t?.type==="ArrayExpression"&&this.toReferencedListDeep(t.elements)}parseSpread(n){let e=this.startNode();return this.next(),e.argument=this.parseMaybeAssignAllowIn(n,void 0),this.finishNode(e,"SpreadElement")}parseRestBinding(){let n=this.startNode();return this.next(),n.argument=this.parseBindingAtom(),this.finishNode(n,"RestElement")}parseBindingAtom(){switch(this.state.type){case 0:{let n=this.startNode();return this.next(),n.elements=this.parseBindingList(3,93,1),this.finishNode(n,"ArrayPattern")}case 5:return this.parseObjectLike(8,!0)}return this.parseIdentifier()}parseBindingList(n,e,t){let s=t&1,i=[],a=!0;for(;!this.eat(n);)if(a?a=!1:this.expect(12),s&&this.match(12))i.push(null);else{if(this.eat(n))break;if(this.match(21)){if(i.push(this.parseAssignableListItemTypes(this.parseRestBinding(),t)),!this.checkCommaAfterRest(e)){this.expect(n);break}}else{let o=[];for(this.match(26)&&this.hasPlugin("decorators")&&this.raise(b.UnsupportedParameterDecorator,this.state.startLoc);this.match(26);)o.push(this.parseDecorator());i.push(this.parseAssignableListItem(t,o))}}return i}parseBindingRestProperty(n){return this.next(),n.argument=this.parseIdentifier(),this.checkCommaAfterRest(125),this.finishNode(n,"RestElement")}parseBindingProperty(){let n=this.startNode(),{type:e,startLoc:t}=this.state;return e===21?this.parseBindingRestProperty(n):(e===138?(this.expectPlugin("destructuringPrivate",t),this.classScope.usePrivateName(this.state.value,t),n.key=this.parsePrivateName()):this.parsePropertyName(n),n.method=!1,this.parseObjPropValue(n,t,!1,!1,!0,!1))}parseAssignableListItem(n,e){let t=this.parseMaybeDefault();this.parseAssignableListItemTypes(t,n);let s=this.parseMaybeDefault(t.loc.start,t);return e.length&&(t.decorators=e),s}parseAssignableListItemTypes(n,e){return n}parseMaybeDefault(n,e){var t,s;if((t=n)!=null||(n=this.state.startLoc),e=(s=e)!=null?s:this.parseBindingAtom(),!this.eat(29))return e;let i=this.startNodeAt(n);return i.left=e,i.right=this.parseMaybeAssignAllowIn(),this.finishNode(i,"AssignmentPattern")}isValidLVal(n,e,t){return gl({AssignmentPattern:"left",RestElement:"argument",ObjectProperty:"value",ParenthesizedExpression:"expression",ArrayPattern:"elements",ObjectPattern:"properties"},n)}isOptionalMemberExpression(n){return n.type==="OptionalMemberExpression"}checkLVal(n,{in:e,binding:t=64,checkClashes:s=!1,strictModeChanged:i=!1,hasParenthesizedAncestor:a=!1}){var o;let l=n.type;if(this.isObjectMethod(n))return;let c=this.isOptionalMemberExpression(n);if(c||l==="MemberExpression"){c&&(this.expectPlugin("optionalChainingAssign",n.loc.start),e.type!=="AssignmentExpression"&&this.raise(b.InvalidLhsOptionalChaining,n,{ancestor:e})),t!==64&&this.raise(b.InvalidPropertyBindingPattern,n);return}if(l==="Identifier"){this.checkIdentifier(n,t,i);let{name:d}=n;s&&(s.has(d)?this.raise(b.ParamDupe,n):s.add(d));return}let p=this.isValidLVal(l,!(a||(o=n.extra)!=null&&o.parenthesized)&&e.type==="AssignmentExpression",t);if(p===!0)return;if(p===!1){let d=t===64?b.InvalidLhs:b.InvalidLhsBinding;this.raise(d,n,{ancestor:e});return}let[u,h]=Array.isArray(p)?p:[p,l==="ParenthesizedExpression"],m=l==="ArrayPattern"||l==="ObjectPattern"?{type:l}:e;for(let d of[].concat(n[u]))d&&this.checkLVal(d,{in:m,binding:t,checkClashes:s,strictModeChanged:i,hasParenthesizedAncestor:h})}checkIdentifier(n,e,t=!1){this.state.strict&&(t?hi(n.name,this.inModule):di(n.name))&&(e===64?this.raise(b.StrictEvalArguments,n,{referenceName:n.name}):this.raise(b.StrictEvalArgumentsBinding,n,{bindingName:n.name})),e&8192&&n.name==="let"&&this.raise(b.LetInLexicalBinding,n),e&64||this.declareNameFromIdentifier(n,e)}declareNameFromIdentifier(n,e){this.scope.declareName(n.name,e,n.loc.start)}checkToRestConversion(n,e){switch(n.type){case"ParenthesizedExpression":this.checkToRestConversion(n.expression,e);break;case"Identifier":case"MemberExpression":break;case"ArrayExpression":case"ObjectExpression":if(e)break;default:this.raise(b.InvalidRestAssignmentPattern,n)}}checkCommaAfterRest(n){return this.match(12)?(this.raise(this.lookaheadCharCode()===n?b.RestTrailingComma:b.ElementAfterRest,this.state.startLoc),!0):!1}},yl=(r,n)=>Object.hasOwnProperty.call(r,n)&&r[n];function vl(r){if(r==null)throw new Error(`Unexpected ${r} value.`);return r}function Zr(r){if(!r)throw new Error("Assert fail")}var k=Re`typescript`({AbstractMethodHasImplementation:({methodName:r})=>`Method '${r}' cannot have an implementation because it is marked abstract.`,AbstractPropertyHasInitializer:({propertyName:r})=>`Property '${r}' cannot have an initializer because it is marked abstract.`,AccesorCannotDeclareThisParameter:"'get' and 'set' accessors cannot declare 'this' parameters.",AccesorCannotHaveTypeParameters:"An accessor cannot have type parameters.",AccessorCannotBeOptional:"An 'accessor' property cannot be declared optional.",ClassMethodHasDeclare:"Class methods cannot have the 'declare' modifier.",ClassMethodHasReadonly:"Class methods cannot have the 'readonly' modifier.",ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference:"A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference.",ConstructorHasTypeParameters:"Type parameters cannot appear on a constructor declaration.",DeclareAccessor:({kind:r})=>`'declare' is not allowed in ${r}ters.`,DeclareClassFieldHasInitializer:"Initializers are not allowed in ambient contexts.",DeclareFunctionHasImplementation:"An implementation cannot be declared in ambient contexts.",DuplicateAccessibilityModifier:({modifier:r})=>"Accessibility modifier already seen.",DuplicateModifier:({modifier:r})=>`Duplicate modifier: '${r}'.`,EmptyHeritageClauseType:({token:r})=>`'${r}' list cannot be empty.`,EmptyTypeArguments:"Type argument list cannot be empty.",EmptyTypeParameters:"Type parameter list cannot be empty.",ExpectedAmbientAfterExportDeclare:"'export declare' must be followed by an ambient declaration.",ImportAliasHasImportType:"An import alias can not use 'import type'.",ImportReflectionHasImportType:"An `import module` declaration can not use `type` modifier",IncompatibleModifiers:({modifiers:r})=>`'${r[0]}' modifier cannot be used with '${r[1]}' modifier.`,IndexSignatureHasAbstract:"Index signatures cannot have the 'abstract' modifier.",IndexSignatureHasAccessibility:({modifier:r})=>`Index signatures cannot have an accessibility modifier ('${r}').`,IndexSignatureHasDeclare:"Index signatures cannot have the 'declare' modifier.",IndexSignatureHasOverride:"'override' modifier cannot appear on an index signature.",IndexSignatureHasStatic:"Index signatures cannot have the 'static' modifier.",InitializerNotAllowedInAmbientContext:"Initializers are not allowed in ambient contexts.",InvalidModifierOnTypeMember:({modifier:r})=>`'${r}' modifier cannot appear on a type member.`,InvalidModifierOnTypeParameter:({modifier:r})=>`'${r}' modifier cannot appear on a type parameter.`,InvalidModifierOnTypeParameterPositions:({modifier:r})=>`'${r}' modifier can only appear on a type parameter of a class, interface or type alias.`,InvalidModifiersOrder:({orderedModifiers:r})=>`'${r[0]}' modifier must precede '${r[1]}' modifier.`,InvalidPropertyAccessAfterInstantiationExpression:"Invalid property access after an instantiation expression. You can either wrap the instantiation expression in parentheses, or delete the type arguments.",InvalidTupleMemberLabel:"Tuple members must be labeled with a simple identifier.",MissingInterfaceName:"'interface' declarations must be followed by an identifier.",NonAbstractClassHasAbstractMethod:"Abstract methods can only appear within an abstract class.",NonClassMethodPropertyHasAbstractModifer:"'abstract' modifier can only appear on a class, method, or property declaration.",OptionalTypeBeforeRequired:"A required element cannot follow an optional element.",OverrideNotInSubClass:"This member cannot have an 'override' modifier because its containing class does not extend another class.",PatternIsOptional:"A binding pattern parameter cannot be optional in an implementation signature.",PrivateElementHasAbstract:"Private elements cannot have the 'abstract' modifier.",PrivateElementHasAccessibility:({modifier:r})=>`Private elements cannot have an accessibility modifier ('${r}').`,ReadonlyForMethodSignature:"'readonly' modifier can only appear on a property declaration or index signature.",ReservedArrowTypeParam:"This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma, as in `<T,>() => ...`.",ReservedTypeAssertion:"This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead.",SetAccesorCannotHaveOptionalParameter:"A 'set' accessor cannot have an optional parameter.",SetAccesorCannotHaveRestParameter:"A 'set' accessor cannot have rest parameter.",SetAccesorCannotHaveReturnType:"A 'set' accessor cannot have a return type annotation.",SingleTypeParameterWithoutTrailingComma:({typeParameterName:r})=>`Single type parameter ${r} should have a trailing comma. Example usage: <${r},>.`,StaticBlockCannotHaveModifier:"Static class blocks cannot have any modifier.",TupleOptionalAfterType:"A labeled tuple optional element must be declared using a question mark after the name and before the colon (`name?: type`), rather than after the type (`name: type?`).",TypeAnnotationAfterAssign:"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.",TypeImportCannotSpecifyDefaultAndNamed:"A type-only import can specify a default import or named bindings, but not both.",TypeModifierIsUsedInTypeExports:"The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement.",TypeModifierIsUsedInTypeImports:"The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement.",UnexpectedParameterModifier:"A parameter property is only allowed in a constructor implementation.",UnexpectedReadonly:"'readonly' type modifier is only permitted on array and tuple literal types.",UnexpectedTypeAnnotation:"Did not expect a type annotation here.",UnexpectedTypeCastInParameter:"Unexpected type cast in parameter position.",UnsupportedImportTypeArgument:"Argument in a type import must be a string literal.",UnsupportedParameterPropertyKind:"A parameter property may not be declared using a binding pattern.",UnsupportedSignatureParameterKind:({type:r})=>`Name in a signature must be an Identifier, ObjectPattern or ArrayPattern, instead got ${r}.`});function xl(r){switch(r){case"any":return"TSAnyKeyword";case"boolean":return"TSBooleanKeyword";case"bigint":return"TSBigIntKeyword";case"never":return"TSNeverKeyword";case"number":return"TSNumberKeyword";case"object":return"TSObjectKeyword";case"string":return"TSStringKeyword";case"symbol":return"TSSymbolKeyword";case"undefined":return"TSUndefinedKeyword";case"unknown":return"TSUnknownKeyword";default:return}}function ei(r){return r==="private"||r==="public"||r==="protected"}function Pl(r){return r==="in"||r==="out"}var Tl=r=>class extends r{constructor(...e){super(...e),this.tsParseInOutModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out"],disallowedModifiers:["const","public","private","protected","readonly","declare","abstract","override"],errorTemplate:k.InvalidModifierOnTypeParameter}),this.tsParseConstModifier=this.tsParseModifiers.bind(this,{allowedModifiers:["const"],disallowedModifiers:["in","out"],errorTemplate:k.InvalidModifierOnTypeParameterPositions}),this.tsParseInOutConstModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out","const"],disallowedModifiers:["public","private","protected","readonly","declare","abstract","override"],errorTemplate:k.InvalidModifierOnTypeParameter})}getScopeHandler(){return Ds}tsIsIdentifier(){return B(this.state.type)}tsTokenCanFollowModifier(){return(this.match(0)||this.match(5)||this.match(55)||this.match(21)||this.match(138)||this.isLiteralPropertyName())&&!this.hasPrecedingLineBreak()}tsNextTokenCanFollowModifier(){return this.next(),this.tsTokenCanFollowModifier()}tsParseModifier(e,t){if(!B(this.state.type)&&this.state.type!==58&&this.state.type!==75)return;let s=this.state.value;if(e.indexOf(s)!==-1){if(t&&this.tsIsStartOfStaticBlocks())return;if(this.tsTryParse(this.tsNextTokenCanFollowModifier.bind(this)))return s}}tsParseModifiers({allowedModifiers:e,disallowedModifiers:t,stopOnStartOfClassStaticBlock:s,errorTemplate:i=k.InvalidModifierOnTypeMember},a){let o=(c,p,u,h)=>{p===u&&a[h]&&this.raise(k.InvalidModifiersOrder,c,{orderedModifiers:[u,h]})},l=(c,p,u,h)=>{(a[u]&&p===h||a[h]&&p===u)&&this.raise(k.IncompatibleModifiers,c,{modifiers:[u,h]})};for(;;){let{startLoc:c}=this.state,p=this.tsParseModifier(e.concat(t??[]),s);if(!p)break;ei(p)?a.accessibility?this.raise(k.DuplicateAccessibilityModifier,c,{modifier:p}):(o(c,p,p,"override"),o(c,p,p,"static"),o(c,p,p,"readonly"),a.accessibility=p):Pl(p)?(a[p]&&this.raise(k.DuplicateModifier,c,{modifier:p}),a[p]=!0,o(c,p,"in","out")):(Object.hasOwnProperty.call(a,p)?this.raise(k.DuplicateModifier,c,{modifier:p}):(o(c,p,"static","readonly"),o(c,p,"static","override"),o(c,p,"override","readonly"),o(c,p,"abstract","override"),l(c,p,"declare","override"),l(c,p,"static","abstract")),a[p]=!0),t!=null&&t.includes(p)&&this.raise(i,c,{modifier:p})}}tsIsListTerminator(e){switch(e){case"EnumMembers":case"TypeMembers":return this.match(8);case"HeritageClauseElement":return this.match(5);case"TupleElementTypes":return this.match(3);case"TypeParametersOrArguments":return this.match(48)}}tsParseList(e,t){let s=[];for(;!this.tsIsListTerminator(e);)s.push(t());return s}tsParseDelimitedList(e,t,s){return vl(this.tsParseDelimitedListWorker(e,t,!0,s))}tsParseDelimitedListWorker(e,t,s,i){let a=[],o=-1;for(;!this.tsIsListTerminator(e);){o=-1;let l=t();if(l==null)return;if(a.push(l),this.eat(12)){o=this.state.lastTokStartLoc.index;continue}if(this.tsIsListTerminator(e))break;s&&this.expect(12);return}return i&&(i.value=o),a}tsParseBracketedList(e,t,s,i,a){i||(s?this.expect(0):this.expect(47));let o=this.tsParseDelimitedList(e,t,a);return s?this.expect(3):this.expect(48),o}tsParseImportType(){let e=this.startNode();return this.expect(83),this.expect(10),this.match(133)||this.raise(k.UnsupportedImportTypeArgument,this.state.startLoc),e.argument=super.parseExprAtom(),this.expect(11),this.eat(16)&&(e.qualifier=this.tsParseEntityName()),this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSImportType")}tsParseEntityName(e=!0){let t=this.parseIdentifier(e);for(;this.eat(16);){let s=this.startNodeAtNode(t);s.left=t,s.right=this.parseIdentifier(e),t=this.finishNode(s,"TSQualifiedName")}return t}tsParseTypeReference(){let e=this.startNode();return e.typeName=this.tsParseEntityName(),!this.hasPrecedingLineBreak()&&this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSTypeReference")}tsParseThisTypePredicate(e){this.next();let t=this.startNodeAtNode(e);return t.parameterName=e,t.typeAnnotation=this.tsParseTypeAnnotation(!1),t.asserts=!1,this.finishNode(t,"TSTypePredicate")}tsParseThisTypeNode(){let e=this.startNode();return this.next(),this.finishNode(e,"TSThisType")}tsParseTypeQuery(){let e=this.startNode();return this.expect(87),this.match(83)?e.exprName=this.tsParseImportType():e.exprName=this.tsParseEntityName(),!this.hasPrecedingLineBreak()&&this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSTypeQuery")}tsParseTypeParameter(e){let t=this.startNode();return e(t),t.name=this.tsParseTypeParameterName(),t.constraint=this.tsEatThenParseType(81),t.default=this.tsEatThenParseType(29),this.finishNode(t,"TSTypeParameter")}tsTryParseTypeParameters(e){if(this.match(47))return this.tsParseTypeParameters(e)}tsParseTypeParameters(e){let t=this.startNode();this.match(47)||this.match(142)?this.next():this.unexpected();let s={value:-1};return t.params=this.tsParseBracketedList("TypeParametersOrArguments",this.tsParseTypeParameter.bind(this,e),!1,!0,s),t.params.length===0&&this.raise(k.EmptyTypeParameters,t),s.value!==-1&&this.addExtra(t,"trailingComma",s.value),this.finishNode(t,"TSTypeParameterDeclaration")}tsFillSignature(e,t){let s=e===19,i="parameters",a="typeAnnotation";t.typeParameters=this.tsTryParseTypeParameters(this.tsParseConstModifier),this.expect(10),t[i]=this.tsParseBindingListForSignature(),s?t[a]=this.tsParseTypeOrTypePredicateAnnotation(e):this.match(e)&&(t[a]=this.tsParseTypeOrTypePredicateAnnotation(e))}tsParseBindingListForSignature(){let e=super.parseBindingList(11,41,2);for(let t of e){let{type:s}=t;(s==="AssignmentPattern"||s==="TSParameterProperty")&&this.raise(k.UnsupportedSignatureParameterKind,t,{type:s})}return e}tsParseTypeMemberSemicolon(){!this.eat(12)&&!this.isLineTerminator()&&this.expect(13)}tsParseSignatureMember(e,t){return this.tsFillSignature(14,t),this.tsParseTypeMemberSemicolon(),this.finishNode(t,e)}tsIsUnambiguouslyIndexSignature(){return this.next(),B(this.state.type)?(this.next(),this.match(14)):!1}tsTryParseIndexSignature(e){if(!(this.match(0)&&this.tsLookAhead(this.tsIsUnambiguouslyIndexSignature.bind(this))))return;this.expect(0);let t=this.parseIdentifier();t.typeAnnotation=this.tsParseTypeAnnotation(),this.resetEndLocation(t),this.expect(3),e.parameters=[t];let s=this.tsTryParseTypeAnnotation();return s&&(e.typeAnnotation=s),this.tsParseTypeMemberSemicolon(),this.finishNode(e,"TSIndexSignature")}tsParsePropertyOrMethodSignature(e,t){this.eat(17)&&(e.optional=!0);let s=e;if(this.match(10)||this.match(47)){t&&this.raise(k.ReadonlyForMethodSignature,e);let i=s;i.kind&&this.match(47)&&this.raise(k.AccesorCannotHaveTypeParameters,this.state.curPosition()),this.tsFillSignature(14,i),this.tsParseTypeMemberSemicolon();let a="parameters",o="typeAnnotation";if(i.kind==="get")i[a].length>0&&(this.raise(b.BadGetterArity,this.state.curPosition()),this.isThisParam(i[a][0])&&this.raise(k.AccesorCannotDeclareThisParameter,this.state.curPosition()));else if(i.kind==="set"){if(i[a].length!==1)this.raise(b.BadSetterArity,this.state.curPosition());else{let l=i[a][0];this.isThisParam(l)&&this.raise(k.AccesorCannotDeclareThisParameter,this.state.curPosition()),l.type==="Identifier"&&l.optional&&this.raise(k.SetAccesorCannotHaveOptionalParameter,this.state.curPosition()),l.type==="RestElement"&&this.raise(k.SetAccesorCannotHaveRestParameter,this.state.curPosition())}i[o]&&this.raise(k.SetAccesorCannotHaveReturnType,i[o])}else i.kind="method";return this.finishNode(i,"TSMethodSignature")}else{let i=s;t&&(i.readonly=!0);let a=this.tsTryParseTypeAnnotation();return a&&(i.typeAnnotation=a),this.tsParseTypeMemberSemicolon(),this.finishNode(i,"TSPropertySignature")}}tsParseTypeMember(){let e=this.startNode();if(this.match(10)||this.match(47))return this.tsParseSignatureMember("TSCallSignatureDeclaration",e);if(this.match(77)){let s=this.startNode();return this.next(),this.match(10)||this.match(47)?this.tsParseSignatureMember("TSConstructSignatureDeclaration",e):(e.key=this.createIdentifier(s,"new"),this.tsParsePropertyOrMethodSignature(e,!1))}this.tsParseModifiers({allowedModifiers:["readonly"],disallowedModifiers:["declare","abstract","private","protected","public","static","override"]},e);let t=this.tsTryParseIndexSignature(e);return t||(super.parsePropertyName(e),!e.computed&&e.key.type==="Identifier"&&(e.key.name==="get"||e.key.name==="set")&&this.tsTokenCanFollowModifier()&&(e.kind=e.key.name,super.parsePropertyName(e)),this.tsParsePropertyOrMethodSignature(e,!!e.readonly))}tsParseTypeLiteral(){let e=this.startNode();return e.members=this.tsParseObjectTypeMembers(),this.finishNode(e,"TSTypeLiteral")}tsParseObjectTypeMembers(){this.expect(5);let e=this.tsParseList("TypeMembers",this.tsParseTypeMember.bind(this));return this.expect(8),e}tsIsStartOfMappedType(){return this.next(),this.eat(53)?this.isContextual(122):(this.isContextual(122)&&this.next(),!this.match(0)||(this.next(),!this.tsIsIdentifier())?!1:(this.next(),this.match(58)))}tsParseMappedTypeParameter(){let e=this.startNode();return e.name=this.tsParseTypeParameterName(),e.constraint=this.tsExpectThenParseType(58),this.finishNode(e,"TSTypeParameter")}tsParseMappedType(){let e=this.startNode();return this.expect(5),this.match(53)?(e.readonly=this.state.value,this.next(),this.expectContextual(122)):this.eatContextual(122)&&(e.readonly=!0),this.expect(0),e.typeParameter=this.tsParseMappedTypeParameter(),e.nameType=this.eatContextual(93)?this.tsParseType():null,this.expect(3),this.match(53)?(e.optional=this.state.value,this.next(),this.expect(17)):this.eat(17)&&(e.optional=!0),e.typeAnnotation=this.tsTryParseType(),this.semicolon(),this.expect(8),this.finishNode(e,"TSMappedType")}tsParseTupleType(){let e=this.startNode();e.elementTypes=this.tsParseBracketedList("TupleElementTypes",this.tsParseTupleElementType.bind(this),!0,!1);let t=!1;return e.elementTypes.forEach(s=>{let{type:i}=s;t&&i!=="TSRestType"&&i!=="TSOptionalType"&&!(i==="TSNamedTupleMember"&&s.optional)&&this.raise(k.OptionalTypeBeforeRequired,s),t||(t=i==="TSNamedTupleMember"&&s.optional||i==="TSOptionalType")}),this.finishNode(e,"TSTupleType")}tsParseTupleElementType(){let{startLoc:e}=this.state,t=this.eat(21),s,i,a,o,c=xe(this.state.type)?this.lookaheadCharCode():null;if(c===58)s=!0,a=!1,i=this.parseIdentifier(!0),this.expect(14),o=this.tsParseType();else if(c===63){a=!0;let p=this.state.startLoc,u=this.state.value,h=this.tsParseNonArrayType();this.lookaheadCharCode()===58?(s=!0,i=this.createIdentifier(this.startNodeAt(p),u),this.expect(17),this.expect(14),o=this.tsParseType()):(s=!1,o=h,this.expect(17))}else o=this.tsParseType(),a=this.eat(17),s=this.eat(14);if(s){let p;i?(p=this.startNodeAtNode(i),p.optional=a,p.label=i,p.elementType=o,this.eat(17)&&(p.optional=!0,this.raise(k.TupleOptionalAfterType,this.state.lastTokStartLoc))):(p=this.startNodeAtNode(o),p.optional=a,this.raise(k.InvalidTupleMemberLabel,o),p.label=o,p.elementType=this.tsParseType()),o=this.finishNode(p,"TSNamedTupleMember")}else if(a){let p=this.startNodeAtNode(o);p.typeAnnotation=o,o=this.finishNode(p,"TSOptionalType")}if(t){let p=this.startNodeAt(e);p.typeAnnotation=o,o=this.finishNode(p,"TSRestType")}return o}tsParseParenthesizedType(){let e=this.startNode();return this.expect(10),e.typeAnnotation=this.tsParseType(),this.expect(11),this.finishNode(e,"TSParenthesizedType")}tsParseFunctionOrConstructorType(e,t){let s=this.startNode();return e==="TSConstructorType"&&(s.abstract=!!t,t&&this.next(),this.next()),this.tsInAllowConditionalTypesContext(()=>this.tsFillSignature(19,s)),this.finishNode(s,e)}tsParseLiteralTypeNode(){let e=this.startNode();switch(this.state.type){case 134:case 135:case 133:case 85:case 86:e.literal=super.parseExprAtom();break;default:this.unexpected()}return this.finishNode(e,"TSLiteralType")}tsParseTemplateLiteralType(){let e=this.startNode();return e.literal=super.parseTemplate(!1),this.finishNode(e,"TSLiteralType")}parseTemplateSubstitution(){return this.state.inType?this.tsParseType():super.parseTemplateSubstitution()}tsParseThisTypeOrThisTypePredicate(){let e=this.tsParseThisTypeNode();return this.isContextual(116)&&!this.hasPrecedingLineBreak()?this.tsParseThisTypePredicate(e):e}tsParseNonArrayType(){switch(this.state.type){case 133:case 134:case 135:case 85:case 86:return this.tsParseLiteralTypeNode();case 53:if(this.state.value==="-"){let e=this.startNode(),t=this.lookahead();return t.type!==134&&t.type!==135&&this.unexpected(),e.literal=this.parseMaybeUnary(),this.finishNode(e,"TSLiteralType")}break;case 78:return this.tsParseThisTypeOrThisTypePredicate();case 87:return this.tsParseTypeQuery();case 83:return this.tsParseImportType();case 5:return this.tsLookAhead(this.tsIsStartOfMappedType.bind(this))?this.tsParseMappedType():this.tsParseTypeLiteral();case 0:return this.tsParseTupleType();case 10:return this.tsParseParenthesizedType();case 25:case 24:return this.tsParseTemplateLiteralType();default:{let{type:e}=this.state;if(B(e)||e===88||e===84){let t=e===88?"TSVoidKeyword":e===84?"TSNullKeyword":xl(this.state.value);if(t!==void 0&&this.lookaheadCharCode()!==46){let s=this.startNode();return this.next(),this.finishNode(s,t)}return this.tsParseTypeReference()}}}this.unexpected()}tsParseArrayTypeOrHigher(){let e=this.tsParseNonArrayType();for(;!this.hasPrecedingLineBreak()&&this.eat(0);)if(this.match(3)){let t=this.startNodeAtNode(e);t.elementType=e,this.expect(3),e=this.finishNode(t,"TSArrayType")}else{let t=this.startNodeAtNode(e);t.objectType=e,t.indexType=this.tsParseType(),this.expect(3),e=this.finishNode(t,"TSIndexedAccessType")}return e}tsParseTypeOperator(){let e=this.startNode(),t=this.state.value;return this.next(),e.operator=t,e.typeAnnotation=this.tsParseTypeOperatorOrHigher(),t==="readonly"&&this.tsCheckTypeAnnotationForReadOnly(e),this.finishNode(e,"TSTypeOperator")}tsCheckTypeAnnotationForReadOnly(e){switch(e.typeAnnotation.type){case"TSTupleType":case"TSArrayType":return;default:this.raise(k.UnexpectedReadonly,e)}}tsParseInferType(){let e=this.startNode();this.expectContextual(115);let t=this.startNode();return t.name=this.tsParseTypeParameterName(),t.constraint=this.tsTryParse(()=>this.tsParseConstraintForInferType()),e.typeParameter=this.finishNode(t,"TSTypeParameter"),this.finishNode(e,"TSInferType")}tsParseConstraintForInferType(){if(this.eat(81)){let e=this.tsInDisallowConditionalTypesContext(()=>this.tsParseType());if(this.state.inDisallowConditionalTypesContext||!this.match(17))return e}}tsParseTypeOperatorOrHigher(){return Bo(this.state.type)&&!this.state.containsEsc?this.tsParseTypeOperator():this.isContextual(115)?this.tsParseInferType():this.tsInAllowConditionalTypesContext(()=>this.tsParseArrayTypeOrHigher())}tsParseUnionOrIntersectionType(e,t,s){let i=this.startNode(),a=this.eat(s),o=[];do o.push(t());while(this.eat(s));return o.length===1&&!a?o[0]:(i.types=o,this.finishNode(i,e))}tsParseIntersectionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSIntersectionType",this.tsParseTypeOperatorOrHigher.bind(this),45)}tsParseUnionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSUnionType",this.tsParseIntersectionTypeOrHigher.bind(this),43)}tsIsStartOfFunctionType(){return this.match(47)?!0:this.match(10)&&this.tsLookAhead(this.tsIsUnambiguouslyStartOfFunctionType.bind(this))}tsSkipParameterStart(){if(B(this.state.type)||this.match(78))return this.next(),!0;if(this.match(5)){let{errors:e}=this.state,t=e.length;try{return this.parseObjectLike(8,!0),e.length===t}catch{return!1}}if(this.match(0)){this.next();let{errors:e}=this.state,t=e.length;try{return super.parseBindingList(3,93,1),e.length===t}catch{return!1}}return!1}tsIsUnambiguouslyStartOfFunctionType(){return this.next(),!!(this.match(11)||this.match(21)||this.tsSkipParameterStart()&&(this.match(14)||this.match(12)||this.match(17)||this.match(29)||this.match(11)&&(this.next(),this.match(19))))}tsParseTypeOrTypePredicateAnnotation(e){return this.tsInType(()=>{let t=this.startNode();this.expect(e);let s=this.startNode(),i=!!this.tsTryParse(this.tsParseTypePredicateAsserts.bind(this));if(i&&this.match(78)){let l=this.tsParseThisTypeOrThisTypePredicate();return l.type==="TSThisType"?(s.parameterName=l,s.asserts=!0,s.typeAnnotation=null,l=this.finishNode(s,"TSTypePredicate")):(this.resetStartLocationFromNode(l,s),l.asserts=!0),t.typeAnnotation=l,this.finishNode(t,"TSTypeAnnotation")}let a=this.tsIsIdentifier()&&this.tsTryParse(this.tsParseTypePredicatePrefix.bind(this));if(!a)return i?(s.parameterName=this.parseIdentifier(),s.asserts=i,s.typeAnnotation=null,t.typeAnnotation=this.finishNode(s,"TSTypePredicate"),this.finishNode(t,"TSTypeAnnotation")):this.tsParseTypeAnnotation(!1,t);let o=this.tsParseTypeAnnotation(!1);return s.parameterName=a,s.typeAnnotation=o,s.asserts=i,t.typeAnnotation=this.finishNode(s,"TSTypePredicate"),this.finishNode(t,"TSTypeAnnotation")})}tsTryParseTypeOrTypePredicateAnnotation(){if(this.match(14))return this.tsParseTypeOrTypePredicateAnnotation(14)}tsTryParseTypeAnnotation(){if(this.match(14))return this.tsParseTypeAnnotation()}tsTryParseType(){return this.tsEatThenParseType(14)}tsParseTypePredicatePrefix(){let e=this.parseIdentifier();if(this.isContextual(116)&&!this.hasPrecedingLineBreak())return this.next(),e}tsParseTypePredicateAsserts(){if(this.state.type!==109)return!1;let e=this.state.containsEsc;return this.next(),!B(this.state.type)&&!this.match(78)?!1:(e&&this.raise(b.InvalidEscapedReservedWord,this.state.lastTokStartLoc,{reservedWord:"asserts"}),!0)}tsParseTypeAnnotation(e=!0,t=this.startNode()){return this.tsInType(()=>{e&&this.expect(14),t.typeAnnotation=this.tsParseType()}),this.finishNode(t,"TSTypeAnnotation")}tsParseType(){Zr(this.state.inType);let e=this.tsParseNonConditionalType();if(this.state.inDisallowConditionalTypesContext||this.hasPrecedingLineBreak()||!this.eat(81))return e;let t=this.startNodeAtNode(e);return t.checkType=e,t.extendsType=this.tsInDisallowConditionalTypesContext(()=>this.tsParseNonConditionalType()),this.expect(17),t.trueType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.expect(14),t.falseType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.finishNode(t,"TSConditionalType")}isAbstractConstructorSignature(){return this.isContextual(124)&&this.lookahead().type===77}tsParseNonConditionalType(){return this.tsIsStartOfFunctionType()?this.tsParseFunctionOrConstructorType("TSFunctionType"):this.match(77)?this.tsParseFunctionOrConstructorType("TSConstructorType"):this.isAbstractConstructorSignature()?this.tsParseFunctionOrConstructorType("TSConstructorType",!0):this.tsParseUnionTypeOrHigher()}tsParseTypeAssertion(){this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(k.ReservedTypeAssertion,this.state.startLoc);let e=this.startNode();return e.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?this.tsParseTypeReference():this.tsParseType())),this.expect(48),e.expression=this.parseMaybeUnary(),this.finishNode(e,"TSTypeAssertion")}tsParseHeritageClause(e){let t=this.state.startLoc,s=this.tsParseDelimitedList("HeritageClauseElement",()=>{let i=this.startNode();return i.expression=this.tsParseEntityName(),this.match(47)&&(i.typeParameters=this.tsParseTypeArguments()),this.finishNode(i,"TSExpressionWithTypeArguments")});return s.length||this.raise(k.EmptyHeritageClauseType,t,{token:e}),s}tsParseInterfaceDeclaration(e,t={}){if(this.hasFollowingLineBreak())return null;this.expectContextual(129),t.declare&&(e.declare=!0),B(this.state.type)?(e.id=this.parseIdentifier(),this.checkIdentifier(e.id,130)):(e.id=null,this.raise(k.MissingInterfaceName,this.state.startLoc)),e.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers),this.eat(81)&&(e.extends=this.tsParseHeritageClause("extends"));let s=this.startNode();return s.body=this.tsInType(this.tsParseObjectTypeMembers.bind(this)),e.body=this.finishNode(s,"TSInterfaceBody"),this.finishNode(e,"TSInterfaceDeclaration")}tsParseTypeAliasDeclaration(e){return e.id=this.parseIdentifier(),this.checkIdentifier(e.id,2),e.typeAnnotation=this.tsInType(()=>{if(e.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutModifiers),this.expect(29),this.isContextual(114)&&this.lookahead().type!==16){let t=this.startNode();return this.next(),this.finishNode(t,"TSIntrinsicKeyword")}return this.tsParseType()}),this.semicolon(),this.finishNode(e,"TSTypeAliasDeclaration")}tsInNoContext(e){let t=this.state.context;this.state.context=[t[0]];try{return e()}finally{this.state.context=t}}tsInType(e){let t=this.state.inType;this.state.inType=!0;try{return e()}finally{this.state.inType=t}}tsInDisallowConditionalTypesContext(e){let t=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!0;try{return e()}finally{this.state.inDisallowConditionalTypesContext=t}}tsInAllowConditionalTypesContext(e){let t=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!1;try{return e()}finally{this.state.inDisallowConditionalTypesContext=t}}tsEatThenParseType(e){if(this.match(e))return this.tsNextThenParseType()}tsExpectThenParseType(e){return this.tsInType(()=>(this.expect(e),this.tsParseType()))}tsNextThenParseType(){return this.tsInType(()=>(this.next(),this.tsParseType()))}tsParseEnumMember(){let e=this.startNode();return e.id=this.match(133)?super.parseStringLiteral(this.state.value):this.parseIdentifier(!0),this.eat(29)&&(e.initializer=super.parseMaybeAssignAllowIn()),this.finishNode(e,"TSEnumMember")}tsParseEnumDeclaration(e,t={}){return t.const&&(e.const=!0),t.declare&&(e.declare=!0),this.expectContextual(126),e.id=this.parseIdentifier(),this.checkIdentifier(e.id,e.const?8971:8459),this.expect(5),e.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(e,"TSEnumDeclaration")}tsParseModuleBlock(){let e=this.startNode();return this.scope.enter(0),this.expect(5),super.parseBlockOrModuleBlockBody(e.body=[],void 0,!0,8),this.scope.exit(),this.finishNode(e,"TSModuleBlock")}tsParseModuleOrNamespaceDeclaration(e,t=!1){if(e.id=this.parseIdentifier(),t||this.checkIdentifier(e.id,1024),this.eat(16)){let s=this.startNode();this.tsParseModuleOrNamespaceDeclaration(s,!0),e.body=s}else this.scope.enter(256),this.prodParam.enter(0),e.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit();return this.finishNode(e,"TSModuleDeclaration")}tsParseAmbientExternalModuleDeclaration(e){return this.isContextual(112)?(e.global=!0,e.id=this.parseIdentifier()):this.match(133)?e.id=super.parseStringLiteral(this.state.value):this.unexpected(),this.match(5)?(this.scope.enter(256),this.prodParam.enter(0),e.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit()):this.semicolon(),this.finishNode(e,"TSModuleDeclaration")}tsParseImportEqualsDeclaration(e,t,s){e.isExport=s||!1,e.id=t||this.parseIdentifier(),this.checkIdentifier(e.id,4096),this.expect(29);let i=this.tsParseModuleReference();return e.importKind==="type"&&i.type!=="TSExternalModuleReference"&&this.raise(k.ImportAliasHasImportType,i),e.moduleReference=i,this.semicolon(),this.finishNode(e,"TSImportEqualsDeclaration")}tsIsExternalModuleReference(){return this.isContextual(119)&&this.lookaheadCharCode()===40}tsParseModuleReference(){return this.tsIsExternalModuleReference()?this.tsParseExternalModuleReference():this.tsParseEntityName(!1)}tsParseExternalModuleReference(){let e=this.startNode();return this.expectContextual(119),this.expect(10),this.match(133)||this.unexpected(),e.expression=super.parseExprAtom(),this.expect(11),this.sawUnambiguousESM=!0,this.finishNode(e,"TSExternalModuleReference")}tsLookAhead(e){let t=this.state.clone(),s=e();return this.state=t,s}tsTryParseAndCatch(e){let t=this.tryParse(s=>e()||s());if(!(t.aborted||!t.node))return t.error&&(this.state=t.failState),t.node}tsTryParse(e){let t=this.state.clone(),s=e();if(s!==void 0&&s!==!1)return s;this.state=t}tsTryParseDeclare(e){if(this.isLineTerminator())return;let t=this.state.type,s;return this.isContextual(100)&&(t=74,s="let"),this.tsInAmbientContext(()=>{switch(t){case 68:return e.declare=!0,super.parseFunctionStatement(e,!1,!1);case 80:return e.declare=!0,this.parseClass(e,!0,!1);case 126:return this.tsParseEnumDeclaration(e,{declare:!0});case 112:return this.tsParseAmbientExternalModuleDeclaration(e);case 75:case 74:return!this.match(75)||!this.isLookaheadContextual("enum")?(e.declare=!0,this.parseVarStatement(e,s||this.state.value,!0)):(this.expect(75),this.tsParseEnumDeclaration(e,{const:!0,declare:!0}));case 129:{let i=this.tsParseInterfaceDeclaration(e,{declare:!0});if(i)return i}default:if(B(t))return this.tsParseDeclaration(e,this.state.value,!0,null)}})}tsTryParseExportDeclaration(){return this.tsParseDeclaration(this.startNode(),this.state.value,!0,null)}tsParseExpressionStatement(e,t,s){switch(t.name){case"declare":{let i=this.tsTryParseDeclare(e);return i&&(i.declare=!0),i}case"global":if(this.match(5)){this.scope.enter(256),this.prodParam.enter(0);let i=e;return i.global=!0,i.id=t,i.body=this.tsParseModuleBlock(),this.scope.exit(),this.prodParam.exit(),this.finishNode(i,"TSModuleDeclaration")}break;default:return this.tsParseDeclaration(e,t.name,!1,s)}}tsParseDeclaration(e,t,s,i){switch(t){case"abstract":if(this.tsCheckLineTerminator(s)&&(this.match(80)||B(this.state.type)))return this.tsParseAbstractDeclaration(e,i);break;case"module":if(this.tsCheckLineTerminator(s)){if(this.match(133))return this.tsParseAmbientExternalModuleDeclaration(e);if(B(this.state.type))return this.tsParseModuleOrNamespaceDeclaration(e)}break;case"namespace":if(this.tsCheckLineTerminator(s)&&B(this.state.type))return this.tsParseModuleOrNamespaceDeclaration(e);break;case"type":if(this.tsCheckLineTerminator(s)&&B(this.state.type))return this.tsParseTypeAliasDeclaration(e);break}}tsCheckLineTerminator(e){return e?this.hasFollowingLineBreak()?!1:(this.next(),!0):!this.isLineTerminator()}tsTryParseGenericAsyncArrowFunction(e){if(!this.match(47))return;let t=this.state.maybeInArrowParameters;this.state.maybeInArrowParameters=!0;let s=this.tsTryParseAndCatch(()=>{let i=this.startNodeAt(e);return i.typeParameters=this.tsParseTypeParameters(this.tsParseConstModifier),super.parseFunctionParams(i),i.returnType=this.tsTryParseTypeOrTypePredicateAnnotation(),this.expect(19),i});if(this.state.maybeInArrowParameters=t,!!s)return super.parseArrowExpression(s,null,!0)}tsParseTypeArgumentsInExpression(){if(this.reScan_lt()===47)return this.tsParseTypeArguments()}tsParseTypeArguments(){let e=this.startNode();return e.params=this.tsInType(()=>this.tsInNoContext(()=>(this.expect(47),this.tsParseDelimitedList("TypeParametersOrArguments",this.tsParseType.bind(this))))),e.params.length===0?this.raise(k.EmptyTypeArguments,e):!this.state.inType&&this.curContext()===V.brace&&this.reScan_lt_gt(),this.expect(48),this.finishNode(e,"TSTypeParameterInstantiation")}tsIsDeclarationStart(){return jo(this.state.type)}isExportDefaultSpecifier(){return this.tsIsDeclarationStart()?!1:super.isExportDefaultSpecifier()}parseAssignableListItem(e,t){let s=this.state.startLoc,i={};this.tsParseModifiers({allowedModifiers:["public","private","protected","override","readonly"]},i);let a=i.accessibility,o=i.override,l=i.readonly;!(e&4)&&(a||l||o)&&this.raise(k.UnexpectedParameterModifier,s);let c=this.parseMaybeDefault();this.parseAssignableListItemTypes(c,e);let p=this.parseMaybeDefault(c.loc.start,c);if(a||l||o){let u=this.startNodeAt(s);return t.length&&(u.decorators=t),a&&(u.accessibility=a),l&&(u.readonly=l),o&&(u.override=o),p.type!=="Identifier"&&p.type!=="AssignmentPattern"&&this.raise(k.UnsupportedParameterPropertyKind,u),u.parameter=p,this.finishNode(u,"TSParameterProperty")}return t.length&&(c.decorators=t),p}isSimpleParameter(e){return e.type==="TSParameterProperty"&&super.isSimpleParameter(e.parameter)||super.isSimpleParameter(e)}tsDisallowOptionalPattern(e){for(let t of e.params)t.type!=="Identifier"&&t.optional&&!this.state.isAmbientContext&&this.raise(k.PatternIsOptional,t)}setArrowFunctionParameters(e,t,s){super.setArrowFunctionParameters(e,t,s),this.tsDisallowOptionalPattern(e)}parseFunctionBodyAndFinish(e,t,s=!1){this.match(14)&&(e.returnType=this.tsParseTypeOrTypePredicateAnnotation(14));let i=t==="FunctionDeclaration"?"TSDeclareFunction":t==="ClassMethod"||t==="ClassPrivateMethod"?"TSDeclareMethod":void 0;return i&&!this.match(5)&&this.isLineTerminator()?this.finishNode(e,i):i==="TSDeclareFunction"&&this.state.isAmbientContext&&(this.raise(k.DeclareFunctionHasImplementation,e),e.declare)?super.parseFunctionBodyAndFinish(e,i,s):(this.tsDisallowOptionalPattern(e),super.parseFunctionBodyAndFinish(e,t,s))}registerFunctionStatementId(e){!e.body&&e.id?this.checkIdentifier(e.id,1024):super.registerFunctionStatementId(e)}tsCheckForInvalidTypeCasts(e){e.forEach(t=>{t?.type==="TSTypeCastExpression"&&this.raise(k.UnexpectedTypeAnnotation,t.typeAnnotation)})}toReferencedList(e,t){return this.tsCheckForInvalidTypeCasts(e),e}parseArrayLike(e,t,s,i){let a=super.parseArrayLike(e,t,s,i);return a.type==="ArrayExpression"&&this.tsCheckForInvalidTypeCasts(a.elements),a}parseSubscript(e,t,s,i){if(!this.hasPrecedingLineBreak()&&this.match(35)){this.state.canStartJSXElement=!1,this.next();let o=this.startNodeAt(t);return o.expression=e,this.finishNode(o,"TSNonNullExpression")}let a=!1;if(this.match(18)&&this.lookaheadCharCode()===60){if(s)return i.stop=!0,e;i.optionalChainMember=a=!0,this.next()}if(this.match(47)||this.match(51)){let o,l=this.tsTryParseAndCatch(()=>{if(!s&&this.atPossibleAsyncArrow(e)){let h=this.tsTryParseGenericAsyncArrowFunction(t);if(h)return h}let c=this.tsParseTypeArgumentsInExpression();if(!c)return;if(a&&!this.match(10)){o=this.state.curPosition();return}if(vn(this.state.type)){let h=super.parseTaggedTemplateExpression(e,t,i);return h.typeParameters=c,h}if(!s&&this.eat(10)){let h=this.startNodeAt(t);return h.callee=e,h.arguments=this.parseCallExpressionArguments(11,!1),this.tsCheckForInvalidTypeCasts(h.arguments),h.typeParameters=c,i.optionalChainMember&&(h.optional=a),this.finishCallExpression(h,i.optionalChainMember)}let p=this.state.type;if(p===48||p===52||p!==10&&ms(p)&&!this.hasPrecedingLineBreak())return;let u=this.startNodeAt(t);return u.expression=e,u.typeParameters=c,this.finishNode(u,"TSInstantiationExpression")});if(o&&this.unexpected(o,10),l)return l.type==="TSInstantiationExpression"&&(this.match(16)||this.match(18)&&this.lookaheadCharCode()!==40)&&this.raise(k.InvalidPropertyAccessAfterInstantiationExpression,this.state.startLoc),l}return super.parseSubscript(e,t,s,i)}parseNewCallee(e){var t;super.parseNewCallee(e);let{callee:s}=e;s.type==="TSInstantiationExpression"&&!((t=s.extra)!=null&&t.parenthesized)&&(e.typeParameters=s.typeParameters,e.callee=s.expression)}parseExprOp(e,t,s){let i;if(mn(58)>s&&!this.hasPrecedingLineBreak()&&(this.isContextual(93)||(i=this.isContextual(120)))){let a=this.startNodeAt(t);return a.expression=e,a.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?(i&&this.raise(b.UnexpectedKeyword,this.state.startLoc,{keyword:"const"}),this.tsParseTypeReference()):this.tsParseType())),this.finishNode(a,i?"TSSatisfiesExpression":"TSAsExpression"),this.reScan_lt_gt(),this.parseExprOp(a,t,s)}return super.parseExprOp(e,t,s)}checkReservedWord(e,t,s,i){this.state.isAmbientContext||super.checkReservedWord(e,t,s,i)}checkImportReflection(e){super.checkImportReflection(e),e.module&&e.importKind!=="value"&&this.raise(k.ImportReflectionHasImportType,e.specifiers[0].loc.start)}checkDuplicateExports(){}isPotentialImportPhase(e){if(super.isPotentialImportPhase(e))return!0;if(this.isContextual(130)){let t=this.lookaheadCharCode();return e?t===123||t===42:t!==61}return!e&&this.isContextual(87)}applyImportPhase(e,t,s,i){super.applyImportPhase(e,t,s,i),t?e.exportKind=s==="type"?"type":"value":e.importKind=s==="type"||s==="typeof"?s:"value"}parseImport(e){if(this.match(133))return e.importKind="value",super.parseImport(e);let t;if(B(this.state.type)&&this.lookaheadCharCode()===61)return e.importKind="value",this.tsParseImportEqualsDeclaration(e);if(this.isContextual(130)){let s=this.parseMaybeImportPhase(e,!1);if(this.lookaheadCharCode()===61)return this.tsParseImportEqualsDeclaration(e,s);t=super.parseImportSpecifiersAndAfter(e,s)}else t=super.parseImport(e);return t.importKind==="type"&&t.specifiers.length>1&&t.specifiers[0].type==="ImportDefaultSpecifier"&&this.raise(k.TypeImportCannotSpecifyDefaultAndNamed,t),t}parseExport(e,t){if(this.match(83)){this.next();let s=null;return this.isContextual(130)&&this.isPotentialImportPhase(!1)?s=this.parseMaybeImportPhase(e,!1):e.importKind="value",this.tsParseImportEqualsDeclaration(e,s,!0)}else if(this.eat(29)){let s=e;return s.expression=super.parseExpression(),this.semicolon(),this.sawUnambiguousESM=!0,this.finishNode(s,"TSExportAssignment")}else if(this.eatContextual(93)){let s=e;return this.expectContextual(128),s.id=this.parseIdentifier(),this.semicolon(),this.finishNode(s,"TSNamespaceExportDeclaration")}else return super.parseExport(e,t)}isAbstractClass(){return this.isContextual(124)&&this.lookahead().type===80}parseExportDefaultExpression(){if(this.isAbstractClass()){let e=this.startNode();return this.next(),e.abstract=!0,this.parseClass(e,!0,!0)}if(this.match(129)){let e=this.tsParseInterfaceDeclaration(this.startNode());if(e)return e}return super.parseExportDefaultExpression()}parseVarStatement(e,t,s=!1){let{isAmbientContext:i}=this.state,a=super.parseVarStatement(e,t,s||i);if(!i)return a;for(let{id:o,init:l}of a.declarations)l&&(t!=="const"||o.typeAnnotation?this.raise(k.InitializerNotAllowedInAmbientContext,l):Cl(l,this.hasPlugin("estree"))||this.raise(k.ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference,l));return a}parseStatementContent(e,t){if(this.match(75)&&this.isLookaheadContextual("enum")){let s=this.startNode();return this.expect(75),this.tsParseEnumDeclaration(s,{const:!0})}if(this.isContextual(126))return this.tsParseEnumDeclaration(this.startNode());if(this.isContextual(129)){let s=this.tsParseInterfaceDeclaration(this.startNode());if(s)return s}return super.parseStatementContent(e,t)}parseAccessModifier(){return this.tsParseModifier(["public","protected","private"])}tsHasSomeModifiers(e,t){return t.some(s=>ei(s)?e.accessibility===s:!!e[s])}tsIsStartOfStaticBlocks(){return this.isContextual(106)&&this.lookaheadCharCode()===123}parseClassMember(e,t,s){let i=["declare","private","public","protected","override","abstract","readonly","static"];this.tsParseModifiers({allowedModifiers:i,disallowedModifiers:["in","out"],stopOnStartOfClassStaticBlock:!0,errorTemplate:k.InvalidModifierOnTypeParameterPositions},t);let a=()=>{this.tsIsStartOfStaticBlocks()?(this.next(),this.next(),this.tsHasSomeModifiers(t,i)&&this.raise(k.StaticBlockCannotHaveModifier,this.state.curPosition()),super.parseClassStaticBlock(e,t)):this.parseClassMemberWithIsStatic(e,t,s,!!t.static)};t.declare?this.tsInAmbientContext(a):a()}parseClassMemberWithIsStatic(e,t,s,i){let a=this.tsTryParseIndexSignature(t);if(a){e.body.push(a),t.abstract&&this.raise(k.IndexSignatureHasAbstract,t),t.accessibility&&this.raise(k.IndexSignatureHasAccessibility,t,{modifier:t.accessibility}),t.declare&&this.raise(k.IndexSignatureHasDeclare,t),t.override&&this.raise(k.IndexSignatureHasOverride,t);return}!this.state.inAbstractClass&&t.abstract&&this.raise(k.NonAbstractClassHasAbstractMethod,t),t.override&&(s.hadSuperClass||this.raise(k.OverrideNotInSubClass,t)),super.parseClassMemberWithIsStatic(e,t,s,i)}parsePostMemberNameModifiers(e){this.eat(17)&&(e.optional=!0),e.readonly&&this.match(10)&&this.raise(k.ClassMethodHasReadonly,e),e.declare&&this.match(10)&&this.raise(k.ClassMethodHasDeclare,e)}parseExpressionStatement(e,t,s){return(t.type==="Identifier"?this.tsParseExpressionStatement(e,t,s):void 0)||super.parseExpressionStatement(e,t,s)}shouldParseExportDeclaration(){return this.tsIsDeclarationStart()?!0:super.shouldParseExportDeclaration()}parseConditional(e,t,s){if(!this.state.maybeInArrowParameters||!this.match(17))return super.parseConditional(e,t,s);let i=this.tryParse(()=>super.parseConditional(e,t));return i.node?(i.error&&(this.state=i.failState),i.node):(i.error&&super.setOptionalParametersError(s,i.error),e)}parseParenItem(e,t){if(e=super.parseParenItem(e,t),this.eat(17)&&(e.optional=!0,this.resetEndLocation(e)),this.match(14)){let s=this.startNodeAt(t);return s.expression=e,s.typeAnnotation=this.tsParseTypeAnnotation(),this.finishNode(s,"TSTypeCastExpression")}return e}parseExportDeclaration(e){if(!this.state.isAmbientContext&&this.isContextual(125))return this.tsInAmbientContext(()=>this.parseExportDeclaration(e));let t=this.state.startLoc,s=this.eatContextual(125);if(s&&(this.isContextual(125)||!this.shouldParseExportDeclaration()))throw this.raise(k.ExpectedAmbientAfterExportDeclare,this.state.startLoc);let a=B(this.state.type)&&this.tsTryParseExportDeclaration()||super.parseExportDeclaration(e);return a?((a.type==="TSInterfaceDeclaration"||a.type==="TSTypeAliasDeclaration"||s)&&(e.exportKind="type"),s&&(this.resetStartLocation(a,t),a.declare=!0),a):null}parseClassId(e,t,s,i){if((!t||s)&&this.isContextual(113))return;super.parseClassId(e,t,s,e.declare?1024:8331);let a=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers);a&&(e.typeParameters=a)}parseClassPropertyAnnotation(e){e.optional||(this.eat(35)?e.definite=!0:this.eat(17)&&(e.optional=!0));let t=this.tsTryParseTypeAnnotation();t&&(e.typeAnnotation=t)}parseClassProperty(e){if(this.parseClassPropertyAnnotation(e),this.state.isAmbientContext&&!(e.readonly&&!e.typeAnnotation)&&this.match(29)&&this.raise(k.DeclareClassFieldHasInitializer,this.state.startLoc),e.abstract&&this.match(29)){let{key:t}=e;this.raise(k.AbstractPropertyHasInitializer,this.state.startLoc,{propertyName:t.type==="Identifier"&&!e.computed?t.name:`[${this.input.slice(t.start,t.end)}]`})}return super.parseClassProperty(e)}parseClassPrivateProperty(e){return e.abstract&&this.raise(k.PrivateElementHasAbstract,e),e.accessibility&&this.raise(k.PrivateElementHasAccessibility,e,{modifier:e.accessibility}),this.parseClassPropertyAnnotation(e),super.parseClassPrivateProperty(e)}parseClassAccessorProperty(e){return this.parseClassPropertyAnnotation(e),e.optional&&this.raise(k.AccessorCannotBeOptional,e),super.parseClassAccessorProperty(e)}pushClassMethod(e,t,s,i,a,o){let l=this.tsTryParseTypeParameters(this.tsParseConstModifier);l&&a&&this.raise(k.ConstructorHasTypeParameters,l);let{declare:c=!1,kind:p}=t;c&&(p==="get"||p==="set")&&this.raise(k.DeclareAccessor,t,{kind:p}),l&&(t.typeParameters=l),super.pushClassMethod(e,t,s,i,a,o)}pushClassPrivateMethod(e,t,s,i){let a=this.tsTryParseTypeParameters(this.tsParseConstModifier);a&&(t.typeParameters=a),super.pushClassPrivateMethod(e,t,s,i)}declareClassPrivateMethodInScope(e,t){e.type!=="TSDeclareMethod"&&(e.type==="MethodDefinition"&&!e.value.body||super.declareClassPrivateMethodInScope(e,t))}parseClassSuper(e){super.parseClassSuper(e),e.superClass&&(this.match(47)||this.match(51))&&(e.superTypeParameters=this.tsParseTypeArgumentsInExpression()),this.eatContextual(113)&&(e.implements=this.tsParseHeritageClause("implements"))}parseObjPropValue(e,t,s,i,a,o,l){let c=this.tsTryParseTypeParameters(this.tsParseConstModifier);return c&&(e.typeParameters=c),super.parseObjPropValue(e,t,s,i,a,o,l)}parseFunctionParams(e,t){let s=this.tsTryParseTypeParameters(this.tsParseConstModifier);s&&(e.typeParameters=s),super.parseFunctionParams(e,t)}parseVarId(e,t){super.parseVarId(e,t),e.id.type==="Identifier"&&!this.hasPrecedingLineBreak()&&this.eat(35)&&(e.definite=!0);let s=this.tsTryParseTypeAnnotation();s&&(e.id.typeAnnotation=s,this.resetEndLocation(e.id))}parseAsyncArrowFromCallExpression(e,t){return this.match(14)&&(e.returnType=this.tsParseTypeAnnotation()),super.parseAsyncArrowFromCallExpression(e,t)}parseMaybeAssign(e,t){var s,i,a,o,l;let c,p,u;if(this.hasPlugin("jsx")&&(this.match(142)||this.match(47))){if(c=this.state.clone(),p=this.tryParse(()=>super.parseMaybeAssign(e,t),c),!p.error)return p.node;let{context:d}=this.state,g=d[d.length-1];(g===V.j_oTag||g===V.j_expr)&&d.pop()}if(!((s=p)!=null&&s.error)&&!this.match(47))return super.parseMaybeAssign(e,t);(!c||c===this.state)&&(c=this.state.clone());let h,m=this.tryParse(d=>{var g,f;h=this.tsParseTypeParameters(this.tsParseConstModifier);let v=super.parseMaybeAssign(e,t);return(v.type!=="ArrowFunctionExpression"||(g=v.extra)!=null&&g.parenthesized)&&d(),((f=h)==null?void 0:f.params.length)!==0&&this.resetStartLocationFromNode(v,h),v.typeParameters=h,v},c);if(!m.error&&!m.aborted)return h&&this.reportReservedArrowTypeParam(h),m.node;if(!p&&(Zr(!this.hasPlugin("jsx")),u=this.tryParse(()=>super.parseMaybeAssign(e,t),c),!u.error))return u.node;if((i=p)!=null&&i.node)return this.state=p.failState,p.node;if(m.node)return this.state=m.failState,h&&this.reportReservedArrowTypeParam(h),m.node;if((a=u)!=null&&a.node)return this.state=u.failState,u.node;throw((o=p)==null?void 0:o.error)||m.error||((l=u)==null?void 0:l.error)}reportReservedArrowTypeParam(e){var t;e.params.length===1&&!e.params[0].constraint&&!((t=e.extra)!=null&&t.trailingComma)&&this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(k.ReservedArrowTypeParam,e)}parseMaybeUnary(e,t){return!this.hasPlugin("jsx")&&this.match(47)?this.tsParseTypeAssertion():super.parseMaybeUnary(e,t)}parseArrow(e){if(this.match(14)){let t=this.tryParse(s=>{let i=this.tsParseTypeOrTypePredicateAnnotation(14);return(this.canInsertSemicolon()||!this.match(19))&&s(),i});if(t.aborted)return;t.thrown||(t.error&&(this.state=t.failState),e.returnType=t.node)}return super.parseArrow(e)}parseAssignableListItemTypes(e,t){if(!(t&2))return e;this.eat(17)&&(e.optional=!0);let s=this.tsTryParseTypeAnnotation();return s&&(e.typeAnnotation=s),this.resetEndLocation(e),e}isAssignable(e,t){switch(e.type){case"TSTypeCastExpression":return this.isAssignable(e.expression,t);case"TSParameterProperty":return!0;default:return super.isAssignable(e,t)}}toAssignable(e,t=!1){switch(e.type){case"ParenthesizedExpression":this.toAssignableParenthesizedExpression(e,t);break;case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":t?this.expressionScope.recordArrowParameterBindingError(k.UnexpectedTypeCastInParameter,e):this.raise(k.UnexpectedTypeCastInParameter,e),this.toAssignable(e.expression,t);break;case"AssignmentExpression":!t&&e.left.type==="TSTypeCastExpression"&&(e.left=this.typeCastToParameter(e.left));default:super.toAssignable(e,t)}}toAssignableParenthesizedExpression(e,t){switch(e.expression.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":case"ParenthesizedExpression":this.toAssignable(e.expression,t);break;default:super.toAssignable(e,t)}}checkToRestConversion(e,t){switch(e.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":this.checkToRestConversion(e.expression,!1);break;default:super.checkToRestConversion(e,t)}}isValidLVal(e,t,s){return yl({TSTypeCastExpression:!0,TSParameterProperty:"parameter",TSNonNullExpression:"expression",TSAsExpression:(s!==64||!t)&&["expression",!0],TSSatisfiesExpression:(s!==64||!t)&&["expression",!0],TSTypeAssertion:(s!==64||!t)&&["expression",!0]},e)||super.isValidLVal(e,t,s)}parseBindingAtom(){return this.state.type===78?this.parseIdentifier(!0):super.parseBindingAtom()}parseMaybeDecoratorArguments(e){if(this.match(47)||this.match(51)){let t=this.tsParseTypeArgumentsInExpression();if(this.match(10)){let s=super.parseMaybeDecoratorArguments(e);return s.typeParameters=t,s}this.unexpected(null,10)}return super.parseMaybeDecoratorArguments(e)}checkCommaAfterRest(e){return this.state.isAmbientContext&&this.match(12)&&this.lookaheadCharCode()===e?(this.next(),!1):super.checkCommaAfterRest(e)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(35)||this.match(14)||super.isClassProperty()}parseMaybeDefault(e,t){let s=super.parseMaybeDefault(e,t);return s.type==="AssignmentPattern"&&s.typeAnnotation&&s.right.start<s.typeAnnotation.start&&this.raise(k.TypeAnnotationAfterAssign,s.typeAnnotation),s}getTokenFromCode(e){if(this.state.inType){if(e===62){this.finishOp(48,1);return}if(e===60){this.finishOp(47,1);return}}super.getTokenFromCode(e)}reScan_lt_gt(){let{type:e}=this.state;e===47?(this.state.pos-=1,this.readToken_lt()):e===48&&(this.state.pos-=1,this.readToken_gt())}reScan_lt(){let{type:e}=this.state;return e===51?(this.state.pos-=2,this.finishOp(47,1),47):e}toAssignableList(e,t,s){for(let i=0;i<e.length;i++){let a=e[i];a?.type==="TSTypeCastExpression"&&(e[i]=this.typeCastToParameter(a))}super.toAssignableList(e,t,s)}typeCastToParameter(e){return e.expression.typeAnnotation=e.typeAnnotation,this.resetEndLocation(e.expression,e.typeAnnotation.loc.end),e.expression}shouldParseArrow(e){return this.match(14)?e.every(t=>this.isAssignable(t,!0)):super.shouldParseArrow(e)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}canHaveLeadingDecorator(){return super.canHaveLeadingDecorator()||this.isAbstractClass()}jsxParseOpeningElementAfterName(e){if(this.match(47)||this.match(51)){let t=this.tsTryParseAndCatch(()=>this.tsParseTypeArgumentsInExpression());t&&(e.typeParameters=t)}return super.jsxParseOpeningElementAfterName(e)}getGetterSetterExpectedParamCount(e){let t=super.getGetterSetterExpectedParamCount(e),i=this.getObjectOrClassMethodParams(e)[0];return i&&this.isThisParam(i)?t+1:t}parseCatchClauseParam(){let e=super.parseCatchClauseParam(),t=this.tsTryParseTypeAnnotation();return t&&(e.typeAnnotation=t,this.resetEndLocation(e)),e}tsInAmbientContext(e){let t=this.state.isAmbientContext;this.state.isAmbientContext=!0;try{return e()}finally{this.state.isAmbientContext=t}}parseClass(e,t,s){let i=this.state.inAbstractClass;this.state.inAbstractClass=!!e.abstract;try{return super.parseClass(e,t,s)}finally{this.state.inAbstractClass=i}}tsParseAbstractDeclaration(e,t){if(this.match(80))return e.abstract=!0,this.maybeTakeDecorators(t,this.parseClass(e,!0,!1));if(this.isContextual(129)){if(!this.hasFollowingLineBreak())return e.abstract=!0,this.raise(k.NonClassMethodPropertyHasAbstractModifer,e),this.tsParseInterfaceDeclaration(e)}else this.unexpected(null,80)}parseMethod(e,t,s,i,a,o,l){let c=super.parseMethod(e,t,s,i,a,o,l);if(c.abstract&&(this.hasPlugin("estree")?!!c.value.body:!!c.body)){let{key:u}=c;this.raise(k.AbstractMethodHasImplementation,c,{methodName:u.type==="Identifier"&&!c.computed?u.name:`[${this.input.slice(u.start,u.end)}]`})}return c}tsParseTypeParameterName(){return this.parseIdentifier().name}shouldParseAsAmbientContext(){return!!this.getPluginOption("typescript","dts")}parse(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),super.parse()}getExpression(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),super.getExpression()}parseExportSpecifier(e,t,s,i){return!t&&i?(this.parseTypeOnlyImportExportSpecifier(e,!1,s),this.finishNode(e,"ExportSpecifier")):(e.exportKind="value",super.parseExportSpecifier(e,t,s,i))}parseImportSpecifier(e,t,s,i,a){return!t&&i?(this.parseTypeOnlyImportExportSpecifier(e,!0,s),this.finishNode(e,"ImportSpecifier")):(e.importKind="value",super.parseImportSpecifier(e,t,s,i,s?4098:4096))}parseTypeOnlyImportExportSpecifier(e,t,s){let i=t?"imported":"local",a=t?"local":"exported",o=e[i],l,c=!1,p=!0,u=o.loc.start;if(this.isContextual(93)){let m=this.parseIdentifier();if(this.isContextual(93)){let d=this.parseIdentifier();xe(this.state.type)?(c=!0,o=m,l=t?this.parseIdentifier():this.parseModuleExportName(),p=!1):(l=d,p=!1)}else xe(this.state.type)?(p=!1,l=t?this.parseIdentifier():this.parseModuleExportName()):(c=!0,o=m)}else xe(this.state.type)&&(c=!0,t?(o=this.parseIdentifier(!0),this.isContextual(93)||this.checkReservedWord(o.name,o.loc.start,!0,!0)):o=this.parseModuleExportName());c&&s&&this.raise(t?k.TypeModifierIsUsedInTypeImports:k.TypeModifierIsUsedInTypeExports,u),e[i]=o,e[a]=l;let h=t?"importKind":"exportKind";e[h]=c?"type":"value",p&&this.eatContextual(93)&&(e[a]=t?this.parseIdentifier():this.parseModuleExportName()),e[a]||(e[a]=Be(e[i])),t&&this.checkIdentifier(e[a],c?4098:4096)}};function wl(r){if(r.type!=="MemberExpression")return!1;let{computed:n,property:e}=r;return n&&e.type!=="StringLiteral"&&(e.type!=="TemplateLiteral"||e.expressions.length>0)?!1:Pi(r.object)}function Cl(r,n){var e;let{type:t}=r;if((e=r.extra)!=null&&e.parenthesized)return!1;if(n){if(t==="Literal"){let{value:s}=r;if(typeof s=="string"||typeof s=="boolean")return!0}}else if(t==="StringLiteral"||t==="BooleanLiteral")return!0;return!!(xi(r,n)||Sl(r,n)||t==="TemplateLiteral"&&r.expressions.length===0||wl(r))}function xi(r,n){return n?r.type==="Literal"&&(typeof r.value=="number"||"bigint"in r):r.type==="NumericLiteral"||r.type==="BigIntLiteral"}function Sl(r,n){if(r.type==="UnaryExpression"){let{operator:e,argument:t}=r;if(e==="-"&&xi(t,n))return!0}return!1}function Pi(r){return r.type==="Identifier"?!0:r.type!=="MemberExpression"||r.computed?!1:Pi(r.object)}var ti=Re`placeholders`({ClassNameIsRequired:"A class name is required.",UnexpectedSpace:"Unexpected space in placeholder."}),Il=r=>class extends r{parsePlaceholder(e){if(this.match(144)){let t=this.startNode();return this.next(),this.assertNoSpace(),t.name=super.parseIdentifier(!0),this.assertNoSpace(),this.expect(144),this.finishPlaceholder(t,e)}}finishPlaceholder(e,t){let s=!!(e.expectedNode&&e.type==="Placeholder");return e.expectedNode=t,s?e:this.finishNode(e,"Placeholder")}getTokenFromCode(e){e===37&&this.input.charCodeAt(this.state.pos+1)===37?this.finishOp(144,2):super.getTokenFromCode(e)}parseExprAtom(e){return this.parsePlaceholder("Expression")||super.parseExprAtom(e)}parseIdentifier(e){return this.parsePlaceholder("Identifier")||super.parseIdentifier(e)}checkReservedWord(e,t,s,i){e!==void 0&&super.checkReservedWord(e,t,s,i)}parseBindingAtom(){return this.parsePlaceholder("Pattern")||super.parseBindingAtom()}isValidLVal(e,t,s){return e==="Placeholder"||super.isValidLVal(e,t,s)}toAssignable(e,t){e&&e.type==="Placeholder"&&e.expectedNode==="Expression"?e.expectedNode="Pattern":super.toAssignable(e,t)}chStartsBindingIdentifier(e,t){return!!(super.chStartsBindingIdentifier(e,t)||this.lookahead().type===144)}verifyBreakContinue(e,t){e.label&&e.label.type==="Placeholder"||super.verifyBreakContinue(e,t)}parseExpressionStatement(e,t){var s;if(t.type!=="Placeholder"||(s=t.extra)!=null&&s.parenthesized)return super.parseExpressionStatement(e,t);if(this.match(14)){let i=e;return i.label=this.finishPlaceholder(t,"Identifier"),this.next(),i.body=super.parseStatementOrSloppyAnnexBFunctionDeclaration(),this.finishNode(i,"LabeledStatement")}return this.semicolon(),e.name=t.name,this.finishPlaceholder(e,"Statement")}parseBlock(e,t,s){return this.parsePlaceholder("BlockStatement")||super.parseBlock(e,t,s)}parseFunctionId(e){return this.parsePlaceholder("Identifier")||super.parseFunctionId(e)}parseClass(e,t,s){let i=t?"ClassDeclaration":"ClassExpression";this.next();let a=this.state.strict,o=this.parsePlaceholder("Identifier");if(o)if(this.match(81)||this.match(144)||this.match(5))e.id=o;else{if(s||!t)return e.id=null,e.body=this.finishPlaceholder(o,"ClassBody"),this.finishNode(e,i);throw this.raise(ti.ClassNameIsRequired,this.state.startLoc)}else this.parseClassId(e,t,s);return super.parseClassSuper(e),e.body=this.parsePlaceholder("ClassBody")||super.parseClassBody(!!e.superClass,a),this.finishNode(e,i)}parseExport(e,t){let s=this.parsePlaceholder("Identifier");if(!s)return super.parseExport(e,t);if(!this.isContextual(98)&&!this.match(12))return e.specifiers=[],e.source=null,e.declaration=this.finishPlaceholder(s,"Declaration"),this.finishNode(e,"ExportNamedDeclaration");this.expectPlugin("exportDefaultFrom");let i=this.startNode();return i.exported=s,e.specifiers=[this.finishNode(i,"ExportDefaultSpecifier")],super.parseExport(e,t)}isExportDefaultSpecifier(){if(this.match(65)){let e=this.nextTokenStart();if(this.isUnparsedContextual(e,"from")&&this.input.startsWith(He(144),this.nextTokenStartSince(e+4)))return!0}return super.isExportDefaultSpecifier()}maybeParseExportDefaultSpecifier(e,t){var s;return(s=e.specifiers)!=null&&s.length?!0:super.maybeParseExportDefaultSpecifier(e,t)}checkExport(e){let{specifiers:t}=e;t!=null&&t.length&&(e.specifiers=t.filter(s=>s.exported.type==="Placeholder")),super.checkExport(e),e.specifiers=t}parseImport(e){let t=this.parsePlaceholder("Identifier");if(!t)return super.parseImport(e);if(e.specifiers=[],!this.isContextual(98)&&!this.match(12))return e.source=this.finishPlaceholder(t,"StringLiteral"),this.semicolon(),this.finishNode(e,"ImportDeclaration");let s=this.startNodeAtNode(t);return s.local=t,e.specifiers.push(this.finishNode(s,"ImportDefaultSpecifier")),this.eat(12)&&(this.maybeParseStarImportSpecifier(e)||this.parseNamedImportSpecifiers(e)),this.expectContextual(98),e.source=this.parseImportSource(),this.semicolon(),this.finishNode(e,"ImportDeclaration")}parseImportSource(){return this.parsePlaceholder("StringLiteral")||super.parseImportSource()}assertNoSpace(){this.state.start>this.state.lastTokEndLoc.index&&this.raise(ti.UnexpectedSpace,this.state.lastTokEndLoc)}},El=r=>class extends r{parseV8Intrinsic(){if(this.match(54)){let e=this.state.startLoc,t=this.startNode();if(this.next(),B(this.state.type)){let s=this.parseIdentifierName(),i=this.createIdentifier(t,s);if(i.type="V8IntrinsicIdentifier",this.match(10))return i}this.unexpected(e)}}parseExprAtom(e){return this.parseV8Intrinsic()||super.parseExprAtom(e)}};function Y(r,n){let[e,t]=typeof n=="string"?[n,{}]:n,s=Object.keys(t),i=s.length===0;return r.some(a=>{if(typeof a=="string")return i&&a===e;{let[o,l]=a;if(o!==e)return!1;for(let c of s)if(l[c]!==t[c])return!1;return!0}})}function qe(r,n,e){let t=r.find(s=>Array.isArray(s)?s[0]===n:s===n);return t&&Array.isArray(t)&&t.length>1?t[1][e]:null}var ni=["minimal","fsharp","hack","smart"],si=["^^","@@","^","%","#"],ri=["hash","bar"];function Al(r){if(Y(r,"decorators")){if(Y(r,"decorators-legacy"))throw new Error("Cannot use the decorators and decorators-legacy plugin together");let n=qe(r,"decorators","decoratorsBeforeExport");if(n!=null&&typeof n!="boolean")throw new Error("'decoratorsBeforeExport' must be a boolean, if specified.");let e=qe(r,"decorators","allowCallParenthesized");if(e!=null&&typeof e!="boolean")throw new Error("'allowCallParenthesized' must be a boolean.")}if(Y(r,"flow")&&Y(r,"typescript"))throw new Error("Cannot combine flow and typescript plugins.");if(Y(r,"placeholders")&&Y(r,"v8intrinsic"))throw new Error("Cannot combine placeholders and v8intrinsic plugins.");if(Y(r,"pipelineOperator")){let n=qe(r,"pipelineOperator","proposal");if(!ni.includes(n)){let t=ni.map(s=>`"${s}"`).join(", ");throw new Error(`"pipelineOperator" requires "proposal" option whose value must be one of: ${t}.`)}let e=Y(r,["recordAndTuple",{syntaxType:"hash"}]);if(n==="hack"){if(Y(r,"placeholders"))throw new Error("Cannot combine placeholders plugin and Hack-style pipes.");if(Y(r,"v8intrinsic"))throw new Error("Cannot combine v8intrinsic plugin and Hack-style pipes.");let t=qe(r,"pipelineOperator","topicToken");if(!si.includes(t)){let s=si.map(i=>`"${i}"`).join(", ");throw new Error(`"pipelineOperator" in "proposal": "hack" mode also requires a "topicToken" option whose value must be one of: ${s}.`)}if(t==="#"&&e)throw new Error('Plugin conflict between `["pipelineOperator", { proposal: "hack", topicToken: "#" }]` and `["recordAndtuple", { syntaxType: "hash"}]`.')}else if(n==="smart"&&e)throw new Error('Plugin conflict between `["pipelineOperator", { proposal: "smart" }]` and `["recordAndtuple", { syntaxType: "hash"}]`.')}if(Y(r,"moduleAttributes")){if(Y(r,"importAssertions")||Y(r,"importAttributes"))throw new Error("Cannot combine importAssertions, importAttributes and moduleAttributes plugins.");if(qe(r,"moduleAttributes","version")!=="may-2020")throw new Error("The 'moduleAttributes' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is 'may-2020'.")}if(Y(r,"importAssertions")&&Y(r,"importAttributes"))throw new Error("Cannot combine importAssertions and importAttributes plugins.");if(Y(r,"recordAndTuple")&&qe(r,"recordAndTuple","syntaxType")!=null&&!ri.includes(qe(r,"recordAndTuple","syntaxType")))throw new Error("The 'syntaxType' option of the 'recordAndTuple' plugin must be one of: "+ri.map(n=>`'${n}'`).join(", "));if(Y(r,"asyncDoExpressions")&&!Y(r,"doExpressions")){let n=new Error("'asyncDoExpressions' requires 'doExpressions', please add 'doExpressions' to parser plugins.");throw n.missingPlugins="doExpressions",n}if(Y(r,"optionalChainingAssign")&&qe(r,"optionalChainingAssign","version")!=="2023-07")throw new Error("The 'optionalChainingAssign' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is '2023-07'.")}var Ti={estree:ko,jsx:bl,flow:fl,typescript:Tl,v8intrinsic:El,placeholders:Il},kl=Object.keys(Ti),ds={sourceType:"script",sourceFilename:void 0,startColumn:0,startLine:1,allowAwaitOutsideFunction:!1,allowReturnOutsideFunction:!1,allowNewTargetOutsideFunction:!1,allowImportExportEverywhere:!1,allowSuperOutsideMethod:!1,allowUndeclaredExports:!1,plugins:[],strictMode:null,ranges:!1,tokens:!1,createImportExpressions:!1,createParenthesizedExpressions:!1,errorRecovery:!1,attachComment:!0,annexB:!0};function Nl(r){if(r==null)return Object.assign({},ds);if(r.annexB!=null&&r.annexB!==!1)throw new Error("The `annexB` option can only be set to `false`.");let n={};for(let t of Object.keys(ds)){var e;n[t]=(e=r[t])!=null?e:ds[t]}return n}var Ls=class extends Ms{checkProto(n,e,t,s){if(n.type==="SpreadElement"||this.isObjectMethod(n)||n.computed||n.shorthand)return;let i=n.key;if((i.type==="Identifier"?i.name:i.value)==="__proto__"){if(e){this.raise(b.RecordNoProto,i);return}t.used&&(s?s.doubleProtoLoc===null&&(s.doubleProtoLoc=i.loc.start):this.raise(b.DuplicateProto,i)),t.used=!0}}shouldExitDescending(n,e){return n.type==="ArrowFunctionExpression"&&n.start===e}getExpression(){this.enterInitialScopes(),this.nextToken();let n=this.parseExpression();return this.match(139)||this.unexpected(),this.finalizeRemainingComments(),n.comments=this.comments,n.errors=this.state.errors,this.options.tokens&&(n.tokens=this.tokens),n}parseExpression(n,e){return n?this.disallowInAnd(()=>this.parseExpressionBase(e)):this.allowInAnd(()=>this.parseExpressionBase(e))}parseExpressionBase(n){let e=this.state.startLoc,t=this.parseMaybeAssign(n);if(this.match(12)){let s=this.startNodeAt(e);for(s.expressions=[t];this.eat(12);)s.expressions.push(this.parseMaybeAssign(n));return this.toReferencedList(s.expressions),this.finishNode(s,"SequenceExpression")}return t}parseMaybeAssignDisallowIn(n,e){return this.disallowInAnd(()=>this.parseMaybeAssign(n,e))}parseMaybeAssignAllowIn(n,e){return this.allowInAnd(()=>this.parseMaybeAssign(n,e))}setOptionalParametersError(n,e){var t;n.optionalParametersLoc=(t=e?.loc)!=null?t:this.state.startLoc}parseMaybeAssign(n,e){let t=this.state.startLoc;if(this.isContextual(108)&&this.prodParam.hasYield){let o=this.parseYield();return e&&(o=e.call(this,o,t)),o}let s;n?s=!1:(n=new ut,s=!0);let{type:i}=this.state;(i===10||B(i))&&(this.state.potentialArrowAt=this.state.start);let a=this.parseMaybeConditional(n);if(e&&(a=e.call(this,a,t)),Oo(this.state.type)){let o=this.startNodeAt(t),l=this.state.value;if(o.operator=l,this.match(29)){this.toAssignable(a,!0),o.left=a;let c=t.index;n.doubleProtoLoc!=null&&n.doubleProtoLoc.index>=c&&(n.doubleProtoLoc=null),n.shorthandAssignLoc!=null&&n.shorthandAssignLoc.index>=c&&(n.shorthandAssignLoc=null),n.privateKeyLoc!=null&&n.privateKeyLoc.index>=c&&(this.checkDestructuringPrivate(n),n.privateKeyLoc=null)}else o.left=a;return this.next(),o.right=this.parseMaybeAssign(),this.checkLVal(a,{in:this.finishNode(o,"AssignmentExpression")}),o}else s&&this.checkExpressionErrors(n,!0);return a}parseMaybeConditional(n){let e=this.state.startLoc,t=this.state.potentialArrowAt,s=this.parseExprOps(n);return this.shouldExitDescending(s,t)?s:this.parseConditional(s,e,n)}parseConditional(n,e,t){if(this.eat(17)){let s=this.startNodeAt(e);return s.test=n,s.consequent=this.parseMaybeAssignAllowIn(),this.expect(14),s.alternate=this.parseMaybeAssign(),this.finishNode(s,"ConditionalExpression")}return n}parseMaybeUnaryOrPrivate(n){return this.match(138)?this.parsePrivateName():this.parseMaybeUnary(n)}parseExprOps(n){let e=this.state.startLoc,t=this.state.potentialArrowAt,s=this.parseMaybeUnaryOrPrivate(n);return this.shouldExitDescending(s,t)?s:this.parseExprOp(s,e,-1)}parseExprOp(n,e,t){if(this.isPrivateName(n)){let i=this.getPrivateNameSV(n);(t>=mn(58)||!this.prodParam.hasIn||!this.match(58))&&this.raise(b.PrivateInExpectedIn,n,{identifierName:i}),this.classScope.usePrivateName(i,n.loc.start)}let s=this.state.type;if(Uo(s)&&(this.prodParam.hasIn||!this.match(58))){let i=mn(s);if(i>t){if(s===39){if(this.expectPlugin("pipelineOperator"),this.state.inFSharpPipelineDirectBody)return n;this.checkPipelineAtInfixOperator(n,e)}let a=this.startNodeAt(e);a.left=n,a.operator=this.state.value;let o=s===41||s===42,l=s===40;if(l&&(i=mn(42)),this.next(),s===39&&this.hasPlugin(["pipelineOperator",{proposal:"minimal"}])&&this.state.type===96&&this.prodParam.hasAwait)throw this.raise(b.UnexpectedAwaitAfterPipelineBody,this.state.startLoc);a.right=this.parseExprOpRightExpr(s,i);let c=this.finishNode(a,o||l?"LogicalExpression":"BinaryExpression"),p=this.state.type;if(l&&(p===41||p===42)||o&&p===40)throw this.raise(b.MixingCoalesceWithLogical,this.state.startLoc);return this.parseExprOp(c,e,t)}}return n}parseExprOpRightExpr(n,e){let t=this.state.startLoc;switch(n){case 39:switch(this.getPluginOption("pipelineOperator","proposal")){case"hack":return this.withTopicBindingContext(()=>this.parseHackPipeBody());case"smart":return this.withTopicBindingContext(()=>{if(this.prodParam.hasYield&&this.isContextual(108))throw this.raise(b.PipeBodyIsTighter,this.state.startLoc);return this.parseSmartPipelineBodyInStyle(this.parseExprOpBaseRightExpr(n,e),t)});case"fsharp":return this.withSoloAwaitPermittingContext(()=>this.parseFSharpPipelineBody(e))}default:return this.parseExprOpBaseRightExpr(n,e)}}parseExprOpBaseRightExpr(n,e){let t=this.state.startLoc;return this.parseExprOp(this.parseMaybeUnaryOrPrivate(),t,Vo(n)?e-1:e)}parseHackPipeBody(){var n;let{startLoc:e}=this.state,t=this.parseMaybeAssign();return wo.has(t.type)&&!((n=t.extra)!=null&&n.parenthesized)&&this.raise(b.PipeUnparenthesizedBody,e,{type:t.type}),this.topicReferenceWasUsedInCurrentContext()||this.raise(b.PipeTopicUnused,e),t}checkExponentialAfterUnary(n){this.match(57)&&this.raise(b.UnexpectedTokenUnaryExponentiation,n.argument)}parseMaybeUnary(n,e){let t=this.state.startLoc,s=this.isContextual(96);if(s&&this.isAwaitAllowed()){this.next();let l=this.parseAwait(t);return e||this.checkExponentialAfterUnary(l),l}let i=this.match(34),a=this.startNode();if(Ro(this.state.type)){a.operator=this.state.value,a.prefix=!0,this.match(72)&&this.expectPlugin("throwExpressions");let l=this.match(89);if(this.next(),a.argument=this.parseMaybeUnary(null,!0),this.checkExpressionErrors(n,!0),this.state.strict&&l){let c=a.argument;c.type==="Identifier"?this.raise(b.StrictDelete,a):this.hasPropertyAsPrivateName(c)&&this.raise(b.DeletePrivateField,a)}if(!i)return e||this.checkExponentialAfterUnary(a),this.finishNode(a,"UnaryExpression")}let o=this.parseUpdate(a,i,n);if(s){let{type:l}=this.state;if((this.hasPlugin("v8intrinsic")?ms(l):ms(l)&&!this.match(54))&&!this.isAmbiguousAwait())return this.raiseOverwrite(b.AwaitNotInAsyncContext,t),this.parseAwait(t)}return o}parseUpdate(n,e,t){if(e){let a=n;return this.checkLVal(a.argument,{in:this.finishNode(a,"UpdateExpression")}),n}let s=this.state.startLoc,i=this.parseExprSubscripts(t);if(this.checkExpressionErrors(t,!1))return i;for(;_o(this.state.type)&&!this.canInsertSemicolon();){let a=this.startNodeAt(s);a.operator=this.state.value,a.prefix=!1,a.argument=i,this.next(),this.checkLVal(i,{in:i=this.finishNode(a,"UpdateExpression")})}return i}parseExprSubscripts(n){let e=this.state.startLoc,t=this.state.potentialArrowAt,s=this.parseExprAtom(n);return this.shouldExitDescending(s,t)?s:this.parseSubscripts(s,e)}parseSubscripts(n,e,t){let s={optionalChainMember:!1,maybeAsyncArrow:this.atPossibleAsyncArrow(n),stop:!1};do n=this.parseSubscript(n,e,t,s),s.maybeAsyncArrow=!1;while(!s.stop);return n}parseSubscript(n,e,t,s){let{type:i}=this.state;if(!t&&i===15)return this.parseBind(n,e,t,s);if(vn(i))return this.parseTaggedTemplateExpression(n,e,s);let a=!1;if(i===18){if(t&&(this.raise(b.OptionalChainingNoNew,this.state.startLoc),this.lookaheadCharCode()===40))return s.stop=!0,n;s.optionalChainMember=a=!0,this.next()}if(!t&&this.match(10))return this.parseCoverCallAndAsyncArrowHead(n,e,s,a);{let o=this.eat(0);return o||a||this.eat(16)?this.parseMember(n,e,s,o,a):(s.stop=!0,n)}}parseMember(n,e,t,s,i){let a=this.startNodeAt(e);return a.object=n,a.computed=s,s?(a.property=this.parseExpression(),this.expect(3)):this.match(138)?(n.type==="Super"&&this.raise(b.SuperPrivateField,e),this.classScope.usePrivateName(this.state.value,this.state.startLoc),a.property=this.parsePrivateName()):a.property=this.parseIdentifier(!0),t.optionalChainMember?(a.optional=i,this.finishNode(a,"OptionalMemberExpression")):this.finishNode(a,"MemberExpression")}parseBind(n,e,t,s){let i=this.startNodeAt(e);return i.object=n,this.next(),i.callee=this.parseNoCallExpr(),s.stop=!0,this.parseSubscripts(this.finishNode(i,"BindExpression"),e,t)}parseCoverCallAndAsyncArrowHead(n,e,t,s){let i=this.state.maybeInArrowParameters,a=null;this.state.maybeInArrowParameters=!0,this.next();let o=this.startNodeAt(e);o.callee=n;let{maybeAsyncArrow:l,optionalChainMember:c}=t;l&&(this.expressionScope.enter(al()),a=new ut),c&&(o.optional=s),s?o.arguments=this.parseCallExpressionArguments(11):o.arguments=this.parseCallExpressionArguments(11,n.type==="Import",n.type!=="Super",o,a);let p=this.finishCallExpression(o,c);return l&&this.shouldParseAsyncArrow()&&!s?(t.stop=!0,this.checkDestructuringPrivate(a),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),p=this.parseAsyncArrowFromCallExpression(this.startNodeAt(e),p)):(l&&(this.checkExpressionErrors(a,!0),this.expressionScope.exit()),this.toReferencedArguments(p)),this.state.maybeInArrowParameters=i,p}toReferencedArguments(n,e){this.toReferencedListDeep(n.arguments,e)}parseTaggedTemplateExpression(n,e,t){let s=this.startNodeAt(e);return s.tag=n,s.quasi=this.parseTemplate(!0),t.optionalChainMember&&this.raise(b.OptionalChainingNoTemplate,e),this.finishNode(s,"TaggedTemplateExpression")}atPossibleAsyncArrow(n){return n.type==="Identifier"&&n.name==="async"&&this.state.lastTokEndLoc.index===n.end&&!this.canInsertSemicolon()&&n.end-n.start===5&&n.start===this.state.potentialArrowAt}expectImportAttributesPlugin(){this.hasPlugin("importAssertions")||this.expectPlugin("importAttributes")}finishCallExpression(n,e){if(n.callee.type==="Import")if(n.arguments.length===2&&(this.hasPlugin("moduleAttributes")||this.expectImportAttributesPlugin()),n.arguments.length===0||n.arguments.length>2)this.raise(b.ImportCallArity,n,{maxArgumentCount:this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions")||this.hasPlugin("moduleAttributes")?2:1});else for(let t of n.arguments)t.type==="SpreadElement"&&this.raise(b.ImportCallSpreadArgument,t);return this.finishNode(n,e?"OptionalCallExpression":"CallExpression")}parseCallExpressionArguments(n,e,t,s,i){let a=[],o=!0,l=this.state.inFSharpPipelineDirectBody;for(this.state.inFSharpPipelineDirectBody=!1;!this.eat(n);){if(o)o=!1;else if(this.expect(12),this.match(n)){e&&!this.hasPlugin("importAttributes")&&!this.hasPlugin("importAssertions")&&!this.hasPlugin("moduleAttributes")&&this.raise(b.ImportCallArgumentTrailingComma,this.state.lastTokStartLoc),s&&this.addTrailingCommaExtraToNode(s),this.next();break}a.push(this.parseExprListItem(!1,i,t))}return this.state.inFSharpPipelineDirectBody=l,a}shouldParseAsyncArrow(){return this.match(19)&&!this.canInsertSemicolon()}parseAsyncArrowFromCallExpression(n,e){var t;return this.resetPreviousNodeTrailingComments(e),this.expect(19),this.parseArrowExpression(n,e.arguments,!0,(t=e.extra)==null?void 0:t.trailingCommaLoc),e.innerComments&&Vt(n,e.innerComments),e.callee.trailingComments&&Vt(n,e.callee.trailingComments),n}parseNoCallExpr(){let n=this.state.startLoc;return this.parseSubscripts(this.parseExprAtom(),n,!0)}parseExprAtom(n){let e,t=null,{type:s}=this.state;switch(s){case 79:return this.parseSuper();case 83:return e=this.startNode(),this.next(),this.match(16)?this.parseImportMetaProperty(e):this.match(10)?this.options.createImportExpressions?this.parseImportCall(e):this.finishNode(e,"Import"):(this.raise(b.UnsupportedImport,this.state.lastTokStartLoc),this.finishNode(e,"Import"));case 78:return e=this.startNode(),this.next(),this.finishNode(e,"ThisExpression");case 90:return this.parseDo(this.startNode(),!1);case 56:case 31:return this.readRegexp(),this.parseRegExpLiteral(this.state.value);case 134:return this.parseNumericLiteral(this.state.value);case 135:return this.parseBigIntLiteral(this.state.value);case 136:return this.parseDecimalLiteral(this.state.value);case 133:return this.parseStringLiteral(this.state.value);case 84:return this.parseNullLiteral();case 85:return this.parseBooleanLiteral(!0);case 86:return this.parseBooleanLiteral(!1);case 10:{let i=this.state.potentialArrowAt===this.state.start;return this.parseParenAndDistinguishExpression(i)}case 2:case 1:return this.parseArrayLike(this.state.type===2?4:3,!1,!0);case 0:return this.parseArrayLike(3,!0,!1,n);case 6:case 7:return this.parseObjectLike(this.state.type===6?9:8,!1,!0);case 5:return this.parseObjectLike(8,!1,!1,n);case 68:return this.parseFunctionOrFunctionSent();case 26:t=this.parseDecorators();case 80:return this.parseClass(this.maybeTakeDecorators(t,this.startNode()),!1);case 77:return this.parseNewOrNewTarget();case 25:case 24:return this.parseTemplate(!1);case 15:{e=this.startNode(),this.next(),e.object=null;let i=e.callee=this.parseNoCallExpr();if(i.type==="MemberExpression")return this.finishNode(e,"BindExpression");throw this.raise(b.UnsupportedBind,i)}case 138:return this.raise(b.PrivateInExpectedIn,this.state.startLoc,{identifierName:this.state.value}),this.parsePrivateName();case 33:return this.parseTopicReferenceThenEqualsSign(54,"%");case 32:return this.parseTopicReferenceThenEqualsSign(44,"^");case 37:case 38:return this.parseTopicReference("hack");case 44:case 54:case 27:{let i=this.getPluginOption("pipelineOperator","proposal");if(i)return this.parseTopicReference(i);this.unexpected();break}case 47:{let i=this.input.codePointAt(this.nextTokenStart());_e(i)||i===62?this.expectOnePlugin(["jsx","flow","typescript"]):this.unexpected();break}default:if(B(s)){if(this.isContextual(127)&&this.lookaheadInLineCharCode()===123)return this.parseModuleExpression();let i=this.state.potentialArrowAt===this.state.start,a=this.state.containsEsc,o=this.parseIdentifier();if(!a&&o.name==="async"&&!this.canInsertSemicolon()){let{type:l}=this.state;if(l===68)return this.resetPreviousNodeTrailingComments(o),this.next(),this.parseAsyncFunctionExpression(this.startNodeAtNode(o));if(B(l))return this.lookaheadCharCode()===61?this.parseAsyncArrowUnaryFunction(this.startNodeAtNode(o)):o;if(l===90)return this.resetPreviousNodeTrailingComments(o),this.parseDo(this.startNodeAtNode(o),!0)}return i&&this.match(19)&&!this.canInsertSemicolon()?(this.next(),this.parseArrowExpression(this.startNodeAtNode(o),[o],!1)):o}else this.unexpected()}}parseTopicReferenceThenEqualsSign(n,e){let t=this.getPluginOption("pipelineOperator","proposal");if(t)return this.state.type=n,this.state.value=e,this.state.pos--,this.state.end--,this.state.endLoc=re(this.state.endLoc,-1),this.parseTopicReference(t);this.unexpected()}parseTopicReference(n){let e=this.startNode(),t=this.state.startLoc,s=this.state.type;return this.next(),this.finishTopicReference(e,t,n,s)}finishTopicReference(n,e,t,s){if(this.testTopicReferenceConfiguration(t,e,s)){let i=t==="smart"?"PipelinePrimaryTopicReference":"TopicReference";return this.topicReferenceIsAllowedInCurrentContext()||this.raise(t==="smart"?b.PrimaryTopicNotAllowed:b.PipeTopicUnbound,e),this.registerTopicReference(),this.finishNode(n,i)}else throw this.raise(b.PipeTopicUnconfiguredToken,e,{token:He(s)})}testTopicReferenceConfiguration(n,e,t){switch(n){case"hack":return this.hasPlugin(["pipelineOperator",{topicToken:He(t)}]);case"smart":return t===27;default:throw this.raise(b.PipeTopicRequiresHackPipes,e)}}parseAsyncArrowUnaryFunction(n){this.prodParam.enter(gn(!0,this.prodParam.hasYield));let e=[this.parseIdentifier()];return this.prodParam.exit(),this.hasPrecedingLineBreak()&&this.raise(b.LineTerminatorBeforeArrow,this.state.curPosition()),this.expect(19),this.parseArrowExpression(n,e,!0)}parseDo(n,e){this.expectPlugin("doExpressions"),e&&this.expectPlugin("asyncDoExpressions"),n.async=e,this.next();let t=this.state.labels;return this.state.labels=[],e?(this.prodParam.enter(2),n.body=this.parseBlock(),this.prodParam.exit()):n.body=this.parseBlock(),this.state.labels=t,this.finishNode(n,"DoExpression")}parseSuper(){let n=this.startNode();return this.next(),this.match(10)&&!this.scope.allowDirectSuper&&!this.options.allowSuperOutsideMethod?this.raise(b.SuperNotAllowed,n):!this.scope.allowSuper&&!this.options.allowSuperOutsideMethod&&this.raise(b.UnexpectedSuper,n),!this.match(10)&&!this.match(0)&&!this.match(16)&&this.raise(b.UnsupportedSuper,n),this.finishNode(n,"Super")}parsePrivateName(){let n=this.startNode(),e=this.startNodeAt(re(this.state.startLoc,1)),t=this.state.value;return this.next(),n.id=this.createIdentifier(e,t),this.finishNode(n,"PrivateName")}parseFunctionOrFunctionSent(){let n=this.startNode();if(this.next(),this.prodParam.hasYield&&this.match(16)){let e=this.createIdentifier(this.startNodeAtNode(n),"function");return this.next(),this.match(103)?this.expectPlugin("functionSent"):this.hasPlugin("functionSent")||this.unexpected(),this.parseMetaProperty(n,e,"sent")}return this.parseFunction(n)}parseMetaProperty(n,e,t){n.meta=e;let s=this.state.containsEsc;return n.property=this.parseIdentifier(!0),(n.property.name!==t||s)&&this.raise(b.UnsupportedMetaProperty,n.property,{target:e.name,onlyValidPropertyName:t}),this.finishNode(n,"MetaProperty")}parseImportMetaProperty(n){let e=this.createIdentifier(this.startNodeAtNode(n),"import");if(this.next(),this.isContextual(101))this.inModule||this.raise(b.ImportMetaOutsideModule,e),this.sawUnambiguousESM=!0;else if(this.isContextual(105)||this.isContextual(97)){let t=this.isContextual(105);if(t||this.unexpected(),this.expectPlugin(t?"sourcePhaseImports":"deferredImportEvaluation"),!this.options.createImportExpressions)throw this.raise(b.DynamicImportPhaseRequiresImportExpressions,this.state.startLoc,{phase:this.state.value});return this.next(),n.phase=t?"source":"defer",this.parseImportCall(n)}return this.parseMetaProperty(n,e,"meta")}parseLiteralAtNode(n,e,t){return this.addExtra(t,"rawValue",n),this.addExtra(t,"raw",this.input.slice(t.start,this.state.end)),t.value=n,this.next(),this.finishNode(t,e)}parseLiteral(n,e){let t=this.startNode();return this.parseLiteralAtNode(n,e,t)}parseStringLiteral(n){return this.parseLiteral(n,"StringLiteral")}parseNumericLiteral(n){return this.parseLiteral(n,"NumericLiteral")}parseBigIntLiteral(n){return this.parseLiteral(n,"BigIntLiteral")}parseDecimalLiteral(n){return this.parseLiteral(n,"DecimalLiteral")}parseRegExpLiteral(n){let e=this.parseLiteral(n.value,"RegExpLiteral");return e.pattern=n.pattern,e.flags=n.flags,e}parseBooleanLiteral(n){let e=this.startNode();return e.value=n,this.next(),this.finishNode(e,"BooleanLiteral")}parseNullLiteral(){let n=this.startNode();return this.next(),this.finishNode(n,"NullLiteral")}parseParenAndDistinguishExpression(n){let e=this.state.startLoc,t;this.next(),this.expressionScope.enter(il());let s=this.state.maybeInArrowParameters,i=this.state.inFSharpPipelineDirectBody;this.state.maybeInArrowParameters=!0,this.state.inFSharpPipelineDirectBody=!1;let a=this.state.startLoc,o=[],l=new ut,c=!0,p,u;for(;!this.match(11);){if(c)c=!1;else if(this.expect(12,l.optionalParametersLoc===null?null:l.optionalParametersLoc),this.match(11)){u=this.state.startLoc;break}if(this.match(21)){let d=this.state.startLoc;if(p=this.state.startLoc,o.push(this.parseParenItem(this.parseRestBinding(),d)),!this.checkCommaAfterRest(41))break}else o.push(this.parseMaybeAssignAllowIn(l,this.parseParenItem))}let h=this.state.lastTokEndLoc;this.expect(11),this.state.maybeInArrowParameters=s,this.state.inFSharpPipelineDirectBody=i;let m=this.startNodeAt(e);return n&&this.shouldParseArrow(o)&&(m=this.parseArrow(m))?(this.checkDestructuringPrivate(l),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),this.parseArrowExpression(m,o,!1),m):(this.expressionScope.exit(),o.length||this.unexpected(this.state.lastTokStartLoc),u&&this.unexpected(u),p&&this.unexpected(p),this.checkExpressionErrors(l,!0),this.toReferencedListDeep(o,!0),o.length>1?(t=this.startNodeAt(a),t.expressions=o,this.finishNode(t,"SequenceExpression"),this.resetEndLocation(t,h)):t=o[0],this.wrapParenthesis(e,t))}wrapParenthesis(n,e){if(!this.options.createParenthesizedExpressions)return this.addExtra(e,"parenthesized",!0),this.addExtra(e,"parenStart",n.index),this.takeSurroundingComments(e,n.index,this.state.lastTokEndLoc.index),e;let t=this.startNodeAt(n);return t.expression=e,this.finishNode(t,"ParenthesizedExpression")}shouldParseArrow(n){return!this.canInsertSemicolon()}parseArrow(n){if(this.eat(19))return n}parseParenItem(n,e){return n}parseNewOrNewTarget(){let n=this.startNode();if(this.next(),this.match(16)){let e=this.createIdentifier(this.startNodeAtNode(n),"new");this.next();let t=this.parseMetaProperty(n,e,"target");return!this.scope.inNonArrowFunction&&!this.scope.inClass&&!this.options.allowNewTargetOutsideFunction&&this.raise(b.UnexpectedNewTarget,t),t}return this.parseNew(n)}parseNew(n){if(this.parseNewCallee(n),this.eat(10)){let e=this.parseExprList(11);this.toReferencedList(e),n.arguments=e}else n.arguments=[];return this.finishNode(n,"NewExpression")}parseNewCallee(n){let e=this.match(83),t=this.parseNoCallExpr();n.callee=t,e&&(t.type==="Import"||t.type==="ImportExpression")&&this.raise(b.ImportCallNotNewExpression,t)}parseTemplateElement(n){let{start:e,startLoc:t,end:s,value:i}=this.state,a=e+1,o=this.startNodeAt(re(t,1));i===null&&(n||this.raise(b.InvalidEscapeSequenceTemplate,re(this.state.firstInvalidTemplateEscapePos,1)));let l=this.match(24),c=l?-1:-2,p=s+c;o.value={raw:this.input.slice(a,p).replace(/\r\n?/g,`
9
- `),cooked:i===null?null:i.slice(1,c)},o.tail=l,this.next();let u=this.finishNode(o,"TemplateElement");return this.resetEndLocation(u,re(this.state.lastTokEndLoc,c)),u}parseTemplate(n){let e=this.startNode();e.expressions=[];let t=this.parseTemplateElement(n);for(e.quasis=[t];!t.tail;)e.expressions.push(this.parseTemplateSubstitution()),this.readTemplateContinuation(),e.quasis.push(t=this.parseTemplateElement(n));return this.finishNode(e,"TemplateLiteral")}parseTemplateSubstitution(){return this.parseExpression()}parseObjectLike(n,e,t,s){t&&this.expectPlugin("recordAndTuple");let i=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let a=Object.create(null),o=!0,l=this.startNode();for(l.properties=[],this.next();!this.match(n);){if(o)o=!1;else if(this.expect(12),this.match(n)){this.addTrailingCommaExtraToNode(l);break}let p;e?p=this.parseBindingProperty():(p=this.parsePropertyDefinition(s),this.checkProto(p,t,a,s)),t&&!this.isObjectProperty(p)&&p.type!=="SpreadElement"&&this.raise(b.InvalidRecordProperty,p),p.shorthand&&this.addExtra(p,"shorthand",!0),l.properties.push(p)}this.next(),this.state.inFSharpPipelineDirectBody=i;let c="ObjectExpression";return e?c="ObjectPattern":t&&(c="RecordExpression"),this.finishNode(l,c)}addTrailingCommaExtraToNode(n){this.addExtra(n,"trailingComma",this.state.lastTokStartLoc.index),this.addExtra(n,"trailingCommaLoc",this.state.lastTokStartLoc,!1)}maybeAsyncOrAccessorProp(n){return!n.computed&&n.key.type==="Identifier"&&(this.isLiteralPropertyName()||this.match(0)||this.match(55))}parsePropertyDefinition(n){let e=[];if(this.match(26))for(this.hasPlugin("decorators")&&this.raise(b.UnsupportedPropertyDecorator,this.state.startLoc);this.match(26);)e.push(this.parseDecorator());let t=this.startNode(),s=!1,i=!1,a;if(this.match(21))return e.length&&this.unexpected(),this.parseSpread();e.length&&(t.decorators=e,e=[]),t.method=!1,n&&(a=this.state.startLoc);let o=this.eat(55);this.parsePropertyNamePrefixOperator(t);let l=this.state.containsEsc,c=this.parsePropertyName(t,n);if(!o&&!l&&this.maybeAsyncOrAccessorProp(t)){let p=c.name;p==="async"&&!this.hasPrecedingLineBreak()&&(s=!0,this.resetPreviousNodeTrailingComments(c),o=this.eat(55),this.parsePropertyName(t)),(p==="get"||p==="set")&&(i=!0,this.resetPreviousNodeTrailingComments(c),t.kind=p,this.match(55)&&(o=!0,this.raise(b.AccessorIsGenerator,this.state.curPosition(),{kind:p}),this.next()),this.parsePropertyName(t))}return this.parseObjPropValue(t,a,o,s,!1,i,n)}getGetterSetterExpectedParamCount(n){return n.kind==="get"?0:1}getObjectOrClassMethodParams(n){return n.params}checkGetterSetterParams(n){var e;let t=this.getGetterSetterExpectedParamCount(n),s=this.getObjectOrClassMethodParams(n);s.length!==t&&this.raise(n.kind==="get"?b.BadGetterArity:b.BadSetterArity,n),n.kind==="set"&&((e=s[s.length-1])==null?void 0:e.type)==="RestElement"&&this.raise(b.BadSetterRestParameter,n)}parseObjectMethod(n,e,t,s,i){if(i){let a=this.parseMethod(n,e,!1,!1,!1,"ObjectMethod");return this.checkGetterSetterParams(a),a}if(t||e||this.match(10))return s&&this.unexpected(),n.kind="method",n.method=!0,this.parseMethod(n,e,t,!1,!1,"ObjectMethod")}parseObjectProperty(n,e,t,s){if(n.shorthand=!1,this.eat(14))return n.value=t?this.parseMaybeDefault(this.state.startLoc):this.parseMaybeAssignAllowIn(s),this.finishNode(n,"ObjectProperty");if(!n.computed&&n.key.type==="Identifier"){if(this.checkReservedWord(n.key.name,n.key.loc.start,!0,!1),t)n.value=this.parseMaybeDefault(e,Be(n.key));else if(this.match(29)){let i=this.state.startLoc;s!=null?s.shorthandAssignLoc===null&&(s.shorthandAssignLoc=i):this.raise(b.InvalidCoverInitializedName,i),n.value=this.parseMaybeDefault(e,Be(n.key))}else n.value=Be(n.key);return n.shorthand=!0,this.finishNode(n,"ObjectProperty")}}parseObjPropValue(n,e,t,s,i,a,o){let l=this.parseObjectMethod(n,t,s,i,a)||this.parseObjectProperty(n,e,i,o);return l||this.unexpected(),l}parsePropertyName(n,e){if(this.eat(0))n.computed=!0,n.key=this.parseMaybeAssignAllowIn(),this.expect(3);else{let{type:t,value:s}=this.state,i;if(xe(t))i=this.parseIdentifier(!0);else switch(t){case 134:i=this.parseNumericLiteral(s);break;case 133:i=this.parseStringLiteral(s);break;case 135:i=this.parseBigIntLiteral(s);break;case 136:i=this.parseDecimalLiteral(s);break;case 138:{let a=this.state.startLoc;e!=null?e.privateKeyLoc===null&&(e.privateKeyLoc=a):this.raise(b.UnexpectedPrivateField,a),i=this.parsePrivateName();break}default:this.unexpected()}n.key=i,t!==138&&(n.computed=!1)}return n.key}initFunction(n,e){n.id=null,n.generator=!1,n.async=e}parseMethod(n,e,t,s,i,a,o=!1){this.initFunction(n,t),n.generator=e,this.scope.enter(18|(o?64:0)|(i?32:0)),this.prodParam.enter(gn(t,n.generator)),this.parseFunctionParams(n,s);let l=this.parseFunctionBodyAndFinish(n,a,!0);return this.prodParam.exit(),this.scope.exit(),l}parseArrayLike(n,e,t,s){t&&this.expectPlugin("recordAndTuple");let i=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let a=this.startNode();return this.next(),a.elements=this.parseExprList(n,!t,s,a),this.state.inFSharpPipelineDirectBody=i,this.finishNode(a,t?"TupleExpression":"ArrayExpression")}parseArrowExpression(n,e,t,s){this.scope.enter(6);let i=gn(t,!1);!this.match(5)&&this.prodParam.hasIn&&(i|=8),this.prodParam.enter(i),this.initFunction(n,t);let a=this.state.maybeInArrowParameters;return e&&(this.state.maybeInArrowParameters=!0,this.setArrowFunctionParameters(n,e,s)),this.state.maybeInArrowParameters=!1,this.parseFunctionBody(n,!0),this.prodParam.exit(),this.scope.exit(),this.state.maybeInArrowParameters=a,this.finishNode(n,"ArrowFunctionExpression")}setArrowFunctionParameters(n,e,t){this.toAssignableList(e,t,!1),n.params=e}parseFunctionBodyAndFinish(n,e,t=!1){return this.parseFunctionBody(n,!1,t),this.finishNode(n,e)}parseFunctionBody(n,e,t=!1){let s=e&&!this.match(5);if(this.expressionScope.enter(yi()),s)n.body=this.parseMaybeAssign(),this.checkParams(n,!1,e,!1);else{let i=this.state.strict,a=this.state.labels;this.state.labels=[],this.prodParam.enter(this.prodParam.currentFlags()|4),n.body=this.parseBlock(!0,!1,o=>{let l=!this.isSimpleParamList(n.params);o&&l&&this.raise(b.IllegalLanguageModeDirective,(n.kind==="method"||n.kind==="constructor")&&n.key?n.key.loc.end:n);let c=!i&&this.state.strict;this.checkParams(n,!this.state.strict&&!e&&!t&&!l,e,c),this.state.strict&&n.id&&this.checkIdentifier(n.id,65,c)}),this.prodParam.exit(),this.state.labels=a}this.expressionScope.exit()}isSimpleParameter(n){return n.type==="Identifier"}isSimpleParamList(n){for(let e=0,t=n.length;e<t;e++)if(!this.isSimpleParameter(n[e]))return!1;return!0}checkParams(n,e,t,s=!0){let i=!e&&new Set,a={type:"FormalParameters"};for(let o of n.params)this.checkLVal(o,{in:a,binding:5,checkClashes:i,strictModeChanged:s})}parseExprList(n,e,t,s){let i=[],a=!0;for(;!this.eat(n);){if(a)a=!1;else if(this.expect(12),this.match(n)){s&&this.addTrailingCommaExtraToNode(s),this.next();break}i.push(this.parseExprListItem(e,t))}return i}parseExprListItem(n,e,t){let s;if(this.match(12))n||this.raise(b.UnexpectedToken,this.state.curPosition(),{unexpected:","}),s=null;else if(this.match(21)){let i=this.state.startLoc;s=this.parseParenItem(this.parseSpread(e),i)}else if(this.match(17)){this.expectPlugin("partialApplication"),t||this.raise(b.UnexpectedArgumentPlaceholder,this.state.startLoc);let i=this.startNode();this.next(),s=this.finishNode(i,"ArgumentPlaceholder")}else s=this.parseMaybeAssignAllowIn(e,this.parseParenItem);return s}parseIdentifier(n){let e=this.startNode(),t=this.parseIdentifierName(n);return this.createIdentifier(e,t)}createIdentifier(n,e){return n.name=e,n.loc.identifierName=e,this.finishNode(n,"Identifier")}parseIdentifierName(n){let e,{startLoc:t,type:s}=this.state;xe(s)?e=this.state.value:this.unexpected();let i=Mo(s);return n?i&&this.replaceToken(132):this.checkReservedWord(e,t,i,!1),this.next(),e}checkReservedWord(n,e,t,s){if(n.length>10||!Qo(n))return;if(t&&Ko(n)){this.raise(b.UnexpectedKeyword,e,{keyword:n});return}if((this.state.strict?s?hi:ui:pi)(n,this.inModule)){this.raise(b.UnexpectedReservedWord,e,{reservedWord:n});return}else if(n==="yield"){if(this.prodParam.hasYield){this.raise(b.YieldBindingIdentifier,e);return}}else if(n==="await"){if(this.prodParam.hasAwait){this.raise(b.AwaitBindingIdentifier,e);return}if(this.scope.inStaticBlock){this.raise(b.AwaitBindingIdentifierInStaticBlock,e);return}this.expressionScope.recordAsyncArrowParametersError(e)}else if(n==="arguments"&&this.scope.inClassAndNotInNonArrowFunction){this.raise(b.ArgumentsInClass,e);return}}isAwaitAllowed(){return!!(this.prodParam.hasAwait||this.options.allowAwaitOutsideFunction&&!this.scope.inFunction)}parseAwait(n){let e=this.startNodeAt(n);return this.expressionScope.recordParameterInitializerError(b.AwaitExpressionFormalParameter,e),this.eat(55)&&this.raise(b.ObsoleteAwaitStar,e),!this.scope.inFunction&&!this.options.allowAwaitOutsideFunction&&(this.isAmbiguousAwait()?this.ambiguousScriptDifferentAst=!0:this.sawUnambiguousESM=!0),this.state.soloAwait||(e.argument=this.parseMaybeUnary(null,!0)),this.finishNode(e,"AwaitExpression")}isAmbiguousAwait(){if(this.hasPrecedingLineBreak())return!0;let{type:n}=this.state;return n===53||n===10||n===0||vn(n)||n===102&&!this.state.containsEsc||n===137||n===56||this.hasPlugin("v8intrinsic")&&n===54}parseYield(){let n=this.startNode();this.expressionScope.recordParameterInitializerError(b.YieldInParameter,n),this.next();let e=!1,t=null;if(!this.hasPrecedingLineBreak())switch(e=this.eat(55),this.state.type){case 13:case 139:case 8:case 11:case 3:case 9:case 14:case 12:if(!e)break;default:t=this.parseMaybeAssign()}return n.delegate=e,n.argument=t,this.finishNode(n,"YieldExpression")}parseImportCall(n){return this.next(),n.source=this.parseMaybeAssignAllowIn(),(this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions"))&&(n.options=null),this.eat(12)&&(this.expectImportAttributesPlugin(),this.match(11)||(n.options=this.parseMaybeAssignAllowIn(),this.eat(12))),this.expect(11),this.finishNode(n,"ImportExpression")}checkPipelineAtInfixOperator(n,e){this.hasPlugin(["pipelineOperator",{proposal:"smart"}])&&n.type==="SequenceExpression"&&this.raise(b.PipelineHeadSequenceExpression,e)}parseSmartPipelineBodyInStyle(n,e){if(this.isSimpleReference(n)){let t=this.startNodeAt(e);return t.callee=n,this.finishNode(t,"PipelineBareFunction")}else{let t=this.startNodeAt(e);return this.checkSmartPipeTopicBodyEarlyErrors(e),t.expression=n,this.finishNode(t,"PipelineTopicExpression")}}isSimpleReference(n){switch(n.type){case"MemberExpression":return!n.computed&&this.isSimpleReference(n.object);case"Identifier":return!0;default:return!1}}checkSmartPipeTopicBodyEarlyErrors(n){if(this.match(19))throw this.raise(b.PipelineBodyNoArrow,this.state.startLoc);this.topicReferenceWasUsedInCurrentContext()||this.raise(b.PipelineTopicUnused,n)}withTopicBindingContext(n){let e=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:1,maxTopicIndex:null};try{return n()}finally{this.state.topicContext=e}}withSmartMixTopicForbiddingContext(n){if(this.hasPlugin(["pipelineOperator",{proposal:"smart"}])){let e=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null};try{return n()}finally{this.state.topicContext=e}}else return n()}withSoloAwaitPermittingContext(n){let e=this.state.soloAwait;this.state.soloAwait=!0;try{return n()}finally{this.state.soloAwait=e}}allowInAnd(n){let e=this.prodParam.currentFlags();if(8&~e){this.prodParam.enter(e|8);try{return n()}finally{this.prodParam.exit()}}return n()}disallowInAnd(n){let e=this.prodParam.currentFlags();if(8&e){this.prodParam.enter(e&-9);try{return n()}finally{this.prodParam.exit()}}return n()}registerTopicReference(){this.state.topicContext.maxTopicIndex=0}topicReferenceIsAllowedInCurrentContext(){return this.state.topicContext.maxNumOfResolvableTopics>=1}topicReferenceWasUsedInCurrentContext(){return this.state.topicContext.maxTopicIndex!=null&&this.state.topicContext.maxTopicIndex>=0}parseFSharpPipelineBody(n){let e=this.state.startLoc;this.state.potentialArrowAt=this.state.start;let t=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!0;let s=this.parseExprOp(this.parseMaybeUnaryOrPrivate(),e,n);return this.state.inFSharpPipelineDirectBody=t,s}parseModuleExpression(){this.expectPlugin("moduleBlocks");let n=this.startNode();this.next(),this.match(5)||this.unexpected(null,5);let e=this.startNodeAt(this.state.endLoc);this.next();let t=this.initializeScopes(!0);this.enterInitialScopes();try{n.body=this.parseProgram(e,8,"module")}finally{t()}return this.finishNode(n,"ModuleExpression")}parsePropertyNamePrefixOperator(n){}},hs={kind:1},Dl={kind:2},Ml=/[\uD800-\uDFFF]/u,fs=/in(?:stanceof)?/y;function Ll(r,n){for(let e=0;e<r.length;e++){let t=r[e],{type:s}=t;if(typeof s=="number"){{if(s===138){let{loc:i,start:a,value:o,end:l}=t,c=a+1,p=re(i.start,1);r.splice(e,1,new Ae({type:Fe(27),value:"#",start:a,end:c,startLoc:i.start,endLoc:p}),new Ae({type:Fe(132),value:o,start:c,end:l,startLoc:p,endLoc:i.end})),e++;continue}if(vn(s)){let{loc:i,start:a,value:o,end:l}=t,c=a+1,p=re(i.start,1),u;n.charCodeAt(a)===96?u=new Ae({type:Fe(22),value:"`",start:a,end:c,startLoc:i.start,endLoc:p}):u=new Ae({type:Fe(8),value:"}",start:a,end:c,startLoc:i.start,endLoc:p});let h,m,d,g;s===24?(m=l-1,d=re(i.end,-1),h=o===null?null:o.slice(1,-1),g=new Ae({type:Fe(22),value:"`",start:m,end:l,startLoc:d,endLoc:i.end})):(m=l-2,d=re(i.end,-2),h=o===null?null:o.slice(1,-2),g=new Ae({type:Fe(23),value:"${",start:m,end:l,startLoc:d,endLoc:i.end})),r.splice(e,1,u,new Ae({type:Fe(20),value:h,start:c,end:m,startLoc:p,endLoc:d}),g),e+=2;continue}}t.type=Fe(s)}}return r}var Os=class extends Ls{parseTopLevel(n,e){return n.program=this.parseProgram(e),n.comments=this.comments,this.options.tokens&&(n.tokens=Ll(this.tokens,this.input)),this.finishNode(n,"File")}parseProgram(n,e=139,t=this.options.sourceType){if(n.sourceType=t,n.interpreter=this.parseInterpreterDirective(),this.parseBlockBody(n,!0,!0,e),this.inModule&&!this.options.allowUndeclaredExports&&this.scope.undefinedExports.size>0)for(let[i,a]of Array.from(this.scope.undefinedExports))this.raise(b.ModuleExportUndefined,a,{localName:i});let s;return e===139?s=this.finishNode(n,"Program"):s=this.finishNodeAt(n,"Program",re(this.state.startLoc,-1)),s}stmtToDirective(n){let e=n;e.type="Directive",e.value=e.expression,delete e.expression;let t=e.value,s=t.value,i=this.input.slice(t.start,t.end),a=t.value=i.slice(1,-1);return this.addExtra(t,"raw",i),this.addExtra(t,"rawValue",a),this.addExtra(t,"expressionValue",s),t.type="DirectiveLiteral",e}parseInterpreterDirective(){if(!this.match(28))return null;let n=this.startNode();return n.value=this.state.value,this.next(),this.finishNode(n,"InterpreterDirective")}isLet(){return this.isContextual(100)?this.hasFollowingBindingAtom():!1}chStartsBindingIdentifier(n,e){if(_e(n)){if(fs.lastIndex=e,fs.test(this.input)){let t=this.codePointAtPos(fs.lastIndex);if(!pt(t)&&t!==92)return!1}return!0}else return n===92}chStartsBindingPattern(n){return n===91||n===123}hasFollowingBindingAtom(){let n=this.nextTokenStart(),e=this.codePointAtPos(n);return this.chStartsBindingPattern(e)||this.chStartsBindingIdentifier(e,n)}hasInLineFollowingBindingIdentifier(){let n=this.nextTokenInLineStart(),e=this.codePointAtPos(n);return this.chStartsBindingIdentifier(e,n)}startsUsingForOf(){let{type:n,containsEsc:e}=this.lookahead();if(n===102&&!e)return!1;if(B(n)&&!this.hasFollowingLineBreak())return this.expectPlugin("explicitResourceManagement"),!0}startsAwaitUsing(){let n=this.nextTokenInLineStart();if(this.isUnparsedContextual(n,"using")){n=this.nextTokenInLineStartSince(n+5);let e=this.codePointAtPos(n);if(this.chStartsBindingIdentifier(e,n))return this.expectPlugin("explicitResourceManagement"),!0}return!1}parseModuleItem(){return this.parseStatementLike(15)}parseStatementListItem(){return this.parseStatementLike(6|(!this.options.annexB||this.state.strict?0:8))}parseStatementOrSloppyAnnexBFunctionDeclaration(n=!1){let e=0;return this.options.annexB&&!this.state.strict&&(e|=4,n&&(e|=8)),this.parseStatementLike(e)}parseStatement(){return this.parseStatementLike(0)}parseStatementLike(n){let e=null;return this.match(26)&&(e=this.parseDecorators(!0)),this.parseStatementContent(n,e)}parseStatementContent(n,e){let t=this.state.type,s=this.startNode(),i=!!(n&2),a=!!(n&4),o=n&1;switch(t){case 60:return this.parseBreakContinueStatement(s,!0);case 63:return this.parseBreakContinueStatement(s,!1);case 64:return this.parseDebuggerStatement(s);case 90:return this.parseDoWhileStatement(s);case 91:return this.parseForStatement(s);case 68:if(this.lookaheadCharCode()===46)break;return a||this.raise(this.state.strict?b.StrictFunction:this.options.annexB?b.SloppyFunctionAnnexB:b.SloppyFunction,this.state.startLoc),this.parseFunctionStatement(s,!1,!i&&a);case 80:return i||this.unexpected(),this.parseClass(this.maybeTakeDecorators(e,s),!0);case 69:return this.parseIfStatement(s);case 70:return this.parseReturnStatement(s);case 71:return this.parseSwitchStatement(s);case 72:return this.parseThrowStatement(s);case 73:return this.parseTryStatement(s);case 96:if(!this.state.containsEsc&&this.startsAwaitUsing())return this.isAwaitAllowed()?i||this.raise(b.UnexpectedLexicalDeclaration,s):this.raise(b.AwaitUsingNotInAsyncContext,s),this.next(),this.parseVarStatement(s,"await using");break;case 107:if(this.state.containsEsc||!this.hasInLineFollowingBindingIdentifier())break;return this.expectPlugin("explicitResourceManagement"),!this.scope.inModule&&this.scope.inTopLevel?this.raise(b.UnexpectedUsingDeclaration,this.state.startLoc):i||this.raise(b.UnexpectedLexicalDeclaration,this.state.startLoc),this.parseVarStatement(s,"using");case 100:{if(this.state.containsEsc)break;let p=this.nextTokenStart(),u=this.codePointAtPos(p);if(u!==91&&(!i&&this.hasFollowingLineBreak()||!this.chStartsBindingIdentifier(u,p)&&u!==123))break}case 75:i||this.raise(b.UnexpectedLexicalDeclaration,this.state.startLoc);case 74:{let p=this.state.value;return this.parseVarStatement(s,p)}case 92:return this.parseWhileStatement(s);case 76:return this.parseWithStatement(s);case 5:return this.parseBlock();case 13:return this.parseEmptyStatement(s);case 83:{let p=this.lookaheadCharCode();if(p===40||p===46)break}case 82:{!this.options.allowImportExportEverywhere&&!o&&this.raise(b.UnexpectedImportExport,this.state.startLoc),this.next();let p;return t===83?(p=this.parseImport(s),p.type==="ImportDeclaration"&&(!p.importKind||p.importKind==="value")&&(this.sawUnambiguousESM=!0)):(p=this.parseExport(s,e),(p.type==="ExportNamedDeclaration"&&(!p.exportKind||p.exportKind==="value")||p.type==="ExportAllDeclaration"&&(!p.exportKind||p.exportKind==="value")||p.type==="ExportDefaultDeclaration")&&(this.sawUnambiguousESM=!0)),this.assertModuleNodeAllowed(p),p}default:if(this.isAsyncFunction())return i||this.raise(b.AsyncFunctionInSingleStatementContext,this.state.startLoc),this.next(),this.parseFunctionStatement(s,!0,!i&&a)}let l=this.state.value,c=this.parseExpression();return B(t)&&c.type==="Identifier"&&this.eat(14)?this.parseLabeledStatement(s,l,c,n):this.parseExpressionStatement(s,c,e)}assertModuleNodeAllowed(n){!this.options.allowImportExportEverywhere&&!this.inModule&&this.raise(b.ImportOutsideModule,n)}decoratorsEnabledBeforeExport(){return this.hasPlugin("decorators-legacy")?!0:this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")!==!1}maybeTakeDecorators(n,e,t){return n&&(e.decorators&&e.decorators.length>0?(typeof this.getPluginOption("decorators","decoratorsBeforeExport")!="boolean"&&this.raise(b.DecoratorsBeforeAfterExport,e.decorators[0]),e.decorators.unshift(...n)):e.decorators=n,this.resetStartLocationFromNode(e,n[0]),t&&this.resetStartLocationFromNode(t,e)),e}canHaveLeadingDecorator(){return this.match(80)}parseDecorators(n){let e=[];do e.push(this.parseDecorator());while(this.match(26));if(this.match(82))n||this.unexpected(),this.decoratorsEnabledBeforeExport()||this.raise(b.DecoratorExportClass,this.state.startLoc);else if(!this.canHaveLeadingDecorator())throw this.raise(b.UnexpectedLeadingDecorator,this.state.startLoc);return e}parseDecorator(){this.expectOnePlugin(["decorators","decorators-legacy"]);let n=this.startNode();if(this.next(),this.hasPlugin("decorators")){let e=this.state.startLoc,t;if(this.match(10)){let s=this.state.startLoc;this.next(),t=this.parseExpression(),this.expect(11),t=this.wrapParenthesis(s,t);let i=this.state.startLoc;n.expression=this.parseMaybeDecoratorArguments(t),this.getPluginOption("decorators","allowCallParenthesized")===!1&&n.expression!==t&&this.raise(b.DecoratorArgumentsOutsideParentheses,i)}else{for(t=this.parseIdentifier(!1);this.eat(16);){let s=this.startNodeAt(e);s.object=t,this.match(138)?(this.classScope.usePrivateName(this.state.value,this.state.startLoc),s.property=this.parsePrivateName()):s.property=this.parseIdentifier(!0),s.computed=!1,t=this.finishNode(s,"MemberExpression")}n.expression=this.parseMaybeDecoratorArguments(t)}}else n.expression=this.parseExprSubscripts();return this.finishNode(n,"Decorator")}parseMaybeDecoratorArguments(n){if(this.eat(10)){let e=this.startNodeAtNode(n);return e.callee=n,e.arguments=this.parseCallExpressionArguments(11,!1),this.toReferencedList(e.arguments),this.finishNode(e,"CallExpression")}return n}parseBreakContinueStatement(n,e){return this.next(),this.isLineTerminator()?n.label=null:(n.label=this.parseIdentifier(),this.semicolon()),this.verifyBreakContinue(n,e),this.finishNode(n,e?"BreakStatement":"ContinueStatement")}verifyBreakContinue(n,e){let t;for(t=0;t<this.state.labels.length;++t){let s=this.state.labels[t];if((n.label==null||s.name===n.label.name)&&(s.kind!=null&&(e||s.kind===1)||n.label&&e))break}if(t===this.state.labels.length){let s=e?"BreakStatement":"ContinueStatement";this.raise(b.IllegalBreakContinue,n,{type:s})}}parseDebuggerStatement(n){return this.next(),this.semicolon(),this.finishNode(n,"DebuggerStatement")}parseHeaderExpression(){this.expect(10);let n=this.parseExpression();return this.expect(11),n}parseDoWhileStatement(n){return this.next(),this.state.labels.push(hs),n.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.state.labels.pop(),this.expect(92),n.test=this.parseHeaderExpression(),this.eat(13),this.finishNode(n,"DoWhileStatement")}parseForStatement(n){this.next(),this.state.labels.push(hs);let e=null;if(this.isAwaitAllowed()&&this.eatContextual(96)&&(e=this.state.lastTokStartLoc),this.scope.enter(0),this.expect(10),this.match(13))return e!==null&&this.unexpected(e),this.parseFor(n,null);let t=this.isContextual(100);{let l=this.isContextual(96)&&this.startsAwaitUsing(),c=l||this.isContextual(107)&&this.startsUsingForOf(),p=t&&this.hasFollowingBindingAtom()||c;if(this.match(74)||this.match(75)||p){let u=this.startNode(),h;l?(h="await using",this.isAwaitAllowed()||this.raise(b.AwaitUsingNotInAsyncContext,this.state.startLoc),this.next()):h=this.state.value,this.next(),this.parseVar(u,!0,h);let m=this.finishNode(u,"VariableDeclaration"),d=this.match(58);return d&&c&&this.raise(b.ForInUsing,m),(d||this.isContextual(102))&&m.declarations.length===1?this.parseForIn(n,m,e):(e!==null&&this.unexpected(e),this.parseFor(n,m))}}let s=this.isContextual(95),i=new ut,a=this.parseExpression(!0,i),o=this.isContextual(102);if(o&&(t&&this.raise(b.ForOfLet,a),e===null&&s&&a.type==="Identifier"&&this.raise(b.ForOfAsync,a)),o||this.match(58)){this.checkDestructuringPrivate(i),this.toAssignable(a,!0);let l=o?"ForOfStatement":"ForInStatement";return this.checkLVal(a,{in:{type:l}}),this.parseForIn(n,a,e)}else this.checkExpressionErrors(i,!0);return e!==null&&this.unexpected(e),this.parseFor(n,a)}parseFunctionStatement(n,e,t){return this.next(),this.parseFunction(n,1|(t?2:0)|(e?8:0))}parseIfStatement(n){return this.next(),n.test=this.parseHeaderExpression(),n.consequent=this.parseStatementOrSloppyAnnexBFunctionDeclaration(),n.alternate=this.eat(66)?this.parseStatementOrSloppyAnnexBFunctionDeclaration():null,this.finishNode(n,"IfStatement")}parseReturnStatement(n){return!this.prodParam.hasReturn&&!this.options.allowReturnOutsideFunction&&this.raise(b.IllegalReturn,this.state.startLoc),this.next(),this.isLineTerminator()?n.argument=null:(n.argument=this.parseExpression(),this.semicolon()),this.finishNode(n,"ReturnStatement")}parseSwitchStatement(n){this.next(),n.discriminant=this.parseHeaderExpression();let e=n.cases=[];this.expect(5),this.state.labels.push(Dl),this.scope.enter(0);let t;for(let s;!this.match(8);)if(this.match(61)||this.match(65)){let i=this.match(61);t&&this.finishNode(t,"SwitchCase"),e.push(t=this.startNode()),t.consequent=[],this.next(),i?t.test=this.parseExpression():(s&&this.raise(b.MultipleDefaultsInSwitch,this.state.lastTokStartLoc),s=!0,t.test=null),this.expect(14)}else t?t.consequent.push(this.parseStatementListItem()):this.unexpected();return this.scope.exit(),t&&this.finishNode(t,"SwitchCase"),this.next(),this.state.labels.pop(),this.finishNode(n,"SwitchStatement")}parseThrowStatement(n){return this.next(),this.hasPrecedingLineBreak()&&this.raise(b.NewlineAfterThrow,this.state.lastTokEndLoc),n.argument=this.parseExpression(),this.semicolon(),this.finishNode(n,"ThrowStatement")}parseCatchClauseParam(){let n=this.parseBindingAtom();return this.scope.enter(this.options.annexB&&n.type==="Identifier"?8:0),this.checkLVal(n,{in:{type:"CatchClause"},binding:9}),n}parseTryStatement(n){if(this.next(),n.block=this.parseBlock(),n.handler=null,this.match(62)){let e=this.startNode();this.next(),this.match(10)?(this.expect(10),e.param=this.parseCatchClauseParam(),this.expect(11)):(e.param=null,this.scope.enter(0)),e.body=this.withSmartMixTopicForbiddingContext(()=>this.parseBlock(!1,!1)),this.scope.exit(),n.handler=this.finishNode(e,"CatchClause")}return n.finalizer=this.eat(67)?this.parseBlock():null,!n.handler&&!n.finalizer&&this.raise(b.NoCatchOrFinally,n),this.finishNode(n,"TryStatement")}parseVarStatement(n,e,t=!1){return this.next(),this.parseVar(n,!1,e,t),this.semicolon(),this.finishNode(n,"VariableDeclaration")}parseWhileStatement(n){return this.next(),n.test=this.parseHeaderExpression(),this.state.labels.push(hs),n.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.state.labels.pop(),this.finishNode(n,"WhileStatement")}parseWithStatement(n){return this.state.strict&&this.raise(b.StrictWith,this.state.startLoc),this.next(),n.object=this.parseHeaderExpression(),n.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.finishNode(n,"WithStatement")}parseEmptyStatement(n){return this.next(),this.finishNode(n,"EmptyStatement")}parseLabeledStatement(n,e,t,s){for(let a of this.state.labels)a.name===e&&this.raise(b.LabelRedeclaration,t,{labelName:e});let i=Fo(this.state.type)?1:this.match(71)?2:null;for(let a=this.state.labels.length-1;a>=0;a--){let o=this.state.labels[a];if(o.statementStart===n.start)o.statementStart=this.state.start,o.kind=i;else break}return this.state.labels.push({name:e,kind:i,statementStart:this.state.start}),n.body=s&8?this.parseStatementOrSloppyAnnexBFunctionDeclaration(!0):this.parseStatement(),this.state.labels.pop(),n.label=t,this.finishNode(n,"LabeledStatement")}parseExpressionStatement(n,e,t){return n.expression=e,this.semicolon(),this.finishNode(n,"ExpressionStatement")}parseBlock(n=!1,e=!0,t){let s=this.startNode();return n&&this.state.strictErrors.clear(),this.expect(5),e&&this.scope.enter(0),this.parseBlockBody(s,n,!1,8,t),e&&this.scope.exit(),this.finishNode(s,"BlockStatement")}isValidDirective(n){return n.type==="ExpressionStatement"&&n.expression.type==="StringLiteral"&&!n.expression.extra.parenthesized}parseBlockBody(n,e,t,s,i){let a=n.body=[],o=n.directives=[];this.parseBlockOrModuleBlockBody(a,e?o:void 0,t,s,i)}parseBlockOrModuleBlockBody(n,e,t,s,i){let a=this.state.strict,o=!1,l=!1;for(;!this.match(s);){let c=t?this.parseModuleItem():this.parseStatementListItem();if(e&&!l){if(this.isValidDirective(c)){let p=this.stmtToDirective(c);e.push(p),!o&&p.value.value==="use strict"&&(o=!0,this.setStrict(!0));continue}l=!0,this.state.strictErrors.clear()}n.push(c)}i?.call(this,o),a||this.setStrict(!1),this.next()}parseFor(n,e){return n.init=e,this.semicolon(!1),n.test=this.match(13)?null:this.parseExpression(),this.semicolon(!1),n.update=this.match(11)?null:this.parseExpression(),this.expect(11),n.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(n,"ForStatement")}parseForIn(n,e,t){let s=this.match(58);return this.next(),s?t!==null&&this.unexpected(t):n.await=t!==null,e.type==="VariableDeclaration"&&e.declarations[0].init!=null&&(!s||!this.options.annexB||this.state.strict||e.kind!=="var"||e.declarations[0].id.type!=="Identifier")&&this.raise(b.ForInOfLoopInitializer,e,{type:s?"ForInStatement":"ForOfStatement"}),e.type==="AssignmentPattern"&&this.raise(b.InvalidLhs,e,{ancestor:{type:"ForStatement"}}),n.left=e,n.right=s?this.parseExpression():this.parseMaybeAssignAllowIn(),this.expect(11),n.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(n,s?"ForInStatement":"ForOfStatement")}parseVar(n,e,t,s=!1){let i=n.declarations=[];for(n.kind=t;;){let a=this.startNode();if(this.parseVarId(a,t),a.init=this.eat(29)?e?this.parseMaybeAssignDisallowIn():this.parseMaybeAssignAllowIn():null,a.init===null&&!s&&(a.id.type!=="Identifier"&&!(e&&(this.match(58)||this.isContextual(102)))?this.raise(b.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:"destructuring"}):t==="const"&&!(this.match(58)||this.isContextual(102))&&this.raise(b.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:"const"})),i.push(this.finishNode(a,"VariableDeclarator")),!this.eat(12))break}return n}parseVarId(n,e){let t=this.parseBindingAtom();this.checkLVal(t,{in:{type:"VariableDeclarator"},binding:e==="var"?5:8201}),n.id=t}parseAsyncFunctionExpression(n){return this.parseFunction(n,8)}parseFunction(n,e=0){let t=e&2,s=!!(e&1),i=s&&!(e&4),a=!!(e&8);this.initFunction(n,a),this.match(55)&&(t&&this.raise(b.GeneratorInSingleStatementContext,this.state.startLoc),this.next(),n.generator=!0),s&&(n.id=this.parseFunctionId(i));let o=this.state.maybeInArrowParameters;return this.state.maybeInArrowParameters=!1,this.scope.enter(2),this.prodParam.enter(gn(a,n.generator)),s||(n.id=this.parseFunctionId()),this.parseFunctionParams(n,!1),this.withSmartMixTopicForbiddingContext(()=>{this.parseFunctionBodyAndFinish(n,s?"FunctionDeclaration":"FunctionExpression")}),this.prodParam.exit(),this.scope.exit(),s&&!t&&this.registerFunctionStatementId(n),this.state.maybeInArrowParameters=o,n}parseFunctionId(n){return n||B(this.state.type)?this.parseIdentifier():null}parseFunctionParams(n,e){this.expect(10),this.expressionScope.enter(rl()),n.params=this.parseBindingList(11,41,2|(e?4:0)),this.expressionScope.exit()}registerFunctionStatementId(n){n.id&&this.scope.declareName(n.id.name,!this.options.annexB||this.state.strict||n.generator||n.async?this.scope.treatFunctionsAsVar?5:8201:17,n.id.loc.start)}parseClass(n,e,t){this.next();let s=this.state.strict;return this.state.strict=!0,this.parseClassId(n,e,t),this.parseClassSuper(n),n.body=this.parseClassBody(!!n.superClass,s),this.finishNode(n,e?"ClassDeclaration":"ClassExpression")}isClassProperty(){return this.match(29)||this.match(13)||this.match(8)}isClassMethod(){return this.match(10)}isNonstaticConstructor(n){return!n.computed&&!n.static&&(n.key.name==="constructor"||n.key.value==="constructor")}parseClassBody(n,e){this.classScope.enter();let t={hadConstructor:!1,hadSuperClass:n},s=[],i=this.startNode();if(i.body=[],this.expect(5),this.withSmartMixTopicForbiddingContext(()=>{for(;!this.match(8);){if(this.eat(13)){if(s.length>0)throw this.raise(b.DecoratorSemicolon,this.state.lastTokEndLoc);continue}if(this.match(26)){s.push(this.parseDecorator());continue}let a=this.startNode();s.length&&(a.decorators=s,this.resetStartLocationFromNode(a,s[0]),s=[]),this.parseClassMember(i,a,t),a.kind==="constructor"&&a.decorators&&a.decorators.length>0&&this.raise(b.DecoratorConstructor,a)}}),this.state.strict=e,this.next(),s.length)throw this.raise(b.TrailingDecorator,this.state.startLoc);return this.classScope.exit(),this.finishNode(i,"ClassBody")}parseClassMemberFromModifier(n,e){let t=this.parseIdentifier(!0);if(this.isClassMethod()){let s=e;return s.kind="method",s.computed=!1,s.key=t,s.static=!1,this.pushClassMethod(n,s,!1,!1,!1,!1),!0}else if(this.isClassProperty()){let s=e;return s.computed=!1,s.key=t,s.static=!1,n.body.push(this.parseClassProperty(s)),!0}return this.resetPreviousNodeTrailingComments(t),!1}parseClassMember(n,e,t){let s=this.isContextual(106);if(s){if(this.parseClassMemberFromModifier(n,e))return;if(this.eat(5)){this.parseClassStaticBlock(n,e);return}}this.parseClassMemberWithIsStatic(n,e,t,s)}parseClassMemberWithIsStatic(n,e,t,s){let i=e,a=e,o=e,l=e,c=e,p=i,u=i;if(e.static=s,this.parsePropertyNamePrefixOperator(e),this.eat(55)){p.kind="method";let f=this.match(138);if(this.parseClassElementName(p),f){this.pushClassPrivateMethod(n,a,!0,!1);return}this.isNonstaticConstructor(i)&&this.raise(b.ConstructorIsGenerator,i.key),this.pushClassMethod(n,i,!0,!1,!1,!1);return}let h=B(this.state.type)&&!this.state.containsEsc,m=this.match(138),d=this.parseClassElementName(e),g=this.state.startLoc;if(this.parsePostMemberNameModifiers(u),this.isClassMethod()){if(p.kind="method",m){this.pushClassPrivateMethod(n,a,!1,!1);return}let f=this.isNonstaticConstructor(i),v=!1;f&&(i.kind="constructor",t.hadConstructor&&!this.hasPlugin("typescript")&&this.raise(b.DuplicateConstructor,d),f&&this.hasPlugin("typescript")&&e.override&&this.raise(b.OverrideOnConstructor,d),t.hadConstructor=!0,v=t.hadSuperClass),this.pushClassMethod(n,i,!1,!1,f,v)}else if(this.isClassProperty())m?this.pushClassPrivateProperty(n,l):this.pushClassProperty(n,o);else if(h&&d.name==="async"&&!this.isLineTerminator()){this.resetPreviousNodeTrailingComments(d);let f=this.eat(55);u.optional&&this.unexpected(g),p.kind="method";let v=this.match(138);this.parseClassElementName(p),this.parsePostMemberNameModifiers(u),v?this.pushClassPrivateMethod(n,a,f,!0):(this.isNonstaticConstructor(i)&&this.raise(b.ConstructorIsAsync,i.key),this.pushClassMethod(n,i,f,!0,!1,!1))}else if(h&&(d.name==="get"||d.name==="set")&&!(this.match(55)&&this.isLineTerminator())){this.resetPreviousNodeTrailingComments(d),p.kind=d.name;let f=this.match(138);this.parseClassElementName(i),f?this.pushClassPrivateMethod(n,a,!1,!1):(this.isNonstaticConstructor(i)&&this.raise(b.ConstructorIsAccessor,i.key),this.pushClassMethod(n,i,!1,!1,!1,!1)),this.checkGetterSetterParams(i)}else if(h&&d.name==="accessor"&&!this.isLineTerminator()){this.expectPlugin("decoratorAutoAccessors"),this.resetPreviousNodeTrailingComments(d);let f=this.match(138);this.parseClassElementName(o),this.pushClassAccessorProperty(n,c,f)}else this.isLineTerminator()?m?this.pushClassPrivateProperty(n,l):this.pushClassProperty(n,o):this.unexpected()}parseClassElementName(n){let{type:e,value:t}=this.state;if((e===132||e===133)&&n.static&&t==="prototype"&&this.raise(b.StaticPrototype,this.state.startLoc),e===138){t==="constructor"&&this.raise(b.ConstructorClassPrivateField,this.state.startLoc);let s=this.parsePrivateName();return n.key=s,s}return this.parsePropertyName(n)}parseClassStaticBlock(n,e){var t;this.scope.enter(208);let s=this.state.labels;this.state.labels=[],this.prodParam.enter(0);let i=e.body=[];this.parseBlockOrModuleBlockBody(i,void 0,!1,8),this.prodParam.exit(),this.scope.exit(),this.state.labels=s,n.body.push(this.finishNode(e,"StaticBlock")),(t=e.decorators)!=null&&t.length&&this.raise(b.DecoratorStaticBlock,e)}pushClassProperty(n,e){!e.computed&&(e.key.name==="constructor"||e.key.value==="constructor")&&this.raise(b.ConstructorClassField,e.key),n.body.push(this.parseClassProperty(e))}pushClassPrivateProperty(n,e){let t=this.parseClassPrivateProperty(e);n.body.push(t),this.classScope.declarePrivateName(this.getPrivateNameSV(t.key),0,t.key.loc.start)}pushClassAccessorProperty(n,e,t){if(!t&&!e.computed){let i=e.key;(i.name==="constructor"||i.value==="constructor")&&this.raise(b.ConstructorClassField,i)}let s=this.parseClassAccessorProperty(e);n.body.push(s),t&&this.classScope.declarePrivateName(this.getPrivateNameSV(s.key),0,s.key.loc.start)}pushClassMethod(n,e,t,s,i,a){n.body.push(this.parseMethod(e,t,s,i,a,"ClassMethod",!0))}pushClassPrivateMethod(n,e,t,s){let i=this.parseMethod(e,t,s,!1,!1,"ClassPrivateMethod",!0);n.body.push(i);let a=i.kind==="get"?i.static?6:2:i.kind==="set"?i.static?5:1:0;this.declareClassPrivateMethodInScope(i,a)}declareClassPrivateMethodInScope(n,e){this.classScope.declarePrivateName(this.getPrivateNameSV(n.key),e,n.key.loc.start)}parsePostMemberNameModifiers(n){}parseClassPrivateProperty(n){return this.parseInitializer(n),this.semicolon(),this.finishNode(n,"ClassPrivateProperty")}parseClassProperty(n){return this.parseInitializer(n),this.semicolon(),this.finishNode(n,"ClassProperty")}parseClassAccessorProperty(n){return this.parseInitializer(n),this.semicolon(),this.finishNode(n,"ClassAccessorProperty")}parseInitializer(n){this.scope.enter(80),this.expressionScope.enter(yi()),this.prodParam.enter(0),n.value=this.eat(29)?this.parseMaybeAssignAllowIn():null,this.expressionScope.exit(),this.prodParam.exit(),this.scope.exit()}parseClassId(n,e,t,s=8331){if(B(this.state.type))n.id=this.parseIdentifier(),e&&this.declareNameFromIdentifier(n.id,s);else if(t||!e)n.id=null;else throw this.raise(b.MissingClassName,this.state.startLoc)}parseClassSuper(n){n.superClass=this.eat(81)?this.parseExprSubscripts():null}parseExport(n,e){let t=this.parseMaybeImportPhase(n,!0),s=this.maybeParseExportDefaultSpecifier(n,t),i=!s||this.eat(12),a=i&&this.eatExportStar(n),o=a&&this.maybeParseExportNamespaceSpecifier(n),l=i&&(!o||this.eat(12)),c=s||a;if(a&&!o){if(s&&this.unexpected(),e)throw this.raise(b.UnsupportedDecoratorExport,n);return this.parseExportFrom(n,!0),this.finishNode(n,"ExportAllDeclaration")}let p=this.maybeParseExportNamedSpecifiers(n);s&&i&&!a&&!p&&this.unexpected(null,5),o&&l&&this.unexpected(null,98);let u;if(c||p){if(u=!1,e)throw this.raise(b.UnsupportedDecoratorExport,n);this.parseExportFrom(n,c)}else u=this.maybeParseExportDeclaration(n);if(c||p||u){var h;let m=n;if(this.checkExport(m,!0,!1,!!m.source),((h=m.declaration)==null?void 0:h.type)==="ClassDeclaration")this.maybeTakeDecorators(e,m.declaration,m);else if(e)throw this.raise(b.UnsupportedDecoratorExport,n);return this.finishNode(m,"ExportNamedDeclaration")}if(this.eat(65)){let m=n,d=this.parseExportDefaultExpression();if(m.declaration=d,d.type==="ClassDeclaration")this.maybeTakeDecorators(e,d,m);else if(e)throw this.raise(b.UnsupportedDecoratorExport,n);return this.checkExport(m,!0,!0),this.finishNode(m,"ExportDefaultDeclaration")}this.unexpected(null,5)}eatExportStar(n){return this.eat(55)}maybeParseExportDefaultSpecifier(n,e){if(e||this.isExportDefaultSpecifier()){this.expectPlugin("exportDefaultFrom",e?.loc.start);let t=e||this.parseIdentifier(!0),s=this.startNodeAtNode(t);return s.exported=t,n.specifiers=[this.finishNode(s,"ExportDefaultSpecifier")],!0}return!1}maybeParseExportNamespaceSpecifier(n){if(this.isContextual(93)){n.specifiers||(n.specifiers=[]);let e=this.startNodeAt(this.state.lastTokStartLoc);return this.next(),e.exported=this.parseModuleExportName(),n.specifiers.push(this.finishNode(e,"ExportNamespaceSpecifier")),!0}return!1}maybeParseExportNamedSpecifiers(n){if(this.match(5)){n.specifiers||(n.specifiers=[]);let e=n.exportKind==="type";return n.specifiers.push(...this.parseExportSpecifiers(e)),n.source=null,n.declaration=null,this.hasPlugin("importAssertions")&&(n.assertions=[]),!0}return!1}maybeParseExportDeclaration(n){return this.shouldParseExportDeclaration()?(n.specifiers=[],n.source=null,this.hasPlugin("importAssertions")&&(n.assertions=[]),n.declaration=this.parseExportDeclaration(n),!0):!1}isAsyncFunction(){if(!this.isContextual(95))return!1;let n=this.nextTokenInLineStart();return this.isUnparsedContextual(n,"function")}parseExportDefaultExpression(){let n=this.startNode();if(this.match(68))return this.next(),this.parseFunction(n,5);if(this.isAsyncFunction())return this.next(),this.next(),this.parseFunction(n,13);if(this.match(80))return this.parseClass(n,!0,!0);if(this.match(26))return this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(b.DecoratorBeforeExport,this.state.startLoc),this.parseClass(this.maybeTakeDecorators(this.parseDecorators(!1),this.startNode()),!0,!0);if(this.match(75)||this.match(74)||this.isLet())throw this.raise(b.UnsupportedDefaultExport,this.state.startLoc);let e=this.parseMaybeAssignAllowIn();return this.semicolon(),e}parseExportDeclaration(n){return this.match(80)?this.parseClass(this.startNode(),!0,!1):this.parseStatementListItem()}isExportDefaultSpecifier(){let{type:n}=this.state;if(B(n)){if(n===95&&!this.state.containsEsc||n===100)return!1;if((n===130||n===129)&&!this.state.containsEsc){let{type:s}=this.lookahead();if(B(s)&&s!==98||s===5)return this.expectOnePlugin(["flow","typescript"]),!1}}else if(!this.match(65))return!1;let e=this.nextTokenStart(),t=this.isUnparsedContextual(e,"from");if(this.input.charCodeAt(e)===44||B(this.state.type)&&t)return!0;if(this.match(65)&&t){let s=this.input.charCodeAt(this.nextTokenStartSince(e+4));return s===34||s===39}return!1}parseExportFrom(n,e){this.eatContextual(98)?(n.source=this.parseImportSource(),this.checkExport(n),this.maybeParseImportAttributes(n),this.checkJSONModuleImport(n)):e&&this.unexpected(),this.semicolon()}shouldParseExportDeclaration(){let{type:n}=this.state;return n===26&&(this.expectOnePlugin(["decorators","decorators-legacy"]),this.hasPlugin("decorators"))?(this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(b.DecoratorBeforeExport,this.state.startLoc),!0):n===74||n===75||n===68||n===80||this.isLet()||this.isAsyncFunction()}checkExport(n,e,t,s){if(e){var i;if(t){if(this.checkDuplicateExports(n,"default"),this.hasPlugin("exportDefaultFrom")){var a;let o=n.declaration;o.type==="Identifier"&&o.name==="from"&&o.end-o.start===4&&!((a=o.extra)!=null&&a.parenthesized)&&this.raise(b.ExportDefaultFromAsIdentifier,o)}}else if((i=n.specifiers)!=null&&i.length)for(let o of n.specifiers){let{exported:l}=o,c=l.type==="Identifier"?l.name:l.value;if(this.checkDuplicateExports(o,c),!s&&o.local){let{local:p}=o;p.type!=="Identifier"?this.raise(b.ExportBindingIsString,o,{localName:p.value,exportName:c}):(this.checkReservedWord(p.name,p.loc.start,!0,!1),this.scope.checkLocalExport(p))}}else if(n.declaration){if(n.declaration.type==="FunctionDeclaration"||n.declaration.type==="ClassDeclaration"){let o=n.declaration.id;if(!o)throw new Error("Assertion failure");this.checkDuplicateExports(n,o.name)}else if(n.declaration.type==="VariableDeclaration")for(let o of n.declaration.declarations)this.checkDeclaration(o.id)}}}checkDeclaration(n){if(n.type==="Identifier")this.checkDuplicateExports(n,n.name);else if(n.type==="ObjectPattern")for(let e of n.properties)this.checkDeclaration(e);else if(n.type==="ArrayPattern")for(let e of n.elements)e&&this.checkDeclaration(e);else n.type==="ObjectProperty"?this.checkDeclaration(n.value):n.type==="RestElement"?this.checkDeclaration(n.argument):n.type==="AssignmentPattern"&&this.checkDeclaration(n.left)}checkDuplicateExports(n,e){this.exportedIdentifiers.has(e)&&(e==="default"?this.raise(b.DuplicateDefaultExport,n):this.raise(b.DuplicateExport,n,{exportName:e})),this.exportedIdentifiers.add(e)}parseExportSpecifiers(n){let e=[],t=!0;for(this.expect(5);!this.eat(8);){if(t)t=!1;else if(this.expect(12),this.eat(8))break;let s=this.isContextual(130),i=this.match(133),a=this.startNode();a.local=this.parseModuleExportName(),e.push(this.parseExportSpecifier(a,i,n,s))}return e}parseExportSpecifier(n,e,t,s){return this.eatContextual(93)?n.exported=this.parseModuleExportName():e?n.exported=ll(n.local):n.exported||(n.exported=Be(n.local)),this.finishNode(n,"ExportSpecifier")}parseModuleExportName(){if(this.match(133)){let n=this.parseStringLiteral(this.state.value),e=n.value.match(Ml);return e&&this.raise(b.ModuleExportNameHasLoneSurrogate,n,{surrogateCharCode:e[0].charCodeAt(0)}),n}return this.parseIdentifier(!0)}isJSONModuleImport(n){return n.assertions!=null?n.assertions.some(({key:e,value:t})=>t.value==="json"&&(e.type==="Identifier"?e.name==="type":e.value==="type")):!1}checkImportReflection(n){let{specifiers:e}=n,t=e.length===1?e[0].type:null;if(n.phase==="source")t!=="ImportDefaultSpecifier"&&this.raise(b.SourcePhaseImportRequiresDefault,e[0].loc.start);else if(n.phase==="defer")t!=="ImportNamespaceSpecifier"&&this.raise(b.DeferImportRequiresNamespace,e[0].loc.start);else if(n.module){var s;t!=="ImportDefaultSpecifier"&&this.raise(b.ImportReflectionNotBinding,e[0].loc.start),((s=n.assertions)==null?void 0:s.length)>0&&this.raise(b.ImportReflectionHasAssertion,e[0].loc.start)}}checkJSONModuleImport(n){if(this.isJSONModuleImport(n)&&n.type!=="ExportAllDeclaration"){let{specifiers:e}=n;if(e!=null){let t=e.find(s=>{let i;if(s.type==="ExportSpecifier"?i=s.local:s.type==="ImportSpecifier"&&(i=s.imported),i!==void 0)return i.type==="Identifier"?i.name!=="default":i.value!=="default"});t!==void 0&&this.raise(b.ImportJSONBindingNotDefault,t.loc.start)}}}isPotentialImportPhase(n){return n?!1:this.isContextual(105)||this.isContextual(97)||this.isContextual(127)}applyImportPhase(n,e,t,s){e||(t==="module"?(this.expectPlugin("importReflection",s),n.module=!0):this.hasPlugin("importReflection")&&(n.module=!1),t==="source"?(this.expectPlugin("sourcePhaseImports",s),n.phase="source"):t==="defer"?(this.expectPlugin("deferredImportEvaluation",s),n.phase="defer"):this.hasPlugin("sourcePhaseImports")&&(n.phase=null))}parseMaybeImportPhase(n,e){if(!this.isPotentialImportPhase(e))return this.applyImportPhase(n,e,null),null;let t=this.parseIdentifier(!0),{type:s}=this.state;return(xe(s)?s!==98||this.lookaheadCharCode()===102:s!==12)?(this.resetPreviousIdentifierLeadingComments(t),this.applyImportPhase(n,e,t.name,t.loc.start),null):(this.applyImportPhase(n,e,null),t)}isPrecedingIdImportPhase(n){let{type:e}=this.state;return B(e)?e!==98||this.lookaheadCharCode()===102:e!==12}parseImport(n){return this.match(133)?this.parseImportSourceAndAttributes(n):this.parseImportSpecifiersAndAfter(n,this.parseMaybeImportPhase(n,!1))}parseImportSpecifiersAndAfter(n,e){n.specifiers=[];let s=!this.maybeParseDefaultImportSpecifier(n,e)||this.eat(12),i=s&&this.maybeParseStarImportSpecifier(n);return s&&!i&&this.parseNamedImportSpecifiers(n),this.expectContextual(98),this.parseImportSourceAndAttributes(n)}parseImportSourceAndAttributes(n){var e;return(e=n.specifiers)!=null||(n.specifiers=[]),n.source=this.parseImportSource(),this.maybeParseImportAttributes(n),this.checkImportReflection(n),this.checkJSONModuleImport(n),this.semicolon(),this.finishNode(n,"ImportDeclaration")}parseImportSource(){return this.match(133)||this.unexpected(),this.parseExprAtom()}parseImportSpecifierLocal(n,e,t){e.local=this.parseIdentifier(),n.specifiers.push(this.finishImportSpecifier(e,t))}finishImportSpecifier(n,e,t=8201){return this.checkLVal(n.local,{in:{type:e},binding:t}),this.finishNode(n,e)}parseImportAttributes(){this.expect(5);let n=[],e=new Set;do{if(this.match(8))break;let t=this.startNode(),s=this.state.value;if(e.has(s)&&this.raise(b.ModuleAttributesWithDuplicateKeys,this.state.startLoc,{key:s}),e.add(s),this.match(133)?t.key=this.parseStringLiteral(s):t.key=this.parseIdentifier(!0),this.expect(14),!this.match(133))throw this.raise(b.ModuleAttributeInvalidValue,this.state.startLoc);t.value=this.parseStringLiteral(this.state.value),n.push(this.finishNode(t,"ImportAttribute"))}while(this.eat(12));return this.expect(8),n}parseModuleAttributes(){let n=[],e=new Set;do{let t=this.startNode();if(t.key=this.parseIdentifier(!0),t.key.name!=="type"&&this.raise(b.ModuleAttributeDifferentFromType,t.key),e.has(t.key.name)&&this.raise(b.ModuleAttributesWithDuplicateKeys,t.key,{key:t.key.name}),e.add(t.key.name),this.expect(14),!this.match(133))throw this.raise(b.ModuleAttributeInvalidValue,this.state.startLoc);t.value=this.parseStringLiteral(this.state.value),n.push(this.finishNode(t,"ImportAttribute"))}while(this.eat(12));return n}maybeParseImportAttributes(n){let e,t=!1;if(this.match(76)){if(this.hasPrecedingLineBreak()&&this.lookaheadCharCode()===40)return;this.next(),this.hasPlugin("moduleAttributes")?e=this.parseModuleAttributes():(this.expectImportAttributesPlugin(),e=this.parseImportAttributes()),t=!0}else if(this.isContextual(94)&&!this.hasPrecedingLineBreak())this.hasPlugin("importAttributes")?(this.getPluginOption("importAttributes","deprecatedAssertSyntax")!==!0&&this.raise(b.ImportAttributesUseAssert,this.state.startLoc),this.addExtra(n,"deprecatedAssertSyntax",!0)):this.expectOnePlugin(["importAttributes","importAssertions"]),this.next(),e=this.parseImportAttributes();else if(this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions"))e=[];else if(this.hasPlugin("moduleAttributes"))e=[];else return;!t&&this.hasPlugin("importAssertions")?n.assertions=e:n.attributes=e}maybeParseDefaultImportSpecifier(n,e){if(e){let t=this.startNodeAtNode(e);return t.local=e,n.specifiers.push(this.finishImportSpecifier(t,"ImportDefaultSpecifier")),!0}else if(xe(this.state.type))return this.parseImportSpecifierLocal(n,this.startNode(),"ImportDefaultSpecifier"),!0;return!1}maybeParseStarImportSpecifier(n){if(this.match(55)){let e=this.startNode();return this.next(),this.expectContextual(93),this.parseImportSpecifierLocal(n,e,"ImportNamespaceSpecifier"),!0}return!1}parseNamedImportSpecifiers(n){let e=!0;for(this.expect(5);!this.eat(8);){if(e)e=!1;else{if(this.eat(14))throw this.raise(b.DestructureNamedImport,this.state.startLoc);if(this.expect(12),this.eat(8))break}let t=this.startNode(),s=this.match(133),i=this.isContextual(130);t.imported=this.parseModuleExportName();let a=this.parseImportSpecifier(t,s,n.importKind==="type"||n.importKind==="typeof",i,void 0);n.specifiers.push(a)}}parseImportSpecifier(n,e,t,s,i){if(this.eatContextual(93))n.local=this.parseIdentifier();else{let{imported:a}=n;if(e)throw this.raise(b.ImportBindingIsString,n,{importName:a.value});this.checkReservedWord(a.name,n.loc.start,!0,!0),n.local||(n.local=Be(a))}return this.finishImportSpecifier(n,"ImportSpecifier",i)}isThisParam(n){return n.type==="Identifier"&&n.name==="this"}},Pn=class extends Os{constructor(n,e){n=Nl(n),super(n,e),this.options=n,this.initializeScopes(),this.plugins=Ol(this.options.plugins),this.filename=n.sourceFilename}getScopeHandler(){return jt}parse(){this.enterInitialScopes();let n=this.startNode(),e=this.startNode();return this.nextToken(),n.errors=null,this.parseTopLevel(n,e),n.errors=this.state.errors,n.comments.length=this.state.commentsLen,n}};function Ol(r){let n=new Map;for(let e of r){let[t,s]=Array.isArray(e)?e:[e,{}];n.has(t)||n.set(t,s||{})}return n}function Fl(r,n){var e;if(((e=n)==null?void 0:e.sourceType)==="unambiguous"){n=Object.assign({},n);try{n.sourceType="module";let t=Ut(n,r),s=t.parse();if(t.sawUnambiguousESM)return s;if(t.ambiguousScriptDifferentAst)try{return n.sourceType="script",Ut(n,r).parse()}catch{}else s.program.sourceType="script";return s}catch(t){try{return n.sourceType="script",Ut(n,r).parse()}catch{}throw t}}else return Ut(n,r).parse()}function Ul(r,n){let e=Ut(n,r);return e.options.strictMode&&(e.state.strict=!0),e.getExpression()}function _l(r){let n={};for(let e of Object.keys(r))n[e]=Fe(r[e]);return n}var Rl=_l(Do);function Ut(r,n){let e=Pn;return r!=null&&r.plugins&&(Al(r.plugins),e=Bl(r.plugins)),new e(r,n)}var ii={};function Bl(r){let n=kl.filter(s=>Y(r,s)),e=n.join("/"),t=ii[e];if(!t){t=Pn;for(let s of n)t=Ti[s](t);ii[e]=t}return t}zt.parse=Fl;zt.parseExpression=Ul;zt.tokTypes=Rl});import{Command as au}from"commander";import{readFileSync as Lp}from"fs";import st from"node:path";import{Command as Op}from"commander";import{defu as Fp}from"defu";import oe from"kleur";import sn from"lodash";import It from"prompts";var At=[{name:"Accordion",value:"accordion",instructions:["Remember to add the accordion animations to your tailwind.config.js"],files:[{fileName:"Accordion/Accordion.vue",dirPath:"components/UI",fileContent:`<template>
8
+ `):s=String.fromCharCode(t),++this.state.curLine,this.state.lineStart=this.state.pos,s}jsxReadString(e){let t="",s=++this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(b.UnterminatedString,this.state.startLoc);let i=this.input.charCodeAt(this.state.pos);if(i===e)break;i===38?(t+=this.input.slice(s,this.state.pos),t+=this.jsxReadEntity(),s=this.state.pos):Rt(i)?(t+=this.input.slice(s,this.state.pos),t+=this.jsxReadNewLine(!1),s=this.state.pos):++this.state.pos}t+=this.input.slice(s,this.state.pos++),this.finishToken(133,t)}jsxReadEntity(){let e=++this.state.pos;if(this.codePointAtPos(this.state.pos)===35){++this.state.pos;let t=10;this.codePointAtPos(this.state.pos)===120&&(t=16,++this.state.pos);let s=this.readInt(t,void 0,!1,"bail");if(s!==null&&this.codePointAtPos(this.state.pos)===59)return++this.state.pos,String.fromCodePoint(s)}else{let t=0,s=!1;for(;t++<10&&this.state.pos<this.length&&!(s=this.codePointAtPos(this.state.pos)==59);)++this.state.pos;if(s){let i=this.input.slice(e,this.state.pos),a=ml[i];if(++this.state.pos,a)return a}}return this.state.pos=e,"&"}jsxReadWord(){let e,t=this.state.pos;do e=this.input.charCodeAt(++this.state.pos);while(pt(e)||e===45);this.finishToken(140,this.input.slice(t,this.state.pos))}jsxParseIdentifier(){let e=this.startNode();return this.match(140)?e.name=this.state.value:Vs(this.state.type)?e.name=He(this.state.type):this.unexpected(),this.next(),this.finishNode(e,"JSXIdentifier")}jsxParseNamespacedName(){let e=this.state.startLoc,t=this.jsxParseIdentifier();if(!this.eat(14))return t;let s=this.startNodeAt(e);return s.namespace=t,s.name=this.jsxParseIdentifier(),this.finishNode(s,"JSXNamespacedName")}jsxParseElementName(){let e=this.state.startLoc,t=this.jsxParseNamespacedName();if(t.type==="JSXNamespacedName")return t;for(;this.eat(16);){let s=this.startNodeAt(e);s.object=t,s.property=this.jsxParseIdentifier(),t=this.finishNode(s,"JSXMemberExpression")}return t}jsxParseAttributeValue(){let e;switch(this.state.type){case 5:return e=this.startNode(),this.setContext(V.brace),this.next(),e=this.jsxParseExpressionContainer(e,V.j_oTag),e.expression.type==="JSXEmptyExpression"&&this.raise(Xe.AttributeIsEmpty,e),e;case 142:case 133:return this.parseExprAtom();default:throw this.raise(Xe.UnsupportedJsxValue,this.state.startLoc)}}jsxParseEmptyExpression(){let e=this.startNodeAt(this.state.lastTokEndLoc);return this.finishNodeAt(e,"JSXEmptyExpression",this.state.startLoc)}jsxParseSpreadChild(e){return this.next(),e.expression=this.parseExpression(),this.setContext(V.j_expr),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(e,"JSXSpreadChild")}jsxParseExpressionContainer(e,t){if(this.match(8))e.expression=this.jsxParseEmptyExpression();else{let s=this.parseExpression();e.expression=s}return this.setContext(t),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(e,"JSXExpressionContainer")}jsxParseAttribute(){let e=this.startNode();return this.match(5)?(this.setContext(V.brace),this.next(),this.expect(21),e.argument=this.parseMaybeAssignAllowIn(),this.setContext(V.j_oTag),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(e,"JSXSpreadAttribute")):(e.name=this.jsxParseNamespacedName(),e.value=this.eat(29)?this.jsxParseAttributeValue():null,this.finishNode(e,"JSXAttribute"))}jsxParseOpeningElementAt(e){let t=this.startNodeAt(e);return this.eat(143)?this.finishNode(t,"JSXOpeningFragment"):(t.name=this.jsxParseElementName(),this.jsxParseOpeningElementAfterName(t))}jsxParseOpeningElementAfterName(e){let t=[];for(;!this.match(56)&&!this.match(143);)t.push(this.jsxParseAttribute());return e.attributes=t,e.selfClosing=this.eat(56),this.expect(143),this.finishNode(e,"JSXOpeningElement")}jsxParseClosingElementAt(e){let t=this.startNodeAt(e);return this.eat(143)?this.finishNode(t,"JSXClosingFragment"):(t.name=this.jsxParseElementName(),this.expect(143),this.finishNode(t,"JSXClosingElement"))}jsxParseElementAt(e){let t=this.startNodeAt(e),s=[],i=this.jsxParseOpeningElementAt(e),a=null;if(!i.selfClosing){e:for(;;)switch(this.state.type){case 142:if(e=this.state.startLoc,this.next(),this.eat(56)){a=this.jsxParseClosingElementAt(e);break e}s.push(this.jsxParseElementAt(e));break;case 141:s.push(this.parseExprAtom());break;case 5:{let o=this.startNode();this.setContext(V.brace),this.next(),this.match(21)?s.push(this.jsxParseSpreadChild(o)):s.push(this.jsxParseExpressionContainer(o,V.j_expr));break}default:this.unexpected()}$e(i)&&!$e(a)&&a!==null?this.raise(Xe.MissingClosingTagFragment,a):!$e(i)&&$e(a)?this.raise(Xe.MissingClosingTagElement,a,{openingTagName:ct(i.name)}):!$e(i)&&!$e(a)&&ct(a.name)!==ct(i.name)&&this.raise(Xe.MissingClosingTagElement,a,{openingTagName:ct(i.name)})}if($e(i)?(t.openingFragment=i,t.closingFragment=a):(t.openingElement=i,t.closingElement=a),t.children=s,this.match(47))throw this.raise(Xe.UnwrappedAdjacentJSXElements,this.state.startLoc);return $e(i)?this.finishNode(t,"JSXFragment"):this.finishNode(t,"JSXElement")}jsxParseElement(){let e=this.state.startLoc;return this.next(),this.jsxParseElementAt(e)}setContext(e){let{context:t}=this.state;t[t.length-1]=e}parseExprAtom(e){return this.match(141)?this.parseLiteral(this.state.value,"JSXText"):this.match(142)?this.jsxParseElement():this.match(47)&&this.input.charCodeAt(this.state.pos)!==33?(this.replaceToken(142),this.jsxParseElement()):super.parseExprAtom(e)}skipSpace(){this.curContext().preserveSpace||super.skipSpace()}getTokenFromCode(e){let t=this.curContext();if(t===V.j_expr){this.jsxReadToken();return}if(t===V.j_oTag||t===V.j_cTag){if(_e(e)){this.jsxReadWord();return}if(e===62){++this.state.pos,this.finishToken(143);return}if((e===34||e===39)&&t===V.j_oTag){this.jsxReadString(e);return}}if(e===60&&this.state.canStartJSXElement&&this.input.charCodeAt(this.state.pos+1)!==33){++this.state.pos,this.finishToken(142);return}super.getTokenFromCode(e)}updateContext(e){let{context:t,type:s}=this.state;if(s===56&&e===142)t.splice(-2,2,V.j_cTag),this.state.canStartJSXElement=!1;else if(s===142)t.push(V.j_oTag);else if(s===143){let i=t[t.length-1];i===V.j_oTag&&e===56||i===V.j_cTag?(t.pop(),this.state.canStartJSXElement=t[t.length-1]===V.j_expr):(this.setContext(V.j_expr),this.state.canStartJSXElement=!0)}else this.state.canStartJSXElement=Lo(s)}},Ns=class extends Bt{constructor(...n){super(...n),this.tsNames=new Map}},Ds=class extends jt{constructor(...n){super(...n),this.importsStack=[]}createScope(n){return this.importsStack.push(new Set),new Ns(n)}enter(n){n==256&&this.importsStack.push(new Set),super.enter(n)}exit(){let n=super.exit();return n==256&&this.importsStack.pop(),n}hasImport(n,e){let t=this.importsStack.length;if(this.importsStack[t-1].has(n))return!0;if(!e&&t>1){for(let s=0;s<t-1;s++)if(this.importsStack[s].has(n))return!0}return!1}declareName(n,e,t){if(e&4096){this.hasImport(n,!0)&&this.parser.raise(b.VarRedeclaration,t,{identifierName:n}),this.importsStack[this.importsStack.length-1].add(n);return}let s=this.currentScope(),i=s.tsNames.get(n)||0;if(e&1024){this.maybeExportDefined(s,n),s.tsNames.set(n,i|16);return}super.declareName(n,e,t),e&2&&(e&1||(this.checkRedeclarationInScope(s,n,e,t),this.maybeExportDefined(s,n)),i=i|1),e&256&&(i=i|2),e&512&&(i=i|4),e&128&&(i=i|8),i&&s.tsNames.set(n,i)}isRedeclaredInScope(n,e,t){let s=n.tsNames.get(e);if((s&2)>0){if(t&256){let i=!!(t&512),a=(s&4)>0;return i!==a}return!0}return t&128&&(s&8)>0?n.names.get(e)&2?!!(t&1):!1:t&2&&(s&1)>0?!0:super.isRedeclaredInScope(n,e,t)}checkLocalExport(n){let{name:e}=n;if(this.hasImport(e))return;let t=this.scopeStack.length;for(let s=t-1;s>=0;s--){let a=this.scopeStack[s].tsNames.get(e);if((a&1)>0||(a&16)>0)return}super.checkLocalExport(n)}},gl=(r,n)=>Object.hasOwnProperty.call(r,n)&&r[n],vi=r=>r.type==="ParenthesizedExpression"?vi(r.expression):r,Ms=class extends ks{toAssignable(n,e=!1){var t,s;let i;switch((n.type==="ParenthesizedExpression"||(t=n.extra)!=null&&t.parenthesized)&&(i=vi(n),e?i.type==="Identifier"?this.expressionScope.recordArrowParameterBindingError(b.InvalidParenthesizedAssignment,n):i.type!=="MemberExpression"&&!this.isOptionalMemberExpression(i)&&this.raise(b.InvalidParenthesizedAssignment,n):this.raise(b.InvalidParenthesizedAssignment,n)),n.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":break;case"ObjectExpression":n.type="ObjectPattern";for(let o=0,l=n.properties.length,c=l-1;o<l;o++){var a;let p=n.properties[o],u=o===c;this.toAssignableObjectExpressionProp(p,u,e),u&&p.type==="RestElement"&&(a=n.extra)!=null&&a.trailingCommaLoc&&this.raise(b.RestTrailingComma,n.extra.trailingCommaLoc)}break;case"ObjectProperty":{let{key:o,value:l}=n;this.isPrivateName(o)&&this.classScope.usePrivateName(this.getPrivateNameSV(o),o.loc.start),this.toAssignable(l,e);break}case"SpreadElement":throw new Error("Internal @babel/parser error (this is a bug, please report it). SpreadElement should be converted by .toAssignable's caller.");case"ArrayExpression":n.type="ArrayPattern",this.toAssignableList(n.elements,(s=n.extra)==null?void 0:s.trailingCommaLoc,e);break;case"AssignmentExpression":n.operator!=="="&&this.raise(b.MissingEqInAssignment,n.left.loc.end),n.type="AssignmentPattern",delete n.operator,this.toAssignable(n.left,e);break;case"ParenthesizedExpression":this.toAssignable(i,e);break}}toAssignableObjectExpressionProp(n,e,t){if(n.type==="ObjectMethod")this.raise(n.kind==="get"||n.kind==="set"?b.PatternHasAccessor:b.PatternHasMethod,n.key);else if(n.type==="SpreadElement"){n.type="RestElement";let s=n.argument;this.checkToRestConversion(s,!1),this.toAssignable(s,t),e||this.raise(b.RestTrailingComma,n)}else this.toAssignable(n,t)}toAssignableList(n,e,t){let s=n.length-1;for(let i=0;i<=s;i++){let a=n[i];if(a){if(a.type==="SpreadElement"){a.type="RestElement";let o=a.argument;this.checkToRestConversion(o,!0),this.toAssignable(o,t)}else this.toAssignable(a,t);a.type==="RestElement"&&(i<s?this.raise(b.RestTrailingComma,a):e&&this.raise(b.RestTrailingComma,e))}}}isAssignable(n,e){switch(n.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":return!0;case"ObjectExpression":{let t=n.properties.length-1;return n.properties.every((s,i)=>s.type!=="ObjectMethod"&&(i===t||s.type!=="SpreadElement")&&this.isAssignable(s))}case"ObjectProperty":return this.isAssignable(n.value);case"SpreadElement":return this.isAssignable(n.argument);case"ArrayExpression":return n.elements.every(t=>t===null||this.isAssignable(t));case"AssignmentExpression":return n.operator==="=";case"ParenthesizedExpression":return this.isAssignable(n.expression);case"MemberExpression":case"OptionalMemberExpression":return!e;default:return!1}}toReferencedList(n,e){return n}toReferencedListDeep(n,e){this.toReferencedList(n,e);for(let t of n)t?.type==="ArrayExpression"&&this.toReferencedListDeep(t.elements)}parseSpread(n){let e=this.startNode();return this.next(),e.argument=this.parseMaybeAssignAllowIn(n,void 0),this.finishNode(e,"SpreadElement")}parseRestBinding(){let n=this.startNode();return this.next(),n.argument=this.parseBindingAtom(),this.finishNode(n,"RestElement")}parseBindingAtom(){switch(this.state.type){case 0:{let n=this.startNode();return this.next(),n.elements=this.parseBindingList(3,93,1),this.finishNode(n,"ArrayPattern")}case 5:return this.parseObjectLike(8,!0)}return this.parseIdentifier()}parseBindingList(n,e,t){let s=t&1,i=[],a=!0;for(;!this.eat(n);)if(a?a=!1:this.expect(12),s&&this.match(12))i.push(null);else{if(this.eat(n))break;if(this.match(21)){if(i.push(this.parseAssignableListItemTypes(this.parseRestBinding(),t)),!this.checkCommaAfterRest(e)){this.expect(n);break}}else{let o=[];for(this.match(26)&&this.hasPlugin("decorators")&&this.raise(b.UnsupportedParameterDecorator,this.state.startLoc);this.match(26);)o.push(this.parseDecorator());i.push(this.parseAssignableListItem(t,o))}}return i}parseBindingRestProperty(n){return this.next(),n.argument=this.parseIdentifier(),this.checkCommaAfterRest(125),this.finishNode(n,"RestElement")}parseBindingProperty(){let n=this.startNode(),{type:e,startLoc:t}=this.state;return e===21?this.parseBindingRestProperty(n):(e===138?(this.expectPlugin("destructuringPrivate",t),this.classScope.usePrivateName(this.state.value,t),n.key=this.parsePrivateName()):this.parsePropertyName(n),n.method=!1,this.parseObjPropValue(n,t,!1,!1,!0,!1))}parseAssignableListItem(n,e){let t=this.parseMaybeDefault();this.parseAssignableListItemTypes(t,n);let s=this.parseMaybeDefault(t.loc.start,t);return e.length&&(t.decorators=e),s}parseAssignableListItemTypes(n,e){return n}parseMaybeDefault(n,e){var t,s;if((t=n)!=null||(n=this.state.startLoc),e=(s=e)!=null?s:this.parseBindingAtom(),!this.eat(29))return e;let i=this.startNodeAt(n);return i.left=e,i.right=this.parseMaybeAssignAllowIn(),this.finishNode(i,"AssignmentPattern")}isValidLVal(n,e,t){return gl({AssignmentPattern:"left",RestElement:"argument",ObjectProperty:"value",ParenthesizedExpression:"expression",ArrayPattern:"elements",ObjectPattern:"properties"},n)}isOptionalMemberExpression(n){return n.type==="OptionalMemberExpression"}checkLVal(n,{in:e,binding:t=64,checkClashes:s=!1,strictModeChanged:i=!1,hasParenthesizedAncestor:a=!1}){var o;let l=n.type;if(this.isObjectMethod(n))return;let c=this.isOptionalMemberExpression(n);if(c||l==="MemberExpression"){c&&(this.expectPlugin("optionalChainingAssign",n.loc.start),e.type!=="AssignmentExpression"&&this.raise(b.InvalidLhsOptionalChaining,n,{ancestor:e})),t!==64&&this.raise(b.InvalidPropertyBindingPattern,n);return}if(l==="Identifier"){this.checkIdentifier(n,t,i);let{name:d}=n;s&&(s.has(d)?this.raise(b.ParamDupe,n):s.add(d));return}let p=this.isValidLVal(l,!(a||(o=n.extra)!=null&&o.parenthesized)&&e.type==="AssignmentExpression",t);if(p===!0)return;if(p===!1){let d=t===64?b.InvalidLhs:b.InvalidLhsBinding;this.raise(d,n,{ancestor:e});return}let[u,f]=Array.isArray(p)?p:[p,l==="ParenthesizedExpression"],m=l==="ArrayPattern"||l==="ObjectPattern"?{type:l}:e;for(let d of[].concat(n[u]))d&&this.checkLVal(d,{in:m,binding:t,checkClashes:s,strictModeChanged:i,hasParenthesizedAncestor:f})}checkIdentifier(n,e,t=!1){this.state.strict&&(t?fi(n.name,this.inModule):di(n.name))&&(e===64?this.raise(b.StrictEvalArguments,n,{referenceName:n.name}):this.raise(b.StrictEvalArgumentsBinding,n,{bindingName:n.name})),e&8192&&n.name==="let"&&this.raise(b.LetInLexicalBinding,n),e&64||this.declareNameFromIdentifier(n,e)}declareNameFromIdentifier(n,e){this.scope.declareName(n.name,e,n.loc.start)}checkToRestConversion(n,e){switch(n.type){case"ParenthesizedExpression":this.checkToRestConversion(n.expression,e);break;case"Identifier":case"MemberExpression":break;case"ArrayExpression":case"ObjectExpression":if(e)break;default:this.raise(b.InvalidRestAssignmentPattern,n)}}checkCommaAfterRest(n){return this.match(12)?(this.raise(this.lookaheadCharCode()===n?b.RestTrailingComma:b.ElementAfterRest,this.state.startLoc),!0):!1}},yl=(r,n)=>Object.hasOwnProperty.call(r,n)&&r[n];function vl(r){if(r==null)throw new Error(`Unexpected ${r} value.`);return r}function Zr(r){if(!r)throw new Error("Assert fail")}var k=Re`typescript`({AbstractMethodHasImplementation:({methodName:r})=>`Method '${r}' cannot have an implementation because it is marked abstract.`,AbstractPropertyHasInitializer:({propertyName:r})=>`Property '${r}' cannot have an initializer because it is marked abstract.`,AccesorCannotDeclareThisParameter:"'get' and 'set' accessors cannot declare 'this' parameters.",AccesorCannotHaveTypeParameters:"An accessor cannot have type parameters.",AccessorCannotBeOptional:"An 'accessor' property cannot be declared optional.",ClassMethodHasDeclare:"Class methods cannot have the 'declare' modifier.",ClassMethodHasReadonly:"Class methods cannot have the 'readonly' modifier.",ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference:"A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference.",ConstructorHasTypeParameters:"Type parameters cannot appear on a constructor declaration.",DeclareAccessor:({kind:r})=>`'declare' is not allowed in ${r}ters.`,DeclareClassFieldHasInitializer:"Initializers are not allowed in ambient contexts.",DeclareFunctionHasImplementation:"An implementation cannot be declared in ambient contexts.",DuplicateAccessibilityModifier:({modifier:r})=>"Accessibility modifier already seen.",DuplicateModifier:({modifier:r})=>`Duplicate modifier: '${r}'.`,EmptyHeritageClauseType:({token:r})=>`'${r}' list cannot be empty.`,EmptyTypeArguments:"Type argument list cannot be empty.",EmptyTypeParameters:"Type parameter list cannot be empty.",ExpectedAmbientAfterExportDeclare:"'export declare' must be followed by an ambient declaration.",ImportAliasHasImportType:"An import alias can not use 'import type'.",ImportReflectionHasImportType:"An `import module` declaration can not use `type` modifier",IncompatibleModifiers:({modifiers:r})=>`'${r[0]}' modifier cannot be used with '${r[1]}' modifier.`,IndexSignatureHasAbstract:"Index signatures cannot have the 'abstract' modifier.",IndexSignatureHasAccessibility:({modifier:r})=>`Index signatures cannot have an accessibility modifier ('${r}').`,IndexSignatureHasDeclare:"Index signatures cannot have the 'declare' modifier.",IndexSignatureHasOverride:"'override' modifier cannot appear on an index signature.",IndexSignatureHasStatic:"Index signatures cannot have the 'static' modifier.",InitializerNotAllowedInAmbientContext:"Initializers are not allowed in ambient contexts.",InvalidModifierOnTypeMember:({modifier:r})=>`'${r}' modifier cannot appear on a type member.`,InvalidModifierOnTypeParameter:({modifier:r})=>`'${r}' modifier cannot appear on a type parameter.`,InvalidModifierOnTypeParameterPositions:({modifier:r})=>`'${r}' modifier can only appear on a type parameter of a class, interface or type alias.`,InvalidModifiersOrder:({orderedModifiers:r})=>`'${r[0]}' modifier must precede '${r[1]}' modifier.`,InvalidPropertyAccessAfterInstantiationExpression:"Invalid property access after an instantiation expression. You can either wrap the instantiation expression in parentheses, or delete the type arguments.",InvalidTupleMemberLabel:"Tuple members must be labeled with a simple identifier.",MissingInterfaceName:"'interface' declarations must be followed by an identifier.",NonAbstractClassHasAbstractMethod:"Abstract methods can only appear within an abstract class.",NonClassMethodPropertyHasAbstractModifer:"'abstract' modifier can only appear on a class, method, or property declaration.",OptionalTypeBeforeRequired:"A required element cannot follow an optional element.",OverrideNotInSubClass:"This member cannot have an 'override' modifier because its containing class does not extend another class.",PatternIsOptional:"A binding pattern parameter cannot be optional in an implementation signature.",PrivateElementHasAbstract:"Private elements cannot have the 'abstract' modifier.",PrivateElementHasAccessibility:({modifier:r})=>`Private elements cannot have an accessibility modifier ('${r}').`,ReadonlyForMethodSignature:"'readonly' modifier can only appear on a property declaration or index signature.",ReservedArrowTypeParam:"This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma, as in `<T,>() => ...`.",ReservedTypeAssertion:"This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead.",SetAccesorCannotHaveOptionalParameter:"A 'set' accessor cannot have an optional parameter.",SetAccesorCannotHaveRestParameter:"A 'set' accessor cannot have rest parameter.",SetAccesorCannotHaveReturnType:"A 'set' accessor cannot have a return type annotation.",SingleTypeParameterWithoutTrailingComma:({typeParameterName:r})=>`Single type parameter ${r} should have a trailing comma. Example usage: <${r},>.`,StaticBlockCannotHaveModifier:"Static class blocks cannot have any modifier.",TupleOptionalAfterType:"A labeled tuple optional element must be declared using a question mark after the name and before the colon (`name?: type`), rather than after the type (`name: type?`).",TypeAnnotationAfterAssign:"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.",TypeImportCannotSpecifyDefaultAndNamed:"A type-only import can specify a default import or named bindings, but not both.",TypeModifierIsUsedInTypeExports:"The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement.",TypeModifierIsUsedInTypeImports:"The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement.",UnexpectedParameterModifier:"A parameter property is only allowed in a constructor implementation.",UnexpectedReadonly:"'readonly' type modifier is only permitted on array and tuple literal types.",UnexpectedTypeAnnotation:"Did not expect a type annotation here.",UnexpectedTypeCastInParameter:"Unexpected type cast in parameter position.",UnsupportedImportTypeArgument:"Argument in a type import must be a string literal.",UnsupportedParameterPropertyKind:"A parameter property may not be declared using a binding pattern.",UnsupportedSignatureParameterKind:({type:r})=>`Name in a signature must be an Identifier, ObjectPattern or ArrayPattern, instead got ${r}.`});function xl(r){switch(r){case"any":return"TSAnyKeyword";case"boolean":return"TSBooleanKeyword";case"bigint":return"TSBigIntKeyword";case"never":return"TSNeverKeyword";case"number":return"TSNumberKeyword";case"object":return"TSObjectKeyword";case"string":return"TSStringKeyword";case"symbol":return"TSSymbolKeyword";case"undefined":return"TSUndefinedKeyword";case"unknown":return"TSUnknownKeyword";default:return}}function ei(r){return r==="private"||r==="public"||r==="protected"}function Pl(r){return r==="in"||r==="out"}var Tl=r=>class extends r{constructor(...e){super(...e),this.tsParseInOutModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out"],disallowedModifiers:["const","public","private","protected","readonly","declare","abstract","override"],errorTemplate:k.InvalidModifierOnTypeParameter}),this.tsParseConstModifier=this.tsParseModifiers.bind(this,{allowedModifiers:["const"],disallowedModifiers:["in","out"],errorTemplate:k.InvalidModifierOnTypeParameterPositions}),this.tsParseInOutConstModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out","const"],disallowedModifiers:["public","private","protected","readonly","declare","abstract","override"],errorTemplate:k.InvalidModifierOnTypeParameter})}getScopeHandler(){return Ds}tsIsIdentifier(){return B(this.state.type)}tsTokenCanFollowModifier(){return(this.match(0)||this.match(5)||this.match(55)||this.match(21)||this.match(138)||this.isLiteralPropertyName())&&!this.hasPrecedingLineBreak()}tsNextTokenCanFollowModifier(){return this.next(),this.tsTokenCanFollowModifier()}tsParseModifier(e,t){if(!B(this.state.type)&&this.state.type!==58&&this.state.type!==75)return;let s=this.state.value;if(e.indexOf(s)!==-1){if(t&&this.tsIsStartOfStaticBlocks())return;if(this.tsTryParse(this.tsNextTokenCanFollowModifier.bind(this)))return s}}tsParseModifiers({allowedModifiers:e,disallowedModifiers:t,stopOnStartOfClassStaticBlock:s,errorTemplate:i=k.InvalidModifierOnTypeMember},a){let o=(c,p,u,f)=>{p===u&&a[f]&&this.raise(k.InvalidModifiersOrder,c,{orderedModifiers:[u,f]})},l=(c,p,u,f)=>{(a[u]&&p===f||a[f]&&p===u)&&this.raise(k.IncompatibleModifiers,c,{modifiers:[u,f]})};for(;;){let{startLoc:c}=this.state,p=this.tsParseModifier(e.concat(t??[]),s);if(!p)break;ei(p)?a.accessibility?this.raise(k.DuplicateAccessibilityModifier,c,{modifier:p}):(o(c,p,p,"override"),o(c,p,p,"static"),o(c,p,p,"readonly"),a.accessibility=p):Pl(p)?(a[p]&&this.raise(k.DuplicateModifier,c,{modifier:p}),a[p]=!0,o(c,p,"in","out")):(Object.hasOwnProperty.call(a,p)?this.raise(k.DuplicateModifier,c,{modifier:p}):(o(c,p,"static","readonly"),o(c,p,"static","override"),o(c,p,"override","readonly"),o(c,p,"abstract","override"),l(c,p,"declare","override"),l(c,p,"static","abstract")),a[p]=!0),t!=null&&t.includes(p)&&this.raise(i,c,{modifier:p})}}tsIsListTerminator(e){switch(e){case"EnumMembers":case"TypeMembers":return this.match(8);case"HeritageClauseElement":return this.match(5);case"TupleElementTypes":return this.match(3);case"TypeParametersOrArguments":return this.match(48)}}tsParseList(e,t){let s=[];for(;!this.tsIsListTerminator(e);)s.push(t());return s}tsParseDelimitedList(e,t,s){return vl(this.tsParseDelimitedListWorker(e,t,!0,s))}tsParseDelimitedListWorker(e,t,s,i){let a=[],o=-1;for(;!this.tsIsListTerminator(e);){o=-1;let l=t();if(l==null)return;if(a.push(l),this.eat(12)){o=this.state.lastTokStartLoc.index;continue}if(this.tsIsListTerminator(e))break;s&&this.expect(12);return}return i&&(i.value=o),a}tsParseBracketedList(e,t,s,i,a){i||(s?this.expect(0):this.expect(47));let o=this.tsParseDelimitedList(e,t,a);return s?this.expect(3):this.expect(48),o}tsParseImportType(){let e=this.startNode();return this.expect(83),this.expect(10),this.match(133)||this.raise(k.UnsupportedImportTypeArgument,this.state.startLoc),e.argument=super.parseExprAtom(),this.expect(11),this.eat(16)&&(e.qualifier=this.tsParseEntityName()),this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSImportType")}tsParseEntityName(e=!0){let t=this.parseIdentifier(e);for(;this.eat(16);){let s=this.startNodeAtNode(t);s.left=t,s.right=this.parseIdentifier(e),t=this.finishNode(s,"TSQualifiedName")}return t}tsParseTypeReference(){let e=this.startNode();return e.typeName=this.tsParseEntityName(),!this.hasPrecedingLineBreak()&&this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSTypeReference")}tsParseThisTypePredicate(e){this.next();let t=this.startNodeAtNode(e);return t.parameterName=e,t.typeAnnotation=this.tsParseTypeAnnotation(!1),t.asserts=!1,this.finishNode(t,"TSTypePredicate")}tsParseThisTypeNode(){let e=this.startNode();return this.next(),this.finishNode(e,"TSThisType")}tsParseTypeQuery(){let e=this.startNode();return this.expect(87),this.match(83)?e.exprName=this.tsParseImportType():e.exprName=this.tsParseEntityName(),!this.hasPrecedingLineBreak()&&this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSTypeQuery")}tsParseTypeParameter(e){let t=this.startNode();return e(t),t.name=this.tsParseTypeParameterName(),t.constraint=this.tsEatThenParseType(81),t.default=this.tsEatThenParseType(29),this.finishNode(t,"TSTypeParameter")}tsTryParseTypeParameters(e){if(this.match(47))return this.tsParseTypeParameters(e)}tsParseTypeParameters(e){let t=this.startNode();this.match(47)||this.match(142)?this.next():this.unexpected();let s={value:-1};return t.params=this.tsParseBracketedList("TypeParametersOrArguments",this.tsParseTypeParameter.bind(this,e),!1,!0,s),t.params.length===0&&this.raise(k.EmptyTypeParameters,t),s.value!==-1&&this.addExtra(t,"trailingComma",s.value),this.finishNode(t,"TSTypeParameterDeclaration")}tsFillSignature(e,t){let s=e===19,i="parameters",a="typeAnnotation";t.typeParameters=this.tsTryParseTypeParameters(this.tsParseConstModifier),this.expect(10),t[i]=this.tsParseBindingListForSignature(),s?t[a]=this.tsParseTypeOrTypePredicateAnnotation(e):this.match(e)&&(t[a]=this.tsParseTypeOrTypePredicateAnnotation(e))}tsParseBindingListForSignature(){let e=super.parseBindingList(11,41,2);for(let t of e){let{type:s}=t;(s==="AssignmentPattern"||s==="TSParameterProperty")&&this.raise(k.UnsupportedSignatureParameterKind,t,{type:s})}return e}tsParseTypeMemberSemicolon(){!this.eat(12)&&!this.isLineTerminator()&&this.expect(13)}tsParseSignatureMember(e,t){return this.tsFillSignature(14,t),this.tsParseTypeMemberSemicolon(),this.finishNode(t,e)}tsIsUnambiguouslyIndexSignature(){return this.next(),B(this.state.type)?(this.next(),this.match(14)):!1}tsTryParseIndexSignature(e){if(!(this.match(0)&&this.tsLookAhead(this.tsIsUnambiguouslyIndexSignature.bind(this))))return;this.expect(0);let t=this.parseIdentifier();t.typeAnnotation=this.tsParseTypeAnnotation(),this.resetEndLocation(t),this.expect(3),e.parameters=[t];let s=this.tsTryParseTypeAnnotation();return s&&(e.typeAnnotation=s),this.tsParseTypeMemberSemicolon(),this.finishNode(e,"TSIndexSignature")}tsParsePropertyOrMethodSignature(e,t){this.eat(17)&&(e.optional=!0);let s=e;if(this.match(10)||this.match(47)){t&&this.raise(k.ReadonlyForMethodSignature,e);let i=s;i.kind&&this.match(47)&&this.raise(k.AccesorCannotHaveTypeParameters,this.state.curPosition()),this.tsFillSignature(14,i),this.tsParseTypeMemberSemicolon();let a="parameters",o="typeAnnotation";if(i.kind==="get")i[a].length>0&&(this.raise(b.BadGetterArity,this.state.curPosition()),this.isThisParam(i[a][0])&&this.raise(k.AccesorCannotDeclareThisParameter,this.state.curPosition()));else if(i.kind==="set"){if(i[a].length!==1)this.raise(b.BadSetterArity,this.state.curPosition());else{let l=i[a][0];this.isThisParam(l)&&this.raise(k.AccesorCannotDeclareThisParameter,this.state.curPosition()),l.type==="Identifier"&&l.optional&&this.raise(k.SetAccesorCannotHaveOptionalParameter,this.state.curPosition()),l.type==="RestElement"&&this.raise(k.SetAccesorCannotHaveRestParameter,this.state.curPosition())}i[o]&&this.raise(k.SetAccesorCannotHaveReturnType,i[o])}else i.kind="method";return this.finishNode(i,"TSMethodSignature")}else{let i=s;t&&(i.readonly=!0);let a=this.tsTryParseTypeAnnotation();return a&&(i.typeAnnotation=a),this.tsParseTypeMemberSemicolon(),this.finishNode(i,"TSPropertySignature")}}tsParseTypeMember(){let e=this.startNode();if(this.match(10)||this.match(47))return this.tsParseSignatureMember("TSCallSignatureDeclaration",e);if(this.match(77)){let s=this.startNode();return this.next(),this.match(10)||this.match(47)?this.tsParseSignatureMember("TSConstructSignatureDeclaration",e):(e.key=this.createIdentifier(s,"new"),this.tsParsePropertyOrMethodSignature(e,!1))}this.tsParseModifiers({allowedModifiers:["readonly"],disallowedModifiers:["declare","abstract","private","protected","public","static","override"]},e);let t=this.tsTryParseIndexSignature(e);return t||(super.parsePropertyName(e),!e.computed&&e.key.type==="Identifier"&&(e.key.name==="get"||e.key.name==="set")&&this.tsTokenCanFollowModifier()&&(e.kind=e.key.name,super.parsePropertyName(e)),this.tsParsePropertyOrMethodSignature(e,!!e.readonly))}tsParseTypeLiteral(){let e=this.startNode();return e.members=this.tsParseObjectTypeMembers(),this.finishNode(e,"TSTypeLiteral")}tsParseObjectTypeMembers(){this.expect(5);let e=this.tsParseList("TypeMembers",this.tsParseTypeMember.bind(this));return this.expect(8),e}tsIsStartOfMappedType(){return this.next(),this.eat(53)?this.isContextual(122):(this.isContextual(122)&&this.next(),!this.match(0)||(this.next(),!this.tsIsIdentifier())?!1:(this.next(),this.match(58)))}tsParseMappedTypeParameter(){let e=this.startNode();return e.name=this.tsParseTypeParameterName(),e.constraint=this.tsExpectThenParseType(58),this.finishNode(e,"TSTypeParameter")}tsParseMappedType(){let e=this.startNode();return this.expect(5),this.match(53)?(e.readonly=this.state.value,this.next(),this.expectContextual(122)):this.eatContextual(122)&&(e.readonly=!0),this.expect(0),e.typeParameter=this.tsParseMappedTypeParameter(),e.nameType=this.eatContextual(93)?this.tsParseType():null,this.expect(3),this.match(53)?(e.optional=this.state.value,this.next(),this.expect(17)):this.eat(17)&&(e.optional=!0),e.typeAnnotation=this.tsTryParseType(),this.semicolon(),this.expect(8),this.finishNode(e,"TSMappedType")}tsParseTupleType(){let e=this.startNode();e.elementTypes=this.tsParseBracketedList("TupleElementTypes",this.tsParseTupleElementType.bind(this),!0,!1);let t=!1;return e.elementTypes.forEach(s=>{let{type:i}=s;t&&i!=="TSRestType"&&i!=="TSOptionalType"&&!(i==="TSNamedTupleMember"&&s.optional)&&this.raise(k.OptionalTypeBeforeRequired,s),t||(t=i==="TSNamedTupleMember"&&s.optional||i==="TSOptionalType")}),this.finishNode(e,"TSTupleType")}tsParseTupleElementType(){let{startLoc:e}=this.state,t=this.eat(21),s,i,a,o,c=xe(this.state.type)?this.lookaheadCharCode():null;if(c===58)s=!0,a=!1,i=this.parseIdentifier(!0),this.expect(14),o=this.tsParseType();else if(c===63){a=!0;let p=this.state.startLoc,u=this.state.value,f=this.tsParseNonArrayType();this.lookaheadCharCode()===58?(s=!0,i=this.createIdentifier(this.startNodeAt(p),u),this.expect(17),this.expect(14),o=this.tsParseType()):(s=!1,o=f,this.expect(17))}else o=this.tsParseType(),a=this.eat(17),s=this.eat(14);if(s){let p;i?(p=this.startNodeAtNode(i),p.optional=a,p.label=i,p.elementType=o,this.eat(17)&&(p.optional=!0,this.raise(k.TupleOptionalAfterType,this.state.lastTokStartLoc))):(p=this.startNodeAtNode(o),p.optional=a,this.raise(k.InvalidTupleMemberLabel,o),p.label=o,p.elementType=this.tsParseType()),o=this.finishNode(p,"TSNamedTupleMember")}else if(a){let p=this.startNodeAtNode(o);p.typeAnnotation=o,o=this.finishNode(p,"TSOptionalType")}if(t){let p=this.startNodeAt(e);p.typeAnnotation=o,o=this.finishNode(p,"TSRestType")}return o}tsParseParenthesizedType(){let e=this.startNode();return this.expect(10),e.typeAnnotation=this.tsParseType(),this.expect(11),this.finishNode(e,"TSParenthesizedType")}tsParseFunctionOrConstructorType(e,t){let s=this.startNode();return e==="TSConstructorType"&&(s.abstract=!!t,t&&this.next(),this.next()),this.tsInAllowConditionalTypesContext(()=>this.tsFillSignature(19,s)),this.finishNode(s,e)}tsParseLiteralTypeNode(){let e=this.startNode();switch(this.state.type){case 134:case 135:case 133:case 85:case 86:e.literal=super.parseExprAtom();break;default:this.unexpected()}return this.finishNode(e,"TSLiteralType")}tsParseTemplateLiteralType(){let e=this.startNode();return e.literal=super.parseTemplate(!1),this.finishNode(e,"TSLiteralType")}parseTemplateSubstitution(){return this.state.inType?this.tsParseType():super.parseTemplateSubstitution()}tsParseThisTypeOrThisTypePredicate(){let e=this.tsParseThisTypeNode();return this.isContextual(116)&&!this.hasPrecedingLineBreak()?this.tsParseThisTypePredicate(e):e}tsParseNonArrayType(){switch(this.state.type){case 133:case 134:case 135:case 85:case 86:return this.tsParseLiteralTypeNode();case 53:if(this.state.value==="-"){let e=this.startNode(),t=this.lookahead();return t.type!==134&&t.type!==135&&this.unexpected(),e.literal=this.parseMaybeUnary(),this.finishNode(e,"TSLiteralType")}break;case 78:return this.tsParseThisTypeOrThisTypePredicate();case 87:return this.tsParseTypeQuery();case 83:return this.tsParseImportType();case 5:return this.tsLookAhead(this.tsIsStartOfMappedType.bind(this))?this.tsParseMappedType():this.tsParseTypeLiteral();case 0:return this.tsParseTupleType();case 10:return this.tsParseParenthesizedType();case 25:case 24:return this.tsParseTemplateLiteralType();default:{let{type:e}=this.state;if(B(e)||e===88||e===84){let t=e===88?"TSVoidKeyword":e===84?"TSNullKeyword":xl(this.state.value);if(t!==void 0&&this.lookaheadCharCode()!==46){let s=this.startNode();return this.next(),this.finishNode(s,t)}return this.tsParseTypeReference()}}}this.unexpected()}tsParseArrayTypeOrHigher(){let e=this.tsParseNonArrayType();for(;!this.hasPrecedingLineBreak()&&this.eat(0);)if(this.match(3)){let t=this.startNodeAtNode(e);t.elementType=e,this.expect(3),e=this.finishNode(t,"TSArrayType")}else{let t=this.startNodeAtNode(e);t.objectType=e,t.indexType=this.tsParseType(),this.expect(3),e=this.finishNode(t,"TSIndexedAccessType")}return e}tsParseTypeOperator(){let e=this.startNode(),t=this.state.value;return this.next(),e.operator=t,e.typeAnnotation=this.tsParseTypeOperatorOrHigher(),t==="readonly"&&this.tsCheckTypeAnnotationForReadOnly(e),this.finishNode(e,"TSTypeOperator")}tsCheckTypeAnnotationForReadOnly(e){switch(e.typeAnnotation.type){case"TSTupleType":case"TSArrayType":return;default:this.raise(k.UnexpectedReadonly,e)}}tsParseInferType(){let e=this.startNode();this.expectContextual(115);let t=this.startNode();return t.name=this.tsParseTypeParameterName(),t.constraint=this.tsTryParse(()=>this.tsParseConstraintForInferType()),e.typeParameter=this.finishNode(t,"TSTypeParameter"),this.finishNode(e,"TSInferType")}tsParseConstraintForInferType(){if(this.eat(81)){let e=this.tsInDisallowConditionalTypesContext(()=>this.tsParseType());if(this.state.inDisallowConditionalTypesContext||!this.match(17))return e}}tsParseTypeOperatorOrHigher(){return Bo(this.state.type)&&!this.state.containsEsc?this.tsParseTypeOperator():this.isContextual(115)?this.tsParseInferType():this.tsInAllowConditionalTypesContext(()=>this.tsParseArrayTypeOrHigher())}tsParseUnionOrIntersectionType(e,t,s){let i=this.startNode(),a=this.eat(s),o=[];do o.push(t());while(this.eat(s));return o.length===1&&!a?o[0]:(i.types=o,this.finishNode(i,e))}tsParseIntersectionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSIntersectionType",this.tsParseTypeOperatorOrHigher.bind(this),45)}tsParseUnionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSUnionType",this.tsParseIntersectionTypeOrHigher.bind(this),43)}tsIsStartOfFunctionType(){return this.match(47)?!0:this.match(10)&&this.tsLookAhead(this.tsIsUnambiguouslyStartOfFunctionType.bind(this))}tsSkipParameterStart(){if(B(this.state.type)||this.match(78))return this.next(),!0;if(this.match(5)){let{errors:e}=this.state,t=e.length;try{return this.parseObjectLike(8,!0),e.length===t}catch{return!1}}if(this.match(0)){this.next();let{errors:e}=this.state,t=e.length;try{return super.parseBindingList(3,93,1),e.length===t}catch{return!1}}return!1}tsIsUnambiguouslyStartOfFunctionType(){return this.next(),!!(this.match(11)||this.match(21)||this.tsSkipParameterStart()&&(this.match(14)||this.match(12)||this.match(17)||this.match(29)||this.match(11)&&(this.next(),this.match(19))))}tsParseTypeOrTypePredicateAnnotation(e){return this.tsInType(()=>{let t=this.startNode();this.expect(e);let s=this.startNode(),i=!!this.tsTryParse(this.tsParseTypePredicateAsserts.bind(this));if(i&&this.match(78)){let l=this.tsParseThisTypeOrThisTypePredicate();return l.type==="TSThisType"?(s.parameterName=l,s.asserts=!0,s.typeAnnotation=null,l=this.finishNode(s,"TSTypePredicate")):(this.resetStartLocationFromNode(l,s),l.asserts=!0),t.typeAnnotation=l,this.finishNode(t,"TSTypeAnnotation")}let a=this.tsIsIdentifier()&&this.tsTryParse(this.tsParseTypePredicatePrefix.bind(this));if(!a)return i?(s.parameterName=this.parseIdentifier(),s.asserts=i,s.typeAnnotation=null,t.typeAnnotation=this.finishNode(s,"TSTypePredicate"),this.finishNode(t,"TSTypeAnnotation")):this.tsParseTypeAnnotation(!1,t);let o=this.tsParseTypeAnnotation(!1);return s.parameterName=a,s.typeAnnotation=o,s.asserts=i,t.typeAnnotation=this.finishNode(s,"TSTypePredicate"),this.finishNode(t,"TSTypeAnnotation")})}tsTryParseTypeOrTypePredicateAnnotation(){if(this.match(14))return this.tsParseTypeOrTypePredicateAnnotation(14)}tsTryParseTypeAnnotation(){if(this.match(14))return this.tsParseTypeAnnotation()}tsTryParseType(){return this.tsEatThenParseType(14)}tsParseTypePredicatePrefix(){let e=this.parseIdentifier();if(this.isContextual(116)&&!this.hasPrecedingLineBreak())return this.next(),e}tsParseTypePredicateAsserts(){if(this.state.type!==109)return!1;let e=this.state.containsEsc;return this.next(),!B(this.state.type)&&!this.match(78)?!1:(e&&this.raise(b.InvalidEscapedReservedWord,this.state.lastTokStartLoc,{reservedWord:"asserts"}),!0)}tsParseTypeAnnotation(e=!0,t=this.startNode()){return this.tsInType(()=>{e&&this.expect(14),t.typeAnnotation=this.tsParseType()}),this.finishNode(t,"TSTypeAnnotation")}tsParseType(){Zr(this.state.inType);let e=this.tsParseNonConditionalType();if(this.state.inDisallowConditionalTypesContext||this.hasPrecedingLineBreak()||!this.eat(81))return e;let t=this.startNodeAtNode(e);return t.checkType=e,t.extendsType=this.tsInDisallowConditionalTypesContext(()=>this.tsParseNonConditionalType()),this.expect(17),t.trueType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.expect(14),t.falseType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.finishNode(t,"TSConditionalType")}isAbstractConstructorSignature(){return this.isContextual(124)&&this.lookahead().type===77}tsParseNonConditionalType(){return this.tsIsStartOfFunctionType()?this.tsParseFunctionOrConstructorType("TSFunctionType"):this.match(77)?this.tsParseFunctionOrConstructorType("TSConstructorType"):this.isAbstractConstructorSignature()?this.tsParseFunctionOrConstructorType("TSConstructorType",!0):this.tsParseUnionTypeOrHigher()}tsParseTypeAssertion(){this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(k.ReservedTypeAssertion,this.state.startLoc);let e=this.startNode();return e.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?this.tsParseTypeReference():this.tsParseType())),this.expect(48),e.expression=this.parseMaybeUnary(),this.finishNode(e,"TSTypeAssertion")}tsParseHeritageClause(e){let t=this.state.startLoc,s=this.tsParseDelimitedList("HeritageClauseElement",()=>{let i=this.startNode();return i.expression=this.tsParseEntityName(),this.match(47)&&(i.typeParameters=this.tsParseTypeArguments()),this.finishNode(i,"TSExpressionWithTypeArguments")});return s.length||this.raise(k.EmptyHeritageClauseType,t,{token:e}),s}tsParseInterfaceDeclaration(e,t={}){if(this.hasFollowingLineBreak())return null;this.expectContextual(129),t.declare&&(e.declare=!0),B(this.state.type)?(e.id=this.parseIdentifier(),this.checkIdentifier(e.id,130)):(e.id=null,this.raise(k.MissingInterfaceName,this.state.startLoc)),e.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers),this.eat(81)&&(e.extends=this.tsParseHeritageClause("extends"));let s=this.startNode();return s.body=this.tsInType(this.tsParseObjectTypeMembers.bind(this)),e.body=this.finishNode(s,"TSInterfaceBody"),this.finishNode(e,"TSInterfaceDeclaration")}tsParseTypeAliasDeclaration(e){return e.id=this.parseIdentifier(),this.checkIdentifier(e.id,2),e.typeAnnotation=this.tsInType(()=>{if(e.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutModifiers),this.expect(29),this.isContextual(114)&&this.lookahead().type!==16){let t=this.startNode();return this.next(),this.finishNode(t,"TSIntrinsicKeyword")}return this.tsParseType()}),this.semicolon(),this.finishNode(e,"TSTypeAliasDeclaration")}tsInNoContext(e){let t=this.state.context;this.state.context=[t[0]];try{return e()}finally{this.state.context=t}}tsInType(e){let t=this.state.inType;this.state.inType=!0;try{return e()}finally{this.state.inType=t}}tsInDisallowConditionalTypesContext(e){let t=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!0;try{return e()}finally{this.state.inDisallowConditionalTypesContext=t}}tsInAllowConditionalTypesContext(e){let t=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!1;try{return e()}finally{this.state.inDisallowConditionalTypesContext=t}}tsEatThenParseType(e){if(this.match(e))return this.tsNextThenParseType()}tsExpectThenParseType(e){return this.tsInType(()=>(this.expect(e),this.tsParseType()))}tsNextThenParseType(){return this.tsInType(()=>(this.next(),this.tsParseType()))}tsParseEnumMember(){let e=this.startNode();return e.id=this.match(133)?super.parseStringLiteral(this.state.value):this.parseIdentifier(!0),this.eat(29)&&(e.initializer=super.parseMaybeAssignAllowIn()),this.finishNode(e,"TSEnumMember")}tsParseEnumDeclaration(e,t={}){return t.const&&(e.const=!0),t.declare&&(e.declare=!0),this.expectContextual(126),e.id=this.parseIdentifier(),this.checkIdentifier(e.id,e.const?8971:8459),this.expect(5),e.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(e,"TSEnumDeclaration")}tsParseModuleBlock(){let e=this.startNode();return this.scope.enter(0),this.expect(5),super.parseBlockOrModuleBlockBody(e.body=[],void 0,!0,8),this.scope.exit(),this.finishNode(e,"TSModuleBlock")}tsParseModuleOrNamespaceDeclaration(e,t=!1){if(e.id=this.parseIdentifier(),t||this.checkIdentifier(e.id,1024),this.eat(16)){let s=this.startNode();this.tsParseModuleOrNamespaceDeclaration(s,!0),e.body=s}else this.scope.enter(256),this.prodParam.enter(0),e.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit();return this.finishNode(e,"TSModuleDeclaration")}tsParseAmbientExternalModuleDeclaration(e){return this.isContextual(112)?(e.global=!0,e.id=this.parseIdentifier()):this.match(133)?e.id=super.parseStringLiteral(this.state.value):this.unexpected(),this.match(5)?(this.scope.enter(256),this.prodParam.enter(0),e.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit()):this.semicolon(),this.finishNode(e,"TSModuleDeclaration")}tsParseImportEqualsDeclaration(e,t,s){e.isExport=s||!1,e.id=t||this.parseIdentifier(),this.checkIdentifier(e.id,4096),this.expect(29);let i=this.tsParseModuleReference();return e.importKind==="type"&&i.type!=="TSExternalModuleReference"&&this.raise(k.ImportAliasHasImportType,i),e.moduleReference=i,this.semicolon(),this.finishNode(e,"TSImportEqualsDeclaration")}tsIsExternalModuleReference(){return this.isContextual(119)&&this.lookaheadCharCode()===40}tsParseModuleReference(){return this.tsIsExternalModuleReference()?this.tsParseExternalModuleReference():this.tsParseEntityName(!1)}tsParseExternalModuleReference(){let e=this.startNode();return this.expectContextual(119),this.expect(10),this.match(133)||this.unexpected(),e.expression=super.parseExprAtom(),this.expect(11),this.sawUnambiguousESM=!0,this.finishNode(e,"TSExternalModuleReference")}tsLookAhead(e){let t=this.state.clone(),s=e();return this.state=t,s}tsTryParseAndCatch(e){let t=this.tryParse(s=>e()||s());if(!(t.aborted||!t.node))return t.error&&(this.state=t.failState),t.node}tsTryParse(e){let t=this.state.clone(),s=e();if(s!==void 0&&s!==!1)return s;this.state=t}tsTryParseDeclare(e){if(this.isLineTerminator())return;let t=this.state.type,s;return this.isContextual(100)&&(t=74,s="let"),this.tsInAmbientContext(()=>{switch(t){case 68:return e.declare=!0,super.parseFunctionStatement(e,!1,!1);case 80:return e.declare=!0,this.parseClass(e,!0,!1);case 126:return this.tsParseEnumDeclaration(e,{declare:!0});case 112:return this.tsParseAmbientExternalModuleDeclaration(e);case 75:case 74:return!this.match(75)||!this.isLookaheadContextual("enum")?(e.declare=!0,this.parseVarStatement(e,s||this.state.value,!0)):(this.expect(75),this.tsParseEnumDeclaration(e,{const:!0,declare:!0}));case 129:{let i=this.tsParseInterfaceDeclaration(e,{declare:!0});if(i)return i}default:if(B(t))return this.tsParseDeclaration(e,this.state.value,!0,null)}})}tsTryParseExportDeclaration(){return this.tsParseDeclaration(this.startNode(),this.state.value,!0,null)}tsParseExpressionStatement(e,t,s){switch(t.name){case"declare":{let i=this.tsTryParseDeclare(e);return i&&(i.declare=!0),i}case"global":if(this.match(5)){this.scope.enter(256),this.prodParam.enter(0);let i=e;return i.global=!0,i.id=t,i.body=this.tsParseModuleBlock(),this.scope.exit(),this.prodParam.exit(),this.finishNode(i,"TSModuleDeclaration")}break;default:return this.tsParseDeclaration(e,t.name,!1,s)}}tsParseDeclaration(e,t,s,i){switch(t){case"abstract":if(this.tsCheckLineTerminator(s)&&(this.match(80)||B(this.state.type)))return this.tsParseAbstractDeclaration(e,i);break;case"module":if(this.tsCheckLineTerminator(s)){if(this.match(133))return this.tsParseAmbientExternalModuleDeclaration(e);if(B(this.state.type))return this.tsParseModuleOrNamespaceDeclaration(e)}break;case"namespace":if(this.tsCheckLineTerminator(s)&&B(this.state.type))return this.tsParseModuleOrNamespaceDeclaration(e);break;case"type":if(this.tsCheckLineTerminator(s)&&B(this.state.type))return this.tsParseTypeAliasDeclaration(e);break}}tsCheckLineTerminator(e){return e?this.hasFollowingLineBreak()?!1:(this.next(),!0):!this.isLineTerminator()}tsTryParseGenericAsyncArrowFunction(e){if(!this.match(47))return;let t=this.state.maybeInArrowParameters;this.state.maybeInArrowParameters=!0;let s=this.tsTryParseAndCatch(()=>{let i=this.startNodeAt(e);return i.typeParameters=this.tsParseTypeParameters(this.tsParseConstModifier),super.parseFunctionParams(i),i.returnType=this.tsTryParseTypeOrTypePredicateAnnotation(),this.expect(19),i});if(this.state.maybeInArrowParameters=t,!!s)return super.parseArrowExpression(s,null,!0)}tsParseTypeArgumentsInExpression(){if(this.reScan_lt()===47)return this.tsParseTypeArguments()}tsParseTypeArguments(){let e=this.startNode();return e.params=this.tsInType(()=>this.tsInNoContext(()=>(this.expect(47),this.tsParseDelimitedList("TypeParametersOrArguments",this.tsParseType.bind(this))))),e.params.length===0?this.raise(k.EmptyTypeArguments,e):!this.state.inType&&this.curContext()===V.brace&&this.reScan_lt_gt(),this.expect(48),this.finishNode(e,"TSTypeParameterInstantiation")}tsIsDeclarationStart(){return jo(this.state.type)}isExportDefaultSpecifier(){return this.tsIsDeclarationStart()?!1:super.isExportDefaultSpecifier()}parseAssignableListItem(e,t){let s=this.state.startLoc,i={};this.tsParseModifiers({allowedModifiers:["public","private","protected","override","readonly"]},i);let a=i.accessibility,o=i.override,l=i.readonly;!(e&4)&&(a||l||o)&&this.raise(k.UnexpectedParameterModifier,s);let c=this.parseMaybeDefault();this.parseAssignableListItemTypes(c,e);let p=this.parseMaybeDefault(c.loc.start,c);if(a||l||o){let u=this.startNodeAt(s);return t.length&&(u.decorators=t),a&&(u.accessibility=a),l&&(u.readonly=l),o&&(u.override=o),p.type!=="Identifier"&&p.type!=="AssignmentPattern"&&this.raise(k.UnsupportedParameterPropertyKind,u),u.parameter=p,this.finishNode(u,"TSParameterProperty")}return t.length&&(c.decorators=t),p}isSimpleParameter(e){return e.type==="TSParameterProperty"&&super.isSimpleParameter(e.parameter)||super.isSimpleParameter(e)}tsDisallowOptionalPattern(e){for(let t of e.params)t.type!=="Identifier"&&t.optional&&!this.state.isAmbientContext&&this.raise(k.PatternIsOptional,t)}setArrowFunctionParameters(e,t,s){super.setArrowFunctionParameters(e,t,s),this.tsDisallowOptionalPattern(e)}parseFunctionBodyAndFinish(e,t,s=!1){this.match(14)&&(e.returnType=this.tsParseTypeOrTypePredicateAnnotation(14));let i=t==="FunctionDeclaration"?"TSDeclareFunction":t==="ClassMethod"||t==="ClassPrivateMethod"?"TSDeclareMethod":void 0;return i&&!this.match(5)&&this.isLineTerminator()?this.finishNode(e,i):i==="TSDeclareFunction"&&this.state.isAmbientContext&&(this.raise(k.DeclareFunctionHasImplementation,e),e.declare)?super.parseFunctionBodyAndFinish(e,i,s):(this.tsDisallowOptionalPattern(e),super.parseFunctionBodyAndFinish(e,t,s))}registerFunctionStatementId(e){!e.body&&e.id?this.checkIdentifier(e.id,1024):super.registerFunctionStatementId(e)}tsCheckForInvalidTypeCasts(e){e.forEach(t=>{t?.type==="TSTypeCastExpression"&&this.raise(k.UnexpectedTypeAnnotation,t.typeAnnotation)})}toReferencedList(e,t){return this.tsCheckForInvalidTypeCasts(e),e}parseArrayLike(e,t,s,i){let a=super.parseArrayLike(e,t,s,i);return a.type==="ArrayExpression"&&this.tsCheckForInvalidTypeCasts(a.elements),a}parseSubscript(e,t,s,i){if(!this.hasPrecedingLineBreak()&&this.match(35)){this.state.canStartJSXElement=!1,this.next();let o=this.startNodeAt(t);return o.expression=e,this.finishNode(o,"TSNonNullExpression")}let a=!1;if(this.match(18)&&this.lookaheadCharCode()===60){if(s)return i.stop=!0,e;i.optionalChainMember=a=!0,this.next()}if(this.match(47)||this.match(51)){let o,l=this.tsTryParseAndCatch(()=>{if(!s&&this.atPossibleAsyncArrow(e)){let f=this.tsTryParseGenericAsyncArrowFunction(t);if(f)return f}let c=this.tsParseTypeArgumentsInExpression();if(!c)return;if(a&&!this.match(10)){o=this.state.curPosition();return}if(vn(this.state.type)){let f=super.parseTaggedTemplateExpression(e,t,i);return f.typeParameters=c,f}if(!s&&this.eat(10)){let f=this.startNodeAt(t);return f.callee=e,f.arguments=this.parseCallExpressionArguments(11,!1),this.tsCheckForInvalidTypeCasts(f.arguments),f.typeParameters=c,i.optionalChainMember&&(f.optional=a),this.finishCallExpression(f,i.optionalChainMember)}let p=this.state.type;if(p===48||p===52||p!==10&&ms(p)&&!this.hasPrecedingLineBreak())return;let u=this.startNodeAt(t);return u.expression=e,u.typeParameters=c,this.finishNode(u,"TSInstantiationExpression")});if(o&&this.unexpected(o,10),l)return l.type==="TSInstantiationExpression"&&(this.match(16)||this.match(18)&&this.lookaheadCharCode()!==40)&&this.raise(k.InvalidPropertyAccessAfterInstantiationExpression,this.state.startLoc),l}return super.parseSubscript(e,t,s,i)}parseNewCallee(e){var t;super.parseNewCallee(e);let{callee:s}=e;s.type==="TSInstantiationExpression"&&!((t=s.extra)!=null&&t.parenthesized)&&(e.typeParameters=s.typeParameters,e.callee=s.expression)}parseExprOp(e,t,s){let i;if(mn(58)>s&&!this.hasPrecedingLineBreak()&&(this.isContextual(93)||(i=this.isContextual(120)))){let a=this.startNodeAt(t);return a.expression=e,a.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?(i&&this.raise(b.UnexpectedKeyword,this.state.startLoc,{keyword:"const"}),this.tsParseTypeReference()):this.tsParseType())),this.finishNode(a,i?"TSSatisfiesExpression":"TSAsExpression"),this.reScan_lt_gt(),this.parseExprOp(a,t,s)}return super.parseExprOp(e,t,s)}checkReservedWord(e,t,s,i){this.state.isAmbientContext||super.checkReservedWord(e,t,s,i)}checkImportReflection(e){super.checkImportReflection(e),e.module&&e.importKind!=="value"&&this.raise(k.ImportReflectionHasImportType,e.specifiers[0].loc.start)}checkDuplicateExports(){}isPotentialImportPhase(e){if(super.isPotentialImportPhase(e))return!0;if(this.isContextual(130)){let t=this.lookaheadCharCode();return e?t===123||t===42:t!==61}return!e&&this.isContextual(87)}applyImportPhase(e,t,s,i){super.applyImportPhase(e,t,s,i),t?e.exportKind=s==="type"?"type":"value":e.importKind=s==="type"||s==="typeof"?s:"value"}parseImport(e){if(this.match(133))return e.importKind="value",super.parseImport(e);let t;if(B(this.state.type)&&this.lookaheadCharCode()===61)return e.importKind="value",this.tsParseImportEqualsDeclaration(e);if(this.isContextual(130)){let s=this.parseMaybeImportPhase(e,!1);if(this.lookaheadCharCode()===61)return this.tsParseImportEqualsDeclaration(e,s);t=super.parseImportSpecifiersAndAfter(e,s)}else t=super.parseImport(e);return t.importKind==="type"&&t.specifiers.length>1&&t.specifiers[0].type==="ImportDefaultSpecifier"&&this.raise(k.TypeImportCannotSpecifyDefaultAndNamed,t),t}parseExport(e,t){if(this.match(83)){this.next();let s=null;return this.isContextual(130)&&this.isPotentialImportPhase(!1)?s=this.parseMaybeImportPhase(e,!1):e.importKind="value",this.tsParseImportEqualsDeclaration(e,s,!0)}else if(this.eat(29)){let s=e;return s.expression=super.parseExpression(),this.semicolon(),this.sawUnambiguousESM=!0,this.finishNode(s,"TSExportAssignment")}else if(this.eatContextual(93)){let s=e;return this.expectContextual(128),s.id=this.parseIdentifier(),this.semicolon(),this.finishNode(s,"TSNamespaceExportDeclaration")}else return super.parseExport(e,t)}isAbstractClass(){return this.isContextual(124)&&this.lookahead().type===80}parseExportDefaultExpression(){if(this.isAbstractClass()){let e=this.startNode();return this.next(),e.abstract=!0,this.parseClass(e,!0,!0)}if(this.match(129)){let e=this.tsParseInterfaceDeclaration(this.startNode());if(e)return e}return super.parseExportDefaultExpression()}parseVarStatement(e,t,s=!1){let{isAmbientContext:i}=this.state,a=super.parseVarStatement(e,t,s||i);if(!i)return a;for(let{id:o,init:l}of a.declarations)l&&(t!=="const"||o.typeAnnotation?this.raise(k.InitializerNotAllowedInAmbientContext,l):Cl(l,this.hasPlugin("estree"))||this.raise(k.ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference,l));return a}parseStatementContent(e,t){if(this.match(75)&&this.isLookaheadContextual("enum")){let s=this.startNode();return this.expect(75),this.tsParseEnumDeclaration(s,{const:!0})}if(this.isContextual(126))return this.tsParseEnumDeclaration(this.startNode());if(this.isContextual(129)){let s=this.tsParseInterfaceDeclaration(this.startNode());if(s)return s}return super.parseStatementContent(e,t)}parseAccessModifier(){return this.tsParseModifier(["public","protected","private"])}tsHasSomeModifiers(e,t){return t.some(s=>ei(s)?e.accessibility===s:!!e[s])}tsIsStartOfStaticBlocks(){return this.isContextual(106)&&this.lookaheadCharCode()===123}parseClassMember(e,t,s){let i=["declare","private","public","protected","override","abstract","readonly","static"];this.tsParseModifiers({allowedModifiers:i,disallowedModifiers:["in","out"],stopOnStartOfClassStaticBlock:!0,errorTemplate:k.InvalidModifierOnTypeParameterPositions},t);let a=()=>{this.tsIsStartOfStaticBlocks()?(this.next(),this.next(),this.tsHasSomeModifiers(t,i)&&this.raise(k.StaticBlockCannotHaveModifier,this.state.curPosition()),super.parseClassStaticBlock(e,t)):this.parseClassMemberWithIsStatic(e,t,s,!!t.static)};t.declare?this.tsInAmbientContext(a):a()}parseClassMemberWithIsStatic(e,t,s,i){let a=this.tsTryParseIndexSignature(t);if(a){e.body.push(a),t.abstract&&this.raise(k.IndexSignatureHasAbstract,t),t.accessibility&&this.raise(k.IndexSignatureHasAccessibility,t,{modifier:t.accessibility}),t.declare&&this.raise(k.IndexSignatureHasDeclare,t),t.override&&this.raise(k.IndexSignatureHasOverride,t);return}!this.state.inAbstractClass&&t.abstract&&this.raise(k.NonAbstractClassHasAbstractMethod,t),t.override&&(s.hadSuperClass||this.raise(k.OverrideNotInSubClass,t)),super.parseClassMemberWithIsStatic(e,t,s,i)}parsePostMemberNameModifiers(e){this.eat(17)&&(e.optional=!0),e.readonly&&this.match(10)&&this.raise(k.ClassMethodHasReadonly,e),e.declare&&this.match(10)&&this.raise(k.ClassMethodHasDeclare,e)}parseExpressionStatement(e,t,s){return(t.type==="Identifier"?this.tsParseExpressionStatement(e,t,s):void 0)||super.parseExpressionStatement(e,t,s)}shouldParseExportDeclaration(){return this.tsIsDeclarationStart()?!0:super.shouldParseExportDeclaration()}parseConditional(e,t,s){if(!this.state.maybeInArrowParameters||!this.match(17))return super.parseConditional(e,t,s);let i=this.tryParse(()=>super.parseConditional(e,t));return i.node?(i.error&&(this.state=i.failState),i.node):(i.error&&super.setOptionalParametersError(s,i.error),e)}parseParenItem(e,t){if(e=super.parseParenItem(e,t),this.eat(17)&&(e.optional=!0,this.resetEndLocation(e)),this.match(14)){let s=this.startNodeAt(t);return s.expression=e,s.typeAnnotation=this.tsParseTypeAnnotation(),this.finishNode(s,"TSTypeCastExpression")}return e}parseExportDeclaration(e){if(!this.state.isAmbientContext&&this.isContextual(125))return this.tsInAmbientContext(()=>this.parseExportDeclaration(e));let t=this.state.startLoc,s=this.eatContextual(125);if(s&&(this.isContextual(125)||!this.shouldParseExportDeclaration()))throw this.raise(k.ExpectedAmbientAfterExportDeclare,this.state.startLoc);let a=B(this.state.type)&&this.tsTryParseExportDeclaration()||super.parseExportDeclaration(e);return a?((a.type==="TSInterfaceDeclaration"||a.type==="TSTypeAliasDeclaration"||s)&&(e.exportKind="type"),s&&(this.resetStartLocation(a,t),a.declare=!0),a):null}parseClassId(e,t,s,i){if((!t||s)&&this.isContextual(113))return;super.parseClassId(e,t,s,e.declare?1024:8331);let a=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers);a&&(e.typeParameters=a)}parseClassPropertyAnnotation(e){e.optional||(this.eat(35)?e.definite=!0:this.eat(17)&&(e.optional=!0));let t=this.tsTryParseTypeAnnotation();t&&(e.typeAnnotation=t)}parseClassProperty(e){if(this.parseClassPropertyAnnotation(e),this.state.isAmbientContext&&!(e.readonly&&!e.typeAnnotation)&&this.match(29)&&this.raise(k.DeclareClassFieldHasInitializer,this.state.startLoc),e.abstract&&this.match(29)){let{key:t}=e;this.raise(k.AbstractPropertyHasInitializer,this.state.startLoc,{propertyName:t.type==="Identifier"&&!e.computed?t.name:`[${this.input.slice(t.start,t.end)}]`})}return super.parseClassProperty(e)}parseClassPrivateProperty(e){return e.abstract&&this.raise(k.PrivateElementHasAbstract,e),e.accessibility&&this.raise(k.PrivateElementHasAccessibility,e,{modifier:e.accessibility}),this.parseClassPropertyAnnotation(e),super.parseClassPrivateProperty(e)}parseClassAccessorProperty(e){return this.parseClassPropertyAnnotation(e),e.optional&&this.raise(k.AccessorCannotBeOptional,e),super.parseClassAccessorProperty(e)}pushClassMethod(e,t,s,i,a,o){let l=this.tsTryParseTypeParameters(this.tsParseConstModifier);l&&a&&this.raise(k.ConstructorHasTypeParameters,l);let{declare:c=!1,kind:p}=t;c&&(p==="get"||p==="set")&&this.raise(k.DeclareAccessor,t,{kind:p}),l&&(t.typeParameters=l),super.pushClassMethod(e,t,s,i,a,o)}pushClassPrivateMethod(e,t,s,i){let a=this.tsTryParseTypeParameters(this.tsParseConstModifier);a&&(t.typeParameters=a),super.pushClassPrivateMethod(e,t,s,i)}declareClassPrivateMethodInScope(e,t){e.type!=="TSDeclareMethod"&&(e.type==="MethodDefinition"&&!e.value.body||super.declareClassPrivateMethodInScope(e,t))}parseClassSuper(e){super.parseClassSuper(e),e.superClass&&(this.match(47)||this.match(51))&&(e.superTypeParameters=this.tsParseTypeArgumentsInExpression()),this.eatContextual(113)&&(e.implements=this.tsParseHeritageClause("implements"))}parseObjPropValue(e,t,s,i,a,o,l){let c=this.tsTryParseTypeParameters(this.tsParseConstModifier);return c&&(e.typeParameters=c),super.parseObjPropValue(e,t,s,i,a,o,l)}parseFunctionParams(e,t){let s=this.tsTryParseTypeParameters(this.tsParseConstModifier);s&&(e.typeParameters=s),super.parseFunctionParams(e,t)}parseVarId(e,t){super.parseVarId(e,t),e.id.type==="Identifier"&&!this.hasPrecedingLineBreak()&&this.eat(35)&&(e.definite=!0);let s=this.tsTryParseTypeAnnotation();s&&(e.id.typeAnnotation=s,this.resetEndLocation(e.id))}parseAsyncArrowFromCallExpression(e,t){return this.match(14)&&(e.returnType=this.tsParseTypeAnnotation()),super.parseAsyncArrowFromCallExpression(e,t)}parseMaybeAssign(e,t){var s,i,a,o,l;let c,p,u;if(this.hasPlugin("jsx")&&(this.match(142)||this.match(47))){if(c=this.state.clone(),p=this.tryParse(()=>super.parseMaybeAssign(e,t),c),!p.error)return p.node;let{context:d}=this.state,g=d[d.length-1];(g===V.j_oTag||g===V.j_expr)&&d.pop()}if(!((s=p)!=null&&s.error)&&!this.match(47))return super.parseMaybeAssign(e,t);(!c||c===this.state)&&(c=this.state.clone());let f,m=this.tryParse(d=>{var g,h;f=this.tsParseTypeParameters(this.tsParseConstModifier);let v=super.parseMaybeAssign(e,t);return(v.type!=="ArrowFunctionExpression"||(g=v.extra)!=null&&g.parenthesized)&&d(),((h=f)==null?void 0:h.params.length)!==0&&this.resetStartLocationFromNode(v,f),v.typeParameters=f,v},c);if(!m.error&&!m.aborted)return f&&this.reportReservedArrowTypeParam(f),m.node;if(!p&&(Zr(!this.hasPlugin("jsx")),u=this.tryParse(()=>super.parseMaybeAssign(e,t),c),!u.error))return u.node;if((i=p)!=null&&i.node)return this.state=p.failState,p.node;if(m.node)return this.state=m.failState,f&&this.reportReservedArrowTypeParam(f),m.node;if((a=u)!=null&&a.node)return this.state=u.failState,u.node;throw((o=p)==null?void 0:o.error)||m.error||((l=u)==null?void 0:l.error)}reportReservedArrowTypeParam(e){var t;e.params.length===1&&!e.params[0].constraint&&!((t=e.extra)!=null&&t.trailingComma)&&this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(k.ReservedArrowTypeParam,e)}parseMaybeUnary(e,t){return!this.hasPlugin("jsx")&&this.match(47)?this.tsParseTypeAssertion():super.parseMaybeUnary(e,t)}parseArrow(e){if(this.match(14)){let t=this.tryParse(s=>{let i=this.tsParseTypeOrTypePredicateAnnotation(14);return(this.canInsertSemicolon()||!this.match(19))&&s(),i});if(t.aborted)return;t.thrown||(t.error&&(this.state=t.failState),e.returnType=t.node)}return super.parseArrow(e)}parseAssignableListItemTypes(e,t){if(!(t&2))return e;this.eat(17)&&(e.optional=!0);let s=this.tsTryParseTypeAnnotation();return s&&(e.typeAnnotation=s),this.resetEndLocation(e),e}isAssignable(e,t){switch(e.type){case"TSTypeCastExpression":return this.isAssignable(e.expression,t);case"TSParameterProperty":return!0;default:return super.isAssignable(e,t)}}toAssignable(e,t=!1){switch(e.type){case"ParenthesizedExpression":this.toAssignableParenthesizedExpression(e,t);break;case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":t?this.expressionScope.recordArrowParameterBindingError(k.UnexpectedTypeCastInParameter,e):this.raise(k.UnexpectedTypeCastInParameter,e),this.toAssignable(e.expression,t);break;case"AssignmentExpression":!t&&e.left.type==="TSTypeCastExpression"&&(e.left=this.typeCastToParameter(e.left));default:super.toAssignable(e,t)}}toAssignableParenthesizedExpression(e,t){switch(e.expression.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":case"ParenthesizedExpression":this.toAssignable(e.expression,t);break;default:super.toAssignable(e,t)}}checkToRestConversion(e,t){switch(e.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":this.checkToRestConversion(e.expression,!1);break;default:super.checkToRestConversion(e,t)}}isValidLVal(e,t,s){return yl({TSTypeCastExpression:!0,TSParameterProperty:"parameter",TSNonNullExpression:"expression",TSAsExpression:(s!==64||!t)&&["expression",!0],TSSatisfiesExpression:(s!==64||!t)&&["expression",!0],TSTypeAssertion:(s!==64||!t)&&["expression",!0]},e)||super.isValidLVal(e,t,s)}parseBindingAtom(){return this.state.type===78?this.parseIdentifier(!0):super.parseBindingAtom()}parseMaybeDecoratorArguments(e){if(this.match(47)||this.match(51)){let t=this.tsParseTypeArgumentsInExpression();if(this.match(10)){let s=super.parseMaybeDecoratorArguments(e);return s.typeParameters=t,s}this.unexpected(null,10)}return super.parseMaybeDecoratorArguments(e)}checkCommaAfterRest(e){return this.state.isAmbientContext&&this.match(12)&&this.lookaheadCharCode()===e?(this.next(),!1):super.checkCommaAfterRest(e)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(35)||this.match(14)||super.isClassProperty()}parseMaybeDefault(e,t){let s=super.parseMaybeDefault(e,t);return s.type==="AssignmentPattern"&&s.typeAnnotation&&s.right.start<s.typeAnnotation.start&&this.raise(k.TypeAnnotationAfterAssign,s.typeAnnotation),s}getTokenFromCode(e){if(this.state.inType){if(e===62){this.finishOp(48,1);return}if(e===60){this.finishOp(47,1);return}}super.getTokenFromCode(e)}reScan_lt_gt(){let{type:e}=this.state;e===47?(this.state.pos-=1,this.readToken_lt()):e===48&&(this.state.pos-=1,this.readToken_gt())}reScan_lt(){let{type:e}=this.state;return e===51?(this.state.pos-=2,this.finishOp(47,1),47):e}toAssignableList(e,t,s){for(let i=0;i<e.length;i++){let a=e[i];a?.type==="TSTypeCastExpression"&&(e[i]=this.typeCastToParameter(a))}super.toAssignableList(e,t,s)}typeCastToParameter(e){return e.expression.typeAnnotation=e.typeAnnotation,this.resetEndLocation(e.expression,e.typeAnnotation.loc.end),e.expression}shouldParseArrow(e){return this.match(14)?e.every(t=>this.isAssignable(t,!0)):super.shouldParseArrow(e)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}canHaveLeadingDecorator(){return super.canHaveLeadingDecorator()||this.isAbstractClass()}jsxParseOpeningElementAfterName(e){if(this.match(47)||this.match(51)){let t=this.tsTryParseAndCatch(()=>this.tsParseTypeArgumentsInExpression());t&&(e.typeParameters=t)}return super.jsxParseOpeningElementAfterName(e)}getGetterSetterExpectedParamCount(e){let t=super.getGetterSetterExpectedParamCount(e),i=this.getObjectOrClassMethodParams(e)[0];return i&&this.isThisParam(i)?t+1:t}parseCatchClauseParam(){let e=super.parseCatchClauseParam(),t=this.tsTryParseTypeAnnotation();return t&&(e.typeAnnotation=t,this.resetEndLocation(e)),e}tsInAmbientContext(e){let t=this.state.isAmbientContext;this.state.isAmbientContext=!0;try{return e()}finally{this.state.isAmbientContext=t}}parseClass(e,t,s){let i=this.state.inAbstractClass;this.state.inAbstractClass=!!e.abstract;try{return super.parseClass(e,t,s)}finally{this.state.inAbstractClass=i}}tsParseAbstractDeclaration(e,t){if(this.match(80))return e.abstract=!0,this.maybeTakeDecorators(t,this.parseClass(e,!0,!1));if(this.isContextual(129)){if(!this.hasFollowingLineBreak())return e.abstract=!0,this.raise(k.NonClassMethodPropertyHasAbstractModifer,e),this.tsParseInterfaceDeclaration(e)}else this.unexpected(null,80)}parseMethod(e,t,s,i,a,o,l){let c=super.parseMethod(e,t,s,i,a,o,l);if(c.abstract&&(this.hasPlugin("estree")?!!c.value.body:!!c.body)){let{key:u}=c;this.raise(k.AbstractMethodHasImplementation,c,{methodName:u.type==="Identifier"&&!c.computed?u.name:`[${this.input.slice(u.start,u.end)}]`})}return c}tsParseTypeParameterName(){return this.parseIdentifier().name}shouldParseAsAmbientContext(){return!!this.getPluginOption("typescript","dts")}parse(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),super.parse()}getExpression(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),super.getExpression()}parseExportSpecifier(e,t,s,i){return!t&&i?(this.parseTypeOnlyImportExportSpecifier(e,!1,s),this.finishNode(e,"ExportSpecifier")):(e.exportKind="value",super.parseExportSpecifier(e,t,s,i))}parseImportSpecifier(e,t,s,i,a){return!t&&i?(this.parseTypeOnlyImportExportSpecifier(e,!0,s),this.finishNode(e,"ImportSpecifier")):(e.importKind="value",super.parseImportSpecifier(e,t,s,i,s?4098:4096))}parseTypeOnlyImportExportSpecifier(e,t,s){let i=t?"imported":"local",a=t?"local":"exported",o=e[i],l,c=!1,p=!0,u=o.loc.start;if(this.isContextual(93)){let m=this.parseIdentifier();if(this.isContextual(93)){let d=this.parseIdentifier();xe(this.state.type)?(c=!0,o=m,l=t?this.parseIdentifier():this.parseModuleExportName(),p=!1):(l=d,p=!1)}else xe(this.state.type)?(p=!1,l=t?this.parseIdentifier():this.parseModuleExportName()):(c=!0,o=m)}else xe(this.state.type)&&(c=!0,t?(o=this.parseIdentifier(!0),this.isContextual(93)||this.checkReservedWord(o.name,o.loc.start,!0,!0)):o=this.parseModuleExportName());c&&s&&this.raise(t?k.TypeModifierIsUsedInTypeImports:k.TypeModifierIsUsedInTypeExports,u),e[i]=o,e[a]=l;let f=t?"importKind":"exportKind";e[f]=c?"type":"value",p&&this.eatContextual(93)&&(e[a]=t?this.parseIdentifier():this.parseModuleExportName()),e[a]||(e[a]=Be(e[i])),t&&this.checkIdentifier(e[a],c?4098:4096)}};function wl(r){if(r.type!=="MemberExpression")return!1;let{computed:n,property:e}=r;return n&&e.type!=="StringLiteral"&&(e.type!=="TemplateLiteral"||e.expressions.length>0)?!1:Pi(r.object)}function Cl(r,n){var e;let{type:t}=r;if((e=r.extra)!=null&&e.parenthesized)return!1;if(n){if(t==="Literal"){let{value:s}=r;if(typeof s=="string"||typeof s=="boolean")return!0}}else if(t==="StringLiteral"||t==="BooleanLiteral")return!0;return!!(xi(r,n)||Sl(r,n)||t==="TemplateLiteral"&&r.expressions.length===0||wl(r))}function xi(r,n){return n?r.type==="Literal"&&(typeof r.value=="number"||"bigint"in r):r.type==="NumericLiteral"||r.type==="BigIntLiteral"}function Sl(r,n){if(r.type==="UnaryExpression"){let{operator:e,argument:t}=r;if(e==="-"&&xi(t,n))return!0}return!1}function Pi(r){return r.type==="Identifier"?!0:r.type!=="MemberExpression"||r.computed?!1:Pi(r.object)}var ti=Re`placeholders`({ClassNameIsRequired:"A class name is required.",UnexpectedSpace:"Unexpected space in placeholder."}),Il=r=>class extends r{parsePlaceholder(e){if(this.match(144)){let t=this.startNode();return this.next(),this.assertNoSpace(),t.name=super.parseIdentifier(!0),this.assertNoSpace(),this.expect(144),this.finishPlaceholder(t,e)}}finishPlaceholder(e,t){let s=!!(e.expectedNode&&e.type==="Placeholder");return e.expectedNode=t,s?e:this.finishNode(e,"Placeholder")}getTokenFromCode(e){e===37&&this.input.charCodeAt(this.state.pos+1)===37?this.finishOp(144,2):super.getTokenFromCode(e)}parseExprAtom(e){return this.parsePlaceholder("Expression")||super.parseExprAtom(e)}parseIdentifier(e){return this.parsePlaceholder("Identifier")||super.parseIdentifier(e)}checkReservedWord(e,t,s,i){e!==void 0&&super.checkReservedWord(e,t,s,i)}parseBindingAtom(){return this.parsePlaceholder("Pattern")||super.parseBindingAtom()}isValidLVal(e,t,s){return e==="Placeholder"||super.isValidLVal(e,t,s)}toAssignable(e,t){e&&e.type==="Placeholder"&&e.expectedNode==="Expression"?e.expectedNode="Pattern":super.toAssignable(e,t)}chStartsBindingIdentifier(e,t){return!!(super.chStartsBindingIdentifier(e,t)||this.lookahead().type===144)}verifyBreakContinue(e,t){e.label&&e.label.type==="Placeholder"||super.verifyBreakContinue(e,t)}parseExpressionStatement(e,t){var s;if(t.type!=="Placeholder"||(s=t.extra)!=null&&s.parenthesized)return super.parseExpressionStatement(e,t);if(this.match(14)){let i=e;return i.label=this.finishPlaceholder(t,"Identifier"),this.next(),i.body=super.parseStatementOrSloppyAnnexBFunctionDeclaration(),this.finishNode(i,"LabeledStatement")}return this.semicolon(),e.name=t.name,this.finishPlaceholder(e,"Statement")}parseBlock(e,t,s){return this.parsePlaceholder("BlockStatement")||super.parseBlock(e,t,s)}parseFunctionId(e){return this.parsePlaceholder("Identifier")||super.parseFunctionId(e)}parseClass(e,t,s){let i=t?"ClassDeclaration":"ClassExpression";this.next();let a=this.state.strict,o=this.parsePlaceholder("Identifier");if(o)if(this.match(81)||this.match(144)||this.match(5))e.id=o;else{if(s||!t)return e.id=null,e.body=this.finishPlaceholder(o,"ClassBody"),this.finishNode(e,i);throw this.raise(ti.ClassNameIsRequired,this.state.startLoc)}else this.parseClassId(e,t,s);return super.parseClassSuper(e),e.body=this.parsePlaceholder("ClassBody")||super.parseClassBody(!!e.superClass,a),this.finishNode(e,i)}parseExport(e,t){let s=this.parsePlaceholder("Identifier");if(!s)return super.parseExport(e,t);if(!this.isContextual(98)&&!this.match(12))return e.specifiers=[],e.source=null,e.declaration=this.finishPlaceholder(s,"Declaration"),this.finishNode(e,"ExportNamedDeclaration");this.expectPlugin("exportDefaultFrom");let i=this.startNode();return i.exported=s,e.specifiers=[this.finishNode(i,"ExportDefaultSpecifier")],super.parseExport(e,t)}isExportDefaultSpecifier(){if(this.match(65)){let e=this.nextTokenStart();if(this.isUnparsedContextual(e,"from")&&this.input.startsWith(He(144),this.nextTokenStartSince(e+4)))return!0}return super.isExportDefaultSpecifier()}maybeParseExportDefaultSpecifier(e,t){var s;return(s=e.specifiers)!=null&&s.length?!0:super.maybeParseExportDefaultSpecifier(e,t)}checkExport(e){let{specifiers:t}=e;t!=null&&t.length&&(e.specifiers=t.filter(s=>s.exported.type==="Placeholder")),super.checkExport(e),e.specifiers=t}parseImport(e){let t=this.parsePlaceholder("Identifier");if(!t)return super.parseImport(e);if(e.specifiers=[],!this.isContextual(98)&&!this.match(12))return e.source=this.finishPlaceholder(t,"StringLiteral"),this.semicolon(),this.finishNode(e,"ImportDeclaration");let s=this.startNodeAtNode(t);return s.local=t,e.specifiers.push(this.finishNode(s,"ImportDefaultSpecifier")),this.eat(12)&&(this.maybeParseStarImportSpecifier(e)||this.parseNamedImportSpecifiers(e)),this.expectContextual(98),e.source=this.parseImportSource(),this.semicolon(),this.finishNode(e,"ImportDeclaration")}parseImportSource(){return this.parsePlaceholder("StringLiteral")||super.parseImportSource()}assertNoSpace(){this.state.start>this.state.lastTokEndLoc.index&&this.raise(ti.UnexpectedSpace,this.state.lastTokEndLoc)}},El=r=>class extends r{parseV8Intrinsic(){if(this.match(54)){let e=this.state.startLoc,t=this.startNode();if(this.next(),B(this.state.type)){let s=this.parseIdentifierName(),i=this.createIdentifier(t,s);if(i.type="V8IntrinsicIdentifier",this.match(10))return i}this.unexpected(e)}}parseExprAtom(e){return this.parseV8Intrinsic()||super.parseExprAtom(e)}};function Y(r,n){let[e,t]=typeof n=="string"?[n,{}]:n,s=Object.keys(t),i=s.length===0;return r.some(a=>{if(typeof a=="string")return i&&a===e;{let[o,l]=a;if(o!==e)return!1;for(let c of s)if(l[c]!==t[c])return!1;return!0}})}function qe(r,n,e){let t=r.find(s=>Array.isArray(s)?s[0]===n:s===n);return t&&Array.isArray(t)&&t.length>1?t[1][e]:null}var ni=["minimal","fsharp","hack","smart"],si=["^^","@@","^","%","#"],ri=["hash","bar"];function Al(r){if(Y(r,"decorators")){if(Y(r,"decorators-legacy"))throw new Error("Cannot use the decorators and decorators-legacy plugin together");let n=qe(r,"decorators","decoratorsBeforeExport");if(n!=null&&typeof n!="boolean")throw new Error("'decoratorsBeforeExport' must be a boolean, if specified.");let e=qe(r,"decorators","allowCallParenthesized");if(e!=null&&typeof e!="boolean")throw new Error("'allowCallParenthesized' must be a boolean.")}if(Y(r,"flow")&&Y(r,"typescript"))throw new Error("Cannot combine flow and typescript plugins.");if(Y(r,"placeholders")&&Y(r,"v8intrinsic"))throw new Error("Cannot combine placeholders and v8intrinsic plugins.");if(Y(r,"pipelineOperator")){let n=qe(r,"pipelineOperator","proposal");if(!ni.includes(n)){let t=ni.map(s=>`"${s}"`).join(", ");throw new Error(`"pipelineOperator" requires "proposal" option whose value must be one of: ${t}.`)}let e=Y(r,["recordAndTuple",{syntaxType:"hash"}]);if(n==="hack"){if(Y(r,"placeholders"))throw new Error("Cannot combine placeholders plugin and Hack-style pipes.");if(Y(r,"v8intrinsic"))throw new Error("Cannot combine v8intrinsic plugin and Hack-style pipes.");let t=qe(r,"pipelineOperator","topicToken");if(!si.includes(t)){let s=si.map(i=>`"${i}"`).join(", ");throw new Error(`"pipelineOperator" in "proposal": "hack" mode also requires a "topicToken" option whose value must be one of: ${s}.`)}if(t==="#"&&e)throw new Error('Plugin conflict between `["pipelineOperator", { proposal: "hack", topicToken: "#" }]` and `["recordAndtuple", { syntaxType: "hash"}]`.')}else if(n==="smart"&&e)throw new Error('Plugin conflict between `["pipelineOperator", { proposal: "smart" }]` and `["recordAndtuple", { syntaxType: "hash"}]`.')}if(Y(r,"moduleAttributes")){if(Y(r,"importAssertions")||Y(r,"importAttributes"))throw new Error("Cannot combine importAssertions, importAttributes and moduleAttributes plugins.");if(qe(r,"moduleAttributes","version")!=="may-2020")throw new Error("The 'moduleAttributes' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is 'may-2020'.")}if(Y(r,"importAssertions")&&Y(r,"importAttributes"))throw new Error("Cannot combine importAssertions and importAttributes plugins.");if(Y(r,"recordAndTuple")&&qe(r,"recordAndTuple","syntaxType")!=null&&!ri.includes(qe(r,"recordAndTuple","syntaxType")))throw new Error("The 'syntaxType' option of the 'recordAndTuple' plugin must be one of: "+ri.map(n=>`'${n}'`).join(", "));if(Y(r,"asyncDoExpressions")&&!Y(r,"doExpressions")){let n=new Error("'asyncDoExpressions' requires 'doExpressions', please add 'doExpressions' to parser plugins.");throw n.missingPlugins="doExpressions",n}if(Y(r,"optionalChainingAssign")&&qe(r,"optionalChainingAssign","version")!=="2023-07")throw new Error("The 'optionalChainingAssign' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is '2023-07'.")}var Ti={estree:ko,jsx:bl,flow:hl,typescript:Tl,v8intrinsic:El,placeholders:Il},kl=Object.keys(Ti),ds={sourceType:"script",sourceFilename:void 0,startColumn:0,startLine:1,allowAwaitOutsideFunction:!1,allowReturnOutsideFunction:!1,allowNewTargetOutsideFunction:!1,allowImportExportEverywhere:!1,allowSuperOutsideMethod:!1,allowUndeclaredExports:!1,plugins:[],strictMode:null,ranges:!1,tokens:!1,createImportExpressions:!1,createParenthesizedExpressions:!1,errorRecovery:!1,attachComment:!0,annexB:!0};function Nl(r){if(r==null)return Object.assign({},ds);if(r.annexB!=null&&r.annexB!==!1)throw new Error("The `annexB` option can only be set to `false`.");let n={};for(let t of Object.keys(ds)){var e;n[t]=(e=r[t])!=null?e:ds[t]}return n}var Ls=class extends Ms{checkProto(n,e,t,s){if(n.type==="SpreadElement"||this.isObjectMethod(n)||n.computed||n.shorthand)return;let i=n.key;if((i.type==="Identifier"?i.name:i.value)==="__proto__"){if(e){this.raise(b.RecordNoProto,i);return}t.used&&(s?s.doubleProtoLoc===null&&(s.doubleProtoLoc=i.loc.start):this.raise(b.DuplicateProto,i)),t.used=!0}}shouldExitDescending(n,e){return n.type==="ArrowFunctionExpression"&&n.start===e}getExpression(){this.enterInitialScopes(),this.nextToken();let n=this.parseExpression();return this.match(139)||this.unexpected(),this.finalizeRemainingComments(),n.comments=this.comments,n.errors=this.state.errors,this.options.tokens&&(n.tokens=this.tokens),n}parseExpression(n,e){return n?this.disallowInAnd(()=>this.parseExpressionBase(e)):this.allowInAnd(()=>this.parseExpressionBase(e))}parseExpressionBase(n){let e=this.state.startLoc,t=this.parseMaybeAssign(n);if(this.match(12)){let s=this.startNodeAt(e);for(s.expressions=[t];this.eat(12);)s.expressions.push(this.parseMaybeAssign(n));return this.toReferencedList(s.expressions),this.finishNode(s,"SequenceExpression")}return t}parseMaybeAssignDisallowIn(n,e){return this.disallowInAnd(()=>this.parseMaybeAssign(n,e))}parseMaybeAssignAllowIn(n,e){return this.allowInAnd(()=>this.parseMaybeAssign(n,e))}setOptionalParametersError(n,e){var t;n.optionalParametersLoc=(t=e?.loc)!=null?t:this.state.startLoc}parseMaybeAssign(n,e){let t=this.state.startLoc;if(this.isContextual(108)&&this.prodParam.hasYield){let o=this.parseYield();return e&&(o=e.call(this,o,t)),o}let s;n?s=!1:(n=new ut,s=!0);let{type:i}=this.state;(i===10||B(i))&&(this.state.potentialArrowAt=this.state.start);let a=this.parseMaybeConditional(n);if(e&&(a=e.call(this,a,t)),Oo(this.state.type)){let o=this.startNodeAt(t),l=this.state.value;if(o.operator=l,this.match(29)){this.toAssignable(a,!0),o.left=a;let c=t.index;n.doubleProtoLoc!=null&&n.doubleProtoLoc.index>=c&&(n.doubleProtoLoc=null),n.shorthandAssignLoc!=null&&n.shorthandAssignLoc.index>=c&&(n.shorthandAssignLoc=null),n.privateKeyLoc!=null&&n.privateKeyLoc.index>=c&&(this.checkDestructuringPrivate(n),n.privateKeyLoc=null)}else o.left=a;return this.next(),o.right=this.parseMaybeAssign(),this.checkLVal(a,{in:this.finishNode(o,"AssignmentExpression")}),o}else s&&this.checkExpressionErrors(n,!0);return a}parseMaybeConditional(n){let e=this.state.startLoc,t=this.state.potentialArrowAt,s=this.parseExprOps(n);return this.shouldExitDescending(s,t)?s:this.parseConditional(s,e,n)}parseConditional(n,e,t){if(this.eat(17)){let s=this.startNodeAt(e);return s.test=n,s.consequent=this.parseMaybeAssignAllowIn(),this.expect(14),s.alternate=this.parseMaybeAssign(),this.finishNode(s,"ConditionalExpression")}return n}parseMaybeUnaryOrPrivate(n){return this.match(138)?this.parsePrivateName():this.parseMaybeUnary(n)}parseExprOps(n){let e=this.state.startLoc,t=this.state.potentialArrowAt,s=this.parseMaybeUnaryOrPrivate(n);return this.shouldExitDescending(s,t)?s:this.parseExprOp(s,e,-1)}parseExprOp(n,e,t){if(this.isPrivateName(n)){let i=this.getPrivateNameSV(n);(t>=mn(58)||!this.prodParam.hasIn||!this.match(58))&&this.raise(b.PrivateInExpectedIn,n,{identifierName:i}),this.classScope.usePrivateName(i,n.loc.start)}let s=this.state.type;if(Uo(s)&&(this.prodParam.hasIn||!this.match(58))){let i=mn(s);if(i>t){if(s===39){if(this.expectPlugin("pipelineOperator"),this.state.inFSharpPipelineDirectBody)return n;this.checkPipelineAtInfixOperator(n,e)}let a=this.startNodeAt(e);a.left=n,a.operator=this.state.value;let o=s===41||s===42,l=s===40;if(l&&(i=mn(42)),this.next(),s===39&&this.hasPlugin(["pipelineOperator",{proposal:"minimal"}])&&this.state.type===96&&this.prodParam.hasAwait)throw this.raise(b.UnexpectedAwaitAfterPipelineBody,this.state.startLoc);a.right=this.parseExprOpRightExpr(s,i);let c=this.finishNode(a,o||l?"LogicalExpression":"BinaryExpression"),p=this.state.type;if(l&&(p===41||p===42)||o&&p===40)throw this.raise(b.MixingCoalesceWithLogical,this.state.startLoc);return this.parseExprOp(c,e,t)}}return n}parseExprOpRightExpr(n,e){let t=this.state.startLoc;switch(n){case 39:switch(this.getPluginOption("pipelineOperator","proposal")){case"hack":return this.withTopicBindingContext(()=>this.parseHackPipeBody());case"smart":return this.withTopicBindingContext(()=>{if(this.prodParam.hasYield&&this.isContextual(108))throw this.raise(b.PipeBodyIsTighter,this.state.startLoc);return this.parseSmartPipelineBodyInStyle(this.parseExprOpBaseRightExpr(n,e),t)});case"fsharp":return this.withSoloAwaitPermittingContext(()=>this.parseFSharpPipelineBody(e))}default:return this.parseExprOpBaseRightExpr(n,e)}}parseExprOpBaseRightExpr(n,e){let t=this.state.startLoc;return this.parseExprOp(this.parseMaybeUnaryOrPrivate(),t,Vo(n)?e-1:e)}parseHackPipeBody(){var n;let{startLoc:e}=this.state,t=this.parseMaybeAssign();return wo.has(t.type)&&!((n=t.extra)!=null&&n.parenthesized)&&this.raise(b.PipeUnparenthesizedBody,e,{type:t.type}),this.topicReferenceWasUsedInCurrentContext()||this.raise(b.PipeTopicUnused,e),t}checkExponentialAfterUnary(n){this.match(57)&&this.raise(b.UnexpectedTokenUnaryExponentiation,n.argument)}parseMaybeUnary(n,e){let t=this.state.startLoc,s=this.isContextual(96);if(s&&this.isAwaitAllowed()){this.next();let l=this.parseAwait(t);return e||this.checkExponentialAfterUnary(l),l}let i=this.match(34),a=this.startNode();if(Ro(this.state.type)){a.operator=this.state.value,a.prefix=!0,this.match(72)&&this.expectPlugin("throwExpressions");let l=this.match(89);if(this.next(),a.argument=this.parseMaybeUnary(null,!0),this.checkExpressionErrors(n,!0),this.state.strict&&l){let c=a.argument;c.type==="Identifier"?this.raise(b.StrictDelete,a):this.hasPropertyAsPrivateName(c)&&this.raise(b.DeletePrivateField,a)}if(!i)return e||this.checkExponentialAfterUnary(a),this.finishNode(a,"UnaryExpression")}let o=this.parseUpdate(a,i,n);if(s){let{type:l}=this.state;if((this.hasPlugin("v8intrinsic")?ms(l):ms(l)&&!this.match(54))&&!this.isAmbiguousAwait())return this.raiseOverwrite(b.AwaitNotInAsyncContext,t),this.parseAwait(t)}return o}parseUpdate(n,e,t){if(e){let a=n;return this.checkLVal(a.argument,{in:this.finishNode(a,"UpdateExpression")}),n}let s=this.state.startLoc,i=this.parseExprSubscripts(t);if(this.checkExpressionErrors(t,!1))return i;for(;_o(this.state.type)&&!this.canInsertSemicolon();){let a=this.startNodeAt(s);a.operator=this.state.value,a.prefix=!1,a.argument=i,this.next(),this.checkLVal(i,{in:i=this.finishNode(a,"UpdateExpression")})}return i}parseExprSubscripts(n){let e=this.state.startLoc,t=this.state.potentialArrowAt,s=this.parseExprAtom(n);return this.shouldExitDescending(s,t)?s:this.parseSubscripts(s,e)}parseSubscripts(n,e,t){let s={optionalChainMember:!1,maybeAsyncArrow:this.atPossibleAsyncArrow(n),stop:!1};do n=this.parseSubscript(n,e,t,s),s.maybeAsyncArrow=!1;while(!s.stop);return n}parseSubscript(n,e,t,s){let{type:i}=this.state;if(!t&&i===15)return this.parseBind(n,e,t,s);if(vn(i))return this.parseTaggedTemplateExpression(n,e,s);let a=!1;if(i===18){if(t&&(this.raise(b.OptionalChainingNoNew,this.state.startLoc),this.lookaheadCharCode()===40))return s.stop=!0,n;s.optionalChainMember=a=!0,this.next()}if(!t&&this.match(10))return this.parseCoverCallAndAsyncArrowHead(n,e,s,a);{let o=this.eat(0);return o||a||this.eat(16)?this.parseMember(n,e,s,o,a):(s.stop=!0,n)}}parseMember(n,e,t,s,i){let a=this.startNodeAt(e);return a.object=n,a.computed=s,s?(a.property=this.parseExpression(),this.expect(3)):this.match(138)?(n.type==="Super"&&this.raise(b.SuperPrivateField,e),this.classScope.usePrivateName(this.state.value,this.state.startLoc),a.property=this.parsePrivateName()):a.property=this.parseIdentifier(!0),t.optionalChainMember?(a.optional=i,this.finishNode(a,"OptionalMemberExpression")):this.finishNode(a,"MemberExpression")}parseBind(n,e,t,s){let i=this.startNodeAt(e);return i.object=n,this.next(),i.callee=this.parseNoCallExpr(),s.stop=!0,this.parseSubscripts(this.finishNode(i,"BindExpression"),e,t)}parseCoverCallAndAsyncArrowHead(n,e,t,s){let i=this.state.maybeInArrowParameters,a=null;this.state.maybeInArrowParameters=!0,this.next();let o=this.startNodeAt(e);o.callee=n;let{maybeAsyncArrow:l,optionalChainMember:c}=t;l&&(this.expressionScope.enter(al()),a=new ut),c&&(o.optional=s),s?o.arguments=this.parseCallExpressionArguments(11):o.arguments=this.parseCallExpressionArguments(11,n.type==="Import",n.type!=="Super",o,a);let p=this.finishCallExpression(o,c);return l&&this.shouldParseAsyncArrow()&&!s?(t.stop=!0,this.checkDestructuringPrivate(a),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),p=this.parseAsyncArrowFromCallExpression(this.startNodeAt(e),p)):(l&&(this.checkExpressionErrors(a,!0),this.expressionScope.exit()),this.toReferencedArguments(p)),this.state.maybeInArrowParameters=i,p}toReferencedArguments(n,e){this.toReferencedListDeep(n.arguments,e)}parseTaggedTemplateExpression(n,e,t){let s=this.startNodeAt(e);return s.tag=n,s.quasi=this.parseTemplate(!0),t.optionalChainMember&&this.raise(b.OptionalChainingNoTemplate,e),this.finishNode(s,"TaggedTemplateExpression")}atPossibleAsyncArrow(n){return n.type==="Identifier"&&n.name==="async"&&this.state.lastTokEndLoc.index===n.end&&!this.canInsertSemicolon()&&n.end-n.start===5&&n.start===this.state.potentialArrowAt}expectImportAttributesPlugin(){this.hasPlugin("importAssertions")||this.expectPlugin("importAttributes")}finishCallExpression(n,e){if(n.callee.type==="Import")if(n.arguments.length===2&&(this.hasPlugin("moduleAttributes")||this.expectImportAttributesPlugin()),n.arguments.length===0||n.arguments.length>2)this.raise(b.ImportCallArity,n,{maxArgumentCount:this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions")||this.hasPlugin("moduleAttributes")?2:1});else for(let t of n.arguments)t.type==="SpreadElement"&&this.raise(b.ImportCallSpreadArgument,t);return this.finishNode(n,e?"OptionalCallExpression":"CallExpression")}parseCallExpressionArguments(n,e,t,s,i){let a=[],o=!0,l=this.state.inFSharpPipelineDirectBody;for(this.state.inFSharpPipelineDirectBody=!1;!this.eat(n);){if(o)o=!1;else if(this.expect(12),this.match(n)){e&&!this.hasPlugin("importAttributes")&&!this.hasPlugin("importAssertions")&&!this.hasPlugin("moduleAttributes")&&this.raise(b.ImportCallArgumentTrailingComma,this.state.lastTokStartLoc),s&&this.addTrailingCommaExtraToNode(s),this.next();break}a.push(this.parseExprListItem(!1,i,t))}return this.state.inFSharpPipelineDirectBody=l,a}shouldParseAsyncArrow(){return this.match(19)&&!this.canInsertSemicolon()}parseAsyncArrowFromCallExpression(n,e){var t;return this.resetPreviousNodeTrailingComments(e),this.expect(19),this.parseArrowExpression(n,e.arguments,!0,(t=e.extra)==null?void 0:t.trailingCommaLoc),e.innerComments&&Vt(n,e.innerComments),e.callee.trailingComments&&Vt(n,e.callee.trailingComments),n}parseNoCallExpr(){let n=this.state.startLoc;return this.parseSubscripts(this.parseExprAtom(),n,!0)}parseExprAtom(n){let e,t=null,{type:s}=this.state;switch(s){case 79:return this.parseSuper();case 83:return e=this.startNode(),this.next(),this.match(16)?this.parseImportMetaProperty(e):this.match(10)?this.options.createImportExpressions?this.parseImportCall(e):this.finishNode(e,"Import"):(this.raise(b.UnsupportedImport,this.state.lastTokStartLoc),this.finishNode(e,"Import"));case 78:return e=this.startNode(),this.next(),this.finishNode(e,"ThisExpression");case 90:return this.parseDo(this.startNode(),!1);case 56:case 31:return this.readRegexp(),this.parseRegExpLiteral(this.state.value);case 134:return this.parseNumericLiteral(this.state.value);case 135:return this.parseBigIntLiteral(this.state.value);case 136:return this.parseDecimalLiteral(this.state.value);case 133:return this.parseStringLiteral(this.state.value);case 84:return this.parseNullLiteral();case 85:return this.parseBooleanLiteral(!0);case 86:return this.parseBooleanLiteral(!1);case 10:{let i=this.state.potentialArrowAt===this.state.start;return this.parseParenAndDistinguishExpression(i)}case 2:case 1:return this.parseArrayLike(this.state.type===2?4:3,!1,!0);case 0:return this.parseArrayLike(3,!0,!1,n);case 6:case 7:return this.parseObjectLike(this.state.type===6?9:8,!1,!0);case 5:return this.parseObjectLike(8,!1,!1,n);case 68:return this.parseFunctionOrFunctionSent();case 26:t=this.parseDecorators();case 80:return this.parseClass(this.maybeTakeDecorators(t,this.startNode()),!1);case 77:return this.parseNewOrNewTarget();case 25:case 24:return this.parseTemplate(!1);case 15:{e=this.startNode(),this.next(),e.object=null;let i=e.callee=this.parseNoCallExpr();if(i.type==="MemberExpression")return this.finishNode(e,"BindExpression");throw this.raise(b.UnsupportedBind,i)}case 138:return this.raise(b.PrivateInExpectedIn,this.state.startLoc,{identifierName:this.state.value}),this.parsePrivateName();case 33:return this.parseTopicReferenceThenEqualsSign(54,"%");case 32:return this.parseTopicReferenceThenEqualsSign(44,"^");case 37:case 38:return this.parseTopicReference("hack");case 44:case 54:case 27:{let i=this.getPluginOption("pipelineOperator","proposal");if(i)return this.parseTopicReference(i);this.unexpected();break}case 47:{let i=this.input.codePointAt(this.nextTokenStart());_e(i)||i===62?this.expectOnePlugin(["jsx","flow","typescript"]):this.unexpected();break}default:if(B(s)){if(this.isContextual(127)&&this.lookaheadInLineCharCode()===123)return this.parseModuleExpression();let i=this.state.potentialArrowAt===this.state.start,a=this.state.containsEsc,o=this.parseIdentifier();if(!a&&o.name==="async"&&!this.canInsertSemicolon()){let{type:l}=this.state;if(l===68)return this.resetPreviousNodeTrailingComments(o),this.next(),this.parseAsyncFunctionExpression(this.startNodeAtNode(o));if(B(l))return this.lookaheadCharCode()===61?this.parseAsyncArrowUnaryFunction(this.startNodeAtNode(o)):o;if(l===90)return this.resetPreviousNodeTrailingComments(o),this.parseDo(this.startNodeAtNode(o),!0)}return i&&this.match(19)&&!this.canInsertSemicolon()?(this.next(),this.parseArrowExpression(this.startNodeAtNode(o),[o],!1)):o}else this.unexpected()}}parseTopicReferenceThenEqualsSign(n,e){let t=this.getPluginOption("pipelineOperator","proposal");if(t)return this.state.type=n,this.state.value=e,this.state.pos--,this.state.end--,this.state.endLoc=re(this.state.endLoc,-1),this.parseTopicReference(t);this.unexpected()}parseTopicReference(n){let e=this.startNode(),t=this.state.startLoc,s=this.state.type;return this.next(),this.finishTopicReference(e,t,n,s)}finishTopicReference(n,e,t,s){if(this.testTopicReferenceConfiguration(t,e,s)){let i=t==="smart"?"PipelinePrimaryTopicReference":"TopicReference";return this.topicReferenceIsAllowedInCurrentContext()||this.raise(t==="smart"?b.PrimaryTopicNotAllowed:b.PipeTopicUnbound,e),this.registerTopicReference(),this.finishNode(n,i)}else throw this.raise(b.PipeTopicUnconfiguredToken,e,{token:He(s)})}testTopicReferenceConfiguration(n,e,t){switch(n){case"hack":return this.hasPlugin(["pipelineOperator",{topicToken:He(t)}]);case"smart":return t===27;default:throw this.raise(b.PipeTopicRequiresHackPipes,e)}}parseAsyncArrowUnaryFunction(n){this.prodParam.enter(gn(!0,this.prodParam.hasYield));let e=[this.parseIdentifier()];return this.prodParam.exit(),this.hasPrecedingLineBreak()&&this.raise(b.LineTerminatorBeforeArrow,this.state.curPosition()),this.expect(19),this.parseArrowExpression(n,e,!0)}parseDo(n,e){this.expectPlugin("doExpressions"),e&&this.expectPlugin("asyncDoExpressions"),n.async=e,this.next();let t=this.state.labels;return this.state.labels=[],e?(this.prodParam.enter(2),n.body=this.parseBlock(),this.prodParam.exit()):n.body=this.parseBlock(),this.state.labels=t,this.finishNode(n,"DoExpression")}parseSuper(){let n=this.startNode();return this.next(),this.match(10)&&!this.scope.allowDirectSuper&&!this.options.allowSuperOutsideMethod?this.raise(b.SuperNotAllowed,n):!this.scope.allowSuper&&!this.options.allowSuperOutsideMethod&&this.raise(b.UnexpectedSuper,n),!this.match(10)&&!this.match(0)&&!this.match(16)&&this.raise(b.UnsupportedSuper,n),this.finishNode(n,"Super")}parsePrivateName(){let n=this.startNode(),e=this.startNodeAt(re(this.state.startLoc,1)),t=this.state.value;return this.next(),n.id=this.createIdentifier(e,t),this.finishNode(n,"PrivateName")}parseFunctionOrFunctionSent(){let n=this.startNode();if(this.next(),this.prodParam.hasYield&&this.match(16)){let e=this.createIdentifier(this.startNodeAtNode(n),"function");return this.next(),this.match(103)?this.expectPlugin("functionSent"):this.hasPlugin("functionSent")||this.unexpected(),this.parseMetaProperty(n,e,"sent")}return this.parseFunction(n)}parseMetaProperty(n,e,t){n.meta=e;let s=this.state.containsEsc;return n.property=this.parseIdentifier(!0),(n.property.name!==t||s)&&this.raise(b.UnsupportedMetaProperty,n.property,{target:e.name,onlyValidPropertyName:t}),this.finishNode(n,"MetaProperty")}parseImportMetaProperty(n){let e=this.createIdentifier(this.startNodeAtNode(n),"import");if(this.next(),this.isContextual(101))this.inModule||this.raise(b.ImportMetaOutsideModule,e),this.sawUnambiguousESM=!0;else if(this.isContextual(105)||this.isContextual(97)){let t=this.isContextual(105);if(t||this.unexpected(),this.expectPlugin(t?"sourcePhaseImports":"deferredImportEvaluation"),!this.options.createImportExpressions)throw this.raise(b.DynamicImportPhaseRequiresImportExpressions,this.state.startLoc,{phase:this.state.value});return this.next(),n.phase=t?"source":"defer",this.parseImportCall(n)}return this.parseMetaProperty(n,e,"meta")}parseLiteralAtNode(n,e,t){return this.addExtra(t,"rawValue",n),this.addExtra(t,"raw",this.input.slice(t.start,this.state.end)),t.value=n,this.next(),this.finishNode(t,e)}parseLiteral(n,e){let t=this.startNode();return this.parseLiteralAtNode(n,e,t)}parseStringLiteral(n){return this.parseLiteral(n,"StringLiteral")}parseNumericLiteral(n){return this.parseLiteral(n,"NumericLiteral")}parseBigIntLiteral(n){return this.parseLiteral(n,"BigIntLiteral")}parseDecimalLiteral(n){return this.parseLiteral(n,"DecimalLiteral")}parseRegExpLiteral(n){let e=this.parseLiteral(n.value,"RegExpLiteral");return e.pattern=n.pattern,e.flags=n.flags,e}parseBooleanLiteral(n){let e=this.startNode();return e.value=n,this.next(),this.finishNode(e,"BooleanLiteral")}parseNullLiteral(){let n=this.startNode();return this.next(),this.finishNode(n,"NullLiteral")}parseParenAndDistinguishExpression(n){let e=this.state.startLoc,t;this.next(),this.expressionScope.enter(il());let s=this.state.maybeInArrowParameters,i=this.state.inFSharpPipelineDirectBody;this.state.maybeInArrowParameters=!0,this.state.inFSharpPipelineDirectBody=!1;let a=this.state.startLoc,o=[],l=new ut,c=!0,p,u;for(;!this.match(11);){if(c)c=!1;else if(this.expect(12,l.optionalParametersLoc===null?null:l.optionalParametersLoc),this.match(11)){u=this.state.startLoc;break}if(this.match(21)){let d=this.state.startLoc;if(p=this.state.startLoc,o.push(this.parseParenItem(this.parseRestBinding(),d)),!this.checkCommaAfterRest(41))break}else o.push(this.parseMaybeAssignAllowIn(l,this.parseParenItem))}let f=this.state.lastTokEndLoc;this.expect(11),this.state.maybeInArrowParameters=s,this.state.inFSharpPipelineDirectBody=i;let m=this.startNodeAt(e);return n&&this.shouldParseArrow(o)&&(m=this.parseArrow(m))?(this.checkDestructuringPrivate(l),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),this.parseArrowExpression(m,o,!1),m):(this.expressionScope.exit(),o.length||this.unexpected(this.state.lastTokStartLoc),u&&this.unexpected(u),p&&this.unexpected(p),this.checkExpressionErrors(l,!0),this.toReferencedListDeep(o,!0),o.length>1?(t=this.startNodeAt(a),t.expressions=o,this.finishNode(t,"SequenceExpression"),this.resetEndLocation(t,f)):t=o[0],this.wrapParenthesis(e,t))}wrapParenthesis(n,e){if(!this.options.createParenthesizedExpressions)return this.addExtra(e,"parenthesized",!0),this.addExtra(e,"parenStart",n.index),this.takeSurroundingComments(e,n.index,this.state.lastTokEndLoc.index),e;let t=this.startNodeAt(n);return t.expression=e,this.finishNode(t,"ParenthesizedExpression")}shouldParseArrow(n){return!this.canInsertSemicolon()}parseArrow(n){if(this.eat(19))return n}parseParenItem(n,e){return n}parseNewOrNewTarget(){let n=this.startNode();if(this.next(),this.match(16)){let e=this.createIdentifier(this.startNodeAtNode(n),"new");this.next();let t=this.parseMetaProperty(n,e,"target");return!this.scope.inNonArrowFunction&&!this.scope.inClass&&!this.options.allowNewTargetOutsideFunction&&this.raise(b.UnexpectedNewTarget,t),t}return this.parseNew(n)}parseNew(n){if(this.parseNewCallee(n),this.eat(10)){let e=this.parseExprList(11);this.toReferencedList(e),n.arguments=e}else n.arguments=[];return this.finishNode(n,"NewExpression")}parseNewCallee(n){let e=this.match(83),t=this.parseNoCallExpr();n.callee=t,e&&(t.type==="Import"||t.type==="ImportExpression")&&this.raise(b.ImportCallNotNewExpression,t)}parseTemplateElement(n){let{start:e,startLoc:t,end:s,value:i}=this.state,a=e+1,o=this.startNodeAt(re(t,1));i===null&&(n||this.raise(b.InvalidEscapeSequenceTemplate,re(this.state.firstInvalidTemplateEscapePos,1)));let l=this.match(24),c=l?-1:-2,p=s+c;o.value={raw:this.input.slice(a,p).replace(/\r\n?/g,`
9
+ `),cooked:i===null?null:i.slice(1,c)},o.tail=l,this.next();let u=this.finishNode(o,"TemplateElement");return this.resetEndLocation(u,re(this.state.lastTokEndLoc,c)),u}parseTemplate(n){let e=this.startNode();e.expressions=[];let t=this.parseTemplateElement(n);for(e.quasis=[t];!t.tail;)e.expressions.push(this.parseTemplateSubstitution()),this.readTemplateContinuation(),e.quasis.push(t=this.parseTemplateElement(n));return this.finishNode(e,"TemplateLiteral")}parseTemplateSubstitution(){return this.parseExpression()}parseObjectLike(n,e,t,s){t&&this.expectPlugin("recordAndTuple");let i=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let a=Object.create(null),o=!0,l=this.startNode();for(l.properties=[],this.next();!this.match(n);){if(o)o=!1;else if(this.expect(12),this.match(n)){this.addTrailingCommaExtraToNode(l);break}let p;e?p=this.parseBindingProperty():(p=this.parsePropertyDefinition(s),this.checkProto(p,t,a,s)),t&&!this.isObjectProperty(p)&&p.type!=="SpreadElement"&&this.raise(b.InvalidRecordProperty,p),p.shorthand&&this.addExtra(p,"shorthand",!0),l.properties.push(p)}this.next(),this.state.inFSharpPipelineDirectBody=i;let c="ObjectExpression";return e?c="ObjectPattern":t&&(c="RecordExpression"),this.finishNode(l,c)}addTrailingCommaExtraToNode(n){this.addExtra(n,"trailingComma",this.state.lastTokStartLoc.index),this.addExtra(n,"trailingCommaLoc",this.state.lastTokStartLoc,!1)}maybeAsyncOrAccessorProp(n){return!n.computed&&n.key.type==="Identifier"&&(this.isLiteralPropertyName()||this.match(0)||this.match(55))}parsePropertyDefinition(n){let e=[];if(this.match(26))for(this.hasPlugin("decorators")&&this.raise(b.UnsupportedPropertyDecorator,this.state.startLoc);this.match(26);)e.push(this.parseDecorator());let t=this.startNode(),s=!1,i=!1,a;if(this.match(21))return e.length&&this.unexpected(),this.parseSpread();e.length&&(t.decorators=e,e=[]),t.method=!1,n&&(a=this.state.startLoc);let o=this.eat(55);this.parsePropertyNamePrefixOperator(t);let l=this.state.containsEsc,c=this.parsePropertyName(t,n);if(!o&&!l&&this.maybeAsyncOrAccessorProp(t)){let p=c.name;p==="async"&&!this.hasPrecedingLineBreak()&&(s=!0,this.resetPreviousNodeTrailingComments(c),o=this.eat(55),this.parsePropertyName(t)),(p==="get"||p==="set")&&(i=!0,this.resetPreviousNodeTrailingComments(c),t.kind=p,this.match(55)&&(o=!0,this.raise(b.AccessorIsGenerator,this.state.curPosition(),{kind:p}),this.next()),this.parsePropertyName(t))}return this.parseObjPropValue(t,a,o,s,!1,i,n)}getGetterSetterExpectedParamCount(n){return n.kind==="get"?0:1}getObjectOrClassMethodParams(n){return n.params}checkGetterSetterParams(n){var e;let t=this.getGetterSetterExpectedParamCount(n),s=this.getObjectOrClassMethodParams(n);s.length!==t&&this.raise(n.kind==="get"?b.BadGetterArity:b.BadSetterArity,n),n.kind==="set"&&((e=s[s.length-1])==null?void 0:e.type)==="RestElement"&&this.raise(b.BadSetterRestParameter,n)}parseObjectMethod(n,e,t,s,i){if(i){let a=this.parseMethod(n,e,!1,!1,!1,"ObjectMethod");return this.checkGetterSetterParams(a),a}if(t||e||this.match(10))return s&&this.unexpected(),n.kind="method",n.method=!0,this.parseMethod(n,e,t,!1,!1,"ObjectMethod")}parseObjectProperty(n,e,t,s){if(n.shorthand=!1,this.eat(14))return n.value=t?this.parseMaybeDefault(this.state.startLoc):this.parseMaybeAssignAllowIn(s),this.finishNode(n,"ObjectProperty");if(!n.computed&&n.key.type==="Identifier"){if(this.checkReservedWord(n.key.name,n.key.loc.start,!0,!1),t)n.value=this.parseMaybeDefault(e,Be(n.key));else if(this.match(29)){let i=this.state.startLoc;s!=null?s.shorthandAssignLoc===null&&(s.shorthandAssignLoc=i):this.raise(b.InvalidCoverInitializedName,i),n.value=this.parseMaybeDefault(e,Be(n.key))}else n.value=Be(n.key);return n.shorthand=!0,this.finishNode(n,"ObjectProperty")}}parseObjPropValue(n,e,t,s,i,a,o){let l=this.parseObjectMethod(n,t,s,i,a)||this.parseObjectProperty(n,e,i,o);return l||this.unexpected(),l}parsePropertyName(n,e){if(this.eat(0))n.computed=!0,n.key=this.parseMaybeAssignAllowIn(),this.expect(3);else{let{type:t,value:s}=this.state,i;if(xe(t))i=this.parseIdentifier(!0);else switch(t){case 134:i=this.parseNumericLiteral(s);break;case 133:i=this.parseStringLiteral(s);break;case 135:i=this.parseBigIntLiteral(s);break;case 136:i=this.parseDecimalLiteral(s);break;case 138:{let a=this.state.startLoc;e!=null?e.privateKeyLoc===null&&(e.privateKeyLoc=a):this.raise(b.UnexpectedPrivateField,a),i=this.parsePrivateName();break}default:this.unexpected()}n.key=i,t!==138&&(n.computed=!1)}return n.key}initFunction(n,e){n.id=null,n.generator=!1,n.async=e}parseMethod(n,e,t,s,i,a,o=!1){this.initFunction(n,t),n.generator=e,this.scope.enter(18|(o?64:0)|(i?32:0)),this.prodParam.enter(gn(t,n.generator)),this.parseFunctionParams(n,s);let l=this.parseFunctionBodyAndFinish(n,a,!0);return this.prodParam.exit(),this.scope.exit(),l}parseArrayLike(n,e,t,s){t&&this.expectPlugin("recordAndTuple");let i=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let a=this.startNode();return this.next(),a.elements=this.parseExprList(n,!t,s,a),this.state.inFSharpPipelineDirectBody=i,this.finishNode(a,t?"TupleExpression":"ArrayExpression")}parseArrowExpression(n,e,t,s){this.scope.enter(6);let i=gn(t,!1);!this.match(5)&&this.prodParam.hasIn&&(i|=8),this.prodParam.enter(i),this.initFunction(n,t);let a=this.state.maybeInArrowParameters;return e&&(this.state.maybeInArrowParameters=!0,this.setArrowFunctionParameters(n,e,s)),this.state.maybeInArrowParameters=!1,this.parseFunctionBody(n,!0),this.prodParam.exit(),this.scope.exit(),this.state.maybeInArrowParameters=a,this.finishNode(n,"ArrowFunctionExpression")}setArrowFunctionParameters(n,e,t){this.toAssignableList(e,t,!1),n.params=e}parseFunctionBodyAndFinish(n,e,t=!1){return this.parseFunctionBody(n,!1,t),this.finishNode(n,e)}parseFunctionBody(n,e,t=!1){let s=e&&!this.match(5);if(this.expressionScope.enter(yi()),s)n.body=this.parseMaybeAssign(),this.checkParams(n,!1,e,!1);else{let i=this.state.strict,a=this.state.labels;this.state.labels=[],this.prodParam.enter(this.prodParam.currentFlags()|4),n.body=this.parseBlock(!0,!1,o=>{let l=!this.isSimpleParamList(n.params);o&&l&&this.raise(b.IllegalLanguageModeDirective,(n.kind==="method"||n.kind==="constructor")&&n.key?n.key.loc.end:n);let c=!i&&this.state.strict;this.checkParams(n,!this.state.strict&&!e&&!t&&!l,e,c),this.state.strict&&n.id&&this.checkIdentifier(n.id,65,c)}),this.prodParam.exit(),this.state.labels=a}this.expressionScope.exit()}isSimpleParameter(n){return n.type==="Identifier"}isSimpleParamList(n){for(let e=0,t=n.length;e<t;e++)if(!this.isSimpleParameter(n[e]))return!1;return!0}checkParams(n,e,t,s=!0){let i=!e&&new Set,a={type:"FormalParameters"};for(let o of n.params)this.checkLVal(o,{in:a,binding:5,checkClashes:i,strictModeChanged:s})}parseExprList(n,e,t,s){let i=[],a=!0;for(;!this.eat(n);){if(a)a=!1;else if(this.expect(12),this.match(n)){s&&this.addTrailingCommaExtraToNode(s),this.next();break}i.push(this.parseExprListItem(e,t))}return i}parseExprListItem(n,e,t){let s;if(this.match(12))n||this.raise(b.UnexpectedToken,this.state.curPosition(),{unexpected:","}),s=null;else if(this.match(21)){let i=this.state.startLoc;s=this.parseParenItem(this.parseSpread(e),i)}else if(this.match(17)){this.expectPlugin("partialApplication"),t||this.raise(b.UnexpectedArgumentPlaceholder,this.state.startLoc);let i=this.startNode();this.next(),s=this.finishNode(i,"ArgumentPlaceholder")}else s=this.parseMaybeAssignAllowIn(e,this.parseParenItem);return s}parseIdentifier(n){let e=this.startNode(),t=this.parseIdentifierName(n);return this.createIdentifier(e,t)}createIdentifier(n,e){return n.name=e,n.loc.identifierName=e,this.finishNode(n,"Identifier")}parseIdentifierName(n){let e,{startLoc:t,type:s}=this.state;xe(s)?e=this.state.value:this.unexpected();let i=Mo(s);return n?i&&this.replaceToken(132):this.checkReservedWord(e,t,i,!1),this.next(),e}checkReservedWord(n,e,t,s){if(n.length>10||!Qo(n))return;if(t&&Ko(n)){this.raise(b.UnexpectedKeyword,e,{keyword:n});return}if((this.state.strict?s?fi:ui:pi)(n,this.inModule)){this.raise(b.UnexpectedReservedWord,e,{reservedWord:n});return}else if(n==="yield"){if(this.prodParam.hasYield){this.raise(b.YieldBindingIdentifier,e);return}}else if(n==="await"){if(this.prodParam.hasAwait){this.raise(b.AwaitBindingIdentifier,e);return}if(this.scope.inStaticBlock){this.raise(b.AwaitBindingIdentifierInStaticBlock,e);return}this.expressionScope.recordAsyncArrowParametersError(e)}else if(n==="arguments"&&this.scope.inClassAndNotInNonArrowFunction){this.raise(b.ArgumentsInClass,e);return}}isAwaitAllowed(){return!!(this.prodParam.hasAwait||this.options.allowAwaitOutsideFunction&&!this.scope.inFunction)}parseAwait(n){let e=this.startNodeAt(n);return this.expressionScope.recordParameterInitializerError(b.AwaitExpressionFormalParameter,e),this.eat(55)&&this.raise(b.ObsoleteAwaitStar,e),!this.scope.inFunction&&!this.options.allowAwaitOutsideFunction&&(this.isAmbiguousAwait()?this.ambiguousScriptDifferentAst=!0:this.sawUnambiguousESM=!0),this.state.soloAwait||(e.argument=this.parseMaybeUnary(null,!0)),this.finishNode(e,"AwaitExpression")}isAmbiguousAwait(){if(this.hasPrecedingLineBreak())return!0;let{type:n}=this.state;return n===53||n===10||n===0||vn(n)||n===102&&!this.state.containsEsc||n===137||n===56||this.hasPlugin("v8intrinsic")&&n===54}parseYield(){let n=this.startNode();this.expressionScope.recordParameterInitializerError(b.YieldInParameter,n),this.next();let e=!1,t=null;if(!this.hasPrecedingLineBreak())switch(e=this.eat(55),this.state.type){case 13:case 139:case 8:case 11:case 3:case 9:case 14:case 12:if(!e)break;default:t=this.parseMaybeAssign()}return n.delegate=e,n.argument=t,this.finishNode(n,"YieldExpression")}parseImportCall(n){return this.next(),n.source=this.parseMaybeAssignAllowIn(),(this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions"))&&(n.options=null),this.eat(12)&&(this.expectImportAttributesPlugin(),this.match(11)||(n.options=this.parseMaybeAssignAllowIn(),this.eat(12))),this.expect(11),this.finishNode(n,"ImportExpression")}checkPipelineAtInfixOperator(n,e){this.hasPlugin(["pipelineOperator",{proposal:"smart"}])&&n.type==="SequenceExpression"&&this.raise(b.PipelineHeadSequenceExpression,e)}parseSmartPipelineBodyInStyle(n,e){if(this.isSimpleReference(n)){let t=this.startNodeAt(e);return t.callee=n,this.finishNode(t,"PipelineBareFunction")}else{let t=this.startNodeAt(e);return this.checkSmartPipeTopicBodyEarlyErrors(e),t.expression=n,this.finishNode(t,"PipelineTopicExpression")}}isSimpleReference(n){switch(n.type){case"MemberExpression":return!n.computed&&this.isSimpleReference(n.object);case"Identifier":return!0;default:return!1}}checkSmartPipeTopicBodyEarlyErrors(n){if(this.match(19))throw this.raise(b.PipelineBodyNoArrow,this.state.startLoc);this.topicReferenceWasUsedInCurrentContext()||this.raise(b.PipelineTopicUnused,n)}withTopicBindingContext(n){let e=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:1,maxTopicIndex:null};try{return n()}finally{this.state.topicContext=e}}withSmartMixTopicForbiddingContext(n){if(this.hasPlugin(["pipelineOperator",{proposal:"smart"}])){let e=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null};try{return n()}finally{this.state.topicContext=e}}else return n()}withSoloAwaitPermittingContext(n){let e=this.state.soloAwait;this.state.soloAwait=!0;try{return n()}finally{this.state.soloAwait=e}}allowInAnd(n){let e=this.prodParam.currentFlags();if(8&~e){this.prodParam.enter(e|8);try{return n()}finally{this.prodParam.exit()}}return n()}disallowInAnd(n){let e=this.prodParam.currentFlags();if(8&e){this.prodParam.enter(e&-9);try{return n()}finally{this.prodParam.exit()}}return n()}registerTopicReference(){this.state.topicContext.maxTopicIndex=0}topicReferenceIsAllowedInCurrentContext(){return this.state.topicContext.maxNumOfResolvableTopics>=1}topicReferenceWasUsedInCurrentContext(){return this.state.topicContext.maxTopicIndex!=null&&this.state.topicContext.maxTopicIndex>=0}parseFSharpPipelineBody(n){let e=this.state.startLoc;this.state.potentialArrowAt=this.state.start;let t=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!0;let s=this.parseExprOp(this.parseMaybeUnaryOrPrivate(),e,n);return this.state.inFSharpPipelineDirectBody=t,s}parseModuleExpression(){this.expectPlugin("moduleBlocks");let n=this.startNode();this.next(),this.match(5)||this.unexpected(null,5);let e=this.startNodeAt(this.state.endLoc);this.next();let t=this.initializeScopes(!0);this.enterInitialScopes();try{n.body=this.parseProgram(e,8,"module")}finally{t()}return this.finishNode(n,"ModuleExpression")}parsePropertyNamePrefixOperator(n){}},fs={kind:1},Dl={kind:2},Ml=/[\uD800-\uDFFF]/u,hs=/in(?:stanceof)?/y;function Ll(r,n){for(let e=0;e<r.length;e++){let t=r[e],{type:s}=t;if(typeof s=="number"){{if(s===138){let{loc:i,start:a,value:o,end:l}=t,c=a+1,p=re(i.start,1);r.splice(e,1,new Ae({type:Fe(27),value:"#",start:a,end:c,startLoc:i.start,endLoc:p}),new Ae({type:Fe(132),value:o,start:c,end:l,startLoc:p,endLoc:i.end})),e++;continue}if(vn(s)){let{loc:i,start:a,value:o,end:l}=t,c=a+1,p=re(i.start,1),u;n.charCodeAt(a)===96?u=new Ae({type:Fe(22),value:"`",start:a,end:c,startLoc:i.start,endLoc:p}):u=new Ae({type:Fe(8),value:"}",start:a,end:c,startLoc:i.start,endLoc:p});let f,m,d,g;s===24?(m=l-1,d=re(i.end,-1),f=o===null?null:o.slice(1,-1),g=new Ae({type:Fe(22),value:"`",start:m,end:l,startLoc:d,endLoc:i.end})):(m=l-2,d=re(i.end,-2),f=o===null?null:o.slice(1,-2),g=new Ae({type:Fe(23),value:"${",start:m,end:l,startLoc:d,endLoc:i.end})),r.splice(e,1,u,new Ae({type:Fe(20),value:f,start:c,end:m,startLoc:p,endLoc:d}),g),e+=2;continue}}t.type=Fe(s)}}return r}var Os=class extends Ls{parseTopLevel(n,e){return n.program=this.parseProgram(e),n.comments=this.comments,this.options.tokens&&(n.tokens=Ll(this.tokens,this.input)),this.finishNode(n,"File")}parseProgram(n,e=139,t=this.options.sourceType){if(n.sourceType=t,n.interpreter=this.parseInterpreterDirective(),this.parseBlockBody(n,!0,!0,e),this.inModule&&!this.options.allowUndeclaredExports&&this.scope.undefinedExports.size>0)for(let[i,a]of Array.from(this.scope.undefinedExports))this.raise(b.ModuleExportUndefined,a,{localName:i});let s;return e===139?s=this.finishNode(n,"Program"):s=this.finishNodeAt(n,"Program",re(this.state.startLoc,-1)),s}stmtToDirective(n){let e=n;e.type="Directive",e.value=e.expression,delete e.expression;let t=e.value,s=t.value,i=this.input.slice(t.start,t.end),a=t.value=i.slice(1,-1);return this.addExtra(t,"raw",i),this.addExtra(t,"rawValue",a),this.addExtra(t,"expressionValue",s),t.type="DirectiveLiteral",e}parseInterpreterDirective(){if(!this.match(28))return null;let n=this.startNode();return n.value=this.state.value,this.next(),this.finishNode(n,"InterpreterDirective")}isLet(){return this.isContextual(100)?this.hasFollowingBindingAtom():!1}chStartsBindingIdentifier(n,e){if(_e(n)){if(hs.lastIndex=e,hs.test(this.input)){let t=this.codePointAtPos(hs.lastIndex);if(!pt(t)&&t!==92)return!1}return!0}else return n===92}chStartsBindingPattern(n){return n===91||n===123}hasFollowingBindingAtom(){let n=this.nextTokenStart(),e=this.codePointAtPos(n);return this.chStartsBindingPattern(e)||this.chStartsBindingIdentifier(e,n)}hasInLineFollowingBindingIdentifier(){let n=this.nextTokenInLineStart(),e=this.codePointAtPos(n);return this.chStartsBindingIdentifier(e,n)}startsUsingForOf(){let{type:n,containsEsc:e}=this.lookahead();if(n===102&&!e)return!1;if(B(n)&&!this.hasFollowingLineBreak())return this.expectPlugin("explicitResourceManagement"),!0}startsAwaitUsing(){let n=this.nextTokenInLineStart();if(this.isUnparsedContextual(n,"using")){n=this.nextTokenInLineStartSince(n+5);let e=this.codePointAtPos(n);if(this.chStartsBindingIdentifier(e,n))return this.expectPlugin("explicitResourceManagement"),!0}return!1}parseModuleItem(){return this.parseStatementLike(15)}parseStatementListItem(){return this.parseStatementLike(6|(!this.options.annexB||this.state.strict?0:8))}parseStatementOrSloppyAnnexBFunctionDeclaration(n=!1){let e=0;return this.options.annexB&&!this.state.strict&&(e|=4,n&&(e|=8)),this.parseStatementLike(e)}parseStatement(){return this.parseStatementLike(0)}parseStatementLike(n){let e=null;return this.match(26)&&(e=this.parseDecorators(!0)),this.parseStatementContent(n,e)}parseStatementContent(n,e){let t=this.state.type,s=this.startNode(),i=!!(n&2),a=!!(n&4),o=n&1;switch(t){case 60:return this.parseBreakContinueStatement(s,!0);case 63:return this.parseBreakContinueStatement(s,!1);case 64:return this.parseDebuggerStatement(s);case 90:return this.parseDoWhileStatement(s);case 91:return this.parseForStatement(s);case 68:if(this.lookaheadCharCode()===46)break;return a||this.raise(this.state.strict?b.StrictFunction:this.options.annexB?b.SloppyFunctionAnnexB:b.SloppyFunction,this.state.startLoc),this.parseFunctionStatement(s,!1,!i&&a);case 80:return i||this.unexpected(),this.parseClass(this.maybeTakeDecorators(e,s),!0);case 69:return this.parseIfStatement(s);case 70:return this.parseReturnStatement(s);case 71:return this.parseSwitchStatement(s);case 72:return this.parseThrowStatement(s);case 73:return this.parseTryStatement(s);case 96:if(!this.state.containsEsc&&this.startsAwaitUsing())return this.isAwaitAllowed()?i||this.raise(b.UnexpectedLexicalDeclaration,s):this.raise(b.AwaitUsingNotInAsyncContext,s),this.next(),this.parseVarStatement(s,"await using");break;case 107:if(this.state.containsEsc||!this.hasInLineFollowingBindingIdentifier())break;return this.expectPlugin("explicitResourceManagement"),!this.scope.inModule&&this.scope.inTopLevel?this.raise(b.UnexpectedUsingDeclaration,this.state.startLoc):i||this.raise(b.UnexpectedLexicalDeclaration,this.state.startLoc),this.parseVarStatement(s,"using");case 100:{if(this.state.containsEsc)break;let p=this.nextTokenStart(),u=this.codePointAtPos(p);if(u!==91&&(!i&&this.hasFollowingLineBreak()||!this.chStartsBindingIdentifier(u,p)&&u!==123))break}case 75:i||this.raise(b.UnexpectedLexicalDeclaration,this.state.startLoc);case 74:{let p=this.state.value;return this.parseVarStatement(s,p)}case 92:return this.parseWhileStatement(s);case 76:return this.parseWithStatement(s);case 5:return this.parseBlock();case 13:return this.parseEmptyStatement(s);case 83:{let p=this.lookaheadCharCode();if(p===40||p===46)break}case 82:{!this.options.allowImportExportEverywhere&&!o&&this.raise(b.UnexpectedImportExport,this.state.startLoc),this.next();let p;return t===83?(p=this.parseImport(s),p.type==="ImportDeclaration"&&(!p.importKind||p.importKind==="value")&&(this.sawUnambiguousESM=!0)):(p=this.parseExport(s,e),(p.type==="ExportNamedDeclaration"&&(!p.exportKind||p.exportKind==="value")||p.type==="ExportAllDeclaration"&&(!p.exportKind||p.exportKind==="value")||p.type==="ExportDefaultDeclaration")&&(this.sawUnambiguousESM=!0)),this.assertModuleNodeAllowed(p),p}default:if(this.isAsyncFunction())return i||this.raise(b.AsyncFunctionInSingleStatementContext,this.state.startLoc),this.next(),this.parseFunctionStatement(s,!0,!i&&a)}let l=this.state.value,c=this.parseExpression();return B(t)&&c.type==="Identifier"&&this.eat(14)?this.parseLabeledStatement(s,l,c,n):this.parseExpressionStatement(s,c,e)}assertModuleNodeAllowed(n){!this.options.allowImportExportEverywhere&&!this.inModule&&this.raise(b.ImportOutsideModule,n)}decoratorsEnabledBeforeExport(){return this.hasPlugin("decorators-legacy")?!0:this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")!==!1}maybeTakeDecorators(n,e,t){return n&&(e.decorators&&e.decorators.length>0?(typeof this.getPluginOption("decorators","decoratorsBeforeExport")!="boolean"&&this.raise(b.DecoratorsBeforeAfterExport,e.decorators[0]),e.decorators.unshift(...n)):e.decorators=n,this.resetStartLocationFromNode(e,n[0]),t&&this.resetStartLocationFromNode(t,e)),e}canHaveLeadingDecorator(){return this.match(80)}parseDecorators(n){let e=[];do e.push(this.parseDecorator());while(this.match(26));if(this.match(82))n||this.unexpected(),this.decoratorsEnabledBeforeExport()||this.raise(b.DecoratorExportClass,this.state.startLoc);else if(!this.canHaveLeadingDecorator())throw this.raise(b.UnexpectedLeadingDecorator,this.state.startLoc);return e}parseDecorator(){this.expectOnePlugin(["decorators","decorators-legacy"]);let n=this.startNode();if(this.next(),this.hasPlugin("decorators")){let e=this.state.startLoc,t;if(this.match(10)){let s=this.state.startLoc;this.next(),t=this.parseExpression(),this.expect(11),t=this.wrapParenthesis(s,t);let i=this.state.startLoc;n.expression=this.parseMaybeDecoratorArguments(t),this.getPluginOption("decorators","allowCallParenthesized")===!1&&n.expression!==t&&this.raise(b.DecoratorArgumentsOutsideParentheses,i)}else{for(t=this.parseIdentifier(!1);this.eat(16);){let s=this.startNodeAt(e);s.object=t,this.match(138)?(this.classScope.usePrivateName(this.state.value,this.state.startLoc),s.property=this.parsePrivateName()):s.property=this.parseIdentifier(!0),s.computed=!1,t=this.finishNode(s,"MemberExpression")}n.expression=this.parseMaybeDecoratorArguments(t)}}else n.expression=this.parseExprSubscripts();return this.finishNode(n,"Decorator")}parseMaybeDecoratorArguments(n){if(this.eat(10)){let e=this.startNodeAtNode(n);return e.callee=n,e.arguments=this.parseCallExpressionArguments(11,!1),this.toReferencedList(e.arguments),this.finishNode(e,"CallExpression")}return n}parseBreakContinueStatement(n,e){return this.next(),this.isLineTerminator()?n.label=null:(n.label=this.parseIdentifier(),this.semicolon()),this.verifyBreakContinue(n,e),this.finishNode(n,e?"BreakStatement":"ContinueStatement")}verifyBreakContinue(n,e){let t;for(t=0;t<this.state.labels.length;++t){let s=this.state.labels[t];if((n.label==null||s.name===n.label.name)&&(s.kind!=null&&(e||s.kind===1)||n.label&&e))break}if(t===this.state.labels.length){let s=e?"BreakStatement":"ContinueStatement";this.raise(b.IllegalBreakContinue,n,{type:s})}}parseDebuggerStatement(n){return this.next(),this.semicolon(),this.finishNode(n,"DebuggerStatement")}parseHeaderExpression(){this.expect(10);let n=this.parseExpression();return this.expect(11),n}parseDoWhileStatement(n){return this.next(),this.state.labels.push(fs),n.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.state.labels.pop(),this.expect(92),n.test=this.parseHeaderExpression(),this.eat(13),this.finishNode(n,"DoWhileStatement")}parseForStatement(n){this.next(),this.state.labels.push(fs);let e=null;if(this.isAwaitAllowed()&&this.eatContextual(96)&&(e=this.state.lastTokStartLoc),this.scope.enter(0),this.expect(10),this.match(13))return e!==null&&this.unexpected(e),this.parseFor(n,null);let t=this.isContextual(100);{let l=this.isContextual(96)&&this.startsAwaitUsing(),c=l||this.isContextual(107)&&this.startsUsingForOf(),p=t&&this.hasFollowingBindingAtom()||c;if(this.match(74)||this.match(75)||p){let u=this.startNode(),f;l?(f="await using",this.isAwaitAllowed()||this.raise(b.AwaitUsingNotInAsyncContext,this.state.startLoc),this.next()):f=this.state.value,this.next(),this.parseVar(u,!0,f);let m=this.finishNode(u,"VariableDeclaration"),d=this.match(58);return d&&c&&this.raise(b.ForInUsing,m),(d||this.isContextual(102))&&m.declarations.length===1?this.parseForIn(n,m,e):(e!==null&&this.unexpected(e),this.parseFor(n,m))}}let s=this.isContextual(95),i=new ut,a=this.parseExpression(!0,i),o=this.isContextual(102);if(o&&(t&&this.raise(b.ForOfLet,a),e===null&&s&&a.type==="Identifier"&&this.raise(b.ForOfAsync,a)),o||this.match(58)){this.checkDestructuringPrivate(i),this.toAssignable(a,!0);let l=o?"ForOfStatement":"ForInStatement";return this.checkLVal(a,{in:{type:l}}),this.parseForIn(n,a,e)}else this.checkExpressionErrors(i,!0);return e!==null&&this.unexpected(e),this.parseFor(n,a)}parseFunctionStatement(n,e,t){return this.next(),this.parseFunction(n,1|(t?2:0)|(e?8:0))}parseIfStatement(n){return this.next(),n.test=this.parseHeaderExpression(),n.consequent=this.parseStatementOrSloppyAnnexBFunctionDeclaration(),n.alternate=this.eat(66)?this.parseStatementOrSloppyAnnexBFunctionDeclaration():null,this.finishNode(n,"IfStatement")}parseReturnStatement(n){return!this.prodParam.hasReturn&&!this.options.allowReturnOutsideFunction&&this.raise(b.IllegalReturn,this.state.startLoc),this.next(),this.isLineTerminator()?n.argument=null:(n.argument=this.parseExpression(),this.semicolon()),this.finishNode(n,"ReturnStatement")}parseSwitchStatement(n){this.next(),n.discriminant=this.parseHeaderExpression();let e=n.cases=[];this.expect(5),this.state.labels.push(Dl),this.scope.enter(0);let t;for(let s;!this.match(8);)if(this.match(61)||this.match(65)){let i=this.match(61);t&&this.finishNode(t,"SwitchCase"),e.push(t=this.startNode()),t.consequent=[],this.next(),i?t.test=this.parseExpression():(s&&this.raise(b.MultipleDefaultsInSwitch,this.state.lastTokStartLoc),s=!0,t.test=null),this.expect(14)}else t?t.consequent.push(this.parseStatementListItem()):this.unexpected();return this.scope.exit(),t&&this.finishNode(t,"SwitchCase"),this.next(),this.state.labels.pop(),this.finishNode(n,"SwitchStatement")}parseThrowStatement(n){return this.next(),this.hasPrecedingLineBreak()&&this.raise(b.NewlineAfterThrow,this.state.lastTokEndLoc),n.argument=this.parseExpression(),this.semicolon(),this.finishNode(n,"ThrowStatement")}parseCatchClauseParam(){let n=this.parseBindingAtom();return this.scope.enter(this.options.annexB&&n.type==="Identifier"?8:0),this.checkLVal(n,{in:{type:"CatchClause"},binding:9}),n}parseTryStatement(n){if(this.next(),n.block=this.parseBlock(),n.handler=null,this.match(62)){let e=this.startNode();this.next(),this.match(10)?(this.expect(10),e.param=this.parseCatchClauseParam(),this.expect(11)):(e.param=null,this.scope.enter(0)),e.body=this.withSmartMixTopicForbiddingContext(()=>this.parseBlock(!1,!1)),this.scope.exit(),n.handler=this.finishNode(e,"CatchClause")}return n.finalizer=this.eat(67)?this.parseBlock():null,!n.handler&&!n.finalizer&&this.raise(b.NoCatchOrFinally,n),this.finishNode(n,"TryStatement")}parseVarStatement(n,e,t=!1){return this.next(),this.parseVar(n,!1,e,t),this.semicolon(),this.finishNode(n,"VariableDeclaration")}parseWhileStatement(n){return this.next(),n.test=this.parseHeaderExpression(),this.state.labels.push(fs),n.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.state.labels.pop(),this.finishNode(n,"WhileStatement")}parseWithStatement(n){return this.state.strict&&this.raise(b.StrictWith,this.state.startLoc),this.next(),n.object=this.parseHeaderExpression(),n.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.finishNode(n,"WithStatement")}parseEmptyStatement(n){return this.next(),this.finishNode(n,"EmptyStatement")}parseLabeledStatement(n,e,t,s){for(let a of this.state.labels)a.name===e&&this.raise(b.LabelRedeclaration,t,{labelName:e});let i=Fo(this.state.type)?1:this.match(71)?2:null;for(let a=this.state.labels.length-1;a>=0;a--){let o=this.state.labels[a];if(o.statementStart===n.start)o.statementStart=this.state.start,o.kind=i;else break}return this.state.labels.push({name:e,kind:i,statementStart:this.state.start}),n.body=s&8?this.parseStatementOrSloppyAnnexBFunctionDeclaration(!0):this.parseStatement(),this.state.labels.pop(),n.label=t,this.finishNode(n,"LabeledStatement")}parseExpressionStatement(n,e,t){return n.expression=e,this.semicolon(),this.finishNode(n,"ExpressionStatement")}parseBlock(n=!1,e=!0,t){let s=this.startNode();return n&&this.state.strictErrors.clear(),this.expect(5),e&&this.scope.enter(0),this.parseBlockBody(s,n,!1,8,t),e&&this.scope.exit(),this.finishNode(s,"BlockStatement")}isValidDirective(n){return n.type==="ExpressionStatement"&&n.expression.type==="StringLiteral"&&!n.expression.extra.parenthesized}parseBlockBody(n,e,t,s,i){let a=n.body=[],o=n.directives=[];this.parseBlockOrModuleBlockBody(a,e?o:void 0,t,s,i)}parseBlockOrModuleBlockBody(n,e,t,s,i){let a=this.state.strict,o=!1,l=!1;for(;!this.match(s);){let c=t?this.parseModuleItem():this.parseStatementListItem();if(e&&!l){if(this.isValidDirective(c)){let p=this.stmtToDirective(c);e.push(p),!o&&p.value.value==="use strict"&&(o=!0,this.setStrict(!0));continue}l=!0,this.state.strictErrors.clear()}n.push(c)}i?.call(this,o),a||this.setStrict(!1),this.next()}parseFor(n,e){return n.init=e,this.semicolon(!1),n.test=this.match(13)?null:this.parseExpression(),this.semicolon(!1),n.update=this.match(11)?null:this.parseExpression(),this.expect(11),n.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(n,"ForStatement")}parseForIn(n,e,t){let s=this.match(58);return this.next(),s?t!==null&&this.unexpected(t):n.await=t!==null,e.type==="VariableDeclaration"&&e.declarations[0].init!=null&&(!s||!this.options.annexB||this.state.strict||e.kind!=="var"||e.declarations[0].id.type!=="Identifier")&&this.raise(b.ForInOfLoopInitializer,e,{type:s?"ForInStatement":"ForOfStatement"}),e.type==="AssignmentPattern"&&this.raise(b.InvalidLhs,e,{ancestor:{type:"ForStatement"}}),n.left=e,n.right=s?this.parseExpression():this.parseMaybeAssignAllowIn(),this.expect(11),n.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(n,s?"ForInStatement":"ForOfStatement")}parseVar(n,e,t,s=!1){let i=n.declarations=[];for(n.kind=t;;){let a=this.startNode();if(this.parseVarId(a,t),a.init=this.eat(29)?e?this.parseMaybeAssignDisallowIn():this.parseMaybeAssignAllowIn():null,a.init===null&&!s&&(a.id.type!=="Identifier"&&!(e&&(this.match(58)||this.isContextual(102)))?this.raise(b.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:"destructuring"}):t==="const"&&!(this.match(58)||this.isContextual(102))&&this.raise(b.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:"const"})),i.push(this.finishNode(a,"VariableDeclarator")),!this.eat(12))break}return n}parseVarId(n,e){let t=this.parseBindingAtom();this.checkLVal(t,{in:{type:"VariableDeclarator"},binding:e==="var"?5:8201}),n.id=t}parseAsyncFunctionExpression(n){return this.parseFunction(n,8)}parseFunction(n,e=0){let t=e&2,s=!!(e&1),i=s&&!(e&4),a=!!(e&8);this.initFunction(n,a),this.match(55)&&(t&&this.raise(b.GeneratorInSingleStatementContext,this.state.startLoc),this.next(),n.generator=!0),s&&(n.id=this.parseFunctionId(i));let o=this.state.maybeInArrowParameters;return this.state.maybeInArrowParameters=!1,this.scope.enter(2),this.prodParam.enter(gn(a,n.generator)),s||(n.id=this.parseFunctionId()),this.parseFunctionParams(n,!1),this.withSmartMixTopicForbiddingContext(()=>{this.parseFunctionBodyAndFinish(n,s?"FunctionDeclaration":"FunctionExpression")}),this.prodParam.exit(),this.scope.exit(),s&&!t&&this.registerFunctionStatementId(n),this.state.maybeInArrowParameters=o,n}parseFunctionId(n){return n||B(this.state.type)?this.parseIdentifier():null}parseFunctionParams(n,e){this.expect(10),this.expressionScope.enter(rl()),n.params=this.parseBindingList(11,41,2|(e?4:0)),this.expressionScope.exit()}registerFunctionStatementId(n){n.id&&this.scope.declareName(n.id.name,!this.options.annexB||this.state.strict||n.generator||n.async?this.scope.treatFunctionsAsVar?5:8201:17,n.id.loc.start)}parseClass(n,e,t){this.next();let s=this.state.strict;return this.state.strict=!0,this.parseClassId(n,e,t),this.parseClassSuper(n),n.body=this.parseClassBody(!!n.superClass,s),this.finishNode(n,e?"ClassDeclaration":"ClassExpression")}isClassProperty(){return this.match(29)||this.match(13)||this.match(8)}isClassMethod(){return this.match(10)}isNonstaticConstructor(n){return!n.computed&&!n.static&&(n.key.name==="constructor"||n.key.value==="constructor")}parseClassBody(n,e){this.classScope.enter();let t={hadConstructor:!1,hadSuperClass:n},s=[],i=this.startNode();if(i.body=[],this.expect(5),this.withSmartMixTopicForbiddingContext(()=>{for(;!this.match(8);){if(this.eat(13)){if(s.length>0)throw this.raise(b.DecoratorSemicolon,this.state.lastTokEndLoc);continue}if(this.match(26)){s.push(this.parseDecorator());continue}let a=this.startNode();s.length&&(a.decorators=s,this.resetStartLocationFromNode(a,s[0]),s=[]),this.parseClassMember(i,a,t),a.kind==="constructor"&&a.decorators&&a.decorators.length>0&&this.raise(b.DecoratorConstructor,a)}}),this.state.strict=e,this.next(),s.length)throw this.raise(b.TrailingDecorator,this.state.startLoc);return this.classScope.exit(),this.finishNode(i,"ClassBody")}parseClassMemberFromModifier(n,e){let t=this.parseIdentifier(!0);if(this.isClassMethod()){let s=e;return s.kind="method",s.computed=!1,s.key=t,s.static=!1,this.pushClassMethod(n,s,!1,!1,!1,!1),!0}else if(this.isClassProperty()){let s=e;return s.computed=!1,s.key=t,s.static=!1,n.body.push(this.parseClassProperty(s)),!0}return this.resetPreviousNodeTrailingComments(t),!1}parseClassMember(n,e,t){let s=this.isContextual(106);if(s){if(this.parseClassMemberFromModifier(n,e))return;if(this.eat(5)){this.parseClassStaticBlock(n,e);return}}this.parseClassMemberWithIsStatic(n,e,t,s)}parseClassMemberWithIsStatic(n,e,t,s){let i=e,a=e,o=e,l=e,c=e,p=i,u=i;if(e.static=s,this.parsePropertyNamePrefixOperator(e),this.eat(55)){p.kind="method";let h=this.match(138);if(this.parseClassElementName(p),h){this.pushClassPrivateMethod(n,a,!0,!1);return}this.isNonstaticConstructor(i)&&this.raise(b.ConstructorIsGenerator,i.key),this.pushClassMethod(n,i,!0,!1,!1,!1);return}let f=B(this.state.type)&&!this.state.containsEsc,m=this.match(138),d=this.parseClassElementName(e),g=this.state.startLoc;if(this.parsePostMemberNameModifiers(u),this.isClassMethod()){if(p.kind="method",m){this.pushClassPrivateMethod(n,a,!1,!1);return}let h=this.isNonstaticConstructor(i),v=!1;h&&(i.kind="constructor",t.hadConstructor&&!this.hasPlugin("typescript")&&this.raise(b.DuplicateConstructor,d),h&&this.hasPlugin("typescript")&&e.override&&this.raise(b.OverrideOnConstructor,d),t.hadConstructor=!0,v=t.hadSuperClass),this.pushClassMethod(n,i,!1,!1,h,v)}else if(this.isClassProperty())m?this.pushClassPrivateProperty(n,l):this.pushClassProperty(n,o);else if(f&&d.name==="async"&&!this.isLineTerminator()){this.resetPreviousNodeTrailingComments(d);let h=this.eat(55);u.optional&&this.unexpected(g),p.kind="method";let v=this.match(138);this.parseClassElementName(p),this.parsePostMemberNameModifiers(u),v?this.pushClassPrivateMethod(n,a,h,!0):(this.isNonstaticConstructor(i)&&this.raise(b.ConstructorIsAsync,i.key),this.pushClassMethod(n,i,h,!0,!1,!1))}else if(f&&(d.name==="get"||d.name==="set")&&!(this.match(55)&&this.isLineTerminator())){this.resetPreviousNodeTrailingComments(d),p.kind=d.name;let h=this.match(138);this.parseClassElementName(i),h?this.pushClassPrivateMethod(n,a,!1,!1):(this.isNonstaticConstructor(i)&&this.raise(b.ConstructorIsAccessor,i.key),this.pushClassMethod(n,i,!1,!1,!1,!1)),this.checkGetterSetterParams(i)}else if(f&&d.name==="accessor"&&!this.isLineTerminator()){this.expectPlugin("decoratorAutoAccessors"),this.resetPreviousNodeTrailingComments(d);let h=this.match(138);this.parseClassElementName(o),this.pushClassAccessorProperty(n,c,h)}else this.isLineTerminator()?m?this.pushClassPrivateProperty(n,l):this.pushClassProperty(n,o):this.unexpected()}parseClassElementName(n){let{type:e,value:t}=this.state;if((e===132||e===133)&&n.static&&t==="prototype"&&this.raise(b.StaticPrototype,this.state.startLoc),e===138){t==="constructor"&&this.raise(b.ConstructorClassPrivateField,this.state.startLoc);let s=this.parsePrivateName();return n.key=s,s}return this.parsePropertyName(n)}parseClassStaticBlock(n,e){var t;this.scope.enter(208);let s=this.state.labels;this.state.labels=[],this.prodParam.enter(0);let i=e.body=[];this.parseBlockOrModuleBlockBody(i,void 0,!1,8),this.prodParam.exit(),this.scope.exit(),this.state.labels=s,n.body.push(this.finishNode(e,"StaticBlock")),(t=e.decorators)!=null&&t.length&&this.raise(b.DecoratorStaticBlock,e)}pushClassProperty(n,e){!e.computed&&(e.key.name==="constructor"||e.key.value==="constructor")&&this.raise(b.ConstructorClassField,e.key),n.body.push(this.parseClassProperty(e))}pushClassPrivateProperty(n,e){let t=this.parseClassPrivateProperty(e);n.body.push(t),this.classScope.declarePrivateName(this.getPrivateNameSV(t.key),0,t.key.loc.start)}pushClassAccessorProperty(n,e,t){if(!t&&!e.computed){let i=e.key;(i.name==="constructor"||i.value==="constructor")&&this.raise(b.ConstructorClassField,i)}let s=this.parseClassAccessorProperty(e);n.body.push(s),t&&this.classScope.declarePrivateName(this.getPrivateNameSV(s.key),0,s.key.loc.start)}pushClassMethod(n,e,t,s,i,a){n.body.push(this.parseMethod(e,t,s,i,a,"ClassMethod",!0))}pushClassPrivateMethod(n,e,t,s){let i=this.parseMethod(e,t,s,!1,!1,"ClassPrivateMethod",!0);n.body.push(i);let a=i.kind==="get"?i.static?6:2:i.kind==="set"?i.static?5:1:0;this.declareClassPrivateMethodInScope(i,a)}declareClassPrivateMethodInScope(n,e){this.classScope.declarePrivateName(this.getPrivateNameSV(n.key),e,n.key.loc.start)}parsePostMemberNameModifiers(n){}parseClassPrivateProperty(n){return this.parseInitializer(n),this.semicolon(),this.finishNode(n,"ClassPrivateProperty")}parseClassProperty(n){return this.parseInitializer(n),this.semicolon(),this.finishNode(n,"ClassProperty")}parseClassAccessorProperty(n){return this.parseInitializer(n),this.semicolon(),this.finishNode(n,"ClassAccessorProperty")}parseInitializer(n){this.scope.enter(80),this.expressionScope.enter(yi()),this.prodParam.enter(0),n.value=this.eat(29)?this.parseMaybeAssignAllowIn():null,this.expressionScope.exit(),this.prodParam.exit(),this.scope.exit()}parseClassId(n,e,t,s=8331){if(B(this.state.type))n.id=this.parseIdentifier(),e&&this.declareNameFromIdentifier(n.id,s);else if(t||!e)n.id=null;else throw this.raise(b.MissingClassName,this.state.startLoc)}parseClassSuper(n){n.superClass=this.eat(81)?this.parseExprSubscripts():null}parseExport(n,e){let t=this.parseMaybeImportPhase(n,!0),s=this.maybeParseExportDefaultSpecifier(n,t),i=!s||this.eat(12),a=i&&this.eatExportStar(n),o=a&&this.maybeParseExportNamespaceSpecifier(n),l=i&&(!o||this.eat(12)),c=s||a;if(a&&!o){if(s&&this.unexpected(),e)throw this.raise(b.UnsupportedDecoratorExport,n);return this.parseExportFrom(n,!0),this.finishNode(n,"ExportAllDeclaration")}let p=this.maybeParseExportNamedSpecifiers(n);s&&i&&!a&&!p&&this.unexpected(null,5),o&&l&&this.unexpected(null,98);let u;if(c||p){if(u=!1,e)throw this.raise(b.UnsupportedDecoratorExport,n);this.parseExportFrom(n,c)}else u=this.maybeParseExportDeclaration(n);if(c||p||u){var f;let m=n;if(this.checkExport(m,!0,!1,!!m.source),((f=m.declaration)==null?void 0:f.type)==="ClassDeclaration")this.maybeTakeDecorators(e,m.declaration,m);else if(e)throw this.raise(b.UnsupportedDecoratorExport,n);return this.finishNode(m,"ExportNamedDeclaration")}if(this.eat(65)){let m=n,d=this.parseExportDefaultExpression();if(m.declaration=d,d.type==="ClassDeclaration")this.maybeTakeDecorators(e,d,m);else if(e)throw this.raise(b.UnsupportedDecoratorExport,n);return this.checkExport(m,!0,!0),this.finishNode(m,"ExportDefaultDeclaration")}this.unexpected(null,5)}eatExportStar(n){return this.eat(55)}maybeParseExportDefaultSpecifier(n,e){if(e||this.isExportDefaultSpecifier()){this.expectPlugin("exportDefaultFrom",e?.loc.start);let t=e||this.parseIdentifier(!0),s=this.startNodeAtNode(t);return s.exported=t,n.specifiers=[this.finishNode(s,"ExportDefaultSpecifier")],!0}return!1}maybeParseExportNamespaceSpecifier(n){if(this.isContextual(93)){n.specifiers||(n.specifiers=[]);let e=this.startNodeAt(this.state.lastTokStartLoc);return this.next(),e.exported=this.parseModuleExportName(),n.specifiers.push(this.finishNode(e,"ExportNamespaceSpecifier")),!0}return!1}maybeParseExportNamedSpecifiers(n){if(this.match(5)){n.specifiers||(n.specifiers=[]);let e=n.exportKind==="type";return n.specifiers.push(...this.parseExportSpecifiers(e)),n.source=null,n.declaration=null,this.hasPlugin("importAssertions")&&(n.assertions=[]),!0}return!1}maybeParseExportDeclaration(n){return this.shouldParseExportDeclaration()?(n.specifiers=[],n.source=null,this.hasPlugin("importAssertions")&&(n.assertions=[]),n.declaration=this.parseExportDeclaration(n),!0):!1}isAsyncFunction(){if(!this.isContextual(95))return!1;let n=this.nextTokenInLineStart();return this.isUnparsedContextual(n,"function")}parseExportDefaultExpression(){let n=this.startNode();if(this.match(68))return this.next(),this.parseFunction(n,5);if(this.isAsyncFunction())return this.next(),this.next(),this.parseFunction(n,13);if(this.match(80))return this.parseClass(n,!0,!0);if(this.match(26))return this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(b.DecoratorBeforeExport,this.state.startLoc),this.parseClass(this.maybeTakeDecorators(this.parseDecorators(!1),this.startNode()),!0,!0);if(this.match(75)||this.match(74)||this.isLet())throw this.raise(b.UnsupportedDefaultExport,this.state.startLoc);let e=this.parseMaybeAssignAllowIn();return this.semicolon(),e}parseExportDeclaration(n){return this.match(80)?this.parseClass(this.startNode(),!0,!1):this.parseStatementListItem()}isExportDefaultSpecifier(){let{type:n}=this.state;if(B(n)){if(n===95&&!this.state.containsEsc||n===100)return!1;if((n===130||n===129)&&!this.state.containsEsc){let{type:s}=this.lookahead();if(B(s)&&s!==98||s===5)return this.expectOnePlugin(["flow","typescript"]),!1}}else if(!this.match(65))return!1;let e=this.nextTokenStart(),t=this.isUnparsedContextual(e,"from");if(this.input.charCodeAt(e)===44||B(this.state.type)&&t)return!0;if(this.match(65)&&t){let s=this.input.charCodeAt(this.nextTokenStartSince(e+4));return s===34||s===39}return!1}parseExportFrom(n,e){this.eatContextual(98)?(n.source=this.parseImportSource(),this.checkExport(n),this.maybeParseImportAttributes(n),this.checkJSONModuleImport(n)):e&&this.unexpected(),this.semicolon()}shouldParseExportDeclaration(){let{type:n}=this.state;return n===26&&(this.expectOnePlugin(["decorators","decorators-legacy"]),this.hasPlugin("decorators"))?(this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(b.DecoratorBeforeExport,this.state.startLoc),!0):n===74||n===75||n===68||n===80||this.isLet()||this.isAsyncFunction()}checkExport(n,e,t,s){if(e){var i;if(t){if(this.checkDuplicateExports(n,"default"),this.hasPlugin("exportDefaultFrom")){var a;let o=n.declaration;o.type==="Identifier"&&o.name==="from"&&o.end-o.start===4&&!((a=o.extra)!=null&&a.parenthesized)&&this.raise(b.ExportDefaultFromAsIdentifier,o)}}else if((i=n.specifiers)!=null&&i.length)for(let o of n.specifiers){let{exported:l}=o,c=l.type==="Identifier"?l.name:l.value;if(this.checkDuplicateExports(o,c),!s&&o.local){let{local:p}=o;p.type!=="Identifier"?this.raise(b.ExportBindingIsString,o,{localName:p.value,exportName:c}):(this.checkReservedWord(p.name,p.loc.start,!0,!1),this.scope.checkLocalExport(p))}}else if(n.declaration){if(n.declaration.type==="FunctionDeclaration"||n.declaration.type==="ClassDeclaration"){let o=n.declaration.id;if(!o)throw new Error("Assertion failure");this.checkDuplicateExports(n,o.name)}else if(n.declaration.type==="VariableDeclaration")for(let o of n.declaration.declarations)this.checkDeclaration(o.id)}}}checkDeclaration(n){if(n.type==="Identifier")this.checkDuplicateExports(n,n.name);else if(n.type==="ObjectPattern")for(let e of n.properties)this.checkDeclaration(e);else if(n.type==="ArrayPattern")for(let e of n.elements)e&&this.checkDeclaration(e);else n.type==="ObjectProperty"?this.checkDeclaration(n.value):n.type==="RestElement"?this.checkDeclaration(n.argument):n.type==="AssignmentPattern"&&this.checkDeclaration(n.left)}checkDuplicateExports(n,e){this.exportedIdentifiers.has(e)&&(e==="default"?this.raise(b.DuplicateDefaultExport,n):this.raise(b.DuplicateExport,n,{exportName:e})),this.exportedIdentifiers.add(e)}parseExportSpecifiers(n){let e=[],t=!0;for(this.expect(5);!this.eat(8);){if(t)t=!1;else if(this.expect(12),this.eat(8))break;let s=this.isContextual(130),i=this.match(133),a=this.startNode();a.local=this.parseModuleExportName(),e.push(this.parseExportSpecifier(a,i,n,s))}return e}parseExportSpecifier(n,e,t,s){return this.eatContextual(93)?n.exported=this.parseModuleExportName():e?n.exported=ll(n.local):n.exported||(n.exported=Be(n.local)),this.finishNode(n,"ExportSpecifier")}parseModuleExportName(){if(this.match(133)){let n=this.parseStringLiteral(this.state.value),e=n.value.match(Ml);return e&&this.raise(b.ModuleExportNameHasLoneSurrogate,n,{surrogateCharCode:e[0].charCodeAt(0)}),n}return this.parseIdentifier(!0)}isJSONModuleImport(n){return n.assertions!=null?n.assertions.some(({key:e,value:t})=>t.value==="json"&&(e.type==="Identifier"?e.name==="type":e.value==="type")):!1}checkImportReflection(n){let{specifiers:e}=n,t=e.length===1?e[0].type:null;if(n.phase==="source")t!=="ImportDefaultSpecifier"&&this.raise(b.SourcePhaseImportRequiresDefault,e[0].loc.start);else if(n.phase==="defer")t!=="ImportNamespaceSpecifier"&&this.raise(b.DeferImportRequiresNamespace,e[0].loc.start);else if(n.module){var s;t!=="ImportDefaultSpecifier"&&this.raise(b.ImportReflectionNotBinding,e[0].loc.start),((s=n.assertions)==null?void 0:s.length)>0&&this.raise(b.ImportReflectionHasAssertion,e[0].loc.start)}}checkJSONModuleImport(n){if(this.isJSONModuleImport(n)&&n.type!=="ExportAllDeclaration"){let{specifiers:e}=n;if(e!=null){let t=e.find(s=>{let i;if(s.type==="ExportSpecifier"?i=s.local:s.type==="ImportSpecifier"&&(i=s.imported),i!==void 0)return i.type==="Identifier"?i.name!=="default":i.value!=="default"});t!==void 0&&this.raise(b.ImportJSONBindingNotDefault,t.loc.start)}}}isPotentialImportPhase(n){return n?!1:this.isContextual(105)||this.isContextual(97)||this.isContextual(127)}applyImportPhase(n,e,t,s){e||(t==="module"?(this.expectPlugin("importReflection",s),n.module=!0):this.hasPlugin("importReflection")&&(n.module=!1),t==="source"?(this.expectPlugin("sourcePhaseImports",s),n.phase="source"):t==="defer"?(this.expectPlugin("deferredImportEvaluation",s),n.phase="defer"):this.hasPlugin("sourcePhaseImports")&&(n.phase=null))}parseMaybeImportPhase(n,e){if(!this.isPotentialImportPhase(e))return this.applyImportPhase(n,e,null),null;let t=this.parseIdentifier(!0),{type:s}=this.state;return(xe(s)?s!==98||this.lookaheadCharCode()===102:s!==12)?(this.resetPreviousIdentifierLeadingComments(t),this.applyImportPhase(n,e,t.name,t.loc.start),null):(this.applyImportPhase(n,e,null),t)}isPrecedingIdImportPhase(n){let{type:e}=this.state;return B(e)?e!==98||this.lookaheadCharCode()===102:e!==12}parseImport(n){return this.match(133)?this.parseImportSourceAndAttributes(n):this.parseImportSpecifiersAndAfter(n,this.parseMaybeImportPhase(n,!1))}parseImportSpecifiersAndAfter(n,e){n.specifiers=[];let s=!this.maybeParseDefaultImportSpecifier(n,e)||this.eat(12),i=s&&this.maybeParseStarImportSpecifier(n);return s&&!i&&this.parseNamedImportSpecifiers(n),this.expectContextual(98),this.parseImportSourceAndAttributes(n)}parseImportSourceAndAttributes(n){var e;return(e=n.specifiers)!=null||(n.specifiers=[]),n.source=this.parseImportSource(),this.maybeParseImportAttributes(n),this.checkImportReflection(n),this.checkJSONModuleImport(n),this.semicolon(),this.finishNode(n,"ImportDeclaration")}parseImportSource(){return this.match(133)||this.unexpected(),this.parseExprAtom()}parseImportSpecifierLocal(n,e,t){e.local=this.parseIdentifier(),n.specifiers.push(this.finishImportSpecifier(e,t))}finishImportSpecifier(n,e,t=8201){return this.checkLVal(n.local,{in:{type:e},binding:t}),this.finishNode(n,e)}parseImportAttributes(){this.expect(5);let n=[],e=new Set;do{if(this.match(8))break;let t=this.startNode(),s=this.state.value;if(e.has(s)&&this.raise(b.ModuleAttributesWithDuplicateKeys,this.state.startLoc,{key:s}),e.add(s),this.match(133)?t.key=this.parseStringLiteral(s):t.key=this.parseIdentifier(!0),this.expect(14),!this.match(133))throw this.raise(b.ModuleAttributeInvalidValue,this.state.startLoc);t.value=this.parseStringLiteral(this.state.value),n.push(this.finishNode(t,"ImportAttribute"))}while(this.eat(12));return this.expect(8),n}parseModuleAttributes(){let n=[],e=new Set;do{let t=this.startNode();if(t.key=this.parseIdentifier(!0),t.key.name!=="type"&&this.raise(b.ModuleAttributeDifferentFromType,t.key),e.has(t.key.name)&&this.raise(b.ModuleAttributesWithDuplicateKeys,t.key,{key:t.key.name}),e.add(t.key.name),this.expect(14),!this.match(133))throw this.raise(b.ModuleAttributeInvalidValue,this.state.startLoc);t.value=this.parseStringLiteral(this.state.value),n.push(this.finishNode(t,"ImportAttribute"))}while(this.eat(12));return n}maybeParseImportAttributes(n){let e,t=!1;if(this.match(76)){if(this.hasPrecedingLineBreak()&&this.lookaheadCharCode()===40)return;this.next(),this.hasPlugin("moduleAttributes")?e=this.parseModuleAttributes():(this.expectImportAttributesPlugin(),e=this.parseImportAttributes()),t=!0}else if(this.isContextual(94)&&!this.hasPrecedingLineBreak())this.hasPlugin("importAttributes")?(this.getPluginOption("importAttributes","deprecatedAssertSyntax")!==!0&&this.raise(b.ImportAttributesUseAssert,this.state.startLoc),this.addExtra(n,"deprecatedAssertSyntax",!0)):this.expectOnePlugin(["importAttributes","importAssertions"]),this.next(),e=this.parseImportAttributes();else if(this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions"))e=[];else if(this.hasPlugin("moduleAttributes"))e=[];else return;!t&&this.hasPlugin("importAssertions")?n.assertions=e:n.attributes=e}maybeParseDefaultImportSpecifier(n,e){if(e){let t=this.startNodeAtNode(e);return t.local=e,n.specifiers.push(this.finishImportSpecifier(t,"ImportDefaultSpecifier")),!0}else if(xe(this.state.type))return this.parseImportSpecifierLocal(n,this.startNode(),"ImportDefaultSpecifier"),!0;return!1}maybeParseStarImportSpecifier(n){if(this.match(55)){let e=this.startNode();return this.next(),this.expectContextual(93),this.parseImportSpecifierLocal(n,e,"ImportNamespaceSpecifier"),!0}return!1}parseNamedImportSpecifiers(n){let e=!0;for(this.expect(5);!this.eat(8);){if(e)e=!1;else{if(this.eat(14))throw this.raise(b.DestructureNamedImport,this.state.startLoc);if(this.expect(12),this.eat(8))break}let t=this.startNode(),s=this.match(133),i=this.isContextual(130);t.imported=this.parseModuleExportName();let a=this.parseImportSpecifier(t,s,n.importKind==="type"||n.importKind==="typeof",i,void 0);n.specifiers.push(a)}}parseImportSpecifier(n,e,t,s,i){if(this.eatContextual(93))n.local=this.parseIdentifier();else{let{imported:a}=n;if(e)throw this.raise(b.ImportBindingIsString,n,{importName:a.value});this.checkReservedWord(a.name,n.loc.start,!0,!0),n.local||(n.local=Be(a))}return this.finishImportSpecifier(n,"ImportSpecifier",i)}isThisParam(n){return n.type==="Identifier"&&n.name==="this"}},Pn=class extends Os{constructor(n,e){n=Nl(n),super(n,e),this.options=n,this.initializeScopes(),this.plugins=Ol(this.options.plugins),this.filename=n.sourceFilename}getScopeHandler(){return jt}parse(){this.enterInitialScopes();let n=this.startNode(),e=this.startNode();return this.nextToken(),n.errors=null,this.parseTopLevel(n,e),n.errors=this.state.errors,n.comments.length=this.state.commentsLen,n}};function Ol(r){let n=new Map;for(let e of r){let[t,s]=Array.isArray(e)?e:[e,{}];n.has(t)||n.set(t,s||{})}return n}function Fl(r,n){var e;if(((e=n)==null?void 0:e.sourceType)==="unambiguous"){n=Object.assign({},n);try{n.sourceType="module";let t=Ut(n,r),s=t.parse();if(t.sawUnambiguousESM)return s;if(t.ambiguousScriptDifferentAst)try{return n.sourceType="script",Ut(n,r).parse()}catch{}else s.program.sourceType="script";return s}catch(t){try{return n.sourceType="script",Ut(n,r).parse()}catch{}throw t}}else return Ut(n,r).parse()}function Ul(r,n){let e=Ut(n,r);return e.options.strictMode&&(e.state.strict=!0),e.getExpression()}function _l(r){let n={};for(let e of Object.keys(r))n[e]=Fe(r[e]);return n}var Rl=_l(Do);function Ut(r,n){let e=Pn;return r!=null&&r.plugins&&(Al(r.plugins),e=Bl(r.plugins)),new e(r,n)}var ii={};function Bl(r){let n=kl.filter(s=>Y(r,s)),e=n.join("/"),t=ii[e];if(!t){t=Pn;for(let s of n)t=Ti[s](t);ii[e]=t}return t}zt.parse=Fl;zt.parseExpression=Ul;zt.tokTypes=Rl});import{Command as au}from"commander";import{readFileSync as Lp}from"fs";import st from"node:path";import{Command as Op}from"commander";import{defu as Fp}from"defu";import oe from"kleur";import sn from"lodash";import It from"prompts";var At=[{name:"Accordion",value:"accordion",instructions:["Remember to add the accordion animations to your tailwind.config.js"],files:[{fileName:"Accordion/Accordion.vue",dirPath:"components/UI",fileContent:`<template>
10
10
  <AccordionRoot v-bind="forwarded">
11
11
  <slot :items="items">
12
12
  <template v-for="(item, i) in items" :key="i">
@@ -2350,996 +2350,1047 @@ DataTable.use(DataTablesCore);
2350
2350
  export default defineNuxtPlugin((nuxtApp) => {
2351
2351
  nuxtApp.vueApp.component("DataTable", DataTable);
2352
2352
  });
2353
- `}],files:[{fileName:"Datatable.client.vue",dirPath:"components/UI",fileContent:`<template>
2354
- <DataTable ref="table" :data="data" :class="props.class" :options="options">
2355
- <slot></slot>
2356
- </DataTable>
2357
- </template>
2358
-
2359
- <script lang="ts" setup generic="T">
2360
- import type DataTableRef from "datatables.net";
2361
- import type { Config } from "datatables.net/types/types";
2362
-
2363
- const table = shallowRef<{ dt: InstanceType<typeof DataTableRef<T[]>> } | null>(null);
2364
-
2365
- const props = withDefaults(
2366
- defineProps<{
2367
- data?: Config["data"];
2368
- class?: any;
2369
- options?: Config;
2370
- }>(),
2371
- {
2372
- data: () => [],
2373
- class: "nowrap hover order-column row-border stripe display",
2374
- options: () => ({}),
2375
- }
2376
- );
2377
-
2378
- const emits = defineEmits<{
2379
- ready: [any];
2380
- }>();
2381
-
2382
- onMounted(() => {
2383
- nextTick(() => {
2384
- emits("ready", table.value?.dt);
2385
- });
2386
- });
2387
- </script>
2388
-
2389
- <style>
2390
- :root {
2391
- --dt-row-selected: 262.1, 83.3%, 57.8%;
2392
- --dt-row-selected-text: 210, 20%, 98%;
2393
- --dt-row-selected-link: 262.1, 83.3%, 57.8%;
2394
- --dt-row-stripe: 0, 0%, 100%;
2395
- --dt-row-hover: 0, 0%, 100%;
2396
- --dt-column-ordering: 0, 0%, 100%;
2397
- --dt-border: 220, 13%, 91%;
2398
- --dt-foreground: 224, 71.4%, 4.1%;
2399
- }
2400
-
2401
- .dark {
2402
- --dt-row-selected: 263.4, 70%, 50.4%;
2403
- --dt-row-selected-text: 210, 20%, 98%;
2404
- --dt-row-selected-link: 263.4, 70%, 50.4%;
2405
- --dt-row-stripe: 224, 71.4%, 4.1%;
2406
- --dt-row-hover: 224, 71.4%, 4.1%;
2407
- --dt-column-ordering: 224, 71.4%, 4.1%;
2408
- --dt-border: 215, 27.9%, 16.9%;
2409
- --dt-foreground: 224, 71.4%, 4.1%;
2410
- }
2411
-
2412
- table.dataTable td.dt-control {
2413
- text-align: center;
2414
- cursor: pointer;
2415
- }
2416
- table.dataTable td.dt-control:before {
2417
- display: inline-block;
2418
- color: hsla(var(--dt-foreground), 0.5);
2419
- content: "\u25BA";
2420
- }
2421
- table.dataTable tr.dt-hasChild td.dt-control:before {
2422
- content: "\u25BC";
2423
- }
2424
-
2425
- table.dataTable thead > tr > th.sorting,
2426
- table.dataTable thead > tr > th.sorting_asc,
2427
- table.dataTable thead > tr > th.sorting_desc,
2428
- table.dataTable thead > tr > th.sorting_asc_disabled,
2429
- table.dataTable thead > tr > th.sorting_desc_disabled,
2430
- table.dataTable thead > tr > td.sorting,
2431
- table.dataTable thead > tr > td.sorting_asc,
2432
- table.dataTable thead > tr > td.sorting_desc,
2433
- table.dataTable thead > tr > td.sorting_asc_disabled,
2434
- table.dataTable thead > tr > td.sorting_desc_disabled {
2435
- @apply relative cursor-pointer pr-7;
2436
- }
2437
- table.dataTable thead > tr > th.sorting:before,
2438
- table.dataTable thead > tr > th.sorting:after,
2439
- table.dataTable thead > tr > th.sorting_asc:before,
2440
- table.dataTable thead > tr > th.sorting_asc:after,
2441
- table.dataTable thead > tr > th.sorting_desc:before,
2442
- table.dataTable thead > tr > th.sorting_desc:after,
2443
- table.dataTable thead > tr > th.sorting_asc_disabled:before,
2444
- table.dataTable thead > tr > th.sorting_asc_disabled:after,
2445
- table.dataTable thead > tr > th.sorting_desc_disabled:before,
2446
- table.dataTable thead > tr > th.sorting_desc_disabled:after,
2447
- table.dataTable thead > tr > td.sorting:before,
2448
- table.dataTable thead > tr > td.sorting:after,
2449
- table.dataTable thead > tr > td.sorting_asc:before,
2450
- table.dataTable thead > tr > td.sorting_asc:after,
2451
- table.dataTable thead > tr > td.sorting_desc:before,
2452
- table.dataTable thead > tr > td.sorting_desc:after,
2453
- table.dataTable thead > tr > td.sorting_asc_disabled:before,
2454
- table.dataTable thead > tr > td.sorting_asc_disabled:after,
2455
- table.dataTable thead > tr > td.sorting_desc_disabled:before,
2456
- table.dataTable thead > tr > td.sorting_desc_disabled:after {
2457
- @apply absolute right-2.5 block text-xs leading-3 opacity-25;
2458
- }
2459
- table.dataTable thead > tr > th.sorting:before,
2460
- table.dataTable thead > tr > th.sorting_asc:before,
2461
- table.dataTable thead > tr > th.sorting_desc:before,
2462
- table.dataTable thead > tr > th.sorting_asc_disabled:before,
2463
- table.dataTable thead > tr > th.sorting_desc_disabled:before,
2464
- table.dataTable thead > tr > td.sorting:before,
2465
- table.dataTable thead > tr > td.sorting_asc:before,
2466
- table.dataTable thead > tr > td.sorting_desc:before,
2467
- table.dataTable thead > tr > td.sorting_asc_disabled:before,
2468
- table.dataTable thead > tr > td.sorting_desc_disabled:before {
2469
- @apply bottom-[43%] h-4 w-4 bg-[url('https://api.iconify.design/lucide:chevron-up.svg')] bg-contain bg-center bg-no-repeat content-[''] dark:bg-[url('https://api.iconify.design/lucide:chevron-up.svg?color=white')];
2470
- }
2471
- table.dataTable thead > tr > th.sorting:after,
2472
- table.dataTable thead > tr > th.sorting_asc:after,
2473
- table.dataTable thead > tr > th.sorting_desc:after,
2474
- table.dataTable thead > tr > th.sorting_asc_disabled:after,
2475
- table.dataTable thead > tr > th.sorting_desc_disabled:after,
2476
- table.dataTable thead > tr > td.sorting:after,
2477
- table.dataTable thead > tr > td.sorting_asc:after,
2478
- table.dataTable thead > tr > td.sorting_desc:after,
2479
- table.dataTable thead > tr > td.sorting_asc_disabled:after,
2480
- table.dataTable thead > tr > td.sorting_desc_disabled:after {
2481
- @apply top-[43%] h-4 w-4 bg-[url('https://api.iconify.design/lucide:chevron-down.svg')] bg-contain bg-center bg-no-repeat content-[''] dark:bg-[url('https://api.iconify.design/lucide:chevron-down.svg?color=white')];
2482
- }
2483
- table.dataTable thead > tr > th.sorting_asc:before,
2484
- table.dataTable thead > tr > th.sorting_desc:after,
2485
- table.dataTable thead > tr > td.sorting_asc:before,
2486
- table.dataTable thead > tr > td.sorting_desc:after {
2487
- @apply opacity-80;
2488
- }
2489
- table.dataTable thead > tr > th.sorting_desc_disabled:after,
2490
- table.dataTable thead > tr > th.sorting_asc_disabled:before,
2491
- table.dataTable thead > tr > td.sorting_desc_disabled:after,
2492
- table.dataTable thead > tr > td.sorting_asc_disabled:before {
2493
- @apply hidden;
2494
- }
2495
- table.dataTable thead > tr > th:active,
2496
- table.dataTable thead > tr > td:active {
2497
- @apply outline-none;
2498
- }
2499
-
2500
- div.dataTables_scrollBody > table.dataTable > thead > tr > th:before,
2501
- div.dataTables_scrollBody > table.dataTable > thead > tr > th:after,
2502
- div.dataTables_scrollBody > table.dataTable > thead > tr > td:before,
2503
- div.dataTables_scrollBody > table.dataTable > thead > tr > td:after {
2504
- @apply hidden;
2505
- }
2506
-
2507
- div.dataTables_processing {
2508
- @apply absolute left-[50%] top-[50%] ml-[-100px] mt-[-26px] w-[200px] p-0.5 text-center;
2509
- }
2510
- div.dataTables_processing > div:last-child {
2511
- @apply relative mx-auto my-4 h-4 w-20;
2512
- }
2513
- div.dataTables_processing > div:last-child > div {
2514
- @apply absolute top-0 h-3.5 w-3.5 rounded-full;
2515
- background: hsl(var(--dt-row-selected));
2516
- animation-timing-function: cubic-bezier(0, 1, 1, 0);
2517
- }
2518
- div.dataTables_processing > div:last-child > div:nth-child(1) {
2519
- left: 8px;
2520
- animation: datatables-loader-1 0.6s infinite;
2521
- }
2522
- div.dataTables_processing > div:last-child > div:nth-child(2) {
2523
- left: 8px;
2524
- animation: datatables-loader-2 0.6s infinite;
2525
- }
2526
- div.dataTables_processing > div:last-child > div:nth-child(3) {
2527
- left: 32px;
2528
- animation: datatables-loader-2 0.6s infinite;
2529
- }
2530
- div.dataTables_processing > div:last-child > div:nth-child(4) {
2531
- left: 56px;
2532
- animation: datatables-loader-3 0.6s infinite;
2533
- }
2534
-
2535
- @keyframes datatables-loader-1 {
2536
- 0% {
2537
- transform: scale(0);
2538
- }
2539
- 100% {
2540
- transform: scale(1);
2541
- }
2542
- }
2543
- @keyframes datatables-loader-3 {
2544
- 0% {
2545
- transform: scale(1);
2546
- }
2547
- 100% {
2548
- transform: scale(0);
2549
- }
2550
- }
2551
- @keyframes datatables-loader-2 {
2552
- 0% {
2553
- transform: translate(0, 0);
2554
- }
2555
- 100% {
2556
- transform: translate(24px, 0);
2557
- }
2558
- }
2559
- table.dataTable.nowrap th,
2560
- table.dataTable.nowrap td {
2561
- white-space: nowrap;
2562
- }
2563
- table.dataTable th.dt-left,
2564
- table.dataTable td.dt-left {
2565
- text-align: left;
2566
- }
2567
- table.dataTable th.dt-center,
2568
- table.dataTable td.dt-center,
2569
- table.dataTable td.dataTables_empty {
2570
- text-align: center;
2571
- }
2572
- table.dataTable th.dt-right,
2573
- table.dataTable td.dt-right {
2574
- text-align: right;
2575
- }
2576
- table.dataTable th.dt-justify,
2577
- table.dataTable td.dt-justify {
2578
- text-align: justify;
2579
- }
2580
- table.dataTable th.dt-nowrap,
2581
- table.dataTable td.dt-nowrap {
2582
- white-space: nowrap;
2583
- }
2584
- table.dataTable thead th,
2585
- table.dataTable thead td,
2586
- table.dataTable tfoot th,
2587
- table.dataTable tfoot td {
2588
- text-align: left;
2589
- }
2590
- table.dataTable thead th.dt-head-left,
2591
- table.dataTable thead td.dt-head-left,
2592
- table.dataTable tfoot th.dt-head-left,
2593
- table.dataTable tfoot td.dt-head-left {
2594
- text-align: left;
2595
- }
2596
- table.dataTable thead th.dt-head-center,
2597
- table.dataTable thead td.dt-head-center,
2598
- table.dataTable tfoot th.dt-head-center,
2599
- table.dataTable tfoot td.dt-head-center {
2600
- text-align: center;
2601
- }
2602
- table.dataTable thead th.dt-head-right,
2603
- table.dataTable thead td.dt-head-right,
2604
- table.dataTable tfoot th.dt-head-right,
2605
- table.dataTable tfoot td.dt-head-right {
2606
- text-align: right;
2607
- }
2608
- table.dataTable thead th.dt-head-justify,
2609
- table.dataTable thead td.dt-head-justify,
2610
- table.dataTable tfoot th.dt-head-justify,
2611
- table.dataTable tfoot td.dt-head-justify {
2612
- text-align: justify;
2613
- }
2614
- table.dataTable thead th.dt-head-nowrap,
2615
- table.dataTable thead td.dt-head-nowrap,
2616
- table.dataTable tfoot th.dt-head-nowrap,
2617
- table.dataTable tfoot td.dt-head-nowrap {
2618
- white-space: nowrap;
2619
- }
2620
- table.dataTable tbody th.dt-body-left,
2621
- table.dataTable tbody td.dt-body-left {
2622
- text-align: left;
2623
- }
2624
- table.dataTable tbody th.dt-body-center,
2625
- table.dataTable tbody td.dt-body-center {
2626
- text-align: center;
2627
- }
2628
- table.dataTable tbody th.dt-body-right,
2629
- table.dataTable tbody td.dt-body-right {
2630
- text-align: right;
2631
- }
2632
- table.dataTable tbody th.dt-body-justify,
2633
- table.dataTable tbody td.dt-body-justify {
2634
- text-align: justify;
2635
- }
2636
- table.dataTable tbody th.dt-body-nowrap,
2637
- table.dataTable tbody td.dt-body-nowrap {
2638
- white-space: nowrap;
2639
- }
2640
-
2641
- /* Table Styles */
2642
-
2643
- table.dataTable {
2644
- @apply w-full table-auto border-collapse;
2645
- }
2646
-
2647
- /* Table header styles */
2648
- table.dataTable thead th,
2649
- table.dataTable tfoot th {
2650
- @apply text-left text-sm font-medium text-muted-foreground;
2651
- }
2652
-
2653
- table.dataTable > thead > tr > th {
2654
- @apply border-b border-t-0 px-6 py-3;
2655
- }
2656
- table.dataTable > thead > tr > td {
2657
- @apply border-b px-6 py-3 text-sm;
2658
- }
2659
- table.dataTable > thead > tr > th:active,
2660
- table.dataTable > thead > tr > td:active {
2661
- @apply outline-none;
2662
- }
2663
- table.dataTable > tfoot > tr > th,
2664
- table.dataTable > tfoot > tr > td {
2665
- @apply border-t px-6 py-3;
2666
- }
2667
- table.dataTable tbody tr {
2668
- @apply bg-transparent;
2669
- }
2670
- table.dataTable tbody tr.selected > * {
2671
- @apply bg-primary/10;
2672
- }
2673
- table.dataTable tbody tr.selected a {
2674
- @apply text-primary;
2675
- }
2676
- table.dataTable tbody th,
2677
- table.dataTable tbody td {
2678
- @apply px-6 py-3 text-sm;
2679
- }
2680
- table.dataTable.row-border > tbody > tr > th,
2681
- table.dataTable.row-border > tbody > tr > td,
2682
- table.dataTable.display > tbody > tr > th,
2683
- table.dataTable.display > tbody > tr > td {
2684
- @apply border-t;
2685
- }
2686
- table.dataTable.row-border > tbody > tr:first-child > th,
2687
- table.dataTable.row-border > tbody > tr:first-child > td,
2688
- table.dataTable.display > tbody > tr:first-child > th,
2689
- table.dataTable.display > tbody > tr:first-child > td {
2690
- @apply border-t-0;
2691
- }
2692
- table.dataTable.row-border > tbody > tr.selected + tr.selected > td,
2693
- table.dataTable.display > tbody > tr.selected + tr.selected > td {
2694
- @apply border-t-primary/30;
2695
- }
2696
- table.dataTable.cell-border > tbody > tr > th,
2697
- table.dataTable.cell-border > tbody > tr > td {
2698
- @apply border-r border-t;
2699
- }
2700
- table.dataTable.cell-border > tbody > tr > th:first-child,
2701
- table.dataTable.cell-border > tbody > tr > td:first-child {
2702
- @apply border-l;
2703
- }
2704
- table.dataTable.cell-border > tbody > tr:first-child > th,
2705
- table.dataTable.cell-border > tbody > tr:first-child > td {
2706
- @apply border-t-0;
2707
- }
2708
- table.dataTable.stripe > tbody > tr.odd > *,
2709
- table.dataTable.display > tbody > tr.odd > * {
2710
- @apply bg-muted/50;
2711
- }
2712
- table.dataTable.stripe > tbody > tr.odd.selected > *,
2713
- table.dataTable.display > tbody > tr.odd.selected > * {
2714
- @apply bg-primary/10;
2715
- }
2716
- table.dataTable.hover > tbody > tr:hover > *,
2717
- table.dataTable.display > tbody > tr:hover > * {
2718
- @apply bg-muted;
2719
- }
2720
- table.dataTable.hover > tbody > tr.selected:hover > *,
2721
- table.dataTable.display > tbody > tr.selected:hover > * {
2722
- @apply !bg-primary/10;
2723
- }
2724
- table.dataTable.order-column > tbody tr > .sorting_1,
2725
- table.dataTable.order-column > tbody tr > .sorting_2,
2726
- table.dataTable.order-column > tbody tr > .sorting_3,
2727
- table.dataTable.display > tbody tr > .sorting_1,
2728
- table.dataTable.display > tbody tr > .sorting_2,
2729
- table.dataTable.display > tbody tr > .sorting_3 {
2730
- @apply bg-muted;
2731
- }
2732
- table.dataTable.order-column > tbody tr.selected > .sorting_1,
2733
- table.dataTable.order-column > tbody tr.selected > .sorting_2,
2734
- table.dataTable.order-column > tbody tr.selected > .sorting_3,
2735
- table.dataTable.display > tbody tr.selected > .sorting_1,
2736
- table.dataTable.display > tbody tr.selected > .sorting_2,
2737
- table.dataTable.display > tbody tr.selected > .sorting_3 {
2738
- @apply !bg-primary/10;
2739
- }
2740
- table.dataTable.display > tbody > tr.odd > .sorting_1,
2741
- table.dataTable.order-column.stripe > tbody > tr.odd > .sorting_1 {
2742
- @apply bg-muted/50;
2743
- }
2744
- table.dataTable.display > tbody > tr.odd > .sorting_2,
2745
- table.dataTable.order-column.stripe > tbody > tr.odd > .sorting_2 {
2746
- @apply bg-muted/30;
2747
- }
2748
- table.dataTable.display > tbody > tr.odd > .sorting_3,
2749
- table.dataTable.order-column.stripe > tbody > tr.odd > .sorting_3 {
2750
- @apply bg-muted/10;
2751
- }
2752
- table.dataTable.display > tbody > tr.odd.selected > .sorting_1,
2753
- table.dataTable.order-column.stripe > tbody > tr.odd.selected > .sorting_1 {
2754
- @apply bg-muted/50;
2755
- }
2756
- table.dataTable.display > tbody > tr.odd.selected > .sorting_2,
2757
- table.dataTable.order-column.stripe > tbody > tr.odd.selected > .sorting_2 {
2758
- @apply bg-muted/30;
2759
- }
2760
- table.dataTable.display > tbody > tr.odd.selected > .sorting_3,
2761
- table.dataTable.order-column.stripe > tbody > tr.odd.selected > .sorting_3 {
2762
- @apply bg-muted/10;
2763
- }
2764
- table.dataTable.display > tbody > tr.even > .sorting_1,
2765
- table.dataTable.order-column.stripe > tbody > tr.even > .sorting_1 {
2766
- @apply bg-muted/50;
2767
- }
2768
- table.dataTable.display > tbody > tr.even > .sorting_2,
2769
- table.dataTable.order-column.stripe > tbody > tr.even > .sorting_2 {
2770
- @apply bg-muted/30;
2771
- }
2772
- table.dataTable.display > tbody > tr.even > .sorting_3,
2773
- table.dataTable.order-column.stripe > tbody > tr.even > .sorting_3 {
2774
- @apply bg-muted/10;
2775
- }
2776
- table.dataTable.display > tbody > tr.even.selected > .sorting_1,
2777
- table.dataTable.order-column.stripe > tbody > tr.even.selected > .sorting_1 {
2778
- @apply bg-primary/10;
2779
- }
2780
- table.dataTable.display > tbody > tr.even.selected > .sorting_2,
2781
- table.dataTable.order-column.stripe > tbody > tr.even.selected > .sorting_2 {
2782
- @apply bg-primary/10;
2783
- }
2784
- table.dataTable.display > tbody > tr.even.selected > .sorting_3,
2785
- table.dataTable.order-column.stripe > tbody > tr.even.selected > .sorting_3 {
2786
- @apply bg-primary/10;
2787
- }
2788
- table.dataTable.display tbody tr:hover > .sorting_1,
2789
- table.dataTable.order-column.hover tbody tr:hover > .sorting_1 {
2790
- @apply bg-muted;
2791
- }
2792
- table.dataTable.display tbody tr:hover > .sorting_2,
2793
- table.dataTable.order-column.hover tbody tr:hover > .sorting_2 {
2794
- @apply bg-muted;
2795
- }
2796
- table.dataTable.display tbody tr:hover > .sorting_3,
2797
- table.dataTable.order-column.hover tbody tr:hover > .sorting_3 {
2798
- @apply bg-muted;
2799
- }
2800
- table.dataTable.display tbody tr:hover.selected > .sorting_1,
2801
- table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_1 {
2802
- @apply bg-primary/10;
2803
- }
2804
- table.dataTable.display tbody tr:hover.selected > .sorting_2,
2805
- table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_2 {
2806
- @apply bg-primary/10;
2807
- }
2808
- table.dataTable.display tbody tr:hover.selected > .sorting_3,
2809
- table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_3 {
2810
- @apply bg-primary/10;
2811
- }
2812
- table.dataTable.no-footer {
2813
- @apply border-b-0;
2814
- }
2815
- table.dataTable.compact thead th,
2816
- table.dataTable.compact thead td,
2817
- table.dataTable.compact tfoot th,
2818
- table.dataTable.compact tfoot td,
2819
- table.dataTable.compact tbody th,
2820
- table.dataTable.compact tbody td {
2821
- @apply px-4 py-2;
2822
- }
2823
-
2824
- table.dataTable th,
2825
- table.dataTable td {
2826
- @apply box-content border-y;
2827
- }
2828
-
2829
- table.dataTable tr:last-child td {
2830
- @apply !border-b-0;
2831
- }
2832
-
2833
- /* Control feature layout */
2834
- .dataTables_wrapper {
2835
- @apply w-full overflow-x-auto;
2836
- }
2837
-
2838
- /* Export button styles */
2839
- .dataTables_wrapper .dt-buttons {
2840
- @apply inline-flex flex-wrap items-center gap-2;
2841
- button {
2842
- @apply inline-flex h-9 items-center gap-2 whitespace-nowrap rounded-md border bg-background px-3 text-sm text-muted-foreground hover:bg-muted focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background;
2843
- }
2844
- }
2353
+ `}],files:[{fileName:"Datatable.client.vue",dirPath:"components/UI",fileContent:`<template>\r
2354
+ <DataTable ref="table" :data="data" :class="props.class" :options="options">\r
2355
+ <slot></slot>\r
2356
+ </DataTable>\r
2357
+ </template>\r
2358
+ \r
2359
+ <script lang="ts" setup generic="T">\r
2360
+ import type DataTableRef from "datatables.net";\r
2361
+ import type { Config } from "datatables.net/types/types";\r
2362
+ \r
2363
+ const table = shallowRef<{ dt: InstanceType<typeof DataTableRef<T[]>> } | null>(null);\r
2364
+ \r
2365
+ const props = withDefaults(\r
2366
+ defineProps<{\r
2367
+ data?: Config["data"];\r
2368
+ class?: any;\r
2369
+ options?: Config;\r
2370
+ }>(),\r
2371
+ {\r
2372
+ data: () => [],\r
2373
+ class: "nowrap hover order-column row-border stripe display",\r
2374
+ options: () => ({}),\r
2375
+ }\r
2376
+ );\r
2377
+ \r
2378
+ const emits = defineEmits<{\r
2379
+ ready: [any];\r
2380
+ }>();\r
2381
+ \r
2382
+ onMounted(() => {\r
2383
+ nextTick(() => {\r
2384
+ emits("ready", table.value?.dt);\r
2385
+ });\r
2386
+ });\r
2387
+ </script>\r
2388
+ \r
2389
+ <style>\r
2390
+ :root {\r
2391
+ --dt-row-selected: 262.1, 83.3%, 57.8%;\r
2392
+ --dt-row-selected-text: 210, 20%, 98%;\r
2393
+ --dt-row-selected-link: 262.1, 83.3%, 57.8%;\r
2394
+ --dt-row-stripe: 0, 0%, 100%;\r
2395
+ --dt-row-hover: 0, 0%, 100%;\r
2396
+ --dt-column-ordering: 0, 0%, 100%;\r
2397
+ --dt-border: 220, 13%, 91%;\r
2398
+ --dt-foreground: 224, 71.4%, 4.1%;\r
2399
+ }\r
2400
+ \r
2401
+ .dark {\r
2402
+ --dt-row-selected: 263.4, 70%, 50.4%;\r
2403
+ --dt-row-selected-text: 210, 20%, 98%;\r
2404
+ --dt-row-selected-link: 263.4, 70%, 50.4%;\r
2405
+ --dt-row-stripe: 224, 71.4%, 4.1%;\r
2406
+ --dt-row-hover: 224, 71.4%, 4.1%;\r
2407
+ --dt-column-ordering: 224, 71.4%, 4.1%;\r
2408
+ --dt-border: 215, 27.9%, 16.9%;\r
2409
+ --dt-foreground: 224, 71.4%, 4.1%;\r
2410
+ }\r
2411
+ \r
2412
+ table.dataTable td.dt-control {\r
2413
+ text-align: center;\r
2414
+ cursor: pointer;\r
2415
+ }\r
2416
+ table.dataTable td.dt-control:before {\r
2417
+ display: inline-block;\r
2418
+ color: hsla(var(--dt-foreground), 0.5);\r
2419
+ content: "\u25BA";\r
2420
+ }\r
2421
+ table.dataTable tr.dt-hasChild td.dt-control:before {\r
2422
+ content: "\u25BC";\r
2423
+ }\r
2424
+ \r
2425
+ table.dataTable thead > tr > th.sorting,\r
2426
+ table.dataTable thead > tr > th.sorting_asc,\r
2427
+ table.dataTable thead > tr > th.sorting_desc,\r
2428
+ table.dataTable thead > tr > th.sorting_asc_disabled,\r
2429
+ table.dataTable thead > tr > th.sorting_desc_disabled,\r
2430
+ table.dataTable thead > tr > td.sorting,\r
2431
+ table.dataTable thead > tr > td.sorting_asc,\r
2432
+ table.dataTable thead > tr > td.sorting_desc,\r
2433
+ table.dataTable thead > tr > td.sorting_asc_disabled,\r
2434
+ table.dataTable thead > tr > td.sorting_desc_disabled {\r
2435
+ @apply relative cursor-pointer pr-7;\r
2436
+ }\r
2437
+ table.dataTable thead > tr > th.sorting:before,\r
2438
+ table.dataTable thead > tr > th.sorting:after,\r
2439
+ table.dataTable thead > tr > th.sorting_asc:before,\r
2440
+ table.dataTable thead > tr > th.sorting_asc:after,\r
2441
+ table.dataTable thead > tr > th.sorting_desc:before,\r
2442
+ table.dataTable thead > tr > th.sorting_desc:after,\r
2443
+ table.dataTable thead > tr > th.sorting_asc_disabled:before,\r
2444
+ table.dataTable thead > tr > th.sorting_asc_disabled:after,\r
2445
+ table.dataTable thead > tr > th.sorting_desc_disabled:before,\r
2446
+ table.dataTable thead > tr > th.sorting_desc_disabled:after,\r
2447
+ table.dataTable thead > tr > td.sorting:before,\r
2448
+ table.dataTable thead > tr > td.sorting:after,\r
2449
+ table.dataTable thead > tr > td.sorting_asc:before,\r
2450
+ table.dataTable thead > tr > td.sorting_asc:after,\r
2451
+ table.dataTable thead > tr > td.sorting_desc:before,\r
2452
+ table.dataTable thead > tr > td.sorting_desc:after,\r
2453
+ table.dataTable thead > tr > td.sorting_asc_disabled:before,\r
2454
+ table.dataTable thead > tr > td.sorting_asc_disabled:after,\r
2455
+ table.dataTable thead > tr > td.sorting_desc_disabled:before,\r
2456
+ table.dataTable thead > tr > td.sorting_desc_disabled:after {\r
2457
+ @apply absolute right-2.5 block text-xs leading-3 opacity-25;\r
2458
+ }\r
2459
+ table.dataTable thead > tr > th.sorting:before,\r
2460
+ table.dataTable thead > tr > th.sorting_asc:before,\r
2461
+ table.dataTable thead > tr > th.sorting_desc:before,\r
2462
+ table.dataTable thead > tr > th.sorting_asc_disabled:before,\r
2463
+ table.dataTable thead > tr > th.sorting_desc_disabled:before,\r
2464
+ table.dataTable thead > tr > td.sorting:before,\r
2465
+ table.dataTable thead > tr > td.sorting_asc:before,\r
2466
+ table.dataTable thead > tr > td.sorting_desc:before,\r
2467
+ table.dataTable thead > tr > td.sorting_asc_disabled:before,\r
2468
+ table.dataTable thead > tr > td.sorting_desc_disabled:before {\r
2469
+ @apply bottom-[43%] h-4 w-4 bg-[url('https://api.iconify.design/lucide:chevron-up.svg')] bg-contain bg-center bg-no-repeat content-[''] dark:bg-[url('https://api.iconify.design/lucide:chevron-up.svg?color=white')];\r
2470
+ }\r
2471
+ table.dataTable thead > tr > th.sorting:after,\r
2472
+ table.dataTable thead > tr > th.sorting_asc:after,\r
2473
+ table.dataTable thead > tr > th.sorting_desc:after,\r
2474
+ table.dataTable thead > tr > th.sorting_asc_disabled:after,\r
2475
+ table.dataTable thead > tr > th.sorting_desc_disabled:after,\r
2476
+ table.dataTable thead > tr > td.sorting:after,\r
2477
+ table.dataTable thead > tr > td.sorting_asc:after,\r
2478
+ table.dataTable thead > tr > td.sorting_desc:after,\r
2479
+ table.dataTable thead > tr > td.sorting_asc_disabled:after,\r
2480
+ table.dataTable thead > tr > td.sorting_desc_disabled:after {\r
2481
+ @apply top-[43%] h-4 w-4 bg-[url('https://api.iconify.design/lucide:chevron-down.svg')] bg-contain bg-center bg-no-repeat content-[''] dark:bg-[url('https://api.iconify.design/lucide:chevron-down.svg?color=white')];\r
2482
+ }\r
2483
+ table.dataTable thead > tr > th.sorting_asc:before,\r
2484
+ table.dataTable thead > tr > th.sorting_desc:after,\r
2485
+ table.dataTable thead > tr > td.sorting_asc:before,\r
2486
+ table.dataTable thead > tr > td.sorting_desc:after {\r
2487
+ @apply opacity-80;\r
2488
+ }\r
2489
+ table.dataTable thead > tr > th.sorting_desc_disabled:after,\r
2490
+ table.dataTable thead > tr > th.sorting_asc_disabled:before,\r
2491
+ table.dataTable thead > tr > td.sorting_desc_disabled:after,\r
2492
+ table.dataTable thead > tr > td.sorting_asc_disabled:before {\r
2493
+ @apply hidden;\r
2494
+ }\r
2495
+ table.dataTable thead > tr > th:active,\r
2496
+ table.dataTable thead > tr > td:active {\r
2497
+ @apply outline-none;\r
2498
+ }\r
2499
+ \r
2500
+ div.dataTables_scrollBody > table.dataTable > thead > tr > th:before,\r
2501
+ div.dataTables_scrollBody > table.dataTable > thead > tr > th:after,\r
2502
+ div.dataTables_scrollBody > table.dataTable > thead > tr > td:before,\r
2503
+ div.dataTables_scrollBody > table.dataTable > thead > tr > td:after {\r
2504
+ @apply hidden;\r
2505
+ }\r
2506
+ \r
2507
+ div.dataTables_processing {\r
2508
+ @apply absolute left-[50%] top-[50%] ml-[-100px] mt-[-26px] w-[200px] p-0.5 text-center;\r
2509
+ }\r
2510
+ div.dataTables_processing > div:last-child {\r
2511
+ @apply relative mx-auto my-4 h-4 w-20;\r
2512
+ }\r
2513
+ div.dataTables_processing > div:last-child > div {\r
2514
+ @apply absolute top-0 h-3.5 w-3.5 rounded-full;\r
2515
+ background: hsl(var(--dt-row-selected));\r
2516
+ animation-timing-function: cubic-bezier(0, 1, 1, 0);\r
2517
+ }\r
2518
+ div.dataTables_processing > div:last-child > div:nth-child(1) {\r
2519
+ left: 8px;\r
2520
+ animation: datatables-loader-1 0.6s infinite;\r
2521
+ }\r
2522
+ div.dataTables_processing > div:last-child > div:nth-child(2) {\r
2523
+ left: 8px;\r
2524
+ animation: datatables-loader-2 0.6s infinite;\r
2525
+ }\r
2526
+ div.dataTables_processing > div:last-child > div:nth-child(3) {\r
2527
+ left: 32px;\r
2528
+ animation: datatables-loader-2 0.6s infinite;\r
2529
+ }\r
2530
+ div.dataTables_processing > div:last-child > div:nth-child(4) {\r
2531
+ left: 56px;\r
2532
+ animation: datatables-loader-3 0.6s infinite;\r
2533
+ }\r
2534
+ \r
2535
+ @keyframes datatables-loader-1 {\r
2536
+ 0% {\r
2537
+ transform: scale(0);\r
2538
+ }\r
2539
+ 100% {\r
2540
+ transform: scale(1);\r
2541
+ }\r
2542
+ }\r
2543
+ @keyframes datatables-loader-3 {\r
2544
+ 0% {\r
2545
+ transform: scale(1);\r
2546
+ }\r
2547
+ 100% {\r
2548
+ transform: scale(0);\r
2549
+ }\r
2550
+ }\r
2551
+ @keyframes datatables-loader-2 {\r
2552
+ 0% {\r
2553
+ transform: translate(0, 0);\r
2554
+ }\r
2555
+ 100% {\r
2556
+ transform: translate(24px, 0);\r
2557
+ }\r
2558
+ }\r
2559
+ table.dataTable.nowrap th,\r
2560
+ table.dataTable.nowrap td {\r
2561
+ white-space: nowrap;\r
2562
+ }\r
2563
+ table.dataTable th.dt-left,\r
2564
+ table.dataTable td.dt-left {\r
2565
+ text-align: left;\r
2566
+ }\r
2567
+ table.dataTable th.dt-center,\r
2568
+ table.dataTable td.dt-center,\r
2569
+ table.dataTable td.dataTables_empty {\r
2570
+ text-align: center;\r
2571
+ }\r
2572
+ table.dataTable th.dt-right,\r
2573
+ table.dataTable td.dt-right {\r
2574
+ text-align: right;\r
2575
+ }\r
2576
+ table.dataTable th.dt-justify,\r
2577
+ table.dataTable td.dt-justify {\r
2578
+ text-align: justify;\r
2579
+ }\r
2580
+ table.dataTable th.dt-nowrap,\r
2581
+ table.dataTable td.dt-nowrap {\r
2582
+ white-space: nowrap;\r
2583
+ }\r
2584
+ table.dataTable thead th,\r
2585
+ table.dataTable thead td,\r
2586
+ table.dataTable tfoot th,\r
2587
+ table.dataTable tfoot td {\r
2588
+ text-align: left;\r
2589
+ }\r
2590
+ table.dataTable thead th.dt-head-left,\r
2591
+ table.dataTable thead td.dt-head-left,\r
2592
+ table.dataTable tfoot th.dt-head-left,\r
2593
+ table.dataTable tfoot td.dt-head-left {\r
2594
+ text-align: left;\r
2595
+ }\r
2596
+ table.dataTable thead th.dt-head-center,\r
2597
+ table.dataTable thead td.dt-head-center,\r
2598
+ table.dataTable tfoot th.dt-head-center,\r
2599
+ table.dataTable tfoot td.dt-head-center {\r
2600
+ text-align: center;\r
2601
+ }\r
2602
+ table.dataTable thead th.dt-head-right,\r
2603
+ table.dataTable thead td.dt-head-right,\r
2604
+ table.dataTable tfoot th.dt-head-right,\r
2605
+ table.dataTable tfoot td.dt-head-right {\r
2606
+ text-align: right;\r
2607
+ }\r
2608
+ table.dataTable thead th.dt-head-justify,\r
2609
+ table.dataTable thead td.dt-head-justify,\r
2610
+ table.dataTable tfoot th.dt-head-justify,\r
2611
+ table.dataTable tfoot td.dt-head-justify {\r
2612
+ text-align: justify;\r
2613
+ }\r
2614
+ table.dataTable thead th.dt-head-nowrap,\r
2615
+ table.dataTable thead td.dt-head-nowrap,\r
2616
+ table.dataTable tfoot th.dt-head-nowrap,\r
2617
+ table.dataTable tfoot td.dt-head-nowrap {\r
2618
+ white-space: nowrap;\r
2619
+ }\r
2620
+ table.dataTable tbody th.dt-body-left,\r
2621
+ table.dataTable tbody td.dt-body-left {\r
2622
+ text-align: left;\r
2623
+ }\r
2624
+ table.dataTable tbody th.dt-body-center,\r
2625
+ table.dataTable tbody td.dt-body-center {\r
2626
+ text-align: center;\r
2627
+ }\r
2628
+ table.dataTable tbody th.dt-body-right,\r
2629
+ table.dataTable tbody td.dt-body-right {\r
2630
+ text-align: right;\r
2631
+ }\r
2632
+ table.dataTable tbody th.dt-body-justify,\r
2633
+ table.dataTable tbody td.dt-body-justify {\r
2634
+ text-align: justify;\r
2635
+ }\r
2636
+ table.dataTable tbody th.dt-body-nowrap,\r
2637
+ table.dataTable tbody td.dt-body-nowrap {\r
2638
+ white-space: nowrap;\r
2639
+ }\r
2640
+ \r
2641
+ /* Table Styles */\r
2642
+ \r
2643
+ table.dataTable {\r
2644
+ @apply w-full table-auto border-collapse;\r
2645
+ }\r
2646
+ \r
2647
+ /* Table header styles */\r
2648
+ table.dataTable thead th,\r
2649
+ table.dataTable tfoot th {\r
2650
+ @apply text-left text-sm font-medium text-muted-foreground;\r
2651
+ }\r
2652
+ \r
2653
+ table.dataTable > thead > tr > th {\r
2654
+ @apply border-b border-t-0 px-6 py-3;\r
2655
+ }\r
2656
+ table.dataTable > thead > tr > td {\r
2657
+ @apply border-b px-6 py-3 text-sm;\r
2658
+ }\r
2659
+ table.dataTable > thead > tr > th:active,\r
2660
+ table.dataTable > thead > tr > td:active {\r
2661
+ @apply outline-none;\r
2662
+ }\r
2663
+ table.dataTable > tfoot > tr > th,\r
2664
+ table.dataTable > tfoot > tr > td {\r
2665
+ @apply border-t px-6 py-3;\r
2666
+ }\r
2667
+ table.dataTable tbody tr {\r
2668
+ @apply bg-transparent;\r
2669
+ }\r
2670
+ table.dataTable tbody tr.selected > * {\r
2671
+ @apply bg-primary/10;\r
2672
+ }\r
2673
+ table.dataTable tbody tr.selected a {\r
2674
+ @apply text-primary;\r
2675
+ }\r
2676
+ table.dataTable tbody th,\r
2677
+ table.dataTable tbody td {\r
2678
+ @apply px-6 py-3 text-sm;\r
2679
+ }\r
2680
+ table.dataTable.row-border > tbody > tr > th,\r
2681
+ table.dataTable.row-border > tbody > tr > td,\r
2682
+ table.dataTable.display > tbody > tr > th,\r
2683
+ table.dataTable.display > tbody > tr > td {\r
2684
+ @apply border-t;\r
2685
+ }\r
2686
+ table.dataTable.row-border > tbody > tr:first-child > th,\r
2687
+ table.dataTable.row-border > tbody > tr:first-child > td,\r
2688
+ table.dataTable.display > tbody > tr:first-child > th,\r
2689
+ table.dataTable.display > tbody > tr:first-child > td {\r
2690
+ @apply border-t-0;\r
2691
+ }\r
2692
+ table.dataTable.row-border > tbody > tr.selected + tr.selected > td,\r
2693
+ table.dataTable.display > tbody > tr.selected + tr.selected > td {\r
2694
+ @apply border-t-primary/30;\r
2695
+ }\r
2696
+ table.dataTable.cell-border > tbody > tr > th,\r
2697
+ table.dataTable.cell-border > tbody > tr > td {\r
2698
+ @apply border-r border-t;\r
2699
+ }\r
2700
+ table.dataTable.cell-border > tbody > tr > th:first-child,\r
2701
+ table.dataTable.cell-border > tbody > tr > td:first-child {\r
2702
+ @apply border-l;\r
2703
+ }\r
2704
+ table.dataTable.cell-border > tbody > tr:first-child > th,\r
2705
+ table.dataTable.cell-border > tbody > tr:first-child > td {\r
2706
+ @apply border-t-0;\r
2707
+ }\r
2708
+ table.dataTable.stripe > tbody > tr.odd > *,\r
2709
+ table.dataTable.display > tbody > tr.odd > * {\r
2710
+ @apply bg-muted/50;\r
2711
+ }\r
2712
+ table.dataTable.stripe > tbody > tr.odd.selected > *,\r
2713
+ table.dataTable.display > tbody > tr.odd.selected > * {\r
2714
+ @apply bg-primary/10;\r
2715
+ }\r
2716
+ table.dataTable.hover > tbody > tr:hover > *,\r
2717
+ table.dataTable.display > tbody > tr:hover > * {\r
2718
+ @apply bg-muted;\r
2719
+ }\r
2720
+ table.dataTable.hover > tbody > tr.selected:hover > *,\r
2721
+ table.dataTable.display > tbody > tr.selected:hover > * {\r
2722
+ @apply !bg-primary/10;\r
2723
+ }\r
2724
+ table.dataTable.order-column > tbody tr > .sorting_1,\r
2725
+ table.dataTable.order-column > tbody tr > .sorting_2,\r
2726
+ table.dataTable.order-column > tbody tr > .sorting_3,\r
2727
+ table.dataTable.display > tbody tr > .sorting_1,\r
2728
+ table.dataTable.display > tbody tr > .sorting_2,\r
2729
+ table.dataTable.display > tbody tr > .sorting_3 {\r
2730
+ @apply bg-muted;\r
2731
+ }\r
2732
+ table.dataTable.order-column > tbody tr.selected > .sorting_1,\r
2733
+ table.dataTable.order-column > tbody tr.selected > .sorting_2,\r
2734
+ table.dataTable.order-column > tbody tr.selected > .sorting_3,\r
2735
+ table.dataTable.display > tbody tr.selected > .sorting_1,\r
2736
+ table.dataTable.display > tbody tr.selected > .sorting_2,\r
2737
+ table.dataTable.display > tbody tr.selected > .sorting_3 {\r
2738
+ @apply !bg-primary/10;\r
2739
+ }\r
2740
+ table.dataTable.display > tbody > tr.odd > .sorting_1,\r
2741
+ table.dataTable.order-column.stripe > tbody > tr.odd > .sorting_1 {\r
2742
+ @apply bg-muted/50;\r
2743
+ }\r
2744
+ table.dataTable.display > tbody > tr.odd > .sorting_2,\r
2745
+ table.dataTable.order-column.stripe > tbody > tr.odd > .sorting_2 {\r
2746
+ @apply bg-muted/30;\r
2747
+ }\r
2748
+ table.dataTable.display > tbody > tr.odd > .sorting_3,\r
2749
+ table.dataTable.order-column.stripe > tbody > tr.odd > .sorting_3 {\r
2750
+ @apply bg-muted/10;\r
2751
+ }\r
2752
+ table.dataTable.display > tbody > tr.odd.selected > .sorting_1,\r
2753
+ table.dataTable.order-column.stripe > tbody > tr.odd.selected > .sorting_1 {\r
2754
+ @apply bg-muted/50;\r
2755
+ }\r
2756
+ table.dataTable.display > tbody > tr.odd.selected > .sorting_2,\r
2757
+ table.dataTable.order-column.stripe > tbody > tr.odd.selected > .sorting_2 {\r
2758
+ @apply bg-muted/30;\r
2759
+ }\r
2760
+ table.dataTable.display > tbody > tr.odd.selected > .sorting_3,\r
2761
+ table.dataTable.order-column.stripe > tbody > tr.odd.selected > .sorting_3 {\r
2762
+ @apply bg-muted/10;\r
2763
+ }\r
2764
+ table.dataTable.display > tbody > tr.even > .sorting_1,\r
2765
+ table.dataTable.order-column.stripe > tbody > tr.even > .sorting_1 {\r
2766
+ @apply bg-muted/50;\r
2767
+ }\r
2768
+ table.dataTable.display > tbody > tr.even > .sorting_2,\r
2769
+ table.dataTable.order-column.stripe > tbody > tr.even > .sorting_2 {\r
2770
+ @apply bg-muted/30;\r
2771
+ }\r
2772
+ table.dataTable.display > tbody > tr.even > .sorting_3,\r
2773
+ table.dataTable.order-column.stripe > tbody > tr.even > .sorting_3 {\r
2774
+ @apply bg-muted/10;\r
2775
+ }\r
2776
+ table.dataTable.display > tbody > tr.even.selected > .sorting_1,\r
2777
+ table.dataTable.order-column.stripe > tbody > tr.even.selected > .sorting_1 {\r
2778
+ @apply bg-primary/10;\r
2779
+ }\r
2780
+ table.dataTable.display > tbody > tr.even.selected > .sorting_2,\r
2781
+ table.dataTable.order-column.stripe > tbody > tr.even.selected > .sorting_2 {\r
2782
+ @apply bg-primary/10;\r
2783
+ }\r
2784
+ table.dataTable.display > tbody > tr.even.selected > .sorting_3,\r
2785
+ table.dataTable.order-column.stripe > tbody > tr.even.selected > .sorting_3 {\r
2786
+ @apply bg-primary/10;\r
2787
+ }\r
2788
+ table.dataTable.display tbody tr:hover > .sorting_1,\r
2789
+ table.dataTable.order-column.hover tbody tr:hover > .sorting_1 {\r
2790
+ @apply bg-muted;\r
2791
+ }\r
2792
+ table.dataTable.display tbody tr:hover > .sorting_2,\r
2793
+ table.dataTable.order-column.hover tbody tr:hover > .sorting_2 {\r
2794
+ @apply bg-muted;\r
2795
+ }\r
2796
+ table.dataTable.display tbody tr:hover > .sorting_3,\r
2797
+ table.dataTable.order-column.hover tbody tr:hover > .sorting_3 {\r
2798
+ @apply bg-muted;\r
2799
+ }\r
2800
+ table.dataTable.display tbody tr:hover.selected > .sorting_1,\r
2801
+ table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_1 {\r
2802
+ @apply bg-primary/10;\r
2803
+ }\r
2804
+ table.dataTable.display tbody tr:hover.selected > .sorting_2,\r
2805
+ table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_2 {\r
2806
+ @apply bg-primary/10;\r
2807
+ }\r
2808
+ table.dataTable.display tbody tr:hover.selected > .sorting_3,\r
2809
+ table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_3 {\r
2810
+ @apply bg-primary/10;\r
2811
+ }\r
2812
+ table.dataTable.no-footer {\r
2813
+ @apply border-b-0;\r
2814
+ }\r
2815
+ table.dataTable.compact thead th,\r
2816
+ table.dataTable.compact thead td,\r
2817
+ table.dataTable.compact tfoot th,\r
2818
+ table.dataTable.compact tfoot td,\r
2819
+ table.dataTable.compact tbody th,\r
2820
+ table.dataTable.compact tbody td {\r
2821
+ @apply px-4 py-2;\r
2822
+ }\r
2823
+ \r
2824
+ table.dataTable th,\r
2825
+ table.dataTable td {\r
2826
+ @apply box-content border-y;\r
2827
+ }\r
2828
+ \r
2829
+ table.dataTable tr:last-child td {\r
2830
+ @apply !border-b-0;\r
2831
+ }\r
2832
+ \r
2833
+ /* Control feature layout */\r
2834
+ .dataTables_wrapper {\r
2835
+ @apply w-full overflow-x-auto;\r
2836
+ }\r
2837
+ \r
2838
+ /* Export button styles */\r
2839
+ .dataTables_wrapper .dt-buttons {\r
2840
+ @apply inline-flex flex-wrap items-center gap-2;\r
2841
+ button {\r
2842
+ @apply inline-flex h-9 items-center gap-2 whitespace-nowrap rounded-md border bg-background px-3 text-sm text-muted-foreground hover:bg-muted focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background;\r
2843
+ }\r
2844
+ }\r
2845
+ \r
2846
+ /* Copy modal */\r
2847
+ .dt-button-info {\r
2848
+ @apply fixed inset-0 z-50 flex flex-col items-center justify-center bg-background/50 backdrop-blur;\r
2849
+ }\r
2850
+ \r
2851
+ .dataTables_wrapper .dataTables_length {\r
2852
+ label {\r
2853
+ @apply inline-flex items-center gap-2 text-sm font-normal text-muted-foreground;\r
2854
+ select {\r
2855
+ @apply h-9 w-[70px] cursor-pointer rounded-md border border-border bg-background px-2 py-1 transition focus:border-primary focus:outline-none focus-visible:border-input focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background sm:text-sm;\r
2856
+ }\r
2857
+ }\r
2858
+ }\r
2859
+ .dataTables_wrapper .dataTables_filter {\r
2860
+ label {\r
2861
+ @apply inline-flex w-full cursor-pointer items-center gap-2 text-sm font-normal text-muted-foreground;\r
2862
+ input {\r
2863
+ @apply h-9 w-full rounded-md border border-border bg-background px-2 py-1 transition focus:border-primary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:ring-offset-background focus-visible:border-input sm:text-sm;\r
2864
+ }\r
2865
+ }\r
2866
+ }\r
2867
+ .dataTables_wrapper .dataTables_info {\r
2868
+ @apply flex items-center gap-3 text-sm !text-muted-foreground;\r
2869
+ }\r
2870
+ .dataTables_wrapper .dataTables_paginate {\r
2871
+ .paginate_button {\r
2872
+ @apply ml-1 box-border inline-flex h-9 min-w-[36px] cursor-pointer items-center justify-center rounded bg-transparent px-3 py-2 text-center text-sm focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background;\r
2873
+ }\r
2874
+ }\r
2875
+ .dataTables_wrapper .dataTables_paginate .paginate_button.current,\r
2876
+ .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {\r
2877
+ @apply bg-muted;\r
2878
+ }\r
2879
+ .dataTables_wrapper .dataTables_paginate .paginate_button.disabled,\r
2880
+ .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover,\r
2881
+ .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active {\r
2882
+ @apply pointer-events-none opacity-50;\r
2883
+ }\r
2884
+ .dataTables_wrapper .dataTables_paginate .paginate_button:hover {\r
2885
+ @apply bg-muted;\r
2886
+ }\r
2887
+ .dataTables_wrapper .dataTables_paginate .paginate_button:active {\r
2888
+ @apply bg-muted;\r
2889
+ }\r
2890
+ .dataTables_wrapper .dataTables_paginate .ellipsis {\r
2891
+ @apply inline-flex h-8 min-w-[32px] items-start justify-center text-sm;\r
2892
+ }\r
2893
+ .dataTables_wrapper .dataTables_scroll {\r
2894
+ clear: both;\r
2895
+ }\r
2896
+ .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody {\r
2897
+ -webkit-overflow-scrolling: touch;\r
2898
+ }\r
2899
+ .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > th,\r
2900
+ .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > td,\r
2901
+ .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > th,\r
2902
+ .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > td {\r
2903
+ vertical-align: middle;\r
2904
+ }\r
2905
+ .dataTables_wrapper\r
2906
+ .dataTables_scroll\r
2907
+ div.dataTables_scrollBody\r
2908
+ > table\r
2909
+ > thead\r
2910
+ > tr\r
2911
+ > th\r
2912
+ > div.dataTables_sizing,\r
2913
+ .dataTables_wrapper\r
2914
+ .dataTables_scroll\r
2915
+ div.dataTables_scrollBody\r
2916
+ > table\r
2917
+ > thead\r
2918
+ > tr\r
2919
+ > td\r
2920
+ > div.dataTables_sizing,\r
2921
+ .dataTables_wrapper\r
2922
+ .dataTables_scroll\r
2923
+ div.dataTables_scrollBody\r
2924
+ > table\r
2925
+ > tbody\r
2926
+ > tr\r
2927
+ > th\r
2928
+ > div.dataTables_sizing,\r
2929
+ .dataTables_wrapper\r
2930
+ .dataTables_scroll\r
2931
+ div.dataTables_scrollBody\r
2932
+ > table\r
2933
+ > tbody\r
2934
+ > tr\r
2935
+ > td\r
2936
+ > div.dataTables_sizing {\r
2937
+ height: 0;\r
2938
+ overflow: hidden;\r
2939
+ margin: 0 !important;\r
2940
+ padding: 0 !important;\r
2941
+ }\r
2942
+ .dataTables_wrapper.no-footer .dataTables_scrollBody {\r
2943
+ @apply border-b;\r
2944
+ }\r
2945
+ .dataTables_wrapper.no-footer div.dataTables_scrollHead table.dataTable,\r
2946
+ .dataTables_wrapper.no-footer div.dataTables_scrollBody > table {\r
2947
+ border-bottom: none;\r
2948
+ }\r
2949
+ .dataTables_wrapper:after {\r
2950
+ visibility: hidden;\r
2951
+ display: block;\r
2952
+ content: "";\r
2953
+ clear: both;\r
2954
+ height: 0;\r
2955
+ }\r
2956
+ \r
2957
+ /* \r
2958
+ responsive styles\r
2959
+ */\r
2960
+ table.dataTable.dtr-inline.collapsed > tbody > tr > td.child,\r
2961
+ table.dataTable.dtr-inline.collapsed > tbody > tr > th.child,\r
2962
+ table.dataTable.dtr-inline.collapsed > tbody > tr > td.dataTables_empty {\r
2963
+ cursor: default !important;\r
2964
+ }\r
2965
+ table.dataTable.dtr-inline.collapsed > tbody > tr > td.child:before,\r
2966
+ table.dataTable.dtr-inline.collapsed > tbody > tr > th.child:before,\r
2967
+ table.dataTable.dtr-inline.collapsed > tbody > tr > td.dataTables_empty:before {\r
2968
+ display: none !important;\r
2969
+ }\r
2970
+ table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control,\r
2971
+ table.dataTable.dtr-inline.collapsed > tbody > tr > th.dtr-control {\r
2972
+ cursor: pointer;\r
2973
+ }\r
2974
+ \r
2975
+ table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control:before,\r
2976
+ table.dataTable.dtr-inline.collapsed > tbody > tr > th.dtr-control:before {\r
2977
+ @apply mr-2 inline-flex h-4 w-4 bg-[url('https://api.iconify.design/lucide:chevron-right.svg')] bg-contain bg-center bg-no-repeat pb-[3px] content-[''] dark:bg-[url('https://api.iconify.design/lucide:chevron-right.svg?color=white')];\r
2978
+ }\r
2979
+ table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control.arrow-right::before,\r
2980
+ table.dataTable.dtr-inline.collapsed > tbody > tr > th.dtr-control.arrow-right::before {\r
2981
+ content: "\u25C4";\r
2982
+ }\r
2983
+ table.dataTable.dtr-inline.collapsed > tbody > tr.parent > td.dtr-control:before,\r
2984
+ table.dataTable.dtr-inline.collapsed > tbody > tr.parent > th.dtr-control:before {\r
2985
+ @apply mr-2 inline-block h-4 w-4 bg-[url('https://api.iconify.design/lucide:chevron-down.svg')] bg-contain bg-center bg-no-repeat content-[''] dark:bg-[url('https://api.iconify.design/lucide:chevron-down.svg?color=white')];\r
2986
+ }\r
2987
+ table.dataTable.dtr-inline.collapsed.compact > tbody > tr > td.dtr-control,\r
2988
+ table.dataTable.dtr-inline.collapsed.compact > tbody > tr > th.dtr-control {\r
2989
+ padding-left: 0.333em;\r
2990
+ }\r
2991
+ table.dataTable.dtr-column > tbody > tr > td.dtr-control,\r
2992
+ table.dataTable.dtr-column > tbody > tr > th.dtr-control,\r
2993
+ table.dataTable.dtr-column > tbody > tr > td.control,\r
2994
+ table.dataTable.dtr-column > tbody > tr > th.control {\r
2995
+ cursor: pointer;\r
2996
+ }\r
2997
+ table.dataTable.dtr-column > tbody > tr > td.dtr-control:before,\r
2998
+ table.dataTable.dtr-column > tbody > tr > th.dtr-control:before,\r
2999
+ table.dataTable.dtr-column > tbody > tr > td.control:before,\r
3000
+ table.dataTable.dtr-column > tbody > tr > th.control:before {\r
3001
+ @apply mr-2 inline-flex h-4 w-4 bg-[url('https://api.iconify.design/lucide:chevron-right.svg')] bg-contain bg-center bg-no-repeat pb-[3px] content-[''] dark:bg-[url('https://api.iconify.design/lucide:chevron-right.svg?color=white')];\r
3002
+ }\r
3003
+ table.dataTable.dtr-column > tbody > tr > td.dtr-control.arrow-right::before,\r
3004
+ table.dataTable.dtr-column > tbody > tr > th.dtr-control.arrow-right::before,\r
3005
+ table.dataTable.dtr-column > tbody > tr > td.control.arrow-right::before,\r
3006
+ table.dataTable.dtr-column > tbody > tr > th.control.arrow-right::before {\r
3007
+ content: "\u25C4";\r
3008
+ }\r
3009
+ table.dataTable.dtr-column > tbody > tr.parent td.dtr-control:before,\r
3010
+ table.dataTable.dtr-column > tbody > tr.parent th.dtr-control:before,\r
3011
+ table.dataTable.dtr-column > tbody > tr.parent td.control:before,\r
3012
+ table.dataTable.dtr-column > tbody > tr.parent th.control:before {\r
3013
+ @apply mr-2 inline-block h-4 w-4 bg-[url('https://api.iconify.design/lucide:chevron-down.svg')] bg-contain bg-center bg-no-repeat content-[''] dark:bg-[url('https://api.iconify.design/lucide:chevron-down.svg?color=white')];\r
3014
+ }\r
3015
+ \r
3016
+ table.dataTable > tbody td.child {\r
3017
+ @apply p-0;\r
3018
+ }\r
3019
+ table.dataTable > tbody > tr.child:hover,\r
3020
+ table.dataTable > tbody > tr.child:hover > td.child {\r
3021
+ background: transparent !important;\r
3022
+ }\r
3023
+ table.dataTable > tbody > tr.child ul.dtr-details {\r
3024
+ @apply m-0 block w-full list-none p-0;\r
3025
+ }\r
3026
+ table.dataTable > tbody > tr.child ul.dtr-details > li {\r
3027
+ @apply border-b p-3 px-7 hover:bg-muted;\r
3028
+ }\r
3029
+ \r
3030
+ table.dataTable > tbody > tr.child ul.dtr-details > li:last-child {\r
3031
+ @apply border-b-0;\r
3032
+ }\r
3033
+ table.dataTable > tbody > tr.child span.dtr-title {\r
3034
+ @apply inline-block min-w-[80px] font-bold;\r
3035
+ }\r
3036
+ div.dtr-modal {\r
3037
+ position: fixed;\r
3038
+ box-sizing: border-box;\r
3039
+ top: 0;\r
3040
+ left: 0;\r
3041
+ height: 100%;\r
3042
+ width: 100%;\r
3043
+ z-index: 100;\r
3044
+ padding: 10em 1em;\r
3045
+ }\r
3046
+ div.dtr-modal div.dtr-modal-display {\r
3047
+ position: absolute;\r
3048
+ top: 0;\r
3049
+ left: 0;\r
3050
+ bottom: 0;\r
3051
+ right: 0;\r
3052
+ width: 50%;\r
3053
+ height: fit-content;\r
3054
+ max-height: 75%;\r
3055
+ overflow: auto;\r
3056
+ margin: auto;\r
3057
+ z-index: 102;\r
3058
+ overflow: auto;\r
3059
+ background-color: #f5f5f7;\r
3060
+ border: 1px solid black;\r
3061
+ border-radius: 0.5em;\r
3062
+ box-shadow: 0 12px 30px rgba(0, 0, 0, 0.6);\r
3063
+ }\r
3064
+ div.dtr-modal div.dtr-modal-content {\r
3065
+ position: relative;\r
3066
+ padding: 2.5em;\r
3067
+ }\r
3068
+ div.dtr-modal div.dtr-modal-content h2 {\r
3069
+ margin-top: 0;\r
3070
+ }\r
3071
+ div.dtr-modal div.dtr-modal-close {\r
3072
+ position: absolute;\r
3073
+ top: 6px;\r
3074
+ right: 6px;\r
3075
+ width: 22px;\r
3076
+ height: 22px;\r
3077
+ text-align: center;\r
3078
+ border-radius: 3px;\r
3079
+ cursor: pointer;\r
3080
+ z-index: 12;\r
3081
+ }\r
3082
+ div.dtr-modal div.dtr-modal-background {\r
3083
+ position: fixed;\r
3084
+ top: 0;\r
3085
+ left: 0;\r
3086
+ right: 0;\r
3087
+ bottom: 0;\r
3088
+ z-index: 101;\r
3089
+ background: rgba(0, 0, 0, 0.6);\r
3090
+ }\r
3091
+ \r
3092
+ /* Search Builder Styles */\r
3093
+ div.dt-button-collection {\r
3094
+ overflow: visible !important;\r
3095
+ z-index: 2002 !important;\r
3096
+ }\r
3097
+ div.dt-button-collection div.dtsb-searchBuilder {\r
3098
+ padding-left: 1em !important;\r
3099
+ padding-right: 1em !important;\r
3100
+ }\r
3101
+ div.dt-button-collection.dtb-collection-closeable div.dtsb-titleRow {\r
3102
+ padding-right: 40px;\r
3103
+ }\r
3104
+ .dtsb-greyscale {\r
3105
+ @apply !border;\r
3106
+ }\r
3107
+ div.dtsb-logicContainer .dtsb-greyscale {\r
3108
+ border: none !important;\r
3109
+ }\r
3110
+ div.dtsb-searchBuilder {\r
3111
+ @apply mb-4 cursor-default justify-evenly text-left;\r
3112
+ }\r
3113
+ div.dtsb-searchBuilder button.dtsb-button,\r
3114
+ div.dtsb-searchBuilder select {\r
3115
+ @apply text-sm;\r
3116
+ }\r
3117
+ div.dtsb-searchBuilder div.dtsb-titleRow {\r
3118
+ @apply mb-3 flex items-center justify-between;\r
3119
+ }\r
3120
+ div.dtsb-searchBuilder div.dtsb-titleRow div.dtsb-title {\r
3121
+ @apply inline-block text-sm font-normal;\r
3122
+ }\r
3123
+ div.dtsb-searchBuilder div.dtsb-titleRow div.dtsb-title:empty {\r
3124
+ display: inline;\r
3125
+ }\r
3126
+ div.dtsb-searchBuilder div.dtsb-vertical .dtsb-value,\r
3127
+ div.dtsb-searchBuilder div.dtsb-vertical .dtsb-data,\r
3128
+ div.dtsb-searchBuilder div.dtsb-vertical .dtsb-condition {\r
3129
+ display: block;\r
3130
+ }\r
3131
+ div.dtsb-searchBuilder div.dtsb-group {\r
3132
+ @apply relative clear-both mb-4;\r
3133
+ }\r
3134
+ div.dtsb-searchBuilder div.dtsb-group button.dtsb-search {\r
3135
+ float: right;\r
3136
+ }\r
3137
+ div.dtsb-searchBuilder div.dtsb-group button.dtsb-clearGroup {\r
3138
+ margin: 2px;\r
3139
+ text-align: center;\r
3140
+ padding: 0;\r
3141
+ }\r
3142
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-logicContainer {\r
3143
+ -webkit-transform: rotate(90deg);\r
3144
+ -moz-transform: rotate(90deg);\r
3145
+ -o-transform: rotate(90deg);\r
3146
+ -ms-transform: rotate(90deg);\r
3147
+ transform: rotate(90deg);\r
3148
+ position: absolute;\r
3149
+ margin-top: 0.8em;\r
3150
+ margin-right: 0.8em;\r
3151
+ }\r
3152
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria {\r
3153
+ margin-bottom: 0.8em;\r
3154
+ display: flex;\r
3155
+ justify-content: flex-start;\r
3156
+ flex-flow: row wrap;\r
3157
+ }\r
3158
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-dropDown,\r
3159
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria input.dtsb-input {\r
3160
+ padding: 0.4em;\r
3161
+ margin-right: 0.8em;\r
3162
+ min-width: 5em;\r
3163
+ max-width: 20em;\r
3164
+ color: inherit;\r
3165
+ }\r
3166
+ div.dtsb-searchBuilder\r
3167
+ div.dtsb-group\r
3168
+ div.dtsb-criteria\r
3169
+ select.dtsb-dropDown\r
3170
+ option.dtsb-notItalic,\r
3171
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria input.dtsb-input option.dtsb-notItalic {\r
3172
+ font-style: normal;\r
3173
+ }\r
3174
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-italic {\r
3175
+ font-style: italic;\r
3176
+ }\r
3177
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-inputCont {\r
3178
+ flex: 1;\r
3179
+ white-space: nowrap;\r
3180
+ }\r
3181
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-inputCont span.dtsp-joiner {\r
3182
+ margin-right: 0.8em;\r
3183
+ }\r
3184
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-inputCont input.dtsb-value {\r
3185
+ width: 33%;\r
3186
+ }\r
3187
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-inputCont select,\r
3188
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-inputCont input {\r
3189
+ height: 100%;\r
3190
+ box-sizing: border-box;\r
3191
+ }\r
3192
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-buttonContainer {\r
3193
+ margin-left: auto;\r
3194
+ display: inline-block;\r
3195
+ }\r
3196
+ div.dtsb-searchBuilder\r
3197
+ div.dtsb-group\r
3198
+ div.dtsb-criteria\r
3199
+ div.dtsb-buttonContainer\r
3200
+ button.dtsb-delete,\r
3201
+ div.dtsb-searchBuilder\r
3202
+ div.dtsb-group\r
3203
+ div.dtsb-criteria\r
3204
+ div.dtsb-buttonContainer\r
3205
+ button.dtsb-right,\r
3206
+ div.dtsb-searchBuilder\r
3207
+ div.dtsb-group\r
3208
+ div.dtsb-criteria\r
3209
+ div.dtsb-buttonContainer\r
3210
+ button.dtsb-left {\r
3211
+ margin-right: 0.8em;\r
3212
+ }\r
3213
+ div.dtsb-searchBuilder\r
3214
+ div.dtsb-group\r
3215
+ div.dtsb-criteria\r
3216
+ div.dtsb-buttonContainer\r
3217
+ button.dtsb-delete:last-child,\r
3218
+ div.dtsb-searchBuilder\r
3219
+ div.dtsb-group\r
3220
+ div.dtsb-criteria\r
3221
+ div.dtsb-buttonContainer\r
3222
+ button.dtsb-right:last-child,\r
3223
+ div.dtsb-searchBuilder\r
3224
+ div.dtsb-group\r
3225
+ div.dtsb-criteria\r
3226
+ div.dtsb-buttonContainer\r
3227
+ button.dtsb-left:last-child {\r
3228
+ margin-right: 0;\r
3229
+ }\r
3230
+ @media screen and (max-width: 550px) {\r
3231
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria {\r
3232
+ display: flex;\r
3233
+ flex-flow: none;\r
3234
+ flex-direction: column;\r
3235
+ justify-content: flex-start;\r
3236
+ padding-right: calc(35px + 0.8em);\r
3237
+ margin-bottom: 0px;\r
3238
+ }\r
3239
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria:not(:first-child),\r
3240
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria:not(:nth-child(2)),\r
3241
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria:not(:last-child) {\r
3242
+ padding-top: 0.8em;\r
3243
+ }\r
3244
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria:first-child,\r
3245
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria:nth-child(2),\r
3246
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria:last-child {\r
3247
+ padding-top: 0em;\r
3248
+ }\r
3249
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-dropDown,\r
3250
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria input.dtsb-input {\r
3251
+ max-width: none;\r
3252
+ width: 100%;\r
3253
+ margin-bottom: 0.8em;\r
3254
+ margin-right: 0.8em;\r
3255
+ }\r
3256
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-inputCont {\r
3257
+ margin-right: 0.8em;\r
3258
+ }\r
3259
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-buttonContainer {\r
3260
+ position: absolute;\r
3261
+ width: 35px;\r
3262
+ display: flex;\r
3263
+ flex-wrap: wrap-reverse;\r
3264
+ right: 0;\r
3265
+ }\r
3266
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-buttonContainer button {\r
3267
+ margin-right: 0px !important;\r
3268
+ }\r
3269
+ }\r
3270
+ div.dtsb-searchBuilder button,\r
3271
+ div.dtsb-searchBuilder select.dtsb-dropDown,\r
3272
+ div.dtsb-searchBuilder input {\r
3273
+ @apply bg-background;\r
3274
+ }\r
3275
+ div.dtsb-searchBuilder button.dtsb-button {\r
3276
+ @apply relative box-border inline-flex h-9 cursor-pointer select-none items-center justify-center overflow-hidden text-ellipsis whitespace-nowrap rounded-md border bg-background px-3 py-2 text-sm font-normal text-muted-foreground focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background;\r
3277
+ }\r
3278
+ div.dtsb-searchBuilder button.dtsb-button:hover {\r
3279
+ @apply cursor-pointer bg-muted;\r
3280
+ }\r
3281
+ div.dtsb-searchBuilder div.dtsb-logicContainer {\r
3282
+ @apply overflow-hidden rounded-none border;\r
3283
+ }\r
3284
+ div.dtsb-searchBuilder div.dtsb-logicContainer button {\r
3285
+ @apply rounded-md border-transparent bg-transparent;\r
3286
+ }\r
3287
+ div.dtsb-searchBuilder button.dtsb-clearGroup {\r
3288
+ min-width: 2em;\r
3289
+ padding: 0;\r
3290
+ }\r
3291
+ div.dtsb-searchBuilder button.dtsb-iptbtn {\r
3292
+ min-width: 100px;\r
3293
+ text-align: left;\r
3294
+ }\r
3295
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-logicContainer {\r
3296
+ @apply flex flex-row content-start items-start justify-start rounded-md;\r
3297
+ }\r
3298
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-logicContainer button.dtsb-logic {\r
3299
+ @apply m-0 shrink-0 grow rounded-none border-0;\r
3300
+ flex-basis: 3em;\r
3301
+ }\r
3302
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-logicContainer button.dtsb-clearGroup {\r
3303
+ border: none;\r
3304
+ border-radius: 0px;\r
3305
+ width: 2em;\r
3306
+ margin: 0px;\r
3307
+ }\r
3308
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-dropDown,\r
3309
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria input.dtsb-input {\r
3310
+ @apply rounded-md border;\r
3311
+ }\r
3312
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-condition,\r
3313
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-data,\r
3314
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-value {\r
3315
+ @apply rounded-md border border-input bg-background text-sm transition focus:border-primary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:ring-offset-background focus-visible:border-input;\r
3316
+ }\r
3317
+ \r
3318
+ div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria input.dtsb-value {\r
3319
+ @apply rounded-md border border-input bg-background text-sm transition focus:border-primary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:ring-offset-background focus-visible:border-input;\r
3320
+ }\r
3321
+ \r
3322
+ /* Col vis styles */\r
3323
+ .dt-button-background {\r
3324
+ @apply fixed inset-0 z-50 flex flex-col items-center justify-center bg-background/50 backdrop-blur-sm;\r
3325
+ }\r
3326
+ .dt-button-down-arrow {\r
3327
+ @apply text-[10px];\r
3328
+ }\r
3329
+ .dt-button-collection {\r
3330
+ @apply relative;\r
3331
+ [role="menu"] {\r
3332
+ @apply absolute -left-40 top-7 flex w-[300px] flex-wrap gap-x-3 gap-y-2 rounded-md border bg-background p-2 shadow lg:w-[500px];\r
3333
+ button {\r
3334
+ @apply h-7 px-2 text-xs;\r
3335
+ }\r
3336
+ .dt-button.buttons-columnVisibility.dt-button-active {\r
3337
+ @apply bg-primary text-primary-foreground;\r
3338
+ }\r
3339
+ }\r
3340
+ }\r
3341
+ </style>\r
3342
+ `}],utils:[],composables:[]},{name:"Date Field",value:"date-field",devDeps:["@internationalized/date"],files:[{fileName:"DateField.vue",dirPath:"components/UI",fileContent:`<template>
3343
+ <DateFieldRoot
3344
+ v-slot="{ segments, modelValue, isInvalid }"
3345
+ :class="styles({ class: props.class })"
3346
+ v-bind="props"
3347
+ v-model="localModel"
3348
+ >
3349
+ <template v-for="item in segments" :key="item.part">
3350
+ <DateFieldInput
3351
+ v-if="item.part === 'literal'"
3352
+ :part="item.part"
3353
+ class="flex items-center justify-center text-muted-foreground"
3354
+ >
3355
+ <Icon :name="separatorIcon" class="text-muted-foreground" v-if="separatorIcon" />
3356
+ <span class="mx-1 text-muted-foreground" v-else-if="separator">{{ separator }}</span>
3357
+ </DateFieldInput>
3358
+ <DateFieldInput
3359
+ v-else
3360
+ :part="item.part"
3361
+ class="flex cursor-text items-center rounded px-1 transition focus:outline-none focus:ring-1 focus:ring-ring aria-[valuetext=Empty]:text-muted-foreground"
3362
+ >
3363
+ {{ item.value }}
3364
+ </DateFieldInput>
3365
+ </template>
3366
+ </DateFieldRoot>
3367
+ </template>
2845
3368
 
2846
- /* Copy modal */
2847
- .dt-button-info {
2848
- @apply fixed inset-0 z-50 flex flex-col items-center justify-center bg-background/50 backdrop-blur;
2849
- }
3369
+ <script lang="ts" setup>
3370
+ import { type DateValue } from "@internationalized/date";
3371
+ import { DateFieldInput, DateFieldRoot } from "radix-vue";
3372
+ import type { DateFieldRootEmits, DateFieldRootProps } from "radix-vue";
2850
3373
 
2851
- .dataTables_wrapper .dataTables_length {
2852
- label {
2853
- @apply inline-flex items-center gap-2 text-sm font-normal text-muted-foreground;
2854
- select {
2855
- @apply h-9 w-[70px] cursor-pointer rounded-md border border-border bg-background px-2 py-1 transition focus:border-primary focus:outline-none focus-visible:border-input focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background sm:text-sm;
2856
- }
2857
- }
2858
- }
2859
- .dataTables_wrapper .dataTables_filter {
2860
- label {
2861
- @apply inline-flex w-full cursor-pointer items-center gap-2 text-sm font-normal text-muted-foreground;
2862
- input {
2863
- @apply h-9 w-full rounded-md border border-border bg-background px-2 py-1 transition focus:border-primary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:ring-offset-background focus-visible:border-input sm:text-sm;
3374
+ const props = withDefaults(
3375
+ defineProps<
3376
+ DateFieldRootProps & {
3377
+ class?: any;
3378
+ separator?: string;
3379
+ separatorIcon?: string;
2864
3380
  }
3381
+ >(),
3382
+ {
3383
+ separator: "/",
2865
3384
  }
2866
- }
2867
- .dataTables_wrapper .dataTables_info {
2868
- @apply flex items-center gap-3 text-sm !text-muted-foreground;
2869
- }
2870
- .dataTables_wrapper .dataTables_paginate {
2871
- .paginate_button {
2872
- @apply ml-1 box-border inline-flex h-9 min-w-[36px] cursor-pointer items-center justify-center rounded bg-transparent px-3 py-2 text-center text-sm focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background;
2873
- }
2874
- }
2875
- .dataTables_wrapper .dataTables_paginate .paginate_button.current,
2876
- .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
2877
- @apply bg-muted;
2878
- }
2879
- .dataTables_wrapper .dataTables_paginate .paginate_button.disabled,
2880
- .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover,
2881
- .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active {
2882
- @apply pointer-events-none opacity-50;
2883
- }
2884
- .dataTables_wrapper .dataTables_paginate .paginate_button:hover {
2885
- @apply bg-muted;
2886
- }
2887
- .dataTables_wrapper .dataTables_paginate .paginate_button:active {
2888
- @apply bg-muted;
2889
- }
2890
- .dataTables_wrapper .dataTables_paginate .ellipsis {
2891
- @apply inline-flex h-8 min-w-[32px] items-start justify-center text-sm;
2892
- }
2893
- .dataTables_wrapper .dataTables_scroll {
2894
- clear: both;
2895
- }
2896
- .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody {
2897
- -webkit-overflow-scrolling: touch;
2898
- }
2899
- .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > th,
2900
- .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > td,
2901
- .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > th,
2902
- .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > td {
2903
- vertical-align: middle;
2904
- }
2905
- .dataTables_wrapper
2906
- .dataTables_scroll
2907
- div.dataTables_scrollBody
2908
- > table
2909
- > thead
2910
- > tr
2911
- > th
2912
- > div.dataTables_sizing,
2913
- .dataTables_wrapper
2914
- .dataTables_scroll
2915
- div.dataTables_scrollBody
2916
- > table
2917
- > thead
2918
- > tr
2919
- > td
2920
- > div.dataTables_sizing,
2921
- .dataTables_wrapper
2922
- .dataTables_scroll
2923
- div.dataTables_scrollBody
2924
- > table
2925
- > tbody
2926
- > tr
2927
- > th
2928
- > div.dataTables_sizing,
2929
- .dataTables_wrapper
2930
- .dataTables_scroll
2931
- div.dataTables_scrollBody
2932
- > table
2933
- > tbody
2934
- > tr
2935
- > td
2936
- > div.dataTables_sizing {
2937
- height: 0;
2938
- overflow: hidden;
2939
- margin: 0 !important;
2940
- padding: 0 !important;
2941
- }
2942
- .dataTables_wrapper.no-footer .dataTables_scrollBody {
2943
- @apply border-b;
2944
- }
2945
- .dataTables_wrapper.no-footer div.dataTables_scrollHead table.dataTable,
2946
- .dataTables_wrapper.no-footer div.dataTables_scrollBody > table {
2947
- border-bottom: none;
2948
- }
2949
- .dataTables_wrapper:after {
2950
- visibility: hidden;
2951
- display: block;
2952
- content: "";
2953
- clear: both;
2954
- height: 0;
2955
- }
2956
-
2957
- /*
2958
- responsive styles
2959
- */
2960
- table.dataTable.dtr-inline.collapsed > tbody > tr > td.child,
2961
- table.dataTable.dtr-inline.collapsed > tbody > tr > th.child,
2962
- table.dataTable.dtr-inline.collapsed > tbody > tr > td.dataTables_empty {
2963
- cursor: default !important;
2964
- }
2965
- table.dataTable.dtr-inline.collapsed > tbody > tr > td.child:before,
2966
- table.dataTable.dtr-inline.collapsed > tbody > tr > th.child:before,
2967
- table.dataTable.dtr-inline.collapsed > tbody > tr > td.dataTables_empty:before {
2968
- display: none !important;
2969
- }
2970
- table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control,
2971
- table.dataTable.dtr-inline.collapsed > tbody > tr > th.dtr-control {
2972
- cursor: pointer;
2973
- }
2974
-
2975
- table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control:before,
2976
- table.dataTable.dtr-inline.collapsed > tbody > tr > th.dtr-control:before {
2977
- @apply mr-2 inline-flex h-4 w-4 bg-[url('https://api.iconify.design/lucide:chevron-right.svg')] bg-contain bg-center bg-no-repeat pb-[3px] content-[''] dark:bg-[url('https://api.iconify.design/lucide:chevron-right.svg?color=white')];
2978
- }
2979
- table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control.arrow-right::before,
2980
- table.dataTable.dtr-inline.collapsed > tbody > tr > th.dtr-control.arrow-right::before {
2981
- content: "\u25C4";
2982
- }
2983
- table.dataTable.dtr-inline.collapsed > tbody > tr.parent > td.dtr-control:before,
2984
- table.dataTable.dtr-inline.collapsed > tbody > tr.parent > th.dtr-control:before {
2985
- @apply mr-2 inline-block h-4 w-4 bg-[url('https://api.iconify.design/lucide:chevron-down.svg')] bg-contain bg-center bg-no-repeat content-[''] dark:bg-[url('https://api.iconify.design/lucide:chevron-down.svg?color=white')];
2986
- }
2987
- table.dataTable.dtr-inline.collapsed.compact > tbody > tr > td.dtr-control,
2988
- table.dataTable.dtr-inline.collapsed.compact > tbody > tr > th.dtr-control {
2989
- padding-left: 0.333em;
2990
- }
2991
- table.dataTable.dtr-column > tbody > tr > td.dtr-control,
2992
- table.dataTable.dtr-column > tbody > tr > th.dtr-control,
2993
- table.dataTable.dtr-column > tbody > tr > td.control,
2994
- table.dataTable.dtr-column > tbody > tr > th.control {
2995
- cursor: pointer;
2996
- }
2997
- table.dataTable.dtr-column > tbody > tr > td.dtr-control:before,
2998
- table.dataTable.dtr-column > tbody > tr > th.dtr-control:before,
2999
- table.dataTable.dtr-column > tbody > tr > td.control:before,
3000
- table.dataTable.dtr-column > tbody > tr > th.control:before {
3001
- @apply mr-2 inline-flex h-4 w-4 bg-[url('https://api.iconify.design/lucide:chevron-right.svg')] bg-contain bg-center bg-no-repeat pb-[3px] content-[''] dark:bg-[url('https://api.iconify.design/lucide:chevron-right.svg?color=white')];
3002
- }
3003
- table.dataTable.dtr-column > tbody > tr > td.dtr-control.arrow-right::before,
3004
- table.dataTable.dtr-column > tbody > tr > th.dtr-control.arrow-right::before,
3005
- table.dataTable.dtr-column > tbody > tr > td.control.arrow-right::before,
3006
- table.dataTable.dtr-column > tbody > tr > th.control.arrow-right::before {
3007
- content: "\u25C4";
3008
- }
3009
- table.dataTable.dtr-column > tbody > tr.parent td.dtr-control:before,
3010
- table.dataTable.dtr-column > tbody > tr.parent th.dtr-control:before,
3011
- table.dataTable.dtr-column > tbody > tr.parent td.control:before,
3012
- table.dataTable.dtr-column > tbody > tr.parent th.control:before {
3013
- @apply mr-2 inline-block h-4 w-4 bg-[url('https://api.iconify.design/lucide:chevron-down.svg')] bg-contain bg-center bg-no-repeat content-[''] dark:bg-[url('https://api.iconify.design/lucide:chevron-down.svg?color=white')];
3014
- }
3015
-
3016
- table.dataTable > tbody td.child {
3017
- @apply p-0;
3018
- }
3019
- table.dataTable > tbody > tr.child:hover,
3020
- table.dataTable > tbody > tr.child:hover > td.child {
3021
- background: transparent !important;
3022
- }
3023
- table.dataTable > tbody > tr.child ul.dtr-details {
3024
- @apply m-0 block w-full list-none p-0;
3025
- }
3026
- table.dataTable > tbody > tr.child ul.dtr-details > li {
3027
- @apply border-b p-3 px-7 hover:bg-muted;
3028
- }
3029
-
3030
- table.dataTable > tbody > tr.child ul.dtr-details > li:last-child {
3031
- @apply border-b-0;
3032
- }
3033
- table.dataTable > tbody > tr.child span.dtr-title {
3034
- @apply inline-block min-w-[80px] font-bold;
3035
- }
3036
- div.dtr-modal {
3037
- position: fixed;
3038
- box-sizing: border-box;
3039
- top: 0;
3040
- left: 0;
3041
- height: 100%;
3042
- width: 100%;
3043
- z-index: 100;
3044
- padding: 10em 1em;
3045
- }
3046
- div.dtr-modal div.dtr-modal-display {
3047
- position: absolute;
3048
- top: 0;
3049
- left: 0;
3050
- bottom: 0;
3051
- right: 0;
3052
- width: 50%;
3053
- height: fit-content;
3054
- max-height: 75%;
3055
- overflow: auto;
3056
- margin: auto;
3057
- z-index: 102;
3058
- overflow: auto;
3059
- background-color: #f5f5f7;
3060
- border: 1px solid black;
3061
- border-radius: 0.5em;
3062
- box-shadow: 0 12px 30px rgba(0, 0, 0, 0.6);
3063
- }
3064
- div.dtr-modal div.dtr-modal-content {
3065
- position: relative;
3066
- padding: 2.5em;
3067
- }
3068
- div.dtr-modal div.dtr-modal-content h2 {
3069
- margin-top: 0;
3070
- }
3071
- div.dtr-modal div.dtr-modal-close {
3072
- position: absolute;
3073
- top: 6px;
3074
- right: 6px;
3075
- width: 22px;
3076
- height: 22px;
3077
- text-align: center;
3078
- border-radius: 3px;
3079
- cursor: pointer;
3080
- z-index: 12;
3081
- }
3082
- div.dtr-modal div.dtr-modal-background {
3083
- position: fixed;
3084
- top: 0;
3085
- left: 0;
3086
- right: 0;
3087
- bottom: 0;
3088
- z-index: 101;
3089
- background: rgba(0, 0, 0, 0.6);
3090
- }
3091
-
3092
- /* Search Builder Styles */
3093
- div.dt-button-collection {
3094
- overflow: visible !important;
3095
- z-index: 2002 !important;
3096
- }
3097
- div.dt-button-collection div.dtsb-searchBuilder {
3098
- padding-left: 1em !important;
3099
- padding-right: 1em !important;
3100
- }
3101
- div.dt-button-collection.dtb-collection-closeable div.dtsb-titleRow {
3102
- padding-right: 40px;
3103
- }
3104
- .dtsb-greyscale {
3105
- @apply !border;
3106
- }
3107
- div.dtsb-logicContainer .dtsb-greyscale {
3108
- border: none !important;
3109
- }
3110
- div.dtsb-searchBuilder {
3111
- @apply mb-4 cursor-default justify-evenly text-left;
3112
- }
3113
- div.dtsb-searchBuilder button.dtsb-button,
3114
- div.dtsb-searchBuilder select {
3115
- @apply text-sm;
3116
- }
3117
- div.dtsb-searchBuilder div.dtsb-titleRow {
3118
- @apply mb-3 flex items-center justify-between;
3119
- }
3120
- div.dtsb-searchBuilder div.dtsb-titleRow div.dtsb-title {
3121
- @apply inline-block text-sm font-normal;
3122
- }
3123
- div.dtsb-searchBuilder div.dtsb-titleRow div.dtsb-title:empty {
3124
- display: inline;
3125
- }
3126
- div.dtsb-searchBuilder div.dtsb-vertical .dtsb-value,
3127
- div.dtsb-searchBuilder div.dtsb-vertical .dtsb-data,
3128
- div.dtsb-searchBuilder div.dtsb-vertical .dtsb-condition {
3129
- display: block;
3130
- }
3131
- div.dtsb-searchBuilder div.dtsb-group {
3132
- @apply relative clear-both mb-4;
3133
- }
3134
- div.dtsb-searchBuilder div.dtsb-group button.dtsb-search {
3135
- float: right;
3136
- }
3137
- div.dtsb-searchBuilder div.dtsb-group button.dtsb-clearGroup {
3138
- margin: 2px;
3139
- text-align: center;
3140
- padding: 0;
3141
- }
3142
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-logicContainer {
3143
- -webkit-transform: rotate(90deg);
3144
- -moz-transform: rotate(90deg);
3145
- -o-transform: rotate(90deg);
3146
- -ms-transform: rotate(90deg);
3147
- transform: rotate(90deg);
3148
- position: absolute;
3149
- margin-top: 0.8em;
3150
- margin-right: 0.8em;
3151
- }
3152
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria {
3153
- margin-bottom: 0.8em;
3154
- display: flex;
3155
- justify-content: flex-start;
3156
- flex-flow: row wrap;
3157
- }
3158
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-dropDown,
3159
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria input.dtsb-input {
3160
- padding: 0.4em;
3161
- margin-right: 0.8em;
3162
- min-width: 5em;
3163
- max-width: 20em;
3164
- color: inherit;
3165
- }
3166
- div.dtsb-searchBuilder
3167
- div.dtsb-group
3168
- div.dtsb-criteria
3169
- select.dtsb-dropDown
3170
- option.dtsb-notItalic,
3171
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria input.dtsb-input option.dtsb-notItalic {
3172
- font-style: normal;
3173
- }
3174
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-italic {
3175
- font-style: italic;
3176
- }
3177
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-inputCont {
3178
- flex: 1;
3179
- white-space: nowrap;
3180
- }
3181
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-inputCont span.dtsp-joiner {
3182
- margin-right: 0.8em;
3183
- }
3184
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-inputCont input.dtsb-value {
3185
- width: 33%;
3186
- }
3187
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-inputCont select,
3188
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-inputCont input {
3189
- height: 100%;
3190
- box-sizing: border-box;
3191
- }
3192
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-buttonContainer {
3193
- margin-left: auto;
3194
- display: inline-block;
3195
- }
3196
- div.dtsb-searchBuilder
3197
- div.dtsb-group
3198
- div.dtsb-criteria
3199
- div.dtsb-buttonContainer
3200
- button.dtsb-delete,
3201
- div.dtsb-searchBuilder
3202
- div.dtsb-group
3203
- div.dtsb-criteria
3204
- div.dtsb-buttonContainer
3205
- button.dtsb-right,
3206
- div.dtsb-searchBuilder
3207
- div.dtsb-group
3208
- div.dtsb-criteria
3209
- div.dtsb-buttonContainer
3210
- button.dtsb-left {
3211
- margin-right: 0.8em;
3212
- }
3213
- div.dtsb-searchBuilder
3214
- div.dtsb-group
3215
- div.dtsb-criteria
3216
- div.dtsb-buttonContainer
3217
- button.dtsb-delete:last-child,
3218
- div.dtsb-searchBuilder
3219
- div.dtsb-group
3220
- div.dtsb-criteria
3221
- div.dtsb-buttonContainer
3222
- button.dtsb-right:last-child,
3223
- div.dtsb-searchBuilder
3224
- div.dtsb-group
3225
- div.dtsb-criteria
3226
- div.dtsb-buttonContainer
3227
- button.dtsb-left:last-child {
3228
- margin-right: 0;
3229
- }
3230
- @media screen and (max-width: 550px) {
3231
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria {
3232
- display: flex;
3233
- flex-flow: none;
3234
- flex-direction: column;
3235
- justify-content: flex-start;
3236
- padding-right: calc(35px + 0.8em);
3237
- margin-bottom: 0px;
3238
- }
3239
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria:not(:first-child),
3240
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria:not(:nth-child(2)),
3241
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria:not(:last-child) {
3242
- padding-top: 0.8em;
3243
- }
3244
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria:first-child,
3245
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria:nth-child(2),
3246
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria:last-child {
3247
- padding-top: 0em;
3248
- }
3249
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-dropDown,
3250
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria input.dtsb-input {
3251
- max-width: none;
3252
- width: 100%;
3253
- margin-bottom: 0.8em;
3254
- margin-right: 0.8em;
3255
- }
3256
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-inputCont {
3257
- margin-right: 0.8em;
3258
- }
3259
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-buttonContainer {
3260
- position: absolute;
3261
- width: 35px;
3262
- display: flex;
3263
- flex-wrap: wrap-reverse;
3264
- right: 0;
3265
- }
3266
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria div.dtsb-buttonContainer button {
3267
- margin-right: 0px !important;
3268
- }
3269
- }
3270
- div.dtsb-searchBuilder button,
3271
- div.dtsb-searchBuilder select.dtsb-dropDown,
3272
- div.dtsb-searchBuilder input {
3273
- @apply bg-background;
3274
- }
3275
- div.dtsb-searchBuilder button.dtsb-button {
3276
- @apply relative box-border inline-flex h-9 cursor-pointer select-none items-center justify-center overflow-hidden text-ellipsis whitespace-nowrap rounded-md border bg-background px-3 py-2 text-sm font-normal text-muted-foreground focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background;
3277
- }
3278
- div.dtsb-searchBuilder button.dtsb-button:hover {
3279
- @apply cursor-pointer bg-muted;
3280
- }
3281
- div.dtsb-searchBuilder div.dtsb-logicContainer {
3282
- @apply overflow-hidden rounded-none border;
3283
- }
3284
- div.dtsb-searchBuilder div.dtsb-logicContainer button {
3285
- @apply rounded-md border-transparent bg-transparent;
3286
- }
3287
- div.dtsb-searchBuilder button.dtsb-clearGroup {
3288
- min-width: 2em;
3289
- padding: 0;
3290
- }
3291
- div.dtsb-searchBuilder button.dtsb-iptbtn {
3292
- min-width: 100px;
3293
- text-align: left;
3294
- }
3295
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-logicContainer {
3296
- @apply flex flex-row content-start items-start justify-start rounded-md;
3297
- }
3298
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-logicContainer button.dtsb-logic {
3299
- @apply m-0 shrink-0 grow rounded-none border-0;
3300
- flex-basis: 3em;
3301
- }
3302
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-logicContainer button.dtsb-clearGroup {
3303
- border: none;
3304
- border-radius: 0px;
3305
- width: 2em;
3306
- margin: 0px;
3307
- }
3308
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-dropDown,
3309
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria input.dtsb-input {
3310
- @apply rounded-md border;
3311
- }
3312
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-condition,
3313
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-data,
3314
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select.dtsb-value {
3315
- @apply rounded-md border border-input bg-background text-sm transition focus:border-primary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:ring-offset-background focus-visible:border-input;
3316
- }
3317
-
3318
- div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria input.dtsb-value {
3319
- @apply rounded-md border border-input bg-background text-sm transition focus:border-primary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:ring-offset-background focus-visible:border-input;
3320
- }
3385
+ );
3386
+ const emits = defineEmits<DateFieldRootEmits>();
3387
+ const localModel = defineModel<DateValue>();
3321
3388
 
3322
- /* Col vis styles */
3323
- .dt-button-background {
3324
- @apply fixed inset-0 z-50 flex flex-col items-center justify-center bg-background/50 backdrop-blur-sm;
3325
- }
3326
- .dt-button-down-arrow {
3327
- @apply text-[10px];
3328
- }
3329
- .dt-button-collection {
3330
- @apply relative;
3331
- [role="menu"] {
3332
- @apply absolute -left-40 top-7 flex w-[300px] flex-wrap gap-x-3 gap-y-2 rounded-md border bg-background p-2 shadow lg:w-[500px];
3333
- button {
3334
- @apply h-7 px-2 text-xs;
3335
- }
3336
- .dt-button.buttons-columnVisibility.dt-button-active {
3337
- @apply bg-primary text-primary-foreground;
3338
- }
3339
- }
3340
- }
3341
- </style>
3342
- `}],utils:[],composables:[]},{name:"Datepicker",value:"datepicker",devDeps:["@samk-dev/nuxt-vcalendar"],nuxtModules:["@samk-dev/nuxt-vcalendar"],instructions:["You can customize the datepicker by adding options to your nuxt.config.js file"],files:[{fileName:"Datepicker.vue",dirPath:"components/UI",fileContent:`<template>
3389
+ const styles = tv({
3390
+ base: "flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-[16px] ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground file:hover:cursor-pointer focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 data-[disabled]:cursor-not-allowed data-[invalid]:border-destructive data-[disabled]:opacity-50 sm:text-sm",
3391
+ });
3392
+ </script>
3393
+ `}],utils:[],composables:[],plugins:[]},{name:"Datepicker",value:"datepicker",devDeps:["@samk-dev/nuxt-vcalendar"],nuxtModules:["@samk-dev/nuxt-vcalendar"],instructions:["You can customize the datepicker by adding options to your nuxt.config.js file"],files:[{fileName:"Datepicker.vue",dirPath:"components/UI",fileContent:`<template>
3343
3394
  <ClientOnly>
3344
3395
  <VDatePicker
3345
3396
  :trimWeeks="props.trimWeeks || true"
@@ -3810,7 +3861,7 @@ export default defineNuxtPlugin((nuxtApp) => {
3810
3861
  <DrawerContent v-bind="{ ...props, ...$attrs }" :class="styles({ class: props.class })">\r
3811
3862
  <slot name="knob">\r
3812
3863
  <div\r
3813
- className="mx-auto cursor-grab active:cursor-grabbing my-5 h-2 w-[60px] rounded-full bg-muted"\r
3864
+ className="mx-auto shrink-0 cursor-grab active:cursor-grabbing my-5 h-2 w-[60px] rounded-full bg-muted"\r
3814
3865
  />\r
3815
3866
  </slot>\r
3816
3867
  <slot />\r
@@ -4836,6 +4887,11 @@ export function useFormField() {
4836
4887
  `}],utils:[],composables:[],plugins:[]},{name:"Label",value:"label",files:[{fileName:"Label.vue",dirPath:"components/UI",fileContent:`<template>
4837
4888
  <Label :class="styles({ class: props.class })" v-bind="reactiveOmit(props, 'class')">
4838
4889
  <slot />
4890
+ <slot name="hint">
4891
+ <span v-if="hint">
4892
+ {{ hint }}
4893
+ </span>
4894
+ </slot>
4839
4895
  </Label>
4840
4896
  </template>
4841
4897
 
@@ -4847,11 +4903,12 @@ export function useFormField() {
4847
4903
  LabelProps & {
4848
4904
  /** Custom class(es) to add to the label */
4849
4905
  class?: any;
4906
+ hint?: string;
4850
4907
  }
4851
4908
  >();
4852
4909
 
4853
4910
  const styles = tv({
4854
- base: "inline-block text-base font-medium leading-none hover:cursor-pointer peer-disabled:cursor-not-allowed peer-disabled:opacity-70 sm:text-sm",
4911
+ base: "flex items-center justify-between text-[15px] font-medium leading-none hover:cursor-pointer peer-disabled:cursor-not-allowed peer-disabled:opacity-70 sm:text-sm",
4855
4912
  });
4856
4913
  </script>
4857
4914
  `}],utils:[],composables:[],plugins:[]},{name:"List",value:"list",files:[{fileName:"List/Content.vue",dirPath:"components/UI",fileContent:`<template>
@@ -7224,149 +7281,101 @@ export function useFormField() {
7224
7281
  base: "relative h-2 w-full grow overflow-hidden rounded-full bg-secondary",
7225
7282
  });
7226
7283
  </script>
7227
- `}],utils:[],composables:[],plugins:[]},{name:"Splitpanes",value:"splitpanes",deps:["splitpanes"],devDeps:["@types/splitpanes"],files:[{fileName:"Splitpanes/Splitpanes.vue",dirPath:"components/UI",fileContent:`<template>\r
7228
- <Splitpanes v-bind="forwarded" :class="styles({ class: props.class, horizontal })">\r
7229
- <slot />\r
7230
- </Splitpanes>\r
7231
- </template>\r
7232
- \r
7233
- <script lang="ts" setup>\r
7234
- import { useForwardPropsEmits } from "radix-vue";\r
7235
- import { Splitpanes } from "splitpanes";\r
7236
- \r
7237
- import "splitpanes/dist/splitpanes.css";\r
7238
- \r
7239
- const props = withDefaults(\r
7240
- defineProps<{\r
7241
- horizontal?: boolean;\r
7242
- pushOtherPanes?: boolean;\r
7243
- dblClickSplitter?: boolean;\r
7244
- rtl?: boolean;\r
7245
- firstSplitter?: boolean;\r
7246
- class?: any;\r
7247
- withHandle?: boolean;\r
7248
- }>(),\r
7249
- {\r
7250
- horizontal: false,\r
7251
- pushOtherPanes: true,\r
7252
- dblClickSplitter: true,\r
7253
- rtl: false,\r
7254
- firstSplitter: false,\r
7255
- withHandle: false,\r
7256
- }\r
7257
- );\r
7258
- \r
7259
- const emits = defineEmits([\r
7260
- "ready",\r
7261
- "resize",\r
7262
- "resized",\r
7263
- "pane-click",\r
7264
- "pane-maximize",\r
7265
- "pane-add",\r
7266
- "pane-remove",\r
7267
- "splitter-click",\r
7268
- ]);\r
7269
- \r
7270
- const forwarded = useForwardPropsEmits(reactiveOmit(props, "class", "withHandle"), emits);\r
7271
- \r
7272
- const styles = tv({\r
7273
- base: "flex h-full w-full",\r
7274
- variants: {\r
7275
- horizontal: {\r
7276
- true: "flex-row",\r
7277
- false: "flex-col",\r
7278
- },\r
7279
- },\r
7280
- });\r
7281
- \r
7282
- onMounted(() => {\r
7283
- if (props.withHandle) {\r
7284
- const splitpanesVertical = document.querySelectorAll(\r
7285
- ".splitpanes--vertical>.splitpanes__splitter"\r
7286
- ) as NodeListOf<HTMLElement>;\r
7287
- const splitpanesHorizontal = document.querySelectorAll(\r
7288
- ".splitpanes--horizontal>.splitpanes__splitter"\r
7289
- ) as NodeListOf<HTMLElement>;\r
7290
- \r
7291
- splitpanesVertical.forEach((splitpane) => {\r
7292
- const newDiv = document.createElement("div");\r
7293
- newDiv.classList.add(\r
7294
- \`absolute\`,\r
7295
- \`top-1/2\`,\r
7296
- \`z-[1]\`,\r
7297
- \`-ml-1.5\`,\r
7298
- \`inline-flex\`,\r
7299
- \`h-4\`,\r
7300
- \`w-3\`,\r
7301
- \`-translate-y-1/2\`,\r
7302
- \`items-center\`,\r
7303
- \`justify-center\`,\r
7304
- \`rounded-sm\`,\r
7305
- \`bg-border\`,\r
7306
- \`content-[url('https://api.iconify.design/lucide:grip-vertical.svg?width=10&height=10&inline=true')]\`,\r
7307
- \`dark:content-[url('https://api.iconify.design/lucide:grip-vertical.svg?color=white&width=10&height=10&inline=true')]\`\r
7308
- );\r
7309
- splitpane.appendChild(newDiv);\r
7310
- });\r
7311
- splitpanesHorizontal.forEach((splitpane) => {\r
7312
- const newDiv = document.createElement("div");\r
7313
- newDiv.classList.add(\r
7314
- \`absolute\`,\r
7315
- \`left-1/2\`,\r
7316
- \`z-[1]\`,\r
7317
- \`-mt-1.5\`,\r
7318
- \`inline-flex\`,\r
7319
- \`h-3\`,\r
7320
- \`w-4\`,\r
7321
- \`-translate-x-1/2\`,\r
7322
- \`items-center\`,\r
7323
- \`justify-center\`,\r
7324
- \`rounded-sm\`,\r
7325
- \`bg-border\`,\r
7326
- \`content-[url('https://api.iconify.design/lucide:grip-horizontal.svg?width=10&height=10&inline=true')]\`,\r
7327
- \`dark:content-[url('https://api.iconify.design/lucide:grip-horizontal.svg?color=white&width=10&height=10&inline=true')]\`\r
7328
- );\r
7329
- splitpane.appendChild(newDiv);\r
7330
- });\r
7331
- }\r
7332
- });\r
7333
- </script>\r
7334
- \r
7335
- <style>\r
7336
- .splitpanes__splitter {\r
7337
- @apply relative before:absolute before:left-0 before:top-0 before:z-[1];\r
7338
- }\r
7339
- \r
7340
- .splitpanes--vertical > .splitpanes__splitter {\r
7341
- @apply h-full w-px cursor-ew-resize bg-border before:-left-1 before:-right-1 before:h-full;\r
7342
- }\r
7343
- \r
7344
- .splitpanes--horizontal > .splitpanes__splitter {\r
7345
- @apply h-px w-full cursor-ns-resize bg-border before:-bottom-1 before:-top-1 before:w-full;\r
7346
- }\r
7347
- </style>\r
7348
- `},{fileName:"Splitpanes/Pane.vue",dirPath:"components/UI",fileContent:`<template>\r
7349
- <Pane v-bind="props">\r
7350
- <slot />\r
7351
- </Pane>\r
7352
- </template>\r
7353
- \r
7354
- <script lang="ts" setup>\r
7355
- import { Pane } from "splitpanes";\r
7356
- \r
7357
- const props = withDefaults(\r
7358
- defineProps<{\r
7359
- size?: number | string | null;\r
7360
- minSize?: number | string;\r
7361
- maxSize?: number | string;\r
7362
- }>(),\r
7363
- {\r
7364
- size: null,\r
7365
- minSize: 0,\r
7366
- maxSize: 100,\r
7367
- }\r
7368
- );\r
7369
- </script>\r
7284
+ `}],utils:[],composables:[],plugins:[]},{name:"Splitter",value:"splitter",files:[{fileName:"Splitter/Splitter.vue",dirPath:"components/UI",fileContent:`<template>
7285
+ <SplitterGroup
7286
+ v-bind="forwarded"
7287
+ :class="styles({ class: props.class })"
7288
+ v-slot="{ layout }: { layout: number[] }"
7289
+ >
7290
+ <slot :layout="layout"></slot>
7291
+ </SplitterGroup>
7292
+ </template>
7293
+
7294
+ <script lang="ts" setup>
7295
+ import { SplitterGroup, useForwardPropsEmits } from "radix-vue";
7296
+ import type { SplitterGroupEmits, SplitterGroupProps } from "radix-vue";
7297
+
7298
+ const props = withDefaults(
7299
+ defineProps<
7300
+ SplitterGroupProps & {
7301
+ direction?: "horizontal" | "vertical";
7302
+ class?: any;
7303
+ }
7304
+ >(),
7305
+ {
7306
+ direction: "horizontal",
7307
+ as: "div",
7308
+ keyboardResizeBy: 10,
7309
+ }
7310
+ );
7311
+
7312
+ const emit = defineEmits<SplitterGroupEmits>();
7313
+
7314
+ const forwarded = useForwardPropsEmits(reactiveOmit(props, "class"), emit);
7315
+
7316
+ const styles = tv({
7317
+ base: "flex h-full w-full data-[orientation=vertical]:flex-col",
7318
+ });
7319
+ </script>
7320
+ `},{fileName:"Splitter/Panel.vue",dirPath:"components/UI",fileContent:`<template>
7321
+ <SplitterPanel
7322
+ v-bind="forwarded"
7323
+ v-slot="{ isCollapsed, isExpanded }: { isCollapsed: boolean; isExpanded: boolean }"
7324
+ >
7325
+ <slot :isCollapsed="isCollapsed" :isExpanded="isExpanded"></slot>
7326
+ </SplitterPanel>
7327
+ </template>
7328
+
7329
+ <script lang="ts" setup>
7330
+ import { SplitterPanel, useForwardPropsEmits } from "radix-vue";
7331
+ import type { SplitterPanelEmits, SplitterPanelProps } from "radix-vue";
7332
+
7333
+ const props = withDefaults(defineProps<SplitterPanelProps>(), {});
7334
+
7335
+ const emit = defineEmits<SplitterPanelEmits>();
7336
+
7337
+ const forwarded = useForwardPropsEmits(props, emit);
7338
+ </script>
7339
+ `},{fileName:"Splitter/Handle.vue",dirPath:"components/UI",fileContent:`<template>
7340
+ <SplitterResizeHandle v-bind="forwarded" :class="styles({ class: props.class })">
7341
+ <slot>
7342
+ <div
7343
+ v-if="withHandle"
7344
+ class="z-10 flex h-4 w-3 items-center justify-center rounded-sm border bg-border"
7345
+ >
7346
+ <Icon :name="icon" class="h-2.5 w-2.5" />
7347
+ </div>
7348
+ </slot>
7349
+ </SplitterResizeHandle>
7350
+ </template>
7351
+
7352
+ <script lang="ts" setup>
7353
+ import { SplitterResizeHandle, useForwardPropsEmits } from "radix-vue";
7354
+ import type { SplitterResizeHandleEmits, SplitterResizeHandleProps } from "radix-vue";
7355
+
7356
+ const props = withDefaults(
7357
+ defineProps<
7358
+ SplitterResizeHandleProps & {
7359
+ direction?: "horizontal" | "vertical";
7360
+ class?: any;
7361
+ withHandle?: boolean;
7362
+ icon?: string;
7363
+ }
7364
+ >(),
7365
+ {
7366
+ direction: "horizontal",
7367
+ icon: "lucide:grip-vertical",
7368
+ }
7369
+ );
7370
+
7371
+ const emit = defineEmits<SplitterResizeHandleEmits>();
7372
+
7373
+ const forwarded = useForwardPropsEmits(reactiveOmit(props, "class", "withHandle", "icon"), emit);
7374
+
7375
+ const styles = tv({
7376
+ base: "relative flex w-px items-center justify-center bg-border after:absolute after:inset-y-0 after:left-1/2 after:w-1 after:-translate-x-1/2 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-1 data-[orientation=vertical]:h-px data-[orientation=vertical]:w-full data-[orientation=vertical]:after:left-0 data-[orientation=vertical]:after:h-1 data-[orientation=vertical]:after:w-full data-[orientation=vertical]:after:-translate-y-1/2 data-[orientation=vertical]:after:translate-x-0 [&[data-orientation=vertical]>div]:rotate-90",
7377
+ });
7378
+ </script>
7370
7379
  `}],utils:[],composables:[],plugins:[]},{name:"Switch",value:"switch",files:[{fileName:"Switch/Switch.vue",dirPath:"components/UI",fileContent:`<template>
7371
7380
  <SwitchRoot v-bind="forwarded" :class="styles({ class: props.class })">
7372
7381
  <UiSwitchThumb>
@@ -8993,6 +9002,7 @@ export { toast, useToast };
8993
9002
  <UiLabel
8994
9003
  :for="inputId"
8995
9004
  v-if="label"
9005
+ :hint="labelHint"
8996
9006
  :class="[disabled && 'text-muted-foreground', errorMessage && 'text-destructive', 'mb-2']"
8997
9007
  >{{ label }}</UiLabel
8998
9008
  >
@@ -9031,6 +9041,7 @@ export { toast, useToast };
9031
9041
 
9032
9042
  const props = defineProps<{
9033
9043
  label?: string;
9044
+ labelHint?: string;
9034
9045
  icon?: string;
9035
9046
  hint?: string;
9036
9047
  disabled?: boolean;
@@ -9602,15 +9613,15 @@ export { toast, useToast };
9602
9613
  @apply bg-muted-foreground;
9603
9614
  }
9604
9615
  </style>
9605
- `}],utils:[],composables:[],plugins:[]}];import{join as xp}from"path";import{loadConfig as Pp}from"c12";import Se from"fs-extra";import Ta from"kleur";import Tp from"lodash";import{promises as Js}from"node:fs";var _n=an(cs(),1),_i=an(Hs(),1);function ue(r){var n=r.use(J),e=n.Type,t=n.builtInTypes,s=t.number;function i(c){return e.from(p=>s.check(p)&&p>=c,s+" >= "+c)}let a={null:function(){return null},emptyArray:function(){return[]},false:function(){return!1},true:function(){return!0},undefined:function(){},"use strict":function(){return"use strict"}};var o=e.or(t.string,t.number,t.boolean,t.null,t.undefined);let l=e.from(c=>{if(c===null)return!0;var p=typeof c;return!(p==="object"||p==="function")},o.toString());return{geq:i,defaults:a,isPrimitive:l}}function z(r){try{var n=r(),e=n.exports,t=e.default}catch{return}t&&t!==e&&typeof e=="object"&&(Object.assign(t,e,{default:t}),e.__esModule&&Object.defineProperty(t,"__esModule",{value:!0}),n.exports=t)}var jl=Object.defineProperty,Vl=(r,n,e)=>n in r?jl(r,n,{enumerable:!0,configurable:!0,writable:!0,value:e}):r[n]=e,ie=(r,n,e)=>(Vl(r,typeof n!="symbol"?n+"":n,e),e),Ri=Object.prototype,Nn=Ri.toString,ge=Ri.hasOwnProperty,tt=class{assert(n,e){if(!this.check(n,e)){var t=ir(n);throw new Error(t+" does not match type "+this)}return!0}arrayOf(){let n=this;return new Qt(n)}},Qt=class extends tt{constructor(n){super(),this.elemType=n,ie(this,"kind","ArrayType")}toString(){return"["+this.elemType+"]"}check(n,e){return Array.isArray(n)&&n.every(t=>this.elemType.check(t,e))}},Dn=class extends tt{constructor(n){super(),this.value=n,ie(this,"kind","IdentityType")}toString(){return String(this.value)}check(n,e){let t=n===this.value;return!t&&typeof e=="function"&&e(this,n),t}},Mn=class extends tt{constructor(n){super(),this.fields=n,ie(this,"kind","ObjectType")}toString(){return"{ "+this.fields.join(", ")+" }"}check(n,e){return Nn.call(n)===Nn.call({})&&this.fields.every(t=>t.type.check(n[t.name],e))}},Ln=class extends tt{constructor(n){super(),this.types=n,ie(this,"kind","OrType")}toString(){return this.types.join(" | ")}check(n,e){return this.types.some(t=>t.check(n,!!e))?!0:(typeof e=="function"&&e(this,n),!1)}},et=class extends tt{constructor(n,e){super(),this.name=n,this.predicate=e,ie(this,"kind","PredicateType")}toString(){return this.name}check(n,e){let t=this.predicate(n,e);return!t&&typeof e=="function"&&e(this,n),t}},Jt=class r{constructor(n,e){this.type=n,this.typeName=e,ie(this,"baseNames",[]),ie(this,"ownFields",Object.create(null)),ie(this,"allSupertypes",Object.create(null)),ie(this,"supertypeList",[]),ie(this,"allFields",Object.create(null)),ie(this,"fieldNames",[]),ie(this,"finalized",!1),ie(this,"buildable",!1),ie(this,"buildParams",[])}isSupertypeOf(n){if(n instanceof r){if(this.finalized!==!0||n.finalized!==!0)throw new Error("");return ge.call(n.allSupertypes,this.typeName)}else throw new Error(n+" is not a Def")}checkAllFields(n,e){var t=this.allFields;if(this.finalized!==!0)throw new Error(""+this.typeName);function s(i){var a=t[i],o=a.type,l=a.getValue(n);return o.check(l,e)}return n!==null&&typeof n=="object"&&Object.keys(t).every(s)}bases(...n){var e=this.baseNames;if(this.finalized){if(n.length!==e.length)throw new Error("");for(var t=0;t<n.length;t++)if(n[t]!==e[t])throw new Error("");return this}return n.forEach(s=>{e.indexOf(s)<0&&e.push(s)}),this}},On=class{constructor(n,e,t,s){this.name=n,this.type=e,this.defaultFn=t,ie(this,"hidden"),this.hidden=!!s}toString(){return JSON.stringify(this.name)+": "+this.type}getValue(n){var e=n[this.name];return typeof e<"u"||typeof this.defaultFn=="function"&&(e=this.defaultFn.call(n)),e}};function ir(r){return Array.isArray(r)?"["+r.map(ir).join(", ")+"]":r&&typeof r=="object"?"{ "+Object.keys(r).map(function(n){return n+": "+r[n]}).join(", ")+" }":JSON.stringify(r)}function J(r){let n={or(...S){return new Ln(S.map(I=>n.from(I)))},from(S,I){if(S instanceof Qt||S instanceof Dn||S instanceof Mn||S instanceof Ln||S instanceof et)return S;if(S instanceof Jt)return S.type;if(o.check(S)){if(S.length!==1)throw new Error("only one element type is permitted for typed arrays");return new Qt(n.from(S[0]))}if(l.check(S))return new Mn(Object.keys(S).map(F=>new On(F,n.from(S[F],F))));if(typeof S=="function"){var O=e.indexOf(S);if(O>=0)return t[O];if(typeof I!="string")throw new Error("missing name");return new et(I,S)}return new Dn(S)},def(S){return ge.call(v,S)?v[S]:v[S]=new E(S)},hasDef(S){return ge.call(v,S)}};var e=[],t=[];function s(S,I){let O=Nn.call(I),F=new et(S,$=>Nn.call($)===O);return I&&typeof I.constructor=="function"&&(e.push(I.constructor),t.push(F)),F}let i=s("string","truthy"),a=s("function",function(){}),o=s("array",[]),l=s("object",{}),c=s("RegExp",/./),p=s("Date",new Date),u=s("number",3),h=s("boolean",!0),m=s("null",null),d=s("undefined",void 0),g=typeof BigInt=="function"?s("BigInt",BigInt(1234)):new et("BigInt",()=>!1),f={string:i,function:a,array:o,object:l,RegExp:c,Date:p,number:u,boolean:h,null:m,undefined:d,BigInt:g};var v=Object.create(null);function w(S){if(S&&typeof S=="object"){var I=S.type;if(typeof I=="string"&&ge.call(v,I)){var O=v[I];if(O.finalized)return O}}return null}class E extends Jt{constructor(I){super(new et(I,(O,F)=>this.check(O,F)),I)}check(I,O){if(this.finalized!==!0)throw new Error("prematurely checking unfinalized type "+this.typeName);if(I===null||typeof I!="object")return!1;var F=w(I);return F?O&&F===this?this.checkAllFields(I,O):this.isSupertypeOf(F)?O?F.checkAllFields(I,O)&&this.checkAllFields(I,!1):!0:!1:this.typeName==="SourceLocation"||this.typeName==="Position"?this.checkAllFields(I,O):!1}build(...I){if(this.buildParams=I,this.buildable)return this;this.field("type",String,()=>this.typeName),this.buildable=!0;let O=($,H,K,he)=>{if(!ge.call($,H)){var Me=this.allFields;if(!ge.call(Me,H))throw new Error(""+H);var rn=Me[H],Wa=rn.type,Et;if(he)Et=K;else if(rn.defaultFn)Et=rn.defaultFn.call($);else{var Ga="no value or default function given for field "+JSON.stringify(H)+" of "+this.typeName+"("+this.buildParams.map(function(Ka){return Me[Ka]}).join(", ")+")";throw new Error(Ga)}if(!Wa.check(Et))throw new Error(ir(Et)+" does not match field "+rn+" of type "+this.typeName);$[H]=Et}},F=(...$)=>{var H=$.length;if(!this.finalized)throw new Error("attempting to instantiate unfinalized type "+this.typeName);var K=Object.create(N);if(this.buildParams.forEach(function(he,Me){Me<H?O(K,he,$[Me],!0):O(K,he,null,!1)}),Object.keys(this.allFields).forEach(function(he){O(K,he,null,!1)}),K.type!==this.typeName)throw new Error("");return K};return F.from=$=>{if(!this.finalized)throw new Error("attempting to instantiate unfinalized type "+this.typeName);var H=Object.create(N);if(Object.keys(this.allFields).forEach(function(K){ge.call($,K)?O(H,K,$[K],!0):O(H,K,null,!1)}),H.type!==this.typeName)throw new Error("");return H},Object.defineProperty(C,le(this.typeName),{enumerable:!0,value:F}),this}field(I,O,F,$){return this.finalized?(console.error("Ignoring attempt to redefine field "+JSON.stringify(I)+" of finalized type "+JSON.stringify(this.typeName)),this):(this.ownFields[I]=new On(I,n.from(O),F,$),this)}finalize(){if(!this.finalized){var I=this.allFields,O=this.allSupertypes;this.baseNames.forEach($=>{var H=v[$];if(H instanceof Jt)H.finalize(),Xn(I,H.allFields),Xn(O,H.allSupertypes);else{var K="unknown supertype name "+JSON.stringify($)+" for subtype "+JSON.stringify(this.typeName);throw new Error(K)}}),Xn(I,this.ownFields),O[this.typeName]=this,this.fieldNames.length=0;for(var F in I)ge.call(I,F)&&!I[F].hidden&&this.fieldNames.push(F);Object.defineProperty(yr,this.typeName,{enumerable:!0,value:this.type}),this.finalized=!0,qa(this.typeName,this.supertypeList),this.buildable&&this.supertypeList.lastIndexOf("Expression")>=0&&$a(this.typeName)}}}function x(S){if(!ge.call(v,S))throw new Error("");var I=v[S];if(I.finalized!==!0)throw new Error("");return I.supertypeList.slice(1)}function P(S){for(var I={},O=Object.keys(v),F=O.length,$=0;$<F;++$){var H=O[$],K=v[H];if(K.finalized!==!0)throw new Error(""+H);for(var he=0;he<K.supertypeList.length;++he){var Me=K.supertypeList[he];if(ge.call(S,Me)){I[H]=Me;break}}}return I}var C=Object.create(null),N={};function q(S,I){var O=N[S];return d.check(I)?delete N[S]:(a.assert(I),Object.defineProperty(N,S,{enumerable:!0,configurable:!0,value:I})),O}function le(S){return S.replace(/^[A-Z]+/,function(I){var O=I.length;switch(O){case 0:return"";case 1:return I.toLowerCase();default:return I.slice(0,O-1).toLowerCase()+I.charAt(O-1)}})}function Ee(S){return S=le(S),S.replace(/(Expression)?$/,"Statement")}var yr={};function Kn(S){var I=w(S);if(I)return I.fieldNames.slice(0);if("type"in S)throw new Error("did not recognize object of type "+JSON.stringify(S.type));return Object.keys(S)}function Jn(S,I){var O=w(S);if(O){var F=O.allFields[I];if(F)return F.getValue(S)}return S&&S[I]}function Va(S,I,O){Kn(S).forEach(function(F){I.call(this,F,Jn(S,F))},O)}function za(S,I,O){return Kn(S).some(function(F){return I.call(this,F,Jn(S,F))},O)}function $a(S){var I=Ee(S);if(C[I])return;var O=C[le(S)];if(!O)return;let F=function(...$){return C.expressionStatement(O.apply(C,$))};F.from=function(...$){return C.expressionStatement(O.from.apply(C,$))},C[I]=F}function qa(S,I){I.length=0,I.push(S);for(var O=Object.create(null),F=0;F<I.length;++F){S=I[F];var $=v[S];if($.finalized!==!0)throw new Error("");ge.call(O,S)&&delete I[O[S]],O[S]=F,I.push.apply(I,$.baseNames)}for(var H=0,K=H,he=I.length;K<he;++K)ge.call(I,K)&&(I[H++]=I[K]);I.length=H}function Xn(S,I){return Object.keys(I).forEach(function(O){S[O]=I[O]}),S}function Ha(){Object.keys(v).forEach(function(S){v[S].finalize()})}return{Type:n,builtInTypes:f,getSupertypeNames:x,computeSupertypeLookupTable:P,builders:C,defineMethod:q,getBuilderName:le,getStatementBuilderName:Ee,namedTypes:yr,getFieldNames:Kn,getFieldValue:Jn,eachField:Va,someField:za,finalize:Ha}}z(()=>module);var zl=Object.prototype,Tn=zl.hasOwnProperty;function Bi(r){var n=r.use(J),e=n.builtInTypes.array,t=n.builtInTypes.number;let s=function u(h,m,d){if(!(this instanceof u))throw new Error("Path constructor cannot be invoked without 'new'");if(m){if(!(m instanceof u))throw new Error("")}else m=null,d=null;this.value=h,this.parentPath=m,this.name=d,this.__childCache=null};var i=s.prototype;function a(u){return u.__childCache||(u.__childCache=Object.create(null))}function o(u,h){var m=a(u),d=u.getValueProperty(h),g=m[h];return(!Tn.call(m,h)||g.value!==d)&&(g=m[h]=new u.constructor(d,u,h)),g}i.getValueProperty=function(h){return this.value[h]},i.get=function(...h){for(var m=this,d=h.length,g=0;g<d;++g)m=o(m,h[g]);return m},i.each=function(h,m){for(var d=[],g=this.value.length,f=0,f=0;f<g;++f)Tn.call(this.value,f)&&(d[f]=this.get(f));for(m=m||this,f=0;f<g;++f)Tn.call(d,f)&&h.call(m,d[f])},i.map=function(h,m){var d=[];return this.each(function(g){d.push(h.call(this,g))},m),d},i.filter=function(h,m){var d=[];return this.each(function(g){h.call(this,g)&&d.push(g)},m),d};function l(){}function c(u,h,m,d){if(e.assert(u.value),h===0)return l;var g=u.value.length;if(g<1)return l;var f=arguments.length;f===2?(m=0,d=g):f===3?(m=Math.max(m,0),d=g):(m=Math.max(m,0),d=Math.min(d,g)),t.assert(m),t.assert(d);for(var v=Object.create(null),w=a(u),E=m;E<d;++E)if(Tn.call(u.value,E)){var x=u.get(E);if(x.name!==E)throw new Error("");var P=E+h;x.name=P,v[P]=x,delete w[E]}return delete w.length,function(){for(var C in v){var N=v[C];if(N.name!==+C)throw new Error("");w[C]=N,u.value[C]=N.value}}}i.shift=function(){var h=c(this,-1),m=this.value.shift();return h(),m},i.unshift=function(...h){var m=c(this,h.length),d=this.value.unshift.apply(this.value,h);return m(),d},i.push=function(...h){return e.assert(this.value),delete a(this).length,this.value.push.apply(this.value,h)},i.pop=function(){e.assert(this.value);var h=a(this);return delete h[this.value.length-1],delete h.length,this.value.pop()},i.insertAt=function(h){var m=arguments.length,d=c(this,m-1,h);if(d===l&&m<=1)return this;h=Math.max(h,0);for(var g=1;g<m;++g)this.value[h+g-1]=arguments[g];return d(),this},i.insertBefore=function(...h){for(var m=this.parentPath,d=h.length,g=[this.name],f=0;f<d;++f)g.push(h[f]);return m.insertAt.apply(m,g)},i.insertAfter=function(...h){for(var m=this.parentPath,d=h.length,g=[this.name+1],f=0;f<d;++f)g.push(h[f]);return m.insertAt.apply(m,g)};function p(u){if(!(u instanceof s))throw new Error("");var h=u.parentPath;if(!h)return u;var m=h.value,d=a(h);if(m[u.name]===u.value)d[u.name]=u;else if(e.check(m)){var g=m.indexOf(u.value);g>=0&&(d[u.name=g]=u)}else m[u.name]=u.value,d[u.name]=u;if(m[u.name]!==u.value)throw new Error("");if(u.parentPath.get(u.name)!==u)throw new Error("");return u}return i.replace=function(h){var m=[],d=this.parentPath.value,g=a(this.parentPath),f=arguments.length;if(p(this),e.check(d)){for(var v=d.length,w=c(this.parentPath,f-1,this.name+1),E=[this.name,1],x=0;x<f;++x)E.push(arguments[x]);var P=d.splice.apply(d,E);if(P[0]!==this.value)throw new Error("");if(d.length!==v-1+f)throw new Error("");if(w(),f===0)delete this.value,delete g[this.name],this.__childCache=null;else{if(d[this.name]!==h)throw new Error("");for(this.value!==h&&(this.value=h,this.__childCache=null),x=0;x<f;++x)m.push(this.parentPath.get(this.name+x));if(m[0]!==this)throw new Error("")}}else if(f===1)this.value!==h&&(this.__childCache=null),this.value=d[this.name]=h,m.push(this);else if(f===0)delete d[this.name],delete this.value,this.__childCache=null;else throw new Error("Could not replace path");return m},s}z(()=>module);var mt=Object.prototype.hasOwnProperty;function $l(r){var n=r.use(J),e=n.Type,t=n.namedTypes,s=t.Node,i=t.Expression,a=n.builtInTypes.array,o=n.builders;let l=function x(P,C){if(!(this instanceof x))throw new Error("Scope constructor cannot be invoked without 'new'");p.check(P.value)||c.assert(P.value);var N;if(C){if(!(C instanceof x))throw new Error("");N=C.depth+1}else C=null,N=0;Object.defineProperties(this,{path:{value:P},node:{value:P.value},isGlobal:{value:!C,enumerable:!0},depth:{value:N},parent:{value:C},bindings:{value:{}},types:{value:{}}})};var c=e.or(t.Program,t.Function,t.CatchClause),p=e.or(t.Function,t.ClassDeclaration,t.ClassExpression,t.InterfaceDeclaration,t.TSInterfaceDeclaration,t.TypeAlias,t.TSTypeAliasDeclaration),u=e.or(t.TypeParameter,t.TSTypeParameter);l.isEstablishedBy=function(x){return c.check(x)||p.check(x)};var h=l.prototype;h.didScan=!1,h.declares=function(x){return this.scan(),mt.call(this.bindings,x)},h.declaresType=function(x){return this.scan(),mt.call(this.types,x)},h.declareTemporary=function(x){if(x){if(!/^[a-z$_]/i.test(x))throw new Error("")}else x="t$";x+=this.depth.toString(36)+"$",this.scan();for(var P=0;this.declares(x+P);)++P;var C=x+P;return this.bindings[C]=n.builders.identifier(C)},h.injectTemporary=function(x,P){x||(x=this.declareTemporary());var C=this.path.get("body");return t.BlockStatement.check(C.value)&&(C=C.get("body")),C.unshift(o.variableDeclaration("var",[o.variableDeclarator(x,P||null)])),x},h.scan=function(x){if(x||!this.didScan){for(var P in this.bindings)delete this.bindings[P];for(var P in this.types)delete this.types[P];m(this.path,this.bindings,this.types),this.didScan=!0}},h.getBindings=function(){return this.scan(),this.bindings},h.getTypes=function(){return this.scan(),this.types};function m(x,P,C){var N=x.value;if(p.check(N)){let q=x.get("typeParameters","params");a.check(q.value)&&q.each(le=>{E(le,C)})}c.check(N)&&(t.CatchClause.check(N)?v(x.get("param"),P):d(x,P,C))}function d(x,P,C){var N=x.value;x.parent&&t.FunctionExpression.check(x.parent.node)&&x.parent.node.id&&v(x.parent.get("id"),P),N&&(a.check(N)?x.each(q=>{f(q,P,C)}):t.Function.check(N)?(x.get("params").each(q=>{v(q,P)}),f(x.get("body"),P,C),d(x.get("typeParameters"),P,C)):t.TypeAlias&&t.TypeAlias.check(N)||t.InterfaceDeclaration&&t.InterfaceDeclaration.check(N)||t.TSTypeAliasDeclaration&&t.TSTypeAliasDeclaration.check(N)||t.TSInterfaceDeclaration&&t.TSInterfaceDeclaration.check(N)?w(x.get("id"),C):t.VariableDeclarator.check(N)?(v(x.get("id"),P),f(x.get("init"),P,C)):N.type==="ImportSpecifier"||N.type==="ImportNamespaceSpecifier"||N.type==="ImportDefaultSpecifier"?v(x.get(N.local?"local":N.name?"name":"id"),P):s.check(N)&&!i.check(N)&&n.eachField(N,function(q,le){var Ee=x.get(q);if(!g(Ee,le))throw new Error("");f(Ee,P,C)}))}function g(x,P){return!!(x.value===P||Array.isArray(x.value)&&x.value.length===0&&Array.isArray(P)&&P.length===0)}function f(x,P,C){var N=x.value;if(!(!N||i.check(N)))if(t.FunctionDeclaration.check(N)&&N.id!==null)v(x.get("id"),P);else if(t.ClassDeclaration&&t.ClassDeclaration.check(N)&&N.id!==null)v(x.get("id"),P),d(x.get("typeParameters"),P,C);else if(t.InterfaceDeclaration&&t.InterfaceDeclaration.check(N)||t.TSInterfaceDeclaration&&t.TSInterfaceDeclaration.check(N))w(x.get("id"),C);else if(c.check(N)){if(t.CatchClause.check(N)&&t.Identifier.check(N.param)){var q=N.param.name,le=mt.call(P,q);d(x.get("body"),P,C),le||delete P[q]}}else d(x,P,C)}function v(x,P){var C=x.value;t.Pattern.assert(C),t.Identifier.check(C)?mt.call(P,C.name)?P[C.name].push(x):P[C.name]=[x]:t.AssignmentPattern&&t.AssignmentPattern.check(C)?v(x.get("left"),P):t.ObjectPattern&&t.ObjectPattern.check(C)?x.get("properties").each(function(N){var q=N.value;t.Pattern.check(q)?v(N,P):t.Property.check(q)||t.ObjectProperty&&t.ObjectProperty.check(q)?v(N.get("value"),P):t.SpreadProperty&&t.SpreadProperty.check(q)&&v(N.get("argument"),P)}):t.ArrayPattern&&t.ArrayPattern.check(C)?x.get("elements").each(function(N){var q=N.value;t.Pattern.check(q)?v(N,P):t.SpreadElement&&t.SpreadElement.check(q)&&v(N.get("argument"),P)}):t.PropertyPattern&&t.PropertyPattern.check(C)?v(x.get("pattern"),P):(t.SpreadElementPattern&&t.SpreadElementPattern.check(C)||t.RestElement&&t.RestElement.check(C)||t.SpreadPropertyPattern&&t.SpreadPropertyPattern.check(C))&&v(x.get("argument"),P)}function w(x,P){var C=x.value;t.Pattern.assert(C),t.Identifier.check(C)&&(mt.call(P,C.name)?P[C.name].push(x):P[C.name]=[x])}function E(x,P){var C=x.value;u.assert(C),mt.call(P,C.name)?P[C.name].push(x):P[C.name]=[x]}return h.lookup=function(x){for(var P=this;P&&!P.declares(x);P=P.parent);return P},h.lookupType=function(x){for(var P=this;P&&!P.declaresType(x);P=P.parent);return P},h.getGlobalScope=function(){for(var x=this;!x.isGlobal;)x=x.parent;return x},l}z(()=>module);function ji(r){var n=r.use(J),e=n.namedTypes,t=n.builders,s=n.builtInTypes.number,i=n.builtInTypes.array,a=r.use(Bi),o=r.use($l);let l=function f(v,w,E){if(!(this instanceof f))throw new Error("NodePath constructor cannot be invoked without 'new'");a.call(this,v,w,E)};var c=l.prototype=Object.create(a.prototype,{constructor:{value:l,enumerable:!1,writable:!0,configurable:!0}});Object.defineProperties(c,{node:{get:function(){return Object.defineProperty(this,"node",{configurable:!0,value:this._computeNode()}),this.node}},parent:{get:function(){return Object.defineProperty(this,"parent",{configurable:!0,value:this._computeParent()}),this.parent}},scope:{get:function(){return Object.defineProperty(this,"scope",{configurable:!0,value:this._computeScope()}),this.scope}}}),c.replace=function(){return delete this.node,delete this.parent,delete this.scope,a.prototype.replace.apply(this,arguments)},c.prune=function(){var f=this.parent;return this.replace(),d(f)},c._computeNode=function(){var f=this.value;if(e.Node.check(f))return f;var v=this.parentPath;return v&&v.node||null},c._computeParent=function(){var f=this.value,v=this.parentPath;if(!e.Node.check(f)){for(;v&&!e.Node.check(v.value);)v=v.parentPath;v&&(v=v.parentPath)}for(;v&&!e.Node.check(v.value);)v=v.parentPath;return v||null},c._computeScope=function(){var f=this.value,v=this.parentPath,w=v&&v.scope;return e.Node.check(f)&&o.isEstablishedBy(f)&&(w=new o(this,w)),w||null},c.getValueProperty=function(f){return n.getFieldValue(this.value,f)},c.needsParens=function(f){var v=this.parentPath;if(!v)return!1;var w=this.value;if(!e.Expression.check(w)||w.type==="Identifier")return!1;for(;!e.Node.check(v.value);)if(v=v.parentPath,!v)return!1;var E=v.value;switch(w.type){case"UnaryExpression":case"SpreadElement":case"SpreadProperty":return E.type==="MemberExpression"&&this.name==="object"&&E.object===w;case"BinaryExpression":case"LogicalExpression":switch(E.type){case"CallExpression":return this.name==="callee"&&E.callee===w;case"UnaryExpression":case"SpreadElement":case"SpreadProperty":return!0;case"MemberExpression":return this.name==="object"&&E.object===w;case"BinaryExpression":case"LogicalExpression":{let x=w,P=E.operator,C=u[P],N=x.operator,q=u[N];if(C>q)return!0;if(C===q&&this.name==="right"){if(E.right!==x)throw new Error("Nodes must be equal");return!0}}default:return!1}case"SequenceExpression":switch(E.type){case"ForStatement":return!1;case"ExpressionStatement":return this.name!=="expression";default:return!0}case"YieldExpression":switch(E.type){case"BinaryExpression":case"LogicalExpression":case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"CallExpression":case"MemberExpression":case"NewExpression":case"ConditionalExpression":case"YieldExpression":return!0;default:return!1}case"Literal":return E.type==="MemberExpression"&&s.check(w.value)&&this.name==="object"&&E.object===w;case"AssignmentExpression":case"ConditionalExpression":switch(E.type){case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"BinaryExpression":case"LogicalExpression":return!0;case"CallExpression":return this.name==="callee"&&E.callee===w;case"ConditionalExpression":return this.name==="test"&&E.test===w;case"MemberExpression":return this.name==="object"&&E.object===w;default:return!1}default:if(E.type==="NewExpression"&&this.name==="callee"&&E.callee===w)return h(w)}return!!(f!==!0&&!this.canBeFirstInStatement()&&this.firstInStatement())};function p(f){return e.BinaryExpression.check(f)||e.LogicalExpression.check(f)}var u={};[["||"],["&&"],["|"],["^"],["&"],["==","===","!=","!=="],["<",">","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"]].forEach(function(f,v){f.forEach(function(w){u[w]=v})});function h(f){return e.CallExpression.check(f)?!0:i.check(f)?f.some(h):e.Node.check(f)?n.someField(f,function(v,w){return h(w)}):!1}c.canBeFirstInStatement=function(){var f=this.node;return!e.FunctionExpression.check(f)&&!e.ObjectExpression.check(f)},c.firstInStatement=function(){return m(this)};function m(f){for(var v,w;f.parent;f=f.parent){if(v=f.node,w=f.parent.node,e.BlockStatement.check(w)&&f.parent.name==="body"&&f.name===0){if(w.body[0]!==v)throw new Error("Nodes must be equal");return!0}if(e.ExpressionStatement.check(w)&&f.name==="expression"){if(w.expression!==v)throw new Error("Nodes must be equal");return!0}if(e.SequenceExpression.check(w)&&f.parent.name==="expressions"&&f.name===0){if(w.expressions[0]!==v)throw new Error("Nodes must be equal");continue}if(e.CallExpression.check(w)&&f.name==="callee"){if(w.callee!==v)throw new Error("Nodes must be equal");continue}if(e.MemberExpression.check(w)&&f.name==="object"){if(w.object!==v)throw new Error("Nodes must be equal");continue}if(e.ConditionalExpression.check(w)&&f.name==="test"){if(w.test!==v)throw new Error("Nodes must be equal");continue}if(p(w)&&f.name==="left"){if(w.left!==v)throw new Error("Nodes must be equal");continue}if(e.UnaryExpression.check(w)&&!w.prefix&&f.name==="argument"){if(w.argument!==v)throw new Error("Nodes must be equal");continue}return!1}return!0}function d(f){if(e.VariableDeclaration.check(f.node)){var v=f.get("declarations").value;if(!v||v.length===0)return f.prune()}else if(e.ExpressionStatement.check(f.node)){if(!f.get("expression").value)return f.prune()}else e.IfStatement.check(f.node)&&g(f);return f}function g(f){var v=f.get("test").value,w=f.get("alternate").value,E=f.get("consequent").value;if(!E&&!w){var x=t.expressionStatement(v);f.replace(x)}else if(!E&&w){var P=t.unaryExpression("!",v,!0);e.UnaryExpression.check(v)&&v.operator==="!"&&(P=v.argument),f.get("test").replace(P),f.get("consequent").replace(w),f.get("alternate").replace()}}return l}z(()=>module);var wn=Object.prototype.hasOwnProperty;function ql(r){var n=r.use(J),e=r.use(ji),t=n.builtInTypes.array,s=n.builtInTypes.object,i=n.builtInTypes.function,a;let o=function d(){if(!(this instanceof d))throw new Error("PathVisitor constructor cannot be invoked without 'new'");this._reusableContextStack=[],this._methodNameTable=l(this),this._shouldVisitComments=wn.call(this._methodNameTable,"Block")||wn.call(this._methodNameTable,"Line"),this.Context=h(this),this._visiting=!1,this._changeReported=!1};function l(d){var g=Object.create(null);for(var f in d)/^visit[A-Z]/.test(f)&&(g[f.slice(5)]=!0);for(var v=n.computeSupertypeLookupTable(g),w=Object.create(null),E=Object.keys(v),x=E.length,P=0;P<x;++P){var C=E[P];f="visit"+v[C],i.check(d[f])&&(w[C]=f)}return w}o.fromMethodsObject=function(g){if(g instanceof o)return g;if(!s.check(g))return new o;let f=function w(){if(!(this instanceof w))throw new Error("Visitor constructor cannot be invoked without 'new'");o.call(this)};var v=f.prototype=Object.create(p);return v.constructor=f,c(v,g),c(f,o),i.assert(f.fromMethodsObject),i.assert(f.visit),new f};function c(d,g){for(var f in g)wn.call(g,f)&&(d[f]=g[f]);return d}o.visit=function(g,f){return o.fromMethodsObject(f).visit(g)};var p=o.prototype;p.visit=function(){if(this._visiting)throw new Error("Recursively calling visitor.visit(path) resets visitor state. Try this.visit(path) or this.traverse(path) instead.");this._visiting=!0,this._changeReported=!1,this._abortRequested=!1;for(var d=arguments.length,g=new Array(d),f=0;f<d;++f)g[f]=arguments[f];g[0]instanceof e||(g[0]=new e({root:g[0]}).get("root")),this.reset.apply(this,g);var v;try{var w=this.visitWithoutReset(g[0]);v=!0}finally{if(this._visiting=!1,!v&&this._abortRequested)return g[0].value}return w},p.AbortRequest=function(){},p.abort=function(){var d=this;d._abortRequested=!0;var g=new d.AbortRequest;throw g.cancel=function(){d._abortRequested=!1},g},p.reset=function(d){},p.visitWithoutReset=function(d){if(this instanceof this.Context)return this.visitor.visitWithoutReset(d);if(!(d instanceof e))throw new Error("");var g=d.value,f=g&&typeof g=="object"&&typeof g.type=="string"&&this._methodNameTable[g.type];if(f){var v=this.acquireContext(d);try{return v.invokeVisitorMethod(f)}finally{this.releaseContext(v)}}else return u(d,this)};function u(d,g){if(!(d instanceof e))throw new Error("");if(!(g instanceof o))throw new Error("");var f=d.value;if(t.check(f))d.each(g.visitWithoutReset,g);else if(s.check(f)){var v=n.getFieldNames(f);g._shouldVisitComments&&f.comments&&v.indexOf("comments")<0&&v.push("comments");for(var w=v.length,E=[],x=0;x<w;++x){var P=v[x];wn.call(f,P)||(f[P]=n.getFieldValue(f,P)),E.push(d.get(P))}for(var x=0;x<w;++x)g.visitWithoutReset(E[x])}return d.value}p.acquireContext=function(d){return this._reusableContextStack.length===0?new this.Context(d):this._reusableContextStack.pop().reset(d)},p.releaseContext=function(d){if(!(d instanceof this.Context))throw new Error("");this._reusableContextStack.push(d),d.currentPath=null},p.reportChanged=function(){this._changeReported=!0},p.wasChangeReported=function(){return this._changeReported};function h(d){function g(v){if(!(this instanceof g))throw new Error("");if(!(this instanceof o))throw new Error("");if(!(v instanceof e))throw new Error("");Object.defineProperty(this,"visitor",{value:d,writable:!1,enumerable:!0,configurable:!1}),this.currentPath=v,this.needToCallTraverse=!0,Object.seal(this)}if(!(d instanceof o))throw new Error("");var f=g.prototype=Object.create(d);return f.constructor=g,c(f,m),g}var m=Object.create(null);return m.reset=function(g){if(!(this instanceof this.Context))throw new Error("");if(!(g instanceof e))throw new Error("");return this.currentPath=g,this.needToCallTraverse=!0,this},m.invokeVisitorMethod=function(g){if(!(this instanceof this.Context))throw new Error("");if(!(this.currentPath instanceof e))throw new Error("");var f=this.visitor[g].call(this,this.currentPath);if(f===!1?this.needToCallTraverse=!1:f!==a&&(this.currentPath=this.currentPath.replace(f)[0],this.needToCallTraverse&&this.traverse(this.currentPath)),this.needToCallTraverse!==!1)throw new Error("Must either call this.traverse or return false in "+g);var v=this.currentPath;return v&&v.value},m.traverse=function(g,f){if(!(this instanceof this.Context))throw new Error("");if(!(g instanceof e))throw new Error("");if(!(this.currentPath instanceof e))throw new Error("");return this.needToCallTraverse=!1,u(g,o.fromMethodsObject(f||this.visitor))},m.visit=function(g,f){if(!(this instanceof this.Context))throw new Error("");if(!(g instanceof e))throw new Error("");if(!(this.currentPath instanceof e))throw new Error("");return this.needToCallTraverse=!1,o.fromMethodsObject(f||this.visitor).visitWithoutReset(g)},m.reportChanged=function(){this.visitor.reportChanged()},m.abort=function(){this.needToCallTraverse=!1,this.visitor.abort()},o}z(()=>module);function Hl(r){var n=r.use(J),e=n.getFieldNames,t=n.getFieldValue,s=n.builtInTypes.array,i=n.builtInTypes.object,a=n.builtInTypes.Date,o=n.builtInTypes.RegExp,l=Object.prototype.hasOwnProperty;function c(d,g,f){return s.check(f)?f.length=0:f=null,u(d,g,f)}c.assert=function(d,g){var f=[];if(!c(d,g,f))if(f.length===0){if(d!==g)throw new Error("Nodes must be equal")}else throw new Error("Nodes differ in the following path: "+f.map(p).join(""))};function p(d){return/[_$a-z][_$a-z0-9]*/i.test(d)?"."+d:"["+JSON.stringify(d)+"]"}function u(d,g,f){return d===g?!0:s.check(d)?h(d,g,f):i.check(d)?m(d,g,f):a.check(d)?a.check(g)&&+d==+g:o.check(d)?o.check(g)&&d.source===g.source&&d.global===g.global&&d.multiline===g.multiline&&d.ignoreCase===g.ignoreCase:d==g}function h(d,g,f){s.assert(d);var v=d.length;if(!s.check(g)||g.length!==v)return f&&f.push("length"),!1;for(var w=0;w<v;++w){if(f&&f.push(w),w in d!=w in g||!u(d[w],g[w],f))return!1;if(f){var E=f.pop();if(E!==w)throw new Error(""+E)}}return!0}function m(d,g,f){if(i.assert(d),!i.check(g))return!1;if(d.type!==g.type)return f&&f.push("type"),!1;var v=e(d),w=v.length,E=e(g),x=E.length;if(w===x){for(var P=0;P<w;++P){var C=v[P],N=t(d,C),q=t(g,C);if(f&&f.push(C),!u(N,q,f))return!1;if(f){var le=f.pop();if(le!==C)throw new Error(""+le)}}return!0}if(!f)return!1;var Ee=Object.create(null);for(P=0;P<w;++P)Ee[v[P]]=!0;for(P=0;P<x;++P){if(C=E[P],!l.call(Ee,C))return f.push(C),!1;delete Ee[C]}for(C in Ee){f.push(C);break}return!1}return c}z(()=>module);function Wl(r){let n=Gl(),e=n.use(J);r.forEach(n.use),e.finalize();let t=n.use(ql);return{Type:e.Type,builtInTypes:e.builtInTypes,namedTypes:e.namedTypes,builders:e.builders,defineMethod:e.defineMethod,getFieldNames:e.getFieldNames,getFieldValue:e.getFieldValue,eachField:e.eachField,someField:e.someField,getSupertypeNames:e.getSupertypeNames,getBuilderName:e.getBuilderName,astNodesAreEquivalent:n.use(Hl),finalize:e.finalize,Path:n.use(Bi),NodePath:n.use(ji),PathVisitor:t,use:n.use,visit:t.visit}}function Gl(){let r=[],n=[];function e(s){var i=r.indexOf(s);return i===-1&&(i=r.length,r.push(s),n[i]=s(t)),n[i]}var t={use:e};return t}z(()=>module);function Vi(){return{BinaryOperators:["==","!=","===","!==","<","<=",">",">=","<<",">>",">>>","+","-","*","/","%","&","|","^","in","instanceof"],AssignmentOperators:["=","+=","-=","*=","/=","%=","<<=",">>=",">>>=","|=","^=","&="],LogicalOperators:["||","&&"]}}z(()=>module);function zi(r){let n=r.use(Vi);return n.BinaryOperators.indexOf("**")<0&&n.BinaryOperators.push("**"),n.AssignmentOperators.indexOf("**=")<0&&n.AssignmentOperators.push("**="),n}z(()=>module);function $i(r){let n=r.use(zi);return n.LogicalOperators.indexOf("??")<0&&n.LogicalOperators.push("??"),n}z(()=>module);function Kl(r){let n=r.use($i);return n.LogicalOperators.forEach(e=>{let t=e+"=";n.AssignmentOperators.indexOf(t)<0&&n.AssignmentOperators.push(t)}),n}z(()=>module);function Jl(r){var n=r.use(J),e=n.Type,t=e.def,s=e.or,i=r.use(ue),a=i.defaults,o=i.geq;let{BinaryOperators:l,AssignmentOperators:c,LogicalOperators:p}=r.use(Vi);t("Printable").field("loc",s(t("SourceLocation"),null),a.null,!0),t("Node").bases("Printable").field("type",String).field("comments",s([t("Comment")],null),a.null,!0),t("SourceLocation").field("start",t("Position")).field("end",t("Position")).field("source",s(String,null),a.null),t("Position").field("line",o(1)).field("column",o(0)),t("File").bases("Node").build("program","name").field("program",t("Program")).field("name",s(String,null),a.null),t("Program").bases("Node").build("body").field("body",[t("Statement")]),t("Function").bases("Node").field("id",s(t("Identifier"),null),a.null).field("params",[t("Pattern")]).field("body",t("BlockStatement")).field("generator",Boolean,a.false).field("async",Boolean,a.false),t("Statement").bases("Node"),t("EmptyStatement").bases("Statement").build(),t("BlockStatement").bases("Statement").build("body").field("body",[t("Statement")]),t("ExpressionStatement").bases("Statement").build("expression").field("expression",t("Expression")),t("IfStatement").bases("Statement").build("test","consequent","alternate").field("test",t("Expression")).field("consequent",t("Statement")).field("alternate",s(t("Statement"),null),a.null),t("LabeledStatement").bases("Statement").build("label","body").field("label",t("Identifier")).field("body",t("Statement")),t("BreakStatement").bases("Statement").build("label").field("label",s(t("Identifier"),null),a.null),t("ContinueStatement").bases("Statement").build("label").field("label",s(t("Identifier"),null),a.null),t("WithStatement").bases("Statement").build("object","body").field("object",t("Expression")).field("body",t("Statement")),t("SwitchStatement").bases("Statement").build("discriminant","cases","lexical").field("discriminant",t("Expression")).field("cases",[t("SwitchCase")]).field("lexical",Boolean,a.false),t("ReturnStatement").bases("Statement").build("argument").field("argument",s(t("Expression"),null)),t("ThrowStatement").bases("Statement").build("argument").field("argument",t("Expression")),t("TryStatement").bases("Statement").build("block","handler","finalizer").field("block",t("BlockStatement")).field("handler",s(t("CatchClause"),null),function(){return this.handlers&&this.handlers[0]||null}).field("handlers",[t("CatchClause")],function(){return this.handler?[this.handler]:[]},!0).field("guardedHandlers",[t("CatchClause")],a.emptyArray).field("finalizer",s(t("BlockStatement"),null),a.null),t("CatchClause").bases("Node").build("param","guard","body").field("param",t("Pattern")).field("guard",s(t("Expression"),null),a.null).field("body",t("BlockStatement")),t("WhileStatement").bases("Statement").build("test","body").field("test",t("Expression")).field("body",t("Statement")),t("DoWhileStatement").bases("Statement").build("body","test").field("body",t("Statement")).field("test",t("Expression")),t("ForStatement").bases("Statement").build("init","test","update","body").field("init",s(t("VariableDeclaration"),t("Expression"),null)).field("test",s(t("Expression"),null)).field("update",s(t("Expression"),null)).field("body",t("Statement")),t("ForInStatement").bases("Statement").build("left","right","body").field("left",s(t("VariableDeclaration"),t("Expression"))).field("right",t("Expression")).field("body",t("Statement")),t("DebuggerStatement").bases("Statement").build(),t("Declaration").bases("Statement"),t("FunctionDeclaration").bases("Function","Declaration").build("id","params","body").field("id",t("Identifier")),t("FunctionExpression").bases("Function","Expression").build("id","params","body"),t("VariableDeclaration").bases("Declaration").build("kind","declarations").field("kind",s("var","let","const")).field("declarations",[t("VariableDeclarator")]),t("VariableDeclarator").bases("Node").build("id","init").field("id",t("Pattern")).field("init",s(t("Expression"),null),a.null),t("Expression").bases("Node"),t("ThisExpression").bases("Expression").build(),t("ArrayExpression").bases("Expression").build("elements").field("elements",[s(t("Expression"),null)]),t("ObjectExpression").bases("Expression").build("properties").field("properties",[t("Property")]),t("Property").bases("Node").build("kind","key","value").field("kind",s("init","get","set")).field("key",s(t("Literal"),t("Identifier"))).field("value",t("Expression")),t("SequenceExpression").bases("Expression").build("expressions").field("expressions",[t("Expression")]);var u=s("-","+","!","~","typeof","void","delete");t("UnaryExpression").bases("Expression").build("operator","argument","prefix").field("operator",u).field("argument",t("Expression")).field("prefix",Boolean,a.true);let h=s(...l);t("BinaryExpression").bases("Expression").build("operator","left","right").field("operator",h).field("left",t("Expression")).field("right",t("Expression"));let m=s(...c);t("AssignmentExpression").bases("Expression").build("operator","left","right").field("operator",m).field("left",s(t("Pattern"),t("MemberExpression"))).field("right",t("Expression"));var d=s("++","--");t("UpdateExpression").bases("Expression").build("operator","argument","prefix").field("operator",d).field("argument",t("Expression")).field("prefix",Boolean);var g=s(...p);t("LogicalExpression").bases("Expression").build("operator","left","right").field("operator",g).field("left",t("Expression")).field("right",t("Expression")),t("ConditionalExpression").bases("Expression").build("test","consequent","alternate").field("test",t("Expression")).field("consequent",t("Expression")).field("alternate",t("Expression")),t("NewExpression").bases("Expression").build("callee","arguments").field("callee",t("Expression")).field("arguments",[t("Expression")]),t("CallExpression").bases("Expression").build("callee","arguments").field("callee",t("Expression")).field("arguments",[t("Expression")]),t("MemberExpression").bases("Expression").build("object","property","computed").field("object",t("Expression")).field("property",s(t("Identifier"),t("Expression"))).field("computed",Boolean,function(){var f=this.property.type;return f==="Literal"||f==="MemberExpression"||f==="BinaryExpression"}),t("Pattern").bases("Node"),t("SwitchCase").bases("Node").build("test","consequent").field("test",s(t("Expression"),null)).field("consequent",[t("Statement")]),t("Identifier").bases("Expression","Pattern").build("name").field("name",String).field("optional",Boolean,a.false),t("Literal").bases("Expression").build("value").field("value",s(String,Boolean,null,Number,RegExp,BigInt)),t("Comment").bases("Printable").field("value",String).field("leading",Boolean,a.true).field("trailing",Boolean,a.false)}z(()=>module);function Xl(r){r.use(Jl);let n=r.use(J),e=n.Type.def,t=n.Type.or,s=r.use(ue).defaults;e("Function").field("generator",Boolean,s.false).field("expression",Boolean,s.false).field("defaults",[t(e("Expression"),null)],s.emptyArray).field("rest",t(e("Identifier"),null),s.null),e("RestElement").bases("Pattern").build("argument").field("argument",e("Pattern")).field("typeAnnotation",t(e("TypeAnnotation"),e("TSTypeAnnotation"),null),s.null),e("SpreadElementPattern").bases("Pattern").build("argument").field("argument",e("Pattern")),e("FunctionDeclaration").build("id","params","body","generator","expression").field("id",t(e("Identifier"),null)),e("FunctionExpression").build("id","params","body","generator","expression"),e("ArrowFunctionExpression").bases("Function","Expression").build("params","body","expression").field("id",null,s.null).field("body",t(e("BlockStatement"),e("Expression"))).field("generator",!1,s.false),e("ForOfStatement").bases("Statement").build("left","right","body").field("left",t(e("VariableDeclaration"),e("Pattern"))).field("right",e("Expression")).field("body",e("Statement")),e("YieldExpression").bases("Expression").build("argument","delegate").field("argument",t(e("Expression"),null)).field("delegate",Boolean,s.false),e("GeneratorExpression").bases("Expression").build("body","blocks","filter").field("body",e("Expression")).field("blocks",[e("ComprehensionBlock")]).field("filter",t(e("Expression"),null)),e("ComprehensionExpression").bases("Expression").build("body","blocks","filter").field("body",e("Expression")).field("blocks",[e("ComprehensionBlock")]).field("filter",t(e("Expression"),null)),e("ComprehensionBlock").bases("Node").build("left","right","each").field("left",e("Pattern")).field("right",e("Expression")).field("each",Boolean),e("Property").field("key",t(e("Literal"),e("Identifier"),e("Expression"))).field("value",t(e("Expression"),e("Pattern"))).field("method",Boolean,s.false).field("shorthand",Boolean,s.false).field("computed",Boolean,s.false),e("ObjectProperty").field("shorthand",Boolean,s.false),e("PropertyPattern").bases("Pattern").build("key","pattern").field("key",t(e("Literal"),e("Identifier"),e("Expression"))).field("pattern",e("Pattern")).field("computed",Boolean,s.false),e("ObjectPattern").bases("Pattern").build("properties").field("properties",[t(e("PropertyPattern"),e("Property"))]),e("ArrayPattern").bases("Pattern").build("elements").field("elements",[t(e("Pattern"),null)]),e("SpreadElement").bases("Node").build("argument").field("argument",e("Expression")),e("ArrayExpression").field("elements",[t(e("Expression"),e("SpreadElement"),e("RestElement"),null)]),e("NewExpression").field("arguments",[t(e("Expression"),e("SpreadElement"))]),e("CallExpression").field("arguments",[t(e("Expression"),e("SpreadElement"))]),e("AssignmentPattern").bases("Pattern").build("left","right").field("left",e("Pattern")).field("right",e("Expression")),e("MethodDefinition").bases("Declaration").build("kind","key","value","static").field("kind",t("constructor","method","get","set")).field("key",e("Expression")).field("value",e("Function")).field("computed",Boolean,s.false).field("static",Boolean,s.false);let i=t(e("MethodDefinition"),e("VariableDeclarator"),e("ClassPropertyDefinition"),e("ClassProperty"),e("StaticBlock"));e("ClassProperty").bases("Declaration").build("key").field("key",t(e("Literal"),e("Identifier"),e("Expression"))).field("computed",Boolean,s.false),e("ClassPropertyDefinition").bases("Declaration").build("definition").field("definition",i),e("ClassBody").bases("Declaration").build("body").field("body",[i]),e("ClassDeclaration").bases("Declaration").build("id","body","superClass").field("id",t(e("Identifier"),null)).field("body",e("ClassBody")).field("superClass",t(e("Expression"),null),s.null),e("ClassExpression").bases("Expression").build("id","body","superClass").field("id",t(e("Identifier"),null),s.null).field("body",e("ClassBody")).field("superClass",t(e("Expression"),null),s.null),e("Super").bases("Expression").build(),e("Specifier").bases("Node"),e("ModuleSpecifier").bases("Specifier").field("local",t(e("Identifier"),null),s.null).field("id",t(e("Identifier"),null),s.null).field("name",t(e("Identifier"),null),s.null),e("ImportSpecifier").bases("ModuleSpecifier").build("imported","local").field("imported",e("Identifier")),e("ImportDefaultSpecifier").bases("ModuleSpecifier").build("local"),e("ImportNamespaceSpecifier").bases("ModuleSpecifier").build("local"),e("ImportDeclaration").bases("Declaration").build("specifiers","source","importKind").field("specifiers",[t(e("ImportSpecifier"),e("ImportNamespaceSpecifier"),e("ImportDefaultSpecifier"))],s.emptyArray).field("source",e("Literal")).field("importKind",t("value","type"),function(){return"value"}),e("ExportNamedDeclaration").bases("Declaration").build("declaration","specifiers","source").field("declaration",t(e("Declaration"),null)).field("specifiers",[e("ExportSpecifier")],s.emptyArray).field("source",t(e("Literal"),null),s.null),e("ExportSpecifier").bases("ModuleSpecifier").build("local","exported").field("exported",e("Identifier")),e("ExportDefaultDeclaration").bases("Declaration").build("declaration").field("declaration",t(e("Declaration"),e("Expression"))),e("ExportAllDeclaration").bases("Declaration").build("source").field("source",e("Literal")),e("TaggedTemplateExpression").bases("Expression").build("tag","quasi").field("tag",e("Expression")).field("quasi",e("TemplateLiteral")),e("TemplateLiteral").bases("Expression").build("quasis","expressions").field("quasis",[e("TemplateElement")]).field("expressions",[e("Expression")]),e("TemplateElement").bases("Node").build("value","tail").field("value",{cooked:String,raw:String}).field("tail",Boolean),e("MetaProperty").bases("Expression").build("meta","property").field("meta",e("Identifier")).field("property",e("Identifier"))}z(()=>module);function Ql(r){r.use(zi),r.use(Xl)}z(()=>module);function Yl(r){r.use(Ql);let e=r.use(J).Type.def,t=r.use(ue).defaults;e("Function").field("async",Boolean,t.false),e("AwaitExpression").bases("Expression").build("argument").field("argument",e("Expression"))}z(()=>module);function Zl(r){r.use(Yl);let n=r.use(J),e=n.Type.def,t=n.Type.or,s=r.use(ue).defaults;e("ForOfStatement").field("await",Boolean,s.false),e("SpreadProperty").bases("Node").build("argument").field("argument",e("Expression")),e("ObjectExpression").field("properties",[t(e("Property"),e("SpreadProperty"),e("SpreadElement"))]),e("TemplateElement").field("value",{cooked:t(String,null),raw:String}),e("SpreadPropertyPattern").bases("Pattern").build("argument").field("argument",e("Pattern")),e("ObjectPattern").field("properties",[t(e("PropertyPattern"),e("Property"),e("RestElement"),e("SpreadPropertyPattern"))])}z(()=>module);function ec(r){r.use(Zl);let n=r.use(J),e=n.Type.def,t=n.Type.or,s=r.use(ue).defaults;e("CatchClause").field("param",t(e("Pattern"),null),s.null)}z(()=>module);function tc(r){r.use($i),r.use(ec);let n=r.use(J),e=n.Type.def,t=n.Type.or,i=r.use(ue).defaults;e("ImportExpression").bases("Expression").build("source").field("source",e("Expression")),e("ExportAllDeclaration").bases("Declaration").build("source","exported").field("source",e("Literal")).field("exported",t(e("Identifier"),null,void 0),i.null),e("ChainElement").bases("Node").field("optional",Boolean,i.false),e("CallExpression").bases("Expression","ChainElement"),e("MemberExpression").bases("Expression","ChainElement"),e("ChainExpression").bases("Expression").build("expression").field("expression",e("ChainElement")),e("OptionalCallExpression").bases("CallExpression").build("callee","arguments","optional").field("optional",Boolean,i.true),e("OptionalMemberExpression").bases("MemberExpression").build("object","property","computed","optional").field("optional",Boolean,i.true)}z(()=>module);function nc(r){r.use(Kl),r.use(tc)}z(()=>module);function sc(r){r.use(nc);let e=r.use(J).Type.def;e("StaticBlock").bases("Declaration").build("body").field("body",[e("Statement")])}z(()=>module);function tn(r){r.use(sc);let n=r.use(J),e=n.Type,t=n.Type.def,s=e.or,a=r.use(ue).defaults;t("AwaitExpression").build("argument","all").field("argument",s(t("Expression"),null)).field("all",Boolean,a.false),t("Decorator").bases("Node").build("expression").field("expression",t("Expression")),t("Property").field("decorators",s([t("Decorator")],null),a.null),t("MethodDefinition").field("decorators",s([t("Decorator")],null),a.null),t("PrivateName").bases("Expression","Pattern").build("id").field("id",t("Identifier")),t("ClassPrivateProperty").bases("ClassProperty").build("key","value").field("key",t("PrivateName")).field("value",s(t("Expression"),null),a.null),t("ImportAttribute").bases("Node").build("key","value").field("key",s(t("Identifier"),t("Literal"))).field("value",t("Expression")),["ImportDeclaration","ExportAllDeclaration","ExportNamedDeclaration"].forEach(o=>{t(o).field("assertions",[t("ImportAttribute")],a.emptyArray)}),t("RecordExpression").bases("Expression").build("properties").field("properties",[s(t("ObjectProperty"),t("ObjectMethod"),t("SpreadElement"))]),t("TupleExpression").bases("Expression").build("elements").field("elements",[s(t("Expression"),t("SpreadElement"),null)]),t("ModuleExpression").bases("Node").build("body").field("body",t("Program"))}z(()=>module);function rc(r){r.use(tn);let n=r.use(J),e=n.Type.def,t=n.Type.or,s=r.use(ue).defaults;e("JSXAttribute").bases("Node").build("name","value").field("name",t(e("JSXIdentifier"),e("JSXNamespacedName"))).field("value",t(e("Literal"),e("JSXExpressionContainer"),e("JSXElement"),e("JSXFragment"),null),s.null),e("JSXIdentifier").bases("Identifier").build("name").field("name",String),e("JSXNamespacedName").bases("Node").build("namespace","name").field("namespace",e("JSXIdentifier")).field("name",e("JSXIdentifier")),e("JSXMemberExpression").bases("MemberExpression").build("object","property").field("object",t(e("JSXIdentifier"),e("JSXMemberExpression"))).field("property",e("JSXIdentifier")).field("computed",Boolean,s.false);let i=t(e("JSXIdentifier"),e("JSXNamespacedName"),e("JSXMemberExpression"));e("JSXSpreadAttribute").bases("Node").build("argument").field("argument",e("Expression"));let a=[t(e("JSXAttribute"),e("JSXSpreadAttribute"))];e("JSXExpressionContainer").bases("Expression").build("expression").field("expression",t(e("Expression"),e("JSXEmptyExpression")));let o=[t(e("JSXText"),e("JSXExpressionContainer"),e("JSXSpreadChild"),e("JSXElement"),e("JSXFragment"),e("Literal"))];e("JSXElement").bases("Expression").build("openingElement","closingElement","children").field("openingElement",e("JSXOpeningElement")).field("closingElement",t(e("JSXClosingElement"),null),s.null).field("children",o,s.emptyArray).field("name",i,function(){return this.openingElement.name},!0).field("selfClosing",Boolean,function(){return this.openingElement.selfClosing},!0).field("attributes",a,function(){return this.openingElement.attributes},!0),e("JSXOpeningElement").bases("Node").build("name","attributes","selfClosing").field("name",i).field("attributes",a,s.emptyArray).field("selfClosing",Boolean,s.false),e("JSXClosingElement").bases("Node").build("name").field("name",i),e("JSXFragment").bases("Expression").build("openingFragment","closingFragment","children").field("openingFragment",e("JSXOpeningFragment")).field("closingFragment",e("JSXClosingFragment")).field("children",o,s.emptyArray),e("JSXOpeningFragment").bases("Node").build(),e("JSXClosingFragment").bases("Node").build(),e("JSXText").bases("Literal").build("value","raw").field("value",String).field("raw",String,function(){return this.value}),e("JSXEmptyExpression").bases("Node").build(),e("JSXSpreadChild").bases("Node").build("expression").field("expression",e("Expression"))}z(()=>module);function qi(r){var n=r.use(J),e=n.Type.def,t=n.Type.or,s=r.use(ue).defaults,i=t(e("TypeAnnotation"),e("TSTypeAnnotation"),null),a=t(e("TypeParameterDeclaration"),e("TSTypeParameterDeclaration"),null);e("Identifier").field("typeAnnotation",i,s.null),e("ObjectPattern").field("typeAnnotation",i,s.null),e("Function").field("returnType",i,s.null).field("typeParameters",a,s.null),e("ClassProperty").build("key","value","typeAnnotation","static").field("value",t(e("Expression"),null)).field("static",Boolean,s.false).field("typeAnnotation",i,s.null),["ClassDeclaration","ClassExpression"].forEach(o=>{e(o).field("typeParameters",a,s.null).field("superTypeParameters",t(e("TypeParameterInstantiation"),e("TSTypeParameterInstantiation"),null),s.null).field("implements",t([e("ClassImplements")],[e("TSExpressionWithTypeArguments")]),s.emptyArray)})}z(()=>module);function Hi(r){r.use(tn),r.use(qi);let n=r.use(J),e=n.Type.def,t=n.Type.or,s=r.use(ue).defaults;e("Flow").bases("Node"),e("FlowType").bases("Flow"),e("AnyTypeAnnotation").bases("FlowType").build(),e("EmptyTypeAnnotation").bases("FlowType").build(),e("MixedTypeAnnotation").bases("FlowType").build(),e("VoidTypeAnnotation").bases("FlowType").build(),e("SymbolTypeAnnotation").bases("FlowType").build(),e("NumberTypeAnnotation").bases("FlowType").build(),e("BigIntTypeAnnotation").bases("FlowType").build(),e("NumberLiteralTypeAnnotation").bases("FlowType").build("value","raw").field("value",Number).field("raw",String),e("NumericLiteralTypeAnnotation").bases("FlowType").build("value","raw").field("value",Number).field("raw",String),e("BigIntLiteralTypeAnnotation").bases("FlowType").build("value","raw").field("value",null).field("raw",String),e("StringTypeAnnotation").bases("FlowType").build(),e("StringLiteralTypeAnnotation").bases("FlowType").build("value","raw").field("value",String).field("raw",String),e("BooleanTypeAnnotation").bases("FlowType").build(),e("BooleanLiteralTypeAnnotation").bases("FlowType").build("value","raw").field("value",Boolean).field("raw",String),e("TypeAnnotation").bases("Node").build("typeAnnotation").field("typeAnnotation",e("FlowType")),e("NullableTypeAnnotation").bases("FlowType").build("typeAnnotation").field("typeAnnotation",e("FlowType")),e("NullLiteralTypeAnnotation").bases("FlowType").build(),e("NullTypeAnnotation").bases("FlowType").build(),e("ThisTypeAnnotation").bases("FlowType").build(),e("ExistsTypeAnnotation").bases("FlowType").build(),e("ExistentialTypeParam").bases("FlowType").build(),e("FunctionTypeAnnotation").bases("FlowType").build("params","returnType","rest","typeParameters").field("params",[e("FunctionTypeParam")]).field("returnType",e("FlowType")).field("rest",t(e("FunctionTypeParam"),null)).field("typeParameters",t(e("TypeParameterDeclaration"),null)),e("FunctionTypeParam").bases("Node").build("name","typeAnnotation","optional").field("name",t(e("Identifier"),null)).field("typeAnnotation",e("FlowType")).field("optional",Boolean),e("ArrayTypeAnnotation").bases("FlowType").build("elementType").field("elementType",e("FlowType")),e("ObjectTypeAnnotation").bases("FlowType").build("properties","indexers","callProperties").field("properties",[t(e("ObjectTypeProperty"),e("ObjectTypeSpreadProperty"))]).field("indexers",[e("ObjectTypeIndexer")],s.emptyArray).field("callProperties",[e("ObjectTypeCallProperty")],s.emptyArray).field("inexact",t(Boolean,void 0),s.undefined).field("exact",Boolean,s.false).field("internalSlots",[e("ObjectTypeInternalSlot")],s.emptyArray),e("Variance").bases("Node").build("kind").field("kind",t("plus","minus"));let i=t(e("Variance"),"plus","minus",null);e("ObjectTypeProperty").bases("Node").build("key","value","optional").field("key",t(e("Literal"),e("Identifier"))).field("value",e("FlowType")).field("optional",Boolean).field("variance",i,s.null),e("ObjectTypeIndexer").bases("Node").build("id","key","value").field("id",e("Identifier")).field("key",e("FlowType")).field("value",e("FlowType")).field("variance",i,s.null).field("static",Boolean,s.false),e("ObjectTypeCallProperty").bases("Node").build("value").field("value",e("FunctionTypeAnnotation")).field("static",Boolean,s.false),e("QualifiedTypeIdentifier").bases("Node").build("qualification","id").field("qualification",t(e("Identifier"),e("QualifiedTypeIdentifier"))).field("id",e("Identifier")),e("GenericTypeAnnotation").bases("FlowType").build("id","typeParameters").field("id",t(e("Identifier"),e("QualifiedTypeIdentifier"))).field("typeParameters",t(e("TypeParameterInstantiation"),null)),e("MemberTypeAnnotation").bases("FlowType").build("object","property").field("object",e("Identifier")).field("property",t(e("MemberTypeAnnotation"),e("GenericTypeAnnotation"))),e("IndexedAccessType").bases("FlowType").build("objectType","indexType").field("objectType",e("FlowType")).field("indexType",e("FlowType")),e("OptionalIndexedAccessType").bases("FlowType").build("objectType","indexType","optional").field("objectType",e("FlowType")).field("indexType",e("FlowType")).field("optional",Boolean),e("UnionTypeAnnotation").bases("FlowType").build("types").field("types",[e("FlowType")]),e("IntersectionTypeAnnotation").bases("FlowType").build("types").field("types",[e("FlowType")]),e("TypeofTypeAnnotation").bases("FlowType").build("argument").field("argument",e("FlowType")),e("ObjectTypeSpreadProperty").bases("Node").build("argument").field("argument",e("FlowType")),e("ObjectTypeInternalSlot").bases("Node").build("id","value","optional","static","method").field("id",e("Identifier")).field("value",e("FlowType")).field("optional",Boolean).field("static",Boolean).field("method",Boolean),e("TypeParameterDeclaration").bases("Node").build("params").field("params",[e("TypeParameter")]),e("TypeParameterInstantiation").bases("Node").build("params").field("params",[e("FlowType")]),e("TypeParameter").bases("FlowType").build("name","variance","bound","default").field("name",String).field("variance",i,s.null).field("bound",t(e("TypeAnnotation"),null),s.null).field("default",t(e("FlowType"),null),s.null),e("ClassProperty").field("variance",i,s.null),e("ClassImplements").bases("Node").build("id").field("id",e("Identifier")).field("superClass",t(e("Expression"),null),s.null).field("typeParameters",t(e("TypeParameterInstantiation"),null),s.null),e("InterfaceTypeAnnotation").bases("FlowType").build("body","extends").field("body",e("ObjectTypeAnnotation")).field("extends",t([e("InterfaceExtends")],null),s.null),e("InterfaceDeclaration").bases("Declaration").build("id","body","extends").field("id",e("Identifier")).field("typeParameters",t(e("TypeParameterDeclaration"),null),s.null).field("body",e("ObjectTypeAnnotation")).field("extends",[e("InterfaceExtends")]),e("DeclareInterface").bases("InterfaceDeclaration").build("id","body","extends"),e("InterfaceExtends").bases("Node").build("id").field("id",e("Identifier")).field("typeParameters",t(e("TypeParameterInstantiation"),null),s.null),e("TypeAlias").bases("Declaration").build("id","typeParameters","right").field("id",e("Identifier")).field("typeParameters",t(e("TypeParameterDeclaration"),null)).field("right",e("FlowType")),e("DeclareTypeAlias").bases("TypeAlias").build("id","typeParameters","right"),e("OpaqueType").bases("Declaration").build("id","typeParameters","impltype","supertype").field("id",e("Identifier")).field("typeParameters",t(e("TypeParameterDeclaration"),null)).field("impltype",e("FlowType")).field("supertype",t(e("FlowType"),null)),e("DeclareOpaqueType").bases("OpaqueType").build("id","typeParameters","supertype").field("impltype",t(e("FlowType"),null)),e("TypeCastExpression").bases("Expression").build("expression","typeAnnotation").field("expression",e("Expression")).field("typeAnnotation",e("TypeAnnotation")),e("TupleTypeAnnotation").bases("FlowType").build("types").field("types",[e("FlowType")]),e("DeclareVariable").bases("Statement").build("id").field("id",e("Identifier")),e("DeclareFunction").bases("Statement").build("id").field("id",e("Identifier")).field("predicate",t(e("FlowPredicate"),null),s.null),e("DeclareClass").bases("InterfaceDeclaration").build("id"),e("DeclareModule").bases("Statement").build("id","body").field("id",t(e("Identifier"),e("Literal"))).field("body",e("BlockStatement")),e("DeclareModuleExports").bases("Statement").build("typeAnnotation").field("typeAnnotation",e("TypeAnnotation")),e("DeclareExportDeclaration").bases("Declaration").build("default","declaration","specifiers","source").field("default",Boolean).field("declaration",t(e("DeclareVariable"),e("DeclareFunction"),e("DeclareClass"),e("FlowType"),e("TypeAlias"),e("DeclareOpaqueType"),e("InterfaceDeclaration"),null)).field("specifiers",[t(e("ExportSpecifier"),e("ExportBatchSpecifier"))],s.emptyArray).field("source",t(e("Literal"),null),s.null),e("DeclareExportAllDeclaration").bases("Declaration").build("source").field("source",t(e("Literal"),null),s.null),e("ImportDeclaration").field("importKind",t("value","type","typeof"),()=>"value"),e("FlowPredicate").bases("Flow"),e("InferredPredicate").bases("FlowPredicate").build(),e("DeclaredPredicate").bases("FlowPredicate").build("value").field("value",e("Expression")),e("Function").field("predicate",t(e("FlowPredicate"),null),s.null),e("CallExpression").field("typeArguments",t(null,e("TypeParameterInstantiation")),s.null),e("NewExpression").field("typeArguments",t(null,e("TypeParameterInstantiation")),s.null),e("EnumDeclaration").bases("Declaration").build("id","body").field("id",e("Identifier")).field("body",t(e("EnumBooleanBody"),e("EnumNumberBody"),e("EnumStringBody"),e("EnumSymbolBody"))),e("EnumBooleanBody").build("members","explicitType").field("members",[e("EnumBooleanMember")]).field("explicitType",Boolean),e("EnumNumberBody").build("members","explicitType").field("members",[e("EnumNumberMember")]).field("explicitType",Boolean),e("EnumStringBody").build("members","explicitType").field("members",t([e("EnumStringMember")],[e("EnumDefaultedMember")])).field("explicitType",Boolean),e("EnumSymbolBody").build("members").field("members",[e("EnumDefaultedMember")]),e("EnumBooleanMember").build("id","init").field("id",e("Identifier")).field("init",t(e("Literal"),Boolean)),e("EnumNumberMember").build("id","init").field("id",e("Identifier")).field("init",e("Literal")),e("EnumStringMember").build("id","init").field("id",e("Identifier")).field("init",e("Literal")),e("EnumDefaultedMember").build("id").field("id",e("Identifier"))}z(()=>module);function ic(r){r.use(tn);var n=r.use(J),e=r.use(ue).defaults,t=n.Type.def,s=n.Type.or;t("VariableDeclaration").field("declarations",[s(t("VariableDeclarator"),t("Identifier"))]),t("Property").field("value",s(t("Expression"),t("Pattern"))),t("ArrayPattern").field("elements",[s(t("Pattern"),t("SpreadElement"),null)]),t("ObjectPattern").field("properties",[s(t("Property"),t("PropertyPattern"),t("SpreadPropertyPattern"),t("SpreadProperty"))]),t("ExportSpecifier").bases("ModuleSpecifier").build("id","name"),t("ExportBatchSpecifier").bases("Specifier").build(),t("ExportDeclaration").bases("Declaration").build("default","declaration","specifiers","source").field("default",Boolean).field("declaration",s(t("Declaration"),t("Expression"),null)).field("specifiers",[s(t("ExportSpecifier"),t("ExportBatchSpecifier"))],e.emptyArray).field("source",s(t("Literal"),null),e.null),t("Block").bases("Comment").build("value","leading","trailing"),t("Line").bases("Comment").build("value","leading","trailing")}z(()=>module);function Wi(r){r.use(tn);let n=r.use(J),e=r.use(ue).defaults,t=n.Type.def,s=n.Type.or,{undefined:i}=n.builtInTypes;t("Noop").bases("Statement").build(),t("DoExpression").bases("Expression").build("body").field("body",[t("Statement")]),t("BindExpression").bases("Expression").build("object","callee").field("object",s(t("Expression"),null)).field("callee",t("Expression")),t("ParenthesizedExpression").bases("Expression").build("expression").field("expression",t("Expression")),t("ExportNamespaceSpecifier").bases("Specifier").build("exported").field("exported",t("Identifier")),t("ExportDefaultSpecifier").bases("Specifier").build("exported").field("exported",t("Identifier")),t("CommentBlock").bases("Comment").build("value","leading","trailing"),t("CommentLine").bases("Comment").build("value","leading","trailing"),t("Directive").bases("Node").build("value").field("value",t("DirectiveLiteral")),t("DirectiveLiteral").bases("Node","Expression").build("value").field("value",String,e["use strict"]),t("InterpreterDirective").bases("Node").build("value").field("value",String),t("BlockStatement").bases("Statement").build("body").field("body",[t("Statement")]).field("directives",[t("Directive")],e.emptyArray),t("Program").bases("Node").build("body").field("body",[t("Statement")]).field("directives",[t("Directive")],e.emptyArray).field("interpreter",s(t("InterpreterDirective"),null),e.null);function a(p=String,u){return["extra",{rawValue:p,raw:String},function(){let m=n.getFieldValue(this,"value");return{rawValue:m,raw:u?u(m):String(m)}}]}t("StringLiteral").bases("Literal").build("value").field("value",String).field(...a(String,p=>JSON.stringify(p))),t("NumericLiteral").bases("Literal").build("value").field("value",Number).field("raw",s(String,null),e.null).field(...a(Number)),t("BigIntLiteral").bases("Literal").build("value").field("value",s(String,Number)).field(...a(String,p=>p+"n")),t("DecimalLiteral").bases("Literal").build("value").field("value",String).field(...a(String,p=>p+"m")),t("NullLiteral").bases("Literal").build().field("value",null,e.null),t("BooleanLiteral").bases("Literal").build("value").field("value",Boolean),t("RegExpLiteral").bases("Literal").build("pattern","flags").field("pattern",String).field("flags",String).field("value",RegExp,function(){return new RegExp(this.pattern,this.flags)}).field(...a(s(RegExp,i),p=>`/${p.pattern}/${p.flags||""}`)).field("regex",{pattern:String,flags:String},function(){return{pattern:this.pattern,flags:this.flags}});var o=s(t("Property"),t("ObjectMethod"),t("ObjectProperty"),t("SpreadProperty"),t("SpreadElement"));t("ObjectExpression").bases("Expression").build("properties").field("properties",[o]),t("ObjectMethod").bases("Node","Function").build("kind","key","params","body","computed").field("kind",s("method","get","set")).field("key",s(t("Literal"),t("Identifier"),t("Expression"))).field("params",[t("Pattern")]).field("body",t("BlockStatement")).field("computed",Boolean,e.false).field("generator",Boolean,e.false).field("async",Boolean,e.false).field("accessibility",s(t("Literal"),null),e.null).field("decorators",s([t("Decorator")],null),e.null),t("ObjectProperty").bases("Node").build("key","value").field("key",s(t("Literal"),t("Identifier"),t("Expression"))).field("value",s(t("Expression"),t("Pattern"))).field("accessibility",s(t("Literal"),null),e.null).field("computed",Boolean,e.false);var l=s(t("MethodDefinition"),t("VariableDeclarator"),t("ClassPropertyDefinition"),t("ClassProperty"),t("ClassPrivateProperty"),t("ClassMethod"),t("ClassPrivateMethod"),t("ClassAccessorProperty"),t("StaticBlock"));t("ClassBody").bases("Declaration").build("body").field("body",[l]),t("ClassMethod").bases("Declaration","Function").build("kind","key","params","body","computed","static").field("key",s(t("Literal"),t("Identifier"),t("Expression"))),t("ClassPrivateMethod").bases("Declaration","Function").build("key","params","body","kind","computed","static").field("key",t("PrivateName")),t("ClassAccessorProperty").bases("Declaration").build("key","value","decorators","computed","static").field("key",s(t("Literal"),t("Identifier"),t("PrivateName"),t("Expression"))).field("value",s(t("Expression"),null),e.null),["ClassMethod","ClassPrivateMethod"].forEach(p=>{t(p).field("kind",s("get","set","method","constructor"),()=>"method").field("body",t("BlockStatement")).field("access",s("public","private","protected",null),e.null)}),["ClassMethod","ClassPrivateMethod","ClassAccessorProperty"].forEach(p=>{t(p).field("computed",Boolean,e.false).field("static",Boolean,e.false).field("abstract",Boolean,e.false).field("accessibility",s("public","private","protected",null),e.null).field("decorators",s([t("Decorator")],null),e.null).field("definite",Boolean,e.false).field("optional",Boolean,e.false).field("override",Boolean,e.false).field("readonly",Boolean,e.false)});var c=s(t("Property"),t("PropertyPattern"),t("SpreadPropertyPattern"),t("SpreadProperty"),t("ObjectProperty"),t("RestProperty"),t("RestElement"));t("ObjectPattern").bases("Pattern").build("properties").field("properties",[c]).field("decorators",s([t("Decorator")],null),e.null),t("SpreadProperty").bases("Node").build("argument").field("argument",t("Expression")),t("RestProperty").bases("Node").build("argument").field("argument",t("Expression")),t("ForAwaitStatement").bases("Statement").build("left","right","body").field("left",s(t("VariableDeclaration"),t("Expression"))).field("right",t("Expression")).field("body",t("Statement")),t("Import").bases("Expression").build()}z(()=>module);function ac(r){let e=r.use(J).Type.def;r.use(Wi),r.use(Hi),e("V8IntrinsicIdentifier").bases("Expression").build("name").field("name",String),e("TopicReference").bases("Expression").build()}z(()=>module);function oc(r){r.use(Wi),r.use(qi);var n=r.use(J),e=n.namedTypes,t=n.Type.def,s=n.Type.or,i=r.use(ue).defaults,a=n.Type.from(function(p,u){return!!(e.StringLiteral&&e.StringLiteral.check(p,u)||e.Literal&&e.Literal.check(p,u)&&typeof p.value=="string")},"StringLiteral");t("TSType").bases("Node");var o=s(t("Identifier"),t("TSQualifiedName"));t("TSTypeReference").bases("TSType","TSHasOptionalTypeParameterInstantiation").build("typeName","typeParameters").field("typeName",o),t("TSHasOptionalTypeParameterInstantiation").field("typeParameters",s(t("TSTypeParameterInstantiation"),null),i.null),t("TSHasOptionalTypeParameters").field("typeParameters",s(t("TSTypeParameterDeclaration"),null,void 0),i.null),t("TSHasOptionalTypeAnnotation").field("typeAnnotation",s(t("TSTypeAnnotation"),null),i.null),t("TSQualifiedName").bases("Node").build("left","right").field("left",o).field("right",o),t("TSAsExpression").bases("Expression","Pattern").build("expression","typeAnnotation").field("expression",t("Expression")).field("typeAnnotation",t("TSType")).field("extra",s({parenthesized:Boolean},null),i.null),t("TSTypeCastExpression").bases("Expression").build("expression","typeAnnotation").field("expression",t("Expression")).field("typeAnnotation",t("TSType")),t("TSSatisfiesExpression").bases("Expression","Pattern").build("expression","typeAnnotation").field("expression",t("Expression")).field("typeAnnotation",t("TSType")),t("TSNonNullExpression").bases("Expression","Pattern").build("expression").field("expression",t("Expression")),["TSAnyKeyword","TSBigIntKeyword","TSBooleanKeyword","TSNeverKeyword","TSNullKeyword","TSNumberKeyword","TSObjectKeyword","TSStringKeyword","TSSymbolKeyword","TSUndefinedKeyword","TSUnknownKeyword","TSVoidKeyword","TSIntrinsicKeyword","TSThisType"].forEach(p=>{t(p).bases("TSType").build()}),t("TSArrayType").bases("TSType").build("elementType").field("elementType",t("TSType")),t("TSLiteralType").bases("TSType").build("literal").field("literal",s(t("NumericLiteral"),t("StringLiteral"),t("BooleanLiteral"),t("TemplateLiteral"),t("UnaryExpression"),t("BigIntLiteral"))),t("TemplateLiteral").field("expressions",s([t("Expression")],[t("TSType")])),["TSUnionType","TSIntersectionType"].forEach(p=>{t(p).bases("TSType").build("types").field("types",[t("TSType")])}),t("TSConditionalType").bases("TSType").build("checkType","extendsType","trueType","falseType").field("checkType",t("TSType")).field("extendsType",t("TSType")).field("trueType",t("TSType")).field("falseType",t("TSType")),t("TSInferType").bases("TSType").build("typeParameter").field("typeParameter",t("TSTypeParameter")),t("TSParenthesizedType").bases("TSType").build("typeAnnotation").field("typeAnnotation",t("TSType"));var l=[s(t("Identifier"),t("RestElement"),t("ArrayPattern"),t("ObjectPattern"))];["TSFunctionType","TSConstructorType"].forEach(p=>{t(p).bases("TSType","TSHasOptionalTypeParameters","TSHasOptionalTypeAnnotation").build("parameters").field("parameters",l)}),t("TSDeclareFunction").bases("Declaration","TSHasOptionalTypeParameters").build("id","params","returnType").field("declare",Boolean,i.false).field("async",Boolean,i.false).field("generator",Boolean,i.false).field("id",s(t("Identifier"),null),i.null).field("params",[t("Pattern")]).field("returnType",s(t("TSTypeAnnotation"),t("Noop"),null),i.null),t("TSDeclareMethod").bases("Declaration","TSHasOptionalTypeParameters").build("key","params","returnType").field("async",Boolean,i.false).field("generator",Boolean,i.false).field("params",[t("Pattern")]).field("abstract",Boolean,i.false).field("accessibility",s("public","private","protected",void 0),i.undefined).field("static",Boolean,i.false).field("computed",Boolean,i.false).field("optional",Boolean,i.false).field("key",s(t("Identifier"),t("StringLiteral"),t("NumericLiteral"),t("Expression"))).field("kind",s("get","set","method","constructor"),function(){return"method"}).field("access",s("public","private","protected",void 0),i.undefined).field("decorators",s([t("Decorator")],null),i.null).field("returnType",s(t("TSTypeAnnotation"),t("Noop"),null),i.null),t("TSMappedType").bases("TSType").build("typeParameter","typeAnnotation").field("readonly",s(Boolean,"+","-"),i.false).field("typeParameter",t("TSTypeParameter")).field("optional",s(Boolean,"+","-"),i.false).field("typeAnnotation",s(t("TSType"),null),i.null),t("TSTupleType").bases("TSType").build("elementTypes").field("elementTypes",[s(t("TSType"),t("TSNamedTupleMember"))]),t("TSNamedTupleMember").bases("TSType").build("label","elementType","optional").field("label",t("Identifier")).field("optional",Boolean,i.false).field("elementType",t("TSType")),t("TSRestType").bases("TSType").build("typeAnnotation").field("typeAnnotation",t("TSType")),t("TSOptionalType").bases("TSType").build("typeAnnotation").field("typeAnnotation",t("TSType")),t("TSIndexedAccessType").bases("TSType").build("objectType","indexType").field("objectType",t("TSType")).field("indexType",t("TSType")),t("TSTypeOperator").bases("TSType").build("operator").field("operator",String).field("typeAnnotation",t("TSType")),t("TSTypeAnnotation").bases("Node").build("typeAnnotation").field("typeAnnotation",s(t("TSType"),t("TSTypeAnnotation"))),t("TSIndexSignature").bases("Declaration","TSHasOptionalTypeAnnotation").build("parameters","typeAnnotation").field("parameters",[t("Identifier")]).field("readonly",Boolean,i.false),t("TSPropertySignature").bases("Declaration","TSHasOptionalTypeAnnotation").build("key","typeAnnotation","optional").field("key",t("Expression")).field("computed",Boolean,i.false).field("readonly",Boolean,i.false).field("optional",Boolean,i.false).field("initializer",s(t("Expression"),null),i.null),t("TSMethodSignature").bases("Declaration","TSHasOptionalTypeParameters","TSHasOptionalTypeAnnotation").build("key","parameters","typeAnnotation").field("key",t("Expression")).field("computed",Boolean,i.false).field("optional",Boolean,i.false).field("parameters",l),t("TSTypePredicate").bases("TSTypeAnnotation","TSType").build("parameterName","typeAnnotation","asserts").field("parameterName",s(t("Identifier"),t("TSThisType"))).field("typeAnnotation",s(t("TSTypeAnnotation"),null),i.null).field("asserts",Boolean,i.false),["TSCallSignatureDeclaration","TSConstructSignatureDeclaration"].forEach(p=>{t(p).bases("Declaration","TSHasOptionalTypeParameters","TSHasOptionalTypeAnnotation").build("parameters","typeAnnotation").field("parameters",l)}),t("TSEnumMember").bases("Node").build("id","initializer").field("id",s(t("Identifier"),a)).field("initializer",s(t("Expression"),null),i.null),t("TSTypeQuery").bases("TSType").build("exprName").field("exprName",s(o,t("TSImportType")));var c=s(t("TSCallSignatureDeclaration"),t("TSConstructSignatureDeclaration"),t("TSIndexSignature"),t("TSMethodSignature"),t("TSPropertySignature"));t("TSTypeLiteral").bases("TSType").build("members").field("members",[c]),t("TSTypeParameter").bases("Identifier").build("name","constraint","default").field("name",s(t("Identifier"),String)).field("constraint",s(t("TSType"),void 0),i.undefined).field("default",s(t("TSType"),void 0),i.undefined),t("TSTypeAssertion").bases("Expression","Pattern").build("typeAnnotation","expression").field("typeAnnotation",t("TSType")).field("expression",t("Expression")).field("extra",s({parenthesized:Boolean},null),i.null),t("TSTypeParameterDeclaration").bases("Declaration").build("params").field("params",[t("TSTypeParameter")]),t("TSInstantiationExpression").bases("Expression","TSHasOptionalTypeParameterInstantiation").build("expression","typeParameters").field("expression",t("Expression")),t("TSTypeParameterInstantiation").bases("Node").build("params").field("params",[t("TSType")]),t("TSEnumDeclaration").bases("Declaration").build("id","members").field("id",t("Identifier")).field("const",Boolean,i.false).field("declare",Boolean,i.false).field("members",[t("TSEnumMember")]).field("initializer",s(t("Expression"),null),i.null),t("TSTypeAliasDeclaration").bases("Declaration","TSHasOptionalTypeParameters").build("id","typeAnnotation").field("id",t("Identifier")).field("declare",Boolean,i.false).field("typeAnnotation",t("TSType")),t("TSModuleBlock").bases("Node").build("body").field("body",[t("Statement")]),t("TSModuleDeclaration").bases("Declaration").build("id","body").field("id",s(a,o)).field("declare",Boolean,i.false).field("global",Boolean,i.false).field("body",s(t("TSModuleBlock"),t("TSModuleDeclaration"),null),i.null),t("TSImportType").bases("TSType","TSHasOptionalTypeParameterInstantiation").build("argument","qualifier","typeParameters").field("argument",a).field("qualifier",s(o,void 0),i.undefined),t("TSImportEqualsDeclaration").bases("Declaration").build("id","moduleReference").field("id",t("Identifier")).field("isExport",Boolean,i.false).field("moduleReference",s(o,t("TSExternalModuleReference"))),t("TSExternalModuleReference").bases("Declaration").build("expression").field("expression",a),t("TSExportAssignment").bases("Statement").build("expression").field("expression",t("Expression")),t("TSNamespaceExportDeclaration").bases("Declaration").build("id").field("id",t("Identifier")),t("TSInterfaceBody").bases("Node").build("body").field("body",[c]),t("TSExpressionWithTypeArguments").bases("TSType","TSHasOptionalTypeParameterInstantiation").build("expression","typeParameters").field("expression",o),t("TSInterfaceDeclaration").bases("Declaration","TSHasOptionalTypeParameters").build("id","body").field("id",o).field("declare",Boolean,i.false).field("extends",s([t("TSExpressionWithTypeArguments")],null),i.null).field("body",t("TSInterfaceBody")),t("TSParameterProperty").bases("Pattern").build("parameter").field("accessibility",s("public","private","protected",void 0),i.undefined).field("readonly",Boolean,i.false).field("parameter",s(t("Identifier"),t("AssignmentPattern"))),t("ClassProperty").field("access",s("public","private","protected",void 0),i.undefined),t("ClassAccessorProperty").bases("Declaration","TSHasOptionalTypeAnnotation"),t("ClassBody").field("body",[s(t("MethodDefinition"),t("VariableDeclarator"),t("ClassPropertyDefinition"),t("ClassProperty"),t("ClassPrivateProperty"),t("ClassAccessorProperty"),t("ClassMethod"),t("ClassPrivateMethod"),t("StaticBlock"),t("TSDeclareMethod"),c)])}z(()=>module);var we;we||(we={});var{astNodesAreEquivalent:Uu,builders:nn,builtInTypes:Ce,defineMethod:_u,eachField:Ru,finalize:Bu,getBuilderName:ju,getFieldNames:lc,getFieldValue:je,getSupertypeNames:Vu,namedTypes:cc,NodePath:pc,Path:zu,PathVisitor:$u,someField:uc,Type:qu,use:Hu,visit:Wu}=Wl([tn,rc,Hi,ic,ac,oc]);Object.assign(we,cc);var Cn=we,wi=_n.default.SourceMapConsumer,dc=_n.default.SourceMapGenerator,Gi=Object.prototype.hasOwnProperty;function hc(){return`
9606
- `}function Ci(r,n,e){return r&&Gi.call(r,n)?r[n]:e}function fc(...r){let n={},e=r.length;for(let t=0;t<e;++t){let s=Object.keys(r[t]),i=s.length;for(let a=0;a<i;++a)n[s[a]]=!0}return n}function j(r,n){return r.line-n.line||r.column-n.column}function Ge(r){return{line:r.line,column:r.column}}function mc(r,n){if(r){if(!n)return r}else return n||null;let e=new wi(r),t=new wi(n),s=new dc({file:n.file,sourceRoot:n.sourceRoot}),i={};return t.eachMapping(function(a){let o=e.originalPositionFor({line:a.originalLine,column:a.originalColumn}),l=o.source;if(l===null)return;s.addMapping({source:l,original:Ge(o),generated:{line:a.generatedLine,column:a.generatedColumn},name:a.name});let c=e.sourceContentFor(l);c&&!Gi.call(i,l)&&(i[l]=c,s.setSourceContent(l,c))}),s.toJSON()}function Ki(r,n){if(!r.loc)return null;let e={start:r.loc.start,end:r.loc.end};function t(s){Xs(e,s.loc)}return r.declaration&&r.declaration.decorators&&Rn(r)&&r.declaration.decorators.forEach(t),j(e.start,e.end)<0&&(e.start=Ge(e.start),n.skipSpaces(e.start,!1,!0),j(e.start,e.end)<0&&(e.end=Ge(e.end),n.skipSpaces(e.end,!0,!0))),r.comments&&r.comments.forEach(t),e}function Xs(r,n){r&&n&&(j(n.start,r.start)<0&&(r.start=n.start),j(r.end,n.end)<0&&(r.end=n.end))}function ar(r,n){let e=r.loc;if(e&&(e.start.line<1&&(e.start.line=1),e.end.line<1&&(e.end.line=1)),r.type==="File"&&(e.start=n.firstPos(),e.end=n.lastPos()),bc(r,n),gc(r,n),e&&r.decorators)r.decorators.forEach(function(t){Xs(e,t.loc)});else if(r.declaration&&Rn(r)){r.declaration.loc=null;let t=r.declaration.decorators;t&&t.forEach(function(s){Xs(e,s.loc)})}else if(Cn.MethodDefinition&&Cn.MethodDefinition.check(r)||Cn.Property.check(r)&&(r.method||r.shorthand))r.value.loc=null,Cn.FunctionExpression.check(r.value)&&(r.value.id=null);else if(r.type==="ObjectTypeProperty"){let t=r.loc,s=t&&t.end;s&&(s=Ge(s),n.prevPos(s)&&n.charAt(s)===","&&(s=n.skipSpaces(s,!0,!0))&&(t.end=s))}}function bc(r,n){if(r.type!=="ForStatement")return;function e(t){let s=t&&t.loc,i=s&&s.start,a=s&&Ge(s.end);for(;i&&a&&j(i,a)<0&&(n.prevPos(a),n.charAt(a)===";");)s.end.line=a.line,s.end.column=a.column}e(r.init),e(r.test),e(r.update)}function gc(r,n){if(r.type==="TemplateLiteral"&&r.quasis.length!==0){if(r.loc){let e=Ge(r.loc.start),t=r.quasis[0];j(t.loc.start,e)<0&&(t.loc.start=e);let s=Ge(r.loc.end),i=r.quasis[r.quasis.length-1];j(s,i.loc.end)<0&&(i.loc.end=s)}r.expressions.forEach(function(e,t){let s=n.skipSpaces(e.loc.start,!0,!1);if(n.prevPos(s)&&n.charAt(s)==="{"&&n.prevPos(s)&&n.charAt(s)==="$"){let a=r.quasis[t];j(s,a.loc.end)<0&&(a.loc.end=s)}let i=n.skipSpaces(e.loc.end,!1,!1);if(n.charAt(i)==="}"){let a=r.quasis[t+1];j(a.loc.start,i)<0&&(a.loc.start=i)}})}}function Rn(r){if(r)switch(r.type){case"ExportDeclaration":case"ExportDefaultDeclaration":case"ExportDefaultSpecifier":case"DeclareExportDeclaration":case"ExportNamedDeclaration":case"ExportAllDeclaration":return!0}return!1}function Ji(r){let n=r.getParentNode();return r.getName()==="declaration"&&Rn(n)?n:null}function Xt(r,n){let e=r.trailingComma;return typeof e=="object"?!!e[n]:!!e}var Qs={tabWidth:4,useTabs:!1,reuseWhitespace:!0,lineTerminator:hc(),wrapColumn:74,sourceFileName:null,sourceMapName:null,sourceRoot:null,inputSourceMap:null,range:!1,tolerant:!0,quote:null,trailingComma:!1,arrayBracketSpacing:!1,objectCurlySpacing:!0,arrowParensAlways:!1,flowObjectCommas:!0,tokens:!0},yc=Qs.hasOwnProperty;function Bn(r){let n=r||Qs;function e(t){return yc.call(n,t)?n[t]:Qs[t]}return{tabWidth:+e("tabWidth"),useTabs:!!e("useTabs"),reuseWhitespace:!!e("reuseWhitespace"),lineTerminator:e("lineTerminator"),wrapColumn:Math.max(e("wrapColumn"),0),sourceFileName:e("sourceFileName"),sourceMapName:e("sourceMapName"),sourceRoot:e("sourceRoot"),inputSourceMap:e("inputSourceMap"),parser:e("esprima")||e("parser"),range:e("range"),tolerant:e("tolerant"),quote:e("quote"),trailingComma:e("trailingComma"),arrayBracketSpacing:e("arrayBracketSpacing"),objectCurlySpacing:e("objectCurlySpacing"),arrowParensAlways:e("arrowParensAlways"),flowObjectCommas:e("flowObjectCommas"),tokens:!!e("tokens")}}var Ys=class r{constructor(n,e,t=e){this.sourceLines=n,this.sourceLoc=e,this.targetLoc=t}slice(n,e,t=n.lastPos()){let s=this.sourceLines,i=this.sourceLoc,a=this.targetLoc;function o(l){let c=i[l],p=a[l],u=e;return l==="end"&&(u=t),vc(s,c,n,p,u)}if(j(e,a.start)<=0)if(j(a.end,t)<=0)a={start:We(a.start,e.line,e.column),end:We(a.end,e.line,e.column)};else{if(j(t,a.start)<=0)return null;i={start:i.start,end:o("end")},a={start:We(a.start,e.line,e.column),end:We(t,e.line,e.column)}}else{if(j(a.end,e)<=0)return null;j(a.end,t)<=0?(i={start:o("start"),end:i.end},a={start:{line:1,column:0},end:We(a.end,e.line,e.column)}):(i={start:o("start"),end:o("end")},a={start:{line:1,column:0},end:We(t,e.line,e.column)})}return new r(this.sourceLines,i,a)}add(n,e){return new r(this.sourceLines,this.sourceLoc,{start:Si(this.targetLoc.start,n,e),end:Si(this.targetLoc.end,n,e)})}subtract(n,e){return new r(this.sourceLines,this.sourceLoc,{start:We(this.targetLoc.start,n,e),end:We(this.targetLoc.end,n,e)})}indent(n,e=!1,t=!1){if(n===0)return this;let s=this.targetLoc,i=s.start.line,a=s.end.line;if(e&&i===1&&a===1)return this;if(s={start:s.start,end:s.end},!e||i>1){let o=s.start.column+n;s.start={line:i,column:t?Math.max(0,o):o}}if(!e||a>1){let o=s.end.column+n;s.end={line:a,column:t?Math.max(0,o):o}}return new r(this.sourceLines,this.sourceLoc,s)}};function Si(r,n,e){return{line:r.line+n-1,column:r.line===1?r.column+e:r.column}}function We(r,n,e){return{line:r.line-n+1,column:r.line===n?r.column-e:r.column}}function vc(r,n,e,t,s){let i=j(t,s);if(i===0)return n;let a,o;if(i<0){a=r.skipSpaces(n)||r.lastPos(),o=e.skipSpaces(t)||e.lastPos();let l=s.line-o.line;for(a.line+=l,o.line+=l,l>0&&(a.column=0,o.column=0);j(o,s)<0&&e.nextPos(o,!0););}else{a=r.skipSpaces(n,!0)||r.firstPos(),o=e.skipSpaces(t,!0)||e.firstPos();let l=s.line-o.line;for(a.line+=l,o.line+=l,l<0&&(a.column=r.getLineLength(a.line),o.column=e.getLineLength(o.line));j(s,o)<0&&e.prevPos(o,!0););}return a}var xc=Object.defineProperty,Pc=(r,n,e)=>n in r?xc(r,n,{enumerable:!0,configurable:!0,writable:!0,value:e}):r[n]=e,$t=(r,n,e)=>(Pc(r,typeof n!="symbol"?n+"":n,e),e),xt=class r{constructor(n,e=null){this.infos=n,$t(this,"length"),$t(this,"name"),$t(this,"mappings",[]),$t(this,"cachedSourceMap",null),$t(this,"cachedTabWidth"),this.length=n.length,this.name=e||null,this.name&&this.mappings.push(new Ys(this,{start:this.firstPos(),end:this.lastPos()}))}toString(n){return this.sliceString(this.firstPos(),this.lastPos(),n)}getSourceMap(n,e){if(!n)return null;let t=this;function s(o){return o=o||{},o.file=n,e&&(o.sourceRoot=e),o}if(t.cachedSourceMap)return s(t.cachedSourceMap.toJSON());let i=new _n.default.SourceMapGenerator(s()),a={};return t.mappings.forEach(function(o){let l=o.sourceLines.skipSpaces(o.sourceLoc.start)||o.sourceLines.lastPos(),c=t.skipSpaces(o.targetLoc.start)||t.lastPos();for(;j(l,o.sourceLoc.end)<0&&j(c,o.targetLoc.end)<0;){o.sourceLines.charAt(l),t.charAt(c);let p=o.sourceLines.name;if(i.addMapping({source:p,original:{line:l.line,column:l.column},generated:{line:c.line,column:c.column}}),!Zs.call(a,p)){let u=o.sourceLines.toString();i.setSourceContent(p,u),a[p]=u}t.nextPos(c,!0),o.sourceLines.nextPos(l,!0)}}),t.cachedSourceMap=i,i.toJSON()}bootstrapCharAt(n){let e=n.line,t=n.column,s=this.toString().split(er),i=s[e-1];return typeof i>"u"?"":t===i.length&&e<s.length?`
9616
+ `}],utils:[],composables:[],plugins:[]}];import{join as xp}from"path";import{loadConfig as Pp}from"c12";import Se from"fs-extra";import Ta from"kleur";import Tp from"lodash";import{promises as Js}from"node:fs";var _n=an(cs(),1),_i=an(Hs(),1);function ue(r){var n=r.use(J),e=n.Type,t=n.builtInTypes,s=t.number;function i(c){return e.from(p=>s.check(p)&&p>=c,s+" >= "+c)}let a={null:function(){return null},emptyArray:function(){return[]},false:function(){return!1},true:function(){return!0},undefined:function(){},"use strict":function(){return"use strict"}};var o=e.or(t.string,t.number,t.boolean,t.null,t.undefined);let l=e.from(c=>{if(c===null)return!0;var p=typeof c;return!(p==="object"||p==="function")},o.toString());return{geq:i,defaults:a,isPrimitive:l}}function z(r){try{var n=r(),e=n.exports,t=e.default}catch{return}t&&t!==e&&typeof e=="object"&&(Object.assign(t,e,{default:t}),e.__esModule&&Object.defineProperty(t,"__esModule",{value:!0}),n.exports=t)}var jl=Object.defineProperty,Vl=(r,n,e)=>n in r?jl(r,n,{enumerable:!0,configurable:!0,writable:!0,value:e}):r[n]=e,ie=(r,n,e)=>(Vl(r,typeof n!="symbol"?n+"":n,e),e),Ri=Object.prototype,Nn=Ri.toString,ge=Ri.hasOwnProperty,tt=class{assert(n,e){if(!this.check(n,e)){var t=ir(n);throw new Error(t+" does not match type "+this)}return!0}arrayOf(){let n=this;return new Qt(n)}},Qt=class extends tt{constructor(n){super(),this.elemType=n,ie(this,"kind","ArrayType")}toString(){return"["+this.elemType+"]"}check(n,e){return Array.isArray(n)&&n.every(t=>this.elemType.check(t,e))}},Dn=class extends tt{constructor(n){super(),this.value=n,ie(this,"kind","IdentityType")}toString(){return String(this.value)}check(n,e){let t=n===this.value;return!t&&typeof e=="function"&&e(this,n),t}},Mn=class extends tt{constructor(n){super(),this.fields=n,ie(this,"kind","ObjectType")}toString(){return"{ "+this.fields.join(", ")+" }"}check(n,e){return Nn.call(n)===Nn.call({})&&this.fields.every(t=>t.type.check(n[t.name],e))}},Ln=class extends tt{constructor(n){super(),this.types=n,ie(this,"kind","OrType")}toString(){return this.types.join(" | ")}check(n,e){return this.types.some(t=>t.check(n,!!e))?!0:(typeof e=="function"&&e(this,n),!1)}},et=class extends tt{constructor(n,e){super(),this.name=n,this.predicate=e,ie(this,"kind","PredicateType")}toString(){return this.name}check(n,e){let t=this.predicate(n,e);return!t&&typeof e=="function"&&e(this,n),t}},Jt=class r{constructor(n,e){this.type=n,this.typeName=e,ie(this,"baseNames",[]),ie(this,"ownFields",Object.create(null)),ie(this,"allSupertypes",Object.create(null)),ie(this,"supertypeList",[]),ie(this,"allFields",Object.create(null)),ie(this,"fieldNames",[]),ie(this,"finalized",!1),ie(this,"buildable",!1),ie(this,"buildParams",[])}isSupertypeOf(n){if(n instanceof r){if(this.finalized!==!0||n.finalized!==!0)throw new Error("");return ge.call(n.allSupertypes,this.typeName)}else throw new Error(n+" is not a Def")}checkAllFields(n,e){var t=this.allFields;if(this.finalized!==!0)throw new Error(""+this.typeName);function s(i){var a=t[i],o=a.type,l=a.getValue(n);return o.check(l,e)}return n!==null&&typeof n=="object"&&Object.keys(t).every(s)}bases(...n){var e=this.baseNames;if(this.finalized){if(n.length!==e.length)throw new Error("");for(var t=0;t<n.length;t++)if(n[t]!==e[t])throw new Error("");return this}return n.forEach(s=>{e.indexOf(s)<0&&e.push(s)}),this}},On=class{constructor(n,e,t,s){this.name=n,this.type=e,this.defaultFn=t,ie(this,"hidden"),this.hidden=!!s}toString(){return JSON.stringify(this.name)+": "+this.type}getValue(n){var e=n[this.name];return typeof e<"u"||typeof this.defaultFn=="function"&&(e=this.defaultFn.call(n)),e}};function ir(r){return Array.isArray(r)?"["+r.map(ir).join(", ")+"]":r&&typeof r=="object"?"{ "+Object.keys(r).map(function(n){return n+": "+r[n]}).join(", ")+" }":JSON.stringify(r)}function J(r){let n={or(...S){return new Ln(S.map(I=>n.from(I)))},from(S,I){if(S instanceof Qt||S instanceof Dn||S instanceof Mn||S instanceof Ln||S instanceof et)return S;if(S instanceof Jt)return S.type;if(o.check(S)){if(S.length!==1)throw new Error("only one element type is permitted for typed arrays");return new Qt(n.from(S[0]))}if(l.check(S))return new Mn(Object.keys(S).map(F=>new On(F,n.from(S[F],F))));if(typeof S=="function"){var O=e.indexOf(S);if(O>=0)return t[O];if(typeof I!="string")throw new Error("missing name");return new et(I,S)}return new Dn(S)},def(S){return ge.call(v,S)?v[S]:v[S]=new E(S)},hasDef(S){return ge.call(v,S)}};var e=[],t=[];function s(S,I){let O=Nn.call(I),F=new et(S,$=>Nn.call($)===O);return I&&typeof I.constructor=="function"&&(e.push(I.constructor),t.push(F)),F}let i=s("string","truthy"),a=s("function",function(){}),o=s("array",[]),l=s("object",{}),c=s("RegExp",/./),p=s("Date",new Date),u=s("number",3),f=s("boolean",!0),m=s("null",null),d=s("undefined",void 0),g=typeof BigInt=="function"?s("BigInt",BigInt(1234)):new et("BigInt",()=>!1),h={string:i,function:a,array:o,object:l,RegExp:c,Date:p,number:u,boolean:f,null:m,undefined:d,BigInt:g};var v=Object.create(null);function w(S){if(S&&typeof S=="object"){var I=S.type;if(typeof I=="string"&&ge.call(v,I)){var O=v[I];if(O.finalized)return O}}return null}class E extends Jt{constructor(I){super(new et(I,(O,F)=>this.check(O,F)),I)}check(I,O){if(this.finalized!==!0)throw new Error("prematurely checking unfinalized type "+this.typeName);if(I===null||typeof I!="object")return!1;var F=w(I);return F?O&&F===this?this.checkAllFields(I,O):this.isSupertypeOf(F)?O?F.checkAllFields(I,O)&&this.checkAllFields(I,!1):!0:!1:this.typeName==="SourceLocation"||this.typeName==="Position"?this.checkAllFields(I,O):!1}build(...I){if(this.buildParams=I,this.buildable)return this;this.field("type",String,()=>this.typeName),this.buildable=!0;let O=($,H,K,fe)=>{if(!ge.call($,H)){var Me=this.allFields;if(!ge.call(Me,H))throw new Error(""+H);var rn=Me[H],Wa=rn.type,Et;if(fe)Et=K;else if(rn.defaultFn)Et=rn.defaultFn.call($);else{var Ga="no value or default function given for field "+JSON.stringify(H)+" of "+this.typeName+"("+this.buildParams.map(function(Ka){return Me[Ka]}).join(", ")+")";throw new Error(Ga)}if(!Wa.check(Et))throw new Error(ir(Et)+" does not match field "+rn+" of type "+this.typeName);$[H]=Et}},F=(...$)=>{var H=$.length;if(!this.finalized)throw new Error("attempting to instantiate unfinalized type "+this.typeName);var K=Object.create(N);if(this.buildParams.forEach(function(fe,Me){Me<H?O(K,fe,$[Me],!0):O(K,fe,null,!1)}),Object.keys(this.allFields).forEach(function(fe){O(K,fe,null,!1)}),K.type!==this.typeName)throw new Error("");return K};return F.from=$=>{if(!this.finalized)throw new Error("attempting to instantiate unfinalized type "+this.typeName);var H=Object.create(N);if(Object.keys(this.allFields).forEach(function(K){ge.call($,K)?O(H,K,$[K],!0):O(H,K,null,!1)}),H.type!==this.typeName)throw new Error("");return H},Object.defineProperty(C,le(this.typeName),{enumerable:!0,value:F}),this}field(I,O,F,$){return this.finalized?(console.error("Ignoring attempt to redefine field "+JSON.stringify(I)+" of finalized type "+JSON.stringify(this.typeName)),this):(this.ownFields[I]=new On(I,n.from(O),F,$),this)}finalize(){if(!this.finalized){var I=this.allFields,O=this.allSupertypes;this.baseNames.forEach($=>{var H=v[$];if(H instanceof Jt)H.finalize(),Xn(I,H.allFields),Xn(O,H.allSupertypes);else{var K="unknown supertype name "+JSON.stringify($)+" for subtype "+JSON.stringify(this.typeName);throw new Error(K)}}),Xn(I,this.ownFields),O[this.typeName]=this,this.fieldNames.length=0;for(var F in I)ge.call(I,F)&&!I[F].hidden&&this.fieldNames.push(F);Object.defineProperty(yr,this.typeName,{enumerable:!0,value:this.type}),this.finalized=!0,qa(this.typeName,this.supertypeList),this.buildable&&this.supertypeList.lastIndexOf("Expression")>=0&&$a(this.typeName)}}}function x(S){if(!ge.call(v,S))throw new Error("");var I=v[S];if(I.finalized!==!0)throw new Error("");return I.supertypeList.slice(1)}function P(S){for(var I={},O=Object.keys(v),F=O.length,$=0;$<F;++$){var H=O[$],K=v[H];if(K.finalized!==!0)throw new Error(""+H);for(var fe=0;fe<K.supertypeList.length;++fe){var Me=K.supertypeList[fe];if(ge.call(S,Me)){I[H]=Me;break}}}return I}var C=Object.create(null),N={};function q(S,I){var O=N[S];return d.check(I)?delete N[S]:(a.assert(I),Object.defineProperty(N,S,{enumerable:!0,configurable:!0,value:I})),O}function le(S){return S.replace(/^[A-Z]+/,function(I){var O=I.length;switch(O){case 0:return"";case 1:return I.toLowerCase();default:return I.slice(0,O-1).toLowerCase()+I.charAt(O-1)}})}function Ee(S){return S=le(S),S.replace(/(Expression)?$/,"Statement")}var yr={};function Kn(S){var I=w(S);if(I)return I.fieldNames.slice(0);if("type"in S)throw new Error("did not recognize object of type "+JSON.stringify(S.type));return Object.keys(S)}function Jn(S,I){var O=w(S);if(O){var F=O.allFields[I];if(F)return F.getValue(S)}return S&&S[I]}function Va(S,I,O){Kn(S).forEach(function(F){I.call(this,F,Jn(S,F))},O)}function za(S,I,O){return Kn(S).some(function(F){return I.call(this,F,Jn(S,F))},O)}function $a(S){var I=Ee(S);if(C[I])return;var O=C[le(S)];if(!O)return;let F=function(...$){return C.expressionStatement(O.apply(C,$))};F.from=function(...$){return C.expressionStatement(O.from.apply(C,$))},C[I]=F}function qa(S,I){I.length=0,I.push(S);for(var O=Object.create(null),F=0;F<I.length;++F){S=I[F];var $=v[S];if($.finalized!==!0)throw new Error("");ge.call(O,S)&&delete I[O[S]],O[S]=F,I.push.apply(I,$.baseNames)}for(var H=0,K=H,fe=I.length;K<fe;++K)ge.call(I,K)&&(I[H++]=I[K]);I.length=H}function Xn(S,I){return Object.keys(I).forEach(function(O){S[O]=I[O]}),S}function Ha(){Object.keys(v).forEach(function(S){v[S].finalize()})}return{Type:n,builtInTypes:h,getSupertypeNames:x,computeSupertypeLookupTable:P,builders:C,defineMethod:q,getBuilderName:le,getStatementBuilderName:Ee,namedTypes:yr,getFieldNames:Kn,getFieldValue:Jn,eachField:Va,someField:za,finalize:Ha}}z(()=>module);var zl=Object.prototype,Tn=zl.hasOwnProperty;function Bi(r){var n=r.use(J),e=n.builtInTypes.array,t=n.builtInTypes.number;let s=function u(f,m,d){if(!(this instanceof u))throw new Error("Path constructor cannot be invoked without 'new'");if(m){if(!(m instanceof u))throw new Error("")}else m=null,d=null;this.value=f,this.parentPath=m,this.name=d,this.__childCache=null};var i=s.prototype;function a(u){return u.__childCache||(u.__childCache=Object.create(null))}function o(u,f){var m=a(u),d=u.getValueProperty(f),g=m[f];return(!Tn.call(m,f)||g.value!==d)&&(g=m[f]=new u.constructor(d,u,f)),g}i.getValueProperty=function(f){return this.value[f]},i.get=function(...f){for(var m=this,d=f.length,g=0;g<d;++g)m=o(m,f[g]);return m},i.each=function(f,m){for(var d=[],g=this.value.length,h=0,h=0;h<g;++h)Tn.call(this.value,h)&&(d[h]=this.get(h));for(m=m||this,h=0;h<g;++h)Tn.call(d,h)&&f.call(m,d[h])},i.map=function(f,m){var d=[];return this.each(function(g){d.push(f.call(this,g))},m),d},i.filter=function(f,m){var d=[];return this.each(function(g){f.call(this,g)&&d.push(g)},m),d};function l(){}function c(u,f,m,d){if(e.assert(u.value),f===0)return l;var g=u.value.length;if(g<1)return l;var h=arguments.length;h===2?(m=0,d=g):h===3?(m=Math.max(m,0),d=g):(m=Math.max(m,0),d=Math.min(d,g)),t.assert(m),t.assert(d);for(var v=Object.create(null),w=a(u),E=m;E<d;++E)if(Tn.call(u.value,E)){var x=u.get(E);if(x.name!==E)throw new Error("");var P=E+f;x.name=P,v[P]=x,delete w[E]}return delete w.length,function(){for(var C in v){var N=v[C];if(N.name!==+C)throw new Error("");w[C]=N,u.value[C]=N.value}}}i.shift=function(){var f=c(this,-1),m=this.value.shift();return f(),m},i.unshift=function(...f){var m=c(this,f.length),d=this.value.unshift.apply(this.value,f);return m(),d},i.push=function(...f){return e.assert(this.value),delete a(this).length,this.value.push.apply(this.value,f)},i.pop=function(){e.assert(this.value);var f=a(this);return delete f[this.value.length-1],delete f.length,this.value.pop()},i.insertAt=function(f){var m=arguments.length,d=c(this,m-1,f);if(d===l&&m<=1)return this;f=Math.max(f,0);for(var g=1;g<m;++g)this.value[f+g-1]=arguments[g];return d(),this},i.insertBefore=function(...f){for(var m=this.parentPath,d=f.length,g=[this.name],h=0;h<d;++h)g.push(f[h]);return m.insertAt.apply(m,g)},i.insertAfter=function(...f){for(var m=this.parentPath,d=f.length,g=[this.name+1],h=0;h<d;++h)g.push(f[h]);return m.insertAt.apply(m,g)};function p(u){if(!(u instanceof s))throw new Error("");var f=u.parentPath;if(!f)return u;var m=f.value,d=a(f);if(m[u.name]===u.value)d[u.name]=u;else if(e.check(m)){var g=m.indexOf(u.value);g>=0&&(d[u.name=g]=u)}else m[u.name]=u.value,d[u.name]=u;if(m[u.name]!==u.value)throw new Error("");if(u.parentPath.get(u.name)!==u)throw new Error("");return u}return i.replace=function(f){var m=[],d=this.parentPath.value,g=a(this.parentPath),h=arguments.length;if(p(this),e.check(d)){for(var v=d.length,w=c(this.parentPath,h-1,this.name+1),E=[this.name,1],x=0;x<h;++x)E.push(arguments[x]);var P=d.splice.apply(d,E);if(P[0]!==this.value)throw new Error("");if(d.length!==v-1+h)throw new Error("");if(w(),h===0)delete this.value,delete g[this.name],this.__childCache=null;else{if(d[this.name]!==f)throw new Error("");for(this.value!==f&&(this.value=f,this.__childCache=null),x=0;x<h;++x)m.push(this.parentPath.get(this.name+x));if(m[0]!==this)throw new Error("")}}else if(h===1)this.value!==f&&(this.__childCache=null),this.value=d[this.name]=f,m.push(this);else if(h===0)delete d[this.name],delete this.value,this.__childCache=null;else throw new Error("Could not replace path");return m},s}z(()=>module);var mt=Object.prototype.hasOwnProperty;function $l(r){var n=r.use(J),e=n.Type,t=n.namedTypes,s=t.Node,i=t.Expression,a=n.builtInTypes.array,o=n.builders;let l=function x(P,C){if(!(this instanceof x))throw new Error("Scope constructor cannot be invoked without 'new'");p.check(P.value)||c.assert(P.value);var N;if(C){if(!(C instanceof x))throw new Error("");N=C.depth+1}else C=null,N=0;Object.defineProperties(this,{path:{value:P},node:{value:P.value},isGlobal:{value:!C,enumerable:!0},depth:{value:N},parent:{value:C},bindings:{value:{}},types:{value:{}}})};var c=e.or(t.Program,t.Function,t.CatchClause),p=e.or(t.Function,t.ClassDeclaration,t.ClassExpression,t.InterfaceDeclaration,t.TSInterfaceDeclaration,t.TypeAlias,t.TSTypeAliasDeclaration),u=e.or(t.TypeParameter,t.TSTypeParameter);l.isEstablishedBy=function(x){return c.check(x)||p.check(x)};var f=l.prototype;f.didScan=!1,f.declares=function(x){return this.scan(),mt.call(this.bindings,x)},f.declaresType=function(x){return this.scan(),mt.call(this.types,x)},f.declareTemporary=function(x){if(x){if(!/^[a-z$_]/i.test(x))throw new Error("")}else x="t$";x+=this.depth.toString(36)+"$",this.scan();for(var P=0;this.declares(x+P);)++P;var C=x+P;return this.bindings[C]=n.builders.identifier(C)},f.injectTemporary=function(x,P){x||(x=this.declareTemporary());var C=this.path.get("body");return t.BlockStatement.check(C.value)&&(C=C.get("body")),C.unshift(o.variableDeclaration("var",[o.variableDeclarator(x,P||null)])),x},f.scan=function(x){if(x||!this.didScan){for(var P in this.bindings)delete this.bindings[P];for(var P in this.types)delete this.types[P];m(this.path,this.bindings,this.types),this.didScan=!0}},f.getBindings=function(){return this.scan(),this.bindings},f.getTypes=function(){return this.scan(),this.types};function m(x,P,C){var N=x.value;if(p.check(N)){let q=x.get("typeParameters","params");a.check(q.value)&&q.each(le=>{E(le,C)})}c.check(N)&&(t.CatchClause.check(N)?v(x.get("param"),P):d(x,P,C))}function d(x,P,C){var N=x.value;x.parent&&t.FunctionExpression.check(x.parent.node)&&x.parent.node.id&&v(x.parent.get("id"),P),N&&(a.check(N)?x.each(q=>{h(q,P,C)}):t.Function.check(N)?(x.get("params").each(q=>{v(q,P)}),h(x.get("body"),P,C),d(x.get("typeParameters"),P,C)):t.TypeAlias&&t.TypeAlias.check(N)||t.InterfaceDeclaration&&t.InterfaceDeclaration.check(N)||t.TSTypeAliasDeclaration&&t.TSTypeAliasDeclaration.check(N)||t.TSInterfaceDeclaration&&t.TSInterfaceDeclaration.check(N)?w(x.get("id"),C):t.VariableDeclarator.check(N)?(v(x.get("id"),P),h(x.get("init"),P,C)):N.type==="ImportSpecifier"||N.type==="ImportNamespaceSpecifier"||N.type==="ImportDefaultSpecifier"?v(x.get(N.local?"local":N.name?"name":"id"),P):s.check(N)&&!i.check(N)&&n.eachField(N,function(q,le){var Ee=x.get(q);if(!g(Ee,le))throw new Error("");h(Ee,P,C)}))}function g(x,P){return!!(x.value===P||Array.isArray(x.value)&&x.value.length===0&&Array.isArray(P)&&P.length===0)}function h(x,P,C){var N=x.value;if(!(!N||i.check(N)))if(t.FunctionDeclaration.check(N)&&N.id!==null)v(x.get("id"),P);else if(t.ClassDeclaration&&t.ClassDeclaration.check(N)&&N.id!==null)v(x.get("id"),P),d(x.get("typeParameters"),P,C);else if(t.InterfaceDeclaration&&t.InterfaceDeclaration.check(N)||t.TSInterfaceDeclaration&&t.TSInterfaceDeclaration.check(N))w(x.get("id"),C);else if(c.check(N)){if(t.CatchClause.check(N)&&t.Identifier.check(N.param)){var q=N.param.name,le=mt.call(P,q);d(x.get("body"),P,C),le||delete P[q]}}else d(x,P,C)}function v(x,P){var C=x.value;t.Pattern.assert(C),t.Identifier.check(C)?mt.call(P,C.name)?P[C.name].push(x):P[C.name]=[x]:t.AssignmentPattern&&t.AssignmentPattern.check(C)?v(x.get("left"),P):t.ObjectPattern&&t.ObjectPattern.check(C)?x.get("properties").each(function(N){var q=N.value;t.Pattern.check(q)?v(N,P):t.Property.check(q)||t.ObjectProperty&&t.ObjectProperty.check(q)?v(N.get("value"),P):t.SpreadProperty&&t.SpreadProperty.check(q)&&v(N.get("argument"),P)}):t.ArrayPattern&&t.ArrayPattern.check(C)?x.get("elements").each(function(N){var q=N.value;t.Pattern.check(q)?v(N,P):t.SpreadElement&&t.SpreadElement.check(q)&&v(N.get("argument"),P)}):t.PropertyPattern&&t.PropertyPattern.check(C)?v(x.get("pattern"),P):(t.SpreadElementPattern&&t.SpreadElementPattern.check(C)||t.RestElement&&t.RestElement.check(C)||t.SpreadPropertyPattern&&t.SpreadPropertyPattern.check(C))&&v(x.get("argument"),P)}function w(x,P){var C=x.value;t.Pattern.assert(C),t.Identifier.check(C)&&(mt.call(P,C.name)?P[C.name].push(x):P[C.name]=[x])}function E(x,P){var C=x.value;u.assert(C),mt.call(P,C.name)?P[C.name].push(x):P[C.name]=[x]}return f.lookup=function(x){for(var P=this;P&&!P.declares(x);P=P.parent);return P},f.lookupType=function(x){for(var P=this;P&&!P.declaresType(x);P=P.parent);return P},f.getGlobalScope=function(){for(var x=this;!x.isGlobal;)x=x.parent;return x},l}z(()=>module);function ji(r){var n=r.use(J),e=n.namedTypes,t=n.builders,s=n.builtInTypes.number,i=n.builtInTypes.array,a=r.use(Bi),o=r.use($l);let l=function h(v,w,E){if(!(this instanceof h))throw new Error("NodePath constructor cannot be invoked without 'new'");a.call(this,v,w,E)};var c=l.prototype=Object.create(a.prototype,{constructor:{value:l,enumerable:!1,writable:!0,configurable:!0}});Object.defineProperties(c,{node:{get:function(){return Object.defineProperty(this,"node",{configurable:!0,value:this._computeNode()}),this.node}},parent:{get:function(){return Object.defineProperty(this,"parent",{configurable:!0,value:this._computeParent()}),this.parent}},scope:{get:function(){return Object.defineProperty(this,"scope",{configurable:!0,value:this._computeScope()}),this.scope}}}),c.replace=function(){return delete this.node,delete this.parent,delete this.scope,a.prototype.replace.apply(this,arguments)},c.prune=function(){var h=this.parent;return this.replace(),d(h)},c._computeNode=function(){var h=this.value;if(e.Node.check(h))return h;var v=this.parentPath;return v&&v.node||null},c._computeParent=function(){var h=this.value,v=this.parentPath;if(!e.Node.check(h)){for(;v&&!e.Node.check(v.value);)v=v.parentPath;v&&(v=v.parentPath)}for(;v&&!e.Node.check(v.value);)v=v.parentPath;return v||null},c._computeScope=function(){var h=this.value,v=this.parentPath,w=v&&v.scope;return e.Node.check(h)&&o.isEstablishedBy(h)&&(w=new o(this,w)),w||null},c.getValueProperty=function(h){return n.getFieldValue(this.value,h)},c.needsParens=function(h){var v=this.parentPath;if(!v)return!1;var w=this.value;if(!e.Expression.check(w)||w.type==="Identifier")return!1;for(;!e.Node.check(v.value);)if(v=v.parentPath,!v)return!1;var E=v.value;switch(w.type){case"UnaryExpression":case"SpreadElement":case"SpreadProperty":return E.type==="MemberExpression"&&this.name==="object"&&E.object===w;case"BinaryExpression":case"LogicalExpression":switch(E.type){case"CallExpression":return this.name==="callee"&&E.callee===w;case"UnaryExpression":case"SpreadElement":case"SpreadProperty":return!0;case"MemberExpression":return this.name==="object"&&E.object===w;case"BinaryExpression":case"LogicalExpression":{let x=w,P=E.operator,C=u[P],N=x.operator,q=u[N];if(C>q)return!0;if(C===q&&this.name==="right"){if(E.right!==x)throw new Error("Nodes must be equal");return!0}}default:return!1}case"SequenceExpression":switch(E.type){case"ForStatement":return!1;case"ExpressionStatement":return this.name!=="expression";default:return!0}case"YieldExpression":switch(E.type){case"BinaryExpression":case"LogicalExpression":case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"CallExpression":case"MemberExpression":case"NewExpression":case"ConditionalExpression":case"YieldExpression":return!0;default:return!1}case"Literal":return E.type==="MemberExpression"&&s.check(w.value)&&this.name==="object"&&E.object===w;case"AssignmentExpression":case"ConditionalExpression":switch(E.type){case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"BinaryExpression":case"LogicalExpression":return!0;case"CallExpression":return this.name==="callee"&&E.callee===w;case"ConditionalExpression":return this.name==="test"&&E.test===w;case"MemberExpression":return this.name==="object"&&E.object===w;default:return!1}default:if(E.type==="NewExpression"&&this.name==="callee"&&E.callee===w)return f(w)}return!!(h!==!0&&!this.canBeFirstInStatement()&&this.firstInStatement())};function p(h){return e.BinaryExpression.check(h)||e.LogicalExpression.check(h)}var u={};[["||"],["&&"],["|"],["^"],["&"],["==","===","!=","!=="],["<",">","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"]].forEach(function(h,v){h.forEach(function(w){u[w]=v})});function f(h){return e.CallExpression.check(h)?!0:i.check(h)?h.some(f):e.Node.check(h)?n.someField(h,function(v,w){return f(w)}):!1}c.canBeFirstInStatement=function(){var h=this.node;return!e.FunctionExpression.check(h)&&!e.ObjectExpression.check(h)},c.firstInStatement=function(){return m(this)};function m(h){for(var v,w;h.parent;h=h.parent){if(v=h.node,w=h.parent.node,e.BlockStatement.check(w)&&h.parent.name==="body"&&h.name===0){if(w.body[0]!==v)throw new Error("Nodes must be equal");return!0}if(e.ExpressionStatement.check(w)&&h.name==="expression"){if(w.expression!==v)throw new Error("Nodes must be equal");return!0}if(e.SequenceExpression.check(w)&&h.parent.name==="expressions"&&h.name===0){if(w.expressions[0]!==v)throw new Error("Nodes must be equal");continue}if(e.CallExpression.check(w)&&h.name==="callee"){if(w.callee!==v)throw new Error("Nodes must be equal");continue}if(e.MemberExpression.check(w)&&h.name==="object"){if(w.object!==v)throw new Error("Nodes must be equal");continue}if(e.ConditionalExpression.check(w)&&h.name==="test"){if(w.test!==v)throw new Error("Nodes must be equal");continue}if(p(w)&&h.name==="left"){if(w.left!==v)throw new Error("Nodes must be equal");continue}if(e.UnaryExpression.check(w)&&!w.prefix&&h.name==="argument"){if(w.argument!==v)throw new Error("Nodes must be equal");continue}return!1}return!0}function d(h){if(e.VariableDeclaration.check(h.node)){var v=h.get("declarations").value;if(!v||v.length===0)return h.prune()}else if(e.ExpressionStatement.check(h.node)){if(!h.get("expression").value)return h.prune()}else e.IfStatement.check(h.node)&&g(h);return h}function g(h){var v=h.get("test").value,w=h.get("alternate").value,E=h.get("consequent").value;if(!E&&!w){var x=t.expressionStatement(v);h.replace(x)}else if(!E&&w){var P=t.unaryExpression("!",v,!0);e.UnaryExpression.check(v)&&v.operator==="!"&&(P=v.argument),h.get("test").replace(P),h.get("consequent").replace(w),h.get("alternate").replace()}}return l}z(()=>module);var wn=Object.prototype.hasOwnProperty;function ql(r){var n=r.use(J),e=r.use(ji),t=n.builtInTypes.array,s=n.builtInTypes.object,i=n.builtInTypes.function,a;let o=function d(){if(!(this instanceof d))throw new Error("PathVisitor constructor cannot be invoked without 'new'");this._reusableContextStack=[],this._methodNameTable=l(this),this._shouldVisitComments=wn.call(this._methodNameTable,"Block")||wn.call(this._methodNameTable,"Line"),this.Context=f(this),this._visiting=!1,this._changeReported=!1};function l(d){var g=Object.create(null);for(var h in d)/^visit[A-Z]/.test(h)&&(g[h.slice(5)]=!0);for(var v=n.computeSupertypeLookupTable(g),w=Object.create(null),E=Object.keys(v),x=E.length,P=0;P<x;++P){var C=E[P];h="visit"+v[C],i.check(d[h])&&(w[C]=h)}return w}o.fromMethodsObject=function(g){if(g instanceof o)return g;if(!s.check(g))return new o;let h=function w(){if(!(this instanceof w))throw new Error("Visitor constructor cannot be invoked without 'new'");o.call(this)};var v=h.prototype=Object.create(p);return v.constructor=h,c(v,g),c(h,o),i.assert(h.fromMethodsObject),i.assert(h.visit),new h};function c(d,g){for(var h in g)wn.call(g,h)&&(d[h]=g[h]);return d}o.visit=function(g,h){return o.fromMethodsObject(h).visit(g)};var p=o.prototype;p.visit=function(){if(this._visiting)throw new Error("Recursively calling visitor.visit(path) resets visitor state. Try this.visit(path) or this.traverse(path) instead.");this._visiting=!0,this._changeReported=!1,this._abortRequested=!1;for(var d=arguments.length,g=new Array(d),h=0;h<d;++h)g[h]=arguments[h];g[0]instanceof e||(g[0]=new e({root:g[0]}).get("root")),this.reset.apply(this,g);var v;try{var w=this.visitWithoutReset(g[0]);v=!0}finally{if(this._visiting=!1,!v&&this._abortRequested)return g[0].value}return w},p.AbortRequest=function(){},p.abort=function(){var d=this;d._abortRequested=!0;var g=new d.AbortRequest;throw g.cancel=function(){d._abortRequested=!1},g},p.reset=function(d){},p.visitWithoutReset=function(d){if(this instanceof this.Context)return this.visitor.visitWithoutReset(d);if(!(d instanceof e))throw new Error("");var g=d.value,h=g&&typeof g=="object"&&typeof g.type=="string"&&this._methodNameTable[g.type];if(h){var v=this.acquireContext(d);try{return v.invokeVisitorMethod(h)}finally{this.releaseContext(v)}}else return u(d,this)};function u(d,g){if(!(d instanceof e))throw new Error("");if(!(g instanceof o))throw new Error("");var h=d.value;if(t.check(h))d.each(g.visitWithoutReset,g);else if(s.check(h)){var v=n.getFieldNames(h);g._shouldVisitComments&&h.comments&&v.indexOf("comments")<0&&v.push("comments");for(var w=v.length,E=[],x=0;x<w;++x){var P=v[x];wn.call(h,P)||(h[P]=n.getFieldValue(h,P)),E.push(d.get(P))}for(var x=0;x<w;++x)g.visitWithoutReset(E[x])}return d.value}p.acquireContext=function(d){return this._reusableContextStack.length===0?new this.Context(d):this._reusableContextStack.pop().reset(d)},p.releaseContext=function(d){if(!(d instanceof this.Context))throw new Error("");this._reusableContextStack.push(d),d.currentPath=null},p.reportChanged=function(){this._changeReported=!0},p.wasChangeReported=function(){return this._changeReported};function f(d){function g(v){if(!(this instanceof g))throw new Error("");if(!(this instanceof o))throw new Error("");if(!(v instanceof e))throw new Error("");Object.defineProperty(this,"visitor",{value:d,writable:!1,enumerable:!0,configurable:!1}),this.currentPath=v,this.needToCallTraverse=!0,Object.seal(this)}if(!(d instanceof o))throw new Error("");var h=g.prototype=Object.create(d);return h.constructor=g,c(h,m),g}var m=Object.create(null);return m.reset=function(g){if(!(this instanceof this.Context))throw new Error("");if(!(g instanceof e))throw new Error("");return this.currentPath=g,this.needToCallTraverse=!0,this},m.invokeVisitorMethod=function(g){if(!(this instanceof this.Context))throw new Error("");if(!(this.currentPath instanceof e))throw new Error("");var h=this.visitor[g].call(this,this.currentPath);if(h===!1?this.needToCallTraverse=!1:h!==a&&(this.currentPath=this.currentPath.replace(h)[0],this.needToCallTraverse&&this.traverse(this.currentPath)),this.needToCallTraverse!==!1)throw new Error("Must either call this.traverse or return false in "+g);var v=this.currentPath;return v&&v.value},m.traverse=function(g,h){if(!(this instanceof this.Context))throw new Error("");if(!(g instanceof e))throw new Error("");if(!(this.currentPath instanceof e))throw new Error("");return this.needToCallTraverse=!1,u(g,o.fromMethodsObject(h||this.visitor))},m.visit=function(g,h){if(!(this instanceof this.Context))throw new Error("");if(!(g instanceof e))throw new Error("");if(!(this.currentPath instanceof e))throw new Error("");return this.needToCallTraverse=!1,o.fromMethodsObject(h||this.visitor).visitWithoutReset(g)},m.reportChanged=function(){this.visitor.reportChanged()},m.abort=function(){this.needToCallTraverse=!1,this.visitor.abort()},o}z(()=>module);function Hl(r){var n=r.use(J),e=n.getFieldNames,t=n.getFieldValue,s=n.builtInTypes.array,i=n.builtInTypes.object,a=n.builtInTypes.Date,o=n.builtInTypes.RegExp,l=Object.prototype.hasOwnProperty;function c(d,g,h){return s.check(h)?h.length=0:h=null,u(d,g,h)}c.assert=function(d,g){var h=[];if(!c(d,g,h))if(h.length===0){if(d!==g)throw new Error("Nodes must be equal")}else throw new Error("Nodes differ in the following path: "+h.map(p).join(""))};function p(d){return/[_$a-z][_$a-z0-9]*/i.test(d)?"."+d:"["+JSON.stringify(d)+"]"}function u(d,g,h){return d===g?!0:s.check(d)?f(d,g,h):i.check(d)?m(d,g,h):a.check(d)?a.check(g)&&+d==+g:o.check(d)?o.check(g)&&d.source===g.source&&d.global===g.global&&d.multiline===g.multiline&&d.ignoreCase===g.ignoreCase:d==g}function f(d,g,h){s.assert(d);var v=d.length;if(!s.check(g)||g.length!==v)return h&&h.push("length"),!1;for(var w=0;w<v;++w){if(h&&h.push(w),w in d!=w in g||!u(d[w],g[w],h))return!1;if(h){var E=h.pop();if(E!==w)throw new Error(""+E)}}return!0}function m(d,g,h){if(i.assert(d),!i.check(g))return!1;if(d.type!==g.type)return h&&h.push("type"),!1;var v=e(d),w=v.length,E=e(g),x=E.length;if(w===x){for(var P=0;P<w;++P){var C=v[P],N=t(d,C),q=t(g,C);if(h&&h.push(C),!u(N,q,h))return!1;if(h){var le=h.pop();if(le!==C)throw new Error(""+le)}}return!0}if(!h)return!1;var Ee=Object.create(null);for(P=0;P<w;++P)Ee[v[P]]=!0;for(P=0;P<x;++P){if(C=E[P],!l.call(Ee,C))return h.push(C),!1;delete Ee[C]}for(C in Ee){h.push(C);break}return!1}return c}z(()=>module);function Wl(r){let n=Gl(),e=n.use(J);r.forEach(n.use),e.finalize();let t=n.use(ql);return{Type:e.Type,builtInTypes:e.builtInTypes,namedTypes:e.namedTypes,builders:e.builders,defineMethod:e.defineMethod,getFieldNames:e.getFieldNames,getFieldValue:e.getFieldValue,eachField:e.eachField,someField:e.someField,getSupertypeNames:e.getSupertypeNames,getBuilderName:e.getBuilderName,astNodesAreEquivalent:n.use(Hl),finalize:e.finalize,Path:n.use(Bi),NodePath:n.use(ji),PathVisitor:t,use:n.use,visit:t.visit}}function Gl(){let r=[],n=[];function e(s){var i=r.indexOf(s);return i===-1&&(i=r.length,r.push(s),n[i]=s(t)),n[i]}var t={use:e};return t}z(()=>module);function Vi(){return{BinaryOperators:["==","!=","===","!==","<","<=",">",">=","<<",">>",">>>","+","-","*","/","%","&","|","^","in","instanceof"],AssignmentOperators:["=","+=","-=","*=","/=","%=","<<=",">>=",">>>=","|=","^=","&="],LogicalOperators:["||","&&"]}}z(()=>module);function zi(r){let n=r.use(Vi);return n.BinaryOperators.indexOf("**")<0&&n.BinaryOperators.push("**"),n.AssignmentOperators.indexOf("**=")<0&&n.AssignmentOperators.push("**="),n}z(()=>module);function $i(r){let n=r.use(zi);return n.LogicalOperators.indexOf("??")<0&&n.LogicalOperators.push("??"),n}z(()=>module);function Kl(r){let n=r.use($i);return n.LogicalOperators.forEach(e=>{let t=e+"=";n.AssignmentOperators.indexOf(t)<0&&n.AssignmentOperators.push(t)}),n}z(()=>module);function Jl(r){var n=r.use(J),e=n.Type,t=e.def,s=e.or,i=r.use(ue),a=i.defaults,o=i.geq;let{BinaryOperators:l,AssignmentOperators:c,LogicalOperators:p}=r.use(Vi);t("Printable").field("loc",s(t("SourceLocation"),null),a.null,!0),t("Node").bases("Printable").field("type",String).field("comments",s([t("Comment")],null),a.null,!0),t("SourceLocation").field("start",t("Position")).field("end",t("Position")).field("source",s(String,null),a.null),t("Position").field("line",o(1)).field("column",o(0)),t("File").bases("Node").build("program","name").field("program",t("Program")).field("name",s(String,null),a.null),t("Program").bases("Node").build("body").field("body",[t("Statement")]),t("Function").bases("Node").field("id",s(t("Identifier"),null),a.null).field("params",[t("Pattern")]).field("body",t("BlockStatement")).field("generator",Boolean,a.false).field("async",Boolean,a.false),t("Statement").bases("Node"),t("EmptyStatement").bases("Statement").build(),t("BlockStatement").bases("Statement").build("body").field("body",[t("Statement")]),t("ExpressionStatement").bases("Statement").build("expression").field("expression",t("Expression")),t("IfStatement").bases("Statement").build("test","consequent","alternate").field("test",t("Expression")).field("consequent",t("Statement")).field("alternate",s(t("Statement"),null),a.null),t("LabeledStatement").bases("Statement").build("label","body").field("label",t("Identifier")).field("body",t("Statement")),t("BreakStatement").bases("Statement").build("label").field("label",s(t("Identifier"),null),a.null),t("ContinueStatement").bases("Statement").build("label").field("label",s(t("Identifier"),null),a.null),t("WithStatement").bases("Statement").build("object","body").field("object",t("Expression")).field("body",t("Statement")),t("SwitchStatement").bases("Statement").build("discriminant","cases","lexical").field("discriminant",t("Expression")).field("cases",[t("SwitchCase")]).field("lexical",Boolean,a.false),t("ReturnStatement").bases("Statement").build("argument").field("argument",s(t("Expression"),null)),t("ThrowStatement").bases("Statement").build("argument").field("argument",t("Expression")),t("TryStatement").bases("Statement").build("block","handler","finalizer").field("block",t("BlockStatement")).field("handler",s(t("CatchClause"),null),function(){return this.handlers&&this.handlers[0]||null}).field("handlers",[t("CatchClause")],function(){return this.handler?[this.handler]:[]},!0).field("guardedHandlers",[t("CatchClause")],a.emptyArray).field("finalizer",s(t("BlockStatement"),null),a.null),t("CatchClause").bases("Node").build("param","guard","body").field("param",t("Pattern")).field("guard",s(t("Expression"),null),a.null).field("body",t("BlockStatement")),t("WhileStatement").bases("Statement").build("test","body").field("test",t("Expression")).field("body",t("Statement")),t("DoWhileStatement").bases("Statement").build("body","test").field("body",t("Statement")).field("test",t("Expression")),t("ForStatement").bases("Statement").build("init","test","update","body").field("init",s(t("VariableDeclaration"),t("Expression"),null)).field("test",s(t("Expression"),null)).field("update",s(t("Expression"),null)).field("body",t("Statement")),t("ForInStatement").bases("Statement").build("left","right","body").field("left",s(t("VariableDeclaration"),t("Expression"))).field("right",t("Expression")).field("body",t("Statement")),t("DebuggerStatement").bases("Statement").build(),t("Declaration").bases("Statement"),t("FunctionDeclaration").bases("Function","Declaration").build("id","params","body").field("id",t("Identifier")),t("FunctionExpression").bases("Function","Expression").build("id","params","body"),t("VariableDeclaration").bases("Declaration").build("kind","declarations").field("kind",s("var","let","const")).field("declarations",[t("VariableDeclarator")]),t("VariableDeclarator").bases("Node").build("id","init").field("id",t("Pattern")).field("init",s(t("Expression"),null),a.null),t("Expression").bases("Node"),t("ThisExpression").bases("Expression").build(),t("ArrayExpression").bases("Expression").build("elements").field("elements",[s(t("Expression"),null)]),t("ObjectExpression").bases("Expression").build("properties").field("properties",[t("Property")]),t("Property").bases("Node").build("kind","key","value").field("kind",s("init","get","set")).field("key",s(t("Literal"),t("Identifier"))).field("value",t("Expression")),t("SequenceExpression").bases("Expression").build("expressions").field("expressions",[t("Expression")]);var u=s("-","+","!","~","typeof","void","delete");t("UnaryExpression").bases("Expression").build("operator","argument","prefix").field("operator",u).field("argument",t("Expression")).field("prefix",Boolean,a.true);let f=s(...l);t("BinaryExpression").bases("Expression").build("operator","left","right").field("operator",f).field("left",t("Expression")).field("right",t("Expression"));let m=s(...c);t("AssignmentExpression").bases("Expression").build("operator","left","right").field("operator",m).field("left",s(t("Pattern"),t("MemberExpression"))).field("right",t("Expression"));var d=s("++","--");t("UpdateExpression").bases("Expression").build("operator","argument","prefix").field("operator",d).field("argument",t("Expression")).field("prefix",Boolean);var g=s(...p);t("LogicalExpression").bases("Expression").build("operator","left","right").field("operator",g).field("left",t("Expression")).field("right",t("Expression")),t("ConditionalExpression").bases("Expression").build("test","consequent","alternate").field("test",t("Expression")).field("consequent",t("Expression")).field("alternate",t("Expression")),t("NewExpression").bases("Expression").build("callee","arguments").field("callee",t("Expression")).field("arguments",[t("Expression")]),t("CallExpression").bases("Expression").build("callee","arguments").field("callee",t("Expression")).field("arguments",[t("Expression")]),t("MemberExpression").bases("Expression").build("object","property","computed").field("object",t("Expression")).field("property",s(t("Identifier"),t("Expression"))).field("computed",Boolean,function(){var h=this.property.type;return h==="Literal"||h==="MemberExpression"||h==="BinaryExpression"}),t("Pattern").bases("Node"),t("SwitchCase").bases("Node").build("test","consequent").field("test",s(t("Expression"),null)).field("consequent",[t("Statement")]),t("Identifier").bases("Expression","Pattern").build("name").field("name",String).field("optional",Boolean,a.false),t("Literal").bases("Expression").build("value").field("value",s(String,Boolean,null,Number,RegExp,BigInt)),t("Comment").bases("Printable").field("value",String).field("leading",Boolean,a.true).field("trailing",Boolean,a.false)}z(()=>module);function Xl(r){r.use(Jl);let n=r.use(J),e=n.Type.def,t=n.Type.or,s=r.use(ue).defaults;e("Function").field("generator",Boolean,s.false).field("expression",Boolean,s.false).field("defaults",[t(e("Expression"),null)],s.emptyArray).field("rest",t(e("Identifier"),null),s.null),e("RestElement").bases("Pattern").build("argument").field("argument",e("Pattern")).field("typeAnnotation",t(e("TypeAnnotation"),e("TSTypeAnnotation"),null),s.null),e("SpreadElementPattern").bases("Pattern").build("argument").field("argument",e("Pattern")),e("FunctionDeclaration").build("id","params","body","generator","expression").field("id",t(e("Identifier"),null)),e("FunctionExpression").build("id","params","body","generator","expression"),e("ArrowFunctionExpression").bases("Function","Expression").build("params","body","expression").field("id",null,s.null).field("body",t(e("BlockStatement"),e("Expression"))).field("generator",!1,s.false),e("ForOfStatement").bases("Statement").build("left","right","body").field("left",t(e("VariableDeclaration"),e("Pattern"))).field("right",e("Expression")).field("body",e("Statement")),e("YieldExpression").bases("Expression").build("argument","delegate").field("argument",t(e("Expression"),null)).field("delegate",Boolean,s.false),e("GeneratorExpression").bases("Expression").build("body","blocks","filter").field("body",e("Expression")).field("blocks",[e("ComprehensionBlock")]).field("filter",t(e("Expression"),null)),e("ComprehensionExpression").bases("Expression").build("body","blocks","filter").field("body",e("Expression")).field("blocks",[e("ComprehensionBlock")]).field("filter",t(e("Expression"),null)),e("ComprehensionBlock").bases("Node").build("left","right","each").field("left",e("Pattern")).field("right",e("Expression")).field("each",Boolean),e("Property").field("key",t(e("Literal"),e("Identifier"),e("Expression"))).field("value",t(e("Expression"),e("Pattern"))).field("method",Boolean,s.false).field("shorthand",Boolean,s.false).field("computed",Boolean,s.false),e("ObjectProperty").field("shorthand",Boolean,s.false),e("PropertyPattern").bases("Pattern").build("key","pattern").field("key",t(e("Literal"),e("Identifier"),e("Expression"))).field("pattern",e("Pattern")).field("computed",Boolean,s.false),e("ObjectPattern").bases("Pattern").build("properties").field("properties",[t(e("PropertyPattern"),e("Property"))]),e("ArrayPattern").bases("Pattern").build("elements").field("elements",[t(e("Pattern"),null)]),e("SpreadElement").bases("Node").build("argument").field("argument",e("Expression")),e("ArrayExpression").field("elements",[t(e("Expression"),e("SpreadElement"),e("RestElement"),null)]),e("NewExpression").field("arguments",[t(e("Expression"),e("SpreadElement"))]),e("CallExpression").field("arguments",[t(e("Expression"),e("SpreadElement"))]),e("AssignmentPattern").bases("Pattern").build("left","right").field("left",e("Pattern")).field("right",e("Expression")),e("MethodDefinition").bases("Declaration").build("kind","key","value","static").field("kind",t("constructor","method","get","set")).field("key",e("Expression")).field("value",e("Function")).field("computed",Boolean,s.false).field("static",Boolean,s.false);let i=t(e("MethodDefinition"),e("VariableDeclarator"),e("ClassPropertyDefinition"),e("ClassProperty"),e("StaticBlock"));e("ClassProperty").bases("Declaration").build("key").field("key",t(e("Literal"),e("Identifier"),e("Expression"))).field("computed",Boolean,s.false),e("ClassPropertyDefinition").bases("Declaration").build("definition").field("definition",i),e("ClassBody").bases("Declaration").build("body").field("body",[i]),e("ClassDeclaration").bases("Declaration").build("id","body","superClass").field("id",t(e("Identifier"),null)).field("body",e("ClassBody")).field("superClass",t(e("Expression"),null),s.null),e("ClassExpression").bases("Expression").build("id","body","superClass").field("id",t(e("Identifier"),null),s.null).field("body",e("ClassBody")).field("superClass",t(e("Expression"),null),s.null),e("Super").bases("Expression").build(),e("Specifier").bases("Node"),e("ModuleSpecifier").bases("Specifier").field("local",t(e("Identifier"),null),s.null).field("id",t(e("Identifier"),null),s.null).field("name",t(e("Identifier"),null),s.null),e("ImportSpecifier").bases("ModuleSpecifier").build("imported","local").field("imported",e("Identifier")),e("ImportDefaultSpecifier").bases("ModuleSpecifier").build("local"),e("ImportNamespaceSpecifier").bases("ModuleSpecifier").build("local"),e("ImportDeclaration").bases("Declaration").build("specifiers","source","importKind").field("specifiers",[t(e("ImportSpecifier"),e("ImportNamespaceSpecifier"),e("ImportDefaultSpecifier"))],s.emptyArray).field("source",e("Literal")).field("importKind",t("value","type"),function(){return"value"}),e("ExportNamedDeclaration").bases("Declaration").build("declaration","specifiers","source").field("declaration",t(e("Declaration"),null)).field("specifiers",[e("ExportSpecifier")],s.emptyArray).field("source",t(e("Literal"),null),s.null),e("ExportSpecifier").bases("ModuleSpecifier").build("local","exported").field("exported",e("Identifier")),e("ExportDefaultDeclaration").bases("Declaration").build("declaration").field("declaration",t(e("Declaration"),e("Expression"))),e("ExportAllDeclaration").bases("Declaration").build("source").field("source",e("Literal")),e("TaggedTemplateExpression").bases("Expression").build("tag","quasi").field("tag",e("Expression")).field("quasi",e("TemplateLiteral")),e("TemplateLiteral").bases("Expression").build("quasis","expressions").field("quasis",[e("TemplateElement")]).field("expressions",[e("Expression")]),e("TemplateElement").bases("Node").build("value","tail").field("value",{cooked:String,raw:String}).field("tail",Boolean),e("MetaProperty").bases("Expression").build("meta","property").field("meta",e("Identifier")).field("property",e("Identifier"))}z(()=>module);function Ql(r){r.use(zi),r.use(Xl)}z(()=>module);function Yl(r){r.use(Ql);let e=r.use(J).Type.def,t=r.use(ue).defaults;e("Function").field("async",Boolean,t.false),e("AwaitExpression").bases("Expression").build("argument").field("argument",e("Expression"))}z(()=>module);function Zl(r){r.use(Yl);let n=r.use(J),e=n.Type.def,t=n.Type.or,s=r.use(ue).defaults;e("ForOfStatement").field("await",Boolean,s.false),e("SpreadProperty").bases("Node").build("argument").field("argument",e("Expression")),e("ObjectExpression").field("properties",[t(e("Property"),e("SpreadProperty"),e("SpreadElement"))]),e("TemplateElement").field("value",{cooked:t(String,null),raw:String}),e("SpreadPropertyPattern").bases("Pattern").build("argument").field("argument",e("Pattern")),e("ObjectPattern").field("properties",[t(e("PropertyPattern"),e("Property"),e("RestElement"),e("SpreadPropertyPattern"))])}z(()=>module);function ec(r){r.use(Zl);let n=r.use(J),e=n.Type.def,t=n.Type.or,s=r.use(ue).defaults;e("CatchClause").field("param",t(e("Pattern"),null),s.null)}z(()=>module);function tc(r){r.use($i),r.use(ec);let n=r.use(J),e=n.Type.def,t=n.Type.or,i=r.use(ue).defaults;e("ImportExpression").bases("Expression").build("source").field("source",e("Expression")),e("ExportAllDeclaration").bases("Declaration").build("source","exported").field("source",e("Literal")).field("exported",t(e("Identifier"),null,void 0),i.null),e("ChainElement").bases("Node").field("optional",Boolean,i.false),e("CallExpression").bases("Expression","ChainElement"),e("MemberExpression").bases("Expression","ChainElement"),e("ChainExpression").bases("Expression").build("expression").field("expression",e("ChainElement")),e("OptionalCallExpression").bases("CallExpression").build("callee","arguments","optional").field("optional",Boolean,i.true),e("OptionalMemberExpression").bases("MemberExpression").build("object","property","computed","optional").field("optional",Boolean,i.true)}z(()=>module);function nc(r){r.use(Kl),r.use(tc)}z(()=>module);function sc(r){r.use(nc);let e=r.use(J).Type.def;e("StaticBlock").bases("Declaration").build("body").field("body",[e("Statement")])}z(()=>module);function tn(r){r.use(sc);let n=r.use(J),e=n.Type,t=n.Type.def,s=e.or,a=r.use(ue).defaults;t("AwaitExpression").build("argument","all").field("argument",s(t("Expression"),null)).field("all",Boolean,a.false),t("Decorator").bases("Node").build("expression").field("expression",t("Expression")),t("Property").field("decorators",s([t("Decorator")],null),a.null),t("MethodDefinition").field("decorators",s([t("Decorator")],null),a.null),t("PrivateName").bases("Expression","Pattern").build("id").field("id",t("Identifier")),t("ClassPrivateProperty").bases("ClassProperty").build("key","value").field("key",t("PrivateName")).field("value",s(t("Expression"),null),a.null),t("ImportAttribute").bases("Node").build("key","value").field("key",s(t("Identifier"),t("Literal"))).field("value",t("Expression")),["ImportDeclaration","ExportAllDeclaration","ExportNamedDeclaration"].forEach(o=>{t(o).field("assertions",[t("ImportAttribute")],a.emptyArray)}),t("RecordExpression").bases("Expression").build("properties").field("properties",[s(t("ObjectProperty"),t("ObjectMethod"),t("SpreadElement"))]),t("TupleExpression").bases("Expression").build("elements").field("elements",[s(t("Expression"),t("SpreadElement"),null)]),t("ModuleExpression").bases("Node").build("body").field("body",t("Program"))}z(()=>module);function rc(r){r.use(tn);let n=r.use(J),e=n.Type.def,t=n.Type.or,s=r.use(ue).defaults;e("JSXAttribute").bases("Node").build("name","value").field("name",t(e("JSXIdentifier"),e("JSXNamespacedName"))).field("value",t(e("Literal"),e("JSXExpressionContainer"),e("JSXElement"),e("JSXFragment"),null),s.null),e("JSXIdentifier").bases("Identifier").build("name").field("name",String),e("JSXNamespacedName").bases("Node").build("namespace","name").field("namespace",e("JSXIdentifier")).field("name",e("JSXIdentifier")),e("JSXMemberExpression").bases("MemberExpression").build("object","property").field("object",t(e("JSXIdentifier"),e("JSXMemberExpression"))).field("property",e("JSXIdentifier")).field("computed",Boolean,s.false);let i=t(e("JSXIdentifier"),e("JSXNamespacedName"),e("JSXMemberExpression"));e("JSXSpreadAttribute").bases("Node").build("argument").field("argument",e("Expression"));let a=[t(e("JSXAttribute"),e("JSXSpreadAttribute"))];e("JSXExpressionContainer").bases("Expression").build("expression").field("expression",t(e("Expression"),e("JSXEmptyExpression")));let o=[t(e("JSXText"),e("JSXExpressionContainer"),e("JSXSpreadChild"),e("JSXElement"),e("JSXFragment"),e("Literal"))];e("JSXElement").bases("Expression").build("openingElement","closingElement","children").field("openingElement",e("JSXOpeningElement")).field("closingElement",t(e("JSXClosingElement"),null),s.null).field("children",o,s.emptyArray).field("name",i,function(){return this.openingElement.name},!0).field("selfClosing",Boolean,function(){return this.openingElement.selfClosing},!0).field("attributes",a,function(){return this.openingElement.attributes},!0),e("JSXOpeningElement").bases("Node").build("name","attributes","selfClosing").field("name",i).field("attributes",a,s.emptyArray).field("selfClosing",Boolean,s.false),e("JSXClosingElement").bases("Node").build("name").field("name",i),e("JSXFragment").bases("Expression").build("openingFragment","closingFragment","children").field("openingFragment",e("JSXOpeningFragment")).field("closingFragment",e("JSXClosingFragment")).field("children",o,s.emptyArray),e("JSXOpeningFragment").bases("Node").build(),e("JSXClosingFragment").bases("Node").build(),e("JSXText").bases("Literal").build("value","raw").field("value",String).field("raw",String,function(){return this.value}),e("JSXEmptyExpression").bases("Node").build(),e("JSXSpreadChild").bases("Node").build("expression").field("expression",e("Expression"))}z(()=>module);function qi(r){var n=r.use(J),e=n.Type.def,t=n.Type.or,s=r.use(ue).defaults,i=t(e("TypeAnnotation"),e("TSTypeAnnotation"),null),a=t(e("TypeParameterDeclaration"),e("TSTypeParameterDeclaration"),null);e("Identifier").field("typeAnnotation",i,s.null),e("ObjectPattern").field("typeAnnotation",i,s.null),e("Function").field("returnType",i,s.null).field("typeParameters",a,s.null),e("ClassProperty").build("key","value","typeAnnotation","static").field("value",t(e("Expression"),null)).field("static",Boolean,s.false).field("typeAnnotation",i,s.null),["ClassDeclaration","ClassExpression"].forEach(o=>{e(o).field("typeParameters",a,s.null).field("superTypeParameters",t(e("TypeParameterInstantiation"),e("TSTypeParameterInstantiation"),null),s.null).field("implements",t([e("ClassImplements")],[e("TSExpressionWithTypeArguments")]),s.emptyArray)})}z(()=>module);function Hi(r){r.use(tn),r.use(qi);let n=r.use(J),e=n.Type.def,t=n.Type.or,s=r.use(ue).defaults;e("Flow").bases("Node"),e("FlowType").bases("Flow"),e("AnyTypeAnnotation").bases("FlowType").build(),e("EmptyTypeAnnotation").bases("FlowType").build(),e("MixedTypeAnnotation").bases("FlowType").build(),e("VoidTypeAnnotation").bases("FlowType").build(),e("SymbolTypeAnnotation").bases("FlowType").build(),e("NumberTypeAnnotation").bases("FlowType").build(),e("BigIntTypeAnnotation").bases("FlowType").build(),e("NumberLiteralTypeAnnotation").bases("FlowType").build("value","raw").field("value",Number).field("raw",String),e("NumericLiteralTypeAnnotation").bases("FlowType").build("value","raw").field("value",Number).field("raw",String),e("BigIntLiteralTypeAnnotation").bases("FlowType").build("value","raw").field("value",null).field("raw",String),e("StringTypeAnnotation").bases("FlowType").build(),e("StringLiteralTypeAnnotation").bases("FlowType").build("value","raw").field("value",String).field("raw",String),e("BooleanTypeAnnotation").bases("FlowType").build(),e("BooleanLiteralTypeAnnotation").bases("FlowType").build("value","raw").field("value",Boolean).field("raw",String),e("TypeAnnotation").bases("Node").build("typeAnnotation").field("typeAnnotation",e("FlowType")),e("NullableTypeAnnotation").bases("FlowType").build("typeAnnotation").field("typeAnnotation",e("FlowType")),e("NullLiteralTypeAnnotation").bases("FlowType").build(),e("NullTypeAnnotation").bases("FlowType").build(),e("ThisTypeAnnotation").bases("FlowType").build(),e("ExistsTypeAnnotation").bases("FlowType").build(),e("ExistentialTypeParam").bases("FlowType").build(),e("FunctionTypeAnnotation").bases("FlowType").build("params","returnType","rest","typeParameters").field("params",[e("FunctionTypeParam")]).field("returnType",e("FlowType")).field("rest",t(e("FunctionTypeParam"),null)).field("typeParameters",t(e("TypeParameterDeclaration"),null)),e("FunctionTypeParam").bases("Node").build("name","typeAnnotation","optional").field("name",t(e("Identifier"),null)).field("typeAnnotation",e("FlowType")).field("optional",Boolean),e("ArrayTypeAnnotation").bases("FlowType").build("elementType").field("elementType",e("FlowType")),e("ObjectTypeAnnotation").bases("FlowType").build("properties","indexers","callProperties").field("properties",[t(e("ObjectTypeProperty"),e("ObjectTypeSpreadProperty"))]).field("indexers",[e("ObjectTypeIndexer")],s.emptyArray).field("callProperties",[e("ObjectTypeCallProperty")],s.emptyArray).field("inexact",t(Boolean,void 0),s.undefined).field("exact",Boolean,s.false).field("internalSlots",[e("ObjectTypeInternalSlot")],s.emptyArray),e("Variance").bases("Node").build("kind").field("kind",t("plus","minus"));let i=t(e("Variance"),"plus","minus",null);e("ObjectTypeProperty").bases("Node").build("key","value","optional").field("key",t(e("Literal"),e("Identifier"))).field("value",e("FlowType")).field("optional",Boolean).field("variance",i,s.null),e("ObjectTypeIndexer").bases("Node").build("id","key","value").field("id",e("Identifier")).field("key",e("FlowType")).field("value",e("FlowType")).field("variance",i,s.null).field("static",Boolean,s.false),e("ObjectTypeCallProperty").bases("Node").build("value").field("value",e("FunctionTypeAnnotation")).field("static",Boolean,s.false),e("QualifiedTypeIdentifier").bases("Node").build("qualification","id").field("qualification",t(e("Identifier"),e("QualifiedTypeIdentifier"))).field("id",e("Identifier")),e("GenericTypeAnnotation").bases("FlowType").build("id","typeParameters").field("id",t(e("Identifier"),e("QualifiedTypeIdentifier"))).field("typeParameters",t(e("TypeParameterInstantiation"),null)),e("MemberTypeAnnotation").bases("FlowType").build("object","property").field("object",e("Identifier")).field("property",t(e("MemberTypeAnnotation"),e("GenericTypeAnnotation"))),e("IndexedAccessType").bases("FlowType").build("objectType","indexType").field("objectType",e("FlowType")).field("indexType",e("FlowType")),e("OptionalIndexedAccessType").bases("FlowType").build("objectType","indexType","optional").field("objectType",e("FlowType")).field("indexType",e("FlowType")).field("optional",Boolean),e("UnionTypeAnnotation").bases("FlowType").build("types").field("types",[e("FlowType")]),e("IntersectionTypeAnnotation").bases("FlowType").build("types").field("types",[e("FlowType")]),e("TypeofTypeAnnotation").bases("FlowType").build("argument").field("argument",e("FlowType")),e("ObjectTypeSpreadProperty").bases("Node").build("argument").field("argument",e("FlowType")),e("ObjectTypeInternalSlot").bases("Node").build("id","value","optional","static","method").field("id",e("Identifier")).field("value",e("FlowType")).field("optional",Boolean).field("static",Boolean).field("method",Boolean),e("TypeParameterDeclaration").bases("Node").build("params").field("params",[e("TypeParameter")]),e("TypeParameterInstantiation").bases("Node").build("params").field("params",[e("FlowType")]),e("TypeParameter").bases("FlowType").build("name","variance","bound","default").field("name",String).field("variance",i,s.null).field("bound",t(e("TypeAnnotation"),null),s.null).field("default",t(e("FlowType"),null),s.null),e("ClassProperty").field("variance",i,s.null),e("ClassImplements").bases("Node").build("id").field("id",e("Identifier")).field("superClass",t(e("Expression"),null),s.null).field("typeParameters",t(e("TypeParameterInstantiation"),null),s.null),e("InterfaceTypeAnnotation").bases("FlowType").build("body","extends").field("body",e("ObjectTypeAnnotation")).field("extends",t([e("InterfaceExtends")],null),s.null),e("InterfaceDeclaration").bases("Declaration").build("id","body","extends").field("id",e("Identifier")).field("typeParameters",t(e("TypeParameterDeclaration"),null),s.null).field("body",e("ObjectTypeAnnotation")).field("extends",[e("InterfaceExtends")]),e("DeclareInterface").bases("InterfaceDeclaration").build("id","body","extends"),e("InterfaceExtends").bases("Node").build("id").field("id",e("Identifier")).field("typeParameters",t(e("TypeParameterInstantiation"),null),s.null),e("TypeAlias").bases("Declaration").build("id","typeParameters","right").field("id",e("Identifier")).field("typeParameters",t(e("TypeParameterDeclaration"),null)).field("right",e("FlowType")),e("DeclareTypeAlias").bases("TypeAlias").build("id","typeParameters","right"),e("OpaqueType").bases("Declaration").build("id","typeParameters","impltype","supertype").field("id",e("Identifier")).field("typeParameters",t(e("TypeParameterDeclaration"),null)).field("impltype",e("FlowType")).field("supertype",t(e("FlowType"),null)),e("DeclareOpaqueType").bases("OpaqueType").build("id","typeParameters","supertype").field("impltype",t(e("FlowType"),null)),e("TypeCastExpression").bases("Expression").build("expression","typeAnnotation").field("expression",e("Expression")).field("typeAnnotation",e("TypeAnnotation")),e("TupleTypeAnnotation").bases("FlowType").build("types").field("types",[e("FlowType")]),e("DeclareVariable").bases("Statement").build("id").field("id",e("Identifier")),e("DeclareFunction").bases("Statement").build("id").field("id",e("Identifier")).field("predicate",t(e("FlowPredicate"),null),s.null),e("DeclareClass").bases("InterfaceDeclaration").build("id"),e("DeclareModule").bases("Statement").build("id","body").field("id",t(e("Identifier"),e("Literal"))).field("body",e("BlockStatement")),e("DeclareModuleExports").bases("Statement").build("typeAnnotation").field("typeAnnotation",e("TypeAnnotation")),e("DeclareExportDeclaration").bases("Declaration").build("default","declaration","specifiers","source").field("default",Boolean).field("declaration",t(e("DeclareVariable"),e("DeclareFunction"),e("DeclareClass"),e("FlowType"),e("TypeAlias"),e("DeclareOpaqueType"),e("InterfaceDeclaration"),null)).field("specifiers",[t(e("ExportSpecifier"),e("ExportBatchSpecifier"))],s.emptyArray).field("source",t(e("Literal"),null),s.null),e("DeclareExportAllDeclaration").bases("Declaration").build("source").field("source",t(e("Literal"),null),s.null),e("ImportDeclaration").field("importKind",t("value","type","typeof"),()=>"value"),e("FlowPredicate").bases("Flow"),e("InferredPredicate").bases("FlowPredicate").build(),e("DeclaredPredicate").bases("FlowPredicate").build("value").field("value",e("Expression")),e("Function").field("predicate",t(e("FlowPredicate"),null),s.null),e("CallExpression").field("typeArguments",t(null,e("TypeParameterInstantiation")),s.null),e("NewExpression").field("typeArguments",t(null,e("TypeParameterInstantiation")),s.null),e("EnumDeclaration").bases("Declaration").build("id","body").field("id",e("Identifier")).field("body",t(e("EnumBooleanBody"),e("EnumNumberBody"),e("EnumStringBody"),e("EnumSymbolBody"))),e("EnumBooleanBody").build("members","explicitType").field("members",[e("EnumBooleanMember")]).field("explicitType",Boolean),e("EnumNumberBody").build("members","explicitType").field("members",[e("EnumNumberMember")]).field("explicitType",Boolean),e("EnumStringBody").build("members","explicitType").field("members",t([e("EnumStringMember")],[e("EnumDefaultedMember")])).field("explicitType",Boolean),e("EnumSymbolBody").build("members").field("members",[e("EnumDefaultedMember")]),e("EnumBooleanMember").build("id","init").field("id",e("Identifier")).field("init",t(e("Literal"),Boolean)),e("EnumNumberMember").build("id","init").field("id",e("Identifier")).field("init",e("Literal")),e("EnumStringMember").build("id","init").field("id",e("Identifier")).field("init",e("Literal")),e("EnumDefaultedMember").build("id").field("id",e("Identifier"))}z(()=>module);function ic(r){r.use(tn);var n=r.use(J),e=r.use(ue).defaults,t=n.Type.def,s=n.Type.or;t("VariableDeclaration").field("declarations",[s(t("VariableDeclarator"),t("Identifier"))]),t("Property").field("value",s(t("Expression"),t("Pattern"))),t("ArrayPattern").field("elements",[s(t("Pattern"),t("SpreadElement"),null)]),t("ObjectPattern").field("properties",[s(t("Property"),t("PropertyPattern"),t("SpreadPropertyPattern"),t("SpreadProperty"))]),t("ExportSpecifier").bases("ModuleSpecifier").build("id","name"),t("ExportBatchSpecifier").bases("Specifier").build(),t("ExportDeclaration").bases("Declaration").build("default","declaration","specifiers","source").field("default",Boolean).field("declaration",s(t("Declaration"),t("Expression"),null)).field("specifiers",[s(t("ExportSpecifier"),t("ExportBatchSpecifier"))],e.emptyArray).field("source",s(t("Literal"),null),e.null),t("Block").bases("Comment").build("value","leading","trailing"),t("Line").bases("Comment").build("value","leading","trailing")}z(()=>module);function Wi(r){r.use(tn);let n=r.use(J),e=r.use(ue).defaults,t=n.Type.def,s=n.Type.or,{undefined:i}=n.builtInTypes;t("Noop").bases("Statement").build(),t("DoExpression").bases("Expression").build("body").field("body",[t("Statement")]),t("BindExpression").bases("Expression").build("object","callee").field("object",s(t("Expression"),null)).field("callee",t("Expression")),t("ParenthesizedExpression").bases("Expression").build("expression").field("expression",t("Expression")),t("ExportNamespaceSpecifier").bases("Specifier").build("exported").field("exported",t("Identifier")),t("ExportDefaultSpecifier").bases("Specifier").build("exported").field("exported",t("Identifier")),t("CommentBlock").bases("Comment").build("value","leading","trailing"),t("CommentLine").bases("Comment").build("value","leading","trailing"),t("Directive").bases("Node").build("value").field("value",t("DirectiveLiteral")),t("DirectiveLiteral").bases("Node","Expression").build("value").field("value",String,e["use strict"]),t("InterpreterDirective").bases("Node").build("value").field("value",String),t("BlockStatement").bases("Statement").build("body").field("body",[t("Statement")]).field("directives",[t("Directive")],e.emptyArray),t("Program").bases("Node").build("body").field("body",[t("Statement")]).field("directives",[t("Directive")],e.emptyArray).field("interpreter",s(t("InterpreterDirective"),null),e.null);function a(p=String,u){return["extra",{rawValue:p,raw:String},function(){let m=n.getFieldValue(this,"value");return{rawValue:m,raw:u?u(m):String(m)}}]}t("StringLiteral").bases("Literal").build("value").field("value",String).field(...a(String,p=>JSON.stringify(p))),t("NumericLiteral").bases("Literal").build("value").field("value",Number).field("raw",s(String,null),e.null).field(...a(Number)),t("BigIntLiteral").bases("Literal").build("value").field("value",s(String,Number)).field(...a(String,p=>p+"n")),t("DecimalLiteral").bases("Literal").build("value").field("value",String).field(...a(String,p=>p+"m")),t("NullLiteral").bases("Literal").build().field("value",null,e.null),t("BooleanLiteral").bases("Literal").build("value").field("value",Boolean),t("RegExpLiteral").bases("Literal").build("pattern","flags").field("pattern",String).field("flags",String).field("value",RegExp,function(){return new RegExp(this.pattern,this.flags)}).field(...a(s(RegExp,i),p=>`/${p.pattern}/${p.flags||""}`)).field("regex",{pattern:String,flags:String},function(){return{pattern:this.pattern,flags:this.flags}});var o=s(t("Property"),t("ObjectMethod"),t("ObjectProperty"),t("SpreadProperty"),t("SpreadElement"));t("ObjectExpression").bases("Expression").build("properties").field("properties",[o]),t("ObjectMethod").bases("Node","Function").build("kind","key","params","body","computed").field("kind",s("method","get","set")).field("key",s(t("Literal"),t("Identifier"),t("Expression"))).field("params",[t("Pattern")]).field("body",t("BlockStatement")).field("computed",Boolean,e.false).field("generator",Boolean,e.false).field("async",Boolean,e.false).field("accessibility",s(t("Literal"),null),e.null).field("decorators",s([t("Decorator")],null),e.null),t("ObjectProperty").bases("Node").build("key","value").field("key",s(t("Literal"),t("Identifier"),t("Expression"))).field("value",s(t("Expression"),t("Pattern"))).field("accessibility",s(t("Literal"),null),e.null).field("computed",Boolean,e.false);var l=s(t("MethodDefinition"),t("VariableDeclarator"),t("ClassPropertyDefinition"),t("ClassProperty"),t("ClassPrivateProperty"),t("ClassMethod"),t("ClassPrivateMethod"),t("ClassAccessorProperty"),t("StaticBlock"));t("ClassBody").bases("Declaration").build("body").field("body",[l]),t("ClassMethod").bases("Declaration","Function").build("kind","key","params","body","computed","static").field("key",s(t("Literal"),t("Identifier"),t("Expression"))),t("ClassPrivateMethod").bases("Declaration","Function").build("key","params","body","kind","computed","static").field("key",t("PrivateName")),t("ClassAccessorProperty").bases("Declaration").build("key","value","decorators","computed","static").field("key",s(t("Literal"),t("Identifier"),t("PrivateName"),t("Expression"))).field("value",s(t("Expression"),null),e.null),["ClassMethod","ClassPrivateMethod"].forEach(p=>{t(p).field("kind",s("get","set","method","constructor"),()=>"method").field("body",t("BlockStatement")).field("access",s("public","private","protected",null),e.null)}),["ClassMethod","ClassPrivateMethod","ClassAccessorProperty"].forEach(p=>{t(p).field("computed",Boolean,e.false).field("static",Boolean,e.false).field("abstract",Boolean,e.false).field("accessibility",s("public","private","protected",null),e.null).field("decorators",s([t("Decorator")],null),e.null).field("definite",Boolean,e.false).field("optional",Boolean,e.false).field("override",Boolean,e.false).field("readonly",Boolean,e.false)});var c=s(t("Property"),t("PropertyPattern"),t("SpreadPropertyPattern"),t("SpreadProperty"),t("ObjectProperty"),t("RestProperty"),t("RestElement"));t("ObjectPattern").bases("Pattern").build("properties").field("properties",[c]).field("decorators",s([t("Decorator")],null),e.null),t("SpreadProperty").bases("Node").build("argument").field("argument",t("Expression")),t("RestProperty").bases("Node").build("argument").field("argument",t("Expression")),t("ForAwaitStatement").bases("Statement").build("left","right","body").field("left",s(t("VariableDeclaration"),t("Expression"))).field("right",t("Expression")).field("body",t("Statement")),t("Import").bases("Expression").build()}z(()=>module);function ac(r){let e=r.use(J).Type.def;r.use(Wi),r.use(Hi),e("V8IntrinsicIdentifier").bases("Expression").build("name").field("name",String),e("TopicReference").bases("Expression").build()}z(()=>module);function oc(r){r.use(Wi),r.use(qi);var n=r.use(J),e=n.namedTypes,t=n.Type.def,s=n.Type.or,i=r.use(ue).defaults,a=n.Type.from(function(p,u){return!!(e.StringLiteral&&e.StringLiteral.check(p,u)||e.Literal&&e.Literal.check(p,u)&&typeof p.value=="string")},"StringLiteral");t("TSType").bases("Node");var o=s(t("Identifier"),t("TSQualifiedName"));t("TSTypeReference").bases("TSType","TSHasOptionalTypeParameterInstantiation").build("typeName","typeParameters").field("typeName",o),t("TSHasOptionalTypeParameterInstantiation").field("typeParameters",s(t("TSTypeParameterInstantiation"),null),i.null),t("TSHasOptionalTypeParameters").field("typeParameters",s(t("TSTypeParameterDeclaration"),null,void 0),i.null),t("TSHasOptionalTypeAnnotation").field("typeAnnotation",s(t("TSTypeAnnotation"),null),i.null),t("TSQualifiedName").bases("Node").build("left","right").field("left",o).field("right",o),t("TSAsExpression").bases("Expression","Pattern").build("expression","typeAnnotation").field("expression",t("Expression")).field("typeAnnotation",t("TSType")).field("extra",s({parenthesized:Boolean},null),i.null),t("TSTypeCastExpression").bases("Expression").build("expression","typeAnnotation").field("expression",t("Expression")).field("typeAnnotation",t("TSType")),t("TSSatisfiesExpression").bases("Expression","Pattern").build("expression","typeAnnotation").field("expression",t("Expression")).field("typeAnnotation",t("TSType")),t("TSNonNullExpression").bases("Expression","Pattern").build("expression").field("expression",t("Expression")),["TSAnyKeyword","TSBigIntKeyword","TSBooleanKeyword","TSNeverKeyword","TSNullKeyword","TSNumberKeyword","TSObjectKeyword","TSStringKeyword","TSSymbolKeyword","TSUndefinedKeyword","TSUnknownKeyword","TSVoidKeyword","TSIntrinsicKeyword","TSThisType"].forEach(p=>{t(p).bases("TSType").build()}),t("TSArrayType").bases("TSType").build("elementType").field("elementType",t("TSType")),t("TSLiteralType").bases("TSType").build("literal").field("literal",s(t("NumericLiteral"),t("StringLiteral"),t("BooleanLiteral"),t("TemplateLiteral"),t("UnaryExpression"),t("BigIntLiteral"))),t("TemplateLiteral").field("expressions",s([t("Expression")],[t("TSType")])),["TSUnionType","TSIntersectionType"].forEach(p=>{t(p).bases("TSType").build("types").field("types",[t("TSType")])}),t("TSConditionalType").bases("TSType").build("checkType","extendsType","trueType","falseType").field("checkType",t("TSType")).field("extendsType",t("TSType")).field("trueType",t("TSType")).field("falseType",t("TSType")),t("TSInferType").bases("TSType").build("typeParameter").field("typeParameter",t("TSTypeParameter")),t("TSParenthesizedType").bases("TSType").build("typeAnnotation").field("typeAnnotation",t("TSType"));var l=[s(t("Identifier"),t("RestElement"),t("ArrayPattern"),t("ObjectPattern"))];["TSFunctionType","TSConstructorType"].forEach(p=>{t(p).bases("TSType","TSHasOptionalTypeParameters","TSHasOptionalTypeAnnotation").build("parameters").field("parameters",l)}),t("TSDeclareFunction").bases("Declaration","TSHasOptionalTypeParameters").build("id","params","returnType").field("declare",Boolean,i.false).field("async",Boolean,i.false).field("generator",Boolean,i.false).field("id",s(t("Identifier"),null),i.null).field("params",[t("Pattern")]).field("returnType",s(t("TSTypeAnnotation"),t("Noop"),null),i.null),t("TSDeclareMethod").bases("Declaration","TSHasOptionalTypeParameters").build("key","params","returnType").field("async",Boolean,i.false).field("generator",Boolean,i.false).field("params",[t("Pattern")]).field("abstract",Boolean,i.false).field("accessibility",s("public","private","protected",void 0),i.undefined).field("static",Boolean,i.false).field("computed",Boolean,i.false).field("optional",Boolean,i.false).field("key",s(t("Identifier"),t("StringLiteral"),t("NumericLiteral"),t("Expression"))).field("kind",s("get","set","method","constructor"),function(){return"method"}).field("access",s("public","private","protected",void 0),i.undefined).field("decorators",s([t("Decorator")],null),i.null).field("returnType",s(t("TSTypeAnnotation"),t("Noop"),null),i.null),t("TSMappedType").bases("TSType").build("typeParameter","typeAnnotation").field("readonly",s(Boolean,"+","-"),i.false).field("typeParameter",t("TSTypeParameter")).field("optional",s(Boolean,"+","-"),i.false).field("typeAnnotation",s(t("TSType"),null),i.null),t("TSTupleType").bases("TSType").build("elementTypes").field("elementTypes",[s(t("TSType"),t("TSNamedTupleMember"))]),t("TSNamedTupleMember").bases("TSType").build("label","elementType","optional").field("label",t("Identifier")).field("optional",Boolean,i.false).field("elementType",t("TSType")),t("TSRestType").bases("TSType").build("typeAnnotation").field("typeAnnotation",t("TSType")),t("TSOptionalType").bases("TSType").build("typeAnnotation").field("typeAnnotation",t("TSType")),t("TSIndexedAccessType").bases("TSType").build("objectType","indexType").field("objectType",t("TSType")).field("indexType",t("TSType")),t("TSTypeOperator").bases("TSType").build("operator").field("operator",String).field("typeAnnotation",t("TSType")),t("TSTypeAnnotation").bases("Node").build("typeAnnotation").field("typeAnnotation",s(t("TSType"),t("TSTypeAnnotation"))),t("TSIndexSignature").bases("Declaration","TSHasOptionalTypeAnnotation").build("parameters","typeAnnotation").field("parameters",[t("Identifier")]).field("readonly",Boolean,i.false),t("TSPropertySignature").bases("Declaration","TSHasOptionalTypeAnnotation").build("key","typeAnnotation","optional").field("key",t("Expression")).field("computed",Boolean,i.false).field("readonly",Boolean,i.false).field("optional",Boolean,i.false).field("initializer",s(t("Expression"),null),i.null),t("TSMethodSignature").bases("Declaration","TSHasOptionalTypeParameters","TSHasOptionalTypeAnnotation").build("key","parameters","typeAnnotation").field("key",t("Expression")).field("computed",Boolean,i.false).field("optional",Boolean,i.false).field("parameters",l),t("TSTypePredicate").bases("TSTypeAnnotation","TSType").build("parameterName","typeAnnotation","asserts").field("parameterName",s(t("Identifier"),t("TSThisType"))).field("typeAnnotation",s(t("TSTypeAnnotation"),null),i.null).field("asserts",Boolean,i.false),["TSCallSignatureDeclaration","TSConstructSignatureDeclaration"].forEach(p=>{t(p).bases("Declaration","TSHasOptionalTypeParameters","TSHasOptionalTypeAnnotation").build("parameters","typeAnnotation").field("parameters",l)}),t("TSEnumMember").bases("Node").build("id","initializer").field("id",s(t("Identifier"),a)).field("initializer",s(t("Expression"),null),i.null),t("TSTypeQuery").bases("TSType").build("exprName").field("exprName",s(o,t("TSImportType")));var c=s(t("TSCallSignatureDeclaration"),t("TSConstructSignatureDeclaration"),t("TSIndexSignature"),t("TSMethodSignature"),t("TSPropertySignature"));t("TSTypeLiteral").bases("TSType").build("members").field("members",[c]),t("TSTypeParameter").bases("Identifier").build("name","constraint","default").field("name",s(t("Identifier"),String)).field("constraint",s(t("TSType"),void 0),i.undefined).field("default",s(t("TSType"),void 0),i.undefined),t("TSTypeAssertion").bases("Expression","Pattern").build("typeAnnotation","expression").field("typeAnnotation",t("TSType")).field("expression",t("Expression")).field("extra",s({parenthesized:Boolean},null),i.null),t("TSTypeParameterDeclaration").bases("Declaration").build("params").field("params",[t("TSTypeParameter")]),t("TSInstantiationExpression").bases("Expression","TSHasOptionalTypeParameterInstantiation").build("expression","typeParameters").field("expression",t("Expression")),t("TSTypeParameterInstantiation").bases("Node").build("params").field("params",[t("TSType")]),t("TSEnumDeclaration").bases("Declaration").build("id","members").field("id",t("Identifier")).field("const",Boolean,i.false).field("declare",Boolean,i.false).field("members",[t("TSEnumMember")]).field("initializer",s(t("Expression"),null),i.null),t("TSTypeAliasDeclaration").bases("Declaration","TSHasOptionalTypeParameters").build("id","typeAnnotation").field("id",t("Identifier")).field("declare",Boolean,i.false).field("typeAnnotation",t("TSType")),t("TSModuleBlock").bases("Node").build("body").field("body",[t("Statement")]),t("TSModuleDeclaration").bases("Declaration").build("id","body").field("id",s(a,o)).field("declare",Boolean,i.false).field("global",Boolean,i.false).field("body",s(t("TSModuleBlock"),t("TSModuleDeclaration"),null),i.null),t("TSImportType").bases("TSType","TSHasOptionalTypeParameterInstantiation").build("argument","qualifier","typeParameters").field("argument",a).field("qualifier",s(o,void 0),i.undefined),t("TSImportEqualsDeclaration").bases("Declaration").build("id","moduleReference").field("id",t("Identifier")).field("isExport",Boolean,i.false).field("moduleReference",s(o,t("TSExternalModuleReference"))),t("TSExternalModuleReference").bases("Declaration").build("expression").field("expression",a),t("TSExportAssignment").bases("Statement").build("expression").field("expression",t("Expression")),t("TSNamespaceExportDeclaration").bases("Declaration").build("id").field("id",t("Identifier")),t("TSInterfaceBody").bases("Node").build("body").field("body",[c]),t("TSExpressionWithTypeArguments").bases("TSType","TSHasOptionalTypeParameterInstantiation").build("expression","typeParameters").field("expression",o),t("TSInterfaceDeclaration").bases("Declaration","TSHasOptionalTypeParameters").build("id","body").field("id",o).field("declare",Boolean,i.false).field("extends",s([t("TSExpressionWithTypeArguments")],null),i.null).field("body",t("TSInterfaceBody")),t("TSParameterProperty").bases("Pattern").build("parameter").field("accessibility",s("public","private","protected",void 0),i.undefined).field("readonly",Boolean,i.false).field("parameter",s(t("Identifier"),t("AssignmentPattern"))),t("ClassProperty").field("access",s("public","private","protected",void 0),i.undefined),t("ClassAccessorProperty").bases("Declaration","TSHasOptionalTypeAnnotation"),t("ClassBody").field("body",[s(t("MethodDefinition"),t("VariableDeclarator"),t("ClassPropertyDefinition"),t("ClassProperty"),t("ClassPrivateProperty"),t("ClassAccessorProperty"),t("ClassMethod"),t("ClassPrivateMethod"),t("StaticBlock"),t("TSDeclareMethod"),c)])}z(()=>module);var we;we||(we={});var{astNodesAreEquivalent:Uu,builders:nn,builtInTypes:Ce,defineMethod:_u,eachField:Ru,finalize:Bu,getBuilderName:ju,getFieldNames:lc,getFieldValue:je,getSupertypeNames:Vu,namedTypes:cc,NodePath:pc,Path:zu,PathVisitor:$u,someField:uc,Type:qu,use:Hu,visit:Wu}=Wl([tn,rc,Hi,ic,ac,oc]);Object.assign(we,cc);var Cn=we,wi=_n.default.SourceMapConsumer,dc=_n.default.SourceMapGenerator,Gi=Object.prototype.hasOwnProperty;function fc(){return`
9617
+ `}function Ci(r,n,e){return r&&Gi.call(r,n)?r[n]:e}function hc(...r){let n={},e=r.length;for(let t=0;t<e;++t){let s=Object.keys(r[t]),i=s.length;for(let a=0;a<i;++a)n[s[a]]=!0}return n}function j(r,n){return r.line-n.line||r.column-n.column}function Ge(r){return{line:r.line,column:r.column}}function mc(r,n){if(r){if(!n)return r}else return n||null;let e=new wi(r),t=new wi(n),s=new dc({file:n.file,sourceRoot:n.sourceRoot}),i={};return t.eachMapping(function(a){let o=e.originalPositionFor({line:a.originalLine,column:a.originalColumn}),l=o.source;if(l===null)return;s.addMapping({source:l,original:Ge(o),generated:{line:a.generatedLine,column:a.generatedColumn},name:a.name});let c=e.sourceContentFor(l);c&&!Gi.call(i,l)&&(i[l]=c,s.setSourceContent(l,c))}),s.toJSON()}function Ki(r,n){if(!r.loc)return null;let e={start:r.loc.start,end:r.loc.end};function t(s){Xs(e,s.loc)}return r.declaration&&r.declaration.decorators&&Rn(r)&&r.declaration.decorators.forEach(t),j(e.start,e.end)<0&&(e.start=Ge(e.start),n.skipSpaces(e.start,!1,!0),j(e.start,e.end)<0&&(e.end=Ge(e.end),n.skipSpaces(e.end,!0,!0))),r.comments&&r.comments.forEach(t),e}function Xs(r,n){r&&n&&(j(n.start,r.start)<0&&(r.start=n.start),j(r.end,n.end)<0&&(r.end=n.end))}function ar(r,n){let e=r.loc;if(e&&(e.start.line<1&&(e.start.line=1),e.end.line<1&&(e.end.line=1)),r.type==="File"&&(e.start=n.firstPos(),e.end=n.lastPos()),bc(r,n),gc(r,n),e&&r.decorators)r.decorators.forEach(function(t){Xs(e,t.loc)});else if(r.declaration&&Rn(r)){r.declaration.loc=null;let t=r.declaration.decorators;t&&t.forEach(function(s){Xs(e,s.loc)})}else if(Cn.MethodDefinition&&Cn.MethodDefinition.check(r)||Cn.Property.check(r)&&(r.method||r.shorthand))r.value.loc=null,Cn.FunctionExpression.check(r.value)&&(r.value.id=null);else if(r.type==="ObjectTypeProperty"){let t=r.loc,s=t&&t.end;s&&(s=Ge(s),n.prevPos(s)&&n.charAt(s)===","&&(s=n.skipSpaces(s,!0,!0))&&(t.end=s))}}function bc(r,n){if(r.type!=="ForStatement")return;function e(t){let s=t&&t.loc,i=s&&s.start,a=s&&Ge(s.end);for(;i&&a&&j(i,a)<0&&(n.prevPos(a),n.charAt(a)===";");)s.end.line=a.line,s.end.column=a.column}e(r.init),e(r.test),e(r.update)}function gc(r,n){if(r.type==="TemplateLiteral"&&r.quasis.length!==0){if(r.loc){let e=Ge(r.loc.start),t=r.quasis[0];j(t.loc.start,e)<0&&(t.loc.start=e);let s=Ge(r.loc.end),i=r.quasis[r.quasis.length-1];j(s,i.loc.end)<0&&(i.loc.end=s)}r.expressions.forEach(function(e,t){let s=n.skipSpaces(e.loc.start,!0,!1);if(n.prevPos(s)&&n.charAt(s)==="{"&&n.prevPos(s)&&n.charAt(s)==="$"){let a=r.quasis[t];j(s,a.loc.end)<0&&(a.loc.end=s)}let i=n.skipSpaces(e.loc.end,!1,!1);if(n.charAt(i)==="}"){let a=r.quasis[t+1];j(a.loc.start,i)<0&&(a.loc.start=i)}})}}function Rn(r){if(r)switch(r.type){case"ExportDeclaration":case"ExportDefaultDeclaration":case"ExportDefaultSpecifier":case"DeclareExportDeclaration":case"ExportNamedDeclaration":case"ExportAllDeclaration":return!0}return!1}function Ji(r){let n=r.getParentNode();return r.getName()==="declaration"&&Rn(n)?n:null}function Xt(r,n){let e=r.trailingComma;return typeof e=="object"?!!e[n]:!!e}var Qs={tabWidth:4,useTabs:!1,reuseWhitespace:!0,lineTerminator:fc(),wrapColumn:74,sourceFileName:null,sourceMapName:null,sourceRoot:null,inputSourceMap:null,range:!1,tolerant:!0,quote:null,trailingComma:!1,arrayBracketSpacing:!1,objectCurlySpacing:!0,arrowParensAlways:!1,flowObjectCommas:!0,tokens:!0},yc=Qs.hasOwnProperty;function Bn(r){let n=r||Qs;function e(t){return yc.call(n,t)?n[t]:Qs[t]}return{tabWidth:+e("tabWidth"),useTabs:!!e("useTabs"),reuseWhitespace:!!e("reuseWhitespace"),lineTerminator:e("lineTerminator"),wrapColumn:Math.max(e("wrapColumn"),0),sourceFileName:e("sourceFileName"),sourceMapName:e("sourceMapName"),sourceRoot:e("sourceRoot"),inputSourceMap:e("inputSourceMap"),parser:e("esprima")||e("parser"),range:e("range"),tolerant:e("tolerant"),quote:e("quote"),trailingComma:e("trailingComma"),arrayBracketSpacing:e("arrayBracketSpacing"),objectCurlySpacing:e("objectCurlySpacing"),arrowParensAlways:e("arrowParensAlways"),flowObjectCommas:e("flowObjectCommas"),tokens:!!e("tokens")}}var Ys=class r{constructor(n,e,t=e){this.sourceLines=n,this.sourceLoc=e,this.targetLoc=t}slice(n,e,t=n.lastPos()){let s=this.sourceLines,i=this.sourceLoc,a=this.targetLoc;function o(l){let c=i[l],p=a[l],u=e;return l==="end"&&(u=t),vc(s,c,n,p,u)}if(j(e,a.start)<=0)if(j(a.end,t)<=0)a={start:We(a.start,e.line,e.column),end:We(a.end,e.line,e.column)};else{if(j(t,a.start)<=0)return null;i={start:i.start,end:o("end")},a={start:We(a.start,e.line,e.column),end:We(t,e.line,e.column)}}else{if(j(a.end,e)<=0)return null;j(a.end,t)<=0?(i={start:o("start"),end:i.end},a={start:{line:1,column:0},end:We(a.end,e.line,e.column)}):(i={start:o("start"),end:o("end")},a={start:{line:1,column:0},end:We(t,e.line,e.column)})}return new r(this.sourceLines,i,a)}add(n,e){return new r(this.sourceLines,this.sourceLoc,{start:Si(this.targetLoc.start,n,e),end:Si(this.targetLoc.end,n,e)})}subtract(n,e){return new r(this.sourceLines,this.sourceLoc,{start:We(this.targetLoc.start,n,e),end:We(this.targetLoc.end,n,e)})}indent(n,e=!1,t=!1){if(n===0)return this;let s=this.targetLoc,i=s.start.line,a=s.end.line;if(e&&i===1&&a===1)return this;if(s={start:s.start,end:s.end},!e||i>1){let o=s.start.column+n;s.start={line:i,column:t?Math.max(0,o):o}}if(!e||a>1){let o=s.end.column+n;s.end={line:a,column:t?Math.max(0,o):o}}return new r(this.sourceLines,this.sourceLoc,s)}};function Si(r,n,e){return{line:r.line+n-1,column:r.line===1?r.column+e:r.column}}function We(r,n,e){return{line:r.line-n+1,column:r.line===n?r.column-e:r.column}}function vc(r,n,e,t,s){let i=j(t,s);if(i===0)return n;let a,o;if(i<0){a=r.skipSpaces(n)||r.lastPos(),o=e.skipSpaces(t)||e.lastPos();let l=s.line-o.line;for(a.line+=l,o.line+=l,l>0&&(a.column=0,o.column=0);j(o,s)<0&&e.nextPos(o,!0););}else{a=r.skipSpaces(n,!0)||r.firstPos(),o=e.skipSpaces(t,!0)||e.firstPos();let l=s.line-o.line;for(a.line+=l,o.line+=l,l<0&&(a.column=r.getLineLength(a.line),o.column=e.getLineLength(o.line));j(s,o)<0&&e.prevPos(o,!0););}return a}var xc=Object.defineProperty,Pc=(r,n,e)=>n in r?xc(r,n,{enumerable:!0,configurable:!0,writable:!0,value:e}):r[n]=e,$t=(r,n,e)=>(Pc(r,typeof n!="symbol"?n+"":n,e),e),xt=class r{constructor(n,e=null){this.infos=n,$t(this,"length"),$t(this,"name"),$t(this,"mappings",[]),$t(this,"cachedSourceMap",null),$t(this,"cachedTabWidth"),this.length=n.length,this.name=e||null,this.name&&this.mappings.push(new Ys(this,{start:this.firstPos(),end:this.lastPos()}))}toString(n){return this.sliceString(this.firstPos(),this.lastPos(),n)}getSourceMap(n,e){if(!n)return null;let t=this;function s(o){return o=o||{},o.file=n,e&&(o.sourceRoot=e),o}if(t.cachedSourceMap)return s(t.cachedSourceMap.toJSON());let i=new _n.default.SourceMapGenerator(s()),a={};return t.mappings.forEach(function(o){let l=o.sourceLines.skipSpaces(o.sourceLoc.start)||o.sourceLines.lastPos(),c=t.skipSpaces(o.targetLoc.start)||t.lastPos();for(;j(l,o.sourceLoc.end)<0&&j(c,o.targetLoc.end)<0;){o.sourceLines.charAt(l),t.charAt(c);let p=o.sourceLines.name;if(i.addMapping({source:p,original:{line:l.line,column:l.column},generated:{line:c.line,column:c.column}}),!Zs.call(a,p)){let u=o.sourceLines.toString();i.setSourceContent(p,u),a[p]=u}t.nextPos(c,!0),o.sourceLines.nextPos(l,!0)}}),t.cachedSourceMap=i,i.toJSON()}bootstrapCharAt(n){let e=n.line,t=n.column,s=this.toString().split(er),i=s[e-1];return typeof i>"u"?"":t===i.length&&e<s.length?`
9607
9618
  `:t>=i.length?"":i.charAt(t)}charAt(n){let e=n.line,t=n.column,s=this,i=s.infos,a=i[e-1],o=t;if(typeof a>"u"||o<0)return"";let l=this.getIndentAt(e);return o<l?" ":(o+=a.sliceStart-l,o===a.sliceEnd&&e<this.length?`
9608
9619
  `:o>=a.sliceEnd?"":a.line.charAt(o))}stripMargin(n,e){if(n===0)return this;if(e&&this.length===1)return this;let t=new r(this.infos.map(function(s,i){return s.line&&(i>0||!e)&&(s={...s,indent:Math.max(0,s.indent-n)}),s}));if(this.mappings.length>0){let s=t.mappings;this.mappings.forEach(function(i){s.push(i.indent(n,e,!0))})}return t}indent(n){if(n===0)return this;let e=new r(this.infos.map(function(t){return t.line&&!t.locked&&(t={...t,indent:t.indent+n}),t}));if(this.mappings.length>0){let t=e.mappings;this.mappings.forEach(function(s){t.push(s.indent(n))})}return e}indentTail(n){if(n===0)return this;if(this.length<2)return this;let e=new r(this.infos.map(function(t,s){return s>0&&t.line&&!t.locked&&(t={...t,indent:t.indent+n}),t}));if(this.mappings.length>0){let t=e.mappings;this.mappings.forEach(function(s){t.push(s.indent(n,!0))})}return e}lockIndentTail(){return this.length<2?this:new r(this.infos.map((n,e)=>({...n,locked:e>0})))}getIndentAt(n){return Math.max(this.infos[n-1].indent,0)}guessTabWidth(){if(typeof this.cachedTabWidth=="number")return this.cachedTabWidth;let n=[],e=0;for(let i=1,a=this.length;i<=a;++i){let o=this.infos[i-1],l=o.line.slice(o.sliceStart,o.sliceEnd);if(bt(l))continue;let c=Math.abs(o.indent-e);n[c]=~~n[c]+1,e=o.indent}let t=-1,s=2;for(let i=1;i<n.length;i+=1)Zs.call(n,i)&&n[i]>t&&(t=n[i],s=i);return this.cachedTabWidth=s}startsWithComment(){if(this.infos.length===0)return!1;let n=this.infos[0],e=n.sliceStart,t=n.sliceEnd,s=n.line.slice(e,t).trim();return s.length===0||s.slice(0,2)==="//"||s.slice(0,2)==="/*"}isOnlyWhitespace(){return bt(this.toString())}isPrecededOnlyByWhitespace(n){let e=this.infos[n.line-1],t=Math.max(e.indent,0),s=n.column-t;if(s<=0)return!0;let i=e.sliceStart,a=Math.min(i+s,e.sliceEnd),o=e.line.slice(i,a);return bt(o)}getLineLength(n){let e=this.infos[n-1];return this.getIndentAt(n)+e.sliceEnd-e.sliceStart}nextPos(n,e=!1){let t=Math.max(n.line,0);return Math.max(n.column,0)<this.getLineLength(t)?(n.column+=1,e?!!this.skipSpaces(n,!1,!0):!0):t<this.length?(n.line+=1,n.column=0,e?!!this.skipSpaces(n,!1,!0):!0):!1}prevPos(n,e=!1){let t=n.line,s=n.column;if(s<1){if(t-=1,t<1)return!1;s=this.getLineLength(t)}else s=Math.min(s-1,this.getLineLength(t));return n.line=t,n.column=s,e?!!this.skipSpaces(n,!0,!0):!0}firstPos(){return{line:1,column:0}}lastPos(){return{line:this.length,column:this.getLineLength(this.length)}}skipSpaces(n,e=!1,t=!1){if(n?n=t?n:{line:n.line,column:n.column}:e?n=this.lastPos():n=this.firstPos(),e){for(;this.prevPos(n);)if(!bt(this.charAt(n))&&this.nextPos(n))return n;return null}else{for(;bt(this.charAt(n));)if(!this.nextPos(n))return null;return n}}trimLeft(){let n=this.skipSpaces(this.firstPos(),!1,!0);return n?this.slice(n):Ze}trimRight(){let n=this.skipSpaces(this.lastPos(),!0,!0);return n?this.slice(this.firstPos(),n):Ze}trim(){let n=this.skipSpaces(this.firstPos(),!1,!0);if(n===null)return Ze;let e=this.skipSpaces(this.lastPos(),!0,!0);return e===null?Ze:this.slice(n,e)}eachPos(n,e=this.firstPos(),t=!1){let s=this.firstPos();if(e&&(s.line=e.line,s.column=e.column),!(t&&!this.skipSpaces(s,!1,!0)))do n.call(this,s);while(this.nextPos(s,t))}bootstrapSlice(n,e){let t=this.toString().split(er).slice(n.line-1,e.line);return t.length>0&&(t.push(t.pop().slice(0,e.column)),t[0]=t[0].slice(n.column)),T(t.join(`
9609
- `))}slice(n,e){if(!e){if(!n)return this;e=this.lastPos()}if(!n)throw new Error("cannot slice with end but not start");let t=this.infos.slice(n.line-1,e.line);n.line===e.line?t[0]=gt(t[0],n.column,e.column):(t[0]=gt(t[0],n.column),t.push(gt(t.pop(),0,e.column)));let s=new r(t);if(this.mappings.length>0){let i=s.mappings;this.mappings.forEach(function(a){let o=a.slice(this,n,e);o&&i.push(o)},this)}return s}bootstrapSliceString(n,e,t){return this.slice(n,e).toString(t)}sliceString(n=this.firstPos(),e=this.lastPos(),t){let{tabWidth:s,useTabs:i,reuseWhitespace:a,lineTerminator:o}=Bn(t),l=[];for(let c=n.line;c<=e.line;++c){let p=this.infos[c-1];c===n.line?c===e.line?p=gt(p,n.column,e.column):p=gt(p,n.column):c===e.line&&(p=gt(p,0,e.column));let u=Math.max(p.indent,0),h=p.line.slice(0,p.sliceStart);if(a&&bt(h)&&Xi(h,s)===u){l.push(p.line.slice(0,p.sliceEnd));continue}let m=0,d=u;i&&(m=Math.floor(u/s),d-=m*s);let g="";m>0&&(g+=new Array(m+1).join(" ")),d>0&&(g+=new Array(d+1).join(" ")),g+=p.line.slice(p.sliceStart,p.sliceEnd),l.push(g)}return l.join(o)}isEmpty(){return this.length<2&&this.getLineLength(1)<1}join(n){let e=this,t=[],s=[],i;function a(c){if(c!==null){if(i){let p=c.infos[0],u=new Array(p.indent+1).join(" "),h=t.length,m=Math.max(i.indent,0)+i.sliceEnd-i.sliceStart;i.line=i.line.slice(0,i.sliceEnd)+u+p.line.slice(p.sliceStart,p.sliceEnd),i.locked=i.locked||p.locked,i.sliceEnd=i.line.length,c.mappings.length>0&&c.mappings.forEach(function(d){s.push(d.add(h,m))})}else c.mappings.length>0&&s.push.apply(s,c.mappings);c.infos.forEach(function(p,u){(!i||u>0)&&(i={...p},t.push(i))})}}function o(c,p){p>0&&a(e),a(c)}if(n.map(function(c){let p=T(c);return p.isEmpty()?null:p}).forEach((c,p)=>{e.isEmpty()?a(c):o(c,p)}),t.length<1)return Ze;let l=new r(t);return l.mappings=s,l}concat(...n){let e=[this];return e.push.apply(e,n),Ze.join(e)}},An={},Zs=An.hasOwnProperty,Tc=10;function Xi(r,n){let e=0,t=r.length;for(let s=0;s<t;++s)switch(r.charCodeAt(s)){case 9:{let i=Math.ceil(e/n)*n;i===e?e+=n:e=i;break}case 11:case 12:case 13:case 65279:break;case 32:default:e+=1;break}return e}var wc=/^\s*/,er=/\u000D\u000A|\u000D(?!\u000A)|\u000A|\u2028|\u2029/;function T(r,n){if(r instanceof xt)return r;r+="";let e=n&&n.tabWidth,t=r.indexOf(" ")<0,s=!n&&t&&r.length<=Tc;if(s&&Zs.call(An,r))return An[r];let i=new xt(r.split(er).map(function(a){let o=wc.exec(a)[0];return{line:a,indent:Xi(o,e),locked:!1,sliceStart:o.length,sliceEnd:a.length}}),Bn(n).sourceFileName);return s&&(An[r]=i),i}function bt(r){return!/\S/.test(r)}function gt(r,n,e){let t=r.sliceStart,s=r.sliceEnd,i=Math.max(r.indent,0),a=i+s-t;return typeof e>"u"&&(e=a),n=Math.max(n,0),e=Math.min(e,a),e=Math.max(e,n),e<i?(i=e,s=t):s-=a-e,a=e,a-=n,n<i?i-=n:(n-=i,i=0,t+=n),r.indent===i&&r.sliceStart===t&&r.sliceEnd===s?r:{line:r.line,indent:i,locked:!1,sliceStart:t,sliceEnd:s}}function y(r){return Ze.join(r)}var Ze=T(""),Pt=we,Qi=Ce.array,Cc=Ce.object,Ii=new WeakMap;function Yi(r,n,e){if(!r)return e;if(ar(r,n),e){if(Pt.Node.check(r)&&Pt.SourceLocation.check(r.loc)){let s=e.length-1;for(;s>=0;--s){let i=e[s];if(i&&i.loc&&j(i.loc.end,r.loc.start)<=0)break}return e.splice(s+1,0,r),e}}else{let s=Ii.get(r);if(s)return s}let t;if(Qi.check(r))t=Object.keys(r);else if(Cc.check(r))t=lc(r);else return e;e||Ii.set(r,e=[]);for(let s=0,i=t.length;s<i;++s)Yi(r[t[s]],n,e);return e}function Zi(r,n,e){let t=Yi(r,e),s=0,i=t&&t.length,a,o;for(;typeof i=="number"&&s<i;){let l=s+i>>1,c=t[l];if(j(c.loc.start,n.loc.start)<=0&&j(n.loc.end,c.loc.end)<=0){Zi(n.enclosingNode=c,n,e);return}if(j(c.loc.end,n.loc.start)<=0){a=c,s=l+1;continue}if(j(n.loc.end,c.loc.start)<=0){o=c,i=l;continue}throw new Error("Comment location overlaps with node location")}a&&(n.precedingNode=a),o&&(n.followingNode=o)}function Sc(r,n,e){if(!Qi.check(r))return;let t=[];r.forEach(function(s){s.loc.lines=e,Zi(n,s,e);let i=s.precedingNode,a=s.enclosingNode,o=s.followingNode;if(i&&o){let l=t.length;l>0&&t[l-1].followingNode!==s.followingNode&&qt(t,e),t.push(s)}else if(i)qt(t,e),ta(i,s);else if(o)qt(t,e),ea(o,s);else if(a)qt(t,e),Ic(a,s);else throw new Error("AST contains no nodes at all?")}),qt(t,e),r.forEach(function(s){delete s.precedingNode,delete s.enclosingNode,delete s.followingNode})}function qt(r,n){let e=r.length;if(e===0)return;let t=r[0].precedingNode,s=r[0].followingNode,i=s.loc.start,a=e,o;for(;a>0;--a){o=r[a-1];let l=n.sliceString(o.loc.end,i);if(/\S/.test(l))break;i=o.loc.start}for(;a<=e&&(o=r[a])&&(o.type==="Line"||o.type==="CommentLine")&&o.loc.start.column>s.loc.start.column;)++a;if(a){let{enclosingNode:l}=r[a-1];l?.type==="CallExpression"&&--a}r.forEach(function(l,c){c<a?ta(t,l):ea(s,l)}),r.length=0}function or(r,n){(r.comments||(r.comments=[])).push(n)}function ea(r,n){n.leading=!0,n.trailing=!1,or(r,n)}function Ic(r,n){n.leading=!1,n.trailing=!1,or(r,n)}function ta(r,n){n.leading=!1,n.trailing=!0,or(r,n)}function Ec(r,n){let e=r.getValue();Pt.Comment.assert(e);let t=e.loc,s=t&&t.lines,i=[n(r)];if(e.trailing)i.push(`
9620
+ `))}slice(n,e){if(!e){if(!n)return this;e=this.lastPos()}if(!n)throw new Error("cannot slice with end but not start");let t=this.infos.slice(n.line-1,e.line);n.line===e.line?t[0]=gt(t[0],n.column,e.column):(t[0]=gt(t[0],n.column),t.push(gt(t.pop(),0,e.column)));let s=new r(t);if(this.mappings.length>0){let i=s.mappings;this.mappings.forEach(function(a){let o=a.slice(this,n,e);o&&i.push(o)},this)}return s}bootstrapSliceString(n,e,t){return this.slice(n,e).toString(t)}sliceString(n=this.firstPos(),e=this.lastPos(),t){let{tabWidth:s,useTabs:i,reuseWhitespace:a,lineTerminator:o}=Bn(t),l=[];for(let c=n.line;c<=e.line;++c){let p=this.infos[c-1];c===n.line?c===e.line?p=gt(p,n.column,e.column):p=gt(p,n.column):c===e.line&&(p=gt(p,0,e.column));let u=Math.max(p.indent,0),f=p.line.slice(0,p.sliceStart);if(a&&bt(f)&&Xi(f,s)===u){l.push(p.line.slice(0,p.sliceEnd));continue}let m=0,d=u;i&&(m=Math.floor(u/s),d-=m*s);let g="";m>0&&(g+=new Array(m+1).join(" ")),d>0&&(g+=new Array(d+1).join(" ")),g+=p.line.slice(p.sliceStart,p.sliceEnd),l.push(g)}return l.join(o)}isEmpty(){return this.length<2&&this.getLineLength(1)<1}join(n){let e=this,t=[],s=[],i;function a(c){if(c!==null){if(i){let p=c.infos[0],u=new Array(p.indent+1).join(" "),f=t.length,m=Math.max(i.indent,0)+i.sliceEnd-i.sliceStart;i.line=i.line.slice(0,i.sliceEnd)+u+p.line.slice(p.sliceStart,p.sliceEnd),i.locked=i.locked||p.locked,i.sliceEnd=i.line.length,c.mappings.length>0&&c.mappings.forEach(function(d){s.push(d.add(f,m))})}else c.mappings.length>0&&s.push.apply(s,c.mappings);c.infos.forEach(function(p,u){(!i||u>0)&&(i={...p},t.push(i))})}}function o(c,p){p>0&&a(e),a(c)}if(n.map(function(c){let p=T(c);return p.isEmpty()?null:p}).forEach((c,p)=>{e.isEmpty()?a(c):o(c,p)}),t.length<1)return Ze;let l=new r(t);return l.mappings=s,l}concat(...n){let e=[this];return e.push.apply(e,n),Ze.join(e)}},An={},Zs=An.hasOwnProperty,Tc=10;function Xi(r,n){let e=0,t=r.length;for(let s=0;s<t;++s)switch(r.charCodeAt(s)){case 9:{let i=Math.ceil(e/n)*n;i===e?e+=n:e=i;break}case 11:case 12:case 13:case 65279:break;case 32:default:e+=1;break}return e}var wc=/^\s*/,er=/\u000D\u000A|\u000D(?!\u000A)|\u000A|\u2028|\u2029/;function T(r,n){if(r instanceof xt)return r;r+="";let e=n&&n.tabWidth,t=r.indexOf(" ")<0,s=!n&&t&&r.length<=Tc;if(s&&Zs.call(An,r))return An[r];let i=new xt(r.split(er).map(function(a){let o=wc.exec(a)[0];return{line:a,indent:Xi(o,e),locked:!1,sliceStart:o.length,sliceEnd:a.length}}),Bn(n).sourceFileName);return s&&(An[r]=i),i}function bt(r){return!/\S/.test(r)}function gt(r,n,e){let t=r.sliceStart,s=r.sliceEnd,i=Math.max(r.indent,0),a=i+s-t;return typeof e>"u"&&(e=a),n=Math.max(n,0),e=Math.min(e,a),e=Math.max(e,n),e<i?(i=e,s=t):s-=a-e,a=e,a-=n,n<i?i-=n:(n-=i,i=0,t+=n),r.indent===i&&r.sliceStart===t&&r.sliceEnd===s?r:{line:r.line,indent:i,locked:!1,sliceStart:t,sliceEnd:s}}function y(r){return Ze.join(r)}var Ze=T(""),Pt=we,Qi=Ce.array,Cc=Ce.object,Ii=new WeakMap;function Yi(r,n,e){if(!r)return e;if(ar(r,n),e){if(Pt.Node.check(r)&&Pt.SourceLocation.check(r.loc)){let s=e.length-1;for(;s>=0;--s){let i=e[s];if(i&&i.loc&&j(i.loc.end,r.loc.start)<=0)break}return e.splice(s+1,0,r),e}}else{let s=Ii.get(r);if(s)return s}let t;if(Qi.check(r))t=Object.keys(r);else if(Cc.check(r))t=lc(r);else return e;e||Ii.set(r,e=[]);for(let s=0,i=t.length;s<i;++s)Yi(r[t[s]],n,e);return e}function Zi(r,n,e){let t=Yi(r,e),s=0,i=t&&t.length,a,o;for(;typeof i=="number"&&s<i;){let l=s+i>>1,c=t[l];if(j(c.loc.start,n.loc.start)<=0&&j(n.loc.end,c.loc.end)<=0){Zi(n.enclosingNode=c,n,e);return}if(j(c.loc.end,n.loc.start)<=0){a=c,s=l+1;continue}if(j(n.loc.end,c.loc.start)<=0){o=c,i=l;continue}throw new Error("Comment location overlaps with node location")}a&&(n.precedingNode=a),o&&(n.followingNode=o)}function Sc(r,n,e){if(!Qi.check(r))return;let t=[];r.forEach(function(s){s.loc.lines=e,Zi(n,s,e);let i=s.precedingNode,a=s.enclosingNode,o=s.followingNode;if(i&&o){let l=t.length;l>0&&t[l-1].followingNode!==s.followingNode&&qt(t,e),t.push(s)}else if(i)qt(t,e),ta(i,s);else if(o)qt(t,e),ea(o,s);else if(a)qt(t,e),Ic(a,s);else throw new Error("AST contains no nodes at all?")}),qt(t,e),r.forEach(function(s){delete s.precedingNode,delete s.enclosingNode,delete s.followingNode})}function qt(r,n){let e=r.length;if(e===0)return;let t=r[0].precedingNode,s=r[0].followingNode,i=s.loc.start,a=e,o;for(;a>0;--a){o=r[a-1];let l=n.sliceString(o.loc.end,i);if(/\S/.test(l))break;i=o.loc.start}for(;a<=e&&(o=r[a])&&(o.type==="Line"||o.type==="CommentLine")&&o.loc.start.column>s.loc.start.column;)++a;if(a){let{enclosingNode:l}=r[a-1];l?.type==="CallExpression"&&--a}r.forEach(function(l,c){c<a?ta(t,l):ea(s,l)}),r.length=0}function or(r,n){(r.comments||(r.comments=[])).push(n)}function ea(r,n){n.leading=!0,n.trailing=!1,or(r,n)}function Ic(r,n){n.leading=!1,n.trailing=!1,or(r,n)}function ta(r,n){n.leading=!1,n.trailing=!0,or(r,n)}function Ec(r,n){let e=r.getValue();Pt.Comment.assert(e);let t=e.loc,s=t&&t.lines,i=[n(r)];if(e.trailing)i.push(`
9610
9621
  `);else if(s instanceof xt){let a=s.slice(t.end,s.skipSpaces(t.end)||s.lastPos());a.length===1?i.push(a):i.push(new Array(a.length).join(`
9611
9622
  `))}else i.push(`
9612
9623
  `);return y(i)}function Ac(r,n){let e=r.getValue(r);Pt.Comment.assert(e);let t=e.loc,s=t&&t.lines,i=[];if(s instanceof xt){let a=s.skipSpaces(t.start,!0)||s.firstPos(),o=s.slice(a,t.start);o.length===1?i.push(o):i.push(new Array(o.length).join(`
9613
- `))}return i.push(n(r)),y(i)}function Ei(r,n){let e=r.getValue(),t=n(r),s=Pt.Node.check(e)&&je(e,"comments");if(!s||s.length===0)return t;let i=[],a=[t];return r.each(function(o){let l=o.getValue(),c=je(l,"leading"),p=je(l,"trailing");c||p&&!(Pt.Statement.check(e)||l.type==="Block"||l.type==="CommentBlock")?i.push(Ec(o,n)):p&&a.push(Ac(o,n))},"comments"),i.push.apply(i,a),y(i)}var kc=nn,Nc=Ce.object,Dc=Ce.array;function Mc(r,n){n=Bn(n);let e=T(r,n),t=e.toString({tabWidth:n.tabWidth,reuseWhitespace:!1,useTabs:!1}),s=[],i=n.parser.parse(t,{jsx:!0,loc:!0,locations:!0,range:n.range,comment:!0,onComment:s,tolerant:Ci(n,"tolerant",!0),ecmaVersion:6,sourceType:Ci(n,"sourceType","module")}),a=Array.isArray(i.tokens)?i.tokens:!1;delete i.tokens,a.forEach(function(p){typeof p.value!="string"&&(p.value=e.sliceString(p.loc.start,p.loc.end))}),Array.isArray(i.comments)&&(s=i.comments,delete i.comments),i.loc?ar(i,e):i.loc={start:e.firstPos(),end:e.lastPos()},i.loc.lines=e,i.loc.indent=0;let o,l;i.type==="Program"?(l=i,o=kc.file(i,n.sourceFileName||null),o.loc={start:e.firstPos(),end:e.lastPos(),lines:e,indent:0}):i.type==="File"&&(o=i,l=o.program),n.tokens&&(o.tokens=a);let c=Ki({type:l.type,loc:l.loc,body:[],comments:s},e);return l.loc.start=c.start,l.loc.end=c.end,Sc(s,l.body.length?o.program:o,e),new na(e,a).copy(o)}var na=function(n,e){this.lines=n,this.tokens=e,this.startTokenIndex=0,this.endTokenIndex=e.length,this.indent=0,this.seen=new Map},sa=na.prototype;sa.copy=function(r){if(this.seen.has(r))return this.seen.get(r);if(Dc.check(r)){let c=new Array(r.length);return this.seen.set(r,c),r.forEach(function(p,u){c[u]=this.copy(p)},this),c}if(!Nc.check(r))return r;ar(r,this.lines);let n=Object.create(Object.getPrototypeOf(r),{original:{value:r,configurable:!1,enumerable:!1,writable:!0}});this.seen.set(r,n);let e=r.loc,t=this.indent,s=t,i=this.startTokenIndex,a=this.endTokenIndex;e&&((r.type==="Block"||r.type==="Line"||r.type==="CommentBlock"||r.type==="CommentLine"||this.lines.isPrecededOnlyByWhitespace(e.start))&&(s=this.indent=e.start.column),e.lines=this.lines,e.tokens=this.tokens,e.indent=s,this.findTokenRange(e));let o=Object.keys(r),l=o.length;for(let c=0;c<l;++c){let p=o[c];p==="loc"||p==="tokens"&&r.type==="File"?n[p]=r[p]:n[p]=this.copy(r[p])}return this.indent=t,this.startTokenIndex=i,this.endTokenIndex=a,n};sa.findTokenRange=function(r){for(;this.startTokenIndex>0;){let n=r.tokens[this.startTokenIndex];if(j(r.start,n.loc.start)<0)--this.startTokenIndex;else break}for(;this.endTokenIndex<r.tokens.length;){let n=r.tokens[this.endTokenIndex];if(j(n.loc.end,r.end)<0)++this.endTokenIndex;else break}for(;this.startTokenIndex<this.endTokenIndex;){let n=r.tokens[this.startTokenIndex];if(j(n.loc.start,r.start)<0)++this.startTokenIndex;else break}for(r.start.token=this.startTokenIndex;this.endTokenIndex>this.startTokenIndex;){let n=r.tokens[this.endTokenIndex-1];if(j(r.end,n.loc.end)<0)--this.endTokenIndex;else break}r.end.token=this.endTokenIndex};var G=we,Lc=Ce.array,Oc=Ce.number,tr={};[["??"],["||"],["&&"],["|"],["^"],["&"],["==","===","!=","!=="],["<",">","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"],["**"]].forEach(function(r,n){r.forEach(function(e){tr[e]=n})});var Te=function(n){this.stack=[n]},ne=Te.prototype;Te.from=function(r){if(r instanceof Te)return r.copy();if(r instanceof pc){let n=Object.create(Te.prototype),e=[r.value];for(let t;t=r.parentPath;r=t)e.push(r.name,t.value);return n.stack=e.reverse(),n}return new Te(r)};ne.copy=function(){let n=Object.create(Te.prototype);return n.stack=this.stack.slice(0),n};ne.getName=function(){let n=this.stack,e=n.length;return e>1?n[e-2]:null};ne.getValue=function(){let n=this.stack;return n[n.length-1]};ne.valueIsDuplicate=function(){let r=this.stack,n=r.length-1;return r.lastIndexOf(r[n],n-1)>=0};function ra(r,n){let e=r.stack;for(let t=e.length-1;t>=0;t-=2){let s=e[t];if(G.Node.check(s)&&--n<0)return s}return null}ne.getNode=function(n=0){return ra(this,~~n)};ne.getParentNode=function(n=0){return ra(this,~~n+1)};ne.getRootValue=function(){let n=this.stack;return n.length%2===0?n[1]:n[0]};ne.call=function(n){let e=this.stack,t=e.length,s=e[t-1],i=arguments.length;for(let o=1;o<i;++o){let l=arguments[o];s=s[l],e.push(l,s)}let a=n(this);return e.length=t,a};ne.each=function(n){let e=this.stack,t=e.length,s=e[t-1],i=arguments.length;for(let a=1;a<i;++a){let o=arguments[a];s=s[o],e.push(o,s)}for(let a=0;a<s.length;++a)a in s&&(e.push(a,s[a]),n(this),e.length-=2);e.length=t};ne.map=function(n){let e=this.stack,t=e.length,s=e[t-1],i=arguments.length;for(let o=1;o<i;++o){let l=arguments[o];s=s[l],e.push(l,s)}let a=new Array(s.length);for(let o=0;o<s.length;++o)o in s&&(e.push(o,s[o]),a[o]=n(this,o),e.length-=2);return e.length=t,a};ne.hasParens=function(){let r=this.getNode(),n=this.getPrevToken(r);if(!n)return!1;let e=this.getNextToken(r);return e?!!(n.value==="("&&(e.value===")"||!this.canBeFirstInStatement()&&this.firstInStatement()&&!this.needsParens(!0))):!1};ne.getPrevToken=function(r){r=r||this.getNode();let n=r&&r.loc,e=n&&n.tokens;if(e&&n.start.token>0){let t=e[n.start.token-1];if(t){let s=this.getRootValue().loc;if(j(s.start,t.loc.start)<=0)return t}}return null};ne.getNextToken=function(r){r=r||this.getNode();let n=r&&r.loc,e=n&&n.tokens;if(e&&n.end.token<e.length){let t=e[n.end.token];if(t){let s=this.getRootValue().loc;if(j(t.loc.end,s.end)<=0)return t}}return null};ne.needsParens=function(r){let n=this.getNode();if(n.type==="AssignmentExpression"&&n.left.type==="ObjectPattern")return!0;let e=this.getParentNode(),t=this.getName();if(this.getValue()!==n||G.Statement.check(n)||n.type==="Identifier"||e&&e.type==="ParenthesizedExpression")return!1;if(n.extra&&n.extra.parenthesized)return!0;if(!e)return!1;if(n.type==="UnaryExpression"&&e.type==="BinaryExpression"&&t==="left"&&e.left===n&&e.operator==="**")return!0;switch(n.type){case"UnaryExpression":case"SpreadElement":case"SpreadProperty":return e.type==="MemberExpression"&&t==="object"&&e.object===n;case"BinaryExpression":case"LogicalExpression":switch(e.type){case"CallExpression":return t==="callee"&&e.callee===n;case"UnaryExpression":case"SpreadElement":case"SpreadProperty":return!0;case"MemberExpression":return t==="object"&&e.object===n;case"BinaryExpression":case"LogicalExpression":{let s=e.operator,i=tr[s],a=n.operator,o=tr[a];if(i>o||i===o&&t==="right")return!0;break}default:return!1}break;case"SequenceExpression":switch(e.type){case"ReturnStatement":return!1;case"ForStatement":return!1;case"ExpressionStatement":return t!=="expression";default:return!0}case"OptionalIndexedAccessType":return n.optional&&e.type==="IndexedAccessType";case"IntersectionTypeAnnotation":case"UnionTypeAnnotation":return e.type==="NullableTypeAnnotation";case"Literal":return e.type==="MemberExpression"&&Oc.check(n.value)&&t==="object"&&e.object===n;case"NumericLiteral":return e.type==="MemberExpression"&&t==="object"&&e.object===n;case"YieldExpression":case"AwaitExpression":case"AssignmentExpression":case"ConditionalExpression":switch(e.type){case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"BinaryExpression":case"LogicalExpression":return!0;case"CallExpression":case"NewExpression":return t==="callee"&&e.callee===n;case"ConditionalExpression":return t==="test"&&e.test===n;case"MemberExpression":return t==="object"&&e.object===n;default:return!1}case"ArrowFunctionExpression":return G.CallExpression.check(e)&&t==="callee"&&e.callee===n||G.MemberExpression.check(e)&&t==="object"&&e.object===n||G.TSAsExpression&&G.TSAsExpression.check(e)&&t==="expression"&&e.expression===n?!0:ia(e);case"ObjectExpression":if(e.type==="ArrowFunctionExpression"&&t==="body"&&e.body===n)return!0;break;case"TSAsExpression":if(e.type==="ArrowFunctionExpression"&&t==="body"&&e.body===n&&n.expression.type==="ObjectExpression")return!0;break;case"CallExpression":if(t==="declaration"&&G.ExportDefaultDeclaration.check(e)&&G.FunctionExpression.check(n.callee))return!0}return e.type==="NewExpression"&&t==="callee"&&e.callee===n?nr(n):!!(r!==!0&&!this.canBeFirstInStatement()&&this.firstInStatement())};function ia(r){return G.BinaryExpression.check(r)||G.LogicalExpression.check(r)}function nr(r){return G.CallExpression.check(r)?!0:Lc.check(r)?r.some(nr):G.Node.check(r)?uc(r,(n,e)=>nr(e)):!1}ne.canBeFirstInStatement=function(){let r=this.getNode();return!(G.FunctionExpression.check(r)||G.ObjectExpression.check(r)||G.ClassExpression.check(r))};ne.firstInStatement=function(){let r=this.stack,n,e,t,s;for(let i=r.length-1;i>=0;i-=2)if(G.Node.check(r[i])&&(t=n,s=e,n=r[i-1],e=r[i]),!(!e||!s)){if(G.BlockStatement.check(e)&&n==="body"&&t===0||G.ExpressionStatement.check(e)&&t==="expression"||G.AssignmentExpression.check(e)&&t==="left"||G.ArrowFunctionExpression.check(e)&&t==="body")return!0;if(!(G.SequenceExpression.check(e)&&r[i+1]==="expressions"&&t===0)&&!(G.CallExpression.check(e)&&t==="callee")&&!(G.MemberExpression.check(e)&&t==="object")&&!(G.ConditionalExpression.check(e)&&t==="test")&&!(ia(e)&&t==="left")&&!(G.UnaryExpression.check(e)&&!e.prefix&&t==="argument"))return!1}return!0};var Yt=we.Printable,Ai=we.Expression,Fc=we.ReturnStatement,Uc=we.SourceLocation,Zt=Ce.object,sr=Ce.array,_c=Ce.string,Fn=/[0-9a-z_$]/i,aa=function(n){let e=this,t=[];e.replace=function(s,i){_c.check(i)&&(i=T(i)),t.push({lines:i,start:s.start,end:s.end})},e.get=function(s){s=s||{start:{line:1,column:0},end:{line:n.length,column:n.getLineLength(n.length)}};let i=s.start,a=[];function o(l,c){a.push(n.slice(l,c))}return t.sort((l,c)=>j(l.start,c.start)).forEach(function(l){j(i,l.start)>0||(o(i,l.start),a.push(l.lines),i=l.end)}),o(i,s.end),y(a)}},oa=aa.prototype;oa.tryToReprintComments=function(r,n,e){let t=this;if(!r.comments&&!n.comments)return!0;let s=Te.from(r),i=Te.from(n);s.stack.push("comments",ki(r)),i.stack.push("comments",ki(n));let a=[],o=ca(s,i,a);return o&&a.length>0&&a.forEach(function(l){let c=l.oldPath.getValue();t.replace(c.loc,e(l.newPath).indentTail(c.loc.indent))}),o};function ki(r){let n=[];return r.comments&&r.comments.length>0&&r.comments.forEach(function(e){(e.leading||e.trailing)&&n.push(e)}),n}oa.deleteComments=function(r){if(!r.comments)return;let n=this;r.comments.forEach(function(e){e.leading?n.replace({start:e.loc.start,end:r.loc.lines.skipSpaces(e.loc.end,!1,!1)},""):e.trailing&&n.replace({start:r.loc.lines.skipSpaces(e.loc.start,!0,!1),end:e.loc.end},"")})};function Rc(r){let n=r.getValue();if(!Yt.check(n))return;let e=n.original,t=e&&e.loc,s=t&&t.lines,i=[];if(!(!s||!Vc(r,i)))return function(a){let o=new aa(s);i.forEach(function(c){let p=c.newPath.getValue(),u=c.oldPath.getValue();Uc.assert(u.loc,!0);let h=!o.tryToReprintComments(p,u,a);h&&o.deleteComments(u);let m=a(c.newPath,{includeComments:h,avoidRootParens:u.type===p.type&&c.oldPath.hasParens()}).indentTail(u.loc.indent),d=Bc(s,u.loc,m),g=jc(s,u.loc,m);if(d||g){let f=[];d&&f.push(" "),f.push(m),g&&f.push(" "),m=y(f)}o.replace(u.loc,m)});let l=o.get(t).indentTail(-e.loc.indent);return r.needsParens()?y(["(",l,")"]):l}}function Bc(r,n,e){let t=Ge(n.start),s=r.prevPos(t)&&r.charAt(t),i=e.charAt(e.firstPos());return s&&Fn.test(s)&&i&&Fn.test(i)}function jc(r,n,e){let t=r.charAt(n.end),s=e.lastPos(),i=e.prevPos(s)&&e.charAt(s);return i&&Fn.test(i)&&t&&Fn.test(t)}function Vc(r,n){let e=r.getValue();Yt.assert(e);let t=e.original;if(Yt.assert(t),e.type!==t.type)return!1;let s=new Te(t),i=rr(r,s,n);return i||(n.length=0),i}function la(r,n,e){let t=r.getValue(),s=n.getValue();return t===s?!0:sr.check(t)?ca(r,n,e):Zt.check(t)?zc(r,n,e):!1}function ca(r,n,e){let t=r.getValue(),s=n.getValue();if(t===s||r.valueIsDuplicate()||n.valueIsDuplicate())return!0;sr.assert(t);let i=t.length;if(!(sr.check(s)&&s.length===i))return!1;for(let a=0;a<i;++a){r.stack.push(a,t[a]),n.stack.push(a,s[a]);let o=la(r,n,e);if(r.stack.length-=2,n.stack.length-=2,!o)return!1}return!0}function zc(r,n,e){let t=r.getValue();if(Zt.assert(t),t.original===null)return!1;let s=n.getValue();if(!Zt.check(s))return!1;if(t===s||r.valueIsDuplicate()||n.valueIsDuplicate())return!0;if(Yt.check(t)){if(!Yt.check(s))return!1;let i=r.getParentNode(),a=n.getParentNode();if(a!==null&&a.type==="FunctionTypeAnnotation"&&i!==null&&i.type==="FunctionTypeAnnotation"){let o=a.params.length!==1||!!a.params[0].name,l=i.params.length!==1||!!i.params[0].name;if(!o&&l)return!1}if(t.type===s.type){let o=[];if(rr(r,n,o))e.push.apply(e,o);else if(s.loc)e.push({oldPath:n.copy(),newPath:r.copy()});else return!1;return!0}return Ai.check(t)&&Ai.check(s)&&s.loc?(e.push({oldPath:n.copy(),newPath:r.copy()}),!0):!1}return rr(r,n,e)}function rr(r,n,e){let t=r.getValue(),s=n.getValue();if(Zt.assert(t),Zt.assert(s),t.original===null||r.needsParens()&&!n.hasParens())return!1;let i=fc(s,t);(s.type==="File"||t.type==="File")&&delete i.tokens,delete i.loc;let a=e.length;for(let o in i){if(o.charAt(0)==="_")continue;r.stack.push(o,je(t,o)),n.stack.push(o,je(s,o));let l=la(r,n,e);if(r.stack.length-=2,n.stack.length-=2,!l)return!1}return!(Fc.check(r.getNode())&&e.length>a)}var X=we,lr=Ce.string,$c=Ce.object,Un=function(n,e){lr.assert(n),this.code=n,e&&($c.assert(e),this.map=e)},qc=Un.prototype,Ni=!1;qc.toString=function(){return Ni||(console.warn("Deprecation warning: recast.print now returns an object with a .code property. You appear to be treating the object as a string, which might still work but is strongly discouraged."),Ni=!0),this.code};var Di=new Un(""),Hc=function(n){let e=n&&n.tabWidth;n=Bn(n),n.sourceFileName=null;function t(i,a){return i=Object.assign({},i,a),o=>s(o,i)}function s(i,a){if(a=a||{},a.includeComments)return Ei(i,t(a,{includeComments:!1}));let o=n.tabWidth;if(!e){let p=i.getNode().loc;p&&p.lines&&p.lines.guessTabWidth&&(n.tabWidth=p.lines.guessTabWidth())}let l=Rc(i),c=l?l(s):Mi(i,n,a,t(a,{includeComments:!0,avoidRootParens:!1}));return n.tabWidth=o,c}this.print=function(i){if(!i)return Di;let a=s(Te.from(i),{includeComments:!0,avoidRootParens:!1});return new Un(a.toString(n),mc(n.inputSourceMap,a.getSourceMap(n.sourceMapName,n.sourceRoot)))},this.printGenerically=function(i){if(!i)return Di;function a(p){return Ei(p,u=>Mi(u,n,{includeComments:!0,avoidRootParens:!1},a))}let o=Te.from(i),l=n.reuseWhitespace;n.reuseWhitespace=!1;let c=new Un(a(o).toString(n));return n.reuseWhitespace=l,c}};function Mi(r,n,e,t){let s=r.getValue(),i=[],a=Wc(r,n,t);if(!s||a.isEmpty())return a;let o=!1,l=Gc(r,t);return l.isEmpty()?e.avoidRootParens||(o=r.needsParens()):i.push(l),o&&i.unshift("("),i.push(a),o&&i.push(")"),y(i)}function Wc(r,n,e){let t=r.getValue();if(!t)return T("");if(typeof t=="string")return T(t,n);X.Printable.assert(t);let s=[];switch(t.type){case"File":return r.call(e,"program");case"Program":return t.directives&&r.each(function(i){s.push(e(i),`;
9624
+ `))}return i.push(n(r)),y(i)}function Ei(r,n){let e=r.getValue(),t=n(r),s=Pt.Node.check(e)&&je(e,"comments");if(!s||s.length===0)return t;let i=[],a=[t];return r.each(function(o){let l=o.getValue(),c=je(l,"leading"),p=je(l,"trailing");c||p&&!(Pt.Statement.check(e)||l.type==="Block"||l.type==="CommentBlock")?i.push(Ec(o,n)):p&&a.push(Ac(o,n))},"comments"),i.push.apply(i,a),y(i)}var kc=nn,Nc=Ce.object,Dc=Ce.array;function Mc(r,n){n=Bn(n);let e=T(r,n),t=e.toString({tabWidth:n.tabWidth,reuseWhitespace:!1,useTabs:!1}),s=[],i=n.parser.parse(t,{jsx:!0,loc:!0,locations:!0,range:n.range,comment:!0,onComment:s,tolerant:Ci(n,"tolerant",!0),ecmaVersion:6,sourceType:Ci(n,"sourceType","module")}),a=Array.isArray(i.tokens)?i.tokens:!1;delete i.tokens,a.forEach(function(p){typeof p.value!="string"&&(p.value=e.sliceString(p.loc.start,p.loc.end))}),Array.isArray(i.comments)&&(s=i.comments,delete i.comments),i.loc?ar(i,e):i.loc={start:e.firstPos(),end:e.lastPos()},i.loc.lines=e,i.loc.indent=0;let o,l;i.type==="Program"?(l=i,o=kc.file(i,n.sourceFileName||null),o.loc={start:e.firstPos(),end:e.lastPos(),lines:e,indent:0}):i.type==="File"&&(o=i,l=o.program),n.tokens&&(o.tokens=a);let c=Ki({type:l.type,loc:l.loc,body:[],comments:s},e);return l.loc.start=c.start,l.loc.end=c.end,Sc(s,l.body.length?o.program:o,e),new na(e,a).copy(o)}var na=function(n,e){this.lines=n,this.tokens=e,this.startTokenIndex=0,this.endTokenIndex=e.length,this.indent=0,this.seen=new Map},sa=na.prototype;sa.copy=function(r){if(this.seen.has(r))return this.seen.get(r);if(Dc.check(r)){let c=new Array(r.length);return this.seen.set(r,c),r.forEach(function(p,u){c[u]=this.copy(p)},this),c}if(!Nc.check(r))return r;ar(r,this.lines);let n=Object.create(Object.getPrototypeOf(r),{original:{value:r,configurable:!1,enumerable:!1,writable:!0}});this.seen.set(r,n);let e=r.loc,t=this.indent,s=t,i=this.startTokenIndex,a=this.endTokenIndex;e&&((r.type==="Block"||r.type==="Line"||r.type==="CommentBlock"||r.type==="CommentLine"||this.lines.isPrecededOnlyByWhitespace(e.start))&&(s=this.indent=e.start.column),e.lines=this.lines,e.tokens=this.tokens,e.indent=s,this.findTokenRange(e));let o=Object.keys(r),l=o.length;for(let c=0;c<l;++c){let p=o[c];p==="loc"||p==="tokens"&&r.type==="File"?n[p]=r[p]:n[p]=this.copy(r[p])}return this.indent=t,this.startTokenIndex=i,this.endTokenIndex=a,n};sa.findTokenRange=function(r){for(;this.startTokenIndex>0;){let n=r.tokens[this.startTokenIndex];if(j(r.start,n.loc.start)<0)--this.startTokenIndex;else break}for(;this.endTokenIndex<r.tokens.length;){let n=r.tokens[this.endTokenIndex];if(j(n.loc.end,r.end)<0)++this.endTokenIndex;else break}for(;this.startTokenIndex<this.endTokenIndex;){let n=r.tokens[this.startTokenIndex];if(j(n.loc.start,r.start)<0)++this.startTokenIndex;else break}for(r.start.token=this.startTokenIndex;this.endTokenIndex>this.startTokenIndex;){let n=r.tokens[this.endTokenIndex-1];if(j(r.end,n.loc.end)<0)--this.endTokenIndex;else break}r.end.token=this.endTokenIndex};var G=we,Lc=Ce.array,Oc=Ce.number,tr={};[["??"],["||"],["&&"],["|"],["^"],["&"],["==","===","!=","!=="],["<",">","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"],["**"]].forEach(function(r,n){r.forEach(function(e){tr[e]=n})});var Te=function(n){this.stack=[n]},ne=Te.prototype;Te.from=function(r){if(r instanceof Te)return r.copy();if(r instanceof pc){let n=Object.create(Te.prototype),e=[r.value];for(let t;t=r.parentPath;r=t)e.push(r.name,t.value);return n.stack=e.reverse(),n}return new Te(r)};ne.copy=function(){let n=Object.create(Te.prototype);return n.stack=this.stack.slice(0),n};ne.getName=function(){let n=this.stack,e=n.length;return e>1?n[e-2]:null};ne.getValue=function(){let n=this.stack;return n[n.length-1]};ne.valueIsDuplicate=function(){let r=this.stack,n=r.length-1;return r.lastIndexOf(r[n],n-1)>=0};function ra(r,n){let e=r.stack;for(let t=e.length-1;t>=0;t-=2){let s=e[t];if(G.Node.check(s)&&--n<0)return s}return null}ne.getNode=function(n=0){return ra(this,~~n)};ne.getParentNode=function(n=0){return ra(this,~~n+1)};ne.getRootValue=function(){let n=this.stack;return n.length%2===0?n[1]:n[0]};ne.call=function(n){let e=this.stack,t=e.length,s=e[t-1],i=arguments.length;for(let o=1;o<i;++o){let l=arguments[o];s=s[l],e.push(l,s)}let a=n(this);return e.length=t,a};ne.each=function(n){let e=this.stack,t=e.length,s=e[t-1],i=arguments.length;for(let a=1;a<i;++a){let o=arguments[a];s=s[o],e.push(o,s)}for(let a=0;a<s.length;++a)a in s&&(e.push(a,s[a]),n(this),e.length-=2);e.length=t};ne.map=function(n){let e=this.stack,t=e.length,s=e[t-1],i=arguments.length;for(let o=1;o<i;++o){let l=arguments[o];s=s[l],e.push(l,s)}let a=new Array(s.length);for(let o=0;o<s.length;++o)o in s&&(e.push(o,s[o]),a[o]=n(this,o),e.length-=2);return e.length=t,a};ne.hasParens=function(){let r=this.getNode(),n=this.getPrevToken(r);if(!n)return!1;let e=this.getNextToken(r);return e?!!(n.value==="("&&(e.value===")"||!this.canBeFirstInStatement()&&this.firstInStatement()&&!this.needsParens(!0))):!1};ne.getPrevToken=function(r){r=r||this.getNode();let n=r&&r.loc,e=n&&n.tokens;if(e&&n.start.token>0){let t=e[n.start.token-1];if(t){let s=this.getRootValue().loc;if(j(s.start,t.loc.start)<=0)return t}}return null};ne.getNextToken=function(r){r=r||this.getNode();let n=r&&r.loc,e=n&&n.tokens;if(e&&n.end.token<e.length){let t=e[n.end.token];if(t){let s=this.getRootValue().loc;if(j(t.loc.end,s.end)<=0)return t}}return null};ne.needsParens=function(r){let n=this.getNode();if(n.type==="AssignmentExpression"&&n.left.type==="ObjectPattern")return!0;let e=this.getParentNode(),t=this.getName();if(this.getValue()!==n||G.Statement.check(n)||n.type==="Identifier"||e&&e.type==="ParenthesizedExpression")return!1;if(n.extra&&n.extra.parenthesized)return!0;if(!e)return!1;if(n.type==="UnaryExpression"&&e.type==="BinaryExpression"&&t==="left"&&e.left===n&&e.operator==="**")return!0;switch(n.type){case"UnaryExpression":case"SpreadElement":case"SpreadProperty":return e.type==="MemberExpression"&&t==="object"&&e.object===n;case"BinaryExpression":case"LogicalExpression":switch(e.type){case"CallExpression":return t==="callee"&&e.callee===n;case"UnaryExpression":case"SpreadElement":case"SpreadProperty":return!0;case"MemberExpression":return t==="object"&&e.object===n;case"BinaryExpression":case"LogicalExpression":{let s=e.operator,i=tr[s],a=n.operator,o=tr[a];if(i>o||i===o&&t==="right")return!0;break}default:return!1}break;case"SequenceExpression":switch(e.type){case"ReturnStatement":return!1;case"ForStatement":return!1;case"ExpressionStatement":return t!=="expression";default:return!0}case"OptionalIndexedAccessType":return n.optional&&e.type==="IndexedAccessType";case"IntersectionTypeAnnotation":case"UnionTypeAnnotation":return e.type==="NullableTypeAnnotation";case"Literal":return e.type==="MemberExpression"&&Oc.check(n.value)&&t==="object"&&e.object===n;case"NumericLiteral":return e.type==="MemberExpression"&&t==="object"&&e.object===n;case"YieldExpression":case"AwaitExpression":case"AssignmentExpression":case"ConditionalExpression":switch(e.type){case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"BinaryExpression":case"LogicalExpression":return!0;case"CallExpression":case"NewExpression":return t==="callee"&&e.callee===n;case"ConditionalExpression":return t==="test"&&e.test===n;case"MemberExpression":return t==="object"&&e.object===n;default:return!1}case"ArrowFunctionExpression":return G.CallExpression.check(e)&&t==="callee"&&e.callee===n||G.MemberExpression.check(e)&&t==="object"&&e.object===n||G.TSAsExpression&&G.TSAsExpression.check(e)&&t==="expression"&&e.expression===n?!0:ia(e);case"ObjectExpression":if(e.type==="ArrowFunctionExpression"&&t==="body"&&e.body===n)return!0;break;case"TSAsExpression":if(e.type==="ArrowFunctionExpression"&&t==="body"&&e.body===n&&n.expression.type==="ObjectExpression")return!0;break;case"CallExpression":if(t==="declaration"&&G.ExportDefaultDeclaration.check(e)&&G.FunctionExpression.check(n.callee))return!0}return e.type==="NewExpression"&&t==="callee"&&e.callee===n?nr(n):!!(r!==!0&&!this.canBeFirstInStatement()&&this.firstInStatement())};function ia(r){return G.BinaryExpression.check(r)||G.LogicalExpression.check(r)}function nr(r){return G.CallExpression.check(r)?!0:Lc.check(r)?r.some(nr):G.Node.check(r)?uc(r,(n,e)=>nr(e)):!1}ne.canBeFirstInStatement=function(){let r=this.getNode();return!(G.FunctionExpression.check(r)||G.ObjectExpression.check(r)||G.ClassExpression.check(r))};ne.firstInStatement=function(){let r=this.stack,n,e,t,s;for(let i=r.length-1;i>=0;i-=2)if(G.Node.check(r[i])&&(t=n,s=e,n=r[i-1],e=r[i]),!(!e||!s)){if(G.BlockStatement.check(e)&&n==="body"&&t===0||G.ExpressionStatement.check(e)&&t==="expression"||G.AssignmentExpression.check(e)&&t==="left"||G.ArrowFunctionExpression.check(e)&&t==="body")return!0;if(!(G.SequenceExpression.check(e)&&r[i+1]==="expressions"&&t===0)&&!(G.CallExpression.check(e)&&t==="callee")&&!(G.MemberExpression.check(e)&&t==="object")&&!(G.ConditionalExpression.check(e)&&t==="test")&&!(ia(e)&&t==="left")&&!(G.UnaryExpression.check(e)&&!e.prefix&&t==="argument"))return!1}return!0};var Yt=we.Printable,Ai=we.Expression,Fc=we.ReturnStatement,Uc=we.SourceLocation,Zt=Ce.object,sr=Ce.array,_c=Ce.string,Fn=/[0-9a-z_$]/i,aa=function(n){let e=this,t=[];e.replace=function(s,i){_c.check(i)&&(i=T(i)),t.push({lines:i,start:s.start,end:s.end})},e.get=function(s){s=s||{start:{line:1,column:0},end:{line:n.length,column:n.getLineLength(n.length)}};let i=s.start,a=[];function o(l,c){a.push(n.slice(l,c))}return t.sort((l,c)=>j(l.start,c.start)).forEach(function(l){j(i,l.start)>0||(o(i,l.start),a.push(l.lines),i=l.end)}),o(i,s.end),y(a)}},oa=aa.prototype;oa.tryToReprintComments=function(r,n,e){let t=this;if(!r.comments&&!n.comments)return!0;let s=Te.from(r),i=Te.from(n);s.stack.push("comments",ki(r)),i.stack.push("comments",ki(n));let a=[],o=ca(s,i,a);return o&&a.length>0&&a.forEach(function(l){let c=l.oldPath.getValue();t.replace(c.loc,e(l.newPath).indentTail(c.loc.indent))}),o};function ki(r){let n=[];return r.comments&&r.comments.length>0&&r.comments.forEach(function(e){(e.leading||e.trailing)&&n.push(e)}),n}oa.deleteComments=function(r){if(!r.comments)return;let n=this;r.comments.forEach(function(e){e.leading?n.replace({start:e.loc.start,end:r.loc.lines.skipSpaces(e.loc.end,!1,!1)},""):e.trailing&&n.replace({start:r.loc.lines.skipSpaces(e.loc.start,!0,!1),end:e.loc.end},"")})};function Rc(r){let n=r.getValue();if(!Yt.check(n))return;let e=n.original,t=e&&e.loc,s=t&&t.lines,i=[];if(!(!s||!Vc(r,i)))return function(a){let o=new aa(s);i.forEach(function(c){let p=c.newPath.getValue(),u=c.oldPath.getValue();Uc.assert(u.loc,!0);let f=!o.tryToReprintComments(p,u,a);f&&o.deleteComments(u);let m=a(c.newPath,{includeComments:f,avoidRootParens:u.type===p.type&&c.oldPath.hasParens()}).indentTail(u.loc.indent),d=Bc(s,u.loc,m),g=jc(s,u.loc,m);if(d||g){let h=[];d&&h.push(" "),h.push(m),g&&h.push(" "),m=y(h)}o.replace(u.loc,m)});let l=o.get(t).indentTail(-e.loc.indent);return r.needsParens()?y(["(",l,")"]):l}}function Bc(r,n,e){let t=Ge(n.start),s=r.prevPos(t)&&r.charAt(t),i=e.charAt(e.firstPos());return s&&Fn.test(s)&&i&&Fn.test(i)}function jc(r,n,e){let t=r.charAt(n.end),s=e.lastPos(),i=e.prevPos(s)&&e.charAt(s);return i&&Fn.test(i)&&t&&Fn.test(t)}function Vc(r,n){let e=r.getValue();Yt.assert(e);let t=e.original;if(Yt.assert(t),e.type!==t.type)return!1;let s=new Te(t),i=rr(r,s,n);return i||(n.length=0),i}function la(r,n,e){let t=r.getValue(),s=n.getValue();return t===s?!0:sr.check(t)?ca(r,n,e):Zt.check(t)?zc(r,n,e):!1}function ca(r,n,e){let t=r.getValue(),s=n.getValue();if(t===s||r.valueIsDuplicate()||n.valueIsDuplicate())return!0;sr.assert(t);let i=t.length;if(!(sr.check(s)&&s.length===i))return!1;for(let a=0;a<i;++a){r.stack.push(a,t[a]),n.stack.push(a,s[a]);let o=la(r,n,e);if(r.stack.length-=2,n.stack.length-=2,!o)return!1}return!0}function zc(r,n,e){let t=r.getValue();if(Zt.assert(t),t.original===null)return!1;let s=n.getValue();if(!Zt.check(s))return!1;if(t===s||r.valueIsDuplicate()||n.valueIsDuplicate())return!0;if(Yt.check(t)){if(!Yt.check(s))return!1;let i=r.getParentNode(),a=n.getParentNode();if(a!==null&&a.type==="FunctionTypeAnnotation"&&i!==null&&i.type==="FunctionTypeAnnotation"){let o=a.params.length!==1||!!a.params[0].name,l=i.params.length!==1||!!i.params[0].name;if(!o&&l)return!1}if(t.type===s.type){let o=[];if(rr(r,n,o))e.push.apply(e,o);else if(s.loc)e.push({oldPath:n.copy(),newPath:r.copy()});else return!1;return!0}return Ai.check(t)&&Ai.check(s)&&s.loc?(e.push({oldPath:n.copy(),newPath:r.copy()}),!0):!1}return rr(r,n,e)}function rr(r,n,e){let t=r.getValue(),s=n.getValue();if(Zt.assert(t),Zt.assert(s),t.original===null||r.needsParens()&&!n.hasParens())return!1;let i=hc(s,t);(s.type==="File"||t.type==="File")&&delete i.tokens,delete i.loc;let a=e.length;for(let o in i){if(o.charAt(0)==="_")continue;r.stack.push(o,je(t,o)),n.stack.push(o,je(s,o));let l=la(r,n,e);if(r.stack.length-=2,n.stack.length-=2,!l)return!1}return!(Fc.check(r.getNode())&&e.length>a)}var X=we,lr=Ce.string,$c=Ce.object,Un=function(n,e){lr.assert(n),this.code=n,e&&($c.assert(e),this.map=e)},qc=Un.prototype,Ni=!1;qc.toString=function(){return Ni||(console.warn("Deprecation warning: recast.print now returns an object with a .code property. You appear to be treating the object as a string, which might still work but is strongly discouraged."),Ni=!0),this.code};var Di=new Un(""),Hc=function(n){let e=n&&n.tabWidth;n=Bn(n),n.sourceFileName=null;function t(i,a){return i=Object.assign({},i,a),o=>s(o,i)}function s(i,a){if(a=a||{},a.includeComments)return Ei(i,t(a,{includeComments:!1}));let o=n.tabWidth;if(!e){let p=i.getNode().loc;p&&p.lines&&p.lines.guessTabWidth&&(n.tabWidth=p.lines.guessTabWidth())}let l=Rc(i),c=l?l(s):Mi(i,n,a,t(a,{includeComments:!0,avoidRootParens:!1}));return n.tabWidth=o,c}this.print=function(i){if(!i)return Di;let a=s(Te.from(i),{includeComments:!0,avoidRootParens:!1});return new Un(a.toString(n),mc(n.inputSourceMap,a.getSourceMap(n.sourceMapName,n.sourceRoot)))},this.printGenerically=function(i){if(!i)return Di;function a(p){return Ei(p,u=>Mi(u,n,{includeComments:!0,avoidRootParens:!1},a))}let o=Te.from(i),l=n.reuseWhitespace;n.reuseWhitespace=!1;let c=new Un(a(o).toString(n));return n.reuseWhitespace=l,c}};function Mi(r,n,e,t){let s=r.getValue(),i=[],a=Wc(r,n,t);if(!s||a.isEmpty())return a;let o=!1,l=Gc(r,t);return l.isEmpty()?e.avoidRootParens||(o=r.needsParens()):i.push(l),o&&i.unshift("("),i.push(a),o&&i.push(")"),y(i)}function Wc(r,n,e){let t=r.getValue();if(!t)return T("");if(typeof t=="string")return T(t,n);X.Printable.assert(t);let s=[];switch(t.type){case"File":return r.call(e,"program");case"Program":return t.directives&&r.each(function(i){s.push(e(i),`;
9614
9625
  `)},"directives"),t.interpreter&&s.push(r.call(e,"interpreter")),s.push(r.call(i=>yt(i,n,e),"body")),y(s);case"Noop":case"EmptyStatement":return T("");case"ExpressionStatement":return y([r.call(e,"expression"),";"]);case"ParenthesizedExpression":return y(["(",r.call(e,"expression"),")"]);case"BinaryExpression":case"LogicalExpression":case"AssignmentExpression":return T(" ").join([r.call(e,"left"),t.operator,r.call(e,"right")]);case"AssignmentPattern":return y([r.call(e,"left")," = ",r.call(e,"right")]);case"MemberExpression":case"OptionalMemberExpression":{s.push(r.call(e,"object"));let i=r.call(e,"property"),a=je(t,"optional");return t.computed?s.push(a?"?.[":"[",i,"]"):s.push(a?"?.":".",i),y(s)}case"ChainExpression":return r.call(e,"expression");case"MetaProperty":return y([r.call(e,"meta"),".",r.call(e,"property")]);case"BindExpression":return t.object&&s.push(r.call(e,"object")),s.push("::",r.call(e,"callee")),y(s);case"Path":return T(".").join(t.body);case"Identifier":return y([T(t.name,n),t.optional?"?":"",r.call(e,"typeAnnotation")]);case"SpreadElement":case"SpreadElementPattern":case"RestProperty":case"SpreadProperty":case"SpreadPropertyPattern":case"ObjectTypeSpreadProperty":case"RestElement":return y(["...",r.call(e,"argument"),r.call(e,"typeAnnotation")]);case"FunctionDeclaration":case"FunctionExpression":case"TSDeclareFunction":return t.declare&&s.push("declare "),t.async&&s.push("async "),s.push("function"),t.generator&&s.push("*"),t.id?s.push(" ",r.call(e,"id"),r.call(e,"typeParameters")):t.typeParameters&&s.push(r.call(e,"typeParameters")),s.push("(",Ne(r,n,e),")",r.call(e,"returnType")),t.body&&s.push(" ",r.call(e,"body")),y(s);case"ArrowFunctionExpression":return t.async&&s.push("async "),t.typeParameters&&s.push(r.call(e,"typeParameters")),!n.arrowParensAlways&&t.params.length===1&&!t.rest&&t.params[0].type==="Identifier"&&!t.params[0].typeAnnotation&&!t.returnType?s.push(r.call(e,"params",0)):s.push("(",Ne(r,n,e),")",r.call(e,"returnType")),s.push(" => ",r.call(e,"body")),y(s);case"MethodDefinition":return Ws(r,n,e);case"YieldExpression":return s.push("yield"),t.delegate&&s.push("*"),t.argument&&s.push(" ",r.call(e,"argument")),y(s);case"AwaitExpression":return s.push("await"),t.all&&s.push("*"),t.argument&&s.push(" ",r.call(e,"argument")),y(s);case"ModuleExpression":return y([`module {
9615
9626
  `,r.call(e,"body").indent(n.tabWidth),`
9616
9627
  }`]);case"ModuleDeclaration":return s.push("module",r.call(e,"id")),t.source?s.push("from",r.call(e,"source")):s.push(r.call(e,"body")),T(" ").join(s);case"ImportSpecifier":return t.importKind&&t.importKind!=="value"&&s.push(t.importKind+" "),t.imported?(s.push(r.call(e,"imported")),t.local&&t.local.name!==t.imported.name&&s.push(" as ",r.call(e,"local"))):t.id&&(s.push(r.call(e,"id")),t.name&&s.push(" as ",r.call(e,"name"))),y(s);case"ExportSpecifier":return t.exportKind&&t.exportKind!=="value"&&s.push(t.exportKind+" "),t.local?(s.push(r.call(e,"local")),t.exported&&t.exported.name!==t.local.name&&s.push(" as ",r.call(e,"exported"))):t.id&&(s.push(r.call(e,"id")),t.name&&s.push(" as ",r.call(e,"name"))),y(s);case"ExportBatchSpecifier":return T("*");case"ImportNamespaceSpecifier":return s.push("* as "),t.local?s.push(r.call(e,"local")):t.id&&s.push(r.call(e,"id")),y(s);case"ImportDefaultSpecifier":return t.local?r.call(e,"local"):r.call(e,"id");case"TSExportAssignment":return y(["export = ",r.call(e,"expression")]);case"ExportDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":return Oi(r,n,e);case"ExportAllDeclaration":return s.push("export *"),t.exported&&s.push(" as ",r.call(e,"exported")),s.push(" from ",r.call(e,"source"),";"),y(s);case"TSNamespaceExportDeclaration":return s.push("export as namespace ",r.call(e,"id")),kn(y(s));case"ExportNamespaceSpecifier":return y(["* as ",r.call(e,"exported")]);case"ExportDefaultSpecifier":return r.call(e,"exported");case"Import":return T("import",n);case"ImportExpression":return y(["import(",r.call(e,"source"),")"]);case"ImportDeclaration":{if(s.push("import "),t.importKind&&t.importKind!=="value"&&s.push(t.importKind+" "),t.specifiers&&t.specifiers.length>0){let i=[],a=[];if(r.each(function(o){let l=o.getValue();l.type==="ImportSpecifier"?a.push(e(o)):(l.type==="ImportDefaultSpecifier"||l.type==="ImportNamespaceSpecifier")&&i.push(e(o))},"specifiers"),i.forEach((o,l)=>{l>0&&s.push(", "),s.push(o)}),a.length>0){let o=T(", ").join(a);o.getLineLength(1)>n.wrapColumn&&(o=y([T(`,
@@ -9621,14 +9632,14 @@ export { toast, useToast };
9621
9632
  `:"")},"directives"),s.push(i.indent(n.tabWidth)),s.push(`
9622
9633
  }`),y(s))}case"ReturnStatement":{if(s.push("return"),t.argument){let i=r.call(e,"argument");i.startsWithComment()||i.length>1&&X.JSXElement&&X.JSXElement.check(t.argument)?s.push(` (
9623
9634
  `,i.indent(n.tabWidth),`
9624
- )`):s.push(" ",i)}return s.push(";"),y(s)}case"CallExpression":case"OptionalCallExpression":return s.push(r.call(e,"callee")),t.typeParameters&&s.push(r.call(e,"typeParameters")),t.typeArguments&&s.push(r.call(e,"typeArguments")),je(t,"optional")&&s.push("?."),s.push(Li(r,n,e)),y(s);case"RecordExpression":s.push("#");case"ObjectExpression":case"ObjectPattern":case"ObjectTypeAnnotation":{let i=t.type==="ObjectTypeAnnotation",a=n.flowObjectCommas?",":i?";":",",o=[],l=!1;i&&(o.push("indexers","callProperties"),t.internalSlots!=null&&o.push("internalSlots")),o.push("properties");let c=0;o.forEach(function(g){c+=t[g].length});let p=i&&c===1||c===0,u=t.exact?"{|":"{",h=t.exact?"|}":"}";s.push(p?u:u+`
9625
- `);let m=s.length-1,d=0;if(o.forEach(function(g){r.each(function(f){let v=e(f);p||(v=v.indent(n.tabWidth));let w=!i&&v.length>1;w&&l&&s.push(`
9635
+ )`):s.push(" ",i)}return s.push(";"),y(s)}case"CallExpression":case"OptionalCallExpression":return s.push(r.call(e,"callee")),t.typeParameters&&s.push(r.call(e,"typeParameters")),t.typeArguments&&s.push(r.call(e,"typeArguments")),je(t,"optional")&&s.push("?."),s.push(Li(r,n,e)),y(s);case"RecordExpression":s.push("#");case"ObjectExpression":case"ObjectPattern":case"ObjectTypeAnnotation":{let i=t.type==="ObjectTypeAnnotation",a=n.flowObjectCommas?",":i?";":",",o=[],l=!1;i&&(o.push("indexers","callProperties"),t.internalSlots!=null&&o.push("internalSlots")),o.push("properties");let c=0;o.forEach(function(g){c+=t[g].length});let p=i&&c===1||c===0,u=t.exact?"{|":"{",f=t.exact?"|}":"}";s.push(p?u:u+`
9636
+ `);let m=s.length-1,d=0;if(o.forEach(function(g){r.each(function(h){let v=e(h);p||(v=v.indent(n.tabWidth));let w=!i&&v.length>1;w&&l&&s.push(`
9626
9637
  `),s.push(v),d<c-1?(s.push(a+(w?`
9627
9638
 
9628
9639
  `:`
9629
- `)),l=!w):(c!==1&&i||!p&&Xt(n,"objects")&&f.getValue().type!=="RestElement")&&s.push(a),d++},g)}),t.inexact){let g=T("...",n);p?(c>0&&s.push(a," "),s.push(g)):s.push(`
9630
- `,g.indent(n.tabWidth))}return s.push(p?h:`
9631
- `+h),d!==0&&p&&n.objectCurlySpacing&&(s[m]=u+" ",s[s.length-1]=" "+h),t.typeAnnotation&&s.push(r.call(e,"typeAnnotation")),y(s)}case"PropertyPattern":return y([r.call(e,"key"),": ",r.call(e,"pattern")]);case"ObjectProperty":case"Property":{if(t.method||t.kind==="get"||t.kind==="set")return Ws(r,n,e);if(t.shorthand&&t.value.type==="AssignmentPattern")return r.call(e,"value");let i=r.call(e,"key");return t.computed?s.push("[",i,"]"):s.push(i),(!t.shorthand||t.key.name!==t.value.name)&&s.push(": ",r.call(e,"value")),y(s)}case"ClassMethod":case"ObjectMethod":case"ClassPrivateMethod":case"TSDeclareMethod":return Ws(r,n,e);case"PrivateName":return y(["#",r.call(e,"id")]);case"Decorator":return y(["@",r.call(e,"expression")]);case"TupleExpression":s.push("#");case"ArrayExpression":case"ArrayPattern":{let a=t.elements.length,o=r.map(e,"elements"),c=T(", ").join(o).getLineLength(1)<=n.wrapColumn;return c?n.arrayBracketSpacing?s.push("[ "):s.push("["):s.push(`[
9640
+ `)),l=!w):(c!==1&&i||!p&&Xt(n,"objects")&&h.getValue().type!=="RestElement")&&s.push(a),d++},g)}),t.inexact){let g=T("...",n);p?(c>0&&s.push(a," "),s.push(g)):s.push(`
9641
+ `,g.indent(n.tabWidth))}return s.push(p?f:`
9642
+ `+f),d!==0&&p&&n.objectCurlySpacing&&(s[m]=u+" ",s[s.length-1]=" "+f),t.typeAnnotation&&s.push(r.call(e,"typeAnnotation")),y(s)}case"PropertyPattern":return y([r.call(e,"key"),": ",r.call(e,"pattern")]);case"ObjectProperty":case"Property":{if(t.method||t.kind==="get"||t.kind==="set")return Ws(r,n,e);if(t.shorthand&&t.value.type==="AssignmentPattern")return r.call(e,"value");let i=r.call(e,"key");return t.computed?s.push("[",i,"]"):s.push(i),(!t.shorthand||t.key.name!==t.value.name)&&s.push(": ",r.call(e,"value")),y(s)}case"ClassMethod":case"ObjectMethod":case"ClassPrivateMethod":case"TSDeclareMethod":return Ws(r,n,e);case"PrivateName":return y(["#",r.call(e,"id")]);case"Decorator":return y(["@",r.call(e,"expression")]);case"TupleExpression":s.push("#");case"ArrayExpression":case"ArrayPattern":{let a=t.elements.length,o=r.map(e,"elements"),c=T(", ").join(o).getLineLength(1)<=n.wrapColumn;return c?n.arrayBracketSpacing?s.push("[ "):s.push("["):s.push(`[
9632
9643
  `),r.each(function(p){let u=p.getName();if(!p.getValue())s.push(",");else{let m=o[u];c?u>0&&s.push(" "):m=m.indent(n.tabWidth),s.push(m),(u<a-1||!c&&Xt(n,"arrays"))&&s.push(","),c||s.push(`
9633
9644
  `)}},"elements"),c&&n.arrayBracketSpacing?s.push(" ]"):s.push("]"),t.typeAnnotation&&s.push(r.call(e,"typeAnnotation")),y(s)}case"SequenceExpression":return T(", ").join(r.map(e,"expressions"));case"ThisExpression":return T("this");case"Super":return T("super");case"NullLiteral":return T("null");case"RegExpLiteral":return T(vt(t)||`/${t.pattern}/${t.flags||""}`,n);case"BigIntLiteral":return T(vt(t)||t.value+"n",n);case"NumericLiteral":return T(vt(t)||t.value,n);case"DecimalLiteral":return T(vt(t)||t.value+"m",n);case"StringLiteral":return T(Gt(t.value,n));case"BooleanLiteral":case"Literal":return T(vt(t)||(typeof t.value=="string"?Gt(t.value,n):t.value),n);case"Directive":return r.call(e,"value");case"DirectiveLiteral":return T(vt(t)||Gt(t.value,n),n);case"InterpreterDirective":return T(`#!${t.value}
9634
9645
  `,n);case"ModuleSpecifier":if(t.local)throw new Error("The ESTree ModuleSpecifier type should be abstract");return T(Gt(t.value,n),n);case"UnaryExpression":return s.push(t.operator),/[a-z]$/.test(t.operator)&&s.push(" "),s.push(r.call(e,"argument")),y(s);case"UpdateExpression":return s.push(r.call(e,"argument"),t.operator),t.prefix&&s.reverse(),y(s);case"ConditionalExpression":return y([r.call(e,"test")," ? ",r.call(e,"consequent")," : ",r.call(e,"alternate")]);case"NewExpression":return s.push("new ",r.call(e,"callee")),t.typeParameters&&s.push(r.call(e,"typeParameters")),t.typeArguments&&s.push(r.call(e,"typeArguments")),t.arguments&&s.push(Li(r,n,e)),y(s);case"VariableDeclaration":{t.declare&&s.push("declare "),s.push(t.kind," ");let i=0,a=r.map(function(l){let c=e(l);return i=Math.max(c.length,i),c},"declarations");i===1?s.push(T(", ").join(a)):a.length>1?s.push(T(`,
@@ -9667,11 +9678,11 @@ while`),s.push(" (",r.call(e,"test"),");"),y(s)}case"DoExpression":{let i=r.call
9667
9678
  `,i.indent(n.tabWidth),`
9668
9679
  }`),y(s)}case"TSInstantiationExpression":return s.push(r.call(e,"expression"),r.call(e,"typeParameters")),y(s);case"V8IntrinsicIdentifier":return y(["%",r.call(e,"name")]);case"TopicReference":return T("#");case"ClassHeritage":case"ComprehensionBlock":case"ComprehensionExpression":case"Glob":case"GeneratorExpression":case"LetStatement":case"LetExpression":case"GraphExpression":case"GraphIndexExpression":case"XMLDefaultDeclaration":case"XMLAnyName":case"XMLQualifiedIdentifier":case"XMLFunctionQualifiedIdentifier":case"XMLAttributeSelector":case"XMLFilterExpression":case"XML":case"XMLElement":case"XMLList":case"XMLEscape":case"XMLText":case"XMLStartTag":case"XMLEndTag":case"XMLPointTag":case"XMLName":case"XMLAttribute":case"XMLCdata":case"XMLComment":case"XMLProcessingInstruction":default:debugger;throw new Error("unknown type: "+JSON.stringify(t.type))}}function Gc(r,n){let e=[],t=r.getValue();return t.decorators&&t.decorators.length>0&&!Ji(r)?r.each(function(s){e.push(n(s),`
9669
9680
  `)},"decorators"):Rn(t)&&t.declaration&&t.declaration.decorators&&r.each(function(s){e.push(n(s),`
9670
- `)},"declaration","decorators"),y(e)}function yt(r,n,e){let t=[];r.each(function(o){let l=o.getValue();l&&(l.type==="EmptyStatement"&&!(l.comments&&l.comments.length>0)||(X.Comment.check(l)||X.Statement.check(l)||lr.assert(l),t.push({node:l,printed:e(o)})))});let s=null,i=t.length,a=[];return t.forEach(function(o,l){let c=o.printed,p=o.node,u=c.length>1,h=l>0,m=l<i-1,d,g,f=p&&p.loc&&p.loc.lines,v=f&&n.reuseWhitespace&&Ki(p,f);if(h)if(v){let w=f.skipSpaces(v.start,!0),E=w?w.line:1,x=v.start.line-E;d=Array(x+1).join(`
9681
+ `)},"declaration","decorators"),y(e)}function yt(r,n,e){let t=[];r.each(function(o){let l=o.getValue();l&&(l.type==="EmptyStatement"&&!(l.comments&&l.comments.length>0)||(X.Comment.check(l)||X.Statement.check(l)||lr.assert(l),t.push({node:l,printed:e(o)})))});let s=null,i=t.length,a=[];return t.forEach(function(o,l){let c=o.printed,p=o.node,u=c.length>1,f=l>0,m=l<i-1,d,g,h=p&&p.loc&&p.loc.lines,v=h&&n.reuseWhitespace&&Ki(p,h);if(f)if(v){let w=h.skipSpaces(v.start,!0),E=w?w.line:1,x=v.start.line-E;d=Array(x+1).join(`
9671
9682
  `)}else d=u?`
9672
9683
 
9673
9684
  `:`
9674
- `;else d="";if(m)if(v){let w=f.skipSpaces(v.end),x=(w?w.line:f.length)-v.end.line;g=Array(x+1).join(`
9685
+ `;else d="";if(m)if(v){let w=h.skipSpaces(v.end),x=(w?w.line:h.length)-v.end.line;g=Array(x+1).join(`
9675
9686
  `)}else g=u?`
9676
9687
 
9677
9688
  `:`
@@ -9697,14 +9708,14 @@ ${" ".repeat(6+s)}^`),c));n+=`
9697
9708
 
9698
9709
  ${l.join(`
9699
9710
  `)}
9700
- `}this.message=n}},ep=new Set(["Literal","StringLiteral","NumericLiteral","BooleanLiteral","NullLiteral","RegExpLiteral","BigIntLiteral"]),da=new Set(["string","number","boolean","bigint","symbol","undefined"]),Z=nn;function tp(r){return/^[$A-Z_a-z][\w$]*$/.test(r)}var cr="__magicast_proxy";function ye(r,n=new Set){if(r===void 0)return Z.identifier("undefined");if(r===null)return Z.literal(null);if(da.has(typeof r))return Z.literal(r);if(n.has(r))throw new pe("Can not serialize circular reference");if(n.add(r),r[cr])return r.$ast;if(r instanceof RegExp){let e=Z.regExpLiteral(r.source,r.flags);return delete e.extra.raw,e}return r instanceof Set?Z.newExpression(Z.identifier("Set"),[Z.arrayExpression([...r].map(e=>ye(e,n)))]):r instanceof Date?Z.newExpression(Z.identifier("Date"),[Z.literal(r.toISOString())]):r instanceof Map?Z.newExpression(Z.identifier("Map"),[Z.arrayExpression([...r].map(([e,t])=>Z.arrayExpression([ye(e,n),ye(t,n)])))]):Array.isArray(r)?Z.arrayExpression(r.map(e=>ye(e,n))):typeof r=="object"?Z.objectExpression(Object.entries(r).map(([e,t])=>Z.property("init",/^[$A-Z_a-z][\w$]*$/g.test(e)?Z.identifier(e):Z.literal(e),ye(t,n)))):Z.literal(r)}function np(r,n={}){let e=n;return e[cr]=!0,e.$ast=r,e.$type||(e.$type="object"),e}var sp={enumerable:!0,configurable:!0};function De(r,n,e){let t=np(r,n);return new Proxy({},{ownKeys(){return Object.keys(t).filter(s=>s!==cr&&!s.startsWith("$"))},getOwnPropertyDescriptor(){return sp},has(s,i){return i in t},...e,get(s,i,a){if(i in t)return t[i];if(e.get)return e.get(s,i,a)},set(s,i,a,o){return i in t?(t[i]=a,!0):e.set?e.set(s,i,a,o):!1}})}var Pe=nn,Gs=new WeakMap;function rp(r,n,e){if(Gs.has(n))return Gs.get(n);let t=De(n,{get $declaration(){return r},get imported(){return n.type==="ImportDefaultSpecifier"?"default":n.type==="ImportNamespaceSpecifier"?"*":n.imported.type==="Identifier"?n.imported.name:n.imported.value},set imported(s){if(n.type!=="ImportSpecifier")throw new pe("Changing import name is not yet implemented");n.imported.type==="Identifier"?n.imported.name=s:n.imported.value=s},get local(){return n.local.name},set local(s){n.local.name=s},get from(){return r.source.value},set from(s){if(s===r.source.value)return;r.specifiers=r.specifiers.filter(a=>a!==n),r.specifiers.length===0&&(e.body=e.body.filter(a=>a!==r));let i=e.body.find(a=>a.type==="ImportDeclaration"&&a.source.value===s);i?i.specifiers.push(n):e.body.unshift(Pe.importDeclaration([n],Pe.stringLiteral(s)))},toJSON(){return{imported:this.imported,local:this.local,from:this.from}}},{ownKeys(){return["imported","local","from","toJSON"]}});return Gs.set(n,t),t}function ip(r,n){let e=()=>{let a=[];for(let o of r.body)if(o.type==="ImportDeclaration")for(let l of o.specifiers)a.push(rp(o,l,r));return a},t=(a,o)=>{let l=e(),c=l.find(m=>m.local===a),p=o.local||a;if(c)return c.imported=o.imported,c.local=p,c.from=o.from,!0;let u=o.imported==="default"?Pe.importDefaultSpecifier(Pe.identifier(p)):o.imported==="*"?Pe.importNamespaceSpecifier(Pe.identifier(p)):Pe.importSpecifier(Pe.identifier(o.imported),Pe.identifier(p)),h=l.find(m=>m.from===o.from)?.$declaration;return h?h.specifiers.push(u):r.body.unshift(Pe.importDeclaration([u],Pe.stringLiteral(o.from))),!0},s=a=>{let o=e().find(p=>p.local===a);if(!o)return!1;let l=o.$declaration,c=o.$ast;return l.specifiers=l.specifiers.filter(p=>p!==c),l.specifiers.length===0&&(r.body=r.body.filter(p=>p!==l)),!0},i=De(r,{$type:"imports",$add(a){i[a.local||a.imported]=a},get $items(){return e()},toJSON(){return e().reduce((a,o)=>(a[o.local]=o,a),{})}},{get(a,o){return e().find(l=>l.local===o)},set(a,o,l){return t(o,l)},deleteProperty(a,o){return s(o)},ownKeys(){return e().map(a=>a.local)},has(a,o){return e().some(l=>l.local===o)}});return i}function jn(r,n,e){let t=i=>n[i],s=(i,a)=>{n[i]=a};return De(r,{$type:"array",push(i){n.push(ye(i))},pop(){return ae(n.pop(),e)},unshift(i){n.unshift(ye(i))},shift(){return ae(n.shift(),e)},splice(i,a,...o){return n.splice(i,a,...o.map(c=>ye(c))).map(c=>ae(c,e))},find(i){return n.map(a=>ae(a,e)).find(i)},findIndex(i){return n.map(a=>ae(a,e)).findIndex(i)},includes(i){return n.map(a=>ae(a,e)).includes(i)},toJSON(){return n.map(i=>ae(i,e))}},{get(i,a){if(a==="length")return n.length;if(a===Symbol.iterator)return function*(){for(let c of n)yield ae(c,e)};if(typeof a=="symbol")return;let o=+a;if(Number.isNaN(o))return;let l=t(o);if(l)return ae(l,e)},set(i,a,o){if(typeof a=="symbol")return!1;let l=+a;return Number.isNaN(l)?!1:(s(l,ye(o)),!0)},deleteProperty(i,a){if(typeof a=="symbol")return!1;let o=+a;return Number.isNaN(o)?!1:(n[o]=ye(void 0),!0)},ownKeys(){return["length",...n.map((i,a)=>a.toString())]}})}function ap(r,n){if("elements"in r)return jn(r,r.elements,n)}function op(r,n){if(r.type!=="CallExpression")throw new pe("Not a function call");function e(s){if(s.type==="Identifier")return s.name;if(s.type==="MemberExpression")return`${e(s.object)}.${e(s.property)}`;throw new pe("Not implemented")}let t=jn(r,r.arguments,n);return De(r,{$type:"function-call",$callee:e(r.callee),$args:t},{})}function lp(r,n){if(r.type!=="ArrowFunctionExpression")throw new pe("Not an arrow function expression");let e=jn(r,r.params,n);return De(r,{$type:"arrow-function-expression",$params:e,$body:ae(r.body,n)},{})}var cp=nn;function pp(r,n){if(!("properties"in r))return;let e=i=>{for(let a of r.properties){if("key"in a&&"name"in a.key&&a.key.name===i)return a.value;if(a.type==="ObjectProperty"&&(a.key.type==="StringLiteral"||a.key.type==="NumericLiteral"||a.key.type==="BooleanLiteral")&&a.key.value.toString()===i)return a.value.value??a.value}},t=(i,a=!1)=>{if("key"in i&&"name"in i.key)return i.key.name;if(i.type==="ObjectProperty"&&(i.key.type==="StringLiteral"||i.key.type==="NumericLiteral"||i.key.type==="BooleanLiteral"))return i.key.value.toString();if(a)throw new pe(`Casting "${i.type}" is not supported`,{ast:i,code:n?.$code})},s=(i,a)=>{let o=r.properties.find(l=>t(l)===i);o?o.value=a:tp(i)?r.properties.push({type:"Property",key:{type:"Identifier",name:i},value:a}):r.properties.push({type:"ObjectProperty",key:cp.stringLiteral(i),value:a})};return De(r,{$type:"object",toJSON(){return r.properties.reduce((i,a)=>("key"in a&&"name"in a.key&&(i[a.key.name]=ae(a.value,n)),i),{})}},{get(i,a){let o=e(a);if(o)return ae(o,n)},set(i,a,o){return typeof a!="string"&&(a=String(a)),s(a,ye(o)),!0},deleteProperty(i,a){typeof a!="string"&&(a=String(a));let o=r.properties.findIndex(l=>"key"in l&&"name"in l.key&&l.key.name===a);return o!==-1&&r.properties.splice(o,1),!0},ownKeys(){return r.properties.map(i=>t(i,!0)).filter(Boolean)}})}function up(r,n){if(r.type!=="NewExpression")throw new pe("Not a new expression");function e(s){if(s.type==="Identifier")return s.name;if(s.type==="MemberExpression")return`${e(s.object)}.${e(s.property)}`;throw new pe("Not implemented")}let t=jn(r,r.arguments,n);return De(r,{$type:"new-expression",$callee:e(r.callee),$args:t},{})}function dp(r){if(r.type!=="Identifier")throw new pe("Not an identifier");return De(r,{$type:"identifier",$name:r.name},{})}var Ks=new WeakMap;function ae(r,n){if(da.has(typeof r))return r;if(ep.has(r.type))return r.value;if(Ks.has(r))return Ks.get(r);let e;switch(r.type){case"ObjectExpression":{e=pp(r,n);break}case"ArrayExpression":{e=ap(r,n);break}case"CallExpression":{e=op(r,n);break}case"ArrowFunctionExpression":{e=lp(r,n);break}case"NewExpression":{e=up(r,n);break}case"Identifier":{e=dp(r);break}case"TSAsExpression":case"TSSatisfiesExpression":{e=ae(r.expression,n);break}default:throw new pe(`Casting "${r.type}" is not supported`,{ast:r,code:n?.$code})}return Ks.set(r,e),e}var Kt=nn;function hp(r,n){let e=s=>{let i=s==="default"?"ExportDefaultDeclaration":"ExportNamedDeclaration";for(let a of r.body)if(a.type===i){if(s==="default")return a.declaration;if(a.declaration&&"declarations"in a.declaration){let o=a.declaration.declarations[0];if("name"in o.id&&o.id.name===s)return o.init}}},t=(s,i)=>{let a=s==="default"?"ExportDefaultDeclaration":"ExportNamedDeclaration",o=ye(i);for(let l of r.body)if(l.type===a){if(s==="default"){l.declaration=o;return}if(l.declaration&&"declarations"in l.declaration){let c=l.declaration.declarations[0];if("name"in c.id&&c.id.name===s){c.init=o;return}}}r.body.push(s==="default"?Kt.exportDefaultDeclaration(o):Kt.exportNamedDeclaration(Kt.variableDeclaration("const",[Kt.variableDeclarator(Kt.identifier(s),o)])))};return De(r,{$type:"exports"},{get(s,i){let a=e(i);if(a)return ae(a,n)},set(s,i,a){return t(i,a),!0},ownKeys(){return r.body.flatMap(s=>s.type==="ExportDefaultDeclaration"?["default"]:s.type==="ExportNamedDeclaration"&&s.declaration&&"declarations"in s.declaration?s.declaration.declarations.map(i=>"name"in i.id?i.id.name:""):[]).filter(Boolean)},deleteProperty(s,i){let a=i==="default"?"ExportDefaultDeclaration":"ExportNamedDeclaration";for(let o=0;o<r.body.length;o++){let l=r.body[o];if(l.type===a){if(i==="default")return r.body.splice(o,1),!0;if(l.declaration&&"declarations"in l.declaration){let c=l.declaration.declarations[0];if("name"in c.id&&c.id.name===i)return r.body.splice(o,1),!0}}}return!1}})}function fp(r,n){let e=r.program;if(e.type!=="Program")throw new pe(`Cannot proxify ${r.type} as module`);let t={$code:n,$type:"module"},s=De(e,t,{ownKeys(){return["imports","exports","generate"]}});return t.exports=hp(e,s),t.imports=ip(e),t.generate=i=>ha(s,i),s}function mp(r,n={}){let e={wrapColumn:n.wrapColumn===void 0,indent:n.tabWidth===void 0||n.useTabs===void 0,quote:n.quote===void 0,arrowParens:n.arrowParensAlways===void 0,trailingComma:n.trailingComma===void 0},t=2,s=0,i=0,a=0,o=0,l=/(?<doubleQuote>"[^"]+")|(?<singleQuote>'[^']+')|(?<singleParam>\([^),]+\)\s*=>)|(?<trailingComma>,\s*[\]}])/g,c={doubleQuote:0,singleQuote:0,singleParam:0,trailingComma:0},p=(r||"").split(`
9701
- `),u=!1;for(let h of p){let m=h.trim();if(m.length!==0){if(e.wrapColumn&&h.length>a&&(a=h.length),e.indent){let d=h.match(/^\s+/)?.[0]||"";d.length>0&&(d.length>0&&d.length<t&&(t=d.length),d[0]===" "?s++:d.length>0&&s--)}if(m.at(-1)===";"?i++:m.length>0&&i--,e.quote||e.arrowParens){let d=m.matchAll(l);for(let g of d)if(g.groups)for(let f in c)g.groups[f]&&c[f]++}e.trailingComma&&((h.startsWith("}")||h.startsWith("]"))&&(u?o++:o--),u=m.endsWith(","))}}return{wrapColumn:a,useTabs:s>0,tabWidth:t,quote:c.singleQuote>c.doubleQuote?"single":"double",arrowParensAlways:c.singleParam>0,trailingComma:o>0||c.trailingComma>0,useSemi:i>0,arrayBracketSpacing:void 0,objectCurlySpacing:void 0,...n}}function bp(r,n){let e=Mc(r,{parser:n?.parser||Xc(),...n});return fp(e,r)}function ha(r,n={}){let e=r.$ast||r,t=n.format===!1||!("$code"in r)?{}:mp(r.$code,n.format),{code:s,map:i}=Jc(e,{...n,...t});return{code:s,map:i}}async function fa(r,n={}){let e=await Js.readFile(r,"utf8");return n.sourceFileName=n.sourceFileName??r,bp(e,n)}async function ma(r,n,e){let t="$ast"in r?r.$ast:r,{code:s,map:i}=ha(t,e);await Js.writeFile(n,s),i&&await Js.writeFile(n+".map",i)}var Ku=an(cs(),1),Ju=an(Hs(),1);function ba(r,n){if(typeof n=="object")for(let e in n)typeof r[e]=="object"&&typeof n[e]=="object"?ba(r[e],n[e]):r[e]=n[e]}function pr(r){return gp(r.exports.default)}function gp(r){return r.$type==="function-call"?r.$args[0]:r}function ga(r,n,e,t){let s=pr(r);s.modules||(s.modules=[]),s.modules.includes(n)||s.modules.push(n),e&&(s[e]||(s[e]={}),ba(s[e],t))}import wp from"prompts";import yp from"kleur";import vp from"prompts";var ya=["radix-vue","tailwind-variants"],va=["typescript","tailwindcss-animate","nuxt-icon","prettier-plugin-tailwindcss","prettier","@nuxtjs/tailwindcss","@nuxtjs/color-mode","@ianvs/prettier-plugin-sort-imports","@vueuse/nuxt"],xa=["@nuxtjs/tailwindcss","@nuxtjs/color-mode","@vueuse/nuxt","nuxt-icon"],Vn=[{title:"Zinc",value:"zinc"},{title:"Slate",value:"slate"},{title:"Stone",value:"stone"},{title:"Gray",value:"gray"},{title:"Neutral",value:"neutral"},{title:"Red",value:"red"},{title:"Rose",value:"rose"},{title:"Orange",value:"orange"},{title:"Green",value:"green"},{title:"Blue",value:"blue"},{title:"Yellow",value:"yellow"},{title:"Violet",value:"violet"}];var Pa=async()=>{let r=await vp([{name:"theme",type:"autocomplete",message:"Which theme do you want to start with?",choices:Vn},{name:"tailwindCSSLocation",type:"text",message:"Where is your tailwind.css file located?",initial:"assets/css/tailwind.css"},{name:"tailwindConfigLocation",type:"text",message:"Where is your tailwind.config file located?",initial:"tailwind.config.js"},{name:"componentsLocation",type:"text",message:"Where should your components be stored?",initial:"components/Ui"},{name:"composablesLocation",type:"text",message:"Where should your composables be stored?",initial:"composables"},{name:"utilsLocation",type:"text",message:"Where should your utils be stored?",initial:"utils"},{name:"force",type:"confirm",message:"Should we just replace component files if they already exist?",initial:!0},{name:"useDefaultFilename",type:"confirm",message:"Would you like to use the default filename when adding components?",initial:!0},{name:"packageManager",type:"select",message:"Which package manager do you use?",choices:[{title:"NPM",value:"npm"},{title:"Yarn",value:"yarn"},{title:"PNPM",value:"pnpm"},{title:"Bun",value:"bun"}]}]);return!r||Object.keys(r).length<9?(console.log(yp.red("Incomplete configuration submitted. Exiting...")),process.exit(0)):r};var Cp=process.cwd(),ur="ui-thing.config.ts",Sp={theme:"zinc",tailwindCSSLocation:"assets/css/tailwind.css",tailwindConfigLocation:"tailwind.config.js",componentsLocation:"components/Ui",composablesLocation:"composables",utilsLocation:"utils",force:!0,useDefaultFilename:!0,packageManager:"npm"},Tt=async()=>{if(!Se.existsSync("nuxt.config.ts"))return console.log(Ta.red(`No ${Ta.bgWhite("nuxt.config.ts")} file found. Exiting...`)),process.exit(0);let r=await fa(xp(Cp,"nuxt.config.ts")),n=pr(r);return{nuxtConfig:r,defaultExport:n}},Ie=async r=>{let n=Se.existsSync(ur),e={};if(!n||r?.force){if(r?.yes?e=Sp:e=await Pa(),await Se.writeFile(ur,`export default ${JSON.stringify(e,null,2)}`),e.packageManager==="pnpm")if(Se.existsSync(".npmrc")){let{confirmCreateNpmrc:s}=await wp({type:"confirm",name:"confirmCreateNpmrc",message:"A .npmrc file already exists. Do you want to overwrite it?",initial:!1});s&&await Se.writeFile(".npmrc",`shamefully-hoist=true
9711
+ `}this.message=n}},ep=new Set(["Literal","StringLiteral","NumericLiteral","BooleanLiteral","NullLiteral","RegExpLiteral","BigIntLiteral"]),da=new Set(["string","number","boolean","bigint","symbol","undefined"]),Z=nn;function tp(r){return/^[$A-Z_a-z][\w$]*$/.test(r)}var cr="__magicast_proxy";function ye(r,n=new Set){if(r===void 0)return Z.identifier("undefined");if(r===null)return Z.literal(null);if(da.has(typeof r))return Z.literal(r);if(n.has(r))throw new pe("Can not serialize circular reference");if(n.add(r),r[cr])return r.$ast;if(r instanceof RegExp){let e=Z.regExpLiteral(r.source,r.flags);return delete e.extra.raw,e}return r instanceof Set?Z.newExpression(Z.identifier("Set"),[Z.arrayExpression([...r].map(e=>ye(e,n)))]):r instanceof Date?Z.newExpression(Z.identifier("Date"),[Z.literal(r.toISOString())]):r instanceof Map?Z.newExpression(Z.identifier("Map"),[Z.arrayExpression([...r].map(([e,t])=>Z.arrayExpression([ye(e,n),ye(t,n)])))]):Array.isArray(r)?Z.arrayExpression(r.map(e=>ye(e,n))):typeof r=="object"?Z.objectExpression(Object.entries(r).map(([e,t])=>Z.property("init",/^[$A-Z_a-z][\w$]*$/g.test(e)?Z.identifier(e):Z.literal(e),ye(t,n)))):Z.literal(r)}function np(r,n={}){let e=n;return e[cr]=!0,e.$ast=r,e.$type||(e.$type="object"),e}var sp={enumerable:!0,configurable:!0};function De(r,n,e){let t=np(r,n);return new Proxy({},{ownKeys(){return Object.keys(t).filter(s=>s!==cr&&!s.startsWith("$"))},getOwnPropertyDescriptor(){return sp},has(s,i){return i in t},...e,get(s,i,a){if(i in t)return t[i];if(e.get)return e.get(s,i,a)},set(s,i,a,o){return i in t?(t[i]=a,!0):e.set?e.set(s,i,a,o):!1}})}var Pe=nn,Gs=new WeakMap;function rp(r,n,e){if(Gs.has(n))return Gs.get(n);let t=De(n,{get $declaration(){return r},get imported(){return n.type==="ImportDefaultSpecifier"?"default":n.type==="ImportNamespaceSpecifier"?"*":n.imported.type==="Identifier"?n.imported.name:n.imported.value},set imported(s){if(n.type!=="ImportSpecifier")throw new pe("Changing import name is not yet implemented");n.imported.type==="Identifier"?n.imported.name=s:n.imported.value=s},get local(){return n.local.name},set local(s){n.local.name=s},get from(){return r.source.value},set from(s){if(s===r.source.value)return;r.specifiers=r.specifiers.filter(a=>a!==n),r.specifiers.length===0&&(e.body=e.body.filter(a=>a!==r));let i=e.body.find(a=>a.type==="ImportDeclaration"&&a.source.value===s);i?i.specifiers.push(n):e.body.unshift(Pe.importDeclaration([n],Pe.stringLiteral(s)))},toJSON(){return{imported:this.imported,local:this.local,from:this.from}}},{ownKeys(){return["imported","local","from","toJSON"]}});return Gs.set(n,t),t}function ip(r,n){let e=()=>{let a=[];for(let o of r.body)if(o.type==="ImportDeclaration")for(let l of o.specifiers)a.push(rp(o,l,r));return a},t=(a,o)=>{let l=e(),c=l.find(m=>m.local===a),p=o.local||a;if(c)return c.imported=o.imported,c.local=p,c.from=o.from,!0;let u=o.imported==="default"?Pe.importDefaultSpecifier(Pe.identifier(p)):o.imported==="*"?Pe.importNamespaceSpecifier(Pe.identifier(p)):Pe.importSpecifier(Pe.identifier(o.imported),Pe.identifier(p)),f=l.find(m=>m.from===o.from)?.$declaration;return f?f.specifiers.push(u):r.body.unshift(Pe.importDeclaration([u],Pe.stringLiteral(o.from))),!0},s=a=>{let o=e().find(p=>p.local===a);if(!o)return!1;let l=o.$declaration,c=o.$ast;return l.specifiers=l.specifiers.filter(p=>p!==c),l.specifiers.length===0&&(r.body=r.body.filter(p=>p!==l)),!0},i=De(r,{$type:"imports",$add(a){i[a.local||a.imported]=a},get $items(){return e()},toJSON(){return e().reduce((a,o)=>(a[o.local]=o,a),{})}},{get(a,o){return e().find(l=>l.local===o)},set(a,o,l){return t(o,l)},deleteProperty(a,o){return s(o)},ownKeys(){return e().map(a=>a.local)},has(a,o){return e().some(l=>l.local===o)}});return i}function jn(r,n,e){let t=i=>n[i],s=(i,a)=>{n[i]=a};return De(r,{$type:"array",push(i){n.push(ye(i))},pop(){return ae(n.pop(),e)},unshift(i){n.unshift(ye(i))},shift(){return ae(n.shift(),e)},splice(i,a,...o){return n.splice(i,a,...o.map(c=>ye(c))).map(c=>ae(c,e))},find(i){return n.map(a=>ae(a,e)).find(i)},findIndex(i){return n.map(a=>ae(a,e)).findIndex(i)},includes(i){return n.map(a=>ae(a,e)).includes(i)},toJSON(){return n.map(i=>ae(i,e))}},{get(i,a){if(a==="length")return n.length;if(a===Symbol.iterator)return function*(){for(let c of n)yield ae(c,e)};if(typeof a=="symbol")return;let o=+a;if(Number.isNaN(o))return;let l=t(o);if(l)return ae(l,e)},set(i,a,o){if(typeof a=="symbol")return!1;let l=+a;return Number.isNaN(l)?!1:(s(l,ye(o)),!0)},deleteProperty(i,a){if(typeof a=="symbol")return!1;let o=+a;return Number.isNaN(o)?!1:(n[o]=ye(void 0),!0)},ownKeys(){return["length",...n.map((i,a)=>a.toString())]}})}function ap(r,n){if("elements"in r)return jn(r,r.elements,n)}function op(r,n){if(r.type!=="CallExpression")throw new pe("Not a function call");function e(s){if(s.type==="Identifier")return s.name;if(s.type==="MemberExpression")return`${e(s.object)}.${e(s.property)}`;throw new pe("Not implemented")}let t=jn(r,r.arguments,n);return De(r,{$type:"function-call",$callee:e(r.callee),$args:t},{})}function lp(r,n){if(r.type!=="ArrowFunctionExpression")throw new pe("Not an arrow function expression");let e=jn(r,r.params,n);return De(r,{$type:"arrow-function-expression",$params:e,$body:ae(r.body,n)},{})}var cp=nn;function pp(r,n){if(!("properties"in r))return;let e=i=>{for(let a of r.properties){if("key"in a&&"name"in a.key&&a.key.name===i)return a.value;if(a.type==="ObjectProperty"&&(a.key.type==="StringLiteral"||a.key.type==="NumericLiteral"||a.key.type==="BooleanLiteral")&&a.key.value.toString()===i)return a.value.value??a.value}},t=(i,a=!1)=>{if("key"in i&&"name"in i.key)return i.key.name;if(i.type==="ObjectProperty"&&(i.key.type==="StringLiteral"||i.key.type==="NumericLiteral"||i.key.type==="BooleanLiteral"))return i.key.value.toString();if(a)throw new pe(`Casting "${i.type}" is not supported`,{ast:i,code:n?.$code})},s=(i,a)=>{let o=r.properties.find(l=>t(l)===i);o?o.value=a:tp(i)?r.properties.push({type:"Property",key:{type:"Identifier",name:i},value:a}):r.properties.push({type:"ObjectProperty",key:cp.stringLiteral(i),value:a})};return De(r,{$type:"object",toJSON(){return r.properties.reduce((i,a)=>("key"in a&&"name"in a.key&&(i[a.key.name]=ae(a.value,n)),i),{})}},{get(i,a){let o=e(a);if(o)return ae(o,n)},set(i,a,o){return typeof a!="string"&&(a=String(a)),s(a,ye(o)),!0},deleteProperty(i,a){typeof a!="string"&&(a=String(a));let o=r.properties.findIndex(l=>"key"in l&&"name"in l.key&&l.key.name===a);return o!==-1&&r.properties.splice(o,1),!0},ownKeys(){return r.properties.map(i=>t(i,!0)).filter(Boolean)}})}function up(r,n){if(r.type!=="NewExpression")throw new pe("Not a new expression");function e(s){if(s.type==="Identifier")return s.name;if(s.type==="MemberExpression")return`${e(s.object)}.${e(s.property)}`;throw new pe("Not implemented")}let t=jn(r,r.arguments,n);return De(r,{$type:"new-expression",$callee:e(r.callee),$args:t},{})}function dp(r){if(r.type!=="Identifier")throw new pe("Not an identifier");return De(r,{$type:"identifier",$name:r.name},{})}var Ks=new WeakMap;function ae(r,n){if(da.has(typeof r))return r;if(ep.has(r.type))return r.value;if(Ks.has(r))return Ks.get(r);let e;switch(r.type){case"ObjectExpression":{e=pp(r,n);break}case"ArrayExpression":{e=ap(r,n);break}case"CallExpression":{e=op(r,n);break}case"ArrowFunctionExpression":{e=lp(r,n);break}case"NewExpression":{e=up(r,n);break}case"Identifier":{e=dp(r);break}case"TSAsExpression":case"TSSatisfiesExpression":{e=ae(r.expression,n);break}default:throw new pe(`Casting "${r.type}" is not supported`,{ast:r,code:n?.$code})}return Ks.set(r,e),e}var Kt=nn;function fp(r,n){let e=s=>{let i=s==="default"?"ExportDefaultDeclaration":"ExportNamedDeclaration";for(let a of r.body)if(a.type===i){if(s==="default")return a.declaration;if(a.declaration&&"declarations"in a.declaration){let o=a.declaration.declarations[0];if("name"in o.id&&o.id.name===s)return o.init}}},t=(s,i)=>{let a=s==="default"?"ExportDefaultDeclaration":"ExportNamedDeclaration",o=ye(i);for(let l of r.body)if(l.type===a){if(s==="default"){l.declaration=o;return}if(l.declaration&&"declarations"in l.declaration){let c=l.declaration.declarations[0];if("name"in c.id&&c.id.name===s){c.init=o;return}}}r.body.push(s==="default"?Kt.exportDefaultDeclaration(o):Kt.exportNamedDeclaration(Kt.variableDeclaration("const",[Kt.variableDeclarator(Kt.identifier(s),o)])))};return De(r,{$type:"exports"},{get(s,i){let a=e(i);if(a)return ae(a,n)},set(s,i,a){return t(i,a),!0},ownKeys(){return r.body.flatMap(s=>s.type==="ExportDefaultDeclaration"?["default"]:s.type==="ExportNamedDeclaration"&&s.declaration&&"declarations"in s.declaration?s.declaration.declarations.map(i=>"name"in i.id?i.id.name:""):[]).filter(Boolean)},deleteProperty(s,i){let a=i==="default"?"ExportDefaultDeclaration":"ExportNamedDeclaration";for(let o=0;o<r.body.length;o++){let l=r.body[o];if(l.type===a){if(i==="default")return r.body.splice(o,1),!0;if(l.declaration&&"declarations"in l.declaration){let c=l.declaration.declarations[0];if("name"in c.id&&c.id.name===i)return r.body.splice(o,1),!0}}}return!1}})}function hp(r,n){let e=r.program;if(e.type!=="Program")throw new pe(`Cannot proxify ${r.type} as module`);let t={$code:n,$type:"module"},s=De(e,t,{ownKeys(){return["imports","exports","generate"]}});return t.exports=fp(e,s),t.imports=ip(e),t.generate=i=>fa(s,i),s}function mp(r,n={}){let e={wrapColumn:n.wrapColumn===void 0,indent:n.tabWidth===void 0||n.useTabs===void 0,quote:n.quote===void 0,arrowParens:n.arrowParensAlways===void 0,trailingComma:n.trailingComma===void 0},t=2,s=0,i=0,a=0,o=0,l=/(?<doubleQuote>"[^"]+")|(?<singleQuote>'[^']+')|(?<singleParam>\([^),]+\)\s*=>)|(?<trailingComma>,\s*[\]}])/g,c={doubleQuote:0,singleQuote:0,singleParam:0,trailingComma:0},p=(r||"").split(`
9712
+ `),u=!1;for(let f of p){let m=f.trim();if(m.length!==0){if(e.wrapColumn&&f.length>a&&(a=f.length),e.indent){let d=f.match(/^\s+/)?.[0]||"";d.length>0&&(d.length>0&&d.length<t&&(t=d.length),d[0]===" "?s++:d.length>0&&s--)}if(m.at(-1)===";"?i++:m.length>0&&i--,e.quote||e.arrowParens){let d=m.matchAll(l);for(let g of d)if(g.groups)for(let h in c)g.groups[h]&&c[h]++}e.trailingComma&&((f.startsWith("}")||f.startsWith("]"))&&(u?o++:o--),u=m.endsWith(","))}}return{wrapColumn:a,useTabs:s>0,tabWidth:t,quote:c.singleQuote>c.doubleQuote?"single":"double",arrowParensAlways:c.singleParam>0,trailingComma:o>0||c.trailingComma>0,useSemi:i>0,arrayBracketSpacing:void 0,objectCurlySpacing:void 0,...n}}function bp(r,n){let e=Mc(r,{parser:n?.parser||Xc(),...n});return hp(e,r)}function fa(r,n={}){let e=r.$ast||r,t=n.format===!1||!("$code"in r)?{}:mp(r.$code,n.format),{code:s,map:i}=Jc(e,{...n,...t});return{code:s,map:i}}async function ha(r,n={}){let e=await Js.readFile(r,"utf8");return n.sourceFileName=n.sourceFileName??r,bp(e,n)}async function ma(r,n,e){let t="$ast"in r?r.$ast:r,{code:s,map:i}=fa(t,e);await Js.writeFile(n,s),i&&await Js.writeFile(n+".map",i)}var Ku=an(cs(),1),Ju=an(Hs(),1);function ba(r,n){if(typeof n=="object")for(let e in n)typeof r[e]=="object"&&typeof n[e]=="object"?ba(r[e],n[e]):r[e]=n[e]}function pr(r){return gp(r.exports.default)}function gp(r){return r.$type==="function-call"?r.$args[0]:r}function ga(r,n,e,t){let s=pr(r);s.modules||(s.modules=[]),s.modules.includes(n)||s.modules.push(n),e&&(s[e]||(s[e]={}),ba(s[e],t))}import wp from"prompts";import yp from"kleur";import vp from"prompts";var ya=["radix-vue","tailwind-variants"],va=["typescript","tailwindcss-animate","nuxt-icon","prettier-plugin-tailwindcss","prettier","@nuxtjs/tailwindcss","@nuxtjs/color-mode","@ianvs/prettier-plugin-sort-imports","@vueuse/nuxt"],xa=["@nuxtjs/tailwindcss","@nuxtjs/color-mode","@vueuse/nuxt","nuxt-icon"],Vn=[{title:"Zinc",value:"zinc"},{title:"Slate",value:"slate"},{title:"Stone",value:"stone"},{title:"Gray",value:"gray"},{title:"Neutral",value:"neutral"},{title:"Red",value:"red"},{title:"Rose",value:"rose"},{title:"Orange",value:"orange"},{title:"Green",value:"green"},{title:"Blue",value:"blue"},{title:"Yellow",value:"yellow"},{title:"Violet",value:"violet"}];var Pa=async()=>{let r=await vp([{name:"theme",type:"autocomplete",message:"Which theme do you want to start with?",choices:Vn},{name:"tailwindCSSLocation",type:"text",message:"Where is your tailwind.css file located?",initial:"assets/css/tailwind.css"},{name:"tailwindConfigLocation",type:"text",message:"Where is your tailwind.config file located?",initial:"tailwind.config.js"},{name:"componentsLocation",type:"text",message:"Where should your components be stored?",initial:"components/Ui"},{name:"composablesLocation",type:"text",message:"Where should your composables be stored?",initial:"composables"},{name:"utilsLocation",type:"text",message:"Where should your utils be stored?",initial:"utils"},{name:"force",type:"confirm",message:"Should we just replace component files if they already exist?",initial:!0},{name:"useDefaultFilename",type:"confirm",message:"Would you like to use the default filename when adding components?",initial:!0},{name:"packageManager",type:"select",message:"Which package manager do you use?",choices:[{title:"NPM",value:"npm"},{title:"Yarn",value:"yarn"},{title:"PNPM",value:"pnpm"},{title:"Bun",value:"bun"}]}]);return!r||Object.keys(r).length<9?(console.log(yp.red("Incomplete configuration submitted. Exiting...")),process.exit(0)):r};var Cp=process.cwd(),ur="ui-thing.config.ts",Sp={theme:"zinc",tailwindCSSLocation:"assets/css/tailwind.css",tailwindConfigLocation:"tailwind.config.js",componentsLocation:"components/Ui",composablesLocation:"composables",utilsLocation:"utils",force:!0,useDefaultFilename:!0,packageManager:"npm"},Tt=async()=>{if(!Se.existsSync("nuxt.config.ts"))return console.log(Ta.red(`No ${Ta.bgWhite("nuxt.config.ts")} file found. Exiting...`)),process.exit(0);let r=await ha(xp(Cp,"nuxt.config.ts")),n=pr(r);return{nuxtConfig:r,defaultExport:n}},Ie=async r=>{let n=Se.existsSync(ur),e={};if(!n||r?.force){if(r?.yes?e=Sp:e=await Pa(),await Se.writeFile(ur,`export default ${JSON.stringify(e,null,2)}`),e.packageManager==="pnpm")if(Se.existsSync(".npmrc")){let{confirmCreateNpmrc:s}=await wp({type:"confirm",name:"confirmCreateNpmrc",message:"A .npmrc file already exists. Do you want to overwrite it?",initial:!1});s&&await Se.writeFile(".npmrc",`shamefully-hoist=true
9702
9713
  strict-peer-dependencies=false
9703
9714
  `)}else await Se.writeFile(".npmrc",`shamefully-hoist=true
9704
9715
  strict-peer-dependencies=false
9705
- `)}else e=(await Pp({configFile:ur.replace(".ts","")})).config;return Tp.isEmpty(e)&&await Ie({force:!0}),Ip(e),e},Ip=r=>{r.tailwindCSSLocation&&Se.ensureFileSync(r.tailwindConfigLocation),r.tailwindConfigLocation&&Se.ensureFileSync(r.tailwindCSSLocation),r.componentsLocation&&Se.ensureDirSync(r.componentsLocation),r.composablesLocation&&Se.ensureDirSync(r.composablesLocation),r.utilsLocation&&Se.ensureDirSync(r.utilsLocation)},wt=(r,n)=>(typeof n=="string"&&(n=[n]),n.forEach(e=>ga(r,e)),r),Ct=async(r,n="nuxt.config.ts")=>{await ma(r.$ast,n)};var zn=async()=>{let r=await Ie(),n={theme:"string",tailwindCSSLocation:"string",tailwindConfigLocation:"string",componentsLocation:"string",composablesLocation:"string",utilsLocation:"string",force:!0,useDefaultFilename:!0,packageManager:"string"},e=[];for(let t of Object.keys(n))r[t]===void 0&&e.push(t);return!(e.length>0)};import dr from"node:fs";var nt=async r=>{try{return await dr.promises.access(r,dr.constants.F_OK||dr.constants.W_OK),!0}catch{return!1}};import*as qn from"fs";import*as wa from"path";import{execa as hr}from"execa";import $n from"lodash";import Ep from"ora";function Ap(){let r=wa.join(process.cwd(),"package.json"),n=!1;if(qn.existsSync(r)){let e=qn.readFileSync(r,"utf-8");JSON.parse(e).scripts?.postinstall&&(n=!0)}return n}var Ve=async(r,n,e)=>{typeof n=="string"&&(n=[n]),typeof e=="string"&&(e=[e]);let t=Ep("Installing dependencies...").start();!$n.isUndefined(n)&&!$n.isEmpty(n)&&await hr(r,[r==="yarn"?"add":"install",...n]),t.text="Installing dev dependencies...",!$n.isUndefined(e)&&!$n.isEmpty(e)&&await hr(r,[r==="yarn"?"add":"install","-D",...e]),Ap()&&(t.text="Running postinstall script...",await hr(r,["run","postinstall"])),t.succeed("Installed dependencies!")};import kp from"boxen";import Np from"figlet";var de=(r,n,e)=>{console.log(`
9716
+ `)}else e=(await Pp({configFile:ur.replace(".ts","")})).config;return Tp.isEmpty(e)&&await Ie({force:!0}),Ip(e),e},Ip=r=>{r.tailwindCSSLocation&&Se.ensureFileSync(r.tailwindConfigLocation),r.tailwindConfigLocation&&Se.ensureFileSync(r.tailwindCSSLocation),r.componentsLocation&&Se.ensureDirSync(r.componentsLocation),r.composablesLocation&&Se.ensureDirSync(r.composablesLocation),r.utilsLocation&&Se.ensureDirSync(r.utilsLocation)},wt=(r,n)=>(typeof n=="string"&&(n=[n]),n.forEach(e=>ga(r,e)),r),Ct=async(r,n="nuxt.config.ts")=>{await ma(r.$ast,n)};var zn=async()=>{let r=await Ie(),n={theme:"string",tailwindCSSLocation:"string",tailwindConfigLocation:"string",componentsLocation:"string",composablesLocation:"string",utilsLocation:"string",force:!0,useDefaultFilename:!0,packageManager:"string"},e=[];for(let t of Object.keys(n))r[t]===void 0&&e.push(t);return!(e.length>0)};import dr from"node:fs";var nt=async r=>{try{return await dr.promises.access(r,dr.constants.F_OK||dr.constants.W_OK),!0}catch{return!1}};import*as qn from"fs";import*as wa from"path";import{execa as fr}from"execa";import $n from"lodash";import Ep from"ora";function Ap(){let r=wa.join(process.cwd(),"package.json"),n=!1;if(qn.existsSync(r)){let e=qn.readFileSync(r,"utf-8");JSON.parse(e).scripts?.postinstall&&(n=!0)}return n}var Ve=async(r,n,e)=>{typeof n=="string"&&(n=[n]),typeof e=="string"&&(e=[e]);let t=Ep("Installing dependencies...").start();!$n.isUndefined(n)&&!$n.isEmpty(n)&&await fr(r,[r==="yarn"?"add":"install",...n]),t.text="Installing dev dependencies...",!$n.isUndefined(e)&&!$n.isEmpty(e)&&await fr(r,[r==="yarn"?"add":"install","-D",...e]),Ap()&&(t.text="Running postinstall script...",await fr(r,["run","postinstall"])),t.succeed("Installed dependencies!")};import kp from"boxen";import Np from"figlet";var de=(r,n,e)=>{console.log(`
9706
9717
  `),console.log(kp(Np.textSync(r),{borderColor:"greenBright",padding:1,borderStyle:"round",titleAlignment:"center",...n})),e&&console.log(`
9707
- ${e}`)};import Dp from"prompts";var Ca=async r=>{if(r)return At.map(e=>e.value);let{components:n}=await Dp({type:"autocompleteMultiselect",name:"components",message:"Select the components you want to add",choices:At.map(e=>({title:e.name,value:e.value})),onRender(e){this.msg=e.bgCyan(" Choose components ")+" Select the components you want to add"}});return n};import fr from"node:fs";import Mp from"node:path";var St=async(r,n)=>{if(!await nt(r)){let t=Mp.dirname(r);fr.existsSync(t)||fr.mkdirSync(t,{recursive:!0})}fr.writeFileSync(r,n)};var rt=process.cwd(),Hn=r=>At.find(n=>n.value.toLowerCase()===r.toLowerCase()),Sa=new Op().name("add").command("add").description("Add a list of components to your project.").option("-a --all","Add all components to your project.",!1).argument("[componentNames...]","Components that you want to add.").action(async(r,n)=>{let e=await Tt(),t=await Ie();await zn()||(t=await Ie({force:!0})),sn.isEmpty(t)&&(me.info("Config file not set. Exiting..."),process.exit(0));let i=r;if(i.length===0){let u=await Ca(n.all);(u&&u.length===0||!u)&&(me.info("No components selected. Exiting..."),process.exit(0)),i=u}let a=[];i.forEach(u=>{Hn(u)||a.push(u)}),a.length>0&&me.error(`The following components were not found: ${oe.bgRed(a.join(", "))}`);let o=[];i.forEach(u=>{Hn(u)&&o.push(Hn(u))});for(let u=0;u<o.length;u++){let h=o[u];if(h.components)for(let m=0;m<h.components.length;m++){let d=h.components[m];o.find(g=>g.value===d)||o.push(Hn(d))}}for(let u=0;u<o.length;u++){let h=o[u];e:for(let m=0;m<h.files.length;m++){let d=h.files[m],g=d.fileName,f=t.componentsLocation,v=st.join(rt,f,g);if(!t.useDefaultFilename){let E=await It({type:"text",name:"value",message:"Where should we add the file",initial:f,onRender(x){this.msg=x.bgCyan(" Location ")+` Where should we add the file ${x.cyan(`${g}`)} `}});E.value&&(f=E.value,v=st.join(rt,E.value,g))}if(await nt(v)&&!t.force&&!(await It({type:"confirm",name:"value",message:`The file that we are trying to add ${oe.bold(g)} to is already taken. Overwrite?`,initial:!1})).value){me.info(`We will not overwrite the file for ${oe.cyan(g)}`);continue e}if(await St(v,d.fileContent),h.value==="vue-sonner"&&(e.defaultExport.imports||={},e.defaultExport.build||={},e.defaultExport.imports.imports||=[],e.defaultExport.build.transpile||=[],e.defaultExport.imports.imports.find(P=>P.from==="vue-sonner"&&P.name==="toast")||e.defaultExport.imports.imports.push({from:"vue-sonner",name:"toast",as:"useSonner"}),e.defaultExport.build.transpile.find(P=>"vue-sonner")||e.defaultExport.build.transpile.push("vue-sonner")),h.value==="datatable"){e.defaultExport.app||={},e.defaultExport.app.head||={},e.defaultExport.app.head.script||=[],e.defaultExport.app.head.script.find(C=>C.src==="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.2.9/pdfmake.min.js")||e.defaultExport.app.head.script.push({src:"https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.2.9/pdfmake.min.js",defer:!0}),e.defaultExport.app.head.script.find(C=>C.src==="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.2.9/vfs_fonts.min.js")||e.defaultExport.app.head.script.push({src:"https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.2.9/vfs_fonts.min.js",defer:!0});let P=Lp(st.join(rt,"package.json"),"utf-8");if(P){let C=JSON.parse(P);C.overrides=Fp({},C.overrides,h.overrides),await St(st.join(rt,"package.json"),JSON.stringify(C,null,2))}}t:for(let E=0;E<h.utils.length;E++){let x=h.utils[E],P=st.join(rt,t.utilsLocation,x.fileName);if(await nt(P)&&!t.force&&!(await It({type:"confirm",name:"value",message:`The utils file that we are trying to add ${oe.bold(x.fileName)} already exists. Overwrite?`,initial:!0})).value){me.info(`We will not overwrite the file for ${oe.cyan(x.fileName)}`);continue t}await St(P,x.fileContent)}t:for(let E=0;E<h.composables.length;E++){let x=h.composables[E],P=st.join(rt,t.composablesLocation,x.fileName);if(await nt(P)&&!t.force&&!(await It({type:"confirm",name:"value",message:`The composables file that we are trying to add ${oe.bold(x.fileName)} already exists. Overwrite?`,initial:!0})).value){me.info(`We will not overwrite the file for ${oe.cyan(x.fileName)}`);continue t}await St(P,x.fileContent)}t:for(let E=0;E<h.plugins.length;E++){let x=h.plugins[E],P=st.join(rt,x.dirPath,x.fileName);if(await nt(P)&&!t.force&&!(await It({type:"confirm",name:"value",message:`The plugins file that we are trying to add ${oe.bold(x.fileName)} already exists. Overwrite?`,initial:!0})).value){me.info(`We will not overwrite the file for ${oe.cyan(x.fileName)}`);continue t}await St(P,x.fileContent)}}}wt(e.nuxtConfig,sn.uniq(o.map(u=>u.nuxtModules||[]).flat())),await Ct(e.nuxtConfig,"nuxt.config.ts");let l=sn.uniq(o.map(u=>u.deps||[]).flat()),c=sn.uniq(o.map(u=>u.devDeps||[]).flat());if(l.length>0||c.length>0)if(n.all)await Ve(t.packageManager,l,c);else{let{confirmInstall:u}=await It({type:"confirm",name:"confirmInstall",message:`Do you want to install the following packages: ${oe.cyan(l.join(", "))} ${oe.cyan(c.join(", "))}`,initial:!0});u&&await Ve(t.packageManager,l,c)}de("All Done!",{title:"Components Added"},`Run the ${oe.cyan("ui-thing@latest --help")} command to learn more.
9718
+ ${e}`)};import Dp from"prompts";var Ca=async r=>{if(r)return At.map(e=>e.value);let{components:n}=await Dp({type:"autocompleteMultiselect",name:"components",message:"Select the components you want to add",choices:At.map(e=>({title:e.name,value:e.value})),onRender(e){this.msg=e.bgCyan(" Choose components ")+" Select the components you want to add"}});return n};import hr from"node:fs";import Mp from"node:path";var St=async(r,n)=>{if(!await nt(r)){let t=Mp.dirname(r);hr.existsSync(t)||hr.mkdirSync(t,{recursive:!0})}hr.writeFileSync(r,n)};var rt=process.cwd(),Hn=r=>At.find(n=>n.value.toLowerCase()===r.toLowerCase()),Sa=new Op().name("add").command("add").description("Add a list of components to your project.").option("-a --all","Add all components to your project.",!1).argument("[componentNames...]","Components that you want to add.").action(async(r,n)=>{let e=await Tt(),t=await Ie();await zn()||(t=await Ie({force:!0})),sn.isEmpty(t)&&(me.info("Config file not set. Exiting..."),process.exit(0));let i=r;if(i.length===0){let u=await Ca(n.all);(u&&u.length===0||!u)&&(me.info("No components selected. Exiting..."),process.exit(0)),i=u}let a=[];i.forEach(u=>{Hn(u)||a.push(u)}),a.length>0&&me.error(`The following components were not found: ${oe.bgRed(a.join(", "))}`);let o=[];i.forEach(u=>{Hn(u)&&o.push(Hn(u))});for(let u=0;u<o.length;u++){let f=o[u];if(f.components)for(let m=0;m<f.components.length;m++){let d=f.components[m];o.find(g=>g.value===d)||o.push(Hn(d))}}for(let u=0;u<o.length;u++){let f=o[u];e:for(let m=0;m<f.files.length;m++){let d=f.files[m],g=d.fileName,h=t.componentsLocation,v=st.join(rt,h,g);if(!t.useDefaultFilename){let E=await It({type:"text",name:"value",message:"Where should we add the file",initial:h,onRender(x){this.msg=x.bgCyan(" Location ")+` Where should we add the file ${x.cyan(`${g}`)} `}});E.value&&(h=E.value,v=st.join(rt,E.value,g))}if(await nt(v)&&!t.force&&!(await It({type:"confirm",name:"value",message:`The file that we are trying to add ${oe.bold(g)} to is already taken. Overwrite?`,initial:!1})).value){me.info(`We will not overwrite the file for ${oe.cyan(g)}`);continue e}if(await St(v,d.fileContent),f.value==="vue-sonner"&&(e.defaultExport.imports||={},e.defaultExport.build||={},e.defaultExport.imports.imports||=[],e.defaultExport.build.transpile||=[],e.defaultExport.imports.imports.find(P=>P.from==="vue-sonner"&&P.name==="toast")||e.defaultExport.imports.imports.push({from:"vue-sonner",name:"toast",as:"useSonner"}),e.defaultExport.build.transpile.find(P=>"vue-sonner")||e.defaultExport.build.transpile.push("vue-sonner")),f.value==="datatable"){e.defaultExport.app||={},e.defaultExport.app.head||={},e.defaultExport.app.head.script||=[],e.defaultExport.app.head.script.find(C=>C.src==="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.2.9/pdfmake.min.js")||e.defaultExport.app.head.script.push({src:"https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.2.9/pdfmake.min.js",defer:!0}),e.defaultExport.app.head.script.find(C=>C.src==="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.2.9/vfs_fonts.min.js")||e.defaultExport.app.head.script.push({src:"https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.2.9/vfs_fonts.min.js",defer:!0});let P=Lp(st.join(rt,"package.json"),"utf-8");if(P){let C=JSON.parse(P);C.overrides=Fp({},C.overrides,f.overrides),await St(st.join(rt,"package.json"),JSON.stringify(C,null,2))}}t:for(let E=0;E<f.utils.length;E++){let x=f.utils[E],P=st.join(rt,t.utilsLocation,x.fileName);if(await nt(P)&&!t.force&&!(await It({type:"confirm",name:"value",message:`The utils file that we are trying to add ${oe.bold(x.fileName)} already exists. Overwrite?`,initial:!0})).value){me.info(`We will not overwrite the file for ${oe.cyan(x.fileName)}`);continue t}await St(P,x.fileContent)}t:for(let E=0;E<f.composables.length;E++){let x=f.composables[E],P=st.join(rt,t.composablesLocation,x.fileName);if(await nt(P)&&!t.force&&!(await It({type:"confirm",name:"value",message:`The composables file that we are trying to add ${oe.bold(x.fileName)} already exists. Overwrite?`,initial:!0})).value){me.info(`We will not overwrite the file for ${oe.cyan(x.fileName)}`);continue t}await St(P,x.fileContent)}t:for(let E=0;E<f.plugins.length;E++){let x=f.plugins[E],P=st.join(rt,x.dirPath,x.fileName);if(await nt(P)&&!t.force&&!(await It({type:"confirm",name:"value",message:`The plugins file that we are trying to add ${oe.bold(x.fileName)} already exists. Overwrite?`,initial:!0})).value){me.info(`We will not overwrite the file for ${oe.cyan(x.fileName)}`);continue t}await St(P,x.fileContent)}}}wt(e.nuxtConfig,sn.uniq(o.map(u=>u.nuxtModules||[]).flat())),await Ct(e.nuxtConfig,"nuxt.config.ts");let l=sn.uniq(o.map(u=>u.deps||[]).flat()),c=sn.uniq(o.map(u=>u.devDeps||[]).flat());if(l.length>0||c.length>0)if(n.all)await Ve(t.packageManager,l,c);else{let{confirmInstall:u}=await It({type:"confirm",name:"confirmInstall",message:`Do you want to install the following packages: ${oe.cyan(l.join(", "))} ${oe.cyan(c.join(", "))}`,initial:!0});u&&await Ve(t.packageManager,l,c)}de("All Done!",{title:"Components Added"},`Run the ${oe.cyan("ui-thing@latest --help")} command to learn more.
9708
9719
  `);let p=o.map(u=>u.instructions).flat();sn.remove(p,u=>!u),p.length>0&&(console.log(""),console.log(oe.bgCyan(" Instructions ")),p.forEach(u=>{console.log(`${oe.cyan("-")} ${u}`)}))});import{Command as Zp}from"commander";import{defu as mr}from"defu";import Na from"fs-extra";import eu from"kleur";var Up=`@import url("https://rsms.me/inter/inter.css");
9709
9720
 
9710
9721
  @tailwind base;