@sap/cds-lsp
Version:
Language server for CDS
407 lines (403 loc) • 546 kB
JavaScript
"use strict";var ig=Object.create;var _r=Object.defineProperty;var og=Object.getOwnPropertyDescriptor;var _A=Object.getOwnPropertyNames;var UA=Object.getPrototypeOf,$A=Object.prototype.hasOwnProperty;var sg=(i,e)=>(e=Symbol[i])?e:Symbol.for("Symbol."+i),Ri=i=>{throw TypeError(i)};var ag=(i,e,t)=>e in i?_r(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t;var s=(i,e)=>_r(i,"name",{value:e,configurable:!0});var lg=(i,e)=>()=>(e||i((e={exports:{}}).exports,e),e.exports),MA=(i,e)=>{for(var t in e)_r(i,t,{get:e[t],enumerable:!0})},
cg=(i,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of _A(e))!$A.call(i,r)&&r!==t&&_r(i,r,{get:()=>e[r],
enumerable:!(n=og(e,r))||n.enumerable});return i};var J=(i,e,t)=>(t=i!=null?ig(UA(i)):{},cg(e||!i||!i.__esModule?_r(t,"default",{value:i,enumerable:!0}):t,i)),WA=i=>cg(_r(
{},"__esModule",{value:!0}),i);var C=i=>[,,,ig(i?.[sg("metadata")]??null)],pg=["class","method","getter","setter","accessor","field","value","get","set"],
os=i=>i!==void 0&&typeof i!="function"?Ri("Function expected"):i,BA=(i,e,t,n,r)=>({kind:pg[i],name:e,metadata:n,addInitializer:o=>t.
_?Ri("Already initialized"):r.push(os(o||null))}),k=(i,e)=>ag(e,sg("metadata"),i[3]),x=(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},f=(i,e,t,n,r,o)=>{var a,l,c,p,u,d=e&7,m=!!(e&8),h=!!(e&
16),I=d>3?i.length+1:d?m?1:2:0,T=pg[d+5],P=d>3&&(i[I-1]=[]),v=i[I]||(i[I]=[]),w=d&&(!h&&!m&&(r=r.prototype),d<5&&(d>3||!h)&&
og(d<4?r:{get[t](){return Jn(this,o)},set[t](O){return ss(this,o,O)}},t));d?h&&d<4&&s(o,(d>2?"set ":d>1?"get ":"")+t):s(
r,t);for(var R=n.length-1;R>=0;R--)p=BA(d,t,c={},i[3],v),d&&(p.static=m,p.private=h,u=p.access={has:h?O=>XA(r,O):O=>t in
O},d^3&&(u.get=h?O=>(d^1?Jn:VA)(O,r,d^4?o:w.get):O=>O[t]),d>2&&(u.set=h?(O,D)=>ss(O,r,D,d^4?o:w.set):(O,D)=>O[t]=D)),l=(0,n[R])(
d?d<4?h?o:w[T]:d>4?void 0:{get:w.get,set:w.set}:r,p),c._=1,d^4||l===void 0?os(l)&&(d>4?P.unshift(l):d?h?o=l:w[T]=l:r=l):
typeof l!="object"||l===null?Ri("Object expected"):(os(a=l.get)&&(w.get=a),os(a=l.set)&&(w.set=a),os(a=l.init)&&P.unshift(
a));return d||k(i,r),w&&_r(r,t,w),h?d^4?o:w:r},S=(i,e,t)=>ag(i,typeof e!="symbol"?e+"":e,t),$d=(i,e,t)=>e.has(i)||Ri("Ca\
nnot "+t),XA=(i,e)=>Object(e)!==e?Ri('Cannot use the "in" operator on this value'):i.has(e),Jn=(i,e,t)=>($d(i,e,"read fr\
om private field"),t?t.call(i):e.get(i)),ug=(i,e,t)=>e.has(i)?Ri("Cannot add the same private member more than once"):e instanceof
WeakSet?e.add(i):e.set(i,t),ss=(i,e,t,n)=>($d(i,e,"write to private field"),n?n.call(i,t):e.set(i,t),t),VA=(i,e,t)=>($d(
i,e,"access private method"),t);var Ky=lg((yU,Fm)=>{function Xy(i){return Array.isArray(i)?i:[i]}s(Xy,"makeArray");var HR=void 0,Pm="",Wy=" ",Cm="\\",KR=/^\s+$/,
zR=/(?:[^\\]|^)\\$/,jR=/^\\!/,QR=/^\\#/,JR=/\r?\n/g,YR=/^\.{0,2}\/|^\.{1,2}$/,ZR=/\/$/,Qi="/",Vy="node-ignore";typeof Symbol<
"u"&&(Vy=Symbol.for("node-ignore"));var qy=Vy,Cs=s((i,e,t)=>(Object.defineProperty(i,e,{value:t}),t),"define"),eL=/([0-z])-([0-z])/g,
Gy=s(()=>!1,"RETURN_FALSE"),tL=s(i=>i.replace(eL,(e,t,n)=>t.charCodeAt(0)<=n.charCodeAt(0)?e:Pm),"sanitizeRange"),nL=s(i=>{
let{length:e}=i;return i.slice(0,e-e%2)},"cleanRangeBackSlash"),rL=[[/^\uFEFF/,()=>Pm],[/((?:\\\\)*?)(\\?\s+)$/,(i,e,t)=>e+
(t.indexOf("\\")===0?Wy:Pm)],[/(\\+?)\s/g,(i,e)=>{let{length:t}=e;return e.slice(0,t-t%2)+Wy}],[/[\\$.|*+(){^]/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,
()=>Cm],[/\\\\/g,()=>Cm],[/(\\)?\[([^\]/]*?)(\\*)($|\])/g,(i,e,t,n,r)=>e===Cm?`\\[${t}${nL(n)}${r}`:r==="]"&&n.length%2===
0?`[${tL(t)}${n}]`:"[]"],[/(?:[^*])$/,i=>/\/$/.test(i)?`${i}$`:`${i}(?=$|\\/$)`]],iL=/(^|\\\/)?\\\*$/,Ps="regex",lc="che\
ckRegex",By="_",oL={[Ps](i,e){return`${e?`${e}[^/]+`:"[^/]*"}(?=$|\\/$)`},[lc](i,e){return`${e?`${e}[^/]*`:"[^/]*"}(?=$|\
\\/$)`}},sL=s(i=>rL.reduce((e,[t,n])=>e.replace(t,n.bind(i)),i),"makeRegexPrefix"),cc=s(i=>typeof i=="string","isString"),
aL=s(i=>i&&cc(i)&&!KR.test(i)&&!zR.test(i)&&i.indexOf("#")!==0,"checkPattern"),lL=s(i=>i.split(JR).filter(Boolean),"spli\
tPattern"),vm=class{static{s(this,"IgnoreRule")}constructor(e,t,n,r,o,a){this.pattern=e,this.mark=t,this.negative=o,Cs(this,
"body",n),Cs(this,"ignoreCase",r),Cs(this,"regexPrefix",a)}get regex(){let e=By+Ps;return this[e]?this[e]:this._make(Ps,
e)}get checkRegex(){let e=By+lc;return this[e]?this[e]:this._make(lc,e)}_make(e,t){let n=this.regexPrefix.replace(iL,oL[e]),
r=this.ignoreCase?new RegExp(n,"i"):new RegExp(n);return Cs(this,t,r)}},cL=s(({pattern:i,mark:e},t)=>{let n=!1,r=i;r.indexOf(
"!")===0&&(n=!0,r=r.substr(1)),r=r.replace(jR,"!").replace(QR,"#");let o=sL(r);return new vm(i,e,r,t,n,o)},"createRule"),
Am=class{static{s(this,"RuleManager")}constructor(e){this._ignoreCase=e,this._rules=[]}_add(e){if(e&&e[qy]){this._rules=
this._rules.concat(e._rules._rules),this._added=!0;return}if(cc(e)&&(e={pattern:e}),aL(e.pattern)){let t=cL(e,this._ignoreCase);
this._added=!0,this._rules.push(t)}}add(e){return this._added=!1,Xy(cc(e)?lL(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?HR:c)});
let l={ignored:r,unignored:o};return a&&(l.rule=a),l}},pL=s((i,e)=>{throw new e(i)},"throwError"),Un=s((i,e,t)=>cc(i)?i?
Un.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"),Hy=s(i=>YR.test(i),"isNotRelative");
Un.isNotRelative=Hy;Un.convert=i=>i;var Rm=class{static{s(this,"Ignore")}constructor({ignorecase:e=!0,ignoreCase:t=e,allowRelativePaths:n=!1}={}){
Cs(this,qy,!0),this._rules=new Am(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&&Un.convert(e);return Un(o,e,this._strictPathCheck?pL:Gy),this._t(o,t,n,r)}checkIgnore(e){
if(!ZR.test(e))return this.test(e);let t=e.split(Qi).filter(Boolean);if(t.pop(),t.length){let n=this._t(t.join(Qi)+Qi,this.
_testCache,!0,t);if(n.ignored)return n}return this._rules.test(e,!1,lc)}_t(e,t,n,r){if(e in t)return t[e];if(r||(r=e.split(
Qi).filter(Boolean)),r.pop(),!r.length)return t[e]=this._rules.test(e,n,Ps);let o=this._t(r.join(Qi)+Qi,t,n,r);return t[e]=
o.ignored?o:this._rules.test(e,n,Ps)}ignores(e){return this._test(e,this._ignoreCache,!1).ignored}createFilter(){return e=>!this.
ignores(e)}filter(e){return Xy(e).filter(this.createFilter())}test(e){return this._test(e,this._testCache,!0)}},Lm=s(i=>new Rm(
i),"factory"),uL=s(i=>Un(i&&Un.convert(i),i,Gy),"isPathValid");if(typeof process<"u"&&(process.env&&process.env.IGNORE_TEST_WIN32||
process.platform==="win32")){let i=s(t=>/^\\\\\?\\/.test(t)||/["<>|\u0000-\u001F]+/u.test(t)?t:t.replace(/\\/g,"/"),"mak\
ePosix");Un.convert=i;let e=/^[a-z]:\//i;Un.isNotRelative=t=>e.test(t)||Hy(t)}Fm.exports=Lm;Lm.default=Lm;Fm.exports.isPathValid=
uL});var sh=lg(oh=>{"use strict";Object.defineProperty(oh,"__esModule",{value:!0});oh.TypedEmitter=require("events").EventEmitter});var qE={};MA(qE,{ServerStarter:()=>Od,createCdsLanguageTestServer:()=>RE,formatCli:()=>tg,lspRoot:()=>lt,ruleName:()=>Ke});
module.exports=WA(qE);var Rn=require("node:path");var at="";function cl(i){return(0,Rn.isAbsolute)(i)}s(cl,"path_isAbsolute");function Z(i){return(0,Rn.dirname)(i)}s(Z,"p\
ath_dirname");function E(...i){return(0,Rn.resolve)(...i)}s(E,"path_resolve");function rt(i,e){return(0,Rn.relative)(i,e)}
s(rt,"path_relative");function dg(){return process.cwd()}s(dg,"process_cwd");var qA={filename:"/data/xmake/prod-build10210/workspace/ght-cap/ght-cap-cds-lsp-SP-REL-linuxx86_64_indirectshipment-linu\
xx86_64/gen/out/module/src/root.ts",dirname:"/data/xmake/prod-build10210/workspace/ght-cap/ght-cap-cds-lsp-SP-REL-linuxx\
86_64_indirectshipment-linuxx86_64/gen/out/module/src",relativefilename:"src/root.ts",relativedirname:"src"};var lt=E(global.__lspBundleDirname??qA.dirname,"..");var Yn="";var Ee="/",cn="\\",pl=`
`;var mg="'";function Ur(){return process.env.NODE_ENV!=="test"}s(Ur,"isProduction");function GA(i){return`CDS_LSP_${i}_FEATURE`}s(GA,"featureEnvName");function Li(i,e){return HA(GA(i))??e}s(Li,"isFeatureE\
nabled");function HA(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(HA,"isEnabled");function Ln(i,e,t){return i?e():t}s(Ln,"fallback");var ml=J(require("node:async_hooks"));var ul=class{constructor(e){this.asyncId=e}static{s(this,"ClsFrame")}},dl=class{constructor(e){this.clsFactory=e;this.hook=
ml.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()}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(ml.executionAsyncId())}};var Md="\x1B[",Wd="m",fg=s(i=>Md+i+Wd,"makeAnsi"),$r=s((i,e=i+20)=>{let t=fg(i),n=fg(e);return r=>t+r+n},"makeTypo"),hg=s(
(i,e=!1)=>t=>{let l=Md+(t+(i?30:40)+(e?60:0))+Wd,c=Md+(9+(i?30:40))+Wd;return p=>l+p+c},"makeColorize"),KA=["black","red",
"green","khaki","blue","purple","petrol","lightgray"],zA=["darkgray","lightred","lightgreen","yellow","lightblue","magen\
ta","cyan","white"],gg=s(i=>{let e={};return KA.forEach((t,n)=>{e[t]=hg(i,!1)(n)}),zA.forEach((t,n)=>{e[t]=hg(i,!0)(n)}),
e},"makeColors"),Mr=gg(!0),Ig=gg(!1),ae={fg:Mr,bg:Ig,intense:$r(1,22),dim:$r(2),italic:$r(3),underline:$r(4),blink:$r(5),
inverse:$r(7),strikethrough:$r(9)},ee={requestFromServer:Mr.purple,responseToClient:Mr.lightgreen,error:s(i=>Mr.yellow(Ig.
red(i)),"error"),warn:Mr.yellow,info:Mr.white,success:Mr.green};var jA="^>",QA="<^";function j(i=""){return`${jA}${i}${QA}`}s(j,"tagPrivateData");function yg(i){return i.replaceAll(/\^>.*?<\^/gm,
"...")}s(yg,"hidePrivateData");var H=(p=>(p[p.invalid=0]="invalid",p[p.OFF=1]="OFF",p[p.INFRASTRUCTURE=2]="INFRASTRUCTUR\
E",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))(H||{}),N=(R=>(R.ALL="*",R.ADAPTER="adapter",R.COMPLETION="completion",R.COMPILER="compiler",R.CONTRIBUTION=
"contribution",R.DOCUMENTATION="docs",R.FORMATTING="format",R.MODEL="model",R.MODEL_TODOS="model-todos",R.REFACTOR="refa\
ctor",R.REQUESTS="requests",R.SETTINGS="settings",R.UTIL="util",R.TELEMETRY="telemetry",R.WORKSPACE="workspace",R.FILES=
"files",R.ENV="cdsenv",R.COMMAND="command",R.CONTEXT_LOG="context-log",R))(N||{});var hl="---> ",Fn="<--- ";function Zn(i,{errorPredicate:e=!1,warnPredicate:t=!1,infoPredicate:n=!1,successPredicate:r=!1,
debugPredicate:o=!1}){return e?ee.error(i):t?ee.warn(i):r?ee.success(i):n?ee.info(i):o?ae.fg.darkgray(i):i}s(Zn,"highlig\
ht");var as=class{constructor(e=!1){this.warnPrinted=e}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()}},fl=class{constructor(e=new as){this._tracer=e}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}},Fi=class{static{s(
this,"UnsupportedValue")}constructor(e){}};var gl=class{static{s(this,"SymbolData")}},Bd=class extends gl{static{s(this,"LspClsAppScope")}trace=new fl;statistics=new class extends Map{static{
s(this,"Statistics")}report(t){let n={type:"statistics",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}}},Il=class extends gl{constructor(t,n){
super();this.name=t;this.requestNumber=n}static{s(this,"LspClsRequestScope")}snapshots=new Map},ls=class{static{s(this,"\
LspClsFrameScope")}indentLevel=0;constructor(e=0){this.indentLevel=e}isTraceEnabled(){return this.indentLevel>=0}},yl=class extends ul{constructor(t,n,r,o){
super(t);this.appScope=n;this.frameScope=o,this.requestScope=r}static{s(this,"LspClsFrame")}requestScope;frameScope},Xd=class{static{
s(this,"LspFrameFactory")}appScope=new Bd;createFrame(e,t){return t?t.frameScope.isTraceEnabled()?new yl(e,t.appScope,t.
requestScope,new ls(t.frameScope.indentLevel)):t:new yl(e,this.appScope,new Il("<fromScratch>",-e),new ls)}},JA=new Xd,YA=new dl(
JA),q=s(()=>YA.currentFrame(),"currentFrame");function L(){return q().appScope.trace}s(L,"currentTrace");function Vd(i){
return q().appScope[i]}s(Vd,"current");function qd(i,e){q().appScope[i]=e}s(qd,"initCurrent");var Tg=1,Ei=s((i,e=Tg)=>{Tg++;
let t=q(),n=t.requestScope;return t.requestScope=new Il(i,e),t.frameScope=new ls,n},"startRequestScope");function bg(i){
return()=>{let e=q();e.requestScope=i}}s(bg,"endRequestScope");var Pe=require("node:fs"),Hd=require("node:os"),Rg=require("node:path");var Tl=require("node:path"),Ni=require("node:util"),We=J(require("vscode-languageserver-protocol"));function kg(i){switch(i){case We.DocumentHighlightKind.Text:return"text";case We.DocumentHighlightKind.Read:return"read";case We.DocumentHighlightKind.
Write:return"writ";default:return ee.error(`[E] <unknown kind> ${i}`)}}s(kg,"renderKind");function cs(i,e=70){return JSON.
stringify(i.length<=e?i:`${i.slice(0,e-3)}...`)}s(cs,"shorten");function xg(i){if(We.MarkupContent.is(i))return`${i.kind}\
: ${cs(i.value)}`;let e=s(t=>typeof t=="string"?cs(t):`[${t.language}] ${cs(t.value)}`,"renderMarkedString");return Array.
isArray(i)?Ge(i.map(e)):e(i)}s(xg,"renderContents");function ZA(i){return!!i?.range}s(ZA,"isIncremental");var eR={[We.FileChangeType.
Created]:"Created",[We.FileChangeType.Deleted]:"Deleted",[We.FileChangeType.Changed]:"Changed"};function Sg(i){if(i!==void 0)
switch(i){case We.DiagnosticSeverity.Error:return"Error";case We.DiagnosticSeverity.Warning:return"Warn";case We.DiagnosticSeverity.
Information:return"Info";case We.DiagnosticSeverity.Hint:return"Hint"}return"?"}s(Sg,"renderSeverity");function tR(i=""){
return e=>Ag(e,i)}s(tR,"makeRenderLocation");function Cg(i){let e="";return i?.documentation&&(e=We.MarkupContent.is(i.documentation)?
i.documentation.value:i.documentation),`${i?.data?.providerName??ee.warn("UnknownProvider")}: <${i.kind}> ${i.label} [${i.
commitCharacters||""}] ${cs(e)}`}s(Cg,"renderCompletionItem");function Pg(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((u,d)=>Math.max(u,d.length),0)+2,c=Math.floor(120/l);n+=`
${r}
`;let p=0;o.sort();for(let u of o)n+=`${u.padEnd(l)}${++p%c===0?`
`:""}`}}return n}s(Pg,"renderPaths");function Ge(i,e=""){return i?i.length?`${i.reduce((t,n)=>`${t}
${e} ${n}`,"[")}
${e}]`:"[]":""}s(Ge,"arr");var vg=(z=>(z[z.File=1]="File",z[z.Module=2]="Module",z[z.Namespace=3]="Namespace",z[z.Package=
4]="Package",z[z.Class=5]="Class",z[z.Method=6]="Method",z[z.Property=7]="Property",z[z.Field=8]="Field",z[z.Constructor=
9]="Constructor",z[z.Enum=10]="Enum",z[z.Interface=11]="Interface",z[z.Function=12]="Function",z[z.Variable=13]="Variabl\
e",z[z.Constant=14]="Constant",z[z.String=15]="String",z[z.Number=16]="Number",z[z.Boolean=17]="Boolean",z[z.Array=18]="\
Array",z[z.Object=19]="Object",z[z.Key=20]="Key",z[z.Null=21]="Null",z[z.EnumMember=22]="EnumMember",z[z.Struct=23]="Str\
uct",z[z.Event=24]="Event",z[z.Operator=25]="Operator",z[z.TypeParameter=26]="TypeParameter",z))(vg||{});function Gd(i,e=""){
return(e?"":`
`)+i.map(t=>iR(t,e)).join(`
`)+(e?"":`
`)}s(Gd,"docSymbolsToString");function nR(i){let e=i.map(n=>(0,Ni.inspect)(n,{compact:!0,maxStringLength:200,breakLength:200})),
t=e.reduce((n,r)=>n+r.length,0)>200;return e.join(t?`,
`:", ")}s(nR,"renderArgs");var g={array:s(i=>g.asIs(i),"array"),asIs:s(i=>(0,Ni.inspect)(i,{depth:null,compact:!1}),"asI\
s"),args:nR,changeTextDoc:s(i=>`${i.textDocument.uri}#${i.textDocument.version} ${Ge(i.contentChanges.map(aR))}`,"change\
TextDoc"),changeWatched:s(i=>Ge(i.changes.map(e=>`${eR[e.type]||e.type} ${e.uri})`)),"changeWatched"),codeAction:s(i=>`${i.
textDocument.uri} ${g.range(i.range)}`,"codeAction"),codeActions:s(i=>Ge(i.map(e=>`${e.title}: ${e.command?.command}(${g.
asIs(e.data)})`)),"codeActions"),codeLens:s(i=>Ge(i.map(e=>`${e.command?.title}`)),"codeLens"),completionItem:Cg,completionList:s(
i=>`${i.isIncomplete?"incomplete":""} ${Ge(i.items.map(Cg))}`,"completionList"),contents:xg,diags:s(i=>g.diagsWithIndent(
i),"diags"),diagsWithIndent:s((i,e="")=>Ge(i.map(t=>`${Sg(t.severity)} ${g.range(t.range)}: ${t.message}`),e),"diagsWith\
Indent"),docClosed:s(i=>i.textDocument.uri,"docClosed"),docHighlight:s(i=>`${kg(i.kind)}: ${g.range(i.range)}`,"docHighl\
ight"),docHighlights:s(i=>Ge(i.map(g.docHighlight)),"docHighlights"),docOpened:s(i=>`${i.textDocument.uri}#${i.textDocument.
version} ${cs(i.textDocument.text,30)}`,"docOpened"),docSaved:s(i=>`${i.textDocument.uri}`,"docSaved"),docSymbolParams:s(
i=>i.textDocument.uri,"docSymbolParams"),docSymbolResult:oR,docSymbols:s(i=>Gd(i),"docSymbols"),documentLink:s(i=>`${i.data}\
@${g.pos(i.range.start)} -> ${i.target}`,"documentLink"),documentLinkParams:s(i=>`${i.textDocument.uri}`,"documentLinkPa\
rams"),documentLinks:s(i=>Ge(i.map(g.documentLink)),"documentLinks"),execCmd:s(i=>`(${JSON.stringify(i.arguments)})`,"ex\
ecCmd"),exception:s(i=>rR(i)&&i.stack?i.stack:(0,Ni.inspect)(i),"exception"),hov:s(i=>i?`${i.range?g.range(i.range):""}:\
${xg(i?.contents)}`:"","hov"),kind:kg,location:Ag,locations:s(i=>Ge(i.map(tR())),"locations"),localPaths:s((i=[])=>Pg(Tl.sep,
i),"localPaths"),map:s(i=>[...i.entries()].map(([e,t])=>`${e}:
${(0,Ni.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} ${g.pos(i.position)} ${i.context.
includeDeclaration?"withDecl":""}`,"ref"),result:s(i=>(0,Ni.inspect)(i,{compact:!0,maxStringLength:200,breakLength:200}),
"result"),severity:Sg,symbolInfos:s(i=>Ge(i.map(e=>`${g.range(e.location.range).padEnd(14)} ${`${e.kind}`.padStart(2)} ${e.
name.padEnd(20)} (${e.containerName||"/"})`)),"symbolInfos"),symbolInfos_Uri:lR,symbolKind:s(i=>vg[i]??"<unknown symbol \
kind>","symbolKind"),textEdits:s(i=>`${Ge(i.map(e=>`'${e.newText.replaceAll(pl,`${cn}n`)}'${g.range(e.range)}`))}`,"text\
Edits"),textPos:s(i=>`${i.textDocument.uri} ${g.pos(i.position)}`,"textPos"),uris:s((i=[])=>Pg(Ee,i),"uris"),wsSymbol:s(
i=>i.query,"wsSymbol"),direntsOrStrings:s(i=>i.length?typeof i[0]=="string"?Ge(i):g.dirEnts(i):"[]","direntsOrStrings"),
dirEnts:s(i=>Ge(i.map(g.dirEnt)),"dirEnts"),dirEnt:s(i=>`${g.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?`${g.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")};function rR(i){
return!!i?.stack}s(rR,"isError");function iR(i,e){return`${e}${g.symbolKind(i.kind)} ${i.name} ${g.range(i.selectionRange)}\
${g.range(i.range)}${i.detail?` "${i.detail}"`:""}${i.children?.length?`
${Gd(i.children,`${e} `)}`:""}`}s(iR,"docSymbolToString");function oR(i){return i?.length?We.DocumentSymbol.is(i[0])?Gd(
i):g.symbolInfos(i):g.asIs(i)}s(oR,"renderDocSymbolResult");function sR(i){return i!==void 0?i:""}s(sR,"renderExists");function aR(i){
return`${ZA(i)?g.range(i.range):""} ${sR(i?.rangeLength)}`}s(aR,"renderTextDocConChEv");function Ag(i,e=""){let t=s(n=>e.
length?(0,Tl.relative)(e,n):n,"relPath");return We.LocationLink.is(i)?`${t(i.targetUri)}${g.range(i.targetSelectionRange)}\
in ${g.range(i.targetRange)}`:`${t(i.uri)}${g.range(i.range)}`}s(Ag,"renderLocation");function er(i,e,t=`${e}s`){return i===
1?e:t}s(er,"numerus");function lR(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} ${er(n.size,"file")}`}return Ge(i.map(t=>`${`${t.kind}`.padStart(2)} ${`(${t.containerName||"/"}\
)`.padEnd(40)} ${t.name.padEnd(20)} ${g.range(t.location.range).padEnd(14)} ${t.location.uri}`))}s(lR,"renderSymbolInfos\
_Uri");function ke(i){return typeof i[0]=="string"?i[0]:g.asIs(i[0])}s(ke,"firstArg");function ct(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:g.
asIs(r)}catch(t){return`? ${t}`}}}s(ct,"specificArg");var cR=1,bl=class i{static{s(this,"LogFile")}_folder;fileDescriptor=0;_filePath;logId;constructor(e=`${process.pid}_${cR++}`,t=""){
let n=t+e;this.logId=n,this._folder=this.defaultFolder(),this._filePath=this.logFilePath(n),this.createFile()}createFile(){
try{this.fileDescriptor=(0,Pe.openSync)(this._filePath,"w+",511),this.appendRaw(`#!/usr/bin/env less -f -R
`),this.appendRaw(`${ee.requestFromServer("---------- opened trace file")}
`),this.appendRaw(`${ee.responseToClient(new Date().toISOString())}
`)}catch(e){this.logError(e)}}defaultFolder(){return E((0,Hd.tmpdir)(),"cdxlsp")}get folder(){return i.ensureFolderExists(
this._folder)}set folder(e){e&&(this._folder=e)}static ensureFolderExists(e){return(0,Pe.existsSync)(e)||(0,Pe.mkdirSync)(
e,{recursive:!0}),e}get filePath(){return this._filePath}logError(e){console.error(g.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,Pe.closeSync)(this.fileDescriptor),this.deleteOrphanedLogFiles(),Z(this._filePath)===Z(t)?(0,Pe.renameSync)(this.
_filePath,t):((0,Pe.copyFileSync)(this._filePath,t),(0,Pe.unlinkSync)(this._filePath)),this._filePath=t,this.fileDescriptor=
(0,Pe.openSync)(this._filePath,"a+"))}catch(t){this.logError(t)}}deleteOrphanedLogFiles(){}logFilePath(e){let t=`${e.replaceAll(
/[:/\\]/g,"_")}.log`;return pR(()=>E(this.folder,t),E((0,Hd.tmpdir)(),`cdxlsp_${t}`))}append(e){this.appendRaw(`${e}
`)}appendRaw(e){try{(0,Pe.appendFileSync)(this.fileDescriptor,e)}catch{}}close(){this.appendRaw(`
---------- closing trace file
`),(0,Pe.closeSync)(this.fileDescriptor),this.fileDescriptor=0}},wi=class i extends bl{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,Pe.closeSync)(this.fileDescriptor),this.fileDescriptor=(0,Pe.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,Rg.basename)(e),n=Z(e);return(0,Pe.readdirSync)(
n).filter(r=>r.match(t)).map(r=>E(n,r))}renameAndUnlinkOrphanedFile(e){let t=Z(e);if((0,Pe.statSync)(e).isFile()){let r=E(
t,`orphaned-${Math.floor(Math.random()*1e4)}`);(0,Pe.renameSync)(e,r),(0,Pe.unlinkSync)(r)}else this.appendRaw(`Orphaned\
but not a file: ${e}`)}},kl=class extends bl{static{s(this,"ContextLogFile")}get enabled(){return Ur()}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 pR(i,e){try{return i()}catch{return e}}s(pR,"tryCatch");function Di(i){return Object.entries(i??{})}s(Di,"entries");function xl(i){return Object.entries(i??{})}s(xl,"entries2");
function At(i){return JSON.parse(i)}s(At,"parseJson");function Sl(i){return uR(i)}s(Sl,"calculateHashDigest");function uR(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(uR,"hash");var Pl=require("node:util");var us=1024*1024,Lg=1e3*1e3;function Fg(i){return Math.abs(i)>=us?`${Math.round(i/us)}~M`:`${Math.round(i/1024)}~K`}s(Fg,
"memoryUnit");var ps=[{unit:"ns",factor:1n},{unit:"us",factor:BigInt(1e3)},{unit:ae.fg.yellow("ms"),factor:BigInt(1e6)},
{unit:ae.fg.lightred("s"),factor:BigInt(1e9)},{unit:ae.fg.lightred("min"),factor:BigInt(6e10)}];function Kd(i){let e=s(()=>{
let o=ps.findIndex((l,c)=>{let p=ps[c+1];return p?i<2n*p.factor:!0}),a=o===ps.length-1;return[ps[o],a?ps[o-1]:void 0]},"\
getScales"),[t,n]=e(),r=`${i/t.factor} ${t.unit}`;return n&&(r+=` ${i%t.factor/n.factor} ${n.unit}`),Zn(r,{errorPredicate:i>
1e3*Lg,warnPredicate:i>200*Lg,successPredicate:i<0})}s(Kd,"renderElapsedNanos");var Eg=s(()=>global.gc?.call(global,!0),
"gc"),Oi=class{static{s(this,"Stopwatch")}startTime;startMemory;constructor(e=!1){e&&(Eg(),this.startMemory=process.memoryUsage()),
this.startTime=process.hrtime.bigint()}get elapsedNanos(){return process.hrtime.bigint()-this.startTime}get elapsed(){return this.
elapsedMemory()+Kd(this.elapsedNanos)}elapsedMemory(){if(!this.startMemory)return"";Eg();let e=process.memoryUsage(),t=s(
(n,r=!0)=>{let o=e[n],a=r?"":this.diffMemory(o-this.startMemory[n]),l=Zn(Fg(o),{errorPredicate:o>200*us,warnPredicate:o>
100*us});return`${n}${a}=${l} `},"diff");return`${t("rss")}${t("external")}${t("heapUsed",!1)}`}diffMemory(e){if(e!==0){
let t=Fg(e);return Zn((e>0?"+":"")+t,{errorPredicate:e>20*us,successPredicate:e<0})}return""}};function Ng(i){return new Promise(
e=>setTimeout(e,i))}s(Ng,"sleep");function dR(i){return(e,t,n)=>{try{let r=i(e,t,n);return typeof r=="string"?r:(0,Pl.inspect)(r)}catch(r){let o=r;return ee.
error(`[E] argument rendering failed with: ${o.message}
${g.args(e)}`)}}}s(dR,"SafeArgs");function mR(i){return(e,t,n,r)=>{try{let o=i(e,t,n,r);return typeof o=="string"?o:(0,Pl.inspect)(
o)}catch(o){let a=o;return ee.error(`[E] result rendering failed with: ${a.message}
${g.result(e)}`)}}}s(mR,"SafeResult");var Cl=class extends as{constructor(t,n){super();this.component=t;this.tracerAdapter=
n}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),u=o.traceLevel??5,d=p>=u,m=p>=6,h=mR(o.resultRenderer??g.result),I=dR(o.argumentsRenderer??
(m?g.args:g.nothing)),T=new Oi(o.trackMemory),P=this.tracerAdapter.indentLevel,v=s(()=>{q().frameScope.indentLevel=P},"r\
ebaseIndent"),w=this;function R(D,Y){if(v(),d&&!o.onlyTraceStart){let V=T.elapsedNanos;o.onlyTraceEndIfTakesLongerMs?o.onlyTraceEndIfTakesLongerMs*
1e6<V&&w.conditionalTrace(u,()=>`}${Y?"~":""} ${c} [${ee.warn(T.elapsed)}] ${m?`(${I(r,t,u)})`:""}${m?` => ${h(D,r,t,p)}`:
""}`):w.conditionalTrace(u,()=>`}${Y?"~":""} ${c} [${T.elapsed}] ${m?` => ${h(D,r,t,p)}`:""}`)}return D}s(R,"onSuccess");
function O(D,Y){throw v(),w.error(()=>`}${Y?"~":""} [E] ${c} [${T.elapsed}] => ${(0,Pl.inspect)(D)}`),D}s(O,"onError");try{
d&&!o.onlyTraceEnd&&this.conditionalTrace(u,()=>`${l} ${m?`(${I(r,t,u)})`:""} {`),this.tracerAdapter.increaseIndent();let D=n(
...r),Y=D;return Y?.then?(v(),Y.then(V=>R(V,!0)).catch(V=>O(V,!0))):R(D,!1)}catch(D){return O(D,!1)}}conditionalTrace(t,n){
this.tracerAdapter.conditionalTrace(this.component,t,n)}};var fR=Object.keys(N).reduce((i,e)=>Math.max(i,e.length),0),wg={},hR=s(i=>wg[i]??(wg[i]="".padEnd(i*3)),"paddingFor"),gR={
1:"[-]",2:ae.fg.magenta("[:]"),3:ee.error("[E]"),4:ee.warn("[w]"),5:ee.info(" | "),6:" : ",7:ae.fg.darkgray(" . ")},_i=class i{static{
s(this,"LspTrace")}logFile;extendedStatsLogFile;onError;traceComponents=new Map([["*",6]]);constructor(){this.logFile=new wi,
this.extendedStatsLogFile=new kl;let e=IR();this.configureRotation(e.maxSize,e.count),this.configureTraceComponents([...zd().
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)}_${Sl(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} = ${H[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 Cl(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){
t===3&&this.onError?.(this.renderMessage(t,e,n)),!(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)}}startTime=Date.now();lastTimeTraced=Date.now();renderMessage(e,t,n){let r=n(),o=this.traceLevel(
"requests")>=6,a=s(T=>{let P=T%1e3,v=Math.floor(T/1e3),w=v%60,R=Math.floor(v/60),O=R%60,D=Math.floor(R/60),Y=D?`${D}:`:"\
",V=D||O?`${String(O).padStart(2,"0")}:`:" ",De=String(w).padStart(2,D||O?"0":" ");return`${Y}${V}${De}.${String(P).
padStart(3,"0")}`},"millisToTime"),l=0,c=s(()=>{let T=Date.now(),P=T-this.lastTimeTraced;this.lastTimeTraced=T;let v=a(T-
this.startTime);if(l=v.length,t==="requests"){if(r.startsWith(hl))return ee.requestFromServer(v);if(r.includes(Fn))return ee.
responseToClient(v)}return Zn(v,{errorPredicate:P>5e3})},"colorizedTime"),p=0;function u(){let T=`{${t}}`.padEnd(fR+2),P=31,
{name:v,requestNumber:w=-1,snapshots:R}=q().requestScope,O="";if(o&&R){let V=[];for(let De of R.values())De.constructor.
name!=="NonScanningWorkspaceSnapshot"&&V.push(De.workspaceVersion);O=`/${V.join(",")}`}let D=Zn(v.padEnd(P),{warnPredicate:v.
startsWith("@")}),Y=`${w}${O}`.padStart(o?11:5);return p=6+Y.length+D.length+T.length,`${Y}:${D} ${gR[e]??"???"} ${T}`}s(
u,"colorizedContext");let d=hR(this.indentLevel),m=`${c()} ${u()} ${d}`,h=2+l+p+d.length;function I(){let T=r;if(T.includes(
`
`)){let P=" ".repeat(h),v=s((w,R,O)=>`${w}${O>0?P:""}${R}
`,"appendIndented");T=T.split(/\r?\n/g).reduce(v,"")}return Zn(T,{errorPredicate:e===3,warnPredicate:e===4,infoPredicate:e===
5,debugPredicate:e===7})}return s(I,"colorizedMessage"),`${m}${I()}`}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 zd(){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(zd,"getRawTraceComponents");function IR(){return{count:Dg(process.env.CDS_LSP_TRACE_FILES_COUNT??
"",1,10,wi.DEFAULT_NUMBER_OF_FILES),maxSize:Dg(process.env.CDS_LSP_TRACE_FILES_MAXSIZE??"",1e7,1e8,wi.DEFAULT_MAX_FILE_SIZE)}}
s(IR,"getTraceFilesConfig");function Dg(i,e,t,n){return Math.max(Math.min(Number.parseInt(i,10)||n,t),e)}s(Dg,"canonical\
izeNumber");function y(i,e={}){let t=Ur();return(n,r)=>{if(!jd.isTracing(i,e.traceLevel??5))return n;e.scope||=r.name;let o,a=s(()=>(t&&
o||(o=L().tracer(i)),o),"getTracer");return s(function(...c){return a().footprint(this,n.bind(this),c,e)},"FootprintDeco\
rator")}}s(y,"Footprint");var jd=class i{static{s(this,"ConfiguredTraceComponents")}static _rawTraceComponents;static get rawTraceComponents(){
return i._rawTraceComponents||(i._rawTraceComponents=zd()),i._rawTraceComponents}static isTracing(e,t){let n=i.rawTraceComponents.
get(e)??i.rawTraceComponents.get("*")??"off";return _i.toTraceLevel(n)>=t}};function Ne(i){i?.catch(e=>{})}s(Ne,"safeTriggerAsync");var $g=require("node:path"),Mg=require("node:util"),G=J(require("vscode-languageserver-protocol"));function Wr(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?Wr(i,e,t,n,
o-1):Wr(i,e,t,o+1,r)}s(Wr,"binSearch");function Ui(i){return i?Array.isArray(i)?i:[i]:[]}s(Ui,"flatten");function vl(i,e,t){
return i[e]===void 0&&(i[e]=t()),i[e]}s(vl,"getOrCreate");function U(i,e){return i??e}s(U,"ensure");var Og=new Set,_g=s(i=>vl(i,"__CACHES",()=>new Map),"cachesFor"),Al=s((i,e)=>{let t=_g(i),n=t.get(e);return n||(n=new Map,
t.set(e,n),Og.add(n)),n},"cacheFor");function M(i={}){return i.key||=e=>e[0],i.doNotCacheUndefined||=!1,(e,t)=>s(function(...r){
let o=Al(this,String(t.name)),a=i.key(r);if(!o.has(a)){let l=e.call(this,...r);(l!==void 0||!i.doNotCacheUndefined)&&o.set(
a,l)}return o.get(a)},"CacheDecorator")}s(M,"Cache");M.clear=(i,e)=>{if(i)e?Al(i,e).clear():_g(i).clear();else{if(e)throw new Error(
`Clearing method cache '${e}' requires an instance`);for(let t of Og)t.clear()}};M.set=(i,e,t,n)=>{Al(i,e).set(t,n)};M.get=
(i,e,t)=>Al(i,e).get(t);function Yd(i){return[".csn",".json"].includes((0,$g.extname)(i))}s(Yd,"isCsn");var yR=s(()=>({start:{line:0,character:0},
end:{line:0,character:0}}),"csnFallbackLocation"),Zt=class{static{s(this,"RangeAdapter")}static adapt(e){return Yd(e.file)?
yR():{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 Nn(i){return Zt.adapt(i)}s(Nn,"adaptRange");function Zd(i){return Jd.adapt(i)}s(Zd,"adaptCompletionKind");
var TR=new Map([["context",G.CompletionItemKind.Unit],["element",G.CompletionItemKind.Field],["entity",G.CompletionItemKind.
Class],["namespace",G.CompletionItemKind.Module],["source",G.CompletionItemKind.File],["type",G.CompletionItemKind.Interface]]),
Jd=class{static{s(this,"CompletionKindAdapter")}static adapt(e){return TR.get(e)??G.CompletionItemKind.Variable}},En=class{static{
s(this,"SeverityAdapter")}static adapt(e){switch(e){case"Error":return G.DiagnosticSeverity.Error;case"Warning":return G.DiagnosticSeverity.
Warning;case"Info":return G.DiagnosticSeverity.Information;default:return G.DiagnosticSeverity.Hint}}};function je(){return Object.
create(null)}s(je,"empty");var bR=new Map([["action",G.SymbolKind.Function],["aspect",G.SymbolKind.Constructor],["contex\
t",G.SymbolKind.Package],["element",G.SymbolKind.Field],["entity",G.SymbolKind.Class],["enum",G.SymbolKind.EnumMember],[
"event",G.SymbolKind.Event],["function",G.SymbolKind.Function],["mixin",G.SymbolKind.Field],["namespace",G.SymbolKind.Namespace],
["param",G.SymbolKind.Variable],["qualifiedAnnotation",G.SymbolKind.Property],["type",G.SymbolKind.Interface],["using",G.SymbolKind.
Module],["service",G.SymbolKind.Object],["view",G.SymbolKind.Class]]);function wn(i,e){let t=e||i,n=bR.get(t);return n||
L().tracer("adapter").warn(()=>`unknown adaptSymbolKind(${t})`),n??G.SymbolKind.String}s(wn,"adaptSymbolKind");var kR=new Map(
[[G.SymbolKind.Module,G.CompletionItemKind.Module],[G.SymbolKind.Namespace,G.CompletionItemKind.Unit],[G.SymbolKind.Package,
G.CompletionItemKind.Unit],[G.SymbolKind.Class,G.CompletionItemKind.Class],[G.SymbolKind.Field,G.CompletionItemKind.Field],
[G.SymbolKind.Interface,G.CompletionItemKind.Interface],[G.SymbolKind.Function,G.CompletionItemKind.Function],[G.SymbolKind.
Variable,G.CompletionItemKind.Variable],[G.SymbolKind.Object,G.CompletionItemKind.Method],[G.SymbolKind.EnumMember,G.CompletionItemKind.
EnumMember],[G.SymbolKind.Event,G.CompletionItemKind.Event],[G.SymbolKind.TypeParameter,G.CompletionItemKind.TypeParameter],
[G.SymbolKind.String,G.CompletionItemKind.Text]]);function Wg(i){return kR.get(i)??G.CompletionItemKind.Text}s(Wg,"toCom\
pletionKind");function Ll(i,e){if(!(i instanceof e))throw new TypeError}s(Ll,"assertsType");function ms(i,e,t={},n=3){if(i==
null)throw new TypeError(`${e}: ${(0,Mg.inspect)(t,{depth:n})}`)}s(ms,"assertExists");var Ug,Qd;Ug=[M()];var ds=class ds{constructor(){
x(Qd,5,this)}isWindows(){return process.platform.startsWith("win")}};Qd=C(null),f(Qd,1,"isWindows",Ug,ds),k(Qd,ds),s(ds,
"PlatformTester");var Rl=ds;function xR(i){return i.toLowerCase()===i?i.toUpperCase():i.toLowerCase()}s(xR,"toggleCase");
function Fl(i){return xR(i[0])+i.slice(1)}s(Fl,"toggleDriveLetter");var wl=J(require("node:child_process"));var Nl=class extends Error{constructor(t,n){let r=Ln(n.exitCode!==0,()=>`
<exit code:>
${n.exitCode}`,""),o=Ln(n.stdout,()=>`
<stdout:>
${n.stdout}`,""),a=Ln(n.stderr,()=>`
<stderr:>
${n.stderr}`,"");super(t+r+o+a);this.result=n}static{s(this,"CliError")}},Bg,Xg,El;Xg=[y("util",{argumentsRenderer:s(e=>`\
<<${++Rt._currentlyRunning}>> ${g.args(e)}`,"argumentsRenderer"),resultRenderer:s((e,t)=>`<<${--Rt._currentlyRunning}>> ${g.
args(t)} => ${g.result(e)}`,"resultRenderer")})],Bg=[y("util",{argumentsRenderer:s(e=>`<<${++Rt._currentlyRunning}>> ${g.
args(e)}`,"argumentsRenderer"),resultRenderer:s((e,t)=>`<<${--Rt._currentlyRunning}>> ${g.args(t)} => ${g.result(e)}`,"r\
esultRenderer")})];var Rt=class Rt{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=wl.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=Rt.streamIntoResult(r.stdout,o,"stdout"),c=Rt.streamIntoResult(r.stderr,o,"stder\
r"),p=new Promise((u,d)=>{r.on("error",d),r.on("close",(m,h)=>{a(),o.exitCode=h??m,h||m!==0&&n.failIfNonZeroExit?d(new Nl(
`Failed: ${e} ${t.join(" ")}`,o)):u(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=wl.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 Nl(`Failed: ${e} ${j(t.join(" "))}`,o);return o}};El=C(null),f(El,9,"run",Xg,Rt),f(El,9,"runSync",Bg,Rt),k(El,
Rt),x(El,3,Rt),s(Rt,"CLI"),S(Rt,"_currentlyRunning",0);var pn=Rt;var Vw=Symbol("_originalClass");function Vg(i,e){let t=[];for(let n of i)e(n)&&t.push(n);return t}s(Vg,"filter");function Br(i,e){let t=i.uri.localeCompare(e.uri);return t!==0?Math.sign(t):(t=He(i.range.start,e.range.start),t!==0?t:He(
i.range.end,e.range.end))}s(Br,"compareLocations");function He(i,e){let t=i.line-e.line;return Math.sign(t!==0?t:i.character-
e.character)}s(He,"comparePosition");function $i(i,e){let t=He(i.start,e);return t>0?1:t===0?0:He(i.end,e)<0?-1:0}s($i,"\
compareRange");function Dl(i,e){return(t,n)=>Li(i,e)?t:()=>{}}s(Dl,"Conditional");var qg=Symbol("languageServer"),Gg=Symbol("factory");function oe(){return Vd(qg)}s(oe,"currentLanguageServer");function Hg(i){
qd(qg,i)}s(Hg,"initLanguageServer");function _(){return Vd(Gg)}s(_,"currentFactory");function SR(i){qd(Gg,i)}s(SR,"initF\
actory");var Mi=s(i=>{SR(i),q().appScope.trace=i.getTrace()},"startAppScope");var tr=require("node:fs"),zg=require("node:os"),tm=require("node:util");var Kg,em;Kg=[y("util",{scope:"installEmergencyHooks"})];var fs=class fs{constructor(e=L()){this.trace=e;x(em,5,this);S(
this,"emergencyHooksInstalled",!1)}install(){if(this.emergencyHooksInstalled){this.trace.tracer("util").warn(()=>"Ignore\
d: 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: ${g.exception(e)}`)}onUnhandledRejection(e,t){this.trace.conditionalTrace("util",3,()=>`Unhandled Rejection \
at: ${(0,tm.inspect)(t,!0,4)} reason: ${e}`)}onExit(e){this.trace.conditionalTrace("util",2,()=>`CDS-LS will exit now wi\
th code ${e}`);let t=`
----- ${new Date().toISOString()}
pid: ${process.pid} <- ${process.ppid}
memory:
${JSON.stringify(process.memoryUsage(),null,2)}
exited with code ${e}:
${new Error().stack?.split(/\r?\n/).slice(1).join(`
`)}
process details:
${(0,tm.inspect)(process)}
`;this.trace.doTraceToFile(t);let n=E((0,zg.tmpdir)(),"cdxlsp/exitInfos.txt");(0,tr.existsSync)(n)&&(0,tr.statSync)(n).mtime.
toDateString()!==new Date().toDateString()&&(0,tr.rmSync)(n),(0,tr.appendFileSync)(n,t)}onWarning(e){this.trace.doTraceToFile(
this.trace.renderMessage(2,"util",()=>`Process warning (${e.name}): ${e.message}
${e.stack}
`))}};em=C(null),f(em,1,"install",Kg,fs),k(em,fs),s(fs,"EmergencyHooks");var Ol=fs;function _l(i){throw new Error(i)}s(_l,"NoSuchOption");var ye=require("node:fs"),nr=require("node:fs/promises"),LI=require("node:os"),Lt=require("node:path");var Ul=Symbol("LSP isArtifactName"),jg=Symbol("LSP xsn path"),Qg=Symbol("LSP public definition"),K=Symbol("file does not\
exist"),hs=["db","srv","app"];var xe=(se=>(se.CDS_TYPER_OUTPUT_PATH="cds.typeGenerator.outputPath",se.CDS_TYPER_ENABLED="cds.typeGenerator.enabled",se.
CDS_TYPER_LOCAL_INSTALLATION_ONLY="cds.typeGenerator.localInstallationOnly",se.CDS_TYPER_COMMAND="cds.typeGenerator.comm\
and",se.DIAGNOSTICS_LEVEL="cds.diagnosticsSeverity",se.WARN_MISSING_TRANSLATIONS="cds.compiler.markMissingI18nDefault",se.
SHOW_COMPILER_ERRORS="cds.compiler.showInternalErrors",se.DOCS_IN_COMPLETION="cds.completion.showDocumentation",se.DOCFILES_FOR_COMPLETION=
"cds.completion.docFiles",se.FORMAT_SNIPPETS="cds.completion.formatSnippets",se.DOCSYMBOLS_SEMANTICAL="cds.outline.seman\
tical",se.WORKSPACESYMBOLS_FOR_COMPLETION_MIN_PREFIX="cds.completion.workspaceSymbols.minPrefixLength",se.WORKSPACESYMBOLS_FOR_COMPLETION_MAX_PROPOSALS=
"cds.completion.workspaceSymbols.maxProposals",se.OMIT_REDUNDANT_TYPES_IN_SNIPPETS="cds.completion.annotations.omitRedun\
dantTypesInSnippets",se.CONTRIBUTIONS_REGISTRY="cds.contributions.registry",se.CONTRIBUTIONS_ANALYTICS_ENABLED="cds.cont\
ributions.enablement.additionalAnalyticalAnnotations",se.CONTRIBUTIONS_ODATA_ENABLED="cds.contributions.enablement.odata",
se.IMPORT_ARTIFACT_QUICKFIX="cds.quickfix.importArtifact",se.CODE_LENS_STATISTICS="cds.codeLensStatistics.enabled",se.SEMANTIC_HIGHLIGHTING=
"cds.semanticHighlighting.enabled",se.REFACTOR_USINGS_ON_RENAME="cds.refactoring.files.rename.enabled",se.REFACTOR_USINGS_ON_DELETE=
"cds.refactoring.files.delete.enabled",se.SHOW_GENERIC_ANNOTATIONS="cds.whereused.showGenericAnnotations",se.SHOW_STRING_LITERALS=
"cds.whereused.showStringConstants",se.WORKSPACE_DEBOUNCE_FAST_CHANGES="cds.workspace.debounceFastChanges",se.WORKSPACE_SCAN_CSN=
"cds.workspace.scanCsn",se.WORKSPACE_SCAN_DEPENDENT_MODULES="cds.workspace.scanDependentModules",se.WORKSPACE_VALIDATION_MODE=
"cds.workspaceValidationMode",se.WORKSPACESYMBOLS_LAZY="cds.workspaceSymbols.lazy",se.WORKSPACESYMBOLS_CASE_INSENSITIVE=
"cds.workspaceSymbols.caseInsensitive",se.INSPECT_TOKENS="cds.internal.inspectTokens",se))(xe||{});var Jg=["@title","@description"],Yg="<add text here>",en=(a=>(a.IMPORT_ARTIFACT="import-artifact",a.REMOVE_UNUSED_IMPORT=
"remove-unused-import",a.MAINTAIN_TRANSLATION="maintain-translation",a.MIGRATE_TO_DOCCOMMENT="migrate-to-doccomment",a.MIGRATE_DEPRECATED_DELIMITER=
"migrate-deprecated-delimiter",a.CUSTOM_ANNOTATION_QUICKFIX="custom-annotation-quickfix",a))(en||{});var Zg=["format-range","analyze-dependencies","active-editor-changed"],nm="cds/userOutput",rm="cds/statusMessage";function eI(i,e,t){
let n=t;for(let r of i)e(n,r);return n}s(eI,"reduceFiles");var Qe=class i{static{s(this,"Untitled")}static isUntitledFile(e){return e.startsWith(i.UNTITLED_ROOT_URI)}static UNTITLED_ROOT_URI="\
untitled:"};var $l=require("node:url");function pt(i){return(0,$l.pathToFileURL)(i).toString()}s(pt,"pathToFileURL");function gt(i){return(0,$l.fileURLToPath)(
i)}s(gt,"fileURLToPath");var It="package.json";function PR(i){let e=vR(i);return gt(e)}s(PR,"getLocalPath");function vR(i){return i.startsWith("f\
ile:")?i:pt(i)}s(vR,"ensureUri");var tI,nI,rI,iI,oI,sI,aI,lI,cI,pI,uI,dI,mI,fI,hI,gI,II,yI,TI,bI,kI,xI,SI,CI,PI,vI,AI,RI,
he;RI=[y("files",{traceLevel:7,argumentsRenderer:s(e=>e[1],"argumentsRenderer")})],AI=[y("files",{traceLevel:7})],vI=[y(
"files",{traceLevel:7,argumentsRenderer:s(e=>e[0],"argumentsRenderer")})],PI=[y("files",{traceLevel:7})],CI=[y("files",{
traceLevel:7,argumentsRenderer:s(e=>e[0],"argumentsRenderer")})],SI=[y("files",{traceLevel:7})],xI=[y("files",{traceLevel:7})],
kI=[y("files",{traceLevel:7})],bI=[y("files",{traceLevel:7,argumentsRenderer:s(e=>e[0],"argumentsRenderer")})],TI=[y("fi\
les",{traceLevel:7})],yI=[y("files",{traceLevel:7})],II=[y("files",{traceLevel:6,resultRenderer:s((e,t)=>`${e.length} by\
tes for ${t[0]}`,"resultRenderer")})],gI=[y("files",{traceLevel:6,resultRenderer:s((e,t)=>`${e.length} bytes for ${t[0]}`,
"resultRenderer")})],hI=[y("files",{argumentsRenderer:s(e=>e[0],"argumentsRenderer"),resultRenderer:g.nothing})],fI=[y("\
files",{resultRenderer:g.nothing})],mI=[y("files")],dI=[y("files")],uI=[y("files")],pI=[y("files")],cI=[y("files")],lI=[
y("files")],aI=[y("files",{traceLevel:7,resultRenderer:g.direntsOrStrings})],sI=[y("files",{traceLevel:7,resultRenderer:g.
stats})],oI=[y("files",{traceLevel:7,resultRenderer:g.stats})],iI=[y("files",{traceLevel:7})],rI=[y("files",{traceLevel:7})],
nI=[y("files",{traceLevel:7})],tI=[y("files",{traceLevel:7})];var ue=class ue{constructor(){x(he,5,this);S(this,"uriToIs\
Csn",new Map)}isTranslationFile(e,t){let n=(0,Lt.extname)(t);if(![".properties",".json",".csv"].includes(n)||!(0,Lt.basename)(
t).startsWith(e.i18n.file))return!1;t=t.replaceAll(Lt.sep,Ee);for(let o of e.i18n.folders)for(let a of[e.i18n.fallback_bundle,
e.i18n.default_language]){let l=a.length?`_${a.replace("-","_")}`:a;if(t.endsWith(`/${o}/${e.i18n.file}${l}${n}`)||a.length&&
(l=`_${a.match(/[a-zA-Z]+/)}`,t.endsWith(`/${o}/${e.i18n.file}${l}${n}`)))return!0}return!1}isPackageJsonFile(e=""){return(0,Lt.basename)(
e)===It}typeofFile(e,t,n){if(e&&!e.endsWith(Lt.sep)){let r=(0,Lt.basename)(e);switch((0,Lt.extname)(e)){case".cds":return"\
CdsSource";case".csn":return"CsnFile";case".json":if(r===It)return"PackageJson";if(this.isCdsEnvFile(e))return".cdsrc.js\
on";if(this.isCsnFile(e,n))return"CsnFile";break;case"":if(this.isIgnoreFile(r))return"IgnoreFile";break}if(this.isTranslationFile(
t,e))return"TranslationDefinitions"}return"Unrelated"}isCsnFileByExtension(e){return e.endsWith(".csn")||e.endsWith(".cs\
n.json")}isCsnFile(e,t){if(this.isCsnFileByExtension(e))return!0;if(e.endsWith(".json")&&!this.isPackageJsonFile(e))try{
let n=this.uriToIsCsn.get(e);if(n!==void 0)return n;let r=t();if(r===K)return!1;let o=At(r),a=!!(o?.$version&&o?.meta?.creator?.
toLowerCase().includes("cds"))||!!o?.version?.csn;return this.uriToIsCsn.set(e,a),a}catch(n){L().tracer("workspace").warn(
()=>`Invalid JSON file ${e}: ${n}`)}return!1}isCdsEnvFile(e){return[".cdsrc.json","default-env.json",".env","package.jso\
n"].includes((0,Lt.basename)(e))}isIgnoreFile(e=""){return[".gitignore",".cdsignore"].includes((0,Lt.basename)(e))}isCdsSourceFile(e=""){
return(0,Lt.extname)(e)===".c