factoriomod-debug 2.0.0 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -11,46 +11,46 @@
11
11
  ${JSON.stringify(Object.fromEntries(r))}`));return}let o=parseInt(i);if(isNaN(o)){this.fireError(new Error(`Content-Length value must be a number. Got ${i}`));return}this.nextMessageLength=o}let t=this.buffer.tryReadBody(this.nextMessageLength);if(t===void 0){this.setPartialMessageTimer();return}this.clearPartialMessageTimer(),this.nextMessageLength=-1,this.readSemaphore.lock(async()=>{let r=this.options.contentDecoder!==void 0?await this.options.contentDecoder.decode(t):t,i=await this.options.contentTypeDecoder.decode(r,this.options);this.callback(i)}).catch(r=>{this.fireError(r)})}}catch(t){this.fireError(t)}}clearPartialMessageTimer(){this.partialMessageTimer&&(this.partialMessageTimer.dispose(),this.partialMessageTimer=void 0)}setPartialMessageTimer(){this.clearPartialMessageTimer(),!(this._partialMessageTimeout<=0)&&(this.partialMessageTimer=(0,$c.default)().timer.setTimeout((e,t)=>{this.partialMessageTimer=void 0,e===this.messageToken&&(this.firePartialMessage({messageToken:e,waitingTime:t}),this.setPartialMessageTimer())},this._partialMessageTimeout,this.messageToken,this._partialMessageTimeout))}};dr.ReadableStreamMessageReader=Hc});var zh=E(fr=>{"use strict";Object.defineProperty(fr,"__esModule",{value:!0});fr.WriteableStreamMessageWriter=fr.AbstractMessageWriter=fr.MessageWriter=void 0;var Hh=lr(),Oi=Br(),OS=Nc(),Wh=Jr(),MS="Content-Length: ",Kh=`\r
12
12
  `,Vh;(function(n){function e(t){let r=t;return r&&Oi.func(r.dispose)&&Oi.func(r.onClose)&&Oi.func(r.onError)&&Oi.func(r.write)}n.is=e})(Vh||(fr.MessageWriter=Vh={}));var zo=class{constructor(){this.errorEmitter=new Wh.Emitter,this.closeEmitter=new Wh.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(e,t,r){this.errorEmitter.fire([this.asError(e),t,r])}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}asError(e){return e instanceof Error?e:new Error(`Writer received error. Reason: ${Oi.string(e.message)?e.message:"unknown"}`)}};fr.AbstractMessageWriter=zo;var Wc;(function(n){function e(t){return t===void 0||typeof t=="string"?{charset:t??"utf-8",contentTypeEncoder:(0,Hh.default)().applicationJson.encoder}:{charset:t.charset??"utf-8",contentEncoder:t.contentEncoder,contentTypeEncoder:t.contentTypeEncoder??(0,Hh.default)().applicationJson.encoder}}n.fromOptions=e})(Wc||(Wc={}));var Kc=class extends zo{constructor(e,t){super(),this.writable=e,this.options=Wc.fromOptions(t),this.errorCount=0,this.writeSemaphore=new OS.Semaphore(1),this.writable.onError(r=>this.fireError(r)),this.writable.onClose(()=>this.fireClose())}async write(e){return this.writeSemaphore.lock(async()=>this.options.contentTypeEncoder.encode(e,this.options).then(r=>this.options.contentEncoder!==void 0?this.options.contentEncoder.encode(r):r).then(r=>{let i=[];return i.push(MS,r.byteLength.toString(),Kh),i.push(Kh),this.doWrite(e,i,r)},r=>{throw this.fireError(r),r}))}async doWrite(e,t,r){try{return await this.writable.write(t.join(""),"ascii"),this.writable.write(r)}catch(i){return this.handleError(i,e),Promise.reject(i)}}handleError(e,t){this.errorCount++,this.fireError(e,t,this.errorCount)}end(){this.writable.end()}};fr.WriteableStreamMessageWriter=Kc});var Bh=E(Bo=>{"use strict";Object.defineProperty(Bo,"__esModule",{value:!0});Bo.AbstractMessageBuffer=void 0;var AS=13,LS=10,NS=`\r
13
13
  `,Vc=class{constructor(e="utf-8"){this._encoding=e,this._chunks=[],this._totalLength=0}get encoding(){return this._encoding}append(e){let t=typeof e=="string"?this.fromString(e,this._encoding):e;this._chunks.push(t),this._totalLength+=t.byteLength}tryReadHeaders(e=!1){if(this._chunks.length===0)return;let t=0,r=0,i=0,o=0;e:for(;r<this._chunks.length;){let u=this._chunks[r];for(i=0;i<u.length;){switch(u[i]){case AS:switch(t){case 0:t=1;break;case 2:t=3;break;default:t=0}break;case LS:switch(t){case 1:t=2;break;case 3:t=4,i++;break e;default:t=0}break;default:t=0}i++}o+=u.byteLength,r++}if(t!==4)return;let s=this._read(o+i),a=new Map,c=this.toString(s,"ascii").split(NS);if(c.length<2)return a;for(let u=0;u<c.length-2;u++){let d=c[u],g=d.indexOf(":");if(g===-1)throw new Error(`Message header must separate key and value using ':'
14
- ${d}`);let m=d.substr(0,g),y=d.substr(g+1).trim();a.set(e?m.toLowerCase():m,y)}return a}tryReadBody(e){if(!(this._totalLength<e))return this._read(e)}get numberOfBytes(){return this._totalLength}_read(e){if(e===0)return this.emptyBuffer();if(e>this._totalLength)throw new Error("Cannot read so many bytes!");if(this._chunks[0].byteLength===e){let o=this._chunks[0];return this._chunks.shift(),this._totalLength-=e,this.asNative(o)}if(this._chunks[0].byteLength>e){let o=this._chunks[0],s=this.asNative(o,e);return this._chunks[0]=o.slice(e),this._totalLength-=e,s}let t=this.allocNative(e),r=0,i=0;for(;e>0;){let o=this._chunks[i];if(o.byteLength>e){let s=o.slice(0,e);t.set(s,r),r+=e,this._chunks[i]=o.slice(e),this._totalLength-=e,e-=e}else t.set(o,r),r+=o.byteLength,this._chunks.shift(),this._totalLength-=o.byteLength,e-=o.byteLength}return t}};Bo.AbstractMessageBuffer=Vc});var Yh=E(me=>{"use strict";Object.defineProperty(me,"__esModule",{value:!0});me.createMessageConnection=me.ConnectionOptions=me.MessageStrategy=me.CancellationStrategy=me.CancellationSenderStrategy=me.CancellationReceiverStrategy=me.RequestCancellationReceiverStrategy=me.IdCancellationReceiverStrategy=me.ConnectionStrategy=me.ConnectionError=me.ConnectionErrors=me.LogTraceNotification=me.SetTraceNotification=me.TraceFormat=me.TraceValues=me.Trace=me.NullLogger=me.ProgressType=me.ProgressToken=void 0;var Gh=lr(),Ye=Br(),se=_c(),Jh=Rc(),Mi=Jr(),zc=Wo(),Ni;(function(n){n.type=new se.NotificationType("$/cancelRequest")})(Ni||(Ni={}));var Bc;(function(n){function e(t){return typeof t=="string"||typeof t=="number"}n.is=e})(Bc||(me.ProgressToken=Bc={}));var Ai;(function(n){n.type=new se.NotificationType("$/progress")})(Ai||(Ai={}));var Gc=class{constructor(){}};me.ProgressType=Gc;var Jc;(function(n){function e(t){return Ye.func(t)}n.is=e})(Jc||(Jc={}));me.NullLogger=Object.freeze({error:()=>{},warn:()=>{},info:()=>{},log:()=>{}});var Oe;(function(n){n[n.Off=0]="Off",n[n.Messages=1]="Messages",n[n.Compact=2]="Compact",n[n.Verbose=3]="Verbose"})(Oe||(me.Trace=Oe={}));var Xh;(function(n){n.Off="off",n.Messages="messages",n.Compact="compact",n.Verbose="verbose"})(Xh||(me.TraceValues=Xh={}));(function(n){function e(r){if(!Ye.string(r))return n.Off;switch(r=r.toLowerCase(),r){case"off":return n.Off;case"messages":return n.Messages;case"compact":return n.Compact;case"verbose":return n.Verbose;default:return n.Off}}n.fromString=e;function t(r){switch(r){case n.Off:return"off";case n.Messages:return"messages";case n.Compact:return"compact";case n.Verbose:return"verbose";default:return"off"}}n.toString=t})(Oe||(me.Trace=Oe={}));var Xt;(function(n){n.Text="text",n.JSON="json"})(Xt||(me.TraceFormat=Xt={}));(function(n){function e(t){return Ye.string(t)?(t=t.toLowerCase(),t==="json"?n.JSON:n.Text):n.Text}n.fromString=e})(Xt||(me.TraceFormat=Xt={}));var Xc;(function(n){n.type=new se.NotificationType("$/setTrace")})(Xc||(me.SetTraceNotification=Xc={}));var Go;(function(n){n.type=new se.NotificationType("$/logTrace")})(Go||(me.LogTraceNotification=Go={}));var Li;(function(n){n[n.Closed=1]="Closed",n[n.Disposed=2]="Disposed",n[n.AlreadyListening=3]="AlreadyListening"})(Li||(me.ConnectionErrors=Li={}));var Zr=class n extends Error{constructor(e,t){super(t),this.code=e,Object.setPrototypeOf(this,n.prototype)}};me.ConnectionError=Zr;var Qc;(function(n){function e(t){let r=t;return r&&Ye.func(r.cancelUndispatched)}n.is=e})(Qc||(me.ConnectionStrategy=Qc={}));var Jo;(function(n){function e(t){let r=t;return r&&(r.kind===void 0||r.kind==="id")&&Ye.func(r.createCancellationTokenSource)&&(r.dispose===void 0||Ye.func(r.dispose))}n.is=e})(Jo||(me.IdCancellationReceiverStrategy=Jo={}));var Yc;(function(n){function e(t){let r=t;return r&&r.kind==="request"&&Ye.func(r.createCancellationTokenSource)&&(r.dispose===void 0||Ye.func(r.dispose))}n.is=e})(Yc||(me.RequestCancellationReceiverStrategy=Yc={}));var Xo;(function(n){n.Message=Object.freeze({createCancellationTokenSource(t){return new zc.CancellationTokenSource}});function e(t){return Jo.is(t)||Yc.is(t)}n.is=e})(Xo||(me.CancellationReceiverStrategy=Xo={}));var Qo;(function(n){n.Message=Object.freeze({sendCancellation(t,r){return t.sendNotification(Ni.type,{id:r})},cleanup(t){}});function e(t){let r=t;return r&&Ye.func(r.sendCancellation)&&Ye.func(r.cleanup)}n.is=e})(Qo||(me.CancellationSenderStrategy=Qo={}));var Yo;(function(n){n.Message=Object.freeze({receiver:Xo.Message,sender:Qo.Message});function e(t){let r=t;return r&&Xo.is(r.receiver)&&Qo.is(r.sender)}n.is=e})(Yo||(me.CancellationStrategy=Yo={}));var Zo;(function(n){function e(t){let r=t;return r&&Ye.func(r.handleMessage)}n.is=e})(Zo||(me.MessageStrategy=Zo={}));var Qh;(function(n){function e(t){let r=t;return r&&(Yo.is(r.cancellationStrategy)||Qc.is(r.connectionStrategy)||Zo.is(r.messageStrategy))}n.is=e})(Qh||(me.ConnectionOptions=Qh={}));var Sn;(function(n){n[n.New=1]="New",n[n.Listening=2]="Listening",n[n.Closed=3]="Closed",n[n.Disposed=4]="Disposed"})(Sn||(Sn={}));function jS(n,e,t,r){let i=t!==void 0?t:me.NullLogger,o=0,s=0,a=0,c="2.0",u,d=new Map,g,m=new Map,y=new Map,v,T=new Jh.LinkedMap,P=new Map,q=new Set,A=new Map,L=Oe.Off,K=Xt.Text,te,Z=Sn.New,V=new Mi.Emitter,ne=new Mi.Emitter,ce=new Mi.Emitter,Ne=new Mi.Emitter,U=new Mi.Emitter,I=r&&r.cancellationStrategy?r.cancellationStrategy:Yo.Message;function J(C){if(C===null)throw new Error("Can't send requests with id null since the response can't be correlated.");return"req-"+C.toString()}function B(C){return C===null?"res-unknown-"+(++a).toString():"res-"+C.toString()}function pe(){return"not-"+(++s).toString()}function ie(C,O){se.Message.isRequest(O)?C.set(J(O.id),O):se.Message.isResponse(O)?C.set(B(O.id),O):C.set(pe(),O)}function oe(C){}function st(){return Z===Sn.Listening}function be(){return Z===Sn.Closed}function Re(){return Z===Sn.Disposed}function ct(){(Z===Sn.New||Z===Sn.Listening)&&(Z=Sn.Closed,ne.fire(void 0))}function Ct(C){V.fire([C,void 0,void 0])}function nr(C){V.fire(C)}n.onClose(ct),n.onError(Ct),e.onClose(ct),e.onError(nr);function En(){v||T.size===0||(v=(0,Gh.default)().timer.setImmediate(()=>{v=void 0,Kn()}))}function xn(C){se.Message.isRequest(C)?qn(C):se.Message.isNotification(C)?vn(C):se.Message.isResponse(C)?mn(C):In(C)}function Kn(){if(T.size===0)return;let C=T.shift();try{let O=r?.messageStrategy;Zo.is(O)?O.handleMessage(C,xn):xn(C)}finally{En()}}let rr=C=>{try{if(se.Message.isNotification(C)&&C.method===Ni.type.method){let O=C.params.id,W=J(O),G=T.get(W);if(se.Message.isRequest(G)){let Pe=r?.connectionStrategy,Ae=Pe&&Pe.cancelUndispatched?Pe.cancelUndispatched(G,oe):void 0;if(Ae&&(Ae.error!==void 0||Ae.result!==void 0)){T.delete(W),A.delete(O),Ae.id=G.id,rn(Ae,C.method,Date.now()),e.write(Ae).catch(()=>i.error("Sending response for canceled message failed."));return}}let xe=A.get(O);if(xe!==void 0){xe.cancel(),on(C);return}else q.add(O)}ie(T,C)}finally{En()}};function qn(C){if(Re())return;function O(ye,Ie,De){let Ue={jsonrpc:c,id:C.id};ye instanceof se.ResponseError?Ue.error=ye.toJson():Ue.result=ye===void 0?null:ye,rn(Ue,Ie,De),e.write(Ue).catch(()=>i.error("Sending response failed."))}function W(ye,Ie,De){let Ue={jsonrpc:c,id:C.id,error:ye.toJson()};rn(Ue,Ie,De),e.write(Ue).catch(()=>i.error("Sending response failed."))}function G(ye,Ie,De){ye===void 0&&(ye=null);let Ue={jsonrpc:c,id:C.id,result:ye};rn(Ue,Ie,De),e.write(Ue).catch(()=>i.error("Sending response failed."))}ir(C);let xe=d.get(C.method),Pe,Ae;xe&&(Pe=xe.type,Ae=xe.handler);let $e=Date.now();if(Ae||u){let ye=C.id??String(Date.now()),Ie=Jo.is(I.receiver)?I.receiver.createCancellationTokenSource(ye):I.receiver.createCancellationTokenSource(C);C.id!==null&&q.has(C.id)&&Ie.cancel(),C.id!==null&&A.set(ye,Ie);try{let De;if(Ae)if(C.params===void 0){if(Pe!==void 0&&Pe.numberOfParams!==0){W(new se.ResponseError(se.ErrorCodes.InvalidParams,`Request ${C.method} defines ${Pe.numberOfParams} params but received none.`),C.method,$e);return}De=Ae(Ie.token)}else if(Array.isArray(C.params)){if(Pe!==void 0&&Pe.parameterStructures===se.ParameterStructures.byName){W(new se.ResponseError(se.ErrorCodes.InvalidParams,`Request ${C.method} defines parameters by name but received parameters by position`),C.method,$e);return}De=Ae(...C.params,Ie.token)}else{if(Pe!==void 0&&Pe.parameterStructures===se.ParameterStructures.byPosition){W(new se.ResponseError(se.ErrorCodes.InvalidParams,`Request ${C.method} defines parameters by position but received parameters by name`),C.method,$e);return}De=Ae(C.params,Ie.token)}else u&&(De=u(C.method,C.params,Ie.token));let Ue=De;De?Ue.then?Ue.then(nt=>{A.delete(ye),O(nt,C.method,$e)},nt=>{A.delete(ye),nt instanceof se.ResponseError?W(nt,C.method,$e):nt&&Ye.string(nt.message)?W(new se.ResponseError(se.ErrorCodes.InternalError,`Request ${C.method} failed with message: ${nt.message}`),C.method,$e):W(new se.ResponseError(se.ErrorCodes.InternalError,`Request ${C.method} failed unexpectedly without providing any details.`),C.method,$e)}):(A.delete(ye),O(De,C.method,$e)):(A.delete(ye),G(De,C.method,$e))}catch(De){A.delete(ye),De instanceof se.ResponseError?O(De,C.method,$e):De&&Ye.string(De.message)?W(new se.ResponseError(se.ErrorCodes.InternalError,`Request ${C.method} failed with message: ${De.message}`),C.method,$e):W(new se.ResponseError(se.ErrorCodes.InternalError,`Request ${C.method} failed unexpectedly without providing any details.`),C.method,$e)}}else W(new se.ResponseError(se.ErrorCodes.MethodNotFound,`Unhandled method ${C.method}`),C.method,$e)}function mn(C){if(!Re())if(C.id===null)C.error?i.error(`Received response message without id: Error is:
14
+ ${d}`);let m=d.substr(0,g),y=d.substr(g+1).trim();a.set(e?m.toLowerCase():m,y)}return a}tryReadBody(e){if(!(this._totalLength<e))return this._read(e)}get numberOfBytes(){return this._totalLength}_read(e){if(e===0)return this.emptyBuffer();if(e>this._totalLength)throw new Error("Cannot read so many bytes!");if(this._chunks[0].byteLength===e){let o=this._chunks[0];return this._chunks.shift(),this._totalLength-=e,this.asNative(o)}if(this._chunks[0].byteLength>e){let o=this._chunks[0],s=this.asNative(o,e);return this._chunks[0]=o.slice(e),this._totalLength-=e,s}let t=this.allocNative(e),r=0,i=0;for(;e>0;){let o=this._chunks[i];if(o.byteLength>e){let s=o.slice(0,e);t.set(s,r),r+=e,this._chunks[i]=o.slice(e),this._totalLength-=e,e-=e}else t.set(o,r),r+=o.byteLength,this._chunks.shift(),this._totalLength-=o.byteLength,e-=o.byteLength}return t}};Bo.AbstractMessageBuffer=Vc});var Yh=E(me=>{"use strict";Object.defineProperty(me,"__esModule",{value:!0});me.createMessageConnection=me.ConnectionOptions=me.MessageStrategy=me.CancellationStrategy=me.CancellationSenderStrategy=me.CancellationReceiverStrategy=me.RequestCancellationReceiverStrategy=me.IdCancellationReceiverStrategy=me.ConnectionStrategy=me.ConnectionError=me.ConnectionErrors=me.LogTraceNotification=me.SetTraceNotification=me.TraceFormat=me.TraceValues=me.Trace=me.NullLogger=me.ProgressType=me.ProgressToken=void 0;var Gh=lr(),Ye=Br(),se=_c(),Jh=Rc(),Mi=Jr(),zc=Wo(),Ni;(function(n){n.type=new se.NotificationType("$/cancelRequest")})(Ni||(Ni={}));var Bc;(function(n){function e(t){return typeof t=="string"||typeof t=="number"}n.is=e})(Bc||(me.ProgressToken=Bc={}));var Ai;(function(n){n.type=new se.NotificationType("$/progress")})(Ai||(Ai={}));var Gc=class{constructor(){}};me.ProgressType=Gc;var Jc;(function(n){function e(t){return Ye.func(t)}n.is=e})(Jc||(Jc={}));me.NullLogger=Object.freeze({error:()=>{},warn:()=>{},info:()=>{},log:()=>{}});var Oe;(function(n){n[n.Off=0]="Off",n[n.Messages=1]="Messages",n[n.Compact=2]="Compact",n[n.Verbose=3]="Verbose"})(Oe||(me.Trace=Oe={}));var Xh;(function(n){n.Off="off",n.Messages="messages",n.Compact="compact",n.Verbose="verbose"})(Xh||(me.TraceValues=Xh={}));(function(n){function e(r){if(!Ye.string(r))return n.Off;switch(r=r.toLowerCase(),r){case"off":return n.Off;case"messages":return n.Messages;case"compact":return n.Compact;case"verbose":return n.Verbose;default:return n.Off}}n.fromString=e;function t(r){switch(r){case n.Off:return"off";case n.Messages:return"messages";case n.Compact:return"compact";case n.Verbose:return"verbose";default:return"off"}}n.toString=t})(Oe||(me.Trace=Oe={}));var Xt;(function(n){n.Text="text",n.JSON="json"})(Xt||(me.TraceFormat=Xt={}));(function(n){function e(t){return Ye.string(t)?(t=t.toLowerCase(),t==="json"?n.JSON:n.Text):n.Text}n.fromString=e})(Xt||(me.TraceFormat=Xt={}));var Xc;(function(n){n.type=new se.NotificationType("$/setTrace")})(Xc||(me.SetTraceNotification=Xc={}));var Go;(function(n){n.type=new se.NotificationType("$/logTrace")})(Go||(me.LogTraceNotification=Go={}));var Li;(function(n){n[n.Closed=1]="Closed",n[n.Disposed=2]="Disposed",n[n.AlreadyListening=3]="AlreadyListening"})(Li||(me.ConnectionErrors=Li={}));var Zr=class n extends Error{constructor(e,t){super(t),this.code=e,Object.setPrototypeOf(this,n.prototype)}};me.ConnectionError=Zr;var Qc;(function(n){function e(t){let r=t;return r&&Ye.func(r.cancelUndispatched)}n.is=e})(Qc||(me.ConnectionStrategy=Qc={}));var Jo;(function(n){function e(t){let r=t;return r&&(r.kind===void 0||r.kind==="id")&&Ye.func(r.createCancellationTokenSource)&&(r.dispose===void 0||Ye.func(r.dispose))}n.is=e})(Jo||(me.IdCancellationReceiverStrategy=Jo={}));var Yc;(function(n){function e(t){let r=t;return r&&r.kind==="request"&&Ye.func(r.createCancellationTokenSource)&&(r.dispose===void 0||Ye.func(r.dispose))}n.is=e})(Yc||(me.RequestCancellationReceiverStrategy=Yc={}));var Xo;(function(n){n.Message=Object.freeze({createCancellationTokenSource(t){return new zc.CancellationTokenSource}});function e(t){return Jo.is(t)||Yc.is(t)}n.is=e})(Xo||(me.CancellationReceiverStrategy=Xo={}));var Qo;(function(n){n.Message=Object.freeze({sendCancellation(t,r){return t.sendNotification(Ni.type,{id:r})},cleanup(t){}});function e(t){let r=t;return r&&Ye.func(r.sendCancellation)&&Ye.func(r.cleanup)}n.is=e})(Qo||(me.CancellationSenderStrategy=Qo={}));var Yo;(function(n){n.Message=Object.freeze({receiver:Xo.Message,sender:Qo.Message});function e(t){let r=t;return r&&Xo.is(r.receiver)&&Qo.is(r.sender)}n.is=e})(Yo||(me.CancellationStrategy=Yo={}));var Zo;(function(n){function e(t){let r=t;return r&&Ye.func(r.handleMessage)}n.is=e})(Zo||(me.MessageStrategy=Zo={}));var Qh;(function(n){function e(t){let r=t;return r&&(Yo.is(r.cancellationStrategy)||Qc.is(r.connectionStrategy)||Zo.is(r.messageStrategy))}n.is=e})(Qh||(me.ConnectionOptions=Qh={}));var Sn;(function(n){n[n.New=1]="New",n[n.Listening=2]="Listening",n[n.Closed=3]="Closed",n[n.Disposed=4]="Disposed"})(Sn||(Sn={}));function jS(n,e,t,r){let i=t!==void 0?t:me.NullLogger,o=0,s=0,a=0,c="2.0",u,d=new Map,g,m=new Map,y=new Map,v,T=new Jh.LinkedMap,P=new Map,q=new Set,L=new Map,N=Oe.Off,K=Xt.Text,te,Z=Sn.New,V=new Mi.Emitter,ne=new Mi.Emitter,ce=new Mi.Emitter,Ne=new Mi.Emitter,U=new Mi.Emitter,I=r&&r.cancellationStrategy?r.cancellationStrategy:Yo.Message;function J(C){if(C===null)throw new Error("Can't send requests with id null since the response can't be correlated.");return"req-"+C.toString()}function B(C){return C===null?"res-unknown-"+(++a).toString():"res-"+C.toString()}function pe(){return"not-"+(++s).toString()}function ie(C,O){se.Message.isRequest(O)?C.set(J(O.id),O):se.Message.isResponse(O)?C.set(B(O.id),O):C.set(pe(),O)}function oe(C){}function st(){return Z===Sn.Listening}function be(){return Z===Sn.Closed}function Re(){return Z===Sn.Disposed}function ct(){(Z===Sn.New||Z===Sn.Listening)&&(Z=Sn.Closed,ne.fire(void 0))}function Ct(C){V.fire([C,void 0,void 0])}function nr(C){V.fire(C)}n.onClose(ct),n.onError(Ct),e.onClose(ct),e.onError(nr);function En(){v||T.size===0||(v=(0,Gh.default)().timer.setImmediate(()=>{v=void 0,Kn()}))}function xn(C){se.Message.isRequest(C)?qn(C):se.Message.isNotification(C)?vn(C):se.Message.isResponse(C)?mn(C):In(C)}function Kn(){if(T.size===0)return;let C=T.shift();try{let O=r?.messageStrategy;Zo.is(O)?O.handleMessage(C,xn):xn(C)}finally{En()}}let rr=C=>{try{if(se.Message.isNotification(C)&&C.method===Ni.type.method){let O=C.params.id,W=J(O),G=T.get(W);if(se.Message.isRequest(G)){let Pe=r?.connectionStrategy,Ae=Pe&&Pe.cancelUndispatched?Pe.cancelUndispatched(G,oe):void 0;if(Ae&&(Ae.error!==void 0||Ae.result!==void 0)){T.delete(W),L.delete(O),Ae.id=G.id,rn(Ae,C.method,Date.now()),e.write(Ae).catch(()=>i.error("Sending response for canceled message failed."));return}}let xe=L.get(O);if(xe!==void 0){xe.cancel(),on(C);return}else q.add(O)}ie(T,C)}finally{En()}};function qn(C){if(Re())return;function O(ye,Ie,De){let Ue={jsonrpc:c,id:C.id};ye instanceof se.ResponseError?Ue.error=ye.toJson():Ue.result=ye===void 0?null:ye,rn(Ue,Ie,De),e.write(Ue).catch(()=>i.error("Sending response failed."))}function W(ye,Ie,De){let Ue={jsonrpc:c,id:C.id,error:ye.toJson()};rn(Ue,Ie,De),e.write(Ue).catch(()=>i.error("Sending response failed."))}function G(ye,Ie,De){ye===void 0&&(ye=null);let Ue={jsonrpc:c,id:C.id,result:ye};rn(Ue,Ie,De),e.write(Ue).catch(()=>i.error("Sending response failed."))}ir(C);let xe=d.get(C.method),Pe,Ae;xe&&(Pe=xe.type,Ae=xe.handler);let $e=Date.now();if(Ae||u){let ye=C.id??String(Date.now()),Ie=Jo.is(I.receiver)?I.receiver.createCancellationTokenSource(ye):I.receiver.createCancellationTokenSource(C);C.id!==null&&q.has(C.id)&&Ie.cancel(),C.id!==null&&L.set(ye,Ie);try{let De;if(Ae)if(C.params===void 0){if(Pe!==void 0&&Pe.numberOfParams!==0){W(new se.ResponseError(se.ErrorCodes.InvalidParams,`Request ${C.method} defines ${Pe.numberOfParams} params but received none.`),C.method,$e);return}De=Ae(Ie.token)}else if(Array.isArray(C.params)){if(Pe!==void 0&&Pe.parameterStructures===se.ParameterStructures.byName){W(new se.ResponseError(se.ErrorCodes.InvalidParams,`Request ${C.method} defines parameters by name but received parameters by position`),C.method,$e);return}De=Ae(...C.params,Ie.token)}else{if(Pe!==void 0&&Pe.parameterStructures===se.ParameterStructures.byPosition){W(new se.ResponseError(se.ErrorCodes.InvalidParams,`Request ${C.method} defines parameters by position but received parameters by name`),C.method,$e);return}De=Ae(C.params,Ie.token)}else u&&(De=u(C.method,C.params,Ie.token));let Ue=De;De?Ue.then?Ue.then(nt=>{L.delete(ye),O(nt,C.method,$e)},nt=>{L.delete(ye),nt instanceof se.ResponseError?W(nt,C.method,$e):nt&&Ye.string(nt.message)?W(new se.ResponseError(se.ErrorCodes.InternalError,`Request ${C.method} failed with message: ${nt.message}`),C.method,$e):W(new se.ResponseError(se.ErrorCodes.InternalError,`Request ${C.method} failed unexpectedly without providing any details.`),C.method,$e)}):(L.delete(ye),O(De,C.method,$e)):(L.delete(ye),G(De,C.method,$e))}catch(De){L.delete(ye),De instanceof se.ResponseError?O(De,C.method,$e):De&&Ye.string(De.message)?W(new se.ResponseError(se.ErrorCodes.InternalError,`Request ${C.method} failed with message: ${De.message}`),C.method,$e):W(new se.ResponseError(se.ErrorCodes.InternalError,`Request ${C.method} failed unexpectedly without providing any details.`),C.method,$e)}}else W(new se.ResponseError(se.ErrorCodes.MethodNotFound,`Unhandled method ${C.method}`),C.method,$e)}function mn(C){if(!Re())if(C.id===null)C.error?i.error(`Received response message without id: Error is:
15
15
  ${JSON.stringify(C.error,void 0,4)}`):i.error("Received response message without id. No further error information provided.");else{let O=C.id,W=P.get(O);if(Fn(C,W),W!==void 0){P.delete(O);try{if(C.error){let G=C.error;W.reject(new se.ResponseError(G.code,G.message,G.data))}else if(C.result!==void 0)W.resolve(C.result);else throw new Error("Should never happen.")}catch(G){G.message?i.error(`Response handler '${W.method}' failed with message: ${G.message}`):i.error(`Response handler '${W.method}' failed unexpectedly.`)}}}}function vn(C){if(Re())return;let O,W;if(C.method===Ni.type.method){let G=C.params.id;q.delete(G),on(C);return}else{let G=m.get(C.method);G&&(W=G.handler,O=G.type)}if(W||g)try{if(on(C),W)if(C.params===void 0)O!==void 0&&O.numberOfParams!==0&&O.parameterStructures!==se.ParameterStructures.byName&&i.error(`Notification ${C.method} defines ${O.numberOfParams} params but received none.`),W();else if(Array.isArray(C.params)){let G=C.params;C.method===Ai.type.method&&G.length===2&&Bc.is(G[0])?W({token:G[0],value:G[1]}):(O!==void 0&&(O.parameterStructures===se.ParameterStructures.byName&&i.error(`Notification ${C.method} defines parameters by name but received parameters by position`),O.numberOfParams!==C.params.length&&i.error(`Notification ${C.method} defines ${O.numberOfParams} params but received ${G.length} arguments`)),W(...G))}else O!==void 0&&O.parameterStructures===se.ParameterStructures.byPosition&&i.error(`Notification ${C.method} defines parameters by position but received parameters by name`),W(C.params);else g&&g(C.method,C.params)}catch(G){G.message?i.error(`Notification handler '${C.method}' failed with message: ${G.message}`):i.error(`Notification handler '${C.method}' failed unexpectedly.`)}else ce.fire(C)}function In(C){if(!C){i.error("Received empty message.");return}i.error(`Received message which is neither a response nor a notification message:
16
- ${JSON.stringify(C,null,4)}`);let O=C;if(Ye.string(O.id)||Ye.number(O.id)){let W=O.id,G=P.get(W);G&&G.reject(new Error("The received response has neither a result nor an error property."))}}function ut(C){if(C!=null)switch(L){case Oe.Verbose:return JSON.stringify(C,null,4);case Oe.Compact:return JSON.stringify(C);default:return}}function Vn(C){if(!(L===Oe.Off||!te))if(K===Xt.Text){let O;(L===Oe.Verbose||L===Oe.Compact)&&C.params&&(O=`Params: ${ut(C.params)}
16
+ ${JSON.stringify(C,null,4)}`);let O=C;if(Ye.string(O.id)||Ye.number(O.id)){let W=O.id,G=P.get(W);G&&G.reject(new Error("The received response has neither a result nor an error property."))}}function ut(C){if(C!=null)switch(N){case Oe.Verbose:return JSON.stringify(C,null,4);case Oe.Compact:return JSON.stringify(C);default:return}}function Vn(C){if(!(N===Oe.Off||!te))if(K===Xt.Text){let O;(N===Oe.Verbose||N===Oe.Compact)&&C.params&&(O=`Params: ${ut(C.params)}
17
17
 
18
- `),te.log(`Sending request '${C.method} - (${C.id})'.`,O)}else at("send-request",C)}function yn(C){if(!(L===Oe.Off||!te))if(K===Xt.Text){let O;(L===Oe.Verbose||L===Oe.Compact)&&(C.params?O=`Params: ${ut(C.params)}
18
+ `),te.log(`Sending request '${C.method} - (${C.id})'.`,O)}else at("send-request",C)}function yn(C){if(!(N===Oe.Off||!te))if(K===Xt.Text){let O;(N===Oe.Verbose||N===Oe.Compact)&&(C.params?O=`Params: ${ut(C.params)}
19
19
 
20
20
  `:O=`No parameters provided.
21
21
 
22
- `),te.log(`Sending notification '${C.method}'.`,O)}else at("send-notification",C)}function rn(C,O,W){if(!(L===Oe.Off||!te))if(K===Xt.Text){let G;(L===Oe.Verbose||L===Oe.Compact)&&(C.error&&C.error.data?G=`Error data: ${ut(C.error.data)}
22
+ `),te.log(`Sending notification '${C.method}'.`,O)}else at("send-notification",C)}function rn(C,O,W){if(!(N===Oe.Off||!te))if(K===Xt.Text){let G;(N===Oe.Verbose||N===Oe.Compact)&&(C.error&&C.error.data?G=`Error data: ${ut(C.error.data)}
23
23
 
24
24
  `:C.result?G=`Result: ${ut(C.result)}
25
25
 
26
26
  `:C.error===void 0&&(G=`No result returned.
27
27
 
28
- `)),te.log(`Sending response '${O} - (${C.id})'. Processing request took ${Date.now()-W}ms`,G)}else at("send-response",C)}function ir(C){if(!(L===Oe.Off||!te))if(K===Xt.Text){let O;(L===Oe.Verbose||L===Oe.Compact)&&C.params&&(O=`Params: ${ut(C.params)}
28
+ `)),te.log(`Sending response '${O} - (${C.id})'. Processing request took ${Date.now()-W}ms`,G)}else at("send-response",C)}function ir(C){if(!(N===Oe.Off||!te))if(K===Xt.Text){let O;(N===Oe.Verbose||N===Oe.Compact)&&C.params&&(O=`Params: ${ut(C.params)}
29
29
 
30
- `),te.log(`Received request '${C.method} - (${C.id})'.`,O)}else at("receive-request",C)}function on(C){if(!(L===Oe.Off||!te||C.method===Go.type.method))if(K===Xt.Text){let O;(L===Oe.Verbose||L===Oe.Compact)&&(C.params?O=`Params: ${ut(C.params)}
30
+ `),te.log(`Received request '${C.method} - (${C.id})'.`,O)}else at("receive-request",C)}function on(C){if(!(N===Oe.Off||!te||C.method===Go.type.method))if(K===Xt.Text){let O;(N===Oe.Verbose||N===Oe.Compact)&&(C.params?O=`Params: ${ut(C.params)}
31
31
 
32
32
  `:O=`No parameters provided.
33
33
 
34
- `),te.log(`Received notification '${C.method}'.`,O)}else at("receive-notification",C)}function Fn(C,O){if(!(L===Oe.Off||!te))if(K===Xt.Text){let W;if((L===Oe.Verbose||L===Oe.Compact)&&(C.error&&C.error.data?W=`Error data: ${ut(C.error.data)}
34
+ `),te.log(`Received notification '${C.method}'.`,O)}else at("receive-notification",C)}function Fn(C,O){if(!(N===Oe.Off||!te))if(K===Xt.Text){let W;if((N===Oe.Verbose||N===Oe.Compact)&&(C.error&&C.error.data?W=`Error data: ${ut(C.error.data)}
35
35
 
36
36
  `:C.result?W=`Result: ${ut(C.result)}
37
37
 
38
38
  `:C.error===void 0&&(W=`No result returned.
39
39
 
40
- `)),O){let G=C.error?` Request failed: ${C.error.message} (${C.error.code}).`:"";te.log(`Received response '${O.method} - (${C.id})' in ${Date.now()-O.timerStart}ms.${G}`,W)}else te.log(`Received response ${C.id} without active response promise.`,W)}else at("receive-response",C)}function at(C,O){if(!te||L===Oe.Off)return;let W={isLSPMessage:!0,type:C,message:O,timestamp:Date.now()};te.log(W)}function Tt(){if(be())throw new Zr(Li.Closed,"Connection is closed.");if(Re())throw new Zr(Li.Disposed,"Connection is disposed.")}function Dt(){if(st())throw new Zr(Li.AlreadyListening,"Connection is already listening")}function Gt(){if(!st())throw new Error("Call listen() first.")}function Lt(C){return C===void 0?null:C}function On(C){if(C!==null)return C}function zn(C){return C!=null&&!Array.isArray(C)&&typeof C=="object"}function bn(C,O){switch(C){case se.ParameterStructures.auto:return zn(O)?On(O):[Lt(O)];case se.ParameterStructures.byName:if(!zn(O))throw new Error("Received parameters by name but param is not an object literal.");return On(O);case se.ParameterStructures.byPosition:return[Lt(O)];default:throw new Error(`Unknown parameter structure ${C.toString()}`)}}function Bn(C,O){let W,G=C.numberOfParams;switch(G){case 0:W=void 0;break;case 1:W=bn(C.parameterStructures,O[0]);break;default:W=[];for(let xe=0;xe<O.length&&xe<G;xe++)W.push(Lt(O[xe]));if(O.length<G)for(let xe=O.length;xe<G;xe++)W.push(null);break}return W}let Ft={sendNotification:(C,...O)=>{Tt();let W,G;if(Ye.string(C)){W=C;let Pe=O[0],Ae=0,$e=se.ParameterStructures.auto;se.ParameterStructures.is(Pe)&&(Ae=1,$e=Pe);let ye=O.length,Ie=ye-Ae;switch(Ie){case 0:G=void 0;break;case 1:G=bn($e,O[Ae]);break;default:if($e===se.ParameterStructures.byName)throw new Error(`Received ${Ie} parameters for 'by Name' notification parameter structure.`);G=O.slice(Ae,ye).map(De=>Lt(De));break}}else{let Pe=O;W=C.method,G=Bn(C,Pe)}let xe={jsonrpc:c,method:W,params:G};return yn(xe),e.write(xe).catch(Pe=>{throw i.error("Sending notification failed."),Pe})},onNotification:(C,O)=>{Tt();let W;return Ye.func(C)?g=C:O&&(Ye.string(C)?(W=C,m.set(C,{type:void 0,handler:O})):(W=C.method,m.set(C.method,{type:C,handler:O}))),{dispose:()=>{W!==void 0?m.delete(W):g=void 0}}},onProgress:(C,O,W)=>{if(y.has(O))throw new Error(`Progress handler for token ${O} already registered`);return y.set(O,W),{dispose:()=>{y.delete(O)}}},sendProgress:(C,O,W)=>Ft.sendNotification(Ai.type,{token:O,value:W}),onUnhandledProgress:Ne.event,sendRequest:(C,...O)=>{Tt(),Gt();let W,G,xe;if(Ye.string(C)){W=C;let ye=O[0],Ie=O[O.length-1],De=0,Ue=se.ParameterStructures.auto;se.ParameterStructures.is(ye)&&(De=1,Ue=ye);let nt=O.length;zc.CancellationToken.is(Ie)&&(nt=nt-1,xe=Ie);let ht=nt-De;switch(ht){case 0:G=void 0;break;case 1:G=bn(Ue,O[De]);break;default:if(Ue===se.ParameterStructures.byName)throw new Error(`Received ${ht} parameters for 'by Name' request parameter structure.`);G=O.slice(De,nt).map(or=>Lt(or));break}}else{let ye=O;W=C.method,G=Bn(C,ye);let Ie=C.numberOfParams;xe=zc.CancellationToken.is(ye[Ie])?ye[Ie]:void 0}let Pe=o++,Ae;xe&&(Ae=xe.onCancellationRequested(()=>{let ye=I.sender.sendCancellation(Ft,Pe);return ye===void 0?(i.log(`Received no promise from cancellation strategy when cancelling id ${Pe}`),Promise.resolve()):ye.catch(()=>{i.log(`Sending cancellation messages for id ${Pe} failed`)})}));let $e={jsonrpc:c,id:Pe,method:W,params:G};return Vn($e),typeof I.sender.enableCancellation=="function"&&I.sender.enableCancellation($e),new Promise(async(ye,Ie)=>{let De=ht=>{ye(ht),I.sender.cleanup(Pe),Ae?.dispose()},Ue=ht=>{Ie(ht),I.sender.cleanup(Pe),Ae?.dispose()},nt={method:W,timerStart:Date.now(),resolve:De,reject:Ue};try{await e.write($e),P.set(Pe,nt)}catch(ht){throw i.error("Sending request failed."),nt.reject(new se.ResponseError(se.ErrorCodes.MessageWriteError,ht.message?ht.message:"Unknown reason")),ht}})},onRequest:(C,O)=>{Tt();let W=null;return Jc.is(C)?(W=void 0,u=C):Ye.string(C)?(W=null,O!==void 0&&(W=C,d.set(C,{handler:O,type:void 0}))):O!==void 0&&(W=C.method,d.set(C.method,{type:C,handler:O})),{dispose:()=>{W!==null&&(W!==void 0?d.delete(W):u=void 0)}}},hasPendingResponse:()=>P.size>0,trace:async(C,O,W)=>{let G=!1,xe=Xt.Text;W!==void 0&&(Ye.boolean(W)?G=W:(G=W.sendNotification||!1,xe=W.traceFormat||Xt.Text)),L=C,K=xe,L===Oe.Off?te=void 0:te=O,G&&!be()&&!Re()&&await Ft.sendNotification(Xc.type,{value:Oe.toString(C)})},onError:V.event,onClose:ne.event,onUnhandledNotification:ce.event,onDispose:U.event,end:()=>{e.end()},dispose:()=>{if(Re())return;Z=Sn.Disposed,U.fire(void 0);let C=new se.ResponseError(se.ErrorCodes.PendingResponseRejected,"Pending response rejected since connection got disposed");for(let O of P.values())O.reject(C);P=new Map,A=new Map,q=new Set,T=new Jh.LinkedMap,Ye.func(e.dispose)&&e.dispose(),Ye.func(n.dispose)&&n.dispose()},listen:()=>{Tt(),Dt(),Z=Sn.Listening,n.listen(rr)},inspect:()=>{(0,Gh.default)().console.log("inspect")}};return Ft.onNotification(Go.type,C=>{if(L===Oe.Off||!te)return;let O=L===Oe.Verbose||L===Oe.Compact;te.log(C.message,O?C.verbose:void 0)}),Ft.onNotification(Ai.type,C=>{let O=y.get(C.token);O?O(C.value):Ne.fire(C)}),Ft}me.createMessageConnection=jS});var es=E(F=>{"use strict";Object.defineProperty(F,"__esModule",{value:!0});F.ProgressType=F.ProgressToken=F.createMessageConnection=F.NullLogger=F.ConnectionOptions=F.ConnectionStrategy=F.AbstractMessageBuffer=F.WriteableStreamMessageWriter=F.AbstractMessageWriter=F.MessageWriter=F.ReadableStreamMessageReader=F.AbstractMessageReader=F.MessageReader=F.SharedArrayReceiverStrategy=F.SharedArraySenderStrategy=F.CancellationToken=F.CancellationTokenSource=F.Emitter=F.Event=F.Disposable=F.LRUCache=F.Touch=F.LinkedMap=F.ParameterStructures=F.NotificationType9=F.NotificationType8=F.NotificationType7=F.NotificationType6=F.NotificationType5=F.NotificationType4=F.NotificationType3=F.NotificationType2=F.NotificationType1=F.NotificationType0=F.NotificationType=F.ErrorCodes=F.ResponseError=F.RequestType9=F.RequestType8=F.RequestType7=F.RequestType6=F.RequestType5=F.RequestType4=F.RequestType3=F.RequestType2=F.RequestType1=F.RequestType0=F.RequestType=F.Message=F.RAL=void 0;F.MessageStrategy=F.CancellationStrategy=F.CancellationSenderStrategy=F.CancellationReceiverStrategy=F.ConnectionError=F.ConnectionErrors=F.LogTraceNotification=F.SetTraceNotification=F.TraceFormat=F.TraceValues=F.Trace=void 0;var Ve=_c();Object.defineProperty(F,"Message",{enumerable:!0,get:function(){return Ve.Message}});Object.defineProperty(F,"RequestType",{enumerable:!0,get:function(){return Ve.RequestType}});Object.defineProperty(F,"RequestType0",{enumerable:!0,get:function(){return Ve.RequestType0}});Object.defineProperty(F,"RequestType1",{enumerable:!0,get:function(){return Ve.RequestType1}});Object.defineProperty(F,"RequestType2",{enumerable:!0,get:function(){return Ve.RequestType2}});Object.defineProperty(F,"RequestType3",{enumerable:!0,get:function(){return Ve.RequestType3}});Object.defineProperty(F,"RequestType4",{enumerable:!0,get:function(){return Ve.RequestType4}});Object.defineProperty(F,"RequestType5",{enumerable:!0,get:function(){return Ve.RequestType5}});Object.defineProperty(F,"RequestType6",{enumerable:!0,get:function(){return Ve.RequestType6}});Object.defineProperty(F,"RequestType7",{enumerable:!0,get:function(){return Ve.RequestType7}});Object.defineProperty(F,"RequestType8",{enumerable:!0,get:function(){return Ve.RequestType8}});Object.defineProperty(F,"RequestType9",{enumerable:!0,get:function(){return Ve.RequestType9}});Object.defineProperty(F,"ResponseError",{enumerable:!0,get:function(){return Ve.ResponseError}});Object.defineProperty(F,"ErrorCodes",{enumerable:!0,get:function(){return Ve.ErrorCodes}});Object.defineProperty(F,"NotificationType",{enumerable:!0,get:function(){return Ve.NotificationType}});Object.defineProperty(F,"NotificationType0",{enumerable:!0,get:function(){return Ve.NotificationType0}});Object.defineProperty(F,"NotificationType1",{enumerable:!0,get:function(){return Ve.NotificationType1}});Object.defineProperty(F,"NotificationType2",{enumerable:!0,get:function(){return Ve.NotificationType2}});Object.defineProperty(F,"NotificationType3",{enumerable:!0,get:function(){return Ve.NotificationType3}});Object.defineProperty(F,"NotificationType4",{enumerable:!0,get:function(){return Ve.NotificationType4}});Object.defineProperty(F,"NotificationType5",{enumerable:!0,get:function(){return Ve.NotificationType5}});Object.defineProperty(F,"NotificationType6",{enumerable:!0,get:function(){return Ve.NotificationType6}});Object.defineProperty(F,"NotificationType7",{enumerable:!0,get:function(){return Ve.NotificationType7}});Object.defineProperty(F,"NotificationType8",{enumerable:!0,get:function(){return Ve.NotificationType8}});Object.defineProperty(F,"NotificationType9",{enumerable:!0,get:function(){return Ve.NotificationType9}});Object.defineProperty(F,"ParameterStructures",{enumerable:!0,get:function(){return Ve.ParameterStructures}});var Zc=Rc();Object.defineProperty(F,"LinkedMap",{enumerable:!0,get:function(){return Zc.LinkedMap}});Object.defineProperty(F,"LRUCache",{enumerable:!0,get:function(){return Zc.LRUCache}});Object.defineProperty(F,"Touch",{enumerable:!0,get:function(){return Zc.Touch}});var $S=Lh();Object.defineProperty(F,"Disposable",{enumerable:!0,get:function(){return $S.Disposable}});var Zh=Jr();Object.defineProperty(F,"Event",{enumerable:!0,get:function(){return Zh.Event}});Object.defineProperty(F,"Emitter",{enumerable:!0,get:function(){return Zh.Emitter}});var eg=Wo();Object.defineProperty(F,"CancellationTokenSource",{enumerable:!0,get:function(){return eg.CancellationTokenSource}});Object.defineProperty(F,"CancellationToken",{enumerable:!0,get:function(){return eg.CancellationToken}});var tg=jh();Object.defineProperty(F,"SharedArraySenderStrategy",{enumerable:!0,get:function(){return tg.SharedArraySenderStrategy}});Object.defineProperty(F,"SharedArrayReceiverStrategy",{enumerable:!0,get:function(){return tg.SharedArrayReceiverStrategy}});var eu=Uh();Object.defineProperty(F,"MessageReader",{enumerable:!0,get:function(){return eu.MessageReader}});Object.defineProperty(F,"AbstractMessageReader",{enumerable:!0,get:function(){return eu.AbstractMessageReader}});Object.defineProperty(F,"ReadableStreamMessageReader",{enumerable:!0,get:function(){return eu.ReadableStreamMessageReader}});var tu=zh();Object.defineProperty(F,"MessageWriter",{enumerable:!0,get:function(){return tu.MessageWriter}});Object.defineProperty(F,"AbstractMessageWriter",{enumerable:!0,get:function(){return tu.AbstractMessageWriter}});Object.defineProperty(F,"WriteableStreamMessageWriter",{enumerable:!0,get:function(){return tu.WriteableStreamMessageWriter}});var US=Bh();Object.defineProperty(F,"AbstractMessageBuffer",{enumerable:!0,get:function(){return US.AbstractMessageBuffer}});var _t=Yh();Object.defineProperty(F,"ConnectionStrategy",{enumerable:!0,get:function(){return _t.ConnectionStrategy}});Object.defineProperty(F,"ConnectionOptions",{enumerable:!0,get:function(){return _t.ConnectionOptions}});Object.defineProperty(F,"NullLogger",{enumerable:!0,get:function(){return _t.NullLogger}});Object.defineProperty(F,"createMessageConnection",{enumerable:!0,get:function(){return _t.createMessageConnection}});Object.defineProperty(F,"ProgressToken",{enumerable:!0,get:function(){return _t.ProgressToken}});Object.defineProperty(F,"ProgressType",{enumerable:!0,get:function(){return _t.ProgressType}});Object.defineProperty(F,"Trace",{enumerable:!0,get:function(){return _t.Trace}});Object.defineProperty(F,"TraceValues",{enumerable:!0,get:function(){return _t.TraceValues}});Object.defineProperty(F,"TraceFormat",{enumerable:!0,get:function(){return _t.TraceFormat}});Object.defineProperty(F,"SetTraceNotification",{enumerable:!0,get:function(){return _t.SetTraceNotification}});Object.defineProperty(F,"LogTraceNotification",{enumerable:!0,get:function(){return _t.LogTraceNotification}});Object.defineProperty(F,"ConnectionErrors",{enumerable:!0,get:function(){return _t.ConnectionErrors}});Object.defineProperty(F,"ConnectionError",{enumerable:!0,get:function(){return _t.ConnectionError}});Object.defineProperty(F,"CancellationReceiverStrategy",{enumerable:!0,get:function(){return _t.CancellationReceiverStrategy}});Object.defineProperty(F,"CancellationSenderStrategy",{enumerable:!0,get:function(){return _t.CancellationSenderStrategy}});Object.defineProperty(F,"CancellationStrategy",{enumerable:!0,get:function(){return _t.CancellationStrategy}});Object.defineProperty(F,"MessageStrategy",{enumerable:!0,get:function(){return _t.MessageStrategy}});var HS=lr();F.RAL=HS.default});var ig=E(ou=>{"use strict";Object.defineProperty(ou,"__esModule",{value:!0});var ng=require("util"),Jn=es(),ts=class n extends Jn.AbstractMessageBuffer{constructor(e="utf-8"){super(e)}emptyBuffer(){return n.emptyBuffer}fromString(e,t){return Buffer.from(e,t)}toString(e,t){return e instanceof Buffer?e.toString(t):new ng.TextDecoder(t).decode(e)}asNative(e,t){return t===void 0?e instanceof Buffer?e:Buffer.from(e):e instanceof Buffer?e.slice(0,t):Buffer.from(e,0,t)}allocNative(e){return Buffer.allocUnsafe(e)}};ts.emptyBuffer=Buffer.allocUnsafe(0);var nu=class{constructor(e){this.stream=e}onClose(e){return this.stream.on("close",e),Jn.Disposable.create(()=>this.stream.off("close",e))}onError(e){return this.stream.on("error",e),Jn.Disposable.create(()=>this.stream.off("error",e))}onEnd(e){return this.stream.on("end",e),Jn.Disposable.create(()=>this.stream.off("end",e))}onData(e){return this.stream.on("data",e),Jn.Disposable.create(()=>this.stream.off("data",e))}},ru=class{constructor(e){this.stream=e}onClose(e){return this.stream.on("close",e),Jn.Disposable.create(()=>this.stream.off("close",e))}onError(e){return this.stream.on("error",e),Jn.Disposable.create(()=>this.stream.off("error",e))}onEnd(e){return this.stream.on("end",e),Jn.Disposable.create(()=>this.stream.off("end",e))}write(e,t){return new Promise((r,i)=>{let o=s=>{s==null?r():i(s)};typeof e=="string"?this.stream.write(e,t,o):this.stream.write(e,o)})}end(){this.stream.end()}},rg=Object.freeze({messageBuffer:Object.freeze({create:n=>new ts(n)}),applicationJson:Object.freeze({encoder:Object.freeze({name:"application/json",encode:(n,e)=>{try{return Promise.resolve(Buffer.from(JSON.stringify(n,void 0,0),e.charset))}catch(t){return Promise.reject(t)}}}),decoder:Object.freeze({name:"application/json",decode:(n,e)=>{try{return n instanceof Buffer?Promise.resolve(JSON.parse(n.toString(e.charset))):Promise.resolve(JSON.parse(new ng.TextDecoder(e.charset).decode(n)))}catch(t){return Promise.reject(t)}}})}),stream:Object.freeze({asReadableStream:n=>new nu(n),asWritableStream:n=>new ru(n)}),console,timer:Object.freeze({setTimeout(n,e,...t){let r=setTimeout(n,e,...t);return{dispose:()=>clearTimeout(r)}},setImmediate(n,...e){let t=setImmediate(n,...e);return{dispose:()=>clearImmediate(t)}},setInterval(n,e,...t){let r=setInterval(n,e,...t);return{dispose:()=>clearInterval(r)}}})});function iu(){return rg}(function(n){function e(){Jn.RAL.install(rg)}n.install=e})(iu||(iu={}));ou.default=iu});var Er=E(Te=>{"use strict";var WS=Te&&Te.__createBinding||(Object.create?function(n,e,t,r){r===void 0&&(r=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[t]}}),Object.defineProperty(n,r,i)}:function(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]}),KS=Te&&Te.__exportStar||function(n,e){for(var t in n)t!=="default"&&!Object.prototype.hasOwnProperty.call(e,t)&&WS(e,n,t)};Object.defineProperty(Te,"__esModule",{value:!0});Te.createMessageConnection=Te.createServerSocketTransport=Te.createClientSocketTransport=Te.createServerPipeTransport=Te.createClientPipeTransport=Te.generateRandomPipeName=Te.StreamMessageWriter=Te.StreamMessageReader=Te.SocketMessageWriter=Te.SocketMessageReader=Te.PortMessageWriter=Te.PortMessageReader=Te.IPCMessageWriter=Te.IPCMessageReader=void 0;var ei=ig();ei.default.install();var og=require("path"),VS=require("os"),zS=require("crypto"),is=require("net"),Qt=es();KS(es(),Te);var su=class extends Qt.AbstractMessageReader{constructor(e){super(),this.process=e;let t=this.process;t.on("error",r=>this.fireError(r)),t.on("close",()=>this.fireClose())}listen(e){return this.process.on("message",e),Qt.Disposable.create(()=>this.process.off("message",e))}};Te.IPCMessageReader=su;var au=class extends Qt.AbstractMessageWriter{constructor(e){super(),this.process=e,this.errorCount=0;let t=this.process;t.on("error",r=>this.fireError(r)),t.on("close",()=>this.fireClose)}write(e){try{return typeof this.process.send=="function"&&this.process.send(e,void 0,void 0,t=>{t?(this.errorCount++,this.handleError(t,e)):this.errorCount=0}),Promise.resolve()}catch(t){return this.handleError(t,e),Promise.reject(t)}}handleError(e,t){this.errorCount++,this.fireError(e,t,this.errorCount)}end(){}};Te.IPCMessageWriter=au;var cu=class extends Qt.AbstractMessageReader{constructor(e){super(),this.onData=new Qt.Emitter,e.on("close",()=>this.fireClose),e.on("error",t=>this.fireError(t)),e.on("message",t=>{this.onData.fire(t)})}listen(e){return this.onData.event(e)}};Te.PortMessageReader=cu;var uu=class extends Qt.AbstractMessageWriter{constructor(e){super(),this.port=e,this.errorCount=0,e.on("close",()=>this.fireClose()),e.on("error",t=>this.fireError(t))}write(e){try{return this.port.postMessage(e),Promise.resolve()}catch(t){return this.handleError(t,e),Promise.reject(t)}}handleError(e,t){this.errorCount++,this.fireError(e,t,this.errorCount)}end(){}};Te.PortMessageWriter=uu;var Pr=class extends Qt.ReadableStreamMessageReader{constructor(e,t="utf-8"){super((0,ei.default)().stream.asReadableStream(e),t)}};Te.SocketMessageReader=Pr;var kr=class extends Qt.WriteableStreamMessageWriter{constructor(e,t){super((0,ei.default)().stream.asWritableStream(e),t),this.socket=e}dispose(){super.dispose(),this.socket.destroy()}};Te.SocketMessageWriter=kr;var ns=class extends Qt.ReadableStreamMessageReader{constructor(e,t){super((0,ei.default)().stream.asReadableStream(e),t)}};Te.StreamMessageReader=ns;var rs=class extends Qt.WriteableStreamMessageWriter{constructor(e,t){super((0,ei.default)().stream.asWritableStream(e),t)}};Te.StreamMessageWriter=rs;var sg=process.env.XDG_RUNTIME_DIR,BS=new Map([["linux",107],["darwin",103]]);function GS(){let n=(0,zS.randomBytes)(21).toString("hex");if(process.platform==="win32")return`\\\\.\\pipe\\vscode-jsonrpc-${n}-sock`;let e;sg?e=og.join(sg,`vscode-ipc-${n}.sock`):e=og.join(VS.tmpdir(),`vscode-${n}.sock`);let t=BS.get(process.platform);return t!==void 0&&e.length>t&&(0,ei.default)().console.warn(`WARNING: IPC handle "${e}" is longer than ${t} characters.`),e}Te.generateRandomPipeName=GS;function JS(n,e="utf-8"){let t,r=new Promise((i,o)=>{t=i});return new Promise((i,o)=>{let s=(0,is.createServer)(a=>{s.close(),t([new Pr(a,e),new kr(a,e)])});s.on("error",o),s.listen(n,()=>{s.removeListener("error",o),i({onConnected:()=>r})})})}Te.createClientPipeTransport=JS;function XS(n,e="utf-8"){let t=(0,is.createConnection)(n);return[new Pr(t,e),new kr(t,e)]}Te.createServerPipeTransport=XS;function QS(n,e="utf-8"){let t,r=new Promise((i,o)=>{t=i});return new Promise((i,o)=>{let s=(0,is.createServer)(a=>{s.close(),t([new Pr(a,e),new kr(a,e)])});s.on("error",o),s.listen(n,"127.0.0.1",()=>{s.removeListener("error",o),i({onConnected:()=>r})})})}Te.createClientSocketTransport=QS;function YS(n,e="utf-8"){let t=(0,is.createConnection)(n,"127.0.0.1");return[new Pr(t,e),new kr(t,e)]}Te.createServerSocketTransport=YS;function ZS(n){let e=n;return e.read!==void 0&&e.addListener!==void 0}function e_(n){let e=n;return e.write!==void 0&&e.addListener!==void 0}function t_(n,e,t,r){t||(t=Qt.NullLogger);let i=ZS(n)?new ns(n):n,o=e_(e)?new rs(e):e;return Qt.ConnectionStrategy.is(r)&&(r={connectionStrategy:r}),(0,Qt.createMessageConnection)(i,o,t,r)}Te.createMessageConnection=t_});var lu=E((Ak,ag)=>{"use strict";ag.exports=Er()});var ss=E((cg,os)=>{"use strict";(function(n){if(typeof os=="object"&&typeof os.exports=="object"){var e=n(require,cg);e!==void 0&&(os.exports=e)}else typeof define=="function"&&define.amd&&define(["require","exports"],n)})(function(n,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TextDocument=e.EOL=e.WorkspaceFolder=e.InlineCompletionContext=e.SelectedCompletionInfo=e.InlineCompletionTriggerKind=e.InlineCompletionList=e.InlineCompletionItem=e.StringValue=e.InlayHint=e.InlayHintLabelPart=e.InlayHintKind=e.InlineValueContext=e.InlineValueEvaluatableExpression=e.InlineValueVariableLookup=e.InlineValueText=e.SemanticTokens=e.SemanticTokenModifiers=e.SemanticTokenTypes=e.SelectionRange=e.DocumentLink=e.FormattingOptions=e.CodeLens=e.CodeAction=e.CodeActionContext=e.CodeActionTriggerKind=e.CodeActionKind=e.DocumentSymbol=e.WorkspaceSymbol=e.SymbolInformation=e.SymbolTag=e.SymbolKind=e.DocumentHighlight=e.DocumentHighlightKind=e.SignatureInformation=e.ParameterInformation=e.Hover=e.MarkedString=e.CompletionList=e.CompletionItem=e.CompletionItemLabelDetails=e.InsertTextMode=e.InsertReplaceEdit=e.CompletionItemTag=e.InsertTextFormat=e.CompletionItemKind=e.MarkupContent=e.MarkupKind=e.TextDocumentItem=e.OptionalVersionedTextDocumentIdentifier=e.VersionedTextDocumentIdentifier=e.TextDocumentIdentifier=e.WorkspaceChange=e.WorkspaceEdit=e.DeleteFile=e.RenameFile=e.CreateFile=e.TextDocumentEdit=e.AnnotatedTextEdit=e.ChangeAnnotationIdentifier=e.ChangeAnnotation=e.TextEdit=e.Command=e.Diagnostic=e.CodeDescription=e.DiagnosticTag=e.DiagnosticSeverity=e.DiagnosticRelatedInformation=e.FoldingRange=e.FoldingRangeKind=e.ColorPresentation=e.ColorInformation=e.Color=e.LocationLink=e.Location=e.Range=e.Position=e.uinteger=e.integer=e.URI=e.DocumentUri=void 0;var t;(function(h){function D(S){return typeof S=="string"}h.is=D})(t||(e.DocumentUri=t={}));var r;(function(h){function D(S){return typeof S=="string"}h.is=D})(r||(e.URI=r={}));var i;(function(h){h.MIN_VALUE=-2147483648,h.MAX_VALUE=2147483647;function D(S){return typeof S=="number"&&h.MIN_VALUE<=S&&S<=h.MAX_VALUE}h.is=D})(i||(e.integer=i={}));var o;(function(h){h.MIN_VALUE=0,h.MAX_VALUE=2147483647;function D(S){return typeof S=="number"&&h.MIN_VALUE<=S&&S<=h.MAX_VALUE}h.is=D})(o||(e.uinteger=o={}));var s;(function(h){function D(b,f){return b===Number.MAX_VALUE&&(b=o.MAX_VALUE),f===Number.MAX_VALUE&&(f=o.MAX_VALUE),{line:b,character:f}}h.create=D;function S(b){var f=b;return R.objectLiteral(f)&&R.uinteger(f.line)&&R.uinteger(f.character)}h.is=S})(s||(e.Position=s={}));var a;(function(h){function D(b,f,k,M){if(R.uinteger(b)&&R.uinteger(f)&&R.uinteger(k)&&R.uinteger(M))return{start:s.create(b,f),end:s.create(k,M)};if(s.is(b)&&s.is(f))return{start:b,end:f};throw new Error("Range#create called with invalid arguments[".concat(b,", ").concat(f,", ").concat(k,", ").concat(M,"]"))}h.create=D;function S(b){var f=b;return R.objectLiteral(f)&&s.is(f.start)&&s.is(f.end)}h.is=S})(a||(e.Range=a={}));var c;(function(h){function D(b,f){return{uri:b,range:f}}h.create=D;function S(b){var f=b;return R.objectLiteral(f)&&a.is(f.range)&&(R.string(f.uri)||R.undefined(f.uri))}h.is=S})(c||(e.Location=c={}));var u;(function(h){function D(b,f,k,M){return{targetUri:b,targetRange:f,targetSelectionRange:k,originSelectionRange:M}}h.create=D;function S(b){var f=b;return R.objectLiteral(f)&&a.is(f.targetRange)&&R.string(f.targetUri)&&a.is(f.targetSelectionRange)&&(a.is(f.originSelectionRange)||R.undefined(f.originSelectionRange))}h.is=S})(u||(e.LocationLink=u={}));var d;(function(h){function D(b,f,k,M){return{red:b,green:f,blue:k,alpha:M}}h.create=D;function S(b){var f=b;return R.objectLiteral(f)&&R.numberRange(f.red,0,1)&&R.numberRange(f.green,0,1)&&R.numberRange(f.blue,0,1)&&R.numberRange(f.alpha,0,1)}h.is=S})(d||(e.Color=d={}));var g;(function(h){function D(b,f){return{range:b,color:f}}h.create=D;function S(b){var f=b;return R.objectLiteral(f)&&a.is(f.range)&&d.is(f.color)}h.is=S})(g||(e.ColorInformation=g={}));var m;(function(h){function D(b,f,k){return{label:b,textEdit:f,additionalTextEdits:k}}h.create=D;function S(b){var f=b;return R.objectLiteral(f)&&R.string(f.label)&&(R.undefined(f.textEdit)||te.is(f))&&(R.undefined(f.additionalTextEdits)||R.typedArray(f.additionalTextEdits,te.is))}h.is=S})(m||(e.ColorPresentation=m={}));var y;(function(h){h.Comment="comment",h.Imports="imports",h.Region="region"})(y||(e.FoldingRangeKind=y={}));var v;(function(h){function D(b,f,k,M,le,Ge){var He={startLine:b,endLine:f};return R.defined(k)&&(He.startCharacter=k),R.defined(M)&&(He.endCharacter=M),R.defined(le)&&(He.kind=le),R.defined(Ge)&&(He.collapsedText=Ge),He}h.create=D;function S(b){var f=b;return R.objectLiteral(f)&&R.uinteger(f.startLine)&&R.uinteger(f.startLine)&&(R.undefined(f.startCharacter)||R.uinteger(f.startCharacter))&&(R.undefined(f.endCharacter)||R.uinteger(f.endCharacter))&&(R.undefined(f.kind)||R.string(f.kind))}h.is=S})(v||(e.FoldingRange=v={}));var T;(function(h){function D(b,f){return{location:b,message:f}}h.create=D;function S(b){var f=b;return R.defined(f)&&c.is(f.location)&&R.string(f.message)}h.is=S})(T||(e.DiagnosticRelatedInformation=T={}));var P;(function(h){h.Error=1,h.Warning=2,h.Information=3,h.Hint=4})(P||(e.DiagnosticSeverity=P={}));var q;(function(h){h.Unnecessary=1,h.Deprecated=2})(q||(e.DiagnosticTag=q={}));var A;(function(h){function D(S){var b=S;return R.objectLiteral(b)&&R.string(b.href)}h.is=D})(A||(e.CodeDescription=A={}));var L;(function(h){function D(b,f,k,M,le,Ge){var He={range:b,message:f};return R.defined(k)&&(He.severity=k),R.defined(M)&&(He.code=M),R.defined(le)&&(He.source=le),R.defined(Ge)&&(He.relatedInformation=Ge),He}h.create=D;function S(b){var f,k=b;return R.defined(k)&&a.is(k.range)&&R.string(k.message)&&(R.number(k.severity)||R.undefined(k.severity))&&(R.integer(k.code)||R.string(k.code)||R.undefined(k.code))&&(R.undefined(k.codeDescription)||R.string((f=k.codeDescription)===null||f===void 0?void 0:f.href))&&(R.string(k.source)||R.undefined(k.source))&&(R.undefined(k.relatedInformation)||R.typedArray(k.relatedInformation,T.is))}h.is=S})(L||(e.Diagnostic=L={}));var K;(function(h){function D(b,f){for(var k=[],M=2;M<arguments.length;M++)k[M-2]=arguments[M];var le={title:b,command:f};return R.defined(k)&&k.length>0&&(le.arguments=k),le}h.create=D;function S(b){var f=b;return R.defined(f)&&R.string(f.title)&&R.string(f.command)}h.is=S})(K||(e.Command=K={}));var te;(function(h){function D(k,M){return{range:k,newText:M}}h.replace=D;function S(k,M){return{range:{start:k,end:k},newText:M}}h.insert=S;function b(k){return{range:k,newText:""}}h.del=b;function f(k){var M=k;return R.objectLiteral(M)&&R.string(M.newText)&&a.is(M.range)}h.is=f})(te||(e.TextEdit=te={}));var Z;(function(h){function D(b,f,k){var M={label:b};return f!==void 0&&(M.needsConfirmation=f),k!==void 0&&(M.description=k),M}h.create=D;function S(b){var f=b;return R.objectLiteral(f)&&R.string(f.label)&&(R.boolean(f.needsConfirmation)||f.needsConfirmation===void 0)&&(R.string(f.description)||f.description===void 0)}h.is=S})(Z||(e.ChangeAnnotation=Z={}));var V;(function(h){function D(S){var b=S;return R.string(b)}h.is=D})(V||(e.ChangeAnnotationIdentifier=V={}));var ne;(function(h){function D(k,M,le){return{range:k,newText:M,annotationId:le}}h.replace=D;function S(k,M,le){return{range:{start:k,end:k},newText:M,annotationId:le}}h.insert=S;function b(k,M){return{range:k,newText:"",annotationId:M}}h.del=b;function f(k){var M=k;return te.is(M)&&(Z.is(M.annotationId)||V.is(M.annotationId))}h.is=f})(ne||(e.AnnotatedTextEdit=ne={}));var ce;(function(h){function D(b,f){return{textDocument:b,edits:f}}h.create=D;function S(b){var f=b;return R.defined(f)&&be.is(f.textDocument)&&Array.isArray(f.edits)}h.is=S})(ce||(e.TextDocumentEdit=ce={}));var Ne;(function(h){function D(b,f,k){var M={kind:"create",uri:b};return f!==void 0&&(f.overwrite!==void 0||f.ignoreIfExists!==void 0)&&(M.options=f),k!==void 0&&(M.annotationId=k),M}h.create=D;function S(b){var f=b;return f&&f.kind==="create"&&R.string(f.uri)&&(f.options===void 0||(f.options.overwrite===void 0||R.boolean(f.options.overwrite))&&(f.options.ignoreIfExists===void 0||R.boolean(f.options.ignoreIfExists)))&&(f.annotationId===void 0||V.is(f.annotationId))}h.is=S})(Ne||(e.CreateFile=Ne={}));var U;(function(h){function D(b,f,k,M){var le={kind:"rename",oldUri:b,newUri:f};return k!==void 0&&(k.overwrite!==void 0||k.ignoreIfExists!==void 0)&&(le.options=k),M!==void 0&&(le.annotationId=M),le}h.create=D;function S(b){var f=b;return f&&f.kind==="rename"&&R.string(f.oldUri)&&R.string(f.newUri)&&(f.options===void 0||(f.options.overwrite===void 0||R.boolean(f.options.overwrite))&&(f.options.ignoreIfExists===void 0||R.boolean(f.options.ignoreIfExists)))&&(f.annotationId===void 0||V.is(f.annotationId))}h.is=S})(U||(e.RenameFile=U={}));var I;(function(h){function D(b,f,k){var M={kind:"delete",uri:b};return f!==void 0&&(f.recursive!==void 0||f.ignoreIfNotExists!==void 0)&&(M.options=f),k!==void 0&&(M.annotationId=k),M}h.create=D;function S(b){var f=b;return f&&f.kind==="delete"&&R.string(f.uri)&&(f.options===void 0||(f.options.recursive===void 0||R.boolean(f.options.recursive))&&(f.options.ignoreIfNotExists===void 0||R.boolean(f.options.ignoreIfNotExists)))&&(f.annotationId===void 0||V.is(f.annotationId))}h.is=S})(I||(e.DeleteFile=I={}));var J;(function(h){function D(S){var b=S;return b&&(b.changes!==void 0||b.documentChanges!==void 0)&&(b.documentChanges===void 0||b.documentChanges.every(function(f){return R.string(f.kind)?Ne.is(f)||U.is(f)||I.is(f):ce.is(f)}))}h.is=D})(J||(e.WorkspaceEdit=J={}));var B=function(){function h(D,S){this.edits=D,this.changeAnnotations=S}return h.prototype.insert=function(D,S,b){var f,k;if(b===void 0?f=te.insert(D,S):V.is(b)?(k=b,f=ne.insert(D,S,b)):(this.assertChangeAnnotations(this.changeAnnotations),k=this.changeAnnotations.manage(b),f=ne.insert(D,S,k)),this.edits.push(f),k!==void 0)return k},h.prototype.replace=function(D,S,b){var f,k;if(b===void 0?f=te.replace(D,S):V.is(b)?(k=b,f=ne.replace(D,S,b)):(this.assertChangeAnnotations(this.changeAnnotations),k=this.changeAnnotations.manage(b),f=ne.replace(D,S,k)),this.edits.push(f),k!==void 0)return k},h.prototype.delete=function(D,S){var b,f;if(S===void 0?b=te.del(D):V.is(S)?(f=S,b=ne.del(D,S)):(this.assertChangeAnnotations(this.changeAnnotations),f=this.changeAnnotations.manage(S),b=ne.del(D,f)),this.edits.push(b),f!==void 0)return f},h.prototype.add=function(D){this.edits.push(D)},h.prototype.all=function(){return this.edits},h.prototype.clear=function(){this.edits.splice(0,this.edits.length)},h.prototype.assertChangeAnnotations=function(D){if(D===void 0)throw new Error("Text edit change is not configured to manage change annotations.")},h}(),pe=function(){function h(D){this._annotations=D===void 0?Object.create(null):D,this._counter=0,this._size=0}return h.prototype.all=function(){return this._annotations},Object.defineProperty(h.prototype,"size",{get:function(){return this._size},enumerable:!1,configurable:!0}),h.prototype.manage=function(D,S){var b;if(V.is(D)?b=D:(b=this.nextId(),S=D),this._annotations[b]!==void 0)throw new Error("Id ".concat(b," is already in use."));if(S===void 0)throw new Error("No annotation provided for id ".concat(b));return this._annotations[b]=S,this._size++,b},h.prototype.nextId=function(){return this._counter++,this._counter.toString()},h}(),ie=function(){function h(D){var S=this;this._textEditChanges=Object.create(null),D!==void 0?(this._workspaceEdit=D,D.documentChanges?(this._changeAnnotations=new pe(D.changeAnnotations),D.changeAnnotations=this._changeAnnotations.all(),D.documentChanges.forEach(function(b){if(ce.is(b)){var f=new B(b.edits,S._changeAnnotations);S._textEditChanges[b.textDocument.uri]=f}})):D.changes&&Object.keys(D.changes).forEach(function(b){var f=new B(D.changes[b]);S._textEditChanges[b]=f})):this._workspaceEdit={}}return Object.defineProperty(h.prototype,"edit",{get:function(){return this.initDocumentChanges(),this._changeAnnotations!==void 0&&(this._changeAnnotations.size===0?this._workspaceEdit.changeAnnotations=void 0:this._workspaceEdit.changeAnnotations=this._changeAnnotations.all()),this._workspaceEdit},enumerable:!1,configurable:!0}),h.prototype.getTextEditChange=function(D){if(be.is(D)){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");var S={uri:D.uri,version:D.version},b=this._textEditChanges[S.uri];if(!b){var f=[],k={textDocument:S,edits:f};this._workspaceEdit.documentChanges.push(k),b=new B(f,this._changeAnnotations),this._textEditChanges[S.uri]=b}return b}else{if(this.initChanges(),this._workspaceEdit.changes===void 0)throw new Error("Workspace edit is not configured for normal text edit changes.");var b=this._textEditChanges[D];if(!b){var f=[];this._workspaceEdit.changes[D]=f,b=new B(f),this._textEditChanges[D]=b}return b}},h.prototype.initDocumentChanges=function(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._changeAnnotations=new pe,this._workspaceEdit.documentChanges=[],this._workspaceEdit.changeAnnotations=this._changeAnnotations.all())},h.prototype.initChanges=function(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._workspaceEdit.changes=Object.create(null))},h.prototype.createFile=function(D,S,b){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");var f;Z.is(S)||V.is(S)?f=S:b=S;var k,M;if(f===void 0?k=Ne.create(D,b):(M=V.is(f)?f:this._changeAnnotations.manage(f),k=Ne.create(D,b,M)),this._workspaceEdit.documentChanges.push(k),M!==void 0)return M},h.prototype.renameFile=function(D,S,b,f){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");var k;Z.is(b)||V.is(b)?k=b:f=b;var M,le;if(k===void 0?M=U.create(D,S,f):(le=V.is(k)?k:this._changeAnnotations.manage(k),M=U.create(D,S,f,le)),this._workspaceEdit.documentChanges.push(M),le!==void 0)return le},h.prototype.deleteFile=function(D,S,b){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");var f;Z.is(S)||V.is(S)?f=S:b=S;var k,M;if(f===void 0?k=I.create(D,b):(M=V.is(f)?f:this._changeAnnotations.manage(f),k=I.create(D,b,M)),this._workspaceEdit.documentChanges.push(k),M!==void 0)return M},h}();e.WorkspaceChange=ie;var oe;(function(h){function D(b){return{uri:b}}h.create=D;function S(b){var f=b;return R.defined(f)&&R.string(f.uri)}h.is=S})(oe||(e.TextDocumentIdentifier=oe={}));var st;(function(h){function D(b,f){return{uri:b,version:f}}h.create=D;function S(b){var f=b;return R.defined(f)&&R.string(f.uri)&&R.integer(f.version)}h.is=S})(st||(e.VersionedTextDocumentIdentifier=st={}));var be;(function(h){function D(b,f){return{uri:b,version:f}}h.create=D;function S(b){var f=b;return R.defined(f)&&R.string(f.uri)&&(f.version===null||R.integer(f.version))}h.is=S})(be||(e.OptionalVersionedTextDocumentIdentifier=be={}));var Re;(function(h){function D(b,f,k,M){return{uri:b,languageId:f,version:k,text:M}}h.create=D;function S(b){var f=b;return R.defined(f)&&R.string(f.uri)&&R.string(f.languageId)&&R.integer(f.version)&&R.string(f.text)}h.is=S})(Re||(e.TextDocumentItem=Re={}));var ct;(function(h){h.PlainText="plaintext",h.Markdown="markdown";function D(S){var b=S;return b===h.PlainText||b===h.Markdown}h.is=D})(ct||(e.MarkupKind=ct={}));var Ct;(function(h){function D(S){var b=S;return R.objectLiteral(S)&&ct.is(b.kind)&&R.string(b.value)}h.is=D})(Ct||(e.MarkupContent=Ct={}));var nr;(function(h){h.Text=1,h.Method=2,h.Function=3,h.Constructor=4,h.Field=5,h.Variable=6,h.Class=7,h.Interface=8,h.Module=9,h.Property=10,h.Unit=11,h.Value=12,h.Enum=13,h.Keyword=14,h.Snippet=15,h.Color=16,h.File=17,h.Reference=18,h.Folder=19,h.EnumMember=20,h.Constant=21,h.Struct=22,h.Event=23,h.Operator=24,h.TypeParameter=25})(nr||(e.CompletionItemKind=nr={}));var En;(function(h){h.PlainText=1,h.Snippet=2})(En||(e.InsertTextFormat=En={}));var xn;(function(h){h.Deprecated=1})(xn||(e.CompletionItemTag=xn={}));var Kn;(function(h){function D(b,f,k){return{newText:b,insert:f,replace:k}}h.create=D;function S(b){var f=b;return f&&R.string(f.newText)&&a.is(f.insert)&&a.is(f.replace)}h.is=S})(Kn||(e.InsertReplaceEdit=Kn={}));var rr;(function(h){h.asIs=1,h.adjustIndentation=2})(rr||(e.InsertTextMode=rr={}));var qn;(function(h){function D(S){var b=S;return b&&(R.string(b.detail)||b.detail===void 0)&&(R.string(b.description)||b.description===void 0)}h.is=D})(qn||(e.CompletionItemLabelDetails=qn={}));var mn;(function(h){function D(S){return{label:S}}h.create=D})(mn||(e.CompletionItem=mn={}));var vn;(function(h){function D(S,b){return{items:S||[],isIncomplete:!!b}}h.create=D})(vn||(e.CompletionList=vn={}));var In;(function(h){function D(b){return b.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}h.fromPlainText=D;function S(b){var f=b;return R.string(f)||R.objectLiteral(f)&&R.string(f.language)&&R.string(f.value)}h.is=S})(In||(e.MarkedString=In={}));var ut;(function(h){function D(S){var b=S;return!!b&&R.objectLiteral(b)&&(Ct.is(b.contents)||In.is(b.contents)||R.typedArray(b.contents,In.is))&&(S.range===void 0||a.is(S.range))}h.is=D})(ut||(e.Hover=ut={}));var Vn;(function(h){function D(S,b){return b?{label:S,documentation:b}:{label:S}}h.create=D})(Vn||(e.ParameterInformation=Vn={}));var yn;(function(h){function D(S,b){for(var f=[],k=2;k<arguments.length;k++)f[k-2]=arguments[k];var M={label:S};return R.defined(b)&&(M.documentation=b),R.defined(f)?M.parameters=f:M.parameters=[],M}h.create=D})(yn||(e.SignatureInformation=yn={}));var rn;(function(h){h.Text=1,h.Read=2,h.Write=3})(rn||(e.DocumentHighlightKind=rn={}));var ir;(function(h){function D(S,b){var f={range:S};return R.number(b)&&(f.kind=b),f}h.create=D})(ir||(e.DocumentHighlight=ir={}));var on;(function(h){h.File=1,h.Module=2,h.Namespace=3,h.Package=4,h.Class=5,h.Method=6,h.Property=7,h.Field=8,h.Constructor=9,h.Enum=10,h.Interface=11,h.Function=12,h.Variable=13,h.Constant=14,h.String=15,h.Number=16,h.Boolean=17,h.Array=18,h.Object=19,h.Key=20,h.Null=21,h.EnumMember=22,h.Struct=23,h.Event=24,h.Operator=25,h.TypeParameter=26})(on||(e.SymbolKind=on={}));var Fn;(function(h){h.Deprecated=1})(Fn||(e.SymbolTag=Fn={}));var at;(function(h){function D(S,b,f,k,M){var le={name:S,kind:b,location:{uri:k,range:f}};return M&&(le.containerName=M),le}h.create=D})(at||(e.SymbolInformation=at={}));var Tt;(function(h){function D(S,b,f,k){return k!==void 0?{name:S,kind:b,location:{uri:f,range:k}}:{name:S,kind:b,location:{uri:f}}}h.create=D})(Tt||(e.WorkspaceSymbol=Tt={}));var Dt;(function(h){function D(b,f,k,M,le,Ge){var He={name:b,detail:f,kind:k,range:M,selectionRange:le};return Ge!==void 0&&(He.children=Ge),He}h.create=D;function S(b){var f=b;return f&&R.string(f.name)&&R.number(f.kind)&&a.is(f.range)&&a.is(f.selectionRange)&&(f.detail===void 0||R.string(f.detail))&&(f.deprecated===void 0||R.boolean(f.deprecated))&&(f.children===void 0||Array.isArray(f.children))&&(f.tags===void 0||Array.isArray(f.tags))}h.is=S})(Dt||(e.DocumentSymbol=Dt={}));var Gt;(function(h){h.Empty="",h.QuickFix="quickfix",h.Refactor="refactor",h.RefactorExtract="refactor.extract",h.RefactorInline="refactor.inline",h.RefactorRewrite="refactor.rewrite",h.Source="source",h.SourceOrganizeImports="source.organizeImports",h.SourceFixAll="source.fixAll"})(Gt||(e.CodeActionKind=Gt={}));var Lt;(function(h){h.Invoked=1,h.Automatic=2})(Lt||(e.CodeActionTriggerKind=Lt={}));var On;(function(h){function D(b,f,k){var M={diagnostics:b};return f!=null&&(M.only=f),k!=null&&(M.triggerKind=k),M}h.create=D;function S(b){var f=b;return R.defined(f)&&R.typedArray(f.diagnostics,L.is)&&(f.only===void 0||R.typedArray(f.only,R.string))&&(f.triggerKind===void 0||f.triggerKind===Lt.Invoked||f.triggerKind===Lt.Automatic)}h.is=S})(On||(e.CodeActionContext=On={}));var zn;(function(h){function D(b,f,k){var M={title:b},le=!0;return typeof f=="string"?(le=!1,M.kind=f):K.is(f)?M.command=f:M.edit=f,le&&k!==void 0&&(M.kind=k),M}h.create=D;function S(b){var f=b;return f&&R.string(f.title)&&(f.diagnostics===void 0||R.typedArray(f.diagnostics,L.is))&&(f.kind===void 0||R.string(f.kind))&&(f.edit!==void 0||f.command!==void 0)&&(f.command===void 0||K.is(f.command))&&(f.isPreferred===void 0||R.boolean(f.isPreferred))&&(f.edit===void 0||J.is(f.edit))}h.is=S})(zn||(e.CodeAction=zn={}));var bn;(function(h){function D(b,f){var k={range:b};return R.defined(f)&&(k.data=f),k}h.create=D;function S(b){var f=b;return R.defined(f)&&a.is(f.range)&&(R.undefined(f.command)||K.is(f.command))}h.is=S})(bn||(e.CodeLens=bn={}));var Bn;(function(h){function D(b,f){return{tabSize:b,insertSpaces:f}}h.create=D;function S(b){var f=b;return R.defined(f)&&R.uinteger(f.tabSize)&&R.boolean(f.insertSpaces)}h.is=S})(Bn||(e.FormattingOptions=Bn={}));var Ft;(function(h){function D(b,f,k){return{range:b,target:f,data:k}}h.create=D;function S(b){var f=b;return R.defined(f)&&a.is(f.range)&&(R.undefined(f.target)||R.string(f.target))}h.is=S})(Ft||(e.DocumentLink=Ft={}));var C;(function(h){function D(b,f){return{range:b,parent:f}}h.create=D;function S(b){var f=b;return R.objectLiteral(f)&&a.is(f.range)&&(f.parent===void 0||h.is(f.parent))}h.is=S})(C||(e.SelectionRange=C={}));var O;(function(h){h.namespace="namespace",h.type="type",h.class="class",h.enum="enum",h.interface="interface",h.struct="struct",h.typeParameter="typeParameter",h.parameter="parameter",h.variable="variable",h.property="property",h.enumMember="enumMember",h.event="event",h.function="function",h.method="method",h.macro="macro",h.keyword="keyword",h.modifier="modifier",h.comment="comment",h.string="string",h.number="number",h.regexp="regexp",h.operator="operator",h.decorator="decorator"})(O||(e.SemanticTokenTypes=O={}));var W;(function(h){h.declaration="declaration",h.definition="definition",h.readonly="readonly",h.static="static",h.deprecated="deprecated",h.abstract="abstract",h.async="async",h.modification="modification",h.documentation="documentation",h.defaultLibrary="defaultLibrary"})(W||(e.SemanticTokenModifiers=W={}));var G;(function(h){function D(S){var b=S;return R.objectLiteral(b)&&(b.resultId===void 0||typeof b.resultId=="string")&&Array.isArray(b.data)&&(b.data.length===0||typeof b.data[0]=="number")}h.is=D})(G||(e.SemanticTokens=G={}));var xe;(function(h){function D(b,f){return{range:b,text:f}}h.create=D;function S(b){var f=b;return f!=null&&a.is(f.range)&&R.string(f.text)}h.is=S})(xe||(e.InlineValueText=xe={}));var Pe;(function(h){function D(b,f,k){return{range:b,variableName:f,caseSensitiveLookup:k}}h.create=D;function S(b){var f=b;return f!=null&&a.is(f.range)&&R.boolean(f.caseSensitiveLookup)&&(R.string(f.variableName)||f.variableName===void 0)}h.is=S})(Pe||(e.InlineValueVariableLookup=Pe={}));var Ae;(function(h){function D(b,f){return{range:b,expression:f}}h.create=D;function S(b){var f=b;return f!=null&&a.is(f.range)&&(R.string(f.expression)||f.expression===void 0)}h.is=S})(Ae||(e.InlineValueEvaluatableExpression=Ae={}));var $e;(function(h){function D(b,f){return{frameId:b,stoppedLocation:f}}h.create=D;function S(b){var f=b;return R.defined(f)&&a.is(b.stoppedLocation)}h.is=S})($e||(e.InlineValueContext=$e={}));var ye;(function(h){h.Type=1,h.Parameter=2;function D(S){return S===1||S===2}h.is=D})(ye||(e.InlayHintKind=ye={}));var Ie;(function(h){function D(b){return{value:b}}h.create=D;function S(b){var f=b;return R.objectLiteral(f)&&(f.tooltip===void 0||R.string(f.tooltip)||Ct.is(f.tooltip))&&(f.location===void 0||c.is(f.location))&&(f.command===void 0||K.is(f.command))}h.is=S})(Ie||(e.InlayHintLabelPart=Ie={}));var De;(function(h){function D(b,f,k){var M={position:b,label:f};return k!==void 0&&(M.kind=k),M}h.create=D;function S(b){var f=b;return R.objectLiteral(f)&&s.is(f.position)&&(R.string(f.label)||R.typedArray(f.label,Ie.is))&&(f.kind===void 0||ye.is(f.kind))&&f.textEdits===void 0||R.typedArray(f.textEdits,te.is)&&(f.tooltip===void 0||R.string(f.tooltip)||Ct.is(f.tooltip))&&(f.paddingLeft===void 0||R.boolean(f.paddingLeft))&&(f.paddingRight===void 0||R.boolean(f.paddingRight))}h.is=S})(De||(e.InlayHint=De={}));var Ue;(function(h){function D(S){return{kind:"snippet",value:S}}h.createSnippet=D})(Ue||(e.StringValue=Ue={}));var nt;(function(h){function D(S,b,f,k){return{insertText:S,filterText:b,range:f,command:k}}h.create=D})(nt||(e.InlineCompletionItem=nt={}));var ht;(function(h){function D(S){return{items:S}}h.create=D})(ht||(e.InlineCompletionList=ht={}));var or;(function(h){h.Invoked=0,h.Automatic=1})(or||(e.InlineCompletionTriggerKind=or={}));var sr;(function(h){function D(S,b){return{range:S,text:b}}h.create=D})(sr||(e.SelectedCompletionInfo=sr={}));var p;(function(h){function D(S,b){return{triggerKind:S,selectedCompletionInfo:b}}h.create=D})(p||(e.InlineCompletionContext=p={}));var x;(function(h){function D(S){var b=S;return R.objectLiteral(b)&&r.is(b.uri)&&R.string(b.name)}h.is=D})(x||(e.WorkspaceFolder=x={})),e.EOL=[`
40
+ `)),O){let G=C.error?` Request failed: ${C.error.message} (${C.error.code}).`:"";te.log(`Received response '${O.method} - (${C.id})' in ${Date.now()-O.timerStart}ms.${G}`,W)}else te.log(`Received response ${C.id} without active response promise.`,W)}else at("receive-response",C)}function at(C,O){if(!te||N===Oe.Off)return;let W={isLSPMessage:!0,type:C,message:O,timestamp:Date.now()};te.log(W)}function Tt(){if(be())throw new Zr(Li.Closed,"Connection is closed.");if(Re())throw new Zr(Li.Disposed,"Connection is disposed.")}function Dt(){if(st())throw new Zr(Li.AlreadyListening,"Connection is already listening")}function Gt(){if(!st())throw new Error("Call listen() first.")}function Lt(C){return C===void 0?null:C}function On(C){if(C!==null)return C}function zn(C){return C!=null&&!Array.isArray(C)&&typeof C=="object"}function bn(C,O){switch(C){case se.ParameterStructures.auto:return zn(O)?On(O):[Lt(O)];case se.ParameterStructures.byName:if(!zn(O))throw new Error("Received parameters by name but param is not an object literal.");return On(O);case se.ParameterStructures.byPosition:return[Lt(O)];default:throw new Error(`Unknown parameter structure ${C.toString()}`)}}function Bn(C,O){let W,G=C.numberOfParams;switch(G){case 0:W=void 0;break;case 1:W=bn(C.parameterStructures,O[0]);break;default:W=[];for(let xe=0;xe<O.length&&xe<G;xe++)W.push(Lt(O[xe]));if(O.length<G)for(let xe=O.length;xe<G;xe++)W.push(null);break}return W}let Ft={sendNotification:(C,...O)=>{Tt();let W,G;if(Ye.string(C)){W=C;let Pe=O[0],Ae=0,$e=se.ParameterStructures.auto;se.ParameterStructures.is(Pe)&&(Ae=1,$e=Pe);let ye=O.length,Ie=ye-Ae;switch(Ie){case 0:G=void 0;break;case 1:G=bn($e,O[Ae]);break;default:if($e===se.ParameterStructures.byName)throw new Error(`Received ${Ie} parameters for 'by Name' notification parameter structure.`);G=O.slice(Ae,ye).map(De=>Lt(De));break}}else{let Pe=O;W=C.method,G=Bn(C,Pe)}let xe={jsonrpc:c,method:W,params:G};return yn(xe),e.write(xe).catch(Pe=>{throw i.error("Sending notification failed."),Pe})},onNotification:(C,O)=>{Tt();let W;return Ye.func(C)?g=C:O&&(Ye.string(C)?(W=C,m.set(C,{type:void 0,handler:O})):(W=C.method,m.set(C.method,{type:C,handler:O}))),{dispose:()=>{W!==void 0?m.delete(W):g=void 0}}},onProgress:(C,O,W)=>{if(y.has(O))throw new Error(`Progress handler for token ${O} already registered`);return y.set(O,W),{dispose:()=>{y.delete(O)}}},sendProgress:(C,O,W)=>Ft.sendNotification(Ai.type,{token:O,value:W}),onUnhandledProgress:Ne.event,sendRequest:(C,...O)=>{Tt(),Gt();let W,G,xe;if(Ye.string(C)){W=C;let ye=O[0],Ie=O[O.length-1],De=0,Ue=se.ParameterStructures.auto;se.ParameterStructures.is(ye)&&(De=1,Ue=ye);let nt=O.length;zc.CancellationToken.is(Ie)&&(nt=nt-1,xe=Ie);let ht=nt-De;switch(ht){case 0:G=void 0;break;case 1:G=bn(Ue,O[De]);break;default:if(Ue===se.ParameterStructures.byName)throw new Error(`Received ${ht} parameters for 'by Name' request parameter structure.`);G=O.slice(De,nt).map(or=>Lt(or));break}}else{let ye=O;W=C.method,G=Bn(C,ye);let Ie=C.numberOfParams;xe=zc.CancellationToken.is(ye[Ie])?ye[Ie]:void 0}let Pe=o++,Ae;xe&&(Ae=xe.onCancellationRequested(()=>{let ye=I.sender.sendCancellation(Ft,Pe);return ye===void 0?(i.log(`Received no promise from cancellation strategy when cancelling id ${Pe}`),Promise.resolve()):ye.catch(()=>{i.log(`Sending cancellation messages for id ${Pe} failed`)})}));let $e={jsonrpc:c,id:Pe,method:W,params:G};return Vn($e),typeof I.sender.enableCancellation=="function"&&I.sender.enableCancellation($e),new Promise(async(ye,Ie)=>{let De=ht=>{ye(ht),I.sender.cleanup(Pe),Ae?.dispose()},Ue=ht=>{Ie(ht),I.sender.cleanup(Pe),Ae?.dispose()},nt={method:W,timerStart:Date.now(),resolve:De,reject:Ue};try{await e.write($e),P.set(Pe,nt)}catch(ht){throw i.error("Sending request failed."),nt.reject(new se.ResponseError(se.ErrorCodes.MessageWriteError,ht.message?ht.message:"Unknown reason")),ht}})},onRequest:(C,O)=>{Tt();let W=null;return Jc.is(C)?(W=void 0,u=C):Ye.string(C)?(W=null,O!==void 0&&(W=C,d.set(C,{handler:O,type:void 0}))):O!==void 0&&(W=C.method,d.set(C.method,{type:C,handler:O})),{dispose:()=>{W!==null&&(W!==void 0?d.delete(W):u=void 0)}}},hasPendingResponse:()=>P.size>0,trace:async(C,O,W)=>{let G=!1,xe=Xt.Text;W!==void 0&&(Ye.boolean(W)?G=W:(G=W.sendNotification||!1,xe=W.traceFormat||Xt.Text)),N=C,K=xe,N===Oe.Off?te=void 0:te=O,G&&!be()&&!Re()&&await Ft.sendNotification(Xc.type,{value:Oe.toString(C)})},onError:V.event,onClose:ne.event,onUnhandledNotification:ce.event,onDispose:U.event,end:()=>{e.end()},dispose:()=>{if(Re())return;Z=Sn.Disposed,U.fire(void 0);let C=new se.ResponseError(se.ErrorCodes.PendingResponseRejected,"Pending response rejected since connection got disposed");for(let O of P.values())O.reject(C);P=new Map,L=new Map,q=new Set,T=new Jh.LinkedMap,Ye.func(e.dispose)&&e.dispose(),Ye.func(n.dispose)&&n.dispose()},listen:()=>{Tt(),Dt(),Z=Sn.Listening,n.listen(rr)},inspect:()=>{(0,Gh.default)().console.log("inspect")}};return Ft.onNotification(Go.type,C=>{if(N===Oe.Off||!te)return;let O=N===Oe.Verbose||N===Oe.Compact;te.log(C.message,O?C.verbose:void 0)}),Ft.onNotification(Ai.type,C=>{let O=y.get(C.token);O?O(C.value):Ne.fire(C)}),Ft}me.createMessageConnection=jS});var es=E(F=>{"use strict";Object.defineProperty(F,"__esModule",{value:!0});F.ProgressType=F.ProgressToken=F.createMessageConnection=F.NullLogger=F.ConnectionOptions=F.ConnectionStrategy=F.AbstractMessageBuffer=F.WriteableStreamMessageWriter=F.AbstractMessageWriter=F.MessageWriter=F.ReadableStreamMessageReader=F.AbstractMessageReader=F.MessageReader=F.SharedArrayReceiverStrategy=F.SharedArraySenderStrategy=F.CancellationToken=F.CancellationTokenSource=F.Emitter=F.Event=F.Disposable=F.LRUCache=F.Touch=F.LinkedMap=F.ParameterStructures=F.NotificationType9=F.NotificationType8=F.NotificationType7=F.NotificationType6=F.NotificationType5=F.NotificationType4=F.NotificationType3=F.NotificationType2=F.NotificationType1=F.NotificationType0=F.NotificationType=F.ErrorCodes=F.ResponseError=F.RequestType9=F.RequestType8=F.RequestType7=F.RequestType6=F.RequestType5=F.RequestType4=F.RequestType3=F.RequestType2=F.RequestType1=F.RequestType0=F.RequestType=F.Message=F.RAL=void 0;F.MessageStrategy=F.CancellationStrategy=F.CancellationSenderStrategy=F.CancellationReceiverStrategy=F.ConnectionError=F.ConnectionErrors=F.LogTraceNotification=F.SetTraceNotification=F.TraceFormat=F.TraceValues=F.Trace=void 0;var Ve=_c();Object.defineProperty(F,"Message",{enumerable:!0,get:function(){return Ve.Message}});Object.defineProperty(F,"RequestType",{enumerable:!0,get:function(){return Ve.RequestType}});Object.defineProperty(F,"RequestType0",{enumerable:!0,get:function(){return Ve.RequestType0}});Object.defineProperty(F,"RequestType1",{enumerable:!0,get:function(){return Ve.RequestType1}});Object.defineProperty(F,"RequestType2",{enumerable:!0,get:function(){return Ve.RequestType2}});Object.defineProperty(F,"RequestType3",{enumerable:!0,get:function(){return Ve.RequestType3}});Object.defineProperty(F,"RequestType4",{enumerable:!0,get:function(){return Ve.RequestType4}});Object.defineProperty(F,"RequestType5",{enumerable:!0,get:function(){return Ve.RequestType5}});Object.defineProperty(F,"RequestType6",{enumerable:!0,get:function(){return Ve.RequestType6}});Object.defineProperty(F,"RequestType7",{enumerable:!0,get:function(){return Ve.RequestType7}});Object.defineProperty(F,"RequestType8",{enumerable:!0,get:function(){return Ve.RequestType8}});Object.defineProperty(F,"RequestType9",{enumerable:!0,get:function(){return Ve.RequestType9}});Object.defineProperty(F,"ResponseError",{enumerable:!0,get:function(){return Ve.ResponseError}});Object.defineProperty(F,"ErrorCodes",{enumerable:!0,get:function(){return Ve.ErrorCodes}});Object.defineProperty(F,"NotificationType",{enumerable:!0,get:function(){return Ve.NotificationType}});Object.defineProperty(F,"NotificationType0",{enumerable:!0,get:function(){return Ve.NotificationType0}});Object.defineProperty(F,"NotificationType1",{enumerable:!0,get:function(){return Ve.NotificationType1}});Object.defineProperty(F,"NotificationType2",{enumerable:!0,get:function(){return Ve.NotificationType2}});Object.defineProperty(F,"NotificationType3",{enumerable:!0,get:function(){return Ve.NotificationType3}});Object.defineProperty(F,"NotificationType4",{enumerable:!0,get:function(){return Ve.NotificationType4}});Object.defineProperty(F,"NotificationType5",{enumerable:!0,get:function(){return Ve.NotificationType5}});Object.defineProperty(F,"NotificationType6",{enumerable:!0,get:function(){return Ve.NotificationType6}});Object.defineProperty(F,"NotificationType7",{enumerable:!0,get:function(){return Ve.NotificationType7}});Object.defineProperty(F,"NotificationType8",{enumerable:!0,get:function(){return Ve.NotificationType8}});Object.defineProperty(F,"NotificationType9",{enumerable:!0,get:function(){return Ve.NotificationType9}});Object.defineProperty(F,"ParameterStructures",{enumerable:!0,get:function(){return Ve.ParameterStructures}});var Zc=Rc();Object.defineProperty(F,"LinkedMap",{enumerable:!0,get:function(){return Zc.LinkedMap}});Object.defineProperty(F,"LRUCache",{enumerable:!0,get:function(){return Zc.LRUCache}});Object.defineProperty(F,"Touch",{enumerable:!0,get:function(){return Zc.Touch}});var $S=Lh();Object.defineProperty(F,"Disposable",{enumerable:!0,get:function(){return $S.Disposable}});var Zh=Jr();Object.defineProperty(F,"Event",{enumerable:!0,get:function(){return Zh.Event}});Object.defineProperty(F,"Emitter",{enumerable:!0,get:function(){return Zh.Emitter}});var eg=Wo();Object.defineProperty(F,"CancellationTokenSource",{enumerable:!0,get:function(){return eg.CancellationTokenSource}});Object.defineProperty(F,"CancellationToken",{enumerable:!0,get:function(){return eg.CancellationToken}});var tg=jh();Object.defineProperty(F,"SharedArraySenderStrategy",{enumerable:!0,get:function(){return tg.SharedArraySenderStrategy}});Object.defineProperty(F,"SharedArrayReceiverStrategy",{enumerable:!0,get:function(){return tg.SharedArrayReceiverStrategy}});var eu=Uh();Object.defineProperty(F,"MessageReader",{enumerable:!0,get:function(){return eu.MessageReader}});Object.defineProperty(F,"AbstractMessageReader",{enumerable:!0,get:function(){return eu.AbstractMessageReader}});Object.defineProperty(F,"ReadableStreamMessageReader",{enumerable:!0,get:function(){return eu.ReadableStreamMessageReader}});var tu=zh();Object.defineProperty(F,"MessageWriter",{enumerable:!0,get:function(){return tu.MessageWriter}});Object.defineProperty(F,"AbstractMessageWriter",{enumerable:!0,get:function(){return tu.AbstractMessageWriter}});Object.defineProperty(F,"WriteableStreamMessageWriter",{enumerable:!0,get:function(){return tu.WriteableStreamMessageWriter}});var US=Bh();Object.defineProperty(F,"AbstractMessageBuffer",{enumerable:!0,get:function(){return US.AbstractMessageBuffer}});var _t=Yh();Object.defineProperty(F,"ConnectionStrategy",{enumerable:!0,get:function(){return _t.ConnectionStrategy}});Object.defineProperty(F,"ConnectionOptions",{enumerable:!0,get:function(){return _t.ConnectionOptions}});Object.defineProperty(F,"NullLogger",{enumerable:!0,get:function(){return _t.NullLogger}});Object.defineProperty(F,"createMessageConnection",{enumerable:!0,get:function(){return _t.createMessageConnection}});Object.defineProperty(F,"ProgressToken",{enumerable:!0,get:function(){return _t.ProgressToken}});Object.defineProperty(F,"ProgressType",{enumerable:!0,get:function(){return _t.ProgressType}});Object.defineProperty(F,"Trace",{enumerable:!0,get:function(){return _t.Trace}});Object.defineProperty(F,"TraceValues",{enumerable:!0,get:function(){return _t.TraceValues}});Object.defineProperty(F,"TraceFormat",{enumerable:!0,get:function(){return _t.TraceFormat}});Object.defineProperty(F,"SetTraceNotification",{enumerable:!0,get:function(){return _t.SetTraceNotification}});Object.defineProperty(F,"LogTraceNotification",{enumerable:!0,get:function(){return _t.LogTraceNotification}});Object.defineProperty(F,"ConnectionErrors",{enumerable:!0,get:function(){return _t.ConnectionErrors}});Object.defineProperty(F,"ConnectionError",{enumerable:!0,get:function(){return _t.ConnectionError}});Object.defineProperty(F,"CancellationReceiverStrategy",{enumerable:!0,get:function(){return _t.CancellationReceiverStrategy}});Object.defineProperty(F,"CancellationSenderStrategy",{enumerable:!0,get:function(){return _t.CancellationSenderStrategy}});Object.defineProperty(F,"CancellationStrategy",{enumerable:!0,get:function(){return _t.CancellationStrategy}});Object.defineProperty(F,"MessageStrategy",{enumerable:!0,get:function(){return _t.MessageStrategy}});var HS=lr();F.RAL=HS.default});var ig=E(ou=>{"use strict";Object.defineProperty(ou,"__esModule",{value:!0});var ng=require("util"),Jn=es(),ts=class n extends Jn.AbstractMessageBuffer{constructor(e="utf-8"){super(e)}emptyBuffer(){return n.emptyBuffer}fromString(e,t){return Buffer.from(e,t)}toString(e,t){return e instanceof Buffer?e.toString(t):new ng.TextDecoder(t).decode(e)}asNative(e,t){return t===void 0?e instanceof Buffer?e:Buffer.from(e):e instanceof Buffer?e.slice(0,t):Buffer.from(e,0,t)}allocNative(e){return Buffer.allocUnsafe(e)}};ts.emptyBuffer=Buffer.allocUnsafe(0);var nu=class{constructor(e){this.stream=e}onClose(e){return this.stream.on("close",e),Jn.Disposable.create(()=>this.stream.off("close",e))}onError(e){return this.stream.on("error",e),Jn.Disposable.create(()=>this.stream.off("error",e))}onEnd(e){return this.stream.on("end",e),Jn.Disposable.create(()=>this.stream.off("end",e))}onData(e){return this.stream.on("data",e),Jn.Disposable.create(()=>this.stream.off("data",e))}},ru=class{constructor(e){this.stream=e}onClose(e){return this.stream.on("close",e),Jn.Disposable.create(()=>this.stream.off("close",e))}onError(e){return this.stream.on("error",e),Jn.Disposable.create(()=>this.stream.off("error",e))}onEnd(e){return this.stream.on("end",e),Jn.Disposable.create(()=>this.stream.off("end",e))}write(e,t){return new Promise((r,i)=>{let o=s=>{s==null?r():i(s)};typeof e=="string"?this.stream.write(e,t,o):this.stream.write(e,o)})}end(){this.stream.end()}},rg=Object.freeze({messageBuffer:Object.freeze({create:n=>new ts(n)}),applicationJson:Object.freeze({encoder:Object.freeze({name:"application/json",encode:(n,e)=>{try{return Promise.resolve(Buffer.from(JSON.stringify(n,void 0,0),e.charset))}catch(t){return Promise.reject(t)}}}),decoder:Object.freeze({name:"application/json",decode:(n,e)=>{try{return n instanceof Buffer?Promise.resolve(JSON.parse(n.toString(e.charset))):Promise.resolve(JSON.parse(new ng.TextDecoder(e.charset).decode(n)))}catch(t){return Promise.reject(t)}}})}),stream:Object.freeze({asReadableStream:n=>new nu(n),asWritableStream:n=>new ru(n)}),console,timer:Object.freeze({setTimeout(n,e,...t){let r=setTimeout(n,e,...t);return{dispose:()=>clearTimeout(r)}},setImmediate(n,...e){let t=setImmediate(n,...e);return{dispose:()=>clearImmediate(t)}},setInterval(n,e,...t){let r=setInterval(n,e,...t);return{dispose:()=>clearInterval(r)}}})});function iu(){return rg}(function(n){function e(){Jn.RAL.install(rg)}n.install=e})(iu||(iu={}));ou.default=iu});var Er=E(Te=>{"use strict";var WS=Te&&Te.__createBinding||(Object.create?function(n,e,t,r){r===void 0&&(r=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[t]}}),Object.defineProperty(n,r,i)}:function(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]}),KS=Te&&Te.__exportStar||function(n,e){for(var t in n)t!=="default"&&!Object.prototype.hasOwnProperty.call(e,t)&&WS(e,n,t)};Object.defineProperty(Te,"__esModule",{value:!0});Te.createMessageConnection=Te.createServerSocketTransport=Te.createClientSocketTransport=Te.createServerPipeTransport=Te.createClientPipeTransport=Te.generateRandomPipeName=Te.StreamMessageWriter=Te.StreamMessageReader=Te.SocketMessageWriter=Te.SocketMessageReader=Te.PortMessageWriter=Te.PortMessageReader=Te.IPCMessageWriter=Te.IPCMessageReader=void 0;var ei=ig();ei.default.install();var og=require("path"),VS=require("os"),zS=require("crypto"),is=require("net"),Qt=es();KS(es(),Te);var su=class extends Qt.AbstractMessageReader{constructor(e){super(),this.process=e;let t=this.process;t.on("error",r=>this.fireError(r)),t.on("close",()=>this.fireClose())}listen(e){return this.process.on("message",e),Qt.Disposable.create(()=>this.process.off("message",e))}};Te.IPCMessageReader=su;var au=class extends Qt.AbstractMessageWriter{constructor(e){super(),this.process=e,this.errorCount=0;let t=this.process;t.on("error",r=>this.fireError(r)),t.on("close",()=>this.fireClose)}write(e){try{return typeof this.process.send=="function"&&this.process.send(e,void 0,void 0,t=>{t?(this.errorCount++,this.handleError(t,e)):this.errorCount=0}),Promise.resolve()}catch(t){return this.handleError(t,e),Promise.reject(t)}}handleError(e,t){this.errorCount++,this.fireError(e,t,this.errorCount)}end(){}};Te.IPCMessageWriter=au;var cu=class extends Qt.AbstractMessageReader{constructor(e){super(),this.onData=new Qt.Emitter,e.on("close",()=>this.fireClose),e.on("error",t=>this.fireError(t)),e.on("message",t=>{this.onData.fire(t)})}listen(e){return this.onData.event(e)}};Te.PortMessageReader=cu;var uu=class extends Qt.AbstractMessageWriter{constructor(e){super(),this.port=e,this.errorCount=0,e.on("close",()=>this.fireClose()),e.on("error",t=>this.fireError(t))}write(e){try{return this.port.postMessage(e),Promise.resolve()}catch(t){return this.handleError(t,e),Promise.reject(t)}}handleError(e,t){this.errorCount++,this.fireError(e,t,this.errorCount)}end(){}};Te.PortMessageWriter=uu;var Pr=class extends Qt.ReadableStreamMessageReader{constructor(e,t="utf-8"){super((0,ei.default)().stream.asReadableStream(e),t)}};Te.SocketMessageReader=Pr;var kr=class extends Qt.WriteableStreamMessageWriter{constructor(e,t){super((0,ei.default)().stream.asWritableStream(e),t),this.socket=e}dispose(){super.dispose(),this.socket.destroy()}};Te.SocketMessageWriter=kr;var ns=class extends Qt.ReadableStreamMessageReader{constructor(e,t){super((0,ei.default)().stream.asReadableStream(e),t)}};Te.StreamMessageReader=ns;var rs=class extends Qt.WriteableStreamMessageWriter{constructor(e,t){super((0,ei.default)().stream.asWritableStream(e),t)}};Te.StreamMessageWriter=rs;var sg=process.env.XDG_RUNTIME_DIR,BS=new Map([["linux",107],["darwin",103]]);function GS(){let n=(0,zS.randomBytes)(21).toString("hex");if(process.platform==="win32")return`\\\\.\\pipe\\vscode-jsonrpc-${n}-sock`;let e;sg?e=og.join(sg,`vscode-ipc-${n}.sock`):e=og.join(VS.tmpdir(),`vscode-${n}.sock`);let t=BS.get(process.platform);return t!==void 0&&e.length>t&&(0,ei.default)().console.warn(`WARNING: IPC handle "${e}" is longer than ${t} characters.`),e}Te.generateRandomPipeName=GS;function JS(n,e="utf-8"){let t,r=new Promise((i,o)=>{t=i});return new Promise((i,o)=>{let s=(0,is.createServer)(a=>{s.close(),t([new Pr(a,e),new kr(a,e)])});s.on("error",o),s.listen(n,()=>{s.removeListener("error",o),i({onConnected:()=>r})})})}Te.createClientPipeTransport=JS;function XS(n,e="utf-8"){let t=(0,is.createConnection)(n);return[new Pr(t,e),new kr(t,e)]}Te.createServerPipeTransport=XS;function QS(n,e="utf-8"){let t,r=new Promise((i,o)=>{t=i});return new Promise((i,o)=>{let s=(0,is.createServer)(a=>{s.close(),t([new Pr(a,e),new kr(a,e)])});s.on("error",o),s.listen(n,"127.0.0.1",()=>{s.removeListener("error",o),i({onConnected:()=>r})})})}Te.createClientSocketTransport=QS;function YS(n,e="utf-8"){let t=(0,is.createConnection)(n,"127.0.0.1");return[new Pr(t,e),new kr(t,e)]}Te.createServerSocketTransport=YS;function ZS(n){let e=n;return e.read!==void 0&&e.addListener!==void 0}function e_(n){let e=n;return e.write!==void 0&&e.addListener!==void 0}function t_(n,e,t,r){t||(t=Qt.NullLogger);let i=ZS(n)?new ns(n):n,o=e_(e)?new rs(e):e;return Qt.ConnectionStrategy.is(r)&&(r={connectionStrategy:r}),(0,Qt.createMessageConnection)(i,o,t,r)}Te.createMessageConnection=t_});var lu=E((Ak,ag)=>{"use strict";ag.exports=Er()});var ss=E((cg,os)=>{"use strict";(function(n){if(typeof os=="object"&&typeof os.exports=="object"){var e=n(require,cg);e!==void 0&&(os.exports=e)}else typeof define=="function"&&define.amd&&define(["require","exports"],n)})(function(n,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TextDocument=e.EOL=e.WorkspaceFolder=e.InlineCompletionContext=e.SelectedCompletionInfo=e.InlineCompletionTriggerKind=e.InlineCompletionList=e.InlineCompletionItem=e.StringValue=e.InlayHint=e.InlayHintLabelPart=e.InlayHintKind=e.InlineValueContext=e.InlineValueEvaluatableExpression=e.InlineValueVariableLookup=e.InlineValueText=e.SemanticTokens=e.SemanticTokenModifiers=e.SemanticTokenTypes=e.SelectionRange=e.DocumentLink=e.FormattingOptions=e.CodeLens=e.CodeAction=e.CodeActionContext=e.CodeActionTriggerKind=e.CodeActionKind=e.DocumentSymbol=e.WorkspaceSymbol=e.SymbolInformation=e.SymbolTag=e.SymbolKind=e.DocumentHighlight=e.DocumentHighlightKind=e.SignatureInformation=e.ParameterInformation=e.Hover=e.MarkedString=e.CompletionList=e.CompletionItem=e.CompletionItemLabelDetails=e.InsertTextMode=e.InsertReplaceEdit=e.CompletionItemTag=e.InsertTextFormat=e.CompletionItemKind=e.MarkupContent=e.MarkupKind=e.TextDocumentItem=e.OptionalVersionedTextDocumentIdentifier=e.VersionedTextDocumentIdentifier=e.TextDocumentIdentifier=e.WorkspaceChange=e.WorkspaceEdit=e.DeleteFile=e.RenameFile=e.CreateFile=e.TextDocumentEdit=e.AnnotatedTextEdit=e.ChangeAnnotationIdentifier=e.ChangeAnnotation=e.TextEdit=e.Command=e.Diagnostic=e.CodeDescription=e.DiagnosticTag=e.DiagnosticSeverity=e.DiagnosticRelatedInformation=e.FoldingRange=e.FoldingRangeKind=e.ColorPresentation=e.ColorInformation=e.Color=e.LocationLink=e.Location=e.Range=e.Position=e.uinteger=e.integer=e.URI=e.DocumentUri=void 0;var t;(function(h){function D(S){return typeof S=="string"}h.is=D})(t||(e.DocumentUri=t={}));var r;(function(h){function D(S){return typeof S=="string"}h.is=D})(r||(e.URI=r={}));var i;(function(h){h.MIN_VALUE=-2147483648,h.MAX_VALUE=2147483647;function D(S){return typeof S=="number"&&h.MIN_VALUE<=S&&S<=h.MAX_VALUE}h.is=D})(i||(e.integer=i={}));var o;(function(h){h.MIN_VALUE=0,h.MAX_VALUE=2147483647;function D(S){return typeof S=="number"&&h.MIN_VALUE<=S&&S<=h.MAX_VALUE}h.is=D})(o||(e.uinteger=o={}));var s;(function(h){function D(b,f){return b===Number.MAX_VALUE&&(b=o.MAX_VALUE),f===Number.MAX_VALUE&&(f=o.MAX_VALUE),{line:b,character:f}}h.create=D;function S(b){var f=b;return R.objectLiteral(f)&&R.uinteger(f.line)&&R.uinteger(f.character)}h.is=S})(s||(e.Position=s={}));var a;(function(h){function D(b,f,k,M){if(R.uinteger(b)&&R.uinteger(f)&&R.uinteger(k)&&R.uinteger(M))return{start:s.create(b,f),end:s.create(k,M)};if(s.is(b)&&s.is(f))return{start:b,end:f};throw new Error("Range#create called with invalid arguments[".concat(b,", ").concat(f,", ").concat(k,", ").concat(M,"]"))}h.create=D;function S(b){var f=b;return R.objectLiteral(f)&&s.is(f.start)&&s.is(f.end)}h.is=S})(a||(e.Range=a={}));var c;(function(h){function D(b,f){return{uri:b,range:f}}h.create=D;function S(b){var f=b;return R.objectLiteral(f)&&a.is(f.range)&&(R.string(f.uri)||R.undefined(f.uri))}h.is=S})(c||(e.Location=c={}));var u;(function(h){function D(b,f,k,M){return{targetUri:b,targetRange:f,targetSelectionRange:k,originSelectionRange:M}}h.create=D;function S(b){var f=b;return R.objectLiteral(f)&&a.is(f.targetRange)&&R.string(f.targetUri)&&a.is(f.targetSelectionRange)&&(a.is(f.originSelectionRange)||R.undefined(f.originSelectionRange))}h.is=S})(u||(e.LocationLink=u={}));var d;(function(h){function D(b,f,k,M){return{red:b,green:f,blue:k,alpha:M}}h.create=D;function S(b){var f=b;return R.objectLiteral(f)&&R.numberRange(f.red,0,1)&&R.numberRange(f.green,0,1)&&R.numberRange(f.blue,0,1)&&R.numberRange(f.alpha,0,1)}h.is=S})(d||(e.Color=d={}));var g;(function(h){function D(b,f){return{range:b,color:f}}h.create=D;function S(b){var f=b;return R.objectLiteral(f)&&a.is(f.range)&&d.is(f.color)}h.is=S})(g||(e.ColorInformation=g={}));var m;(function(h){function D(b,f,k){return{label:b,textEdit:f,additionalTextEdits:k}}h.create=D;function S(b){var f=b;return R.objectLiteral(f)&&R.string(f.label)&&(R.undefined(f.textEdit)||te.is(f))&&(R.undefined(f.additionalTextEdits)||R.typedArray(f.additionalTextEdits,te.is))}h.is=S})(m||(e.ColorPresentation=m={}));var y;(function(h){h.Comment="comment",h.Imports="imports",h.Region="region"})(y||(e.FoldingRangeKind=y={}));var v;(function(h){function D(b,f,k,M,ue,Ge){var He={startLine:b,endLine:f};return R.defined(k)&&(He.startCharacter=k),R.defined(M)&&(He.endCharacter=M),R.defined(ue)&&(He.kind=ue),R.defined(Ge)&&(He.collapsedText=Ge),He}h.create=D;function S(b){var f=b;return R.objectLiteral(f)&&R.uinteger(f.startLine)&&R.uinteger(f.startLine)&&(R.undefined(f.startCharacter)||R.uinteger(f.startCharacter))&&(R.undefined(f.endCharacter)||R.uinteger(f.endCharacter))&&(R.undefined(f.kind)||R.string(f.kind))}h.is=S})(v||(e.FoldingRange=v={}));var T;(function(h){function D(b,f){return{location:b,message:f}}h.create=D;function S(b){var f=b;return R.defined(f)&&c.is(f.location)&&R.string(f.message)}h.is=S})(T||(e.DiagnosticRelatedInformation=T={}));var P;(function(h){h.Error=1,h.Warning=2,h.Information=3,h.Hint=4})(P||(e.DiagnosticSeverity=P={}));var q;(function(h){h.Unnecessary=1,h.Deprecated=2})(q||(e.DiagnosticTag=q={}));var L;(function(h){function D(S){var b=S;return R.objectLiteral(b)&&R.string(b.href)}h.is=D})(L||(e.CodeDescription=L={}));var N;(function(h){function D(b,f,k,M,ue,Ge){var He={range:b,message:f};return R.defined(k)&&(He.severity=k),R.defined(M)&&(He.code=M),R.defined(ue)&&(He.source=ue),R.defined(Ge)&&(He.relatedInformation=Ge),He}h.create=D;function S(b){var f,k=b;return R.defined(k)&&a.is(k.range)&&R.string(k.message)&&(R.number(k.severity)||R.undefined(k.severity))&&(R.integer(k.code)||R.string(k.code)||R.undefined(k.code))&&(R.undefined(k.codeDescription)||R.string((f=k.codeDescription)===null||f===void 0?void 0:f.href))&&(R.string(k.source)||R.undefined(k.source))&&(R.undefined(k.relatedInformation)||R.typedArray(k.relatedInformation,T.is))}h.is=S})(N||(e.Diagnostic=N={}));var K;(function(h){function D(b,f){for(var k=[],M=2;M<arguments.length;M++)k[M-2]=arguments[M];var ue={title:b,command:f};return R.defined(k)&&k.length>0&&(ue.arguments=k),ue}h.create=D;function S(b){var f=b;return R.defined(f)&&R.string(f.title)&&R.string(f.command)}h.is=S})(K||(e.Command=K={}));var te;(function(h){function D(k,M){return{range:k,newText:M}}h.replace=D;function S(k,M){return{range:{start:k,end:k},newText:M}}h.insert=S;function b(k){return{range:k,newText:""}}h.del=b;function f(k){var M=k;return R.objectLiteral(M)&&R.string(M.newText)&&a.is(M.range)}h.is=f})(te||(e.TextEdit=te={}));var Z;(function(h){function D(b,f,k){var M={label:b};return f!==void 0&&(M.needsConfirmation=f),k!==void 0&&(M.description=k),M}h.create=D;function S(b){var f=b;return R.objectLiteral(f)&&R.string(f.label)&&(R.boolean(f.needsConfirmation)||f.needsConfirmation===void 0)&&(R.string(f.description)||f.description===void 0)}h.is=S})(Z||(e.ChangeAnnotation=Z={}));var V;(function(h){function D(S){var b=S;return R.string(b)}h.is=D})(V||(e.ChangeAnnotationIdentifier=V={}));var ne;(function(h){function D(k,M,ue){return{range:k,newText:M,annotationId:ue}}h.replace=D;function S(k,M,ue){return{range:{start:k,end:k},newText:M,annotationId:ue}}h.insert=S;function b(k,M){return{range:k,newText:"",annotationId:M}}h.del=b;function f(k){var M=k;return te.is(M)&&(Z.is(M.annotationId)||V.is(M.annotationId))}h.is=f})(ne||(e.AnnotatedTextEdit=ne={}));var ce;(function(h){function D(b,f){return{textDocument:b,edits:f}}h.create=D;function S(b){var f=b;return R.defined(f)&&be.is(f.textDocument)&&Array.isArray(f.edits)}h.is=S})(ce||(e.TextDocumentEdit=ce={}));var Ne;(function(h){function D(b,f,k){var M={kind:"create",uri:b};return f!==void 0&&(f.overwrite!==void 0||f.ignoreIfExists!==void 0)&&(M.options=f),k!==void 0&&(M.annotationId=k),M}h.create=D;function S(b){var f=b;return f&&f.kind==="create"&&R.string(f.uri)&&(f.options===void 0||(f.options.overwrite===void 0||R.boolean(f.options.overwrite))&&(f.options.ignoreIfExists===void 0||R.boolean(f.options.ignoreIfExists)))&&(f.annotationId===void 0||V.is(f.annotationId))}h.is=S})(Ne||(e.CreateFile=Ne={}));var U;(function(h){function D(b,f,k,M){var ue={kind:"rename",oldUri:b,newUri:f};return k!==void 0&&(k.overwrite!==void 0||k.ignoreIfExists!==void 0)&&(ue.options=k),M!==void 0&&(ue.annotationId=M),ue}h.create=D;function S(b){var f=b;return f&&f.kind==="rename"&&R.string(f.oldUri)&&R.string(f.newUri)&&(f.options===void 0||(f.options.overwrite===void 0||R.boolean(f.options.overwrite))&&(f.options.ignoreIfExists===void 0||R.boolean(f.options.ignoreIfExists)))&&(f.annotationId===void 0||V.is(f.annotationId))}h.is=S})(U||(e.RenameFile=U={}));var I;(function(h){function D(b,f,k){var M={kind:"delete",uri:b};return f!==void 0&&(f.recursive!==void 0||f.ignoreIfNotExists!==void 0)&&(M.options=f),k!==void 0&&(M.annotationId=k),M}h.create=D;function S(b){var f=b;return f&&f.kind==="delete"&&R.string(f.uri)&&(f.options===void 0||(f.options.recursive===void 0||R.boolean(f.options.recursive))&&(f.options.ignoreIfNotExists===void 0||R.boolean(f.options.ignoreIfNotExists)))&&(f.annotationId===void 0||V.is(f.annotationId))}h.is=S})(I||(e.DeleteFile=I={}));var J;(function(h){function D(S){var b=S;return b&&(b.changes!==void 0||b.documentChanges!==void 0)&&(b.documentChanges===void 0||b.documentChanges.every(function(f){return R.string(f.kind)?Ne.is(f)||U.is(f)||I.is(f):ce.is(f)}))}h.is=D})(J||(e.WorkspaceEdit=J={}));var B=function(){function h(D,S){this.edits=D,this.changeAnnotations=S}return h.prototype.insert=function(D,S,b){var f,k;if(b===void 0?f=te.insert(D,S):V.is(b)?(k=b,f=ne.insert(D,S,b)):(this.assertChangeAnnotations(this.changeAnnotations),k=this.changeAnnotations.manage(b),f=ne.insert(D,S,k)),this.edits.push(f),k!==void 0)return k},h.prototype.replace=function(D,S,b){var f,k;if(b===void 0?f=te.replace(D,S):V.is(b)?(k=b,f=ne.replace(D,S,b)):(this.assertChangeAnnotations(this.changeAnnotations),k=this.changeAnnotations.manage(b),f=ne.replace(D,S,k)),this.edits.push(f),k!==void 0)return k},h.prototype.delete=function(D,S){var b,f;if(S===void 0?b=te.del(D):V.is(S)?(f=S,b=ne.del(D,S)):(this.assertChangeAnnotations(this.changeAnnotations),f=this.changeAnnotations.manage(S),b=ne.del(D,f)),this.edits.push(b),f!==void 0)return f},h.prototype.add=function(D){this.edits.push(D)},h.prototype.all=function(){return this.edits},h.prototype.clear=function(){this.edits.splice(0,this.edits.length)},h.prototype.assertChangeAnnotations=function(D){if(D===void 0)throw new Error("Text edit change is not configured to manage change annotations.")},h}(),pe=function(){function h(D){this._annotations=D===void 0?Object.create(null):D,this._counter=0,this._size=0}return h.prototype.all=function(){return this._annotations},Object.defineProperty(h.prototype,"size",{get:function(){return this._size},enumerable:!1,configurable:!0}),h.prototype.manage=function(D,S){var b;if(V.is(D)?b=D:(b=this.nextId(),S=D),this._annotations[b]!==void 0)throw new Error("Id ".concat(b," is already in use."));if(S===void 0)throw new Error("No annotation provided for id ".concat(b));return this._annotations[b]=S,this._size++,b},h.prototype.nextId=function(){return this._counter++,this._counter.toString()},h}(),ie=function(){function h(D){var S=this;this._textEditChanges=Object.create(null),D!==void 0?(this._workspaceEdit=D,D.documentChanges?(this._changeAnnotations=new pe(D.changeAnnotations),D.changeAnnotations=this._changeAnnotations.all(),D.documentChanges.forEach(function(b){if(ce.is(b)){var f=new B(b.edits,S._changeAnnotations);S._textEditChanges[b.textDocument.uri]=f}})):D.changes&&Object.keys(D.changes).forEach(function(b){var f=new B(D.changes[b]);S._textEditChanges[b]=f})):this._workspaceEdit={}}return Object.defineProperty(h.prototype,"edit",{get:function(){return this.initDocumentChanges(),this._changeAnnotations!==void 0&&(this._changeAnnotations.size===0?this._workspaceEdit.changeAnnotations=void 0:this._workspaceEdit.changeAnnotations=this._changeAnnotations.all()),this._workspaceEdit},enumerable:!1,configurable:!0}),h.prototype.getTextEditChange=function(D){if(be.is(D)){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");var S={uri:D.uri,version:D.version},b=this._textEditChanges[S.uri];if(!b){var f=[],k={textDocument:S,edits:f};this._workspaceEdit.documentChanges.push(k),b=new B(f,this._changeAnnotations),this._textEditChanges[S.uri]=b}return b}else{if(this.initChanges(),this._workspaceEdit.changes===void 0)throw new Error("Workspace edit is not configured for normal text edit changes.");var b=this._textEditChanges[D];if(!b){var f=[];this._workspaceEdit.changes[D]=f,b=new B(f),this._textEditChanges[D]=b}return b}},h.prototype.initDocumentChanges=function(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._changeAnnotations=new pe,this._workspaceEdit.documentChanges=[],this._workspaceEdit.changeAnnotations=this._changeAnnotations.all())},h.prototype.initChanges=function(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._workspaceEdit.changes=Object.create(null))},h.prototype.createFile=function(D,S,b){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");var f;Z.is(S)||V.is(S)?f=S:b=S;var k,M;if(f===void 0?k=Ne.create(D,b):(M=V.is(f)?f:this._changeAnnotations.manage(f),k=Ne.create(D,b,M)),this._workspaceEdit.documentChanges.push(k),M!==void 0)return M},h.prototype.renameFile=function(D,S,b,f){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");var k;Z.is(b)||V.is(b)?k=b:f=b;var M,ue;if(k===void 0?M=U.create(D,S,f):(ue=V.is(k)?k:this._changeAnnotations.manage(k),M=U.create(D,S,f,ue)),this._workspaceEdit.documentChanges.push(M),ue!==void 0)return ue},h.prototype.deleteFile=function(D,S,b){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");var f;Z.is(S)||V.is(S)?f=S:b=S;var k,M;if(f===void 0?k=I.create(D,b):(M=V.is(f)?f:this._changeAnnotations.manage(f),k=I.create(D,b,M)),this._workspaceEdit.documentChanges.push(k),M!==void 0)return M},h}();e.WorkspaceChange=ie;var oe;(function(h){function D(b){return{uri:b}}h.create=D;function S(b){var f=b;return R.defined(f)&&R.string(f.uri)}h.is=S})(oe||(e.TextDocumentIdentifier=oe={}));var st;(function(h){function D(b,f){return{uri:b,version:f}}h.create=D;function S(b){var f=b;return R.defined(f)&&R.string(f.uri)&&R.integer(f.version)}h.is=S})(st||(e.VersionedTextDocumentIdentifier=st={}));var be;(function(h){function D(b,f){return{uri:b,version:f}}h.create=D;function S(b){var f=b;return R.defined(f)&&R.string(f.uri)&&(f.version===null||R.integer(f.version))}h.is=S})(be||(e.OptionalVersionedTextDocumentIdentifier=be={}));var Re;(function(h){function D(b,f,k,M){return{uri:b,languageId:f,version:k,text:M}}h.create=D;function S(b){var f=b;return R.defined(f)&&R.string(f.uri)&&R.string(f.languageId)&&R.integer(f.version)&&R.string(f.text)}h.is=S})(Re||(e.TextDocumentItem=Re={}));var ct;(function(h){h.PlainText="plaintext",h.Markdown="markdown";function D(S){var b=S;return b===h.PlainText||b===h.Markdown}h.is=D})(ct||(e.MarkupKind=ct={}));var Ct;(function(h){function D(S){var b=S;return R.objectLiteral(S)&&ct.is(b.kind)&&R.string(b.value)}h.is=D})(Ct||(e.MarkupContent=Ct={}));var nr;(function(h){h.Text=1,h.Method=2,h.Function=3,h.Constructor=4,h.Field=5,h.Variable=6,h.Class=7,h.Interface=8,h.Module=9,h.Property=10,h.Unit=11,h.Value=12,h.Enum=13,h.Keyword=14,h.Snippet=15,h.Color=16,h.File=17,h.Reference=18,h.Folder=19,h.EnumMember=20,h.Constant=21,h.Struct=22,h.Event=23,h.Operator=24,h.TypeParameter=25})(nr||(e.CompletionItemKind=nr={}));var En;(function(h){h.PlainText=1,h.Snippet=2})(En||(e.InsertTextFormat=En={}));var xn;(function(h){h.Deprecated=1})(xn||(e.CompletionItemTag=xn={}));var Kn;(function(h){function D(b,f,k){return{newText:b,insert:f,replace:k}}h.create=D;function S(b){var f=b;return f&&R.string(f.newText)&&a.is(f.insert)&&a.is(f.replace)}h.is=S})(Kn||(e.InsertReplaceEdit=Kn={}));var rr;(function(h){h.asIs=1,h.adjustIndentation=2})(rr||(e.InsertTextMode=rr={}));var qn;(function(h){function D(S){var b=S;return b&&(R.string(b.detail)||b.detail===void 0)&&(R.string(b.description)||b.description===void 0)}h.is=D})(qn||(e.CompletionItemLabelDetails=qn={}));var mn;(function(h){function D(S){return{label:S}}h.create=D})(mn||(e.CompletionItem=mn={}));var vn;(function(h){function D(S,b){return{items:S||[],isIncomplete:!!b}}h.create=D})(vn||(e.CompletionList=vn={}));var In;(function(h){function D(b){return b.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}h.fromPlainText=D;function S(b){var f=b;return R.string(f)||R.objectLiteral(f)&&R.string(f.language)&&R.string(f.value)}h.is=S})(In||(e.MarkedString=In={}));var ut;(function(h){function D(S){var b=S;return!!b&&R.objectLiteral(b)&&(Ct.is(b.contents)||In.is(b.contents)||R.typedArray(b.contents,In.is))&&(S.range===void 0||a.is(S.range))}h.is=D})(ut||(e.Hover=ut={}));var Vn;(function(h){function D(S,b){return b?{label:S,documentation:b}:{label:S}}h.create=D})(Vn||(e.ParameterInformation=Vn={}));var yn;(function(h){function D(S,b){for(var f=[],k=2;k<arguments.length;k++)f[k-2]=arguments[k];var M={label:S};return R.defined(b)&&(M.documentation=b),R.defined(f)?M.parameters=f:M.parameters=[],M}h.create=D})(yn||(e.SignatureInformation=yn={}));var rn;(function(h){h.Text=1,h.Read=2,h.Write=3})(rn||(e.DocumentHighlightKind=rn={}));var ir;(function(h){function D(S,b){var f={range:S};return R.number(b)&&(f.kind=b),f}h.create=D})(ir||(e.DocumentHighlight=ir={}));var on;(function(h){h.File=1,h.Module=2,h.Namespace=3,h.Package=4,h.Class=5,h.Method=6,h.Property=7,h.Field=8,h.Constructor=9,h.Enum=10,h.Interface=11,h.Function=12,h.Variable=13,h.Constant=14,h.String=15,h.Number=16,h.Boolean=17,h.Array=18,h.Object=19,h.Key=20,h.Null=21,h.EnumMember=22,h.Struct=23,h.Event=24,h.Operator=25,h.TypeParameter=26})(on||(e.SymbolKind=on={}));var Fn;(function(h){h.Deprecated=1})(Fn||(e.SymbolTag=Fn={}));var at;(function(h){function D(S,b,f,k,M){var ue={name:S,kind:b,location:{uri:k,range:f}};return M&&(ue.containerName=M),ue}h.create=D})(at||(e.SymbolInformation=at={}));var Tt;(function(h){function D(S,b,f,k){return k!==void 0?{name:S,kind:b,location:{uri:f,range:k}}:{name:S,kind:b,location:{uri:f}}}h.create=D})(Tt||(e.WorkspaceSymbol=Tt={}));var Dt;(function(h){function D(b,f,k,M,ue,Ge){var He={name:b,detail:f,kind:k,range:M,selectionRange:ue};return Ge!==void 0&&(He.children=Ge),He}h.create=D;function S(b){var f=b;return f&&R.string(f.name)&&R.number(f.kind)&&a.is(f.range)&&a.is(f.selectionRange)&&(f.detail===void 0||R.string(f.detail))&&(f.deprecated===void 0||R.boolean(f.deprecated))&&(f.children===void 0||Array.isArray(f.children))&&(f.tags===void 0||Array.isArray(f.tags))}h.is=S})(Dt||(e.DocumentSymbol=Dt={}));var Gt;(function(h){h.Empty="",h.QuickFix="quickfix",h.Refactor="refactor",h.RefactorExtract="refactor.extract",h.RefactorInline="refactor.inline",h.RefactorRewrite="refactor.rewrite",h.Source="source",h.SourceOrganizeImports="source.organizeImports",h.SourceFixAll="source.fixAll"})(Gt||(e.CodeActionKind=Gt={}));var Lt;(function(h){h.Invoked=1,h.Automatic=2})(Lt||(e.CodeActionTriggerKind=Lt={}));var On;(function(h){function D(b,f,k){var M={diagnostics:b};return f!=null&&(M.only=f),k!=null&&(M.triggerKind=k),M}h.create=D;function S(b){var f=b;return R.defined(f)&&R.typedArray(f.diagnostics,N.is)&&(f.only===void 0||R.typedArray(f.only,R.string))&&(f.triggerKind===void 0||f.triggerKind===Lt.Invoked||f.triggerKind===Lt.Automatic)}h.is=S})(On||(e.CodeActionContext=On={}));var zn;(function(h){function D(b,f,k){var M={title:b},ue=!0;return typeof f=="string"?(ue=!1,M.kind=f):K.is(f)?M.command=f:M.edit=f,ue&&k!==void 0&&(M.kind=k),M}h.create=D;function S(b){var f=b;return f&&R.string(f.title)&&(f.diagnostics===void 0||R.typedArray(f.diagnostics,N.is))&&(f.kind===void 0||R.string(f.kind))&&(f.edit!==void 0||f.command!==void 0)&&(f.command===void 0||K.is(f.command))&&(f.isPreferred===void 0||R.boolean(f.isPreferred))&&(f.edit===void 0||J.is(f.edit))}h.is=S})(zn||(e.CodeAction=zn={}));var bn;(function(h){function D(b,f){var k={range:b};return R.defined(f)&&(k.data=f),k}h.create=D;function S(b){var f=b;return R.defined(f)&&a.is(f.range)&&(R.undefined(f.command)||K.is(f.command))}h.is=S})(bn||(e.CodeLens=bn={}));var Bn;(function(h){function D(b,f){return{tabSize:b,insertSpaces:f}}h.create=D;function S(b){var f=b;return R.defined(f)&&R.uinteger(f.tabSize)&&R.boolean(f.insertSpaces)}h.is=S})(Bn||(e.FormattingOptions=Bn={}));var Ft;(function(h){function D(b,f,k){return{range:b,target:f,data:k}}h.create=D;function S(b){var f=b;return R.defined(f)&&a.is(f.range)&&(R.undefined(f.target)||R.string(f.target))}h.is=S})(Ft||(e.DocumentLink=Ft={}));var C;(function(h){function D(b,f){return{range:b,parent:f}}h.create=D;function S(b){var f=b;return R.objectLiteral(f)&&a.is(f.range)&&(f.parent===void 0||h.is(f.parent))}h.is=S})(C||(e.SelectionRange=C={}));var O;(function(h){h.namespace="namespace",h.type="type",h.class="class",h.enum="enum",h.interface="interface",h.struct="struct",h.typeParameter="typeParameter",h.parameter="parameter",h.variable="variable",h.property="property",h.enumMember="enumMember",h.event="event",h.function="function",h.method="method",h.macro="macro",h.keyword="keyword",h.modifier="modifier",h.comment="comment",h.string="string",h.number="number",h.regexp="regexp",h.operator="operator",h.decorator="decorator"})(O||(e.SemanticTokenTypes=O={}));var W;(function(h){h.declaration="declaration",h.definition="definition",h.readonly="readonly",h.static="static",h.deprecated="deprecated",h.abstract="abstract",h.async="async",h.modification="modification",h.documentation="documentation",h.defaultLibrary="defaultLibrary"})(W||(e.SemanticTokenModifiers=W={}));var G;(function(h){function D(S){var b=S;return R.objectLiteral(b)&&(b.resultId===void 0||typeof b.resultId=="string")&&Array.isArray(b.data)&&(b.data.length===0||typeof b.data[0]=="number")}h.is=D})(G||(e.SemanticTokens=G={}));var xe;(function(h){function D(b,f){return{range:b,text:f}}h.create=D;function S(b){var f=b;return f!=null&&a.is(f.range)&&R.string(f.text)}h.is=S})(xe||(e.InlineValueText=xe={}));var Pe;(function(h){function D(b,f,k){return{range:b,variableName:f,caseSensitiveLookup:k}}h.create=D;function S(b){var f=b;return f!=null&&a.is(f.range)&&R.boolean(f.caseSensitiveLookup)&&(R.string(f.variableName)||f.variableName===void 0)}h.is=S})(Pe||(e.InlineValueVariableLookup=Pe={}));var Ae;(function(h){function D(b,f){return{range:b,expression:f}}h.create=D;function S(b){var f=b;return f!=null&&a.is(f.range)&&(R.string(f.expression)||f.expression===void 0)}h.is=S})(Ae||(e.InlineValueEvaluatableExpression=Ae={}));var $e;(function(h){function D(b,f){return{frameId:b,stoppedLocation:f}}h.create=D;function S(b){var f=b;return R.defined(f)&&a.is(b.stoppedLocation)}h.is=S})($e||(e.InlineValueContext=$e={}));var ye;(function(h){h.Type=1,h.Parameter=2;function D(S){return S===1||S===2}h.is=D})(ye||(e.InlayHintKind=ye={}));var Ie;(function(h){function D(b){return{value:b}}h.create=D;function S(b){var f=b;return R.objectLiteral(f)&&(f.tooltip===void 0||R.string(f.tooltip)||Ct.is(f.tooltip))&&(f.location===void 0||c.is(f.location))&&(f.command===void 0||K.is(f.command))}h.is=S})(Ie||(e.InlayHintLabelPart=Ie={}));var De;(function(h){function D(b,f,k){var M={position:b,label:f};return k!==void 0&&(M.kind=k),M}h.create=D;function S(b){var f=b;return R.objectLiteral(f)&&s.is(f.position)&&(R.string(f.label)||R.typedArray(f.label,Ie.is))&&(f.kind===void 0||ye.is(f.kind))&&f.textEdits===void 0||R.typedArray(f.textEdits,te.is)&&(f.tooltip===void 0||R.string(f.tooltip)||Ct.is(f.tooltip))&&(f.paddingLeft===void 0||R.boolean(f.paddingLeft))&&(f.paddingRight===void 0||R.boolean(f.paddingRight))}h.is=S})(De||(e.InlayHint=De={}));var Ue;(function(h){function D(S){return{kind:"snippet",value:S}}h.createSnippet=D})(Ue||(e.StringValue=Ue={}));var nt;(function(h){function D(S,b,f,k){return{insertText:S,filterText:b,range:f,command:k}}h.create=D})(nt||(e.InlineCompletionItem=nt={}));var ht;(function(h){function D(S){return{items:S}}h.create=D})(ht||(e.InlineCompletionList=ht={}));var or;(function(h){h.Invoked=0,h.Automatic=1})(or||(e.InlineCompletionTriggerKind=or={}));var sr;(function(h){function D(S,b){return{range:S,text:b}}h.create=D})(sr||(e.SelectedCompletionInfo=sr={}));var p;(function(h){function D(S,b){return{triggerKind:S,selectedCompletionInfo:b}}h.create=D})(p||(e.InlineCompletionContext=p={}));var x;(function(h){function D(S){var b=S;return R.objectLiteral(b)&&r.is(b.uri)&&R.string(b.name)}h.is=D})(x||(e.WorkspaceFolder=x={})),e.EOL=[`
41
41
  `,`\r
42
- `,"\r"];var Y;(function(h){function D(k,M,le,Ge){return new Fe(k,M,le,Ge)}h.create=D;function S(k){var M=k;return!!(R.defined(M)&&R.string(M.uri)&&(R.undefined(M.languageId)||R.string(M.languageId))&&R.uinteger(M.lineCount)&&R.func(M.getText)&&R.func(M.positionAt)&&R.func(M.offsetAt))}h.is=S;function b(k,M){for(var le=k.getText(),Ge=f(M,function(Mn,l){var _=Mn.range.start.line-l.range.start.line;return _===0?Mn.range.start.character-l.range.start.character:_}),He=le.length,Nt=Ge.length-1;Nt>=0;Nt--){var Jt=Ge[Nt],wn=k.offsetAt(Jt.range.start),Ce=k.offsetAt(Jt.range.end);if(Ce<=He)le=le.substring(0,wn)+Jt.newText+le.substring(Ce,le.length);else throw new Error("Overlapping edit");He=wn}return le}h.applyEdits=b;function f(k,M){if(k.length<=1)return k;var le=k.length/2|0,Ge=k.slice(0,le),He=k.slice(le);f(Ge,M),f(He,M);for(var Nt=0,Jt=0,wn=0;Nt<Ge.length&&Jt<He.length;){var Ce=M(Ge[Nt],He[Jt]);Ce<=0?k[wn++]=Ge[Nt++]:k[wn++]=He[Jt++]}for(;Nt<Ge.length;)k[wn++]=Ge[Nt++];for(;Jt<He.length;)k[wn++]=He[Jt++];return k}})(Y||(e.TextDocument=Y={}));var Fe=function(){function h(D,S,b,f){this._uri=D,this._languageId=S,this._version=b,this._content=f,this._lineOffsets=void 0}return Object.defineProperty(h.prototype,"uri",{get:function(){return this._uri},enumerable:!1,configurable:!0}),Object.defineProperty(h.prototype,"languageId",{get:function(){return this._languageId},enumerable:!1,configurable:!0}),Object.defineProperty(h.prototype,"version",{get:function(){return this._version},enumerable:!1,configurable:!0}),h.prototype.getText=function(D){if(D){var S=this.offsetAt(D.start),b=this.offsetAt(D.end);return this._content.substring(S,b)}return this._content},h.prototype.update=function(D,S){this._content=D.text,this._version=S,this._lineOffsets=void 0},h.prototype.getLineOffsets=function(){if(this._lineOffsets===void 0){for(var D=[],S=this._content,b=!0,f=0;f<S.length;f++){b&&(D.push(f),b=!1);var k=S.charAt(f);b=k==="\r"||k===`
42
+ `,"\r"];var Y;(function(h){function D(k,M,ue,Ge){return new Fe(k,M,ue,Ge)}h.create=D;function S(k){var M=k;return!!(R.defined(M)&&R.string(M.uri)&&(R.undefined(M.languageId)||R.string(M.languageId))&&R.uinteger(M.lineCount)&&R.func(M.getText)&&R.func(M.positionAt)&&R.func(M.offsetAt))}h.is=S;function b(k,M){for(var ue=k.getText(),Ge=f(M,function(Mn,l){var _=Mn.range.start.line-l.range.start.line;return _===0?Mn.range.start.character-l.range.start.character:_}),He=ue.length,Nt=Ge.length-1;Nt>=0;Nt--){var Jt=Ge[Nt],wn=k.offsetAt(Jt.range.start),Ce=k.offsetAt(Jt.range.end);if(Ce<=He)ue=ue.substring(0,wn)+Jt.newText+ue.substring(Ce,ue.length);else throw new Error("Overlapping edit");He=wn}return ue}h.applyEdits=b;function f(k,M){if(k.length<=1)return k;var ue=k.length/2|0,Ge=k.slice(0,ue),He=k.slice(ue);f(Ge,M),f(He,M);for(var Nt=0,Jt=0,wn=0;Nt<Ge.length&&Jt<He.length;){var Ce=M(Ge[Nt],He[Jt]);Ce<=0?k[wn++]=Ge[Nt++]:k[wn++]=He[Jt++]}for(;Nt<Ge.length;)k[wn++]=Ge[Nt++];for(;Jt<He.length;)k[wn++]=He[Jt++];return k}})(Y||(e.TextDocument=Y={}));var Fe=function(){function h(D,S,b,f){this._uri=D,this._languageId=S,this._version=b,this._content=f,this._lineOffsets=void 0}return Object.defineProperty(h.prototype,"uri",{get:function(){return this._uri},enumerable:!1,configurable:!0}),Object.defineProperty(h.prototype,"languageId",{get:function(){return this._languageId},enumerable:!1,configurable:!0}),Object.defineProperty(h.prototype,"version",{get:function(){return this._version},enumerable:!1,configurable:!0}),h.prototype.getText=function(D){if(D){var S=this.offsetAt(D.start),b=this.offsetAt(D.end);return this._content.substring(S,b)}return this._content},h.prototype.update=function(D,S){this._content=D.text,this._version=S,this._lineOffsets=void 0},h.prototype.getLineOffsets=function(){if(this._lineOffsets===void 0){for(var D=[],S=this._content,b=!0,f=0;f<S.length;f++){b&&(D.push(f),b=!1);var k=S.charAt(f);b=k==="\r"||k===`
43
43
  `,k==="\r"&&f+1<S.length&&S.charAt(f+1)===`
44
- `&&f++}b&&S.length>0&&D.push(S.length),this._lineOffsets=D}return this._lineOffsets},h.prototype.positionAt=function(D){D=Math.max(Math.min(D,this._content.length),0);var S=this.getLineOffsets(),b=0,f=S.length;if(f===0)return s.create(0,D);for(;b<f;){var k=Math.floor((b+f)/2);S[k]>D?f=k:b=k+1}var M=b-1;return s.create(M,D-S[M])},h.prototype.offsetAt=function(D){var S=this.getLineOffsets();if(D.line>=S.length)return this._content.length;if(D.line<0)return 0;var b=S[D.line],f=D.line+1<S.length?S[D.line+1]:this._content.length;return Math.max(Math.min(b+D.character,f),b)},Object.defineProperty(h.prototype,"lineCount",{get:function(){return this.getLineOffsets().length},enumerable:!1,configurable:!0}),h}(),R;(function(h){var D=Object.prototype.toString;function S(Ce){return typeof Ce<"u"}h.defined=S;function b(Ce){return typeof Ce>"u"}h.undefined=b;function f(Ce){return Ce===!0||Ce===!1}h.boolean=f;function k(Ce){return D.call(Ce)==="[object String]"}h.string=k;function M(Ce){return D.call(Ce)==="[object Number]"}h.number=M;function le(Ce,Mn,l){return D.call(Ce)==="[object Number]"&&Mn<=Ce&&Ce<=l}h.numberRange=le;function Ge(Ce){return D.call(Ce)==="[object Number]"&&-2147483648<=Ce&&Ce<=2147483647}h.integer=Ge;function He(Ce){return D.call(Ce)==="[object Number]"&&0<=Ce&&Ce<=2147483647}h.uinteger=He;function Nt(Ce){return D.call(Ce)==="[object Function]"}h.func=Nt;function Jt(Ce){return Ce!==null&&typeof Ce=="object"}h.objectLiteral=Jt;function wn(Ce,Mn){return Array.isArray(Ce)&&Ce.every(Mn)}h.typedArray=wn})(R||(R={}))})});var Je=E(Ht=>{"use strict";Object.defineProperty(Ht,"__esModule",{value:!0});Ht.ProtocolNotificationType=Ht.ProtocolNotificationType0=Ht.ProtocolRequestType=Ht.ProtocolRequestType0=Ht.RegistrationType=Ht.MessageDirection=void 0;var ti=Er(),ug;(function(n){n.clientToServer="clientToServer",n.serverToClient="serverToClient",n.both="both"})(ug||(Ht.MessageDirection=ug={}));var du=class{constructor(e){this.method=e}};Ht.RegistrationType=du;var fu=class extends ti.RequestType0{constructor(e){super(e)}};Ht.ProtocolRequestType0=fu;var pu=class extends ti.RequestType{constructor(e){super(e,ti.ParameterStructures.byName)}};Ht.ProtocolRequestType=pu;var hu=class extends ti.NotificationType0{constructor(e){super(e)}};Ht.ProtocolNotificationType0=hu;var gu=class extends ti.NotificationType{constructor(e){super(e,ti.ParameterStructures.byName)}};Ht.ProtocolNotificationType=gu});var as=E(lt=>{"use strict";Object.defineProperty(lt,"__esModule",{value:!0});lt.objectLiteral=lt.typedArray=lt.stringArray=lt.array=lt.func=lt.error=lt.number=lt.string=lt.boolean=void 0;function n_(n){return n===!0||n===!1}lt.boolean=n_;function lg(n){return typeof n=="string"||n instanceof String}lt.string=lg;function r_(n){return typeof n=="number"||n instanceof Number}lt.number=r_;function i_(n){return n instanceof Error}lt.error=i_;function o_(n){return typeof n=="function"}lt.func=o_;function dg(n){return Array.isArray(n)}lt.array=dg;function s_(n){return dg(n)&&n.every(e=>lg(e))}lt.stringArray=s_;function a_(n,e){return Array.isArray(n)&&n.every(e)}lt.typedArray=a_;function c_(n){return n!==null&&typeof n=="object"}lt.objectLiteral=c_});var hg=E(cs=>{"use strict";Object.defineProperty(cs,"__esModule",{value:!0});cs.ImplementationRequest=void 0;var fg=Je(),pg;(function(n){n.method="textDocument/implementation",n.messageDirection=fg.MessageDirection.clientToServer,n.type=new fg.ProtocolRequestType(n.method)})(pg||(cs.ImplementationRequest=pg={}))});var vg=E(us=>{"use strict";Object.defineProperty(us,"__esModule",{value:!0});us.TypeDefinitionRequest=void 0;var gg=Je(),mg;(function(n){n.method="textDocument/typeDefinition",n.messageDirection=gg.MessageDirection.clientToServer,n.type=new gg.ProtocolRequestType(n.method)})(mg||(us.TypeDefinitionRequest=mg={}))});var wg=E(ni=>{"use strict";Object.defineProperty(ni,"__esModule",{value:!0});ni.DidChangeWorkspaceFoldersNotification=ni.WorkspaceFoldersRequest=void 0;var ls=Je(),yg;(function(n){n.method="workspace/workspaceFolders",n.messageDirection=ls.MessageDirection.serverToClient,n.type=new ls.ProtocolRequestType0(n.method)})(yg||(ni.WorkspaceFoldersRequest=yg={}));var bg;(function(n){n.method="workspace/didChangeWorkspaceFolders",n.messageDirection=ls.MessageDirection.clientToServer,n.type=new ls.ProtocolNotificationType(n.method)})(bg||(ni.DidChangeWorkspaceFoldersNotification=bg={}))});var Sg=E(ds=>{"use strict";Object.defineProperty(ds,"__esModule",{value:!0});ds.ConfigurationRequest=void 0;var Cg=Je(),Dg;(function(n){n.method="workspace/configuration",n.messageDirection=Cg.MessageDirection.serverToClient,n.type=new Cg.ProtocolRequestType(n.method)})(Dg||(ds.ConfigurationRequest=Dg={}))});var Rg=E(ri=>{"use strict";Object.defineProperty(ri,"__esModule",{value:!0});ri.ColorPresentationRequest=ri.DocumentColorRequest=void 0;var fs=Je(),_g;(function(n){n.method="textDocument/documentColor",n.messageDirection=fs.MessageDirection.clientToServer,n.type=new fs.ProtocolRequestType(n.method)})(_g||(ri.DocumentColorRequest=_g={}));var Tg;(function(n){n.method="textDocument/colorPresentation",n.messageDirection=fs.MessageDirection.clientToServer,n.type=new fs.ProtocolRequestType(n.method)})(Tg||(ri.ColorPresentationRequest=Tg={}))});var Eg=E(ii=>{"use strict";Object.defineProperty(ii,"__esModule",{value:!0});ii.FoldingRangeRefreshRequest=ii.FoldingRangeRequest=void 0;var ps=Je(),Pg;(function(n){n.method="textDocument/foldingRange",n.messageDirection=ps.MessageDirection.clientToServer,n.type=new ps.ProtocolRequestType(n.method)})(Pg||(ii.FoldingRangeRequest=Pg={}));var kg;(function(n){n.method="workspace/foldingRange/refresh",n.messageDirection=ps.MessageDirection.serverToClient,n.type=new ps.ProtocolRequestType0(n.method)})(kg||(ii.FoldingRangeRefreshRequest=kg={}))});var Ig=E(hs=>{"use strict";Object.defineProperty(hs,"__esModule",{value:!0});hs.DeclarationRequest=void 0;var xg=Je(),qg;(function(n){n.method="textDocument/declaration",n.messageDirection=xg.MessageDirection.clientToServer,n.type=new xg.ProtocolRequestType(n.method)})(qg||(hs.DeclarationRequest=qg={}))});var Mg=E(gs=>{"use strict";Object.defineProperty(gs,"__esModule",{value:!0});gs.SelectionRangeRequest=void 0;var Fg=Je(),Og;(function(n){n.method="textDocument/selectionRange",n.messageDirection=Fg.MessageDirection.clientToServer,n.type=new Fg.ProtocolRequestType(n.method)})(Og||(gs.SelectionRangeRequest=Og={}))});var jg=E(pr=>{"use strict";Object.defineProperty(pr,"__esModule",{value:!0});pr.WorkDoneProgressCancelNotification=pr.WorkDoneProgressCreateRequest=pr.WorkDoneProgress=void 0;var u_=Er(),ms=Je(),Ag;(function(n){n.type=new u_.ProgressType;function e(t){return t===n.type}n.is=e})(Ag||(pr.WorkDoneProgress=Ag={}));var Lg;(function(n){n.method="window/workDoneProgress/create",n.messageDirection=ms.MessageDirection.serverToClient,n.type=new ms.ProtocolRequestType(n.method)})(Lg||(pr.WorkDoneProgressCreateRequest=Lg={}));var Ng;(function(n){n.method="window/workDoneProgress/cancel",n.messageDirection=ms.MessageDirection.clientToServer,n.type=new ms.ProtocolNotificationType(n.method)})(Ng||(pr.WorkDoneProgressCancelNotification=Ng={}))});var Wg=E(hr=>{"use strict";Object.defineProperty(hr,"__esModule",{value:!0});hr.CallHierarchyOutgoingCallsRequest=hr.CallHierarchyIncomingCallsRequest=hr.CallHierarchyPrepareRequest=void 0;var oi=Je(),$g;(function(n){n.method="textDocument/prepareCallHierarchy",n.messageDirection=oi.MessageDirection.clientToServer,n.type=new oi.ProtocolRequestType(n.method)})($g||(hr.CallHierarchyPrepareRequest=$g={}));var Ug;(function(n){n.method="callHierarchy/incomingCalls",n.messageDirection=oi.MessageDirection.clientToServer,n.type=new oi.ProtocolRequestType(n.method)})(Ug||(hr.CallHierarchyIncomingCallsRequest=Ug={}));var Hg;(function(n){n.method="callHierarchy/outgoingCalls",n.messageDirection=oi.MessageDirection.clientToServer,n.type=new oi.ProtocolRequestType(n.method)})(Hg||(hr.CallHierarchyOutgoingCallsRequest=Hg={}))});var Jg=E(Wt=>{"use strict";Object.defineProperty(Wt,"__esModule",{value:!0});Wt.SemanticTokensRefreshRequest=Wt.SemanticTokensRangeRequest=Wt.SemanticTokensDeltaRequest=Wt.SemanticTokensRequest=Wt.SemanticTokensRegistrationType=Wt.TokenFormat=void 0;var Xn=Je(),Kg;(function(n){n.Relative="relative"})(Kg||(Wt.TokenFormat=Kg={}));var ji;(function(n){n.method="textDocument/semanticTokens",n.type=new Xn.RegistrationType(n.method)})(ji||(Wt.SemanticTokensRegistrationType=ji={}));var Vg;(function(n){n.method="textDocument/semanticTokens/full",n.messageDirection=Xn.MessageDirection.clientToServer,n.type=new Xn.ProtocolRequestType(n.method),n.registrationMethod=ji.method})(Vg||(Wt.SemanticTokensRequest=Vg={}));var zg;(function(n){n.method="textDocument/semanticTokens/full/delta",n.messageDirection=Xn.MessageDirection.clientToServer,n.type=new Xn.ProtocolRequestType(n.method),n.registrationMethod=ji.method})(zg||(Wt.SemanticTokensDeltaRequest=zg={}));var Bg;(function(n){n.method="textDocument/semanticTokens/range",n.messageDirection=Xn.MessageDirection.clientToServer,n.type=new Xn.ProtocolRequestType(n.method),n.registrationMethod=ji.method})(Bg||(Wt.SemanticTokensRangeRequest=Bg={}));var Gg;(function(n){n.method="workspace/semanticTokens/refresh",n.messageDirection=Xn.MessageDirection.serverToClient,n.type=new Xn.ProtocolRequestType0(n.method)})(Gg||(Wt.SemanticTokensRefreshRequest=Gg={}))});var Yg=E(vs=>{"use strict";Object.defineProperty(vs,"__esModule",{value:!0});vs.ShowDocumentRequest=void 0;var Xg=Je(),Qg;(function(n){n.method="window/showDocument",n.messageDirection=Xg.MessageDirection.serverToClient,n.type=new Xg.ProtocolRequestType(n.method)})(Qg||(vs.ShowDocumentRequest=Qg={}))});var tm=E(ys=>{"use strict";Object.defineProperty(ys,"__esModule",{value:!0});ys.LinkedEditingRangeRequest=void 0;var Zg=Je(),em;(function(n){n.method="textDocument/linkedEditingRange",n.messageDirection=Zg.MessageDirection.clientToServer,n.type=new Zg.ProtocolRequestType(n.method)})(em||(ys.LinkedEditingRangeRequest=em={}))});var um=E(Et=>{"use strict";Object.defineProperty(Et,"__esModule",{value:!0});Et.WillDeleteFilesRequest=Et.DidDeleteFilesNotification=Et.DidRenameFilesNotification=Et.WillRenameFilesRequest=Et.DidCreateFilesNotification=Et.WillCreateFilesRequest=Et.FileOperationPatternKind=void 0;var ln=Je(),nm;(function(n){n.file="file",n.folder="folder"})(nm||(Et.FileOperationPatternKind=nm={}));var rm;(function(n){n.method="workspace/willCreateFiles",n.messageDirection=ln.MessageDirection.clientToServer,n.type=new ln.ProtocolRequestType(n.method)})(rm||(Et.WillCreateFilesRequest=rm={}));var im;(function(n){n.method="workspace/didCreateFiles",n.messageDirection=ln.MessageDirection.clientToServer,n.type=new ln.ProtocolNotificationType(n.method)})(im||(Et.DidCreateFilesNotification=im={}));var om;(function(n){n.method="workspace/willRenameFiles",n.messageDirection=ln.MessageDirection.clientToServer,n.type=new ln.ProtocolRequestType(n.method)})(om||(Et.WillRenameFilesRequest=om={}));var sm;(function(n){n.method="workspace/didRenameFiles",n.messageDirection=ln.MessageDirection.clientToServer,n.type=new ln.ProtocolNotificationType(n.method)})(sm||(Et.DidRenameFilesNotification=sm={}));var am;(function(n){n.method="workspace/didDeleteFiles",n.messageDirection=ln.MessageDirection.clientToServer,n.type=new ln.ProtocolNotificationType(n.method)})(am||(Et.DidDeleteFilesNotification=am={}));var cm;(function(n){n.method="workspace/willDeleteFiles",n.messageDirection=ln.MessageDirection.clientToServer,n.type=new ln.ProtocolRequestType(n.method)})(cm||(Et.WillDeleteFilesRequest=cm={}))});var hm=E(gr=>{"use strict";Object.defineProperty(gr,"__esModule",{value:!0});gr.MonikerRequest=gr.MonikerKind=gr.UniquenessLevel=void 0;var lm=Je(),dm;(function(n){n.document="document",n.project="project",n.group="group",n.scheme="scheme",n.global="global"})(dm||(gr.UniquenessLevel=dm={}));var fm;(function(n){n.$import="import",n.$export="export",n.local="local"})(fm||(gr.MonikerKind=fm={}));var pm;(function(n){n.method="textDocument/moniker",n.messageDirection=lm.MessageDirection.clientToServer,n.type=new lm.ProtocolRequestType(n.method)})(pm||(gr.MonikerRequest=pm={}))});var ym=E(mr=>{"use strict";Object.defineProperty(mr,"__esModule",{value:!0});mr.TypeHierarchySubtypesRequest=mr.TypeHierarchySupertypesRequest=mr.TypeHierarchyPrepareRequest=void 0;var si=Je(),gm;(function(n){n.method="textDocument/prepareTypeHierarchy",n.messageDirection=si.MessageDirection.clientToServer,n.type=new si.ProtocolRequestType(n.method)})(gm||(mr.TypeHierarchyPrepareRequest=gm={}));var mm;(function(n){n.method="typeHierarchy/supertypes",n.messageDirection=si.MessageDirection.clientToServer,n.type=new si.ProtocolRequestType(n.method)})(mm||(mr.TypeHierarchySupertypesRequest=mm={}));var vm;(function(n){n.method="typeHierarchy/subtypes",n.messageDirection=si.MessageDirection.clientToServer,n.type=new si.ProtocolRequestType(n.method)})(vm||(mr.TypeHierarchySubtypesRequest=vm={}))});var Cm=E(ai=>{"use strict";Object.defineProperty(ai,"__esModule",{value:!0});ai.InlineValueRefreshRequest=ai.InlineValueRequest=void 0;var bs=Je(),bm;(function(n){n.method="textDocument/inlineValue",n.messageDirection=bs.MessageDirection.clientToServer,n.type=new bs.ProtocolRequestType(n.method)})(bm||(ai.InlineValueRequest=bm={}));var wm;(function(n){n.method="workspace/inlineValue/refresh",n.messageDirection=bs.MessageDirection.serverToClient,n.type=new bs.ProtocolRequestType0(n.method)})(wm||(ai.InlineValueRefreshRequest=wm={}))});var Tm=E(vr=>{"use strict";Object.defineProperty(vr,"__esModule",{value:!0});vr.InlayHintRefreshRequest=vr.InlayHintResolveRequest=vr.InlayHintRequest=void 0;var ci=Je(),Dm;(function(n){n.method="textDocument/inlayHint",n.messageDirection=ci.MessageDirection.clientToServer,n.type=new ci.ProtocolRequestType(n.method)})(Dm||(vr.InlayHintRequest=Dm={}));var Sm;(function(n){n.method="inlayHint/resolve",n.messageDirection=ci.MessageDirection.clientToServer,n.type=new ci.ProtocolRequestType(n.method)})(Sm||(vr.InlayHintResolveRequest=Sm={}));var _m;(function(n){n.method="workspace/inlayHint/refresh",n.messageDirection=ci.MessageDirection.serverToClient,n.type=new ci.ProtocolRequestType0(n.method)})(_m||(vr.InlayHintRefreshRequest=_m={}))});var Im=E(dn=>{"use strict";Object.defineProperty(dn,"__esModule",{value:!0});dn.DiagnosticRefreshRequest=dn.WorkspaceDiagnosticRequest=dn.DocumentDiagnosticRequest=dn.DocumentDiagnosticReportKind=dn.DiagnosticServerCancellationData=void 0;var qm=Er(),l_=as(),ui=Je(),Rm;(function(n){function e(t){let r=t;return r&&l_.boolean(r.retriggerRequest)}n.is=e})(Rm||(dn.DiagnosticServerCancellationData=Rm={}));var Pm;(function(n){n.Full="full",n.Unchanged="unchanged"})(Pm||(dn.DocumentDiagnosticReportKind=Pm={}));var km;(function(n){n.method="textDocument/diagnostic",n.messageDirection=ui.MessageDirection.clientToServer,n.type=new ui.ProtocolRequestType(n.method),n.partialResult=new qm.ProgressType})(km||(dn.DocumentDiagnosticRequest=km={}));var Em;(function(n){n.method="workspace/diagnostic",n.messageDirection=ui.MessageDirection.clientToServer,n.type=new ui.ProtocolRequestType(n.method),n.partialResult=new qm.ProgressType})(Em||(dn.WorkspaceDiagnosticRequest=Em={}));var xm;(function(n){n.method="workspace/diagnostic/refresh",n.messageDirection=ui.MessageDirection.serverToClient,n.type=new ui.ProtocolRequestType0(n.method)})(xm||(dn.DiagnosticRefreshRequest=xm={}))});var jm=E(it=>{"use strict";Object.defineProperty(it,"__esModule",{value:!0});it.DidCloseNotebookDocumentNotification=it.DidSaveNotebookDocumentNotification=it.DidChangeNotebookDocumentNotification=it.NotebookCellArrayChange=it.DidOpenNotebookDocumentNotification=it.NotebookDocumentSyncRegistrationType=it.NotebookDocument=it.NotebookCell=it.ExecutionSummary=it.NotebookCellKind=void 0;var $i=ss(),_n=as(),$n=Je(),mu;(function(n){n.Markup=1,n.Code=2;function e(t){return t===1||t===2}n.is=e})(mu||(it.NotebookCellKind=mu={}));var vu;(function(n){function e(i,o){let s={executionOrder:i};return(o===!0||o===!1)&&(s.success=o),s}n.create=e;function t(i){let o=i;return _n.objectLiteral(o)&&$i.uinteger.is(o.executionOrder)&&(o.success===void 0||_n.boolean(o.success))}n.is=t;function r(i,o){return i===o?!0:i==null||o===null||o===void 0?!1:i.executionOrder===o.executionOrder&&i.success===o.success}n.equals=r})(vu||(it.ExecutionSummary=vu={}));var ws;(function(n){function e(o,s){return{kind:o,document:s}}n.create=e;function t(o){let s=o;return _n.objectLiteral(s)&&mu.is(s.kind)&&$i.DocumentUri.is(s.document)&&(s.metadata===void 0||_n.objectLiteral(s.metadata))}n.is=t;function r(o,s){let a=new Set;return o.document!==s.document&&a.add("document"),o.kind!==s.kind&&a.add("kind"),o.executionSummary!==s.executionSummary&&a.add("executionSummary"),(o.metadata!==void 0||s.metadata!==void 0)&&!i(o.metadata,s.metadata)&&a.add("metadata"),(o.executionSummary!==void 0||s.executionSummary!==void 0)&&!vu.equals(o.executionSummary,s.executionSummary)&&a.add("executionSummary"),a}n.diff=r;function i(o,s){if(o===s)return!0;if(o==null||s===null||s===void 0||typeof o!=typeof s||typeof o!="object")return!1;let a=Array.isArray(o),c=Array.isArray(s);if(a!==c)return!1;if(a&&c){if(o.length!==s.length)return!1;for(let u=0;u<o.length;u++)if(!i(o[u],s[u]))return!1}if(_n.objectLiteral(o)&&_n.objectLiteral(s)){let u=Object.keys(o),d=Object.keys(s);if(u.length!==d.length||(u.sort(),d.sort(),!i(u,d)))return!1;for(let g=0;g<u.length;g++){let m=u[g];if(!i(o[m],s[m]))return!1}}return!0}})(ws||(it.NotebookCell=ws={}));var Fm;(function(n){function e(r,i,o,s){return{uri:r,notebookType:i,version:o,cells:s}}n.create=e;function t(r){let i=r;return _n.objectLiteral(i)&&_n.string(i.uri)&&$i.integer.is(i.version)&&_n.typedArray(i.cells,ws.is)}n.is=t})(Fm||(it.NotebookDocument=Fm={}));var li;(function(n){n.method="notebookDocument/sync",n.messageDirection=$n.MessageDirection.clientToServer,n.type=new $n.RegistrationType(n.method)})(li||(it.NotebookDocumentSyncRegistrationType=li={}));var Om;(function(n){n.method="notebookDocument/didOpen",n.messageDirection=$n.MessageDirection.clientToServer,n.type=new $n.ProtocolNotificationType(n.method),n.registrationMethod=li.method})(Om||(it.DidOpenNotebookDocumentNotification=Om={}));var Mm;(function(n){function e(r){let i=r;return _n.objectLiteral(i)&&$i.uinteger.is(i.start)&&$i.uinteger.is(i.deleteCount)&&(i.cells===void 0||_n.typedArray(i.cells,ws.is))}n.is=e;function t(r,i,o){let s={start:r,deleteCount:i};return o!==void 0&&(s.cells=o),s}n.create=t})(Mm||(it.NotebookCellArrayChange=Mm={}));var Am;(function(n){n.method="notebookDocument/didChange",n.messageDirection=$n.MessageDirection.clientToServer,n.type=new $n.ProtocolNotificationType(n.method),n.registrationMethod=li.method})(Am||(it.DidChangeNotebookDocumentNotification=Am={}));var Lm;(function(n){n.method="notebookDocument/didSave",n.messageDirection=$n.MessageDirection.clientToServer,n.type=new $n.ProtocolNotificationType(n.method),n.registrationMethod=li.method})(Lm||(it.DidSaveNotebookDocumentNotification=Lm={}));var Nm;(function(n){n.method="notebookDocument/didClose",n.messageDirection=$n.MessageDirection.clientToServer,n.type=new $n.ProtocolNotificationType(n.method),n.registrationMethod=li.method})(Nm||(it.DidCloseNotebookDocumentNotification=Nm={}))});var Hm=E(Cs=>{"use strict";Object.defineProperty(Cs,"__esModule",{value:!0});Cs.InlineCompletionRequest=void 0;var $m=Je(),Um;(function(n){n.method="textDocument/inlineCompletion",n.messageDirection=$m.MessageDirection.clientToServer,n.type=new $m.ProtocolRequestType(n.method)})(Um||(Cs.InlineCompletionRequest=Um={}))});var ty=E(w=>{"use strict";Object.defineProperty(w,"__esModule",{value:!0});w.WorkspaceSymbolRequest=w.CodeActionResolveRequest=w.CodeActionRequest=w.DocumentSymbolRequest=w.DocumentHighlightRequest=w.ReferencesRequest=w.DefinitionRequest=w.SignatureHelpRequest=w.SignatureHelpTriggerKind=w.HoverRequest=w.CompletionResolveRequest=w.CompletionRequest=w.CompletionTriggerKind=w.PublishDiagnosticsNotification=w.WatchKind=w.RelativePattern=w.FileChangeType=w.DidChangeWatchedFilesNotification=w.WillSaveTextDocumentWaitUntilRequest=w.WillSaveTextDocumentNotification=w.TextDocumentSaveReason=w.DidSaveTextDocumentNotification=w.DidCloseTextDocumentNotification=w.DidChangeTextDocumentNotification=w.TextDocumentContentChangeEvent=w.DidOpenTextDocumentNotification=w.TextDocumentSyncKind=w.TelemetryEventNotification=w.LogMessageNotification=w.ShowMessageRequest=w.ShowMessageNotification=w.MessageType=w.DidChangeConfigurationNotification=w.ExitNotification=w.ShutdownRequest=w.InitializedNotification=w.InitializeErrorCodes=w.InitializeRequest=w.WorkDoneProgressOptions=w.TextDocumentRegistrationOptions=w.StaticRegistrationOptions=w.PositionEncodingKind=w.FailureHandlingKind=w.ResourceOperationKind=w.UnregistrationRequest=w.RegistrationRequest=w.DocumentSelector=w.NotebookCellTextDocumentFilter=w.NotebookDocumentFilter=w.TextDocumentFilter=void 0;w.MonikerRequest=w.MonikerKind=w.UniquenessLevel=w.WillDeleteFilesRequest=w.DidDeleteFilesNotification=w.WillRenameFilesRequest=w.DidRenameFilesNotification=w.WillCreateFilesRequest=w.DidCreateFilesNotification=w.FileOperationPatternKind=w.LinkedEditingRangeRequest=w.ShowDocumentRequest=w.SemanticTokensRegistrationType=w.SemanticTokensRefreshRequest=w.SemanticTokensRangeRequest=w.SemanticTokensDeltaRequest=w.SemanticTokensRequest=w.TokenFormat=w.CallHierarchyPrepareRequest=w.CallHierarchyOutgoingCallsRequest=w.CallHierarchyIncomingCallsRequest=w.WorkDoneProgressCancelNotification=w.WorkDoneProgressCreateRequest=w.WorkDoneProgress=w.SelectionRangeRequest=w.DeclarationRequest=w.FoldingRangeRefreshRequest=w.FoldingRangeRequest=w.ColorPresentationRequest=w.DocumentColorRequest=w.ConfigurationRequest=w.DidChangeWorkspaceFoldersNotification=w.WorkspaceFoldersRequest=w.TypeDefinitionRequest=w.ImplementationRequest=w.ApplyWorkspaceEditRequest=w.ExecuteCommandRequest=w.PrepareRenameRequest=w.RenameRequest=w.PrepareSupportDefaultBehavior=w.DocumentOnTypeFormattingRequest=w.DocumentRangesFormattingRequest=w.DocumentRangeFormattingRequest=w.DocumentFormattingRequest=w.DocumentLinkResolveRequest=w.DocumentLinkRequest=w.CodeLensRefreshRequest=w.CodeLensResolveRequest=w.CodeLensRequest=w.WorkspaceSymbolResolveRequest=void 0;w.InlineCompletionRequest=w.DidCloseNotebookDocumentNotification=w.DidSaveNotebookDocumentNotification=w.DidChangeNotebookDocumentNotification=w.NotebookCellArrayChange=w.DidOpenNotebookDocumentNotification=w.NotebookDocumentSyncRegistrationType=w.NotebookDocument=w.NotebookCell=w.ExecutionSummary=w.NotebookCellKind=w.DiagnosticRefreshRequest=w.WorkspaceDiagnosticRequest=w.DocumentDiagnosticRequest=w.DocumentDiagnosticReportKind=w.DiagnosticServerCancellationData=w.InlayHintRefreshRequest=w.InlayHintResolveRequest=w.InlayHintRequest=w.InlineValueRefreshRequest=w.InlineValueRequest=w.TypeHierarchySupertypesRequest=w.TypeHierarchySubtypesRequest=w.TypeHierarchyPrepareRequest=void 0;var H=Je(),Wm=ss(),vt=as(),d_=hg();Object.defineProperty(w,"ImplementationRequest",{enumerable:!0,get:function(){return d_.ImplementationRequest}});var f_=vg();Object.defineProperty(w,"TypeDefinitionRequest",{enumerable:!0,get:function(){return f_.TypeDefinitionRequest}});var Qv=wg();Object.defineProperty(w,"WorkspaceFoldersRequest",{enumerable:!0,get:function(){return Qv.WorkspaceFoldersRequest}});Object.defineProperty(w,"DidChangeWorkspaceFoldersNotification",{enumerable:!0,get:function(){return Qv.DidChangeWorkspaceFoldersNotification}});var p_=Sg();Object.defineProperty(w,"ConfigurationRequest",{enumerable:!0,get:function(){return p_.ConfigurationRequest}});var Yv=Rg();Object.defineProperty(w,"DocumentColorRequest",{enumerable:!0,get:function(){return Yv.DocumentColorRequest}});Object.defineProperty(w,"ColorPresentationRequest",{enumerable:!0,get:function(){return Yv.ColorPresentationRequest}});var Zv=Eg();Object.defineProperty(w,"FoldingRangeRequest",{enumerable:!0,get:function(){return Zv.FoldingRangeRequest}});Object.defineProperty(w,"FoldingRangeRefreshRequest",{enumerable:!0,get:function(){return Zv.FoldingRangeRefreshRequest}});var h_=Ig();Object.defineProperty(w,"DeclarationRequest",{enumerable:!0,get:function(){return h_.DeclarationRequest}});var g_=Mg();Object.defineProperty(w,"SelectionRangeRequest",{enumerable:!0,get:function(){return g_.SelectionRangeRequest}});var Du=jg();Object.defineProperty(w,"WorkDoneProgress",{enumerable:!0,get:function(){return Du.WorkDoneProgress}});Object.defineProperty(w,"WorkDoneProgressCreateRequest",{enumerable:!0,get:function(){return Du.WorkDoneProgressCreateRequest}});Object.defineProperty(w,"WorkDoneProgressCancelNotification",{enumerable:!0,get:function(){return Du.WorkDoneProgressCancelNotification}});var Su=Wg();Object.defineProperty(w,"CallHierarchyIncomingCallsRequest",{enumerable:!0,get:function(){return Su.CallHierarchyIncomingCallsRequest}});Object.defineProperty(w,"CallHierarchyOutgoingCallsRequest",{enumerable:!0,get:function(){return Su.CallHierarchyOutgoingCallsRequest}});Object.defineProperty(w,"CallHierarchyPrepareRequest",{enumerable:!0,get:function(){return Su.CallHierarchyPrepareRequest}});var di=Jg();Object.defineProperty(w,"TokenFormat",{enumerable:!0,get:function(){return di.TokenFormat}});Object.defineProperty(w,"SemanticTokensRequest",{enumerable:!0,get:function(){return di.SemanticTokensRequest}});Object.defineProperty(w,"SemanticTokensDeltaRequest",{enumerable:!0,get:function(){return di.SemanticTokensDeltaRequest}});Object.defineProperty(w,"SemanticTokensRangeRequest",{enumerable:!0,get:function(){return di.SemanticTokensRangeRequest}});Object.defineProperty(w,"SemanticTokensRefreshRequest",{enumerable:!0,get:function(){return di.SemanticTokensRefreshRequest}});Object.defineProperty(w,"SemanticTokensRegistrationType",{enumerable:!0,get:function(){return di.SemanticTokensRegistrationType}});var m_=Yg();Object.defineProperty(w,"ShowDocumentRequest",{enumerable:!0,get:function(){return m_.ShowDocumentRequest}});var v_=tm();Object.defineProperty(w,"LinkedEditingRangeRequest",{enumerable:!0,get:function(){return v_.LinkedEditingRangeRequest}});var xr=um();Object.defineProperty(w,"FileOperationPatternKind",{enumerable:!0,get:function(){return xr.FileOperationPatternKind}});Object.defineProperty(w,"DidCreateFilesNotification",{enumerable:!0,get:function(){return xr.DidCreateFilesNotification}});Object.defineProperty(w,"WillCreateFilesRequest",{enumerable:!0,get:function(){return xr.WillCreateFilesRequest}});Object.defineProperty(w,"DidRenameFilesNotification",{enumerable:!0,get:function(){return xr.DidRenameFilesNotification}});Object.defineProperty(w,"WillRenameFilesRequest",{enumerable:!0,get:function(){return xr.WillRenameFilesRequest}});Object.defineProperty(w,"DidDeleteFilesNotification",{enumerable:!0,get:function(){return xr.DidDeleteFilesNotification}});Object.defineProperty(w,"WillDeleteFilesRequest",{enumerable:!0,get:function(){return xr.WillDeleteFilesRequest}});var _u=hm();Object.defineProperty(w,"UniquenessLevel",{enumerable:!0,get:function(){return _u.UniquenessLevel}});Object.defineProperty(w,"MonikerKind",{enumerable:!0,get:function(){return _u.MonikerKind}});Object.defineProperty(w,"MonikerRequest",{enumerable:!0,get:function(){return _u.MonikerRequest}});var Tu=ym();Object.defineProperty(w,"TypeHierarchyPrepareRequest",{enumerable:!0,get:function(){return Tu.TypeHierarchyPrepareRequest}});Object.defineProperty(w,"TypeHierarchySubtypesRequest",{enumerable:!0,get:function(){return Tu.TypeHierarchySubtypesRequest}});Object.defineProperty(w,"TypeHierarchySupertypesRequest",{enumerable:!0,get:function(){return Tu.TypeHierarchySupertypesRequest}});var ey=Cm();Object.defineProperty(w,"InlineValueRequest",{enumerable:!0,get:function(){return ey.InlineValueRequest}});Object.defineProperty(w,"InlineValueRefreshRequest",{enumerable:!0,get:function(){return ey.InlineValueRefreshRequest}});var Ru=Tm();Object.defineProperty(w,"InlayHintRequest",{enumerable:!0,get:function(){return Ru.InlayHintRequest}});Object.defineProperty(w,"InlayHintResolveRequest",{enumerable:!0,get:function(){return Ru.InlayHintResolveRequest}});Object.defineProperty(w,"InlayHintRefreshRequest",{enumerable:!0,get:function(){return Ru.InlayHintRefreshRequest}});var Ui=Im();Object.defineProperty(w,"DiagnosticServerCancellationData",{enumerable:!0,get:function(){return Ui.DiagnosticServerCancellationData}});Object.defineProperty(w,"DocumentDiagnosticReportKind",{enumerable:!0,get:function(){return Ui.DocumentDiagnosticReportKind}});Object.defineProperty(w,"DocumentDiagnosticRequest",{enumerable:!0,get:function(){return Ui.DocumentDiagnosticRequest}});Object.defineProperty(w,"WorkspaceDiagnosticRequest",{enumerable:!0,get:function(){return Ui.WorkspaceDiagnosticRequest}});Object.defineProperty(w,"DiagnosticRefreshRequest",{enumerable:!0,get:function(){return Ui.DiagnosticRefreshRequest}});var Un=jm();Object.defineProperty(w,"NotebookCellKind",{enumerable:!0,get:function(){return Un.NotebookCellKind}});Object.defineProperty(w,"ExecutionSummary",{enumerable:!0,get:function(){return Un.ExecutionSummary}});Object.defineProperty(w,"NotebookCell",{enumerable:!0,get:function(){return Un.NotebookCell}});Object.defineProperty(w,"NotebookDocument",{enumerable:!0,get:function(){return Un.NotebookDocument}});Object.defineProperty(w,"NotebookDocumentSyncRegistrationType",{enumerable:!0,get:function(){return Un.NotebookDocumentSyncRegistrationType}});Object.defineProperty(w,"DidOpenNotebookDocumentNotification",{enumerable:!0,get:function(){return Un.DidOpenNotebookDocumentNotification}});Object.defineProperty(w,"NotebookCellArrayChange",{enumerable:!0,get:function(){return Un.NotebookCellArrayChange}});Object.defineProperty(w,"DidChangeNotebookDocumentNotification",{enumerable:!0,get:function(){return Un.DidChangeNotebookDocumentNotification}});Object.defineProperty(w,"DidSaveNotebookDocumentNotification",{enumerable:!0,get:function(){return Un.DidSaveNotebookDocumentNotification}});Object.defineProperty(w,"DidCloseNotebookDocumentNotification",{enumerable:!0,get:function(){return Un.DidCloseNotebookDocumentNotification}});var y_=Hm();Object.defineProperty(w,"InlineCompletionRequest",{enumerable:!0,get:function(){return y_.InlineCompletionRequest}});var yu;(function(n){function e(t){let r=t;return vt.string(r)||vt.string(r.language)||vt.string(r.scheme)||vt.string(r.pattern)}n.is=e})(yu||(w.TextDocumentFilter=yu={}));var bu;(function(n){function e(t){let r=t;return vt.objectLiteral(r)&&(vt.string(r.notebookType)||vt.string(r.scheme)||vt.string(r.pattern))}n.is=e})(bu||(w.NotebookDocumentFilter=bu={}));var wu;(function(n){function e(t){let r=t;return vt.objectLiteral(r)&&(vt.string(r.notebook)||bu.is(r.notebook))&&(r.language===void 0||vt.string(r.language))}n.is=e})(wu||(w.NotebookCellTextDocumentFilter=wu={}));var Cu;(function(n){function e(t){if(!Array.isArray(t))return!1;for(let r of t)if(!vt.string(r)&&!yu.is(r)&&!wu.is(r))return!1;return!0}n.is=e})(Cu||(w.DocumentSelector=Cu={}));var Km;(function(n){n.method="client/registerCapability",n.messageDirection=H.MessageDirection.serverToClient,n.type=new H.ProtocolRequestType(n.method)})(Km||(w.RegistrationRequest=Km={}));var Vm;(function(n){n.method="client/unregisterCapability",n.messageDirection=H.MessageDirection.serverToClient,n.type=new H.ProtocolRequestType(n.method)})(Vm||(w.UnregistrationRequest=Vm={}));var zm;(function(n){n.Create="create",n.Rename="rename",n.Delete="delete"})(zm||(w.ResourceOperationKind=zm={}));var Bm;(function(n){n.Abort="abort",n.Transactional="transactional",n.TextOnlyTransactional="textOnlyTransactional",n.Undo="undo"})(Bm||(w.FailureHandlingKind=Bm={}));var Gm;(function(n){n.UTF8="utf-8",n.UTF16="utf-16",n.UTF32="utf-32"})(Gm||(w.PositionEncodingKind=Gm={}));var Jm;(function(n){function e(t){let r=t;return r&&vt.string(r.id)&&r.id.length>0}n.hasId=e})(Jm||(w.StaticRegistrationOptions=Jm={}));var Xm;(function(n){function e(t){let r=t;return r&&(r.documentSelector===null||Cu.is(r.documentSelector))}n.is=e})(Xm||(w.TextDocumentRegistrationOptions=Xm={}));var Qm;(function(n){function e(r){let i=r;return vt.objectLiteral(i)&&(i.workDoneProgress===void 0||vt.boolean(i.workDoneProgress))}n.is=e;function t(r){let i=r;return i&&vt.boolean(i.workDoneProgress)}n.hasWorkDoneProgress=t})(Qm||(w.WorkDoneProgressOptions=Qm={}));var Ym;(function(n){n.method="initialize",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Ym||(w.InitializeRequest=Ym={}));var Zm;(function(n){n.unknownProtocolVersion=1})(Zm||(w.InitializeErrorCodes=Zm={}));var ev;(function(n){n.method="initialized",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolNotificationType(n.method)})(ev||(w.InitializedNotification=ev={}));var tv;(function(n){n.method="shutdown",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType0(n.method)})(tv||(w.ShutdownRequest=tv={}));var nv;(function(n){n.method="exit",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolNotificationType0(n.method)})(nv||(w.ExitNotification=nv={}));var rv;(function(n){n.method="workspace/didChangeConfiguration",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolNotificationType(n.method)})(rv||(w.DidChangeConfigurationNotification=rv={}));var iv;(function(n){n.Error=1,n.Warning=2,n.Info=3,n.Log=4,n.Debug=5})(iv||(w.MessageType=iv={}));var ov;(function(n){n.method="window/showMessage",n.messageDirection=H.MessageDirection.serverToClient,n.type=new H.ProtocolNotificationType(n.method)})(ov||(w.ShowMessageNotification=ov={}));var sv;(function(n){n.method="window/showMessageRequest",n.messageDirection=H.MessageDirection.serverToClient,n.type=new H.ProtocolRequestType(n.method)})(sv||(w.ShowMessageRequest=sv={}));var av;(function(n){n.method="window/logMessage",n.messageDirection=H.MessageDirection.serverToClient,n.type=new H.ProtocolNotificationType(n.method)})(av||(w.LogMessageNotification=av={}));var cv;(function(n){n.method="telemetry/event",n.messageDirection=H.MessageDirection.serverToClient,n.type=new H.ProtocolNotificationType(n.method)})(cv||(w.TelemetryEventNotification=cv={}));var uv;(function(n){n.None=0,n.Full=1,n.Incremental=2})(uv||(w.TextDocumentSyncKind=uv={}));var lv;(function(n){n.method="textDocument/didOpen",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolNotificationType(n.method)})(lv||(w.DidOpenTextDocumentNotification=lv={}));var dv;(function(n){function e(r){let i=r;return i!=null&&typeof i.text=="string"&&i.range!==void 0&&(i.rangeLength===void 0||typeof i.rangeLength=="number")}n.isIncremental=e;function t(r){let i=r;return i!=null&&typeof i.text=="string"&&i.range===void 0&&i.rangeLength===void 0}n.isFull=t})(dv||(w.TextDocumentContentChangeEvent=dv={}));var fv;(function(n){n.method="textDocument/didChange",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolNotificationType(n.method)})(fv||(w.DidChangeTextDocumentNotification=fv={}));var pv;(function(n){n.method="textDocument/didClose",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolNotificationType(n.method)})(pv||(w.DidCloseTextDocumentNotification=pv={}));var hv;(function(n){n.method="textDocument/didSave",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolNotificationType(n.method)})(hv||(w.DidSaveTextDocumentNotification=hv={}));var gv;(function(n){n.Manual=1,n.AfterDelay=2,n.FocusOut=3})(gv||(w.TextDocumentSaveReason=gv={}));var mv;(function(n){n.method="textDocument/willSave",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolNotificationType(n.method)})(mv||(w.WillSaveTextDocumentNotification=mv={}));var vv;(function(n){n.method="textDocument/willSaveWaitUntil",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(vv||(w.WillSaveTextDocumentWaitUntilRequest=vv={}));var yv;(function(n){n.method="workspace/didChangeWatchedFiles",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolNotificationType(n.method)})(yv||(w.DidChangeWatchedFilesNotification=yv={}));var bv;(function(n){n.Created=1,n.Changed=2,n.Deleted=3})(bv||(w.FileChangeType=bv={}));var wv;(function(n){function e(t){let r=t;return vt.objectLiteral(r)&&(Wm.URI.is(r.baseUri)||Wm.WorkspaceFolder.is(r.baseUri))&&vt.string(r.pattern)}n.is=e})(wv||(w.RelativePattern=wv={}));var Cv;(function(n){n.Create=1,n.Change=2,n.Delete=4})(Cv||(w.WatchKind=Cv={}));var Dv;(function(n){n.method="textDocument/publishDiagnostics",n.messageDirection=H.MessageDirection.serverToClient,n.type=new H.ProtocolNotificationType(n.method)})(Dv||(w.PublishDiagnosticsNotification=Dv={}));var Sv;(function(n){n.Invoked=1,n.TriggerCharacter=2,n.TriggerForIncompleteCompletions=3})(Sv||(w.CompletionTriggerKind=Sv={}));var _v;(function(n){n.method="textDocument/completion",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(_v||(w.CompletionRequest=_v={}));var Tv;(function(n){n.method="completionItem/resolve",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Tv||(w.CompletionResolveRequest=Tv={}));var Rv;(function(n){n.method="textDocument/hover",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Rv||(w.HoverRequest=Rv={}));var Pv;(function(n){n.Invoked=1,n.TriggerCharacter=2,n.ContentChange=3})(Pv||(w.SignatureHelpTriggerKind=Pv={}));var kv;(function(n){n.method="textDocument/signatureHelp",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(kv||(w.SignatureHelpRequest=kv={}));var Ev;(function(n){n.method="textDocument/definition",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Ev||(w.DefinitionRequest=Ev={}));var xv;(function(n){n.method="textDocument/references",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(xv||(w.ReferencesRequest=xv={}));var qv;(function(n){n.method="textDocument/documentHighlight",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(qv||(w.DocumentHighlightRequest=qv={}));var Iv;(function(n){n.method="textDocument/documentSymbol",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Iv||(w.DocumentSymbolRequest=Iv={}));var Fv;(function(n){n.method="textDocument/codeAction",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Fv||(w.CodeActionRequest=Fv={}));var Ov;(function(n){n.method="codeAction/resolve",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Ov||(w.CodeActionResolveRequest=Ov={}));var Mv;(function(n){n.method="workspace/symbol",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Mv||(w.WorkspaceSymbolRequest=Mv={}));var Av;(function(n){n.method="workspaceSymbol/resolve",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Av||(w.WorkspaceSymbolResolveRequest=Av={}));var Lv;(function(n){n.method="textDocument/codeLens",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Lv||(w.CodeLensRequest=Lv={}));var Nv;(function(n){n.method="codeLens/resolve",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Nv||(w.CodeLensResolveRequest=Nv={}));var jv;(function(n){n.method="workspace/codeLens/refresh",n.messageDirection=H.MessageDirection.serverToClient,n.type=new H.ProtocolRequestType0(n.method)})(jv||(w.CodeLensRefreshRequest=jv={}));var $v;(function(n){n.method="textDocument/documentLink",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})($v||(w.DocumentLinkRequest=$v={}));var Uv;(function(n){n.method="documentLink/resolve",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Uv||(w.DocumentLinkResolveRequest=Uv={}));var Hv;(function(n){n.method="textDocument/formatting",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Hv||(w.DocumentFormattingRequest=Hv={}));var Wv;(function(n){n.method="textDocument/rangeFormatting",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Wv||(w.DocumentRangeFormattingRequest=Wv={}));var Kv;(function(n){n.method="textDocument/rangesFormatting",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Kv||(w.DocumentRangesFormattingRequest=Kv={}));var Vv;(function(n){n.method="textDocument/onTypeFormatting",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Vv||(w.DocumentOnTypeFormattingRequest=Vv={}));var zv;(function(n){n.Identifier=1})(zv||(w.PrepareSupportDefaultBehavior=zv={}));var Bv;(function(n){n.method="textDocument/rename",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Bv||(w.RenameRequest=Bv={}));var Gv;(function(n){n.method="textDocument/prepareRename",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Gv||(w.PrepareRenameRequest=Gv={}));var Jv;(function(n){n.method="workspace/executeCommand",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Jv||(w.ExecuteCommandRequest=Jv={}));var Xv;(function(n){n.method="workspace/applyEdit",n.messageDirection=H.MessageDirection.serverToClient,n.type=new H.ProtocolRequestType("workspace/applyEdit")})(Xv||(w.ApplyWorkspaceEditRequest=Xv={}))});var ry=E(Ds=>{"use strict";Object.defineProperty(Ds,"__esModule",{value:!0});Ds.createProtocolConnection=void 0;var ny=Er();function b_(n,e,t,r){return ny.ConnectionStrategy.is(r)&&(r={connectionStrategy:r}),(0,ny.createMessageConnection)(n,e,t,r)}Ds.createProtocolConnection=b_});var oy=E(Kt=>{"use strict";var w_=Kt&&Kt.__createBinding||(Object.create?function(n,e,t,r){r===void 0&&(r=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[t]}}),Object.defineProperty(n,r,i)}:function(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]}),Ss=Kt&&Kt.__exportStar||function(n,e){for(var t in n)t!=="default"&&!Object.prototype.hasOwnProperty.call(e,t)&&w_(e,n,t)};Object.defineProperty(Kt,"__esModule",{value:!0});Kt.LSPErrorCodes=Kt.createProtocolConnection=void 0;Ss(Er(),Kt);Ss(ss(),Kt);Ss(Je(),Kt);Ss(ty(),Kt);var C_=ry();Object.defineProperty(Kt,"createProtocolConnection",{enumerable:!0,get:function(){return C_.createProtocolConnection}});var iy;(function(n){n.lspReservedErrorRangeStart=-32899,n.RequestFailed=-32803,n.ServerCancelled=-32802,n.ContentModified=-32801,n.RequestCancelled=-32800,n.lspReservedErrorRangeEnd=-32800})(iy||(Kt.LSPErrorCodes=iy={}))});var fe=E(Hn=>{"use strict";var D_=Hn&&Hn.__createBinding||(Object.create?function(n,e,t,r){r===void 0&&(r=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[t]}}),Object.defineProperty(n,r,i)}:function(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]}),sy=Hn&&Hn.__exportStar||function(n,e){for(var t in n)t!=="default"&&!Object.prototype.hasOwnProperty.call(e,t)&&D_(e,n,t)};Object.defineProperty(Hn,"__esModule",{value:!0});Hn.createProtocolConnection=void 0;var S_=lu();sy(lu(),Hn);sy(oy(),Hn);function __(n,e,t,r){return(0,S_.createMessageConnection)(n,e,t,r)}Hn.createProtocolConnection=__});var _s=E(xt=>{"use strict";Object.defineProperty(xt,"__esModule",{value:!0});xt.forEach=xt.mapAsync=xt.map=xt.clearTestMode=xt.setTestMode=xt.Semaphore=xt.Delayer=void 0;var Wi=fe(),Pu=class{constructor(e){this.defaultDelay=e,this.timeout=void 0,this.completionPromise=void 0,this.onSuccess=void 0,this.task=void 0}trigger(e,t=this.defaultDelay){return this.task=e,t>=0&&this.cancelTimeout(),this.completionPromise||(this.completionPromise=new Promise(r=>{this.onSuccess=r}).then(()=>{this.completionPromise=void 0,this.onSuccess=void 0;var r=this.task();return this.task=void 0,r})),(t>=0||this.timeout===void 0)&&(this.timeout=(0,Wi.RAL)().timer.setTimeout(()=>{this.timeout=void 0,this.onSuccess(void 0)},t>=0?t:this.defaultDelay)),this.completionPromise}forceDelivery(){if(!this.completionPromise)return;this.cancelTimeout();let e=this.task();return this.completionPromise=void 0,this.onSuccess=void 0,this.task=void 0,e}isTriggered(){return this.timeout!==void 0}cancel(){this.cancelTimeout(),this.completionPromise=void 0}cancelTimeout(){this.timeout!==void 0&&(this.timeout.dispose(),this.timeout=void 0)}};xt.Delayer=Pu;var ku=class{constructor(e=1){if(e<=0)throw new Error("Capacity must be greater than 0");this._capacity=e,this._active=0,this._waiting=[]}lock(e){return new Promise((t,r)=>{this._waiting.push({thunk:e,resolve:t,reject:r}),this.runNext()})}get active(){return this._active}runNext(){this._waiting.length===0||this._active===this._capacity||(0,Wi.RAL)().timer.setImmediate(()=>this.doRunNext())}doRunNext(){if(this._waiting.length===0||this._active===this._capacity)return;let e=this._waiting.shift();if(this._active++,this._active>this._capacity)throw new Error("To many thunks active");try{let t=e.thunk();t instanceof Promise?t.then(r=>{this._active--,e.resolve(r),this.runNext()},r=>{this._active--,e.reject(r),this.runNext()}):(this._active--,e.resolve(t),this.runNext())}catch(t){this._active--,e.reject(t),this.runNext()}}};xt.Semaphore=ku;var Eu=!1;function T_(){Eu=!0}xt.setTestMode=T_;function R_(){Eu=!1}xt.clearTestMode=R_;var ay=15,Hi=class{constructor(e=ay){this.yieldAfter=Eu===!0?Math.max(e,2):Math.max(e,ay),this.startTime=Date.now(),this.counter=0,this.total=0,this.counterInterval=1}start(){this.counter=0,this.total=0,this.counterInterval=1,this.startTime=Date.now()}shouldYield(){if(++this.counter>=this.counterInterval){let e=Date.now()-this.startTime,t=Math.max(0,this.yieldAfter-e);if(this.total+=this.counter,this.counter=0,e>=this.yieldAfter||t<=1)return this.counterInterval=1,this.total=0,!0;switch(e){case 0:case 1:this.counterInterval=this.total*2;break}}return!1}};async function P_(n,e,t,r){if(n.length===0)return[];let i=new Array(n.length),o=new Hi(r?.yieldAfter);function s(c){o.start();for(let u=c;u<n.length;u++)if(i[u]=e(n[u]),o.shouldYield())return r?.yieldCallback&&r.yieldCallback(),u+1;return-1}let a=s(0);for(;a!==-1&&!(t!==void 0&&t.isCancellationRequested);)a=await new Promise(c=>{(0,Wi.RAL)().timer.setImmediate(()=>{c(s(a))})});return i}xt.map=P_;async function k_(n,e,t,r){if(n.length===0)return[];let i=new Array(n.length),o=new Hi(r?.yieldAfter);async function s(c){o.start();for(let u=c;u<n.length;u++)if(i[u]=await e(n[u],t),o.shouldYield())return r?.yieldCallback&&r.yieldCallback(),u+1;return-1}let a=await s(0);for(;a!==-1&&!(t!==void 0&&t.isCancellationRequested);)a=await new Promise(c=>{(0,Wi.RAL)().timer.setImmediate(()=>{c(s(a))})});return i}xt.mapAsync=k_;async function E_(n,e,t,r){if(n.length===0)return;let i=new Hi(r?.yieldAfter);function o(a){i.start();for(let c=a;c<n.length;c++)if(e(n[c]),i.shouldYield())return r?.yieldCallback&&r.yieldCallback(),c+1;return-1}let s=o(0);for(;s!==-1&&!(t!==void 0&&t.isCancellationRequested);)s=await new Promise(a=>{(0,Wi.RAL)().timer.setImmediate(()=>{a(o(s))})})}xt.forEach=E_});var Iu=E(qu=>{"use strict";Object.defineProperty(qu,"__esModule",{value:!0});var x_=require("vscode"),xu=class extends x_.CompletionItem{constructor(e){super(e)}};qu.default=xu});var Mu=E(Ou=>{"use strict";Object.defineProperty(Ou,"__esModule",{value:!0});var q_=require("vscode"),Fu=class extends q_.CodeLens{constructor(e){super(e)}};Ou.default=Fu});var Nu=E(Lu=>{"use strict";Object.defineProperty(Lu,"__esModule",{value:!0});var I_=require("vscode"),Au=class extends I_.DocumentLink{constructor(e,t){super(e,t)}};Lu.default=Au});var Uu=E($u=>{"use strict";Object.defineProperty($u,"__esModule",{value:!0});var F_=require("vscode"),ju=class extends F_.CodeAction{constructor(e,t){super(e),this.data=t}};$u.default=ju});var Ku=E(fi=>{"use strict";Object.defineProperty(fi,"__esModule",{value:!0});fi.ProtocolDiagnostic=fi.DiagnosticCode=void 0;var O_=require("vscode"),Hu=un(),cy;(function(n){function e(t){let r=t;return r!=null&&(Hu.number(r.value)||Hu.string(r.value))&&Hu.string(r.target)}n.is=e})(cy||(fi.DiagnosticCode=cy={}));var Wu=class extends O_.Diagnostic{constructor(e,t,r,i){super(e,t,r),this.data=i,this.hasDiagnosticCode=!1}};fi.ProtocolDiagnostic=Wu});var Bu=E(zu=>{"use strict";Object.defineProperty(zu,"__esModule",{value:!0});var M_=require("vscode"),Vu=class extends M_.CallHierarchyItem{constructor(e,t,r,i,o,s,a){super(e,t,r,i,o,s),a!==void 0&&(this.data=a)}};zu.default=Vu});var Xu=E(Ju=>{"use strict";Object.defineProperty(Ju,"__esModule",{value:!0});var A_=require("vscode"),Gu=class extends A_.TypeHierarchyItem{constructor(e,t,r,i,o,s,a){super(e,t,r,i,o,s),a!==void 0&&(this.data=a)}};Ju.default=Gu});var Zu=E(Yu=>{"use strict";Object.defineProperty(Yu,"__esModule",{value:!0});var Ts=require("vscode"),Qu=class extends Ts.SymbolInformation{constructor(e,t,r,i,o){let s=!(i instanceof Ts.Uri);super(e,t,r,s?i:new Ts.Location(i,new Ts.Range(0,0,0,0))),this.hasRange=s,o!==void 0&&(this.data=o)}};Yu.default=Qu});var nl=E(tl=>{"use strict";Object.defineProperty(tl,"__esModule",{value:!0});var L_=require("vscode"),el=class extends L_.InlayHint{constructor(e,t,r){super(e,t,r)}};tl.default=el});var fy=E(Rs=>{"use strict";Object.defineProperty(Rs,"__esModule",{value:!0});Rs.createConverter=void 0;var dt=require("vscode"),he=fe(),qr=un(),uy=_s(),N_=Iu(),j_=Mu(),$_=Nu(),ly=Uu(),dy=Ku(),U_=Bu(),H_=Xu(),W_=Zu(),K_=nl(),rl;(function(n){function e(t){let r=t;return r&&!!r.inserting&&!!r.replacing}n.is=e})(rl||(rl={}));function V_(n){let t=n||(p=>p.toString());function r(p){return t(p)}function i(p){return{uri:t(p.uri)}}function o(p){return{uri:t(p.uri),languageId:p.languageId,version:p.version,text:p.getText()}}function s(p){return{uri:t(p.uri),version:p.version}}function a(p){return{textDocument:o(p)}}function c(p){let x=p;return!!x.document&&!!x.contentChanges}function u(p){let x=p;return!!x.uri&&!!x.version}function d(p,x,Y){if(u(p))return{textDocument:{uri:t(p.uri),version:p.version},contentChanges:[{text:p.getText()}]};if(c(p)){let Fe=x,R=Y;return{textDocument:{uri:t(Fe),version:R},contentChanges:p.contentChanges.map(D=>{let S=D.range;return{range:{start:{line:S.start.line,character:S.start.character},end:{line:S.end.line,character:S.end.character}},rangeLength:D.rangeLength,text:D.text}})}}else throw Error("Unsupported text document change parameter")}function g(p){return{textDocument:i(p)}}function m(p,x=!1){let Y={textDocument:i(p)};return x&&(Y.text=p.getText()),Y}function y(p){switch(p){case dt.TextDocumentSaveReason.Manual:return he.TextDocumentSaveReason.Manual;case dt.TextDocumentSaveReason.AfterDelay:return he.TextDocumentSaveReason.AfterDelay;case dt.TextDocumentSaveReason.FocusOut:return he.TextDocumentSaveReason.FocusOut}return he.TextDocumentSaveReason.Manual}function v(p){return{textDocument:i(p.document),reason:y(p.reason)}}function T(p){return{files:p.files.map(x=>({uri:t(x)}))}}function P(p){return{files:p.files.map(x=>({oldUri:t(x.oldUri),newUri:t(x.newUri)}))}}function q(p){return{files:p.files.map(x=>({uri:t(x)}))}}function A(p){return{files:p.files.map(x=>({uri:t(x)}))}}function L(p){return{files:p.files.map(x=>({oldUri:t(x.oldUri),newUri:t(x.newUri)}))}}function K(p){return{files:p.files.map(x=>({uri:t(x)}))}}function te(p,x){return{textDocument:i(p),position:pe(x)}}function Z(p){switch(p){case dt.CompletionTriggerKind.TriggerCharacter:return he.CompletionTriggerKind.TriggerCharacter;case dt.CompletionTriggerKind.TriggerForIncompleteCompletions:return he.CompletionTriggerKind.TriggerForIncompleteCompletions;default:return he.CompletionTriggerKind.Invoked}}function V(p,x,Y){return{textDocument:i(p),position:pe(x),context:{triggerKind:Z(Y.triggerKind),triggerCharacter:Y.triggerCharacter}}}function ne(p){switch(p){case dt.SignatureHelpTriggerKind.Invoke:return he.SignatureHelpTriggerKind.Invoked;case dt.SignatureHelpTriggerKind.TriggerCharacter:return he.SignatureHelpTriggerKind.TriggerCharacter;case dt.SignatureHelpTriggerKind.ContentChange:return he.SignatureHelpTriggerKind.ContentChange}}function ce(p){return{label:p.label}}function Ne(p){return p.map(ce)}function U(p){return{label:p.label,parameters:Ne(p.parameters)}}function I(p){return p.map(U)}function J(p){return p===void 0?p:{signatures:I(p.signatures),activeSignature:p.activeSignature,activeParameter:p.activeParameter}}function B(p,x,Y){return{textDocument:i(p),position:pe(x),context:{isRetrigger:Y.isRetrigger,triggerCharacter:Y.triggerCharacter,triggerKind:ne(Y.triggerKind),activeSignatureHelp:J(Y.activeSignatureHelp)}}}function pe(p){return{line:p.line,character:p.character}}function ie(p){return p==null?p:{line:p.line>he.uinteger.MAX_VALUE?he.uinteger.MAX_VALUE:p.line,character:p.character>he.uinteger.MAX_VALUE?he.uinteger.MAX_VALUE:p.character}}function oe(p,x){return uy.map(p,ie,x)}function st(p){return p.map(ie)}function be(p){return p==null?p:{start:ie(p.start),end:ie(p.end)}}function Re(p){return p.map(be)}function ct(p){return p==null?p:he.Location.create(r(p.uri),be(p.range))}function Ct(p){switch(p){case dt.DiagnosticSeverity.Error:return he.DiagnosticSeverity.Error;case dt.DiagnosticSeverity.Warning:return he.DiagnosticSeverity.Warning;case dt.DiagnosticSeverity.Information:return he.DiagnosticSeverity.Information;case dt.DiagnosticSeverity.Hint:return he.DiagnosticSeverity.Hint}}function nr(p){if(!p)return;let x=[];for(let Y of p){let Fe=En(Y);Fe!==void 0&&x.push(Fe)}return x.length>0?x:void 0}function En(p){switch(p){case dt.DiagnosticTag.Unnecessary:return he.DiagnosticTag.Unnecessary;case dt.DiagnosticTag.Deprecated:return he.DiagnosticTag.Deprecated;default:return}}function xn(p){return{message:p.message,location:ct(p.location)}}function Kn(p){return p.map(xn)}function rr(p){if(p!=null)return qr.number(p)||qr.string(p)?p:{value:p.value,target:r(p.target)}}function qn(p){let x=he.Diagnostic.create(be(p.range),p.message),Y=p instanceof dy.ProtocolDiagnostic?p:void 0;Y!==void 0&&Y.data!==void 0&&(x.data=Y.data);let Fe=rr(p.code);return dy.DiagnosticCode.is(Fe)?Y!==void 0&&Y.hasDiagnosticCode?x.code=Fe:(x.code=Fe.value,x.codeDescription={href:Fe.target}):x.code=Fe,qr.number(p.severity)&&(x.severity=Ct(p.severity)),Array.isArray(p.tags)&&(x.tags=nr(p.tags)),p.relatedInformation&&(x.relatedInformation=Kn(p.relatedInformation)),p.source&&(x.source=p.source),x}function mn(p,x){return p==null?p:uy.map(p,qn,x)}function vn(p){return p==null?p:p.map(qn)}function In(p,x){switch(p){case"$string":return x;case he.MarkupKind.PlainText:return{kind:p,value:x};case he.MarkupKind.Markdown:return{kind:p,value:x.value};default:return`Unsupported Markup content received. Kind is: ${p}`}}function ut(p){switch(p){case dt.CompletionItemTag.Deprecated:return he.CompletionItemTag.Deprecated}}function Vn(p){if(p===void 0)return p;let x=[];for(let Y of p){let Fe=ut(Y);Fe!==void 0&&x.push(Fe)}return x}function yn(p,x){return x!==void 0?x:p+1}function rn(p,x=!1){let Y,Fe;qr.string(p.label)?Y=p.label:(Y=p.label.label,x&&(p.label.detail!==void 0||p.label.description!==void 0)&&(Fe={detail:p.label.detail,description:p.label.description}));let R={label:Y};Fe!==void 0&&(R.labelDetails=Fe);let h=p instanceof N_.default?p:void 0;p.detail&&(R.detail=p.detail),p.documentation&&(!h||h.documentationFormat==="$string"?R.documentation=p.documentation:R.documentation=In(h.documentationFormat,p.documentation)),p.filterText&&(R.filterText=p.filterText),ir(R,p),qr.number(p.kind)&&(R.kind=yn(p.kind,h&&h.originalItemKind)),p.sortText&&(R.sortText=p.sortText),p.additionalTextEdits&&(R.additionalTextEdits=at(p.additionalTextEdits)),p.commitCharacters&&(R.commitCharacters=p.commitCharacters.slice()),p.command&&(R.command=G(p.command)),(p.preselect===!0||p.preselect===!1)&&(R.preselect=p.preselect);let D=Vn(p.tags);if(h){if(h.data!==void 0&&(R.data=h.data),h.deprecated===!0||h.deprecated===!1){if(h.deprecated===!0&&D!==void 0&&D.length>0){let S=D.indexOf(dt.CompletionItemTag.Deprecated);S!==-1&&D.splice(S,1)}R.deprecated=h.deprecated}h.insertTextMode!==void 0&&(R.insertTextMode=h.insertTextMode)}return D!==void 0&&D.length>0&&(R.tags=D),R.insertTextMode===void 0&&p.keepWhitespace===!0&&(R.insertTextMode=he.InsertTextMode.adjustIndentation),R}function ir(p,x){let Y=he.InsertTextFormat.PlainText,Fe,R;x.textEdit?(Fe=x.textEdit.newText,R=x.textEdit.range):x.insertText instanceof dt.SnippetString?(Y=he.InsertTextFormat.Snippet,Fe=x.insertText.value):Fe=x.insertText,x.range&&(R=x.range),p.insertTextFormat=Y,x.fromEdit&&Fe!==void 0&&R!==void 0?p.textEdit=on(Fe,R):p.insertText=Fe}function on(p,x){return rl.is(x)?he.InsertReplaceEdit.create(p,be(x.inserting),be(x.replacing)):{newText:p,range:be(x)}}function Fn(p){return{range:be(p.range),newText:p.newText}}function at(p){return p==null?p:p.map(Fn)}function Tt(p){return p<=dt.SymbolKind.TypeParameter?p+1:he.SymbolKind.Property}function Dt(p){return p}function Gt(p){return p.map(Dt)}function Lt(p,x,Y){return{textDocument:i(p),position:pe(x),context:{includeDeclaration:Y.includeDeclaration}}}async function On(p,x){let Y=he.CodeAction.create(p.title);if(p instanceof ly.default&&p.data!==void 0&&(Y.data=p.data),p.kind!==void 0&&(Y.kind=C(p.kind)),p.diagnostics!==void 0&&(Y.diagnostics=await mn(p.diagnostics,x)),p.edit!==void 0)throw new Error("VS Code code actions can only be converted to a protocol code action without an edit.");return p.command!==void 0&&(Y.command=G(p.command)),p.isPreferred!==void 0&&(Y.isPreferred=p.isPreferred),p.disabled!==void 0&&(Y.disabled={reason:p.disabled.reason}),Y}function zn(p){let x=he.CodeAction.create(p.title);if(p instanceof ly.default&&p.data!==void 0&&(x.data=p.data),p.kind!==void 0&&(x.kind=C(p.kind)),p.diagnostics!==void 0&&(x.diagnostics=vn(p.diagnostics)),p.edit!==void 0)throw new Error("VS Code code actions can only be converted to a protocol code action without an edit.");return p.command!==void 0&&(x.command=G(p.command)),p.isPreferred!==void 0&&(x.isPreferred=p.isPreferred),p.disabled!==void 0&&(x.disabled={reason:p.disabled.reason}),x}async function bn(p,x){if(p==null)return p;let Y;return p.only&&qr.string(p.only.value)&&(Y=[p.only.value]),he.CodeActionContext.create(await mn(p.diagnostics,x),Y,Ft(p.triggerKind))}function Bn(p){if(p==null)return p;let x;return p.only&&qr.string(p.only.value)&&(x=[p.only.value]),he.CodeActionContext.create(vn(p.diagnostics),x,Ft(p.triggerKind))}function Ft(p){switch(p){case dt.CodeActionTriggerKind.Invoke:return he.CodeActionTriggerKind.Invoked;case dt.CodeActionTriggerKind.Automatic:return he.CodeActionTriggerKind.Automatic;default:return}}function C(p){if(p!=null)return p.value}function O(p){return p==null?p:he.InlineValueContext.create(p.frameId,be(p.stoppedLocation))}function W(p,x,Y){return{context:he.InlineCompletionContext.create(Y.triggerKind,Y.selectedCompletionInfo),textDocument:i(p),position:ie(x)}}function G(p){let x=he.Command.create(p.title,p.command);return p.arguments&&(x.arguments=p.arguments),x}function xe(p){let x=he.CodeLens.create(be(p.range));return p.command&&(x.command=G(p.command)),p instanceof j_.default&&p.data&&(x.data=p.data),x}function Pe(p,x){let Y={tabSize:p.tabSize,insertSpaces:p.insertSpaces};return x.trimTrailingWhitespace&&(Y.trimTrailingWhitespace=!0),x.trimFinalNewlines&&(Y.trimFinalNewlines=!0),x.insertFinalNewline&&(Y.insertFinalNewline=!0),Y}function Ae(p){return{textDocument:i(p)}}function $e(p){return{textDocument:i(p)}}function ye(p){let x=he.DocumentLink.create(be(p.range));p.target&&(x.target=r(p.target)),p.tooltip!==void 0&&(x.tooltip=p.tooltip);let Y=p instanceof $_.default?p:void 0;return Y&&Y.data&&(x.data=Y.data),x}function Ie(p){return{textDocument:i(p)}}function De(p){let x={name:p.name,kind:Tt(p.kind),uri:r(p.uri),range:be(p.range),selectionRange:be(p.selectionRange)};return p.detail!==void 0&&p.detail.length>0&&(x.detail=p.detail),p.tags!==void 0&&(x.tags=Gt(p.tags)),p instanceof U_.default&&p.data!==void 0&&(x.data=p.data),x}function Ue(p){let x={name:p.name,kind:Tt(p.kind),uri:r(p.uri),range:be(p.range),selectionRange:be(p.selectionRange)};return p.detail!==void 0&&p.detail.length>0&&(x.detail=p.detail),p.tags!==void 0&&(x.tags=Gt(p.tags)),p instanceof H_.default&&p.data!==void 0&&(x.data=p.data),x}function nt(p){let x=p instanceof W_.default?{name:p.name,kind:Tt(p.kind),location:p.hasRange?ct(p.location):{uri:t(p.location.uri)},data:p.data}:{name:p.name,kind:Tt(p.kind),location:ct(p.location)};return p.tags!==void 0&&(x.tags=Gt(p.tags)),p.containerName!==""&&(x.containerName=p.containerName),x}function ht(p){let x=typeof p.label=="string"?p.label:p.label.map(or),Y=he.InlayHint.create(ie(p.position),x);return p.kind!==void 0&&(Y.kind=p.kind),p.textEdits!==void 0&&(Y.textEdits=at(p.textEdits)),p.tooltip!==void 0&&(Y.tooltip=sr(p.tooltip)),p.paddingLeft!==void 0&&(Y.paddingLeft=p.paddingLeft),p.paddingRight!==void 0&&(Y.paddingRight=p.paddingRight),p instanceof K_.default&&p.data!==void 0&&(Y.data=p.data),Y}function or(p){let x=he.InlayHintLabelPart.create(p.value);return p.location!==void 0&&(x.location=ct(p.location)),p.command!==void 0&&(x.command=G(p.command)),p.tooltip!==void 0&&(x.tooltip=sr(p.tooltip)),x}function sr(p){return typeof p=="string"?p:{kind:he.MarkupKind.Markdown,value:p.value}}return{asUri:r,asTextDocumentIdentifier:i,asTextDocumentItem:o,asVersionedTextDocumentIdentifier:s,asOpenTextDocumentParams:a,asChangeTextDocumentParams:d,asCloseTextDocumentParams:g,asSaveTextDocumentParams:m,asWillSaveTextDocumentParams:v,asDidCreateFilesParams:T,asDidRenameFilesParams:P,asDidDeleteFilesParams:q,asWillCreateFilesParams:A,asWillRenameFilesParams:L,asWillDeleteFilesParams:K,asTextDocumentPositionParams:te,asCompletionParams:V,asSignatureHelpParams:B,asWorkerPosition:pe,asRange:be,asRanges:Re,asPosition:ie,asPositions:oe,asPositionsSync:st,asLocation:ct,asDiagnosticSeverity:Ct,asDiagnosticTag:En,asDiagnostic:qn,asDiagnostics:mn,asDiagnosticsSync:vn,asCompletionItem:rn,asTextEdit:Fn,asSymbolKind:Tt,asSymbolTag:Dt,asSymbolTags:Gt,asReferenceParams:Lt,asCodeAction:On,asCodeActionSync:zn,asCodeActionContext:bn,asCodeActionContextSync:Bn,asInlineValueContext:O,asCommand:G,asCodeLens:xe,asFormattingOptions:Pe,asDocumentSymbolParams:Ae,asCodeLensParams:$e,asDocumentLink:ye,asDocumentLinkParams:Ie,asCallHierarchyItem:De,asTypeHierarchyItem:Ue,asInlayHint:ht,asWorkspaceSymbol:nt,asInlineCompletionParams:W}}Rs.createConverter=V_});var gy=E(ks=>{"use strict";Object.defineProperty(ks,"__esModule",{value:!0});ks.createConverter=void 0;var z=require("vscode"),ae=fe(),fn=un(),qe=_s(),z_=Iu(),B_=Mu(),G_=Nu(),J_=Uu(),py=Ku(),X_=Bu(),Q_=Xu(),Y_=Zu(),Z_=nl(),hy=fe(),Ps;(function(n){function e(t){let r=t;return r&&fn.string(r.language)&&fn.string(r.value)}n.is=e})(Ps||(Ps={}));function eT(n,e,t){let i=n||(l=>z.Uri.parse(l));function o(l){return i(l)}function s(l){let _=[];for(let N of l)if(typeof N=="string")_.push(N);else if(hy.NotebookCellTextDocumentFilter.is(N))if(typeof N.notebook=="string")_.push({notebookType:N.notebook,language:N.language});else{let ee=N.notebook.notebookType??"*";_.push({notebookType:ee,scheme:N.notebook.scheme,pattern:N.notebook.pattern,language:N.language})}else hy.TextDocumentFilter.is(N)&&_.push({language:N.language,scheme:N.scheme,pattern:N.pattern});return _}async function a(l,_){return qe.map(l,u,_)}function c(l){let _=new Array(l.length);for(let N=0;N<l.length;N++)_[N]=u(l[N]);return _}function u(l){let _=new py.ProtocolDiagnostic(v(l.range),l.message,P(l.severity),l.data);if(l.code!==void 0){if(typeof l.code=="string"||typeof l.code=="number")ae.CodeDescription.is(l.codeDescription)?_.code={value:l.code,target:o(l.codeDescription.href)}:_.code=l.code;else if(py.DiagnosticCode.is(l.code)){_.hasDiagnosticCode=!0;let N=l.code;_.code={value:N.value,target:o(N.target)}}}return l.source&&(_.source=l.source),l.relatedInformation&&(_.relatedInformation=d(l.relatedInformation)),Array.isArray(l.tags)&&(_.tags=g(l.tags)),_}function d(l){let _=new Array(l.length);for(let N=0;N<l.length;N++){let ee=l[N];_[N]=new z.DiagnosticRelatedInformation(Ct(ee.location),ee.message)}return _}function g(l){if(!l)return;let _=[];for(let N of l){let ee=m(N);ee!==void 0&&_.push(ee)}return _.length>0?_:void 0}function m(l){switch(l){case ae.DiagnosticTag.Unnecessary:return z.DiagnosticTag.Unnecessary;case ae.DiagnosticTag.Deprecated:return z.DiagnosticTag.Deprecated;default:return}}function y(l){return l?new z.Position(l.line,l.character):void 0}function v(l){return l?new z.Range(l.start.line,l.start.character,l.end.line,l.end.character):void 0}async function T(l,_){return qe.map(l,N=>new z.Range(N.start.line,N.start.character,N.end.line,N.end.character),_)}function P(l){if(l==null)return z.DiagnosticSeverity.Error;switch(l){case ae.DiagnosticSeverity.Error:return z.DiagnosticSeverity.Error;case ae.DiagnosticSeverity.Warning:return z.DiagnosticSeverity.Warning;case ae.DiagnosticSeverity.Information:return z.DiagnosticSeverity.Information;case ae.DiagnosticSeverity.Hint:return z.DiagnosticSeverity.Hint}return z.DiagnosticSeverity.Error}function q(l){if(fn.string(l))return L(l);if(Ps.is(l))return L().appendCodeblock(l.value,l.language);if(Array.isArray(l)){let _=[];for(let N of l){let ee=L();Ps.is(N)?ee.appendCodeblock(N.value,N.language):ee.appendMarkdown(N),_.push(ee)}return _}else return L(l)}function A(l){if(fn.string(l))return l;switch(l.kind){case ae.MarkupKind.Markdown:return L(l.value);case ae.MarkupKind.PlainText:return l.value;default:return`Unsupported Markup content received. Kind is: ${l.kind}`}}function L(l){let _;if(l===void 0||typeof l=="string")_=new z.MarkdownString(l);else switch(l.kind){case ae.MarkupKind.Markdown:_=new z.MarkdownString(l.value);break;case ae.MarkupKind.PlainText:_=new z.MarkdownString,_.appendText(l.value);break;default:_=new z.MarkdownString,_.appendText(`Unsupported Markup content received. Kind is: ${l.kind}`);break}return _.isTrusted=e,_.supportHtml=t,_}function K(l){if(l)return new z.Hover(q(l.contents),v(l.range))}async function te(l,_,N){if(!l)return;if(Array.isArray(l))return qe.map(l,An=>Ne(An,_),N);let ee=l,{defaultRange:gt,commitCharacters:St}=Z(ee,_),je=await qe.map(ee.items,An=>Ne(An,St,gt,ee.itemDefaults?.insertTextMode,ee.itemDefaults?.insertTextFormat,ee.itemDefaults?.data),N);return new z.CompletionList(je,ee.isIncomplete)}function Z(l,_){let N=l.itemDefaults?.editRange,ee=l.itemDefaults?.commitCharacters??_;return ae.Range.is(N)?{defaultRange:v(N),commitCharacters:ee}:N!==void 0?{defaultRange:{inserting:v(N.insert),replacing:v(N.replace)},commitCharacters:ee}:{defaultRange:void 0,commitCharacters:ee}}function V(l){return ae.CompletionItemKind.Text<=l&&l<=ae.CompletionItemKind.TypeParameter?[l-1,void 0]:[z.CompletionItemKind.Text,l]}function ne(l){switch(l){case ae.CompletionItemTag.Deprecated:return z.CompletionItemTag.Deprecated}}function ce(l){if(l==null)return[];let _=[];for(let N of l){let ee=ne(N);ee!==void 0&&_.push(ee)}return _}function Ne(l,_,N,ee,gt,St){let je=ce(l.tags),An=U(l),We=new z_.default(An);l.detail&&(We.detail=l.detail),l.documentation&&(We.documentation=A(l.documentation),We.documentationFormat=fn.string(l.documentation)?"$string":l.documentation.kind),l.filterText&&(We.filterText=l.filterText);let ho=I(l,N,gt);if(ho&&(We.insertText=ho.text,We.range=ho.range,We.fromEdit=ho.fromEdit),fn.number(l.kind)){let[sw,Tf]=V(l.kind);We.kind=sw,Tf&&(We.originalItemKind=Tf)}l.sortText&&(We.sortText=l.sortText),l.additionalTextEdits&&(We.additionalTextEdits=ie(l.additionalTextEdits));let Sf=l.commitCharacters!==void 0?fn.stringArray(l.commitCharacters)?l.commitCharacters:void 0:_;Sf&&(We.commitCharacters=Sf.slice()),l.command&&(We.command=at(l.command)),(l.deprecated===!0||l.deprecated===!1)&&(We.deprecated=l.deprecated,l.deprecated===!0&&je.push(z.CompletionItemTag.Deprecated)),(l.preselect===!0||l.preselect===!1)&&(We.preselect=l.preselect);let _f=l.data??St;_f!==void 0&&(We.data=_f),je.length>0&&(We.tags=je);let Ta=l.insertTextMode??ee;return Ta!==void 0&&(We.insertTextMode=Ta,Ta===ae.InsertTextMode.asIs&&(We.keepWhitespace=!0)),We}function U(l){return ae.CompletionItemLabelDetails.is(l.labelDetails)?{label:l.label,detail:l.labelDetails.detail,description:l.labelDetails.description}:l.label}function I(l,_,N){let ee=l.insertTextFormat??N;if(l.textEdit!==void 0||_!==void 0){let[gt,St]=l.textEdit!==void 0?J(l.textEdit):[_,l.textEditText??l.label];return ee===ae.InsertTextFormat.Snippet?{text:new z.SnippetString(St),range:gt,fromEdit:!0}:{text:St,range:gt,fromEdit:!0}}else return l.insertText?ee===ae.InsertTextFormat.Snippet?{text:new z.SnippetString(l.insertText),fromEdit:!1}:{text:l.insertText,fromEdit:!1}:void 0}function J(l){return ae.InsertReplaceEdit.is(l)?[{inserting:v(l.insert),replacing:v(l.replace)},l.newText]:[v(l.range),l.newText]}function B(l){if(l)return new z.TextEdit(v(l.range),l.newText)}async function pe(l,_){if(l)return qe.map(l,B,_)}function ie(l){if(!l)return;let _=new Array(l.length);for(let N=0;N<l.length;N++)_[N]=B(l[N]);return _}async function oe(l,_){if(!l)return;let N=new z.SignatureHelp;return fn.number(l.activeSignature)?N.activeSignature=l.activeSignature:N.activeSignature=0,fn.number(l.activeParameter)?N.activeParameter=l.activeParameter:N.activeParameter=0,l.signatures&&(N.signatures=await st(l.signatures,_)),N}async function st(l,_){return qe.mapAsync(l,be,_)}async function be(l,_){let N=new z.SignatureInformation(l.label);return l.documentation!==void 0&&(N.documentation=A(l.documentation)),l.parameters!==void 0&&(N.parameters=await Re(l.parameters,_)),l.activeParameter!==void 0&&(N.activeParameter=l.activeParameter),N}function Re(l,_){return qe.map(l,ct,_)}function ct(l){let _=new z.ParameterInformation(l.label);return l.documentation&&(_.documentation=A(l.documentation)),_}function Ct(l){return l?new z.Location(i(l.uri),v(l.range)):void 0}async function nr(l,_){if(l)return Kn(l,_)}async function En(l,_){if(l)return Kn(l,_)}function xn(l){if(!l)return;let _={targetUri:i(l.targetUri),targetRange:v(l.targetRange),originSelectionRange:v(l.originSelectionRange),targetSelectionRange:v(l.targetSelectionRange)};if(!_.targetSelectionRange)throw new Error("targetSelectionRange must not be undefined or null");return _}async function Kn(l,_){if(l)if(fn.array(l)){if(l.length===0)return[];if(ae.LocationLink.is(l[0])){let N=l;return qe.map(N,xn,_)}else{let N=l;return qe.map(N,Ct,_)}}else return ae.LocationLink.is(l)?[xn(l)]:Ct(l)}async function rr(l,_){if(l)return qe.map(l,Ct,_)}async function qn(l,_){if(l)return qe.map(l,mn,_)}function mn(l){let _=new z.DocumentHighlight(v(l.range));return fn.number(l.kind)&&(_.kind=vn(l.kind)),_}function vn(l){switch(l){case ae.DocumentHighlightKind.Text:return z.DocumentHighlightKind.Text;case ae.DocumentHighlightKind.Read:return z.DocumentHighlightKind.Read;case ae.DocumentHighlightKind.Write:return z.DocumentHighlightKind.Write}return z.DocumentHighlightKind.Text}async function In(l,_){if(l)return qe.map(l,rn,_)}function ut(l){return l<=ae.SymbolKind.TypeParameter?l-1:z.SymbolKind.Property}function Vn(l){switch(l){case ae.SymbolTag.Deprecated:return z.SymbolTag.Deprecated;default:return}}function yn(l){if(l==null)return;let _=[];for(let N of l){let ee=Vn(N);ee!==void 0&&_.push(ee)}return _.length===0?void 0:_}function rn(l){let _=l.data,N=l.location,ee=N.range===void 0||_!==void 0?new Y_.default(l.name,ut(l.kind),l.containerName??"",N.range===void 0?i(N.uri):new z.Location(i(l.location.uri),v(N.range)),_):new z.SymbolInformation(l.name,ut(l.kind),l.containerName??"",new z.Location(i(l.location.uri),v(N.range)));return Fn(ee,l),ee}async function ir(l,_){if(l!=null)return qe.map(l,on,_)}function on(l){let _=new z.DocumentSymbol(l.name,l.detail||"",ut(l.kind),v(l.range),v(l.selectionRange));if(Fn(_,l),l.children!==void 0&&l.children.length>0){let N=[];for(let ee of l.children)N.push(on(ee));_.children=N}return _}function Fn(l,_){l.tags=yn(_.tags),_.deprecated&&(l.tags?l.tags.includes(z.SymbolTag.Deprecated)||(l.tags=l.tags.concat(z.SymbolTag.Deprecated)):l.tags=[z.SymbolTag.Deprecated])}function at(l){let _={title:l.title,command:l.command};return l.arguments&&(_.arguments=l.arguments),_}async function Tt(l,_){if(l)return qe.map(l,at,_)}let Dt=new Map;Dt.set(ae.CodeActionKind.Empty,z.CodeActionKind.Empty),Dt.set(ae.CodeActionKind.QuickFix,z.CodeActionKind.QuickFix),Dt.set(ae.CodeActionKind.Refactor,z.CodeActionKind.Refactor),Dt.set(ae.CodeActionKind.RefactorExtract,z.CodeActionKind.RefactorExtract),Dt.set(ae.CodeActionKind.RefactorInline,z.CodeActionKind.RefactorInline),Dt.set(ae.CodeActionKind.RefactorRewrite,z.CodeActionKind.RefactorRewrite),Dt.set(ae.CodeActionKind.Source,z.CodeActionKind.Source),Dt.set(ae.CodeActionKind.SourceOrganizeImports,z.CodeActionKind.SourceOrganizeImports);function Gt(l){if(l==null)return;let _=Dt.get(l);if(_)return _;let N=l.split(".");_=z.CodeActionKind.Empty;for(let ee of N)_=_.append(ee);return _}function Lt(l){if(l!=null)return l.map(_=>Gt(_))}async function On(l,_){if(l==null)return;let N=new J_.default(l.title,l.data);return l.kind!==void 0&&(N.kind=Gt(l.kind)),l.diagnostics!==void 0&&(N.diagnostics=c(l.diagnostics)),l.edit!==void 0&&(N.edit=await Ft(l.edit,_)),l.command!==void 0&&(N.command=at(l.command)),l.isPreferred!==void 0&&(N.isPreferred=l.isPreferred),l.disabled!==void 0&&(N.disabled={reason:l.disabled.reason}),N}function zn(l,_){return qe.mapAsync(l,async N=>ae.Command.is(N)?at(N):On(N,_),_)}function bn(l){if(!l)return;let _=new B_.default(v(l.range));return l.command&&(_.command=at(l.command)),l.data!==void 0&&l.data!==null&&(_.data=l.data),_}async function Bn(l,_){if(l)return qe.map(l,bn,_)}async function Ft(l,_){if(!l)return;let N=new Map;if(l.changeAnnotations!==void 0){let St=l.changeAnnotations;await qe.forEach(Object.keys(St),je=>{let An=C(St[je]);N.set(je,An)},_)}let ee=St=>{if(St!==void 0)return N.get(St)},gt=new z.WorkspaceEdit;if(l.documentChanges){let St=l.documentChanges;await qe.forEach(St,je=>{if(ae.CreateFile.is(je))gt.createFile(i(je.uri),je.options,ee(je.annotationId));else if(ae.RenameFile.is(je))gt.renameFile(i(je.oldUri),i(je.newUri),je.options,ee(je.annotationId));else if(ae.DeleteFile.is(je))gt.deleteFile(i(je.uri),je.options,ee(je.annotationId));else if(ae.TextDocumentEdit.is(je)){let An=i(je.textDocument.uri);for(let We of je.edits)ae.AnnotatedTextEdit.is(We)?gt.replace(An,v(We.range),We.newText,ee(We.annotationId)):gt.replace(An,v(We.range),We.newText)}else throw new Error(`Unknown workspace edit change received:
45
- ${JSON.stringify(je,void 0,4)}`)},_)}else if(l.changes){let St=l.changes;await qe.forEach(Object.keys(St),je=>{gt.set(i(je),ie(St[je]))},_)}return gt}function C(l){if(l!==void 0)return{label:l.label,needsConfirmation:!!l.needsConfirmation,description:l.description}}function O(l){let _=v(l.range),N=l.target?o(l.target):void 0,ee=new G_.default(_,N);return l.tooltip!==void 0&&(ee.tooltip=l.tooltip),l.data!==void 0&&l.data!==null&&(ee.data=l.data),ee}async function W(l,_){if(l)return qe.map(l,O,_)}function G(l){return new z.Color(l.red,l.green,l.blue,l.alpha)}function xe(l){return new z.ColorInformation(v(l.range),G(l.color))}async function Pe(l,_){if(l)return qe.map(l,xe,_)}function Ae(l){let _=new z.ColorPresentation(l.label);return _.additionalTextEdits=ie(l.additionalTextEdits),l.textEdit&&(_.textEdit=B(l.textEdit)),_}async function $e(l,_){if(l)return qe.map(l,Ae,_)}function ye(l){if(l)switch(l){case ae.FoldingRangeKind.Comment:return z.FoldingRangeKind.Comment;case ae.FoldingRangeKind.Imports:return z.FoldingRangeKind.Imports;case ae.FoldingRangeKind.Region:return z.FoldingRangeKind.Region}}function Ie(l){return new z.FoldingRange(l.startLine,l.endLine,ye(l.kind))}async function De(l,_){if(l)return qe.map(l,Ie,_)}function Ue(l){return new z.SelectionRange(v(l.range),l.parent?Ue(l.parent):void 0)}async function nt(l,_){return Array.isArray(l)?qe.map(l,Ue,_):[]}function ht(l){return ae.InlineValueText.is(l)?new z.InlineValueText(v(l.range),l.text):ae.InlineValueVariableLookup.is(l)?new z.InlineValueVariableLookup(v(l.range),l.variableName,l.caseSensitiveLookup):new z.InlineValueEvaluatableExpression(v(l.range),l.expression)}async function or(l,_){return Array.isArray(l)?qe.map(l,ht,_):[]}async function sr(l,_){let N=typeof l.label=="string"?l.label:await qe.map(l.label,p,_),ee=new Z_.default(y(l.position),N);return l.kind!==void 0&&(ee.kind=l.kind),l.textEdits!==void 0&&(ee.textEdits=await pe(l.textEdits,_)),l.tooltip!==void 0&&(ee.tooltip=x(l.tooltip)),l.paddingLeft!==void 0&&(ee.paddingLeft=l.paddingLeft),l.paddingRight!==void 0&&(ee.paddingRight=l.paddingRight),l.data!==void 0&&(ee.data=l.data),ee}function p(l){let _=new z.InlayHintLabelPart(l.value);return l.location!==void 0&&(_.location=Ct(l.location)),l.tooltip!==void 0&&(_.tooltip=x(l.tooltip)),l.command!==void 0&&(_.command=at(l.command)),_}function x(l){return typeof l=="string"?l:L(l)}async function Y(l,_){if(Array.isArray(l))return qe.mapAsync(l,sr,_)}function Fe(l){if(l===null)return;let _=new X_.default(ut(l.kind),l.name,l.detail||"",o(l.uri),v(l.range),v(l.selectionRange),l.data);return l.tags!==void 0&&(_.tags=yn(l.tags)),_}async function R(l,_){if(l!==null)return qe.map(l,Fe,_)}async function h(l,_){return new z.CallHierarchyIncomingCall(Fe(l.from),await T(l.fromRanges,_))}async function D(l,_){if(l!==null)return qe.mapAsync(l,h,_)}async function S(l,_){return new z.CallHierarchyOutgoingCall(Fe(l.to),await T(l.fromRanges,_))}async function b(l,_){if(l!==null)return qe.mapAsync(l,S,_)}async function f(l,_){if(l!=null)return new z.SemanticTokens(new Uint32Array(l.data),l.resultId)}function k(l){return new z.SemanticTokensEdit(l.start,l.deleteCount,l.data!==void 0?new Uint32Array(l.data):void 0)}async function M(l,_){if(l!=null)return new z.SemanticTokensEdits(l.edits.map(k),l.resultId)}function le(l){return l}async function Ge(l,_){if(l!=null)return new z.LinkedEditingRanges(await T(l.ranges,_),He(l.wordPattern))}function He(l){if(l!=null)return new RegExp(l)}function Nt(l){if(l===null)return;let _=new Q_.default(ut(l.kind),l.name,l.detail||"",o(l.uri),v(l.range),v(l.selectionRange),l.data);return l.tags!==void 0&&(_.tags=yn(l.tags)),_}async function Jt(l,_){if(l!==null)return qe.map(l,Nt,_)}function wn(l){if(fn.string(l))return l;if(ae.RelativePattern.is(l)){if(ae.URI.is(l.baseUri))return new z.RelativePattern(o(l.baseUri),l.pattern);if(ae.WorkspaceFolder.is(l.baseUri)){let _=z.workspace.getWorkspaceFolder(o(l.baseUri.uri));return _!==void 0?new z.RelativePattern(_,l.pattern):void 0}}}async function Ce(l,_){if(!l)return;if(Array.isArray(l))return qe.map(l,gt=>Mn(gt),_);let N=l,ee=await qe.map(N.items,gt=>Mn(gt),_);return new z.InlineCompletionList(ee)}function Mn(l){let _;typeof l.insertText=="string"?_=l.insertText:_=new z.SnippetString(l.insertText.value);let N;l.command&&(N=at(l.command));let ee=new z.InlineCompletionItem(_,v(l.range),N);return l.filterText&&(ee.filterText=l.filterText),ee}return{asUri:o,asDocumentSelector:s,asDiagnostics:a,asDiagnostic:u,asRange:v,asRanges:T,asPosition:y,asDiagnosticSeverity:P,asDiagnosticTag:m,asHover:K,asCompletionResult:te,asCompletionItem:Ne,asTextEdit:B,asTextEdits:pe,asSignatureHelp:oe,asSignatureInformations:st,asSignatureInformation:be,asParameterInformations:Re,asParameterInformation:ct,asDeclarationResult:nr,asDefinitionResult:En,asLocation:Ct,asReferences:rr,asDocumentHighlights:qn,asDocumentHighlight:mn,asDocumentHighlightKind:vn,asSymbolKind:ut,asSymbolTag:Vn,asSymbolTags:yn,asSymbolInformations:In,asSymbolInformation:rn,asDocumentSymbols:ir,asDocumentSymbol:on,asCommand:at,asCommands:Tt,asCodeAction:On,asCodeActionKind:Gt,asCodeActionKinds:Lt,asCodeActionResult:zn,asCodeLens:bn,asCodeLenses:Bn,asWorkspaceEdit:Ft,asDocumentLink:O,asDocumentLinks:W,asFoldingRangeKind:ye,asFoldingRange:Ie,asFoldingRanges:De,asColor:G,asColorInformation:xe,asColorInformations:Pe,asColorPresentation:Ae,asColorPresentations:$e,asSelectionRange:Ue,asSelectionRanges:nt,asInlineValue:ht,asInlineValues:or,asInlayHint:sr,asInlayHints:Y,asSemanticTokensLegend:le,asSemanticTokens:f,asSemanticTokensEdit:k,asSemanticTokensEdits:M,asCallHierarchyItem:Fe,asCallHierarchyItems:R,asCallHierarchyIncomingCall:h,asCallHierarchyIncomingCalls:D,asCallHierarchyOutgoingCall:S,asCallHierarchyOutgoingCalls:b,asLinkedEditingRanges:Ge,asTypeHierarchyItem:Nt,asTypeHierarchyItems:Jt,asGlobPattern:wn,asInlineCompletionResult:Ce,asInlineCompletionItem:Mn}}ks.createConverter=eT});var Xe=E(pn=>{"use strict";Object.defineProperty(pn,"__esModule",{value:!0});pn.generateUuid=pn.parse=pn.isUUID=pn.v4=pn.empty=void 0;var Ki=class{constructor(e){this._value=e}asHex(){return this._value}equals(e){return this.asHex()===e.asHex()}},Vi=class n extends Ki{static _oneOf(e){return e[Math.floor(e.length*Math.random())]}static _randomHex(){return n._oneOf(n._chars)}constructor(){super([n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),"-",n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),"-","4",n._randomHex(),n._randomHex(),n._randomHex(),"-",n._oneOf(n._timeHighBits),n._randomHex(),n._randomHex(),n._randomHex(),"-",n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex()].join(""))}};Vi._chars=["0","1","2","3","4","5","6","6","7","8","9","a","b","c","d","e","f"];Vi._timeHighBits=["8","9","a","b"];pn.empty=new Ki("00000000-0000-0000-0000-000000000000");function my(){return new Vi}pn.v4=my;var tT=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;function vy(n){return tT.test(n)}pn.isUUID=vy;function nT(n){if(!vy(n))throw new Error("invalid uuid");return new Ki(n)}pn.parse=nT;function rT(){return my().asHex()}pn.generateUuid=rT});var ol=E(Es=>{"use strict";Object.defineProperty(Es,"__esModule",{value:!0});Es.ProgressPart=void 0;var yy=require("vscode"),by=fe(),wy=un(),il=class{constructor(e,t,r){this._client=e,this._token=t,this._reported=0,this._infinite=!1,this._lspProgressDisposable=this._client.onProgress(by.WorkDoneProgress.type,this._token,i=>{switch(i.kind){case"begin":this.begin(i);break;case"report":this.report(i);break;case"end":this.done(),r&&r(this);break}})}begin(e){this._infinite=e.percentage===void 0,this._lspProgressDisposable!==void 0&&yy.window.withProgress({location:yy.ProgressLocation.Window,cancellable:e.cancellable,title:e.title},async(t,r)=>{if(this._lspProgressDisposable!==void 0)return this._progress=t,this._cancellationToken=r,this._tokenDisposable=this._cancellationToken.onCancellationRequested(()=>{this._client.sendNotification(by.WorkDoneProgressCancelNotification.type,{token:this._token})}),this.report(e),new Promise((i,o)=>{this._resolve=i,this._reject=o})})}report(e){if(this._infinite&&wy.string(e.message))this._progress!==void 0&&this._progress.report({message:e.message});else if(wy.number(e.percentage)){let t=Math.max(0,Math.min(e.percentage,100)),r=Math.max(0,t-this._reported);this._reported+=r,this._progress!==void 0&&this._progress.report({message:e.message,increment:r})}}cancel(){this.cleanup(),this._reject!==void 0&&(this._reject(),this._resolve=void 0,this._reject=void 0)}done(){this.cleanup(),this._resolve!==void 0&&(this._resolve(),this._resolve=void 0,this._reject=void 0)}cleanup(){this._lspProgressDisposable!==void 0&&(this._lspProgressDisposable.dispose(),this._lspProgressDisposable=void 0),this._tokenDisposable!==void 0&&(this._tokenDisposable.dispose(),this._tokenDisposable=void 0),this._progress=void 0,this._cancellationToken=void 0}};Es.ProgressPart=il});var Ee=E(yt=>{"use strict";Object.defineProperty(yt,"__esModule",{value:!0});yt.WorkspaceFeature=yt.TextDocumentLanguageFeature=yt.TextDocumentEventFeature=yt.DynamicDocumentFeature=yt.DynamicFeature=yt.StaticFeature=yt.ensure=yt.LSPCancellationError=void 0;var Ir=require("vscode"),sl=fe(),At=un(),Cy=Xe(),al=class extends Ir.CancellationError{constructor(e){super(),this.data=e}};yt.LSPCancellationError=al;function iT(n,e){return n[e]===void 0&&(n[e]={}),n[e]}yt.ensure=iT;var Dy;(function(n){function e(t){let r=t;return r!=null&&At.func(r.fillClientCapabilities)&&At.func(r.initialize)&&At.func(r.getState)&&At.func(r.clear)&&(r.fillInitializeParams===void 0||At.func(r.fillInitializeParams))}n.is=e})(Dy||(yt.StaticFeature=Dy={}));var Sy;(function(n){function e(t){let r=t;return r!=null&&At.func(r.fillClientCapabilities)&&At.func(r.initialize)&&At.func(r.getState)&&At.func(r.clear)&&(r.fillInitializeParams===void 0||At.func(r.fillInitializeParams))&&At.func(r.register)&&At.func(r.unregister)&&r.registrationType!==void 0}n.is=e})(Sy||(yt.DynamicFeature=Sy={}));var zi=class{constructor(e){this._client=e}getState(){let e=this.getDocumentSelectors(),t=0;for(let i of e){t++;for(let o of Ir.workspace.textDocuments)if(Ir.languages.match(i,o)>0)return{kind:"document",id:this.registrationType.method,registrations:!0,matches:!0}}let r=t>0;return{kind:"document",id:this.registrationType.method,registrations:r,matches:!1}}};yt.DynamicDocumentFeature=zi;var cl=class extends zi{static textDocumentFilter(e,t){for(let r of e)if(Ir.languages.match(r,t)>0)return!0;return!1}constructor(e,t,r,i,o,s,a){super(e),this._event=t,this._type=r,this._middleware=i,this._createParams=o,this._textDocument=s,this._selectorFilter=a,this._selectors=new Map,this._onNotificationSent=new Ir.EventEmitter}getStateInfo(){return[this._selectors.values(),!1]}getDocumentSelectors(){return this._selectors.values()}register(e){e.registerOptions.documentSelector&&(this._listener||(this._listener=this._event(t=>{this.callback(t).catch(r=>{this._client.error(`Sending document notification ${this._type.method} failed.`,r)})})),this._selectors.set(e.id,this._client.protocol2CodeConverter.asDocumentSelector(e.registerOptions.documentSelector)))}async callback(e){let t=async r=>{let i=this._createParams(r);await this._client.sendNotification(this._type,i),this.notificationSent(this.getTextDocument(r),this._type,i)};if(this.matches(e)){let r=this._middleware();return r?r(e,i=>t(i)):t(e)}}matches(e){return this._client.hasDedicatedTextSynchronizationFeature(this._textDocument(e))?!1:!this._selectorFilter||this._selectorFilter(this._selectors.values(),e)}get onNotificationSent(){return this._onNotificationSent.event}notificationSent(e,t,r){this._onNotificationSent.fire({textDocument:e,type:t,params:r})}unregister(e){this._selectors.delete(e),this._selectors.size===0&&this._listener&&(this._listener.dispose(),this._listener=void 0)}clear(){this._selectors.clear(),this._onNotificationSent.dispose(),this._listener&&(this._listener.dispose(),this._listener=void 0)}getProvider(e){for(let t of this._selectors.values())if(Ir.languages.match(t,e)>0)return{send:r=>this.callback(r)}}};yt.TextDocumentEventFeature=cl;var ul=class extends zi{constructor(e,t){super(e),this._registrationType=t,this._registrations=new Map}*getDocumentSelectors(){for(let e of this._registrations.values()){let t=e.data.registerOptions.documentSelector;t!==null&&(yield this._client.protocol2CodeConverter.asDocumentSelector(t))}}get registrationType(){return this._registrationType}register(e){if(!e.registerOptions.documentSelector)return;let t=this.registerLanguageProvider(e.registerOptions,e.id);this._registrations.set(e.id,{disposable:t[0],data:e,provider:t[1]})}unregister(e){let t=this._registrations.get(e);t!==void 0&&t.disposable.dispose()}clear(){this._registrations.forEach(e=>{e.disposable.dispose()}),this._registrations.clear()}getRegistration(e,t){if(t){if(sl.TextDocumentRegistrationOptions.is(t)){let r=sl.StaticRegistrationOptions.hasId(t)?t.id:Cy.generateUuid(),i=t.documentSelector??e;if(i)return[r,Object.assign({},t,{documentSelector:i})]}else if(At.boolean(t)&&t===!0||sl.WorkDoneProgressOptions.is(t)){if(!e)return[void 0,void 0];let r=At.boolean(t)&&t===!0?{documentSelector:e}:Object.assign({},t,{documentSelector:e});return[Cy.generateUuid(),r]}}else return[void 0,void 0];return[void 0,void 0]}getRegistrationOptions(e,t){if(!(!e||!t))return At.boolean(t)&&t===!0?{documentSelector:e}:Object.assign({},t,{documentSelector:e})}getProvider(e){for(let t of this._registrations.values()){let r=t.data.registerOptions.documentSelector;if(r!==null&&Ir.languages.match(this._client.protocol2CodeConverter.asDocumentSelector(r),e)>0)return t.provider}}getAllProviders(){let e=[];for(let t of this._registrations.values())e.push(t.provider);return e}};yt.TextDocumentLanguageFeature=ul;var ll=class{constructor(e,t){this._client=e,this._registrationType=t,this._registrations=new Map}getState(){let e=this._registrations.size>0;return{kind:"workspace",id:this._registrationType.method,registrations:e}}get registrationType(){return this._registrationType}register(e){let t=this.registerLanguageProvider(e.registerOptions);this._registrations.set(e.id,{disposable:t[0],provider:t[1]})}unregister(e){let t=this._registrations.get(e);t!==void 0&&t.disposable.dispose()}clear(){this._registrations.forEach(e=>{e.disposable.dispose()}),this._registrations.clear()}getProviders(){let e=[];for(let t of this._registrations.values())e.push(t.provider);return e}};yt.WorkspaceFeature=ll});var Ty=E((TE,_y)=>{"use strict";var oT=typeof process=="object"&&process&&process.platform==="win32";_y.exports=oT?{sep:"\\"}:{sep:"/"}});var xy=E((RE,Ey)=>{"use strict";Ey.exports=Py;function Py(n,e,t){n instanceof RegExp&&(n=Ry(n,t)),e instanceof RegExp&&(e=Ry(e,t));var r=ky(n,e,t);return r&&{start:r[0],end:r[1],pre:t.slice(0,r[0]),body:t.slice(r[0]+n.length,r[1]),post:t.slice(r[1]+e.length)}}function Ry(n,e){var t=e.match(n);return t?t[0]:null}Py.range=ky;function ky(n,e,t){var r,i,o,s,a,c=t.indexOf(n),u=t.indexOf(e,c+1),d=c;if(c>=0&&u>0){if(n===e)return[c,u];for(r=[],o=t.length;d>=0&&!a;)d==c?(r.push(d),c=t.indexOf(n,d+1)):r.length==1?a=[r.pop(),u]:(i=r.pop(),i<o&&(o=i,s=u),u=t.indexOf(e,d+1)),d=c<u&&c>=0?c:u;r.length&&(a=[o,s])}return a}});var Ny=E((PE,Ly)=>{"use strict";var qy=xy();Ly.exports=cT;var Iy="\0SLASH"+Math.random()+"\0",Fy="\0OPEN"+Math.random()+"\0",fl="\0CLOSE"+Math.random()+"\0",Oy="\0COMMA"+Math.random()+"\0",My="\0PERIOD"+Math.random()+"\0";function dl(n){return parseInt(n,10)==n?parseInt(n,10):n.charCodeAt(0)}function sT(n){return n.split("\\\\").join(Iy).split("\\{").join(Fy).split("\\}").join(fl).split("\\,").join(Oy).split("\\.").join(My)}function aT(n){return n.split(Iy).join("\\").split(Fy).join("{").split(fl).join("}").split(Oy).join(",").split(My).join(".")}function Ay(n){if(!n)return[""];var e=[],t=qy("{","}",n);if(!t)return n.split(",");var r=t.pre,i=t.body,o=t.post,s=r.split(",");s[s.length-1]+="{"+i+"}";var a=Ay(o);return o.length&&(s[s.length-1]+=a.shift(),s.push.apply(s,a)),e.push.apply(e,s),e}function cT(n){return n?(n.substr(0,2)==="{}"&&(n="\\{\\}"+n.substr(2)),Bi(sT(n),!0).map(aT)):[]}function uT(n){return"{"+n+"}"}function lT(n){return/^-?0\d/.test(n)}function dT(n,e){return n<=e}function fT(n,e){return n>=e}function Bi(n,e){var t=[],r=qy("{","}",n);if(!r)return[n];var i=r.pre,o=r.post.length?Bi(r.post,!1):[""];if(/\$$/.test(r.pre))for(var s=0;s<o.length;s++){var a=i+"{"+r.body+"}"+o[s];t.push(a)}else{var c=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(r.body),u=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(r.body),d=c||u,g=r.body.indexOf(",")>=0;if(!d&&!g)return r.post.match(/,.*\}/)?(n=r.pre+"{"+r.body+fl+r.post,Bi(n)):[n];var m;if(d)m=r.body.split(/\.\./);else if(m=Ay(r.body),m.length===1&&(m=Bi(m[0],!1).map(uT),m.length===1))return o.map(function(Ne){return r.pre+m[0]+Ne});var y;if(d){var v=dl(m[0]),T=dl(m[1]),P=Math.max(m[0].length,m[1].length),q=m.length==3?Math.abs(dl(m[2])):1,A=dT,L=T<v;L&&(q*=-1,A=fT);var K=m.some(lT);y=[];for(var te=v;A(te,T);te+=q){var Z;if(u)Z=String.fromCharCode(te),Z==="\\"&&(Z="");else if(Z=String(te),K){var V=P-Z.length;if(V>0){var ne=new Array(V+1).join("0");te<0?Z="-"+ne+Z.slice(1):Z=ne+Z}}y.push(Z)}}else{y=[];for(var ce=0;ce<m.length;ce++)y.push.apply(y,Bi(m[ce],!1))}for(var ce=0;ce<y.length;ce++)for(var s=0;s<o.length;s++){var a=i+y[ce]+o[s];(!e||d||a)&&t.push(a)}}return t}});var qs=E((EE,vl)=>{"use strict";var Yt=vl.exports=(n,e,t={})=>(xs(e),!t.nocomment&&e.charAt(0)==="#"?!1:new pi(e,t).match(n));vl.exports=Yt;var gl=Ty();Yt.sep=gl.sep;var Tn=Symbol("globstar **");Yt.GLOBSTAR=Tn;var pT=Ny(),jy={"!":{open:"(?:(?!(?:",close:"))[^/]*?)"},"?":{open:"(?:",close:")?"},"+":{open:"(?:",close:")+"},"*":{open:"(?:",close:")*"},"@":{open:"(?:",close:")"}},ml="[^/]",pl=ml+"*?",hT="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",gT="(?:(?!(?:\\/|^)\\.).)*?",Hy=n=>n.split("").reduce((e,t)=>(e[t]=!0,e),{}),$y=Hy("().*{}+?[]^$\\!"),mT=Hy("[.("),Uy=/\/+/;Yt.filter=(n,e={})=>(t,r,i)=>Yt(t,n,e);var yr=(n,e={})=>{let t={};return Object.keys(n).forEach(r=>t[r]=n[r]),Object.keys(e).forEach(r=>t[r]=e[r]),t};Yt.defaults=n=>{if(!n||typeof n!="object"||!Object.keys(n).length)return Yt;let e=Yt,t=(r,i,o)=>e(r,i,yr(n,o));return t.Minimatch=class extends e.Minimatch{constructor(i,o){super(i,yr(n,o))}},t.Minimatch.defaults=r=>e.defaults(yr(n,r)).Minimatch,t.filter=(r,i)=>e.filter(r,yr(n,i)),t.defaults=r=>e.defaults(yr(n,r)),t.makeRe=(r,i)=>e.makeRe(r,yr(n,i)),t.braceExpand=(r,i)=>e.braceExpand(r,yr(n,i)),t.match=(r,i,o)=>e.match(r,i,yr(n,o)),t};Yt.braceExpand=(n,e)=>Wy(n,e);var Wy=(n,e={})=>(xs(n),e.nobrace||!/\{(?:(?!\{).)*\}/.test(n)?[n]:pT(n)),vT=1024*64,xs=n=>{if(typeof n!="string")throw new TypeError("invalid pattern");if(n.length>vT)throw new TypeError("pattern is too long")},hl=Symbol("subparse");Yt.makeRe=(n,e)=>new pi(n,e||{}).makeRe();Yt.match=(n,e,t={})=>{let r=new pi(e,t);return n=n.filter(i=>r.match(i)),r.options.nonull&&!n.length&&n.push(e),n};var yT=n=>n.replace(/\\(.)/g,"$1"),bT=n=>n.replace(/\\([^-\]])/g,"$1"),wT=n=>n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),CT=n=>n.replace(/[[\]\\]/g,"\\$&"),pi=class{constructor(e,t){xs(e),t||(t={}),this.options=t,this.set=[],this.pattern=e,this.windowsPathsNoEscape=!!t.windowsPathsNoEscape||t.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.regexp=null,this.negate=!1,this.comment=!1,this.empty=!1,this.partial=!!t.partial,this.make()}debug(){}make(){let e=this.pattern,t=this.options;if(!t.nocomment&&e.charAt(0)==="#"){this.comment=!0;return}if(!e){this.empty=!0;return}this.parseNegate();let r=this.globSet=this.braceExpand();t.debug&&(this.debug=(...i)=>console.error(...i)),this.debug(this.pattern,r),r=this.globParts=r.map(i=>i.split(Uy)),this.debug(this.pattern,r),r=r.map((i,o,s)=>i.map(this.parse,this)),this.debug(this.pattern,r),r=r.filter(i=>i.indexOf(!1)===-1),this.debug(this.pattern,r),this.set=r}parseNegate(){if(this.options.nonegate)return;let e=this.pattern,t=!1,r=0;for(let i=0;i<e.length&&e.charAt(i)==="!";i++)t=!t,r++;r&&(this.pattern=e.slice(r)),this.negate=t}matchOne(e,t,r){var i=this.options;this.debug("matchOne",{this:this,file:e,pattern:t}),this.debug("matchOne",e.length,t.length);for(var o=0,s=0,a=e.length,c=t.length;o<a&&s<c;o++,s++){this.debug("matchOne loop");var u=t[s],d=e[o];if(this.debug(t,u,d),u===!1)return!1;if(u===Tn){this.debug("GLOBSTAR",[t,u,d]);var g=o,m=s+1;if(m===c){for(this.debug("** at the end");o<a;o++)if(e[o]==="."||e[o]===".."||!i.dot&&e[o].charAt(0)===".")return!1;return!0}for(;g<a;){var y=e[g];if(this.debug(`
44
+ `&&f++}b&&S.length>0&&D.push(S.length),this._lineOffsets=D}return this._lineOffsets},h.prototype.positionAt=function(D){D=Math.max(Math.min(D,this._content.length),0);var S=this.getLineOffsets(),b=0,f=S.length;if(f===0)return s.create(0,D);for(;b<f;){var k=Math.floor((b+f)/2);S[k]>D?f=k:b=k+1}var M=b-1;return s.create(M,D-S[M])},h.prototype.offsetAt=function(D){var S=this.getLineOffsets();if(D.line>=S.length)return this._content.length;if(D.line<0)return 0;var b=S[D.line],f=D.line+1<S.length?S[D.line+1]:this._content.length;return Math.max(Math.min(b+D.character,f),b)},Object.defineProperty(h.prototype,"lineCount",{get:function(){return this.getLineOffsets().length},enumerable:!1,configurable:!0}),h}(),R;(function(h){var D=Object.prototype.toString;function S(Ce){return typeof Ce<"u"}h.defined=S;function b(Ce){return typeof Ce>"u"}h.undefined=b;function f(Ce){return Ce===!0||Ce===!1}h.boolean=f;function k(Ce){return D.call(Ce)==="[object String]"}h.string=k;function M(Ce){return D.call(Ce)==="[object Number]"}h.number=M;function ue(Ce,Mn,l){return D.call(Ce)==="[object Number]"&&Mn<=Ce&&Ce<=l}h.numberRange=ue;function Ge(Ce){return D.call(Ce)==="[object Number]"&&-2147483648<=Ce&&Ce<=2147483647}h.integer=Ge;function He(Ce){return D.call(Ce)==="[object Number]"&&0<=Ce&&Ce<=2147483647}h.uinteger=He;function Nt(Ce){return D.call(Ce)==="[object Function]"}h.func=Nt;function Jt(Ce){return Ce!==null&&typeof Ce=="object"}h.objectLiteral=Jt;function wn(Ce,Mn){return Array.isArray(Ce)&&Ce.every(Mn)}h.typedArray=wn})(R||(R={}))})});var Je=E(Ht=>{"use strict";Object.defineProperty(Ht,"__esModule",{value:!0});Ht.ProtocolNotificationType=Ht.ProtocolNotificationType0=Ht.ProtocolRequestType=Ht.ProtocolRequestType0=Ht.RegistrationType=Ht.MessageDirection=void 0;var ti=Er(),ug;(function(n){n.clientToServer="clientToServer",n.serverToClient="serverToClient",n.both="both"})(ug||(Ht.MessageDirection=ug={}));var du=class{constructor(e){this.method=e}};Ht.RegistrationType=du;var fu=class extends ti.RequestType0{constructor(e){super(e)}};Ht.ProtocolRequestType0=fu;var pu=class extends ti.RequestType{constructor(e){super(e,ti.ParameterStructures.byName)}};Ht.ProtocolRequestType=pu;var hu=class extends ti.NotificationType0{constructor(e){super(e)}};Ht.ProtocolNotificationType0=hu;var gu=class extends ti.NotificationType{constructor(e){super(e,ti.ParameterStructures.byName)}};Ht.ProtocolNotificationType=gu});var as=E(lt=>{"use strict";Object.defineProperty(lt,"__esModule",{value:!0});lt.objectLiteral=lt.typedArray=lt.stringArray=lt.array=lt.func=lt.error=lt.number=lt.string=lt.boolean=void 0;function n_(n){return n===!0||n===!1}lt.boolean=n_;function lg(n){return typeof n=="string"||n instanceof String}lt.string=lg;function r_(n){return typeof n=="number"||n instanceof Number}lt.number=r_;function i_(n){return n instanceof Error}lt.error=i_;function o_(n){return typeof n=="function"}lt.func=o_;function dg(n){return Array.isArray(n)}lt.array=dg;function s_(n){return dg(n)&&n.every(e=>lg(e))}lt.stringArray=s_;function a_(n,e){return Array.isArray(n)&&n.every(e)}lt.typedArray=a_;function c_(n){return n!==null&&typeof n=="object"}lt.objectLiteral=c_});var hg=E(cs=>{"use strict";Object.defineProperty(cs,"__esModule",{value:!0});cs.ImplementationRequest=void 0;var fg=Je(),pg;(function(n){n.method="textDocument/implementation",n.messageDirection=fg.MessageDirection.clientToServer,n.type=new fg.ProtocolRequestType(n.method)})(pg||(cs.ImplementationRequest=pg={}))});var vg=E(us=>{"use strict";Object.defineProperty(us,"__esModule",{value:!0});us.TypeDefinitionRequest=void 0;var gg=Je(),mg;(function(n){n.method="textDocument/typeDefinition",n.messageDirection=gg.MessageDirection.clientToServer,n.type=new gg.ProtocolRequestType(n.method)})(mg||(us.TypeDefinitionRequest=mg={}))});var wg=E(ni=>{"use strict";Object.defineProperty(ni,"__esModule",{value:!0});ni.DidChangeWorkspaceFoldersNotification=ni.WorkspaceFoldersRequest=void 0;var ls=Je(),yg;(function(n){n.method="workspace/workspaceFolders",n.messageDirection=ls.MessageDirection.serverToClient,n.type=new ls.ProtocolRequestType0(n.method)})(yg||(ni.WorkspaceFoldersRequest=yg={}));var bg;(function(n){n.method="workspace/didChangeWorkspaceFolders",n.messageDirection=ls.MessageDirection.clientToServer,n.type=new ls.ProtocolNotificationType(n.method)})(bg||(ni.DidChangeWorkspaceFoldersNotification=bg={}))});var Sg=E(ds=>{"use strict";Object.defineProperty(ds,"__esModule",{value:!0});ds.ConfigurationRequest=void 0;var Cg=Je(),Dg;(function(n){n.method="workspace/configuration",n.messageDirection=Cg.MessageDirection.serverToClient,n.type=new Cg.ProtocolRequestType(n.method)})(Dg||(ds.ConfigurationRequest=Dg={}))});var Rg=E(ri=>{"use strict";Object.defineProperty(ri,"__esModule",{value:!0});ri.ColorPresentationRequest=ri.DocumentColorRequest=void 0;var fs=Je(),_g;(function(n){n.method="textDocument/documentColor",n.messageDirection=fs.MessageDirection.clientToServer,n.type=new fs.ProtocolRequestType(n.method)})(_g||(ri.DocumentColorRequest=_g={}));var Tg;(function(n){n.method="textDocument/colorPresentation",n.messageDirection=fs.MessageDirection.clientToServer,n.type=new fs.ProtocolRequestType(n.method)})(Tg||(ri.ColorPresentationRequest=Tg={}))});var Eg=E(ii=>{"use strict";Object.defineProperty(ii,"__esModule",{value:!0});ii.FoldingRangeRefreshRequest=ii.FoldingRangeRequest=void 0;var ps=Je(),Pg;(function(n){n.method="textDocument/foldingRange",n.messageDirection=ps.MessageDirection.clientToServer,n.type=new ps.ProtocolRequestType(n.method)})(Pg||(ii.FoldingRangeRequest=Pg={}));var kg;(function(n){n.method="workspace/foldingRange/refresh",n.messageDirection=ps.MessageDirection.serverToClient,n.type=new ps.ProtocolRequestType0(n.method)})(kg||(ii.FoldingRangeRefreshRequest=kg={}))});var Ig=E(hs=>{"use strict";Object.defineProperty(hs,"__esModule",{value:!0});hs.DeclarationRequest=void 0;var xg=Je(),qg;(function(n){n.method="textDocument/declaration",n.messageDirection=xg.MessageDirection.clientToServer,n.type=new xg.ProtocolRequestType(n.method)})(qg||(hs.DeclarationRequest=qg={}))});var Mg=E(gs=>{"use strict";Object.defineProperty(gs,"__esModule",{value:!0});gs.SelectionRangeRequest=void 0;var Fg=Je(),Og;(function(n){n.method="textDocument/selectionRange",n.messageDirection=Fg.MessageDirection.clientToServer,n.type=new Fg.ProtocolRequestType(n.method)})(Og||(gs.SelectionRangeRequest=Og={}))});var jg=E(pr=>{"use strict";Object.defineProperty(pr,"__esModule",{value:!0});pr.WorkDoneProgressCancelNotification=pr.WorkDoneProgressCreateRequest=pr.WorkDoneProgress=void 0;var u_=Er(),ms=Je(),Ag;(function(n){n.type=new u_.ProgressType;function e(t){return t===n.type}n.is=e})(Ag||(pr.WorkDoneProgress=Ag={}));var Lg;(function(n){n.method="window/workDoneProgress/create",n.messageDirection=ms.MessageDirection.serverToClient,n.type=new ms.ProtocolRequestType(n.method)})(Lg||(pr.WorkDoneProgressCreateRequest=Lg={}));var Ng;(function(n){n.method="window/workDoneProgress/cancel",n.messageDirection=ms.MessageDirection.clientToServer,n.type=new ms.ProtocolNotificationType(n.method)})(Ng||(pr.WorkDoneProgressCancelNotification=Ng={}))});var Wg=E(hr=>{"use strict";Object.defineProperty(hr,"__esModule",{value:!0});hr.CallHierarchyOutgoingCallsRequest=hr.CallHierarchyIncomingCallsRequest=hr.CallHierarchyPrepareRequest=void 0;var oi=Je(),$g;(function(n){n.method="textDocument/prepareCallHierarchy",n.messageDirection=oi.MessageDirection.clientToServer,n.type=new oi.ProtocolRequestType(n.method)})($g||(hr.CallHierarchyPrepareRequest=$g={}));var Ug;(function(n){n.method="callHierarchy/incomingCalls",n.messageDirection=oi.MessageDirection.clientToServer,n.type=new oi.ProtocolRequestType(n.method)})(Ug||(hr.CallHierarchyIncomingCallsRequest=Ug={}));var Hg;(function(n){n.method="callHierarchy/outgoingCalls",n.messageDirection=oi.MessageDirection.clientToServer,n.type=new oi.ProtocolRequestType(n.method)})(Hg||(hr.CallHierarchyOutgoingCallsRequest=Hg={}))});var Jg=E(Wt=>{"use strict";Object.defineProperty(Wt,"__esModule",{value:!0});Wt.SemanticTokensRefreshRequest=Wt.SemanticTokensRangeRequest=Wt.SemanticTokensDeltaRequest=Wt.SemanticTokensRequest=Wt.SemanticTokensRegistrationType=Wt.TokenFormat=void 0;var Xn=Je(),Kg;(function(n){n.Relative="relative"})(Kg||(Wt.TokenFormat=Kg={}));var ji;(function(n){n.method="textDocument/semanticTokens",n.type=new Xn.RegistrationType(n.method)})(ji||(Wt.SemanticTokensRegistrationType=ji={}));var Vg;(function(n){n.method="textDocument/semanticTokens/full",n.messageDirection=Xn.MessageDirection.clientToServer,n.type=new Xn.ProtocolRequestType(n.method),n.registrationMethod=ji.method})(Vg||(Wt.SemanticTokensRequest=Vg={}));var zg;(function(n){n.method="textDocument/semanticTokens/full/delta",n.messageDirection=Xn.MessageDirection.clientToServer,n.type=new Xn.ProtocolRequestType(n.method),n.registrationMethod=ji.method})(zg||(Wt.SemanticTokensDeltaRequest=zg={}));var Bg;(function(n){n.method="textDocument/semanticTokens/range",n.messageDirection=Xn.MessageDirection.clientToServer,n.type=new Xn.ProtocolRequestType(n.method),n.registrationMethod=ji.method})(Bg||(Wt.SemanticTokensRangeRequest=Bg={}));var Gg;(function(n){n.method="workspace/semanticTokens/refresh",n.messageDirection=Xn.MessageDirection.serverToClient,n.type=new Xn.ProtocolRequestType0(n.method)})(Gg||(Wt.SemanticTokensRefreshRequest=Gg={}))});var Yg=E(vs=>{"use strict";Object.defineProperty(vs,"__esModule",{value:!0});vs.ShowDocumentRequest=void 0;var Xg=Je(),Qg;(function(n){n.method="window/showDocument",n.messageDirection=Xg.MessageDirection.serverToClient,n.type=new Xg.ProtocolRequestType(n.method)})(Qg||(vs.ShowDocumentRequest=Qg={}))});var tm=E(ys=>{"use strict";Object.defineProperty(ys,"__esModule",{value:!0});ys.LinkedEditingRangeRequest=void 0;var Zg=Je(),em;(function(n){n.method="textDocument/linkedEditingRange",n.messageDirection=Zg.MessageDirection.clientToServer,n.type=new Zg.ProtocolRequestType(n.method)})(em||(ys.LinkedEditingRangeRequest=em={}))});var um=E(Et=>{"use strict";Object.defineProperty(Et,"__esModule",{value:!0});Et.WillDeleteFilesRequest=Et.DidDeleteFilesNotification=Et.DidRenameFilesNotification=Et.WillRenameFilesRequest=Et.DidCreateFilesNotification=Et.WillCreateFilesRequest=Et.FileOperationPatternKind=void 0;var ln=Je(),nm;(function(n){n.file="file",n.folder="folder"})(nm||(Et.FileOperationPatternKind=nm={}));var rm;(function(n){n.method="workspace/willCreateFiles",n.messageDirection=ln.MessageDirection.clientToServer,n.type=new ln.ProtocolRequestType(n.method)})(rm||(Et.WillCreateFilesRequest=rm={}));var im;(function(n){n.method="workspace/didCreateFiles",n.messageDirection=ln.MessageDirection.clientToServer,n.type=new ln.ProtocolNotificationType(n.method)})(im||(Et.DidCreateFilesNotification=im={}));var om;(function(n){n.method="workspace/willRenameFiles",n.messageDirection=ln.MessageDirection.clientToServer,n.type=new ln.ProtocolRequestType(n.method)})(om||(Et.WillRenameFilesRequest=om={}));var sm;(function(n){n.method="workspace/didRenameFiles",n.messageDirection=ln.MessageDirection.clientToServer,n.type=new ln.ProtocolNotificationType(n.method)})(sm||(Et.DidRenameFilesNotification=sm={}));var am;(function(n){n.method="workspace/didDeleteFiles",n.messageDirection=ln.MessageDirection.clientToServer,n.type=new ln.ProtocolNotificationType(n.method)})(am||(Et.DidDeleteFilesNotification=am={}));var cm;(function(n){n.method="workspace/willDeleteFiles",n.messageDirection=ln.MessageDirection.clientToServer,n.type=new ln.ProtocolRequestType(n.method)})(cm||(Et.WillDeleteFilesRequest=cm={}))});var hm=E(gr=>{"use strict";Object.defineProperty(gr,"__esModule",{value:!0});gr.MonikerRequest=gr.MonikerKind=gr.UniquenessLevel=void 0;var lm=Je(),dm;(function(n){n.document="document",n.project="project",n.group="group",n.scheme="scheme",n.global="global"})(dm||(gr.UniquenessLevel=dm={}));var fm;(function(n){n.$import="import",n.$export="export",n.local="local"})(fm||(gr.MonikerKind=fm={}));var pm;(function(n){n.method="textDocument/moniker",n.messageDirection=lm.MessageDirection.clientToServer,n.type=new lm.ProtocolRequestType(n.method)})(pm||(gr.MonikerRequest=pm={}))});var ym=E(mr=>{"use strict";Object.defineProperty(mr,"__esModule",{value:!0});mr.TypeHierarchySubtypesRequest=mr.TypeHierarchySupertypesRequest=mr.TypeHierarchyPrepareRequest=void 0;var si=Je(),gm;(function(n){n.method="textDocument/prepareTypeHierarchy",n.messageDirection=si.MessageDirection.clientToServer,n.type=new si.ProtocolRequestType(n.method)})(gm||(mr.TypeHierarchyPrepareRequest=gm={}));var mm;(function(n){n.method="typeHierarchy/supertypes",n.messageDirection=si.MessageDirection.clientToServer,n.type=new si.ProtocolRequestType(n.method)})(mm||(mr.TypeHierarchySupertypesRequest=mm={}));var vm;(function(n){n.method="typeHierarchy/subtypes",n.messageDirection=si.MessageDirection.clientToServer,n.type=new si.ProtocolRequestType(n.method)})(vm||(mr.TypeHierarchySubtypesRequest=vm={}))});var Cm=E(ai=>{"use strict";Object.defineProperty(ai,"__esModule",{value:!0});ai.InlineValueRefreshRequest=ai.InlineValueRequest=void 0;var bs=Je(),bm;(function(n){n.method="textDocument/inlineValue",n.messageDirection=bs.MessageDirection.clientToServer,n.type=new bs.ProtocolRequestType(n.method)})(bm||(ai.InlineValueRequest=bm={}));var wm;(function(n){n.method="workspace/inlineValue/refresh",n.messageDirection=bs.MessageDirection.serverToClient,n.type=new bs.ProtocolRequestType0(n.method)})(wm||(ai.InlineValueRefreshRequest=wm={}))});var Tm=E(vr=>{"use strict";Object.defineProperty(vr,"__esModule",{value:!0});vr.InlayHintRefreshRequest=vr.InlayHintResolveRequest=vr.InlayHintRequest=void 0;var ci=Je(),Dm;(function(n){n.method="textDocument/inlayHint",n.messageDirection=ci.MessageDirection.clientToServer,n.type=new ci.ProtocolRequestType(n.method)})(Dm||(vr.InlayHintRequest=Dm={}));var Sm;(function(n){n.method="inlayHint/resolve",n.messageDirection=ci.MessageDirection.clientToServer,n.type=new ci.ProtocolRequestType(n.method)})(Sm||(vr.InlayHintResolveRequest=Sm={}));var _m;(function(n){n.method="workspace/inlayHint/refresh",n.messageDirection=ci.MessageDirection.serverToClient,n.type=new ci.ProtocolRequestType0(n.method)})(_m||(vr.InlayHintRefreshRequest=_m={}))});var Im=E(dn=>{"use strict";Object.defineProperty(dn,"__esModule",{value:!0});dn.DiagnosticRefreshRequest=dn.WorkspaceDiagnosticRequest=dn.DocumentDiagnosticRequest=dn.DocumentDiagnosticReportKind=dn.DiagnosticServerCancellationData=void 0;var qm=Er(),l_=as(),ui=Je(),Rm;(function(n){function e(t){let r=t;return r&&l_.boolean(r.retriggerRequest)}n.is=e})(Rm||(dn.DiagnosticServerCancellationData=Rm={}));var Pm;(function(n){n.Full="full",n.Unchanged="unchanged"})(Pm||(dn.DocumentDiagnosticReportKind=Pm={}));var km;(function(n){n.method="textDocument/diagnostic",n.messageDirection=ui.MessageDirection.clientToServer,n.type=new ui.ProtocolRequestType(n.method),n.partialResult=new qm.ProgressType})(km||(dn.DocumentDiagnosticRequest=km={}));var Em;(function(n){n.method="workspace/diagnostic",n.messageDirection=ui.MessageDirection.clientToServer,n.type=new ui.ProtocolRequestType(n.method),n.partialResult=new qm.ProgressType})(Em||(dn.WorkspaceDiagnosticRequest=Em={}));var xm;(function(n){n.method="workspace/diagnostic/refresh",n.messageDirection=ui.MessageDirection.serverToClient,n.type=new ui.ProtocolRequestType0(n.method)})(xm||(dn.DiagnosticRefreshRequest=xm={}))});var jm=E(it=>{"use strict";Object.defineProperty(it,"__esModule",{value:!0});it.DidCloseNotebookDocumentNotification=it.DidSaveNotebookDocumentNotification=it.DidChangeNotebookDocumentNotification=it.NotebookCellArrayChange=it.DidOpenNotebookDocumentNotification=it.NotebookDocumentSyncRegistrationType=it.NotebookDocument=it.NotebookCell=it.ExecutionSummary=it.NotebookCellKind=void 0;var $i=ss(),_n=as(),$n=Je(),mu;(function(n){n.Markup=1,n.Code=2;function e(t){return t===1||t===2}n.is=e})(mu||(it.NotebookCellKind=mu={}));var vu;(function(n){function e(i,o){let s={executionOrder:i};return(o===!0||o===!1)&&(s.success=o),s}n.create=e;function t(i){let o=i;return _n.objectLiteral(o)&&$i.uinteger.is(o.executionOrder)&&(o.success===void 0||_n.boolean(o.success))}n.is=t;function r(i,o){return i===o?!0:i==null||o===null||o===void 0?!1:i.executionOrder===o.executionOrder&&i.success===o.success}n.equals=r})(vu||(it.ExecutionSummary=vu={}));var ws;(function(n){function e(o,s){return{kind:o,document:s}}n.create=e;function t(o){let s=o;return _n.objectLiteral(s)&&mu.is(s.kind)&&$i.DocumentUri.is(s.document)&&(s.metadata===void 0||_n.objectLiteral(s.metadata))}n.is=t;function r(o,s){let a=new Set;return o.document!==s.document&&a.add("document"),o.kind!==s.kind&&a.add("kind"),o.executionSummary!==s.executionSummary&&a.add("executionSummary"),(o.metadata!==void 0||s.metadata!==void 0)&&!i(o.metadata,s.metadata)&&a.add("metadata"),(o.executionSummary!==void 0||s.executionSummary!==void 0)&&!vu.equals(o.executionSummary,s.executionSummary)&&a.add("executionSummary"),a}n.diff=r;function i(o,s){if(o===s)return!0;if(o==null||s===null||s===void 0||typeof o!=typeof s||typeof o!="object")return!1;let a=Array.isArray(o),c=Array.isArray(s);if(a!==c)return!1;if(a&&c){if(o.length!==s.length)return!1;for(let u=0;u<o.length;u++)if(!i(o[u],s[u]))return!1}if(_n.objectLiteral(o)&&_n.objectLiteral(s)){let u=Object.keys(o),d=Object.keys(s);if(u.length!==d.length||(u.sort(),d.sort(),!i(u,d)))return!1;for(let g=0;g<u.length;g++){let m=u[g];if(!i(o[m],s[m]))return!1}}return!0}})(ws||(it.NotebookCell=ws={}));var Fm;(function(n){function e(r,i,o,s){return{uri:r,notebookType:i,version:o,cells:s}}n.create=e;function t(r){let i=r;return _n.objectLiteral(i)&&_n.string(i.uri)&&$i.integer.is(i.version)&&_n.typedArray(i.cells,ws.is)}n.is=t})(Fm||(it.NotebookDocument=Fm={}));var li;(function(n){n.method="notebookDocument/sync",n.messageDirection=$n.MessageDirection.clientToServer,n.type=new $n.RegistrationType(n.method)})(li||(it.NotebookDocumentSyncRegistrationType=li={}));var Om;(function(n){n.method="notebookDocument/didOpen",n.messageDirection=$n.MessageDirection.clientToServer,n.type=new $n.ProtocolNotificationType(n.method),n.registrationMethod=li.method})(Om||(it.DidOpenNotebookDocumentNotification=Om={}));var Mm;(function(n){function e(r){let i=r;return _n.objectLiteral(i)&&$i.uinteger.is(i.start)&&$i.uinteger.is(i.deleteCount)&&(i.cells===void 0||_n.typedArray(i.cells,ws.is))}n.is=e;function t(r,i,o){let s={start:r,deleteCount:i};return o!==void 0&&(s.cells=o),s}n.create=t})(Mm||(it.NotebookCellArrayChange=Mm={}));var Am;(function(n){n.method="notebookDocument/didChange",n.messageDirection=$n.MessageDirection.clientToServer,n.type=new $n.ProtocolNotificationType(n.method),n.registrationMethod=li.method})(Am||(it.DidChangeNotebookDocumentNotification=Am={}));var Lm;(function(n){n.method="notebookDocument/didSave",n.messageDirection=$n.MessageDirection.clientToServer,n.type=new $n.ProtocolNotificationType(n.method),n.registrationMethod=li.method})(Lm||(it.DidSaveNotebookDocumentNotification=Lm={}));var Nm;(function(n){n.method="notebookDocument/didClose",n.messageDirection=$n.MessageDirection.clientToServer,n.type=new $n.ProtocolNotificationType(n.method),n.registrationMethod=li.method})(Nm||(it.DidCloseNotebookDocumentNotification=Nm={}))});var Hm=E(Cs=>{"use strict";Object.defineProperty(Cs,"__esModule",{value:!0});Cs.InlineCompletionRequest=void 0;var $m=Je(),Um;(function(n){n.method="textDocument/inlineCompletion",n.messageDirection=$m.MessageDirection.clientToServer,n.type=new $m.ProtocolRequestType(n.method)})(Um||(Cs.InlineCompletionRequest=Um={}))});var ty=E(w=>{"use strict";Object.defineProperty(w,"__esModule",{value:!0});w.WorkspaceSymbolRequest=w.CodeActionResolveRequest=w.CodeActionRequest=w.DocumentSymbolRequest=w.DocumentHighlightRequest=w.ReferencesRequest=w.DefinitionRequest=w.SignatureHelpRequest=w.SignatureHelpTriggerKind=w.HoverRequest=w.CompletionResolveRequest=w.CompletionRequest=w.CompletionTriggerKind=w.PublishDiagnosticsNotification=w.WatchKind=w.RelativePattern=w.FileChangeType=w.DidChangeWatchedFilesNotification=w.WillSaveTextDocumentWaitUntilRequest=w.WillSaveTextDocumentNotification=w.TextDocumentSaveReason=w.DidSaveTextDocumentNotification=w.DidCloseTextDocumentNotification=w.DidChangeTextDocumentNotification=w.TextDocumentContentChangeEvent=w.DidOpenTextDocumentNotification=w.TextDocumentSyncKind=w.TelemetryEventNotification=w.LogMessageNotification=w.ShowMessageRequest=w.ShowMessageNotification=w.MessageType=w.DidChangeConfigurationNotification=w.ExitNotification=w.ShutdownRequest=w.InitializedNotification=w.InitializeErrorCodes=w.InitializeRequest=w.WorkDoneProgressOptions=w.TextDocumentRegistrationOptions=w.StaticRegistrationOptions=w.PositionEncodingKind=w.FailureHandlingKind=w.ResourceOperationKind=w.UnregistrationRequest=w.RegistrationRequest=w.DocumentSelector=w.NotebookCellTextDocumentFilter=w.NotebookDocumentFilter=w.TextDocumentFilter=void 0;w.MonikerRequest=w.MonikerKind=w.UniquenessLevel=w.WillDeleteFilesRequest=w.DidDeleteFilesNotification=w.WillRenameFilesRequest=w.DidRenameFilesNotification=w.WillCreateFilesRequest=w.DidCreateFilesNotification=w.FileOperationPatternKind=w.LinkedEditingRangeRequest=w.ShowDocumentRequest=w.SemanticTokensRegistrationType=w.SemanticTokensRefreshRequest=w.SemanticTokensRangeRequest=w.SemanticTokensDeltaRequest=w.SemanticTokensRequest=w.TokenFormat=w.CallHierarchyPrepareRequest=w.CallHierarchyOutgoingCallsRequest=w.CallHierarchyIncomingCallsRequest=w.WorkDoneProgressCancelNotification=w.WorkDoneProgressCreateRequest=w.WorkDoneProgress=w.SelectionRangeRequest=w.DeclarationRequest=w.FoldingRangeRefreshRequest=w.FoldingRangeRequest=w.ColorPresentationRequest=w.DocumentColorRequest=w.ConfigurationRequest=w.DidChangeWorkspaceFoldersNotification=w.WorkspaceFoldersRequest=w.TypeDefinitionRequest=w.ImplementationRequest=w.ApplyWorkspaceEditRequest=w.ExecuteCommandRequest=w.PrepareRenameRequest=w.RenameRequest=w.PrepareSupportDefaultBehavior=w.DocumentOnTypeFormattingRequest=w.DocumentRangesFormattingRequest=w.DocumentRangeFormattingRequest=w.DocumentFormattingRequest=w.DocumentLinkResolveRequest=w.DocumentLinkRequest=w.CodeLensRefreshRequest=w.CodeLensResolveRequest=w.CodeLensRequest=w.WorkspaceSymbolResolveRequest=void 0;w.InlineCompletionRequest=w.DidCloseNotebookDocumentNotification=w.DidSaveNotebookDocumentNotification=w.DidChangeNotebookDocumentNotification=w.NotebookCellArrayChange=w.DidOpenNotebookDocumentNotification=w.NotebookDocumentSyncRegistrationType=w.NotebookDocument=w.NotebookCell=w.ExecutionSummary=w.NotebookCellKind=w.DiagnosticRefreshRequest=w.WorkspaceDiagnosticRequest=w.DocumentDiagnosticRequest=w.DocumentDiagnosticReportKind=w.DiagnosticServerCancellationData=w.InlayHintRefreshRequest=w.InlayHintResolveRequest=w.InlayHintRequest=w.InlineValueRefreshRequest=w.InlineValueRequest=w.TypeHierarchySupertypesRequest=w.TypeHierarchySubtypesRequest=w.TypeHierarchyPrepareRequest=void 0;var H=Je(),Wm=ss(),vt=as(),d_=hg();Object.defineProperty(w,"ImplementationRequest",{enumerable:!0,get:function(){return d_.ImplementationRequest}});var f_=vg();Object.defineProperty(w,"TypeDefinitionRequest",{enumerable:!0,get:function(){return f_.TypeDefinitionRequest}});var Qv=wg();Object.defineProperty(w,"WorkspaceFoldersRequest",{enumerable:!0,get:function(){return Qv.WorkspaceFoldersRequest}});Object.defineProperty(w,"DidChangeWorkspaceFoldersNotification",{enumerable:!0,get:function(){return Qv.DidChangeWorkspaceFoldersNotification}});var p_=Sg();Object.defineProperty(w,"ConfigurationRequest",{enumerable:!0,get:function(){return p_.ConfigurationRequest}});var Yv=Rg();Object.defineProperty(w,"DocumentColorRequest",{enumerable:!0,get:function(){return Yv.DocumentColorRequest}});Object.defineProperty(w,"ColorPresentationRequest",{enumerable:!0,get:function(){return Yv.ColorPresentationRequest}});var Zv=Eg();Object.defineProperty(w,"FoldingRangeRequest",{enumerable:!0,get:function(){return Zv.FoldingRangeRequest}});Object.defineProperty(w,"FoldingRangeRefreshRequest",{enumerable:!0,get:function(){return Zv.FoldingRangeRefreshRequest}});var h_=Ig();Object.defineProperty(w,"DeclarationRequest",{enumerable:!0,get:function(){return h_.DeclarationRequest}});var g_=Mg();Object.defineProperty(w,"SelectionRangeRequest",{enumerable:!0,get:function(){return g_.SelectionRangeRequest}});var Du=jg();Object.defineProperty(w,"WorkDoneProgress",{enumerable:!0,get:function(){return Du.WorkDoneProgress}});Object.defineProperty(w,"WorkDoneProgressCreateRequest",{enumerable:!0,get:function(){return Du.WorkDoneProgressCreateRequest}});Object.defineProperty(w,"WorkDoneProgressCancelNotification",{enumerable:!0,get:function(){return Du.WorkDoneProgressCancelNotification}});var Su=Wg();Object.defineProperty(w,"CallHierarchyIncomingCallsRequest",{enumerable:!0,get:function(){return Su.CallHierarchyIncomingCallsRequest}});Object.defineProperty(w,"CallHierarchyOutgoingCallsRequest",{enumerable:!0,get:function(){return Su.CallHierarchyOutgoingCallsRequest}});Object.defineProperty(w,"CallHierarchyPrepareRequest",{enumerable:!0,get:function(){return Su.CallHierarchyPrepareRequest}});var di=Jg();Object.defineProperty(w,"TokenFormat",{enumerable:!0,get:function(){return di.TokenFormat}});Object.defineProperty(w,"SemanticTokensRequest",{enumerable:!0,get:function(){return di.SemanticTokensRequest}});Object.defineProperty(w,"SemanticTokensDeltaRequest",{enumerable:!0,get:function(){return di.SemanticTokensDeltaRequest}});Object.defineProperty(w,"SemanticTokensRangeRequest",{enumerable:!0,get:function(){return di.SemanticTokensRangeRequest}});Object.defineProperty(w,"SemanticTokensRefreshRequest",{enumerable:!0,get:function(){return di.SemanticTokensRefreshRequest}});Object.defineProperty(w,"SemanticTokensRegistrationType",{enumerable:!0,get:function(){return di.SemanticTokensRegistrationType}});var m_=Yg();Object.defineProperty(w,"ShowDocumentRequest",{enumerable:!0,get:function(){return m_.ShowDocumentRequest}});var v_=tm();Object.defineProperty(w,"LinkedEditingRangeRequest",{enumerable:!0,get:function(){return v_.LinkedEditingRangeRequest}});var xr=um();Object.defineProperty(w,"FileOperationPatternKind",{enumerable:!0,get:function(){return xr.FileOperationPatternKind}});Object.defineProperty(w,"DidCreateFilesNotification",{enumerable:!0,get:function(){return xr.DidCreateFilesNotification}});Object.defineProperty(w,"WillCreateFilesRequest",{enumerable:!0,get:function(){return xr.WillCreateFilesRequest}});Object.defineProperty(w,"DidRenameFilesNotification",{enumerable:!0,get:function(){return xr.DidRenameFilesNotification}});Object.defineProperty(w,"WillRenameFilesRequest",{enumerable:!0,get:function(){return xr.WillRenameFilesRequest}});Object.defineProperty(w,"DidDeleteFilesNotification",{enumerable:!0,get:function(){return xr.DidDeleteFilesNotification}});Object.defineProperty(w,"WillDeleteFilesRequest",{enumerable:!0,get:function(){return xr.WillDeleteFilesRequest}});var _u=hm();Object.defineProperty(w,"UniquenessLevel",{enumerable:!0,get:function(){return _u.UniquenessLevel}});Object.defineProperty(w,"MonikerKind",{enumerable:!0,get:function(){return _u.MonikerKind}});Object.defineProperty(w,"MonikerRequest",{enumerable:!0,get:function(){return _u.MonikerRequest}});var Tu=ym();Object.defineProperty(w,"TypeHierarchyPrepareRequest",{enumerable:!0,get:function(){return Tu.TypeHierarchyPrepareRequest}});Object.defineProperty(w,"TypeHierarchySubtypesRequest",{enumerable:!0,get:function(){return Tu.TypeHierarchySubtypesRequest}});Object.defineProperty(w,"TypeHierarchySupertypesRequest",{enumerable:!0,get:function(){return Tu.TypeHierarchySupertypesRequest}});var ey=Cm();Object.defineProperty(w,"InlineValueRequest",{enumerable:!0,get:function(){return ey.InlineValueRequest}});Object.defineProperty(w,"InlineValueRefreshRequest",{enumerable:!0,get:function(){return ey.InlineValueRefreshRequest}});var Ru=Tm();Object.defineProperty(w,"InlayHintRequest",{enumerable:!0,get:function(){return Ru.InlayHintRequest}});Object.defineProperty(w,"InlayHintResolveRequest",{enumerable:!0,get:function(){return Ru.InlayHintResolveRequest}});Object.defineProperty(w,"InlayHintRefreshRequest",{enumerable:!0,get:function(){return Ru.InlayHintRefreshRequest}});var Ui=Im();Object.defineProperty(w,"DiagnosticServerCancellationData",{enumerable:!0,get:function(){return Ui.DiagnosticServerCancellationData}});Object.defineProperty(w,"DocumentDiagnosticReportKind",{enumerable:!0,get:function(){return Ui.DocumentDiagnosticReportKind}});Object.defineProperty(w,"DocumentDiagnosticRequest",{enumerable:!0,get:function(){return Ui.DocumentDiagnosticRequest}});Object.defineProperty(w,"WorkspaceDiagnosticRequest",{enumerable:!0,get:function(){return Ui.WorkspaceDiagnosticRequest}});Object.defineProperty(w,"DiagnosticRefreshRequest",{enumerable:!0,get:function(){return Ui.DiagnosticRefreshRequest}});var Un=jm();Object.defineProperty(w,"NotebookCellKind",{enumerable:!0,get:function(){return Un.NotebookCellKind}});Object.defineProperty(w,"ExecutionSummary",{enumerable:!0,get:function(){return Un.ExecutionSummary}});Object.defineProperty(w,"NotebookCell",{enumerable:!0,get:function(){return Un.NotebookCell}});Object.defineProperty(w,"NotebookDocument",{enumerable:!0,get:function(){return Un.NotebookDocument}});Object.defineProperty(w,"NotebookDocumentSyncRegistrationType",{enumerable:!0,get:function(){return Un.NotebookDocumentSyncRegistrationType}});Object.defineProperty(w,"DidOpenNotebookDocumentNotification",{enumerable:!0,get:function(){return Un.DidOpenNotebookDocumentNotification}});Object.defineProperty(w,"NotebookCellArrayChange",{enumerable:!0,get:function(){return Un.NotebookCellArrayChange}});Object.defineProperty(w,"DidChangeNotebookDocumentNotification",{enumerable:!0,get:function(){return Un.DidChangeNotebookDocumentNotification}});Object.defineProperty(w,"DidSaveNotebookDocumentNotification",{enumerable:!0,get:function(){return Un.DidSaveNotebookDocumentNotification}});Object.defineProperty(w,"DidCloseNotebookDocumentNotification",{enumerable:!0,get:function(){return Un.DidCloseNotebookDocumentNotification}});var y_=Hm();Object.defineProperty(w,"InlineCompletionRequest",{enumerable:!0,get:function(){return y_.InlineCompletionRequest}});var yu;(function(n){function e(t){let r=t;return vt.string(r)||vt.string(r.language)||vt.string(r.scheme)||vt.string(r.pattern)}n.is=e})(yu||(w.TextDocumentFilter=yu={}));var bu;(function(n){function e(t){let r=t;return vt.objectLiteral(r)&&(vt.string(r.notebookType)||vt.string(r.scheme)||vt.string(r.pattern))}n.is=e})(bu||(w.NotebookDocumentFilter=bu={}));var wu;(function(n){function e(t){let r=t;return vt.objectLiteral(r)&&(vt.string(r.notebook)||bu.is(r.notebook))&&(r.language===void 0||vt.string(r.language))}n.is=e})(wu||(w.NotebookCellTextDocumentFilter=wu={}));var Cu;(function(n){function e(t){if(!Array.isArray(t))return!1;for(let r of t)if(!vt.string(r)&&!yu.is(r)&&!wu.is(r))return!1;return!0}n.is=e})(Cu||(w.DocumentSelector=Cu={}));var Km;(function(n){n.method="client/registerCapability",n.messageDirection=H.MessageDirection.serverToClient,n.type=new H.ProtocolRequestType(n.method)})(Km||(w.RegistrationRequest=Km={}));var Vm;(function(n){n.method="client/unregisterCapability",n.messageDirection=H.MessageDirection.serverToClient,n.type=new H.ProtocolRequestType(n.method)})(Vm||(w.UnregistrationRequest=Vm={}));var zm;(function(n){n.Create="create",n.Rename="rename",n.Delete="delete"})(zm||(w.ResourceOperationKind=zm={}));var Bm;(function(n){n.Abort="abort",n.Transactional="transactional",n.TextOnlyTransactional="textOnlyTransactional",n.Undo="undo"})(Bm||(w.FailureHandlingKind=Bm={}));var Gm;(function(n){n.UTF8="utf-8",n.UTF16="utf-16",n.UTF32="utf-32"})(Gm||(w.PositionEncodingKind=Gm={}));var Jm;(function(n){function e(t){let r=t;return r&&vt.string(r.id)&&r.id.length>0}n.hasId=e})(Jm||(w.StaticRegistrationOptions=Jm={}));var Xm;(function(n){function e(t){let r=t;return r&&(r.documentSelector===null||Cu.is(r.documentSelector))}n.is=e})(Xm||(w.TextDocumentRegistrationOptions=Xm={}));var Qm;(function(n){function e(r){let i=r;return vt.objectLiteral(i)&&(i.workDoneProgress===void 0||vt.boolean(i.workDoneProgress))}n.is=e;function t(r){let i=r;return i&&vt.boolean(i.workDoneProgress)}n.hasWorkDoneProgress=t})(Qm||(w.WorkDoneProgressOptions=Qm={}));var Ym;(function(n){n.method="initialize",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Ym||(w.InitializeRequest=Ym={}));var Zm;(function(n){n.unknownProtocolVersion=1})(Zm||(w.InitializeErrorCodes=Zm={}));var ev;(function(n){n.method="initialized",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolNotificationType(n.method)})(ev||(w.InitializedNotification=ev={}));var tv;(function(n){n.method="shutdown",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType0(n.method)})(tv||(w.ShutdownRequest=tv={}));var nv;(function(n){n.method="exit",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolNotificationType0(n.method)})(nv||(w.ExitNotification=nv={}));var rv;(function(n){n.method="workspace/didChangeConfiguration",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolNotificationType(n.method)})(rv||(w.DidChangeConfigurationNotification=rv={}));var iv;(function(n){n.Error=1,n.Warning=2,n.Info=3,n.Log=4,n.Debug=5})(iv||(w.MessageType=iv={}));var ov;(function(n){n.method="window/showMessage",n.messageDirection=H.MessageDirection.serverToClient,n.type=new H.ProtocolNotificationType(n.method)})(ov||(w.ShowMessageNotification=ov={}));var sv;(function(n){n.method="window/showMessageRequest",n.messageDirection=H.MessageDirection.serverToClient,n.type=new H.ProtocolRequestType(n.method)})(sv||(w.ShowMessageRequest=sv={}));var av;(function(n){n.method="window/logMessage",n.messageDirection=H.MessageDirection.serverToClient,n.type=new H.ProtocolNotificationType(n.method)})(av||(w.LogMessageNotification=av={}));var cv;(function(n){n.method="telemetry/event",n.messageDirection=H.MessageDirection.serverToClient,n.type=new H.ProtocolNotificationType(n.method)})(cv||(w.TelemetryEventNotification=cv={}));var uv;(function(n){n.None=0,n.Full=1,n.Incremental=2})(uv||(w.TextDocumentSyncKind=uv={}));var lv;(function(n){n.method="textDocument/didOpen",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolNotificationType(n.method)})(lv||(w.DidOpenTextDocumentNotification=lv={}));var dv;(function(n){function e(r){let i=r;return i!=null&&typeof i.text=="string"&&i.range!==void 0&&(i.rangeLength===void 0||typeof i.rangeLength=="number")}n.isIncremental=e;function t(r){let i=r;return i!=null&&typeof i.text=="string"&&i.range===void 0&&i.rangeLength===void 0}n.isFull=t})(dv||(w.TextDocumentContentChangeEvent=dv={}));var fv;(function(n){n.method="textDocument/didChange",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolNotificationType(n.method)})(fv||(w.DidChangeTextDocumentNotification=fv={}));var pv;(function(n){n.method="textDocument/didClose",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolNotificationType(n.method)})(pv||(w.DidCloseTextDocumentNotification=pv={}));var hv;(function(n){n.method="textDocument/didSave",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolNotificationType(n.method)})(hv||(w.DidSaveTextDocumentNotification=hv={}));var gv;(function(n){n.Manual=1,n.AfterDelay=2,n.FocusOut=3})(gv||(w.TextDocumentSaveReason=gv={}));var mv;(function(n){n.method="textDocument/willSave",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolNotificationType(n.method)})(mv||(w.WillSaveTextDocumentNotification=mv={}));var vv;(function(n){n.method="textDocument/willSaveWaitUntil",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(vv||(w.WillSaveTextDocumentWaitUntilRequest=vv={}));var yv;(function(n){n.method="workspace/didChangeWatchedFiles",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolNotificationType(n.method)})(yv||(w.DidChangeWatchedFilesNotification=yv={}));var bv;(function(n){n.Created=1,n.Changed=2,n.Deleted=3})(bv||(w.FileChangeType=bv={}));var wv;(function(n){function e(t){let r=t;return vt.objectLiteral(r)&&(Wm.URI.is(r.baseUri)||Wm.WorkspaceFolder.is(r.baseUri))&&vt.string(r.pattern)}n.is=e})(wv||(w.RelativePattern=wv={}));var Cv;(function(n){n.Create=1,n.Change=2,n.Delete=4})(Cv||(w.WatchKind=Cv={}));var Dv;(function(n){n.method="textDocument/publishDiagnostics",n.messageDirection=H.MessageDirection.serverToClient,n.type=new H.ProtocolNotificationType(n.method)})(Dv||(w.PublishDiagnosticsNotification=Dv={}));var Sv;(function(n){n.Invoked=1,n.TriggerCharacter=2,n.TriggerForIncompleteCompletions=3})(Sv||(w.CompletionTriggerKind=Sv={}));var _v;(function(n){n.method="textDocument/completion",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(_v||(w.CompletionRequest=_v={}));var Tv;(function(n){n.method="completionItem/resolve",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Tv||(w.CompletionResolveRequest=Tv={}));var Rv;(function(n){n.method="textDocument/hover",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Rv||(w.HoverRequest=Rv={}));var Pv;(function(n){n.Invoked=1,n.TriggerCharacter=2,n.ContentChange=3})(Pv||(w.SignatureHelpTriggerKind=Pv={}));var kv;(function(n){n.method="textDocument/signatureHelp",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(kv||(w.SignatureHelpRequest=kv={}));var Ev;(function(n){n.method="textDocument/definition",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Ev||(w.DefinitionRequest=Ev={}));var xv;(function(n){n.method="textDocument/references",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(xv||(w.ReferencesRequest=xv={}));var qv;(function(n){n.method="textDocument/documentHighlight",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(qv||(w.DocumentHighlightRequest=qv={}));var Iv;(function(n){n.method="textDocument/documentSymbol",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Iv||(w.DocumentSymbolRequest=Iv={}));var Fv;(function(n){n.method="textDocument/codeAction",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Fv||(w.CodeActionRequest=Fv={}));var Ov;(function(n){n.method="codeAction/resolve",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Ov||(w.CodeActionResolveRequest=Ov={}));var Mv;(function(n){n.method="workspace/symbol",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Mv||(w.WorkspaceSymbolRequest=Mv={}));var Av;(function(n){n.method="workspaceSymbol/resolve",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Av||(w.WorkspaceSymbolResolveRequest=Av={}));var Lv;(function(n){n.method="textDocument/codeLens",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Lv||(w.CodeLensRequest=Lv={}));var Nv;(function(n){n.method="codeLens/resolve",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Nv||(w.CodeLensResolveRequest=Nv={}));var jv;(function(n){n.method="workspace/codeLens/refresh",n.messageDirection=H.MessageDirection.serverToClient,n.type=new H.ProtocolRequestType0(n.method)})(jv||(w.CodeLensRefreshRequest=jv={}));var $v;(function(n){n.method="textDocument/documentLink",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})($v||(w.DocumentLinkRequest=$v={}));var Uv;(function(n){n.method="documentLink/resolve",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Uv||(w.DocumentLinkResolveRequest=Uv={}));var Hv;(function(n){n.method="textDocument/formatting",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Hv||(w.DocumentFormattingRequest=Hv={}));var Wv;(function(n){n.method="textDocument/rangeFormatting",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Wv||(w.DocumentRangeFormattingRequest=Wv={}));var Kv;(function(n){n.method="textDocument/rangesFormatting",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Kv||(w.DocumentRangesFormattingRequest=Kv={}));var Vv;(function(n){n.method="textDocument/onTypeFormatting",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Vv||(w.DocumentOnTypeFormattingRequest=Vv={}));var zv;(function(n){n.Identifier=1})(zv||(w.PrepareSupportDefaultBehavior=zv={}));var Bv;(function(n){n.method="textDocument/rename",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Bv||(w.RenameRequest=Bv={}));var Gv;(function(n){n.method="textDocument/prepareRename",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Gv||(w.PrepareRenameRequest=Gv={}));var Jv;(function(n){n.method="workspace/executeCommand",n.messageDirection=H.MessageDirection.clientToServer,n.type=new H.ProtocolRequestType(n.method)})(Jv||(w.ExecuteCommandRequest=Jv={}));var Xv;(function(n){n.method="workspace/applyEdit",n.messageDirection=H.MessageDirection.serverToClient,n.type=new H.ProtocolRequestType("workspace/applyEdit")})(Xv||(w.ApplyWorkspaceEditRequest=Xv={}))});var ry=E(Ds=>{"use strict";Object.defineProperty(Ds,"__esModule",{value:!0});Ds.createProtocolConnection=void 0;var ny=Er();function b_(n,e,t,r){return ny.ConnectionStrategy.is(r)&&(r={connectionStrategy:r}),(0,ny.createMessageConnection)(n,e,t,r)}Ds.createProtocolConnection=b_});var oy=E(Kt=>{"use strict";var w_=Kt&&Kt.__createBinding||(Object.create?function(n,e,t,r){r===void 0&&(r=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[t]}}),Object.defineProperty(n,r,i)}:function(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]}),Ss=Kt&&Kt.__exportStar||function(n,e){for(var t in n)t!=="default"&&!Object.prototype.hasOwnProperty.call(e,t)&&w_(e,n,t)};Object.defineProperty(Kt,"__esModule",{value:!0});Kt.LSPErrorCodes=Kt.createProtocolConnection=void 0;Ss(Er(),Kt);Ss(ss(),Kt);Ss(Je(),Kt);Ss(ty(),Kt);var C_=ry();Object.defineProperty(Kt,"createProtocolConnection",{enumerable:!0,get:function(){return C_.createProtocolConnection}});var iy;(function(n){n.lspReservedErrorRangeStart=-32899,n.RequestFailed=-32803,n.ServerCancelled=-32802,n.ContentModified=-32801,n.RequestCancelled=-32800,n.lspReservedErrorRangeEnd=-32800})(iy||(Kt.LSPErrorCodes=iy={}))});var fe=E(Hn=>{"use strict";var D_=Hn&&Hn.__createBinding||(Object.create?function(n,e,t,r){r===void 0&&(r=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[t]}}),Object.defineProperty(n,r,i)}:function(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]}),sy=Hn&&Hn.__exportStar||function(n,e){for(var t in n)t!=="default"&&!Object.prototype.hasOwnProperty.call(e,t)&&D_(e,n,t)};Object.defineProperty(Hn,"__esModule",{value:!0});Hn.createProtocolConnection=void 0;var S_=lu();sy(lu(),Hn);sy(oy(),Hn);function __(n,e,t,r){return(0,S_.createMessageConnection)(n,e,t,r)}Hn.createProtocolConnection=__});var _s=E(xt=>{"use strict";Object.defineProperty(xt,"__esModule",{value:!0});xt.forEach=xt.mapAsync=xt.map=xt.clearTestMode=xt.setTestMode=xt.Semaphore=xt.Delayer=void 0;var Wi=fe(),Pu=class{constructor(e){this.defaultDelay=e,this.timeout=void 0,this.completionPromise=void 0,this.onSuccess=void 0,this.task=void 0}trigger(e,t=this.defaultDelay){return this.task=e,t>=0&&this.cancelTimeout(),this.completionPromise||(this.completionPromise=new Promise(r=>{this.onSuccess=r}).then(()=>{this.completionPromise=void 0,this.onSuccess=void 0;var r=this.task();return this.task=void 0,r})),(t>=0||this.timeout===void 0)&&(this.timeout=(0,Wi.RAL)().timer.setTimeout(()=>{this.timeout=void 0,this.onSuccess(void 0)},t>=0?t:this.defaultDelay)),this.completionPromise}forceDelivery(){if(!this.completionPromise)return;this.cancelTimeout();let e=this.task();return this.completionPromise=void 0,this.onSuccess=void 0,this.task=void 0,e}isTriggered(){return this.timeout!==void 0}cancel(){this.cancelTimeout(),this.completionPromise=void 0}cancelTimeout(){this.timeout!==void 0&&(this.timeout.dispose(),this.timeout=void 0)}};xt.Delayer=Pu;var ku=class{constructor(e=1){if(e<=0)throw new Error("Capacity must be greater than 0");this._capacity=e,this._active=0,this._waiting=[]}lock(e){return new Promise((t,r)=>{this._waiting.push({thunk:e,resolve:t,reject:r}),this.runNext()})}get active(){return this._active}runNext(){this._waiting.length===0||this._active===this._capacity||(0,Wi.RAL)().timer.setImmediate(()=>this.doRunNext())}doRunNext(){if(this._waiting.length===0||this._active===this._capacity)return;let e=this._waiting.shift();if(this._active++,this._active>this._capacity)throw new Error("To many thunks active");try{let t=e.thunk();t instanceof Promise?t.then(r=>{this._active--,e.resolve(r),this.runNext()},r=>{this._active--,e.reject(r),this.runNext()}):(this._active--,e.resolve(t),this.runNext())}catch(t){this._active--,e.reject(t),this.runNext()}}};xt.Semaphore=ku;var Eu=!1;function T_(){Eu=!0}xt.setTestMode=T_;function R_(){Eu=!1}xt.clearTestMode=R_;var ay=15,Hi=class{constructor(e=ay){this.yieldAfter=Eu===!0?Math.max(e,2):Math.max(e,ay),this.startTime=Date.now(),this.counter=0,this.total=0,this.counterInterval=1}start(){this.counter=0,this.total=0,this.counterInterval=1,this.startTime=Date.now()}shouldYield(){if(++this.counter>=this.counterInterval){let e=Date.now()-this.startTime,t=Math.max(0,this.yieldAfter-e);if(this.total+=this.counter,this.counter=0,e>=this.yieldAfter||t<=1)return this.counterInterval=1,this.total=0,!0;switch(e){case 0:case 1:this.counterInterval=this.total*2;break}}return!1}};async function P_(n,e,t,r){if(n.length===0)return[];let i=new Array(n.length),o=new Hi(r?.yieldAfter);function s(c){o.start();for(let u=c;u<n.length;u++)if(i[u]=e(n[u]),o.shouldYield())return r?.yieldCallback&&r.yieldCallback(),u+1;return-1}let a=s(0);for(;a!==-1&&!(t!==void 0&&t.isCancellationRequested);)a=await new Promise(c=>{(0,Wi.RAL)().timer.setImmediate(()=>{c(s(a))})});return i}xt.map=P_;async function k_(n,e,t,r){if(n.length===0)return[];let i=new Array(n.length),o=new Hi(r?.yieldAfter);async function s(c){o.start();for(let u=c;u<n.length;u++)if(i[u]=await e(n[u],t),o.shouldYield())return r?.yieldCallback&&r.yieldCallback(),u+1;return-1}let a=await s(0);for(;a!==-1&&!(t!==void 0&&t.isCancellationRequested);)a=await new Promise(c=>{(0,Wi.RAL)().timer.setImmediate(()=>{c(s(a))})});return i}xt.mapAsync=k_;async function E_(n,e,t,r){if(n.length===0)return;let i=new Hi(r?.yieldAfter);function o(a){i.start();for(let c=a;c<n.length;c++)if(e(n[c]),i.shouldYield())return r?.yieldCallback&&r.yieldCallback(),c+1;return-1}let s=o(0);for(;s!==-1&&!(t!==void 0&&t.isCancellationRequested);)s=await new Promise(a=>{(0,Wi.RAL)().timer.setImmediate(()=>{a(o(s))})})}xt.forEach=E_});var Iu=E(qu=>{"use strict";Object.defineProperty(qu,"__esModule",{value:!0});var x_=require("vscode"),xu=class extends x_.CompletionItem{constructor(e){super(e)}};qu.default=xu});var Mu=E(Ou=>{"use strict";Object.defineProperty(Ou,"__esModule",{value:!0});var q_=require("vscode"),Fu=class extends q_.CodeLens{constructor(e){super(e)}};Ou.default=Fu});var Nu=E(Lu=>{"use strict";Object.defineProperty(Lu,"__esModule",{value:!0});var I_=require("vscode"),Au=class extends I_.DocumentLink{constructor(e,t){super(e,t)}};Lu.default=Au});var Uu=E($u=>{"use strict";Object.defineProperty($u,"__esModule",{value:!0});var F_=require("vscode"),ju=class extends F_.CodeAction{constructor(e,t){super(e),this.data=t}};$u.default=ju});var Ku=E(fi=>{"use strict";Object.defineProperty(fi,"__esModule",{value:!0});fi.ProtocolDiagnostic=fi.DiagnosticCode=void 0;var O_=require("vscode"),Hu=un(),cy;(function(n){function e(t){let r=t;return r!=null&&(Hu.number(r.value)||Hu.string(r.value))&&Hu.string(r.target)}n.is=e})(cy||(fi.DiagnosticCode=cy={}));var Wu=class extends O_.Diagnostic{constructor(e,t,r,i){super(e,t,r),this.data=i,this.hasDiagnosticCode=!1}};fi.ProtocolDiagnostic=Wu});var Bu=E(zu=>{"use strict";Object.defineProperty(zu,"__esModule",{value:!0});var M_=require("vscode"),Vu=class extends M_.CallHierarchyItem{constructor(e,t,r,i,o,s,a){super(e,t,r,i,o,s),a!==void 0&&(this.data=a)}};zu.default=Vu});var Xu=E(Ju=>{"use strict";Object.defineProperty(Ju,"__esModule",{value:!0});var A_=require("vscode"),Gu=class extends A_.TypeHierarchyItem{constructor(e,t,r,i,o,s,a){super(e,t,r,i,o,s),a!==void 0&&(this.data=a)}};Ju.default=Gu});var Zu=E(Yu=>{"use strict";Object.defineProperty(Yu,"__esModule",{value:!0});var Ts=require("vscode"),Qu=class extends Ts.SymbolInformation{constructor(e,t,r,i,o){let s=!(i instanceof Ts.Uri);super(e,t,r,s?i:new Ts.Location(i,new Ts.Range(0,0,0,0))),this.hasRange=s,o!==void 0&&(this.data=o)}};Yu.default=Qu});var nl=E(tl=>{"use strict";Object.defineProperty(tl,"__esModule",{value:!0});var L_=require("vscode"),el=class extends L_.InlayHint{constructor(e,t,r){super(e,t,r)}};tl.default=el});var fy=E(Rs=>{"use strict";Object.defineProperty(Rs,"__esModule",{value:!0});Rs.createConverter=void 0;var dt=require("vscode"),he=fe(),qr=un(),uy=_s(),N_=Iu(),j_=Mu(),$_=Nu(),ly=Uu(),dy=Ku(),U_=Bu(),H_=Xu(),W_=Zu(),K_=nl(),rl;(function(n){function e(t){let r=t;return r&&!!r.inserting&&!!r.replacing}n.is=e})(rl||(rl={}));function V_(n){let t=n||(p=>p.toString());function r(p){return t(p)}function i(p){return{uri:t(p.uri)}}function o(p){return{uri:t(p.uri),languageId:p.languageId,version:p.version,text:p.getText()}}function s(p){return{uri:t(p.uri),version:p.version}}function a(p){return{textDocument:o(p)}}function c(p){let x=p;return!!x.document&&!!x.contentChanges}function u(p){let x=p;return!!x.uri&&!!x.version}function d(p,x,Y){if(u(p))return{textDocument:{uri:t(p.uri),version:p.version},contentChanges:[{text:p.getText()}]};if(c(p)){let Fe=x,R=Y;return{textDocument:{uri:t(Fe),version:R},contentChanges:p.contentChanges.map(D=>{let S=D.range;return{range:{start:{line:S.start.line,character:S.start.character},end:{line:S.end.line,character:S.end.character}},rangeLength:D.rangeLength,text:D.text}})}}else throw Error("Unsupported text document change parameter")}function g(p){return{textDocument:i(p)}}function m(p,x=!1){let Y={textDocument:i(p)};return x&&(Y.text=p.getText()),Y}function y(p){switch(p){case dt.TextDocumentSaveReason.Manual:return he.TextDocumentSaveReason.Manual;case dt.TextDocumentSaveReason.AfterDelay:return he.TextDocumentSaveReason.AfterDelay;case dt.TextDocumentSaveReason.FocusOut:return he.TextDocumentSaveReason.FocusOut}return he.TextDocumentSaveReason.Manual}function v(p){return{textDocument:i(p.document),reason:y(p.reason)}}function T(p){return{files:p.files.map(x=>({uri:t(x)}))}}function P(p){return{files:p.files.map(x=>({oldUri:t(x.oldUri),newUri:t(x.newUri)}))}}function q(p){return{files:p.files.map(x=>({uri:t(x)}))}}function L(p){return{files:p.files.map(x=>({uri:t(x)}))}}function N(p){return{files:p.files.map(x=>({oldUri:t(x.oldUri),newUri:t(x.newUri)}))}}function K(p){return{files:p.files.map(x=>({uri:t(x)}))}}function te(p,x){return{textDocument:i(p),position:pe(x)}}function Z(p){switch(p){case dt.CompletionTriggerKind.TriggerCharacter:return he.CompletionTriggerKind.TriggerCharacter;case dt.CompletionTriggerKind.TriggerForIncompleteCompletions:return he.CompletionTriggerKind.TriggerForIncompleteCompletions;default:return he.CompletionTriggerKind.Invoked}}function V(p,x,Y){return{textDocument:i(p),position:pe(x),context:{triggerKind:Z(Y.triggerKind),triggerCharacter:Y.triggerCharacter}}}function ne(p){switch(p){case dt.SignatureHelpTriggerKind.Invoke:return he.SignatureHelpTriggerKind.Invoked;case dt.SignatureHelpTriggerKind.TriggerCharacter:return he.SignatureHelpTriggerKind.TriggerCharacter;case dt.SignatureHelpTriggerKind.ContentChange:return he.SignatureHelpTriggerKind.ContentChange}}function ce(p){return{label:p.label}}function Ne(p){return p.map(ce)}function U(p){return{label:p.label,parameters:Ne(p.parameters)}}function I(p){return p.map(U)}function J(p){return p===void 0?p:{signatures:I(p.signatures),activeSignature:p.activeSignature,activeParameter:p.activeParameter}}function B(p,x,Y){return{textDocument:i(p),position:pe(x),context:{isRetrigger:Y.isRetrigger,triggerCharacter:Y.triggerCharacter,triggerKind:ne(Y.triggerKind),activeSignatureHelp:J(Y.activeSignatureHelp)}}}function pe(p){return{line:p.line,character:p.character}}function ie(p){return p==null?p:{line:p.line>he.uinteger.MAX_VALUE?he.uinteger.MAX_VALUE:p.line,character:p.character>he.uinteger.MAX_VALUE?he.uinteger.MAX_VALUE:p.character}}function oe(p,x){return uy.map(p,ie,x)}function st(p){return p.map(ie)}function be(p){return p==null?p:{start:ie(p.start),end:ie(p.end)}}function Re(p){return p.map(be)}function ct(p){return p==null?p:he.Location.create(r(p.uri),be(p.range))}function Ct(p){switch(p){case dt.DiagnosticSeverity.Error:return he.DiagnosticSeverity.Error;case dt.DiagnosticSeverity.Warning:return he.DiagnosticSeverity.Warning;case dt.DiagnosticSeverity.Information:return he.DiagnosticSeverity.Information;case dt.DiagnosticSeverity.Hint:return he.DiagnosticSeverity.Hint}}function nr(p){if(!p)return;let x=[];for(let Y of p){let Fe=En(Y);Fe!==void 0&&x.push(Fe)}return x.length>0?x:void 0}function En(p){switch(p){case dt.DiagnosticTag.Unnecessary:return he.DiagnosticTag.Unnecessary;case dt.DiagnosticTag.Deprecated:return he.DiagnosticTag.Deprecated;default:return}}function xn(p){return{message:p.message,location:ct(p.location)}}function Kn(p){return p.map(xn)}function rr(p){if(p!=null)return qr.number(p)||qr.string(p)?p:{value:p.value,target:r(p.target)}}function qn(p){let x=he.Diagnostic.create(be(p.range),p.message),Y=p instanceof dy.ProtocolDiagnostic?p:void 0;Y!==void 0&&Y.data!==void 0&&(x.data=Y.data);let Fe=rr(p.code);return dy.DiagnosticCode.is(Fe)?Y!==void 0&&Y.hasDiagnosticCode?x.code=Fe:(x.code=Fe.value,x.codeDescription={href:Fe.target}):x.code=Fe,qr.number(p.severity)&&(x.severity=Ct(p.severity)),Array.isArray(p.tags)&&(x.tags=nr(p.tags)),p.relatedInformation&&(x.relatedInformation=Kn(p.relatedInformation)),p.source&&(x.source=p.source),x}function mn(p,x){return p==null?p:uy.map(p,qn,x)}function vn(p){return p==null?p:p.map(qn)}function In(p,x){switch(p){case"$string":return x;case he.MarkupKind.PlainText:return{kind:p,value:x};case he.MarkupKind.Markdown:return{kind:p,value:x.value};default:return`Unsupported Markup content received. Kind is: ${p}`}}function ut(p){switch(p){case dt.CompletionItemTag.Deprecated:return he.CompletionItemTag.Deprecated}}function Vn(p){if(p===void 0)return p;let x=[];for(let Y of p){let Fe=ut(Y);Fe!==void 0&&x.push(Fe)}return x}function yn(p,x){return x!==void 0?x:p+1}function rn(p,x=!1){let Y,Fe;qr.string(p.label)?Y=p.label:(Y=p.label.label,x&&(p.label.detail!==void 0||p.label.description!==void 0)&&(Fe={detail:p.label.detail,description:p.label.description}));let R={label:Y};Fe!==void 0&&(R.labelDetails=Fe);let h=p instanceof N_.default?p:void 0;p.detail&&(R.detail=p.detail),p.documentation&&(!h||h.documentationFormat==="$string"?R.documentation=p.documentation:R.documentation=In(h.documentationFormat,p.documentation)),p.filterText&&(R.filterText=p.filterText),ir(R,p),qr.number(p.kind)&&(R.kind=yn(p.kind,h&&h.originalItemKind)),p.sortText&&(R.sortText=p.sortText),p.additionalTextEdits&&(R.additionalTextEdits=at(p.additionalTextEdits)),p.commitCharacters&&(R.commitCharacters=p.commitCharacters.slice()),p.command&&(R.command=G(p.command)),(p.preselect===!0||p.preselect===!1)&&(R.preselect=p.preselect);let D=Vn(p.tags);if(h){if(h.data!==void 0&&(R.data=h.data),h.deprecated===!0||h.deprecated===!1){if(h.deprecated===!0&&D!==void 0&&D.length>0){let S=D.indexOf(dt.CompletionItemTag.Deprecated);S!==-1&&D.splice(S,1)}R.deprecated=h.deprecated}h.insertTextMode!==void 0&&(R.insertTextMode=h.insertTextMode)}return D!==void 0&&D.length>0&&(R.tags=D),R.insertTextMode===void 0&&p.keepWhitespace===!0&&(R.insertTextMode=he.InsertTextMode.adjustIndentation),R}function ir(p,x){let Y=he.InsertTextFormat.PlainText,Fe,R;x.textEdit?(Fe=x.textEdit.newText,R=x.textEdit.range):x.insertText instanceof dt.SnippetString?(Y=he.InsertTextFormat.Snippet,Fe=x.insertText.value):Fe=x.insertText,x.range&&(R=x.range),p.insertTextFormat=Y,x.fromEdit&&Fe!==void 0&&R!==void 0?p.textEdit=on(Fe,R):p.insertText=Fe}function on(p,x){return rl.is(x)?he.InsertReplaceEdit.create(p,be(x.inserting),be(x.replacing)):{newText:p,range:be(x)}}function Fn(p){return{range:be(p.range),newText:p.newText}}function at(p){return p==null?p:p.map(Fn)}function Tt(p){return p<=dt.SymbolKind.TypeParameter?p+1:he.SymbolKind.Property}function Dt(p){return p}function Gt(p){return p.map(Dt)}function Lt(p,x,Y){return{textDocument:i(p),position:pe(x),context:{includeDeclaration:Y.includeDeclaration}}}async function On(p,x){let Y=he.CodeAction.create(p.title);if(p instanceof ly.default&&p.data!==void 0&&(Y.data=p.data),p.kind!==void 0&&(Y.kind=C(p.kind)),p.diagnostics!==void 0&&(Y.diagnostics=await mn(p.diagnostics,x)),p.edit!==void 0)throw new Error("VS Code code actions can only be converted to a protocol code action without an edit.");return p.command!==void 0&&(Y.command=G(p.command)),p.isPreferred!==void 0&&(Y.isPreferred=p.isPreferred),p.disabled!==void 0&&(Y.disabled={reason:p.disabled.reason}),Y}function zn(p){let x=he.CodeAction.create(p.title);if(p instanceof ly.default&&p.data!==void 0&&(x.data=p.data),p.kind!==void 0&&(x.kind=C(p.kind)),p.diagnostics!==void 0&&(x.diagnostics=vn(p.diagnostics)),p.edit!==void 0)throw new Error("VS Code code actions can only be converted to a protocol code action without an edit.");return p.command!==void 0&&(x.command=G(p.command)),p.isPreferred!==void 0&&(x.isPreferred=p.isPreferred),p.disabled!==void 0&&(x.disabled={reason:p.disabled.reason}),x}async function bn(p,x){if(p==null)return p;let Y;return p.only&&qr.string(p.only.value)&&(Y=[p.only.value]),he.CodeActionContext.create(await mn(p.diagnostics,x),Y,Ft(p.triggerKind))}function Bn(p){if(p==null)return p;let x;return p.only&&qr.string(p.only.value)&&(x=[p.only.value]),he.CodeActionContext.create(vn(p.diagnostics),x,Ft(p.triggerKind))}function Ft(p){switch(p){case dt.CodeActionTriggerKind.Invoke:return he.CodeActionTriggerKind.Invoked;case dt.CodeActionTriggerKind.Automatic:return he.CodeActionTriggerKind.Automatic;default:return}}function C(p){if(p!=null)return p.value}function O(p){return p==null?p:he.InlineValueContext.create(p.frameId,be(p.stoppedLocation))}function W(p,x,Y){return{context:he.InlineCompletionContext.create(Y.triggerKind,Y.selectedCompletionInfo),textDocument:i(p),position:ie(x)}}function G(p){let x=he.Command.create(p.title,p.command);return p.arguments&&(x.arguments=p.arguments),x}function xe(p){let x=he.CodeLens.create(be(p.range));return p.command&&(x.command=G(p.command)),p instanceof j_.default&&p.data&&(x.data=p.data),x}function Pe(p,x){let Y={tabSize:p.tabSize,insertSpaces:p.insertSpaces};return x.trimTrailingWhitespace&&(Y.trimTrailingWhitespace=!0),x.trimFinalNewlines&&(Y.trimFinalNewlines=!0),x.insertFinalNewline&&(Y.insertFinalNewline=!0),Y}function Ae(p){return{textDocument:i(p)}}function $e(p){return{textDocument:i(p)}}function ye(p){let x=he.DocumentLink.create(be(p.range));p.target&&(x.target=r(p.target)),p.tooltip!==void 0&&(x.tooltip=p.tooltip);let Y=p instanceof $_.default?p:void 0;return Y&&Y.data&&(x.data=Y.data),x}function Ie(p){return{textDocument:i(p)}}function De(p){let x={name:p.name,kind:Tt(p.kind),uri:r(p.uri),range:be(p.range),selectionRange:be(p.selectionRange)};return p.detail!==void 0&&p.detail.length>0&&(x.detail=p.detail),p.tags!==void 0&&(x.tags=Gt(p.tags)),p instanceof U_.default&&p.data!==void 0&&(x.data=p.data),x}function Ue(p){let x={name:p.name,kind:Tt(p.kind),uri:r(p.uri),range:be(p.range),selectionRange:be(p.selectionRange)};return p.detail!==void 0&&p.detail.length>0&&(x.detail=p.detail),p.tags!==void 0&&(x.tags=Gt(p.tags)),p instanceof H_.default&&p.data!==void 0&&(x.data=p.data),x}function nt(p){let x=p instanceof W_.default?{name:p.name,kind:Tt(p.kind),location:p.hasRange?ct(p.location):{uri:t(p.location.uri)},data:p.data}:{name:p.name,kind:Tt(p.kind),location:ct(p.location)};return p.tags!==void 0&&(x.tags=Gt(p.tags)),p.containerName!==""&&(x.containerName=p.containerName),x}function ht(p){let x=typeof p.label=="string"?p.label:p.label.map(or),Y=he.InlayHint.create(ie(p.position),x);return p.kind!==void 0&&(Y.kind=p.kind),p.textEdits!==void 0&&(Y.textEdits=at(p.textEdits)),p.tooltip!==void 0&&(Y.tooltip=sr(p.tooltip)),p.paddingLeft!==void 0&&(Y.paddingLeft=p.paddingLeft),p.paddingRight!==void 0&&(Y.paddingRight=p.paddingRight),p instanceof K_.default&&p.data!==void 0&&(Y.data=p.data),Y}function or(p){let x=he.InlayHintLabelPart.create(p.value);return p.location!==void 0&&(x.location=ct(p.location)),p.command!==void 0&&(x.command=G(p.command)),p.tooltip!==void 0&&(x.tooltip=sr(p.tooltip)),x}function sr(p){return typeof p=="string"?p:{kind:he.MarkupKind.Markdown,value:p.value}}return{asUri:r,asTextDocumentIdentifier:i,asTextDocumentItem:o,asVersionedTextDocumentIdentifier:s,asOpenTextDocumentParams:a,asChangeTextDocumentParams:d,asCloseTextDocumentParams:g,asSaveTextDocumentParams:m,asWillSaveTextDocumentParams:v,asDidCreateFilesParams:T,asDidRenameFilesParams:P,asDidDeleteFilesParams:q,asWillCreateFilesParams:L,asWillRenameFilesParams:N,asWillDeleteFilesParams:K,asTextDocumentPositionParams:te,asCompletionParams:V,asSignatureHelpParams:B,asWorkerPosition:pe,asRange:be,asRanges:Re,asPosition:ie,asPositions:oe,asPositionsSync:st,asLocation:ct,asDiagnosticSeverity:Ct,asDiagnosticTag:En,asDiagnostic:qn,asDiagnostics:mn,asDiagnosticsSync:vn,asCompletionItem:rn,asTextEdit:Fn,asSymbolKind:Tt,asSymbolTag:Dt,asSymbolTags:Gt,asReferenceParams:Lt,asCodeAction:On,asCodeActionSync:zn,asCodeActionContext:bn,asCodeActionContextSync:Bn,asInlineValueContext:O,asCommand:G,asCodeLens:xe,asFormattingOptions:Pe,asDocumentSymbolParams:Ae,asCodeLensParams:$e,asDocumentLink:ye,asDocumentLinkParams:Ie,asCallHierarchyItem:De,asTypeHierarchyItem:Ue,asInlayHint:ht,asWorkspaceSymbol:nt,asInlineCompletionParams:W}}Rs.createConverter=V_});var gy=E(ks=>{"use strict";Object.defineProperty(ks,"__esModule",{value:!0});ks.createConverter=void 0;var z=require("vscode"),ae=fe(),fn=un(),qe=_s(),z_=Iu(),B_=Mu(),G_=Nu(),J_=Uu(),py=Ku(),X_=Bu(),Q_=Xu(),Y_=Zu(),Z_=nl(),hy=fe(),Ps;(function(n){function e(t){let r=t;return r&&fn.string(r.language)&&fn.string(r.value)}n.is=e})(Ps||(Ps={}));function eT(n,e,t){let i=n||(l=>z.Uri.parse(l));function o(l){return i(l)}function s(l){let _=[];for(let A of l)if(typeof A=="string")_.push(A);else if(hy.NotebookCellTextDocumentFilter.is(A))if(typeof A.notebook=="string")_.push({notebookType:A.notebook,language:A.language});else{let ee=A.notebook.notebookType??"*";_.push({notebookType:ee,scheme:A.notebook.scheme,pattern:A.notebook.pattern,language:A.language})}else hy.TextDocumentFilter.is(A)&&_.push({language:A.language,scheme:A.scheme,pattern:A.pattern});return _}async function a(l,_){return qe.map(l,u,_)}function c(l){let _=new Array(l.length);for(let A=0;A<l.length;A++)_[A]=u(l[A]);return _}function u(l){let _=new py.ProtocolDiagnostic(v(l.range),l.message,P(l.severity),l.data);if(l.code!==void 0){if(typeof l.code=="string"||typeof l.code=="number")ae.CodeDescription.is(l.codeDescription)?_.code={value:l.code,target:o(l.codeDescription.href)}:_.code=l.code;else if(py.DiagnosticCode.is(l.code)){_.hasDiagnosticCode=!0;let A=l.code;_.code={value:A.value,target:o(A.target)}}}return l.source&&(_.source=l.source),l.relatedInformation&&(_.relatedInformation=d(l.relatedInformation)),Array.isArray(l.tags)&&(_.tags=g(l.tags)),_}function d(l){let _=new Array(l.length);for(let A=0;A<l.length;A++){let ee=l[A];_[A]=new z.DiagnosticRelatedInformation(Ct(ee.location),ee.message)}return _}function g(l){if(!l)return;let _=[];for(let A of l){let ee=m(A);ee!==void 0&&_.push(ee)}return _.length>0?_:void 0}function m(l){switch(l){case ae.DiagnosticTag.Unnecessary:return z.DiagnosticTag.Unnecessary;case ae.DiagnosticTag.Deprecated:return z.DiagnosticTag.Deprecated;default:return}}function y(l){return l?new z.Position(l.line,l.character):void 0}function v(l){return l?new z.Range(l.start.line,l.start.character,l.end.line,l.end.character):void 0}async function T(l,_){return qe.map(l,A=>new z.Range(A.start.line,A.start.character,A.end.line,A.end.character),_)}function P(l){if(l==null)return z.DiagnosticSeverity.Error;switch(l){case ae.DiagnosticSeverity.Error:return z.DiagnosticSeverity.Error;case ae.DiagnosticSeverity.Warning:return z.DiagnosticSeverity.Warning;case ae.DiagnosticSeverity.Information:return z.DiagnosticSeverity.Information;case ae.DiagnosticSeverity.Hint:return z.DiagnosticSeverity.Hint}return z.DiagnosticSeverity.Error}function q(l){if(fn.string(l))return N(l);if(Ps.is(l))return N().appendCodeblock(l.value,l.language);if(Array.isArray(l)){let _=[];for(let A of l){let ee=N();Ps.is(A)?ee.appendCodeblock(A.value,A.language):ee.appendMarkdown(A),_.push(ee)}return _}else return N(l)}function L(l){if(fn.string(l))return l;switch(l.kind){case ae.MarkupKind.Markdown:return N(l.value);case ae.MarkupKind.PlainText:return l.value;default:return`Unsupported Markup content received. Kind is: ${l.kind}`}}function N(l){let _;if(l===void 0||typeof l=="string")_=new z.MarkdownString(l);else switch(l.kind){case ae.MarkupKind.Markdown:_=new z.MarkdownString(l.value);break;case ae.MarkupKind.PlainText:_=new z.MarkdownString,_.appendText(l.value);break;default:_=new z.MarkdownString,_.appendText(`Unsupported Markup content received. Kind is: ${l.kind}`);break}return _.isTrusted=e,_.supportHtml=t,_}function K(l){if(l)return new z.Hover(q(l.contents),v(l.range))}async function te(l,_,A){if(!l)return;if(Array.isArray(l))return qe.map(l,An=>Ne(An,_),A);let ee=l,{defaultRange:gt,commitCharacters:St}=Z(ee,_),je=await qe.map(ee.items,An=>Ne(An,St,gt,ee.itemDefaults?.insertTextMode,ee.itemDefaults?.insertTextFormat,ee.itemDefaults?.data),A);return new z.CompletionList(je,ee.isIncomplete)}function Z(l,_){let A=l.itemDefaults?.editRange,ee=l.itemDefaults?.commitCharacters??_;return ae.Range.is(A)?{defaultRange:v(A),commitCharacters:ee}:A!==void 0?{defaultRange:{inserting:v(A.insert),replacing:v(A.replace)},commitCharacters:ee}:{defaultRange:void 0,commitCharacters:ee}}function V(l){return ae.CompletionItemKind.Text<=l&&l<=ae.CompletionItemKind.TypeParameter?[l-1,void 0]:[z.CompletionItemKind.Text,l]}function ne(l){switch(l){case ae.CompletionItemTag.Deprecated:return z.CompletionItemTag.Deprecated}}function ce(l){if(l==null)return[];let _=[];for(let A of l){let ee=ne(A);ee!==void 0&&_.push(ee)}return _}function Ne(l,_,A,ee,gt,St){let je=ce(l.tags),An=U(l),We=new z_.default(An);l.detail&&(We.detail=l.detail),l.documentation&&(We.documentation=L(l.documentation),We.documentationFormat=fn.string(l.documentation)?"$string":l.documentation.kind),l.filterText&&(We.filterText=l.filterText);let ho=I(l,A,gt);if(ho&&(We.insertText=ho.text,We.range=ho.range,We.fromEdit=ho.fromEdit),fn.number(l.kind)){let[sw,Tf]=V(l.kind);We.kind=sw,Tf&&(We.originalItemKind=Tf)}l.sortText&&(We.sortText=l.sortText),l.additionalTextEdits&&(We.additionalTextEdits=ie(l.additionalTextEdits));let Sf=l.commitCharacters!==void 0?fn.stringArray(l.commitCharacters)?l.commitCharacters:void 0:_;Sf&&(We.commitCharacters=Sf.slice()),l.command&&(We.command=at(l.command)),(l.deprecated===!0||l.deprecated===!1)&&(We.deprecated=l.deprecated,l.deprecated===!0&&je.push(z.CompletionItemTag.Deprecated)),(l.preselect===!0||l.preselect===!1)&&(We.preselect=l.preselect);let _f=l.data??St;_f!==void 0&&(We.data=_f),je.length>0&&(We.tags=je);let Ta=l.insertTextMode??ee;return Ta!==void 0&&(We.insertTextMode=Ta,Ta===ae.InsertTextMode.asIs&&(We.keepWhitespace=!0)),We}function U(l){return ae.CompletionItemLabelDetails.is(l.labelDetails)?{label:l.label,detail:l.labelDetails.detail,description:l.labelDetails.description}:l.label}function I(l,_,A){let ee=l.insertTextFormat??A;if(l.textEdit!==void 0||_!==void 0){let[gt,St]=l.textEdit!==void 0?J(l.textEdit):[_,l.textEditText??l.label];return ee===ae.InsertTextFormat.Snippet?{text:new z.SnippetString(St),range:gt,fromEdit:!0}:{text:St,range:gt,fromEdit:!0}}else return l.insertText?ee===ae.InsertTextFormat.Snippet?{text:new z.SnippetString(l.insertText),fromEdit:!1}:{text:l.insertText,fromEdit:!1}:void 0}function J(l){return ae.InsertReplaceEdit.is(l)?[{inserting:v(l.insert),replacing:v(l.replace)},l.newText]:[v(l.range),l.newText]}function B(l){if(l)return new z.TextEdit(v(l.range),l.newText)}async function pe(l,_){if(l)return qe.map(l,B,_)}function ie(l){if(!l)return;let _=new Array(l.length);for(let A=0;A<l.length;A++)_[A]=B(l[A]);return _}async function oe(l,_){if(!l)return;let A=new z.SignatureHelp;return fn.number(l.activeSignature)?A.activeSignature=l.activeSignature:A.activeSignature=0,fn.number(l.activeParameter)?A.activeParameter=l.activeParameter:A.activeParameter=0,l.signatures&&(A.signatures=await st(l.signatures,_)),A}async function st(l,_){return qe.mapAsync(l,be,_)}async function be(l,_){let A=new z.SignatureInformation(l.label);return l.documentation!==void 0&&(A.documentation=L(l.documentation)),l.parameters!==void 0&&(A.parameters=await Re(l.parameters,_)),l.activeParameter!==void 0&&(A.activeParameter=l.activeParameter),A}function Re(l,_){return qe.map(l,ct,_)}function ct(l){let _=new z.ParameterInformation(l.label);return l.documentation&&(_.documentation=L(l.documentation)),_}function Ct(l){return l?new z.Location(i(l.uri),v(l.range)):void 0}async function nr(l,_){if(l)return Kn(l,_)}async function En(l,_){if(l)return Kn(l,_)}function xn(l){if(!l)return;let _={targetUri:i(l.targetUri),targetRange:v(l.targetRange),originSelectionRange:v(l.originSelectionRange),targetSelectionRange:v(l.targetSelectionRange)};if(!_.targetSelectionRange)throw new Error("targetSelectionRange must not be undefined or null");return _}async function Kn(l,_){if(l)if(fn.array(l)){if(l.length===0)return[];if(ae.LocationLink.is(l[0])){let A=l;return qe.map(A,xn,_)}else{let A=l;return qe.map(A,Ct,_)}}else return ae.LocationLink.is(l)?[xn(l)]:Ct(l)}async function rr(l,_){if(l)return qe.map(l,Ct,_)}async function qn(l,_){if(l)return qe.map(l,mn,_)}function mn(l){let _=new z.DocumentHighlight(v(l.range));return fn.number(l.kind)&&(_.kind=vn(l.kind)),_}function vn(l){switch(l){case ae.DocumentHighlightKind.Text:return z.DocumentHighlightKind.Text;case ae.DocumentHighlightKind.Read:return z.DocumentHighlightKind.Read;case ae.DocumentHighlightKind.Write:return z.DocumentHighlightKind.Write}return z.DocumentHighlightKind.Text}async function In(l,_){if(l)return qe.map(l,rn,_)}function ut(l){return l<=ae.SymbolKind.TypeParameter?l-1:z.SymbolKind.Property}function Vn(l){switch(l){case ae.SymbolTag.Deprecated:return z.SymbolTag.Deprecated;default:return}}function yn(l){if(l==null)return;let _=[];for(let A of l){let ee=Vn(A);ee!==void 0&&_.push(ee)}return _.length===0?void 0:_}function rn(l){let _=l.data,A=l.location,ee=A.range===void 0||_!==void 0?new Y_.default(l.name,ut(l.kind),l.containerName??"",A.range===void 0?i(A.uri):new z.Location(i(l.location.uri),v(A.range)),_):new z.SymbolInformation(l.name,ut(l.kind),l.containerName??"",new z.Location(i(l.location.uri),v(A.range)));return Fn(ee,l),ee}async function ir(l,_){if(l!=null)return qe.map(l,on,_)}function on(l){let _=new z.DocumentSymbol(l.name,l.detail||"",ut(l.kind),v(l.range),v(l.selectionRange));if(Fn(_,l),l.children!==void 0&&l.children.length>0){let A=[];for(let ee of l.children)A.push(on(ee));_.children=A}return _}function Fn(l,_){l.tags=yn(_.tags),_.deprecated&&(l.tags?l.tags.includes(z.SymbolTag.Deprecated)||(l.tags=l.tags.concat(z.SymbolTag.Deprecated)):l.tags=[z.SymbolTag.Deprecated])}function at(l){let _={title:l.title,command:l.command};return l.arguments&&(_.arguments=l.arguments),_}async function Tt(l,_){if(l)return qe.map(l,at,_)}let Dt=new Map;Dt.set(ae.CodeActionKind.Empty,z.CodeActionKind.Empty),Dt.set(ae.CodeActionKind.QuickFix,z.CodeActionKind.QuickFix),Dt.set(ae.CodeActionKind.Refactor,z.CodeActionKind.Refactor),Dt.set(ae.CodeActionKind.RefactorExtract,z.CodeActionKind.RefactorExtract),Dt.set(ae.CodeActionKind.RefactorInline,z.CodeActionKind.RefactorInline),Dt.set(ae.CodeActionKind.RefactorRewrite,z.CodeActionKind.RefactorRewrite),Dt.set(ae.CodeActionKind.Source,z.CodeActionKind.Source),Dt.set(ae.CodeActionKind.SourceOrganizeImports,z.CodeActionKind.SourceOrganizeImports);function Gt(l){if(l==null)return;let _=Dt.get(l);if(_)return _;let A=l.split(".");_=z.CodeActionKind.Empty;for(let ee of A)_=_.append(ee);return _}function Lt(l){if(l!=null)return l.map(_=>Gt(_))}async function On(l,_){if(l==null)return;let A=new J_.default(l.title,l.data);return l.kind!==void 0&&(A.kind=Gt(l.kind)),l.diagnostics!==void 0&&(A.diagnostics=c(l.diagnostics)),l.edit!==void 0&&(A.edit=await Ft(l.edit,_)),l.command!==void 0&&(A.command=at(l.command)),l.isPreferred!==void 0&&(A.isPreferred=l.isPreferred),l.disabled!==void 0&&(A.disabled={reason:l.disabled.reason}),A}function zn(l,_){return qe.mapAsync(l,async A=>ae.Command.is(A)?at(A):On(A,_),_)}function bn(l){if(!l)return;let _=new B_.default(v(l.range));return l.command&&(_.command=at(l.command)),l.data!==void 0&&l.data!==null&&(_.data=l.data),_}async function Bn(l,_){if(l)return qe.map(l,bn,_)}async function Ft(l,_){if(!l)return;let A=new Map;if(l.changeAnnotations!==void 0){let St=l.changeAnnotations;await qe.forEach(Object.keys(St),je=>{let An=C(St[je]);A.set(je,An)},_)}let ee=St=>{if(St!==void 0)return A.get(St)},gt=new z.WorkspaceEdit;if(l.documentChanges){let St=l.documentChanges;await qe.forEach(St,je=>{if(ae.CreateFile.is(je))gt.createFile(i(je.uri),je.options,ee(je.annotationId));else if(ae.RenameFile.is(je))gt.renameFile(i(je.oldUri),i(je.newUri),je.options,ee(je.annotationId));else if(ae.DeleteFile.is(je))gt.deleteFile(i(je.uri),je.options,ee(je.annotationId));else if(ae.TextDocumentEdit.is(je)){let An=i(je.textDocument.uri);for(let We of je.edits)ae.AnnotatedTextEdit.is(We)?gt.replace(An,v(We.range),We.newText,ee(We.annotationId)):gt.replace(An,v(We.range),We.newText)}else throw new Error(`Unknown workspace edit change received:
45
+ ${JSON.stringify(je,void 0,4)}`)},_)}else if(l.changes){let St=l.changes;await qe.forEach(Object.keys(St),je=>{gt.set(i(je),ie(St[je]))},_)}return gt}function C(l){if(l!==void 0)return{label:l.label,needsConfirmation:!!l.needsConfirmation,description:l.description}}function O(l){let _=v(l.range),A=l.target?o(l.target):void 0,ee=new G_.default(_,A);return l.tooltip!==void 0&&(ee.tooltip=l.tooltip),l.data!==void 0&&l.data!==null&&(ee.data=l.data),ee}async function W(l,_){if(l)return qe.map(l,O,_)}function G(l){return new z.Color(l.red,l.green,l.blue,l.alpha)}function xe(l){return new z.ColorInformation(v(l.range),G(l.color))}async function Pe(l,_){if(l)return qe.map(l,xe,_)}function Ae(l){let _=new z.ColorPresentation(l.label);return _.additionalTextEdits=ie(l.additionalTextEdits),l.textEdit&&(_.textEdit=B(l.textEdit)),_}async function $e(l,_){if(l)return qe.map(l,Ae,_)}function ye(l){if(l)switch(l){case ae.FoldingRangeKind.Comment:return z.FoldingRangeKind.Comment;case ae.FoldingRangeKind.Imports:return z.FoldingRangeKind.Imports;case ae.FoldingRangeKind.Region:return z.FoldingRangeKind.Region}}function Ie(l){return new z.FoldingRange(l.startLine,l.endLine,ye(l.kind))}async function De(l,_){if(l)return qe.map(l,Ie,_)}function Ue(l){return new z.SelectionRange(v(l.range),l.parent?Ue(l.parent):void 0)}async function nt(l,_){return Array.isArray(l)?qe.map(l,Ue,_):[]}function ht(l){return ae.InlineValueText.is(l)?new z.InlineValueText(v(l.range),l.text):ae.InlineValueVariableLookup.is(l)?new z.InlineValueVariableLookup(v(l.range),l.variableName,l.caseSensitiveLookup):new z.InlineValueEvaluatableExpression(v(l.range),l.expression)}async function or(l,_){return Array.isArray(l)?qe.map(l,ht,_):[]}async function sr(l,_){let A=typeof l.label=="string"?l.label:await qe.map(l.label,p,_),ee=new Z_.default(y(l.position),A);return l.kind!==void 0&&(ee.kind=l.kind),l.textEdits!==void 0&&(ee.textEdits=await pe(l.textEdits,_)),l.tooltip!==void 0&&(ee.tooltip=x(l.tooltip)),l.paddingLeft!==void 0&&(ee.paddingLeft=l.paddingLeft),l.paddingRight!==void 0&&(ee.paddingRight=l.paddingRight),l.data!==void 0&&(ee.data=l.data),ee}function p(l){let _=new z.InlayHintLabelPart(l.value);return l.location!==void 0&&(_.location=Ct(l.location)),l.tooltip!==void 0&&(_.tooltip=x(l.tooltip)),l.command!==void 0&&(_.command=at(l.command)),_}function x(l){return typeof l=="string"?l:N(l)}async function Y(l,_){if(Array.isArray(l))return qe.mapAsync(l,sr,_)}function Fe(l){if(l===null)return;let _=new X_.default(ut(l.kind),l.name,l.detail||"",o(l.uri),v(l.range),v(l.selectionRange),l.data);return l.tags!==void 0&&(_.tags=yn(l.tags)),_}async function R(l,_){if(l!==null)return qe.map(l,Fe,_)}async function h(l,_){return new z.CallHierarchyIncomingCall(Fe(l.from),await T(l.fromRanges,_))}async function D(l,_){if(l!==null)return qe.mapAsync(l,h,_)}async function S(l,_){return new z.CallHierarchyOutgoingCall(Fe(l.to),await T(l.fromRanges,_))}async function b(l,_){if(l!==null)return qe.mapAsync(l,S,_)}async function f(l,_){if(l!=null)return new z.SemanticTokens(new Uint32Array(l.data),l.resultId)}function k(l){return new z.SemanticTokensEdit(l.start,l.deleteCount,l.data!==void 0?new Uint32Array(l.data):void 0)}async function M(l,_){if(l!=null)return new z.SemanticTokensEdits(l.edits.map(k),l.resultId)}function ue(l){return l}async function Ge(l,_){if(l!=null)return new z.LinkedEditingRanges(await T(l.ranges,_),He(l.wordPattern))}function He(l){if(l!=null)return new RegExp(l)}function Nt(l){if(l===null)return;let _=new Q_.default(ut(l.kind),l.name,l.detail||"",o(l.uri),v(l.range),v(l.selectionRange),l.data);return l.tags!==void 0&&(_.tags=yn(l.tags)),_}async function Jt(l,_){if(l!==null)return qe.map(l,Nt,_)}function wn(l){if(fn.string(l))return l;if(ae.RelativePattern.is(l)){if(ae.URI.is(l.baseUri))return new z.RelativePattern(o(l.baseUri),l.pattern);if(ae.WorkspaceFolder.is(l.baseUri)){let _=z.workspace.getWorkspaceFolder(o(l.baseUri.uri));return _!==void 0?new z.RelativePattern(_,l.pattern):void 0}}}async function Ce(l,_){if(!l)return;if(Array.isArray(l))return qe.map(l,gt=>Mn(gt),_);let A=l,ee=await qe.map(A.items,gt=>Mn(gt),_);return new z.InlineCompletionList(ee)}function Mn(l){let _;typeof l.insertText=="string"?_=l.insertText:_=new z.SnippetString(l.insertText.value);let A;l.command&&(A=at(l.command));let ee=new z.InlineCompletionItem(_,v(l.range),A);return l.filterText&&(ee.filterText=l.filterText),ee}return{asUri:o,asDocumentSelector:s,asDiagnostics:a,asDiagnostic:u,asRange:v,asRanges:T,asPosition:y,asDiagnosticSeverity:P,asDiagnosticTag:m,asHover:K,asCompletionResult:te,asCompletionItem:Ne,asTextEdit:B,asTextEdits:pe,asSignatureHelp:oe,asSignatureInformations:st,asSignatureInformation:be,asParameterInformations:Re,asParameterInformation:ct,asDeclarationResult:nr,asDefinitionResult:En,asLocation:Ct,asReferences:rr,asDocumentHighlights:qn,asDocumentHighlight:mn,asDocumentHighlightKind:vn,asSymbolKind:ut,asSymbolTag:Vn,asSymbolTags:yn,asSymbolInformations:In,asSymbolInformation:rn,asDocumentSymbols:ir,asDocumentSymbol:on,asCommand:at,asCommands:Tt,asCodeAction:On,asCodeActionKind:Gt,asCodeActionKinds:Lt,asCodeActionResult:zn,asCodeLens:bn,asCodeLenses:Bn,asWorkspaceEdit:Ft,asDocumentLink:O,asDocumentLinks:W,asFoldingRangeKind:ye,asFoldingRange:Ie,asFoldingRanges:De,asColor:G,asColorInformation:xe,asColorInformations:Pe,asColorPresentation:Ae,asColorPresentations:$e,asSelectionRange:Ue,asSelectionRanges:nt,asInlineValue:ht,asInlineValues:or,asInlayHint:sr,asInlayHints:Y,asSemanticTokensLegend:ue,asSemanticTokens:f,asSemanticTokensEdit:k,asSemanticTokensEdits:M,asCallHierarchyItem:Fe,asCallHierarchyItems:R,asCallHierarchyIncomingCall:h,asCallHierarchyIncomingCalls:D,asCallHierarchyOutgoingCall:S,asCallHierarchyOutgoingCalls:b,asLinkedEditingRanges:Ge,asTypeHierarchyItem:Nt,asTypeHierarchyItems:Jt,asGlobPattern:wn,asInlineCompletionResult:Ce,asInlineCompletionItem:Mn}}ks.createConverter=eT});var Xe=E(pn=>{"use strict";Object.defineProperty(pn,"__esModule",{value:!0});pn.generateUuid=pn.parse=pn.isUUID=pn.v4=pn.empty=void 0;var Ki=class{constructor(e){this._value=e}asHex(){return this._value}equals(e){return this.asHex()===e.asHex()}},Vi=class n extends Ki{static _oneOf(e){return e[Math.floor(e.length*Math.random())]}static _randomHex(){return n._oneOf(n._chars)}constructor(){super([n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),"-",n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),"-","4",n._randomHex(),n._randomHex(),n._randomHex(),"-",n._oneOf(n._timeHighBits),n._randomHex(),n._randomHex(),n._randomHex(),"-",n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex(),n._randomHex()].join(""))}};Vi._chars=["0","1","2","3","4","5","6","6","7","8","9","a","b","c","d","e","f"];Vi._timeHighBits=["8","9","a","b"];pn.empty=new Ki("00000000-0000-0000-0000-000000000000");function my(){return new Vi}pn.v4=my;var tT=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;function vy(n){return tT.test(n)}pn.isUUID=vy;function nT(n){if(!vy(n))throw new Error("invalid uuid");return new Ki(n)}pn.parse=nT;function rT(){return my().asHex()}pn.generateUuid=rT});var ol=E(Es=>{"use strict";Object.defineProperty(Es,"__esModule",{value:!0});Es.ProgressPart=void 0;var yy=require("vscode"),by=fe(),wy=un(),il=class{constructor(e,t,r){this._client=e,this._token=t,this._reported=0,this._infinite=!1,this._lspProgressDisposable=this._client.onProgress(by.WorkDoneProgress.type,this._token,i=>{switch(i.kind){case"begin":this.begin(i);break;case"report":this.report(i);break;case"end":this.done(),r&&r(this);break}})}begin(e){this._infinite=e.percentage===void 0,this._lspProgressDisposable!==void 0&&yy.window.withProgress({location:yy.ProgressLocation.Window,cancellable:e.cancellable,title:e.title},async(t,r)=>{if(this._lspProgressDisposable!==void 0)return this._progress=t,this._cancellationToken=r,this._tokenDisposable=this._cancellationToken.onCancellationRequested(()=>{this._client.sendNotification(by.WorkDoneProgressCancelNotification.type,{token:this._token})}),this.report(e),new Promise((i,o)=>{this._resolve=i,this._reject=o})})}report(e){if(this._infinite&&wy.string(e.message))this._progress!==void 0&&this._progress.report({message:e.message});else if(wy.number(e.percentage)){let t=Math.max(0,Math.min(e.percentage,100)),r=Math.max(0,t-this._reported);this._reported+=r,this._progress!==void 0&&this._progress.report({message:e.message,increment:r})}}cancel(){this.cleanup(),this._reject!==void 0&&(this._reject(),this._resolve=void 0,this._reject=void 0)}done(){this.cleanup(),this._resolve!==void 0&&(this._resolve(),this._resolve=void 0,this._reject=void 0)}cleanup(){this._lspProgressDisposable!==void 0&&(this._lspProgressDisposable.dispose(),this._lspProgressDisposable=void 0),this._tokenDisposable!==void 0&&(this._tokenDisposable.dispose(),this._tokenDisposable=void 0),this._progress=void 0,this._cancellationToken=void 0}};Es.ProgressPart=il});var Ee=E(yt=>{"use strict";Object.defineProperty(yt,"__esModule",{value:!0});yt.WorkspaceFeature=yt.TextDocumentLanguageFeature=yt.TextDocumentEventFeature=yt.DynamicDocumentFeature=yt.DynamicFeature=yt.StaticFeature=yt.ensure=yt.LSPCancellationError=void 0;var Ir=require("vscode"),sl=fe(),At=un(),Cy=Xe(),al=class extends Ir.CancellationError{constructor(e){super(),this.data=e}};yt.LSPCancellationError=al;function iT(n,e){return n[e]===void 0&&(n[e]={}),n[e]}yt.ensure=iT;var Dy;(function(n){function e(t){let r=t;return r!=null&&At.func(r.fillClientCapabilities)&&At.func(r.initialize)&&At.func(r.getState)&&At.func(r.clear)&&(r.fillInitializeParams===void 0||At.func(r.fillInitializeParams))}n.is=e})(Dy||(yt.StaticFeature=Dy={}));var Sy;(function(n){function e(t){let r=t;return r!=null&&At.func(r.fillClientCapabilities)&&At.func(r.initialize)&&At.func(r.getState)&&At.func(r.clear)&&(r.fillInitializeParams===void 0||At.func(r.fillInitializeParams))&&At.func(r.register)&&At.func(r.unregister)&&r.registrationType!==void 0}n.is=e})(Sy||(yt.DynamicFeature=Sy={}));var zi=class{constructor(e){this._client=e}getState(){let e=this.getDocumentSelectors(),t=0;for(let i of e){t++;for(let o of Ir.workspace.textDocuments)if(Ir.languages.match(i,o)>0)return{kind:"document",id:this.registrationType.method,registrations:!0,matches:!0}}let r=t>0;return{kind:"document",id:this.registrationType.method,registrations:r,matches:!1}}};yt.DynamicDocumentFeature=zi;var cl=class extends zi{static textDocumentFilter(e,t){for(let r of e)if(Ir.languages.match(r,t)>0)return!0;return!1}constructor(e,t,r,i,o,s,a){super(e),this._event=t,this._type=r,this._middleware=i,this._createParams=o,this._textDocument=s,this._selectorFilter=a,this._selectors=new Map,this._onNotificationSent=new Ir.EventEmitter}getStateInfo(){return[this._selectors.values(),!1]}getDocumentSelectors(){return this._selectors.values()}register(e){e.registerOptions.documentSelector&&(this._listener||(this._listener=this._event(t=>{this.callback(t).catch(r=>{this._client.error(`Sending document notification ${this._type.method} failed.`,r)})})),this._selectors.set(e.id,this._client.protocol2CodeConverter.asDocumentSelector(e.registerOptions.documentSelector)))}async callback(e){let t=async r=>{let i=this._createParams(r);await this._client.sendNotification(this._type,i),this.notificationSent(this.getTextDocument(r),this._type,i)};if(this.matches(e)){let r=this._middleware();return r?r(e,i=>t(i)):t(e)}}matches(e){return this._client.hasDedicatedTextSynchronizationFeature(this._textDocument(e))?!1:!this._selectorFilter||this._selectorFilter(this._selectors.values(),e)}get onNotificationSent(){return this._onNotificationSent.event}notificationSent(e,t,r){this._onNotificationSent.fire({textDocument:e,type:t,params:r})}unregister(e){this._selectors.delete(e),this._selectors.size===0&&this._listener&&(this._listener.dispose(),this._listener=void 0)}clear(){this._selectors.clear(),this._onNotificationSent.dispose(),this._listener&&(this._listener.dispose(),this._listener=void 0)}getProvider(e){for(let t of this._selectors.values())if(Ir.languages.match(t,e)>0)return{send:r=>this.callback(r)}}};yt.TextDocumentEventFeature=cl;var ul=class extends zi{constructor(e,t){super(e),this._registrationType=t,this._registrations=new Map}*getDocumentSelectors(){for(let e of this._registrations.values()){let t=e.data.registerOptions.documentSelector;t!==null&&(yield this._client.protocol2CodeConverter.asDocumentSelector(t))}}get registrationType(){return this._registrationType}register(e){if(!e.registerOptions.documentSelector)return;let t=this.registerLanguageProvider(e.registerOptions,e.id);this._registrations.set(e.id,{disposable:t[0],data:e,provider:t[1]})}unregister(e){let t=this._registrations.get(e);t!==void 0&&t.disposable.dispose()}clear(){this._registrations.forEach(e=>{e.disposable.dispose()}),this._registrations.clear()}getRegistration(e,t){if(t){if(sl.TextDocumentRegistrationOptions.is(t)){let r=sl.StaticRegistrationOptions.hasId(t)?t.id:Cy.generateUuid(),i=t.documentSelector??e;if(i)return[r,Object.assign({},t,{documentSelector:i})]}else if(At.boolean(t)&&t===!0||sl.WorkDoneProgressOptions.is(t)){if(!e)return[void 0,void 0];let r=At.boolean(t)&&t===!0?{documentSelector:e}:Object.assign({},t,{documentSelector:e});return[Cy.generateUuid(),r]}}else return[void 0,void 0];return[void 0,void 0]}getRegistrationOptions(e,t){if(!(!e||!t))return At.boolean(t)&&t===!0?{documentSelector:e}:Object.assign({},t,{documentSelector:e})}getProvider(e){for(let t of this._registrations.values()){let r=t.data.registerOptions.documentSelector;if(r!==null&&Ir.languages.match(this._client.protocol2CodeConverter.asDocumentSelector(r),e)>0)return t.provider}}getAllProviders(){let e=[];for(let t of this._registrations.values())e.push(t.provider);return e}};yt.TextDocumentLanguageFeature=ul;var ll=class{constructor(e,t){this._client=e,this._registrationType=t,this._registrations=new Map}getState(){let e=this._registrations.size>0;return{kind:"workspace",id:this._registrationType.method,registrations:e}}get registrationType(){return this._registrationType}register(e){let t=this.registerLanguageProvider(e.registerOptions);this._registrations.set(e.id,{disposable:t[0],provider:t[1]})}unregister(e){let t=this._registrations.get(e);t!==void 0&&t.disposable.dispose()}clear(){this._registrations.forEach(e=>{e.disposable.dispose()}),this._registrations.clear()}getProviders(){let e=[];for(let t of this._registrations.values())e.push(t.provider);return e}};yt.WorkspaceFeature=ll});var Ty=E((TE,_y)=>{"use strict";var oT=typeof process=="object"&&process&&process.platform==="win32";_y.exports=oT?{sep:"\\"}:{sep:"/"}});var xy=E((RE,Ey)=>{"use strict";Ey.exports=Py;function Py(n,e,t){n instanceof RegExp&&(n=Ry(n,t)),e instanceof RegExp&&(e=Ry(e,t));var r=ky(n,e,t);return r&&{start:r[0],end:r[1],pre:t.slice(0,r[0]),body:t.slice(r[0]+n.length,r[1]),post:t.slice(r[1]+e.length)}}function Ry(n,e){var t=e.match(n);return t?t[0]:null}Py.range=ky;function ky(n,e,t){var r,i,o,s,a,c=t.indexOf(n),u=t.indexOf(e,c+1),d=c;if(c>=0&&u>0){if(n===e)return[c,u];for(r=[],o=t.length;d>=0&&!a;)d==c?(r.push(d),c=t.indexOf(n,d+1)):r.length==1?a=[r.pop(),u]:(i=r.pop(),i<o&&(o=i,s=u),u=t.indexOf(e,d+1)),d=c<u&&c>=0?c:u;r.length&&(a=[o,s])}return a}});var Ny=E((PE,Ly)=>{"use strict";var qy=xy();Ly.exports=cT;var Iy="\0SLASH"+Math.random()+"\0",Fy="\0OPEN"+Math.random()+"\0",fl="\0CLOSE"+Math.random()+"\0",Oy="\0COMMA"+Math.random()+"\0",My="\0PERIOD"+Math.random()+"\0";function dl(n){return parseInt(n,10)==n?parseInt(n,10):n.charCodeAt(0)}function sT(n){return n.split("\\\\").join(Iy).split("\\{").join(Fy).split("\\}").join(fl).split("\\,").join(Oy).split("\\.").join(My)}function aT(n){return n.split(Iy).join("\\").split(Fy).join("{").split(fl).join("}").split(Oy).join(",").split(My).join(".")}function Ay(n){if(!n)return[""];var e=[],t=qy("{","}",n);if(!t)return n.split(",");var r=t.pre,i=t.body,o=t.post,s=r.split(",");s[s.length-1]+="{"+i+"}";var a=Ay(o);return o.length&&(s[s.length-1]+=a.shift(),s.push.apply(s,a)),e.push.apply(e,s),e}function cT(n){return n?(n.substr(0,2)==="{}"&&(n="\\{\\}"+n.substr(2)),Bi(sT(n),!0).map(aT)):[]}function uT(n){return"{"+n+"}"}function lT(n){return/^-?0\d/.test(n)}function dT(n,e){return n<=e}function fT(n,e){return n>=e}function Bi(n,e){var t=[],r=qy("{","}",n);if(!r)return[n];var i=r.pre,o=r.post.length?Bi(r.post,!1):[""];if(/\$$/.test(r.pre))for(var s=0;s<o.length;s++){var a=i+"{"+r.body+"}"+o[s];t.push(a)}else{var c=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(r.body),u=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(r.body),d=c||u,g=r.body.indexOf(",")>=0;if(!d&&!g)return r.post.match(/,.*\}/)?(n=r.pre+"{"+r.body+fl+r.post,Bi(n)):[n];var m;if(d)m=r.body.split(/\.\./);else if(m=Ay(r.body),m.length===1&&(m=Bi(m[0],!1).map(uT),m.length===1))return o.map(function(Ne){return r.pre+m[0]+Ne});var y;if(d){var v=dl(m[0]),T=dl(m[1]),P=Math.max(m[0].length,m[1].length),q=m.length==3?Math.abs(dl(m[2])):1,L=dT,N=T<v;N&&(q*=-1,L=fT);var K=m.some(lT);y=[];for(var te=v;L(te,T);te+=q){var Z;if(u)Z=String.fromCharCode(te),Z==="\\"&&(Z="");else if(Z=String(te),K){var V=P-Z.length;if(V>0){var ne=new Array(V+1).join("0");te<0?Z="-"+ne+Z.slice(1):Z=ne+Z}}y.push(Z)}}else{y=[];for(var ce=0;ce<m.length;ce++)y.push.apply(y,Bi(m[ce],!1))}for(var ce=0;ce<y.length;ce++)for(var s=0;s<o.length;s++){var a=i+y[ce]+o[s];(!e||d||a)&&t.push(a)}}return t}});var qs=E((EE,vl)=>{"use strict";var Yt=vl.exports=(n,e,t={})=>(xs(e),!t.nocomment&&e.charAt(0)==="#"?!1:new pi(e,t).match(n));vl.exports=Yt;var gl=Ty();Yt.sep=gl.sep;var Tn=Symbol("globstar **");Yt.GLOBSTAR=Tn;var pT=Ny(),jy={"!":{open:"(?:(?!(?:",close:"))[^/]*?)"},"?":{open:"(?:",close:")?"},"+":{open:"(?:",close:")+"},"*":{open:"(?:",close:")*"},"@":{open:"(?:",close:")"}},ml="[^/]",pl=ml+"*?",hT="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",gT="(?:(?!(?:\\/|^)\\.).)*?",Hy=n=>n.split("").reduce((e,t)=>(e[t]=!0,e),{}),$y=Hy("().*{}+?[]^$\\!"),mT=Hy("[.("),Uy=/\/+/;Yt.filter=(n,e={})=>(t,r,i)=>Yt(t,n,e);var yr=(n,e={})=>{let t={};return Object.keys(n).forEach(r=>t[r]=n[r]),Object.keys(e).forEach(r=>t[r]=e[r]),t};Yt.defaults=n=>{if(!n||typeof n!="object"||!Object.keys(n).length)return Yt;let e=Yt,t=(r,i,o)=>e(r,i,yr(n,o));return t.Minimatch=class extends e.Minimatch{constructor(i,o){super(i,yr(n,o))}},t.Minimatch.defaults=r=>e.defaults(yr(n,r)).Minimatch,t.filter=(r,i)=>e.filter(r,yr(n,i)),t.defaults=r=>e.defaults(yr(n,r)),t.makeRe=(r,i)=>e.makeRe(r,yr(n,i)),t.braceExpand=(r,i)=>e.braceExpand(r,yr(n,i)),t.match=(r,i,o)=>e.match(r,i,yr(n,o)),t};Yt.braceExpand=(n,e)=>Wy(n,e);var Wy=(n,e={})=>(xs(n),e.nobrace||!/\{(?:(?!\{).)*\}/.test(n)?[n]:pT(n)),vT=1024*64,xs=n=>{if(typeof n!="string")throw new TypeError("invalid pattern");if(n.length>vT)throw new TypeError("pattern is too long")},hl=Symbol("subparse");Yt.makeRe=(n,e)=>new pi(n,e||{}).makeRe();Yt.match=(n,e,t={})=>{let r=new pi(e,t);return n=n.filter(i=>r.match(i)),r.options.nonull&&!n.length&&n.push(e),n};var yT=n=>n.replace(/\\(.)/g,"$1"),bT=n=>n.replace(/\\([^-\]])/g,"$1"),wT=n=>n.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),CT=n=>n.replace(/[[\]\\]/g,"\\$&"),pi=class{constructor(e,t){xs(e),t||(t={}),this.options=t,this.set=[],this.pattern=e,this.windowsPathsNoEscape=!!t.windowsPathsNoEscape||t.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.regexp=null,this.negate=!1,this.comment=!1,this.empty=!1,this.partial=!!t.partial,this.make()}debug(){}make(){let e=this.pattern,t=this.options;if(!t.nocomment&&e.charAt(0)==="#"){this.comment=!0;return}if(!e){this.empty=!0;return}this.parseNegate();let r=this.globSet=this.braceExpand();t.debug&&(this.debug=(...i)=>console.error(...i)),this.debug(this.pattern,r),r=this.globParts=r.map(i=>i.split(Uy)),this.debug(this.pattern,r),r=r.map((i,o,s)=>i.map(this.parse,this)),this.debug(this.pattern,r),r=r.filter(i=>i.indexOf(!1)===-1),this.debug(this.pattern,r),this.set=r}parseNegate(){if(this.options.nonegate)return;let e=this.pattern,t=!1,r=0;for(let i=0;i<e.length&&e.charAt(i)==="!";i++)t=!t,r++;r&&(this.pattern=e.slice(r)),this.negate=t}matchOne(e,t,r){var i=this.options;this.debug("matchOne",{this:this,file:e,pattern:t}),this.debug("matchOne",e.length,t.length);for(var o=0,s=0,a=e.length,c=t.length;o<a&&s<c;o++,s++){this.debug("matchOne loop");var u=t[s],d=e[o];if(this.debug(t,u,d),u===!1)return!1;if(u===Tn){this.debug("GLOBSTAR",[t,u,d]);var g=o,m=s+1;if(m===c){for(this.debug("** at the end");o<a;o++)if(e[o]==="."||e[o]===".."||!i.dot&&e[o].charAt(0)===".")return!1;return!0}for(;g<a;){var y=e[g];if(this.debug(`
46
46
  globstar while`,e,g,t,m,y),this.matchOne(e.slice(g),t.slice(m),r))return this.debug("globstar found match!",g,a,y),!0;if(y==="."||y===".."||!i.dot&&y.charAt(0)==="."){this.debug("dot detected!",e,g,t,m);break}this.debug("globstar swallow a segment, and continue"),g++}return!!(r&&(this.debug(`
47
- >>> no match, partial?`,e,g,t,m),g===a))}var v;if(typeof u=="string"?(v=d===u,this.debug("string match",u,d,v)):(v=d.match(u),this.debug("pattern match",u,d,v)),!v)return!1}if(o===a&&s===c)return!0;if(o===a)return r;if(s===c)return o===a-1&&e[o]==="";throw new Error("wtf?")}braceExpand(){return Wy(this.pattern,this.options)}parse(e,t){xs(e);let r=this.options;if(e==="**")if(r.noglobstar)e="*";else return Tn;if(e==="")return"";let i="",o=!1,s=!1,a=[],c=[],u,d=!1,g=-1,m=-1,y,v,T,P=e.charAt(0)===".",q=r.dot||P,A=()=>P?"":q?"(?!(?:^|\\/)\\.{1,2}(?:$|\\/))":"(?!\\.)",L=V=>V.charAt(0)==="."?"":r.dot?"(?!(?:^|\\/)\\.{1,2}(?:$|\\/))":"(?!\\.)",K=()=>{if(u){switch(u){case"*":i+=pl,o=!0;break;case"?":i+=ml,o=!0;break;default:i+="\\"+u;break}this.debug("clearStateChar %j %j",u,i),u=!1}};for(let V=0,ne;V<e.length&&(ne=e.charAt(V));V++){if(this.debug("%s %s %s %j",e,V,i,ne),s){if(ne==="/")return!1;$y[ne]&&(i+="\\"),i+=ne,s=!1;continue}switch(ne){case"/":return!1;case"\\":if(d&&e.charAt(V+1)==="-"){i+=ne;continue}K(),s=!0;continue;case"?":case"*":case"+":case"@":case"!":if(this.debug("%s %s %s %j <-- stateChar",e,V,i,ne),d){this.debug(" in class"),ne==="!"&&V===m+1&&(ne="^"),i+=ne;continue}this.debug("call clearStateChar %j",u),K(),u=ne,r.noext&&K();continue;case"(":{if(d){i+="(";continue}if(!u){i+="\\(";continue}let ce={type:u,start:V-1,reStart:i.length,open:jy[u].open,close:jy[u].close};this.debug(this.pattern," ",ce),a.push(ce),i+=ce.open,ce.start===0&&ce.type!=="!"&&(P=!0,i+=L(e.slice(V+1))),this.debug("plType %j %j",u,i),u=!1;continue}case")":{let ce=a[a.length-1];if(d||!ce){i+="\\)";continue}a.pop(),K(),o=!0,v=ce,i+=v.close,v.type==="!"&&c.push(Object.assign(v,{reEnd:i.length}));continue}case"|":{let ce=a[a.length-1];if(d||!ce){i+="\\|";continue}K(),i+="|",ce.start===0&&ce.type!=="!"&&(P=!0,i+=L(e.slice(V+1)));continue}case"[":if(K(),d){i+="\\"+ne;continue}d=!0,m=V,g=i.length,i+=ne;continue;case"]":if(V===m+1||!d){i+="\\"+ne;continue}y=e.substring(m+1,V);try{RegExp("["+CT(bT(y))+"]"),i+=ne}catch{i=i.substring(0,g)+"(?:$.)"}o=!0,d=!1;continue;default:K(),$y[ne]&&!(ne==="^"&&d)&&(i+="\\"),i+=ne;break}}for(d&&(y=e.slice(m+1),T=this.parse(y,hl),i=i.substring(0,g)+"\\["+T[0],o=o||T[1]),v=a.pop();v;v=a.pop()){let V;V=i.slice(v.reStart+v.open.length),this.debug("setting tail",i,v),V=V.replace(/((?:\\{2}){0,64})(\\?)\|/g,(ce,Ne,U)=>(U||(U="\\"),Ne+Ne+U+"|")),this.debug(`tail=%j
48
- %s`,V,V,v,i);let ne=v.type==="*"?pl:v.type==="?"?ml:"\\"+v.type;o=!0,i=i.slice(0,v.reStart)+ne+"\\("+V}K(),s&&(i+="\\\\");let te=mT[i.charAt(0)];for(let V=c.length-1;V>-1;V--){let ne=c[V],ce=i.slice(0,ne.reStart),Ne=i.slice(ne.reStart,ne.reEnd-8),U=i.slice(ne.reEnd),I=i.slice(ne.reEnd-8,ne.reEnd)+U,J=ce.split(")").length,B=ce.split("(").length-J,pe=U;for(let oe=0;oe<B;oe++)pe=pe.replace(/\)[+*?]?/,"");U=pe;let ie=U===""&&t!==hl?"(?:$|\\/)":"";i=ce+Ne+U+ie+I}if(i!==""&&o&&(i="(?=.)"+i),te&&(i=A()+i),t===hl)return[i,o];if(r.nocase&&!o&&(o=e.toUpperCase()!==e.toLowerCase()),!o)return yT(e);let Z=r.nocase?"i":"";try{return Object.assign(new RegExp("^"+i+"$",Z),{_glob:e,_src:i})}catch{return new RegExp("$.")}}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let e=this.set;if(!e.length)return this.regexp=!1,this.regexp;let t=this.options,r=t.noglobstar?pl:t.dot?hT:gT,i=t.nocase?"i":"",o=e.map(s=>(s=s.map(a=>typeof a=="string"?wT(a):a===Tn?Tn:a._src).reduce((a,c)=>(a[a.length-1]===Tn&&c===Tn||a.push(c),a),[]),s.forEach((a,c)=>{a!==Tn||s[c-1]===Tn||(c===0?s.length>1?s[c+1]="(?:\\/|"+r+"\\/)?"+s[c+1]:s[c]=r:c===s.length-1?s[c-1]+="(?:\\/|"+r+")?":(s[c-1]+="(?:\\/|\\/"+r+"\\/)"+s[c+1],s[c+1]=Tn))}),s.filter(a=>a!==Tn).join("/"))).join("|");o="^(?:"+o+")$",this.negate&&(o="^(?!"+o+").*$");try{this.regexp=new RegExp(o,i)}catch{this.regexp=!1}return this.regexp}match(e,t=this.partial){if(this.debug("match",e,this.pattern),this.comment)return!1;if(this.empty)return e==="";if(e==="/"&&t)return!0;let r=this.options;gl.sep!=="/"&&(e=e.split(gl.sep).join("/")),e=e.split(Uy),this.debug(this.pattern,"split",e);let i=this.set;this.debug(this.pattern,"set",i);let o;for(let s=e.length-1;s>=0&&(o=e[s],!o);s--);for(let s=0;s<i.length;s++){let a=i[s],c=e;if(r.matchBase&&a.length===1&&(c=[o]),this.matchOne(c,a,t))return r.flipNegate?!0:!this.negate}return r.flipNegate?!1:this.negate}static defaults(e){return Yt.defaults(e).Minimatch}};Yt.Minimatch=pi});var Tl=E(br=>{"use strict";Object.defineProperty(br,"__esModule",{value:!0});br.DiagnosticFeature=br.DiagnosticPullMode=br.vsdiag=void 0;var DT=qs(),Se=require("vscode"),ot=fe(),ST=Xe(),yl=Ee();function Is(n,e){return n[e]===void 0&&(n[e]={}),n[e]}var hn;(function(n){let e;(function(t){t.full="full",t.unChanged="unChanged"})(e=n.DocumentDiagnosticReportKind||(n.DocumentDiagnosticReportKind={}))})(hn||(br.vsdiag=hn={}));var Fs;(function(n){n.onType="onType",n.onSave="onSave"})(Fs||(br.DiagnosticPullMode=Fs={}));var qt;(function(n){n.active="open",n.reschedule="reschedule",n.outDated="drop"})(qt||(qt={}));var bl=class n{constructor(){this.open=new Set,this._onOpen=new Se.EventEmitter,this._onClose=new Se.EventEmitter,n.fillTabResources(this.open);let e=t=>{if(t.closed.length===0&&t.opened.length===0)return;let r=this.open,i=new Set;n.fillTabResources(i);let o=new Set,s=new Set(i);for(let a of r.values())i.has(a)?s.delete(a):o.add(a);if(this.open=i,o.size>0){let a=new Set;for(let c of o)a.add(Se.Uri.parse(c));this._onClose.fire(a)}if(s.size>0){let a=new Set;for(let c of s)a.add(Se.Uri.parse(c));this._onOpen.fire(a)}};Se.window.tabGroups.onDidChangeTabs!==void 0?this.disposable=Se.window.tabGroups.onDidChangeTabs(e):this.disposable={dispose:()=>{}}}get onClose(){return this._onClose.event}get onOpen(){return this._onOpen.event}dispose(){this.disposable.dispose()}isActive(e){return e instanceof Se.Uri?Se.window.activeTextEditor?.document.uri===e:Se.window.activeTextEditor?.document===e}isVisible(e){let t=e instanceof Se.Uri?e:e.uri;return this.open.has(t.toString())}getTabResources(){let e=new Set;return n.fillTabResources(new Set,e),e}static fillTabResources(e,t){let r=e??new Set;for(let i of Se.window.tabGroups.all)for(let o of i.tabs){let s=o.input,a;s instanceof Se.TabInputText?a=s.uri:s instanceof Se.TabInputTextDiff?a=s.modified:s instanceof Se.TabInputCustom&&(a=s.uri),a!==void 0&&!r.has(a.toString())&&(r.add(a.toString()),t!==void 0&&t.add(a))}}},ft;(function(n){n[n.document=1]="document",n[n.workspace=2]="workspace"})(ft||(ft={}));var Qn;(function(n){function e(t){return t instanceof Se.Uri?t.toString():t.uri.toString()}n.asKey=e})(Qn||(Qn={}));var wl=class{constructor(){this.documentPullStates=new Map,this.workspacePullStates=new Map}track(e,t,r){let i=e===ft.document?this.documentPullStates:this.workspacePullStates,[o,s,a]=t instanceof Se.Uri?[t.toString(),t,r]:[t.uri.toString(),t.uri,t.version],c=i.get(o);return c===void 0&&(c={document:s,pulledVersion:a,resultId:void 0},i.set(o,c)),c}update(e,t,r,i){let o=e===ft.document?this.documentPullStates:this.workspacePullStates,[s,a,c,u]=t instanceof Se.Uri?[t.toString(),t,r,i]:[t.uri.toString(),t.uri,t.version,r],d=o.get(s);d===void 0?(d={document:a,pulledVersion:c,resultId:u},o.set(s,d)):(d.pulledVersion=c,d.resultId=u)}unTrack(e,t){let r=Qn.asKey(t);(e===ft.document?this.documentPullStates:this.workspacePullStates).delete(r)}tracks(e,t){let r=Qn.asKey(t);return(e===ft.document?this.documentPullStates:this.workspacePullStates).has(r)}getResultId(e,t){let r=Qn.asKey(t);return(e===ft.document?this.documentPullStates:this.workspacePullStates).get(r)?.resultId}getAllResultIds(){let e=[];for(let[t,r]of this.workspacePullStates)this.documentPullStates.has(t)&&(r=this.documentPullStates.get(t)),r.resultId!==void 0&&e.push({uri:t,value:r.resultId});return e}},Cl=class{constructor(e,t,r){this.client=e,this.tabs=t,this.options=r,this.isDisposed=!1,this.onDidChangeDiagnosticsEmitter=new Se.EventEmitter,this.provider=this.createProvider(),this.diagnostics=Se.languages.createDiagnosticCollection(r.identifier),this.openRequests=new Map,this.documentStates=new wl,this.workspaceErrorCounter=0}knows(e,t){let r=t instanceof Se.Uri?t:t.uri;return this.documentStates.tracks(e,t)||this.openRequests.has(r.toString())}forget(e,t){this.documentStates.unTrack(e,t)}pull(e,t){if(this.isDisposed)return;let r=e instanceof Se.Uri?e:e.uri;this.pullAsync(e).then(()=>{t&&t()},i=>{this.client.error(`Document pull failed for text document ${r.toString()}`,i,!1)})}async pullAsync(e,t){if(this.isDisposed)return;let r=e instanceof Se.Uri,i=r?e:e.uri,o=i.toString();t=r?t:e.version;let s=this.openRequests.get(o),a=r?this.documentStates.track(ft.document,e,t):this.documentStates.track(ft.document,e);if(s===void 0){let c=new Se.CancellationTokenSource;this.openRequests.set(o,{state:qt.active,document:e,version:t,tokenSource:c});let u,d;try{u=await this.provider.provideDiagnostics(e,a.resultId,c.token)??{kind:hn.DocumentDiagnosticReportKind.full,items:[]}}catch(g){if(g instanceof yl.LSPCancellationError&&ot.DiagnosticServerCancellationData.is(g.data)&&g.data.retriggerRequest===!1&&(d={state:qt.outDated,document:e}),d===void 0&&g instanceof Se.CancellationError)d={state:qt.reschedule,document:e};else throw g}if(d=d??this.openRequests.get(o),d===void 0){this.client.error(`Lost request state in diagnostic pull model. Clearing diagnostics for ${o}`),this.diagnostics.delete(i);return}if(this.openRequests.delete(o),!this.tabs.isVisible(e)){this.documentStates.unTrack(ft.document,e);return}if(d.state===qt.outDated)return;u!==void 0&&(u.kind===hn.DocumentDiagnosticReportKind.full&&this.diagnostics.set(i,u.items),a.pulledVersion=t,a.resultId=u.resultId),d.state===qt.reschedule&&this.pull(e)}else s.state===qt.active?(s.tokenSource.cancel(),this.openRequests.set(o,{state:qt.reschedule,document:s.document})):s.state===qt.outDated&&this.openRequests.set(o,{state:qt.reschedule,document:s.document})}forgetDocument(e){let t=e instanceof Se.Uri?e:e.uri,r=t.toString(),i=this.openRequests.get(r);this.options.workspaceDiagnostics?i!==void 0?this.openRequests.set(r,{state:qt.reschedule,document:e}):this.pull(e,()=>{this.forget(ft.document,e)}):(i!==void 0&&(i.state===qt.active&&i.tokenSource.cancel(),this.openRequests.set(r,{state:qt.outDated,document:e})),this.diagnostics.delete(t),this.forget(ft.document,e))}pullWorkspace(){this.isDisposed||this.pullWorkspaceAsync().then(()=>{this.workspaceTimeout=(0,ot.RAL)().timer.setTimeout(()=>{this.pullWorkspace()},2e3)},e=>{!(e instanceof yl.LSPCancellationError)&&!ot.DiagnosticServerCancellationData.is(e.data)&&(this.client.error("Workspace diagnostic pull failed.",e,!1),this.workspaceErrorCounter++),this.workspaceErrorCounter<=5&&(this.workspaceTimeout=(0,ot.RAL)().timer.setTimeout(()=>{this.pullWorkspace()},2e3))})}async pullWorkspaceAsync(){if(!this.provider.provideWorkspaceDiagnostics||this.isDisposed)return;this.workspaceCancellation!==void 0&&(this.workspaceCancellation.cancel(),this.workspaceCancellation=void 0),this.workspaceCancellation=new Se.CancellationTokenSource;let e=this.documentStates.getAllResultIds().map(t=>({uri:this.client.protocol2CodeConverter.asUri(t.uri),value:t.value}));await this.provider.provideWorkspaceDiagnostics(e,this.workspaceCancellation.token,t=>{if(!(!t||this.isDisposed))for(let r of t.items)r.kind===hn.DocumentDiagnosticReportKind.full&&(this.documentStates.tracks(ft.document,r.uri)||this.diagnostics.set(r.uri,r.items)),this.documentStates.update(ft.workspace,r.uri,r.version??void 0,r.resultId)})}createProvider(){let e={onDidChangeDiagnostics:this.onDidChangeDiagnosticsEmitter.event,provideDiagnostics:(t,r,i)=>{let o=(a,c,u)=>{let d={identifier:this.options.identifier,textDocument:{uri:this.client.code2ProtocolConverter.asUri(a instanceof Se.Uri?a:a.uri)},previousResultId:c};return this.isDisposed===!0||!this.client.isRunning()?{kind:hn.DocumentDiagnosticReportKind.full,items:[]}:this.client.sendRequest(ot.DocumentDiagnosticRequest.type,d,u).then(async g=>g==null||this.isDisposed||u.isCancellationRequested?{kind:hn.DocumentDiagnosticReportKind.full,items:[]}:g.kind===ot.DocumentDiagnosticReportKind.Full?{kind:hn.DocumentDiagnosticReportKind.full,resultId:g.resultId,items:await this.client.protocol2CodeConverter.asDiagnostics(g.items,u)}:{kind:hn.DocumentDiagnosticReportKind.unChanged,resultId:g.resultId},g=>this.client.handleFailedRequest(ot.DocumentDiagnosticRequest.type,u,g,{kind:hn.DocumentDiagnosticReportKind.full,items:[]}))},s=this.client.middleware;return s.provideDiagnostics?s.provideDiagnostics(t,r,i,o):o(t,r,i)}};return this.options.workspaceDiagnostics&&(e.provideWorkspaceDiagnostics=(t,r,i)=>{let o=async u=>u.kind===ot.DocumentDiagnosticReportKind.Full?{kind:hn.DocumentDiagnosticReportKind.full,uri:this.client.protocol2CodeConverter.asUri(u.uri),resultId:u.resultId,version:u.version,items:await this.client.protocol2CodeConverter.asDiagnostics(u.items,r)}:{kind:hn.DocumentDiagnosticReportKind.unChanged,uri:this.client.protocol2CodeConverter.asUri(u.uri),resultId:u.resultId,version:u.version},s=u=>{let d=[];for(let g of u)d.push({uri:this.client.code2ProtocolConverter.asUri(g.uri),value:g.value});return d},a=(u,d)=>{let g=(0,ST.generateUuid)(),m=this.client.onProgress(ot.WorkspaceDiagnosticRequest.partialResult,g,async v=>{if(v==null){i(null);return}let T={items:[]};for(let P of v.items)try{T.items.push(await o(P))}catch(q){this.client.error("Converting workspace diagnostics failed.",q)}i(T)}),y={identifier:this.options.identifier,previousResultIds:s(u),partialResultToken:g};return this.isDisposed===!0||!this.client.isRunning()?{items:[]}:this.client.sendRequest(ot.WorkspaceDiagnosticRequest.type,y,d).then(async v=>{if(d.isCancellationRequested)return{items:[]};let T={items:[]};for(let P of v.items)T.items.push(await o(P));return m.dispose(),i(T),{items:[]}},v=>(m.dispose(),this.client.handleFailedRequest(ot.DocumentDiagnosticRequest.type,d,v,{items:[]})))},c=this.client.middleware;return c.provideWorkspaceDiagnostics?c.provideWorkspaceDiagnostics(t,r,i,a):a(t,r,i)}),e}dispose(){this.isDisposed=!0,this.workspaceCancellation?.cancel(),this.workspaceTimeout?.dispose();for(let[e,t]of this.openRequests)t.state===qt.active&&t.tokenSource.cancel(),this.openRequests.set(e,{state:qt.outDated,document:t.document});this.diagnostics.dispose()}},Dl=class{constructor(e){this.diagnosticRequestor=e,this.documents=new ot.LinkedMap,this.isDisposed=!1}add(e){if(this.isDisposed===!0)return;let t=Qn.asKey(e);this.documents.has(t)||(this.documents.set(t,e,ot.Touch.Last),this.trigger())}remove(e){let t=Qn.asKey(e);this.documents.delete(t),this.documents.size===0?this.stop():t===this.endDocumentKey()&&(this.endDocument=this.documents.last)}trigger(){if(this.isDisposed!==!0){if(this.intervalHandle!==void 0){this.endDocument=this.documents.last;return}this.endDocument=this.documents.last,this.intervalHandle=(0,ot.RAL)().timer.setInterval(()=>{let e=this.documents.first;if(e!==void 0){let t=Qn.asKey(e);this.diagnosticRequestor.pull(e),this.documents.set(t,e,ot.Touch.Last),t===this.endDocumentKey()&&this.stop()}},200)}}dispose(){this.isDisposed=!0,this.stop(),this.documents.clear()}stop(){this.intervalHandle?.dispose(),this.intervalHandle=void 0,this.endDocument=void 0}endDocumentKey(){return this.endDocument!==void 0?Qn.asKey(this.endDocument):void 0}},Sl=class{constructor(e,t,r){let i=e.clientOptions.diagnosticPullOptions??{onChange:!0,onSave:!1},o=e.protocol2CodeConverter.asDocumentSelector(r.documentSelector),s=[],a=v=>{let T=r.documentSelector;if(i.match!==void 0)return i.match(T,v);for(let P of T)if(ot.TextDocumentFilter.is(P)){if(typeof P=="string"||P.language!==void 0&&P.language!=="*"||P.scheme!==void 0&&P.scheme!=="*"&&P.scheme!==v.scheme)return!1;if(P.pattern!==void 0){let q=new DT.Minimatch(P.pattern,{noext:!0});if(!q.makeRe()||!q.match(v.fsPath))return!1}}return!0},c=v=>v instanceof Se.Uri?a(v):Se.languages.match(o,v)>0&&t.isVisible(v),u=v=>v instanceof Se.Uri?this.activeTextDocument?.uri.toString()===v.toString():this.activeTextDocument===v;this.diagnosticRequestor=new Cl(e,t,r),this.backgroundScheduler=new Dl(this.diagnosticRequestor);let d=v=>{!c(v)||!r.interFileDependencies||u(v)||this.backgroundScheduler.add(v)};this.activeTextDocument=Se.window.activeTextEditor?.document,Se.window.onDidChangeActiveTextEditor(v=>{let T=this.activeTextDocument;this.activeTextDocument=v?.document,T!==void 0&&d(T),this.activeTextDocument!==void 0&&this.backgroundScheduler.remove(this.activeTextDocument)});let g=e.getFeature(ot.DidOpenTextDocumentNotification.method);s.push(g.onNotificationSent(v=>{let T=v.textDocument;this.diagnosticRequestor.knows(ft.document,T)||c(T)&&this.diagnosticRequestor.pull(T,()=>{d(T)})})),s.push(t.onOpen(v=>{for(let T of v){if(this.diagnosticRequestor.knows(ft.document,T))continue;let P=T.toString(),q;for(let A of Se.workspace.textDocuments)if(P===A.uri.toString()){q=A;break}q!==void 0&&c(q)&&this.diagnosticRequestor.pull(q,()=>{d(q)})}}));let m=new Set;for(let v of Se.workspace.textDocuments)c(v)&&(this.diagnosticRequestor.pull(v,()=>{d(v)}),m.add(v.uri.toString()));if(i.onTabs===!0)for(let v of t.getTabResources())!m.has(v.toString())&&c(v)&&this.diagnosticRequestor.pull(v,()=>{d(v)});if(i.onChange===!0){let v=e.getFeature(ot.DidChangeTextDocumentNotification.method);s.push(v.onNotificationSent(async T=>{let P=T.textDocument;(i.filter===void 0||!i.filter(P,Fs.onType))&&this.diagnosticRequestor.knows(ft.document,P)&&this.diagnosticRequestor.pull(P,()=>{this.backgroundScheduler.trigger()})}))}if(i.onSave===!0){let v=e.getFeature(ot.DidSaveTextDocumentNotification.method);s.push(v.onNotificationSent(T=>{let P=T.textDocument;(i.filter===void 0||!i.filter(P,Fs.onSave))&&this.diagnosticRequestor.knows(ft.document,P)&&this.diagnosticRequestor.pull(T.textDocument,()=>{this.backgroundScheduler.trigger()})}))}let y=e.getFeature(ot.DidCloseTextDocumentNotification.method);s.push(y.onNotificationSent(v=>{this.cleanUpDocument(v.textDocument)})),t.onClose(v=>{for(let T of v)this.cleanUpDocument(T)}),this.diagnosticRequestor.onDidChangeDiagnosticsEmitter.event(()=>{for(let v of Se.workspace.textDocuments)c(v)&&this.diagnosticRequestor.pull(v)}),r.workspaceDiagnostics===!0&&r.identifier!=="da348dc5-c30a-4515-9d98-31ff3be38d14"&&this.diagnosticRequestor.pullWorkspace(),this.disposable=Se.Disposable.from(...s,this.backgroundScheduler,this.diagnosticRequestor)}get onDidChangeDiagnosticsEmitter(){return this.diagnosticRequestor.onDidChangeDiagnosticsEmitter}get diagnostics(){return this.diagnosticRequestor.provider}cleanUpDocument(e){this.diagnosticRequestor.knows(ft.document,e)&&(this.diagnosticRequestor.forgetDocument(e),this.backgroundScheduler.remove(e))}},_l=class extends yl.TextDocumentLanguageFeature{constructor(e){super(e,ot.DocumentDiagnosticRequest.type)}fillClientCapabilities(e){let t=Is(Is(e,"textDocument"),"diagnostic");t.dynamicRegistration=!0,t.relatedDocumentSupport=!1,Is(Is(e,"workspace"),"diagnostics").refreshSupport=!0}initialize(e,t){this._client.onRequest(ot.DiagnosticRefreshRequest.type,async()=>{for(let s of this.getAllProviders())s.onDidChangeDiagnosticsEmitter.fire()});let[i,o]=this.getRegistration(t,e.diagnosticProvider);!i||!o||this.register({id:i,registerOptions:o})}clear(){this.tabs!==void 0&&(this.tabs.dispose(),this.tabs=void 0),super.clear()}registerLanguageProvider(e){this.tabs===void 0&&(this.tabs=new bl);let t=new Sl(this._client,this.tabs,e);return[t.disposable,t]}};br.DiagnosticFeature=_l});var zy=E(Ls=>{"use strict";Object.defineProperty(Ls,"__esModule",{value:!0});Ls.NotebookDocumentSyncFeature=void 0;var It=require("vscode"),_T=qs(),Yn=fe(),TT=Xe(),Ky=un();function Vy(n,e){return n[e]===void 0&&(n[e]={}),n[e]}var hi;(function(n){let e;(function(t){function r(m,y){return{version:m.version,uri:y.asUri(m.uri)}}t.asVersionedNotebookDocumentIdentifier=r;function i(m,y,v){let T=Yn.NotebookDocument.create(v.asUri(m.uri),m.notebookType,m.version,o(y,v));return Object.keys(m.metadata).length>0&&(T.metadata=s(m.metadata)),T}t.asNotebookDocument=i;function o(m,y){return m.map(v=>a(v,y))}t.asNotebookCells=o;function s(m){return u(new Set,m)}t.asMetadata=s;function a(m,y){let v=Yn.NotebookCell.create(c(m.kind),y.asUri(m.document.uri));return Object.keys(m.metadata).length>0&&(v.metadata=s(m.metadata)),m.executionSummary!==void 0&&Ky.number(m.executionSummary.executionOrder)&&Ky.boolean(m.executionSummary.success)&&(v.executionSummary={executionOrder:m.executionSummary.executionOrder,success:m.executionSummary.success}),v}t.asNotebookCell=a;function c(m){switch(m){case It.NotebookCellKind.Markup:return Yn.NotebookCellKind.Markup;case It.NotebookCellKind.Code:return Yn.NotebookCellKind.Code}}function u(m,y){if(m.has(y))throw new Error("Can't deep copy cyclic structures.");if(Array.isArray(y)){let v=[];for(let T of y)if(T!==null&&typeof T=="object"||Array.isArray(T))v.push(u(m,T));else{if(T instanceof RegExp)throw new Error("Can't transfer regular expressions to the server");v.push(T)}return v}else{let v=Object.keys(y),T=Object.create(null);for(let P of v){let q=y[P];if(q!==null&&typeof q=="object"||Array.isArray(q))T[P]=u(m,q);else{if(q instanceof RegExp)throw new Error("Can't transfer regular expressions to the server");T[P]=q}}return T}}function d(m,y){let v=y.asChangeTextDocumentParams(m,m.document.uri,m.document.version);return{document:v.textDocument,changes:v.contentChanges}}t.asTextContentChange=d;function g(m,y){let v=Object.create(null);if(m.metadata&&(v.metadata=n.c2p.asMetadata(m.metadata)),m.cells!==void 0){let T=Object.create(null),P=m.cells;P.structure&&(T.structure={array:{start:P.structure.array.start,deleteCount:P.structure.array.deleteCount,cells:P.structure.array.cells!==void 0?P.structure.array.cells.map(q=>n.c2p.asNotebookCell(q,y)):void 0},didOpen:P.structure.didOpen!==void 0?P.structure.didOpen.map(q=>y.asOpenTextDocumentParams(q.document).textDocument):void 0,didClose:P.structure.didClose!==void 0?P.structure.didClose.map(q=>y.asCloseTextDocumentParams(q.document).textDocument):void 0}),P.data!==void 0&&(T.data=P.data.map(q=>n.c2p.asNotebookCell(q,y))),P.textContent!==void 0&&(T.textContent=P.textContent.map(q=>n.c2p.asTextContentChange(q,y))),Object.keys(T).length>0&&(v.cells=T)}return v}t.asNotebookDocumentChangeEvent=g})(e=n.c2p||(n.c2p={}))})(hi||(hi={}));var Rl;(function(n){function e(a,c,u){let d=a.length,g=c.length,m=0;for(;m<g&&m<d&&t(a[m],c[m],u);)m++;if(m<g&&m<d){let y=d-1,v=g-1;for(;y>=0&&v>=0&&t(a[y],c[v],u);)y--,v--;let T=y+1-m,P=m===v+1?void 0:c.slice(m,v+1);return P!==void 0?{start:m,deleteCount:T,cells:P}:{start:m,deleteCount:T}}else return m<g?{start:m,deleteCount:0,cells:c.slice(m)}:m<d?{start:m,deleteCount:d-m}:void 0}n.computeDiff=e;function t(a,c,u=!0){return a.kind!==c.kind||a.document.uri.toString()!==c.document.uri.toString()||a.document.languageId!==c.document.languageId||!r(a.executionSummary,c.executionSummary)?!1:!u||u&&o(a.metadata,c.metadata)}function r(a,c){return a===c?!0:a===void 0||c===void 0?!1:a.executionOrder===c.executionOrder&&a.success===c.success&&i(a.timing,c.timing)}function i(a,c){return a===c?!0:a===void 0||c===void 0?!1:a.startTime===c.startTime&&a.endTime===c.endTime}function o(a,c){if(a===c)return!0;if(a==null||c===null||c===void 0||typeof a!=typeof c||typeof a!="object")return!1;let u=Array.isArray(a),d=Array.isArray(c);if(u!==d)return!1;if(u&&d){if(a.length!==c.length)return!1;for(let g=0;g<a.length;g++)if(!o(a[g],c[g]))return!1}if(s(a)&&s(c)){let g=Object.keys(a),m=Object.keys(c);if(g.length!==m.length||(g.sort(),m.sort(),!o(g,m)))return!1;for(let y=0;y<g.length;y++){let v=g[y];if(!o(a[v],c[v]))return!1}return!0}return!1}function s(a){return a!==null&&typeof a=="object"}n.isObjectLiteral=s})(Rl||(Rl={}));var Pl;(function(n){function e(t,r){if(typeof t=="string")return t==="*"||r.notebookType===t;if(t.notebookType!==void 0&&t.notebookType!=="*"&&r.notebookType!==t.notebookType)return!1;let i=r.uri;if(t.scheme!==void 0&&t.scheme!=="*"&&i.scheme!==t.scheme)return!1;if(t.pattern!==void 0){let o=new _T.Minimatch(t.pattern,{noext:!0});if(!o.makeRe()||!o.match(i.fsPath))return!1}return!0}n.matchNotebook=e})(Pl||(Pl={}));var Os;(function(n){function e(r){let i=r.notebookSelector,o=[];for(let s of i){let a=(typeof s.notebook=="string"?s.notebook:s.notebook?.notebookType)??"*",c=typeof s.notebook=="string"?void 0:s.notebook?.scheme,u=typeof s.notebook=="string"?void 0:s.notebook?.pattern;if(s.cells!==void 0)for(let d of s.cells)o.push(t(a,c,u,d.language));else o.push(t(a,c,u,void 0))}return o}n.asDocumentSelector=e;function t(r,i,o,s){return i===void 0&&o===void 0?{notebook:r,language:s}:{notebook:{notebookType:r,scheme:i,pattern:o},language:s}}})(Os||(Os={}));var Ms;(function(n){function e(t){return{cells:t,uris:new Set(t.map(r=>r.document.uri.toString()))}}n.create=e})(Ms||(Ms={}));var gi=class{constructor(e,t){this.client=e,this.options=t,this.notebookSyncInfo=new Map,this.notebookDidOpen=new Set,this.disposables=[],this.selector=e.protocol2CodeConverter.asDocumentSelector(Os.asDocumentSelector(t)),It.workspace.onDidOpenNotebookDocument(r=>{this.notebookDidOpen.add(r.uri.toString()),this.didOpen(r)},void 0,this.disposables);for(let r of It.workspace.notebookDocuments)this.notebookDidOpen.add(r.uri.toString()),this.didOpen(r);It.workspace.onDidChangeNotebookDocument(r=>this.didChangeNotebookDocument(r),void 0,this.disposables),this.options.save===!0&&It.workspace.onDidSaveNotebookDocument(r=>this.didSave(r),void 0,this.disposables),It.workspace.onDidCloseNotebookDocument(r=>{this.didClose(r),this.notebookDidOpen.delete(r.uri.toString())},void 0,this.disposables)}getState(){for(let e of It.workspace.notebookDocuments)if(this.getMatchingCells(e)!==void 0)return{kind:"document",id:"$internal",registrations:!0,matches:!0};return{kind:"document",id:"$internal",registrations:!0,matches:!1}}get mode(){return"notebook"}handles(e){return It.languages.match(this.selector,e)>0}didOpenNotebookCellTextDocument(e,t){if(It.languages.match(this.selector,t.document)===0||!this.notebookDidOpen.has(e.uri.toString()))return;let r=this.notebookSyncInfo.get(e.uri.toString()),i=this.cellMatches(e,t);if(r!==void 0){let o=r.uris.has(t.document.uri.toString());if(i&&o||!i&&!o)return;if(i){let s=this.getMatchingCells(e);if(s!==void 0){let a=this.asNotebookDocumentChangeEvent(e,void 0,r,s);a!==void 0&&this.doSendChange(a,s).catch(()=>{})}}}else i&&this.doSendOpen(e,[t]).catch(()=>{})}didChangeNotebookCellTextDocument(e,t){It.languages.match(this.selector,t.document)!==0&&this.doSendChange({notebook:e,cells:{textContent:[t]}},void 0).catch(()=>{})}didCloseNotebookCellTextDocument(e,t){let r=this.notebookSyncInfo.get(e.uri.toString());if(r===void 0)return;let i=t.document.uri,o=r.cells.findIndex(s=>s.document.uri.toString()===i.toString());if(o!==-1)if(o===0&&r.cells.length===1)this.doSendClose(e,r.cells).catch(()=>{});else{let s=r.cells.slice(),a=s.splice(o,1);this.doSendChange({notebook:e,cells:{structure:{array:{start:o,deleteCount:1},didClose:a}}},s).catch(()=>{})}}dispose(){for(let e of this.disposables)e.dispose()}didOpen(e,t=this.getMatchingCells(e),r=this.notebookSyncInfo.get(e.uri.toString())){if(r!==void 0)if(t!==void 0){let i=this.asNotebookDocumentChangeEvent(e,void 0,r,t);i!==void 0&&this.doSendChange(i,t).catch(()=>{})}else this.doSendClose(e,[]).catch(()=>{});else{if(t===void 0)return;this.doSendOpen(e,t).catch(()=>{})}}didChangeNotebookDocument(e){let t=e.notebook,r=this.notebookSyncInfo.get(t.uri.toString());if(r===void 0){if(e.contentChanges.length===0)return;let i=this.getMatchingCells(t);if(i===void 0)return;this.didOpen(t,i,r)}else{let i=this.getMatchingCells(t);if(i===void 0){this.didClose(t,r);return}let o=this.asNotebookDocumentChangeEvent(e.notebook,e,r,i);o!==void 0&&this.doSendChange(o,i).catch(()=>{})}}didSave(e){this.notebookSyncInfo.get(e.uri.toString())!==void 0&&this.doSendSave(e).catch(()=>{})}didClose(e,t=this.notebookSyncInfo.get(e.uri.toString())){if(t===void 0)return;let r=e.getCells().filter(i=>t.uris.has(i.document.uri.toString()));this.doSendClose(e,r).catch(()=>{})}async sendDidOpenNotebookDocument(e){let t=this.getMatchingCells(e);if(t!==void 0)return this.doSendOpen(e,t)}async doSendOpen(e,t){let r=async(o,s)=>{let a=hi.c2p.asNotebookDocument(o,s,this.client.code2ProtocolConverter),c=s.map(u=>this.client.code2ProtocolConverter.asTextDocumentItem(u.document));try{await this.client.sendNotification(Yn.DidOpenNotebookDocumentNotification.type,{notebookDocument:a,cellTextDocuments:c})}catch(u){throw this.client.error("Sending DidOpenNotebookDocumentNotification failed",u),u}},i=this.client.middleware?.notebooks;return this.notebookSyncInfo.set(e.uri.toString(),Ms.create(t)),i?.didOpen!==void 0?i.didOpen(e,t,r):r(e,t)}async sendDidChangeNotebookDocument(e){return this.doSendChange(e,void 0)}async doSendChange(e,t=this.getMatchingCells(e.notebook)){let r=async o=>{try{await this.client.sendNotification(Yn.DidChangeNotebookDocumentNotification.type,{notebookDocument:hi.c2p.asVersionedNotebookDocumentIdentifier(o.notebook,this.client.code2ProtocolConverter),change:hi.c2p.asNotebookDocumentChangeEvent(o,this.client.code2ProtocolConverter)})}catch(s){throw this.client.error("Sending DidChangeNotebookDocumentNotification failed",s),s}},i=this.client.middleware?.notebooks;return e.cells?.structure!==void 0&&this.notebookSyncInfo.set(e.notebook.uri.toString(),Ms.create(t??[])),i?.didChange!==void 0?i?.didChange(e,r):r(e)}async sendDidSaveNotebookDocument(e){return this.doSendSave(e)}async doSendSave(e){let t=async i=>{try{await this.client.sendNotification(Yn.DidSaveNotebookDocumentNotification.type,{notebookDocument:{uri:this.client.code2ProtocolConverter.asUri(i.uri)}})}catch(o){throw this.client.error("Sending DidSaveNotebookDocumentNotification failed",o),o}},r=this.client.middleware?.notebooks;return r?.didSave!==void 0?r.didSave(e,t):t(e)}async sendDidCloseNotebookDocument(e){return this.doSendClose(e,this.getMatchingCells(e)??[])}async doSendClose(e,t){let r=async(o,s)=>{try{await this.client.sendNotification(Yn.DidCloseNotebookDocumentNotification.type,{notebookDocument:{uri:this.client.code2ProtocolConverter.asUri(o.uri)},cellTextDocuments:s.map(a=>this.client.code2ProtocolConverter.asTextDocumentIdentifier(a.document))})}catch(a){throw this.client.error("Sending DidCloseNotebookDocumentNotification failed",a),a}},i=this.client.middleware?.notebooks;return this.notebookSyncInfo.delete(e.uri.toString()),i?.didClose!==void 0?i.didClose(e,t,r):r(e,t)}asNotebookDocumentChangeEvent(e,t,r,i){if(t!==void 0&&t.notebook!==e)throw new Error("Notebook must be identical");let o={notebook:e};t?.metadata!==void 0&&(o.metadata=hi.c2p.asMetadata(t.metadata));let s;if(t?.cellChanges!==void 0&&t.cellChanges.length>0){let a=[];s=new Set(i.map(c=>c.document.uri.toString()));for(let c of t.cellChanges)s.has(c.cell.document.uri.toString())&&(c.executionSummary!==void 0||c.metadata!==void 0)&&a.push(c.cell);a.length>0&&(o.cells=o.cells??{},o.cells.data=a)}if((t?.contentChanges!==void 0&&t.contentChanges.length>0||t===void 0)&&r!==void 0&&i!==void 0){let a=r.cells,c=i,u=Rl.computeDiff(a,c,!1),d,g;if(u!==void 0){d=u.cells===void 0?new Map:new Map(u.cells.map(v=>[v.document.uri.toString(),v])),g=u.deleteCount===0?new Map:new Map(a.slice(u.start,u.start+u.deleteCount).map(v=>[v.document.uri.toString(),v]));for(let v of Array.from(g.keys()))d.has(v)&&(g.delete(v),d.delete(v));o.cells=o.cells??{};let m=[],y=[];if(d.size>0||g.size>0){for(let v of d.values())m.push(v);for(let v of g.values())y.push(v)}o.cells.structure={array:u,didOpen:m,didClose:y}}}return Object.keys(o).length>1?o:void 0}getMatchingCells(e,t=e.getCells()){if(this.options.notebookSelector!==void 0){for(let r of this.options.notebookSelector)if(r.notebook===void 0||Pl.matchNotebook(r.notebook,e)){let i=this.filterCells(e,t,r.cells);return i.length===0?void 0:i}}}cellMatches(e,t){let r=this.getMatchingCells(e,[t]);return r!==void 0&&r[0]===t}filterCells(e,t,r){let i=r!==void 0?t.filter(o=>{let s=o.document.languageId;return r.some(a=>a.language==="*"||s===a.language)}):t;return typeof this.client.clientOptions.notebookDocumentOptions?.filterCells=="function"?this.client.clientOptions.notebookDocumentOptions.filterCells(e,i):i}},As=class n{constructor(e){this.client=e,this.registrations=new Map,this.registrationType=Yn.NotebookDocumentSyncRegistrationType.type,It.workspace.onDidOpenTextDocument(t=>{if(t.uri.scheme!==n.CellScheme)return;let[r,i]=this.findNotebookDocumentAndCell(t);if(!(r===void 0||i===void 0))for(let o of this.registrations.values())o instanceof gi&&o.didOpenNotebookCellTextDocument(r,i)}),It.workspace.onDidChangeTextDocument(t=>{if(t.contentChanges.length===0)return;let r=t.document;if(r.uri.scheme!==n.CellScheme)return;let[i]=this.findNotebookDocumentAndCell(r);if(i!==void 0)for(let o of this.registrations.values())o instanceof gi&&o.didChangeNotebookCellTextDocument(i,t)}),It.workspace.onDidCloseTextDocument(t=>{if(t.uri.scheme!==n.CellScheme)return;let[r,i]=this.findNotebookDocumentAndCell(t);if(!(r===void 0||i===void 0))for(let o of this.registrations.values())o instanceof gi&&o.didCloseNotebookCellTextDocument(r,i)})}getState(){if(this.registrations.size===0)return{kind:"document",id:this.registrationType.method,registrations:!1,matches:!1};for(let e of this.registrations.values()){let t=e.getState();if(t.kind==="document"&&t.registrations===!0&&t.matches===!0)return{kind:"document",id:this.registrationType.method,registrations:!0,matches:!0}}return{kind:"document",id:this.registrationType.method,registrations:!0,matches:!1}}fillClientCapabilities(e){let t=Vy(Vy(e,"notebookDocument"),"synchronization");t.dynamicRegistration=!0,t.executionSummarySupport=!0}preInitialize(e){let t=e.notebookDocumentSync;t!==void 0&&(this.dedicatedChannel=this.client.protocol2CodeConverter.asDocumentSelector(Os.asDocumentSelector(t)))}initialize(e){let t=e.notebookDocumentSync;if(t===void 0)return;let r=t.id??TT.generateUuid();this.register({id:r,registerOptions:t})}register(e){let t=new gi(this.client,e.registerOptions);this.registrations.set(e.id,t)}unregister(e){let t=this.registrations.get(e);t&&t.dispose()}clear(){for(let e of this.registrations.values())e.dispose();this.registrations.clear()}handles(e){if(e.uri.scheme!==n.CellScheme)return!1;if(this.dedicatedChannel!==void 0&&It.languages.match(this.dedicatedChannel,e)>0)return!0;for(let t of this.registrations.values())if(t.handles(e))return!0;return!1}getProvider(e){for(let t of this.registrations.values())if(t.handles(e.document))return t}findNotebookDocumentAndCell(e){let t=e.uri.toString();for(let r of It.workspace.notebookDocuments)for(let i of r.getCells())if(i.document.uri.toString()===t)return[r,i];return[void 0,void 0]}};Ls.NotebookDocumentSyncFeature=As;As.CellScheme="vscode-notebook-cell"});var Gy=E(wr=>{"use strict";Object.defineProperty(wr,"__esModule",{value:!0});wr.SyncConfigurationFeature=wr.toJSONObject=wr.ConfigurationFeature=void 0;var mi=require("vscode"),Gi=fe(),RT=un(),PT=Xe(),By=Ee(),kl=class{constructor(e){this._client=e}getState(){return{kind:"static"}}fillClientCapabilities(e){e.workspace=e.workspace||{},e.workspace.configuration=!0}initialize(){let e=this._client;e.onRequest(Gi.ConfigurationRequest.type,(t,r)=>{let i=s=>{let a=[];for(let c of s.items){let u=c.scopeUri!==void 0&&c.scopeUri!==null?this._client.protocol2CodeConverter.asUri(c.scopeUri):void 0;a.push(this.getConfiguration(u,c.section!==null?c.section:void 0))}return a},o=e.middleware.workspace;return o&&o.configuration?o.configuration(t,r,i):i(t,r)})}getConfiguration(e,t){let r=null;if(t){let i=t.lastIndexOf(".");if(i===-1)r=Fr(mi.workspace.getConfiguration(void 0,e).get(t));else{let o=mi.workspace.getConfiguration(t.substr(0,i),e);o&&(r=Fr(o.get(t.substr(i+1))))}}else{let i=mi.workspace.getConfiguration(void 0,e);r={};for(let o of Object.keys(i))i.has(o)&&(r[o]=Fr(i.get(o)))}return r===void 0&&(r=null),r}clear(){}};wr.ConfigurationFeature=kl;function Fr(n){if(n){if(Array.isArray(n))return n.map(Fr);if(typeof n=="object"){let e=Object.create(null);for(let t in n)Object.prototype.hasOwnProperty.call(n,t)&&(e[t]=Fr(n[t]));return e}}return n}wr.toJSONObject=Fr;var El=class{constructor(e){this._client=e,this.isCleared=!1,this._listeners=new Map}getState(){return{kind:"workspace",id:this.registrationType.method,registrations:this._listeners.size>0}}get registrationType(){return Gi.DidChangeConfigurationNotification.type}fillClientCapabilities(e){(0,By.ensure)((0,By.ensure)(e,"workspace"),"didChangeConfiguration").dynamicRegistration=!0}initialize(){this.isCleared=!1;let e=this._client.clientOptions.synchronize?.configurationSection;e!==void 0&&this.register({id:PT.generateUuid(),registerOptions:{section:e}})}register(e){let t=mi.workspace.onDidChangeConfiguration(r=>{this.onDidChangeConfiguration(e.registerOptions.section,r)});this._listeners.set(e.id,t),e.registerOptions.section!==void 0&&this.onDidChangeConfiguration(e.registerOptions.section,void 0)}unregister(e){let t=this._listeners.get(e);t&&(this._listeners.delete(e),t.dispose())}clear(){for(let e of this._listeners.values())e.dispose();this._listeners.clear(),this.isCleared=!0}onDidChangeConfiguration(e,t){if(this.isCleared)return;let r;if(RT.string(e)?r=[e]:r=e,r!==void 0&&t!==void 0&&!r.some(a=>t.affectsConfiguration(a)))return;let i=async s=>s===void 0?this._client.sendNotification(Gi.DidChangeConfigurationNotification.type,{settings:null}):this._client.sendNotification(Gi.DidChangeConfigurationNotification.type,{settings:this.extractSettingsInformation(s)}),o=this._client.middleware.workspace?.didChangeConfiguration;(o?o(r,i):i(r)).catch(s=>{this._client.error(`Sending notification ${Gi.DidChangeConfigurationNotification.type.method} failed`,s)})}extractSettingsInformation(e){function t(o,s){let a=o;for(let c=0;c<s.length-1;c++){let u=a[s[c]];u||(u=Object.create(null),a[s[c]]=u),a=u}return a}let r=this._client.clientOptions.workspaceFolder?this._client.clientOptions.workspaceFolder.uri:void 0,i=Object.create(null);for(let o=0;o<e.length;o++){let s=e[o],a=s.indexOf("."),c=null;if(a>=0?c=mi.workspace.getConfiguration(s.substr(0,a),r).get(s.substr(a+1)):c=mi.workspace.getConfiguration(void 0,r).get(s),c){let u=e[o].split(".");t(i,u)[u[u.length-1]]=Fr(c)}}return i}};wr.SyncConfigurationFeature=El});var Jy=E(Vt=>{"use strict";Object.defineProperty(Vt,"__esModule",{value:!0});Vt.DidSaveTextDocumentFeature=Vt.WillSaveWaitUntilFeature=Vt.WillSaveFeature=Vt.DidChangeTextDocumentFeature=Vt.DidCloseTextDocumentFeature=Vt.DidOpenTextDocumentFeature=void 0;var Zt=require("vscode"),Ke=fe(),Ze=Ee(),vi=Xe(),xl=class extends Ze.TextDocumentEventFeature{constructor(e,t){super(e,Zt.workspace.onDidOpenTextDocument,Ke.DidOpenTextDocumentNotification.type,()=>e.middleware.didOpen,r=>e.code2ProtocolConverter.asOpenTextDocumentParams(r),r=>r,Ze.TextDocumentEventFeature.textDocumentFilter),this._syncedDocuments=t}get openDocuments(){return this._syncedDocuments.values()}fillClientCapabilities(e){(0,Ze.ensure)((0,Ze.ensure)(e,"textDocument"),"synchronization").dynamicRegistration=!0}initialize(e,t){let r=e.resolvedTextDocumentSync;t&&r&&r.openClose&&this.register({id:vi.generateUuid(),registerOptions:{documentSelector:t}})}get registrationType(){return Ke.DidOpenTextDocumentNotification.type}register(e){if(super.register(e),!e.registerOptions.documentSelector)return;let t=this._client.protocol2CodeConverter.asDocumentSelector(e.registerOptions.documentSelector);Zt.workspace.textDocuments.forEach(r=>{let i=r.uri.toString();if(!this._syncedDocuments.has(i)&&Zt.languages.match(t,r)>0&&!this._client.hasDedicatedTextSynchronizationFeature(r)){let o=this._client.middleware,s=a=>this._client.sendNotification(this._type,this._createParams(a));(o.didOpen?o.didOpen(r,s):s(r)).catch(a=>{this._client.error(`Sending document notification ${this._type.method} failed`,a)}),this._syncedDocuments.set(i,r)}})}getTextDocument(e){return e}notificationSent(e,t,r){this._syncedDocuments.set(e.uri.toString(),e),super.notificationSent(e,t,r)}};Vt.DidOpenTextDocumentFeature=xl;var ql=class extends Ze.TextDocumentEventFeature{constructor(e,t,r){super(e,Zt.workspace.onDidCloseTextDocument,Ke.DidCloseTextDocumentNotification.type,()=>e.middleware.didClose,i=>e.code2ProtocolConverter.asCloseTextDocumentParams(i),i=>i,Ze.TextDocumentEventFeature.textDocumentFilter),this._syncedDocuments=t,this._pendingTextDocumentChanges=r}get registrationType(){return Ke.DidCloseTextDocumentNotification.type}fillClientCapabilities(e){(0,Ze.ensure)((0,Ze.ensure)(e,"textDocument"),"synchronization").dynamicRegistration=!0}initialize(e,t){let r=e.resolvedTextDocumentSync;t&&r&&r.openClose&&this.register({id:vi.generateUuid(),registerOptions:{documentSelector:t}})}async callback(e){await super.callback(e),this._pendingTextDocumentChanges.delete(e.uri.toString())}getTextDocument(e){return e}notificationSent(e,t,r){this._syncedDocuments.delete(e.uri.toString()),super.notificationSent(e,t,r)}unregister(e){let t=this._selectors.get(e);super.unregister(e);let r=this._selectors.values();this._syncedDocuments.forEach(i=>{if(Zt.languages.match(t,i)>0&&!this._selectorFilter(r,i)&&!this._client.hasDedicatedTextSynchronizationFeature(i)){let o=this._client.middleware,s=a=>this._client.sendNotification(this._type,this._createParams(a));this._syncedDocuments.delete(i.uri.toString()),(o.didClose?o.didClose(i,s):s(i)).catch(a=>{this._client.error(`Sending document notification ${this._type.method} failed`,a)})}})}};Vt.DidCloseTextDocumentFeature=ql;var Il=class extends Ze.DynamicDocumentFeature{constructor(e,t){super(e),this._changeData=new Map,this._onNotificationSent=new Zt.EventEmitter,this._onPendingChangeAdded=new Zt.EventEmitter,this._pendingTextDocumentChanges=t,this._syncKind=Ke.TextDocumentSyncKind.None}get onNotificationSent(){return this._onNotificationSent.event}get onPendingChangeAdded(){return this._onPendingChangeAdded.event}get syncKind(){return this._syncKind}get registrationType(){return Ke.DidChangeTextDocumentNotification.type}fillClientCapabilities(e){(0,Ze.ensure)((0,Ze.ensure)(e,"textDocument"),"synchronization").dynamicRegistration=!0}initialize(e,t){let r=e.resolvedTextDocumentSync;t&&r&&r.change!==void 0&&r.change!==Ke.TextDocumentSyncKind.None&&this.register({id:vi.generateUuid(),registerOptions:Object.assign({},{documentSelector:t},{syncKind:r.change})})}register(e){e.registerOptions.documentSelector&&(this._listener||(this._listener=Zt.workspace.onDidChangeTextDocument(this.callback,this)),this._changeData.set(e.id,{syncKind:e.registerOptions.syncKind,documentSelector:this._client.protocol2CodeConverter.asDocumentSelector(e.registerOptions.documentSelector)}),this.updateSyncKind(e.registerOptions.syncKind))}*getDocumentSelectors(){for(let e of this._changeData.values())yield e.documentSelector}async callback(e){if(e.contentChanges.length===0)return;let t=e.document.uri,r=e.document.version,i=[];for(let o of this._changeData.values())if(Zt.languages.match(o.documentSelector,e.document)>0&&!this._client.hasDedicatedTextSynchronizationFeature(e.document)){let s=this._client.middleware;if(o.syncKind===Ke.TextDocumentSyncKind.Incremental){let a=async c=>{let u=this._client.code2ProtocolConverter.asChangeTextDocumentParams(c,t,r);await this._client.sendNotification(Ke.DidChangeTextDocumentNotification.type,u),this.notificationSent(c.document,Ke.DidChangeTextDocumentNotification.type,u)};i.push(s.didChange?s.didChange(e,c=>a(c)):a(e))}else if(o.syncKind===Ke.TextDocumentSyncKind.Full){let a=async c=>{let u=c.document.uri.toString();this._pendingTextDocumentChanges.set(u,c.document),this._onPendingChangeAdded.fire()};i.push(s.didChange?s.didChange(e,c=>a(c)):a(e))}}return Promise.all(i).then(void 0,o=>{throw this._client.error(`Sending document notification ${Ke.DidChangeTextDocumentNotification.type.method} failed`,o),o})}notificationSent(e,t,r){this._onNotificationSent.fire({textDocument:e,type:t,params:r})}unregister(e){if(this._changeData.delete(e),this._changeData.size===0)this._listener&&(this._listener.dispose(),this._listener=void 0),this._syncKind=Ke.TextDocumentSyncKind.None;else{this._syncKind=Ke.TextDocumentSyncKind.None;for(let t of this._changeData.values())if(this.updateSyncKind(t.syncKind),this._syncKind===Ke.TextDocumentSyncKind.Full)break}}clear(){this._pendingTextDocumentChanges.clear(),this._changeData.clear(),this._syncKind=Ke.TextDocumentSyncKind.None,this._listener&&(this._listener.dispose(),this._listener=void 0)}getPendingDocumentChanges(e){if(this._pendingTextDocumentChanges.size===0)return[];let t;if(e.size===0)t=Array.from(this._pendingTextDocumentChanges.values()),this._pendingTextDocumentChanges.clear();else{t=[];for(let r of this._pendingTextDocumentChanges)e.has(r[0])||(t.push(r[1]),this._pendingTextDocumentChanges.delete(r[0]))}return t}getProvider(e){for(let t of this._changeData.values())if(Zt.languages.match(t.documentSelector,e)>0)return{send:r=>this.callback(r)}}updateSyncKind(e){if(this._syncKind!==Ke.TextDocumentSyncKind.Full)switch(e){case Ke.TextDocumentSyncKind.Full:this._syncKind=e;break;case Ke.TextDocumentSyncKind.Incremental:this._syncKind===Ke.TextDocumentSyncKind.None&&(this._syncKind=Ke.TextDocumentSyncKind.Incremental);break}}};Vt.DidChangeTextDocumentFeature=Il;var Fl=class extends Ze.TextDocumentEventFeature{constructor(e){super(e,Zt.workspace.onWillSaveTextDocument,Ke.WillSaveTextDocumentNotification.type,()=>e.middleware.willSave,t=>e.code2ProtocolConverter.asWillSaveTextDocumentParams(t),t=>t.document,(t,r)=>Ze.TextDocumentEventFeature.textDocumentFilter(t,r.document))}get registrationType(){return Ke.WillSaveTextDocumentNotification.type}fillClientCapabilities(e){let t=(0,Ze.ensure)((0,Ze.ensure)(e,"textDocument"),"synchronization");t.willSave=!0}initialize(e,t){let r=e.resolvedTextDocumentSync;t&&r&&r.willSave&&this.register({id:vi.generateUuid(),registerOptions:{documentSelector:t}})}getTextDocument(e){return e.document}};Vt.WillSaveFeature=Fl;var Ol=class extends Ze.DynamicDocumentFeature{constructor(e){super(e),this._selectors=new Map}getDocumentSelectors(){return this._selectors.values()}get registrationType(){return Ke.WillSaveTextDocumentWaitUntilRequest.type}fillClientCapabilities(e){let t=(0,Ze.ensure)((0,Ze.ensure)(e,"textDocument"),"synchronization");t.willSaveWaitUntil=!0}initialize(e,t){let r=e.resolvedTextDocumentSync;t&&r&&r.willSaveWaitUntil&&this.register({id:vi.generateUuid(),registerOptions:{documentSelector:t}})}register(e){e.registerOptions.documentSelector&&(this._listener||(this._listener=Zt.workspace.onWillSaveTextDocument(this.callback,this)),this._selectors.set(e.id,this._client.protocol2CodeConverter.asDocumentSelector(e.registerOptions.documentSelector)))}callback(e){if(Ze.TextDocumentEventFeature.textDocumentFilter(this._selectors.values(),e.document)&&!this._client.hasDedicatedTextSynchronizationFeature(e.document)){let t=this._client.middleware,r=i=>this._client.sendRequest(Ke.WillSaveTextDocumentWaitUntilRequest.type,this._client.code2ProtocolConverter.asWillSaveTextDocumentParams(i)).then(async o=>{let s=await this._client.protocol2CodeConverter.asTextEdits(o);return s===void 0?[]:s});e.waitUntil(t.willSaveWaitUntil?t.willSaveWaitUntil(e,r):r(e))}}unregister(e){this._selectors.delete(e),this._selectors.size===0&&this._listener&&(this._listener.dispose(),this._listener=void 0)}clear(){this._selectors.clear(),this._listener&&(this._listener.dispose(),this._listener=void 0)}};Vt.WillSaveWaitUntilFeature=Ol;var Ml=class extends Ze.TextDocumentEventFeature{constructor(e){super(e,Zt.workspace.onDidSaveTextDocument,Ke.DidSaveTextDocumentNotification.type,()=>e.middleware.didSave,t=>e.code2ProtocolConverter.asSaveTextDocumentParams(t,this._includeText),t=>t,Ze.TextDocumentEventFeature.textDocumentFilter),this._includeText=!1}get registrationType(){return Ke.DidSaveTextDocumentNotification.type}fillClientCapabilities(e){(0,Ze.ensure)((0,Ze.ensure)(e,"textDocument"),"synchronization").didSave=!0}initialize(e,t){let r=e.resolvedTextDocumentSync;if(t&&r&&r.save){let i=typeof r.save=="boolean"?{includeText:!1}:{includeText:!!r.save.includeText};this.register({id:vi.generateUuid(),registerOptions:Object.assign({},{documentSelector:t},i)})}}register(e){this._includeText=!!e.registerOptions.includeText,super.register(e)}getTextDocument(e){return e}};Vt.DidSaveTextDocumentFeature=Ml});var Xy=E(Ns=>{"use strict";Object.defineProperty(Ns,"__esModule",{value:!0});Ns.CompletionItemFeature=void 0;var kT=require("vscode"),_e=fe(),Al=Ee(),ET=Xe(),xT=[_e.CompletionItemKind.Text,_e.CompletionItemKind.Method,_e.CompletionItemKind.Function,_e.CompletionItemKind.Constructor,_e.CompletionItemKind.Field,_e.CompletionItemKind.Variable,_e.CompletionItemKind.Class,_e.CompletionItemKind.Interface,_e.CompletionItemKind.Module,_e.CompletionItemKind.Property,_e.CompletionItemKind.Unit,_e.CompletionItemKind.Value,_e.CompletionItemKind.Enum,_e.CompletionItemKind.Keyword,_e.CompletionItemKind.Snippet,_e.CompletionItemKind.Color,_e.CompletionItemKind.File,_e.CompletionItemKind.Reference,_e.CompletionItemKind.Folder,_e.CompletionItemKind.EnumMember,_e.CompletionItemKind.Constant,_e.CompletionItemKind.Struct,_e.CompletionItemKind.Event,_e.CompletionItemKind.Operator,_e.CompletionItemKind.TypeParameter],Ll=class extends Al.TextDocumentLanguageFeature{constructor(e){super(e,_e.CompletionRequest.type),this.labelDetailsSupport=new Map}fillClientCapabilities(e){let t=(0,Al.ensure)((0,Al.ensure)(e,"textDocument"),"completion");t.dynamicRegistration=!0,t.contextSupport=!0,t.completionItem={snippetSupport:!0,commitCharactersSupport:!0,documentationFormat:[_e.MarkupKind.Markdown,_e.MarkupKind.PlainText],deprecatedSupport:!0,preselectSupport:!0,tagSupport:{valueSet:[_e.CompletionItemTag.Deprecated]},insertReplaceSupport:!0,resolveSupport:{properties:["documentation","detail","additionalTextEdits"]},insertTextModeSupport:{valueSet:[_e.InsertTextMode.asIs,_e.InsertTextMode.adjustIndentation]},labelDetailsSupport:!0},t.insertTextMode=_e.InsertTextMode.adjustIndentation,t.completionItemKind={valueSet:xT},t.completionList={itemDefaults:["commitCharacters","editRange","insertTextFormat","insertTextMode","data"]}}initialize(e,t){let r=this.getRegistrationOptions(t,e.completionProvider);r&&this.register({id:ET.generateUuid(),registerOptions:r})}registerLanguageProvider(e,t){this.labelDetailsSupport.set(t,!!e.completionItem?.labelDetailsSupport);let r=e.triggerCharacters??[],i=e.allCommitCharacters,o=e.documentSelector,s={provideCompletionItems:(a,c,u,d)=>{let g=this._client,m=this._client.middleware,y=(v,T,P,q)=>g.sendRequest(_e.CompletionRequest.type,g.code2ProtocolConverter.asCompletionParams(v,T,P),q).then(A=>q.isCancellationRequested?null:g.protocol2CodeConverter.asCompletionResult(A,i,q),A=>g.handleFailedRequest(_e.CompletionRequest.type,q,A,null));return m.provideCompletionItem?m.provideCompletionItem(a,c,d,u,y):y(a,c,d,u)},resolveCompletionItem:e.resolveProvider?(a,c)=>{let u=this._client,d=this._client.middleware,g=(m,y)=>u.sendRequest(_e.CompletionResolveRequest.type,u.code2ProtocolConverter.asCompletionItem(m,!!this.labelDetailsSupport.get(t)),y).then(v=>y.isCancellationRequested?null:u.protocol2CodeConverter.asCompletionItem(v),v=>u.handleFailedRequest(_e.CompletionResolveRequest.type,y,v,m));return d.resolveCompletionItem?d.resolveCompletionItem(a,c,g):g(a,c)}:void 0};return[kT.languages.registerCompletionItemProvider(this._client.protocol2CodeConverter.asDocumentSelector(o),s,...r),s]}};Ns.CompletionItemFeature=Ll});var Qy=E(js=>{"use strict";Object.defineProperty(js,"__esModule",{value:!0});js.HoverFeature=void 0;var qT=require("vscode"),Ji=fe(),Nl=Ee(),IT=Xe(),jl=class extends Nl.TextDocumentLanguageFeature{constructor(e){super(e,Ji.HoverRequest.type)}fillClientCapabilities(e){let t=(0,Nl.ensure)((0,Nl.ensure)(e,"textDocument"),"hover");t.dynamicRegistration=!0,t.contentFormat=[Ji.MarkupKind.Markdown,Ji.MarkupKind.PlainText]}initialize(e,t){let r=this.getRegistrationOptions(t,e.hoverProvider);r&&this.register({id:IT.generateUuid(),registerOptions:r})}registerLanguageProvider(e){let t=e.documentSelector,r={provideHover:(i,o,s)=>{let a=this._client,c=(d,g,m)=>a.sendRequest(Ji.HoverRequest.type,a.code2ProtocolConverter.asTextDocumentPositionParams(d,g),m).then(y=>m.isCancellationRequested?null:a.protocol2CodeConverter.asHover(y),y=>a.handleFailedRequest(Ji.HoverRequest.type,m,y,null)),u=a.middleware;return u.provideHover?u.provideHover(i,o,s,c):c(i,o,s)}};return[this.registerProvider(t,r),r]}registerProvider(e,t){return qT.languages.registerHoverProvider(this._client.protocol2CodeConverter.asDocumentSelector(e),t)}};js.HoverFeature=jl});var Yy=E($s=>{"use strict";Object.defineProperty($s,"__esModule",{value:!0});$s.DefinitionFeature=void 0;var FT=require("vscode"),$l=fe(),Ul=Ee(),OT=Xe(),Hl=class extends Ul.TextDocumentLanguageFeature{constructor(e){super(e,$l.DefinitionRequest.type)}fillClientCapabilities(e){let t=(0,Ul.ensure)((0,Ul.ensure)(e,"textDocument"),"definition");t.dynamicRegistration=!0,t.linkSupport=!0}initialize(e,t){let r=this.getRegistrationOptions(t,e.definitionProvider);r&&this.register({id:OT.generateUuid(),registerOptions:r})}registerLanguageProvider(e){let t=e.documentSelector,r={provideDefinition:(i,o,s)=>{let a=this._client,c=(d,g,m)=>a.sendRequest($l.DefinitionRequest.type,a.code2ProtocolConverter.asTextDocumentPositionParams(d,g),m).then(y=>m.isCancellationRequested?null:a.protocol2CodeConverter.asDefinitionResult(y,m),y=>a.handleFailedRequest($l.DefinitionRequest.type,m,y,null)),u=a.middleware;return u.provideDefinition?u.provideDefinition(i,o,s,c):c(i,o,s)}};return[this.registerProvider(t,r),r]}registerProvider(e,t){return FT.languages.registerDefinitionProvider(this._client.protocol2CodeConverter.asDocumentSelector(e),t)}};$s.DefinitionFeature=Hl});var eb=E(Us=>{"use strict";Object.defineProperty(Us,"__esModule",{value:!0});Us.SignatureHelpFeature=void 0;var Zy=require("vscode"),Xi=fe(),Wl=Ee(),MT=Xe(),Kl=class extends Wl.TextDocumentLanguageFeature{constructor(e){super(e,Xi.SignatureHelpRequest.type)}fillClientCapabilities(e){let t=(0,Wl.ensure)((0,Wl.ensure)(e,"textDocument"),"signatureHelp");t.dynamicRegistration=!0,t.signatureInformation={documentationFormat:[Xi.MarkupKind.Markdown,Xi.MarkupKind.PlainText]},t.signatureInformation.parameterInformation={labelOffsetSupport:!0},t.signatureInformation.activeParameterSupport=!0,t.contextSupport=!0}initialize(e,t){let r=this.getRegistrationOptions(t,e.signatureHelpProvider);r&&this.register({id:MT.generateUuid(),registerOptions:r})}registerLanguageProvider(e){let t={provideSignatureHelp:(r,i,o,s)=>{let a=this._client,c=(d,g,m,y)=>a.sendRequest(Xi.SignatureHelpRequest.type,a.code2ProtocolConverter.asSignatureHelpParams(d,g,m),y).then(v=>y.isCancellationRequested?null:a.protocol2CodeConverter.asSignatureHelp(v,y),v=>a.handleFailedRequest(Xi.SignatureHelpRequest.type,y,v,null)),u=a.middleware;return u.provideSignatureHelp?u.provideSignatureHelp(r,i,s,o,c):c(r,i,s,o)}};return[this.registerProvider(e,t),t]}registerProvider(e,t){let r=this._client.protocol2CodeConverter.asDocumentSelector(e.documentSelector);if(e.retriggerCharacters===void 0){let i=e.triggerCharacters||[];return Zy.languages.registerSignatureHelpProvider(r,t,...i)}else{let i={triggerCharacters:e.triggerCharacters||[],retriggerCharacters:e.retriggerCharacters||[]};return Zy.languages.registerSignatureHelpProvider(r,t,i)}}};Us.SignatureHelpFeature=Kl});var tb=E(Hs=>{"use strict";Object.defineProperty(Hs,"__esModule",{value:!0});Hs.DocumentHighlightFeature=void 0;var AT=require("vscode"),Vl=fe(),zl=Ee(),LT=Xe(),Bl=class extends zl.TextDocumentLanguageFeature{constructor(e){super(e,Vl.DocumentHighlightRequest.type)}fillClientCapabilities(e){(0,zl.ensure)((0,zl.ensure)(e,"textDocument"),"documentHighlight").dynamicRegistration=!0}initialize(e,t){let r=this.getRegistrationOptions(t,e.documentHighlightProvider);r&&this.register({id:LT.generateUuid(),registerOptions:r})}registerLanguageProvider(e){let t=e.documentSelector,r={provideDocumentHighlights:(i,o,s)=>{let a=this._client,c=(d,g,m)=>a.sendRequest(Vl.DocumentHighlightRequest.type,a.code2ProtocolConverter.asTextDocumentPositionParams(d,g),m).then(y=>m.isCancellationRequested?null:a.protocol2CodeConverter.asDocumentHighlights(y,m),y=>a.handleFailedRequest(Vl.DocumentHighlightRequest.type,m,y,null)),u=a.middleware;return u.provideDocumentHighlights?u.provideDocumentHighlights(i,o,s,c):c(i,o,s)}};return[AT.languages.registerDocumentHighlightProvider(this._client.protocol2CodeConverter.asDocumentSelector(t),r),r]}};Hs.DocumentHighlightFeature=Bl});var Xl=E(Wn=>{"use strict";Object.defineProperty(Wn,"__esModule",{value:!0});Wn.DocumentSymbolFeature=Wn.SupportedSymbolTags=Wn.SupportedSymbolKinds=void 0;var NT=require("vscode"),Me=fe(),Gl=Ee(),jT=Xe();Wn.SupportedSymbolKinds=[Me.SymbolKind.File,Me.SymbolKind.Module,Me.SymbolKind.Namespace,Me.SymbolKind.Package,Me.SymbolKind.Class,Me.SymbolKind.Method,Me.SymbolKind.Property,Me.SymbolKind.Field,Me.SymbolKind.Constructor,Me.SymbolKind.Enum,Me.SymbolKind.Interface,Me.SymbolKind.Function,Me.SymbolKind.Variable,Me.SymbolKind.Constant,Me.SymbolKind.String,Me.SymbolKind.Number,Me.SymbolKind.Boolean,Me.SymbolKind.Array,Me.SymbolKind.Object,Me.SymbolKind.Key,Me.SymbolKind.Null,Me.SymbolKind.EnumMember,Me.SymbolKind.Struct,Me.SymbolKind.Event,Me.SymbolKind.Operator,Me.SymbolKind.TypeParameter];Wn.SupportedSymbolTags=[Me.SymbolTag.Deprecated];var Jl=class extends Gl.TextDocumentLanguageFeature{constructor(e){super(e,Me.DocumentSymbolRequest.type)}fillClientCapabilities(e){let t=(0,Gl.ensure)((0,Gl.ensure)(e,"textDocument"),"documentSymbol");t.dynamicRegistration=!0,t.symbolKind={valueSet:Wn.SupportedSymbolKinds},t.hierarchicalDocumentSymbolSupport=!0,t.tagSupport={valueSet:Wn.SupportedSymbolTags},t.labelSupport=!0}initialize(e,t){let r=this.getRegistrationOptions(t,e.documentSymbolProvider);r&&this.register({id:jT.generateUuid(),registerOptions:r})}registerLanguageProvider(e){let t=e.documentSelector,r={provideDocumentSymbols:(o,s)=>{let a=this._client,c=async(d,g)=>{try{let m=await a.sendRequest(Me.DocumentSymbolRequest.type,a.code2ProtocolConverter.asDocumentSymbolParams(d),g);if(g.isCancellationRequested||m===void 0||m===null)return null;if(m.length===0)return[];{let y=m[0];return Me.DocumentSymbol.is(y)?await a.protocol2CodeConverter.asDocumentSymbols(m,g):await a.protocol2CodeConverter.asSymbolInformations(m,g)}}catch(m){return a.handleFailedRequest(Me.DocumentSymbolRequest.type,g,m,null)}},u=a.middleware;return u.provideDocumentSymbols?u.provideDocumentSymbols(o,s,c):c(o,s)}},i=e.label!==void 0?{label:e.label}:void 0;return[NT.languages.registerDocumentSymbolProvider(this._client.protocol2CodeConverter.asDocumentSelector(t),r,i),r]}};Wn.DocumentSymbolFeature=Jl});var rb=E(Ws=>{"use strict";Object.defineProperty(Ws,"__esModule",{value:!0});Ws.WorkspaceSymbolFeature=void 0;var $T=require("vscode"),Qi=fe(),Ql=Ee(),nb=Xl(),UT=Xe(),Yl=class extends Ql.WorkspaceFeature{constructor(e){super(e,Qi.WorkspaceSymbolRequest.type)}fillClientCapabilities(e){let t=(0,Ql.ensure)((0,Ql.ensure)(e,"workspace"),"symbol");t.dynamicRegistration=!0,t.symbolKind={valueSet:nb.SupportedSymbolKinds},t.tagSupport={valueSet:nb.SupportedSymbolTags},t.resolveSupport={properties:["location.range"]}}initialize(e){e.workspaceSymbolProvider&&this.register({id:UT.generateUuid(),registerOptions:e.workspaceSymbolProvider===!0?{workDoneProgress:!1}:e.workspaceSymbolProvider})}registerLanguageProvider(e){let t={provideWorkspaceSymbols:(r,i)=>{let o=this._client,s=(c,u)=>o.sendRequest(Qi.WorkspaceSymbolRequest.type,{query:c},u).then(d=>u.isCancellationRequested?null:o.protocol2CodeConverter.asSymbolInformations(d,u),d=>o.handleFailedRequest(Qi.WorkspaceSymbolRequest.type,u,d,null)),a=o.middleware;return a.provideWorkspaceSymbols?a.provideWorkspaceSymbols(r,i,s):s(r,i)},resolveWorkspaceSymbol:e.resolveProvider===!0?(r,i)=>{let o=this._client,s=(c,u)=>o.sendRequest(Qi.WorkspaceSymbolResolveRequest.type,o.code2ProtocolConverter.asWorkspaceSymbol(c),u).then(d=>u.isCancellationRequested?null:o.protocol2CodeConverter.asSymbolInformation(d),d=>o.handleFailedRequest(Qi.WorkspaceSymbolResolveRequest.type,u,d,null)),a=o.middleware;return a.resolveWorkspaceSymbol?a.resolveWorkspaceSymbol(r,i,s):s(r,i)}:void 0};return[$T.languages.registerWorkspaceSymbolProvider(t),t]}};Ws.WorkspaceSymbolFeature=Yl});var ib=E(Ks=>{"use strict";Object.defineProperty(Ks,"__esModule",{value:!0});Ks.ReferencesFeature=void 0;var HT=require("vscode"),Zl=fe(),ed=Ee(),WT=Xe(),td=class extends ed.TextDocumentLanguageFeature{constructor(e){super(e,Zl.ReferencesRequest.type)}fillClientCapabilities(e){(0,ed.ensure)((0,ed.ensure)(e,"textDocument"),"references").dynamicRegistration=!0}initialize(e,t){let r=this.getRegistrationOptions(t,e.referencesProvider);r&&this.register({id:WT.generateUuid(),registerOptions:r})}registerLanguageProvider(e){let t=e.documentSelector,r={provideReferences:(i,o,s,a)=>{let c=this._client,u=(g,m,y,v)=>c.sendRequest(Zl.ReferencesRequest.type,c.code2ProtocolConverter.asReferenceParams(g,m,y),v).then(T=>v.isCancellationRequested?null:c.protocol2CodeConverter.asReferences(T,v),T=>c.handleFailedRequest(Zl.ReferencesRequest.type,v,T,null)),d=c.middleware;return d.provideReferences?d.provideReferences(i,o,s,a,u):u(i,o,s,a)}};return[this.registerProvider(t,r),r]}registerProvider(e,t){return HT.languages.registerReferenceProvider(this._client.protocol2CodeConverter.asDocumentSelector(e),t)}};Ks.ReferencesFeature=td});var ob=E(Vs=>{"use strict";Object.defineProperty(Vs,"__esModule",{value:!0});Vs.CodeActionFeature=void 0;var KT=require("vscode"),en=fe(),VT=Xe(),nd=Ee(),rd=class extends nd.TextDocumentLanguageFeature{constructor(e){super(e,en.CodeActionRequest.type)}fillClientCapabilities(e){let t=(0,nd.ensure)((0,nd.ensure)(e,"textDocument"),"codeAction");t.dynamicRegistration=!0,t.isPreferredSupport=!0,t.disabledSupport=!0,t.dataSupport=!0,t.resolveSupport={properties:["edit"]},t.codeActionLiteralSupport={codeActionKind:{valueSet:[en.CodeActionKind.Empty,en.CodeActionKind.QuickFix,en.CodeActionKind.Refactor,en.CodeActionKind.RefactorExtract,en.CodeActionKind.RefactorInline,en.CodeActionKind.RefactorRewrite,en.CodeActionKind.Source,en.CodeActionKind.SourceOrganizeImports]}},t.honorsChangeAnnotations=!0}initialize(e,t){let r=this.getRegistrationOptions(t,e.codeActionProvider);r&&this.register({id:VT.generateUuid(),registerOptions:r})}registerLanguageProvider(e){let t=e.documentSelector,r={provideCodeActions:(i,o,s,a)=>{let c=this._client,u=async(g,m,y,v)=>{let T={textDocument:c.code2ProtocolConverter.asTextDocumentIdentifier(g),range:c.code2ProtocolConverter.asRange(m),context:c.code2ProtocolConverter.asCodeActionContextSync(y)};return c.sendRequest(en.CodeActionRequest.type,T,v).then(P=>v.isCancellationRequested||P===null||P===void 0?null:c.protocol2CodeConverter.asCodeActionResult(P,v),P=>c.handleFailedRequest(en.CodeActionRequest.type,v,P,null))},d=c.middleware;return d.provideCodeActions?d.provideCodeActions(i,o,s,a,u):u(i,o,s,a)},resolveCodeAction:e.resolveProvider?(i,o)=>{let s=this._client,a=this._client.middleware,c=async(u,d)=>s.sendRequest(en.CodeActionResolveRequest.type,s.code2ProtocolConverter.asCodeActionSync(u),d).then(g=>d.isCancellationRequested?u:s.protocol2CodeConverter.asCodeAction(g,d),g=>s.handleFailedRequest(en.CodeActionResolveRequest.type,d,g,u));return a.resolveCodeAction?a.resolveCodeAction(i,o,c):c(i,o)}:void 0};return[KT.languages.registerCodeActionsProvider(this._client.protocol2CodeConverter.asDocumentSelector(t),r,e.codeActionKinds?{providedCodeActionKinds:this._client.protocol2CodeConverter.asCodeActionKinds(e.codeActionKinds)}:void 0),r]}};Vs.CodeActionFeature=rd});var ab=E(zs=>{"use strict";Object.defineProperty(zs,"__esModule",{value:!0});zs.CodeLensFeature=void 0;var sb=require("vscode"),yi=fe(),zT=Xe(),Yi=Ee(),id=class extends Yi.TextDocumentLanguageFeature{constructor(e){super(e,yi.CodeLensRequest.type)}fillClientCapabilities(e){(0,Yi.ensure)((0,Yi.ensure)(e,"textDocument"),"codeLens").dynamicRegistration=!0,(0,Yi.ensure)((0,Yi.ensure)(e,"workspace"),"codeLens").refreshSupport=!0}initialize(e,t){this._client.onRequest(yi.CodeLensRefreshRequest.type,async()=>{for(let o of this.getAllProviders())o.onDidChangeCodeLensEmitter.fire()});let i=this.getRegistrationOptions(t,e.codeLensProvider);i&&this.register({id:zT.generateUuid(),registerOptions:i})}registerLanguageProvider(e){let t=e.documentSelector,r=new sb.EventEmitter,i={onDidChangeCodeLenses:r.event,provideCodeLenses:(o,s)=>{let a=this._client,c=(d,g)=>a.sendRequest(yi.CodeLensRequest.type,a.code2ProtocolConverter.asCodeLensParams(d),g).then(m=>g.isCancellationRequested?null:a.protocol2CodeConverter.asCodeLenses(m,g),m=>a.handleFailedRequest(yi.CodeLensRequest.type,g,m,null)),u=a.middleware;return u.provideCodeLenses?u.provideCodeLenses(o,s,c):c(o,s)},resolveCodeLens:e.resolveProvider?(o,s)=>{let a=this._client,c=(d,g)=>a.sendRequest(yi.CodeLensResolveRequest.type,a.code2ProtocolConverter.asCodeLens(d),g).then(m=>g.isCancellationRequested?d:a.protocol2CodeConverter.asCodeLens(m),m=>a.handleFailedRequest(yi.CodeLensResolveRequest.type,g,m,d)),u=a.middleware;return u.resolveCodeLens?u.resolveCodeLens(o,s,c):c(o,s)}:void 0};return[sb.languages.registerCodeLensProvider(this._client.protocol2CodeConverter.asDocumentSelector(t),i),{provider:i,onDidChangeCodeLensEmitter:r}]}};zs.CodeLensFeature=id});var cb=E(Cr=>{"use strict";Object.defineProperty(Cr,"__esModule",{value:!0});Cr.DocumentOnTypeFormattingFeature=Cr.DocumentRangeFormattingFeature=Cr.DocumentFormattingFeature=void 0;var Bs=require("vscode"),Rn=fe(),cd=Xe(),Zn=Ee(),bi;(function(n){function e(t){let r=Bs.workspace.getConfiguration("files",t);return{trimTrailingWhitespace:r.get("trimTrailingWhitespace"),trimFinalNewlines:r.get("trimFinalNewlines"),insertFinalNewline:r.get("insertFinalNewline")}}n.fromConfiguration=e})(bi||(bi={}));var od=class extends Zn.TextDocumentLanguageFeature{constructor(e){super(e,Rn.DocumentFormattingRequest.type)}fillClientCapabilities(e){(0,Zn.ensure)((0,Zn.ensure)(e,"textDocument"),"formatting").dynamicRegistration=!0}initialize(e,t){let r=this.getRegistrationOptions(t,e.documentFormattingProvider);r&&this.register({id:cd.generateUuid(),registerOptions:r})}registerLanguageProvider(e){let t=e.documentSelector,r={provideDocumentFormattingEdits:(i,o,s)=>{let a=this._client,c=(d,g,m)=>{let y={textDocument:a.code2ProtocolConverter.asTextDocumentIdentifier(d),options:a.code2ProtocolConverter.asFormattingOptions(g,bi.fromConfiguration(d))};return a.sendRequest(Rn.DocumentFormattingRequest.type,y,m).then(v=>m.isCancellationRequested?null:a.protocol2CodeConverter.asTextEdits(v,m),v=>a.handleFailedRequest(Rn.DocumentFormattingRequest.type,m,v,null))},u=a.middleware;return u.provideDocumentFormattingEdits?u.provideDocumentFormattingEdits(i,o,s,c):c(i,o,s)}};return[Bs.languages.registerDocumentFormattingEditProvider(this._client.protocol2CodeConverter.asDocumentSelector(t),r),r]}};Cr.DocumentFormattingFeature=od;var sd=class extends Zn.TextDocumentLanguageFeature{constructor(e){super(e,Rn.DocumentRangeFormattingRequest.type)}fillClientCapabilities(e){let t=(0,Zn.ensure)((0,Zn.ensure)(e,"textDocument"),"rangeFormatting");t.dynamicRegistration=!0,t.rangesSupport=!0}initialize(e,t){let r=this.getRegistrationOptions(t,e.documentRangeFormattingProvider);r&&this.register({id:cd.generateUuid(),registerOptions:r})}registerLanguageProvider(e){let t=e.documentSelector,r={provideDocumentRangeFormattingEdits:(i,o,s,a)=>{let c=this._client,u=(g,m,y,v)=>{let T={textDocument:c.code2ProtocolConverter.asTextDocumentIdentifier(g),range:c.code2ProtocolConverter.asRange(m),options:c.code2ProtocolConverter.asFormattingOptions(y,bi.fromConfiguration(g))};return c.sendRequest(Rn.DocumentRangeFormattingRequest.type,T,v).then(P=>v.isCancellationRequested?null:c.protocol2CodeConverter.asTextEdits(P,v),P=>c.handleFailedRequest(Rn.DocumentRangeFormattingRequest.type,v,P,null))},d=c.middleware;return d.provideDocumentRangeFormattingEdits?d.provideDocumentRangeFormattingEdits(i,o,s,a,u):u(i,o,s,a)}};return e.rangesSupport&&(r.provideDocumentRangesFormattingEdits=(i,o,s,a)=>{let c=this._client,u=(g,m,y,v)=>{let T={textDocument:c.code2ProtocolConverter.asTextDocumentIdentifier(g),ranges:c.code2ProtocolConverter.asRanges(m),options:c.code2ProtocolConverter.asFormattingOptions(y,bi.fromConfiguration(g))};return c.sendRequest(Rn.DocumentRangesFormattingRequest.type,T,v).then(P=>v.isCancellationRequested?null:c.protocol2CodeConverter.asTextEdits(P,v),P=>c.handleFailedRequest(Rn.DocumentRangesFormattingRequest.type,v,P,null))},d=c.middleware;return d.provideDocumentRangesFormattingEdits?d.provideDocumentRangesFormattingEdits(i,o,s,a,u):u(i,o,s,a)}),[Bs.languages.registerDocumentRangeFormattingEditProvider(this._client.protocol2CodeConverter.asDocumentSelector(t),r),r]}};Cr.DocumentRangeFormattingFeature=sd;var ad=class extends Zn.TextDocumentLanguageFeature{constructor(e){super(e,Rn.DocumentOnTypeFormattingRequest.type)}fillClientCapabilities(e){(0,Zn.ensure)((0,Zn.ensure)(e,"textDocument"),"onTypeFormatting").dynamicRegistration=!0}initialize(e,t){let r=this.getRegistrationOptions(t,e.documentOnTypeFormattingProvider);r&&this.register({id:cd.generateUuid(),registerOptions:r})}registerLanguageProvider(e){let t=e.documentSelector,r={provideOnTypeFormattingEdits:(o,s,a,c,u)=>{let d=this._client,g=(y,v,T,P,q)=>{let A={textDocument:d.code2ProtocolConverter.asTextDocumentIdentifier(y),position:d.code2ProtocolConverter.asPosition(v),ch:T,options:d.code2ProtocolConverter.asFormattingOptions(P,bi.fromConfiguration(y))};return d.sendRequest(Rn.DocumentOnTypeFormattingRequest.type,A,q).then(L=>q.isCancellationRequested?null:d.protocol2CodeConverter.asTextEdits(L,q),L=>d.handleFailedRequest(Rn.DocumentOnTypeFormattingRequest.type,q,L,null))},m=d.middleware;return m.provideOnTypeFormattingEdits?m.provideOnTypeFormattingEdits(o,s,a,c,u,g):g(o,s,a,c,u)}},i=e.moreTriggerCharacter||[];return[Bs.languages.registerOnTypeFormattingEditProvider(this._client.protocol2CodeConverter.asDocumentSelector(t),r,e.firstTriggerCharacter,...i),r]}};Cr.DocumentOnTypeFormattingFeature=ad});var lb=E(Gs=>{"use strict";Object.defineProperty(Gs,"__esModule",{value:!0});Gs.RenameFeature=void 0;var BT=require("vscode"),Or=fe(),GT=Xe(),ub=un(),ud=Ee(),ld=class extends ud.TextDocumentLanguageFeature{constructor(e){super(e,Or.RenameRequest.type)}fillClientCapabilities(e){let t=(0,ud.ensure)((0,ud.ensure)(e,"textDocument"),"rename");t.dynamicRegistration=!0,t.prepareSupport=!0,t.prepareSupportDefaultBehavior=Or.PrepareSupportDefaultBehavior.Identifier,t.honorsChangeAnnotations=!0}initialize(e,t){let r=this.getRegistrationOptions(t,e.renameProvider);r&&(ub.boolean(e.renameProvider)&&(r.prepareProvider=!1),this.register({id:GT.generateUuid(),registerOptions:r}))}registerLanguageProvider(e){let t=e.documentSelector,r={provideRenameEdits:(i,o,s,a)=>{let c=this._client,u=(g,m,y,v)=>{let T={textDocument:c.code2ProtocolConverter.asTextDocumentIdentifier(g),position:c.code2ProtocolConverter.asPosition(m),newName:y};return c.sendRequest(Or.RenameRequest.type,T,v).then(P=>v.isCancellationRequested?null:c.protocol2CodeConverter.asWorkspaceEdit(P,v),P=>c.handleFailedRequest(Or.RenameRequest.type,v,P,null,!1))},d=c.middleware;return d.provideRenameEdits?d.provideRenameEdits(i,o,s,a,u):u(i,o,s,a)},prepareRename:e.prepareProvider?(i,o,s)=>{let a=this._client,c=(d,g,m)=>{let y={textDocument:a.code2ProtocolConverter.asTextDocumentIdentifier(d),position:a.code2ProtocolConverter.asPosition(g)};return a.sendRequest(Or.PrepareRenameRequest.type,y,m).then(v=>m.isCancellationRequested?null:Or.Range.is(v)?a.protocol2CodeConverter.asRange(v):this.isDefaultBehavior(v)?v.defaultBehavior===!0?null:Promise.reject(new Error("The element can't be renamed.")):v&&Or.Range.is(v.range)?{range:a.protocol2CodeConverter.asRange(v.range),placeholder:v.placeholder}:Promise.reject(new Error("The element can't be renamed.")),v=>{throw typeof v.message=="string"?new Error(v.message):new Error("The element can't be renamed.")})},u=a.middleware;return u.prepareRename?u.prepareRename(i,o,s,c):c(i,o,s)}:void 0};return[this.registerProvider(t,r),r]}registerProvider(e,t){return BT.languages.registerRenameProvider(this._client.protocol2CodeConverter.asDocumentSelector(e),t)}isDefaultBehavior(e){let t=e;return t&&ub.boolean(t.defaultBehavior)}};Gs.RenameFeature=ld});var db=E(Js=>{"use strict";Object.defineProperty(Js,"__esModule",{value:!0});Js.DocumentLinkFeature=void 0;var JT=require("vscode"),Zi=fe(),dd=Ee(),XT=Xe(),fd=class extends dd.TextDocumentLanguageFeature{constructor(e){super(e,Zi.DocumentLinkRequest.type)}fillClientCapabilities(e){let t=(0,dd.ensure)((0,dd.ensure)(e,"textDocument"),"documentLink");t.dynamicRegistration=!0,t.tooltipSupport=!0}initialize(e,t){let r=this.getRegistrationOptions(t,e.documentLinkProvider);r&&this.register({id:XT.generateUuid(),registerOptions:r})}registerLanguageProvider(e){let t=e.documentSelector,r={provideDocumentLinks:(i,o)=>{let s=this._client,a=(u,d)=>s.sendRequest(Zi.DocumentLinkRequest.type,s.code2ProtocolConverter.asDocumentLinkParams(u),d).then(g=>d.isCancellationRequested?null:s.protocol2CodeConverter.asDocumentLinks(g,d),g=>s.handleFailedRequest(Zi.DocumentLinkRequest.type,d,g,null)),c=s.middleware;return c.provideDocumentLinks?c.provideDocumentLinks(i,o,a):a(i,o)},resolveDocumentLink:e.resolveProvider?(i,o)=>{let s=this._client,a=(u,d)=>s.sendRequest(Zi.DocumentLinkResolveRequest.type,s.code2ProtocolConverter.asDocumentLink(u),d).then(g=>d.isCancellationRequested?u:s.protocol2CodeConverter.asDocumentLink(g),g=>s.handleFailedRequest(Zi.DocumentLinkResolveRequest.type,d,g,u)),c=s.middleware;return c.resolveDocumentLink?c.resolveDocumentLink(i,o,a):a(i,o)}:void 0};return[JT.languages.registerDocumentLinkProvider(this._client.protocol2CodeConverter.asDocumentSelector(t),r),r]}};Js.DocumentLinkFeature=fd});var pb=E(Xs=>{"use strict";Object.defineProperty(Xs,"__esModule",{value:!0});Xs.ExecuteCommandFeature=void 0;var QT=require("vscode"),pd=fe(),YT=Xe(),fb=Ee(),hd=class{constructor(e){this._client=e,this._commands=new Map}getState(){return{kind:"workspace",id:this.registrationType.method,registrations:this._commands.size>0}}get registrationType(){return pd.ExecuteCommandRequest.type}fillClientCapabilities(e){(0,fb.ensure)((0,fb.ensure)(e,"workspace"),"executeCommand").dynamicRegistration=!0}initialize(e){e.executeCommandProvider&&this.register({id:YT.generateUuid(),registerOptions:Object.assign({},e.executeCommandProvider)})}register(e){let t=this._client,r=t.middleware,i=(o,s)=>{let a={command:o,arguments:s};return t.sendRequest(pd.ExecuteCommandRequest.type,a).then(void 0,c=>t.handleFailedRequest(pd.ExecuteCommandRequest.type,void 0,c,void 0))};if(e.registerOptions.commands){let o=[];for(let s of e.registerOptions.commands)o.push(QT.commands.registerCommand(s,(...a)=>r.executeCommand?r.executeCommand(s,a,i):i(s,a)));this._commands.set(e.id,o)}}unregister(e){let t=this._commands.get(e);t&&t.forEach(r=>r.dispose())}clear(){this._commands.forEach(e=>{e.forEach(t=>t.dispose())}),this._commands.clear()}};Xs.ExecuteCommandFeature=hd});var hb=E(Ys=>{"use strict";Object.defineProperty(Ys,"__esModule",{value:!0});Ys.FileSystemWatcherFeature=void 0;var ZT=require("vscode"),Mr=fe(),Qs=Ee(),gd=class{constructor(e,t){this._client=e,this._notifyFileEvent=t,this._watchers=new Map}getState(){return{kind:"workspace",id:this.registrationType.method,registrations:this._watchers.size>0}}get registrationType(){return Mr.DidChangeWatchedFilesNotification.type}fillClientCapabilities(e){(0,Qs.ensure)((0,Qs.ensure)(e,"workspace"),"didChangeWatchedFiles").dynamicRegistration=!0,(0,Qs.ensure)((0,Qs.ensure)(e,"workspace"),"didChangeWatchedFiles").relativePatternSupport=!0}initialize(e,t){}register(e){if(!Array.isArray(e.registerOptions.watchers))return;let t=[];for(let r of e.registerOptions.watchers){let i=this._client.protocol2CodeConverter.asGlobPattern(r.globPattern);if(i===void 0)continue;let o=!0,s=!0,a=!0;r.kind!==void 0&&r.kind!==null&&(o=(r.kind&Mr.WatchKind.Create)!==0,s=(r.kind&Mr.WatchKind.Change)!==0,a=(r.kind&Mr.WatchKind.Delete)!==0);let c=ZT.workspace.createFileSystemWatcher(i,!o,!s,!a);this.hookListeners(c,o,s,a,t),t.push(c)}this._watchers.set(e.id,t)}registerRaw(e,t){let r=[];for(let i of t)this.hookListeners(i,!0,!0,!0,r);this._watchers.set(e,r)}hookListeners(e,t,r,i,o){t&&e.onDidCreate(s=>this._notifyFileEvent({uri:this._client.code2ProtocolConverter.asUri(s),type:Mr.FileChangeType.Created}),null,o),r&&e.onDidChange(s=>this._notifyFileEvent({uri:this._client.code2ProtocolConverter.asUri(s),type:Mr.FileChangeType.Changed}),null,o),i&&e.onDidDelete(s=>this._notifyFileEvent({uri:this._client.code2ProtocolConverter.asUri(s),type:Mr.FileChangeType.Deleted}),null,o)}unregister(e){let t=this._watchers.get(e);if(t)for(let r of t)r.dispose()}clear(){this._watchers.forEach(e=>{for(let t of e)t.dispose()}),this._watchers.clear()}};Ys.FileSystemWatcherFeature=gd});var gb=E(Zs=>{"use strict";Object.defineProperty(Zs,"__esModule",{value:!0});Zs.ColorProviderFeature=void 0;var eR=require("vscode"),eo=fe(),md=Ee(),vd=class extends md.TextDocumentLanguageFeature{constructor(e){super(e,eo.DocumentColorRequest.type)}fillClientCapabilities(e){(0,md.ensure)((0,md.ensure)(e,"textDocument"),"colorProvider").dynamicRegistration=!0}initialize(e,t){let[r,i]=this.getRegistration(t,e.colorProvider);!r||!i||this.register({id:r,registerOptions:i})}registerLanguageProvider(e){let t=e.documentSelector,r={provideColorPresentations:(i,o,s)=>{let a=this._client,c=(d,g,m)=>{let y={color:d,textDocument:a.code2ProtocolConverter.asTextDocumentIdentifier(g.document),range:a.code2ProtocolConverter.asRange(g.range)};return a.sendRequest(eo.ColorPresentationRequest.type,y,m).then(v=>m.isCancellationRequested?null:this._client.protocol2CodeConverter.asColorPresentations(v,m),v=>a.handleFailedRequest(eo.ColorPresentationRequest.type,m,v,null))},u=a.middleware;return u.provideColorPresentations?u.provideColorPresentations(i,o,s,c):c(i,o,s)},provideDocumentColors:(i,o)=>{let s=this._client,a=(u,d)=>{let g={textDocument:s.code2ProtocolConverter.asTextDocumentIdentifier(u)};return s.sendRequest(eo.DocumentColorRequest.type,g,d).then(m=>d.isCancellationRequested?null:this._client.protocol2CodeConverter.asColorInformations(m,d),m=>s.handleFailedRequest(eo.DocumentColorRequest.type,d,m,null))},c=s.middleware;return c.provideDocumentColors?c.provideDocumentColors(i,o,a):a(i,o)}};return[eR.languages.registerColorProvider(this._client.protocol2CodeConverter.asDocumentSelector(t),r),r]}};Zs.ColorProviderFeature=vd});var mb=E(ea=>{"use strict";Object.defineProperty(ea,"__esModule",{value:!0});ea.ImplementationFeature=void 0;var tR=require("vscode"),yd=fe(),bd=Ee(),wd=class extends bd.TextDocumentLanguageFeature{constructor(e){super(e,yd.ImplementationRequest.type)}fillClientCapabilities(e){let t=(0,bd.ensure)((0,bd.ensure)(e,"textDocument"),"implementation");t.dynamicRegistration=!0,t.linkSupport=!0}initialize(e,t){let[r,i]=this.getRegistration(t,e.implementationProvider);!r||!i||this.register({id:r,registerOptions:i})}registerLanguageProvider(e){let t=e.documentSelector,r={provideImplementation:(i,o,s)=>{let a=this._client,c=(d,g,m)=>a.sendRequest(yd.ImplementationRequest.type,a.code2ProtocolConverter.asTextDocumentPositionParams(d,g),m).then(y=>m.isCancellationRequested?null:a.protocol2CodeConverter.asDefinitionResult(y,m),y=>a.handleFailedRequest(yd.ImplementationRequest.type,m,y,null)),u=a.middleware;return u.provideImplementation?u.provideImplementation(i,o,s,c):c(i,o,s)}};return[this.registerProvider(t,r),r]}registerProvider(e,t){return tR.languages.registerImplementationProvider(this._client.protocol2CodeConverter.asDocumentSelector(e),t)}};ea.ImplementationFeature=wd});var vb=E(ta=>{"use strict";Object.defineProperty(ta,"__esModule",{value:!0});ta.TypeDefinitionFeature=void 0;var nR=require("vscode"),Cd=fe(),to=Ee(),Dd=class extends to.TextDocumentLanguageFeature{constructor(e){super(e,Cd.TypeDefinitionRequest.type)}fillClientCapabilities(e){(0,to.ensure)((0,to.ensure)(e,"textDocument"),"typeDefinition").dynamicRegistration=!0;let t=(0,to.ensure)((0,to.ensure)(e,"textDocument"),"typeDefinition");t.dynamicRegistration=!0,t.linkSupport=!0}initialize(e,t){let[r,i]=this.getRegistration(t,e.typeDefinitionProvider);!r||!i||this.register({id:r,registerOptions:i})}registerLanguageProvider(e){let t=e.documentSelector,r={provideTypeDefinition:(i,o,s)=>{let a=this._client,c=(d,g,m)=>a.sendRequest(Cd.TypeDefinitionRequest.type,a.code2ProtocolConverter.asTextDocumentPositionParams(d,g),m).then(y=>m.isCancellationRequested?null:a.protocol2CodeConverter.asDefinitionResult(y,m),y=>a.handleFailedRequest(Cd.TypeDefinitionRequest.type,m,y,null)),u=a.middleware;return u.provideTypeDefinition?u.provideTypeDefinition(i,o,s,c):c(i,o,s)}};return[this.registerProvider(t,r),r]}registerProvider(e,t){return nR.languages.registerTypeDefinitionProvider(this._client.protocol2CodeConverter.asDocumentSelector(e),t)}};ta.TypeDefinitionFeature=Dd});var yb=E(wi=>{"use strict";Object.defineProperty(wi,"__esModule",{value:!0});wi.WorkspaceFoldersFeature=wi.arrayDiff=void 0;var rR=Xe(),na=require("vscode"),no=fe();function Sd(n,e){if(n!=null)return n[e]}function _d(n,e){return n.filter(t=>e.indexOf(t)<0)}wi.arrayDiff=_d;var Td=class{constructor(e){this._client=e,this._listeners=new Map}getState(){return{kind:"workspace",id:this.registrationType.method,registrations:this._listeners.size>0}}get registrationType(){return no.DidChangeWorkspaceFoldersNotification.type}fillInitializeParams(e){let t=na.workspace.workspaceFolders;this.initializeWithFolders(t),t===void 0?e.workspaceFolders=null:e.workspaceFolders=t.map(r=>this.asProtocol(r))}initializeWithFolders(e){this._initialFolders=e}fillClientCapabilities(e){e.workspace=e.workspace||{},e.workspace.workspaceFolders=!0}initialize(e){let t=this._client;t.onRequest(no.WorkspaceFoldersRequest.type,o=>{let s=()=>{let c=na.workspace.workspaceFolders;return c===void 0?null:c.map(d=>this.asProtocol(d))},a=t.middleware.workspace;return a&&a.workspaceFolders?a.workspaceFolders(o,s):s(o)});let r=Sd(Sd(Sd(e,"workspace"),"workspaceFolders"),"changeNotifications"),i;typeof r=="string"?i=r:r===!0&&(i=rR.generateUuid()),i&&this.register({id:i,registerOptions:void 0})}sendInitialEvent(e){let t;if(this._initialFolders&&e){let r=_d(this._initialFolders,e),i=_d(e,this._initialFolders);(i.length>0||r.length>0)&&(t=this.doSendEvent(i,r))}else this._initialFolders?t=this.doSendEvent([],this._initialFolders):e&&(t=this.doSendEvent(e,[]));t!==void 0&&t.catch(r=>{this._client.error(`Sending notification ${no.DidChangeWorkspaceFoldersNotification.type.method} failed`,r)})}doSendEvent(e,t){let r={event:{added:e.map(i=>this.asProtocol(i)),removed:t.map(i=>this.asProtocol(i))}};return this._client.sendNotification(no.DidChangeWorkspaceFoldersNotification.type,r)}register(e){let t=e.id,r=this._client,i=na.workspace.onDidChangeWorkspaceFolders(o=>{let s=u=>this.doSendEvent(u.added,u.removed),a=r.middleware.workspace;(a&&a.didChangeWorkspaceFolders?a.didChangeWorkspaceFolders(o,s):s(o)).catch(u=>{this._client.error(`Sending notification ${no.DidChangeWorkspaceFoldersNotification.type.method} failed`,u)})});this._listeners.set(t,i),this.sendInitialEvent(na.workspace.workspaceFolders)}unregister(e){let t=this._listeners.get(e);t!==void 0&&(this._listeners.delete(e),t.dispose())}clear(){for(let e of this._listeners.values())e.dispose();this._listeners.clear()}asProtocol(e){return e===void 0?null:{uri:this._client.code2ProtocolConverter.asUri(e.uri),name:e.name}}};wi.WorkspaceFoldersFeature=Td});var wb=E(ra=>{"use strict";Object.defineProperty(ra,"__esModule",{value:!0});ra.FoldingRangeFeature=void 0;var bb=require("vscode"),Ar=fe(),ro=Ee(),Rd=class extends ro.TextDocumentLanguageFeature{constructor(e){super(e,Ar.FoldingRangeRequest.type)}fillClientCapabilities(e){let t=(0,ro.ensure)((0,ro.ensure)(e,"textDocument"),"foldingRange");t.dynamicRegistration=!0,t.rangeLimit=5e3,t.lineFoldingOnly=!0,t.foldingRangeKind={valueSet:[Ar.FoldingRangeKind.Comment,Ar.FoldingRangeKind.Imports,Ar.FoldingRangeKind.Region]},t.foldingRange={collapsedText:!1},(0,ro.ensure)((0,ro.ensure)(e,"workspace"),"foldingRange").refreshSupport=!0}initialize(e,t){this._client.onRequest(Ar.FoldingRangeRefreshRequest.type,async()=>{for(let o of this.getAllProviders())o.onDidChangeFoldingRange.fire()});let[r,i]=this.getRegistration(t,e.foldingRangeProvider);!r||!i||this.register({id:r,registerOptions:i})}registerLanguageProvider(e){let t=e.documentSelector,r=new bb.EventEmitter,i={onDidChangeFoldingRanges:r.event,provideFoldingRanges:(o,s,a)=>{let c=this._client,u=(g,m,y)=>{let v={textDocument:c.code2ProtocolConverter.asTextDocumentIdentifier(g)};return c.sendRequest(Ar.FoldingRangeRequest.type,v,y).then(T=>y.isCancellationRequested?null:c.protocol2CodeConverter.asFoldingRanges(T,y),T=>c.handleFailedRequest(Ar.FoldingRangeRequest.type,y,T,null))},d=c.middleware;return d.provideFoldingRanges?d.provideFoldingRanges(o,s,a,u):u(o,s,a)}};return[bb.languages.registerFoldingRangeProvider(this._client.protocol2CodeConverter.asDocumentSelector(t),i),{provider:i,onDidChangeFoldingRange:r}]}};ra.FoldingRangeFeature=Rd});var Cb=E(ia=>{"use strict";Object.defineProperty(ia,"__esModule",{value:!0});ia.DeclarationFeature=void 0;var iR=require("vscode"),Pd=fe(),kd=Ee(),Ed=class extends kd.TextDocumentLanguageFeature{constructor(e){super(e,Pd.DeclarationRequest.type)}fillClientCapabilities(e){let t=(0,kd.ensure)((0,kd.ensure)(e,"textDocument"),"declaration");t.dynamicRegistration=!0,t.linkSupport=!0}initialize(e,t){let[r,i]=this.getRegistration(t,e.declarationProvider);!r||!i||this.register({id:r,registerOptions:i})}registerLanguageProvider(e){let t=e.documentSelector,r={provideDeclaration:(i,o,s)=>{let a=this._client,c=(d,g,m)=>a.sendRequest(Pd.DeclarationRequest.type,a.code2ProtocolConverter.asTextDocumentPositionParams(d,g),m).then(y=>m.isCancellationRequested?null:a.protocol2CodeConverter.asDeclarationResult(y,m),y=>a.handleFailedRequest(Pd.DeclarationRequest.type,m,y,null)),u=a.middleware;return u.provideDeclaration?u.provideDeclaration(i,o,s,c):c(i,o,s)}};return[this.registerProvider(t,r),r]}registerProvider(e,t){return iR.languages.registerDeclarationProvider(this._client.protocol2CodeConverter.asDocumentSelector(e),t)}};ia.DeclarationFeature=Ed});var Db=E(oa=>{"use strict";Object.defineProperty(oa,"__esModule",{value:!0});oa.SelectionRangeFeature=void 0;var oR=require("vscode"),xd=fe(),qd=Ee(),Id=class extends qd.TextDocumentLanguageFeature{constructor(e){super(e,xd.SelectionRangeRequest.type)}fillClientCapabilities(e){let t=(0,qd.ensure)((0,qd.ensure)(e,"textDocument"),"selectionRange");t.dynamicRegistration=!0}initialize(e,t){let[r,i]=this.getRegistration(t,e.selectionRangeProvider);!r||!i||this.register({id:r,registerOptions:i})}registerLanguageProvider(e){let t=e.documentSelector,r={provideSelectionRanges:(i,o,s)=>{let a=this._client,c=async(d,g,m)=>{let y={textDocument:a.code2ProtocolConverter.asTextDocumentIdentifier(d),positions:a.code2ProtocolConverter.asPositionsSync(g,m)};return a.sendRequest(xd.SelectionRangeRequest.type,y,m).then(v=>m.isCancellationRequested?null:a.protocol2CodeConverter.asSelectionRanges(v,m),v=>a.handleFailedRequest(xd.SelectionRangeRequest.type,m,v,null))},u=a.middleware;return u.provideSelectionRanges?u.provideSelectionRanges(i,o,s,c):c(i,o,s)}};return[this.registerProvider(t,r),r]}registerProvider(e,t){return oR.languages.registerSelectionRangeProvider(this._client.protocol2CodeConverter.asDocumentSelector(e),t)}};oa.SelectionRangeFeature=Id});var _b=E(sa=>{"use strict";Object.defineProperty(sa,"__esModule",{value:!0});sa.ProgressFeature=void 0;var Sb=fe(),sR=ol();function aR(n,e){return n[e]===void 0&&(n[e]=Object.create(null)),n[e]}var Fd=class{constructor(e){this._client=e,this.activeParts=new Set}getState(){return{kind:"window",id:Sb.WorkDoneProgressCreateRequest.method,registrations:this.activeParts.size>0}}fillClientCapabilities(e){aR(e,"window").workDoneProgress=!0}initialize(){let e=this._client,t=i=>{this.activeParts.delete(i)},r=i=>{this.activeParts.add(new sR.ProgressPart(this._client,i.token,t))};e.onRequest(Sb.WorkDoneProgressCreateRequest.type,r)}clear(){for(let e of this.activeParts)e.done();this.activeParts.clear()}};sa.ProgressFeature=Fd});var Tb=E(aa=>{"use strict";Object.defineProperty(aa,"__esModule",{value:!0});aa.CallHierarchyFeature=void 0;var cR=require("vscode"),Lr=fe(),Od=Ee(),Md=class{constructor(e){this.client=e,this.middleware=e.middleware}prepareCallHierarchy(e,t,r){let i=this.client,o=this.middleware,s=(a,c,u)=>{let d=i.code2ProtocolConverter.asTextDocumentPositionParams(a,c);return i.sendRequest(Lr.CallHierarchyPrepareRequest.type,d,u).then(g=>u.isCancellationRequested?null:i.protocol2CodeConverter.asCallHierarchyItems(g,u),g=>i.handleFailedRequest(Lr.CallHierarchyPrepareRequest.type,u,g,null))};return o.prepareCallHierarchy?o.prepareCallHierarchy(e,t,r,s):s(e,t,r)}provideCallHierarchyIncomingCalls(e,t){let r=this.client,i=this.middleware,o=(s,a)=>{let c={item:r.code2ProtocolConverter.asCallHierarchyItem(s)};return r.sendRequest(Lr.CallHierarchyIncomingCallsRequest.type,c,a).then(u=>a.isCancellationRequested?null:r.protocol2CodeConverter.asCallHierarchyIncomingCalls(u,a),u=>r.handleFailedRequest(Lr.CallHierarchyIncomingCallsRequest.type,a,u,null))};return i.provideCallHierarchyIncomingCalls?i.provideCallHierarchyIncomingCalls(e,t,o):o(e,t)}provideCallHierarchyOutgoingCalls(e,t){let r=this.client,i=this.middleware,o=(s,a)=>{let c={item:r.code2ProtocolConverter.asCallHierarchyItem(s)};return r.sendRequest(Lr.CallHierarchyOutgoingCallsRequest.type,c,a).then(u=>a.isCancellationRequested?null:r.protocol2CodeConverter.asCallHierarchyOutgoingCalls(u,a),u=>r.handleFailedRequest(Lr.CallHierarchyOutgoingCallsRequest.type,a,u,null))};return i.provideCallHierarchyOutgoingCalls?i.provideCallHierarchyOutgoingCalls(e,t,o):o(e,t)}},Ad=class extends Od.TextDocumentLanguageFeature{constructor(e){super(e,Lr.CallHierarchyPrepareRequest.type)}fillClientCapabilities(e){let t=e,r=(0,Od.ensure)((0,Od.ensure)(t,"textDocument"),"callHierarchy");r.dynamicRegistration=!0}initialize(e,t){let[r,i]=this.getRegistration(t,e.callHierarchyProvider);!r||!i||this.register({id:r,registerOptions:i})}registerLanguageProvider(e){let t=this._client,r=new Md(t);return[cR.languages.registerCallHierarchyProvider(this._client.protocol2CodeConverter.asDocumentSelector(e.documentSelector),r),r]}};aa.CallHierarchyFeature=Ad});var Rb=E(ua=>{"use strict";Object.defineProperty(ua,"__esModule",{value:!0});ua.SemanticTokensFeature=void 0;var ca=require("vscode"),ve=fe(),io=Ee(),uR=un(),Ld=class extends io.TextDocumentLanguageFeature{constructor(e){super(e,ve.SemanticTokensRegistrationType.type)}fillClientCapabilities(e){let t=(0,io.ensure)((0,io.ensure)(e,"textDocument"),"semanticTokens");t.dynamicRegistration=!0,t.tokenTypes=[ve.SemanticTokenTypes.namespace,ve.SemanticTokenTypes.type,ve.SemanticTokenTypes.class,ve.SemanticTokenTypes.enum,ve.SemanticTokenTypes.interface,ve.SemanticTokenTypes.struct,ve.SemanticTokenTypes.typeParameter,ve.SemanticTokenTypes.parameter,ve.SemanticTokenTypes.variable,ve.SemanticTokenTypes.property,ve.SemanticTokenTypes.enumMember,ve.SemanticTokenTypes.event,ve.SemanticTokenTypes.function,ve.SemanticTokenTypes.method,ve.SemanticTokenTypes.macro,ve.SemanticTokenTypes.keyword,ve.SemanticTokenTypes.modifier,ve.SemanticTokenTypes.comment,ve.SemanticTokenTypes.string,ve.SemanticTokenTypes.number,ve.SemanticTokenTypes.regexp,ve.SemanticTokenTypes.operator,ve.SemanticTokenTypes.decorator],t.tokenModifiers=[ve.SemanticTokenModifiers.declaration,ve.SemanticTokenModifiers.definition,ve.SemanticTokenModifiers.readonly,ve.SemanticTokenModifiers.static,ve.SemanticTokenModifiers.deprecated,ve.SemanticTokenModifiers.abstract,ve.SemanticTokenModifiers.async,ve.SemanticTokenModifiers.modification,ve.SemanticTokenModifiers.documentation,ve.SemanticTokenModifiers.defaultLibrary],t.formats=[ve.TokenFormat.Relative],t.requests={range:!0,full:{delta:!0}},t.multilineTokenSupport=!1,t.overlappingTokenSupport=!1,t.serverCancelSupport=!0,t.augmentsSyntaxTokens=!0,(0,io.ensure)((0,io.ensure)(e,"workspace"),"semanticTokens").refreshSupport=!0}initialize(e,t){this._client.onRequest(ve.SemanticTokensRefreshRequest.type,async()=>{for(let s of this.getAllProviders())s.onDidChangeSemanticTokensEmitter.fire()});let[i,o]=this.getRegistration(t,e.semanticTokensProvider);!i||!o||this.register({id:i,registerOptions:o})}registerLanguageProvider(e){let t=e.documentSelector,r=uR.boolean(e.full)?e.full:e.full!==void 0,i=e.full!==void 0&&typeof e.full!="boolean"&&e.full.delta===!0,o=new ca.EventEmitter,s=r?{onDidChangeSemanticTokens:o.event,provideDocumentSemanticTokens:(y,v)=>{let T=this._client,P=T.middleware,q=(A,L)=>{let K={textDocument:T.code2ProtocolConverter.asTextDocumentIdentifier(A)};return T.sendRequest(ve.SemanticTokensRequest.type,K,L).then(te=>L.isCancellationRequested?null:T.protocol2CodeConverter.asSemanticTokens(te,L),te=>T.handleFailedRequest(ve.SemanticTokensRequest.type,L,te,null))};return P.provideDocumentSemanticTokens?P.provideDocumentSemanticTokens(y,v,q):q(y,v)},provideDocumentSemanticTokensEdits:i?(y,v,T)=>{let P=this._client,q=P.middleware,A=(L,K,te)=>{let Z={textDocument:P.code2ProtocolConverter.asTextDocumentIdentifier(L),previousResultId:K};return P.sendRequest(ve.SemanticTokensDeltaRequest.type,Z,te).then(async V=>te.isCancellationRequested?null:ve.SemanticTokens.is(V)?await P.protocol2CodeConverter.asSemanticTokens(V,te):await P.protocol2CodeConverter.asSemanticTokensEdits(V,te),V=>P.handleFailedRequest(ve.SemanticTokensDeltaRequest.type,te,V,null))};return q.provideDocumentSemanticTokensEdits?q.provideDocumentSemanticTokensEdits(y,v,T,A):A(y,v,T)}:void 0}:void 0,c=e.range===!0?{provideDocumentRangeSemanticTokens:(y,v,T)=>{let P=this._client,q=P.middleware,A=(L,K,te)=>{let Z={textDocument:P.code2ProtocolConverter.asTextDocumentIdentifier(L),range:P.code2ProtocolConverter.asRange(K)};return P.sendRequest(ve.SemanticTokensRangeRequest.type,Z,te).then(V=>te.isCancellationRequested?null:P.protocol2CodeConverter.asSemanticTokens(V,te),V=>P.handleFailedRequest(ve.SemanticTokensRangeRequest.type,te,V,null))};return q.provideDocumentRangeSemanticTokens?q.provideDocumentRangeSemanticTokens(y,v,T,A):A(y,v,T)}}:void 0,u=[],d=this._client,g=d.protocol2CodeConverter.asSemanticTokensLegend(e.legend),m=d.protocol2CodeConverter.asDocumentSelector(t);return s!==void 0&&u.push(ca.languages.registerDocumentSemanticTokensProvider(m,s,g)),c!==void 0&&u.push(ca.languages.registerDocumentRangeSemanticTokensProvider(m,c,g)),[new ca.Disposable(()=>u.forEach(y=>y.dispose())),{range:c,full:s,onDidChangeSemanticTokensEmitter:o}]}};ua.SemanticTokensFeature=Ld});var Eb=E(zt=>{"use strict";Object.defineProperty(zt,"__esModule",{value:!0});zt.WillDeleteFilesFeature=zt.WillRenameFilesFeature=zt.WillCreateFilesFeature=zt.DidDeleteFilesFeature=zt.DidRenameFilesFeature=zt.DidCreateFilesFeature=void 0;var gn=require("vscode"),lR=qs(),er=fe(),dR=Xe();function Pb(n,e){return n[e]===void 0&&(n[e]={}),n[e]}function fR(n,e){return n[e]}function kb(n,e,t){n[e]=t}var oo=class n{constructor(e,t,r,i,o){this._client=e,this._event=t,this._registrationType=r,this._clientCapability=i,this._serverCapability=o,this._filters=new Map}getState(){return{kind:"workspace",id:this._registrationType.method,registrations:this._filters.size>0}}filterSize(){return this._filters.size}get registrationType(){return this._registrationType}fillClientCapabilities(e){let t=Pb(Pb(e,"workspace"),"fileOperations");kb(t,"dynamicRegistration",!0),kb(t,this._clientCapability,!0)}initialize(e){let t=e.workspace?.fileOperations,r=t!==void 0?fR(t,this._serverCapability):void 0;if(r?.filters!==void 0)try{this.register({id:dR.generateUuid(),registerOptions:{filters:r.filters}})}catch(i){this._client.warn(`Ignoring invalid glob pattern for ${this._serverCapability} registration: ${i}`)}}register(e){this._listener||(this._listener=this._event(this.send,this));let t=e.registerOptions.filters.map(r=>{let i=new lR.Minimatch(r.pattern.glob,n.asMinimatchOptions(r.pattern.options));if(!i.makeRe())throw new Error(`Invalid pattern ${r.pattern.glob}!`);return{scheme:r.scheme,matcher:i,kind:r.pattern.matches}});this._filters.set(e.id,t)}unregister(e){this._filters.delete(e),this._filters.size===0&&this._listener&&(this._listener.dispose(),this._listener=void 0)}clear(){this._filters.clear(),this._listener&&(this._listener.dispose(),this._listener=void 0)}getFileType(e){return n.getFileType(e)}async filter(e,t){let r=await Promise.all(e.files.map(async o=>{let s=t(o),a=s.fsPath.replace(/\\/g,"/");for(let c of this._filters.values())for(let u of c)if(!(u.scheme!==void 0&&u.scheme!==s.scheme)){if(u.matcher.match(a)){if(u.kind===void 0)return!0;let d=await this.getFileType(s);if(d===void 0)return this._client.error(`Failed to determine file type for ${s.toString()}.`),!0;if(d===gn.FileType.File&&u.kind===er.FileOperationPatternKind.file||d===gn.FileType.Directory&&u.kind===er.FileOperationPatternKind.folder)return!0}else if(u.kind===er.FileOperationPatternKind.folder&&await n.getFileType(s)===gn.FileType.Directory&&u.matcher.match(`${a}/`))return!0}return!1})),i=e.files.filter((o,s)=>r[s]);return{...e,files:i}}static async getFileType(e){try{return(await gn.workspace.fs.stat(e)).type}catch{return}}static asMinimatchOptions(e){let t={dot:!0};return e?.ignoreCase===!0&&(t.nocase=!0),t}},la=class extends oo{constructor(e,t,r,i,o,s,a){super(e,t,r,i,o),this._notificationType=r,this._accessUri=s,this._createParams=a}async send(e){let t=await this.filter(e,this._accessUri);if(t.files.length){let r=async i=>this._client.sendNotification(this._notificationType,this._createParams(i));return this.doSend(t,r)}}},da=class extends la{constructor(){super(...arguments),this._fsPathFileTypes=new Map}async getFileType(e){let t=e.fsPath;if(this._fsPathFileTypes.has(t))return this._fsPathFileTypes.get(t);let r=await oo.getFileType(e);return r&&this._fsPathFileTypes.set(t,r),r}async cacheFileTypes(e,t){await this.filter(e,t)}clearFileTypeCache(){this._fsPathFileTypes.clear()}unregister(e){super.unregister(e),this.filterSize()===0&&this._willListener&&(this._willListener.dispose(),this._willListener=void 0)}clear(){super.clear(),this._willListener&&(this._willListener.dispose(),this._willListener=void 0)}},Nd=class extends la{constructor(e){super(e,gn.workspace.onDidCreateFiles,er.DidCreateFilesNotification.type,"didCreate","didCreate",t=>t,e.code2ProtocolConverter.asDidCreateFilesParams)}doSend(e,t){let r=this._client.middleware.workspace;return r?.didCreateFiles?r.didCreateFiles(e,t):t(e)}};zt.DidCreateFilesFeature=Nd;var jd=class extends da{constructor(e){super(e,gn.workspace.onDidRenameFiles,er.DidRenameFilesNotification.type,"didRename","didRename",t=>t.oldUri,e.code2ProtocolConverter.asDidRenameFilesParams)}register(e){this._willListener||(this._willListener=gn.workspace.onWillRenameFiles(this.willRename,this)),super.register(e)}willRename(e){e.waitUntil(this.cacheFileTypes(e,t=>t.oldUri))}doSend(e,t){this.clearFileTypeCache();let r=this._client.middleware.workspace;return r?.didRenameFiles?r.didRenameFiles(e,t):t(e)}};zt.DidRenameFilesFeature=jd;var $d=class extends da{constructor(e){super(e,gn.workspace.onDidDeleteFiles,er.DidDeleteFilesNotification.type,"didDelete","didDelete",t=>t,e.code2ProtocolConverter.asDidDeleteFilesParams)}register(e){this._willListener||(this._willListener=gn.workspace.onWillDeleteFiles(this.willDelete,this)),super.register(e)}willDelete(e){e.waitUntil(this.cacheFileTypes(e,t=>t))}doSend(e,t){this.clearFileTypeCache();let r=this._client.middleware.workspace;return r?.didDeleteFiles?r.didDeleteFiles(e,t):t(e)}};zt.DidDeleteFilesFeature=$d;var so=class extends oo{constructor(e,t,r,i,o,s,a){super(e,t,r,i,o),this._requestType=r,this._accessUri=s,this._createParams=a}async send(e){let t=this.waitUntil(e);e.waitUntil(t)}async waitUntil(e){let t=await this.filter(e,this._accessUri);if(t.files.length){let r=i=>this._client.sendRequest(this._requestType,this._createParams(i),i.token).then(this._client.protocol2CodeConverter.asWorkspaceEdit);return this.doSend(t,r)}else return}},Ud=class extends so{constructor(e){super(e,gn.workspace.onWillCreateFiles,er.WillCreateFilesRequest.type,"willCreate","willCreate",t=>t,e.code2ProtocolConverter.asWillCreateFilesParams)}doSend(e,t){let r=this._client.middleware.workspace;return r?.willCreateFiles?r.willCreateFiles(e,t):t(e)}};zt.WillCreateFilesFeature=Ud;var Hd=class extends so{constructor(e){super(e,gn.workspace.onWillRenameFiles,er.WillRenameFilesRequest.type,"willRename","willRename",t=>t.oldUri,e.code2ProtocolConverter.asWillRenameFilesParams)}doSend(e,t){let r=this._client.middleware.workspace;return r?.willRenameFiles?r.willRenameFiles(e,t):t(e)}};zt.WillRenameFilesFeature=Hd;var Wd=class extends so{constructor(e){super(e,gn.workspace.onWillDeleteFiles,er.WillDeleteFilesRequest.type,"willDelete","willDelete",t=>t,e.code2ProtocolConverter.asWillDeleteFilesParams)}doSend(e,t){let r=this._client.middleware.workspace;return r?.willDeleteFiles?r.willDeleteFiles(e,t):t(e)}};zt.WillDeleteFilesFeature=Wd});var xb=E(fa=>{"use strict";Object.defineProperty(fa,"__esModule",{value:!0});fa.LinkedEditingFeature=void 0;var pR=require("vscode"),Kd=fe(),Vd=Ee(),zd=class extends Vd.TextDocumentLanguageFeature{constructor(e){super(e,Kd.LinkedEditingRangeRequest.type)}fillClientCapabilities(e){let t=(0,Vd.ensure)((0,Vd.ensure)(e,"textDocument"),"linkedEditingRange");t.dynamicRegistration=!0}initialize(e,t){let[r,i]=this.getRegistration(t,e.linkedEditingRangeProvider);!r||!i||this.register({id:r,registerOptions:i})}registerLanguageProvider(e){let t=e.documentSelector,r={provideLinkedEditingRanges:(i,o,s)=>{let a=this._client,c=(d,g,m)=>a.sendRequest(Kd.LinkedEditingRangeRequest.type,a.code2ProtocolConverter.asTextDocumentPositionParams(d,g),m).then(y=>m.isCancellationRequested?null:a.protocol2CodeConverter.asLinkedEditingRanges(y,m),y=>a.handleFailedRequest(Kd.LinkedEditingRangeRequest.type,m,y,null)),u=a.middleware;return u.provideLinkedEditingRange?u.provideLinkedEditingRange(i,o,s,c):c(i,o,s)}};return[this.registerProvider(t,r),r]}registerProvider(e,t){return pR.languages.registerLinkedEditingRangeProvider(this._client.protocol2CodeConverter.asDocumentSelector(e),t)}};fa.LinkedEditingFeature=zd});var qb=E(pa=>{"use strict";Object.defineProperty(pa,"__esModule",{value:!0});pa.TypeHierarchyFeature=void 0;var hR=require("vscode"),Nr=fe(),Bd=Ee(),Gd=class{constructor(e){this.client=e,this.middleware=e.middleware}prepareTypeHierarchy(e,t,r){let i=this.client,o=this.middleware,s=(a,c,u)=>{let d=i.code2ProtocolConverter.asTextDocumentPositionParams(a,c);return i.sendRequest(Nr.TypeHierarchyPrepareRequest.type,d,u).then(g=>u.isCancellationRequested?null:i.protocol2CodeConverter.asTypeHierarchyItems(g,u),g=>i.handleFailedRequest(Nr.TypeHierarchyPrepareRequest.type,u,g,null))};return o.prepareTypeHierarchy?o.prepareTypeHierarchy(e,t,r,s):s(e,t,r)}provideTypeHierarchySupertypes(e,t){let r=this.client,i=this.middleware,o=(s,a)=>{let c={item:r.code2ProtocolConverter.asTypeHierarchyItem(s)};return r.sendRequest(Nr.TypeHierarchySupertypesRequest.type,c,a).then(u=>a.isCancellationRequested?null:r.protocol2CodeConverter.asTypeHierarchyItems(u,a),u=>r.handleFailedRequest(Nr.TypeHierarchySupertypesRequest.type,a,u,null))};return i.provideTypeHierarchySupertypes?i.provideTypeHierarchySupertypes(e,t,o):o(e,t)}provideTypeHierarchySubtypes(e,t){let r=this.client,i=this.middleware,o=(s,a)=>{let c={item:r.code2ProtocolConverter.asTypeHierarchyItem(s)};return r.sendRequest(Nr.TypeHierarchySubtypesRequest.type,c,a).then(u=>a.isCancellationRequested?null:r.protocol2CodeConverter.asTypeHierarchyItems(u,a),u=>r.handleFailedRequest(Nr.TypeHierarchySubtypesRequest.type,a,u,null))};return i.provideTypeHierarchySubtypes?i.provideTypeHierarchySubtypes(e,t,o):o(e,t)}},Jd=class extends Bd.TextDocumentLanguageFeature{constructor(e){super(e,Nr.TypeHierarchyPrepareRequest.type)}fillClientCapabilities(e){let t=(0,Bd.ensure)((0,Bd.ensure)(e,"textDocument"),"typeHierarchy");t.dynamicRegistration=!0}initialize(e,t){let[r,i]=this.getRegistration(t,e.typeHierarchyProvider);!r||!i||this.register({id:r,registerOptions:i})}registerLanguageProvider(e){let t=this._client,r=new Gd(t);return[hR.languages.registerTypeHierarchyProvider(t.protocol2CodeConverter.asDocumentSelector(e.documentSelector),r),r]}};pa.TypeHierarchyFeature=Jd});var Fb=E(ga=>{"use strict";Object.defineProperty(ga,"__esModule",{value:!0});ga.InlineValueFeature=void 0;var Ib=require("vscode"),ha=fe(),ao=Ee(),Xd=class extends ao.TextDocumentLanguageFeature{constructor(e){super(e,ha.InlineValueRequest.type)}fillClientCapabilities(e){(0,ao.ensure)((0,ao.ensure)(e,"textDocument"),"inlineValue").dynamicRegistration=!0,(0,ao.ensure)((0,ao.ensure)(e,"workspace"),"inlineValue").refreshSupport=!0}initialize(e,t){this._client.onRequest(ha.InlineValueRefreshRequest.type,async()=>{for(let o of this.getAllProviders())o.onDidChangeInlineValues.fire()});let[r,i]=this.getRegistration(t,e.inlineValueProvider);!r||!i||this.register({id:r,registerOptions:i})}registerLanguageProvider(e){let t=e.documentSelector,r=new Ib.EventEmitter,i={onDidChangeInlineValues:r.event,provideInlineValues:(o,s,a,c)=>{let u=this._client,d=(m,y,v,T)=>{let P={textDocument:u.code2ProtocolConverter.asTextDocumentIdentifier(m),range:u.code2ProtocolConverter.asRange(y),context:u.code2ProtocolConverter.asInlineValueContext(v)};return u.sendRequest(ha.InlineValueRequest.type,P,T).then(q=>T.isCancellationRequested?null:u.protocol2CodeConverter.asInlineValues(q,T),q=>u.handleFailedRequest(ha.InlineValueRequest.type,T,q,null))},g=u.middleware;return g.provideInlineValues?g.provideInlineValues(o,s,a,c,d):d(o,s,a,c)}};return[this.registerProvider(t,i),{provider:i,onDidChangeInlineValues:r}]}registerProvider(e,t){return Ib.languages.registerInlineValuesProvider(this._client.protocol2CodeConverter.asDocumentSelector(e),t)}};ga.InlineValueFeature=Xd});var Mb=E(ma=>{"use strict";Object.defineProperty(ma,"__esModule",{value:!0});ma.InlayHintsFeature=void 0;var Ob=require("vscode"),Ci=fe(),co=Ee(),Qd=class extends co.TextDocumentLanguageFeature{constructor(e){super(e,Ci.InlayHintRequest.type)}fillClientCapabilities(e){let t=(0,co.ensure)((0,co.ensure)(e,"textDocument"),"inlayHint");t.dynamicRegistration=!0,t.resolveSupport={properties:["tooltip","textEdits","label.tooltip","label.location","label.command"]},(0,co.ensure)((0,co.ensure)(e,"workspace"),"inlayHint").refreshSupport=!0}initialize(e,t){this._client.onRequest(Ci.InlayHintRefreshRequest.type,async()=>{for(let o of this.getAllProviders())o.onDidChangeInlayHints.fire()});let[r,i]=this.getRegistration(t,e.inlayHintProvider);!r||!i||this.register({id:r,registerOptions:i})}registerLanguageProvider(e){let t=e.documentSelector,r=new Ob.EventEmitter,i={onDidChangeInlayHints:r.event,provideInlayHints:(o,s,a)=>{let c=this._client,u=async(g,m,y)=>{let v={textDocument:c.code2ProtocolConverter.asTextDocumentIdentifier(g),range:c.code2ProtocolConverter.asRange(m)};try{let T=await c.sendRequest(Ci.InlayHintRequest.type,v,y);return y.isCancellationRequested?null:c.protocol2CodeConverter.asInlayHints(T,y)}catch(T){return c.handleFailedRequest(Ci.InlayHintRequest.type,y,T,null)}},d=c.middleware;return d.provideInlayHints?d.provideInlayHints(o,s,a,u):u(o,s,a)}};return i.resolveInlayHint=e.resolveProvider===!0?(o,s)=>{let a=this._client,c=async(d,g)=>{try{let m=await a.sendRequest(Ci.InlayHintResolveRequest.type,a.code2ProtocolConverter.asInlayHint(d),g);if(g.isCancellationRequested)return null;let y=a.protocol2CodeConverter.asInlayHint(m,g);return g.isCancellationRequested?null:y}catch(m){return a.handleFailedRequest(Ci.InlayHintResolveRequest.type,g,m,null)}},u=a.middleware;return u.resolveInlayHint?u.resolveInlayHint(o,s,c):c(o,s)}:void 0,[this.registerProvider(t,i),{provider:i,onDidChangeInlayHints:r}]}registerProvider(e,t){return Ob.languages.registerInlayHintsProvider(this._client.protocol2CodeConverter.asDocumentSelector(e),t)}};ma.InlayHintsFeature=Qd});var Ab=E(va=>{"use strict";Object.defineProperty(va,"__esModule",{value:!0});va.InlineCompletionItemFeature=void 0;var gR=require("vscode"),Yd=fe(),Zd=Ee(),mR=Xe(),ef=class extends Zd.TextDocumentLanguageFeature{constructor(e){super(e,Yd.InlineCompletionRequest.type)}fillClientCapabilities(e){let t=(0,Zd.ensure)((0,Zd.ensure)(e,"textDocument"),"inlineCompletion");t.dynamicRegistration=!0}initialize(e,t){let r=this.getRegistrationOptions(t,e.inlineCompletionProvider);r&&this.register({id:mR.generateUuid(),registerOptions:r})}registerLanguageProvider(e){let t=e.documentSelector,r={provideInlineCompletionItems:(i,o,s,a)=>{let c=this._client,u=this._client.middleware,d=(g,m,y,v)=>c.sendRequest(Yd.InlineCompletionRequest.type,c.code2ProtocolConverter.asInlineCompletionParams(g,m,y),v).then(T=>v.isCancellationRequested?null:c.protocol2CodeConverter.asInlineCompletionResult(T,v),T=>c.handleFailedRequest(Yd.InlineCompletionRequest.type,v,T,null));return u.provideInlineCompletionItems?u.provideInlineCompletionItems(i,o,s,a,d):d(i,o,s,a)}};return[gR.languages.registerInlineCompletionItemProvider(this._client.protocol2CodeConverter.asDocumentSelector(t),r),r]}};va.InlineCompletionItemFeature=ef});var af=E(bt=>{"use strict";Object.defineProperty(bt,"__esModule",{value:!0});bt.ProposedFeatures=bt.BaseLanguageClient=bt.MessageTransports=bt.SuspendMode=bt.State=bt.CloseAction=bt.ErrorAction=bt.RevealOutputChannelOn=void 0;var Le=require("vscode"),$=fe(),vR=fy(),yR=gy(),kn=un(),ya=_s(),Lb=Xe(),bR=ol(),Pn=Ee(),wR=Tl(),Nb=zy(),jb=Gy(),Di=Jy(),CR=Xy(),DR=Qy(),SR=Yy(),_R=eb(),TR=tb(),RR=Xl(),PR=rb(),kR=ib(),ER=ob(),xR=ab(),tf=cb(),qR=lb(),IR=db(),FR=pb(),OR=hb(),MR=gb(),AR=mb(),LR=vb(),NR=yb(),jR=wb(),$R=Cb(),UR=Db(),HR=_b(),WR=Tb(),KR=Rb(),Si=Eb(),VR=xb(),zR=qb(),BR=Fb(),GR=Mb(),JR=Ab(),jr;(function(n){n[n.Debug=0]="Debug",n[n.Info=1]="Info",n[n.Warn=2]="Warn",n[n.Error=3]="Error",n[n.Never=4]="Never"})(jr||(bt.RevealOutputChannelOn=jr={}));var lo;(function(n){n[n.Continue=1]="Continue",n[n.Shutdown=2]="Shutdown"})(lo||(bt.ErrorAction=lo={}));var Dr;(function(n){n[n.DoNotRestart=1]="DoNotRestart",n[n.Restart=2]="Restart"})(Dr||(bt.CloseAction=Dr={}));var uo;(function(n){n[n.Stopped=1]="Stopped",n[n.Starting=3]="Starting",n[n.Running=2]="Running"})(uo||(bt.State=uo={}));var $b;(function(n){n.off="off",n.on="on"})($b||(bt.SuspendMode=$b={}));var nf;(function(n){function e(t){return t==null?!1:typeof t=="boolean"||typeof t=="object"&&t!==null&&kn.stringArray(t.enabledCommands)?t:!1}n.sanitizeIsTrusted=e})(nf||(nf={}));var rf=class{constructor(e,t){this.client=e,this.maxRestartCount=t,this.restarts=[]}error(e,t,r){return r&&r<=3?{action:lo.Continue}:{action:lo.Shutdown}}closed(){return this.restarts.push(Date.now()),this.restarts.length<=this.maxRestartCount?{action:Dr.Restart}:this.restarts[this.restarts.length-1]-this.restarts[0]<=3*60*1e3?{action:Dr.DoNotRestart,message:`The ${this.client.name} server crashed ${this.maxRestartCount+1} times in the last 3 minutes. The server will not be restarted. See the output for more information.`}:(this.restarts.shift(),{action:Dr.Restart})}},we;(function(n){n.Initial="initial",n.Starting="starting",n.StartFailed="startFailed",n.Running="running",n.Stopping="stopping",n.Stopped="stopped"})(we||(we={}));var Ub;(function(n){function e(t){return t&&$.MessageReader.is(t.reader)&&$.MessageWriter.is(t.writer)}n.is=e})(Ub||(bt.MessageTransports=Ub={}));var fo=class n{constructor(e,t,r){this._traceFormat=$.TraceFormat.Text,this._diagnosticQueue=new Map,this._diagnosticQueueState={state:"idle"},this._features=[],this._dynamicFeatures=new Map,this.workspaceEditLock=new ya.Semaphore(1),this._id=e,this._name=t,r=r||{};let i={isTrusted:!1,supportHtml:!1};r.markdown!==void 0&&(i.isTrusted=nf.sanitizeIsTrusted(r.markdown.isTrusted),i.supportHtml=r.markdown.supportHtml===!0),this._clientOptions={documentSelector:r.documentSelector??[],synchronize:r.synchronize??{},diagnosticCollectionName:r.diagnosticCollectionName,outputChannelName:r.outputChannelName??this._name,revealOutputChannelOn:r.revealOutputChannelOn??jr.Error,stdioEncoding:r.stdioEncoding??"utf8",initializationOptions:r.initializationOptions,initializationFailedHandler:r.initializationFailedHandler,progressOnInitialization:!!r.progressOnInitialization,errorHandler:r.errorHandler??this.createDefaultErrorHandler(r.connectionOptions?.maxRestartCount),middleware:r.middleware??{},uriConverters:r.uriConverters,workspaceFolder:r.workspaceFolder,connectionOptions:r.connectionOptions,markdown:i,diagnosticPullOptions:r.diagnosticPullOptions??{onChange:!0,onSave:!1},notebookDocumentOptions:r.notebookDocumentOptions??{}},this._clientOptions.synchronize=this._clientOptions.synchronize||{},this._state=we.Initial,this._ignoredRegistrations=new Set,this._listeners=[],this._notificationHandlers=new Map,this._pendingNotificationHandlers=new Map,this._notificationDisposables=new Map,this._requestHandlers=new Map,this._pendingRequestHandlers=new Map,this._requestDisposables=new Map,this._progressHandlers=new Map,this._pendingProgressHandlers=new Map,this._progressDisposables=new Map,this._connection=void 0,this._initializeResult=void 0,r.outputChannel?(this._outputChannel=r.outputChannel,this._disposeOutputChannel=!1):(this._outputChannel=void 0,this._disposeOutputChannel=!0),this._traceOutputChannel=r.traceOutputChannel,this._diagnostics=void 0,this._pendingOpenNotifications=new Set,this._pendingChangeSemaphore=new ya.Semaphore(1),this._pendingChangeDelayer=new ya.Delayer(250),this._fileEvents=[],this._fileEventDelayer=new ya.Delayer(250),this._onStop=void 0,this._telemetryEmitter=new $.Emitter,this._stateChangeEmitter=new $.Emitter,this._trace=$.Trace.Off,this._tracer={log:(o,s)=>{kn.string(o)?this.logTrace(o,s):this.logObjectTrace(o)}},this._c2p=vR.createConverter(r.uriConverters?r.uriConverters.code2Protocol:void 0),this._p2c=yR.createConverter(r.uriConverters?r.uriConverters.protocol2Code:void 0,this._clientOptions.markdown.isTrusted,this._clientOptions.markdown.supportHtml),this._syncedDocuments=new Map,this.registerBuiltinFeatures()}get name(){return this._name}get middleware(){return this._clientOptions.middleware??Object.create(null)}get clientOptions(){return this._clientOptions}get protocol2CodeConverter(){return this._p2c}get code2ProtocolConverter(){return this._c2p}get onTelemetry(){return this._telemetryEmitter.event}get onDidChangeState(){return this._stateChangeEmitter.event}get outputChannel(){return this._outputChannel||(this._outputChannel=Le.window.createOutputChannel(this._clientOptions.outputChannelName?this._clientOptions.outputChannelName:this._name)),this._outputChannel}get traceOutputChannel(){return this._traceOutputChannel?this._traceOutputChannel:this.outputChannel}get diagnostics(){return this._diagnostics}get state(){return this.getPublicState()}get $state(){return this._state}set $state(e){let t=this.getPublicState();this._state=e;let r=this.getPublicState();r!==t&&this._stateChangeEmitter.fire({oldState:t,newState:r})}getPublicState(){switch(this.$state){case we.Starting:return uo.Starting;case we.Running:return uo.Running;default:return uo.Stopped}}get initializeResult(){return this._initializeResult}async sendRequest(e,...t){if(this.$state===we.StartFailed||this.$state===we.Stopping||this.$state===we.Stopped)return Promise.reject(new $.ResponseError($.ErrorCodes.ConnectionInactive,"Client is not running"));let r=await this.$start();this._didChangeTextDocumentFeature.syncKind===$.TextDocumentSyncKind.Full&&await this.sendPendingFullTextDocumentChanges(r);let i=this._clientOptions.middleware?.sendRequest;if(i!==void 0){let o,s;return t.length===1?$.CancellationToken.is(t[0])?s=t[0]:o=t[0]:t.length===2&&(o=t[0],s=t[1]),i(e,o,s,(a,c,u)=>{let d=[];return c!==void 0&&d.push(c),u!==void 0&&d.push(u),r.sendRequest(a,...d)})}else return r.sendRequest(e,...t)}onRequest(e,t){let r=typeof e=="string"?e:e.method;this._requestHandlers.set(r,t);let i=this.activeConnection(),o;return i!==void 0?(this._requestDisposables.set(r,i.onRequest(e,t)),o={dispose:()=>{let s=this._requestDisposables.get(r);s!==void 0&&(s.dispose(),this._requestDisposables.delete(r))}}):(this._pendingRequestHandlers.set(r,t),o={dispose:()=>{this._pendingRequestHandlers.delete(r);let s=this._requestDisposables.get(r);s!==void 0&&(s.dispose(),this._requestDisposables.delete(r))}}),{dispose:()=>{this._requestHandlers.delete(r),o.dispose()}}}async sendNotification(e,t){if(this.$state===we.StartFailed||this.$state===we.Stopping||this.$state===we.Stopped)return Promise.reject(new $.ResponseError($.ErrorCodes.ConnectionInactive,"Client is not running"));let r=this._didChangeTextDocumentFeature.syncKind===$.TextDocumentSyncKind.Full,i;r&&typeof e!="string"&&e.method===$.DidOpenTextDocumentNotification.method&&(i=t?.textDocument.uri,this._pendingOpenNotifications.add(i));let o=await this.$start();r&&await this.sendPendingFullTextDocumentChanges(o),i!==void 0&&this._pendingOpenNotifications.delete(i);let s=this._clientOptions.middleware?.sendNotification;return s?s(e,o.sendNotification.bind(o),t):o.sendNotification(e,t)}onNotification(e,t){let r=typeof e=="string"?e:e.method;this._notificationHandlers.set(r,t);let i=this.activeConnection(),o;return i!==void 0?(this._notificationDisposables.set(r,i.onNotification(e,t)),o={dispose:()=>{let s=this._notificationDisposables.get(r);s!==void 0&&(s.dispose(),this._notificationDisposables.delete(r))}}):(this._pendingNotificationHandlers.set(r,t),o={dispose:()=>{this._pendingNotificationHandlers.delete(r);let s=this._notificationDisposables.get(r);s!==void 0&&(s.dispose(),this._notificationDisposables.delete(r))}}),{dispose:()=>{this._notificationHandlers.delete(r),o.dispose()}}}async sendProgress(e,t,r){if(this.$state===we.StartFailed||this.$state===we.Stopping||this.$state===we.Stopped)return Promise.reject(new $.ResponseError($.ErrorCodes.ConnectionInactive,"Client is not running"));try{return(await this.$start()).sendProgress(e,t,r)}catch(i){throw this.error(`Sending progress for token ${t} failed.`,i),i}}onProgress(e,t,r){this._progressHandlers.set(t,{type:e,handler:r});let i=this.activeConnection(),o,s=this._clientOptions.middleware?.handleWorkDoneProgress,a=$.WorkDoneProgress.is(e)&&s!==void 0?c=>{s(t,c,()=>r(c))}:r;return i!==void 0?(this._progressDisposables.set(t,i.onProgress(e,t,a)),o={dispose:()=>{let c=this._progressDisposables.get(t);c!==void 0&&(c.dispose(),this._progressDisposables.delete(t))}}):(this._pendingProgressHandlers.set(t,{type:e,handler:r}),o={dispose:()=>{this._pendingProgressHandlers.delete(t);let c=this._progressDisposables.get(t);c!==void 0&&(c.dispose(),this._progressDisposables.delete(t))}}),{dispose:()=>{this._progressHandlers.delete(t),o.dispose()}}}createDefaultErrorHandler(e){if(e!==void 0&&e<0)throw new Error(`Invalid maxRestartCount: ${e}`);return new rf(this,e??4)}async setTrace(e){this._trace=e;let t=this.activeConnection();t!==void 0&&await t.trace(this._trace,this._tracer,{sendNotification:!1,traceFormat:this._traceFormat})}data2String(e){if(e instanceof $.ResponseError){let t=e;return` Message: ${t.message}
47
+ >>> no match, partial?`,e,g,t,m),g===a))}var v;if(typeof u=="string"?(v=d===u,this.debug("string match",u,d,v)):(v=d.match(u),this.debug("pattern match",u,d,v)),!v)return!1}if(o===a&&s===c)return!0;if(o===a)return r;if(s===c)return o===a-1&&e[o]==="";throw new Error("wtf?")}braceExpand(){return Wy(this.pattern,this.options)}parse(e,t){xs(e);let r=this.options;if(e==="**")if(r.noglobstar)e="*";else return Tn;if(e==="")return"";let i="",o=!1,s=!1,a=[],c=[],u,d=!1,g=-1,m=-1,y,v,T,P=e.charAt(0)===".",q=r.dot||P,L=()=>P?"":q?"(?!(?:^|\\/)\\.{1,2}(?:$|\\/))":"(?!\\.)",N=V=>V.charAt(0)==="."?"":r.dot?"(?!(?:^|\\/)\\.{1,2}(?:$|\\/))":"(?!\\.)",K=()=>{if(u){switch(u){case"*":i+=pl,o=!0;break;case"?":i+=ml,o=!0;break;default:i+="\\"+u;break}this.debug("clearStateChar %j %j",u,i),u=!1}};for(let V=0,ne;V<e.length&&(ne=e.charAt(V));V++){if(this.debug("%s %s %s %j",e,V,i,ne),s){if(ne==="/")return!1;$y[ne]&&(i+="\\"),i+=ne,s=!1;continue}switch(ne){case"/":return!1;case"\\":if(d&&e.charAt(V+1)==="-"){i+=ne;continue}K(),s=!0;continue;case"?":case"*":case"+":case"@":case"!":if(this.debug("%s %s %s %j <-- stateChar",e,V,i,ne),d){this.debug(" in class"),ne==="!"&&V===m+1&&(ne="^"),i+=ne;continue}this.debug("call clearStateChar %j",u),K(),u=ne,r.noext&&K();continue;case"(":{if(d){i+="(";continue}if(!u){i+="\\(";continue}let ce={type:u,start:V-1,reStart:i.length,open:jy[u].open,close:jy[u].close};this.debug(this.pattern," ",ce),a.push(ce),i+=ce.open,ce.start===0&&ce.type!=="!"&&(P=!0,i+=N(e.slice(V+1))),this.debug("plType %j %j",u,i),u=!1;continue}case")":{let ce=a[a.length-1];if(d||!ce){i+="\\)";continue}a.pop(),K(),o=!0,v=ce,i+=v.close,v.type==="!"&&c.push(Object.assign(v,{reEnd:i.length}));continue}case"|":{let ce=a[a.length-1];if(d||!ce){i+="\\|";continue}K(),i+="|",ce.start===0&&ce.type!=="!"&&(P=!0,i+=N(e.slice(V+1)));continue}case"[":if(K(),d){i+="\\"+ne;continue}d=!0,m=V,g=i.length,i+=ne;continue;case"]":if(V===m+1||!d){i+="\\"+ne;continue}y=e.substring(m+1,V);try{RegExp("["+CT(bT(y))+"]"),i+=ne}catch{i=i.substring(0,g)+"(?:$.)"}o=!0,d=!1;continue;default:K(),$y[ne]&&!(ne==="^"&&d)&&(i+="\\"),i+=ne;break}}for(d&&(y=e.slice(m+1),T=this.parse(y,hl),i=i.substring(0,g)+"\\["+T[0],o=o||T[1]),v=a.pop();v;v=a.pop()){let V;V=i.slice(v.reStart+v.open.length),this.debug("setting tail",i,v),V=V.replace(/((?:\\{2}){0,64})(\\?)\|/g,(ce,Ne,U)=>(U||(U="\\"),Ne+Ne+U+"|")),this.debug(`tail=%j
48
+ %s`,V,V,v,i);let ne=v.type==="*"?pl:v.type==="?"?ml:"\\"+v.type;o=!0,i=i.slice(0,v.reStart)+ne+"\\("+V}K(),s&&(i+="\\\\");let te=mT[i.charAt(0)];for(let V=c.length-1;V>-1;V--){let ne=c[V],ce=i.slice(0,ne.reStart),Ne=i.slice(ne.reStart,ne.reEnd-8),U=i.slice(ne.reEnd),I=i.slice(ne.reEnd-8,ne.reEnd)+U,J=ce.split(")").length,B=ce.split("(").length-J,pe=U;for(let oe=0;oe<B;oe++)pe=pe.replace(/\)[+*?]?/,"");U=pe;let ie=U===""&&t!==hl?"(?:$|\\/)":"";i=ce+Ne+U+ie+I}if(i!==""&&o&&(i="(?=.)"+i),te&&(i=L()+i),t===hl)return[i,o];if(r.nocase&&!o&&(o=e.toUpperCase()!==e.toLowerCase()),!o)return yT(e);let Z=r.nocase?"i":"";try{return Object.assign(new RegExp("^"+i+"$",Z),{_glob:e,_src:i})}catch{return new RegExp("$.")}}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let e=this.set;if(!e.length)return this.regexp=!1,this.regexp;let t=this.options,r=t.noglobstar?pl:t.dot?hT:gT,i=t.nocase?"i":"",o=e.map(s=>(s=s.map(a=>typeof a=="string"?wT(a):a===Tn?Tn:a._src).reduce((a,c)=>(a[a.length-1]===Tn&&c===Tn||a.push(c),a),[]),s.forEach((a,c)=>{a!==Tn||s[c-1]===Tn||(c===0?s.length>1?s[c+1]="(?:\\/|"+r+"\\/)?"+s[c+1]:s[c]=r:c===s.length-1?s[c-1]+="(?:\\/|"+r+")?":(s[c-1]+="(?:\\/|\\/"+r+"\\/)"+s[c+1],s[c+1]=Tn))}),s.filter(a=>a!==Tn).join("/"))).join("|");o="^(?:"+o+")$",this.negate&&(o="^(?!"+o+").*$");try{this.regexp=new RegExp(o,i)}catch{this.regexp=!1}return this.regexp}match(e,t=this.partial){if(this.debug("match",e,this.pattern),this.comment)return!1;if(this.empty)return e==="";if(e==="/"&&t)return!0;let r=this.options;gl.sep!=="/"&&(e=e.split(gl.sep).join("/")),e=e.split(Uy),this.debug(this.pattern,"split",e);let i=this.set;this.debug(this.pattern,"set",i);let o;for(let s=e.length-1;s>=0&&(o=e[s],!o);s--);for(let s=0;s<i.length;s++){let a=i[s],c=e;if(r.matchBase&&a.length===1&&(c=[o]),this.matchOne(c,a,t))return r.flipNegate?!0:!this.negate}return r.flipNegate?!1:this.negate}static defaults(e){return Yt.defaults(e).Minimatch}};Yt.Minimatch=pi});var Tl=E(br=>{"use strict";Object.defineProperty(br,"__esModule",{value:!0});br.DiagnosticFeature=br.DiagnosticPullMode=br.vsdiag=void 0;var DT=qs(),Se=require("vscode"),ot=fe(),ST=Xe(),yl=Ee();function Is(n,e){return n[e]===void 0&&(n[e]={}),n[e]}var hn;(function(n){let e;(function(t){t.full="full",t.unChanged="unChanged"})(e=n.DocumentDiagnosticReportKind||(n.DocumentDiagnosticReportKind={}))})(hn||(br.vsdiag=hn={}));var Fs;(function(n){n.onType="onType",n.onSave="onSave"})(Fs||(br.DiagnosticPullMode=Fs={}));var qt;(function(n){n.active="open",n.reschedule="reschedule",n.outDated="drop"})(qt||(qt={}));var bl=class n{constructor(){this.open=new Set,this._onOpen=new Se.EventEmitter,this._onClose=new Se.EventEmitter,n.fillTabResources(this.open);let e=t=>{if(t.closed.length===0&&t.opened.length===0)return;let r=this.open,i=new Set;n.fillTabResources(i);let o=new Set,s=new Set(i);for(let a of r.values())i.has(a)?s.delete(a):o.add(a);if(this.open=i,o.size>0){let a=new Set;for(let c of o)a.add(Se.Uri.parse(c));this._onClose.fire(a)}if(s.size>0){let a=new Set;for(let c of s)a.add(Se.Uri.parse(c));this._onOpen.fire(a)}};Se.window.tabGroups.onDidChangeTabs!==void 0?this.disposable=Se.window.tabGroups.onDidChangeTabs(e):this.disposable={dispose:()=>{}}}get onClose(){return this._onClose.event}get onOpen(){return this._onOpen.event}dispose(){this.disposable.dispose()}isActive(e){return e instanceof Se.Uri?Se.window.activeTextEditor?.document.uri===e:Se.window.activeTextEditor?.document===e}isVisible(e){let t=e instanceof Se.Uri?e:e.uri;return this.open.has(t.toString())}getTabResources(){let e=new Set;return n.fillTabResources(new Set,e),e}static fillTabResources(e,t){let r=e??new Set;for(let i of Se.window.tabGroups.all)for(let o of i.tabs){let s=o.input,a;s instanceof Se.TabInputText?a=s.uri:s instanceof Se.TabInputTextDiff?a=s.modified:s instanceof Se.TabInputCustom&&(a=s.uri),a!==void 0&&!r.has(a.toString())&&(r.add(a.toString()),t!==void 0&&t.add(a))}}},ft;(function(n){n[n.document=1]="document",n[n.workspace=2]="workspace"})(ft||(ft={}));var Qn;(function(n){function e(t){return t instanceof Se.Uri?t.toString():t.uri.toString()}n.asKey=e})(Qn||(Qn={}));var wl=class{constructor(){this.documentPullStates=new Map,this.workspacePullStates=new Map}track(e,t,r){let i=e===ft.document?this.documentPullStates:this.workspacePullStates,[o,s,a]=t instanceof Se.Uri?[t.toString(),t,r]:[t.uri.toString(),t.uri,t.version],c=i.get(o);return c===void 0&&(c={document:s,pulledVersion:a,resultId:void 0},i.set(o,c)),c}update(e,t,r,i){let o=e===ft.document?this.documentPullStates:this.workspacePullStates,[s,a,c,u]=t instanceof Se.Uri?[t.toString(),t,r,i]:[t.uri.toString(),t.uri,t.version,r],d=o.get(s);d===void 0?(d={document:a,pulledVersion:c,resultId:u},o.set(s,d)):(d.pulledVersion=c,d.resultId=u)}unTrack(e,t){let r=Qn.asKey(t);(e===ft.document?this.documentPullStates:this.workspacePullStates).delete(r)}tracks(e,t){let r=Qn.asKey(t);return(e===ft.document?this.documentPullStates:this.workspacePullStates).has(r)}getResultId(e,t){let r=Qn.asKey(t);return(e===ft.document?this.documentPullStates:this.workspacePullStates).get(r)?.resultId}getAllResultIds(){let e=[];for(let[t,r]of this.workspacePullStates)this.documentPullStates.has(t)&&(r=this.documentPullStates.get(t)),r.resultId!==void 0&&e.push({uri:t,value:r.resultId});return e}},Cl=class{constructor(e,t,r){this.client=e,this.tabs=t,this.options=r,this.isDisposed=!1,this.onDidChangeDiagnosticsEmitter=new Se.EventEmitter,this.provider=this.createProvider(),this.diagnostics=Se.languages.createDiagnosticCollection(r.identifier),this.openRequests=new Map,this.documentStates=new wl,this.workspaceErrorCounter=0}knows(e,t){let r=t instanceof Se.Uri?t:t.uri;return this.documentStates.tracks(e,t)||this.openRequests.has(r.toString())}forget(e,t){this.documentStates.unTrack(e,t)}pull(e,t){if(this.isDisposed)return;let r=e instanceof Se.Uri?e:e.uri;this.pullAsync(e).then(()=>{t&&t()},i=>{this.client.error(`Document pull failed for text document ${r.toString()}`,i,!1)})}async pullAsync(e,t){if(this.isDisposed)return;let r=e instanceof Se.Uri,i=r?e:e.uri,o=i.toString();t=r?t:e.version;let s=this.openRequests.get(o),a=r?this.documentStates.track(ft.document,e,t):this.documentStates.track(ft.document,e);if(s===void 0){let c=new Se.CancellationTokenSource;this.openRequests.set(o,{state:qt.active,document:e,version:t,tokenSource:c});let u,d;try{u=await this.provider.provideDiagnostics(e,a.resultId,c.token)??{kind:hn.DocumentDiagnosticReportKind.full,items:[]}}catch(g){if(g instanceof yl.LSPCancellationError&&ot.DiagnosticServerCancellationData.is(g.data)&&g.data.retriggerRequest===!1&&(d={state:qt.outDated,document:e}),d===void 0&&g instanceof Se.CancellationError)d={state:qt.reschedule,document:e};else throw g}if(d=d??this.openRequests.get(o),d===void 0){this.client.error(`Lost request state in diagnostic pull model. Clearing diagnostics for ${o}`),this.diagnostics.delete(i);return}if(this.openRequests.delete(o),!this.tabs.isVisible(e)){this.documentStates.unTrack(ft.document,e);return}if(d.state===qt.outDated)return;u!==void 0&&(u.kind===hn.DocumentDiagnosticReportKind.full&&this.diagnostics.set(i,u.items),a.pulledVersion=t,a.resultId=u.resultId),d.state===qt.reschedule&&this.pull(e)}else s.state===qt.active?(s.tokenSource.cancel(),this.openRequests.set(o,{state:qt.reschedule,document:s.document})):s.state===qt.outDated&&this.openRequests.set(o,{state:qt.reschedule,document:s.document})}forgetDocument(e){let t=e instanceof Se.Uri?e:e.uri,r=t.toString(),i=this.openRequests.get(r);this.options.workspaceDiagnostics?i!==void 0?this.openRequests.set(r,{state:qt.reschedule,document:e}):this.pull(e,()=>{this.forget(ft.document,e)}):(i!==void 0&&(i.state===qt.active&&i.tokenSource.cancel(),this.openRequests.set(r,{state:qt.outDated,document:e})),this.diagnostics.delete(t),this.forget(ft.document,e))}pullWorkspace(){this.isDisposed||this.pullWorkspaceAsync().then(()=>{this.workspaceTimeout=(0,ot.RAL)().timer.setTimeout(()=>{this.pullWorkspace()},2e3)},e=>{!(e instanceof yl.LSPCancellationError)&&!ot.DiagnosticServerCancellationData.is(e.data)&&(this.client.error("Workspace diagnostic pull failed.",e,!1),this.workspaceErrorCounter++),this.workspaceErrorCounter<=5&&(this.workspaceTimeout=(0,ot.RAL)().timer.setTimeout(()=>{this.pullWorkspace()},2e3))})}async pullWorkspaceAsync(){if(!this.provider.provideWorkspaceDiagnostics||this.isDisposed)return;this.workspaceCancellation!==void 0&&(this.workspaceCancellation.cancel(),this.workspaceCancellation=void 0),this.workspaceCancellation=new Se.CancellationTokenSource;let e=this.documentStates.getAllResultIds().map(t=>({uri:this.client.protocol2CodeConverter.asUri(t.uri),value:t.value}));await this.provider.provideWorkspaceDiagnostics(e,this.workspaceCancellation.token,t=>{if(!(!t||this.isDisposed))for(let r of t.items)r.kind===hn.DocumentDiagnosticReportKind.full&&(this.documentStates.tracks(ft.document,r.uri)||this.diagnostics.set(r.uri,r.items)),this.documentStates.update(ft.workspace,r.uri,r.version??void 0,r.resultId)})}createProvider(){let e={onDidChangeDiagnostics:this.onDidChangeDiagnosticsEmitter.event,provideDiagnostics:(t,r,i)=>{let o=(a,c,u)=>{let d={identifier:this.options.identifier,textDocument:{uri:this.client.code2ProtocolConverter.asUri(a instanceof Se.Uri?a:a.uri)},previousResultId:c};return this.isDisposed===!0||!this.client.isRunning()?{kind:hn.DocumentDiagnosticReportKind.full,items:[]}:this.client.sendRequest(ot.DocumentDiagnosticRequest.type,d,u).then(async g=>g==null||this.isDisposed||u.isCancellationRequested?{kind:hn.DocumentDiagnosticReportKind.full,items:[]}:g.kind===ot.DocumentDiagnosticReportKind.Full?{kind:hn.DocumentDiagnosticReportKind.full,resultId:g.resultId,items:await this.client.protocol2CodeConverter.asDiagnostics(g.items,u)}:{kind:hn.DocumentDiagnosticReportKind.unChanged,resultId:g.resultId},g=>this.client.handleFailedRequest(ot.DocumentDiagnosticRequest.type,u,g,{kind:hn.DocumentDiagnosticReportKind.full,items:[]}))},s=this.client.middleware;return s.provideDiagnostics?s.provideDiagnostics(t,r,i,o):o(t,r,i)}};return this.options.workspaceDiagnostics&&(e.provideWorkspaceDiagnostics=(t,r,i)=>{let o=async u=>u.kind===ot.DocumentDiagnosticReportKind.Full?{kind:hn.DocumentDiagnosticReportKind.full,uri:this.client.protocol2CodeConverter.asUri(u.uri),resultId:u.resultId,version:u.version,items:await this.client.protocol2CodeConverter.asDiagnostics(u.items,r)}:{kind:hn.DocumentDiagnosticReportKind.unChanged,uri:this.client.protocol2CodeConverter.asUri(u.uri),resultId:u.resultId,version:u.version},s=u=>{let d=[];for(let g of u)d.push({uri:this.client.code2ProtocolConverter.asUri(g.uri),value:g.value});return d},a=(u,d)=>{let g=(0,ST.generateUuid)(),m=this.client.onProgress(ot.WorkspaceDiagnosticRequest.partialResult,g,async v=>{if(v==null){i(null);return}let T={items:[]};for(let P of v.items)try{T.items.push(await o(P))}catch(q){this.client.error("Converting workspace diagnostics failed.",q)}i(T)}),y={identifier:this.options.identifier,previousResultIds:s(u),partialResultToken:g};return this.isDisposed===!0||!this.client.isRunning()?{items:[]}:this.client.sendRequest(ot.WorkspaceDiagnosticRequest.type,y,d).then(async v=>{if(d.isCancellationRequested)return{items:[]};let T={items:[]};for(let P of v.items)T.items.push(await o(P));return m.dispose(),i(T),{items:[]}},v=>(m.dispose(),this.client.handleFailedRequest(ot.DocumentDiagnosticRequest.type,d,v,{items:[]})))},c=this.client.middleware;return c.provideWorkspaceDiagnostics?c.provideWorkspaceDiagnostics(t,r,i,a):a(t,r,i)}),e}dispose(){this.isDisposed=!0,this.workspaceCancellation?.cancel(),this.workspaceTimeout?.dispose();for(let[e,t]of this.openRequests)t.state===qt.active&&t.tokenSource.cancel(),this.openRequests.set(e,{state:qt.outDated,document:t.document});this.diagnostics.dispose()}},Dl=class{constructor(e){this.diagnosticRequestor=e,this.documents=new ot.LinkedMap,this.isDisposed=!1}add(e){if(this.isDisposed===!0)return;let t=Qn.asKey(e);this.documents.has(t)||(this.documents.set(t,e,ot.Touch.Last),this.trigger())}remove(e){let t=Qn.asKey(e);this.documents.delete(t),this.documents.size===0?this.stop():t===this.endDocumentKey()&&(this.endDocument=this.documents.last)}trigger(){if(this.isDisposed!==!0){if(this.intervalHandle!==void 0){this.endDocument=this.documents.last;return}this.endDocument=this.documents.last,this.intervalHandle=(0,ot.RAL)().timer.setInterval(()=>{let e=this.documents.first;if(e!==void 0){let t=Qn.asKey(e);this.diagnosticRequestor.pull(e),this.documents.set(t,e,ot.Touch.Last),t===this.endDocumentKey()&&this.stop()}},200)}}dispose(){this.isDisposed=!0,this.stop(),this.documents.clear()}stop(){this.intervalHandle?.dispose(),this.intervalHandle=void 0,this.endDocument=void 0}endDocumentKey(){return this.endDocument!==void 0?Qn.asKey(this.endDocument):void 0}},Sl=class{constructor(e,t,r){let i=e.clientOptions.diagnosticPullOptions??{onChange:!0,onSave:!1},o=e.protocol2CodeConverter.asDocumentSelector(r.documentSelector),s=[],a=v=>{let T=r.documentSelector;if(i.match!==void 0)return i.match(T,v);for(let P of T)if(ot.TextDocumentFilter.is(P)){if(typeof P=="string"||P.language!==void 0&&P.language!=="*"||P.scheme!==void 0&&P.scheme!=="*"&&P.scheme!==v.scheme)return!1;if(P.pattern!==void 0){let q=new DT.Minimatch(P.pattern,{noext:!0});if(!q.makeRe()||!q.match(v.fsPath))return!1}}return!0},c=v=>v instanceof Se.Uri?a(v):Se.languages.match(o,v)>0&&t.isVisible(v),u=v=>v instanceof Se.Uri?this.activeTextDocument?.uri.toString()===v.toString():this.activeTextDocument===v;this.diagnosticRequestor=new Cl(e,t,r),this.backgroundScheduler=new Dl(this.diagnosticRequestor);let d=v=>{!c(v)||!r.interFileDependencies||u(v)||this.backgroundScheduler.add(v)};this.activeTextDocument=Se.window.activeTextEditor?.document,Se.window.onDidChangeActiveTextEditor(v=>{let T=this.activeTextDocument;this.activeTextDocument=v?.document,T!==void 0&&d(T),this.activeTextDocument!==void 0&&this.backgroundScheduler.remove(this.activeTextDocument)});let g=e.getFeature(ot.DidOpenTextDocumentNotification.method);s.push(g.onNotificationSent(v=>{let T=v.textDocument;this.diagnosticRequestor.knows(ft.document,T)||c(T)&&this.diagnosticRequestor.pull(T,()=>{d(T)})})),s.push(t.onOpen(v=>{for(let T of v){if(this.diagnosticRequestor.knows(ft.document,T))continue;let P=T.toString(),q;for(let L of Se.workspace.textDocuments)if(P===L.uri.toString()){q=L;break}q!==void 0&&c(q)&&this.diagnosticRequestor.pull(q,()=>{d(q)})}}));let m=new Set;for(let v of Se.workspace.textDocuments)c(v)&&(this.diagnosticRequestor.pull(v,()=>{d(v)}),m.add(v.uri.toString()));if(i.onTabs===!0)for(let v of t.getTabResources())!m.has(v.toString())&&c(v)&&this.diagnosticRequestor.pull(v,()=>{d(v)});if(i.onChange===!0){let v=e.getFeature(ot.DidChangeTextDocumentNotification.method);s.push(v.onNotificationSent(async T=>{let P=T.textDocument;(i.filter===void 0||!i.filter(P,Fs.onType))&&this.diagnosticRequestor.knows(ft.document,P)&&this.diagnosticRequestor.pull(P,()=>{this.backgroundScheduler.trigger()})}))}if(i.onSave===!0){let v=e.getFeature(ot.DidSaveTextDocumentNotification.method);s.push(v.onNotificationSent(T=>{let P=T.textDocument;(i.filter===void 0||!i.filter(P,Fs.onSave))&&this.diagnosticRequestor.knows(ft.document,P)&&this.diagnosticRequestor.pull(T.textDocument,()=>{this.backgroundScheduler.trigger()})}))}let y=e.getFeature(ot.DidCloseTextDocumentNotification.method);s.push(y.onNotificationSent(v=>{this.cleanUpDocument(v.textDocument)})),t.onClose(v=>{for(let T of v)this.cleanUpDocument(T)}),this.diagnosticRequestor.onDidChangeDiagnosticsEmitter.event(()=>{for(let v of Se.workspace.textDocuments)c(v)&&this.diagnosticRequestor.pull(v)}),r.workspaceDiagnostics===!0&&r.identifier!=="da348dc5-c30a-4515-9d98-31ff3be38d14"&&this.diagnosticRequestor.pullWorkspace(),this.disposable=Se.Disposable.from(...s,this.backgroundScheduler,this.diagnosticRequestor)}get onDidChangeDiagnosticsEmitter(){return this.diagnosticRequestor.onDidChangeDiagnosticsEmitter}get diagnostics(){return this.diagnosticRequestor.provider}cleanUpDocument(e){this.diagnosticRequestor.knows(ft.document,e)&&(this.diagnosticRequestor.forgetDocument(e),this.backgroundScheduler.remove(e))}},_l=class extends yl.TextDocumentLanguageFeature{constructor(e){super(e,ot.DocumentDiagnosticRequest.type)}fillClientCapabilities(e){let t=Is(Is(e,"textDocument"),"diagnostic");t.dynamicRegistration=!0,t.relatedDocumentSupport=!1,Is(Is(e,"workspace"),"diagnostics").refreshSupport=!0}initialize(e,t){this._client.onRequest(ot.DiagnosticRefreshRequest.type,async()=>{for(let s of this.getAllProviders())s.onDidChangeDiagnosticsEmitter.fire()});let[i,o]=this.getRegistration(t,e.diagnosticProvider);!i||!o||this.register({id:i,registerOptions:o})}clear(){this.tabs!==void 0&&(this.tabs.dispose(),this.tabs=void 0),super.clear()}registerLanguageProvider(e){this.tabs===void 0&&(this.tabs=new bl);let t=new Sl(this._client,this.tabs,e);return[t.disposable,t]}};br.DiagnosticFeature=_l});var zy=E(Ls=>{"use strict";Object.defineProperty(Ls,"__esModule",{value:!0});Ls.NotebookDocumentSyncFeature=void 0;var It=require("vscode"),_T=qs(),Yn=fe(),TT=Xe(),Ky=un();function Vy(n,e){return n[e]===void 0&&(n[e]={}),n[e]}var hi;(function(n){let e;(function(t){function r(m,y){return{version:m.version,uri:y.asUri(m.uri)}}t.asVersionedNotebookDocumentIdentifier=r;function i(m,y,v){let T=Yn.NotebookDocument.create(v.asUri(m.uri),m.notebookType,m.version,o(y,v));return Object.keys(m.metadata).length>0&&(T.metadata=s(m.metadata)),T}t.asNotebookDocument=i;function o(m,y){return m.map(v=>a(v,y))}t.asNotebookCells=o;function s(m){return u(new Set,m)}t.asMetadata=s;function a(m,y){let v=Yn.NotebookCell.create(c(m.kind),y.asUri(m.document.uri));return Object.keys(m.metadata).length>0&&(v.metadata=s(m.metadata)),m.executionSummary!==void 0&&Ky.number(m.executionSummary.executionOrder)&&Ky.boolean(m.executionSummary.success)&&(v.executionSummary={executionOrder:m.executionSummary.executionOrder,success:m.executionSummary.success}),v}t.asNotebookCell=a;function c(m){switch(m){case It.NotebookCellKind.Markup:return Yn.NotebookCellKind.Markup;case It.NotebookCellKind.Code:return Yn.NotebookCellKind.Code}}function u(m,y){if(m.has(y))throw new Error("Can't deep copy cyclic structures.");if(Array.isArray(y)){let v=[];for(let T of y)if(T!==null&&typeof T=="object"||Array.isArray(T))v.push(u(m,T));else{if(T instanceof RegExp)throw new Error("Can't transfer regular expressions to the server");v.push(T)}return v}else{let v=Object.keys(y),T=Object.create(null);for(let P of v){let q=y[P];if(q!==null&&typeof q=="object"||Array.isArray(q))T[P]=u(m,q);else{if(q instanceof RegExp)throw new Error("Can't transfer regular expressions to the server");T[P]=q}}return T}}function d(m,y){let v=y.asChangeTextDocumentParams(m,m.document.uri,m.document.version);return{document:v.textDocument,changes:v.contentChanges}}t.asTextContentChange=d;function g(m,y){let v=Object.create(null);if(m.metadata&&(v.metadata=n.c2p.asMetadata(m.metadata)),m.cells!==void 0){let T=Object.create(null),P=m.cells;P.structure&&(T.structure={array:{start:P.structure.array.start,deleteCount:P.structure.array.deleteCount,cells:P.structure.array.cells!==void 0?P.structure.array.cells.map(q=>n.c2p.asNotebookCell(q,y)):void 0},didOpen:P.structure.didOpen!==void 0?P.structure.didOpen.map(q=>y.asOpenTextDocumentParams(q.document).textDocument):void 0,didClose:P.structure.didClose!==void 0?P.structure.didClose.map(q=>y.asCloseTextDocumentParams(q.document).textDocument):void 0}),P.data!==void 0&&(T.data=P.data.map(q=>n.c2p.asNotebookCell(q,y))),P.textContent!==void 0&&(T.textContent=P.textContent.map(q=>n.c2p.asTextContentChange(q,y))),Object.keys(T).length>0&&(v.cells=T)}return v}t.asNotebookDocumentChangeEvent=g})(e=n.c2p||(n.c2p={}))})(hi||(hi={}));var Rl;(function(n){function e(a,c,u){let d=a.length,g=c.length,m=0;for(;m<g&&m<d&&t(a[m],c[m],u);)m++;if(m<g&&m<d){let y=d-1,v=g-1;for(;y>=0&&v>=0&&t(a[y],c[v],u);)y--,v--;let T=y+1-m,P=m===v+1?void 0:c.slice(m,v+1);return P!==void 0?{start:m,deleteCount:T,cells:P}:{start:m,deleteCount:T}}else return m<g?{start:m,deleteCount:0,cells:c.slice(m)}:m<d?{start:m,deleteCount:d-m}:void 0}n.computeDiff=e;function t(a,c,u=!0){return a.kind!==c.kind||a.document.uri.toString()!==c.document.uri.toString()||a.document.languageId!==c.document.languageId||!r(a.executionSummary,c.executionSummary)?!1:!u||u&&o(a.metadata,c.metadata)}function r(a,c){return a===c?!0:a===void 0||c===void 0?!1:a.executionOrder===c.executionOrder&&a.success===c.success&&i(a.timing,c.timing)}function i(a,c){return a===c?!0:a===void 0||c===void 0?!1:a.startTime===c.startTime&&a.endTime===c.endTime}function o(a,c){if(a===c)return!0;if(a==null||c===null||c===void 0||typeof a!=typeof c||typeof a!="object")return!1;let u=Array.isArray(a),d=Array.isArray(c);if(u!==d)return!1;if(u&&d){if(a.length!==c.length)return!1;for(let g=0;g<a.length;g++)if(!o(a[g],c[g]))return!1}if(s(a)&&s(c)){let g=Object.keys(a),m=Object.keys(c);if(g.length!==m.length||(g.sort(),m.sort(),!o(g,m)))return!1;for(let y=0;y<g.length;y++){let v=g[y];if(!o(a[v],c[v]))return!1}return!0}return!1}function s(a){return a!==null&&typeof a=="object"}n.isObjectLiteral=s})(Rl||(Rl={}));var Pl;(function(n){function e(t,r){if(typeof t=="string")return t==="*"||r.notebookType===t;if(t.notebookType!==void 0&&t.notebookType!=="*"&&r.notebookType!==t.notebookType)return!1;let i=r.uri;if(t.scheme!==void 0&&t.scheme!=="*"&&i.scheme!==t.scheme)return!1;if(t.pattern!==void 0){let o=new _T.Minimatch(t.pattern,{noext:!0});if(!o.makeRe()||!o.match(i.fsPath))return!1}return!0}n.matchNotebook=e})(Pl||(Pl={}));var Os;(function(n){function e(r){let i=r.notebookSelector,o=[];for(let s of i){let a=(typeof s.notebook=="string"?s.notebook:s.notebook?.notebookType)??"*",c=typeof s.notebook=="string"?void 0:s.notebook?.scheme,u=typeof s.notebook=="string"?void 0:s.notebook?.pattern;if(s.cells!==void 0)for(let d of s.cells)o.push(t(a,c,u,d.language));else o.push(t(a,c,u,void 0))}return o}n.asDocumentSelector=e;function t(r,i,o,s){return i===void 0&&o===void 0?{notebook:r,language:s}:{notebook:{notebookType:r,scheme:i,pattern:o},language:s}}})(Os||(Os={}));var Ms;(function(n){function e(t){return{cells:t,uris:new Set(t.map(r=>r.document.uri.toString()))}}n.create=e})(Ms||(Ms={}));var gi=class{constructor(e,t){this.client=e,this.options=t,this.notebookSyncInfo=new Map,this.notebookDidOpen=new Set,this.disposables=[],this.selector=e.protocol2CodeConverter.asDocumentSelector(Os.asDocumentSelector(t)),It.workspace.onDidOpenNotebookDocument(r=>{this.notebookDidOpen.add(r.uri.toString()),this.didOpen(r)},void 0,this.disposables);for(let r of It.workspace.notebookDocuments)this.notebookDidOpen.add(r.uri.toString()),this.didOpen(r);It.workspace.onDidChangeNotebookDocument(r=>this.didChangeNotebookDocument(r),void 0,this.disposables),this.options.save===!0&&It.workspace.onDidSaveNotebookDocument(r=>this.didSave(r),void 0,this.disposables),It.workspace.onDidCloseNotebookDocument(r=>{this.didClose(r),this.notebookDidOpen.delete(r.uri.toString())},void 0,this.disposables)}getState(){for(let e of It.workspace.notebookDocuments)if(this.getMatchingCells(e)!==void 0)return{kind:"document",id:"$internal",registrations:!0,matches:!0};return{kind:"document",id:"$internal",registrations:!0,matches:!1}}get mode(){return"notebook"}handles(e){return It.languages.match(this.selector,e)>0}didOpenNotebookCellTextDocument(e,t){if(It.languages.match(this.selector,t.document)===0||!this.notebookDidOpen.has(e.uri.toString()))return;let r=this.notebookSyncInfo.get(e.uri.toString()),i=this.cellMatches(e,t);if(r!==void 0){let o=r.uris.has(t.document.uri.toString());if(i&&o||!i&&!o)return;if(i){let s=this.getMatchingCells(e);if(s!==void 0){let a=this.asNotebookDocumentChangeEvent(e,void 0,r,s);a!==void 0&&this.doSendChange(a,s).catch(()=>{})}}}else i&&this.doSendOpen(e,[t]).catch(()=>{})}didChangeNotebookCellTextDocument(e,t){It.languages.match(this.selector,t.document)!==0&&this.doSendChange({notebook:e,cells:{textContent:[t]}},void 0).catch(()=>{})}didCloseNotebookCellTextDocument(e,t){let r=this.notebookSyncInfo.get(e.uri.toString());if(r===void 0)return;let i=t.document.uri,o=r.cells.findIndex(s=>s.document.uri.toString()===i.toString());if(o!==-1)if(o===0&&r.cells.length===1)this.doSendClose(e,r.cells).catch(()=>{});else{let s=r.cells.slice(),a=s.splice(o,1);this.doSendChange({notebook:e,cells:{structure:{array:{start:o,deleteCount:1},didClose:a}}},s).catch(()=>{})}}dispose(){for(let e of this.disposables)e.dispose()}didOpen(e,t=this.getMatchingCells(e),r=this.notebookSyncInfo.get(e.uri.toString())){if(r!==void 0)if(t!==void 0){let i=this.asNotebookDocumentChangeEvent(e,void 0,r,t);i!==void 0&&this.doSendChange(i,t).catch(()=>{})}else this.doSendClose(e,[]).catch(()=>{});else{if(t===void 0)return;this.doSendOpen(e,t).catch(()=>{})}}didChangeNotebookDocument(e){let t=e.notebook,r=this.notebookSyncInfo.get(t.uri.toString());if(r===void 0){if(e.contentChanges.length===0)return;let i=this.getMatchingCells(t);if(i===void 0)return;this.didOpen(t,i,r)}else{let i=this.getMatchingCells(t);if(i===void 0){this.didClose(t,r);return}let o=this.asNotebookDocumentChangeEvent(e.notebook,e,r,i);o!==void 0&&this.doSendChange(o,i).catch(()=>{})}}didSave(e){this.notebookSyncInfo.get(e.uri.toString())!==void 0&&this.doSendSave(e).catch(()=>{})}didClose(e,t=this.notebookSyncInfo.get(e.uri.toString())){if(t===void 0)return;let r=e.getCells().filter(i=>t.uris.has(i.document.uri.toString()));this.doSendClose(e,r).catch(()=>{})}async sendDidOpenNotebookDocument(e){let t=this.getMatchingCells(e);if(t!==void 0)return this.doSendOpen(e,t)}async doSendOpen(e,t){let r=async(o,s)=>{let a=hi.c2p.asNotebookDocument(o,s,this.client.code2ProtocolConverter),c=s.map(u=>this.client.code2ProtocolConverter.asTextDocumentItem(u.document));try{await this.client.sendNotification(Yn.DidOpenNotebookDocumentNotification.type,{notebookDocument:a,cellTextDocuments:c})}catch(u){throw this.client.error("Sending DidOpenNotebookDocumentNotification failed",u),u}},i=this.client.middleware?.notebooks;return this.notebookSyncInfo.set(e.uri.toString(),Ms.create(t)),i?.didOpen!==void 0?i.didOpen(e,t,r):r(e,t)}async sendDidChangeNotebookDocument(e){return this.doSendChange(e,void 0)}async doSendChange(e,t=this.getMatchingCells(e.notebook)){let r=async o=>{try{await this.client.sendNotification(Yn.DidChangeNotebookDocumentNotification.type,{notebookDocument:hi.c2p.asVersionedNotebookDocumentIdentifier(o.notebook,this.client.code2ProtocolConverter),change:hi.c2p.asNotebookDocumentChangeEvent(o,this.client.code2ProtocolConverter)})}catch(s){throw this.client.error("Sending DidChangeNotebookDocumentNotification failed",s),s}},i=this.client.middleware?.notebooks;return e.cells?.structure!==void 0&&this.notebookSyncInfo.set(e.notebook.uri.toString(),Ms.create(t??[])),i?.didChange!==void 0?i?.didChange(e,r):r(e)}async sendDidSaveNotebookDocument(e){return this.doSendSave(e)}async doSendSave(e){let t=async i=>{try{await this.client.sendNotification(Yn.DidSaveNotebookDocumentNotification.type,{notebookDocument:{uri:this.client.code2ProtocolConverter.asUri(i.uri)}})}catch(o){throw this.client.error("Sending DidSaveNotebookDocumentNotification failed",o),o}},r=this.client.middleware?.notebooks;return r?.didSave!==void 0?r.didSave(e,t):t(e)}async sendDidCloseNotebookDocument(e){return this.doSendClose(e,this.getMatchingCells(e)??[])}async doSendClose(e,t){let r=async(o,s)=>{try{await this.client.sendNotification(Yn.DidCloseNotebookDocumentNotification.type,{notebookDocument:{uri:this.client.code2ProtocolConverter.asUri(o.uri)},cellTextDocuments:s.map(a=>this.client.code2ProtocolConverter.asTextDocumentIdentifier(a.document))})}catch(a){throw this.client.error("Sending DidCloseNotebookDocumentNotification failed",a),a}},i=this.client.middleware?.notebooks;return this.notebookSyncInfo.delete(e.uri.toString()),i?.didClose!==void 0?i.didClose(e,t,r):r(e,t)}asNotebookDocumentChangeEvent(e,t,r,i){if(t!==void 0&&t.notebook!==e)throw new Error("Notebook must be identical");let o={notebook:e};t?.metadata!==void 0&&(o.metadata=hi.c2p.asMetadata(t.metadata));let s;if(t?.cellChanges!==void 0&&t.cellChanges.length>0){let a=[];s=new Set(i.map(c=>c.document.uri.toString()));for(let c of t.cellChanges)s.has(c.cell.document.uri.toString())&&(c.executionSummary!==void 0||c.metadata!==void 0)&&a.push(c.cell);a.length>0&&(o.cells=o.cells??{},o.cells.data=a)}if((t?.contentChanges!==void 0&&t.contentChanges.length>0||t===void 0)&&r!==void 0&&i!==void 0){let a=r.cells,c=i,u=Rl.computeDiff(a,c,!1),d,g;if(u!==void 0){d=u.cells===void 0?new Map:new Map(u.cells.map(v=>[v.document.uri.toString(),v])),g=u.deleteCount===0?new Map:new Map(a.slice(u.start,u.start+u.deleteCount).map(v=>[v.document.uri.toString(),v]));for(let v of Array.from(g.keys()))d.has(v)&&(g.delete(v),d.delete(v));o.cells=o.cells??{};let m=[],y=[];if(d.size>0||g.size>0){for(let v of d.values())m.push(v);for(let v of g.values())y.push(v)}o.cells.structure={array:u,didOpen:m,didClose:y}}}return Object.keys(o).length>1?o:void 0}getMatchingCells(e,t=e.getCells()){if(this.options.notebookSelector!==void 0){for(let r of this.options.notebookSelector)if(r.notebook===void 0||Pl.matchNotebook(r.notebook,e)){let i=this.filterCells(e,t,r.cells);return i.length===0?void 0:i}}}cellMatches(e,t){let r=this.getMatchingCells(e,[t]);return r!==void 0&&r[0]===t}filterCells(e,t,r){let i=r!==void 0?t.filter(o=>{let s=o.document.languageId;return r.some(a=>a.language==="*"||s===a.language)}):t;return typeof this.client.clientOptions.notebookDocumentOptions?.filterCells=="function"?this.client.clientOptions.notebookDocumentOptions.filterCells(e,i):i}},As=class n{constructor(e){this.client=e,this.registrations=new Map,this.registrationType=Yn.NotebookDocumentSyncRegistrationType.type,It.workspace.onDidOpenTextDocument(t=>{if(t.uri.scheme!==n.CellScheme)return;let[r,i]=this.findNotebookDocumentAndCell(t);if(!(r===void 0||i===void 0))for(let o of this.registrations.values())o instanceof gi&&o.didOpenNotebookCellTextDocument(r,i)}),It.workspace.onDidChangeTextDocument(t=>{if(t.contentChanges.length===0)return;let r=t.document;if(r.uri.scheme!==n.CellScheme)return;let[i]=this.findNotebookDocumentAndCell(r);if(i!==void 0)for(let o of this.registrations.values())o instanceof gi&&o.didChangeNotebookCellTextDocument(i,t)}),It.workspace.onDidCloseTextDocument(t=>{if(t.uri.scheme!==n.CellScheme)return;let[r,i]=this.findNotebookDocumentAndCell(t);if(!(r===void 0||i===void 0))for(let o of this.registrations.values())o instanceof gi&&o.didCloseNotebookCellTextDocument(r,i)})}getState(){if(this.registrations.size===0)return{kind:"document",id:this.registrationType.method,registrations:!1,matches:!1};for(let e of this.registrations.values()){let t=e.getState();if(t.kind==="document"&&t.registrations===!0&&t.matches===!0)return{kind:"document",id:this.registrationType.method,registrations:!0,matches:!0}}return{kind:"document",id:this.registrationType.method,registrations:!0,matches:!1}}fillClientCapabilities(e){let t=Vy(Vy(e,"notebookDocument"),"synchronization");t.dynamicRegistration=!0,t.executionSummarySupport=!0}preInitialize(e){let t=e.notebookDocumentSync;t!==void 0&&(this.dedicatedChannel=this.client.protocol2CodeConverter.asDocumentSelector(Os.asDocumentSelector(t)))}initialize(e){let t=e.notebookDocumentSync;if(t===void 0)return;let r=t.id??TT.generateUuid();this.register({id:r,registerOptions:t})}register(e){let t=new gi(this.client,e.registerOptions);this.registrations.set(e.id,t)}unregister(e){let t=this.registrations.get(e);t&&t.dispose()}clear(){for(let e of this.registrations.values())e.dispose();this.registrations.clear()}handles(e){if(e.uri.scheme!==n.CellScheme)return!1;if(this.dedicatedChannel!==void 0&&It.languages.match(this.dedicatedChannel,e)>0)return!0;for(let t of this.registrations.values())if(t.handles(e))return!0;return!1}getProvider(e){for(let t of this.registrations.values())if(t.handles(e.document))return t}findNotebookDocumentAndCell(e){let t=e.uri.toString();for(let r of It.workspace.notebookDocuments)for(let i of r.getCells())if(i.document.uri.toString()===t)return[r,i];return[void 0,void 0]}};Ls.NotebookDocumentSyncFeature=As;As.CellScheme="vscode-notebook-cell"});var Gy=E(wr=>{"use strict";Object.defineProperty(wr,"__esModule",{value:!0});wr.SyncConfigurationFeature=wr.toJSONObject=wr.ConfigurationFeature=void 0;var mi=require("vscode"),Gi=fe(),RT=un(),PT=Xe(),By=Ee(),kl=class{constructor(e){this._client=e}getState(){return{kind:"static"}}fillClientCapabilities(e){e.workspace=e.workspace||{},e.workspace.configuration=!0}initialize(){let e=this._client;e.onRequest(Gi.ConfigurationRequest.type,(t,r)=>{let i=s=>{let a=[];for(let c of s.items){let u=c.scopeUri!==void 0&&c.scopeUri!==null?this._client.protocol2CodeConverter.asUri(c.scopeUri):void 0;a.push(this.getConfiguration(u,c.section!==null?c.section:void 0))}return a},o=e.middleware.workspace;return o&&o.configuration?o.configuration(t,r,i):i(t,r)})}getConfiguration(e,t){let r=null;if(t){let i=t.lastIndexOf(".");if(i===-1)r=Fr(mi.workspace.getConfiguration(void 0,e).get(t));else{let o=mi.workspace.getConfiguration(t.substr(0,i),e);o&&(r=Fr(o.get(t.substr(i+1))))}}else{let i=mi.workspace.getConfiguration(void 0,e);r={};for(let o of Object.keys(i))i.has(o)&&(r[o]=Fr(i.get(o)))}return r===void 0&&(r=null),r}clear(){}};wr.ConfigurationFeature=kl;function Fr(n){if(n){if(Array.isArray(n))return n.map(Fr);if(typeof n=="object"){let e=Object.create(null);for(let t in n)Object.prototype.hasOwnProperty.call(n,t)&&(e[t]=Fr(n[t]));return e}}return n}wr.toJSONObject=Fr;var El=class{constructor(e){this._client=e,this.isCleared=!1,this._listeners=new Map}getState(){return{kind:"workspace",id:this.registrationType.method,registrations:this._listeners.size>0}}get registrationType(){return Gi.DidChangeConfigurationNotification.type}fillClientCapabilities(e){(0,By.ensure)((0,By.ensure)(e,"workspace"),"didChangeConfiguration").dynamicRegistration=!0}initialize(){this.isCleared=!1;let e=this._client.clientOptions.synchronize?.configurationSection;e!==void 0&&this.register({id:PT.generateUuid(),registerOptions:{section:e}})}register(e){let t=mi.workspace.onDidChangeConfiguration(r=>{this.onDidChangeConfiguration(e.registerOptions.section,r)});this._listeners.set(e.id,t),e.registerOptions.section!==void 0&&this.onDidChangeConfiguration(e.registerOptions.section,void 0)}unregister(e){let t=this._listeners.get(e);t&&(this._listeners.delete(e),t.dispose())}clear(){for(let e of this._listeners.values())e.dispose();this._listeners.clear(),this.isCleared=!0}onDidChangeConfiguration(e,t){if(this.isCleared)return;let r;if(RT.string(e)?r=[e]:r=e,r!==void 0&&t!==void 0&&!r.some(a=>t.affectsConfiguration(a)))return;let i=async s=>s===void 0?this._client.sendNotification(Gi.DidChangeConfigurationNotification.type,{settings:null}):this._client.sendNotification(Gi.DidChangeConfigurationNotification.type,{settings:this.extractSettingsInformation(s)}),o=this._client.middleware.workspace?.didChangeConfiguration;(o?o(r,i):i(r)).catch(s=>{this._client.error(`Sending notification ${Gi.DidChangeConfigurationNotification.type.method} failed`,s)})}extractSettingsInformation(e){function t(o,s){let a=o;for(let c=0;c<s.length-1;c++){let u=a[s[c]];u||(u=Object.create(null),a[s[c]]=u),a=u}return a}let r=this._client.clientOptions.workspaceFolder?this._client.clientOptions.workspaceFolder.uri:void 0,i=Object.create(null);for(let o=0;o<e.length;o++){let s=e[o],a=s.indexOf("."),c=null;if(a>=0?c=mi.workspace.getConfiguration(s.substr(0,a),r).get(s.substr(a+1)):c=mi.workspace.getConfiguration(void 0,r).get(s),c){let u=e[o].split(".");t(i,u)[u[u.length-1]]=Fr(c)}}return i}};wr.SyncConfigurationFeature=El});var Jy=E(Vt=>{"use strict";Object.defineProperty(Vt,"__esModule",{value:!0});Vt.DidSaveTextDocumentFeature=Vt.WillSaveWaitUntilFeature=Vt.WillSaveFeature=Vt.DidChangeTextDocumentFeature=Vt.DidCloseTextDocumentFeature=Vt.DidOpenTextDocumentFeature=void 0;var Zt=require("vscode"),Ke=fe(),Ze=Ee(),vi=Xe(),xl=class extends Ze.TextDocumentEventFeature{constructor(e,t){super(e,Zt.workspace.onDidOpenTextDocument,Ke.DidOpenTextDocumentNotification.type,()=>e.middleware.didOpen,r=>e.code2ProtocolConverter.asOpenTextDocumentParams(r),r=>r,Ze.TextDocumentEventFeature.textDocumentFilter),this._syncedDocuments=t}get openDocuments(){return this._syncedDocuments.values()}fillClientCapabilities(e){(0,Ze.ensure)((0,Ze.ensure)(e,"textDocument"),"synchronization").dynamicRegistration=!0}initialize(e,t){let r=e.resolvedTextDocumentSync;t&&r&&r.openClose&&this.register({id:vi.generateUuid(),registerOptions:{documentSelector:t}})}get registrationType(){return Ke.DidOpenTextDocumentNotification.type}register(e){if(super.register(e),!e.registerOptions.documentSelector)return;let t=this._client.protocol2CodeConverter.asDocumentSelector(e.registerOptions.documentSelector);Zt.workspace.textDocuments.forEach(r=>{let i=r.uri.toString();if(!this._syncedDocuments.has(i)&&Zt.languages.match(t,r)>0&&!this._client.hasDedicatedTextSynchronizationFeature(r)){let o=this._client.middleware,s=a=>this._client.sendNotification(this._type,this._createParams(a));(o.didOpen?o.didOpen(r,s):s(r)).catch(a=>{this._client.error(`Sending document notification ${this._type.method} failed`,a)}),this._syncedDocuments.set(i,r)}})}getTextDocument(e){return e}notificationSent(e,t,r){this._syncedDocuments.set(e.uri.toString(),e),super.notificationSent(e,t,r)}};Vt.DidOpenTextDocumentFeature=xl;var ql=class extends Ze.TextDocumentEventFeature{constructor(e,t,r){super(e,Zt.workspace.onDidCloseTextDocument,Ke.DidCloseTextDocumentNotification.type,()=>e.middleware.didClose,i=>e.code2ProtocolConverter.asCloseTextDocumentParams(i),i=>i,Ze.TextDocumentEventFeature.textDocumentFilter),this._syncedDocuments=t,this._pendingTextDocumentChanges=r}get registrationType(){return Ke.DidCloseTextDocumentNotification.type}fillClientCapabilities(e){(0,Ze.ensure)((0,Ze.ensure)(e,"textDocument"),"synchronization").dynamicRegistration=!0}initialize(e,t){let r=e.resolvedTextDocumentSync;t&&r&&r.openClose&&this.register({id:vi.generateUuid(),registerOptions:{documentSelector:t}})}async callback(e){await super.callback(e),this._pendingTextDocumentChanges.delete(e.uri.toString())}getTextDocument(e){return e}notificationSent(e,t,r){this._syncedDocuments.delete(e.uri.toString()),super.notificationSent(e,t,r)}unregister(e){let t=this._selectors.get(e);super.unregister(e);let r=this._selectors.values();this._syncedDocuments.forEach(i=>{if(Zt.languages.match(t,i)>0&&!this._selectorFilter(r,i)&&!this._client.hasDedicatedTextSynchronizationFeature(i)){let o=this._client.middleware,s=a=>this._client.sendNotification(this._type,this._createParams(a));this._syncedDocuments.delete(i.uri.toString()),(o.didClose?o.didClose(i,s):s(i)).catch(a=>{this._client.error(`Sending document notification ${this._type.method} failed`,a)})}})}};Vt.DidCloseTextDocumentFeature=ql;var Il=class extends Ze.DynamicDocumentFeature{constructor(e,t){super(e),this._changeData=new Map,this._onNotificationSent=new Zt.EventEmitter,this._onPendingChangeAdded=new Zt.EventEmitter,this._pendingTextDocumentChanges=t,this._syncKind=Ke.TextDocumentSyncKind.None}get onNotificationSent(){return this._onNotificationSent.event}get onPendingChangeAdded(){return this._onPendingChangeAdded.event}get syncKind(){return this._syncKind}get registrationType(){return Ke.DidChangeTextDocumentNotification.type}fillClientCapabilities(e){(0,Ze.ensure)((0,Ze.ensure)(e,"textDocument"),"synchronization").dynamicRegistration=!0}initialize(e,t){let r=e.resolvedTextDocumentSync;t&&r&&r.change!==void 0&&r.change!==Ke.TextDocumentSyncKind.None&&this.register({id:vi.generateUuid(),registerOptions:Object.assign({},{documentSelector:t},{syncKind:r.change})})}register(e){e.registerOptions.documentSelector&&(this._listener||(this._listener=Zt.workspace.onDidChangeTextDocument(this.callback,this)),this._changeData.set(e.id,{syncKind:e.registerOptions.syncKind,documentSelector:this._client.protocol2CodeConverter.asDocumentSelector(e.registerOptions.documentSelector)}),this.updateSyncKind(e.registerOptions.syncKind))}*getDocumentSelectors(){for(let e of this._changeData.values())yield e.documentSelector}async callback(e){if(e.contentChanges.length===0)return;let t=e.document.uri,r=e.document.version,i=[];for(let o of this._changeData.values())if(Zt.languages.match(o.documentSelector,e.document)>0&&!this._client.hasDedicatedTextSynchronizationFeature(e.document)){let s=this._client.middleware;if(o.syncKind===Ke.TextDocumentSyncKind.Incremental){let a=async c=>{let u=this._client.code2ProtocolConverter.asChangeTextDocumentParams(c,t,r);await this._client.sendNotification(Ke.DidChangeTextDocumentNotification.type,u),this.notificationSent(c.document,Ke.DidChangeTextDocumentNotification.type,u)};i.push(s.didChange?s.didChange(e,c=>a(c)):a(e))}else if(o.syncKind===Ke.TextDocumentSyncKind.Full){let a=async c=>{let u=c.document.uri.toString();this._pendingTextDocumentChanges.set(u,c.document),this._onPendingChangeAdded.fire()};i.push(s.didChange?s.didChange(e,c=>a(c)):a(e))}}return Promise.all(i).then(void 0,o=>{throw this._client.error(`Sending document notification ${Ke.DidChangeTextDocumentNotification.type.method} failed`,o),o})}notificationSent(e,t,r){this._onNotificationSent.fire({textDocument:e,type:t,params:r})}unregister(e){if(this._changeData.delete(e),this._changeData.size===0)this._listener&&(this._listener.dispose(),this._listener=void 0),this._syncKind=Ke.TextDocumentSyncKind.None;else{this._syncKind=Ke.TextDocumentSyncKind.None;for(let t of this._changeData.values())if(this.updateSyncKind(t.syncKind),this._syncKind===Ke.TextDocumentSyncKind.Full)break}}clear(){this._pendingTextDocumentChanges.clear(),this._changeData.clear(),this._syncKind=Ke.TextDocumentSyncKind.None,this._listener&&(this._listener.dispose(),this._listener=void 0)}getPendingDocumentChanges(e){if(this._pendingTextDocumentChanges.size===0)return[];let t;if(e.size===0)t=Array.from(this._pendingTextDocumentChanges.values()),this._pendingTextDocumentChanges.clear();else{t=[];for(let r of this._pendingTextDocumentChanges)e.has(r[0])||(t.push(r[1]),this._pendingTextDocumentChanges.delete(r[0]))}return t}getProvider(e){for(let t of this._changeData.values())if(Zt.languages.match(t.documentSelector,e)>0)return{send:r=>this.callback(r)}}updateSyncKind(e){if(this._syncKind!==Ke.TextDocumentSyncKind.Full)switch(e){case Ke.TextDocumentSyncKind.Full:this._syncKind=e;break;case Ke.TextDocumentSyncKind.Incremental:this._syncKind===Ke.TextDocumentSyncKind.None&&(this._syncKind=Ke.TextDocumentSyncKind.Incremental);break}}};Vt.DidChangeTextDocumentFeature=Il;var Fl=class extends Ze.TextDocumentEventFeature{constructor(e){super(e,Zt.workspace.onWillSaveTextDocument,Ke.WillSaveTextDocumentNotification.type,()=>e.middleware.willSave,t=>e.code2ProtocolConverter.asWillSaveTextDocumentParams(t),t=>t.document,(t,r)=>Ze.TextDocumentEventFeature.textDocumentFilter(t,r.document))}get registrationType(){return Ke.WillSaveTextDocumentNotification.type}fillClientCapabilities(e){let t=(0,Ze.ensure)((0,Ze.ensure)(e,"textDocument"),"synchronization");t.willSave=!0}initialize(e,t){let r=e.resolvedTextDocumentSync;t&&r&&r.willSave&&this.register({id:vi.generateUuid(),registerOptions:{documentSelector:t}})}getTextDocument(e){return e.document}};Vt.WillSaveFeature=Fl;var Ol=class extends Ze.DynamicDocumentFeature{constructor(e){super(e),this._selectors=new Map}getDocumentSelectors(){return this._selectors.values()}get registrationType(){return Ke.WillSaveTextDocumentWaitUntilRequest.type}fillClientCapabilities(e){let t=(0,Ze.ensure)((0,Ze.ensure)(e,"textDocument"),"synchronization");t.willSaveWaitUntil=!0}initialize(e,t){let r=e.resolvedTextDocumentSync;t&&r&&r.willSaveWaitUntil&&this.register({id:vi.generateUuid(),registerOptions:{documentSelector:t}})}register(e){e.registerOptions.documentSelector&&(this._listener||(this._listener=Zt.workspace.onWillSaveTextDocument(this.callback,this)),this._selectors.set(e.id,this._client.protocol2CodeConverter.asDocumentSelector(e.registerOptions.documentSelector)))}callback(e){if(Ze.TextDocumentEventFeature.textDocumentFilter(this._selectors.values(),e.document)&&!this._client.hasDedicatedTextSynchronizationFeature(e.document)){let t=this._client.middleware,r=i=>this._client.sendRequest(Ke.WillSaveTextDocumentWaitUntilRequest.type,this._client.code2ProtocolConverter.asWillSaveTextDocumentParams(i)).then(async o=>{let s=await this._client.protocol2CodeConverter.asTextEdits(o);return s===void 0?[]:s});e.waitUntil(t.willSaveWaitUntil?t.willSaveWaitUntil(e,r):r(e))}}unregister(e){this._selectors.delete(e),this._selectors.size===0&&this._listener&&(this._listener.dispose(),this._listener=void 0)}clear(){this._selectors.clear(),this._listener&&(this._listener.dispose(),this._listener=void 0)}};Vt.WillSaveWaitUntilFeature=Ol;var Ml=class extends Ze.TextDocumentEventFeature{constructor(e){super(e,Zt.workspace.onDidSaveTextDocument,Ke.DidSaveTextDocumentNotification.type,()=>e.middleware.didSave,t=>e.code2ProtocolConverter.asSaveTextDocumentParams(t,this._includeText),t=>t,Ze.TextDocumentEventFeature.textDocumentFilter),this._includeText=!1}get registrationType(){return Ke.DidSaveTextDocumentNotification.type}fillClientCapabilities(e){(0,Ze.ensure)((0,Ze.ensure)(e,"textDocument"),"synchronization").didSave=!0}initialize(e,t){let r=e.resolvedTextDocumentSync;if(t&&r&&r.save){let i=typeof r.save=="boolean"?{includeText:!1}:{includeText:!!r.save.includeText};this.register({id:vi.generateUuid(),registerOptions:Object.assign({},{documentSelector:t},i)})}}register(e){this._includeText=!!e.registerOptions.includeText,super.register(e)}getTextDocument(e){return e}};Vt.DidSaveTextDocumentFeature=Ml});var Xy=E(Ns=>{"use strict";Object.defineProperty(Ns,"__esModule",{value:!0});Ns.CompletionItemFeature=void 0;var kT=require("vscode"),_e=fe(),Al=Ee(),ET=Xe(),xT=[_e.CompletionItemKind.Text,_e.CompletionItemKind.Method,_e.CompletionItemKind.Function,_e.CompletionItemKind.Constructor,_e.CompletionItemKind.Field,_e.CompletionItemKind.Variable,_e.CompletionItemKind.Class,_e.CompletionItemKind.Interface,_e.CompletionItemKind.Module,_e.CompletionItemKind.Property,_e.CompletionItemKind.Unit,_e.CompletionItemKind.Value,_e.CompletionItemKind.Enum,_e.CompletionItemKind.Keyword,_e.CompletionItemKind.Snippet,_e.CompletionItemKind.Color,_e.CompletionItemKind.File,_e.CompletionItemKind.Reference,_e.CompletionItemKind.Folder,_e.CompletionItemKind.EnumMember,_e.CompletionItemKind.Constant,_e.CompletionItemKind.Struct,_e.CompletionItemKind.Event,_e.CompletionItemKind.Operator,_e.CompletionItemKind.TypeParameter],Ll=class extends Al.TextDocumentLanguageFeature{constructor(e){super(e,_e.CompletionRequest.type),this.labelDetailsSupport=new Map}fillClientCapabilities(e){let t=(0,Al.ensure)((0,Al.ensure)(e,"textDocument"),"completion");t.dynamicRegistration=!0,t.contextSupport=!0,t.completionItem={snippetSupport:!0,commitCharactersSupport:!0,documentationFormat:[_e.MarkupKind.Markdown,_e.MarkupKind.PlainText],deprecatedSupport:!0,preselectSupport:!0,tagSupport:{valueSet:[_e.CompletionItemTag.Deprecated]},insertReplaceSupport:!0,resolveSupport:{properties:["documentation","detail","additionalTextEdits"]},insertTextModeSupport:{valueSet:[_e.InsertTextMode.asIs,_e.InsertTextMode.adjustIndentation]},labelDetailsSupport:!0},t.insertTextMode=_e.InsertTextMode.adjustIndentation,t.completionItemKind={valueSet:xT},t.completionList={itemDefaults:["commitCharacters","editRange","insertTextFormat","insertTextMode","data"]}}initialize(e,t){let r=this.getRegistrationOptions(t,e.completionProvider);r&&this.register({id:ET.generateUuid(),registerOptions:r})}registerLanguageProvider(e,t){this.labelDetailsSupport.set(t,!!e.completionItem?.labelDetailsSupport);let r=e.triggerCharacters??[],i=e.allCommitCharacters,o=e.documentSelector,s={provideCompletionItems:(a,c,u,d)=>{let g=this._client,m=this._client.middleware,y=(v,T,P,q)=>g.sendRequest(_e.CompletionRequest.type,g.code2ProtocolConverter.asCompletionParams(v,T,P),q).then(L=>q.isCancellationRequested?null:g.protocol2CodeConverter.asCompletionResult(L,i,q),L=>g.handleFailedRequest(_e.CompletionRequest.type,q,L,null));return m.provideCompletionItem?m.provideCompletionItem(a,c,d,u,y):y(a,c,d,u)},resolveCompletionItem:e.resolveProvider?(a,c)=>{let u=this._client,d=this._client.middleware,g=(m,y)=>u.sendRequest(_e.CompletionResolveRequest.type,u.code2ProtocolConverter.asCompletionItem(m,!!this.labelDetailsSupport.get(t)),y).then(v=>y.isCancellationRequested?null:u.protocol2CodeConverter.asCompletionItem(v),v=>u.handleFailedRequest(_e.CompletionResolveRequest.type,y,v,m));return d.resolveCompletionItem?d.resolveCompletionItem(a,c,g):g(a,c)}:void 0};return[kT.languages.registerCompletionItemProvider(this._client.protocol2CodeConverter.asDocumentSelector(o),s,...r),s]}};Ns.CompletionItemFeature=Ll});var Qy=E(js=>{"use strict";Object.defineProperty(js,"__esModule",{value:!0});js.HoverFeature=void 0;var qT=require("vscode"),Ji=fe(),Nl=Ee(),IT=Xe(),jl=class extends Nl.TextDocumentLanguageFeature{constructor(e){super(e,Ji.HoverRequest.type)}fillClientCapabilities(e){let t=(0,Nl.ensure)((0,Nl.ensure)(e,"textDocument"),"hover");t.dynamicRegistration=!0,t.contentFormat=[Ji.MarkupKind.Markdown,Ji.MarkupKind.PlainText]}initialize(e,t){let r=this.getRegistrationOptions(t,e.hoverProvider);r&&this.register({id:IT.generateUuid(),registerOptions:r})}registerLanguageProvider(e){let t=e.documentSelector,r={provideHover:(i,o,s)=>{let a=this._client,c=(d,g,m)=>a.sendRequest(Ji.HoverRequest.type,a.code2ProtocolConverter.asTextDocumentPositionParams(d,g),m).then(y=>m.isCancellationRequested?null:a.protocol2CodeConverter.asHover(y),y=>a.handleFailedRequest(Ji.HoverRequest.type,m,y,null)),u=a.middleware;return u.provideHover?u.provideHover(i,o,s,c):c(i,o,s)}};return[this.registerProvider(t,r),r]}registerProvider(e,t){return qT.languages.registerHoverProvider(this._client.protocol2CodeConverter.asDocumentSelector(e),t)}};js.HoverFeature=jl});var Yy=E($s=>{"use strict";Object.defineProperty($s,"__esModule",{value:!0});$s.DefinitionFeature=void 0;var FT=require("vscode"),$l=fe(),Ul=Ee(),OT=Xe(),Hl=class extends Ul.TextDocumentLanguageFeature{constructor(e){super(e,$l.DefinitionRequest.type)}fillClientCapabilities(e){let t=(0,Ul.ensure)((0,Ul.ensure)(e,"textDocument"),"definition");t.dynamicRegistration=!0,t.linkSupport=!0}initialize(e,t){let r=this.getRegistrationOptions(t,e.definitionProvider);r&&this.register({id:OT.generateUuid(),registerOptions:r})}registerLanguageProvider(e){let t=e.documentSelector,r={provideDefinition:(i,o,s)=>{let a=this._client,c=(d,g,m)=>a.sendRequest($l.DefinitionRequest.type,a.code2ProtocolConverter.asTextDocumentPositionParams(d,g),m).then(y=>m.isCancellationRequested?null:a.protocol2CodeConverter.asDefinitionResult(y,m),y=>a.handleFailedRequest($l.DefinitionRequest.type,m,y,null)),u=a.middleware;return u.provideDefinition?u.provideDefinition(i,o,s,c):c(i,o,s)}};return[this.registerProvider(t,r),r]}registerProvider(e,t){return FT.languages.registerDefinitionProvider(this._client.protocol2CodeConverter.asDocumentSelector(e),t)}};$s.DefinitionFeature=Hl});var eb=E(Us=>{"use strict";Object.defineProperty(Us,"__esModule",{value:!0});Us.SignatureHelpFeature=void 0;var Zy=require("vscode"),Xi=fe(),Wl=Ee(),MT=Xe(),Kl=class extends Wl.TextDocumentLanguageFeature{constructor(e){super(e,Xi.SignatureHelpRequest.type)}fillClientCapabilities(e){let t=(0,Wl.ensure)((0,Wl.ensure)(e,"textDocument"),"signatureHelp");t.dynamicRegistration=!0,t.signatureInformation={documentationFormat:[Xi.MarkupKind.Markdown,Xi.MarkupKind.PlainText]},t.signatureInformation.parameterInformation={labelOffsetSupport:!0},t.signatureInformation.activeParameterSupport=!0,t.contextSupport=!0}initialize(e,t){let r=this.getRegistrationOptions(t,e.signatureHelpProvider);r&&this.register({id:MT.generateUuid(),registerOptions:r})}registerLanguageProvider(e){let t={provideSignatureHelp:(r,i,o,s)=>{let a=this._client,c=(d,g,m,y)=>a.sendRequest(Xi.SignatureHelpRequest.type,a.code2ProtocolConverter.asSignatureHelpParams(d,g,m),y).then(v=>y.isCancellationRequested?null:a.protocol2CodeConverter.asSignatureHelp(v,y),v=>a.handleFailedRequest(Xi.SignatureHelpRequest.type,y,v,null)),u=a.middleware;return u.provideSignatureHelp?u.provideSignatureHelp(r,i,s,o,c):c(r,i,s,o)}};return[this.registerProvider(e,t),t]}registerProvider(e,t){let r=this._client.protocol2CodeConverter.asDocumentSelector(e.documentSelector);if(e.retriggerCharacters===void 0){let i=e.triggerCharacters||[];return Zy.languages.registerSignatureHelpProvider(r,t,...i)}else{let i={triggerCharacters:e.triggerCharacters||[],retriggerCharacters:e.retriggerCharacters||[]};return Zy.languages.registerSignatureHelpProvider(r,t,i)}}};Us.SignatureHelpFeature=Kl});var tb=E(Hs=>{"use strict";Object.defineProperty(Hs,"__esModule",{value:!0});Hs.DocumentHighlightFeature=void 0;var AT=require("vscode"),Vl=fe(),zl=Ee(),LT=Xe(),Bl=class extends zl.TextDocumentLanguageFeature{constructor(e){super(e,Vl.DocumentHighlightRequest.type)}fillClientCapabilities(e){(0,zl.ensure)((0,zl.ensure)(e,"textDocument"),"documentHighlight").dynamicRegistration=!0}initialize(e,t){let r=this.getRegistrationOptions(t,e.documentHighlightProvider);r&&this.register({id:LT.generateUuid(),registerOptions:r})}registerLanguageProvider(e){let t=e.documentSelector,r={provideDocumentHighlights:(i,o,s)=>{let a=this._client,c=(d,g,m)=>a.sendRequest(Vl.DocumentHighlightRequest.type,a.code2ProtocolConverter.asTextDocumentPositionParams(d,g),m).then(y=>m.isCancellationRequested?null:a.protocol2CodeConverter.asDocumentHighlights(y,m),y=>a.handleFailedRequest(Vl.DocumentHighlightRequest.type,m,y,null)),u=a.middleware;return u.provideDocumentHighlights?u.provideDocumentHighlights(i,o,s,c):c(i,o,s)}};return[AT.languages.registerDocumentHighlightProvider(this._client.protocol2CodeConverter.asDocumentSelector(t),r),r]}};Hs.DocumentHighlightFeature=Bl});var Xl=E(Wn=>{"use strict";Object.defineProperty(Wn,"__esModule",{value:!0});Wn.DocumentSymbolFeature=Wn.SupportedSymbolTags=Wn.SupportedSymbolKinds=void 0;var NT=require("vscode"),Me=fe(),Gl=Ee(),jT=Xe();Wn.SupportedSymbolKinds=[Me.SymbolKind.File,Me.SymbolKind.Module,Me.SymbolKind.Namespace,Me.SymbolKind.Package,Me.SymbolKind.Class,Me.SymbolKind.Method,Me.SymbolKind.Property,Me.SymbolKind.Field,Me.SymbolKind.Constructor,Me.SymbolKind.Enum,Me.SymbolKind.Interface,Me.SymbolKind.Function,Me.SymbolKind.Variable,Me.SymbolKind.Constant,Me.SymbolKind.String,Me.SymbolKind.Number,Me.SymbolKind.Boolean,Me.SymbolKind.Array,Me.SymbolKind.Object,Me.SymbolKind.Key,Me.SymbolKind.Null,Me.SymbolKind.EnumMember,Me.SymbolKind.Struct,Me.SymbolKind.Event,Me.SymbolKind.Operator,Me.SymbolKind.TypeParameter];Wn.SupportedSymbolTags=[Me.SymbolTag.Deprecated];var Jl=class extends Gl.TextDocumentLanguageFeature{constructor(e){super(e,Me.DocumentSymbolRequest.type)}fillClientCapabilities(e){let t=(0,Gl.ensure)((0,Gl.ensure)(e,"textDocument"),"documentSymbol");t.dynamicRegistration=!0,t.symbolKind={valueSet:Wn.SupportedSymbolKinds},t.hierarchicalDocumentSymbolSupport=!0,t.tagSupport={valueSet:Wn.SupportedSymbolTags},t.labelSupport=!0}initialize(e,t){let r=this.getRegistrationOptions(t,e.documentSymbolProvider);r&&this.register({id:jT.generateUuid(),registerOptions:r})}registerLanguageProvider(e){let t=e.documentSelector,r={provideDocumentSymbols:(o,s)=>{let a=this._client,c=async(d,g)=>{try{let m=await a.sendRequest(Me.DocumentSymbolRequest.type,a.code2ProtocolConverter.asDocumentSymbolParams(d),g);if(g.isCancellationRequested||m===void 0||m===null)return null;if(m.length===0)return[];{let y=m[0];return Me.DocumentSymbol.is(y)?await a.protocol2CodeConverter.asDocumentSymbols(m,g):await a.protocol2CodeConverter.asSymbolInformations(m,g)}}catch(m){return a.handleFailedRequest(Me.DocumentSymbolRequest.type,g,m,null)}},u=a.middleware;return u.provideDocumentSymbols?u.provideDocumentSymbols(o,s,c):c(o,s)}},i=e.label!==void 0?{label:e.label}:void 0;return[NT.languages.registerDocumentSymbolProvider(this._client.protocol2CodeConverter.asDocumentSelector(t),r,i),r]}};Wn.DocumentSymbolFeature=Jl});var rb=E(Ws=>{"use strict";Object.defineProperty(Ws,"__esModule",{value:!0});Ws.WorkspaceSymbolFeature=void 0;var $T=require("vscode"),Qi=fe(),Ql=Ee(),nb=Xl(),UT=Xe(),Yl=class extends Ql.WorkspaceFeature{constructor(e){super(e,Qi.WorkspaceSymbolRequest.type)}fillClientCapabilities(e){let t=(0,Ql.ensure)((0,Ql.ensure)(e,"workspace"),"symbol");t.dynamicRegistration=!0,t.symbolKind={valueSet:nb.SupportedSymbolKinds},t.tagSupport={valueSet:nb.SupportedSymbolTags},t.resolveSupport={properties:["location.range"]}}initialize(e){e.workspaceSymbolProvider&&this.register({id:UT.generateUuid(),registerOptions:e.workspaceSymbolProvider===!0?{workDoneProgress:!1}:e.workspaceSymbolProvider})}registerLanguageProvider(e){let t={provideWorkspaceSymbols:(r,i)=>{let o=this._client,s=(c,u)=>o.sendRequest(Qi.WorkspaceSymbolRequest.type,{query:c},u).then(d=>u.isCancellationRequested?null:o.protocol2CodeConverter.asSymbolInformations(d,u),d=>o.handleFailedRequest(Qi.WorkspaceSymbolRequest.type,u,d,null)),a=o.middleware;return a.provideWorkspaceSymbols?a.provideWorkspaceSymbols(r,i,s):s(r,i)},resolveWorkspaceSymbol:e.resolveProvider===!0?(r,i)=>{let o=this._client,s=(c,u)=>o.sendRequest(Qi.WorkspaceSymbolResolveRequest.type,o.code2ProtocolConverter.asWorkspaceSymbol(c),u).then(d=>u.isCancellationRequested?null:o.protocol2CodeConverter.asSymbolInformation(d),d=>o.handleFailedRequest(Qi.WorkspaceSymbolResolveRequest.type,u,d,null)),a=o.middleware;return a.resolveWorkspaceSymbol?a.resolveWorkspaceSymbol(r,i,s):s(r,i)}:void 0};return[$T.languages.registerWorkspaceSymbolProvider(t),t]}};Ws.WorkspaceSymbolFeature=Yl});var ib=E(Ks=>{"use strict";Object.defineProperty(Ks,"__esModule",{value:!0});Ks.ReferencesFeature=void 0;var HT=require("vscode"),Zl=fe(),ed=Ee(),WT=Xe(),td=class extends ed.TextDocumentLanguageFeature{constructor(e){super(e,Zl.ReferencesRequest.type)}fillClientCapabilities(e){(0,ed.ensure)((0,ed.ensure)(e,"textDocument"),"references").dynamicRegistration=!0}initialize(e,t){let r=this.getRegistrationOptions(t,e.referencesProvider);r&&this.register({id:WT.generateUuid(),registerOptions:r})}registerLanguageProvider(e){let t=e.documentSelector,r={provideReferences:(i,o,s,a)=>{let c=this._client,u=(g,m,y,v)=>c.sendRequest(Zl.ReferencesRequest.type,c.code2ProtocolConverter.asReferenceParams(g,m,y),v).then(T=>v.isCancellationRequested?null:c.protocol2CodeConverter.asReferences(T,v),T=>c.handleFailedRequest(Zl.ReferencesRequest.type,v,T,null)),d=c.middleware;return d.provideReferences?d.provideReferences(i,o,s,a,u):u(i,o,s,a)}};return[this.registerProvider(t,r),r]}registerProvider(e,t){return HT.languages.registerReferenceProvider(this._client.protocol2CodeConverter.asDocumentSelector(e),t)}};Ks.ReferencesFeature=td});var ob=E(Vs=>{"use strict";Object.defineProperty(Vs,"__esModule",{value:!0});Vs.CodeActionFeature=void 0;var KT=require("vscode"),en=fe(),VT=Xe(),nd=Ee(),rd=class extends nd.TextDocumentLanguageFeature{constructor(e){super(e,en.CodeActionRequest.type)}fillClientCapabilities(e){let t=(0,nd.ensure)((0,nd.ensure)(e,"textDocument"),"codeAction");t.dynamicRegistration=!0,t.isPreferredSupport=!0,t.disabledSupport=!0,t.dataSupport=!0,t.resolveSupport={properties:["edit"]},t.codeActionLiteralSupport={codeActionKind:{valueSet:[en.CodeActionKind.Empty,en.CodeActionKind.QuickFix,en.CodeActionKind.Refactor,en.CodeActionKind.RefactorExtract,en.CodeActionKind.RefactorInline,en.CodeActionKind.RefactorRewrite,en.CodeActionKind.Source,en.CodeActionKind.SourceOrganizeImports]}},t.honorsChangeAnnotations=!0}initialize(e,t){let r=this.getRegistrationOptions(t,e.codeActionProvider);r&&this.register({id:VT.generateUuid(),registerOptions:r})}registerLanguageProvider(e){let t=e.documentSelector,r={provideCodeActions:(i,o,s,a)=>{let c=this._client,u=async(g,m,y,v)=>{let T={textDocument:c.code2ProtocolConverter.asTextDocumentIdentifier(g),range:c.code2ProtocolConverter.asRange(m),context:c.code2ProtocolConverter.asCodeActionContextSync(y)};return c.sendRequest(en.CodeActionRequest.type,T,v).then(P=>v.isCancellationRequested||P===null||P===void 0?null:c.protocol2CodeConverter.asCodeActionResult(P,v),P=>c.handleFailedRequest(en.CodeActionRequest.type,v,P,null))},d=c.middleware;return d.provideCodeActions?d.provideCodeActions(i,o,s,a,u):u(i,o,s,a)},resolveCodeAction:e.resolveProvider?(i,o)=>{let s=this._client,a=this._client.middleware,c=async(u,d)=>s.sendRequest(en.CodeActionResolveRequest.type,s.code2ProtocolConverter.asCodeActionSync(u),d).then(g=>d.isCancellationRequested?u:s.protocol2CodeConverter.asCodeAction(g,d),g=>s.handleFailedRequest(en.CodeActionResolveRequest.type,d,g,u));return a.resolveCodeAction?a.resolveCodeAction(i,o,c):c(i,o)}:void 0};return[KT.languages.registerCodeActionsProvider(this._client.protocol2CodeConverter.asDocumentSelector(t),r,e.codeActionKinds?{providedCodeActionKinds:this._client.protocol2CodeConverter.asCodeActionKinds(e.codeActionKinds)}:void 0),r]}};Vs.CodeActionFeature=rd});var ab=E(zs=>{"use strict";Object.defineProperty(zs,"__esModule",{value:!0});zs.CodeLensFeature=void 0;var sb=require("vscode"),yi=fe(),zT=Xe(),Yi=Ee(),id=class extends Yi.TextDocumentLanguageFeature{constructor(e){super(e,yi.CodeLensRequest.type)}fillClientCapabilities(e){(0,Yi.ensure)((0,Yi.ensure)(e,"textDocument"),"codeLens").dynamicRegistration=!0,(0,Yi.ensure)((0,Yi.ensure)(e,"workspace"),"codeLens").refreshSupport=!0}initialize(e,t){this._client.onRequest(yi.CodeLensRefreshRequest.type,async()=>{for(let o of this.getAllProviders())o.onDidChangeCodeLensEmitter.fire()});let i=this.getRegistrationOptions(t,e.codeLensProvider);i&&this.register({id:zT.generateUuid(),registerOptions:i})}registerLanguageProvider(e){let t=e.documentSelector,r=new sb.EventEmitter,i={onDidChangeCodeLenses:r.event,provideCodeLenses:(o,s)=>{let a=this._client,c=(d,g)=>a.sendRequest(yi.CodeLensRequest.type,a.code2ProtocolConverter.asCodeLensParams(d),g).then(m=>g.isCancellationRequested?null:a.protocol2CodeConverter.asCodeLenses(m,g),m=>a.handleFailedRequest(yi.CodeLensRequest.type,g,m,null)),u=a.middleware;return u.provideCodeLenses?u.provideCodeLenses(o,s,c):c(o,s)},resolveCodeLens:e.resolveProvider?(o,s)=>{let a=this._client,c=(d,g)=>a.sendRequest(yi.CodeLensResolveRequest.type,a.code2ProtocolConverter.asCodeLens(d),g).then(m=>g.isCancellationRequested?d:a.protocol2CodeConverter.asCodeLens(m),m=>a.handleFailedRequest(yi.CodeLensResolveRequest.type,g,m,d)),u=a.middleware;return u.resolveCodeLens?u.resolveCodeLens(o,s,c):c(o,s)}:void 0};return[sb.languages.registerCodeLensProvider(this._client.protocol2CodeConverter.asDocumentSelector(t),i),{provider:i,onDidChangeCodeLensEmitter:r}]}};zs.CodeLensFeature=id});var cb=E(Cr=>{"use strict";Object.defineProperty(Cr,"__esModule",{value:!0});Cr.DocumentOnTypeFormattingFeature=Cr.DocumentRangeFormattingFeature=Cr.DocumentFormattingFeature=void 0;var Bs=require("vscode"),Rn=fe(),cd=Xe(),Zn=Ee(),bi;(function(n){function e(t){let r=Bs.workspace.getConfiguration("files",t);return{trimTrailingWhitespace:r.get("trimTrailingWhitespace"),trimFinalNewlines:r.get("trimFinalNewlines"),insertFinalNewline:r.get("insertFinalNewline")}}n.fromConfiguration=e})(bi||(bi={}));var od=class extends Zn.TextDocumentLanguageFeature{constructor(e){super(e,Rn.DocumentFormattingRequest.type)}fillClientCapabilities(e){(0,Zn.ensure)((0,Zn.ensure)(e,"textDocument"),"formatting").dynamicRegistration=!0}initialize(e,t){let r=this.getRegistrationOptions(t,e.documentFormattingProvider);r&&this.register({id:cd.generateUuid(),registerOptions:r})}registerLanguageProvider(e){let t=e.documentSelector,r={provideDocumentFormattingEdits:(i,o,s)=>{let a=this._client,c=(d,g,m)=>{let y={textDocument:a.code2ProtocolConverter.asTextDocumentIdentifier(d),options:a.code2ProtocolConverter.asFormattingOptions(g,bi.fromConfiguration(d))};return a.sendRequest(Rn.DocumentFormattingRequest.type,y,m).then(v=>m.isCancellationRequested?null:a.protocol2CodeConverter.asTextEdits(v,m),v=>a.handleFailedRequest(Rn.DocumentFormattingRequest.type,m,v,null))},u=a.middleware;return u.provideDocumentFormattingEdits?u.provideDocumentFormattingEdits(i,o,s,c):c(i,o,s)}};return[Bs.languages.registerDocumentFormattingEditProvider(this._client.protocol2CodeConverter.asDocumentSelector(t),r),r]}};Cr.DocumentFormattingFeature=od;var sd=class extends Zn.TextDocumentLanguageFeature{constructor(e){super(e,Rn.DocumentRangeFormattingRequest.type)}fillClientCapabilities(e){let t=(0,Zn.ensure)((0,Zn.ensure)(e,"textDocument"),"rangeFormatting");t.dynamicRegistration=!0,t.rangesSupport=!0}initialize(e,t){let r=this.getRegistrationOptions(t,e.documentRangeFormattingProvider);r&&this.register({id:cd.generateUuid(),registerOptions:r})}registerLanguageProvider(e){let t=e.documentSelector,r={provideDocumentRangeFormattingEdits:(i,o,s,a)=>{let c=this._client,u=(g,m,y,v)=>{let T={textDocument:c.code2ProtocolConverter.asTextDocumentIdentifier(g),range:c.code2ProtocolConverter.asRange(m),options:c.code2ProtocolConverter.asFormattingOptions(y,bi.fromConfiguration(g))};return c.sendRequest(Rn.DocumentRangeFormattingRequest.type,T,v).then(P=>v.isCancellationRequested?null:c.protocol2CodeConverter.asTextEdits(P,v),P=>c.handleFailedRequest(Rn.DocumentRangeFormattingRequest.type,v,P,null))},d=c.middleware;return d.provideDocumentRangeFormattingEdits?d.provideDocumentRangeFormattingEdits(i,o,s,a,u):u(i,o,s,a)}};return e.rangesSupport&&(r.provideDocumentRangesFormattingEdits=(i,o,s,a)=>{let c=this._client,u=(g,m,y,v)=>{let T={textDocument:c.code2ProtocolConverter.asTextDocumentIdentifier(g),ranges:c.code2ProtocolConverter.asRanges(m),options:c.code2ProtocolConverter.asFormattingOptions(y,bi.fromConfiguration(g))};return c.sendRequest(Rn.DocumentRangesFormattingRequest.type,T,v).then(P=>v.isCancellationRequested?null:c.protocol2CodeConverter.asTextEdits(P,v),P=>c.handleFailedRequest(Rn.DocumentRangesFormattingRequest.type,v,P,null))},d=c.middleware;return d.provideDocumentRangesFormattingEdits?d.provideDocumentRangesFormattingEdits(i,o,s,a,u):u(i,o,s,a)}),[Bs.languages.registerDocumentRangeFormattingEditProvider(this._client.protocol2CodeConverter.asDocumentSelector(t),r),r]}};Cr.DocumentRangeFormattingFeature=sd;var ad=class extends Zn.TextDocumentLanguageFeature{constructor(e){super(e,Rn.DocumentOnTypeFormattingRequest.type)}fillClientCapabilities(e){(0,Zn.ensure)((0,Zn.ensure)(e,"textDocument"),"onTypeFormatting").dynamicRegistration=!0}initialize(e,t){let r=this.getRegistrationOptions(t,e.documentOnTypeFormattingProvider);r&&this.register({id:cd.generateUuid(),registerOptions:r})}registerLanguageProvider(e){let t=e.documentSelector,r={provideOnTypeFormattingEdits:(o,s,a,c,u)=>{let d=this._client,g=(y,v,T,P,q)=>{let L={textDocument:d.code2ProtocolConverter.asTextDocumentIdentifier(y),position:d.code2ProtocolConverter.asPosition(v),ch:T,options:d.code2ProtocolConverter.asFormattingOptions(P,bi.fromConfiguration(y))};return d.sendRequest(Rn.DocumentOnTypeFormattingRequest.type,L,q).then(N=>q.isCancellationRequested?null:d.protocol2CodeConverter.asTextEdits(N,q),N=>d.handleFailedRequest(Rn.DocumentOnTypeFormattingRequest.type,q,N,null))},m=d.middleware;return m.provideOnTypeFormattingEdits?m.provideOnTypeFormattingEdits(o,s,a,c,u,g):g(o,s,a,c,u)}},i=e.moreTriggerCharacter||[];return[Bs.languages.registerOnTypeFormattingEditProvider(this._client.protocol2CodeConverter.asDocumentSelector(t),r,e.firstTriggerCharacter,...i),r]}};Cr.DocumentOnTypeFormattingFeature=ad});var lb=E(Gs=>{"use strict";Object.defineProperty(Gs,"__esModule",{value:!0});Gs.RenameFeature=void 0;var BT=require("vscode"),Or=fe(),GT=Xe(),ub=un(),ud=Ee(),ld=class extends ud.TextDocumentLanguageFeature{constructor(e){super(e,Or.RenameRequest.type)}fillClientCapabilities(e){let t=(0,ud.ensure)((0,ud.ensure)(e,"textDocument"),"rename");t.dynamicRegistration=!0,t.prepareSupport=!0,t.prepareSupportDefaultBehavior=Or.PrepareSupportDefaultBehavior.Identifier,t.honorsChangeAnnotations=!0}initialize(e,t){let r=this.getRegistrationOptions(t,e.renameProvider);r&&(ub.boolean(e.renameProvider)&&(r.prepareProvider=!1),this.register({id:GT.generateUuid(),registerOptions:r}))}registerLanguageProvider(e){let t=e.documentSelector,r={provideRenameEdits:(i,o,s,a)=>{let c=this._client,u=(g,m,y,v)=>{let T={textDocument:c.code2ProtocolConverter.asTextDocumentIdentifier(g),position:c.code2ProtocolConverter.asPosition(m),newName:y};return c.sendRequest(Or.RenameRequest.type,T,v).then(P=>v.isCancellationRequested?null:c.protocol2CodeConverter.asWorkspaceEdit(P,v),P=>c.handleFailedRequest(Or.RenameRequest.type,v,P,null,!1))},d=c.middleware;return d.provideRenameEdits?d.provideRenameEdits(i,o,s,a,u):u(i,o,s,a)},prepareRename:e.prepareProvider?(i,o,s)=>{let a=this._client,c=(d,g,m)=>{let y={textDocument:a.code2ProtocolConverter.asTextDocumentIdentifier(d),position:a.code2ProtocolConverter.asPosition(g)};return a.sendRequest(Or.PrepareRenameRequest.type,y,m).then(v=>m.isCancellationRequested?null:Or.Range.is(v)?a.protocol2CodeConverter.asRange(v):this.isDefaultBehavior(v)?v.defaultBehavior===!0?null:Promise.reject(new Error("The element can't be renamed.")):v&&Or.Range.is(v.range)?{range:a.protocol2CodeConverter.asRange(v.range),placeholder:v.placeholder}:Promise.reject(new Error("The element can't be renamed.")),v=>{throw typeof v.message=="string"?new Error(v.message):new Error("The element can't be renamed.")})},u=a.middleware;return u.prepareRename?u.prepareRename(i,o,s,c):c(i,o,s)}:void 0};return[this.registerProvider(t,r),r]}registerProvider(e,t){return BT.languages.registerRenameProvider(this._client.protocol2CodeConverter.asDocumentSelector(e),t)}isDefaultBehavior(e){let t=e;return t&&ub.boolean(t.defaultBehavior)}};Gs.RenameFeature=ld});var db=E(Js=>{"use strict";Object.defineProperty(Js,"__esModule",{value:!0});Js.DocumentLinkFeature=void 0;var JT=require("vscode"),Zi=fe(),dd=Ee(),XT=Xe(),fd=class extends dd.TextDocumentLanguageFeature{constructor(e){super(e,Zi.DocumentLinkRequest.type)}fillClientCapabilities(e){let t=(0,dd.ensure)((0,dd.ensure)(e,"textDocument"),"documentLink");t.dynamicRegistration=!0,t.tooltipSupport=!0}initialize(e,t){let r=this.getRegistrationOptions(t,e.documentLinkProvider);r&&this.register({id:XT.generateUuid(),registerOptions:r})}registerLanguageProvider(e){let t=e.documentSelector,r={provideDocumentLinks:(i,o)=>{let s=this._client,a=(u,d)=>s.sendRequest(Zi.DocumentLinkRequest.type,s.code2ProtocolConverter.asDocumentLinkParams(u),d).then(g=>d.isCancellationRequested?null:s.protocol2CodeConverter.asDocumentLinks(g,d),g=>s.handleFailedRequest(Zi.DocumentLinkRequest.type,d,g,null)),c=s.middleware;return c.provideDocumentLinks?c.provideDocumentLinks(i,o,a):a(i,o)},resolveDocumentLink:e.resolveProvider?(i,o)=>{let s=this._client,a=(u,d)=>s.sendRequest(Zi.DocumentLinkResolveRequest.type,s.code2ProtocolConverter.asDocumentLink(u),d).then(g=>d.isCancellationRequested?u:s.protocol2CodeConverter.asDocumentLink(g),g=>s.handleFailedRequest(Zi.DocumentLinkResolveRequest.type,d,g,u)),c=s.middleware;return c.resolveDocumentLink?c.resolveDocumentLink(i,o,a):a(i,o)}:void 0};return[JT.languages.registerDocumentLinkProvider(this._client.protocol2CodeConverter.asDocumentSelector(t),r),r]}};Js.DocumentLinkFeature=fd});var pb=E(Xs=>{"use strict";Object.defineProperty(Xs,"__esModule",{value:!0});Xs.ExecuteCommandFeature=void 0;var QT=require("vscode"),pd=fe(),YT=Xe(),fb=Ee(),hd=class{constructor(e){this._client=e,this._commands=new Map}getState(){return{kind:"workspace",id:this.registrationType.method,registrations:this._commands.size>0}}get registrationType(){return pd.ExecuteCommandRequest.type}fillClientCapabilities(e){(0,fb.ensure)((0,fb.ensure)(e,"workspace"),"executeCommand").dynamicRegistration=!0}initialize(e){e.executeCommandProvider&&this.register({id:YT.generateUuid(),registerOptions:Object.assign({},e.executeCommandProvider)})}register(e){let t=this._client,r=t.middleware,i=(o,s)=>{let a={command:o,arguments:s};return t.sendRequest(pd.ExecuteCommandRequest.type,a).then(void 0,c=>t.handleFailedRequest(pd.ExecuteCommandRequest.type,void 0,c,void 0))};if(e.registerOptions.commands){let o=[];for(let s of e.registerOptions.commands)o.push(QT.commands.registerCommand(s,(...a)=>r.executeCommand?r.executeCommand(s,a,i):i(s,a)));this._commands.set(e.id,o)}}unregister(e){let t=this._commands.get(e);t&&t.forEach(r=>r.dispose())}clear(){this._commands.forEach(e=>{e.forEach(t=>t.dispose())}),this._commands.clear()}};Xs.ExecuteCommandFeature=hd});var hb=E(Ys=>{"use strict";Object.defineProperty(Ys,"__esModule",{value:!0});Ys.FileSystemWatcherFeature=void 0;var ZT=require("vscode"),Mr=fe(),Qs=Ee(),gd=class{constructor(e,t){this._client=e,this._notifyFileEvent=t,this._watchers=new Map}getState(){return{kind:"workspace",id:this.registrationType.method,registrations:this._watchers.size>0}}get registrationType(){return Mr.DidChangeWatchedFilesNotification.type}fillClientCapabilities(e){(0,Qs.ensure)((0,Qs.ensure)(e,"workspace"),"didChangeWatchedFiles").dynamicRegistration=!0,(0,Qs.ensure)((0,Qs.ensure)(e,"workspace"),"didChangeWatchedFiles").relativePatternSupport=!0}initialize(e,t){}register(e){if(!Array.isArray(e.registerOptions.watchers))return;let t=[];for(let r of e.registerOptions.watchers){let i=this._client.protocol2CodeConverter.asGlobPattern(r.globPattern);if(i===void 0)continue;let o=!0,s=!0,a=!0;r.kind!==void 0&&r.kind!==null&&(o=(r.kind&Mr.WatchKind.Create)!==0,s=(r.kind&Mr.WatchKind.Change)!==0,a=(r.kind&Mr.WatchKind.Delete)!==0);let c=ZT.workspace.createFileSystemWatcher(i,!o,!s,!a);this.hookListeners(c,o,s,a,t),t.push(c)}this._watchers.set(e.id,t)}registerRaw(e,t){let r=[];for(let i of t)this.hookListeners(i,!0,!0,!0,r);this._watchers.set(e,r)}hookListeners(e,t,r,i,o){t&&e.onDidCreate(s=>this._notifyFileEvent({uri:this._client.code2ProtocolConverter.asUri(s),type:Mr.FileChangeType.Created}),null,o),r&&e.onDidChange(s=>this._notifyFileEvent({uri:this._client.code2ProtocolConverter.asUri(s),type:Mr.FileChangeType.Changed}),null,o),i&&e.onDidDelete(s=>this._notifyFileEvent({uri:this._client.code2ProtocolConverter.asUri(s),type:Mr.FileChangeType.Deleted}),null,o)}unregister(e){let t=this._watchers.get(e);if(t)for(let r of t)r.dispose()}clear(){this._watchers.forEach(e=>{for(let t of e)t.dispose()}),this._watchers.clear()}};Ys.FileSystemWatcherFeature=gd});var gb=E(Zs=>{"use strict";Object.defineProperty(Zs,"__esModule",{value:!0});Zs.ColorProviderFeature=void 0;var eR=require("vscode"),eo=fe(),md=Ee(),vd=class extends md.TextDocumentLanguageFeature{constructor(e){super(e,eo.DocumentColorRequest.type)}fillClientCapabilities(e){(0,md.ensure)((0,md.ensure)(e,"textDocument"),"colorProvider").dynamicRegistration=!0}initialize(e,t){let[r,i]=this.getRegistration(t,e.colorProvider);!r||!i||this.register({id:r,registerOptions:i})}registerLanguageProvider(e){let t=e.documentSelector,r={provideColorPresentations:(i,o,s)=>{let a=this._client,c=(d,g,m)=>{let y={color:d,textDocument:a.code2ProtocolConverter.asTextDocumentIdentifier(g.document),range:a.code2ProtocolConverter.asRange(g.range)};return a.sendRequest(eo.ColorPresentationRequest.type,y,m).then(v=>m.isCancellationRequested?null:this._client.protocol2CodeConverter.asColorPresentations(v,m),v=>a.handleFailedRequest(eo.ColorPresentationRequest.type,m,v,null))},u=a.middleware;return u.provideColorPresentations?u.provideColorPresentations(i,o,s,c):c(i,o,s)},provideDocumentColors:(i,o)=>{let s=this._client,a=(u,d)=>{let g={textDocument:s.code2ProtocolConverter.asTextDocumentIdentifier(u)};return s.sendRequest(eo.DocumentColorRequest.type,g,d).then(m=>d.isCancellationRequested?null:this._client.protocol2CodeConverter.asColorInformations(m,d),m=>s.handleFailedRequest(eo.DocumentColorRequest.type,d,m,null))},c=s.middleware;return c.provideDocumentColors?c.provideDocumentColors(i,o,a):a(i,o)}};return[eR.languages.registerColorProvider(this._client.protocol2CodeConverter.asDocumentSelector(t),r),r]}};Zs.ColorProviderFeature=vd});var mb=E(ea=>{"use strict";Object.defineProperty(ea,"__esModule",{value:!0});ea.ImplementationFeature=void 0;var tR=require("vscode"),yd=fe(),bd=Ee(),wd=class extends bd.TextDocumentLanguageFeature{constructor(e){super(e,yd.ImplementationRequest.type)}fillClientCapabilities(e){let t=(0,bd.ensure)((0,bd.ensure)(e,"textDocument"),"implementation");t.dynamicRegistration=!0,t.linkSupport=!0}initialize(e,t){let[r,i]=this.getRegistration(t,e.implementationProvider);!r||!i||this.register({id:r,registerOptions:i})}registerLanguageProvider(e){let t=e.documentSelector,r={provideImplementation:(i,o,s)=>{let a=this._client,c=(d,g,m)=>a.sendRequest(yd.ImplementationRequest.type,a.code2ProtocolConverter.asTextDocumentPositionParams(d,g),m).then(y=>m.isCancellationRequested?null:a.protocol2CodeConverter.asDefinitionResult(y,m),y=>a.handleFailedRequest(yd.ImplementationRequest.type,m,y,null)),u=a.middleware;return u.provideImplementation?u.provideImplementation(i,o,s,c):c(i,o,s)}};return[this.registerProvider(t,r),r]}registerProvider(e,t){return tR.languages.registerImplementationProvider(this._client.protocol2CodeConverter.asDocumentSelector(e),t)}};ea.ImplementationFeature=wd});var vb=E(ta=>{"use strict";Object.defineProperty(ta,"__esModule",{value:!0});ta.TypeDefinitionFeature=void 0;var nR=require("vscode"),Cd=fe(),to=Ee(),Dd=class extends to.TextDocumentLanguageFeature{constructor(e){super(e,Cd.TypeDefinitionRequest.type)}fillClientCapabilities(e){(0,to.ensure)((0,to.ensure)(e,"textDocument"),"typeDefinition").dynamicRegistration=!0;let t=(0,to.ensure)((0,to.ensure)(e,"textDocument"),"typeDefinition");t.dynamicRegistration=!0,t.linkSupport=!0}initialize(e,t){let[r,i]=this.getRegistration(t,e.typeDefinitionProvider);!r||!i||this.register({id:r,registerOptions:i})}registerLanguageProvider(e){let t=e.documentSelector,r={provideTypeDefinition:(i,o,s)=>{let a=this._client,c=(d,g,m)=>a.sendRequest(Cd.TypeDefinitionRequest.type,a.code2ProtocolConverter.asTextDocumentPositionParams(d,g),m).then(y=>m.isCancellationRequested?null:a.protocol2CodeConverter.asDefinitionResult(y,m),y=>a.handleFailedRequest(Cd.TypeDefinitionRequest.type,m,y,null)),u=a.middleware;return u.provideTypeDefinition?u.provideTypeDefinition(i,o,s,c):c(i,o,s)}};return[this.registerProvider(t,r),r]}registerProvider(e,t){return nR.languages.registerTypeDefinitionProvider(this._client.protocol2CodeConverter.asDocumentSelector(e),t)}};ta.TypeDefinitionFeature=Dd});var yb=E(wi=>{"use strict";Object.defineProperty(wi,"__esModule",{value:!0});wi.WorkspaceFoldersFeature=wi.arrayDiff=void 0;var rR=Xe(),na=require("vscode"),no=fe();function Sd(n,e){if(n!=null)return n[e]}function _d(n,e){return n.filter(t=>e.indexOf(t)<0)}wi.arrayDiff=_d;var Td=class{constructor(e){this._client=e,this._listeners=new Map}getState(){return{kind:"workspace",id:this.registrationType.method,registrations:this._listeners.size>0}}get registrationType(){return no.DidChangeWorkspaceFoldersNotification.type}fillInitializeParams(e){let t=na.workspace.workspaceFolders;this.initializeWithFolders(t),t===void 0?e.workspaceFolders=null:e.workspaceFolders=t.map(r=>this.asProtocol(r))}initializeWithFolders(e){this._initialFolders=e}fillClientCapabilities(e){e.workspace=e.workspace||{},e.workspace.workspaceFolders=!0}initialize(e){let t=this._client;t.onRequest(no.WorkspaceFoldersRequest.type,o=>{let s=()=>{let c=na.workspace.workspaceFolders;return c===void 0?null:c.map(d=>this.asProtocol(d))},a=t.middleware.workspace;return a&&a.workspaceFolders?a.workspaceFolders(o,s):s(o)});let r=Sd(Sd(Sd(e,"workspace"),"workspaceFolders"),"changeNotifications"),i;typeof r=="string"?i=r:r===!0&&(i=rR.generateUuid()),i&&this.register({id:i,registerOptions:void 0})}sendInitialEvent(e){let t;if(this._initialFolders&&e){let r=_d(this._initialFolders,e),i=_d(e,this._initialFolders);(i.length>0||r.length>0)&&(t=this.doSendEvent(i,r))}else this._initialFolders?t=this.doSendEvent([],this._initialFolders):e&&(t=this.doSendEvent(e,[]));t!==void 0&&t.catch(r=>{this._client.error(`Sending notification ${no.DidChangeWorkspaceFoldersNotification.type.method} failed`,r)})}doSendEvent(e,t){let r={event:{added:e.map(i=>this.asProtocol(i)),removed:t.map(i=>this.asProtocol(i))}};return this._client.sendNotification(no.DidChangeWorkspaceFoldersNotification.type,r)}register(e){let t=e.id,r=this._client,i=na.workspace.onDidChangeWorkspaceFolders(o=>{let s=u=>this.doSendEvent(u.added,u.removed),a=r.middleware.workspace;(a&&a.didChangeWorkspaceFolders?a.didChangeWorkspaceFolders(o,s):s(o)).catch(u=>{this._client.error(`Sending notification ${no.DidChangeWorkspaceFoldersNotification.type.method} failed`,u)})});this._listeners.set(t,i),this.sendInitialEvent(na.workspace.workspaceFolders)}unregister(e){let t=this._listeners.get(e);t!==void 0&&(this._listeners.delete(e),t.dispose())}clear(){for(let e of this._listeners.values())e.dispose();this._listeners.clear()}asProtocol(e){return e===void 0?null:{uri:this._client.code2ProtocolConverter.asUri(e.uri),name:e.name}}};wi.WorkspaceFoldersFeature=Td});var wb=E(ra=>{"use strict";Object.defineProperty(ra,"__esModule",{value:!0});ra.FoldingRangeFeature=void 0;var bb=require("vscode"),Ar=fe(),ro=Ee(),Rd=class extends ro.TextDocumentLanguageFeature{constructor(e){super(e,Ar.FoldingRangeRequest.type)}fillClientCapabilities(e){let t=(0,ro.ensure)((0,ro.ensure)(e,"textDocument"),"foldingRange");t.dynamicRegistration=!0,t.rangeLimit=5e3,t.lineFoldingOnly=!0,t.foldingRangeKind={valueSet:[Ar.FoldingRangeKind.Comment,Ar.FoldingRangeKind.Imports,Ar.FoldingRangeKind.Region]},t.foldingRange={collapsedText:!1},(0,ro.ensure)((0,ro.ensure)(e,"workspace"),"foldingRange").refreshSupport=!0}initialize(e,t){this._client.onRequest(Ar.FoldingRangeRefreshRequest.type,async()=>{for(let o of this.getAllProviders())o.onDidChangeFoldingRange.fire()});let[r,i]=this.getRegistration(t,e.foldingRangeProvider);!r||!i||this.register({id:r,registerOptions:i})}registerLanguageProvider(e){let t=e.documentSelector,r=new bb.EventEmitter,i={onDidChangeFoldingRanges:r.event,provideFoldingRanges:(o,s,a)=>{let c=this._client,u=(g,m,y)=>{let v={textDocument:c.code2ProtocolConverter.asTextDocumentIdentifier(g)};return c.sendRequest(Ar.FoldingRangeRequest.type,v,y).then(T=>y.isCancellationRequested?null:c.protocol2CodeConverter.asFoldingRanges(T,y),T=>c.handleFailedRequest(Ar.FoldingRangeRequest.type,y,T,null))},d=c.middleware;return d.provideFoldingRanges?d.provideFoldingRanges(o,s,a,u):u(o,s,a)}};return[bb.languages.registerFoldingRangeProvider(this._client.protocol2CodeConverter.asDocumentSelector(t),i),{provider:i,onDidChangeFoldingRange:r}]}};ra.FoldingRangeFeature=Rd});var Cb=E(ia=>{"use strict";Object.defineProperty(ia,"__esModule",{value:!0});ia.DeclarationFeature=void 0;var iR=require("vscode"),Pd=fe(),kd=Ee(),Ed=class extends kd.TextDocumentLanguageFeature{constructor(e){super(e,Pd.DeclarationRequest.type)}fillClientCapabilities(e){let t=(0,kd.ensure)((0,kd.ensure)(e,"textDocument"),"declaration");t.dynamicRegistration=!0,t.linkSupport=!0}initialize(e,t){let[r,i]=this.getRegistration(t,e.declarationProvider);!r||!i||this.register({id:r,registerOptions:i})}registerLanguageProvider(e){let t=e.documentSelector,r={provideDeclaration:(i,o,s)=>{let a=this._client,c=(d,g,m)=>a.sendRequest(Pd.DeclarationRequest.type,a.code2ProtocolConverter.asTextDocumentPositionParams(d,g),m).then(y=>m.isCancellationRequested?null:a.protocol2CodeConverter.asDeclarationResult(y,m),y=>a.handleFailedRequest(Pd.DeclarationRequest.type,m,y,null)),u=a.middleware;return u.provideDeclaration?u.provideDeclaration(i,o,s,c):c(i,o,s)}};return[this.registerProvider(t,r),r]}registerProvider(e,t){return iR.languages.registerDeclarationProvider(this._client.protocol2CodeConverter.asDocumentSelector(e),t)}};ia.DeclarationFeature=Ed});var Db=E(oa=>{"use strict";Object.defineProperty(oa,"__esModule",{value:!0});oa.SelectionRangeFeature=void 0;var oR=require("vscode"),xd=fe(),qd=Ee(),Id=class extends qd.TextDocumentLanguageFeature{constructor(e){super(e,xd.SelectionRangeRequest.type)}fillClientCapabilities(e){let t=(0,qd.ensure)((0,qd.ensure)(e,"textDocument"),"selectionRange");t.dynamicRegistration=!0}initialize(e,t){let[r,i]=this.getRegistration(t,e.selectionRangeProvider);!r||!i||this.register({id:r,registerOptions:i})}registerLanguageProvider(e){let t=e.documentSelector,r={provideSelectionRanges:(i,o,s)=>{let a=this._client,c=async(d,g,m)=>{let y={textDocument:a.code2ProtocolConverter.asTextDocumentIdentifier(d),positions:a.code2ProtocolConverter.asPositionsSync(g,m)};return a.sendRequest(xd.SelectionRangeRequest.type,y,m).then(v=>m.isCancellationRequested?null:a.protocol2CodeConverter.asSelectionRanges(v,m),v=>a.handleFailedRequest(xd.SelectionRangeRequest.type,m,v,null))},u=a.middleware;return u.provideSelectionRanges?u.provideSelectionRanges(i,o,s,c):c(i,o,s)}};return[this.registerProvider(t,r),r]}registerProvider(e,t){return oR.languages.registerSelectionRangeProvider(this._client.protocol2CodeConverter.asDocumentSelector(e),t)}};oa.SelectionRangeFeature=Id});var _b=E(sa=>{"use strict";Object.defineProperty(sa,"__esModule",{value:!0});sa.ProgressFeature=void 0;var Sb=fe(),sR=ol();function aR(n,e){return n[e]===void 0&&(n[e]=Object.create(null)),n[e]}var Fd=class{constructor(e){this._client=e,this.activeParts=new Set}getState(){return{kind:"window",id:Sb.WorkDoneProgressCreateRequest.method,registrations:this.activeParts.size>0}}fillClientCapabilities(e){aR(e,"window").workDoneProgress=!0}initialize(){let e=this._client,t=i=>{this.activeParts.delete(i)},r=i=>{this.activeParts.add(new sR.ProgressPart(this._client,i.token,t))};e.onRequest(Sb.WorkDoneProgressCreateRequest.type,r)}clear(){for(let e of this.activeParts)e.done();this.activeParts.clear()}};sa.ProgressFeature=Fd});var Tb=E(aa=>{"use strict";Object.defineProperty(aa,"__esModule",{value:!0});aa.CallHierarchyFeature=void 0;var cR=require("vscode"),Lr=fe(),Od=Ee(),Md=class{constructor(e){this.client=e,this.middleware=e.middleware}prepareCallHierarchy(e,t,r){let i=this.client,o=this.middleware,s=(a,c,u)=>{let d=i.code2ProtocolConverter.asTextDocumentPositionParams(a,c);return i.sendRequest(Lr.CallHierarchyPrepareRequest.type,d,u).then(g=>u.isCancellationRequested?null:i.protocol2CodeConverter.asCallHierarchyItems(g,u),g=>i.handleFailedRequest(Lr.CallHierarchyPrepareRequest.type,u,g,null))};return o.prepareCallHierarchy?o.prepareCallHierarchy(e,t,r,s):s(e,t,r)}provideCallHierarchyIncomingCalls(e,t){let r=this.client,i=this.middleware,o=(s,a)=>{let c={item:r.code2ProtocolConverter.asCallHierarchyItem(s)};return r.sendRequest(Lr.CallHierarchyIncomingCallsRequest.type,c,a).then(u=>a.isCancellationRequested?null:r.protocol2CodeConverter.asCallHierarchyIncomingCalls(u,a),u=>r.handleFailedRequest(Lr.CallHierarchyIncomingCallsRequest.type,a,u,null))};return i.provideCallHierarchyIncomingCalls?i.provideCallHierarchyIncomingCalls(e,t,o):o(e,t)}provideCallHierarchyOutgoingCalls(e,t){let r=this.client,i=this.middleware,o=(s,a)=>{let c={item:r.code2ProtocolConverter.asCallHierarchyItem(s)};return r.sendRequest(Lr.CallHierarchyOutgoingCallsRequest.type,c,a).then(u=>a.isCancellationRequested?null:r.protocol2CodeConverter.asCallHierarchyOutgoingCalls(u,a),u=>r.handleFailedRequest(Lr.CallHierarchyOutgoingCallsRequest.type,a,u,null))};return i.provideCallHierarchyOutgoingCalls?i.provideCallHierarchyOutgoingCalls(e,t,o):o(e,t)}},Ad=class extends Od.TextDocumentLanguageFeature{constructor(e){super(e,Lr.CallHierarchyPrepareRequest.type)}fillClientCapabilities(e){let t=e,r=(0,Od.ensure)((0,Od.ensure)(t,"textDocument"),"callHierarchy");r.dynamicRegistration=!0}initialize(e,t){let[r,i]=this.getRegistration(t,e.callHierarchyProvider);!r||!i||this.register({id:r,registerOptions:i})}registerLanguageProvider(e){let t=this._client,r=new Md(t);return[cR.languages.registerCallHierarchyProvider(this._client.protocol2CodeConverter.asDocumentSelector(e.documentSelector),r),r]}};aa.CallHierarchyFeature=Ad});var Rb=E(ua=>{"use strict";Object.defineProperty(ua,"__esModule",{value:!0});ua.SemanticTokensFeature=void 0;var ca=require("vscode"),ve=fe(),io=Ee(),uR=un(),Ld=class extends io.TextDocumentLanguageFeature{constructor(e){super(e,ve.SemanticTokensRegistrationType.type)}fillClientCapabilities(e){let t=(0,io.ensure)((0,io.ensure)(e,"textDocument"),"semanticTokens");t.dynamicRegistration=!0,t.tokenTypes=[ve.SemanticTokenTypes.namespace,ve.SemanticTokenTypes.type,ve.SemanticTokenTypes.class,ve.SemanticTokenTypes.enum,ve.SemanticTokenTypes.interface,ve.SemanticTokenTypes.struct,ve.SemanticTokenTypes.typeParameter,ve.SemanticTokenTypes.parameter,ve.SemanticTokenTypes.variable,ve.SemanticTokenTypes.property,ve.SemanticTokenTypes.enumMember,ve.SemanticTokenTypes.event,ve.SemanticTokenTypes.function,ve.SemanticTokenTypes.method,ve.SemanticTokenTypes.macro,ve.SemanticTokenTypes.keyword,ve.SemanticTokenTypes.modifier,ve.SemanticTokenTypes.comment,ve.SemanticTokenTypes.string,ve.SemanticTokenTypes.number,ve.SemanticTokenTypes.regexp,ve.SemanticTokenTypes.operator,ve.SemanticTokenTypes.decorator],t.tokenModifiers=[ve.SemanticTokenModifiers.declaration,ve.SemanticTokenModifiers.definition,ve.SemanticTokenModifiers.readonly,ve.SemanticTokenModifiers.static,ve.SemanticTokenModifiers.deprecated,ve.SemanticTokenModifiers.abstract,ve.SemanticTokenModifiers.async,ve.SemanticTokenModifiers.modification,ve.SemanticTokenModifiers.documentation,ve.SemanticTokenModifiers.defaultLibrary],t.formats=[ve.TokenFormat.Relative],t.requests={range:!0,full:{delta:!0}},t.multilineTokenSupport=!1,t.overlappingTokenSupport=!1,t.serverCancelSupport=!0,t.augmentsSyntaxTokens=!0,(0,io.ensure)((0,io.ensure)(e,"workspace"),"semanticTokens").refreshSupport=!0}initialize(e,t){this._client.onRequest(ve.SemanticTokensRefreshRequest.type,async()=>{for(let s of this.getAllProviders())s.onDidChangeSemanticTokensEmitter.fire()});let[i,o]=this.getRegistration(t,e.semanticTokensProvider);!i||!o||this.register({id:i,registerOptions:o})}registerLanguageProvider(e){let t=e.documentSelector,r=uR.boolean(e.full)?e.full:e.full!==void 0,i=e.full!==void 0&&typeof e.full!="boolean"&&e.full.delta===!0,o=new ca.EventEmitter,s=r?{onDidChangeSemanticTokens:o.event,provideDocumentSemanticTokens:(y,v)=>{let T=this._client,P=T.middleware,q=(L,N)=>{let K={textDocument:T.code2ProtocolConverter.asTextDocumentIdentifier(L)};return T.sendRequest(ve.SemanticTokensRequest.type,K,N).then(te=>N.isCancellationRequested?null:T.protocol2CodeConverter.asSemanticTokens(te,N),te=>T.handleFailedRequest(ve.SemanticTokensRequest.type,N,te,null))};return P.provideDocumentSemanticTokens?P.provideDocumentSemanticTokens(y,v,q):q(y,v)},provideDocumentSemanticTokensEdits:i?(y,v,T)=>{let P=this._client,q=P.middleware,L=(N,K,te)=>{let Z={textDocument:P.code2ProtocolConverter.asTextDocumentIdentifier(N),previousResultId:K};return P.sendRequest(ve.SemanticTokensDeltaRequest.type,Z,te).then(async V=>te.isCancellationRequested?null:ve.SemanticTokens.is(V)?await P.protocol2CodeConverter.asSemanticTokens(V,te):await P.protocol2CodeConverter.asSemanticTokensEdits(V,te),V=>P.handleFailedRequest(ve.SemanticTokensDeltaRequest.type,te,V,null))};return q.provideDocumentSemanticTokensEdits?q.provideDocumentSemanticTokensEdits(y,v,T,L):L(y,v,T)}:void 0}:void 0,c=e.range===!0?{provideDocumentRangeSemanticTokens:(y,v,T)=>{let P=this._client,q=P.middleware,L=(N,K,te)=>{let Z={textDocument:P.code2ProtocolConverter.asTextDocumentIdentifier(N),range:P.code2ProtocolConverter.asRange(K)};return P.sendRequest(ve.SemanticTokensRangeRequest.type,Z,te).then(V=>te.isCancellationRequested?null:P.protocol2CodeConverter.asSemanticTokens(V,te),V=>P.handleFailedRequest(ve.SemanticTokensRangeRequest.type,te,V,null))};return q.provideDocumentRangeSemanticTokens?q.provideDocumentRangeSemanticTokens(y,v,T,L):L(y,v,T)}}:void 0,u=[],d=this._client,g=d.protocol2CodeConverter.asSemanticTokensLegend(e.legend),m=d.protocol2CodeConverter.asDocumentSelector(t);return s!==void 0&&u.push(ca.languages.registerDocumentSemanticTokensProvider(m,s,g)),c!==void 0&&u.push(ca.languages.registerDocumentRangeSemanticTokensProvider(m,c,g)),[new ca.Disposable(()=>u.forEach(y=>y.dispose())),{range:c,full:s,onDidChangeSemanticTokensEmitter:o}]}};ua.SemanticTokensFeature=Ld});var Eb=E(zt=>{"use strict";Object.defineProperty(zt,"__esModule",{value:!0});zt.WillDeleteFilesFeature=zt.WillRenameFilesFeature=zt.WillCreateFilesFeature=zt.DidDeleteFilesFeature=zt.DidRenameFilesFeature=zt.DidCreateFilesFeature=void 0;var gn=require("vscode"),lR=qs(),er=fe(),dR=Xe();function Pb(n,e){return n[e]===void 0&&(n[e]={}),n[e]}function fR(n,e){return n[e]}function kb(n,e,t){n[e]=t}var oo=class n{constructor(e,t,r,i,o){this._client=e,this._event=t,this._registrationType=r,this._clientCapability=i,this._serverCapability=o,this._filters=new Map}getState(){return{kind:"workspace",id:this._registrationType.method,registrations:this._filters.size>0}}filterSize(){return this._filters.size}get registrationType(){return this._registrationType}fillClientCapabilities(e){let t=Pb(Pb(e,"workspace"),"fileOperations");kb(t,"dynamicRegistration",!0),kb(t,this._clientCapability,!0)}initialize(e){let t=e.workspace?.fileOperations,r=t!==void 0?fR(t,this._serverCapability):void 0;if(r?.filters!==void 0)try{this.register({id:dR.generateUuid(),registerOptions:{filters:r.filters}})}catch(i){this._client.warn(`Ignoring invalid glob pattern for ${this._serverCapability} registration: ${i}`)}}register(e){this._listener||(this._listener=this._event(this.send,this));let t=e.registerOptions.filters.map(r=>{let i=new lR.Minimatch(r.pattern.glob,n.asMinimatchOptions(r.pattern.options));if(!i.makeRe())throw new Error(`Invalid pattern ${r.pattern.glob}!`);return{scheme:r.scheme,matcher:i,kind:r.pattern.matches}});this._filters.set(e.id,t)}unregister(e){this._filters.delete(e),this._filters.size===0&&this._listener&&(this._listener.dispose(),this._listener=void 0)}clear(){this._filters.clear(),this._listener&&(this._listener.dispose(),this._listener=void 0)}getFileType(e){return n.getFileType(e)}async filter(e,t){let r=await Promise.all(e.files.map(async o=>{let s=t(o),a=s.fsPath.replace(/\\/g,"/");for(let c of this._filters.values())for(let u of c)if(!(u.scheme!==void 0&&u.scheme!==s.scheme)){if(u.matcher.match(a)){if(u.kind===void 0)return!0;let d=await this.getFileType(s);if(d===void 0)return this._client.error(`Failed to determine file type for ${s.toString()}.`),!0;if(d===gn.FileType.File&&u.kind===er.FileOperationPatternKind.file||d===gn.FileType.Directory&&u.kind===er.FileOperationPatternKind.folder)return!0}else if(u.kind===er.FileOperationPatternKind.folder&&await n.getFileType(s)===gn.FileType.Directory&&u.matcher.match(`${a}/`))return!0}return!1})),i=e.files.filter((o,s)=>r[s]);return{...e,files:i}}static async getFileType(e){try{return(await gn.workspace.fs.stat(e)).type}catch{return}}static asMinimatchOptions(e){let t={dot:!0};return e?.ignoreCase===!0&&(t.nocase=!0),t}},la=class extends oo{constructor(e,t,r,i,o,s,a){super(e,t,r,i,o),this._notificationType=r,this._accessUri=s,this._createParams=a}async send(e){let t=await this.filter(e,this._accessUri);if(t.files.length){let r=async i=>this._client.sendNotification(this._notificationType,this._createParams(i));return this.doSend(t,r)}}},da=class extends la{constructor(){super(...arguments),this._fsPathFileTypes=new Map}async getFileType(e){let t=e.fsPath;if(this._fsPathFileTypes.has(t))return this._fsPathFileTypes.get(t);let r=await oo.getFileType(e);return r&&this._fsPathFileTypes.set(t,r),r}async cacheFileTypes(e,t){await this.filter(e,t)}clearFileTypeCache(){this._fsPathFileTypes.clear()}unregister(e){super.unregister(e),this.filterSize()===0&&this._willListener&&(this._willListener.dispose(),this._willListener=void 0)}clear(){super.clear(),this._willListener&&(this._willListener.dispose(),this._willListener=void 0)}},Nd=class extends la{constructor(e){super(e,gn.workspace.onDidCreateFiles,er.DidCreateFilesNotification.type,"didCreate","didCreate",t=>t,e.code2ProtocolConverter.asDidCreateFilesParams)}doSend(e,t){let r=this._client.middleware.workspace;return r?.didCreateFiles?r.didCreateFiles(e,t):t(e)}};zt.DidCreateFilesFeature=Nd;var jd=class extends da{constructor(e){super(e,gn.workspace.onDidRenameFiles,er.DidRenameFilesNotification.type,"didRename","didRename",t=>t.oldUri,e.code2ProtocolConverter.asDidRenameFilesParams)}register(e){this._willListener||(this._willListener=gn.workspace.onWillRenameFiles(this.willRename,this)),super.register(e)}willRename(e){e.waitUntil(this.cacheFileTypes(e,t=>t.oldUri))}doSend(e,t){this.clearFileTypeCache();let r=this._client.middleware.workspace;return r?.didRenameFiles?r.didRenameFiles(e,t):t(e)}};zt.DidRenameFilesFeature=jd;var $d=class extends da{constructor(e){super(e,gn.workspace.onDidDeleteFiles,er.DidDeleteFilesNotification.type,"didDelete","didDelete",t=>t,e.code2ProtocolConverter.asDidDeleteFilesParams)}register(e){this._willListener||(this._willListener=gn.workspace.onWillDeleteFiles(this.willDelete,this)),super.register(e)}willDelete(e){e.waitUntil(this.cacheFileTypes(e,t=>t))}doSend(e,t){this.clearFileTypeCache();let r=this._client.middleware.workspace;return r?.didDeleteFiles?r.didDeleteFiles(e,t):t(e)}};zt.DidDeleteFilesFeature=$d;var so=class extends oo{constructor(e,t,r,i,o,s,a){super(e,t,r,i,o),this._requestType=r,this._accessUri=s,this._createParams=a}async send(e){let t=this.waitUntil(e);e.waitUntil(t)}async waitUntil(e){let t=await this.filter(e,this._accessUri);if(t.files.length){let r=i=>this._client.sendRequest(this._requestType,this._createParams(i),i.token).then(this._client.protocol2CodeConverter.asWorkspaceEdit);return this.doSend(t,r)}else return}},Ud=class extends so{constructor(e){super(e,gn.workspace.onWillCreateFiles,er.WillCreateFilesRequest.type,"willCreate","willCreate",t=>t,e.code2ProtocolConverter.asWillCreateFilesParams)}doSend(e,t){let r=this._client.middleware.workspace;return r?.willCreateFiles?r.willCreateFiles(e,t):t(e)}};zt.WillCreateFilesFeature=Ud;var Hd=class extends so{constructor(e){super(e,gn.workspace.onWillRenameFiles,er.WillRenameFilesRequest.type,"willRename","willRename",t=>t.oldUri,e.code2ProtocolConverter.asWillRenameFilesParams)}doSend(e,t){let r=this._client.middleware.workspace;return r?.willRenameFiles?r.willRenameFiles(e,t):t(e)}};zt.WillRenameFilesFeature=Hd;var Wd=class extends so{constructor(e){super(e,gn.workspace.onWillDeleteFiles,er.WillDeleteFilesRequest.type,"willDelete","willDelete",t=>t,e.code2ProtocolConverter.asWillDeleteFilesParams)}doSend(e,t){let r=this._client.middleware.workspace;return r?.willDeleteFiles?r.willDeleteFiles(e,t):t(e)}};zt.WillDeleteFilesFeature=Wd});var xb=E(fa=>{"use strict";Object.defineProperty(fa,"__esModule",{value:!0});fa.LinkedEditingFeature=void 0;var pR=require("vscode"),Kd=fe(),Vd=Ee(),zd=class extends Vd.TextDocumentLanguageFeature{constructor(e){super(e,Kd.LinkedEditingRangeRequest.type)}fillClientCapabilities(e){let t=(0,Vd.ensure)((0,Vd.ensure)(e,"textDocument"),"linkedEditingRange");t.dynamicRegistration=!0}initialize(e,t){let[r,i]=this.getRegistration(t,e.linkedEditingRangeProvider);!r||!i||this.register({id:r,registerOptions:i})}registerLanguageProvider(e){let t=e.documentSelector,r={provideLinkedEditingRanges:(i,o,s)=>{let a=this._client,c=(d,g,m)=>a.sendRequest(Kd.LinkedEditingRangeRequest.type,a.code2ProtocolConverter.asTextDocumentPositionParams(d,g),m).then(y=>m.isCancellationRequested?null:a.protocol2CodeConverter.asLinkedEditingRanges(y,m),y=>a.handleFailedRequest(Kd.LinkedEditingRangeRequest.type,m,y,null)),u=a.middleware;return u.provideLinkedEditingRange?u.provideLinkedEditingRange(i,o,s,c):c(i,o,s)}};return[this.registerProvider(t,r),r]}registerProvider(e,t){return pR.languages.registerLinkedEditingRangeProvider(this._client.protocol2CodeConverter.asDocumentSelector(e),t)}};fa.LinkedEditingFeature=zd});var qb=E(pa=>{"use strict";Object.defineProperty(pa,"__esModule",{value:!0});pa.TypeHierarchyFeature=void 0;var hR=require("vscode"),Nr=fe(),Bd=Ee(),Gd=class{constructor(e){this.client=e,this.middleware=e.middleware}prepareTypeHierarchy(e,t,r){let i=this.client,o=this.middleware,s=(a,c,u)=>{let d=i.code2ProtocolConverter.asTextDocumentPositionParams(a,c);return i.sendRequest(Nr.TypeHierarchyPrepareRequest.type,d,u).then(g=>u.isCancellationRequested?null:i.protocol2CodeConverter.asTypeHierarchyItems(g,u),g=>i.handleFailedRequest(Nr.TypeHierarchyPrepareRequest.type,u,g,null))};return o.prepareTypeHierarchy?o.prepareTypeHierarchy(e,t,r,s):s(e,t,r)}provideTypeHierarchySupertypes(e,t){let r=this.client,i=this.middleware,o=(s,a)=>{let c={item:r.code2ProtocolConverter.asTypeHierarchyItem(s)};return r.sendRequest(Nr.TypeHierarchySupertypesRequest.type,c,a).then(u=>a.isCancellationRequested?null:r.protocol2CodeConverter.asTypeHierarchyItems(u,a),u=>r.handleFailedRequest(Nr.TypeHierarchySupertypesRequest.type,a,u,null))};return i.provideTypeHierarchySupertypes?i.provideTypeHierarchySupertypes(e,t,o):o(e,t)}provideTypeHierarchySubtypes(e,t){let r=this.client,i=this.middleware,o=(s,a)=>{let c={item:r.code2ProtocolConverter.asTypeHierarchyItem(s)};return r.sendRequest(Nr.TypeHierarchySubtypesRequest.type,c,a).then(u=>a.isCancellationRequested?null:r.protocol2CodeConverter.asTypeHierarchyItems(u,a),u=>r.handleFailedRequest(Nr.TypeHierarchySubtypesRequest.type,a,u,null))};return i.provideTypeHierarchySubtypes?i.provideTypeHierarchySubtypes(e,t,o):o(e,t)}},Jd=class extends Bd.TextDocumentLanguageFeature{constructor(e){super(e,Nr.TypeHierarchyPrepareRequest.type)}fillClientCapabilities(e){let t=(0,Bd.ensure)((0,Bd.ensure)(e,"textDocument"),"typeHierarchy");t.dynamicRegistration=!0}initialize(e,t){let[r,i]=this.getRegistration(t,e.typeHierarchyProvider);!r||!i||this.register({id:r,registerOptions:i})}registerLanguageProvider(e){let t=this._client,r=new Gd(t);return[hR.languages.registerTypeHierarchyProvider(t.protocol2CodeConverter.asDocumentSelector(e.documentSelector),r),r]}};pa.TypeHierarchyFeature=Jd});var Fb=E(ga=>{"use strict";Object.defineProperty(ga,"__esModule",{value:!0});ga.InlineValueFeature=void 0;var Ib=require("vscode"),ha=fe(),ao=Ee(),Xd=class extends ao.TextDocumentLanguageFeature{constructor(e){super(e,ha.InlineValueRequest.type)}fillClientCapabilities(e){(0,ao.ensure)((0,ao.ensure)(e,"textDocument"),"inlineValue").dynamicRegistration=!0,(0,ao.ensure)((0,ao.ensure)(e,"workspace"),"inlineValue").refreshSupport=!0}initialize(e,t){this._client.onRequest(ha.InlineValueRefreshRequest.type,async()=>{for(let o of this.getAllProviders())o.onDidChangeInlineValues.fire()});let[r,i]=this.getRegistration(t,e.inlineValueProvider);!r||!i||this.register({id:r,registerOptions:i})}registerLanguageProvider(e){let t=e.documentSelector,r=new Ib.EventEmitter,i={onDidChangeInlineValues:r.event,provideInlineValues:(o,s,a,c)=>{let u=this._client,d=(m,y,v,T)=>{let P={textDocument:u.code2ProtocolConverter.asTextDocumentIdentifier(m),range:u.code2ProtocolConverter.asRange(y),context:u.code2ProtocolConverter.asInlineValueContext(v)};return u.sendRequest(ha.InlineValueRequest.type,P,T).then(q=>T.isCancellationRequested?null:u.protocol2CodeConverter.asInlineValues(q,T),q=>u.handleFailedRequest(ha.InlineValueRequest.type,T,q,null))},g=u.middleware;return g.provideInlineValues?g.provideInlineValues(o,s,a,c,d):d(o,s,a,c)}};return[this.registerProvider(t,i),{provider:i,onDidChangeInlineValues:r}]}registerProvider(e,t){return Ib.languages.registerInlineValuesProvider(this._client.protocol2CodeConverter.asDocumentSelector(e),t)}};ga.InlineValueFeature=Xd});var Mb=E(ma=>{"use strict";Object.defineProperty(ma,"__esModule",{value:!0});ma.InlayHintsFeature=void 0;var Ob=require("vscode"),Ci=fe(),co=Ee(),Qd=class extends co.TextDocumentLanguageFeature{constructor(e){super(e,Ci.InlayHintRequest.type)}fillClientCapabilities(e){let t=(0,co.ensure)((0,co.ensure)(e,"textDocument"),"inlayHint");t.dynamicRegistration=!0,t.resolveSupport={properties:["tooltip","textEdits","label.tooltip","label.location","label.command"]},(0,co.ensure)((0,co.ensure)(e,"workspace"),"inlayHint").refreshSupport=!0}initialize(e,t){this._client.onRequest(Ci.InlayHintRefreshRequest.type,async()=>{for(let o of this.getAllProviders())o.onDidChangeInlayHints.fire()});let[r,i]=this.getRegistration(t,e.inlayHintProvider);!r||!i||this.register({id:r,registerOptions:i})}registerLanguageProvider(e){let t=e.documentSelector,r=new Ob.EventEmitter,i={onDidChangeInlayHints:r.event,provideInlayHints:(o,s,a)=>{let c=this._client,u=async(g,m,y)=>{let v={textDocument:c.code2ProtocolConverter.asTextDocumentIdentifier(g),range:c.code2ProtocolConverter.asRange(m)};try{let T=await c.sendRequest(Ci.InlayHintRequest.type,v,y);return y.isCancellationRequested?null:c.protocol2CodeConverter.asInlayHints(T,y)}catch(T){return c.handleFailedRequest(Ci.InlayHintRequest.type,y,T,null)}},d=c.middleware;return d.provideInlayHints?d.provideInlayHints(o,s,a,u):u(o,s,a)}};return i.resolveInlayHint=e.resolveProvider===!0?(o,s)=>{let a=this._client,c=async(d,g)=>{try{let m=await a.sendRequest(Ci.InlayHintResolveRequest.type,a.code2ProtocolConverter.asInlayHint(d),g);if(g.isCancellationRequested)return null;let y=a.protocol2CodeConverter.asInlayHint(m,g);return g.isCancellationRequested?null:y}catch(m){return a.handleFailedRequest(Ci.InlayHintResolveRequest.type,g,m,null)}},u=a.middleware;return u.resolveInlayHint?u.resolveInlayHint(o,s,c):c(o,s)}:void 0,[this.registerProvider(t,i),{provider:i,onDidChangeInlayHints:r}]}registerProvider(e,t){return Ob.languages.registerInlayHintsProvider(this._client.protocol2CodeConverter.asDocumentSelector(e),t)}};ma.InlayHintsFeature=Qd});var Ab=E(va=>{"use strict";Object.defineProperty(va,"__esModule",{value:!0});va.InlineCompletionItemFeature=void 0;var gR=require("vscode"),Yd=fe(),Zd=Ee(),mR=Xe(),ef=class extends Zd.TextDocumentLanguageFeature{constructor(e){super(e,Yd.InlineCompletionRequest.type)}fillClientCapabilities(e){let t=(0,Zd.ensure)((0,Zd.ensure)(e,"textDocument"),"inlineCompletion");t.dynamicRegistration=!0}initialize(e,t){let r=this.getRegistrationOptions(t,e.inlineCompletionProvider);r&&this.register({id:mR.generateUuid(),registerOptions:r})}registerLanguageProvider(e){let t=e.documentSelector,r={provideInlineCompletionItems:(i,o,s,a)=>{let c=this._client,u=this._client.middleware,d=(g,m,y,v)=>c.sendRequest(Yd.InlineCompletionRequest.type,c.code2ProtocolConverter.asInlineCompletionParams(g,m,y),v).then(T=>v.isCancellationRequested?null:c.protocol2CodeConverter.asInlineCompletionResult(T,v),T=>c.handleFailedRequest(Yd.InlineCompletionRequest.type,v,T,null));return u.provideInlineCompletionItems?u.provideInlineCompletionItems(i,o,s,a,d):d(i,o,s,a)}};return[gR.languages.registerInlineCompletionItemProvider(this._client.protocol2CodeConverter.asDocumentSelector(t),r),r]}};va.InlineCompletionItemFeature=ef});var af=E(bt=>{"use strict";Object.defineProperty(bt,"__esModule",{value:!0});bt.ProposedFeatures=bt.BaseLanguageClient=bt.MessageTransports=bt.SuspendMode=bt.State=bt.CloseAction=bt.ErrorAction=bt.RevealOutputChannelOn=void 0;var Le=require("vscode"),$=fe(),vR=fy(),yR=gy(),kn=un(),ya=_s(),Lb=Xe(),bR=ol(),Pn=Ee(),wR=Tl(),Nb=zy(),jb=Gy(),Di=Jy(),CR=Xy(),DR=Qy(),SR=Yy(),_R=eb(),TR=tb(),RR=Xl(),PR=rb(),kR=ib(),ER=ob(),xR=ab(),tf=cb(),qR=lb(),IR=db(),FR=pb(),OR=hb(),MR=gb(),AR=mb(),LR=vb(),NR=yb(),jR=wb(),$R=Cb(),UR=Db(),HR=_b(),WR=Tb(),KR=Rb(),Si=Eb(),VR=xb(),zR=qb(),BR=Fb(),GR=Mb(),JR=Ab(),jr;(function(n){n[n.Debug=0]="Debug",n[n.Info=1]="Info",n[n.Warn=2]="Warn",n[n.Error=3]="Error",n[n.Never=4]="Never"})(jr||(bt.RevealOutputChannelOn=jr={}));var lo;(function(n){n[n.Continue=1]="Continue",n[n.Shutdown=2]="Shutdown"})(lo||(bt.ErrorAction=lo={}));var Dr;(function(n){n[n.DoNotRestart=1]="DoNotRestart",n[n.Restart=2]="Restart"})(Dr||(bt.CloseAction=Dr={}));var uo;(function(n){n[n.Stopped=1]="Stopped",n[n.Starting=3]="Starting",n[n.Running=2]="Running"})(uo||(bt.State=uo={}));var $b;(function(n){n.off="off",n.on="on"})($b||(bt.SuspendMode=$b={}));var nf;(function(n){function e(t){return t==null?!1:typeof t=="boolean"||typeof t=="object"&&t!==null&&kn.stringArray(t.enabledCommands)?t:!1}n.sanitizeIsTrusted=e})(nf||(nf={}));var rf=class{constructor(e,t){this.client=e,this.maxRestartCount=t,this.restarts=[]}error(e,t,r){return r&&r<=3?{action:lo.Continue}:{action:lo.Shutdown}}closed(){return this.restarts.push(Date.now()),this.restarts.length<=this.maxRestartCount?{action:Dr.Restart}:this.restarts[this.restarts.length-1]-this.restarts[0]<=3*60*1e3?{action:Dr.DoNotRestart,message:`The ${this.client.name} server crashed ${this.maxRestartCount+1} times in the last 3 minutes. The server will not be restarted. See the output for more information.`}:(this.restarts.shift(),{action:Dr.Restart})}},we;(function(n){n.Initial="initial",n.Starting="starting",n.StartFailed="startFailed",n.Running="running",n.Stopping="stopping",n.Stopped="stopped"})(we||(we={}));var Ub;(function(n){function e(t){return t&&$.MessageReader.is(t.reader)&&$.MessageWriter.is(t.writer)}n.is=e})(Ub||(bt.MessageTransports=Ub={}));var fo=class n{constructor(e,t,r){this._traceFormat=$.TraceFormat.Text,this._diagnosticQueue=new Map,this._diagnosticQueueState={state:"idle"},this._features=[],this._dynamicFeatures=new Map,this.workspaceEditLock=new ya.Semaphore(1),this._id=e,this._name=t,r=r||{};let i={isTrusted:!1,supportHtml:!1};r.markdown!==void 0&&(i.isTrusted=nf.sanitizeIsTrusted(r.markdown.isTrusted),i.supportHtml=r.markdown.supportHtml===!0),this._clientOptions={documentSelector:r.documentSelector??[],synchronize:r.synchronize??{},diagnosticCollectionName:r.diagnosticCollectionName,outputChannelName:r.outputChannelName??this._name,revealOutputChannelOn:r.revealOutputChannelOn??jr.Error,stdioEncoding:r.stdioEncoding??"utf8",initializationOptions:r.initializationOptions,initializationFailedHandler:r.initializationFailedHandler,progressOnInitialization:!!r.progressOnInitialization,errorHandler:r.errorHandler??this.createDefaultErrorHandler(r.connectionOptions?.maxRestartCount),middleware:r.middleware??{},uriConverters:r.uriConverters,workspaceFolder:r.workspaceFolder,connectionOptions:r.connectionOptions,markdown:i,diagnosticPullOptions:r.diagnosticPullOptions??{onChange:!0,onSave:!1},notebookDocumentOptions:r.notebookDocumentOptions??{}},this._clientOptions.synchronize=this._clientOptions.synchronize||{},this._state=we.Initial,this._ignoredRegistrations=new Set,this._listeners=[],this._notificationHandlers=new Map,this._pendingNotificationHandlers=new Map,this._notificationDisposables=new Map,this._requestHandlers=new Map,this._pendingRequestHandlers=new Map,this._requestDisposables=new Map,this._progressHandlers=new Map,this._pendingProgressHandlers=new Map,this._progressDisposables=new Map,this._connection=void 0,this._initializeResult=void 0,r.outputChannel?(this._outputChannel=r.outputChannel,this._disposeOutputChannel=!1):(this._outputChannel=void 0,this._disposeOutputChannel=!0),this._traceOutputChannel=r.traceOutputChannel,this._diagnostics=void 0,this._pendingOpenNotifications=new Set,this._pendingChangeSemaphore=new ya.Semaphore(1),this._pendingChangeDelayer=new ya.Delayer(250),this._fileEvents=[],this._fileEventDelayer=new ya.Delayer(250),this._onStop=void 0,this._telemetryEmitter=new $.Emitter,this._stateChangeEmitter=new $.Emitter,this._trace=$.Trace.Off,this._tracer={log:(o,s)=>{kn.string(o)?this.logTrace(o,s):this.logObjectTrace(o)}},this._c2p=vR.createConverter(r.uriConverters?r.uriConverters.code2Protocol:void 0),this._p2c=yR.createConverter(r.uriConverters?r.uriConverters.protocol2Code:void 0,this._clientOptions.markdown.isTrusted,this._clientOptions.markdown.supportHtml),this._syncedDocuments=new Map,this.registerBuiltinFeatures()}get name(){return this._name}get middleware(){return this._clientOptions.middleware??Object.create(null)}get clientOptions(){return this._clientOptions}get protocol2CodeConverter(){return this._p2c}get code2ProtocolConverter(){return this._c2p}get onTelemetry(){return this._telemetryEmitter.event}get onDidChangeState(){return this._stateChangeEmitter.event}get outputChannel(){return this._outputChannel||(this._outputChannel=Le.window.createOutputChannel(this._clientOptions.outputChannelName?this._clientOptions.outputChannelName:this._name)),this._outputChannel}get traceOutputChannel(){return this._traceOutputChannel?this._traceOutputChannel:this.outputChannel}get diagnostics(){return this._diagnostics}get state(){return this.getPublicState()}get $state(){return this._state}set $state(e){let t=this.getPublicState();this._state=e;let r=this.getPublicState();r!==t&&this._stateChangeEmitter.fire({oldState:t,newState:r})}getPublicState(){switch(this.$state){case we.Starting:return uo.Starting;case we.Running:return uo.Running;default:return uo.Stopped}}get initializeResult(){return this._initializeResult}async sendRequest(e,...t){if(this.$state===we.StartFailed||this.$state===we.Stopping||this.$state===we.Stopped)return Promise.reject(new $.ResponseError($.ErrorCodes.ConnectionInactive,"Client is not running"));let r=await this.$start();this._didChangeTextDocumentFeature.syncKind===$.TextDocumentSyncKind.Full&&await this.sendPendingFullTextDocumentChanges(r);let i=this._clientOptions.middleware?.sendRequest;if(i!==void 0){let o,s;return t.length===1?$.CancellationToken.is(t[0])?s=t[0]:o=t[0]:t.length===2&&(o=t[0],s=t[1]),i(e,o,s,(a,c,u)=>{let d=[];return c!==void 0&&d.push(c),u!==void 0&&d.push(u),r.sendRequest(a,...d)})}else return r.sendRequest(e,...t)}onRequest(e,t){let r=typeof e=="string"?e:e.method;this._requestHandlers.set(r,t);let i=this.activeConnection(),o;return i!==void 0?(this._requestDisposables.set(r,i.onRequest(e,t)),o={dispose:()=>{let s=this._requestDisposables.get(r);s!==void 0&&(s.dispose(),this._requestDisposables.delete(r))}}):(this._pendingRequestHandlers.set(r,t),o={dispose:()=>{this._pendingRequestHandlers.delete(r);let s=this._requestDisposables.get(r);s!==void 0&&(s.dispose(),this._requestDisposables.delete(r))}}),{dispose:()=>{this._requestHandlers.delete(r),o.dispose()}}}async sendNotification(e,t){if(this.$state===we.StartFailed||this.$state===we.Stopping||this.$state===we.Stopped)return Promise.reject(new $.ResponseError($.ErrorCodes.ConnectionInactive,"Client is not running"));let r=this._didChangeTextDocumentFeature.syncKind===$.TextDocumentSyncKind.Full,i;r&&typeof e!="string"&&e.method===$.DidOpenTextDocumentNotification.method&&(i=t?.textDocument.uri,this._pendingOpenNotifications.add(i));let o=await this.$start();r&&await this.sendPendingFullTextDocumentChanges(o),i!==void 0&&this._pendingOpenNotifications.delete(i);let s=this._clientOptions.middleware?.sendNotification;return s?s(e,o.sendNotification.bind(o),t):o.sendNotification(e,t)}onNotification(e,t){let r=typeof e=="string"?e:e.method;this._notificationHandlers.set(r,t);let i=this.activeConnection(),o;return i!==void 0?(this._notificationDisposables.set(r,i.onNotification(e,t)),o={dispose:()=>{let s=this._notificationDisposables.get(r);s!==void 0&&(s.dispose(),this._notificationDisposables.delete(r))}}):(this._pendingNotificationHandlers.set(r,t),o={dispose:()=>{this._pendingNotificationHandlers.delete(r);let s=this._notificationDisposables.get(r);s!==void 0&&(s.dispose(),this._notificationDisposables.delete(r))}}),{dispose:()=>{this._notificationHandlers.delete(r),o.dispose()}}}async sendProgress(e,t,r){if(this.$state===we.StartFailed||this.$state===we.Stopping||this.$state===we.Stopped)return Promise.reject(new $.ResponseError($.ErrorCodes.ConnectionInactive,"Client is not running"));try{return(await this.$start()).sendProgress(e,t,r)}catch(i){throw this.error(`Sending progress for token ${t} failed.`,i),i}}onProgress(e,t,r){this._progressHandlers.set(t,{type:e,handler:r});let i=this.activeConnection(),o,s=this._clientOptions.middleware?.handleWorkDoneProgress,a=$.WorkDoneProgress.is(e)&&s!==void 0?c=>{s(t,c,()=>r(c))}:r;return i!==void 0?(this._progressDisposables.set(t,i.onProgress(e,t,a)),o={dispose:()=>{let c=this._progressDisposables.get(t);c!==void 0&&(c.dispose(),this._progressDisposables.delete(t))}}):(this._pendingProgressHandlers.set(t,{type:e,handler:r}),o={dispose:()=>{this._pendingProgressHandlers.delete(t);let c=this._progressDisposables.get(t);c!==void 0&&(c.dispose(),this._progressDisposables.delete(t))}}),{dispose:()=>{this._progressHandlers.delete(t),o.dispose()}}}createDefaultErrorHandler(e){if(e!==void 0&&e<0)throw new Error(`Invalid maxRestartCount: ${e}`);return new rf(this,e??4)}async setTrace(e){this._trace=e;let t=this.activeConnection();t!==void 0&&await t.trace(this._trace,this._tracer,{sendNotification:!1,traceFormat:this._traceFormat})}data2String(e){if(e instanceof $.ResponseError){let t=e;return` Message: ${t.message}
49
49
  Code: ${t.code} ${t.data?`
50
50
  `+t.data.toString():""}`}return e instanceof Error?kn.string(e.stack)?e.stack:e.message:kn.string(e)?e:e.toString()}debug(e,t,r=!0){this.logOutputMessage($.MessageType.Debug,jr.Debug,"Debug",e,t,r)}info(e,t,r=!0){this.logOutputMessage($.MessageType.Info,jr.Info,"Info",e,t,r)}warn(e,t,r=!0){this.logOutputMessage($.MessageType.Warning,jr.Warn,"Warn",e,t,r)}error(e,t,r=!0){this.logOutputMessage($.MessageType.Error,jr.Error,"Error",e,t,r)}logOutputMessage(e,t,r,i,o,s){this.outputChannel.appendLine(`[${r.padEnd(5)} - ${new Date().toLocaleTimeString()}] ${i}`),o!=null&&this.outputChannel.appendLine(this.data2String(o)),(s==="force"||s&&this._clientOptions.revealOutputChannelOn<=t)&&this.showNotificationMessage(e,i)}showNotificationMessage(e,t){t=t??"A request has failed. See the output for more information.",(e===$.MessageType.Error?Le.window.showErrorMessage:e===$.MessageType.Warning?Le.window.showWarningMessage:Le.window.showInformationMessage)(t,"Go to output").then(i=>{i!==void 0&&this.outputChannel.show(!0)})}logTrace(e,t){this.traceOutputChannel.appendLine(`[Trace - ${new Date().toLocaleTimeString()}] ${e}`),t&&this.traceOutputChannel.appendLine(this.data2String(t))}logObjectTrace(e){e.isLSPMessage&&e.type?this.traceOutputChannel.append(`[LSP - ${new Date().toLocaleTimeString()}] `):this.traceOutputChannel.append(`[Trace - ${new Date().toLocaleTimeString()}] `),e&&this.traceOutputChannel.appendLine(`${JSON.stringify(e)}`)}needsStart(){return this.$state===we.Initial||this.$state===we.Stopping||this.$state===we.Stopped}needsStop(){return this.$state===we.Starting||this.$state===we.Running}activeConnection(){return this.$state===we.Running&&this._connection!==void 0?this._connection:void 0}isRunning(){return this.$state===we.Running}async start(){if(this._disposed==="disposing"||this._disposed==="disposed")throw new Error("Client got disposed and can't be restarted.");if(this.$state===we.Stopping)throw new Error("Client is currently stopping. Can only restart a full stopped client");if(this._onStart!==void 0)return this._onStart;let[e,t,r]=this.createOnStartPromise();this._onStart=e,this._diagnostics===void 0&&(this._diagnostics=this._clientOptions.diagnosticCollectionName?Le.languages.createDiagnosticCollection(this._clientOptions.diagnosticCollectionName):Le.languages.createDiagnosticCollection());for(let[i,o]of this._notificationHandlers)this._pendingNotificationHandlers.has(i)||this._pendingNotificationHandlers.set(i,o);for(let[i,o]of this._requestHandlers)this._pendingRequestHandlers.has(i)||this._pendingRequestHandlers.set(i,o);for(let[i,o]of this._progressHandlers)this._pendingProgressHandlers.has(i)||this._pendingProgressHandlers.set(i,o);this.$state=we.Starting;try{let i=await this.createConnection();i.onNotification($.LogMessageNotification.type,o=>{switch(o.type){case $.MessageType.Error:this.error(o.message,void 0,!1);break;case $.MessageType.Warning:this.warn(o.message,void 0,!1);break;case $.MessageType.Info:this.info(o.message,void 0,!1);break;case $.MessageType.Debug:this.debug(o.message,void 0,!1);break;default:this.outputChannel.appendLine(o.message)}}),i.onNotification($.ShowMessageNotification.type,o=>{switch(o.type){case $.MessageType.Error:Le.window.showErrorMessage(o.message);break;case $.MessageType.Warning:Le.window.showWarningMessage(o.message);break;case $.MessageType.Info:Le.window.showInformationMessage(o.message);break;default:Le.window.showInformationMessage(o.message)}}),i.onRequest($.ShowMessageRequest.type,o=>{let s;switch(o.type){case $.MessageType.Error:s=Le.window.showErrorMessage;break;case $.MessageType.Warning:s=Le.window.showWarningMessage;break;case $.MessageType.Info:s=Le.window.showInformationMessage;break;default:s=Le.window.showInformationMessage}let a=o.actions||[];return s(o.message,...a)}),i.onNotification($.TelemetryEventNotification.type,o=>{this._telemetryEmitter.fire(o)}),i.onRequest($.ShowDocumentRequest.type,async o=>{let s=async c=>{let u=this.protocol2CodeConverter.asUri(c.uri);try{if(c.external===!0)return{success:await Le.env.openExternal(u)};{let d={};return c.selection!==void 0&&(d.selection=this.protocol2CodeConverter.asRange(c.selection)),c.takeFocus===void 0||c.takeFocus===!1?d.preserveFocus=!0:c.takeFocus===!0&&(d.preserveFocus=!1),await Le.window.showTextDocument(u,d),{success:!0}}}catch{return{success:!1}}},a=this._clientOptions.middleware.window?.showDocument;return a!==void 0?a(o,s):s(o)}),i.listen(),await this.initialize(i),t()}catch(i){this.$state=we.StartFailed,this.error(`${this._name} client: couldn't create connection to server.`,i,"force"),r(i)}return this._onStart}createOnStartPromise(){let e,t;return[new Promise((i,o)=>{e=i,t=o}),e,t]}async initialize(e){this.refreshTrace(e,!1);let t=this._clientOptions.initializationOptions,[r,i]=this._clientOptions.workspaceFolder!==void 0?[this._clientOptions.workspaceFolder.uri.fsPath,[{uri:this._c2p.asUri(this._clientOptions.workspaceFolder.uri),name:this._clientOptions.workspaceFolder.name}]]:[this._clientGetRootPath(),null],o={processId:null,clientInfo:{name:Le.env.appName,version:Le.version},locale:this.getLocale(),rootPath:r||null,rootUri:r?this._c2p.asUri(Le.Uri.file(r)):null,capabilities:this.computeClientCapabilities(),initializationOptions:kn.func(t)?t():t,trace:$.Trace.toString(this._trace),workspaceFolders:i};if(this.fillInitializeParams(o),this._clientOptions.progressOnInitialization){let s=Lb.generateUuid(),a=new bR.ProgressPart(e,s);o.workDoneToken=s;try{let c=await this.doInitialize(e,o);return a.done(),c}catch(c){throw a.cancel(),c}}else return this.doInitialize(e,o)}async doInitialize(e,t){try{let r=await e.initialize(t);if(r.capabilities.positionEncoding!==void 0&&r.capabilities.positionEncoding!==$.PositionEncodingKind.UTF16)throw new Error(`Unsupported position encoding (${r.capabilities.positionEncoding}) received from server ${this.name}`);this._initializeResult=r,this.$state=we.Running;let i;kn.number(r.capabilities.textDocumentSync)?r.capabilities.textDocumentSync===$.TextDocumentSyncKind.None?i={openClose:!1,change:$.TextDocumentSyncKind.None,save:void 0}:i={openClose:!0,change:r.capabilities.textDocumentSync,save:{includeText:!1}}:r.capabilities.textDocumentSync!==void 0&&r.capabilities.textDocumentSync!==null&&(i=r.capabilities.textDocumentSync),this._capabilities=Object.assign({},r.capabilities,{resolvedTextDocumentSync:i}),e.onNotification($.PublishDiagnosticsNotification.type,o=>this.handleDiagnostics(o)),e.onRequest($.RegistrationRequest.type,o=>this.handleRegistrationRequest(o)),e.onRequest("client/registerFeature",o=>this.handleRegistrationRequest(o)),e.onRequest($.UnregistrationRequest.type,o=>this.handleUnregistrationRequest(o)),e.onRequest("client/unregisterFeature",o=>this.handleUnregistrationRequest(o)),e.onRequest($.ApplyWorkspaceEditRequest.type,o=>this.handleApplyWorkspaceEdit(o));for(let[o,s]of this._pendingNotificationHandlers)this._notificationDisposables.set(o,e.onNotification(o,s));this._pendingNotificationHandlers.clear();for(let[o,s]of this._pendingRequestHandlers)this._requestDisposables.set(o,e.onRequest(o,s));this._pendingRequestHandlers.clear();for(let[o,s]of this._pendingProgressHandlers)this._progressDisposables.set(o,e.onProgress(s.type,o,s.handler));return this._pendingProgressHandlers.clear(),await e.sendNotification($.InitializedNotification.type,{}),this.hookFileEvents(e),this.hookConfigurationChanged(e),this.initializeFeatures(e),r}catch(r){throw this._clientOptions.initializationFailedHandler?this._clientOptions.initializationFailedHandler(r)?this.initialize(e):this.stop():r instanceof $.ResponseError&&r.data&&r.data.retry?Le.window.showErrorMessage(r.message,{title:"Retry",id:"retry"}).then(i=>{i&&i.id==="retry"?this.initialize(e):this.stop()}):(r&&r.message&&Le.window.showErrorMessage(r.message),this.error("Server initialization failed.",r),this.stop()),r}}_clientGetRootPath(){let e=Le.workspace.workspaceFolders;if(!e||e.length===0)return;let t=e[0];if(t.uri.scheme==="file")return t.uri.fsPath}stop(e=2e3){return this.shutdown("stop",e)}dispose(e=2e3){try{return this._disposed="disposing",this.stop(e)}finally{this._disposed="disposed"}}async shutdown(e,t){if(this.$state===we.Stopped||this.$state===we.Initial)return;if(this.$state===we.Stopping){if(this._onStop!==void 0)return this._onStop;throw new Error("Client is stopping but no stop promise available.")}let r=this.activeConnection();if(r===void 0||this.$state!==we.Running)throw new Error(`Client is not running and can't be stopped. It's current state is: ${this.$state}`);this._initializeResult=void 0,this.$state=we.Stopping,this.cleanUp(e);let i=new Promise(s=>{(0,$.RAL)().timer.setTimeout(s,t)}),o=(async s=>(await s.shutdown(),await s.exit(),s))(r);return this._onStop=Promise.race([i,o]).then(s=>{if(s!==void 0)s.end(),s.dispose();else throw this.error("Stopping server timed out",void 0,!1),new Error("Stopping the server timed out")},s=>{throw this.error("Stopping server failed",s,!1),s}).finally(()=>{this.$state=we.Stopped,e==="stop"&&this.cleanUpChannel(),this._onStart=void 0,this._onStop=void 0,this._connection=void 0,this._ignoredRegistrations.clear()})}cleanUp(e){this._fileEvents=[],this._fileEventDelayer.cancel();let t=this._listeners.splice(0,this._listeners.length);for(let r of t)r.dispose();this._syncedDocuments&&this._syncedDocuments.clear();for(let r of Array.from(this._features.entries()).map(i=>i[1]).reverse())r.clear();e==="stop"&&this._diagnostics!==void 0&&(this._diagnostics.dispose(),this._diagnostics=void 0),this._idleInterval!==void 0&&(this._idleInterval.dispose(),this._idleInterval=void 0)}cleanUpChannel(){this._outputChannel!==void 0&&this._disposeOutputChannel&&(this._outputChannel.dispose(),this._outputChannel=void 0)}notifyFileEvent(e){let t=this;async function r(o){return t._fileEvents.push(o),t._fileEventDelayer.trigger(async()=>{await t.sendNotification($.DidChangeWatchedFilesNotification.type,{changes:t._fileEvents}),t._fileEvents=[]})}let i=this.clientOptions.middleware?.workspace;(i?.didChangeWatchedFile?i.didChangeWatchedFile(e,r):r(e)).catch(o=>{t.error("Notify file events failed.",o)})}async sendPendingFullTextDocumentChanges(e){return this._pendingChangeSemaphore.lock(async()=>{try{let t=this._didChangeTextDocumentFeature.getPendingDocumentChanges(this._pendingOpenNotifications);if(t.length===0)return;for(let r of t){let i=this.code2ProtocolConverter.asChangeTextDocumentParams(r);await e.sendNotification($.DidChangeTextDocumentNotification.type,i),this._didChangeTextDocumentFeature.notificationSent(r,$.DidChangeTextDocumentNotification.type,i)}}catch(t){throw this.error("Sending pending changes failed",t,!1),t}})}triggerPendingChangeDelivery(){this._pendingChangeDelayer.trigger(async()=>{let e=this.activeConnection();if(e===void 0){this.triggerPendingChangeDelivery();return}await this.sendPendingFullTextDocumentChanges(e)}).catch(e=>this.error("Delivering pending changes failed",e,!1))}handleDiagnostics(e){if(!this._diagnostics)return;let t=e.uri;this._diagnosticQueueState.state==="busy"&&this._diagnosticQueueState.document===t&&this._diagnosticQueueState.tokenSource.cancel(),this._diagnosticQueue.set(e.uri,e.diagnostics),this.triggerDiagnosticQueue()}triggerDiagnosticQueue(){(0,$.RAL)().timer.setImmediate(()=>{this.workDiagnosticQueue()})}workDiagnosticQueue(){if(this._diagnosticQueueState.state==="busy")return;let e=this._diagnosticQueue.entries().next();if(e.done===!0)return;let[t,r]=e.value;this._diagnosticQueue.delete(t);let i=new Le.CancellationTokenSource;this._diagnosticQueueState={state:"busy",document:t,tokenSource:i},this._p2c.asDiagnostics(r,i.token).then(o=>{if(!i.token.isCancellationRequested){let s=this._p2c.asUri(t),a=this.clientOptions.middleware;a.handleDiagnostics?a.handleDiagnostics(s,o,(c,u)=>this.setDiagnostics(c,u)):this.setDiagnostics(s,o)}}).finally(()=>{this._diagnosticQueueState={state:"idle"},this.triggerDiagnosticQueue()})}setDiagnostics(e,t){this._diagnostics&&this._diagnostics.set(e,t)}getLocale(){return Le.env.language}async $start(){if(this.$state===we.StartFailed)throw new Error("Previous start failed. Can't restart server.");await this.start();let e=this.activeConnection();if(e===void 0)throw new Error("Starting server failed");return e}async createConnection(){let e=(i,o,s)=>{this.handleConnectionError(i,o,s).catch(a=>this.error("Handling connection error failed",a))},t=()=>{this.handleConnectionClosed().catch(i=>this.error("Handling connection close failed",i))},r=await this.createMessageTransports(this._clientOptions.stdioEncoding||"utf8");return this._connection=XR(r.reader,r.writer,e,t,this._clientOptions.connectionOptions),this._connection}async handleConnectionClosed(){if(this.$state===we.Stopped)return;try{this._connection!==void 0&&this._connection.dispose()}catch{}let e={action:Dr.DoNotRestart};if(this.$state!==we.Stopping)try{e=await this._clientOptions.errorHandler.closed()}catch{}this._connection=void 0,e.action===Dr.DoNotRestart?(this.error(e.message??"Connection to server got closed. Server will not be restarted.",void 0,e.handled===!0?!1:"force"),this.cleanUp("stop"),this.$state===we.Starting?this.$state=we.StartFailed:this.$state=we.Stopped,this._onStop=Promise.resolve(),this._onStart=void 0):e.action===Dr.Restart&&(this.info(e.message??"Connection to server got closed. Server will restart.",!e.handled),this.cleanUp("restart"),this.$state=we.Initial,this._onStop=Promise.resolve(),this._onStart=void 0,this.start().catch(t=>this.error("Restarting server failed",t,"force")))}async handleConnectionError(e,t,r){let i=await this._clientOptions.errorHandler.error(e,t,r);i.action===lo.Shutdown?(this.error(i.message??`Client ${this._name}: connection to server is erroring.
51
51
  ${e.message}
52
52
  Shutting down server.`,void 0,i.handled===!0?!1:"force"),this.stop().catch(o=>{this.error("Stopping server failed",o,!1)})):this.error(i.message??`Client ${this._name}: connection to server is erroring.
53
- ${e.message}`,void 0,i.handled===!0?!1:"force")}hookConfigurationChanged(e){this._listeners.push(Le.workspace.onDidChangeConfiguration(()=>{this.refreshTrace(e,!0)}))}refreshTrace(e,t=!1){let r=Le.workspace.getConfiguration(this._id),i=$.Trace.Off,o=$.TraceFormat.Text;if(r){let s=r.get("trace.server","off");typeof s=="string"?i=$.Trace.fromString(s):(i=$.Trace.fromString(r.get("trace.server.verbosity","off")),o=$.TraceFormat.fromString(r.get("trace.server.format","text")))}this._trace=i,this._traceFormat=o,e.trace(this._trace,this._tracer,{sendNotification:t,traceFormat:this._traceFormat}).catch(s=>{this.error("Updating trace failed with error",s,!1)})}hookFileEvents(e){let t=this._clientOptions.synchronize.fileEvents;if(!t)return;let r;kn.array(t)?r=t:r=[t],r&&this._dynamicFeatures.get($.DidChangeWatchedFilesNotification.type.method).registerRaw(Lb.generateUuid(),r)}registerFeatures(e){for(let t of e)this.registerFeature(t)}registerFeature(e){if(this._features.push(e),Pn.DynamicFeature.is(e)){let t=e.registrationType;this._dynamicFeatures.set(t.method,e)}}getFeature(e){return this._dynamicFeatures.get(e)}hasDedicatedTextSynchronizationFeature(e){let t=this.getFeature($.NotebookDocumentSyncRegistrationType.method);return t===void 0||!(t instanceof Nb.NotebookDocumentSyncFeature)?!1:t.handles(e)}registerBuiltinFeatures(){let e=new Map;this.registerFeature(new jb.ConfigurationFeature(this)),this.registerFeature(new Di.DidOpenTextDocumentFeature(this,this._syncedDocuments)),this._didChangeTextDocumentFeature=new Di.DidChangeTextDocumentFeature(this,e),this._didChangeTextDocumentFeature.onPendingChangeAdded(()=>{this.triggerPendingChangeDelivery()}),this.registerFeature(this._didChangeTextDocumentFeature),this.registerFeature(new Di.WillSaveFeature(this)),this.registerFeature(new Di.WillSaveWaitUntilFeature(this)),this.registerFeature(new Di.DidSaveTextDocumentFeature(this)),this.registerFeature(new Di.DidCloseTextDocumentFeature(this,this._syncedDocuments,e)),this.registerFeature(new OR.FileSystemWatcherFeature(this,t=>this.notifyFileEvent(t))),this.registerFeature(new CR.CompletionItemFeature(this)),this.registerFeature(new DR.HoverFeature(this)),this.registerFeature(new _R.SignatureHelpFeature(this)),this.registerFeature(new SR.DefinitionFeature(this)),this.registerFeature(new kR.ReferencesFeature(this)),this.registerFeature(new TR.DocumentHighlightFeature(this)),this.registerFeature(new RR.DocumentSymbolFeature(this)),this.registerFeature(new PR.WorkspaceSymbolFeature(this)),this.registerFeature(new ER.CodeActionFeature(this)),this.registerFeature(new xR.CodeLensFeature(this)),this.registerFeature(new tf.DocumentFormattingFeature(this)),this.registerFeature(new tf.DocumentRangeFormattingFeature(this)),this.registerFeature(new tf.DocumentOnTypeFormattingFeature(this)),this.registerFeature(new qR.RenameFeature(this)),this.registerFeature(new IR.DocumentLinkFeature(this)),this.registerFeature(new FR.ExecuteCommandFeature(this)),this.registerFeature(new jb.SyncConfigurationFeature(this)),this.registerFeature(new LR.TypeDefinitionFeature(this)),this.registerFeature(new AR.ImplementationFeature(this)),this.registerFeature(new MR.ColorProviderFeature(this)),this.clientOptions.workspaceFolder===void 0&&this.registerFeature(new NR.WorkspaceFoldersFeature(this)),this.registerFeature(new jR.FoldingRangeFeature(this)),this.registerFeature(new $R.DeclarationFeature(this)),this.registerFeature(new UR.SelectionRangeFeature(this)),this.registerFeature(new HR.ProgressFeature(this)),this.registerFeature(new WR.CallHierarchyFeature(this)),this.registerFeature(new KR.SemanticTokensFeature(this)),this.registerFeature(new VR.LinkedEditingFeature(this)),this.registerFeature(new Si.DidCreateFilesFeature(this)),this.registerFeature(new Si.DidRenameFilesFeature(this)),this.registerFeature(new Si.DidDeleteFilesFeature(this)),this.registerFeature(new Si.WillCreateFilesFeature(this)),this.registerFeature(new Si.WillRenameFilesFeature(this)),this.registerFeature(new Si.WillDeleteFilesFeature(this)),this.registerFeature(new zR.TypeHierarchyFeature(this)),this.registerFeature(new BR.InlineValueFeature(this)),this.registerFeature(new GR.InlayHintsFeature(this)),this.registerFeature(new wR.DiagnosticFeature(this)),this.registerFeature(new Nb.NotebookDocumentSyncFeature(this))}registerProposedFeatures(){this.registerFeatures(sf.createAll(this))}fillInitializeParams(e){for(let t of this._features)kn.func(t.fillInitializeParams)&&t.fillInitializeParams(e)}computeClientCapabilities(){let e={};(0,Pn.ensure)(e,"workspace").applyEdit=!0;let t=(0,Pn.ensure)((0,Pn.ensure)(e,"workspace"),"workspaceEdit");t.documentChanges=!0,t.resourceOperations=[$.ResourceOperationKind.Create,$.ResourceOperationKind.Rename,$.ResourceOperationKind.Delete],t.failureHandling=$.FailureHandlingKind.TextOnlyTransactional,t.normalizesLineEndings=!0,t.changeAnnotationSupport={groupsOnLabel:!0};let r=(0,Pn.ensure)((0,Pn.ensure)(e,"textDocument"),"publishDiagnostics");r.relatedInformation=!0,r.versionSupport=!1,r.tagSupport={valueSet:[$.DiagnosticTag.Unnecessary,$.DiagnosticTag.Deprecated]},r.codeDescriptionSupport=!0,r.dataSupport=!0;let i=(0,Pn.ensure)(e,"window"),o=(0,Pn.ensure)(i,"showMessage");o.messageActionItem={additionalPropertiesSupport:!0};let s=(0,Pn.ensure)(i,"showDocument");s.support=!0;let a=(0,Pn.ensure)(e,"general");a.staleRequestSupport={cancel:!0,retryOnContentModified:Array.from(n.RequestsToCancelOnContentModified)},a.regularExpressions={engine:"ECMAScript",version:"ES2020"},a.markdown={parser:"marked",version:"1.1.0"},a.positionEncodings=["utf-16"],this._clientOptions.markdown.supportHtml&&(a.markdown.allowedTags=["ul","li","p","code","blockquote","ol","h1","h2","h3","h4","h5","h6","hr","em","pre","table","thead","tbody","tr","th","td","div","del","a","strong","br","img","span"]);for(let c of this._features)c.fillClientCapabilities(e);return e}initializeFeatures(e){let t=this._clientOptions.documentSelector;for(let r of this._features)kn.func(r.preInitialize)&&r.preInitialize(this._capabilities,t);for(let r of this._features)r.initialize(this._capabilities,t)}async handleRegistrationRequest(e){let t=this.clientOptions.middleware?.handleRegisterCapability;return t?t(e,r=>this.doRegisterCapability(r)):this.doRegisterCapability(e)}async doRegisterCapability(e){if(!this.isRunning()){for(let t of e.registrations)this._ignoredRegistrations.add(t.id);return}for(let t of e.registrations){let r=this._dynamicFeatures.get(t.method);if(r===void 0)return Promise.reject(new Error(`No feature implementation for ${t.method} found. Registration failed.`));let i=t.registerOptions??{};i.documentSelector=i.documentSelector??this._clientOptions.documentSelector;let o={id:t.id,registerOptions:i};try{r.register(o)}catch(s){return Promise.reject(s)}}}async handleUnregistrationRequest(e){let t=this.clientOptions.middleware?.handleUnregisterCapability;return t?t(e,r=>this.doUnregisterCapability(r)):this.doUnregisterCapability(e)}async doUnregisterCapability(e){for(let t of e.unregisterations){if(this._ignoredRegistrations.has(t.id))continue;let r=this._dynamicFeatures.get(t.method);if(!r)return Promise.reject(new Error(`No feature implementation for ${t.method} found. Unregistration failed.`));r.unregister(t.id)}}async handleApplyWorkspaceEdit(e){let t=e.edit,r=await this.workspaceEditLock.lock(()=>this._p2c.asWorkspaceEdit(t)),i=new Map;Le.workspace.textDocuments.forEach(s=>i.set(s.uri.toString(),s));let o=!1;if(t.documentChanges){for(let s of t.documentChanges)if($.TextDocumentEdit.is(s)&&s.textDocument.version&&s.textDocument.version>=0){let a=this._p2c.asUri(s.textDocument.uri).toString(),c=i.get(a);if(c&&c.version!==s.textDocument.version){o=!0;break}}}return o?Promise.resolve({applied:!1}):kn.asPromise(Le.workspace.applyEdit(r).then(s=>({applied:s})))}handleFailedRequest(e,t,r,i,o=!0){if(r instanceof $.ResponseError){if(r.code===$.ErrorCodes.PendingResponseRejected||r.code===$.ErrorCodes.ConnectionInactive)return i;if(r.code===$.LSPErrorCodes.RequestCancelled||r.code===$.LSPErrorCodes.ServerCancelled){if(t!==void 0&&t.isCancellationRequested)return i;throw r.data!==void 0?new Pn.LSPCancellationError(r.data):new Le.CancellationError}else if(r.code===$.LSPErrorCodes.ContentModified){if(n.RequestsToCancelOnContentModified.has(e.method)||n.CancellableResolveCalls.has(e.method))throw new Le.CancellationError;return i}}throw this.error(`Request ${e.method} failed.`,r,o),r}};bt.BaseLanguageClient=fo;fo.RequestsToCancelOnContentModified=new Set([$.SemanticTokensRequest.method,$.SemanticTokensRangeRequest.method,$.SemanticTokensDeltaRequest.method]);fo.CancellableResolveCalls=new Set([$.CompletionResolveRequest.method,$.CodeLensResolveRequest.method,$.CodeActionResolveRequest.method,$.InlayHintResolveRequest.method,$.DocumentLinkResolveRequest.method,$.WorkspaceSymbolResolveRequest.method]);var of=class{error(e){(0,$.RAL)().console.error(e)}warn(e){(0,$.RAL)().console.warn(e)}info(e){(0,$.RAL)().console.info(e)}log(e){(0,$.RAL)().console.log(e)}};function XR(n,e,t,r,i){let o=new of,s=(0,$.createProtocolConnection)(n,e,o,i);return s.onError(c=>{t(c[0],c[1],c[2])}),s.onClose(r),{listen:()=>s.listen(),sendRequest:s.sendRequest,onRequest:s.onRequest,hasPendingResponse:s.hasPendingResponse,sendNotification:s.sendNotification,onNotification:s.onNotification,onProgress:s.onProgress,sendProgress:s.sendProgress,trace:(c,u,d)=>{let g={sendNotification:!1,traceFormat:$.TraceFormat.Text};return d===void 0?s.trace(c,u,g):(kn.boolean(d),s.trace(c,u,d))},initialize:c=>s.sendRequest($.InitializeRequest.type,c),shutdown:()=>s.sendRequest($.ShutdownRequest.type,void 0),exit:()=>s.sendNotification($.ExitNotification.type),end:()=>s.end(),dispose:()=>s.dispose()}}var sf;(function(n){function e(t){return[new JR.InlineCompletionItemFeature(t)]}n.createAll=e})(sf||(bt.ProposedFeatures=sf={}))});var Wb=E(ba=>{"use strict";Object.defineProperty(ba,"__esModule",{value:!0});ba.terminate=void 0;var Hb=require("child_process"),QR=require("path"),YR=process.platform==="win32",ZR=process.platform==="darwin",eP=process.platform==="linux";function tP(n,e){if(YR)try{let i={stdio:["pipe","pipe","ignore"]};return e&&(i.cwd=e),Hb.execFileSync("taskkill",["/T","/F","/PID",n.pid.toString()],i),!0}catch{return!1}else if(eP||ZR)try{var t=(0,QR.join)(__dirname,"terminateProcess.sh"),r=Hb.spawnSync(t,[n.pid.toString()]);return!r.error}catch{return!1}else return n.kill("SIGKILL"),!0}ba.terminate=tP});var cf=E((p0,Kb)=>{"use strict";Kb.exports=fe()});var zb=E(tn=>{"use strict";var nP=tn&&tn.__createBinding||(Object.create?function(n,e,t,r){r===void 0&&(r=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[t]}}),Object.defineProperty(n,r,i)}:function(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]}),uf=tn&&tn.__exportStar||function(n,e){for(var t in n)t!=="default"&&!Object.prototype.hasOwnProperty.call(e,t)&&nP(e,n,t)};Object.defineProperty(tn,"__esModule",{value:!0});tn.DiagnosticPullMode=tn.vsdiag=void 0;uf(fe(),tn);uf(Ee(),tn);var Vb=Tl();Object.defineProperty(tn,"vsdiag",{enumerable:!0,get:function(){return Vb.vsdiag}});Object.defineProperty(tn,"DiagnosticPullMode",{enumerable:!0,get:function(){return Vb.DiagnosticPullMode}});uf(af(),tn)});var Xb=E(Bt=>{"use strict";var rP=Bt&&Bt.__createBinding||(Object.create?function(n,e,t,r){r===void 0&&(r=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[t]}}),Object.defineProperty(n,r,i)}:function(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]}),Jb=Bt&&Bt.__exportStar||function(n,e){for(var t in n)t!=="default"&&!Object.prototype.hasOwnProperty.call(e,t)&&rP(e,n,t)};Object.defineProperty(Bt,"__esModule",{value:!0});Bt.SettingMonitor=Bt.LanguageClient=Bt.TransportKind=void 0;var tr=require("child_process"),lf=require("fs"),df=require("path"),_r=require("vscode"),Qe=un(),Bb=af(),iP=Wb(),et=cf(),oP=ar(),sP=Hr();Jb(cf(),Bt);Jb(zb(),Bt);var Gb="^1.82.0",tt;(function(n){n[n.stdio=0]="stdio",n[n.ipc=1]="ipc",n[n.pipe=2]="pipe",n[n.socket=3]="socket"})(tt||(Bt.TransportKind=tt={}));var Sr;(function(n){function e(t){let r=t;return r&&r.kind===tt.socket&&Qe.number(r.port)}n.isSocket=e})(Sr||(Sr={}));var ff;(function(n){function e(t){return Qe.string(t.command)}n.is=e})(ff||(ff={}));var pf;(function(n){function e(t){return Qe.string(t.module)}n.is=e})(pf||(pf={}));var hf;(function(n){function e(t){let r=t;return r&&r.writer!==void 0&&r.reader!==void 0}n.is=e})(hf||(hf={}));var gf;(function(n){function e(t){let r=t;return r&&r.process!==void 0&&typeof r.detached=="boolean"}n.is=e})(gf||(gf={}));var mf=class extends Bb.BaseLanguageClient{constructor(e,t,r,i,o){let s,a,c,u,d;Qe.string(t)?(s=e,a=t,c=r,u=i,d=!!o):(s=e.toLowerCase(),a=e,c=t,u=r,d=i),d===void 0&&(d=!1),super(s,a,u),this._serverOptions=c,this._forceDebug=d,this._isInDebugMode=d;try{this.checkVersion()}catch(g){throw Qe.string(g.message)&&this.outputChannel.appendLine(g.message),g}}checkVersion(){let e=oP(_r.version);if(!e)throw new Error(`No valid VS Code version detected. Version string is: ${_r.version}`);if(e.prerelease&&e.prerelease.length>0&&(e.prerelease=[]),!sP(e,Gb))throw new Error(`The language client requires VS Code version ${Gb} but received version ${_r.version}`)}get isInDebugMode(){return this._isInDebugMode}async restart(){await this.stop(),this.isInDebugMode?(await new Promise(e=>setTimeout(e,1e3)),await this.start()):await this.start()}stop(e=2e3){return super.stop(e).finally(()=>{if(this._serverProcess){let t=this._serverProcess;this._serverProcess=void 0,(this._isDetached===void 0||!this._isDetached)&&this.checkProcessDied(t),this._isDetached=void 0}})}checkProcessDied(e){!e||e.pid===void 0||setTimeout(()=>{try{e.pid!==void 0&&(process.kill(e.pid,0),(0,iP.terminate)(e))}catch{}},2e3)}handleConnectionClosed(){return this._serverProcess=void 0,super.handleConnectionClosed()}fillInitializeParams(e){super.fillInitializeParams(e),e.processId===null&&(e.processId=process.pid)}createMessageTransports(e){function t(d,g){if(!d&&!g)return;let m=Object.create(null);return Object.keys(process.env).forEach(y=>m[y]=process.env[y]),g&&(m.ELECTRON_RUN_AS_NODE="1",m.ELECTRON_NO_ASAR="1"),d&&Object.keys(d).forEach(y=>m[y]=d[y]),m}let r=["--debug=","--debug-brk=","--inspect=","--inspect-brk="],i=["--debug","--debug-brk","--inspect","--inspect-brk"];function o(){let d=process.execArgv;return d?d.some(g=>r.some(m=>g.startsWith(m))||i.some(m=>g===m)):!1}function s(d){if(d.stdin===null||d.stdout===null||d.stderr===null)throw new Error("Process created without stdio streams")}let a=this._serverOptions;if(Qe.func(a))return a().then(d=>{if(Bb.MessageTransports.is(d))return this._isDetached=!!d.detached,d;if(hf.is(d))return this._isDetached=!!d.detached,{reader:new et.StreamMessageReader(d.reader),writer:new et.StreamMessageWriter(d.writer)};{let g;return gf.is(d)?(g=d.process,this._isDetached=d.detached):(g=d,this._isDetached=!1),g.stderr.on("data",m=>this.outputChannel.append(Qe.string(m)?m:m.toString(e))),{reader:new et.StreamMessageReader(g.stdout),writer:new et.StreamMessageWriter(g.stdin)}}});let c,u=a;return u.run||u.debug?this._forceDebug||o()?(c=u.debug,this._isInDebugMode=!0):(c=u.run,this._isInDebugMode=!1):c=a,this._getServerWorkingDir(c.options).then(d=>{if(pf.is(c)&&c.module){let g=c,m=g.transport||tt.stdio;if(g.runtime){let y=[],v=g.options??Object.create(null);v.execArgv&&v.execArgv.forEach(A=>y.push(A)),y.push(g.module),g.args&&g.args.forEach(A=>y.push(A));let T=Object.create(null);T.cwd=d,T.env=t(v.env,!1);let P=this._getRuntimePath(g.runtime,d),q;if(m===tt.ipc?(T.stdio=[null,null,null,"ipc"],y.push("--node-ipc")):m===tt.stdio?y.push("--stdio"):m===tt.pipe?(q=(0,et.generateRandomPipeName)(),y.push(`--pipe=${q}`)):Sr.isSocket(m)&&y.push(`--socket=${m.port}`),y.push(`--clientProcessId=${process.pid.toString()}`),m===tt.ipc||m===tt.stdio){let A=tr.spawn(P,y,T);return!A||!A.pid?_i(A,`Launching server using runtime ${P} failed.`):(this._serverProcess=A,A.stderr.on("data",L=>this.outputChannel.append(Qe.string(L)?L:L.toString(e))),m===tt.ipc?(A.stdout.on("data",L=>this.outputChannel.append(Qe.string(L)?L:L.toString(e))),Promise.resolve({reader:new et.IPCMessageReader(A),writer:new et.IPCMessageWriter(A)})):Promise.resolve({reader:new et.StreamMessageReader(A.stdout),writer:new et.StreamMessageWriter(A.stdin)}))}else{if(m===tt.pipe)return(0,et.createClientPipeTransport)(q).then(A=>{let L=tr.spawn(P,y,T);return!L||!L.pid?_i(L,`Launching server using runtime ${P} failed.`):(this._serverProcess=L,L.stderr.on("data",K=>this.outputChannel.append(Qe.string(K)?K:K.toString(e))),L.stdout.on("data",K=>this.outputChannel.append(Qe.string(K)?K:K.toString(e))),A.onConnected().then(K=>({reader:K[0],writer:K[1]})))});if(Sr.isSocket(m))return(0,et.createClientSocketTransport)(m.port).then(A=>{let L=tr.spawn(P,y,T);return!L||!L.pid?_i(L,`Launching server using runtime ${P} failed.`):(this._serverProcess=L,L.stderr.on("data",K=>this.outputChannel.append(Qe.string(K)?K:K.toString(e))),L.stdout.on("data",K=>this.outputChannel.append(Qe.string(K)?K:K.toString(e))),A.onConnected().then(K=>({reader:K[0],writer:K[1]})))})}}else{let y;return new Promise((v,T)=>{let P=(g.args&&g.args.slice())??[];m===tt.ipc?P.push("--node-ipc"):m===tt.stdio?P.push("--stdio"):m===tt.pipe?(y=(0,et.generateRandomPipeName)(),P.push(`--pipe=${y}`)):Sr.isSocket(m)&&P.push(`--socket=${m.port}`),P.push(`--clientProcessId=${process.pid.toString()}`);let q=g.options??Object.create(null);if(q.env=t(q.env,!0),q.execArgv=q.execArgv||[],q.cwd=d,q.silent=!0,m===tt.ipc||m===tt.stdio){let A=tr.fork(g.module,P||[],q);s(A),this._serverProcess=A,A.stderr.on("data",L=>this.outputChannel.append(Qe.string(L)?L:L.toString(e))),m===tt.ipc?(A.stdout.on("data",L=>this.outputChannel.append(Qe.string(L)?L:L.toString(e))),v({reader:new et.IPCMessageReader(this._serverProcess),writer:new et.IPCMessageWriter(this._serverProcess)})):v({reader:new et.StreamMessageReader(A.stdout),writer:new et.StreamMessageWriter(A.stdin)})}else m===tt.pipe?(0,et.createClientPipeTransport)(y).then(A=>{let L=tr.fork(g.module,P||[],q);s(L),this._serverProcess=L,L.stderr.on("data",K=>this.outputChannel.append(Qe.string(K)?K:K.toString(e))),L.stdout.on("data",K=>this.outputChannel.append(Qe.string(K)?K:K.toString(e))),A.onConnected().then(K=>{v({reader:K[0],writer:K[1]})},T)},T):Sr.isSocket(m)&&(0,et.createClientSocketTransport)(m.port).then(A=>{let L=tr.fork(g.module,P||[],q);s(L),this._serverProcess=L,L.stderr.on("data",K=>this.outputChannel.append(Qe.string(K)?K:K.toString(e))),L.stdout.on("data",K=>this.outputChannel.append(Qe.string(K)?K:K.toString(e))),A.onConnected().then(K=>{v({reader:K[0],writer:K[1]})},T)},T)})}}else if(ff.is(c)&&c.command){let g=c,m=c.args!==void 0?c.args.slice(0):[],y,v=c.transport;if(v===tt.stdio)m.push("--stdio");else if(v===tt.pipe)y=(0,et.generateRandomPipeName)(),m.push(`--pipe=${y}`);else if(Sr.isSocket(v))m.push(`--socket=${v.port}`);else if(v===tt.ipc)throw new Error("Transport kind ipc is not support for command executable");let T=Object.assign({},g.options);if(T.cwd=T.cwd||d,v===void 0||v===tt.stdio){let P=tr.spawn(g.command,m,T);return!P||!P.pid?_i(P,`Launching server using command ${g.command} failed.`):(P.stderr.on("data",q=>this.outputChannel.append(Qe.string(q)?q:q.toString(e))),this._serverProcess=P,this._isDetached=!!T.detached,Promise.resolve({reader:new et.StreamMessageReader(P.stdout),writer:new et.StreamMessageWriter(P.stdin)}))}else{if(v===tt.pipe)return(0,et.createClientPipeTransport)(y).then(P=>{let q=tr.spawn(g.command,m,T);return!q||!q.pid?_i(q,`Launching server using command ${g.command} failed.`):(this._serverProcess=q,this._isDetached=!!T.detached,q.stderr.on("data",A=>this.outputChannel.append(Qe.string(A)?A:A.toString(e))),q.stdout.on("data",A=>this.outputChannel.append(Qe.string(A)?A:A.toString(e))),P.onConnected().then(A=>({reader:A[0],writer:A[1]})))});if(Sr.isSocket(v))return(0,et.createClientSocketTransport)(v.port).then(P=>{let q=tr.spawn(g.command,m,T);return!q||!q.pid?_i(q,`Launching server using command ${g.command} failed.`):(this._serverProcess=q,this._isDetached=!!T.detached,q.stderr.on("data",A=>this.outputChannel.append(Qe.string(A)?A:A.toString(e))),q.stdout.on("data",A=>this.outputChannel.append(Qe.string(A)?A:A.toString(e))),P.onConnected().then(A=>({reader:A[0],writer:A[1]})))})}}return Promise.reject(new Error("Unsupported server configuration "+JSON.stringify(a,null,4)))}).finally(()=>{this._serverProcess!==void 0&&this._serverProcess.on("exit",(d,g)=>{d!==null&&this.error(`Server process exited with code ${d}.`,void 0,!1),g!==null&&this.error(`Server process exited with signal ${g}.`,void 0,!1)})})}_getRuntimePath(e,t){if(df.isAbsolute(e))return e;let r=this._mainGetRootPath();if(r!==void 0){let i=df.join(r,e);if(lf.existsSync(i))return i}if(t!==void 0){let i=df.join(t,e);if(lf.existsSync(i))return i}return e}_mainGetRootPath(){let e=_r.workspace.workspaceFolders;if(!e||e.length===0)return;let t=e[0];if(t.uri.scheme==="file")return t.uri.fsPath}_getServerWorkingDir(e){let t=e&&e.cwd;return t||(t=this.clientOptions.workspaceFolder?this.clientOptions.workspaceFolder.uri.fsPath:this._mainGetRootPath()),t?new Promise(r=>{lf.lstat(t,(i,o)=>{r(!i&&o.isDirectory()?t:void 0)})}):Promise.resolve(void 0)}};Bt.LanguageClient=mf;var vf=class{constructor(e,t){this._client=e,this._setting=t,this._listeners=[]}start(){return _r.workspace.onDidChangeConfiguration(this.onDidChangeConfiguration,this,this._listeners),this.onDidChangeConfiguration(),new _r.Disposable(()=>{this._client.needsStop()&&this._client.stop()})}onDidChangeConfiguration(){let e=this._setting.indexOf("."),t=e>=0?this._setting.substr(0,e):this._setting,r=e>=0?this._setting.substr(e+1):void 0,i=r?_r.workspace.getConfiguration(t).get(r,!1):_r.workspace.getConfiguration(t);i&&this._client.needsStart()?this._client.start().catch(o=>this._client.error("Start failed after configuration change",o,"force")):!i&&this._client.needsStop()&&this._client.stop().catch(o=>this._client.error("Stop failed after configuration change",o,"force"))}};Bt.SettingMonitor=vf;function _i(n,e){return n===null?Promise.reject(e):new Promise((t,r)=>{n.on("error",i=>{r(`${e} ${i}`)}),setImmediate(()=>r(e))})}});var Yb=E((m0,Qb)=>{"use strict";Qb.exports=Xb()});var rw=E((D0,uP)=>{uP.exports=`<!DOCTYPE html>\r
53
+ ${e.message}`,void 0,i.handled===!0?!1:"force")}hookConfigurationChanged(e){this._listeners.push(Le.workspace.onDidChangeConfiguration(()=>{this.refreshTrace(e,!0)}))}refreshTrace(e,t=!1){let r=Le.workspace.getConfiguration(this._id),i=$.Trace.Off,o=$.TraceFormat.Text;if(r){let s=r.get("trace.server","off");typeof s=="string"?i=$.Trace.fromString(s):(i=$.Trace.fromString(r.get("trace.server.verbosity","off")),o=$.TraceFormat.fromString(r.get("trace.server.format","text")))}this._trace=i,this._traceFormat=o,e.trace(this._trace,this._tracer,{sendNotification:t,traceFormat:this._traceFormat}).catch(s=>{this.error("Updating trace failed with error",s,!1)})}hookFileEvents(e){let t=this._clientOptions.synchronize.fileEvents;if(!t)return;let r;kn.array(t)?r=t:r=[t],r&&this._dynamicFeatures.get($.DidChangeWatchedFilesNotification.type.method).registerRaw(Lb.generateUuid(),r)}registerFeatures(e){for(let t of e)this.registerFeature(t)}registerFeature(e){if(this._features.push(e),Pn.DynamicFeature.is(e)){let t=e.registrationType;this._dynamicFeatures.set(t.method,e)}}getFeature(e){return this._dynamicFeatures.get(e)}hasDedicatedTextSynchronizationFeature(e){let t=this.getFeature($.NotebookDocumentSyncRegistrationType.method);return t===void 0||!(t instanceof Nb.NotebookDocumentSyncFeature)?!1:t.handles(e)}registerBuiltinFeatures(){let e=new Map;this.registerFeature(new jb.ConfigurationFeature(this)),this.registerFeature(new Di.DidOpenTextDocumentFeature(this,this._syncedDocuments)),this._didChangeTextDocumentFeature=new Di.DidChangeTextDocumentFeature(this,e),this._didChangeTextDocumentFeature.onPendingChangeAdded(()=>{this.triggerPendingChangeDelivery()}),this.registerFeature(this._didChangeTextDocumentFeature),this.registerFeature(new Di.WillSaveFeature(this)),this.registerFeature(new Di.WillSaveWaitUntilFeature(this)),this.registerFeature(new Di.DidSaveTextDocumentFeature(this)),this.registerFeature(new Di.DidCloseTextDocumentFeature(this,this._syncedDocuments,e)),this.registerFeature(new OR.FileSystemWatcherFeature(this,t=>this.notifyFileEvent(t))),this.registerFeature(new CR.CompletionItemFeature(this)),this.registerFeature(new DR.HoverFeature(this)),this.registerFeature(new _R.SignatureHelpFeature(this)),this.registerFeature(new SR.DefinitionFeature(this)),this.registerFeature(new kR.ReferencesFeature(this)),this.registerFeature(new TR.DocumentHighlightFeature(this)),this.registerFeature(new RR.DocumentSymbolFeature(this)),this.registerFeature(new PR.WorkspaceSymbolFeature(this)),this.registerFeature(new ER.CodeActionFeature(this)),this.registerFeature(new xR.CodeLensFeature(this)),this.registerFeature(new tf.DocumentFormattingFeature(this)),this.registerFeature(new tf.DocumentRangeFormattingFeature(this)),this.registerFeature(new tf.DocumentOnTypeFormattingFeature(this)),this.registerFeature(new qR.RenameFeature(this)),this.registerFeature(new IR.DocumentLinkFeature(this)),this.registerFeature(new FR.ExecuteCommandFeature(this)),this.registerFeature(new jb.SyncConfigurationFeature(this)),this.registerFeature(new LR.TypeDefinitionFeature(this)),this.registerFeature(new AR.ImplementationFeature(this)),this.registerFeature(new MR.ColorProviderFeature(this)),this.clientOptions.workspaceFolder===void 0&&this.registerFeature(new NR.WorkspaceFoldersFeature(this)),this.registerFeature(new jR.FoldingRangeFeature(this)),this.registerFeature(new $R.DeclarationFeature(this)),this.registerFeature(new UR.SelectionRangeFeature(this)),this.registerFeature(new HR.ProgressFeature(this)),this.registerFeature(new WR.CallHierarchyFeature(this)),this.registerFeature(new KR.SemanticTokensFeature(this)),this.registerFeature(new VR.LinkedEditingFeature(this)),this.registerFeature(new Si.DidCreateFilesFeature(this)),this.registerFeature(new Si.DidRenameFilesFeature(this)),this.registerFeature(new Si.DidDeleteFilesFeature(this)),this.registerFeature(new Si.WillCreateFilesFeature(this)),this.registerFeature(new Si.WillRenameFilesFeature(this)),this.registerFeature(new Si.WillDeleteFilesFeature(this)),this.registerFeature(new zR.TypeHierarchyFeature(this)),this.registerFeature(new BR.InlineValueFeature(this)),this.registerFeature(new GR.InlayHintsFeature(this)),this.registerFeature(new wR.DiagnosticFeature(this)),this.registerFeature(new Nb.NotebookDocumentSyncFeature(this))}registerProposedFeatures(){this.registerFeatures(sf.createAll(this))}fillInitializeParams(e){for(let t of this._features)kn.func(t.fillInitializeParams)&&t.fillInitializeParams(e)}computeClientCapabilities(){let e={};(0,Pn.ensure)(e,"workspace").applyEdit=!0;let t=(0,Pn.ensure)((0,Pn.ensure)(e,"workspace"),"workspaceEdit");t.documentChanges=!0,t.resourceOperations=[$.ResourceOperationKind.Create,$.ResourceOperationKind.Rename,$.ResourceOperationKind.Delete],t.failureHandling=$.FailureHandlingKind.TextOnlyTransactional,t.normalizesLineEndings=!0,t.changeAnnotationSupport={groupsOnLabel:!0};let r=(0,Pn.ensure)((0,Pn.ensure)(e,"textDocument"),"publishDiagnostics");r.relatedInformation=!0,r.versionSupport=!1,r.tagSupport={valueSet:[$.DiagnosticTag.Unnecessary,$.DiagnosticTag.Deprecated]},r.codeDescriptionSupport=!0,r.dataSupport=!0;let i=(0,Pn.ensure)(e,"window"),o=(0,Pn.ensure)(i,"showMessage");o.messageActionItem={additionalPropertiesSupport:!0};let s=(0,Pn.ensure)(i,"showDocument");s.support=!0;let a=(0,Pn.ensure)(e,"general");a.staleRequestSupport={cancel:!0,retryOnContentModified:Array.from(n.RequestsToCancelOnContentModified)},a.regularExpressions={engine:"ECMAScript",version:"ES2020"},a.markdown={parser:"marked",version:"1.1.0"},a.positionEncodings=["utf-16"],this._clientOptions.markdown.supportHtml&&(a.markdown.allowedTags=["ul","li","p","code","blockquote","ol","h1","h2","h3","h4","h5","h6","hr","em","pre","table","thead","tbody","tr","th","td","div","del","a","strong","br","img","span"]);for(let c of this._features)c.fillClientCapabilities(e);return e}initializeFeatures(e){let t=this._clientOptions.documentSelector;for(let r of this._features)kn.func(r.preInitialize)&&r.preInitialize(this._capabilities,t);for(let r of this._features)r.initialize(this._capabilities,t)}async handleRegistrationRequest(e){let t=this.clientOptions.middleware?.handleRegisterCapability;return t?t(e,r=>this.doRegisterCapability(r)):this.doRegisterCapability(e)}async doRegisterCapability(e){if(!this.isRunning()){for(let t of e.registrations)this._ignoredRegistrations.add(t.id);return}for(let t of e.registrations){let r=this._dynamicFeatures.get(t.method);if(r===void 0)return Promise.reject(new Error(`No feature implementation for ${t.method} found. Registration failed.`));let i=t.registerOptions??{};i.documentSelector=i.documentSelector??this._clientOptions.documentSelector;let o={id:t.id,registerOptions:i};try{r.register(o)}catch(s){return Promise.reject(s)}}}async handleUnregistrationRequest(e){let t=this.clientOptions.middleware?.handleUnregisterCapability;return t?t(e,r=>this.doUnregisterCapability(r)):this.doUnregisterCapability(e)}async doUnregisterCapability(e){for(let t of e.unregisterations){if(this._ignoredRegistrations.has(t.id))continue;let r=this._dynamicFeatures.get(t.method);if(!r)return Promise.reject(new Error(`No feature implementation for ${t.method} found. Unregistration failed.`));r.unregister(t.id)}}async handleApplyWorkspaceEdit(e){let t=e.edit,r=await this.workspaceEditLock.lock(()=>this._p2c.asWorkspaceEdit(t)),i=new Map;Le.workspace.textDocuments.forEach(s=>i.set(s.uri.toString(),s));let o=!1;if(t.documentChanges){for(let s of t.documentChanges)if($.TextDocumentEdit.is(s)&&s.textDocument.version&&s.textDocument.version>=0){let a=this._p2c.asUri(s.textDocument.uri).toString(),c=i.get(a);if(c&&c.version!==s.textDocument.version){o=!0;break}}}return o?Promise.resolve({applied:!1}):kn.asPromise(Le.workspace.applyEdit(r).then(s=>({applied:s})))}handleFailedRequest(e,t,r,i,o=!0){if(r instanceof $.ResponseError){if(r.code===$.ErrorCodes.PendingResponseRejected||r.code===$.ErrorCodes.ConnectionInactive)return i;if(r.code===$.LSPErrorCodes.RequestCancelled||r.code===$.LSPErrorCodes.ServerCancelled){if(t!==void 0&&t.isCancellationRequested)return i;throw r.data!==void 0?new Pn.LSPCancellationError(r.data):new Le.CancellationError}else if(r.code===$.LSPErrorCodes.ContentModified){if(n.RequestsToCancelOnContentModified.has(e.method)||n.CancellableResolveCalls.has(e.method))throw new Le.CancellationError;return i}}throw this.error(`Request ${e.method} failed.`,r,o),r}};bt.BaseLanguageClient=fo;fo.RequestsToCancelOnContentModified=new Set([$.SemanticTokensRequest.method,$.SemanticTokensRangeRequest.method,$.SemanticTokensDeltaRequest.method]);fo.CancellableResolveCalls=new Set([$.CompletionResolveRequest.method,$.CodeLensResolveRequest.method,$.CodeActionResolveRequest.method,$.InlayHintResolveRequest.method,$.DocumentLinkResolveRequest.method,$.WorkspaceSymbolResolveRequest.method]);var of=class{error(e){(0,$.RAL)().console.error(e)}warn(e){(0,$.RAL)().console.warn(e)}info(e){(0,$.RAL)().console.info(e)}log(e){(0,$.RAL)().console.log(e)}};function XR(n,e,t,r,i){let o=new of,s=(0,$.createProtocolConnection)(n,e,o,i);return s.onError(c=>{t(c[0],c[1],c[2])}),s.onClose(r),{listen:()=>s.listen(),sendRequest:s.sendRequest,onRequest:s.onRequest,hasPendingResponse:s.hasPendingResponse,sendNotification:s.sendNotification,onNotification:s.onNotification,onProgress:s.onProgress,sendProgress:s.sendProgress,trace:(c,u,d)=>{let g={sendNotification:!1,traceFormat:$.TraceFormat.Text};return d===void 0?s.trace(c,u,g):(kn.boolean(d),s.trace(c,u,d))},initialize:c=>s.sendRequest($.InitializeRequest.type,c),shutdown:()=>s.sendRequest($.ShutdownRequest.type,void 0),exit:()=>s.sendNotification($.ExitNotification.type),end:()=>s.end(),dispose:()=>s.dispose()}}var sf;(function(n){function e(t){return[new JR.InlineCompletionItemFeature(t)]}n.createAll=e})(sf||(bt.ProposedFeatures=sf={}))});var Wb=E(ba=>{"use strict";Object.defineProperty(ba,"__esModule",{value:!0});ba.terminate=void 0;var Hb=require("child_process"),QR=require("path"),YR=process.platform==="win32",ZR=process.platform==="darwin",eP=process.platform==="linux";function tP(n,e){if(YR)try{let i={stdio:["pipe","pipe","ignore"]};return e&&(i.cwd=e),Hb.execFileSync("taskkill",["/T","/F","/PID",n.pid.toString()],i),!0}catch{return!1}else if(eP||ZR)try{var t=(0,QR.join)(__dirname,"terminateProcess.sh"),r=Hb.spawnSync(t,[n.pid.toString()]);return!r.error}catch{return!1}else return n.kill("SIGKILL"),!0}ba.terminate=tP});var cf=E((p0,Kb)=>{"use strict";Kb.exports=fe()});var zb=E(tn=>{"use strict";var nP=tn&&tn.__createBinding||(Object.create?function(n,e,t,r){r===void 0&&(r=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[t]}}),Object.defineProperty(n,r,i)}:function(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]}),uf=tn&&tn.__exportStar||function(n,e){for(var t in n)t!=="default"&&!Object.prototype.hasOwnProperty.call(e,t)&&nP(e,n,t)};Object.defineProperty(tn,"__esModule",{value:!0});tn.DiagnosticPullMode=tn.vsdiag=void 0;uf(fe(),tn);uf(Ee(),tn);var Vb=Tl();Object.defineProperty(tn,"vsdiag",{enumerable:!0,get:function(){return Vb.vsdiag}});Object.defineProperty(tn,"DiagnosticPullMode",{enumerable:!0,get:function(){return Vb.DiagnosticPullMode}});uf(af(),tn)});var Xb=E(Bt=>{"use strict";var rP=Bt&&Bt.__createBinding||(Object.create?function(n,e,t,r){r===void 0&&(r=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[t]}}),Object.defineProperty(n,r,i)}:function(n,e,t,r){r===void 0&&(r=t),n[r]=e[t]}),Jb=Bt&&Bt.__exportStar||function(n,e){for(var t in n)t!=="default"&&!Object.prototype.hasOwnProperty.call(e,t)&&rP(e,n,t)};Object.defineProperty(Bt,"__esModule",{value:!0});Bt.SettingMonitor=Bt.LanguageClient=Bt.TransportKind=void 0;var tr=require("child_process"),lf=require("fs"),df=require("path"),_r=require("vscode"),Qe=un(),Bb=af(),iP=Wb(),et=cf(),oP=ar(),sP=Hr();Jb(cf(),Bt);Jb(zb(),Bt);var Gb="^1.82.0",tt;(function(n){n[n.stdio=0]="stdio",n[n.ipc=1]="ipc",n[n.pipe=2]="pipe",n[n.socket=3]="socket"})(tt||(Bt.TransportKind=tt={}));var Sr;(function(n){function e(t){let r=t;return r&&r.kind===tt.socket&&Qe.number(r.port)}n.isSocket=e})(Sr||(Sr={}));var ff;(function(n){function e(t){return Qe.string(t.command)}n.is=e})(ff||(ff={}));var pf;(function(n){function e(t){return Qe.string(t.module)}n.is=e})(pf||(pf={}));var hf;(function(n){function e(t){let r=t;return r&&r.writer!==void 0&&r.reader!==void 0}n.is=e})(hf||(hf={}));var gf;(function(n){function e(t){let r=t;return r&&r.process!==void 0&&typeof r.detached=="boolean"}n.is=e})(gf||(gf={}));var mf=class extends Bb.BaseLanguageClient{constructor(e,t,r,i,o){let s,a,c,u,d;Qe.string(t)?(s=e,a=t,c=r,u=i,d=!!o):(s=e.toLowerCase(),a=e,c=t,u=r,d=i),d===void 0&&(d=!1),super(s,a,u),this._serverOptions=c,this._forceDebug=d,this._isInDebugMode=d;try{this.checkVersion()}catch(g){throw Qe.string(g.message)&&this.outputChannel.appendLine(g.message),g}}checkVersion(){let e=oP(_r.version);if(!e)throw new Error(`No valid VS Code version detected. Version string is: ${_r.version}`);if(e.prerelease&&e.prerelease.length>0&&(e.prerelease=[]),!sP(e,Gb))throw new Error(`The language client requires VS Code version ${Gb} but received version ${_r.version}`)}get isInDebugMode(){return this._isInDebugMode}async restart(){await this.stop(),this.isInDebugMode?(await new Promise(e=>setTimeout(e,1e3)),await this.start()):await this.start()}stop(e=2e3){return super.stop(e).finally(()=>{if(this._serverProcess){let t=this._serverProcess;this._serverProcess=void 0,(this._isDetached===void 0||!this._isDetached)&&this.checkProcessDied(t),this._isDetached=void 0}})}checkProcessDied(e){!e||e.pid===void 0||setTimeout(()=>{try{e.pid!==void 0&&(process.kill(e.pid,0),(0,iP.terminate)(e))}catch{}},2e3)}handleConnectionClosed(){return this._serverProcess=void 0,super.handleConnectionClosed()}fillInitializeParams(e){super.fillInitializeParams(e),e.processId===null&&(e.processId=process.pid)}createMessageTransports(e){function t(d,g){if(!d&&!g)return;let m=Object.create(null);return Object.keys(process.env).forEach(y=>m[y]=process.env[y]),g&&(m.ELECTRON_RUN_AS_NODE="1",m.ELECTRON_NO_ASAR="1"),d&&Object.keys(d).forEach(y=>m[y]=d[y]),m}let r=["--debug=","--debug-brk=","--inspect=","--inspect-brk="],i=["--debug","--debug-brk","--inspect","--inspect-brk"];function o(){let d=process.execArgv;return d?d.some(g=>r.some(m=>g.startsWith(m))||i.some(m=>g===m)):!1}function s(d){if(d.stdin===null||d.stdout===null||d.stderr===null)throw new Error("Process created without stdio streams")}let a=this._serverOptions;if(Qe.func(a))return a().then(d=>{if(Bb.MessageTransports.is(d))return this._isDetached=!!d.detached,d;if(hf.is(d))return this._isDetached=!!d.detached,{reader:new et.StreamMessageReader(d.reader),writer:new et.StreamMessageWriter(d.writer)};{let g;return gf.is(d)?(g=d.process,this._isDetached=d.detached):(g=d,this._isDetached=!1),g.stderr.on("data",m=>this.outputChannel.append(Qe.string(m)?m:m.toString(e))),{reader:new et.StreamMessageReader(g.stdout),writer:new et.StreamMessageWriter(g.stdin)}}});let c,u=a;return u.run||u.debug?this._forceDebug||o()?(c=u.debug,this._isInDebugMode=!0):(c=u.run,this._isInDebugMode=!1):c=a,this._getServerWorkingDir(c.options).then(d=>{if(pf.is(c)&&c.module){let g=c,m=g.transport||tt.stdio;if(g.runtime){let y=[],v=g.options??Object.create(null);v.execArgv&&v.execArgv.forEach(L=>y.push(L)),y.push(g.module),g.args&&g.args.forEach(L=>y.push(L));let T=Object.create(null);T.cwd=d,T.env=t(v.env,!1);let P=this._getRuntimePath(g.runtime,d),q;if(m===tt.ipc?(T.stdio=[null,null,null,"ipc"],y.push("--node-ipc")):m===tt.stdio?y.push("--stdio"):m===tt.pipe?(q=(0,et.generateRandomPipeName)(),y.push(`--pipe=${q}`)):Sr.isSocket(m)&&y.push(`--socket=${m.port}`),y.push(`--clientProcessId=${process.pid.toString()}`),m===tt.ipc||m===tt.stdio){let L=tr.spawn(P,y,T);return!L||!L.pid?_i(L,`Launching server using runtime ${P} failed.`):(this._serverProcess=L,L.stderr.on("data",N=>this.outputChannel.append(Qe.string(N)?N:N.toString(e))),m===tt.ipc?(L.stdout.on("data",N=>this.outputChannel.append(Qe.string(N)?N:N.toString(e))),Promise.resolve({reader:new et.IPCMessageReader(L),writer:new et.IPCMessageWriter(L)})):Promise.resolve({reader:new et.StreamMessageReader(L.stdout),writer:new et.StreamMessageWriter(L.stdin)}))}else{if(m===tt.pipe)return(0,et.createClientPipeTransport)(q).then(L=>{let N=tr.spawn(P,y,T);return!N||!N.pid?_i(N,`Launching server using runtime ${P} failed.`):(this._serverProcess=N,N.stderr.on("data",K=>this.outputChannel.append(Qe.string(K)?K:K.toString(e))),N.stdout.on("data",K=>this.outputChannel.append(Qe.string(K)?K:K.toString(e))),L.onConnected().then(K=>({reader:K[0],writer:K[1]})))});if(Sr.isSocket(m))return(0,et.createClientSocketTransport)(m.port).then(L=>{let N=tr.spawn(P,y,T);return!N||!N.pid?_i(N,`Launching server using runtime ${P} failed.`):(this._serverProcess=N,N.stderr.on("data",K=>this.outputChannel.append(Qe.string(K)?K:K.toString(e))),N.stdout.on("data",K=>this.outputChannel.append(Qe.string(K)?K:K.toString(e))),L.onConnected().then(K=>({reader:K[0],writer:K[1]})))})}}else{let y;return new Promise((v,T)=>{let P=(g.args&&g.args.slice())??[];m===tt.ipc?P.push("--node-ipc"):m===tt.stdio?P.push("--stdio"):m===tt.pipe?(y=(0,et.generateRandomPipeName)(),P.push(`--pipe=${y}`)):Sr.isSocket(m)&&P.push(`--socket=${m.port}`),P.push(`--clientProcessId=${process.pid.toString()}`);let q=g.options??Object.create(null);if(q.env=t(q.env,!0),q.execArgv=q.execArgv||[],q.cwd=d,q.silent=!0,m===tt.ipc||m===tt.stdio){let L=tr.fork(g.module,P||[],q);s(L),this._serverProcess=L,L.stderr.on("data",N=>this.outputChannel.append(Qe.string(N)?N:N.toString(e))),m===tt.ipc?(L.stdout.on("data",N=>this.outputChannel.append(Qe.string(N)?N:N.toString(e))),v({reader:new et.IPCMessageReader(this._serverProcess),writer:new et.IPCMessageWriter(this._serverProcess)})):v({reader:new et.StreamMessageReader(L.stdout),writer:new et.StreamMessageWriter(L.stdin)})}else m===tt.pipe?(0,et.createClientPipeTransport)(y).then(L=>{let N=tr.fork(g.module,P||[],q);s(N),this._serverProcess=N,N.stderr.on("data",K=>this.outputChannel.append(Qe.string(K)?K:K.toString(e))),N.stdout.on("data",K=>this.outputChannel.append(Qe.string(K)?K:K.toString(e))),L.onConnected().then(K=>{v({reader:K[0],writer:K[1]})},T)},T):Sr.isSocket(m)&&(0,et.createClientSocketTransport)(m.port).then(L=>{let N=tr.fork(g.module,P||[],q);s(N),this._serverProcess=N,N.stderr.on("data",K=>this.outputChannel.append(Qe.string(K)?K:K.toString(e))),N.stdout.on("data",K=>this.outputChannel.append(Qe.string(K)?K:K.toString(e))),L.onConnected().then(K=>{v({reader:K[0],writer:K[1]})},T)},T)})}}else if(ff.is(c)&&c.command){let g=c,m=c.args!==void 0?c.args.slice(0):[],y,v=c.transport;if(v===tt.stdio)m.push("--stdio");else if(v===tt.pipe)y=(0,et.generateRandomPipeName)(),m.push(`--pipe=${y}`);else if(Sr.isSocket(v))m.push(`--socket=${v.port}`);else if(v===tt.ipc)throw new Error("Transport kind ipc is not support for command executable");let T=Object.assign({},g.options);if(T.cwd=T.cwd||d,v===void 0||v===tt.stdio){let P=tr.spawn(g.command,m,T);return!P||!P.pid?_i(P,`Launching server using command ${g.command} failed.`):(P.stderr.on("data",q=>this.outputChannel.append(Qe.string(q)?q:q.toString(e))),this._serverProcess=P,this._isDetached=!!T.detached,Promise.resolve({reader:new et.StreamMessageReader(P.stdout),writer:new et.StreamMessageWriter(P.stdin)}))}else{if(v===tt.pipe)return(0,et.createClientPipeTransport)(y).then(P=>{let q=tr.spawn(g.command,m,T);return!q||!q.pid?_i(q,`Launching server using command ${g.command} failed.`):(this._serverProcess=q,this._isDetached=!!T.detached,q.stderr.on("data",L=>this.outputChannel.append(Qe.string(L)?L:L.toString(e))),q.stdout.on("data",L=>this.outputChannel.append(Qe.string(L)?L:L.toString(e))),P.onConnected().then(L=>({reader:L[0],writer:L[1]})))});if(Sr.isSocket(v))return(0,et.createClientSocketTransport)(v.port).then(P=>{let q=tr.spawn(g.command,m,T);return!q||!q.pid?_i(q,`Launching server using command ${g.command} failed.`):(this._serverProcess=q,this._isDetached=!!T.detached,q.stderr.on("data",L=>this.outputChannel.append(Qe.string(L)?L:L.toString(e))),q.stdout.on("data",L=>this.outputChannel.append(Qe.string(L)?L:L.toString(e))),P.onConnected().then(L=>({reader:L[0],writer:L[1]})))})}}return Promise.reject(new Error("Unsupported server configuration "+JSON.stringify(a,null,4)))}).finally(()=>{this._serverProcess!==void 0&&this._serverProcess.on("exit",(d,g)=>{d!==null&&this.error(`Server process exited with code ${d}.`,void 0,!1),g!==null&&this.error(`Server process exited with signal ${g}.`,void 0,!1)})})}_getRuntimePath(e,t){if(df.isAbsolute(e))return e;let r=this._mainGetRootPath();if(r!==void 0){let i=df.join(r,e);if(lf.existsSync(i))return i}if(t!==void 0){let i=df.join(t,e);if(lf.existsSync(i))return i}return e}_mainGetRootPath(){let e=_r.workspace.workspaceFolders;if(!e||e.length===0)return;let t=e[0];if(t.uri.scheme==="file")return t.uri.fsPath}_getServerWorkingDir(e){let t=e&&e.cwd;return t||(t=this.clientOptions.workspaceFolder?this.clientOptions.workspaceFolder.uri.fsPath:this._mainGetRootPath()),t?new Promise(r=>{lf.lstat(t,(i,o)=>{r(!i&&o.isDirectory()?t:void 0)})}):Promise.resolve(void 0)}};Bt.LanguageClient=mf;var vf=class{constructor(e,t){this._client=e,this._setting=t,this._listeners=[]}start(){return _r.workspace.onDidChangeConfiguration(this.onDidChangeConfiguration,this,this._listeners),this.onDidChangeConfiguration(),new _r.Disposable(()=>{this._client.needsStop()&&this._client.stop()})}onDidChangeConfiguration(){let e=this._setting.indexOf("."),t=e>=0?this._setting.substr(0,e):this._setting,r=e>=0?this._setting.substr(e+1):void 0,i=r?_r.workspace.getConfiguration(t).get(r,!1):_r.workspace.getConfiguration(t);i&&this._client.needsStart()?this._client.start().catch(o=>this._client.error("Start failed after configuration change",o,"force")):!i&&this._client.needsStop()&&this._client.stop().catch(o=>this._client.error("Stop failed after configuration change",o,"force"))}};Bt.SettingMonitor=vf;function _i(n,e){return n===null?Promise.reject(e):new Promise((t,r)=>{n.on("error",i=>{r(`${e} ${i}`)}),setImmediate(()=>r(e))})}});var Yb=E((m0,Qb)=>{"use strict";Qb.exports=Xb()});var rw=E((D0,uP)=>{uP.exports=`<!DOCTYPE html>\r
54
54
  <html lang="en">\r
55
55
  <head>\r
56
56
  <meta charset="UTF-8">\r
@@ -207,8 +207,8 @@ ${e.message}`,void 0,i.handled===!0?!1:"force")}hookConfigurationChanged(e){this
207
207
  `)).on("segment",v=>{v.toString().match(/^Debugger listening/)&&console.log(v.toString()),n.write(v.toString()+`\r
208
208
  `)}),g.on("error",v=>{n.write(`${v.message}\r
209
209
  `)}),g.on("exit",(v,T)=>{j.workspace.fs.delete(Va),c(v??-1)}),o&&g.stdin.write(o),g.stdin.end()})}var Dn=class{constructor(e){this.runner=e}writeEmitter=new j.EventEmitter;onDidWrite=this.writeEmitter.event;closeEmitter=new j.EventEmitter;onDidClose=this.closeEmitter.event;tokensource=new j.CancellationTokenSource;async open(e){let t=this.writeEmitter,r=this.closeEmitter;await this.runner({write:i=>t.fire(i.replace(/\r?\n/g,`\r
210
- `)),close:()=>r.fire()},this.tokensource.token),r.fire()}close(){this.tokensource.cancel()}};var ue=mt(require("vscode")),Xa=mt(require("os")),Th=mt(require("path"));var _h;(()=>{"use strict";var n={470:i=>{function o(c){if(typeof c!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(c))}function s(c,u){for(var d,g="",m=0,y=-1,v=0,T=0;T<=c.length;++T){if(T<c.length)d=c.charCodeAt(T);else{if(d===47)break;d=47}if(d===47){if(!(y===T-1||v===1))if(y!==T-1&&v===2){if(g.length<2||m!==2||g.charCodeAt(g.length-1)!==46||g.charCodeAt(g.length-2)!==46){if(g.length>2){var P=g.lastIndexOf("/");if(P!==g.length-1){P===-1?(g="",m=0):m=(g=g.slice(0,P)).length-1-g.lastIndexOf("/"),y=T,v=0;continue}}else if(g.length===2||g.length===1){g="",m=0,y=T,v=0;continue}}u&&(g.length>0?g+="/..":g="..",m=2)}else g.length>0?g+="/"+c.slice(y+1,T):g=c.slice(y+1,T),m=T-y-1;y=T,v=0}else d===46&&v!==-1?++v:v=-1}return g}var a={resolve:function(){for(var c,u="",d=!1,g=arguments.length-1;g>=-1&&!d;g--){var m;g>=0?m=arguments[g]:(c===void 0&&(c=process.cwd()),m=c),o(m),m.length!==0&&(u=m+"/"+u,d=m.charCodeAt(0)===47)}return u=s(u,!d),d?u.length>0?"/"+u:"/":u.length>0?u:"."},normalize:function(c){if(o(c),c.length===0)return".";var u=c.charCodeAt(0)===47,d=c.charCodeAt(c.length-1)===47;return(c=s(c,!u)).length!==0||u||(c="."),c.length>0&&d&&(c+="/"),u?"/"+c:c},isAbsolute:function(c){return o(c),c.length>0&&c.charCodeAt(0)===47},join:function(){if(arguments.length===0)return".";for(var c,u=0;u<arguments.length;++u){var d=arguments[u];o(d),d.length>0&&(c===void 0?c=d:c+="/"+d)}return c===void 0?".":a.normalize(c)},relative:function(c,u){if(o(c),o(u),c===u||(c=a.resolve(c))===(u=a.resolve(u)))return"";for(var d=1;d<c.length&&c.charCodeAt(d)===47;++d);for(var g=c.length,m=g-d,y=1;y<u.length&&u.charCodeAt(y)===47;++y);for(var v=u.length-y,T=m<v?m:v,P=-1,q=0;q<=T;++q){if(q===T){if(v>T){if(u.charCodeAt(y+q)===47)return u.slice(y+q+1);if(q===0)return u.slice(y+q)}else m>T&&(c.charCodeAt(d+q)===47?P=q:q===0&&(P=0));break}var A=c.charCodeAt(d+q);if(A!==u.charCodeAt(y+q))break;A===47&&(P=q)}var L="";for(q=d+P+1;q<=g;++q)q!==g&&c.charCodeAt(q)!==47||(L.length===0?L+="..":L+="/..");return L.length>0?L+u.slice(y+P):(y+=P,u.charCodeAt(y)===47&&++y,u.slice(y))},_makeLong:function(c){return c},dirname:function(c){if(o(c),c.length===0)return".";for(var u=c.charCodeAt(0),d=u===47,g=-1,m=!0,y=c.length-1;y>=1;--y)if((u=c.charCodeAt(y))===47){if(!m){g=y;break}}else m=!1;return g===-1?d?"/":".":d&&g===1?"//":c.slice(0,g)},basename:function(c,u){if(u!==void 0&&typeof u!="string")throw new TypeError('"ext" argument must be a string');o(c);var d,g=0,m=-1,y=!0;if(u!==void 0&&u.length>0&&u.length<=c.length){if(u.length===c.length&&u===c)return"";var v=u.length-1,T=-1;for(d=c.length-1;d>=0;--d){var P=c.charCodeAt(d);if(P===47){if(!y){g=d+1;break}}else T===-1&&(y=!1,T=d+1),v>=0&&(P===u.charCodeAt(v)?--v==-1&&(m=d):(v=-1,m=T))}return g===m?m=T:m===-1&&(m=c.length),c.slice(g,m)}for(d=c.length-1;d>=0;--d)if(c.charCodeAt(d)===47){if(!y){g=d+1;break}}else m===-1&&(y=!1,m=d+1);return m===-1?"":c.slice(g,m)},extname:function(c){o(c);for(var u=-1,d=0,g=-1,m=!0,y=0,v=c.length-1;v>=0;--v){var T=c.charCodeAt(v);if(T!==47)g===-1&&(m=!1,g=v+1),T===46?u===-1?u=v:y!==1&&(y=1):u!==-1&&(y=-1);else if(!m){d=v+1;break}}return u===-1||g===-1||y===0||y===1&&u===g-1&&u===d+1?"":c.slice(u,g)},format:function(c){if(c===null||typeof c!="object")throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof c);return function(u,d){var g=d.dir||d.root,m=d.base||(d.name||"")+(d.ext||"");return g?g===d.root?g+m:g+"/"+m:m}(0,c)},parse:function(c){o(c);var u={root:"",dir:"",base:"",ext:"",name:""};if(c.length===0)return u;var d,g=c.charCodeAt(0),m=g===47;m?(u.root="/",d=1):d=0;for(var y=-1,v=0,T=-1,P=!0,q=c.length-1,A=0;q>=d;--q)if((g=c.charCodeAt(q))!==47)T===-1&&(P=!1,T=q+1),g===46?y===-1?y=q:A!==1&&(A=1):y!==-1&&(A=-1);else if(!P){v=q+1;break}return y===-1||T===-1||A===0||A===1&&y===T-1&&y===v+1?T!==-1&&(u.base=u.name=v===0&&m?c.slice(1,T):c.slice(v,T)):(v===0&&m?(u.name=c.slice(1,y),u.base=c.slice(1,T)):(u.name=c.slice(v,y),u.base=c.slice(v,T)),u.ext=c.slice(y,T)),v>0?u.dir=c.slice(0,v-1):m&&(u.dir="/"),u},sep:"/",delimiter:":",win32:null,posix:null};a.posix=a,i.exports=a}},e={};function t(i){var o=e[i];if(o!==void 0)return o.exports;var s=e[i]={exports:{}};return n[i](s,s.exports,t),s.exports}t.d=(i,o)=>{for(var s in o)t.o(o,s)&&!t.o(i,s)&&Object.defineProperty(i,s,{enumerable:!0,get:o[s]})},t.o=(i,o)=>Object.prototype.hasOwnProperty.call(i,o),t.r=i=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(i,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(i,"__esModule",{value:!0})};var r={};(()=>{let i;t.r(r),t.d(r,{URI:()=>m,Utils:()=>Ne}),typeof process=="object"?i=process.platform==="win32":typeof navigator=="object"&&(i=navigator.userAgent.indexOf("Windows")>=0);let o=/^\w[\w\d+.-]*$/,s=/^\//,a=/^\/\//;function c(U,I){if(!U.scheme&&I)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${U.authority}", path: "${U.path}", query: "${U.query}", fragment: "${U.fragment}"}`);if(U.scheme&&!o.test(U.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(U.path){if(U.authority){if(!s.test(U.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(a.test(U.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}let u="",d="/",g=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class m{static isUri(I){return I instanceof m||!!I&&typeof I.authority=="string"&&typeof I.fragment=="string"&&typeof I.path=="string"&&typeof I.query=="string"&&typeof I.scheme=="string"&&typeof I.fsPath=="string"&&typeof I.with=="function"&&typeof I.toString=="function"}scheme;authority;path;query;fragment;constructor(I,J,B,pe,ie,oe=!1){typeof I=="object"?(this.scheme=I.scheme||u,this.authority=I.authority||u,this.path=I.path||u,this.query=I.query||u,this.fragment=I.fragment||u):(this.scheme=function(st,be){return st||be?st:"file"}(I,oe),this.authority=J||u,this.path=function(st,be){switch(st){case"https":case"http":case"file":be?be[0]!==d&&(be=d+be):be=d}return be}(this.scheme,B||u),this.query=pe||u,this.fragment=ie||u,c(this,oe))}get fsPath(){return A(this,!1)}with(I){if(!I)return this;let{scheme:J,authority:B,path:pe,query:ie,fragment:oe}=I;return J===void 0?J=this.scheme:J===null&&(J=u),B===void 0?B=this.authority:B===null&&(B=u),pe===void 0?pe=this.path:pe===null&&(pe=u),ie===void 0?ie=this.query:ie===null&&(ie=u),oe===void 0?oe=this.fragment:oe===null&&(oe=u),J===this.scheme&&B===this.authority&&pe===this.path&&ie===this.query&&oe===this.fragment?this:new v(J,B,pe,ie,oe)}static parse(I,J=!1){let B=g.exec(I);return B?new v(B[2]||u,Z(B[4]||u),Z(B[5]||u),Z(B[7]||u),Z(B[9]||u),J):new v(u,u,u,u,u)}static file(I){let J=u;if(i&&(I=I.replace(/\\/g,d)),I[0]===d&&I[1]===d){let B=I.indexOf(d,2);B===-1?(J=I.substring(2),I=d):(J=I.substring(2,B),I=I.substring(B)||d)}return new v("file",J,I,u,u)}static from(I){let J=new v(I.scheme,I.authority,I.path,I.query,I.fragment);return c(J,!0),J}toString(I=!1){return L(this,I)}toJSON(){return this}static revive(I){if(I){if(I instanceof m)return I;{let J=new v(I);return J._formatted=I.external,J._fsPath=I._sep===y?I.fsPath:null,J}}return I}}let y=i?1:void 0;class v extends m{_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=A(this,!1)),this._fsPath}toString(I=!1){return I?L(this,!0):(this._formatted||(this._formatted=L(this,!1)),this._formatted)}toJSON(){let I={$mid:1};return this._fsPath&&(I.fsPath=this._fsPath,I._sep=y),this._formatted&&(I.external=this._formatted),this.path&&(I.path=this.path),this.scheme&&(I.scheme=this.scheme),this.authority&&(I.authority=this.authority),this.query&&(I.query=this.query),this.fragment&&(I.fragment=this.fragment),I}}let T={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function P(U,I,J){let B,pe=-1;for(let ie=0;ie<U.length;ie++){let oe=U.charCodeAt(ie);if(oe>=97&&oe<=122||oe>=65&&oe<=90||oe>=48&&oe<=57||oe===45||oe===46||oe===95||oe===126||I&&oe===47||J&&oe===91||J&&oe===93||J&&oe===58)pe!==-1&&(B+=encodeURIComponent(U.substring(pe,ie)),pe=-1),B!==void 0&&(B+=U.charAt(ie));else{B===void 0&&(B=U.substr(0,ie));let st=T[oe];st!==void 0?(pe!==-1&&(B+=encodeURIComponent(U.substring(pe,ie)),pe=-1),B+=st):pe===-1&&(pe=ie)}}return pe!==-1&&(B+=encodeURIComponent(U.substring(pe))),B!==void 0?B:U}function q(U){let I;for(let J=0;J<U.length;J++){let B=U.charCodeAt(J);B===35||B===63?(I===void 0&&(I=U.substr(0,J)),I+=T[B]):I!==void 0&&(I+=U[J])}return I!==void 0?I:U}function A(U,I){let J;return J=U.authority&&U.path.length>1&&U.scheme==="file"?`//${U.authority}${U.path}`:U.path.charCodeAt(0)===47&&(U.path.charCodeAt(1)>=65&&U.path.charCodeAt(1)<=90||U.path.charCodeAt(1)>=97&&U.path.charCodeAt(1)<=122)&&U.path.charCodeAt(2)===58?I?U.path.substr(1):U.path[1].toLowerCase()+U.path.substr(2):U.path,i&&(J=J.replace(/\//g,"\\")),J}function L(U,I){let J=I?q:P,B="",{scheme:pe,authority:ie,path:oe,query:st,fragment:be}=U;if(pe&&(B+=pe,B+=":"),(ie||pe==="file")&&(B+=d,B+=d),ie){let Re=ie.indexOf("@");if(Re!==-1){let ct=ie.substr(0,Re);ie=ie.substr(Re+1),Re=ct.lastIndexOf(":"),Re===-1?B+=J(ct,!1,!1):(B+=J(ct.substr(0,Re),!1,!1),B+=":",B+=J(ct.substr(Re+1),!1,!0)),B+="@"}ie=ie.toLowerCase(),Re=ie.lastIndexOf(":"),Re===-1?B+=J(ie,!1,!0):(B+=J(ie.substr(0,Re),!1,!0),B+=ie.substr(Re))}if(oe){if(oe.length>=3&&oe.charCodeAt(0)===47&&oe.charCodeAt(2)===58){let Re=oe.charCodeAt(1);Re>=65&&Re<=90&&(oe=`/${String.fromCharCode(Re+32)}:${oe.substr(3)}`)}else if(oe.length>=2&&oe.charCodeAt(1)===58){let Re=oe.charCodeAt(0);Re>=65&&Re<=90&&(oe=`${String.fromCharCode(Re+32)}:${oe.substr(2)}`)}B+=J(oe,!0,!1)}return st&&(B+="?",B+=J(st,!1,!1)),be&&(B+="#",B+=I?be:P(be,!1,!1)),B}function K(U){try{return decodeURIComponent(U)}catch{return U.length>3?U.substr(0,3)+K(U.substr(3)):U}}let te=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function Z(U){return U.match(te)?U.replace(te,I=>K(I)):U}var V=t(470);let ne=V.posix||V,ce="/";var Ne;(function(U){U.joinPath=function(I,...J){return I.with({path:ne.join(I.path,...J)})},U.resolvePath=function(I,...J){let B=I.path,pe=!1;B[0]!==ce&&(B=ce+B,pe=!0);let ie=ne.resolve(B,...J);return pe&&ie[0]===ce&&!I.authority&&(ie=ie.substring(1)),I.with({path:ie})},U.dirname=function(I){if(I.path.length===0||I.path===ce)return I;let J=ne.dirname(I.path);return J.length===1&&J.charCodeAt(0)===46&&(J=""),I.with({path:J})},U.basename=function(I){return ne.basename(I.path)},U.extname=function(I){return ne.extname(I.path)}})(Ne||(Ne={}))})(),_h=r})();var{URI:cr,Utils:$t}=_h;var Io="2.0.0";var cn=require("./fmtk.js"),jn=ue.workspace.fs,hS=[{name:"Steam",factorioPath:"C:\\Program Files (x86)\\Steam\\steamapps\\common\\Factorio\\bin\\x64\\factorio.exe"},{name:"System",factorioPath:"C:\\Program Files\\Factorio\\bin\\x64\\factorio.exe"},{name:"Steam",factorioPath:"~/Library/Application Support/Steam/steamapps/common/Factorio/factorio.app/Contents/MacOS/factorio"},{name:"System",factorioPath:"/Applications/factorio.app/Contents/MacOS/factorio"},{name:"Home",factorioPath:"~/.factorio/bin/x64/factorio"}],Fo=class{constructor(e,t){this.context=e;this.output=t;this.bar=ue.window.createStatusBarItem("factorio-version",ue.StatusBarAlignment.Left,10),this.bar.name="Factorio Version Selector",this.bar.text="Factorio (unselected)",this.bar.command="factorio.selectVersion",this.bar.show(),e.subscriptions.push(this.bar),e.subscriptions.push(ue.commands.registerCommand("factorio.selectVersion",this.selectVersionCommand,this)),e.subscriptions.push(ue.commands.registerCommand("factorio.checkConfig",this.checkConfigCommand,this)),e.subscriptions.push(ue.commands.registerCommand("factorio.disablePrototypeCache",this.disablePrototypeCacheCommand,this)),e.subscriptions.push(ue.commands.registerCommand("factorio.disableMouseAutoCapture",this.disableMouseAutoCaptureCommand,this)),this.loadActiveVersion(),e.subscriptions.push(ue.workspace.onDidChangeConfiguration(r=>{r.affectsConfiguration("factorio.versions")&&this.loadActiveVersion()}))}bar;async loadActiveVersion(){let e=ue.workspace.getConfiguration("factorio"),t=e.get("versions",[]),r=t.find(o=>o.active);if(!r||this._active_version&&this._active_version.is(r))return;let i=await this.tryJsonDocs(r);if(!i){delete r.active,e.update("versions",t);return}this.bar.text=`Factorio ${i.application_version} (${r.name})`,this._active_version=new cn.ActiveFactorioVersion(ue.workspace.fs,r,i,ue.workspace.workspaceFolders),this.output.info(`Active Factorio version: ${r.name} (${i.application_version})`),this.checkDocs()}async checkConfigCommand(){this.output.info("Check Config:"),this.output.show();let e=await this.getActiveVersion();if(!e){this.output.error("No Active Factorio Version");return}this.output.info("Active Factorio Version:"),this.output.info(`Binary: ${await e.getBinaryVersion().catch(d=>d.toString())}`),this.output.info(`Runtime JSON: ${e.docs.application_version}`),await e.isPrototypeCacheEnabled()&&this.output.warn("Prototype Cache is enabled!"),await e.isMouseAutoCaptureDisabled()&&this.output.info("Mouse Auto Capture is disabled");let t=this.context.storageUri;if(!t){this.output.error("No Workspace");return}try{let d=(await jn.readFile($t.joinPath(t,"sumneko-3rd/factorio/config.json"))).toString(),g=JSON.parse(d);this.output.info(`Library bundle found in ${t.fsPath}, generated from Factorio ${g.factorioVersion} with FMTK ${g.bundleVersion}`);for(let m of await cn.LuaLSAddon.getLuaFiles())try{(await jn.readFile($t.joinPath(t,"sumneko-3rd",m.name))).toString()!==m.content&&this.output.info(`file ${m.name} content mismatch!`)}catch(y){this.output.error(`file ${m.name} ${y}`)}}catch(d){this.output.error(`Missing or damaged library bundle info ${d}`)}let r=ue.extensions.getExtension("sumneko.lua");if(!r){this.output.warn("LuaLS (sumneko.lua) not present!");return}this.output.info(`LuaLS ${r.packageJSON.version} ${r.isActive?"Activated":"Not Yet Activated"}`);let i=ue.workspace.getConfiguration("Lua"),o=i.get("workspace.userThirdParty");if(!o)this.output.warn("Lua.workspace.userThirdParty not present!");else{let d=$t.joinPath(t,"sumneko-3rd").fsPath;o.includes(d)?this.output.info(`Lua.workspace.userThirdParty: workspace link OK (${d})`):this.output.warn(`Lua.workspace.userThirdParty: workspace link missing! (${d})`);let g=o.filter(m=>m!==d);for(let m of g)m.match(/justarandomgeek\.factoriomod\-debug[\\\/]sumneko\-3rd$/)?this.output.warn(`Lua.workspace.userThirdParty: stale workspace link? (${m})`):this.output.info(`Lua.workspace.userThirdParty: other library (${m})`)}let s=i.get("workspace.checkThirdParty"),a=s==="ApplyInMemory";s===!1||s==="Disable"?this.output.warn(`Lua.workspace.checkThirdParty = ${s}`):this.output.info(`Lua.workspace.checkThirdParty = ${s}`);let c=i.get("workspace.library");if(!c)this.output.warn("Lua.workspace.library not present!");else{let d=cr.file(await e.dataPath()).fsPath;c.includes(d)?this.output.info(`Lua.workspace.library: /data link OK (${d})`):this.output.warn(`Lua.workspace.library: /data link missing! (${d})`);let g=$t.joinPath(t,"sumneko-3rd/factorio/library").fsPath,m=c.find(v=>cr.file(v).fsPath===g);m?a?this.output.warn(`Lua.workspace.library: redundant workspace library link (${m})`):this.output.info(`Lua.workspace.library: workspace library link OK (${m})`):a||this.output.warn(`Lua.workspace.library: workspace library link missing! (${g})`);let y=c.filter(v=>![d,m].includes(v));for(let v of y)v.match(/justarandomgeek\.factoriomod\-debug[\\\/]sumneko\-3rd[\\\/]factorio[\\\/]library$/)?this.output.warn(`Lua.workspace.library: stale workspace link? (${v})`):v.endsWith("data")?this.output.warn(`Lua.workspace.library: stale data link? (${v})`):this.output.info(`Lua.workspace.library: other library (${v})`)}let u=i.get("runtime.plugin");if(!u)a||this.output.warn("Lua.runtime.plugin not present!");else{let d=$t.joinPath(t,"sumneko-3rd/factorio/plugin.lua").fsPath.replace(/[\\]/g,"/");u===d?a?this.output.warn(`Lua.runtime.plugin: redundant workspace link (${u})`):this.output.info(`Lua.runtime.plugin: OK (${u})`):this.output.warn(`Lua.runtime.plugin: wrong plugin? (${u})`)}}async disablePrototypeCacheCommand(){return(await this.getActiveVersion())?.disablePrototypeCache()}async disableMouseAutoCaptureCommand(){return(await this.getActiveVersion())?.disableMouseAutoCapture()}async selectVersionCommand(){if(ue.debug.activeDebugSession?.type==="factoriomod"){ue.window.showInformationMessage("Cannot select Factorio version while debugging.");return}let e=ue.workspace.getConfiguration("factorio"),t=e.get("versions",[]),r=t.map(u=>u.factorioPath),i=(await Promise.all(hS.filter(u=>!r.includes(u.factorioPath)).map(async u=>{try{return(await jn.stat(cr.file((0,cn.substitutePathVariables)(u.factorioPath,ue.workspace.workspaceFolders)))).type&ue.FileType.File?u:void 0}catch{return}}))).filter(u=>!!u),o=await ue.window.showQuickPick(Promise.all([...t.map(async u=>({fv:u,label:u.name,description:(await this.tryJsonDocs(u))?.application_version,detail:u.factorioPath,picked:u.active})),...i.map(async u=>({fv:u,label:`${u.name} (autodetected)`,description:(await this.tryJsonDocs(u))?.application_version,detail:u.factorioPath})),{fv:void 0,label:"Select other version..."}]),{title:"Select Factorio Version"});if(!o)return;let s=o.fv;if(s){let u=!1;try{(await jn.stat(cr.file((0,cn.substitutePathVariables)(s.factorioPath,ue.workspace.workspaceFolders)))).type&ue.FileType.File&&(u=!0)}catch{}if(!u)switch(await ue.window.showErrorMessage("The selected factorio version is no longer present at the specified location","Remove from settings","Cancel")){case"Remove from settings":e.update("versions",t.filter(g=>g!==s));return;default:return}}if(!s){let u=await ue.window.showOpenDialog({canSelectFiles:!0,canSelectFolders:!1,openLabel:"Select Factorio binary",filters:Xa.platform()==="win32"?{"":["exe"]}:void 0});if(!u)return;let d=await ue.window.showInputBox({prompt:"Display Name for this version",placeHolder:"Enter a display name to be used in the Version Selector for this version"});if(!d)return;s={name:d,factorioPath:u[0].fsPath}}let a;try{a=await this.tryJsonDocs(s,!0)}catch(u){if(await ue.window.showErrorMessage(`Unable to read JSON docs: ${u}`,"Select alternate location","Cancel")!=="Select alternate location")return;let d=await ue.window.showOpenDialog({canSelectFiles:!0,canSelectFolders:!1,openLabel:"Select Runtime JSON Docs",title:"Select Runtime JSON Docs",filters:{"JSON Docs":["json"]}});if(!d)return;s.docsPath=Th.relative((0,cn.substitutePathVariables)(s.factorioPath,ue.workspace.workspaceFolders),d[0].fsPath);try{a=await this.tryJsonDocs(s,!0)}catch(g){ue.window.showErrorMessage(`Unable to read JSON docs: ${g}`);return}}t.includes(s)||t.push(s),t.forEach(u=>delete u.active),s.active=!0,e.update("versions",t),this.bar.text=`Factorio ${a.application_version} (${s.name})`;let c=this._active_version;this._active_version=new cn.ActiveFactorioVersion(ue.workspace.fs,s,a,ue.workspace.workspaceFolders),this.output.info(`Active Factorio version: ${s.name} (${a.application_version})`),await this.generateDocs(c)}_active_version;async getActiveVersion(){return this._active_version||await this.selectVersionCommand(),this._active_version}async tryJsonDocs(e,t){let r=$t.joinPath(cr.file((0,cn.substitutePathVariables)(e.factorioPath,ue.workspace.workspaceFolders)),e.docsPath?e.docsPath:Xa.platform()==="darwin"?"../../doc-html/runtime-api.json":"../../../doc-html/runtime-api.json"),i=await ue.workspace.getConfiguration("factorio").get("docs",{});try{return new cn.ApiDocGenerator((await jn.readFile(r)).toString(),i)}catch(o){if(!t)return;throw o}}async checkDocs(){let e=await this.getActiveVersion();if(!e)return;let t=this.context.storageUri;if(t)try{let r=(await jn.readFile($t.joinPath(t,"sumneko-3rd/factorio/config.json"))).toString(),i=JSON.parse(r);if(i.factorioVersion!==e.docs.application_version||i.bundleVersion!==Io){this.generateDocs();return}}catch{this.generateDocs();return}}async generateDocs(e){if(!ue.workspace.getConfiguration("factorio").get("docs.generateDocs",!0))return;let t=await this.getActiveVersion();if(!t)return;let r=this.context.storageUri;if(!r){ue.window.showErrorMessage("Unable to generate docs: no open workspace");return}let i=$t.joinPath(r,"sumneko-3rd");await jn.createDirectory(i);try{await Promise.allSettled([jn.delete($t.joinPath(i,"factorio","library"),{recursive:!0}),jn.delete($t.joinPath(i,"factorio","factorio-plugin"),{recursive:!0})])}catch{}let o=["sumneko-3rd","-d",t.docsPath,"-p",t.protosPath];await Ln({close(){},write(P){}},this.context.asAbsolutePath("./dist/fmtk-cli.js"),o,i.fsPath);let s=ue.workspace.getConfiguration("Lua"),a=s.get("workspace.library",[]),c=(P,...q)=>{if(P){let A=$t.joinPath(P,...q),L=a.indexOf(A.fsPath);L!==-1&&a.splice(L,1)}},u=async(P,...q)=>{try{let A=$t.joinPath(P,...q);!a.includes(A.fsPath)&&(await jn.stat(A)).type&ue.FileType.Directory&&a.push(A.fsPath)}catch{}},d=ue.workspace.getConfiguration("factorio");if(e){let P=cr.file(await e.dataPath());c(P)}if(a.length===0?await s.update("workspace.library",void 0):await s.update("workspace.library",a),d.get("workspace.manageLibraryDataLinks",!0)){let P=cr.file(await t.dataPath());await u(P)}a.length===0?await s.update("workspace.library",void 0):await s.update("workspace.library",a);let g=s.get("workspace.userThirdParty",[]),m=!1,y=$t.joinPath(r,"sumneko-3rd").fsPath;g=g.filter(P=>P===y?(m=!0,!0):!P.includes("justarandomgeek.factoriomod-debug")),m||g.push(y),await s.update("workspace.userThirdParty",g);let v=s.get("workspace.checkThirdParty");v&&["Ask","Apply","ApplyInMemory"].includes(v)||await s.update("workspace.checkThirdParty","ApplyInMemory");let T=ue.extensions.getExtension("sumneko.lua");T&&(T.isActive?m||await ue.window.showInformationMessage("Lua Language Server is already running and may not notice the newly-installed library bundle. Reload VSCode to force it to re-check.","Reload Now","Reload Later")==="Reload Now"&&ue.commands.executeCommand("workbench.action.restartExtensionHost"):await T.activate())}};var Ph=mt(require("vscode"));var de=mt(require("vscode")),Qa=require("console");function Vr(n,e){return isNaN(n)?e:isNaN(e)?n:Math.max(n,e)}var zr=class n{constructor(e=0,t=0){this.timer=e;this.count=t}add(e){return e?new n(this.timer+e.timer,this.count+e.count):this}avg(){return this.timer/this.count}},Oo=class{functions=new Map;lines=new Map;add(e){e.functions.forEach((t,r)=>{this.functions.set(r,t.add(this.functions.get(r)))}),e.lines.forEach((t,r)=>{this.lines.set(r,t.add(this.lines.get(r)))})}max(){let e={func:{timer:0,count:0,average:0},line:{timer:0,count:0,average:0}};return this.functions.forEach(t=>{e.func.timer=Vr(e.func.timer,t.timer),e.func.count=Vr(e.func.count,t.count),e.func.average=Vr(e.func.average,t.avg())}),this.lines.forEach(t=>{e.line.timer=Vr(e.line.timer,t.timer),e.line.count=Vr(e.line.count,t.count),e.line.average=Vr(e.line.average,t.avg())}),e}},Ya=class{totalTime=0;file=new Map},Mo=class n{constructor(e,t,r,i){this.name=e;this.value=t;this.filename=r;this.line=i}children=[];ToStringInner(e){return`${e}${this.name} : ${this.value}
210
+ `)),close:()=>r.fire()},this.tokensource.token),r.fire()}close(){this.tokensource.cancel()}};var le=mt(require("vscode")),Xa=mt(require("os")),Th=mt(require("path"));var _h;(()=>{"use strict";var n={470:i=>{function o(c){if(typeof c!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(c))}function s(c,u){for(var d,g="",m=0,y=-1,v=0,T=0;T<=c.length;++T){if(T<c.length)d=c.charCodeAt(T);else{if(d===47)break;d=47}if(d===47){if(!(y===T-1||v===1))if(y!==T-1&&v===2){if(g.length<2||m!==2||g.charCodeAt(g.length-1)!==46||g.charCodeAt(g.length-2)!==46){if(g.length>2){var P=g.lastIndexOf("/");if(P!==g.length-1){P===-1?(g="",m=0):m=(g=g.slice(0,P)).length-1-g.lastIndexOf("/"),y=T,v=0;continue}}else if(g.length===2||g.length===1){g="",m=0,y=T,v=0;continue}}u&&(g.length>0?g+="/..":g="..",m=2)}else g.length>0?g+="/"+c.slice(y+1,T):g=c.slice(y+1,T),m=T-y-1;y=T,v=0}else d===46&&v!==-1?++v:v=-1}return g}var a={resolve:function(){for(var c,u="",d=!1,g=arguments.length-1;g>=-1&&!d;g--){var m;g>=0?m=arguments[g]:(c===void 0&&(c=process.cwd()),m=c),o(m),m.length!==0&&(u=m+"/"+u,d=m.charCodeAt(0)===47)}return u=s(u,!d),d?u.length>0?"/"+u:"/":u.length>0?u:"."},normalize:function(c){if(o(c),c.length===0)return".";var u=c.charCodeAt(0)===47,d=c.charCodeAt(c.length-1)===47;return(c=s(c,!u)).length!==0||u||(c="."),c.length>0&&d&&(c+="/"),u?"/"+c:c},isAbsolute:function(c){return o(c),c.length>0&&c.charCodeAt(0)===47},join:function(){if(arguments.length===0)return".";for(var c,u=0;u<arguments.length;++u){var d=arguments[u];o(d),d.length>0&&(c===void 0?c=d:c+="/"+d)}return c===void 0?".":a.normalize(c)},relative:function(c,u){if(o(c),o(u),c===u||(c=a.resolve(c))===(u=a.resolve(u)))return"";for(var d=1;d<c.length&&c.charCodeAt(d)===47;++d);for(var g=c.length,m=g-d,y=1;y<u.length&&u.charCodeAt(y)===47;++y);for(var v=u.length-y,T=m<v?m:v,P=-1,q=0;q<=T;++q){if(q===T){if(v>T){if(u.charCodeAt(y+q)===47)return u.slice(y+q+1);if(q===0)return u.slice(y+q)}else m>T&&(c.charCodeAt(d+q)===47?P=q:q===0&&(P=0));break}var L=c.charCodeAt(d+q);if(L!==u.charCodeAt(y+q))break;L===47&&(P=q)}var N="";for(q=d+P+1;q<=g;++q)q!==g&&c.charCodeAt(q)!==47||(N.length===0?N+="..":N+="/..");return N.length>0?N+u.slice(y+P):(y+=P,u.charCodeAt(y)===47&&++y,u.slice(y))},_makeLong:function(c){return c},dirname:function(c){if(o(c),c.length===0)return".";for(var u=c.charCodeAt(0),d=u===47,g=-1,m=!0,y=c.length-1;y>=1;--y)if((u=c.charCodeAt(y))===47){if(!m){g=y;break}}else m=!1;return g===-1?d?"/":".":d&&g===1?"//":c.slice(0,g)},basename:function(c,u){if(u!==void 0&&typeof u!="string")throw new TypeError('"ext" argument must be a string');o(c);var d,g=0,m=-1,y=!0;if(u!==void 0&&u.length>0&&u.length<=c.length){if(u.length===c.length&&u===c)return"";var v=u.length-1,T=-1;for(d=c.length-1;d>=0;--d){var P=c.charCodeAt(d);if(P===47){if(!y){g=d+1;break}}else T===-1&&(y=!1,T=d+1),v>=0&&(P===u.charCodeAt(v)?--v==-1&&(m=d):(v=-1,m=T))}return g===m?m=T:m===-1&&(m=c.length),c.slice(g,m)}for(d=c.length-1;d>=0;--d)if(c.charCodeAt(d)===47){if(!y){g=d+1;break}}else m===-1&&(y=!1,m=d+1);return m===-1?"":c.slice(g,m)},extname:function(c){o(c);for(var u=-1,d=0,g=-1,m=!0,y=0,v=c.length-1;v>=0;--v){var T=c.charCodeAt(v);if(T!==47)g===-1&&(m=!1,g=v+1),T===46?u===-1?u=v:y!==1&&(y=1):u!==-1&&(y=-1);else if(!m){d=v+1;break}}return u===-1||g===-1||y===0||y===1&&u===g-1&&u===d+1?"":c.slice(u,g)},format:function(c){if(c===null||typeof c!="object")throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof c);return function(u,d){var g=d.dir||d.root,m=d.base||(d.name||"")+(d.ext||"");return g?g===d.root?g+m:g+"/"+m:m}(0,c)},parse:function(c){o(c);var u={root:"",dir:"",base:"",ext:"",name:""};if(c.length===0)return u;var d,g=c.charCodeAt(0),m=g===47;m?(u.root="/",d=1):d=0;for(var y=-1,v=0,T=-1,P=!0,q=c.length-1,L=0;q>=d;--q)if((g=c.charCodeAt(q))!==47)T===-1&&(P=!1,T=q+1),g===46?y===-1?y=q:L!==1&&(L=1):y!==-1&&(L=-1);else if(!P){v=q+1;break}return y===-1||T===-1||L===0||L===1&&y===T-1&&y===v+1?T!==-1&&(u.base=u.name=v===0&&m?c.slice(1,T):c.slice(v,T)):(v===0&&m?(u.name=c.slice(1,y),u.base=c.slice(1,T)):(u.name=c.slice(v,y),u.base=c.slice(v,T)),u.ext=c.slice(y,T)),v>0?u.dir=c.slice(0,v-1):m&&(u.dir="/"),u},sep:"/",delimiter:":",win32:null,posix:null};a.posix=a,i.exports=a}},e={};function t(i){var o=e[i];if(o!==void 0)return o.exports;var s=e[i]={exports:{}};return n[i](s,s.exports,t),s.exports}t.d=(i,o)=>{for(var s in o)t.o(o,s)&&!t.o(i,s)&&Object.defineProperty(i,s,{enumerable:!0,get:o[s]})},t.o=(i,o)=>Object.prototype.hasOwnProperty.call(i,o),t.r=i=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(i,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(i,"__esModule",{value:!0})};var r={};(()=>{let i;t.r(r),t.d(r,{URI:()=>m,Utils:()=>Ne}),typeof process=="object"?i=process.platform==="win32":typeof navigator=="object"&&(i=navigator.userAgent.indexOf("Windows")>=0);let o=/^\w[\w\d+.-]*$/,s=/^\//,a=/^\/\//;function c(U,I){if(!U.scheme&&I)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${U.authority}", path: "${U.path}", query: "${U.query}", fragment: "${U.fragment}"}`);if(U.scheme&&!o.test(U.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(U.path){if(U.authority){if(!s.test(U.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(a.test(U.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}let u="",d="/",g=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class m{static isUri(I){return I instanceof m||!!I&&typeof I.authority=="string"&&typeof I.fragment=="string"&&typeof I.path=="string"&&typeof I.query=="string"&&typeof I.scheme=="string"&&typeof I.fsPath=="string"&&typeof I.with=="function"&&typeof I.toString=="function"}scheme;authority;path;query;fragment;constructor(I,J,B,pe,ie,oe=!1){typeof I=="object"?(this.scheme=I.scheme||u,this.authority=I.authority||u,this.path=I.path||u,this.query=I.query||u,this.fragment=I.fragment||u):(this.scheme=function(st,be){return st||be?st:"file"}(I,oe),this.authority=J||u,this.path=function(st,be){switch(st){case"https":case"http":case"file":be?be[0]!==d&&(be=d+be):be=d}return be}(this.scheme,B||u),this.query=pe||u,this.fragment=ie||u,c(this,oe))}get fsPath(){return L(this,!1)}with(I){if(!I)return this;let{scheme:J,authority:B,path:pe,query:ie,fragment:oe}=I;return J===void 0?J=this.scheme:J===null&&(J=u),B===void 0?B=this.authority:B===null&&(B=u),pe===void 0?pe=this.path:pe===null&&(pe=u),ie===void 0?ie=this.query:ie===null&&(ie=u),oe===void 0?oe=this.fragment:oe===null&&(oe=u),J===this.scheme&&B===this.authority&&pe===this.path&&ie===this.query&&oe===this.fragment?this:new v(J,B,pe,ie,oe)}static parse(I,J=!1){let B=g.exec(I);return B?new v(B[2]||u,Z(B[4]||u),Z(B[5]||u),Z(B[7]||u),Z(B[9]||u),J):new v(u,u,u,u,u)}static file(I){let J=u;if(i&&(I=I.replace(/\\/g,d)),I[0]===d&&I[1]===d){let B=I.indexOf(d,2);B===-1?(J=I.substring(2),I=d):(J=I.substring(2,B),I=I.substring(B)||d)}return new v("file",J,I,u,u)}static from(I){let J=new v(I.scheme,I.authority,I.path,I.query,I.fragment);return c(J,!0),J}toString(I=!1){return N(this,I)}toJSON(){return this}static revive(I){if(I){if(I instanceof m)return I;{let J=new v(I);return J._formatted=I.external,J._fsPath=I._sep===y?I.fsPath:null,J}}return I}}let y=i?1:void 0;class v extends m{_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=L(this,!1)),this._fsPath}toString(I=!1){return I?N(this,!0):(this._formatted||(this._formatted=N(this,!1)),this._formatted)}toJSON(){let I={$mid:1};return this._fsPath&&(I.fsPath=this._fsPath,I._sep=y),this._formatted&&(I.external=this._formatted),this.path&&(I.path=this.path),this.scheme&&(I.scheme=this.scheme),this.authority&&(I.authority=this.authority),this.query&&(I.query=this.query),this.fragment&&(I.fragment=this.fragment),I}}let T={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function P(U,I,J){let B,pe=-1;for(let ie=0;ie<U.length;ie++){let oe=U.charCodeAt(ie);if(oe>=97&&oe<=122||oe>=65&&oe<=90||oe>=48&&oe<=57||oe===45||oe===46||oe===95||oe===126||I&&oe===47||J&&oe===91||J&&oe===93||J&&oe===58)pe!==-1&&(B+=encodeURIComponent(U.substring(pe,ie)),pe=-1),B!==void 0&&(B+=U.charAt(ie));else{B===void 0&&(B=U.substr(0,ie));let st=T[oe];st!==void 0?(pe!==-1&&(B+=encodeURIComponent(U.substring(pe,ie)),pe=-1),B+=st):pe===-1&&(pe=ie)}}return pe!==-1&&(B+=encodeURIComponent(U.substring(pe))),B!==void 0?B:U}function q(U){let I;for(let J=0;J<U.length;J++){let B=U.charCodeAt(J);B===35||B===63?(I===void 0&&(I=U.substr(0,J)),I+=T[B]):I!==void 0&&(I+=U[J])}return I!==void 0?I:U}function L(U,I){let J;return J=U.authority&&U.path.length>1&&U.scheme==="file"?`//${U.authority}${U.path}`:U.path.charCodeAt(0)===47&&(U.path.charCodeAt(1)>=65&&U.path.charCodeAt(1)<=90||U.path.charCodeAt(1)>=97&&U.path.charCodeAt(1)<=122)&&U.path.charCodeAt(2)===58?I?U.path.substr(1):U.path[1].toLowerCase()+U.path.substr(2):U.path,i&&(J=J.replace(/\//g,"\\")),J}function N(U,I){let J=I?q:P,B="",{scheme:pe,authority:ie,path:oe,query:st,fragment:be}=U;if(pe&&(B+=pe,B+=":"),(ie||pe==="file")&&(B+=d,B+=d),ie){let Re=ie.indexOf("@");if(Re!==-1){let ct=ie.substr(0,Re);ie=ie.substr(Re+1),Re=ct.lastIndexOf(":"),Re===-1?B+=J(ct,!1,!1):(B+=J(ct.substr(0,Re),!1,!1),B+=":",B+=J(ct.substr(Re+1),!1,!0)),B+="@"}ie=ie.toLowerCase(),Re=ie.lastIndexOf(":"),Re===-1?B+=J(ie,!1,!0):(B+=J(ie.substr(0,Re),!1,!0),B+=ie.substr(Re))}if(oe){if(oe.length>=3&&oe.charCodeAt(0)===47&&oe.charCodeAt(2)===58){let Re=oe.charCodeAt(1);Re>=65&&Re<=90&&(oe=`/${String.fromCharCode(Re+32)}:${oe.substr(3)}`)}else if(oe.length>=2&&oe.charCodeAt(1)===58){let Re=oe.charCodeAt(0);Re>=65&&Re<=90&&(oe=`${String.fromCharCode(Re+32)}:${oe.substr(2)}`)}B+=J(oe,!0,!1)}return st&&(B+="?",B+=J(st,!1,!1)),be&&(B+="#",B+=I?be:P(be,!1,!1)),B}function K(U){try{return decodeURIComponent(U)}catch{return U.length>3?U.substr(0,3)+K(U.substr(3)):U}}let te=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function Z(U){return U.match(te)?U.replace(te,I=>K(I)):U}var V=t(470);let ne=V.posix||V,ce="/";var Ne;(function(U){U.joinPath=function(I,...J){return I.with({path:ne.join(I.path,...J)})},U.resolvePath=function(I,...J){let B=I.path,pe=!1;B[0]!==ce&&(B=ce+B,pe=!0);let ie=ne.resolve(B,...J);return pe&&ie[0]===ce&&!I.authority&&(ie=ie.substring(1)),I.with({path:ie})},U.dirname=function(I){if(I.path.length===0||I.path===ce)return I;let J=ne.dirname(I.path);return J.length===1&&J.charCodeAt(0)===46&&(J=""),I.with({path:J})},U.basename=function(I){return ne.basename(I.path)},U.extname=function(I){return ne.extname(I.path)}})(Ne||(Ne={}))})(),_h=r})();var{URI:cr,Utils:$t}=_h;var Io="2.0.1";var cn=require("./fmtk.js"),jn=le.workspace.fs,hS=[{name:"Steam",factorioPath:"C:\\Program Files (x86)\\Steam\\steamapps\\common\\Factorio\\bin\\x64\\factorio.exe"},{name:"System",factorioPath:"C:\\Program Files\\Factorio\\bin\\x64\\factorio.exe"},{name:"Steam",factorioPath:"~/Library/Application Support/Steam/steamapps/common/Factorio/factorio.app/Contents/MacOS/factorio"},{name:"System",factorioPath:"/Applications/factorio.app/Contents/MacOS/factorio"},{name:"Home",factorioPath:"~/.factorio/bin/x64/factorio"}],Fo=class{constructor(e,t){this.context=e;this.output=t;this.bar=le.window.createStatusBarItem("factorio-version",le.StatusBarAlignment.Left,10),this.bar.name="Factorio Version Selector",this.bar.text="Factorio (unselected)",this.bar.command="factorio.selectVersion",this.bar.show(),e.subscriptions.push(this.bar),e.subscriptions.push(le.commands.registerCommand("factorio.selectVersion",this.selectVersionCommand,this)),e.subscriptions.push(le.commands.registerCommand("factorio.checkConfig",this.checkConfigCommand,this)),e.subscriptions.push(le.commands.registerCommand("factorio.disablePrototypeCache",this.disablePrototypeCacheCommand,this)),e.subscriptions.push(le.commands.registerCommand("factorio.disableMouseAutoCapture",this.disableMouseAutoCaptureCommand,this)),this.loadActiveVersion(),e.subscriptions.push(le.workspace.onDidChangeConfiguration(r=>{r.affectsConfiguration("factorio.versions")&&this.loadActiveVersion()}))}bar;async loadActiveVersion(){let e=le.workspace.getConfiguration("factorio"),t=e.get("versions",[]),r=t.find(o=>o.active);if(!r||this._active_version&&this._active_version.is(r))return;let i=await this.tryJsonDocs(r);if(!i){delete r.active,e.update("versions",t);return}this.bar.text=`Factorio ${i.application_version} (${r.name})`,this._active_version=new cn.ActiveFactorioVersion(le.workspace.fs,r,i,le.workspace.workspaceFolders),this.output.info(`Active Factorio version: ${r.name} (${i.application_version})`),this.checkDocs()}async checkConfigCommand(){this.output.info("Check Config:"),this.output.show();let e=await this.getActiveVersion();if(!e){this.output.error("No Active Factorio Version");return}this.output.info("Active Factorio Version:"),this.output.info(`Binary: ${await e.getBinaryVersion().catch(d=>d.toString())}`),this.output.info(`Runtime JSON: ${e.docs.application_version}`),await e.isPrototypeCacheEnabled()&&this.output.warn("Prototype Cache is enabled!"),await e.isMouseAutoCaptureDisabled()&&this.output.info("Mouse Auto Capture is disabled");let t=this.context.storageUri;if(!t){this.output.error("No Workspace");return}try{let d=(await jn.readFile($t.joinPath(t,"sumneko-3rd/factorio/config.json"))).toString(),g=JSON.parse(d);this.output.info(`Library bundle found in ${t.fsPath}, generated from Factorio ${g.factorioVersion} with FMTK ${g.bundleVersion}`);for(let m of await cn.LuaLSAddon.getLuaFiles())try{(await jn.readFile($t.joinPath(t,"sumneko-3rd",m.name))).toString()!==m.content&&this.output.info(`file ${m.name} content mismatch!`)}catch(y){this.output.error(`file ${m.name} ${y}`)}}catch(d){this.output.error(`Missing or damaged library bundle info ${d}`)}let r=le.extensions.getExtension("sumneko.lua");if(!r){this.output.warn("LuaLS (sumneko.lua) not present!");return}this.output.info(`LuaLS ${r.packageJSON.version} ${r.isActive?"Activated":"Not Yet Activated"}`);let i=le.workspace.getConfiguration("Lua"),o=i.get("workspace.userThirdParty");if(!o)this.output.warn("Lua.workspace.userThirdParty not present!");else{let d=$t.joinPath(t,"sumneko-3rd").fsPath;o.includes(d)?this.output.info(`Lua.workspace.userThirdParty: workspace link OK (${d})`):this.output.warn(`Lua.workspace.userThirdParty: workspace link missing! (${d})`);let g=o.filter(m=>m!==d);for(let m of g)m.match(/justarandomgeek\.factoriomod\-debug[\\\/]sumneko\-3rd$/)?this.output.warn(`Lua.workspace.userThirdParty: stale workspace link? (${m})`):this.output.info(`Lua.workspace.userThirdParty: other library (${m})`)}let s=i.get("workspace.checkThirdParty"),a=s==="ApplyInMemory";s===!1||s==="Disable"?this.output.warn(`Lua.workspace.checkThirdParty = ${s}`):this.output.info(`Lua.workspace.checkThirdParty = ${s}`);let c=i.get("workspace.library");if(!c)this.output.warn("Lua.workspace.library not present!");else{let d=cr.file(await e.dataPath()).fsPath;c.includes(d)?this.output.info(`Lua.workspace.library: /data link OK (${d})`):this.output.warn(`Lua.workspace.library: /data link missing! (${d})`);let g=$t.joinPath(t,"sumneko-3rd/factorio/library").fsPath,m=c.find(v=>cr.file(v).fsPath===g);m?a?this.output.warn(`Lua.workspace.library: redundant workspace library link (${m})`):this.output.info(`Lua.workspace.library: workspace library link OK (${m})`):a||this.output.warn(`Lua.workspace.library: workspace library link missing! (${g})`);let y=c.filter(v=>![d,m].includes(v));for(let v of y)v.match(/justarandomgeek\.factoriomod\-debug[\\\/]sumneko\-3rd[\\\/]factorio[\\\/]library$/)?this.output.warn(`Lua.workspace.library: stale workspace link? (${v})`):v.endsWith("data")?this.output.warn(`Lua.workspace.library: stale data link? (${v})`):this.output.info(`Lua.workspace.library: other library (${v})`)}let u=i.get("runtime.plugin");if(!u)a||this.output.warn("Lua.runtime.plugin not present!");else{let d=$t.joinPath(t,"sumneko-3rd/factorio/plugin.lua").fsPath.replace(/[\\]/g,"/");u===d?a?this.output.warn(`Lua.runtime.plugin: redundant workspace link (${u})`):this.output.info(`Lua.runtime.plugin: OK (${u})`):this.output.warn(`Lua.runtime.plugin: wrong plugin? (${u})`)}}async disablePrototypeCacheCommand(){return(await this.getActiveVersion())?.disablePrototypeCache()}async disableMouseAutoCaptureCommand(){return(await this.getActiveVersion())?.disableMouseAutoCapture()}async selectVersionCommand(){if(le.debug.activeDebugSession?.type==="factoriomod"){le.window.showInformationMessage("Cannot select Factorio version while debugging.");return}let e=le.workspace.getConfiguration("factorio"),t=e.get("versions",[]),r=t.map(u=>u.factorioPath),i=(await Promise.all(hS.filter(u=>!r.includes(u.factorioPath)).map(async u=>{try{return(await jn.stat(cr.file((0,cn.substitutePathVariables)(u.factorioPath,le.workspace.workspaceFolders)))).type&le.FileType.File?u:void 0}catch{return}}))).filter(u=>!!u),o=await le.window.showQuickPick(Promise.all([...t.map(async u=>({fv:u,label:u.name,description:(await this.tryJsonDocs(u))?.application_version,detail:u.factorioPath,picked:u.active})),...i.map(async u=>({fv:u,label:`${u.name} (autodetected)`,description:(await this.tryJsonDocs(u))?.application_version,detail:u.factorioPath})),{fv:void 0,label:"Select other version..."}]),{title:"Select Factorio Version"});if(!o)return;let s=o.fv;if(s){let u=!1;try{(await jn.stat(cr.file((0,cn.substitutePathVariables)(s.factorioPath,le.workspace.workspaceFolders)))).type&le.FileType.File&&(u=!0)}catch{}if(!u)switch(await le.window.showErrorMessage("The selected factorio version is no longer present at the specified location","Remove from settings","Cancel")){case"Remove from settings":e.update("versions",t.filter(g=>g!==s));return;default:return}}if(!s){let u=await le.window.showOpenDialog({canSelectFiles:!0,canSelectFolders:!1,openLabel:"Select Factorio binary",filters:Xa.platform()==="win32"?{"":["exe"]}:void 0});if(!u)return;let d=await le.window.showInputBox({prompt:"Display Name for this version",placeHolder:"Enter a display name to be used in the Version Selector for this version"});if(!d)return;s={name:d,factorioPath:u[0].fsPath}}let a;try{a=await this.tryJsonDocs(s,!0)}catch(u){if(await le.window.showErrorMessage(`Unable to read JSON docs: ${u}`,"Select alternate location","Cancel")!=="Select alternate location")return;let d=await le.window.showOpenDialog({canSelectFiles:!0,canSelectFolders:!1,openLabel:"Select Runtime JSON Docs",title:"Select Runtime JSON Docs",filters:{"JSON Docs":["json"]}});if(!d)return;s.docsPath=Th.relative((0,cn.substitutePathVariables)(s.factorioPath,le.workspace.workspaceFolders),d[0].fsPath);try{a=await this.tryJsonDocs(s,!0)}catch(g){le.window.showErrorMessage(`Unable to read JSON docs: ${g}`);return}}t.includes(s)||t.push(s),t.forEach(u=>delete u.active),s.active=!0,e.update("versions",t),this.bar.text=`Factorio ${a.application_version} (${s.name})`;let c=this._active_version;this._active_version=new cn.ActiveFactorioVersion(le.workspace.fs,s,a,le.workspace.workspaceFolders),this.output.info(`Active Factorio version: ${s.name} (${a.application_version})`),await this.generateDocs(c)}_active_version;async getActiveVersion(){return this._active_version||await this.selectVersionCommand(),this._active_version}async tryJsonDocs(e,t){let r=$t.joinPath(cr.file((0,cn.substitutePathVariables)(e.factorioPath,le.workspace.workspaceFolders)),e.docsPath?e.docsPath:Xa.platform()==="darwin"?"../../doc-html/runtime-api.json":"../../../doc-html/runtime-api.json"),i=await le.workspace.getConfiguration("factorio").get("docs",{});try{return new cn.ApiDocGenerator((await jn.readFile(r)).toString(),i)}catch(o){if(!t)return;throw o}}async checkDocs(){let e=await this.getActiveVersion();if(!e)return;let t=this.context.storageUri;if(t)try{let r=(await jn.readFile($t.joinPath(t,"sumneko-3rd/factorio/config.json"))).toString(),i=JSON.parse(r);if(i.factorioVersion!==e.docs.application_version||i.bundleVersion!==Io){this.generateDocs();return}}catch{this.generateDocs();return}}async generateDocs(e){if(!le.workspace.getConfiguration("factorio").get("docs.generateDocs",!0))return;let t=await this.getActiveVersion();if(!t)return;let r=this.context.storageUri;if(!r){le.window.showErrorMessage("Unable to generate docs: no open workspace");return}let i=$t.joinPath(r,"sumneko-3rd");await jn.createDirectory(i);try{await Promise.allSettled([jn.delete($t.joinPath(i,"factorio","library"),{recursive:!0}),jn.delete($t.joinPath(i,"factorio","factorio-plugin"),{recursive:!0})])}catch{}let o=["sumneko-3rd","-d",t.docsPath,"-p",t.protosPath];await Ln({close(){},write(T){}},this.context.asAbsolutePath("./dist/fmtk-cli.js"),o,i.fsPath);let s=le.workspace.getConfiguration("Lua"),a=s.get("workspace.library",[]),c=(T,...P)=>{if(T){let q=$t.joinPath(T,...P),L=a.indexOf(q.fsPath);L!==-1&&a.splice(L,1)}},u=async(T,...P)=>{try{let q=$t.joinPath(T,...P);!a.includes(q.fsPath)&&(await jn.stat(q)).type&le.FileType.Directory&&a.push(q.fsPath)}catch{}},d=le.workspace.getConfiguration("factorio");if(e){let T=cr.file(await e.dataPath());c(T)}if(a.length===0?await s.update("workspace.library",void 0):await s.update("workspace.library",a),d.get("workspace.manageLibraryDataLinks",!0)){let T=cr.file(await t.dataPath());await u(T)}a.length===0?await s.update("workspace.library",void 0):await s.update("workspace.library",a);let g=s.get("workspace.userThirdParty",[]),m=$t.joinPath(r,"sumneko-3rd").fsPath;g=g.filter(T=>!T.includes("justarandomgeek.factoriomod-debug")),await s.update("workspace.userThirdParty",g),g.push(m),await s.update("workspace.userThirdParty",g);let y=s.get("workspace.checkThirdParty");y&&["Ask","Apply","ApplyInMemory"].includes(y)||await s.update("workspace.checkThirdParty","ApplyInMemory");let v=le.extensions.getExtension("sumneko.lua");v&&(v.isActive||await v.activate())}};var Ph=mt(require("vscode"));var de=mt(require("vscode")),Qa=require("console");function Vr(n,e){return isNaN(n)?e:isNaN(e)?n:Math.max(n,e)}var zr=class n{constructor(e=0,t=0){this.timer=e;this.count=t}add(e){return e?new n(this.timer+e.timer,this.count+e.count):this}avg(){return this.timer/this.count}},Oo=class{functions=new Map;lines=new Map;add(e){e.functions.forEach((t,r)=>{this.functions.set(r,t.add(this.functions.get(r)))}),e.lines.forEach((t,r)=>{this.lines.set(r,t.add(this.lines.get(r)))})}max(){let e={func:{timer:0,count:0,average:0},line:{timer:0,count:0,average:0}};return this.functions.forEach(t=>{e.func.timer=Vr(e.func.timer,t.timer),e.func.count=Vr(e.func.count,t.count),e.func.average=Vr(e.func.average,t.avg())}),this.lines.forEach(t=>{e.line.timer=Vr(e.line.timer,t.timer),e.line.count=Vr(e.line.count,t.count),e.line.average=Vr(e.line.average,t.avg())}),e}},Ya=class{totalTime=0;file=new Map},Mo=class n{constructor(e,t,r,i){this.name=e;this.value=t;this.filename=r;this.line=i}children=[];ToStringInner(e){return`${e}${this.name} : ${this.value}
211
211
  ${this.children.map(t=>t.ToStringInner(e+" ")).join(`
212
212
  `)}`}ToString(){return this.ToStringInner("")}AddToChild(e,t,r,i){let o=this.children.find(s=>s.name===e);return o?o.value+=t:(o=new n(e,t,r,i),this.children.push(o)),o}Merge(e){this.value+=e.value,e.children.forEach(t=>{let r=this.children.find(i=>i.name===t.name);r?r.Merge(t):this.children.push(t)})}},Za=class{totalTime=0;mod=new Map;getMod(e){let t=this.mod.get(e);return t||(t=new Ya,this.mod.set(e,t)),t}getFile(e,t){let r=this.getMod(e),i=r.file.get(t);return i||(i=new Oo,r.file.set(t,i)),i}AddModTime(e,t){this.totalTime+=t,this.getMod(e).totalTime+=t}AddLineTime(e,t,r,i,o){let s=this.getFile(e,t),a=new zr(i,o),c=s.lines.get(r);s.lines.set(r,a.add(c))}AddFuncTime(e,t,r,i,o){let s=this.getFile(e,t),a=new zr(i,o),c=s.functions.get(r);s.functions.set(r,a.add(c))}Report(e){let t=new Oo;return this.mod.forEach(r=>{let i=r.file.get(e);i&&t.add(i)}),{totalTime:this.totalTime,fileData:t}}},Ao=class{constructor(e,t,r){this.context=t;this.debug=r;this._disposables.push(de.debug.onDidReceiveDebugSessionCustomEvent(this.onCustomEvent,this)),this._disposables.push(de.debug.onDidTerminateDebugSession(this.onTerminate,this)),this.timeDecorationType=de.window.createTextEditorDecorationType({before:{contentText:"",color:new de.ThemeColor("factorio.ProfileTimerForeground")}}),this.funcDecorationType=de.window.createTextEditorDecorationType({after:{contentText:"",color:new de.ThemeColor("factorio.ProfileFunctionTimerForeground"),borderColor:new de.ThemeColor("factorio.ProfileFunctionTimerForeground"),border:"1px solid",margin:"0 0 0 3ch"}});let i=de.workspace.getConfiguration().get("factorio.profile.rulers",[]);this.rulerDecorationTypes=i.filter(o=>o.color||o.themeColor).map(o=>{let s=de.OverviewRulerLane.Right;switch(o.lane){case"Right":s=de.OverviewRulerLane.Right;break;case"Center":s=de.OverviewRulerLane.Center;break;case"Left":s=de.OverviewRulerLane.Left;break;case"Full":s=de.OverviewRulerLane.Full;break;default:break}return{type:de.window.createTextEditorDecorationType({overviewRulerColor:o.color??new de.ThemeColor(o.themeColor),overviewRulerLane:s}),threshold:o.threshold}}),this.statusBar=de.window.createStatusBarItem(),this._disposables.push(de.window.onDidChangeActiveTextEditor(o=>{o&&o.document.uri.scheme==="file"&&this.render(o)})),e&&this.createFlamePanel()}profileData=new Za;profileTreeRoot=new Mo("root",0);profileOverhead=new zr(0,0);timeDecorationType;funcDecorationType;rulerDecorationTypes;statusBar;flamePanel;_disposables=[];onTerminate(e){e===this.debug&&this.dispose()}dispose(){this._disposables.forEach(e=>e.dispose()),this.timeDecorationType.dispose(),this.funcDecorationType.dispose(),this.rulerDecorationTypes.forEach(e=>{e.type.dispose()}),this.statusBar.dispose(),this.flamePanel&&this.flamePanel.dispose()}async onCustomEvent(e){if(e.session===this.debug&&e.event==="x-Factorio-Profile"){await this.parse(e.body);let t=de.window.activeTextEditor;t&&t.document.uri.scheme==="file"&&this.render(t)}}async createFlamePanel(){if(this.flamePanel)return;this.flamePanel=de.window.createWebviewPanel("factorioProfile","Factorio Profile",de.ViewColumn.Two,{enableScripts:!0,localResourceRoots:[this.context.extensionUri]});let e=this.flamePanel.webview,t=(await Promise.resolve().then(()=>mt(Rh()))).default;e.html=t.replace("$Flamegraph.css$",e.asWebviewUri(de.Uri.joinPath(this.context.extensionUri,"/dist/Flamegraph.css")).toString()).replace("$Flamegraph.js$",e.asWebviewUri(de.Uri.joinPath(this.context.extensionUri,"/dist/Flamegraph.js")).toString()),e.onDidReceiveMessage(r=>{switch(r.command){case"init":e.postMessage({command:"update",data:this.profileTreeRoot});break;case"click":r.line&&r.line>0&&r.filename&&r.line&&de.window.showTextDocument(de.Uri.parse(r.filename),{selection:new de.Range(r.line,0,r.line,0),viewColumn:de.ViewColumn.One});break;default:break}}),this.flamePanel.onDidDispose(()=>this.flamePanel=void 0)}async parse(e){let t=e.split(`
213
- `),r,i,o=[new Mo("root",0)],s;for(let a of t){let c=a.split(":");switch(c[0]){case"PROFILE":break;case"PMN":{r=c[1].replace(/[\r\n]*/g,"");let u=parseFloat(c[3]);this.profileData.AddModTime(r,u)}break;case"PFN":r&&(i=await this.debug.customRequest("x-Factorio-ConvertPath",{path:c[1].replace(/[\r\n]*/g,"")}));break;case"PLN":if(r&&i){let u=parseInt(c[1]),d=parseFloat(c[3]),g=parseInt(c[4]);this.profileData.AddLineTime(r,i,u,d,g)}break;case"PFT":if(r&&i){let u=parseInt(c[1]),d=parseFloat(c[3]),g=parseInt(c[4]);this.profileData.AddFuncTime(r,i,u,d,g)}break;case"POV":{let u=parseFloat(c[2]);this.profileOverhead=this.profileOverhead.add(new zr(u,1))}break;case"PROOT":r&&((0,Qa.assert)(o.length===1),s=o[0].AddToChild(r,0));break;case"PTREE":if(s){let u=c[1],d=await this.debug.customRequest("x-Factorio-ConvertPath",{path:c[2]}),g=c[3],m=u+":"+d+":"+g,y=parseFloat(c[5]);o.push(s),s=s.AddToChild(m,y,d,parseInt(g))}break;case"PTEND":s&&(o.length===1?s=void 0:s=o.pop());break}}(0,Qa.assert)(o.length===1),this.flamePanel&&this.flamePanel.visible&&this.flamePanel.webview.postMessage({command:"merge",data:o[0]}),this.profileTreeRoot.Merge(o[0])}render(e){let t=this.profileData.Report(e.document.uri.fsPath),r=t.fileData.max(),i=r.line.timer,o=r.line.average,s=r.line.count,a=new Array,c=new Array,u=this.rulerDecorationTypes.map((Z,V)=>({type:Z.type,threshold:Z.threshold,decs:new Array})),d=de.workspace.getConfiguration().get("factorio.profile.displayAverageTime"),g=de.workspace.getConfiguration().get("factorio.profile.colorBy","totaltime"),m=de.workspace.getConfiguration().get("factorio.profile.timerHighlightColor"),y={count:s,totaltime:i,averagetime:o}[g],v=Math.max(Number.MIN_VALUE,de.workspace.getConfiguration().get("factorio.profile.colorScaleFactor",1)),T={boost:Z=>Math.log1p(Z*v)/Math.log1p(y*v),linear:Z=>Z/y,mute:Z=>(Math.pow(1+y,Z*v/y)-1)/(y*v)}[de.workspace.getConfiguration().get("factorio.profile.colorScaleMode","boost")],P=s.toFixed(0).length+1,q=d?6:3,A=i.toFixed(q).length+1,L=P+A+3,K=t.fileData.lines.size>0,te=t.fileData.functions.size>0;for(let Z=1;Z<=e.document.lineCount;Z++){if(K){let V=t.fileData.lines.get(Z);if(V){let ne=V.timer,ce=V.count,Ne=d?V.avg():ne,U=T({count:ce,totaltime:ne,averagetime:V.avg()}[g]),I=e.document.validateRange(new de.Range(Z-1,0,Z-1,1/0));a.push({range:I,hoverMessage:d?`total: ${ne}`:`avg: ${V.avg()}`,renderOptions:{before:{backgroundColor:`${m}${Math.floor(255*U).toString(16)}`,contentText:`${ce.toFixed(0).padStart(P,"\xA0")}${Ne.toFixed(q).padStart(A,"\xA0")}\xA0ms`,width:`${L+1}ch`}}});let J=u.find(B=>U>=B.threshold);J&&J.decs.push({range:I})}else a.push({range:e.document.validateRange(new de.Range(Z-1,0,Z-1,1/0)),renderOptions:{before:{width:`${L+1}ch`}}})}if(te){let V=t.fileData.functions.get(Z);if(V){let ne=V.timer,ce=V.count,Ne=d?V.avg():ne,U=e.document.validateRange(new de.Range(Z-1,0,Z-1,1/0));c.push({range:U,renderOptions:{after:{contentText:`\xA0${ce.toFixed(0)}\xA0|\xA0${Ne.toFixed(q)}\xA0ms\xA0`,color:new de.ThemeColor("factorio.ProfileFunctionTimerForeground"),borderColor:new de.ThemeColor("factorio.ProfileFunctionTimerForeground"),margin:"0 0 0 3ch"}}})}}}e.setDecorations(this.timeDecorationType,a),e.setDecorations(this.funcDecorationType,c),u.forEach(Z=>{e.setDecorations(Z.type,Z.decs)}),this.statusBar.text=`Profile Dump Avg ${this.profileOverhead.avg().toFixed(3)} ms`,this.statusBar.show()}clear(){de.window.visibleTextEditors.forEach(e=>{e.setDecorations(this.timeDecorationType,[]),e.setDecorations(this.funcDecorationType,[]),this.rulerDecorationTypes.forEach(t=>{e.setDecorations(t.type,[])})}),this.statusBar.hide()}};var Lo=class{constructor(e){this.context=e;e.subscriptions.push(Ph.debug.onDidStartDebugSession(this.onDidStartDebugSession,this))}async onDidStartDebugSession(e){e.type==="factoriomod"&&e.configuration.hookMode==="profile"&&new Ao(e.configuration.profileTree??!0,this.context,e)}};var Zb=mt(require("path")),ew=require("vscode"),po=mt(Yb());function tw(n){let e=n.asAbsolutePath(Zb.join("dist","fmtk-cli.js")),t={execArgv:["--nolazy","--inspect-brk=34199"]},r={run:{module:e,transport:po.TransportKind.ipc,args:["lsp"]},debug:{module:e,transport:po.TransportKind.ipc,args:["lsp"],options:t}},i={documentSelector:[{language:"factorio-locale"},{language:"factorio-changelog"},{language:"lua"}],synchronize:{fileEvents:[ew.workspace.createFileSystemWatcher("**/locale/*/*.cfg")]}},o=new po.LanguageClient("factorioLanguageServer","Factorio Language Server",r,i);o.start(),n.subscriptions.push({dispose(){return o.stop()}})}var wt=mt(require("vscode")),Ti=require("./fmtk.js");function nw(n){return n.type==="int"?{type:"int",value:cP("",n.value)}:n}function yf(n,e){return typeof e=="bigint"?`jsonbigint ${e}n`:e}function cP(n,e){if(typeof e=="string"){let t=e.match(/^jsonbigint\x01\x02 (\d+)n$/);if(t)return BigInt(t[1])}return e}function wa(){let n="",e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";for(let t=0;t<32;t++)n+=e.charAt(Math.floor(Math.random()*e.length));return n}var Ca=class{constructor(e){this.context=e;this.context.subscriptions.push(wt.window.registerCustomEditorProvider("fmtk.modsettings",this,{supportsMultipleEditorsPerDocument:!1,webviewOptions:{retainContextWhenHidden:!0}}))}webviews=new Map;_onDidChangeCustomDocument=new wt.EventEmitter;onDidChangeCustomDocument=this._onDidChangeCustomDocument.event;async saveCustomDocument(e,t){return e.save(t)}async saveCustomDocumentAs(e,t,r){return e.saveAs(t,r)}async revertCustomDocument(e,t){return e.revert(t)}async backupCustomDocument(e,t,r){return e.backup(t.destination,r)}async openCustomDocument(e,t,r){let i=await bf.create(e,t.backupId),o=[];return o.push(i.onDidChange(s=>{this._onDidChangeCustomDocument.fire({document:i,...s})})),o.push(i.onDidChangeContent(s=>{let a=this.webviews.get(i.uri.toString());a&&this.postMessage(a,"init",{version:i.version,saves_ints:i.saves_ints,settings:JSON.stringify(i.settings,yf),editable:wt.workspace.fs.isWritableFileSystem(i.uri.scheme)!==!1})})),i.onDidDispose(()=>o.forEach(s=>s.dispose())),i}async resolveCustomEditor(e,t,r){let i=t.webview;this.webviews.set(e.uri.toString(),t),i.options={enableScripts:!0};let o=(await Promise.resolve().then(()=>mt(rw()))).default;i.html=o.replace(/\$cspSource\$/g,i.cspSource).replace(/\$nonce\$/g,wa()).replace(/\$ModSettingsWebview\.css\$/g,i.asWebviewUri(wt.Uri.joinPath(this.context.extensionUri,"/dist/ModSettingsWebview.css")).toString()).replace(/\$ModSettingsWebview\.js\$/g,i.asWebviewUri(wt.Uri.joinPath(this.context.extensionUri,"/dist/ModSettingsWebview.js")).toString()),t.webview.onDidReceiveMessage(s=>this.onMessage(e,s)),t.webview.onDidReceiveMessage(s=>{s.type==="ready"&&this.postMessage(t,"init",{version:e.version,saves_ints:e.saves_ints,settings:JSON.stringify(e.settings,yf),editable:wt.workspace.fs.isWritableFileSystem(e.uri.scheme)!==!1})})}postMessage(e,t,r){e.webview.postMessage({type:t,body:r})}onMessage(e,t){switch(t.type){case"edit":{e.edit(t.body);return}}}},bf=class n{constructor(e,t){this.uri=e;this._settings=new Ti.ModSettings(new Ti.BufferStream(t))}static async create(e,t){let r=typeof t=="string"?wt.Uri.parse(t):e,i=await wt.workspace.fs.readFile(r);return new n(e,i)}_settings;get version(){return this._settings.version.format()}get saves_ints(){return this._settings.version.isBeyond(1,2)}get settings(){return this._settings.settings}async save(e){return this.saveAs(this.uri,e)}async saveAs(e,t){return wt.workspace.fs.writeFile(e,this._settings.save())}async revert(e){this._settings=new Ti.ModSettings(new Ti.BufferStream(await wt.workspace.fs.readFile(this.uri))),this._onDidChangeDocument.fire({})}async backup(e,t){return await this.saveAs(e,t),{id:e.toString(),delete:async()=>{try{await wt.workspace.fs.delete(e)}catch{}}}}edit(e){e.value.type==="none"?this._settings.set(e.scope,e.name,void 0):this._settings.set(e.scope,e.name,nw(e.value)),this._onDidChange.fire({})}_onDidDispose=new wt.EventEmitter;onDidDispose=this._onDidDispose.event;_onDidChangeDocument=new wt.EventEmitter;onDidChangeContent=this._onDidChangeDocument.event;_onDidChange=new wt.EventEmitter;onDidChange=this._onDidChange.event;disposables=[this._onDidDispose,this._onDidChangeDocument,this._onDidChange];dispose(){this._onDidDispose.fire(),this.disposables.forEach(e=>e.dispose())}};var nn=mt(require("vscode"));var _a=require("./fmtk.js");function Da(n){switch(n.type){case"Table":case"TableWithMeta":return Object.assign({},n,{values:void 0});default:return n}}var Sa=class{constructor(e){this.context=e;this.context.subscriptions.push(nn.window.registerCustomEditorProvider("fmtk.scriptdat",this,{supportsMultipleEditorsPerDocument:!1,webviewOptions:{retainContextWhenHidden:!0}}))}webviews=new Map;_onDidChangeCustomDocument=new nn.EventEmitter;onDidChangeCustomDocument=this._onDidChangeCustomDocument.event;async openCustomDocument(e,t,r){let i=await wf.create(e,t.backupId),o=[];return o.push(i.onDidChange(s=>{this._onDidChangeCustomDocument.fire({document:i,...s})})),o.push(i.onDidChangeContent(s=>{let a=this.webviews.get(i.uri.toString());a&&this.postMessage(a,"init",{version:i.version,data:i.rootdata})})),i.onDidDispose(()=>o.forEach(s=>s.dispose())),i}async resolveCustomEditor(e,t,r){let i=t.webview;this.webviews.set(e.uri.toString(),t),i.options={enableScripts:!0};let o=(await Promise.resolve().then(()=>mt(iw()))).default;i.html=o.replace(/\$cspSource\$/g,i.cspSource).replace(/\$nonce\$/g,wa()).replace(/\$ScriptDatWebview\.css\$/g,i.asWebviewUri(nn.Uri.joinPath(this.context.extensionUri,"/dist/ScriptDatWebview.css")).toString()).replace(/\$ScriptDatWebview\.js\$/g,i.asWebviewUri(nn.Uri.joinPath(this.context.extensionUri,"/dist/ScriptDatWebview.js")).toString()),t.webview.onDidReceiveMessage(s=>this.onMessage(e,s)),t.webview.onDidReceiveMessage(s=>{s.type==="ready"&&this.postMessage(t,"init",{version:e.version,data:e.rootdata})})}postMessage(e,t,r){e.webview.postMessage({type:t,body:r})}onMessage(e,t){switch(t.type){case"fetch":let r=t.body,i=e.find(r.modname,r.gcid);this.postMessage(this.webviews.get(e.uri.toString()),"values",{...r,values:i.values.map(o=>({key:Da(o.key),value:Da(o.value)}))});break}}},wf=class n{constructor(e,t){this.uri=e;this._data=new _a.ScriptDat(new _a.BufferStream(t))}static async create(e,t){let r=typeof t=="string"?nn.Uri.parse(t):e,i=await nn.workspace.fs.readFile(r);return new n(e,i)}_data;get version(){return this._data.version.format()}get rootdata(){let e={};for(let t in this._data.data)e[t]=Da(this._data.data[t]);return e}find(e,t){return this._data.find(e,t)}_onDidDispose=new nn.EventEmitter;onDidDispose=this._onDidDispose.event;_onDidChangeDocument=new nn.EventEmitter;onDidChangeContent=this._onDidChangeDocument.event;_onDidChange=new nn.EventEmitter;onDidChange=this._onDidChange.event;disposables=[this._onDidDispose,this._onDidChangeDocument,this._onDidChange];dispose(){this._onDidDispose.fire(),this.disposables.forEach(e=>e.dispose())}};function dP(n){let e=pt.window.createOutputChannel("FMTK",{log:!0});e.info(`FMTK ${Io}`);try{e.info("Registering Version Selector...");let t=new Fo(n,e);e.info("Registering Debug Provider...");let r=new Cf(t);n.subscriptions.push(pt.debug.registerDebugConfigurationProvider("factoriomod",r));let i=new Df(t);n.subscriptions.push(pt.debug.registerDebugAdapterDescriptorFactory("factoriomod",i)),n.subscriptions.push(i),e.info("Registering Language Client..."),tw(n),e.info("Registering Mod Package Provider..."),Sh(n),e.info("Registering Profile Renderer..."),new Lo(n),e.info("Registering Custom Editors..."),new Ca(n),new Sa(n),e.info("Activate Complete")}catch(t){e.error(`Error while activating: ${t}`)}}var Cf=class{constructor(e){this.versionSelector=e}async resolveDebugConfigurationWithSubstitutedVariables(e,t,r){let i=await this.versionSelector.getActiveVersion();if(!i)return;if(await i.isPrototypeCacheEnabled()){let s=await pt.window.showWarningMessage("Prototype Caching is enabled, which usually conflicts with the final portion of debugger initialization (which occurs in settings stage).","Disable in config.ini","Continue anyway");if(s==="Disable in config.ini")await i.disablePrototypeCache();else if(s===void 0)return}let o=pt.workspace.getConfiguration("factorio.debug").get("env",{});return Object.keys(o).length>0&&(t.env=Object.assign({},o,t.env)),t}},Df=class{constructor(e){this.versionSelector=e}async createDebugAdapterDescriptor(e,t){let r=await this.versionSelector.getActiveVersion();if(!r)return;if(r.nativeDAP)return new pt.DebugAdapterExecutable(r.factorioPath,["--dap"]);let i=pt.workspace.getConfiguration("factorio");switch(i.get("debug.runMode","inline")){case"inline":default:return new pt.DebugAdapterInlineImplementation(new ow.FactorioModDebugSession(r,pt.workspace.fs,{findWorkspaceFiles:pt.workspace.findFiles,getExtension:pt.extensions.getExtension,executeCommand:pt.commands.executeCommand}));case"external":return i.get("inspect",!1)&&t.args.unshift("--nolazy","--inspect-brk=34198"),t.args.push(...await r.debugLaunchArgs()),t}}dispose(){}};0&&(module.exports={activate});
213
+ `),r,i,o=[new Mo("root",0)],s;for(let a of t){let c=a.split(":");switch(c[0]){case"PROFILE":break;case"PMN":{r=c[1].replace(/[\r\n]*/g,"");let u=parseFloat(c[3]);this.profileData.AddModTime(r,u)}break;case"PFN":r&&(i=await this.debug.customRequest("x-Factorio-ConvertPath",{path:c[1].replace(/[\r\n]*/g,"")}));break;case"PLN":if(r&&i){let u=parseInt(c[1]),d=parseFloat(c[3]),g=parseInt(c[4]);this.profileData.AddLineTime(r,i,u,d,g)}break;case"PFT":if(r&&i){let u=parseInt(c[1]),d=parseFloat(c[3]),g=parseInt(c[4]);this.profileData.AddFuncTime(r,i,u,d,g)}break;case"POV":{let u=parseFloat(c[2]);this.profileOverhead=this.profileOverhead.add(new zr(u,1))}break;case"PROOT":r&&((0,Qa.assert)(o.length===1),s=o[0].AddToChild(r,0));break;case"PTREE":if(s){let u=c[1],d=await this.debug.customRequest("x-Factorio-ConvertPath",{path:c[2]}),g=c[3],m=u+":"+d+":"+g,y=parseFloat(c[5]);o.push(s),s=s.AddToChild(m,y,d,parseInt(g))}break;case"PTEND":s&&(o.length===1?s=void 0:s=o.pop());break}}(0,Qa.assert)(o.length===1),this.flamePanel&&this.flamePanel.visible&&this.flamePanel.webview.postMessage({command:"merge",data:o[0]}),this.profileTreeRoot.Merge(o[0])}render(e){let t=this.profileData.Report(e.document.uri.fsPath),r=t.fileData.max(),i=r.line.timer,o=r.line.average,s=r.line.count,a=new Array,c=new Array,u=this.rulerDecorationTypes.map((Z,V)=>({type:Z.type,threshold:Z.threshold,decs:new Array})),d=de.workspace.getConfiguration().get("factorio.profile.displayAverageTime"),g=de.workspace.getConfiguration().get("factorio.profile.colorBy","totaltime"),m=de.workspace.getConfiguration().get("factorio.profile.timerHighlightColor"),y={count:s,totaltime:i,averagetime:o}[g],v=Math.max(Number.MIN_VALUE,de.workspace.getConfiguration().get("factorio.profile.colorScaleFactor",1)),T={boost:Z=>Math.log1p(Z*v)/Math.log1p(y*v),linear:Z=>Z/y,mute:Z=>(Math.pow(1+y,Z*v/y)-1)/(y*v)}[de.workspace.getConfiguration().get("factorio.profile.colorScaleMode","boost")],P=s.toFixed(0).length+1,q=d?6:3,L=i.toFixed(q).length+1,N=P+L+3,K=t.fileData.lines.size>0,te=t.fileData.functions.size>0;for(let Z=1;Z<=e.document.lineCount;Z++){if(K){let V=t.fileData.lines.get(Z);if(V){let ne=V.timer,ce=V.count,Ne=d?V.avg():ne,U=T({count:ce,totaltime:ne,averagetime:V.avg()}[g]),I=e.document.validateRange(new de.Range(Z-1,0,Z-1,1/0));a.push({range:I,hoverMessage:d?`total: ${ne}`:`avg: ${V.avg()}`,renderOptions:{before:{backgroundColor:`${m}${Math.floor(255*U).toString(16)}`,contentText:`${ce.toFixed(0).padStart(P,"\xA0")}${Ne.toFixed(q).padStart(L,"\xA0")}\xA0ms`,width:`${N+1}ch`}}});let J=u.find(B=>U>=B.threshold);J&&J.decs.push({range:I})}else a.push({range:e.document.validateRange(new de.Range(Z-1,0,Z-1,1/0)),renderOptions:{before:{width:`${N+1}ch`}}})}if(te){let V=t.fileData.functions.get(Z);if(V){let ne=V.timer,ce=V.count,Ne=d?V.avg():ne,U=e.document.validateRange(new de.Range(Z-1,0,Z-1,1/0));c.push({range:U,renderOptions:{after:{contentText:`\xA0${ce.toFixed(0)}\xA0|\xA0${Ne.toFixed(q)}\xA0ms\xA0`,color:new de.ThemeColor("factorio.ProfileFunctionTimerForeground"),borderColor:new de.ThemeColor("factorio.ProfileFunctionTimerForeground"),margin:"0 0 0 3ch"}}})}}}e.setDecorations(this.timeDecorationType,a),e.setDecorations(this.funcDecorationType,c),u.forEach(Z=>{e.setDecorations(Z.type,Z.decs)}),this.statusBar.text=`Profile Dump Avg ${this.profileOverhead.avg().toFixed(3)} ms`,this.statusBar.show()}clear(){de.window.visibleTextEditors.forEach(e=>{e.setDecorations(this.timeDecorationType,[]),e.setDecorations(this.funcDecorationType,[]),this.rulerDecorationTypes.forEach(t=>{e.setDecorations(t.type,[])})}),this.statusBar.hide()}};var Lo=class{constructor(e){this.context=e;e.subscriptions.push(Ph.debug.onDidStartDebugSession(this.onDidStartDebugSession,this))}async onDidStartDebugSession(e){e.type==="factoriomod"&&e.configuration.hookMode==="profile"&&new Ao(e.configuration.profileTree??!0,this.context,e)}};var Zb=mt(require("path")),ew=require("vscode"),po=mt(Yb());function tw(n){let e=n.asAbsolutePath(Zb.join("dist","fmtk-cli.js")),t={execArgv:["--nolazy","--inspect-brk=34199"]},r={run:{module:e,transport:po.TransportKind.ipc,args:["lsp"]},debug:{module:e,transport:po.TransportKind.ipc,args:["lsp"],options:t}},i={documentSelector:[{language:"factorio-locale"},{language:"factorio-changelog"},{language:"lua"}],synchronize:{fileEvents:[ew.workspace.createFileSystemWatcher("**/locale/*/*.cfg")]}},o=new po.LanguageClient("factorioLanguageServer","Factorio Language Server",r,i);o.start(),n.subscriptions.push({dispose(){return o.stop()}})}var wt=mt(require("vscode")),Ti=require("./fmtk.js");function nw(n){return n.type==="int"?{type:"int",value:cP("",n.value)}:n}function yf(n,e){return typeof e=="bigint"?`jsonbigint ${e}n`:e}function cP(n,e){if(typeof e=="string"){let t=e.match(/^jsonbigint\x01\x02 (\d+)n$/);if(t)return BigInt(t[1])}return e}function wa(){let n="",e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";for(let t=0;t<32;t++)n+=e.charAt(Math.floor(Math.random()*e.length));return n}var Ca=class{constructor(e){this.context=e;this.context.subscriptions.push(wt.window.registerCustomEditorProvider("fmtk.modsettings",this,{supportsMultipleEditorsPerDocument:!1,webviewOptions:{retainContextWhenHidden:!0}}))}webviews=new Map;_onDidChangeCustomDocument=new wt.EventEmitter;onDidChangeCustomDocument=this._onDidChangeCustomDocument.event;async saveCustomDocument(e,t){return e.save(t)}async saveCustomDocumentAs(e,t,r){return e.saveAs(t,r)}async revertCustomDocument(e,t){return e.revert(t)}async backupCustomDocument(e,t,r){return e.backup(t.destination,r)}async openCustomDocument(e,t,r){let i=await bf.create(e,t.backupId),o=[];return o.push(i.onDidChange(s=>{this._onDidChangeCustomDocument.fire({document:i,...s})})),o.push(i.onDidChangeContent(s=>{let a=this.webviews.get(i.uri.toString());a&&this.postMessage(a,"init",{version:i.version,saves_ints:i.saves_ints,settings:JSON.stringify(i.settings,yf),editable:wt.workspace.fs.isWritableFileSystem(i.uri.scheme)!==!1})})),i.onDidDispose(()=>o.forEach(s=>s.dispose())),i}async resolveCustomEditor(e,t,r){let i=t.webview;this.webviews.set(e.uri.toString(),t),i.options={enableScripts:!0};let o=(await Promise.resolve().then(()=>mt(rw()))).default;i.html=o.replace(/\$cspSource\$/g,i.cspSource).replace(/\$nonce\$/g,wa()).replace(/\$ModSettingsWebview\.css\$/g,i.asWebviewUri(wt.Uri.joinPath(this.context.extensionUri,"/dist/ModSettingsWebview.css")).toString()).replace(/\$ModSettingsWebview\.js\$/g,i.asWebviewUri(wt.Uri.joinPath(this.context.extensionUri,"/dist/ModSettingsWebview.js")).toString()),t.webview.onDidReceiveMessage(s=>this.onMessage(e,s)),t.webview.onDidReceiveMessage(s=>{s.type==="ready"&&this.postMessage(t,"init",{version:e.version,saves_ints:e.saves_ints,settings:JSON.stringify(e.settings,yf),editable:wt.workspace.fs.isWritableFileSystem(e.uri.scheme)!==!1})})}postMessage(e,t,r){e.webview.postMessage({type:t,body:r})}onMessage(e,t){switch(t.type){case"edit":{e.edit(t.body);return}}}},bf=class n{constructor(e,t){this.uri=e;this._settings=new Ti.ModSettings(new Ti.BufferStream(t))}static async create(e,t){let r=typeof t=="string"?wt.Uri.parse(t):e,i=await wt.workspace.fs.readFile(r);return new n(e,i)}_settings;get version(){return this._settings.version.format()}get saves_ints(){return this._settings.version.isBeyond(1,2)}get settings(){return this._settings.settings}async save(e){return this.saveAs(this.uri,e)}async saveAs(e,t){return wt.workspace.fs.writeFile(e,this._settings.save())}async revert(e){this._settings=new Ti.ModSettings(new Ti.BufferStream(await wt.workspace.fs.readFile(this.uri))),this._onDidChangeDocument.fire({})}async backup(e,t){return await this.saveAs(e,t),{id:e.toString(),delete:async()=>{try{await wt.workspace.fs.delete(e)}catch{}}}}edit(e){e.value.type==="none"?this._settings.set(e.scope,e.name,void 0):this._settings.set(e.scope,e.name,nw(e.value)),this._onDidChange.fire({})}_onDidDispose=new wt.EventEmitter;onDidDispose=this._onDidDispose.event;_onDidChangeDocument=new wt.EventEmitter;onDidChangeContent=this._onDidChangeDocument.event;_onDidChange=new wt.EventEmitter;onDidChange=this._onDidChange.event;disposables=[this._onDidDispose,this._onDidChangeDocument,this._onDidChange];dispose(){this._onDidDispose.fire(),this.disposables.forEach(e=>e.dispose())}};var nn=mt(require("vscode"));var _a=require("./fmtk.js");function Da(n){switch(n.type){case"Table":case"TableWithMeta":return Object.assign({},n,{values:void 0});default:return n}}var Sa=class{constructor(e){this.context=e;this.context.subscriptions.push(nn.window.registerCustomEditorProvider("fmtk.scriptdat",this,{supportsMultipleEditorsPerDocument:!1,webviewOptions:{retainContextWhenHidden:!0}}))}webviews=new Map;_onDidChangeCustomDocument=new nn.EventEmitter;onDidChangeCustomDocument=this._onDidChangeCustomDocument.event;async openCustomDocument(e,t,r){let i=await wf.create(e,t.backupId),o=[];return o.push(i.onDidChange(s=>{this._onDidChangeCustomDocument.fire({document:i,...s})})),o.push(i.onDidChangeContent(s=>{let a=this.webviews.get(i.uri.toString());a&&this.postMessage(a,"init",{version:i.version,data:i.rootdata})})),i.onDidDispose(()=>o.forEach(s=>s.dispose())),i}async resolveCustomEditor(e,t,r){let i=t.webview;this.webviews.set(e.uri.toString(),t),i.options={enableScripts:!0};let o=(await Promise.resolve().then(()=>mt(iw()))).default;i.html=o.replace(/\$cspSource\$/g,i.cspSource).replace(/\$nonce\$/g,wa()).replace(/\$ScriptDatWebview\.css\$/g,i.asWebviewUri(nn.Uri.joinPath(this.context.extensionUri,"/dist/ScriptDatWebview.css")).toString()).replace(/\$ScriptDatWebview\.js\$/g,i.asWebviewUri(nn.Uri.joinPath(this.context.extensionUri,"/dist/ScriptDatWebview.js")).toString()),t.webview.onDidReceiveMessage(s=>this.onMessage(e,s)),t.webview.onDidReceiveMessage(s=>{s.type==="ready"&&this.postMessage(t,"init",{version:e.version,data:e.rootdata})})}postMessage(e,t,r){e.webview.postMessage({type:t,body:r})}onMessage(e,t){switch(t.type){case"fetch":let r=t.body,i=e.find(r.modname,r.gcid);this.postMessage(this.webviews.get(e.uri.toString()),"values",{...r,values:i.values.map(o=>({key:Da(o.key),value:Da(o.value)}))});break}}},wf=class n{constructor(e,t){this.uri=e;this._data=new _a.ScriptDat(new _a.BufferStream(t))}static async create(e,t){let r=typeof t=="string"?nn.Uri.parse(t):e,i=await nn.workspace.fs.readFile(r);return new n(e,i)}_data;get version(){return this._data.version.format()}get rootdata(){let e={};for(let t in this._data.data)e[t]=Da(this._data.data[t]);return e}find(e,t){return this._data.find(e,t)}_onDidDispose=new nn.EventEmitter;onDidDispose=this._onDidDispose.event;_onDidChangeDocument=new nn.EventEmitter;onDidChangeContent=this._onDidChangeDocument.event;_onDidChange=new nn.EventEmitter;onDidChange=this._onDidChange.event;disposables=[this._onDidDispose,this._onDidChangeDocument,this._onDidChange];dispose(){this._onDidDispose.fire(),this.disposables.forEach(e=>e.dispose())}};function dP(n){let e=pt.window.createOutputChannel("FMTK",{log:!0});e.info(`FMTK ${Io}`);try{e.info("Registering Version Selector...");let t=new Fo(n,e);e.info("Registering Debug Provider...");let r=new Cf(t);n.subscriptions.push(pt.debug.registerDebugConfigurationProvider("factoriomod",r));let i=new Df(t);n.subscriptions.push(pt.debug.registerDebugAdapterDescriptorFactory("factoriomod",i)),n.subscriptions.push(i),e.info("Registering Language Client..."),tw(n),e.info("Registering Mod Package Provider..."),Sh(n),e.info("Registering Profile Renderer..."),new Lo(n),e.info("Registering Custom Editors..."),new Ca(n),new Sa(n),e.info("Activate Complete")}catch(t){e.error(`Error while activating: ${t}`)}}var Cf=class{constructor(e){this.versionSelector=e}async resolveDebugConfigurationWithSubstitutedVariables(e,t,r){let i=await this.versionSelector.getActiveVersion();if(!i)return;if(await i.isPrototypeCacheEnabled()){let s=await pt.window.showWarningMessage("Prototype Caching is enabled, which usually conflicts with the final portion of debugger initialization (which occurs in settings stage).","Disable in config.ini","Continue anyway");if(s==="Disable in config.ini")await i.disablePrototypeCache();else if(s===void 0)return}let o=pt.workspace.getConfiguration("factorio.debug").get("env",{});return Object.keys(o).length>0&&(t.env=Object.assign({},o,t.env)),t}},Df=class{constructor(e){this.versionSelector=e}async createDebugAdapterDescriptor(e,t){let r=await this.versionSelector.getActiveVersion();if(!r)return;if(r.nativeDAP)return new pt.DebugAdapterExecutable(r.factorioPath,["--dap"]);let i=pt.workspace.getConfiguration("factorio");switch(i.get("debug.runMode","inline")){case"inline":default:return new pt.DebugAdapterInlineImplementation(new ow.FactorioModDebugSession(r,pt.workspace.fs,{findWorkspaceFiles:pt.workspace.findFiles,getExtension:pt.extensions.getExtension,executeCommand:pt.commands.executeCommand}));case"external":return i.get("inspect",!1)&&t.args.unshift("--nolazy","--inspect-brk=34198"),t.args.push(...await r.debugLaunchArgs()),t}}dispose(){}};0&&(module.exports={activate});
214
214
  //# sourceMappingURL=fmtk-vscode.js.map