UNPKG

code-server

Version:

Run VS Code on a remote server.

8 lines • 1.23 MB
import { createRequire } from 'module'; const require = createRequire(import.meta.url); var Xw=Object.create;var Ws=Object.defineProperty;var Yw=Object.getOwnPropertyDescriptor;var Qw=Object.getOwnPropertyNames;var Zw=Object.getPrototypeOf,e_=Object.prototype.hasOwnProperty;var wt=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,n)=>(typeof require<"u"?require:e)[n]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')});var Z=(t,e)=>()=>(t&&(e=t(t=0)),e);var U=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),t_=(t,e)=>{for(var n in e)Ws(t,n,{get:e[n],enumerable:!0})},vp=(t,e,n,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of Qw(e))!e_.call(t,r)&&r!==n&&Ws(t,r,{get:()=>e[r],enumerable:!(i=Yw(e,r))||i.enumerable});return t};var Je=(t,e,n)=>(n=t!=null?Xw(Zw(t)):{},vp(e||!t||!t.__esModule?Ws(n,"default",{value:t,enumerable:!0}):n,t)),Al=t=>vp(Ws({},"__esModule",{value:!0}),t);var _t=U((nF,Ap)=>{"use strict";var El=Object.defineProperty,n_=Object.getOwnPropertyDescriptor,i_=Object.getOwnPropertyNames,r_=Object.prototype.hasOwnProperty,s_=(t,e)=>{for(var n in e)El(t,n,{get:e[n],enumerable:!0})},a_=(t,e,n,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of i_(e))!r_.call(t,r)&&r!==n&&El(t,r,{get:()=>e[r],enumerable:!(i=n_(e,r))||i.enumerable});return t},o_=t=>a_(El({},"__esModule",{value:!0}),t),Cp={};s_(Cp,{config:()=>u_,t:()=>xp});Ap.exports=o_(Cp);var l_=wt("fs"),c_=wt("fs/promises");async function d_(t){if(t.protocol==="file:")return await(0,c_.readFile)(t,"utf8");if(t.protocol==="http:"||t.protocol==="https:"){let e=await fetch(t.toString(),{headers:{"Accept-Encoding":"gzip, deflate",Accept:"application/json"},redirect:"follow"});if(!e.ok){let i=`Unexpected ${e.status} response while trying to read ${t}`;try{i+=`: ${await e.text()}`}catch{}throw new Error(i)}return await e.text()}throw new Error("Unsupported protocol")}function h_(t){return(0,l_.readFileSync)(t,"utf8")}var Lr;function u_(t){if("contents"in t){typeof t.contents=="string"?Lr=JSON.parse(t.contents):Lr=t.contents;return}if("fsPath"in t){let e=h_(t.fsPath),n=JSON.parse(e);Lr=Fp(n)?n.contents.bundle:n;return}if(t.uri){let e=t.uri;return typeof t.uri=="string"&&(e=new URL(t.uri)),new Promise((n,i)=>{d_(e).then(r=>{try{let s=JSON.parse(r);Lr=Fp(s)?s.contents.bundle:s,n()}catch(s){i(s)}}).catch(r=>{i(r)})})}}function xp(...t){let e=t[0],n,i,r;if(typeof e=="string")n=e,i=e,t.splice(0,1),r=!t||typeof t[0]!="object"?t:t[0];else if(e instanceof Array){let a=t.slice(1);if(e.length!==a.length+1)throw new Error("expected a string as the first argument to l10n.t");let o=e[0];for(let l=1;l<e.length;l++)o+=`{${l-1}}`+e[l];return xp(o,...a)}else i=e.message,n=i,e.comment&&e.comment.length>0&&(n+=`/${Array.isArray(e.comment)?e.comment.join(""):e.comment}`),r=e.args??{};let s=Lr?.[n];return s?typeof s=="string"?Ls(s,r):s.comment?Ls(s.message,r):Ls(i,r):Ls(i,r)}var p_=/{([^}]+)}/g;function Ls(t,e){return Object.keys(e).length===0?t:t.replace(p_,(n,i)=>e[i]??n)}function Fp(t){return typeof t?.contents?.bundle=="object"&&typeof t?.version=="string"}});var qs=U(qt=>{"use strict";Object.defineProperty(qt,"__esModule",{value:!0});qt.boolean=f_;qt.string=Ep;qt.number=m_;qt.error=b_;qt.func=kp;qt.array=Mp;qt.stringArray=g_;qt.typedArray=w_;qt.thenable=__;function f_(t){return t===!0||t===!1}function Ep(t){return typeof t=="string"||t instanceof String}function m_(t){return typeof t=="number"||t instanceof Number}function b_(t){return t instanceof Error}function kp(t){return typeof t=="function"}function Mp(t){return Array.isArray(t)}function g_(t){return Mp(t)&&t.every(e=>Ep(e))}function w_(t,e){return Array.isArray(t)&&t.every(e)}function __(t){return t&&kp(t.then)}});var Ai=U(hn=>{"use strict";Object.defineProperty(hn,"__esModule",{value:!0});hn.boolean=S_;hn.string=Rp;hn.number=y_;hn.error=v_;hn.func=F_;hn.array=Dp;hn.stringArray=C_;function S_(t){return t===!0||t===!1}function Rp(t){return typeof t=="string"||t instanceof String}function y_(t){return typeof t=="number"||t instanceof Number}function v_(t){return t instanceof Error}function F_(t){return typeof t=="function"}function Dp(t){return Array.isArray(t)}function C_(t){return Dp(t)&&t.every(e=>Rp(e))}});var Ql=U(G=>{"use strict";var x_=G&&G.__createBinding||(Object.create?(function(t,e,n,i){i===void 0&&(i=n);var r=Object.getOwnPropertyDescriptor(e,n);(!r||("get"in r?!e.__esModule:r.writable||r.configurable))&&(r={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,i,r)}):(function(t,e,n,i){i===void 0&&(i=n),t[i]=e[n]})),A_=G&&G.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),E_=G&&G.__importStar||(function(){var t=function(e){return t=Object.getOwnPropertyNames||function(n){var i=[];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(i[i.length]=r);return i},t(e)};return function(e){if(e&&e.__esModule)return e;var n={};if(e!=null)for(var i=t(e),r=0;r<i.length;r++)i[r]!=="default"&&x_(n,e,i[r]);return A_(n,e),n}})();Object.defineProperty(G,"__esModule",{value:!0});G.Message=G.NotificationType9=G.NotificationType8=G.NotificationType7=G.NotificationType6=G.NotificationType5=G.NotificationType4=G.NotificationType3=G.NotificationType2=G.NotificationType1=G.NotificationType0=G.NotificationType=G.RequestType9=G.RequestType8=G.RequestType7=G.RequestType6=G.RequestType5=G.RequestType4=G.RequestType3=G.RequestType2=G.RequestType1=G.RequestType=G.RequestType0=G.AbstractMessageSignature=G.ParameterStructures=G.ResponseError=G.ErrorCodes=void 0;var ri=E_(Ai()),kl;(function(t){t.ParseError=-32700,t.InvalidRequest=-32600,t.MethodNotFound=-32601,t.InvalidParams=-32602,t.InternalError=-32603,t.jsonrpcReservedErrorRangeStart=-32099,t.serverErrorStart=-32099,t.MessageWriteError=-32099,t.MessageReadError=-32098,t.PendingResponseRejected=-32097,t.ConnectionInactive=-32096,t.ServerNotInitialized=-32002,t.UnknownErrorCode=-32001,t.jsonrpcReservedErrorRangeEnd=-32e3,t.serverErrorEnd=-32e3})(kl||(G.ErrorCodes=kl={}));var Ml=class t extends Error{code;data;constructor(e,n,i){super(n),this.code=ri.number(e)?e:kl.UnknownErrorCode,this.data=i,Object.setPrototypeOf(this,t.prototype)}toJson(){let e={code:this.code,message:this.message};return this.data!==void 0&&(e.data=this.data),e}};G.ResponseError=Ml;var Rn=class t{kind;static auto=new t("auto");static byPosition=new t("byPosition");static byName=new t("byName");constructor(e){this.kind=e}static is(e){return e===t.auto||e===t.byName||e===t.byPosition}toString(){return this.kind}};G.ParameterStructures=Rn;var ve=class{method;numberOfParams;constructor(e,n){this.method=e,this.numberOfParams=n}get parameterStructures(){return Rn.auto}};G.AbstractMessageSignature=ve;var Rl=class extends ve{_;constructor(e){super(e,0)}};G.RequestType0=Rl;var Dl=class extends ve{_parameterStructures;_;constructor(e,n=Rn.auto){super(e,1),this._parameterStructures=n}get parameterStructures(){return this._parameterStructures}};G.RequestType=Dl;var Pl=class extends ve{_parameterStructures;_;constructor(e,n=Rn.auto){super(e,1),this._parameterStructures=n}get parameterStructures(){return this._parameterStructures}};G.RequestType1=Pl;var Ol=class extends ve{_;constructor(e){super(e,2)}};G.RequestType2=Ol;var Il=class extends ve{_;constructor(e){super(e,3)}};G.RequestType3=Il;var Tl=class extends ve{_;constructor(e){super(e,4)}};G.RequestType4=Tl;var zl=class extends ve{_;constructor(e){super(e,5)}};G.RequestType5=zl;var Nl=class extends ve{_;constructor(e){super(e,6)}};G.RequestType6=Nl;var Wl=class extends ve{_;constructor(e){super(e,7)}};G.RequestType7=Wl;var Ll=class extends ve{_;constructor(e){super(e,8)}};G.RequestType8=Ll;var ql=class extends ve{_;constructor(e){super(e,9)}};G.RequestType9=ql;var jl=class extends ve{_parameterStructures;_;constructor(e,n=Rn.auto){super(e,1),this._parameterStructures=n}get parameterStructures(){return this._parameterStructures}};G.NotificationType=jl;var $l=class extends ve{_;constructor(e){super(e,0)}};G.NotificationType0=$l;var Ul=class extends ve{_parameterStructures;_;constructor(e,n=Rn.auto){super(e,1),this._parameterStructures=n}get parameterStructures(){return this._parameterStructures}};G.NotificationType1=Ul;var Bl=class extends ve{_;constructor(e){super(e,2)}};G.NotificationType2=Bl;var Vl=class extends ve{_;constructor(e){super(e,3)}};G.NotificationType3=Vl;var Hl=class extends ve{_;constructor(e){super(e,4)}};G.NotificationType4=Hl;var Gl=class extends ve{_;constructor(e){super(e,5)}};G.NotificationType5=Gl;var Kl=class extends ve{_;constructor(e){super(e,6)}};G.NotificationType6=Kl;var Jl=class extends ve{_;constructor(e){super(e,7)}};G.NotificationType7=Jl;var Xl=class extends ve{_;constructor(e){super(e,8)}};G.NotificationType8=Xl;var Yl=class extends ve{_;constructor(e){super(e,9)}};G.NotificationType9=Yl;var Pp;(function(t){function e(r){let s=r;return s&&ri.string(s.method)&&(ri.string(s.id)||ri.number(s.id))}t.isRequest=e;function n(r){let s=r;return s&&ri.string(s.method)&&r.id===void 0}t.isNotification=n;function i(r){let s=r;return s&&(s.result!==void 0||!!s.error)&&(ri.string(s.id)||ri.number(s.id)||s.id===null)}t.isResponse=i})(Pp||(G.Message=Pp={}))});var ec=U(Dn=>{"use strict";Object.defineProperty(Dn,"__esModule",{value:!0});Dn.LRUCache=Dn.LinkedMap=Dn.Touch=void 0;var nt;(function(t){t.None=0,t.First=1,t.AsOld=t.First,t.Last=2,t.AsNew=t.Last})(nt||(Dn.Touch=nt={}));var js=class{[Symbol.toStringTag]="LinkedMap";_map;_head;_tail;_size;_state;constructor(){this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0,this._state=0}clear(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0,this._state++}isEmpty(){return!this._head&&!this._tail}get size(){return this._size}get first(){return this._head?.value}get last(){return this._tail?.value}before(e){let n=this._map.get(e);return n?n.previous?.value:void 0}after(e){let n=this._map.get(e);return n?n.next?.value:void 0}has(e){return this._map.has(e)}get(e,n=nt.None){let i=this._map.get(e);if(i)return n!==nt.None&&this.touch(i,n),i.value}set(e,n,i=nt.None){let r=this._map.get(e);if(r)r.value=n,i!==nt.None&&this.touch(r,i);else{switch(r={key:e,value:n,next:void 0,previous:void 0},i){case nt.None:this.addItemLast(r);break;case nt.First:this.addItemFirst(r);break;case nt.Last:this.addItemLast(r);break;default:this.addItemLast(r);break}this._map.set(e,r),this._size++}return this}delete(e){return!!this.remove(e)}remove(e){let n=this._map.get(e);if(n)return this._map.delete(e),this.removeItem(n),this._size--,n.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw new Error("Invalid list");let e=this._head;return this._map.delete(e.key),this.removeItem(e),this._size--,e.value}forEach(e,n){let i=this._state,r=this._head;for(;r;){if(n?e.bind(n)(r.value,r.key,this):e(r.value,r.key,this),this._state!==i)throw new Error("LinkedMap got modified during iteration.");r=r.next}}keys(){let e=this._state,n=this._head,i={[Symbol.iterator]:()=>i,next:()=>{if(this._state!==e)throw new Error("LinkedMap got modified during iteration.");if(n){let r={value:n.key,done:!1};return n=n.next,r}else return{value:void 0,done:!0}}};return i}values(){let e=this._state,n=this._head,i={[Symbol.iterator]:()=>i,next:()=>{if(this._state!==e)throw new Error("LinkedMap got modified during iteration.");if(n){let r={value:n.value,done:!1};return n=n.next,r}else return{value:void 0,done:!0}}};return i}entries(){let e=this._state,n=this._head,i={[Symbol.iterator]:()=>i,next:()=>{if(this._state!==e)throw new Error("LinkedMap got modified during iteration.");if(n){let r={value:[n.key,n.value],done:!1};return n=n.next,r}else return{value:void 0,done:!0}}};return i}[Symbol.iterator](){return this.entries()}trimOld(e){if(e>=this.size)return;if(e===0){this.clear();return}let n=this._head,i=this.size;for(;n&&i>e;)this._map.delete(n.key),n=n.next,i--;this._head=n,this._size=i,n&&(n.previous=void 0),this._state++}addItemFirst(e){if(!this._head&&!this._tail)this._tail=e;else if(this._head)e.next=this._head,this._head.previous=e;else throw new Error("Invalid list");this._head=e,this._state++}addItemLast(e){if(!this._head&&!this._tail)this._head=e;else if(this._tail)e.previous=this._tail,this._tail.next=e;else throw new Error("Invalid list");this._tail=e,this._state++}removeItem(e){if(e===this._head&&e===this._tail)this._head=void 0,this._tail=void 0;else if(e===this._head){if(!e.next)throw new Error("Invalid list");e.next.previous=void 0,this._head=e.next}else if(e===this._tail){if(!e.previous)throw new Error("Invalid list");e.previous.next=void 0,this._tail=e.previous}else{let n=e.next,i=e.previous;if(!n||!i)throw new Error("Invalid list");n.previous=i,i.next=n}e.next=void 0,e.previous=void 0,this._state++}touch(e,n){if(!this._head||!this._tail)throw new Error("Invalid list");if(!(n!==nt.First&&n!==nt.Last)){if(n===nt.First){if(e===this._head)return;let i=e.next,r=e.previous;e===this._tail?(r.next=void 0,this._tail=r):(i.previous=r,r.next=i),e.previous=void 0,e.next=this._head,this._head.previous=e,this._head=e,this._state++}else if(n===nt.Last){if(e===this._tail)return;let i=e.next,r=e.previous;e===this._head?(i.previous=void 0,this._head=i):(i.previous=r,r.next=i),e.next=void 0,e.previous=this._tail,this._tail.next=e,this._tail=e,this._state++}}}toJSON(){let e=[];return this.forEach((n,i)=>{e.push([i,n])}),e}fromJSON(e){this.clear();for(let[n,i]of e)this.set(n,i)}};Dn.LinkedMap=js;var Zl=class extends js{_limit;_ratio;constructor(e,n=1){super(),this._limit=e,this._ratio=Math.min(Math.max(0,n),1)}get limit(){return this._limit}set limit(e){this._limit=e,this.checkTrim()}get ratio(){return this._ratio}set ratio(e){this._ratio=Math.min(Math.max(0,e),1),this.checkTrim()}get(e,n=nt.AsNew){return super.get(e,n)}peek(e){return super.get(e,nt.None)}set(e,n){return super.set(e,n,nt.Last),this.checkTrim(),this}checkTrim(){this.size>this._limit&&this.trimOld(Math.round(this._limit*this._ratio))}};Dn.LRUCache=Zl});var Ip=U($s=>{"use strict";Object.defineProperty($s,"__esModule",{value:!0});$s.Disposable=void 0;var Op;(function(t){function e(n){return{dispose:n}}t.create=e})(Op||($s.Disposable=Op={}))});var Pn=U(ic=>{"use strict";Object.defineProperty(ic,"__esModule",{value:!0});var tc;function nc(){if(tc===void 0)throw new Error("No runtime abstraction layer installed");return tc}(function(t){function e(n){if(n===void 0)throw new Error("No runtime abstraction layer provided");tc=n}t.install=e})(nc||(nc={}));ic.default=nc});var Ei=U(On=>{"use strict";var k_=On&&On.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(On,"__esModule",{value:!0});On.Emitter=On.Event=void 0;var M_=k_(Pn()),Tp;(function(t){let e={dispose(){}};t.None=function(){return e}})(Tp||(On.Event=Tp={}));var rc=class{_callbacks;_contexts;add(e,n=null,i){this._callbacks||(this._callbacks=[],this._contexts=[]),this._callbacks.push(e),this._contexts.push(n),Array.isArray(i)&&i.push({dispose:()=>this.remove(e,n)})}remove(e,n=null){if(!this._callbacks)return;let i=!1;for(let r=0,s=this._callbacks.length;r<s;r++)if(this._callbacks[r]===e)if(this._contexts[r]===n){this._callbacks.splice(r,1),this._contexts.splice(r,1);return}else i=!0;if(i)throw new Error("When adding a listener with a context, you should remove it with the same context")}invoke(...e){if(!this._callbacks)return[];let n=[],i=this._callbacks.slice(0),r=this._contexts.slice(0);for(let s=0,a=i.length;s<a;s++)try{n.push(i[s].apply(r[s],e))}catch(o){(0,M_.default)().console.error(o)}return n}isEmpty(){return!this._callbacks||this._callbacks.length===0}dispose(){this._callbacks=void 0,this._contexts=void 0}},sc=class t{_options;static _noop=function(){};_event;_callbacks;constructor(e){this._options=e}get event(){return this._event||(this._event=(e,n,i)=>{this._callbacks||(this._callbacks=new rc),this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty()&&this._options.onFirstListenerAdd(this),this._callbacks.add(e,n);let r={dispose:()=>{this._callbacks&&(this._callbacks.remove(e,n),r.dispose=t._noop,this._options&&this._options.onLastListenerRemove&&this._callbacks.isEmpty()&&this._options.onLastListenerRemove(this))}};return Array.isArray(i)&&i.push(r),r}),this._event}fire(e){this._callbacks&&this._callbacks.invoke.call(this._callbacks,e)}dispose(){this._callbacks&&(this._callbacks.dispose(),this._callbacks=void 0)}};On.Emitter=sc});var Vs=U(pt=>{"use strict";var R_=pt&&pt.__createBinding||(Object.create?(function(t,e,n,i){i===void 0&&(i=n);var r=Object.getOwnPropertyDescriptor(e,n);(!r||("get"in r?!e.__esModule:r.writable||r.configurable))&&(r={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,i,r)}):(function(t,e,n,i){i===void 0&&(i=n),t[i]=e[n]})),D_=pt&&pt.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),P_=pt&&pt.__importStar||(function(){var t=function(e){return t=Object.getOwnPropertyNames||function(n){var i=[];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(i[i.length]=r);return i},t(e)};return function(e){if(e&&e.__esModule)return e;var n={};if(e!=null)for(var i=t(e),r=0;r<i.length;r++)i[r]!=="default"&&R_(n,e,i[r]);return D_(n,e),n}})(),O_=pt&&pt.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(pt,"__esModule",{value:!0});pt.CancellationTokenSource=pt.CancellationToken=void 0;var I_=O_(Pn()),T_=P_(Ai()),ac=Ei(),Us;(function(t){t.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:ac.Event.None}),t.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:ac.Event.None});function e(n){let i=n;return i&&(i===t.None||i===t.Cancelled||T_.boolean(i.isCancellationRequested)&&!!i.onCancellationRequested)}t.is=e})(Us||(pt.CancellationToken=Us={}));var z_=Object.freeze(function(t,e){let n=(0,I_.default)().timer.setTimeout(t.bind(e),0);return{dispose(){n.dispose()}}}),Bs=class{_isCancelled=!1;_emitter;cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?z_:(this._emitter||(this._emitter=new ac.Emitter),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=void 0)}},oc=class{_token;get token(){return this._token||(this._token=new Bs),this._token}cancel(){this._token?this._token.cancel():this._token=Us.Cancelled}dispose(){this._token?this._token instanceof Bs&&this._token.dispose():this._token=Us.None}};pt.CancellationTokenSource=oc});var zp=U(ki=>{"use strict";Object.defineProperty(ki,"__esModule",{value:!0});ki.SharedArrayReceiverStrategy=ki.SharedArraySenderStrategy=void 0;var N_=Vs(),qr;(function(t){t.Continue=0,t.Cancelled=1})(qr||(qr={}));var lc=class{buffers;constructor(){this.buffers=new Map}enableCancellation(e){if(e.id===null)return;let n=new SharedArrayBuffer(4),i=new Int32Array(n,0,1);i[0]=qr.Continue,this.buffers.set(e.id,n),e.$cancellationData=n}async sendCancellation(e,n){let i=this.buffers.get(n);if(i===void 0)return;let r=new Int32Array(i,0,1);Atomics.store(r,0,qr.Cancelled)}cleanup(e){this.buffers.delete(e)}dispose(){this.buffers.clear()}};ki.SharedArraySenderStrategy=lc;var cc=class{data;constructor(e){this.data=new Int32Array(e,0,1)}get isCancellationRequested(){return Atomics.load(this.data,0)===qr.Cancelled}get onCancellationRequested(){throw new Error("Cancellation over SharedArrayBuffer doesn't support cancellation events")}},dc=class{token;constructor(e){this.token=new cc(e)}cancel(){}dispose(){}},hc=class{kind="request";createCancellationTokenSource(e){let n=e.$cancellationData;return n===void 0?new N_.CancellationTokenSource:new dc(n)}};ki.SharedArrayReceiverStrategy=hc});var pc=U(Mi=>{"use strict";var W_=Mi&&Mi.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Mi,"__esModule",{value:!0});Mi.Semaphore=void 0;var L_=W_(Pn()),uc=class{_capacity;_active;_waiting;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((n,i)=>{this._waiting.push({thunk:e,resolve:n,reject:i}),this.runNext()})}get active(){return this._active}runNext(){this._waiting.length===0||this._active===this._capacity||(0,L_.default)().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("Too many thunks active");try{let n=e.thunk();n instanceof Promise?n.then(i=>{this._active--,e.resolve(i),this.runNext()},i=>{this._active--,e.reject(i),this.runNext()}):(this._active--,e.resolve(n),this.runNext())}catch(n){this._active--,e.reject(n),this.runNext()}}};Mi.Semaphore=uc});var Wp=U(it=>{"use strict";var q_=it&&it.__createBinding||(Object.create?(function(t,e,n,i){i===void 0&&(i=n);var r=Object.getOwnPropertyDescriptor(e,n);(!r||("get"in r?!e.__esModule:r.writable||r.configurable))&&(r={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,i,r)}):(function(t,e,n,i){i===void 0&&(i=n),t[i]=e[n]})),j_=it&&it.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),$_=it&&it.__importStar||(function(){var t=function(e){return t=Object.getOwnPropertyNames||function(n){var i=[];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(i[i.length]=r);return i},t(e)};return function(e){if(e&&e.__esModule)return e;var n={};if(e!=null)for(var i=t(e),r=0;r<i.length;r++)i[r]!=="default"&&q_(n,e,i[r]);return j_(n,e),n}})(),U_=it&&it.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(it,"__esModule",{value:!0});it.ReadableStreamMessageReader=it.AbstractMessageReader=it.MessageReader=void 0;var mc=U_(Pn()),Ri=$_(Ai()),fc=Ei(),B_=pc(),Np;(function(t){function e(n){let i=n;return i&&Ri.func(i.listen)&&Ri.func(i.dispose)&&Ri.func(i.onError)&&Ri.func(i.onClose)&&Ri.func(i.onPartialMessage)}t.is=e})(Np||(it.MessageReader=Np={}));var Hs=class{errorEmitter;closeEmitter;partialMessageEmitter;constructor(){this.errorEmitter=new fc.Emitter,this.closeEmitter=new fc.Emitter,this.partialMessageEmitter=new fc.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose(),this.partialMessageEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(e){this.errorEmitter.fire(this.asError(e))}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}get onPartialMessage(){return this.partialMessageEmitter.event}firePartialMessage(e){this.partialMessageEmitter.fire(e)}asError(e){return e instanceof Error?e:new Error(`Reader received error. Reason: ${Ri.string(e.message)?e.message:"unknown"}`)}};it.AbstractMessageReader=Hs;var bc;(function(t){function e(n){let i,r,s,a=new Map,o,l=new Map;if(n===void 0||typeof n=="string")i=n??"utf-8";else{if(i=n.charset??"utf-8",n.contentDecoder!==void 0&&(s=n.contentDecoder,a.set(s.name,s)),n.contentDecoders!==void 0)for(let c of n.contentDecoders)a.set(c.name,c);if(n.contentTypeDecoder!==void 0&&(o=n.contentTypeDecoder,l.set(o.name,o)),n.contentTypeDecoders!==void 0)for(let c of n.contentTypeDecoders)l.set(c.name,c)}return o===void 0&&(o=(0,mc.default)().applicationJson.decoder,l.set(o.name,o)),{charset:i,contentDecoder:s,contentDecoders:a,contentTypeDecoder:o,contentTypeDecoders:l}}t.fromOptions=e})(bc||(bc={}));var gc=class extends Hs{readable;options;callback;nextMessageLength;messageToken;buffer;partialMessageTimer;_partialMessageTimeout;readSemaphore;constructor(e,n){super(),this.readable=e,this.options=bc.fromOptions(n),this.buffer=(0,mc.default)().messageBuffer.create(this.options.charset),this._partialMessageTimeout=1e4,this.nextMessageLength=-1,this.messageToken=0,this.readSemaphore=new B_.Semaphore(1)}set partialMessageTimeout(e){this._partialMessageTimeout=e}get partialMessageTimeout(){return this._partialMessageTimeout}listen(e){this.nextMessageLength=-1,this.messageToken=0,this.partialMessageTimer=void 0,this.callback=e;let n=this.readable.onData(i=>{this.onData(i)});return this.readable.onError(i=>this.fireError(i)),this.readable.onClose(()=>this.fireClose()),n}onData(e){try{for(this.buffer.append(e);;){if(this.nextMessageLength===-1){let i=this.buffer.tryReadHeaders(!0);if(!i)return;let r=i.get("content-length");if(!r){this.fireError(new Error(`Header must provide a Content-Length property. ${JSON.stringify(Object.fromEntries(i))}`));return}let s=parseInt(r);if(isNaN(s)){this.fireError(new Error(`Content-Length value must be a number. Got ${r}`));return}this.nextMessageLength=s}let n=this.buffer.tryReadBody(this.nextMessageLength);if(n===void 0){this.setPartialMessageTimer();return}this.clearPartialMessageTimer(),this.nextMessageLength=-1,this.readSemaphore.lock(async()=>{let i=this.options.contentDecoder!==void 0?await this.options.contentDecoder.decode(n):n,r=await this.options.contentTypeDecoder.decode(i,this.options);this.callback(r)}).catch(i=>{this.fireError(i)})}}catch(n){this.fireError(n)}}clearPartialMessageTimer(){this.partialMessageTimer&&(this.partialMessageTimer.dispose(),this.partialMessageTimer=void 0)}setPartialMessageTimer(){this.clearPartialMessageTimer(),!(this._partialMessageTimeout<=0)&&(this.partialMessageTimer=(0,mc.default)().timer.setTimeout((e,n)=>{this.partialMessageTimer=void 0,e===this.messageToken&&(this.firePartialMessage({messageToken:e,waitingTime:n}),this.setPartialMessageTimer())},this._partialMessageTimeout,this.messageToken,this._partialMessageTimeout))}};it.ReadableStreamMessageReader=gc});var Up=U(rt=>{"use strict";var V_=rt&&rt.__createBinding||(Object.create?(function(t,e,n,i){i===void 0&&(i=n);var r=Object.getOwnPropertyDescriptor(e,n);(!r||("get"in r?!e.__esModule:r.writable||r.configurable))&&(r={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,i,r)}):(function(t,e,n,i){i===void 0&&(i=n),t[i]=e[n]})),H_=rt&&rt.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),G_=rt&&rt.__importStar||(function(){var t=function(e){return t=Object.getOwnPropertyNames||function(n){var i=[];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(i[i.length]=r);return i},t(e)};return function(e){if(e&&e.__esModule)return e;var n={};if(e!=null)for(var i=t(e),r=0;r<i.length;r++)i[r]!=="default"&&V_(n,e,i[r]);return H_(n,e),n}})(),K_=rt&&rt.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(rt,"__esModule",{value:!0});rt.WriteableStreamMessageWriter=rt.AbstractMessageWriter=rt.MessageWriter=void 0;var Lp=K_(Pn()),jr=G_(Ai()),J_=pc(),qp=Ei(),X_="Content-Length: ",jp=`\r `,$p;(function(t){function e(n){let i=n;return i&&jr.func(i.dispose)&&jr.func(i.onClose)&&jr.func(i.onError)&&jr.func(i.write)}t.is=e})($p||(rt.MessageWriter=$p={}));var Gs=class{errorEmitter;closeEmitter;constructor(){this.errorEmitter=new qp.Emitter,this.closeEmitter=new qp.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(e,n,i){this.errorEmitter.fire([this.asError(e),n,i])}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: ${jr.string(e.message)?e.message:"unknown"}`)}};rt.AbstractMessageWriter=Gs;var wc;(function(t){function e(n){return n===void 0||typeof n=="string"?{charset:n??"utf-8",contentTypeEncoder:(0,Lp.default)().applicationJson.encoder}:{charset:n.charset??"utf-8",contentEncoder:n.contentEncoder,contentTypeEncoder:n.contentTypeEncoder??(0,Lp.default)().applicationJson.encoder}}t.fromOptions=e})(wc||(wc={}));var _c=class extends Gs{writable;options;errorCount;writeSemaphore;constructor(e,n){super(),this.writable=e,this.options=wc.fromOptions(n),this.errorCount=0,this.writeSemaphore=new J_.Semaphore(1),this.writable.onError(i=>this.fireError(i)),this.writable.onClose(()=>this.fireClose())}async write(e){return this.writeSemaphore.lock(async()=>this.options.contentTypeEncoder.encode(e,this.options).then(i=>this.options.contentEncoder!==void 0?this.options.contentEncoder.encode(i):i).then(i=>{let r=[];return r.push(X_,i.byteLength.toString(),jp),r.push(jp),this.doWrite(e,r,i)},i=>{throw this.fireError(i),i}))}async doWrite(e,n,i){try{return await this.writable.write(n.join(""),"ascii"),this.writable.write(i)}catch(r){return this.handleError(r,e),Promise.reject(r)}}handleError(e,n){this.errorCount++,this.fireError(e,n,this.errorCount)}end(){this.writable.end()}};rt.WriteableStreamMessageWriter=_c});var Bp=U(Ks=>{"use strict";Object.defineProperty(Ks,"__esModule",{value:!0});Ks.AbstractMessageBuffer=void 0;var Y_=13,Q_=10,Z_=`\r `,Sc=class{_encoding;_chunks;_totalLength;constructor(e="utf-8"){this._encoding=e,this._chunks=[],this._totalLength=0}get encoding(){return this._encoding}append(e){let n=typeof e=="string"?this.fromString(e,this._encoding):e;this._chunks.push(n),this._totalLength+=n.byteLength}tryReadHeaders(e=!1){if(this._chunks.length===0)return;let n=0,i=0,r=0,s=0;e:for(;i<this._chunks.length;){let c=this._chunks[i];for(r=0;r<c.length;){switch(c[r]){case Y_:switch(n){case 0:n=1;break;case 2:n=3;break;default:n=0}break;case Q_:switch(n){case 1:n=2;break;case 3:n=4,r++;break e;default:n=0}break;default:n=0}r++}s+=c.byteLength,i++}if(n!==4)return;let a=this._read(s+r),o=new Map,l=this.toString(a,"ascii").split(Z_);if(l.length<2)return o;for(let c=0;c<l.length-2;c++){let h=l[c],p=h.indexOf(":");if(p===-1)throw new Error(`Message header must separate key and value using ':' ${h}`);let w=h.substr(0,p),b=h.substr(p+1).trim();o.set(e?w.toLowerCase():w,b)}return o}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 s=this._chunks[0];return this._chunks.shift(),this._totalLength-=e,this.asNative(s)}if(this._chunks[0].byteLength>e){let s=this._chunks[0],a=this.asNative(s,e);return this._chunks[0]=s.slice(e),this._totalLength-=e,a}let n=this.allocNative(e),i=0,r=0;for(;e>0;){let s=this._chunks[r];if(s.byteLength>e){let a=s.slice(0,e);n.set(a,i),i+=e,this._chunks[r]=s.slice(e),this._totalLength-=e,e-=e}else n.set(s,i),i+=s.byteLength,this._chunks.shift(),this._totalLength-=s.byteLength,e-=s.byteLength}return n}};Ks.AbstractMessageBuffer=Sc});var Kp=U(ee=>{"use strict";var e2=ee&&ee.__createBinding||(Object.create?(function(t,e,n,i){i===void 0&&(i=n);var r=Object.getOwnPropertyDescriptor(e,n);(!r||("get"in r?!e.__esModule:r.writable||r.configurable))&&(r={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,i,r)}):(function(t,e,n,i){i===void 0&&(i=n),t[i]=e[n]})),t2=ee&&ee.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),n2=ee&&ee.__importStar||(function(){var t=function(e){return t=Object.getOwnPropertyNames||function(n){var i=[];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(i[i.length]=r);return i},t(e)};return function(e){if(e&&e.__esModule)return e;var n={};if(e!=null)for(var i=t(e),r=0;r<i.length;r++)i[r]!=="default"&&e2(n,e,i[r]);return t2(n,e),n}})(),i2=ee&&ee.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ee,"__esModule",{value:!0});ee.ConnectionOptions=ee.MessageStrategy=ee.CancellationStrategy=ee.CancellationSenderStrategy=ee.CancellationReceiverStrategy=ee.RequestCancellationReceiverStrategy=ee.IdCancellationReceiverStrategy=ee.ConnectionStrategy=ee.ConnectionError=ee.ConnectionErrors=ee.LogTraceNotification=ee.SetTraceNotification=ee.TraceFormat=ee.TraceValues=ee.TraceValue=ee.Trace=ee.NullLogger=ee.ProgressType=ee.ProgressToken=void 0;ee.createMessageConnection=r2;var Vp=i2(Pn()),Ee=n2(Ai()),ie=Ql(),Hp=ec(),$r=Ei(),yc=Vs(),Vr;(function(t){t.type=new ie.NotificationType("$/cancelRequest")})(Vr||(Vr={}));var vc;(function(t){function e(n){return typeof n=="string"||typeof n=="number"}t.is=e})(vc||(ee.ProgressToken=vc={}));var Ur;(function(t){t.type=new ie.NotificationType("$/progress")})(Ur||(Ur={}));var Fc=class{__;_pr;constructor(){}};ee.ProgressType=Fc;var Cc;(function(t){function e(n){return Ee.func(n)}t.is=e})(Cc||(Cc={}));ee.NullLogger=Object.freeze({error:()=>{},warn:()=>{},info:()=>{},log:()=>{}});var fe;(function(t){t[t.Off=0]="Off",t[t.Messages=1]="Messages",t[t.Compact=2]="Compact",t[t.Verbose=3]="Verbose"})(fe||(ee.Trace=fe={}));var xc;(function(t){t.Off="off",t.Messages="messages",t.Compact="compact",t.Verbose="verbose"})(xc||(ee.TraceValue=xc={}));ee.TraceValues=xc;(function(t){function e(i){if(!Ee.string(i))return t.Off;switch(i=i.toLowerCase(),i){case"off":return t.Off;case"messages":return t.Messages;case"compact":return t.Compact;case"verbose":return t.Verbose;default:return t.Off}}t.fromString=e;function n(i){switch(i){case t.Off:return"off";case t.Messages:return"messages";case t.Compact:return"compact";case t.Verbose:return"verbose";default:return"off"}}t.toString=n})(fe||(ee.Trace=fe={}));var St;(function(t){t.Text="text",t.JSON="json"})(St||(ee.TraceFormat=St={}));(function(t){function e(n){return Ee.string(n)?(n=n.toLowerCase(),n==="json"?t.JSON:t.Text):t.Text}t.fromString=e})(St||(ee.TraceFormat=St={}));var Ac;(function(t){t.type=new ie.NotificationType("$/setTrace")})(Ac||(ee.SetTraceNotification=Ac={}));var Js;(function(t){t.type=new ie.NotificationType("$/logTrace")})(Js||(ee.LogTraceNotification=Js={}));var Br;(function(t){t[t.Closed=1]="Closed",t[t.Disposed=2]="Disposed",t[t.AlreadyListening=3]="AlreadyListening"})(Br||(ee.ConnectionErrors=Br={}));var Di=class t extends Error{code;constructor(e,n){super(n),this.code=e,Object.setPrototypeOf(this,t.prototype)}};ee.ConnectionError=Di;var Ec;(function(t){function e(n){let i=n;return i&&Ee.func(i.cancelUndispatched)}t.is=e})(Ec||(ee.ConnectionStrategy=Ec={}));var Xs;(function(t){function e(n){let i=n;return i&&(i.kind===void 0||i.kind==="id")&&Ee.func(i.createCancellationTokenSource)&&(i.dispose===void 0||Ee.func(i.dispose))}t.is=e})(Xs||(ee.IdCancellationReceiverStrategy=Xs={}));var kc;(function(t){function e(n){let i=n;return i&&i.kind==="request"&&Ee.func(i.createCancellationTokenSource)&&(i.dispose===void 0||Ee.func(i.dispose))}t.is=e})(kc||(ee.RequestCancellationReceiverStrategy=kc={}));var Ys;(function(t){t.Message=Object.freeze({createCancellationTokenSource(n){return new yc.CancellationTokenSource}});function e(n){return Xs.is(n)||kc.is(n)}t.is=e})(Ys||(ee.CancellationReceiverStrategy=Ys={}));var Qs;(function(t){t.Message=Object.freeze({sendCancellation(n,i){return n.sendNotification(Vr.type,{id:i})},cleanup(n){}});function e(n){let i=n;return i&&Ee.func(i.sendCancellation)&&Ee.func(i.cleanup)}t.is=e})(Qs||(ee.CancellationSenderStrategy=Qs={}));var Zs;(function(t){t.Message=Object.freeze({receiver:Ys.Message,sender:Qs.Message});function e(n){let i=n;return i&&Ys.is(i.receiver)&&Qs.is(i.sender)}t.is=e})(Zs||(ee.CancellationStrategy=Zs={}));var ea;(function(t){function e(n){let i=n;return i&&Ee.func(i.handleMessage)}t.is=e})(ea||(ee.MessageStrategy=ea={}));var Gp;(function(t){function e(n){let i=n;return i&&(Zs.is(i.cancellationStrategy)||Ec.is(i.connectionStrategy)||ea.is(i.messageStrategy)||Ee.number(i.maxParallelism))}t.is=e})(Gp||(ee.ConnectionOptions=Gp={}));var jt;(function(t){t[t.New=1]="New",t[t.Listening=2]="Listening",t[t.Closed=3]="Closed",t[t.Disposed=4]="Disposed"})(jt||(jt={}));function r2(t,e,n,i){let r=n!==void 0?n:ee.NullLogger,s=0,a=0,o=0,l="2.0",c=i?.maxParallelism??-1,h=0,p,w=new Map,b,O=new Map,H=new Map,le,Q=new Hp.LinkedMap,y=new Map,S=new Set,g=new Map,D=fe.Off,k=St.Text,B,ae=jt.New,qe=new $r.Emitter,ut=new $r.Emitter,T=new $r.Emitter,x=new $r.Emitter,L=new $r.Emitter,W=i&&i.cancellationStrategy?i.cancellationStrategy:Zs.Message;function A(m){}function M(){return ae===jt.Listening}function P(){return ae===jt.Closed}function q(){return ae===jt.Disposed}function V(){(ae===jt.New||ae===jt.Listening)&&(ae=jt.Closed,ut.fire(void 0))}function j(m){qe.fire([m,void 0,void 0])}function te(m){qe.fire(m)}t.onClose(V),t.onError(j),e.onClose(V),e.onError(te);function oe(m){if(m===null)throw new Error("Can't send requests with id null since the response can't be correlated.");return"req-"+m.toString()}function Oe(m){return m===null?"res-unknown-"+(++o).toString():"res-"+m.toString()}function be(){return"not-"+(++a).toString()}function Mt(m,R){ie.Message.isRequest(R)?m.set(oe(R.id),R):ie.Message.isResponse(R)?c===-1?m.set(Oe(R.id),R):wp(R):m.set(be(),R)}function cn(){le||Q.size===0||c!==-1&&h>=c||(le=(0,Vp.default)().timer.setImmediate(async()=>{if(le=void 0,Q.size===0||c!==-1&&h>=c)return;let m=Q.shift(),R;try{h++;let z=i?.messageStrategy;ea.is(z)?R=z.handleMessage(m,gp):R=gp(m)}catch(z){r.error(`Processing message queue failed: ${z.toString()}`)}finally{R instanceof Promise?R.then(()=>{h--,cn()}).catch(z=>{r.error(`Processing message queue failed: ${z.toString()}`)}):h--,cn()}}))}async function gp(m){return ie.Message.isRequest(m)?qw(m):ie.Message.isNotification(m)?jw(m):ie.Message.isResponse(m)?wp(m):$w(m)}let Lw=m=>{try{if(ie.Message.isNotification(m)&&m.method===Vr.type.method){let R=m.params.id,z=oe(R),K=Q.get(z);if(ie.Message.isRequest(K)){let Ae=i?.connectionStrategy,ge=Ae&&Ae.cancelUndispatched?Ae.cancelUndispatched(K,A):void 0;if(ge&&(ge.error!==void 0||ge.result!==void 0)){Q.delete(z),g.delete(R),ge.id=K.id,Fl(ge,m.method,Date.now()),e.write(ge).catch(()=>r.error("Sending response for canceled message failed."));return}}let pe=g.get(R);if(pe!==void 0){pe.cancel(),Cl(m);return}else S.add(R)}Mt(Q,m)}finally{cn()}};async function qw(m){if(q())return Promise.resolve();function R(je,tt,Me){let Re={jsonrpc:l,id:m.id};return je instanceof ie.ResponseError?Re.error=je.toJson():Re.result=je===void 0?null:je,Fl(Re,tt,Me),e.write(Re)}function z(je,tt,Me){let Re={jsonrpc:l,id:m.id,error:je.toJson()};return Fl(Re,tt,Me),e.write(Re)}Vw(m);let K=w.get(m.method),pe,Ae;K&&(pe=K.type,Ae=K.handler);let ge=Date.now();if(Ae||p){let je=m.id??String(Date.now()),tt=Xs.is(W.receiver)?W.receiver.createCancellationTokenSource(je):W.receiver.createCancellationTokenSource(m);m.id!==null&&S.has(m.id)&&tt.cancel(),m.id!==null&&g.set(je,tt);try{let Me;if(Ae)if(m.params===void 0){if(pe!==void 0&&pe.numberOfParams!==0)return z(new ie.ResponseError(ie.ErrorCodes.InvalidParams,`Request ${m.method} defines ${pe.numberOfParams} params but received none.`),m.method,ge);Me=Ae(tt.token)}else if(Array.isArray(m.params)){if(pe!==void 0&&pe.parameterStructures===ie.ParameterStructures.byName)return z(new ie.ResponseError(ie.ErrorCodes.InvalidParams,`Request ${m.method} defines parameters by name but received parameters by position`),m.method,ge);Me=Ae(...m.params,tt.token)}else{if(pe!==void 0&&pe.parameterStructures===ie.ParameterStructures.byPosition)return z(new ie.ResponseError(ie.ErrorCodes.InvalidParams,`Request ${m.method} defines parameters by position but received parameters by name`),m.method,ge);Me=Ae(m.params,tt.token)}else p&&(Me=p(m.method,m.params,tt.token));let Re=await Me;await R(Re,m.method,ge)}catch(Me){Me instanceof ie.ResponseError?await R(Me,m.method,ge):Me&&Ee.string(Me.message)?await z(new ie.ResponseError(ie.ErrorCodes.InternalError,`Request ${m.method} failed with message: ${Me.message}`),m.method,ge):await z(new ie.ResponseError(ie.ErrorCodes.InternalError,`Request ${m.method} failed unexpectedly without providing any details.`),m.method,ge)}finally{g.delete(je)}}else await z(new ie.ResponseError(ie.ErrorCodes.MethodNotFound,`Unhandled method ${m.method}`),m.method,ge)}function wp(m){if(!q())if(m.id===null)m.error?r.error(`Received response message without id: Error is: ${JSON.stringify(m.error,void 0,4)}`):r.error("Received response message without id. No further error information provided.");else{let R=m.id,z=y.get(R);if(Hw(m,z),z!==void 0){y.delete(R);try{if(m.error){let K=m.error;z.reject(new ie.ResponseError(K.code,K.message,K.data))}else if(m.result!==void 0)z.resolve(m.result);else throw new Error("Should never happen.")}catch(K){K.message?r.error(`Response handler '${z.method}' failed with message: ${K.message}`):r.error(`Response handler '${z.method}' failed unexpectedly.`)}}}}async function jw(m){if(q())return;let R,z;if(m.method===Vr.type.method){let K=m.params.id;S.delete(K),Cl(m);return}else{let K=O.get(m.method);K&&(z=K.handler,R=K.type)}if(z||b)try{if(Cl(m),z)if(m.params===void 0)R!==void 0&&R.numberOfParams!==0&&R.parameterStructures!==ie.ParameterStructures.byName&&r.error(`Notification ${m.method} defines ${R.numberOfParams} params but received none.`),await z();else if(Array.isArray(m.params)){let K=m.params;m.method===Ur.type.method&&K.length===2&&vc.is(K[0])?await z({token:K[0],value:K[1]}):(R!==void 0&&(R.parameterStructures===ie.ParameterStructures.byName&&r.error(`Notification ${m.method} defines parameters by name but received parameters by position`),R.numberOfParams!==m.params.length&&r.error(`Notification ${m.method} defines ${R.numberOfParams} params but received ${K.length} arguments`)),await z(...K))}else R!==void 0&&R.parameterStructures===ie.ParameterStructures.byPosition&&r.error(`Notification ${m.method} defines parameters by position but received parameters by name`),await z(m.params);else b&&await b(m.method,m.params)}catch(K){K.message?r.error(`Notification handler '${m.method}' failed with message: ${K.message}`):r.error(`Notification handler '${m.method}' failed unexpectedly.`)}else T.fire(m)}function $w(m){if(!m){r.error("Received empty message.");return}r.error(`Received message which is neither a response nor a notification message: ${JSON.stringify(m,null,4)}`);let R=m;if(Ee.string(R.id)||Ee.number(R.id)){let z=R.id,K=y.get(z);K&&K.reject(new Error("The received response has neither a result nor an error property."))}}function Mn(m){if(m!=null)switch(D){case fe.Verbose:return JSON.stringify(m,null,4);case fe.Compact:return JSON.stringify(m);default:return}}function Uw(m){if(!(D===fe.Off||!B))if(k===St.Text){let R;(D===fe.Verbose||D===fe.Compact)&&m.params&&(R=`Params: ${Mn(m.params)}`),B.log(`Sending request '${m.method} - (${m.id})'.`,R)}else xi("send-request",m)}function Bw(m){if(!(D===fe.Off||!B))if(k===St.Text){let R;(D===fe.Verbose||D===fe.Compact)&&(m.params?R=`Params: ${Mn(m.params)}`:R="No parameters provided."),B.log(`Sending notification '${m.method}'.`,R)}else xi("send-notification",m)}function Fl(m,R,z){if(!(D===fe.Off||!B))if(k===St.Text){let K;(D===fe.Verbose||D===fe.Compact)&&(m.error&&m.error.data?K=`Error data: ${Mn(m.error.data)}`:m.result?K=`Result: ${Mn(m.result)}`:m.error===void 0&&(K="No result returned.")),B.log(`Sending response '${R} - (${m.id})'. Processing request took ${Date.now()-z}ms`,K)}else xi("send-response",m)}function Vw(m){if(!(D===fe.Off||!B))if(k===St.Text){let R;(D===fe.Verbose||D===fe.Compact)&&m.params&&(R=`Params: ${Mn(m.params)}`),B.log(`Received request '${m.method} - (${m.id})'.`,R)}else xi("receive-request",m)}function Cl(m){if(!(D===fe.Off||!B||m.method===Js.type.method))if(k===St.Text){let R;(D===fe.Verbose||D===fe.Compact)&&(m.params?R=`Params: ${Mn(m.params)}`:R="No parameters provided."),B.log(`Received notification '${m.method}'.`,R)}else xi("receive-notification",m)}function Hw(m,R){if(!(D===fe.Off||!B))if(k===St.Text){let z;if((D===fe.Verbose||D===fe.Compact)&&(m.error&&m.error.data?z=`Error data: ${Mn(m.error.data)}`:m.result?z=`Result: ${Mn(m.result)}`:m.error===void 0&&(z="No result returned.")),R){let K=m.error?` Request failed: ${m.error.message} (${m.error.code}).`:"";B.log(`Received response '${R.method} - (${m.id})' in ${Date.now()-R.timerStart}ms.${K}`,z)}else B.log(`Received response ${m.id} without active response promise.`,z)}else xi("receive-response",m)}function xi(m,R){if(!B||D===fe.Off)return;let z={isLSPMessage:!0,type:m,message:R,timestamp:Date.now()};B.log(z)}function zr(){if(P())throw new Di(Br.Closed,"Connection is closed.");if(q())throw new Di(Br.Disposed,"Connection is disposed.")}function Gw(){if(M())throw new Di(Br.AlreadyListening,"Connection is already listening")}function Kw(){if(!M())throw new Error("Call listen() first.")}function Nr(m){return m===void 0?null:m}function _p(m){if(m!==null)return m}function Sp(m){return m!=null&&!Array.isArray(m)&&typeof m=="object"}function xl(m,R){switch(m){case ie.ParameterStructures.auto:return Sp(R)?_p(R):[Nr(R)];case ie.ParameterStructures.byName:if(!Sp(R))throw new Error("Received parameters by name but param is not an object literal.");return _p(R);case ie.ParameterStructures.byPosition:return[Nr(R)];default:throw new Error(`Unknown parameter structure ${m.toString()}`)}}function yp(m,R){let z,K=m.numberOfParams;switch(K){case 0:z=void 0;break;case 1:z=xl(m.parameterStructures,R[0]);break;default:z=[];for(let pe=0;pe<R.length&&pe<K;pe++)z.push(Nr(R[pe]));if(R.length<K)for(let pe=R.length;pe<K;pe++)z.push(null);break}return z}let ni={sendNotification:(m,...R)=>{zr();let z,K;if(Ee.string(m)){z=m;let Ae=R[0],ge=0,je=ie.ParameterStructures.auto;ie.ParameterStructures.is(Ae)&&(ge=1,je=Ae);let tt=R.length,Me=tt-ge;switch(Me){case 0:K=void 0;break;case 1:K=xl(je,R[ge]);break;default:if(je===ie.ParameterStructures.byName)throw new Error(`Received ${Me} parameters for 'by Name' notification parameter structure.`);K=R.slice(ge,tt).map(Re=>Nr(Re));break}}else{let Ae=R;z=m.method,K=yp(m,Ae)}let pe={jsonrpc:l,method:z,params:K};return Bw(pe),e.write(pe).catch(Ae=>{throw r.error("Sending notification failed."),Ae})},onNotification:(m,R)=>{zr();let z;return Ee.func(m)?b=m:R&&(Ee.string(m)?(z=m,O.set(m,{type:void 0,handler:R})):(z=m.method,O.set(m.method,{type:m,handler:R}))),{dispose:()=>{z!==void 0?O.get(z)?.handler===R&&O.delete(z):b===m&&(b=void 0)}}},onProgress:(m,R,z)=>{if(H.has(R))throw new Error(`Progress handler for token ${R} already registered`);return H.set(R,z),{dispose:()=>{H.get(R)===z&&H.delete(R)}}},sendProgress:(m,R,z)=>ni.sendNotification(Ur.type,{token:R,value:z}),onUnhandledProgress:x.event,sendRequest:(m,...R)=>{zr(),Kw();function z(Re,Lt){let dn=W.sender.sendCancellation(Re,Lt);dn===void 0?r.log(`Received no promise from cancellation strategy when cancelling id ${Lt}`):dn.catch(()=>{r.log(`Sending cancellation messages for id ${Lt} failed.`)})}let K,pe,Ae;if(Ee.string(m)){K=m;let Re=R[0],Lt=R[R.length-1],dn=0,Wr=ie.ParameterStructures.auto;ie.ParameterStructures.is(Re)&&(dn=1,Wr=Re);let ii=R.length;yc.CancellationToken.is(Lt)&&(ii=ii-1,Ae=Lt);let Jt=ii-dn;switch(Jt){case 0:pe=void 0;break;case 1:pe=xl(Wr,R[dn]);break;default:if(Wr===ie.ParameterStructures.byName)throw new Error(`Received ${Jt} parameters for 'by Name' request parameter structure.`);pe=R.slice(dn,ii).map(Jw=>Nr(Jw));break}}else{let Re=R;K=m.method,pe=yp(m,Re);let Lt=m.numberOfParams;Ae=yc.CancellationToken.is(Re[Lt])?Re[Lt]:void 0}let ge=s++,je,tt=!1;Ae!==void 0&&(Ae.isCancellationRequested?tt=!0:je=Ae.onCancellationRequested(()=>{z(ni,ge)}));let Me={jsonrpc:l,id:ge,method:K,params:pe};return Uw(Me),typeof W.sender.enableCancellation=="function"&&W.sender.enableCancellation(Me),new Promise(async(Re,Lt)=>{let dn=Jt=>{Re(Jt),W.sender.cleanup(ge),je?.dispose()},Wr=Jt=>{Lt(Jt),W.sender.cleanup(ge),je?.dispose()},ii={method:K,timerStart:Date.now(),resolve:dn,reject:Wr};try{y.set(ge,ii),await e.write(Me),tt&&z(ni,ge)}catch(Jt){throw y.delete(ge),ii.reject(new ie.ResponseError(ie.ErrorCodes.MessageWriteError,Jt.message?Jt.message:"Unknown reason")),r.error("Sending request failed."),Jt}})},onRequest:(m,R)=>{zr();let z=null;return Cc.is(m)?(z=void 0,p=m):Ee.string(m)?(z=null,R!==void 0&&(z=m,w.set(m,{handler:R,type:void 0}))):R!==void 0&&(z=m.method,w.set(m.method,{type:m,handler:R})),{dispose:()=>{z!==null&&(z!==void 0?w.get(z)?.handler===R&&w.delete(z):p===m&&(p=void 0))}}},hasPendingResponse:()=>y.size>0,trace:async(m,R,z)=>{let K=!1,pe=St.Text;z!==void 0&&(Ee.boolean(z)?K=z:(K=z.sendNotification||!1,pe=z.traceFormat||St.Text)),D=m,k=pe,D===fe.Off?B=void 0:B=R,K&&!P()&&!q()&&await ni.sendNotification(Ac.type,{value:fe.toString(m)})},onError:qe.event,onClose:ut.event,onUnhandledNotification:T.event,onDispose:L.event,end:()=>{e.end()},dispose:()=>{if(q())return;ae=jt.Disposed,L.fire(void 0);let m=new ie.ResponseError(ie.ErrorCodes.PendingResponseRejected,"Pending response rejected since connection got disposed");for(let R of y.values())R.reject(m);y=new Map,g=new Map,S=new Set,Q=new Hp.LinkedMap,Ee.func(e.dispose)&&e.dispose(),Ee.func(t.dispose)&&t.dispose()},listen:()=>{zr(),Gw(),ae=jt.Listening,t.listen(Lw)},inspect:()=>{(0,Vp.default)().console.log("inspect")}};return ni.onNotification(Js.type,m=>{if(D===fe.Off||!B)return;let R=D===fe.Verbose||D===fe.Compact;B.log(m.message,R?m.verbose:void 0)}),ni.onNotification(Ur.type,async m=>{let R=H.get(m.token);R?await R(m.value):x.fire(m)}),ni}});var un=U(C=>{"use strict";var s2=C&&C.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(C,"__esModule",{value:!0});C.ProgressType=C.ProgressToken=C.createMessageConnection=C.NullLogger=C.ConnectionOptions=C.ConnectionStrategy=C.AbstractMessageBuffer=C.WriteableStreamMessageWriter=C.AbstractMessageWriter=C.MessageWriter=C.ReadableStreamMessageReader=C.AbstractMessageReader=C.MessageReader=C.SharedArrayReceiverStrategy=C.SharedArraySenderStrategy=C.CancellationToken=C.CancellationTokenSource=C.Emitter=C.Event=C.Disposable=C.LRUCache=C.Touch=C.LinkedMap=C.ParameterStructures=C.NotificationType9=C.NotificationType8=C.NotificationT