@epxing/cli 0.3.1 → 0.5.0-beta.0
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/API.md +90 -0
- package/README.md +49 -30
- package/dist/THIRD_PARTY_NOTICES.txt +25 -0
- package/dist/cli.mjs +43 -31
- package/dist/lib-build.mjs +1 -1
- package/dist/lib-vite-config.mjs +1 -1
- package/dist/project.mjs +6 -6
- package/dist/skills/epxing-frontend-vue3-migrate/SKILL.md +17 -2
- package/dist/skills/epxing-frontend-vue3-migrate/pitfalls.md +498 -381
- package/dist/tools/chunks/AMQWUBTZ.mjs +2 -0
- package/dist/tools/chunks/H4POBCHI.mjs +1 -0
- package/dist/tools/chunks/PP5RD4RH.mjs +4 -0
- package/dist/tools/chunks/SH6LMMHZ.mjs +32 -0
- package/dist/tools/epx-create/scaffold.mjs +216 -5
- package/dist/tools/epx-migrate/detect-vue3-risks.mjs +1 -1
- package/dist/tools/epx-migrate/fix-date-formats.mjs +2 -0
- package/dist/tools/epx-migrate/fix-theme-styles.mjs +2 -0
- package/dist/tools/epx-migrate/migrate.mjs +270 -65
- package/dist/tools/epx-migrate/verify-components.mjs +5 -5
- package/dist/vite.d.ts +5 -0
- package/dist/vite.mjs +2 -0
- package/package.json +13 -3
|
@@ -1,80 +1,285 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
- Did you mean \`import { "${a}" as foo }\`?`,"ImportBindingIsString"),ImportCallArity:"`import()` requires exactly one or two arguments.",ImportCallNotNewExpression:"Cannot use new with import(...).",ImportCallSpreadArgument:"`...` is not allowed in `import()`.",ImportJSONBindingNotDefault:"A JSON module can only be imported with `default`.",ImportReflectionHasAssertion:"`import module x` cannot have assertions.",ImportReflectionNotBinding:'Only `import module x from "./module"` is valid.',IncompatibleRegExpUVFlags:"The 'u' and 'v' regular expression flags cannot be enabled at the same time.",InvalidBigIntLiteral:"Invalid BigIntLiteral.",InvalidCodePoint:"Code point out of bounds.",InvalidCoverDiscardElement:"'void' must be followed by an expression when not used in a binding position.",InvalidCoverInitializedName:"Invalid shorthand property initializer.",InvalidDecimal:"Invalid decimal.",InvalidDigit:u(({radix:a})=>`Expected number in radix ${a}.`,"InvalidDigit"),InvalidEscapeSequence:"Bad character escape sequence.",InvalidEscapeSequenceTemplate:"Invalid escape sequence in template.",InvalidEscapedReservedWord:u(({reservedWord:a})=>`Escape sequence in keyword ${a}.`,"InvalidEscapedReservedWord"),InvalidIdentifier:u(({identifierName:a})=>`Invalid identifier ${a}.`,"InvalidIdentifier"),InvalidLhs:u(({ancestor:a})=>`Invalid left-hand side in ${Be(a)}.`,"InvalidLhs"),InvalidLhsBinding:u(({ancestor:a})=>`Binding invalid left-hand side in ${Be(a)}.`,"InvalidLhsBinding"),InvalidLhsOptionalChaining:u(({ancestor:a})=>`Invalid optional chaining in the left-hand side of ${Be(a)}.`,"InvalidLhsOptionalChaining"),InvalidNumber:"Invalid number.",InvalidOrMissingExponent:"Floating-point numbers require a valid exponent after the 'e'.",InvalidOrUnexpectedToken:u(({unexpected:a})=>`Unexpected character '${a}'.`,"InvalidOrUnexpectedToken"),InvalidParenthesizedAssignment:"Invalid parenthesized assignment pattern.",InvalidPrivateFieldResolution:u(({identifierName:a})=>`Private name #${a} is not defined.`,"InvalidPrivateFieldResolution"),InvalidPropertyBindingPattern:"Binding member expression.",InvalidRecordProperty:"Only properties and spread elements are allowed in record definitions.",InvalidRestAssignmentPattern:"Invalid rest operator's argument.",LabelRedeclaration:u(({labelName:a})=>`Label '${a}' is already declared.`,"LabelRedeclaration"),LetInLexicalBinding:"'let' is disallowed as a lexically bound name.",LineTerminatorBeforeArrow:"No line break is allowed before '=>'.",MalformedRegExpFlags:"Invalid regular expression flag.",MissingClassName:"A class name is required.",MissingEqInAssignment:"Only '=' operator can be used for specifying default value.",MissingSemicolon:"Missing semicolon.",MissingPlugin:u(({missingPlugin:a})=>`This experimental syntax requires enabling the parser plugin: ${a.map(t=>JSON.stringify(t)).join(", ")}.`,"MissingPlugin"),MissingOneOfPlugins:u(({missingPlugin:a})=>`This experimental syntax requires enabling one of the following parser plugin(s): ${a.map(t=>JSON.stringify(t)).join(", ")}.`,"MissingOneOfPlugins"),MissingUnicodeEscape:"Expecting Unicode escape sequence \\uXXXX.",MixingCoalesceWithLogical:"Nullish coalescing operator(??) requires parens when mixing with logical operators.",ModuleAttributeDifferentFromType:"The only accepted module attribute is `type`.",ModuleAttributeInvalidValue:"Only string literals are allowed as module attribute values.",ModuleAttributesWithDuplicateKeys:u(({key:a})=>`Duplicate key "${a}" is not allowed in module attributes.`,"ModuleAttributesWithDuplicateKeys"),ModuleExportNameHasLoneSurrogate:u(({surrogateCharCode:a})=>`An export name cannot include a lone surrogate, found '\\u${a.toString(16)}'.`,"ModuleExportNameHasLoneSurrogate"),ModuleExportUndefined:u(({localName:a})=>`Export '${a}' is not defined.`,"ModuleExportUndefined"),MultipleDefaultsInSwitch:"Multiple default clauses.",NewlineAfterThrow:"Illegal newline after throw.",NoCatchOrFinally:"Missing catch or finally clause.",NumberIdentifier:"Identifier directly after number.",NumericSeparatorInEscapeSequence:"Numeric separators are not allowed inside unicode escape sequences or hex escape sequences.",ObsoleteAwaitStar:"'await*' has been removed from the async functions proposal. Use Promise.all() instead.",OptionalChainingNoNew:"Constructors in/after an Optional Chain are not allowed.",OptionalChainingNoTemplate:"Tagged Template Literals are not allowed in optionalChain.",OverrideOnConstructor:"'override' modifier cannot appear on a constructor declaration.",ParamDupe:"Argument name clash.",PatternHasAccessor:"Object pattern can't contain getter or setter.",PatternHasMethod:"Object pattern can't contain methods.",PrivateInExpectedIn:u(({identifierName:a})=>`Private names are only allowed in property accesses (\`obj.#${a}\`) or in \`in\` expressions (\`#${a} in obj\`).`,"PrivateInExpectedIn"),PrivateNameRedeclaration:u(({identifierName:a})=>`Duplicate private name #${a}.`,"PrivateNameRedeclaration"),RecordExpressionBarIncorrectEndSyntaxType:"Record expressions ending with '|}' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionBarIncorrectStartSyntaxType:"Record expressions starting with '{|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionHashIncorrectStartSyntaxType:"Record expressions starting with '#{' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",RecordNoProto:"'__proto__' is not allowed in Record expressions.",RestTrailingComma:"Unexpected trailing comma after rest element.",SloppyFunction:"In non-strict mode code, functions can only be declared at top level or inside a block.",SloppyFunctionAnnexB:"In non-strict mode code, functions can only be declared at top level, inside a block, or as the body of an if statement.",SourcePhaseImportRequiresDefault:'Only `import source x from "./module"` is valid.',StaticPrototype:"Classes may not have static property named prototype.",SuperNotAllowed:"`super()` is only valid inside a class constructor of a subclass. Maybe a typo in the method name ('constructor') or not extending another class?",SuperPrivateField:"Private fields can't be accessed on super.",TrailingDecorator:"Decorators must be attached to a class element.",TupleExpressionBarIncorrectEndSyntaxType:"Tuple expressions ending with '|]' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionBarIncorrectStartSyntaxType:"Tuple expressions starting with '[|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionHashIncorrectStartSyntaxType:"Tuple expressions starting with '#[' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",UnexpectedArgumentPlaceholder:"Unexpected argument placeholder.",UnexpectedAwaitAfterPipelineBody:'Unexpected "await" after pipeline body; await must have parentheses in minimal proposal.',UnexpectedDigitAfterHash:"Unexpected digit after hash token.",UnexpectedImportExport:"'import' and 'export' may only appear at the top level.",UnexpectedKeyword:u(({keyword:a})=>`Unexpected keyword '${a}'.`,"UnexpectedKeyword"),UnexpectedLeadingDecorator:"Leading decorators must be attached to a class declaration.",UnexpectedLexicalDeclaration:"Lexical declaration cannot appear in a single-statement context.",UnexpectedNewTarget:"`new.target` can only be used in functions or class properties.",UnexpectedNumericSeparator:"A numeric separator is only allowed between two digits.",UnexpectedPrivateField:"Unexpected private name.",UnexpectedReservedWord:u(({reservedWord:a})=>`Unexpected reserved word '${a}'.`,"UnexpectedReservedWord"),UnexpectedSuper:"'super' is only allowed in object methods and classes.",UnexpectedToken:u(({expected:a,unexpected:t})=>`Unexpected token${t?` '${t}'.`:""}${a?`, expected "${a}"`:""}`,"UnexpectedToken"),UnexpectedTokenUnaryExponentiation:"Illegal expression. Wrap left hand side or entire exponentiation in parentheses.",UnexpectedUsingDeclaration:"Using declaration cannot appear in the top level when source type is `script` or in the bare case statement.",UnexpectedVoidPattern:"Unexpected void binding.",UnsupportedBind:"Binding should be performed on object property.",UnsupportedDecoratorExport:"A decorated export must export a class declaration.",UnsupportedDefaultExport:"Only expressions, functions or classes are allowed as the `default` export.",UnsupportedImport:"`import` can only be used in `import()` or `import.meta`.",UnsupportedMetaProperty:u(({target:a,onlyValidPropertyName:t})=>`The only valid meta property for ${a} is ${a}.${t}.`,"UnsupportedMetaProperty"),UnsupportedParameterDecorator:"Decorators cannot be used to decorate parameters.",UnsupportedPropertyDecorator:"Decorators cannot be used to decorate object literal properties.",UnsupportedSuper:"'super' can only be used with function calls (i.e. super()) or in property accesses (i.e. super.prop or super[prop]).",UnterminatedComment:"Unterminated comment.",UnterminatedRegExp:"Unterminated regular expression.",UnterminatedString:"Unterminated string constant.",UnterminatedTemplate:"Unterminated template.",UsingDeclarationExport:"Using declaration cannot be exported.",UsingDeclarationHasBindingPattern:"Using declaration cannot have destructuring patterns.",VarRedeclaration:u(({identifierName:a})=>`Identifier '${a}' has already been declared.`,"VarRedeclaration"),VoidPatternCatchClauseParam:"A void binding can not be the catch clause parameter. Use `try { ... } catch { ... }` if you want to discard the caught error.",VoidPatternInitializer:"A void binding may not have an initializer.",YieldBindingIdentifier:"Can not use 'yield' as identifier inside a generator.",YieldInParameter:"Yield expression is not allowed in formal parameters.",YieldNotInGeneratorFunction:"'yield' is only allowed within generator functions.",ZeroDigitNumericSeparator:"Numeric separator can not be used after leading 0."},tr={StrictDelete:"Deleting local variable in strict mode.",StrictEvalArguments:u(({referenceName:a})=>`Assigning to '${a}' in strict mode.`,"StrictEvalArguments"),StrictEvalArgumentsBinding:u(({bindingName:a})=>`Binding '${a}' in strict mode.`,"StrictEvalArgumentsBinding"),StrictFunction:"In strict mode code, functions can only be declared at top level or inside a block.",StrictNumericEscape:"The only valid numeric escape in strict mode is '\\0'.",StrictOctalLiteral:"Legacy octal literals are not allowed in strict mode.",StrictWith:"'with' in strict mode."},sr={ParseExpressionEmptyInput:"Unexpected parseExpression() input: The input is empty or contains only comments.",ParseExpressionExpectsEOF:u(({unexpected:a})=>`Unexpected parseExpression() input: The input should contain exactly one expression, but the first expression is followed by the unexpected character \`${String.fromCodePoint(a)}\`.`,"ParseExpressionExpectsEOF")},ir=new Set(["ArrowFunctionExpression","AssignmentExpression","ConditionalExpression","YieldExpression"]),rr=Object.assign({PipeBodyIsTighter:"Unexpected yield after pipeline body; any yield expression acting as Hack-style pipe body must be parenthesized due to its loose operator precedence.",PipeTopicRequiresHackPipes:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.',PipeTopicUnbound:"Topic reference is unbound; it must be inside a pipe body.",PipeTopicUnconfiguredToken:u(({token:a})=>`Invalid topic token ${a}. In order to use ${a} as a topic reference, the pipelineOperator plugin must be configured with { "proposal": "hack", "topicToken": "${a}" }.`,"PipeTopicUnconfiguredToken"),PipeTopicUnused:"Hack-style pipe body does not contain a topic reference; Hack-style pipes must use topic at least once.",PipeUnparenthesizedBody:u(({type:a})=>`Hack-style pipe body cannot be an unparenthesized ${Be({type:a})}; please wrap it in parentheses.`,"PipeUnparenthesizedBody")},{PipelineBodyNoArrow:'Unexpected arrow "=>" after pipeline body; arrow function in pipeline body must be parenthesized.',PipelineBodySequenceExpression:"Pipeline body may not be a comma-separated sequence expression.",PipelineHeadSequenceExpression:"Pipeline head should not be a comma-separated sequence expression.",PipelineTopicUnused:"Pipeline is in topic style but does not use topic reference.",PrimaryTopicNotAllowed:"Topic reference was used in a lexical context without topic binding.",PrimaryTopicRequiresSmartPipeline:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.'}),ar=["message"];function _s(a,t,e){Object.defineProperty(a,t,{enumerable:!1,configurable:!0,value:e})}u(_s,"defineHidden");function nr({toMessage:a,code:t,reasonCode:e,syntaxPlugin:s}){let i=e==="MissingPlugin"||e==="MissingOneOfPlugins",r={AccessorCannotDeclareThisParameter:"AccesorCannotDeclareThisParameter",AccessorCannotHaveTypeParameters:"AccesorCannotHaveTypeParameters",ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:"ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference",SetAccessorCannotHaveOptionalParameter:"SetAccesorCannotHaveOptionalParameter",SetAccessorCannotHaveRestParameter:"SetAccesorCannotHaveRestParameter",SetAccessorCannotHaveReturnType:"SetAccesorCannotHaveReturnType"};return r[e]&&(e=r[e]),u(function n(o,l){let c=new SyntaxError;return c.code=t,c.reasonCode=e,c.loc=o,c.pos=o.index,c.syntaxPlugin=s,i&&(c.missingPlugin=l.missingPlugin),_s(c,"clone",u(function(f={}){var d;let{line:m,column:g,index:I}=(d=f.loc)!=null?d:o;return n(new X(m,g,I),Object.assign({},l,f.details))},"clone")),_s(c,"details",l),Object.defineProperty(c,"message",{configurable:!0,get(){let h=`${a(l)} (${o.line}:${o.column})`;return this.message=h,h},set(h){Object.defineProperty(this,"message",{value:h,writable:!0})}}),c},"constructor")}u(nr,"toParseErrorConstructor");function J(a,t){if(Array.isArray(a))return s=>J(s,a[0]);let e={};for(let s of Object.keys(a)){let i=a[s],r=typeof i=="string"?{message:u(()=>i,"message")}:typeof i=="function"?{message:i}:i,{message:n}=r,o=Zi(r,ar),l=typeof n=="string"?()=>n:n;e[s]=nr(Object.assign({code:"BABEL_PARSER_SYNTAX_ERROR",reasonCode:s,toMessage:l},t?{syntaxPlugin:t}:{},o))}return e}u(J,"ParseErrorEnum");var p=Object.assign({},J(Qi),J(er),J(tr),J(sr),J`pipelineOperator`(rr));function or(){return{sourceType:"script",sourceFilename:void 0,startIndex:0,startColumn:0,startLine:1,allowAwaitOutsideFunction:!1,allowReturnOutsideFunction:!1,allowNewTargetOutsideFunction:!1,allowImportExportEverywhere:!1,allowSuperOutsideMethod:!1,allowUndeclaredExports:!1,allowYieldOutsideFunction:!1,plugins:[],strictMode:void 0,ranges:!1,tokens:!1,createImportExpressions:!1,createParenthesizedExpressions:!1,errorRecovery:!1,attachComment:!0,annexB:!0}}u(or,"createDefaultOptions");function lr(a){let t=or();if(a==null)return t;if(a.annexB!=null&&a.annexB!==!1)throw new Error("The `annexB` option can only be set to `false`.");for(let e of Object.keys(t))a[e]!=null&&(t[e]=a[e]);if(t.startLine===1)a.startIndex==null&&t.startColumn>0?t.startIndex=t.startColumn:a.startColumn==null&&t.startIndex>0&&(t.startColumn=t.startIndex);else if((a.startColumn==null||a.startIndex==null)&&a.startIndex!=null)throw new Error("With a `startLine > 1` you must also specify `startIndex` and `startColumn`.");if(t.sourceType==="commonjs"){if(a.allowAwaitOutsideFunction!=null)throw new Error("The `allowAwaitOutsideFunction` option cannot be used with `sourceType: 'commonjs'`.");if(a.allowReturnOutsideFunction!=null)throw new Error("`sourceType: 'commonjs'` implies `allowReturnOutsideFunction: true`, please remove the `allowReturnOutsideFunction` option or use `sourceType: 'script'`.");if(a.allowNewTargetOutsideFunction!=null)throw new Error("`sourceType: 'commonjs'` implies `allowNewTargetOutsideFunction: true`, please remove the `allowNewTargetOutsideFunction` option or use `sourceType: 'script'`.")}return t}u(lr,"getOptions");var{defineProperty:cr}=Object,Us=u((a,t)=>{a&&cr(a,t,{enumerable:!1,value:a[t]})},"toUnenumerable");function be(a){return Us(a.loc.start,"index"),Us(a.loc.end,"index"),a}u(be,"toESTreeLocation");var hr=u(a=>class extends a{static{u(this,"ESTreeParserMixin")}parse(){let e=be(super.parse());return this.optionFlags&256&&(e.tokens=e.tokens.map(be)),e}parseRegExpLiteral({pattern:e,flags:s}){let i=null;try{i=new RegExp(e,s)}catch{}let r=this.estreeParseLiteral(i);return r.regex={pattern:e,flags:s},r}parseBigIntLiteral(e){let s;try{s=BigInt(e)}catch{s=null}let i=this.estreeParseLiteral(s);return i.bigint=String(i.value||e),i}parseDecimalLiteral(e){let i=this.estreeParseLiteral(null);return i.decimal=String(i.value||e),i}estreeParseLiteral(e){return this.parseLiteral(e,"Literal")}parseStringLiteral(e){return this.estreeParseLiteral(e)}parseNumericLiteral(e){return this.estreeParseLiteral(e)}parseNullLiteral(){return this.estreeParseLiteral(null)}parseBooleanLiteral(e){return this.estreeParseLiteral(e)}estreeParseChainExpression(e,s){let i=this.startNodeAtNode(e);return i.expression=e,this.finishNodeAt(i,"ChainExpression",s)}directiveToStmt(e){let s=e.value;delete e.value,this.castNodeTo(s,"Literal"),s.raw=s.extra.raw,s.value=s.extra.expressionValue;let i=this.castNodeTo(e,"ExpressionStatement");return i.expression=s,i.directive=s.extra.rawValue,delete s.extra,i}fillOptionalPropertiesForTSESLint(e){}cloneEstreeStringLiteral(e){let{start:s,end:i,loc:r,range:n,raw:o,value:l}=e,c=Object.create(e.constructor.prototype);return c.type="Literal",c.start=s,c.end=i,c.loc=r,c.range=n,c.raw=o,c.value=l,c}initFunction(e,s){super.initFunction(e,s),e.expression=!1}checkDeclaration(e){e!=null&&this.isObjectProperty(e)?this.checkDeclaration(e.value):super.checkDeclaration(e)}getObjectOrClassMethodParams(e){return e.value.params}isValidDirective(e){var s;return e.type==="ExpressionStatement"&&e.expression.type==="Literal"&&typeof e.expression.value=="string"&&!((s=e.expression.extra)!=null&&s.parenthesized)}parseBlockBody(e,s,i,r,n){super.parseBlockBody(e,s,i,r,n);let o=e.directives.map(l=>this.directiveToStmt(l));e.body=o.concat(e.body),delete e.directives}parsePrivateName(){let e=super.parsePrivateName();return this.getPluginOption("estree","classFeatures")?this.convertPrivateNameToPrivateIdentifier(e):e}convertPrivateNameToPrivateIdentifier(e){let s=super.getPrivateNameSV(e);return delete e.id,e.name=s,this.castNodeTo(e,"PrivateIdentifier")}isPrivateName(e){return this.getPluginOption("estree","classFeatures")?e.type==="PrivateIdentifier":super.isPrivateName(e)}getPrivateNameSV(e){return this.getPluginOption("estree","classFeatures")?e.name:super.getPrivateNameSV(e)}parseLiteral(e,s){let i=super.parseLiteral(e,s);return i.raw=i.extra.raw,delete i.extra,i}parseFunctionBody(e,s,i=!1){super.parseFunctionBody(e,s,i),e.expression=e.body.type!=="BlockStatement"}parseMethod(e,s,i,r,n,o,l=!1){let c=this.startNode();c.kind=e.kind,c=super.parseMethod(c,s,i,r,n,o,l),delete c.kind;let{typeParameters:h}=e;h&&(delete e.typeParameters,c.typeParameters=h,this.resetStartLocationFromNode(c,h));let f=this.castNodeTo(c,"FunctionExpression");return e.value=f,o==="ClassPrivateMethod"&&(e.computed=!1),o==="ObjectMethod"?(e.kind==="method"&&(e.kind="init"),e.shorthand=!1,this.finishNode(e,"Property")):this.finishNode(e,"MethodDefinition")}nameIsConstructor(e){return e.type==="Literal"?e.value==="constructor":super.nameIsConstructor(e)}parseClassProperty(...e){let s=super.parseClassProperty(...e);return this.getPluginOption("estree","classFeatures")&&this.castNodeTo(s,"PropertyDefinition"),s}parseClassPrivateProperty(...e){let s=super.parseClassPrivateProperty(...e);return this.getPluginOption("estree","classFeatures")&&(this.castNodeTo(s,"PropertyDefinition"),s.computed=!1),s}parseClassAccessorProperty(e){let s=super.parseClassAccessorProperty(e);return this.getPluginOption("estree","classFeatures")&&(s.abstract&&this.hasPlugin("typescript")?(delete s.abstract,this.castNodeTo(s,"TSAbstractAccessorProperty")):this.castNodeTo(s,"AccessorProperty")),s}parseObjectProperty(e,s,i,r){let n=super.parseObjectProperty(e,s,i,r);return n&&(n.kind="init",this.castNodeTo(n,"Property")),n}finishObjectProperty(e){return e.kind="init",this.finishNode(e,"Property")}isValidLVal(e,s,i,r){return e==="Property"?"value":super.isValidLVal(e,s,i,r)}isAssignable(e,s){return e!=null&&this.isObjectProperty(e)?this.isAssignable(e.value,s):super.isAssignable(e,s)}toAssignable(e,s=!1){if(e!=null&&this.isObjectProperty(e)){let{key:i,value:r}=e;this.isPrivateName(i)&&this.classScope.usePrivateName(this.getPrivateNameSV(i),i.loc.start),this.toAssignable(r,s)}else super.toAssignable(e,s)}toAssignableObjectExpressionProp(e,s,i){e.type==="Property"&&(e.kind==="get"||e.kind==="set")?this.raise(p.PatternHasAccessor,e.key):e.type==="Property"&&e.method?this.raise(p.PatternHasMethod,e.key):super.toAssignableObjectExpressionProp(e,s,i)}finishCallExpression(e,s){let i=super.finishCallExpression(e,s);if(i.callee.type==="Import"){var r,n;this.castNodeTo(i,"ImportExpression"),i.source=i.arguments[0],i.options=(r=i.arguments[1])!=null?r:null,i.attributes=(n=i.arguments[1])!=null?n:null,delete i.arguments,delete i.callee}else i.type==="OptionalCallExpression"?this.castNodeTo(i,"CallExpression"):i.optional=!1;return i}toReferencedArguments(e){e.type!=="ImportExpression"&&super.toReferencedArguments(e)}parseExport(e,s){let i=this.state.lastTokStartLoc,r=super.parseExport(e,s);switch(r.type){case"ExportAllDeclaration":r.exported=null;break;case"ExportNamedDeclaration":r.specifiers.length===1&&r.specifiers[0].type==="ExportNamespaceSpecifier"&&(this.castNodeTo(r,"ExportAllDeclaration"),r.exported=r.specifiers[0].exported,delete r.specifiers);case"ExportDefaultDeclaration":{var n;let{declaration:o}=r;o?.type==="ClassDeclaration"&&((n=o.decorators)==null?void 0:n.length)>0&&o.start===r.start&&this.resetStartLocation(r,i)}break}return r}stopParseSubscript(e,s){let i=super.stopParseSubscript(e,s);return s.optionalChainMember?this.estreeParseChainExpression(i,e.loc.end):i}parseMember(e,s,i,r,n){let o=super.parseMember(e,s,i,r,n);return o.type==="OptionalMemberExpression"?this.castNodeTo(o,"MemberExpression"):o.optional=!1,o}isOptionalMemberExpression(e){return e.type==="ChainExpression"?e.expression.type==="MemberExpression":super.isOptionalMemberExpression(e)}hasPropertyAsPrivateName(e){return e.type==="ChainExpression"&&(e=e.expression),super.hasPropertyAsPrivateName(e)}isObjectProperty(e){return e.type==="Property"&&e.kind==="init"&&!e.method}isObjectMethod(e){return e.type==="Property"&&(e.method||e.kind==="get"||e.kind==="set")}castNodeTo(e,s){let i=super.castNodeTo(e,s);return this.fillOptionalPropertiesForTSESLint(i),i}cloneIdentifier(e){let s=super.cloneIdentifier(e);return this.fillOptionalPropertiesForTSESLint(s),s}cloneStringLiteral(e){return e.type==="Literal"?this.cloneEstreeStringLiteral(e):super.cloneStringLiteral(e)}finishNodeAt(e,s,i){return be(super.finishNodeAt(e,s,i))}finishNode(e,s){let i=super.finishNode(e,s);return this.fillOptionalPropertiesForTSESLint(i),i}resetStartLocation(e,s){super.resetStartLocation(e,s),be(e)}resetEndLocation(e,s=this.state.lastTokEndLoc){super.resetEndLocation(e,s),be(e)}},"estree"),oe=class{static{u(this,"TokContext")}constructor(t,e){this.token=void 0,this.preserveSpace=void 0,this.token=t,this.preserveSpace=!!e}},D={brace:new oe("{"),j_oTag:new oe("<tag"),j_cTag:new oe("</tag"),j_expr:new oe("<tag>...</tag>",!0)};D.template=new oe("`",!0);var E=!0,x=!0,Ye=!0,Te=!0,ee=!0,ur=!0,Re=class{static{u(this,"ExportedTokenType")}constructor(t,e={}){this.label=void 0,this.keyword=void 0,this.beforeExpr=void 0,this.startsExpr=void 0,this.rightAssociative=void 0,this.isLoop=void 0,this.isAssign=void 0,this.prefix=void 0,this.postfix=void 0,this.binop=void 0,this.label=t,this.keyword=e.keyword,this.beforeExpr=!!e.beforeExpr,this.startsExpr=!!e.startsExpr,this.rightAssociative=!!e.rightAssociative,this.isLoop=!!e.isLoop,this.isAssign=!!e.isAssign,this.prefix=!!e.prefix,this.postfix=!!e.postfix,this.binop=e.binop!=null?e.binop:null,this.updateContext=null}},wt=new Map;function k(a,t={}){t.keyword=a;let e=T(a,t);return wt.set(a,e),e}u(k,"createKeyword");function R(a,t){return T(a,{beforeExpr:E,binop:t})}u(R,"createBinop");var Ie=-1,Q=[],It=[],Ct=[],Et=[],vt=[],Nt=[];function T(a,t={}){var e,s,i,r;return++Ie,It.push(a),Ct.push((e=t.binop)!=null?e:-1),Et.push((s=t.beforeExpr)!=null?s:!1),vt.push((i=t.startsExpr)!=null?i:!1),Nt.push((r=t.prefix)!=null?r:!1),Q.push(new Re(a,t)),Ie}u(T,"createToken");function v(a,t={}){var e,s,i,r;return++Ie,wt.set(a,Ie),It.push(a),Ct.push((e=t.binop)!=null?e:-1),Et.push((s=t.beforeExpr)!=null?s:!1),vt.push((i=t.startsExpr)!=null?i:!1),Nt.push((r=t.prefix)!=null?r:!1),Q.push(new Re("name",t)),Ie}u(v,"createKeywordLike");var pr={bracketL:T("[",{beforeExpr:E,startsExpr:x}),bracketHashL:T("#[",{beforeExpr:E,startsExpr:x}),bracketBarL:T("[|",{beforeExpr:E,startsExpr:x}),bracketR:T("]"),bracketBarR:T("|]"),braceL:T("{",{beforeExpr:E,startsExpr:x}),braceBarL:T("{|",{beforeExpr:E,startsExpr:x}),braceHashL:T("#{",{beforeExpr:E,startsExpr:x}),braceR:T("}"),braceBarR:T("|}"),parenL:T("(",{beforeExpr:E,startsExpr:x}),parenR:T(")"),comma:T(",",{beforeExpr:E}),semi:T(";",{beforeExpr:E}),colon:T(":",{beforeExpr:E}),doubleColon:T("::",{beforeExpr:E}),dot:T("."),question:T("?",{beforeExpr:E}),questionDot:T("?."),arrow:T("=>",{beforeExpr:E}),template:T("template"),ellipsis:T("...",{beforeExpr:E}),backQuote:T("`",{startsExpr:x}),dollarBraceL:T("${",{beforeExpr:E,startsExpr:x}),templateTail:T("...`",{startsExpr:x}),templateNonTail:T("...${",{beforeExpr:E,startsExpr:x}),at:T("@"),hash:T("#",{startsExpr:x}),interpreterDirective:T("#!..."),eq:T("=",{beforeExpr:E,isAssign:Te}),assign:T("_=",{beforeExpr:E,isAssign:Te}),slashAssign:T("_=",{beforeExpr:E,isAssign:Te}),xorAssign:T("_=",{beforeExpr:E,isAssign:Te}),moduloAssign:T("_=",{beforeExpr:E,isAssign:Te}),incDec:T("++/--",{prefix:ee,postfix:ur,startsExpr:x}),bang:T("!",{beforeExpr:E,prefix:ee,startsExpr:x}),tilde:T("~",{beforeExpr:E,prefix:ee,startsExpr:x}),doubleCaret:T("^^",{startsExpr:x}),doubleAt:T("@@",{startsExpr:x}),pipeline:R("|>",0),nullishCoalescing:R("??",1),logicalOR:R("||",1),logicalAND:R("&&",2),bitwiseOR:R("|",3),bitwiseXOR:R("^",4),bitwiseAND:R("&",5),equality:R("==/!=/===/!==",6),lt:R("</>/<=/>=",7),gt:R("</>/<=/>=",7),relational:R("</>/<=/>=",7),bitShift:R("<</>>/>>>",8),bitShiftL:R("<</>>/>>>",8),bitShiftR:R("<</>>/>>>",8),plusMin:T("+/-",{beforeExpr:E,binop:9,prefix:ee,startsExpr:x}),modulo:T("%",{binop:10,startsExpr:x}),star:T("*",{binop:10}),slash:R("/",10),exponent:T("**",{beforeExpr:E,binop:11,rightAssociative:!0}),_in:k("in",{beforeExpr:E,binop:7}),_instanceof:k("instanceof",{beforeExpr:E,binop:7}),_break:k("break"),_case:k("case",{beforeExpr:E}),_catch:k("catch"),_continue:k("continue"),_debugger:k("debugger"),_default:k("default",{beforeExpr:E}),_else:k("else",{beforeExpr:E}),_finally:k("finally"),_function:k("function",{startsExpr:x}),_if:k("if"),_return:k("return",{beforeExpr:E}),_switch:k("switch"),_throw:k("throw",{beforeExpr:E,prefix:ee,startsExpr:x}),_try:k("try"),_var:k("var"),_const:k("const"),_with:k("with"),_new:k("new",{beforeExpr:E,startsExpr:x}),_this:k("this",{startsExpr:x}),_super:k("super",{startsExpr:x}),_class:k("class",{startsExpr:x}),_extends:k("extends",{beforeExpr:E}),_export:k("export"),_import:k("import",{startsExpr:x}),_null:k("null",{startsExpr:x}),_true:k("true",{startsExpr:x}),_false:k("false",{startsExpr:x}),_typeof:k("typeof",{beforeExpr:E,prefix:ee,startsExpr:x}),_void:k("void",{beforeExpr:E,prefix:ee,startsExpr:x}),_delete:k("delete",{beforeExpr:E,prefix:ee,startsExpr:x}),_do:k("do",{isLoop:Ye,beforeExpr:E}),_for:k("for",{isLoop:Ye}),_while:k("while",{isLoop:Ye}),_as:v("as",{startsExpr:x}),_assert:v("assert",{startsExpr:x}),_async:v("async",{startsExpr:x}),_await:v("await",{startsExpr:x}),_defer:v("defer",{startsExpr:x}),_from:v("from",{startsExpr:x}),_get:v("get",{startsExpr:x}),_let:v("let",{startsExpr:x}),_meta:v("meta",{startsExpr:x}),_of:v("of",{startsExpr:x}),_sent:v("sent",{startsExpr:x}),_set:v("set",{startsExpr:x}),_source:v("source",{startsExpr:x}),_static:v("static",{startsExpr:x}),_using:v("using",{startsExpr:x}),_yield:v("yield",{startsExpr:x}),_asserts:v("asserts",{startsExpr:x}),_checks:v("checks",{startsExpr:x}),_exports:v("exports",{startsExpr:x}),_global:v("global",{startsExpr:x}),_implements:v("implements",{startsExpr:x}),_intrinsic:v("intrinsic",{startsExpr:x}),_infer:v("infer",{startsExpr:x}),_is:v("is",{startsExpr:x}),_mixins:v("mixins",{startsExpr:x}),_proto:v("proto",{startsExpr:x}),_require:v("require",{startsExpr:x}),_satisfies:v("satisfies",{startsExpr:x}),_keyof:v("keyof",{startsExpr:x}),_readonly:v("readonly",{startsExpr:x}),_unique:v("unique",{startsExpr:x}),_abstract:v("abstract",{startsExpr:x}),_declare:v("declare",{startsExpr:x}),_enum:v("enum",{startsExpr:x}),_module:v("module",{startsExpr:x}),_namespace:v("namespace",{startsExpr:x}),_interface:v("interface",{startsExpr:x}),_type:v("type",{startsExpr:x}),_opaque:v("opaque",{startsExpr:x}),name:T("name",{startsExpr:x}),placeholder:T("%%",{startsExpr:x}),string:T("string",{startsExpr:x}),num:T("num",{startsExpr:x}),bigint:T("bigint",{startsExpr:x}),decimal:T("decimal",{startsExpr:x}),regexp:T("regexp",{startsExpr:x}),privateName:T("#name",{startsExpr:x}),eof:T("eof"),jsxName:T("jsxName"),jsxText:T("jsxText",{beforeExpr:E}),jsxTagStart:T("jsxTagStart",{startsExpr:x}),jsxTagEnd:T("jsxTagEnd")};function O(a){return a>=93&&a<=133}u(O,"tokenIsIdentifier");function fr(a){return a<=92}u(fr,"tokenKeywordOrIdentifierIsKeyword");function H(a){return a>=58&&a<=133}u(H,"tokenIsKeywordOrIdentifier");function Qs(a){return a>=58&&a<=137}u(Qs,"tokenIsLiteralPropertyName");function dr(a){return Et[a]}u(dr,"tokenComesBeforeExpression");function Se(a){return vt[a]}u(Se,"tokenCanStartExpression");function mr(a){return a>=29&&a<=33}u(mr,"tokenIsAssignment");function Vs(a){return a>=129&&a<=131}u(Vs,"tokenIsFlowInterfaceOrTypeOrOpaque");function yr(a){return a>=90&&a<=92}u(yr,"tokenIsLoop");function kt(a){return a>=58&&a<=92}u(kt,"tokenIsKeyword");function xr(a){return a>=39&&a<=59}u(xr,"tokenIsOperator");function gr(a){return a===34}u(gr,"tokenIsPostfix");function Pr(a){return Nt[a]}u(Pr,"tokenIsPrefix");function br(a){return a>=121&&a<=123}u(br,"tokenIsTSTypeOperator");function Tr(a){return a>=124&&a<=130}u(Tr,"tokenIsTSDeclarationStart");function se(a){return It[a]}u(se,"tokenLabelName");function je(a){return Ct[a]}u(je,"tokenOperatorPrecedence");function Ar(a){return a===57}u(Ar,"tokenIsRightAssociative");function _e(a){return a>=24&&a<=25}u(_e,"tokenIsTemplate");function Z(a){return Q[a]}u(Z,"getExportedToken");Q[8].updateContext=a=>{a.pop()};Q[5].updateContext=Q[7].updateContext=Q[23].updateContext=a=>{a.push(D.brace)};Q[22].updateContext=a=>{a[a.length-1]===D.template?a.pop():a.push(D.template)};Q[143].updateContext=a=>{a.push(D.j_expr,D.j_oTag)};var Lt="\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088F\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5C\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDC-\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7DC\uA7F1-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC",ei="\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0897-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ADD\u1AE0-\u1AEB\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F\uFF65",Sr=new RegExp("["+Lt+"]"),wr=new RegExp("["+Lt+ei+"]");Lt=ei=null;var ti=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,4,51,13,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,7,25,39,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,39,27,10,22,251,41,7,1,17,5,57,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,200,32,32,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,24,43,261,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,33,24,3,24,45,74,6,0,67,12,65,1,2,0,15,4,10,7381,42,31,98,114,8702,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,229,29,3,0,208,30,2,2,2,1,2,6,3,4,10,1,225,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4381,3,5773,3,7472,16,621,2467,541,1507,4938,6,8489],Ir=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,7,9,32,4,318,1,78,5,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,199,7,137,9,54,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,55,9,266,3,10,1,2,0,49,6,4,4,14,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,245,1,2,9,233,0,3,0,8,1,6,0,475,6,110,6,6,9,4759,9,787719,239];function it(a,t){let e=65536;for(let s=0,i=t.length;s<i;s+=2){if(e+=t[s],e>a)return!1;if(e+=t[s+1],e>=a)return!0}return!1}u(it,"isInAstralSet");function W(a){return a<65?a===36:a<=90?!0:a<97?a===95:a<=122?!0:a<=65535?a>=170&&Sr.test(String.fromCharCode(a)):it(a,ti)}u(W,"isIdentifierStart");function le(a){return a<48?a===36:a<58?!0:a<65?!1:a<=90?!0:a<97?a===95:a<=122?!0:a<=65535?a>=170&&wr.test(String.fromCharCode(a)):it(a,ti)||it(a,Ir)}u(le,"isIdentifierChar");var Dt={keyword:["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete"],strict:["implements","interface","let","package","private","protected","public","static","yield"],strictBind:["eval","arguments"]},Cr=new Set(Dt.keyword),Er=new Set(Dt.strict),vr=new Set(Dt.strictBind);function si(a,t){return t&&a==="await"||a==="enum"}u(si,"isReservedWord");function ii(a,t){return si(a,t)||Er.has(a)}u(ii,"isStrictReservedWord");function ri(a){return vr.has(a)}u(ri,"isStrictBindOnlyReservedWord");function ai(a,t){return ii(a,t)||ri(a)}u(ai,"isStrictBindReservedWord");function Nr(a){return Cr.has(a)}u(Nr,"isKeyword");function kr(a,t,e){return a===64&&t===64&&W(e)}u(kr,"isIteratorStart");var Lr=new Set(["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete","implements","interface","let","package","private","protected","public","static","yield","eval","arguments","enum","await"]);function Dr(a){return Lr.has(a)}u(Dr,"canBeReservedWord");var Ce=class{static{u(this,"Scope")}constructor(t){this.flags=0,this.names=new Map,this.firstLexicalName="",this.flags=t}},Ee=class{static{u(this,"ScopeHandler")}constructor(t,e){this.parser=void 0,this.scopeStack=[],this.inModule=void 0,this.undefinedExports=new Map,this.parser=t,this.inModule=e}get inTopLevel(){return(this.currentScope().flags&1)>0}get inFunction(){return(this.currentVarScopeFlags()&2)>0}get allowSuper(){return(this.currentThisScopeFlags()&16)>0}get allowDirectSuper(){return(this.currentThisScopeFlags()&32)>0}get allowNewTarget(){return(this.currentThisScopeFlags()&512)>0}get inClass(){return(this.currentThisScopeFlags()&64)>0}get inClassAndNotInNonArrowFunction(){let t=this.currentThisScopeFlags();return(t&64)>0&&(t&2)===0}get inStaticBlock(){for(let t=this.scopeStack.length-1;;t--){let{flags:e}=this.scopeStack[t];if(e&128)return!0;if(e&1731)return!1}}get inNonArrowFunction(){return(this.currentThisScopeFlags()&2)>0}get inBareCaseStatement(){return(this.currentScope().flags&256)>0}get treatFunctionsAsVar(){return this.treatFunctionsAsVarInScope(this.currentScope())}createScope(t){return new Ce(t)}enter(t){this.scopeStack.push(this.createScope(t))}exit(){return this.scopeStack.pop().flags}treatFunctionsAsVarInScope(t){return!!(t.flags&130||!this.parser.inModule&&t.flags&1)}declareName(t,e,s){let i=this.currentScope();if(e&8||e&16){this.checkRedeclarationInScope(i,t,e,s);let r=i.names.get(t)||0;e&16?r=r|4:(i.firstLexicalName||(i.firstLexicalName=t),r=r|2),i.names.set(t,r),e&8&&this.maybeExportDefined(i,t)}else if(e&4)for(let r=this.scopeStack.length-1;r>=0&&(i=this.scopeStack[r],this.checkRedeclarationInScope(i,t,e,s),i.names.set(t,(i.names.get(t)||0)|1),this.maybeExportDefined(i,t),!(i.flags&1667));--r);this.parser.inModule&&i.flags&1&&this.undefinedExports.delete(t)}maybeExportDefined(t,e){this.parser.inModule&&t.flags&1&&this.undefinedExports.delete(e)}checkRedeclarationInScope(t,e,s,i){this.isRedeclaredInScope(t,e,s)&&this.parser.raise(p.VarRedeclaration,i,{identifierName:e})}isRedeclaredInScope(t,e,s){if(!(s&1))return!1;if(s&8)return t.names.has(e);let i=t.names.get(e)||0;return s&16?(i&2)>0||!this.treatFunctionsAsVarInScope(t)&&(i&1)>0:(i&2)>0&&!(t.flags&8&&t.firstLexicalName===e)||!this.treatFunctionsAsVarInScope(t)&&(i&4)>0}checkLocalExport(t){let{name:e}=t;this.scopeStack[0].names.has(e)||this.undefinedExports.set(e,t.loc.start)}currentScope(){return this.scopeStack[this.scopeStack.length-1]}currentVarScopeFlags(){for(let t=this.scopeStack.length-1;;t--){let{flags:e}=this.scopeStack[t];if(e&1667)return e}}currentThisScopeFlags(){for(let t=this.scopeStack.length-1;;t--){let{flags:e}=this.scopeStack[t];if(e&1731&&!(e&4))return e}}},rt=class extends Ce{static{u(this,"FlowScope")}constructor(...t){super(...t),this.declareFunctions=new Set}},at=class extends Ee{static{u(this,"FlowScopeHandler")}createScope(t){return new rt(t)}declareName(t,e,s){let i=this.currentScope();if(e&2048){this.checkRedeclarationInScope(i,t,e,s),this.maybeExportDefined(i,t),i.declareFunctions.add(t);return}super.declareName(t,e,s)}isRedeclaredInScope(t,e,s){if(super.isRedeclaredInScope(t,e,s))return!0;if(s&2048&&!t.declareFunctions.has(e)){let i=t.names.get(e);return(i&4)>0||(i&2)>0}return!1}checkLocalExport(t){this.scopeStack[0].declareFunctions.has(t.name)||super.checkLocalExport(t)}},Or=new Set(["_","any","bool","boolean","empty","extends","false","interface","mixed","null","number","static","string","true","typeof","void"]),A=J`flow`({AmbiguousConditionalArrow:"Ambiguous expression: wrap the arrow functions in parentheses to disambiguate.",AmbiguousDeclareModuleKind:"Found both `declare module.exports` and `declare export` in the same module. Modules can only have 1 since they are either an ES module or they are a CommonJS module.",AssignReservedType:u(({reservedType:a})=>`Cannot overwrite reserved type ${a}.`,"AssignReservedType"),DeclareClassElement:"The `declare` modifier can only appear on class fields.",DeclareClassFieldInitializer:"Initializers are not allowed in fields with the `declare` modifier.",DuplicateDeclareModuleExports:"Duplicate `declare module.exports` statement.",EnumBooleanMemberNotInitialized:u(({memberName:a,enumName:t})=>`Boolean enum members need to be initialized. Use either \`${a} = true,\` or \`${a} = false,\` in enum \`${t}\`.`,"EnumBooleanMemberNotInitialized"),EnumDuplicateMemberName:u(({memberName:a,enumName:t})=>`Enum member names need to be unique, but the name \`${a}\` has already been used before in enum \`${t}\`.`,"EnumDuplicateMemberName"),EnumInconsistentMemberValues:u(({enumName:a})=>`Enum \`${a}\` has inconsistent member initializers. Either use no initializers, or consistently use literals (either booleans, numbers, or strings) for all member initializers.`,"EnumInconsistentMemberValues"),EnumInvalidExplicitType:u(({invalidEnumType:a,enumName:t})=>`Enum type \`${a}\` is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${t}\`.`,"EnumInvalidExplicitType"),EnumInvalidExplicitTypeUnknownSupplied:u(({enumName:a})=>`Supplied enum type is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${a}\`.`,"EnumInvalidExplicitTypeUnknownSupplied"),EnumInvalidMemberInitializerPrimaryType:u(({enumName:a,memberName:t,explicitType:e})=>`Enum \`${a}\` has type \`${e}\`, so the initializer of \`${t}\` needs to be a ${e} literal.`,"EnumInvalidMemberInitializerPrimaryType"),EnumInvalidMemberInitializerSymbolType:u(({enumName:a,memberName:t})=>`Symbol enum members cannot be initialized. Use \`${t},\` in enum \`${a}\`.`,"EnumInvalidMemberInitializerSymbolType"),EnumInvalidMemberInitializerUnknownType:u(({enumName:a,memberName:t})=>`The enum member initializer for \`${t}\` needs to be a literal (either a boolean, number, or string) in enum \`${a}\`.`,"EnumInvalidMemberInitializerUnknownType"),EnumInvalidMemberName:u(({enumName:a,memberName:t,suggestion:e})=>`Enum member names cannot start with lowercase 'a' through 'z'. Instead of using \`${t}\`, consider using \`${e}\`, in enum \`${a}\`.`,"EnumInvalidMemberName"),EnumNumberMemberNotInitialized:u(({enumName:a,memberName:t})=>`Number enum members need to be initialized, e.g. \`${t} = 1\` in enum \`${a}\`.`,"EnumNumberMemberNotInitialized"),EnumStringMemberInconsistentlyInitialized:u(({enumName:a})=>`String enum members need to consistently either all use initializers, or use no initializers, in enum \`${a}\`.`,"EnumStringMemberInconsistentlyInitialized"),GetterMayNotHaveThisParam:"A getter cannot have a `this` parameter.",ImportReflectionHasImportType:"An `import module` declaration can not use `type` or `typeof` keyword.",ImportTypeShorthandOnlyInPureImport:"The `type` and `typeof` keywords on named imports can only be used on regular `import` statements. It cannot be used with `import type` or `import typeof` statements.",InexactInsideExact:"Explicit inexact syntax cannot appear inside an explicit exact object type.",InexactInsideNonObject:"Explicit inexact syntax cannot appear in class or interface definitions.",InexactVariance:"Explicit inexact syntax cannot have variance.",InvalidNonTypeImportInDeclareModule:"Imports within a `declare module` body must always be `import type` or `import typeof`.",MissingTypeParamDefault:"Type parameter declaration needs a default, since a preceding type parameter declaration has a default.",NestedDeclareModule:"`declare module` cannot be used inside another `declare module`.",NestedFlowComment:"Cannot have a flow comment inside another flow comment.",PatternIsOptional:Object.assign({message:"A binding pattern parameter cannot be optional in an implementation signature."},{reasonCode:"OptionalBindingPattern"}),SetterMayNotHaveThisParam:"A setter cannot have a `this` parameter.",SpreadVariance:"Spread properties cannot have variance.",ThisParamAnnotationRequired:"A type annotation is required for the `this` parameter.",ThisParamBannedInConstructor:"Constructors cannot have a `this` parameter; constructors don't bind `this` like other functions.",ThisParamMayNotBeOptional:"The `this` parameter cannot be optional.",ThisParamMustBeFirst:"The `this` parameter must be the first function parameter.",ThisParamNoDefault:"The `this` parameter may not have a default value.",TypeBeforeInitializer:"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.",TypeCastInPattern:"The type cast expression is expected to be wrapped with parenthesis.",UnexpectedExplicitInexactInObject:"Explicit inexact syntax must appear at the end of an inexact object.",UnexpectedReservedType:u(({reservedType:a})=>`Unexpected reserved type ${a}.`,"UnexpectedReservedType"),UnexpectedReservedUnderscore:"`_` is only allowed as a type argument to call or new.",UnexpectedSpaceBetweenModuloChecks:"Spaces between `%` and `checks` are not allowed here.",UnexpectedSpreadType:"Spread operator cannot appear in class or interface definitions.",UnexpectedSubtractionOperand:'Unexpected token, expected "number" or "bigint".',UnexpectedTokenAfterTypeParameter:"Expected an arrow function after this type parameter declaration.",UnexpectedTypeParameterBeforeAsyncArrowFunction:"Type parameters must come after the async keyword, e.g. instead of `<T> async () => {}`, use `async <T>() => {}`.",UnsupportedDeclareExportKind:u(({unsupportedExportKind:a,suggestion:t})=>`\`declare export ${a}\` is not supported. Use \`${t}\` instead.`,"UnsupportedDeclareExportKind"),UnsupportedStatementInDeclareModule:"Only declares and type imports are allowed inside declare module.",UnterminatedFlowComment:"Unterminated flow-comment."});function Mr(a){return a.type==="DeclareExportAllDeclaration"||a.type==="DeclareExportDeclaration"&&(!a.declaration||a.declaration.type!=="TypeAlias"&&a.declaration.type!=="InterfaceDeclaration")}u(Mr,"isEsModuleType");function zs(a){return a.importKind==="type"||a.importKind==="typeof"}u(zs,"hasTypeImportKind");var Fr={const:"declare export var",let:"declare export var",type:"export type",interface:"export interface"};function Br(a,t){let e=[],s=[];for(let i=0;i<a.length;i++)(t(a[i],i,a)?e:s).push(a[i]);return[e,s]}u(Br,"partition");var jr=/\*?\s*@((?:no)?flow)\b/,$r=u(a=>class extends a{static{u(this,"FlowParserMixin")}constructor(...e){super(...e),this.flowPragma=void 0}getScopeHandler(){return at}shouldParseTypes(){return this.getPluginOption("flow","all")||this.flowPragma==="flow"}finishToken(e,s){e!==134&&e!==13&&e!==28&&this.flowPragma===void 0&&(this.flowPragma=null),super.finishToken(e,s)}addComment(e){if(this.flowPragma===void 0){let s=jr.exec(e.value);if(s)if(s[1]==="flow")this.flowPragma="flow";else if(s[1]==="noflow")this.flowPragma="noflow";else throw new Error("Unexpected flow pragma")}super.addComment(e)}flowParseTypeInitialiser(e){let s=this.state.inType;this.state.inType=!0,this.expect(e||14);let i=this.flowParseType();return this.state.inType=s,i}flowParsePredicate(){let e=this.startNode(),s=this.state.startLoc;return this.next(),this.expectContextual(110),this.state.lastTokStartLoc.index>s.index+1&&this.raise(A.UnexpectedSpaceBetweenModuloChecks,s),this.eat(10)?(e.value=super.parseExpression(),this.expect(11),this.finishNode(e,"DeclaredPredicate")):this.finishNode(e,"InferredPredicate")}flowParseTypeAndPredicateInitialiser(){let e=this.state.inType;this.state.inType=!0,this.expect(14);let s=null,i=null;return this.match(54)?(this.state.inType=e,i=this.flowParsePredicate()):(s=this.flowParseType(),this.state.inType=e,this.match(54)&&(i=this.flowParsePredicate())),[s,i]}flowParseDeclareClass(e){return this.next(),this.flowParseInterfaceish(e,!0),this.finishNode(e,"DeclareClass")}flowParseDeclareFunction(e){this.next();let s=e.id=this.parseIdentifier(),i=this.startNode(),r=this.startNode();this.match(47)?i.typeParameters=this.flowParseTypeParameterDeclaration():i.typeParameters=null,this.expect(10);let n=this.flowParseFunctionTypeParams();return i.params=n.params,i.rest=n.rest,i.this=n._this,this.expect(11),[i.returnType,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),r.typeAnnotation=this.finishNode(i,"FunctionTypeAnnotation"),s.typeAnnotation=this.finishNode(r,"TypeAnnotation"),this.resetEndLocation(s),this.semicolon(),this.scope.declareName(e.id.name,2048,e.id.loc.start),this.finishNode(e,"DeclareFunction")}flowParseDeclare(e,s){if(this.match(80))return this.flowParseDeclareClass(e);if(this.match(68))return this.flowParseDeclareFunction(e);if(this.match(74))return this.flowParseDeclareVariable(e);if(this.eatContextual(127))return this.match(16)?this.flowParseDeclareModuleExports(e):(s&&this.raise(A.NestedDeclareModule,this.state.lastTokStartLoc),this.flowParseDeclareModule(e));if(this.isContextual(130))return this.flowParseDeclareTypeAlias(e);if(this.isContextual(131))return this.flowParseDeclareOpaqueType(e);if(this.isContextual(129))return this.flowParseDeclareInterface(e);if(this.match(82))return this.flowParseDeclareExportDeclaration(e,s);throw this.unexpected()}flowParseDeclareVariable(e){return this.next(),e.id=this.flowParseTypeAnnotatableIdentifier(),this.scope.declareName(e.id.name,5,e.id.loc.start),this.semicolon(),this.finishNode(e,"DeclareVariable")}flowParseDeclareModule(e){this.scope.enter(0),this.match(134)?e.id=super.parseExprAtom():e.id=this.parseIdentifier();let s=e.body=this.startNode(),i=s.body=[];for(this.expect(5);!this.match(8);){let o=this.startNode();this.match(83)?(this.next(),!this.isContextual(130)&&!this.match(87)&&this.raise(A.InvalidNonTypeImportInDeclareModule,this.state.lastTokStartLoc),i.push(super.parseImport(o))):(this.expectContextual(125,A.UnsupportedStatementInDeclareModule),i.push(this.flowParseDeclare(o,!0)))}this.scope.exit(),this.expect(8),this.finishNode(s,"BlockStatement");let r=null,n=!1;return i.forEach(o=>{Mr(o)?(r==="CommonJS"&&this.raise(A.AmbiguousDeclareModuleKind,o),r="ES"):o.type==="DeclareModuleExports"&&(n&&this.raise(A.DuplicateDeclareModuleExports,o),r==="ES"&&this.raise(A.AmbiguousDeclareModuleKind,o),r="CommonJS",n=!0)}),e.kind=r||"CommonJS",this.finishNode(e,"DeclareModule")}flowParseDeclareExportDeclaration(e,s){if(this.expect(82),this.eat(65))return this.match(68)||this.match(80)?e.declaration=this.flowParseDeclare(this.startNode()):(e.declaration=this.flowParseType(),this.semicolon()),e.default=!0,this.finishNode(e,"DeclareExportDeclaration");if(this.match(75)||this.isLet()||(this.isContextual(130)||this.isContextual(129))&&!s){let i=this.state.value;throw this.raise(A.UnsupportedDeclareExportKind,this.state.startLoc,{unsupportedExportKind:i,suggestion:Fr[i]})}if(this.match(74)||this.match(68)||this.match(80)||this.isContextual(131))return e.declaration=this.flowParseDeclare(this.startNode()),e.default=!1,this.finishNode(e,"DeclareExportDeclaration");if(this.match(55)||this.match(5)||this.isContextual(129)||this.isContextual(130)||this.isContextual(131))return e=this.parseExport(e,null),e.type==="ExportNamedDeclaration"?(e.default=!1,delete e.exportKind,this.castNodeTo(e,"DeclareExportDeclaration")):this.castNodeTo(e,"DeclareExportAllDeclaration");throw this.unexpected()}flowParseDeclareModuleExports(e){return this.next(),this.expectContextual(111),e.typeAnnotation=this.flowParseTypeAnnotation(),this.semicolon(),this.finishNode(e,"DeclareModuleExports")}flowParseDeclareTypeAlias(e){this.next();let s=this.flowParseTypeAlias(e);return this.castNodeTo(s,"DeclareTypeAlias"),s}flowParseDeclareOpaqueType(e){this.next();let s=this.flowParseOpaqueType(e,!0);return this.castNodeTo(s,"DeclareOpaqueType"),s}flowParseDeclareInterface(e){return this.next(),this.flowParseInterfaceish(e,!1),this.finishNode(e,"DeclareInterface")}flowParseInterfaceish(e,s){if(e.id=this.flowParseRestrictedIdentifier(!s,!0),this.scope.declareName(e.id.name,s?17:8201,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.extends=[],this.eat(81))do e.extends.push(this.flowParseInterfaceExtends());while(!s&&this.eat(12));if(s){if(e.implements=[],e.mixins=[],this.eatContextual(117))do e.mixins.push(this.flowParseInterfaceExtends());while(this.eat(12));if(this.eatContextual(113))do e.implements.push(this.flowParseInterfaceExtends());while(this.eat(12))}e.body=this.flowParseObjectType({allowStatic:s,allowExact:!1,allowSpread:!1,allowProto:s,allowInexact:!1})}flowParseInterfaceExtends(){let e=this.startNode();return e.id=this.flowParseQualifiedTypeIdentifier(),this.match(47)?e.typeParameters=this.flowParseTypeParameterInstantiation():e.typeParameters=null,this.finishNode(e,"InterfaceExtends")}flowParseInterface(e){return this.flowParseInterfaceish(e,!1),this.finishNode(e,"InterfaceDeclaration")}checkNotUnderscore(e){e==="_"&&this.raise(A.UnexpectedReservedUnderscore,this.state.startLoc)}checkReservedType(e,s,i){Or.has(e)&&this.raise(i?A.AssignReservedType:A.UnexpectedReservedType,s,{reservedType:e})}flowParseRestrictedIdentifierName(e,s){return this.checkReservedType(this.state.value,this.state.startLoc,s),this.parseIdentifierName(e)}flowParseRestrictedIdentifier(e,s){let i=this.startNode(),r=this.flowParseRestrictedIdentifierName(e,s);return this.createIdentifier(i,r)}flowParseTypeAlias(e){return e.id=this.flowParseRestrictedIdentifier(!1,!0),this.scope.declareName(e.id.name,8201,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.right=this.flowParseTypeInitialiser(29),this.semicolon(),this.finishNode(e,"TypeAlias")}flowParseOpaqueType(e,s){return this.expectContextual(130),e.id=this.flowParseRestrictedIdentifier(!0,!0),this.scope.declareName(e.id.name,8201,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.supertype=null,this.match(14)&&(e.supertype=this.flowParseTypeInitialiser(14)),e.impltype=null,s||(e.impltype=this.flowParseTypeInitialiser(29)),this.semicolon(),this.finishNode(e,"OpaqueType")}flowParseTypeParameterBound(){if(this.match(14)||this.isContextual(81)){let e=this.startNode();return this.next(),e.typeAnnotation=this.flowParseType(),this.finishNode(e,"TypeAnnotation")}}flowParseTypeParameter(e=!1){let s=this.state.startLoc,i=this.startNode(),r=this.flowParseVariance();return i.name=this.flowParseRestrictedIdentifierName(),i.variance=r,i.bound=this.flowParseTypeParameterBound(),this.match(29)?(this.eat(29),i.default=this.flowParseType()):e&&this.raise(A.MissingTypeParamDefault,s),this.finishNode(i,"TypeParameter")}flowParseTypeParameterDeclaration(){let e=this.state.inType,s=this.startNode();s.params=[],this.state.inType=!0,this.match(47)||this.match(143)?this.next():this.unexpected();let i=!1;do{let r=this.flowParseTypeParameter(i);s.params.push(r),r.default&&(i=!0),this.match(48)||this.expect(12)}while(!this.match(48));return this.expect(48),this.state.inType=e,this.finishNode(s,"TypeParameterDeclaration")}flowInTopLevelContext(e){if(this.curContext()!==D.brace){let s=this.state.context;this.state.context=[s[0]];try{return e()}finally{this.state.context=s}}else return e()}flowParseTypeParameterInstantiationInExpression(){if(this.reScan_lt()===47)return this.flowParseTypeParameterInstantiation()}flowParseTypeParameterInstantiation(){let e=this.startNode(),s=this.state.inType;return this.state.inType=!0,e.params=[],this.flowInTopLevelContext(()=>{this.expect(47);let i=this.state.noAnonFunctionType;for(this.state.noAnonFunctionType=!1;!this.match(48);)e.params.push(this.flowParseType()),this.match(48)||this.expect(12);this.state.noAnonFunctionType=i}),this.state.inType=s,!this.state.inType&&this.curContext()===D.brace&&this.reScan_lt_gt(),this.expect(48),this.finishNode(e,"TypeParameterInstantiation")}flowParseTypeParameterInstantiationCallOrNew(){if(this.reScan_lt()!==47)return null;let e=this.startNode(),s=this.state.inType;for(e.params=[],this.state.inType=!0,this.expect(47);!this.match(48);)e.params.push(this.flowParseTypeOrImplicitInstantiation()),this.match(48)||this.expect(12);return this.expect(48),this.state.inType=s,this.finishNode(e,"TypeParameterInstantiation")}flowParseInterfaceType(){let e=this.startNode();if(this.expectContextual(129),e.extends=[],this.eat(81))do e.extends.push(this.flowParseInterfaceExtends());while(this.eat(12));return e.body=this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!1,allowProto:!1,allowInexact:!1}),this.finishNode(e,"InterfaceTypeAnnotation")}flowParseObjectPropertyKey(){return this.match(135)||this.match(134)?super.parseExprAtom():this.parseIdentifier(!0)}flowParseObjectTypeIndexer(e,s,i){return e.static=s,this.lookahead().type===14?(e.id=this.flowParseObjectPropertyKey(),e.key=this.flowParseTypeInitialiser()):(e.id=null,e.key=this.flowParseType()),this.expect(3),e.value=this.flowParseTypeInitialiser(),e.variance=i,this.finishNode(e,"ObjectTypeIndexer")}flowParseObjectTypeInternalSlot(e,s){return e.static=s,e.id=this.flowParseObjectPropertyKey(),this.expect(3),this.expect(3),this.match(47)||this.match(10)?(e.method=!0,e.optional=!1,e.value=this.flowParseObjectTypeMethodish(this.startNodeAt(e.loc.start))):(e.method=!1,this.eat(17)&&(e.optional=!0),e.value=this.flowParseTypeInitialiser()),this.finishNode(e,"ObjectTypeInternalSlot")}flowParseObjectTypeMethodish(e){for(e.params=[],e.rest=null,e.typeParameters=null,e.this=null,this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration()),this.expect(10),this.match(78)&&(e.this=this.flowParseFunctionTypeParam(!0),e.this.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)e.params.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(e.rest=this.flowParseFunctionTypeParam(!1)),this.expect(11),e.returnType=this.flowParseTypeInitialiser(),this.finishNode(e,"FunctionTypeAnnotation")}flowParseObjectTypeCallProperty(e,s){let i=this.startNode();return e.static=s,e.value=this.flowParseObjectTypeMethodish(i),this.finishNode(e,"ObjectTypeCallProperty")}flowParseObjectType({allowStatic:e,allowExact:s,allowSpread:i,allowProto:r,allowInexact:n}){let o=this.state.inType;this.state.inType=!0;let l=this.startNode();l.callProperties=[],l.properties=[],l.indexers=[],l.internalSlots=[];let c,h,f=!1;for(s&&this.match(6)?(this.expect(6),c=9,h=!0):(this.expect(5),c=8,h=!1),l.exact=h;!this.match(c);){let m=!1,g=null,I=null,L=this.startNode();if(r&&this.isContextual(118)){let S=this.lookahead();S.type!==14&&S.type!==17&&(this.next(),g=this.state.startLoc,e=!1)}if(e&&this.isContextual(106)){let S=this.lookahead();S.type!==14&&S.type!==17&&(this.next(),m=!0)}let y=this.flowParseVariance();if(this.eat(0))g!=null&&this.unexpected(g),this.eat(0)?(y&&this.unexpected(y.loc.start),l.internalSlots.push(this.flowParseObjectTypeInternalSlot(L,m))):l.indexers.push(this.flowParseObjectTypeIndexer(L,m,y));else if(this.match(10)||this.match(47))g!=null&&this.unexpected(g),y&&this.unexpected(y.loc.start),l.callProperties.push(this.flowParseObjectTypeCallProperty(L,m));else{let S="init";if(this.isContextual(99)||this.isContextual(104)){let N=this.lookahead();Qs(N.type)&&(S=this.state.value,this.next())}let C=this.flowParseObjectTypeProperty(L,m,g,y,S,i,n??!h);C===null?(f=!0,I=this.state.lastTokStartLoc):l.properties.push(C)}this.flowObjectTypeSemicolon(),I&&!this.match(8)&&!this.match(9)&&this.raise(A.UnexpectedExplicitInexactInObject,I)}this.expect(c),i&&(l.inexact=f);let d=this.finishNode(l,"ObjectTypeAnnotation");return this.state.inType=o,d}flowParseObjectTypeProperty(e,s,i,r,n,o,l){if(this.eat(21))return this.match(12)||this.match(13)||this.match(8)||this.match(9)?(o?l||this.raise(A.InexactInsideExact,this.state.lastTokStartLoc):this.raise(A.InexactInsideNonObject,this.state.lastTokStartLoc),r&&this.raise(A.InexactVariance,r),null):(o||this.raise(A.UnexpectedSpreadType,this.state.lastTokStartLoc),i!=null&&this.unexpected(i),r&&this.raise(A.SpreadVariance,r),e.argument=this.flowParseType(),this.finishNode(e,"ObjectTypeSpreadProperty"));{e.key=this.flowParseObjectPropertyKey(),e.static=s,e.proto=i!=null,e.kind=n;let c=!1;return this.match(47)||this.match(10)?(e.method=!0,i!=null&&this.unexpected(i),r&&this.unexpected(r.loc.start),e.value=this.flowParseObjectTypeMethodish(this.startNodeAt(e.loc.start)),(n==="get"||n==="set")&&this.flowCheckGetterSetterParams(e),!o&&e.key.name==="constructor"&&e.value.this&&this.raise(A.ThisParamBannedInConstructor,e.value.this)):(n!=="init"&&this.unexpected(),e.method=!1,this.eat(17)&&(c=!0),e.value=this.flowParseTypeInitialiser(),e.variance=r),e.optional=c,this.finishNode(e,"ObjectTypeProperty")}}flowCheckGetterSetterParams(e){let s=e.kind==="get"?0:1,i=e.value.params.length+(e.value.rest?1:0);e.value.this&&this.raise(e.kind==="get"?A.GetterMayNotHaveThisParam:A.SetterMayNotHaveThisParam,e.value.this),i!==s&&this.raise(e.kind==="get"?p.BadGetterArity:p.BadSetterArity,e),e.kind==="set"&&e.value.rest&&this.raise(p.BadSetterRestParameter,e)}flowObjectTypeSemicolon(){!this.eat(13)&&!this.eat(12)&&!this.match(8)&&!this.match(9)&&this.unexpected()}flowParseQualifiedTypeIdentifier(e,s){e??(e=this.state.startLoc);let i=s||this.flowParseRestrictedIdentifier(!0);for(;this.eat(16);){let r=this.startNodeAt(e);r.qualification=i,r.id=this.flowParseRestrictedIdentifier(!0),i=this.finishNode(r,"QualifiedTypeIdentifier")}return i}flowParseGenericType(e,s){let i=this.startNodeAt(e);return i.typeParameters=null,i.id=this.flowParseQualifiedTypeIdentifier(e,s),this.match(47)&&(i.typeParameters=this.flowParseTypeParameterInstantiation()),this.finishNode(i,"GenericTypeAnnotation")}flowParseTypeofType(){let e=this.startNode();return this.expect(87),e.argument=this.flowParsePrimaryType(),this.finishNode(e,"TypeofTypeAnnotation")}flowParseTupleType(){let e=this.startNode();for(e.types=[],this.expect(0);this.state.pos<this.length&&!this.match(3)&&(e.types.push(this.flowParseType()),!this.match(3));)this.expect(12);return this.expect(3),this.finishNode(e,"TupleTypeAnnotation")}flowParseFunctionTypeParam(e){let s=null,i=!1,r=null,n=this.startNode(),o=this.lookahead(),l=this.state.type===78;return o.type===14||o.type===17?(l&&!e&&this.raise(A.ThisParamMustBeFirst,n),s=this.parseIdentifier(l),this.eat(17)&&(i=!0,l&&this.raise(A.ThisParamMayNotBeOptional,n)),r=this.flowParseTypeInitialiser()):r=this.flowParseType(),n.name=s,n.optional=i,n.typeAnnotation=r,this.finishNode(n,"FunctionTypeParam")}reinterpretTypeAsFunctionTypeParam(e){let s=this.startNodeAt(e.loc.start);return s.name=null,s.optional=!1,s.typeAnnotation=e,this.finishNode(s,"FunctionTypeParam")}flowParseFunctionTypeParams(e=[]){let s=null,i=null;for(this.match(78)&&(i=this.flowParseFunctionTypeParam(!0),i.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)e.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(s=this.flowParseFunctionTypeParam(!1)),{params:e,rest:s,_this:i}}flowIdentToTypeAnnotation(e,s,i){switch(i.name){case"any":return this.finishNode(s,"AnyTypeAnnotation");case"bool":case"boolean":return this.finishNode(s,"BooleanTypeAnnotation");case"mixed":return this.finishNode(s,"MixedTypeAnnotation");case"empty":return this.finishNode(s,"EmptyTypeAnnotation");case"number":return this.finishNode(s,"NumberTypeAnnotation");case"string":return this.finishNode(s,"StringTypeAnnotation");case"symbol":return this.finishNode(s,"SymbolTypeAnnotation");default:return this.checkNotUnderscore(i.name),this.flowParseGenericType(e,i)}}flowParsePrimaryType(){let e=this.state.startLoc,s=this.startNode(),i,r,n=!1,o=this.state.noAnonFunctionType;switch(this.state.type){case 5:return this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!0,allowProto:!1,allowInexact:!0});case 6:return this.flowParseObjectType({allowStatic:!1,allowExact:!0,allowSpread:!0,allowProto:!1,allowInexact:!1});case 0:return this.state.noAnonFunctionType=!1,r=this.flowParseTupleType(),this.state.noAnonFunctionType=o,r;case 47:{let l=this.startNode();return l.typeParameters=this.flowParseTypeParameterDeclaration(),this.expect(10),i=this.flowParseFunctionTypeParams(),l.params=i.params,l.rest=i.rest,l.this=i._this,this.expect(11),this.expect(19),l.returnType=this.flowParseType(),this.finishNode(l,"FunctionTypeAnnotation")}case 10:{let l=this.startNode();if(this.next(),!this.match(11)&&!this.match(21))if(O(this.state.type)||this.match(78)){let c=this.lookahead().type;n=c!==17&&c!==14}else n=!0;if(n){if(this.state.noAnonFunctionType=!1,r=this.flowParseType(),this.state.noAnonFunctionType=o,this.state.noAnonFunctionType||!(this.match(12)||this.match(11)&&this.lookahead().type===19))return this.expect(11),r;this.eat(12)}return r?i=this.flowParseFunctionTypeParams([this.reinterpretTypeAsFunctionTypeParam(r)]):i=this.flowParseFunctionTypeParams(),l.params=i.params,l.rest=i.rest,l.this=i._this,this.expect(11),this.expect(19),l.returnType=this.flowParseType(),l.typeParameters=null,this.finishNode(l,"FunctionTypeAnnotation")}case 134:return this.parseLiteral(this.state.value,"StringLiteralTypeAnnotation");case 85:case 86:return s.value=this.match(85),this.next(),this.finishNode(s,"BooleanLiteralTypeAnnotation");case 53:if(this.state.value==="-"){if(this.next(),this.match(135))return this.parseLiteralAtNode(-this.state.value,"NumberLiteralTypeAnnotation",s);if(this.match(136))return this.parseLiteralAtNode(-this.state.value,"BigIntLiteralTypeAnnotation",s);throw this.raise(A.UnexpectedSubtractionOperand,this.state.startLoc)}throw this.unexpected();case 135:return this.parseLiteral(this.state.value,"NumberLiteralTypeAnnotation");case 136:return this.parseLiteral(this.state.value,"BigIntLiteralTypeAnnotation");case 88:return this.next(),this.finishNode(s,"VoidTypeAnnotation");case 84:return this.next(),this.finishNode(s,"NullLiteralTypeAnnotation");case 78:return this.next(),this.finishNode(s,"ThisTypeAnnotation");case 55:return this.next(),this.finishNode(s,"ExistsTypeAnnotation");case 87:return this.flowParseTypeofType();default:if(kt(this.state.type)){let l=se(this.state.type);return this.next(),super.createIdentifier(s,l)}else if(O(this.state.type))return this.isContextual(129)?this.flowParseInterfaceType():this.flowIdentToTypeAnnotation(e,s,this.parseIdentifier())}throw this.unexpected()}flowParsePostfixType(){let e=this.state.startLoc,s=this.flowParsePrimaryType(),i=!1;for(;(this.match(0)||this.match(18))&&!this.canInsertSemicolon();){let r=this.startNodeAt(e),n=this.eat(18);i=i||n,this.expect(0),!n&&this.match(3)?(r.elementType=s,this.next(),s=this.finishNode(r,"ArrayTypeAnnotation")):(r.objectType=s,r.indexType=this.flowParseType(),this.expect(3),i?(r.optional=n,s=this.finishNode(r,"OptionalIndexedAccessType")):s=this.finishNode(r,"IndexedAccessType"))}return s}flowParsePrefixType(){let e=this.startNode();return this.eat(17)?(e.typeAnnotation=this.flowParsePrefixType(),this.finishNode(e,"NullableTypeAnnotation")):this.flowParsePostfixType()}flowParseAnonFunctionWithoutParens(){let e=this.flowParsePrefixType();if(!this.state.noAnonFunctionType&&this.eat(19)){let s=this.startNodeAt(e.loc.start);return s.params=[this.reinterpretTypeAsFunctionTypeParam(e)],s.rest=null,s.this=null,s.returnType=this.flowParseType(),s.typeParameters=null,this.finishNode(s,"FunctionTypeAnnotation")}return e}flowParseIntersectionType(){let e=this.startNode();this.eat(45);let s=this.flowParseAnonFunctionWithoutParens();for(e.types=[s];this.eat(45);)e.types.push(this.flowParseAnonFunctionWithoutParens());return e.types.length===1?s:this.finishNode(e,"IntersectionTypeAnnotation")}flowParseUnionType(){let e=this.startNode();this.eat(43);let s=this.flowParseIntersectionType();for(e.types=[s];this.eat(43);)e.types.push(this.flowParseIntersectionType());return e.types.length===1?s:this.finishNode(e,"UnionTypeAnnotation")}flowParseType(){let e=this.state.inType;this.state.inType=!0;let s=this.flowParseUnionType();return this.state.inType=e,s}flowParseTypeOrImplicitInstantiation(){if(this.state.type===132&&this.state.value==="_"){let e=this.state.startLoc,s=this.parseIdentifier();return this.flowParseGenericType(e,s)}else return this.flowParseType()}flowParseTypeAnnotation(){let e=this.startNode();return e.typeAnnotation=this.flowParseTypeInitialiser(),this.finishNode(e,"TypeAnnotation")}flowParseTypeAnnotatableIdentifier(){let e=this.startNode(),s=this.parseIdentifierName();return this.match(14)&&(e.typeAnnotation=this.flowParseTypeAnnotation()),this.createIdentifier(e,s)}typeCastToParameter(e){return e.expression.typeAnnotation=e.typeAnnotation,this.resetEndLocation(e.expression,e.typeAnnotation.loc.end),e.expression}flowParseVariance(){let e=null;return this.match(53)?(e=this.startNode(),this.state.value==="+"?e.kind="plus":e.kind="minus",this.next(),this.finishNode(e,"Variance")):e}parseFunctionBody(e,s,i=!1){if(s){this.forwardNoArrowParamsConversionAt(e,()=>super.parseFunctionBody(e,!0,i));return}super.parseFunctionBody(e,!1,i)}parseFunctionBodyAndFinish(e,s,i=!1){if(this.match(14)){let r=this.startNode();[r.typeAnnotation,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),e.returnType=r.typeAnnotation?this.finishNode(r,"TypeAnnotation"):null}return super.parseFunctionBodyAndFinish(e,s,i)}parseStatementLike(e){if(this.state.strict&&this.isContextual(129)){let i=this.lookahead();if(H(i.type)){let r=this.startNode();return this.next(),this.flowParseInterface(r)}}else if(this.isContextual(126)){let i=this.startNode();return this.next(),this.flowParseEnumDeclaration(i)}let s=super.parseStatementLike(e);return this.flowPragma===void 0&&!this.isValidDirective(s)&&(this.flowPragma=null),s}parseExpressionStatement(e,s,i){if(s.type==="Identifier"){if(s.name==="declare"){if(this.match(80)||O(this.state.type)||this.match(68)||this.match(74)||this.match(82))return this.flowParseDeclare(e)}else if(O(this.state.type)){if(s.name==="interface")return this.flowParseInterface(e);if(s.name==="type")return this.flowParseTypeAlias(e);if(s.name==="opaque")return this.flowParseOpaqueType(e,!1)}}return super.parseExpressionStatement(e,s,i)}shouldParseExportDeclaration(){let{type:e}=this.state;return e===126||Vs(e)?!this.state.containsEsc:super.shouldParseExportDeclaration()}isExportDefaultSpecifier(){let{type:e}=this.state;return e===126||Vs(e)?this.state.containsEsc:super.isExportDefaultSpecifier()}parseExportDefaultExpression(){if(this.isContextual(126)){let e=this.startNode();return this.next(),this.flowParseEnumDeclaration(e)}return super.parseExportDefaultExpression()}parseConditional(e,s,i){if(!this.match(17))return e;if(this.state.maybeInArrowParameters){let d=this.lookaheadCharCode();if(d===44||d===61||d===58||d===41)return this.setOptionalParametersError(i),e}this.expect(17);let r=this.state.clone(),n=this.state.noArrowAt,o=this.startNodeAt(s),{consequent:l,failed:c}=this.tryParseConditionalConsequent(),[h,f]=this.getArrowLikeExpressions(l);if(c||f.length>0){let d=[...n];if(f.length>0){this.state=r,this.state.noArrowAt=d;for(let m=0;m<f.length;m++)d.push(f[m].start);({consequent:l,failed:c}=this.tryParseConditionalConsequent()),[h,f]=this.getArrowLikeExpressions(l)}c&&h.length>1&&this.raise(A.AmbiguousConditionalArrow,r.startLoc),c&&h.length===1&&(this.state=r,d.push(h[0].start),this.state.noArrowAt=d,{consequent:l,failed:c}=this.tryParseConditionalConsequent())}return this.getArrowLikeExpressions(l,!0),this.state.noArrowAt=n,this.expect(14),o.test=e,o.consequent=l,o.alternate=this.forwardNoArrowParamsConversionAt(o,()=>this.parseMaybeAssign(void 0,void 0)),this.finishNode(o,"ConditionalExpression")}tryParseConditionalConsequent(){this.state.noArrowParamsConversionAt.push(this.state.start);let e=this.parseMaybeAssignAllowIn(),s=!this.match(14);return this.state.noArrowParamsConversionAt.pop(),{consequent:e,failed:s}}getArrowLikeExpressions(e,s){let i=[e],r=[];for(;i.length!==0;){let n=i.pop();n.type==="ArrowFunctionExpression"&&n.body.type!=="BlockStatement"?(n.typeParameters||!n.returnType?this.finishArrowValidation(n):r.push(n),i.push(n.body)):n.type==="ConditionalExpression"&&(i.push(n.consequent),i.push(n.alternate))}return s?(r.forEach(n=>this.finishArrowValidation(n)),[r,[]]):Br(r,n=>n.params.every(o=>this.isAssignable(o,!0)))}finishArrowValidation(e){var s;this.toAssignableList(e.params,(s=e.extra)==null?void 0:s.trailingCommaLoc,!1),this.scope.enter(518),super.checkParams(e,!1,!0),this.scope.exit()}forwardNoArrowParamsConversionAt(e,s){let i;return this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(e.start))?(this.state.noArrowParamsConversionAt.push(this.state.start),i=s(),this.state.noArrowParamsConversionAt.pop()):i=s(),i}parseParenItem(e,s){let i=super.parseParenItem(e,s);if(this.eat(17)&&(i.optional=!0,this.resetEndLocation(e)),this.match(14)){let r=this.startNodeAt(s);return r.expression=i,r.typeAnnotation=this.flowParseTypeAnnotation(),this.finishNode(r,"TypeCastExpression")}return i}assertModuleNodeAllowed(e){e.type==="ImportDeclaration"&&(e.importKind==="type"||e.importKind==="typeof")||e.type==="ExportNamedDeclaration"&&e.exportKind==="type"||e.type==="ExportAllDeclaration"&&e.exportKind==="type"||super.assertModuleNodeAllowed(e)}parseExportDeclaration(e){if(this.isContextual(130)){e.exportKind="type";let s=this.startNode();return this.next(),this.match(5)?(e.specifiers=this.parseExportSpecifiers(!0),super.parseExportFrom(e),null):this.flowParseTypeAlias(s)}else if(this.isContextual(131)){e.exportKind="type";let s=this.startNode();return this.next(),this.flowParseOpaqueType(s,!1)}else if(this.isContextual(129)){e.exportKind="type";let s=this.startNode();return this.next(),this.flowParseInterface(s)}else if(this.isContextual(126)){e.exportKind="value";let s=this.startNode();return this.next(),this.flowParseEnumDeclaration(s)}else return super.parseExportDeclaration(e)}eatExportStar(e){return super.eatExportStar(e)?!0:this.isContextual(130)&&this.lookahead().type===55?(e.exportKind="type",this.next(),this.next(),!0):!1}maybeParseExportNamespaceSpecifier(e){let{startLoc:s}=this.state,i=super.maybeParseExportNamespaceSpecifier(e);return i&&e.exportKind==="type"&&this.unexpected(s),i}parseClassId(e,s,i){super.parseClassId(e,s,i),this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration())}parseClassMember(e,s,i){let{startLoc:r}=this.state;if(this.isContextual(125)){if(super.parseClassMemberFromModifier(e,s))return;s.declare=!0}super.parseClassMember(e,s,i),s.declare&&(s.type!=="ClassProperty"&&s.type!=="ClassPrivateProperty"&&s.type!=="PropertyDefinition"?this.raise(A.DeclareClassElement,r):s.value&&this.raise(A.DeclareClassFieldInitializer,s.value))}isIterator(e){return e==="iterator"||e==="asyncIterator"}readIterator(){let e=super.readWord1(),s="@@"+e;(!this.isIterator(e)||!this.state.inType)&&this.raise(p.InvalidIdentifier,this.state.curPosition(),{identifierName:s}),this.finishToken(132,s)}getTokenFromCode(e){let s=this.input.charCodeAt(this.state.pos+1);e===123&&s===124?this.finishOp(6,2):this.state.inType&&(e===62||e===60)?this.finishOp(e===62?48:47,1):this.state.inType&&e===63?s===46?this.finishOp(18,2):this.finishOp(17,1):kr(e,s,this.input.charCodeAt(this.state.pos+2))?(this.state.pos+=2,this.readIterator()):super.getTokenFromCode(e)}isAssignable(e,s){return e.type==="TypeCastExpression"?this.isAssignable(e.expression,s):super.isAssignable(e,s)}toAssignable(e,s=!1){!s&&e.type==="AssignmentExpression"&&e.left.type==="TypeCastExpression"&&(e.left=this.typeCastToParameter(e.left)),super.toAssignable(e,s)}toAssignableList(e,s,i){for(let r=0;r<e.length;r++){let n=e[r];n?.type==="TypeCastExpression"&&(e[r]=this.typeCastToParameter(n))}super.toAssignableList(e,s,i)}toReferencedList(e,s){for(let r=0;r<e.length;r++){var i;let n=e[r];n&&n.type==="TypeCastExpression"&&!((i=n.extra)!=null&&i.parenthesized)&&(e.length>1||!s)&&this.raise(A.TypeCastInPattern,n.typeAnnotation)}return e}parseArrayLike(e,s,i){let r=super.parseArrayLike(e,s,i);return i!=null&&!this.state.maybeInArrowParameters&&this.toReferencedList(r.elements),r}isValidLVal(e,s,i,r){return e==="TypeCastExpression"||super.isValidLVal(e,s,i,r)}parseClassProperty(e){return this.match(14)&&(e.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassProperty(e)}parseClassPrivateProperty(e){return this.match(14)&&(e.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassPrivateProperty(e)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(14)||super.isClassProperty()}isNonstaticConstructor(e){return!this.match(14)&&super.isNonstaticConstructor(e)}pushClassMethod(e,s,i,r,n,o){if(s.variance&&this.unexpected(s.variance.loc.start),delete s.variance,this.match(47)&&(s.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassMethod(e,s,i,r,n,o),s.params&&n){let l=s.params;l.length>0&&this.isThisParam(l[0])&&this.raise(A.ThisParamBannedInConstructor,s)}else if(s.type==="MethodDefinition"&&n&&s.value.params){let l=s.value.params;l.length>0&&this.isThisParam(l[0])&&this.raise(A.ThisParamBannedInConstructor,s)}}pushClassPrivateMethod(e,s,i,r){s.variance&&this.unexpected(s.variance.loc.start),delete s.variance,this.match(47)&&(s.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassPrivateMethod(e,s,i,r)}parseClassSuper(e){if(super.parseClassSuper(e),e.superClass&&(this.match(47)||this.match(51))&&(e.superTypeParameters=this.flowParseTypeParameterInstantiationInExpression()),this.isContextual(113)){this.next();let s=e.implements=[];do{let i=this.startNode();i.id=this.flowParseRestrictedIdentifier(!0),this.match(47)?i.typeParameters=this.flowParseTypeParameterInstantiation():i.typeParameters=null,s.push(this.finishNode(i,"ClassImplements"))}while(this.eat(12))}}checkGetterSetterParams(e){super.checkGetterSetterParams(e);let s=this.getObjectOrClassMethodParams(e);if(s.length>0){let i=s[0];this.isThisParam(i)&&e.kind==="get"?this.raise(A.GetterMayNotHaveThisParam,i):this.isThisParam(i)&&this.raise(A.SetterMayNotHaveThisParam,i)}}parsePropertyNamePrefixOperator(e){e.variance=this.flowParseVariance()}parseObjPropValue(e,s,i,r,n,o,l){e.variance&&this.unexpected(e.variance.loc.start),delete e.variance;let c;this.match(47)&&!o&&(c=this.flowParseTypeParameterDeclaration(),this.match(10)||this.unexpected());let h=super.parseObjPropValue(e,s,i,r,n,o,l);return c&&((h.value||h).typeParameters=c),h}parseFunctionParamType(e){return this.eat(17)&&(e.type!=="Identifier"&&this.raise(A.PatternIsOptional,e),this.isThisParam(e)&&this.raise(A.ThisParamMayNotBeOptional,e),e.optional=!0),this.match(14)?e.typeAnnotation=this.flowParseTypeAnnotation():this.isThisParam(e)&&this.raise(A.ThisParamAnnotationRequired,e),this.match(29)&&this.isThisParam(e)&&this.raise(A.ThisParamNoDefault,e),this.resetEndLocation(e),e}parseMaybeDefault(e,s){let i=super.parseMaybeDefault(e,s);return i.type==="AssignmentPattern"&&i.typeAnnotation&&i.right.start<i.typeAnnotation.start&&this.raise(A.TypeBeforeInitializer,i.typeAnnotation),i}checkImportReflection(e){super.checkImportReflection(e),e.module&&e.importKind!=="value"&&this.raise(A.ImportReflectionHasImportType,e.specifiers[0].loc.start)}parseImportSpecifierLocal(e,s,i){s.local=zs(e)?this.flowParseRestrictedIdentifier(!0,!0):this.parseIdentifier(),e.specifiers.push(this.finishImportSpecifier(s,i))}isPotentialImportPhase(e){if(super.isPotentialImportPhase(e))return!0;if(this.isContextual(130)){if(!e)return!0;let s=this.lookaheadCharCode();return s===123||s===42}return!e&&this.isContextual(87)}applyImportPhase(e,s,i,r){if(super.applyImportPhase(e,s,i,r),s){if(!i&&this.match(65))return;e.exportKind=i==="type"?i:"value"}else i==="type"&&this.match(55)&&this.unexpected(),e.importKind=i==="type"||i==="typeof"?i:"value"}parseImportSpecifier(e,s,i,r,n){let o=e.imported,l=null;o.type==="Identifier"&&(o.name==="type"?l="type":o.name==="typeof"&&(l="typeof"));let c=!1;if(this.isContextual(93)&&!this.isLookaheadContextual("as")){let f=this.parseIdentifier(!0);l!==null&&!H(this.state.type)?(e.imported=f,e.importKind=l,e.local=this.cloneIdentifier(f)):(e.imported=o,e.importKind=null,e.local=this.parseIdentifier())}else{if(l!==null&&H(this.state.type))e.imported=this.parseIdentifier(!0),e.importKind=l;else{if(s)throw this.raise(p.ImportBindingIsString,e,{importName:o.value});e.imported=o,e.importKind=null}this.eatContextual(93)?e.local=this.parseIdentifier():(c=!0,e.local=this.cloneIdentifier(e.imported))}let h=zs(e);return i&&h&&this.raise(A.ImportTypeShorthandOnlyInPureImport,e),(i||h)&&this.checkReservedType(e.local.name,e.local.loc.start,!0),c&&!i&&!h&&this.checkReservedWord(e.local.name,e.loc.start,!0,!0),this.finishImportSpecifier(e,"ImportSpecifier")}parseBindingAtom(){switch(this.state.type){case 78:return this.parseIdentifier(!0);default:return super.parseBindingAtom()}}parseFunctionParams(e,s){let i=e.kind;i!=="get"&&i!=="set"&&this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration()),super.parseFunctionParams(e,s)}parseVarId(e,s){super.parseVarId(e,s),this.match(14)&&(e.id.typeAnnotation=this.flowParseTypeAnnotation(),this.resetEndLocation(e.id))}parseAsyncArrowFromCallExpression(e,s){if(this.match(14)){let i=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0,e.returnType=this.flowParseTypeAnnotation(),this.state.noAnonFunctionType=i}return super.parseAsyncArrowFromCallExpression(e,s)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}parseMaybeAssign(e,s){var i;let r=null,n;if(this.hasPlugin("jsx")&&(this.match(143)||this.match(47))){if(r=this.state.clone(),n=this.tryParse(()=>super.parseMaybeAssign(e,s),r),!n.error)return n.node;let{context:c}=this.state,h=c[c.length-1];(h===D.j_oTag||h===D.j_expr)&&c.pop()}if((i=n)!=null&&i.error||this.match(47)){var o,l;r=r||this.state.clone();let c,h=this.tryParse(d=>{var m;c=this.flowParseTypeParameterDeclaration();let g=this.forwardNoArrowParamsConversionAt(c,()=>{let L=super.parseMaybeAssign(e,s);return this.resetStartLocationFromNode(L,c),L});(m=g.extra)!=null&&m.parenthesized&&d();let I=this.maybeUnwrapTypeCastExpression(g);return I.type!=="ArrowFunctionExpression"&&d(),I.typeParameters=c,this.resetStartLocationFromNode(I,c),g},r),f=null;if(h.node&&this.maybeUnwrapTypeCastExpression(h.node).type==="ArrowFunctionExpression"){if(!h.error&&!h.aborted)return h.node.async&&this.raise(A.UnexpectedTypeParameterBeforeAsyncArrowFunction,c),h.node;f=h.node}if((o=n)!=null&&o.node)return this.state=n.failState,n.node;if(f)return this.state=h.failState,f;throw(l=n)!=null&&l.thrown?n.error:h.thrown?h.error:this.raise(A.UnexpectedTokenAfterTypeParameter,c)}return super.parseMaybeAssign(e,s)}parseArrow(e){if(this.match(14)){let s=this.tryParse(()=>{let i=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0;let r=this.startNode();return[r.typeAnnotation,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),this.state.noAnonFunctionType=i,this.canInsertSemicolon()&&this.unexpected(),this.match(19)||this.unexpected(),r});if(s.thrown)return null;s.error&&(this.state=s.failState),e.returnType=s.node.typeAnnotation?this.finishNode(s.node,"TypeAnnotation"):null}return super.parseArrow(e)}shouldParseArrow(e){return this.match(14)||super.shouldParseArrow(e)}setArrowFunctionParameters(e,s){this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(e.start))?e.params=s:super.setArrowFunctionParameters(e,s)}checkParams(e,s,i,r=!0){if(!(i&&this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(e.start)))){for(let n=0;n<e.params.length;n++)this.isThisParam(e.params[n])&&n>0&&this.raise(A.ThisParamMustBeFirst,e.params[n]);super.checkParams(e,s,i,r)}}parseParenAndDistinguishExpression(e){return super.parseParenAndDistinguishExpression(e&&!this.state.noArrowAt.includes(this.sourceToOffsetPos(this.state.start)))}parseSubscripts(e,s,i){if(e.type==="Identifier"&&e.name==="async"&&this.state.noArrowAt.includes(s.index)){this.next();let r=this.startNodeAt(s);r.callee=e,r.arguments=super.parseCallExpressionArguments(),e=this.finishNode(r,"CallExpression")}else if(e.type==="Identifier"&&e.name==="async"&&this.match(47)){let r=this.state.clone(),n=this.tryParse(l=>this.parseAsyncArrowWithTypeParameters(s)||l(),r);if(!n.error&&!n.aborted)return n.node;let o=this.tryParse(()=>super.parseSubscripts(e,s,i),r);if(o.node&&!o.error)return o.node;if(n.node)return this.state=n.failState,n.node;if(o.node)return this.state=o.failState,o.node;throw n.error||o.error}return super.parseSubscripts(e,s,i)}parseSubscript(e,s,i,r){if(this.match(18)&&this.isLookaheadToken_lt()){if(r.optionalChainMember=!0,i)return r.stop=!0,e;this.next();let n=this.startNodeAt(s);return n.callee=e,n.typeArguments=this.flowParseTypeParameterInstantiationInExpression(),this.expect(10),n.arguments=this.parseCallExpressionArguments(),n.optional=!0,this.finishCallExpression(n,!0)}else if(!i&&this.shouldParseTypes()&&(this.match(47)||this.match(51))){let n=this.startNodeAt(s);n.callee=e;let o=this.tryParse(()=>(n.typeArguments=this.flowParseTypeParameterInstantiationCallOrNew(),this.expect(10),n.arguments=super.parseCallExpressionArguments(),r.optionalChainMember&&(n.optional=!1),this.finishCallExpression(n,r.optionalChainMember)));if(o.node)return o.error&&(this.state=o.failState),o.node}return super.parseSubscript(e,s,i,r)}parseNewCallee(e){super.parseNewCallee(e);let s=null;this.shouldParseTypes()&&this.match(47)&&(s=this.tryParse(()=>this.flowParseTypeParameterInstantiationCallOrNew()).node),e.typeArguments=s}parseAsyncArrowWithTypeParameters(e){let s=this.startNodeAt(e);if(this.parseFunctionParams(s,!1),!!this.parseArrow(s))return super.parseArrowExpression(s,void 0,!0)}readToken_mult_modulo(e){let s=this.input.charCodeAt(this.state.pos+1);if(e===42&&s===47&&this.state.hasFlowComment){this.state.hasFlowComment=!1,this.state.pos+=2,this.nextToken();return}super.readToken_mult_modulo(e)}readToken_pipe_amp(e){let s=this.input.charCodeAt(this.state.pos+1);if(e===124&&s===125){this.finishOp(9,2);return}super.readToken_pipe_amp(e)}parseTopLevel(e,s){let i=super.parseTopLevel(e,s);return this.state.hasFlowComment&&this.raise(A.UnterminatedFlowComment,this.state.curPosition()),i}skipBlockComment(){if(this.hasPlugin("flowComments")&&this.skipFlowComment()){if(this.state.hasFlowComment)throw this.raise(A.NestedFlowComment,this.state.startLoc);this.hasFlowCommentCompletion();let e=this.skipFlowComment();e&&(this.state.pos+=e,this.state.hasFlowComment=!0);return}return super.skipBlockComment(this.state.hasFlowComment?"*-/":"*/")}skipFlowComment(){let{pos:e}=this.state,s=2;for(;[32,9].includes(this.input.charCodeAt(e+s));)s++;let i=this.input.charCodeAt(s+e),r=this.input.charCodeAt(s+e+1);return i===58&&r===58?s+2:this.input.slice(s+e,s+e+12)==="flow-include"?s+12:i===58&&r!==58?s:!1}hasFlowCommentCompletion(){if(this.input.indexOf("*/",this.state.pos)===-1)throw this.raise(p.UnterminatedComment,this.state.curPosition())}flowEnumErrorBooleanMemberNotInitialized(e,{enumName:s,memberName:i}){this.raise(A.EnumBooleanMemberNotInitialized,e,{memberName:i,enumName:s})}flowEnumErrorInvalidMemberInitializer(e,s){return this.raise(s.explicitType?s.explicitType==="symbol"?A.EnumInvalidMemberInitializerSymbolType:A.EnumInvalidMemberInitializerPrimaryType:A.EnumInvalidMemberInitializerUnknownType,e,s)}flowEnumErrorNumberMemberNotInitialized(e,s){this.raise(A.EnumNumberMemberNotInitialized,e,s)}flowEnumErrorStringMemberInconsistentlyInitialized(e,s){this.raise(A.EnumStringMemberInconsistentlyInitialized,e,s)}flowEnumMemberInit(){let e=this.state.startLoc,s=u(()=>this.match(12)||this.match(8),"endOfInit");switch(this.state.type){case 135:{let i=this.parseNumericLiteral(this.state.value);return s()?{type:"number",loc:i.loc.start,value:i}:{type:"invalid",loc:e}}case 134:{let i=this.parseStringLiteral(this.state.value);return s()?{type:"string",loc:i.loc.start,value:i}:{type:"invalid",loc:e}}case 85:case 86:{let i=this.parseBooleanLiteral(this.match(85));return s()?{type:"boolean",loc:i.loc.start,value:i}:{type:"invalid",loc:e}}default:return{type:"invalid",loc:e}}}flowEnumMemberRaw(){let e=this.state.startLoc,s=this.parseIdentifier(!0),i=this.eat(29)?this.flowEnumMemberInit():{type:"none",loc:e};return{id:s,init:i}}flowEnumCheckExplicitTypeMismatch(e,s,i){let{explicitType:r}=s;r!==null&&r!==i&&this.flowEnumErrorInvalidMemberInitializer(e,s)}flowEnumMembers({enumName:e,explicitType:s}){let i=new Set,r={booleanMembers:[],numberMembers:[],stringMembers:[],defaultedMembers:[]},n=!1;for(;!this.match(8);){if(this.eat(21)){n=!0;break}let o=this.startNode(),{id:l,init:c}=this.flowEnumMemberRaw(),h=l.name;if(h==="")continue;/^[a-z]/.test(h)&&this.raise(A.EnumInvalidMemberName,l,{memberName:h,suggestion:h[0].toUpperCase()+h.slice(1),enumName:e}),i.has(h)&&this.raise(A.EnumDuplicateMemberName,l,{memberName:h,enumName:e}),i.add(h);let f={enumName:e,explicitType:s,memberName:h};switch(o.id=l,c.type){case"boolean":{this.flowEnumCheckExplicitTypeMismatch(c.loc,f,"boolean"),o.init=c.value,r.booleanMembers.push(this.finishNode(o,"EnumBooleanMember"));break}case"number":{this.flowEnumCheckExplicitTypeMismatch(c.loc,f,"number"),o.init=c.value,r.numberMembers.push(this.finishNode(o,"EnumNumberMember"));break}case"string":{this.flowEnumCheckExplicitTypeMismatch(c.loc,f,"string"),o.init=c.value,r.stringMembers.push(this.finishNode(o,"EnumStringMember"));break}case"invalid":throw this.flowEnumErrorInvalidMemberInitializer(c.loc,f);case"none":switch(s){case"boolean":this.flowEnumErrorBooleanMemberNotInitialized(c.loc,f);break;case"number":this.flowEnumErrorNumberMemberNotInitialized(c.loc,f);break;default:r.defaultedMembers.push(this.finishNode(o,"EnumDefaultedMember"))}}this.match(8)||this.expect(12)}return{members:r,hasUnknownMembers:n}}flowEnumStringMembers(e,s,{enumName:i}){if(e.length===0)return s;if(s.length===0)return e;if(s.length>e.length){for(let r of e)this.flowEnumErrorStringMemberInconsistentlyInitialized(r,{enumName:i});return s}else{for(let r of s)this.flowEnumErrorStringMemberInconsistentlyInitialized(r,{enumName:i});return e}}flowEnumParseExplicitType({enumName:e}){if(!this.eatContextual(102))return null;if(!O(this.state.type))throw this.raise(A.EnumInvalidExplicitTypeUnknownSupplied,this.state.startLoc,{enumName:e});let{value:s}=this.state;return this.next(),s!=="boolean"&&s!=="number"&&s!=="string"&&s!=="symbol"&&this.raise(A.EnumInvalidExplicitType,this.state.startLoc,{enumName:e,invalidEnumType:s}),s}flowEnumBody(e,s){let i=s.name,r=s.loc.start,n=this.flowEnumParseExplicitType({enumName:i});this.expect(5);let{members:o,hasUnknownMembers:l}=this.flowEnumMembers({enumName:i,explicitType:n});switch(e.hasUnknownMembers=l,n){case"boolean":return e.explicitType=!0,e.members=o.booleanMembers,this.expect(8),this.finishNode(e,"EnumBooleanBody");case"number":return e.explicitType=!0,e.members=o.numberMembers,this.expect(8),this.finishNode(e,"EnumNumberBody");case"string":return e.explicitType=!0,e.members=this.flowEnumStringMembers(o.stringMembers,o.defaultedMembers,{enumName:i}),this.expect(8),this.finishNode(e,"EnumStringBody");case"symbol":return e.members=o.defaultedMembers,this.expect(8),this.finishNode(e,"EnumSymbolBody");default:{let c=u(()=>(e.members=[],this.expect(8),this.finishNode(e,"EnumStringBody")),"empty");e.explicitType=!1;let h=o.booleanMembers.length,f=o.numberMembers.length,d=o.stringMembers.length,m=o.defaultedMembers.length;if(!h&&!f&&!d&&!m)return c();if(!h&&!f)return e.members=this.flowEnumStringMembers(o.stringMembers,o.defaultedMembers,{enumName:i}),this.expect(8),this.finishNode(e,"EnumStringBody");if(!f&&!d&&h>=m){for(let g of o.defaultedMembers)this.flowEnumErrorBooleanMemberNotInitialized(g.loc.start,{enumName:i,memberName:g.id.name});return e.members=o.booleanMembers,this.expect(8),this.finishNode(e,"EnumBooleanBody")}else if(!h&&!d&&f>=m){for(let g of o.defaultedMembers)this.flowEnumErrorNumberMemberNotInitialized(g.loc.start,{enumName:i,memberName:g.id.name});return e.members=o.numberMembers,this.expect(8),this.finishNode(e,"EnumNumberBody")}else return this.raise(A.EnumInconsistentMemberValues,r,{enumName:i}),c()}}}flowParseEnumDeclaration(e){let s=this.parseIdentifier();return e.id=s,e.body=this.flowEnumBody(this.startNode(),s),this.finishNode(e,"EnumDeclaration")}jsxParseOpeningElementAfterName(e){return this.shouldParseTypes()&&(this.match(47)||this.match(51))&&(e.typeArguments=this.flowParseTypeParameterInstantiationInExpression()),super.jsxParseOpeningElementAfterName(e)}isLookaheadToken_lt(){let e=this.nextTokenStart();if(this.input.charCodeAt(e)===60){let s=this.input.charCodeAt(e+1);return s!==60&&s!==61}return!1}reScan_lt_gt(){let{type:e}=this.state;e===47?(this.state.pos-=1,this.readToken_lt()):e===48&&(this.state.pos-=1,this.readToken_gt())}reScan_lt(){let{type:e}=this.state;return e===51?(this.state.pos-=2,this.finishOp(47,1),47):e}maybeUnwrapTypeCastExpression(e){return e.type==="TypeCastExpression"?e.expression:e}},"flow"),Rr={__proto__:null,quot:'"',amp:"&",apos:"'",lt:"<",gt:">",nbsp:"\xA0",iexcl:"\xA1",cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",brvbar:"\xA6",sect:"\xA7",uml:"\xA8",copy:"\xA9",ordf:"\xAA",laquo:"\xAB",not:"\xAC",shy:"\xAD",reg:"\xAE",macr:"\xAF",deg:"\xB0",plusmn:"\xB1",sup2:"\xB2",sup3:"\xB3",acute:"\xB4",micro:"\xB5",para:"\xB6",middot:"\xB7",cedil:"\xB8",sup1:"\xB9",ordm:"\xBA",raquo:"\xBB",frac14:"\xBC",frac12:"\xBD",frac34:"\xBE",iquest:"\xBF",Agrave:"\xC0",Aacute:"\xC1",Acirc:"\xC2",Atilde:"\xC3",Auml:"\xC4",Aring:"\xC5",AElig:"\xC6",Ccedil:"\xC7",Egrave:"\xC8",Eacute:"\xC9",Ecirc:"\xCA",Euml:"\xCB",Igrave:"\xCC",Iacute:"\xCD",Icirc:"\xCE",Iuml:"\xCF",ETH:"\xD0",Ntilde:"\xD1",Ograve:"\xD2",Oacute:"\xD3",Ocirc:"\xD4",Otilde:"\xD5",Ouml:"\xD6",times:"\xD7",Oslash:"\xD8",Ugrave:"\xD9",Uacute:"\xDA",Ucirc:"\xDB",Uuml:"\xDC",Yacute:"\xDD",THORN:"\xDE",szlig:"\xDF",agrave:"\xE0",aacute:"\xE1",acirc:"\xE2",atilde:"\xE3",auml:"\xE4",aring:"\xE5",aelig:"\xE6",ccedil:"\xE7",egrave:"\xE8",eacute:"\xE9",ecirc:"\xEA",euml:"\xEB",igrave:"\xEC",iacute:"\xED",icirc:"\xEE",iuml:"\xEF",eth:"\xF0",ntilde:"\xF1",ograve:"\xF2",oacute:"\xF3",ocirc:"\xF4",otilde:"\xF5",ouml:"\xF6",divide:"\xF7",oslash:"\xF8",ugrave:"\xF9",uacute:"\xFA",ucirc:"\xFB",uuml:"\xFC",yacute:"\xFD",thorn:"\xFE",yuml:"\xFF",OElig:"\u0152",oelig:"\u0153",Scaron:"\u0160",scaron:"\u0161",Yuml:"\u0178",fnof:"\u0192",circ:"\u02C6",tilde:"\u02DC",Alpha:"\u0391",Beta:"\u0392",Gamma:"\u0393",Delta:"\u0394",Epsilon:"\u0395",Zeta:"\u0396",Eta:"\u0397",Theta:"\u0398",Iota:"\u0399",Kappa:"\u039A",Lambda:"\u039B",Mu:"\u039C",Nu:"\u039D",Xi:"\u039E",Omicron:"\u039F",Pi:"\u03A0",Rho:"\u03A1",Sigma:"\u03A3",Tau:"\u03A4",Upsilon:"\u03A5",Phi:"\u03A6",Chi:"\u03A7",Psi:"\u03A8",Omega:"\u03A9",alpha:"\u03B1",beta:"\u03B2",gamma:"\u03B3",delta:"\u03B4",epsilon:"\u03B5",zeta:"\u03B6",eta:"\u03B7",theta:"\u03B8",iota:"\u03B9",kappa:"\u03BA",lambda:"\u03BB",mu:"\u03BC",nu:"\u03BD",xi:"\u03BE",omicron:"\u03BF",pi:"\u03C0",rho:"\u03C1",sigmaf:"\u03C2",sigma:"\u03C3",tau:"\u03C4",upsilon:"\u03C5",phi:"\u03C6",chi:"\u03C7",psi:"\u03C8",omega:"\u03C9",thetasym:"\u03D1",upsih:"\u03D2",piv:"\u03D6",ensp:"\u2002",emsp:"\u2003",thinsp:"\u2009",zwnj:"\u200C",zwj:"\u200D",lrm:"\u200E",rlm:"\u200F",ndash:"\u2013",mdash:"\u2014",lsquo:"\u2018",rsquo:"\u2019",sbquo:"\u201A",ldquo:"\u201C",rdquo:"\u201D",bdquo:"\u201E",dagger:"\u2020",Dagger:"\u2021",bull:"\u2022",hellip:"\u2026",permil:"\u2030",prime:"\u2032",Prime:"\u2033",lsaquo:"\u2039",rsaquo:"\u203A",oline:"\u203E",frasl:"\u2044",euro:"\u20AC",image:"\u2111",weierp:"\u2118",real:"\u211C",trade:"\u2122",alefsym:"\u2135",larr:"\u2190",uarr:"\u2191",rarr:"\u2192",darr:"\u2193",harr:"\u2194",crarr:"\u21B5",lArr:"\u21D0",uArr:"\u21D1",rArr:"\u21D2",dArr:"\u21D3",hArr:"\u21D4",forall:"\u2200",part:"\u2202",exist:"\u2203",empty:"\u2205",nabla:"\u2207",isin:"\u2208",notin:"\u2209",ni:"\u220B",prod:"\u220F",sum:"\u2211",minus:"\u2212",lowast:"\u2217",radic:"\u221A",prop:"\u221D",infin:"\u221E",ang:"\u2220",and:"\u2227",or:"\u2228",cap:"\u2229",cup:"\u222A",int:"\u222B",there4:"\u2234",sim:"\u223C",cong:"\u2245",asymp:"\u2248",ne:"\u2260",equiv:"\u2261",le:"\u2264",ge:"\u2265",sub:"\u2282",sup:"\u2283",nsub:"\u2284",sube:"\u2286",supe:"\u2287",oplus:"\u2295",otimes:"\u2297",perp:"\u22A5",sdot:"\u22C5",lceil:"\u2308",rceil:"\u2309",lfloor:"\u230A",rfloor:"\u230B",lang:"\u2329",rang:"\u232A",loz:"\u25CA",spades:"\u2660",clubs:"\u2663",hearts:"\u2665",diams:"\u2666"},_r=/\r\n|[\r\n\u2028\u2029]/,Me=new RegExp(_r.source,"g");function de(a){switch(a){case 10:case 13:case 8232:case 8233:return!0;default:return!1}}u(de,"isNewLine");function qs(a,t,e){for(let s=t;s<e;s++)if(de(a.charCodeAt(s)))return!0;return!1}u(qs,"hasNewLine");var Ze=/(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g,Qe=/(?:[^\S\n\r\u2028\u2029]|\/\/.*|\/\*.*?\*\/)*/g;function Ur(a){switch(a){case 9:case 11:case 12:case 32:case 160:case 5760:case 8192:case 8193:case 8194:case 8195:case 8196:case 8197:case 8198:case 8199:case 8200:case 8201:case 8202:case 8239:case 8287:case 12288:case 65279:return!0;default:return!1}}u(Ur,"isWhitespace");var ne=J`jsx`({AttributeIsEmpty:"JSX attributes must only be assigned a non-empty expression.",MissingClosingTagElement:u(({openingTagName:a})=>`Expected corresponding JSX closing tag for <${a}>.`,"MissingClosingTagElement"),MissingClosingTagFragment:"Expected corresponding JSX closing tag for <>.",UnexpectedSequenceExpression:"Sequence expressions cannot be directly nested inside JSX. Did you mean to wrap it in parentheses (...)?",UnexpectedToken:u(({unexpected:a,HTMLEntity:t})=>`Unexpected token \`${a}\`. Did you mean \`${t}\` or \`{'${a}'}\`?`,"UnexpectedToken"),UnsupportedJsxValue:"JSX value should be either an expression or a quoted JSX text.",UnterminatedJsxContent:"Unterminated JSX contents.",UnwrappedAdjacentJSXElements:"Adjacent JSX elements must be wrapped in an enclosing tag. Did you want a JSX fragment <>...</>?"});function te(a){return a?a.type==="JSXOpeningFragment"||a.type==="JSXClosingFragment":!1}u(te,"isFragment");function fe(a){if(a.type==="JSXIdentifier")return a.name;if(a.type==="JSXNamespacedName")return a.namespace.name+":"+a.name.name;if(a.type==="JSXMemberExpression")return fe(a.object)+"."+fe(a.property);throw new Error("Node had unexpected type: "+a.type)}u(fe,"getQualifiedJSXName");var Vr=u(a=>class extends a{static{u(this,"JSXParserMixin")}jsxReadToken(){let e="",s=this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(ne.UnterminatedJsxContent,this.state.startLoc);let i=this.input.charCodeAt(this.state.pos);switch(i){case 60:case 123:if(this.state.pos===this.state.start){i===60&&this.state.canStartJSXElement?(++this.state.pos,this.finishToken(143)):super.getTokenFromCode(i);return}e+=this.input.slice(s,this.state.pos),this.finishToken(142,e);return;case 38:e+=this.input.slice(s,this.state.pos),e+=this.jsxReadEntity(),s=this.state.pos;break;case 62:case 125:default:de(i)?(e+=this.input.slice(s,this.state.pos),e+=this.jsxReadNewLine(!0),s=this.state.pos):++this.state.pos}}}jsxReadNewLine(e){let s=this.input.charCodeAt(this.state.pos),i;return++this.state.pos,s===13&&this.input.charCodeAt(this.state.pos)===10?(++this.state.pos,i=e?`
|
|
5
|
-
|
|
6
|
-
`):i=String.fromCharCode(s),++this.state.curLine,this.state.lineStart=this.state.pos,i}jsxReadString(e){let s="",i=++this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(p.UnterminatedString,this.state.startLoc);let r=this.input.charCodeAt(this.state.pos);if(r===e)break;r===38?(s+=this.input.slice(i,this.state.pos),s+=this.jsxReadEntity(),i=this.state.pos):de(r)?(s+=this.input.slice(i,this.state.pos),s+=this.jsxReadNewLine(!1),i=this.state.pos):++this.state.pos}s+=this.input.slice(i,this.state.pos++),this.finishToken(134,s)}jsxReadEntity(){let e=++this.state.pos;if(this.codePointAtPos(this.state.pos)===35){++this.state.pos;let s=10;this.codePointAtPos(this.state.pos)===120&&(s=16,++this.state.pos);let i=this.readInt(s,void 0,!1,"bail");if(i!==null&&this.codePointAtPos(this.state.pos)===59)return++this.state.pos,String.fromCodePoint(i)}else{let s=0,i=!1;for(;s++<10&&this.state.pos<this.length&&!(i=this.codePointAtPos(this.state.pos)===59);)++this.state.pos;if(i){let r=this.input.slice(e,this.state.pos),n=Rr[r];if(++this.state.pos,n)return n}}return this.state.pos=e,"&"}jsxReadWord(){let e,s=this.state.pos;do e=this.input.charCodeAt(++this.state.pos);while(le(e)||e===45);this.finishToken(141,this.input.slice(s,this.state.pos))}jsxParseIdentifier(){let e=this.startNode();return this.match(141)?e.name=this.state.value:kt(this.state.type)?e.name=se(this.state.type):this.unexpected(),this.next(),this.finishNode(e,"JSXIdentifier")}jsxParseNamespacedName(){let e=this.state.startLoc,s=this.jsxParseIdentifier();if(!this.eat(14))return s;let i=this.startNodeAt(e);return i.namespace=s,i.name=this.jsxParseIdentifier(),this.finishNode(i,"JSXNamespacedName")}jsxParseElementName(){let e=this.state.startLoc,s=this.jsxParseNamespacedName();if(s.type==="JSXNamespacedName")return s;for(;this.eat(16);){let i=this.startNodeAt(e);i.object=s,i.property=this.jsxParseIdentifier(),s=this.finishNode(i,"JSXMemberExpression")}return s}jsxParseAttributeValue(){let e;switch(this.state.type){case 5:return e=this.startNode(),this.setContext(D.brace),this.next(),e=this.jsxParseExpressionContainer(e,D.j_oTag),e.expression.type==="JSXEmptyExpression"&&this.raise(ne.AttributeIsEmpty,e),e;case 143:case 134:return this.parseExprAtom();default:throw this.raise(ne.UnsupportedJsxValue,this.state.startLoc)}}jsxParseEmptyExpression(){let e=this.startNodeAt(this.state.lastTokEndLoc);return this.finishNodeAt(e,"JSXEmptyExpression",this.state.startLoc)}jsxParseSpreadChild(e){return this.next(),e.expression=this.parseExpression(),this.setContext(D.j_expr),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(e,"JSXSpreadChild")}jsxParseExpressionContainer(e,s){if(this.match(8))e.expression=this.jsxParseEmptyExpression();else{let i=this.parseExpression();e.expression=i}return this.setContext(s),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(e,"JSXExpressionContainer")}jsxParseAttribute(){let e=this.startNode();return this.match(5)?(this.setContext(D.brace),this.next(),this.expect(21),e.argument=this.parseMaybeAssignAllowIn(),this.setContext(D.j_oTag),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(e,"JSXSpreadAttribute")):(e.name=this.jsxParseNamespacedName(),e.value=this.eat(29)?this.jsxParseAttributeValue():null,this.finishNode(e,"JSXAttribute"))}jsxParseOpeningElementAt(e){let s=this.startNodeAt(e);return this.eat(144)?this.finishNode(s,"JSXOpeningFragment"):(s.name=this.jsxParseElementName(),this.jsxParseOpeningElementAfterName(s))}jsxParseOpeningElementAfterName(e){let s=[];for(;!this.match(56)&&!this.match(144);)s.push(this.jsxParseAttribute());return e.attributes=s,e.selfClosing=this.eat(56),this.expect(144),this.finishNode(e,"JSXOpeningElement")}jsxParseClosingElementAt(e){let s=this.startNodeAt(e);return this.eat(144)?this.finishNode(s,"JSXClosingFragment"):(s.name=this.jsxParseElementName(),this.expect(144),this.finishNode(s,"JSXClosingElement"))}jsxParseElementAt(e){let s=this.startNodeAt(e),i=[],r=this.jsxParseOpeningElementAt(e),n=null;if(!r.selfClosing){e:for(;;)switch(this.state.type){case 143:if(e=this.state.startLoc,this.next(),this.eat(56)){n=this.jsxParseClosingElementAt(e);break e}i.push(this.jsxParseElementAt(e));break;case 142:i.push(this.parseLiteral(this.state.value,"JSXText"));break;case 5:{let o=this.startNode();this.setContext(D.brace),this.next(),this.match(21)?i.push(this.jsxParseSpreadChild(o)):i.push(this.jsxParseExpressionContainer(o,D.j_expr));break}default:this.unexpected()}te(r)&&!te(n)&&n!==null?this.raise(ne.MissingClosingTagFragment,n):!te(r)&&te(n)?this.raise(ne.MissingClosingTagElement,n,{openingTagName:fe(r.name)}):!te(r)&&!te(n)&&fe(n.name)!==fe(r.name)&&this.raise(ne.MissingClosingTagElement,n,{openingTagName:fe(r.name)})}if(te(r)?(s.openingFragment=r,s.closingFragment=n):(s.openingElement=r,s.closingElement=n),s.children=i,this.match(47))throw this.raise(ne.UnwrappedAdjacentJSXElements,this.state.startLoc);return te(r)?this.finishNode(s,"JSXFragment"):this.finishNode(s,"JSXElement")}jsxParseElement(){let e=this.state.startLoc;return this.next(),this.jsxParseElementAt(e)}setContext(e){let{context:s}=this.state;s[s.length-1]=e}parseExprAtom(e){return this.match(143)?this.jsxParseElement():this.match(47)&&this.input.charCodeAt(this.state.pos)!==33?(this.replaceToken(143),this.jsxParseElement()):super.parseExprAtom(e)}skipSpace(){this.curContext().preserveSpace||super.skipSpace()}getTokenFromCode(e){let s=this.curContext();if(s===D.j_expr){this.jsxReadToken();return}if(s===D.j_oTag||s===D.j_cTag){if(W(e)){this.jsxReadWord();return}if(e===62){++this.state.pos,this.finishToken(144);return}if((e===34||e===39)&&s===D.j_oTag){this.jsxReadString(e);return}}if(e===60&&this.state.canStartJSXElement&&this.input.charCodeAt(this.state.pos+1)!==33){++this.state.pos,this.finishToken(143);return}super.getTokenFromCode(e)}updateContext(e){let{context:s,type:i}=this.state;if(i===56&&e===143)s.splice(-2,2,D.j_cTag),this.state.canStartJSXElement=!1;else if(i===143)s.push(D.j_oTag);else if(i===144){let r=s[s.length-1];r===D.j_oTag&&e===56||r===D.j_cTag?(s.pop(),this.state.canStartJSXElement=s[s.length-1]===D.j_expr):(this.setContext(D.j_expr),this.state.canStartJSXElement=!0)}else this.state.canStartJSXElement=dr(i)}},"jsx"),nt=class extends Ce{static{u(this,"TypeScriptScope")}constructor(...t){super(...t),this.tsNames=new Map}},ot=class extends Ee{static{u(this,"TypeScriptScopeHandler")}constructor(...t){super(...t),this.importsStack=[]}createScope(t){return this.importsStack.push(new Set),new nt(t)}enter(t){t===1024&&this.importsStack.push(new Set),super.enter(t)}exit(){let t=super.exit();return t===1024&&this.importsStack.pop(),t}hasImport(t,e){let s=this.importsStack.length;if(this.importsStack[s-1].has(t))return!0;if(!e&&s>1){for(let i=0;i<s-1;i++)if(this.importsStack[i].has(t))return!0}return!1}declareName(t,e,s){if(e&4096){this.hasImport(t,!0)&&this.parser.raise(p.VarRedeclaration,s,{identifierName:t}),this.importsStack[this.importsStack.length-1].add(t);return}let i=this.currentScope(),r=i.tsNames.get(t)||0;if(e&1024){this.maybeExportDefined(i,t),i.tsNames.set(t,r|16);return}super.declareName(t,e,s),e&2&&(e&1||(this.checkRedeclarationInScope(i,t,e,s),this.maybeExportDefined(i,t)),r=r|1),e&256&&(r=r|2),e&512&&(r=r|4),e&128&&(r=r|8),r&&i.tsNames.set(t,r)}isRedeclaredInScope(t,e,s){let i=t.tsNames.get(e);if((i&2)>0){if(s&256){let r=!!(s&512),n=(i&4)>0;return r!==n}return!0}return s&128&&(i&8)>0?t.names.get(e)&2?!!(s&1):!1:s&2&&(i&1)>0?!0:super.isRedeclaredInScope(t,e,s)}checkLocalExport(t){let{name:e}=t;if(this.hasImport(e))return;let s=this.scopeStack.length;for(let i=s-1;i>=0;i--){let n=this.scopeStack[i].tsNames.get(e);if((n&1)>0||(n&16)>0)return}super.checkLocalExport(t)}},lt=class{static{u(this,"ProductionParameterHandler")}constructor(){this.stacks=[]}enter(t){this.stacks.push(t)}exit(){this.stacks.pop()}currentFlags(){return this.stacks[this.stacks.length-1]}get hasAwait(){return(this.currentFlags()&2)>0}get hasYield(){return(this.currentFlags()&1)>0}get hasReturn(){return(this.currentFlags()&4)>0}get hasIn(){return(this.currentFlags()&8)>0}};function $e(a,t){return(a?2:0)|(t?1:0)}u($e,"functionFlags");var ct=class{static{u(this,"BaseParser")}constructor(){this.sawUnambiguousESM=!1,this.ambiguousScriptDifferentAst=!1}sourceToOffsetPos(t){return t+this.startIndex}offsetToSourcePos(t){return t-this.startIndex}hasPlugin(t){if(typeof t=="string")return this.plugins.has(t);{let[e,s]=t;if(!this.hasPlugin(e))return!1;let i=this.plugins.get(e);for(let r of Object.keys(s))if(i?.[r]!==s[r])return!1;return!0}}getPluginOption(t,e){var s;return(s=this.plugins.get(t))==null?void 0:s[e]}};function ni(a,t){a.trailingComments===void 0?a.trailingComments=t:a.trailingComments.unshift(...t)}u(ni,"setTrailingComments");function zr(a,t){a.leadingComments===void 0?a.leadingComments=t:a.leadingComments.unshift(...t)}u(zr,"setLeadingComments");function ve(a,t){a.innerComments===void 0?a.innerComments=t:a.innerComments.unshift(...t)}u(ve,"setInnerComments");function q(a,t,e){let s=null,i=t.length;for(;s===null&&i>0;)s=t[--i];s===null||s.start>e.start?ve(a,e.comments):ni(s,e.comments)}u(q,"adjustInnerComments");var ht=class extends ct{static{u(this,"CommentsParser")}addComment(t){this.filename&&(t.loc.filename=this.filename);let{commentsLen:e}=this.state;this.comments.length!==e&&(this.comments.length=e),this.comments.push(t),this.state.commentsLen++}processComment(t){let{commentStack:e}=this.state,s=e.length;if(s===0)return;let i=s-1,r=e[i];r.start===t.end&&(r.leadingNode=t,i--);let{start:n}=t;for(;i>=0;i--){let o=e[i],l=o.end;if(l>n)o.containingNode=t,this.finalizeComment(o),e.splice(i,1);else{l===n&&(o.trailingNode=t);break}}}finalizeComment(t){var e;let{comments:s}=t;if(t.leadingNode!==null||t.trailingNode!==null)t.leadingNode!==null&&ni(t.leadingNode,s),t.trailingNode!==null&&zr(t.trailingNode,s);else{let i=t.containingNode,r=t.start;if(this.input.charCodeAt(this.offsetToSourcePos(r)-1)===44)switch(i.type){case"ObjectExpression":case"ObjectPattern":q(i,i.properties,t);break;case"CallExpression":case"NewExpression":case"OptionalCallExpression":q(i,i.arguments,t);break;case"ImportExpression":q(i,[i.source,(e=i.options)!=null?e:null],t);break;case"FunctionDeclaration":case"FunctionExpression":case"ArrowFunctionExpression":case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":case"TSTypeParameterDeclaration":q(i,i.params,t);break;case"ArrayExpression":case"ArrayPattern":q(i,i.elements,t);break;case"ExportNamedDeclaration":case"ImportDeclaration":q(i,i.specifiers,t);break;case"TSEnumDeclaration":q(i,i.members,t);break;case"TSEnumBody":q(i,i.members,t);break;case"TSInterfaceBody":q(i,i.body,t);break;default:{if(i.type==="RecordExpression"){q(i,i.properties,t);break}if(i.type==="TupleExpression"){q(i,i.elements,t);break}ve(i,s)}}else ve(i,s)}}finalizeRemainingComments(){let{commentStack:t}=this.state;for(let e=t.length-1;e>=0;e--)this.finalizeComment(t[e]);this.state.commentStack=[]}resetPreviousNodeTrailingComments(t){let{commentStack:e}=this.state,{length:s}=e;if(s===0)return;let i=e[s-1];i.leadingNode===t&&(i.leadingNode=null)}takeSurroundingComments(t,e,s){let{commentStack:i}=this.state,r=i.length;if(r===0)return;let n=r-1;for(;n>=0;n--){let o=i[n],l=o.end;if(o.start===s)o.leadingNode=t;else if(l===e)o.trailingNode=t;else if(l<e)break}}},ut=class a{static{u(this,"State")}constructor(){this.flags=1024,this.startIndex=void 0,this.curLine=void 0,this.lineStart=void 0,this.startLoc=void 0,this.endLoc=void 0,this.errors=[],this.potentialArrowAt=-1,this.noArrowAt=[],this.noArrowParamsConversionAt=[],this.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null},this.labels=[],this.commentsLen=0,this.commentStack=[],this.pos=0,this.type=140,this.value=null,this.start=0,this.end=0,this.lastTokEndLoc=null,this.lastTokStartLoc=null,this.context=[D.brace],this.firstInvalidTemplateEscapePos=null,this.strictErrors=new Map,this.tokensLength=0}get strict(){return(this.flags&1)>0}set strict(t){t?this.flags|=1:this.flags&=-2}init({strictMode:t,sourceType:e,startIndex:s,startLine:i,startColumn:r}){this.strict=t===!1?!1:t===!0?!0:e==="module",this.startIndex=s,this.curLine=i,this.lineStart=-r,this.startLoc=this.endLoc=new X(i,r,s)}get maybeInArrowParameters(){return(this.flags&2)>0}set maybeInArrowParameters(t){t?this.flags|=2:this.flags&=-3}get inType(){return(this.flags&4)>0}set inType(t){t?this.flags|=4:this.flags&=-5}get noAnonFunctionType(){return(this.flags&8)>0}set noAnonFunctionType(t){t?this.flags|=8:this.flags&=-9}get hasFlowComment(){return(this.flags&16)>0}set hasFlowComment(t){t?this.flags|=16:this.flags&=-17}get isAmbientContext(){return(this.flags&32)>0}set isAmbientContext(t){t?this.flags|=32:this.flags&=-33}get inAbstractClass(){return(this.flags&64)>0}set inAbstractClass(t){t?this.flags|=64:this.flags&=-65}get inDisallowConditionalTypesContext(){return(this.flags&128)>0}set inDisallowConditionalTypesContext(t){t?this.flags|=128:this.flags&=-129}get soloAwait(){return(this.flags&256)>0}set soloAwait(t){t?this.flags|=256:this.flags&=-257}get inFSharpPipelineDirectBody(){return(this.flags&512)>0}set inFSharpPipelineDirectBody(t){t?this.flags|=512:this.flags&=-513}get canStartJSXElement(){return(this.flags&1024)>0}set canStartJSXElement(t){t?this.flags|=1024:this.flags&=-1025}get containsEsc(){return(this.flags&2048)>0}set containsEsc(t){t?this.flags|=2048:this.flags&=-2049}get hasTopLevelAwait(){return(this.flags&4096)>0}set hasTopLevelAwait(t){t?this.flags|=4096:this.flags&=-4097}curPosition(){return new X(this.curLine,this.pos-this.lineStart,this.pos+this.startIndex)}clone(){let t=new a;return t.flags=this.flags,t.startIndex=this.startIndex,t.curLine=this.curLine,t.lineStart=this.lineStart,t.startLoc=this.startLoc,t.endLoc=this.endLoc,t.errors=this.errors.slice(),t.potentialArrowAt=this.potentialArrowAt,t.noArrowAt=this.noArrowAt.slice(),t.noArrowParamsConversionAt=this.noArrowParamsConversionAt.slice(),t.topicContext=this.topicContext,t.labels=this.labels.slice(),t.commentsLen=this.commentsLen,t.commentStack=this.commentStack.slice(),t.pos=this.pos,t.type=this.type,t.value=this.value,t.start=this.start,t.end=this.end,t.lastTokEndLoc=this.lastTokEndLoc,t.lastTokStartLoc=this.lastTokStartLoc,t.context=this.context.slice(),t.firstInvalidTemplateEscapePos=this.firstInvalidTemplateEscapePos,t.strictErrors=this.strictErrors,t.tokensLength=this.tokensLength,t}},qr=u(function(t){return t>=48&&t<=57},"isDigit"),Hs={decBinOct:new Set([46,66,69,79,95,98,101,111]),hex:new Set([46,88,95,120])},Fe={bin:u(a=>a===48||a===49,"bin"),oct:u(a=>a>=48&&a<=55,"oct"),dec:u(a=>a>=48&&a<=57,"dec"),hex:u(a=>a>=48&&a<=57||a>=65&&a<=70||a>=97&&a<=102,"hex")};function Ks(a,t,e,s,i,r){let n=e,o=s,l=i,c="",h=null,f=e,{length:d}=t;for(;;){if(e>=d){r.unterminated(n,o,l),c+=t.slice(f,e);break}let m=t.charCodeAt(e);if(Hr(a,m,t,e)){c+=t.slice(f,e);break}if(m===92){c+=t.slice(f,e);let g=Kr(t,e,s,i,a==="template",r);g.ch===null&&!h?h={pos:e,lineStart:s,curLine:i}:c+=g.ch,{pos:e,lineStart:s,curLine:i}=g,f=e}else m===8232||m===8233?(++e,++i,s=e):m===10||m===13?a==="template"?(c+=t.slice(f,e)+`
|
|
7
|
-
|
|
8
|
-
`);case 114:return o("\r");case 120:{let c;return{code:c,pos:t}=pt(a,t,e,s,2,!1,n,r),o(c===null?null:String.fromCharCode(c))}case 117:{let c;return{code:c,pos:t}=li(a,t,e,s,n,r),o(c===null?null:String.fromCodePoint(c))}case 116:return o(" ");case 98:return o("\b");case 118:return o("\v");case 102:return o("\f");case 13:a.charCodeAt(t)===10&&++t;case 10:e=t,++s;case 8232:case 8233:return o("");case 56:case 57:if(i)return o(null);r.strictNumericEscape(t-1,e,s);default:if(l>=48&&l<=55){let c=t-1,f=/^[0-7]+/.exec(a.slice(c,t+2))[0],d=parseInt(f,8);d>255&&(f=f.slice(0,-1),d=parseInt(f,8)),t+=f.length-1;let m=a.charCodeAt(t);if(f!=="0"||m===56||m===57){if(i)return o(null);r.strictNumericEscape(c,e,s)}return o(String.fromCharCode(d))}return o(String.fromCharCode(l))}}u(Kr,"readEscapedChar");function pt(a,t,e,s,i,r,n,o){let l=t,c;return{n:c,pos:t}=oi(a,t,e,s,16,i,r,!1,o,!n),c===null&&(n?o.invalidEscapeSequence(l,e,s):t=l-1),{code:c,pos:t}}u(pt,"readHexChar");function oi(a,t,e,s,i,r,n,o,l,c){let h=t,f=i===16?Hs.hex:Hs.decBinOct,d=i===16?Fe.hex:i===10?Fe.dec:i===8?Fe.oct:Fe.bin,m=!1,g=0;for(let I=0,L=r??1/0;I<L;++I){let y=a.charCodeAt(t),S;if(y===95&&o!=="bail"){let C=a.charCodeAt(t-1),N=a.charCodeAt(t+1);if(o){if(Number.isNaN(N)||!d(N)||f.has(C)||f.has(N)){if(c)return{n:null,pos:t};l.unexpectedNumericSeparator(t,e,s)}}else{if(c)return{n:null,pos:t};l.numericSeparatorInEscapeSequence(t,e,s)}++t;continue}if(y>=97?S=y-97+10:y>=65?S=y-65+10:qr(y)?S=y-48:S=1/0,S>=i){if(S<=9&&c)return{n:null,pos:t};if(S<=9&&l.invalidDigit(t,e,s,i))S=0;else if(n)S=0,m=!0;else break}++t,g=g*i+S}return t===h||r!=null&&t-h!==r||m?{n:null,pos:t}:{n:g,pos:t}}u(oi,"readInt");function li(a,t,e,s,i,r){let n=a.charCodeAt(t),o;if(n===123){if(++t,{code:o,pos:t}=pt(a,t,e,s,a.indexOf("}",t)-t,!0,i,r),++t,o!==null&&o>1114111)if(i)r.invalidCodePoint(t,e,s);else return{code:null,pos:t}}else({code:o,pos:t}=pt(a,t,e,s,4,!1,i,r));return{code:o,pos:t}}u(li,"readCodePoint");function Ae(a,t,e){return new X(e,a-t,a)}u(Ae,"buildPosition");var Jr=new Set([103,109,115,105,121,117,100,118]),K=class{static{u(this,"Token")}constructor(t){let e=t.startIndex||0;this.type=t.type,this.value=t.value,this.start=e+t.start,this.end=e+t.end,this.loc=new ye(t.startLoc,t.endLoc)}},ft=class extends ht{static{u(this,"Tokenizer")}constructor(t,e){super(),this.isLookahead=void 0,this.tokens=[],this.errorHandlers_readInt={invalidDigit:u((s,i,r,n)=>this.optionFlags&2048?(this.raise(p.InvalidDigit,Ae(s,i,r),{radix:n}),!0):!1,"invalidDigit"),numericSeparatorInEscapeSequence:this.errorBuilder(p.NumericSeparatorInEscapeSequence),unexpectedNumericSeparator:this.errorBuilder(p.UnexpectedNumericSeparator)},this.errorHandlers_readCodePoint=Object.assign({},this.errorHandlers_readInt,{invalidEscapeSequence:this.errorBuilder(p.InvalidEscapeSequence),invalidCodePoint:this.errorBuilder(p.InvalidCodePoint)}),this.errorHandlers_readStringContents_string=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:u((s,i,r)=>{this.recordStrictModeErrors(p.StrictNumericEscape,Ae(s,i,r))},"strictNumericEscape"),unterminated:u((s,i,r)=>{throw this.raise(p.UnterminatedString,Ae(s-1,i,r))},"unterminated")}),this.errorHandlers_readStringContents_template=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:this.errorBuilder(p.StrictNumericEscape),unterminated:u((s,i,r)=>{throw this.raise(p.UnterminatedTemplate,Ae(s,i,r))},"unterminated")}),this.state=new ut,this.state.init(t),this.input=e,this.length=e.length,this.comments=[],this.isLookahead=!1}pushToken(t){this.tokens.length=this.state.tokensLength,this.tokens.push(t),++this.state.tokensLength}next(){this.checkKeywordEscapes(),this.optionFlags&256&&this.pushToken(new K(this.state)),this.state.lastTokEndLoc=this.state.endLoc,this.state.lastTokStartLoc=this.state.startLoc,this.nextToken()}eat(t){return this.match(t)?(this.next(),!0):!1}match(t){return this.state.type===t}createLookaheadState(t){return{pos:t.pos,value:null,type:t.type,start:t.start,end:t.end,context:[this.curContext()],inType:t.inType,startLoc:t.startLoc,lastTokEndLoc:t.lastTokEndLoc,curLine:t.curLine,lineStart:t.lineStart,curPosition:t.curPosition}}lookahead(){let t=this.state;this.state=this.createLookaheadState(t),this.isLookahead=!0,this.nextToken(),this.isLookahead=!1;let e=this.state;return this.state=t,e}nextTokenStart(){return this.nextTokenStartSince(this.state.pos)}nextTokenStartSince(t){return Ze.lastIndex=t,Ze.test(this.input)?Ze.lastIndex:t}lookaheadCharCode(){return this.lookaheadCharCodeSince(this.state.pos)}lookaheadCharCodeSince(t){return this.input.charCodeAt(this.nextTokenStartSince(t))}nextTokenInLineStart(){return this.nextTokenInLineStartSince(this.state.pos)}nextTokenInLineStartSince(t){return Qe.lastIndex=t,Qe.test(this.input)?Qe.lastIndex:t}lookaheadInLineCharCode(){return this.input.charCodeAt(this.nextTokenInLineStart())}codePointAtPos(t){let e=this.input.charCodeAt(t);if((e&64512)===55296&&++t<this.input.length){let s=this.input.charCodeAt(t);(s&64512)===56320&&(e=65536+((e&1023)<<10)+(s&1023))}return e}setStrict(t){this.state.strict=t,t&&(this.state.strictErrors.forEach(([e,s])=>this.raise(e,s)),this.state.strictErrors.clear())}curContext(){return this.state.context[this.state.context.length-1]}nextToken(){if(this.skipSpace(),this.state.start=this.state.pos,this.isLookahead||(this.state.startLoc=this.state.curPosition()),this.state.pos>=this.length){this.finishToken(140);return}this.getTokenFromCode(this.codePointAtPos(this.state.pos))}skipBlockComment(t){let e;this.isLookahead||(e=this.state.curPosition());let s=this.state.pos,i=this.input.indexOf(t,s+2);if(i===-1)throw this.raise(p.UnterminatedComment,this.state.curPosition());for(this.state.pos=i+t.length,Me.lastIndex=s+2;Me.test(this.input)&&Me.lastIndex<=i;)++this.state.curLine,this.state.lineStart=Me.lastIndex;if(this.isLookahead)return;let r={type:"CommentBlock",value:this.input.slice(s+2,i),start:this.sourceToOffsetPos(s),end:this.sourceToOffsetPos(i+t.length),loc:new ye(e,this.state.curPosition())};return this.optionFlags&256&&this.pushToken(r),r}skipLineComment(t){let e=this.state.pos,s;this.isLookahead||(s=this.state.curPosition());let i=this.input.charCodeAt(this.state.pos+=t);if(this.state.pos<this.length)for(;!de(i)&&++this.state.pos<this.length;)i=this.input.charCodeAt(this.state.pos);if(this.isLookahead)return;let r=this.state.pos,o={type:"CommentLine",value:this.input.slice(e+t,r),start:this.sourceToOffsetPos(e),end:this.sourceToOffsetPos(r),loc:new ye(s,this.state.curPosition())};return this.optionFlags&256&&this.pushToken(o),o}skipSpace(){let t=this.state.pos,e=this.optionFlags&4096?[]:null;e:for(;this.state.pos<this.length;){let s=this.input.charCodeAt(this.state.pos);switch(s){case 32:case 160:case 9:++this.state.pos;break;case 13:this.input.charCodeAt(this.state.pos+1)===10&&++this.state.pos;case 10:case 8232:case 8233:++this.state.pos,++this.state.curLine,this.state.lineStart=this.state.pos;break;case 47:switch(this.input.charCodeAt(this.state.pos+1)){case 42:{let i=this.skipBlockComment("*/");i!==void 0&&(this.addComment(i),e?.push(i));break}case 47:{let i=this.skipLineComment(2);i!==void 0&&(this.addComment(i),e?.push(i));break}default:break e}break;default:if(Ur(s))++this.state.pos;else if(s===45&&!this.inModule&&this.optionFlags&8192){let i=this.state.pos;if(this.input.charCodeAt(i+1)===45&&this.input.charCodeAt(i+2)===62&&(t===0||this.state.lineStart>t)){let r=this.skipLineComment(3);r!==void 0&&(this.addComment(r),e?.push(r))}else break e}else if(s===60&&!this.inModule&&this.optionFlags&8192){let i=this.state.pos;if(this.input.charCodeAt(i+1)===33&&this.input.charCodeAt(i+2)===45&&this.input.charCodeAt(i+3)===45){let r=this.skipLineComment(4);r!==void 0&&(this.addComment(r),e?.push(r))}else break e}else break e}}if(e?.length>0){let s=this.state.pos,i={start:this.sourceToOffsetPos(t),end:this.sourceToOffsetPos(s),comments:e,leadingNode:null,trailingNode:null,containingNode:null};this.state.commentStack.push(i)}}finishToken(t,e){this.state.end=this.state.pos,this.state.endLoc=this.state.curPosition();let s=this.state.type;this.state.type=t,this.state.value=e,this.isLookahead||this.updateContext(s)}replaceToken(t){this.state.type=t,this.updateContext()}readToken_numberSign(){if(this.state.pos===0&&this.readToken_interpreter())return;let t=this.state.pos+1,e=this.codePointAtPos(t);if(e>=48&&e<=57)throw this.raise(p.UnexpectedDigitAfterHash,this.state.curPosition());if(e===123||e===91&&this.hasPlugin("recordAndTuple")){if(this.expectPlugin("recordAndTuple"),this.getPluginOption("recordAndTuple","syntaxType")==="bar")throw this.raise(e===123?p.RecordExpressionHashIncorrectStartSyntaxType:p.TupleExpressionHashIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,e===123?this.finishToken(7):this.finishToken(1)}else W(e)?(++this.state.pos,this.finishToken(139,this.readWord1(e))):e===92?(++this.state.pos,this.finishToken(139,this.readWord1())):this.finishOp(27,1)}readToken_dot(){let t=this.input.charCodeAt(this.state.pos+1);if(t>=48&&t<=57){this.readNumber(!0);return}t===46&&this.input.charCodeAt(this.state.pos+2)===46?(this.state.pos+=3,this.finishToken(21)):(++this.state.pos,this.finishToken(16))}readToken_slash(){this.input.charCodeAt(this.state.pos+1)===61?this.finishOp(31,2):this.finishOp(56,1)}readToken_interpreter(){if(this.state.pos!==0||this.length<2)return!1;let t=this.input.charCodeAt(this.state.pos+1);if(t!==33)return!1;let e=this.state.pos;for(this.state.pos+=1;!de(t)&&++this.state.pos<this.length;)t=this.input.charCodeAt(this.state.pos);let s=this.input.slice(e+2,this.state.pos);return this.finishToken(28,s),!0}readToken_mult_modulo(t){let e=t===42?55:54,s=1,i=this.input.charCodeAt(this.state.pos+1);t===42&&i===42&&(s++,i=this.input.charCodeAt(this.state.pos+2),e=57),i===61&&!this.state.inType&&(s++,e=t===37?33:30),this.finishOp(e,s)}readToken_pipe_amp(t){let e=this.input.charCodeAt(this.state.pos+1);if(e===t){this.input.charCodeAt(this.state.pos+2)===61?this.finishOp(30,3):this.finishOp(t===124?41:42,2);return}if(t===124){if(e===62){this.finishOp(39,2);return}if(this.hasPlugin("recordAndTuple")&&e===125){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(p.RecordExpressionBarIncorrectEndSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(9);return}if(this.hasPlugin("recordAndTuple")&&e===93){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(p.TupleExpressionBarIncorrectEndSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(4);return}}if(e===61){this.finishOp(30,2);return}this.finishOp(t===124?43:45,1)}readToken_caret(){let t=this.input.charCodeAt(this.state.pos+1);t===61&&!this.state.inType?this.finishOp(32,2):t===94&&this.hasPlugin(["pipelineOperator",{proposal:"hack",topicToken:"^^"}])?(this.finishOp(37,2),this.input.codePointAt(this.state.pos)===94&&this.unexpected()):this.finishOp(44,1)}readToken_atSign(){this.input.charCodeAt(this.state.pos+1)===64&&this.hasPlugin(["pipelineOperator",{proposal:"hack",topicToken:"@@"}])?this.finishOp(38,2):this.finishOp(26,1)}readToken_plus_min(t){let e=this.input.charCodeAt(this.state.pos+1);if(e===t){this.finishOp(34,2);return}e===61?this.finishOp(30,2):this.finishOp(53,1)}readToken_lt(){let{pos:t}=this.state,e=this.input.charCodeAt(t+1);if(e===60){if(this.input.charCodeAt(t+2)===61){this.finishOp(30,3);return}this.finishOp(51,2);return}if(e===61){this.finishOp(49,2);return}this.finishOp(47,1)}readToken_gt(){let{pos:t}=this.state,e=this.input.charCodeAt(t+1);if(e===62){let s=this.input.charCodeAt(t+2)===62?3:2;if(this.input.charCodeAt(t+s)===61){this.finishOp(30,s+1);return}this.finishOp(52,s);return}if(e===61){this.finishOp(49,2);return}this.finishOp(48,1)}readToken_eq_excl(t){let e=this.input.charCodeAt(this.state.pos+1);if(e===61){this.finishOp(46,this.input.charCodeAt(this.state.pos+2)===61?3:2);return}if(t===61&&e===62){this.state.pos+=2,this.finishToken(19);return}this.finishOp(t===61?29:35,1)}readToken_question(){let t=this.input.charCodeAt(this.state.pos+1),e=this.input.charCodeAt(this.state.pos+2);t===63?e===61?this.finishOp(30,3):this.finishOp(40,2):t===46&&!(e>=48&&e<=57)?(this.state.pos+=2,this.finishToken(18)):(++this.state.pos,this.finishToken(17))}getTokenFromCode(t){switch(t){case 46:this.readToken_dot();return;case 40:++this.state.pos,this.finishToken(10);return;case 41:++this.state.pos,this.finishToken(11);return;case 59:++this.state.pos,this.finishToken(13);return;case 44:++this.state.pos,this.finishToken(12);return;case 91:if(this.hasPlugin("recordAndTuple")&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(p.TupleExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(2)}else++this.state.pos,this.finishToken(0);return;case 93:++this.state.pos,this.finishToken(3);return;case 123:if(this.hasPlugin("recordAndTuple")&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(p.RecordExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(6)}else++this.state.pos,this.finishToken(5);return;case 125:++this.state.pos,this.finishToken(8);return;case 58:this.hasPlugin("functionBind")&&this.input.charCodeAt(this.state.pos+1)===58?this.finishOp(15,2):(++this.state.pos,this.finishToken(14));return;case 63:this.readToken_question();return;case 96:this.readTemplateToken();return;case 48:{let e=this.input.charCodeAt(this.state.pos+1);if(e===120||e===88){this.readRadixNumber(16);return}if(e===111||e===79){this.readRadixNumber(8);return}if(e===98||e===66){this.readRadixNumber(2);return}}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:this.readNumber(!1);return;case 34:case 39:this.readString(t);return;case 47:this.readToken_slash();return;case 37:case 42:this.readToken_mult_modulo(t);return;case 124:case 38:this.readToken_pipe_amp(t);return;case 94:this.readToken_caret();return;case 43:case 45:this.readToken_plus_min(t);return;case 60:this.readToken_lt();return;case 62:this.readToken_gt();return;case 61:case 33:this.readToken_eq_excl(t);return;case 126:this.finishOp(36,1);return;case 64:this.readToken_atSign();return;case 35:this.readToken_numberSign();return;case 92:this.readWord();return;default:if(W(t)){this.readWord(t);return}}throw this.raise(p.InvalidOrUnexpectedToken,this.state.curPosition(),{unexpected:String.fromCodePoint(t)})}finishOp(t,e){let s=this.input.slice(this.state.pos,this.state.pos+e);this.state.pos+=e,this.finishToken(t,s)}readRegexp(){let t=this.state.startLoc,e=this.state.start+1,s,i,{pos:r}=this.state;for(;;++r){if(r>=this.length)throw this.raise(p.UnterminatedRegExp,_(t,1));let c=this.input.charCodeAt(r);if(de(c))throw this.raise(p.UnterminatedRegExp,_(t,1));if(s)s=!1;else{if(c===91)i=!0;else if(c===93&&i)i=!1;else if(c===47&&!i)break;s=c===92}}let n=this.input.slice(e,r);++r;let o="",l=u(()=>_(t,r+2-e),"nextPos");for(;r<this.length;){let c=this.codePointAtPos(r),h=String.fromCharCode(c);if(Jr.has(c))c===118?o.includes("u")&&this.raise(p.IncompatibleRegExpUVFlags,l()):c===117&&o.includes("v")&&this.raise(p.IncompatibleRegExpUVFlags,l()),o.includes(h)&&this.raise(p.DuplicateRegExpFlags,l());else if(le(c)||c===92)this.raise(p.MalformedRegExpFlags,l());else break;++r,o+=h}this.state.pos=r,this.finishToken(138,{pattern:n,flags:o})}readInt(t,e,s=!1,i=!0){let{n:r,pos:n}=oi(this.input,this.state.pos,this.state.lineStart,this.state.curLine,t,e,s,i,this.errorHandlers_readInt,!1);return this.state.pos=n,r}readRadixNumber(t){let e=this.state.pos,s=this.state.curPosition(),i=!1;this.state.pos+=2;let r=this.readInt(t);r==null&&this.raise(p.InvalidDigit,_(s,2),{radix:t});let n=this.input.charCodeAt(this.state.pos);if(n===110)++this.state.pos,i=!0;else if(n===109)throw this.raise(p.InvalidDecimal,s);if(W(this.codePointAtPos(this.state.pos)))throw this.raise(p.NumberIdentifier,this.state.curPosition());if(i){let o=this.input.slice(e,this.state.pos).replace(/[_n]/g,"");this.finishToken(136,o);return}this.finishToken(135,r)}readNumber(t){let e=this.state.pos,s=this.state.curPosition(),i=!1,r=!1,n=!1,o=!1;!t&&this.readInt(10)===null&&this.raise(p.InvalidNumber,this.state.curPosition());let l=this.state.pos-e>=2&&this.input.charCodeAt(e)===48;if(l){let m=this.input.slice(e,this.state.pos);if(this.recordStrictModeErrors(p.StrictOctalLiteral,s),!this.state.strict){let g=m.indexOf("_");g>0&&this.raise(p.ZeroDigitNumericSeparator,_(s,g))}o=l&&!/[89]/.test(m)}let c=this.input.charCodeAt(this.state.pos);if(c===46&&!o&&(++this.state.pos,this.readInt(10),i=!0,c=this.input.charCodeAt(this.state.pos)),(c===69||c===101)&&!o&&(c=this.input.charCodeAt(++this.state.pos),(c===43||c===45)&&++this.state.pos,this.readInt(10)===null&&this.raise(p.InvalidOrMissingExponent,s),i=!0,n=!0,c=this.input.charCodeAt(this.state.pos)),c===110&&((i||l)&&this.raise(p.InvalidBigIntLiteral,s),++this.state.pos,r=!0),c===109){this.expectPlugin("decimal",this.state.curPosition()),(n||l)&&this.raise(p.InvalidDecimal,s),++this.state.pos;var h=!0}if(W(this.codePointAtPos(this.state.pos)))throw this.raise(p.NumberIdentifier,this.state.curPosition());let f=this.input.slice(e,this.state.pos).replace(/[_mn]/g,"");if(r){this.finishToken(136,f);return}if(h){this.finishToken(137,f);return}let d=o?parseInt(f,8):parseFloat(f);this.finishToken(135,d)}readCodePoint(t){let{code:e,pos:s}=li(this.input,this.state.pos,this.state.lineStart,this.state.curLine,t,this.errorHandlers_readCodePoint);return this.state.pos=s,e}readString(t){let{str:e,pos:s,curLine:i,lineStart:r}=Ks(t===34?"double":"single",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_string);this.state.pos=s+1,this.state.lineStart=r,this.state.curLine=i,this.finishToken(134,e)}readTemplateContinuation(){this.match(8)||this.unexpected(null,8),this.state.pos--,this.readTemplateToken()}readTemplateToken(){let t=this.input[this.state.pos],{str:e,firstInvalidLoc:s,pos:i,curLine:r,lineStart:n}=Ks("template",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_template);this.state.pos=i+1,this.state.lineStart=n,this.state.curLine=r,s&&(this.state.firstInvalidTemplateEscapePos=new X(s.curLine,s.pos-s.lineStart,this.sourceToOffsetPos(s.pos))),this.input.codePointAt(i)===96?this.finishToken(24,s?null:t+e+"`"):(this.state.pos++,this.finishToken(25,s?null:t+e+"${"))}recordStrictModeErrors(t,e){let s=e.index;this.state.strict&&!this.state.strictErrors.has(s)?this.raise(t,e):this.state.strictErrors.set(s,[t,e])}readWord1(t){this.state.containsEsc=!1;let e="",s=this.state.pos,i=this.state.pos;for(t!==void 0&&(this.state.pos+=t<=65535?1:2);this.state.pos<this.length;){let r=this.codePointAtPos(this.state.pos);if(le(r))this.state.pos+=r<=65535?1:2;else if(r===92){this.state.containsEsc=!0,e+=this.input.slice(i,this.state.pos);let n=this.state.curPosition(),o=this.state.pos===s?W:le;if(this.input.charCodeAt(++this.state.pos)!==117){this.raise(p.MissingUnicodeEscape,this.state.curPosition()),i=this.state.pos-1;continue}++this.state.pos;let l=this.readCodePoint(!0);l!==null&&(o(l)||this.raise(p.EscapedCharNotAnIdentifier,n),e+=String.fromCodePoint(l)),i=this.state.pos}else break}return e+this.input.slice(i,this.state.pos)}readWord(t){let e=this.readWord1(t),s=wt.get(e);s!==void 0?this.finishToken(s,se(s)):this.finishToken(132,e)}checkKeywordEscapes(){let{type:t}=this.state;kt(t)&&this.state.containsEsc&&this.raise(p.InvalidEscapedReservedWord,this.state.startLoc,{reservedWord:se(t)})}raise(t,e,s={}){let i=e instanceof X?e:e.loc.start,r=t(i,s);if(!(this.optionFlags&2048))throw r;return this.isLookahead||this.state.errors.push(r),r}raiseOverwrite(t,e,s={}){let i=e instanceof X?e:e.loc.start,r=i.index,n=this.state.errors;for(let o=n.length-1;o>=0;o--){let l=n[o];if(l.loc.index===r)return n[o]=t(i,s);if(l.loc.index<r)break}return this.raise(t,e,s)}updateContext(t){}unexpected(t,e){throw this.raise(p.UnexpectedToken,t??this.state.startLoc,{expected:e?se(e):null})}expectPlugin(t,e){if(this.hasPlugin(t))return!0;throw this.raise(p.MissingPlugin,e??this.state.startLoc,{missingPlugin:[t]})}expectOnePlugin(t){if(!t.some(e=>this.hasPlugin(e)))throw this.raise(p.MissingOneOfPlugins,this.state.startLoc,{missingPlugin:t})}errorBuilder(t){return(e,s,i)=>{this.raise(t,Ae(e,s,i))}}},dt=class{static{u(this,"ClassScope")}constructor(){this.privateNames=new Set,this.loneAccessors=new Map,this.undefinedPrivateNames=new Map}},mt=class{static{u(this,"ClassScopeHandler")}constructor(t){this.parser=void 0,this.stack=[],this.undefinedPrivateNames=new Map,this.parser=t}current(){return this.stack[this.stack.length-1]}enter(){this.stack.push(new dt)}exit(){let t=this.stack.pop(),e=this.current();for(let[s,i]of Array.from(t.undefinedPrivateNames))e?e.undefinedPrivateNames.has(s)||e.undefinedPrivateNames.set(s,i):this.parser.raise(p.InvalidPrivateFieldResolution,i,{identifierName:s})}declarePrivateName(t,e,s){let{privateNames:i,loneAccessors:r,undefinedPrivateNames:n}=this.current(),o=i.has(t);if(e&3){let l=o&&r.get(t);if(l){let c=l&4,h=e&4,f=l&3,d=e&3;o=f===d||c!==h,o||r.delete(t)}else o||r.set(t,e)}o&&this.parser.raise(p.PrivateNameRedeclaration,s,{identifierName:t}),i.add(t),n.delete(t)}usePrivateName(t,e){let s;for(s of this.stack)if(s.privateNames.has(t))return;s?s.undefinedPrivateNames.set(t,e):this.parser.raise(p.InvalidPrivateFieldResolution,e,{identifierName:t})}},xe=class{static{u(this,"ExpressionScope")}constructor(t=0){this.type=t}canBeArrowParameterDeclaration(){return this.type===2||this.type===1}isCertainlyParameterDeclaration(){return this.type===3}},Ue=class extends xe{static{u(this,"ArrowHeadParsingScope")}constructor(t){super(t),this.declarationErrors=new Map}recordDeclarationError(t,e){let s=e.index;this.declarationErrors.set(s,[t,e])}clearDeclarationError(t){this.declarationErrors.delete(t)}iterateErrors(t){this.declarationErrors.forEach(t)}},yt=class{static{u(this,"ExpressionScopeHandler")}constructor(t){this.parser=void 0,this.stack=[new xe],this.parser=t}enter(t){this.stack.push(t)}exit(){this.stack.pop()}recordParameterInitializerError(t,e){let s=e.loc.start,{stack:i}=this,r=i.length-1,n=i[r];for(;!n.isCertainlyParameterDeclaration();){if(n.canBeArrowParameterDeclaration())n.recordDeclarationError(t,s);else return;n=i[--r]}this.parser.raise(t,s)}recordArrowParameterBindingError(t,e){let{stack:s}=this,i=s[s.length-1],r=e.loc.start;if(i.isCertainlyParameterDeclaration())this.parser.raise(t,r);else if(i.canBeArrowParameterDeclaration())i.recordDeclarationError(t,r);else return}recordAsyncArrowParametersError(t){let{stack:e}=this,s=e.length-1,i=e[s];for(;i.canBeArrowParameterDeclaration();)i.type===2&&i.recordDeclarationError(p.AwaitBindingIdentifier,t),i=e[--s]}validateAsPattern(){let{stack:t}=this,e=t[t.length-1];e.canBeArrowParameterDeclaration()&&e.iterateErrors(([s,i])=>{this.parser.raise(s,i);let r=t.length-2,n=t[r];for(;n.canBeArrowParameterDeclaration();)n.clearDeclarationError(i.index),n=t[--r]})}};function Wr(){return new xe(3)}u(Wr,"newParameterDeclarationScope");function Xr(){return new Ue(1)}u(Xr,"newArrowHeadScope");function Gr(){return new Ue(2)}u(Gr,"newAsyncArrowScope");function ci(){return new xe}u(ci,"newExpressionScope");var xt=class extends ft{static{u(this,"UtilParser")}addExtra(t,e,s,i=!0){if(!t)return;let{extra:r}=t;r==null&&(r={},t.extra=r),i?r[e]=s:Object.defineProperty(r,e,{enumerable:i,value:s})}isContextual(t){return this.state.type===t&&!this.state.containsEsc}isUnparsedContextual(t,e){if(this.input.startsWith(e,t)){let s=this.input.charCodeAt(t+e.length);return!(le(s)||(s&64512)===55296)}return!1}isLookaheadContextual(t){let e=this.nextTokenStart();return this.isUnparsedContextual(e,t)}eatContextual(t){return this.isContextual(t)?(this.next(),!0):!1}expectContextual(t,e){if(!this.eatContextual(t)){if(e!=null)throw this.raise(e,this.state.startLoc);this.unexpected(null,t)}}canInsertSemicolon(){return this.match(140)||this.match(8)||this.hasPrecedingLineBreak()}hasPrecedingLineBreak(){return qs(this.input,this.offsetToSourcePos(this.state.lastTokEndLoc.index),this.state.start)}hasFollowingLineBreak(){return qs(this.input,this.state.end,this.nextTokenStart())}isLineTerminator(){return this.eat(13)||this.canInsertSemicolon()}semicolon(t=!0){(t?this.isLineTerminator():this.eat(13))||this.raise(p.MissingSemicolon,this.state.lastTokEndLoc)}expect(t,e){this.eat(t)||this.unexpected(e,t)}tryParse(t,e=this.state.clone()){let s={node:null};try{let i=t((r=null)=>{throw s.node=r,s});if(this.state.errors.length>e.errors.length){let r=this.state;return this.state=e,this.state.tokensLength=r.tokensLength,{node:i,error:r.errors[e.errors.length],thrown:!1,aborted:!1,failState:r}}return{node:i,error:null,thrown:!1,aborted:!1,failState:null}}catch(i){let r=this.state;if(this.state=e,i instanceof SyntaxError)return{node:null,error:i,thrown:!0,aborted:!1,failState:r};if(i===s)return{node:s.node,error:null,thrown:!1,aborted:!0,failState:r};throw i}}checkExpressionErrors(t,e){if(!t)return!1;let{shorthandAssignLoc:s,doubleProtoLoc:i,privateKeyLoc:r,optionalParametersLoc:n,voidPatternLoc:o}=t,l=!!s||!!i||!!n||!!r||!!o;if(!e)return l;s!=null&&this.raise(p.InvalidCoverInitializedName,s),i!=null&&this.raise(p.DuplicateProto,i),r!=null&&this.raise(p.UnexpectedPrivateField,r),n!=null&&this.unexpected(n),o!=null&&this.raise(p.InvalidCoverDiscardElement,o)}isLiteralPropertyName(){return Qs(this.state.type)}isPrivateName(t){return t.type==="PrivateName"}getPrivateNameSV(t){return t.id.name}hasPropertyAsPrivateName(t){return(t.type==="MemberExpression"||t.type==="OptionalMemberExpression")&&this.isPrivateName(t.property)}isObjectProperty(t){return t.type==="ObjectProperty"}isObjectMethod(t){return t.type==="ObjectMethod"}initializeScopes(t=this.options.sourceType==="module"){let e=this.state.labels;this.state.labels=[];let s=this.exportedIdentifiers;this.exportedIdentifiers=new Set;let i=this.inModule;this.inModule=t;let r=this.scope,n=this.getScopeHandler();this.scope=new n(this,t);let o=this.prodParam;this.prodParam=new lt;let l=this.classScope;this.classScope=new mt(this);let c=this.expressionScope;return this.expressionScope=new yt(this),()=>{this.state.labels=e,this.exportedIdentifiers=s,this.inModule=i,this.scope=r,this.prodParam=o,this.classScope=l,this.expressionScope=c}}enterInitialScopes(){let t=0;(this.inModule||this.optionFlags&1)&&(t|=2),this.optionFlags&32&&(t|=1);let e=!this.inModule&&this.options.sourceType==="commonjs";(e||this.optionFlags&2)&&(t|=4),this.prodParam.enter(t);let s=e?514:1;this.optionFlags&4&&(s|=512),this.scope.enter(s)}checkDestructuringPrivate(t){let{privateKeyLoc:e}=t;e!==null&&this.expectPlugin("destructuringPrivate",e)}},me=class{static{u(this,"ExpressionErrors")}constructor(){this.shorthandAssignLoc=null,this.doubleProtoLoc=null,this.privateKeyLoc=null,this.optionalParametersLoc=null,this.voidPatternLoc=null}},ge=class{static{u(this,"Node")}constructor(t,e,s){this.type="",this.start=e,this.end=0,this.loc=new ye(s),t?.optionFlags&128&&(this.range=[e,0]),t!=null&&t.filename&&(this.loc.filename=t.filename)}},gt=ge.prototype;gt.__clone=function(){let a=new ge(void 0,this.start,this.loc.start),t=Object.keys(this);for(let e=0,s=t.length;e<s;e++){let i=t[e];i!=="leadingComments"&&i!=="trailingComments"&&i!=="innerComments"&&(a[i]=this[i])}return a};var Pt=class extends xt{static{u(this,"NodeUtils")}startNode(){let t=this.state.startLoc;return new ge(this,t.index,t)}startNodeAt(t){return new ge(this,t.index,t)}startNodeAtNode(t){return this.startNodeAt(t.loc.start)}finishNode(t,e){return this.finishNodeAt(t,e,this.state.lastTokEndLoc)}finishNodeAt(t,e,s){return t.type=e,t.end=s.index,t.loc.end=s,this.optionFlags&128&&(t.range[1]=s.index),this.optionFlags&4096&&this.processComment(t),t}resetStartLocation(t,e){t.start=e.index,t.loc.start=e,this.optionFlags&128&&(t.range[0]=e.index)}resetEndLocation(t,e=this.state.lastTokEndLoc){t.end=e.index,t.loc.end=e,this.optionFlags&128&&(t.range[1]=e.index)}resetStartLocationFromNode(t,e){this.resetStartLocation(t,e.loc.start)}castNodeTo(t,e){return t.type=e,t}cloneIdentifier(t){let{type:e,start:s,end:i,loc:r,range:n,name:o}=t,l=Object.create(gt);return l.type=e,l.start=s,l.end=i,l.loc=r,l.range=n,l.name=o,t.extra&&(l.extra=t.extra),l}cloneStringLiteral(t){let{type:e,start:s,end:i,loc:r,range:n,extra:o}=t,l=Object.create(gt);return l.type=e,l.start=s,l.end=i,l.loc=r,l.range=n,l.extra=o,l.value=t.value,l}},bt=u(a=>a.type==="ParenthesizedExpression"?bt(a.expression):a,"unwrapParenthesizedExpression"),Tt=class extends Pt{static{u(this,"LValParser")}toAssignable(t,e=!1){var s,i;let r;switch((t.type==="ParenthesizedExpression"||(s=t.extra)!=null&&s.parenthesized)&&(r=bt(t),e?r.type==="Identifier"?this.expressionScope.recordArrowParameterBindingError(p.InvalidParenthesizedAssignment,t):r.type!=="CallExpression"&&r.type!=="MemberExpression"&&!this.isOptionalMemberExpression(r)&&this.raise(p.InvalidParenthesizedAssignment,t):this.raise(p.InvalidParenthesizedAssignment,t)),t.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":case"VoidPattern":break;case"ObjectExpression":this.castNodeTo(t,"ObjectPattern");for(let o=0,l=t.properties.length,c=l-1;o<l;o++){var n;let h=t.properties[o],f=o===c;this.toAssignableObjectExpressionProp(h,f,e),f&&h.type==="RestElement"&&(n=t.extra)!=null&&n.trailingCommaLoc&&this.raise(p.RestTrailingComma,t.extra.trailingCommaLoc)}break;case"ObjectProperty":{let{key:o,value:l}=t;this.isPrivateName(o)&&this.classScope.usePrivateName(this.getPrivateNameSV(o),o.loc.start),this.toAssignable(l,e);break}case"SpreadElement":throw new Error("Internal @babel/parser error (this is a bug, please report it). SpreadElement should be converted by .toAssignable's caller.");case"ArrayExpression":this.castNodeTo(t,"ArrayPattern"),this.toAssignableList(t.elements,(i=t.extra)==null?void 0:i.trailingCommaLoc,e);break;case"AssignmentExpression":t.operator!=="="&&this.raise(p.MissingEqInAssignment,t.left.loc.end),this.castNodeTo(t,"AssignmentPattern"),delete t.operator,t.left.type==="VoidPattern"&&this.raise(p.VoidPatternInitializer,t.left),this.toAssignable(t.left,e);break;case"ParenthesizedExpression":this.toAssignable(r,e);break}}toAssignableObjectExpressionProp(t,e,s){if(t.type==="ObjectMethod")this.raise(t.kind==="get"||t.kind==="set"?p.PatternHasAccessor:p.PatternHasMethod,t.key);else if(t.type==="SpreadElement"){this.castNodeTo(t,"RestElement");let i=t.argument;this.checkToRestConversion(i,!1),this.toAssignable(i,s),e||this.raise(p.RestTrailingComma,t)}else this.toAssignable(t,s)}toAssignableList(t,e,s){let i=t.length-1;for(let r=0;r<=i;r++){let n=t[r];n&&(this.toAssignableListItem(t,r,s),n.type==="RestElement"&&(r<i?this.raise(p.RestTrailingComma,n):e&&this.raise(p.RestTrailingComma,e)))}}toAssignableListItem(t,e,s){let i=t[e];if(i.type==="SpreadElement"){this.castNodeTo(i,"RestElement");let r=i.argument;this.checkToRestConversion(r,!0),this.toAssignable(r,s)}else this.toAssignable(i,s)}isAssignable(t,e){switch(t.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":case"VoidPattern":return!0;case"ObjectExpression":{let s=t.properties.length-1;return t.properties.every((i,r)=>i.type!=="ObjectMethod"&&(r===s||i.type!=="SpreadElement")&&this.isAssignable(i))}case"ObjectProperty":return this.isAssignable(t.value);case"SpreadElement":return this.isAssignable(t.argument);case"ArrayExpression":return t.elements.every(s=>s===null||this.isAssignable(s));case"AssignmentExpression":return t.operator==="=";case"ParenthesizedExpression":return this.isAssignable(t.expression);case"MemberExpression":case"OptionalMemberExpression":return!e;default:return!1}}toReferencedList(t,e){return t}toReferencedListDeep(t,e){this.toReferencedList(t,e);for(let s of t)s?.type==="ArrayExpression"&&this.toReferencedListDeep(s.elements)}parseSpread(t){let e=this.startNode();return this.next(),e.argument=this.parseMaybeAssignAllowIn(t,void 0),this.finishNode(e,"SpreadElement")}parseRestBinding(){let t=this.startNode();this.next();let e=this.parseBindingAtom();return e.type==="VoidPattern"&&this.raise(p.UnexpectedVoidPattern,e),t.argument=e,this.finishNode(t,"RestElement")}parseBindingAtom(){switch(this.state.type){case 0:{let t=this.startNode();return this.next(),t.elements=this.parseBindingList(3,93,1),this.finishNode(t,"ArrayPattern")}case 5:return this.parseObjectLike(8,!0);case 88:return this.parseVoidPattern(null)}return this.parseIdentifier()}parseBindingList(t,e,s){let i=s&1,r=[],n=!0;for(;!this.eat(t);)if(n?n=!1:this.expect(12),i&&this.match(12))r.push(null);else{if(this.eat(t))break;if(this.match(21)){let o=this.parseRestBinding();if((this.hasPlugin("flow")||s&2)&&(o=this.parseFunctionParamType(o)),r.push(o),!this.checkCommaAfterRest(e)){this.expect(t);break}}else{let o=[];if(s&2)for(this.match(26)&&this.hasPlugin("decorators")&&this.raise(p.UnsupportedParameterDecorator,this.state.startLoc);this.match(26);)o.push(this.parseDecorator());r.push(this.parseBindingElement(s,o))}}return r}parseBindingRestProperty(t){return this.next(),this.hasPlugin("discardBinding")&&this.match(88)?(t.argument=this.parseVoidPattern(null),this.raise(p.UnexpectedVoidPattern,t.argument)):t.argument=this.parseIdentifier(),this.checkCommaAfterRest(125),this.finishNode(t,"RestElement")}parseBindingProperty(){let{type:t,startLoc:e}=this.state;if(t===21)return this.parseBindingRestProperty(this.startNode());let s=this.startNode();return t===139?(this.expectPlugin("destructuringPrivate",e),this.classScope.usePrivateName(this.state.value,e),s.key=this.parsePrivateName()):this.parsePropertyName(s),s.method=!1,this.parseObjPropValue(s,e,!1,!1,!0,!1)}parseBindingElement(t,e){let s=this.parseMaybeDefault();return(this.hasPlugin("flow")||t&2)&&this.parseFunctionParamType(s),e.length&&(s.decorators=e,this.resetStartLocationFromNode(s,e[0])),this.parseMaybeDefault(s.loc.start,s)}parseFunctionParamType(t){return t}parseMaybeDefault(t,e){if(t??(t=this.state.startLoc),e=e??this.parseBindingAtom(),!this.eat(29))return e;let s=this.startNodeAt(t);return e.type==="VoidPattern"&&this.raise(p.VoidPatternInitializer,e),s.left=e,s.right=this.parseMaybeAssignAllowIn(),this.finishNode(s,"AssignmentPattern")}isValidLVal(t,e,s,i){switch(t){case"AssignmentPattern":return"left";case"RestElement":return"argument";case"ObjectProperty":return"value";case"ParenthesizedExpression":return"expression";case"ArrayPattern":return"elements";case"ObjectPattern":return"properties";case"VoidPattern":return!0;case"CallExpression":if(!e&&!this.state.strict&&this.optionFlags&8192)return!0}return!1}isOptionalMemberExpression(t){return t.type==="OptionalMemberExpression"}checkLVal(t,e,s=64,i=!1,r=!1,n=!1,o=!1){var l;let c=t.type;if(this.isObjectMethod(t))return;let h=this.isOptionalMemberExpression(t);if(h||c==="MemberExpression"){h&&(this.expectPlugin("optionalChainingAssign",t.loc.start),e.type!=="AssignmentExpression"&&this.raise(p.InvalidLhsOptionalChaining,t,{ancestor:e})),s!==64&&this.raise(p.InvalidPropertyBindingPattern,t);return}if(c==="Identifier"){this.checkIdentifier(t,s,r);let{name:y}=t;i&&(i.has(y)?this.raise(p.ParamDupe,t):i.add(y));return}else c==="VoidPattern"&&e.type==="CatchClause"&&this.raise(p.VoidPatternCatchClauseParam,t);let f=bt(t);o||(o=f.type==="CallExpression"&&(f.callee.type==="Import"||f.callee.type==="Super"));let d=this.isValidLVal(c,o,!(n||(l=t.extra)!=null&&l.parenthesized)&&e.type==="AssignmentExpression",s);if(d===!0)return;if(d===!1){let y=s===64?p.InvalidLhs:p.InvalidLhsBinding;this.raise(y,t,{ancestor:e});return}let m,g;typeof d=="string"?(m=d,g=c==="ParenthesizedExpression"):[m,g]=d;let I=c==="ArrayPattern"||c==="ObjectPattern"?{type:c}:e,L=t[m];if(Array.isArray(L))for(let y of L)y&&this.checkLVal(y,I,s,i,r,g,!0);else L&&this.checkLVal(L,I,s,i,r,g,o)}checkIdentifier(t,e,s=!1){this.state.strict&&(s?ai(t.name,this.inModule):ri(t.name))&&(e===64?this.raise(p.StrictEvalArguments,t,{referenceName:t.name}):this.raise(p.StrictEvalArgumentsBinding,t,{bindingName:t.name})),e&8192&&t.name==="let"&&this.raise(p.LetInLexicalBinding,t),e&64||this.declareNameFromIdentifier(t,e)}declareNameFromIdentifier(t,e){this.scope.declareName(t.name,e,t.loc.start)}checkToRestConversion(t,e){switch(t.type){case"ParenthesizedExpression":this.checkToRestConversion(t.expression,e);break;case"Identifier":case"MemberExpression":break;case"ArrayExpression":case"ObjectExpression":if(e)break;default:this.raise(p.InvalidRestAssignmentPattern,t)}}checkCommaAfterRest(t){return this.match(12)?(this.raise(this.lookaheadCharCode()===t?p.RestTrailingComma:p.ElementAfterRest,this.state.startLoc),!0):!1}},et=/in(?:stanceof)?|as|satisfies/y;function Yr(a){if(a==null)throw new Error(`Unexpected ${a} value.`);return a}u(Yr,"nonNull");function Js(a){if(!a)throw new Error("Assert fail")}u(Js,"assert");var P=J`typescript`({AbstractMethodHasImplementation:u(({methodName:a})=>`Method '${a}' cannot have an implementation because it is marked abstract.`,"AbstractMethodHasImplementation"),AbstractPropertyHasInitializer:u(({propertyName:a})=>`Property '${a}' cannot have an initializer because it is marked abstract.`,"AbstractPropertyHasInitializer"),AccessorCannotBeOptional:"An 'accessor' property cannot be declared optional.",AccessorCannotDeclareThisParameter:"'get' and 'set' accessors cannot declare 'this' parameters.",AccessorCannotHaveTypeParameters:"An accessor cannot have type parameters.",ClassMethodHasDeclare:"Class methods cannot have the 'declare' modifier.",ClassMethodHasReadonly:"Class methods cannot have the 'readonly' modifier.",ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:"A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference.",ConstructorHasTypeParameters:"Type parameters cannot appear on a constructor declaration.",DeclareAccessor:u(({kind:a})=>`'declare' is not allowed in ${a}ters.`,"DeclareAccessor"),DeclareClassFieldHasInitializer:"Initializers are not allowed in ambient contexts.",DeclareFunctionHasImplementation:"An implementation cannot be declared in ambient contexts.",DuplicateAccessibilityModifier:u(({modifier:a})=>`Accessibility modifier already seen: '${a}'.`,"DuplicateAccessibilityModifier"),DuplicateModifier:u(({modifier:a})=>`Duplicate modifier: '${a}'.`,"DuplicateModifier"),EmptyHeritageClauseType:u(({token:a})=>`'${a}' list cannot be empty.`,"EmptyHeritageClauseType"),EmptyTypeArguments:"Type argument list cannot be empty.",EmptyTypeParameters:"Type parameter list cannot be empty.",ExpectedAmbientAfterExportDeclare:"'export declare' must be followed by an ambient declaration.",ImportAliasHasImportType:"An import alias can not use 'import type'.",ImportReflectionHasImportType:"An `import module` declaration can not use `type` modifier",IncompatibleModifiers:u(({modifiers:a})=>`'${a[0]}' modifier cannot be used with '${a[1]}' modifier.`,"IncompatibleModifiers"),IndexSignatureHasAbstract:"Index signatures cannot have the 'abstract' modifier.",IndexSignatureHasAccessibility:u(({modifier:a})=>`Index signatures cannot have an accessibility modifier ('${a}').`,"IndexSignatureHasAccessibility"),IndexSignatureHasDeclare:"Index signatures cannot have the 'declare' modifier.",IndexSignatureHasOverride:"'override' modifier cannot appear on an index signature.",IndexSignatureHasStatic:"Index signatures cannot have the 'static' modifier.",InitializerNotAllowedInAmbientContext:"Initializers are not allowed in ambient contexts.",InvalidHeritageClauseType:u(({token:a})=>`'${a}' list can only include identifiers or qualified-names with optional type arguments.`,"InvalidHeritageClauseType"),InvalidModifierOnAwaitUsingDeclaration:u(a=>`'${a}' modifier cannot appear on an await using declaration.`,"InvalidModifierOnAwaitUsingDeclaration"),InvalidModifierOnTypeMember:u(({modifier:a})=>`'${a}' modifier cannot appear on a type member.`,"InvalidModifierOnTypeMember"),InvalidModifierOnTypeParameter:u(({modifier:a})=>`'${a}' modifier cannot appear on a type parameter.`,"InvalidModifierOnTypeParameter"),InvalidModifierOnTypeParameterPositions:u(({modifier:a})=>`'${a}' modifier can only appear on a type parameter of a class, interface or type alias.`,"InvalidModifierOnTypeParameterPositions"),InvalidModifierOnUsingDeclaration:u(a=>`'${a}' modifier cannot appear on a using declaration.`,"InvalidModifierOnUsingDeclaration"),InvalidModifiersOrder:u(({orderedModifiers:a})=>`'${a[0]}' modifier must precede '${a[1]}' modifier.`,"InvalidModifiersOrder"),InvalidPropertyAccessAfterInstantiationExpression:"Invalid property access after an instantiation expression. You can either wrap the instantiation expression in parentheses, or delete the type arguments.",InvalidTupleMemberLabel:"Tuple members must be labeled with a simple identifier.",MissingInterfaceName:"'interface' declarations must be followed by an identifier.",NonAbstractClassHasAbstractMethod:"Abstract methods can only appear within an abstract class.",NonClassMethodPropertyHasAbstractModifier:"'abstract' modifier can only appear on a class, method, or property declaration.",OptionalTypeBeforeRequired:"A required element cannot follow an optional element.",OverrideNotInSubClass:"This member cannot have an 'override' modifier because its containing class does not extend another class.",PatternIsOptional:"A binding pattern parameter cannot be optional in an implementation signature.",PrivateElementHasAbstract:"Private elements cannot have the 'abstract' modifier.",PrivateElementHasAccessibility:u(({modifier:a})=>`Private elements cannot have an accessibility modifier ('${a}').`,"PrivateElementHasAccessibility"),ReadonlyForMethodSignature:"'readonly' modifier can only appear on a property declaration or index signature.",ReservedArrowTypeParam:"This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma, as in `<T,>() => ...`.",ReservedTypeAssertion:"This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead.",SetAccessorCannotHaveOptionalParameter:"A 'set' accessor cannot have an optional parameter.",SetAccessorCannotHaveRestParameter:"A 'set' accessor cannot have rest parameter.",SetAccessorCannotHaveReturnType:"A 'set' accessor cannot have a return type annotation.",SingleTypeParameterWithoutTrailingComma:u(({typeParameterName:a})=>`Single type parameter ${a} should have a trailing comma. Example usage: <${a},>.`,"SingleTypeParameterWithoutTrailingComma"),StaticBlockCannotHaveModifier:"Static class blocks cannot have any modifier.",TupleOptionalAfterType:"A labeled tuple optional element must be declared using a question mark after the name and before the colon (`name?: type`), rather than after the type (`name: type?`).",TypeAnnotationAfterAssign:"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.",TypeImportCannotSpecifyDefaultAndNamed:"A type-only import can specify a default import or named bindings, but not both.",TypeModifierIsUsedInTypeExports:"The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement.",TypeModifierIsUsedInTypeImports:"The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement.",UnexpectedParameterModifier:"A parameter property is only allowed in a constructor implementation.",UnexpectedReadonly:"'readonly' type modifier is only permitted on array and tuple literal types.",UnexpectedTypeAnnotation:"Did not expect a type annotation here.",UnexpectedTypeCastInParameter:"Unexpected type cast in parameter position.",UnsupportedImportTypeArgument:"Argument in a type import must be a string literal.",UnsupportedParameterPropertyKind:"A parameter property may not be declared using a binding pattern.",UnsupportedSignatureParameterKind:u(({type:a})=>`Name in a signature must be an Identifier, ObjectPattern or ArrayPattern, instead got ${a}.`,"UnsupportedSignatureParameterKind"),UsingDeclarationInAmbientContext:u(a=>`'${a}' declarations are not allowed in ambient contexts.`,"UsingDeclarationInAmbientContext")});function Zr(a){switch(a){case"any":return"TSAnyKeyword";case"boolean":return"TSBooleanKeyword";case"bigint":return"TSBigIntKeyword";case"never":return"TSNeverKeyword";case"number":return"TSNumberKeyword";case"object":return"TSObjectKeyword";case"string":return"TSStringKeyword";case"symbol":return"TSSymbolKeyword";case"undefined":return"TSUndefinedKeyword";case"unknown":return"TSUnknownKeyword";default:return}}u(Zr,"keywordTypeFromName");function Ws(a){return a==="private"||a==="public"||a==="protected"}u(Ws,"tsIsAccessModifier");function Qr(a){return a==="in"||a==="out"}u(Qr,"tsIsVarianceAnnotations");var ea=u(a=>class extends a{static{u(this,"TypeScriptParserMixin")}constructor(...e){super(...e),this.tsParseInOutModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out"],disallowedModifiers:["const","public","private","protected","readonly","declare","abstract","override"],errorTemplate:P.InvalidModifierOnTypeParameter}),this.tsParseConstModifier=this.tsParseModifiers.bind(this,{allowedModifiers:["const"],disallowedModifiers:["in","out"],errorTemplate:P.InvalidModifierOnTypeParameterPositions}),this.tsParseInOutConstModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out","const"],disallowedModifiers:["public","private","protected","readonly","declare","abstract","override"],errorTemplate:P.InvalidModifierOnTypeParameter})}getScopeHandler(){return ot}tsIsIdentifier(){return O(this.state.type)}tsTokenCanFollowModifier(){return this.match(0)||this.match(5)||this.match(55)||this.match(21)||this.match(139)||this.isLiteralPropertyName()}tsNextTokenOnSameLineAndCanFollowModifier(){return this.next(),this.hasPrecedingLineBreak()?!1:this.tsTokenCanFollowModifier()}tsNextTokenCanFollowModifier(){return this.match(106)?(this.next(),this.tsTokenCanFollowModifier()):this.tsNextTokenOnSameLineAndCanFollowModifier()}tsParseModifier(e,s,i){if(!O(this.state.type)&&this.state.type!==58&&this.state.type!==75)return;let r=this.state.value;if(e.includes(r)){if(i&&this.match(106)||s&&this.tsIsStartOfStaticBlocks())return;if(this.tsTryParse(this.tsNextTokenCanFollowModifier.bind(this)))return r}}tsParseModifiers({allowedModifiers:e,disallowedModifiers:s,stopOnStartOfClassStaticBlock:i,errorTemplate:r=P.InvalidModifierOnTypeMember},n){let o=u((c,h,f,d)=>{h===f&&n[d]&&this.raise(P.InvalidModifiersOrder,c,{orderedModifiers:[f,d]})},"enforceOrder"),l=u((c,h,f,d)=>{(n[f]&&h===d||n[d]&&h===f)&&this.raise(P.IncompatibleModifiers,c,{modifiers:[f,d]})},"incompatible");for(;;){let{startLoc:c}=this.state,h=this.tsParseModifier(e.concat(s??[]),i,n.static);if(!h)break;Ws(h)?n.accessibility?this.raise(P.DuplicateAccessibilityModifier,c,{modifier:h}):(o(c,h,h,"override"),o(c,h,h,"static"),o(c,h,h,"readonly"),n.accessibility=h):Qr(h)?(n[h]&&this.raise(P.DuplicateModifier,c,{modifier:h}),n[h]=!0,o(c,h,"in","out")):(hasOwnProperty.call(n,h)?this.raise(P.DuplicateModifier,c,{modifier:h}):(o(c,h,"static","readonly"),o(c,h,"static","override"),o(c,h,"override","readonly"),o(c,h,"abstract","override"),l(c,h,"declare","override"),l(c,h,"static","abstract")),n[h]=!0),s!=null&&s.includes(h)&&this.raise(r,c,{modifier:h})}}tsIsListTerminator(e){switch(e){case"EnumMembers":case"TypeMembers":return this.match(8);case"HeritageClauseElement":return this.match(5);case"TupleElementTypes":return this.match(3);case"TypeParametersOrArguments":return this.match(48)}}tsParseList(e,s){let i=[];for(;!this.tsIsListTerminator(e);)i.push(s());return i}tsParseDelimitedList(e,s,i){return Yr(this.tsParseDelimitedListWorker(e,s,!0,i))}tsParseDelimitedListWorker(e,s,i,r){let n=[],o=-1;for(;!this.tsIsListTerminator(e);){o=-1;let l=s();if(l==null)return;if(n.push(l),this.eat(12)){o=this.state.lastTokStartLoc.index;continue}if(this.tsIsListTerminator(e))break;i&&this.expect(12);return}return r&&(r.value=o),n}tsParseBracketedList(e,s,i,r,n){r||(i?this.expect(0):this.expect(47));let o=this.tsParseDelimitedList(e,s,n);return i?this.expect(3):this.expect(48),o}tsParseImportType(){let e=this.startNode();return this.expect(83),this.expect(10),this.match(134)?e.argument=this.parseStringLiteral(this.state.value):(this.raise(P.UnsupportedImportTypeArgument,this.state.startLoc),e.argument=super.parseExprAtom()),this.eat(12)?e.options=this.tsParseImportTypeOptions():e.options=null,this.expect(11),this.eat(16)&&(e.qualifier=this.tsParseEntityName(3)),this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSImportType")}tsParseImportTypeOptions(){let e=this.startNode();this.expect(5);let s=this.startNode();return this.isContextual(76)?(s.method=!1,s.key=this.parseIdentifier(!0),s.computed=!1,s.shorthand=!1):this.unexpected(null,76),this.expect(14),s.value=this.tsParseImportTypeWithPropertyValue(),e.properties=[this.finishObjectProperty(s)],this.eat(12),this.expect(8),this.finishNode(e,"ObjectExpression")}tsParseImportTypeWithPropertyValue(){let e=this.startNode(),s=[];for(this.expect(5);!this.match(8);){let i=this.state.type;O(i)||i===134?s.push(super.parsePropertyDefinition(null)):this.unexpected(),this.eat(12)}return e.properties=s,this.next(),this.finishNode(e,"ObjectExpression")}tsParseEntityName(e){let s;if(e&1&&this.match(78))if(e&2)s=this.parseIdentifier(!0);else{let i=this.startNode();this.next(),s=this.finishNode(i,"ThisExpression")}else s=this.parseIdentifier(!!(e&1));for(;this.eat(16);){let i=this.startNodeAtNode(s);i.left=s,i.right=this.parseIdentifier(!!(e&1)),s=this.finishNode(i,"TSQualifiedName")}return s}tsParseTypeReference(){let e=this.startNode();return e.typeName=this.tsParseEntityName(1),!this.hasPrecedingLineBreak()&&this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSTypeReference")}tsParseThisTypePredicate(e){this.next();let s=this.startNodeAtNode(e);return s.parameterName=e,s.typeAnnotation=this.tsParseTypeAnnotation(!1),s.asserts=!1,this.finishNode(s,"TSTypePredicate")}tsParseThisTypeNode(){let e=this.startNode();return this.next(),this.finishNode(e,"TSThisType")}tsParseTypeQuery(){let e=this.startNode();return this.expect(87),this.match(83)?e.exprName=this.tsParseImportType():e.exprName=this.tsParseEntityName(3),!this.hasPrecedingLineBreak()&&this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSTypeQuery")}tsParseTypeParameter(e){let s=this.startNode();return e(s),s.name=this.tsParseTypeParameterName(),s.constraint=this.tsEatThenParseType(81),s.default=this.tsEatThenParseType(29),this.finishNode(s,"TSTypeParameter")}tsTryParseTypeParameters(e){if(this.match(47))return this.tsParseTypeParameters(e)}tsParseTypeParameters(e){let s=this.startNode();this.match(47)||this.match(143)?this.next():this.unexpected();let i={value:-1};return s.params=this.tsParseBracketedList("TypeParametersOrArguments",this.tsParseTypeParameter.bind(this,e),!1,!0,i),s.params.length===0&&this.raise(P.EmptyTypeParameters,s),i.value!==-1&&this.addExtra(s,"trailingComma",i.value),this.finishNode(s,"TSTypeParameterDeclaration")}tsFillSignature(e,s){let i=e===19,r="parameters",n="typeAnnotation";s.typeParameters=this.tsTryParseTypeParameters(this.tsParseConstModifier),this.expect(10),s[r]=this.tsParseBindingListForSignature(),i?s[n]=this.tsParseTypeOrTypePredicateAnnotation(e):this.match(e)&&(s[n]=this.tsParseTypeOrTypePredicateAnnotation(e))}tsParseBindingListForSignature(){let e=super.parseBindingList(11,41,2);for(let s of e){let{type:i}=s;(i==="AssignmentPattern"||i==="TSParameterProperty")&&this.raise(P.UnsupportedSignatureParameterKind,s,{type:i})}return e}tsParseTypeMemberSemicolon(){!this.eat(12)&&!this.isLineTerminator()&&this.expect(13)}tsParseSignatureMember(e,s){return this.tsFillSignature(14,s),this.tsParseTypeMemberSemicolon(),this.finishNode(s,e)}tsIsUnambiguouslyIndexSignature(){return this.next(),O(this.state.type)?(this.next(),this.match(14)):!1}tsTryParseIndexSignature(e){if(!(this.match(0)&&this.tsLookAhead(this.tsIsUnambiguouslyIndexSignature.bind(this))))return;this.expect(0);let s=this.parseIdentifier();s.typeAnnotation=this.tsParseTypeAnnotation(),this.resetEndLocation(s),this.expect(3),e.parameters=[s];let i=this.tsTryParseTypeAnnotation();return i&&(e.typeAnnotation=i),this.tsParseTypeMemberSemicolon(),this.finishNode(e,"TSIndexSignature")}tsParsePropertyOrMethodSignature(e,s){if(this.eat(17)&&(e.optional=!0),this.match(10)||this.match(47)){s&&this.raise(P.ReadonlyForMethodSignature,e);let i=e;i.kind&&this.match(47)&&this.raise(P.AccessorCannotHaveTypeParameters,this.state.curPosition()),this.tsFillSignature(14,i),this.tsParseTypeMemberSemicolon();let r="parameters",n="typeAnnotation";if(i.kind==="get")i[r].length>0&&(this.raise(p.BadGetterArity,this.state.curPosition()),this.isThisParam(i[r][0])&&this.raise(P.AccessorCannotDeclareThisParameter,this.state.curPosition()));else if(i.kind==="set"){if(i[r].length!==1)this.raise(p.BadSetterArity,this.state.curPosition());else{let o=i[r][0];this.isThisParam(o)&&this.raise(P.AccessorCannotDeclareThisParameter,this.state.curPosition()),o.type==="Identifier"&&o.optional&&this.raise(P.SetAccessorCannotHaveOptionalParameter,this.state.curPosition()),o.type==="RestElement"&&this.raise(P.SetAccessorCannotHaveRestParameter,this.state.curPosition())}i[n]&&this.raise(P.SetAccessorCannotHaveReturnType,i[n])}else i.kind="method";return this.finishNode(i,"TSMethodSignature")}else{let i=e;s&&(i.readonly=!0);let r=this.tsTryParseTypeAnnotation();return r&&(i.typeAnnotation=r),this.tsParseTypeMemberSemicolon(),this.finishNode(i,"TSPropertySignature")}}tsParseTypeMember(){let e=this.startNode();if(this.match(10)||this.match(47))return this.tsParseSignatureMember("TSCallSignatureDeclaration",e);if(this.match(77)){let i=this.startNode();return this.next(),this.match(10)||this.match(47)?this.tsParseSignatureMember("TSConstructSignatureDeclaration",e):(e.key=this.createIdentifier(i,"new"),this.tsParsePropertyOrMethodSignature(e,!1))}this.tsParseModifiers({allowedModifiers:["readonly"],disallowedModifiers:["declare","abstract","private","protected","public","static","override"]},e);let s=this.tsTryParseIndexSignature(e);return s||(super.parsePropertyName(e),!e.computed&&e.key.type==="Identifier"&&(e.key.name==="get"||e.key.name==="set")&&this.tsTokenCanFollowModifier()&&(e.kind=e.key.name,super.parsePropertyName(e),!this.match(10)&&!this.match(47)&&this.unexpected(null,10)),this.tsParsePropertyOrMethodSignature(e,!!e.readonly))}tsParseTypeLiteral(){let e=this.startNode();return e.members=this.tsParseObjectTypeMembers(),this.finishNode(e,"TSTypeLiteral")}tsParseObjectTypeMembers(){this.expect(5);let e=this.tsParseList("TypeMembers",this.tsParseTypeMember.bind(this));return this.expect(8),e}tsIsStartOfMappedType(){return this.next(),this.eat(53)?this.isContextual(122):(this.isContextual(122)&&this.next(),!this.match(0)||(this.next(),!this.tsIsIdentifier())?!1:(this.next(),this.match(58)))}tsParseMappedType(){let e=this.startNode();this.expect(5),this.match(53)?(e.readonly=this.state.value,this.next(),this.expectContextual(122)):this.eatContextual(122)&&(e.readonly=!0),this.expect(0);let s=this.startNode();return s.name=this.tsParseTypeParameterName(),s.constraint=this.tsExpectThenParseType(58),e.typeParameter=this.finishNode(s,"TSTypeParameter"),e.nameType=this.eatContextual(93)?this.tsParseType():null,this.expect(3),this.match(53)?(e.optional=this.state.value,this.next(),this.expect(17)):this.eat(17)&&(e.optional=!0),e.typeAnnotation=this.tsTryParseType(),this.semicolon(),this.expect(8),this.finishNode(e,"TSMappedType")}tsParseTupleType(){let e=this.startNode();e.elementTypes=this.tsParseBracketedList("TupleElementTypes",this.tsParseTupleElementType.bind(this),!0,!1);let s=!1;return e.elementTypes.forEach(i=>{let{type:r}=i;s&&r!=="TSRestType"&&r!=="TSOptionalType"&&!(r==="TSNamedTupleMember"&&i.optional)&&this.raise(P.OptionalTypeBeforeRequired,i),s||(s=r==="TSNamedTupleMember"&&i.optional||r==="TSOptionalType")}),this.finishNode(e,"TSTupleType")}tsParseTupleElementType(){let e=this.state.startLoc,s=this.eat(21),{startLoc:i}=this.state,r,n,o,l,h=H(this.state.type)?this.lookaheadCharCode():null;if(h===58)r=!0,o=!1,n=this.parseIdentifier(!0),this.expect(14),l=this.tsParseType();else if(h===63){o=!0;let f=this.state.value,d=this.tsParseNonArrayType();this.lookaheadCharCode()===58?(r=!0,n=this.createIdentifier(this.startNodeAt(i),f),this.expect(17),this.expect(14),l=this.tsParseType()):(r=!1,l=d,this.expect(17))}else l=this.tsParseType(),o=this.eat(17),r=this.eat(14);if(r){let f;n?(f=this.startNodeAt(i),f.optional=o,f.label=n,f.elementType=l,this.eat(17)&&(f.optional=!0,this.raise(P.TupleOptionalAfterType,this.state.lastTokStartLoc))):(f=this.startNodeAt(i),f.optional=o,this.raise(P.InvalidTupleMemberLabel,l),f.label=l,f.elementType=this.tsParseType()),l=this.finishNode(f,"TSNamedTupleMember")}else if(o){let f=this.startNodeAt(i);f.typeAnnotation=l,l=this.finishNode(f,"TSOptionalType")}if(s){let f=this.startNodeAt(e);f.typeAnnotation=l,l=this.finishNode(f,"TSRestType")}return l}tsParseParenthesizedType(){let e=this.startNode();return this.expect(10),e.typeAnnotation=this.tsParseType(),this.expect(11),this.finishNode(e,"TSParenthesizedType")}tsParseFunctionOrConstructorType(e,s){let i=this.startNode();return e==="TSConstructorType"&&(i.abstract=!!s,s&&this.next(),this.next()),this.tsInAllowConditionalTypesContext(()=>this.tsFillSignature(19,i)),this.finishNode(i,e)}tsParseLiteralTypeNode(){let e=this.startNode();switch(this.state.type){case 135:case 136:case 134:case 85:case 86:e.literal=super.parseExprAtom();break;default:this.unexpected()}return this.finishNode(e,"TSLiteralType")}tsParseTemplateLiteralType(){let e=this.startNode();return e.literal=super.parseTemplate(!1),this.finishNode(e,"TSLiteralType")}parseTemplateSubstitution(){return this.state.inType?this.tsParseType():super.parseTemplateSubstitution()}tsParseThisTypeOrThisTypePredicate(){let e=this.tsParseThisTypeNode();return this.isContextual(116)&&!this.hasPrecedingLineBreak()?this.tsParseThisTypePredicate(e):e}tsParseNonArrayType(){switch(this.state.type){case 134:case 135:case 136:case 85:case 86:return this.tsParseLiteralTypeNode();case 53:if(this.state.value==="-"){let e=this.startNode(),s=this.lookahead();return s.type!==135&&s.type!==136&&this.unexpected(),e.literal=this.parseMaybeUnary(),this.finishNode(e,"TSLiteralType")}break;case 78:return this.tsParseThisTypeOrThisTypePredicate();case 87:return this.tsParseTypeQuery();case 83:return this.tsParseImportType();case 5:return this.tsLookAhead(this.tsIsStartOfMappedType.bind(this))?this.tsParseMappedType():this.tsParseTypeLiteral();case 0:return this.tsParseTupleType();case 10:return this.tsParseParenthesizedType();case 25:case 24:return this.tsParseTemplateLiteralType();default:{let{type:e}=this.state;if(O(e)||e===88||e===84){let s=e===88?"TSVoidKeyword":e===84?"TSNullKeyword":Zr(this.state.value);if(s!==void 0&&this.lookaheadCharCode()!==46){let i=this.startNode();return this.next(),this.finishNode(i,s)}return this.tsParseTypeReference()}}}throw this.unexpected()}tsParseArrayTypeOrHigher(){let{startLoc:e}=this.state,s=this.tsParseNonArrayType();for(;!this.hasPrecedingLineBreak()&&this.eat(0);)if(this.match(3)){let i=this.startNodeAt(e);i.elementType=s,this.expect(3),s=this.finishNode(i,"TSArrayType")}else{let i=this.startNodeAt(e);i.objectType=s,i.indexType=this.tsParseType(),this.expect(3),s=this.finishNode(i,"TSIndexedAccessType")}return s}tsParseTypeOperator(){let e=this.startNode(),s=this.state.value;return this.next(),e.operator=s,e.typeAnnotation=this.tsParseTypeOperatorOrHigher(),s==="readonly"&&this.tsCheckTypeAnnotationForReadOnly(e),this.finishNode(e,"TSTypeOperator")}tsCheckTypeAnnotationForReadOnly(e){switch(e.typeAnnotation.type){case"TSTupleType":case"TSArrayType":return;default:this.raise(P.UnexpectedReadonly,e)}}tsParseInferType(){let e=this.startNode();this.expectContextual(115);let s=this.startNode();return s.name=this.tsParseTypeParameterName(),s.constraint=this.tsTryParse(()=>this.tsParseConstraintForInferType()),e.typeParameter=this.finishNode(s,"TSTypeParameter"),this.finishNode(e,"TSInferType")}tsParseConstraintForInferType(){if(this.eat(81)){let e=this.tsInDisallowConditionalTypesContext(()=>this.tsParseType());if(this.state.inDisallowConditionalTypesContext||!this.match(17))return e}}tsParseTypeOperatorOrHigher(){return br(this.state.type)&&!this.state.containsEsc?this.tsParseTypeOperator():this.isContextual(115)?this.tsParseInferType():this.tsInAllowConditionalTypesContext(()=>this.tsParseArrayTypeOrHigher())}tsParseUnionOrIntersectionType(e,s,i){let r=this.startNode(),n=this.eat(i),o=[];do o.push(s());while(this.eat(i));return o.length===1&&!n?o[0]:(r.types=o,this.finishNode(r,e))}tsParseIntersectionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSIntersectionType",this.tsParseTypeOperatorOrHigher.bind(this),45)}tsParseUnionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSUnionType",this.tsParseIntersectionTypeOrHigher.bind(this),43)}tsIsStartOfFunctionType(){return this.match(47)?!0:this.match(10)&&this.tsLookAhead(this.tsIsUnambiguouslyStartOfFunctionType.bind(this))}tsSkipParameterStart(){if(O(this.state.type)||this.match(78))return this.next(),!0;if(this.match(5)){let{errors:e}=this.state,s=e.length;try{return this.parseObjectLike(8,!0),e.length===s}catch{return!1}}if(this.match(0)){this.next();let{errors:e}=this.state,s=e.length;try{return super.parseBindingList(3,93,1),e.length===s}catch{return!1}}return!1}tsIsUnambiguouslyStartOfFunctionType(){return this.next(),!!(this.match(11)||this.match(21)||this.tsSkipParameterStart()&&(this.match(14)||this.match(12)||this.match(17)||this.match(29)||this.match(11)&&(this.next(),this.match(19))))}tsParseTypeOrTypePredicateAnnotation(e){return this.tsInType(()=>{let s=this.startNode();this.expect(e);let i=this.startNode(),r=!!this.tsTryParse(this.tsParseTypePredicateAsserts.bind(this));if(r&&this.match(78)){let l=this.tsParseThisTypeOrThisTypePredicate();return l.type==="TSThisType"?(i.parameterName=l,i.asserts=!0,i.typeAnnotation=null,l=this.finishNode(i,"TSTypePredicate")):(this.resetStartLocationFromNode(l,i),l.asserts=!0),s.typeAnnotation=l,this.finishNode(s,"TSTypeAnnotation")}let n=this.tsIsIdentifier()&&this.tsTryParse(this.tsParseTypePredicatePrefix.bind(this));if(!n)return r?(i.parameterName=this.parseIdentifier(),i.asserts=r,i.typeAnnotation=null,s.typeAnnotation=this.finishNode(i,"TSTypePredicate"),this.finishNode(s,"TSTypeAnnotation")):this.tsParseTypeAnnotation(!1,s);let o=this.tsParseTypeAnnotation(!1);return i.parameterName=n,i.typeAnnotation=o,i.asserts=r,s.typeAnnotation=this.finishNode(i,"TSTypePredicate"),this.finishNode(s,"TSTypeAnnotation")})}tsTryParseTypeOrTypePredicateAnnotation(){if(this.match(14))return this.tsParseTypeOrTypePredicateAnnotation(14)}tsTryParseTypeAnnotation(){if(this.match(14))return this.tsParseTypeAnnotation()}tsTryParseType(){return this.tsEatThenParseType(14)}tsParseTypePredicatePrefix(){let e=this.parseIdentifier();if(this.isContextual(116)&&!this.hasPrecedingLineBreak())return this.next(),e}tsParseTypePredicateAsserts(){if(this.state.type!==109)return!1;let e=this.state.containsEsc;return this.next(),!O(this.state.type)&&!this.match(78)?!1:(e&&this.raise(p.InvalidEscapedReservedWord,this.state.lastTokStartLoc,{reservedWord:"asserts"}),!0)}tsParseTypeAnnotation(e=!0,s=this.startNode()){return this.tsInType(()=>{e&&this.expect(14),s.typeAnnotation=this.tsParseType()}),this.finishNode(s,"TSTypeAnnotation")}tsParseType(){Js(this.state.inType);let e=this.tsParseNonConditionalType();if(this.state.inDisallowConditionalTypesContext||this.hasPrecedingLineBreak()||!this.eat(81))return e;let s=this.startNodeAtNode(e);return s.checkType=e,s.extendsType=this.tsInDisallowConditionalTypesContext(()=>this.tsParseNonConditionalType()),this.expect(17),s.trueType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.expect(14),s.falseType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.finishNode(s,"TSConditionalType")}isAbstractConstructorSignature(){return this.isContextual(124)&&this.isLookaheadContextual("new")}tsParseNonConditionalType(){return this.tsIsStartOfFunctionType()?this.tsParseFunctionOrConstructorType("TSFunctionType"):this.match(77)?this.tsParseFunctionOrConstructorType("TSConstructorType"):this.isAbstractConstructorSignature()?this.tsParseFunctionOrConstructorType("TSConstructorType",!0):this.tsParseUnionTypeOrHigher()}tsParseTypeAssertion(){this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(P.ReservedTypeAssertion,this.state.startLoc);let e=this.startNode();return e.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?this.tsParseTypeReference():this.tsParseType())),this.expect(48),e.expression=this.parseMaybeUnary(),this.finishNode(e,"TSTypeAssertion")}tsParseHeritageClause(e){let s=this.state.startLoc,i=this.tsParseDelimitedList("HeritageClauseElement",()=>{let r=this.startNode();return r.expression=this.tsParseEntityName(3),this.match(47)&&(r.typeParameters=this.tsParseTypeArguments()),this.finishNode(r,"TSExpressionWithTypeArguments")});return i.length||this.raise(P.EmptyHeritageClauseType,s,{token:e}),i}tsParseInterfaceDeclaration(e,s={}){if(this.hasFollowingLineBreak())return null;this.expectContextual(129),s.declare&&(e.declare=!0),O(this.state.type)?(e.id=this.parseIdentifier(),this.checkIdentifier(e.id,130)):(e.id=null,this.raise(P.MissingInterfaceName,this.state.startLoc)),e.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers),this.eat(81)&&(e.extends=this.tsParseHeritageClause("extends"));let i=this.startNode();return i.body=this.tsInType(this.tsParseObjectTypeMembers.bind(this)),e.body=this.finishNode(i,"TSInterfaceBody"),this.finishNode(e,"TSInterfaceDeclaration")}tsParseTypeAliasDeclaration(e){return e.id=this.parseIdentifier(),this.checkIdentifier(e.id,2),e.typeAnnotation=this.tsInType(()=>{if(e.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutModifiers),this.expect(29),this.isContextual(114)&&this.lookaheadCharCode()!==46){let s=this.startNode();return this.next(),this.finishNode(s,"TSIntrinsicKeyword")}return this.tsParseType()}),this.semicolon(),this.finishNode(e,"TSTypeAliasDeclaration")}tsInTopLevelContext(e){if(this.curContext()!==D.brace){let s=this.state.context;this.state.context=[s[0]];try{return e()}finally{this.state.context=s}}else return e()}tsInType(e){let s=this.state.inType;this.state.inType=!0;try{return e()}finally{this.state.inType=s}}tsInDisallowConditionalTypesContext(e){let s=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!0;try{return e()}finally{this.state.inDisallowConditionalTypesContext=s}}tsInAllowConditionalTypesContext(e){let s=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!1;try{return e()}finally{this.state.inDisallowConditionalTypesContext=s}}tsEatThenParseType(e){if(this.match(e))return this.tsNextThenParseType()}tsExpectThenParseType(e){return this.tsInType(()=>(this.expect(e),this.tsParseType()))}tsNextThenParseType(){return this.tsInType(()=>(this.next(),this.tsParseType()))}tsParseEnumMember(){let e=this.startNode();return e.id=this.match(134)?super.parseStringLiteral(this.state.value):this.parseIdentifier(!0),this.eat(29)&&(e.initializer=super.parseMaybeAssignAllowIn()),this.finishNode(e,"TSEnumMember")}tsParseEnumDeclaration(e,s={}){return s.const&&(e.const=!0),s.declare&&(e.declare=!0),this.expectContextual(126),e.id=this.parseIdentifier(),this.checkIdentifier(e.id,e.const?8971:8459),this.expect(5),e.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(e,"TSEnumDeclaration")}tsParseEnumBody(){let e=this.startNode();return this.expect(5),e.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(e,"TSEnumBody")}tsParseModuleBlock(){let e=this.startNode();return this.scope.enter(0),this.expect(5),super.parseBlockOrModuleBlockBody(e.body=[],void 0,!0,8),this.scope.exit(),this.finishNode(e,"TSModuleBlock")}tsParseModuleOrNamespaceDeclaration(e,s=!1){if(e.id=this.parseIdentifier(),s||this.checkIdentifier(e.id,1024),this.eat(16)){let i=this.startNode();this.tsParseModuleOrNamespaceDeclaration(i,!0),e.body=i}else this.scope.enter(1024),this.prodParam.enter(0),e.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit();return this.finishNode(e,"TSModuleDeclaration")}tsParseAmbientExternalModuleDeclaration(e){return this.isContextual(112)?(e.kind="global",e.global=!0,e.id=this.parseIdentifier()):this.match(134)?(e.kind="module",e.id=super.parseStringLiteral(this.state.value)):this.unexpected(),this.match(5)?(this.scope.enter(1024),this.prodParam.enter(0),e.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit()):this.semicolon(),this.finishNode(e,"TSModuleDeclaration")}tsParseImportEqualsDeclaration(e,s,i){e.isExport=i||!1,e.id=s||this.parseIdentifier(),this.checkIdentifier(e.id,4096),this.expect(29);let r=this.tsParseModuleReference();return e.importKind==="type"&&r.type!=="TSExternalModuleReference"&&this.raise(P.ImportAliasHasImportType,r),e.moduleReference=r,this.semicolon(),this.finishNode(e,"TSImportEqualsDeclaration")}tsIsExternalModuleReference(){return this.isContextual(119)&&this.lookaheadCharCode()===40}tsParseModuleReference(){return this.tsIsExternalModuleReference()?this.tsParseExternalModuleReference():this.tsParseEntityName(0)}tsParseExternalModuleReference(){let e=this.startNode();return this.expectContextual(119),this.expect(10),this.match(134)||this.unexpected(),e.expression=super.parseExprAtom(),this.expect(11),this.sawUnambiguousESM=!0,this.finishNode(e,"TSExternalModuleReference")}tsLookAhead(e){let s=this.state.clone(),i=e();return this.state=s,i}tsTryParseAndCatch(e){let s=this.tryParse(i=>e()||i());if(!(s.aborted||!s.node))return s.error&&(this.state=s.failState),s.node}tsTryParse(e){let s=this.state.clone(),i=e();if(i!==void 0&&i!==!1)return i;this.state=s}tsTryParseDeclare(e){if(this.isLineTerminator())return;let s=this.state.type;return this.tsInAmbientContext(()=>{switch(s){case 68:return e.declare=!0,super.parseFunctionStatement(e,!1,!1);case 80:return e.declare=!0,this.parseClass(e,!0,!1);case 126:return this.tsParseEnumDeclaration(e,{declare:!0});case 112:return this.tsParseAmbientExternalModuleDeclaration(e);case 100:if(this.state.containsEsc)return;case 75:case 74:return!this.match(75)||!this.isLookaheadContextual("enum")?(e.declare=!0,this.parseVarStatement(e,this.state.value,!0)):(this.expect(75),this.tsParseEnumDeclaration(e,{const:!0,declare:!0}));case 107:if(this.isUsing())return this.raise(P.InvalidModifierOnUsingDeclaration,this.state.startLoc,"declare"),e.declare=!0,this.parseVarStatement(e,"using",!0);break;case 96:if(this.isAwaitUsing())return this.raise(P.InvalidModifierOnAwaitUsingDeclaration,this.state.startLoc,"declare"),e.declare=!0,this.next(),this.parseVarStatement(e,"await using",!0);break;case 129:{let i=this.tsParseInterfaceDeclaration(e,{declare:!0});if(i)return i}default:if(O(s))return this.tsParseDeclaration(e,this.state.type,!0,null)}})}tsTryParseExportDeclaration(){return this.tsParseDeclaration(this.startNode(),this.state.type,!0,null)}tsParseDeclaration(e,s,i,r){switch(s){case 124:if(this.tsCheckLineTerminator(i)&&(this.match(80)||O(this.state.type)))return this.tsParseAbstractDeclaration(e,r);break;case 127:if(this.tsCheckLineTerminator(i)){if(this.match(134))return this.tsParseAmbientExternalModuleDeclaration(e);if(O(this.state.type))return e.kind="module",this.tsParseModuleOrNamespaceDeclaration(e)}break;case 128:if(this.tsCheckLineTerminator(i)&&O(this.state.type))return e.kind="namespace",this.tsParseModuleOrNamespaceDeclaration(e);break;case 130:if(this.tsCheckLineTerminator(i)&&O(this.state.type))return this.tsParseTypeAliasDeclaration(e);break}}tsCheckLineTerminator(e){return e?this.hasFollowingLineBreak()?!1:(this.next(),!0):!this.isLineTerminator()}tsTryParseGenericAsyncArrowFunction(e){if(!this.match(47))return;let s=this.state.maybeInArrowParameters;this.state.maybeInArrowParameters=!0;let i=this.tsTryParseAndCatch(()=>{let r=this.startNodeAt(e);return r.typeParameters=this.tsParseTypeParameters(this.tsParseConstModifier),super.parseFunctionParams(r),r.returnType=this.tsTryParseTypeOrTypePredicateAnnotation(),this.expect(19),r});if(this.state.maybeInArrowParameters=s,!!i)return super.parseArrowExpression(i,null,!0)}tsParseTypeArgumentsInExpression(){if(this.reScan_lt()===47)return this.tsParseTypeArguments()}tsParseTypeArguments(){let e=this.startNode();return e.params=this.tsInType(()=>this.tsInTopLevelContext(()=>(this.expect(47),this.tsParseDelimitedList("TypeParametersOrArguments",this.tsParseType.bind(this))))),e.params.length===0?this.raise(P.EmptyTypeArguments,e):!this.state.inType&&this.curContext()===D.brace&&this.reScan_lt_gt(),this.expect(48),this.finishNode(e,"TSTypeParameterInstantiation")}tsIsDeclarationStart(){return Tr(this.state.type)}isExportDefaultSpecifier(){return this.tsIsDeclarationStart()?!1:super.isExportDefaultSpecifier()}parseBindingElement(e,s){let i=s.length?s[0].loc.start:this.state.startLoc,r={};this.tsParseModifiers({allowedModifiers:["public","private","protected","override","readonly"]},r);let n=r.accessibility,o=r.override,l=r.readonly;!(e&4)&&(n||l||o)&&this.raise(P.UnexpectedParameterModifier,i);let c=this.parseMaybeDefault();e&2&&this.parseFunctionParamType(c);let h=this.parseMaybeDefault(c.loc.start,c);if(n||l||o){let f=this.startNodeAt(i);return s.length&&(f.decorators=s),n&&(f.accessibility=n),l&&(f.readonly=l),o&&(f.override=o),h.type!=="Identifier"&&h.type!=="AssignmentPattern"&&this.raise(P.UnsupportedParameterPropertyKind,f),f.parameter=h,this.finishNode(f,"TSParameterProperty")}return s.length&&(c.decorators=s),h}isSimpleParameter(e){return e.type==="TSParameterProperty"&&super.isSimpleParameter(e.parameter)||super.isSimpleParameter(e)}tsDisallowOptionalPattern(e){for(let s of e.params)s.type!=="Identifier"&&s.optional&&!this.state.isAmbientContext&&this.raise(P.PatternIsOptional,s)}setArrowFunctionParameters(e,s,i){super.setArrowFunctionParameters(e,s,i),this.tsDisallowOptionalPattern(e)}parseFunctionBodyAndFinish(e,s,i=!1){this.match(14)&&(e.returnType=this.tsParseTypeOrTypePredicateAnnotation(14));let r=s==="FunctionDeclaration"?"TSDeclareFunction":s==="ClassMethod"||s==="ClassPrivateMethod"?"TSDeclareMethod":void 0;return r&&!this.match(5)&&this.isLineTerminator()?this.finishNode(e,r):r==="TSDeclareFunction"&&this.state.isAmbientContext&&(this.raise(P.DeclareFunctionHasImplementation,e),e.declare)?super.parseFunctionBodyAndFinish(e,r,i):(this.tsDisallowOptionalPattern(e),super.parseFunctionBodyAndFinish(e,s,i))}registerFunctionStatementId(e){!e.body&&e.id?this.checkIdentifier(e.id,1024):super.registerFunctionStatementId(e)}tsCheckForInvalidTypeCasts(e){e.forEach(s=>{s?.type==="TSTypeCastExpression"&&this.raise(P.UnexpectedTypeAnnotation,s.typeAnnotation)})}toReferencedList(e,s){return this.tsCheckForInvalidTypeCasts(e),e}parseArrayLike(e,s,i){let r=super.parseArrayLike(e,s,i);return r.type==="ArrayExpression"&&this.tsCheckForInvalidTypeCasts(r.elements),r}parseSubscript(e,s,i,r){if(!this.hasPrecedingLineBreak()&&this.match(35)){this.state.canStartJSXElement=!1,this.next();let o=this.startNodeAt(s);return o.expression=e,this.finishNode(o,"TSNonNullExpression")}let n=!1;if(this.match(18)&&this.lookaheadCharCode()===60){if(i)return r.stop=!0,e;r.optionalChainMember=n=!0,this.next()}if(this.match(47)||this.match(51)){let o,l=this.tsTryParseAndCatch(()=>{if(!i&&this.atPossibleAsyncArrow(e)){let d=this.tsTryParseGenericAsyncArrowFunction(s);if(d)return r.stop=!0,d}let c=this.tsParseTypeArgumentsInExpression();if(!c)return;if(n&&!this.match(10)){o=this.state.curPosition();return}if(_e(this.state.type)){let d=super.parseTaggedTemplateExpression(e,s,r);return d.typeParameters=c,d}if(!i&&this.eat(10)){let d=this.startNodeAt(s);return d.callee=e,d.arguments=this.parseCallExpressionArguments(),this.tsCheckForInvalidTypeCasts(d.arguments),d.typeParameters=c,r.optionalChainMember&&(d.optional=n),this.finishCallExpression(d,r.optionalChainMember)}let h=this.state.type;if(h===48||h===52||h!==10&&h!==93&&h!==120&&Se(h)&&!this.hasPrecedingLineBreak())return;let f=this.startNodeAt(s);return f.expression=e,f.typeParameters=c,this.finishNode(f,"TSInstantiationExpression")});if(o&&this.unexpected(o,10),l)return l.type==="TSInstantiationExpression"&&((this.match(16)||this.match(18)&&this.lookaheadCharCode()!==40)&&this.raise(P.InvalidPropertyAccessAfterInstantiationExpression,this.state.startLoc),!this.match(16)&&!this.match(18)&&(l.expression=super.stopParseSubscript(e,r))),l}return super.parseSubscript(e,s,i,r)}parseNewCallee(e){var s;super.parseNewCallee(e);let{callee:i}=e;i.type==="TSInstantiationExpression"&&!((s=i.extra)!=null&&s.parenthesized)&&(e.typeParameters=i.typeParameters,e.callee=i.expression)}parseExprOp(e,s,i){let r;if(je(58)>i&&!this.hasPrecedingLineBreak()&&(this.isContextual(93)||(r=this.isContextual(120)))){let n=this.startNodeAt(s);return n.expression=e,n.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?(r&&this.raise(p.UnexpectedKeyword,this.state.startLoc,{keyword:"const"}),this.tsParseTypeReference()):this.tsParseType())),this.finishNode(n,r?"TSSatisfiesExpression":"TSAsExpression"),this.reScan_lt_gt(),this.parseExprOp(n,s,i)}return super.parseExprOp(e,s,i)}checkReservedWord(e,s,i,r){this.state.isAmbientContext||super.checkReservedWord(e,s,i,r)}checkImportReflection(e){super.checkImportReflection(e),e.module&&e.importKind!=="value"&&this.raise(P.ImportReflectionHasImportType,e.specifiers[0].loc.start)}checkDuplicateExports(){}isPotentialImportPhase(e){if(super.isPotentialImportPhase(e))return!0;if(this.isContextual(130)){let s=this.lookaheadCharCode();return e?s===123||s===42:s!==61}return!e&&this.isContextual(87)}applyImportPhase(e,s,i,r){super.applyImportPhase(e,s,i,r),s?e.exportKind=i==="type"?"type":"value":e.importKind=i==="type"||i==="typeof"?i:"value"}parseImport(e){if(this.match(134))return e.importKind="value",super.parseImport(e);let s;if(O(this.state.type)&&this.lookaheadCharCode()===61)return e.importKind="value",this.tsParseImportEqualsDeclaration(e);if(this.isContextual(130)){let i=this.parseMaybeImportPhase(e,!1);if(this.lookaheadCharCode()===61)return this.tsParseImportEqualsDeclaration(e,i);s=super.parseImportSpecifiersAndAfter(e,i)}else s=super.parseImport(e);return s.importKind==="type"&&s.specifiers.length>1&&s.specifiers[0].type==="ImportDefaultSpecifier"&&this.raise(P.TypeImportCannotSpecifyDefaultAndNamed,s),s}parseExport(e,s){if(this.match(83)){let i=e;this.next();let r=null;return this.isContextual(130)&&this.isPotentialImportPhase(!1)?r=this.parseMaybeImportPhase(i,!1):i.importKind="value",this.tsParseImportEqualsDeclaration(i,r,!0)}else if(this.eat(29)){let i=e;return i.expression=super.parseExpression(),this.semicolon(),this.sawUnambiguousESM=!0,this.finishNode(i,"TSExportAssignment")}else if(this.eatContextual(93)){let i=e;return this.expectContextual(128),i.id=this.parseIdentifier(),this.semicolon(),this.finishNode(i,"TSNamespaceExportDeclaration")}else return super.parseExport(e,s)}isAbstractClass(){return this.isContextual(124)&&this.isLookaheadContextual("class")}parseExportDefaultExpression(){if(this.isAbstractClass()){let e=this.startNode();return this.next(),e.abstract=!0,this.parseClass(e,!0,!0)}if(this.match(129)){let e=this.tsParseInterfaceDeclaration(this.startNode());if(e)return e}return super.parseExportDefaultExpression()}parseVarStatement(e,s,i=!1){let{isAmbientContext:r}=this.state,n=super.parseVarStatement(e,s,i||r);if(!r)return n;if(!e.declare&&(s==="using"||s==="await using"))return this.raiseOverwrite(P.UsingDeclarationInAmbientContext,e,s),n;for(let{id:o,init:l}of n.declarations)l&&(s==="var"||s==="let"||o.typeAnnotation?this.raise(P.InitializerNotAllowedInAmbientContext,l):sa(l,this.hasPlugin("estree"))||this.raise(P.ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference,l));return n}parseStatementContent(e,s){if(!this.state.containsEsc)switch(this.state.type){case 75:{if(this.isLookaheadContextual("enum")){let i=this.startNode();return this.expect(75),this.tsParseEnumDeclaration(i,{const:!0})}break}case 124:case 125:{if(this.nextTokenIsIdentifierAndNotTSRelationalOperatorOnSameLine()){let i=this.state.type,r=this.startNode();this.next();let n=i===125?this.tsTryParseDeclare(r):this.tsParseAbstractDeclaration(r,s);return n?(i===125&&(n.declare=!0),n):(r.expression=this.createIdentifier(this.startNodeAt(r.loc.start),i===125?"declare":"abstract"),this.semicolon(!1),this.finishNode(r,"ExpressionStatement"))}break}case 126:return this.tsParseEnumDeclaration(this.startNode());case 112:{if(this.lookaheadCharCode()===123){let r=this.startNode();return this.tsParseAmbientExternalModuleDeclaration(r)}break}case 129:{let i=this.tsParseInterfaceDeclaration(this.startNode());if(i)return i;break}case 127:{if(this.nextTokenIsIdentifierOrStringLiteralOnSameLine()){let i=this.startNode();return this.next(),this.tsParseDeclaration(i,127,!1,s)}break}case 128:{if(this.nextTokenIsIdentifierOnSameLine()){let i=this.startNode();return this.next(),this.tsParseDeclaration(i,128,!1,s)}break}case 130:{if(this.nextTokenIsIdentifierOnSameLine()){let i=this.startNode();return this.next(),this.tsParseTypeAliasDeclaration(i)}break}}return super.parseStatementContent(e,s)}parseAccessModifier(){return this.tsParseModifier(["public","protected","private"])}tsHasSomeModifiers(e,s){return s.some(i=>Ws(i)?e.accessibility===i:!!e[i])}tsIsStartOfStaticBlocks(){return this.isContextual(106)&&this.lookaheadCharCode()===123}parseClassMember(e,s,i){let r=["declare","private","public","protected","override","abstract","readonly","static"];this.tsParseModifiers({allowedModifiers:r,disallowedModifiers:["in","out"],stopOnStartOfClassStaticBlock:!0,errorTemplate:P.InvalidModifierOnTypeParameterPositions},s);let n=u(()=>{this.tsIsStartOfStaticBlocks()?(this.next(),this.next(),this.tsHasSomeModifiers(s,r)&&this.raise(P.StaticBlockCannotHaveModifier,this.state.curPosition()),super.parseClassStaticBlock(e,s)):this.parseClassMemberWithIsStatic(e,s,i,!!s.static)},"callParseClassMemberWithIsStatic");s.declare?this.tsInAmbientContext(n):n()}parseClassMemberWithIsStatic(e,s,i,r){let n=this.tsTryParseIndexSignature(s);if(n){e.body.push(n),s.abstract&&this.raise(P.IndexSignatureHasAbstract,s),s.accessibility&&this.raise(P.IndexSignatureHasAccessibility,s,{modifier:s.accessibility}),s.declare&&this.raise(P.IndexSignatureHasDeclare,s),s.override&&this.raise(P.IndexSignatureHasOverride,s);return}!this.state.inAbstractClass&&s.abstract&&this.raise(P.NonAbstractClassHasAbstractMethod,s),s.override&&(i.hadSuperClass||this.raise(P.OverrideNotInSubClass,s)),super.parseClassMemberWithIsStatic(e,s,i,r)}parsePostMemberNameModifiers(e){this.eat(17)&&(e.optional=!0),e.readonly&&this.match(10)&&this.raise(P.ClassMethodHasReadonly,e),e.declare&&this.match(10)&&this.raise(P.ClassMethodHasDeclare,e)}shouldParseExportDeclaration(){return this.tsIsDeclarationStart()?!0:super.shouldParseExportDeclaration()}parseConditional(e,s,i){if(!this.match(17))return e;if(this.state.maybeInArrowParameters){let r=this.lookaheadCharCode();if(r===44||r===61||r===58||r===41)return this.setOptionalParametersError(i),e}return super.parseConditional(e,s,i)}parseParenItem(e,s){let i=super.parseParenItem(e,s);if(this.eat(17)&&(i.optional=!0,this.resetEndLocation(e)),this.match(14)){let r=this.startNodeAt(s);return r.expression=e,r.typeAnnotation=this.tsParseTypeAnnotation(),this.finishNode(r,"TSTypeCastExpression")}return e}parseExportDeclaration(e){if(!this.state.isAmbientContext&&this.isContextual(125))return this.tsInAmbientContext(()=>this.parseExportDeclaration(e));let s=this.state.startLoc,i=this.eatContextual(125);if(i&&(this.isContextual(125)||!this.shouldParseExportDeclaration()))throw this.raise(P.ExpectedAmbientAfterExportDeclare,this.state.startLoc);let n=O(this.state.type)&&this.tsTryParseExportDeclaration()||super.parseExportDeclaration(e);return n?((n.type==="TSInterfaceDeclaration"||n.type==="TSTypeAliasDeclaration"||i)&&(e.exportKind="type"),i&&n.type!=="TSImportEqualsDeclaration"&&(this.resetStartLocation(n,s),n.declare=!0),n):null}parseClassId(e,s,i,r){if((!s||i)&&this.isContextual(113))return;super.parseClassId(e,s,i,e.declare?1024:8331);let n=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers);n&&(e.typeParameters=n)}parseClassPropertyAnnotation(e){e.optional||(this.eat(35)?e.definite=!0:this.eat(17)&&(e.optional=!0));let s=this.tsTryParseTypeAnnotation();s&&(e.typeAnnotation=s)}parseClassProperty(e){if(this.parseClassPropertyAnnotation(e),this.state.isAmbientContext&&!(e.readonly&&!e.typeAnnotation)&&this.match(29)&&this.raise(P.DeclareClassFieldHasInitializer,this.state.startLoc),e.abstract&&this.match(29)){let{key:s}=e;this.raise(P.AbstractPropertyHasInitializer,this.state.startLoc,{propertyName:s.type==="Identifier"&&!e.computed?s.name:`[${this.input.slice(this.offsetToSourcePos(s.start),this.offsetToSourcePos(s.end))}]`})}return super.parseClassProperty(e)}parseClassPrivateProperty(e){return e.abstract&&this.raise(P.PrivateElementHasAbstract,e),e.accessibility&&this.raise(P.PrivateElementHasAccessibility,e,{modifier:e.accessibility}),this.parseClassPropertyAnnotation(e),super.parseClassPrivateProperty(e)}parseClassAccessorProperty(e){return this.parseClassPropertyAnnotation(e),e.optional&&this.raise(P.AccessorCannotBeOptional,e),super.parseClassAccessorProperty(e)}pushClassMethod(e,s,i,r,n,o){let l=this.tsTryParseTypeParameters(this.tsParseConstModifier);l&&n&&this.raise(P.ConstructorHasTypeParameters,l);let{declare:c=!1,kind:h}=s;c&&(h==="get"||h==="set")&&this.raise(P.DeclareAccessor,s,{kind:h}),l&&(s.typeParameters=l),super.pushClassMethod(e,s,i,r,n,o)}pushClassPrivateMethod(e,s,i,r){let n=this.tsTryParseTypeParameters(this.tsParseConstModifier);n&&(s.typeParameters=n),super.pushClassPrivateMethod(e,s,i,r)}declareClassPrivateMethodInScope(e,s){e.type!=="TSDeclareMethod"&&(e.type==="MethodDefinition"&&e.value.body==null||super.declareClassPrivateMethodInScope(e,s))}parseClassSuper(e){if(super.parseClassSuper(e),e.superClass)if(e.superClass.type==="TSInstantiationExpression"){let s=e.superClass,i=s.expression;this.takeSurroundingComments(i,i.start,i.end);let r=s.typeParameters;this.takeSurroundingComments(r,r.start,r.end),e.superClass=i,e.superTypeParameters=r}else(this.match(47)||this.match(51))&&(e.superTypeParameters=this.tsParseTypeArgumentsInExpression());this.eatContextual(113)&&(e.implements=this.tsParseHeritageClause("implements"))}parseObjPropValue(e,s,i,r,n,o,l){let c=this.tsTryParseTypeParameters(this.tsParseConstModifier);return c&&(e.typeParameters=c),super.parseObjPropValue(e,s,i,r,n,o,l)}parseFunctionParams(e,s){let i=this.tsTryParseTypeParameters(this.tsParseConstModifier);i&&(e.typeParameters=i),super.parseFunctionParams(e,s)}parseVarId(e,s){super.parseVarId(e,s),e.id.type==="Identifier"&&!this.hasPrecedingLineBreak()&&this.eat(35)&&(e.definite=!0);let i=this.tsTryParseTypeAnnotation();i&&(e.id.typeAnnotation=i,this.resetEndLocation(e.id))}parseAsyncArrowFromCallExpression(e,s){return this.match(14)&&(e.returnType=this.tsParseTypeAnnotation()),super.parseAsyncArrowFromCallExpression(e,s)}parseMaybeAssign(e,s){var i,r,n,o,l;let c,h,f;if(this.hasPlugin("jsx")&&(this.match(143)||this.match(47))){if(c=this.state.clone(),h=this.tryParse(()=>super.parseMaybeAssign(e,s),c),!h.error)return h.node;let{context:g}=this.state,I=g[g.length-1];(I===D.j_oTag||I===D.j_expr)&&g.pop()}if(!((i=h)!=null&&i.error)&&!this.match(47))return super.parseMaybeAssign(e,s);(!c||c===this.state)&&(c=this.state.clone());let d,m=this.tryParse(g=>{var I,L;d=this.tsParseTypeParameters(this.tsParseConstModifier);let y=super.parseMaybeAssign(e,s);return(y.type!=="ArrowFunctionExpression"||(I=y.extra)!=null&&I.parenthesized)&&g(),((L=d)==null?void 0:L.params.length)!==0&&this.resetStartLocationFromNode(y,d),y.typeParameters=d,y},c);if(!m.error&&!m.aborted)return d&&this.reportReservedArrowTypeParam(d),m.node;if(!h&&(Js(!this.hasPlugin("jsx")),f=this.tryParse(()=>super.parseMaybeAssign(e,s),c),!f.error))return f.node;if((r=h)!=null&&r.node)return this.state=h.failState,h.node;if(m.node)return this.state=m.failState,d&&this.reportReservedArrowTypeParam(d),m.node;if((n=f)!=null&&n.node)return this.state=f.failState,f.node;throw((o=h)==null?void 0:o.error)||m.error||((l=f)==null?void 0:l.error)}reportReservedArrowTypeParam(e){var s;e.params.length===1&&!e.params[0].constraint&&!((s=e.extra)!=null&&s.trailingComma)&&this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(P.ReservedArrowTypeParam,e)}parseMaybeUnary(e,s){return!this.hasPlugin("jsx")&&this.match(47)?this.tsParseTypeAssertion():super.parseMaybeUnary(e,s)}parseArrow(e){if(this.match(14)){let s=this.tryParse(i=>{let r=this.tsParseTypeOrTypePredicateAnnotation(14);return(this.canInsertSemicolon()||!this.match(19))&&i(),r});if(s.aborted)return;s.thrown||(s.error&&(this.state=s.failState),e.returnType=s.node)}return super.parseArrow(e)}parseFunctionParamType(e){this.eat(17)&&(e.optional=!0);let s=this.tsTryParseTypeAnnotation();return s&&(e.typeAnnotation=s),this.resetEndLocation(e),e}isAssignable(e,s){switch(e.type){case"TSTypeCastExpression":return this.isAssignable(e.expression,s);case"TSParameterProperty":return!0;default:return super.isAssignable(e,s)}}toAssignable(e,s=!1){switch(e.type){case"ParenthesizedExpression":this.toAssignableParenthesizedExpression(e,s);break;case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":s?this.expressionScope.recordArrowParameterBindingError(P.UnexpectedTypeCastInParameter,e):this.raise(P.UnexpectedTypeCastInParameter,e),this.toAssignable(e.expression,s);break;case"AssignmentExpression":!s&&e.left.type==="TSTypeCastExpression"&&(e.left=this.typeCastToParameter(e.left));default:super.toAssignable(e,s)}}toAssignableParenthesizedExpression(e,s){switch(e.expression.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":case"ParenthesizedExpression":this.toAssignable(e.expression,s);break;default:super.toAssignable(e,s)}}checkToRestConversion(e,s){switch(e.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":this.checkToRestConversion(e.expression,!1);break;default:super.checkToRestConversion(e,s)}}isValidLVal(e,s,i,r){switch(e){case"TSTypeCastExpression":return!0;case"TSParameterProperty":return"parameter";case"TSNonNullExpression":return"expression";case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":return(r!==64||!i)&&["expression",!0];default:return super.isValidLVal(e,s,i,r)}}parseBindingAtom(){return this.state.type===78?this.parseIdentifier(!0):super.parseBindingAtom()}parseMaybeDecoratorArguments(e,s){if(this.match(47)||this.match(51)){let i=this.tsParseTypeArgumentsInExpression();if(this.match(10)){let r=super.parseMaybeDecoratorArguments(e,s);return r.typeParameters=i,r}this.unexpected(null,10)}return super.parseMaybeDecoratorArguments(e,s)}checkCommaAfterRest(e){return this.state.isAmbientContext&&this.match(12)&&this.lookaheadCharCode()===e?(this.next(),!1):super.checkCommaAfterRest(e)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(35)||this.match(14)||super.isClassProperty()}parseMaybeDefault(e,s){let i=super.parseMaybeDefault(e,s);return i.type==="AssignmentPattern"&&i.typeAnnotation&&i.right.start<i.typeAnnotation.start&&this.raise(P.TypeAnnotationAfterAssign,i.typeAnnotation),i}getTokenFromCode(e){if(this.state.inType){if(e===62){this.finishOp(48,1);return}if(e===60){this.finishOp(47,1);return}}super.getTokenFromCode(e)}reScan_lt_gt(){let{type:e}=this.state;e===47?(this.state.pos-=1,this.readToken_lt()):e===48&&(this.state.pos-=1,this.readToken_gt())}reScan_lt(){let{type:e}=this.state;return e===51?(this.state.pos-=2,this.finishOp(47,1),47):e}toAssignableListItem(e,s,i){let r=e[s];r.type==="TSTypeCastExpression"&&(e[s]=this.typeCastToParameter(r)),super.toAssignableListItem(e,s,i)}typeCastToParameter(e){return e.expression.typeAnnotation=e.typeAnnotation,this.resetEndLocation(e.expression,e.typeAnnotation.loc.end),e.expression}shouldParseArrow(e){return this.match(14)?e.every(s=>this.isAssignable(s,!0)):super.shouldParseArrow(e)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}canHaveLeadingDecorator(){return super.canHaveLeadingDecorator()||this.isAbstractClass()}jsxParseOpeningElementAfterName(e){if(this.match(47)||this.match(51)){let s=this.tsTryParseAndCatch(()=>this.tsParseTypeArgumentsInExpression());s&&(e.typeParameters=s)}return super.jsxParseOpeningElementAfterName(e)}getGetterSetterExpectedParamCount(e){let s=super.getGetterSetterExpectedParamCount(e),r=this.getObjectOrClassMethodParams(e)[0];return r&&this.isThisParam(r)?s+1:s}parseCatchClauseParam(){let e=super.parseCatchClauseParam(),s=this.tsTryParseTypeAnnotation();return s&&(e.typeAnnotation=s,this.resetEndLocation(e)),e}tsInAmbientContext(e){let{isAmbientContext:s,strict:i}=this.state;this.state.isAmbientContext=!0,this.state.strict=!1;try{return e()}finally{this.state.isAmbientContext=s,this.state.strict=i}}parseClass(e,s,i){let r=this.state.inAbstractClass;this.state.inAbstractClass=!!e.abstract;try{return super.parseClass(e,s,i)}finally{this.state.inAbstractClass=r}}tsParseAbstractDeclaration(e,s){if(this.match(80))return e.abstract=!0,this.maybeTakeDecorators(s,this.parseClass(e,!0,!1));if(this.isContextual(129))return this.hasFollowingLineBreak()?null:(e.abstract=!0,this.raise(P.NonClassMethodPropertyHasAbstractModifier,e),this.tsParseInterfaceDeclaration(e));throw this.unexpected(null,80)}parseMethod(e,s,i,r,n,o,l){let c=super.parseMethod(e,s,i,r,n,o,l);if((c.abstract||c.type==="TSAbstractMethodDefinition")&&(this.hasPlugin("estree")?c.value:c).body){let{key:d}=c;this.raise(P.AbstractMethodHasImplementation,c,{methodName:d.type==="Identifier"&&!c.computed?d.name:`[${this.input.slice(this.offsetToSourcePos(d.start),this.offsetToSourcePos(d.end))}]`})}return c}tsParseTypeParameterName(){return this.parseIdentifier().name}shouldParseAsAmbientContext(){return!!this.getPluginOption("typescript","dts")}parse(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),super.parse()}getExpression(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),super.getExpression()}parseExportSpecifier(e,s,i,r){return!s&&r?(this.parseTypeOnlyImportExportSpecifier(e,!1,i),this.finishNode(e,"ExportSpecifier")):(e.exportKind="value",super.parseExportSpecifier(e,s,i,r))}parseImportSpecifier(e,s,i,r,n){return!s&&r?(this.parseTypeOnlyImportExportSpecifier(e,!0,i),this.finishNode(e,"ImportSpecifier")):(e.importKind="value",super.parseImportSpecifier(e,s,i,r,i?4098:4096))}parseTypeOnlyImportExportSpecifier(e,s,i){let r=s?"imported":"local",n=s?"local":"exported",o=e[r],l,c=!1,h=!0,f=o.loc.start;if(this.isContextual(93)){let m=this.parseIdentifier();if(this.isContextual(93)){let g=this.parseIdentifier();H(this.state.type)?(c=!0,o=m,l=s?this.parseIdentifier():this.parseModuleExportName(),h=!1):(l=g,h=!1)}else H(this.state.type)?(h=!1,l=s?this.parseIdentifier():this.parseModuleExportName()):(c=!0,o=m)}else H(this.state.type)&&(c=!0,s?(o=this.parseIdentifier(!0),this.isContextual(93)||this.checkReservedWord(o.name,o.loc.start,!0,!0)):o=this.parseModuleExportName());c&&i&&this.raise(s?P.TypeModifierIsUsedInTypeImports:P.TypeModifierIsUsedInTypeExports,f),e[r]=o,e[n]=l;let d=s?"importKind":"exportKind";e[d]=c?"type":"value",h&&this.eatContextual(93)&&(e[n]=s?this.parseIdentifier():this.parseModuleExportName()),e[n]||(e[n]=this.cloneIdentifier(e[r])),s&&this.checkIdentifier(e[n],c?4098:4096)}fillOptionalPropertiesForTSESLint(e){var s,i,r,n,o,l,c,h,f,d,m,g,I,L,y,S,C,N,V,Pe,Rt,_t,Ut,Vt,zt,qt,Ht,Kt,Jt,Wt,Xt,Gt,Yt,Zt,Qt,es,ts,ss,is,rs,as,ns,os,ls,cs,hs,us,ps;switch(e.type){case"ExpressionStatement":(s=e.directive)!=null||(e.directive=void 0);return;case"RestElement":e.value=void 0;case"Identifier":case"ArrayPattern":case"AssignmentPattern":case"ObjectPattern":(i=e.decorators)!=null||(e.decorators=[]),(r=e.optional)!=null||(e.optional=!1),(n=e.typeAnnotation)!=null||(e.typeAnnotation=void 0);return;case"TSParameterProperty":(o=e.accessibility)!=null||(e.accessibility=void 0),(l=e.decorators)!=null||(e.decorators=[]),(c=e.override)!=null||(e.override=!1),(h=e.readonly)!=null||(e.readonly=!1),(f=e.static)!=null||(e.static=!1);return;case"TSEmptyBodyFunctionExpression":e.body=null;case"TSDeclareFunction":case"FunctionDeclaration":case"FunctionExpression":case"ClassMethod":case"ClassPrivateMethod":(d=e.declare)!=null||(e.declare=!1),(m=e.returnType)!=null||(e.returnType=void 0),(g=e.typeParameters)!=null||(e.typeParameters=void 0);return;case"Property":(I=e.optional)!=null||(e.optional=!1);return;case"TSMethodSignature":case"TSPropertySignature":(L=e.optional)!=null||(e.optional=!1);case"TSIndexSignature":(y=e.accessibility)!=null||(e.accessibility=void 0),(S=e.readonly)!=null||(e.readonly=!1),(C=e.static)!=null||(e.static=!1);return;case"TSAbstractPropertyDefinition":case"PropertyDefinition":case"TSAbstractAccessorProperty":case"AccessorProperty":(N=e.declare)!=null||(e.declare=!1),(V=e.definite)!=null||(e.definite=!1),(Pe=e.readonly)!=null||(e.readonly=!1),(Rt=e.typeAnnotation)!=null||(e.typeAnnotation=void 0);case"TSAbstractMethodDefinition":case"MethodDefinition":(_t=e.accessibility)!=null||(e.accessibility=void 0),(Ut=e.decorators)!=null||(e.decorators=[]),(Vt=e.override)!=null||(e.override=!1),(zt=e.optional)!=null||(e.optional=!1);return;case"ClassExpression":(qt=e.id)!=null||(e.id=null);case"ClassDeclaration":(Ht=e.abstract)!=null||(e.abstract=!1),(Kt=e.declare)!=null||(e.declare=!1),(Jt=e.decorators)!=null||(e.decorators=[]),(Wt=e.implements)!=null||(e.implements=[]),(Xt=e.superTypeArguments)!=null||(e.superTypeArguments=void 0),(Gt=e.typeParameters)!=null||(e.typeParameters=void 0);return;case"TSTypeAliasDeclaration":case"VariableDeclaration":(Yt=e.declare)!=null||(e.declare=!1);return;case"VariableDeclarator":(Zt=e.definite)!=null||(e.definite=!1);return;case"TSEnumDeclaration":(Qt=e.const)!=null||(e.const=!1),(es=e.declare)!=null||(e.declare=!1);return;case"TSEnumMember":(ts=e.computed)!=null||(e.computed=!1);return;case"TSImportType":(ss=e.qualifier)!=null||(e.qualifier=null),(is=e.options)!=null||(e.options=null);return;case"TSInterfaceDeclaration":(rs=e.declare)!=null||(e.declare=!1),(as=e.extends)!=null||(e.extends=[]);return;case"TSMappedType":(ns=e.optional)!=null||(e.optional=!1),(os=e.readonly)!=null||(e.readonly=void 0);return;case"TSModuleDeclaration":(ls=e.declare)!=null||(e.declare=!1),(cs=e.global)!=null||(e.global=e.kind==="global");return;case"TSTypeParameter":(hs=e.const)!=null||(e.const=!1),(us=e.in)!=null||(e.in=!1),(ps=e.out)!=null||(e.out=!1);return}}chStartsBindingIdentifierAndNotRelationalOperator(e,s){if(W(e)){if(et.lastIndex=s,et.test(this.input)){let i=this.codePointAtPos(et.lastIndex);if(!le(i)&&i!==92)return!1}return!0}else return e===92}nextTokenIsIdentifierAndNotTSRelationalOperatorOnSameLine(){let e=this.nextTokenInLineStart(),s=this.codePointAtPos(e);return this.chStartsBindingIdentifierAndNotRelationalOperator(s,e)}nextTokenIsIdentifierOrStringLiteralOnSameLine(){let e=this.nextTokenInLineStart(),s=this.codePointAtPos(e);return this.chStartsBindingIdentifier(s,e)||s===34||s===39}},"typescript");function ta(a){if(a.type!=="MemberExpression")return!1;let{computed:t,property:e}=a;return t&&e.type!=="StringLiteral"&&(e.type!=="TemplateLiteral"||e.expressions.length>0)?!1:ui(a.object)}u(ta,"isPossiblyLiteralEnum");function sa(a,t){var e;let{type:s}=a;if((e=a.extra)!=null&&e.parenthesized)return!1;if(t){if(s==="Literal"){let{value:i}=a;if(typeof i=="string"||typeof i=="boolean")return!0}}else if(s==="StringLiteral"||s==="BooleanLiteral")return!0;return!!(hi(a,t)||ia(a,t)||s==="TemplateLiteral"&&a.expressions.length===0||ta(a))}u(sa,"isValidAmbientConstInitializer");function hi(a,t){return t?a.type==="Literal"&&(typeof a.value=="number"||"bigint"in a):a.type==="NumericLiteral"||a.type==="BigIntLiteral"}u(hi,"isNumber");function ia(a,t){if(a.type==="UnaryExpression"){let{operator:e,argument:s}=a;if(e==="-"&&hi(s,t))return!0}return!1}u(ia,"isNegativeNumber");function ui(a){return a.type==="Identifier"?!0:a.type!=="MemberExpression"||a.computed?!1:ui(a.object)}u(ui,"isUncomputedMemberExpressionChain");var Xs=J`placeholders`({ClassNameIsRequired:"A class name is required.",UnexpectedSpace:"Unexpected space in placeholder."}),ra=u(a=>class extends a{static{u(this,"PlaceholdersParserMixin")}parsePlaceholder(e){if(this.match(133)){let s=this.startNode();return this.next(),this.assertNoSpace(),s.name=super.parseIdentifier(!0),this.assertNoSpace(),this.expect(133),this.finishPlaceholder(s,e)}}finishPlaceholder(e,s){let i=e;return(!i.expectedNode||!i.type)&&(i=this.finishNode(i,"Placeholder")),i.expectedNode=s,i}getTokenFromCode(e){e===37&&this.input.charCodeAt(this.state.pos+1)===37?this.finishOp(133,2):super.getTokenFromCode(e)}parseExprAtom(e){return this.parsePlaceholder("Expression")||super.parseExprAtom(e)}parseIdentifier(e){return this.parsePlaceholder("Identifier")||super.parseIdentifier(e)}checkReservedWord(e,s,i,r){e!==void 0&&super.checkReservedWord(e,s,i,r)}cloneIdentifier(e){let s=super.cloneIdentifier(e);return s.type==="Placeholder"&&(s.expectedNode=e.expectedNode),s}cloneStringLiteral(e){return e.type==="Placeholder"?this.cloneIdentifier(e):super.cloneStringLiteral(e)}parseBindingAtom(){return this.parsePlaceholder("Pattern")||super.parseBindingAtom()}isValidLVal(e,s,i,r){return e==="Placeholder"||super.isValidLVal(e,s,i,r)}toAssignable(e,s){e&&e.type==="Placeholder"&&e.expectedNode==="Expression"?e.expectedNode="Pattern":super.toAssignable(e,s)}chStartsBindingIdentifier(e,s){if(super.chStartsBindingIdentifier(e,s))return!0;let i=this.nextTokenStart();return this.input.charCodeAt(i)===37&&this.input.charCodeAt(i+1)===37}verifyBreakContinue(e,s){var i;((i=e.label)==null?void 0:i.type)!=="Placeholder"&&super.verifyBreakContinue(e,s)}parseExpressionStatement(e,s){var i;if(s.type!=="Placeholder"||(i=s.extra)!=null&&i.parenthesized)return super.parseExpressionStatement(e,s);if(this.match(14)){let n=e;return n.label=this.finishPlaceholder(s,"Identifier"),this.next(),n.body=super.parseStatementOrSloppyAnnexBFunctionDeclaration(),this.finishNode(n,"LabeledStatement")}this.semicolon();let r=e;return r.name=s.name,this.finishPlaceholder(r,"Statement")}parseBlock(e,s,i){return this.parsePlaceholder("BlockStatement")||super.parseBlock(e,s,i)}parseFunctionId(e){return this.parsePlaceholder("Identifier")||super.parseFunctionId(e)}parseClass(e,s,i){let r=s?"ClassDeclaration":"ClassExpression";this.next();let n=this.state.strict,o=this.parsePlaceholder("Identifier");if(o)if(this.match(81)||this.match(133)||this.match(5))e.id=o;else{if(i||!s)return e.id=null,e.body=this.finishPlaceholder(o,"ClassBody"),this.finishNode(e,r);throw this.raise(Xs.ClassNameIsRequired,this.state.startLoc)}else this.parseClassId(e,s,i);return super.parseClassSuper(e),e.body=this.parsePlaceholder("ClassBody")||super.parseClassBody(!!e.superClass,n),this.finishNode(e,r)}parseExport(e,s){let i=this.parsePlaceholder("Identifier");if(!i)return super.parseExport(e,s);let r=e;if(!this.isContextual(98)&&!this.match(12))return r.specifiers=[],r.source=null,r.declaration=this.finishPlaceholder(i,"Declaration"),this.finishNode(r,"ExportNamedDeclaration");this.expectPlugin("exportDefaultFrom");let n=this.startNode();return n.exported=i,r.specifiers=[this.finishNode(n,"ExportDefaultSpecifier")],super.parseExport(r,s)}isExportDefaultSpecifier(){if(this.match(65)){let e=this.nextTokenStart();if(this.isUnparsedContextual(e,"from")&&this.input.startsWith(se(133),this.nextTokenStartSince(e+4)))return!0}return super.isExportDefaultSpecifier()}maybeParseExportDefaultSpecifier(e,s){var i;return(i=e.specifiers)!=null&&i.length?!0:super.maybeParseExportDefaultSpecifier(e,s)}checkExport(e){let{specifiers:s}=e;s!=null&&s.length&&(e.specifiers=s.filter(i=>i.exported.type==="Placeholder")),super.checkExport(e),e.specifiers=s}parseImport(e){let s=this.parsePlaceholder("Identifier");if(!s)return super.parseImport(e);if(e.specifiers=[],!this.isContextual(98)&&!this.match(12))return e.source=this.finishPlaceholder(s,"StringLiteral"),this.semicolon(),this.finishNode(e,"ImportDeclaration");let i=this.startNodeAtNode(s);return i.local=s,e.specifiers.push(this.finishNode(i,"ImportDefaultSpecifier")),this.eat(12)&&(this.maybeParseStarImportSpecifier(e)||this.parseNamedImportSpecifiers(e)),this.expectContextual(98),e.source=this.parseImportSource(),this.semicolon(),this.finishNode(e,"ImportDeclaration")}parseImportSource(){return this.parsePlaceholder("StringLiteral")||super.parseImportSource()}assertNoSpace(){this.state.start>this.offsetToSourcePos(this.state.lastTokEndLoc.index)&&this.raise(Xs.UnexpectedSpace,this.state.lastTokEndLoc)}},"placeholders"),aa=u(a=>class extends a{static{u(this,"V8IntrinsicMixin")}parseV8Intrinsic(){if(this.match(54)){let e=this.state.startLoc,s=this.startNode();if(this.next(),O(this.state.type)){let i=this.parseIdentifierName(),r=this.createIdentifier(s,i);if(this.castNodeTo(r,"V8IntrinsicIdentifier"),this.match(10))return r}this.unexpected(e)}}parseExprAtom(e){return this.parseV8Intrinsic()||super.parseExprAtom(e)}},"v8intrinsic"),Gs=["minimal","fsharp","hack","smart"],Ys=["^^","@@","^","%","#"];function na(a){if(a.has("decorators")){if(a.has("decorators-legacy"))throw new Error("Cannot use the decorators and decorators-legacy plugin together");let s=a.get("decorators").decoratorsBeforeExport;if(s!=null&&typeof s!="boolean")throw new Error("'decoratorsBeforeExport' must be a boolean, if specified.");let i=a.get("decorators").allowCallParenthesized;if(i!=null&&typeof i!="boolean")throw new Error("'allowCallParenthesized' must be a boolean.")}if(a.has("flow")&&a.has("typescript"))throw new Error("Cannot combine flow and typescript plugins.");if(a.has("placeholders")&&a.has("v8intrinsic"))throw new Error("Cannot combine placeholders and v8intrinsic plugins.");if(a.has("pipelineOperator")){var t;let s=a.get("pipelineOperator").proposal;if(!Gs.includes(s)){let i=Gs.map(r=>`"${r}"`).join(", ");throw new Error(`"pipelineOperator" requires "proposal" option whose value must be one of: ${i}.`)}if(s==="hack"){var e;if(a.has("placeholders"))throw new Error("Cannot combine placeholders plugin and Hack-style pipes.");if(a.has("v8intrinsic"))throw new Error("Cannot combine v8intrinsic plugin and Hack-style pipes.");let i=a.get("pipelineOperator").topicToken;if(!Ys.includes(i)){let r=Ys.map(n=>`"${n}"`).join(", ");throw new Error(`"pipelineOperator" in "proposal": "hack" mode also requires a "topicToken" option whose value must be one of: ${r}.`)}if(i==="#"&&((e=a.get("recordAndTuple"))==null?void 0:e.syntaxType)==="hash")throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "hack", topicToken: "#" }]\` and \`${JSON.stringify(["recordAndTuple",a.get("recordAndTuple")])}\`.`)}else if(s==="smart"&&((t=a.get("recordAndTuple"))==null?void 0:t.syntaxType)==="hash")throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "smart" }]\` and \`${JSON.stringify(["recordAndTuple",a.get("recordAndTuple")])}\`.`)}if(a.has("moduleAttributes")){if(a.has("deprecatedImportAssert")||a.has("importAssertions"))throw new Error("Cannot combine importAssertions, deprecatedImportAssert and moduleAttributes plugins.");if(a.get("moduleAttributes").version!=="may-2020")throw new Error("The 'moduleAttributes' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is 'may-2020'.")}if(a.has("importAssertions")&&a.has("deprecatedImportAssert"))throw new Error("Cannot combine importAssertions and deprecatedImportAssert plugins.");if(a.has("deprecatedImportAssert")||a.has("importAttributes")&&a.get("importAttributes").deprecatedAssertSyntax&&a.set("deprecatedImportAssert",{}),a.has("recordAndTuple")){let s=a.get("recordAndTuple").syntaxType;if(s!=null){let i=["hash","bar"];if(!i.includes(s))throw new Error("The 'syntaxType' option of the 'recordAndTuple' plugin must be one of: "+i.map(r=>`'${r}'`).join(", "))}}if(a.has("asyncDoExpressions")&&!a.has("doExpressions")){let s=new Error("'asyncDoExpressions' requires 'doExpressions', please add 'doExpressions' to parser plugins.");throw s.missingPlugins="doExpressions",s}if(a.has("optionalChainingAssign")&&a.get("optionalChainingAssign").version!=="2023-07")throw new Error("The 'optionalChainingAssign' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is '2023-07'.");if(a.has("discardBinding")&&a.get("discardBinding").syntaxType!=="void")throw new Error("The 'discardBinding' plugin requires a 'syntaxType' option. Currently the only supported value is 'void'.")}u(na,"validatePlugins");var pi={estree:hr,jsx:Vr,flow:$r,typescript:ea,v8intrinsic:aa,placeholders:ra},oa=Object.keys(pi),At=class extends Tt{static{u(this,"ExpressionParser")}checkProto(t,e,s,i){if(t.type==="SpreadElement"||this.isObjectMethod(t)||t.computed||t.shorthand)return s;let r=t.key;return(r.type==="Identifier"?r.name:r.value)==="__proto__"?e?(this.raise(p.RecordNoProto,r),!0):(s&&(i?i.doubleProtoLoc===null&&(i.doubleProtoLoc=r.loc.start):this.raise(p.DuplicateProto,r)),!0):s}shouldExitDescending(t,e){return t.type==="ArrowFunctionExpression"&&this.offsetToSourcePos(t.start)===e}getExpression(){if(this.enterInitialScopes(),this.nextToken(),this.match(140))throw this.raise(p.ParseExpressionEmptyInput,this.state.startLoc);let t=this.parseExpression();if(!this.match(140))throw this.raise(p.ParseExpressionExpectsEOF,this.state.startLoc,{unexpected:this.input.codePointAt(this.state.start)});return this.finalizeRemainingComments(),t.comments=this.comments,t.errors=this.state.errors,this.optionFlags&256&&(t.tokens=this.tokens),t}parseExpression(t,e){return t?this.disallowInAnd(()=>this.parseExpressionBase(e)):this.allowInAnd(()=>this.parseExpressionBase(e))}parseExpressionBase(t){let e=this.state.startLoc,s=this.parseMaybeAssign(t);if(this.match(12)){let i=this.startNodeAt(e);for(i.expressions=[s];this.eat(12);)i.expressions.push(this.parseMaybeAssign(t));return this.toReferencedList(i.expressions),this.finishNode(i,"SequenceExpression")}return s}parseMaybeAssignDisallowIn(t,e){return this.disallowInAnd(()=>this.parseMaybeAssign(t,e))}parseMaybeAssignAllowIn(t,e){return this.allowInAnd(()=>this.parseMaybeAssign(t,e))}setOptionalParametersError(t){t.optionalParametersLoc=this.state.startLoc}parseMaybeAssign(t,e){let s=this.state.startLoc,i=this.isContextual(108);if(i&&this.prodParam.hasYield){this.next();let l=this.parseYield(s);return e&&(l=e.call(this,l,s)),l}let r;t?r=!1:(t=new me,r=!0);let{type:n}=this.state;(n===10||O(n))&&(this.state.potentialArrowAt=this.state.start);let o=this.parseMaybeConditional(t);if(e&&(o=e.call(this,o,s)),mr(this.state.type)){let l=this.startNodeAt(s),c=this.state.value;if(l.operator=c,this.match(29)){this.toAssignable(o,!0),l.left=o;let h=s.index;t.doubleProtoLoc!=null&&t.doubleProtoLoc.index>=h&&(t.doubleProtoLoc=null),t.shorthandAssignLoc!=null&&t.shorthandAssignLoc.index>=h&&(t.shorthandAssignLoc=null),t.privateKeyLoc!=null&&t.privateKeyLoc.index>=h&&(this.checkDestructuringPrivate(t),t.privateKeyLoc=null),t.voidPatternLoc!=null&&t.voidPatternLoc.index>=h&&(t.voidPatternLoc=null)}else l.left=o;return this.next(),l.right=this.parseMaybeAssign(),this.checkLVal(o,this.finishNode(l,"AssignmentExpression"),void 0,void 0,void 0,void 0,c==="||="||c==="&&="||c==="??="),l}else r&&this.checkExpressionErrors(t,!0);if(i){let{type:l}=this.state;if((this.hasPlugin("v8intrinsic")?Se(l):Se(l)&&!this.match(54))&&!this.isAmbiguousPrefixOrIdentifier())return this.raiseOverwrite(p.YieldNotInGeneratorFunction,s),this.parseYield(s)}return o}parseMaybeConditional(t){let e=this.state.startLoc,s=this.state.potentialArrowAt,i=this.parseExprOps(t);return this.shouldExitDescending(i,s)?i:this.parseConditional(i,e,t)}parseConditional(t,e,s){if(this.eat(17)){let i=this.startNodeAt(e);return i.test=t,i.consequent=this.parseMaybeAssignAllowIn(),this.expect(14),i.alternate=this.parseMaybeAssign(),this.finishNode(i,"ConditionalExpression")}return t}parseMaybeUnaryOrPrivate(t){return this.match(139)?this.parsePrivateName():this.parseMaybeUnary(t)}parseExprOps(t){let e=this.state.startLoc,s=this.state.potentialArrowAt,i=this.parseMaybeUnaryOrPrivate(t);return this.shouldExitDescending(i,s)?i:this.parseExprOp(i,e,-1)}parseExprOp(t,e,s){if(this.isPrivateName(t)){let r=this.getPrivateNameSV(t);(s>=je(58)||!this.prodParam.hasIn||!this.match(58))&&this.raise(p.PrivateInExpectedIn,t,{identifierName:r}),this.classScope.usePrivateName(r,t.loc.start)}let i=this.state.type;if(xr(i)&&(this.prodParam.hasIn||!this.match(58))){let r=je(i);if(r>s){if(i===39){if(this.expectPlugin("pipelineOperator"),this.state.inFSharpPipelineDirectBody)return t;this.checkPipelineAtInfixOperator(t,e)}let n=this.startNodeAt(e);n.left=t,n.operator=this.state.value;let o=i===41||i===42,l=i===40;if(l&&(r=je(42)),this.next(),i===39&&this.hasPlugin(["pipelineOperator",{proposal:"minimal"}])&&this.state.type===96&&this.prodParam.hasAwait)throw this.raise(p.UnexpectedAwaitAfterPipelineBody,this.state.startLoc);n.right=this.parseExprOpRightExpr(i,r);let c=this.finishNode(n,o||l?"LogicalExpression":"BinaryExpression"),h=this.state.type;if(l&&(h===41||h===42)||o&&h===40)throw this.raise(p.MixingCoalesceWithLogical,this.state.startLoc);return this.parseExprOp(c,e,s)}}return t}parseExprOpRightExpr(t,e){let s=this.state.startLoc;switch(t){case 39:switch(this.getPluginOption("pipelineOperator","proposal")){case"hack":return this.withTopicBindingContext(()=>this.parseHackPipeBody());case"fsharp":return this.withSoloAwaitPermittingContext(()=>this.parseFSharpPipelineBody(e))}if(this.getPluginOption("pipelineOperator","proposal")==="smart")return this.withTopicBindingContext(()=>{if(this.prodParam.hasYield&&this.isContextual(108))throw this.raise(p.PipeBodyIsTighter,this.state.startLoc);return this.parseSmartPipelineBodyInStyle(this.parseExprOpBaseRightExpr(t,e),s)});default:return this.parseExprOpBaseRightExpr(t,e)}}parseExprOpBaseRightExpr(t,e){let s=this.state.startLoc;return this.parseExprOp(this.parseMaybeUnaryOrPrivate(),s,Ar(t)?e-1:e)}parseHackPipeBody(){var t;let{startLoc:e}=this.state,s=this.parseMaybeAssign();return ir.has(s.type)&&!((t=s.extra)!=null&&t.parenthesized)&&this.raise(p.PipeUnparenthesizedBody,e,{type:s.type}),this.topicReferenceWasUsedInCurrentContext()||this.raise(p.PipeTopicUnused,e),s}checkExponentialAfterUnary(t){this.match(57)&&this.raise(p.UnexpectedTokenUnaryExponentiation,t.argument)}parseMaybeUnary(t,e){let s=this.state.startLoc,i=this.isContextual(96);if(i&&this.recordAwaitIfAllowed()){this.next();let l=this.parseAwait(s);return e||this.checkExponentialAfterUnary(l),l}let r=this.match(34),n=this.startNode();if(Pr(this.state.type)){n.operator=this.state.value,n.prefix=!0,this.match(72)&&this.expectPlugin("throwExpressions");let l=this.match(89);if(this.next(),n.argument=this.parseMaybeUnary(null,!0),this.checkExpressionErrors(t,!0),this.state.strict&&l){let c=n.argument;c.type==="Identifier"?this.raise(p.StrictDelete,n):this.hasPropertyAsPrivateName(c)&&this.raise(p.DeletePrivateField,n)}if(!r)return e||this.checkExponentialAfterUnary(n),this.finishNode(n,"UnaryExpression")}let o=this.parseUpdate(n,r,t);if(i){let{type:l}=this.state;if((this.hasPlugin("v8intrinsic")?Se(l):Se(l)&&!this.match(54))&&!this.isAmbiguousPrefixOrIdentifier())return this.raiseOverwrite(p.AwaitNotInAsyncContext,s),this.parseAwait(s)}return o}parseUpdate(t,e,s){if(e){let n=t;return this.checkLVal(n.argument,this.finishNode(n,"UpdateExpression")),t}let i=this.state.startLoc,r=this.parseExprSubscripts(s);if(this.checkExpressionErrors(s,!1))return r;for(;gr(this.state.type)&&!this.canInsertSemicolon();){let n=this.startNodeAt(i);n.operator=this.state.value,n.prefix=!1,n.argument=r,this.next(),this.checkLVal(r,r=this.finishNode(n,"UpdateExpression"))}return r}parseExprSubscripts(t){let e=this.state.startLoc,s=this.state.potentialArrowAt,i=this.parseExprAtom(t);return this.shouldExitDescending(i,s)?i:this.parseSubscripts(i,e)}parseSubscripts(t,e,s){let i={optionalChainMember:!1,maybeAsyncArrow:this.atPossibleAsyncArrow(t),stop:!1};do t=this.parseSubscript(t,e,s,i),i.maybeAsyncArrow=!1;while(!i.stop);return t}parseSubscript(t,e,s,i){let{type:r}=this.state;if(!s&&r===15)return this.parseBind(t,e,s,i);if(_e(r))return this.parseTaggedTemplateExpression(t,e,i);let n=!1;if(r===18){if(s&&(this.raise(p.OptionalChainingNoNew,this.state.startLoc),this.lookaheadCharCode()===40))return this.stopParseSubscript(t,i);i.optionalChainMember=n=!0,this.next()}if(!s&&this.match(10))return this.parseCoverCallAndAsyncArrowHead(t,e,i,n);{let o=this.eat(0);return o||n||this.eat(16)?this.parseMember(t,e,i,o,n):this.stopParseSubscript(t,i)}}stopParseSubscript(t,e){return e.stop=!0,t}parseMember(t,e,s,i,r){let n=this.startNodeAt(e);return n.object=t,n.computed=i,i?(n.property=this.parseExpression(),this.expect(3)):this.match(139)?(t.type==="Super"&&this.raise(p.SuperPrivateField,e),this.classScope.usePrivateName(this.state.value,this.state.startLoc),n.property=this.parsePrivateName()):n.property=this.parseIdentifier(!0),s.optionalChainMember?(n.optional=r,this.finishNode(n,"OptionalMemberExpression")):this.finishNode(n,"MemberExpression")}parseBind(t,e,s,i){let r=this.startNodeAt(e);return r.object=t,this.next(),r.callee=this.parseNoCallExpr(),i.stop=!0,this.parseSubscripts(this.finishNode(r,"BindExpression"),e,s)}parseCoverCallAndAsyncArrowHead(t,e,s,i){let r=this.state.maybeInArrowParameters,n=null;this.state.maybeInArrowParameters=!0,this.next();let o=this.startNodeAt(e);o.callee=t;let{maybeAsyncArrow:l,optionalChainMember:c}=s;l&&(this.expressionScope.enter(Gr()),n=new me),c&&(o.optional=i),i?o.arguments=this.parseCallExpressionArguments():o.arguments=this.parseCallExpressionArguments(t.type!=="Super",o,n);let h=this.finishCallExpression(o,c);return l&&this.shouldParseAsyncArrow()&&!i?(s.stop=!0,this.checkDestructuringPrivate(n),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),h=this.parseAsyncArrowFromCallExpression(this.startNodeAt(e),h)):(l&&(this.checkExpressionErrors(n,!0),this.expressionScope.exit()),this.toReferencedArguments(h)),this.state.maybeInArrowParameters=r,h}toReferencedArguments(t,e){this.toReferencedListDeep(t.arguments,e)}parseTaggedTemplateExpression(t,e,s){let i=this.startNodeAt(e);return i.tag=t,i.quasi=this.parseTemplate(!0),s.optionalChainMember&&this.raise(p.OptionalChainingNoTemplate,e),this.finishNode(i,"TaggedTemplateExpression")}atPossibleAsyncArrow(t){return t.type==="Identifier"&&t.name==="async"&&this.state.lastTokEndLoc.index===t.end&&!this.canInsertSemicolon()&&t.end-t.start===5&&this.offsetToSourcePos(t.start)===this.state.potentialArrowAt}finishCallExpression(t,e){if(t.callee.type==="Import")if(t.arguments.length===0||t.arguments.length>2)this.raise(p.ImportCallArity,t);else for(let s of t.arguments)s.type==="SpreadElement"&&this.raise(p.ImportCallSpreadArgument,s);return this.finishNode(t,e?"OptionalCallExpression":"CallExpression")}parseCallExpressionArguments(t,e,s){let i=[],r=!0,n=this.state.inFSharpPipelineDirectBody;for(this.state.inFSharpPipelineDirectBody=!1;!this.eat(11);){if(r)r=!1;else if(this.expect(12),this.match(11)){e&&this.addTrailingCommaExtraToNode(e),this.next();break}i.push(this.parseExprListItem(11,!1,s,t))}return this.state.inFSharpPipelineDirectBody=n,i}shouldParseAsyncArrow(){return this.match(19)&&!this.canInsertSemicolon()}parseAsyncArrowFromCallExpression(t,e){var s;return this.resetPreviousNodeTrailingComments(e),this.expect(19),this.parseArrowExpression(t,e.arguments,!0,(s=e.extra)==null?void 0:s.trailingCommaLoc),e.innerComments&&ve(t,e.innerComments),e.callee.trailingComments&&ve(t,e.callee.trailingComments),t}parseNoCallExpr(){let t=this.state.startLoc;return this.parseSubscripts(this.parseExprAtom(),t,!0)}parseExprAtom(t){let e,s=null,{type:i}=this.state;switch(i){case 79:return this.parseSuper();case 83:return e=this.startNode(),this.next(),this.match(16)?this.parseImportMetaPropertyOrPhaseCall(e):this.match(10)?this.optionFlags&512?this.parseImportCall(e):this.finishNode(e,"Import"):(this.raise(p.UnsupportedImport,this.state.lastTokStartLoc),this.finishNode(e,"Import"));case 78:return e=this.startNode(),this.next(),this.finishNode(e,"ThisExpression");case 90:return this.parseDo(this.startNode(),!1);case 56:case 31:return this.readRegexp(),this.parseRegExpLiteral(this.state.value);case 135:return this.parseNumericLiteral(this.state.value);case 136:return this.parseBigIntLiteral(this.state.value);case 134:return this.parseStringLiteral(this.state.value);case 84:return this.parseNullLiteral();case 85:return this.parseBooleanLiteral(!0);case 86:return this.parseBooleanLiteral(!1);case 10:{let r=this.state.potentialArrowAt===this.state.start;return this.parseParenAndDistinguishExpression(r)}case 0:return this.parseArrayLike(3,!1,t);case 5:return this.parseObjectLike(8,!1,!1,t);case 68:return this.parseFunctionOrFunctionSent();case 26:s=this.parseDecorators();case 80:return this.parseClass(this.maybeTakeDecorators(s,this.startNode()),!1);case 77:return this.parseNewOrNewTarget();case 25:case 24:return this.parseTemplate(!1);case 15:{e=this.startNode(),this.next(),e.object=null;let r=e.callee=this.parseNoCallExpr();if(r.type==="MemberExpression")return this.finishNode(e,"BindExpression");throw this.raise(p.UnsupportedBind,r)}case 139:return this.raise(p.PrivateInExpectedIn,this.state.startLoc,{identifierName:this.state.value}),this.parsePrivateName();case 33:return this.parseTopicReferenceThenEqualsSign(54,"%");case 32:return this.parseTopicReferenceThenEqualsSign(44,"^");case 37:case 38:return this.parseTopicReference("hack");case 44:case 54:case 27:{let r=this.getPluginOption("pipelineOperator","proposal");if(r)return this.parseTopicReference(r);throw this.unexpected()}case 47:{let r=this.input.codePointAt(this.nextTokenStart());throw W(r)||r===62?this.expectOnePlugin(["jsx","flow","typescript"]):this.unexpected()}default:if(i===137)return this.parseDecimalLiteral(this.state.value);if(i===2||i===1)return this.parseArrayLike(this.state.type===2?4:3,!0);if(i===6||i===7)return this.parseObjectLike(this.state.type===6?9:8,!1,!0);if(O(i)){if(this.isContextual(127)&&this.lookaheadInLineCharCode()===123)return this.parseModuleExpression();let r=this.state.potentialArrowAt===this.state.start,n=this.state.containsEsc,o=this.parseIdentifier();if(!n&&o.name==="async"&&!this.canInsertSemicolon()){let{type:l}=this.state;if(l===68)return this.resetPreviousNodeTrailingComments(o),this.next(),this.parseAsyncFunctionExpression(this.startNodeAtNode(o));if(O(l))return r&&this.lookaheadCharCode()===61?this.parseAsyncArrowUnaryFunction(this.startNodeAtNode(o)):o;if(l===90)return this.resetPreviousNodeTrailingComments(o),this.parseDo(this.startNodeAtNode(o),!0)}return r&&this.match(19)&&!this.canInsertSemicolon()?(this.next(),this.parseArrowExpression(this.startNodeAtNode(o),[o],!1)):o}else throw this.unexpected()}}parseTopicReferenceThenEqualsSign(t,e){let s=this.getPluginOption("pipelineOperator","proposal");if(s)return this.state.type=t,this.state.value=e,this.state.pos--,this.state.end--,this.state.endLoc=_(this.state.endLoc,-1),this.parseTopicReference(s);throw this.unexpected()}parseTopicReference(t){let e=this.startNode(),s=this.state.startLoc,i=this.state.type;return this.next(),this.finishTopicReference(e,s,t,i)}finishTopicReference(t,e,s,i){if(this.testTopicReferenceConfiguration(s,e,i))return s==="hack"?(this.topicReferenceIsAllowedInCurrentContext()||this.raise(p.PipeTopicUnbound,e),this.registerTopicReference(),this.finishNode(t,"TopicReference")):(this.topicReferenceIsAllowedInCurrentContext()||this.raise(p.PrimaryTopicNotAllowed,e),this.registerTopicReference(),this.finishNode(t,"PipelinePrimaryTopicReference"));throw this.raise(p.PipeTopicUnconfiguredToken,e,{token:se(i)})}testTopicReferenceConfiguration(t,e,s){switch(t){case"hack":return this.hasPlugin(["pipelineOperator",{topicToken:se(s)}]);case"smart":return s===27;default:throw this.raise(p.PipeTopicRequiresHackPipes,e)}}parseAsyncArrowUnaryFunction(t){this.prodParam.enter($e(!0,this.prodParam.hasYield));let e=[this.parseIdentifier()];return this.prodParam.exit(),this.hasPrecedingLineBreak()&&this.raise(p.LineTerminatorBeforeArrow,this.state.curPosition()),this.expect(19),this.parseArrowExpression(t,e,!0)}parseDo(t,e){this.expectPlugin("doExpressions"),e&&this.expectPlugin("asyncDoExpressions"),t.async=e,this.next();let s=this.state.labels;return this.state.labels=[],e?(this.prodParam.enter(2),t.body=this.parseBlock(),this.prodParam.exit()):t.body=this.parseBlock(),this.state.labels=s,this.finishNode(t,"DoExpression")}parseSuper(){let t=this.startNode();return this.next(),this.match(10)&&!this.scope.allowDirectSuper?this.optionFlags&16||this.raise(p.SuperNotAllowed,t):this.scope.allowSuper||this.optionFlags&16||this.raise(p.UnexpectedSuper,t),!this.match(10)&&!this.match(0)&&!this.match(16)&&this.raise(p.UnsupportedSuper,t),this.finishNode(t,"Super")}parsePrivateName(){let t=this.startNode(),e=this.startNodeAt(_(this.state.startLoc,1)),s=this.state.value;return this.next(),t.id=this.createIdentifier(e,s),this.finishNode(t,"PrivateName")}parseFunctionOrFunctionSent(){let t=this.startNode();if(this.next(),this.prodParam.hasYield&&this.match(16)){let e=this.createIdentifier(this.startNodeAtNode(t),"function");return this.next(),this.match(103)?this.expectPlugin("functionSent"):this.hasPlugin("functionSent")||this.unexpected(),this.parseMetaProperty(t,e,"sent")}return this.parseFunction(t)}parseMetaProperty(t,e,s){t.meta=e;let i=this.state.containsEsc;return t.property=this.parseIdentifier(!0),(t.property.name!==s||i)&&this.raise(p.UnsupportedMetaProperty,t.property,{target:e.name,onlyValidPropertyName:s}),this.finishNode(t,"MetaProperty")}parseImportMetaPropertyOrPhaseCall(t){if(this.next(),this.isContextual(105)||this.isContextual(97)){let e=this.isContextual(105);return this.expectPlugin(e?"sourcePhaseImports":"deferredImportEvaluation"),this.next(),t.phase=e?"source":"defer",this.parseImportCall(t)}else{let e=this.createIdentifierAt(this.startNodeAtNode(t),"import",this.state.lastTokStartLoc);return this.isContextual(101)&&(this.inModule||this.raise(p.ImportMetaOutsideModule,e),this.sawUnambiguousESM=!0),this.parseMetaProperty(t,e,"meta")}}parseLiteralAtNode(t,e,s){return this.addExtra(s,"rawValue",t),this.addExtra(s,"raw",this.input.slice(this.offsetToSourcePos(s.start),this.state.end)),s.value=t,this.next(),this.finishNode(s,e)}parseLiteral(t,e){let s=this.startNode();return this.parseLiteralAtNode(t,e,s)}parseStringLiteral(t){return this.parseLiteral(t,"StringLiteral")}parseNumericLiteral(t){return this.parseLiteral(t,"NumericLiteral")}parseBigIntLiteral(t){return this.parseLiteral(t,"BigIntLiteral")}parseDecimalLiteral(t){return this.parseLiteral(t,"DecimalLiteral")}parseRegExpLiteral(t){let e=this.startNode();return this.addExtra(e,"raw",this.input.slice(this.offsetToSourcePos(e.start),this.state.end)),e.pattern=t.pattern,e.flags=t.flags,this.next(),this.finishNode(e,"RegExpLiteral")}parseBooleanLiteral(t){let e=this.startNode();return e.value=t,this.next(),this.finishNode(e,"BooleanLiteral")}parseNullLiteral(){let t=this.startNode();return this.next(),this.finishNode(t,"NullLiteral")}parseParenAndDistinguishExpression(t){let e=this.state.startLoc,s;this.next(),this.expressionScope.enter(Xr());let i=this.state.maybeInArrowParameters,r=this.state.inFSharpPipelineDirectBody;this.state.maybeInArrowParameters=!0,this.state.inFSharpPipelineDirectBody=!1;let n=this.state.startLoc,o=[],l=new me,c=!0,h,f;for(;!this.match(11);){if(c)c=!1;else if(this.expect(12,l.optionalParametersLoc===null?null:l.optionalParametersLoc),this.match(11)){f=this.state.startLoc;break}if(this.match(21)){let g=this.state.startLoc;if(h=this.state.startLoc,o.push(this.parseParenItem(this.parseRestBinding(),g)),!this.checkCommaAfterRest(41))break}else o.push(this.parseMaybeAssignAllowInOrVoidPattern(11,l,this.parseParenItem))}let d=this.state.lastTokEndLoc;this.expect(11),this.state.maybeInArrowParameters=i,this.state.inFSharpPipelineDirectBody=r;let m=this.startNodeAt(e);return t&&this.shouldParseArrow(o)&&(m=this.parseArrow(m))?(this.checkDestructuringPrivate(l),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),this.parseArrowExpression(m,o,!1),m):(this.expressionScope.exit(),o.length||this.unexpected(this.state.lastTokStartLoc),f&&this.unexpected(f),h&&this.unexpected(h),this.checkExpressionErrors(l,!0),this.toReferencedListDeep(o,!0),o.length>1?(s=this.startNodeAt(n),s.expressions=o,this.finishNode(s,"SequenceExpression"),this.resetEndLocation(s,d)):s=o[0],this.wrapParenthesis(e,s))}wrapParenthesis(t,e){if(!(this.optionFlags&1024))return this.addExtra(e,"parenthesized",!0),this.addExtra(e,"parenStart",t.index),this.takeSurroundingComments(e,t.index,this.state.lastTokEndLoc.index),e;let s=this.startNodeAt(t);return s.expression=e,this.finishNode(s,"ParenthesizedExpression")}shouldParseArrow(t){return!this.canInsertSemicolon()}parseArrow(t){if(this.eat(19))return t}parseParenItem(t,e){return t}parseNewOrNewTarget(){let t=this.startNode();if(this.next(),this.match(16)){let e=this.createIdentifier(this.startNodeAtNode(t),"new");this.next();let s=this.parseMetaProperty(t,e,"target");return this.scope.allowNewTarget||this.raise(p.UnexpectedNewTarget,s),s}return this.parseNew(t)}parseNew(t){if(this.parseNewCallee(t),this.eat(10)){let e=this.parseExprList(11);this.toReferencedList(e),t.arguments=e}else t.arguments=[];return this.finishNode(t,"NewExpression")}parseNewCallee(t){let e=this.match(83),s=this.parseNoCallExpr();t.callee=s,e&&(s.type==="Import"||s.type==="ImportExpression")&&this.raise(p.ImportCallNotNewExpression,s)}parseTemplateElement(t){let{start:e,startLoc:s,end:i,value:r}=this.state,n=e+1,o=this.startNodeAt(_(s,1));r===null&&(t||this.raise(p.InvalidEscapeSequenceTemplate,_(this.state.firstInvalidTemplateEscapePos,1)));let l=this.match(24),c=l?-1:-2,h=i+c;o.value={raw:this.input.slice(n,h).replace(/\r\n?/g,`
|
|
9
|
-
`),cooked:r===null?null:r.slice(1,c)},o.tail=l,this.next();let f=this.finishNode(o,"TemplateElement");return this.resetEndLocation(f,_(this.state.lastTokEndLoc,c)),f}parseTemplate(t){let e=this.startNode(),s=this.parseTemplateElement(t),i=[s],r=[];for(;!s.tail;)r.push(this.parseTemplateSubstitution()),this.readTemplateContinuation(),i.push(s=this.parseTemplateElement(t));return e.expressions=r,e.quasis=i,this.finishNode(e,"TemplateLiteral")}parseTemplateSubstitution(){return this.parseExpression()}parseObjectLike(t,e,s,i){s&&this.expectPlugin("recordAndTuple");let r=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let n=!1,o=!0,l=this.startNode();for(l.properties=[],this.next();!this.match(t);){if(o)o=!1;else if(this.expect(12),this.match(t)){this.addTrailingCommaExtraToNode(l);break}let h;e?h=this.parseBindingProperty():(h=this.parsePropertyDefinition(i),n=this.checkProto(h,s,n,i)),s&&!this.isObjectProperty(h)&&h.type!=="SpreadElement"&&this.raise(p.InvalidRecordProperty,h),h.shorthand&&this.addExtra(h,"shorthand",!0),l.properties.push(h)}this.next(),this.state.inFSharpPipelineDirectBody=r;let c="ObjectExpression";return e?c="ObjectPattern":s&&(c="RecordExpression"),this.finishNode(l,c)}addTrailingCommaExtraToNode(t){this.addExtra(t,"trailingComma",this.state.lastTokStartLoc.index),this.addExtra(t,"trailingCommaLoc",this.state.lastTokStartLoc,!1)}maybeAsyncOrAccessorProp(t){return!t.computed&&t.key.type==="Identifier"&&(this.isLiteralPropertyName()||this.match(0)||this.match(55))}parsePropertyDefinition(t){let e=[];if(this.match(26))for(this.hasPlugin("decorators")&&this.raise(p.UnsupportedPropertyDecorator,this.state.startLoc);this.match(26);)e.push(this.parseDecorator());let s=this.startNode(),i=!1,r=!1,n;if(this.match(21))return e.length&&this.unexpected(),this.parseSpread();e.length&&(s.decorators=e,e=[]),s.method=!1,t&&(n=this.state.startLoc);let o=this.eat(55);this.parsePropertyNamePrefixOperator(s);let l=this.state.containsEsc;if(this.parsePropertyName(s,t),!o&&!l&&this.maybeAsyncOrAccessorProp(s)){let{key:c}=s,h=c.name;h==="async"&&!this.hasPrecedingLineBreak()&&(i=!0,this.resetPreviousNodeTrailingComments(c),o=this.eat(55),this.parsePropertyName(s)),(h==="get"||h==="set")&&(r=!0,this.resetPreviousNodeTrailingComments(c),s.kind=h,this.match(55)&&(o=!0,this.raise(p.AccessorIsGenerator,this.state.curPosition(),{kind:h}),this.next()),this.parsePropertyName(s))}return this.parseObjPropValue(s,n,o,i,!1,r,t)}getGetterSetterExpectedParamCount(t){return t.kind==="get"?0:1}getObjectOrClassMethodParams(t){return t.params}checkGetterSetterParams(t){var e;let s=this.getGetterSetterExpectedParamCount(t),i=this.getObjectOrClassMethodParams(t);i.length!==s&&this.raise(t.kind==="get"?p.BadGetterArity:p.BadSetterArity,t),t.kind==="set"&&((e=i[i.length-1])==null?void 0:e.type)==="RestElement"&&this.raise(p.BadSetterRestParameter,t)}parseObjectMethod(t,e,s,i,r){if(r){let n=this.parseMethod(t,e,!1,!1,!1,"ObjectMethod");return this.checkGetterSetterParams(n),n}if(s||e||this.match(10))return i&&this.unexpected(),t.kind="method",t.method=!0,this.parseMethod(t,e,s,!1,!1,"ObjectMethod")}parseObjectProperty(t,e,s,i){if(t.shorthand=!1,this.eat(14))return t.value=s?this.parseMaybeDefault(this.state.startLoc):this.parseMaybeAssignAllowInOrVoidPattern(8,i),this.finishObjectProperty(t);if(!t.computed&&t.key.type==="Identifier"){if(this.checkReservedWord(t.key.name,t.key.loc.start,!0,!1),s)t.value=this.parseMaybeDefault(e,this.cloneIdentifier(t.key));else if(this.match(29)){let r=this.state.startLoc;i!=null?i.shorthandAssignLoc===null&&(i.shorthandAssignLoc=r):this.raise(p.InvalidCoverInitializedName,r),t.value=this.parseMaybeDefault(e,this.cloneIdentifier(t.key))}else t.value=this.cloneIdentifier(t.key);return t.shorthand=!0,this.finishObjectProperty(t)}}finishObjectProperty(t){return this.finishNode(t,"ObjectProperty")}parseObjPropValue(t,e,s,i,r,n,o){let l=this.parseObjectMethod(t,s,i,r,n)||this.parseObjectProperty(t,e,r,o);return l||this.unexpected(),l}parsePropertyName(t,e){if(this.eat(0))t.computed=!0,t.key=this.parseMaybeAssignAllowIn(),this.expect(3);else{let{type:s,value:i}=this.state,r;if(H(s))r=this.parseIdentifier(!0);else switch(s){case 135:r=this.parseNumericLiteral(i);break;case 134:r=this.parseStringLiteral(i);break;case 136:r=this.parseBigIntLiteral(i);break;case 139:{let n=this.state.startLoc;e!=null?e.privateKeyLoc===null&&(e.privateKeyLoc=n):this.raise(p.UnexpectedPrivateField,n),r=this.parsePrivateName();break}default:if(s===137){r=this.parseDecimalLiteral(i);break}this.unexpected()}t.key=r,s!==139&&(t.computed=!1)}}initFunction(t,e){t.id=null,t.generator=!1,t.async=e}parseMethod(t,e,s,i,r,n,o=!1){this.initFunction(t,s),t.generator=e,this.scope.enter(530|(o?576:0)|(r?32:0)),this.prodParam.enter($e(s,t.generator)),this.parseFunctionParams(t,i);let l=this.parseFunctionBodyAndFinish(t,n,!0);return this.prodParam.exit(),this.scope.exit(),l}parseArrayLike(t,e,s){e&&this.expectPlugin("recordAndTuple");let i=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let r=this.startNode();return this.next(),r.elements=this.parseExprList(t,!e,s,r),this.state.inFSharpPipelineDirectBody=i,this.finishNode(r,e?"TupleExpression":"ArrayExpression")}parseArrowExpression(t,e,s,i){this.scope.enter(518);let r=$e(s,!1);!this.match(5)&&this.prodParam.hasIn&&(r|=8),this.prodParam.enter(r),this.initFunction(t,s);let n=this.state.maybeInArrowParameters;return e&&(this.state.maybeInArrowParameters=!0,this.setArrowFunctionParameters(t,e,i)),this.state.maybeInArrowParameters=!1,this.parseFunctionBody(t,!0),this.prodParam.exit(),this.scope.exit(),this.state.maybeInArrowParameters=n,this.finishNode(t,"ArrowFunctionExpression")}setArrowFunctionParameters(t,e,s){this.toAssignableList(e,s,!1),t.params=e}parseFunctionBodyAndFinish(t,e,s=!1){return this.parseFunctionBody(t,!1,s),this.finishNode(t,e)}parseFunctionBody(t,e,s=!1){let i=e&&!this.match(5);if(this.expressionScope.enter(ci()),i)t.body=this.parseMaybeAssign(),this.checkParams(t,!1,e,!1);else{let r=this.state.strict,n=this.state.labels;this.state.labels=[],this.prodParam.enter(this.prodParam.currentFlags()|4),t.body=this.parseBlock(!0,!1,o=>{let l=!this.isSimpleParamList(t.params);o&&l&&this.raise(p.IllegalLanguageModeDirective,(t.kind==="method"||t.kind==="constructor")&&t.key?t.key.loc.end:t);let c=!r&&this.state.strict;this.checkParams(t,!this.state.strict&&!e&&!s&&!l,e,c),this.state.strict&&t.id&&this.checkIdentifier(t.id,65,c)}),this.prodParam.exit(),this.state.labels=n}this.expressionScope.exit()}isSimpleParameter(t){return t.type==="Identifier"}isSimpleParamList(t){for(let e=0,s=t.length;e<s;e++)if(!this.isSimpleParameter(t[e]))return!1;return!0}checkParams(t,e,s,i=!0){let r=!e&&new Set,n={type:"FormalParameters"};for(let o of t.params)this.checkLVal(o,n,5,r,i)}parseExprList(t,e,s,i){let r=[],n=!0;for(;!this.eat(t);){if(n)n=!1;else if(this.expect(12),this.match(t)){i&&this.addTrailingCommaExtraToNode(i),this.next();break}r.push(this.parseExprListItem(t,e,s))}return r}parseExprListItem(t,e,s,i){let r;if(this.match(12))e||this.raise(p.UnexpectedToken,this.state.curPosition(),{unexpected:","}),r=null;else if(this.match(21)){let n=this.state.startLoc;r=this.parseParenItem(this.parseSpread(s),n)}else if(this.match(17)){this.expectPlugin("partialApplication"),i||this.raise(p.UnexpectedArgumentPlaceholder,this.state.startLoc);let n=this.startNode();this.next(),r=this.finishNode(n,"ArgumentPlaceholder")}else r=this.parseMaybeAssignAllowInOrVoidPattern(t,s,this.parseParenItem);return r}parseIdentifier(t){let e=this.startNode(),s=this.parseIdentifierName(t);return this.createIdentifier(e,s)}createIdentifier(t,e){return t.name=e,t.loc.identifierName=e,this.finishNode(t,"Identifier")}createIdentifierAt(t,e,s){return t.name=e,t.loc.identifierName=e,this.finishNodeAt(t,"Identifier",s)}parseIdentifierName(t){let e,{startLoc:s,type:i}=this.state;H(i)?e=this.state.value:this.unexpected();let r=fr(i);return t?r&&this.replaceToken(132):this.checkReservedWord(e,s,r,!1),this.next(),e}checkReservedWord(t,e,s,i){if(t.length>10||!Dr(t))return;if(s&&Nr(t)){this.raise(p.UnexpectedKeyword,e,{keyword:t});return}if((this.state.strict?i?ai:ii:si)(t,this.inModule)){this.raise(p.UnexpectedReservedWord,e,{reservedWord:t});return}else if(t==="yield"){if(this.prodParam.hasYield){this.raise(p.YieldBindingIdentifier,e);return}}else if(t==="await"){if(this.prodParam.hasAwait){this.raise(p.AwaitBindingIdentifier,e);return}if(this.scope.inStaticBlock){this.raise(p.AwaitBindingIdentifierInStaticBlock,e);return}this.expressionScope.recordAsyncArrowParametersError(e)}else if(t==="arguments"&&this.scope.inClassAndNotInNonArrowFunction){this.raise(p.ArgumentsInClass,e);return}}recordAwaitIfAllowed(){let t=this.prodParam.hasAwait;return t&&!this.scope.inFunction&&(this.state.hasTopLevelAwait=!0),t}parseAwait(t){let e=this.startNodeAt(t);return this.expressionScope.recordParameterInitializerError(p.AwaitExpressionFormalParameter,e),this.eat(55)&&this.raise(p.ObsoleteAwaitStar,e),!this.scope.inFunction&&!(this.optionFlags&1)&&(this.isAmbiguousPrefixOrIdentifier()?this.ambiguousScriptDifferentAst=!0:this.sawUnambiguousESM=!0),this.state.soloAwait||(e.argument=this.parseMaybeUnary(null,!0)),this.finishNode(e,"AwaitExpression")}isAmbiguousPrefixOrIdentifier(){if(this.hasPrecedingLineBreak())return!0;let{type:t}=this.state;return t===53||t===10||t===0||_e(t)||t===102&&!this.state.containsEsc||t===138||t===56||this.hasPlugin("v8intrinsic")&&t===54}parseYield(t){let e=this.startNodeAt(t);this.expressionScope.recordParameterInitializerError(p.YieldInParameter,e);let s=!1,i=null;if(!this.hasPrecedingLineBreak())switch(s=this.eat(55),this.state.type){case 13:case 140:case 8:case 11:case 3:case 9:case 14:case 12:if(!s)break;default:i=this.parseMaybeAssign()}return e.delegate=s,e.argument=i,this.finishNode(e,"YieldExpression")}parseImportCall(t){if(this.next(),t.source=this.parseMaybeAssignAllowIn(),t.options=null,this.eat(12)){if(this.match(11))this.addTrailingCommaExtraToNode(t.source);else if(t.options=this.parseMaybeAssignAllowIn(),this.eat(12)&&(this.addTrailingCommaExtraToNode(t.options),!this.match(11))){do this.parseMaybeAssignAllowIn();while(this.eat(12)&&!this.match(11));this.raise(p.ImportCallArity,t)}}return this.expect(11),this.finishNode(t,"ImportExpression")}checkPipelineAtInfixOperator(t,e){this.hasPlugin(["pipelineOperator",{proposal:"smart"}])&&t.type==="SequenceExpression"&&this.raise(p.PipelineHeadSequenceExpression,e)}parseSmartPipelineBodyInStyle(t,e){if(this.isSimpleReference(t)){let s=this.startNodeAt(e);return s.callee=t,this.finishNode(s,"PipelineBareFunction")}else{let s=this.startNodeAt(e);return this.checkSmartPipeTopicBodyEarlyErrors(e),s.expression=t,this.finishNode(s,"PipelineTopicExpression")}}isSimpleReference(t){switch(t.type){case"MemberExpression":return!t.computed&&this.isSimpleReference(t.object);case"Identifier":return!0;default:return!1}}checkSmartPipeTopicBodyEarlyErrors(t){if(this.match(19))throw this.raise(p.PipelineBodyNoArrow,this.state.startLoc);this.topicReferenceWasUsedInCurrentContext()||this.raise(p.PipelineTopicUnused,t)}withTopicBindingContext(t){let e=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:1,maxTopicIndex:null};try{return t()}finally{this.state.topicContext=e}}withSmartMixTopicForbiddingContext(t){if(this.hasPlugin(["pipelineOperator",{proposal:"smart"}])){let e=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null};try{return t()}finally{this.state.topicContext=e}}else return t()}withSoloAwaitPermittingContext(t){let e=this.state.soloAwait;this.state.soloAwait=!0;try{return t()}finally{this.state.soloAwait=e}}allowInAnd(t){let e=this.prodParam.currentFlags();if(8&~e){this.prodParam.enter(e|8);try{return t()}finally{this.prodParam.exit()}}return t()}disallowInAnd(t){let e=this.prodParam.currentFlags();if(8&e){this.prodParam.enter(e&-9);try{return t()}finally{this.prodParam.exit()}}return t()}registerTopicReference(){this.state.topicContext.maxTopicIndex=0}topicReferenceIsAllowedInCurrentContext(){return this.state.topicContext.maxNumOfResolvableTopics>=1}topicReferenceWasUsedInCurrentContext(){return this.state.topicContext.maxTopicIndex!=null&&this.state.topicContext.maxTopicIndex>=0}parseFSharpPipelineBody(t){let e=this.state.startLoc;this.state.potentialArrowAt=this.state.start;let s=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!0;let i=this.parseExprOp(this.parseMaybeUnaryOrPrivate(),e,t);return this.state.inFSharpPipelineDirectBody=s,i}parseModuleExpression(){this.expectPlugin("moduleBlocks");let t=this.startNode();this.next(),this.match(5)||this.unexpected(null,5);let e=this.startNodeAt(this.state.endLoc);this.next();let s=this.initializeScopes(!0);this.enterInitialScopes();try{t.body=this.parseProgram(e,8,"module")}finally{s()}return this.finishNode(t,"ModuleExpression")}parseVoidPattern(t){this.expectPlugin("discardBinding");let e=this.startNode();return t!=null&&(t.voidPatternLoc=this.state.startLoc),this.next(),this.finishNode(e,"VoidPattern")}parseMaybeAssignAllowInOrVoidPattern(t,e,s){if(e!=null&&this.match(88)){let i=this.lookaheadCharCode();if(i===44||i===(t===3?93:t===8?125:41)||i===61)return this.parseMaybeDefault(this.state.startLoc,this.parseVoidPattern(e))}return this.parseMaybeAssignAllowIn(e,s)}parsePropertyNamePrefixOperator(t){}},tt={kind:1},la={kind:2},ca=/[\uD800-\uDFFF]/u,st=/in(?:stanceof)?/y;function ha(a,t,e){for(let s=0;s<a.length;s++){let i=a[s],{type:r}=i;if(typeof r=="number"){if(r===139){let{loc:n,start:o,value:l,end:c}=i,h=o+1,f=_(n.start,1);a.splice(s,1,new K({type:Z(27),value:"#",start:o,end:h,startLoc:n.start,endLoc:f}),new K({type:Z(132),value:l,start:h,end:c,startLoc:f,endLoc:n.end})),s++;continue}if(_e(r)){let{loc:n,start:o,value:l,end:c}=i,h=o+1,f=_(n.start,1),d;t.charCodeAt(o-e)===96?d=new K({type:Z(22),value:"`",start:o,end:h,startLoc:n.start,endLoc:f}):d=new K({type:Z(8),value:"}",start:o,end:h,startLoc:n.start,endLoc:f});let m,g,I,L;r===24?(g=c-1,I=_(n.end,-1),m=l===null?null:l.slice(1,-1),L=new K({type:Z(22),value:"`",start:g,end:c,startLoc:I,endLoc:n.end})):(g=c-2,I=_(n.end,-2),m=l===null?null:l.slice(1,-2),L=new K({type:Z(23),value:"${",start:g,end:c,startLoc:I,endLoc:n.end})),a.splice(s,1,d,new K({type:Z(20),value:m,start:h,end:g,startLoc:f,endLoc:I}),L),s+=2;continue}i.type=Z(r)}}return a}u(ha,"babel7CompatTokens");var St=class extends At{static{u(this,"StatementParser")}parseTopLevel(t,e){return t.program=this.parseProgram(e,140,this.options.sourceType==="module"?"module":"script"),t.comments=this.comments,this.optionFlags&256&&(t.tokens=ha(this.tokens,this.input,this.startIndex)),this.finishNode(t,"File")}parseProgram(t,e,s){if(t.sourceType=s,t.interpreter=this.parseInterpreterDirective(),this.parseBlockBody(t,!0,!0,e),this.inModule){if(!(this.optionFlags&64)&&this.scope.undefinedExports.size>0)for(let[r,n]of Array.from(this.scope.undefinedExports))this.raise(p.ModuleExportUndefined,n,{localName:r});this.addExtra(t,"topLevelAwait",this.state.hasTopLevelAwait)}let i;return e===140?i=this.finishNode(t,"Program"):i=this.finishNodeAt(t,"Program",_(this.state.startLoc,-1)),i}stmtToDirective(t){let e=this.castNodeTo(t,"Directive"),s=this.castNodeTo(t.expression,"DirectiveLiteral"),i=s.value,r=this.input.slice(this.offsetToSourcePos(s.start),this.offsetToSourcePos(s.end)),n=s.value=r.slice(1,-1);return this.addExtra(s,"raw",r),this.addExtra(s,"rawValue",n),this.addExtra(s,"expressionValue",i),e.value=s,delete t.expression,e}parseInterpreterDirective(){if(!this.match(28))return null;let t=this.startNode();return t.value=this.state.value,this.next(),this.finishNode(t,"InterpreterDirective")}isLet(){return this.isContextual(100)?this.hasFollowingBindingAtom():!1}isUsing(){return this.isContextual(107)?this.nextTokenIsIdentifierOnSameLine():!1}isForUsing(){if(!this.isContextual(107))return!1;let t=this.nextTokenInLineStart(),e=this.codePointAtPos(t);if(this.isUnparsedContextual(t,"of")){let s=this.lookaheadCharCodeSince(t+2);if(s!==61&&s!==58&&s!==59)return!1}return!!(this.chStartsBindingIdentifier(e,t)||this.isUnparsedContextual(t,"void"))}nextTokenIsIdentifierOnSameLine(){let t=this.nextTokenInLineStart(),e=this.codePointAtPos(t);return this.chStartsBindingIdentifier(e,t)}isAwaitUsing(){if(!this.isContextual(96))return!1;let t=this.nextTokenInLineStart();if(this.isUnparsedContextual(t,"using")){t=this.nextTokenInLineStartSince(t+5);let e=this.codePointAtPos(t);if(this.chStartsBindingIdentifier(e,t))return!0}return!1}chStartsBindingIdentifier(t,e){if(W(t)){if(st.lastIndex=e,st.test(this.input)){let s=this.codePointAtPos(st.lastIndex);if(!le(s)&&s!==92)return!1}return!0}else return t===92}chStartsBindingPattern(t){return t===91||t===123}hasFollowingBindingAtom(){let t=this.nextTokenStart(),e=this.codePointAtPos(t);return this.chStartsBindingPattern(e)||this.chStartsBindingIdentifier(e,t)}hasInLineFollowingBindingIdentifierOrBrace(){let t=this.nextTokenInLineStart(),e=this.codePointAtPos(t);return e===123||this.chStartsBindingIdentifier(e,t)}allowsUsing(){return(this.scope.inModule||!this.scope.inTopLevel)&&!this.scope.inBareCaseStatement}parseModuleItem(){return this.parseStatementLike(15)}parseStatementListItem(){return this.parseStatementLike(6|(!this.options.annexB||this.state.strict?0:8))}parseStatementOrSloppyAnnexBFunctionDeclaration(t=!1){let e=0;return this.options.annexB&&!this.state.strict&&(e|=4,t&&(e|=8)),this.parseStatementLike(e)}parseStatement(){return this.parseStatementLike(0)}parseStatementLike(t){let e=null;return this.match(26)&&(e=this.parseDecorators(!0)),this.parseStatementContent(t,e)}parseStatementContent(t,e){let s=this.state.type,i=this.startNode(),r=!!(t&2),n=!!(t&4),o=t&1;switch(s){case 60:return this.parseBreakContinueStatement(i,!0);case 63:return this.parseBreakContinueStatement(i,!1);case 64:return this.parseDebuggerStatement(i);case 90:return this.parseDoWhileStatement(i);case 91:return this.parseForStatement(i);case 68:if(this.lookaheadCharCode()===46)break;return n||this.raise(this.state.strict?p.StrictFunction:this.options.annexB?p.SloppyFunctionAnnexB:p.SloppyFunction,this.state.startLoc),this.parseFunctionStatement(i,!1,!r&&n);case 80:return r||this.unexpected(),this.parseClass(this.maybeTakeDecorators(e,i),!0);case 69:return this.parseIfStatement(i);case 70:return this.parseReturnStatement(i);case 71:return this.parseSwitchStatement(i);case 72:return this.parseThrowStatement(i);case 73:return this.parseTryStatement(i);case 96:if(this.isAwaitUsing())return this.allowsUsing()?r?this.recordAwaitIfAllowed()||this.raise(p.AwaitUsingNotInAsyncContext,i):this.raise(p.UnexpectedLexicalDeclaration,i):this.raise(p.UnexpectedUsingDeclaration,i),this.next(),this.parseVarStatement(i,"await using");break;case 107:if(this.state.containsEsc||!this.hasInLineFollowingBindingIdentifierOrBrace())break;return this.allowsUsing()?r||this.raise(p.UnexpectedLexicalDeclaration,this.state.startLoc):this.raise(p.UnexpectedUsingDeclaration,this.state.startLoc),this.parseVarStatement(i,"using");case 100:{if(this.state.containsEsc)break;let h=this.nextTokenStart(),f=this.codePointAtPos(h);if(f!==91&&(!r&&this.hasFollowingLineBreak()||!this.chStartsBindingIdentifier(f,h)&&f!==123))break}case 75:r||this.raise(p.UnexpectedLexicalDeclaration,this.state.startLoc);case 74:{let h=this.state.value;return this.parseVarStatement(i,h)}case 92:return this.parseWhileStatement(i);case 76:return this.parseWithStatement(i);case 5:return this.parseBlock();case 13:return this.parseEmptyStatement(i);case 83:{let h=this.lookaheadCharCode();if(h===40||h===46)break}case 82:{!(this.optionFlags&8)&&!o&&this.raise(p.UnexpectedImportExport,this.state.startLoc),this.next();let h;return s===83?h=this.parseImport(i):h=this.parseExport(i,e),this.assertModuleNodeAllowed(h),h}default:if(this.isAsyncFunction())return r||this.raise(p.AsyncFunctionInSingleStatementContext,this.state.startLoc),this.next(),this.parseFunctionStatement(i,!0,!r&&n)}let l=this.state.value,c=this.parseExpression();return O(s)&&c.type==="Identifier"&&this.eat(14)?this.parseLabeledStatement(i,l,c,t):this.parseExpressionStatement(i,c,e)}assertModuleNodeAllowed(t){!(this.optionFlags&8)&&!this.inModule&&this.raise(p.ImportOutsideModule,t)}decoratorsEnabledBeforeExport(){return this.hasPlugin("decorators-legacy")?!0:this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")!==!1}maybeTakeDecorators(t,e,s){if(t){var i;(i=e.decorators)!=null&&i.length?(typeof this.getPluginOption("decorators","decoratorsBeforeExport")!="boolean"&&this.raise(p.DecoratorsBeforeAfterExport,e.decorators[0]),e.decorators.unshift(...t)):e.decorators=t,this.resetStartLocationFromNode(e,t[0]),s&&this.resetStartLocationFromNode(s,e)}return e}canHaveLeadingDecorator(){return this.match(80)}parseDecorators(t){let e=[];do e.push(this.parseDecorator());while(this.match(26));if(this.match(82))t||this.unexpected(),this.decoratorsEnabledBeforeExport()||this.raise(p.DecoratorExportClass,this.state.startLoc);else if(!this.canHaveLeadingDecorator())throw this.raise(p.UnexpectedLeadingDecorator,this.state.startLoc);return e}parseDecorator(){this.expectOnePlugin(["decorators","decorators-legacy"]);let t=this.startNode();if(this.next(),this.hasPlugin("decorators")){let e=this.state.startLoc,s;if(this.match(10)){let i=this.state.startLoc;this.next(),s=this.parseExpression(),this.expect(11),s=this.wrapParenthesis(i,s);let r=this.state.startLoc;t.expression=this.parseMaybeDecoratorArguments(s,i),this.getPluginOption("decorators","allowCallParenthesized")===!1&&t.expression!==s&&this.raise(p.DecoratorArgumentsOutsideParentheses,r)}else{for(s=this.parseIdentifier(!1);this.eat(16);){let i=this.startNodeAt(e);i.object=s,this.match(139)?(this.classScope.usePrivateName(this.state.value,this.state.startLoc),i.property=this.parsePrivateName()):i.property=this.parseIdentifier(!0),i.computed=!1,s=this.finishNode(i,"MemberExpression")}t.expression=this.parseMaybeDecoratorArguments(s,e)}}else t.expression=this.parseExprSubscripts();return this.finishNode(t,"Decorator")}parseMaybeDecoratorArguments(t,e){if(this.eat(10)){let s=this.startNodeAt(e);return s.callee=t,s.arguments=this.parseCallExpressionArguments(),this.toReferencedList(s.arguments),this.finishNode(s,"CallExpression")}return t}parseBreakContinueStatement(t,e){return this.next(),this.isLineTerminator()?t.label=null:(t.label=this.parseIdentifier(),this.semicolon()),this.verifyBreakContinue(t,e),this.finishNode(t,e?"BreakStatement":"ContinueStatement")}verifyBreakContinue(t,e){let s;for(s=0;s<this.state.labels.length;++s){let i=this.state.labels[s];if((t.label==null||i.name===t.label.name)&&(i.kind!=null&&(e||i.kind===1)||t.label&&e))break}if(s===this.state.labels.length){let i=e?"BreakStatement":"ContinueStatement";this.raise(p.IllegalBreakContinue,t,{type:i})}}parseDebuggerStatement(t){return this.next(),this.semicolon(),this.finishNode(t,"DebuggerStatement")}parseHeaderExpression(){this.expect(10);let t=this.parseExpression();return this.expect(11),t}parseDoWhileStatement(t){return this.next(),this.state.labels.push(tt),t.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.state.labels.pop(),this.expect(92),t.test=this.parseHeaderExpression(),this.eat(13),this.finishNode(t,"DoWhileStatement")}parseForStatement(t){this.next(),this.state.labels.push(tt);let e=null;if(this.isContextual(96)&&this.recordAwaitIfAllowed()&&(e=this.state.startLoc,this.next()),this.scope.enter(0),this.expect(10),this.match(13))return e!==null&&this.unexpected(e),this.parseFor(t,null);let s=this.isContextual(100);{let l=this.isAwaitUsing(),c=l||this.isForUsing(),h=s&&this.hasFollowingBindingAtom()||c;if(this.match(74)||this.match(75)||h){let f=this.startNode(),d;l?(d="await using",this.recordAwaitIfAllowed()||this.raise(p.AwaitUsingNotInAsyncContext,this.state.startLoc),this.next()):d=this.state.value,this.next(),this.parseVar(f,!0,d);let m=this.finishNode(f,"VariableDeclaration"),g=this.match(58);return g&&c&&this.raise(p.ForInUsing,m),(g||this.isContextual(102))&&m.declarations.length===1?this.parseForIn(t,m,e):(e!==null&&this.unexpected(e),this.parseFor(t,m))}}let i=this.isContextual(95),r=new me,n=this.parseExpression(!0,r),o=this.isContextual(102);if(o&&(s&&this.raise(p.ForOfLet,n),e===null&&i&&n.type==="Identifier"&&this.raise(p.ForOfAsync,n)),o||this.match(58)){this.checkDestructuringPrivate(r),this.toAssignable(n,!0);let l=o?"ForOfStatement":"ForInStatement";return this.checkLVal(n,{type:l}),this.parseForIn(t,n,e)}else this.checkExpressionErrors(r,!0);return e!==null&&this.unexpected(e),this.parseFor(t,n)}parseFunctionStatement(t,e,s){return this.next(),this.parseFunction(t,1|(s?2:0)|(e?8:0))}parseIfStatement(t){return this.next(),t.test=this.parseHeaderExpression(),t.consequent=this.parseStatementOrSloppyAnnexBFunctionDeclaration(),t.alternate=this.eat(66)?this.parseStatementOrSloppyAnnexBFunctionDeclaration():null,this.finishNode(t,"IfStatement")}parseReturnStatement(t){return this.prodParam.hasReturn||this.raise(p.IllegalReturn,this.state.startLoc),this.next(),this.isLineTerminator()?t.argument=null:(t.argument=this.parseExpression(),this.semicolon()),this.finishNode(t,"ReturnStatement")}parseSwitchStatement(t){this.next(),t.discriminant=this.parseHeaderExpression();let e=t.cases=[];this.expect(5),this.state.labels.push(la),this.scope.enter(256);let s;for(let i;!this.match(8);)if(this.match(61)||this.match(65)){let r=this.match(61);s&&this.finishNode(s,"SwitchCase"),e.push(s=this.startNode()),s.consequent=[],this.next(),r?s.test=this.parseExpression():(i&&this.raise(p.MultipleDefaultsInSwitch,this.state.lastTokStartLoc),i=!0,s.test=null),this.expect(14)}else s?s.consequent.push(this.parseStatementListItem()):this.unexpected();return this.scope.exit(),s&&this.finishNode(s,"SwitchCase"),this.next(),this.state.labels.pop(),this.finishNode(t,"SwitchStatement")}parseThrowStatement(t){return this.next(),this.hasPrecedingLineBreak()&&this.raise(p.NewlineAfterThrow,this.state.lastTokEndLoc),t.argument=this.parseExpression(),this.semicolon(),this.finishNode(t,"ThrowStatement")}parseCatchClauseParam(){let t=this.parseBindingAtom();return this.scope.enter(this.options.annexB&&t.type==="Identifier"?8:0),this.checkLVal(t,{type:"CatchClause"},9),t}parseTryStatement(t){if(this.next(),t.block=this.parseBlock(),t.handler=null,this.match(62)){let e=this.startNode();this.next(),this.match(10)?(this.expect(10),e.param=this.parseCatchClauseParam(),this.expect(11)):(e.param=null,this.scope.enter(0)),e.body=this.withSmartMixTopicForbiddingContext(()=>this.parseBlock(!1,!1)),this.scope.exit(),t.handler=this.finishNode(e,"CatchClause")}return t.finalizer=this.eat(67)?this.parseBlock():null,!t.handler&&!t.finalizer&&this.raise(p.NoCatchOrFinally,t),this.finishNode(t,"TryStatement")}parseVarStatement(t,e,s=!1){return this.next(),this.parseVar(t,!1,e,s),this.semicolon(),this.finishNode(t,"VariableDeclaration")}parseWhileStatement(t){return this.next(),t.test=this.parseHeaderExpression(),this.state.labels.push(tt),t.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.state.labels.pop(),this.finishNode(t,"WhileStatement")}parseWithStatement(t){return this.state.strict&&this.raise(p.StrictWith,this.state.startLoc),this.next(),t.object=this.parseHeaderExpression(),t.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.finishNode(t,"WithStatement")}parseEmptyStatement(t){return this.next(),this.finishNode(t,"EmptyStatement")}parseLabeledStatement(t,e,s,i){for(let n of this.state.labels)n.name===e&&this.raise(p.LabelRedeclaration,s,{labelName:e});let r=yr(this.state.type)?1:this.match(71)?2:null;for(let n=this.state.labels.length-1;n>=0;n--){let o=this.state.labels[n];if(o.statementStart===t.start)o.statementStart=this.sourceToOffsetPos(this.state.start),o.kind=r;else break}return this.state.labels.push({name:e,kind:r,statementStart:this.sourceToOffsetPos(this.state.start)}),t.body=i&8?this.parseStatementOrSloppyAnnexBFunctionDeclaration(!0):this.parseStatement(),this.state.labels.pop(),t.label=s,this.finishNode(t,"LabeledStatement")}parseExpressionStatement(t,e,s){return t.expression=e,this.semicolon(),this.finishNode(t,"ExpressionStatement")}parseBlock(t=!1,e=!0,s){let i=this.startNode();return t&&this.state.strictErrors.clear(),this.expect(5),e&&this.scope.enter(0),this.parseBlockBody(i,t,!1,8,s),e&&this.scope.exit(),this.finishNode(i,"BlockStatement")}isValidDirective(t){return t.type==="ExpressionStatement"&&t.expression.type==="StringLiteral"&&!t.expression.extra.parenthesized}parseBlockBody(t,e,s,i,r){let n=t.body=[],o=t.directives=[];this.parseBlockOrModuleBlockBody(n,e?o:void 0,s,i,r)}parseBlockOrModuleBlockBody(t,e,s,i,r){let n=this.state.strict,o=!1,l=!1;for(;!this.match(i);){let c=s?this.parseModuleItem():this.parseStatementListItem();if(e&&!l){if(this.isValidDirective(c)){let h=this.stmtToDirective(c);e.push(h),!o&&h.value.value==="use strict"&&(o=!0,this.setStrict(!0));continue}l=!0,this.state.strictErrors.clear()}t.push(c)}r?.call(this,o),n||this.setStrict(!1),this.next()}parseFor(t,e){return t.init=e,this.semicolon(!1),t.test=this.match(13)?null:this.parseExpression(),this.semicolon(!1),t.update=this.match(11)?null:this.parseExpression(),this.expect(11),t.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(t,"ForStatement")}parseForIn(t,e,s){let i=this.match(58);return this.next(),i?s!==null&&this.unexpected(s):t.await=s!==null,e.type==="VariableDeclaration"&&e.declarations[0].init!=null&&(!i||!this.options.annexB||this.state.strict||e.kind!=="var"||e.declarations[0].id.type!=="Identifier")&&this.raise(p.ForInOfLoopInitializer,e,{type:i?"ForInStatement":"ForOfStatement"}),e.type==="AssignmentPattern"&&this.raise(p.InvalidLhs,e,{ancestor:{type:"ForStatement"}}),t.left=e,t.right=i?this.parseExpression():this.parseMaybeAssignAllowIn(),this.expect(11),t.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(t,i?"ForInStatement":"ForOfStatement")}parseVar(t,e,s,i=!1){let r=t.declarations=[];for(t.kind=s;;){let n=this.startNode();if(this.parseVarId(n,s),n.init=this.eat(29)?e?this.parseMaybeAssignDisallowIn():this.parseMaybeAssignAllowIn():null,n.init===null&&!i&&(n.id.type!=="Identifier"&&!(e&&(this.match(58)||this.isContextual(102)))?this.raise(p.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:"destructuring"}):(s==="const"||s==="using"||s==="await using")&&!(this.match(58)||this.isContextual(102))&&this.raise(p.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:s})),r.push(this.finishNode(n,"VariableDeclarator")),!this.eat(12))break}return t}parseVarId(t,e){let s=this.parseBindingAtom();e==="using"||e==="await using"?(s.type==="ArrayPattern"||s.type==="ObjectPattern")&&this.raise(p.UsingDeclarationHasBindingPattern,s.loc.start):s.type==="VoidPattern"&&this.raise(p.UnexpectedVoidPattern,s.loc.start),this.checkLVal(s,{type:"VariableDeclarator"},e==="var"?5:8201),t.id=s}parseAsyncFunctionExpression(t){return this.parseFunction(t,8)}parseFunction(t,e=0){let s=e&2,i=!!(e&1),r=i&&!(e&4),n=!!(e&8);this.initFunction(t,n),this.match(55)&&(s&&this.raise(p.GeneratorInSingleStatementContext,this.state.startLoc),this.next(),t.generator=!0),i&&(t.id=this.parseFunctionId(r));let o=this.state.maybeInArrowParameters;return this.state.maybeInArrowParameters=!1,this.scope.enter(514),this.prodParam.enter($e(n,t.generator)),i||(t.id=this.parseFunctionId()),this.parseFunctionParams(t,!1),this.withSmartMixTopicForbiddingContext(()=>{this.parseFunctionBodyAndFinish(t,i?"FunctionDeclaration":"FunctionExpression")}),this.prodParam.exit(),this.scope.exit(),i&&!s&&this.registerFunctionStatementId(t),this.state.maybeInArrowParameters=o,t}parseFunctionId(t){return t||O(this.state.type)?this.parseIdentifier():null}parseFunctionParams(t,e){this.expect(10),this.expressionScope.enter(Wr()),t.params=this.parseBindingList(11,41,2|(e?4:0)),this.expressionScope.exit()}registerFunctionStatementId(t){t.id&&this.scope.declareName(t.id.name,!this.options.annexB||this.state.strict||t.generator||t.async?this.scope.treatFunctionsAsVar?5:8201:17,t.id.loc.start)}parseClass(t,e,s){this.next();let i=this.state.strict;return this.state.strict=!0,this.parseClassId(t,e,s),this.parseClassSuper(t),t.body=this.parseClassBody(!!t.superClass,i),this.finishNode(t,e?"ClassDeclaration":"ClassExpression")}isClassProperty(){return this.match(29)||this.match(13)||this.match(8)}isClassMethod(){return this.match(10)}nameIsConstructor(t){return t.type==="Identifier"&&t.name==="constructor"||t.type==="StringLiteral"&&t.value==="constructor"}isNonstaticConstructor(t){return!t.computed&&!t.static&&this.nameIsConstructor(t.key)}parseClassBody(t,e){this.classScope.enter();let s={hadConstructor:!1,hadSuperClass:t},i=[],r=this.startNode();if(r.body=[],this.expect(5),this.withSmartMixTopicForbiddingContext(()=>{for(;!this.match(8);){if(this.eat(13)){if(i.length>0)throw this.raise(p.DecoratorSemicolon,this.state.lastTokEndLoc);continue}if(this.match(26)){i.push(this.parseDecorator());continue}let n=this.startNode();i.length&&(n.decorators=i,this.resetStartLocationFromNode(n,i[0]),i=[]),this.parseClassMember(r,n,s),n.kind==="constructor"&&n.decorators&&n.decorators.length>0&&this.raise(p.DecoratorConstructor,n)}}),this.state.strict=e,this.next(),i.length)throw this.raise(p.TrailingDecorator,this.state.startLoc);return this.classScope.exit(),this.finishNode(r,"ClassBody")}parseClassMemberFromModifier(t,e){let s=this.parseIdentifier(!0);if(this.isClassMethod()){let i=e;return i.kind="method",i.computed=!1,i.key=s,i.static=!1,this.pushClassMethod(t,i,!1,!1,!1,!1),!0}else if(this.isClassProperty()){let i=e;return i.computed=!1,i.key=s,i.static=!1,t.body.push(this.parseClassProperty(i)),!0}return this.resetPreviousNodeTrailingComments(s),!1}parseClassMember(t,e,s){let i=this.isContextual(106);if(i){if(this.parseClassMemberFromModifier(t,e))return;if(this.eat(5)){this.parseClassStaticBlock(t,e);return}}this.parseClassMemberWithIsStatic(t,e,s,i)}parseClassMemberWithIsStatic(t,e,s,i){let r=e,n=e,o=e,l=e,c=e,h=r,f=r;if(e.static=i,this.parsePropertyNamePrefixOperator(e),this.eat(55)){h.kind="method";let y=this.match(139);if(this.parseClassElementName(h),this.parsePostMemberNameModifiers(h),y){this.pushClassPrivateMethod(t,n,!0,!1);return}this.isNonstaticConstructor(r)&&this.raise(p.ConstructorIsGenerator,r.key),this.pushClassMethod(t,r,!0,!1,!1,!1);return}let d=!this.state.containsEsc&&O(this.state.type),m=this.parseClassElementName(e),g=d?m.name:null,I=this.isPrivateName(m),L=this.state.startLoc;if(this.parsePostMemberNameModifiers(f),this.isClassMethod()){if(h.kind="method",I){this.pushClassPrivateMethod(t,n,!1,!1);return}let y=this.isNonstaticConstructor(r),S=!1;y&&(r.kind="constructor",s.hadConstructor&&!this.hasPlugin("typescript")&&this.raise(p.DuplicateConstructor,m),y&&this.hasPlugin("typescript")&&e.override&&this.raise(p.OverrideOnConstructor,m),s.hadConstructor=!0,S=s.hadSuperClass),this.pushClassMethod(t,r,!1,!1,y,S)}else if(this.isClassProperty())I?this.pushClassPrivateProperty(t,l):this.pushClassProperty(t,o);else if(g==="async"&&!this.isLineTerminator()){this.resetPreviousNodeTrailingComments(m);let y=this.eat(55);f.optional&&this.unexpected(L),h.kind="method";let S=this.match(139);this.parseClassElementName(h),this.parsePostMemberNameModifiers(f),S?this.pushClassPrivateMethod(t,n,y,!0):(this.isNonstaticConstructor(r)&&this.raise(p.ConstructorIsAsync,r.key),this.pushClassMethod(t,r,y,!0,!1,!1))}else if((g==="get"||g==="set")&&!(this.match(55)&&this.isLineTerminator())){this.resetPreviousNodeTrailingComments(m),h.kind=g;let y=this.match(139);this.parseClassElementName(r),y?this.pushClassPrivateMethod(t,n,!1,!1):(this.isNonstaticConstructor(r)&&this.raise(p.ConstructorIsAccessor,r.key),this.pushClassMethod(t,r,!1,!1,!1,!1)),this.checkGetterSetterParams(r)}else if(g==="accessor"&&!this.isLineTerminator()){this.expectPlugin("decoratorAutoAccessors"),this.resetPreviousNodeTrailingComments(m);let y=this.match(139);this.parseClassElementName(o),this.pushClassAccessorProperty(t,c,y)}else this.isLineTerminator()?I?this.pushClassPrivateProperty(t,l):this.pushClassProperty(t,o):this.unexpected()}parseClassElementName(t){let{type:e,value:s}=this.state;if((e===132||e===134)&&t.static&&s==="prototype"&&this.raise(p.StaticPrototype,this.state.startLoc),e===139){s==="constructor"&&this.raise(p.ConstructorClassPrivateField,this.state.startLoc);let i=this.parsePrivateName();return t.key=i,i}return this.parsePropertyName(t),t.key}parseClassStaticBlock(t,e){var s;this.scope.enter(720);let i=this.state.labels;this.state.labels=[],this.prodParam.enter(0);let r=e.body=[];this.parseBlockOrModuleBlockBody(r,void 0,!1,8),this.prodParam.exit(),this.scope.exit(),this.state.labels=i,t.body.push(this.finishNode(e,"StaticBlock")),(s=e.decorators)!=null&&s.length&&this.raise(p.DecoratorStaticBlock,e)}pushClassProperty(t,e){!e.computed&&this.nameIsConstructor(e.key)&&this.raise(p.ConstructorClassField,e.key),t.body.push(this.parseClassProperty(e))}pushClassPrivateProperty(t,e){let s=this.parseClassPrivateProperty(e);t.body.push(s),this.classScope.declarePrivateName(this.getPrivateNameSV(s.key),0,s.key.loc.start)}pushClassAccessorProperty(t,e,s){!s&&!e.computed&&this.nameIsConstructor(e.key)&&this.raise(p.ConstructorClassField,e.key);let i=this.parseClassAccessorProperty(e);t.body.push(i),s&&this.classScope.declarePrivateName(this.getPrivateNameSV(i.key),0,i.key.loc.start)}pushClassMethod(t,e,s,i,r,n){t.body.push(this.parseMethod(e,s,i,r,n,"ClassMethod",!0))}pushClassPrivateMethod(t,e,s,i){let r=this.parseMethod(e,s,i,!1,!1,"ClassPrivateMethod",!0);t.body.push(r);let n=r.kind==="get"?r.static?6:2:r.kind==="set"?r.static?5:1:0;this.declareClassPrivateMethodInScope(r,n)}declareClassPrivateMethodInScope(t,e){this.classScope.declarePrivateName(this.getPrivateNameSV(t.key),e,t.key.loc.start)}parsePostMemberNameModifiers(t){}parseClassPrivateProperty(t){return this.parseInitializer(t),this.semicolon(),this.finishNode(t,"ClassPrivateProperty")}parseClassProperty(t){return this.parseInitializer(t),this.semicolon(),this.finishNode(t,"ClassProperty")}parseClassAccessorProperty(t){return this.parseInitializer(t),this.semicolon(),this.finishNode(t,"ClassAccessorProperty")}parseInitializer(t){this.scope.enter(592),this.expressionScope.enter(ci()),this.prodParam.enter(0),t.value=this.eat(29)?this.parseMaybeAssignAllowIn():null,this.expressionScope.exit(),this.prodParam.exit(),this.scope.exit()}parseClassId(t,e,s,i=8331){if(O(this.state.type))t.id=this.parseIdentifier(),e&&this.declareNameFromIdentifier(t.id,i);else if(s||!e)t.id=null;else throw this.raise(p.MissingClassName,this.state.startLoc)}parseClassSuper(t){t.superClass=this.eat(81)?this.parseExprSubscripts():null}parseExport(t,e){let s=this.parseMaybeImportPhase(t,!0),i=this.maybeParseExportDefaultSpecifier(t,s),r=!i||this.eat(12),n=r&&this.eatExportStar(t),o=n&&this.maybeParseExportNamespaceSpecifier(t),l=r&&(!o||this.eat(12)),c=i||n;if(n&&!o){if(i&&this.unexpected(),e)throw this.raise(p.UnsupportedDecoratorExport,t);return this.parseExportFrom(t,!0),this.sawUnambiguousESM=!0,this.finishNode(t,"ExportAllDeclaration")}let h=this.maybeParseExportNamedSpecifiers(t);i&&r&&!n&&!h&&this.unexpected(null,5),o&&l&&this.unexpected(null,98);let f;if(c||h){if(f=!1,e)throw this.raise(p.UnsupportedDecoratorExport,t);this.parseExportFrom(t,c)}else f=this.maybeParseExportDeclaration(t);if(c||h||f){var d;let m=t;if(this.checkExport(m,!0,!1,!!m.source),((d=m.declaration)==null?void 0:d.type)==="ClassDeclaration")this.maybeTakeDecorators(e,m.declaration,m);else if(e)throw this.raise(p.UnsupportedDecoratorExport,t);return this.sawUnambiguousESM=!0,this.finishNode(m,"ExportNamedDeclaration")}if(this.eat(65)){let m=t,g=this.parseExportDefaultExpression();if(m.declaration=g,g.type==="ClassDeclaration")this.maybeTakeDecorators(e,g,m);else if(e)throw this.raise(p.UnsupportedDecoratorExport,t);return this.checkExport(m,!0,!0),this.sawUnambiguousESM=!0,this.finishNode(m,"ExportDefaultDeclaration")}throw this.unexpected(null,5)}eatExportStar(t){return this.eat(55)}maybeParseExportDefaultSpecifier(t,e){if(e||this.isExportDefaultSpecifier()){this.expectPlugin("exportDefaultFrom",e?.loc.start);let s=e||this.parseIdentifier(!0),i=this.startNodeAtNode(s);return i.exported=s,t.specifiers=[this.finishNode(i,"ExportDefaultSpecifier")],!0}return!1}maybeParseExportNamespaceSpecifier(t){if(this.isContextual(93)){var e,s;(s=(e=t).specifiers)!=null||(e.specifiers=[]);let i=this.startNodeAt(this.state.lastTokStartLoc);return this.next(),i.exported=this.parseModuleExportName(),t.specifiers.push(this.finishNode(i,"ExportNamespaceSpecifier")),!0}return!1}maybeParseExportNamedSpecifiers(t){if(this.match(5)){let e=t;e.specifiers||(e.specifiers=[]);let s=e.exportKind==="type";return e.specifiers.push(...this.parseExportSpecifiers(s)),e.source=null,this.hasPlugin("importAssertions")?e.assertions=[]:e.attributes=[],e.declaration=null,!0}return!1}maybeParseExportDeclaration(t){return this.shouldParseExportDeclaration()?(t.specifiers=[],t.source=null,this.hasPlugin("importAssertions")?t.assertions=[]:t.attributes=[],t.declaration=this.parseExportDeclaration(t),!0):!1}isAsyncFunction(){if(!this.isContextual(95))return!1;let t=this.nextTokenInLineStart();return this.isUnparsedContextual(t,"function")}parseExportDefaultExpression(){let t=this.startNode();if(this.match(68))return this.next(),this.parseFunction(t,5);if(this.isAsyncFunction())return this.next(),this.next(),this.parseFunction(t,13);if(this.match(80))return this.parseClass(t,!0,!0);if(this.match(26))return this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(p.DecoratorBeforeExport,this.state.startLoc),this.parseClass(this.maybeTakeDecorators(this.parseDecorators(!1),this.startNode()),!0,!0);if(this.match(75)||this.match(74)||this.isLet()||this.isUsing()||this.isAwaitUsing())throw this.raise(p.UnsupportedDefaultExport,this.state.startLoc);let e=this.parseMaybeAssignAllowIn();return this.semicolon(),e}parseExportDeclaration(t){return this.match(80)?this.parseClass(this.startNode(),!0,!1):this.parseStatementListItem()}isExportDefaultSpecifier(){let{type:t}=this.state;if(O(t)){if(t===95&&!this.state.containsEsc||t===100)return!1;if((t===130||t===129)&&!this.state.containsEsc){let i=this.nextTokenStart(),r=this.input.charCodeAt(i);if(r===123||this.chStartsBindingIdentifier(r,i)&&!this.input.startsWith("from",i))return this.expectOnePlugin(["flow","typescript"]),!1}}else if(!this.match(65))return!1;let e=this.nextTokenStart(),s=this.isUnparsedContextual(e,"from");if(this.input.charCodeAt(e)===44||O(this.state.type)&&s)return!0;if(this.match(65)&&s){let i=this.input.charCodeAt(this.nextTokenStartSince(e+4));return i===34||i===39}return!1}parseExportFrom(t,e){this.eatContextual(98)?(t.source=this.parseImportSource(),this.checkExport(t),this.maybeParseImportAttributes(t),this.checkJSONModuleImport(t)):e&&this.unexpected(),this.semicolon()}shouldParseExportDeclaration(){let{type:t}=this.state;return t===26&&(this.expectOnePlugin(["decorators","decorators-legacy"]),this.hasPlugin("decorators"))?(this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(p.DecoratorBeforeExport,this.state.startLoc),!0):this.isUsing()?(this.raise(p.UsingDeclarationExport,this.state.startLoc),!0):this.isAwaitUsing()?(this.raise(p.UsingDeclarationExport,this.state.startLoc),!0):t===74||t===75||t===68||t===80||this.isLet()||this.isAsyncFunction()}checkExport(t,e,s,i){if(e){var r;if(s){if(this.checkDuplicateExports(t,"default"),this.hasPlugin("exportDefaultFrom")){var n;let o=t.declaration;o.type==="Identifier"&&o.name==="from"&&o.end-o.start===4&&!((n=o.extra)!=null&&n.parenthesized)&&this.raise(p.ExportDefaultFromAsIdentifier,o)}}else if((r=t.specifiers)!=null&&r.length)for(let o of t.specifiers){let{exported:l}=o,c=l.type==="Identifier"?l.name:l.value;if(this.checkDuplicateExports(o,c),!i&&o.local){let{local:h}=o;h.type!=="Identifier"?this.raise(p.ExportBindingIsString,o,{localName:h.value,exportName:c}):(this.checkReservedWord(h.name,h.loc.start,!0,!1),this.scope.checkLocalExport(h))}}else if(t.declaration){let o=t.declaration;if(o.type==="FunctionDeclaration"||o.type==="ClassDeclaration"){let{id:l}=o;if(!l)throw new Error("Assertion failure");this.checkDuplicateExports(t,l.name)}else if(o.type==="VariableDeclaration")for(let l of o.declarations)this.checkDeclaration(l.id)}}}checkDeclaration(t){if(t.type==="Identifier")this.checkDuplicateExports(t,t.name);else if(t.type==="ObjectPattern")for(let e of t.properties)this.checkDeclaration(e);else if(t.type==="ArrayPattern")for(let e of t.elements)e&&this.checkDeclaration(e);else t.type==="ObjectProperty"?this.checkDeclaration(t.value):t.type==="RestElement"?this.checkDeclaration(t.argument):t.type==="AssignmentPattern"&&this.checkDeclaration(t.left)}checkDuplicateExports(t,e){this.exportedIdentifiers.has(e)&&(e==="default"?this.raise(p.DuplicateDefaultExport,t):this.raise(p.DuplicateExport,t,{exportName:e})),this.exportedIdentifiers.add(e)}parseExportSpecifiers(t){let e=[],s=!0;for(this.expect(5);!this.eat(8);){if(s)s=!1;else if(this.expect(12),this.eat(8))break;let i=this.isContextual(130),r=this.match(134),n=this.startNode();n.local=this.parseModuleExportName(),e.push(this.parseExportSpecifier(n,r,t,i))}return e}parseExportSpecifier(t,e,s,i){return this.eatContextual(93)?t.exported=this.parseModuleExportName():e?t.exported=this.cloneStringLiteral(t.local):t.exported||(t.exported=this.cloneIdentifier(t.local)),this.finishNode(t,"ExportSpecifier")}parseModuleExportName(){if(this.match(134)){let t=this.parseStringLiteral(this.state.value),e=ca.exec(t.value);return e&&this.raise(p.ModuleExportNameHasLoneSurrogate,t,{surrogateCharCode:e[0].charCodeAt(0)}),t}return this.parseIdentifier(!0)}isJSONModuleImport(t){return t.assertions!=null?t.assertions.some(({key:e,value:s})=>s.value==="json"&&(e.type==="Identifier"?e.name==="type":e.value==="type")):!1}checkImportReflection(t){let{specifiers:e}=t,s=e.length===1?e[0].type:null;if(t.phase==="source")s!=="ImportDefaultSpecifier"&&this.raise(p.SourcePhaseImportRequiresDefault,e[0].loc.start);else if(t.phase==="defer")s!=="ImportNamespaceSpecifier"&&this.raise(p.DeferImportRequiresNamespace,e[0].loc.start);else if(t.module){var i;s!=="ImportDefaultSpecifier"&&this.raise(p.ImportReflectionNotBinding,e[0].loc.start),((i=t.assertions)==null?void 0:i.length)>0&&this.raise(p.ImportReflectionHasAssertion,e[0].loc.start)}}checkJSONModuleImport(t){if(this.isJSONModuleImport(t)&&t.type!=="ExportAllDeclaration"){let{specifiers:e}=t;if(e!=null){let s=e.find(i=>{let r;if(i.type==="ExportSpecifier"?r=i.local:i.type==="ImportSpecifier"&&(r=i.imported),r!==void 0)return r.type==="Identifier"?r.name!=="default":r.value!=="default"});s!==void 0&&this.raise(p.ImportJSONBindingNotDefault,s.loc.start)}}}isPotentialImportPhase(t){return t?!1:this.isContextual(105)||this.isContextual(97)||this.isContextual(127)}applyImportPhase(t,e,s,i){e||(s==="module"?(this.expectPlugin("importReflection",i),t.module=!0):this.hasPlugin("importReflection")&&(t.module=!1),s==="source"?(this.expectPlugin("sourcePhaseImports",i),t.phase="source"):s==="defer"?(this.expectPlugin("deferredImportEvaluation",i),t.phase="defer"):this.hasPlugin("sourcePhaseImports")&&(t.phase=null))}parseMaybeImportPhase(t,e){if(!this.isPotentialImportPhase(e))return this.applyImportPhase(t,e,null),null;let s=this.startNode(),i=this.parseIdentifierName(!0),{type:r}=this.state;return(H(r)?r!==98||this.lookaheadCharCode()===102:r!==12)?(this.applyImportPhase(t,e,i,s.loc.start),null):(this.applyImportPhase(t,e,null),this.createIdentifier(s,i))}isPrecedingIdImportPhase(t){let{type:e}=this.state;return O(e)?e!==98||this.lookaheadCharCode()===102:e!==12}parseImport(t){return this.match(134)?this.parseImportSourceAndAttributes(t):this.parseImportSpecifiersAndAfter(t,this.parseMaybeImportPhase(t,!1))}parseImportSpecifiersAndAfter(t,e){t.specifiers=[];let i=!this.maybeParseDefaultImportSpecifier(t,e)||this.eat(12),r=i&&this.maybeParseStarImportSpecifier(t);return i&&!r&&this.parseNamedImportSpecifiers(t),this.expectContextual(98),this.parseImportSourceAndAttributes(t)}parseImportSourceAndAttributes(t){var e;return(e=t.specifiers)!=null||(t.specifiers=[]),t.source=this.parseImportSource(),this.maybeParseImportAttributes(t),this.checkImportReflection(t),this.checkJSONModuleImport(t),this.semicolon(),this.sawUnambiguousESM=!0,this.finishNode(t,"ImportDeclaration")}parseImportSource(){return this.match(134)||this.unexpected(),this.parseExprAtom()}parseImportSpecifierLocal(t,e,s){e.local=this.parseIdentifier(),t.specifiers.push(this.finishImportSpecifier(e,s))}finishImportSpecifier(t,e,s=8201){return this.checkLVal(t.local,{type:e},s),this.finishNode(t,e)}parseImportAttributes(){this.expect(5);let t=[],e=new Set;do{if(this.match(8))break;let s=this.startNode(),i=this.state.value;if(e.has(i)&&this.raise(p.ModuleAttributesWithDuplicateKeys,this.state.startLoc,{key:i}),e.add(i),this.match(134)?s.key=this.parseStringLiteral(i):s.key=this.parseIdentifier(!0),this.expect(14),!this.match(134))throw this.raise(p.ModuleAttributeInvalidValue,this.state.startLoc);s.value=this.parseStringLiteral(this.state.value),t.push(this.finishNode(s,"ImportAttribute"))}while(this.eat(12));return this.expect(8),t}parseModuleAttributes(){let t=[],e=new Set;do{let s=this.startNode();if(s.key=this.parseIdentifier(!0),s.key.name!=="type"&&this.raise(p.ModuleAttributeDifferentFromType,s.key),e.has(s.key.name)&&this.raise(p.ModuleAttributesWithDuplicateKeys,s.key,{key:s.key.name}),e.add(s.key.name),this.expect(14),!this.match(134))throw this.raise(p.ModuleAttributeInvalidValue,this.state.startLoc);s.value=this.parseStringLiteral(this.state.value),t.push(this.finishNode(s,"ImportAttribute"))}while(this.eat(12));return t}maybeParseImportAttributes(t){let e;var s=!1;if(this.match(76)){if(this.hasPrecedingLineBreak()&&this.lookaheadCharCode()===40)return;this.next(),this.hasPlugin("moduleAttributes")?(e=this.parseModuleAttributes(),this.addExtra(t,"deprecatedWithLegacySyntax",!0)):e=this.parseImportAttributes(),s=!0}else this.isContextual(94)&&!this.hasPrecedingLineBreak()?(!this.hasPlugin("deprecatedImportAssert")&&!this.hasPlugin("importAssertions")&&this.raise(p.ImportAttributesUseAssert,this.state.startLoc),this.hasPlugin("importAssertions")||this.addExtra(t,"deprecatedAssertSyntax",!0),this.next(),e=this.parseImportAttributes()):e=[];!s&&this.hasPlugin("importAssertions")?t.assertions=e:t.attributes=e}maybeParseDefaultImportSpecifier(t,e){if(e){let s=this.startNodeAtNode(e);return s.local=e,t.specifiers.push(this.finishImportSpecifier(s,"ImportDefaultSpecifier")),!0}else if(H(this.state.type))return this.parseImportSpecifierLocal(t,this.startNode(),"ImportDefaultSpecifier"),!0;return!1}maybeParseStarImportSpecifier(t){if(this.match(55)){let e=this.startNode();return this.next(),this.expectContextual(93),this.parseImportSpecifierLocal(t,e,"ImportNamespaceSpecifier"),!0}return!1}parseNamedImportSpecifiers(t){let e=!0;for(this.expect(5);!this.eat(8);){if(e)e=!1;else{if(this.eat(14))throw this.raise(p.DestructureNamedImport,this.state.startLoc);if(this.expect(12),this.eat(8))break}let s=this.startNode(),i=this.match(134),r=this.isContextual(130);s.imported=this.parseModuleExportName();let n=this.parseImportSpecifier(s,i,t.importKind==="type"||t.importKind==="typeof",r,void 0);t.specifiers.push(n)}}parseImportSpecifier(t,e,s,i,r){if(this.eatContextual(93))t.local=this.parseIdentifier();else{let{imported:n}=t;if(e)throw this.raise(p.ImportBindingIsString,t,{importName:n.value});this.checkReservedWord(n.name,t.loc.start,!0,!0),t.local||(t.local=this.cloneIdentifier(n))}return this.finishImportSpecifier(t,"ImportSpecifier",r)}isThisParam(t){return t.type==="Identifier"&&t.name==="this"}},Ve=class extends St{static{u(this,"Parser")}constructor(t,e,s){let i=lr(t);super(i,e),this.options=i,this.initializeScopes(),this.plugins=s,this.filename=i.sourceFilename,this.startIndex=i.startIndex;let r=0;i.allowAwaitOutsideFunction&&(r|=1),i.allowReturnOutsideFunction&&(r|=2),i.allowImportExportEverywhere&&(r|=8),i.allowSuperOutsideMethod&&(r|=16),i.allowUndeclaredExports&&(r|=64),i.allowNewTargetOutsideFunction&&(r|=4),i.allowYieldOutsideFunction&&(r|=32),i.ranges&&(r|=128),i.tokens&&(r|=256),i.createImportExpressions&&(r|=512),i.createParenthesizedExpressions&&(r|=1024),i.errorRecovery&&(r|=2048),i.attachComment&&(r|=4096),i.annexB&&(r|=8192),this.optionFlags=r}getScopeHandler(){return Ee}parse(){this.enterInitialScopes();let t=this.startNode(),e=this.startNode();this.nextToken(),t.errors=null;let s=this.parseTopLevel(t,e);return s.errors=this.state.errors,s.comments.length=this.state.commentsLen,s}};function ua(a,t){var e;if(((e=t)==null?void 0:e.sourceType)==="unambiguous"){t=Object.assign({},t);try{t.sourceType="module";let s=we(t,a),i=s.parse();if(s.sawUnambiguousESM)return i;if(s.ambiguousScriptDifferentAst)try{return t.sourceType="script",we(t,a).parse()}catch{}else i.program.sourceType="script";return i}catch(s){try{return t.sourceType="script",we(t,a).parse()}catch{}throw s}}else return we(t,a).parse()}u(ua,"parse");function pa(a,t){let e=we(t,a);return e.options.strictMode&&(e.state.strict=!0),e.getExpression()}u(pa,"parseExpression");function fa(a){let t={};for(let e of Object.keys(a))t[e]=Z(a[e]);return t}u(fa,"generateExportedTokenTypes");var da=fa(pr);function we(a,t){let e=Ve,s=new Map;if(a!=null&&a.plugins){for(let i of a.plugins){let r,n;typeof i=="string"?r=i:[r,n]=i,s.has(r)||s.set(r,n||{})}na(s),e=ma(s)}return new e(a,t,s)}u(we,"getParser");var Zs=new Map;function ma(a){let t=[];for(let i of oa)a.has(i)&&t.push(i);let e=t.join("|"),s=Zs.get(e);if(!s){s=Ve;for(let i of t)s=pi[i](s);Zs.set(e,s)}return s}u(ma,"getParserClass");Ne.parse=ua;Ne.parseExpression=pa;Ne.tokTypes=da});import w from"node:fs";import jt from"node:os";import B from"node:path";import{execSync as Mt,spawnSync as xi}from"node:child_process";import{fileURLToPath as xa}from"node:url";var De={"epx-frame":{target:"^5.3.0",note:"Vue3 \u7248 epx-frame\uFF08\u53D1\u5E03\u540E\u586B\u5B9E\u9645\u7248\u672C\uFF1B\u89C1 docs/build-and-publish.md \xA7\u2461\uFF09"},"@vue/cli-service":{target:"~5.0.8",dev:!0},"@vue/cli-plugin-babel":{target:"~5.0.8",dev:!0},"@vue/cli-plugin-eslint":{target:"~5.0.8",dev:!0},"@vue/cli-plugin-router":{target:"~5.0.8",dev:!0},"@vue/cli-plugin-vuex":{target:"~5.0.8",dev:!0},"@vue/cli-plugin-pwa":{target:"~5.0.8",dev:!0},"vue-template-compiler":{target:null,note:"Vue3 \u65E0\u6B64\u5305 \u2192 @vue/compiler-sfc\uFF08\u968F vue \u5305\u5185\u7F6E\uFF09"},"eslint-plugin-vue":{target:"^9.33.0",dev:!0},eslint:{target:"^8.57.0",dev:!0,note:"6\u21928 \u5BF9\u9F50\u5E73\u53F0\uFF08plugin-vue9/cli-plugin-eslint5 \u7684 peer\uFF09"},"babel-eslint":{target:null,dev:!0,note:"\u5F03\u7528 \u2192 @babel/eslint-parser\uFF08lint \u914D\u7F6E\u91CD\u5EFA\u65F6\u6309\u9700\u52A0\uFF09"},"@vue/eslint-config-standard":{target:null,dev:!0,note:"v5 \u7ED1 eslint6\uFF1Blint \u914D\u7F6E\u6309\u5E73\u53F0 .eslintrc \u91CD\u5EFA"},"eslint-plugin-import":{target:null,dev:!0,note:"\u8001 standard \u5957\u4EF6\u6210\u5458\uFF0C\u968F lint \u914D\u7F6E\u91CD\u5EFA"},"eslint-plugin-node":{target:null,dev:!0,note:"\u540C\u4E0A"},"eslint-plugin-promise":{target:null,dev:!0,note:"\u540C\u4E0A"},"eslint-plugin-standard":{target:null,dev:!0,note:"\u540C\u4E0A"},"element-ui":{target:null,note:"\u2192 \u5E73\u53F0\u8FD0\u884C\u65F6\u63D0\u4F9B element-plus\uFF1B\u9879\u76EE\u5185 import \u5904\u4EBA\u5DE5\u6E05\u7406"},"babel-plugin-component":{target:null,dev:!0,note:"element-ui \u6309\u9700\u5F15\u5165\u63D2\u4EF6\uFF0C\u5F03\u7528\uFF08babel.config \u7531\u5DE5\u5177\u540C\u6B65\u6E05\u7406\uFF09"},"vue-cli-plugin-element":{target:null,dev:!0,note:"element-ui \u7684 vue-cli \u63D2\u4EF6\uFF0C\u5F03\u7528"},"babel-plugin-import":{target:null,dev:!0,note:"vant \u6309\u9700\u5F15\u5165\uFF0C\u5F03\u7528\uFF08babel.config \u7531\u5DE5\u5177\u540C\u6B65\u6E05\u7406\uFF09"},vue:{target:"^3.5.13",note:"\u82E5\u9879\u76EE\u76F4\u63A5\u4F9D\u8D56 vue"},"vue-router":{target:"^4.6.0"},vuex:{target:"^4.1.0"}},fs={webpack:"^5.97.1","webpack-cli":"^5.1.4","vue-loader":"^17.4.2",vue:"^3.5.13","babel-loader":"^9.2.1","@babel/core":"^7.26.0","@babel/preset-env":"^7.26.0","css-loader":"^6.11.0","mini-css-extract-plugin":"^2.9.2","sass-loader":"^13.3.3","clean-webpack-plugin":"^4.0.0","url-loader":"^4.1.1","file-loader":"^6.2.0"},We={"gogocode-cli":"^0.2.28","gogocode-plugin-vue":"^1.0.29","gogocode-plugin-element":"^0.0.3"},ds={"@vue/babel-plugin-jsx":"^1.2.5"},ms={"@element-plus/icons-vue":"^2.3.1"},Xe={signature_pad:"^5.1.3",sortablejs:"^1.15.7",moment:"^2.30.1","js-cookie":"^3.0.5",axios:"^1.18.1","lodash-es":"^4.17.21",lodash:"^4.17.21"},ys=['externals \u5DF2\u7531\u5DE5\u5177\u8FFD\u52A0 { vue: window.frame.Vue }\u2014\u2014Vue3 \u7F16\u8BD1\u4EA7\u7269 import "vue"\uFF0C\u8FD0\u884C\u65F6\u7531\u5E73\u53F0\u63D0\u4F9B\uFF0C\u522B\u6253\u8FDB bundle',"DefinePlugin \u7684 process.env \u4FDD\u7559\uFF08IP/BASE_* \u7531\u90E8\u7F72\u73AF\u5883\u6CE8\u5165\uFF09","browserslist/babel targets \u82E5\u542B ie\uFF08Vue3 \u4E0D\u652F\u6301 IE\uFF09\uFF0C\u5EFA\u8BAE\u66F4\u65B0\u4E3A\u73B0\u4EE3\u6D4F\u89C8\u5668"],Oe={"vue-orgchart-direction":{note:"\u7EC4\u7EC7\u67B6\u6784\u56FE\uFF08Vue2 \u7EC4\u4EF6\u5E93\uFF0C\u65E0 Vue3 \u7248\uFF09\u3002Vue3 \u4EA7\u7269\u8FD0\u884C\u65F6\u62A5 _c undefined\u3002\u5EFA\u8BAE\u6362 Vue3 \u517C\u5BB9\u7684\u7EC4\u7EC7\u67B6\u6784\u56FE\u5E93\uFF0C\u6216\u7528 SVG/canvas \u81EA\u5B9E\u73B0\u3002"},"vue-bpmn":{note:"BPMN \u6D41\u7A0B\u56FE\u7684 Vue2 \u5C01\u88C5\u7EC4\u4EF6\uFF0C\u65E0 Vue3 \u7248\u3002\u5EFA\u8BAE\u76F4\u63A5\u7528\u6846\u67B6\u65E0\u5173\u7684 bpmn-js \u81EA\u5C01\u88C5\uFF0C\u6216\u627E Vue3 \u5C01\u88C5\u3002"},"vue-quill-editor":{note:"\u5BCC\u6587\u672C\u7F16\u8F91\u5668\uFF08Vue2 \u7248\uFF0C3.x \u5DF2\u505C\u66F4\u672A\u51FA Vue3\uFF09\u3002Vue3 \u6362 @vueup/vue-quill\u3002"},vuedraggable:{note:"\u62D6\u62FD\u6392\u5E8F\uFF1A2.x \u4E3A Vue2 \u7248\u3002Vue3 \u7528\u540C\u540D vuedraggable@4\uFF08\u82E5\u9879\u76EE\u5DF2\u5347\u5230 4.x \u5219\u5FFD\u7565\u672C\u6761\uFF09\u3002"}};var Li=/import\.meta\.glob\(\s*(['"])([^'"]+)\1\s*,\s*\{\s*eager\s*:\s*true\s*\}\s*\)/;function gs(a){let t=Li.exec(String(a||""));return t?t[2]:null}u(gs,"extractGlobPattern");function Di(a){let t=String(a||""),e=t.includes("vite-plugin-lazy-lib"),s=/lazyLib\s*\(/.test(t);return e&&s?"present":e||s?"half":"absent"}u(Di,"lazyLibState");var xs=u(a=>/'/.test(a)?JSON.stringify(a):`'${a}'`,"q"),Oi=`import lazyLib from 'epx-frame/build/vite-plugin-lazy-lib.mjs'
|
|
10
|
-
|
|
11
|
-
${n}
|
|
12
|
-
|
|
13
|
-
${
|
|
14
|
-
`)
|
|
15
|
-
|
|
16
|
-
`});for(let N of["webpack.config.js","vue.config.js","babel.config.js"])a(N)!=null&&s.push({file:N,remove:!0});if(l&&/require\.context/.test(c)){let N=Bi(c);N.changed?(s.push({file:l,after:N.src}),i.push(`\u5165\u53E3 ${l} \u5DF2\u81EA\u52A8\u6539\u5199\uFF08require.context\u2192import.meta.glob\u3001files(k)\u2192files[k]\u3001require(pkg)\u2192import\uFF09\uFF1B\u8BF7\u590D\u6838\u5165\u53E3\u91CC router.addRoute / store \u6CE8\u518C / install \u7B49\u9879\u76EE\u7279\u6709\u903B\u8F91\uFF0C\u5E76\u786E\u8BA4 install \u5DF2\u662F Vue3 \u7684 install(app)\uFF08\u672A\u8FC1\u9879\u76EE\u5148\u8DD1 \u2460 --apply + \u2462 --transform-vue\uFF09\u3002`)):i.push(`\u5165\u53E3 ${l} \u7528\u4E86\u975E\u6807\u51C6 require.context \u6536\u96C6\uFF0C\u672A\u80FD\u81EA\u52A8\u6539\u5199\uFF0C\u8BF7\u624B\u52A8\u6362\u6210 import.meta.glob('${m}', { eager: true }) + Object.keys(files) \u6536\u96C6\uFF0C\u5E76\u628A require('../package.json') \u6539\u6210 import\u3002`)}let y=(a("webpack.config.js")||"")+`
|
|
17
|
-
`+(a("vue.config.js")||"");if(/sass-resources-loader/.test(y)){let N=y.match(/resources:\s*path\.resolve\([^,]*,\s*['"]([^'"]+)['"]/);i.push(`scss \u5168\u5C40\u6CE8\u5165\uFF1A\u65E7\u914D\u7F6E\u7528 sass-resources-loader \u6CE8\u5165 ${N?"`"+N[1]+"`\uFF08\u9879\u76EE\u5185\uFF09":"(\u9879\u76EE\u5185 scss)"}\uFF1Bvite.config \u6A21\u677F\u9ED8\u8BA4\u6CE8\u5165\u7684\u662F epx-frame \u6846\u67B6 mixins\u3002\u9879\u76EE\u82E5\u6709\u81EA\u5DF1\u7684\u5168\u5C40 mixins\uFF0C\u628A vite.config \u7684 css.preprocessorOptions.scss.additionalData \u6307\u8FC7\u53BB\u3002`)}/DefinePlugin/.test(y)&&/process\.env/.test(y)&&i.push("\u65E7\u914D\u7F6E\u7528 DefinePlugin \u628A process.env\uFF08IP / BASE_* \u7B49\uFF09\u7F16\u8BD1\u8FDB\u4EA7\u7269\uFF1BVite \u5F62\u6001\u6539\u7531 .env* + \u5E73\u53F0\u8FD0\u884C\u65F6 window.* \u63D0\u4F9B\uFF08\u6A21\u677F dev \u58F3\u7684 inject-window-config \u5DF2\u63A5 .env\uFF09\u3002\u6838\u5BF9\u8FD9\u4E9B\u503C\u662F\u5426\u5DF2\u7531\u5E73\u53F0\u63D0\u4F9B\uFF0C\u6216\u8FC1\u5230 .env.development\u3002");let S=y.match(/url-loader[\s\S]{0,120}?limit:\s*([0-9*\s]+)/);S&&i.push(`\u65E7\u914D\u7F6E\u7528 url-loader \u5185\u8054\u5C0F\u8D44\u6E90\uFF08limit\u2248${S[1].trim()} \u5B57\u8282\uFF09\uFF1BVite \u7528 build.assetsInlineLimit\uFF08\u9ED8\u8BA4 4096\uFF09\u3002\u9608\u503C\u5DEE\u5F02\u5927\u65F6\u5728 vite.config \u7684 build \u91CC\u8865 assetsInlineLimit\u3002`);let C=y.match(/externals:\s*([^\n]+)/);if(C){let N=["recorder","echarts","xlsx","jspdf","luckysheet","pdfjs","signature"].filter(V=>new RegExp(V,"i").test(C[1]));N.length&&i.push(`\u65E7 externals \u542B\u6A21\u677F\u9ED8\u8BA4\u672A\u8986\u76D6\u7684\u5E93\uFF1A${N.join(", ")}\u3002\u6A21\u677F\u9ED8\u8BA4 external \u4E3A vue / epx-frame / element-* / bpmn\uFF1B\u5176\u4F59\u9700\u5728 vite.config \u7684 rollupOptions.external + output.globals \u91CC\u8865\uFF08\u53C2\u8003 hr \u7684 vite.config\uFF1Arecorder-core \u2192 window.Recorder \u7684 shim \u5199\u6CD5\uFF09\u3002`)}return{changes:s,manual:i,info:{pkgName:o,dirName:f,glob:m,removedDeps:L}}}u(As,"planToVite");var ji=/import\s+(\w+)\s*,\s*\{([^}]*)\}\s*from\s*(['"])epx-frame\3/;function Ss(a){let t=String(a||""),e=ji.exec(t);if(!e)return t;let[s,i,r,n]=e,o=t.slice(0,e.index)+t.slice(e.index+s.length),l=r.split(",").map(h=>h.trim()).filter(Boolean).filter(h=>{let f=h.split(/\s+as\s+/).pop().trim();return/^[A-Za-z_$][\w$]*$/.test(f)?new RegExp(`(^|[^.\\w$])${f}\\b`).test(o):!0}),c=l.length?`import ${i}, { ${l.join(", ")} } from ${n}epx-frame${n}`:`import ${i} from ${n}epx-frame${n}`;return t.slice(0,e.index)+c+t.slice(e.index+s.length)}u(Ss,"collapseFrameImport");import Ge from"node:path";var $i=["gogocode-plugin-vue","gogocode-plugin-element"];function ws(a,t){for(let e of a||[]){if(!e)continue;let s=Ge.join(e,"node_modules"),i=Ge.join(s,"gogocode-cli","index.js");if(t(i)&&!$i.some(r=>!t(Ge.join(s,r))))return i}return null}u(ws,"findGogocode");function Ri({projectDir:a,toolDir:t,cacheDir:e}){return[a,t,e].filter(Boolean)}u(Ri,"gogocodeRoots");function Is({projectDir:a,toolDir:t,cacheDir:e,versions:s,exists:i,install:r,log:n}){let o=n||(()=>{}),l=Ri({projectDir:a,toolDir:t,cacheDir:e}),c=ws(l,i);if(c)return{cli:c,installed:!1};let h=Object.entries(s||{}).map(([d,m])=>`${d}@${m}`);if(!h.length)return{cli:null,installed:!1,error:"\u6CA1\u6709\u53EF\u5B89\u88C5\u7684 gogocode \u7248\u672C\u6E05\u5355"};o(` \xB7 \u672A\u627E\u5230 gogocode\uFF0C\u6B63\u5728\u88C5\u8FDB\u7F13\u5B58\u76EE\u5F55\uFF08\u7EA6 149 \u4E2A\u5305\uFF0C\u9996\u6B21\u51E0\u5341\u79D2\uFF0C\u4E4B\u540E\u590D\u7528\uFF09\uFF1A
|
|
18
|
-
${e}`);try{r({cacheDir:e,specs:h})}catch(d){return{cli:null,installed:!1,error:String(d&&d.message||d).slice(0,200)}}let f=ws([e],i);return f?{cli:f,installed:!0}:{cli:null,installed:!0,error:"\u5B89\u88C5\u5B8C\u6210\u4F46\u4ECD\u89E3\u6790\u4E0D\u5230 gogocode\uFF08\u7F13\u5B58\u76EE\u5F55\u5E03\u5C40\u5F02\u5E38\uFF1F\uFF09"}}u(Is,"ensureGogocode");var _i=[".vue",".js",".jsx",".ts",".tsx"],Ui=u(a=>_i.some(t=>a.toLowerCase().endsWith(t)),"isSource");function Cs(a,t,e,s){let i=e,r=s,n=0,o=u((l,c)=>{let h;try{h=i.readdirSync(l,{withFileTypes:!0})}catch{return}for(let f of h){let d=r.join(l,f.name),m=r.join(c,f.name);f.isDirectory()?o(d,m):Ui(f.name)&&(i.mkdirSync(r.dirname(m),{recursive:!0}),i.copyFileSync(d,m),n++)}},"walk");return o(a,t),n}u(Cs,"copyBackSources");var Es=/(install\s*=\s*function\s*\()\s*Vue\s*(\s*(?:,[^)]*)?\))/,vs=/(\binstall\s*\()\s*Vue\s*(\s*(?:,[^)]*)?\)\s*\{)/;function Vi(a){let t=String(a||"");return Es.test(t)?t.replace(Es,"$1app$2"):vs.test(t)?t.replace(vs,"$1app$2"):t}u(Vi,"renameInstallParam");var zi=u(a=>/install\s*=\s*function\s*\(\s*app\b/.test(String(a||""))||/\binstall\s*\(\s*app\b/.test(String(a||"")),"hasAppParam");function qi(a){return String(a||"").replace(/\bVue\.prototype\.(\$?[\w$]+)/g,"app.config.globalProperties.$1").replace(/\bVue\.(component|use|directive|mixin|provide)\b/g,"app.$1")}u(qi,"rewriteVueGlobals");function Hi(a){return String(a||"").replace(/\bwindow\.\$vueApp\b/g,"app")}u(Hi,"rewriteVueAppGlobal");function Ns(a){let t=Vi(a);return zi(t)&&(t=qi(t)),t=Hi(t),t}u(Ns,"codemodLibEntry");var Ki=/[;,{([<>=&|?:.+\-*/]$/,Ji=/^(=>|\?|:|\.|\)|\]|\}|,|&&|\|\||\+|-|\*|\/|=)/,Wi=/[)\]\w'"`]$/;function Xi(a){if(!/\n/.test(a))return{val:a,n:0};let t=a.split(`
|
|
19
|
-
`),e=0;for(let s=0;s<t.length-1;s++){let i=t[s].replace(/\s+$/,"");if(!i.trimStart())continue;let n=(t.slice(s+1).find(o=>o.trim())||"").trim();n&&(Ki.test(i)||Ji.test(n)||Wi.test(i)&&(t[s]=i+";",e++))}return{val:t.join(`
|
|
20
|
-
`),n:e}}u(Xi,"fixValue");function ks(a){let t=0;return{src:a.replace(/(?:v-bind)?:([\w-]+)\.sync="([^"]*)"/g,(s,i,r)=>(t++,`v-model:${i}="${r}"`)),count:t}}u(ks,"fixSyncModifier");function Ls(a){let t=0;return{src:a.replace(/((?:@|v-on:)[\w.:-]+=")([^"]*)(")/g,(s,i,r,n)=>{let o=Xi(r);return t+=o.n,i+o.val+n}),count:t}}u(Ls,"fixInlineHandlers");function Ds(a){return a.startsWith("el-icon-")?a:"el-icon-"+a.replace(/^ElIcon/,"").replace(/([a-z0-9])([A-Z])/g,"$1-$2").replace(/([A-Z])([A-Z][a-z])/g,"$1-$2").toLowerCase()}u(Ds,"toCssClass");function Os(a){let t=0,e=a;return e=e.replace(/import\s*\{[\s\S]*?\}\s*from\s*['"]@element-plus\/icons-vue['"];?[ \t]*\r?\n?/g,()=>(t++,"")),e=e.replace(/<el-icon\b[^>]*>\s*<(el-icon-[\w-]+|ElIcon[A-Za-z0-9]+)\s*\/>\s*<\/el-icon>/g,(s,i)=>(t++,`<i class="${Ds(i)}"></i>`)),e=e.replace(/<(ElIcon[A-Za-z0-9]+)\s*\/>/g,(s,i)=>(t++,`<i class="${Ds(i)}"></i>`)),e=e.replace(/^[ \t]*ElIcon[A-Za-z0-9]+,[ \t]*\r?\n/gm,()=>(t++,"")),{src:e,count:t}}u(Os,"fixElIcon");var Gi=new Set(["vue","vuex","vue-router"]);function Ms(a){let t=a,e=0,s=/import\s*\*\s*as\s+([A-Za-z_$][\w$]*)\s+from\s+['"]([^'"]+)['"]\s*;?[ \t]*\r?\n?/g,i=[...t.matchAll(s)].filter(r=>Gi.has(r[2]));for(let r of i){let n=r[0],o=r[1],l=r[2],c=new RegExp("\\b"+o+"\\.([A-Za-z_$][\\w$]*)","g"),h=new Set,f;for(;f=c.exec(t);)h.add(f[1]);if(h.size===0)t=t.replace(n,"");else{let d=[...h].join(", ");t=t.replace(n,`import { ${d} } from '${l}'
|
|
21
|
-
`),t=t.replace(new RegExp("\\b"+o+"\\.([A-Za-z_$][\\w$]*)","g"),"$1")}e++}return{src:t,count:e}}u(Ms,"fixNamespaceImport");function Yi(a){let t=a,e=0,s=/(\b(?:const|let|var)\s+([A-Za-z_$][\w$]*)\s*=\s*)require\.context\(\s*(['"])([^'"]+)\3\s*,\s*(true|false)\s*,\s*\/([^/]+)\/\s*\)/g,i=[...t.matchAll(s)];for(let r of i){let n=r[0],o=r[1],l=r[2],c=r[4],h=r[5],d=r[6].match(/\\?\.([a-zA-Z0-9]+)\$?$/),m=d?"."+d[1]:".*",g=c.replace(/\/+$/,"")+(h==="true"?"/**/*":"/*")+m;t=t.replace(n,`${o}import.meta.glob('${g}', { eager: true })`),t=t.replace(new RegExp("\\b"+l+"\\.keys\\(\\)","g"),`Object.keys(${l})`),t=t.replace(new RegExp("\\b"+l+"\\(\\s*([A-Za-z_$][\\w$]*)\\s*\\)","g"),`${l}[$1]`),e++}return{src:t,count:e}}u(Yi,"fixRequireContext");function Fs(a){let t=/require\(\s*(['"])((?:@\/|\.\.?\/)[^'"]+\.(?:png|jpe?g|gif|svg|webp|bmp|ico))\1\s*\)/gi,e=new Map,s=u(o=>{if(e.has(o))return e.get(o);let c="__img_"+((o.split("/").pop()||"asset").replace(/\.[^.]+$/,"").replace(/[^A-Za-z0-9]/g,"_")||"x"),h=c,f=1,d=new Set(e.values());for(;d.has(h);)h=c+"_"+f++;return e.set(o,h),h},"mkVar"),i=0,r=a.replace(t,(o,l,c)=>(i++,s(c))),n=[...e.entries()].map(([o,l])=>`import ${l} from '${o}'`).join(`
|
|
22
|
-
`);return{body:r,imports:n,count:i}}u(Fs,"collectRequireAsset");function Bs(a,t={}){let e=!!t.isVue,s=0,i=!1,r=a,n=Yi(r);if(r=n.src,s+=n.count,e){let o=r.match(/(<script(?:\s[^>]*)?>)([\s\S]*?)(<\/script>)/);if(o){let l=Fs(o[2]);if(l.count){let h=`
|
|
2
|
+
import{a as Ee}from"../chunks/AMQWUBTZ.mjs";import{a as Ie}from"../chunks/PP5RD4RH.mjs";import{a as Se}from"../chunks/SH6LMMHZ.mjs";import{a as g,c as ke}from"../chunks/H4POBCHI.mjs";import v from"node:fs";import ye from"node:os";import A from"node:path";import{execSync as me,spawnSync as st}from"node:child_process";import{fileURLToPath as Gt}from"node:url";var ee={"epx-frame":{target:"^5.3.0",note:"Vue3 \u7248 epx-frame\uFF08\u53D1\u5E03\u540E\u586B\u5B9E\u9645\u7248\u672C\uFF1B\u89C1 docs/build-and-publish.md \xA7\u2461\uFF09"},"@vue/cli-service":{target:"~5.0.8",dev:!0},"@vue/cli-plugin-babel":{target:"~5.0.8",dev:!0},"@vue/cli-plugin-eslint":{target:"~5.0.8",dev:!0},"@vue/cli-plugin-router":{target:"~5.0.8",dev:!0},"@vue/cli-plugin-vuex":{target:"~5.0.8",dev:!0},"@vue/cli-plugin-pwa":{target:"~5.0.8",dev:!0},"vue-template-compiler":{target:null,note:"Vue3 \u65E0\u6B64\u5305 \u2192 @vue/compiler-sfc\uFF08\u968F vue \u5305\u5185\u7F6E\uFF09"},"eslint-plugin-vue":{target:"^9.33.0",dev:!0},eslint:{target:"^8.57.0",dev:!0,note:"6\u21928 \u5BF9\u9F50\u5E73\u53F0\uFF08plugin-vue9/cli-plugin-eslint5 \u7684 peer\uFF09"},"babel-eslint":{target:null,dev:!0,note:"\u5F03\u7528 \u2192 @babel/eslint-parser\uFF08lint \u914D\u7F6E\u91CD\u5EFA\u65F6\u6309\u9700\u52A0\uFF09"},"@vue/eslint-config-standard":{target:null,dev:!0,note:"v5 \u7ED1 eslint6\uFF1Blint \u914D\u7F6E\u6309\u5E73\u53F0 .eslintrc \u91CD\u5EFA"},"eslint-plugin-import":{target:null,dev:!0,note:"\u8001 standard \u5957\u4EF6\u6210\u5458\uFF0C\u968F lint \u914D\u7F6E\u91CD\u5EFA"},"eslint-plugin-node":{target:null,dev:!0,note:"\u540C\u4E0A"},"eslint-plugin-promise":{target:null,dev:!0,note:"\u540C\u4E0A"},"eslint-plugin-standard":{target:null,dev:!0,note:"\u540C\u4E0A"},"element-ui":{target:null,note:"\u2192 \u5E73\u53F0\u8FD0\u884C\u65F6\u63D0\u4F9B element-plus\uFF1B\u9879\u76EE\u5185 import \u5904\u4EBA\u5DE5\u6E05\u7406"},"babel-plugin-component":{target:null,dev:!0,note:"element-ui \u6309\u9700\u5F15\u5165\u63D2\u4EF6\uFF0C\u5F03\u7528\uFF08babel.config \u7531\u5DE5\u5177\u540C\u6B65\u6E05\u7406\uFF09"},"vue-cli-plugin-element":{target:null,dev:!0,note:"element-ui \u7684 vue-cli \u63D2\u4EF6\uFF0C\u5F03\u7528"},"babel-plugin-import":{target:null,dev:!0,note:"vant \u6309\u9700\u5F15\u5165\uFF0C\u5F03\u7528\uFF08babel.config \u7531\u5DE5\u5177\u540C\u6B65\u6E05\u7406\uFF09"},vue:{target:"^3.5.13",note:"\u82E5\u9879\u76EE\u76F4\u63A5\u4F9D\u8D56 vue"},"vue-router":{target:"^4.6.0"},vuex:{target:"^4.1.0"}},Ce={webpack:"^5.97.1","webpack-cli":"^5.1.4","vue-loader":"^17.4.2",vue:"^3.5.13","babel-loader":"^9.2.1","@babel/core":"^7.26.0","@babel/preset-env":"^7.26.0","css-loader":"^6.11.0","mini-css-extract-plugin":"^2.9.2","sass-loader":"^13.3.3","clean-webpack-plugin":"^4.0.0","url-loader":"^4.1.1","file-loader":"^6.2.0"},re={"gogocode-cli":"^0.2.28","gogocode-plugin-vue":"^1.0.29","gogocode-plugin-element":"^0.0.3"},Pe={"@vue/babel-plugin-jsx":"^1.2.5"},Fe={"@element-plus/icons-vue":"^2.3.1"},ae={signature_pad:"^5.1.3",sortablejs:"^1.15.7",moment:"^2.30.1","js-cookie":"^3.0.5",axios:"^1.18.1","lodash-es":"^4.17.21",lodash:"^4.17.21"},Ae=['externals \u5DF2\u7531\u5DE5\u5177\u8FFD\u52A0 { vue: window.frame.Vue }\u2014\u2014Vue3 \u7F16\u8BD1\u4EA7\u7269 import "vue"\uFF0C\u8FD0\u884C\u65F6\u7531\u5E73\u53F0\u63D0\u4F9B\uFF0C\u522B\u6253\u8FDB bundle',"DefinePlugin \u7684 process.env \u4FDD\u7559\uFF08IP/BASE_* \u7531\u90E8\u7F72\u73AF\u5883\u6CE8\u5165\uFF09","browserslist/babel targets \u82E5\u542B ie\uFF08Vue3 \u4E0D\u652F\u6301 IE\uFF09\uFF0C\u5EFA\u8BAE\u66F4\u65B0\u4E3A\u73B0\u4EE3\u6D4F\u89C8\u5668"],te={"vue-orgchart-direction":{note:"\u7EC4\u7EC7\u67B6\u6784\u56FE\uFF08Vue2 \u7EC4\u4EF6\u5E93\uFF0C\u65E0 Vue3 \u7248\uFF09\u3002Vue3 \u4EA7\u7269\u8FD0\u884C\u65F6\u62A5 _c undefined\u3002\u5EFA\u8BAE\u6362 Vue3 \u517C\u5BB9\u7684\u7EC4\u7EC7\u67B6\u6784\u56FE\u5E93\uFF0C\u6216\u7528 SVG/canvas \u81EA\u5B9E\u73B0\u3002"},"vue-bpmn":{note:"BPMN \u6D41\u7A0B\u56FE\u7684 Vue2 \u5C01\u88C5\u7EC4\u4EF6\uFF0C\u65E0 Vue3 \u7248\u3002\u5EFA\u8BAE\u76F4\u63A5\u7528\u6846\u67B6\u65E0\u5173\u7684 bpmn-js \u81EA\u5C01\u88C5\uFF0C\u6216\u627E Vue3 \u5C01\u88C5\u3002"},"vue-quill-editor":{note:"\u5BCC\u6587\u672C\u7F16\u8F91\u5668\uFF08Vue2 \u7248\uFF0C3.x \u5DF2\u505C\u66F4\u672A\u51FA Vue3\uFF09\u3002Vue3 \u6362 @vueup/vue-quill\u3002"},vuedraggable:{note:"\u62D6\u62FD\u6392\u5E8F\uFF1A2.x \u4E3A Vue2 \u7248\u3002Vue3 \u7528\u540C\u540D vuedraggable@4\uFF08\u82E5\u9879\u76EE\u5DF2\u5347\u5230 4.x \u5219\u5FFD\u7565\u672C\u6761\uFF09\u3002"}};var dt=/import\.meta\.glob\(\s*(['"])([^'"]+)\1\s*,\s*\{\s*eager\s*:\s*true\s*\}\s*\)/;function Le(e){let t=dt.exec(String(e||""));return t?t[2]:null}g(Le,"extractGlobPattern");function xt(e){let t=String(e||""),n=t.includes("vite-plugin-lazy-lib"),o=/lazyLib\s*\(/.test(t);return n&&o?"present":n||o?"half":"absent"}g(xt,"lazyLibState");var $e=g(e=>/'/.test(e)?JSON.stringify(e):`'${e}'`,"q"),ft=`import lazyLib from 'epx-frame/build/vite-plugin-lazy-lib.mjs'
|
|
3
|
+
`,yt=/^([ \t]*)frameDeps\s*\(\s*\)\s*,?[^\n]*$/m;function Te(e,{glob:t,pkgName:n}){let o=String(e||""),p=xt(o);if(p!=="absent")return{src:o,status:p};let i=yt.exec(o);if(!i)return{src:o,status:"no-anchor"};let s=i[1],a=`
|
|
4
|
+
${s}// \u6253\u5305\u5F62\u6001\uFF1A\u9ED8\u8BA4\u6574\u4F53\u5355\u4F53\uFF08\u4E0E\u5386\u53F2\u4E00\u81F4\uFF09\u3002npm run build:lib:lazy \u5207\u5230\u300C\u6E05\u5355 + \u7EC4\u4EF6\u6309\u9700\u52A0\u8F7D\u300D\uFF0C
|
|
5
|
+
${s}// \u90E8\u7F72\u65F6\u5FC5\u987B\u4E0A\u4F20\u6574\u4E2A lib/ \u76EE\u5F55\uFF08\u4E0D\u518D\u662F index.js + index.css \u4E24\u4E2A\u6587\u4EF6\uFF09\u3002
|
|
6
|
+
${s}lazyLib({ enabled: process.env.LAZY_LIB === 'true', glob: ${$e(t)}, pkgName: ${$e(n)} }),`,l=o.slice(0,i.index+i[0].length)+a+o.slice(i.index+i[0].length),c=0;if(l.startsWith("#!")){let S=l.indexOf(`
|
|
7
|
+
`);c=S===-1?l.length:S+1}let d=/^([ \t]*\/\/[^\n]*\r?\n|[ \t]*\r?\n)/,y;for(;y=l.slice(c).match(d);)c+=y[0].length;return l=l.slice(0,c)+ft+l.slice(c),{src:l,status:"injected"}}g(Te,"injectLazyLib");function we(e){let t=e||{},n={...t,scripts:{...t.scripts||{}}},o=!1;n.scripts["build:lib:lazy"]||(n.scripts["build:lib:lazy"]="cross-env LAZY_LIB=true vite build",o=!0);let p=!!(t.dependencies||{})["cross-env"],i=!!(t.devDependencies||{})["cross-env"];return!p&&!i?(n.devDependencies={...t.devDependencies||{},"cross-env":"^7.0.3"},o=!0):t.devDependencies&&(n.devDependencies={...t.devDependencies}),{pkg:n,changed:o}}g(we,"addLazyScripts");import{TEMPLATES as Me}from"../epx-create/scaffold.mjs";var bt=["webpack","webpack-cli","webpack-merge","vue-loader","vue-template-compiler","css-loader","sass-loader","sass-resources-loader","style-loader","postcss-loader","node-sass","fibers","mini-css-extract-plugin","clean-webpack-plugin","progress-bar-webpack-plugin","url-loader","file-loader","raw-loader","babel-loader","@babel/core","@babel/preset-env","@vue/cli-service","@vue/cli-plugin-babel","@vue/cli-plugin-router","@vue/cli-plugin-vuex","@vue/cli-plugin-eslint","@vue/cli-plugin-pwa"];function vt(e){let t=e,n=!1,o=/require\.context\(\s*['"]@\/([^'"]+)['"]\s*,\s*true\s*,\s*\/\\?\.vue\$?\/\s*\)/,p=t.match(o);return p&&(t=t.replace(o,`import.meta.glob('./${p[1]}/**/*.vue', { eager: true })`),n=!0),/\bfiles\.keys\(\)/.test(t)&&(t=t.replace(/\bfiles\.keys\(\)/g,"Object.keys(files)"),n=!0),/\bfiles\(([\w$]+)\)/.test(t)&&(t=t.replace(/\bfiles\(([\w$]+)\)/g,"files[$1]"),n=!0),/require\(\s*['"]\.\.\/package\.json['"]\s*\)/.test(t)&&(t=t.replace(/require\(\s*['"]\.\.\/package\.json['"]\s*\)/g,"pkg"),/import\s+pkg\s+from\s+['"]\.\.\/package\.json['"]/.test(t)||(t=`import pkg from '../package.json'
|
|
8
|
+
`+t),n=!0),{src:t,changed:n}}g(vt,"viteEntryCodemod");function je({read:e,epxFrameSpec:t,basePkgRaw:n}){let o=[],p=[],i=n||e("package.json");if(!i)return{changes:o,manual:["\u65E0 package.json\uFF0C\u65E0\u6CD5\u505A vite \u5316"],info:{}};let s;try{s=JSON.parse(i)}catch(u){return{changes:o,manual:["package.json \u89E3\u6790\u5931\u8D25\uFF1A"+u.message],info:{}}}let a=String(s.name||"").toLowerCase(),l=["src/index.js","index.js"].find(u=>e(u)!=null),c=l?e(l):"",d=/import\.meta\.glob/.test(c),y=null,S=c.match(/require\.context\(\s*['"]@\/([^'"]+)['"]/);if(S)y=S[1];else if(d){let u=c.match(/import\.meta\.glob\(\s*['"]\.\/([^/'"]+)\//);u&&(y=u[1])}y||(y=a,p.push("\u5165\u53E3\u672A\u7528 require.context(@/X)\uFF0C\u65E0\u6CD5\u81EA\u52A8\u786E\u5B9A\u7EC4\u4EF6\u76EE\u5F55\u540D\uFF1B\u5DF2\u6309\u5305\u540D\u515C\u5E95\u586B vite.config \u7684 glob\uFF0C\u8BF7\u6838\u5BF9 lazyLib \u7684 glob \u4E0E\u5165\u53E3 import.meta.glob \u9010\u5B57\u4E00\u81F4\u3002"));let P=`./${y}/**/*.vue`;if(e("vite.config.mjs")!=null||e("vite.config.js")!=null||e("vite.config.ts")!=null)p.push("\u5DF2\u5B58\u5728 vite.config.*\uFF0C\u672A\u8986\u76D6\u3002\u82E5\u8981\u6309\u6A21\u677F\u91CD\u5EFA\uFF0C\u5148\u5220\u9664\u73B0\u6709 vite.config.* \u518D\u91CD\u8DD1 --to-vite\u3002");else{let u=Me["vite.config.mjs"].replaceAll("__NAME__",a).replaceAll("__DIRNAME__",y);o.push({file:"vite.config.mjs",after:u})}let x=t||s.dependencies&&s.dependencies["epx-frame"]||"^5.3.0",h=JSON.parse(Me["package.json"].replaceAll("__NAME__",a).replaceAll("__EPX_FRAME__",x));s.runtime=h.runtime,s.scripts={...s.scripts||{},...h.scripts},s.devDependencies=s.devDependencies||{};for(let[u,k]of Object.entries(h.devDependencies))s.devDependencies[u]=k;let I=[];for(let u of["dependencies","devDependencies"])if(s[u])for(let k of Object.keys(s[u]))bt.includes(k)&&(delete s[u][k],I.push(k));o.push({file:"package.json",after:JSON.stringify(s,null,2)+`
|
|
9
|
+
`});for(let u of["webpack.config.js","vue.config.js","babel.config.js"])e(u)!=null&&o.push({file:u,remove:!0});if(l&&/require\.context/.test(c)){let u=vt(c);u.changed?(o.push({file:l,after:u.src}),p.push(`\u5165\u53E3 ${l} \u5DF2\u81EA\u52A8\u6539\u5199\uFF08require.context\u2192import.meta.glob\u3001files(k)\u2192files[k]\u3001require(pkg)\u2192import\uFF09\uFF1B\u8BF7\u590D\u6838\u5165\u53E3\u91CC router.addRoute / store \u6CE8\u518C / install \u7B49\u9879\u76EE\u7279\u6709\u903B\u8F91\uFF0C\u5E76\u786E\u8BA4 install \u5DF2\u662F Vue3 \u7684 install(app)\uFF08\u672A\u8FC1\u9879\u76EE\u5148\u8DD1 \u2460 --apply + \u2462 --transform-vue\uFF09\u3002`)):p.push(`\u5165\u53E3 ${l} \u7528\u4E86\u975E\u6807\u51C6 require.context \u6536\u96C6\uFF0C\u672A\u80FD\u81EA\u52A8\u6539\u5199\uFF0C\u8BF7\u624B\u52A8\u6362\u6210 import.meta.glob('${P}', { eager: true }) + Object.keys(files) \u6536\u96C6\uFF0C\u5E76\u628A require('../package.json') \u6539\u6210 import\u3002`)}let r=(e("webpack.config.js")||"")+`
|
|
10
|
+
`+(e("vue.config.js")||"");if(/sass-resources-loader/.test(r)){let u=r.match(/resources:\s*path\.resolve\([^,]*,\s*['"]([^'"]+)['"]/);p.push(`scss \u5168\u5C40\u6CE8\u5165\uFF1A\u65E7\u914D\u7F6E\u7528 sass-resources-loader \u6CE8\u5165 ${u?"`"+u[1]+"`\uFF08\u9879\u76EE\u5185\uFF09":"(\u9879\u76EE\u5185 scss)"}\uFF1Bvite.config \u6A21\u677F\u9ED8\u8BA4\u6CE8\u5165\u7684\u662F epx-frame \u6846\u67B6 mixins\u3002\u9879\u76EE\u82E5\u6709\u81EA\u5DF1\u7684\u5168\u5C40 mixins\uFF0C\u628A vite.config \u7684 css.preprocessorOptions.scss.additionalData \u6307\u8FC7\u53BB\u3002`)}/DefinePlugin/.test(r)&&/process\.env/.test(r)&&p.push("\u65E7\u914D\u7F6E\u7528 DefinePlugin \u628A process.env\uFF08IP / BASE_* \u7B49\uFF09\u7F16\u8BD1\u8FDB\u4EA7\u7269\uFF1BVite \u5F62\u6001\u6539\u7531 .env* + \u5E73\u53F0\u8FD0\u884C\u65F6 window.* \u63D0\u4F9B\uFF08\u6A21\u677F dev \u58F3\u7684 inject-window-config \u5DF2\u63A5 .env\uFF09\u3002\u6838\u5BF9\u8FD9\u4E9B\u503C\u662F\u5426\u5DF2\u7531\u5E73\u53F0\u63D0\u4F9B\uFF0C\u6216\u8FC1\u5230 .env.development\u3002");let b=r.match(/url-loader[\s\S]{0,120}?limit:\s*([0-9*\s]+)/);b&&p.push(`\u65E7\u914D\u7F6E\u7528 url-loader \u5185\u8054\u5C0F\u8D44\u6E90\uFF08limit\u2248${b[1].trim()} \u5B57\u8282\uFF09\uFF1BVite \u7528 build.assetsInlineLimit\uFF08\u9ED8\u8BA4 4096\uFF09\u3002\u9608\u503C\u5DEE\u5F02\u5927\u65F6\u5728 vite.config \u7684 build \u91CC\u8865 assetsInlineLimit\u3002`);let f=r.match(/externals:\s*([^\n]+)/);if(f){let u=["recorder","echarts","xlsx","jspdf","luckysheet","pdfjs","signature"].filter(k=>new RegExp(k,"i").test(f[1]));u.length&&p.push(`\u65E7 externals \u542B\u6A21\u677F\u9ED8\u8BA4\u672A\u8986\u76D6\u7684\u5E93\uFF1A${u.join(", ")}\u3002\u6A21\u677F\u9ED8\u8BA4 external \u4E3A vue / epx-frame / element-* / bpmn\uFF1B\u5176\u4F59\u9700\u5728 vite.config \u7684 rollupOptions.external + output.globals \u91CC\u8865\uFF08\u53C2\u8003 hr \u7684 vite.config\uFF1Arecorder-core \u2192 window.Recorder \u7684 shim \u5199\u6CD5\uFF09\u3002`)}return{changes:o,manual:p,info:{pkgName:a,dirName:y,glob:P,removedDeps:I}}}g(je,"planToVite");var ht=/import\s+(\w+)\s*,\s*\{([^}]*)\}\s*from\s*(['"])epx-frame\3/;function Re(e){let t=String(e||""),n=ht.exec(t);if(!n)return t;let[o,p,i,s]=n,a=t.slice(0,n.index)+t.slice(n.index+o.length),l=i.split(",").map(d=>d.trim()).filter(Boolean).filter(d=>{let y=d.split(/\s+as\s+/).pop().trim();return/^[A-Za-z_$][\w$]*$/.test(y)?new RegExp(`(^|[^.\\w$])${y}\\b`).test(a):!0}),c=l.length?`import ${p}, { ${l.join(", ")} } from ${s}epx-frame${s}`:`import ${p} from ${s}epx-frame${s}`;return t.slice(0,n.index)+c+t.slice(n.index+o.length)}g(Re,"collapseFrameImport");import ce from"node:path";var kt=["gogocode-plugin-vue","gogocode-plugin-element"];function _e(e,t){for(let n of e||[]){if(!n)continue;let o=ce.join(n,"node_modules"),p=ce.join(o,"gogocode-cli","index.js");if(t(p)&&!kt.some(i=>!t(ce.join(o,i))))return p}return null}g(_e,"findGogocode");function St({projectDir:e,toolDir:t,cacheDir:n}){return[e,t,n].filter(Boolean)}g(St,"gogocodeRoots");function De({projectDir:e,toolDir:t,cacheDir:n,versions:o,exists:p,install:i,log:s}){let a=s||(()=>{}),l=St({projectDir:e,toolDir:t,cacheDir:n}),c=_e(l,p);if(c)return{cli:c,installed:!1};let d=Object.entries(o||{}).map(([S,P])=>`${S}@${P}`);if(!d.length)return{cli:null,installed:!1,error:"\u6CA1\u6709\u53EF\u5B89\u88C5\u7684 gogocode \u7248\u672C\u6E05\u5355"};a(` \xB7 \u672A\u627E\u5230 gogocode\uFF0C\u6B63\u5728\u88C5\u8FDB\u7F13\u5B58\u76EE\u5F55\uFF08\u7EA6 149 \u4E2A\u5305\uFF0C\u9996\u6B21\u51E0\u5341\u79D2\uFF0C\u4E4B\u540E\u590D\u7528\uFF09\uFF1A
|
|
11
|
+
${n}`);try{i({cacheDir:n,specs:d})}catch(S){return{cli:null,installed:!1,error:String(S&&S.message||S).slice(0,200)}}let y=_e([n],p);return y?{cli:y,installed:!0}:{cli:null,installed:!0,error:"\u5B89\u88C5\u5B8C\u6210\u4F46\u4ECD\u89E3\u6790\u4E0D\u5230 gogocode\uFF08\u7F13\u5B58\u76EE\u5F55\u5E03\u5C40\u5F02\u5E38\uFF1F\uFF09"}}g(De,"ensureGogocode");var Et=[".vue",".js",".jsx",".ts",".tsx"],It=g(e=>Et.some(t=>e.toLowerCase().endsWith(t)),"isSource");function Ne(e,t,n,o){let p=n,i=o,s=0,a=g((l,c)=>{let d;try{d=p.readdirSync(l,{withFileTypes:!0})}catch{return}for(let y of d){let S=i.join(l,y.name),P=i.join(c,y.name);y.isDirectory()?a(S,P):It(y.name)&&(p.mkdirSync(i.dirname(P),{recursive:!0}),p.copyFileSync(S,P),s++)}},"walk");return a(e,t),s}g(Ne,"copyBackSources");var Ve=/(install\s*=\s*function\s*\()\s*Vue\s*(\s*(?:,[^)]*)?\))/,Oe=/(\binstall\s*\()\s*Vue\s*(\s*(?:,[^)]*)?\)\s*\{)/;function Ct(e){let t=String(e||"");return Ve.test(t)?t.replace(Ve,"$1app$2"):Oe.test(t)?t.replace(Oe,"$1app$2"):t}g(Ct,"renameInstallParam");var Pt=g(e=>/install\s*=\s*function\s*\(\s*app\b/.test(String(e||""))||/\binstall\s*\(\s*app\b/.test(String(e||"")),"hasAppParam");function Ft(e){return String(e||"").replace(/\bVue\.prototype\.(\$?[\w$]+)/g,"app.config.globalProperties.$1").replace(/\bVue\.(component|use|directive|mixin|provide)\b/g,"app.$1")}g(Ft,"rewriteVueGlobals");function At(e){return String(e||"").replace(/\bwindow\.\$vueApp\b/g,"app")}g(At,"rewriteVueAppGlobal");function Be(e){let t=Ct(e);return Pt(t)&&(t=Ft(t)),t=At(t),t}g(Be,"codemodLibEntry");var $t=/[;,{([<>=&|?:.+\-*/]$/,Lt=/^(=>|\?|:|\.|\)|\]|\}|,|&&|\|\||\+|-|\*|\/|=)/,Tt=/[)\]\w'"`]$/;function wt(e){if(!/\n/.test(e))return{val:e,n:0};let t=e.split(`
|
|
12
|
+
`),n=0;for(let o=0;o<t.length-1;o++){let p=t[o].replace(/\s+$/,"");if(!p.trimStart())continue;let s=(t.slice(o+1).find(a=>a.trim())||"").trim();s&&($t.test(p)||Lt.test(s)||Tt.test(p)&&(t[o]=p+";",n++))}return{val:t.join(`
|
|
13
|
+
`),n}}g(wt,"fixValue");function Ge(e){let t=0;return{src:e.replace(/(?:v-bind)?:([\w-]+)\.sync="([^"]*)"/g,(o,p,i)=>(t++,`v-model:${p}="${i}"`)),count:t}}g(Ge,"fixSyncModifier");function Ue(e){let t=0;return{src:e.replace(/((?:@|v-on:)[\w.:-]+=")([^"]*)(")/g,(o,p,i,s)=>{let a=wt(i);return t+=a.n,p+a.val+s}),count:t}}g(Ue,"fixInlineHandlers");function He(e){return e.startsWith("el-icon-")?e:"el-icon-"+e.replace(/^ElIcon/,"").replace(/([a-z0-9])([A-Z])/g,"$1-$2").replace(/([A-Z])([A-Z][a-z])/g,"$1-$2").toLowerCase()}g(He,"toCssClass");function ze(e){let t=0,n=e;return n=n.replace(/import\s*\{[\s\S]*?\}\s*from\s*['"]@element-plus\/icons-vue['"];?[ \t]*\r?\n?/g,()=>(t++,"")),n=n.replace(/<el-icon\b[^>]*>\s*<(el-icon-[\w-]+|ElIcon[A-Za-z0-9]+)\s*\/>\s*<\/el-icon>/g,(o,p)=>(t++,`<i class="${He(p)}"></i>`)),n=n.replace(/<(ElIcon[A-Za-z0-9]+)\s*\/>/g,(o,p)=>(t++,`<i class="${He(p)}"></i>`)),n=n.replace(/^[ \t]*ElIcon[A-Za-z0-9]+,[ \t]*\r?\n/gm,()=>(t++,"")),{src:n,count:t}}g(ze,"fixElIcon");var Mt=new Set(["vue","vuex","vue-router"]);function We(e){let t=e,n=0,o=/import\s*\*\s*as\s+([A-Za-z_$][\w$]*)\s+from\s+['"]([^'"]+)['"]\s*;?[ \t]*\r?\n?/g,p=[...t.matchAll(o)].filter(i=>Mt.has(i[2]));for(let i of p){let s=i[0],a=i[1],l=i[2],c=new RegExp("\\b"+a+"\\.([A-Za-z_$][\\w$]*)","g"),d=new Set,y;for(;y=c.exec(t);)d.add(y[1]);if(d.size===0)t=t.replace(s,"");else{let S=[...d].join(", ");t=t.replace(s,`import { ${S} } from '${l}'
|
|
14
|
+
`),t=t.replace(new RegExp("\\b"+a+"\\.([A-Za-z_$][\\w$]*)","g"),"$1")}n++}return{src:t,count:n}}g(We,"fixNamespaceImport");function jt(e){let t=e,n=0,o=/(\b(?:const|let|var)\s+([A-Za-z_$][\w$]*)\s*=\s*)require\.context\(\s*(['"])([^'"]+)\3\s*,\s*(true|false)\s*,\s*\/([^/]+)\/\s*\)/g,p=[...t.matchAll(o)];for(let i of p){let s=i[0],a=i[1],l=i[2],c=i[4],d=i[5],S=i[6].match(/\\?\.([a-zA-Z0-9]+)\$?$/),P=S?"."+S[1]:".*",x=c.replace(/\/+$/,"")+(d==="true"?"/**/*":"/*")+P;t=t.replace(s,`${a}import.meta.glob('${x}', { eager: true })`),t=t.replace(new RegExp("\\b"+l+"\\.keys\\(\\)","g"),`Object.keys(${l})`),t=t.replace(new RegExp("\\b"+l+"\\(\\s*([A-Za-z_$][\\w$]*)\\s*\\)","g"),`${l}[$1]`),n++}return{src:t,count:n}}g(jt,"fixRequireContext");function Je(e){let t=/require\(\s*(['"])((?:@\/|\.\.?\/)[^'"]+\.(?:png|jpe?g|gif|svg|webp|bmp|ico))\1\s*\)/gi,n=new Map,o=g(a=>{if(n.has(a))return n.get(a);let c="__img_"+((a.split("/").pop()||"asset").replace(/\.[^.]+$/,"").replace(/[^A-Za-z0-9]/g,"_")||"x"),d=c,y=1,S=new Set(n.values());for(;S.has(d);)d=c+"_"+y++;return n.set(a,d),d},"mkVar"),p=0,i=e.replace(t,(a,l,c)=>(p++,o(c))),s=[...n.entries()].map(([a,l])=>`import ${l} from '${a}'`).join(`
|
|
15
|
+
`);return{body:i,imports:s,count:p}}g(Je,"collectRequireAsset");function qe(e,t={}){let n=!!t.isVue,o=0,p=!1,i=e,s=jt(i);if(i=s.src,o+=s.count,n){let a=i.match(/(<script(?:\s[^>]*)?>)([\s\S]*?)(<\/script>)/);if(a){let l=Je(a[2]);if(l.count){let d=`
|
|
23
16
|
`+l.imports+`
|
|
24
|
-
`+l.body.replace(/^\n?/,"");
|
|
25
|
-
`+
|
|
26
|
-
${
|
|
27
|
-
export default ${s.id.name}`:`export default Object.assign(${o}, { runtime: 'vue3' })`;return{src:a.slice(0,e.start)+l+";"+a.slice(e.end),marked:!0}}catch(t){return{src:a,marked:!1,reason:t.message}}}u(yi,"markLibraryRuntime");var ae=process.argv.slice(2),Ke=ae.indexOf("--epx-frame"),Ft=Ke!==-1?ae[Ke+1]:null;Ke!==-1&&ae.splice(Ke,2);var U=ae.find(a=>!a.startsWith("--")),pe=ae.includes("--apply"),Bt=ae.includes("--transform-vue"),Ot=ae.includes("--report-only"),ga=ae.includes("--to-vite"),b=u((...a)=>console.log(...a),"log");Ft&&(De["epx-frame"].target=Ft);(!U||!w.existsSync(U))&&(console.error("\u7528\u6CD5\uFF1Anode tools/epx-migrate/migrate.mjs <\u8001\u9879\u76EE\u76EE\u5F55> [--apply] [--transform-vue] [--to-vite] [--report-only] [--epx-frame <spec>]"),process.exit(1));var G=u(a=>B.join(U,a),"rel"),$=u(a=>w.existsSync(G(a))?w.readFileSync(G(a),"utf8"):null,"read"),F=[],M=[],Y=u(a=>b(`
|
|
17
|
+
`+l.body.replace(/^\n?/,"");i=i.slice(0,a.index)+a[1]+d+a[3]+i.slice(a.index+a[0].length),o+=l.count}let c=i.replace(/<script(?:\s[^>]*)?>[\s\S]*?<\/script>/,"");/require\(\s*['"](?:@\/|\.\.?\/)[^'"]+\.(?:png|jpe?g|gif|svg|webp|bmp|ico)['"]\s*\)/i.test(c)&&(p=!0)}}else{let a=Je(i);a.count&&(i=a.imports+`
|
|
18
|
+
`+a.body,o+=a.count)}return{src:i,count:o,templateAsset:p}}g(qe,"viteSourceCodemod");function Ke(e){let t=e,n=0;t=t.replace(/\bdomPropsInnerHTML=/g,()=>(n++,"innerHTML=")),t=t.replace(/\bdomPropsValue=/g,()=>(n++,"value=")),t=t.replace(/\bnativeOn([A-Z]\w*)=/g,(i,s)=>(n++,"on"+s+"=")),t=t.replace(/\bscopedSlots=\{\{/g,()=>(n++,"v-slots={{"));let o=[],p=t.search(/<script\b/);if(p>=0){let i={};for(let s of t.slice(p).matchAll(/\bslot=["']([^"']+)["']/g))i[s[1]]=(i[s[1]]||0)+1;for(let s of Object.keys(i))o.push(`JSX \u5177\u540D\u63D2\u69FD slot="${s}" \xD7${i[s]} \u2192 \u9700\u4EBA\u5DE5\u6539 v-slots\uFF08el-popover reference / el-dialog footer\xB7title \u4F1A\u5931\u6548\uFF1Bel-dropdown dropdown \u901A\u5E38\u4ECD\u6B63\u5E38\uFF0C\u9010\u4E2A\u4E0A\u771F\u73AF\u5883\u70B9\u5F00\u786E\u8BA4\uFF09`)}return{src:t,count:n,warnings:o}}g(Ke,"fixJsxVue2");var Ye=ke(Se(),1);var Rt=g(e=>e&&!e.computed&&(e.key?.name==="runtime"||e.key?.value==="runtime"),"isRuntime"),Xe=g(e=>e?.type==="ObjectExpression"&&Rt(e.properties.at(-1))&&e.properties.at(-1).value?.value==="vue3","hasVue3");function Ze(e){try{let t=(0,Ye.parse)(e,{sourceType:"module",plugins:["jsx"]}),n=t.program.body.find(d=>d.type==="ExportDefaultDeclaration");if(!n)return{src:e,marked:!1,reason:"\u672A\u627E\u5230\u9ED8\u8BA4\u5BFC\u51FA\u7684\u5E93\u5BF9\u8C61"};let o=n.declaration,p=t.program.body[t.program.body.indexOf(n)-1]?.expression;if(o.type==="Identifier"&&p?.type==="AssignmentExpression"&&p.left.type==="MemberExpression"&&!p.left.computed&&p.left.object.name===o.name&&p.left.property.name==="runtime"&&p.right.value==="vue3")return{src:e,marked:!0};let i=o.type==="CallExpression"&&o.callee.type==="MemberExpression"&&!o.callee.computed&&o.callee.object.name==="Object"&&o.callee.property.name==="assign";if(Xe(o)||i&&Xe(o.arguments.at(-1)))return{src:e,marked:!0};let s=e.slice(n.start,n.end),a=s.replace(/^export\s+default\b/,"").trim().replace(/;$/,"");if(a===s)return{src:e,marked:!1,reason:"\u9ED8\u8BA4\u5BFC\u51FA\u8BED\u6CD5\u4E0D\u652F\u6301\u81EA\u52A8\u6539\u5199"};let l=/^(Function|Class)Declaration$/.test(o.type)&&o.id?`${a}
|
|
19
|
+
${o.id.name}.runtime = 'vue3'
|
|
20
|
+
export default ${o.id.name}`:`export default Object.assign(${a}, { runtime: 'vue3' })`;return{src:e.slice(0,n.start)+l+";"+e.slice(n.end),marked:!0}}catch(t){return{src:e,marked:!1,reason:t.message}}}g(Ze,"markLibraryRuntime");var X=ke(Se(),1);var q={"@epxing/core":{package:"@epxing/core",exports:{publishCoreRuntime:["publishCoreRuntime"],createCore:["createCore"],installCore:["installCore"],createApp:["createApp"],ComponentMixin:["ComponentMixin"],GlobalMixin:["GlobalMixin"],mixins:["mixins"],axios:["axios"],http:["http"],util:["util"],getSystemMeta:["getSystemMeta"],getFileUrl:["getFileUrl"],getSysId:["getSysId"],toLogin:["toLogin"],usePlugin:["usePlugin"],runExpByScope:["runExpByScope"],FieldFactory:["FieldFactory"],FieldFactoryClass:["FieldFactoryClass"],createFieldFactory:["createFieldFactory"],Meta:["Meta"],PdfViewer:["PdfViewer"],createFrameStore:["createFrameStore"],createStoreModules:["createStoreModules"],storeModules:["storeModules"],createFrameRouter:["createFrameRouter"],routerConfig:["routerConfig"],createEventBus:["createEventBus"],getEventBus:["getEventBus"],getApp:["getApp"],setApp:["setApp"],registerComponent:["registerComponent"],resolveComponent:["resolveComponent"],configureRuntime:["configureRuntime"],registerRouteComponents:["registerRouteComponents"],nav:["nav"],default:["default"]}},"@epxing/utils":{package:"@epxing/utils",exports:{Config:["Config"],Page:["Page"],placeholder:["placeholder"],storage:["storage"],getXsrfToken:["getXsrfToken"],setXsrfToken:["setXsrfToken"],cookie:["cookie"],moment:["moment"],dateTime:["dateTime"],createMoment:["createMoment"],lodash:["lodash"],PLACEHOLDER_RE:["PLACEHOLDER_RE"],lookup:["lookup"],resolveKey:["resolveKey"],resolvePlaceholders:["resolvePlaceholders"],isDate:["isDate"],getDayCountOfMonth:["getDayCountOfMonth"],getDayCountOfYear:["getDayCountOfYear"],nextDate:["nextDate"],nextMonth:["nextMonth"],prevYear:["prevYear"],nextYear:["nextYear"],range:["range"],modifyDate:["modifyDate"],modifyTime:["modifyTime"],modifyWithTimeString:["modifyWithTimeString"],hasClass:["hasClass"],arrayFindIndex:["arrayFindIndex"],coerceTruthyValueToArray:["coerceTruthyValueToArray"],cloneDeep:["cloneDeep"],isNil:["isNil"],isEmpty:["isEmpty"],isObject:["isObject"],isEqual:["isEqual"],assignWith:["assignWith"],debounce:["debounce"],throttle:["throttle"],get:["get"],set:["set"]}},"@epxing/components":{package:"@epxing/component",exports:{install:["install"],AddForm:["AddForm"],AddFormItem:["AddFormItem"],AiImportPage:["AiImportPage"],AiImport:["AiImport"],AiAgentPage:["AiAgentPage"],AiChatPage:["AiChatPage"],WikiSite:["WikiSite"],AiMetadataAssistant:["AiMetadataAssistant"],Alert:["Alert"],AppIndex:["AppIndex"],AppNav:["AppNav"],AppTabs:["AppTabs"],ApplyForm:["ApplyForm"],ApprovalIndex:["ApprovalIndex"],ApprovalIndexPage:["ApprovalIndexPage"],BasePage:["BasePage"],Button:["Button"],Card:["Card"],CardFormItem:["CardFormItem"],ActProcessFormItem:["ActProcessFormItem"],Carousel:["Carousel"],CategoryList:["CategoryList"],ReportChart:["ReportChart"],Chart:["Chart"],CheckHistory:["CheckHistory"],Collapse:["Collapse"],ColorPicker:["ColorPicker"],Component:["Component"],Contacts:["Contacts"],Div:["Div"],Dropdown:["Dropdown"],EditEntityList:["EditEntityList"],Empty:["Empty"],EntityAddPage:["EntityAddPage"],EntityApplyPage:["EntityApplyPage"],EntityCardList:["EntityCardList"],EntityList:["EntityList"],EntityListFind:["EntityListFind"],EntityListFindPage:["EntityListFindPage"],EntityListPage:["EntityListPage"],EntityNoSubmitSubList:["EntityNoSubmitSubList"],EntitySubGrid:["EntitySubGrid"],EntitySubGridItem:["EntitySubGridItem"],EntitySubList:["EntitySubList"],EntityTreeFind:["EntityTreeFind"],EntityTreeFindPage:["EntityTreeFindPage"],EntityVirtualList:["EntityVirtualList"],Export:["Export"],ExportFile:["ExportFile"],FlowNumStatistic:["FlowNumStatistic"],Footer:["Footer"],Form:["Form"],FormItem:["FormItem"],CheckBox:["CheckBox"],Color:["Color"],Date:["Date"],File:["File"],Input:["Input"],Number:["Number"],FormHtml:["FormHtml"],Object:["Object"],Photo:["Photo"],Radio:["Radio"],Rule:["Rule"],Scope:["Scope"],Select:["Select"],Switch:["Switch"],FormTag:["FormTag"],Textarea:["Textarea"],FormField:["FormField"],Formula:["Formula"],FormulaEditor:["FormulaEditor"],Gauge:["Gauge"],Grid:["Grid"],GridItem:["GridItem"],Header:["Header"],HeaderBreadcrumb:["HeaderBreadcrumb"],Html:["Html"],TabTags:["TabTags"],TabsBar:["TabsBar"],AppSettings:["AppSettings"],Icon:["Icon"],Iframe:["Iframe"],Image:["Image"],Import:["Import"],ImportFile:["ImportFile"],LayoutComponent:["LayoutComponent"],Link:["Link"],List:["List"],LoadPage:["LoadPage"],Login:["Login"],MEntityAddPage:["MEntityAddPage"],MEntityDeptFind:["MEntityDeptFind"],MEntityList:["MEntityList"],MEntityListFind:["MEntityListFind"],MEntityNoSubmitSubList:["MEntityNoSubmitSubList"],MEntityTreeFind:["MEntityTreeFind"],MEntityUserFind:["MEntityUserFind"],MEntitySubList:["MEntitySubList"],Menu:["Menu"],MenuItem:["MenuItem"],MenuIndex:["MenuIndex"],Mine:["Mine"],ModuleIndexPage:["ModuleIndexPage"],ModuleList:["ModuleList"],ModuleListPage:["ModuleListPage"],ModuleTabsPage:["ModuleTabsPage"],NavAddForm:["NavAddForm"],CardNum:["CardNum"],NumStatistic:["NumStatistic"],NumItem:["NumItem"],NumSubItem:["NumSubItem"],OrgChart:["OrgChart"],Page:["Page"],PageHelp:["PageHelp"],PageTabs:["PageTabs"],Pagination:["Pagination"],Progress:["Progress"],ProcessChart:["ProcessChart"],Report:["Report"],ReportHtml:["ReportHtml"],ReportPreview:["ReportPreview"],RouterView:["RouterView"],ScopeComponent:["ScopeComponent"],Search:["Search"],SearchBar:["SearchBar"],SearchList:["SearchList"],Step:["Step"],StepItem:["StepItem"],TabBar:["TabBar"],Tabs:["Tabs"],Tag:["Tag"],TaskList:["TaskList"],TaskListPage:["TaskListPage"],Template:["Template"],Text:["Text"],TextEditor:["TextEditor"],Title:["Title"],UpdateForm:["UpdateForm"],UpdateFormItem:["UpdateFormItem"],UpdateSubList:["UpdateSubList"],Video:["Video"],ConfigPage:["ConfigPage"],default:["default"]}},"@epxing/component":{package:"@epxing/component",exports:{install:["install"],AddForm:["AddForm"],AddFormItem:["AddFormItem"],AiImportPage:["AiImportPage"],AiImport:["AiImport"],AiAgentPage:["AiAgentPage"],AiChatPage:["AiChatPage"],WikiSite:["WikiSite"],AiMetadataAssistant:["AiMetadataAssistant"],Alert:["Alert"],AppIndex:["AppIndex"],AppNav:["AppNav"],AppTabs:["AppTabs"],ApplyForm:["ApplyForm"],ApprovalIndex:["ApprovalIndex"],ApprovalIndexPage:["ApprovalIndexPage"],BasePage:["BasePage"],Button:["Button"],Card:["Card"],CardFormItem:["CardFormItem"],ActProcessFormItem:["ActProcessFormItem"],Carousel:["Carousel"],CategoryList:["CategoryList"],ReportChart:["ReportChart"],Chart:["Chart"],CheckHistory:["CheckHistory"],Collapse:["Collapse"],ColorPicker:["ColorPicker"],Component:["Component"],Contacts:["Contacts"],Div:["Div"],Dropdown:["Dropdown"],EditEntityList:["EditEntityList"],Empty:["Empty"],EntityAddPage:["EntityAddPage"],EntityApplyPage:["EntityApplyPage"],EntityCardList:["EntityCardList"],EntityList:["EntityList"],EntityListFind:["EntityListFind"],EntityListFindPage:["EntityListFindPage"],EntityListPage:["EntityListPage"],EntityNoSubmitSubList:["EntityNoSubmitSubList"],EntitySubGrid:["EntitySubGrid"],EntitySubGridItem:["EntitySubGridItem"],EntitySubList:["EntitySubList"],EntityTreeFind:["EntityTreeFind"],EntityTreeFindPage:["EntityTreeFindPage"],EntityVirtualList:["EntityVirtualList"],Export:["Export"],ExportFile:["ExportFile"],FlowNumStatistic:["FlowNumStatistic"],Footer:["Footer"],Form:["Form"],FormItem:["FormItem"],CheckBox:["CheckBox"],Color:["Color"],Date:["Date"],File:["File"],Input:["Input"],Number:["Number"],FormHtml:["FormHtml"],Object:["Object"],Photo:["Photo"],Radio:["Radio"],Rule:["Rule"],Scope:["Scope"],Select:["Select"],Switch:["Switch"],FormTag:["FormTag"],Textarea:["Textarea"],FormField:["FormField"],Formula:["Formula"],FormulaEditor:["FormulaEditor"],Gauge:["Gauge"],Grid:["Grid"],GridItem:["GridItem"],Header:["Header"],HeaderBreadcrumb:["HeaderBreadcrumb"],Html:["Html"],TabTags:["TabTags"],TabsBar:["TabsBar"],AppSettings:["AppSettings"],Icon:["Icon"],Iframe:["Iframe"],Image:["Image"],Import:["Import"],ImportFile:["ImportFile"],LayoutComponent:["LayoutComponent"],Link:["Link"],List:["List"],LoadPage:["LoadPage"],Login:["Login"],MEntityAddPage:["MEntityAddPage"],MEntityDeptFind:["MEntityDeptFind"],MEntityList:["MEntityList"],MEntityListFind:["MEntityListFind"],MEntityNoSubmitSubList:["MEntityNoSubmitSubList"],MEntityTreeFind:["MEntityTreeFind"],MEntityUserFind:["MEntityUserFind"],MEntitySubList:["MEntitySubList"],Menu:["Menu"],MenuItem:["MenuItem"],MenuIndex:["MenuIndex"],Mine:["Mine"],ModuleIndexPage:["ModuleIndexPage"],ModuleList:["ModuleList"],ModuleListPage:["ModuleListPage"],ModuleTabsPage:["ModuleTabsPage"],NavAddForm:["NavAddForm"],CardNum:["CardNum"],NumStatistic:["NumStatistic"],NumItem:["NumItem"],NumSubItem:["NumSubItem"],OrgChart:["OrgChart"],Page:["Page"],PageHelp:["PageHelp"],PageTabs:["PageTabs"],Pagination:["Pagination"],Progress:["Progress"],ProcessChart:["ProcessChart"],Report:["Report"],ReportHtml:["ReportHtml"],ReportPreview:["ReportPreview"],RouterView:["RouterView"],ScopeComponent:["ScopeComponent"],Search:["Search"],SearchBar:["SearchBar"],SearchList:["SearchList"],Step:["Step"],StepItem:["StepItem"],TabBar:["TabBar"],Tabs:["Tabs"],Tag:["Tag"],TaskList:["TaskList"],TaskListPage:["TaskListPage"],Template:["Template"],Text:["Text"],TextEditor:["TextEditor"],Title:["Title"],UpdateForm:["UpdateForm"],UpdateFormItem:["UpdateFormItem"],UpdateSubList:["UpdateSubList"],Video:["Video"],ConfigPage:["ConfigPage"],default:["default"]}},"@epxing/business":{package:"@epxing/business",exports:{UserFind:["UserFind"],DeptFind:["DeptFind"],HeaderNav:["HeaderNav"],EntityTreeManage:["EntityTreeManage"],PageCatalog:["PageCatalog"],ReportFormList:["ReportFormList"],ReportFormListPage:["ReportFormListPage"],ExcelPreviewPage:["ExcelPreviewPage"]}},"@epxing/designer":{package:"@epxing/designer",exports:{ProcessFormItemVisual:["ProcessFormItemVisual"],VisualComponent:["VisualComponent"],VisualConfigPage:["VisualConfigPage"],VisualEntityList:["VisualEntityList"],VisualEntitySubList:["VisualEntitySubList"],VisualConfigField:["VisualConfigField"],VisualConfigListField:["VisualConfigListField"],VisualConfigOrderField:["VisualConfigOrderField"],PageDesigner:["PageDesigner"],CardFormItemVisual:["CardFormItemVisual"],CarouselVisual:["CarouselVisual"],CollapseVisual:["CollapseVisual"],DropdownVisual:["DropdownVisual"],LayoutConfig:["LayoutConfig"],ListVisual:["ListVisual"],MEntityListFindVisual:["MEntityListFindVisual"],TabsConfig:["TabsConfig"],widgetPreviews:["widgetPreviews"]}},"@epxing/business/user-find":{package:"@epxing/business",exports:{default:["UserFind"]}},"@epxing/business/dept-find":{package:"@epxing/business",exports:{default:["DeptFind"]}},"@epxing/business/header-nav":{package:"@epxing/business",exports:{default:["HeaderNav"]}},"@epxing/business/entity-tree-manage":{package:"@epxing/business",exports:{default:["EntityTreeManage"]}},"@epxing/business/page-catalog":{package:"@epxing/business",exports:{default:["PageCatalog"]}},"@epxing/business/report-form-list":{package:"@epxing/business",exports:{default:["ReportFormList"]}},"@epxing/business/report-form-list-page":{package:"@epxing/business",exports:{default:["ReportFormListPage"]}},"@epxing/business/excel-preview-page":{package:"@epxing/business",exports:{default:["ExcelPreviewPage"]}},"@epxing/designer/visual-component":{package:"@epxing/designer",exports:{default:["VisualComponent"]}},"@epxing/designer/visual-entity-list":{package:"@epxing/designer",exports:{default:["VisualEntityList"]}},"@epxing/designer/visual-entity-sub-list":{package:"@epxing/designer",exports:{default:["VisualEntitySubList"]}},"@epxing/designer/page-designer":{package:"@epxing/designer",exports:{default:["PageDesigner"]}},vue:{package:"vue",exports:{BaseTransition:["BaseTransition"],BaseTransitionPropsValidators:["BaseTransitionPropsValidators"],Comment:["Comment"],DeprecationTypes:["DeprecationTypes"],EffectScope:["EffectScope"],ErrorCodes:["ErrorCodes"],ErrorTypeStrings:["ErrorTypeStrings"],Fragment:["Fragment"],KeepAlive:["KeepAlive"],ReactiveEffect:["ReactiveEffect"],Static:["Static"],Suspense:["Suspense"],Teleport:["Teleport"],Text:["Text"],TrackOpTypes:["TrackOpTypes"],Transition:["Transition"],TransitionGroup:["TransitionGroup"],TriggerOpTypes:["TriggerOpTypes"],VueElement:["VueElement"],__esModule:["__esModule"],assertNumber:["assertNumber"],callWithAsyncErrorHandling:["callWithAsyncErrorHandling"],callWithErrorHandling:["callWithErrorHandling"],camelize:["camelize"],capitalize:["capitalize"],cloneVNode:["cloneVNode"],compatUtils:["compatUtils"],compile:["compile"],computed:["computed"],createApp:["createApp"],createBlock:["createBlock"],createCommentVNode:["createCommentVNode"],createElementBlock:["createElementBlock"],createElementVNode:["createElementVNode"],createHydrationRenderer:["createHydrationRenderer"],createPropsRestProxy:["createPropsRestProxy"],createRenderer:["createRenderer"],createSSRApp:["createSSRApp"],createSlots:["createSlots"],createStaticVNode:["createStaticVNode"],createTextVNode:["createTextVNode"],createVNode:["createVNode"],customRef:["customRef"],defineAsyncComponent:["defineAsyncComponent"],defineComponent:["defineComponent"],defineCustomElement:["defineCustomElement"],defineEmits:["defineEmits"],defineExpose:["defineExpose"],defineModel:["defineModel"],defineOptions:["defineOptions"],defineProps:["defineProps"],defineSSRCustomElement:["defineSSRCustomElement"],defineSlots:["defineSlots"],devtools:["devtools"],effect:["effect"],effectScope:["effectScope"],getCurrentInstance:["getCurrentInstance"],getCurrentScope:["getCurrentScope"],getCurrentWatcher:["getCurrentWatcher"],getTransitionRawChildren:["getTransitionRawChildren"],guardReactiveProps:["guardReactiveProps"],h:["h"],handleError:["handleError"],hasInjectionContext:["hasInjectionContext"],hydrate:["hydrate"],hydrateOnIdle:["hydrateOnIdle"],hydrateOnInteraction:["hydrateOnInteraction"],hydrateOnMediaQuery:["hydrateOnMediaQuery"],hydrateOnVisible:["hydrateOnVisible"],initCustomFormatter:["initCustomFormatter"],initDirectivesForSSR:["initDirectivesForSSR"],inject:["inject"],isMemoSame:["isMemoSame"],isProxy:["isProxy"],isReactive:["isReactive"],isReadonly:["isReadonly"],isRef:["isRef"],isRuntimeOnly:["isRuntimeOnly"],isShallow:["isShallow"],isVNode:["isVNode"],markRaw:["markRaw"],mergeDefaults:["mergeDefaults"],mergeModels:["mergeModels"],mergeProps:["mergeProps"],nextTick:["nextTick"],nodeOps:["nodeOps"],normalizeClass:["normalizeClass"],normalizeProps:["normalizeProps"],normalizeStyle:["normalizeStyle"],onActivated:["onActivated"],onBeforeMount:["onBeforeMount"],onBeforeUnmount:["onBeforeUnmount"],onBeforeUpdate:["onBeforeUpdate"],onDeactivated:["onDeactivated"],onErrorCaptured:["onErrorCaptured"],onMounted:["onMounted"],onRenderTracked:["onRenderTracked"],onRenderTriggered:["onRenderTriggered"],onScopeDispose:["onScopeDispose"],onServerPrefetch:["onServerPrefetch"],onUnmounted:["onUnmounted"],onUpdated:["onUpdated"],onWatcherCleanup:["onWatcherCleanup"],openBlock:["openBlock"],patchProp:["patchProp"],popScopeId:["popScopeId"],provide:["provide"],proxyRefs:["proxyRefs"],pushScopeId:["pushScopeId"],queuePostFlushCb:["queuePostFlushCb"],reactive:["reactive"],readonly:["readonly"],ref:["ref"],registerRuntimeCompiler:["registerRuntimeCompiler"],render:["render"],renderList:["renderList"],renderSlot:["renderSlot"],resolveComponent:["resolveComponent"],resolveDirective:["resolveDirective"],resolveDynamicComponent:["resolveDynamicComponent"],resolveFilter:["resolveFilter"],resolveTransitionHooks:["resolveTransitionHooks"],setBlockTracking:["setBlockTracking"],setDevtoolsHook:["setDevtoolsHook"],setTransitionHooks:["setTransitionHooks"],shallowReactive:["shallowReactive"],shallowReadonly:["shallowReadonly"],shallowRef:["shallowRef"],ssrContextKey:["ssrContextKey"],ssrUtils:["ssrUtils"],stop:["stop"],toDisplayString:["toDisplayString"],toHandlerKey:["toHandlerKey"],toHandlers:["toHandlers"],toRaw:["toRaw"],toRef:["toRef"],toRefs:["toRefs"],toValue:["toValue"],transformVNodeArgs:["transformVNodeArgs"],triggerRef:["triggerRef"],unref:["unref"],useAttrs:["useAttrs"],useCssModule:["useCssModule"],useCssVars:["useCssVars"],useHost:["useHost"],useId:["useId"],useModel:["useModel"],useSSRContext:["useSSRContext"],useShadowRoot:["useShadowRoot"],useSlots:["useSlots"],useTemplateRef:["useTemplateRef"],useTransitionState:["useTransitionState"],vModelCheckbox:["vModelCheckbox"],vModelDynamic:["vModelDynamic"],vModelRadio:["vModelRadio"],vModelSelect:["vModelSelect"],vModelText:["vModelText"],vShow:["vShow"],version:["version"],warn:["warn"],watch:["watch"],watchEffect:["watchEffect"],watchPostEffect:["watchPostEffect"],watchSyncEffect:["watchSyncEffect"],withAsyncContext:["withAsyncContext"],withCtx:["withCtx"],withDefaults:["withDefaults"],withDirectives:["withDirectives"],withKeys:["withKeys"],withMemo:["withMemo"],withModifiers:["withModifiers"],withScopeId:["withScopeId"]}},vuex:{package:"vuex",exports:{Store:["Store"],createLogger:["createLogger"],createNamespacedHelpers:["createNamespacedHelpers"],createStore:["createStore"],default:["default"],install:["install"],mapActions:["mapActions"],mapGetters:["mapGetters"],mapMutations:["mapMutations"],mapState:["mapState"],storeKey:["storeKey"],useStore:["useStore"],version:["version"]}},"@epxing/component/add-form":{package:"@epxing/component",exports:{default:["AddForm"]}},"@epxing/components/add-form":{package:"@epxing/component",exports:{default:["AddForm"]}},"@epxing/component/add-form-item":{package:"@epxing/component",exports:{default:["AddFormItem"]}},"@epxing/components/add-form-item":{package:"@epxing/component",exports:{default:["AddFormItem"]}},"@epxing/component/ai-import-page":{package:"@epxing/component",exports:{default:["AiImportPage"]}},"@epxing/components/ai-import-page":{package:"@epxing/component",exports:{default:["AiImportPage"]}},"@epxing/component/ai-import":{package:"@epxing/component",exports:{default:["AiImport"]}},"@epxing/components/ai-import":{package:"@epxing/component",exports:{default:["AiImport"]}},"@epxing/component/ai-agent-page":{package:"@epxing/component",exports:{default:["AiAgentPage"]}},"@epxing/components/ai-agent-page":{package:"@epxing/component",exports:{default:["AiAgentPage"]}},"@epxing/component/ai-chat-page":{package:"@epxing/component",exports:{default:["AiChatPage"]}},"@epxing/components/ai-chat-page":{package:"@epxing/component",exports:{default:["AiChatPage"]}},"@epxing/component/wiki-site":{package:"@epxing/component",exports:{default:["WikiSite"]}},"@epxing/components/wiki-site":{package:"@epxing/component",exports:{default:["WikiSite"]}},"@epxing/component/ai-metadata-assistant":{package:"@epxing/component",exports:{default:["AiMetadataAssistant"]}},"@epxing/components/ai-metadata-assistant":{package:"@epxing/component",exports:{default:["AiMetadataAssistant"]}},"@epxing/component/alert":{package:"@epxing/component",exports:{default:["Alert"]}},"@epxing/components/alert":{package:"@epxing/component",exports:{default:["Alert"]}},"@epxing/component/app-index":{package:"@epxing/component",exports:{default:["AppIndex"]}},"@epxing/components/app-index":{package:"@epxing/component",exports:{default:["AppIndex"]}},"@epxing/component/app-nav":{package:"@epxing/component",exports:{default:["AppNav"]}},"@epxing/components/app-nav":{package:"@epxing/component",exports:{default:["AppNav"]}},"@epxing/component/app-tabs":{package:"@epxing/component",exports:{default:["AppTabs"]}},"@epxing/components/app-tabs":{package:"@epxing/component",exports:{default:["AppTabs"]}},"@epxing/component/apply-form":{package:"@epxing/component",exports:{default:["ApplyForm"]}},"@epxing/components/apply-form":{package:"@epxing/component",exports:{default:["ApplyForm"]}},"@epxing/component/approval-index":{package:"@epxing/component",exports:{default:["ApprovalIndex"]}},"@epxing/components/approval-index":{package:"@epxing/component",exports:{default:["ApprovalIndex"]}},"@epxing/component/approval-index-page":{package:"@epxing/component",exports:{default:["ApprovalIndexPage"]}},"@epxing/components/approval-index-page":{package:"@epxing/component",exports:{default:["ApprovalIndexPage"]}},"@epxing/component/base-page":{package:"@epxing/component",exports:{default:["BasePage"]}},"@epxing/components/base-page":{package:"@epxing/component",exports:{default:["BasePage"]}},"@epxing/component/button":{package:"@epxing/component",exports:{default:["Button"]}},"@epxing/components/button":{package:"@epxing/component",exports:{default:["Button"]}},"@epxing/component/card":{package:"@epxing/component",exports:{default:["Card"]}},"@epxing/components/card":{package:"@epxing/component",exports:{default:["Card"]}},"@epxing/component/card-form-item":{package:"@epxing/component",exports:{default:["CardFormItem"]}},"@epxing/components/card-form-item":{package:"@epxing/component",exports:{default:["CardFormItem"]}},"@epxing/component/act-process-form-item":{package:"@epxing/component",exports:{default:["ActProcessFormItem"]}},"@epxing/components/act-process-form-item":{package:"@epxing/component",exports:{default:["ActProcessFormItem"]}},"@epxing/component/carousel":{package:"@epxing/component",exports:{default:["Carousel"]}},"@epxing/components/carousel":{package:"@epxing/component",exports:{default:["Carousel"]}},"@epxing/component/category-list":{package:"@epxing/component",exports:{default:["CategoryList"]}},"@epxing/components/category-list":{package:"@epxing/component",exports:{default:["CategoryList"]}},"@epxing/component/report-chart":{package:"@epxing/component",exports:{default:["ReportChart"]}},"@epxing/components/report-chart":{package:"@epxing/component",exports:{default:["ReportChart"]}},"@epxing/component/chart":{package:"@epxing/component",exports:{default:["Chart"]}},"@epxing/components/chart":{package:"@epxing/component",exports:{default:["Chart"]}},"@epxing/component/check-history":{package:"@epxing/component",exports:{default:["CheckHistory"]}},"@epxing/components/check-history":{package:"@epxing/component",exports:{default:["CheckHistory"]}},"@epxing/component/collapse":{package:"@epxing/component",exports:{default:["Collapse"]}},"@epxing/components/collapse":{package:"@epxing/component",exports:{default:["Collapse"]}},"@epxing/component/color-picker":{package:"@epxing/component",exports:{default:["ColorPicker"]}},"@epxing/components/color-picker":{package:"@epxing/component",exports:{default:["ColorPicker"]}},"@epxing/component/component":{package:"@epxing/component",exports:{default:["Component"]}},"@epxing/components/component":{package:"@epxing/component",exports:{default:["Component"]}},"@epxing/component/contacts":{package:"@epxing/component",exports:{default:["Contacts"]}},"@epxing/components/contacts":{package:"@epxing/component",exports:{default:["Contacts"]}},"@epxing/component/div":{package:"@epxing/component",exports:{default:["Div"]}},"@epxing/components/div":{package:"@epxing/component",exports:{default:["Div"]}},"@epxing/component/dropdown":{package:"@epxing/component",exports:{default:["Dropdown"]}},"@epxing/components/dropdown":{package:"@epxing/component",exports:{default:["Dropdown"]}},"@epxing/component/edit-entity-list":{package:"@epxing/component",exports:{default:["EditEntityList"]}},"@epxing/components/edit-entity-list":{package:"@epxing/component",exports:{default:["EditEntityList"]}},"@epxing/component/empty":{package:"@epxing/component",exports:{default:["Empty"]}},"@epxing/components/empty":{package:"@epxing/component",exports:{default:["Empty"]}},"@epxing/component/entity-add-page":{package:"@epxing/component",exports:{default:["EntityAddPage"]}},"@epxing/components/entity-add-page":{package:"@epxing/component",exports:{default:["EntityAddPage"]}},"@epxing/component/entity-apply-page":{package:"@epxing/component",exports:{default:["EntityApplyPage"]}},"@epxing/components/entity-apply-page":{package:"@epxing/component",exports:{default:["EntityApplyPage"]}},"@epxing/component/entity-card-list":{package:"@epxing/component",exports:{default:["EntityCardList"]}},"@epxing/components/entity-card-list":{package:"@epxing/component",exports:{default:["EntityCardList"]}},"@epxing/component/entity-list":{package:"@epxing/component",exports:{default:["EntityList"],Mobile:["EntityList","Mobile"]}},"@epxing/components/entity-list":{package:"@epxing/component",exports:{default:["EntityList"],Mobile:["EntityList","Mobile"]}},"@epxing/component/entity-list-find":{package:"@epxing/component",exports:{default:["EntityListFind"]}},"@epxing/components/entity-list-find":{package:"@epxing/component",exports:{default:["EntityListFind"]}},"@epxing/component/entity-list-find-page":{package:"@epxing/component",exports:{default:["EntityListFindPage"]}},"@epxing/components/entity-list-find-page":{package:"@epxing/component",exports:{default:["EntityListFindPage"]}},"@epxing/component/entity-list-page":{package:"@epxing/component",exports:{default:["EntityListPage"]}},"@epxing/components/entity-list-page":{package:"@epxing/component",exports:{default:["EntityListPage"]}},"@epxing/component/entity-no-submit-sub-list":{package:"@epxing/component",exports:{default:["EntityNoSubmitSubList"]}},"@epxing/components/entity-no-submit-sub-list":{package:"@epxing/component",exports:{default:["EntityNoSubmitSubList"]}},"@epxing/component/entity-sub-grid":{package:"@epxing/component",exports:{default:["EntitySubGrid"],EntitySubGridItem:["EntitySubGridItem"]}},"@epxing/components/entity-sub-grid":{package:"@epxing/component",exports:{default:["EntitySubGrid"],EntitySubGridItem:["EntitySubGridItem"]}},"@epxing/component/entity-sub-list":{package:"@epxing/component",exports:{default:["EntitySubList"]}},"@epxing/components/entity-sub-list":{package:"@epxing/component",exports:{default:["EntitySubList"]}},"@epxing/component/entity-tree-find":{package:"@epxing/component",exports:{default:["EntityTreeFind"]}},"@epxing/components/entity-tree-find":{package:"@epxing/component",exports:{default:["EntityTreeFind"]}},"@epxing/component/entity-tree-find-page":{package:"@epxing/component",exports:{default:["EntityTreeFindPage"]}},"@epxing/components/entity-tree-find-page":{package:"@epxing/component",exports:{default:["EntityTreeFindPage"]}},"@epxing/component/entity-virtual-list":{package:"@epxing/component",exports:{default:["EntityVirtualList"]}},"@epxing/components/entity-virtual-list":{package:"@epxing/component",exports:{default:["EntityVirtualList"]}},"@epxing/component/export":{package:"@epxing/component",exports:{default:["Export"]}},"@epxing/components/export":{package:"@epxing/component",exports:{default:["Export"]}},"@epxing/component/export-file":{package:"@epxing/component",exports:{default:["ExportFile"]}},"@epxing/components/export-file":{package:"@epxing/component",exports:{default:["ExportFile"]}},"@epxing/component/flow-num":{package:"@epxing/component",exports:{default:["FlowNumStatistic"]}},"@epxing/components/flow-num":{package:"@epxing/component",exports:{default:["FlowNumStatistic"]}},"@epxing/component/footer":{package:"@epxing/component",exports:{default:["Footer"]}},"@epxing/components/footer":{package:"@epxing/component",exports:{default:["Footer"]}},"@epxing/component/form":{package:"@epxing/component",exports:{default:["Form"]}},"@epxing/components/form":{package:"@epxing/component",exports:{default:["Form"]}},"@epxing/component/form-item":{package:"@epxing/component",exports:{default:["FormItem"],CheckBox:["CheckBox"],Color:["Color"],Date:["Date"],File:["File"],Input:["Input"],Number:["Number"],Html:["FormHtml"],Object:["Object"],Photo:["Photo"],Radio:["Radio"],Rule:["Rule"],Scope:["Scope"],Select:["Select"],Switch:["Switch"],Tag:["FormTag"],Textarea:["Textarea"]}},"@epxing/components/form-item":{package:"@epxing/component",exports:{default:["FormItem"],CheckBox:["CheckBox"],Color:["Color"],Date:["Date"],File:["File"],Input:["Input"],Number:["Number"],Html:["FormHtml"],Object:["Object"],Photo:["Photo"],Radio:["Radio"],Rule:["Rule"],Scope:["Scope"],Select:["Select"],Switch:["Switch"],Tag:["FormTag"],Textarea:["Textarea"]}},"@epxing/component/form-field":{package:"@epxing/component",exports:{default:["FormField"]}},"@epxing/components/form-field":{package:"@epxing/component",exports:{default:["FormField"]}},"@epxing/component/formula":{package:"@epxing/component",exports:{default:["Formula"]}},"@epxing/components/formula":{package:"@epxing/component",exports:{default:["Formula"]}},"@epxing/component/formula-editor":{package:"@epxing/component",exports:{default:["FormulaEditor"]}},"@epxing/components/formula-editor":{package:"@epxing/component",exports:{default:["FormulaEditor"]}},"@epxing/component/gauge":{package:"@epxing/component",exports:{default:["Gauge"]}},"@epxing/components/gauge":{package:"@epxing/component",exports:{default:["Gauge"]}},"@epxing/component/grid":{package:"@epxing/component",exports:{default:["Grid"],GridItem:["GridItem"]}},"@epxing/components/grid":{package:"@epxing/component",exports:{default:["Grid"],GridItem:["GridItem"]}},"@epxing/component/header":{package:"@epxing/component",exports:{default:["Header"],Breadcrumb:["HeaderBreadcrumb"]}},"@epxing/components/header":{package:"@epxing/component",exports:{default:["Header"],Breadcrumb:["HeaderBreadcrumb"]}},"@epxing/component/html":{package:"@epxing/component",exports:{default:["Html"]}},"@epxing/components/html":{package:"@epxing/component",exports:{default:["Html"]}},"@epxing/component/tab-tags":{package:"@epxing/component",exports:{default:["TabTags"]}},"@epxing/components/tab-tags":{package:"@epxing/component",exports:{default:["TabTags"]}},"@epxing/component/tabs-bar":{package:"@epxing/component",exports:{default:["TabsBar"]}},"@epxing/components/tabs-bar":{package:"@epxing/component",exports:{default:["TabsBar"]}},"@epxing/component/app-settings":{package:"@epxing/component",exports:{default:["AppSettings"]}},"@epxing/components/app-settings":{package:"@epxing/component",exports:{default:["AppSettings"]}},"@epxing/component/icon":{package:"@epxing/component",exports:{default:["Icon"]}},"@epxing/components/icon":{package:"@epxing/component",exports:{default:["Icon"]}},"@epxing/component/iframe":{package:"@epxing/component",exports:{default:["Iframe"]}},"@epxing/components/iframe":{package:"@epxing/component",exports:{default:["Iframe"]}},"@epxing/component/image":{package:"@epxing/component",exports:{default:["Image"]}},"@epxing/components/image":{package:"@epxing/component",exports:{default:["Image"]}},"@epxing/component/import":{package:"@epxing/component",exports:{default:["Import"]}},"@epxing/components/import":{package:"@epxing/component",exports:{default:["Import"]}},"@epxing/component/import-file":{package:"@epxing/component",exports:{default:["ImportFile"]}},"@epxing/components/import-file":{package:"@epxing/component",exports:{default:["ImportFile"]}},"@epxing/component/layout":{package:"@epxing/component",exports:{default:["LayoutComponent"]}},"@epxing/components/layout":{package:"@epxing/component",exports:{default:["LayoutComponent"]}},"@epxing/component/link":{package:"@epxing/component",exports:{default:["Link"]}},"@epxing/components/link":{package:"@epxing/component",exports:{default:["Link"]}},"@epxing/component/list":{package:"@epxing/component",exports:{default:["List"]}},"@epxing/components/list":{package:"@epxing/component",exports:{default:["List"]}},"@epxing/component/load-page":{package:"@epxing/component",exports:{default:["LoadPage"]}},"@epxing/components/load-page":{package:"@epxing/component",exports:{default:["LoadPage"]}},"@epxing/component/login":{package:"@epxing/component",exports:{default:["Login"]}},"@epxing/components/login":{package:"@epxing/component",exports:{default:["Login"]}},"@epxing/component/m-entity-add-page":{package:"@epxing/component",exports:{default:["MEntityAddPage"]}},"@epxing/components/m-entity-add-page":{package:"@epxing/component",exports:{default:["MEntityAddPage"]}},"@epxing/component/m-entity-dept-find":{package:"@epxing/component",exports:{default:["MEntityDeptFind"]}},"@epxing/components/m-entity-dept-find":{package:"@epxing/component",exports:{default:["MEntityDeptFind"]}},"@epxing/component/m-entity-list":{package:"@epxing/component",exports:{default:["MEntityList"]}},"@epxing/components/m-entity-list":{package:"@epxing/component",exports:{default:["MEntityList"]}},"@epxing/component/m-entity-list-find":{package:"@epxing/component",exports:{default:["MEntityListFind"]}},"@epxing/components/m-entity-list-find":{package:"@epxing/component",exports:{default:["MEntityListFind"]}},"@epxing/component/m-entity-no-submit-sub-list":{package:"@epxing/component",exports:{default:["MEntityNoSubmitSubList"]}},"@epxing/components/m-entity-no-submit-sub-list":{package:"@epxing/component",exports:{default:["MEntityNoSubmitSubList"]}},"@epxing/component/m-entity-tree-find":{package:"@epxing/component",exports:{default:["MEntityTreeFind"]}},"@epxing/components/m-entity-tree-find":{package:"@epxing/component",exports:{default:["MEntityTreeFind"]}},"@epxing/component/m-entity-user-find":{package:"@epxing/component",exports:{default:["MEntityUserFind"]}},"@epxing/components/m-entity-user-find":{package:"@epxing/component",exports:{default:["MEntityUserFind"]}},"@epxing/component/m-entity-sub-list":{package:"@epxing/component",exports:{default:["MEntitySubList"]}},"@epxing/components/m-entity-sub-list":{package:"@epxing/component",exports:{default:["MEntitySubList"]}},"@epxing/component/menu":{package:"@epxing/component",exports:{default:["Menu"],MenuItem:["MenuItem"]}},"@epxing/components/menu":{package:"@epxing/component",exports:{default:["Menu"],MenuItem:["MenuItem"]}},"@epxing/component/menu-index":{package:"@epxing/component",exports:{default:["MenuIndex"]}},"@epxing/components/menu-index":{package:"@epxing/component",exports:{default:["MenuIndex"]}},"@epxing/component/mine":{package:"@epxing/component",exports:{default:["Mine"]}},"@epxing/components/mine":{package:"@epxing/component",exports:{default:["Mine"]}},"@epxing/component/module-index-page":{package:"@epxing/component",exports:{default:["ModuleIndexPage"]}},"@epxing/components/module-index-page":{package:"@epxing/component",exports:{default:["ModuleIndexPage"]}},"@epxing/component/module-list":{package:"@epxing/component",exports:{default:["ModuleList"]}},"@epxing/components/module-list":{package:"@epxing/component",exports:{default:["ModuleList"]}},"@epxing/component/module-list-page":{package:"@epxing/component",exports:{default:["ModuleListPage"]}},"@epxing/components/module-list-page":{package:"@epxing/component",exports:{default:["ModuleListPage"]}},"@epxing/component/module-tabs-page":{package:"@epxing/component",exports:{default:["ModuleTabsPage"]}},"@epxing/components/module-tabs-page":{package:"@epxing/component",exports:{default:["ModuleTabsPage"]}},"@epxing/component/nav-add-form":{package:"@epxing/component",exports:{default:["NavAddForm"]}},"@epxing/components/nav-add-form":{package:"@epxing/component",exports:{default:["NavAddForm"]}},"@epxing/component/num":{package:"@epxing/component",exports:{default:["CardNum"],Statistic:["NumStatistic"],NumItem:["NumItem"],NumSubItem:["NumSubItem"]}},"@epxing/components/num":{package:"@epxing/component",exports:{default:["CardNum"],Statistic:["NumStatistic"],NumItem:["NumItem"],NumSubItem:["NumSubItem"]}},"@epxing/component/org-chart":{package:"@epxing/component",exports:{default:["OrgChart"]}},"@epxing/components/org-chart":{package:"@epxing/component",exports:{default:["OrgChart"]}},"@epxing/component/page":{package:"@epxing/component",exports:{default:["Page"]}},"@epxing/components/page":{package:"@epxing/component",exports:{default:["Page"]}},"@epxing/component/page-help":{package:"@epxing/component",exports:{default:["PageHelp"]}},"@epxing/components/page-help":{package:"@epxing/component",exports:{default:["PageHelp"]}},"@epxing/component/page-tabs":{package:"@epxing/component",exports:{default:["PageTabs"]}},"@epxing/components/page-tabs":{package:"@epxing/component",exports:{default:["PageTabs"]}},"@epxing/component/pagination":{package:"@epxing/component",exports:{default:["Pagination"]}},"@epxing/components/pagination":{package:"@epxing/component",exports:{default:["Pagination"]}},"@epxing/component/progress":{package:"@epxing/component",exports:{default:["Progress"]}},"@epxing/components/progress":{package:"@epxing/component",exports:{default:["Progress"]}},"@epxing/component/progress-chart":{package:"@epxing/component",exports:{default:["ProcessChart"]}},"@epxing/components/progress-chart":{package:"@epxing/component",exports:{default:["ProcessChart"]}},"@epxing/component/report":{package:"@epxing/component",exports:{default:["Report"]}},"@epxing/components/report":{package:"@epxing/component",exports:{default:["Report"]}},"@epxing/component/report-html":{package:"@epxing/component",exports:{default:["ReportHtml"]}},"@epxing/components/report-html":{package:"@epxing/component",exports:{default:["ReportHtml"]}},"@epxing/component/report-preview":{package:"@epxing/component",exports:{default:["ReportPreview"]}},"@epxing/components/report-preview":{package:"@epxing/component",exports:{default:["ReportPreview"]}},"@epxing/component/router-view":{package:"@epxing/component",exports:{default:["RouterView"]}},"@epxing/components/router-view":{package:"@epxing/component",exports:{default:["RouterView"]}},"@epxing/component/scope":{package:"@epxing/component",exports:{default:["ScopeComponent"]}},"@epxing/components/scope":{package:"@epxing/component",exports:{default:["ScopeComponent"]}},"@epxing/component/search":{package:"@epxing/component",exports:{default:["Search"]}},"@epxing/components/search":{package:"@epxing/component",exports:{default:["Search"]}},"@epxing/component/search-bar":{package:"@epxing/component",exports:{default:["SearchBar"]}},"@epxing/components/search-bar":{package:"@epxing/component",exports:{default:["SearchBar"]}},"@epxing/component/search-list":{package:"@epxing/component",exports:{default:["SearchList"]}},"@epxing/components/search-list":{package:"@epxing/component",exports:{default:["SearchList"]}},"@epxing/component/step":{package:"@epxing/component",exports:{default:["Step"]}},"@epxing/components/step":{package:"@epxing/component",exports:{default:["Step"]}},"@epxing/component/step-item":{package:"@epxing/component",exports:{default:["StepItem"]}},"@epxing/components/step-item":{package:"@epxing/component",exports:{default:["StepItem"]}},"@epxing/component/tab-bar":{package:"@epxing/component",exports:{default:["TabBar"]}},"@epxing/components/tab-bar":{package:"@epxing/component",exports:{default:["TabBar"]}},"@epxing/component/tabs":{package:"@epxing/component",exports:{default:["Tabs"]}},"@epxing/components/tabs":{package:"@epxing/component",exports:{default:["Tabs"]}},"@epxing/component/tag":{package:"@epxing/component",exports:{default:["Tag"]}},"@epxing/components/tag":{package:"@epxing/component",exports:{default:["Tag"]}},"@epxing/component/task-list":{package:"@epxing/component",exports:{default:["TaskList"]}},"@epxing/components/task-list":{package:"@epxing/component",exports:{default:["TaskList"]}},"@epxing/component/task-list-page":{package:"@epxing/component",exports:{default:["TaskListPage"]}},"@epxing/components/task-list-page":{package:"@epxing/component",exports:{default:["TaskListPage"]}},"@epxing/component/template":{package:"@epxing/component",exports:{default:["Template"]}},"@epxing/components/template":{package:"@epxing/component",exports:{default:["Template"]}},"@epxing/component/text":{package:"@epxing/component",exports:{default:["Text"]}},"@epxing/components/text":{package:"@epxing/component",exports:{default:["Text"]}},"@epxing/component/text-editor":{package:"@epxing/component",exports:{default:["TextEditor"]}},"@epxing/components/text-editor":{package:"@epxing/component",exports:{default:["TextEditor"]}},"@epxing/component/title":{package:"@epxing/component",exports:{default:["Title"]}},"@epxing/components/title":{package:"@epxing/component",exports:{default:["Title"]}},"@epxing/component/update-form":{package:"@epxing/component",exports:{default:["UpdateForm"]}},"@epxing/components/update-form":{package:"@epxing/component",exports:{default:["UpdateForm"]}},"@epxing/component/update-form-item":{package:"@epxing/component",exports:{default:["UpdateFormItem"]}},"@epxing/components/update-form-item":{package:"@epxing/component",exports:{default:["UpdateFormItem"]}},"@epxing/component/update-sub-list":{package:"@epxing/component",exports:{default:["UpdateSubList"]}},"@epxing/components/update-sub-list":{package:"@epxing/component",exports:{default:["UpdateSubList"]}},"@epxing/component/video":{package:"@epxing/component",exports:{default:["Video"]}},"@epxing/components/video":{package:"@epxing/component",exports:{default:["Video"]}},"@epxing/component/config-page":{package:"@epxing/component",exports:{default:["ConfigPage"]}},"@epxing/components/config-page":{package:"@epxing/component",exports:{default:["ConfigPage"]}},"@epxing/core/app":{package:"@epxing/core",exports:{setApp:["setApp"],getApp:["getApp"],resolveComponent:["resolveComponent"],registerComponent:["registerComponent"]}},"@epxing/core/http":{package:"@epxing/core",exports:{default:["http"]}},"@epxing/core/axios":{package:"@epxing/core",exports:{default:["axios"]}},"@epxing/core/navigation":{package:"@epxing/core",exports:{nav:["nav"],default:["nav"]}},"@epxing/core/component-mixin":{package:"@epxing/core",exports:{default:["ComponentMixin"]}},"@epxing/core/global-mixin":{package:"@epxing/core",exports:{default:["GlobalMixin"]}},"@epxing/core/field-factory":{package:"@epxing/core",exports:{FieldFactory:["FieldFactoryClass"],createFieldFactory:["createFieldFactory"],default:["FieldFactory"]}},"@epxing/core/meta":{package:"@epxing/core",exports:{default:["Meta"]}},"@epxing/core/pdf-viewer":{package:"@epxing/core",exports:{default:["PdfViewer"]}},"@epxing/core/util":{package:"@epxing/core",exports:{getSystemMeta:["getSystemMeta"],getFileUrl:["getFileUrl"],getSysId:["getSysId"],toLogin:["toLogin"],usePlugin:["usePlugin"],runExpByScope:["runExpByScope"],default:["util"]}},"@epxing/core/store":{package:"@epxing/core",exports:{createStoreModules:["createStoreModules"],storeModules:["storeModules"],createFrameStore:["createFrameStore"]}},"@epxing/core/runtime":{package:"@epxing/core",exports:{configureRuntime:["configureRuntime"],registerRouteComponents:["registerRouteComponents"]}},"@epxing/core/mixins":{package:"@epxing/core",exports:{default:["mixins"],component:["ComponentMixin"],global:["GlobalMixin"]}},"@epxing/core/router":{package:"@epxing/core",exports:{routerConfig:["routerConfig"],createFrameRouter:["createFrameRouter"],default:["routerConfig"]}},"@epxing/core/event-bus":{package:"@epxing/core",exports:{createEventBus:["createEventBus"],getEventBus:["getEventBus"]}},"@epxing/utils/config":{package:"@epxing/utils",exports:{default:["Config"]}},"@epxing/utils/page":{package:"@epxing/utils",exports:{default:["Page"]}},"@epxing/utils/placeholder":{package:"@epxing/utils",exports:{PLACEHOLDER_RE:["PLACEHOLDER_RE"],lookup:["lookup"],resolveKey:["resolveKey"],resolvePlaceholders:["resolvePlaceholders"],default:["placeholder"]}},"@epxing/utils/storage":{package:"@epxing/utils",exports:{getXsrfToken:["getXsrfToken"],setXsrfToken:["setXsrfToken"],default:["storage"]}},"@epxing/utils/date":{package:"@epxing/utils",exports:{isDate:["isDate"],getDayCountOfMonth:["getDayCountOfMonth"],getDayCountOfYear:["getDayCountOfYear"],nextDate:["nextDate"],nextMonth:["nextMonth"],prevYear:["prevYear"],nextYear:["nextYear"],range:["range"],modifyDate:["modifyDate"],modifyTime:["modifyTime"],modifyWithTimeString:["modifyWithTimeString"]}},"@epxing/utils/dom":{package:"@epxing/utils",exports:{hasClass:["hasClass"],arrayFindIndex:["arrayFindIndex"],coerceTruthyValueToArray:["coerceTruthyValueToArray"]}},"@epxing/utils/date-time":{package:"@epxing/utils",exports:{createMoment:["createMoment"],default:["moment"]}},"@epxing/utils/collection":{package:"@epxing/utils",exports:{cloneDeep:["cloneDeep"],isNil:["isNil"],isEmpty:["isEmpty"],isObject:["isObject"],isEqual:["isEqual"],assignWith:["assignWith"],debounce:["debounce"],throttle:["throttle"],get:["get"],set:["set"],default:["lodash"]}}};var Qe={utils:{config:"Config",page:"page",placeholder:"placeholder",storage:"storage",date:"date-helper",dom:"dom-helper","date-time":"moment-compat",collection:"collection"},core:{app:"app",http:"api/index",axios:"axios",navigation:"navigation","component-mixin":"mixins/component","global-mixin":"mixins/global","field-factory":"runtime-utils/fieldFactory",meta:"runtime-utils/meta","pdf-viewer":"runtime-utils/pdf.viewer",util:"runtime-utils/util",store:"store/create-store",runtime:"runtime-services",mixins:"mixins/index",router:"router/public","event-bus":"vue.bus"},business:{"user-find":"components/UserFind","dept-find":"components/DeptFind",popup:"popup","route-components":"route-components","entity-tree-manage":"components/EntityTreeManage","header-nav":"components/HeaderNav","page-catalog":"components/PageCatalog","report-form-list":"components/ReportFormList","report-form-list-page":"views/ReportFormListPage","excel-preview-page":"views/ExcelPreviewPage"},designer:{"page-designer":"page-designer/index","visual-component":"visual/Component","visual-entity-list":"visual/EntityList","visual-entity-sub-list":"visual/EntitySubList"},dashboard:{tabs:"Tabs",title:"Title",div:"Div",widget:"Widget"}};function et(e){return{...e,"package.json":JSON.stringify({name:"__NAME__",version:"0.1.0",private:!0,runtime:"vue3",type:"module",scripts:{dev:"vite","build:lib":"vite build","build:lib:lazy":"cross-env LAZY_LIB=true vite build","build:app":"vite build --mode app",preview:"vite preview"},dependencies:{"@epxing/core":"__PACKAGES_VERSION__","@epxing/component":"__PACKAGES_VERSION__","@epxing/utils":"__PACKAGES_VERSION__","@epxing/business":"__PACKAGES_VERSION__","@epxing/theme":"__PACKAGES_VERSION__",vue:"3.5.39","vue-router":"4.6.4",vuex:"4.1.0","element-plus":"2.14.3"},devDependencies:{"@epxing/cli":"__CLI_VERSION__","@epxing/icons":"__PACKAGES_VERSION__",vite:"^6.0.0","@vitejs/plugin-vue":"^5.2.1","@vitejs/plugin-vue-jsx":"^4.1.1",sass:"^1.83.3","cross-env":"^7.0.3"}},null,2)+`
|
|
21
|
+
`,"vite.config.mjs":`import path from 'node:path'
|
|
22
|
+
import { fileURLToPath } from 'node:url'
|
|
23
|
+
import { createRequire } from 'node:module'
|
|
24
|
+
import { defineConfig, loadEnv } from 'vite'
|
|
25
|
+
import vue from '@vitejs/plugin-vue'
|
|
26
|
+
import vueJsx from '@vitejs/plugin-vue-jsx'
|
|
27
|
+
import { frameDeps, epxShared, lazyLib } from '@epxing/cli/vite'
|
|
28
|
+
import epxIcons from '@epxing/icons'
|
|
29
|
+
import pkg from './package.json' with { type: 'json' }
|
|
30
|
+
|
|
31
|
+
const root = path.dirname(fileURLToPath(import.meta.url))
|
|
32
|
+
const require = createRequire(import.meta.url)
|
|
33
|
+
const CONFIG_KEYS = ['IP', 'BASE_URL', 'BASE_PROJECT_NAME', 'BASE_AUTH_NAME', 'BASE_CLIENT_ID', 'BASE_SYSTEM_ID', 'BASE_APP_ID', 'ROUTER_MODE', 'MINIO_FILE_URL', 'WITH_CREDENTIALS']
|
|
34
|
+
|
|
35
|
+
export default defineConfig(({ command, mode }) => {
|
|
36
|
+
const env = loadEnv(mode, root, '')
|
|
37
|
+
const library = command === 'build' && mode !== 'app'
|
|
38
|
+
return {
|
|
39
|
+
resolve: { alias: { '@': path.resolve(root, 'src') }, dedupe: ['vue', 'vuex', 'vue-router'] },
|
|
40
|
+
server: { port: 8080 },
|
|
41
|
+
plugins: [
|
|
42
|
+
vue(), vueJsx(), epxIcons(),
|
|
43
|
+
...(library ? [
|
|
44
|
+
frameDeps(), epxShared(),
|
|
45
|
+
lazyLib({ root, enabled: process.env.LAZY_LIB === 'true', glob: './__DIRNAME__/**/*.vue', pkgName: pkg.name })
|
|
46
|
+
] : []),
|
|
47
|
+
{
|
|
48
|
+
name: 'product-runtime-config',
|
|
49
|
+
transformIndexHtml () {
|
|
50
|
+
const lines = CONFIG_KEYS.map(key => key === 'WITH_CREDENTIALS'
|
|
51
|
+
? 'window.' + key + ' = ' + JSON.stringify(env[key] === 'true')
|
|
52
|
+
: 'window.' + key + ' = ' + JSON.stringify(env[key] || ''))
|
|
53
|
+
lines.push('window.MINIO_IP = window.IP || window.location.origin + "/"')
|
|
54
|
+
return [{ tag: 'script', children: lines.join('\\n'), injectTo: 'head-prepend' }]
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
],
|
|
58
|
+
css: { preprocessorOptions: { scss: {
|
|
59
|
+
additionalData: '@import "' + require.resolve('@epxing/theme/src/theme/utils/mixins.scss').replace(/\\\\/g, '/') + '";',
|
|
60
|
+
quietDeps: true, silenceDeprecations: ['import', 'legacy-js-api', 'global-builtin']
|
|
61
|
+
} } },
|
|
62
|
+
build: library ? {
|
|
63
|
+
outDir: 'lib',
|
|
64
|
+
lib: { entry: path.resolve(root, 'src/index.js'), name: 'library.' + pkg.name, formats: ['umd'], fileName: () => 'index.js' },
|
|
65
|
+
rollupOptions: { output: { exports: 'default', assetFileNames: asset =>
|
|
66
|
+
(asset.names || [asset.name]).some(name => String(name).endsWith('.css')) ? 'index.css' : 'assets/[name]-[hash][extname]' } }
|
|
67
|
+
} : { outDir: 'dist' }
|
|
68
|
+
}
|
|
69
|
+
})
|
|
70
|
+
`,"src/main.js":`import { createApp } from '@epxing/core'
|
|
71
|
+
import Components from '@epxing/component'
|
|
72
|
+
import Business from '@epxing/business'
|
|
73
|
+
import '@epxing/theme'
|
|
74
|
+
import '@epxing/core/style.css'
|
|
75
|
+
import '@epxing/component/style.css'
|
|
76
|
+
import '@epxing/business/style.css'
|
|
77
|
+
import App from './App.vue'
|
|
78
|
+
import product from './index'
|
|
79
|
+
|
|
80
|
+
const app = createApp({ rootComponent: App })
|
|
81
|
+
app.use(Components)
|
|
82
|
+
app.use(Business)
|
|
83
|
+
app.use(product)
|
|
84
|
+
app.mount('#app')
|
|
85
|
+
`,"src/App.vue":`<script setup>
|
|
86
|
+
import { ref } from 'vue'
|
|
87
|
+
const count = ref(0)
|
|
88
|
+
</script>
|
|
89
|
+
|
|
90
|
+
<template>
|
|
91
|
+
<main class="product-start">
|
|
92
|
+
<h1>__NAME__</h1>
|
|
93
|
+
<p>\u4EA7\u54C1\u5DF2\u542F\u52A8\uFF0C\u53EF\u4EE5\u5F00\u59CB\u5F00\u53D1\u3002</p>
|
|
94
|
+
<button @click="count++">\u70B9\u51FB {{ count }} \u6B21</button>
|
|
95
|
+
</main>
|
|
96
|
+
</template>
|
|
97
|
+
|
|
98
|
+
<style scoped>
|
|
99
|
+
.product-start { padding: var(--epx-space-4, 24px); color: var(--epx-text); }
|
|
100
|
+
</style>
|
|
101
|
+
`,"src/__DIRNAME__/DemoList.vue":`<script>
|
|
102
|
+
import { EntityList } from '@epxing/component'
|
|
103
|
+
export default {
|
|
104
|
+
name: 'epx-__NAME__-demo-list',
|
|
105
|
+
extends: EntityList
|
|
106
|
+
// \u914D\u7F6E\u771F\u5B9E metaId\u3001listFields\u3001operates \u540E\uFF0C\u5728\u4EA7\u54C1\u9875\u9762\u4E2D\u4F7F\u7528\u3002
|
|
107
|
+
}
|
|
108
|
+
</script>
|
|
109
|
+
<style lang="scss" scoped>
|
|
110
|
+
.epx-__NAME__-demo-card {
|
|
111
|
+
@include epx-card;
|
|
112
|
+
font-size: var(--epx-font-size-base, 14px);
|
|
113
|
+
}
|
|
114
|
+
</style>
|
|
115
|
+
`,"README.md":`# __NAME__
|
|
116
|
+
|
|
117
|
+
\u57FA\u4E8E @epxing/* \u72EC\u7ACB\u5305\u7684 Vue 3 \u4EA7\u54C1\u3002\u8BE6\u7EC6\u8BF4\u660E\u89C1 [\u4EA7\u54C1\u4F7F\u7528\u6587\u6863](./PRODUCT-GUIDE.md)\u3002
|
|
118
|
+
|
|
119
|
+
\`\`\`sh
|
|
120
|
+
npm install --registry https://registry.npmjs.org/
|
|
121
|
+
npm run dev
|
|
122
|
+
npx epxing lib
|
|
123
|
+
npx epxing lib --full
|
|
124
|
+
npm run build:app
|
|
125
|
+
\`\`\`
|
|
126
|
+
|
|
127
|
+
\u672C\u5730\u9884\u89C8\u9ED8\u8BA4\u7AEF\u53E3 8080\uFF0C\u542F\u52A8\u9875\u4E0D\u4F9D\u8D56\u540E\u7AEF\u3002\u5B9E\u4F53\u5217\u8868\u3001\u8868\u5355\u3001\u4EBA\u5458\u9009\u62E9\u7B49\u529F\u80FD\u9700\u8981\u914D\u7F6E\u540E\u7AEF\u3001\u5143\u6570\u636E\u548C\u6743\u9650\u3002
|
|
128
|
+
`,"PRODUCT-GUIDE.md":_t}}g(et,"createPackageTemplates");var _t=`# \u4EA7\u54C1\u5F00\u53D1\u4E0E\u5347\u7EA7\u4F7F\u7528\u8BF4\u660E
|
|
129
|
+
|
|
130
|
+
<!-- epxing-generated-product-guide -->
|
|
131
|
+
|
|
132
|
+
\u5E73\u53F0\u5305\u7248\u672C\uFF1A\`__PACKAGES_VERSION__\`\uFF1BCLI \u7248\u672C\uFF1A\`__CLI_VERSION__\`\u3002CLI \u4E0E\u5E73\u53F0\u5305\u5206\u522B\u5347\u7EA7\u3002
|
|
133
|
+
|
|
134
|
+
## \u5B89\u88C5\u4E0E\u542F\u52A8
|
|
135
|
+
|
|
136
|
+
\`\`\`sh
|
|
137
|
+
npm install --registry https://registry.npmjs.org/
|
|
138
|
+
npm run dev
|
|
139
|
+
\`\`\`
|
|
140
|
+
|
|
141
|
+
\u672C\u5730\u9ED8\u8BA4 http://localhost:8080\u3002\`.env.development.local\` \u53EF\u8986\u76D6 IP\u3001BASE_CLIENT_ID\u3001BASE_SYSTEM_ID \u7B49\u914D\u7F6E\u3002\u5B9E\u4F53\u7EC4\u4EF6\u9700\u8981\u53EF\u7528\u540E\u7AEF\u548C\u5BF9\u5E94\u5143\u6570\u636E\uFF1B\u521D\u59CB\u6B22\u8FCE\u9875\u53EF\u72EC\u7ACB\u8FD0\u884C\u3002
|
|
142
|
+
|
|
143
|
+
## \u5E94\u7528\u5165\u53E3
|
|
144
|
+
|
|
145
|
+
\`\`\`js
|
|
146
|
+
import { createApp } from '@epxing/core'
|
|
147
|
+
import Components from '@epxing/component'
|
|
148
|
+
import Business from '@epxing/business'
|
|
149
|
+
import '@epxing/theme'
|
|
150
|
+
import '@epxing/core/style.css'
|
|
151
|
+
import '@epxing/component/style.css'
|
|
152
|
+
import '@epxing/business/style.css'
|
|
153
|
+
import App from './App.vue'
|
|
154
|
+
import product from './index'
|
|
155
|
+
|
|
156
|
+
const app = createApp({ rootComponent: App })
|
|
157
|
+
app.use(Components)
|
|
158
|
+
app.use(Business)
|
|
159
|
+
app.use(product)
|
|
160
|
+
app.mount('#app')
|
|
161
|
+
\`\`\`
|
|
162
|
+
|
|
163
|
+
createApp \u8FD4\u56DE Vue App\uFF0C\u9ED8\u8BA4\u521B\u5EFA\u72EC\u7ACB store\u3001hash router \u548C HTTP \u5BA2\u6237\u7AEF\u3002\u9700\u8981\u81EA\u5B9A\u4E49\u65F6\u4F20\u5165 \`{ rootComponent, store, router, http: productHttp }\`\u3002\u4EA7\u54C1 HTTP \u5BA2\u6237\u7AEF\u9700\u5B9E\u73B0\u9875\u9762\u5B9E\u9645\u8C03\u7528\u7684 find/get/list/save \u7B49\u534F\u8BAE\u3002
|
|
164
|
+
|
|
165
|
+
\u4EA7\u54C1\u9700\u8981\u5E73\u53F0\u767B\u5F55\u4E0E\u57FA\u7840\u8DEF\u7531\u65F6\uFF0C\u53EF\u4F7F\u7528 \`createApp({ router: createFrameRouter() })\`\uFF0C\u5E76\u5B89\u88C5\u57FA\u7840\u7EC4\u4EF6\u4E0E Business\uFF0C\u914D\u7F6E\u5BA2\u6237\u7AEF/\u7CFB\u7EDF\u53C2\u6570\u548C\u540E\u7AEF\uFF1B\u9ED8\u8BA4\u8DEF\u7531\u6839\u89C6\u56FE\u7531 core \u63D0\u4F9B\u3002\u81EA\u6709\u8DEF\u7531\u5219\u4F20\u5165\u4EA7\u54C1 router \u6216 routes\u3002
|
|
166
|
+
|
|
167
|
+
## \u7EC4\u4EF6\u4E0E\u5DE5\u5177
|
|
168
|
+
|
|
169
|
+
\`\`\`js
|
|
170
|
+
import { EntityList, AddForm, AddFormItem } from '@epxing/component'
|
|
171
|
+
import { UserFind, EntityTreeManage } from '@epxing/business'
|
|
172
|
+
import { mixins, getSystemMeta, getFileUrl, http, createFieldFactory } from '@epxing/core'
|
|
173
|
+
import { cloneDeep, moment, resolvePlaceholders, storage } from '@epxing/utils'
|
|
174
|
+
|
|
175
|
+
export default {
|
|
176
|
+
name: 'epx-__NAME__-employee-list',
|
|
177
|
+
extends: EntityList,
|
|
178
|
+
metaId: '\u4EA7\u54C1\u5B9E\u9645\u5143\u6570\u636EID',
|
|
179
|
+
pageSize: 20
|
|
180
|
+
}
|
|
181
|
+
\`\`\`
|
|
182
|
+
|
|
183
|
+
\u914D\u7F6E\u9A71\u52A8\u7EC4\u4EF6\u7ECF $configs \u8BFB\u53D6\u5408\u6210\u914D\u7F6E\u3002ComponentMixin/mixins.component \u63D0\u4F9B\u9875\u9762\u4E0A\u4E0B\u6587\uFF1B\u666E\u901A Vue props \u4E0E\u914D\u7F6E\u9879\u8BF7\u6309\u5404\u7EC4\u4EF6 API \u4F7F\u7528\u3002\`runExpByScope.call(vm, scopes, data)\` \u4FDD\u7559\u7EC4\u4EF6\u4E0A\u4E0B\u6587\u3002\u9ED8\u8BA4\u5DE5\u5177\u5BF9\u8C61\u4E0E\u5177\u540D API \u4EE5\u5BF9\u5E94\u5305 API.md \u4E3A\u51C6\u3002
|
|
184
|
+
|
|
185
|
+
\u9700\u8981\u8BBE\u8BA1\u5668/\u770B\u677F\u65F6\uFF0C\u5B89\u88C5\u540C\u7248\u672C \`@epxing/designer\` / \`@epxing/dashboard\`\uFF0C\u5728\u672C\u5730\u5E94\u7528\u5B89\u88C5\u63D2\u4EF6\u5E76\u5F15\u5165 style.css\u3002\u8FDC\u7A0B\u4EA7\u54C1\u4F7F\u7528\u516C\u5F00\u7EC4\u4EF6\uFF0C\u5BBF\u4E3B\u8D1F\u8D23\u5B89\u88C5\u8BBE\u8BA1/\u4E1A\u52A1\u63D2\u4EF6\u3002
|
|
186
|
+
|
|
187
|
+
\u5404\u5305 API.md \u968F\u5B89\u88C5\u5305\u63D0\u4F9B\uFF0C\u53EF\u5728 node_modules/@epxing/<\u5305\u540D>/API.md \u67E5\u770B\u3002\u5355\u6570 component \u4E0E\u590D\u6570 components \u4F7F\u7528\u76F8\u540C\u7EC4\u4EF6\u5BF9\u8C61\uFF0C\u4EA7\u54C1\u7EDF\u4E00\u9009\u4E00\u4E2A\u540D\u79F0\u3002\u65B0\u4EE3\u7801\u4F7F\u7528\u6839\u5BFC\u51FA\u53CA\u7A33\u5B9A\u5B50\u8DEF\u5F84\u3002
|
|
188
|
+
|
|
189
|
+
## \u72EC\u7ACB\u5E94\u7528\u4E0E\u8FDC\u7A0B\u4EA7\u54C1\u5E93
|
|
190
|
+
|
|
191
|
+
\`\`\`sh
|
|
192
|
+
npm run build:app # dist/\uFF1A\u72EC\u7ACB\u5E94\u7528\uFF0C\u4F7F\u7528 npm \u5305
|
|
193
|
+
npx epxing lib # lib/\uFF1A\u9ED8\u8BA4\u6309\u9700\u4EA7\u54C1\u5E93
|
|
194
|
+
npx epxing lib --full # lib/\uFF1A\u5B8C\u6574\u4EA7\u54C1\u5E93
|
|
195
|
+
npm run build:lib # \u76F4\u63A5 Vite \u5B8C\u6574\u5E93\u6784\u5EFA
|
|
196
|
+
npm run build:lib:lazy # \u663E\u5F0F\u6309\u9700\u5E93\u6784\u5EFA
|
|
197
|
+
\`\`\`
|
|
198
|
+
|
|
199
|
+
vite.config.mjs \u53EA\u5728\u8FDC\u7A0B\u5E93\u6784\u5EFA\u542F\u7528 epxShared\u3002\u5B83\u5C06\u516C\u5F00 core/component/utils/business/designer \u548C Vue \u5BFC\u5165\u8FDE\u63A5\u5230\u5BBF\u4E3B\u5171\u4EAB\u547D\u540D\u7A7A\u95F4\uFF0C\u907F\u514D\u91CD\u590D\u6253\u5305\u8FD0\u884C\u65F6\uFF1B\u4E0D\u652F\u6301\u7684\u6DF1\u8DEF\u5F84\u4F1A\u5728\u6784\u5EFA\u65F6\u62A5\u9519\u3002\u5BBF\u4E3B\u5FC5\u987B\u5B89\u88C5\u76F8\u540C\u7248\u672C\u7684\u5E73\u53F0\u5305\uFF0C\u5E76\u5148\u5B8C\u6210\u5BF9\u5E94\u7EC4\u4EF6\u7EC4\u7684\u52A0\u8F7D\u3002\u770B\u677F\u8FDC\u7A0B\u5171\u4EAB\u5165\u53E3\u5C1A\u672A\u63D0\u4F9B\uFF0C\u4F7F\u7528\u770B\u677F\u7684\u8FDC\u7A0B\u4EA7\u54C1\u5E94\u7531\u5BBF\u4E3B\u63D0\u4F9B\u6CE8\u518C\u7EC4\u4EF6\u5E76\u6838\u5BF9\u6784\u5EFA\u4F9D\u8D56\u3002
|
|
200
|
+
|
|
201
|
+
\u5E93\u5165\u53E3\u4FDD\u7559\u7EC4\u4EF6\u6536\u96C6\u3001install \u5E42\u7B49\u548C runtime: vue3\u3002\u65B0\u589E\u7EC4\u4EF6\u653E\u5165 src/__DIRNAME__/ \u5373\u81EA\u52A8\u6536\u96C6\uFF1B\u4EA7\u54C1\u81EA\u6709\u8DEF\u7531\u548C store \u6A21\u5757\u5E94\u5728 install(app) \u4E2D\u6CE8\u518C\uFF0C\u5E76\u786E\u4FDD\u91CD\u590D\u5B89\u88C5\u5B89\u5168\u3002
|
|
202
|
+
|
|
203
|
+
\u6309\u9700\u4EA7\u7269\u5FC5\u987B\u4E0A\u4F20\u6574\u4E2A lib/ \u76EE\u5F55\uFF0C\u5305\u62EC chunks\u3001shims\u3001index.manifest.json\u3001index.full.js \u548C\u6837\u5F0F\u3002\u5E73\u53F0 FM_SYSTEM_WEBPACK \u4ECD\u914D\u7F6E index.js / index.css URL\uFF0Cindex.deps.json \u4E0E\u5165\u53E3\u540C\u76EE\u5F55\u90E8\u7F72\u3002\u72EC\u7ACB\u5E94\u7528\u90E8\u7F72 dist/\u3002
|
|
204
|
+
|
|
205
|
+
## \u5B58\u91CF\u4EA7\u54C1\u5347\u7EA7
|
|
206
|
+
|
|
207
|
+
\`\`\`sh
|
|
208
|
+
epxing migrate . --packages-version __PACKAGES_VERSION__
|
|
209
|
+
epxing migrate . --packages-version __PACKAGES_VERSION__ --apply
|
|
210
|
+
epxing migrate . --packages-version __PACKAGES_VERSION__ --transform-vue --to-vite --apply
|
|
211
|
+
\`\`\`
|
|
212
|
+
|
|
213
|
+
\u9ED8\u8BA4\u53EA\u8BFB\u9884\u89C8\uFF1B--apply \u8981\u6C42 Git \u5DE5\u4F5C\u6811\u5E72\u51C0\u3002\u5347\u7EA7\u4FDD\u7559\u4E1A\u52A1\u7EC4\u4EF6\u3001\u8DEF\u7531\u3001store \u548C\u81EA\u5B9A\u4E49\u914D\u7F6E\uFF0C\u53EA\u81EA\u52A8\u6539\u5199\u786E\u5B9A\u7684\u5BFC\u5165\u53CA\u5165\u53E3\u3002\u52A8\u6001\u53D6\u503C\u3001\u672A\u77E5\u65E7\u63A5\u53E3\u3001\u672A\u652F\u6301\u7684\u6E90\u7801\u8DEF\u5F84\u8FDB\u5165 MIGRATION-REPORT.md \u4EBA\u5DE5\u6E05\u5355\uFF1B\u5B58\u5728\u65E0\u6CD5\u5B8C\u6574\u5207\u6362\u7684\u65E7\u5165\u53E3\u65F6\uFF0C\u4E0D\u6DF7\u88C5\u4E24\u5957\u8FD0\u884C\u65F6\uFF0C\u5148\u4FDD\u7559\u65E7\u6A21\u5F0F\u5E76\u5B8C\u6210\u6E05\u5355\u518D\u5347\u7EA7\u3002
|
|
214
|
+
|
|
215
|
+
Vue 2 \u8BED\u6CD5\u8F6C\u6362\u3001\u7B2C\u4E09\u65B9\u7EC4\u4EF6\u66FF\u6362\u3001\u65E5\u671F\u53C2\u6570\u3001\u4E3B\u9898\u548C\u6837\u5F0F\u9694\u79BB\u9700\u7ED3\u5408\u62A5\u544A\u590D\u6838\u3002\u6784\u5EFA\u901A\u8FC7\u540E\u4ECD\u9700\u5728\u771F\u5B9E\u540E\u7AEF\u9A8C\u6536\u767B\u5F55\u3001\u6743\u9650\u3001\u5217\u8868\u3001\u8868\u5355\u3001\u5F39\u5C42\u53CA\u5173\u952E\u6D41\u7A0B\u3002
|
|
216
|
+
|
|
217
|
+
## \u66F4\u65B0\u7248\u672C
|
|
218
|
+
|
|
219
|
+
\`\`\`sh
|
|
220
|
+
npm install -g @epxing/cli@beta --registry https://registry.npmjs.org/
|
|
221
|
+
epxing --version
|
|
222
|
+
\`\`\`
|
|
223
|
+
|
|
224
|
+
\u6D4B\u8BD5\u7248\u4F7F\u7528 beta \u6807\u7B7E\uFF1B\u4EA7\u54C1\u5C06 @epxing \u5E73\u53F0\u5305\u56FA\u5B9A\u5728\u540C\u4E00\u5DF2\u9A8C\u8BC1\u7248\u672C\u3002CLI \u66F4\u65B0\u4E0D\u4F1A\u81EA\u52A8\u6539\u4EA7\u54C1\u4F9D\u8D56\uFF0C\u6309 migrate \u9884\u89C8\u3001\u5BA1\u9605\u3001\u5E94\u7528\u3001\u5B89\u88C5\u3001\u6784\u5EFA\u548C\u9A8C\u6536\u7684\u987A\u5E8F\u66F4\u65B0\u3002
|
|
225
|
+
`;var Dt=["core","component","utils","business","designer"],W=new Map;for(let e of Dt)for(let t of Object.keys(q["@epxing/"+e].exports))["default","install"].includes(t)||(W.has(t)||W.set(t,[]),W.get(t).push({source:"@epxing/"+e,name:t}));for(let e of["Dashboard","DashboardTabs","DashboardTitle","DashboardDiv","DashboardWidget"])W.set(e,[{source:"@epxing/dashboard",name:e}]);var Nt={Vue:{source:"vue",name:"*"},vuex:{source:"vuex",name:"*"},Vuex:{source:"vuex",name:"*"},store:{source:"@epxing/core/runtime",name:"runtimeStore"},router:{source:"@epxing/core/runtime",name:"runtimeRouter"},componentMixin:{source:"@epxing/core",name:"ComponentMixin"},globalMixin:{source:"@epxing/core",name:"GlobalMixin"}},le=g(e=>Nt[e]||(W.get(e)?.length===1?W.get(e)[0]:null),"fromRoot"),N=g((e,t,n)=>{if(!(!e||typeof e!="object")){e.type&&t(e,n);for(let[o,p]of Object.entries(e))["loc","leadingComments","trailingComments","innerComments","extra"].includes(o)||(Array.isArray(p)?p.forEach(i=>N(i,t,e)):p&&typeof p=="object"&&N(p,t,e))}},"walk"),Vt=g(e=>e?.key?.name??e?.key?.value,"keyOf"),tt=g(e=>/^(?:epx-frame(?:\/|$)|@epx\/)/.test(e),"oldRoot"),K=g(e=>e.replace(/^@epx\//,"@epxing/").replace(/^@epxing\/components(?=\/|$)/,"@epxing/component"),"canonical"),J=new Map;for(let[e,t]of Object.entries(Qe))for(let[n,o]of Object.entries(t))J.set(`@epxing/${e}/src/${o}`,`@epxing/${e}/${n}`);for(let[e,t]of Object.entries(q)){if(!e.startsWith("@epxing/component/"))continue;let n=e.slice(18);J.set("@epxing/component/src/"+n,e);let o=t.exports.default?.[0];o&&J.set(`@epxing/component/src/${n}/${o}`,e)}for(let[e,t]of Object.entries({util:"util",meta:"meta",fieldFactory:"field-factory","pdf.viewer":"pdf-viewer"}))J.set("@epxing/utils/src/"+e,"@epxing/core/"+t);function Ot(e){if(/^epx-frame\/(core|components|business|designer|dashboard|utils)$/.test(e))return K(e.replace("epx-frame/","@epxing/"));let t={"epx-frame/build/vite-plugin-frame-deps.mjs":"frameDeps","epx-frame/build/vite-plugin-lazy-lib.mjs":"lazyLib","epx-frame/build/vite-plugin-epx-shared.mjs":"epxShared"};if(t[e])return{source:"@epxing/cli/vite",defaultName:t[e]};if(e==="epx-frame/build/vite-plugin-icons.mjs")return"@epxing/icons";if(e.startsWith("epx-frame/packages/theme/src/"))return e.replace("epx-frame/packages/theme/","@epxing/theme/");let n=K(e).replace(/\.(?:vue|js|jsx|mjs)$/,"").replace(/\/index$/,"");return J.has(n)?J.get(n):/^@epxing\/theme\/src\//.test(e)||e.startsWith("@epx/")&&!n.includes("/src/")?K(e):null}g(Ot,"moduleTarget");function nt(e,{filename:t,bootstrap:n}){let o=[],p=[],i=new Set,s=new Set,a=new Set,l;try{l=(0,X.parse)(e,{sourceType:"unambiguous",plugins:["jsx","typescript","decorators-legacy","importAttributes"]})}catch(x){return{source:e,manual:[`${t} \u65E0\u6CD5\u9759\u6001\u89E3\u6790\uFF1A${x.message}`],blocked:!0}}let c=new Set;N(l,x=>{x.type==="Identifier"&&c.add(x.name)});let d=g(x=>{let h="__epx"+x;for(;c.has(h);)h+="_";return c.add(h),h},"unique");function y(x,h,I=!1){x.source==="@epxing/core/runtime"&&["runtimeStore","runtimeRouter"].includes(x.name)&&a.add(h);let r=x.name==="*"?`* as ${h}`:`{ ${I?"type ":""}${x.name}${x.name===h?"":" as "+h} }`;i.add(`import ${r} from '${x.source}'`)}g(y,"addImport");function S(x,h,I){let r=[],b=[];if(N(l,(u,k)=>{if(!(!["Identifier","JSXIdentifier"].includes(u.type)||u.name!==x||u.start>=I.start&&u.end<=I.end))if((k?.type==="MemberExpression"||k?.type==="OptionalMemberExpression")&&k.object===u){let E=k.computed?k.property.type==="StringLiteral"?k.property.value:null:k.property.name,w=E&&h(E);w?r.push({node:k,target:w,property:E}):b.push(E||"\u52A8\u6001\u5C5E\u6027")}else b.push("\u76F4\u63A5\u5F15\u7528\u6216\u540C\u540D\u5C40\u90E8\u7ED1\u5B9A")}),b.length){o.push(`${t}\uFF1A${x} \u542B\u65E0\u6CD5\u786E\u5B9A\u7684\u8BBF\u95EE\uFF08${[...new Set(b)].join("\u3001")}\uFF09\uFF0C\u4FDD\u7559\u65E7\u5165\u53E3\uFF0C\u9700\u4EBA\u5DE5\u62C6\u5206\u3002`);return}let f=new Map;for(let u of r){let k=u.target.source+":"+u.target.name;if(!f.has(k)){let E=d(u.property);y(u.target,E),f.set(k,E)}p.push({start:u.node.start,end:u.node.end,text:f.get(k)}),u.target.name==="createApp"&&s.add(u.node)}}g(S,"namespace");for(let x of l.program.body){if(!["ImportDeclaration","ExportNamedDeclaration","ExportAllDeclaration"].includes(x.type)||!x.source)continue;let h=x.source.value,I=h==="epx-frame",r=Ot(h);if(I||tt(h)||h.startsWith("@epxing/")&&h.includes("/src/")){if(!I&&!r){o.push(`${t}\uFF1A\u5C1A\u65E0\u516C\u5F00\u6620\u5C04 ${h}\uFF0C\u9700\u6539\u7528\u5BF9\u5E94\u5305\u516C\u5F00 API\u3002`);continue}if(x.type!=="ImportDeclaration"){if(I||typeof r=="object"){o.push(`${t}\uFF1A${h} \u7684\u91CD\u5BFC\u51FA\u9700\u4EBA\u5DE5\u62C6\u5206\u3002`);continue}p.push({start:x.source.start,end:x.source.end,text:JSON.stringify(r)});continue}if(!x.specifiers.length){I||typeof r=="object"?o.push(`${t}\uFF1A\u526F\u4F5C\u7528\u5BFC\u5165 ${h} \u65E0\u6CD5\u6620\u5C04\u3002`):p.push({start:x.source.start,end:x.source.end,text:JSON.stringify(r)});continue}for(let f of x.specifiers){let u=f.local.name;if(I||r==="@epxing/utils"&&f.type!=="ImportSpecifier")if(f.type!=="ImportSpecifier")S(u,k=>r==="@epxing/utils"&&q["@epxing/utils"].exports[k]?{source:"@epxing/utils",name:k}:le(k),x);else{let k=f.imported.name||f.imported.value,E=le(k);if(!E){o.push(`${t}\uFF1A\u65E7\u6839\u5BFC\u51FA ${k} \u4E0D\u552F\u4E00\u6216\u5C1A\u672A\u516C\u5F00\uFF0C\u9700\u4EBA\u5DE5\u9009\u62E9\u3002`);continue}y(E,u,x.importKind==="type"||f.importKind==="type"),E.name==="createApp"&&s.add(u)}else{let k=typeof r=="string"?{source:r}:r,E=f.type==="ImportDefaultSpecifier"?k.defaultName||"default":f.type==="ImportNamespaceSpecifier"?"*":f.imported.name||f.imported.value;if(k.source==="@epxing/utils"&&f.type==="ImportSpecifier"&&!q["@epxing/utils"].exports[E]){let w=le(E);w?y(w,u):o.push(`${t}\uFF1Autils \u7684\u65E7\u5BFC\u51FA ${E} \u5C1A\u65E0\u786E\u5B9A\u6620\u5C04\u3002`);continue}E==="default"?i.add(`import ${u} from '${k.source}'`):y({source:k.source,name:E},u,x.importKind==="type"||f.importKind==="type"),E==="createApp"&&k.source==="@epxing/core"&&s.add(u)}}p.push({start:x.start,end:x.end,text:""})}}if(N(l,(x,h)=>{x.type!=="StringLiteral"||!tt(x.value)||h?.type==="ImportDeclaration"||/Export/.test(h?.type||"")||h?.type==="CallExpression"&&(h.callee.type==="Import"||h.callee.name==="require")&&o.push(`${t}\uFF1A\u52A8\u6001\u5BFC\u5165/require ${x.value} \u9700\u8981\u4EBA\u5DE5\u6539\u5199\u3002`)}),n&&s.size){let x=!1,h=1/0;N(l,I=>{if(I.type==="VariableDeclaration")for(let r of I.declarations){let b=r.init;if(b?.type!=="CallExpression"||r.id.type!=="Identifier"||!s.has(b.callee)&&!s.has(b.callee?.name))continue;let f=r.id.name;if(h=Math.min(h,b.start),!b.arguments.length){let E=d("CreateFrameRouter");y({source:"@epxing/core",name:"createFrameRouter"},E),p.push({start:b.end-1,end:b.end-1,text:`{ router: ${E}() }`})}let u=d("Components"),k=d("Business");i.add(`import ${u} from '@epxing/component'`),i.add(`import ${k} from '@epxing/business'`);for(let E of["@epxing/theme","@epxing/core/style.css","@epxing/component/style.css","@epxing/business/style.css"])!e.includes(`'${E}'`)&&!e.includes(`"${E}"`)&&i.add(`import '${E}'`);p.push({start:I.end,end:I.end,text:`
|
|
226
|
+
${f}.use(${u})
|
|
227
|
+
${f}.use(${k})
|
|
228
|
+
`}),x=!0}}),x||o.push(`${t}\uFF1A\u672A\u8BC6\u522B const app = createApp(...) \u542F\u52A8\u8BED\u53E5\uFF0C\u9700\u4EBA\u5DE5\u5B89\u88C5\u7EC4\u4EF6\u548C\u4E1A\u52A1\u63D2\u4EF6\u3002`),N(l,(I,r)=>{I.type==="Identifier"&&a.has(I.name)&&I.start<h&&r?.type==="MemberExpression"&&r.object===I&&o.push(`${t}\uFF1A${I.name} \u5728 createApp \u524D\u4F7F\u7528\uFF1B\u5148\u521B\u5EFA\u4EA7\u54C1 store/router \u5E76\u663E\u5F0F\u4F20\u5165 core\uFF0C\u518D\u5207\u6362\u72EC\u7ACB\u5305\u3002`)})}if(o.length)return{source:e,manual:o,blocked:!0};p.sort((x,h)=>h.start-x.start||h.end-x.end);let P=e;for(let x of p)P=P.slice(0,x.start)+x.text+P.slice(x.end);i.size&&(P=[...i].join(`
|
|
229
|
+
`)+`
|
|
230
|
+
`+P);try{(0,X.parse)(P,{sourceType:"unambiguous",plugins:["jsx","typescript","decorators-legacy","importAttributes"]})}catch(x){return{source:e,manual:[`${t}\uFF1A\u8F6C\u6362\u540E\u8BED\u6CD5\u9A8C\u8BC1\u5931\u8D25\uFF0C\u4FDD\u7559\u539F\u6587\uFF1A${x.message}`],blocked:!0}}return{source:P,manual:o,blocked:!1}}g(nt,"transformScript");function Bt(e,t={}){if(t.filename?.endsWith(".vue")){let n=[],o=!1,p=e.replace(/(<script\b[^>]*>)([\s\S]*?)(<\/script>)/g,(i,s,a,l)=>{let c=nt(a,t);return n.push(...c.manual),o||=c.blocked,s+c.source+l});return{source:o?e:p,manual:n,blocked:o}}return nt(e,t)}g(Bt,"rewritePackageImports");function ot({read:e,files:t,packagesVersion:n,cliVersion:o="0.5.0-beta.0",templates:p,newVite:i=!1}){let s=[],a=[];if(!/^(?:[~^]?\d+\.\d+\.\d+(?:-[\w.-]+)?|[a-z][\w.-]*)$/.test(n))throw new Error("--packages-version \u9700\u8981 npm \u7248\u672C\u3001\u7248\u672C\u8303\u56F4\u6216\u6807\u7B7E");let l=et(p),c=JSON.parse(e("package.json")),d=(e("src/index.js")||"").match(/import\.meta\.glob\(\s*['"]\.\/([^/'"]+)\//)?.[1]||c.name||"product",y=g(r=>r.replaceAll("__NAME__",c.name||"product").replaceAll("__DIRNAME__",d).replaceAll("__PACKAGES_VERSION__",n).replaceAll("__CLI_VERSION__",o),"render"),S=["vite.config.mjs","vite.config.js","vite.config.ts"].find(r=>e(r)!=null);if(!S&&e("webpack.config.js")!=null)return{changes:[],manual:["\u72EC\u7ACB\u5305\u8FDC\u7A0B\u5171\u4EAB\u9700\u8981 Vite\uFF1B\u8BF7\u52A0 --to-vite \u6216\u5148\u624B\u5DE5\u8FC1\u79FB\u6784\u5EFA\u914D\u7F6E\u3002"],blocked:!0};let P=S&&!i?[S]:[],x=new Set;for(let r of[...t,...P]){let b=e(r);if(!b||!/epx-frame|@epx(?:ing)?\//.test(b))continue;let f=Bt(b,{filename:r,bootstrap:/(?:^|\/)main\.[jt]s$/.test(r)});a.push(...f.manual);let u=f.source;if(r===S&&!f.blocked&&!u.includes("epxShared(")){let E=(0,X.parse)(u,{sourceType:"module",plugins:["typescript","jsx","importAttributes"]}),w;N(E,B=>{!w&&B.type==="ObjectProperty"&&Vt(B)==="plugins"&&B.value.type==="ArrayExpression"&&(w=B.value)}),w?u=`import { epxShared as __epxShared } from '@epxing/cli/vite'
|
|
231
|
+
`+u.slice(0,w.start+1)+"__epxShared(), "+u.slice(w.start+1):a.push(`${r}\uFF1Aplugins \u6570\u7EC4\u65E0\u6CD5\u786E\u5B9A\uFF0C\u9700\u4EBA\u5DE5\u63A5\u5165 @epxing/cli/vite \u7684 epxShared\u3002`)}let k=r.endsWith(".vue")?[...u.matchAll(/<script\b[^>]*>([\s\S]*?)<\/script>/g)].map(E=>E[1]):[u];for(let E of k){let w=(0,X.parse)(E,{sourceType:"unambiguous",plugins:["typescript","jsx","decorators-legacy","importAttributes"]});N(w,(B,Q)=>{if(B.type!=="StringLiteral"||!/^(?:ImportDeclaration|ExportNamedDeclaration|ExportAllDeclaration)$/.test(Q?.type||"")&&!(Q?.type==="CallExpression"&&(Q.callee.type==="Import"||Q.callee.name==="require")))return;let he=B.value.match(/^(@epxing\/[\w-]+)/)?.[1];he&&x.add(he)})}u!==b&&s.push({file:r,after:u})}if(a.length)return{changes:[],manual:a,blocked:!0};if(i){s.push({file:S||"vite.config.mjs",after:y(l["vite.config.mjs"])});for(let r of["@epxing/cli","@epxing/icons","@epxing/theme"])x.add(r)}c.dependencies||={},c.devDependencies||={};for(let[r,b]of Object.entries(JSON.parse(y(l["package.json"])).dependencies))r.startsWith("@epxing/")&&!x.has(r)&&!["@epxing/core","@epxing/component","@epxing/utils"].includes(r)||(c.dependencies[r]=b);for(let r of["dependencies","devDependencies","peerDependencies"])for(let b of Object.keys(c[r]||{}))if(b.startsWith("@epx/")){let f=K(b);c[r][f]=n,delete c[r][b]}else b.startsWith("@epxing/")&&b!=="@epxing/cli"&&(c[r][b]=n);for(let r of x){let b=["@epxing/cli","@epxing/icons"].includes(r),f=b?"devDependencies":"dependencies";c[f][r]=r==="@epxing/cli"?o:n,delete c[b?"dependencies":"devDependencies"][r]}let h=S&&/node_modules\/epx-frame\/lib/.test(e(S)||"")&&!i;h?(c.devDependencies["epx-frame"]=c.dependencies["epx-frame"]||c.devDependencies["epx-frame"],delete c.dependencies["epx-frame"]):(delete c.dependencies["epx-frame"],delete c.devDependencies["epx-frame"]),c.runtime="vue3",s.push({file:"package.json",after:JSON.stringify(c,null,2)+`
|
|
232
|
+
`});let I=e("PRODUCT-GUIDE.md")==null||e("PRODUCT-GUIDE.md").includes("<!-- epxing-generated-product-guide -->")?"PRODUCT-GUIDE.md":"EPXING-PACKAGES-GUIDE.md";return e(I)!=null&&!e(I).includes("<!-- epxing-generated-product-guide -->")?{changes:[],manual:[`${I} \u5DF2\u6709\u81EA\u5B9A\u4E49\u5185\u5BB9\uFF0C\u5148\u6307\u5B9A\u6216\u817E\u51FA\u72EC\u7ACB\u5305\u4F7F\u7528\u8BF4\u660E\u8DEF\u5F84\u540E\u91CD\u8BD5\u3002`],blocked:!0}:(s.push({file:I,after:y(l["PRODUCT-GUIDE.md"])}),{changes:s,manual:h?["\u73B0\u6709 Vite \u9759\u6001\u8D44\u6E90\u4EE3\u7406\u4ECD\u8BFB\u53D6 epx-frame/lib\uFF0C\u6682\u4FDD\u7559\u4E3A\u5F00\u53D1\u4F9D\u8D56\uFF1B\u8FD0\u884C\u65F6\u6E90\u7801\u5DF2\u6539\u4E3A\u72EC\u7ACB\u5305\u3002"]:[],blocked:!1})}g(ot,"planIndependentPackages");import{TEMPLATES as Ut}from"../epx-create/scaffold.mjs";var R=process.argv.slice(2),se=R.indexOf("--epx-frame"),pe=se!==-1?R[se+1]:null;se!==-1&&R.splice(se,2);var ue=R.indexOf("--packages-version"),V=ue===-1?null:R.splice(ue,2)[1],it=R.indexOf("--cli-version"),pt=it===-1?"0.5.0-beta.0":R.splice(it,2)[1];if(pe&&V)throw new Error("--packages-version \u4E0E --epx-frame \u4E0D\u80FD\u540C\u65F6\u6307\u5B9A");if(ue!==-1&&(!V||V.startsWith("--")))throw new Error("--packages-version \u7F3A\u5C11\u503C");var T=R.find(e=>!e.startsWith("--")),z=R.includes("--apply"),de=R.includes("--transform-vue"),ge=R.includes("--report-only"),rt=R.includes("--to-vite"),m=g((...e)=>console.log(...e),"log");pe&&(ee["epx-frame"].target=pe);(!T||!v.existsSync(T))&&(console.error("\u7528\u6CD5\uFF1Anode tools/epx-migrate/migrate.mjs <\u8001\u9879\u76EE\u76EE\u5F55> [--apply] [--transform-vue] [--to-vite] [--report-only] [--epx-frame <spec>]"),process.exit(1));var D=g(e=>A.join(T,e),"rel"),$=g(e=>v.existsSync(D(e))?v.readFileSync(D(e),"utf8"):null,"read"),F=[],C=[],be=!1,j=g(e=>m(`
|
|
28
233
|
${"\u2501".repeat(60)}
|
|
29
|
-
\u258D ${
|
|
30
|
-
${"\u2501".repeat(60)}`),"stage"),
|
|
31
|
-
`})):
|
|
32
|
-
`);return`const app = ${
|
|
33
|
-
${
|
|
34
|
-
`:""}app.mount(${
|
|
35
|
-
'@vue/babel-plugin-jsx', // .vue \u5185 JSX\uFF08renderColumn \u7B49\uFF09`):
|
|
36
|
-
plugins: ['@vue/babel-plugin-jsx'],`)),
|
|
37
|
-
${
|
|
234
|
+
\u258D ${e}
|
|
235
|
+
${"\u2501".repeat(60)}`),"stage"),Ht=g(e=>{let t=String(e),n=/(^|[^\d.])3(\.|x|\b)/.test(t);return/(^|[^\d.])2(\.|x|\b)/.test(t)&&!n},"wantsVue2Only");if(z)try{me("git status --porcelain",{cwd:T,encoding:"utf8"}).trim()&&(console.error("\u2717 \u9879\u76EE\u5DE5\u4F5C\u6811\u4E0D\u5E72\u51C0\uFF0C--apply \u524D\u8BF7\u5148 commit/stash\uFF08\u4FBF\u4E8E git diff \u5BA1\u67E5\u4E0E\u56DE\u6EDA\uFF09\u3002"),process.exit(1))}catch{console.error("\u2717 \u76EE\u6807\u4E0D\u662F git \u4ED3\u5E93\uFF1B--apply \u9700\u8981 git \u4EE5\u4FBF\u5BA1\u67E5\u56DE\u6EDA\u3002\u5148 git init \u6216\u53BB\u6389 --apply \u8D70 dry-run\u3002"),process.exit(1)}var M=[],_=[],at=[],ct=g(e=>{for(let t of v.readdirSync(e,{withFileTypes:!0})){let n=A.join(e,t.name);t.isDirectory()&&!/node_modules|\.git|^lib$|^dist$/.test(t.name)?ct(n):t.name.endsWith(".vue")?(M.push(n),_.push(n)):/\.(?:[cm]?js|jsx|ts|tsx)$/.test(t.name)?_.push(n):/\.(?:css|scss|less|sass|styl|stylus)$/.test(t.name)&&at.push(n)}},"walk");v.existsSync(D("src"))&&ct(D("src"));var ve=new Set;for(let e of _){let t=v.readFileSync(e,"utf8");for(let n of t.matchAll(/(?:from\s+|require\()\s*['"]([^'"./][^'"]*)['"]/g)){let o=n[1];o.startsWith("@/")||ve.add(o.startsWith("@")?o.split("/").slice(0,2).join("/"):o.split("/")[0])}}var lt=g(e=>{let t=e.match(/<script(\s[^>]*)?>([\s\S]*?)<\/script>/);return t?{attrs:t[1]||"",body:t[2]}:null},"scriptOf"),gt=g(e=>/[(=,]\s*\n?\s*<[A-Za-z][\w-]*[\s>/]/.test(e),"hasJsx"),O=M.filter(e=>{let t=lt(v.readFileSync(e,"utf8"));return t&>(t.body)});j("\u2460 \u4F9D\u8D56\u8FC1\u79FB\uFF08package.json\uFF09");var ne=$("package.json"),mt=$("webpack.config.js")!=null;if(ne){let e=JSON.parse(ne),t=e.runtime!=="vue3";e.runtime="vue3",t&&m(" [\u6539] runtime \u2192 vue3\uFF08\u521B\u5EFA/\u8FC1\u79FB\u540E\u7684\u8FD0\u884C\u65F6\u6807\u8BC6\uFF09");let n=[],o=g((i,s,a,l)=>{let c=a?"devDependencies":"dependencies";e[c]=e[c]||{},e[c][i]!==s&&(n.push([e[c][i]!=null?"\u6539":"\u52A0",i,e[c][i]||"\u2014",s,l||""]),e[c][i]=s)},"setDep");for(let[i,s]of Object.entries(ee))for(let a of["dependencies","devDependencies"]){let l=e[a];l&&l[i]!=null&&(s.target===null?(n.push(["\u5220",i,l[i],"\u2014",s.note||""]),delete l[i]):l[i]!==s.target&&(n.push(["\u6539",i,l[i],s.target,s.note||""]),l[i]=s.target))}if(mt)for(let[i,s]of Object.entries(Ce))o(i,s,!0,"lib \u6784\u5EFA\u95ED\u5305");if(O.length)for(let[i,s]of Object.entries(Pe))o(i,s,!0,`.vue \u5185 JSX\uFF08${O.length} \u6587\u4EF6\uFF09`);if(M.length)for(let[i,s]of Object.entries(Fe))o(i,s,!1,"element-plus \u56FE\u6807\uFF08gogocode \u8F6C\u6362\u4EA7\u7269\u9700\u8981\uFF09");(ne.includes("@vue/eslint-config-standard")||ne.includes("babel-eslint"))&&C.push("lint \u914D\u7F6E\uFF1A\u8001 eslint6+standard5 \u6808\u5DF2\u9000\u5F79\uFF08ERESOLVE \u51B2\u7A81\uFF09\u2014\u2014\u6309\u5E73\u53F0 .eslintrc \u91CD\u5EFA\u89C4\u5219\uFF08eslint8 + plugin-vue9\uFF09");let p={...e.dependencies||{},...e.devDependencies||{}};for(let i of[...ve].sort())p[i]||i==="epx-frame"||i==="vue"||(ae[i]?o(i,ae[i],!1,"\u9690\u5F0F\u4F9D\u8D56\u8865\u58F0\u660E\uFF08\u539F\u9760 hoist\uFF09"):C.push(`src \u91CC import \u4E86 \`${i}\` \u4F46 package.json \u672A\u58F0\u660E\u4E14\u4E0D\u5728\u5DF2\u77E5\u7248\u672C\u8868\u2014\u2014\u4EBA\u5DE5\u8865\u7248\u672C`));n.length||t?(n.forEach(([i,s,a,l,c])=>m(` [${i}] ${s.padEnd(26)} ${String(a).padEnd(12)} \u2192 ${String(l).padEnd(12)} ${c}`)),F.push({file:"package.json",after:JSON.stringify(e,null,2)+`
|
|
236
|
+
`})):m(" \uFF08\u65E0\u5339\u914D\u4F9D\u8D56\u9700\u8FC1\u79FB\uFF09")}else m(" \u2717 \u672A\u627E\u5230 package.json");j("\u2461 codemod\uFF08main.js / index.js / babel.config.js / webpack.config.js / \u7A7A SFC\uFF09");var Y=["src/main.js","src/main.ts","main.js"].find(e=>$(e)!=null);if(Y){let e=$(Y),t=e,n=[...e.matchAll(/\bVue\.use\(([^)]+)\)\s*;?/g)].map(o=>o[1].trim());if(e=e.replace(/\bVue\.use\([^)]+\)\s*;?\n?/g,""),e=e.replace(/(?:const\s+\w+\s*=\s*)?(\w+\.)?createApp\(\)\.\$mount\((['"][^'"]+['"])\)\s*;?/,(o,p,i)=>{let s=n.map(a=>`app.use(${a})`).join(`
|
|
237
|
+
`);return`const app = ${p||""}createApp()
|
|
238
|
+
${s}${s?`
|
|
239
|
+
`:""}app.mount(${i})`}),/const app = createApp\(\)/.test(e)){let o=(t.match(/import\s+(\w+)\s*(,|from)/)||[])[1];o&&(e=e.replace("const app = createApp()",`const app = ${o}.createApp()`))}e=Re(e),e!==t?(m(` \u2713 ${Y}\uFF1AVue.use(${n.join(",")})\u2192app.use\u3001$mount\u2192mount\u3001import \u6536\u655B`),F.push({file:Y,after:e})):m(` \xB7 ${Y}\uFF1A\u65E0\u9700\u6539\uFF08\u6216\u5199\u6CD5\u4E0D\u8BC6\u522B\uFF0C\u4EBA\u5DE5\u6838\u5BF9\uFF09`)}else C.push("\u5165\u53E3 main.js \u672A\u627E\u5230\uFF0C\u624B\u52A8\u786E\u8BA4 createApp/mount \u5DF2 Vue3 \u5316");var L=["src/index.js","index.js"].find(e=>$(e)!=null);if(L){let e=$(L),t=e;e=Be(e),/require\.context/.test(e)&&C.push(`${L}\uFF1Arequire.context\uFF08webpack \u7279\u6027\uFF09\u3002\u4FDD\u7559 webpack \u6784\u5EFA\u5219\u4E0D\u7528\u6539\uFF1B\u8F6C Vite \u624D\u6362 import.meta.glob`),e!==t?(m(` \u2713 ${L}\uFF1Ainstall \u7B7E\u540D \u2192 (app, ...)\u3001Vue2 \u5168\u5C40 API \u2192 app \u5B9E\u4F8B`),F.push({file:L,after:e})):m(` \xB7 ${L}\uFF1A\u5DF2\u517C\u5BB9\u6216\u5199\u6CD5\u4E0D\u8BC6\u522B`)}var G=["babel.config.js",".babelrc.js"].find(e=>$(e)!=null);if(G){let e=$(G),t=e;e=e.replace(/\[\s*'component'[\s\S]*?\]\s*,?\n?/,""),e=e.replace(/\[\s*'import'[\s\S]*?\]\s*,?\n?/,""),e=e.replace(/,?\s*'@vue\/cli-plugin-babel\/preset'/,""),O.length&&!e.includes("@vue/babel-plugin-jsx")&&(/plugins:\s*\[/.test(e)?e=e.replace(/plugins:\s*\[/,`plugins: [
|
|
240
|
+
'@vue/babel-plugin-jsx', // .vue \u5185 JSX\uFF08renderColumn \u7B49\uFF09`):e=e.replace(/module\.exports\s*=\s*\{/,`module.exports = {
|
|
241
|
+
plugins: ['@vue/babel-plugin-jsx'],`)),e!==t?(m(` \u2713 ${G}\uFF1A\u5220\u6309\u9700\u63D2\u4EF6/cli preset${O.length?" + \u52A0 @vue/babel-plugin-jsx":""}`),F.push({file:G,after:e})):m(` \xB7 ${G}\uFF1A\u65E0\u9700\u6539`),/@babel\/preset-env/.test(e)||C.push(`${G}\uFF1A\u6CA1\u6709 @babel/preset-env\u2014\u2014\u8865 presets: [['@babel/preset-env']]`),/ie\s*>=?\s*\d/.test(e)&&C.push(`${G}\uFF1Atargets \u542B IE\uFF08Vue3 \u4E0D\u652F\u6301 IE\uFF09\uFF0C\u5EFA\u8BAE\u6539\u73B0\u4EE3\u6D4F\u89C8\u5668`)}if(mt){let e=$("webpack.config.js"),t=e;/frame'\s*,\s*'Vue'/.test(e)||(e=e.replace(/externals:\s*(\/[^\n/]*(?:\\\/[^\n/]*)*\/i?)\s*,/,(n,o)=>`externals: [
|
|
242
|
+
${o},
|
|
38
243
|
// Vue3 \u7F16\u8BD1\u4EA7\u7269 import 'vue' \u2192 \u8FD0\u884C\u65F6\u7528\u5E73\u53F0\u5171\u4EAB Vue\uFF08window.frame.Vue\uFF09\uFF0C\u4E0D\u6253\u8FDB bundle
|
|
39
244
|
{ vue: { root: ['frame', 'Vue'], commonjs: 'vue', commonjs2: 'vue', amd: 'vue' } }
|
|
40
|
-
],`)),
|
|
41
|
-
`).map(
|
|
42
|
-
`)),
|
|
245
|
+
],`)),O.length&&(e=e.split(`
|
|
246
|
+
`).map(n=>n.includes("test:")&&n.includes(".js")&&!n.includes(".jsx")&&!n.includes("json")&&!n.includes(".vue")?n.replace(".js",".jsx?"):n).join(`
|
|
247
|
+
`)),e!==t?(m(` \u2713 webpack.config.js\uFF1Aexternals \u52A0 vue \u5916\u7F6E${O.length?" + babel \u89C4\u5219\u6536 .jsx":""}`),F.push({file:"webpack.config.js",after:e})):m(" \xB7 webpack.config.js\uFF1A\u65E0\u9700\u6539\u6216\u5199\u6CD5\u4E0D\u8BC6\u522B\uFF08\u4EBA\u5DE5\u6838\u5BF9\uFF09")}for(let e of M)v.readFileSync(e,"utf8").trim()===""&&(F.push({file:A.relative(T,e),after:`<script>
|
|
43
248
|
// \u539F\u9879\u76EE\u9057\u7559\u7A7A\u6587\u4EF6\uFF08Vue2 loader \u5BB9\u5FCD\u7A7A SFC\uFF0CVue3 \u9700\u81F3\u5C11\u4E00\u4E2A\u5757\uFF09\u2014\u2014\u8865\u6700\u5C0F\u5408\u6CD5\u5185\u5BB9\uFF0C\u884C\u4E3A\u540C\u524D
|
|
44
249
|
export default {}
|
|
45
250
|
</script>
|
|
46
|
-
`}),
|
|
47
|
-
\u8DD1 gogocode\uFF08style \u5757\u5148\u5FEB\u7167\u2014\u2014gogocode \u4F1A\u628A\u6CE8\u91CA\u6389\u7684 scss \u5757\u6539\u6210\u5B64\u513F { \u6216\u6574\u5757\u5220\u6389\uFF09\u2026`);let
|
|
48
|
-
`),
|
|
49
|
-
cd ${
|
|
50
|
-
`,stdio:["pipe","inherit","inherit"]}),
|
|
251
|
+
`}),m(` \u2713 \u7A7A SFC \u8865\u9F50\uFF1A${A.relative(T,e)}`));j("\u2462 .vue \u6279\u91CF\u8F6C\u6362\uFF08gogocode plugin-vue + plugin-element\uFF0Cstyle \u5757\u5FEB\u7167\u4FDD\u62A4\uFF09");var U=g(e=>M.filter(t=>e.test(v.readFileSync(t,"utf8"))).length,"scan"),oe=/<style[^>]*>[\s\S]*?<\/style>/g,ut={"element-ui\uFF08el-*\uFF09\u7528\u6CD5 \u2192 element-plus API \u5DEE\u5F02\uFF08el-dialog visible.sync\u2192v-model\u3001date value-format \u7B49\uFF09":U(/<el-/),'slot="x" / slot-scope\uFF08\u65E7\u63D2\u69FD\uFF09\u2192 v-slot\uFF08gogocode \u81EA\u52A8\uFF09':U(/slot="|slot-scope/),"\u81EA\u5B9A\u4E49\u7EC4\u4EF6 v-model\uFF08value/input \u2192 modelValue\uFF0Cgogocode \u81EA\u52A8\uFF0C\u8FD0\u884C\u65F6\u590D\u6838\uFF09":U(/v-model/),"$on/$off \u4E8B\u4EF6\u603B\u7EBF\uFF08Vue3 \u5B9E\u4F8B\u65E0 $on/$off\uFF1Bepx-frame \u5E73\u53F0 bus \u4ECD\u53EF\u7528\uFF0C\u8DD1\u901A\u540E\u590D\u6838\uFF09":U(/\$on\(|\$off\(/),'JSX in script\uFF08\u5DF2\u81EA\u52A8 lang="jsx"+babel \u63D2\u4EF6\uFF1BscopedSlots \u7B49 Vue2 JSX \u8BED\u4E49\u4EBA\u5DE5\u590D\u6838\uFF09':O.length,"\u8FC7\u6EE4\u5668 {{ x | f }}\uFF08Vue3 \u79FB\u9664\uFF1Bgogocode \u8F6C\u6362\u540E\u590D\u6838\uFF09":U(/\{\{[^}]*\|[^}|]+\}\}/),"$children\uFF08Vue3 \u79FB\u9664\uFF09\u2192 ref/provide-inject\uFF08\u4EBA\u5DE5\uFF09":U(/\$children/),".native \u4FEE\u9970\u7B26\uFF08Vue3 \u79FB\u9664\uFF0C\u4EBA\u5DE5\u590D\u6838\uFF09":U(/\.native/),"\u5185\u8054\u4E8B\u4EF6\u591A\u8BED\u53E5\u7F3A\u5206\u53F7\uFF08Vue2 \u5BB9\u5FCD\u6362\u884C\u5206\u9694\uFF0CVue3 \u7F16\u8BD1\u62A5 Unexpected token\u2014\u2014\u6309\u62A5\u9519\u9010\u4E2A\u8865\u5206\u53F7\uFF09":M.filter(e=>/@[\w.]+="[^"]*\n[^";]*\n/.test(v.readFileSync(e,"utf8"))).length};m(` .vue \u6587\u4EF6\uFF1A${M.length} \u4E2A\uFF08JSX\uFF1A${O.length}\uFF09`);Object.entries(ut).filter(([,e])=>e>0).forEach(([e,t])=>m(` \xB7 ${String(t).padStart(3)} \u6587\u4EF6 ${e}`));var ie=".epx-migrate-vue3-out";if(de&&z){let t=_.filter(i=>{try{return v.statSync(i).size>204800}catch{return!1}});if(t.length){let i=t.map(s=>`${A.relative(T,s)}\uFF08${Math.round(v.statSync(s).size/1024)}KB\uFF09`).join("\u3001");m(` \u26A0 ${t.length} \u4E2A\u6E90\u7801\u6587\u4EF6\u8D85\u8FC7 200KB\uFF0Cgogocode \u4F1A\u8DF3\u8FC7\uFF1A${i}`),C.push(`\u4EE5\u4E0B\u6E90\u7801\u6587\u4EF6\u8D85\u8FC7 200KB\uFF0Cgogocode \u7684\u5927\u6587\u4EF6\u4FDD\u62A4\u4F1A\u8DF3\u8FC7\uFF08\u5176\u4F59\u6587\u4EF6\u6B63\u5E38\u8F6C\u6362\uFF09\uFF0C\u9700\u4EBA\u5DE5 Vue3 \u5316\uFF1A${i}`)}m(`
|
|
252
|
+
\u8DD1 gogocode\uFF08style \u5757\u5148\u5FEB\u7167\u2014\u2014gogocode \u4F1A\u628A\u6CE8\u91CA\u6389\u7684 scss \u5757\u6539\u6210\u5B64\u513F { \u6216\u6574\u5757\u5220\u6389\uFF09\u2026`);let n=new Map;for(let i of M)n.set(i,v.readFileSync(i,"utf8").match(oe)||[]);let o=A.join(ye.homedir(),".epx-migrate","gogocode"),p=De({projectDir:A.resolve(T),toolDir:A.resolve(A.dirname(Gt(import.meta.url)),"../.."),cacheDir:o,versions:re,exists:g(i=>v.existsSync(i),"exists"),log:m,install:g(({cacheDir:i,specs:s})=>{v.mkdirSync(i,{recursive:!0});let a=A.join(i,"package.json");v.existsSync(a)||v.writeFileSync(a,JSON.stringify({name:"epx-migrate-gogocode",private:!0,version:"1.0.0"},null,2)+`
|
|
253
|
+
`),me(`npm i --no-audit --no-fund ${s.join(" ")}`,{cwd:i,stdio:"inherit"})},"install")});p.cli||(C.push(`gogocode \u672A\u80FD\u5C31\u7EEA\uFF08.vue \u672A\u8F6C\u6362\uFF09\uFF1A${p.error||"\u672A\u77E5\u539F\u56E0"}\u3002\u53EF\u624B\u52A8\u88C5\u540E\u91CD\u8DD1\uFF1A
|
|
254
|
+
cd ${o} && npm i ${Object.entries(re).map(([i,s])=>`${i}@${s}`).join(" ")}`),m(` \u2717 gogocode \u672A\u5C31\u7EEA\uFF1A${p.error||"\u672A\u77E5\u539F\u56E0"}\uFF08\u5217\u5165\u4EBA\u5DE5\u6E05\u5355\uFF09`));try{if(!p.cli)throw new Error(p.error||"gogocode \u672A\u5C31\u7EEA");for(let r of["gogocode-plugin-vue","gogocode-plugin-element"])me(`node "${p.cli}" -s ./src -t ${r} -o ./${ie}`,{cwd:T,input:`N
|
|
255
|
+
`,stdio:["pipe","inherit","inherit"]}),Ne(D(ie),D("src"),v,A),v.rmSync(D(ie),{recursive:!0,force:!0}),m(` \u2713 ${r} \u5B8C\u6210`);let i=0;for(let[r,b]of n){if(!b.length)continue;let f=v.readFileSync(r,"utf8");if((f.match(oe)||[]).length===b.length){let k=0,E=f.replace(oe,()=>b[k++]);E!==f&&(v.writeFileSync(r,E),i++)}else v.writeFileSync(r,f.replace(oe,"").replace(/\s*$/,`
|
|
51
256
|
|
|
52
|
-
`+
|
|
257
|
+
`+b.join(`
|
|
53
258
|
|
|
54
259
|
`)+`
|
|
55
|
-
`)),
|
|
56
|
-
.vue \u8F6C\u6362\u672A\u6267\u884C\uFF08\u52A0 --apply --transform-vue\uFF1Bgogocode \u4F1A\u7531\u5DE5\u5177\u81EA\u52A8\u5907\u597D\uFF0C\u4E0D\u9700\u8981\u4F60\u5148\u88C5\uFF09`);
|
|
57
|
-
\u7136\u540E\u5728\u9876\u5C42 plugins \u6570\u7EC4\u91CC\u52A0\u4E00\u9879 frameDeps()`;if(!
|
|
58
|
-
${t}`);else{let
|
|
59
|
-
`);
|
|
60
|
-
`+
|
|
61
|
-
${
|
|
62
|
-
${
|
|
63
|
-
${t}`);else{let
|
|
64
|
-
`).slice(0,3).join(" "))}
|
|
260
|
+
`)),i++}m(` \u2713 style \u5757\u6309\u5FEB\u7167\u8FD8\u539F\uFF1A${i} \u6587\u4EF6`);let s=0;for(let r of _){let b=v.readFileSync(r,"utf8");b.includes("@element-plus/icons'")&&(v.writeFileSync(r,b.split("@element-plus/icons'").join("@element-plus/icons-vue'")),s++)}s&&m(` \u2713 icons \u5305\u540D\u6539\u5199\uFF08@element-plus/icons \u2192 icons-vue\uFF09\uFF1A${s} \u6587\u4EF6`);let a=0;for(let r of M){let b=v.readFileSync(r,"utf8"),f=lt(b);f&&!/lang=/.test(f.attrs)&>(f.body)&&(v.writeFileSync(r,b.replace(/<script(\s[^>]*)?>/,'<script lang="jsx"$1>')),a++)}a&&m(` \u2713 JSX script \u6807 lang="jsx"\uFF1A${a} \u6587\u4EF6`);let l=0,c=0;for(let r of M){let b=v.readFileSync(r,"utf8"),f=Ue(b);f.count&&(v.writeFileSync(r,f.src),l++,c+=f.count)}l&&m(` \u2713 \u5185\u8054\u4E8B\u4EF6\u591A\u8BED\u53E5\u8865\u5206\u53F7\uFF1A${c} \u5904 / ${l} \u6587\u4EF6`);let d=0,y=0;for(let r of M){let b=v.readFileSync(r,"utf8"),f=Ge(b);f.count&&(v.writeFileSync(r,f.src),d++,y+=f.count)}d&&m(` \u2713 .sync \u2192 v-model\uFF1A${y} \u5904 / ${d} \u6587\u4EF6`);let S=0;for(let r of M){let b=v.readFileSync(r,"utf8"),f=ze(b);f.count&&(v.writeFileSync(r,f.src),S++)}S&&m(` \u2713 element-plus \u56FE\u6807\u7EC4\u4EF6\u56DE\u9000\u4E3A epx CSS \u56FE\u6807\uFF1A${S} \u6587\u4EF6`);let P=0;for(let r of _){let b=v.readFileSync(r,"utf8"),f=We(b);f.count&&(v.writeFileSync(r,f.src),P++)}P&&m(` \u2713 \u547D\u540D\u7A7A\u95F4\u5BFC\u5165\u6536\u655B\u4E3A\u5177\u540D\uFF08vue/vuex/vue-router\uFF09\uFF1A${P} \u6587\u4EF6`);let x=0,h=0,I=0;for(let r of _){let b=v.readFileSync(r,"utf8"),f=Ke(b);if(f.count&&(v.writeFileSync(r,f.src),x++,h+=f.count),f.warnings&&f.warnings.length){I++;let u=A.relative(T,r);for(let k of f.warnings)C.push(`${u}\uFF1A${k}`)}}x&&m(` \u2713 Vue2 JSX \u5C5E\u6027 \u2192 Vue3\uFF08domProps*/nativeOn*/scopedSlots=\uFF09\uFF1A${h} \u5904 / ${x} \u6587\u4EF6`),I&&m(` \u26A0 JSX \u533A slot="xxx" \u9700\u4EBA\u5DE5\u6539 v-slots\uFF1A${I} \u6587\u4EF6\uFF08\u5DF2\u5217\u5165\u4EBA\u5DE5\u6E05\u5355\uFF09`)}catch(i){v.rmSync(D(ie),{recursive:!0,force:!0}),p.cli&&C.push("gogocode \u8F6C\u6362\u5931\u8D25\uFF1A"+String(i.message).slice(0,160)),m(" \u2717 gogocode \u8F6C\u6362\u5931\u8D25\uFF08\u5217\u5165\u4EBA\u5DE5\u6E05\u5355\uFF09")}}else m(`
|
|
261
|
+
.vue \u8F6C\u6362\u672A\u6267\u884C\uFF08\u52A0 --apply --transform-vue\uFF1Bgogocode \u4F1A\u7531\u5DE5\u5177\u81EA\u52A8\u5907\u597D\uFF0C\u4E0D\u9700\u8981\u4F60\u5148\u88C5\uFF09`);j("\u2463 \u4F9D\u8D56\u6E05\u5355\u63D2\u4EF6\u6CE8\u5165\uFF08vite.config\uFF09");{let e=["vite.config.mjs","vite.config.js","vite.config.ts"].find(n=>$(n)!==null),t=` import frameDeps from 'epx-frame/build/vite-plugin-frame-deps.mjs'
|
|
262
|
+
\u7136\u540E\u5728\u9876\u5C42 plugins \u6570\u7EC4\u91CC\u52A0\u4E00\u9879 frameDeps()`;if(!e)m(" \xB7 \u672A\u627E\u5230 vite.config.*\uFF08webpack \u5F62\u6001\u9879\u76EE\uFF09\u2014\u2014\u8DF3\u8FC7\uFF1B\u5DF2\u5217\u5165\u4EBA\u5DE5\u6E05\u5355\u8BF4\u660E\u5F71\u54CD"),C.push("\u672A\u627E\u5230 vite.config.*\uFF08webpack \u5F62\u6001\u9879\u76EE\uFF09\uFF1A\u4F9D\u8D56\u6E05\u5355\u63D2\u4EF6\u53EA\u6709 Vite \u5F62\u6001\u80FD\u6CE8\u5165\uFF0C\u672C\u9879\u76EE\u6682\u4E0D\u4EA7\u51FA `<bundle>.deps.json`\u3002\u5F71\u54CD\uFF1A\u5E73\u53F0\u52A0\u8F7D\u672C\u8FDC\u7A0B\u5E93\u524D\u4F1A\u9000\u5316\u4E3A\u300Censure \u5168\u90E8\u61D2\u52A0\u8F7D\u7EC4\u4EF6\u300D\u2014\u2014\u529F\u80FD\u6B63\u5E38\uFF0C\u53EA\u662F\u591A\u4E0B\u8F7D\u82E5\u5E72 chunk\u3002\u8981\u62FF\u5230\u7CBE\u786E\u52A0\u8F7D\uFF0C\u9700\u5148\u628A lib \u6784\u5EFA\u5207\u5230 Vite\uFF08\u53C2\u8003 epx create \u751F\u6210\u7684 vite.config.mjs\uFF09\u3002");else{let n=$(e),o=n.includes("vite-plugin-frame-deps"),p=/frameDeps\(\)/.test(n);if(o&&p)m(` \xB7 ${e}\uFF1A\u5DF2\u6CE8\u5165\u8FC7\uFF0C\u8DF3\u8FC7\uFF08\u5E42\u7B49\uFF09`);else if(o||p)m(` \xB7 ${e}\uFF1A\u68C0\u6D4B\u5230\u534A\u6CE8\u5165\u72B6\u6001\uFF08import / frameDeps() \u8C03\u7528\u53EA\u6709\u4E00\u5904\u5B58\u5728\uFF09\uFF0C\u672A\u81EA\u52A8\u5904\u7406`),C.push(`${e} \u68C0\u6D4B\u5230\u4F9D\u8D56\u6E05\u5355\u63D2\u4EF6\u534A\u6CE8\u5165\u72B6\u6001\uFF08import \u4E0E frameDeps() \u8C03\u7528\u53EA\u5B58\u5728\u4E00\u5904\uFF09\uFF0C\u8BF7\u4EBA\u5DE5\u786E\u8BA4\u540E\u8865\u9F50\uFF1A
|
|
263
|
+
${t}`);else{let i=n,s=0;if(i.startsWith("#!")){let d=i.indexOf(`
|
|
264
|
+
`);s=d===-1?i.length:d+1}{let d=/^([ \t]*\/\/[^\n]*\r?\n|[ \t]*\r?\n)/,y;for(;y=i.slice(s).match(d);)s+=y[0].length}i=i.slice(0,s)+`import frameDeps from 'epx-frame/build/vite-plugin-frame-deps.mjs'
|
|
265
|
+
`+i.slice(s);let l=i;if(i=i.replace(/^([ \t]{0,4})plugins\s*:\s*\[/m,(d,y)=>d+`
|
|
266
|
+
${y} // \u4EA7\u51FA <bundle>.deps.json\uFF1A\u5E73\u53F0\u52A0\u8F7D\u672C\u8FDC\u7A0B\u5E93\u524D\u636E\u6B64\u81EA\u52A8 ensure \u61D2\u52A0\u8F7D\u7EC4\u4EF6
|
|
267
|
+
${y} frameDeps(),`),!(i!==l))m(` \xB7 ${e}\uFF1A\u7ED3\u6784\u4E0D\u8BC6\u522B\uFF0C\u672A\u81EA\u52A8\u6CE8\u5165`),C.push(`${e} \u672A\u80FD\u81EA\u52A8\u6CE8\u5165\u4F9D\u8D56\u6E05\u5355\u63D2\u4EF6\uFF0C\u8BF7\u624B\u52A8\u52A0\uFF1A
|
|
268
|
+
${t}`);else{let d=!0,y="";if(/\.m?js$/.test(e)){let S=A.join(ye.tmpdir(),`epx-migrate-check-${Date.now()}-${Math.random().toString(36).slice(2)}.mjs`);v.writeFileSync(S,i);let P=st(process.execPath,["--check",S],{encoding:"utf8"});v.rmSync(S,{force:!0}),d=P.status===0,d||(y=String(P.stderr||"").split(`
|
|
269
|
+
`).slice(0,3).join(" "))}d?(m(` \u2713 ${e}\uFF1A\u6CE8\u5165\u4F9D\u8D56\u6E05\u5355\u63D2\u4EF6`),F.push({file:e,after:i})):(m(` \xB7 ${e}\uFF1A\u81EA\u52A8\u6CE8\u5165\u540E\u8BED\u6CD5\u6821\u9A8C\u672A\u901A\u8FC7\uFF0C\u5DF2\u653E\u5F03\u6539\u52A8`),C.push(`${e} \u81EA\u52A8\u6CE8\u5165\u4F9D\u8D56\u6E05\u5355\u63D2\u4EF6\u540E node --check \u672A\u901A\u8FC7\uFF08\u5DF2\u653E\u5F03\u8BE5\u81EA\u52A8\u6539\u52A8\uFF0C\u6587\u4EF6\u4FDD\u6301\u539F\u6837\uFF09\uFF0C\u8BF7\u624B\u52A8\u52A0\uFF1A
|
|
65
270
|
${t}
|
|
66
|
-
\uFF08\u6821\u9A8C\u62A5\u9519\uFF1A${
|
|
271
|
+
\uFF08\u6821\u9A8C\u62A5\u9519\uFF1A${y}\uFF09`))}}}}j("\u2464 \u6309\u9700\u6253\u5305\u5F62\u6001\u6CE8\u5165\uFF08lazyLib\uFF09");{let e=["vite.config.mjs","vite.config.js","vite.config.ts"].find(n=>$(n)!==null),t=` import lazyLib from 'epx-frame/build/vite-plugin-lazy-lib.mjs'
|
|
67
272
|
\u7136\u540E\u5728 plugins \u6570\u7EC4\u91CC frameDeps() \u4E4B\u540E\u52A0\uFF1A
|
|
68
273
|
lazyLib({ enabled: process.env.LAZY_LIB === 'true', glob: '<\u4E0E\u5165\u53E3 import.meta.glob \u9010\u5B57\u76F8\u540C\u7684\u6A21\u5F0F>', pkgName: '<\u5305\u540D>' })
|
|
69
|
-
\u5E76\u5728 package.json \u52A0 "build:lib:lazy": "cross-env LAZY_LIB=true vite build" \u4E0E cross-env devDep`;if(!
|
|
70
|
-
${t}`);else{let
|
|
71
|
-
`+t);else if(!
|
|
72
|
-
`+t);else{let
|
|
73
|
-
${t}`);else if(
|
|
74
|
-
${t}`);else{let
|
|
75
|
-
`).slice(0,3).join(" "))}if(!
|
|
274
|
+
\u5E76\u5728 package.json \u52A0 "build:lib:lazy": "cross-env LAZY_LIB=true vite build" \u4E0E cross-env devDep`;if(!e)m(" \xB7 \u672A\u627E\u5230 vite.config.*\uFF08webpack \u5F62\u6001\u9879\u76EE\uFF09\u2014\u2014\u8DF3\u8FC7\uFF08\u5F71\u54CD\u89C1 \u2463 \u7684\u4EBA\u5DE5\u6E05\u5355\u6761\u76EE\uFF09");else if(!L)m(" \xB7 \u672A\u627E\u5230\u8FDC\u7A0B\u5E93\u5165\u53E3\uFF08src/index.js / index.js\uFF09\u2014\u2014\u8DF3\u8FC7"),C.push(`\u672A\u627E\u5230\u8FDC\u7A0B\u5E93\u5165\u53E3\uFF0C\u65E0\u6CD5\u786E\u5B9A lazyLib \u7684 glob \u6A21\u5F0F\uFF0C\u6309\u9700\u6253\u5305\u5F62\u6001\u672A\u6CE8\u5165\u3002\u8981\u7528\u8BF7\u624B\u52A8\u52A0\uFF1A
|
|
275
|
+
${t}`);else{let n=Le($(L)),o=(()=>{try{return JSON.parse($("package.json")||"{}").name||""}catch{return""}})();if(!n)m(` \xB7 ${L}\uFF1A\u6CA1\u6709 import.meta.glob(..., { eager: true }) \u2014\u2014 \u8DF3\u8FC7\uFF08webpack \u5F62\u6001\u5165\u53E3\u7528\u7684\u662F require.context\uFF09`),C.push(`${L} \u91CC\u6CA1\u6709 \`import.meta.glob(..., { eager: true })\`\uFF08webpack \u5F62\u6001\u7528\u7684\u662F require.context\uFF09\uFF0C\u65E0\u6CD5\u786E\u5B9A lazyLib \u7684 glob \u6A21\u5F0F\uFF0C\u6309\u9700\u6253\u5305\u5F62\u6001\u672A\u6CE8\u5165\u3002\u628A\u5165\u53E3\u6362\u6210 import.meta.glob \u540E\u53EF\u624B\u52A8\u52A0\uFF1A
|
|
276
|
+
`+t);else if(!o)m(" \xB7 package.json \u6CA1\u6709 name \u2014\u2014 \u8DF3\u8FC7\uFF08lazyLib \u7684 pkgName \u51B3\u5B9A\u5E73\u53F0\u6309\u4EC0\u4E48\u540D\u5B57\u627E\u515C\u5E95\u4EA7\u7269\uFF09"),C.push(`package.json \u7F3A\u5C11 name\uFF0C\u65E0\u6CD5\u786E\u5B9A lazyLib \u7684 pkgName\uFF0C\u6309\u9700\u6253\u5305\u5F62\u6001\u672A\u6CE8\u5165\u3002
|
|
277
|
+
`+t);else{let p=[...F].reverse().find(a=>a.file===e),i=p?p.after:$(e),s=Te(i,{glob:n,pkgName:o});if(s.status==="present")m(` \xB7 ${e}\uFF1A\u5DF2\u6CE8\u5165\u8FC7\uFF0C\u8DF3\u8FC7\uFF08\u5E42\u7B49\uFF09`);else if(s.status==="half")m(` \xB7 ${e}\uFF1A\u68C0\u6D4B\u5230\u534A\u6CE8\u5165\u72B6\u6001\uFF08import \u4E0E lazyLib() \u8C03\u7528\u53EA\u6709\u4E00\u5904\u5B58\u5728\uFF09\uFF0C\u672A\u81EA\u52A8\u5904\u7406`),C.push(`${e} \u68C0\u6D4B\u5230\u6309\u9700\u6253\u5305\u63D2\u4EF6\u534A\u6CE8\u5165\u72B6\u6001\uFF08import \u4E0E lazyLib() \u8C03\u7528\u53EA\u5B58\u5728\u4E00\u5904\uFF09\uFF0C\u8BF7\u4EBA\u5DE5\u786E\u8BA4\u540E\u8865\u9F50\uFF1A
|
|
278
|
+
${t}`);else if(s.status==="no-anchor")m(` \xB7 ${e}\uFF1A\u627E\u4E0D\u5230 frameDeps() \u951A\u70B9\uFF0C\u672A\u81EA\u52A8\u6CE8\u5165\uFF08\u4F4D\u7F6E\u53EA\u80FD\u731C\uFF0C\u8F6C\u4EBA\u5DE5\uFF09`),C.push(`${e} \u91CC\u6CA1\u6709 frameDeps() \u8C03\u7528\uFF0C\u6309\u9700\u6253\u5305\u63D2\u4EF6\u7684\u6CE8\u5165\u4F4D\u7F6E\u65E0\u6CD5\u786E\u5B9A\uFF08\u4E0D\u731C\u4F4D\u7F6E\uFF09\uFF0C\u8BF7\u624B\u52A8\u52A0\uFF1A
|
|
279
|
+
${t}`);else{let a=!0,l="";if(/\.m?js$/.test(e)){let c=A.join(ye.tmpdir(),`epx-migrate-lazy-check-${Date.now()}-${Math.random().toString(36).slice(2)}.mjs`);v.writeFileSync(c,s.src);let d=st(process.execPath,["--check",c],{encoding:"utf8"});v.rmSync(c,{force:!0}),a=d.status===0,a||(l=String(d.stderr||"").split(`
|
|
280
|
+
`).slice(0,3).join(" "))}if(!a)m(` \xB7 ${e}\uFF1A\u6CE8\u5165\u540E\u8BED\u6CD5\u6821\u9A8C\u672A\u901A\u8FC7\uFF0C\u5DF2\u653E\u5F03\u6539\u52A8`),C.push(`${e} \u6CE8\u5165\u6309\u9700\u6253\u5305\u63D2\u4EF6\u540E node --check \u672A\u901A\u8FC7\uFF08\u5DF2\u653E\u5F03\u8BE5\u81EA\u52A8\u6539\u52A8\uFF0C\u6587\u4EF6\u4FDD\u6301\u539F\u6837\uFF09\uFF0C\u8BF7\u624B\u52A8\u52A0\uFF1A
|
|
76
281
|
${t}
|
|
77
|
-
\uFF08\u6821\u9A8C\u62A5\u9519\uFF1A${l}\uFF09`);else{
|
|
78
|
-
`;c?c.after=m:F.push({file:"package.json",after:m}),b(" \u2713 package.json\uFF1A\u52A0 build:lib:lazy \u811A\u672C\u4E0E cross-env")}else b(" \xB7 package.json\uFF1Abuild:lib:lazy \u4E0E cross-env \u5DF2\u5728\uFF0C\u8DF3\u8FC7")}}}}}}Y("\u2465 \u7B2C\u4E09\u65B9\u8FD0\u884C\u65F6\u4F9D\u8D56 Vue3 \u517C\u5BB9\u6027\u626B\u63CF");var Le=[];{let a={};try{a=JSON.parse($("package.json")||"{}").dependencies||{}}catch{a={}}let t=Object.keys(a).filter(e=>$t.has(e));for(let e of t){if(De[e])continue;if(Oe[e]){Le.push({name:e,kind:"known",detail:Oe[e].note}),b(` \u2717 ${e}\uFF1A\u5DF2\u77E5 Vue2-only \u2014\u2014 ${Oe[e].note}`);continue}let s=null;try{s=JSON.parse(w.readFileSync(G(`node_modules/${e}/package.json`),"utf8"))}catch{s=null}if(!s)continue;let i=s.peerDependencies&&s.peerDependencies.vue||s.dependencies&&s.dependencies.vue||"";i&&Pa(i)&&(Le.push({name:e,kind:"suspect",detail:`\u5176 package.json \u58F0\u660E vue \u652F\u6301 "${i}"\uFF08\u53EA\u5339\u914D Vue2\uFF09`}),b(` \xB7 ${e}\uFF1A\u7591\u4F3C Vue2-only\uFF08vue="${i}"\uFF09`))}Le.length||b(" \xB7 \u672A\u53D1\u73B0\u9762\u5411 Vue2 \u7684\u7B2C\u4E09\u65B9\u8FD0\u884C\u65F6\u5E93\uFF08\u4F9D\u8D56\u672A\u5B89\u88C5\u65F6\u7ED3\u679C\u4E0D\u5B8C\u6574\uFF0Cnpm i \u540E\u91CD\u8DD1\u66F4\u51C6\uFF09")}{let a=u(e=>/<template[\s>]/.test(e.replace(/<script[\s\S]*?<\/script>/gi,"").replace(/<style[\s\S]*?<\/style>/gi,"")),"hasSfcTemplate"),t=z.filter(e=>{let s=w.readFileSync(e,"utf8");return!a(s)&&/<style[^>]*\bscoped/.test(s)});if(t.length){Y("\u2466 JSX \u7EC4\u4EF6 scoped \u6837\u5F0F\u5931\u6548\u626B\u63CF"),b(` \u26A0 ${t.length} \u4E2A\u300C\u65E0 <template> + <style scoped>\u300D\u7EC4\u4EF6\u2014\u2014Vue3 \u4E0B scoped \u6DF1\u5C42\u6837\u5F0F\u5931\u6548\uFF0C\u9700\u6539\u300C\u975E scoped + \u7EC4\u4EF6\u6839\u552F\u4E00 class\u300D\uFF08\u89C1 pitfalls F15\uFF09`);for(let e of t){let i=(w.readFileSync(e,"utf8").match(/::v-deep|:deep\(|\/deep\/|>>>/g)||[]).length;b(` \xB7 ${B.relative(U,e).replace(/\\/g,"/")}${i?`\uFF08\u542B ${i} \u5904\u6DF1\u5C42\u9009\u62E9\u5668 ::v-deep/:deep() \u9700\u6539\u540E\u4EE3\u9009\u62E9\u5668\uFF09`:""}`)}M.push(`\u3010\u6837\u5F0F\xB7\u7CFB\u7EDF\u6027\u3011${t.length} \u4E2A JSX/render \u7EC4\u4EF6\uFF08\u65E0 <template>\uFF09\u7528\u4E86 <style scoped>\u2014\u2014Vue3 \u4E0B scoped \u6DF1\u5C42\u6837\u5F0F\u5931\u6548\uFF08\u5934\u50CF\u6491\u6EE1/\u5E03\u5C40\u584C\uFF09\uFF0C\u987B\u9010\u4E2A\u6539\u300C\u975E scoped + \u7EC4\u4EF6\u6839\u552F\u4E00 class \u547D\u540D\u7A7A\u95F4\u300D+ ::v-deep/:deep()\u2192\u540E\u4EE3\u9009\u62E9\u5668 + \u5BF9\u7167\u7EBF\u4E0A\u6837\u5F0F\uFF08\u89C1 pitfalls F15\uFF09\uFF1A${t.map(e=>B.relative(U,e).replace(/\\/g,"/")).join("\u3001")}`)}}var ue=null;if(ga){Y("V. webpack \u2192 Vite \u5F62\u6001\u8F6C\u6362");let a=[...F].reverse().find(n=>n.file==="package.json"&&!n.remove),t=[...F].reverse().find(n=>n.file===j&&!n.remove),s=As({projectDir:U,read:u(n=>n===j&&t?t.after:$(n),"readForVite"),epxFrameSpec:Ft,basePkgRaw:a?a.after:null});ue=s.info;for(let n of s.changes){if(n.file==="package.json"&&!n.remove&&a){a.after=n.after,b(" \u2713 package.json\uFF08\u5E76\u5165 \u2460 \u4F9D\u8D56\u8FC1\u79FB\u4EA7\u51FA\uFF09");continue}F.push(n),b(` ${n.remove?"\u2717 \u5220":"\u2713"} ${n.file}`)}for(let n of s.manual)M.push(n);ue.removedDeps&&ue.removedDeps.length&&b(` \xB7 \u6458\u9664 webpack \u6784\u5EFA\u4F9D\u8D56 ${ue.removedDeps.length} \u4E2A\uFF1A${ue.removedDeps.join(", ")}`),b(` \xB7 \u7EC4\u4EF6\u76EE\u5F55 dirName='${ue.dirName}'\uFF0ClazyLib glob='${ue.glob}'`);let i=0,r=0;for(let n of ie){let o=B.relative(U,n).replace(/\\/g,"/"),l=[...F].reverse().find(f=>f.file===o&&!f.remove),c=l?l.after:w.readFileSync(n,"utf8"),h=Bs(c,{isVue:n.endsWith(".vue")});h.src!==c&&(l?l.after=h.src:F.push({file:o,after:h.src}),i+=h.count,r++),h.templateAsset&&M.push(`${o}\uFF1A\u6A21\u677F\u91CC\u6709 require('\u56FE\u7247')\uFF0C\u6539\u6210\u6A21\u5757\u9876\u5C42 import \u53D8\u91CF\u540E Options API \u7684 this \u53D6\u4E0D\u5230\uFF0C\u9700\u624B\u5DE5\u6362 :src \u7ED1\u5B9A data/computed \u6216 new URL(..., import.meta.url)\u3002`)}i&&b(` \u2713 \u6E90\u7801 require.context\u2192import.meta.glob / require(\u56FE\u7247)\u2192\u9759\u6001 import\uFF1A${i} \u5904 / ${r} \u6587\u4EF6`)}Y("\u8FD0\u884C\u65F6\u6807\u8BC6\uFF08runtime: vue3\uFF09");if(j){let a=[...F].reverse().find(s=>s.file===j&&!s.remove),t=a?a.after:$(j),e=yi(t);e.marked?(e.src!==t&&(a?a.after=e.src:F.push({file:j,after:e.src})),b(` \u2713 ${j}\uFF1A\u9ED8\u8BA4\u5BFC\u51FA\u5305\u542B runtime: 'vue3'`)):(M.push(`${j} \u672A\u80FD\u81EA\u52A8\u6DFB\u52A0 runtime \u6807\u8BC6\uFF1A${e.reason}\u3002\u8BF7\u8BA9\u9ED8\u8BA4\u5BFC\u51FA\u7684\u5E93\u5BF9\u8C61\u5305\u542B runtime: 'vue3'\uFF1B\u672A\u6807\u8BC6\u65F6\u5E73\u53F0\u4FDD\u7559\u65E7\u7248\u517C\u5BB9\u3002`),b(` \xB7 ${j}\uFF1A\u6807\u8BC6\u672A\u6CE8\u5165\uFF0C\u5DF2\u8BB0\u5F55\u4EBA\u5DE5\u6E05\u5355`))}else M.push("\u672A\u627E\u5230\u8FDC\u7A0B\u5E93\u5165\u53E3\uFF1B\u8BF7\u8BA9\u5E93\u9ED8\u8BA4\u5BFC\u51FA\u5305\u542B runtime: 'vue3'\u3002package.json \u6807\u8BC6\u4E0D\u4F1A\u5355\u72EC\u4F20\u5230\u6D4F\u89C8\u5668\u3002");var ba=["# epx-migrate \u8FC1\u79FB\u62A5\u544A","",`\u9879\u76EE\uFF1A\`${B.resolve(U)}\``,`\u6A21\u5F0F\uFF1A${pe?"--apply \u5DF2\u843D\u76D8":"dry-run \u672A\u843D\u76D8"}${Bt?" + gogocode \u8F6C\u6362":""}`,"","## \u540E\u7EED\u64CD\u4F5C\u987A\u5E8F","","```bash",'git add -A && git commit -m "epx-migrate: \u4F9D\u8D56+codemod" # \u5B58\u6863\u5DE5\u5177\u6539\u52A8','npm i && git add -A && git commit -m "lockfile" # \u88C5\u65B0\u4F9D\u8D56\u5E76\u63D0\u4EA4\uFF08lock \u88AB\u8DDF\u8E2A\u65F6 --transform-vue \u7684\u5E72\u51C0\u68C0\u67E5\u9700\u8981\uFF09',...Bt?[]:["node <\u672C\u5DE5\u5177> . --apply --transform-vue # \u8DD1 gogocode \u8F6C\u6362 .vue\uFF08gogocode \u81EA\u52A8\u5907\u597D\uFF0C\u542B style \u5FEB\u7167\u4FDD\u62A4\uFF09"],"npm run build:lib # \u6784\u5EFA Vue3 \u7248\u8FDC\u7A0B lib/index.js","```","","\u6784\u5EFA\u62A5\u9519\u65F6\u6309\u6587\u4EF6\u9010\u4E2A\u5904\u7406\uFF08\u6700\u5E38\u89C1\uFF1A\u5185\u8054\u4E8B\u4EF6\u591A\u8BED\u53E5\u7F3A\u5206\u53F7\u2014\u2014\u6309\u62A5\u9519\u884C\u8865 `;`\uFF09\u3002","",'\u8FD0\u884C\u65F6\u6807\u8BC6\uFF1A\u672C\u547D\u4EE4\u81EA\u52A8\u5199\u5165 package.json \u7684 `runtime: "vue3"`\uFF0C\u5E76\u7ED9\u5E93\u9ED8\u8BA4\u5BFC\u51FA\u8865\u540C\u540D\u6807\u8BC6\u3002\u6784\u5EFA\u90E8\u7F72\u540E\u8BE5\u5305\u8D70 Vue3 \u539F\u751F\u5B89\u88C5\uFF1B`vue2` \u6216\u6CA1\u6709\u6807\u8BC6\u7684\u5176\u5B83\u4EA7\u54C1/\u9879\u76EE\u5305\u7EE7\u7EED\u4F7F\u7528\u57AB\u7247\u3002\u6807\u8BC6\u8868\u793A\u8FC1\u79FB\u76EE\u6807\uFF0C\u4E0D\u4EE3\u8868\u6784\u5EFA\u6216\u4E1A\u52A1\u9A8C\u6536\u5DF2\u901A\u8FC7\uFF1B\u5B8C\u6210\u4E0B\u9762\u7684\u8F6C\u6362\u3001\u6784\u5EFA\u548C\u590D\u6D4B\u540E\u518D\u53D1\u5E03\u3002',"","\u5E93\u8D85\u8FC7 ~1MB \u65F6\u53EF\u4EE5\u518D\u8BD5\u6309\u9700\u6253\u5305\u5F62\u6001\uFF08\u9ED8\u8BA4\u5173\uFF0C\u4E0D\u5F71\u54CD\u4E0A\u9762\u8FD9\u6761\uFF09\uFF1A","","```bash","npm run build:lib:lazy # \u51FA index.js(\u5165\u53E3\u58F3) + chunks/ + index.full.js(\u515C\u5E95)","```","","\u26A0\uFE0F \u6309\u9700\u5F62\u6001**\u5FC5\u987B\u4E0A\u4F20\u6574\u4E2A `lib/` \u76EE\u5F55**\uFF08\u4E0D\u518D\u662F index.js + index.css \u4E24\u4E2A\u6587\u4EF6\uFF09\uFF1BFM_SYSTEM_WEBPACK \u91CC\u4ECD\u53EA\u914D index.js \u4E0E index.css \u4E24\u6761 url\u3002\u5207\u6362\u524D\u7684\u7EA6\u675F\u4E0E\u7EBF\u4E0A\u6392\u67E5\u624B\u6BB5\u89C1 epx-frame \u7684 `docs/PROJECT-GUIDE.md` \xA7\u4E09\u300C\u4E24\u79CD\u6253\u5305\u65B9\u5F0F\u300D\u3002","","## \u2460 \u4F9D\u8D56\u8FC1\u79FB\uFF08\u5DF2\u81EA\u52A8\uFF09","- \u8FC1\u79FB\u8868\u52A0/\u5220/\u6539 + lib \u6784\u5EFA\u95ED\u5305\uFF08webpack5/vue-loader17\uFF09+ gogocode \u5DE5\u5177 + JSX/icons \u4F9D\u8D56 + \u9690\u5F0F\u4F9D\u8D56\u8865\u58F0\u660E","","### webpack.config.js \u4EBA\u5DE5\u6838\u5BF9",...ys.map(a=>`- ${a}`),"","## \u2461 codemod\uFF08\u5DF2\u81EA\u52A8\uFF09","- main.js\uFF1A`Vue.use`\u2192`app.use`\u3001`$mount`\u2192`mount`\u3001`frame.createApp()`","- index.js\uFF1A`install(Vue)`\u2192`install(app)`\u3001`Vue.component`\u2192`app.component`","- babel.config.js\uFF1A\u5220 element-ui/vant \u6309\u9700\u63D2\u4EF6 + cli preset\uFF1BJSX \u9879\u76EE\u52A0 @vue/babel-plugin-jsx","- webpack.config.js\uFF1Aexternals \u52A0 `{ vue: window.frame.Vue }`\uFF1BJSX \u9879\u76EE babel \u89C4\u5219\u6536 .jsx","- \u7A7A .vue \u8865\u6700\u5C0F\u5408\u6CD5\u5185\u5BB9","","## \u2462 .vue \u8F6C\u6362\uFF08gogocode + \u4FEE\u8865\uFF0C\u5DF2\u81EA\u52A8\uFF09\u4E0E\u4EBA\u5DE5\u590D\u6838\u6E05\u5355\uFF08\u6570\u5B57=\u547D\u4E2D\u6587\u4EF6\u6570\uFF09",'- style \u5757\u5168\u7A0B\u5FEB\u7167\u4FDD\u62A4\uFF08gogocode \u4F1A\u6BC1 scss \u6CE8\u91CA\u5757/\u5220 style\uFF09\uFF1Bicons \u5305\u540D\u6539\u5199\uFF1BJSX \u6807 lang="jsx"',...Object.entries(Ai).filter(([,a])=>a>0).map(([a,t])=>`- [ ] **${t} \u6587\u4EF6**\uFF1A${a}`),"","### \u5176\u5B83\u4EBA\u5DE5\u9879",...M.length?M.map(a=>`- [ ] ${a}`):["- \uFF08\u65E0\uFF09"],"","## \u2465 \u7B2C\u4E09\u65B9\u8FD0\u884C\u65F6\u4F9D\u8D56\uFF08Vue3 \u517C\u5BB9\u6027\uFF09",...Le.length?["> Vue3 \u4EA7\u7269\u4E0D\u8D70\u5E73\u53F0 vue2-remote-shim \u57AB\u7247\uFF0C\u9762\u5411 Vue2 \u7684\u7B2C\u4E09\u65B9\u8FD0\u884C\u65F6\u5E93\u4F1A**\u8FD0\u884C\u65F6\u5D29**\uFF08\u5982\u7EC4\u7EC7\u67B6\u6784\u56FE `_c`\uFF09\u3002\u53EA\u80FD\u6362\u5E93/\u81EA\u5C01\u88C5\uFF0C\u5DE5\u5177\u4E0D\u81EA\u52A8\u6539\u3002","",...Le.map(a=>`- [ ] ${a.kind==="known"?"**\u786E\u5B9A\u4E0D\u517C\u5BB9**":"\u7591\u4F3C"} \`${a.name}\`\uFF1A${a.detail}`)]:["- \uFF08\u672A\u53D1\u73B0\uFF1B\u4F9D\u8D56\u672A\u5B89\u88C5\u65F6\u7ED3\u679C\u4E0D\u5B8C\u6574\uFF0C`npm i` \u540E\u91CD\u8DD1\u66F4\u51C6\uFF09"],"","## \u53C2\u7167","- \u5E73\u53F0\u8FC1\u79FB\u8BB0\u6863\uFF1A`epx-frame/docs/migration/`\uFF08\u540C\u6B3E\u5751\uFF09","- **\u6784\u5EFA\u901A\u8FC7 \u2260 \u8FD0\u884C\u7B49\u4EF7**\uFF1A\u4E0A\u5E73\u53F0\u771F\u73AF\u5883\u70B9\u5173\u952E\u9875\u9762\uFF08\u5217\u8868/\u8868\u5355/\u5F39\u7A97/\u6D41\u7A0B\uFF09\uFF1BJSX \u7684 scopedSlots \u7B49 Vue2 \u8BED\u4E49\u91CD\u70B9\u770B","- \u6682\u4E0D\u91CD\u5EFA\u7684\u8001\u5E93\uFF1A\u5E73\u53F0\u4FA7 Vue2 \u57AB\u7247\u515C\u5E95\uFF08`INCLUDE_VUE2_COMPAT`\uFF09",""].join(`
|
|
79
|
-
`);F.push({file:"MIGRATION-REPORT.md",after:
|
|
80
|
-
\u5B8C\u6210\u3002${
|
|
282
|
+
\uFF08\u6821\u9A8C\u62A5\u9519\uFF1A${l}\uFF09`);else{m(` \u2713 ${e}\uFF1A\u6CE8\u5165\u6309\u9700\u6253\u5305\u63D2\u4EF6\uFF08\u9ED8\u8BA4\u5173\uFF0Cglob='${n}'\uFF09`),p?p.after=s.src:F.push({file:e,after:s.src});let c=[...F].reverse().find(y=>y.file==="package.json"),d=null;try{d=JSON.parse(c?c.after:$("package.json")||"{}")}catch{d=null}if(!d)C.push("package.json \u89E3\u6790\u5931\u8D25\uFF0C\u672A\u80FD\u8865 build:lib:lazy \u811A\u672C\u4E0E cross-env\uFF0C\u8BF7\u624B\u52A8\u52A0\u3002");else{let{pkg:y,changed:S}=we(d);if(S){let P=JSON.stringify(y,null,2)+`
|
|
283
|
+
`;c?c.after=P:F.push({file:"package.json",after:P}),m(" \u2713 package.json\uFF1A\u52A0 build:lib:lazy \u811A\u672C\u4E0E cross-env")}else m(" \xB7 package.json\uFF1Abuild:lib:lazy \u4E0E cross-env \u5DF2\u5728\uFF0C\u8DF3\u8FC7")}}}}}}j("\u2465 \u7B2C\u4E09\u65B9\u8FD0\u884C\u65F6\u4F9D\u8D56 Vue3 \u517C\u5BB9\u6027\u626B\u63CF");var Z=[];{let e={};try{e=JSON.parse($("package.json")||"{}").dependencies||{}}catch{e={}}let t=Object.keys(e).filter(n=>ve.has(n));for(let n of t){if(ee[n])continue;if(te[n]){Z.push({name:n,kind:"known",detail:te[n].note}),m(` \u2717 ${n}\uFF1A\u5DF2\u77E5 Vue2-only \u2014\u2014 ${te[n].note}`);continue}let o=null;try{o=JSON.parse(v.readFileSync(D(`node_modules/${n}/package.json`),"utf8"))}catch{o=null}if(!o)continue;let p=o.peerDependencies&&o.peerDependencies.vue||o.dependencies&&o.dependencies.vue||"";p&&Ht(p)&&(Z.push({name:n,kind:"suspect",detail:`\u5176 package.json \u58F0\u660E vue \u652F\u6301 "${p}"\uFF08\u53EA\u5339\u914D Vue2\uFF09`}),m(` \xB7 ${n}\uFF1A\u7591\u4F3C Vue2-only\uFF08vue="${p}"\uFF09`))}Z.length||m(" \xB7 \u672A\u53D1\u73B0\u9762\u5411 Vue2 \u7684\u7B2C\u4E09\u65B9\u8FD0\u884C\u65F6\u5E93\uFF08\u4F9D\u8D56\u672A\u5B89\u88C5\u65F6\u7ED3\u679C\u4E0D\u5B8C\u6574\uFF0Cnpm i \u540E\u91CD\u8DD1\u66F4\u51C6\uFF09")}{let e=g(n=>/<template[\s>]/.test(n.replace(/<script[\s\S]*?<\/script>/gi,"").replace(/<style[\s\S]*?<\/style>/gi,"")),"hasSfcTemplate"),t=M.filter(n=>{let o=v.readFileSync(n,"utf8");return!e(o)&&/<style[^>]*\bscoped/.test(o)});if(t.length){j("\u2466 JSX \u7EC4\u4EF6 scoped \u6837\u5F0F\u5339\u914D\u590D\u6838"),m(` \u26A0 ${t.length} \u4E2A\u300C\u65E0 <template> + <style scoped>\u300D\u7EC4\u4EF6\u5F85\u590D\u6838\uFF1B\u7ED3\u6784\u547D\u4E2D\u4E0D\u8BC1\u660E\u6837\u5F0F\u5931\u6548\uFF0C\u5148\u4FDD\u7559 scoped \u5E76\u9A8C\u8BC1\u6700\u7EC8\u4EA7\u7269\uFF08\u89C1 pitfalls F15\uFF09`);for(let n of t){let p=(v.readFileSync(n,"utf8").match(/::v-deep|:deep\(|\/deep\/|>>>/g)||[]).length;m(` \xB7 ${A.relative(T,n).replace(/\\/g,"/")}${p?`\uFF08\u542B ${p} \u5904\u6DF1\u5C42\u9009\u62E9\u5668\uFF0C\u6838\u5BF9\u5176\u4F5C\u7528\u8303\u56F4\u4E0E\u6700\u7EC8 CSS\uFF09`:""}`)}C.push(`\u3010\u6837\u5F0F\xB7\u5F85\u8FD0\u884C\u65F6\u590D\u6838\u3011${t.length} \u4E2A JSX/render \u7EC4\u4EF6\uFF08\u65E0 <template>\uFF09\u4F7F\u7528\u4E86 <style scoped>\uFF1B\u8FD9\u4E0D\u8BC1\u660E\u6837\u5F0F\u5931\u6548\uFF0C\u9ED8\u8BA4\u4FDD\u7559 scoped\u3002\u7528\u6700\u7EC8\u4EA7\u7269\u9010\u4E2A\u6838\u5BF9\u5F02\u5E38\u5143\u7D20\u7684 DOM\u3001CSS \u9009\u62E9\u5668\u4E0E\u8BA1\u7B97\u6837\u5F0F\uFF0C\u4EC5\u4FEE\u590D\u5DF2\u8BC1\u5B9E\u7684\u95EE\u9898\u3002\u82E5\u786E\u9700\u53BB scoped\uFF0C\u5FC5\u987B\u540C\u65F6\u5B8C\u6210\u5168\u90E8\u89C4\u5219\u7684\u552F\u4E00\u547D\u540D\u7A7A\u95F4\u9694\u79BB\uFF0C\u5E76\u9A8C\u8BC1\u7EC4\u4EF6\u5916\u540C\u540D\u5143\u7D20\u53CA\u8DE8\u9875\u9762\u6837\u5F0F\u4E0D\u53D7\u5F71\u54CD\uFF1B\u672A\u9A8C\u8BC1\u9879\u4E0D\u5F97\u8BA1\u4E3A\u901A\u8FC7\uFF08\u89C1 pitfalls F15\uFF09\uFF1A${t.map(n=>A.relative(T,n).replace(/\\/g,"/")).join("\u3001")}`)}}var H=null;if(rt){j("V. webpack \u2192 Vite \u5F62\u6001\u8F6C\u6362");let e=[...F].reverse().find(s=>s.file==="package.json"&&!s.remove),t=[...F].reverse().find(s=>s.file===L&&!s.remove),o=je({projectDir:T,read:g(s=>s===L&&t?t.after:$(s),"readForVite"),epxFrameSpec:pe,basePkgRaw:e?e.after:null});H=o.info;for(let s of o.changes){if(s.file==="package.json"&&!s.remove&&e){e.after=s.after,m(" \u2713 package.json\uFF08\u5E76\u5165 \u2460 \u4F9D\u8D56\u8FC1\u79FB\u4EA7\u51FA\uFF09");continue}F.push(s),m(` ${s.remove?"\u2717 \u5220":"\u2713"} ${s.file}`)}for(let s of o.manual)C.push(s);H.removedDeps&&H.removedDeps.length&&m(` \xB7 \u6458\u9664 webpack \u6784\u5EFA\u4F9D\u8D56 ${H.removedDeps.length} \u4E2A\uFF1A${H.removedDeps.join(", ")}`),m(` \xB7 \u7EC4\u4EF6\u76EE\u5F55 dirName='${H.dirName}'\uFF0ClazyLib glob='${H.glob}'`);let p=0,i=0;for(let s of _){let a=A.relative(T,s).replace(/\\/g,"/"),l=[...F].reverse().find(y=>y.file===a&&!y.remove),c=l?l.after:v.readFileSync(s,"utf8"),d=qe(c,{isVue:s.endsWith(".vue")});d.src!==c&&(l?l.after=d.src:F.push({file:a,after:d.src}),p+=d.count,i++),d.templateAsset&&C.push(`${a}\uFF1A\u6A21\u677F\u91CC\u6709 require('\u56FE\u7247')\uFF0C\u6539\u6210\u6A21\u5757\u9876\u5C42 import \u53D8\u91CF\u540E Options API \u7684 this \u53D6\u4E0D\u5230\uFF0C\u9700\u624B\u5DE5\u6362 :src \u7ED1\u5B9A data/computed \u6216 new URL(..., import.meta.url)\u3002`)}p&&m(` \u2713 \u6E90\u7801 require.context\u2192import.meta.glob / require(\u56FE\u7247)\u2192\u9759\u6001 import\uFF1A${p} \u5904 / ${i} \u6587\u4EF6`)}j("\u8FD0\u884C\u65F6\u6807\u8BC6\uFF08runtime: vue3\uFF09");if(L){let e=[...F].reverse().find(o=>o.file===L&&!o.remove),t=e?e.after:$(L),n=Ze(t);n.marked?(n.src!==t&&(e?e.after=n.src:F.push({file:L,after:n.src})),m(` \u2713 ${L}\uFF1A\u9ED8\u8BA4\u5BFC\u51FA\u5305\u542B runtime: 'vue3'`)):(C.push(`${L} \u672A\u80FD\u81EA\u52A8\u6DFB\u52A0 runtime \u6807\u8BC6\uFF1A${n.reason}\u3002\u8BF7\u8BA9\u9ED8\u8BA4\u5BFC\u51FA\u7684\u5E93\u5BF9\u8C61\u5305\u542B runtime: 'vue3'\uFF1B\u672A\u6807\u8BC6\u65F6\u5E73\u53F0\u4FDD\u7559\u65E7\u7248\u517C\u5BB9\u3002`),m(` \xB7 ${L}\uFF1A\u6807\u8BC6\u672A\u6CE8\u5165\uFF0C\u5DF2\u8BB0\u5F55\u4EBA\u5DE5\u6E05\u5355`))}else C.push("\u672A\u627E\u5230\u8FDC\u7A0B\u5E93\u5165\u53E3\uFF1B\u8BF7\u8BA9\u5E93\u9ED8\u8BA4\u5BFC\u51FA\u5305\u542B runtime: 'vue3'\u3002package.json \u6807\u8BC6\u4E0D\u4F1A\u5355\u72EC\u4F20\u5230\u6D4F\u89C8\u5668\u3002");j("\u65E5\u671F\u63A7\u4EF6\u683C\u5F0F\uFF08Element UI \u2192 Element Plus\uFF09");var xe=[];for(let e of _){let t=A.relative(T,e),n=F.find(p=>p.file===t&&!p.remove),o=Ee(n?n.after:v.readFileSync(e,"utf8"),{filename:e});if(o.count){n?n.after=o.src:F.push({file:t,after:o.src});for(let p of o.fixes)xe.push(`${t}:${p.line}\uFF1A${p.before} \u2192 ${p.after}`);m(` \u2713 ${t}\uFF1A${o.count} \u5904\u65E5\u671F\u683C\u5F0F\u4FEE\u590D`)}for(let p of o.warnings)C.push(`${t}\uFF1A${p}\uFF08F21\uFF1B\u5B8C\u6210\u683C\u5F0F\u6765\u6E90\u4FEE\u590D\u540E\u518D\u9A8C\u6536\uFF09`)}j("\u4EA7\u54C1\u4E3B\u9898\u9002\u914D\uFF08\u6D88\u8D39\u5E73\u53F0\u53D8\u91CF\uFF0C\u4FDD\u7559 scoped\uFF09");var fe=[];for(let e of[..._,...at]){let t=A.relative(T,e),n=[...F].reverse().find(p=>p.file===t&&!p.remove),o=Ie(n?n.after:v.readFileSync(e,"utf8"),{filename:e});if(o.count){n?n.after=o.src:F.push({file:t,after:o.src});for(let p of o.fixes)fe.push(`${t}:${p.line}\uFF1A${p.before} \u2192 ${p.after}`);m(` \u2713 ${t}\uFF1A${o.count} \u5904\u4E3B\u9898\u53D8\u91CF\u9002\u914D`)}for(let p of o.warnings)C.push(`${t}\uFF1A${p}\uFF08E2\uFF1B\u8FFD\u8E2A\u5B9E\u9645\u6D88\u8D39\u573A\u666F\u540E\u5B8C\u6210\u4E3B\u9898\u9002\u914D\uFF09`)}if(V){j("@epxing \u72EC\u7ACB\u5305\u5165\u53E3\u4E0E\u4F9D\u8D56\u8FC1\u79FB");let t=ot({read:g(n=>[...F].reverse().find(o=>o.file.replaceAll("\\","/")===n&&!o.remove)?.after??$(n),"latest"),files:_.map(n=>A.relative(T,n).replaceAll("\\","/")),packagesVersion:V,cliVersion:pt,templates:Ut,newVite:rt&&!["vite.config.mjs","vite.config.js","vite.config.ts"].some(n=>$(n)!=null)});be=t.blocked;for(let n of t.changes)F.push(n);C.push(...t.manual),m(t.blocked?" \u72EC\u7ACB\u5305\u5207\u6362\u9700\u8981\u4EBA\u5DE5\u5904\u7406\uFF1B\u4FDD\u7559\u539F\u5305\u5165\u53E3\uFF0C\u672A\u6DF7\u5165\u90E8\u5206\u72EC\u7ACB\u5305\u3002":` \u2713 \u72EC\u7ACB\u5305\u7248\u672C ${V}\uFF1B\u751F\u6210\u4EA7\u54C1\u4F7F\u7528\u8BF4\u660E`)}var zt=["# epx-migrate \u8FC1\u79FB\u62A5\u544A","",`\u9879\u76EE\uFF1A\`${A.resolve(T)}\``,`\u6A21\u5F0F\uFF1A${z?"--apply \u5DF2\u843D\u76D8":"dry-run \u672A\u843D\u76D8"}${de?" + gogocode \u8F6C\u6362":""}`,"",...V?["## \u72EC\u7ACB\u5305\u5207\u6362","",`\u76EE\u6807\uFF1A@epxing/* ${V}\uFF0CCLI ${pt}\u3002`,be?"\u5B58\u5728\u672A\u786E\u5B9A\u7684\u65E7\u63A5\u53E3\uFF0C\u672C\u6B21\u4FDD\u7559\u65E7\u5305\u6A21\u5F0F\uFF1B\u6309\u4EBA\u5DE5\u6E05\u5355\u5904\u7406\u540E\u91CD\u65B0\u8FD0\u884C\u3002":"\u516C\u5F00\u5165\u53E3\u4E0E\u4F9D\u8D56\u5DF2\u5217\u5165\u8FC1\u79FB\u8BA1\u5212\uFF0C\u4EA7\u54C1\u4F7F\u7528\u8BF4\u660E\u89C1 PRODUCT-GUIDE.md \u6216 EPXING-PACKAGES-GUIDE.md\u3002","\u9884\u89C8\u4E0D\u4F1A\u5199\u5165\u6587\u4EF6\uFF1B\u5E94\u7528\u540E\u5B89\u88C5\u4F9D\u8D56\u5E76\u9A8C\u8BC1\u8FDC\u7A0B\u5E93\u3001\u72EC\u7ACB\u5E94\u7528\u53CA\u4E1A\u52A1\u6D41\u7A0B\u3002",""]:[],"## \u540E\u7EED\u64CD\u4F5C\u987A\u5E8F","","```bash",'git add -A && git commit -m "epx-migrate: \u4F9D\u8D56+codemod" # \u5B58\u6863\u5DE5\u5177\u6539\u52A8','npm i && git add -A && git commit -m "lockfile" # \u88C5\u65B0\u4F9D\u8D56\u5E76\u63D0\u4EA4\uFF08lock \u88AB\u8DDF\u8E2A\u65F6 --transform-vue \u7684\u5E72\u51C0\u68C0\u67E5\u9700\u8981\uFF09',...de?[]:["node <\u672C\u5DE5\u5177> . --apply --transform-vue # \u8DD1 gogocode \u8F6C\u6362 .vue\uFF08gogocode \u81EA\u52A8\u5907\u597D\uFF0C\u542B style \u5FEB\u7167\u4FDD\u62A4\uFF09"],"npm run build:lib # \u6784\u5EFA Vue3 \u7248\u8FDC\u7A0B lib/index.js","```","","\u6784\u5EFA\u62A5\u9519\u65F6\u6309\u6587\u4EF6\u9010\u4E2A\u5904\u7406\uFF08\u6700\u5E38\u89C1\uFF1A\u5185\u8054\u4E8B\u4EF6\u591A\u8BED\u53E5\u7F3A\u5206\u53F7\u2014\u2014\u6309\u62A5\u9519\u884C\u8865 `;`\uFF09\u3002","",'\u8FD0\u884C\u65F6\u6807\u8BC6\uFF1A\u672C\u547D\u4EE4\u81EA\u52A8\u5199\u5165 package.json \u7684 `runtime: "vue3"`\uFF0C\u5E76\u7ED9\u5E93\u9ED8\u8BA4\u5BFC\u51FA\u8865\u540C\u540D\u6807\u8BC6\u3002\u6784\u5EFA\u90E8\u7F72\u540E\u8BE5\u5305\u8D70 Vue3 \u539F\u751F\u5B89\u88C5\uFF1B`vue2` \u6216\u6CA1\u6709\u6807\u8BC6\u7684\u5176\u5B83\u4EA7\u54C1/\u9879\u76EE\u5305\u7EE7\u7EED\u4F7F\u7528\u57AB\u7247\u3002\u6807\u8BC6\u8868\u793A\u8FC1\u79FB\u76EE\u6807\uFF0C\u4E0D\u4EE3\u8868\u6784\u5EFA\u6216\u4E1A\u52A1\u9A8C\u6536\u5DF2\u901A\u8FC7\uFF1B\u5B8C\u6210\u4E0B\u9762\u7684\u8F6C\u6362\u3001\u6784\u5EFA\u548C\u590D\u6D4B\u540E\u518D\u53D1\u5E03\u3002',"","\u5E93\u8D85\u8FC7 ~1MB \u65F6\u53EF\u4EE5\u518D\u8BD5\u6309\u9700\u6253\u5305\u5F62\u6001\uFF08\u9ED8\u8BA4\u5173\uFF0C\u4E0D\u5F71\u54CD\u4E0A\u9762\u8FD9\u6761\uFF09\uFF1A","","```bash","npm run build:lib:lazy # \u51FA index.js(\u5165\u53E3\u58F3) + chunks/ + index.full.js(\u515C\u5E95)","```","","\u26A0\uFE0F \u6309\u9700\u5F62\u6001**\u5FC5\u987B\u4E0A\u4F20\u6574\u4E2A `lib/` \u76EE\u5F55**\uFF08\u4E0D\u518D\u662F index.js + index.css \u4E24\u4E2A\u6587\u4EF6\uFF09\uFF1BFM_SYSTEM_WEBPACK \u91CC\u4ECD\u53EA\u914D index.js \u4E0E index.css \u4E24\u6761 url\u3002\u5207\u6362\u524D\u7684\u7EA6\u675F\u4E0E\u7EBF\u4E0A\u6392\u67E5\u624B\u6BB5\u89C1 epx-frame \u7684 `docs/PROJECT-GUIDE.md` \xA7\u4E09\u300C\u4E24\u79CD\u6253\u5305\u65B9\u5F0F\u300D\u3002","","## \u2460 \u4F9D\u8D56\u8FC1\u79FB\uFF08\u5DF2\u81EA\u52A8\uFF09","- \u8FC1\u79FB\u8868\u52A0/\u5220/\u6539 + lib \u6784\u5EFA\u95ED\u5305\uFF08webpack5/vue-loader17\uFF09+ gogocode \u5DE5\u5177 + JSX/icons \u4F9D\u8D56 + \u9690\u5F0F\u4F9D\u8D56\u8865\u58F0\u660E","","### webpack.config.js \u4EBA\u5DE5\u6838\u5BF9",...Ae.map(e=>`- ${e}`),"","## \u2461 codemod\uFF08\u5DF2\u81EA\u52A8\uFF09","- main.js\uFF1A`Vue.use`\u2192`app.use`\u3001`$mount`\u2192`mount`\u3001`frame.createApp()`","- index.js\uFF1A`install(Vue)`\u2192`install(app)`\u3001`Vue.component`\u2192`app.component`","- babel.config.js\uFF1A\u5220 element-ui/vant \u6309\u9700\u63D2\u4EF6 + cli preset\uFF1BJSX \u9879\u76EE\u52A0 @vue/babel-plugin-jsx","- webpack.config.js\uFF1Aexternals \u52A0 `{ vue: window.frame.Vue }`\uFF1BJSX \u9879\u76EE babel \u89C4\u5219\u6536 .jsx","- \u7A7A .vue \u8865\u6700\u5C0F\u5408\u6CD5\u5185\u5BB9","","### \u65E5\u671F\u63A7\u4EF6\u683C\u5F0F\u81EA\u52A8\u4FEE\u590D\uFF08F21\uFF1B\u4E0D\u4F9D\u8D56 gogocode\uFF09",...xe.length?xe.map(e=>`- ${e}`):["- \u672A\u53D1\u73B0\u53EF\u9759\u6001\u4FEE\u590D\u7684\u65E7\u683C\u5F0F\uFF1B\u52A8\u6001\u6765\u6E90\u89C1\u4EBA\u5DE5\u6E05\u5355\uFF0C\u4E0D\u4EE3\u8868\u6240\u6709\u65E5\u671F\u903B\u8F91\u5DF2\u901A\u8FC7\u3002"],"- \u53EA\u4FEE\u6539\u65E5\u671F/\u65F6\u95F4\u63A7\u4EF6 format \u4E0E value-format/valueFormat\uFF1B\u4FDD\u7559\u5206\u949F mm\u3001\u79D2 ss\u3001\u661F\u671F ddd/dddd \u548C\u65B9\u62EC\u53F7\u6587\u5B57\u3002\u4E0D\u5168\u5C40\u66FF\u6362\u540E\u7AEF/\u5176\u5B83\u65E5\u671F\u5E93\u5B57\u7B26\u4E32\u3002","- \u7528\u6700\u7EC8Vue3\u4EA7\u7269\u6838\u5BF9\u521D\u59CB\u56DE\u663E\u3001\u9009\u62E9\u65E5\u671F\u3001\u7ED1\u5B9A\u503C\u53CA\u63A5\u53E3\u65E5\u671F\u53C2\u6570\uFF1Blint/build\u901A\u8FC7\u4E0D\u80FD\u66FF\u4EE3\u65E5\u671F\u9A8C\u6536\u3002","","### \u4E3B\u9898\u9002\u914D\uFF08E2\uFF1B\u4E0D\u4F9D\u8D56 gogocode\uFF09",...fe.length?fe.map(e=>`- ${e}`):["- \u672A\u53D1\u73B0\u53EF\u5B89\u5168\u81EA\u52A8\u66FF\u6362\u7684\u9759\u6001\u4E3B\u9898\u6837\u5F0F\uFF1B\u52A8\u6001\u503C\u4E0E\u7279\u6B8A\u5C3A\u5BF8\u89C1\u4EBA\u5DE5\u6E05\u5355\u3002"],"- \u4EA7\u54C1\u53EA\u6D88\u8D39\u5E73\u53F0 --epx-* / --color-text-* \u53D8\u91CF\u5E76\u4FDD\u7559\u65E7\u503C fallback\uFF0C\u4E0D\u5BFC\u5165\u6574\u5957\u4E3B\u9898\u6216\u5199\u5168\u5C40 :root \u9ED8\u8BA4\u503C\uFF1Bscoped\u3001\u5706\u5F62/\u80F6\u56CA\u3001\u56FE\u6807\u3001\u6253\u5370\u6837\u5F0F\u4FDD\u7559\u3002","- \u7528\u6700\u7EC8\u4EA7\u7269\u5207\u6362\u5B57\u53F7\u3001\u5706\u89D2\u3001\u660E\u6697\u53CA\u5BC6\u5EA6\uFF0C\u6838\u5BF9\u4EA7\u54C1\u4E0E\u5E73\u53F0\u540C\u6B65\u3001\u61D2\u52A0\u8F7D\u524D\u540E\u53CA\u7EC4\u4EF6\u5916\u6837\u5F0F\u3002\u4E0D\u80FD\u5B89\u5168\u81EA\u52A8\u5904\u7406\u7684\u52A8\u6001\u503C\u987B\u8FFD\u8E2A\u6765\u6E90\u5E76\u4FEE\u590D\u6216\u8BB0\u5F55\u4FDD\u7559\u7406\u7531\u3002","","## \u2462 .vue \u8F6C\u6362\uFF08gogocode + \u4FEE\u8865\uFF0C\u5DF2\u81EA\u52A8\uFF09\u4E0E\u4EBA\u5DE5\u590D\u6838\u6E05\u5355\uFF08\u6570\u5B57=\u547D\u4E2D\u6587\u4EF6\u6570\uFF09",'- style \u5757\u5168\u7A0B\u5FEB\u7167\u4FDD\u62A4\uFF08gogocode \u4F1A\u6BC1 scss \u6CE8\u91CA\u5757/\u5220 style\uFF09\uFF1Bicons \u5305\u540D\u6539\u5199\uFF1BJSX \u6807 lang="jsx"',...Object.entries(ut).filter(([,e])=>e>0).map(([e,t])=>`- [ ] **${t} \u6587\u4EF6**\uFF1A${e}`),"","### \u5176\u5B83\u4EBA\u5DE5\u9879",...C.length?C.map(e=>`- [ ] ${e}`):["- \uFF08\u65E0\uFF09"],"","## \u2465 \u7B2C\u4E09\u65B9\u8FD0\u884C\u65F6\u4F9D\u8D56\uFF08Vue3 \u517C\u5BB9\u6027\uFF09",...Z.length?["> Vue3 \u4EA7\u7269\u4E0D\u8D70\u5E73\u53F0 vue2-remote-shim \u57AB\u7247\uFF0C\u9762\u5411 Vue2 \u7684\u7B2C\u4E09\u65B9\u8FD0\u884C\u65F6\u5E93\u4F1A**\u8FD0\u884C\u65F6\u5D29**\uFF08\u5982\u7EC4\u7EC7\u67B6\u6784\u56FE `_c`\uFF09\u3002\u53EA\u80FD\u6362\u5E93/\u81EA\u5C01\u88C5\uFF0C\u5DE5\u5177\u4E0D\u81EA\u52A8\u6539\u3002","",...Z.map(e=>`- [ ] ${e.kind==="known"?"**\u786E\u5B9A\u4E0D\u517C\u5BB9**":"\u7591\u4F3C"} \`${e.name}\`\uFF1A${e.detail}`)]:["- \uFF08\u672A\u53D1\u73B0\uFF1B\u4F9D\u8D56\u672A\u5B89\u88C5\u65F6\u7ED3\u679C\u4E0D\u5B8C\u6574\uFF0C`npm i` \u540E\u91CD\u8DD1\u66F4\u51C6\uFF09"],"","## \u53C2\u7167","- \u5E73\u53F0\u8FC1\u79FB\u8BB0\u6863\uFF1A`epx-frame/docs/migration/`\uFF08\u540C\u6B3E\u5751\uFF09","- **\u6784\u5EFA\u901A\u8FC7 \u2260 \u8FD0\u884C\u7B49\u4EF7**\uFF1A\u4E0A\u5E73\u53F0\u771F\u73AF\u5883\u70B9\u5173\u952E\u9875\u9762\uFF08\u5217\u8868/\u8868\u5355/\u5F39\u7A97/\u6D41\u7A0B\uFF09\uFF1BJSX \u7684 scopedSlots \u7B49 Vue2 \u8BED\u4E49\u91CD\u70B9\u770B","- **\u6837\u5F0F\u9694\u79BB\u9A8C\u6536**\uFF1A\u9ED8\u8BA4\u4FDD\u7559 scoped\uFF1B\u8C03\u6574\u4F5C\u7528\u57DF\u65F6\uFF0C\u987B\u7528\u6700\u7EC8\u61D2\u52A0\u8F7D\u4EA7\u7269\u68C0\u67E5\u7EC4\u4EF6\u5185\u6548\u679C\u3001\u52A0\u8F7D\u524D\u540E\u7EC4\u4EF6\u5916\u540C\u540D\u5143\u7D20\u53CA\u79BB\u5F00\u9875\u9762\u540E\u7684\u5176\u4ED6\u9875\u9762\u3002\u6784\u5EFA\u6216\u9759\u6001\u626B\u63CF\u901A\u8FC7\u4E0D\u80FD\u66FF\u4EE3\u9694\u79BB\u56DE\u5F52\uFF1B\u672A\u6D4B\u9879\u8BB0\u5F55\u4E3A\u5F85\u9A8C\u8BC1\u3002","- \u6682\u4E0D\u91CD\u5EFA\u7684\u8001\u5E93\uFF1A\u5E73\u53F0\u4FA7 Vue2 \u57AB\u7247\u515C\u5E95\uFF08`INCLUDE_VUE2_COMPAT`\uFF09",""].join(`
|
|
284
|
+
`);F.push({file:"MIGRATION-REPORT.md",after:zt});j(z?"\u843D\u76D8\uFF08--apply\uFF09":"DRY-RUN\uFF08\u672A\u5199\u6587\u4EF6\uFF09");for(let e of F){let t=D(e.file);if(e.remove){z&&!ge?(v.rmSync(t,{force:!0}),m(` \u2717 \u5220 ${e.file}`)):m(` [dry-run] \u5C06\u5220 ${e.file}`);continue}z&&!ge?(v.mkdirSync(A.dirname(t),{recursive:!0}),v.writeFileSync(t,e.after),m(` \u2713 \u5199 ${e.file}`)):ge&&e.file==="MIGRATION-REPORT.md"?(v.writeFileSync(t,e.after),m(` \u2713 \u5199 ${e.file}`)):m(` [dry-run] \u5C06\u6539 ${e.file}`)}m(`
|
|
285
|
+
\u5B8C\u6210\u3002${z?"\u5DF2\u843D\u76D8\uFF0C\u7528 git diff \u5BA1\u67E5\u3002":"dry-run\uFF1B--apply \u843D\u76D8\u3002"}\u4EBA\u5DE5\u6E05\u5355\u89C1 MIGRATION-REPORT.md\u3002`);be&&(process.exitCode=2);
|