@arcforge/axon 2.0.164 → 2.0.165
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/agent-main.js +3 -3
- package/app.js +7 -7
- package/package.json +1 -1
package/agent-main.js
CHANGED
|
@@ -499,9 +499,9 @@ Project '${L.projectName}' (${aC[L.projectKind]}) ${B}
|
|
|
499
499
|
`,B++};this.projectService.externalProjects.forEach(V),this.projectService.configuredProjects.forEach(V),this.projectService.inferredProjects.forEach(V)}}this.logger.msg(U,"Err")}send(X){if(X.type==="event"&&!this.canUseEvents){if(this.logger.hasLevel(3))this.logger.info(`Session does not support events: ignored event: ${S3(X)}`);return}this.writeMessage(X)}writeMessage(X){let K=YM$(X,this.logger,this.byteLength,this.host.newLine);this.host.write(K)}event(X,K){this.send(QM$(K,X))}doOutput(X,K,G,U,B,V){let L={seq:0,type:"response",command:K,request_seq:G,success:U,performanceData:B&&W86(B)};if(U){let A;if(I9(X))L.body=X,A=X.metadata,delete X.metadata;else if(typeof X==="object")if(X.metadata){let{metadata:_,...N}=X;L.body=N,A=_}else L.body=X;else L.body=X;if(A)L.metadata=A}else m.assert(X===void 0);if(V)L.message=V;this.send(L)}semanticCheck(X,K){var G,U;let B=DY();(G=H8)==null||G.push(H8.Phase.Session,"semanticCheck",{file:X,configFilePath:K.canonicalConfigFilePath});let V=o16(K,X)?r7:K.getLanguageService().getSemanticDiagnostics(X).filter((L)=>!!L.file);this.sendDiagnosticsEvent(X,K,V,"semanticDiag",B),(U=H8)==null||U.pop()}syntacticCheck(X,K){var G,U;let B=DY();(G=H8)==null||G.push(H8.Phase.Session,"syntacticCheck",{file:X,configFilePath:K.canonicalConfigFilePath}),this.sendDiagnosticsEvent(X,K,K.getLanguageService().getSyntacticDiagnostics(X),"syntaxDiag",B),(U=H8)==null||U.pop()}suggestionCheck(X,K){var G,U;let B=DY();(G=H8)==null||G.push(H8.Phase.Session,"suggestionCheck",{file:X,configFilePath:K.canonicalConfigFilePath}),this.sendDiagnosticsEvent(X,K,K.getLanguageService().getSuggestionDiagnostics(X),"suggestionDiag",B),(U=H8)==null||U.pop()}regionSemanticCheck(X,K,G){var U,B,V;let L=DY();(U=H8)==null||U.push(H8.Phase.Session,"regionSemanticCheck",{file:X,configFilePath:K.canonicalConfigFilePath});let A;if(!this.shouldDoRegionCheck(X)||!(A=K.getLanguageService().getRegionSemanticDiagnostics(X,G))){(B=H8)==null||B.pop();return}this.sendDiagnosticsEvent(X,K,A.diagnostics,"regionSemanticDiag",L,A.spans),(V=H8)==null||V.pop();return}shouldDoRegionCheck(X){var K;let G=(K=this.projectService.getScriptInfoForNormalizedPath(X))==null?void 0:K.textStorage.getLineInfo().getLineCount();return!!(G&&G>=this.regionDiagLineCountThreshold)}sendDiagnosticsEvent(X,K,G,U,B,V){try{let L=m.checkDefined(K.getScriptInfo(X)),A=DY()-B,_={file:X,diagnostics:G.map((N)=>t16(X,K,N)),spans:V==null?void 0:V.map((N)=>AU(N,L))};this.event(_,U),this.addDiagnosticsPerformanceData(X,U,A)}catch(L){this.logError(L,U)}}updateErrorCheck(X,K,G,U=!0){if(K.length===0)return;m.assert(!this.suppressDiagnosticEvents);let B=this.changeSeq,V=Math.min(G,200),L=0,A=()=>{if(L++,K.length>L)return X.delay("checkOne",V,N)},_=(T,k)=>{if(this.semanticCheck(T,k),this.changeSeq!==B)return;if(this.getPreferences(T).disableSuggestions)return A();X.immediate("suggestionCheck",()=>{this.suggestionCheck(T,k),A()})},N=()=>{if(this.changeSeq!==B)return;let T,k=K[L];if(h9(k))k=this.toPendingErrorCheck(k);else if("ranges"in k)T=k.ranges,k=this.toPendingErrorCheck(k.file);if(!k)return A();let{fileName:y,project:h}=k;if(qW(h),!h.containsFile(y,U))return;if(this.syntacticCheck(y,h),this.changeSeq!==B)return;if(h.projectService.serverMode!==0)return A();if(T)return X.immediate("regionSemanticCheck",()=>{let u=this.projectService.getScriptInfoForNormalizedPath(y);if(u)this.regionSemanticCheck(y,h,T.map((l)=>this.getRange({file:y,...l},u)));if(this.changeSeq!==B)return;X.immediate("semanticCheck",()=>_(y,h))});X.immediate("semanticCheck",()=>_(y,h))};if(K.length>L&&this.changeSeq===B)X.delay("checkOne",G,N)}cleanProjects(X,K){if(!K)return;this.logger.info(`cleaning ${X}`);for(let G of K)G.getLanguageService(!1).cleanupSemanticCache(),G.cleanupProgram()}cleanup(){if(this.cleanProjects("inferred projects",this.projectService.inferredProjects),this.cleanProjects("configured projects",F9(this.projectService.configuredProjects.values())),this.cleanProjects("external projects",this.projectService.externalProjects),this.host.gc)this.logger.info("host.gc()"),this.host.gc()}getEncodedSyntacticClassifications(X){let{file:K,languageService:G}=this.getFileAndLanguageServiceForSyntacticOperation(X);return G.getEncodedSyntacticClassifications(K,X)}getEncodedSemanticClassifications(X){let{file:K,project:G}=this.getFileAndProject(X),U=X.format==="2020"?"2020":"original";return G.getLanguageService().getEncodedSemanticClassifications(K,X,U)}getProject(X){return X===void 0?void 0:this.projectService.findProject(X)}getConfigFileAndProject(X){let K=this.getProject(X.projectFileName),G=WY(X.file);return{configFile:K&&K.hasConfigFile(G)?G:void 0,project:K}}getConfigFileDiagnostics(X,K,G){let U=K.getAllProjectErrors(),B=K.getLanguageService().getCompilerOptionsDiagnostics(),V=x$(u6(U,B),(L)=>!!L.file&&L.file.fileName===X);return G?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(V):b6(V,(L)=>Mh(L,!1))}convertToDiagnosticsWithLinePositionFromDiagnosticFile(X){return X.map((K)=>({message:BU(K.messageText,this.host.newLine),start:K.start,length:K.length,category:cL(K),code:K.code,source:K.source,startLocation:K.file&&RT(w4(K.file,K.start)),endLocation:K.file&&RT(w4(K.file,K.start+K.length)),reportsUnnecessary:K.reportsUnnecessary,reportsDeprecated:K.reportsDeprecated,relatedInformation:b6(K.relatedInformation,UX$)}))}getCompilerOptionsDiagnostics(X){let K=this.getProject(X.projectFileName);return this.convertToDiagnosticsWithLinePosition(x$(K.getLanguageService().getCompilerOptionsDiagnostics(),(G)=>!G.file),void 0)}convertToDiagnosticsWithLinePosition(X,K){return X.map((G)=>({message:BU(G.messageText,this.host.newLine),start:G.start,length:G.length,category:cL(G),code:G.code,source:G.source,startLocation:K&&K.positionToLineOffset(G.start),endLocation:K&&K.positionToLineOffset(G.start+G.length),reportsUnnecessary:G.reportsUnnecessary,reportsDeprecated:G.reportsDeprecated,relatedInformation:b6(G.relatedInformation,UX$)}))}getDiagnosticsWorker(X,K,G,U){let{project:B,file:V}=this.getFileAndProject(X);if(K&&o16(B,V))return r7;let L=B.getScriptInfoForNormalizedPath(V),A=G(B,V);return U?this.convertToDiagnosticsWithLinePosition(A,L):A.map((_)=>t16(V,B,_))}getDefinition(X,K){let{file:G,project:U}=this.getFileAndProject(X),B=this.getPositionInFile(X,G),V=this.mapDefinitionInfoLocations(U.getLanguageService().getDefinitionAtPosition(G,B)||r7,U);return K?this.mapDefinitionInfo(V,U):V.map($.mapToOriginalLocation)}mapDefinitionInfoLocations(X,K){return X.map((G)=>{let U=K86(G,K);return!U?G:{...U,containerKind:G.containerKind,containerName:G.containerName,kind:G.kind,name:G.name,failedAliasResolution:G.failedAliasResolution,...G.unverified&&{unverified:G.unverified}}})}getDefinitionAndBoundSpan(X,K){let{file:G,project:U}=this.getFileAndProject(X),B=this.getPositionInFile(X,G),V=m.checkDefined(U.getScriptInfo(G)),L=U.getLanguageService().getDefinitionAndBoundSpan(G,B);if(!L||!L.definitions)return{definitions:r7,textSpan:void 0};let A=this.mapDefinitionInfoLocations(L.definitions,U),{textSpan:_}=L;if(K)return{definitions:this.mapDefinitionInfo(A,U),textSpan:AU(_,V)};return{definitions:A.map($.mapToOriginalLocation),textSpan:_}}findSourceDefinition(X){var K;let{file:G,project:U}=this.getFileAndProject(X),B=this.getPositionInFile(X,G),V=U.getLanguageService().getDefinitionAtPosition(G,B),L=this.mapDefinitionInfoLocations(V||r7,U).slice();if(this.projectService.serverMode===0&&(!L6(L,(y)=>WY(y.fileName)!==G&&!y.isAmbient)||L6(L,(y)=>!!y.failedAliasResolution))){let y=Ux((i)=>i.textSpan.start,IJ$(this.host.useCaseSensitiveFileNames));L==null||L.forEach((i)=>y.add(i));let h=U.getNoDtsResolutionProject(G),u=h.getLanguageService(),l=(K=u.getDefinitionAtPosition(G,B,!0,!1))==null?void 0:K.filter((i)=>WY(i.fileName)!==G);if(L6(l))for(let i of l){if(i.unverified){let t=T(i,U.getLanguageService().getProgram(),u.getProgram());if(L6(t)){for(let o of t)y.add(o);continue}}y.add(i)}else{let i=L.filter((t)=>WY(t.fileName)!==G&&t.isAmbient);for(let t of L6(i)?i:N()){let o=_(t.fileName,G,h);if(!o)continue;let J$=this.projectService.getOrCreateScriptInfoNotOpenedByClient(o,h.currentDirectory,h.directoryStructureHost,!1);if(!J$)continue;if(!h.containsScriptInfo(J$))h.addRoot(J$),h.updateGraph();let Y$=u.getProgram(),z$=m.checkDefined(Y$.getSourceFile(o));for(let V$ of k(t.name,z$,Y$))y.add(V$)}}L=F9(y.values())}return L=L.filter((y)=>!y.isAmbient&&!y.failedAliasResolution),this.mapDefinitionInfo(L,U);function _(y,h,u){var l,i,t;let o=xd(y);if(o&&y.lastIndexOf(nj)===o.topLevelNodeModulesIndex){let J$=y.substring(0,o.packageRootIndex),Y$=(l=U.getModuleResolutionCache())==null?void 0:l.getPackageJsonInfoCache(),z$=U.getCompilationSettings(),V$=JC(O9(J$,U.getCurrentDirectory()),$C(Y$,U,z$));if(!V$)return;let Z$=i0$(V$,{moduleResolution:2},U,U.getModuleResolutionCache()),f$=y.substring(o.topLevelPackageNameIndex+1,o.packageRootIndex),O$=XC(lf(f$)),G$=U.toPath(y);if(Z$&&L6(Z$,(R$)=>U.toPath(R$)===G$))return(i=u.resolutionCache.resolveSingleModuleNameWithoutWatching(O$,h).resolvedModule)==null?void 0:i.resolvedFileName;else{let R$=y.substring(o.packageRootIndex+1),T$=`${O$}/${h2(R$)}`;return(t=u.resolutionCache.resolveSingleModuleNameWithoutWatching(T$,h).resolvedModule)==null?void 0:t.resolvedFileName}}return}function N(){let y=U.getLanguageService(),h=y.getProgram(),u=IK(h.getSourceFile(G),B);if((fX(u)||z6(u))&&CY(u.parent))return Wj$(u,(l)=>{var i;if(l===u)return;let t=(i=y.getDefinitionAtPosition(G,l.getStart(),!0,!1))==null?void 0:i.filter((o)=>WY(o.fileName)!==G&&o.isAmbient).map((o)=>({fileName:o.fileName,name:_G(u)}));if(L6(t))return t})||r7;return r7}function T(y,h,u){var l;let i=u.getSourceFile(y.fileName);if(!i)return;let t=IK(h.getSourceFile(G),B),o=h.getTypeChecker().getSymbolAtLocation(t),J$=o&&uY(o,277);if(!J$)return;let Y$=((l=J$.propertyName)==null?void 0:l.text)||J$.name.text;return k(Y$,i,u)}function k(y,h,u){let l=kY.Core.getTopMostDeclarationNamesInFile(y,h);return f1(l,(i)=>{let t=u.getTypeChecker().getSymbolAtLocation(i),o=tw(i);if(t&&o)return NT.createDefinitionInfo(o,u.getTypeChecker(),t,o,!0)})}}getEmitOutput(X){let{file:K,project:G}=this.getFileAndProject(X);if(!G.shouldEmitFile(G.getScriptInfo(K)))return{emitSkipped:!0,outputFiles:[],diagnostics:[]};let U=G.getLanguageService().getEmitOutput(K);return X.richResponse?{...U,diagnostics:X.includeLinePosition?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(U.diagnostics):U.diagnostics.map((B)=>Mh(B,!0))}:U}mapJSDocTagInfo(X,K,G){return X?X.map((U)=>{var B;return{...U,text:G?this.mapDisplayParts(U.text,K):(B=U.text)==null?void 0:B.map((V)=>V.text).join("")}}):[]}mapDisplayParts(X,K){if(!X)return[];return X.map((G)=>G.kind!=="linkName"?G:{...G,target:this.toFileSpan(G.target.fileName,G.target.textSpan,K)})}mapSignatureHelpItems(X,K,G){return X.map((U)=>({...U,documentation:this.mapDisplayParts(U.documentation,K),parameters:U.parameters.map((B)=>({...B,documentation:this.mapDisplayParts(B.documentation,K)})),tags:this.mapJSDocTagInfo(U.tags,K,G)}))}mapDefinitionInfo(X,K){return X.map((G)=>({...this.toFileSpanWithContext(G.fileName,G.textSpan,G.contextSpan,K),...G.unverified&&{unverified:G.unverified}}))}static mapToOriginalLocation(X){if(X.originalFileName)return m.assert(X.originalTextSpan!==void 0,"originalTextSpan should be present if originalFileName is"),{...X,fileName:X.originalFileName,textSpan:X.originalTextSpan,targetFileName:X.fileName,targetTextSpan:X.textSpan,contextSpan:X.originalContextSpan,targetContextSpan:X.contextSpan};return X}toFileSpan(X,K,G){let U=G.getLanguageService(),B=U.toLineColumnOffset(X,K.start),V=U.toLineColumnOffset(X,HQ(K));return{file:X,start:{line:B.line+1,offset:B.character+1},end:{line:V.line+1,offset:V.character+1}}}toFileSpanWithContext(X,K,G,U){let B=this.toFileSpan(X,K,U),V=G&&this.toFileSpan(X,G,U);return V?{...B,contextStart:V.start,contextEnd:V.end}:B}getTypeDefinition(X){let{file:K,project:G}=this.getFileAndProject(X),U=this.getPositionInFile(X,K),B=this.mapDefinitionInfoLocations(G.getLanguageService().getTypeDefinitionAtPosition(K,U)||r7,G);return this.mapDefinitionInfo(B,G)}mapImplementationLocations(X,K){return X.map((G)=>{let U=K86(G,K);return!U?G:{...U,kind:G.kind,displayParts:G.displayParts}})}getImplementation(X,K){let{file:G,project:U}=this.getFileAndProject(X),B=this.getPositionInFile(X,G),V=this.mapImplementationLocations(U.getLanguageService().getImplementationAtPosition(G,B)||r7,U);return K?V.map(({fileName:L,textSpan:A,contextSpan:_})=>this.toFileSpanWithContext(L,A,_,U)):V.map($.mapToOriginalLocation)}getSyntacticDiagnosticsSync(X){let{configFile:K}=this.getConfigFileAndProject(X);if(K)return r7;return this.getDiagnosticsWorker(X,!1,(G,U)=>G.getLanguageService().getSyntacticDiagnostics(U),!!X.includeLinePosition)}getSemanticDiagnosticsSync(X){let{configFile:K,project:G}=this.getConfigFileAndProject(X);if(K)return this.getConfigFileDiagnostics(K,G,!!X.includeLinePosition);return this.getDiagnosticsWorker(X,!0,(U,B)=>U.getLanguageService().getSemanticDiagnostics(B).filter((V)=>!!V.file),!!X.includeLinePosition)}getSuggestionDiagnosticsSync(X){let{configFile:K}=this.getConfigFileAndProject(X);if(K)return r7;return this.getDiagnosticsWorker(X,!0,(G,U)=>G.getLanguageService().getSuggestionDiagnostics(U),!!X.includeLinePosition)}getJsxClosingTag(X){let{file:K,languageService:G}=this.getFileAndLanguageServiceForSyntacticOperation(X),U=this.getPositionInFile(X,K),B=G.getJsxClosingTagAtPosition(K,U);return B===void 0?void 0:{newText:B.newText,caretOffset:0}}getLinkedEditingRange(X){let{file:K,languageService:G}=this.getFileAndLanguageServiceForSyntacticOperation(X),U=this.getPositionInFile(X,K),B=G.getLinkedEditingRangeAtPosition(K,U),V=this.projectService.getScriptInfoForNormalizedPath(K);if(V===void 0||B===void 0)return;return Rs6(B,V)}getDocumentHighlights(X,K){let{file:G,project:U}=this.getFileAndProject(X),B=this.getPositionInFile(X,G),V=U.getLanguageService().getDocumentHighlights(G,B,X.filesToSearch);if(!V)return r7;if(!K)return V;return V.map(({fileName:L,highlightSpans:A})=>{let _=U.getScriptInfo(L);return{file:L,highlightSpans:A.map(({textSpan:N,kind:T,contextSpan:k})=>({...ZM$(N,k,_),kind:T}))}})}provideInlayHints(X){let{file:K,project:G}=this.getFileAndProject(X),U=this.projectService.getScriptInfoForNormalizedPath(K);return G.getLanguageService().provideInlayHints(K,X,this.getPreferences(K)).map((V)=>{let{position:L,displayParts:A}=V;return{...V,position:U.positionToLineOffset(L),displayParts:A==null?void 0:A.map(({text:_,span:N,file:T})=>{if(N){m.assertIsDefined(T,"Target file should be defined together with its span.");let k=this.projectService.getScriptInfo(T);return{text:_,span:{start:k.positionToLineOffset(N.start),end:k.positionToLineOffset(N.start+N.length),file:T}}}else return{text:_}})}})}mapCode(X){var K;let G=this.getHostFormatOptions(),U=this.getHostPreferences(),{file:B,languageService:V}=this.getFileAndLanguageServiceForSyntacticOperation(X),L=this.projectService.getScriptInfoForNormalizedPath(B),A=(K=X.mapping.focusLocations)==null?void 0:K.map((N)=>{return N.map((T)=>{let k=L.lineOffsetToPosition(T.start.line,T.start.offset),y=L.lineOffsetToPosition(T.end.line,T.end.offset);return{start:k,length:y-k}})}),_=V.mapCode(B,X.mapping.contents,A,G,U);return this.mapTextChangesToCodeEdits(_)}getCopilotRelatedInfo(){return{relatedFiles:[]}}setCompilerOptionsForInferredProjects(X){this.projectService.setCompilerOptionsForInferredProjects(X.options,X.projectRootPath)}getProjectInfo(X){return this.getProjectInfoWorker(X.file,X.projectFileName,X.needFileNameList,X.needDefaultConfiguredProjectInfo,!1)}getProjectInfoWorker(X,K,G,U,B){let{project:V}=this.getFileAndProjectWorker(X,K);return qW(V),{configFileName:V.getProjectName(),languageServiceDisabled:!V.languageServiceEnabled,fileNames:G?V.getFileNames(!1,B):void 0,configuredProjectInfo:U?this.getDefaultConfiguredProjectInfo(X):void 0}}getDefaultConfiguredProjectInfo(X){var K;let G=this.projectService.getScriptInfo(X);if(!G)return;let U=this.projectService.findDefaultConfiguredProjectWorker(G,3);if(!U)return;let B,V;return U.seenProjects.forEach((L,A)=>{if(A!==U.defaultProject)if(L!==3)(B??(B=[])).push(WY(A.getConfigFilePath()));else(V??(V=[])).push(WY(A.getConfigFilePath()))}),(K=U.seenConfigs)==null||K.forEach((L)=>(B??(B=[])).push(L)),{notMatchedByConfig:B,notInProject:V,defaultProject:U.defaultProject&&WY(U.defaultProject.getConfigFilePath())}}getRenameInfo(X){let{file:K,project:G}=this.getFileAndProject(X),U=this.getPositionInFile(X,K),B=this.getPreferences(K);return G.getLanguageService().getRenameInfo(K,U,B)}getProjects(X,K,G){let U,B;if(X.projectFileName){let V=this.getProject(X.projectFileName);if(V)U=[V]}else{let V=K?this.projectService.getScriptInfoEnsuringProjectsUptoDate(X.file):this.projectService.getScriptInfo(X.file);if(!V){if(G)return r7;return this.projectService.logErrorForScriptInfoNotFound(X.file),XH.ThrowNoProject()}else if(!K)this.projectService.ensureDefaultProjectForFile(V);U=V.containingProjects,B=this.projectService.getSymlinkedProjects(V)}if(U=x$(U,(V)=>V.languageServiceEnabled&&!V.isOrphan()),!G&&(!U||!U.length)&&!B)return this.projectService.logErrorForScriptInfoNotFound(X.file??X.projectFileName),XH.ThrowNoProject();return B?{projects:U,symLinkedProjects:B}:U}getDefaultProject(X){if(X.projectFileName){let G=this.getProject(X.projectFileName);if(G)return G;if(!X.file)return XH.ThrowNoProject()}return this.projectService.getScriptInfo(X.file).getDefaultProject()}getRenameLocations(X,K){let G=WY(X.file),U=this.getPositionInFile(X,G),B=this.getProjects(X),V=this.getDefaultProject(X),L=this.getPreferences(G),A=this.mapRenameInfo(V.getLanguageService().getRenameInfo(G,U,L),m.checkDefined(this.projectService.getScriptInfo(G)));if(!A.canRename)return K?{info:A,locs:[]}:[];let _=Ms6(B,V,{fileName:X.file,pos:U},!!X.findInStrings,!!X.findInComments,L,this.host.useCaseSensitiveFileNames);if(!K)return _;return{info:A,locs:this.toSpanGroups(_)}}mapRenameInfo(X,K){if(X.canRename){let{canRename:G,fileToRename:U,displayName:B,fullDisplayName:V,kind:L,kindModifiers:A,triggerSpan:_}=X;return _X({canRename:G,fileToRename:U,displayName:B,fullDisplayName:V,kind:L,kindModifiers:A,triggerSpan:AU(_,K)})}else return X}toSpanGroups(X){let K=new Map;for(let{fileName:G,textSpan:U,contextSpan:B,originalContextSpan:V,originalTextSpan:L,originalFileName:A,..._}of X){let N=K.get(G);if(!N)K.set(G,N={file:G,locs:[]});let T=m.checkDefined(this.projectService.getScriptInfo(G));N.locs.push({...ZM$(U,B,T),..._})}return F9(K.values())}getReferences(X,K){let G=WY(X.file),U=this.getProjects(X),B=this.getPositionInFile(X,G),V=Ns6(U,this.getDefaultProject(X),{fileName:X.file,pos:B},this.host.useCaseSensitiveFileNames,this.logger);if(!K)return V;let L=this.getPreferences(G),A=this.getDefaultProject(X),_=A.getScriptInfoForNormalizedPath(G),N=A.getLanguageService().getQuickInfoAtPosition(G,B),T=N?iv(N.displayParts):"",k=N&&N.textSpan,y=k?_.positionToLineOffset(k.start).offset:0,h=k?_.getSnapshot().getText(k.start,HQ(k)):"";return{refs:Z0(V,(l)=>{return l.references.map((i)=>U86(this.projectService,i,L))}),symbolName:h,symbolStartOffset:y,symbolDisplayString:T}}getFileReferences(X,K){let G=this.getProjects(X),U=WY(X.file),B=this.getPreferences(U),V={fileName:U,pos:0},L=KM$(G,this.getDefaultProject(X),V,V,X86,(N)=>{return this.logger.info(`Finding references to file ${U} in project ${N.getProjectName()}`),N.getLanguageService().getFileReferences(U)}),A;if(I9(L))A=L;else{A=[];let N=jX$(this.host.useCaseSensitiveFileNames);L.forEach((T)=>{for(let k of T)if(!N.has(k))A.push(k),N.add(k)})}if(!K)return A;return{refs:A.map((N)=>U86(this.projectService,N,B)),symbolName:`"${X.file}"`}}openClientFile(X,K,G,U){this.projectService.openClientFileWithNormalizedPath(X,K,G,!1,U)}getPosition(X,K){return X.position!==void 0?X.position:K.lineOffsetToPosition(X.line,X.offset)}getPositionInFile(X,K){let G=this.projectService.getScriptInfoForNormalizedPath(K);return this.getPosition(X,G)}getFileAndProject(X){return this.getFileAndProjectWorker(X.file,X.projectFileName)}getFileAndLanguageServiceForSyntacticOperation(X){let{file:K,project:G}=this.getFileAndProject(X);return{file:K,languageService:G.getLanguageService(!1)}}getFileAndProjectWorker(X,K){let G=WY(X),U=this.getProject(K)||this.projectService.ensureDefaultProjectForFile(G);return{file:G,project:U}}getOutliningSpans(X,K){let{file:G,languageService:U}=this.getFileAndLanguageServiceForSyntacticOperation(X),B=U.getOutliningSpans(G);if(K){let V=this.projectService.getScriptInfoForNormalizedPath(G);return B.map((L)=>({textSpan:AU(L.textSpan,V),hintSpan:AU(L.hintSpan,V),bannerText:L.bannerText,autoCollapse:L.autoCollapse,kind:L.kind}))}else return B}getTodoComments(X){let{file:K,project:G}=this.getFileAndProject(X);return G.getLanguageService().getTodoComments(K,X.descriptors)}getDocCommentTemplate(X){let{file:K,languageService:G}=this.getFileAndLanguageServiceForSyntacticOperation(X),U=this.getPositionInFile(X,K);return G.getDocCommentTemplateAtPosition(K,U,this.getPreferences(K),this.getFormatOptions(K))}getSpanOfEnclosingComment(X){let{file:K,languageService:G}=this.getFileAndLanguageServiceForSyntacticOperation(X),U=X.onlyMultiLine,B=this.getPositionInFile(X,K);return G.getSpanOfEnclosingComment(K,B,U)}getIndentation(X){let{file:K,languageService:G}=this.getFileAndLanguageServiceForSyntacticOperation(X),U=this.getPositionInFile(X,K),B=X.options?TT(X.options):this.getFormatOptions(K),V=G.getIndentationAtPosition(K,U,B);return{position:U,indentation:V}}getBreakpointStatement(X){let{file:K,languageService:G}=this.getFileAndLanguageServiceForSyntacticOperation(X),U=this.getPositionInFile(X,K);return G.getBreakpointStatementAtPosition(K,U)}getNameOrDottedNameSpan(X){let{file:K,languageService:G}=this.getFileAndLanguageServiceForSyntacticOperation(X),U=this.getPositionInFile(X,K);return G.getNameOrDottedNameSpan(K,U,U)}isValidBraceCompletion(X){let{file:K,languageService:G}=this.getFileAndLanguageServiceForSyntacticOperation(X),U=this.getPositionInFile(X,K);return G.isValidBraceCompletionAtPosition(K,U,X.openingBrace.charCodeAt(0))}getQuickInfoWorker(X,K){let{file:G,project:U}=this.getFileAndProject(X),B=this.projectService.getScriptInfoForNormalizedPath(G),V=this.getPreferences(G),L=U.getLanguageService().getQuickInfoAtPosition(G,this.getPosition(X,B),V.maximumHoverLength,X.verbosityLevel);if(!L)return;let A=!!V.displayPartsForJSDoc;if(K){let _=iv(L.displayParts);return{kind:L.kind,kindModifiers:L.kindModifiers,start:B.positionToLineOffset(L.textSpan.start),end:B.positionToLineOffset(HQ(L.textSpan)),displayString:_,documentation:A?this.mapDisplayParts(L.documentation,U):iv(L.documentation),tags:this.mapJSDocTagInfo(L.tags,U,A),canIncreaseVerbosityLevel:L.canIncreaseVerbosityLevel}}else return A?L:{...L,tags:this.mapJSDocTagInfo(L.tags,U,!1)}}getFormattingEditsForRange(X){let{file:K,languageService:G}=this.getFileAndLanguageServiceForSyntacticOperation(X),U=this.projectService.getScriptInfoForNormalizedPath(K),B=U.lineOffsetToPosition(X.line,X.offset),V=U.lineOffsetToPosition(X.endLine,X.endOffset),L=G.getFormattingEditsForRange(K,B,V,this.getFormatOptions(K));if(!L)return;return L.map((A)=>this.convertTextChangeToCodeEdit(A,U))}getFormattingEditsForRangeFull(X){let{file:K,languageService:G}=this.getFileAndLanguageServiceForSyntacticOperation(X),U=X.options?TT(X.options):this.getFormatOptions(K);return G.getFormattingEditsForRange(K,X.position,X.endPosition,U)}getFormattingEditsForDocumentFull(X){let{file:K,languageService:G}=this.getFileAndLanguageServiceForSyntacticOperation(X),U=X.options?TT(X.options):this.getFormatOptions(K);return G.getFormattingEditsForDocument(K,U)}getFormattingEditsAfterKeystrokeFull(X){let{file:K,languageService:G}=this.getFileAndLanguageServiceForSyntacticOperation(X),U=X.options?TT(X.options):this.getFormatOptions(K);return G.getFormattingEditsAfterKeystroke(K,X.position,X.key,U)}getFormattingEditsAfterKeystroke(X){let{file:K,languageService:G}=this.getFileAndLanguageServiceForSyntacticOperation(X),U=this.projectService.getScriptInfoForNormalizedPath(K),B=U.lineOffsetToPosition(X.line,X.offset),V=this.getFormatOptions(K),L=G.getFormattingEditsAfterKeystroke(K,B,X.key,V);if(X.key===`
|
|
500
500
|
`&&(!L||L.length===0||Ls6(L,B))){let{lineText:A,absolutePosition:_}=U.textStorage.getAbsolutePositionAndLineText(X.line);if(A&&A.search("\\S")<0){let N=G.getIndentationAtPosition(K,B,V),T=0,k,y;for(k=0,y=A.length;k<y;k++)if(A.charAt(k)===" ")T++;else if(A.charAt(k)==="\t")T+=V.tabSize;else break;if(N!==T){let h=_+k;L.push({span:sQ(_,h),newText:_7.getIndentationString(N,V)})}}}if(!L)return;return L.map((A)=>{return{start:U.positionToLineOffset(A.span.start),end:U.positionToLineOffset(HQ(A.span)),newText:A.newText?A.newText:""}})}getCompletions(X,K){let{file:G,project:U}=this.getFileAndProject(X),B=this.projectService.getScriptInfoForNormalizedPath(G),V=this.getPosition(X,B),L=U.getLanguageService().getCompletionsAtPosition(G,V,{...uP$(this.getPreferences(G)),triggerCharacter:X.triggerCharacter,triggerKind:X.triggerKind,includeExternalModuleExports:X.includeExternalModuleExports,includeInsertTextCompletions:X.includeInsertTextCompletions},U.projectService.getFormatCodeOptions(G));if(L===void 0)return;if(K==="completions-full")return L;let A=X.prefix||"",_=f1(L.entries,(T)=>{if(L.isMemberCompletion||z9(T.name.toLowerCase(),A.toLowerCase())){let k=T.replacementSpan?AU(T.replacementSpan,B):void 0;return{...T,replacementSpan:k,hasAction:T.hasAction||void 0,symbol:void 0}}});if(K==="completions"){if(L.metadata)_.metadata=L.metadata;return _}return{...L,optionalReplacementSpan:L.optionalReplacementSpan&&AU(L.optionalReplacementSpan,B),entries:_}}getCompletionEntryDetails(X,K){let{file:G,project:U}=this.getFileAndProject(X),B=this.projectService.getScriptInfoForNormalizedPath(G),V=this.getPosition(X,B),L=U.projectService.getFormatCodeOptions(G),A=!!this.getPreferences(G).displayPartsForJSDoc,_=f1(X.entryNames,(N)=>{let{name:T,source:k,data:y}=typeof N==="string"?{name:N,source:void 0,data:void 0}:N;return U.getLanguageService().getCompletionEntryDetails(G,V,T,L,k,this.getPreferences(G),y?Q4(y,ks6):void 0)});return K?A?_:_.map((N)=>({...N,tags:this.mapJSDocTagInfo(N.tags,U,!1)})):_.map((N)=>({...N,codeActions:b6(N.codeActions,(T)=>this.mapCodeAction(T)),documentation:this.mapDisplayParts(N.documentation,U),tags:this.mapJSDocTagInfo(N.tags,U,A)}))}getCompileOnSaveAffectedFileList(X){let K=this.getProjects(X,!0,!0),G=this.projectService.getScriptInfo(X.file);if(!G)return r7;return Ps6(G,(U)=>this.projectService.getScriptInfoForPath(U),K,(U,B)=>{if(!U.compileOnSaveEnabled||!U.languageServiceEnabled||U.isOrphan())return;let V=U.getCompilationSettings();if(!!V.noEmit||j5(B.fileName)&&!As6(V))return;return{projectFileName:U.getProjectName(),fileNames:U.getCompileOnSaveAffectedFileList(B),projectUsesOutFile:!!V.outFile}})}emitFile(X){let{file:K,project:G}=this.getFileAndProject(X);if(!G)XH.ThrowNoProject();if(!G.languageServiceEnabled)return X.richResponse?{emitSkipped:!0,diagnostics:[]}:!1;let U=G.getScriptInfo(K),{emitSkipped:B,diagnostics:V}=G.emitFile(U,(L,A,_)=>this.host.writeFile(L,A,_));return X.richResponse?{emitSkipped:B,diagnostics:X.includeLinePosition?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(V):V.map((L)=>Mh(L,!0))}:!B}getSignatureHelpItems(X,K){let{file:G,project:U}=this.getFileAndProject(X),B=this.projectService.getScriptInfoForNormalizedPath(G),V=this.getPosition(X,B),L=U.getLanguageService().getSignatureHelpItems(G,V,X),A=!!this.getPreferences(G).displayPartsForJSDoc;if(L&&K){let _=L.applicableSpan;return{...L,applicableSpan:{start:B.positionToLineOffset(_.start),end:B.positionToLineOffset(_.start+_.length)},items:this.mapSignatureHelpItems(L.items,U,A)}}else if(A||!L)return L;else return{...L,items:L.items.map((_)=>({..._,tags:this.mapJSDocTagInfo(_.tags,U,!1)}))}}toPendingErrorCheck(X){let K=WY(X),G=this.projectService.tryGetDefaultProjectForFile(K);return G&&{fileName:K,project:G}}getDiagnostics(X,K,G){if(this.suppressDiagnosticEvents)return;if(G.length>0)this.updateErrorCheck(X,G,K)}change(X){let K=this.projectService.getScriptInfo(X.file);m.assert(!!K),K.textStorage.switchToScriptVersionCache();let G=K.lineOffsetToPosition(X.line,X.offset),U=K.lineOffsetToPosition(X.endLine,X.endOffset);if(G>=0)this.changeSeq++,this.projectService.applyChangesToFile(K,L1({span:{start:G,length:U-G},newText:X.insertString}))}reload(X){let K=WY(X.file),G=X.tmpfile===void 0?void 0:WY(X.tmpfile),U=this.projectService.getScriptInfoForNormalizedPath(K);if(U)this.changeSeq++,U.reloadFromFile(G)}saveToTmp(X,K){let G=this.projectService.getScriptInfo(X);if(G)G.saveTo(K)}closeClientFile(X){if(!X)return;let K=y4(X);this.projectService.closeClientFile(K)}mapLocationNavigationBarItems(X,K){return b6(X,(G)=>({text:G.text,kind:G.kind,kindModifiers:G.kindModifiers,spans:G.spans.map((U)=>AU(U,K)),childItems:this.mapLocationNavigationBarItems(G.childItems,K),indent:G.indent}))}getNavigationBarItems(X,K){let{file:G,languageService:U}=this.getFileAndLanguageServiceForSyntacticOperation(X),B=U.getNavigationBarItems(G);return!B?void 0:K?this.mapLocationNavigationBarItems(B,this.projectService.getScriptInfoForNormalizedPath(G)):B}toLocationNavigationTree(X,K){return{text:X.text,kind:X.kind,kindModifiers:X.kindModifiers,spans:X.spans.map((G)=>AU(G,K)),nameSpan:X.nameSpan&&AU(X.nameSpan,K),childItems:b6(X.childItems,(G)=>this.toLocationNavigationTree(G,K))}}getNavigationTree(X,K){let{file:G,languageService:U}=this.getFileAndLanguageServiceForSyntacticOperation(X),B=U.getNavigationTree(G);return!B?void 0:K?this.toLocationNavigationTree(B,this.projectService.getScriptInfoForNormalizedPath(G)):B}getNavigateToItems(X,K){let G=this.getFullNavigateToItems(X);return!K?Z0(G,({navigateToItems:U})=>U):Z0(G,({project:U,navigateToItems:B})=>B.map((V)=>{let L=U.getScriptInfo(V.fileName),A={name:V.name,kind:V.kind,kindModifiers:V.kindModifiers,isCaseSensitive:V.isCaseSensitive,matchKind:V.matchKind,file:V.fileName,start:L.positionToLineOffset(V.textSpan.start),end:L.positionToLineOffset(HQ(V.textSpan))};if(V.kindModifiers&&V.kindModifiers!=="")A.kindModifiers=V.kindModifiers;if(V.containerName&&V.containerName.length>0)A.containerName=V.containerName;if(V.containerKind&&V.containerKind.length>0)A.containerKind=V.containerKind;return A}))}getFullNavigateToItems(X){let{currentFileOnly:K,searchValue:G,maxResultCount:U,projectFileName:B}=X;if(K){m.assertIsDefined(X.file);let{file:k,project:y}=this.getFileAndProject(X);return[{project:y,navigateToItems:y.getLanguageService().getNavigateToItems(G,U,k)}]}let V=this.getHostPreferences(),L=[],A=new Map;if(!X.file&&!B)this.projectService.loadAncestorProjectTree(),this.projectService.forEachEnabledProject((k)=>_(k));else{let k=this.getProjects(X);J86(k,void 0,(y)=>_(y))}return L;function _(k){let y=k.getLanguageService().getNavigateToItems(G,U,void 0,k.isNonTsProject(),V.excludeLibrarySymbolsInNavTo),h=x$(y,(u)=>N(u)&&!BX$(nC(u),k));if(h.length)L.push({project:k,navigateToItems:h})}function N(k){let y=k.name;if(!A.has(y))return A.set(y,[k]),!0;let h=A.get(y);for(let u of h)if(T(u,k))return!1;return h.push(k),!0}function T(k,y){if(k===y)return!0;if(!k||!y)return!1;return k.containerKind===y.containerKind&&k.containerName===y.containerName&&k.fileName===y.fileName&&k.isCaseSensitive===y.isCaseSensitive&&k.kind===y.kind&&k.kindModifiers===y.kindModifiers&&k.matchKind===y.matchKind&&k.name===y.name&&k.textSpan.start===y.textSpan.start&&k.textSpan.length===y.textSpan.length}}getSupportedCodeFixes(X){if(!X)return w9$();if(X.file){let{file:G,project:U}=this.getFileAndProject(X);return U.getLanguageService().getSupportedCodeFixes(G)}let K=this.getProject(X.projectFileName);if(!K)XH.ThrowNoProject();return K.getLanguageService().getSupportedCodeFixes()}isLocation(X){return X.line!==void 0}extractPositionOrRange(X,K){let G,U;if(this.isLocation(X))G=B(X);else U=this.getRange(X,K);return m.checkDefined(G===void 0?U:G);function B(V){return V.position!==void 0?V.position:K.lineOffsetToPosition(V.line,V.offset)}}getRange(X,K){let{startPosition:G,endPosition:U}=this.getStartAndEndPosition(X,K);return{pos:G,end:U}}getApplicableRefactors(X){let{file:K,project:G}=this.getFileAndProject(X),U=G.getScriptInfoForNormalizedPath(K);return G.getLanguageService().getApplicableRefactors(K,this.extractPositionOrRange(X,U),this.getPreferences(K),X.triggerReason,X.kind,X.includeInteractiveActions).map((V)=>({...V,actions:V.actions.map((L)=>({...L,range:L.range?{start:RT({line:L.range.start.line,character:L.range.start.offset}),end:RT({line:L.range.end.line,character:L.range.end.offset})}:void 0}))}))}getEditsForRefactor(X,K){let{file:G,project:U}=this.getFileAndProject(X),B=U.getScriptInfoForNormalizedPath(G),V=U.getLanguageService().getEditsForRefactor(G,this.getFormatOptions(G),this.extractPositionOrRange(X,B),X.refactor,X.action,this.getPreferences(G),X.interactiveRefactorArguments);if(V===void 0)return{edits:[]};if(K){let{renameFilename:L,renameLocation:A,edits:_}=V,N;if(L!==void 0&&A!==void 0){let T=U.getScriptInfoForNormalizedPath(WY(L));N=GM$(bN(T.getSnapshot()),L,A,_)}return{renameLocation:N,renameFilename:L,edits:this.mapTextChangesToCodeEdits(_),notApplicableReason:V.notApplicableReason}}return V}getMoveToRefactoringFileSuggestions(X){let{file:K,project:G}=this.getFileAndProject(X),U=G.getScriptInfoForNormalizedPath(K);return G.getLanguageService().getMoveToRefactoringFileSuggestions(K,this.extractPositionOrRange(X,U),this.getPreferences(K))}preparePasteEdits(X){let{file:K,project:G}=this.getFileAndProject(X);return G.getLanguageService().preparePasteEditsForFile(K,X.copiedTextSpan.map((U)=>this.getRange({file:K,startLine:U.start.line,startOffset:U.start.offset,endLine:U.end.line,endOffset:U.end.offset},this.projectService.getScriptInfoForNormalizedPath(K))))}getPasteEdits(X){let{file:K,project:G}=this.getFileAndProject(X);if(sC(K))return;let U=X.copiedFrom?{file:X.copiedFrom.file,range:X.copiedFrom.spans.map((V)=>this.getRange({file:X.copiedFrom.file,startLine:V.start.line,startOffset:V.start.offset,endLine:V.end.line,endOffset:V.end.offset},G.getScriptInfoForNormalizedPath(WY(X.copiedFrom.file))))}:void 0,B=G.getLanguageService().getPasteEdits({targetFile:K,pastedText:X.pastedText,pasteLocations:X.pasteLocations.map((V)=>this.getRange({file:K,startLine:V.start.line,startOffset:V.start.offset,endLine:V.end.line,endOffset:V.end.offset},G.getScriptInfoForNormalizedPath(K))),copiedFrom:U,preferences:this.getPreferences(K)},this.getFormatOptions(K));return B&&this.mapPasteEditsAction(B)}organizeImports(X,K){m.assert(X.scope.type==="file");let{file:G,project:U}=this.getFileAndProject(X.scope.args),B=U.getLanguageService().organizeImports({fileName:G,mode:X.mode??(X.skipDestructiveCodeActions?"SortAndCombine":void 0),type:"file"},this.getFormatOptions(G),this.getPreferences(G));if(K)return this.mapTextChangesToCodeEdits(B);else return B}getEditsForFileRename(X,K){let G=WY(X.oldFilePath),U=WY(X.newFilePath),B=this.getHostFormatOptions(),V=this.getHostPreferences(),L=new Set,A=[];return this.projectService.loadAncestorProjectTree(),this.projectService.forEachEnabledProject((_)=>{let N=_.getLanguageService().getEditsForFileRename(G,U,B,V),T=[];for(let k of N)if(!L.has(k.fileName))A.push(k),T.push(k.fileName);for(let k of T)L.add(k)}),K?A.map((_)=>this.mapTextChangeToCodeEdit(_)):A}getCodeFixes(X,K){let{file:G,project:U}=this.getFileAndProject(X),B=U.getScriptInfoForNormalizedPath(G),{startPosition:V,endPosition:L}=this.getStartAndEndPosition(X,B),A;try{A=U.getLanguageService().getCodeFixesAtPosition(G,V,L,X.errorCodes,this.getFormatOptions(G),this.getPreferences(G))}catch(_){let N=_ instanceof Error?_:Error(_),T=U.getLanguageService(),k=[...T.getSyntacticDiagnostics(G),...T.getSemanticDiagnostics(G),...T.getSuggestionDiagnostics(G)].filter((h)=>xx(V,L-V,h.start,h.length)).map((h)=>h.code),y=X.errorCodes.find((h)=>!k.includes(h));if(y!==void 0)N.message+=`
|
|
501
501
|
Additional information: BADCLIENT: Bad error code, ${y} not found in range ${V}..${L} (found: ${k.join(", ")})`;throw N}return K?A.map((_)=>this.mapCodeFixAction(_)):A}getCombinedCodeFix({scope:X,fixId:K},G){m.assert(X.type==="file");let{file:U,project:B}=this.getFileAndProject(X.args),V=B.getLanguageService().getCombinedCodeFix({type:"file",fileName:U},K,this.getFormatOptions(U),this.getPreferences(U));if(G)return{changes:this.mapTextChangesToCodeEdits(V.changes),commands:V.commands};else return V}applyCodeActionCommand(X){let K=X.command;for(let G of Xq(K)){let{file:U,project:B}=this.getFileAndProject(G);B.getLanguageService().applyCodeActionCommand(G,this.getFormatOptions(U)).then((V)=>{},(V)=>{})}return{}}getStartAndEndPosition(X,K){let G,U;if(X.startPosition!==void 0)G=X.startPosition;else G=K.lineOffsetToPosition(X.startLine,X.startOffset),X.startPosition=G;if(X.endPosition!==void 0)U=X.endPosition;else U=K.lineOffsetToPosition(X.endLine,X.endOffset),X.endPosition=U;return{startPosition:G,endPosition:U}}mapCodeAction({description:X,changes:K,commands:G}){return{description:X,changes:this.mapTextChangesToCodeEdits(K),commands:G}}mapCodeFixAction({fixName:X,description:K,changes:G,commands:U,fixId:B,fixAllDescription:V}){return{fixName:X,description:K,changes:this.mapTextChangesToCodeEdits(G),commands:U,fixId:B,fixAllDescription:V}}mapPasteEditsAction({edits:X,fixId:K}){return{edits:this.mapTextChangesToCodeEdits(X),fixId:K}}mapTextChangesToCodeEdits(X){return X.map((K)=>this.mapTextChangeToCodeEdit(K))}mapTextChangeToCodeEdit(X){let K=this.projectService.getScriptInfoOrConfig(X.fileName);if(!!X.isNewFile===!!K){if(!K)this.projectService.logErrorForScriptInfoNotFound(X.fileName);m.fail("Expected isNewFile for (only) new files. "+JSON.stringify({isNewFile:!!X.isNewFile,hasScriptInfo:!!K}))}return K?{fileName:X.fileName,textChanges:X.textChanges.map((G)=>Ts6(G,K))}:Ss6(X)}convertTextChangeToCodeEdit(X,K){return{start:K.positionToLineOffset(X.span.start),end:K.positionToLineOffset(X.span.start+X.span.length),newText:X.newText?X.newText:""}}getBraceMatching(X,K){let{file:G,languageService:U}=this.getFileAndLanguageServiceForSyntacticOperation(X),B=this.projectService.getScriptInfoForNormalizedPath(G),V=this.getPosition(X,B),L=U.getBraceMatchingAtPosition(G,V);return!L?void 0:K?L.map((A)=>AU(A,B)):L}getDiagnosticsForProject(X,K,G){if(this.suppressDiagnosticEvents)return;let{fileNames:U,languageServiceDisabled:B}=this.getProjectInfoWorker(G,void 0,!0,void 0,!0);if(B)return;let V=U.filter((u)=>!u.includes("lib.d.ts"));if(V.length===0)return;let L=[],A=[],_=[],N=[],T=WY(G),k=this.projectService.ensureDefaultProjectForFile(T);for(let u of V)if(this.getCanonicalFileName(u)===this.getCanonicalFileName(G))L.push(u);else if(!this.projectService.getScriptInfo(u).isScriptOpen())if(j5(u))N.push(u);else _.push(u);else A.push(u);let h=[...L,...A,..._,...N].map((u)=>({fileName:u,project:k}));this.updateErrorCheck(X,h,K,!1)}configurePlugin(X){this.projectService.configurePlugin(X)}getSmartSelectionRange(X,K){let{locations:G}=X,{file:U,languageService:B}=this.getFileAndLanguageServiceForSyntacticOperation(X),V=m.checkDefined(this.projectService.getScriptInfo(U));return b6(G,(L)=>{let A=this.getPosition(L,V),_=B.getSmartSelectionRange(U,A);return K?this.mapSelectionRange(_,V):_})}toggleLineComment(X,K){let{file:G,languageService:U}=this.getFileAndLanguageServiceForSyntacticOperation(X),B=this.projectService.getScriptInfo(G),V=this.getRange(X,B),L=U.toggleLineComment(G,V);if(K){let A=this.projectService.getScriptInfoForNormalizedPath(G);return L.map((_)=>this.convertTextChangeToCodeEdit(_,A))}return L}toggleMultilineComment(X,K){let{file:G,languageService:U}=this.getFileAndLanguageServiceForSyntacticOperation(X),B=this.projectService.getScriptInfoForNormalizedPath(G),V=this.getRange(X,B),L=U.toggleMultilineComment(G,V);if(K){let A=this.projectService.getScriptInfoForNormalizedPath(G);return L.map((_)=>this.convertTextChangeToCodeEdit(_,A))}return L}commentSelection(X,K){let{file:G,languageService:U}=this.getFileAndLanguageServiceForSyntacticOperation(X),B=this.projectService.getScriptInfoForNormalizedPath(G),V=this.getRange(X,B),L=U.commentSelection(G,V);if(K){let A=this.projectService.getScriptInfoForNormalizedPath(G);return L.map((_)=>this.convertTextChangeToCodeEdit(_,A))}return L}uncommentSelection(X,K){let{file:G,languageService:U}=this.getFileAndLanguageServiceForSyntacticOperation(X),B=this.projectService.getScriptInfoForNormalizedPath(G),V=this.getRange(X,B),L=U.uncommentSelection(G,V);if(K){let A=this.projectService.getScriptInfoForNormalizedPath(G);return L.map((_)=>this.convertTextChangeToCodeEdit(_,A))}return L}mapSelectionRange(X,K){let G={textSpan:AU(X.textSpan,K)};if(X.parent)G.parent=this.mapSelectionRange(X.parent,K);return G}getScriptInfoFromProjectService(X){let K=WY(X),G=this.projectService.getScriptInfoForNormalizedPath(K);if(!G)return this.projectService.logErrorForScriptInfoNotFound(K),XH.ThrowNoProject();return G}toProtocolCallHierarchyItem(X){let K=this.getScriptInfoFromProjectService(X.file);return{name:X.name,kind:X.kind,kindModifiers:X.kindModifiers,file:X.file,containerName:X.containerName,span:AU(X.span,K),selectionSpan:AU(X.selectionSpan,K)}}toProtocolCallHierarchyIncomingCall(X){let K=this.getScriptInfoFromProjectService(X.from.file);return{from:this.toProtocolCallHierarchyItem(X.from),fromSpans:X.fromSpans.map((G)=>AU(G,K))}}toProtocolCallHierarchyOutgoingCall(X,K){return{to:this.toProtocolCallHierarchyItem(X.to),fromSpans:X.fromSpans.map((G)=>AU(G,K))}}prepareCallHierarchy(X){let{file:K,project:G}=this.getFileAndProject(X),U=this.projectService.getScriptInfoForNormalizedPath(K);if(U){let B=this.getPosition(X,U),V=G.getLanguageService().prepareCallHierarchy(K,B);return V&&gJ$(V,(L)=>this.toProtocolCallHierarchyItem(L))}return}provideCallHierarchyIncomingCalls(X){let{file:K,project:G}=this.getFileAndProject(X),U=this.getScriptInfoFromProjectService(K);return G.getLanguageService().provideCallHierarchyIncomingCalls(K,this.getPosition(X,U)).map((V)=>this.toProtocolCallHierarchyIncomingCall(V))}provideCallHierarchyOutgoingCalls(X){let{file:K,project:G}=this.getFileAndProject(X),U=this.getScriptInfoFromProjectService(K);return G.getLanguageService().provideCallHierarchyOutgoingCalls(K,this.getPosition(X,U)).map((V)=>this.toProtocolCallHierarchyOutgoingCall(V,U))}getCanonicalFileName(X){let K=this.host.useCaseSensitiveFileNames?X:Tj(X);return y4(K)}exit(){}notRequired(X){if(X)this.doOutput(void 0,X.command,X.seq,!0,this.performanceData);return{responseRequired:!1,performanceData:this.performanceData}}requiredResponse(X){return{response:X,responseRequired:!0,performanceData:this.performanceData}}addProtocolHandler(X,K){if(this.handlers.has(X))throw Error(`Protocol handler already exists for command "${X}"`);this.handlers.set(X,K)}setCurrentRequest(X){m.assert(this.currentRequestId===void 0),this.currentRequestId=X,this.cancellationToken.setRequest(X)}resetCurrentRequest(X){m.assert(this.currentRequestId===X),this.currentRequestId=void 0,this.cancellationToken.resetRequest(X)}executeWithRequestId(X,K,G){let U=this.performanceData;try{return this.performanceData=G,this.setCurrentRequest(X),K()}finally{this.resetCurrentRequest(X),this.performanceData=U}}executeCommand(X){let K=this.handlers.get(X.command);if(K){let G=this.executeWithRequestId(X.seq,()=>K(X),void 0);return this.projectService.enableRequestedPlugins(),G}else return this.logger.msg(`Unrecognized JSON command:${S3(X)}`,"Err"),this.doOutput(void 0,"unknown",X.seq,!1,void 0,`Unrecognized JSON command: ${X.command}`),{responseRequired:!1}}onMessage(X){var K,G,U,B,V,L,A;this.gcTimer.scheduleCollect();let _,N=this.performanceData;if(this.logger.hasLevel(2)){if(_=this.hrtime(),this.logger.hasLevel(3))this.logger.info(`request:${OC(this.toStringMessage(X))}`)}let T,k;try{T=this.parseMessage(X),k=T.arguments&&T.arguments.file?T.arguments:void 0,(K=H8)==null||K.instant(H8.Phase.Session,"request",{seq:T.seq,command:T.command}),(G=H8)==null||G.push(H8.Phase.Session,"executeCommand",{seq:T.seq,command:T.command},!0);let{response:y,responseRequired:h,performanceData:u}=this.executeCommand(T);if((U=H8)==null||U.pop(),this.logger.hasLevel(2)){let l=Fs6(this.hrtime(_)).toFixed(4);if(h)this.logger.perftrc(`${T.seq}::${T.command}: elapsed time (in milliseconds) ${l}`);else this.logger.perftrc(`${T.seq}::${T.command}: async elapsed time (in milliseconds) ${l}`)}if((B=H8)==null||B.instant(H8.Phase.Session,"response",{seq:T.seq,command:T.command,success:!!y}),y)this.doOutput(y,T.command,T.seq,!0,u);else if(h)this.doOutput(void 0,T.command,T.seq,!1,u,"No content available.")}catch(y){if((V=H8)==null||V.popAll(),y instanceof Dw){(L=H8)==null||L.instant(H8.Phase.Session,"commandCanceled",{seq:T==null?void 0:T.seq,command:T==null?void 0:T.command}),this.doOutput({canceled:!0},T.command,T.seq,!0,this.performanceData);return}this.logErrorWorker(y,this.toStringMessage(X),k),(A=H8)==null||A.instant(H8.Phase.Session,"commandError",{seq:T==null?void 0:T.seq,command:T==null?void 0:T.command,message:y.message}),this.doOutput(void 0,T?T.command:"unknown",T?T.seq:0,!1,this.performanceData,"Error processing request. "+y.message+`
|
|
502
|
-
`+y.stack)}finally{this.performanceData=N}}parseMessage(X){return JSON.parse(X)}toStringMessage(X){return X}getFormatOptions(X){return this.projectService.getFormatCodeOptions(X)}getPreferences(X){return this.projectService.getPreferences(X)}getHostFormatOptions(){return this.projectService.getHostFormatCodeOptions()}getHostPreferences(){return this.projectService.getHostPreferences()}};function W86($){let X=$.diagnosticsDuration&&F9($.diagnosticsDuration,([K,G])=>({...G,file:K}));return{...$,diagnosticsDuration:X}}function AU($,X){return{start:X.positionToLineOffset($.start),end:X.positionToLineOffset(HQ($))}}function ZM$($,X,K){let G=AU($,K),U=X&&AU(X,K);return U?{...G,contextStart:U.start,contextEnd:U.end}:G}function Ts6($,X){return{start:z86(X,$.span.start),end:z86(X,HQ($.span)),newText:$.newText}}function z86($,X){return eP$($)?ws6($.getLineAndCharacterOfPosition(X)):$.positionToLineOffset(X)}function Rs6($,X){let K=$.ranges.map((G)=>{return{start:X.positionToLineOffset(G.start),end:X.positionToLineOffset(G.start+G.length)}});if(!$.wordPattern)return{ranges:K};return{ranges:K,wordPattern:$.wordPattern}}function ws6($){return{line:$.line+1,offset:$.character+1}}function Ss6($){m.assert($.textChanges.length===1);let X=_4($.textChanges);return m.assert(X.span.start===0&&X.span.length===0),{fileName:$.fileName,textChanges:[{start:{line:0,offset:0},end:{line:0,offset:0},newText:X.newText}]}}function GM$($,X,K,G){let U=Cs6($,X,G),{line:B,character:V}=dE(NM(U),K);return{line:B+1,offset:V+1}}function Cs6($,X,K){for(let{fileName:G,textChanges:U}of K){if(G!==X)continue;for(let B=U.length-1;B>=0;B--){let{newText:V,span:{start:L,length:A}}=U[B];$=$.slice(0,L)+V+$.slice(L+A)}}return $}function U86($,{fileName:X,textSpan:K,contextSpan:G,isWriteAccess:U,isDefinition:B},{disableLineTextInReferences:V}){let L=m.checkDefined($.getScriptInfo(X)),A=ZM$(K,G,L),_=V?void 0:bs6(L,A);return{file:X,...A,lineText:_,isWriteAccess:U,isDefinition:B}}function bs6($,X){let K=$.lineToTextSpan(X.start.line-1);return $.getSnapshot().getText(K.start,HQ(K)).replace(/\r|\n/g,"")}function ks6($){return $===void 0||$&&typeof $==="object"&&typeof $.exportName==="string"&&($.fileName===void 0||typeof $.fileName==="string")&&($.ambientModuleName===void 0||typeof $.ambientModuleName==="string"&&($.isPackageJsonImport===void 0||typeof $.isPackageJsonImport==="boolean"))}var wT=4,WM$=(($)=>{return $[$.PreStart=0]="PreStart",$[$.Start=1]="Start",$[$.Entire=2]="Entire",$[$.Mid=3]="Mid",$[$.End=4]="End",$[$.PostEnd=5]="PostEnd",$})(WM$||{}),xs6=class{constructor(){this.goSubtree=!0,this.lineIndex=new Nh,this.endBranch=[],this.state=2,this.initialText="",this.trailingText="",this.lineIndex.root=new ST,this.startPath=[this.lineIndex.root],this.stack=[this.lineIndex.root]}get done(){return!1}insertLines($,X){if(X)this.trailingText="";if($)$=this.initialText+$+this.trailingText;else $=this.initialText+this.trailingText;let G=Nh.linesFromText($).lines;if(G.length>1&&G[G.length-1]==="")G.pop();let U,B;for(let L=this.endBranch.length-1;L>=0;L--)if(this.endBranch[L].updateCounts(),this.endBranch[L].charCount()===0)if(B=this.endBranch[L],L>0)U=this.endBranch[L-1];else U=this.branchNode;if(B)U.remove(B);let V=this.startPath[this.startPath.length-1];if(G.length>0)if(V.text=G[0],G.length>1){let L=Array(G.length-1),A=V;for(let T=1;T<G.length;T++)L[T-1]=new Dr(G[T]);let _=this.startPath.length-2;while(_>=0){let T=this.startPath[_];L=T.insertAt(A,L),_--,A=T}let N=L.length;while(N>0){let T=new ST;T.add(this.lineIndex.root),L=T.insertAt(this.lineIndex.root,L),N=L.length,this.lineIndex.root=T}this.lineIndex.root.updateCounts()}else for(let L=this.startPath.length-2;L>=0;L--)this.startPath[L].updateCounts();else{this.startPath[this.startPath.length-2].remove(V);for(let A=this.startPath.length-2;A>=0;A--)this.startPath[A].updateCounts()}return this.lineIndex}post($,X,K){if(K===this.lineCollectionAtBranch)this.state=4;this.stack.pop()}pre($,X,K,G,U){let B=this.stack[this.stack.length-1];if(this.state===2&&U===1)this.state=1,this.branchNode=B,this.lineCollectionAtBranch=K;let V;function L(A){if(A.isLeaf())return new Dr("");else return new ST}switch(U){case 0:if(this.goSubtree=!1,this.state!==4)B.add(K);break;case 1:if(this.state===4)this.goSubtree=!1;else V=L(K),B.add(V),this.startPath.push(V);break;case 2:if(this.state!==4)V=L(K),B.add(V),this.startPath.push(V);else if(!K.isLeaf())V=L(K),B.add(V),this.endBranch.push(V);break;case 3:this.goSubtree=!1;break;case 4:if(this.state!==4)this.goSubtree=!1;else if(!K.isLeaf())V=L(K),B.add(V),this.endBranch.push(V);break;case 5:if(this.goSubtree=!1,this.state!==1)B.add(K);break}if(this.goSubtree)this.stack.push(V)}leaf($,X,K){if(this.state===1)this.initialText=K.text.substring(0,$);else if(this.state===2)this.initialText=K.text.substring(0,$),this.trailingText=K.text.substring($+X);else this.trailingText=K.text.substring($+X)}},ys6=class{constructor($,X,K){this.pos=$,this.deleteLen=X,this.insertedText=K}getTextChangeRange(){return yx(k5(this.pos,this.deleteLen),this.insertedText?this.insertedText.length:0)}},HX$=class ${constructor(){this.changes=[],this.versions=Array($.maxVersions),this.minVersion=0,this.currentVersion=0}versionToIndex(X){if(X<this.minVersion||X>this.currentVersion)return;return X%$.maxVersions}currentVersionToIndex(){return this.currentVersion%$.maxVersions}edit(X,K,G){if(this.changes.push(new ys6(X,K,G)),this.changes.length>$.changeNumberThreshold||K>$.changeLengthThreshold||G&&G.length>$.changeLengthThreshold)this.getSnapshot()}getSnapshot(){return this._getSnapshot()}_getSnapshot(){let X=this.versions[this.currentVersionToIndex()];if(this.changes.length>0){let K=X.index;for(let G of this.changes)K=K.edit(G.pos,G.deleteLen,G.insertedText);if(X=new j86(this.currentVersion+1,this,K,this.changes),this.currentVersion=X.version,this.versions[this.currentVersionToIndex()]=X,this.changes=[],this.currentVersion-this.minVersion>=$.maxVersions)this.minVersion=this.currentVersion-$.maxVersions+1}return X}getSnapshotVersion(){return this._getSnapshot().version}getAbsolutePositionAndLineText(X){return this._getSnapshot().index.lineNumberToInfo(X)}lineOffsetToPosition(X,K){return this._getSnapshot().index.absolutePositionOfStartOfLine(X)+(K-1)}positionToLineOffset(X){return this._getSnapshot().index.positionToLineOffset(X)}lineToTextSpan(X){let K=this._getSnapshot().index,{lineText:G,absolutePosition:U}=K.lineNumberToInfo(X+1),B=G!==void 0?G.length:K.absolutePositionOfStartOfLine(X+2)-U;return k5(U,B)}getTextChangesBetweenVersions(X,K){if(X<K)if(X>=this.minVersion){let G=[];for(let U=X+1;U<=K;U++){let B=this.versions[this.versionToIndex(U)];for(let V of B.changesSincePreviousVersion)G.push(V.getTextChangeRange())}return pW$(G)}else return;else return du}getLineCount(){return this._getSnapshot().index.getLineCount()}static fromString(X){let K=new $,G=new j86(0,K,new Nh);K.versions[K.currentVersion]=G;let U=Nh.linesFromText(X);return G.index.load(U.lines),K}};HX$.changeNumberThreshold=8,HX$.changeLengthThreshold=256,HX$.maxVersions=8;var VX$=HX$,j86=class ${constructor(X,K,G,U=r7){this.version=X,this.cache=K,this.index=G,this.changesSincePreviousVersion=U}getText(X,K){return this.index.getText(X,K-X)}getLength(){return this.index.getLength()}getChangeRange(X){if(X instanceof $&&this.cache===X.cache)if(this.version<=X.version)return du;else return this.cache.getTextChangesBetweenVersions(X.version,this.version)}},Nh=class ${constructor(){this.checkEdits=!1}absolutePositionOfStartOfLine(X){return this.lineNumberToInfo(X).absolutePosition}positionToLineOffset(X){let{oneBasedLine:K,zeroBasedColumn:G}=this.root.charOffsetToLineInfo(1,X);return{line:K,offset:G+1}}positionToColumnAndLineText(X){return this.root.charOffsetToLineInfo(1,X)}getLineCount(){return this.root.lineCount()}lineNumberToInfo(X){let K=this.getLineCount();if(X<=K){let{position:G,leaf:U}=this.root.lineNumberToInfo(X,0);return{absolutePosition:G,lineText:U&&U.text}}else return{absolutePosition:this.root.charCount(),lineText:void 0}}load(X){if(X.length>0){let K=[];for(let G=0;G<X.length;G++)K[G]=new Dr(X[G]);this.root=$.buildTreeFromBottom(K)}else this.root=new ST}walk(X,K,G){this.root.walk(X,K,G)}getText(X,K){let G="";if(K>0&&X<this.root.charCount())this.walk(X,K,{goSubtree:!0,done:!1,leaf:(U,B,V)=>{G=G.concat(V.text.substring(U,U+B))}});return G}getLength(){return this.root.charCount()}every(X,K,G){if(!G)G=this.root.charCount();let U={goSubtree:!0,done:!1,leaf(B,V,L){if(!X(L,B,V))this.done=!0}};return this.walk(K,G-K,U),!U.done}edit(X,K,G){if(this.root.charCount()===0){if(m.assert(K===0),G!==void 0)return this.load($.linesFromText(G).lines),this;return}else{let U;if(this.checkEdits){let L=this.getText(0,this.root.charCount());U=L.slice(0,X)+G+L.slice(X+K)}let B=new xs6,V=!1;if(X>=this.root.charCount()){X=this.root.charCount()-1;let L=this.getText(X,1);if(G)G=L+G;else G=L;K=0,V=!0}else if(K>0){let L=X+K,{zeroBasedColumn:A,lineText:_}=this.positionToColumnAndLineText(L);if(A===0)K+=_.length,G=G?G+_:_}if(this.root.walk(X,K,B),B.insertLines(G,V),this.checkEdits){let L=B.lineIndex.getText(0,B.lineIndex.getLength());m.assert(U===L,"buffer edit mismatch")}return B.lineIndex}}static buildTreeFromBottom(X){if(X.length<wT)return new ST(X);let K=Array(Math.ceil(X.length/wT)),G=0;for(let U=0;U<K.length;U++){let B=Math.min(G+wT,X.length);K[U]=new ST(X.slice(G,B)),G=B}return this.buildTreeFromBottom(K)}static linesFromText(X){let K=NM(X);if(K.length===0)return{lines:[],lineMap:K};let G=Array(K.length),U=K.length-1;for(let V=0;V<U;V++)G[V]=X.substring(K[V],K[V+1]);let B=X.substring(K[U]);if(B.length>0)G[U]=B;else G.pop();return{lines:G,lineMap:K}}},ST=class ${constructor(X=[]){if(this.children=X,this.totalChars=0,this.totalLines=0,X.length)this.updateCounts()}isLeaf(){return!1}updateCounts(){this.totalChars=0,this.totalLines=0;for(let X of this.children)this.totalChars+=X.charCount(),this.totalLines+=X.lineCount()}execWalk(X,K,G,U,B){if(G.pre)G.pre(X,K,this.children[U],this,B);if(G.goSubtree){if(this.children[U].walk(X,K,G),G.post)G.post(X,K,this.children[U],this,B)}else G.goSubtree=!0;return G.done}skipChild(X,K,G,U,B){if(U.pre&&!U.done)U.pre(X,K,this.children[G],this,B),U.goSubtree=!0}walk(X,K,G){if(this.children.length===0)return;let U=0,B=this.children[U].charCount(),V=X;while(V>=B)this.skipChild(V,K,U,G,0),V-=B,U++,B=this.children[U].charCount();if(V+K<=B){if(this.execWalk(V,K,G,U,2))return}else{if(this.execWalk(V,B-V,G,U,1))return;let L=K-(B-V);U++,B=this.children[U].charCount();while(L>B){if(this.execWalk(0,B,G,U,3))return;L-=B,U++,B=this.children[U].charCount()}if(L>0){if(this.execWalk(0,L,G,U,4))return}}if(G.pre){let L=this.children.length;if(U<L-1)for(let A=U+1;A<L;A++)this.skipChild(0,0,A,G,5)}}charOffsetToLineInfo(X,K){if(this.children.length===0)return{oneBasedLine:X,zeroBasedColumn:K,lineText:void 0};for(let B of this.children)if(B.charCount()>K)if(B.isLeaf())return{oneBasedLine:X,zeroBasedColumn:K,lineText:B.text};else return B.charOffsetToLineInfo(X,K);else K-=B.charCount(),X+=B.lineCount();let G=this.lineCount();if(G===0)return{oneBasedLine:1,zeroBasedColumn:0,lineText:void 0};let U=m.checkDefined(this.lineNumberToInfo(G,0).leaf);return{oneBasedLine:G,zeroBasedColumn:U.charCount(),lineText:void 0}}lineNumberToInfo(X,K){for(let G of this.children){let U=G.lineCount();if(U>=X)return G.isLeaf()?{position:K,leaf:G}:G.lineNumberToInfo(X,K);else X-=U,K+=G.charCount()}return{position:K,leaf:void 0}}splitAfter(X){let K,G=this.children.length;X++;let U=X;if(X<G){K=new $;while(X<G)K.add(this.children[X]),X++;K.updateCounts()}return this.children.length=U,K}remove(X){let K=this.findChildIndex(X),G=this.children.length;if(K<G-1)for(let U=K;U<G-1;U++)this.children[U]=this.children[U+1];this.children.pop()}findChildIndex(X){let K=this.children.indexOf(X);return m.assert(K!==-1),K}insertAt(X,K){let G=this.findChildIndex(X),U=this.children.length,B=K.length;if(U<wT&&G===U-1&&B===1)return this.add(K[0]),this.updateCounts(),[];else{let V=this.splitAfter(G),L=0;G++;while(G<wT&&L<B)this.children[G]=K[L],G++,L++;let A=[],_=0;if(L<B){_=Math.ceil((B-L)/wT),A=Array(_);let N=0;for(let k=0;k<_;k++)A[k]=new $;let T=A[0];while(L<B)if(T.add(K[L]),L++,T.children.length===wT)N++,T=A[N];for(let k=A.length-1;k>=0;k--)if(A[k].children.length===0)A.pop()}if(V)A.push(V);this.updateCounts();for(let N=0;N<_;N++)A[N].updateCounts();return A}}add(X){this.children.push(X),m.assert(this.children.length<=wT)}charCount(){return this.totalChars}lineCount(){return this.totalLines}},Dr=class{constructor($){this.text=$}isLeaf(){return!0}walk($,X,K){K.leaf($,X,this)}charCount(){return this.text.length}lineCount(){return 1}},B86=class ${constructor(X,K,G,U,B,V){this.telemetryEnabled=X,this.logger=K,this.host=G,this.globalTypingsCacheLocation=U,this.event=B,this.maxActiveRequestCount=V,this.activeRequestCount=0,this.requestQueue=fU(),this.requestMap=new Map,this.requestedRegistry=!1,this.packageInstallId=0}isKnownTypesPackageName(X){var K;if(lq.validatePackageName(X)!==lq.NameValidationResult.Ok)return!1;if(!this.requestedRegistry)this.requestedRegistry=!0,this.installer.send({kind:"typesRegistry"});return!!((K=this.typesRegistryCache)==null?void 0:K.has(X))}installPackage(X){this.packageInstallId++;let K={kind:"installPackage",...X,id:this.packageInstallId},G=new Promise((U,B)=>{(this.packageInstalledPromise??(this.packageInstalledPromise=new Map)).set(this.packageInstallId,{resolve:U,reject:B})});return this.installer.send(K),G}attach(X){this.projectService=X,this.installer=this.createInstallerProcess()}onProjectClosed(X){this.installer.send({projectName:X.getProjectName(),kind:"closeProject"})}enqueueInstallTypingsRequest(X,K,G){let U=qP$(X,K,G);if(this.logger.hasLevel(3))this.logger.info(`TIAdapter:: Scheduling throttled operation:${S3(U)}`);if(this.activeRequestCount<this.maxActiveRequestCount)this.scheduleRequest(U);else{if(this.logger.hasLevel(3))this.logger.info(`TIAdapter:: Deferring request for: ${U.projectName}`);this.requestQueue.enqueue(U),this.requestMap.set(U.projectName,U)}}handleMessage(X){var K,G;if(this.logger.hasLevel(3))this.logger.info(`TIAdapter:: Received response:${S3(X)}`);switch(X.kind){case h8$:this.typesRegistryCache=new Map(Object.entries(X.typesRegistry));break;case yp:{let U=(K=this.packageInstalledPromise)==null?void 0:K.get(X.id);if(m.assertIsDefined(U,"Should find the promise for package install"),(G=this.packageInstalledPromise)==null||G.delete(X.id),X.success)U.resolve({successMessage:X.message});else U.reject(X.message);this.projectService.updateTypingsForProject(X),this.event(X,"setTypings");break}case PD$:{let U={message:X.message},B="typesInstallerInitializationFailed";this.event(U,"typesInstallerInitializationFailed");break}case g8$:{let U={eventId:X.eventId,packages:X.packagesToInstall},B="beginInstallTypes";this.event(U,"beginInstallTypes");break}case m8$:{if(this.telemetryEnabled){let V={telemetryEventName:"typingsInstalled",payload:{installedPackages:X.packagesToInstall.join(","),installSuccess:X.installSuccess,typingsInstallerVersion:X.typingsInstallerVersion}},L="telemetry";this.event(V,"telemetry")}let U={eventId:X.eventId,packages:X.packagesToInstall,success:X.installSuccess},B="endInstallTypes";this.event(U,B);break}case xp:{this.projectService.updateTypingsForProject(X);break}case kp:{if(this.activeRequestCount>0)this.activeRequestCount--;else m.fail("TIAdapter:: Received too many responses");while(!this.requestQueue.isEmpty()){let U=this.requestQueue.dequeue();if(this.requestMap.get(U.projectName)===U){this.requestMap.delete(U.projectName),this.scheduleRequest(U);break}if(this.logger.hasLevel(3))this.logger.info(`TIAdapter:: Skipping defunct request for: ${U.projectName}`)}this.projectService.updateTypingsForProject(X),this.event(X,"setTypings");break}case Av:this.projectService.watchTypingLocations(X);break;default:xB(X)}}scheduleRequest(X){if(this.logger.hasLevel(3))this.logger.info(`TIAdapter:: Scheduling request for: ${X.projectName}`);this.activeRequestCount++,this.host.setTimeout(()=>{if(this.logger.hasLevel(3))this.logger.info(`TIAdapter:: Sending request:${S3(X)}`);this.installer.send(X)},$.requestDelayMillis,`${X.projectName}::${X.kind}`)}};B86.requestDelayMillis=100;var H86=B86,V86={};if(H(V86,{ActionInvalidate:()=>xp,ActionPackageInstalled:()=>yp,ActionSet:()=>kp,ActionWatchTypingLocations:()=>Av,Arguments:()=>u8$,AutoImportProviderProject:()=>fP$,AuxiliaryProject:()=>xP$,CharRangeSection:()=>WM$,CloseFileWatcherEvent:()=>XX$,CommandNames:()=>e16,ConfigFileDiagEvent:()=>o4$,ConfiguredProject:()=>vP$,ConfiguredProjectLoadKind:()=>dP$,CreateDirectoryWatcherEvent:()=>JX$,CreateFileWatcherEvent:()=>$X$,Errors:()=>XH,EventBeginInstallTypes:()=>g8$,EventEndInstallTypes:()=>m8$,EventInitializationFailed:()=>PD$,EventTypesRegistry:()=>h8$,ExternalProject:()=>p4$,GcTimer:()=>MP$,InferredProject:()=>kP$,LargeFileReferencedEvent:()=>n4$,LineIndex:()=>Nh,LineLeaf:()=>Dr,LineNode:()=>ST,LogLevel:()=>HP$,Msg:()=>VP$,OpenFileInfoTelemetryEvent:()=>hP$,Project:()=>iN,ProjectInfoTelemetryEvent:()=>e4$,ProjectKind:()=>aC,ProjectLanguageServiceStateEvent:()=>t4$,ProjectLoadingFinishEvent:()=>a4$,ProjectLoadingStartEvent:()=>s4$,ProjectService:()=>tP$,ProjectsUpdatedInBackgroundEvent:()=>Hr,ScriptInfo:()=>_P$,ScriptVersionCache:()=>VX$,Session:()=>G86,TextStorage:()=>EP$,ThrottledOperations:()=>PP$,TypingsInstallerAdapter:()=>H86,allFilesAreJsOrDts:()=>SP$,allRootFilesAreJsOrDts:()=>wP$,asNormalizedPath:()=>FU,convertCompilerOptions:()=>Vr,convertFormatOptions:()=>TT,convertScriptKindName:()=>QX$,convertTypeAcquisition:()=>mP$,convertUserPreferences:()=>uP$,convertWatchOptions:()=>Ph,countEachFileTypes:()=>Fh,createInstallTypingsRequest:()=>qP$,createModuleSpecifierCache:()=>JM$,createNormalizedPathMap:()=>_16,createPackageJsonCache:()=>XM$,createSortedArray:()=>OP$,emptyArray:()=>r7,findArgument:()=>Ti$,formatDiagnosticToProtocol:()=>Mh,formatMessage:()=>YM$,getBaseConfigFileName:()=>l4$,getDetailWatchInfo:()=>WX$,getLocationInNewDocument:()=>GM$,hasArgument:()=>_i$,hasNoTypeScriptSource:()=>CP$,indent:()=>OC,isBackgroundProject:()=>Lh,isConfigFile:()=>eP$,isConfiguredProject:()=>qV,isDynamicFileName:()=>sC,isExternalProject:()=>Ah,isInferredProject:()=>_T,isInferredProjectName:()=>DP$,isProjectDeferredClose:()=>Oh,makeAutoImportProviderProjectName:()=>AP$,makeAuxiliaryProjectName:()=>LP$,makeInferredProjectName:()=>FP$,maxFileSize:()=>r4$,maxProgramSizeForNonTsFiles:()=>i4$,normalizedPathToPath:()=>ET,nowString:()=>Ri$,nullCancellationToken:()=>n16,nullTypingsInstaller:()=>qr,protocol:()=>NP$,scriptInfoIsContainedByBackgroundProject:()=>TP$,scriptInfoIsContainedByDeferredClosedProject:()=>RP$,stringifyIndented:()=>S3,toEvent:()=>QM$,toNormalizedPath:()=>WY,tryConvertScriptKindName:()=>YX$,typingsInstaller:()=>BP$,updateProjectIfDirty:()=>qW}),typeof console<"u")m.loggingHost={log($,X){switch($){case 1:return console.error(X);case 2:return console.warn(X);case 3:return console.log(X);case 4:return console.log(X)}}}})({get exports(){return lj6},set exports(J){if(lj6=J,typeof s5$<"u"&&s5$.exports)s5$.exports=J}})});import{readFileSync as eP0}from"fs";import{resolve as $M0,dirname as JM0}from"path";import{parse as XM0,compileScript as YM0,compileTemplate as QM0}from"@vue/compiler-sfc";function aj6(){o5$.clear()}async function t5$(J,Y,Z,W={}){let z=Y?`${J}::${WM0(Z)}`:null;if(z&&o5$.has(z))return o5$.get(z);let H=eP0(J,"utf-8"),F=await FS$(H,J,Y,Z,W);if(z)o5$.set(z,F);return F}async function FS$(J,Y,Z,W,z={}){let{descriptor:H,errors:F}=XM0(J,{filename:Y});if(F.length)throw Error(`@axon/vstr: parse errors in ${Y}:
|
|
502
|
+
`+y.stack)}finally{this.performanceData=N}}parseMessage(X){return JSON.parse(X)}toStringMessage(X){return X}getFormatOptions(X){return this.projectService.getFormatCodeOptions(X)}getPreferences(X){return this.projectService.getPreferences(X)}getHostFormatOptions(){return this.projectService.getHostFormatCodeOptions()}getHostPreferences(){return this.projectService.getHostPreferences()}};function W86($){let X=$.diagnosticsDuration&&F9($.diagnosticsDuration,([K,G])=>({...G,file:K}));return{...$,diagnosticsDuration:X}}function AU($,X){return{start:X.positionToLineOffset($.start),end:X.positionToLineOffset(HQ($))}}function ZM$($,X,K){let G=AU($,K),U=X&&AU(X,K);return U?{...G,contextStart:U.start,contextEnd:U.end}:G}function Ts6($,X){return{start:z86(X,$.span.start),end:z86(X,HQ($.span)),newText:$.newText}}function z86($,X){return eP$($)?ws6($.getLineAndCharacterOfPosition(X)):$.positionToLineOffset(X)}function Rs6($,X){let K=$.ranges.map((G)=>{return{start:X.positionToLineOffset(G.start),end:X.positionToLineOffset(G.start+G.length)}});if(!$.wordPattern)return{ranges:K};return{ranges:K,wordPattern:$.wordPattern}}function ws6($){return{line:$.line+1,offset:$.character+1}}function Ss6($){m.assert($.textChanges.length===1);let X=_4($.textChanges);return m.assert(X.span.start===0&&X.span.length===0),{fileName:$.fileName,textChanges:[{start:{line:0,offset:0},end:{line:0,offset:0},newText:X.newText}]}}function GM$($,X,K,G){let U=Cs6($,X,G),{line:B,character:V}=dE(NM(U),K);return{line:B+1,offset:V+1}}function Cs6($,X,K){for(let{fileName:G,textChanges:U}of K){if(G!==X)continue;for(let B=U.length-1;B>=0;B--){let{newText:V,span:{start:L,length:A}}=U[B];$=$.slice(0,L)+V+$.slice(L+A)}}return $}function U86($,{fileName:X,textSpan:K,contextSpan:G,isWriteAccess:U,isDefinition:B},{disableLineTextInReferences:V}){let L=m.checkDefined($.getScriptInfo(X)),A=ZM$(K,G,L),_=V?void 0:bs6(L,A);return{file:X,...A,lineText:_,isWriteAccess:U,isDefinition:B}}function bs6($,X){let K=$.lineToTextSpan(X.start.line-1);return $.getSnapshot().getText(K.start,HQ(K)).replace(/\r|\n/g,"")}function ks6($){return $===void 0||$&&typeof $==="object"&&typeof $.exportName==="string"&&($.fileName===void 0||typeof $.fileName==="string")&&($.ambientModuleName===void 0||typeof $.ambientModuleName==="string"&&($.isPackageJsonImport===void 0||typeof $.isPackageJsonImport==="boolean"))}var wT=4,WM$=(($)=>{return $[$.PreStart=0]="PreStart",$[$.Start=1]="Start",$[$.Entire=2]="Entire",$[$.Mid=3]="Mid",$[$.End=4]="End",$[$.PostEnd=5]="PostEnd",$})(WM$||{}),xs6=class{constructor(){this.goSubtree=!0,this.lineIndex=new Nh,this.endBranch=[],this.state=2,this.initialText="",this.trailingText="",this.lineIndex.root=new ST,this.startPath=[this.lineIndex.root],this.stack=[this.lineIndex.root]}get done(){return!1}insertLines($,X){if(X)this.trailingText="";if($)$=this.initialText+$+this.trailingText;else $=this.initialText+this.trailingText;let G=Nh.linesFromText($).lines;if(G.length>1&&G[G.length-1]==="")G.pop();let U,B;for(let L=this.endBranch.length-1;L>=0;L--)if(this.endBranch[L].updateCounts(),this.endBranch[L].charCount()===0)if(B=this.endBranch[L],L>0)U=this.endBranch[L-1];else U=this.branchNode;if(B)U.remove(B);let V=this.startPath[this.startPath.length-1];if(G.length>0)if(V.text=G[0],G.length>1){let L=Array(G.length-1),A=V;for(let T=1;T<G.length;T++)L[T-1]=new Dr(G[T]);let _=this.startPath.length-2;while(_>=0){let T=this.startPath[_];L=T.insertAt(A,L),_--,A=T}let N=L.length;while(N>0){let T=new ST;T.add(this.lineIndex.root),L=T.insertAt(this.lineIndex.root,L),N=L.length,this.lineIndex.root=T}this.lineIndex.root.updateCounts()}else for(let L=this.startPath.length-2;L>=0;L--)this.startPath[L].updateCounts();else{this.startPath[this.startPath.length-2].remove(V);for(let A=this.startPath.length-2;A>=0;A--)this.startPath[A].updateCounts()}return this.lineIndex}post($,X,K){if(K===this.lineCollectionAtBranch)this.state=4;this.stack.pop()}pre($,X,K,G,U){let B=this.stack[this.stack.length-1];if(this.state===2&&U===1)this.state=1,this.branchNode=B,this.lineCollectionAtBranch=K;let V;function L(A){if(A.isLeaf())return new Dr("");else return new ST}switch(U){case 0:if(this.goSubtree=!1,this.state!==4)B.add(K);break;case 1:if(this.state===4)this.goSubtree=!1;else V=L(K),B.add(V),this.startPath.push(V);break;case 2:if(this.state!==4)V=L(K),B.add(V),this.startPath.push(V);else if(!K.isLeaf())V=L(K),B.add(V),this.endBranch.push(V);break;case 3:this.goSubtree=!1;break;case 4:if(this.state!==4)this.goSubtree=!1;else if(!K.isLeaf())V=L(K),B.add(V),this.endBranch.push(V);break;case 5:if(this.goSubtree=!1,this.state!==1)B.add(K);break}if(this.goSubtree)this.stack.push(V)}leaf($,X,K){if(this.state===1)this.initialText=K.text.substring(0,$);else if(this.state===2)this.initialText=K.text.substring(0,$),this.trailingText=K.text.substring($+X);else this.trailingText=K.text.substring($+X)}},ys6=class{constructor($,X,K){this.pos=$,this.deleteLen=X,this.insertedText=K}getTextChangeRange(){return yx(k5(this.pos,this.deleteLen),this.insertedText?this.insertedText.length:0)}},HX$=class ${constructor(){this.changes=[],this.versions=Array($.maxVersions),this.minVersion=0,this.currentVersion=0}versionToIndex(X){if(X<this.minVersion||X>this.currentVersion)return;return X%$.maxVersions}currentVersionToIndex(){return this.currentVersion%$.maxVersions}edit(X,K,G){if(this.changes.push(new ys6(X,K,G)),this.changes.length>$.changeNumberThreshold||K>$.changeLengthThreshold||G&&G.length>$.changeLengthThreshold)this.getSnapshot()}getSnapshot(){return this._getSnapshot()}_getSnapshot(){let X=this.versions[this.currentVersionToIndex()];if(this.changes.length>0){let K=X.index;for(let G of this.changes)K=K.edit(G.pos,G.deleteLen,G.insertedText);if(X=new j86(this.currentVersion+1,this,K,this.changes),this.currentVersion=X.version,this.versions[this.currentVersionToIndex()]=X,this.changes=[],this.currentVersion-this.minVersion>=$.maxVersions)this.minVersion=this.currentVersion-$.maxVersions+1}return X}getSnapshotVersion(){return this._getSnapshot().version}getAbsolutePositionAndLineText(X){return this._getSnapshot().index.lineNumberToInfo(X)}lineOffsetToPosition(X,K){return this._getSnapshot().index.absolutePositionOfStartOfLine(X)+(K-1)}positionToLineOffset(X){return this._getSnapshot().index.positionToLineOffset(X)}lineToTextSpan(X){let K=this._getSnapshot().index,{lineText:G,absolutePosition:U}=K.lineNumberToInfo(X+1),B=G!==void 0?G.length:K.absolutePositionOfStartOfLine(X+2)-U;return k5(U,B)}getTextChangesBetweenVersions(X,K){if(X<K)if(X>=this.minVersion){let G=[];for(let U=X+1;U<=K;U++){let B=this.versions[this.versionToIndex(U)];for(let V of B.changesSincePreviousVersion)G.push(V.getTextChangeRange())}return pW$(G)}else return;else return du}getLineCount(){return this._getSnapshot().index.getLineCount()}static fromString(X){let K=new $,G=new j86(0,K,new Nh);K.versions[K.currentVersion]=G;let U=Nh.linesFromText(X);return G.index.load(U.lines),K}};HX$.changeNumberThreshold=8,HX$.changeLengthThreshold=256,HX$.maxVersions=8;var VX$=HX$,j86=class ${constructor(X,K,G,U=r7){this.version=X,this.cache=K,this.index=G,this.changesSincePreviousVersion=U}getText(X,K){return this.index.getText(X,K-X)}getLength(){return this.index.getLength()}getChangeRange(X){if(X instanceof $&&this.cache===X.cache)if(this.version<=X.version)return du;else return this.cache.getTextChangesBetweenVersions(X.version,this.version)}},Nh=class ${constructor(){this.checkEdits=!1}absolutePositionOfStartOfLine(X){return this.lineNumberToInfo(X).absolutePosition}positionToLineOffset(X){let{oneBasedLine:K,zeroBasedColumn:G}=this.root.charOffsetToLineInfo(1,X);return{line:K,offset:G+1}}positionToColumnAndLineText(X){return this.root.charOffsetToLineInfo(1,X)}getLineCount(){return this.root.lineCount()}lineNumberToInfo(X){let K=this.getLineCount();if(X<=K){let{position:G,leaf:U}=this.root.lineNumberToInfo(X,0);return{absolutePosition:G,lineText:U&&U.text}}else return{absolutePosition:this.root.charCount(),lineText:void 0}}load(X){if(X.length>0){let K=[];for(let G=0;G<X.length;G++)K[G]=new Dr(X[G]);this.root=$.buildTreeFromBottom(K)}else this.root=new ST}walk(X,K,G){this.root.walk(X,K,G)}getText(X,K){let G="";if(K>0&&X<this.root.charCount())this.walk(X,K,{goSubtree:!0,done:!1,leaf:(U,B,V)=>{G=G.concat(V.text.substring(U,U+B))}});return G}getLength(){return this.root.charCount()}every(X,K,G){if(!G)G=this.root.charCount();let U={goSubtree:!0,done:!1,leaf(B,V,L){if(!X(L,B,V))this.done=!0}};return this.walk(K,G-K,U),!U.done}edit(X,K,G){if(this.root.charCount()===0){if(m.assert(K===0),G!==void 0)return this.load($.linesFromText(G).lines),this;return}else{let U;if(this.checkEdits){let L=this.getText(0,this.root.charCount());U=L.slice(0,X)+G+L.slice(X+K)}let B=new xs6,V=!1;if(X>=this.root.charCount()){X=this.root.charCount()-1;let L=this.getText(X,1);if(G)G=L+G;else G=L;K=0,V=!0}else if(K>0){let L=X+K,{zeroBasedColumn:A,lineText:_}=this.positionToColumnAndLineText(L);if(A===0)K+=_.length,G=G?G+_:_}if(this.root.walk(X,K,B),B.insertLines(G,V),this.checkEdits){let L=B.lineIndex.getText(0,B.lineIndex.getLength());m.assert(U===L,"buffer edit mismatch")}return B.lineIndex}}static buildTreeFromBottom(X){if(X.length<wT)return new ST(X);let K=Array(Math.ceil(X.length/wT)),G=0;for(let U=0;U<K.length;U++){let B=Math.min(G+wT,X.length);K[U]=new ST(X.slice(G,B)),G=B}return this.buildTreeFromBottom(K)}static linesFromText(X){let K=NM(X);if(K.length===0)return{lines:[],lineMap:K};let G=Array(K.length),U=K.length-1;for(let V=0;V<U;V++)G[V]=X.substring(K[V],K[V+1]);let B=X.substring(K[U]);if(B.length>0)G[U]=B;else G.pop();return{lines:G,lineMap:K}}},ST=class ${constructor(X=[]){if(this.children=X,this.totalChars=0,this.totalLines=0,X.length)this.updateCounts()}isLeaf(){return!1}updateCounts(){this.totalChars=0,this.totalLines=0;for(let X of this.children)this.totalChars+=X.charCount(),this.totalLines+=X.lineCount()}execWalk(X,K,G,U,B){if(G.pre)G.pre(X,K,this.children[U],this,B);if(G.goSubtree){if(this.children[U].walk(X,K,G),G.post)G.post(X,K,this.children[U],this,B)}else G.goSubtree=!0;return G.done}skipChild(X,K,G,U,B){if(U.pre&&!U.done)U.pre(X,K,this.children[G],this,B),U.goSubtree=!0}walk(X,K,G){if(this.children.length===0)return;let U=0,B=this.children[U].charCount(),V=X;while(V>=B)this.skipChild(V,K,U,G,0),V-=B,U++,B=this.children[U].charCount();if(V+K<=B){if(this.execWalk(V,K,G,U,2))return}else{if(this.execWalk(V,B-V,G,U,1))return;let L=K-(B-V);U++,B=this.children[U].charCount();while(L>B){if(this.execWalk(0,B,G,U,3))return;L-=B,U++,B=this.children[U].charCount()}if(L>0){if(this.execWalk(0,L,G,U,4))return}}if(G.pre){let L=this.children.length;if(U<L-1)for(let A=U+1;A<L;A++)this.skipChild(0,0,A,G,5)}}charOffsetToLineInfo(X,K){if(this.children.length===0)return{oneBasedLine:X,zeroBasedColumn:K,lineText:void 0};for(let B of this.children)if(B.charCount()>K)if(B.isLeaf())return{oneBasedLine:X,zeroBasedColumn:K,lineText:B.text};else return B.charOffsetToLineInfo(X,K);else K-=B.charCount(),X+=B.lineCount();let G=this.lineCount();if(G===0)return{oneBasedLine:1,zeroBasedColumn:0,lineText:void 0};let U=m.checkDefined(this.lineNumberToInfo(G,0).leaf);return{oneBasedLine:G,zeroBasedColumn:U.charCount(),lineText:void 0}}lineNumberToInfo(X,K){for(let G of this.children){let U=G.lineCount();if(U>=X)return G.isLeaf()?{position:K,leaf:G}:G.lineNumberToInfo(X,K);else X-=U,K+=G.charCount()}return{position:K,leaf:void 0}}splitAfter(X){let K,G=this.children.length;X++;let U=X;if(X<G){K=new $;while(X<G)K.add(this.children[X]),X++;K.updateCounts()}return this.children.length=U,K}remove(X){let K=this.findChildIndex(X),G=this.children.length;if(K<G-1)for(let U=K;U<G-1;U++)this.children[U]=this.children[U+1];this.children.pop()}findChildIndex(X){let K=this.children.indexOf(X);return m.assert(K!==-1),K}insertAt(X,K){let G=this.findChildIndex(X),U=this.children.length,B=K.length;if(U<wT&&G===U-1&&B===1)return this.add(K[0]),this.updateCounts(),[];else{let V=this.splitAfter(G),L=0;G++;while(G<wT&&L<B)this.children[G]=K[L],G++,L++;let A=[],_=0;if(L<B){_=Math.ceil((B-L)/wT),A=Array(_);let N=0;for(let k=0;k<_;k++)A[k]=new $;let T=A[0];while(L<B)if(T.add(K[L]),L++,T.children.length===wT)N++,T=A[N];for(let k=A.length-1;k>=0;k--)if(A[k].children.length===0)A.pop()}if(V)A.push(V);this.updateCounts();for(let N=0;N<_;N++)A[N].updateCounts();return A}}add(X){this.children.push(X),m.assert(this.children.length<=wT)}charCount(){return this.totalChars}lineCount(){return this.totalLines}},Dr=class{constructor($){this.text=$}isLeaf(){return!0}walk($,X,K){K.leaf($,X,this)}charCount(){return this.text.length}lineCount(){return 1}},B86=class ${constructor(X,K,G,U,B,V){this.telemetryEnabled=X,this.logger=K,this.host=G,this.globalTypingsCacheLocation=U,this.event=B,this.maxActiveRequestCount=V,this.activeRequestCount=0,this.requestQueue=fU(),this.requestMap=new Map,this.requestedRegistry=!1,this.packageInstallId=0}isKnownTypesPackageName(X){var K;if(lq.validatePackageName(X)!==lq.NameValidationResult.Ok)return!1;if(!this.requestedRegistry)this.requestedRegistry=!0,this.installer.send({kind:"typesRegistry"});return!!((K=this.typesRegistryCache)==null?void 0:K.has(X))}installPackage(X){this.packageInstallId++;let K={kind:"installPackage",...X,id:this.packageInstallId},G=new Promise((U,B)=>{(this.packageInstalledPromise??(this.packageInstalledPromise=new Map)).set(this.packageInstallId,{resolve:U,reject:B})});return this.installer.send(K),G}attach(X){this.projectService=X,this.installer=this.createInstallerProcess()}onProjectClosed(X){this.installer.send({projectName:X.getProjectName(),kind:"closeProject"})}enqueueInstallTypingsRequest(X,K,G){let U=qP$(X,K,G);if(this.logger.hasLevel(3))this.logger.info(`TIAdapter:: Scheduling throttled operation:${S3(U)}`);if(this.activeRequestCount<this.maxActiveRequestCount)this.scheduleRequest(U);else{if(this.logger.hasLevel(3))this.logger.info(`TIAdapter:: Deferring request for: ${U.projectName}`);this.requestQueue.enqueue(U),this.requestMap.set(U.projectName,U)}}handleMessage(X){var K,G;if(this.logger.hasLevel(3))this.logger.info(`TIAdapter:: Received response:${S3(X)}`);switch(X.kind){case h8$:this.typesRegistryCache=new Map(Object.entries(X.typesRegistry));break;case yp:{let U=(K=this.packageInstalledPromise)==null?void 0:K.get(X.id);if(m.assertIsDefined(U,"Should find the promise for package install"),(G=this.packageInstalledPromise)==null||G.delete(X.id),X.success)U.resolve({successMessage:X.message});else U.reject(X.message);this.projectService.updateTypingsForProject(X),this.event(X,"setTypings");break}case PD$:{let U={message:X.message},B="typesInstallerInitializationFailed";this.event(U,"typesInstallerInitializationFailed");break}case g8$:{let U={eventId:X.eventId,packages:X.packagesToInstall},B="beginInstallTypes";this.event(U,"beginInstallTypes");break}case m8$:{if(this.telemetryEnabled){let V={telemetryEventName:"typingsInstalled",payload:{installedPackages:X.packagesToInstall.join(","),installSuccess:X.installSuccess,typingsInstallerVersion:X.typingsInstallerVersion}},L="telemetry";this.event(V,"telemetry")}let U={eventId:X.eventId,packages:X.packagesToInstall,success:X.installSuccess},B="endInstallTypes";this.event(U,B);break}case xp:{this.projectService.updateTypingsForProject(X);break}case kp:{if(this.activeRequestCount>0)this.activeRequestCount--;else m.fail("TIAdapter:: Received too many responses");while(!this.requestQueue.isEmpty()){let U=this.requestQueue.dequeue();if(this.requestMap.get(U.projectName)===U){this.requestMap.delete(U.projectName),this.scheduleRequest(U);break}if(this.logger.hasLevel(3))this.logger.info(`TIAdapter:: Skipping defunct request for: ${U.projectName}`)}this.projectService.updateTypingsForProject(X),this.event(X,"setTypings");break}case Av:this.projectService.watchTypingLocations(X);break;default:xB(X)}}scheduleRequest(X){if(this.logger.hasLevel(3))this.logger.info(`TIAdapter:: Scheduling request for: ${X.projectName}`);this.activeRequestCount++,this.host.setTimeout(()=>{if(this.logger.hasLevel(3))this.logger.info(`TIAdapter:: Sending request:${S3(X)}`);this.installer.send(X)},$.requestDelayMillis,`${X.projectName}::${X.kind}`)}};B86.requestDelayMillis=100;var H86=B86,V86={};if(H(V86,{ActionInvalidate:()=>xp,ActionPackageInstalled:()=>yp,ActionSet:()=>kp,ActionWatchTypingLocations:()=>Av,Arguments:()=>u8$,AutoImportProviderProject:()=>fP$,AuxiliaryProject:()=>xP$,CharRangeSection:()=>WM$,CloseFileWatcherEvent:()=>XX$,CommandNames:()=>e16,ConfigFileDiagEvent:()=>o4$,ConfiguredProject:()=>vP$,ConfiguredProjectLoadKind:()=>dP$,CreateDirectoryWatcherEvent:()=>JX$,CreateFileWatcherEvent:()=>$X$,Errors:()=>XH,EventBeginInstallTypes:()=>g8$,EventEndInstallTypes:()=>m8$,EventInitializationFailed:()=>PD$,EventTypesRegistry:()=>h8$,ExternalProject:()=>p4$,GcTimer:()=>MP$,InferredProject:()=>kP$,LargeFileReferencedEvent:()=>n4$,LineIndex:()=>Nh,LineLeaf:()=>Dr,LineNode:()=>ST,LogLevel:()=>HP$,Msg:()=>VP$,OpenFileInfoTelemetryEvent:()=>hP$,Project:()=>iN,ProjectInfoTelemetryEvent:()=>e4$,ProjectKind:()=>aC,ProjectLanguageServiceStateEvent:()=>t4$,ProjectLoadingFinishEvent:()=>a4$,ProjectLoadingStartEvent:()=>s4$,ProjectService:()=>tP$,ProjectsUpdatedInBackgroundEvent:()=>Hr,ScriptInfo:()=>_P$,ScriptVersionCache:()=>VX$,Session:()=>G86,TextStorage:()=>EP$,ThrottledOperations:()=>PP$,TypingsInstallerAdapter:()=>H86,allFilesAreJsOrDts:()=>SP$,allRootFilesAreJsOrDts:()=>wP$,asNormalizedPath:()=>FU,convertCompilerOptions:()=>Vr,convertFormatOptions:()=>TT,convertScriptKindName:()=>QX$,convertTypeAcquisition:()=>mP$,convertUserPreferences:()=>uP$,convertWatchOptions:()=>Ph,countEachFileTypes:()=>Fh,createInstallTypingsRequest:()=>qP$,createModuleSpecifierCache:()=>JM$,createNormalizedPathMap:()=>_16,createPackageJsonCache:()=>XM$,createSortedArray:()=>OP$,emptyArray:()=>r7,findArgument:()=>Ti$,formatDiagnosticToProtocol:()=>Mh,formatMessage:()=>YM$,getBaseConfigFileName:()=>l4$,getDetailWatchInfo:()=>WX$,getLocationInNewDocument:()=>GM$,hasArgument:()=>_i$,hasNoTypeScriptSource:()=>CP$,indent:()=>OC,isBackgroundProject:()=>Lh,isConfigFile:()=>eP$,isConfiguredProject:()=>qV,isDynamicFileName:()=>sC,isExternalProject:()=>Ah,isInferredProject:()=>_T,isInferredProjectName:()=>DP$,isProjectDeferredClose:()=>Oh,makeAutoImportProviderProjectName:()=>AP$,makeAuxiliaryProjectName:()=>LP$,makeInferredProjectName:()=>FP$,maxFileSize:()=>r4$,maxProgramSizeForNonTsFiles:()=>i4$,normalizedPathToPath:()=>ET,nowString:()=>Ri$,nullCancellationToken:()=>n16,nullTypingsInstaller:()=>qr,protocol:()=>NP$,scriptInfoIsContainedByBackgroundProject:()=>TP$,scriptInfoIsContainedByDeferredClosedProject:()=>RP$,stringifyIndented:()=>S3,toEvent:()=>QM$,toNormalizedPath:()=>WY,tryConvertScriptKindName:()=>YX$,typingsInstaller:()=>BP$,updateProjectIfDirty:()=>qW}),typeof console<"u")m.loggingHost={log($,X){switch($){case 1:return console.error(X);case 2:return console.warn(X);case 3:return console.log(X);case 4:return console.log(X)}}}})({get exports(){return lj6},set exports(J){if(lj6=J,typeof s5$<"u"&&s5$.exports)s5$.exports=J}})});import{readFileSync as eP0}from"fs";import{resolve as $M0,dirname as JM0}from"path";import{parse as XM0,compileScript as YM0,compileTemplate as QM0}from"@vue/compiler-sfc";function aj6(){o5$.clear()}async function t5$(J,Y,Z,W={}){let z=Y?`${J}::${WM0(Z)}`:null;if(z&&o5$.has(z))return o5$.get(z);let H=eP0(J,"utf-8"),F=await FS$(H,J,Y,Z,W);if(z)o5$.set(z,F);return F}async function FS$(J,Y,Z,W,z={}){let{descriptor:H,errors:F}=XM0(J,{filename:Y});if(F.length)throw Error(`@arcforge/vstr: parse errors in ${Y}:
|
|
503
503
|
${F.map((y$)=>y$.message).join(`
|
|
504
|
-
`)}`);if(!H.template)throw Error(`@
|
|
504
|
+
`)}`);if(!H.template)throw Error(`@arcforge/vstr: ${Y} has no <template> block`);KM0(J,H,Y);let P=Y.replace(/[^a-zA-Z0-9]/g,"_"),E=H.scriptSetup?.content??H.script?.content??"",w=await ZM0(E,Y,Z,W,z),S=Object.keys(w),v=Object.values(w),x;if(H.scriptSetup||H.script)x=YM0(H,{id:P,inlineTemplate:!0,templateOptions:{ssr:!0,compilerOptions:{runtimeModuleName:"@vue/runtime-core"}}}).content;else{let y$=QM0({source:H.template.content,filename:Y,id:P,scoped:!1,ssr:!0,ssrCssVars:[],compilerOptions:{runtimeModuleName:"@vue/runtime-core"}});if(y$.errors.length)throw Error(`@arcforge/vstr: template compile errors in ${Y}:
|
|
505
505
|
${y$.errors.map((k6)=>typeof k6==="string"?k6:k6.message).join(`
|
|
506
506
|
`)}`);x=`export default { ssrRender }
|
|
507
507
|
${rj6(await sj6(y$.code)).replace(/^export\s+function\s+ssrRender/,"function ssrRender").replace(/^export\s+/gm,"")}`}let c=await sj6(x),r=new Set(["default","__esModule"]),n=Object.keys(pj6).filter((y$)=>!r.has(y$)),B$=Object.keys(IL).filter((y$)=>!r.has(y$)&&y$!=="render"&&y$!=="ssrRender"&&!n.includes(y$)),_$=Object.keys(ij6).filter((y$)=>!r.has(y$)),A$=Object.keys(W),H$=Object.values(W),M$=Object.keys(z),b$=Object.values(z),p$=new Set;for(let y$ of M$)p$.add(y$.toLowerCase()),p$.add(y$.replace(/([a-z0-9])([A-Z])/g,"$1_$2").toLowerCase());let o$=rj6(GM0(c)).replace(/const\s+(_component_\w+)\s*=\s*_resolveComponent\([^)]+\);?/g,(y$,_6)=>{let k6=_6.replace(/^_component_/,"").toLowerCase();return p$.has(k6)?"":`const ${_6} = _resolveComponent;`}).replace(/export\s+default\s+/,"const __scriptDef = ").replace(/export\s*\{([^}]+)\}/g,""),T6=`
|
|
@@ -557,7 +557,7 @@ const __component = {
|
|
|
557
557
|
}
|
|
558
558
|
|
|
559
559
|
return __component;
|
|
560
|
-
`,Y6=Function("__vueRuntimeCore","__vue","__serverRenderer","__subComponents","__globals","__context",T6)(pj6,IL,ij6,v,b$,H$);if(!Y6)throw Error(`@
|
|
560
|
+
`,Y6=Function("__vueRuntimeCore","__vue","__serverRenderer","__subComponents","__globals","__context",T6)(pj6,IL,ij6,v,b$,H$);if(!Y6)throw Error(`@arcforge/vstr: compiled component is null for ${Y}`);return Y6}function KM0(J,Y,Z){let W=[Y.template,Y.script,Y.scriptSetup,...Y.styles,...Y.customBlocks].filter((H)=>H!==null),z=J;for(let H of W){let F=J.lastIndexOf(`<${H.type}`,H.loc.start.offset),P=`</${H.type}>`,E=J.indexOf(P,H.loc.end.offset)+P.length;if(F===-1||E===P.length-1)continue;z=z.slice(0,F)+" ".repeat(E-F)+z.slice(E)}if(z=z.replace(/<(template|script|style)(\s[^>]*)?>\s*<\/\1>/g,""),z.trim().length>0)throw Error(`@arcforge/vstr: ${Z} has content outside its <template>/<script>/<style> blocks \u2014 this is likely a typo`)}async function ZM0(J,Y,Z,W,z){let H=JM0(Y),F={},P=/import\s+(\w+)\s+from\s+["'](\.{1,2}\/[^"']+\.(vd|vue|prompt))["']/g,E;while((E=P.exec(J))!==null){let[,w,S]=E;if(w===void 0||S===void 0)continue;F[w]=await t5$($M0(H,S),Z,W,z)}return F}function rj6(J){return J.replace(/^import\s[\s\S]*?from\s+["'][^"']+["'];?/gm,(Y)=>{let Z=Y.replace(/\s+/g," ").trim();if(/^import\s+\*\s+as\s+/.test(Z))return"";let W=Z.match(/^import\s*\{([^}]+)\}\s*from/);if(W?.[1]!==void 0)return W[1].split(",").map((z)=>{let[H,F]=z.split(" as ").map((P)=>P.trim());if(!H)return"";if(F&&F!==H)return`const ${F} = ${H};`;return""}).filter(Boolean).join(`
|
|
561
561
|
`);return""})}function GM0(J){return J.replace(/^import\s+\w+\s+from\s+["']\.{1,2}\/[^"']+\.(vd|vue|prompt)["'];?\n?/gm,"")}async function sj6(J){if(typeof Bun<"u")return new Bun.Transpiler({loader:"ts"}).transformSync(J);return n5$.default.transpileModule(J,{compilerOptions:{module:n5$.default.ModuleKind.ESNext,target:n5$.default.ScriptTarget.ESNext}}).outputText}function WM0(J){return Object.keys(J).sort().map((Y)=>`${Y}:${typeof J[Y]}`).join(",")}var pj6,ij6,n5$,o5$;var nj6=n9(()=>{Sw$();pj6=db(Lw$(),1),ij6=db(aw$(),1),n5$=db(a5$(),1),o5$=new Map});import{readFileSync as zM0}from"fs";import{resolve as UM0}from"path";import{parse as jM0}from"@vue/compiler-sfc";function oj6(J){let Y=UM0(J),Z=zM0(Y,"utf-8");return AS$(Z,Y)}function AS$(J,Y="<source>"){let{descriptor:Z,errors:W}=jM0(J,{filename:Y});if(W.length||!Z.scriptSetup)return[];let z=Z.scriptSetup.content,H=HM0(z),F=BM0(z);for(let P of F)if(P.name in H)P.default=H[P.name];else if(!P.required)P.default=null;return F}function BM0(J){let Y=_L.default.createSourceFile("props.ts",J,_L.default.ScriptTarget.Latest,!0,_L.default.ScriptKind.TS),Z=[];function W(z){if(_L.default.isCallExpression(z)&&_L.default.isIdentifier(z.expression)&&z.expression.text==="defineProps"&&z.typeArguments&&z.typeArguments.length>0){let H=z.typeArguments[0];if(_L.default.isTypeLiteralNode(H)){for(let F of H.members)if(_L.default.isPropertySignature(F)&&_L.default.isIdentifier(F.name))Z.push({name:F.name.text,type:F.type?F.type.getText(Y):"unknown",required:!F.questionToken,default:void 0})}}_L.default.forEachChild(z,W)}return _L.default.forEachChild(Y,W),Z}function HM0(J){let Y={},Z=J.match(/const\s*\{([^}]+)\}\s*=\s*defineProps/);if(Z?.[1]===void 0)return Y;for(let W of Z[1].split(",")){let z=W.indexOf("=");if(z===-1)continue;let H=W.slice(0,z).trim(),F=W.slice(z+1).trim();try{Y[H]=JSON.parse(F)}catch{Y[H]=F}}return Y}var _L;var tj6=n9(()=>{_L=db(a5$(),1)});var Om=N9((M01,ej6)=>{ej6.exports=wk;wk.CAPTURING_PHASE=1;wk.AT_TARGET=2;wk.BUBBLING_PHASE=3;function wk(J,Y){if(this.type="",this.target=null,this.currentTarget=null,this.eventPhase=wk.AT_TARGET,this.bubbles=!1,this.cancelable=!1,this.isTrusted=!1,this.defaultPrevented=!1,this.timeStamp=Date.now(),this._propagationStopped=!1,this._immediatePropagationStopped=!1,this._initialized=!0,this._dispatching=!1,J)this.type=J;if(Y)for(var Z in Y)this[Z]=Y[Z]}wk.prototype=Object.create(Object.prototype,{constructor:{value:wk},stopPropagation:{value:function(){this._propagationStopped=!0}},stopImmediatePropagation:{value:function(){this._propagationStopped=!0,this._immediatePropagationStopped=!0}},preventDefault:{value:function(){if(this.cancelable)this.defaultPrevented=!0}},initEvent:{value:function(Y,Z,W){if(this._initialized=!0,this._dispatching)return;this._propagationStopped=!1,this._immediatePropagationStopped=!1,this.defaultPrevented=!1,this.isTrusted=!1,this.target=null,this.type=Y,this.bubbles=Z,this.cancelable=W}}})});var OS$=N9((N01,JB6)=>{var $B6=Om();JB6.exports=LS$;function LS$(){$B6.call(this),this.view=null,this.detail=0}LS$.prototype=Object.create($B6.prototype,{constructor:{value:LS$},initUIEvent:{value:function(J,Y,Z,W,z){this.initEvent(J,Y,Z),this.view=W,this.detail=z}}})});var MS$=N9((I01,YB6)=>{var XB6=OS$();YB6.exports=PS$;function PS$(){XB6.call(this),this.screenX=this.screenY=this.clientX=this.clientY=0,this.ctrlKey=this.altKey=this.shiftKey=this.metaKey=!1,this.button=0,this.buttons=1,this.relatedTarget=null}PS$.prototype=Object.create(XB6.prototype,{constructor:{value:PS$},initMouseEvent:{value:function(J,Y,Z,W,z,H,F,P,E,w,S,v,x,c,r){switch(this.initEvent(J,Y,Z,W,z),this.screenX=H,this.screenY=F,this.clientX=P,this.clientY=E,this.ctrlKey=w,this.altKey=S,this.shiftKey=v,this.metaKey=x,this.button=c,c){case 0:this.buttons=1;break;case 1:this.buttons=4;break;case 2:this.buttons=2;break;default:this.buttons=0;break}this.relatedTarget=r}},getModifierState:{value:function(J){switch(J){case"Alt":return this.altKey;case"Control":return this.ctrlKey;case"Shift":return this.shiftKey;case"Meta":return this.metaKey;default:return!1}}}})});var J2$=N9((E01,KB6)=>{KB6.exports=$2$;var VM0=1,qM0=3,DM0=4,FM0=5,AM0=7,LM0=8,OM0=9,PM0=11,MM0=12,NM0=13,IM0=14,EM0=15,_M0=17,TM0=18,RM0=19,wM0=20,SM0=21,CM0=22,bM0=23,kM0=24,xM0=25,yM0=[null,"INDEX_SIZE_ERR",null,"HIERARCHY_REQUEST_ERR","WRONG_DOCUMENT_ERR","INVALID_CHARACTER_ERR",null,"NO_MODIFICATION_ALLOWED_ERR","NOT_FOUND_ERR","NOT_SUPPORTED_ERR","INUSE_ATTRIBUTE_ERR","INVALID_STATE_ERR","SYNTAX_ERR","INVALID_MODIFICATION_ERR","NAMESPACE_ERR","INVALID_ACCESS_ERR",null,"TYPE_MISMATCH_ERR","SECURITY_ERR","NETWORK_ERR","ABORT_ERR","URL_MISMATCH_ERR","QUOTA_EXCEEDED_ERR","TIMEOUT_ERR","INVALID_NODE_TYPE_ERR","DATA_CLONE_ERR"],fM0=[null,"INDEX_SIZE_ERR (1): the index is not in the allowed range",null,"HIERARCHY_REQUEST_ERR (3): the operation would yield an incorrect nodes model","WRONG_DOCUMENT_ERR (4): the object is in the wrong Document, a call to importNode is required","INVALID_CHARACTER_ERR (5): the string contains invalid characters",null,"NO_MODIFICATION_ALLOWED_ERR (7): the object can not be modified","NOT_FOUND_ERR (8): the object can not be found here","NOT_SUPPORTED_ERR (9): this operation is not supported","INUSE_ATTRIBUTE_ERR (10): setAttributeNode called on owned Attribute","INVALID_STATE_ERR (11): the object is in an invalid state","SYNTAX_ERR (12): the string did not match the expected pattern","INVALID_MODIFICATION_ERR (13): the object can not be modified in this way","NAMESPACE_ERR (14): the operation is not allowed by Namespaces in XML","INVALID_ACCESS_ERR (15): the object does not support the operation or argument",null,"TYPE_MISMATCH_ERR (17): the type of the object does not match the expected type","SECURITY_ERR (18): the operation is insecure","NETWORK_ERR (19): a network error occurred","ABORT_ERR (20): the user aborted an operation","URL_MISMATCH_ERR (21): the given URL does not match another URL","QUOTA_EXCEEDED_ERR (22): the quota has been exceeded","TIMEOUT_ERR (23): a timeout occurred","INVALID_NODE_TYPE_ERR (24): the supplied node is invalid or has an invalid ancestor for this operation","DATA_CLONE_ERR (25): the object can not be cloned."],QB6={INDEX_SIZE_ERR:VM0,DOMSTRING_SIZE_ERR:2,HIERARCHY_REQUEST_ERR:qM0,WRONG_DOCUMENT_ERR:DM0,INVALID_CHARACTER_ERR:FM0,NO_DATA_ALLOWED_ERR:6,NO_MODIFICATION_ALLOWED_ERR:AM0,NOT_FOUND_ERR:LM0,NOT_SUPPORTED_ERR:OM0,INUSE_ATTRIBUTE_ERR:10,INVALID_STATE_ERR:PM0,SYNTAX_ERR:MM0,INVALID_MODIFICATION_ERR:NM0,NAMESPACE_ERR:IM0,INVALID_ACCESS_ERR:EM0,VALIDATION_ERR:16,TYPE_MISMATCH_ERR:_M0,SECURITY_ERR:TM0,NETWORK_ERR:RM0,ABORT_ERR:wM0,URL_MISMATCH_ERR:SM0,QUOTA_EXCEEDED_ERR:CM0,TIMEOUT_ERR:bM0,INVALID_NODE_TYPE_ERR:kM0,DATA_CLONE_ERR:xM0};function $2$(J){Error.call(this),Error.captureStackTrace(this,this.constructor),this.code=J,this.message=fM0[J],this.name=yM0[J]}$2$.prototype.__proto__=Error.prototype;for(Nn in QB6)e5$={value:QB6[Nn]},Object.defineProperty($2$,Nn,e5$),Object.defineProperty($2$.prototype,Nn,e5$);var e5$,Nn});var X2$=N9((vM0)=>{vM0.isApiWritable=!globalThis.__domino_frozen__});var tG=N9((mM0)=>{var oG=J2$(),SW=oG,gM0=X2$().isApiWritable;mM0.NAMESPACE={HTML:"http://www.w3.org/1999/xhtml",XML:"http://www.w3.org/XML/1998/namespace",XMLNS:"http://www.w3.org/2000/xmlns/",MATHML:"http://www.w3.org/1998/Math/MathML",SVG:"http://www.w3.org/2000/svg",XLINK:"http://www.w3.org/1999/xlink"};mM0.IndexSizeError=function(){throw new oG(SW.INDEX_SIZE_ERR)};mM0.HierarchyRequestError=function(){throw new oG(SW.HIERARCHY_REQUEST_ERR)};mM0.WrongDocumentError=function(){throw new oG(SW.WRONG_DOCUMENT_ERR)};mM0.InvalidCharacterError=function(){throw new oG(SW.INVALID_CHARACTER_ERR)};mM0.NoModificationAllowedError=function(){throw new oG(SW.NO_MODIFICATION_ALLOWED_ERR)};mM0.NotFoundError=function(){throw new oG(SW.NOT_FOUND_ERR)};mM0.NotSupportedError=function(){throw new oG(SW.NOT_SUPPORTED_ERR)};mM0.InvalidStateError=function(){throw new oG(SW.INVALID_STATE_ERR)};mM0.SyntaxError=function(){throw new oG(SW.SYNTAX_ERR)};mM0.InvalidModificationError=function(){throw new oG(SW.INVALID_MODIFICATION_ERR)};mM0.NamespaceError=function(){throw new oG(SW.NAMESPACE_ERR)};mM0.InvalidAccessError=function(){throw new oG(SW.INVALID_ACCESS_ERR)};mM0.TypeMismatchError=function(){throw new oG(SW.TYPE_MISMATCH_ERR)};mM0.SecurityError=function(){throw new oG(SW.SECURITY_ERR)};mM0.NetworkError=function(){throw new oG(SW.NETWORK_ERR)};mM0.AbortError=function(){throw new oG(SW.ABORT_ERR)};mM0.UrlMismatchError=function(){throw new oG(SW.URL_MISMATCH_ERR)};mM0.QuotaExceededError=function(){throw new oG(SW.QUOTA_EXCEEDED_ERR)};mM0.TimeoutError=function(){throw new oG(SW.TIMEOUT_ERR)};mM0.InvalidNodeTypeError=function(){throw new oG(SW.INVALID_NODE_TYPE_ERR)};mM0.DataCloneError=function(){throw new oG(SW.DATA_CLONE_ERR)};mM0.nyi=function(){throw Error("NotYetImplemented")};mM0.shouldOverride=function(){throw Error("Abstract function; should be overriding in subclass.")};mM0.assert=function(J,Y){if(!J)throw Error("Assertion failed: "+(Y||"")+`
|
|
562
562
|
`+Error().stack)};mM0.expose=function(J,Y){for(var Z in J)Object.defineProperty(Y.prototype,Z,{value:J[Z],writable:gM0})};mM0.merge=function(J,Y){for(var Z in Y)J[Z]=Y[Z]};mM0.documentOrder=function(J,Y){return 3-(J.compareDocumentPosition(Y)&6)};mM0.toASCIILowerCase=function(J){return J.replace(/[A-Z]+/g,function(Y){return Y.toLowerCase()})};mM0.toASCIIUpperCase=function(J){return J.replace(/[a-z]+/g,function(Y){return Y.toUpperCase()})}});var NS$=N9((R01,GB6)=>{var Sk=Om(),FN0=MS$(),AN0=tG();GB6.exports=ZB6;function ZB6(){}ZB6.prototype={addEventListener:function(Y,Z,W){if(!Z)return;if(W===void 0)W=!1;if(!this._listeners)this._listeners=Object.create(null);if(!this._listeners[Y])this._listeners[Y]=[];var z=this._listeners[Y];for(var H=0,F=z.length;H<F;H++){var P=z[H];if(P.listener===Z&&P.capture===W)return}var E={listener:Z,capture:W};if(typeof Z==="function")E.f=Z;z.push(E)},removeEventListener:function(Y,Z,W){if(W===void 0)W=!1;if(this._listeners){var z=this._listeners[Y];if(z)for(var H=0,F=z.length;H<F;H++){var P=z[H];if(P.listener===Z&&P.capture===W){if(z.length===1)this._listeners[Y]=void 0;else z.splice(H,1);return}}}},dispatchEvent:function(Y){return this._dispatchEvent(Y,!1)},_dispatchEvent:function(Y,Z){if(typeof Z!=="boolean")Z=!1;function W(w,S){var{type:v,eventPhase:x}=S;if(S.currentTarget=w,x!==Sk.CAPTURING_PHASE&&w._handlers&&w._handlers[v]){var c=w._handlers[v],r;if(typeof c==="function")r=c.call(S.currentTarget,S);else{var n=c.handleEvent;if(typeof n!=="function")throw TypeError("handleEvent property of event handler object isnot a function.");r=n.call(c,S)}switch(S.type){case"mouseover":if(r===!0)S.preventDefault();break;case"beforeunload":default:if(r===!1)S.preventDefault();break}}var B$=w._listeners&&w._listeners[v];if(!B$)return;B$=B$.slice();for(var _$=0,A$=B$.length;_$<A$;_$++){if(S._immediatePropagationStopped)return;var H$=B$[_$];if(x===Sk.CAPTURING_PHASE&&!H$.capture||x===Sk.BUBBLING_PHASE&&H$.capture)continue;if(H$.f)H$.f.call(S.currentTarget,S);else{var M$=H$.listener.handleEvent;if(typeof M$!=="function")throw TypeError("handleEvent property of event listener object is not a function.");M$.call(H$.listener,S)}}}if(!Y._initialized||Y._dispatching)AN0.InvalidStateError();Y.isTrusted=Z,Y._dispatching=!0,Y.target=this;var z=[];for(var H=this.parentNode;H;H=H.parentNode)z.push(H);Y.eventPhase=Sk.CAPTURING_PHASE;for(var F=z.length-1;F>=0;F--)if(W(z[F],Y),Y._propagationStopped)break;if(!Y._propagationStopped)Y.eventPhase=Sk.AT_TARGET,W(this,Y);if(Y.bubbles&&!Y._propagationStopped){Y.eventPhase=Sk.BUBBLING_PHASE;for(var P=0,E=z.length;P<E;P++)if(W(z[P],Y),Y._propagationStopped)break}if(Y._dispatching=!1,Y.eventPhase=Sk.AT_TARGET,Y.currentTarget=null,Z&&!Y.defaultPrevented&&Y instanceof FN0)switch(Y.type){case"mousedown":this._armed={x:Y.clientX,y:Y.clientY,t:Y.timeStamp};break;case"mouseout":case"mouseover":this._armed=null;break;case"mouseup":if(this._isClick(Y))this._doClick(Y);this._armed=null;break}return!Y.defaultPrevented},_isClick:function(J){return this._armed!==null&&J.type==="mouseup"&&J.isTrusted&&J.button===0&&J.timeStamp-this._armed.t<1000&&Math.abs(J.clientX-this._armed.x)<10&&Math.abs(J.clientY-this._armed.Y)<10},_doClick:function(J){if(this._click_in_progress)return;this._click_in_progress=!0;var Y=this;while(Y&&!Y._post_click_activation_steps)Y=Y.parentNode;if(Y&&Y._pre_click_activation_steps)Y._pre_click_activation_steps();var Z=this.ownerDocument.createEvent("MouseEvent");Z.initMouseEvent("click",!0,!0,this.ownerDocument.defaultView,1,J.screenX,J.screenY,J.clientX,J.clientY,J.ctrlKey,J.altKey,J.shiftKey,J.metaKey,J.button,null);var W=this._dispatchEvent(Z,!0);if(Y){if(W){if(Y._post_click_activation_steps)Y._post_click_activation_steps(Z)}else if(Y._cancelled_activation_steps)Y._cancelled_activation_steps()}},_setEventHandler:function(Y,Z){if(!this._handlers)this._handlers=Object.create(null);this._handlers[Y]=Z},_getEventHandler:function(Y){return this._handlers&&this._handlers[Y]||null}}});var IS$=N9((w01,WB6)=>{var UE=tG(),yF=WB6.exports={valid:function(J){return UE.assert(J,"list falsy"),UE.assert(J._previousSibling,"previous falsy"),UE.assert(J._nextSibling,"next falsy"),!0},insertBefore:function(J,Y){UE.assert(yF.valid(J)&&yF.valid(Y));var Z=J,W=J._previousSibling,z=Y,H=Y._previousSibling;Z._previousSibling=H,W._nextSibling=z,H._nextSibling=Z,z._previousSibling=W,UE.assert(yF.valid(J)&&yF.valid(Y))},replace:function(J,Y){if(UE.assert(yF.valid(J)&&(Y===null||yF.valid(Y))),Y!==null)yF.insertBefore(Y,J);yF.remove(J),UE.assert(yF.valid(J)&&(Y===null||yF.valid(Y)))},remove:function(J){UE.assert(yF.valid(J));var Y=J._previousSibling;if(Y===J)return;var Z=J._nextSibling;Y._nextSibling=Z,Z._previousSibling=Y,J._previousSibling=J._nextSibling=J,UE.assert(yF.valid(J))}}});var ES$=N9((S01,DB6)=>{DB6.exports={serializeOne:EN0,\u{275}escapeMatchingClosingTag:HB6,\u{275}escapeClosingCommentTag:VB6,\u{275}escapeProcessingInstructionContent:qB6};var BB6=tG(),Ck=BB6.NAMESPACE,zB6={STYLE:!0,SCRIPT:!0,XMP:!0,IFRAME:!0,NOEMBED:!0,NOFRAMES:!0,PLAINTEXT:!0},LN0={area:!0,base:!0,basefont:!0,bgsound:!0,br:!0,col:!0,embed:!0,frame:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0},ON0={},UB6=/[&<>\u00A0]/g,jB6=/[&"<>\u00A0]/g;function PN0(J){if(!UB6.test(J))return J;return J.replace(UB6,(Y)=>{switch(Y){case"&":return"&";case"<":return"<";case">":return">";case"\xA0":return" "}})}function MN0(J){if(!jB6.test(J))return J;return J.replace(jB6,(Y)=>{switch(Y){case"<":return"<";case">":return">";case"&":return"&";case'"':return""";case"\xA0":return" "}})}function NN0(J){var Y=J.namespaceURI;if(!Y)return J.localName;if(Y===Ck.XML)return"xml:"+J.localName;if(Y===Ck.XLINK)return"xlink:"+J.localName;if(Y===Ck.XMLNS)if(J.localName==="xmlns")return"xmlns";else return"xmlns:"+J.localName;return J.name}function HB6(J,Y){let Z="</"+Y;if(!J.toLowerCase().includes(Z))return J;let W=[...J],z=J.matchAll(new RegExp(Z,"ig"));for(let H of z)W[H.index]="<";return W.join("")}var IN0=/--!?>/;function VB6(J){if(!IN0.test(J))return J;return J.replace(/(--\!?)>/g,"$1>")}function qB6(J){return J.includes(">")?J.replaceAll(">",">"):J}function EN0(J,Y){var Z="";switch(J.nodeType){case 1:var W=J.namespaceURI,z=W===Ck.HTML,H=z||W===Ck.SVG||W===Ck.MATHML?J.localName:J.tagName;Z+="<"+H;for(var F=0,P=J._numattrs;F<P;F++){var E=J._attr(F);if(Z+=" "+NN0(E),E.value!==void 0)Z+='="'+MN0(E.value)+'"'}if(Z+=">",!(z&&LN0[H])){var w=J.serialize();if(zB6[H.toUpperCase()])w=HB6(w,H);if(z&&ON0[H]&&w.charAt(0)===`
|
|
563
563
|
`)Z+=`
|