prettier 3.0.0-alpha.6 → 3.0.0-alpha.8-for-vscode
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/LICENSE +17 -17
- package/bin/prettier.cjs +0 -0
- package/doc.d.ts +2 -10
- package/doc.js +55 -246
- package/doc.mjs +51 -246
- package/index.cjs +1 -1
- package/index.d.ts +26 -8
- package/index.mjs +5920 -20834
- package/internal/cli.mjs +486 -478
- package/internal/{third-party.mjs → internal.mjs} +19 -14
- package/package.json +39 -28
- package/plugins/acorn.d.ts +6 -0
- package/plugins/acorn.js +13 -0
- package/plugins/acorn.mjs +13 -0
- package/plugins/angular.d.ts +5 -9
- package/plugins/angular.js +2 -2
- package/plugins/angular.mjs +2 -2
- package/plugins/babel.d.ts +14 -14
- package/plugins/babel.js +11 -11
- package/plugins/babel.mjs +11 -11
- package/plugins/estree.d.ts +0 -0
- package/plugins/estree.js +35 -0
- package/plugins/estree.mjs +35 -0
- package/plugins/flow.d.ts +2 -6
- package/plugins/flow.js +20 -20
- package/plugins/flow.mjs +20 -20
- package/plugins/glimmer.d.ts +2 -6
- package/plugins/glimmer.js +22 -17
- package/plugins/glimmer.mjs +22 -17
- package/plugins/graphql.d.ts +2 -6
- package/plugins/graphql.js +16 -7
- package/plugins/graphql.mjs +16 -7
- package/plugins/html.d.ts +5 -9
- package/plugins/html.js +19 -17
- package/plugins/html.mjs +19 -17
- package/plugins/markdown.d.ts +4 -8
- package/plugins/markdown.js +54 -33
- package/plugins/markdown.mjs +54 -33
- package/plugins/meriyah.d.ts +2 -6
- package/plugins/meriyah.js +5 -5
- package/plugins/meriyah.mjs +5 -5
- package/plugins/postcss.d.ts +4 -8
- package/plugins/postcss.js +45 -32
- package/plugins/postcss.mjs +45 -32
- package/plugins/typescript.d.ts +2 -6
- package/plugins/typescript.js +24 -20
- package/plugins/typescript.mjs +24 -20
- package/plugins/yaml.d.ts +2 -6
- package/plugins/yaml.js +130 -117
- package/plugins/yaml.mjs +130 -117
- package/standalone.js +27 -90
- package/standalone.mjs +27 -90
- package/plugins/acorn-and-espree.d.ts +0 -10
- package/plugins/acorn-and-espree.js +0 -13
- package/plugins/acorn-and-espree.mjs +0 -13
package/plugins/angular.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(function(n){function e(){var i=n();return i.default||i}if(typeof exports=="object"&&typeof module=="object")module.exports=e();else if(typeof define=="function"&&define.amd)define(e);else{var t=typeof globalThis<"u"?globalThis:typeof global<"u"?global:typeof self<"u"?self:this||{};t.prettierPlugins=t.prettierPlugins||{},t.prettierPlugins.angular=e()}})(function(){"use strict";var
|
|
2
|
-
`,Xe="\r",Ze=function(){function s(e){this.length=e.length;for(var t=[0],r=0;r<e.length;)switch(e[r]){case me:r+=me.length,t.push(r);break;case Xe:r+=Xe.length,e[r]===me&&(r+=me.length),t.push(r);break;default:r++;break}this.offsets=t}return s.prototype.locationForIndex=function(e){if(e<0||e>this.length)return null;for(var t=0,r=this.offsets;r[t+1]<=e;)t++;var n=e-r[t];return{line:t,column:n}},s.prototype.indexForLocation=function(e){var t=e.line,r=e.column;return t<0||t>=this.offsets.length||r<0||r>this.lengthOfLine(t)?null:this.offsets[t]+r},s.prototype.lengthOfLine=function(e){var t=this.offsets[e],r=e===this.offsets.length-1?this.length:this.offsets[e+1];return r-t},s}();var pe=class{text;locator;constructor(e){this.text=e,this.locator=new Le(this.text)}},Le=class{_linesAndColumns;constructor(e){this._linesAndColumns=new Ze(e)}locationForIndex(e){let{line:t,column:r}=this._linesAndColumns.locationForIndex(e);return{line:t+1,column:r,index:e}}};var G=class{constructor(e,t,r,n){this.input=t,this.errLocation=r,this.ctxLocation=n,this.message=`Parser Error: ${e} ${r} [${t}] in ${n}`}},L=class{constructor(e,t){this.start=e,this.end=t}toAbsolute(e){return new P(e+this.start,e+this.end)}},S=class{constructor(e,t){this.span=e,this.sourceSpan=t}toString(){return"AST"}},D=class extends S{constructor(e,t,r){super(e,t),this.nameSpan=r}},E=class extends S{visit(e,t=null){}},b=class extends S{visit(e,t=null){return e.visitImplicitReceiver(this,t)}},Se=class extends b{visit(e,t=null){var r;return(r=e.visitThisReceiver)==null?void 0:r.call(e,this,t)}},V=class extends S{constructor(e,t,r){super(e,t),this.expressions=r}visit(e,t=null){return e.visitChain(this,t)}},W=class extends S{constructor(e,t,r,n,i){super(e,t),this.condition=r,this.trueExp=n,this.falseExp=i}visit(e,t=null){return e.visitConditional(this,t)}},K=class extends D{constructor(e,t,r,n,i){super(e,t,r),this.receiver=n,this.name=i}visit(e,t=null){return e.visitPropertyRead(this,t)}},Q=class extends D{constructor(e,t,r,n,i,a){super(e,t,r),this.receiver=n,this.name=i,this.value=a}visit(e,t=null){return e.visitPropertyWrite(this,t)}},H=class extends D{constructor(e,t,r,n,i){super(e,t,r),this.receiver=n,this.name=i}visit(e,t=null){return e.visitSafePropertyRead(this,t)}},j=class extends S{constructor(e,t,r,n){super(e,t),this.receiver=r,this.key=n}visit(e,t=null){return e.visitKeyedRead(this,t)}},we=class extends S{constructor(e,t,r,n){super(e,t),this.receiver=r,this.key=n}visit(e,t=null){return e.visitSafeKeyedRead(this,t)}},z=class extends S{constructor(e,t,r,n,i){super(e,t),this.receiver=r,this.key=n,this.value=i}visit(e,t=null){return e.visitKeyedWrite(this,t)}},q=class extends D{constructor(e,t,r,n,i,a){super(e,t,a),this.exp=r,this.name=n,this.args=i}visit(e,t=null){return e.visitPipe(this,t)}},A=class extends S{constructor(e,t,r){super(e,t),this.value=r}visit(e,t=null){return e.visitLiteralPrimitive(this,t)}},X=class extends S{constructor(e,t,r){super(e,t),this.expressions=r}visit(e,t=null){return e.visitLiteralArray(this,t)}},Z=class extends S{constructor(e,t,r,n){super(e,t),this.keys=r,this.values=n}visit(e,t=null){return e.visitLiteralMap(this,t)}},ye=class extends S{constructor(e,t,r,n){super(e,t),this.strings=r,this.expressions=n}visit(e,t=null){return e.visitInterpolation(this,t)}},$=class extends S{constructor(e,t,r,n,i){super(e,t),this.operation=r,this.left=n,this.right=i}visit(e,t=null){return e.visitBinary(this,t)}},I=class extends ${static createMinus(e,t,r){return new I(e,t,"-",r,"-",new A(e,t,0),r)}static createPlus(e,t,r){return new I(e,t,"+",r,"-",r,new A(e,t,0))}constructor(e,t,r,n,i,a,h){super(e,t,i,a,h),this.operator=r,this.expr=n,this.left=null,this.right=null,this.operation=null}visit(e,t=null){return e.visitUnary!==void 0?e.visitUnary(this,t):e.visitBinary(this,t)}},J=class extends S{constructor(e,t,r){super(e,t),this.expression=r}visit(e,t=null){return e.visitPrefixNot(this,t)}},Y=class extends S{constructor(e,t,r){super(e,t),this.expression=r}visit(e,t=null){return e.visitNonNullAssert(this,t)}},ee=class extends S{constructor(e,t,r,n,i){super(e,t),this.receiver=r,this.args=n,this.argumentSpan=i}visit(e,t=null){return e.visitCall(this,t)}},te=class extends S{constructor(e,t,r,n,i){super(e,t),this.receiver=r,this.args=n,this.argumentSpan=i}visit(e,t=null){return e.visitSafeCall(this,t)}},P=class{constructor(e,t){this.start=e,this.end=t}},R=class extends S{constructor(e,t,r,n,i){super(new L(0,t===null?0:t.length),new P(n,t===null?n:n+t.length)),this.ast=e,this.source=t,this.location=r,this.errors=i}visit(e,t=null){return e.visitASTWithSource?e.visitASTWithSource(this,t):this.ast.visit(e,t)}toString(){return`${this.source} in ${this.location}`}},T=class{constructor(e,t,r){this.sourceSpan=e,this.key=t,this.value=r}},re=class{constructor(e,t,r){this.sourceSpan=e,this.key=t,this.value=r}},Ee=class{visit(e,t){e.visit(this,t)}visitUnary(e,t){this.visit(e.expr,t)}visitBinary(e,t){this.visit(e.left,t),this.visit(e.right,t)}visitChain(e,t){this.visitAll(e.expressions,t)}visitConditional(e,t){this.visit(e.condition,t),this.visit(e.trueExp,t),this.visit(e.falseExp,t)}visitPipe(e,t){this.visit(e.exp,t),this.visitAll(e.args,t)}visitImplicitReceiver(e,t){}visitThisReceiver(e,t){}visitInterpolation(e,t){this.visitAll(e.expressions,t)}visitKeyedRead(e,t){this.visit(e.receiver,t),this.visit(e.key,t)}visitKeyedWrite(e,t){this.visit(e.receiver,t),this.visit(e.key,t),this.visit(e.value,t)}visitLiteralArray(e,t){this.visitAll(e.expressions,t)}visitLiteralMap(e,t){this.visitAll(e.values,t)}visitLiteralPrimitive(e,t){}visitPrefixNot(e,t){this.visit(e.expression,t)}visitNonNullAssert(e,t){this.visit(e.expression,t)}visitPropertyRead(e,t){this.visit(e.receiver,t)}visitPropertyWrite(e,t){this.visit(e.receiver,t),this.visit(e.value,t)}visitSafePropertyRead(e,t){this.visit(e.receiver,t)}visitSafeKeyedRead(e,t){this.visit(e.receiver,t),this.visit(e.key,t)}visitCall(e,t){this.visit(e.receiver,t),this.visitAll(e.args,t)}visitSafeCall(e,t){this.visit(e.receiver,t),this.visitAll(e.args,t)}visitAll(e,t){for(let r of e)this.visit(r,t)}};var Je;(function(s){s[s.DEFAULT=0]="DEFAULT",s[s.LITERAL_ATTR=1]="LITERAL_ATTR",s[s.ANIMATION=2]="ANIMATION"})(Je||(Je={}));function Ye(s){return s>=9&&s<=32||s==160}function B(s){return 48<=s&&s<=57}function et(s){return s>=97&&s<=122||s>=65&&s<=90}function be(s){return s===39||s===34||s===96}var d;(function(s){s[s.Character=0]="Character",s[s.Identifier=1]="Identifier",s[s.PrivateIdentifier=2]="PrivateIdentifier",s[s.Keyword=3]="Keyword",s[s.String=4]="String",s[s.Operator=5]="Operator",s[s.Number=6]="Number",s[s.Error=7]="Error"})(d||(d={}));var fr=["var","let","as","null","undefined","true","false","if","else","this"],ue=class{tokenize(e){let t=new Te(e),r=[],n=t.scanToken();for(;n!=null;)r.push(n),n=t.scanToken();return r}},N=class{constructor(e,t,r,n,i){this.index=e,this.end=t,this.type=r,this.numValue=n,this.strValue=i}isCharacter(e){return this.type==d.Character&&this.numValue==e}isNumber(){return this.type==d.Number}isString(){return this.type==d.String}isOperator(e){return this.type==d.Operator&&this.strValue==e}isIdentifier(){return this.type==d.Identifier}isPrivateIdentifier(){return this.type==d.PrivateIdentifier}isKeyword(){return this.type==d.Keyword}isKeywordLet(){return this.type==d.Keyword&&this.strValue=="let"}isKeywordAs(){return this.type==d.Keyword&&this.strValue=="as"}isKeywordNull(){return this.type==d.Keyword&&this.strValue=="null"}isKeywordUndefined(){return this.type==d.Keyword&&this.strValue=="undefined"}isKeywordTrue(){return this.type==d.Keyword&&this.strValue=="true"}isKeywordFalse(){return this.type==d.Keyword&&this.strValue=="false"}isKeywordThis(){return this.type==d.Keyword&&this.strValue=="this"}isError(){return this.type==d.Error}toNumber(){return this.type==d.Number?this.numValue:-1}toString(){switch(this.type){case d.Character:case d.Identifier:case d.Keyword:case d.Operator:case d.PrivateIdentifier:case d.String:case d.Error:return this.strValue;case d.Number:return this.numValue.toString();default:return null}}};function it(s,e,t){return new N(s,e,d.Character,t,String.fromCharCode(t))}function dr(s,e,t){return new N(s,e,d.Identifier,0,t)}function vr(s,e,t){return new N(s,e,d.PrivateIdentifier,0,t)}function gr(s,e,t){return new N(s,e,d.Keyword,0,t)}function Ke(s,e,t){return new N(s,e,d.Operator,0,t)}function mr(s,e,t){return new N(s,e,d.String,0,t)}function Sr(s,e,t){return new N(s,e,d.Number,t,"")}function wr(s,e,t){return new N(s,e,d.Error,0,t)}var Oe=new N(-1,-1,d.Character,0,""),Te=class{constructor(e){this.input=e,this.peek=0,this.index=-1,this.length=e.length,this.advance()}advance(){this.peek=++this.index>=this.length?0:this.input.charCodeAt(this.index)}scanToken(){let e=this.input,t=this.length,r=this.peek,n=this.index;for(;r<=32;)if(++n>=t){r=0;break}else r=e.charCodeAt(n);if(this.peek=r,this.index=n,n>=t)return null;if(at(r))return this.scanIdentifier();if(B(r))return this.scanNumber(n);let i=n;switch(r){case 46:return this.advance(),B(this.peek)?this.scanNumber(i):it(i,this.index,46);case 40:case 41:case 123:case 125:case 91:case 93:case 44:case 58:case 59:return this.scanCharacter(i,r);case 39:case 34:return this.scanString();case 35:return this.scanPrivateIdentifier();case 43:case 45:case 42:case 47:case 37:case 94:return this.scanOperator(i,String.fromCharCode(r));case 63:return this.scanQuestion(i);case 60:case 62:return this.scanComplexOperator(i,String.fromCharCode(r),61,"=");case 33:case 61:return this.scanComplexOperator(i,String.fromCharCode(r),61,"=",61,"=");case 38:return this.scanComplexOperator(i,"&",38,"&");case 124:return this.scanComplexOperator(i,"|",124,"|");case 160:for(;Ye(this.peek);)this.advance();return this.scanToken()}return this.advance(),this.error(`Unexpected character [${String.fromCharCode(r)}]`,0)}scanCharacter(e,t){return this.advance(),it(e,this.index,t)}scanOperator(e,t){return this.advance(),Ke(e,this.index,t)}scanComplexOperator(e,t,r,n,i,a){this.advance();let h=t;return this.peek==r&&(this.advance(),h+=n),i!=null&&this.peek==i&&(this.advance(),h+=a),Ke(e,this.index,h)}scanIdentifier(){let e=this.index;for(this.advance();ot(this.peek);)this.advance();let t=this.input.substring(e,this.index);return fr.indexOf(t)>-1?gr(e,this.index,t):dr(e,this.index,t)}scanPrivateIdentifier(){let e=this.index;if(this.advance(),!at(this.peek))return this.error("Invalid character [#]",-1);for(;ot(this.peek);)this.advance();let t=this.input.substring(e,this.index);return vr(e,this.index,t)}scanNumber(e){let t=this.index===e,r=!1;for(this.advance();;){if(!B(this.peek))if(this.peek===95){if(!B(this.input.charCodeAt(this.index-1))||!B(this.input.charCodeAt(this.index+1)))return this.error("Invalid numeric separator",0);r=!0}else if(this.peek===46)t=!1;else if(yr(this.peek)){if(this.advance(),Er(this.peek)&&this.advance(),!B(this.peek))return this.error("Invalid exponent",-1);t=!1}else break;this.advance()}let n=this.input.substring(e,this.index);r&&(n=n.replace(/_/g,""));let i=t?$r(n):parseFloat(n);return Sr(e,this.index,i)}scanString(){let e=this.index,t=this.peek;this.advance();let r="",n=this.index,i=this.input;for(;this.peek!=t;)if(this.peek==92){r+=i.substring(n,this.index);let h;if(this.advance(),this.peek==117){let v=i.substring(this.index+1,this.index+5);if(/^[0-9a-f]+$/i.test(v))h=parseInt(v,16);else return this.error(`Invalid unicode escape [\\u${v}]`,0);for(let f=0;f<5;f++)this.advance()}else h=Ar(this.peek),this.advance();r+=String.fromCharCode(h),n=this.index}else{if(this.peek==0)return this.error("Unterminated quote",0);this.advance()}let a=i.substring(n,this.index);return this.advance(),mr(e,this.index,r+a)}scanQuestion(e){this.advance();let t="?";return(this.peek===63||this.peek===46)&&(t+=this.peek===46?".":"?",this.advance()),Ke(e,this.index,t)}error(e,t){let r=this.index+t;return wr(r,this.index,`Lexer Error: ${e} at column ${r} in expression [${this.input}]`)}};function at(s){return 97<=s&&s<=122||65<=s&&s<=90||s==95||s==36}function ot(s){return et(s)||B(s)||s==95||s==36}function yr(s){return s==101||s==69}function Er(s){return s==45||s==43}function Ar(s){switch(s){case 110:return 10;case 102:return 12;case 114:return 13;case 116:return 9;case 118:return 11;default:return s}}function $r(s){let e=parseInt(s);if(isNaN(e))throw new Error("Invalid integer literal when parsing "+s);return e}var Cr=[/^\s*$/,/[<>]/,/^[{}]$/,/&(#|[a-z])/i,/^\/\//];function ut(s,e){if(e!=null&&!(Array.isArray(e)&&e.length==2))throw new Error(`Expected '${s}' to be an array, [start, end].`);if(e!=null){let t=e[0],r=e[1];Cr.forEach(n=>{if(n.test(t)||n.test(r))throw new Error(`['${t}', '${r}'] contains unusable interpolation symbol.`)})}}var de=class{static fromArray(e){return e?(ut("interpolation",e),new de(e[0],e[1])):F}constructor(e,t){this.start=e,this.end=t}},F=new de("{{","}}");var Me=class{constructor(e,t,r){this.strings=e,this.expressions=t,this.offsets=r}},Fe=class{constructor(e,t,r){this.templateBindings=e,this.warnings=t,this.errors=r}},ve=class{constructor(e){this._lexer=e,this.errors=[]}parseAction(e,t,r,n,i=F){this._checkNoInterpolation(e,r,i);let a=this._stripComments(e),h=this._lexer.tokenize(a),v=1;t&&(v|=2);let f=new U(e,r,n,h,v,this.errors,0).parseChain();return new R(f,e,r,n,this.errors)}parseBinding(e,t,r,n=F){let i=this._parseBindingAst(e,t,r,n);return new R(i,e,t,r,this.errors)}checkSimpleExpression(e){let t=new Ue;return e.visit(t),t.errors}parseSimpleBinding(e,t,r,n=F){let i=this._parseBindingAst(e,t,r,n),a=this.checkSimpleExpression(i);return a.length>0&&this._reportError(`Host binding expression cannot contain ${a.join(" ")}`,e,t),new R(i,e,t,r,this.errors)}_reportError(e,t,r,n){this.errors.push(new G(e,t,r,n))}_parseBindingAst(e,t,r,n){this._checkNoInterpolation(e,t,n);let i=this._stripComments(e),a=this._lexer.tokenize(i);return new U(e,t,r,a,0,this.errors,0).parseChain()}parseTemplateBindings(e,t,r,n,i){let a=this._lexer.tokenize(t);return new U(t,r,i,a,0,this.errors,0).parseTemplateBindings({source:e,span:new P(n,n+e.length)})}parseInterpolation(e,t,r,n,i=F){let{strings:a,expressions:h,offsets:v}=this.splitInterpolation(e,t,n,i);if(h.length===0)return null;let f=[];for(let w=0;w<h.length;++w){let k=h[w].text,C=this._stripComments(k),y=this._lexer.tokenize(C),m=new U(e,t,r,y,0,this.errors,v[w]).parseChain();f.push(m)}return this.createInterpolationAst(a.map(w=>w.text),f,e,t,r)}parseInterpolationExpression(e,t,r){let n=this._stripComments(e),i=this._lexer.tokenize(n),a=new U(e,t,r,i,0,this.errors,0).parseChain(),h=["",""];return this.createInterpolationAst(h,[a],e,t,r)}createInterpolationAst(e,t,r,n,i){let a=new L(0,r.length),h=new ye(a,a.toAbsolute(i),e,t);return new R(h,r,n,i,this.errors)}splitInterpolation(e,t,r,n=F){let i=[],a=[],h=[],v=r?Or(r):null,f=0,w=!1,k=!1,{start:C,end:y}=n;for(;f<e.length;)if(w){let m=f,c=m+C.length,o=this._getInterpolationEndIndex(e,y,c);if(o===-1){w=!1,k=!0;break}let x=o+y.length,p=e.substring(c,o);p.trim().length===0&&this._reportError("Blank expressions are not allowed in interpolated strings",e,`at column ${f} in`,t),a.push({text:p,start:m,end:x});let g=((v==null?void 0:v.get(m))??m)+C.length;h.push(g),f=x,w=!1}else{let m=f;f=e.indexOf(C,f),f===-1&&(f=e.length);let c=e.substring(m,f);i.push({text:c,start:m,end:f}),w=!0}if(!w)if(k){let m=i[i.length-1];m.text+=e.substring(f),m.end=e.length}else i.push({text:e.substring(f),start:f,end:e.length});return new Me(i,a,h)}wrapLiteralPrimitive(e,t,r){let n=new L(0,e==null?0:e.length);return new R(new A(n,n.toAbsolute(r),e),e,t,r,this.errors)}_stripComments(e){let t=this._commentStart(e);return t!=null?e.substring(0,t):e}_commentStart(e){let t=null;for(let r=0;r<e.length-1;r++){let n=e.charCodeAt(r),i=e.charCodeAt(r+1);if(n===47&&i==47&&t==null)return r;t===n?t=null:t==null&&be(n)&&(t=n)}return null}_checkNoInterpolation(e,t,{start:r,end:n}){let i=-1,a=-1;for(let h of this._forEachUnquotedChar(e,0))if(i===-1)e.startsWith(r)&&(i=h);else if(a=this._getInterpolationEndIndex(e,n,h),a>-1)break;i>-1&&a>-1&&this._reportError(`Got interpolation (${r}${n}) where expression was expected`,e,`at column ${i} in`,t)}_getInterpolationEndIndex(e,t,r){for(let n of this._forEachUnquotedChar(e,r)){if(e.startsWith(t,n))return n;if(e.startsWith("//",n))return e.indexOf(t,n)}return-1}*_forEachUnquotedChar(e,t){let r=null,n=0;for(let i=t;i<e.length;i++){let a=e[i];be(e.charCodeAt(i))&&(r===null||r===a)&&n%2===0?r=r===null?a:null:r===null&&(yield i),n=a==="\\"?n+1:0}}},oe;(function(s){s[s.None=0]="None",s[s.Writable=1]="Writable"})(oe||(oe={}));var U=class{constructor(e,t,r,n,i,a,h){this.input=e,this.location=t,this.absoluteOffset=r,this.tokens=n,this.parseFlags=i,this.errors=a,this.offset=h,this.rparensExpected=0,this.rbracketsExpected=0,this.rbracesExpected=0,this.context=oe.None,this.sourceSpanCache=new Map,this.index=0}peek(e){let t=this.index+e;return t<this.tokens.length?this.tokens[t]:Oe}get next(){return this.peek(0)}get atEOF(){return this.index>=this.tokens.length}get inputIndex(){return this.atEOF?this.currentEndIndex:this.next.index+this.offset}get currentEndIndex(){return this.index>0?this.peek(-1).end+this.offset:this.tokens.length===0?this.input.length+this.offset:this.next.index+this.offset}get currentAbsoluteOffset(){return this.absoluteOffset+this.inputIndex}span(e,t){let r=this.currentEndIndex;if(t!==void 0&&t>this.currentEndIndex&&(r=t),e>r){let n=r;r=e,e=n}return new L(e,r)}sourceSpan(e,t){let r=`${e}@${this.inputIndex}:${t}`;return this.sourceSpanCache.has(r)||this.sourceSpanCache.set(r,this.span(e,t).toAbsolute(this.absoluteOffset)),this.sourceSpanCache.get(r)}advance(){this.index++}withContext(e,t){this.context|=e;let r=t();return this.context^=e,r}consumeOptionalCharacter(e){return this.next.isCharacter(e)?(this.advance(),!0):!1}peekKeywordLet(){return this.next.isKeywordLet()}peekKeywordAs(){return this.next.isKeywordAs()}expectCharacter(e){this.consumeOptionalCharacter(e)||this.error(`Missing expected ${String.fromCharCode(e)}`)}consumeOptionalOperator(e){return this.next.isOperator(e)?(this.advance(),!0):!1}expectOperator(e){this.consumeOptionalOperator(e)||this.error(`Missing expected operator ${e}`)}prettyPrintToken(e){return e===Oe?"end of input":`token ${e}`}expectIdentifierOrKeyword(){let e=this.next;return!e.isIdentifier()&&!e.isKeyword()?(e.isPrivateIdentifier()?this._reportErrorForPrivateIdentifier(e,"expected identifier or keyword"):this.error(`Unexpected ${this.prettyPrintToken(e)}, expected identifier or keyword`),null):(this.advance(),e.toString())}expectIdentifierOrKeywordOrString(){let e=this.next;return!e.isIdentifier()&&!e.isKeyword()&&!e.isString()?(e.isPrivateIdentifier()?this._reportErrorForPrivateIdentifier(e,"expected identifier, keyword or string"):this.error(`Unexpected ${this.prettyPrintToken(e)}, expected identifier, keyword, or string`),""):(this.advance(),e.toString())}parseChain(){let e=[],t=this.inputIndex;for(;this.index<this.tokens.length;){let r=this.parsePipe();if(e.push(r),this.consumeOptionalCharacter(59))for(this.parseFlags&1||this.error("Binding expression cannot contain chained expression");this.consumeOptionalCharacter(59););else if(this.index<this.tokens.length){let n=this.index;if(this.error(`Unexpected token '${this.next}'`),this.index===n)break}}if(e.length===0){let r=this.offset,n=this.offset+this.input.length;return new E(this.span(r,n),this.sourceSpan(r,n))}return e.length==1?e[0]:new V(this.span(t),this.sourceSpan(t),e)}parsePipe(){let e=this.inputIndex,t=this.parseExpression();if(this.consumeOptionalOperator("|")){this.parseFlags&1&&this.error("Cannot have a pipe in an action expression");do{let r=this.inputIndex,n=this.expectIdentifierOrKeyword(),i,a;n!==null?i=this.sourceSpan(r):(n="",a=this.next.index!==-1?this.next.index:this.input.length+this.offset,i=new L(a,a).toAbsolute(this.absoluteOffset));let h=[];for(;this.consumeOptionalCharacter(58);)h.push(this.parseExpression());t=new q(this.span(e),this.sourceSpan(e,a),t,n,h,i)}while(this.consumeOptionalOperator("|"))}return t}parseExpression(){return this.parseConditional()}parseConditional(){let e=this.inputIndex,t=this.parseLogicalOr();if(this.consumeOptionalOperator("?")){let r=this.parsePipe(),n;if(this.consumeOptionalCharacter(58))n=this.parsePipe();else{let i=this.inputIndex,a=this.input.substring(e,i);this.error(`Conditional expression ${a} requires all 3 expressions`),n=new E(this.span(e),this.sourceSpan(e))}return new W(this.span(e),this.sourceSpan(e),t,r,n)}else return t}parseLogicalOr(){let e=this.inputIndex,t=this.parseLogicalAnd();for(;this.consumeOptionalOperator("||");){let r=this.parseLogicalAnd();t=new $(this.span(e),this.sourceSpan(e),"||",t,r)}return t}parseLogicalAnd(){let e=this.inputIndex,t=this.parseNullishCoalescing();for(;this.consumeOptionalOperator("&&");){let r=this.parseNullishCoalescing();t=new $(this.span(e),this.sourceSpan(e),"&&",t,r)}return t}parseNullishCoalescing(){let e=this.inputIndex,t=this.parseEquality();for(;this.consumeOptionalOperator("??");){let r=this.parseEquality();t=new $(this.span(e),this.sourceSpan(e),"??",t,r)}return t}parseEquality(){let e=this.inputIndex,t=this.parseRelational();for(;this.next.type==d.Operator;){let r=this.next.strValue;switch(r){case"==":case"===":case"!=":case"!==":this.advance();let n=this.parseRelational();t=new $(this.span(e),this.sourceSpan(e),r,t,n);continue}break}return t}parseRelational(){let e=this.inputIndex,t=this.parseAdditive();for(;this.next.type==d.Operator;){let r=this.next.strValue;switch(r){case"<":case">":case"<=":case">=":this.advance();let n=this.parseAdditive();t=new $(this.span(e),this.sourceSpan(e),r,t,n);continue}break}return t}parseAdditive(){let e=this.inputIndex,t=this.parseMultiplicative();for(;this.next.type==d.Operator;){let r=this.next.strValue;switch(r){case"+":case"-":this.advance();let n=this.parseMultiplicative();t=new $(this.span(e),this.sourceSpan(e),r,t,n);continue}break}return t}parseMultiplicative(){let e=this.inputIndex,t=this.parsePrefix();for(;this.next.type==d.Operator;){let r=this.next.strValue;switch(r){case"*":case"%":case"/":this.advance();let n=this.parsePrefix();t=new $(this.span(e),this.sourceSpan(e),r,t,n);continue}break}return t}parsePrefix(){if(this.next.type==d.Operator){let e=this.inputIndex,t=this.next.strValue,r;switch(t){case"+":return this.advance(),r=this.parsePrefix(),I.createPlus(this.span(e),this.sourceSpan(e),r);case"-":return this.advance(),r=this.parsePrefix(),I.createMinus(this.span(e),this.sourceSpan(e),r);case"!":return this.advance(),r=this.parsePrefix(),new J(this.span(e),this.sourceSpan(e),r)}}return this.parseCallChain()}parseCallChain(){let e=this.inputIndex,t=this.parsePrimary();for(;;)if(this.consumeOptionalCharacter(46))t=this.parseAccessMember(t,e,!1);else if(this.consumeOptionalOperator("?."))this.consumeOptionalCharacter(40)?t=this.parseCall(t,e,!0):t=this.consumeOptionalCharacter(91)?this.parseKeyedReadOrWrite(t,e,!0):this.parseAccessMember(t,e,!0);else if(this.consumeOptionalCharacter(91))t=this.parseKeyedReadOrWrite(t,e,!1);else if(this.consumeOptionalCharacter(40))t=this.parseCall(t,e,!1);else if(this.consumeOptionalOperator("!"))t=new Y(this.span(e),this.sourceSpan(e),t);else return t}parsePrimary(){let e=this.inputIndex;if(this.consumeOptionalCharacter(40)){this.rparensExpected++;let t=this.parsePipe();return this.rparensExpected--,this.expectCharacter(41),t}else{if(this.next.isKeywordNull())return this.advance(),new A(this.span(e),this.sourceSpan(e),null);if(this.next.isKeywordUndefined())return this.advance(),new A(this.span(e),this.sourceSpan(e),void 0);if(this.next.isKeywordTrue())return this.advance(),new A(this.span(e),this.sourceSpan(e),!0);if(this.next.isKeywordFalse())return this.advance(),new A(this.span(e),this.sourceSpan(e),!1);if(this.next.isKeywordThis())return this.advance(),new Se(this.span(e),this.sourceSpan(e));if(this.consumeOptionalCharacter(91)){this.rbracketsExpected++;let t=this.parseExpressionList(93);return this.rbracketsExpected--,this.expectCharacter(93),new X(this.span(e),this.sourceSpan(e),t)}else{if(this.next.isCharacter(123))return this.parseLiteralMap();if(this.next.isIdentifier())return this.parseAccessMember(new b(this.span(e),this.sourceSpan(e)),e,!1);if(this.next.isNumber()){let t=this.next.toNumber();return this.advance(),new A(this.span(e),this.sourceSpan(e),t)}else if(this.next.isString()){let t=this.next.toString();return this.advance(),new A(this.span(e),this.sourceSpan(e),t)}else return this.next.isPrivateIdentifier()?(this._reportErrorForPrivateIdentifier(this.next,null),new E(this.span(e),this.sourceSpan(e))):this.index>=this.tokens.length?(this.error(`Unexpected end of expression: ${this.input}`),new E(this.span(e),this.sourceSpan(e))):(this.error(`Unexpected token ${this.next}`),new E(this.span(e),this.sourceSpan(e)))}}}parseExpressionList(e){let t=[];do if(!this.next.isCharacter(e))t.push(this.parsePipe());else break;while(this.consumeOptionalCharacter(44));return t}parseLiteralMap(){let e=[],t=[],r=this.inputIndex;if(this.expectCharacter(123),!this.consumeOptionalCharacter(125)){this.rbracesExpected++;do{let n=this.inputIndex,i=this.next.isString(),a=this.expectIdentifierOrKeywordOrString();if(e.push({key:a,quoted:i}),i)this.expectCharacter(58),t.push(this.parsePipe());else if(this.consumeOptionalCharacter(58))t.push(this.parsePipe());else{let h=this.span(n),v=this.sourceSpan(n);t.push(new K(h,v,v,new b(h,v),a))}}while(this.consumeOptionalCharacter(44));this.rbracesExpected--,this.expectCharacter(125)}return new Z(this.span(r),this.sourceSpan(r),e,t)}parseAccessMember(e,t,r){let n=this.inputIndex,i=this.withContext(oe.Writable,()=>{let v=this.expectIdentifierOrKeyword()??"";return v.length===0&&this.error("Expected identifier for property access",e.span.end),v}),a=this.sourceSpan(n),h;if(r)this.consumeOptionalAssignment()?(this.error("The '?.' operator cannot be used in the assignment"),h=new E(this.span(t),this.sourceSpan(t))):h=new H(this.span(t),this.sourceSpan(t),a,e,i);else if(this.consumeOptionalAssignment()){if(!(this.parseFlags&1))return this.error("Bindings cannot contain assignments"),new E(this.span(t),this.sourceSpan(t));let v=this.parseConditional();h=new Q(this.span(t),this.sourceSpan(t),a,e,i,v)}else h=new K(this.span(t),this.sourceSpan(t),a,e,i);return h}parseCall(e,t,r){let n=this.inputIndex;this.rparensExpected++;let i=this.parseCallArguments(),a=this.span(n,this.inputIndex).toAbsolute(this.absoluteOffset);this.expectCharacter(41),this.rparensExpected--;let h=this.span(t),v=this.sourceSpan(t);return r?new te(h,v,e,i,a):new ee(h,v,e,i,a)}consumeOptionalAssignment(){return this.parseFlags&2&&this.next.isOperator("!")&&this.peek(1).isOperator("=")?(this.advance(),this.advance(),!0):this.consumeOptionalOperator("=")}parseCallArguments(){if(this.next.isCharacter(41))return[];let e=[];do e.push(this.parsePipe());while(this.consumeOptionalCharacter(44));return e}expectTemplateBindingKey(){let e="",t=!1,r=this.currentAbsoluteOffset;do e+=this.expectIdentifierOrKeywordOrString(),t=this.consumeOptionalOperator("-"),t&&(e+="-");while(t);return{source:e,span:new P(r,r+e.length)}}parseTemplateBindings(e){let t=[];for(t.push(...this.parseDirectiveKeywordBindings(e));this.index<this.tokens.length;){let r=this.parseLetBinding();if(r)t.push(r);else{let n=this.expectTemplateBindingKey(),i=this.parseAsBinding(n);i?t.push(i):(n.source=e.source+n.source.charAt(0).toUpperCase()+n.source.substring(1),t.push(...this.parseDirectiveKeywordBindings(n)))}this.consumeStatementTerminator()}return new Fe(t,[],this.errors)}parseKeyedReadOrWrite(e,t,r){return this.withContext(oe.Writable,()=>{this.rbracketsExpected++;let n=this.parsePipe();if(n instanceof E&&this.error("Key access cannot be empty"),this.rbracketsExpected--,this.expectCharacter(93),this.consumeOptionalOperator("="))if(r)this.error("The '?.' operator cannot be used in the assignment");else{let i=this.parseConditional();return new z(this.span(t),this.sourceSpan(t),e,n,i)}else return r?new we(this.span(t),this.sourceSpan(t),e,n):new j(this.span(t),this.sourceSpan(t),e,n);return new E(this.span(t),this.sourceSpan(t))})}parseDirectiveKeywordBindings(e){let t=[];this.consumeOptionalCharacter(58);let r=this.getDirectiveBoundTarget(),n=this.currentAbsoluteOffset,i=this.parseAsBinding(e);i||(this.consumeStatementTerminator(),n=this.currentAbsoluteOffset);let a=new P(e.span.start,n);return t.push(new re(a,e,r)),i&&t.push(i),t}getDirectiveBoundTarget(){if(this.next===Oe||this.peekKeywordAs()||this.peekKeywordLet())return null;let e=this.parsePipe(),{start:t,end:r}=e.span,n=this.input.substring(t,r);return new R(e,n,this.location,this.absoluteOffset+t,this.errors)}parseAsBinding(e){if(!this.peekKeywordAs())return null;this.advance();let t=this.expectTemplateBindingKey();this.consumeStatementTerminator();let r=new P(e.span.start,this.currentAbsoluteOffset);return new T(r,t,e)}parseLetBinding(){if(!this.peekKeywordLet())return null;let e=this.currentAbsoluteOffset;this.advance();let t=this.expectTemplateBindingKey(),r=null;this.consumeOptionalOperator("=")&&(r=this.expectTemplateBindingKey()),this.consumeStatementTerminator();let n=new P(e,this.currentAbsoluteOffset);return new T(n,t,r)}consumeStatementTerminator(){this.consumeOptionalCharacter(59)||this.consumeOptionalCharacter(44)}error(e,t=null){this.errors.push(new G(e,this.input,this.locationText(t),this.location)),this.skip()}locationText(e=null){return e==null&&(e=this.index),e<this.tokens.length?`at column ${this.tokens[e].index+1} in`:"at the end of the expression"}_reportErrorForPrivateIdentifier(e,t){let r=`Private identifiers are not supported. Unexpected private identifier: ${e}`;t!==null&&(r+=`, ${t}`),this.error(r)}skip(){let e=this.next;for(;this.index<this.tokens.length&&!e.isCharacter(59)&&!e.isOperator("|")&&(this.rparensExpected<=0||!e.isCharacter(41))&&(this.rbracesExpected<=0||!e.isCharacter(125))&&(this.rbracketsExpected<=0||!e.isCharacter(93))&&(!(this.context&oe.Writable)||!e.isOperator("="));)this.next.isError()&&this.errors.push(new G(this.next.toString(),this.input,this.locationText(),this.location)),this.advance(),e=this.next}},Ue=class extends Ee{constructor(){super(...arguments),this.errors=[]}visitPipe(){this.errors.push("pipes")}};function Or(s){let e=new Map,t=0,r=0,n=0;for(;n<s.length;){let i=s[n];if(i.type===9){let[a,h]=i.parts;t+=h.length,r+=a.length}else{let a=i.parts.reduce((h,v)=>h+v.length,0);r+=a,t+=a}e.set(r,t),n++}return e}var xt="angular-estree-parser",De="NgEstreeParser",Ge=0,Ve=[xt,Ge];function ft(){return new ve(new ue)}function We(s,e){let t=ft(),{astInput:r,comments:n}=kr(s,t),{ast:i,errors:a}=e(r,t);return St(a),{ast:i,comments:n}}function dt(s){return We(s,(e,t)=>t.parseBinding(e,...Ve))}function vt(s){return We(s,(e,t)=>t.parseAction(e,!1,...Ve))}function gt(s){return We(s,(e,t)=>{let r=t.parseInterpolationExpression(e,...Ve);return r.ast=r.ast.expressions[0],r})}function mt(s){let e=ft(),{templateBindings:t,errors:r}=e.parseTemplateBindings(De,s,xt,Ge,Ge);return St(r),t}function St(s){if(s.length!==0){let[{message:e}]=s;throw new SyntaxError(e.replace(/^Parser Error: | at column \d+ in [^]*$/g,""))}}function kr(s,e){let t=e._commentStart(s);return t===null?{astInput:s,comments:[]}:{astInput:s.slice(0,t),comments:[{type:"Comment",value:s.slice(t+2),sourceSpan:{start:t,end:s.length}}]}}function wt(s){return s instanceof I?"Unary":s instanceof $?"Binary":s instanceof q?"BindingPipe":s instanceof ee?"Call":s instanceof V?"Chain":s instanceof W?"Conditional":s instanceof E?"EmptyExpr":s instanceof b?"ImplicitReceiver":s instanceof j?"KeyedRead":s instanceof z?"KeyedWrite":s instanceof X?"LiteralArray":s instanceof Z?"LiteralMap":s instanceof A?"LiteralPrimitive":s instanceof Y?"NonNullAssert":s instanceof J?"PrefixNot":s instanceof K?"PropertyRead":s instanceof Q?"PropertyWrite":s instanceof te?"SafeCall":s instanceof H?"SafePropertyRead":s.type}function lt({start:s,end:e},t){let r=s,n=e;for(;n!==r&&/\s/.test(t[n-1]);)n--;for(;r!==n&&/\s/.test(t[r]);)r++;return{start:r,end:n}}function Ir({start:s,end:e},t){let r=s,n=e;for(;n!==t.length&&/\s/.test(t[n]);)n++;for(;r!==0&&/\s/.test(t[r-1]);)r--;return{start:r,end:n}}function Pr(s,e){return e[s.start-1]==="("&&e[s.end]===")"?{start:s.start-1,end:s.end+1}:s}function yt(s,e,t){let r=0,n={start:s.start,end:s.end};for(;;){let i=Ir(n,e),a=Pr(i,e);if(i.start===a.start&&i.end===a.end)break;n.start=a.start,n.end=a.end,r++}return{hasParens:(t?r-1:r)!==0,outerSpan:lt(t?{start:n.start+1,end:n.end-1}:n,e),innerSpan:lt(s,e)}}function Et(s,e,t){let r=e;for(;!s.test(t[r]);)if(--r<0)throw new Error(`Cannot find front char ${s} from index ${e} in ${JSON.stringify(t)}`);return r}function Ne(s,e,t){let r=e;for(;!s.test(t[r]);)if(++r>=t.length)throw new Error(`Cannot find back char ${s} from index ${e} in ${JSON.stringify(t)}`);return r}function At(s){return s.slice(0,1).toLowerCase()+s.slice(1)}function $t(s){return s.length===0?void 0:s[s.length-1]}var ce=(s,e,t=!1)=>{let r=wt(s);switch(r){case"Unary":{let{operator:c,expr:o}=s,x=n(o);return a("UnaryExpression",{prefix:!0,argument:x,operator:c},s.sourceSpan,{hasParentParens:t})}case"Binary":{let{left:c,operation:o,right:x}=s,p=n(c),l=n(x);return a(o==="&&"||o==="||"||o==="??"?"LogicalExpression":"BinaryExpression",{left:p,right:l,operator:o},{start:y(p),end:m(l)},{hasParentParens:t})}case"BindingPipe":{let{exp:c,name:o,args:x}=s,p=n(c),l=f(/\S/,f(/\|/,m(p))+1),g=a("Identifier",{name:o},{start:l,end:l+o.length}),u=x.map(n);return a("NGPipeExpression",{left:p,right:g,arguments:u},{start:y(p),end:m(u.length===0?g:$t(u))},{hasParentParens:t})}case"Chain":{let{expressions:c}=s;return a("NGChainedExpression",{expressions:c.map(n)},s.sourceSpan,{hasParentParens:t})}case"Comment":{let{value:c}=s;return a("CommentLine",{value:c},s.sourceSpan,{processSpan:!1})}case"Conditional":{let{condition:c,trueExp:o,falseExp:x}=s,p=n(c),l=n(o),g=n(x);return a("ConditionalExpression",{test:p,consequent:l,alternate:g},{start:y(p),end:m(g)},{hasParentParens:t})}case"EmptyExpr":return a("NGEmptyExpression",{},s.sourceSpan,{hasParentParens:t});case"ImplicitReceiver":return a("ThisExpression",{},s.sourceSpan,{hasParentParens:t});case"KeyedRead":{let{key:c}=s,o=Object.prototype.hasOwnProperty.call(s,"receiver")?s.receiver:s.obj,x=n(c);return h(o,x,{computed:!0,optional:!1},{end:s.sourceSpan.end,hasParentParens:t})}case"LiteralArray":{let{expressions:c}=s;return a("ArrayExpression",{elements:c.map(n)},s.sourceSpan,{hasParentParens:t})}case"LiteralMap":{let{keys:c,values:o}=s,x=o.map(l=>n(l)),p=c.map(({key:l,quoted:g},u)=>{let O=x[u],he=y(O),ze=m(O),Pe=f(/\S/,u===0?s.sourceSpan.start+1:f(/,/,m(x[u-1]))+1),Rt=he===Pe?ze:v(/\S/,v(/:/,he-1)-1)+1,qe={start:Pe,end:Rt},ge=g?a("StringLiteral",{value:l},qe):a("Identifier",{name:l},qe),Lt=ge.end<ge.start||Pe===he;return a("ObjectProperty",{key:ge,value:O,method:!1,shorthand:Lt,computed:!1},{start:y(ge),end:ze})});return a("ObjectExpression",{properties:p},s.sourceSpan,{hasParentParens:t})}case"LiteralPrimitive":{let{value:c}=s;switch(typeof c){case"boolean":return a("BooleanLiteral",{value:c},s.sourceSpan,{hasParentParens:t});case"number":return a("NumericLiteral",{value:c},s.sourceSpan,{hasParentParens:t});case"object":return a("NullLiteral",{},s.sourceSpan,{hasParentParens:t});case"string":return a("StringLiteral",{value:c},s.sourceSpan,{hasParentParens:t});case"undefined":return a("Identifier",{name:"undefined"},s.sourceSpan,{hasParentParens:t});default:throw new Error(`Unexpected LiteralPrimitive value type ${typeof c}`)}}case"Call":case"SafeCall":{let c=r==="SafeCall",{receiver:o,args:x}=s,p=x.length===1?[i(x[0])]:x.map(n),l=n(o),g=k(l),u=c||g?"OptionalCallExpression":"CallExpression";return a(u,{callee:l,arguments:p,optional:u==="OptionalCallExpression"?c:void 0},{start:y(l),end:s.sourceSpan.end},{hasParentParens:t})}case"NonNullAssert":{let{expression:c}=s,o=n(c);return a("TSNonNullExpression",{expression:o},{start:y(o),end:s.sourceSpan.end},{hasParentParens:t})}case"PrefixNot":{let{expression:c}=s,o=n(c);return a("UnaryExpression",{prefix:!0,operator:"!",argument:o},{start:s.sourceSpan.start,end:m(o)},{hasParentParens:t})}case"PropertyRead":case"SafePropertyRead":{let c=r==="SafePropertyRead",{receiver:o,name:x}=s,p=v(/\S/,s.sourceSpan.end-1)+1,l=a("Identifier",{name:x},{start:p-x.length,end:p},w(o)?{hasParentParens:t}:{});return h(o,l,{computed:!1,optional:c},{hasParentParens:t})}case"KeyedWrite":{let{key:c,value:o}=s,x=Object.prototype.hasOwnProperty.call(s,"receiver")?s.receiver:s.obj,p=n(c),l=n(o),g=h(x,p,{computed:!0,optional:!1},{end:f(/\]/,m(p))+1});return a("AssignmentExpression",{left:g,operator:"=",right:l},{start:y(g),end:m(l)},{hasParentParens:t})}case"PropertyWrite":{let{receiver:c,name:o,value:x}=s,p=n(x),l=v(/\S/,v(/=/,y(p)-1)-1)+1,g=a("Identifier",{name:o},{start:l-o.length,end:l}),u=h(c,g,{computed:!1,optional:!1});return a("AssignmentExpression",{left:u,operator:"=",right:p},{start:y(u),end:m(p)},{hasParentParens:t})}default:throw new Error(`Unexpected node ${r}`)}function n(c){return ce(c,e)}function i(c){return ce(c,e,!0)}function a(c,o,x,{processSpan:p=!0,hasParentParens:l=!1}={}){let g={type:c,...ke(x,e,p,l),...o};switch(c){case"Identifier":{let u=g;u.loc.identifierName=u.name;break}case"NumericLiteral":{let u=g;u.extra={...u.extra,raw:e.text.slice(u.start,u.end),rawValue:u.value};break}case"StringLiteral":{let u=g;u.extra={...u.extra,raw:e.text.slice(u.start,u.end),rawValue:u.value};break}case"ObjectProperty":{let u=g;u.shorthand&&(u.extra={...u.extra,shorthand:u.shorthand});break}}return g}function h(c,o,x,{end:p=m(o),hasParentParens:l=!1}={}){if(w(c)||c.sourceSpan.start===o.start)return o;let g=n(c),u=k(g);return a(x.optional||u?"OptionalMemberExpression":"MemberExpression",{object:g,property:o,computed:x.computed,...x.optional?{optional:!0}:u?{optional:!1}:null},{start:y(g),end:p},{hasParentParens:l})}function v(c,o){return Et(c,o,e.text)}function f(c,o){return Ne(c,o,e.text)}function w(c){return c.sourceSpan.start>=c.sourceSpan.end||/^\s+$/.test(e.text.slice(c.sourceSpan.start,c.sourceSpan.end))}function k(c){return(c.type==="OptionalCallExpression"||c.type==="OptionalMemberExpression")&&!C(c)}function C(c){return c.extra&&c.extra.parenthesized}function y(c){return C(c)?c.extra.parenStart:c.start}function m(c){return C(c)?c.extra.parenEnd:c.end}};function ke(s,e,t=!1,r=!1){if(!t){let{start:h,end:v}=s;return{start:h,end:v,loc:{start:e.locator.locationForIndex(h),end:e.locator.locationForIndex(v)}}}let{outerSpan:n,innerSpan:i,hasParens:a}=yt(s,e.text,r);return{start:i.start,end:i.end,loc:{start:e.locator.locationForIndex(i.start),end:e.locator.locationForIndex(i.end)},...a&&{extra:{parenthesized:!0,parenStart:n.start,parenEnd:n.end}}}}function Ct(s,e){s.forEach(y);let[t]=s,{key:r}=t,n=e.text.slice(t.sourceSpan.start,t.sourceSpan.end).trim().length===0?s.slice(1):s,i=[],a=null;for(let o=0;o<n.length;o++){let x=n[o];if(a&&k(a)&&C(x)&&x.value&&x.value.source===a.key.source){let p=f("NGMicrosyntaxKey",{name:x.key.source},x.key.span),l=(O,he)=>({...O,...ke({start:O.start,end:he},e)}),g=O=>({...l(O,p.end),alias:p}),u=i.pop();if(u.type==="NGMicrosyntaxExpression")i.push(g(u));else if(u.type==="NGMicrosyntaxKeyedExpression"){let O=g(u.expression);i.push(l({...u,expression:O},O.end))}else throw new Error(`Unexpected type ${u.type}`)}else i.push(h(x,o));a=x}return f("NGMicrosyntax",{body:i},i.length===0?s[0].sourceSpan:{start:i[0].start,end:i[i.length-1].end});function h(o,x){if(k(o)){let{key:p,value:l}=o;return l?x===0?f("NGMicrosyntaxExpression",{expression:v(l.ast),alias:null},l.sourceSpan):f("NGMicrosyntaxKeyedExpression",{key:f("NGMicrosyntaxKey",{name:w(p.source)},p.span),expression:f("NGMicrosyntaxExpression",{expression:v(l.ast),alias:null},l.sourceSpan)},{start:p.span.start,end:l.sourceSpan.end}):f("NGMicrosyntaxKey",{name:w(p.source)},p.span)}else{let{key:p,sourceSpan:l}=o;if(/^let\s$/.test(e.text.slice(l.start,l.start+4))){let{value:u}=o;return f("NGMicrosyntaxLet",{key:f("NGMicrosyntaxKey",{name:p.source},p.span),value:u?f("NGMicrosyntaxKey",{name:u.source},u.span):null},{start:l.start,end:u?u.span.end:p.span.end})}else{let u=c(o);return f("NGMicrosyntaxAs",{key:f("NGMicrosyntaxKey",{name:u.source},u.span),alias:f("NGMicrosyntaxKey",{name:p.source},p.span)},{start:u.span.start,end:p.span.end})}}}function v(o){return ce(o,e)}function f(o,x,p,l=!0){return{type:o,...ke(p,e,l),...x}}function w(o){return At(o.slice(r.source.length))}function k(o){return o instanceof re}function C(o){return o instanceof T}function y(o){m(o.key.span),C(o)&&o.value&&m(o.value.span)}function m(o){if(e.text[o.start]!=='"'&&e.text[o.start]!=="'")return;let x=e.text[o.start],p=!1;for(let l=o.start+1;l<e.text.length;l++)switch(e.text[l]){case x:if(!p){o.end=l+1;return}default:p=!1;break;case"\\":p=!p;break}}function c(o){if(!o.value||o.value.source!==De)return o.value;let x=Ne(/\S/,o.sourceSpan.start,e.text);return{source:"$implicit",span:{start:x,end:x}}}}function Qe(s,e){let{ast:t,comments:r}=e(s),n=new pe(s),i=h=>ce(h,n),a=i(t);return a.comments=r.map(h=>i(h)),a}function Ot(s){return Qe(s,dt)}function Nt(s){return Qe(s,gt)}function He(s){return Qe(s,vt)}function kt(s){return Ct(mt(s),new pe(s))}function Rr(s){return Array.isArray(s)&&s.length>0}var It=Rr;function je(s){var r;let e=s.range?s.range[0]:s.start,t=((r=s.declaration)==null?void 0:r.decorators)??s.decorators;return It(t)?Math.min(je(t[0]),e):e}function Pt(s){return s.range?s.range[1]:s.end}function Ie(s){return{astFormat:"estree",parse(e){let t=s(e);return{type:"NGRoot",node:s===He&&t.type!=="NGChainedExpression"?{...t,type:"NGChainedExpression",expressions:[t]}:t}},locStart:je,locEnd:Pt}}var Lr={parsers:{__ng_action:Ie(He),__ng_binding:Ie(Ot),__ng_interpolation:Ie(Nt),__ng_directive:Ie(kt)}},br=Lr;return Mt(Br);});
|
|
1
|
+
(function(n){function e(){var i=n();return i.default||i}if(typeof exports=="object"&&typeof module=="object")module.exports=e();else if(typeof define=="function"&&define.amd)define(e);else{var t=typeof globalThis<"u"?globalThis:typeof global<"u"?global:typeof self<"u"?self:this||{};t.prettierPlugins=t.prettierPlugins||{},t.prettierPlugins.angular=e()}})(function(){"use strict";var _e=Object.defineProperty;var er=Object.getOwnPropertyDescriptor;var tr=Object.getOwnPropertyNames;var rr=Object.prototype.hasOwnProperty;var E=(s,e)=>()=>(s&&(e=s(s=0)),e);var st=(s,e)=>{for(var t in e)_e(s,t,{get:e[t],enumerable:!0})},sr=(s,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of tr(e))!rr.call(s,n)&&n!==t&&_e(s,n,{get:()=>e[n],enumerable:!(r=er(e,n))||r.enumerable});return s};var nr=s=>sr(_e({},"__esModule",{value:!0}),s);var we,it,at,ot=E(()=>{we=`
|
|
2
|
+
`,it="\r",at=function(){function s(e){this.length=e.length;for(var t=[0],r=0;r<e.length;)switch(e[r]){case we:r+=we.length,t.push(r);break;case it:r+=it.length,e[r]===we&&(r+=we.length),t.push(r);break;default:r++;break}this.offsets=t}return s.prototype.locationForIndex=function(e){if(e<0||e>this.length)return null;for(var t=0,r=this.offsets;r[t+1]<=e;)t++;var n=e-r[t];return{line:t,column:n}},s.prototype.indexForLocation=function(e){var t=e.line,r=e.column;return t<0||t>=this.offsets.length||r<0||r>this.lengthOfLine(t)?null:this.offsets[t]+r},s.prototype.lengthOfLine=function(e){var t=this.offsets[e],r=e===this.offsets.length-1?this.length:this.offsets[e+1];return r-t},s}()});var xe,Be,ct=E(()=>{ot();xe=class{text;locator;constructor(e){this.text=e,this.locator=new Be(this.text)}},Be=class{_linesAndColumns;constructor(e){this._linesAndColumns=new at(e)}locationForIndex(e){let{line:t,column:r}=this._linesAndColumns.locationForIndex(e);return{line:t+1,column:r,index:e}}}});var D,b,S,V,A,_,ye,W,Q,K,j,H,z,q,X,Z,$,J,Y,Ee,C,P,ee,te,re,se,R,L,T,ne,Ae,ht,Ke=E(()=>{D=class{constructor(e,t,r,n){this.input=t,this.errLocation=r,this.ctxLocation=n,this.message=`Parser Error: ${e} ${r} [${t}] in ${n}`}},b=class{constructor(e,t){this.start=e,this.end=t}toAbsolute(e){return new R(e+this.start,e+this.end)}},S=class{constructor(e,t){this.span=e,this.sourceSpan=t}toString(){return"AST"}},V=class extends S{constructor(e,t,r){super(e,t),this.nameSpan=r}},A=class extends S{visit(e,t=null){}},_=class extends S{visit(e,t=null){return e.visitImplicitReceiver(this,t)}},ye=class extends _{visit(e,t=null){var r;return(r=e.visitThisReceiver)==null?void 0:r.call(e,this,t)}},W=class extends S{constructor(e,t,r){super(e,t),this.expressions=r}visit(e,t=null){return e.visitChain(this,t)}},Q=class extends S{constructor(e,t,r,n,i){super(e,t),this.condition=r,this.trueExp=n,this.falseExp=i}visit(e,t=null){return e.visitConditional(this,t)}},K=class extends V{constructor(e,t,r,n,i){super(e,t,r),this.receiver=n,this.name=i}visit(e,t=null){return e.visitPropertyRead(this,t)}},j=class extends V{constructor(e,t,r,n,i,a){super(e,t,r),this.receiver=n,this.name=i,this.value=a}visit(e,t=null){return e.visitPropertyWrite(this,t)}},H=class extends V{constructor(e,t,r,n,i){super(e,t,r),this.receiver=n,this.name=i}visit(e,t=null){return e.visitSafePropertyRead(this,t)}},z=class extends S{constructor(e,t,r,n){super(e,t),this.receiver=r,this.key=n}visit(e,t=null){return e.visitKeyedRead(this,t)}},q=class extends S{constructor(e,t,r,n){super(e,t),this.receiver=r,this.key=n}visit(e,t=null){return e.visitSafeKeyedRead(this,t)}},X=class extends S{constructor(e,t,r,n,i){super(e,t),this.receiver=r,this.key=n,this.value=i}visit(e,t=null){return e.visitKeyedWrite(this,t)}},Z=class extends V{constructor(e,t,r,n,i,a){super(e,t,a),this.exp=r,this.name=n,this.args=i}visit(e,t=null){return e.visitPipe(this,t)}},$=class extends S{constructor(e,t,r){super(e,t),this.value=r}visit(e,t=null){return e.visitLiteralPrimitive(this,t)}},J=class extends S{constructor(e,t,r){super(e,t),this.expressions=r}visit(e,t=null){return e.visitLiteralArray(this,t)}},Y=class extends S{constructor(e,t,r,n){super(e,t),this.keys=r,this.values=n}visit(e,t=null){return e.visitLiteralMap(this,t)}},Ee=class extends S{constructor(e,t,r,n){super(e,t),this.strings=r,this.expressions=n}visit(e,t=null){return e.visitInterpolation(this,t)}},C=class extends S{constructor(e,t,r,n,i){super(e,t),this.operation=r,this.left=n,this.right=i}visit(e,t=null){return e.visitBinary(this,t)}},P=class extends C{static createMinus(e,t,r){return new P(e,t,"-",r,"-",new $(e,t,0),r)}static createPlus(e,t,r){return new P(e,t,"+",r,"-",r,new $(e,t,0))}constructor(e,t,r,n,i,a,h){super(e,t,i,a,h),this.operator=r,this.expr=n,this.left=null,this.right=null,this.operation=null}visit(e,t=null){return e.visitUnary!==void 0?e.visitUnary(this,t):e.visitBinary(this,t)}},ee=class extends S{constructor(e,t,r){super(e,t),this.expression=r}visit(e,t=null){return e.visitPrefixNot(this,t)}},te=class extends S{constructor(e,t,r){super(e,t),this.expression=r}visit(e,t=null){return e.visitNonNullAssert(this,t)}},re=class extends S{constructor(e,t,r,n,i){super(e,t),this.receiver=r,this.args=n,this.argumentSpan=i}visit(e,t=null){return e.visitCall(this,t)}},se=class extends S{constructor(e,t,r,n,i){super(e,t),this.receiver=r,this.args=n,this.argumentSpan=i}visit(e,t=null){return e.visitSafeCall(this,t)}},R=class{constructor(e,t){this.start=e,this.end=t}},L=class extends S{constructor(e,t,r,n,i){super(new b(0,t===null?0:t.length),new R(n,t===null?n:n+t.length)),this.ast=e,this.source=t,this.location=r,this.errors=i}visit(e,t=null){return e.visitASTWithSource?e.visitASTWithSource(this,t):this.ast.visit(e,t)}toString(){return`${this.source} in ${this.location}`}},T=class{constructor(e,t,r){this.sourceSpan=e,this.key=t,this.value=r}},ne=class{constructor(e,t,r){this.sourceSpan=e,this.key=t,this.value=r}},Ae=class{visit(e,t){e.visit(this,t)}visitUnary(e,t){this.visit(e.expr,t)}visitBinary(e,t){this.visit(e.left,t),this.visit(e.right,t)}visitChain(e,t){this.visitAll(e.expressions,t)}visitConditional(e,t){this.visit(e.condition,t),this.visit(e.trueExp,t),this.visit(e.falseExp,t)}visitPipe(e,t){this.visit(e.exp,t),this.visitAll(e.args,t)}visitImplicitReceiver(e,t){}visitThisReceiver(e,t){}visitInterpolation(e,t){this.visitAll(e.expressions,t)}visitKeyedRead(e,t){this.visit(e.receiver,t),this.visit(e.key,t)}visitKeyedWrite(e,t){this.visit(e.receiver,t),this.visit(e.key,t),this.visit(e.value,t)}visitLiteralArray(e,t){this.visitAll(e.expressions,t)}visitLiteralMap(e,t){this.visitAll(e.values,t)}visitLiteralPrimitive(e,t){}visitPrefixNot(e,t){this.visit(e.expression,t)}visitNonNullAssert(e,t){this.visit(e.expression,t)}visitPropertyRead(e,t){this.visit(e.receiver,t)}visitPropertyWrite(e,t){this.visit(e.receiver,t),this.visit(e.value,t)}visitSafePropertyRead(e,t){this.visit(e.receiver,t)}visitSafeKeyedRead(e,t){this.visit(e.receiver,t),this.visit(e.key,t)}visitCall(e,t){this.visit(e.receiver,t),this.visitAll(e.args,t)}visitSafeCall(e,t){this.visit(e.receiver,t),this.visitAll(e.args,t)}visitAll(e,t){for(let r of e)this.visit(r,t)}};(function(s){s[s.DEFAULT=0]="DEFAULT",s[s.LITERAL_ATTR=1]="LITERAL_ATTR",s[s.ANIMATION=2]="ANIMATION"})(ht||(ht={}))});function pt(s){return s>=9&&s<=32||s==160}function B(s){return 48<=s&&s<=57}function ut(s){return s>=97&&s<=122||s>=65&&s<=90}function Te(s){return s===39||s===34||s===96}var Me=E(()=>{});function vt(s,e,t){return new k(s,e,d.Character,t,String.fromCharCode(t))}function Kr(s,e,t){return new k(s,e,d.Identifier,0,t)}function Tr(s,e,t){return new k(s,e,d.PrivateIdentifier,0,t)}function Mr(s,e,t){return new k(s,e,d.Keyword,0,t)}function Ue(s,e,t){return new k(s,e,d.Operator,0,t)}function Fr(s,e,t){return new k(s,e,d.String,0,t)}function Ur(s,e,t){return new k(s,e,d.Number,t,"")}function Gr(s,e,t){return new k(s,e,d.Error,0,t)}function gt(s){return 97<=s&&s<=122||65<=s&&s<=90||s==95||s==36}function mt(s){return ut(s)||B(s)||s==95||s==36}function Dr(s){return s==101||s==69}function Vr(s){return s==45||s==43}function Wr(s){switch(s){case 110:return 10;case 102:return 12;case 114:return 13;case 116:return 9;case 118:return 11;default:return s}}function Qr(s){let e=parseInt(s);if(isNaN(e))throw new Error("Invalid integer literal when parsing "+s);return e}var d,Br,fe,k,Ne,Ge,Ve=E(()=>{Me();(function(s){s[s.Character=0]="Character",s[s.Identifier=1]="Identifier",s[s.PrivateIdentifier=2]="PrivateIdentifier",s[s.Keyword=3]="Keyword",s[s.String=4]="String",s[s.Operator=5]="Operator",s[s.Number=6]="Number",s[s.Error=7]="Error"})(d||(d={}));Br=["var","let","as","null","undefined","true","false","if","else","this"],fe=class{tokenize(e){let t=new Ge(e),r=[],n=t.scanToken();for(;n!=null;)r.push(n),n=t.scanToken();return r}},k=class{constructor(e,t,r,n,i){this.index=e,this.end=t,this.type=r,this.numValue=n,this.strValue=i}isCharacter(e){return this.type==d.Character&&this.numValue==e}isNumber(){return this.type==d.Number}isString(){return this.type==d.String}isOperator(e){return this.type==d.Operator&&this.strValue==e}isIdentifier(){return this.type==d.Identifier}isPrivateIdentifier(){return this.type==d.PrivateIdentifier}isKeyword(){return this.type==d.Keyword}isKeywordLet(){return this.type==d.Keyword&&this.strValue=="let"}isKeywordAs(){return this.type==d.Keyword&&this.strValue=="as"}isKeywordNull(){return this.type==d.Keyword&&this.strValue=="null"}isKeywordUndefined(){return this.type==d.Keyword&&this.strValue=="undefined"}isKeywordTrue(){return this.type==d.Keyword&&this.strValue=="true"}isKeywordFalse(){return this.type==d.Keyword&&this.strValue=="false"}isKeywordThis(){return this.type==d.Keyword&&this.strValue=="this"}isError(){return this.type==d.Error}toNumber(){return this.type==d.Number?this.numValue:-1}toString(){switch(this.type){case d.Character:case d.Identifier:case d.Keyword:case d.Operator:case d.PrivateIdentifier:case d.String:case d.Error:return this.strValue;case d.Number:return this.numValue.toString();default:return null}}};Ne=new k(-1,-1,d.Character,0,""),Ge=class{constructor(e){this.input=e,this.peek=0,this.index=-1,this.length=e.length,this.advance()}advance(){this.peek=++this.index>=this.length?0:this.input.charCodeAt(this.index)}scanToken(){let e=this.input,t=this.length,r=this.peek,n=this.index;for(;r<=32;)if(++n>=t){r=0;break}else r=e.charCodeAt(n);if(this.peek=r,this.index=n,n>=t)return null;if(gt(r))return this.scanIdentifier();if(B(r))return this.scanNumber(n);let i=n;switch(r){case 46:return this.advance(),B(this.peek)?this.scanNumber(i):vt(i,this.index,46);case 40:case 41:case 123:case 125:case 91:case 93:case 44:case 58:case 59:return this.scanCharacter(i,r);case 39:case 34:return this.scanString();case 35:return this.scanPrivateIdentifier();case 43:case 45:case 42:case 47:case 37:case 94:return this.scanOperator(i,String.fromCharCode(r));case 63:return this.scanQuestion(i);case 60:case 62:return this.scanComplexOperator(i,String.fromCharCode(r),61,"=");case 33:case 61:return this.scanComplexOperator(i,String.fromCharCode(r),61,"=",61,"=");case 38:return this.scanComplexOperator(i,"&",38,"&");case 124:return this.scanComplexOperator(i,"|",124,"|");case 160:for(;pt(this.peek);)this.advance();return this.scanToken()}return this.advance(),this.error(`Unexpected character [${String.fromCharCode(r)}]`,0)}scanCharacter(e,t){return this.advance(),vt(e,this.index,t)}scanOperator(e,t){return this.advance(),Ue(e,this.index,t)}scanComplexOperator(e,t,r,n,i,a){this.advance();let h=t;return this.peek==r&&(this.advance(),h+=n),i!=null&&this.peek==i&&(this.advance(),h+=a),Ue(e,this.index,h)}scanIdentifier(){let e=this.index;for(this.advance();mt(this.peek);)this.advance();let t=this.input.substring(e,this.index);return Br.indexOf(t)>-1?Mr(e,this.index,t):Kr(e,this.index,t)}scanPrivateIdentifier(){let e=this.index;if(this.advance(),!gt(this.peek))return this.error("Invalid character [#]",-1);for(;mt(this.peek);)this.advance();let t=this.input.substring(e,this.index);return Tr(e,this.index,t)}scanNumber(e){let t=this.index===e,r=!1;for(this.advance();;){if(!B(this.peek))if(this.peek===95){if(!B(this.input.charCodeAt(this.index-1))||!B(this.input.charCodeAt(this.index+1)))return this.error("Invalid numeric separator",0);r=!0}else if(this.peek===46)t=!1;else if(Dr(this.peek)){if(this.advance(),Vr(this.peek)&&this.advance(),!B(this.peek))return this.error("Invalid exponent",-1);t=!1}else break;this.advance()}let n=this.input.substring(e,this.index);r&&(n=n.replace(/_/g,""));let i=t?Qr(n):parseFloat(n);return Ur(e,this.index,i)}scanString(){let e=this.index,t=this.peek;this.advance();let r="",n=this.index,i=this.input;for(;this.peek!=t;)if(this.peek==92){r+=i.substring(n,this.index);let h;if(this.advance(),this.peek==117){let v=i.substring(this.index+1,this.index+5);if(/^[0-9a-f]+$/i.test(v))h=parseInt(v,16);else return this.error(`Invalid unicode escape [\\u${v}]`,0);for(let f=0;f<5;f++)this.advance()}else h=Wr(this.peek),this.advance();r+=String.fromCharCode(h),n=this.index}else{if(this.peek==0)return this.error("Unterminated quote",0);this.advance()}let a=i.substring(n,this.index);return this.advance(),Fr(e,this.index,r+a)}scanQuestion(e){this.advance();let t="?";return(this.peek===63||this.peek===46)&&(t+=this.peek===46?".":"?",this.advance()),Ue(e,this.index,t)}error(e,t){let r=this.index+t;return Gr(r,this.index,`Lexer Error: ${e} at column ${r} in expression [${this.input}]`)}}});function Et(s,e){if(e!=null&&!(Array.isArray(e)&&e.length==2))throw new Error(`Expected '${s}' to be an array, [start, end].`);if(e!=null){let t=e[0],r=e[1];jr.forEach(n=>{if(n.test(t)||n.test(r))throw new Error(`['${t}', '${r}'] contains unusable interpolation symbol.`)})}}var jr,At=E(()=>{jr=[/^\s*$/,/[<>]/,/^[{}]$/,/&(#|[a-z])/i,/^\/\//]});var ge,U,$t=E(()=>{At();ge=class{static fromArray(e){return e?(Et("interpolation",e),new ge(e[0],e[1])):U}constructor(e,t){this.start=e,this.end=t}},U=new ge("{{","}}")});function Hr(s){let e=new Map,t=0,r=0,n=0;for(;n<s.length;){let i=s[n];if(i.type===9){let[a,h]=i.parts;t+=h.length,r+=a.length}else{let a=i.parts.reduce((h,v)=>h+v.length,0);r+=a,t+=a}e.set(r,t),n++}return e}var We,Qe,me,pe,G,je,Ct=E(()=>{Me();$t();Ke();Ve();We=class{constructor(e,t,r){this.strings=e,this.expressions=t,this.offsets=r}},Qe=class{constructor(e,t,r){this.templateBindings=e,this.warnings=t,this.errors=r}},me=class{constructor(e){this._lexer=e,this.errors=[]}parseAction(e,t,r,n,i=U){this._checkNoInterpolation(e,r,i);let a=this._stripComments(e),h=this._lexer.tokenize(a),v=1;t&&(v|=2);let f=new G(e,r,n,h,v,this.errors,0).parseChain();return new L(f,e,r,n,this.errors)}parseBinding(e,t,r,n=U){let i=this._parseBindingAst(e,t,r,n);return new L(i,e,t,r,this.errors)}checkSimpleExpression(e){let t=new je;return e.visit(t),t.errors}parseSimpleBinding(e,t,r,n=U){let i=this._parseBindingAst(e,t,r,n),a=this.checkSimpleExpression(i);return a.length>0&&this._reportError(`Host binding expression cannot contain ${a.join(" ")}`,e,t),new L(i,e,t,r,this.errors)}_reportError(e,t,r,n){this.errors.push(new D(e,t,r,n))}_parseBindingAst(e,t,r,n){this._checkNoInterpolation(e,t,n);let i=this._stripComments(e),a=this._lexer.tokenize(i);return new G(e,t,r,a,0,this.errors,0).parseChain()}parseTemplateBindings(e,t,r,n,i){let a=this._lexer.tokenize(t);return new G(t,r,i,a,0,this.errors,0).parseTemplateBindings({source:e,span:new R(n,n+e.length)})}parseInterpolation(e,t,r,n,i=U){let{strings:a,expressions:h,offsets:v}=this.splitInterpolation(e,t,n,i);if(h.length===0)return null;let f=[];for(let w=0;w<h.length;++w){let I=h[w].text,O=this._stripComments(I),y=this._lexer.tokenize(O),m=new G(e,t,r,y,0,this.errors,v[w]).parseChain();f.push(m)}return this.createInterpolationAst(a.map(w=>w.text),f,e,t,r)}parseInterpolationExpression(e,t,r){let n=this._stripComments(e),i=this._lexer.tokenize(n),a=new G(e,t,r,i,0,this.errors,0).parseChain(),h=["",""];return this.createInterpolationAst(h,[a],e,t,r)}createInterpolationAst(e,t,r,n,i){let a=new b(0,r.length),h=new Ee(a,a.toAbsolute(i),e,t);return new L(h,r,n,i,this.errors)}splitInterpolation(e,t,r,n=U){let i=[],a=[],h=[],v=r?Hr(r):null,f=0,w=!1,I=!1,{start:O,end:y}=n;for(;f<e.length;)if(w){let m=f,c=m+O.length,o=this._getInterpolationEndIndex(e,y,c);if(o===-1){w=!1,I=!0;break}let x=o+y.length,p=e.substring(c,o);p.trim().length===0&&this._reportError("Blank expressions are not allowed in interpolated strings",e,`at column ${f} in`,t),a.push({text:p,start:m,end:x});let g=((v==null?void 0:v.get(m))??m)+O.length;h.push(g),f=x,w=!1}else{let m=f;f=e.indexOf(O,f),f===-1&&(f=e.length);let c=e.substring(m,f);i.push({text:c,start:m,end:f}),w=!0}if(!w)if(I){let m=i[i.length-1];m.text+=e.substring(f),m.end=e.length}else i.push({text:e.substring(f),start:f,end:e.length});return new We(i,a,h)}wrapLiteralPrimitive(e,t,r){let n=new b(0,e==null?0:e.length);return new L(new $(n,n.toAbsolute(r),e),e,t,r,this.errors)}_stripComments(e){let t=this._commentStart(e);return t!=null?e.substring(0,t):e}_commentStart(e){let t=null;for(let r=0;r<e.length-1;r++){let n=e.charCodeAt(r),i=e.charCodeAt(r+1);if(n===47&&i==47&&t==null)return r;t===n?t=null:t==null&&Te(n)&&(t=n)}return null}_checkNoInterpolation(e,t,{start:r,end:n}){let i=-1,a=-1;for(let h of this._forEachUnquotedChar(e,0))if(i===-1)e.startsWith(r)&&(i=h);else if(a=this._getInterpolationEndIndex(e,n,h),a>-1)break;i>-1&&a>-1&&this._reportError(`Got interpolation (${r}${n}) where expression was expected`,e,`at column ${i} in`,t)}_getInterpolationEndIndex(e,t,r){for(let n of this._forEachUnquotedChar(e,r)){if(e.startsWith(t,n))return n;if(e.startsWith("//",n))return e.indexOf(t,n)}return-1}*_forEachUnquotedChar(e,t){let r=null,n=0;for(let i=t;i<e.length;i++){let a=e[i];Te(e.charCodeAt(i))&&(r===null||r===a)&&n%2===0?r=r===null?a:null:r===null&&(yield i),n=a==="\\"?n+1:0}}};(function(s){s[s.None=0]="None",s[s.Writable=1]="Writable"})(pe||(pe={}));G=class{constructor(e,t,r,n,i,a,h){this.input=e,this.location=t,this.absoluteOffset=r,this.tokens=n,this.parseFlags=i,this.errors=a,this.offset=h,this.rparensExpected=0,this.rbracketsExpected=0,this.rbracesExpected=0,this.context=pe.None,this.sourceSpanCache=new Map,this.index=0}peek(e){let t=this.index+e;return t<this.tokens.length?this.tokens[t]:Ne}get next(){return this.peek(0)}get atEOF(){return this.index>=this.tokens.length}get inputIndex(){return this.atEOF?this.currentEndIndex:this.next.index+this.offset}get currentEndIndex(){return this.index>0?this.peek(-1).end+this.offset:this.tokens.length===0?this.input.length+this.offset:this.next.index+this.offset}get currentAbsoluteOffset(){return this.absoluteOffset+this.inputIndex}span(e,t){let r=this.currentEndIndex;if(t!==void 0&&t>this.currentEndIndex&&(r=t),e>r){let n=r;r=e,e=n}return new b(e,r)}sourceSpan(e,t){let r=`${e}@${this.inputIndex}:${t}`;return this.sourceSpanCache.has(r)||this.sourceSpanCache.set(r,this.span(e,t).toAbsolute(this.absoluteOffset)),this.sourceSpanCache.get(r)}advance(){this.index++}withContext(e,t){this.context|=e;let r=t();return this.context^=e,r}consumeOptionalCharacter(e){return this.next.isCharacter(e)?(this.advance(),!0):!1}peekKeywordLet(){return this.next.isKeywordLet()}peekKeywordAs(){return this.next.isKeywordAs()}expectCharacter(e){this.consumeOptionalCharacter(e)||this.error(`Missing expected ${String.fromCharCode(e)}`)}consumeOptionalOperator(e){return this.next.isOperator(e)?(this.advance(),!0):!1}expectOperator(e){this.consumeOptionalOperator(e)||this.error(`Missing expected operator ${e}`)}prettyPrintToken(e){return e===Ne?"end of input":`token ${e}`}expectIdentifierOrKeyword(){let e=this.next;return!e.isIdentifier()&&!e.isKeyword()?(e.isPrivateIdentifier()?this._reportErrorForPrivateIdentifier(e,"expected identifier or keyword"):this.error(`Unexpected ${this.prettyPrintToken(e)}, expected identifier or keyword`),null):(this.advance(),e.toString())}expectIdentifierOrKeywordOrString(){let e=this.next;return!e.isIdentifier()&&!e.isKeyword()&&!e.isString()?(e.isPrivateIdentifier()?this._reportErrorForPrivateIdentifier(e,"expected identifier, keyword or string"):this.error(`Unexpected ${this.prettyPrintToken(e)}, expected identifier, keyword, or string`),""):(this.advance(),e.toString())}parseChain(){let e=[],t=this.inputIndex;for(;this.index<this.tokens.length;){let r=this.parsePipe();if(e.push(r),this.consumeOptionalCharacter(59))for(this.parseFlags&1||this.error("Binding expression cannot contain chained expression");this.consumeOptionalCharacter(59););else if(this.index<this.tokens.length){let n=this.index;if(this.error(`Unexpected token '${this.next}'`),this.index===n)break}}if(e.length===0){let r=this.offset,n=this.offset+this.input.length;return new A(this.span(r,n),this.sourceSpan(r,n))}return e.length==1?e[0]:new W(this.span(t),this.sourceSpan(t),e)}parsePipe(){let e=this.inputIndex,t=this.parseExpression();if(this.consumeOptionalOperator("|")){this.parseFlags&1&&this.error("Cannot have a pipe in an action expression");do{let r=this.inputIndex,n=this.expectIdentifierOrKeyword(),i,a;n!==null?i=this.sourceSpan(r):(n="",a=this.next.index!==-1?this.next.index:this.input.length+this.offset,i=new b(a,a).toAbsolute(this.absoluteOffset));let h=[];for(;this.consumeOptionalCharacter(58);)h.push(this.parseExpression());t=new Z(this.span(e),this.sourceSpan(e,a),t,n,h,i)}while(this.consumeOptionalOperator("|"))}return t}parseExpression(){return this.parseConditional()}parseConditional(){let e=this.inputIndex,t=this.parseLogicalOr();if(this.consumeOptionalOperator("?")){let r=this.parsePipe(),n;if(this.consumeOptionalCharacter(58))n=this.parsePipe();else{let i=this.inputIndex,a=this.input.substring(e,i);this.error(`Conditional expression ${a} requires all 3 expressions`),n=new A(this.span(e),this.sourceSpan(e))}return new Q(this.span(e),this.sourceSpan(e),t,r,n)}else return t}parseLogicalOr(){let e=this.inputIndex,t=this.parseLogicalAnd();for(;this.consumeOptionalOperator("||");){let r=this.parseLogicalAnd();t=new C(this.span(e),this.sourceSpan(e),"||",t,r)}return t}parseLogicalAnd(){let e=this.inputIndex,t=this.parseNullishCoalescing();for(;this.consumeOptionalOperator("&&");){let r=this.parseNullishCoalescing();t=new C(this.span(e),this.sourceSpan(e),"&&",t,r)}return t}parseNullishCoalescing(){let e=this.inputIndex,t=this.parseEquality();for(;this.consumeOptionalOperator("??");){let r=this.parseEquality();t=new C(this.span(e),this.sourceSpan(e),"??",t,r)}return t}parseEquality(){let e=this.inputIndex,t=this.parseRelational();for(;this.next.type==d.Operator;){let r=this.next.strValue;switch(r){case"==":case"===":case"!=":case"!==":this.advance();let n=this.parseRelational();t=new C(this.span(e),this.sourceSpan(e),r,t,n);continue}break}return t}parseRelational(){let e=this.inputIndex,t=this.parseAdditive();for(;this.next.type==d.Operator;){let r=this.next.strValue;switch(r){case"<":case">":case"<=":case">=":this.advance();let n=this.parseAdditive();t=new C(this.span(e),this.sourceSpan(e),r,t,n);continue}break}return t}parseAdditive(){let e=this.inputIndex,t=this.parseMultiplicative();for(;this.next.type==d.Operator;){let r=this.next.strValue;switch(r){case"+":case"-":this.advance();let n=this.parseMultiplicative();t=new C(this.span(e),this.sourceSpan(e),r,t,n);continue}break}return t}parseMultiplicative(){let e=this.inputIndex,t=this.parsePrefix();for(;this.next.type==d.Operator;){let r=this.next.strValue;switch(r){case"*":case"%":case"/":this.advance();let n=this.parsePrefix();t=new C(this.span(e),this.sourceSpan(e),r,t,n);continue}break}return t}parsePrefix(){if(this.next.type==d.Operator){let e=this.inputIndex,t=this.next.strValue,r;switch(t){case"+":return this.advance(),r=this.parsePrefix(),P.createPlus(this.span(e),this.sourceSpan(e),r);case"-":return this.advance(),r=this.parsePrefix(),P.createMinus(this.span(e),this.sourceSpan(e),r);case"!":return this.advance(),r=this.parsePrefix(),new ee(this.span(e),this.sourceSpan(e),r)}}return this.parseCallChain()}parseCallChain(){let e=this.inputIndex,t=this.parsePrimary();for(;;)if(this.consumeOptionalCharacter(46))t=this.parseAccessMember(t,e,!1);else if(this.consumeOptionalOperator("?."))this.consumeOptionalCharacter(40)?t=this.parseCall(t,e,!0):t=this.consumeOptionalCharacter(91)?this.parseKeyedReadOrWrite(t,e,!0):this.parseAccessMember(t,e,!0);else if(this.consumeOptionalCharacter(91))t=this.parseKeyedReadOrWrite(t,e,!1);else if(this.consumeOptionalCharacter(40))t=this.parseCall(t,e,!1);else if(this.consumeOptionalOperator("!"))t=new te(this.span(e),this.sourceSpan(e),t);else return t}parsePrimary(){let e=this.inputIndex;if(this.consumeOptionalCharacter(40)){this.rparensExpected++;let t=this.parsePipe();return this.rparensExpected--,this.expectCharacter(41),t}else{if(this.next.isKeywordNull())return this.advance(),new $(this.span(e),this.sourceSpan(e),null);if(this.next.isKeywordUndefined())return this.advance(),new $(this.span(e),this.sourceSpan(e),void 0);if(this.next.isKeywordTrue())return this.advance(),new $(this.span(e),this.sourceSpan(e),!0);if(this.next.isKeywordFalse())return this.advance(),new $(this.span(e),this.sourceSpan(e),!1);if(this.next.isKeywordThis())return this.advance(),new ye(this.span(e),this.sourceSpan(e));if(this.consumeOptionalCharacter(91)){this.rbracketsExpected++;let t=this.parseExpressionList(93);return this.rbracketsExpected--,this.expectCharacter(93),new J(this.span(e),this.sourceSpan(e),t)}else{if(this.next.isCharacter(123))return this.parseLiteralMap();if(this.next.isIdentifier())return this.parseAccessMember(new _(this.span(e),this.sourceSpan(e)),e,!1);if(this.next.isNumber()){let t=this.next.toNumber();return this.advance(),new $(this.span(e),this.sourceSpan(e),t)}else if(this.next.isString()){let t=this.next.toString();return this.advance(),new $(this.span(e),this.sourceSpan(e),t)}else return this.next.isPrivateIdentifier()?(this._reportErrorForPrivateIdentifier(this.next,null),new A(this.span(e),this.sourceSpan(e))):this.index>=this.tokens.length?(this.error(`Unexpected end of expression: ${this.input}`),new A(this.span(e),this.sourceSpan(e))):(this.error(`Unexpected token ${this.next}`),new A(this.span(e),this.sourceSpan(e)))}}}parseExpressionList(e){let t=[];do if(!this.next.isCharacter(e))t.push(this.parsePipe());else break;while(this.consumeOptionalCharacter(44));return t}parseLiteralMap(){let e=[],t=[],r=this.inputIndex;if(this.expectCharacter(123),!this.consumeOptionalCharacter(125)){this.rbracesExpected++;do{let n=this.inputIndex,i=this.next.isString(),a=this.expectIdentifierOrKeywordOrString();if(e.push({key:a,quoted:i}),i)this.expectCharacter(58),t.push(this.parsePipe());else if(this.consumeOptionalCharacter(58))t.push(this.parsePipe());else{let h=this.span(n),v=this.sourceSpan(n);t.push(new K(h,v,v,new _(h,v),a))}}while(this.consumeOptionalCharacter(44)&&!this.next.isCharacter(125));this.rbracesExpected--,this.expectCharacter(125)}return new Y(this.span(r),this.sourceSpan(r),e,t)}parseAccessMember(e,t,r){let n=this.inputIndex,i=this.withContext(pe.Writable,()=>{let v=this.expectIdentifierOrKeyword()??"";return v.length===0&&this.error("Expected identifier for property access",e.span.end),v}),a=this.sourceSpan(n),h;if(r)this.consumeOptionalAssignment()?(this.error("The '?.' operator cannot be used in the assignment"),h=new A(this.span(t),this.sourceSpan(t))):h=new H(this.span(t),this.sourceSpan(t),a,e,i);else if(this.consumeOptionalAssignment()){if(!(this.parseFlags&1))return this.error("Bindings cannot contain assignments"),new A(this.span(t),this.sourceSpan(t));let v=this.parseConditional();h=new j(this.span(t),this.sourceSpan(t),a,e,i,v)}else h=new K(this.span(t),this.sourceSpan(t),a,e,i);return h}parseCall(e,t,r){let n=this.inputIndex;this.rparensExpected++;let i=this.parseCallArguments(),a=this.span(n,this.inputIndex).toAbsolute(this.absoluteOffset);this.expectCharacter(41),this.rparensExpected--;let h=this.span(t),v=this.sourceSpan(t);return r?new se(h,v,e,i,a):new re(h,v,e,i,a)}consumeOptionalAssignment(){return this.parseFlags&2&&this.next.isOperator("!")&&this.peek(1).isOperator("=")?(this.advance(),this.advance(),!0):this.consumeOptionalOperator("=")}parseCallArguments(){if(this.next.isCharacter(41))return[];let e=[];do e.push(this.parsePipe());while(this.consumeOptionalCharacter(44));return e}expectTemplateBindingKey(){let e="",t=!1,r=this.currentAbsoluteOffset;do e+=this.expectIdentifierOrKeywordOrString(),t=this.consumeOptionalOperator("-"),t&&(e+="-");while(t);return{source:e,span:new R(r,r+e.length)}}parseTemplateBindings(e){let t=[];for(t.push(...this.parseDirectiveKeywordBindings(e));this.index<this.tokens.length;){let r=this.parseLetBinding();if(r)t.push(r);else{let n=this.expectTemplateBindingKey(),i=this.parseAsBinding(n);i?t.push(i):(n.source=e.source+n.source.charAt(0).toUpperCase()+n.source.substring(1),t.push(...this.parseDirectiveKeywordBindings(n)))}this.consumeStatementTerminator()}return new Qe(t,[],this.errors)}parseKeyedReadOrWrite(e,t,r){return this.withContext(pe.Writable,()=>{this.rbracketsExpected++;let n=this.parsePipe();if(n instanceof A&&this.error("Key access cannot be empty"),this.rbracketsExpected--,this.expectCharacter(93),this.consumeOptionalOperator("="))if(r)this.error("The '?.' operator cannot be used in the assignment");else{let i=this.parseConditional();return new X(this.span(t),this.sourceSpan(t),e,n,i)}else return r?new q(this.span(t),this.sourceSpan(t),e,n):new z(this.span(t),this.sourceSpan(t),e,n);return new A(this.span(t),this.sourceSpan(t))})}parseDirectiveKeywordBindings(e){let t=[];this.consumeOptionalCharacter(58);let r=this.getDirectiveBoundTarget(),n=this.currentAbsoluteOffset,i=this.parseAsBinding(e);i||(this.consumeStatementTerminator(),n=this.currentAbsoluteOffset);let a=new R(e.span.start,n);return t.push(new ne(a,e,r)),i&&t.push(i),t}getDirectiveBoundTarget(){if(this.next===Ne||this.peekKeywordAs()||this.peekKeywordLet())return null;let e=this.parsePipe(),{start:t,end:r}=e.span,n=this.input.substring(t,r);return new L(e,n,this.location,this.absoluteOffset+t,this.errors)}parseAsBinding(e){if(!this.peekKeywordAs())return null;this.advance();let t=this.expectTemplateBindingKey();this.consumeStatementTerminator();let r=new R(e.span.start,this.currentAbsoluteOffset);return new T(r,t,e)}parseLetBinding(){if(!this.peekKeywordLet())return null;let e=this.currentAbsoluteOffset;this.advance();let t=this.expectTemplateBindingKey(),r=null;this.consumeOptionalOperator("=")&&(r=this.expectTemplateBindingKey()),this.consumeStatementTerminator();let n=new R(e,this.currentAbsoluteOffset);return new T(n,t,r)}consumeStatementTerminator(){this.consumeOptionalCharacter(59)||this.consumeOptionalCharacter(44)}error(e,t=null){this.errors.push(new D(e,this.input,this.locationText(t),this.location)),this.skip()}locationText(e=null){return e==null&&(e=this.index),e<this.tokens.length?`at column ${this.tokens[e].index+1} in`:"at the end of the expression"}_reportErrorForPrivateIdentifier(e,t){let r=`Private identifiers are not supported. Unexpected private identifier: ${e}`;t!==null&&(r+=`, ${t}`),this.error(r)}skip(){let e=this.next;for(;this.index<this.tokens.length&&!e.isCharacter(59)&&!e.isOperator("|")&&(this.rparensExpected<=0||!e.isCharacter(41))&&(this.rbracesExpected<=0||!e.isCharacter(125))&&(this.rbracketsExpected<=0||!e.isCharacter(93))&&(!(this.context&pe.Writable)||!e.isOperator("="));)this.next.isError()&&this.errors.push(new D(this.next.toString(),this.input,this.locationText(),this.location)),this.advance(),e=this.next}},je=class extends Ae{constructor(){super(...arguments),this.errors=[]}visitPipe(){this.errors.push("pipes")}}});var ke=E(()=>{Ke();Ve();Ct()});function kt(){return new me(new fe)}function Xe(s,e){let t=kt(),{astInput:r,comments:n}=qr(s,t),{ast:i,errors:a}=e(r,t);return bt(a),{ast:i,comments:n}}function It(s){return Xe(s,(e,t)=>t.parseBinding(e,...qe))}function Pt(s){return Xe(s,(e,t)=>t.parseAction(e,!1,...qe))}function Rt(s){return Xe(s,(e,t)=>{let r=t.parseInterpolationExpression(e,...qe);return r.ast=r.ast.expressions[0],r})}function Lt(s){let e=kt(),{templateBindings:t,errors:r}=e.parseTemplateBindings(ze,s,Nt,He,He);return bt(r),t}function bt(s){if(s.length!==0){let[{message:e}]=s;throw new SyntaxError(e.replace(/^Parser Error: | at column \d+ in [^]*$/g,""))}}function qr(s,e){let t=e._commentStart(s);return t===null?{astInput:s,comments:[]}:{astInput:s.slice(0,t),comments:[{type:"Comment",value:s.slice(t+2),sourceSpan:{start:t,end:s.length}}]}}function _t(s){return s instanceof P?"Unary":s instanceof C?"Binary":s instanceof Z?"BindingPipe":s instanceof re?"Call":s instanceof W?"Chain":s instanceof Q?"Conditional":s instanceof A?"EmptyExpr":s instanceof _?"ImplicitReceiver":s instanceof z?"KeyedRead":s instanceof q?"SafeKeyedRead":s instanceof X?"KeyedWrite":s instanceof J?"LiteralArray":s instanceof Y?"LiteralMap":s instanceof $?"LiteralPrimitive":s instanceof te?"NonNullAssert":s instanceof ee?"PrefixNot":s instanceof K?"PropertyRead":s instanceof j?"PropertyWrite":s instanceof se?"SafeCall":s instanceof H?"SafePropertyRead":s.type}function Ot({start:s,end:e},t){let r=s,n=e;for(;n!==r&&/\s/.test(t[n-1]);)n--;for(;r!==n&&/\s/.test(t[r]);)r++;return{start:r,end:n}}function Xr({start:s,end:e},t){let r=s,n=e;for(;n!==t.length&&/\s/.test(t[n]);)n++;for(;r!==0&&/\s/.test(t[r-1]);)r--;return{start:r,end:n}}function Zr(s,e){return e[s.start-1]==="("&&e[s.end]===")"?{start:s.start-1,end:s.end+1}:s}function Bt(s,e,t){let r=0,n={start:s.start,end:s.end};for(;;){let i=Xr(n,e),a=Zr(i,e);if(i.start===a.start&&i.end===a.end)break;n.start=a.start,n.end=a.end,r++}return{hasParens:(t?r-1:r)!==0,outerSpan:Ot(t?{start:n.start+1,end:n.end-1}:n,e),innerSpan:Ot(s,e)}}function Kt(s,e,t){let r=e;for(;!s.test(t[r]);)if(--r<0)throw new Error(`Cannot find front char ${s} from index ${e} in ${JSON.stringify(t)}`);return r}function Ie(s,e,t){let r=e;for(;!s.test(t[r]);)if(++r>=t.length)throw new Error(`Cannot find back char ${s} from index ${e} in ${JSON.stringify(t)}`);return r}function Tt(s){return s.slice(0,1).toLowerCase()+s.slice(1)}function Mt(s){return s.length===0?void 0:s[s.length-1]}var Nt,ze,He,qe,Pe=E(()=>{ke();ke();Nt="angular-estree-parser",ze="NgEstreeParser",He=0,qe=[Nt,He]});function Re(s,e,t=!1,r=!1){if(!t){let{start:h,end:v}=s;return{start:h,end:v,loc:{start:e.locator.locationForIndex(h),end:e.locator.locationForIndex(v)}}}let{outerSpan:n,innerSpan:i,hasParens:a}=Bt(s,e.text,r);return{start:i.start,end:i.end,loc:{start:e.locator.locationForIndex(i.start),end:e.locator.locationForIndex(i.end)},...a&&{extra:{parenthesized:!0,parenStart:n.start,parenEnd:n.end}}}}var ue,Ze=E(()=>{Pe();ue=(s,e,t=!1)=>{let r=_t(s);switch(r){case"Unary":{let{operator:c,expr:o}=s,x=n(o);return a("UnaryExpression",{prefix:!0,argument:x,operator:c},s.sourceSpan,{hasParentParens:t})}case"Binary":{let{left:c,operation:o,right:x}=s,p=n(c),u=n(x);return a(o==="&&"||o==="||"||o==="??"?"LogicalExpression":"BinaryExpression",{left:p,right:u,operator:o},{start:y(p),end:m(u)},{hasParentParens:t})}case"BindingPipe":{let{exp:c,name:o,args:x}=s,p=n(c),u=f(/\S/,f(/\|/,m(p))+1),g=a("Identifier",{name:o},{start:u,end:u+o.length}),l=x.map(n);return a("NGPipeExpression",{left:p,right:g,arguments:l},{start:y(p),end:m(l.length===0?g:Mt(l))},{hasParentParens:t})}case"Chain":{let{expressions:c}=s;return a("NGChainedExpression",{expressions:c.map(n)},s.sourceSpan,{hasParentParens:t})}case"Comment":{let{value:c}=s;return a("CommentLine",{value:c},s.sourceSpan,{processSpan:!1})}case"Conditional":{let{condition:c,trueExp:o,falseExp:x}=s,p=n(c),u=n(o),g=n(x);return a("ConditionalExpression",{test:p,consequent:u,alternate:g},{start:y(p),end:m(g)},{hasParentParens:t})}case"EmptyExpr":return a("NGEmptyExpression",{},s.sourceSpan,{hasParentParens:t});case"ImplicitReceiver":return a("ThisExpression",{},s.sourceSpan,{hasParentParens:t});case"KeyedRead":case"SafeKeyedRead":{let c=r==="SafeKeyedRead",{key:o}=s,x=Object.prototype.hasOwnProperty.call(s,"receiver")?s.receiver:s.obj,p=n(o);return h(x,p,{computed:!0,optional:c},{end:s.sourceSpan.end,hasParentParens:t})}case"LiteralArray":{let{expressions:c}=s;return a("ArrayExpression",{elements:c.map(n)},s.sourceSpan,{hasParentParens:t})}case"LiteralMap":{let{keys:c,values:o}=s,x=o.map(u=>n(u)),p=c.map(({key:u,quoted:g},l)=>{let N=x[l],le=y(N),tt=m(N),be=f(/\S/,l===0?s.sourceSpan.start+1:f(/,/,m(x[l-1]))+1),Jt=le===be?tt:v(/\S/,v(/:/,le-1)-1)+1,rt={start:be,end:Jt},Se=g?a("StringLiteral",{value:u},rt):a("Identifier",{name:u},rt),Yt=Se.end<Se.start||be===le;return a("ObjectProperty",{key:Se,value:N,shorthand:Yt,computed:!1},{start:y(Se),end:tt})});return a("ObjectExpression",{properties:p},s.sourceSpan,{hasParentParens:t})}case"LiteralPrimitive":{let{value:c}=s;switch(typeof c){case"boolean":return a("BooleanLiteral",{value:c},s.sourceSpan,{hasParentParens:t});case"number":return a("NumericLiteral",{value:c},s.sourceSpan,{hasParentParens:t});case"object":return a("NullLiteral",{},s.sourceSpan,{hasParentParens:t});case"string":return a("StringLiteral",{value:c},s.sourceSpan,{hasParentParens:t});case"undefined":return a("Identifier",{name:"undefined"},s.sourceSpan,{hasParentParens:t});default:throw new Error(`Unexpected LiteralPrimitive value type ${typeof c}`)}}case"Call":case"SafeCall":{let c=r==="SafeCall",{receiver:o,args:x}=s,p=x.length===1?[i(x[0])]:x.map(n),u=n(o),g=I(u),l=c||g?"OptionalCallExpression":"CallExpression";return a(l,{callee:u,arguments:p,optional:l==="OptionalCallExpression"?c:void 0},{start:y(u),end:s.sourceSpan.end},{hasParentParens:t})}case"NonNullAssert":{let{expression:c}=s,o=n(c);return a("TSNonNullExpression",{expression:o},{start:y(o),end:s.sourceSpan.end},{hasParentParens:t})}case"PrefixNot":{let{expression:c}=s,o=n(c);return a("UnaryExpression",{prefix:!0,operator:"!",argument:o},{start:s.sourceSpan.start,end:m(o)},{hasParentParens:t})}case"PropertyRead":case"SafePropertyRead":{let c=r==="SafePropertyRead",{receiver:o,name:x}=s,p=v(/\S/,s.sourceSpan.end-1)+1,u=a("Identifier",{name:x},{start:p-x.length,end:p},w(o)?{hasParentParens:t}:{});return h(o,u,{computed:!1,optional:c},{hasParentParens:t})}case"KeyedWrite":{let{key:c,value:o}=s,x=Object.prototype.hasOwnProperty.call(s,"receiver")?s.receiver:s.obj,p=n(c),u=n(o),g=h(x,p,{computed:!0,optional:!1},{end:f(/\]/,m(p))+1});return a("AssignmentExpression",{left:g,operator:"=",right:u},{start:y(g),end:m(u)},{hasParentParens:t})}case"PropertyWrite":{let{receiver:c,name:o,value:x}=s,p=n(x),u=v(/\S/,v(/=/,y(p)-1)-1)+1,g=a("Identifier",{name:o},{start:u-o.length,end:u}),l=h(c,g,{computed:!1,optional:!1});return a("AssignmentExpression",{left:l,operator:"=",right:p},{start:y(l),end:m(p)},{hasParentParens:t})}default:throw new Error(`Unexpected node ${r}`)}function n(c){return ue(c,e)}function i(c){return ue(c,e,!0)}function a(c,o,x,{processSpan:p=!0,hasParentParens:u=!1}={}){let g={type:c,...Re(x,e,p,u),...o};switch(c){case"NumericLiteral":{let l=g;l.extra={...l.extra,raw:e.text.slice(l.start,l.end),rawValue:l.value};break}case"StringLiteral":{let l=g;l.extra={...l.extra,raw:e.text.slice(l.start,l.end),rawValue:l.value};break}case"ObjectProperty":{let l=g;l.shorthand&&(l.extra={...l.extra,shorthand:l.shorthand});break}}return g}function h(c,o,x,{end:p=m(o),hasParentParens:u=!1}={}){if(w(c)||c.sourceSpan.start===o.start)return o;let g=n(c),l=I(g);return a(x.optional||l?"OptionalMemberExpression":"MemberExpression",{object:g,property:o,computed:x.computed,...x.optional?{optional:!0}:l?{optional:!1}:null},{start:y(g),end:p},{hasParentParens:u})}function v(c,o){return Kt(c,o,e.text)}function f(c,o){return Ie(c,o,e.text)}function w(c){return c.sourceSpan.start>=c.sourceSpan.end||/^\s+$/.test(e.text.slice(c.sourceSpan.start,c.sourceSpan.end))}function I(c){return(c.type==="OptionalCallExpression"||c.type==="OptionalMemberExpression")&&!O(c)}function O(c){return c.extra&&c.extra.parenthesized}function y(c){return O(c)?c.extra.parenStart:c.start}function m(c){return O(c)?c.extra.parenEnd:c.end}}});function Ft(s,e){s.forEach(y);let[t]=s,{key:r}=t,n=e.text.slice(t.sourceSpan.start,t.sourceSpan.end).trim().length===0?s.slice(1):s,i=[],a=null;for(let o=0;o<n.length;o++){let x=n[o];if(a&&I(a)&&O(x)&&x.value&&x.value.source===a.key.source){let p=f("NGMicrosyntaxKey",{name:x.key.source},x.key.span),u=(N,le)=>({...N,...Re({start:N.start,end:le},e)}),g=N=>({...u(N,p.end),alias:p}),l=i.pop();if(l.type==="NGMicrosyntaxExpression")i.push(g(l));else if(l.type==="NGMicrosyntaxKeyedExpression"){let N=g(l.expression);i.push(u({...l,expression:N},N.end))}else throw new Error(`Unexpected type ${l.type}`)}else i.push(h(x,o));a=x}return f("NGMicrosyntax",{body:i},i.length===0?s[0].sourceSpan:{start:i[0].start,end:i[i.length-1].end});function h(o,x){if(I(o)){let{key:p,value:u}=o;return u?x===0?f("NGMicrosyntaxExpression",{expression:v(u.ast),alias:null},u.sourceSpan):f("NGMicrosyntaxKeyedExpression",{key:f("NGMicrosyntaxKey",{name:w(p.source)},p.span),expression:f("NGMicrosyntaxExpression",{expression:v(u.ast),alias:null},u.sourceSpan)},{start:p.span.start,end:u.sourceSpan.end}):f("NGMicrosyntaxKey",{name:w(p.source)},p.span)}else{let{key:p,sourceSpan:u}=o;if(/^let\s$/.test(e.text.slice(u.start,u.start+4))){let{value:l}=o;return f("NGMicrosyntaxLet",{key:f("NGMicrosyntaxKey",{name:p.source},p.span),value:l?f("NGMicrosyntaxKey",{name:l.source},l.span):null},{start:u.start,end:l?l.span.end:p.span.end})}else{let l=c(o);return f("NGMicrosyntaxAs",{key:f("NGMicrosyntaxKey",{name:l.source},l.span),alias:f("NGMicrosyntaxKey",{name:p.source},p.span)},{start:l.span.start,end:p.span.end})}}}function v(o){return ue(o,e)}function f(o,x,p,u=!0){return{type:o,...Re(p,e,u),...x}}function w(o){return Tt(o.slice(r.source.length))}function I(o){return o instanceof ne}function O(o){return o instanceof T}function y(o){m(o.key.span),O(o)&&o.value&&m(o.value.span)}function m(o){if(e.text[o.start]!=='"'&&e.text[o.start]!=="'")return;let x=e.text[o.start],p=!1;for(let u=o.start+1;u<e.text.length;u++)switch(e.text[u]){case x:if(!p){o.end=u+1;return}default:p=!1;break;case"\\":p=!p;break}}function c(o){if(!o.value||o.value.source!==ze)return o.value;let x=Ie(/\S/,o.sourceSpan.start,e.text);return{source:"$implicit",span:{start:x,end:x}}}}var Ut=E(()=>{ke();Ze();Pe()});function Je(s,e){let{ast:t,comments:r}=e(s),n=new xe(s),i=h=>ue(h,n),a=i(t);return a.comments=r.map(h=>i(h)),a}function Gt(s){return Je(s,It)}function Dt(s){return Je(s,Rt)}function Ye(s){return Je(s,Pt)}function Vt(s){return Ft(Lt(s),new xe(s))}var Wt=E(()=>{ct();Ze();Ut();Pe()});function Jr(s){return Array.isArray(s)&&s.length>0}var Qt,jt=E(()=>{Qt=Jr});function et(s){var r;let e=s.range?s.range[0]:s.start,t=((r=s.declaration)==null?void 0:r.decorators)??s.decorators;return Qt(t)?Math.min(et(t[0]),e):e}function Ht(s){return s.range?s.range[1]:s.end}var zt=E(()=>{jt()});var qt={};st(qt,{__ng_action:()=>Yr,__ng_binding:()=>es,__ng_directive:()=>rs,__ng_interpolation:()=>ts});function Le(s){return{astFormat:"estree",parse(e){let t=s(e);return{type:"NGRoot",node:s===Ye&&t.type!=="NGChainedExpression"?{...t,type:"NGChainedExpression",expressions:[t]}:t}},locStart:et,locEnd:Ht}}var Yr,es,ts,rs,Xt=E(()=>{Wt();zt();Yr=Le(Ye),es=Le(Gt),ts=Le(Dt),rs=Le(Vt)});var ns={};st(ns,{default:()=>ss,parsers:()=>Zt});function ir(s){let e=Object.create(null);for(let{importParsers:t,parserNames:r}of s)for(let n of r)e[n]=async()=>Object.assign(e,await t())[n];return e}var nt=ir;var Zt=nt([{importParsers:()=>Promise.resolve().then(()=>(Xt(),qt)),parserNames:["__ng_action","__ng_binding","__ng_interpolation","__ng_directive"]}]),ss={parsers:Zt};return nr(ns);});
|
package/plugins/angular.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var
|
|
2
|
-
`,qe="\r",Xe=function(){function s(e){this.length=e.length;for(var t=[0],r=0;r<e.length;)switch(e[r]){case me:r+=me.length,t.push(r);break;case qe:r+=qe.length,e[r]===me&&(r+=me.length),t.push(r);break;default:r++;break}this.offsets=t}return s.prototype.locationForIndex=function(e){if(e<0||e>this.length)return null;for(var t=0,r=this.offsets;r[t+1]<=e;)t++;var n=e-r[t];return{line:t,column:n}},s.prototype.indexForLocation=function(e){var t=e.line,r=e.column;return t<0||t>=this.offsets.length||r<0||r>this.lengthOfLine(t)?null:this.offsets[t]+r},s.prototype.lengthOfLine=function(e){var t=this.offsets[e],r=e===this.offsets.length-1?this.length:this.offsets[e+1];return r-t},s}();var pe=class{text;locator;constructor(e){this.text=e,this.locator=new Re(this.text)}},Re=class{_linesAndColumns;constructor(e){this._linesAndColumns=new Xe(e)}locationForIndex(e){let{line:t,column:r}=this._linesAndColumns.locationForIndex(e);return{line:t+1,column:r,index:e}}};var G=class{constructor(e,t,r,n){this.input=t,this.errLocation=r,this.ctxLocation=n,this.message=`Parser Error: ${e} ${r} [${t}] in ${n}`}},L=class{constructor(e,t){this.start=e,this.end=t}toAbsolute(e){return new P(e+this.start,e+this.end)}},S=class{constructor(e,t){this.span=e,this.sourceSpan=t}toString(){return"AST"}},D=class extends S{constructor(e,t,r){super(e,t),this.nameSpan=r}},E=class extends S{visit(e,t=null){}},b=class extends S{visit(e,t=null){return e.visitImplicitReceiver(this,t)}},Se=class extends b{visit(e,t=null){var r;return(r=e.visitThisReceiver)==null?void 0:r.call(e,this,t)}},V=class extends S{constructor(e,t,r){super(e,t),this.expressions=r}visit(e,t=null){return e.visitChain(this,t)}},W=class extends S{constructor(e,t,r,n,i){super(e,t),this.condition=r,this.trueExp=n,this.falseExp=i}visit(e,t=null){return e.visitConditional(this,t)}},K=class extends D{constructor(e,t,r,n,i){super(e,t,r),this.receiver=n,this.name=i}visit(e,t=null){return e.visitPropertyRead(this,t)}},Q=class extends D{constructor(e,t,r,n,i,a){super(e,t,r),this.receiver=n,this.name=i,this.value=a}visit(e,t=null){return e.visitPropertyWrite(this,t)}},H=class extends D{constructor(e,t,r,n,i){super(e,t,r),this.receiver=n,this.name=i}visit(e,t=null){return e.visitSafePropertyRead(this,t)}},j=class extends S{constructor(e,t,r,n){super(e,t),this.receiver=r,this.key=n}visit(e,t=null){return e.visitKeyedRead(this,t)}},we=class extends S{constructor(e,t,r,n){super(e,t),this.receiver=r,this.key=n}visit(e,t=null){return e.visitSafeKeyedRead(this,t)}},z=class extends S{constructor(e,t,r,n,i){super(e,t),this.receiver=r,this.key=n,this.value=i}visit(e,t=null){return e.visitKeyedWrite(this,t)}},q=class extends D{constructor(e,t,r,n,i,a){super(e,t,a),this.exp=r,this.name=n,this.args=i}visit(e,t=null){return e.visitPipe(this,t)}},A=class extends S{constructor(e,t,r){super(e,t),this.value=r}visit(e,t=null){return e.visitLiteralPrimitive(this,t)}},X=class extends S{constructor(e,t,r){super(e,t),this.expressions=r}visit(e,t=null){return e.visitLiteralArray(this,t)}},Z=class extends S{constructor(e,t,r,n){super(e,t),this.keys=r,this.values=n}visit(e,t=null){return e.visitLiteralMap(this,t)}},ye=class extends S{constructor(e,t,r,n){super(e,t),this.strings=r,this.expressions=n}visit(e,t=null){return e.visitInterpolation(this,t)}},$=class extends S{constructor(e,t,r,n,i){super(e,t),this.operation=r,this.left=n,this.right=i}visit(e,t=null){return e.visitBinary(this,t)}},I=class extends ${static createMinus(e,t,r){return new I(e,t,"-",r,"-",new A(e,t,0),r)}static createPlus(e,t,r){return new I(e,t,"+",r,"-",r,new A(e,t,0))}constructor(e,t,r,n,i,a,h){super(e,t,i,a,h),this.operator=r,this.expr=n,this.left=null,this.right=null,this.operation=null}visit(e,t=null){return e.visitUnary!==void 0?e.visitUnary(this,t):e.visitBinary(this,t)}},J=class extends S{constructor(e,t,r){super(e,t),this.expression=r}visit(e,t=null){return e.visitPrefixNot(this,t)}},Y=class extends S{constructor(e,t,r){super(e,t),this.expression=r}visit(e,t=null){return e.visitNonNullAssert(this,t)}},ee=class extends S{constructor(e,t,r,n,i){super(e,t),this.receiver=r,this.args=n,this.argumentSpan=i}visit(e,t=null){return e.visitCall(this,t)}},te=class extends S{constructor(e,t,r,n,i){super(e,t),this.receiver=r,this.args=n,this.argumentSpan=i}visit(e,t=null){return e.visitSafeCall(this,t)}},P=class{constructor(e,t){this.start=e,this.end=t}},R=class extends S{constructor(e,t,r,n,i){super(new L(0,t===null?0:t.length),new P(n,t===null?n:n+t.length)),this.ast=e,this.source=t,this.location=r,this.errors=i}visit(e,t=null){return e.visitASTWithSource?e.visitASTWithSource(this,t):this.ast.visit(e,t)}toString(){return`${this.source} in ${this.location}`}},T=class{constructor(e,t,r){this.sourceSpan=e,this.key=t,this.value=r}},re=class{constructor(e,t,r){this.sourceSpan=e,this.key=t,this.value=r}},Ee=class{visit(e,t){e.visit(this,t)}visitUnary(e,t){this.visit(e.expr,t)}visitBinary(e,t){this.visit(e.left,t),this.visit(e.right,t)}visitChain(e,t){this.visitAll(e.expressions,t)}visitConditional(e,t){this.visit(e.condition,t),this.visit(e.trueExp,t),this.visit(e.falseExp,t)}visitPipe(e,t){this.visit(e.exp,t),this.visitAll(e.args,t)}visitImplicitReceiver(e,t){}visitThisReceiver(e,t){}visitInterpolation(e,t){this.visitAll(e.expressions,t)}visitKeyedRead(e,t){this.visit(e.receiver,t),this.visit(e.key,t)}visitKeyedWrite(e,t){this.visit(e.receiver,t),this.visit(e.key,t),this.visit(e.value,t)}visitLiteralArray(e,t){this.visitAll(e.expressions,t)}visitLiteralMap(e,t){this.visitAll(e.values,t)}visitLiteralPrimitive(e,t){}visitPrefixNot(e,t){this.visit(e.expression,t)}visitNonNullAssert(e,t){this.visit(e.expression,t)}visitPropertyRead(e,t){this.visit(e.receiver,t)}visitPropertyWrite(e,t){this.visit(e.receiver,t),this.visit(e.value,t)}visitSafePropertyRead(e,t){this.visit(e.receiver,t)}visitSafeKeyedRead(e,t){this.visit(e.receiver,t),this.visit(e.key,t)}visitCall(e,t){this.visit(e.receiver,t),this.visitAll(e.args,t)}visitSafeCall(e,t){this.visit(e.receiver,t),this.visitAll(e.args,t)}visitAll(e,t){for(let r of e)this.visit(r,t)}};var Ze;(function(s){s[s.DEFAULT=0]="DEFAULT",s[s.LITERAL_ATTR=1]="LITERAL_ATTR",s[s.ANIMATION=2]="ANIMATION"})(Ze||(Ze={}));function Je(s){return s>=9&&s<=32||s==160}function B(s){return 48<=s&&s<=57}function Ye(s){return s>=97&&s<=122||s>=65&&s<=90}function Le(s){return s===39||s===34||s===96}var d;(function(s){s[s.Character=0]="Character",s[s.Identifier=1]="Identifier",s[s.PrivateIdentifier=2]="PrivateIdentifier",s[s.Keyword=3]="Keyword",s[s.String=4]="String",s[s.Operator=5]="Operator",s[s.Number=6]="Number",s[s.Error=7]="Error"})(d||(d={}));var or=["var","let","as","null","undefined","true","false","if","else","this"],ue=class{tokenize(e){let t=new Ke(e),r=[],n=t.scanToken();for(;n!=null;)r.push(n),n=t.scanToken();return r}},N=class{constructor(e,t,r,n,i){this.index=e,this.end=t,this.type=r,this.numValue=n,this.strValue=i}isCharacter(e){return this.type==d.Character&&this.numValue==e}isNumber(){return this.type==d.Number}isString(){return this.type==d.String}isOperator(e){return this.type==d.Operator&&this.strValue==e}isIdentifier(){return this.type==d.Identifier}isPrivateIdentifier(){return this.type==d.PrivateIdentifier}isKeyword(){return this.type==d.Keyword}isKeywordLet(){return this.type==d.Keyword&&this.strValue=="let"}isKeywordAs(){return this.type==d.Keyword&&this.strValue=="as"}isKeywordNull(){return this.type==d.Keyword&&this.strValue=="null"}isKeywordUndefined(){return this.type==d.Keyword&&this.strValue=="undefined"}isKeywordTrue(){return this.type==d.Keyword&&this.strValue=="true"}isKeywordFalse(){return this.type==d.Keyword&&this.strValue=="false"}isKeywordThis(){return this.type==d.Keyword&&this.strValue=="this"}isError(){return this.type==d.Error}toNumber(){return this.type==d.Number?this.numValue:-1}toString(){switch(this.type){case d.Character:case d.Identifier:case d.Keyword:case d.Operator:case d.PrivateIdentifier:case d.String:case d.Error:return this.strValue;case d.Number:return this.numValue.toString();default:return null}}};function nt(s,e,t){return new N(s,e,d.Character,t,String.fromCharCode(t))}function cr(s,e,t){return new N(s,e,d.Identifier,0,t)}function hr(s,e,t){return new N(s,e,d.PrivateIdentifier,0,t)}function pr(s,e,t){return new N(s,e,d.Keyword,0,t)}function Be(s,e,t){return new N(s,e,d.Operator,0,t)}function ur(s,e,t){return new N(s,e,d.String,0,t)}function lr(s,e,t){return new N(s,e,d.Number,t,"")}function xr(s,e,t){return new N(s,e,d.Error,0,t)}var Oe=new N(-1,-1,d.Character,0,""),Ke=class{constructor(e){this.input=e,this.peek=0,this.index=-1,this.length=e.length,this.advance()}advance(){this.peek=++this.index>=this.length?0:this.input.charCodeAt(this.index)}scanToken(){let e=this.input,t=this.length,r=this.peek,n=this.index;for(;r<=32;)if(++n>=t){r=0;break}else r=e.charCodeAt(n);if(this.peek=r,this.index=n,n>=t)return null;if(it(r))return this.scanIdentifier();if(B(r))return this.scanNumber(n);let i=n;switch(r){case 46:return this.advance(),B(this.peek)?this.scanNumber(i):nt(i,this.index,46);case 40:case 41:case 123:case 125:case 91:case 93:case 44:case 58:case 59:return this.scanCharacter(i,r);case 39:case 34:return this.scanString();case 35:return this.scanPrivateIdentifier();case 43:case 45:case 42:case 47:case 37:case 94:return this.scanOperator(i,String.fromCharCode(r));case 63:return this.scanQuestion(i);case 60:case 62:return this.scanComplexOperator(i,String.fromCharCode(r),61,"=");case 33:case 61:return this.scanComplexOperator(i,String.fromCharCode(r),61,"=",61,"=");case 38:return this.scanComplexOperator(i,"&",38,"&");case 124:return this.scanComplexOperator(i,"|",124,"|");case 160:for(;Je(this.peek);)this.advance();return this.scanToken()}return this.advance(),this.error(`Unexpected character [${String.fromCharCode(r)}]`,0)}scanCharacter(e,t){return this.advance(),nt(e,this.index,t)}scanOperator(e,t){return this.advance(),Be(e,this.index,t)}scanComplexOperator(e,t,r,n,i,a){this.advance();let h=t;return this.peek==r&&(this.advance(),h+=n),i!=null&&this.peek==i&&(this.advance(),h+=a),Be(e,this.index,h)}scanIdentifier(){let e=this.index;for(this.advance();at(this.peek);)this.advance();let t=this.input.substring(e,this.index);return or.indexOf(t)>-1?pr(e,this.index,t):cr(e,this.index,t)}scanPrivateIdentifier(){let e=this.index;if(this.advance(),!it(this.peek))return this.error("Invalid character [#]",-1);for(;at(this.peek);)this.advance();let t=this.input.substring(e,this.index);return hr(e,this.index,t)}scanNumber(e){let t=this.index===e,r=!1;for(this.advance();;){if(!B(this.peek))if(this.peek===95){if(!B(this.input.charCodeAt(this.index-1))||!B(this.input.charCodeAt(this.index+1)))return this.error("Invalid numeric separator",0);r=!0}else if(this.peek===46)t=!1;else if(fr(this.peek)){if(this.advance(),dr(this.peek)&&this.advance(),!B(this.peek))return this.error("Invalid exponent",-1);t=!1}else break;this.advance()}let n=this.input.substring(e,this.index);r&&(n=n.replace(/_/g,""));let i=t?gr(n):parseFloat(n);return lr(e,this.index,i)}scanString(){let e=this.index,t=this.peek;this.advance();let r="",n=this.index,i=this.input;for(;this.peek!=t;)if(this.peek==92){r+=i.substring(n,this.index);let h;if(this.advance(),this.peek==117){let v=i.substring(this.index+1,this.index+5);if(/^[0-9a-f]+$/i.test(v))h=parseInt(v,16);else return this.error(`Invalid unicode escape [\\u${v}]`,0);for(let f=0;f<5;f++)this.advance()}else h=vr(this.peek),this.advance();r+=String.fromCharCode(h),n=this.index}else{if(this.peek==0)return this.error("Unterminated quote",0);this.advance()}let a=i.substring(n,this.index);return this.advance(),ur(e,this.index,r+a)}scanQuestion(e){this.advance();let t="?";return(this.peek===63||this.peek===46)&&(t+=this.peek===46?".":"?",this.advance()),Be(e,this.index,t)}error(e,t){let r=this.index+t;return xr(r,this.index,`Lexer Error: ${e} at column ${r} in expression [${this.input}]`)}};function it(s){return 97<=s&&s<=122||65<=s&&s<=90||s==95||s==36}function at(s){return Ye(s)||B(s)||s==95||s==36}function fr(s){return s==101||s==69}function dr(s){return s==45||s==43}function vr(s){switch(s){case 110:return 10;case 102:return 12;case 114:return 13;case 116:return 9;case 118:return 11;default:return s}}function gr(s){let e=parseInt(s);if(isNaN(e))throw new Error("Invalid integer literal when parsing "+s);return e}var mr=[/^\s*$/,/[<>]/,/^[{}]$/,/&(#|[a-z])/i,/^\/\//];function pt(s,e){if(e!=null&&!(Array.isArray(e)&&e.length==2))throw new Error(`Expected '${s}' to be an array, [start, end].`);if(e!=null){let t=e[0],r=e[1];mr.forEach(n=>{if(n.test(t)||n.test(r))throw new Error(`['${t}', '${r}'] contains unusable interpolation symbol.`)})}}var de=class{static fromArray(e){return e?(pt("interpolation",e),new de(e[0],e[1])):F}constructor(e,t){this.start=e,this.end=t}},F=new de("{{","}}");var _e=class{constructor(e,t,r){this.strings=e,this.expressions=t,this.offsets=r}},Me=class{constructor(e,t,r){this.templateBindings=e,this.warnings=t,this.errors=r}},ve=class{constructor(e){this._lexer=e,this.errors=[]}parseAction(e,t,r,n,i=F){this._checkNoInterpolation(e,r,i);let a=this._stripComments(e),h=this._lexer.tokenize(a),v=1;t&&(v|=2);let f=new U(e,r,n,h,v,this.errors,0).parseChain();return new R(f,e,r,n,this.errors)}parseBinding(e,t,r,n=F){let i=this._parseBindingAst(e,t,r,n);return new R(i,e,t,r,this.errors)}checkSimpleExpression(e){let t=new Fe;return e.visit(t),t.errors}parseSimpleBinding(e,t,r,n=F){let i=this._parseBindingAst(e,t,r,n),a=this.checkSimpleExpression(i);return a.length>0&&this._reportError(`Host binding expression cannot contain ${a.join(" ")}`,e,t),new R(i,e,t,r,this.errors)}_reportError(e,t,r,n){this.errors.push(new G(e,t,r,n))}_parseBindingAst(e,t,r,n){this._checkNoInterpolation(e,t,n);let i=this._stripComments(e),a=this._lexer.tokenize(i);return new U(e,t,r,a,0,this.errors,0).parseChain()}parseTemplateBindings(e,t,r,n,i){let a=this._lexer.tokenize(t);return new U(t,r,i,a,0,this.errors,0).parseTemplateBindings({source:e,span:new P(n,n+e.length)})}parseInterpolation(e,t,r,n,i=F){let{strings:a,expressions:h,offsets:v}=this.splitInterpolation(e,t,n,i);if(h.length===0)return null;let f=[];for(let w=0;w<h.length;++w){let k=h[w].text,C=this._stripComments(k),y=this._lexer.tokenize(C),m=new U(e,t,r,y,0,this.errors,v[w]).parseChain();f.push(m)}return this.createInterpolationAst(a.map(w=>w.text),f,e,t,r)}parseInterpolationExpression(e,t,r){let n=this._stripComments(e),i=this._lexer.tokenize(n),a=new U(e,t,r,i,0,this.errors,0).parseChain(),h=["",""];return this.createInterpolationAst(h,[a],e,t,r)}createInterpolationAst(e,t,r,n,i){let a=new L(0,r.length),h=new ye(a,a.toAbsolute(i),e,t);return new R(h,r,n,i,this.errors)}splitInterpolation(e,t,r,n=F){let i=[],a=[],h=[],v=r?Sr(r):null,f=0,w=!1,k=!1,{start:C,end:y}=n;for(;f<e.length;)if(w){let m=f,c=m+C.length,o=this._getInterpolationEndIndex(e,y,c);if(o===-1){w=!1,k=!0;break}let x=o+y.length,p=e.substring(c,o);p.trim().length===0&&this._reportError("Blank expressions are not allowed in interpolated strings",e,`at column ${f} in`,t),a.push({text:p,start:m,end:x});let g=((v==null?void 0:v.get(m))??m)+C.length;h.push(g),f=x,w=!1}else{let m=f;f=e.indexOf(C,f),f===-1&&(f=e.length);let c=e.substring(m,f);i.push({text:c,start:m,end:f}),w=!0}if(!w)if(k){let m=i[i.length-1];m.text+=e.substring(f),m.end=e.length}else i.push({text:e.substring(f),start:f,end:e.length});return new _e(i,a,h)}wrapLiteralPrimitive(e,t,r){let n=new L(0,e==null?0:e.length);return new R(new A(n,n.toAbsolute(r),e),e,t,r,this.errors)}_stripComments(e){let t=this._commentStart(e);return t!=null?e.substring(0,t):e}_commentStart(e){let t=null;for(let r=0;r<e.length-1;r++){let n=e.charCodeAt(r),i=e.charCodeAt(r+1);if(n===47&&i==47&&t==null)return r;t===n?t=null:t==null&&Le(n)&&(t=n)}return null}_checkNoInterpolation(e,t,{start:r,end:n}){let i=-1,a=-1;for(let h of this._forEachUnquotedChar(e,0))if(i===-1)e.startsWith(r)&&(i=h);else if(a=this._getInterpolationEndIndex(e,n,h),a>-1)break;i>-1&&a>-1&&this._reportError(`Got interpolation (${r}${n}) where expression was expected`,e,`at column ${i} in`,t)}_getInterpolationEndIndex(e,t,r){for(let n of this._forEachUnquotedChar(e,r)){if(e.startsWith(t,n))return n;if(e.startsWith("//",n))return e.indexOf(t,n)}return-1}*_forEachUnquotedChar(e,t){let r=null,n=0;for(let i=t;i<e.length;i++){let a=e[i];Le(e.charCodeAt(i))&&(r===null||r===a)&&n%2===0?r=r===null?a:null:r===null&&(yield i),n=a==="\\"?n+1:0}}},oe;(function(s){s[s.None=0]="None",s[s.Writable=1]="Writable"})(oe||(oe={}));var U=class{constructor(e,t,r,n,i,a,h){this.input=e,this.location=t,this.absoluteOffset=r,this.tokens=n,this.parseFlags=i,this.errors=a,this.offset=h,this.rparensExpected=0,this.rbracketsExpected=0,this.rbracesExpected=0,this.context=oe.None,this.sourceSpanCache=new Map,this.index=0}peek(e){let t=this.index+e;return t<this.tokens.length?this.tokens[t]:Oe}get next(){return this.peek(0)}get atEOF(){return this.index>=this.tokens.length}get inputIndex(){return this.atEOF?this.currentEndIndex:this.next.index+this.offset}get currentEndIndex(){return this.index>0?this.peek(-1).end+this.offset:this.tokens.length===0?this.input.length+this.offset:this.next.index+this.offset}get currentAbsoluteOffset(){return this.absoluteOffset+this.inputIndex}span(e,t){let r=this.currentEndIndex;if(t!==void 0&&t>this.currentEndIndex&&(r=t),e>r){let n=r;r=e,e=n}return new L(e,r)}sourceSpan(e,t){let r=`${e}@${this.inputIndex}:${t}`;return this.sourceSpanCache.has(r)||this.sourceSpanCache.set(r,this.span(e,t).toAbsolute(this.absoluteOffset)),this.sourceSpanCache.get(r)}advance(){this.index++}withContext(e,t){this.context|=e;let r=t();return this.context^=e,r}consumeOptionalCharacter(e){return this.next.isCharacter(e)?(this.advance(),!0):!1}peekKeywordLet(){return this.next.isKeywordLet()}peekKeywordAs(){return this.next.isKeywordAs()}expectCharacter(e){this.consumeOptionalCharacter(e)||this.error(`Missing expected ${String.fromCharCode(e)}`)}consumeOptionalOperator(e){return this.next.isOperator(e)?(this.advance(),!0):!1}expectOperator(e){this.consumeOptionalOperator(e)||this.error(`Missing expected operator ${e}`)}prettyPrintToken(e){return e===Oe?"end of input":`token ${e}`}expectIdentifierOrKeyword(){let e=this.next;return!e.isIdentifier()&&!e.isKeyword()?(e.isPrivateIdentifier()?this._reportErrorForPrivateIdentifier(e,"expected identifier or keyword"):this.error(`Unexpected ${this.prettyPrintToken(e)}, expected identifier or keyword`),null):(this.advance(),e.toString())}expectIdentifierOrKeywordOrString(){let e=this.next;return!e.isIdentifier()&&!e.isKeyword()&&!e.isString()?(e.isPrivateIdentifier()?this._reportErrorForPrivateIdentifier(e,"expected identifier, keyword or string"):this.error(`Unexpected ${this.prettyPrintToken(e)}, expected identifier, keyword, or string`),""):(this.advance(),e.toString())}parseChain(){let e=[],t=this.inputIndex;for(;this.index<this.tokens.length;){let r=this.parsePipe();if(e.push(r),this.consumeOptionalCharacter(59))for(this.parseFlags&1||this.error("Binding expression cannot contain chained expression");this.consumeOptionalCharacter(59););else if(this.index<this.tokens.length){let n=this.index;if(this.error(`Unexpected token '${this.next}'`),this.index===n)break}}if(e.length===0){let r=this.offset,n=this.offset+this.input.length;return new E(this.span(r,n),this.sourceSpan(r,n))}return e.length==1?e[0]:new V(this.span(t),this.sourceSpan(t),e)}parsePipe(){let e=this.inputIndex,t=this.parseExpression();if(this.consumeOptionalOperator("|")){this.parseFlags&1&&this.error("Cannot have a pipe in an action expression");do{let r=this.inputIndex,n=this.expectIdentifierOrKeyword(),i,a;n!==null?i=this.sourceSpan(r):(n="",a=this.next.index!==-1?this.next.index:this.input.length+this.offset,i=new L(a,a).toAbsolute(this.absoluteOffset));let h=[];for(;this.consumeOptionalCharacter(58);)h.push(this.parseExpression());t=new q(this.span(e),this.sourceSpan(e,a),t,n,h,i)}while(this.consumeOptionalOperator("|"))}return t}parseExpression(){return this.parseConditional()}parseConditional(){let e=this.inputIndex,t=this.parseLogicalOr();if(this.consumeOptionalOperator("?")){let r=this.parsePipe(),n;if(this.consumeOptionalCharacter(58))n=this.parsePipe();else{let i=this.inputIndex,a=this.input.substring(e,i);this.error(`Conditional expression ${a} requires all 3 expressions`),n=new E(this.span(e),this.sourceSpan(e))}return new W(this.span(e),this.sourceSpan(e),t,r,n)}else return t}parseLogicalOr(){let e=this.inputIndex,t=this.parseLogicalAnd();for(;this.consumeOptionalOperator("||");){let r=this.parseLogicalAnd();t=new $(this.span(e),this.sourceSpan(e),"||",t,r)}return t}parseLogicalAnd(){let e=this.inputIndex,t=this.parseNullishCoalescing();for(;this.consumeOptionalOperator("&&");){let r=this.parseNullishCoalescing();t=new $(this.span(e),this.sourceSpan(e),"&&",t,r)}return t}parseNullishCoalescing(){let e=this.inputIndex,t=this.parseEquality();for(;this.consumeOptionalOperator("??");){let r=this.parseEquality();t=new $(this.span(e),this.sourceSpan(e),"??",t,r)}return t}parseEquality(){let e=this.inputIndex,t=this.parseRelational();for(;this.next.type==d.Operator;){let r=this.next.strValue;switch(r){case"==":case"===":case"!=":case"!==":this.advance();let n=this.parseRelational();t=new $(this.span(e),this.sourceSpan(e),r,t,n);continue}break}return t}parseRelational(){let e=this.inputIndex,t=this.parseAdditive();for(;this.next.type==d.Operator;){let r=this.next.strValue;switch(r){case"<":case">":case"<=":case">=":this.advance();let n=this.parseAdditive();t=new $(this.span(e),this.sourceSpan(e),r,t,n);continue}break}return t}parseAdditive(){let e=this.inputIndex,t=this.parseMultiplicative();for(;this.next.type==d.Operator;){let r=this.next.strValue;switch(r){case"+":case"-":this.advance();let n=this.parseMultiplicative();t=new $(this.span(e),this.sourceSpan(e),r,t,n);continue}break}return t}parseMultiplicative(){let e=this.inputIndex,t=this.parsePrefix();for(;this.next.type==d.Operator;){let r=this.next.strValue;switch(r){case"*":case"%":case"/":this.advance();let n=this.parsePrefix();t=new $(this.span(e),this.sourceSpan(e),r,t,n);continue}break}return t}parsePrefix(){if(this.next.type==d.Operator){let e=this.inputIndex,t=this.next.strValue,r;switch(t){case"+":return this.advance(),r=this.parsePrefix(),I.createPlus(this.span(e),this.sourceSpan(e),r);case"-":return this.advance(),r=this.parsePrefix(),I.createMinus(this.span(e),this.sourceSpan(e),r);case"!":return this.advance(),r=this.parsePrefix(),new J(this.span(e),this.sourceSpan(e),r)}}return this.parseCallChain()}parseCallChain(){let e=this.inputIndex,t=this.parsePrimary();for(;;)if(this.consumeOptionalCharacter(46))t=this.parseAccessMember(t,e,!1);else if(this.consumeOptionalOperator("?."))this.consumeOptionalCharacter(40)?t=this.parseCall(t,e,!0):t=this.consumeOptionalCharacter(91)?this.parseKeyedReadOrWrite(t,e,!0):this.parseAccessMember(t,e,!0);else if(this.consumeOptionalCharacter(91))t=this.parseKeyedReadOrWrite(t,e,!1);else if(this.consumeOptionalCharacter(40))t=this.parseCall(t,e,!1);else if(this.consumeOptionalOperator("!"))t=new Y(this.span(e),this.sourceSpan(e),t);else return t}parsePrimary(){let e=this.inputIndex;if(this.consumeOptionalCharacter(40)){this.rparensExpected++;let t=this.parsePipe();return this.rparensExpected--,this.expectCharacter(41),t}else{if(this.next.isKeywordNull())return this.advance(),new A(this.span(e),this.sourceSpan(e),null);if(this.next.isKeywordUndefined())return this.advance(),new A(this.span(e),this.sourceSpan(e),void 0);if(this.next.isKeywordTrue())return this.advance(),new A(this.span(e),this.sourceSpan(e),!0);if(this.next.isKeywordFalse())return this.advance(),new A(this.span(e),this.sourceSpan(e),!1);if(this.next.isKeywordThis())return this.advance(),new Se(this.span(e),this.sourceSpan(e));if(this.consumeOptionalCharacter(91)){this.rbracketsExpected++;let t=this.parseExpressionList(93);return this.rbracketsExpected--,this.expectCharacter(93),new X(this.span(e),this.sourceSpan(e),t)}else{if(this.next.isCharacter(123))return this.parseLiteralMap();if(this.next.isIdentifier())return this.parseAccessMember(new b(this.span(e),this.sourceSpan(e)),e,!1);if(this.next.isNumber()){let t=this.next.toNumber();return this.advance(),new A(this.span(e),this.sourceSpan(e),t)}else if(this.next.isString()){let t=this.next.toString();return this.advance(),new A(this.span(e),this.sourceSpan(e),t)}else return this.next.isPrivateIdentifier()?(this._reportErrorForPrivateIdentifier(this.next,null),new E(this.span(e),this.sourceSpan(e))):this.index>=this.tokens.length?(this.error(`Unexpected end of expression: ${this.input}`),new E(this.span(e),this.sourceSpan(e))):(this.error(`Unexpected token ${this.next}`),new E(this.span(e),this.sourceSpan(e)))}}}parseExpressionList(e){let t=[];do if(!this.next.isCharacter(e))t.push(this.parsePipe());else break;while(this.consumeOptionalCharacter(44));return t}parseLiteralMap(){let e=[],t=[],r=this.inputIndex;if(this.expectCharacter(123),!this.consumeOptionalCharacter(125)){this.rbracesExpected++;do{let n=this.inputIndex,i=this.next.isString(),a=this.expectIdentifierOrKeywordOrString();if(e.push({key:a,quoted:i}),i)this.expectCharacter(58),t.push(this.parsePipe());else if(this.consumeOptionalCharacter(58))t.push(this.parsePipe());else{let h=this.span(n),v=this.sourceSpan(n);t.push(new K(h,v,v,new b(h,v),a))}}while(this.consumeOptionalCharacter(44));this.rbracesExpected--,this.expectCharacter(125)}return new Z(this.span(r),this.sourceSpan(r),e,t)}parseAccessMember(e,t,r){let n=this.inputIndex,i=this.withContext(oe.Writable,()=>{let v=this.expectIdentifierOrKeyword()??"";return v.length===0&&this.error("Expected identifier for property access",e.span.end),v}),a=this.sourceSpan(n),h;if(r)this.consumeOptionalAssignment()?(this.error("The '?.' operator cannot be used in the assignment"),h=new E(this.span(t),this.sourceSpan(t))):h=new H(this.span(t),this.sourceSpan(t),a,e,i);else if(this.consumeOptionalAssignment()){if(!(this.parseFlags&1))return this.error("Bindings cannot contain assignments"),new E(this.span(t),this.sourceSpan(t));let v=this.parseConditional();h=new Q(this.span(t),this.sourceSpan(t),a,e,i,v)}else h=new K(this.span(t),this.sourceSpan(t),a,e,i);return h}parseCall(e,t,r){let n=this.inputIndex;this.rparensExpected++;let i=this.parseCallArguments(),a=this.span(n,this.inputIndex).toAbsolute(this.absoluteOffset);this.expectCharacter(41),this.rparensExpected--;let h=this.span(t),v=this.sourceSpan(t);return r?new te(h,v,e,i,a):new ee(h,v,e,i,a)}consumeOptionalAssignment(){return this.parseFlags&2&&this.next.isOperator("!")&&this.peek(1).isOperator("=")?(this.advance(),this.advance(),!0):this.consumeOptionalOperator("=")}parseCallArguments(){if(this.next.isCharacter(41))return[];let e=[];do e.push(this.parsePipe());while(this.consumeOptionalCharacter(44));return e}expectTemplateBindingKey(){let e="",t=!1,r=this.currentAbsoluteOffset;do e+=this.expectIdentifierOrKeywordOrString(),t=this.consumeOptionalOperator("-"),t&&(e+="-");while(t);return{source:e,span:new P(r,r+e.length)}}parseTemplateBindings(e){let t=[];for(t.push(...this.parseDirectiveKeywordBindings(e));this.index<this.tokens.length;){let r=this.parseLetBinding();if(r)t.push(r);else{let n=this.expectTemplateBindingKey(),i=this.parseAsBinding(n);i?t.push(i):(n.source=e.source+n.source.charAt(0).toUpperCase()+n.source.substring(1),t.push(...this.parseDirectiveKeywordBindings(n)))}this.consumeStatementTerminator()}return new Me(t,[],this.errors)}parseKeyedReadOrWrite(e,t,r){return this.withContext(oe.Writable,()=>{this.rbracketsExpected++;let n=this.parsePipe();if(n instanceof E&&this.error("Key access cannot be empty"),this.rbracketsExpected--,this.expectCharacter(93),this.consumeOptionalOperator("="))if(r)this.error("The '?.' operator cannot be used in the assignment");else{let i=this.parseConditional();return new z(this.span(t),this.sourceSpan(t),e,n,i)}else return r?new we(this.span(t),this.sourceSpan(t),e,n):new j(this.span(t),this.sourceSpan(t),e,n);return new E(this.span(t),this.sourceSpan(t))})}parseDirectiveKeywordBindings(e){let t=[];this.consumeOptionalCharacter(58);let r=this.getDirectiveBoundTarget(),n=this.currentAbsoluteOffset,i=this.parseAsBinding(e);i||(this.consumeStatementTerminator(),n=this.currentAbsoluteOffset);let a=new P(e.span.start,n);return t.push(new re(a,e,r)),i&&t.push(i),t}getDirectiveBoundTarget(){if(this.next===Oe||this.peekKeywordAs()||this.peekKeywordLet())return null;let e=this.parsePipe(),{start:t,end:r}=e.span,n=this.input.substring(t,r);return new R(e,n,this.location,this.absoluteOffset+t,this.errors)}parseAsBinding(e){if(!this.peekKeywordAs())return null;this.advance();let t=this.expectTemplateBindingKey();this.consumeStatementTerminator();let r=new P(e.span.start,this.currentAbsoluteOffset);return new T(r,t,e)}parseLetBinding(){if(!this.peekKeywordLet())return null;let e=this.currentAbsoluteOffset;this.advance();let t=this.expectTemplateBindingKey(),r=null;this.consumeOptionalOperator("=")&&(r=this.expectTemplateBindingKey()),this.consumeStatementTerminator();let n=new P(e,this.currentAbsoluteOffset);return new T(n,t,r)}consumeStatementTerminator(){this.consumeOptionalCharacter(59)||this.consumeOptionalCharacter(44)}error(e,t=null){this.errors.push(new G(e,this.input,this.locationText(t),this.location)),this.skip()}locationText(e=null){return e==null&&(e=this.index),e<this.tokens.length?`at column ${this.tokens[e].index+1} in`:"at the end of the expression"}_reportErrorForPrivateIdentifier(e,t){let r=`Private identifiers are not supported. Unexpected private identifier: ${e}`;t!==null&&(r+=`, ${t}`),this.error(r)}skip(){let e=this.next;for(;this.index<this.tokens.length&&!e.isCharacter(59)&&!e.isOperator("|")&&(this.rparensExpected<=0||!e.isCharacter(41))&&(this.rbracesExpected<=0||!e.isCharacter(125))&&(this.rbracketsExpected<=0||!e.isCharacter(93))&&(!(this.context&oe.Writable)||!e.isOperator("="));)this.next.isError()&&this.errors.push(new G(this.next.toString(),this.input,this.locationText(),this.location)),this.advance(),e=this.next}},Fe=class extends Ee{constructor(){super(...arguments),this.errors=[]}visitPipe(){this.errors.push("pipes")}};function Sr(s){let e=new Map,t=0,r=0,n=0;for(;n<s.length;){let i=s[n];if(i.type===9){let[a,h]=i.parts;t+=h.length,r+=a.length}else{let a=i.parts.reduce((h,v)=>h+v.length,0);r+=a,t+=a}e.set(r,t),n++}return e}var lt="angular-estree-parser",Ge="NgEstreeParser",Ue=0,De=[lt,Ue];function xt(){return new ve(new ue)}function Ve(s,e){let t=xt(),{astInput:r,comments:n}=yr(s,t),{ast:i,errors:a}=e(r,t);return mt(a),{ast:i,comments:n}}function ft(s){return Ve(s,(e,t)=>t.parseBinding(e,...De))}function dt(s){return Ve(s,(e,t)=>t.parseAction(e,!1,...De))}function vt(s){return Ve(s,(e,t)=>{let r=t.parseInterpolationExpression(e,...De);return r.ast=r.ast.expressions[0],r})}function gt(s){let e=xt(),{templateBindings:t,errors:r}=e.parseTemplateBindings(Ge,s,lt,Ue,Ue);return mt(r),t}function mt(s){if(s.length!==0){let[{message:e}]=s;throw new SyntaxError(e.replace(/^Parser Error: | at column \d+ in [^]*$/g,""))}}function yr(s,e){let t=e._commentStart(s);return t===null?{astInput:s,comments:[]}:{astInput:s.slice(0,t),comments:[{type:"Comment",value:s.slice(t+2),sourceSpan:{start:t,end:s.length}}]}}function St(s){return s instanceof I?"Unary":s instanceof $?"Binary":s instanceof q?"BindingPipe":s instanceof ee?"Call":s instanceof V?"Chain":s instanceof W?"Conditional":s instanceof E?"EmptyExpr":s instanceof b?"ImplicitReceiver":s instanceof j?"KeyedRead":s instanceof z?"KeyedWrite":s instanceof X?"LiteralArray":s instanceof Z?"LiteralMap":s instanceof A?"LiteralPrimitive":s instanceof Y?"NonNullAssert":s instanceof J?"PrefixNot":s instanceof K?"PropertyRead":s instanceof Q?"PropertyWrite":s instanceof te?"SafeCall":s instanceof H?"SafePropertyRead":s.type}function ut({start:s,end:e},t){let r=s,n=e;for(;n!==r&&/\s/.test(t[n-1]);)n--;for(;r!==n&&/\s/.test(t[r]);)r++;return{start:r,end:n}}function Er({start:s,end:e},t){let r=s,n=e;for(;n!==t.length&&/\s/.test(t[n]);)n++;for(;r!==0&&/\s/.test(t[r-1]);)r--;return{start:r,end:n}}function Ar(s,e){return e[s.start-1]==="("&&e[s.end]===")"?{start:s.start-1,end:s.end+1}:s}function wt(s,e,t){let r=0,n={start:s.start,end:s.end};for(;;){let i=Er(n,e),a=Ar(i,e);if(i.start===a.start&&i.end===a.end)break;n.start=a.start,n.end=a.end,r++}return{hasParens:(t?r-1:r)!==0,outerSpan:ut(t?{start:n.start+1,end:n.end-1}:n,e),innerSpan:ut(s,e)}}function yt(s,e,t){let r=e;for(;!s.test(t[r]);)if(--r<0)throw new Error(`Cannot find front char ${s} from index ${e} in ${JSON.stringify(t)}`);return r}function Ne(s,e,t){let r=e;for(;!s.test(t[r]);)if(++r>=t.length)throw new Error(`Cannot find back char ${s} from index ${e} in ${JSON.stringify(t)}`);return r}function Et(s){return s.slice(0,1).toLowerCase()+s.slice(1)}function At(s){return s.length===0?void 0:s[s.length-1]}var ce=(s,e,t=!1)=>{let r=St(s);switch(r){case"Unary":{let{operator:c,expr:o}=s,x=n(o);return a("UnaryExpression",{prefix:!0,argument:x,operator:c},s.sourceSpan,{hasParentParens:t})}case"Binary":{let{left:c,operation:o,right:x}=s,p=n(c),l=n(x);return a(o==="&&"||o==="||"||o==="??"?"LogicalExpression":"BinaryExpression",{left:p,right:l,operator:o},{start:y(p),end:m(l)},{hasParentParens:t})}case"BindingPipe":{let{exp:c,name:o,args:x}=s,p=n(c),l=f(/\S/,f(/\|/,m(p))+1),g=a("Identifier",{name:o},{start:l,end:l+o.length}),u=x.map(n);return a("NGPipeExpression",{left:p,right:g,arguments:u},{start:y(p),end:m(u.length===0?g:At(u))},{hasParentParens:t})}case"Chain":{let{expressions:c}=s;return a("NGChainedExpression",{expressions:c.map(n)},s.sourceSpan,{hasParentParens:t})}case"Comment":{let{value:c}=s;return a("CommentLine",{value:c},s.sourceSpan,{processSpan:!1})}case"Conditional":{let{condition:c,trueExp:o,falseExp:x}=s,p=n(c),l=n(o),g=n(x);return a("ConditionalExpression",{test:p,consequent:l,alternate:g},{start:y(p),end:m(g)},{hasParentParens:t})}case"EmptyExpr":return a("NGEmptyExpression",{},s.sourceSpan,{hasParentParens:t});case"ImplicitReceiver":return a("ThisExpression",{},s.sourceSpan,{hasParentParens:t});case"KeyedRead":{let{key:c}=s,o=Object.prototype.hasOwnProperty.call(s,"receiver")?s.receiver:s.obj,x=n(c);return h(o,x,{computed:!0,optional:!1},{end:s.sourceSpan.end,hasParentParens:t})}case"LiteralArray":{let{expressions:c}=s;return a("ArrayExpression",{elements:c.map(n)},s.sourceSpan,{hasParentParens:t})}case"LiteralMap":{let{keys:c,values:o}=s,x=o.map(l=>n(l)),p=c.map(({key:l,quoted:g},u)=>{let O=x[u],he=y(O),je=m(O),Pe=f(/\S/,u===0?s.sourceSpan.start+1:f(/,/,m(x[u-1]))+1),Pt=he===Pe?je:v(/\S/,v(/:/,he-1)-1)+1,ze={start:Pe,end:Pt},ge=g?a("StringLiteral",{value:l},ze):a("Identifier",{name:l},ze),Rt=ge.end<ge.start||Pe===he;return a("ObjectProperty",{key:ge,value:O,method:!1,shorthand:Rt,computed:!1},{start:y(ge),end:je})});return a("ObjectExpression",{properties:p},s.sourceSpan,{hasParentParens:t})}case"LiteralPrimitive":{let{value:c}=s;switch(typeof c){case"boolean":return a("BooleanLiteral",{value:c},s.sourceSpan,{hasParentParens:t});case"number":return a("NumericLiteral",{value:c},s.sourceSpan,{hasParentParens:t});case"object":return a("NullLiteral",{},s.sourceSpan,{hasParentParens:t});case"string":return a("StringLiteral",{value:c},s.sourceSpan,{hasParentParens:t});case"undefined":return a("Identifier",{name:"undefined"},s.sourceSpan,{hasParentParens:t});default:throw new Error(`Unexpected LiteralPrimitive value type ${typeof c}`)}}case"Call":case"SafeCall":{let c=r==="SafeCall",{receiver:o,args:x}=s,p=x.length===1?[i(x[0])]:x.map(n),l=n(o),g=k(l),u=c||g?"OptionalCallExpression":"CallExpression";return a(u,{callee:l,arguments:p,optional:u==="OptionalCallExpression"?c:void 0},{start:y(l),end:s.sourceSpan.end},{hasParentParens:t})}case"NonNullAssert":{let{expression:c}=s,o=n(c);return a("TSNonNullExpression",{expression:o},{start:y(o),end:s.sourceSpan.end},{hasParentParens:t})}case"PrefixNot":{let{expression:c}=s,o=n(c);return a("UnaryExpression",{prefix:!0,operator:"!",argument:o},{start:s.sourceSpan.start,end:m(o)},{hasParentParens:t})}case"PropertyRead":case"SafePropertyRead":{let c=r==="SafePropertyRead",{receiver:o,name:x}=s,p=v(/\S/,s.sourceSpan.end-1)+1,l=a("Identifier",{name:x},{start:p-x.length,end:p},w(o)?{hasParentParens:t}:{});return h(o,l,{computed:!1,optional:c},{hasParentParens:t})}case"KeyedWrite":{let{key:c,value:o}=s,x=Object.prototype.hasOwnProperty.call(s,"receiver")?s.receiver:s.obj,p=n(c),l=n(o),g=h(x,p,{computed:!0,optional:!1},{end:f(/\]/,m(p))+1});return a("AssignmentExpression",{left:g,operator:"=",right:l},{start:y(g),end:m(l)},{hasParentParens:t})}case"PropertyWrite":{let{receiver:c,name:o,value:x}=s,p=n(x),l=v(/\S/,v(/=/,y(p)-1)-1)+1,g=a("Identifier",{name:o},{start:l-o.length,end:l}),u=h(c,g,{computed:!1,optional:!1});return a("AssignmentExpression",{left:u,operator:"=",right:p},{start:y(u),end:m(p)},{hasParentParens:t})}default:throw new Error(`Unexpected node ${r}`)}function n(c){return ce(c,e)}function i(c){return ce(c,e,!0)}function a(c,o,x,{processSpan:p=!0,hasParentParens:l=!1}={}){let g={type:c,...ke(x,e,p,l),...o};switch(c){case"Identifier":{let u=g;u.loc.identifierName=u.name;break}case"NumericLiteral":{let u=g;u.extra={...u.extra,raw:e.text.slice(u.start,u.end),rawValue:u.value};break}case"StringLiteral":{let u=g;u.extra={...u.extra,raw:e.text.slice(u.start,u.end),rawValue:u.value};break}case"ObjectProperty":{let u=g;u.shorthand&&(u.extra={...u.extra,shorthand:u.shorthand});break}}return g}function h(c,o,x,{end:p=m(o),hasParentParens:l=!1}={}){if(w(c)||c.sourceSpan.start===o.start)return o;let g=n(c),u=k(g);return a(x.optional||u?"OptionalMemberExpression":"MemberExpression",{object:g,property:o,computed:x.computed,...x.optional?{optional:!0}:u?{optional:!1}:null},{start:y(g),end:p},{hasParentParens:l})}function v(c,o){return yt(c,o,e.text)}function f(c,o){return Ne(c,o,e.text)}function w(c){return c.sourceSpan.start>=c.sourceSpan.end||/^\s+$/.test(e.text.slice(c.sourceSpan.start,c.sourceSpan.end))}function k(c){return(c.type==="OptionalCallExpression"||c.type==="OptionalMemberExpression")&&!C(c)}function C(c){return c.extra&&c.extra.parenthesized}function y(c){return C(c)?c.extra.parenStart:c.start}function m(c){return C(c)?c.extra.parenEnd:c.end}};function ke(s,e,t=!1,r=!1){if(!t){let{start:h,end:v}=s;return{start:h,end:v,loc:{start:e.locator.locationForIndex(h),end:e.locator.locationForIndex(v)}}}let{outerSpan:n,innerSpan:i,hasParens:a}=wt(s,e.text,r);return{start:i.start,end:i.end,loc:{start:e.locator.locationForIndex(i.start),end:e.locator.locationForIndex(i.end)},...a&&{extra:{parenthesized:!0,parenStart:n.start,parenEnd:n.end}}}}function $t(s,e){s.forEach(y);let[t]=s,{key:r}=t,n=e.text.slice(t.sourceSpan.start,t.sourceSpan.end).trim().length===0?s.slice(1):s,i=[],a=null;for(let o=0;o<n.length;o++){let x=n[o];if(a&&k(a)&&C(x)&&x.value&&x.value.source===a.key.source){let p=f("NGMicrosyntaxKey",{name:x.key.source},x.key.span),l=(O,he)=>({...O,...ke({start:O.start,end:he},e)}),g=O=>({...l(O,p.end),alias:p}),u=i.pop();if(u.type==="NGMicrosyntaxExpression")i.push(g(u));else if(u.type==="NGMicrosyntaxKeyedExpression"){let O=g(u.expression);i.push(l({...u,expression:O},O.end))}else throw new Error(`Unexpected type ${u.type}`)}else i.push(h(x,o));a=x}return f("NGMicrosyntax",{body:i},i.length===0?s[0].sourceSpan:{start:i[0].start,end:i[i.length-1].end});function h(o,x){if(k(o)){let{key:p,value:l}=o;return l?x===0?f("NGMicrosyntaxExpression",{expression:v(l.ast),alias:null},l.sourceSpan):f("NGMicrosyntaxKeyedExpression",{key:f("NGMicrosyntaxKey",{name:w(p.source)},p.span),expression:f("NGMicrosyntaxExpression",{expression:v(l.ast),alias:null},l.sourceSpan)},{start:p.span.start,end:l.sourceSpan.end}):f("NGMicrosyntaxKey",{name:w(p.source)},p.span)}else{let{key:p,sourceSpan:l}=o;if(/^let\s$/.test(e.text.slice(l.start,l.start+4))){let{value:u}=o;return f("NGMicrosyntaxLet",{key:f("NGMicrosyntaxKey",{name:p.source},p.span),value:u?f("NGMicrosyntaxKey",{name:u.source},u.span):null},{start:l.start,end:u?u.span.end:p.span.end})}else{let u=c(o);return f("NGMicrosyntaxAs",{key:f("NGMicrosyntaxKey",{name:u.source},u.span),alias:f("NGMicrosyntaxKey",{name:p.source},p.span)},{start:u.span.start,end:p.span.end})}}}function v(o){return ce(o,e)}function f(o,x,p,l=!0){return{type:o,...ke(p,e,l),...x}}function w(o){return Et(o.slice(r.source.length))}function k(o){return o instanceof re}function C(o){return o instanceof T}function y(o){m(o.key.span),C(o)&&o.value&&m(o.value.span)}function m(o){if(e.text[o.start]!=='"'&&e.text[o.start]!=="'")return;let x=e.text[o.start],p=!1;for(let l=o.start+1;l<e.text.length;l++)switch(e.text[l]){case x:if(!p){o.end=l+1;return}default:p=!1;break;case"\\":p=!p;break}}function c(o){if(!o.value||o.value.source!==Ge)return o.value;let x=Ne(/\S/,o.sourceSpan.start,e.text);return{source:"$implicit",span:{start:x,end:x}}}}function We(s,e){let{ast:t,comments:r}=e(s),n=new pe(s),i=h=>ce(h,n),a=i(t);return a.comments=r.map(h=>i(h)),a}function Ct(s){return We(s,ft)}function Ot(s){return We(s,vt)}function Qe(s){return We(s,dt)}function Nt(s){return $t(gt(s),new pe(s))}function $r(s){return Array.isArray(s)&&s.length>0}var kt=$r;function He(s){var r;let e=s.range?s.range[0]:s.start,t=((r=s.declaration)==null?void 0:r.decorators)??s.decorators;return kt(t)?Math.min(He(t[0]),e):e}function It(s){return s.range?s.range[1]:s.end}function Ie(s){return{astFormat:"estree",parse(e){let t=s(e);return{type:"NGRoot",node:s===Qe&&t.type!=="NGChainedExpression"?{...t,type:"NGChainedExpression",expressions:[t]}:t}},locStart:He,locEnd:It}}var Cr={parsers:{__ng_action:Ie(Qe),__ng_binding:Ie(Ct),__ng_interpolation:Ie(Ot),__ng_directive:Ie(Nt)}},as=Cr;export{as as default};
|
|
1
|
+
var Zt=Object.defineProperty;var E=(s,e)=>()=>(s&&(e=s(s=0)),e);var Jt=(s,e)=>{for(var t in e)Zt(s,t,{get:e[t],enumerable:!0})};var we,st,nt,it=E(()=>{we=`
|
|
2
|
+
`,st="\r",nt=function(){function s(e){this.length=e.length;for(var t=[0],r=0;r<e.length;)switch(e[r]){case we:r+=we.length,t.push(r);break;case st:r+=st.length,e[r]===we&&(r+=we.length),t.push(r);break;default:r++;break}this.offsets=t}return s.prototype.locationForIndex=function(e){if(e<0||e>this.length)return null;for(var t=0,r=this.offsets;r[t+1]<=e;)t++;var n=e-r[t];return{line:t,column:n}},s.prototype.indexForLocation=function(e){var t=e.line,r=e.column;return t<0||t>=this.offsets.length||r<0||r>this.lengthOfLine(t)?null:this.offsets[t]+r},s.prototype.lengthOfLine=function(e){var t=this.offsets[e],r=e===this.offsets.length-1?this.length:this.offsets[e+1];return r-t},s}()});var xe,_e,at=E(()=>{it();xe=class{text;locator;constructor(e){this.text=e,this.locator=new _e(this.text)}},_e=class{_linesAndColumns;constructor(e){this._linesAndColumns=new nt(e)}locationForIndex(e){let{line:t,column:r}=this._linesAndColumns.locationForIndex(e);return{line:t+1,column:r,index:e}}}});var D,b,S,V,A,_,ye,W,Q,K,j,H,z,q,X,Z,$,J,Y,Ee,C,P,ee,te,re,se,R,L,T,ne,Ae,ot,Be=E(()=>{D=class{constructor(e,t,r,n){this.input=t,this.errLocation=r,this.ctxLocation=n,this.message=`Parser Error: ${e} ${r} [${t}] in ${n}`}},b=class{constructor(e,t){this.start=e,this.end=t}toAbsolute(e){return new R(e+this.start,e+this.end)}},S=class{constructor(e,t){this.span=e,this.sourceSpan=t}toString(){return"AST"}},V=class extends S{constructor(e,t,r){super(e,t),this.nameSpan=r}},A=class extends S{visit(e,t=null){}},_=class extends S{visit(e,t=null){return e.visitImplicitReceiver(this,t)}},ye=class extends _{visit(e,t=null){var r;return(r=e.visitThisReceiver)==null?void 0:r.call(e,this,t)}},W=class extends S{constructor(e,t,r){super(e,t),this.expressions=r}visit(e,t=null){return e.visitChain(this,t)}},Q=class extends S{constructor(e,t,r,n,i){super(e,t),this.condition=r,this.trueExp=n,this.falseExp=i}visit(e,t=null){return e.visitConditional(this,t)}},K=class extends V{constructor(e,t,r,n,i){super(e,t,r),this.receiver=n,this.name=i}visit(e,t=null){return e.visitPropertyRead(this,t)}},j=class extends V{constructor(e,t,r,n,i,a){super(e,t,r),this.receiver=n,this.name=i,this.value=a}visit(e,t=null){return e.visitPropertyWrite(this,t)}},H=class extends V{constructor(e,t,r,n,i){super(e,t,r),this.receiver=n,this.name=i}visit(e,t=null){return e.visitSafePropertyRead(this,t)}},z=class extends S{constructor(e,t,r,n){super(e,t),this.receiver=r,this.key=n}visit(e,t=null){return e.visitKeyedRead(this,t)}},q=class extends S{constructor(e,t,r,n){super(e,t),this.receiver=r,this.key=n}visit(e,t=null){return e.visitSafeKeyedRead(this,t)}},X=class extends S{constructor(e,t,r,n,i){super(e,t),this.receiver=r,this.key=n,this.value=i}visit(e,t=null){return e.visitKeyedWrite(this,t)}},Z=class extends V{constructor(e,t,r,n,i,a){super(e,t,a),this.exp=r,this.name=n,this.args=i}visit(e,t=null){return e.visitPipe(this,t)}},$=class extends S{constructor(e,t,r){super(e,t),this.value=r}visit(e,t=null){return e.visitLiteralPrimitive(this,t)}},J=class extends S{constructor(e,t,r){super(e,t),this.expressions=r}visit(e,t=null){return e.visitLiteralArray(this,t)}},Y=class extends S{constructor(e,t,r,n){super(e,t),this.keys=r,this.values=n}visit(e,t=null){return e.visitLiteralMap(this,t)}},Ee=class extends S{constructor(e,t,r,n){super(e,t),this.strings=r,this.expressions=n}visit(e,t=null){return e.visitInterpolation(this,t)}},C=class extends S{constructor(e,t,r,n,i){super(e,t),this.operation=r,this.left=n,this.right=i}visit(e,t=null){return e.visitBinary(this,t)}},P=class extends C{static createMinus(e,t,r){return new P(e,t,"-",r,"-",new $(e,t,0),r)}static createPlus(e,t,r){return new P(e,t,"+",r,"-",r,new $(e,t,0))}constructor(e,t,r,n,i,a,h){super(e,t,i,a,h),this.operator=r,this.expr=n,this.left=null,this.right=null,this.operation=null}visit(e,t=null){return e.visitUnary!==void 0?e.visitUnary(this,t):e.visitBinary(this,t)}},ee=class extends S{constructor(e,t,r){super(e,t),this.expression=r}visit(e,t=null){return e.visitPrefixNot(this,t)}},te=class extends S{constructor(e,t,r){super(e,t),this.expression=r}visit(e,t=null){return e.visitNonNullAssert(this,t)}},re=class extends S{constructor(e,t,r,n,i){super(e,t),this.receiver=r,this.args=n,this.argumentSpan=i}visit(e,t=null){return e.visitCall(this,t)}},se=class extends S{constructor(e,t,r,n,i){super(e,t),this.receiver=r,this.args=n,this.argumentSpan=i}visit(e,t=null){return e.visitSafeCall(this,t)}},R=class{constructor(e,t){this.start=e,this.end=t}},L=class extends S{constructor(e,t,r,n,i){super(new b(0,t===null?0:t.length),new R(n,t===null?n:n+t.length)),this.ast=e,this.source=t,this.location=r,this.errors=i}visit(e,t=null){return e.visitASTWithSource?e.visitASTWithSource(this,t):this.ast.visit(e,t)}toString(){return`${this.source} in ${this.location}`}},T=class{constructor(e,t,r){this.sourceSpan=e,this.key=t,this.value=r}},ne=class{constructor(e,t,r){this.sourceSpan=e,this.key=t,this.value=r}},Ae=class{visit(e,t){e.visit(this,t)}visitUnary(e,t){this.visit(e.expr,t)}visitBinary(e,t){this.visit(e.left,t),this.visit(e.right,t)}visitChain(e,t){this.visitAll(e.expressions,t)}visitConditional(e,t){this.visit(e.condition,t),this.visit(e.trueExp,t),this.visit(e.falseExp,t)}visitPipe(e,t){this.visit(e.exp,t),this.visitAll(e.args,t)}visitImplicitReceiver(e,t){}visitThisReceiver(e,t){}visitInterpolation(e,t){this.visitAll(e.expressions,t)}visitKeyedRead(e,t){this.visit(e.receiver,t),this.visit(e.key,t)}visitKeyedWrite(e,t){this.visit(e.receiver,t),this.visit(e.key,t),this.visit(e.value,t)}visitLiteralArray(e,t){this.visitAll(e.expressions,t)}visitLiteralMap(e,t){this.visitAll(e.values,t)}visitLiteralPrimitive(e,t){}visitPrefixNot(e,t){this.visit(e.expression,t)}visitNonNullAssert(e,t){this.visit(e.expression,t)}visitPropertyRead(e,t){this.visit(e.receiver,t)}visitPropertyWrite(e,t){this.visit(e.receiver,t),this.visit(e.value,t)}visitSafePropertyRead(e,t){this.visit(e.receiver,t)}visitSafeKeyedRead(e,t){this.visit(e.receiver,t),this.visit(e.key,t)}visitCall(e,t){this.visit(e.receiver,t),this.visitAll(e.args,t)}visitSafeCall(e,t){this.visit(e.receiver,t),this.visitAll(e.args,t)}visitAll(e,t){for(let r of e)this.visit(r,t)}};(function(s){s[s.DEFAULT=0]="DEFAULT",s[s.LITERAL_ATTR=1]="LITERAL_ATTR",s[s.ANIMATION=2]="ANIMATION"})(ot||(ot={}))});function ct(s){return s>=9&&s<=32||s==160}function B(s){return 48<=s&&s<=57}function ht(s){return s>=97&&s<=122||s>=65&&s<=90}function Ke(s){return s===39||s===34||s===96}var Te=E(()=>{});function ft(s,e,t){return new k(s,e,d.Character,t,String.fromCharCode(t))}function Pr(s,e,t){return new k(s,e,d.Identifier,0,t)}function Rr(s,e,t){return new k(s,e,d.PrivateIdentifier,0,t)}function Lr(s,e,t){return new k(s,e,d.Keyword,0,t)}function Fe(s,e,t){return new k(s,e,d.Operator,0,t)}function br(s,e,t){return new k(s,e,d.String,0,t)}function _r(s,e,t){return new k(s,e,d.Number,t,"")}function Br(s,e,t){return new k(s,e,d.Error,0,t)}function dt(s){return 97<=s&&s<=122||65<=s&&s<=90||s==95||s==36}function vt(s){return ht(s)||B(s)||s==95||s==36}function Kr(s){return s==101||s==69}function Tr(s){return s==45||s==43}function Mr(s){switch(s){case 110:return 10;case 102:return 12;case 114:return 13;case 116:return 9;case 118:return 11;default:return s}}function Fr(s){let e=parseInt(s);if(isNaN(e))throw new Error("Invalid integer literal when parsing "+s);return e}var d,Ir,fe,k,Ne,Ue,De=E(()=>{Te();(function(s){s[s.Character=0]="Character",s[s.Identifier=1]="Identifier",s[s.PrivateIdentifier=2]="PrivateIdentifier",s[s.Keyword=3]="Keyword",s[s.String=4]="String",s[s.Operator=5]="Operator",s[s.Number=6]="Number",s[s.Error=7]="Error"})(d||(d={}));Ir=["var","let","as","null","undefined","true","false","if","else","this"],fe=class{tokenize(e){let t=new Ue(e),r=[],n=t.scanToken();for(;n!=null;)r.push(n),n=t.scanToken();return r}},k=class{constructor(e,t,r,n,i){this.index=e,this.end=t,this.type=r,this.numValue=n,this.strValue=i}isCharacter(e){return this.type==d.Character&&this.numValue==e}isNumber(){return this.type==d.Number}isString(){return this.type==d.String}isOperator(e){return this.type==d.Operator&&this.strValue==e}isIdentifier(){return this.type==d.Identifier}isPrivateIdentifier(){return this.type==d.PrivateIdentifier}isKeyword(){return this.type==d.Keyword}isKeywordLet(){return this.type==d.Keyword&&this.strValue=="let"}isKeywordAs(){return this.type==d.Keyword&&this.strValue=="as"}isKeywordNull(){return this.type==d.Keyword&&this.strValue=="null"}isKeywordUndefined(){return this.type==d.Keyword&&this.strValue=="undefined"}isKeywordTrue(){return this.type==d.Keyword&&this.strValue=="true"}isKeywordFalse(){return this.type==d.Keyword&&this.strValue=="false"}isKeywordThis(){return this.type==d.Keyword&&this.strValue=="this"}isError(){return this.type==d.Error}toNumber(){return this.type==d.Number?this.numValue:-1}toString(){switch(this.type){case d.Character:case d.Identifier:case d.Keyword:case d.Operator:case d.PrivateIdentifier:case d.String:case d.Error:return this.strValue;case d.Number:return this.numValue.toString();default:return null}}};Ne=new k(-1,-1,d.Character,0,""),Ue=class{constructor(e){this.input=e,this.peek=0,this.index=-1,this.length=e.length,this.advance()}advance(){this.peek=++this.index>=this.length?0:this.input.charCodeAt(this.index)}scanToken(){let e=this.input,t=this.length,r=this.peek,n=this.index;for(;r<=32;)if(++n>=t){r=0;break}else r=e.charCodeAt(n);if(this.peek=r,this.index=n,n>=t)return null;if(dt(r))return this.scanIdentifier();if(B(r))return this.scanNumber(n);let i=n;switch(r){case 46:return this.advance(),B(this.peek)?this.scanNumber(i):ft(i,this.index,46);case 40:case 41:case 123:case 125:case 91:case 93:case 44:case 58:case 59:return this.scanCharacter(i,r);case 39:case 34:return this.scanString();case 35:return this.scanPrivateIdentifier();case 43:case 45:case 42:case 47:case 37:case 94:return this.scanOperator(i,String.fromCharCode(r));case 63:return this.scanQuestion(i);case 60:case 62:return this.scanComplexOperator(i,String.fromCharCode(r),61,"=");case 33:case 61:return this.scanComplexOperator(i,String.fromCharCode(r),61,"=",61,"=");case 38:return this.scanComplexOperator(i,"&",38,"&");case 124:return this.scanComplexOperator(i,"|",124,"|");case 160:for(;ct(this.peek);)this.advance();return this.scanToken()}return this.advance(),this.error(`Unexpected character [${String.fromCharCode(r)}]`,0)}scanCharacter(e,t){return this.advance(),ft(e,this.index,t)}scanOperator(e,t){return this.advance(),Fe(e,this.index,t)}scanComplexOperator(e,t,r,n,i,a){this.advance();let h=t;return this.peek==r&&(this.advance(),h+=n),i!=null&&this.peek==i&&(this.advance(),h+=a),Fe(e,this.index,h)}scanIdentifier(){let e=this.index;for(this.advance();vt(this.peek);)this.advance();let t=this.input.substring(e,this.index);return Ir.indexOf(t)>-1?Lr(e,this.index,t):Pr(e,this.index,t)}scanPrivateIdentifier(){let e=this.index;if(this.advance(),!dt(this.peek))return this.error("Invalid character [#]",-1);for(;vt(this.peek);)this.advance();let t=this.input.substring(e,this.index);return Rr(e,this.index,t)}scanNumber(e){let t=this.index===e,r=!1;for(this.advance();;){if(!B(this.peek))if(this.peek===95){if(!B(this.input.charCodeAt(this.index-1))||!B(this.input.charCodeAt(this.index+1)))return this.error("Invalid numeric separator",0);r=!0}else if(this.peek===46)t=!1;else if(Kr(this.peek)){if(this.advance(),Tr(this.peek)&&this.advance(),!B(this.peek))return this.error("Invalid exponent",-1);t=!1}else break;this.advance()}let n=this.input.substring(e,this.index);r&&(n=n.replace(/_/g,""));let i=t?Fr(n):parseFloat(n);return _r(e,this.index,i)}scanString(){let e=this.index,t=this.peek;this.advance();let r="",n=this.index,i=this.input;for(;this.peek!=t;)if(this.peek==92){r+=i.substring(n,this.index);let h;if(this.advance(),this.peek==117){let v=i.substring(this.index+1,this.index+5);if(/^[0-9a-f]+$/i.test(v))h=parseInt(v,16);else return this.error(`Invalid unicode escape [\\u${v}]`,0);for(let f=0;f<5;f++)this.advance()}else h=Mr(this.peek),this.advance();r+=String.fromCharCode(h),n=this.index}else{if(this.peek==0)return this.error("Unterminated quote",0);this.advance()}let a=i.substring(n,this.index);return this.advance(),br(e,this.index,r+a)}scanQuestion(e){this.advance();let t="?";return(this.peek===63||this.peek===46)&&(t+=this.peek===46?".":"?",this.advance()),Fe(e,this.index,t)}error(e,t){let r=this.index+t;return Br(r,this.index,`Lexer Error: ${e} at column ${r} in expression [${this.input}]`)}}});function wt(s,e){if(e!=null&&!(Array.isArray(e)&&e.length==2))throw new Error(`Expected '${s}' to be an array, [start, end].`);if(e!=null){let t=e[0],r=e[1];Ur.forEach(n=>{if(n.test(t)||n.test(r))throw new Error(`['${t}', '${r}'] contains unusable interpolation symbol.`)})}}var Ur,yt=E(()=>{Ur=[/^\s*$/,/[<>]/,/^[{}]$/,/&(#|[a-z])/i,/^\/\//]});var ge,U,Et=E(()=>{yt();ge=class{static fromArray(e){return e?(wt("interpolation",e),new ge(e[0],e[1])):U}constructor(e,t){this.start=e,this.end=t}},U=new ge("{{","}}")});function Gr(s){let e=new Map,t=0,r=0,n=0;for(;n<s.length;){let i=s[n];if(i.type===9){let[a,h]=i.parts;t+=h.length,r+=a.length}else{let a=i.parts.reduce((h,v)=>h+v.length,0);r+=a,t+=a}e.set(r,t),n++}return e}var Ve,We,me,pe,G,Qe,At=E(()=>{Te();Et();Be();De();Ve=class{constructor(e,t,r){this.strings=e,this.expressions=t,this.offsets=r}},We=class{constructor(e,t,r){this.templateBindings=e,this.warnings=t,this.errors=r}},me=class{constructor(e){this._lexer=e,this.errors=[]}parseAction(e,t,r,n,i=U){this._checkNoInterpolation(e,r,i);let a=this._stripComments(e),h=this._lexer.tokenize(a),v=1;t&&(v|=2);let f=new G(e,r,n,h,v,this.errors,0).parseChain();return new L(f,e,r,n,this.errors)}parseBinding(e,t,r,n=U){let i=this._parseBindingAst(e,t,r,n);return new L(i,e,t,r,this.errors)}checkSimpleExpression(e){let t=new Qe;return e.visit(t),t.errors}parseSimpleBinding(e,t,r,n=U){let i=this._parseBindingAst(e,t,r,n),a=this.checkSimpleExpression(i);return a.length>0&&this._reportError(`Host binding expression cannot contain ${a.join(" ")}`,e,t),new L(i,e,t,r,this.errors)}_reportError(e,t,r,n){this.errors.push(new D(e,t,r,n))}_parseBindingAst(e,t,r,n){this._checkNoInterpolation(e,t,n);let i=this._stripComments(e),a=this._lexer.tokenize(i);return new G(e,t,r,a,0,this.errors,0).parseChain()}parseTemplateBindings(e,t,r,n,i){let a=this._lexer.tokenize(t);return new G(t,r,i,a,0,this.errors,0).parseTemplateBindings({source:e,span:new R(n,n+e.length)})}parseInterpolation(e,t,r,n,i=U){let{strings:a,expressions:h,offsets:v}=this.splitInterpolation(e,t,n,i);if(h.length===0)return null;let f=[];for(let w=0;w<h.length;++w){let I=h[w].text,O=this._stripComments(I),y=this._lexer.tokenize(O),m=new G(e,t,r,y,0,this.errors,v[w]).parseChain();f.push(m)}return this.createInterpolationAst(a.map(w=>w.text),f,e,t,r)}parseInterpolationExpression(e,t,r){let n=this._stripComments(e),i=this._lexer.tokenize(n),a=new G(e,t,r,i,0,this.errors,0).parseChain(),h=["",""];return this.createInterpolationAst(h,[a],e,t,r)}createInterpolationAst(e,t,r,n,i){let a=new b(0,r.length),h=new Ee(a,a.toAbsolute(i),e,t);return new L(h,r,n,i,this.errors)}splitInterpolation(e,t,r,n=U){let i=[],a=[],h=[],v=r?Gr(r):null,f=0,w=!1,I=!1,{start:O,end:y}=n;for(;f<e.length;)if(w){let m=f,c=m+O.length,o=this._getInterpolationEndIndex(e,y,c);if(o===-1){w=!1,I=!0;break}let x=o+y.length,p=e.substring(c,o);p.trim().length===0&&this._reportError("Blank expressions are not allowed in interpolated strings",e,`at column ${f} in`,t),a.push({text:p,start:m,end:x});let g=((v==null?void 0:v.get(m))??m)+O.length;h.push(g),f=x,w=!1}else{let m=f;f=e.indexOf(O,f),f===-1&&(f=e.length);let c=e.substring(m,f);i.push({text:c,start:m,end:f}),w=!0}if(!w)if(I){let m=i[i.length-1];m.text+=e.substring(f),m.end=e.length}else i.push({text:e.substring(f),start:f,end:e.length});return new Ve(i,a,h)}wrapLiteralPrimitive(e,t,r){let n=new b(0,e==null?0:e.length);return new L(new $(n,n.toAbsolute(r),e),e,t,r,this.errors)}_stripComments(e){let t=this._commentStart(e);return t!=null?e.substring(0,t):e}_commentStart(e){let t=null;for(let r=0;r<e.length-1;r++){let n=e.charCodeAt(r),i=e.charCodeAt(r+1);if(n===47&&i==47&&t==null)return r;t===n?t=null:t==null&&Ke(n)&&(t=n)}return null}_checkNoInterpolation(e,t,{start:r,end:n}){let i=-1,a=-1;for(let h of this._forEachUnquotedChar(e,0))if(i===-1)e.startsWith(r)&&(i=h);else if(a=this._getInterpolationEndIndex(e,n,h),a>-1)break;i>-1&&a>-1&&this._reportError(`Got interpolation (${r}${n}) where expression was expected`,e,`at column ${i} in`,t)}_getInterpolationEndIndex(e,t,r){for(let n of this._forEachUnquotedChar(e,r)){if(e.startsWith(t,n))return n;if(e.startsWith("//",n))return e.indexOf(t,n)}return-1}*_forEachUnquotedChar(e,t){let r=null,n=0;for(let i=t;i<e.length;i++){let a=e[i];Ke(e.charCodeAt(i))&&(r===null||r===a)&&n%2===0?r=r===null?a:null:r===null&&(yield i),n=a==="\\"?n+1:0}}};(function(s){s[s.None=0]="None",s[s.Writable=1]="Writable"})(pe||(pe={}));G=class{constructor(e,t,r,n,i,a,h){this.input=e,this.location=t,this.absoluteOffset=r,this.tokens=n,this.parseFlags=i,this.errors=a,this.offset=h,this.rparensExpected=0,this.rbracketsExpected=0,this.rbracesExpected=0,this.context=pe.None,this.sourceSpanCache=new Map,this.index=0}peek(e){let t=this.index+e;return t<this.tokens.length?this.tokens[t]:Ne}get next(){return this.peek(0)}get atEOF(){return this.index>=this.tokens.length}get inputIndex(){return this.atEOF?this.currentEndIndex:this.next.index+this.offset}get currentEndIndex(){return this.index>0?this.peek(-1).end+this.offset:this.tokens.length===0?this.input.length+this.offset:this.next.index+this.offset}get currentAbsoluteOffset(){return this.absoluteOffset+this.inputIndex}span(e,t){let r=this.currentEndIndex;if(t!==void 0&&t>this.currentEndIndex&&(r=t),e>r){let n=r;r=e,e=n}return new b(e,r)}sourceSpan(e,t){let r=`${e}@${this.inputIndex}:${t}`;return this.sourceSpanCache.has(r)||this.sourceSpanCache.set(r,this.span(e,t).toAbsolute(this.absoluteOffset)),this.sourceSpanCache.get(r)}advance(){this.index++}withContext(e,t){this.context|=e;let r=t();return this.context^=e,r}consumeOptionalCharacter(e){return this.next.isCharacter(e)?(this.advance(),!0):!1}peekKeywordLet(){return this.next.isKeywordLet()}peekKeywordAs(){return this.next.isKeywordAs()}expectCharacter(e){this.consumeOptionalCharacter(e)||this.error(`Missing expected ${String.fromCharCode(e)}`)}consumeOptionalOperator(e){return this.next.isOperator(e)?(this.advance(),!0):!1}expectOperator(e){this.consumeOptionalOperator(e)||this.error(`Missing expected operator ${e}`)}prettyPrintToken(e){return e===Ne?"end of input":`token ${e}`}expectIdentifierOrKeyword(){let e=this.next;return!e.isIdentifier()&&!e.isKeyword()?(e.isPrivateIdentifier()?this._reportErrorForPrivateIdentifier(e,"expected identifier or keyword"):this.error(`Unexpected ${this.prettyPrintToken(e)}, expected identifier or keyword`),null):(this.advance(),e.toString())}expectIdentifierOrKeywordOrString(){let e=this.next;return!e.isIdentifier()&&!e.isKeyword()&&!e.isString()?(e.isPrivateIdentifier()?this._reportErrorForPrivateIdentifier(e,"expected identifier, keyword or string"):this.error(`Unexpected ${this.prettyPrintToken(e)}, expected identifier, keyword, or string`),""):(this.advance(),e.toString())}parseChain(){let e=[],t=this.inputIndex;for(;this.index<this.tokens.length;){let r=this.parsePipe();if(e.push(r),this.consumeOptionalCharacter(59))for(this.parseFlags&1||this.error("Binding expression cannot contain chained expression");this.consumeOptionalCharacter(59););else if(this.index<this.tokens.length){let n=this.index;if(this.error(`Unexpected token '${this.next}'`),this.index===n)break}}if(e.length===0){let r=this.offset,n=this.offset+this.input.length;return new A(this.span(r,n),this.sourceSpan(r,n))}return e.length==1?e[0]:new W(this.span(t),this.sourceSpan(t),e)}parsePipe(){let e=this.inputIndex,t=this.parseExpression();if(this.consumeOptionalOperator("|")){this.parseFlags&1&&this.error("Cannot have a pipe in an action expression");do{let r=this.inputIndex,n=this.expectIdentifierOrKeyword(),i,a;n!==null?i=this.sourceSpan(r):(n="",a=this.next.index!==-1?this.next.index:this.input.length+this.offset,i=new b(a,a).toAbsolute(this.absoluteOffset));let h=[];for(;this.consumeOptionalCharacter(58);)h.push(this.parseExpression());t=new Z(this.span(e),this.sourceSpan(e,a),t,n,h,i)}while(this.consumeOptionalOperator("|"))}return t}parseExpression(){return this.parseConditional()}parseConditional(){let e=this.inputIndex,t=this.parseLogicalOr();if(this.consumeOptionalOperator("?")){let r=this.parsePipe(),n;if(this.consumeOptionalCharacter(58))n=this.parsePipe();else{let i=this.inputIndex,a=this.input.substring(e,i);this.error(`Conditional expression ${a} requires all 3 expressions`),n=new A(this.span(e),this.sourceSpan(e))}return new Q(this.span(e),this.sourceSpan(e),t,r,n)}else return t}parseLogicalOr(){let e=this.inputIndex,t=this.parseLogicalAnd();for(;this.consumeOptionalOperator("||");){let r=this.parseLogicalAnd();t=new C(this.span(e),this.sourceSpan(e),"||",t,r)}return t}parseLogicalAnd(){let e=this.inputIndex,t=this.parseNullishCoalescing();for(;this.consumeOptionalOperator("&&");){let r=this.parseNullishCoalescing();t=new C(this.span(e),this.sourceSpan(e),"&&",t,r)}return t}parseNullishCoalescing(){let e=this.inputIndex,t=this.parseEquality();for(;this.consumeOptionalOperator("??");){let r=this.parseEquality();t=new C(this.span(e),this.sourceSpan(e),"??",t,r)}return t}parseEquality(){let e=this.inputIndex,t=this.parseRelational();for(;this.next.type==d.Operator;){let r=this.next.strValue;switch(r){case"==":case"===":case"!=":case"!==":this.advance();let n=this.parseRelational();t=new C(this.span(e),this.sourceSpan(e),r,t,n);continue}break}return t}parseRelational(){let e=this.inputIndex,t=this.parseAdditive();for(;this.next.type==d.Operator;){let r=this.next.strValue;switch(r){case"<":case">":case"<=":case">=":this.advance();let n=this.parseAdditive();t=new C(this.span(e),this.sourceSpan(e),r,t,n);continue}break}return t}parseAdditive(){let e=this.inputIndex,t=this.parseMultiplicative();for(;this.next.type==d.Operator;){let r=this.next.strValue;switch(r){case"+":case"-":this.advance();let n=this.parseMultiplicative();t=new C(this.span(e),this.sourceSpan(e),r,t,n);continue}break}return t}parseMultiplicative(){let e=this.inputIndex,t=this.parsePrefix();for(;this.next.type==d.Operator;){let r=this.next.strValue;switch(r){case"*":case"%":case"/":this.advance();let n=this.parsePrefix();t=new C(this.span(e),this.sourceSpan(e),r,t,n);continue}break}return t}parsePrefix(){if(this.next.type==d.Operator){let e=this.inputIndex,t=this.next.strValue,r;switch(t){case"+":return this.advance(),r=this.parsePrefix(),P.createPlus(this.span(e),this.sourceSpan(e),r);case"-":return this.advance(),r=this.parsePrefix(),P.createMinus(this.span(e),this.sourceSpan(e),r);case"!":return this.advance(),r=this.parsePrefix(),new ee(this.span(e),this.sourceSpan(e),r)}}return this.parseCallChain()}parseCallChain(){let e=this.inputIndex,t=this.parsePrimary();for(;;)if(this.consumeOptionalCharacter(46))t=this.parseAccessMember(t,e,!1);else if(this.consumeOptionalOperator("?."))this.consumeOptionalCharacter(40)?t=this.parseCall(t,e,!0):t=this.consumeOptionalCharacter(91)?this.parseKeyedReadOrWrite(t,e,!0):this.parseAccessMember(t,e,!0);else if(this.consumeOptionalCharacter(91))t=this.parseKeyedReadOrWrite(t,e,!1);else if(this.consumeOptionalCharacter(40))t=this.parseCall(t,e,!1);else if(this.consumeOptionalOperator("!"))t=new te(this.span(e),this.sourceSpan(e),t);else return t}parsePrimary(){let e=this.inputIndex;if(this.consumeOptionalCharacter(40)){this.rparensExpected++;let t=this.parsePipe();return this.rparensExpected--,this.expectCharacter(41),t}else{if(this.next.isKeywordNull())return this.advance(),new $(this.span(e),this.sourceSpan(e),null);if(this.next.isKeywordUndefined())return this.advance(),new $(this.span(e),this.sourceSpan(e),void 0);if(this.next.isKeywordTrue())return this.advance(),new $(this.span(e),this.sourceSpan(e),!0);if(this.next.isKeywordFalse())return this.advance(),new $(this.span(e),this.sourceSpan(e),!1);if(this.next.isKeywordThis())return this.advance(),new ye(this.span(e),this.sourceSpan(e));if(this.consumeOptionalCharacter(91)){this.rbracketsExpected++;let t=this.parseExpressionList(93);return this.rbracketsExpected--,this.expectCharacter(93),new J(this.span(e),this.sourceSpan(e),t)}else{if(this.next.isCharacter(123))return this.parseLiteralMap();if(this.next.isIdentifier())return this.parseAccessMember(new _(this.span(e),this.sourceSpan(e)),e,!1);if(this.next.isNumber()){let t=this.next.toNumber();return this.advance(),new $(this.span(e),this.sourceSpan(e),t)}else if(this.next.isString()){let t=this.next.toString();return this.advance(),new $(this.span(e),this.sourceSpan(e),t)}else return this.next.isPrivateIdentifier()?(this._reportErrorForPrivateIdentifier(this.next,null),new A(this.span(e),this.sourceSpan(e))):this.index>=this.tokens.length?(this.error(`Unexpected end of expression: ${this.input}`),new A(this.span(e),this.sourceSpan(e))):(this.error(`Unexpected token ${this.next}`),new A(this.span(e),this.sourceSpan(e)))}}}parseExpressionList(e){let t=[];do if(!this.next.isCharacter(e))t.push(this.parsePipe());else break;while(this.consumeOptionalCharacter(44));return t}parseLiteralMap(){let e=[],t=[],r=this.inputIndex;if(this.expectCharacter(123),!this.consumeOptionalCharacter(125)){this.rbracesExpected++;do{let n=this.inputIndex,i=this.next.isString(),a=this.expectIdentifierOrKeywordOrString();if(e.push({key:a,quoted:i}),i)this.expectCharacter(58),t.push(this.parsePipe());else if(this.consumeOptionalCharacter(58))t.push(this.parsePipe());else{let h=this.span(n),v=this.sourceSpan(n);t.push(new K(h,v,v,new _(h,v),a))}}while(this.consumeOptionalCharacter(44)&&!this.next.isCharacter(125));this.rbracesExpected--,this.expectCharacter(125)}return new Y(this.span(r),this.sourceSpan(r),e,t)}parseAccessMember(e,t,r){let n=this.inputIndex,i=this.withContext(pe.Writable,()=>{let v=this.expectIdentifierOrKeyword()??"";return v.length===0&&this.error("Expected identifier for property access",e.span.end),v}),a=this.sourceSpan(n),h;if(r)this.consumeOptionalAssignment()?(this.error("The '?.' operator cannot be used in the assignment"),h=new A(this.span(t),this.sourceSpan(t))):h=new H(this.span(t),this.sourceSpan(t),a,e,i);else if(this.consumeOptionalAssignment()){if(!(this.parseFlags&1))return this.error("Bindings cannot contain assignments"),new A(this.span(t),this.sourceSpan(t));let v=this.parseConditional();h=new j(this.span(t),this.sourceSpan(t),a,e,i,v)}else h=new K(this.span(t),this.sourceSpan(t),a,e,i);return h}parseCall(e,t,r){let n=this.inputIndex;this.rparensExpected++;let i=this.parseCallArguments(),a=this.span(n,this.inputIndex).toAbsolute(this.absoluteOffset);this.expectCharacter(41),this.rparensExpected--;let h=this.span(t),v=this.sourceSpan(t);return r?new se(h,v,e,i,a):new re(h,v,e,i,a)}consumeOptionalAssignment(){return this.parseFlags&2&&this.next.isOperator("!")&&this.peek(1).isOperator("=")?(this.advance(),this.advance(),!0):this.consumeOptionalOperator("=")}parseCallArguments(){if(this.next.isCharacter(41))return[];let e=[];do e.push(this.parsePipe());while(this.consumeOptionalCharacter(44));return e}expectTemplateBindingKey(){let e="",t=!1,r=this.currentAbsoluteOffset;do e+=this.expectIdentifierOrKeywordOrString(),t=this.consumeOptionalOperator("-"),t&&(e+="-");while(t);return{source:e,span:new R(r,r+e.length)}}parseTemplateBindings(e){let t=[];for(t.push(...this.parseDirectiveKeywordBindings(e));this.index<this.tokens.length;){let r=this.parseLetBinding();if(r)t.push(r);else{let n=this.expectTemplateBindingKey(),i=this.parseAsBinding(n);i?t.push(i):(n.source=e.source+n.source.charAt(0).toUpperCase()+n.source.substring(1),t.push(...this.parseDirectiveKeywordBindings(n)))}this.consumeStatementTerminator()}return new We(t,[],this.errors)}parseKeyedReadOrWrite(e,t,r){return this.withContext(pe.Writable,()=>{this.rbracketsExpected++;let n=this.parsePipe();if(n instanceof A&&this.error("Key access cannot be empty"),this.rbracketsExpected--,this.expectCharacter(93),this.consumeOptionalOperator("="))if(r)this.error("The '?.' operator cannot be used in the assignment");else{let i=this.parseConditional();return new X(this.span(t),this.sourceSpan(t),e,n,i)}else return r?new q(this.span(t),this.sourceSpan(t),e,n):new z(this.span(t),this.sourceSpan(t),e,n);return new A(this.span(t),this.sourceSpan(t))})}parseDirectiveKeywordBindings(e){let t=[];this.consumeOptionalCharacter(58);let r=this.getDirectiveBoundTarget(),n=this.currentAbsoluteOffset,i=this.parseAsBinding(e);i||(this.consumeStatementTerminator(),n=this.currentAbsoluteOffset);let a=new R(e.span.start,n);return t.push(new ne(a,e,r)),i&&t.push(i),t}getDirectiveBoundTarget(){if(this.next===Ne||this.peekKeywordAs()||this.peekKeywordLet())return null;let e=this.parsePipe(),{start:t,end:r}=e.span,n=this.input.substring(t,r);return new L(e,n,this.location,this.absoluteOffset+t,this.errors)}parseAsBinding(e){if(!this.peekKeywordAs())return null;this.advance();let t=this.expectTemplateBindingKey();this.consumeStatementTerminator();let r=new R(e.span.start,this.currentAbsoluteOffset);return new T(r,t,e)}parseLetBinding(){if(!this.peekKeywordLet())return null;let e=this.currentAbsoluteOffset;this.advance();let t=this.expectTemplateBindingKey(),r=null;this.consumeOptionalOperator("=")&&(r=this.expectTemplateBindingKey()),this.consumeStatementTerminator();let n=new R(e,this.currentAbsoluteOffset);return new T(n,t,r)}consumeStatementTerminator(){this.consumeOptionalCharacter(59)||this.consumeOptionalCharacter(44)}error(e,t=null){this.errors.push(new D(e,this.input,this.locationText(t),this.location)),this.skip()}locationText(e=null){return e==null&&(e=this.index),e<this.tokens.length?`at column ${this.tokens[e].index+1} in`:"at the end of the expression"}_reportErrorForPrivateIdentifier(e,t){let r=`Private identifiers are not supported. Unexpected private identifier: ${e}`;t!==null&&(r+=`, ${t}`),this.error(r)}skip(){let e=this.next;for(;this.index<this.tokens.length&&!e.isCharacter(59)&&!e.isOperator("|")&&(this.rparensExpected<=0||!e.isCharacter(41))&&(this.rbracesExpected<=0||!e.isCharacter(125))&&(this.rbracketsExpected<=0||!e.isCharacter(93))&&(!(this.context&pe.Writable)||!e.isOperator("="));)this.next.isError()&&this.errors.push(new D(this.next.toString(),this.input,this.locationText(),this.location)),this.advance(),e=this.next}},Qe=class extends Ae{constructor(){super(...arguments),this.errors=[]}visitPipe(){this.errors.push("pipes")}}});var ke=E(()=>{Be();De();At()});function Ot(){return new me(new fe)}function qe(s,e){let t=Ot(),{astInput:r,comments:n}=Vr(s,t),{ast:i,errors:a}=e(r,t);return Rt(a),{ast:i,comments:n}}function Nt(s){return qe(s,(e,t)=>t.parseBinding(e,...ze))}function kt(s){return qe(s,(e,t)=>t.parseAction(e,!1,...ze))}function It(s){return qe(s,(e,t)=>{let r=t.parseInterpolationExpression(e,...ze);return r.ast=r.ast.expressions[0],r})}function Pt(s){let e=Ot(),{templateBindings:t,errors:r}=e.parseTemplateBindings(He,s,Ct,je,je);return Rt(r),t}function Rt(s){if(s.length!==0){let[{message:e}]=s;throw new SyntaxError(e.replace(/^Parser Error: | at column \d+ in [^]*$/g,""))}}function Vr(s,e){let t=e._commentStart(s);return t===null?{astInput:s,comments:[]}:{astInput:s.slice(0,t),comments:[{type:"Comment",value:s.slice(t+2),sourceSpan:{start:t,end:s.length}}]}}function Lt(s){return s instanceof P?"Unary":s instanceof C?"Binary":s instanceof Z?"BindingPipe":s instanceof re?"Call":s instanceof W?"Chain":s instanceof Q?"Conditional":s instanceof A?"EmptyExpr":s instanceof _?"ImplicitReceiver":s instanceof z?"KeyedRead":s instanceof q?"SafeKeyedRead":s instanceof X?"KeyedWrite":s instanceof J?"LiteralArray":s instanceof Y?"LiteralMap":s instanceof $?"LiteralPrimitive":s instanceof te?"NonNullAssert":s instanceof ee?"PrefixNot":s instanceof K?"PropertyRead":s instanceof j?"PropertyWrite":s instanceof se?"SafeCall":s instanceof H?"SafePropertyRead":s.type}function $t({start:s,end:e},t){let r=s,n=e;for(;n!==r&&/\s/.test(t[n-1]);)n--;for(;r!==n&&/\s/.test(t[r]);)r++;return{start:r,end:n}}function Wr({start:s,end:e},t){let r=s,n=e;for(;n!==t.length&&/\s/.test(t[n]);)n++;for(;r!==0&&/\s/.test(t[r-1]);)r--;return{start:r,end:n}}function Qr(s,e){return e[s.start-1]==="("&&e[s.end]===")"?{start:s.start-1,end:s.end+1}:s}function bt(s,e,t){let r=0,n={start:s.start,end:s.end};for(;;){let i=Wr(n,e),a=Qr(i,e);if(i.start===a.start&&i.end===a.end)break;n.start=a.start,n.end=a.end,r++}return{hasParens:(t?r-1:r)!==0,outerSpan:$t(t?{start:n.start+1,end:n.end-1}:n,e),innerSpan:$t(s,e)}}function _t(s,e,t){let r=e;for(;!s.test(t[r]);)if(--r<0)throw new Error(`Cannot find front char ${s} from index ${e} in ${JSON.stringify(t)}`);return r}function Ie(s,e,t){let r=e;for(;!s.test(t[r]);)if(++r>=t.length)throw new Error(`Cannot find back char ${s} from index ${e} in ${JSON.stringify(t)}`);return r}function Bt(s){return s.slice(0,1).toLowerCase()+s.slice(1)}function Kt(s){return s.length===0?void 0:s[s.length-1]}var Ct,He,je,ze,Pe=E(()=>{ke();ke();Ct="angular-estree-parser",He="NgEstreeParser",je=0,ze=[Ct,je]});function Re(s,e,t=!1,r=!1){if(!t){let{start:h,end:v}=s;return{start:h,end:v,loc:{start:e.locator.locationForIndex(h),end:e.locator.locationForIndex(v)}}}let{outerSpan:n,innerSpan:i,hasParens:a}=bt(s,e.text,r);return{start:i.start,end:i.end,loc:{start:e.locator.locationForIndex(i.start),end:e.locator.locationForIndex(i.end)},...a&&{extra:{parenthesized:!0,parenStart:n.start,parenEnd:n.end}}}}var ue,Xe=E(()=>{Pe();ue=(s,e,t=!1)=>{let r=Lt(s);switch(r){case"Unary":{let{operator:c,expr:o}=s,x=n(o);return a("UnaryExpression",{prefix:!0,argument:x,operator:c},s.sourceSpan,{hasParentParens:t})}case"Binary":{let{left:c,operation:o,right:x}=s,p=n(c),u=n(x);return a(o==="&&"||o==="||"||o==="??"?"LogicalExpression":"BinaryExpression",{left:p,right:u,operator:o},{start:y(p),end:m(u)},{hasParentParens:t})}case"BindingPipe":{let{exp:c,name:o,args:x}=s,p=n(c),u=f(/\S/,f(/\|/,m(p))+1),g=a("Identifier",{name:o},{start:u,end:u+o.length}),l=x.map(n);return a("NGPipeExpression",{left:p,right:g,arguments:l},{start:y(p),end:m(l.length===0?g:Kt(l))},{hasParentParens:t})}case"Chain":{let{expressions:c}=s;return a("NGChainedExpression",{expressions:c.map(n)},s.sourceSpan,{hasParentParens:t})}case"Comment":{let{value:c}=s;return a("CommentLine",{value:c},s.sourceSpan,{processSpan:!1})}case"Conditional":{let{condition:c,trueExp:o,falseExp:x}=s,p=n(c),u=n(o),g=n(x);return a("ConditionalExpression",{test:p,consequent:u,alternate:g},{start:y(p),end:m(g)},{hasParentParens:t})}case"EmptyExpr":return a("NGEmptyExpression",{},s.sourceSpan,{hasParentParens:t});case"ImplicitReceiver":return a("ThisExpression",{},s.sourceSpan,{hasParentParens:t});case"KeyedRead":case"SafeKeyedRead":{let c=r==="SafeKeyedRead",{key:o}=s,x=Object.prototype.hasOwnProperty.call(s,"receiver")?s.receiver:s.obj,p=n(o);return h(x,p,{computed:!0,optional:c},{end:s.sourceSpan.end,hasParentParens:t})}case"LiteralArray":{let{expressions:c}=s;return a("ArrayExpression",{elements:c.map(n)},s.sourceSpan,{hasParentParens:t})}case"LiteralMap":{let{keys:c,values:o}=s,x=o.map(u=>n(u)),p=c.map(({key:u,quoted:g},l)=>{let N=x[l],le=y(N),et=m(N),be=f(/\S/,l===0?s.sourceSpan.start+1:f(/,/,m(x[l-1]))+1),qt=le===be?et:v(/\S/,v(/:/,le-1)-1)+1,tt={start:be,end:qt},Se=g?a("StringLiteral",{value:u},tt):a("Identifier",{name:u},tt),Xt=Se.end<Se.start||be===le;return a("ObjectProperty",{key:Se,value:N,shorthand:Xt,computed:!1},{start:y(Se),end:et})});return a("ObjectExpression",{properties:p},s.sourceSpan,{hasParentParens:t})}case"LiteralPrimitive":{let{value:c}=s;switch(typeof c){case"boolean":return a("BooleanLiteral",{value:c},s.sourceSpan,{hasParentParens:t});case"number":return a("NumericLiteral",{value:c},s.sourceSpan,{hasParentParens:t});case"object":return a("NullLiteral",{},s.sourceSpan,{hasParentParens:t});case"string":return a("StringLiteral",{value:c},s.sourceSpan,{hasParentParens:t});case"undefined":return a("Identifier",{name:"undefined"},s.sourceSpan,{hasParentParens:t});default:throw new Error(`Unexpected LiteralPrimitive value type ${typeof c}`)}}case"Call":case"SafeCall":{let c=r==="SafeCall",{receiver:o,args:x}=s,p=x.length===1?[i(x[0])]:x.map(n),u=n(o),g=I(u),l=c||g?"OptionalCallExpression":"CallExpression";return a(l,{callee:u,arguments:p,optional:l==="OptionalCallExpression"?c:void 0},{start:y(u),end:s.sourceSpan.end},{hasParentParens:t})}case"NonNullAssert":{let{expression:c}=s,o=n(c);return a("TSNonNullExpression",{expression:o},{start:y(o),end:s.sourceSpan.end},{hasParentParens:t})}case"PrefixNot":{let{expression:c}=s,o=n(c);return a("UnaryExpression",{prefix:!0,operator:"!",argument:o},{start:s.sourceSpan.start,end:m(o)},{hasParentParens:t})}case"PropertyRead":case"SafePropertyRead":{let c=r==="SafePropertyRead",{receiver:o,name:x}=s,p=v(/\S/,s.sourceSpan.end-1)+1,u=a("Identifier",{name:x},{start:p-x.length,end:p},w(o)?{hasParentParens:t}:{});return h(o,u,{computed:!1,optional:c},{hasParentParens:t})}case"KeyedWrite":{let{key:c,value:o}=s,x=Object.prototype.hasOwnProperty.call(s,"receiver")?s.receiver:s.obj,p=n(c),u=n(o),g=h(x,p,{computed:!0,optional:!1},{end:f(/\]/,m(p))+1});return a("AssignmentExpression",{left:g,operator:"=",right:u},{start:y(g),end:m(u)},{hasParentParens:t})}case"PropertyWrite":{let{receiver:c,name:o,value:x}=s,p=n(x),u=v(/\S/,v(/=/,y(p)-1)-1)+1,g=a("Identifier",{name:o},{start:u-o.length,end:u}),l=h(c,g,{computed:!1,optional:!1});return a("AssignmentExpression",{left:l,operator:"=",right:p},{start:y(l),end:m(p)},{hasParentParens:t})}default:throw new Error(`Unexpected node ${r}`)}function n(c){return ue(c,e)}function i(c){return ue(c,e,!0)}function a(c,o,x,{processSpan:p=!0,hasParentParens:u=!1}={}){let g={type:c,...Re(x,e,p,u),...o};switch(c){case"NumericLiteral":{let l=g;l.extra={...l.extra,raw:e.text.slice(l.start,l.end),rawValue:l.value};break}case"StringLiteral":{let l=g;l.extra={...l.extra,raw:e.text.slice(l.start,l.end),rawValue:l.value};break}case"ObjectProperty":{let l=g;l.shorthand&&(l.extra={...l.extra,shorthand:l.shorthand});break}}return g}function h(c,o,x,{end:p=m(o),hasParentParens:u=!1}={}){if(w(c)||c.sourceSpan.start===o.start)return o;let g=n(c),l=I(g);return a(x.optional||l?"OptionalMemberExpression":"MemberExpression",{object:g,property:o,computed:x.computed,...x.optional?{optional:!0}:l?{optional:!1}:null},{start:y(g),end:p},{hasParentParens:u})}function v(c,o){return _t(c,o,e.text)}function f(c,o){return Ie(c,o,e.text)}function w(c){return c.sourceSpan.start>=c.sourceSpan.end||/^\s+$/.test(e.text.slice(c.sourceSpan.start,c.sourceSpan.end))}function I(c){return(c.type==="OptionalCallExpression"||c.type==="OptionalMemberExpression")&&!O(c)}function O(c){return c.extra&&c.extra.parenthesized}function y(c){return O(c)?c.extra.parenStart:c.start}function m(c){return O(c)?c.extra.parenEnd:c.end}}});function Tt(s,e){s.forEach(y);let[t]=s,{key:r}=t,n=e.text.slice(t.sourceSpan.start,t.sourceSpan.end).trim().length===0?s.slice(1):s,i=[],a=null;for(let o=0;o<n.length;o++){let x=n[o];if(a&&I(a)&&O(x)&&x.value&&x.value.source===a.key.source){let p=f("NGMicrosyntaxKey",{name:x.key.source},x.key.span),u=(N,le)=>({...N,...Re({start:N.start,end:le},e)}),g=N=>({...u(N,p.end),alias:p}),l=i.pop();if(l.type==="NGMicrosyntaxExpression")i.push(g(l));else if(l.type==="NGMicrosyntaxKeyedExpression"){let N=g(l.expression);i.push(u({...l,expression:N},N.end))}else throw new Error(`Unexpected type ${l.type}`)}else i.push(h(x,o));a=x}return f("NGMicrosyntax",{body:i},i.length===0?s[0].sourceSpan:{start:i[0].start,end:i[i.length-1].end});function h(o,x){if(I(o)){let{key:p,value:u}=o;return u?x===0?f("NGMicrosyntaxExpression",{expression:v(u.ast),alias:null},u.sourceSpan):f("NGMicrosyntaxKeyedExpression",{key:f("NGMicrosyntaxKey",{name:w(p.source)},p.span),expression:f("NGMicrosyntaxExpression",{expression:v(u.ast),alias:null},u.sourceSpan)},{start:p.span.start,end:u.sourceSpan.end}):f("NGMicrosyntaxKey",{name:w(p.source)},p.span)}else{let{key:p,sourceSpan:u}=o;if(/^let\s$/.test(e.text.slice(u.start,u.start+4))){let{value:l}=o;return f("NGMicrosyntaxLet",{key:f("NGMicrosyntaxKey",{name:p.source},p.span),value:l?f("NGMicrosyntaxKey",{name:l.source},l.span):null},{start:u.start,end:l?l.span.end:p.span.end})}else{let l=c(o);return f("NGMicrosyntaxAs",{key:f("NGMicrosyntaxKey",{name:l.source},l.span),alias:f("NGMicrosyntaxKey",{name:p.source},p.span)},{start:l.span.start,end:p.span.end})}}}function v(o){return ue(o,e)}function f(o,x,p,u=!0){return{type:o,...Re(p,e,u),...x}}function w(o){return Bt(o.slice(r.source.length))}function I(o){return o instanceof ne}function O(o){return o instanceof T}function y(o){m(o.key.span),O(o)&&o.value&&m(o.value.span)}function m(o){if(e.text[o.start]!=='"'&&e.text[o.start]!=="'")return;let x=e.text[o.start],p=!1;for(let u=o.start+1;u<e.text.length;u++)switch(e.text[u]){case x:if(!p){o.end=u+1;return}default:p=!1;break;case"\\":p=!p;break}}function c(o){if(!o.value||o.value.source!==He)return o.value;let x=Ie(/\S/,o.sourceSpan.start,e.text);return{source:"$implicit",span:{start:x,end:x}}}}var Mt=E(()=>{ke();Xe();Pe()});function Ze(s,e){let{ast:t,comments:r}=e(s),n=new xe(s),i=h=>ue(h,n),a=i(t);return a.comments=r.map(h=>i(h)),a}function Ft(s){return Ze(s,Nt)}function Ut(s){return Ze(s,It)}function Je(s){return Ze(s,kt)}function Gt(s){return Tt(Pt(s),new xe(s))}var Dt=E(()=>{at();Xe();Mt();Pe()});function jr(s){return Array.isArray(s)&&s.length>0}var Vt,Wt=E(()=>{Vt=jr});function Ye(s){var r;let e=s.range?s.range[0]:s.start,t=((r=s.declaration)==null?void 0:r.decorators)??s.decorators;return Vt(t)?Math.min(Ye(t[0]),e):e}function Qt(s){return s.range?s.range[1]:s.end}var jt=E(()=>{Wt()});var Ht={};Jt(Ht,{__ng_action:()=>Hr,__ng_binding:()=>zr,__ng_directive:()=>Xr,__ng_interpolation:()=>qr});function Le(s){return{astFormat:"estree",parse(e){let t=s(e);return{type:"NGRoot",node:s===Je&&t.type!=="NGChainedExpression"?{...t,type:"NGChainedExpression",expressions:[t]}:t}},locStart:Ye,locEnd:Qt}}var Hr,zr,qr,Xr,zt=E(()=>{Dt();jt();Hr=Le(Je),zr=Le(Ft),qr=Le(Ut),Xr=Le(Gt)});function Yt(s){let e=Object.create(null);for(let{importParsers:t,parserNames:r}of s)for(let n of r)e[n]=async()=>Object.assign(e,await t())[n];return e}var rt=Yt;var Zr=rt([{importParsers:()=>Promise.resolve().then(()=>(zt(),Ht)),parserNames:["__ng_action","__ng_binding","__ng_interpolation","__ng_directive"]}]),Bs={parsers:Zr};export{Bs as default,Zr as parsers};
|
package/plugins/babel.d.ts
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import { Parser } from "../index.js";
|
|
2
2
|
|
|
3
|
-
declare const
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
3
|
+
export declare const parsers: {
|
|
4
|
+
babel: Parser;
|
|
5
|
+
"babel-flow": Parser;
|
|
6
|
+
"babel-ts": Parser;
|
|
7
|
+
__js_expression: Parser;
|
|
8
|
+
__ts_expression: Parser;
|
|
9
|
+
__vue_expression: Parser;
|
|
10
|
+
__vue_ts_expression: Parser;
|
|
11
|
+
__vue_event_binding: Parser;
|
|
12
|
+
__vue_ts_event_binding: Parser;
|
|
13
|
+
__babel_estree: Parser;
|
|
14
|
+
json: Parser;
|
|
15
|
+
json5: Parser;
|
|
16
|
+
"json-stringify": Parser;
|
|
15
17
|
};
|
|
16
|
-
|
|
17
|
-
export default plugin;
|