@sap/cds-lsp
Version:
Language server for CDS
410 lines (405 loc) • 621 kB
JavaScript
"use strict";var sI=Object.create;var pi=Object.defineProperty;var aI=Object.getOwnPropertyDescriptor;var pF=Object.getOwnPropertyNames;var dF=Object.getPrototypeOf,uF=Object.prototype.hasOwnProperty;var lI=(i,e)=>(e=Symbol[i])?e:Symbol.for("Symbol."+i),ta=i=>{throw TypeError(i)};var cI=(i,e,t)=>e in i?pi(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t;var s=(i,e)=>pi(i,"name",{value:e,configurable:!0});var Um=(i,e)=>()=>(e||i((e={exports:{}}).exports,e),e.exports),mF=(i,e)=>{for(var t in e)pi(i,t,{get:e[t],enumerable:!0})},
pI=(i,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of pF(e))!uF.call(i,r)&&r!==t&&pi(i,r,{get:()=>e[r],
enumerable:!(n=aI(e,r))||n.enumerable});return i};var H=(i,e,t)=>(t=i!=null?sI(dF(i)):{},pI(e||!i||!i.__esModule?pi(t,"default",{value:i,enumerable:!0}):t,i)),fF=i=>pI(pi(
{},"__esModule",{value:!0}),i);var x=i=>[,,,sI(i?.[lI("metadata")]??null)],dI=["class","method","getter","setter","accessor","field","value","get","set"],
ea=i=>i!==void 0&&typeof i!="function"?ta("Function expected"):i,hF=(i,e,t,n,r)=>({kind:dI[i],name:e,metadata:n,addInitializer:o=>t.
_?ta("Already initialized"):r.push(ea(o||null))}),k=(i,e)=>cI(e,lI("metadata"),i[3]),S=(i,e,t,n)=>{for(var r=0,o=i[e>>1],
a=o&&o.length;r<a;r++)e&1?o[r].call(t):n=o[r].call(t,n);return n},m=(i,e,t,n,r,o)=>{var a,l,c,p,d,u=e&7,f=!!(e&8),h=!!(e&
16),g=u>3?i.length+1:u?f?1:2:0,b=dI[u+5],P=u>3&&(i[g-1]=[]),v=i[g]||(i[g]=[]),R=u&&(!h&&!f&&(r=r.prototype),u<5&&(u>3||!h)&&
aI(u<4?r:{get[t](){return iI(this,o)},set[t](N){return oI(this,o,N)}},t));u?h&&u<4&&s(o,(u>2?"set ":u>1?"get ":"")+t):s(
r,t);for(var E=n.length-1;E>=0;E--)p=hF(u,t,c={},i[3],v),u&&(p.static=f,p.private=h,d=p.access={has:h?N=>gF(r,N):N=>t in
N},u^3&&(d.get=h?N=>(u^1?iI:IF)(N,r,u^4?o:R.get):N=>N[t]),u>2&&(d.set=h?(N,U)=>oI(N,r,U,u^4?o:R.set):(N,U)=>N[t]=U)),l=(0,n[E])(
u?u<4?h?o:R[b]:u>4?void 0:{get:R.get,set:R.set}:r,p),c._=1,u^4||l===void 0?ea(l)&&(u>4?P.unshift(l):u?h?o=l:R[b]=l:r=l):
typeof l!="object"||l===null?ta("Object expected"):(ea(a=l.get)&&(R.get=a),ea(a=l.set)&&(R.set=a),ea(a=l.init)&&P.unshift(
a));return u||k(i,r),R&&pi(r,t,R),h?u^4?o:R:r},T=(i,e,t)=>cI(i,typeof e!="symbol"?e+"":e,t),$m=(i,e,t)=>e.has(i)||ta("Ca\
nnot "+t),gF=(i,e)=>Object(e)!==e?ta('Cannot use the "in" operator on this value'):i.has(e),iI=(i,e,t)=>($m(i,e,"read fr\
om private field"),t?t.call(i):e.get(i));var oI=(i,e,t,n)=>($m(i,e,"write to private field"),n?n.call(i,t):e.set(i,t),t),IF=(i,e,t)=>($m(i,e,"access private meth\
od"),t);var Qy=Um((I$,zy)=>{"use strict";var sE=Object.create,Dc=Object.defineProperty,aE=Object.getOwnPropertyDescriptor,lE=Object.
getOwnPropertyNames,cE=Object.getPrototypeOf,pE=Object.prototype.hasOwnProperty,dE=s((i,e)=>{for(var t in e)Dc(i,t,{get:e[t],
enumerable:!0})},"v"),Gy=s((i,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of lE(e))!pE.call(i,r)&&
r!==t&&Dc(i,r,{get:s(()=>e[r],"get"),enumerable:!(n=aE(e,r))||n.enumerable});return i},"u"),lf=s((i,e,t)=>(t=i!=null?sE(
cE(i)):{},Gy(e||!i||!i.__esModule?Dc(t,"default",{value:i,enumerable:!0}):t,i)),"p"),uE=s(i=>Gy(Dc({},"__esModule",{value:!0}),
i),"E"),Hy={};dE(Hy,{TelemetryClient:s(()=>LE,"TelemetryClient")});zy.exports=uE(Hy);var mE=lf(require("node:zlib")),fE=lf(
require("node:crypto")),ma=lf(require("node:os")),hE=/@sap\.com\b/i,gE=/^[CDI]\d{6,}\b/i,jy;try{jy=require("vscode")}catch{}
function IE(){return{"ai.cloud.role":"masked","ai.cloud.roleInstance":"masked","ai.device.type":"masked","ai.location.ip":"\
0.0.0.0"}}s(IE,"d");function yE(){return{"cds.bas.iaas":SE(),"cds.bas.landscape":kE(),"cds.bas":TE(),"cds.client.os":bE(),
"cds.event":!0,"cds.user.sap":CE(),"cds.user":xE()}}s(yE,"l");function bE(){return`${ma.type()} ${ma.release()}`}s(bE,"S");
function TE(){return!!process.env.WS_BASE_URL}s(TE,"D");function SE(){return process.env.LANDSCAPE_INFRASTRUCTURE??""}s(
SE,"N");function kE(){return process.env.LANDSCAPE_NAME??""}s(kE,"C");function xE(){let i=process.env.USER_NAME??ma.userInfo().
username??jy?.env?.machineId??ma.hostname();return i?PE(i):""}s(xE,"K");function CE(){return!!(process.env.USER_NAME?.match(
hE)||ma.userInfo().username?.trim()?.match(gE))}s(CE,"x");function PE(i){return fE.createHash("sha256").update(i).digest(
"hex")}s(PE,"M");var vE=s(i=>mE.unzipSync(Buffer.from(i,"base64")).toString(),"O"),AE="eJyNzU0OgjAQQOETtaAiPxqWLoheYtoOZ\
RKYNu2AwdMbXbn0AO97A2dJ64IsIBT4jntfl8e2QgfKttaqqukqZZxplDudxxKMqeuxuw7sMX+KG7sYiKWfRGK+FIXHtADvT8xikSXBrA6aWEOMM9nvhTiTn\
yRreK0JtQ1LcX3Qhn9YeqYNHYHnkIVs1ktgkpB+qDd8J05p",RE=vE(AE),LE=class{static{s(this,"c")}constructor(i){this.id=i;let e=Object.
fromEntries(RE.split(";").map(t=>t.split("=")).filter(([t,n])=>t&&n));this.iKey=e.InstrumentationKey,this.endPoint=`${e.
IngestionEndpoint}/v2/track`,this.defaultProperties=yE(),this.defaultTags=IE()}async report(i,e){let t=this.getEventPayload(
i,e),n=await fetch(this.endPoint,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!n.
ok)throw await n.text()}getEventPayload(i,e){let{properties:t,measurements:n}=this.getEventData(e);return{name:"Microsof\
t.ApplicationInsights.Event",time:new Date().toISOString(),iKey:this.iKey,tags:this.defaultTags,data:{baseType:"EventDat\
a",baseData:{ver:2,name:`${this.id}/${i}`,properties:t,measurements:n}}}}getEventData(i){let e=Object.create(null),t=Object.
create(null);for(let[n,r]of Object.entries(i))r!==void 0&&(typeof r=="number"?t[n]=r:e[n]=r);return e={...this.defaultProperties,
...e},{properties:e,measurements:t}}}});var fT=Um((OB,gp)=>{function lT(i){return Array.isArray(i)?i:[i]}s(lT,"makeArray");var zE=void 0,Pf="",sT=" ",Cf="\\",QE=/^\s+$/,
YE=/(?:[^\\]|^)\\$/,JE=/^\\!/,ZE=/^\\#/,eN=/\r?\n/g,tN=/^\.{0,2}\/|^\.{1,2}$/,nN=/\/$/,Wo="/",cT="node-ignore";typeof Symbol<
"u"&&(cT=Symbol.for("node-ignore"));var pT=cT,Bo=s((i,e,t)=>(Object.defineProperty(i,e,{value:t}),t),"define"),rN=/([0-z])-([0-z])/g,
dT=s(()=>!1,"RETURN_FALSE"),iN=s(i=>i.replace(rN,(e,t,n)=>t.charCodeAt(0)<=n.charCodeAt(0)?e:Pf),"sanitizeRange"),oN=s(i=>{
let{length:e}=i;return i.slice(0,e-e%2)},"cleanRangeBackSlash"),sN=[[/^\uFEFF/,()=>Pf],[/((?:\\\\)*?)(\\?\s+)$/,(i,e,t)=>e+
(t.indexOf("\\")===0?sT:Pf)],[/(\\+?)\s/g,(i,e)=>{let{length:t}=e;return e.slice(0,t-t%2)+sT}],[/[\\$.|*+(){^]/g,i=>`\\${i}`],
[/(?!\\)\?/g,()=>"[^/]"],[/^\//,()=>"^"],[/\//g,()=>"\\/"],[/^\^*\\\*\\\*\\\//,()=>"^(?:.*\\/)?"],[/^(?=[^^])/,s(function(){
return/\/(?!$)/.test(this)?"^":"(?:^|\\/)"},"startingReplacer")],[/\\\/\\\*\\\*(?=\\\/|$)/g,(i,e,t)=>e+6<t.length?"(?:\\/\
[^\\/]+)*":"\\/.+"],[/(^|[^\\]+)(\\\*)+(?=.+)/g,(i,e,t)=>{let n=t.replace(/\\\*/g,"[^\\/]*");return e+n}],[/\\\\\\(?=[$.|*+(){^])/g,
()=>Cf],[/\\\\/g,()=>Cf],[/(\\)?\[([^\]/]*?)(\\*)($|\])/g,(i,e,t,n,r)=>e===Cf?`\\[${t}${oN(n)}${r}`:r==="]"&&n.length%2===
0?`[${iN(t)}${n}]`:"[]"],[/(?:[^*])$/,i=>/\/$/.test(i)?`${i}$`:`${i}(?=$|\\/$)`]],aN=/(^|\\\/)?\\\*$/,Ta="regex",fp="che\
ckRegex",aT="_",lN={[Ta](i,e){return`${e?`${e}[^/]+`:"[^/]*"}(?=$|\\/$)`},[fp](i,e){return`${e?`${e}[^/]*`:"[^/]*"}(?=$|\
\\/$)`}},cN=s(i=>sN.reduce((e,[t,n])=>e.replace(t,n.bind(i)),i),"makeRegexPrefix"),hp=s(i=>typeof i=="string","isString"),
pN=s(i=>i&&hp(i)&&!QE.test(i)&&!YE.test(i)&&i.indexOf("#")!==0,"checkPattern"),dN=s(i=>i.split(eN).filter(Boolean),"spli\
tPattern"),vf=class{static{s(this,"IgnoreRule")}constructor(e,t,n,r,o,a){this.pattern=e,this.mark=t,this.negative=o,Bo(this,
"body",n),Bo(this,"ignoreCase",r),Bo(this,"regexPrefix",a)}get regex(){let e=aT+Ta;return this[e]?this[e]:this._make(Ta,
e)}get checkRegex(){let e=aT+fp;return this[e]?this[e]:this._make(fp,e)}_make(e,t){let n=this.regexPrefix.replace(aN,lN[e]),
r=this.ignoreCase?new RegExp(n,"i"):new RegExp(n);return Bo(this,t,r)}},uN=s(({pattern:i,mark:e},t)=>{let n=!1,r=i;r.indexOf(
"!")===0&&(n=!0,r=r.substr(1)),r=r.replace(JE,"!").replace(ZE,"#");let o=cN(r);return new vf(i,e,r,t,n,o)},"createRule"),
Af=class{static{s(this,"RuleManager")}constructor(e){this._ignoreCase=e,this._rules=[]}_add(e){if(e&&e[pT]){this._rules=
this._rules.concat(e._rules._rules),this._added=!0;return}if(hp(e)&&(e={pattern:e}),pN(e.pattern)){let t=uN(e,this._ignoreCase);
this._added=!0,this._rules.push(t)}}add(e){return this._added=!1,lT(hp(e)?dN(e):e).forEach(this._add,this),this._added}test(e,t,n){
let r=!1,o=!1,a;this._rules.forEach(c=>{let{negative:p}=c;o===p&&r!==o||p&&!r&&!o&&!t||!c[n].test(e)||(r=!p,o=p,a=p?zE:c)});
let l={ignored:r,unignored:o};return a&&(l.rule=a),l}},mN=s((i,e)=>{throw new e(i)},"throwError"),tr=s((i,e,t)=>hp(i)?i?
tr.isNotRelative(i)?t(`path should be a \`path.relative()\`d string, but got "${e}"`,RangeError):!0:t("path must not be \
empty",TypeError):t(`path must be a string, but got \`${e}\``,TypeError),"checkPath"),uT=s(i=>tN.test(i),"isNotRelative");
tr.isNotRelative=uT;tr.convert=i=>i;var Rf=class{static{s(this,"Ignore")}constructor({ignorecase:e=!0,ignoreCase:t=e,allowRelativePaths:n=!1}={}){
Bo(this,pT,!0),this._rules=new Af(t),this._strictPathCheck=!n,this._initCache()}_initCache(){this._ignoreCache=Object.create(
null),this._testCache=Object.create(null)}add(e){return this._rules.add(e)&&this._initCache(),this}addPattern(e){return this.
add(e)}_test(e,t,n,r){let o=e&&tr.convert(e);return tr(o,e,this._strictPathCheck?mN:dT),this._t(o,t,n,r)}checkIgnore(e){
if(!nN.test(e))return this.test(e);let t=e.split(Wo).filter(Boolean);if(t.pop(),t.length){let n=this._t(t.join(Wo)+Wo,this.
_testCache,!0,t);if(n.ignored)return n}return this._rules.test(e,!1,fp)}_t(e,t,n,r){if(e in t)return t[e];if(r||(r=e.split(
Wo).filter(Boolean)),r.pop(),!r.length)return t[e]=this._rules.test(e,n,Ta);let o=this._t(r.join(Wo)+Wo,t,n,r);return t[e]=
o.ignored?o:this._rules.test(e,n,Ta)}ignores(e){return this._test(e,this._ignoreCache,!1).ignored}createFilter(){return e=>!this.
ignores(e)}filter(e){return lT(e).filter(this.createFilter())}test(e){return this._test(e,this._testCache,!0)}},Lf=s(i=>new Rf(
i),"factory"),fN=s(i=>tr(i&&tr.convert(i),i,dT),"isPathValid"),mT=s(()=>{let i=s(t=>/^\\\\\?\\/.test(t)||/["<>|\u0000-\u001F]+/u.
test(t)?t:t.replace(/\\/g,"/"),"makePosix");tr.convert=i;let e=/^[a-z]:\//i;tr.isNotRelative=t=>e.test(t)||uT(t)},"setup\
Windows");typeof process<"u"&&process.platform==="win32"&&mT();gp.exports=Lf;Lf.default=Lf;gp.exports.isPathValid=fN;Bo(
gp.exports,Symbol.for("setupWindows"),mT)});var fh=Um(mh=>{"use strict";Object.defineProperty(mh,"__esModule",{value:!0});mh.TypedEmitter=require("events").EventEmitter});var JO={};mF(JO,{ServerStarter:()=>_m,createCdsLanguageTestServer:()=>DO,formatCli:()=>tI,lspRoot:()=>We,ruleName:()=>it});
module.exports=fF(JO);var pn=require("node:path");var Ot="";function uI(i){return(0,pn.isAbsolute)(i)}s(uI,"path_isAbsolute");function ie(i){return(0,pn.dirname)(i)}s(ie,
"path_dirname");function w(...i){return(0,pn.resolve)(...i)}s(w,"path_resolve");function tt(i,e){return(0,pn.relative)(i,
e)}s(tt,"path_relative");function _t(...i){return(0,pn.join)(...i)}s(_t,"path_join");function mI(){return process.cwd()}s(mI,"process_cwd");var yF={filename:"/data/xmake/prod-build10210/w/ght-cap/ght-cap-cds-lsp-SP-REL-linuxx86_64_indirectshipment-linuxx86_64/\
gen/out/module/src/root.ts",dirname:"/data/xmake/prod-build10210/w/ght-cap/ght-cap-cds-lsp-SP-REL-linuxx86_64_indirectsh\
ipment-linuxx86_64/gen/out/module/src",relativefilename:"src/root.ts",relativedirname:"src"};var We=w(global.__lspBundleDirname??yF.dirname,"..");var Tt=class{static{s(this,"Environment")}static isProduction(e){return process.env.NODE_ENV!=="test"}};function bF(i){return`CDS_LSP_${i}_FEATURE`}s(bF,"featureEnvName");function fI(i,e){return Mm(bF(i))??e}s(fI,"isFeatureE\
nabled");function Mm(i){let e=process.env[i];if(e!==void 0){if(["off","false","0"].includes(e))return!1;if(["on","true",
"1"].includes(e))return!0}}s(Mm,"isEnabled");function Gn(i,e,t){return i?e():t}s(Gn,"fallback");var ac=H(require("node:async_hooks"));var oc=class{constructor(e){this.asyncId=e}asyncId;static{s(this,"ClsFrame")}},sc=class{constructor(e){this.clsFactory=e;
this.hook=ac.createHook({init:s((t,n,r,o)=>{let a=this.getFrame(r),l=this.getFrame(t,a);this.frames.set(t,l)},"init"),destroy:s(
t=>{this.frames.delete(t)},"destroy")}),this.hook.enable()}clsFactory;static{s(this,"ContinuationLocalStorage")}frames=new Map;hook;getFrame(e,t){
let n=this.frames.get(e);return n||(n=this.clsFactory.createFrame(e,t),this.frames.set(e,n)),n}currentFrame(){return this.
getFrame(ac.executionAsyncId())}};var hI=s(i=>"\x1B["+i+"m","makeAnsi"),di=s((i,e=i+20)=>{let t=hI(i),n=hI(e);return r=>t+r+n},"makeTypo"),gI=s((i,e=!1)=>t=>{
let l="\x1B["+(t+(i?30:40)+(e?60:0))+"m",c="\x1B["+(9+(i?30:40))+"m";return p=>l+p+c},"makeColorize"),TF=["black","red",
"green","khaki","blue","purple","petrol","lightgray"],SF=["darkgray","lightred","lightgreen","yellow","lightblue","magen\
ta","cyan","white"],II=s(i=>{let e={};return TF.forEach((t,n)=>{e[t]=gI(i,!1)(n)}),SF.forEach((t,n)=>{e[t]=gI(i,!0)(n)}),
e},"makeColors"),ui=II(!0),yI=II(!1),ce={fg:ui,bg:yI,intense:di(1,22),dim:di(2),italic:di(3),underline:di(4),blink:di(5),
inverse:di(7),strikethrough:di(9)},J={requestFromServer:ui.purple,responseToClient:ui.lightgreen,error:s(i=>ui.yellow(yI.
red(i)),"error"),warn:ui.yellow,info:ui.white,success:ui.green};function Z(i=""){return`\u25BB${i}\u25C5`}s(Z,"tagPrivateData");function bI(i){let e=/▻[^▻◅]*?◅/dgu,t="";do{t=i;
let n=[...i.matchAll(e)].reverse();for(let r of n){let[o,a]=r.indices[0];i=i.slice(0,o)+kF(i.slice(o,a))+i.slice(a)}}while(i!==
t);return i}s(bI,"hidePrivateData");function kF(i){let e="",t=/(?<!uri\()(?<protocol>(\b\w[\w-]{1,30}:))(?<privateData>\S+)(?<extension>\.\w+\b)/dgm,
n=[...i.replaceAll("-","_").matchAll(t)],r=/uri\(\w[\w-]{1,30}:[^)]*\)/dgm,o=[...i.matchAll(r)];o.forEach(c=>{c.isPrivateUri=
!0});let a=n.concat(o).sort((c,p)=>c.index-p.index);if(!a.length)return"\u2026";let l=1;for(let c of a)e+=i.slice(l,c.index).
replaceAll(/\w/g,"_"),l=c.index+c[0].length,c.isPrivateUri?e+=c[0]:e+=`uri(${c.groups.protocol}\u2026${c.groups.extension}\
)`;return e+=i.slice(l,i.length-1).replaceAll(/\w/g,"_"),e=e.replaceAll(/_{2,}/g,"\u2026"),e}s(kF,"keepNonPrivateUriPart\
s");var z=(p=>(p[p.invalid=0]="invalid",p[p.OFF=1]="OFF",p[p.INFRASTRUCTURE=2]="INFRASTRUCTURE",p[p.ERROR=3]="ERROR",p[p.
WARNING=4]="WARNING",p[p.INFO=5]="INFO",p[p.VERBOSE=6]="VERBOSE",p[p.DEBUG=7]="DEBUG",p[p.IGNORE=8]="IGNORE",p))(z||{}),
O=(N=>(N.ALL="*",N.ADAPTER="adapter",N.COMPLETION="completion",N.COMPILER="compiler",N.CONTRIBUTION="contribution",N.DOCUMENTATION=
"docs",N.FORMATTING="format",N.MODEL="model",N.MODEL_TODOS="model-todos",N.REFACTOR="refactor",N.REQUESTS="requests",N.SETTINGS=
"settings",N.UTIL="util",N.TELEMETRY="telemetry",N.WORKSPACE="workspace",N.FILES="files",N.PERSISTENCY="persistency",N.ENV=
"cdsenv",N.COMMAND="command",N.CONTEXT_LOG="context-log",N))(O||{});var cc="---> ",Hn="<--- ";function kr(i,{errorPredicate:e=!1,warnPredicate:t=!1,infoPredicate:n=!1,successPredicate:r=!1,
debugPredicate:o=!1}){return e?J.error(i):t?J.warn(i):r?J.success(i):n?J.info(i):o?ce.fg.darkgray(i):i}s(kr,"highlight");
var na=class{constructor(e=!1){this.warnPrinted=e}warnPrinted;static{s(this,"NoTracer")}printWarning(){this.warnPrinted||
(this.warnPrinted=!0,console.error(`
NoTracer was used!!!
${new Error().stack}`))}isTracing(e){return this.printWarning(),!1}debug(e){this.conditionalTrace(7,e)}verbose(e){this.conditionalTrace(
6,e)}info(e){this.conditionalTrace(5,e)}warn(e){this.conditionalTrace(4,e)}error(e){this.conditionalTrace(3,e)}footprint(e,t,n,r){
return t(...n)}conditionalTrace(e,t){this.printWarning()}},lc=class{constructor(e=new na){this._tracer=e}_tracer;static{
s(this,"NoTrace")}conditionalTrace(){}configure(){}doTraceToFile(){}noTraceDuring(e){return e()}renderMessage(e,t,n){return""}tracer(){
return this._tracer}extendedStat(){}extendedStatLater(){}cancelLaterStats(){}traceLevel(e){return 1}},uo=class{static{s(
this,"UnsupportedValue")}constructor(e){}};var pc=class{static{s(this,"SymbolData")}},Wm=class extends pc{static{s(this,"LspClsAppScope")}trace=new lc;statistics=new class extends Map{static{
s(this,"Statistics")}assembleReport(t){if(this.size===0)return;let n={type:"statistics",status:"report",trigger:t,...[...this.
entries()].reduce((r,[o,[a,l]])=>{let c=`${o}.average`;return r[c]=Math.round(a/l),r[`${o}.total`]=a,r},{})};return this.
clear(),n}}},dc=class extends pc{constructor(t,n){super();this.name=t;this.requestNumber=n}name;requestNumber;static{s(this,
"LspClsRequestScope")}abortSignal;snapshots=new Map},ra=class{static{s(this,"LspClsFrameScope")}indentLevel=0;constructor(e=0){
this.indentLevel=e}isTraceEnabled(){return this.indentLevel>=0}},uc=class extends oc{constructor(t,n,r,o){super(t);this.
appScope=n;this.frameScope=o,this.requestScope=r}appScope;static{s(this,"LspClsFrame")}requestScope;frameScope},Bm=class{static{
s(this,"LspFrameFactory")}appScope=new Wm;createFrame(e,t){return t?t.frameScope.isTraceEnabled()?new uc(e,t.appScope,t.
requestScope,new ra(t.frameScope.indentLevel)):t:new uc(e,this.appScope,new dc("<fromScratch>",-e),new ra)}},xF=new Bm,CF=new sc(
xF),q=s(()=>CF.currentFrame(),"currentFrame");function F(){return q().appScope.trace}s(F,"currentTrace");function Xm(i){
return q().appScope[i]}s(Xm,"current");function Vm(i,e){q().appScope[i]=e}s(Vm,"initCurrent");var TI=0,mo=s((i,e=TI)=>{TI++;
let t=q(),n=t.requestScope;return t.requestScope=new dc(i,e),t.frameScope=new ra,n},"startRequestScope");function SI(i){
return()=>{let e=q();e.requestScope=i}}s(SI,"endRequestScope");var Ee=require("node:fs"),Gm=require("node:os"),FI=require("node:path");var mc=require("node:path"),xr=require("node:util"),Qe=H(require("vscode-languageserver-protocol"));function kI(i){switch(i){case Qe.DocumentHighlightKind.Text:return"text";case Qe.DocumentHighlightKind.Read:return"read";case Qe.DocumentHighlightKind.
Write:return"writ";default:return J.error(`[E] <unknown kind> ${i}`)}}s(kI,"renderKind");function ia(i,e=70){return JSON.
stringify(i.length<=e?i:`${i.slice(0,e-3)}...`)}s(ia,"shorten");function xI(i){if(Qe.MarkupContent.is(i))return`${i.kind}\
: ${ia(i.value)}`;let e=s(t=>typeof t=="string"?ia(t):`[${t.language}] ${ia(t.value)}`,"renderMarkedString");return Array.
isArray(i)?ze(i.map(e)):e(i)}s(xI,"renderContents");function PF(i){return!!i?.range}s(PF,"isIncremental");var vF={[Qe.FileChangeType.
Created]:"Created",[Qe.FileChangeType.Deleted]:"Deleted",[Qe.FileChangeType.Changed]:"Changed"};function CI(i){if(i!==void 0)
switch(i){case Qe.DiagnosticSeverity.Error:return"Error";case Qe.DiagnosticSeverity.Warning:return"Warn";case Qe.DiagnosticSeverity.
Information:return"Info";case Qe.DiagnosticSeverity.Hint:return"Hint"}return"?"}s(CI,"renderSeverity");function AF(i=""){
return e=>RI(e,i)}s(AF,"makeRenderLocation");function PI(i){let e="";return i?.documentation&&(e=Qe.MarkupContent.is(i.documentation)?
i.documentation.value:i.documentation),`${i?.data?.providerName??J.warn("UnknownProvider")}: <${i.kind}> ${i.label} [${i.
commitCharacters||""}] ${ia(e)}`}s(PI,"renderCompletionItem");function vI(i,e=[]){let t={};for(let r of e){let o=r.lastIndexOf(
i)+1,a=r.slice(0,o),l=r.slice(o);(t[a]??=[]).push(l)}let n="";for(let r of Object.keys(t).sort()){let o=t[r];if(o.length===
1)n+=`
${r}${o[0]}`;else{let l=o.reduce((d,u)=>Math.max(d,u.length),0)+2,c=Math.floor(120/l);n+=`
${r}
`;let p=0;o.sort();for(let d of o)n+=`${d.padEnd(l)}${++p%c===0?`
`:""}`}}return n}s(vI,"renderPaths");function ze(i,e=""){return i?i.length?i.length===1?String(i[0]):`${i.reduce((t,n)=>`${t}\
${e} ${n}`,"[")}
${e}]`:"[]":""}s(ze,"arr");var AI=(j=>(j[j.File=1]="File",j[j.Module=2]="Module",j[j.Namespace=3]="Namespace",j[j.Package=
4]="Package",j[j.Class=5]="Class",j[j.Method=6]="Method",j[j.Property=7]="Property",j[j.Field=8]="Field",j[j.Constructor=
9]="Constructor",j[j.Enum=10]="Enum",j[j.Interface=11]="Interface",j[j.Function=12]="Function",j[j.Variable=13]="Variabl\
e",j[j.Constant=14]="Constant",j[j.String=15]="String",j[j.Number=16]="Number",j[j.Boolean=17]="Boolean",j[j.Array=18]="\
Array",j[j.Object=19]="Object",j[j.Key=20]="Key",j[j.Null=21]="Null",j[j.EnumMember=22]="EnumMember",j[j.Struct=23]="Str\
uct",j[j.Event=24]="Event",j[j.Operator=25]="Operator",j[j.TypeParameter=26]="TypeParameter",j))(AI||{});function qm(i,e=""){
return(e?"":`
`)+i.map(t=>FF(t,e)).join(`
`)+(e?"":`
`)}s(qm,"docSymbolsToString");function RF(i){let e=i.map(n=>(0,xr.inspect)(n,{compact:!0,maxStringLength:200,breakLength:200})),
t=e.reduce((n,r)=>n+r.length,0)>200;return e.join(t?`,
`:", ")}s(RF,"renderArgs");var I={array:s(i=>I.asIs(i),"array"),asIs:s(i=>(0,xr.inspect)(i,{depth:null,compact:!1}),"asI\
s"),args:RF,changeTextDoc:s(i=>`${i.textDocument.uri}#${i.textDocument.version} ${ze(i.contentChanges.map(wF))}`,"change\
TextDoc"),changeWatched:s(i=>ze(i.changes.map(e=>`${vF[e.type]||e.type} ${e.uri}`)),"changeWatched"),codeAction:s(i=>`${i.
textDocument.uri} ${I.range(i.range)}`,"codeAction"),codeActions:s(i=>ze(i.map(e=>`${e.title}: ${e.command?.command}(${I.
asIs(e.data)})`)),"codeActions"),codeLens:s(i=>ze(i.map(e=>`${e.command?.title}`)),"codeLens"),completionItem:PI,completionList:s(
i=>`${i.isIncomplete?"incomplete":""} ${ze(i.items.map(PI))}`,"completionList"),contents:xI,diags:s(i=>I.diagsWithIndent(
i),"diags"),diagsWithIndent:s((i,e="")=>ze(i.map(t=>`${CI(t.severity)} ${I.range(t.range)}: ${t.message}`),e),"diagsWith\
Indent"),docClosed:s(i=>i.textDocument.uri,"docClosed"),docHighlight:s(i=>`${kI(i.kind)}: ${I.range(i.range)}`,"docHighl\
ight"),docHighlights:s(i=>ze(i.map(I.docHighlight)),"docHighlights"),docOpened:s(i=>`${i.textDocument.uri}#${i.textDocument.
version} ${ia(i.textDocument.text,30)}`,"docOpened"),docSaved:s(i=>`${i.textDocument.uri}`,"docSaved"),docSymbolParams:s(
i=>i.textDocument.uri,"docSymbolParams"),docSymbolResult:EF,docSymbols:s(i=>qm(i),"docSymbols"),documentLink:s(i=>`${i.data}\
@${I.pos(i.range.start)} -> ${i.target}`,"documentLink"),documentLinkParams:s(i=>`${i.textDocument.uri}`,"documentLinkPa\
rams"),documentLinks:s(i=>ze(i.map(I.documentLink)),"documentLinks"),execCmd:s(i=>`(${JSON.stringify(i.arguments)})`,"ex\
ecCmd"),exception:s(i=>LF(i)&&i.stack?LI(i.stack):(0,xr.inspect)(i),"exception"),hov:s(i=>i?`${i.range?I.range(i.range):
""}: ${xI(i?.contents)}`:"","hov"),kind:kI,location:RI,locations:s(i=>ze(i.map(AF())),"locations"),localPaths:s((i=[])=>vI(
mc.sep,i),"localPaths"),map:s(i=>[...i.entries()].map(([e,t])=>`${e}:
${(0,xr.inspect)(t)}`).join(`
`),"map"),nothing:s(()=>"","nothing"),pos:s(i=>`[${i.line}:${i.character}]`,"pos"),range:s(i=>`[${i.start.line}:${i.start.
character}-${i.end.line}:${i.end.character}]`,"range"),ref:s(i=>`${i.textDocument.uri} ${I.pos(i.position)} ${i.context.
includeDeclaration?"withDecl":""}`,"ref"),result:s(i=>(0,xr.inspect)(i,{compact:!0,maxStringLength:200,breakLength:200}),
"result"),severity:CI,symbolInfos:s(i=>ze(i.map(e=>`${I.range(e.location.range).padEnd(14)} ${`${e.kind}`.padStart(2)} ${e.
name.padEnd(20)} (${e.containerName||"/"})`)),"symbolInfos"),symbolInfos_Uri:OF,symbolKind:s(i=>AI[i]??"<unknown symbol \
kind>","symbolKind"),textEdits:s(i=>`${ze(i.map(e=>`'${e.newText.replaceAll(`
`,`${"\\"}n`)}'${I.range(e.range)}`))}`,"textEdits"),textPos:s(i=>`${i.textDocument.uri} ${I.pos(i.position)}`,"textPos"),
uris:s((i=[])=>vI("/",i),"uris"),wsSymbol:s(i=>i.query,"wsSymbol"),direntsOrStrings:s(i=>i.length?typeof i[0]=="string"?
ze(i):I.dirEnts(i):"[]","direntsOrStrings"),dirEnts:s(i=>ze(i.map(I.dirEnt)),"dirEnts"),dirEnt:s(i=>`${I.dirEntType(i)} ${i.
name}`,"dirEnt"),dirEntType(i){return i.isFile()?"-":i.isDirectory()?"d":i.isSymbolicLink()?"l":i.isFIFO()?"p":i.isSocket()?
"s":i.isBlockDevice()?"b":i.isCharacterDevice()?"c":"?"},stats:s(i=>i?`${I.dirEntType(i)} ${i.mode.toString(8)} ${new Date(
i.mtimeMs).toISOString()} ${i.size} bytes`:"<undefined>","stats"),content:s(i=>`"${i.slice(0,10)}${i.length>10?`..." (${i.
length} bytes)`:'"'}`,"content"),telemetry:s(([i])=>`${i.type} - trigger: ${i.trigger}, status: ${i.status}`,"telemetry")};
function Jt(i,e=["Telemetry.ts","LspTrace.ts","Tracer.ts","TracingInterfaces.ts","TryCatch.ts"]){let t={};if(Error.captureStackTrace(
t,Jt),t.stack){let n=t.stack.split(/\r?\n/).filter(r=>!e.some(o=>r.includes(o)));return LI(n.slice(1,i+1).join(`
`))}return""}s(Jt,"stack");function LF(i){return!!i?.stack}s(LF,"isError");function FF(i,e){return`${e}${I.symbolKind(i.
kind)} ${i.name} ${I.range(i.selectionRange)} ${I.range(i.range)}${i.detail?` "${i.detail}"`:""}${i.children?.length?`
${qm(i.children,`${e} `)}`:""}`}s(FF,"docSymbolToString");function EF(i){return i?.length?Qe.DocumentSymbol.is(i[0])?qm(
i):I.symbolInfos(i):I.asIs(i)}s(EF,"renderDocSymbolResult");function NF(i){return i!==void 0?i:""}s(NF,"renderExists");function wF(i){
return`${PF(i)?I.range(i.range):""} ${NF(i?.rangeLength)}`}s(wF,"renderTextDocConChEv");function RI(i,e=""){let t=s(n=>e.
length?(0,mc.relative)(e,n):n,"relPath");return Qe.LocationLink.is(i)?`${t(i.targetUri)}${I.range(i.targetSelectionRange)}\
in ${I.range(i.targetRange)}`:`${t(i.uri)}${I.range(i.range)}`}s(RI,"renderLocation");function Cr(i,e,t=`${e}s`){return i===
1?e:t}s(Cr,"numerus");function OF(i,e){if(e<7){let t=i||[],n=t.reduce((r,o)=>r.add(o.location.uri),new Set);return`${t.length}\
symbols from ${n.size} ${Cr(n.size,"file")}`}return ze(i.map(t=>`${`${t.kind}`.padStart(2)} ${`(${t.containerName||"/"}\
)`.padEnd(40)} ${t.name.padEnd(20)} ${I.range(t.location.range).padEnd(14)} ${t.location.uri}`))}s(OF,"renderSymbolInfos\
_Uri");function Ae(i){return typeof i[0]=="string"?i[0]:I.asIs(i[0])}s(Ae,"firstArg");function mt(i){return e=>{try{let t=i.
split("."),n=t.shift(),r=e[Number(n)];for(let o=t.shift();o!==void 0;o=t.shift())r=r?.[o];return typeof r=="string"?r:I.
asIs(r)}catch(t){return`? ${t}`}}}s(mt,"specificArg");function LI(i,e=0){return i.split(/\r?\n/).slice(e).map(t=>t.replace(
We,Z(We))).join(`
`)}s(LI,"tagErrorStack");function fc(i){return(0,xr.stripVTControlCharacters)(i)}s(fc,"deansify");var _F=1,hc=class i{static{s(this,"LogFile")}_folder;fileDescriptor=0;_filePath;logId;constructor(e=`${process.pid}_${_F++}`,t=""){
let n=t+e;this.logId=n,this._folder=this.defaultFolder(),this._filePath=this.logFilePath(n),this.createFile()}createFile(){
try{this.fileDescriptor=(0,Ee.openSync)(this._filePath,"w+",511),this.appendRaw(`#!/usr/bin/env less -f -R
`),this.appendRaw(`${J.requestFromServer("---------- opened trace file")}
`),this.appendRaw(`${J.responseToClient(new Date().toISOString())}
`)}catch(e){this.logError(e)}}defaultFolder(){return w((0,Gm.tmpdir)(),"cdxlsp")}get folder(){return i.ensureFolderExists(
this._folder)}set folder(e){e&&(this._folder=e)}static ensureFolderExists(e){return(0,Ee.existsSync)(e)||(0,Ee.mkdirSync)(
e,{recursive:!0}),e}get filePath(){return this._filePath}logError(e){console.error(I.exception(e))}onceRenamed=!1;rename(e){
if(this.onceRenamed){this.append(`[w] LogFile.rename(id: ${this.logId} => ${e}) ignored`);return}this.onceRenamed=!0,this.
append(`LogFile.rename(id: ${this.logId} => ${e})`),this.logId=e;try{let t=this.logFilePath(this.logId);this._filePath!==
t&&((0,Ee.closeSync)(this.fileDescriptor),this.deleteOrphanedLogFiles(),ie(this._filePath)===ie(t)?(0,Ee.renameSync)(this.
_filePath,t):((0,Ee.copyFileSync)(this._filePath,t),(0,Ee.unlinkSync)(this._filePath)),this._filePath=t,this.fileDescriptor=
(0,Ee.openSync)(this._filePath,"a+"))}catch(t){this.logError(t)}}deleteOrphanedLogFiles(){}logFilePath(e){let t=`${e.replaceAll(
/[:/\\]/g,"_")}.log`;return DF(()=>w(this.folder,t),w((0,Gm.tmpdir)(),`cdxlsp_${t}`))}append(e){this.appendRaw(`${e}
`)}appendRaw(e){try{(0,Ee.appendFileSync)(this.fileDescriptor,e)}catch{}}close(){this.appendRaw(`
---------- closing trace file
`),(0,Ee.closeSync)(this.fileDescriptor),this.fileDescriptor=0}},fo=class i extends hc{static{s(this,"RotationLogFile")}static DEFAULT_MAX_FILE_SIZE=1e7;static DEFAULT_NUMBER_OF_FILES=3;_maxFileSize=i.
DEFAULT_MAX_FILE_SIZE;_numberOfFiles=i.DEFAULT_NUMBER_OF_FILES;currentFileNumber=0;currentFileCount=0;appendRaw(e){super.
appendRaw(e),this.currentFileCount+=e.length,this.currentFileCount>=this.maxFileSize&&this.rotateFile()}get numberOfFiles(){
return this._numberOfFiles}set numberOfFiles(e){e!==void 0&&(this._numberOfFiles=Math.max(2,e))}get maxFileSize(){return this.
_maxFileSize}set maxFileSize(e){e!==void 0&&(this._maxFileSize=Math.max(1e3,e))}logFilePath(e){return super.logFilePath(
`${e}.${this.currentFileNumber??0}`)}rotateFile(){try{let e=this._filePath;this.bumpFileNumber(),this._filePath=this.logFilePath(
this.logId),this.currentFileCount=0,this.appendRaw(`
----- continued in ${this._filePath}`),(0,Ee.closeSync)(this.fileDescriptor),this.fileDescriptor=(0,Ee.openSync)(this._filePath,
"w+"),this.currentFileCount=0,this.appendRaw(`----- continued from ${e}
`)}catch(e){this.logError(e)}}bumpFileNumber(){let e=(this.currentFileNumber+1)%(this.numberOfFiles+1);this.currentFileNumber=
e||1}deleteOrphanedLogFiles(){try{for(let e of this.findOrphanedFiles())this.renameAndUnlinkOrphanedFile(e)}catch(e){this.
logError(e)}}findOrphanedFiles(){let e=super.logFilePath(`${this.logId}.[0-9]+`),t=(0,FI.basename)(e),n=ie(e);return(0,Ee.readdirSync)(
n).filter(r=>r.match(t)).map(r=>w(n,r))}renameAndUnlinkOrphanedFile(e){let t=ie(e);if((0,Ee.statSync)(e).isFile()){let r=w(
t,`orphaned-${Math.floor(Math.random()*1e4)}`);(0,Ee.renameSync)(e,r),(0,Ee.unlinkSync)(r)}else this.appendRaw(`Orphaned\
but not a file: ${e}`)}},gc=class extends hc{static{s(this,"ContextLogFile")}get enabled(){return Tt.isProduction()}constructor(){
super(void 0,"context")}createFile(){this.enabled&&super.createFile()}appendRaw(e){this.enabled&&super.appendRaw(e)}rename(e){
this.enabled&&super.rename(e)}};function DF(i,e){try{return i()}catch{return e}}s(DF,"tryCatch");var EI=require("node:crypto");function ho(i){return Object.entries(i??{})}s(ho,"entries");function Ic(i){return Object.entries(i??{})}s(Ic,"entries2");
function Zt(i){return JSON.parse(i)}s(Zt,"parseJson");function go(i){return(0,EI.createHash)("sha256").update(i).digest(
"hex")}s(go,"sha256");function mi(i){return UF(i)}s(mi,"calculateHashDigest");function UF(i){let e=5381,t=2166136261,n=i.
length;for(;n;){let r=i.charCodeAt(--n);e=e*33^r,t=(t^r)*16777619}return`${e>>>0}/${t>>>0}`}s(UF,"hash");var jm=require("node:util");function _(i,e){return i??e}s(_,"ensure");var NI=new Set;function Io(i,e){NI.has(i)||(NI.add(i),e())}s(Io,"once");var dn=class extends Error{static{s(this,"AbortError")}constructor(e){super(e),this.name="AbortError"}},$F=0,yo=class extends AbortController{static{
s(this,"CdsAbortController")}constructor(e){super();let t=q().requestScope;t.abortSignal=this.signal,this.signal.id=$F++,
this.signal.originalRequestNumber=e,this.signal.requestNumber=t.requestNumber;let n=this.signal.throwIfAborted.bind(this.
signal);this.signal.throwIfAborted=()=>{if(!this.signal.aborted)return;this.signal.wasAborted=!0;let r=_(new Error().stack?.
split(`
`),[]),o=r[2]?.includes("at throwIfAborted")?r[3]?.trim():r[2]?.trim();o&&(this.signal.reason.message+=`, request #${this.
signal.requestNumber} stopped here: ${o}`),n()}}};async function MF(){return new Promise(i=>{setImmediate(()=>i(void 0))})}
s(MF,"preempt");async function lt(i){i&&(await MF(),i.throwIfAborted())}s(lt,"throwIfAborted");var sa=1024*1024,wI=1e3*1e3;function OI(i){return Math.abs(i)>=sa?`${Math.round(i/sa)}~M`:`${Math.round(i/1024)}~K`}s(OI,
"memoryUnit");var oa=[{unit:"ns",factor:1n},{unit:"us",factor:BigInt(1e3)},{unit:ce.fg.yellow("ms"),factor:BigInt(1e6)},
{unit:ce.fg.lightred("s"),factor:BigInt(1e9)},{unit:ce.fg.lightred("min"),factor:BigInt(6e10)}];function Hm(i){let e=s(()=>{
let o=oa.findIndex((l,c)=>{let p=oa[c+1];return p?i<2n*p.factor:!0}),a=o===oa.length-1;return[oa[o],a?oa[o-1]:void 0]},"\
getScales"),[t,n]=e(),r=`${i/t.factor} ${t.unit}`;return n&&(r+=` ${i%t.factor/n.factor} ${n.unit}`),kr(r,{errorPredicate:i>
1e3*wI,warnPredicate:i>200*wI,successPredicate:i<0})}s(Hm,"renderElapsedNanos");var _I=s(()=>global.gc?.({type:"minor"}),
"gc"),bo=class{static{s(this,"Stopwatch")}startTime;startMemory;constructor(e=!1){e&&(_I(),this.startMemory=process.memoryUsage()),
this.startTime=process.hrtime.bigint()}get elapsedNanos(){return process.hrtime.bigint()-this.startTime}get elapsed(){return this.
elapsedMemory()+Hm(this.elapsedNanos)}elapsedMemory(){if(!this.startMemory)return"";_I();let e=process.memoryUsage(),t=s(
(n,r=!0)=>{let o=e[n],a=r?"":this.diffMemory(o-this.startMemory[n]),l=kr(OI(o),{errorPredicate:o>200*sa,warnPredicate:o>
100*sa});return`${n}${a}=${l} `},"diff");return`${t("rss")}${t("external")}${t("heapUsed",!1)}`}diffMemory(e){if(e!==0){
let t=OI(e);return kr((e>0?"+":"")+t,{errorPredicate:e>20*sa,successPredicate:e<0})}return""}};function yc(i){return new Promise(
e=>setTimeout(e,i))}s(yc,"sleep");function WF(i){return(e,t,n)=>{try{let r=i(e,t,n);return typeof r=="string"?r:(0,jm.inspect)(r)}catch(r){let o=r;return J.
error(`[E] argument rendering failed with: ${o.message}
${I.args(e)}`)}}}s(WF,"SafeArgs");function BF(i){return(e,t,n,r)=>{try{let o=i(e,t,n,r);return typeof o=="string"?o:(0,jm.inspect)(
o)}catch(o){let a=o;return J.error(`[E] result rendering failed with: ${a.message}
${I.result(e)}`)}}}s(BF,"SafeResult");var bc=class extends na{constructor(t,n){super();this.component=t;this.tracerAdapter=
n}component;tracerAdapter;static{s(this,"Tracer")}isTracing(t){return this.tracerAdapter.traceLevel(this.component)>=t}footprint(t,n,r,o){
let a="<unknown>",l=o.startScope||o.scope||a,c=o.endScope||o.scope||a;o.onlyTraceEndIfTakesLongerMs&&(o.onlyTraceEnd=!0);
let p=this.tracerAdapter.traceLevel(this.component),d=o.traceLevel??5,u=p>=d,f=p>=6,h=BF(o.resultRenderer??I.result),g=WF(
o.argumentsRenderer??(f?I.args:I.nothing)),b=new bo(o.trackMemory),P=this.tracerAdapter.indentLevel,v=s(()=>{q().frameScope.
indentLevel=P},"rebaseIndent"),R=this;function E(U,B){if(v(),u&&!o.onlyTraceStart){let G=b.elapsedNanos;o.onlyTraceEndIfTakesLongerMs?
o.onlyTraceEndIfTakesLongerMs*1e6<G&&R.conditionalTrace(d,()=>`}${B?"~":""} ${c} [${J.warn(b.elapsed)}] ${f?`(${g(r,t,d)}\
)`:""}${f?` => ${h(U,r,t,p)}`:""}`):R.conditionalTrace(d,()=>`}${B?"~":""} ${c} [${b.elapsed}] ${f?` => ${h(U,r,t,p)}`:""}`)}
return U}s(E,"onSuccess");function N(U,B){v();let G=I.exception(U);throw U instanceof dn?R.info(()=>`}${B?"~":""} | CA\
NCELED: ${c} [${b.elapsed}] => ${d<=5?G.split(/\r?\n/)[0]:G}`):R.error(()=>`}${B?"~":""} [E] ${c} [${b.elapsed}] => ${G}`),
U}s(N,"onError");try{u&&!o.onlyTraceEnd&&this.conditionalTrace(d,()=>`${l} ${f?`(${g(r,t,d)})`:""} {`),this.tracerAdapter.
increaseIndent();let U=n(...r),B=U;return B?.then?(v(),B.then(G=>E(G,!0)).catch(G=>N(G,!0))):E(U,!1)}catch(U){return N(U,
!1)}}conditionalTrace(t,n){this.tracerAdapter.conditionalTrace(this.component,t,n)}};var XF=Object.keys(O).reduce((i,e)=>Math.max(i,e.length),0),DI={},VF=s(i=>DI[i]??(DI[i]="".padEnd(i*3)),"paddingFor"),KF={
1:"[-]",2:ce.fg.magenta("[:]"),3:J.error("[E]"),4:J.warn("[w]"),5:J.info(" | "),6:" : ",7:ce.fg.darkgray(" . ")},To=class i{static{
s(this,"LspTrace")}logFile;extendedStatsLogFile;onError;traceComponents=new Map([["*",6]]);constructor(){this.logFile=new fo,
this.extendedStatsLogFile=new gc;let e=qF();this.configureRotation(e.maxSize,e.count),this.configureTraceComponents([...zm().
entries()].map(([t,n])=>({name:t,level:n})))}get indentLevel(){return q().frameScope.indentLevel}increaseIndent(){let e=q().
frameScope;e.isTraceEnabled()&&(e.indentLevel+=1)}decreaseIndent(){let e=q().frameScope;e.isTraceEnabled()&&(e.indentLevel-=
1,e.indentLevel<0&&(e.indentLevel=0,this.doTraceToFile("!!! Indent underflow")))}traceLevel(e){return this.traceComponents.
get(e)||this.traceComponents.get("*")||1}get logfilename(){return this.logFile.filePath}configureFolder(e){e&&(this.logFile.
folder=e,this.extendedStatsLogFile.folder=e)}configureName(e){if(e){let t=e.length<=60?e:`${e.slice(0,40)}_${mi(e).replaceAll(
/[/\\]/g,"_")}`;this.logFile.rename(t),this.extendedStatsLogFile.rename(`${t}_context`)}}configureRotation(e,t){typeof e==
"number"&&(this.logFile.maxFileSize=e),typeof t=="number"&&(this.logFile.numberOfFiles=t),this.doTrace(2,"util",()=>`New\
trace files configuration:
files <= ${t}
size <= ${e}`)}configureTraceComponents(e){let t=this.traceComponents,n=this.traceLevel("util");if(Array.isArray(e)){
t.clear();for(let o of e){let a=o.name;a==="*"&&t.clear(),t.set(a,i.toTraceLevel(o.level))}if(Math.max(n,this.traceLevel(
"util"))>=2){this.doTrace(2,"util",()=>"New trace component configuration: ");for(let[o,a]of t.entries())this.doTrace(2,
"util",()=>` ${o} = ${z[a]}`)}}}configure(e){this.configureFolder(e.folder),this.configureName(e.name),this.conditionalTrace(
"util",2,()=>`(current logs in ${this.logFile.filePath})`)}tracers=new Map;tracer(e){let t=this.tracers.get(e);return t||
(t=new bc(e,this),this.tracers.set(e,t)),t}async noTraceDuring(e){return s(async()=>{let{indentLevel:n}=q().frameScope;try{
return q().frameScope.indentLevel=-1,await e()}finally{q().frameScope.indentLevel=n}},"wrapper")()}conditionalTrace(e,t,n){
if(t===3&&this.onError){let o=n(),a=o.includes(" at ");this.onError(`${q().requestScope.name} {${e}} ${a?o:`${o}
${Jt(6)}`}`)}this.traceLevel(e)<t||!q().frameScope.isTraceEnabled()||this.doTrace(t,e,n)}doTrace(e,t,n){if(t==="context-\
log")this.extendedStatsLogFile?.appendRaw(n());else{let r=this.renderMessage(e,t,n);this.doTraceMessage(r)}}useAbsoluteStartTime=Mm(
"CDS_LSP_TRACE_ABSOLUTE_TIMES");startTime=this.useAbsoluteStartTime?0:Date.now();lastTimeTraced=Date.now();renderMessage(e,t,n){
let r=n(),o=this.traceLevel("requests")>=6,a=s(b=>{let P=b%1e3,v=Math.floor(b/1e3),R=v%60,E=Math.floor(v/60),N=E%60,U=Math.
floor(E/60),B=U?`${U}:`:" ",G=N||U?`${String(N).padStart(2,"0")}:`:" ",Fe=String(R).padStart(2,U||N?"0":" ");return`${B}${G}${Fe}\
.${String(P).padStart(3,"0")}`},"millisToTime"),l=0,c=s(()=>{let b=new Date,P=b.getTime(),v=P-this.lastTimeTraced;this.lastTimeTraced=
P;let R=this.useAbsoluteStartTime?b.toISOString():a(P-this.startTime);if(l=R.length,t==="requests"){if(r.startsWith(cc))
return J.requestFromServer(R);if(r.includes(Hn))return J.responseToClient(R)}return kr(R,{errorPredicate:v>5e3})},"color\
izedTime"),p=0;function d(){let b=`{${t}}`.padEnd(XF+2),P=31,{name:v,requestNumber:R,snapshots:E}=q().requestScope,N="";
if(o&&E){let G=[];for(let Fe of E.values())Fe.constructor.name!=="NonScanningWorkspaceSnapshot"&&G.push(Fe.workspaceVersion);
N=`/${G.join(",")}`}let U=kr(v.padEnd(P),{warnPredicate:v.startsWith("@")}),B=`${R}${N}`.padStart(o?11:5);return p=6+B.length+
U.length+b.length,`${B}:${U} ${KF[e]??"???"} ${b}`}s(d,"colorizedContext");let u=VF(this.indentLevel),f=`${c()} ${d()} ${u}`,
h=2+l+p+u.length;function g(){let b=r;if(b.includes(`
`)){let P=" ".repeat(h),v=s((R,E,N)=>`${R}${N>0?P:""}${E}
`,"appendIndented");b=b.split(/\r?\n/g).reduce(v,"")}return kr(b,{errorPredicate:e===3,warnPredicate:e===4,infoPredicate:e===
5,debugPredicate:e===7})}return s(g,"colorizedMessage"),`${f}${g()}`}doTraceMessage(e){this.doTraceToFile(e)}doTraceToFile(e){
this.logFile&&this.logFile.append(e)}static toTraceLevel(e){switch(e){case"off":return 1;case"error":return 3;case"warni\
ng":return 4;case"info":return 5;case"verbose":return 6;case"debug":return 7;default:return 1}}};function zm(){return _(
process.env.CDS_LSP_TRACE_COMPONENTS,"").split(",").filter(e=>e.trim()).reduce((e,t)=>{let[n,r]=t.split(":").map(o=>o.trim());
return n==="*"&&e.clear(),e.set(n,r),e},new Map)}s(zm,"getRawTraceComponents");function qF(){return{count:UI(process.env.
CDS_LSP_TRACE_FILES_COUNT??"",1,10,fo.DEFAULT_NUMBER_OF_FILES),maxSize:UI(process.env.CDS_LSP_TRACE_FILES_MAXSIZE??"",1e7,
1e9,fo.DEFAULT_MAX_FILE_SIZE)}}s(qF,"getTraceFilesConfig");function UI(i,e,t,n){return Math.max(Math.min(Number.parseInt(
i,10)||n,t),e)}s(UI,"canonicalizeNumber");function y(i,e={}){let t=Tt.isProduction();return(n,r)=>{if(!Qm.isTracing(i,e.traceLevel??5))return n;e.scope||=r.name;let o,
a=s(()=>(t&&o||(o=F().tracer(i)),o),"getTracer");return s(function(...c){return a().footprint(this,n.bind(this),c,e)},"F\
ootprintDecorator")}}s(y,"Footprint");var Qm=class i{static{s(this,"ConfiguredTraceComponents")}static _rawTraceComponents;static get rawTraceComponents(){
return i._rawTraceComponents||(i._rawTraceComponents=zm()),i._rawTraceComponents}static isTracing(e,t){let n=i.rawTraceComponents.
get(e)??i.rawTraceComponents.get("*")??"off";return To.toTraceLevel(n)>=t}};var $I=require("node:path"),MI=require("node:util"),ae=H(require("vscode-languageserver-protocol"));function aa(i){return[".csn",".json"].includes((0,$I.extname)(i))}s(aa,"isCsn");var GF=s(()=>({start:{line:0,character:0},
end:{line:0,character:0}}),"csnFallbackLocation"),un=class{static{s(this,"RangeAdapter")}static adapt(e){return aa(e.file)&&
!e.treatAsIs?GF():{start:{line:e.line-1,character:e.col-1},end:{line:e.endLine?e.endLine-1:e.line-1,character:e.endCol?e.
endCol-1:e.col-1}}}};function Qn(i){return un.adapt(i)}s(Qn,"adaptRange");function Jm(i){return Ym.adapt(i)}s(Jm,"adaptC\
ompletionKind");var HF=new Map([["context",ae.CompletionItemKind.Unit],["element",ae.CompletionItemKind.Field],["entity",
ae.CompletionItemKind.Class],["namespace",ae.CompletionItemKind.Module],["source",ae.CompletionItemKind.File],["type",ae.CompletionItemKind.
Interface]]),Ym=class{static{s(this,"CompletionKindAdapter")}static adapt(e){return HF.get(e)??ae.CompletionItemKind.Variable}};
function Zm(i){return{start:{line:i.start.line,character:i.start.character},end:{line:i.end.line,character:i.end.character}}}
s(Zm,"deepCloneRange");var zn=class{static{s(this,"SeverityAdapter")}static adapt(e){switch(e){case"Error":return ae.DiagnosticSeverity.
Error;case"Warning":return ae.DiagnosticSeverity.Warning;case"Info":return ae.DiagnosticSeverity.Information;default:return ae.DiagnosticSeverity.
Hint}}};function St(){return Object.create(null)}s(St,"empty");var jF=new Map([[ae.SymbolKind.Module,ae.CompletionItemKind.
Module],[ae.SymbolKind.Namespace,ae.CompletionItemKind.Unit],[ae.SymbolKind.Package,ae.CompletionItemKind.Unit],[ae.SymbolKind.
Class,ae.CompletionItemKind.Class],[ae.SymbolKind.Field,ae.CompletionItemKind.Field],[ae.SymbolKind.Interface,ae.CompletionItemKind.
Interface],[ae.SymbolKind.Function,ae.CompletionItemKind.Function],[ae.SymbolKind.Variable,ae.CompletionItemKind.Variable],
[ae.SymbolKind.Object,ae.CompletionItemKind.Method],[ae.SymbolKind.EnumMember,ae.CompletionItemKind.EnumMember],[ae.SymbolKind.
Event,ae.CompletionItemKind.Event],[ae.SymbolKind.TypeParameter,ae.CompletionItemKind.TypeParameter],[ae.SymbolKind.String,
ae.CompletionItemKind.Text]]);function WI(i){return jF.get(i)??ae.CompletionItemKind.Text}s(WI,"toCompletionKind");function Tc(i,e){
if(!(i instanceof e))throw new TypeError}s(Tc,"assertsType");function Sc(i,e="argument is undefined or null",t={},n=3){if(i==
null)throw new TypeError(`${e}: ${(0,MI.inspect)(t,{depth:n})}`)}s(Sc,"assertExists");function zF(i){return i.toLowerCase()===
i?i.toUpperCase():i.toLowerCase()}s(zF,"toggleCase");function kc(i){return zF(i[0])+i.slice(1)}s(kc,"toggleDriveLetter");var BI=require("node:util");var Pr=class extends Array{static{s(this,"SafeArray")}get(e){let t=this[e];if(t!==void 0)return t;throw this.length===0?
new Error(`index ${e} is out of bounds, array is empty`):e<0||e>=this.length?new Error(`index ${e} is out of bounds [0..\
.${this.length-1}]`):new Error("element is undefined")}init(e){return this.length=0,this.push(...e),this}};function So(i,e,t,n=0,r=i.
length-1){if(n>r)return;let o=Math.floor((n+r)/2),a=t(i[o],e);return a===0?i[o]:a>0?So(i,e,t,n,o-1):So(i,e,t,o+1,r)}s(So,
"binSearch");function xc(i){return i?Array.isArray(i)?i:[i]:[]}s(xc,"flatten");function Yn(i,e,t){for(let n=e-1;n>=0;n--){
let r=i[n];if(r&&(!t||t(r)))return r}}s(Yn,"previous");function ko(i,e,t){for(let n=e+1;n<i.length;n++){let r=i[n];if(r&&
(!t||t(r)))return r}}s(ko,"next");function XI(i){return i?.[0]}s(XI,"first");function pe(i){return i?.[i.length-1]}s(pe,"last");function Cc(i,e,t,n=!0){return i[e]===void 0&&(i[e]=t()),n||Object.defineProperty(
i,e,{enumerable:!1}),i[e]}s(Cc,"getOrCreate");function VI(i,e){if(i==null)throw new TypeError(`${e()}: Value is null or \
undefined`);return i}s(VI,"ensureExists");function Kt(i,e){if(!i)throw new Error(e())}s(Kt,"assertTrue");function Pc(i,e){
if(i)throw new Error(e())}s(Pc,"assertFalse");function kt(i,...e){return()=>e.length>0?i.replace(/\{(\d+)}/g,(t,n)=>(0,BI.inspect)(
e[Number(n)])):i}s(kt,"lazyString");var KI=new Set,qI=s(i=>Cc(i,"__CACHES",()=>new Map,!1),"cachesFor"),xo=s((i,e)=>{let t=qI(i),n=t.get(e);return n||(n=new Map,
t.set(e,n),KI.add(n)),n},"cacheFor");function D(i={}){return i.key||=e=>e[0],i.doNotCacheUndefined||=!1,(e,t)=>s(function(...r){
let o=xo(this,String(t.name)),a=i.key(r);if(!o.has(a)){let l=e.apply(this,r);(l!==void 0||!i.doNotCacheUndefined)&&o.set(
a,l)}return o.get(a)},"CacheDecorator")}s(D,"Cache");D.clear=(i,e)=>{if(i)e?xo(i,e).clear():qI(i).clear();else{if(e)throw new Error(
`Clearing method cache '${e}' requires an instance`);for(let t of KI)t.clear()}};D.set=(i,e,t,n)=>{xo(i,e).set(t,n)};D.get=
(i,e,t)=>xo(i,e).get(t);var Rc=H(require("node:child_process"));var Ac=class extends Error{constructor(t,n){let r=Gn(n.exitCode!==0,()=>`
<exit code:>
${n.exitCode}`,""),o=Gn(n.stdout,()=>`
<stdout:>
${n.stdout}`,""),a=Gn(n.stderr,()=>`
<stderr:>
${n.stderr}`,"");super(t+r+o+a);this.result=n}result;static{s(this,"CliError")}},GI,HI,vc;HI=[y("util",{argumentsRenderer:s(
e=>`<<${++Dt._currentlyRunning}>> ${I.args(e)}`,"argumentsRenderer"),resultRenderer:s((e,t)=>`<<${--Dt._currentlyRunning}\
>> ${I.args(t)} => ${I.result(e)}`,"resultRenderer")})],GI=[y("util",{argumentsRenderer:s(e=>`<<${++Dt._currentlyRunning}\
>> ${I.args(e)}`,"argumentsRenderer"),resultRenderer:s((e,t)=>`<<${--Dt._currentlyRunning}>> ${I.args(t)} => ${I.result(
e)}`,"resultRenderer")})];var Dt=class Dt{constructor(){}static streamIntoResult(e,t,n,r="utf8"){return new Promise((o,a)=>{
e.setEncoding(r),e.on("data",l=>{t[n]+=l}),e.on("end",()=>o(t[n])),e.on("error",a)})}static async run(e,t,n={failIfNonZeroExit:!0}){
n.shell=!0;let r=Rc.spawn(e,t,n);r.stdin.end();let o={stdout:"",stderr:"",exitCode:1},a=s(()=>{o.stdout=o.stdout.trim(),
o.stderr=o.stderr.trim()},"trimResult"),l=Dt.streamIntoResult(r.stdout,o,"stdout"),c=Dt.streamIntoResult(r.stderr,o,"std\
err"),p=new Promise((d,u)=>{r.on("error",u),r.on("close",(f,h)=>{a(),o.exitCode=h??f,h||f!==0&&n.failIfNonZeroExit?u(new Ac(
`Failed: ${e} ${t.join(" ")}`,o)):d(o)})});return await Promise.allSettled([l,c,p]),p}static runSync(e,t,n={encoding:"ut\
f8"}){n.shell=!0,n.encoding="utf8";let r=Rc.spawnSync(e,t,n),o={stdout:"",stderr:"",exitCode:1};if(o.stdout=r.stdout.trim(),
o.stderr=r.stderr.trim(),o.exitCode=r.signal??r.status??0,r.error)throw r.error;if(r.signal||r.status!==0&&n.failIfNonZeroExit)
throw new Ac(`Failed: ${e} ${Z(t.join(" "))}`,o);return o}};vc=x(null),m(vc,9,"run",HI,Dt),m(vc,9,"runSync",GI,Dt),k(vc,
Dt),S(vc,3,Dt),s(Dt,"CLI"),T(Dt,"_currentlyRunning",0);var Fn=Dt;function Lc(...i){return e=>{for(let t of i)if(!t(e))return!1;return!0}}s(Lc,"And");function fi(i,e){let t=i.uri.localeCompare(e.uri);return t!==0?Math.sign(t):(t=nt(i.range.start,e.range.start),t!==0?t:nt(
i.range.end,e.range.end))}s(fi,"compareLocations");function nt(i,e){let t=i.line-e.line;return Math.sign(t!==0?t:i.character-
e.character)}s(nt,"comparePosition");function Co(i,e){let t=nt(i.start,e);return t>0?1:t===0?0:nt(i.end,e)<0?-1:0}s(Co,"\
compareRange");var jI=Symbol("languageServer"),zI=Symbol("factory");function M(){return Xm(jI)}s(M,"currentLanguageServer");function QI(i){
Vm(jI,i)}s(QI,"initLanguageServer");function $(){return Xm(zI)}s($,"currentFactory");function QF(i){Vm(zI,i)}s(QF,"initF\
actory");var Po=s(i=>{QF(i);let e=i.getTrace();return q().appScope.trace=e,e},"startAppScope");var vr=require("node:fs"),JI=require("node:os"),tf=require("node:util");var YI,ef;YI=[y("util",{scope:"installEmergencyHooks"})];var la=class la{constructor(e=F()){this.trace=e;S(ef,5,this);T(
this,"emergencyHooksInstalled",!1)}trace;install(){if(this.emergencyHooksInstalled){this.trace.tracer("util").warn(()=>"\
Ignored: hooks already attached");return}this.emergencyHooksInstalled=!0,process.on("uncaughtException",this.onUncaughtException.
bind(this)),process.on("unhandledRejection",this.onUnhandledRejection.bind(this)),process.on("exit",e=>this.onExit(e)),process.
on("warning",this.onWarning.bind(this))}onUncaughtException(e){this.trace.conditionalTrace("util",3,()=>`SEVERE: uncaugh\
tException: ${I.exception(e)}`)}onUnhandledRejection(e,t){this.trace.conditionalTrace("util",3,()=>`Unhandled Rejection \
at: ${(0,tf.inspect)(t,!0,4)} reason: ${e}`)}onExit(e){this.trace.conditionalTrace("util",2,()=>`CDS-LS will exit now wi\
th code ${e}`);let t={title:process.title,argv:process.argv,execArgv:process.execArgv,execPath:process.execPath,debugPort:process.
debugPort,version:process.version,arch:process.arch,platform:process.platform,release:process.release,exitCode:process.exitCode,
uptime:process.uptime(),env:process.env,mainModule:process.mainModule},n=`
----- ${new Date().toISOString()}
pid: ${process.pid} <- ${process.ppid}
memory:
${JSON.stringify(process.memoryUsage(),null,2)}
available: ${process.availableMemory()}
constrained: ${process.constrainedMemory()}
resource usage:
${JSON.stringify(process.resourceUsage(),null,2)}
exited with code ${e}:
${new Error().stack?.split(/\r?\n/).slice(1).join(`
`)}
process details:
${(0,tf.inspect)(t)}
`;this.trace.doTraceToFile(n);let r=w((0,JI.tmpdir)(),"cdxlsp/exitInfos.txt");(0,vr.existsSync)(r)&&(0,vr.statSync)(r).mtime.
toDateString()!==new Date().toDateString()&&(0,vr.rmSync)(r),(0,vr.appendFileSync)(r,n)}onWarning(e){this.trace.doTraceToFile(
this.trace.renderMessage(2,"util",()=>`Process warning (${e.name}): ${e