miniscript-languageserver 1.5.4 → 1.5.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. package/index.js +49 -49
  2. package/package.json +2 -2
package/index.js CHANGED
@@ -1,8 +1,8 @@
1
- "use strict";var _f=Object.defineProperty;var T1=Object.getOwnPropertyDescriptor;var S1=Object.getOwnPropertyNames;var k1=Object.prototype.hasOwnProperty;var x1=(t,e)=>()=>(t&&(e=t(t=0)),e);var g=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),w1=(t,e)=>{for(var n in e)_f(t,n,{get:e[n],enumerable:!0})},E1=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of S1(e))!k1.call(t,i)&&i!==n&&_f(t,i,{get:()=>e[i],enumerable:!(r=T1(e,i))||r.enumerable});return t};var A1=t=>E1(_f({},"__esModule",{value:!0}),t);var xu=g(St=>{"use strict";Object.defineProperty(St,"__esModule",{value:!0});St.thenable=St.typedArray=St.stringArray=St.array=St.func=St.error=St.number=St.string=St.boolean=void 0;function O1(t){return t===!0||t===!1}St.boolean=O1;function Ov(t){return typeof t=="string"||t instanceof String}St.string=Ov;function C1(t){return typeof t=="number"||t instanceof Number}St.number=C1;function R1(t){return t instanceof Error}St.error=R1;function Cv(t){return typeof t=="function"}St.func=Cv;function Rv(t){return Array.isArray(t)}St.array=Rv;function P1(t){return Rv(t)&&t.every(e=>Ov(e))}St.stringArray=P1;function D1(t,e){return Array.isArray(t)&&t.every(e)}St.typedArray=D1;function I1(t){return t&&Cv(t.then)}St.thenable=I1});var Ss=g(Wt=>{"use strict";Object.defineProperty(Wt,"__esModule",{value:!0});Wt.stringArray=Wt.array=Wt.func=Wt.error=Wt.number=Wt.string=Wt.boolean=void 0;function M1(t){return t===!0||t===!1}Wt.boolean=M1;function Pv(t){return typeof t=="string"||t instanceof String}Wt.string=Pv;function L1(t){return typeof t=="number"||t instanceof Number}Wt.number=L1;function N1(t){return t instanceof Error}Wt.error=N1;function q1(t){return typeof t=="function"}Wt.func=q1;function Dv(t){return Array.isArray(t)}Wt.array=Dv;function j1(t){return Dv(t)&&t.every(e=>Pv(e))}Wt.stringArray=j1});var Gf=g(ie=>{"use strict";Object.defineProperty(ie,"__esModule",{value:!0});ie.Message=ie.NotificationType9=ie.NotificationType8=ie.NotificationType7=ie.NotificationType6=ie.NotificationType5=ie.NotificationType4=ie.NotificationType3=ie.NotificationType2=ie.NotificationType1=ie.NotificationType0=ie.NotificationType=ie.RequestType9=ie.RequestType8=ie.RequestType7=ie.RequestType6=ie.RequestType5=ie.RequestType4=ie.RequestType3=ie.RequestType2=ie.RequestType1=ie.RequestType=ie.RequestType0=ie.AbstractMessageSignature=ie.ParameterStructures=ie.ResponseError=ie.ErrorCodes=void 0;var Ni=Ss(),Tf;(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})(Tf||(ie.ErrorCodes=Tf={}));var Sf=class t extends Error{constructor(e,n,r){super(n),this.code=Ni.number(e)?e:Tf.UnknownErrorCode,this.data=r,Object.setPrototypeOf(this,t.prototype)}toJson(){let e={code:this.code,message:this.message};return this.data!==void 0&&(e.data=this.data),e}};ie.ResponseError=Sf;var cn=class t{constructor(e){this.kind=e}static is(e){return e===t.auto||e===t.byName||e===t.byPosition}toString(){return this.kind}};ie.ParameterStructures=cn;cn.auto=new cn("auto");cn.byPosition=new cn("byPosition");cn.byName=new cn("byName");var Ye=class{constructor(e,n){this.method=e,this.numberOfParams=n}get parameterStructures(){return cn.auto}};ie.AbstractMessageSignature=Ye;var kf=class extends Ye{constructor(e){super(e,0)}};ie.RequestType0=kf;var xf=class extends Ye{constructor(e,n=cn.auto){super(e,1),this._parameterStructures=n}get parameterStructures(){return this._parameterStructures}};ie.RequestType=xf;var wf=class extends Ye{constructor(e,n=cn.auto){super(e,1),this._parameterStructures=n}get parameterStructures(){return this._parameterStructures}};ie.RequestType1=wf;var Ef=class extends Ye{constructor(e){super(e,2)}};ie.RequestType2=Ef;var Af=class extends Ye{constructor(e){super(e,3)}};ie.RequestType3=Af;var Of=class extends Ye{constructor(e){super(e,4)}};ie.RequestType4=Of;var Cf=class extends Ye{constructor(e){super(e,5)}};ie.RequestType5=Cf;var Rf=class extends Ye{constructor(e){super(e,6)}};ie.RequestType6=Rf;var Pf=class extends Ye{constructor(e){super(e,7)}};ie.RequestType7=Pf;var Df=class extends Ye{constructor(e){super(e,8)}};ie.RequestType8=Df;var If=class extends Ye{constructor(e){super(e,9)}};ie.RequestType9=If;var Mf=class extends Ye{constructor(e,n=cn.auto){super(e,1),this._parameterStructures=n}get parameterStructures(){return this._parameterStructures}};ie.NotificationType=Mf;var Lf=class extends Ye{constructor(e){super(e,0)}};ie.NotificationType0=Lf;var Nf=class extends Ye{constructor(e,n=cn.auto){super(e,1),this._parameterStructures=n}get parameterStructures(){return this._parameterStructures}};ie.NotificationType1=Nf;var qf=class extends Ye{constructor(e){super(e,2)}};ie.NotificationType2=qf;var jf=class extends Ye{constructor(e){super(e,3)}};ie.NotificationType3=jf;var Ff=class extends Ye{constructor(e){super(e,4)}};ie.NotificationType4=Ff;var $f=class extends Ye{constructor(e){super(e,5)}};ie.NotificationType5=$f;var Bf=class extends Ye{constructor(e){super(e,6)}};ie.NotificationType6=Bf;var Uf=class extends Ye{constructor(e){super(e,7)}};ie.NotificationType7=Uf;var Hf=class extends Ye{constructor(e){super(e,8)}};ie.NotificationType8=Hf;var Wf=class extends Ye{constructor(e){super(e,9)}};ie.NotificationType9=Wf;var Iv;(function(t){function e(i){let s=i;return s&&Ni.string(s.method)&&(Ni.string(s.id)||Ni.number(s.id))}t.isRequest=e;function n(i){let s=i;return s&&Ni.string(s.method)&&i.id===void 0}t.isNotification=n;function r(i){let s=i;return s&&(s.result!==void 0||!!s.error)&&(Ni.string(s.id)||Ni.number(s.id)||s.id===null)}t.isResponse=r})(Iv||(ie.Message=Iv={}))});var Vf=g(Jr=>{"use strict";var Mv;Object.defineProperty(Jr,"__esModule",{value:!0});Jr.LRUCache=Jr.LinkedMap=Jr.Touch=void 0;var Gt;(function(t){t.None=0,t.First=1,t.AsOld=t.First,t.Last=2,t.AsNew=t.Last})(Gt||(Jr.Touch=Gt={}));var wu=class{constructor(){this[Mv]="LinkedMap",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}has(e){return this._map.has(e)}get(e,n=Gt.None){let r=this._map.get(e);if(r)return n!==Gt.None&&this.touch(r,n),r.value}set(e,n,r=Gt.None){let i=this._map.get(e);if(i)i.value=n,r!==Gt.None&&this.touch(i,r);else{switch(i={key:e,value:n,next:void 0,previous:void 0},r){case Gt.None:this.addItemLast(i);break;case Gt.First:this.addItemFirst(i);break;case Gt.Last:this.addItemLast(i);break;default:this.addItemLast(i);break}this._map.set(e,i),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 r=this._state,i=this._head;for(;i;){if(n?e.bind(n)(i.value,i.key,this):e(i.value,i.key,this),this._state!==r)throw new Error("LinkedMap got modified during iteration.");i=i.next}}keys(){let e=this._state,n=this._head,r={[Symbol.iterator]:()=>r,next:()=>{if(this._state!==e)throw new Error("LinkedMap got modified during iteration.");if(n){let i={value:n.key,done:!1};return n=n.next,i}else return{value:void 0,done:!0}}};return r}values(){let e=this._state,n=this._head,r={[Symbol.iterator]:()=>r,next:()=>{if(this._state!==e)throw new Error("LinkedMap got modified during iteration.");if(n){let i={value:n.value,done:!1};return n=n.next,i}else return{value:void 0,done:!0}}};return r}entries(){let e=this._state,n=this._head,r={[Symbol.iterator]:()=>r,next:()=>{if(this._state!==e)throw new Error("LinkedMap got modified during iteration.");if(n){let i={value:[n.key,n.value],done:!1};return n=n.next,i}else return{value:void 0,done:!0}}};return r}[(Mv=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(e){if(e>=this.size)return;if(e===0){this.clear();return}let n=this._head,r=this.size;for(;n&&r>e;)this._map.delete(n.key),n=n.next,r--;this._head=n,this._size=r,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,r=e.previous;if(!n||!r)throw new Error("Invalid list");n.previous=r,r.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!==Gt.First&&n!==Gt.Last)){if(n===Gt.First){if(e===this._head)return;let r=e.next,i=e.previous;e===this._tail?(i.next=void 0,this._tail=i):(r.previous=i,i.next=r),e.previous=void 0,e.next=this._head,this._head.previous=e,this._head=e,this._state++}else if(n===Gt.Last){if(e===this._tail)return;let r=e.next,i=e.previous;e===this._head?(r.previous=void 0,this._head=r):(r.previous=i,i.next=r),e.next=void 0,e.previous=this._tail,this._tail.next=e,this._tail=e,this._state++}}}toJSON(){let e=[];return this.forEach((n,r)=>{e.push([r,n])}),e}fromJSON(e){this.clear();for(let[n,r]of e)this.set(n,r)}};Jr.LinkedMap=wu;var Kf=class extends wu{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=Gt.AsNew){return super.get(e,n)}peek(e){return super.get(e,Gt.None)}set(e,n){return super.set(e,n,Gt.Last),this.checkTrim(),this}checkTrim(){this.size>this._limit&&this.trimOld(Math.round(this._limit*this._ratio))}};Jr.LRUCache=Kf});var Nv=g(Eu=>{"use strict";Object.defineProperty(Eu,"__esModule",{value:!0});Eu.Disposable=void 0;var Lv;(function(t){function e(n){return{dispose:n}}t.create=e})(Lv||(Eu.Disposable=Lv={}))});var Qr=g(Yf=>{"use strict";Object.defineProperty(Yf,"__esModule",{value:!0});var zf;function Xf(){if(zf===void 0)throw new Error("No runtime abstraction layer installed");return zf}(function(t){function e(n){if(n===void 0)throw new Error("No runtime abstraction layer provided");zf=n}t.install=e})(Xf||(Xf={}));Yf.default=Xf});var xs=g(ks=>{"use strict";Object.defineProperty(ks,"__esModule",{value:!0});ks.Emitter=ks.Event=void 0;var F1=Qr(),qv;(function(t){let e={dispose(){}};t.None=function(){return e}})(qv||(ks.Event=qv={}));var Jf=class{add(e,n=null,r){this._callbacks||(this._callbacks=[],this._contexts=[]),this._callbacks.push(e),this._contexts.push(n),Array.isArray(r)&&r.push({dispose:()=>this.remove(e,n)})}remove(e,n=null){if(!this._callbacks)return;let r=!1;for(let i=0,s=this._callbacks.length;i<s;i++)if(this._callbacks[i]===e)if(this._contexts[i]===n){this._callbacks.splice(i,1),this._contexts.splice(i,1);return}else r=!0;if(r)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=[],r=this._callbacks.slice(0),i=this._contexts.slice(0);for(let s=0,o=r.length;s<o;s++)try{n.push(r[s].apply(i[s],e))}catch(a){(0,F1.default)().console.error(a)}return n}isEmpty(){return!this._callbacks||this._callbacks.length===0}dispose(){this._callbacks=void 0,this._contexts=void 0}},Au=class t{constructor(e){this._options=e}get event(){return this._event||(this._event=(e,n,r)=>{this._callbacks||(this._callbacks=new Jf),this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty()&&this._options.onFirstListenerAdd(this),this._callbacks.add(e,n);let i={dispose:()=>{this._callbacks&&(this._callbacks.remove(e,n),i.dispose=t._noop,this._options&&this._options.onLastListenerRemove&&this._callbacks.isEmpty()&&this._options.onLastListenerRemove(this))}};return Array.isArray(r)&&r.push(i),i}),this._event}fire(e){this._callbacks&&this._callbacks.invoke.call(this._callbacks,e)}dispose(){this._callbacks&&(this._callbacks.dispose(),this._callbacks=void 0)}};ks.Emitter=Au;Au._noop=function(){}});var Ru=g(ws=>{"use strict";Object.defineProperty(ws,"__esModule",{value:!0});ws.CancellationTokenSource=ws.CancellationToken=void 0;var $1=Qr(),B1=Ss(),Qf=xs(),Ou;(function(t){t.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:Qf.Event.None}),t.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:Qf.Event.None});function e(n){let r=n;return r&&(r===t.None||r===t.Cancelled||B1.boolean(r.isCancellationRequested)&&!!r.onCancellationRequested)}t.is=e})(Ou||(ws.CancellationToken=Ou={}));var U1=Object.freeze(function(t,e){let n=(0,$1.default)().timer.setTimeout(t.bind(e),0);return{dispose(){n.dispose()}}}),Cu=class{constructor(){this._isCancelled=!1}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?U1:(this._emitter||(this._emitter=new Qf.Emitter),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=void 0)}},Zf=class{get token(){return this._token||(this._token=new Cu),this._token}cancel(){this._token?this._token.cancel():this._token=Ou.Cancelled}dispose(){this._token?this._token instanceof Cu&&this._token.dispose():this._token=Ou.None}};ws.CancellationTokenSource=Zf});var jv=g(Es=>{"use strict";Object.defineProperty(Es,"__esModule",{value:!0});Es.SharedArrayReceiverStrategy=Es.SharedArraySenderStrategy=void 0;var H1=Ru(),Uo;(function(t){t.Continue=0,t.Cancelled=1})(Uo||(Uo={}));var ep=class{constructor(){this.buffers=new Map}enableCancellation(e){if(e.id===null)return;let n=new SharedArrayBuffer(4),r=new Int32Array(n,0,1);r[0]=Uo.Continue,this.buffers.set(e.id,n),e.$cancellationData=n}async sendCancellation(e,n){let r=this.buffers.get(n);if(r===void 0)return;let i=new Int32Array(r,0,1);Atomics.store(i,0,Uo.Cancelled)}cleanup(e){this.buffers.delete(e)}dispose(){this.buffers.clear()}};Es.SharedArraySenderStrategy=ep;var tp=class{constructor(e){this.data=new Int32Array(e,0,1)}get isCancellationRequested(){return Atomics.load(this.data,0)===Uo.Cancelled}get onCancellationRequested(){throw new Error("Cancellation over SharedArrayBuffer doesn't support cancellation events")}},np=class{constructor(e){this.token=new tp(e)}cancel(){}dispose(){}},rp=class{constructor(){this.kind="request"}createCancellationTokenSource(e){let n=e.$cancellationData;return n===void 0?new H1.CancellationTokenSource:new np(n)}};Es.SharedArrayReceiverStrategy=rp});var sp=g(Pu=>{"use strict";Object.defineProperty(Pu,"__esModule",{value:!0});Pu.Semaphore=void 0;var W1=Qr(),ip=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((n,r)=>{this._waiting.push({thunk:e,resolve:n,reject:r}),this.runNext()})}get active(){return this._active}runNext(){this._waiting.length===0||this._active===this._capacity||(0,W1.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("To many thunks active");try{let n=e.thunk();n instanceof Promise?n.then(r=>{this._active--,e.resolve(r),this.runNext()},r=>{this._active--,e.reject(r),this.runNext()}):(this._active--,e.resolve(n),this.runNext())}catch(n){this._active--,e.reject(n),this.runNext()}}};Pu.Semaphore=ip});var $v=g(Zr=>{"use strict";Object.defineProperty(Zr,"__esModule",{value:!0});Zr.ReadableStreamMessageReader=Zr.AbstractMessageReader=Zr.MessageReader=void 0;var ap=Qr(),As=Ss(),op=xs(),G1=sp(),Fv;(function(t){function e(n){let r=n;return r&&As.func(r.listen)&&As.func(r.dispose)&&As.func(r.onError)&&As.func(r.onClose)&&As.func(r.onPartialMessage)}t.is=e})(Fv||(Zr.MessageReader=Fv={}));var Du=class{constructor(){this.errorEmitter=new op.Emitter,this.closeEmitter=new op.Emitter,this.partialMessageEmitter=new op.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.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: ${As.string(e.message)?e.message:"unknown"}`)}};Zr.AbstractMessageReader=Du;var up;(function(t){function e(n){let r,i,s,o=new Map,a,u=new Map;if(n===void 0||typeof n=="string")r=n??"utf-8";else{if(r=n.charset??"utf-8",n.contentDecoder!==void 0&&(s=n.contentDecoder,o.set(s.name,s)),n.contentDecoders!==void 0)for(let c of n.contentDecoders)o.set(c.name,c);if(n.contentTypeDecoder!==void 0&&(a=n.contentTypeDecoder,u.set(a.name,a)),n.contentTypeDecoders!==void 0)for(let c of n.contentTypeDecoders)u.set(c.name,c)}return a===void 0&&(a=(0,ap.default)().applicationJson.decoder,u.set(a.name,a)),{charset:r,contentDecoder:s,contentDecoders:o,contentTypeDecoder:a,contentTypeDecoders:u}}t.fromOptions=e})(up||(up={}));var cp=class extends Du{constructor(e,n){super(),this.readable=e,this.options=up.fromOptions(n),this.buffer=(0,ap.default)().messageBuffer.create(this.options.charset),this._partialMessageTimeout=1e4,this.nextMessageLength=-1,this.messageToken=0,this.readSemaphore=new G1.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(r=>{this.onData(r)});return this.readable.onError(r=>this.fireError(r)),this.readable.onClose(()=>this.fireClose()),n}onData(e){try{for(this.buffer.append(e);;){if(this.nextMessageLength===-1){let r=this.buffer.tryReadHeaders(!0);if(!r)return;let i=r.get("content-length");if(!i){this.fireError(new Error(`Header must provide a Content-Length property.
2
- ${JSON.stringify(Object.fromEntries(r))}`));return}let s=parseInt(i);if(isNaN(s)){this.fireError(new Error(`Content-Length value must be a number. Got ${i}`));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 r=this.options.contentDecoder!==void 0?await this.options.contentDecoder.decode(n):n,i=await this.options.contentTypeDecoder.decode(r,this.options);this.callback(i)}).catch(r=>{this.fireError(r)})}}catch(n){this.fireError(n)}}clearPartialMessageTimer(){this.partialMessageTimer&&(this.partialMessageTimer.dispose(),this.partialMessageTimer=void 0)}setPartialMessageTimer(){this.clearPartialMessageTimer(),!(this._partialMessageTimeout<=0)&&(this.partialMessageTimer=(0,ap.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))}};Zr.ReadableStreamMessageReader=cp});var Gv=g(ei=>{"use strict";Object.defineProperty(ei,"__esModule",{value:!0});ei.WriteableStreamMessageWriter=ei.AbstractMessageWriter=ei.MessageWriter=void 0;var Bv=Qr(),Ho=Ss(),K1=sp(),Uv=xs(),V1="Content-Length: ",Hv=`\r
3
- `,Wv;(function(t){function e(n){let r=n;return r&&Ho.func(r.dispose)&&Ho.func(r.onClose)&&Ho.func(r.onError)&&Ho.func(r.write)}t.is=e})(Wv||(ei.MessageWriter=Wv={}));var Iu=class{constructor(){this.errorEmitter=new Uv.Emitter,this.closeEmitter=new Uv.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(e,n,r){this.errorEmitter.fire([this.asError(e),n,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: ${Ho.string(e.message)?e.message:"unknown"}`)}};ei.AbstractMessageWriter=Iu;var lp;(function(t){function e(n){return n===void 0||typeof n=="string"?{charset:n??"utf-8",contentTypeEncoder:(0,Bv.default)().applicationJson.encoder}:{charset:n.charset??"utf-8",contentEncoder:n.contentEncoder,contentTypeEncoder:n.contentTypeEncoder??(0,Bv.default)().applicationJson.encoder}}t.fromOptions=e})(lp||(lp={}));var dp=class extends Iu{constructor(e,n){super(),this.writable=e,this.options=lp.fromOptions(n),this.errorCount=0,this.writeSemaphore=new K1.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(V1,r.byteLength.toString(),Hv),i.push(Hv),this.doWrite(e,i,r)},r=>{throw this.fireError(r),r}))}async doWrite(e,n,r){try{return await this.writable.write(n.join(""),"ascii"),this.writable.write(r)}catch(i){return this.handleError(i,e),Promise.reject(i)}}handleError(e,n){this.errorCount++,this.fireError(e,n,this.errorCount)}end(){this.writable.end()}};ei.WriteableStreamMessageWriter=dp});var Kv=g(Mu=>{"use strict";Object.defineProperty(Mu,"__esModule",{value:!0});Mu.AbstractMessageBuffer=void 0;var z1=13,X1=10,Y1=`\r
1
+ "use strict";var _f=Object.defineProperty;var T1=Object.getOwnPropertyDescriptor;var S1=Object.getOwnPropertyNames;var k1=Object.prototype.hasOwnProperty;var x1=(t,e)=>()=>(t&&(e=t(t=0)),e);var g=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),w1=(t,e)=>{for(var n in e)_f(t,n,{get:e[n],enumerable:!0})},E1=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of S1(e))!k1.call(t,i)&&i!==n&&_f(t,i,{get:()=>e[i],enumerable:!(r=T1(e,i))||r.enumerable});return t};var A1=t=>E1(_f({},"__esModule",{value:!0}),t);var xu=g(St=>{"use strict";Object.defineProperty(St,"__esModule",{value:!0});St.thenable=St.typedArray=St.stringArray=St.array=St.func=St.error=St.number=St.string=St.boolean=void 0;function O1(t){return t===!0||t===!1}St.boolean=O1;function Rv(t){return typeof t=="string"||t instanceof String}St.string=Rv;function C1(t){return typeof t=="number"||t instanceof Number}St.number=C1;function R1(t){return t instanceof Error}St.error=R1;function Pv(t){return typeof t=="function"}St.func=Pv;function Dv(t){return Array.isArray(t)}St.array=Dv;function P1(t){return Dv(t)&&t.every(e=>Rv(e))}St.stringArray=P1;function D1(t,e){return Array.isArray(t)&&t.every(e)}St.typedArray=D1;function I1(t){return t&&Pv(t.then)}St.thenable=I1});var Ss=g(Wt=>{"use strict";Object.defineProperty(Wt,"__esModule",{value:!0});Wt.stringArray=Wt.array=Wt.func=Wt.error=Wt.number=Wt.string=Wt.boolean=void 0;function M1(t){return t===!0||t===!1}Wt.boolean=M1;function Iv(t){return typeof t=="string"||t instanceof String}Wt.string=Iv;function L1(t){return typeof t=="number"||t instanceof Number}Wt.number=L1;function N1(t){return t instanceof Error}Wt.error=N1;function q1(t){return typeof t=="function"}Wt.func=q1;function Mv(t){return Array.isArray(t)}Wt.array=Mv;function j1(t){return Mv(t)&&t.every(e=>Iv(e))}Wt.stringArray=j1});var Gf=g(ie=>{"use strict";Object.defineProperty(ie,"__esModule",{value:!0});ie.Message=ie.NotificationType9=ie.NotificationType8=ie.NotificationType7=ie.NotificationType6=ie.NotificationType5=ie.NotificationType4=ie.NotificationType3=ie.NotificationType2=ie.NotificationType1=ie.NotificationType0=ie.NotificationType=ie.RequestType9=ie.RequestType8=ie.RequestType7=ie.RequestType6=ie.RequestType5=ie.RequestType4=ie.RequestType3=ie.RequestType2=ie.RequestType1=ie.RequestType=ie.RequestType0=ie.AbstractMessageSignature=ie.ParameterStructures=ie.ResponseError=ie.ErrorCodes=void 0;var Ni=Ss(),Tf;(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})(Tf||(ie.ErrorCodes=Tf={}));var Sf=class t extends Error{constructor(e,n,r){super(n),this.code=Ni.number(e)?e:Tf.UnknownErrorCode,this.data=r,Object.setPrototypeOf(this,t.prototype)}toJson(){let e={code:this.code,message:this.message};return this.data!==void 0&&(e.data=this.data),e}};ie.ResponseError=Sf;var cn=class t{constructor(e){this.kind=e}static is(e){return e===t.auto||e===t.byName||e===t.byPosition}toString(){return this.kind}};ie.ParameterStructures=cn;cn.auto=new cn("auto");cn.byPosition=new cn("byPosition");cn.byName=new cn("byName");var Ye=class{constructor(e,n){this.method=e,this.numberOfParams=n}get parameterStructures(){return cn.auto}};ie.AbstractMessageSignature=Ye;var kf=class extends Ye{constructor(e){super(e,0)}};ie.RequestType0=kf;var xf=class extends Ye{constructor(e,n=cn.auto){super(e,1),this._parameterStructures=n}get parameterStructures(){return this._parameterStructures}};ie.RequestType=xf;var wf=class extends Ye{constructor(e,n=cn.auto){super(e,1),this._parameterStructures=n}get parameterStructures(){return this._parameterStructures}};ie.RequestType1=wf;var Ef=class extends Ye{constructor(e){super(e,2)}};ie.RequestType2=Ef;var Af=class extends Ye{constructor(e){super(e,3)}};ie.RequestType3=Af;var Of=class extends Ye{constructor(e){super(e,4)}};ie.RequestType4=Of;var Cf=class extends Ye{constructor(e){super(e,5)}};ie.RequestType5=Cf;var Rf=class extends Ye{constructor(e){super(e,6)}};ie.RequestType6=Rf;var Pf=class extends Ye{constructor(e){super(e,7)}};ie.RequestType7=Pf;var Df=class extends Ye{constructor(e){super(e,8)}};ie.RequestType8=Df;var If=class extends Ye{constructor(e){super(e,9)}};ie.RequestType9=If;var Mf=class extends Ye{constructor(e,n=cn.auto){super(e,1),this._parameterStructures=n}get parameterStructures(){return this._parameterStructures}};ie.NotificationType=Mf;var Lf=class extends Ye{constructor(e){super(e,0)}};ie.NotificationType0=Lf;var Nf=class extends Ye{constructor(e,n=cn.auto){super(e,1),this._parameterStructures=n}get parameterStructures(){return this._parameterStructures}};ie.NotificationType1=Nf;var qf=class extends Ye{constructor(e){super(e,2)}};ie.NotificationType2=qf;var jf=class extends Ye{constructor(e){super(e,3)}};ie.NotificationType3=jf;var Ff=class extends Ye{constructor(e){super(e,4)}};ie.NotificationType4=Ff;var $f=class extends Ye{constructor(e){super(e,5)}};ie.NotificationType5=$f;var Bf=class extends Ye{constructor(e){super(e,6)}};ie.NotificationType6=Bf;var Uf=class extends Ye{constructor(e){super(e,7)}};ie.NotificationType7=Uf;var Hf=class extends Ye{constructor(e){super(e,8)}};ie.NotificationType8=Hf;var Wf=class extends Ye{constructor(e){super(e,9)}};ie.NotificationType9=Wf;var Lv;(function(t){function e(i){let s=i;return s&&Ni.string(s.method)&&(Ni.string(s.id)||Ni.number(s.id))}t.isRequest=e;function n(i){let s=i;return s&&Ni.string(s.method)&&i.id===void 0}t.isNotification=n;function r(i){let s=i;return s&&(s.result!==void 0||!!s.error)&&(Ni.string(s.id)||Ni.number(s.id)||s.id===null)}t.isResponse=r})(Lv||(ie.Message=Lv={}))});var Vf=g(Qr=>{"use strict";var Nv;Object.defineProperty(Qr,"__esModule",{value:!0});Qr.LRUCache=Qr.LinkedMap=Qr.Touch=void 0;var Gt;(function(t){t.None=0,t.First=1,t.AsOld=t.First,t.Last=2,t.AsNew=t.Last})(Gt||(Qr.Touch=Gt={}));var wu=class{constructor(){this[Nv]="LinkedMap",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}has(e){return this._map.has(e)}get(e,n=Gt.None){let r=this._map.get(e);if(r)return n!==Gt.None&&this.touch(r,n),r.value}set(e,n,r=Gt.None){let i=this._map.get(e);if(i)i.value=n,r!==Gt.None&&this.touch(i,r);else{switch(i={key:e,value:n,next:void 0,previous:void 0},r){case Gt.None:this.addItemLast(i);break;case Gt.First:this.addItemFirst(i);break;case Gt.Last:this.addItemLast(i);break;default:this.addItemLast(i);break}this._map.set(e,i),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 r=this._state,i=this._head;for(;i;){if(n?e.bind(n)(i.value,i.key,this):e(i.value,i.key,this),this._state!==r)throw new Error("LinkedMap got modified during iteration.");i=i.next}}keys(){let e=this._state,n=this._head,r={[Symbol.iterator]:()=>r,next:()=>{if(this._state!==e)throw new Error("LinkedMap got modified during iteration.");if(n){let i={value:n.key,done:!1};return n=n.next,i}else return{value:void 0,done:!0}}};return r}values(){let e=this._state,n=this._head,r={[Symbol.iterator]:()=>r,next:()=>{if(this._state!==e)throw new Error("LinkedMap got modified during iteration.");if(n){let i={value:n.value,done:!1};return n=n.next,i}else return{value:void 0,done:!0}}};return r}entries(){let e=this._state,n=this._head,r={[Symbol.iterator]:()=>r,next:()=>{if(this._state!==e)throw new Error("LinkedMap got modified during iteration.");if(n){let i={value:[n.key,n.value],done:!1};return n=n.next,i}else return{value:void 0,done:!0}}};return r}[(Nv=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(e){if(e>=this.size)return;if(e===0){this.clear();return}let n=this._head,r=this.size;for(;n&&r>e;)this._map.delete(n.key),n=n.next,r--;this._head=n,this._size=r,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,r=e.previous;if(!n||!r)throw new Error("Invalid list");n.previous=r,r.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!==Gt.First&&n!==Gt.Last)){if(n===Gt.First){if(e===this._head)return;let r=e.next,i=e.previous;e===this._tail?(i.next=void 0,this._tail=i):(r.previous=i,i.next=r),e.previous=void 0,e.next=this._head,this._head.previous=e,this._head=e,this._state++}else if(n===Gt.Last){if(e===this._tail)return;let r=e.next,i=e.previous;e===this._head?(r.previous=void 0,this._head=r):(r.previous=i,i.next=r),e.next=void 0,e.previous=this._tail,this._tail.next=e,this._tail=e,this._state++}}}toJSON(){let e=[];return this.forEach((n,r)=>{e.push([r,n])}),e}fromJSON(e){this.clear();for(let[n,r]of e)this.set(n,r)}};Qr.LinkedMap=wu;var Kf=class extends wu{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=Gt.AsNew){return super.get(e,n)}peek(e){return super.get(e,Gt.None)}set(e,n){return super.set(e,n,Gt.Last),this.checkTrim(),this}checkTrim(){this.size>this._limit&&this.trimOld(Math.round(this._limit*this._ratio))}};Qr.LRUCache=Kf});var jv=g(Eu=>{"use strict";Object.defineProperty(Eu,"__esModule",{value:!0});Eu.Disposable=void 0;var qv;(function(t){function e(n){return{dispose:n}}t.create=e})(qv||(Eu.Disposable=qv={}))});var Zr=g(Yf=>{"use strict";Object.defineProperty(Yf,"__esModule",{value:!0});var zf;function Xf(){if(zf===void 0)throw new Error("No runtime abstraction layer installed");return zf}(function(t){function e(n){if(n===void 0)throw new Error("No runtime abstraction layer provided");zf=n}t.install=e})(Xf||(Xf={}));Yf.default=Xf});var xs=g(ks=>{"use strict";Object.defineProperty(ks,"__esModule",{value:!0});ks.Emitter=ks.Event=void 0;var F1=Zr(),Fv;(function(t){let e={dispose(){}};t.None=function(){return e}})(Fv||(ks.Event=Fv={}));var Jf=class{add(e,n=null,r){this._callbacks||(this._callbacks=[],this._contexts=[]),this._callbacks.push(e),this._contexts.push(n),Array.isArray(r)&&r.push({dispose:()=>this.remove(e,n)})}remove(e,n=null){if(!this._callbacks)return;let r=!1;for(let i=0,s=this._callbacks.length;i<s;i++)if(this._callbacks[i]===e)if(this._contexts[i]===n){this._callbacks.splice(i,1),this._contexts.splice(i,1);return}else r=!0;if(r)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=[],r=this._callbacks.slice(0),i=this._contexts.slice(0);for(let s=0,o=r.length;s<o;s++)try{n.push(r[s].apply(i[s],e))}catch(a){(0,F1.default)().console.error(a)}return n}isEmpty(){return!this._callbacks||this._callbacks.length===0}dispose(){this._callbacks=void 0,this._contexts=void 0}},Au=class t{constructor(e){this._options=e}get event(){return this._event||(this._event=(e,n,r)=>{this._callbacks||(this._callbacks=new Jf),this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty()&&this._options.onFirstListenerAdd(this),this._callbacks.add(e,n);let i={dispose:()=>{this._callbacks&&(this._callbacks.remove(e,n),i.dispose=t._noop,this._options&&this._options.onLastListenerRemove&&this._callbacks.isEmpty()&&this._options.onLastListenerRemove(this))}};return Array.isArray(r)&&r.push(i),i}),this._event}fire(e){this._callbacks&&this._callbacks.invoke.call(this._callbacks,e)}dispose(){this._callbacks&&(this._callbacks.dispose(),this._callbacks=void 0)}};ks.Emitter=Au;Au._noop=function(){}});var Ru=g(ws=>{"use strict";Object.defineProperty(ws,"__esModule",{value:!0});ws.CancellationTokenSource=ws.CancellationToken=void 0;var $1=Zr(),B1=Ss(),Qf=xs(),Ou;(function(t){t.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:Qf.Event.None}),t.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:Qf.Event.None});function e(n){let r=n;return r&&(r===t.None||r===t.Cancelled||B1.boolean(r.isCancellationRequested)&&!!r.onCancellationRequested)}t.is=e})(Ou||(ws.CancellationToken=Ou={}));var U1=Object.freeze(function(t,e){let n=(0,$1.default)().timer.setTimeout(t.bind(e),0);return{dispose(){n.dispose()}}}),Cu=class{constructor(){this._isCancelled=!1}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?U1:(this._emitter||(this._emitter=new Qf.Emitter),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=void 0)}},Zf=class{get token(){return this._token||(this._token=new Cu),this._token}cancel(){this._token?this._token.cancel():this._token=Ou.Cancelled}dispose(){this._token?this._token instanceof Cu&&this._token.dispose():this._token=Ou.None}};ws.CancellationTokenSource=Zf});var $v=g(Es=>{"use strict";Object.defineProperty(Es,"__esModule",{value:!0});Es.SharedArrayReceiverStrategy=Es.SharedArraySenderStrategy=void 0;var H1=Ru(),Uo;(function(t){t.Continue=0,t.Cancelled=1})(Uo||(Uo={}));var ep=class{constructor(){this.buffers=new Map}enableCancellation(e){if(e.id===null)return;let n=new SharedArrayBuffer(4),r=new Int32Array(n,0,1);r[0]=Uo.Continue,this.buffers.set(e.id,n),e.$cancellationData=n}async sendCancellation(e,n){let r=this.buffers.get(n);if(r===void 0)return;let i=new Int32Array(r,0,1);Atomics.store(i,0,Uo.Cancelled)}cleanup(e){this.buffers.delete(e)}dispose(){this.buffers.clear()}};Es.SharedArraySenderStrategy=ep;var tp=class{constructor(e){this.data=new Int32Array(e,0,1)}get isCancellationRequested(){return Atomics.load(this.data,0)===Uo.Cancelled}get onCancellationRequested(){throw new Error("Cancellation over SharedArrayBuffer doesn't support cancellation events")}},np=class{constructor(e){this.token=new tp(e)}cancel(){}dispose(){}},rp=class{constructor(){this.kind="request"}createCancellationTokenSource(e){let n=e.$cancellationData;return n===void 0?new H1.CancellationTokenSource:new np(n)}};Es.SharedArrayReceiverStrategy=rp});var sp=g(Pu=>{"use strict";Object.defineProperty(Pu,"__esModule",{value:!0});Pu.Semaphore=void 0;var W1=Zr(),ip=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((n,r)=>{this._waiting.push({thunk:e,resolve:n,reject:r}),this.runNext()})}get active(){return this._active}runNext(){this._waiting.length===0||this._active===this._capacity||(0,W1.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("To many thunks active");try{let n=e.thunk();n instanceof Promise?n.then(r=>{this._active--,e.resolve(r),this.runNext()},r=>{this._active--,e.reject(r),this.runNext()}):(this._active--,e.resolve(n),this.runNext())}catch(n){this._active--,e.reject(n),this.runNext()}}};Pu.Semaphore=ip});var Uv=g(ei=>{"use strict";Object.defineProperty(ei,"__esModule",{value:!0});ei.ReadableStreamMessageReader=ei.AbstractMessageReader=ei.MessageReader=void 0;var ap=Zr(),As=Ss(),op=xs(),G1=sp(),Bv;(function(t){function e(n){let r=n;return r&&As.func(r.listen)&&As.func(r.dispose)&&As.func(r.onError)&&As.func(r.onClose)&&As.func(r.onPartialMessage)}t.is=e})(Bv||(ei.MessageReader=Bv={}));var Du=class{constructor(){this.errorEmitter=new op.Emitter,this.closeEmitter=new op.Emitter,this.partialMessageEmitter=new op.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.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: ${As.string(e.message)?e.message:"unknown"}`)}};ei.AbstractMessageReader=Du;var up;(function(t){function e(n){let r,i,s,o=new Map,a,u=new Map;if(n===void 0||typeof n=="string")r=n??"utf-8";else{if(r=n.charset??"utf-8",n.contentDecoder!==void 0&&(s=n.contentDecoder,o.set(s.name,s)),n.contentDecoders!==void 0)for(let c of n.contentDecoders)o.set(c.name,c);if(n.contentTypeDecoder!==void 0&&(a=n.contentTypeDecoder,u.set(a.name,a)),n.contentTypeDecoders!==void 0)for(let c of n.contentTypeDecoders)u.set(c.name,c)}return a===void 0&&(a=(0,ap.default)().applicationJson.decoder,u.set(a.name,a)),{charset:r,contentDecoder:s,contentDecoders:o,contentTypeDecoder:a,contentTypeDecoders:u}}t.fromOptions=e})(up||(up={}));var cp=class extends Du{constructor(e,n){super(),this.readable=e,this.options=up.fromOptions(n),this.buffer=(0,ap.default)().messageBuffer.create(this.options.charset),this._partialMessageTimeout=1e4,this.nextMessageLength=-1,this.messageToken=0,this.readSemaphore=new G1.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(r=>{this.onData(r)});return this.readable.onError(r=>this.fireError(r)),this.readable.onClose(()=>this.fireClose()),n}onData(e){try{for(this.buffer.append(e);;){if(this.nextMessageLength===-1){let r=this.buffer.tryReadHeaders(!0);if(!r)return;let i=r.get("content-length");if(!i){this.fireError(new Error(`Header must provide a Content-Length property.
2
+ ${JSON.stringify(Object.fromEntries(r))}`));return}let s=parseInt(i);if(isNaN(s)){this.fireError(new Error(`Content-Length value must be a number. Got ${i}`));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 r=this.options.contentDecoder!==void 0?await this.options.contentDecoder.decode(n):n,i=await this.options.contentTypeDecoder.decode(r,this.options);this.callback(i)}).catch(r=>{this.fireError(r)})}}catch(n){this.fireError(n)}}clearPartialMessageTimer(){this.partialMessageTimer&&(this.partialMessageTimer.dispose(),this.partialMessageTimer=void 0)}setPartialMessageTimer(){this.clearPartialMessageTimer(),!(this._partialMessageTimeout<=0)&&(this.partialMessageTimer=(0,ap.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))}};ei.ReadableStreamMessageReader=cp});var Vv=g(ti=>{"use strict";Object.defineProperty(ti,"__esModule",{value:!0});ti.WriteableStreamMessageWriter=ti.AbstractMessageWriter=ti.MessageWriter=void 0;var Hv=Zr(),Ho=Ss(),K1=sp(),Wv=xs(),V1="Content-Length: ",Gv=`\r
3
+ `,Kv;(function(t){function e(n){let r=n;return r&&Ho.func(r.dispose)&&Ho.func(r.onClose)&&Ho.func(r.onError)&&Ho.func(r.write)}t.is=e})(Kv||(ti.MessageWriter=Kv={}));var Iu=class{constructor(){this.errorEmitter=new Wv.Emitter,this.closeEmitter=new Wv.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(e,n,r){this.errorEmitter.fire([this.asError(e),n,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: ${Ho.string(e.message)?e.message:"unknown"}`)}};ti.AbstractMessageWriter=Iu;var lp;(function(t){function e(n){return n===void 0||typeof n=="string"?{charset:n??"utf-8",contentTypeEncoder:(0,Hv.default)().applicationJson.encoder}:{charset:n.charset??"utf-8",contentEncoder:n.contentEncoder,contentTypeEncoder:n.contentTypeEncoder??(0,Hv.default)().applicationJson.encoder}}t.fromOptions=e})(lp||(lp={}));var dp=class extends Iu{constructor(e,n){super(),this.writable=e,this.options=lp.fromOptions(n),this.errorCount=0,this.writeSemaphore=new K1.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(V1,r.byteLength.toString(),Gv),i.push(Gv),this.doWrite(e,i,r)},r=>{throw this.fireError(r),r}))}async doWrite(e,n,r){try{return await this.writable.write(n.join(""),"ascii"),this.writable.write(r)}catch(i){return this.handleError(i,e),Promise.reject(i)}}handleError(e,n){this.errorCount++,this.fireError(e,n,this.errorCount)}end(){this.writable.end()}};ti.WriteableStreamMessageWriter=dp});var zv=g(Mu=>{"use strict";Object.defineProperty(Mu,"__esModule",{value:!0});Mu.AbstractMessageBuffer=void 0;var z1=13,X1=10,Y1=`\r
4
4
  `,fp=class{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,r=0,i=0,s=0;e:for(;r<this._chunks.length;){let c=this._chunks[r];for(i=0;i<c.length;){switch(c[i]){case z1:switch(n){case 0:n=1;break;case 2:n=3;break;default:n=0}break;case X1:switch(n){case 1:n=2;break;case 3:n=4,i++;break e;default:n=0}break;default:n=0}i++}s+=c.byteLength,r++}if(n!==4)return;let o=this._read(s+i),a=new Map,u=this.toString(o,"ascii").split(Y1);if(u.length<2)return a;for(let c=0;c<u.length-2;c++){let l=u[c],d=l.indexOf(":");if(d===-1)throw new Error(`Message header must separate key and value using ':'
5
- ${l}`);let p=l.substr(0,d),b=l.substr(d+1).trim();a.set(e?p.toLowerCase():p,b)}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 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],o=this.asNative(s,e);return this._chunks[0]=s.slice(e),this._totalLength-=e,o}let n=this.allocNative(e),r=0,i=0;for(;e>0;){let s=this._chunks[i];if(s.byteLength>e){let o=s.slice(0,e);n.set(o,r),r+=e,this._chunks[i]=s.slice(e),this._totalLength-=e,e-=e}else n.set(s,r),r+=s.byteLength,this._chunks.shift(),this._totalLength-=s.byteLength,e-=s.byteLength}return n}};Mu.AbstractMessageBuffer=fp});var Jv=g(ve=>{"use strict";Object.defineProperty(ve,"__esModule",{value:!0});ve.createMessageConnection=ve.ConnectionOptions=ve.MessageStrategy=ve.CancellationStrategy=ve.CancellationSenderStrategy=ve.CancellationReceiverStrategy=ve.RequestCancellationReceiverStrategy=ve.IdCancellationReceiverStrategy=ve.ConnectionStrategy=ve.ConnectionError=ve.ConnectionErrors=ve.LogTraceNotification=ve.SetTraceNotification=ve.TraceFormat=ve.TraceValues=ve.Trace=ve.NullLogger=ve.ProgressType=ve.ProgressToken=void 0;var Vv=Qr(),ot=Ss(),de=Gf(),zv=Vf(),Wo=xs(),pp=Ru(),Vo;(function(t){t.type=new de.NotificationType("$/cancelRequest")})(Vo||(Vo={}));var hp;(function(t){function e(n){return typeof n=="string"||typeof n=="number"}t.is=e})(hp||(ve.ProgressToken=hp={}));var Go;(function(t){t.type=new de.NotificationType("$/progress")})(Go||(Go={}));var gp=class{constructor(){}};ve.ProgressType=gp;var mp;(function(t){function e(n){return ot.func(n)}t.is=e})(mp||(mp={}));ve.NullLogger=Object.freeze({error:()=>{},warn:()=>{},info:()=>{},log:()=>{}});var Le;(function(t){t[t.Off=0]="Off",t[t.Messages=1]="Messages",t[t.Compact=2]="Compact",t[t.Verbose=3]="Verbose"})(Le||(ve.Trace=Le={}));var Xv;(function(t){t.Off="off",t.Messages="messages",t.Compact="compact",t.Verbose="verbose"})(Xv||(ve.TraceValues=Xv={}));(function(t){function e(r){if(!ot.string(r))return t.Off;switch(r=r.toLowerCase(),r){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(r){switch(r){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})(Le||(ve.Trace=Le={}));var vn;(function(t){t.Text="text",t.JSON="json"})(vn||(ve.TraceFormat=vn={}));(function(t){function e(n){return ot.string(n)?(n=n.toLowerCase(),n==="json"?t.JSON:t.Text):t.Text}t.fromString=e})(vn||(ve.TraceFormat=vn={}));var yp;(function(t){t.type=new de.NotificationType("$/setTrace")})(yp||(ve.SetTraceNotification=yp={}));var Lu;(function(t){t.type=new de.NotificationType("$/logTrace")})(Lu||(ve.LogTraceNotification=Lu={}));var Ko;(function(t){t[t.Closed=1]="Closed",t[t.Disposed=2]="Disposed",t[t.AlreadyListening=3]="AlreadyListening"})(Ko||(ve.ConnectionErrors=Ko={}));var Os=class t extends Error{constructor(e,n){super(n),this.code=e,Object.setPrototypeOf(this,t.prototype)}};ve.ConnectionError=Os;var bp;(function(t){function e(n){let r=n;return r&&ot.func(r.cancelUndispatched)}t.is=e})(bp||(ve.ConnectionStrategy=bp={}));var Nu;(function(t){function e(n){let r=n;return r&&(r.kind===void 0||r.kind==="id")&&ot.func(r.createCancellationTokenSource)&&(r.dispose===void 0||ot.func(r.dispose))}t.is=e})(Nu||(ve.IdCancellationReceiverStrategy=Nu={}));var vp;(function(t){function e(n){let r=n;return r&&r.kind==="request"&&ot.func(r.createCancellationTokenSource)&&(r.dispose===void 0||ot.func(r.dispose))}t.is=e})(vp||(ve.RequestCancellationReceiverStrategy=vp={}));var qu;(function(t){t.Message=Object.freeze({createCancellationTokenSource(n){return new pp.CancellationTokenSource}});function e(n){return Nu.is(n)||vp.is(n)}t.is=e})(qu||(ve.CancellationReceiverStrategy=qu={}));var ju;(function(t){t.Message=Object.freeze({sendCancellation(n,r){return n.sendNotification(Vo.type,{id:r})},cleanup(n){}});function e(n){let r=n;return r&&ot.func(r.sendCancellation)&&ot.func(r.cleanup)}t.is=e})(ju||(ve.CancellationSenderStrategy=ju={}));var Fu;(function(t){t.Message=Object.freeze({receiver:qu.Message,sender:ju.Message});function e(n){let r=n;return r&&qu.is(r.receiver)&&ju.is(r.sender)}t.is=e})(Fu||(ve.CancellationStrategy=Fu={}));var $u;(function(t){function e(n){let r=n;return r&&ot.func(r.handleMessage)}t.is=e})($u||(ve.MessageStrategy=$u={}));var Yv;(function(t){function e(n){let r=n;return r&&(Fu.is(r.cancellationStrategy)||bp.is(r.connectionStrategy)||$u.is(r.messageStrategy))}t.is=e})(Yv||(ve.ConnectionOptions=Yv={}));var Jn;(function(t){t[t.New=1]="New",t[t.Listening=2]="Listening",t[t.Closed=3]="Closed",t[t.Disposed=4]="Disposed"})(Jn||(Jn={}));function J1(t,e,n,r){let i=n!==void 0?n:ve.NullLogger,s=0,o=0,a=0,u="2.0",c,l=new Map,d,p=new Map,b=new Map,_,E=new zv.LinkedMap,L=new Map,M=new Set,x=new Map,k=Le.Off,v=vn.Text,F,C=Jn.New,V=new Wo.Emitter,ce=new Wo.Emitter,ye=new Wo.Emitter,K=new Wo.Emitter,A=new Wo.Emitter,D=r&&r.cancellationStrategy?r.cancellationStrategy:Fu.Message;function I(T){if(T===null)throw new Error("Can't send requests with id null since the response can't be correlated.");return"req-"+T.toString()}function j(T){return T===null?"res-unknown-"+(++a).toString():"res-"+T.toString()}function he(){return"not-"+(++o).toString()}function fe(T,B){de.Message.isRequest(B)?T.set(I(B.id),B):de.Message.isResponse(B)?T.set(j(B.id),B):T.set(he(),B)}function Dt(T){}function mt(){return C===Jn.Listening}function $e(){return C===Jn.Closed}function un(){return C===Jn.Disposed}function ys(){(C===Jn.New||C===Jn.Listening)&&(C=Jn.Closed,ce.fire(void 0))}function Mi(T){V.fire([T,void 0,void 0])}function lu(T){V.fire(T)}t.onClose(ys),t.onError(Mi),e.onClose(ys),e.onError(lu);function qo(){_||E.size===0||(_=(0,Vv.default)().timer.setImmediate(()=>{_=void 0,du()}))}function jo(T){de.Message.isRequest(T)?pu(T):de.Message.isNotification(T)?gu(T):de.Message.isResponse(T)?hu(T):bs(T)}function du(){if(E.size===0)return;let T=E.shift();try{let B=r?.messageStrategy;$u.is(B)?B.handleMessage(T,jo):jo(T)}finally{qo()}}let fu=T=>{try{if(de.Message.isNotification(T)&&T.method===Vo.type.method){let B=T.params.id,z=I(B),te=E.get(z);if(de.Message.isRequest(te)){let je=r?.connectionStrategy,Xe=je&&je.cancelUndispatched?je.cancelUndispatched(te,Dt):void 0;if(Xe&&(Xe.error!==void 0||Xe.result!==void 0)){E.delete(z),x.delete(B),Xe.id=te.id,Li(Xe,T.method,Date.now()),e.write(Xe).catch(()=>i.error("Sending response for canceled message failed."));return}}let We=x.get(B);if(We!==void 0){We.cancel(),vs(T);return}else M.add(B)}fe(E,T)}finally{qo()}};function pu(T){if(un())return;function B(xe,Ge,Pe){let ut={jsonrpc:u,id:T.id};xe instanceof de.ResponseError?ut.error=xe.toJson():ut.result=xe===void 0?null:xe,Li(ut,Ge,Pe),e.write(ut).catch(()=>i.error("Sending response failed."))}function z(xe,Ge,Pe){let ut={jsonrpc:u,id:T.id,error:xe.toJson()};Li(ut,Ge,Pe),e.write(ut).catch(()=>i.error("Sending response failed."))}function te(xe,Ge,Pe){xe===void 0&&(xe=null);let ut={jsonrpc:u,id:T.id,result:xe};Li(ut,Ge,Pe),e.write(ut).catch(()=>i.error("Sending response failed."))}bu(T);let We=l.get(T.method),je,Xe;We&&(je=We.type,Xe=We.handler);let tt=Date.now();if(Xe||c){let xe=T.id??String(Date.now()),Ge=Nu.is(D.receiver)?D.receiver.createCancellationTokenSource(xe):D.receiver.createCancellationTokenSource(T);T.id!==null&&M.has(T.id)&&Ge.cancel(),T.id!==null&&x.set(xe,Ge);try{let Pe;if(Xe)if(T.params===void 0){if(je!==void 0&&je.numberOfParams!==0){z(new de.ResponseError(de.ErrorCodes.InvalidParams,`Request ${T.method} defines ${je.numberOfParams} params but received none.`),T.method,tt);return}Pe=Xe(Ge.token)}else if(Array.isArray(T.params)){if(je!==void 0&&je.parameterStructures===de.ParameterStructures.byName){z(new de.ResponseError(de.ErrorCodes.InvalidParams,`Request ${T.method} defines parameters by name but received parameters by position`),T.method,tt);return}Pe=Xe(...T.params,Ge.token)}else{if(je!==void 0&&je.parameterStructures===de.ParameterStructures.byPosition){z(new de.ResponseError(de.ErrorCodes.InvalidParams,`Request ${T.method} defines parameters by position but received parameters by name`),T.method,tt);return}Pe=Xe(T.params,Ge.token)}else c&&(Pe=c(T.method,T.params,Ge.token));let ut=Pe;Pe?ut.then?ut.then(It=>{x.delete(xe),B(It,T.method,tt)},It=>{x.delete(xe),It instanceof de.ResponseError?z(It,T.method,tt):It&&ot.string(It.message)?z(new de.ResponseError(de.ErrorCodes.InternalError,`Request ${T.method} failed with message: ${It.message}`),T.method,tt):z(new de.ResponseError(de.ErrorCodes.InternalError,`Request ${T.method} failed unexpectedly without providing any details.`),T.method,tt)}):(x.delete(xe),B(Pe,T.method,tt)):(x.delete(xe),te(Pe,T.method,tt))}catch(Pe){x.delete(xe),Pe instanceof de.ResponseError?B(Pe,T.method,tt):Pe&&ot.string(Pe.message)?z(new de.ResponseError(de.ErrorCodes.InternalError,`Request ${T.method} failed with message: ${Pe.message}`),T.method,tt):z(new de.ResponseError(de.ErrorCodes.InternalError,`Request ${T.method} failed unexpectedly without providing any details.`),T.method,tt)}}else z(new de.ResponseError(de.ErrorCodes.MethodNotFound,`Unhandled method ${T.method}`),T.method,tt)}function hu(T){if(!un())if(T.id===null)T.error?i.error(`Received response message without id: Error is:
5
+ ${l}`);let p=l.substr(0,d),b=l.substr(d+1).trim();a.set(e?p.toLowerCase():p,b)}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 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],o=this.asNative(s,e);return this._chunks[0]=s.slice(e),this._totalLength-=e,o}let n=this.allocNative(e),r=0,i=0;for(;e>0;){let s=this._chunks[i];if(s.byteLength>e){let o=s.slice(0,e);n.set(o,r),r+=e,this._chunks[i]=s.slice(e),this._totalLength-=e,e-=e}else n.set(s,r),r+=s.byteLength,this._chunks.shift(),this._totalLength-=s.byteLength,e-=s.byteLength}return n}};Mu.AbstractMessageBuffer=fp});var Zv=g(ve=>{"use strict";Object.defineProperty(ve,"__esModule",{value:!0});ve.createMessageConnection=ve.ConnectionOptions=ve.MessageStrategy=ve.CancellationStrategy=ve.CancellationSenderStrategy=ve.CancellationReceiverStrategy=ve.RequestCancellationReceiverStrategy=ve.IdCancellationReceiverStrategy=ve.ConnectionStrategy=ve.ConnectionError=ve.ConnectionErrors=ve.LogTraceNotification=ve.SetTraceNotification=ve.TraceFormat=ve.TraceValues=ve.Trace=ve.NullLogger=ve.ProgressType=ve.ProgressToken=void 0;var Xv=Zr(),ot=Ss(),de=Gf(),Yv=Vf(),Wo=xs(),pp=Ru(),Vo;(function(t){t.type=new de.NotificationType("$/cancelRequest")})(Vo||(Vo={}));var hp;(function(t){function e(n){return typeof n=="string"||typeof n=="number"}t.is=e})(hp||(ve.ProgressToken=hp={}));var Go;(function(t){t.type=new de.NotificationType("$/progress")})(Go||(Go={}));var gp=class{constructor(){}};ve.ProgressType=gp;var mp;(function(t){function e(n){return ot.func(n)}t.is=e})(mp||(mp={}));ve.NullLogger=Object.freeze({error:()=>{},warn:()=>{},info:()=>{},log:()=>{}});var Le;(function(t){t[t.Off=0]="Off",t[t.Messages=1]="Messages",t[t.Compact=2]="Compact",t[t.Verbose=3]="Verbose"})(Le||(ve.Trace=Le={}));var Jv;(function(t){t.Off="off",t.Messages="messages",t.Compact="compact",t.Verbose="verbose"})(Jv||(ve.TraceValues=Jv={}));(function(t){function e(r){if(!ot.string(r))return t.Off;switch(r=r.toLowerCase(),r){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(r){switch(r){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})(Le||(ve.Trace=Le={}));var vn;(function(t){t.Text="text",t.JSON="json"})(vn||(ve.TraceFormat=vn={}));(function(t){function e(n){return ot.string(n)?(n=n.toLowerCase(),n==="json"?t.JSON:t.Text):t.Text}t.fromString=e})(vn||(ve.TraceFormat=vn={}));var yp;(function(t){t.type=new de.NotificationType("$/setTrace")})(yp||(ve.SetTraceNotification=yp={}));var Lu;(function(t){t.type=new de.NotificationType("$/logTrace")})(Lu||(ve.LogTraceNotification=Lu={}));var Ko;(function(t){t[t.Closed=1]="Closed",t[t.Disposed=2]="Disposed",t[t.AlreadyListening=3]="AlreadyListening"})(Ko||(ve.ConnectionErrors=Ko={}));var Os=class t extends Error{constructor(e,n){super(n),this.code=e,Object.setPrototypeOf(this,t.prototype)}};ve.ConnectionError=Os;var bp;(function(t){function e(n){let r=n;return r&&ot.func(r.cancelUndispatched)}t.is=e})(bp||(ve.ConnectionStrategy=bp={}));var Nu;(function(t){function e(n){let r=n;return r&&(r.kind===void 0||r.kind==="id")&&ot.func(r.createCancellationTokenSource)&&(r.dispose===void 0||ot.func(r.dispose))}t.is=e})(Nu||(ve.IdCancellationReceiverStrategy=Nu={}));var vp;(function(t){function e(n){let r=n;return r&&r.kind==="request"&&ot.func(r.createCancellationTokenSource)&&(r.dispose===void 0||ot.func(r.dispose))}t.is=e})(vp||(ve.RequestCancellationReceiverStrategy=vp={}));var qu;(function(t){t.Message=Object.freeze({createCancellationTokenSource(n){return new pp.CancellationTokenSource}});function e(n){return Nu.is(n)||vp.is(n)}t.is=e})(qu||(ve.CancellationReceiverStrategy=qu={}));var ju;(function(t){t.Message=Object.freeze({sendCancellation(n,r){return n.sendNotification(Vo.type,{id:r})},cleanup(n){}});function e(n){let r=n;return r&&ot.func(r.sendCancellation)&&ot.func(r.cleanup)}t.is=e})(ju||(ve.CancellationSenderStrategy=ju={}));var Fu;(function(t){t.Message=Object.freeze({receiver:qu.Message,sender:ju.Message});function e(n){let r=n;return r&&qu.is(r.receiver)&&ju.is(r.sender)}t.is=e})(Fu||(ve.CancellationStrategy=Fu={}));var $u;(function(t){function e(n){let r=n;return r&&ot.func(r.handleMessage)}t.is=e})($u||(ve.MessageStrategy=$u={}));var Qv;(function(t){function e(n){let r=n;return r&&(Fu.is(r.cancellationStrategy)||bp.is(r.connectionStrategy)||$u.is(r.messageStrategy))}t.is=e})(Qv||(ve.ConnectionOptions=Qv={}));var Jn;(function(t){t[t.New=1]="New",t[t.Listening=2]="Listening",t[t.Closed=3]="Closed",t[t.Disposed=4]="Disposed"})(Jn||(Jn={}));function J1(t,e,n,r){let i=n!==void 0?n:ve.NullLogger,s=0,o=0,a=0,u="2.0",c,l=new Map,d,p=new Map,b=new Map,_,E=new Yv.LinkedMap,L=new Map,M=new Set,x=new Map,k=Le.Off,v=vn.Text,F,C=Jn.New,V=new Wo.Emitter,ce=new Wo.Emitter,ye=new Wo.Emitter,K=new Wo.Emitter,A=new Wo.Emitter,D=r&&r.cancellationStrategy?r.cancellationStrategy:Fu.Message;function I(T){if(T===null)throw new Error("Can't send requests with id null since the response can't be correlated.");return"req-"+T.toString()}function j(T){return T===null?"res-unknown-"+(++a).toString():"res-"+T.toString()}function he(){return"not-"+(++o).toString()}function fe(T,B){de.Message.isRequest(B)?T.set(I(B.id),B):de.Message.isResponse(B)?T.set(j(B.id),B):T.set(he(),B)}function Dt(T){}function mt(){return C===Jn.Listening}function $e(){return C===Jn.Closed}function un(){return C===Jn.Disposed}function ys(){(C===Jn.New||C===Jn.Listening)&&(C=Jn.Closed,ce.fire(void 0))}function Mi(T){V.fire([T,void 0,void 0])}function lu(T){V.fire(T)}t.onClose(ys),t.onError(Mi),e.onClose(ys),e.onError(lu);function qo(){_||E.size===0||(_=(0,Xv.default)().timer.setImmediate(()=>{_=void 0,du()}))}function jo(T){de.Message.isRequest(T)?pu(T):de.Message.isNotification(T)?gu(T):de.Message.isResponse(T)?hu(T):bs(T)}function du(){if(E.size===0)return;let T=E.shift();try{let B=r?.messageStrategy;$u.is(B)?B.handleMessage(T,jo):jo(T)}finally{qo()}}let fu=T=>{try{if(de.Message.isNotification(T)&&T.method===Vo.type.method){let B=T.params.id,z=I(B),te=E.get(z);if(de.Message.isRequest(te)){let je=r?.connectionStrategy,Xe=je&&je.cancelUndispatched?je.cancelUndispatched(te,Dt):void 0;if(Xe&&(Xe.error!==void 0||Xe.result!==void 0)){E.delete(z),x.delete(B),Xe.id=te.id,Li(Xe,T.method,Date.now()),e.write(Xe).catch(()=>i.error("Sending response for canceled message failed."));return}}let We=x.get(B);if(We!==void 0){We.cancel(),vs(T);return}else M.add(B)}fe(E,T)}finally{qo()}};function pu(T){if(un())return;function B(xe,Ge,Pe){let ut={jsonrpc:u,id:T.id};xe instanceof de.ResponseError?ut.error=xe.toJson():ut.result=xe===void 0?null:xe,Li(ut,Ge,Pe),e.write(ut).catch(()=>i.error("Sending response failed."))}function z(xe,Ge,Pe){let ut={jsonrpc:u,id:T.id,error:xe.toJson()};Li(ut,Ge,Pe),e.write(ut).catch(()=>i.error("Sending response failed."))}function te(xe,Ge,Pe){xe===void 0&&(xe=null);let ut={jsonrpc:u,id:T.id,result:xe};Li(ut,Ge,Pe),e.write(ut).catch(()=>i.error("Sending response failed."))}bu(T);let We=l.get(T.method),je,Xe;We&&(je=We.type,Xe=We.handler);let tt=Date.now();if(Xe||c){let xe=T.id??String(Date.now()),Ge=Nu.is(D.receiver)?D.receiver.createCancellationTokenSource(xe):D.receiver.createCancellationTokenSource(T);T.id!==null&&M.has(T.id)&&Ge.cancel(),T.id!==null&&x.set(xe,Ge);try{let Pe;if(Xe)if(T.params===void 0){if(je!==void 0&&je.numberOfParams!==0){z(new de.ResponseError(de.ErrorCodes.InvalidParams,`Request ${T.method} defines ${je.numberOfParams} params but received none.`),T.method,tt);return}Pe=Xe(Ge.token)}else if(Array.isArray(T.params)){if(je!==void 0&&je.parameterStructures===de.ParameterStructures.byName){z(new de.ResponseError(de.ErrorCodes.InvalidParams,`Request ${T.method} defines parameters by name but received parameters by position`),T.method,tt);return}Pe=Xe(...T.params,Ge.token)}else{if(je!==void 0&&je.parameterStructures===de.ParameterStructures.byPosition){z(new de.ResponseError(de.ErrorCodes.InvalidParams,`Request ${T.method} defines parameters by position but received parameters by name`),T.method,tt);return}Pe=Xe(T.params,Ge.token)}else c&&(Pe=c(T.method,T.params,Ge.token));let ut=Pe;Pe?ut.then?ut.then(It=>{x.delete(xe),B(It,T.method,tt)},It=>{x.delete(xe),It instanceof de.ResponseError?z(It,T.method,tt):It&&ot.string(It.message)?z(new de.ResponseError(de.ErrorCodes.InternalError,`Request ${T.method} failed with message: ${It.message}`),T.method,tt):z(new de.ResponseError(de.ErrorCodes.InternalError,`Request ${T.method} failed unexpectedly without providing any details.`),T.method,tt)}):(x.delete(xe),B(Pe,T.method,tt)):(x.delete(xe),te(Pe,T.method,tt))}catch(Pe){x.delete(xe),Pe instanceof de.ResponseError?B(Pe,T.method,tt):Pe&&ot.string(Pe.message)?z(new de.ResponseError(de.ErrorCodes.InternalError,`Request ${T.method} failed with message: ${Pe.message}`),T.method,tt):z(new de.ResponseError(de.ErrorCodes.InternalError,`Request ${T.method} failed unexpectedly without providing any details.`),T.method,tt)}}else z(new de.ResponseError(de.ErrorCodes.MethodNotFound,`Unhandled method ${T.method}`),T.method,tt)}function hu(T){if(!un())if(T.id===null)T.error?i.error(`Received response message without id: Error is:
6
6
  ${JSON.stringify(T.error,void 0,4)}`):i.error("Received response message without id. No further error information provided.");else{let B=T.id,z=L.get(B);if(vu(T,z),z!==void 0){L.delete(B);try{if(T.error){let te=T.error;z.reject(new de.ResponseError(te.code,te.message,te.data))}else if(T.result!==void 0)z.resolve(T.result);else throw new Error("Should never happen.")}catch(te){te.message?i.error(`Response handler '${z.method}' failed with message: ${te.message}`):i.error(`Response handler '${z.method}' failed unexpectedly.`)}}}}function gu(T){if(un())return;let B,z;if(T.method===Vo.type.method){let te=T.params.id;M.delete(te),vs(T);return}else{let te=p.get(T.method);te&&(z=te.handler,B=te.type)}if(z||d)try{if(vs(T),z)if(T.params===void 0)B!==void 0&&B.numberOfParams!==0&&B.parameterStructures!==de.ParameterStructures.byName&&i.error(`Notification ${T.method} defines ${B.numberOfParams} params but received none.`),z();else if(Array.isArray(T.params)){let te=T.params;T.method===Go.type.method&&te.length===2&&hp.is(te[0])?z({token:te[0],value:te[1]}):(B!==void 0&&(B.parameterStructures===de.ParameterStructures.byName&&i.error(`Notification ${T.method} defines parameters by name but received parameters by position`),B.numberOfParams!==T.params.length&&i.error(`Notification ${T.method} defines ${B.numberOfParams} params but received ${te.length} arguments`)),z(...te))}else B!==void 0&&B.parameterStructures===de.ParameterStructures.byPosition&&i.error(`Notification ${T.method} defines parameters by position but received parameters by name`),z(T.params);else d&&d(T.method,T.params)}catch(te){te.message?i.error(`Notification handler '${T.method}' failed with message: ${te.message}`):i.error(`Notification handler '${T.method}' failed unexpectedly.`)}else ye.fire(T)}function bs(T){if(!T){i.error("Received empty message.");return}i.error(`Received message which is neither a response nor a notification message:
7
7
  ${JSON.stringify(T,null,4)}`);let B=T;if(ot.string(B.id)||ot.number(B.id)){let z=B.id,te=L.get(z);te&&te.reject(new Error("The received response has neither a result nor an error property."))}}function zn(T){if(T!=null)switch(k){case Le.Verbose:return JSON.stringify(T,null,4);case Le.Compact:return JSON.stringify(T);default:return}}function mu(T){if(!(k===Le.Off||!F))if(v===vn.Text){let B;(k===Le.Verbose||k===Le.Compact)&&T.params&&(B=`Params: ${zn(T.params)}
8
8
 
@@ -28,32 +28,32 @@ ${JSON.stringify(T,null,4)}`);let B=T;if(ot.string(B.id)||ot.number(B.id)){let z
28
28
 
29
29
  `:T.error===void 0&&(z=`No result returned.
30
30
 
31
- `)),B){let te=T.error?` Request failed: ${T.error.message} (${T.error.code}).`:"";F.log(`Received response '${B.method} - (${T.id})' in ${Date.now()-B.timerStart}ms.${te}`,z)}else F.log(`Received response ${T.id} without active response promise.`,z)}else Pr("receive-response",T)}function Pr(T,B){if(!F||k===Le.Off)return;let z={isLSPMessage:!0,type:T,message:B,timestamp:Date.now()};F.log(z)}function Yr(){if($e())throw new Os(Ko.Closed,"Connection is closed.");if(un())throw new Os(Ko.Disposed,"Connection is disposed.")}function _u(){if(mt())throw new Os(Ko.AlreadyListening,"Connection is already listening")}function Tu(){if(!mt())throw new Error("Call listen() first.")}function cr(T){return T===void 0?null:T}function Fo(T){if(T!==null)return T}function $o(T){return T!=null&&!Array.isArray(T)&&typeof T=="object"}function _s(T,B){switch(T){case de.ParameterStructures.auto:return $o(B)?Fo(B):[cr(B)];case de.ParameterStructures.byName:if(!$o(B))throw new Error("Received parameters by name but param is not an object literal.");return Fo(B);case de.ParameterStructures.byPosition:return[cr(B)];default:throw new Error(`Unknown parameter structure ${T.toString()}`)}}function Bo(T,B){let z,te=T.numberOfParams;switch(te){case 0:z=void 0;break;case 1:z=_s(T.parameterStructures,B[0]);break;default:z=[];for(let We=0;We<B.length&&We<te;We++)z.push(cr(B[We]));if(B.length<te)for(let We=B.length;We<te;We++)z.push(null);break}return z}let Dr={sendNotification:(T,...B)=>{Yr();let z,te;if(ot.string(T)){z=T;let je=B[0],Xe=0,tt=de.ParameterStructures.auto;de.ParameterStructures.is(je)&&(Xe=1,tt=je);let xe=B.length,Ge=xe-Xe;switch(Ge){case 0:te=void 0;break;case 1:te=_s(tt,B[Xe]);break;default:if(tt===de.ParameterStructures.byName)throw new Error(`Received ${Ge} parameters for 'by Name' notification parameter structure.`);te=B.slice(Xe,xe).map(Pe=>cr(Pe));break}}else{let je=B;z=T.method,te=Bo(T,je)}let We={jsonrpc:u,method:z,params:te};return yu(We),e.write(We).catch(je=>{throw i.error("Sending notification failed."),je})},onNotification:(T,B)=>{Yr();let z;return ot.func(T)?d=T:B&&(ot.string(T)?(z=T,p.set(T,{type:void 0,handler:B})):(z=T.method,p.set(T.method,{type:T,handler:B}))),{dispose:()=>{z!==void 0?p.delete(z):d=void 0}}},onProgress:(T,B,z)=>{if(b.has(B))throw new Error(`Progress handler for token ${B} already registered`);return b.set(B,z),{dispose:()=>{b.delete(B)}}},sendProgress:(T,B,z)=>Dr.sendNotification(Go.type,{token:B,value:z}),onUnhandledProgress:K.event,sendRequest:(T,...B)=>{Yr(),Tu();let z,te,We;if(ot.string(T)){z=T;let xe=B[0],Ge=B[B.length-1],Pe=0,ut=de.ParameterStructures.auto;de.ParameterStructures.is(xe)&&(Pe=1,ut=xe);let It=B.length;pp.CancellationToken.is(Ge)&&(It=It-1,We=Ge);let bn=It-Pe;switch(bn){case 0:te=void 0;break;case 1:te=_s(ut,B[Pe]);break;default:if(ut===de.ParameterStructures.byName)throw new Error(`Received ${bn} parameters for 'by Name' request parameter structure.`);te=B.slice(Pe,It).map(Su=>cr(Su));break}}else{let xe=B;z=T.method,te=Bo(T,xe);let Ge=T.numberOfParams;We=pp.CancellationToken.is(xe[Ge])?xe[Ge]:void 0}let je=s++,Xe;We&&(Xe=We.onCancellationRequested(()=>{let xe=D.sender.sendCancellation(Dr,je);return xe===void 0?(i.log(`Received no promise from cancellation strategy when cancelling id ${je}`),Promise.resolve()):xe.catch(()=>{i.log(`Sending cancellation messages for id ${je} failed`)})}));let tt={jsonrpc:u,id:je,method:z,params:te};return mu(tt),typeof D.sender.enableCancellation=="function"&&D.sender.enableCancellation(tt),new Promise(async(xe,Ge)=>{let Pe=bn=>{xe(bn),D.sender.cleanup(je),Xe?.dispose()},ut=bn=>{Ge(bn),D.sender.cleanup(je),Xe?.dispose()},It={method:z,timerStart:Date.now(),resolve:Pe,reject:ut};try{await e.write(tt),L.set(je,It)}catch(bn){throw i.error("Sending request failed."),It.reject(new de.ResponseError(de.ErrorCodes.MessageWriteError,bn.message?bn.message:"Unknown reason")),bn}})},onRequest:(T,B)=>{Yr();let z=null;return mp.is(T)?(z=void 0,c=T):ot.string(T)?(z=null,B!==void 0&&(z=T,l.set(T,{handler:B,type:void 0}))):B!==void 0&&(z=T.method,l.set(T.method,{type:T,handler:B})),{dispose:()=>{z!==null&&(z!==void 0?l.delete(z):c=void 0)}}},hasPendingResponse:()=>L.size>0,trace:async(T,B,z)=>{let te=!1,We=vn.Text;z!==void 0&&(ot.boolean(z)?te=z:(te=z.sendNotification||!1,We=z.traceFormat||vn.Text)),k=T,v=We,k===Le.Off?F=void 0:F=B,te&&!$e()&&!un()&&await Dr.sendNotification(yp.type,{value:Le.toString(T)})},onError:V.event,onClose:ce.event,onUnhandledNotification:ye.event,onDispose:A.event,end:()=>{e.end()},dispose:()=>{if(un())return;C=Jn.Disposed,A.fire(void 0);let T=new de.ResponseError(de.ErrorCodes.PendingResponseRejected,"Pending response rejected since connection got disposed");for(let B of L.values())B.reject(T);L=new Map,x=new Map,M=new Set,E=new zv.LinkedMap,ot.func(e.dispose)&&e.dispose(),ot.func(t.dispose)&&t.dispose()},listen:()=>{Yr(),_u(),C=Jn.Listening,t.listen(fu)},inspect:()=>{(0,Vv.default)().console.log("inspect")}};return Dr.onNotification(Lu.type,T=>{if(k===Le.Off||!F)return;let B=k===Le.Verbose||k===Le.Compact;F.log(T.message,B?T.verbose:void 0)}),Dr.onNotification(Go.type,T=>{let B=b.get(T.token);B?B(T.value):K.fire(T)}),Dr}ve.createMessageConnection=J1});var Bu=g(q=>{"use strict";Object.defineProperty(q,"__esModule",{value:!0});q.ProgressType=q.ProgressToken=q.createMessageConnection=q.NullLogger=q.ConnectionOptions=q.ConnectionStrategy=q.AbstractMessageBuffer=q.WriteableStreamMessageWriter=q.AbstractMessageWriter=q.MessageWriter=q.ReadableStreamMessageReader=q.AbstractMessageReader=q.MessageReader=q.SharedArrayReceiverStrategy=q.SharedArraySenderStrategy=q.CancellationToken=q.CancellationTokenSource=q.Emitter=q.Event=q.Disposable=q.LRUCache=q.Touch=q.LinkedMap=q.ParameterStructures=q.NotificationType9=q.NotificationType8=q.NotificationType7=q.NotificationType6=q.NotificationType5=q.NotificationType4=q.NotificationType3=q.NotificationType2=q.NotificationType1=q.NotificationType0=q.NotificationType=q.ErrorCodes=q.ResponseError=q.RequestType9=q.RequestType8=q.RequestType7=q.RequestType6=q.RequestType5=q.RequestType4=q.RequestType3=q.RequestType2=q.RequestType1=q.RequestType0=q.RequestType=q.Message=q.RAL=void 0;q.MessageStrategy=q.CancellationStrategy=q.CancellationSenderStrategy=q.CancellationReceiverStrategy=q.ConnectionError=q.ConnectionErrors=q.LogTraceNotification=q.SetTraceNotification=q.TraceFormat=q.TraceValues=q.Trace=void 0;var Ve=Gf();Object.defineProperty(q,"Message",{enumerable:!0,get:function(){return Ve.Message}});Object.defineProperty(q,"RequestType",{enumerable:!0,get:function(){return Ve.RequestType}});Object.defineProperty(q,"RequestType0",{enumerable:!0,get:function(){return Ve.RequestType0}});Object.defineProperty(q,"RequestType1",{enumerable:!0,get:function(){return Ve.RequestType1}});Object.defineProperty(q,"RequestType2",{enumerable:!0,get:function(){return Ve.RequestType2}});Object.defineProperty(q,"RequestType3",{enumerable:!0,get:function(){return Ve.RequestType3}});Object.defineProperty(q,"RequestType4",{enumerable:!0,get:function(){return Ve.RequestType4}});Object.defineProperty(q,"RequestType5",{enumerable:!0,get:function(){return Ve.RequestType5}});Object.defineProperty(q,"RequestType6",{enumerable:!0,get:function(){return Ve.RequestType6}});Object.defineProperty(q,"RequestType7",{enumerable:!0,get:function(){return Ve.RequestType7}});Object.defineProperty(q,"RequestType8",{enumerable:!0,get:function(){return Ve.RequestType8}});Object.defineProperty(q,"RequestType9",{enumerable:!0,get:function(){return Ve.RequestType9}});Object.defineProperty(q,"ResponseError",{enumerable:!0,get:function(){return Ve.ResponseError}});Object.defineProperty(q,"ErrorCodes",{enumerable:!0,get:function(){return Ve.ErrorCodes}});Object.defineProperty(q,"NotificationType",{enumerable:!0,get:function(){return Ve.NotificationType}});Object.defineProperty(q,"NotificationType0",{enumerable:!0,get:function(){return Ve.NotificationType0}});Object.defineProperty(q,"NotificationType1",{enumerable:!0,get:function(){return Ve.NotificationType1}});Object.defineProperty(q,"NotificationType2",{enumerable:!0,get:function(){return Ve.NotificationType2}});Object.defineProperty(q,"NotificationType3",{enumerable:!0,get:function(){return Ve.NotificationType3}});Object.defineProperty(q,"NotificationType4",{enumerable:!0,get:function(){return Ve.NotificationType4}});Object.defineProperty(q,"NotificationType5",{enumerable:!0,get:function(){return Ve.NotificationType5}});Object.defineProperty(q,"NotificationType6",{enumerable:!0,get:function(){return Ve.NotificationType6}});Object.defineProperty(q,"NotificationType7",{enumerable:!0,get:function(){return Ve.NotificationType7}});Object.defineProperty(q,"NotificationType8",{enumerable:!0,get:function(){return Ve.NotificationType8}});Object.defineProperty(q,"NotificationType9",{enumerable:!0,get:function(){return Ve.NotificationType9}});Object.defineProperty(q,"ParameterStructures",{enumerable:!0,get:function(){return Ve.ParameterStructures}});var _p=Vf();Object.defineProperty(q,"LinkedMap",{enumerable:!0,get:function(){return _p.LinkedMap}});Object.defineProperty(q,"LRUCache",{enumerable:!0,get:function(){return _p.LRUCache}});Object.defineProperty(q,"Touch",{enumerable:!0,get:function(){return _p.Touch}});var Q1=Nv();Object.defineProperty(q,"Disposable",{enumerable:!0,get:function(){return Q1.Disposable}});var Qv=xs();Object.defineProperty(q,"Event",{enumerable:!0,get:function(){return Qv.Event}});Object.defineProperty(q,"Emitter",{enumerable:!0,get:function(){return Qv.Emitter}});var Zv=Ru();Object.defineProperty(q,"CancellationTokenSource",{enumerable:!0,get:function(){return Zv.CancellationTokenSource}});Object.defineProperty(q,"CancellationToken",{enumerable:!0,get:function(){return Zv.CancellationToken}});var e_=jv();Object.defineProperty(q,"SharedArraySenderStrategy",{enumerable:!0,get:function(){return e_.SharedArraySenderStrategy}});Object.defineProperty(q,"SharedArrayReceiverStrategy",{enumerable:!0,get:function(){return e_.SharedArrayReceiverStrategy}});var Tp=$v();Object.defineProperty(q,"MessageReader",{enumerable:!0,get:function(){return Tp.MessageReader}});Object.defineProperty(q,"AbstractMessageReader",{enumerable:!0,get:function(){return Tp.AbstractMessageReader}});Object.defineProperty(q,"ReadableStreamMessageReader",{enumerable:!0,get:function(){return Tp.ReadableStreamMessageReader}});var Sp=Gv();Object.defineProperty(q,"MessageWriter",{enumerable:!0,get:function(){return Sp.MessageWriter}});Object.defineProperty(q,"AbstractMessageWriter",{enumerable:!0,get:function(){return Sp.AbstractMessageWriter}});Object.defineProperty(q,"WriteableStreamMessageWriter",{enumerable:!0,get:function(){return Sp.WriteableStreamMessageWriter}});var Z1=Kv();Object.defineProperty(q,"AbstractMessageBuffer",{enumerable:!0,get:function(){return Z1.AbstractMessageBuffer}});var Ft=Jv();Object.defineProperty(q,"ConnectionStrategy",{enumerable:!0,get:function(){return Ft.ConnectionStrategy}});Object.defineProperty(q,"ConnectionOptions",{enumerable:!0,get:function(){return Ft.ConnectionOptions}});Object.defineProperty(q,"NullLogger",{enumerable:!0,get:function(){return Ft.NullLogger}});Object.defineProperty(q,"createMessageConnection",{enumerable:!0,get:function(){return Ft.createMessageConnection}});Object.defineProperty(q,"ProgressToken",{enumerable:!0,get:function(){return Ft.ProgressToken}});Object.defineProperty(q,"ProgressType",{enumerable:!0,get:function(){return Ft.ProgressType}});Object.defineProperty(q,"Trace",{enumerable:!0,get:function(){return Ft.Trace}});Object.defineProperty(q,"TraceValues",{enumerable:!0,get:function(){return Ft.TraceValues}});Object.defineProperty(q,"TraceFormat",{enumerable:!0,get:function(){return Ft.TraceFormat}});Object.defineProperty(q,"SetTraceNotification",{enumerable:!0,get:function(){return Ft.SetTraceNotification}});Object.defineProperty(q,"LogTraceNotification",{enumerable:!0,get:function(){return Ft.LogTraceNotification}});Object.defineProperty(q,"ConnectionErrors",{enumerable:!0,get:function(){return Ft.ConnectionErrors}});Object.defineProperty(q,"ConnectionError",{enumerable:!0,get:function(){return Ft.ConnectionError}});Object.defineProperty(q,"CancellationReceiverStrategy",{enumerable:!0,get:function(){return Ft.CancellationReceiverStrategy}});Object.defineProperty(q,"CancellationSenderStrategy",{enumerable:!0,get:function(){return Ft.CancellationSenderStrategy}});Object.defineProperty(q,"CancellationStrategy",{enumerable:!0,get:function(){return Ft.CancellationStrategy}});Object.defineProperty(q,"MessageStrategy",{enumerable:!0,get:function(){return Ft.MessageStrategy}});var eO=Qr();q.RAL=eO.default});var r_=g(Ep=>{"use strict";Object.defineProperty(Ep,"__esModule",{value:!0});var t_=require("util"),Mr=Bu(),Uu=class t extends Mr.AbstractMessageBuffer{constructor(e="utf-8"){super(e)}emptyBuffer(){return t.emptyBuffer}fromString(e,n){return Buffer.from(e,n)}toString(e,n){return e instanceof Buffer?e.toString(n):new t_.TextDecoder(n).decode(e)}asNative(e,n){return n===void 0?e instanceof Buffer?e:Buffer.from(e):e instanceof Buffer?e.slice(0,n):Buffer.from(e,0,n)}allocNative(e){return Buffer.allocUnsafe(e)}};Uu.emptyBuffer=Buffer.allocUnsafe(0);var kp=class{constructor(e){this.stream=e}onClose(e){return this.stream.on("close",e),Mr.Disposable.create(()=>this.stream.off("close",e))}onError(e){return this.stream.on("error",e),Mr.Disposable.create(()=>this.stream.off("error",e))}onEnd(e){return this.stream.on("end",e),Mr.Disposable.create(()=>this.stream.off("end",e))}onData(e){return this.stream.on("data",e),Mr.Disposable.create(()=>this.stream.off("data",e))}},xp=class{constructor(e){this.stream=e}onClose(e){return this.stream.on("close",e),Mr.Disposable.create(()=>this.stream.off("close",e))}onError(e){return this.stream.on("error",e),Mr.Disposable.create(()=>this.stream.off("error",e))}onEnd(e){return this.stream.on("end",e),Mr.Disposable.create(()=>this.stream.off("end",e))}write(e,n){return new Promise((r,i)=>{let s=o=>{o==null?r():i(o)};typeof e=="string"?this.stream.write(e,n,s):this.stream.write(e,s)})}end(){this.stream.end()}},n_=Object.freeze({messageBuffer:Object.freeze({create:t=>new Uu(t)}),applicationJson:Object.freeze({encoder:Object.freeze({name:"application/json",encode:(t,e)=>{try{return Promise.resolve(Buffer.from(JSON.stringify(t,void 0,0),e.charset))}catch(n){return Promise.reject(n)}}}),decoder:Object.freeze({name:"application/json",decode:(t,e)=>{try{return t instanceof Buffer?Promise.resolve(JSON.parse(t.toString(e.charset))):Promise.resolve(JSON.parse(new t_.TextDecoder(e.charset).decode(t)))}catch(n){return Promise.reject(n)}}})}),stream:Object.freeze({asReadableStream:t=>new kp(t),asWritableStream:t=>new xp(t)}),console,timer:Object.freeze({setTimeout(t,e,...n){let r=setTimeout(t,e,...n);return{dispose:()=>clearTimeout(r)}},setImmediate(t,...e){let n=setImmediate(t,...e);return{dispose:()=>clearImmediate(n)}},setInterval(t,e,...n){let r=setInterval(t,e,...n);return{dispose:()=>clearInterval(r)}}})});function wp(){return n_}(function(t){function e(){Mr.RAL.install(n_)}t.install=e})(wp||(wp={}));Ep.default=wp});var Fi=g(Ae=>{"use strict";var tO=Ae&&Ae.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),nO=Ae&&Ae.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&tO(e,t,n)};Object.defineProperty(Ae,"__esModule",{value:!0});Ae.createMessageConnection=Ae.createServerSocketTransport=Ae.createClientSocketTransport=Ae.createServerPipeTransport=Ae.createClientPipeTransport=Ae.generateRandomPipeName=Ae.StreamMessageWriter=Ae.StreamMessageReader=Ae.SocketMessageWriter=Ae.SocketMessageReader=Ae.PortMessageWriter=Ae.PortMessageReader=Ae.IPCMessageWriter=Ae.IPCMessageReader=void 0;var Cs=r_();Cs.default.install();var i_=require("path"),rO=require("os"),iO=require("crypto"),Gu=require("net"),_n=Bu();nO(Bu(),Ae);var Ap=class extends _n.AbstractMessageReader{constructor(e){super(),this.process=e;let n=this.process;n.on("error",r=>this.fireError(r)),n.on("close",()=>this.fireClose())}listen(e){return this.process.on("message",e),_n.Disposable.create(()=>this.process.off("message",e))}};Ae.IPCMessageReader=Ap;var Op=class extends _n.AbstractMessageWriter{constructor(e){super(),this.process=e,this.errorCount=0;let n=this.process;n.on("error",r=>this.fireError(r)),n.on("close",()=>this.fireClose)}write(e){try{return typeof this.process.send=="function"&&this.process.send(e,void 0,void 0,n=>{n?(this.errorCount++,this.handleError(n,e)):this.errorCount=0}),Promise.resolve()}catch(n){return this.handleError(n,e),Promise.reject(n)}}handleError(e,n){this.errorCount++,this.fireError(e,n,this.errorCount)}end(){}};Ae.IPCMessageWriter=Op;var Cp=class extends _n.AbstractMessageReader{constructor(e){super(),this.onData=new _n.Emitter,e.on("close",()=>this.fireClose),e.on("error",n=>this.fireError(n)),e.on("message",n=>{this.onData.fire(n)})}listen(e){return this.onData.event(e)}};Ae.PortMessageReader=Cp;var Rp=class extends _n.AbstractMessageWriter{constructor(e){super(),this.port=e,this.errorCount=0,e.on("close",()=>this.fireClose()),e.on("error",n=>this.fireError(n))}write(e){try{return this.port.postMessage(e),Promise.resolve()}catch(n){return this.handleError(n,e),Promise.reject(n)}}handleError(e,n){this.errorCount++,this.fireError(e,n,this.errorCount)}end(){}};Ae.PortMessageWriter=Rp;var qi=class extends _n.ReadableStreamMessageReader{constructor(e,n="utf-8"){super((0,Cs.default)().stream.asReadableStream(e),n)}};Ae.SocketMessageReader=qi;var ji=class extends _n.WriteableStreamMessageWriter{constructor(e,n){super((0,Cs.default)().stream.asWritableStream(e),n),this.socket=e}dispose(){super.dispose(),this.socket.destroy()}};Ae.SocketMessageWriter=ji;var Hu=class extends _n.ReadableStreamMessageReader{constructor(e,n){super((0,Cs.default)().stream.asReadableStream(e),n)}};Ae.StreamMessageReader=Hu;var Wu=class extends _n.WriteableStreamMessageWriter{constructor(e,n){super((0,Cs.default)().stream.asWritableStream(e),n)}};Ae.StreamMessageWriter=Wu;var s_=process.env.XDG_RUNTIME_DIR,sO=new Map([["linux",107],["darwin",103]]);function oO(){let t=(0,iO.randomBytes)(21).toString("hex");if(process.platform==="win32")return`\\\\.\\pipe\\vscode-jsonrpc-${t}-sock`;let e;s_?e=i_.join(s_,`vscode-ipc-${t}.sock`):e=i_.join(rO.tmpdir(),`vscode-${t}.sock`);let n=sO.get(process.platform);return n!==void 0&&e.length>n&&(0,Cs.default)().console.warn(`WARNING: IPC handle "${e}" is longer than ${n} characters.`),e}Ae.generateRandomPipeName=oO;function aO(t,e="utf-8"){let n,r=new Promise((i,s)=>{n=i});return new Promise((i,s)=>{let o=(0,Gu.createServer)(a=>{o.close(),n([new qi(a,e),new ji(a,e)])});o.on("error",s),o.listen(t,()=>{o.removeListener("error",s),i({onConnected:()=>r})})})}Ae.createClientPipeTransport=aO;function uO(t,e="utf-8"){let n=(0,Gu.createConnection)(t);return[new qi(n,e),new ji(n,e)]}Ae.createServerPipeTransport=uO;function cO(t,e="utf-8"){let n,r=new Promise((i,s)=>{n=i});return new Promise((i,s)=>{let o=(0,Gu.createServer)(a=>{o.close(),n([new qi(a,e),new ji(a,e)])});o.on("error",s),o.listen(t,"127.0.0.1",()=>{o.removeListener("error",s),i({onConnected:()=>r})})})}Ae.createClientSocketTransport=cO;function lO(t,e="utf-8"){let n=(0,Gu.createConnection)(t,"127.0.0.1");return[new qi(n,e),new ji(n,e)]}Ae.createServerSocketTransport=lO;function dO(t){let e=t;return e.read!==void 0&&e.addListener!==void 0}function fO(t){let e=t;return e.write!==void 0&&e.addListener!==void 0}function pO(t,e,n,r){n||(n=_n.NullLogger);let i=dO(t)?new Hu(t):t,s=fO(e)?new Wu(e):e;return _n.ConnectionStrategy.is(r)&&(r={connectionStrategy:r}),(0,_n.createMessageConnection)(i,s,n,r)}Ae.createMessageConnection=pO});var Pp=g((h$,o_)=>{"use strict";o_.exports=Fi()});var Vu=g((a_,Ku)=>{(function(t){if(typeof Ku=="object"&&typeof Ku.exports=="object"){var e=t(require,a_);e!==void 0&&(Ku.exports=e)}else typeof define=="function"&&define.amd&&define(["require","exports"],t)})(function(t,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 n;(function(h){function S(w){return typeof w=="string"}h.is=S})(n||(e.DocumentUri=n={}));var r;(function(h){function S(w){return typeof w=="string"}h.is=S})(r||(e.URI=r={}));var i;(function(h){h.MIN_VALUE=-2147483648,h.MAX_VALUE=2147483647;function S(w){return typeof w=="number"&&h.MIN_VALUE<=w&&w<=h.MAX_VALUE}h.is=S})(i||(e.integer=i={}));var s;(function(h){h.MIN_VALUE=0,h.MAX_VALUE=2147483647;function S(w){return typeof w=="number"&&h.MIN_VALUE<=w&&w<=h.MAX_VALUE}h.is=S})(s||(e.uinteger=s={}));var o;(function(h){function S(m,f){return m===Number.MAX_VALUE&&(m=s.MAX_VALUE),f===Number.MAX_VALUE&&(f=s.MAX_VALUE),{line:m,character:f}}h.create=S;function w(m){var f=m;return P.objectLiteral(f)&&P.uinteger(f.line)&&P.uinteger(f.character)}h.is=w})(o||(e.Position=o={}));var a;(function(h){function S(m,f,R,U){if(P.uinteger(m)&&P.uinteger(f)&&P.uinteger(R)&&P.uinteger(U))return{start:o.create(m,f),end:o.create(R,U)};if(o.is(m)&&o.is(f))return{start:m,end:f};throw new Error("Range#create called with invalid arguments[".concat(m,", ").concat(f,", ").concat(R,", ").concat(U,"]"))}h.create=S;function w(m){var f=m;return P.objectLiteral(f)&&o.is(f.start)&&o.is(f.end)}h.is=w})(a||(e.Range=a={}));var u;(function(h){function S(m,f){return{uri:m,range:f}}h.create=S;function w(m){var f=m;return P.objectLiteral(f)&&a.is(f.range)&&(P.string(f.uri)||P.undefined(f.uri))}h.is=w})(u||(e.Location=u={}));var c;(function(h){function S(m,f,R,U){return{targetUri:m,targetRange:f,targetSelectionRange:R,originSelectionRange:U}}h.create=S;function w(m){var f=m;return P.objectLiteral(f)&&a.is(f.targetRange)&&P.string(f.targetUri)&&a.is(f.targetSelectionRange)&&(a.is(f.originSelectionRange)||P.undefined(f.originSelectionRange))}h.is=w})(c||(e.LocationLink=c={}));var l;(function(h){function S(m,f,R,U){return{red:m,green:f,blue:R,alpha:U}}h.create=S;function w(m){var f=m;return P.objectLiteral(f)&&P.numberRange(f.red,0,1)&&P.numberRange(f.green,0,1)&&P.numberRange(f.blue,0,1)&&P.numberRange(f.alpha,0,1)}h.is=w})(l||(e.Color=l={}));var d;(function(h){function S(m,f){return{range:m,color:f}}h.create=S;function w(m){var f=m;return P.objectLiteral(f)&&a.is(f.range)&&l.is(f.color)}h.is=w})(d||(e.ColorInformation=d={}));var p;(function(h){function S(m,f,R){return{label:m,textEdit:f,additionalTextEdits:R}}h.create=S;function w(m){var f=m;return P.objectLiteral(f)&&P.string(f.label)&&(P.undefined(f.textEdit)||F.is(f))&&(P.undefined(f.additionalTextEdits)||P.typedArray(f.additionalTextEdits,F.is))}h.is=w})(p||(e.ColorPresentation=p={}));var b;(function(h){h.Comment="comment",h.Imports="imports",h.Region="region"})(b||(e.FoldingRangeKind=b={}));var _;(function(h){function S(m,f,R,U,be,ct){var Ke={startLine:m,endLine:f};return P.defined(R)&&(Ke.startCharacter=R),P.defined(U)&&(Ke.endCharacter=U),P.defined(be)&&(Ke.kind=be),P.defined(ct)&&(Ke.collapsedText=ct),Ke}h.create=S;function w(m){var f=m;return P.objectLiteral(f)&&P.uinteger(f.startLine)&&P.uinteger(f.startLine)&&(P.undefined(f.startCharacter)||P.uinteger(f.startCharacter))&&(P.undefined(f.endCharacter)||P.uinteger(f.endCharacter))&&(P.undefined(f.kind)||P.string(f.kind))}h.is=w})(_||(e.FoldingRange=_={}));var E;(function(h){function S(m,f){return{location:m,message:f}}h.create=S;function w(m){var f=m;return P.defined(f)&&u.is(f.location)&&P.string(f.message)}h.is=w})(E||(e.DiagnosticRelatedInformation=E={}));var L;(function(h){h.Error=1,h.Warning=2,h.Information=3,h.Hint=4})(L||(e.DiagnosticSeverity=L={}));var M;(function(h){h.Unnecessary=1,h.Deprecated=2})(M||(e.DiagnosticTag=M={}));var x;(function(h){function S(w){var m=w;return P.objectLiteral(m)&&P.string(m.href)}h.is=S})(x||(e.CodeDescription=x={}));var k;(function(h){function S(m,f,R,U,be,ct){var Ke={range:m,message:f};return P.defined(R)&&(Ke.severity=R),P.defined(U)&&(Ke.code=U),P.defined(be)&&(Ke.source=be),P.defined(ct)&&(Ke.relatedInformation=ct),Ke}h.create=S;function w(m){var f,R=m;return P.defined(R)&&a.is(R.range)&&P.string(R.message)&&(P.number(R.severity)||P.undefined(R.severity))&&(P.integer(R.code)||P.string(R.code)||P.undefined(R.code))&&(P.undefined(R.codeDescription)||P.string((f=R.codeDescription)===null||f===void 0?void 0:f.href))&&(P.string(R.source)||P.undefined(R.source))&&(P.undefined(R.relatedInformation)||P.typedArray(R.relatedInformation,E.is))}h.is=w})(k||(e.Diagnostic=k={}));var v;(function(h){function S(m,f){for(var R=[],U=2;U<arguments.length;U++)R[U-2]=arguments[U];var be={title:m,command:f};return P.defined(R)&&R.length>0&&(be.arguments=R),be}h.create=S;function w(m){var f=m;return P.defined(f)&&P.string(f.title)&&P.string(f.command)}h.is=w})(v||(e.Command=v={}));var F;(function(h){function S(R,U){return{range:R,newText:U}}h.replace=S;function w(R,U){return{range:{start:R,end:R},newText:U}}h.insert=w;function m(R){return{range:R,newText:""}}h.del=m;function f(R){var U=R;return P.objectLiteral(U)&&P.string(U.newText)&&a.is(U.range)}h.is=f})(F||(e.TextEdit=F={}));var C;(function(h){function S(m,f,R){var U={label:m};return f!==void 0&&(U.needsConfirmation=f),R!==void 0&&(U.description=R),U}h.create=S;function w(m){var f=m;return P.objectLiteral(f)&&P.string(f.label)&&(P.boolean(f.needsConfirmation)||f.needsConfirmation===void 0)&&(P.string(f.description)||f.description===void 0)}h.is=w})(C||(e.ChangeAnnotation=C={}));var V;(function(h){function S(w){var m=w;return P.string(m)}h.is=S})(V||(e.ChangeAnnotationIdentifier=V={}));var ce;(function(h){function S(R,U,be){return{range:R,newText:U,annotationId:be}}h.replace=S;function w(R,U,be){return{range:{start:R,end:R},newText:U,annotationId:be}}h.insert=w;function m(R,U){return{range:R,newText:"",annotationId:U}}h.del=m;function f(R){var U=R;return F.is(U)&&(C.is(U.annotationId)||V.is(U.annotationId))}h.is=f})(ce||(e.AnnotatedTextEdit=ce={}));var ye;(function(h){function S(m,f){return{textDocument:m,edits:f}}h.create=S;function w(m){var f=m;return P.defined(f)&&$e.is(f.textDocument)&&Array.isArray(f.edits)}h.is=w})(ye||(e.TextDocumentEdit=ye={}));var K;(function(h){function S(m,f,R){var U={kind:"create",uri:m};return f!==void 0&&(f.overwrite!==void 0||f.ignoreIfExists!==void 0)&&(U.options=f),R!==void 0&&(U.annotationId=R),U}h.create=S;function w(m){var f=m;return f&&f.kind==="create"&&P.string(f.uri)&&(f.options===void 0||(f.options.overwrite===void 0||P.boolean(f.options.overwrite))&&(f.options.ignoreIfExists===void 0||P.boolean(f.options.ignoreIfExists)))&&(f.annotationId===void 0||V.is(f.annotationId))}h.is=w})(K||(e.CreateFile=K={}));var A;(function(h){function S(m,f,R,U){var be={kind:"rename",oldUri:m,newUri:f};return R!==void 0&&(R.overwrite!==void 0||R.ignoreIfExists!==void 0)&&(be.options=R),U!==void 0&&(be.annotationId=U),be}h.create=S;function w(m){var f=m;return f&&f.kind==="rename"&&P.string(f.oldUri)&&P.string(f.newUri)&&(f.options===void 0||(f.options.overwrite===void 0||P.boolean(f.options.overwrite))&&(f.options.ignoreIfExists===void 0||P.boolean(f.options.ignoreIfExists)))&&(f.annotationId===void 0||V.is(f.annotationId))}h.is=w})(A||(e.RenameFile=A={}));var D;(function(h){function S(m,f,R){var U={kind:"delete",uri:m};return f!==void 0&&(f.recursive!==void 0||f.ignoreIfNotExists!==void 0)&&(U.options=f),R!==void 0&&(U.annotationId=R),U}h.create=S;function w(m){var f=m;return f&&f.kind==="delete"&&P.string(f.uri)&&(f.options===void 0||(f.options.recursive===void 0||P.boolean(f.options.recursive))&&(f.options.ignoreIfNotExists===void 0||P.boolean(f.options.ignoreIfNotExists)))&&(f.annotationId===void 0||V.is(f.annotationId))}h.is=w})(D||(e.DeleteFile=D={}));var I;(function(h){function S(w){var m=w;return m&&(m.changes!==void 0||m.documentChanges!==void 0)&&(m.documentChanges===void 0||m.documentChanges.every(function(f){return P.string(f.kind)?K.is(f)||A.is(f)||D.is(f):ye.is(f)}))}h.is=S})(I||(e.WorkspaceEdit=I={}));var j=function(){function h(S,w){this.edits=S,this.changeAnnotations=w}return h.prototype.insert=function(S,w,m){var f,R;if(m===void 0?f=F.insert(S,w):V.is(m)?(R=m,f=ce.insert(S,w,m)):(this.assertChangeAnnotations(this.changeAnnotations),R=this.changeAnnotations.manage(m),f=ce.insert(S,w,R)),this.edits.push(f),R!==void 0)return R},h.prototype.replace=function(S,w,m){var f,R;if(m===void 0?f=F.replace(S,w):V.is(m)?(R=m,f=ce.replace(S,w,m)):(this.assertChangeAnnotations(this.changeAnnotations),R=this.changeAnnotations.manage(m),f=ce.replace(S,w,R)),this.edits.push(f),R!==void 0)return R},h.prototype.delete=function(S,w){var m,f;if(w===void 0?m=F.del(S):V.is(w)?(f=w,m=ce.del(S,w)):(this.assertChangeAnnotations(this.changeAnnotations),f=this.changeAnnotations.manage(w),m=ce.del(S,f)),this.edits.push(m),f!==void 0)return f},h.prototype.add=function(S){this.edits.push(S)},h.prototype.all=function(){return this.edits},h.prototype.clear=function(){this.edits.splice(0,this.edits.length)},h.prototype.assertChangeAnnotations=function(S){if(S===void 0)throw new Error("Text edit change is not configured to manage change annotations.")},h}(),he=function(){function h(S){this._annotations=S===void 0?Object.create(null):S,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(S,w){var m;if(V.is(S)?m=S:(m=this.nextId(),w=S),this._annotations[m]!==void 0)throw new Error("Id ".concat(m," is already in use."));if(w===void 0)throw new Error("No annotation provided for id ".concat(m));return this._annotations[m]=w,this._size++,m},h.prototype.nextId=function(){return this._counter++,this._counter.toString()},h}(),fe=function(){function h(S){var w=this;this._textEditChanges=Object.create(null),S!==void 0?(this._workspaceEdit=S,S.documentChanges?(this._changeAnnotations=new he(S.changeAnnotations),S.changeAnnotations=this._changeAnnotations.all(),S.documentChanges.forEach(function(m){if(ye.is(m)){var f=new j(m.edits,w._changeAnnotations);w._textEditChanges[m.textDocument.uri]=f}})):S.changes&&Object.keys(S.changes).forEach(function(m){var f=new j(S.changes[m]);w._textEditChanges[m]=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(S){if($e.is(S)){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");var w={uri:S.uri,version:S.version},m=this._textEditChanges[w.uri];if(!m){var f=[],R={textDocument:w,edits:f};this._workspaceEdit.documentChanges.push(R),m=new j(f,this._changeAnnotations),this._textEditChanges[w.uri]=m}return m}else{if(this.initChanges(),this._workspaceEdit.changes===void 0)throw new Error("Workspace edit is not configured for normal text edit changes.");var m=this._textEditChanges[S];if(!m){var f=[];this._workspaceEdit.changes[S]=f,m=new j(f),this._textEditChanges[S]=m}return m}},h.prototype.initDocumentChanges=function(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._changeAnnotations=new he,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(S,w,m){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");var f;C.is(w)||V.is(w)?f=w:m=w;var R,U;if(f===void 0?R=K.create(S,m):(U=V.is(f)?f:this._changeAnnotations.manage(f),R=K.create(S,m,U)),this._workspaceEdit.documentChanges.push(R),U!==void 0)return U},h.prototype.renameFile=function(S,w,m,f){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");var R;C.is(m)||V.is(m)?R=m:f=m;var U,be;if(R===void 0?U=A.create(S,w,f):(be=V.is(R)?R:this._changeAnnotations.manage(R),U=A.create(S,w,f,be)),this._workspaceEdit.documentChanges.push(U),be!==void 0)return be},h.prototype.deleteFile=function(S,w,m){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");var f;C.is(w)||V.is(w)?f=w:m=w;var R,U;if(f===void 0?R=D.create(S,m):(U=V.is(f)?f:this._changeAnnotations.manage(f),R=D.create(S,m,U)),this._workspaceEdit.documentChanges.push(R),U!==void 0)return U},h}();e.WorkspaceChange=fe;var Dt;(function(h){function S(m){return{uri:m}}h.create=S;function w(m){var f=m;return P.defined(f)&&P.string(f.uri)}h.is=w})(Dt||(e.TextDocumentIdentifier=Dt={}));var mt;(function(h){function S(m,f){return{uri:m,version:f}}h.create=S;function w(m){var f=m;return P.defined(f)&&P.string(f.uri)&&P.integer(f.version)}h.is=w})(mt||(e.VersionedTextDocumentIdentifier=mt={}));var $e;(function(h){function S(m,f){return{uri:m,version:f}}h.create=S;function w(m){var f=m;return P.defined(f)&&P.string(f.uri)&&(f.version===null||P.integer(f.version))}h.is=w})($e||(e.OptionalVersionedTextDocumentIdentifier=$e={}));var un;(function(h){function S(m,f,R,U){return{uri:m,languageId:f,version:R,text:U}}h.create=S;function w(m){var f=m;return P.defined(f)&&P.string(f.uri)&&P.string(f.languageId)&&P.integer(f.version)&&P.string(f.text)}h.is=w})(un||(e.TextDocumentItem=un={}));var ys;(function(h){h.PlainText="plaintext",h.Markdown="markdown";function S(w){var m=w;return m===h.PlainText||m===h.Markdown}h.is=S})(ys||(e.MarkupKind=ys={}));var Mi;(function(h){function S(w){var m=w;return P.objectLiteral(w)&&ys.is(m.kind)&&P.string(m.value)}h.is=S})(Mi||(e.MarkupContent=Mi={}));var lu;(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})(lu||(e.CompletionItemKind=lu={}));var qo;(function(h){h.PlainText=1,h.Snippet=2})(qo||(e.InsertTextFormat=qo={}));var jo;(function(h){h.Deprecated=1})(jo||(e.CompletionItemTag=jo={}));var du;(function(h){function S(m,f,R){return{newText:m,insert:f,replace:R}}h.create=S;function w(m){var f=m;return f&&P.string(f.newText)&&a.is(f.insert)&&a.is(f.replace)}h.is=w})(du||(e.InsertReplaceEdit=du={}));var fu;(function(h){h.asIs=1,h.adjustIndentation=2})(fu||(e.InsertTextMode=fu={}));var pu;(function(h){function S(w){var m=w;return m&&(P.string(m.detail)||m.detail===void 0)&&(P.string(m.description)||m.description===void 0)}h.is=S})(pu||(e.CompletionItemLabelDetails=pu={}));var hu;(function(h){function S(w){return{label:w}}h.create=S})(hu||(e.CompletionItem=hu={}));var gu;(function(h){function S(w,m){return{items:w||[],isIncomplete:!!m}}h.create=S})(gu||(e.CompletionList=gu={}));var bs;(function(h){function S(m){return m.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}h.fromPlainText=S;function w(m){var f=m;return P.string(f)||P.objectLiteral(f)&&P.string(f.language)&&P.string(f.value)}h.is=w})(bs||(e.MarkedString=bs={}));var zn;(function(h){function S(w){var m=w;return!!m&&P.objectLiteral(m)&&(Mi.is(m.contents)||bs.is(m.contents)||P.typedArray(m.contents,bs.is))&&(w.range===void 0||a.is(w.range))}h.is=S})(zn||(e.Hover=zn={}));var mu;(function(h){function S(w,m){return m?{label:w,documentation:m}:{label:w}}h.create=S})(mu||(e.ParameterInformation=mu={}));var yu;(function(h){function S(w,m){for(var f=[],R=2;R<arguments.length;R++)f[R-2]=arguments[R];var U={label:w};return P.defined(m)&&(U.documentation=m),P.defined(f)?U.parameters=f:U.parameters=[],U}h.create=S})(yu||(e.SignatureInformation=yu={}));var Li;(function(h){h.Text=1,h.Read=2,h.Write=3})(Li||(e.DocumentHighlightKind=Li={}));var bu;(function(h){function S(w,m){var f={range:w};return P.number(m)&&(f.kind=m),f}h.create=S})(bu||(e.DocumentHighlight=bu={}));var vs;(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})(vs||(e.SymbolKind=vs={}));var vu;(function(h){h.Deprecated=1})(vu||(e.SymbolTag=vu={}));var Pr;(function(h){function S(w,m,f,R,U){var be={name:w,kind:m,location:{uri:R,range:f}};return U&&(be.containerName=U),be}h.create=S})(Pr||(e.SymbolInformation=Pr={}));var Yr;(function(h){function S(w,m,f,R){return R!==void 0?{name:w,kind:m,location:{uri:f,range:R}}:{name:w,kind:m,location:{uri:f}}}h.create=S})(Yr||(e.WorkspaceSymbol=Yr={}));var _u;(function(h){function S(m,f,R,U,be,ct){var Ke={name:m,detail:f,kind:R,range:U,selectionRange:be};return ct!==void 0&&(Ke.children=ct),Ke}h.create=S;function w(m){var f=m;return f&&P.string(f.name)&&P.number(f.kind)&&a.is(f.range)&&a.is(f.selectionRange)&&(f.detail===void 0||P.string(f.detail))&&(f.deprecated===void 0||P.boolean(f.deprecated))&&(f.children===void 0||Array.isArray(f.children))&&(f.tags===void 0||Array.isArray(f.tags))}h.is=w})(_u||(e.DocumentSymbol=_u={}));var Tu;(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"})(Tu||(e.CodeActionKind=Tu={}));var cr;(function(h){h.Invoked=1,h.Automatic=2})(cr||(e.CodeActionTriggerKind=cr={}));var Fo;(function(h){function S(m,f,R){var U={diagnostics:m};return f!=null&&(U.only=f),R!=null&&(U.triggerKind=R),U}h.create=S;function w(m){var f=m;return P.defined(f)&&P.typedArray(f.diagnostics,k.is)&&(f.only===void 0||P.typedArray(f.only,P.string))&&(f.triggerKind===void 0||f.triggerKind===cr.Invoked||f.triggerKind===cr.Automatic)}h.is=w})(Fo||(e.CodeActionContext=Fo={}));var $o;(function(h){function S(m,f,R){var U={title:m},be=!0;return typeof f=="string"?(be=!1,U.kind=f):v.is(f)?U.command=f:U.edit=f,be&&R!==void 0&&(U.kind=R),U}h.create=S;function w(m){var f=m;return f&&P.string(f.title)&&(f.diagnostics===void 0||P.typedArray(f.diagnostics,k.is))&&(f.kind===void 0||P.string(f.kind))&&(f.edit!==void 0||f.command!==void 0)&&(f.command===void 0||v.is(f.command))&&(f.isPreferred===void 0||P.boolean(f.isPreferred))&&(f.edit===void 0||I.is(f.edit))}h.is=w})($o||(e.CodeAction=$o={}));var _s;(function(h){function S(m,f){var R={range:m};return P.defined(f)&&(R.data=f),R}h.create=S;function w(m){var f=m;return P.defined(f)&&a.is(f.range)&&(P.undefined(f.command)||v.is(f.command))}h.is=w})(_s||(e.CodeLens=_s={}));var Bo;(function(h){function S(m,f){return{tabSize:m,insertSpaces:f}}h.create=S;function w(m){var f=m;return P.defined(f)&&P.uinteger(f.tabSize)&&P.boolean(f.insertSpaces)}h.is=w})(Bo||(e.FormattingOptions=Bo={}));var Dr;(function(h){function S(m,f,R){return{range:m,target:f,data:R}}h.create=S;function w(m){var f=m;return P.defined(f)&&a.is(f.range)&&(P.undefined(f.target)||P.string(f.target))}h.is=w})(Dr||(e.DocumentLink=Dr={}));var T;(function(h){function S(m,f){return{range:m,parent:f}}h.create=S;function w(m){var f=m;return P.objectLiteral(f)&&a.is(f.range)&&(f.parent===void 0||h.is(f.parent))}h.is=w})(T||(e.SelectionRange=T={}));var B;(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"})(B||(e.SemanticTokenTypes=B={}));var z;(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"})(z||(e.SemanticTokenModifiers=z={}));var te;(function(h){function S(w){var m=w;return P.objectLiteral(m)&&(m.resultId===void 0||typeof m.resultId=="string")&&Array.isArray(m.data)&&(m.data.length===0||typeof m.data[0]=="number")}h.is=S})(te||(e.SemanticTokens=te={}));var We;(function(h){function S(m,f){return{range:m,text:f}}h.create=S;function w(m){var f=m;return f!=null&&a.is(f.range)&&P.string(f.text)}h.is=w})(We||(e.InlineValueText=We={}));var je;(function(h){function S(m,f,R){return{range:m,variableName:f,caseSensitiveLookup:R}}h.create=S;function w(m){var f=m;return f!=null&&a.is(f.range)&&P.boolean(f.caseSensitiveLookup)&&(P.string(f.variableName)||f.variableName===void 0)}h.is=w})(je||(e.InlineValueVariableLookup=je={}));var Xe;(function(h){function S(m,f){return{range:m,expression:f}}h.create=S;function w(m){var f=m;return f!=null&&a.is(f.range)&&(P.string(f.expression)||f.expression===void 0)}h.is=w})(Xe||(e.InlineValueEvaluatableExpression=Xe={}));var tt;(function(h){function S(m,f){return{frameId:m,stoppedLocation:f}}h.create=S;function w(m){var f=m;return P.defined(f)&&a.is(m.stoppedLocation)}h.is=w})(tt||(e.InlineValueContext=tt={}));var xe;(function(h){h.Type=1,h.Parameter=2;function S(w){return w===1||w===2}h.is=S})(xe||(e.InlayHintKind=xe={}));var Ge;(function(h){function S(m){return{value:m}}h.create=S;function w(m){var f=m;return P.objectLiteral(f)&&(f.tooltip===void 0||P.string(f.tooltip)||Mi.is(f.tooltip))&&(f.location===void 0||u.is(f.location))&&(f.command===void 0||v.is(f.command))}h.is=w})(Ge||(e.InlayHintLabelPart=Ge={}));var Pe;(function(h){function S(m,f,R){var U={position:m,label:f};return R!==void 0&&(U.kind=R),U}h.create=S;function w(m){var f=m;return P.objectLiteral(f)&&o.is(f.position)&&(P.string(f.label)||P.typedArray(f.label,Ge.is))&&(f.kind===void 0||xe.is(f.kind))&&f.textEdits===void 0||P.typedArray(f.textEdits,F.is)&&(f.tooltip===void 0||P.string(f.tooltip)||Mi.is(f.tooltip))&&(f.paddingLeft===void 0||P.boolean(f.paddingLeft))&&(f.paddingRight===void 0||P.boolean(f.paddingRight))}h.is=w})(Pe||(e.InlayHint=Pe={}));var ut;(function(h){function S(w){return{kind:"snippet",value:w}}h.createSnippet=S})(ut||(e.StringValue=ut={}));var It;(function(h){function S(w,m,f,R){return{insertText:w,filterText:m,range:f,command:R}}h.create=S})(It||(e.InlineCompletionItem=It={}));var bn;(function(h){function S(w){return{items:w}}h.create=S})(bn||(e.InlineCompletionList=bn={}));var Su;(function(h){h.Invoked=0,h.Automatic=1})(Su||(e.InlineCompletionTriggerKind=Su={}));var kv;(function(h){function S(w,m){return{range:w,text:m}}h.create=S})(kv||(e.SelectedCompletionInfo=kv={}));var xv;(function(h){function S(w,m){return{triggerKind:w,selectedCompletionInfo:m}}h.create=S})(xv||(e.InlineCompletionContext=xv={}));var wv;(function(h){function S(w){var m=w;return P.objectLiteral(m)&&r.is(m.uri)&&P.string(m.name)}h.is=S})(wv||(e.WorkspaceFolder=wv={})),e.EOL=[`
31
+ `)),B){let te=T.error?` Request failed: ${T.error.message} (${T.error.code}).`:"";F.log(`Received response '${B.method} - (${T.id})' in ${Date.now()-B.timerStart}ms.${te}`,z)}else F.log(`Received response ${T.id} without active response promise.`,z)}else Pr("receive-response",T)}function Pr(T,B){if(!F||k===Le.Off)return;let z={isLSPMessage:!0,type:T,message:B,timestamp:Date.now()};F.log(z)}function Jr(){if($e())throw new Os(Ko.Closed,"Connection is closed.");if(un())throw new Os(Ko.Disposed,"Connection is disposed.")}function _u(){if(mt())throw new Os(Ko.AlreadyListening,"Connection is already listening")}function Tu(){if(!mt())throw new Error("Call listen() first.")}function cr(T){return T===void 0?null:T}function Fo(T){if(T!==null)return T}function $o(T){return T!=null&&!Array.isArray(T)&&typeof T=="object"}function _s(T,B){switch(T){case de.ParameterStructures.auto:return $o(B)?Fo(B):[cr(B)];case de.ParameterStructures.byName:if(!$o(B))throw new Error("Received parameters by name but param is not an object literal.");return Fo(B);case de.ParameterStructures.byPosition:return[cr(B)];default:throw new Error(`Unknown parameter structure ${T.toString()}`)}}function Bo(T,B){let z,te=T.numberOfParams;switch(te){case 0:z=void 0;break;case 1:z=_s(T.parameterStructures,B[0]);break;default:z=[];for(let We=0;We<B.length&&We<te;We++)z.push(cr(B[We]));if(B.length<te)for(let We=B.length;We<te;We++)z.push(null);break}return z}let Dr={sendNotification:(T,...B)=>{Jr();let z,te;if(ot.string(T)){z=T;let je=B[0],Xe=0,tt=de.ParameterStructures.auto;de.ParameterStructures.is(je)&&(Xe=1,tt=je);let xe=B.length,Ge=xe-Xe;switch(Ge){case 0:te=void 0;break;case 1:te=_s(tt,B[Xe]);break;default:if(tt===de.ParameterStructures.byName)throw new Error(`Received ${Ge} parameters for 'by Name' notification parameter structure.`);te=B.slice(Xe,xe).map(Pe=>cr(Pe));break}}else{let je=B;z=T.method,te=Bo(T,je)}let We={jsonrpc:u,method:z,params:te};return yu(We),e.write(We).catch(je=>{throw i.error("Sending notification failed."),je})},onNotification:(T,B)=>{Jr();let z;return ot.func(T)?d=T:B&&(ot.string(T)?(z=T,p.set(T,{type:void 0,handler:B})):(z=T.method,p.set(T.method,{type:T,handler:B}))),{dispose:()=>{z!==void 0?p.delete(z):d=void 0}}},onProgress:(T,B,z)=>{if(b.has(B))throw new Error(`Progress handler for token ${B} already registered`);return b.set(B,z),{dispose:()=>{b.delete(B)}}},sendProgress:(T,B,z)=>Dr.sendNotification(Go.type,{token:B,value:z}),onUnhandledProgress:K.event,sendRequest:(T,...B)=>{Jr(),Tu();let z,te,We;if(ot.string(T)){z=T;let xe=B[0],Ge=B[B.length-1],Pe=0,ut=de.ParameterStructures.auto;de.ParameterStructures.is(xe)&&(Pe=1,ut=xe);let It=B.length;pp.CancellationToken.is(Ge)&&(It=It-1,We=Ge);let bn=It-Pe;switch(bn){case 0:te=void 0;break;case 1:te=_s(ut,B[Pe]);break;default:if(ut===de.ParameterStructures.byName)throw new Error(`Received ${bn} parameters for 'by Name' request parameter structure.`);te=B.slice(Pe,It).map(Su=>cr(Su));break}}else{let xe=B;z=T.method,te=Bo(T,xe);let Ge=T.numberOfParams;We=pp.CancellationToken.is(xe[Ge])?xe[Ge]:void 0}let je=s++,Xe;We&&(Xe=We.onCancellationRequested(()=>{let xe=D.sender.sendCancellation(Dr,je);return xe===void 0?(i.log(`Received no promise from cancellation strategy when cancelling id ${je}`),Promise.resolve()):xe.catch(()=>{i.log(`Sending cancellation messages for id ${je} failed`)})}));let tt={jsonrpc:u,id:je,method:z,params:te};return mu(tt),typeof D.sender.enableCancellation=="function"&&D.sender.enableCancellation(tt),new Promise(async(xe,Ge)=>{let Pe=bn=>{xe(bn),D.sender.cleanup(je),Xe?.dispose()},ut=bn=>{Ge(bn),D.sender.cleanup(je),Xe?.dispose()},It={method:z,timerStart:Date.now(),resolve:Pe,reject:ut};try{await e.write(tt),L.set(je,It)}catch(bn){throw i.error("Sending request failed."),It.reject(new de.ResponseError(de.ErrorCodes.MessageWriteError,bn.message?bn.message:"Unknown reason")),bn}})},onRequest:(T,B)=>{Jr();let z=null;return mp.is(T)?(z=void 0,c=T):ot.string(T)?(z=null,B!==void 0&&(z=T,l.set(T,{handler:B,type:void 0}))):B!==void 0&&(z=T.method,l.set(T.method,{type:T,handler:B})),{dispose:()=>{z!==null&&(z!==void 0?l.delete(z):c=void 0)}}},hasPendingResponse:()=>L.size>0,trace:async(T,B,z)=>{let te=!1,We=vn.Text;z!==void 0&&(ot.boolean(z)?te=z:(te=z.sendNotification||!1,We=z.traceFormat||vn.Text)),k=T,v=We,k===Le.Off?F=void 0:F=B,te&&!$e()&&!un()&&await Dr.sendNotification(yp.type,{value:Le.toString(T)})},onError:V.event,onClose:ce.event,onUnhandledNotification:ye.event,onDispose:A.event,end:()=>{e.end()},dispose:()=>{if(un())return;C=Jn.Disposed,A.fire(void 0);let T=new de.ResponseError(de.ErrorCodes.PendingResponseRejected,"Pending response rejected since connection got disposed");for(let B of L.values())B.reject(T);L=new Map,x=new Map,M=new Set,E=new Yv.LinkedMap,ot.func(e.dispose)&&e.dispose(),ot.func(t.dispose)&&t.dispose()},listen:()=>{Jr(),_u(),C=Jn.Listening,t.listen(fu)},inspect:()=>{(0,Xv.default)().console.log("inspect")}};return Dr.onNotification(Lu.type,T=>{if(k===Le.Off||!F)return;let B=k===Le.Verbose||k===Le.Compact;F.log(T.message,B?T.verbose:void 0)}),Dr.onNotification(Go.type,T=>{let B=b.get(T.token);B?B(T.value):K.fire(T)}),Dr}ve.createMessageConnection=J1});var Bu=g(q=>{"use strict";Object.defineProperty(q,"__esModule",{value:!0});q.ProgressType=q.ProgressToken=q.createMessageConnection=q.NullLogger=q.ConnectionOptions=q.ConnectionStrategy=q.AbstractMessageBuffer=q.WriteableStreamMessageWriter=q.AbstractMessageWriter=q.MessageWriter=q.ReadableStreamMessageReader=q.AbstractMessageReader=q.MessageReader=q.SharedArrayReceiverStrategy=q.SharedArraySenderStrategy=q.CancellationToken=q.CancellationTokenSource=q.Emitter=q.Event=q.Disposable=q.LRUCache=q.Touch=q.LinkedMap=q.ParameterStructures=q.NotificationType9=q.NotificationType8=q.NotificationType7=q.NotificationType6=q.NotificationType5=q.NotificationType4=q.NotificationType3=q.NotificationType2=q.NotificationType1=q.NotificationType0=q.NotificationType=q.ErrorCodes=q.ResponseError=q.RequestType9=q.RequestType8=q.RequestType7=q.RequestType6=q.RequestType5=q.RequestType4=q.RequestType3=q.RequestType2=q.RequestType1=q.RequestType0=q.RequestType=q.Message=q.RAL=void 0;q.MessageStrategy=q.CancellationStrategy=q.CancellationSenderStrategy=q.CancellationReceiverStrategy=q.ConnectionError=q.ConnectionErrors=q.LogTraceNotification=q.SetTraceNotification=q.TraceFormat=q.TraceValues=q.Trace=void 0;var Ve=Gf();Object.defineProperty(q,"Message",{enumerable:!0,get:function(){return Ve.Message}});Object.defineProperty(q,"RequestType",{enumerable:!0,get:function(){return Ve.RequestType}});Object.defineProperty(q,"RequestType0",{enumerable:!0,get:function(){return Ve.RequestType0}});Object.defineProperty(q,"RequestType1",{enumerable:!0,get:function(){return Ve.RequestType1}});Object.defineProperty(q,"RequestType2",{enumerable:!0,get:function(){return Ve.RequestType2}});Object.defineProperty(q,"RequestType3",{enumerable:!0,get:function(){return Ve.RequestType3}});Object.defineProperty(q,"RequestType4",{enumerable:!0,get:function(){return Ve.RequestType4}});Object.defineProperty(q,"RequestType5",{enumerable:!0,get:function(){return Ve.RequestType5}});Object.defineProperty(q,"RequestType6",{enumerable:!0,get:function(){return Ve.RequestType6}});Object.defineProperty(q,"RequestType7",{enumerable:!0,get:function(){return Ve.RequestType7}});Object.defineProperty(q,"RequestType8",{enumerable:!0,get:function(){return Ve.RequestType8}});Object.defineProperty(q,"RequestType9",{enumerable:!0,get:function(){return Ve.RequestType9}});Object.defineProperty(q,"ResponseError",{enumerable:!0,get:function(){return Ve.ResponseError}});Object.defineProperty(q,"ErrorCodes",{enumerable:!0,get:function(){return Ve.ErrorCodes}});Object.defineProperty(q,"NotificationType",{enumerable:!0,get:function(){return Ve.NotificationType}});Object.defineProperty(q,"NotificationType0",{enumerable:!0,get:function(){return Ve.NotificationType0}});Object.defineProperty(q,"NotificationType1",{enumerable:!0,get:function(){return Ve.NotificationType1}});Object.defineProperty(q,"NotificationType2",{enumerable:!0,get:function(){return Ve.NotificationType2}});Object.defineProperty(q,"NotificationType3",{enumerable:!0,get:function(){return Ve.NotificationType3}});Object.defineProperty(q,"NotificationType4",{enumerable:!0,get:function(){return Ve.NotificationType4}});Object.defineProperty(q,"NotificationType5",{enumerable:!0,get:function(){return Ve.NotificationType5}});Object.defineProperty(q,"NotificationType6",{enumerable:!0,get:function(){return Ve.NotificationType6}});Object.defineProperty(q,"NotificationType7",{enumerable:!0,get:function(){return Ve.NotificationType7}});Object.defineProperty(q,"NotificationType8",{enumerable:!0,get:function(){return Ve.NotificationType8}});Object.defineProperty(q,"NotificationType9",{enumerable:!0,get:function(){return Ve.NotificationType9}});Object.defineProperty(q,"ParameterStructures",{enumerable:!0,get:function(){return Ve.ParameterStructures}});var _p=Vf();Object.defineProperty(q,"LinkedMap",{enumerable:!0,get:function(){return _p.LinkedMap}});Object.defineProperty(q,"LRUCache",{enumerable:!0,get:function(){return _p.LRUCache}});Object.defineProperty(q,"Touch",{enumerable:!0,get:function(){return _p.Touch}});var Q1=jv();Object.defineProperty(q,"Disposable",{enumerable:!0,get:function(){return Q1.Disposable}});var e_=xs();Object.defineProperty(q,"Event",{enumerable:!0,get:function(){return e_.Event}});Object.defineProperty(q,"Emitter",{enumerable:!0,get:function(){return e_.Emitter}});var t_=Ru();Object.defineProperty(q,"CancellationTokenSource",{enumerable:!0,get:function(){return t_.CancellationTokenSource}});Object.defineProperty(q,"CancellationToken",{enumerable:!0,get:function(){return t_.CancellationToken}});var n_=$v();Object.defineProperty(q,"SharedArraySenderStrategy",{enumerable:!0,get:function(){return n_.SharedArraySenderStrategy}});Object.defineProperty(q,"SharedArrayReceiverStrategy",{enumerable:!0,get:function(){return n_.SharedArrayReceiverStrategy}});var Tp=Uv();Object.defineProperty(q,"MessageReader",{enumerable:!0,get:function(){return Tp.MessageReader}});Object.defineProperty(q,"AbstractMessageReader",{enumerable:!0,get:function(){return Tp.AbstractMessageReader}});Object.defineProperty(q,"ReadableStreamMessageReader",{enumerable:!0,get:function(){return Tp.ReadableStreamMessageReader}});var Sp=Vv();Object.defineProperty(q,"MessageWriter",{enumerable:!0,get:function(){return Sp.MessageWriter}});Object.defineProperty(q,"AbstractMessageWriter",{enumerable:!0,get:function(){return Sp.AbstractMessageWriter}});Object.defineProperty(q,"WriteableStreamMessageWriter",{enumerable:!0,get:function(){return Sp.WriteableStreamMessageWriter}});var Z1=zv();Object.defineProperty(q,"AbstractMessageBuffer",{enumerable:!0,get:function(){return Z1.AbstractMessageBuffer}});var Ft=Zv();Object.defineProperty(q,"ConnectionStrategy",{enumerable:!0,get:function(){return Ft.ConnectionStrategy}});Object.defineProperty(q,"ConnectionOptions",{enumerable:!0,get:function(){return Ft.ConnectionOptions}});Object.defineProperty(q,"NullLogger",{enumerable:!0,get:function(){return Ft.NullLogger}});Object.defineProperty(q,"createMessageConnection",{enumerable:!0,get:function(){return Ft.createMessageConnection}});Object.defineProperty(q,"ProgressToken",{enumerable:!0,get:function(){return Ft.ProgressToken}});Object.defineProperty(q,"ProgressType",{enumerable:!0,get:function(){return Ft.ProgressType}});Object.defineProperty(q,"Trace",{enumerable:!0,get:function(){return Ft.Trace}});Object.defineProperty(q,"TraceValues",{enumerable:!0,get:function(){return Ft.TraceValues}});Object.defineProperty(q,"TraceFormat",{enumerable:!0,get:function(){return Ft.TraceFormat}});Object.defineProperty(q,"SetTraceNotification",{enumerable:!0,get:function(){return Ft.SetTraceNotification}});Object.defineProperty(q,"LogTraceNotification",{enumerable:!0,get:function(){return Ft.LogTraceNotification}});Object.defineProperty(q,"ConnectionErrors",{enumerable:!0,get:function(){return Ft.ConnectionErrors}});Object.defineProperty(q,"ConnectionError",{enumerable:!0,get:function(){return Ft.ConnectionError}});Object.defineProperty(q,"CancellationReceiverStrategy",{enumerable:!0,get:function(){return Ft.CancellationReceiverStrategy}});Object.defineProperty(q,"CancellationSenderStrategy",{enumerable:!0,get:function(){return Ft.CancellationSenderStrategy}});Object.defineProperty(q,"CancellationStrategy",{enumerable:!0,get:function(){return Ft.CancellationStrategy}});Object.defineProperty(q,"MessageStrategy",{enumerable:!0,get:function(){return Ft.MessageStrategy}});var eO=Zr();q.RAL=eO.default});var s_=g(Ep=>{"use strict";Object.defineProperty(Ep,"__esModule",{value:!0});var r_=require("util"),Mr=Bu(),Uu=class t extends Mr.AbstractMessageBuffer{constructor(e="utf-8"){super(e)}emptyBuffer(){return t.emptyBuffer}fromString(e,n){return Buffer.from(e,n)}toString(e,n){return e instanceof Buffer?e.toString(n):new r_.TextDecoder(n).decode(e)}asNative(e,n){return n===void 0?e instanceof Buffer?e:Buffer.from(e):e instanceof Buffer?e.slice(0,n):Buffer.from(e,0,n)}allocNative(e){return Buffer.allocUnsafe(e)}};Uu.emptyBuffer=Buffer.allocUnsafe(0);var kp=class{constructor(e){this.stream=e}onClose(e){return this.stream.on("close",e),Mr.Disposable.create(()=>this.stream.off("close",e))}onError(e){return this.stream.on("error",e),Mr.Disposable.create(()=>this.stream.off("error",e))}onEnd(e){return this.stream.on("end",e),Mr.Disposable.create(()=>this.stream.off("end",e))}onData(e){return this.stream.on("data",e),Mr.Disposable.create(()=>this.stream.off("data",e))}},xp=class{constructor(e){this.stream=e}onClose(e){return this.stream.on("close",e),Mr.Disposable.create(()=>this.stream.off("close",e))}onError(e){return this.stream.on("error",e),Mr.Disposable.create(()=>this.stream.off("error",e))}onEnd(e){return this.stream.on("end",e),Mr.Disposable.create(()=>this.stream.off("end",e))}write(e,n){return new Promise((r,i)=>{let s=o=>{o==null?r():i(o)};typeof e=="string"?this.stream.write(e,n,s):this.stream.write(e,s)})}end(){this.stream.end()}},i_=Object.freeze({messageBuffer:Object.freeze({create:t=>new Uu(t)}),applicationJson:Object.freeze({encoder:Object.freeze({name:"application/json",encode:(t,e)=>{try{return Promise.resolve(Buffer.from(JSON.stringify(t,void 0,0),e.charset))}catch(n){return Promise.reject(n)}}}),decoder:Object.freeze({name:"application/json",decode:(t,e)=>{try{return t instanceof Buffer?Promise.resolve(JSON.parse(t.toString(e.charset))):Promise.resolve(JSON.parse(new r_.TextDecoder(e.charset).decode(t)))}catch(n){return Promise.reject(n)}}})}),stream:Object.freeze({asReadableStream:t=>new kp(t),asWritableStream:t=>new xp(t)}),console,timer:Object.freeze({setTimeout(t,e,...n){let r=setTimeout(t,e,...n);return{dispose:()=>clearTimeout(r)}},setImmediate(t,...e){let n=setImmediate(t,...e);return{dispose:()=>clearImmediate(n)}},setInterval(t,e,...n){let r=setInterval(t,e,...n);return{dispose:()=>clearInterval(r)}}})});function wp(){return i_}(function(t){function e(){Mr.RAL.install(i_)}t.install=e})(wp||(wp={}));Ep.default=wp});var Fi=g(Ae=>{"use strict";var tO=Ae&&Ae.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),nO=Ae&&Ae.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&tO(e,t,n)};Object.defineProperty(Ae,"__esModule",{value:!0});Ae.createMessageConnection=Ae.createServerSocketTransport=Ae.createClientSocketTransport=Ae.createServerPipeTransport=Ae.createClientPipeTransport=Ae.generateRandomPipeName=Ae.StreamMessageWriter=Ae.StreamMessageReader=Ae.SocketMessageWriter=Ae.SocketMessageReader=Ae.PortMessageWriter=Ae.PortMessageReader=Ae.IPCMessageWriter=Ae.IPCMessageReader=void 0;var Cs=s_();Cs.default.install();var o_=require("path"),rO=require("os"),iO=require("crypto"),Gu=require("net"),_n=Bu();nO(Bu(),Ae);var Ap=class extends _n.AbstractMessageReader{constructor(e){super(),this.process=e;let n=this.process;n.on("error",r=>this.fireError(r)),n.on("close",()=>this.fireClose())}listen(e){return this.process.on("message",e),_n.Disposable.create(()=>this.process.off("message",e))}};Ae.IPCMessageReader=Ap;var Op=class extends _n.AbstractMessageWriter{constructor(e){super(),this.process=e,this.errorCount=0;let n=this.process;n.on("error",r=>this.fireError(r)),n.on("close",()=>this.fireClose)}write(e){try{return typeof this.process.send=="function"&&this.process.send(e,void 0,void 0,n=>{n?(this.errorCount++,this.handleError(n,e)):this.errorCount=0}),Promise.resolve()}catch(n){return this.handleError(n,e),Promise.reject(n)}}handleError(e,n){this.errorCount++,this.fireError(e,n,this.errorCount)}end(){}};Ae.IPCMessageWriter=Op;var Cp=class extends _n.AbstractMessageReader{constructor(e){super(),this.onData=new _n.Emitter,e.on("close",()=>this.fireClose),e.on("error",n=>this.fireError(n)),e.on("message",n=>{this.onData.fire(n)})}listen(e){return this.onData.event(e)}};Ae.PortMessageReader=Cp;var Rp=class extends _n.AbstractMessageWriter{constructor(e){super(),this.port=e,this.errorCount=0,e.on("close",()=>this.fireClose()),e.on("error",n=>this.fireError(n))}write(e){try{return this.port.postMessage(e),Promise.resolve()}catch(n){return this.handleError(n,e),Promise.reject(n)}}handleError(e,n){this.errorCount++,this.fireError(e,n,this.errorCount)}end(){}};Ae.PortMessageWriter=Rp;var qi=class extends _n.ReadableStreamMessageReader{constructor(e,n="utf-8"){super((0,Cs.default)().stream.asReadableStream(e),n)}};Ae.SocketMessageReader=qi;var ji=class extends _n.WriteableStreamMessageWriter{constructor(e,n){super((0,Cs.default)().stream.asWritableStream(e),n),this.socket=e}dispose(){super.dispose(),this.socket.destroy()}};Ae.SocketMessageWriter=ji;var Hu=class extends _n.ReadableStreamMessageReader{constructor(e,n){super((0,Cs.default)().stream.asReadableStream(e),n)}};Ae.StreamMessageReader=Hu;var Wu=class extends _n.WriteableStreamMessageWriter{constructor(e,n){super((0,Cs.default)().stream.asWritableStream(e),n)}};Ae.StreamMessageWriter=Wu;var a_=process.env.XDG_RUNTIME_DIR,sO=new Map([["linux",107],["darwin",103]]);function oO(){let t=(0,iO.randomBytes)(21).toString("hex");if(process.platform==="win32")return`\\\\.\\pipe\\vscode-jsonrpc-${t}-sock`;let e;a_?e=o_.join(a_,`vscode-ipc-${t}.sock`):e=o_.join(rO.tmpdir(),`vscode-${t}.sock`);let n=sO.get(process.platform);return n!==void 0&&e.length>n&&(0,Cs.default)().console.warn(`WARNING: IPC handle "${e}" is longer than ${n} characters.`),e}Ae.generateRandomPipeName=oO;function aO(t,e="utf-8"){let n,r=new Promise((i,s)=>{n=i});return new Promise((i,s)=>{let o=(0,Gu.createServer)(a=>{o.close(),n([new qi(a,e),new ji(a,e)])});o.on("error",s),o.listen(t,()=>{o.removeListener("error",s),i({onConnected:()=>r})})})}Ae.createClientPipeTransport=aO;function uO(t,e="utf-8"){let n=(0,Gu.createConnection)(t);return[new qi(n,e),new ji(n,e)]}Ae.createServerPipeTransport=uO;function cO(t,e="utf-8"){let n,r=new Promise((i,s)=>{n=i});return new Promise((i,s)=>{let o=(0,Gu.createServer)(a=>{o.close(),n([new qi(a,e),new ji(a,e)])});o.on("error",s),o.listen(t,"127.0.0.1",()=>{o.removeListener("error",s),i({onConnected:()=>r})})})}Ae.createClientSocketTransport=cO;function lO(t,e="utf-8"){let n=(0,Gu.createConnection)(t,"127.0.0.1");return[new qi(n,e),new ji(n,e)]}Ae.createServerSocketTransport=lO;function dO(t){let e=t;return e.read!==void 0&&e.addListener!==void 0}function fO(t){let e=t;return e.write!==void 0&&e.addListener!==void 0}function pO(t,e,n,r){n||(n=_n.NullLogger);let i=dO(t)?new Hu(t):t,s=fO(e)?new Wu(e):e;return _n.ConnectionStrategy.is(r)&&(r={connectionStrategy:r}),(0,_n.createMessageConnection)(i,s,n,r)}Ae.createMessageConnection=pO});var Pp=g((g$,u_)=>{"use strict";u_.exports=Fi()});var Vu=g((c_,Ku)=>{(function(t){if(typeof Ku=="object"&&typeof Ku.exports=="object"){var e=t(require,c_);e!==void 0&&(Ku.exports=e)}else typeof define=="function"&&define.amd&&define(["require","exports"],t)})(function(t,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 n;(function(h){function S(w){return typeof w=="string"}h.is=S})(n||(e.DocumentUri=n={}));var r;(function(h){function S(w){return typeof w=="string"}h.is=S})(r||(e.URI=r={}));var i;(function(h){h.MIN_VALUE=-2147483648,h.MAX_VALUE=2147483647;function S(w){return typeof w=="number"&&h.MIN_VALUE<=w&&w<=h.MAX_VALUE}h.is=S})(i||(e.integer=i={}));var s;(function(h){h.MIN_VALUE=0,h.MAX_VALUE=2147483647;function S(w){return typeof w=="number"&&h.MIN_VALUE<=w&&w<=h.MAX_VALUE}h.is=S})(s||(e.uinteger=s={}));var o;(function(h){function S(m,f){return m===Number.MAX_VALUE&&(m=s.MAX_VALUE),f===Number.MAX_VALUE&&(f=s.MAX_VALUE),{line:m,character:f}}h.create=S;function w(m){var f=m;return P.objectLiteral(f)&&P.uinteger(f.line)&&P.uinteger(f.character)}h.is=w})(o||(e.Position=o={}));var a;(function(h){function S(m,f,R,U){if(P.uinteger(m)&&P.uinteger(f)&&P.uinteger(R)&&P.uinteger(U))return{start:o.create(m,f),end:o.create(R,U)};if(o.is(m)&&o.is(f))return{start:m,end:f};throw new Error("Range#create called with invalid arguments[".concat(m,", ").concat(f,", ").concat(R,", ").concat(U,"]"))}h.create=S;function w(m){var f=m;return P.objectLiteral(f)&&o.is(f.start)&&o.is(f.end)}h.is=w})(a||(e.Range=a={}));var u;(function(h){function S(m,f){return{uri:m,range:f}}h.create=S;function w(m){var f=m;return P.objectLiteral(f)&&a.is(f.range)&&(P.string(f.uri)||P.undefined(f.uri))}h.is=w})(u||(e.Location=u={}));var c;(function(h){function S(m,f,R,U){return{targetUri:m,targetRange:f,targetSelectionRange:R,originSelectionRange:U}}h.create=S;function w(m){var f=m;return P.objectLiteral(f)&&a.is(f.targetRange)&&P.string(f.targetUri)&&a.is(f.targetSelectionRange)&&(a.is(f.originSelectionRange)||P.undefined(f.originSelectionRange))}h.is=w})(c||(e.LocationLink=c={}));var l;(function(h){function S(m,f,R,U){return{red:m,green:f,blue:R,alpha:U}}h.create=S;function w(m){var f=m;return P.objectLiteral(f)&&P.numberRange(f.red,0,1)&&P.numberRange(f.green,0,1)&&P.numberRange(f.blue,0,1)&&P.numberRange(f.alpha,0,1)}h.is=w})(l||(e.Color=l={}));var d;(function(h){function S(m,f){return{range:m,color:f}}h.create=S;function w(m){var f=m;return P.objectLiteral(f)&&a.is(f.range)&&l.is(f.color)}h.is=w})(d||(e.ColorInformation=d={}));var p;(function(h){function S(m,f,R){return{label:m,textEdit:f,additionalTextEdits:R}}h.create=S;function w(m){var f=m;return P.objectLiteral(f)&&P.string(f.label)&&(P.undefined(f.textEdit)||F.is(f))&&(P.undefined(f.additionalTextEdits)||P.typedArray(f.additionalTextEdits,F.is))}h.is=w})(p||(e.ColorPresentation=p={}));var b;(function(h){h.Comment="comment",h.Imports="imports",h.Region="region"})(b||(e.FoldingRangeKind=b={}));var _;(function(h){function S(m,f,R,U,be,ct){var Ke={startLine:m,endLine:f};return P.defined(R)&&(Ke.startCharacter=R),P.defined(U)&&(Ke.endCharacter=U),P.defined(be)&&(Ke.kind=be),P.defined(ct)&&(Ke.collapsedText=ct),Ke}h.create=S;function w(m){var f=m;return P.objectLiteral(f)&&P.uinteger(f.startLine)&&P.uinteger(f.startLine)&&(P.undefined(f.startCharacter)||P.uinteger(f.startCharacter))&&(P.undefined(f.endCharacter)||P.uinteger(f.endCharacter))&&(P.undefined(f.kind)||P.string(f.kind))}h.is=w})(_||(e.FoldingRange=_={}));var E;(function(h){function S(m,f){return{location:m,message:f}}h.create=S;function w(m){var f=m;return P.defined(f)&&u.is(f.location)&&P.string(f.message)}h.is=w})(E||(e.DiagnosticRelatedInformation=E={}));var L;(function(h){h.Error=1,h.Warning=2,h.Information=3,h.Hint=4})(L||(e.DiagnosticSeverity=L={}));var M;(function(h){h.Unnecessary=1,h.Deprecated=2})(M||(e.DiagnosticTag=M={}));var x;(function(h){function S(w){var m=w;return P.objectLiteral(m)&&P.string(m.href)}h.is=S})(x||(e.CodeDescription=x={}));var k;(function(h){function S(m,f,R,U,be,ct){var Ke={range:m,message:f};return P.defined(R)&&(Ke.severity=R),P.defined(U)&&(Ke.code=U),P.defined(be)&&(Ke.source=be),P.defined(ct)&&(Ke.relatedInformation=ct),Ke}h.create=S;function w(m){var f,R=m;return P.defined(R)&&a.is(R.range)&&P.string(R.message)&&(P.number(R.severity)||P.undefined(R.severity))&&(P.integer(R.code)||P.string(R.code)||P.undefined(R.code))&&(P.undefined(R.codeDescription)||P.string((f=R.codeDescription)===null||f===void 0?void 0:f.href))&&(P.string(R.source)||P.undefined(R.source))&&(P.undefined(R.relatedInformation)||P.typedArray(R.relatedInformation,E.is))}h.is=w})(k||(e.Diagnostic=k={}));var v;(function(h){function S(m,f){for(var R=[],U=2;U<arguments.length;U++)R[U-2]=arguments[U];var be={title:m,command:f};return P.defined(R)&&R.length>0&&(be.arguments=R),be}h.create=S;function w(m){var f=m;return P.defined(f)&&P.string(f.title)&&P.string(f.command)}h.is=w})(v||(e.Command=v={}));var F;(function(h){function S(R,U){return{range:R,newText:U}}h.replace=S;function w(R,U){return{range:{start:R,end:R},newText:U}}h.insert=w;function m(R){return{range:R,newText:""}}h.del=m;function f(R){var U=R;return P.objectLiteral(U)&&P.string(U.newText)&&a.is(U.range)}h.is=f})(F||(e.TextEdit=F={}));var C;(function(h){function S(m,f,R){var U={label:m};return f!==void 0&&(U.needsConfirmation=f),R!==void 0&&(U.description=R),U}h.create=S;function w(m){var f=m;return P.objectLiteral(f)&&P.string(f.label)&&(P.boolean(f.needsConfirmation)||f.needsConfirmation===void 0)&&(P.string(f.description)||f.description===void 0)}h.is=w})(C||(e.ChangeAnnotation=C={}));var V;(function(h){function S(w){var m=w;return P.string(m)}h.is=S})(V||(e.ChangeAnnotationIdentifier=V={}));var ce;(function(h){function S(R,U,be){return{range:R,newText:U,annotationId:be}}h.replace=S;function w(R,U,be){return{range:{start:R,end:R},newText:U,annotationId:be}}h.insert=w;function m(R,U){return{range:R,newText:"",annotationId:U}}h.del=m;function f(R){var U=R;return F.is(U)&&(C.is(U.annotationId)||V.is(U.annotationId))}h.is=f})(ce||(e.AnnotatedTextEdit=ce={}));var ye;(function(h){function S(m,f){return{textDocument:m,edits:f}}h.create=S;function w(m){var f=m;return P.defined(f)&&$e.is(f.textDocument)&&Array.isArray(f.edits)}h.is=w})(ye||(e.TextDocumentEdit=ye={}));var K;(function(h){function S(m,f,R){var U={kind:"create",uri:m};return f!==void 0&&(f.overwrite!==void 0||f.ignoreIfExists!==void 0)&&(U.options=f),R!==void 0&&(U.annotationId=R),U}h.create=S;function w(m){var f=m;return f&&f.kind==="create"&&P.string(f.uri)&&(f.options===void 0||(f.options.overwrite===void 0||P.boolean(f.options.overwrite))&&(f.options.ignoreIfExists===void 0||P.boolean(f.options.ignoreIfExists)))&&(f.annotationId===void 0||V.is(f.annotationId))}h.is=w})(K||(e.CreateFile=K={}));var A;(function(h){function S(m,f,R,U){var be={kind:"rename",oldUri:m,newUri:f};return R!==void 0&&(R.overwrite!==void 0||R.ignoreIfExists!==void 0)&&(be.options=R),U!==void 0&&(be.annotationId=U),be}h.create=S;function w(m){var f=m;return f&&f.kind==="rename"&&P.string(f.oldUri)&&P.string(f.newUri)&&(f.options===void 0||(f.options.overwrite===void 0||P.boolean(f.options.overwrite))&&(f.options.ignoreIfExists===void 0||P.boolean(f.options.ignoreIfExists)))&&(f.annotationId===void 0||V.is(f.annotationId))}h.is=w})(A||(e.RenameFile=A={}));var D;(function(h){function S(m,f,R){var U={kind:"delete",uri:m};return f!==void 0&&(f.recursive!==void 0||f.ignoreIfNotExists!==void 0)&&(U.options=f),R!==void 0&&(U.annotationId=R),U}h.create=S;function w(m){var f=m;return f&&f.kind==="delete"&&P.string(f.uri)&&(f.options===void 0||(f.options.recursive===void 0||P.boolean(f.options.recursive))&&(f.options.ignoreIfNotExists===void 0||P.boolean(f.options.ignoreIfNotExists)))&&(f.annotationId===void 0||V.is(f.annotationId))}h.is=w})(D||(e.DeleteFile=D={}));var I;(function(h){function S(w){var m=w;return m&&(m.changes!==void 0||m.documentChanges!==void 0)&&(m.documentChanges===void 0||m.documentChanges.every(function(f){return P.string(f.kind)?K.is(f)||A.is(f)||D.is(f):ye.is(f)}))}h.is=S})(I||(e.WorkspaceEdit=I={}));var j=function(){function h(S,w){this.edits=S,this.changeAnnotations=w}return h.prototype.insert=function(S,w,m){var f,R;if(m===void 0?f=F.insert(S,w):V.is(m)?(R=m,f=ce.insert(S,w,m)):(this.assertChangeAnnotations(this.changeAnnotations),R=this.changeAnnotations.manage(m),f=ce.insert(S,w,R)),this.edits.push(f),R!==void 0)return R},h.prototype.replace=function(S,w,m){var f,R;if(m===void 0?f=F.replace(S,w):V.is(m)?(R=m,f=ce.replace(S,w,m)):(this.assertChangeAnnotations(this.changeAnnotations),R=this.changeAnnotations.manage(m),f=ce.replace(S,w,R)),this.edits.push(f),R!==void 0)return R},h.prototype.delete=function(S,w){var m,f;if(w===void 0?m=F.del(S):V.is(w)?(f=w,m=ce.del(S,w)):(this.assertChangeAnnotations(this.changeAnnotations),f=this.changeAnnotations.manage(w),m=ce.del(S,f)),this.edits.push(m),f!==void 0)return f},h.prototype.add=function(S){this.edits.push(S)},h.prototype.all=function(){return this.edits},h.prototype.clear=function(){this.edits.splice(0,this.edits.length)},h.prototype.assertChangeAnnotations=function(S){if(S===void 0)throw new Error("Text edit change is not configured to manage change annotations.")},h}(),he=function(){function h(S){this._annotations=S===void 0?Object.create(null):S,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(S,w){var m;if(V.is(S)?m=S:(m=this.nextId(),w=S),this._annotations[m]!==void 0)throw new Error("Id ".concat(m," is already in use."));if(w===void 0)throw new Error("No annotation provided for id ".concat(m));return this._annotations[m]=w,this._size++,m},h.prototype.nextId=function(){return this._counter++,this._counter.toString()},h}(),fe=function(){function h(S){var w=this;this._textEditChanges=Object.create(null),S!==void 0?(this._workspaceEdit=S,S.documentChanges?(this._changeAnnotations=new he(S.changeAnnotations),S.changeAnnotations=this._changeAnnotations.all(),S.documentChanges.forEach(function(m){if(ye.is(m)){var f=new j(m.edits,w._changeAnnotations);w._textEditChanges[m.textDocument.uri]=f}})):S.changes&&Object.keys(S.changes).forEach(function(m){var f=new j(S.changes[m]);w._textEditChanges[m]=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(S){if($e.is(S)){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");var w={uri:S.uri,version:S.version},m=this._textEditChanges[w.uri];if(!m){var f=[],R={textDocument:w,edits:f};this._workspaceEdit.documentChanges.push(R),m=new j(f,this._changeAnnotations),this._textEditChanges[w.uri]=m}return m}else{if(this.initChanges(),this._workspaceEdit.changes===void 0)throw new Error("Workspace edit is not configured for normal text edit changes.");var m=this._textEditChanges[S];if(!m){var f=[];this._workspaceEdit.changes[S]=f,m=new j(f),this._textEditChanges[S]=m}return m}},h.prototype.initDocumentChanges=function(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._changeAnnotations=new he,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(S,w,m){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");var f;C.is(w)||V.is(w)?f=w:m=w;var R,U;if(f===void 0?R=K.create(S,m):(U=V.is(f)?f:this._changeAnnotations.manage(f),R=K.create(S,m,U)),this._workspaceEdit.documentChanges.push(R),U!==void 0)return U},h.prototype.renameFile=function(S,w,m,f){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");var R;C.is(m)||V.is(m)?R=m:f=m;var U,be;if(R===void 0?U=A.create(S,w,f):(be=V.is(R)?R:this._changeAnnotations.manage(R),U=A.create(S,w,f,be)),this._workspaceEdit.documentChanges.push(U),be!==void 0)return be},h.prototype.deleteFile=function(S,w,m){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");var f;C.is(w)||V.is(w)?f=w:m=w;var R,U;if(f===void 0?R=D.create(S,m):(U=V.is(f)?f:this._changeAnnotations.manage(f),R=D.create(S,m,U)),this._workspaceEdit.documentChanges.push(R),U!==void 0)return U},h}();e.WorkspaceChange=fe;var Dt;(function(h){function S(m){return{uri:m}}h.create=S;function w(m){var f=m;return P.defined(f)&&P.string(f.uri)}h.is=w})(Dt||(e.TextDocumentIdentifier=Dt={}));var mt;(function(h){function S(m,f){return{uri:m,version:f}}h.create=S;function w(m){var f=m;return P.defined(f)&&P.string(f.uri)&&P.integer(f.version)}h.is=w})(mt||(e.VersionedTextDocumentIdentifier=mt={}));var $e;(function(h){function S(m,f){return{uri:m,version:f}}h.create=S;function w(m){var f=m;return P.defined(f)&&P.string(f.uri)&&(f.version===null||P.integer(f.version))}h.is=w})($e||(e.OptionalVersionedTextDocumentIdentifier=$e={}));var un;(function(h){function S(m,f,R,U){return{uri:m,languageId:f,version:R,text:U}}h.create=S;function w(m){var f=m;return P.defined(f)&&P.string(f.uri)&&P.string(f.languageId)&&P.integer(f.version)&&P.string(f.text)}h.is=w})(un||(e.TextDocumentItem=un={}));var ys;(function(h){h.PlainText="plaintext",h.Markdown="markdown";function S(w){var m=w;return m===h.PlainText||m===h.Markdown}h.is=S})(ys||(e.MarkupKind=ys={}));var Mi;(function(h){function S(w){var m=w;return P.objectLiteral(w)&&ys.is(m.kind)&&P.string(m.value)}h.is=S})(Mi||(e.MarkupContent=Mi={}));var lu;(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})(lu||(e.CompletionItemKind=lu={}));var qo;(function(h){h.PlainText=1,h.Snippet=2})(qo||(e.InsertTextFormat=qo={}));var jo;(function(h){h.Deprecated=1})(jo||(e.CompletionItemTag=jo={}));var du;(function(h){function S(m,f,R){return{newText:m,insert:f,replace:R}}h.create=S;function w(m){var f=m;return f&&P.string(f.newText)&&a.is(f.insert)&&a.is(f.replace)}h.is=w})(du||(e.InsertReplaceEdit=du={}));var fu;(function(h){h.asIs=1,h.adjustIndentation=2})(fu||(e.InsertTextMode=fu={}));var pu;(function(h){function S(w){var m=w;return m&&(P.string(m.detail)||m.detail===void 0)&&(P.string(m.description)||m.description===void 0)}h.is=S})(pu||(e.CompletionItemLabelDetails=pu={}));var hu;(function(h){function S(w){return{label:w}}h.create=S})(hu||(e.CompletionItem=hu={}));var gu;(function(h){function S(w,m){return{items:w||[],isIncomplete:!!m}}h.create=S})(gu||(e.CompletionList=gu={}));var bs;(function(h){function S(m){return m.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}h.fromPlainText=S;function w(m){var f=m;return P.string(f)||P.objectLiteral(f)&&P.string(f.language)&&P.string(f.value)}h.is=w})(bs||(e.MarkedString=bs={}));var zn;(function(h){function S(w){var m=w;return!!m&&P.objectLiteral(m)&&(Mi.is(m.contents)||bs.is(m.contents)||P.typedArray(m.contents,bs.is))&&(w.range===void 0||a.is(w.range))}h.is=S})(zn||(e.Hover=zn={}));var mu;(function(h){function S(w,m){return m?{label:w,documentation:m}:{label:w}}h.create=S})(mu||(e.ParameterInformation=mu={}));var yu;(function(h){function S(w,m){for(var f=[],R=2;R<arguments.length;R++)f[R-2]=arguments[R];var U={label:w};return P.defined(m)&&(U.documentation=m),P.defined(f)?U.parameters=f:U.parameters=[],U}h.create=S})(yu||(e.SignatureInformation=yu={}));var Li;(function(h){h.Text=1,h.Read=2,h.Write=3})(Li||(e.DocumentHighlightKind=Li={}));var bu;(function(h){function S(w,m){var f={range:w};return P.number(m)&&(f.kind=m),f}h.create=S})(bu||(e.DocumentHighlight=bu={}));var vs;(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})(vs||(e.SymbolKind=vs={}));var vu;(function(h){h.Deprecated=1})(vu||(e.SymbolTag=vu={}));var Pr;(function(h){function S(w,m,f,R,U){var be={name:w,kind:m,location:{uri:R,range:f}};return U&&(be.containerName=U),be}h.create=S})(Pr||(e.SymbolInformation=Pr={}));var Jr;(function(h){function S(w,m,f,R){return R!==void 0?{name:w,kind:m,location:{uri:f,range:R}}:{name:w,kind:m,location:{uri:f}}}h.create=S})(Jr||(e.WorkspaceSymbol=Jr={}));var _u;(function(h){function S(m,f,R,U,be,ct){var Ke={name:m,detail:f,kind:R,range:U,selectionRange:be};return ct!==void 0&&(Ke.children=ct),Ke}h.create=S;function w(m){var f=m;return f&&P.string(f.name)&&P.number(f.kind)&&a.is(f.range)&&a.is(f.selectionRange)&&(f.detail===void 0||P.string(f.detail))&&(f.deprecated===void 0||P.boolean(f.deprecated))&&(f.children===void 0||Array.isArray(f.children))&&(f.tags===void 0||Array.isArray(f.tags))}h.is=w})(_u||(e.DocumentSymbol=_u={}));var Tu;(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"})(Tu||(e.CodeActionKind=Tu={}));var cr;(function(h){h.Invoked=1,h.Automatic=2})(cr||(e.CodeActionTriggerKind=cr={}));var Fo;(function(h){function S(m,f,R){var U={diagnostics:m};return f!=null&&(U.only=f),R!=null&&(U.triggerKind=R),U}h.create=S;function w(m){var f=m;return P.defined(f)&&P.typedArray(f.diagnostics,k.is)&&(f.only===void 0||P.typedArray(f.only,P.string))&&(f.triggerKind===void 0||f.triggerKind===cr.Invoked||f.triggerKind===cr.Automatic)}h.is=w})(Fo||(e.CodeActionContext=Fo={}));var $o;(function(h){function S(m,f,R){var U={title:m},be=!0;return typeof f=="string"?(be=!1,U.kind=f):v.is(f)?U.command=f:U.edit=f,be&&R!==void 0&&(U.kind=R),U}h.create=S;function w(m){var f=m;return f&&P.string(f.title)&&(f.diagnostics===void 0||P.typedArray(f.diagnostics,k.is))&&(f.kind===void 0||P.string(f.kind))&&(f.edit!==void 0||f.command!==void 0)&&(f.command===void 0||v.is(f.command))&&(f.isPreferred===void 0||P.boolean(f.isPreferred))&&(f.edit===void 0||I.is(f.edit))}h.is=w})($o||(e.CodeAction=$o={}));var _s;(function(h){function S(m,f){var R={range:m};return P.defined(f)&&(R.data=f),R}h.create=S;function w(m){var f=m;return P.defined(f)&&a.is(f.range)&&(P.undefined(f.command)||v.is(f.command))}h.is=w})(_s||(e.CodeLens=_s={}));var Bo;(function(h){function S(m,f){return{tabSize:m,insertSpaces:f}}h.create=S;function w(m){var f=m;return P.defined(f)&&P.uinteger(f.tabSize)&&P.boolean(f.insertSpaces)}h.is=w})(Bo||(e.FormattingOptions=Bo={}));var Dr;(function(h){function S(m,f,R){return{range:m,target:f,data:R}}h.create=S;function w(m){var f=m;return P.defined(f)&&a.is(f.range)&&(P.undefined(f.target)||P.string(f.target))}h.is=w})(Dr||(e.DocumentLink=Dr={}));var T;(function(h){function S(m,f){return{range:m,parent:f}}h.create=S;function w(m){var f=m;return P.objectLiteral(f)&&a.is(f.range)&&(f.parent===void 0||h.is(f.parent))}h.is=w})(T||(e.SelectionRange=T={}));var B;(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"})(B||(e.SemanticTokenTypes=B={}));var z;(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"})(z||(e.SemanticTokenModifiers=z={}));var te;(function(h){function S(w){var m=w;return P.objectLiteral(m)&&(m.resultId===void 0||typeof m.resultId=="string")&&Array.isArray(m.data)&&(m.data.length===0||typeof m.data[0]=="number")}h.is=S})(te||(e.SemanticTokens=te={}));var We;(function(h){function S(m,f){return{range:m,text:f}}h.create=S;function w(m){var f=m;return f!=null&&a.is(f.range)&&P.string(f.text)}h.is=w})(We||(e.InlineValueText=We={}));var je;(function(h){function S(m,f,R){return{range:m,variableName:f,caseSensitiveLookup:R}}h.create=S;function w(m){var f=m;return f!=null&&a.is(f.range)&&P.boolean(f.caseSensitiveLookup)&&(P.string(f.variableName)||f.variableName===void 0)}h.is=w})(je||(e.InlineValueVariableLookup=je={}));var Xe;(function(h){function S(m,f){return{range:m,expression:f}}h.create=S;function w(m){var f=m;return f!=null&&a.is(f.range)&&(P.string(f.expression)||f.expression===void 0)}h.is=w})(Xe||(e.InlineValueEvaluatableExpression=Xe={}));var tt;(function(h){function S(m,f){return{frameId:m,stoppedLocation:f}}h.create=S;function w(m){var f=m;return P.defined(f)&&a.is(m.stoppedLocation)}h.is=w})(tt||(e.InlineValueContext=tt={}));var xe;(function(h){h.Type=1,h.Parameter=2;function S(w){return w===1||w===2}h.is=S})(xe||(e.InlayHintKind=xe={}));var Ge;(function(h){function S(m){return{value:m}}h.create=S;function w(m){var f=m;return P.objectLiteral(f)&&(f.tooltip===void 0||P.string(f.tooltip)||Mi.is(f.tooltip))&&(f.location===void 0||u.is(f.location))&&(f.command===void 0||v.is(f.command))}h.is=w})(Ge||(e.InlayHintLabelPart=Ge={}));var Pe;(function(h){function S(m,f,R){var U={position:m,label:f};return R!==void 0&&(U.kind=R),U}h.create=S;function w(m){var f=m;return P.objectLiteral(f)&&o.is(f.position)&&(P.string(f.label)||P.typedArray(f.label,Ge.is))&&(f.kind===void 0||xe.is(f.kind))&&f.textEdits===void 0||P.typedArray(f.textEdits,F.is)&&(f.tooltip===void 0||P.string(f.tooltip)||Mi.is(f.tooltip))&&(f.paddingLeft===void 0||P.boolean(f.paddingLeft))&&(f.paddingRight===void 0||P.boolean(f.paddingRight))}h.is=w})(Pe||(e.InlayHint=Pe={}));var ut;(function(h){function S(w){return{kind:"snippet",value:w}}h.createSnippet=S})(ut||(e.StringValue=ut={}));var It;(function(h){function S(w,m,f,R){return{insertText:w,filterText:m,range:f,command:R}}h.create=S})(It||(e.InlineCompletionItem=It={}));var bn;(function(h){function S(w){return{items:w}}h.create=S})(bn||(e.InlineCompletionList=bn={}));var Su;(function(h){h.Invoked=0,h.Automatic=1})(Su||(e.InlineCompletionTriggerKind=Su={}));var wv;(function(h){function S(w,m){return{range:w,text:m}}h.create=S})(wv||(e.SelectedCompletionInfo=wv={}));var Ev;(function(h){function S(w,m){return{triggerKind:w,selectedCompletionInfo:m}}h.create=S})(Ev||(e.InlineCompletionContext=Ev={}));var Av;(function(h){function S(w){var m=w;return P.objectLiteral(m)&&r.is(m.uri)&&P.string(m.name)}h.is=S})(Av||(e.WorkspaceFolder=Av={})),e.EOL=[`
32
32
  `,`\r
33
- `,"\r"];var Ev;(function(h){function S(R,U,be,ct){return new _1(R,U,be,ct)}h.create=S;function w(R){var U=R;return!!(P.defined(U)&&P.string(U.uri)&&(P.undefined(U.languageId)||P.string(U.languageId))&&P.uinteger(U.lineCount)&&P.func(U.getText)&&P.func(U.positionAt)&&P.func(U.offsetAt))}h.is=w;function m(R,U){for(var be=R.getText(),ct=f(U,function(Ts,ku){var Av=Ts.range.start.line-ku.range.start.line;return Av===0?Ts.range.start.character-ku.range.start.character:Av}),Ke=be.length,Xn=ct.length-1;Xn>=0;Xn--){var Yn=ct[Xn],Ir=R.offsetAt(Yn.range.start),Ee=R.offsetAt(Yn.range.end);if(Ee<=Ke)be=be.substring(0,Ir)+Yn.newText+be.substring(Ee,be.length);else throw new Error("Overlapping edit");Ke=Ir}return be}h.applyEdits=m;function f(R,U){if(R.length<=1)return R;var be=R.length/2|0,ct=R.slice(0,be),Ke=R.slice(be);f(ct,U),f(Ke,U);for(var Xn=0,Yn=0,Ir=0;Xn<ct.length&&Yn<Ke.length;){var Ee=U(ct[Xn],Ke[Yn]);Ee<=0?R[Ir++]=ct[Xn++]:R[Ir++]=Ke[Yn++]}for(;Xn<ct.length;)R[Ir++]=ct[Xn++];for(;Yn<Ke.length;)R[Ir++]=Ke[Yn++];return R}})(Ev||(e.TextDocument=Ev={}));var _1=function(){function h(S,w,m,f){this._uri=S,this._languageId=w,this._version=m,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(S){if(S){var w=this.offsetAt(S.start),m=this.offsetAt(S.end);return this._content.substring(w,m)}return this._content},h.prototype.update=function(S,w){this._content=S.text,this._version=w,this._lineOffsets=void 0},h.prototype.getLineOffsets=function(){if(this._lineOffsets===void 0){for(var S=[],w=this._content,m=!0,f=0;f<w.length;f++){m&&(S.push(f),m=!1);var R=w.charAt(f);m=R==="\r"||R===`
33
+ `,"\r"];var Ov;(function(h){function S(R,U,be,ct){return new _1(R,U,be,ct)}h.create=S;function w(R){var U=R;return!!(P.defined(U)&&P.string(U.uri)&&(P.undefined(U.languageId)||P.string(U.languageId))&&P.uinteger(U.lineCount)&&P.func(U.getText)&&P.func(U.positionAt)&&P.func(U.offsetAt))}h.is=w;function m(R,U){for(var be=R.getText(),ct=f(U,function(Ts,ku){var Cv=Ts.range.start.line-ku.range.start.line;return Cv===0?Ts.range.start.character-ku.range.start.character:Cv}),Ke=be.length,Xn=ct.length-1;Xn>=0;Xn--){var Yn=ct[Xn],Ir=R.offsetAt(Yn.range.start),Ee=R.offsetAt(Yn.range.end);if(Ee<=Ke)be=be.substring(0,Ir)+Yn.newText+be.substring(Ee,be.length);else throw new Error("Overlapping edit");Ke=Ir}return be}h.applyEdits=m;function f(R,U){if(R.length<=1)return R;var be=R.length/2|0,ct=R.slice(0,be),Ke=R.slice(be);f(ct,U),f(Ke,U);for(var Xn=0,Yn=0,Ir=0;Xn<ct.length&&Yn<Ke.length;){var Ee=U(ct[Xn],Ke[Yn]);Ee<=0?R[Ir++]=ct[Xn++]:R[Ir++]=Ke[Yn++]}for(;Xn<ct.length;)R[Ir++]=ct[Xn++];for(;Yn<Ke.length;)R[Ir++]=Ke[Yn++];return R}})(Ov||(e.TextDocument=Ov={}));var _1=function(){function h(S,w,m,f){this._uri=S,this._languageId=w,this._version=m,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(S){if(S){var w=this.offsetAt(S.start),m=this.offsetAt(S.end);return this._content.substring(w,m)}return this._content},h.prototype.update=function(S,w){this._content=S.text,this._version=w,this._lineOffsets=void 0},h.prototype.getLineOffsets=function(){if(this._lineOffsets===void 0){for(var S=[],w=this._content,m=!0,f=0;f<w.length;f++){m&&(S.push(f),m=!1);var R=w.charAt(f);m=R==="\r"||R===`
34
34
  `,R==="\r"&&f+1<w.length&&w.charAt(f+1)===`
35
- `&&f++}m&&w.length>0&&S.push(w.length),this._lineOffsets=S}return this._lineOffsets},h.prototype.positionAt=function(S){S=Math.max(Math.min(S,this._content.length),0);var w=this.getLineOffsets(),m=0,f=w.length;if(f===0)return o.create(0,S);for(;m<f;){var R=Math.floor((m+f)/2);w[R]>S?f=R:m=R+1}var U=m-1;return o.create(U,S-w[U])},h.prototype.offsetAt=function(S){var w=this.getLineOffsets();if(S.line>=w.length)return this._content.length;if(S.line<0)return 0;var m=w[S.line],f=S.line+1<w.length?w[S.line+1]:this._content.length;return Math.max(Math.min(m+S.character,f),m)},Object.defineProperty(h.prototype,"lineCount",{get:function(){return this.getLineOffsets().length},enumerable:!1,configurable:!0}),h}(),P;(function(h){var S=Object.prototype.toString;function w(Ee){return typeof Ee<"u"}h.defined=w;function m(Ee){return typeof Ee>"u"}h.undefined=m;function f(Ee){return Ee===!0||Ee===!1}h.boolean=f;function R(Ee){return S.call(Ee)==="[object String]"}h.string=R;function U(Ee){return S.call(Ee)==="[object Number]"}h.number=U;function be(Ee,Ts,ku){return S.call(Ee)==="[object Number]"&&Ts<=Ee&&Ee<=ku}h.numberRange=be;function ct(Ee){return S.call(Ee)==="[object Number]"&&-2147483648<=Ee&&Ee<=2147483647}h.integer=ct;function Ke(Ee){return S.call(Ee)==="[object Number]"&&0<=Ee&&Ee<=2147483647}h.uinteger=Ke;function Xn(Ee){return S.call(Ee)==="[object Function]"}h.func=Xn;function Yn(Ee){return Ee!==null&&typeof Ee=="object"}h.objectLiteral=Yn;function Ir(Ee,Ts){return Array.isArray(Ee)&&Ee.every(Ts)}h.typedArray=Ir})(P||(P={}))})});var nt=g(ln=>{"use strict";Object.defineProperty(ln,"__esModule",{value:!0});ln.ProtocolNotificationType=ln.ProtocolNotificationType0=ln.ProtocolRequestType=ln.ProtocolRequestType0=ln.RegistrationType=ln.MessageDirection=void 0;var Rs=Fi(),u_;(function(t){t.clientToServer="clientToServer",t.serverToClient="serverToClient",t.both="both"})(u_||(ln.MessageDirection=u_={}));var Dp=class{constructor(e){this.method=e}};ln.RegistrationType=Dp;var Ip=class extends Rs.RequestType0{constructor(e){super(e)}};ln.ProtocolRequestType0=Ip;var Mp=class extends Rs.RequestType{constructor(e){super(e,Rs.ParameterStructures.byName)}};ln.ProtocolRequestType=Mp;var Lp=class extends Rs.NotificationType0{constructor(e){super(e)}};ln.ProtocolNotificationType0=Lp;var Np=class extends Rs.NotificationType{constructor(e){super(e,Rs.ParameterStructures.byName)}};ln.ProtocolNotificationType=Np});var zu=g(kt=>{"use strict";Object.defineProperty(kt,"__esModule",{value:!0});kt.objectLiteral=kt.typedArray=kt.stringArray=kt.array=kt.func=kt.error=kt.number=kt.string=kt.boolean=void 0;function hO(t){return t===!0||t===!1}kt.boolean=hO;function c_(t){return typeof t=="string"||t instanceof String}kt.string=c_;function gO(t){return typeof t=="number"||t instanceof Number}kt.number=gO;function mO(t){return t instanceof Error}kt.error=mO;function yO(t){return typeof t=="function"}kt.func=yO;function l_(t){return Array.isArray(t)}kt.array=l_;function bO(t){return l_(t)&&t.every(e=>c_(e))}kt.stringArray=bO;function vO(t,e){return Array.isArray(t)&&t.every(e)}kt.typedArray=vO;function _O(t){return t!==null&&typeof t=="object"}kt.objectLiteral=_O});var p_=g(Xu=>{"use strict";Object.defineProperty(Xu,"__esModule",{value:!0});Xu.ImplementationRequest=void 0;var d_=nt(),f_;(function(t){t.method="textDocument/implementation",t.messageDirection=d_.MessageDirection.clientToServer,t.type=new d_.ProtocolRequestType(t.method)})(f_||(Xu.ImplementationRequest=f_={}))});var m_=g(Yu=>{"use strict";Object.defineProperty(Yu,"__esModule",{value:!0});Yu.TypeDefinitionRequest=void 0;var h_=nt(),g_;(function(t){t.method="textDocument/typeDefinition",t.messageDirection=h_.MessageDirection.clientToServer,t.type=new h_.ProtocolRequestType(t.method)})(g_||(Yu.TypeDefinitionRequest=g_={}))});var v_=g(Ps=>{"use strict";Object.defineProperty(Ps,"__esModule",{value:!0});Ps.DidChangeWorkspaceFoldersNotification=Ps.WorkspaceFoldersRequest=void 0;var Ju=nt(),y_;(function(t){t.method="workspace/workspaceFolders",t.messageDirection=Ju.MessageDirection.serverToClient,t.type=new Ju.ProtocolRequestType0(t.method)})(y_||(Ps.WorkspaceFoldersRequest=y_={}));var b_;(function(t){t.method="workspace/didChangeWorkspaceFolders",t.messageDirection=Ju.MessageDirection.clientToServer,t.type=new Ju.ProtocolNotificationType(t.method)})(b_||(Ps.DidChangeWorkspaceFoldersNotification=b_={}))});var S_=g(Qu=>{"use strict";Object.defineProperty(Qu,"__esModule",{value:!0});Qu.ConfigurationRequest=void 0;var __=nt(),T_;(function(t){t.method="workspace/configuration",t.messageDirection=__.MessageDirection.serverToClient,t.type=new __.ProtocolRequestType(t.method)})(T_||(Qu.ConfigurationRequest=T_={}))});var w_=g(Ds=>{"use strict";Object.defineProperty(Ds,"__esModule",{value:!0});Ds.ColorPresentationRequest=Ds.DocumentColorRequest=void 0;var Zu=nt(),k_;(function(t){t.method="textDocument/documentColor",t.messageDirection=Zu.MessageDirection.clientToServer,t.type=new Zu.ProtocolRequestType(t.method)})(k_||(Ds.DocumentColorRequest=k_={}));var x_;(function(t){t.method="textDocument/colorPresentation",t.messageDirection=Zu.MessageDirection.clientToServer,t.type=new Zu.ProtocolRequestType(t.method)})(x_||(Ds.ColorPresentationRequest=x_={}))});var O_=g(Is=>{"use strict";Object.defineProperty(Is,"__esModule",{value:!0});Is.FoldingRangeRefreshRequest=Is.FoldingRangeRequest=void 0;var ec=nt(),E_;(function(t){t.method="textDocument/foldingRange",t.messageDirection=ec.MessageDirection.clientToServer,t.type=new ec.ProtocolRequestType(t.method)})(E_||(Is.FoldingRangeRequest=E_={}));var A_;(function(t){t.method="workspace/foldingRange/refresh",t.messageDirection=ec.MessageDirection.serverToClient,t.type=new ec.ProtocolRequestType0(t.method)})(A_||(Is.FoldingRangeRefreshRequest=A_={}))});var P_=g(tc=>{"use strict";Object.defineProperty(tc,"__esModule",{value:!0});tc.DeclarationRequest=void 0;var C_=nt(),R_;(function(t){t.method="textDocument/declaration",t.messageDirection=C_.MessageDirection.clientToServer,t.type=new C_.ProtocolRequestType(t.method)})(R_||(tc.DeclarationRequest=R_={}))});var M_=g(nc=>{"use strict";Object.defineProperty(nc,"__esModule",{value:!0});nc.SelectionRangeRequest=void 0;var D_=nt(),I_;(function(t){t.method="textDocument/selectionRange",t.messageDirection=D_.MessageDirection.clientToServer,t.type=new D_.ProtocolRequestType(t.method)})(I_||(nc.SelectionRangeRequest=I_={}))});var j_=g(ti=>{"use strict";Object.defineProperty(ti,"__esModule",{value:!0});ti.WorkDoneProgressCancelNotification=ti.WorkDoneProgressCreateRequest=ti.WorkDoneProgress=void 0;var TO=Fi(),rc=nt(),L_;(function(t){t.type=new TO.ProgressType;function e(n){return n===t.type}t.is=e})(L_||(ti.WorkDoneProgress=L_={}));var N_;(function(t){t.method="window/workDoneProgress/create",t.messageDirection=rc.MessageDirection.serverToClient,t.type=new rc.ProtocolRequestType(t.method)})(N_||(ti.WorkDoneProgressCreateRequest=N_={}));var q_;(function(t){t.method="window/workDoneProgress/cancel",t.messageDirection=rc.MessageDirection.clientToServer,t.type=new rc.ProtocolNotificationType(t.method)})(q_||(ti.WorkDoneProgressCancelNotification=q_={}))});var U_=g(ni=>{"use strict";Object.defineProperty(ni,"__esModule",{value:!0});ni.CallHierarchyOutgoingCallsRequest=ni.CallHierarchyIncomingCallsRequest=ni.CallHierarchyPrepareRequest=void 0;var Ms=nt(),F_;(function(t){t.method="textDocument/prepareCallHierarchy",t.messageDirection=Ms.MessageDirection.clientToServer,t.type=new Ms.ProtocolRequestType(t.method)})(F_||(ni.CallHierarchyPrepareRequest=F_={}));var $_;(function(t){t.method="callHierarchy/incomingCalls",t.messageDirection=Ms.MessageDirection.clientToServer,t.type=new Ms.ProtocolRequestType(t.method)})($_||(ni.CallHierarchyIncomingCallsRequest=$_={}));var B_;(function(t){t.method="callHierarchy/outgoingCalls",t.messageDirection=Ms.MessageDirection.clientToServer,t.type=new Ms.ProtocolRequestType(t.method)})(B_||(ni.CallHierarchyOutgoingCallsRequest=B_={}))});var z_=g(dn=>{"use strict";Object.defineProperty(dn,"__esModule",{value:!0});dn.SemanticTokensRefreshRequest=dn.SemanticTokensRangeRequest=dn.SemanticTokensDeltaRequest=dn.SemanticTokensRequest=dn.SemanticTokensRegistrationType=dn.TokenFormat=void 0;var Lr=nt(),H_;(function(t){t.Relative="relative"})(H_||(dn.TokenFormat=H_={}));var zo;(function(t){t.method="textDocument/semanticTokens",t.type=new Lr.RegistrationType(t.method)})(zo||(dn.SemanticTokensRegistrationType=zo={}));var W_;(function(t){t.method="textDocument/semanticTokens/full",t.messageDirection=Lr.MessageDirection.clientToServer,t.type=new Lr.ProtocolRequestType(t.method),t.registrationMethod=zo.method})(W_||(dn.SemanticTokensRequest=W_={}));var G_;(function(t){t.method="textDocument/semanticTokens/full/delta",t.messageDirection=Lr.MessageDirection.clientToServer,t.type=new Lr.ProtocolRequestType(t.method),t.registrationMethod=zo.method})(G_||(dn.SemanticTokensDeltaRequest=G_={}));var K_;(function(t){t.method="textDocument/semanticTokens/range",t.messageDirection=Lr.MessageDirection.clientToServer,t.type=new Lr.ProtocolRequestType(t.method),t.registrationMethod=zo.method})(K_||(dn.SemanticTokensRangeRequest=K_={}));var V_;(function(t){t.method="workspace/semanticTokens/refresh",t.messageDirection=Lr.MessageDirection.serverToClient,t.type=new Lr.ProtocolRequestType0(t.method)})(V_||(dn.SemanticTokensRefreshRequest=V_={}))});var J_=g(ic=>{"use strict";Object.defineProperty(ic,"__esModule",{value:!0});ic.ShowDocumentRequest=void 0;var X_=nt(),Y_;(function(t){t.method="window/showDocument",t.messageDirection=X_.MessageDirection.serverToClient,t.type=new X_.ProtocolRequestType(t.method)})(Y_||(ic.ShowDocumentRequest=Y_={}))});var eT=g(sc=>{"use strict";Object.defineProperty(sc,"__esModule",{value:!0});sc.LinkedEditingRangeRequest=void 0;var Q_=nt(),Z_;(function(t){t.method="textDocument/linkedEditingRange",t.messageDirection=Q_.MessageDirection.clientToServer,t.type=new Q_.ProtocolRequestType(t.method)})(Z_||(sc.LinkedEditingRangeRequest=Z_={}))});var uT=g(Kt=>{"use strict";Object.defineProperty(Kt,"__esModule",{value:!0});Kt.WillDeleteFilesRequest=Kt.DidDeleteFilesNotification=Kt.DidRenameFilesNotification=Kt.WillRenameFilesRequest=Kt.DidCreateFilesNotification=Kt.WillCreateFilesRequest=Kt.FileOperationPatternKind=void 0;var On=nt(),tT;(function(t){t.file="file",t.folder="folder"})(tT||(Kt.FileOperationPatternKind=tT={}));var nT;(function(t){t.method="workspace/willCreateFiles",t.messageDirection=On.MessageDirection.clientToServer,t.type=new On.ProtocolRequestType(t.method)})(nT||(Kt.WillCreateFilesRequest=nT={}));var rT;(function(t){t.method="workspace/didCreateFiles",t.messageDirection=On.MessageDirection.clientToServer,t.type=new On.ProtocolNotificationType(t.method)})(rT||(Kt.DidCreateFilesNotification=rT={}));var iT;(function(t){t.method="workspace/willRenameFiles",t.messageDirection=On.MessageDirection.clientToServer,t.type=new On.ProtocolRequestType(t.method)})(iT||(Kt.WillRenameFilesRequest=iT={}));var sT;(function(t){t.method="workspace/didRenameFiles",t.messageDirection=On.MessageDirection.clientToServer,t.type=new On.ProtocolNotificationType(t.method)})(sT||(Kt.DidRenameFilesNotification=sT={}));var oT;(function(t){t.method="workspace/didDeleteFiles",t.messageDirection=On.MessageDirection.clientToServer,t.type=new On.ProtocolNotificationType(t.method)})(oT||(Kt.DidDeleteFilesNotification=oT={}));var aT;(function(t){t.method="workspace/willDeleteFiles",t.messageDirection=On.MessageDirection.clientToServer,t.type=new On.ProtocolRequestType(t.method)})(aT||(Kt.WillDeleteFilesRequest=aT={}))});var pT=g(ri=>{"use strict";Object.defineProperty(ri,"__esModule",{value:!0});ri.MonikerRequest=ri.MonikerKind=ri.UniquenessLevel=void 0;var cT=nt(),lT;(function(t){t.document="document",t.project="project",t.group="group",t.scheme="scheme",t.global="global"})(lT||(ri.UniquenessLevel=lT={}));var dT;(function(t){t.$import="import",t.$export="export",t.local="local"})(dT||(ri.MonikerKind=dT={}));var fT;(function(t){t.method="textDocument/moniker",t.messageDirection=cT.MessageDirection.clientToServer,t.type=new cT.ProtocolRequestType(t.method)})(fT||(ri.MonikerRequest=fT={}))});var yT=g(ii=>{"use strict";Object.defineProperty(ii,"__esModule",{value:!0});ii.TypeHierarchySubtypesRequest=ii.TypeHierarchySupertypesRequest=ii.TypeHierarchyPrepareRequest=void 0;var Ls=nt(),hT;(function(t){t.method="textDocument/prepareTypeHierarchy",t.messageDirection=Ls.MessageDirection.clientToServer,t.type=new Ls.ProtocolRequestType(t.method)})(hT||(ii.TypeHierarchyPrepareRequest=hT={}));var gT;(function(t){t.method="typeHierarchy/supertypes",t.messageDirection=Ls.MessageDirection.clientToServer,t.type=new Ls.ProtocolRequestType(t.method)})(gT||(ii.TypeHierarchySupertypesRequest=gT={}));var mT;(function(t){t.method="typeHierarchy/subtypes",t.messageDirection=Ls.MessageDirection.clientToServer,t.type=new Ls.ProtocolRequestType(t.method)})(mT||(ii.TypeHierarchySubtypesRequest=mT={}))});var _T=g(Ns=>{"use strict";Object.defineProperty(Ns,"__esModule",{value:!0});Ns.InlineValueRefreshRequest=Ns.InlineValueRequest=void 0;var oc=nt(),bT;(function(t){t.method="textDocument/inlineValue",t.messageDirection=oc.MessageDirection.clientToServer,t.type=new oc.ProtocolRequestType(t.method)})(bT||(Ns.InlineValueRequest=bT={}));var vT;(function(t){t.method="workspace/inlineValue/refresh",t.messageDirection=oc.MessageDirection.serverToClient,t.type=new oc.ProtocolRequestType0(t.method)})(vT||(Ns.InlineValueRefreshRequest=vT={}))});var xT=g(si=>{"use strict";Object.defineProperty(si,"__esModule",{value:!0});si.InlayHintRefreshRequest=si.InlayHintResolveRequest=si.InlayHintRequest=void 0;var qs=nt(),TT;(function(t){t.method="textDocument/inlayHint",t.messageDirection=qs.MessageDirection.clientToServer,t.type=new qs.ProtocolRequestType(t.method)})(TT||(si.InlayHintRequest=TT={}));var ST;(function(t){t.method="inlayHint/resolve",t.messageDirection=qs.MessageDirection.clientToServer,t.type=new qs.ProtocolRequestType(t.method)})(ST||(si.InlayHintResolveRequest=ST={}));var kT;(function(t){t.method="workspace/inlayHint/refresh",t.messageDirection=qs.MessageDirection.serverToClient,t.type=new qs.ProtocolRequestType0(t.method)})(kT||(si.InlayHintRefreshRequest=kT={}))});var PT=g(Cn=>{"use strict";Object.defineProperty(Cn,"__esModule",{value:!0});Cn.DiagnosticRefreshRequest=Cn.WorkspaceDiagnosticRequest=Cn.DocumentDiagnosticRequest=Cn.DocumentDiagnosticReportKind=Cn.DiagnosticServerCancellationData=void 0;var RT=Fi(),SO=zu(),js=nt(),wT;(function(t){function e(n){let r=n;return r&&SO.boolean(r.retriggerRequest)}t.is=e})(wT||(Cn.DiagnosticServerCancellationData=wT={}));var ET;(function(t){t.Full="full",t.Unchanged="unchanged"})(ET||(Cn.DocumentDiagnosticReportKind=ET={}));var AT;(function(t){t.method="textDocument/diagnostic",t.messageDirection=js.MessageDirection.clientToServer,t.type=new js.ProtocolRequestType(t.method),t.partialResult=new RT.ProgressType})(AT||(Cn.DocumentDiagnosticRequest=AT={}));var OT;(function(t){t.method="workspace/diagnostic",t.messageDirection=js.MessageDirection.clientToServer,t.type=new js.ProtocolRequestType(t.method),t.partialResult=new RT.ProgressType})(OT||(Cn.WorkspaceDiagnosticRequest=OT={}));var CT;(function(t){t.method="workspace/diagnostic/refresh",t.messageDirection=js.MessageDirection.serverToClient,t.type=new js.ProtocolRequestType0(t.method)})(CT||(Cn.DiagnosticRefreshRequest=CT={}))});var jT=g(lt=>{"use strict";Object.defineProperty(lt,"__esModule",{value:!0});lt.DidCloseNotebookDocumentNotification=lt.DidSaveNotebookDocumentNotification=lt.DidChangeNotebookDocumentNotification=lt.NotebookCellArrayChange=lt.DidOpenNotebookDocumentNotification=lt.NotebookDocumentSyncRegistrationType=lt.NotebookDocument=lt.NotebookCell=lt.ExecutionSummary=lt.NotebookCellKind=void 0;var Xo=Vu(),Qn=zu(),lr=nt(),qp;(function(t){t.Markup=1,t.Code=2;function e(n){return n===1||n===2}t.is=e})(qp||(lt.NotebookCellKind=qp={}));var jp;(function(t){function e(i,s){let o={executionOrder:i};return(s===!0||s===!1)&&(o.success=s),o}t.create=e;function n(i){let s=i;return Qn.objectLiteral(s)&&Xo.uinteger.is(s.executionOrder)&&(s.success===void 0||Qn.boolean(s.success))}t.is=n;function r(i,s){return i===s?!0:i==null||s===null||s===void 0?!1:i.executionOrder===s.executionOrder&&i.success===s.success}t.equals=r})(jp||(lt.ExecutionSummary=jp={}));var ac;(function(t){function e(s,o){return{kind:s,document:o}}t.create=e;function n(s){let o=s;return Qn.objectLiteral(o)&&qp.is(o.kind)&&Xo.DocumentUri.is(o.document)&&(o.metadata===void 0||Qn.objectLiteral(o.metadata))}t.is=n;function r(s,o){let a=new Set;return s.document!==o.document&&a.add("document"),s.kind!==o.kind&&a.add("kind"),s.executionSummary!==o.executionSummary&&a.add("executionSummary"),(s.metadata!==void 0||o.metadata!==void 0)&&!i(s.metadata,o.metadata)&&a.add("metadata"),(s.executionSummary!==void 0||o.executionSummary!==void 0)&&!jp.equals(s.executionSummary,o.executionSummary)&&a.add("executionSummary"),a}t.diff=r;function i(s,o){if(s===o)return!0;if(s==null||o===null||o===void 0||typeof s!=typeof o||typeof s!="object")return!1;let a=Array.isArray(s),u=Array.isArray(o);if(a!==u)return!1;if(a&&u){if(s.length!==o.length)return!1;for(let c=0;c<s.length;c++)if(!i(s[c],o[c]))return!1}if(Qn.objectLiteral(s)&&Qn.objectLiteral(o)){let c=Object.keys(s),l=Object.keys(o);if(c.length!==l.length||(c.sort(),l.sort(),!i(c,l)))return!1;for(let d=0;d<c.length;d++){let p=c[d];if(!i(s[p],o[p]))return!1}}return!0}})(ac||(lt.NotebookCell=ac={}));var DT;(function(t){function e(r,i,s,o){return{uri:r,notebookType:i,version:s,cells:o}}t.create=e;function n(r){let i=r;return Qn.objectLiteral(i)&&Qn.string(i.uri)&&Xo.integer.is(i.version)&&Qn.typedArray(i.cells,ac.is)}t.is=n})(DT||(lt.NotebookDocument=DT={}));var Fs;(function(t){t.method="notebookDocument/sync",t.messageDirection=lr.MessageDirection.clientToServer,t.type=new lr.RegistrationType(t.method)})(Fs||(lt.NotebookDocumentSyncRegistrationType=Fs={}));var IT;(function(t){t.method="notebookDocument/didOpen",t.messageDirection=lr.MessageDirection.clientToServer,t.type=new lr.ProtocolNotificationType(t.method),t.registrationMethod=Fs.method})(IT||(lt.DidOpenNotebookDocumentNotification=IT={}));var MT;(function(t){function e(r){let i=r;return Qn.objectLiteral(i)&&Xo.uinteger.is(i.start)&&Xo.uinteger.is(i.deleteCount)&&(i.cells===void 0||Qn.typedArray(i.cells,ac.is))}t.is=e;function n(r,i,s){let o={start:r,deleteCount:i};return s!==void 0&&(o.cells=s),o}t.create=n})(MT||(lt.NotebookCellArrayChange=MT={}));var LT;(function(t){t.method="notebookDocument/didChange",t.messageDirection=lr.MessageDirection.clientToServer,t.type=new lr.ProtocolNotificationType(t.method),t.registrationMethod=Fs.method})(LT||(lt.DidChangeNotebookDocumentNotification=LT={}));var NT;(function(t){t.method="notebookDocument/didSave",t.messageDirection=lr.MessageDirection.clientToServer,t.type=new lr.ProtocolNotificationType(t.method),t.registrationMethod=Fs.method})(NT||(lt.DidSaveNotebookDocumentNotification=NT={}));var qT;(function(t){t.method="notebookDocument/didClose",t.messageDirection=lr.MessageDirection.clientToServer,t.type=new lr.ProtocolNotificationType(t.method),t.registrationMethod=Fs.method})(qT||(lt.DidCloseNotebookDocumentNotification=qT={}))});var BT=g(uc=>{"use strict";Object.defineProperty(uc,"__esModule",{value:!0});uc.InlineCompletionRequest=void 0;var FT=nt(),$T;(function(t){t.method="textDocument/inlineCompletion",t.messageDirection=FT.MessageDirection.clientToServer,t.type=new FT.ProtocolRequestType(t.method)})($T||(uc.InlineCompletionRequest=$T={}))});var ek=g(y=>{"use strict";Object.defineProperty(y,"__esModule",{value:!0});y.WorkspaceSymbolRequest=y.CodeActionResolveRequest=y.CodeActionRequest=y.DocumentSymbolRequest=y.DocumentHighlightRequest=y.ReferencesRequest=y.DefinitionRequest=y.SignatureHelpRequest=y.SignatureHelpTriggerKind=y.HoverRequest=y.CompletionResolveRequest=y.CompletionRequest=y.CompletionTriggerKind=y.PublishDiagnosticsNotification=y.WatchKind=y.RelativePattern=y.FileChangeType=y.DidChangeWatchedFilesNotification=y.WillSaveTextDocumentWaitUntilRequest=y.WillSaveTextDocumentNotification=y.TextDocumentSaveReason=y.DidSaveTextDocumentNotification=y.DidCloseTextDocumentNotification=y.DidChangeTextDocumentNotification=y.TextDocumentContentChangeEvent=y.DidOpenTextDocumentNotification=y.TextDocumentSyncKind=y.TelemetryEventNotification=y.LogMessageNotification=y.ShowMessageRequest=y.ShowMessageNotification=y.MessageType=y.DidChangeConfigurationNotification=y.ExitNotification=y.ShutdownRequest=y.InitializedNotification=y.InitializeErrorCodes=y.InitializeRequest=y.WorkDoneProgressOptions=y.TextDocumentRegistrationOptions=y.StaticRegistrationOptions=y.PositionEncodingKind=y.FailureHandlingKind=y.ResourceOperationKind=y.UnregistrationRequest=y.RegistrationRequest=y.DocumentSelector=y.NotebookCellTextDocumentFilter=y.NotebookDocumentFilter=y.TextDocumentFilter=void 0;y.MonikerRequest=y.MonikerKind=y.UniquenessLevel=y.WillDeleteFilesRequest=y.DidDeleteFilesNotification=y.WillRenameFilesRequest=y.DidRenameFilesNotification=y.WillCreateFilesRequest=y.DidCreateFilesNotification=y.FileOperationPatternKind=y.LinkedEditingRangeRequest=y.ShowDocumentRequest=y.SemanticTokensRegistrationType=y.SemanticTokensRefreshRequest=y.SemanticTokensRangeRequest=y.SemanticTokensDeltaRequest=y.SemanticTokensRequest=y.TokenFormat=y.CallHierarchyPrepareRequest=y.CallHierarchyOutgoingCallsRequest=y.CallHierarchyIncomingCallsRequest=y.WorkDoneProgressCancelNotification=y.WorkDoneProgressCreateRequest=y.WorkDoneProgress=y.SelectionRangeRequest=y.DeclarationRequest=y.FoldingRangeRefreshRequest=y.FoldingRangeRequest=y.ColorPresentationRequest=y.DocumentColorRequest=y.ConfigurationRequest=y.DidChangeWorkspaceFoldersNotification=y.WorkspaceFoldersRequest=y.TypeDefinitionRequest=y.ImplementationRequest=y.ApplyWorkspaceEditRequest=y.ExecuteCommandRequest=y.PrepareRenameRequest=y.RenameRequest=y.PrepareSupportDefaultBehavior=y.DocumentOnTypeFormattingRequest=y.DocumentRangesFormattingRequest=y.DocumentRangeFormattingRequest=y.DocumentFormattingRequest=y.DocumentLinkResolveRequest=y.DocumentLinkRequest=y.CodeLensRefreshRequest=y.CodeLensResolveRequest=y.CodeLensRequest=y.WorkspaceSymbolResolveRequest=void 0;y.InlineCompletionRequest=y.DidCloseNotebookDocumentNotification=y.DidSaveNotebookDocumentNotification=y.DidChangeNotebookDocumentNotification=y.NotebookCellArrayChange=y.DidOpenNotebookDocumentNotification=y.NotebookDocumentSyncRegistrationType=y.NotebookDocument=y.NotebookCell=y.ExecutionSummary=y.NotebookCellKind=y.DiagnosticRefreshRequest=y.WorkspaceDiagnosticRequest=y.DocumentDiagnosticRequest=y.DocumentDiagnosticReportKind=y.DiagnosticServerCancellationData=y.InlayHintRefreshRequest=y.InlayHintResolveRequest=y.InlayHintRequest=y.InlineValueRefreshRequest=y.InlineValueRequest=y.TypeHierarchySupertypesRequest=y.TypeHierarchySubtypesRequest=y.TypeHierarchyPrepareRequest=void 0;var G=nt(),UT=Vu(),Mt=zu(),kO=p_();Object.defineProperty(y,"ImplementationRequest",{enumerable:!0,get:function(){return kO.ImplementationRequest}});var xO=m_();Object.defineProperty(y,"TypeDefinitionRequest",{enumerable:!0,get:function(){return xO.TypeDefinitionRequest}});var YS=v_();Object.defineProperty(y,"WorkspaceFoldersRequest",{enumerable:!0,get:function(){return YS.WorkspaceFoldersRequest}});Object.defineProperty(y,"DidChangeWorkspaceFoldersNotification",{enumerable:!0,get:function(){return YS.DidChangeWorkspaceFoldersNotification}});var wO=S_();Object.defineProperty(y,"ConfigurationRequest",{enumerable:!0,get:function(){return wO.ConfigurationRequest}});var JS=w_();Object.defineProperty(y,"DocumentColorRequest",{enumerable:!0,get:function(){return JS.DocumentColorRequest}});Object.defineProperty(y,"ColorPresentationRequest",{enumerable:!0,get:function(){return JS.ColorPresentationRequest}});var QS=O_();Object.defineProperty(y,"FoldingRangeRequest",{enumerable:!0,get:function(){return QS.FoldingRangeRequest}});Object.defineProperty(y,"FoldingRangeRefreshRequest",{enumerable:!0,get:function(){return QS.FoldingRangeRefreshRequest}});var EO=P_();Object.defineProperty(y,"DeclarationRequest",{enumerable:!0,get:function(){return EO.DeclarationRequest}});var AO=M_();Object.defineProperty(y,"SelectionRangeRequest",{enumerable:!0,get:function(){return AO.SelectionRangeRequest}});var Hp=j_();Object.defineProperty(y,"WorkDoneProgress",{enumerable:!0,get:function(){return Hp.WorkDoneProgress}});Object.defineProperty(y,"WorkDoneProgressCreateRequest",{enumerable:!0,get:function(){return Hp.WorkDoneProgressCreateRequest}});Object.defineProperty(y,"WorkDoneProgressCancelNotification",{enumerable:!0,get:function(){return Hp.WorkDoneProgressCancelNotification}});var Wp=U_();Object.defineProperty(y,"CallHierarchyIncomingCallsRequest",{enumerable:!0,get:function(){return Wp.CallHierarchyIncomingCallsRequest}});Object.defineProperty(y,"CallHierarchyOutgoingCallsRequest",{enumerable:!0,get:function(){return Wp.CallHierarchyOutgoingCallsRequest}});Object.defineProperty(y,"CallHierarchyPrepareRequest",{enumerable:!0,get:function(){return Wp.CallHierarchyPrepareRequest}});var $s=z_();Object.defineProperty(y,"TokenFormat",{enumerable:!0,get:function(){return $s.TokenFormat}});Object.defineProperty(y,"SemanticTokensRequest",{enumerable:!0,get:function(){return $s.SemanticTokensRequest}});Object.defineProperty(y,"SemanticTokensDeltaRequest",{enumerable:!0,get:function(){return $s.SemanticTokensDeltaRequest}});Object.defineProperty(y,"SemanticTokensRangeRequest",{enumerable:!0,get:function(){return $s.SemanticTokensRangeRequest}});Object.defineProperty(y,"SemanticTokensRefreshRequest",{enumerable:!0,get:function(){return $s.SemanticTokensRefreshRequest}});Object.defineProperty(y,"SemanticTokensRegistrationType",{enumerable:!0,get:function(){return $s.SemanticTokensRegistrationType}});var OO=J_();Object.defineProperty(y,"ShowDocumentRequest",{enumerable:!0,get:function(){return OO.ShowDocumentRequest}});var CO=eT();Object.defineProperty(y,"LinkedEditingRangeRequest",{enumerable:!0,get:function(){return CO.LinkedEditingRangeRequest}});var $i=uT();Object.defineProperty(y,"FileOperationPatternKind",{enumerable:!0,get:function(){return $i.FileOperationPatternKind}});Object.defineProperty(y,"DidCreateFilesNotification",{enumerable:!0,get:function(){return $i.DidCreateFilesNotification}});Object.defineProperty(y,"WillCreateFilesRequest",{enumerable:!0,get:function(){return $i.WillCreateFilesRequest}});Object.defineProperty(y,"DidRenameFilesNotification",{enumerable:!0,get:function(){return $i.DidRenameFilesNotification}});Object.defineProperty(y,"WillRenameFilesRequest",{enumerable:!0,get:function(){return $i.WillRenameFilesRequest}});Object.defineProperty(y,"DidDeleteFilesNotification",{enumerable:!0,get:function(){return $i.DidDeleteFilesNotification}});Object.defineProperty(y,"WillDeleteFilesRequest",{enumerable:!0,get:function(){return $i.WillDeleteFilesRequest}});var Gp=pT();Object.defineProperty(y,"UniquenessLevel",{enumerable:!0,get:function(){return Gp.UniquenessLevel}});Object.defineProperty(y,"MonikerKind",{enumerable:!0,get:function(){return Gp.MonikerKind}});Object.defineProperty(y,"MonikerRequest",{enumerable:!0,get:function(){return Gp.MonikerRequest}});var Kp=yT();Object.defineProperty(y,"TypeHierarchyPrepareRequest",{enumerable:!0,get:function(){return Kp.TypeHierarchyPrepareRequest}});Object.defineProperty(y,"TypeHierarchySubtypesRequest",{enumerable:!0,get:function(){return Kp.TypeHierarchySubtypesRequest}});Object.defineProperty(y,"TypeHierarchySupertypesRequest",{enumerable:!0,get:function(){return Kp.TypeHierarchySupertypesRequest}});var ZS=_T();Object.defineProperty(y,"InlineValueRequest",{enumerable:!0,get:function(){return ZS.InlineValueRequest}});Object.defineProperty(y,"InlineValueRefreshRequest",{enumerable:!0,get:function(){return ZS.InlineValueRefreshRequest}});var Vp=xT();Object.defineProperty(y,"InlayHintRequest",{enumerable:!0,get:function(){return Vp.InlayHintRequest}});Object.defineProperty(y,"InlayHintResolveRequest",{enumerable:!0,get:function(){return Vp.InlayHintResolveRequest}});Object.defineProperty(y,"InlayHintRefreshRequest",{enumerable:!0,get:function(){return Vp.InlayHintRefreshRequest}});var Yo=PT();Object.defineProperty(y,"DiagnosticServerCancellationData",{enumerable:!0,get:function(){return Yo.DiagnosticServerCancellationData}});Object.defineProperty(y,"DocumentDiagnosticReportKind",{enumerable:!0,get:function(){return Yo.DocumentDiagnosticReportKind}});Object.defineProperty(y,"DocumentDiagnosticRequest",{enumerable:!0,get:function(){return Yo.DocumentDiagnosticRequest}});Object.defineProperty(y,"WorkspaceDiagnosticRequest",{enumerable:!0,get:function(){return Yo.WorkspaceDiagnosticRequest}});Object.defineProperty(y,"DiagnosticRefreshRequest",{enumerable:!0,get:function(){return Yo.DiagnosticRefreshRequest}});var dr=jT();Object.defineProperty(y,"NotebookCellKind",{enumerable:!0,get:function(){return dr.NotebookCellKind}});Object.defineProperty(y,"ExecutionSummary",{enumerable:!0,get:function(){return dr.ExecutionSummary}});Object.defineProperty(y,"NotebookCell",{enumerable:!0,get:function(){return dr.NotebookCell}});Object.defineProperty(y,"NotebookDocument",{enumerable:!0,get:function(){return dr.NotebookDocument}});Object.defineProperty(y,"NotebookDocumentSyncRegistrationType",{enumerable:!0,get:function(){return dr.NotebookDocumentSyncRegistrationType}});Object.defineProperty(y,"DidOpenNotebookDocumentNotification",{enumerable:!0,get:function(){return dr.DidOpenNotebookDocumentNotification}});Object.defineProperty(y,"NotebookCellArrayChange",{enumerable:!0,get:function(){return dr.NotebookCellArrayChange}});Object.defineProperty(y,"DidChangeNotebookDocumentNotification",{enumerable:!0,get:function(){return dr.DidChangeNotebookDocumentNotification}});Object.defineProperty(y,"DidSaveNotebookDocumentNotification",{enumerable:!0,get:function(){return dr.DidSaveNotebookDocumentNotification}});Object.defineProperty(y,"DidCloseNotebookDocumentNotification",{enumerable:!0,get:function(){return dr.DidCloseNotebookDocumentNotification}});var RO=BT();Object.defineProperty(y,"InlineCompletionRequest",{enumerable:!0,get:function(){return RO.InlineCompletionRequest}});var Fp;(function(t){function e(n){let r=n;return Mt.string(r)||Mt.string(r.language)||Mt.string(r.scheme)||Mt.string(r.pattern)}t.is=e})(Fp||(y.TextDocumentFilter=Fp={}));var $p;(function(t){function e(n){let r=n;return Mt.objectLiteral(r)&&(Mt.string(r.notebookType)||Mt.string(r.scheme)||Mt.string(r.pattern))}t.is=e})($p||(y.NotebookDocumentFilter=$p={}));var Bp;(function(t){function e(n){let r=n;return Mt.objectLiteral(r)&&(Mt.string(r.notebook)||$p.is(r.notebook))&&(r.language===void 0||Mt.string(r.language))}t.is=e})(Bp||(y.NotebookCellTextDocumentFilter=Bp={}));var Up;(function(t){function e(n){if(!Array.isArray(n))return!1;for(let r of n)if(!Mt.string(r)&&!Fp.is(r)&&!Bp.is(r))return!1;return!0}t.is=e})(Up||(y.DocumentSelector=Up={}));var HT;(function(t){t.method="client/registerCapability",t.messageDirection=G.MessageDirection.serverToClient,t.type=new G.ProtocolRequestType(t.method)})(HT||(y.RegistrationRequest=HT={}));var WT;(function(t){t.method="client/unregisterCapability",t.messageDirection=G.MessageDirection.serverToClient,t.type=new G.ProtocolRequestType(t.method)})(WT||(y.UnregistrationRequest=WT={}));var GT;(function(t){t.Create="create",t.Rename="rename",t.Delete="delete"})(GT||(y.ResourceOperationKind=GT={}));var KT;(function(t){t.Abort="abort",t.Transactional="transactional",t.TextOnlyTransactional="textOnlyTransactional",t.Undo="undo"})(KT||(y.FailureHandlingKind=KT={}));var VT;(function(t){t.UTF8="utf-8",t.UTF16="utf-16",t.UTF32="utf-32"})(VT||(y.PositionEncodingKind=VT={}));var zT;(function(t){function e(n){let r=n;return r&&Mt.string(r.id)&&r.id.length>0}t.hasId=e})(zT||(y.StaticRegistrationOptions=zT={}));var XT;(function(t){function e(n){let r=n;return r&&(r.documentSelector===null||Up.is(r.documentSelector))}t.is=e})(XT||(y.TextDocumentRegistrationOptions=XT={}));var YT;(function(t){function e(r){let i=r;return Mt.objectLiteral(i)&&(i.workDoneProgress===void 0||Mt.boolean(i.workDoneProgress))}t.is=e;function n(r){let i=r;return i&&Mt.boolean(i.workDoneProgress)}t.hasWorkDoneProgress=n})(YT||(y.WorkDoneProgressOptions=YT={}));var JT;(function(t){t.method="initialize",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(JT||(y.InitializeRequest=JT={}));var QT;(function(t){t.unknownProtocolVersion=1})(QT||(y.InitializeErrorCodes=QT={}));var ZT;(function(t){t.method="initialized",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolNotificationType(t.method)})(ZT||(y.InitializedNotification=ZT={}));var eS;(function(t){t.method="shutdown",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType0(t.method)})(eS||(y.ShutdownRequest=eS={}));var tS;(function(t){t.method="exit",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolNotificationType0(t.method)})(tS||(y.ExitNotification=tS={}));var nS;(function(t){t.method="workspace/didChangeConfiguration",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolNotificationType(t.method)})(nS||(y.DidChangeConfigurationNotification=nS={}));var rS;(function(t){t.Error=1,t.Warning=2,t.Info=3,t.Log=4,t.Debug=5})(rS||(y.MessageType=rS={}));var iS;(function(t){t.method="window/showMessage",t.messageDirection=G.MessageDirection.serverToClient,t.type=new G.ProtocolNotificationType(t.method)})(iS||(y.ShowMessageNotification=iS={}));var sS;(function(t){t.method="window/showMessageRequest",t.messageDirection=G.MessageDirection.serverToClient,t.type=new G.ProtocolRequestType(t.method)})(sS||(y.ShowMessageRequest=sS={}));var oS;(function(t){t.method="window/logMessage",t.messageDirection=G.MessageDirection.serverToClient,t.type=new G.ProtocolNotificationType(t.method)})(oS||(y.LogMessageNotification=oS={}));var aS;(function(t){t.method="telemetry/event",t.messageDirection=G.MessageDirection.serverToClient,t.type=new G.ProtocolNotificationType(t.method)})(aS||(y.TelemetryEventNotification=aS={}));var uS;(function(t){t.None=0,t.Full=1,t.Incremental=2})(uS||(y.TextDocumentSyncKind=uS={}));var cS;(function(t){t.method="textDocument/didOpen",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolNotificationType(t.method)})(cS||(y.DidOpenTextDocumentNotification=cS={}));var lS;(function(t){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")}t.isIncremental=e;function n(r){let i=r;return i!=null&&typeof i.text=="string"&&i.range===void 0&&i.rangeLength===void 0}t.isFull=n})(lS||(y.TextDocumentContentChangeEvent=lS={}));var dS;(function(t){t.method="textDocument/didChange",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolNotificationType(t.method)})(dS||(y.DidChangeTextDocumentNotification=dS={}));var fS;(function(t){t.method="textDocument/didClose",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolNotificationType(t.method)})(fS||(y.DidCloseTextDocumentNotification=fS={}));var pS;(function(t){t.method="textDocument/didSave",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolNotificationType(t.method)})(pS||(y.DidSaveTextDocumentNotification=pS={}));var hS;(function(t){t.Manual=1,t.AfterDelay=2,t.FocusOut=3})(hS||(y.TextDocumentSaveReason=hS={}));var gS;(function(t){t.method="textDocument/willSave",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolNotificationType(t.method)})(gS||(y.WillSaveTextDocumentNotification=gS={}));var mS;(function(t){t.method="textDocument/willSaveWaitUntil",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(mS||(y.WillSaveTextDocumentWaitUntilRequest=mS={}));var yS;(function(t){t.method="workspace/didChangeWatchedFiles",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolNotificationType(t.method)})(yS||(y.DidChangeWatchedFilesNotification=yS={}));var bS;(function(t){t.Created=1,t.Changed=2,t.Deleted=3})(bS||(y.FileChangeType=bS={}));var vS;(function(t){function e(n){let r=n;return Mt.objectLiteral(r)&&(UT.URI.is(r.baseUri)||UT.WorkspaceFolder.is(r.baseUri))&&Mt.string(r.pattern)}t.is=e})(vS||(y.RelativePattern=vS={}));var _S;(function(t){t.Create=1,t.Change=2,t.Delete=4})(_S||(y.WatchKind=_S={}));var TS;(function(t){t.method="textDocument/publishDiagnostics",t.messageDirection=G.MessageDirection.serverToClient,t.type=new G.ProtocolNotificationType(t.method)})(TS||(y.PublishDiagnosticsNotification=TS={}));var SS;(function(t){t.Invoked=1,t.TriggerCharacter=2,t.TriggerForIncompleteCompletions=3})(SS||(y.CompletionTriggerKind=SS={}));var kS;(function(t){t.method="textDocument/completion",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(kS||(y.CompletionRequest=kS={}));var xS;(function(t){t.method="completionItem/resolve",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(xS||(y.CompletionResolveRequest=xS={}));var wS;(function(t){t.method="textDocument/hover",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(wS||(y.HoverRequest=wS={}));var ES;(function(t){t.Invoked=1,t.TriggerCharacter=2,t.ContentChange=3})(ES||(y.SignatureHelpTriggerKind=ES={}));var AS;(function(t){t.method="textDocument/signatureHelp",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(AS||(y.SignatureHelpRequest=AS={}));var OS;(function(t){t.method="textDocument/definition",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(OS||(y.DefinitionRequest=OS={}));var CS;(function(t){t.method="textDocument/references",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(CS||(y.ReferencesRequest=CS={}));var RS;(function(t){t.method="textDocument/documentHighlight",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(RS||(y.DocumentHighlightRequest=RS={}));var PS;(function(t){t.method="textDocument/documentSymbol",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(PS||(y.DocumentSymbolRequest=PS={}));var DS;(function(t){t.method="textDocument/codeAction",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(DS||(y.CodeActionRequest=DS={}));var IS;(function(t){t.method="codeAction/resolve",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(IS||(y.CodeActionResolveRequest=IS={}));var MS;(function(t){t.method="workspace/symbol",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(MS||(y.WorkspaceSymbolRequest=MS={}));var LS;(function(t){t.method="workspaceSymbol/resolve",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(LS||(y.WorkspaceSymbolResolveRequest=LS={}));var NS;(function(t){t.method="textDocument/codeLens",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(NS||(y.CodeLensRequest=NS={}));var qS;(function(t){t.method="codeLens/resolve",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(qS||(y.CodeLensResolveRequest=qS={}));var jS;(function(t){t.method="workspace/codeLens/refresh",t.messageDirection=G.MessageDirection.serverToClient,t.type=new G.ProtocolRequestType0(t.method)})(jS||(y.CodeLensRefreshRequest=jS={}));var FS;(function(t){t.method="textDocument/documentLink",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(FS||(y.DocumentLinkRequest=FS={}));var $S;(function(t){t.method="documentLink/resolve",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})($S||(y.DocumentLinkResolveRequest=$S={}));var BS;(function(t){t.method="textDocument/formatting",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(BS||(y.DocumentFormattingRequest=BS={}));var US;(function(t){t.method="textDocument/rangeFormatting",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(US||(y.DocumentRangeFormattingRequest=US={}));var HS;(function(t){t.method="textDocument/rangesFormatting",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(HS||(y.DocumentRangesFormattingRequest=HS={}));var WS;(function(t){t.method="textDocument/onTypeFormatting",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(WS||(y.DocumentOnTypeFormattingRequest=WS={}));var GS;(function(t){t.Identifier=1})(GS||(y.PrepareSupportDefaultBehavior=GS={}));var KS;(function(t){t.method="textDocument/rename",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(KS||(y.RenameRequest=KS={}));var VS;(function(t){t.method="textDocument/prepareRename",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(VS||(y.PrepareRenameRequest=VS={}));var zS;(function(t){t.method="workspace/executeCommand",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(zS||(y.ExecuteCommandRequest=zS={}));var XS;(function(t){t.method="workspace/applyEdit",t.messageDirection=G.MessageDirection.serverToClient,t.type=new G.ProtocolRequestType("workspace/applyEdit")})(XS||(y.ApplyWorkspaceEditRequest=XS={}))});var nk=g(cc=>{"use strict";Object.defineProperty(cc,"__esModule",{value:!0});cc.createProtocolConnection=void 0;var tk=Fi();function PO(t,e,n,r){return tk.ConnectionStrategy.is(r)&&(r={connectionStrategy:r}),(0,tk.createMessageConnection)(t,e,n,r)}cc.createProtocolConnection=PO});var ik=g(fn=>{"use strict";var DO=fn&&fn.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),lc=fn&&fn.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&DO(e,t,n)};Object.defineProperty(fn,"__esModule",{value:!0});fn.LSPErrorCodes=fn.createProtocolConnection=void 0;lc(Fi(),fn);lc(Vu(),fn);lc(nt(),fn);lc(ek(),fn);var IO=nk();Object.defineProperty(fn,"createProtocolConnection",{enumerable:!0,get:function(){return IO.createProtocolConnection}});var rk;(function(t){t.lspReservedErrorRangeStart=-32899,t.RequestFailed=-32803,t.ServerCancelled=-32802,t.ContentModified=-32801,t.RequestCancelled=-32800,t.lspReservedErrorRangeEnd=-32800})(rk||(fn.LSPErrorCodes=rk={}))});var yt=g(fr=>{"use strict";var MO=fr&&fr.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),sk=fr&&fr.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&MO(e,t,n)};Object.defineProperty(fr,"__esModule",{value:!0});fr.createProtocolConnection=void 0;var LO=Pp();sk(Pp(),fr);sk(ik(),fr);function NO(t,e,n,r){return(0,LO.createMessageConnection)(t,e,n,r)}fr.createProtocolConnection=NO});var zp=g(Rn=>{"use strict";Object.defineProperty(Rn,"__esModule",{value:!0});Rn.generateUuid=Rn.parse=Rn.isUUID=Rn.v4=Rn.empty=void 0;var Jo=class{constructor(e){this._value=e}asHex(){return this._value}equals(e){return this.asHex()===e.asHex()}},Qo=class t extends Jo{static _oneOf(e){return e[Math.floor(e.length*Math.random())]}static _randomHex(){return t._oneOf(t._chars)}constructor(){super([t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),"-",t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),"-","4",t._randomHex(),t._randomHex(),t._randomHex(),"-",t._oneOf(t._timeHighBits),t._randomHex(),t._randomHex(),t._randomHex(),"-",t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex()].join(""))}};Qo._chars=["0","1","2","3","4","5","6","6","7","8","9","a","b","c","d","e","f"];Qo._timeHighBits=["8","9","a","b"];Rn.empty=new Jo("00000000-0000-0000-0000-000000000000");function ok(){return new Qo}Rn.v4=ok;var qO=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;function ak(t){return qO.test(t)}Rn.isUUID=ak;function jO(t){if(!ak(t))throw new Error("invalid uuid");return new Jo(t)}Rn.parse=jO;function FO(){return ok().asHex()}Rn.generateUuid=FO});var uk=g(ai=>{"use strict";Object.defineProperty(ai,"__esModule",{value:!0});ai.attachPartialResult=ai.ProgressFeature=ai.attachWorkDone=void 0;var oi=yt(),$O=zp(),Bi=class t{constructor(e,n){this._connection=e,this._token=n,t.Instances.set(this._token,this)}begin(e,n,r,i){let s={kind:"begin",title:e,percentage:n,message:r,cancellable:i};this._connection.sendProgress(oi.WorkDoneProgress.type,this._token,s)}report(e,n){let r={kind:"report"};typeof e=="number"?(r.percentage=e,n!==void 0&&(r.message=n)):r.message=e,this._connection.sendProgress(oi.WorkDoneProgress.type,this._token,r)}done(){t.Instances.delete(this._token),this._connection.sendProgress(oi.WorkDoneProgress.type,this._token,{kind:"end"})}};Bi.Instances=new Map;var dc=class extends Bi{constructor(e,n){super(e,n),this._source=new oi.CancellationTokenSource}get token(){return this._source.token}done(){this._source.dispose(),super.done()}cancel(){this._source.cancel()}},Zo=class{constructor(){}begin(){}report(){}done(){}},fc=class extends Zo{constructor(){super(),this._source=new oi.CancellationTokenSource}get token(){return this._source.token}done(){this._source.dispose()}cancel(){this._source.cancel()}};function BO(t,e){if(e===void 0||e.workDoneToken===void 0)return new Zo;let n=e.workDoneToken;return delete e.workDoneToken,new Bi(t,n)}ai.attachWorkDone=BO;var UO=t=>class extends t{constructor(){super(),this._progressSupported=!1}initialize(e){super.initialize(e),e?.window?.workDoneProgress===!0&&(this._progressSupported=!0,this.connection.onNotification(oi.WorkDoneProgressCancelNotification.type,n=>{let r=Bi.Instances.get(n.token);(r instanceof dc||r instanceof fc)&&r.cancel()}))}attachWorkDoneProgress(e){return e===void 0?new Zo:new Bi(this.connection,e)}createWorkDoneProgress(){if(this._progressSupported){let e=(0,$O.generateUuid)();return this.connection.sendRequest(oi.WorkDoneProgressCreateRequest.type,{token:e}).then(()=>new dc(this.connection,e))}else return Promise.resolve(new fc)}};ai.ProgressFeature=UO;var Xp;(function(t){t.type=new oi.ProgressType})(Xp||(Xp={}));var Yp=class{constructor(e,n){this._connection=e,this._token=n}report(e){this._connection.sendProgress(Xp.type,this._token,e)}};function HO(t,e){if(e===void 0||e.partialResultToken===void 0)return;let n=e.partialResultToken;return delete e.partialResultToken,new Yp(t,n)}ai.attachPartialResult=HO});var ck=g(pc=>{"use strict";Object.defineProperty(pc,"__esModule",{value:!0});pc.ConfigurationFeature=void 0;var WO=yt(),GO=xu(),KO=t=>class extends t{getConfiguration(e){return e?GO.string(e)?this._getConfiguration({section:e}):this._getConfiguration(e):this._getConfiguration({})}_getConfiguration(e){let n={items:Array.isArray(e)?e:[e]};return this.connection.sendRequest(WO.ConfigurationRequest.type,n).then(r=>Array.isArray(r)?Array.isArray(e)?r:r[0]:Array.isArray(e)?[]:null)}};pc.ConfigurationFeature=KO});var lk=g(gc=>{"use strict";Object.defineProperty(gc,"__esModule",{value:!0});gc.WorkspaceFoldersFeature=void 0;var hc=yt(),VO=t=>class extends t{constructor(){super(),this._notificationIsAutoRegistered=!1}initialize(e){super.initialize(e);let n=e.workspace;n&&n.workspaceFolders&&(this._onDidChangeWorkspaceFolders=new hc.Emitter,this.connection.onNotification(hc.DidChangeWorkspaceFoldersNotification.type,r=>{this._onDidChangeWorkspaceFolders.fire(r.event)}))}fillServerCapabilities(e){super.fillServerCapabilities(e);let n=e.workspace?.workspaceFolders?.changeNotifications;this._notificationIsAutoRegistered=n===!0||typeof n=="string"}getWorkspaceFolders(){return this.connection.sendRequest(hc.WorkspaceFoldersRequest.type)}get onDidChangeWorkspaceFolders(){if(!this._onDidChangeWorkspaceFolders)throw new Error("Client doesn't support sending workspace folder change events.");return!this._notificationIsAutoRegistered&&!this._unregistration&&(this._unregistration=this.connection.client.register(hc.DidChangeWorkspaceFoldersNotification.type)),this._onDidChangeWorkspaceFolders.event}};gc.WorkspaceFoldersFeature=VO});var dk=g(mc=>{"use strict";Object.defineProperty(mc,"__esModule",{value:!0});mc.CallHierarchyFeature=void 0;var Jp=yt(),zO=t=>class extends t{get callHierarchy(){return{onPrepare:e=>this.connection.onRequest(Jp.CallHierarchyPrepareRequest.type,(n,r)=>e(n,r,this.attachWorkDoneProgress(n),void 0)),onIncomingCalls:e=>{let n=Jp.CallHierarchyIncomingCallsRequest.type;return this.connection.onRequest(n,(r,i)=>e(r,i,this.attachWorkDoneProgress(r),this.attachPartialResultProgress(n,r)))},onOutgoingCalls:e=>{let n=Jp.CallHierarchyOutgoingCallsRequest.type;return this.connection.onRequest(n,(r,i)=>e(r,i,this.attachWorkDoneProgress(r),this.attachPartialResultProgress(n,r)))}}}};mc.CallHierarchyFeature=zO});var Zp=g(ui=>{"use strict";Object.defineProperty(ui,"__esModule",{value:!0});ui.SemanticTokensBuilder=ui.SemanticTokensDiff=ui.SemanticTokensFeature=void 0;var yc=yt(),XO=t=>class extends t{get semanticTokens(){return{refresh:()=>this.connection.sendRequest(yc.SemanticTokensRefreshRequest.type),on:e=>{let n=yc.SemanticTokensRequest.type;return this.connection.onRequest(n,(r,i)=>e(r,i,this.attachWorkDoneProgress(r),this.attachPartialResultProgress(n,r)))},onDelta:e=>{let n=yc.SemanticTokensDeltaRequest.type;return this.connection.onRequest(n,(r,i)=>e(r,i,this.attachWorkDoneProgress(r),this.attachPartialResultProgress(n,r)))},onRange:e=>{let n=yc.SemanticTokensRangeRequest.type;return this.connection.onRequest(n,(r,i)=>e(r,i,this.attachWorkDoneProgress(r),this.attachPartialResultProgress(n,r)))}}}};ui.SemanticTokensFeature=XO;var bc=class{constructor(e,n){this.originalSequence=e,this.modifiedSequence=n}computeDiff(){let e=this.originalSequence.length,n=this.modifiedSequence.length,r=0;for(;r<n&&r<e&&this.originalSequence[r]===this.modifiedSequence[r];)r++;if(r<n&&r<e){let i=e-1,s=n-1;for(;i>=r&&s>=r&&this.originalSequence[i]===this.modifiedSequence[s];)i--,s--;(i<r||s<r)&&(i++,s++);let o=i-r+1,a=this.modifiedSequence.slice(r,s+1);return a.length===1&&a[0]===this.originalSequence[i]?[{start:r,deleteCount:o-1}]:[{start:r,deleteCount:o,data:a}]}else return r<n?[{start:r,deleteCount:0,data:this.modifiedSequence.slice(r)}]:r<e?[{start:r,deleteCount:e-r}]:[]}};ui.SemanticTokensDiff=bc;var Qp=class{constructor(){this._prevData=void 0,this.initialize()}initialize(){this._id=Date.now(),this._prevLine=0,this._prevChar=0,this._data=[],this._dataLen=0}push(e,n,r,i,s){let o=e,a=n;this._dataLen>0&&(o-=this._prevLine,o===0&&(a-=this._prevChar)),this._data[this._dataLen++]=o,this._data[this._dataLen++]=a,this._data[this._dataLen++]=r,this._data[this._dataLen++]=i,this._data[this._dataLen++]=s,this._prevLine=e,this._prevChar=n}get id(){return this._id.toString()}previousResult(e){this.id===e&&(this._prevData=this._data),this.initialize()}build(){return this._prevData=void 0,{resultId:this.id,data:this._data}}canBuildEdits(){return this._prevData!==void 0}buildEdits(){return this._prevData!==void 0?{resultId:this.id,edits:new bc(this._prevData,this._data).computeDiff()}:this.build()}};ui.SemanticTokensBuilder=Qp});var fk=g(vc=>{"use strict";Object.defineProperty(vc,"__esModule",{value:!0});vc.ShowDocumentFeature=void 0;var YO=yt(),JO=t=>class extends t{showDocument(e){return this.connection.sendRequest(YO.ShowDocumentRequest.type,e)}};vc.ShowDocumentFeature=JO});var pk=g(_c=>{"use strict";Object.defineProperty(_c,"__esModule",{value:!0});_c.FileOperationsFeature=void 0;var Bs=yt(),QO=t=>class extends t{onDidCreateFiles(e){return this.connection.onNotification(Bs.DidCreateFilesNotification.type,n=>{e(n)})}onDidRenameFiles(e){return this.connection.onNotification(Bs.DidRenameFilesNotification.type,n=>{e(n)})}onDidDeleteFiles(e){return this.connection.onNotification(Bs.DidDeleteFilesNotification.type,n=>{e(n)})}onWillCreateFiles(e){return this.connection.onRequest(Bs.WillCreateFilesRequest.type,(n,r)=>e(n,r))}onWillRenameFiles(e){return this.connection.onRequest(Bs.WillRenameFilesRequest.type,(n,r)=>e(n,r))}onWillDeleteFiles(e){return this.connection.onRequest(Bs.WillDeleteFilesRequest.type,(n,r)=>e(n,r))}};_c.FileOperationsFeature=QO});var hk=g(Tc=>{"use strict";Object.defineProperty(Tc,"__esModule",{value:!0});Tc.LinkedEditingRangeFeature=void 0;var ZO=yt(),eC=t=>class extends t{onLinkedEditingRange(e){return this.connection.onRequest(ZO.LinkedEditingRangeRequest.type,(n,r)=>e(n,r,this.attachWorkDoneProgress(n),void 0))}};Tc.LinkedEditingRangeFeature=eC});var gk=g(Sc=>{"use strict";Object.defineProperty(Sc,"__esModule",{value:!0});Sc.TypeHierarchyFeature=void 0;var eh=yt(),tC=t=>class extends t{get typeHierarchy(){return{onPrepare:e=>this.connection.onRequest(eh.TypeHierarchyPrepareRequest.type,(n,r)=>e(n,r,this.attachWorkDoneProgress(n),void 0)),onSupertypes:e=>{let n=eh.TypeHierarchySupertypesRequest.type;return this.connection.onRequest(n,(r,i)=>e(r,i,this.attachWorkDoneProgress(r),this.attachPartialResultProgress(n,r)))},onSubtypes:e=>{let n=eh.TypeHierarchySubtypesRequest.type;return this.connection.onRequest(n,(r,i)=>e(r,i,this.attachWorkDoneProgress(r),this.attachPartialResultProgress(n,r)))}}}};Sc.TypeHierarchyFeature=tC});var yk=g(kc=>{"use strict";Object.defineProperty(kc,"__esModule",{value:!0});kc.InlineValueFeature=void 0;var mk=yt(),nC=t=>class extends t{get inlineValue(){return{refresh:()=>this.connection.sendRequest(mk.InlineValueRefreshRequest.type),on:e=>this.connection.onRequest(mk.InlineValueRequest.type,(n,r)=>e(n,r,this.attachWorkDoneProgress(n)))}}};kc.InlineValueFeature=nC});var vk=g(xc=>{"use strict";Object.defineProperty(xc,"__esModule",{value:!0});xc.FoldingRangeFeature=void 0;var bk=yt(),rC=t=>class extends t{get foldingRange(){return{refresh:()=>this.connection.sendRequest(bk.FoldingRangeRefreshRequest.type),on:e=>{let n=bk.FoldingRangeRequest.type;return this.connection.onRequest(n,(r,i)=>e(r,i,this.attachWorkDoneProgress(r),this.attachPartialResultProgress(n,r)))}}}};xc.FoldingRangeFeature=rC});var _k=g(wc=>{"use strict";Object.defineProperty(wc,"__esModule",{value:!0});wc.InlayHintFeature=void 0;var th=yt(),iC=t=>class extends t{get inlayHint(){return{refresh:()=>this.connection.sendRequest(th.InlayHintRefreshRequest.type),on:e=>this.connection.onRequest(th.InlayHintRequest.type,(n,r)=>e(n,r,this.attachWorkDoneProgress(n))),resolve:e=>this.connection.onRequest(th.InlayHintResolveRequest.type,(n,r)=>e(n,r))}}};wc.InlayHintFeature=iC});var Tk=g(Ec=>{"use strict";Object.defineProperty(Ec,"__esModule",{value:!0});Ec.DiagnosticFeature=void 0;var ea=yt(),sC=t=>class extends t{get diagnostics(){return{refresh:()=>this.connection.sendRequest(ea.DiagnosticRefreshRequest.type),on:e=>this.connection.onRequest(ea.DocumentDiagnosticRequest.type,(n,r)=>e(n,r,this.attachWorkDoneProgress(n),this.attachPartialResultProgress(ea.DocumentDiagnosticRequest.partialResult,n))),onWorkspace:e=>this.connection.onRequest(ea.WorkspaceDiagnosticRequest.type,(n,r)=>e(n,r,this.attachWorkDoneProgress(n),this.attachPartialResultProgress(ea.WorkspaceDiagnosticRequest.partialResult,n)))}}};Ec.DiagnosticFeature=sC});var rh=g(Ac=>{"use strict";Object.defineProperty(Ac,"__esModule",{value:!0});Ac.TextDocuments=void 0;var Ui=yt(),nh=class{constructor(e){this._configuration=e,this._syncedDocuments=new Map,this._onDidChangeContent=new Ui.Emitter,this._onDidOpen=new Ui.Emitter,this._onDidClose=new Ui.Emitter,this._onDidSave=new Ui.Emitter,this._onWillSave=new Ui.Emitter}get onDidOpen(){return this._onDidOpen.event}get onDidChangeContent(){return this._onDidChangeContent.event}get onWillSave(){return this._onWillSave.event}onWillSaveWaitUntil(e){this._willSaveWaitUntil=e}get onDidSave(){return this._onDidSave.event}get onDidClose(){return this._onDidClose.event}get(e){return this._syncedDocuments.get(e)}all(){return Array.from(this._syncedDocuments.values())}keys(){return Array.from(this._syncedDocuments.keys())}listen(e){e.__textDocumentSync=Ui.TextDocumentSyncKind.Incremental;let n=[];return n.push(e.onDidOpenTextDocument(r=>{let i=r.textDocument,s=this._configuration.create(i.uri,i.languageId,i.version,i.text);this._syncedDocuments.set(i.uri,s);let o=Object.freeze({document:s});this._onDidOpen.fire(o),this._onDidChangeContent.fire(o)})),n.push(e.onDidChangeTextDocument(r=>{let i=r.textDocument,s=r.contentChanges;if(s.length===0)return;let{version:o}=i;if(o==null)throw new Error(`Received document change event for ${i.uri} without valid version identifier`);let a=this._syncedDocuments.get(i.uri);a!==void 0&&(a=this._configuration.update(a,s,o),this._syncedDocuments.set(i.uri,a),this._onDidChangeContent.fire(Object.freeze({document:a})))})),n.push(e.onDidCloseTextDocument(r=>{let i=this._syncedDocuments.get(r.textDocument.uri);i!==void 0&&(this._syncedDocuments.delete(r.textDocument.uri),this._onDidClose.fire(Object.freeze({document:i})))})),n.push(e.onWillSaveTextDocument(r=>{let i=this._syncedDocuments.get(r.textDocument.uri);i!==void 0&&this._onWillSave.fire(Object.freeze({document:i,reason:r.reason}))})),n.push(e.onWillSaveTextDocumentWaitUntil((r,i)=>{let s=this._syncedDocuments.get(r.textDocument.uri);return s!==void 0&&this._willSaveWaitUntil?this._willSaveWaitUntil(Object.freeze({document:s,reason:r.reason}),i):[]})),n.push(e.onDidSaveTextDocument(r=>{let i=this._syncedDocuments.get(r.textDocument.uri);i!==void 0&&this._onDidSave.fire(Object.freeze({document:i}))})),Ui.Disposable.create(()=>{n.forEach(r=>r.dispose())})}};Ac.TextDocuments=nh});var sh=g(Us=>{"use strict";Object.defineProperty(Us,"__esModule",{value:!0});Us.NotebookDocuments=Us.NotebookSyncFeature=void 0;var Pn=yt(),Sk=rh(),oC=t=>class extends t{get synchronization(){return{onDidOpenNotebookDocument:e=>this.connection.onNotification(Pn.DidOpenNotebookDocumentNotification.type,n=>{e(n)}),onDidChangeNotebookDocument:e=>this.connection.onNotification(Pn.DidChangeNotebookDocumentNotification.type,n=>{e(n)}),onDidSaveNotebookDocument:e=>this.connection.onNotification(Pn.DidSaveNotebookDocumentNotification.type,n=>{e(n)}),onDidCloseNotebookDocument:e=>this.connection.onNotification(Pn.DidCloseNotebookDocumentNotification.type,n=>{e(n)})}}};Us.NotebookSyncFeature=oC;var Oc=class t{onDidOpenTextDocument(e){return this.openHandler=e,Pn.Disposable.create(()=>{this.openHandler=void 0})}openTextDocument(e){this.openHandler&&this.openHandler(e)}onDidChangeTextDocument(e){return this.changeHandler=e,Pn.Disposable.create(()=>{this.changeHandler=e})}changeTextDocument(e){this.changeHandler&&this.changeHandler(e)}onDidCloseTextDocument(e){return this.closeHandler=e,Pn.Disposable.create(()=>{this.closeHandler=void 0})}closeTextDocument(e){this.closeHandler&&this.closeHandler(e)}onWillSaveTextDocument(){return t.NULL_DISPOSE}onWillSaveTextDocumentWaitUntil(){return t.NULL_DISPOSE}onDidSaveTextDocument(){return t.NULL_DISPOSE}};Oc.NULL_DISPOSE=Object.freeze({dispose:()=>{}});var ih=class{constructor(e){e instanceof Sk.TextDocuments?this._cellTextDocuments=e:this._cellTextDocuments=new Sk.TextDocuments(e),this.notebookDocuments=new Map,this.notebookCellMap=new Map,this._onDidOpen=new Pn.Emitter,this._onDidChange=new Pn.Emitter,this._onDidSave=new Pn.Emitter,this._onDidClose=new Pn.Emitter}get cellTextDocuments(){return this._cellTextDocuments}getCellTextDocument(e){return this._cellTextDocuments.get(e.document)}getNotebookDocument(e){return this.notebookDocuments.get(e)}getNotebookCell(e){let n=this.notebookCellMap.get(e);return n&&n[0]}findNotebookDocumentForCell(e){let n=typeof e=="string"?e:e.document,r=this.notebookCellMap.get(n);return r&&r[1]}get onDidOpen(){return this._onDidOpen.event}get onDidSave(){return this._onDidSave.event}get onDidChange(){return this._onDidChange.event}get onDidClose(){return this._onDidClose.event}listen(e){let n=new Oc,r=[];return r.push(this.cellTextDocuments.listen(n)),r.push(e.notebooks.synchronization.onDidOpenNotebookDocument(i=>{this.notebookDocuments.set(i.notebookDocument.uri,i.notebookDocument);for(let s of i.cellTextDocuments)n.openTextDocument({textDocument:s});this.updateCellMap(i.notebookDocument),this._onDidOpen.fire(i.notebookDocument)})),r.push(e.notebooks.synchronization.onDidChangeNotebookDocument(i=>{let s=this.notebookDocuments.get(i.notebookDocument.uri);if(s===void 0)return;s.version=i.notebookDocument.version;let o=s.metadata,a=!1,u=i.change;u.metadata!==void 0&&(a=!0,s.metadata=u.metadata);let c=[],l=[],d=[],p=[];if(u.cells!==void 0){let M=u.cells;if(M.structure!==void 0){let x=M.structure.array;if(s.cells.splice(x.start,x.deleteCount,...x.cells!==void 0?x.cells:[]),M.structure.didOpen!==void 0)for(let k of M.structure.didOpen)n.openTextDocument({textDocument:k}),c.push(k.uri);if(M.structure.didClose)for(let k of M.structure.didClose)n.closeTextDocument({textDocument:k}),l.push(k.uri)}if(M.data!==void 0){let x=new Map(M.data.map(k=>[k.document,k]));for(let k=0;k<=s.cells.length;k++){let v=x.get(s.cells[k].document);if(v!==void 0){let F=s.cells.splice(k,1,v);if(d.push({old:F[0],new:v}),x.delete(v.document),x.size===0)break}}}if(M.textContent!==void 0)for(let x of M.textContent)n.changeTextDocument({textDocument:x.document,contentChanges:x.changes}),p.push(x.document.uri)}this.updateCellMap(s);let b={notebookDocument:s};a&&(b.metadata={old:o,new:s.metadata});let _=[];for(let M of c)_.push(this.getNotebookCell(M));let E=[];for(let M of l)E.push(this.getNotebookCell(M));let L=[];for(let M of p)L.push(this.getNotebookCell(M));(_.length>0||E.length>0||d.length>0||L.length>0)&&(b.cells={added:_,removed:E,changed:{data:d,textContent:L}}),(b.metadata!==void 0||b.cells!==void 0)&&this._onDidChange.fire(b)})),r.push(e.notebooks.synchronization.onDidSaveNotebookDocument(i=>{let s=this.notebookDocuments.get(i.notebookDocument.uri);s!==void 0&&this._onDidSave.fire(s)})),r.push(e.notebooks.synchronization.onDidCloseNotebookDocument(i=>{let s=this.notebookDocuments.get(i.notebookDocument.uri);if(s!==void 0){this._onDidClose.fire(s);for(let o of i.cellTextDocuments)n.closeTextDocument({textDocument:o});this.notebookDocuments.delete(i.notebookDocument.uri);for(let o of s.cells)this.notebookCellMap.delete(o.document)}})),Pn.Disposable.create(()=>{r.forEach(i=>i.dispose())})}updateCellMap(e){for(let n of e.cells)this.notebookCellMap.set(n.document,[n,e])}};Us.NotebookDocuments=ih});var kk=g(Cc=>{"use strict";Object.defineProperty(Cc,"__esModule",{value:!0});Cc.MonikerFeature=void 0;var aC=yt(),uC=t=>class extends t{get moniker(){return{on:e=>{let n=aC.MonikerRequest.type;return this.connection.onRequest(n,(r,i)=>e(r,i,this.attachWorkDoneProgress(r),this.attachPartialResultProgress(n,r)))}}}};Cc.MonikerFeature=uC});var dh=g(De=>{"use strict";Object.defineProperty(De,"__esModule",{value:!0});De.createConnection=De.combineFeatures=De.combineNotebooksFeatures=De.combineLanguagesFeatures=De.combineWorkspaceFeatures=De.combineWindowFeatures=De.combineClientFeatures=De.combineTracerFeatures=De.combineTelemetryFeatures=De.combineConsoleFeatures=De._NotebooksImpl=De._LanguagesImpl=De.BulkUnregistration=De.BulkRegistration=De.ErrorMessageTracker=void 0;var X=yt(),Dn=xu(),ah=zp(),ge=uk(),cC=ck(),lC=lk(),dC=dk(),fC=Zp(),pC=fk(),hC=pk(),gC=hk(),mC=gk(),yC=yk(),bC=vk(),vC=_k(),_C=Tk(),TC=sh(),SC=kk();function oh(t){if(t!==null)return t}var uh=class{constructor(){this._messages=Object.create(null)}add(e){let n=this._messages[e];n||(n=0),n++,this._messages[e]=n}sendErrors(e){Object.keys(this._messages).forEach(n=>{e.window.showErrorMessage(n)})}};De.ErrorMessageTracker=uh;var Rc=class{constructor(){}rawAttach(e){this._rawConnection=e}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}fillServerCapabilities(e){}initialize(e){}error(e){this.send(X.MessageType.Error,e)}warn(e){this.send(X.MessageType.Warning,e)}info(e){this.send(X.MessageType.Info,e)}log(e){this.send(X.MessageType.Log,e)}debug(e){this.send(X.MessageType.Debug,e)}send(e,n){this._rawConnection&&this._rawConnection.sendNotification(X.LogMessageNotification.type,{type:e,message:n}).catch(()=>{(0,X.RAL)().console.error("Sending log message failed")})}},ch=class{constructor(){}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}showErrorMessage(e,...n){let r={type:X.MessageType.Error,message:e,actions:n};return this.connection.sendRequest(X.ShowMessageRequest.type,r).then(oh)}showWarningMessage(e,...n){let r={type:X.MessageType.Warning,message:e,actions:n};return this.connection.sendRequest(X.ShowMessageRequest.type,r).then(oh)}showInformationMessage(e,...n){let r={type:X.MessageType.Info,message:e,actions:n};return this.connection.sendRequest(X.ShowMessageRequest.type,r).then(oh)}},xk=(0,pC.ShowDocumentFeature)((0,ge.ProgressFeature)(ch)),wk;(function(t){function e(){return new Pc}t.create=e})(wk||(De.BulkRegistration=wk={}));var Pc=class{constructor(){this._registrations=[],this._registered=new Set}add(e,n){let r=Dn.string(e)?e:e.method;if(this._registered.has(r))throw new Error(`${r} is already added to this registration`);let i=ah.generateUuid();this._registrations.push({id:i,method:r,registerOptions:n||{}}),this._registered.add(r)}asRegistrationParams(){return{registrations:this._registrations}}},Ek;(function(t){function e(){return new ta(void 0,[])}t.create=e})(Ek||(De.BulkUnregistration=Ek={}));var ta=class{constructor(e,n){this._connection=e,this._unregistrations=new Map,n.forEach(r=>{this._unregistrations.set(r.method,r)})}get isAttached(){return!!this._connection}attach(e){this._connection=e}add(e){this._unregistrations.set(e.method,e)}dispose(){let e=[];for(let r of this._unregistrations.values())e.push(r);let n={unregisterations:e};this._connection.sendRequest(X.UnregistrationRequest.type,n).catch(()=>{this._connection.console.info("Bulk unregistration failed.")})}disposeSingle(e){let n=Dn.string(e)?e:e.method,r=this._unregistrations.get(n);if(!r)return!1;let i={unregisterations:[r]};return this._connection.sendRequest(X.UnregistrationRequest.type,i).then(()=>{this._unregistrations.delete(n)},s=>{this._connection.console.info(`Un-registering request handler for ${r.id} failed.`)}),!0}},Dc=class{attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}register(e,n,r){return e instanceof Pc?this.registerMany(e):e instanceof ta?this.registerSingle1(e,n,r):this.registerSingle2(e,n)}registerSingle1(e,n,r){let i=Dn.string(n)?n:n.method,s=ah.generateUuid(),o={registrations:[{id:s,method:i,registerOptions:r||{}}]};return e.isAttached||e.attach(this.connection),this.connection.sendRequest(X.RegistrationRequest.type,o).then(a=>(e.add({id:s,method:i}),e),a=>(this.connection.console.info(`Registering request handler for ${i} failed.`),Promise.reject(a)))}registerSingle2(e,n){let r=Dn.string(e)?e:e.method,i=ah.generateUuid(),s={registrations:[{id:i,method:r,registerOptions:n||{}}]};return this.connection.sendRequest(X.RegistrationRequest.type,s).then(o=>X.Disposable.create(()=>{this.unregisterSingle(i,r).catch(()=>{this.connection.console.info(`Un-registering capability with id ${i} failed.`)})}),o=>(this.connection.console.info(`Registering request handler for ${r} failed.`),Promise.reject(o)))}unregisterSingle(e,n){let r={unregisterations:[{id:e,method:n}]};return this.connection.sendRequest(X.UnregistrationRequest.type,r).catch(()=>{this.connection.console.info(`Un-registering request handler for ${e} failed.`)})}registerMany(e){let n=e.asRegistrationParams();return this.connection.sendRequest(X.RegistrationRequest.type,n).then(()=>new ta(this._connection,n.registrations.map(r=>({id:r.id,method:r.method}))),r=>(this.connection.console.info("Bulk registration failed."),Promise.reject(r)))}},lh=class{constructor(){}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}applyEdit(e){function n(i){return i&&!!i.edit}let r=n(e)?e:{edit:e};return this.connection.sendRequest(X.ApplyWorkspaceEditRequest.type,r)}},Ak=(0,hC.FileOperationsFeature)((0,lC.WorkspaceFoldersFeature)((0,cC.ConfigurationFeature)(lh))),Ic=class{constructor(){this._trace=X.Trace.Off}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}set trace(e){this._trace=e}log(e,n){this._trace!==X.Trace.Off&&this.connection.sendNotification(X.LogTraceNotification.type,{message:e,verbose:this._trace===X.Trace.Verbose?n:void 0}).catch(()=>{})}},Mc=class{constructor(){}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}logEvent(e){this.connection.sendNotification(X.TelemetryEventNotification.type,e).catch(()=>{this.connection.console.log("Sending TelemetryEventNotification failed")})}},Lc=class{constructor(){}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}attachWorkDoneProgress(e){return(0,ge.attachWorkDone)(this.connection,e)}attachPartialResultProgress(e,n){return(0,ge.attachPartialResult)(this.connection,n)}};De._LanguagesImpl=Lc;var Ok=(0,bC.FoldingRangeFeature)((0,SC.MonikerFeature)((0,_C.DiagnosticFeature)((0,vC.InlayHintFeature)((0,yC.InlineValueFeature)((0,mC.TypeHierarchyFeature)((0,gC.LinkedEditingRangeFeature)((0,fC.SemanticTokensFeature)((0,dC.CallHierarchyFeature)(Lc))))))))),Nc=class{constructor(){}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}attachWorkDoneProgress(e){return(0,ge.attachWorkDone)(this.connection,e)}attachPartialResultProgress(e,n){return(0,ge.attachPartialResult)(this.connection,n)}};De._NotebooksImpl=Nc;var Ck=(0,TC.NotebookSyncFeature)(Nc);function Rk(t,e){return function(n){return e(t(n))}}De.combineConsoleFeatures=Rk;function Pk(t,e){return function(n){return e(t(n))}}De.combineTelemetryFeatures=Pk;function Dk(t,e){return function(n){return e(t(n))}}De.combineTracerFeatures=Dk;function Ik(t,e){return function(n){return e(t(n))}}De.combineClientFeatures=Ik;function Mk(t,e){return function(n){return e(t(n))}}De.combineWindowFeatures=Mk;function Lk(t,e){return function(n){return e(t(n))}}De.combineWorkspaceFeatures=Lk;function Nk(t,e){return function(n){return e(t(n))}}De.combineLanguagesFeatures=Nk;function qk(t,e){return function(n){return e(t(n))}}De.combineNotebooksFeatures=qk;function kC(t,e){function n(i,s,o){return i&&s?o(i,s):i||s}return{__brand:"features",console:n(t.console,e.console,Rk),tracer:n(t.tracer,e.tracer,Dk),telemetry:n(t.telemetry,e.telemetry,Pk),client:n(t.client,e.client,Ik),window:n(t.window,e.window,Mk),workspace:n(t.workspace,e.workspace,Lk),languages:n(t.languages,e.languages,Nk),notebooks:n(t.notebooks,e.notebooks,qk)}}De.combineFeatures=kC;function xC(t,e,n){let r=n&&n.console?new(n.console(Rc)):new Rc,i=t(r);r.rawAttach(i);let s=n&&n.tracer?new(n.tracer(Ic)):new Ic,o=n&&n.telemetry?new(n.telemetry(Mc)):new Mc,a=n&&n.client?new(n.client(Dc)):new Dc,u=n&&n.window?new(n.window(xk)):new xk,c=n&&n.workspace?new(n.workspace(Ak)):new Ak,l=n&&n.languages?new(n.languages(Ok)):new Ok,d=n&&n.notebooks?new(n.notebooks(Ck)):new Ck,p=[r,s,o,a,u,c,l,d];function b(x){return x instanceof Promise?x:Dn.thenable(x)?new Promise((k,v)=>{x.then(F=>k(F),F=>v(F))}):Promise.resolve(x)}let _,E,L,M={listen:()=>i.listen(),sendRequest:(x,...k)=>i.sendRequest(Dn.string(x)?x:x.method,...k),onRequest:(x,k)=>i.onRequest(x,k),sendNotification:(x,k)=>{let v=Dn.string(x)?x:x.method;return i.sendNotification(v,k)},onNotification:(x,k)=>i.onNotification(x,k),onProgress:i.onProgress,sendProgress:i.sendProgress,onInitialize:x=>(E=x,{dispose:()=>{E=void 0}}),onInitialized:x=>i.onNotification(X.InitializedNotification.type,x),onShutdown:x=>(_=x,{dispose:()=>{_=void 0}}),onExit:x=>(L=x,{dispose:()=>{L=void 0}}),get console(){return r},get telemetry(){return o},get tracer(){return s},get client(){return a},get window(){return u},get workspace(){return c},get languages(){return l},get notebooks(){return d},onDidChangeConfiguration:x=>i.onNotification(X.DidChangeConfigurationNotification.type,x),onDidChangeWatchedFiles:x=>i.onNotification(X.DidChangeWatchedFilesNotification.type,x),__textDocumentSync:void 0,onDidOpenTextDocument:x=>i.onNotification(X.DidOpenTextDocumentNotification.type,x),onDidChangeTextDocument:x=>i.onNotification(X.DidChangeTextDocumentNotification.type,x),onDidCloseTextDocument:x=>i.onNotification(X.DidCloseTextDocumentNotification.type,x),onWillSaveTextDocument:x=>i.onNotification(X.WillSaveTextDocumentNotification.type,x),onWillSaveTextDocumentWaitUntil:x=>i.onRequest(X.WillSaveTextDocumentWaitUntilRequest.type,x),onDidSaveTextDocument:x=>i.onNotification(X.DidSaveTextDocumentNotification.type,x),sendDiagnostics:x=>i.sendNotification(X.PublishDiagnosticsNotification.type,x),onHover:x=>i.onRequest(X.HoverRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),void 0)),onCompletion:x=>i.onRequest(X.CompletionRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onCompletionResolve:x=>i.onRequest(X.CompletionResolveRequest.type,x),onSignatureHelp:x=>i.onRequest(X.SignatureHelpRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),void 0)),onDeclaration:x=>i.onRequest(X.DeclarationRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onDefinition:x=>i.onRequest(X.DefinitionRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onTypeDefinition:x=>i.onRequest(X.TypeDefinitionRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onImplementation:x=>i.onRequest(X.ImplementationRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onReferences:x=>i.onRequest(X.ReferencesRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onDocumentHighlight:x=>i.onRequest(X.DocumentHighlightRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onDocumentSymbol:x=>i.onRequest(X.DocumentSymbolRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onWorkspaceSymbol:x=>i.onRequest(X.WorkspaceSymbolRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onWorkspaceSymbolResolve:x=>i.onRequest(X.WorkspaceSymbolResolveRequest.type,x),onCodeAction:x=>i.onRequest(X.CodeActionRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onCodeActionResolve:x=>i.onRequest(X.CodeActionResolveRequest.type,(k,v)=>x(k,v)),onCodeLens:x=>i.onRequest(X.CodeLensRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onCodeLensResolve:x=>i.onRequest(X.CodeLensResolveRequest.type,(k,v)=>x(k,v)),onDocumentFormatting:x=>i.onRequest(X.DocumentFormattingRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),void 0)),onDocumentRangeFormatting:x=>i.onRequest(X.DocumentRangeFormattingRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),void 0)),onDocumentOnTypeFormatting:x=>i.onRequest(X.DocumentOnTypeFormattingRequest.type,(k,v)=>x(k,v)),onRenameRequest:x=>i.onRequest(X.RenameRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),void 0)),onPrepareRename:x=>i.onRequest(X.PrepareRenameRequest.type,(k,v)=>x(k,v)),onDocumentLinks:x=>i.onRequest(X.DocumentLinkRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onDocumentLinkResolve:x=>i.onRequest(X.DocumentLinkResolveRequest.type,(k,v)=>x(k,v)),onDocumentColor:x=>i.onRequest(X.DocumentColorRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onColorPresentation:x=>i.onRequest(X.ColorPresentationRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onFoldingRanges:x=>i.onRequest(X.FoldingRangeRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onSelectionRanges:x=>i.onRequest(X.SelectionRangeRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onExecuteCommand:x=>i.onRequest(X.ExecuteCommandRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),void 0)),dispose:()=>i.dispose()};for(let x of p)x.attach(M);return i.onRequest(X.InitializeRequest.type,x=>{e.initialize(x),Dn.string(x.trace)&&(s.trace=X.Trace.fromString(x.trace));for(let k of p)k.initialize(x.capabilities);if(E){let k=E(x,new X.CancellationTokenSource().token,(0,ge.attachWorkDone)(i,x),void 0);return b(k).then(v=>{if(v instanceof X.ResponseError)return v;let F=v;F||(F={capabilities:{}});let C=F.capabilities;C||(C={},F.capabilities=C),C.textDocumentSync===void 0||C.textDocumentSync===null?C.textDocumentSync=Dn.number(M.__textDocumentSync)?M.__textDocumentSync:X.TextDocumentSyncKind.None:!Dn.number(C.textDocumentSync)&&!Dn.number(C.textDocumentSync.change)&&(C.textDocumentSync.change=Dn.number(M.__textDocumentSync)?M.__textDocumentSync:X.TextDocumentSyncKind.None);for(let V of p)V.fillServerCapabilities(C);return F})}else{let k={capabilities:{textDocumentSync:X.TextDocumentSyncKind.None}};for(let v of p)v.fillServerCapabilities(k.capabilities);return k}}),i.onRequest(X.ShutdownRequest.type,()=>{if(e.shutdownReceived=!0,_)return _(new X.CancellationTokenSource().token)}),i.onNotification(X.ExitNotification.type,()=>{try{L&&L()}finally{e.shutdownReceived?e.exit(0):e.exit(1)}}),i.onNotification(X.SetTraceNotification.type,x=>{s.trace=X.Trace.fromString(x.value)}),M}De.createConnection=xC});var jk=g(pn=>{"use strict";Object.defineProperty(pn,"__esModule",{value:!0});pn.resolveModulePath=pn.FileSystem=pn.resolveGlobalYarnPath=pn.resolveGlobalNodePath=pn.resolve=pn.uriToFilePath=void 0;var wC=require("url"),Zn=require("path"),fh=require("fs"),mh=require("child_process");function EC(t){let e=wC.parse(t);if(e.protocol!=="file:"||!e.path)return;let n=e.path.split("/");for(var r=0,i=n.length;r<i;r++)n[r]=decodeURIComponent(n[r]);if(process.platform==="win32"&&n.length>1){let s=n[0],o=n[1];s.length===0&&o.length>1&&o[1]===":"&&n.shift()}return Zn.normalize(n.join("/"))}pn.uriToFilePath=EC;function ph(){return process.platform==="win32"}function qc(t,e,n,r){let i="NODE_PATH",s=["var p = process;","p.on('message',function(m){","if(m.c==='e'){","p.exit(0);","}","else if(m.c==='rs'){","try{","var r=require.resolve(m.a);","p.send({c:'r',s:true,r:r});","}","catch(err){","p.send({c:'r',s:false});","}","}","});"].join("");return new Promise((o,a)=>{let u=process.env,c=Object.create(null);Object.keys(u).forEach(l=>c[l]=u[l]),e&&fh.existsSync(e)&&(c[i]?c[i]=e+Zn.delimiter+c[i]:c[i]=e,r&&r(`NODE_PATH value is: ${c[i]}`)),c.ELECTRON_RUN_AS_NODE="1";try{let l=(0,mh.fork)("",[],{cwd:n,env:c,execArgv:["-e",s]});if(l.pid===void 0){a(new Error(`Starting process to resolve node module ${t} failed`));return}l.on("error",p=>{a(p)}),l.on("message",p=>{p.c==="r"&&(l.send({c:"e"}),p.s?o(p.r):a(new Error(`Failed to resolve module: ${t}`)))});let d={c:"rs",a:t};l.send(d)}catch(l){a(l)}})}pn.resolve=qc;function hh(t){let e="npm",n=Object.create(null);Object.keys(process.env).forEach(s=>n[s]=process.env[s]),n.NO_UPDATE_NOTIFIER="true";let r={encoding:"utf8",env:n};ph()&&(e="npm.cmd",r.shell=!0);let i=()=>{};try{process.on("SIGPIPE",i);let s=(0,mh.spawnSync)(e,["config","get","prefix"],r).stdout;if(!s){t&&t("'npm config get prefix' didn't return a value.");return}let o=s.trim();return t&&t(`'npm config get prefix' value is: ${o}`),o.length>0?ph()?Zn.join(o,"node_modules"):Zn.join(o,"lib","node_modules"):void 0}catch{return}finally{process.removeListener("SIGPIPE",i)}}pn.resolveGlobalNodePath=hh;function AC(t){let e="yarn",n={encoding:"utf8"};ph()&&(e="yarn.cmd",n.shell=!0);let r=()=>{};try{process.on("SIGPIPE",r);let i=(0,mh.spawnSync)(e,["global","dir","--json"],n),s=i.stdout;if(!s){t&&(t("'yarn global dir' didn't return a value."),i.stderr&&t(i.stderr));return}let o=s.trim().split(/\r?\n/);for(let a of o)try{let u=JSON.parse(a);if(u.type==="log")return Zn.join(u.data,"node_modules")}catch{}return}catch{return}finally{process.removeListener("SIGPIPE",r)}}pn.resolveGlobalYarnPath=AC;var gh;(function(t){let e;function n(){return e!==void 0||(process.platform==="win32"?e=!1:e=!fh.existsSync(__filename.toUpperCase())||!fh.existsSync(__filename.toLowerCase())),e}t.isCaseSensitive=n;function r(i,s){return n()?Zn.normalize(s).indexOf(Zn.normalize(i))===0:Zn.normalize(s).toLowerCase().indexOf(Zn.normalize(i).toLowerCase())===0}t.isParent=r})(gh||(pn.FileSystem=gh={}));function OC(t,e,n,r){return n?(Zn.isAbsolute(n)||(n=Zn.join(t,n)),qc(e,n,n,r).then(i=>gh.isParent(n,i)?i:Promise.reject(new Error(`Failed to load ${e} from node path location.`))).then(void 0,i=>qc(e,hh(r),t,r))):qc(e,hh(r),t,r)}pn.resolveModulePath=OC});var yh=g((S2,Fk)=>{"use strict";Fk.exports=yt()});var $k=g(jc=>{"use strict";Object.defineProperty(jc,"__esModule",{value:!0});jc.InlineCompletionFeature=void 0;var CC=yt(),RC=t=>class extends t{get inlineCompletion(){return{on:e=>this.connection.onRequest(CC.InlineCompletionRequest.type,(n,r)=>e(n,r,this.attachWorkDoneProgress(n)))}}};jc.InlineCompletionFeature=RC});var Hk=g(Vt=>{"use strict";var PC=Vt&&Vt.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),Uk=Vt&&Vt.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&PC(e,t,n)};Object.defineProperty(Vt,"__esModule",{value:!0});Vt.ProposedFeatures=Vt.NotebookDocuments=Vt.TextDocuments=Vt.SemanticTokensBuilder=void 0;var DC=Zp();Object.defineProperty(Vt,"SemanticTokensBuilder",{enumerable:!0,get:function(){return DC.SemanticTokensBuilder}});var IC=$k();Uk(yt(),Vt);var MC=rh();Object.defineProperty(Vt,"TextDocuments",{enumerable:!0,get:function(){return MC.TextDocuments}});var LC=sh();Object.defineProperty(Vt,"NotebookDocuments",{enumerable:!0,get:function(){return LC.NotebookDocuments}});Uk(dh(),Vt);var Bk;(function(t){t.all={__brand:"features",languages:IC.InlineCompletionFeature}})(Bk||(Vt.ProposedFeatures=Bk={}))});var Xk=g(In=>{"use strict";var NC=In&&In.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),Vk=In&&In.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&NC(e,t,n)};Object.defineProperty(In,"__esModule",{value:!0});In.createConnection=In.Files=void 0;var Wk=require("node:util"),bh=xu(),qC=dh(),na=jk(),Hi=yh();Vk(yh(),In);Vk(Hk(),In);var Gk;(function(t){t.uriToFilePath=na.uriToFilePath,t.resolveGlobalNodePath=na.resolveGlobalNodePath,t.resolveGlobalYarnPath=na.resolveGlobalYarnPath,t.resolve=na.resolve,t.resolveModulePath=na.resolveModulePath})(Gk||(In.Files=Gk={}));var Kk;function Fc(){if(Kk!==void 0)try{Kk.end()}catch{}}var Hs=!1,zk;function jC(){let t="--clientProcessId";function e(n){try{let r=parseInt(n);isNaN(r)||(zk=setInterval(()=>{try{process.kill(r,0)}catch{Fc(),process.exit(Hs?0:1)}},3e3))}catch{}}for(let n=2;n<process.argv.length;n++){let r=process.argv[n];if(r===t&&n+1<process.argv.length){e(process.argv[n+1]);return}else{let i=r.split("=");i[0]===t&&e(i[1])}}}jC();var FC={initialize:t=>{let e=t.processId;bh.number(e)&&zk===void 0&&setInterval(()=>{try{process.kill(e,0)}catch{process.exit(Hs?0:1)}},3e3)},get shutdownReceived(){return Hs},set shutdownReceived(t){Hs=t},exit:t=>{Fc(),process.exit(t)}};function $C(t,e,n,r){let i,s,o,a;return t!==void 0&&t.__brand==="features"&&(i=t,t=e,e=n,n=r),Hi.ConnectionStrategy.is(t)||Hi.ConnectionOptions.is(t)?a=t:(s=t,o=e,a=n),BC(s,o,a,i)}In.createConnection=$C;function BC(t,e,n,r){let i=!1;if(!t&&!e&&process.argv.length>2){let u,c,l=process.argv.slice(2);for(let d=0;d<l.length;d++){let p=l[d];if(p==="--node-ipc"){t=new Hi.IPCMessageReader(process),e=new Hi.IPCMessageWriter(process);break}else if(p==="--stdio"){i=!0,t=process.stdin,e=process.stdout;break}else if(p==="--socket"){u=parseInt(l[d+1]);break}else if(p==="--pipe"){c=l[d+1];break}else{var s=p.split("=");if(s[0]==="--socket"){u=parseInt(s[1]);break}else if(s[0]==="--pipe"){c=s[1];break}}}if(u){let d=(0,Hi.createServerSocketTransport)(u);t=d[0],e=d[1]}else if(c){let d=(0,Hi.createServerPipeTransport)(c);t=d[0],e=d[1]}}var o="Use arguments of createConnection or set command line parameters: '--node-ipc', '--stdio' or '--socket={number}'";if(!t)throw new Error("Connection input stream is not set. "+o);if(!e)throw new Error("Connection output stream is not set. "+o);if(bh.func(t.read)&&bh.func(t.on)){let u=t;u.on("end",()=>{Fc(),process.exit(Hs?0:1)}),u.on("close",()=>{Fc(),process.exit(Hs?0:1)})}let a=u=>{let c=(0,Hi.createProtocolConnection)(t,e,u,n);return i&&UC(u),c};return(0,qC.createConnection)(a,FC,r)}function UC(t){function e(r){return r.map(i=>typeof i=="string"?i:(0,Wk.inspect)(i)).join(" ")}let n=new Map;console.assert=function(i,...s){if(!i)if(s.length===0)t.error("Assertion failed");else{let[o,...a]=s;t.error(`Assertion failed: ${o} ${e(a)}`)}},console.count=function(i="default"){let s=String(i),o=n.get(s)??0;o+=1,n.set(s,o),t.log(`${s}: ${s}`)},console.countReset=function(i){i===void 0?n.clear():n.delete(String(i))},console.debug=function(...i){t.log(e(i))},console.dir=function(i,s){t.log((0,Wk.inspect)(i,s))},console.log=function(...i){t.log(e(i))},console.error=function(...i){t.error(e(i))},console.trace=function(...i){let s=new Error().stack.replace(/(.+\n){2}/,""),o="Trace";i.length!==0&&(o+=`: ${e(i)}`),t.log(`${o}
36
- ${s}`)},console.warn=function(...i){t.warn(e(i))}}});var vh=g((A2,Yk)=>{"use strict";Yk.exports=Xk()});var Ws=g(Nr=>{"use strict";Object.defineProperty(Nr,"__esModule",{value:!0});Nr.IndentationType=Nr.ConfigurationNamespace=Nr.LanguageId=void 0;Nr.LanguageId="miniscript";Nr.ConfigurationNamespace="miniscript";var HC;(function(t){t.Tab="Tab",t.Whitespace="Whitespace"})(HC=Nr.IndentationType||(Nr.IndentationType={}))});var ra=g($c=>{"use strict";Object.defineProperty($c,"__esModule",{value:!0});$c.Position=void 0;var _h=class{constructor(e,n){this.line=e,this.character=n}toString(){return`${this.line}:${this.character}`}};$c.Position=_h});var ci=g(Tn=>{"use strict";Object.defineProperty(Tn,"__esModule",{value:!0});Tn.LiteralToken=Tn.Token=Tn.BaseToken=Tn.BaseTokenOptions=Tn.TokenType=void 0;var Jk=ra(),WC;(function(t){t.EOF="EOF",t.StringLiteral="StringLiteral",t.Keyword="Keyword",t.Identifier="Identifier",t.NumericLiteral="NumericLiteral",t.Punctuator="Punctuator",t.BooleanLiteral="BooleanLiteral",t.NilLiteral="NilLiteral",t.EOL="EOL",t.SliceOperator="SliceOperator",t.Comment="Comment",t.Invalid="Invalid"})(WC=Tn.TokenType||(Tn.TokenType={}));var Th=class{};Tn.BaseTokenOptions=Th;var ia=class{constructor(e){this.type=e.type,this.value=e.value,this.line=e.line,this.lineStart=e.lineStart,this.range=e.range,this.lastLine=e.lastLine,this.lastLineStart=e.lastLineStart,this.afterSpace=e.afterSpace;let n=e.offsetRange,r=e.range;this.start=new Jk.Position(this.line,r[0]-n[0]+1),this.end=new Jk.Position(this.lastLine||this.line,r[1]-n[1]+1)}toString(){let e=this.line,n=this.lastLine!==void 0?this.lastLine:this.line,r=this.start.character,i=this.end.character,s=`${e}:${r} - ${n}:${i}`;return`${this.type}[${s}: value = '${this.value}']`}};Tn.BaseToken=ia;var Sh=class extends ia{};Tn.Token=Sh;var kh=class extends ia{constructor(e){super(e),this.raw=e.raw}toString(){let e=this.line,n=this.lastLine!==void 0?this.lastLine:this.line,r=this.start.character,i=this.end.character,s=`${e}:${r} - ${n}:${i}`;return`${this.type}[${s}: value = ${this.raw}]`}};Tn.LiteralToken=kh});var Bc=g(sa=>{"use strict";Object.defineProperty(sa,"__esModule",{value:!0});sa.CharacterCode=void 0;var GC;(function(t){t[t.WHITESPACE=32]="WHITESPACE",t[t.QUOTE=34]="QUOTE",t[t.NUMBER_0=48]="NUMBER_0",t[t.NUMBER_1=49]="NUMBER_1",t[t.NUMBER_2=50]="NUMBER_2",t[t.NUMBER_3=51]="NUMBER_3",t[t.NUMBER_4=52]="NUMBER_4",t[t.NUMBER_5=53]="NUMBER_5",t[t.NUMBER_6=54]="NUMBER_6",t[t.NUMBER_7=55]="NUMBER_7",t[t.NUMBER_8=56]="NUMBER_8",t[t.NUMBER_9=57]="NUMBER_9",t[t.TAB=9]="TAB",t[t.NEW_LINE=10]="NEW_LINE",t[t.RETURN_LINE=13]="RETURN_LINE",t[t.SLASH=47]="SLASH",t[t.DOT=46]="DOT",t[t.EQUAL=61]="EQUAL",t[t.ASTERISK=42]="ASTERISK",t[t.CARET=94]="CARET",t[t.PERCENT=37]="PERCENT",t[t.COMMA=44]="COMMA",t[t.CURLY_BRACKET_LEFT=123]="CURLY_BRACKET_LEFT",t[t.CURLY_BRACKET_RIGHT=125]="CURLY_BRACKET_RIGHT",t[t.SQUARE_BRACKETS_LEFT=91]="SQUARE_BRACKETS_LEFT",t[t.SQUARE_BRACKETS_RIGHT=93]="SQUARE_BRACKETS_RIGHT",t[t.PARENTHESIS_LEFT=40]="PARENTHESIS_LEFT",t[t.PARENTHESIS_RIGHT=41]="PARENTHESIS_RIGHT",t[t.SEMICOLON=59]="SEMICOLON",t[t.HASH=35]="HASH",t[t.MINUS=45]="MINUS",t[t.PLUS=43]="PLUS",t[t.EXCLAMATION_MARK=33]="EXCLAMATION_MARK",t[t.AT_SIGN=64]="AT_SIGN",t[t.COLON=58]="COLON",t[t.ARROW_LEFT=60]="ARROW_LEFT",t[t.ARROW_RIGHT=62]="ARROW_RIGHT",t[t.LETTER_E=69]="LETTER_E",t[t.LETTER_e=101]="LETTER_e"})(GC=sa.CharacterCode||(sa.CharacterCode={}))});var Gs=g(oa=>{"use strict";Object.defineProperty(oa,"__esModule",{value:!0});oa.Keyword=void 0;var KC;(function(t){t.If="if",t.In="in",t.Or="or",t.And="and",t.Isa="isa",t.For="for",t.Not="not",t.New="new",t.End="end",t.EndFor="end for",t.EndWhile="end while",t.EndFunction="end function",t.EndIf="end if",t.Then="then",t.Else="else",t.Break="break",t.While="while",t.ElseIf="else if",t.Return="return",t.Function="function",t.Continue="continue",t.Repeat="repeat"})(KC=oa.Keyword||(oa.Keyword={}))});var Eh=g(wh=>{"use strict";Object.defineProperty(wh,"__esModule",{value:!0});var Mn=Bc(),VC=Gs(),xh=class{constructor(){this.isKeyword=Set.prototype.has.bind(new Set(Object.values(VC.Keyword)))}isWhitespace(e){return Mn.CharacterCode.WHITESPACE===e||Mn.CharacterCode.TAB===e}isEndOfLine(e){return Mn.CharacterCode.NEW_LINE===e||Mn.CharacterCode.RETURN_LINE===e}isComment(e,n){return Mn.CharacterCode.SLASH===e&&Mn.CharacterCode.SLASH===n}isIdentifierStart(e){return(e|32)>=97&&(e|32)<=122||e>=128||e===95}isIdentifierPart(e){return(e|32)>=97&&(e|32)<=122||e>=48&&e<=57||e>=128||e===95}isDecDigit(e){return e>=Mn.CharacterCode.NUMBER_0&&e<=Mn.CharacterCode.NUMBER_9}isWinNewline(e,n){switch(e){case Mn.CharacterCode.RETURN_LINE:return Mn.CharacterCode.NEW_LINE===n;case Mn.CharacterCode.NEW_LINE:return Mn.CharacterCode.RETURN_LINE===n}return!1}};wh.default=xh});var Uc=g(Ks=>{"use strict";Object.defineProperty(Ks,"__esModule",{value:!0});Ks.ParserException=Ks.LexerException=void 0;var Ah=class extends Error{constructor(e,n){super(e),this.range=n}};Ks.LexerException=Ah;var Oh=class extends Error{constructor(e,n){super(e),this.range=n}};Ks.ParserException=Oh});var Ch=g(aa=>{"use strict";Object.defineProperty(aa,"__esModule",{value:!0});aa.Literal=void 0;var zC;(function(t){t.True="true",t.False="false",t.Null="null"})(zC=aa.Literal||(aa.Literal={}))});var Vs=g(ua=>{"use strict";Object.defineProperty(ua,"__esModule",{value:!0});ua.Operator=void 0;var XC;(function(t){t.Plus="+",t.Asterik="*",t.Minus="-",t.Slash="/",t.Power="^",t.Modulo="%",t.LessThan="<",t.GreaterThan=">",t.LessThanOrEqual="<=",t.GreaterThanOrEqual=">=",t.NotEqual="!=",t.Equal="==",t.Or="or",t.And="and",t.Not="not",t.Isa="isa",t.AddShorthand="+=",t.SubtractShorthand="-=",t.MultiplyShorthand="*=",t.DivideShorthand="/=",t.PowerShorthand="^=",t.ModuloShorthand="%=",t.Member=".",t.Assign="=",t.EndOfLine=";",t.EndOfFile="<eof>",t.SliceSeperator=":",t.Comma=",",t.Escape='"',t.SLBracket="[",t.SRBracket="]",t.CLBracket="{",t.CRBracket="}",t.LParenthesis="(",t.RParenthesis=")",t.Reference="@",t.New="new"})(XC=ua.Operator||(ua.Operator={}))});var ca=g(Hc=>{"use strict";Object.defineProperty(Hc,"__esModule",{value:!0});Hc.Range=void 0;var Rh=class{constructor(e,n){this.start=e,this.end=n}toString(){return`${this.start} - ${this.end}`}};Hc.Range=Rh});var Ih=g(Dh=>{"use strict";Object.defineProperty(Dh,"__esModule",{value:!0});var Ph=class{constructor(){this._head=null,this._tail=null,this._size=0}enqueue(e){let n={value:e};this._head?this._tail.next=n:this._head=n,this._tail=n,this._size++}dequeue(){let e=this._head.value;if(e)return this._head=this._head.next,this._size--,e}peek(){var e;return((e=this._head)===null||e===void 0?void 0:e.value)||null}clear(){this._head=null,this._tail=null,this._size=0}copyInto(e){this._head=e._head,this._tail=e._tail,this._size=e._size}get size(){return this._size}*[Symbol.iterator](){let e=this._head;for(;e;)yield e,e=e.next}};Dh.default=Ph});var Nh=g(da=>{"use strict";var Zk=da&&da.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(da,"__esModule",{value:!0});var rt=ci(),YC=Zk(Eh()),_e=Bc(),JC=Uc(),Mh=Gs(),la=Ch(),it=Vs(),zs=ra(),Lh=ca(),Qk=Zk(Ih());function li(t){let e=this.content[this.index];return this.index+=e.length,this.createPunctuator(e,t)}var Wc=class t{constructor(e,n={}){let r=this;r.content=e,r.length=e.length,r.index=0,r.tokenStart=null,r.tabWidth=n.tabWidth||1,r.line=1,r.lineStart=0,r.offset=0,r.validator=n.validator||new YC.default,r.unsafe=n.unsafe,r.errors=[],r.backlog=new Qk.default,r.snapshot=new Qk.default}scan(e,n){let r=t.scanHandlers[e];return r?r.call(this,n):this.validator.isDecDigit(e)?this.scanNumericLiteral(n):(this.index++,null)}isAtWhitespace(){return this.validator.isWhitespace(this.codeAt())}codeAt(e=0){let n=this.index+e;return n<this.length?this.content.charCodeAt(n):0}createEOL(e){let n=this,r=new rt.Token({type:rt.TokenType.EOL,value:it.Operator.EndOfLine,line:n.line,lineStart:n.lineStart,range:[n.tokenStart,n.index],offsetRange:[n.offset,n.offset],afterSpace:e});return n.snapshot.enqueue(r),r}createIdentifier(e,n){let r=this,i=new rt.Token({type:rt.TokenType.Identifier,value:e,line:r.line,lineStart:r.lineStart,range:[r.tokenStart,r.index],offsetRange:[r.offset,r.offset],afterSpace:n});return r.snapshot.enqueue(i),i}createEOF(e){let n=this,r=new rt.Token({type:rt.TokenType.EOF,value:it.Operator.EndOfFile,line:n.line,lineStart:n.lineStart,range:[n.index,n.index],offsetRange:[n.offset,n.offset],afterSpace:e});return n.snapshot.enqueue(r),r}createBoolean(e,n){let r=this,i=new rt.LiteralToken({type:rt.TokenType.BooleanLiteral,value:e===la.Literal.True,raw:e,line:r.line,lineStart:r.lineStart,range:[r.tokenStart,r.index],offsetRange:[r.offset,r.offset],afterSpace:n});return r.snapshot.enqueue(i),i}createNull(e){let n=this,r=new rt.LiteralToken({type:rt.TokenType.NilLiteral,value:null,raw:la.Literal.Null,line:n.line,lineStart:n.lineStart,range:[n.tokenStart,n.index],offsetRange:[n.offset,n.offset],afterSpace:e});return n.snapshot.enqueue(r),r}createSlice(e){let n=new rt.Token({type:rt.TokenType.SliceOperator,value:it.Operator.SliceSeperator,line:this.line,lineStart:this.lineStart,range:[this.tokenStart,this.index],offsetRange:[this.offset,this.offset],afterSpace:e});return this.snapshot.enqueue(n),n}createPunctuator(e,n){let r=new rt.Token({type:rt.TokenType.Punctuator,value:e,line:this.line,lineStart:this.lineStart,range:[this.tokenStart,this.index],offsetRange:[this.offset,this.offset],afterSpace:n});return this.snapshot.enqueue(r),r}createNumericLiteral(e,n,r){let i=new rt.LiteralToken({type:rt.TokenType.NumericLiteral,value:e,raw:n,line:this.line,lineStart:this.lineStart,range:[this.tokenStart,this.index],offsetRange:[this.offset,this.offset],afterSpace:r});return this.snapshot.enqueue(i),i}scanStringLiteral(e){let n=this,r=n.validator,i=n.line,s=n.lineStart,o=n.index,a=n.offset,u=n.offset,c=!1;for(;n.index<n.length;){n.index++;let b=n.codeAt();if(n.validator.isEndOfLine(b))r.isWinNewline(b,n.codeAt(1))&&n.index++,n.line++,u=n.index+1;else if(_e.CharacterCode.QUOTE===b){if(_e.CharacterCode.QUOTE!==n.codeAt(1)){c=!0;break}n.index++}}if(!c)return n.raise("Unexpected string end of file.",new Lh.Range(new zs.Position(i,o-a+1),new zs.Position(n.line,n.index-u+2)));n.index++;let l=n.content.slice(n.tokenStart,n.index),d=l.slice(1,-1).replace(/""/g,it.Operator.Escape),p=new rt.LiteralToken({type:rt.TokenType.StringLiteral,value:d,raw:l,line:i,lineStart:s,range:[n.tokenStart,n.index],offsetRange:[a,u],afterSpace:e,lastLine:n.line,lastLineStart:n.lineStart});return n.offset=u,n.snapshot.enqueue(p),p}scanComment(e){let n=this,r=n.validator,i=n.line,s=n.lineStart;for(;this.index<this.length&&!r.isEndOfLine(n.codeAt());n.index++);r.isWinNewline(n.codeAt(),n.codeAt(1))&&n.index++;let o=n.content.slice(n.tokenStart+2,n.index),a=new rt.Token({type:rt.TokenType.Comment,value:o,line:i,lineStart:s,range:[n.tokenStart,n.index],offsetRange:[n.offset,n.offset],afterSpace:e});return n.snapshot.enqueue(a),a}scanNumericLiteral(e){let n=this.validator,r,i;for(;this.index<this.length&&(r=i,i=this.codeAt(),n.isDecDigit(i)||_e.CharacterCode.DOT===i||_e.CharacterCode.LETTER_E===i||_e.CharacterCode.LETTER_e===i||(_e.CharacterCode.MINUS===i||_e.CharacterCode.PLUS===i)&&(_e.CharacterCode.LETTER_E===r||_e.CharacterCode.LETTER_e===r));)this.index++;let s=this.content.slice(this.tokenStart,this.index),o=Number(s);return isNaN(o)?this.raise(`Invalid numeric literal: ${s}`,new Lh.Range(new zs.Position(this.line,this.tokenStart-this.offset+1),new zs.Position(this.line,this.index-this.offset+1))):this.createNumericLiteral(o,s,e)}scanPunctuator(e,n){return this.index+=e.length,this.createPunctuator(e,n)}skipWhiteSpace(){let e=this;for(;e.index<e.length;e.index++){let n=e.content[e.index];if(n===" ")e.offset-=e.tabWidth-1;else if(n!==" ")return}}scanKeyword(e,n){let r=this,i=r.validator,s=e;switch(e){case Mh.Keyword.End:{for(r.index++;i.isIdentifierPart(r.codeAt());r.index++);s=r.content.slice(r.tokenStart,r.index);break}case Mh.Keyword.Else:{let a=r.content.slice(r.tokenStart,r.index+3);a===Mh.Keyword.ElseIf&&(r.index+=3,s=a);break}}let o=new rt.Token({type:rt.TokenType.Keyword,value:s,line:r.line,lineStart:r.lineStart,range:[r.tokenStart,r.index],offsetRange:[r.offset,r.offset],afterSpace:n});return r.snapshot.enqueue(o),o}scanIdentifierOrKeyword(e){let n=this,r=n.validator;for(n.index++;r.isIdentifierPart(n.codeAt());n.index++);let i=n.content.slice(n.tokenStart,n.index);if(r.isKeyword(i))return n.scanKeyword(i,e);switch(i){case la.Literal.True:case la.Literal.False:return n.createBoolean(i,e);case la.Literal.Null:return n.createNull(e)}return n.createIdentifier(i,e)}next(){let e=this;if(e.backlog.size)return e.backlog.dequeue();let n=e.index;e.skipWhiteSpace();let r=n<e.index,i=e.codeAt();if(e.validator.isComment(i,e.codeAt(1)))return e.tokenStart=e.index,e.scanComment(r);if(this.index>=this.length)return e.createEOF(r);if(e.tokenStart=e.index,e.validator.isEndOfLine(i)){e.validator.isWinNewline(i,e.codeAt(1))&&e.index++;let a=e.createEOL(r);return e.line++,e.offset=e.index+1,e.lineStart=++e.index,a}if(e.validator.isIdentifierStart(i))return e.scanIdentifierOrKeyword(r);let s=e.line,o=e.scan(i,r);return o||e.raise(`Invalid character ${i} (Code: ${String.fromCharCode(i)})`,new Lh.Range(new zs.Position(s,e.tokenStart-e.offset+1),new zs.Position(e.line,e.index-e.offset+1)))}recordSnapshot(){this.snapshot.clear()}recoverFromSnapshot(){this.backlog.copyInto(this.snapshot)}raise(e,n){let r=this,i=new JC.LexerException(e,n);if(r.errors.push(i),r.unsafe)return new rt.Token({type:rt.TokenType.Invalid,value:"",line:r.line,lineStart:r.lineStart,range:[r.tokenStart,r.index],offsetRange:[r.offset,r.offset]});throw i}};da.default=Wc;Wc.scanHandlers={[_e.CharacterCode.QUOTE]:function(e){return this.scanStringLiteral(e)},[_e.CharacterCode.DOT]:function(e){return this.validator.isDecDigit(this.codeAt(1))?this.scanNumericLiteral(e):(this.index++,this.createPunctuator(it.Operator.Member,e))},[_e.CharacterCode.EQUAL]:function(e){return _e.CharacterCode.EQUAL===this.codeAt(1)?this.scanPunctuator(it.Operator.Equal,e):this.scanPunctuator(it.Operator.Assign,e)},[_e.CharacterCode.ARROW_LEFT]:function(e){return _e.CharacterCode.EQUAL===this.codeAt(1)?this.scanPunctuator(it.Operator.LessThanOrEqual,e):this.scanPunctuator(it.Operator.LessThan,e)},[_e.CharacterCode.ARROW_RIGHT]:function(e){return _e.CharacterCode.EQUAL===this.codeAt(1)?this.scanPunctuator(it.Operator.GreaterThanOrEqual,e):this.scanPunctuator(it.Operator.GreaterThan,e)},[_e.CharacterCode.EXCLAMATION_MARK]:function(e){return _e.CharacterCode.EQUAL===this.codeAt(1)?this.scanPunctuator(it.Operator.NotEqual,e):(this.index++,null)},[_e.CharacterCode.MINUS]:function(e){return _e.CharacterCode.EQUAL===this.codeAt(1)?this.scanPunctuator(it.Operator.SubtractShorthand,e):this.scanPunctuator(it.Operator.Minus,e)},[_e.CharacterCode.PLUS]:function(e){return _e.CharacterCode.EQUAL===this.codeAt(1)?this.scanPunctuator(it.Operator.AddShorthand,e):this.scanPunctuator(it.Operator.Plus,e)},[_e.CharacterCode.ASTERISK]:function(e){return _e.CharacterCode.EQUAL===this.codeAt(1)?this.scanPunctuator(it.Operator.MultiplyShorthand,e):this.scanPunctuator(it.Operator.Asterik,e)},[_e.CharacterCode.SLASH]:function(e){return _e.CharacterCode.EQUAL===this.codeAt(1)?this.scanPunctuator(it.Operator.DivideShorthand,e):this.scanPunctuator(it.Operator.Slash,e)},[_e.CharacterCode.COLON]:function(e){return this.index++,this.createSlice(e)},[_e.CharacterCode.CARET]:function(e){return _e.CharacterCode.EQUAL===this.codeAt(1)?this.scanPunctuator(it.Operator.PowerShorthand,e):this.scanPunctuator(it.Operator.Power,e)},[_e.CharacterCode.PERCENT]:function(e){return _e.CharacterCode.EQUAL===this.codeAt(1)?this.scanPunctuator(it.Operator.ModuloShorthand,e):this.scanPunctuator(it.Operator.Modulo,e)},[_e.CharacterCode.SEMICOLON]:function(e){return this.index++,this.createEOL(e)},[_e.CharacterCode.COMMA]:li,[_e.CharacterCode.CURLY_BRACKET_LEFT]:li,[_e.CharacterCode.CURLY_BRACKET_RIGHT]:li,[_e.CharacterCode.SQUARE_BRACKETS_LEFT]:li,[_e.CharacterCode.SQUARE_BRACKETS_RIGHT]:li,[_e.CharacterCode.PARENTHESIS_LEFT]:li,[_e.CharacterCode.PARENTHESIS_RIGHT]:li,[_e.CharacterCode.AT_SIGN]:li}});var dt=g(Sn=>{"use strict";Object.defineProperty(Sn,"__esModule",{value:!0});Sn.ASTComment=Sn.ASTBaseBlockWithScope=Sn.ASTBaseBlock=Sn.ASTBase=Sn.ASTType=void 0;var ex;(function(t){t.BreakStatement="BreakStatement",t.ContinueStatement="ContinueStatement",t.ReturnStatement="ReturnStatement",t.IfShortcutStatement="IfShortcutStatement",t.IfShortcutClause="IfShortcutClause",t.ElseifShortcutClause="ElseifShortcutClause",t.ElseShortcutClause="ElseShortcutClause",t.IfStatement="IfStatement",t.IfClause="IfClause",t.ElseifClause="ElseifClause",t.ElseClause="ElseClause",t.WhileStatement="WhileStatement",t.AssignmentStatement="AssignmentStatement",t.CallStatement="CallStatement",t.FunctionDeclaration="FunctionDeclaration",t.ForGenericStatement="ForGenericStatement",t.Chunk="Chunk",t.Identifier="Identifier",t.StringLiteral="StringLiteral",t.NumericLiteral="NumericLiteral",t.BooleanLiteral="BooleanLiteral",t.NilLiteral="NilLiteral",t.Unknown="Unknown",t.MemberExpression="MemberExpression",t.CallExpression="CallExpression",t.Comment="Comment",t.NegationExpression="NegationExpression",t.BinaryNegatedExpression="BinaryNegatedExpression",t.UnaryExpression="UnaryExpression",t.MapKeyString="MapKeyString",t.MapValue="MapValue",t.MapConstructorExpression="MapConstructorExpression",t.MapCallExpression="MapCallExpression",t.ListValue="ListValue",t.ListConstructorExpression="ListConstructorExpression",t.EmptyExpression="EmptyExpression",t.IndexExpression="IndexExpression",t.BinaryExpression="BinaryExpression",t.LogicalExpression="LogicalExpression",t.IsaExpression="IsaExpression",t.SliceExpression="SliceExpression",t.ImportCodeExpression="ImportCodeExpression",t.InvalidCodeExpression="InvalidCodeExpression",t.ParenthesisExpression="ParenthesisExpression",t.ComparisonGroupExpression="ComparisonGroupExpression"})(ex=Sn.ASTType||(Sn.ASTType={}));var fa=class t{constructor(e,n){this.type=e,this.start=n.start,this.end=n.end,this.range=n.range,this.scope=n.scope||null}toString(){return`${this.type}[${this.start}-${this.end}][]`}clone(){return new t(this.type,{start:this.start,end:this.end,range:this.range,scope:this.scope})}};Sn.ASTBase=fa;var Gc=class t extends fa{constructor(e,n){super(e,n),this.body=n.body||[]}toString(){let e=this.body.map(n=>`${n}`).join(`
35
+ `&&f++}m&&w.length>0&&S.push(w.length),this._lineOffsets=S}return this._lineOffsets},h.prototype.positionAt=function(S){S=Math.max(Math.min(S,this._content.length),0);var w=this.getLineOffsets(),m=0,f=w.length;if(f===0)return o.create(0,S);for(;m<f;){var R=Math.floor((m+f)/2);w[R]>S?f=R:m=R+1}var U=m-1;return o.create(U,S-w[U])},h.prototype.offsetAt=function(S){var w=this.getLineOffsets();if(S.line>=w.length)return this._content.length;if(S.line<0)return 0;var m=w[S.line],f=S.line+1<w.length?w[S.line+1]:this._content.length;return Math.max(Math.min(m+S.character,f),m)},Object.defineProperty(h.prototype,"lineCount",{get:function(){return this.getLineOffsets().length},enumerable:!1,configurable:!0}),h}(),P;(function(h){var S=Object.prototype.toString;function w(Ee){return typeof Ee<"u"}h.defined=w;function m(Ee){return typeof Ee>"u"}h.undefined=m;function f(Ee){return Ee===!0||Ee===!1}h.boolean=f;function R(Ee){return S.call(Ee)==="[object String]"}h.string=R;function U(Ee){return S.call(Ee)==="[object Number]"}h.number=U;function be(Ee,Ts,ku){return S.call(Ee)==="[object Number]"&&Ts<=Ee&&Ee<=ku}h.numberRange=be;function ct(Ee){return S.call(Ee)==="[object Number]"&&-2147483648<=Ee&&Ee<=2147483647}h.integer=ct;function Ke(Ee){return S.call(Ee)==="[object Number]"&&0<=Ee&&Ee<=2147483647}h.uinteger=Ke;function Xn(Ee){return S.call(Ee)==="[object Function]"}h.func=Xn;function Yn(Ee){return Ee!==null&&typeof Ee=="object"}h.objectLiteral=Yn;function Ir(Ee,Ts){return Array.isArray(Ee)&&Ee.every(Ts)}h.typedArray=Ir})(P||(P={}))})});var nt=g(ln=>{"use strict";Object.defineProperty(ln,"__esModule",{value:!0});ln.ProtocolNotificationType=ln.ProtocolNotificationType0=ln.ProtocolRequestType=ln.ProtocolRequestType0=ln.RegistrationType=ln.MessageDirection=void 0;var Rs=Fi(),l_;(function(t){t.clientToServer="clientToServer",t.serverToClient="serverToClient",t.both="both"})(l_||(ln.MessageDirection=l_={}));var Dp=class{constructor(e){this.method=e}};ln.RegistrationType=Dp;var Ip=class extends Rs.RequestType0{constructor(e){super(e)}};ln.ProtocolRequestType0=Ip;var Mp=class extends Rs.RequestType{constructor(e){super(e,Rs.ParameterStructures.byName)}};ln.ProtocolRequestType=Mp;var Lp=class extends Rs.NotificationType0{constructor(e){super(e)}};ln.ProtocolNotificationType0=Lp;var Np=class extends Rs.NotificationType{constructor(e){super(e,Rs.ParameterStructures.byName)}};ln.ProtocolNotificationType=Np});var zu=g(kt=>{"use strict";Object.defineProperty(kt,"__esModule",{value:!0});kt.objectLiteral=kt.typedArray=kt.stringArray=kt.array=kt.func=kt.error=kt.number=kt.string=kt.boolean=void 0;function hO(t){return t===!0||t===!1}kt.boolean=hO;function d_(t){return typeof t=="string"||t instanceof String}kt.string=d_;function gO(t){return typeof t=="number"||t instanceof Number}kt.number=gO;function mO(t){return t instanceof Error}kt.error=mO;function yO(t){return typeof t=="function"}kt.func=yO;function f_(t){return Array.isArray(t)}kt.array=f_;function bO(t){return f_(t)&&t.every(e=>d_(e))}kt.stringArray=bO;function vO(t,e){return Array.isArray(t)&&t.every(e)}kt.typedArray=vO;function _O(t){return t!==null&&typeof t=="object"}kt.objectLiteral=_O});var g_=g(Xu=>{"use strict";Object.defineProperty(Xu,"__esModule",{value:!0});Xu.ImplementationRequest=void 0;var p_=nt(),h_;(function(t){t.method="textDocument/implementation",t.messageDirection=p_.MessageDirection.clientToServer,t.type=new p_.ProtocolRequestType(t.method)})(h_||(Xu.ImplementationRequest=h_={}))});var b_=g(Yu=>{"use strict";Object.defineProperty(Yu,"__esModule",{value:!0});Yu.TypeDefinitionRequest=void 0;var m_=nt(),y_;(function(t){t.method="textDocument/typeDefinition",t.messageDirection=m_.MessageDirection.clientToServer,t.type=new m_.ProtocolRequestType(t.method)})(y_||(Yu.TypeDefinitionRequest=y_={}))});var T_=g(Ps=>{"use strict";Object.defineProperty(Ps,"__esModule",{value:!0});Ps.DidChangeWorkspaceFoldersNotification=Ps.WorkspaceFoldersRequest=void 0;var Ju=nt(),v_;(function(t){t.method="workspace/workspaceFolders",t.messageDirection=Ju.MessageDirection.serverToClient,t.type=new Ju.ProtocolRequestType0(t.method)})(v_||(Ps.WorkspaceFoldersRequest=v_={}));var __;(function(t){t.method="workspace/didChangeWorkspaceFolders",t.messageDirection=Ju.MessageDirection.clientToServer,t.type=new Ju.ProtocolNotificationType(t.method)})(__||(Ps.DidChangeWorkspaceFoldersNotification=__={}))});var x_=g(Qu=>{"use strict";Object.defineProperty(Qu,"__esModule",{value:!0});Qu.ConfigurationRequest=void 0;var S_=nt(),k_;(function(t){t.method="workspace/configuration",t.messageDirection=S_.MessageDirection.serverToClient,t.type=new S_.ProtocolRequestType(t.method)})(k_||(Qu.ConfigurationRequest=k_={}))});var A_=g(Ds=>{"use strict";Object.defineProperty(Ds,"__esModule",{value:!0});Ds.ColorPresentationRequest=Ds.DocumentColorRequest=void 0;var Zu=nt(),w_;(function(t){t.method="textDocument/documentColor",t.messageDirection=Zu.MessageDirection.clientToServer,t.type=new Zu.ProtocolRequestType(t.method)})(w_||(Ds.DocumentColorRequest=w_={}));var E_;(function(t){t.method="textDocument/colorPresentation",t.messageDirection=Zu.MessageDirection.clientToServer,t.type=new Zu.ProtocolRequestType(t.method)})(E_||(Ds.ColorPresentationRequest=E_={}))});var R_=g(Is=>{"use strict";Object.defineProperty(Is,"__esModule",{value:!0});Is.FoldingRangeRefreshRequest=Is.FoldingRangeRequest=void 0;var ec=nt(),O_;(function(t){t.method="textDocument/foldingRange",t.messageDirection=ec.MessageDirection.clientToServer,t.type=new ec.ProtocolRequestType(t.method)})(O_||(Is.FoldingRangeRequest=O_={}));var C_;(function(t){t.method="workspace/foldingRange/refresh",t.messageDirection=ec.MessageDirection.serverToClient,t.type=new ec.ProtocolRequestType0(t.method)})(C_||(Is.FoldingRangeRefreshRequest=C_={}))});var I_=g(tc=>{"use strict";Object.defineProperty(tc,"__esModule",{value:!0});tc.DeclarationRequest=void 0;var P_=nt(),D_;(function(t){t.method="textDocument/declaration",t.messageDirection=P_.MessageDirection.clientToServer,t.type=new P_.ProtocolRequestType(t.method)})(D_||(tc.DeclarationRequest=D_={}))});var N_=g(nc=>{"use strict";Object.defineProperty(nc,"__esModule",{value:!0});nc.SelectionRangeRequest=void 0;var M_=nt(),L_;(function(t){t.method="textDocument/selectionRange",t.messageDirection=M_.MessageDirection.clientToServer,t.type=new M_.ProtocolRequestType(t.method)})(L_||(nc.SelectionRangeRequest=L_={}))});var $_=g(ni=>{"use strict";Object.defineProperty(ni,"__esModule",{value:!0});ni.WorkDoneProgressCancelNotification=ni.WorkDoneProgressCreateRequest=ni.WorkDoneProgress=void 0;var TO=Fi(),rc=nt(),q_;(function(t){t.type=new TO.ProgressType;function e(n){return n===t.type}t.is=e})(q_||(ni.WorkDoneProgress=q_={}));var j_;(function(t){t.method="window/workDoneProgress/create",t.messageDirection=rc.MessageDirection.serverToClient,t.type=new rc.ProtocolRequestType(t.method)})(j_||(ni.WorkDoneProgressCreateRequest=j_={}));var F_;(function(t){t.method="window/workDoneProgress/cancel",t.messageDirection=rc.MessageDirection.clientToServer,t.type=new rc.ProtocolNotificationType(t.method)})(F_||(ni.WorkDoneProgressCancelNotification=F_={}))});var W_=g(ri=>{"use strict";Object.defineProperty(ri,"__esModule",{value:!0});ri.CallHierarchyOutgoingCallsRequest=ri.CallHierarchyIncomingCallsRequest=ri.CallHierarchyPrepareRequest=void 0;var Ms=nt(),B_;(function(t){t.method="textDocument/prepareCallHierarchy",t.messageDirection=Ms.MessageDirection.clientToServer,t.type=new Ms.ProtocolRequestType(t.method)})(B_||(ri.CallHierarchyPrepareRequest=B_={}));var U_;(function(t){t.method="callHierarchy/incomingCalls",t.messageDirection=Ms.MessageDirection.clientToServer,t.type=new Ms.ProtocolRequestType(t.method)})(U_||(ri.CallHierarchyIncomingCallsRequest=U_={}));var H_;(function(t){t.method="callHierarchy/outgoingCalls",t.messageDirection=Ms.MessageDirection.clientToServer,t.type=new Ms.ProtocolRequestType(t.method)})(H_||(ri.CallHierarchyOutgoingCallsRequest=H_={}))});var Y_=g(dn=>{"use strict";Object.defineProperty(dn,"__esModule",{value:!0});dn.SemanticTokensRefreshRequest=dn.SemanticTokensRangeRequest=dn.SemanticTokensDeltaRequest=dn.SemanticTokensRequest=dn.SemanticTokensRegistrationType=dn.TokenFormat=void 0;var Lr=nt(),G_;(function(t){t.Relative="relative"})(G_||(dn.TokenFormat=G_={}));var zo;(function(t){t.method="textDocument/semanticTokens",t.type=new Lr.RegistrationType(t.method)})(zo||(dn.SemanticTokensRegistrationType=zo={}));var K_;(function(t){t.method="textDocument/semanticTokens/full",t.messageDirection=Lr.MessageDirection.clientToServer,t.type=new Lr.ProtocolRequestType(t.method),t.registrationMethod=zo.method})(K_||(dn.SemanticTokensRequest=K_={}));var V_;(function(t){t.method="textDocument/semanticTokens/full/delta",t.messageDirection=Lr.MessageDirection.clientToServer,t.type=new Lr.ProtocolRequestType(t.method),t.registrationMethod=zo.method})(V_||(dn.SemanticTokensDeltaRequest=V_={}));var z_;(function(t){t.method="textDocument/semanticTokens/range",t.messageDirection=Lr.MessageDirection.clientToServer,t.type=new Lr.ProtocolRequestType(t.method),t.registrationMethod=zo.method})(z_||(dn.SemanticTokensRangeRequest=z_={}));var X_;(function(t){t.method="workspace/semanticTokens/refresh",t.messageDirection=Lr.MessageDirection.serverToClient,t.type=new Lr.ProtocolRequestType0(t.method)})(X_||(dn.SemanticTokensRefreshRequest=X_={}))});var Z_=g(ic=>{"use strict";Object.defineProperty(ic,"__esModule",{value:!0});ic.ShowDocumentRequest=void 0;var J_=nt(),Q_;(function(t){t.method="window/showDocument",t.messageDirection=J_.MessageDirection.serverToClient,t.type=new J_.ProtocolRequestType(t.method)})(Q_||(ic.ShowDocumentRequest=Q_={}))});var nT=g(sc=>{"use strict";Object.defineProperty(sc,"__esModule",{value:!0});sc.LinkedEditingRangeRequest=void 0;var eT=nt(),tT;(function(t){t.method="textDocument/linkedEditingRange",t.messageDirection=eT.MessageDirection.clientToServer,t.type=new eT.ProtocolRequestType(t.method)})(tT||(sc.LinkedEditingRangeRequest=tT={}))});var lT=g(Kt=>{"use strict";Object.defineProperty(Kt,"__esModule",{value:!0});Kt.WillDeleteFilesRequest=Kt.DidDeleteFilesNotification=Kt.DidRenameFilesNotification=Kt.WillRenameFilesRequest=Kt.DidCreateFilesNotification=Kt.WillCreateFilesRequest=Kt.FileOperationPatternKind=void 0;var On=nt(),rT;(function(t){t.file="file",t.folder="folder"})(rT||(Kt.FileOperationPatternKind=rT={}));var iT;(function(t){t.method="workspace/willCreateFiles",t.messageDirection=On.MessageDirection.clientToServer,t.type=new On.ProtocolRequestType(t.method)})(iT||(Kt.WillCreateFilesRequest=iT={}));var sT;(function(t){t.method="workspace/didCreateFiles",t.messageDirection=On.MessageDirection.clientToServer,t.type=new On.ProtocolNotificationType(t.method)})(sT||(Kt.DidCreateFilesNotification=sT={}));var oT;(function(t){t.method="workspace/willRenameFiles",t.messageDirection=On.MessageDirection.clientToServer,t.type=new On.ProtocolRequestType(t.method)})(oT||(Kt.WillRenameFilesRequest=oT={}));var aT;(function(t){t.method="workspace/didRenameFiles",t.messageDirection=On.MessageDirection.clientToServer,t.type=new On.ProtocolNotificationType(t.method)})(aT||(Kt.DidRenameFilesNotification=aT={}));var uT;(function(t){t.method="workspace/didDeleteFiles",t.messageDirection=On.MessageDirection.clientToServer,t.type=new On.ProtocolNotificationType(t.method)})(uT||(Kt.DidDeleteFilesNotification=uT={}));var cT;(function(t){t.method="workspace/willDeleteFiles",t.messageDirection=On.MessageDirection.clientToServer,t.type=new On.ProtocolRequestType(t.method)})(cT||(Kt.WillDeleteFilesRequest=cT={}))});var gT=g(ii=>{"use strict";Object.defineProperty(ii,"__esModule",{value:!0});ii.MonikerRequest=ii.MonikerKind=ii.UniquenessLevel=void 0;var dT=nt(),fT;(function(t){t.document="document",t.project="project",t.group="group",t.scheme="scheme",t.global="global"})(fT||(ii.UniquenessLevel=fT={}));var pT;(function(t){t.$import="import",t.$export="export",t.local="local"})(pT||(ii.MonikerKind=pT={}));var hT;(function(t){t.method="textDocument/moniker",t.messageDirection=dT.MessageDirection.clientToServer,t.type=new dT.ProtocolRequestType(t.method)})(hT||(ii.MonikerRequest=hT={}))});var vT=g(si=>{"use strict";Object.defineProperty(si,"__esModule",{value:!0});si.TypeHierarchySubtypesRequest=si.TypeHierarchySupertypesRequest=si.TypeHierarchyPrepareRequest=void 0;var Ls=nt(),mT;(function(t){t.method="textDocument/prepareTypeHierarchy",t.messageDirection=Ls.MessageDirection.clientToServer,t.type=new Ls.ProtocolRequestType(t.method)})(mT||(si.TypeHierarchyPrepareRequest=mT={}));var yT;(function(t){t.method="typeHierarchy/supertypes",t.messageDirection=Ls.MessageDirection.clientToServer,t.type=new Ls.ProtocolRequestType(t.method)})(yT||(si.TypeHierarchySupertypesRequest=yT={}));var bT;(function(t){t.method="typeHierarchy/subtypes",t.messageDirection=Ls.MessageDirection.clientToServer,t.type=new Ls.ProtocolRequestType(t.method)})(bT||(si.TypeHierarchySubtypesRequest=bT={}))});var ST=g(Ns=>{"use strict";Object.defineProperty(Ns,"__esModule",{value:!0});Ns.InlineValueRefreshRequest=Ns.InlineValueRequest=void 0;var oc=nt(),_T;(function(t){t.method="textDocument/inlineValue",t.messageDirection=oc.MessageDirection.clientToServer,t.type=new oc.ProtocolRequestType(t.method)})(_T||(Ns.InlineValueRequest=_T={}));var TT;(function(t){t.method="workspace/inlineValue/refresh",t.messageDirection=oc.MessageDirection.serverToClient,t.type=new oc.ProtocolRequestType0(t.method)})(TT||(Ns.InlineValueRefreshRequest=TT={}))});var ET=g(oi=>{"use strict";Object.defineProperty(oi,"__esModule",{value:!0});oi.InlayHintRefreshRequest=oi.InlayHintResolveRequest=oi.InlayHintRequest=void 0;var qs=nt(),kT;(function(t){t.method="textDocument/inlayHint",t.messageDirection=qs.MessageDirection.clientToServer,t.type=new qs.ProtocolRequestType(t.method)})(kT||(oi.InlayHintRequest=kT={}));var xT;(function(t){t.method="inlayHint/resolve",t.messageDirection=qs.MessageDirection.clientToServer,t.type=new qs.ProtocolRequestType(t.method)})(xT||(oi.InlayHintResolveRequest=xT={}));var wT;(function(t){t.method="workspace/inlayHint/refresh",t.messageDirection=qs.MessageDirection.serverToClient,t.type=new qs.ProtocolRequestType0(t.method)})(wT||(oi.InlayHintRefreshRequest=wT={}))});var IT=g(Cn=>{"use strict";Object.defineProperty(Cn,"__esModule",{value:!0});Cn.DiagnosticRefreshRequest=Cn.WorkspaceDiagnosticRequest=Cn.DocumentDiagnosticRequest=Cn.DocumentDiagnosticReportKind=Cn.DiagnosticServerCancellationData=void 0;var DT=Fi(),SO=zu(),js=nt(),AT;(function(t){function e(n){let r=n;return r&&SO.boolean(r.retriggerRequest)}t.is=e})(AT||(Cn.DiagnosticServerCancellationData=AT={}));var OT;(function(t){t.Full="full",t.Unchanged="unchanged"})(OT||(Cn.DocumentDiagnosticReportKind=OT={}));var CT;(function(t){t.method="textDocument/diagnostic",t.messageDirection=js.MessageDirection.clientToServer,t.type=new js.ProtocolRequestType(t.method),t.partialResult=new DT.ProgressType})(CT||(Cn.DocumentDiagnosticRequest=CT={}));var RT;(function(t){t.method="workspace/diagnostic",t.messageDirection=js.MessageDirection.clientToServer,t.type=new js.ProtocolRequestType(t.method),t.partialResult=new DT.ProgressType})(RT||(Cn.WorkspaceDiagnosticRequest=RT={}));var PT;(function(t){t.method="workspace/diagnostic/refresh",t.messageDirection=js.MessageDirection.serverToClient,t.type=new js.ProtocolRequestType0(t.method)})(PT||(Cn.DiagnosticRefreshRequest=PT={}))});var $T=g(lt=>{"use strict";Object.defineProperty(lt,"__esModule",{value:!0});lt.DidCloseNotebookDocumentNotification=lt.DidSaveNotebookDocumentNotification=lt.DidChangeNotebookDocumentNotification=lt.NotebookCellArrayChange=lt.DidOpenNotebookDocumentNotification=lt.NotebookDocumentSyncRegistrationType=lt.NotebookDocument=lt.NotebookCell=lt.ExecutionSummary=lt.NotebookCellKind=void 0;var Xo=Vu(),Qn=zu(),lr=nt(),qp;(function(t){t.Markup=1,t.Code=2;function e(n){return n===1||n===2}t.is=e})(qp||(lt.NotebookCellKind=qp={}));var jp;(function(t){function e(i,s){let o={executionOrder:i};return(s===!0||s===!1)&&(o.success=s),o}t.create=e;function n(i){let s=i;return Qn.objectLiteral(s)&&Xo.uinteger.is(s.executionOrder)&&(s.success===void 0||Qn.boolean(s.success))}t.is=n;function r(i,s){return i===s?!0:i==null||s===null||s===void 0?!1:i.executionOrder===s.executionOrder&&i.success===s.success}t.equals=r})(jp||(lt.ExecutionSummary=jp={}));var ac;(function(t){function e(s,o){return{kind:s,document:o}}t.create=e;function n(s){let o=s;return Qn.objectLiteral(o)&&qp.is(o.kind)&&Xo.DocumentUri.is(o.document)&&(o.metadata===void 0||Qn.objectLiteral(o.metadata))}t.is=n;function r(s,o){let a=new Set;return s.document!==o.document&&a.add("document"),s.kind!==o.kind&&a.add("kind"),s.executionSummary!==o.executionSummary&&a.add("executionSummary"),(s.metadata!==void 0||o.metadata!==void 0)&&!i(s.metadata,o.metadata)&&a.add("metadata"),(s.executionSummary!==void 0||o.executionSummary!==void 0)&&!jp.equals(s.executionSummary,o.executionSummary)&&a.add("executionSummary"),a}t.diff=r;function i(s,o){if(s===o)return!0;if(s==null||o===null||o===void 0||typeof s!=typeof o||typeof s!="object")return!1;let a=Array.isArray(s),u=Array.isArray(o);if(a!==u)return!1;if(a&&u){if(s.length!==o.length)return!1;for(let c=0;c<s.length;c++)if(!i(s[c],o[c]))return!1}if(Qn.objectLiteral(s)&&Qn.objectLiteral(o)){let c=Object.keys(s),l=Object.keys(o);if(c.length!==l.length||(c.sort(),l.sort(),!i(c,l)))return!1;for(let d=0;d<c.length;d++){let p=c[d];if(!i(s[p],o[p]))return!1}}return!0}})(ac||(lt.NotebookCell=ac={}));var MT;(function(t){function e(r,i,s,o){return{uri:r,notebookType:i,version:s,cells:o}}t.create=e;function n(r){let i=r;return Qn.objectLiteral(i)&&Qn.string(i.uri)&&Xo.integer.is(i.version)&&Qn.typedArray(i.cells,ac.is)}t.is=n})(MT||(lt.NotebookDocument=MT={}));var Fs;(function(t){t.method="notebookDocument/sync",t.messageDirection=lr.MessageDirection.clientToServer,t.type=new lr.RegistrationType(t.method)})(Fs||(lt.NotebookDocumentSyncRegistrationType=Fs={}));var LT;(function(t){t.method="notebookDocument/didOpen",t.messageDirection=lr.MessageDirection.clientToServer,t.type=new lr.ProtocolNotificationType(t.method),t.registrationMethod=Fs.method})(LT||(lt.DidOpenNotebookDocumentNotification=LT={}));var NT;(function(t){function e(r){let i=r;return Qn.objectLiteral(i)&&Xo.uinteger.is(i.start)&&Xo.uinteger.is(i.deleteCount)&&(i.cells===void 0||Qn.typedArray(i.cells,ac.is))}t.is=e;function n(r,i,s){let o={start:r,deleteCount:i};return s!==void 0&&(o.cells=s),o}t.create=n})(NT||(lt.NotebookCellArrayChange=NT={}));var qT;(function(t){t.method="notebookDocument/didChange",t.messageDirection=lr.MessageDirection.clientToServer,t.type=new lr.ProtocolNotificationType(t.method),t.registrationMethod=Fs.method})(qT||(lt.DidChangeNotebookDocumentNotification=qT={}));var jT;(function(t){t.method="notebookDocument/didSave",t.messageDirection=lr.MessageDirection.clientToServer,t.type=new lr.ProtocolNotificationType(t.method),t.registrationMethod=Fs.method})(jT||(lt.DidSaveNotebookDocumentNotification=jT={}));var FT;(function(t){t.method="notebookDocument/didClose",t.messageDirection=lr.MessageDirection.clientToServer,t.type=new lr.ProtocolNotificationType(t.method),t.registrationMethod=Fs.method})(FT||(lt.DidCloseNotebookDocumentNotification=FT={}))});var HT=g(uc=>{"use strict";Object.defineProperty(uc,"__esModule",{value:!0});uc.InlineCompletionRequest=void 0;var BT=nt(),UT;(function(t){t.method="textDocument/inlineCompletion",t.messageDirection=BT.MessageDirection.clientToServer,t.type=new BT.ProtocolRequestType(t.method)})(UT||(uc.InlineCompletionRequest=UT={}))});var nk=g(y=>{"use strict";Object.defineProperty(y,"__esModule",{value:!0});y.WorkspaceSymbolRequest=y.CodeActionResolveRequest=y.CodeActionRequest=y.DocumentSymbolRequest=y.DocumentHighlightRequest=y.ReferencesRequest=y.DefinitionRequest=y.SignatureHelpRequest=y.SignatureHelpTriggerKind=y.HoverRequest=y.CompletionResolveRequest=y.CompletionRequest=y.CompletionTriggerKind=y.PublishDiagnosticsNotification=y.WatchKind=y.RelativePattern=y.FileChangeType=y.DidChangeWatchedFilesNotification=y.WillSaveTextDocumentWaitUntilRequest=y.WillSaveTextDocumentNotification=y.TextDocumentSaveReason=y.DidSaveTextDocumentNotification=y.DidCloseTextDocumentNotification=y.DidChangeTextDocumentNotification=y.TextDocumentContentChangeEvent=y.DidOpenTextDocumentNotification=y.TextDocumentSyncKind=y.TelemetryEventNotification=y.LogMessageNotification=y.ShowMessageRequest=y.ShowMessageNotification=y.MessageType=y.DidChangeConfigurationNotification=y.ExitNotification=y.ShutdownRequest=y.InitializedNotification=y.InitializeErrorCodes=y.InitializeRequest=y.WorkDoneProgressOptions=y.TextDocumentRegistrationOptions=y.StaticRegistrationOptions=y.PositionEncodingKind=y.FailureHandlingKind=y.ResourceOperationKind=y.UnregistrationRequest=y.RegistrationRequest=y.DocumentSelector=y.NotebookCellTextDocumentFilter=y.NotebookDocumentFilter=y.TextDocumentFilter=void 0;y.MonikerRequest=y.MonikerKind=y.UniquenessLevel=y.WillDeleteFilesRequest=y.DidDeleteFilesNotification=y.WillRenameFilesRequest=y.DidRenameFilesNotification=y.WillCreateFilesRequest=y.DidCreateFilesNotification=y.FileOperationPatternKind=y.LinkedEditingRangeRequest=y.ShowDocumentRequest=y.SemanticTokensRegistrationType=y.SemanticTokensRefreshRequest=y.SemanticTokensRangeRequest=y.SemanticTokensDeltaRequest=y.SemanticTokensRequest=y.TokenFormat=y.CallHierarchyPrepareRequest=y.CallHierarchyOutgoingCallsRequest=y.CallHierarchyIncomingCallsRequest=y.WorkDoneProgressCancelNotification=y.WorkDoneProgressCreateRequest=y.WorkDoneProgress=y.SelectionRangeRequest=y.DeclarationRequest=y.FoldingRangeRefreshRequest=y.FoldingRangeRequest=y.ColorPresentationRequest=y.DocumentColorRequest=y.ConfigurationRequest=y.DidChangeWorkspaceFoldersNotification=y.WorkspaceFoldersRequest=y.TypeDefinitionRequest=y.ImplementationRequest=y.ApplyWorkspaceEditRequest=y.ExecuteCommandRequest=y.PrepareRenameRequest=y.RenameRequest=y.PrepareSupportDefaultBehavior=y.DocumentOnTypeFormattingRequest=y.DocumentRangesFormattingRequest=y.DocumentRangeFormattingRequest=y.DocumentFormattingRequest=y.DocumentLinkResolveRequest=y.DocumentLinkRequest=y.CodeLensRefreshRequest=y.CodeLensResolveRequest=y.CodeLensRequest=y.WorkspaceSymbolResolveRequest=void 0;y.InlineCompletionRequest=y.DidCloseNotebookDocumentNotification=y.DidSaveNotebookDocumentNotification=y.DidChangeNotebookDocumentNotification=y.NotebookCellArrayChange=y.DidOpenNotebookDocumentNotification=y.NotebookDocumentSyncRegistrationType=y.NotebookDocument=y.NotebookCell=y.ExecutionSummary=y.NotebookCellKind=y.DiagnosticRefreshRequest=y.WorkspaceDiagnosticRequest=y.DocumentDiagnosticRequest=y.DocumentDiagnosticReportKind=y.DiagnosticServerCancellationData=y.InlayHintRefreshRequest=y.InlayHintResolveRequest=y.InlayHintRequest=y.InlineValueRefreshRequest=y.InlineValueRequest=y.TypeHierarchySupertypesRequest=y.TypeHierarchySubtypesRequest=y.TypeHierarchyPrepareRequest=void 0;var G=nt(),WT=Vu(),Mt=zu(),kO=g_();Object.defineProperty(y,"ImplementationRequest",{enumerable:!0,get:function(){return kO.ImplementationRequest}});var xO=b_();Object.defineProperty(y,"TypeDefinitionRequest",{enumerable:!0,get:function(){return xO.TypeDefinitionRequest}});var QS=T_();Object.defineProperty(y,"WorkspaceFoldersRequest",{enumerable:!0,get:function(){return QS.WorkspaceFoldersRequest}});Object.defineProperty(y,"DidChangeWorkspaceFoldersNotification",{enumerable:!0,get:function(){return QS.DidChangeWorkspaceFoldersNotification}});var wO=x_();Object.defineProperty(y,"ConfigurationRequest",{enumerable:!0,get:function(){return wO.ConfigurationRequest}});var ZS=A_();Object.defineProperty(y,"DocumentColorRequest",{enumerable:!0,get:function(){return ZS.DocumentColorRequest}});Object.defineProperty(y,"ColorPresentationRequest",{enumerable:!0,get:function(){return ZS.ColorPresentationRequest}});var ek=R_();Object.defineProperty(y,"FoldingRangeRequest",{enumerable:!0,get:function(){return ek.FoldingRangeRequest}});Object.defineProperty(y,"FoldingRangeRefreshRequest",{enumerable:!0,get:function(){return ek.FoldingRangeRefreshRequest}});var EO=I_();Object.defineProperty(y,"DeclarationRequest",{enumerable:!0,get:function(){return EO.DeclarationRequest}});var AO=N_();Object.defineProperty(y,"SelectionRangeRequest",{enumerable:!0,get:function(){return AO.SelectionRangeRequest}});var Hp=$_();Object.defineProperty(y,"WorkDoneProgress",{enumerable:!0,get:function(){return Hp.WorkDoneProgress}});Object.defineProperty(y,"WorkDoneProgressCreateRequest",{enumerable:!0,get:function(){return Hp.WorkDoneProgressCreateRequest}});Object.defineProperty(y,"WorkDoneProgressCancelNotification",{enumerable:!0,get:function(){return Hp.WorkDoneProgressCancelNotification}});var Wp=W_();Object.defineProperty(y,"CallHierarchyIncomingCallsRequest",{enumerable:!0,get:function(){return Wp.CallHierarchyIncomingCallsRequest}});Object.defineProperty(y,"CallHierarchyOutgoingCallsRequest",{enumerable:!0,get:function(){return Wp.CallHierarchyOutgoingCallsRequest}});Object.defineProperty(y,"CallHierarchyPrepareRequest",{enumerable:!0,get:function(){return Wp.CallHierarchyPrepareRequest}});var $s=Y_();Object.defineProperty(y,"TokenFormat",{enumerable:!0,get:function(){return $s.TokenFormat}});Object.defineProperty(y,"SemanticTokensRequest",{enumerable:!0,get:function(){return $s.SemanticTokensRequest}});Object.defineProperty(y,"SemanticTokensDeltaRequest",{enumerable:!0,get:function(){return $s.SemanticTokensDeltaRequest}});Object.defineProperty(y,"SemanticTokensRangeRequest",{enumerable:!0,get:function(){return $s.SemanticTokensRangeRequest}});Object.defineProperty(y,"SemanticTokensRefreshRequest",{enumerable:!0,get:function(){return $s.SemanticTokensRefreshRequest}});Object.defineProperty(y,"SemanticTokensRegistrationType",{enumerable:!0,get:function(){return $s.SemanticTokensRegistrationType}});var OO=Z_();Object.defineProperty(y,"ShowDocumentRequest",{enumerable:!0,get:function(){return OO.ShowDocumentRequest}});var CO=nT();Object.defineProperty(y,"LinkedEditingRangeRequest",{enumerable:!0,get:function(){return CO.LinkedEditingRangeRequest}});var $i=lT();Object.defineProperty(y,"FileOperationPatternKind",{enumerable:!0,get:function(){return $i.FileOperationPatternKind}});Object.defineProperty(y,"DidCreateFilesNotification",{enumerable:!0,get:function(){return $i.DidCreateFilesNotification}});Object.defineProperty(y,"WillCreateFilesRequest",{enumerable:!0,get:function(){return $i.WillCreateFilesRequest}});Object.defineProperty(y,"DidRenameFilesNotification",{enumerable:!0,get:function(){return $i.DidRenameFilesNotification}});Object.defineProperty(y,"WillRenameFilesRequest",{enumerable:!0,get:function(){return $i.WillRenameFilesRequest}});Object.defineProperty(y,"DidDeleteFilesNotification",{enumerable:!0,get:function(){return $i.DidDeleteFilesNotification}});Object.defineProperty(y,"WillDeleteFilesRequest",{enumerable:!0,get:function(){return $i.WillDeleteFilesRequest}});var Gp=gT();Object.defineProperty(y,"UniquenessLevel",{enumerable:!0,get:function(){return Gp.UniquenessLevel}});Object.defineProperty(y,"MonikerKind",{enumerable:!0,get:function(){return Gp.MonikerKind}});Object.defineProperty(y,"MonikerRequest",{enumerable:!0,get:function(){return Gp.MonikerRequest}});var Kp=vT();Object.defineProperty(y,"TypeHierarchyPrepareRequest",{enumerable:!0,get:function(){return Kp.TypeHierarchyPrepareRequest}});Object.defineProperty(y,"TypeHierarchySubtypesRequest",{enumerable:!0,get:function(){return Kp.TypeHierarchySubtypesRequest}});Object.defineProperty(y,"TypeHierarchySupertypesRequest",{enumerable:!0,get:function(){return Kp.TypeHierarchySupertypesRequest}});var tk=ST();Object.defineProperty(y,"InlineValueRequest",{enumerable:!0,get:function(){return tk.InlineValueRequest}});Object.defineProperty(y,"InlineValueRefreshRequest",{enumerable:!0,get:function(){return tk.InlineValueRefreshRequest}});var Vp=ET();Object.defineProperty(y,"InlayHintRequest",{enumerable:!0,get:function(){return Vp.InlayHintRequest}});Object.defineProperty(y,"InlayHintResolveRequest",{enumerable:!0,get:function(){return Vp.InlayHintResolveRequest}});Object.defineProperty(y,"InlayHintRefreshRequest",{enumerable:!0,get:function(){return Vp.InlayHintRefreshRequest}});var Yo=IT();Object.defineProperty(y,"DiagnosticServerCancellationData",{enumerable:!0,get:function(){return Yo.DiagnosticServerCancellationData}});Object.defineProperty(y,"DocumentDiagnosticReportKind",{enumerable:!0,get:function(){return Yo.DocumentDiagnosticReportKind}});Object.defineProperty(y,"DocumentDiagnosticRequest",{enumerable:!0,get:function(){return Yo.DocumentDiagnosticRequest}});Object.defineProperty(y,"WorkspaceDiagnosticRequest",{enumerable:!0,get:function(){return Yo.WorkspaceDiagnosticRequest}});Object.defineProperty(y,"DiagnosticRefreshRequest",{enumerable:!0,get:function(){return Yo.DiagnosticRefreshRequest}});var dr=$T();Object.defineProperty(y,"NotebookCellKind",{enumerable:!0,get:function(){return dr.NotebookCellKind}});Object.defineProperty(y,"ExecutionSummary",{enumerable:!0,get:function(){return dr.ExecutionSummary}});Object.defineProperty(y,"NotebookCell",{enumerable:!0,get:function(){return dr.NotebookCell}});Object.defineProperty(y,"NotebookDocument",{enumerable:!0,get:function(){return dr.NotebookDocument}});Object.defineProperty(y,"NotebookDocumentSyncRegistrationType",{enumerable:!0,get:function(){return dr.NotebookDocumentSyncRegistrationType}});Object.defineProperty(y,"DidOpenNotebookDocumentNotification",{enumerable:!0,get:function(){return dr.DidOpenNotebookDocumentNotification}});Object.defineProperty(y,"NotebookCellArrayChange",{enumerable:!0,get:function(){return dr.NotebookCellArrayChange}});Object.defineProperty(y,"DidChangeNotebookDocumentNotification",{enumerable:!0,get:function(){return dr.DidChangeNotebookDocumentNotification}});Object.defineProperty(y,"DidSaveNotebookDocumentNotification",{enumerable:!0,get:function(){return dr.DidSaveNotebookDocumentNotification}});Object.defineProperty(y,"DidCloseNotebookDocumentNotification",{enumerable:!0,get:function(){return dr.DidCloseNotebookDocumentNotification}});var RO=HT();Object.defineProperty(y,"InlineCompletionRequest",{enumerable:!0,get:function(){return RO.InlineCompletionRequest}});var Fp;(function(t){function e(n){let r=n;return Mt.string(r)||Mt.string(r.language)||Mt.string(r.scheme)||Mt.string(r.pattern)}t.is=e})(Fp||(y.TextDocumentFilter=Fp={}));var $p;(function(t){function e(n){let r=n;return Mt.objectLiteral(r)&&(Mt.string(r.notebookType)||Mt.string(r.scheme)||Mt.string(r.pattern))}t.is=e})($p||(y.NotebookDocumentFilter=$p={}));var Bp;(function(t){function e(n){let r=n;return Mt.objectLiteral(r)&&(Mt.string(r.notebook)||$p.is(r.notebook))&&(r.language===void 0||Mt.string(r.language))}t.is=e})(Bp||(y.NotebookCellTextDocumentFilter=Bp={}));var Up;(function(t){function e(n){if(!Array.isArray(n))return!1;for(let r of n)if(!Mt.string(r)&&!Fp.is(r)&&!Bp.is(r))return!1;return!0}t.is=e})(Up||(y.DocumentSelector=Up={}));var GT;(function(t){t.method="client/registerCapability",t.messageDirection=G.MessageDirection.serverToClient,t.type=new G.ProtocolRequestType(t.method)})(GT||(y.RegistrationRequest=GT={}));var KT;(function(t){t.method="client/unregisterCapability",t.messageDirection=G.MessageDirection.serverToClient,t.type=new G.ProtocolRequestType(t.method)})(KT||(y.UnregistrationRequest=KT={}));var VT;(function(t){t.Create="create",t.Rename="rename",t.Delete="delete"})(VT||(y.ResourceOperationKind=VT={}));var zT;(function(t){t.Abort="abort",t.Transactional="transactional",t.TextOnlyTransactional="textOnlyTransactional",t.Undo="undo"})(zT||(y.FailureHandlingKind=zT={}));var XT;(function(t){t.UTF8="utf-8",t.UTF16="utf-16",t.UTF32="utf-32"})(XT||(y.PositionEncodingKind=XT={}));var YT;(function(t){function e(n){let r=n;return r&&Mt.string(r.id)&&r.id.length>0}t.hasId=e})(YT||(y.StaticRegistrationOptions=YT={}));var JT;(function(t){function e(n){let r=n;return r&&(r.documentSelector===null||Up.is(r.documentSelector))}t.is=e})(JT||(y.TextDocumentRegistrationOptions=JT={}));var QT;(function(t){function e(r){let i=r;return Mt.objectLiteral(i)&&(i.workDoneProgress===void 0||Mt.boolean(i.workDoneProgress))}t.is=e;function n(r){let i=r;return i&&Mt.boolean(i.workDoneProgress)}t.hasWorkDoneProgress=n})(QT||(y.WorkDoneProgressOptions=QT={}));var ZT;(function(t){t.method="initialize",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(ZT||(y.InitializeRequest=ZT={}));var eS;(function(t){t.unknownProtocolVersion=1})(eS||(y.InitializeErrorCodes=eS={}));var tS;(function(t){t.method="initialized",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolNotificationType(t.method)})(tS||(y.InitializedNotification=tS={}));var nS;(function(t){t.method="shutdown",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType0(t.method)})(nS||(y.ShutdownRequest=nS={}));var rS;(function(t){t.method="exit",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolNotificationType0(t.method)})(rS||(y.ExitNotification=rS={}));var iS;(function(t){t.method="workspace/didChangeConfiguration",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolNotificationType(t.method)})(iS||(y.DidChangeConfigurationNotification=iS={}));var sS;(function(t){t.Error=1,t.Warning=2,t.Info=3,t.Log=4,t.Debug=5})(sS||(y.MessageType=sS={}));var oS;(function(t){t.method="window/showMessage",t.messageDirection=G.MessageDirection.serverToClient,t.type=new G.ProtocolNotificationType(t.method)})(oS||(y.ShowMessageNotification=oS={}));var aS;(function(t){t.method="window/showMessageRequest",t.messageDirection=G.MessageDirection.serverToClient,t.type=new G.ProtocolRequestType(t.method)})(aS||(y.ShowMessageRequest=aS={}));var uS;(function(t){t.method="window/logMessage",t.messageDirection=G.MessageDirection.serverToClient,t.type=new G.ProtocolNotificationType(t.method)})(uS||(y.LogMessageNotification=uS={}));var cS;(function(t){t.method="telemetry/event",t.messageDirection=G.MessageDirection.serverToClient,t.type=new G.ProtocolNotificationType(t.method)})(cS||(y.TelemetryEventNotification=cS={}));var lS;(function(t){t.None=0,t.Full=1,t.Incremental=2})(lS||(y.TextDocumentSyncKind=lS={}));var dS;(function(t){t.method="textDocument/didOpen",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolNotificationType(t.method)})(dS||(y.DidOpenTextDocumentNotification=dS={}));var fS;(function(t){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")}t.isIncremental=e;function n(r){let i=r;return i!=null&&typeof i.text=="string"&&i.range===void 0&&i.rangeLength===void 0}t.isFull=n})(fS||(y.TextDocumentContentChangeEvent=fS={}));var pS;(function(t){t.method="textDocument/didChange",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolNotificationType(t.method)})(pS||(y.DidChangeTextDocumentNotification=pS={}));var hS;(function(t){t.method="textDocument/didClose",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolNotificationType(t.method)})(hS||(y.DidCloseTextDocumentNotification=hS={}));var gS;(function(t){t.method="textDocument/didSave",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolNotificationType(t.method)})(gS||(y.DidSaveTextDocumentNotification=gS={}));var mS;(function(t){t.Manual=1,t.AfterDelay=2,t.FocusOut=3})(mS||(y.TextDocumentSaveReason=mS={}));var yS;(function(t){t.method="textDocument/willSave",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolNotificationType(t.method)})(yS||(y.WillSaveTextDocumentNotification=yS={}));var bS;(function(t){t.method="textDocument/willSaveWaitUntil",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(bS||(y.WillSaveTextDocumentWaitUntilRequest=bS={}));var vS;(function(t){t.method="workspace/didChangeWatchedFiles",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolNotificationType(t.method)})(vS||(y.DidChangeWatchedFilesNotification=vS={}));var _S;(function(t){t.Created=1,t.Changed=2,t.Deleted=3})(_S||(y.FileChangeType=_S={}));var TS;(function(t){function e(n){let r=n;return Mt.objectLiteral(r)&&(WT.URI.is(r.baseUri)||WT.WorkspaceFolder.is(r.baseUri))&&Mt.string(r.pattern)}t.is=e})(TS||(y.RelativePattern=TS={}));var SS;(function(t){t.Create=1,t.Change=2,t.Delete=4})(SS||(y.WatchKind=SS={}));var kS;(function(t){t.method="textDocument/publishDiagnostics",t.messageDirection=G.MessageDirection.serverToClient,t.type=new G.ProtocolNotificationType(t.method)})(kS||(y.PublishDiagnosticsNotification=kS={}));var xS;(function(t){t.Invoked=1,t.TriggerCharacter=2,t.TriggerForIncompleteCompletions=3})(xS||(y.CompletionTriggerKind=xS={}));var wS;(function(t){t.method="textDocument/completion",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(wS||(y.CompletionRequest=wS={}));var ES;(function(t){t.method="completionItem/resolve",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(ES||(y.CompletionResolveRequest=ES={}));var AS;(function(t){t.method="textDocument/hover",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(AS||(y.HoverRequest=AS={}));var OS;(function(t){t.Invoked=1,t.TriggerCharacter=2,t.ContentChange=3})(OS||(y.SignatureHelpTriggerKind=OS={}));var CS;(function(t){t.method="textDocument/signatureHelp",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(CS||(y.SignatureHelpRequest=CS={}));var RS;(function(t){t.method="textDocument/definition",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(RS||(y.DefinitionRequest=RS={}));var PS;(function(t){t.method="textDocument/references",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(PS||(y.ReferencesRequest=PS={}));var DS;(function(t){t.method="textDocument/documentHighlight",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(DS||(y.DocumentHighlightRequest=DS={}));var IS;(function(t){t.method="textDocument/documentSymbol",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(IS||(y.DocumentSymbolRequest=IS={}));var MS;(function(t){t.method="textDocument/codeAction",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(MS||(y.CodeActionRequest=MS={}));var LS;(function(t){t.method="codeAction/resolve",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(LS||(y.CodeActionResolveRequest=LS={}));var NS;(function(t){t.method="workspace/symbol",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(NS||(y.WorkspaceSymbolRequest=NS={}));var qS;(function(t){t.method="workspaceSymbol/resolve",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(qS||(y.WorkspaceSymbolResolveRequest=qS={}));var jS;(function(t){t.method="textDocument/codeLens",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(jS||(y.CodeLensRequest=jS={}));var FS;(function(t){t.method="codeLens/resolve",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(FS||(y.CodeLensResolveRequest=FS={}));var $S;(function(t){t.method="workspace/codeLens/refresh",t.messageDirection=G.MessageDirection.serverToClient,t.type=new G.ProtocolRequestType0(t.method)})($S||(y.CodeLensRefreshRequest=$S={}));var BS;(function(t){t.method="textDocument/documentLink",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(BS||(y.DocumentLinkRequest=BS={}));var US;(function(t){t.method="documentLink/resolve",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(US||(y.DocumentLinkResolveRequest=US={}));var HS;(function(t){t.method="textDocument/formatting",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(HS||(y.DocumentFormattingRequest=HS={}));var WS;(function(t){t.method="textDocument/rangeFormatting",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(WS||(y.DocumentRangeFormattingRequest=WS={}));var GS;(function(t){t.method="textDocument/rangesFormatting",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(GS||(y.DocumentRangesFormattingRequest=GS={}));var KS;(function(t){t.method="textDocument/onTypeFormatting",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(KS||(y.DocumentOnTypeFormattingRequest=KS={}));var VS;(function(t){t.Identifier=1})(VS||(y.PrepareSupportDefaultBehavior=VS={}));var zS;(function(t){t.method="textDocument/rename",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(zS||(y.RenameRequest=zS={}));var XS;(function(t){t.method="textDocument/prepareRename",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(XS||(y.PrepareRenameRequest=XS={}));var YS;(function(t){t.method="workspace/executeCommand",t.messageDirection=G.MessageDirection.clientToServer,t.type=new G.ProtocolRequestType(t.method)})(YS||(y.ExecuteCommandRequest=YS={}));var JS;(function(t){t.method="workspace/applyEdit",t.messageDirection=G.MessageDirection.serverToClient,t.type=new G.ProtocolRequestType("workspace/applyEdit")})(JS||(y.ApplyWorkspaceEditRequest=JS={}))});var ik=g(cc=>{"use strict";Object.defineProperty(cc,"__esModule",{value:!0});cc.createProtocolConnection=void 0;var rk=Fi();function PO(t,e,n,r){return rk.ConnectionStrategy.is(r)&&(r={connectionStrategy:r}),(0,rk.createMessageConnection)(t,e,n,r)}cc.createProtocolConnection=PO});var ok=g(fn=>{"use strict";var DO=fn&&fn.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),lc=fn&&fn.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&DO(e,t,n)};Object.defineProperty(fn,"__esModule",{value:!0});fn.LSPErrorCodes=fn.createProtocolConnection=void 0;lc(Fi(),fn);lc(Vu(),fn);lc(nt(),fn);lc(nk(),fn);var IO=ik();Object.defineProperty(fn,"createProtocolConnection",{enumerable:!0,get:function(){return IO.createProtocolConnection}});var sk;(function(t){t.lspReservedErrorRangeStart=-32899,t.RequestFailed=-32803,t.ServerCancelled=-32802,t.ContentModified=-32801,t.RequestCancelled=-32800,t.lspReservedErrorRangeEnd=-32800})(sk||(fn.LSPErrorCodes=sk={}))});var yt=g(fr=>{"use strict";var MO=fr&&fr.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),ak=fr&&fr.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&MO(e,t,n)};Object.defineProperty(fr,"__esModule",{value:!0});fr.createProtocolConnection=void 0;var LO=Pp();ak(Pp(),fr);ak(ok(),fr);function NO(t,e,n,r){return(0,LO.createMessageConnection)(t,e,n,r)}fr.createProtocolConnection=NO});var zp=g(Rn=>{"use strict";Object.defineProperty(Rn,"__esModule",{value:!0});Rn.generateUuid=Rn.parse=Rn.isUUID=Rn.v4=Rn.empty=void 0;var Jo=class{constructor(e){this._value=e}asHex(){return this._value}equals(e){return this.asHex()===e.asHex()}},Qo=class t extends Jo{static _oneOf(e){return e[Math.floor(e.length*Math.random())]}static _randomHex(){return t._oneOf(t._chars)}constructor(){super([t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),"-",t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),"-","4",t._randomHex(),t._randomHex(),t._randomHex(),"-",t._oneOf(t._timeHighBits),t._randomHex(),t._randomHex(),t._randomHex(),"-",t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex()].join(""))}};Qo._chars=["0","1","2","3","4","5","6","6","7","8","9","a","b","c","d","e","f"];Qo._timeHighBits=["8","9","a","b"];Rn.empty=new Jo("00000000-0000-0000-0000-000000000000");function uk(){return new Qo}Rn.v4=uk;var qO=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;function ck(t){return qO.test(t)}Rn.isUUID=ck;function jO(t){if(!ck(t))throw new Error("invalid uuid");return new Jo(t)}Rn.parse=jO;function FO(){return uk().asHex()}Rn.generateUuid=FO});var lk=g(ui=>{"use strict";Object.defineProperty(ui,"__esModule",{value:!0});ui.attachPartialResult=ui.ProgressFeature=ui.attachWorkDone=void 0;var ai=yt(),$O=zp(),Bi=class t{constructor(e,n){this._connection=e,this._token=n,t.Instances.set(this._token,this)}begin(e,n,r,i){let s={kind:"begin",title:e,percentage:n,message:r,cancellable:i};this._connection.sendProgress(ai.WorkDoneProgress.type,this._token,s)}report(e,n){let r={kind:"report"};typeof e=="number"?(r.percentage=e,n!==void 0&&(r.message=n)):r.message=e,this._connection.sendProgress(ai.WorkDoneProgress.type,this._token,r)}done(){t.Instances.delete(this._token),this._connection.sendProgress(ai.WorkDoneProgress.type,this._token,{kind:"end"})}};Bi.Instances=new Map;var dc=class extends Bi{constructor(e,n){super(e,n),this._source=new ai.CancellationTokenSource}get token(){return this._source.token}done(){this._source.dispose(),super.done()}cancel(){this._source.cancel()}},Zo=class{constructor(){}begin(){}report(){}done(){}},fc=class extends Zo{constructor(){super(),this._source=new ai.CancellationTokenSource}get token(){return this._source.token}done(){this._source.dispose()}cancel(){this._source.cancel()}};function BO(t,e){if(e===void 0||e.workDoneToken===void 0)return new Zo;let n=e.workDoneToken;return delete e.workDoneToken,new Bi(t,n)}ui.attachWorkDone=BO;var UO=t=>class extends t{constructor(){super(),this._progressSupported=!1}initialize(e){super.initialize(e),e?.window?.workDoneProgress===!0&&(this._progressSupported=!0,this.connection.onNotification(ai.WorkDoneProgressCancelNotification.type,n=>{let r=Bi.Instances.get(n.token);(r instanceof dc||r instanceof fc)&&r.cancel()}))}attachWorkDoneProgress(e){return e===void 0?new Zo:new Bi(this.connection,e)}createWorkDoneProgress(){if(this._progressSupported){let e=(0,$O.generateUuid)();return this.connection.sendRequest(ai.WorkDoneProgressCreateRequest.type,{token:e}).then(()=>new dc(this.connection,e))}else return Promise.resolve(new fc)}};ui.ProgressFeature=UO;var Xp;(function(t){t.type=new ai.ProgressType})(Xp||(Xp={}));var Yp=class{constructor(e,n){this._connection=e,this._token=n}report(e){this._connection.sendProgress(Xp.type,this._token,e)}};function HO(t,e){if(e===void 0||e.partialResultToken===void 0)return;let n=e.partialResultToken;return delete e.partialResultToken,new Yp(t,n)}ui.attachPartialResult=HO});var dk=g(pc=>{"use strict";Object.defineProperty(pc,"__esModule",{value:!0});pc.ConfigurationFeature=void 0;var WO=yt(),GO=xu(),KO=t=>class extends t{getConfiguration(e){return e?GO.string(e)?this._getConfiguration({section:e}):this._getConfiguration(e):this._getConfiguration({})}_getConfiguration(e){let n={items:Array.isArray(e)?e:[e]};return this.connection.sendRequest(WO.ConfigurationRequest.type,n).then(r=>Array.isArray(r)?Array.isArray(e)?r:r[0]:Array.isArray(e)?[]:null)}};pc.ConfigurationFeature=KO});var fk=g(gc=>{"use strict";Object.defineProperty(gc,"__esModule",{value:!0});gc.WorkspaceFoldersFeature=void 0;var hc=yt(),VO=t=>class extends t{constructor(){super(),this._notificationIsAutoRegistered=!1}initialize(e){super.initialize(e);let n=e.workspace;n&&n.workspaceFolders&&(this._onDidChangeWorkspaceFolders=new hc.Emitter,this.connection.onNotification(hc.DidChangeWorkspaceFoldersNotification.type,r=>{this._onDidChangeWorkspaceFolders.fire(r.event)}))}fillServerCapabilities(e){super.fillServerCapabilities(e);let n=e.workspace?.workspaceFolders?.changeNotifications;this._notificationIsAutoRegistered=n===!0||typeof n=="string"}getWorkspaceFolders(){return this.connection.sendRequest(hc.WorkspaceFoldersRequest.type)}get onDidChangeWorkspaceFolders(){if(!this._onDidChangeWorkspaceFolders)throw new Error("Client doesn't support sending workspace folder change events.");return!this._notificationIsAutoRegistered&&!this._unregistration&&(this._unregistration=this.connection.client.register(hc.DidChangeWorkspaceFoldersNotification.type)),this._onDidChangeWorkspaceFolders.event}};gc.WorkspaceFoldersFeature=VO});var pk=g(mc=>{"use strict";Object.defineProperty(mc,"__esModule",{value:!0});mc.CallHierarchyFeature=void 0;var Jp=yt(),zO=t=>class extends t{get callHierarchy(){return{onPrepare:e=>this.connection.onRequest(Jp.CallHierarchyPrepareRequest.type,(n,r)=>e(n,r,this.attachWorkDoneProgress(n),void 0)),onIncomingCalls:e=>{let n=Jp.CallHierarchyIncomingCallsRequest.type;return this.connection.onRequest(n,(r,i)=>e(r,i,this.attachWorkDoneProgress(r),this.attachPartialResultProgress(n,r)))},onOutgoingCalls:e=>{let n=Jp.CallHierarchyOutgoingCallsRequest.type;return this.connection.onRequest(n,(r,i)=>e(r,i,this.attachWorkDoneProgress(r),this.attachPartialResultProgress(n,r)))}}}};mc.CallHierarchyFeature=zO});var Zp=g(ci=>{"use strict";Object.defineProperty(ci,"__esModule",{value:!0});ci.SemanticTokensBuilder=ci.SemanticTokensDiff=ci.SemanticTokensFeature=void 0;var yc=yt(),XO=t=>class extends t{get semanticTokens(){return{refresh:()=>this.connection.sendRequest(yc.SemanticTokensRefreshRequest.type),on:e=>{let n=yc.SemanticTokensRequest.type;return this.connection.onRequest(n,(r,i)=>e(r,i,this.attachWorkDoneProgress(r),this.attachPartialResultProgress(n,r)))},onDelta:e=>{let n=yc.SemanticTokensDeltaRequest.type;return this.connection.onRequest(n,(r,i)=>e(r,i,this.attachWorkDoneProgress(r),this.attachPartialResultProgress(n,r)))},onRange:e=>{let n=yc.SemanticTokensRangeRequest.type;return this.connection.onRequest(n,(r,i)=>e(r,i,this.attachWorkDoneProgress(r),this.attachPartialResultProgress(n,r)))}}}};ci.SemanticTokensFeature=XO;var bc=class{constructor(e,n){this.originalSequence=e,this.modifiedSequence=n}computeDiff(){let e=this.originalSequence.length,n=this.modifiedSequence.length,r=0;for(;r<n&&r<e&&this.originalSequence[r]===this.modifiedSequence[r];)r++;if(r<n&&r<e){let i=e-1,s=n-1;for(;i>=r&&s>=r&&this.originalSequence[i]===this.modifiedSequence[s];)i--,s--;(i<r||s<r)&&(i++,s++);let o=i-r+1,a=this.modifiedSequence.slice(r,s+1);return a.length===1&&a[0]===this.originalSequence[i]?[{start:r,deleteCount:o-1}]:[{start:r,deleteCount:o,data:a}]}else return r<n?[{start:r,deleteCount:0,data:this.modifiedSequence.slice(r)}]:r<e?[{start:r,deleteCount:e-r}]:[]}};ci.SemanticTokensDiff=bc;var Qp=class{constructor(){this._prevData=void 0,this.initialize()}initialize(){this._id=Date.now(),this._prevLine=0,this._prevChar=0,this._data=[],this._dataLen=0}push(e,n,r,i,s){let o=e,a=n;this._dataLen>0&&(o-=this._prevLine,o===0&&(a-=this._prevChar)),this._data[this._dataLen++]=o,this._data[this._dataLen++]=a,this._data[this._dataLen++]=r,this._data[this._dataLen++]=i,this._data[this._dataLen++]=s,this._prevLine=e,this._prevChar=n}get id(){return this._id.toString()}previousResult(e){this.id===e&&(this._prevData=this._data),this.initialize()}build(){return this._prevData=void 0,{resultId:this.id,data:this._data}}canBuildEdits(){return this._prevData!==void 0}buildEdits(){return this._prevData!==void 0?{resultId:this.id,edits:new bc(this._prevData,this._data).computeDiff()}:this.build()}};ci.SemanticTokensBuilder=Qp});var hk=g(vc=>{"use strict";Object.defineProperty(vc,"__esModule",{value:!0});vc.ShowDocumentFeature=void 0;var YO=yt(),JO=t=>class extends t{showDocument(e){return this.connection.sendRequest(YO.ShowDocumentRequest.type,e)}};vc.ShowDocumentFeature=JO});var gk=g(_c=>{"use strict";Object.defineProperty(_c,"__esModule",{value:!0});_c.FileOperationsFeature=void 0;var Bs=yt(),QO=t=>class extends t{onDidCreateFiles(e){return this.connection.onNotification(Bs.DidCreateFilesNotification.type,n=>{e(n)})}onDidRenameFiles(e){return this.connection.onNotification(Bs.DidRenameFilesNotification.type,n=>{e(n)})}onDidDeleteFiles(e){return this.connection.onNotification(Bs.DidDeleteFilesNotification.type,n=>{e(n)})}onWillCreateFiles(e){return this.connection.onRequest(Bs.WillCreateFilesRequest.type,(n,r)=>e(n,r))}onWillRenameFiles(e){return this.connection.onRequest(Bs.WillRenameFilesRequest.type,(n,r)=>e(n,r))}onWillDeleteFiles(e){return this.connection.onRequest(Bs.WillDeleteFilesRequest.type,(n,r)=>e(n,r))}};_c.FileOperationsFeature=QO});var mk=g(Tc=>{"use strict";Object.defineProperty(Tc,"__esModule",{value:!0});Tc.LinkedEditingRangeFeature=void 0;var ZO=yt(),eC=t=>class extends t{onLinkedEditingRange(e){return this.connection.onRequest(ZO.LinkedEditingRangeRequest.type,(n,r)=>e(n,r,this.attachWorkDoneProgress(n),void 0))}};Tc.LinkedEditingRangeFeature=eC});var yk=g(Sc=>{"use strict";Object.defineProperty(Sc,"__esModule",{value:!0});Sc.TypeHierarchyFeature=void 0;var eh=yt(),tC=t=>class extends t{get typeHierarchy(){return{onPrepare:e=>this.connection.onRequest(eh.TypeHierarchyPrepareRequest.type,(n,r)=>e(n,r,this.attachWorkDoneProgress(n),void 0)),onSupertypes:e=>{let n=eh.TypeHierarchySupertypesRequest.type;return this.connection.onRequest(n,(r,i)=>e(r,i,this.attachWorkDoneProgress(r),this.attachPartialResultProgress(n,r)))},onSubtypes:e=>{let n=eh.TypeHierarchySubtypesRequest.type;return this.connection.onRequest(n,(r,i)=>e(r,i,this.attachWorkDoneProgress(r),this.attachPartialResultProgress(n,r)))}}}};Sc.TypeHierarchyFeature=tC});var vk=g(kc=>{"use strict";Object.defineProperty(kc,"__esModule",{value:!0});kc.InlineValueFeature=void 0;var bk=yt(),nC=t=>class extends t{get inlineValue(){return{refresh:()=>this.connection.sendRequest(bk.InlineValueRefreshRequest.type),on:e=>this.connection.onRequest(bk.InlineValueRequest.type,(n,r)=>e(n,r,this.attachWorkDoneProgress(n)))}}};kc.InlineValueFeature=nC});var Tk=g(xc=>{"use strict";Object.defineProperty(xc,"__esModule",{value:!0});xc.FoldingRangeFeature=void 0;var _k=yt(),rC=t=>class extends t{get foldingRange(){return{refresh:()=>this.connection.sendRequest(_k.FoldingRangeRefreshRequest.type),on:e=>{let n=_k.FoldingRangeRequest.type;return this.connection.onRequest(n,(r,i)=>e(r,i,this.attachWorkDoneProgress(r),this.attachPartialResultProgress(n,r)))}}}};xc.FoldingRangeFeature=rC});var Sk=g(wc=>{"use strict";Object.defineProperty(wc,"__esModule",{value:!0});wc.InlayHintFeature=void 0;var th=yt(),iC=t=>class extends t{get inlayHint(){return{refresh:()=>this.connection.sendRequest(th.InlayHintRefreshRequest.type),on:e=>this.connection.onRequest(th.InlayHintRequest.type,(n,r)=>e(n,r,this.attachWorkDoneProgress(n))),resolve:e=>this.connection.onRequest(th.InlayHintResolveRequest.type,(n,r)=>e(n,r))}}};wc.InlayHintFeature=iC});var kk=g(Ec=>{"use strict";Object.defineProperty(Ec,"__esModule",{value:!0});Ec.DiagnosticFeature=void 0;var ea=yt(),sC=t=>class extends t{get diagnostics(){return{refresh:()=>this.connection.sendRequest(ea.DiagnosticRefreshRequest.type),on:e=>this.connection.onRequest(ea.DocumentDiagnosticRequest.type,(n,r)=>e(n,r,this.attachWorkDoneProgress(n),this.attachPartialResultProgress(ea.DocumentDiagnosticRequest.partialResult,n))),onWorkspace:e=>this.connection.onRequest(ea.WorkspaceDiagnosticRequest.type,(n,r)=>e(n,r,this.attachWorkDoneProgress(n),this.attachPartialResultProgress(ea.WorkspaceDiagnosticRequest.partialResult,n)))}}};Ec.DiagnosticFeature=sC});var rh=g(Ac=>{"use strict";Object.defineProperty(Ac,"__esModule",{value:!0});Ac.TextDocuments=void 0;var Ui=yt(),nh=class{constructor(e){this._configuration=e,this._syncedDocuments=new Map,this._onDidChangeContent=new Ui.Emitter,this._onDidOpen=new Ui.Emitter,this._onDidClose=new Ui.Emitter,this._onDidSave=new Ui.Emitter,this._onWillSave=new Ui.Emitter}get onDidOpen(){return this._onDidOpen.event}get onDidChangeContent(){return this._onDidChangeContent.event}get onWillSave(){return this._onWillSave.event}onWillSaveWaitUntil(e){this._willSaveWaitUntil=e}get onDidSave(){return this._onDidSave.event}get onDidClose(){return this._onDidClose.event}get(e){return this._syncedDocuments.get(e)}all(){return Array.from(this._syncedDocuments.values())}keys(){return Array.from(this._syncedDocuments.keys())}listen(e){e.__textDocumentSync=Ui.TextDocumentSyncKind.Incremental;let n=[];return n.push(e.onDidOpenTextDocument(r=>{let i=r.textDocument,s=this._configuration.create(i.uri,i.languageId,i.version,i.text);this._syncedDocuments.set(i.uri,s);let o=Object.freeze({document:s});this._onDidOpen.fire(o),this._onDidChangeContent.fire(o)})),n.push(e.onDidChangeTextDocument(r=>{let i=r.textDocument,s=r.contentChanges;if(s.length===0)return;let{version:o}=i;if(o==null)throw new Error(`Received document change event for ${i.uri} without valid version identifier`);let a=this._syncedDocuments.get(i.uri);a!==void 0&&(a=this._configuration.update(a,s,o),this._syncedDocuments.set(i.uri,a),this._onDidChangeContent.fire(Object.freeze({document:a})))})),n.push(e.onDidCloseTextDocument(r=>{let i=this._syncedDocuments.get(r.textDocument.uri);i!==void 0&&(this._syncedDocuments.delete(r.textDocument.uri),this._onDidClose.fire(Object.freeze({document:i})))})),n.push(e.onWillSaveTextDocument(r=>{let i=this._syncedDocuments.get(r.textDocument.uri);i!==void 0&&this._onWillSave.fire(Object.freeze({document:i,reason:r.reason}))})),n.push(e.onWillSaveTextDocumentWaitUntil((r,i)=>{let s=this._syncedDocuments.get(r.textDocument.uri);return s!==void 0&&this._willSaveWaitUntil?this._willSaveWaitUntil(Object.freeze({document:s,reason:r.reason}),i):[]})),n.push(e.onDidSaveTextDocument(r=>{let i=this._syncedDocuments.get(r.textDocument.uri);i!==void 0&&this._onDidSave.fire(Object.freeze({document:i}))})),Ui.Disposable.create(()=>{n.forEach(r=>r.dispose())})}};Ac.TextDocuments=nh});var sh=g(Us=>{"use strict";Object.defineProperty(Us,"__esModule",{value:!0});Us.NotebookDocuments=Us.NotebookSyncFeature=void 0;var Pn=yt(),xk=rh(),oC=t=>class extends t{get synchronization(){return{onDidOpenNotebookDocument:e=>this.connection.onNotification(Pn.DidOpenNotebookDocumentNotification.type,n=>{e(n)}),onDidChangeNotebookDocument:e=>this.connection.onNotification(Pn.DidChangeNotebookDocumentNotification.type,n=>{e(n)}),onDidSaveNotebookDocument:e=>this.connection.onNotification(Pn.DidSaveNotebookDocumentNotification.type,n=>{e(n)}),onDidCloseNotebookDocument:e=>this.connection.onNotification(Pn.DidCloseNotebookDocumentNotification.type,n=>{e(n)})}}};Us.NotebookSyncFeature=oC;var Oc=class t{onDidOpenTextDocument(e){return this.openHandler=e,Pn.Disposable.create(()=>{this.openHandler=void 0})}openTextDocument(e){this.openHandler&&this.openHandler(e)}onDidChangeTextDocument(e){return this.changeHandler=e,Pn.Disposable.create(()=>{this.changeHandler=e})}changeTextDocument(e){this.changeHandler&&this.changeHandler(e)}onDidCloseTextDocument(e){return this.closeHandler=e,Pn.Disposable.create(()=>{this.closeHandler=void 0})}closeTextDocument(e){this.closeHandler&&this.closeHandler(e)}onWillSaveTextDocument(){return t.NULL_DISPOSE}onWillSaveTextDocumentWaitUntil(){return t.NULL_DISPOSE}onDidSaveTextDocument(){return t.NULL_DISPOSE}};Oc.NULL_DISPOSE=Object.freeze({dispose:()=>{}});var ih=class{constructor(e){e instanceof xk.TextDocuments?this._cellTextDocuments=e:this._cellTextDocuments=new xk.TextDocuments(e),this.notebookDocuments=new Map,this.notebookCellMap=new Map,this._onDidOpen=new Pn.Emitter,this._onDidChange=new Pn.Emitter,this._onDidSave=new Pn.Emitter,this._onDidClose=new Pn.Emitter}get cellTextDocuments(){return this._cellTextDocuments}getCellTextDocument(e){return this._cellTextDocuments.get(e.document)}getNotebookDocument(e){return this.notebookDocuments.get(e)}getNotebookCell(e){let n=this.notebookCellMap.get(e);return n&&n[0]}findNotebookDocumentForCell(e){let n=typeof e=="string"?e:e.document,r=this.notebookCellMap.get(n);return r&&r[1]}get onDidOpen(){return this._onDidOpen.event}get onDidSave(){return this._onDidSave.event}get onDidChange(){return this._onDidChange.event}get onDidClose(){return this._onDidClose.event}listen(e){let n=new Oc,r=[];return r.push(this.cellTextDocuments.listen(n)),r.push(e.notebooks.synchronization.onDidOpenNotebookDocument(i=>{this.notebookDocuments.set(i.notebookDocument.uri,i.notebookDocument);for(let s of i.cellTextDocuments)n.openTextDocument({textDocument:s});this.updateCellMap(i.notebookDocument),this._onDidOpen.fire(i.notebookDocument)})),r.push(e.notebooks.synchronization.onDidChangeNotebookDocument(i=>{let s=this.notebookDocuments.get(i.notebookDocument.uri);if(s===void 0)return;s.version=i.notebookDocument.version;let o=s.metadata,a=!1,u=i.change;u.metadata!==void 0&&(a=!0,s.metadata=u.metadata);let c=[],l=[],d=[],p=[];if(u.cells!==void 0){let M=u.cells;if(M.structure!==void 0){let x=M.structure.array;if(s.cells.splice(x.start,x.deleteCount,...x.cells!==void 0?x.cells:[]),M.structure.didOpen!==void 0)for(let k of M.structure.didOpen)n.openTextDocument({textDocument:k}),c.push(k.uri);if(M.structure.didClose)for(let k of M.structure.didClose)n.closeTextDocument({textDocument:k}),l.push(k.uri)}if(M.data!==void 0){let x=new Map(M.data.map(k=>[k.document,k]));for(let k=0;k<=s.cells.length;k++){let v=x.get(s.cells[k].document);if(v!==void 0){let F=s.cells.splice(k,1,v);if(d.push({old:F[0],new:v}),x.delete(v.document),x.size===0)break}}}if(M.textContent!==void 0)for(let x of M.textContent)n.changeTextDocument({textDocument:x.document,contentChanges:x.changes}),p.push(x.document.uri)}this.updateCellMap(s);let b={notebookDocument:s};a&&(b.metadata={old:o,new:s.metadata});let _=[];for(let M of c)_.push(this.getNotebookCell(M));let E=[];for(let M of l)E.push(this.getNotebookCell(M));let L=[];for(let M of p)L.push(this.getNotebookCell(M));(_.length>0||E.length>0||d.length>0||L.length>0)&&(b.cells={added:_,removed:E,changed:{data:d,textContent:L}}),(b.metadata!==void 0||b.cells!==void 0)&&this._onDidChange.fire(b)})),r.push(e.notebooks.synchronization.onDidSaveNotebookDocument(i=>{let s=this.notebookDocuments.get(i.notebookDocument.uri);s!==void 0&&this._onDidSave.fire(s)})),r.push(e.notebooks.synchronization.onDidCloseNotebookDocument(i=>{let s=this.notebookDocuments.get(i.notebookDocument.uri);if(s!==void 0){this._onDidClose.fire(s);for(let o of i.cellTextDocuments)n.closeTextDocument({textDocument:o});this.notebookDocuments.delete(i.notebookDocument.uri);for(let o of s.cells)this.notebookCellMap.delete(o.document)}})),Pn.Disposable.create(()=>{r.forEach(i=>i.dispose())})}updateCellMap(e){for(let n of e.cells)this.notebookCellMap.set(n.document,[n,e])}};Us.NotebookDocuments=ih});var wk=g(Cc=>{"use strict";Object.defineProperty(Cc,"__esModule",{value:!0});Cc.MonikerFeature=void 0;var aC=yt(),uC=t=>class extends t{get moniker(){return{on:e=>{let n=aC.MonikerRequest.type;return this.connection.onRequest(n,(r,i)=>e(r,i,this.attachWorkDoneProgress(r),this.attachPartialResultProgress(n,r)))}}}};Cc.MonikerFeature=uC});var dh=g(De=>{"use strict";Object.defineProperty(De,"__esModule",{value:!0});De.createConnection=De.combineFeatures=De.combineNotebooksFeatures=De.combineLanguagesFeatures=De.combineWorkspaceFeatures=De.combineWindowFeatures=De.combineClientFeatures=De.combineTracerFeatures=De.combineTelemetryFeatures=De.combineConsoleFeatures=De._NotebooksImpl=De._LanguagesImpl=De.BulkUnregistration=De.BulkRegistration=De.ErrorMessageTracker=void 0;var X=yt(),Dn=xu(),ah=zp(),ge=lk(),cC=dk(),lC=fk(),dC=pk(),fC=Zp(),pC=hk(),hC=gk(),gC=mk(),mC=yk(),yC=vk(),bC=Tk(),vC=Sk(),_C=kk(),TC=sh(),SC=wk();function oh(t){if(t!==null)return t}var uh=class{constructor(){this._messages=Object.create(null)}add(e){let n=this._messages[e];n||(n=0),n++,this._messages[e]=n}sendErrors(e){Object.keys(this._messages).forEach(n=>{e.window.showErrorMessage(n)})}};De.ErrorMessageTracker=uh;var Rc=class{constructor(){}rawAttach(e){this._rawConnection=e}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}fillServerCapabilities(e){}initialize(e){}error(e){this.send(X.MessageType.Error,e)}warn(e){this.send(X.MessageType.Warning,e)}info(e){this.send(X.MessageType.Info,e)}log(e){this.send(X.MessageType.Log,e)}debug(e){this.send(X.MessageType.Debug,e)}send(e,n){this._rawConnection&&this._rawConnection.sendNotification(X.LogMessageNotification.type,{type:e,message:n}).catch(()=>{(0,X.RAL)().console.error("Sending log message failed")})}},ch=class{constructor(){}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}showErrorMessage(e,...n){let r={type:X.MessageType.Error,message:e,actions:n};return this.connection.sendRequest(X.ShowMessageRequest.type,r).then(oh)}showWarningMessage(e,...n){let r={type:X.MessageType.Warning,message:e,actions:n};return this.connection.sendRequest(X.ShowMessageRequest.type,r).then(oh)}showInformationMessage(e,...n){let r={type:X.MessageType.Info,message:e,actions:n};return this.connection.sendRequest(X.ShowMessageRequest.type,r).then(oh)}},Ek=(0,pC.ShowDocumentFeature)((0,ge.ProgressFeature)(ch)),Ak;(function(t){function e(){return new Pc}t.create=e})(Ak||(De.BulkRegistration=Ak={}));var Pc=class{constructor(){this._registrations=[],this._registered=new Set}add(e,n){let r=Dn.string(e)?e:e.method;if(this._registered.has(r))throw new Error(`${r} is already added to this registration`);let i=ah.generateUuid();this._registrations.push({id:i,method:r,registerOptions:n||{}}),this._registered.add(r)}asRegistrationParams(){return{registrations:this._registrations}}},Ok;(function(t){function e(){return new ta(void 0,[])}t.create=e})(Ok||(De.BulkUnregistration=Ok={}));var ta=class{constructor(e,n){this._connection=e,this._unregistrations=new Map,n.forEach(r=>{this._unregistrations.set(r.method,r)})}get isAttached(){return!!this._connection}attach(e){this._connection=e}add(e){this._unregistrations.set(e.method,e)}dispose(){let e=[];for(let r of this._unregistrations.values())e.push(r);let n={unregisterations:e};this._connection.sendRequest(X.UnregistrationRequest.type,n).catch(()=>{this._connection.console.info("Bulk unregistration failed.")})}disposeSingle(e){let n=Dn.string(e)?e:e.method,r=this._unregistrations.get(n);if(!r)return!1;let i={unregisterations:[r]};return this._connection.sendRequest(X.UnregistrationRequest.type,i).then(()=>{this._unregistrations.delete(n)},s=>{this._connection.console.info(`Un-registering request handler for ${r.id} failed.`)}),!0}},Dc=class{attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}register(e,n,r){return e instanceof Pc?this.registerMany(e):e instanceof ta?this.registerSingle1(e,n,r):this.registerSingle2(e,n)}registerSingle1(e,n,r){let i=Dn.string(n)?n:n.method,s=ah.generateUuid(),o={registrations:[{id:s,method:i,registerOptions:r||{}}]};return e.isAttached||e.attach(this.connection),this.connection.sendRequest(X.RegistrationRequest.type,o).then(a=>(e.add({id:s,method:i}),e),a=>(this.connection.console.info(`Registering request handler for ${i} failed.`),Promise.reject(a)))}registerSingle2(e,n){let r=Dn.string(e)?e:e.method,i=ah.generateUuid(),s={registrations:[{id:i,method:r,registerOptions:n||{}}]};return this.connection.sendRequest(X.RegistrationRequest.type,s).then(o=>X.Disposable.create(()=>{this.unregisterSingle(i,r).catch(()=>{this.connection.console.info(`Un-registering capability with id ${i} failed.`)})}),o=>(this.connection.console.info(`Registering request handler for ${r} failed.`),Promise.reject(o)))}unregisterSingle(e,n){let r={unregisterations:[{id:e,method:n}]};return this.connection.sendRequest(X.UnregistrationRequest.type,r).catch(()=>{this.connection.console.info(`Un-registering request handler for ${e} failed.`)})}registerMany(e){let n=e.asRegistrationParams();return this.connection.sendRequest(X.RegistrationRequest.type,n).then(()=>new ta(this._connection,n.registrations.map(r=>({id:r.id,method:r.method}))),r=>(this.connection.console.info("Bulk registration failed."),Promise.reject(r)))}},lh=class{constructor(){}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}applyEdit(e){function n(i){return i&&!!i.edit}let r=n(e)?e:{edit:e};return this.connection.sendRequest(X.ApplyWorkspaceEditRequest.type,r)}},Ck=(0,hC.FileOperationsFeature)((0,lC.WorkspaceFoldersFeature)((0,cC.ConfigurationFeature)(lh))),Ic=class{constructor(){this._trace=X.Trace.Off}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}set trace(e){this._trace=e}log(e,n){this._trace!==X.Trace.Off&&this.connection.sendNotification(X.LogTraceNotification.type,{message:e,verbose:this._trace===X.Trace.Verbose?n:void 0}).catch(()=>{})}},Mc=class{constructor(){}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}logEvent(e){this.connection.sendNotification(X.TelemetryEventNotification.type,e).catch(()=>{this.connection.console.log("Sending TelemetryEventNotification failed")})}},Lc=class{constructor(){}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}attachWorkDoneProgress(e){return(0,ge.attachWorkDone)(this.connection,e)}attachPartialResultProgress(e,n){return(0,ge.attachPartialResult)(this.connection,n)}};De._LanguagesImpl=Lc;var Rk=(0,bC.FoldingRangeFeature)((0,SC.MonikerFeature)((0,_C.DiagnosticFeature)((0,vC.InlayHintFeature)((0,yC.InlineValueFeature)((0,mC.TypeHierarchyFeature)((0,gC.LinkedEditingRangeFeature)((0,fC.SemanticTokensFeature)((0,dC.CallHierarchyFeature)(Lc))))))))),Nc=class{constructor(){}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}attachWorkDoneProgress(e){return(0,ge.attachWorkDone)(this.connection,e)}attachPartialResultProgress(e,n){return(0,ge.attachPartialResult)(this.connection,n)}};De._NotebooksImpl=Nc;var Pk=(0,TC.NotebookSyncFeature)(Nc);function Dk(t,e){return function(n){return e(t(n))}}De.combineConsoleFeatures=Dk;function Ik(t,e){return function(n){return e(t(n))}}De.combineTelemetryFeatures=Ik;function Mk(t,e){return function(n){return e(t(n))}}De.combineTracerFeatures=Mk;function Lk(t,e){return function(n){return e(t(n))}}De.combineClientFeatures=Lk;function Nk(t,e){return function(n){return e(t(n))}}De.combineWindowFeatures=Nk;function qk(t,e){return function(n){return e(t(n))}}De.combineWorkspaceFeatures=qk;function jk(t,e){return function(n){return e(t(n))}}De.combineLanguagesFeatures=jk;function Fk(t,e){return function(n){return e(t(n))}}De.combineNotebooksFeatures=Fk;function kC(t,e){function n(i,s,o){return i&&s?o(i,s):i||s}return{__brand:"features",console:n(t.console,e.console,Dk),tracer:n(t.tracer,e.tracer,Mk),telemetry:n(t.telemetry,e.telemetry,Ik),client:n(t.client,e.client,Lk),window:n(t.window,e.window,Nk),workspace:n(t.workspace,e.workspace,qk),languages:n(t.languages,e.languages,jk),notebooks:n(t.notebooks,e.notebooks,Fk)}}De.combineFeatures=kC;function xC(t,e,n){let r=n&&n.console?new(n.console(Rc)):new Rc,i=t(r);r.rawAttach(i);let s=n&&n.tracer?new(n.tracer(Ic)):new Ic,o=n&&n.telemetry?new(n.telemetry(Mc)):new Mc,a=n&&n.client?new(n.client(Dc)):new Dc,u=n&&n.window?new(n.window(Ek)):new Ek,c=n&&n.workspace?new(n.workspace(Ck)):new Ck,l=n&&n.languages?new(n.languages(Rk)):new Rk,d=n&&n.notebooks?new(n.notebooks(Pk)):new Pk,p=[r,s,o,a,u,c,l,d];function b(x){return x instanceof Promise?x:Dn.thenable(x)?new Promise((k,v)=>{x.then(F=>k(F),F=>v(F))}):Promise.resolve(x)}let _,E,L,M={listen:()=>i.listen(),sendRequest:(x,...k)=>i.sendRequest(Dn.string(x)?x:x.method,...k),onRequest:(x,k)=>i.onRequest(x,k),sendNotification:(x,k)=>{let v=Dn.string(x)?x:x.method;return i.sendNotification(v,k)},onNotification:(x,k)=>i.onNotification(x,k),onProgress:i.onProgress,sendProgress:i.sendProgress,onInitialize:x=>(E=x,{dispose:()=>{E=void 0}}),onInitialized:x=>i.onNotification(X.InitializedNotification.type,x),onShutdown:x=>(_=x,{dispose:()=>{_=void 0}}),onExit:x=>(L=x,{dispose:()=>{L=void 0}}),get console(){return r},get telemetry(){return o},get tracer(){return s},get client(){return a},get window(){return u},get workspace(){return c},get languages(){return l},get notebooks(){return d},onDidChangeConfiguration:x=>i.onNotification(X.DidChangeConfigurationNotification.type,x),onDidChangeWatchedFiles:x=>i.onNotification(X.DidChangeWatchedFilesNotification.type,x),__textDocumentSync:void 0,onDidOpenTextDocument:x=>i.onNotification(X.DidOpenTextDocumentNotification.type,x),onDidChangeTextDocument:x=>i.onNotification(X.DidChangeTextDocumentNotification.type,x),onDidCloseTextDocument:x=>i.onNotification(X.DidCloseTextDocumentNotification.type,x),onWillSaveTextDocument:x=>i.onNotification(X.WillSaveTextDocumentNotification.type,x),onWillSaveTextDocumentWaitUntil:x=>i.onRequest(X.WillSaveTextDocumentWaitUntilRequest.type,x),onDidSaveTextDocument:x=>i.onNotification(X.DidSaveTextDocumentNotification.type,x),sendDiagnostics:x=>i.sendNotification(X.PublishDiagnosticsNotification.type,x),onHover:x=>i.onRequest(X.HoverRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),void 0)),onCompletion:x=>i.onRequest(X.CompletionRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onCompletionResolve:x=>i.onRequest(X.CompletionResolveRequest.type,x),onSignatureHelp:x=>i.onRequest(X.SignatureHelpRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),void 0)),onDeclaration:x=>i.onRequest(X.DeclarationRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onDefinition:x=>i.onRequest(X.DefinitionRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onTypeDefinition:x=>i.onRequest(X.TypeDefinitionRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onImplementation:x=>i.onRequest(X.ImplementationRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onReferences:x=>i.onRequest(X.ReferencesRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onDocumentHighlight:x=>i.onRequest(X.DocumentHighlightRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onDocumentSymbol:x=>i.onRequest(X.DocumentSymbolRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onWorkspaceSymbol:x=>i.onRequest(X.WorkspaceSymbolRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onWorkspaceSymbolResolve:x=>i.onRequest(X.WorkspaceSymbolResolveRequest.type,x),onCodeAction:x=>i.onRequest(X.CodeActionRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onCodeActionResolve:x=>i.onRequest(X.CodeActionResolveRequest.type,(k,v)=>x(k,v)),onCodeLens:x=>i.onRequest(X.CodeLensRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onCodeLensResolve:x=>i.onRequest(X.CodeLensResolveRequest.type,(k,v)=>x(k,v)),onDocumentFormatting:x=>i.onRequest(X.DocumentFormattingRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),void 0)),onDocumentRangeFormatting:x=>i.onRequest(X.DocumentRangeFormattingRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),void 0)),onDocumentOnTypeFormatting:x=>i.onRequest(X.DocumentOnTypeFormattingRequest.type,(k,v)=>x(k,v)),onRenameRequest:x=>i.onRequest(X.RenameRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),void 0)),onPrepareRename:x=>i.onRequest(X.PrepareRenameRequest.type,(k,v)=>x(k,v)),onDocumentLinks:x=>i.onRequest(X.DocumentLinkRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onDocumentLinkResolve:x=>i.onRequest(X.DocumentLinkResolveRequest.type,(k,v)=>x(k,v)),onDocumentColor:x=>i.onRequest(X.DocumentColorRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onColorPresentation:x=>i.onRequest(X.ColorPresentationRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onFoldingRanges:x=>i.onRequest(X.FoldingRangeRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onSelectionRanges:x=>i.onRequest(X.SelectionRangeRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),(0,ge.attachPartialResult)(i,k))),onExecuteCommand:x=>i.onRequest(X.ExecuteCommandRequest.type,(k,v)=>x(k,v,(0,ge.attachWorkDone)(i,k),void 0)),dispose:()=>i.dispose()};for(let x of p)x.attach(M);return i.onRequest(X.InitializeRequest.type,x=>{e.initialize(x),Dn.string(x.trace)&&(s.trace=X.Trace.fromString(x.trace));for(let k of p)k.initialize(x.capabilities);if(E){let k=E(x,new X.CancellationTokenSource().token,(0,ge.attachWorkDone)(i,x),void 0);return b(k).then(v=>{if(v instanceof X.ResponseError)return v;let F=v;F||(F={capabilities:{}});let C=F.capabilities;C||(C={},F.capabilities=C),C.textDocumentSync===void 0||C.textDocumentSync===null?C.textDocumentSync=Dn.number(M.__textDocumentSync)?M.__textDocumentSync:X.TextDocumentSyncKind.None:!Dn.number(C.textDocumentSync)&&!Dn.number(C.textDocumentSync.change)&&(C.textDocumentSync.change=Dn.number(M.__textDocumentSync)?M.__textDocumentSync:X.TextDocumentSyncKind.None);for(let V of p)V.fillServerCapabilities(C);return F})}else{let k={capabilities:{textDocumentSync:X.TextDocumentSyncKind.None}};for(let v of p)v.fillServerCapabilities(k.capabilities);return k}}),i.onRequest(X.ShutdownRequest.type,()=>{if(e.shutdownReceived=!0,_)return _(new X.CancellationTokenSource().token)}),i.onNotification(X.ExitNotification.type,()=>{try{L&&L()}finally{e.shutdownReceived?e.exit(0):e.exit(1)}}),i.onNotification(X.SetTraceNotification.type,x=>{s.trace=X.Trace.fromString(x.value)}),M}De.createConnection=xC});var $k=g(pn=>{"use strict";Object.defineProperty(pn,"__esModule",{value:!0});pn.resolveModulePath=pn.FileSystem=pn.resolveGlobalYarnPath=pn.resolveGlobalNodePath=pn.resolve=pn.uriToFilePath=void 0;var wC=require("url"),Zn=require("path"),fh=require("fs"),mh=require("child_process");function EC(t){let e=wC.parse(t);if(e.protocol!=="file:"||!e.path)return;let n=e.path.split("/");for(var r=0,i=n.length;r<i;r++)n[r]=decodeURIComponent(n[r]);if(process.platform==="win32"&&n.length>1){let s=n[0],o=n[1];s.length===0&&o.length>1&&o[1]===":"&&n.shift()}return Zn.normalize(n.join("/"))}pn.uriToFilePath=EC;function ph(){return process.platform==="win32"}function qc(t,e,n,r){let i="NODE_PATH",s=["var p = process;","p.on('message',function(m){","if(m.c==='e'){","p.exit(0);","}","else if(m.c==='rs'){","try{","var r=require.resolve(m.a);","p.send({c:'r',s:true,r:r});","}","catch(err){","p.send({c:'r',s:false});","}","}","});"].join("");return new Promise((o,a)=>{let u=process.env,c=Object.create(null);Object.keys(u).forEach(l=>c[l]=u[l]),e&&fh.existsSync(e)&&(c[i]?c[i]=e+Zn.delimiter+c[i]:c[i]=e,r&&r(`NODE_PATH value is: ${c[i]}`)),c.ELECTRON_RUN_AS_NODE="1";try{let l=(0,mh.fork)("",[],{cwd:n,env:c,execArgv:["-e",s]});if(l.pid===void 0){a(new Error(`Starting process to resolve node module ${t} failed`));return}l.on("error",p=>{a(p)}),l.on("message",p=>{p.c==="r"&&(l.send({c:"e"}),p.s?o(p.r):a(new Error(`Failed to resolve module: ${t}`)))});let d={c:"rs",a:t};l.send(d)}catch(l){a(l)}})}pn.resolve=qc;function hh(t){let e="npm",n=Object.create(null);Object.keys(process.env).forEach(s=>n[s]=process.env[s]),n.NO_UPDATE_NOTIFIER="true";let r={encoding:"utf8",env:n};ph()&&(e="npm.cmd",r.shell=!0);let i=()=>{};try{process.on("SIGPIPE",i);let s=(0,mh.spawnSync)(e,["config","get","prefix"],r).stdout;if(!s){t&&t("'npm config get prefix' didn't return a value.");return}let o=s.trim();return t&&t(`'npm config get prefix' value is: ${o}`),o.length>0?ph()?Zn.join(o,"node_modules"):Zn.join(o,"lib","node_modules"):void 0}catch{return}finally{process.removeListener("SIGPIPE",i)}}pn.resolveGlobalNodePath=hh;function AC(t){let e="yarn",n={encoding:"utf8"};ph()&&(e="yarn.cmd",n.shell=!0);let r=()=>{};try{process.on("SIGPIPE",r);let i=(0,mh.spawnSync)(e,["global","dir","--json"],n),s=i.stdout;if(!s){t&&(t("'yarn global dir' didn't return a value."),i.stderr&&t(i.stderr));return}let o=s.trim().split(/\r?\n/);for(let a of o)try{let u=JSON.parse(a);if(u.type==="log")return Zn.join(u.data,"node_modules")}catch{}return}catch{return}finally{process.removeListener("SIGPIPE",r)}}pn.resolveGlobalYarnPath=AC;var gh;(function(t){let e;function n(){return e!==void 0||(process.platform==="win32"?e=!1:e=!fh.existsSync(__filename.toUpperCase())||!fh.existsSync(__filename.toLowerCase())),e}t.isCaseSensitive=n;function r(i,s){return n()?Zn.normalize(s).indexOf(Zn.normalize(i))===0:Zn.normalize(s).toLowerCase().indexOf(Zn.normalize(i).toLowerCase())===0}t.isParent=r})(gh||(pn.FileSystem=gh={}));function OC(t,e,n,r){return n?(Zn.isAbsolute(n)||(n=Zn.join(t,n)),qc(e,n,n,r).then(i=>gh.isParent(n,i)?i:Promise.reject(new Error(`Failed to load ${e} from node path location.`))).then(void 0,i=>qc(e,hh(r),t,r))):qc(e,hh(r),t,r)}pn.resolveModulePath=OC});var yh=g((k2,Bk)=>{"use strict";Bk.exports=yt()});var Uk=g(jc=>{"use strict";Object.defineProperty(jc,"__esModule",{value:!0});jc.InlineCompletionFeature=void 0;var CC=yt(),RC=t=>class extends t{get inlineCompletion(){return{on:e=>this.connection.onRequest(CC.InlineCompletionRequest.type,(n,r)=>e(n,r,this.attachWorkDoneProgress(n)))}}};jc.InlineCompletionFeature=RC});var Gk=g(Vt=>{"use strict";var PC=Vt&&Vt.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),Wk=Vt&&Vt.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&PC(e,t,n)};Object.defineProperty(Vt,"__esModule",{value:!0});Vt.ProposedFeatures=Vt.NotebookDocuments=Vt.TextDocuments=Vt.SemanticTokensBuilder=void 0;var DC=Zp();Object.defineProperty(Vt,"SemanticTokensBuilder",{enumerable:!0,get:function(){return DC.SemanticTokensBuilder}});var IC=Uk();Wk(yt(),Vt);var MC=rh();Object.defineProperty(Vt,"TextDocuments",{enumerable:!0,get:function(){return MC.TextDocuments}});var LC=sh();Object.defineProperty(Vt,"NotebookDocuments",{enumerable:!0,get:function(){return LC.NotebookDocuments}});Wk(dh(),Vt);var Hk;(function(t){t.all={__brand:"features",languages:IC.InlineCompletionFeature}})(Hk||(Vt.ProposedFeatures=Hk={}))});var Jk=g(In=>{"use strict";var NC=In&&In.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),Xk=In&&In.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&NC(e,t,n)};Object.defineProperty(In,"__esModule",{value:!0});In.createConnection=In.Files=void 0;var Kk=require("node:util"),bh=xu(),qC=dh(),na=$k(),Hi=yh();Xk(yh(),In);Xk(Gk(),In);var Vk;(function(t){t.uriToFilePath=na.uriToFilePath,t.resolveGlobalNodePath=na.resolveGlobalNodePath,t.resolveGlobalYarnPath=na.resolveGlobalYarnPath,t.resolve=na.resolve,t.resolveModulePath=na.resolveModulePath})(Vk||(In.Files=Vk={}));var zk;function Fc(){if(zk!==void 0)try{zk.end()}catch{}}var Hs=!1,Yk;function jC(){let t="--clientProcessId";function e(n){try{let r=parseInt(n);isNaN(r)||(Yk=setInterval(()=>{try{process.kill(r,0)}catch{Fc(),process.exit(Hs?0:1)}},3e3))}catch{}}for(let n=2;n<process.argv.length;n++){let r=process.argv[n];if(r===t&&n+1<process.argv.length){e(process.argv[n+1]);return}else{let i=r.split("=");i[0]===t&&e(i[1])}}}jC();var FC={initialize:t=>{let e=t.processId;bh.number(e)&&Yk===void 0&&setInterval(()=>{try{process.kill(e,0)}catch{process.exit(Hs?0:1)}},3e3)},get shutdownReceived(){return Hs},set shutdownReceived(t){Hs=t},exit:t=>{Fc(),process.exit(t)}};function $C(t,e,n,r){let i,s,o,a;return t!==void 0&&t.__brand==="features"&&(i=t,t=e,e=n,n=r),Hi.ConnectionStrategy.is(t)||Hi.ConnectionOptions.is(t)?a=t:(s=t,o=e,a=n),BC(s,o,a,i)}In.createConnection=$C;function BC(t,e,n,r){let i=!1;if(!t&&!e&&process.argv.length>2){let u,c,l=process.argv.slice(2);for(let d=0;d<l.length;d++){let p=l[d];if(p==="--node-ipc"){t=new Hi.IPCMessageReader(process),e=new Hi.IPCMessageWriter(process);break}else if(p==="--stdio"){i=!0,t=process.stdin,e=process.stdout;break}else if(p==="--socket"){u=parseInt(l[d+1]);break}else if(p==="--pipe"){c=l[d+1];break}else{var s=p.split("=");if(s[0]==="--socket"){u=parseInt(s[1]);break}else if(s[0]==="--pipe"){c=s[1];break}}}if(u){let d=(0,Hi.createServerSocketTransport)(u);t=d[0],e=d[1]}else if(c){let d=(0,Hi.createServerPipeTransport)(c);t=d[0],e=d[1]}}var o="Use arguments of createConnection or set command line parameters: '--node-ipc', '--stdio' or '--socket={number}'";if(!t)throw new Error("Connection input stream is not set. "+o);if(!e)throw new Error("Connection output stream is not set. "+o);if(bh.func(t.read)&&bh.func(t.on)){let u=t;u.on("end",()=>{Fc(),process.exit(Hs?0:1)}),u.on("close",()=>{Fc(),process.exit(Hs?0:1)})}let a=u=>{let c=(0,Hi.createProtocolConnection)(t,e,u,n);return i&&UC(u),c};return(0,qC.createConnection)(a,FC,r)}function UC(t){function e(r){return r.map(i=>typeof i=="string"?i:(0,Kk.inspect)(i)).join(" ")}let n=new Map;console.assert=function(i,...s){if(!i)if(s.length===0)t.error("Assertion failed");else{let[o,...a]=s;t.error(`Assertion failed: ${o} ${e(a)}`)}},console.count=function(i="default"){let s=String(i),o=n.get(s)??0;o+=1,n.set(s,o),t.log(`${s}: ${s}`)},console.countReset=function(i){i===void 0?n.clear():n.delete(String(i))},console.debug=function(...i){t.log(e(i))},console.dir=function(i,s){t.log((0,Kk.inspect)(i,s))},console.log=function(...i){t.log(e(i))},console.error=function(...i){t.error(e(i))},console.trace=function(...i){let s=new Error().stack.replace(/(.+\n){2}/,""),o="Trace";i.length!==0&&(o+=`: ${e(i)}`),t.log(`${o}
36
+ ${s}`)},console.warn=function(...i){t.warn(e(i))}}});var vh=g((O2,Qk)=>{"use strict";Qk.exports=Jk()});var Ws=g(Nr=>{"use strict";Object.defineProperty(Nr,"__esModule",{value:!0});Nr.IndentationType=Nr.ConfigurationNamespace=Nr.LanguageId=void 0;Nr.LanguageId="miniscript";Nr.ConfigurationNamespace="miniscript";var HC;(function(t){t.Tab="Tab",t.Whitespace="Whitespace"})(HC=Nr.IndentationType||(Nr.IndentationType={}))});var ra=g($c=>{"use strict";Object.defineProperty($c,"__esModule",{value:!0});$c.Position=void 0;var _h=class{constructor(e,n){this.line=e,this.character=n}toString(){return`${this.line}:${this.character}`}};$c.Position=_h});var li=g(Tn=>{"use strict";Object.defineProperty(Tn,"__esModule",{value:!0});Tn.LiteralToken=Tn.Token=Tn.BaseToken=Tn.BaseTokenOptions=Tn.TokenType=void 0;var Zk=ra(),WC;(function(t){t.EOF="EOF",t.StringLiteral="StringLiteral",t.Keyword="Keyword",t.Identifier="Identifier",t.NumericLiteral="NumericLiteral",t.Punctuator="Punctuator",t.BooleanLiteral="BooleanLiteral",t.NilLiteral="NilLiteral",t.EOL="EOL",t.SliceOperator="SliceOperator",t.Comment="Comment",t.Invalid="Invalid"})(WC=Tn.TokenType||(Tn.TokenType={}));var Th=class{};Tn.BaseTokenOptions=Th;var ia=class{constructor(e){this.type=e.type,this.value=e.value,this.line=e.line,this.lineStart=e.lineStart,this.range=e.range,this.lastLine=e.lastLine,this.lastLineStart=e.lastLineStart,this.afterSpace=e.afterSpace;let n=e.offsetRange,r=e.range;this.start=new Zk.Position(this.line,r[0]-n[0]+1),this.end=new Zk.Position(this.lastLine||this.line,r[1]-n[1]+1)}toString(){let e=this.line,n=this.lastLine!==void 0?this.lastLine:this.line,r=this.start.character,i=this.end.character,s=`${e}:${r} - ${n}:${i}`;return`${this.type}[${s}: value = '${this.value}']`}};Tn.BaseToken=ia;var Sh=class extends ia{};Tn.Token=Sh;var kh=class extends ia{constructor(e){super(e),this.raw=e.raw}toString(){let e=this.line,n=this.lastLine!==void 0?this.lastLine:this.line,r=this.start.character,i=this.end.character,s=`${e}:${r} - ${n}:${i}`;return`${this.type}[${s}: value = ${this.raw}]`}};Tn.LiteralToken=kh});var Bc=g(sa=>{"use strict";Object.defineProperty(sa,"__esModule",{value:!0});sa.CharacterCode=void 0;var GC;(function(t){t[t.WHITESPACE=32]="WHITESPACE",t[t.QUOTE=34]="QUOTE",t[t.NUMBER_0=48]="NUMBER_0",t[t.NUMBER_1=49]="NUMBER_1",t[t.NUMBER_2=50]="NUMBER_2",t[t.NUMBER_3=51]="NUMBER_3",t[t.NUMBER_4=52]="NUMBER_4",t[t.NUMBER_5=53]="NUMBER_5",t[t.NUMBER_6=54]="NUMBER_6",t[t.NUMBER_7=55]="NUMBER_7",t[t.NUMBER_8=56]="NUMBER_8",t[t.NUMBER_9=57]="NUMBER_9",t[t.TAB=9]="TAB",t[t.NEW_LINE=10]="NEW_LINE",t[t.RETURN_LINE=13]="RETURN_LINE",t[t.SLASH=47]="SLASH",t[t.DOT=46]="DOT",t[t.EQUAL=61]="EQUAL",t[t.ASTERISK=42]="ASTERISK",t[t.CARET=94]="CARET",t[t.PERCENT=37]="PERCENT",t[t.COMMA=44]="COMMA",t[t.CURLY_BRACKET_LEFT=123]="CURLY_BRACKET_LEFT",t[t.CURLY_BRACKET_RIGHT=125]="CURLY_BRACKET_RIGHT",t[t.SQUARE_BRACKETS_LEFT=91]="SQUARE_BRACKETS_LEFT",t[t.SQUARE_BRACKETS_RIGHT=93]="SQUARE_BRACKETS_RIGHT",t[t.PARENTHESIS_LEFT=40]="PARENTHESIS_LEFT",t[t.PARENTHESIS_RIGHT=41]="PARENTHESIS_RIGHT",t[t.SEMICOLON=59]="SEMICOLON",t[t.HASH=35]="HASH",t[t.MINUS=45]="MINUS",t[t.PLUS=43]="PLUS",t[t.EXCLAMATION_MARK=33]="EXCLAMATION_MARK",t[t.AT_SIGN=64]="AT_SIGN",t[t.COLON=58]="COLON",t[t.ARROW_LEFT=60]="ARROW_LEFT",t[t.ARROW_RIGHT=62]="ARROW_RIGHT",t[t.LETTER_E=69]="LETTER_E",t[t.LETTER_e=101]="LETTER_e"})(GC=sa.CharacterCode||(sa.CharacterCode={}))});var Gs=g(oa=>{"use strict";Object.defineProperty(oa,"__esModule",{value:!0});oa.Keyword=void 0;var KC;(function(t){t.If="if",t.In="in",t.Or="or",t.And="and",t.Isa="isa",t.For="for",t.Not="not",t.New="new",t.End="end",t.EndFor="end for",t.EndWhile="end while",t.EndFunction="end function",t.EndIf="end if",t.Then="then",t.Else="else",t.Break="break",t.While="while",t.ElseIf="else if",t.Return="return",t.Function="function",t.Continue="continue",t.Repeat="repeat"})(KC=oa.Keyword||(oa.Keyword={}))});var Eh=g(wh=>{"use strict";Object.defineProperty(wh,"__esModule",{value:!0});var Mn=Bc(),VC=Gs(),xh=class{constructor(){this.isKeyword=Set.prototype.has.bind(new Set(Object.values(VC.Keyword)))}isWhitespace(e){return Mn.CharacterCode.WHITESPACE===e||Mn.CharacterCode.TAB===e}isEndOfLine(e){return Mn.CharacterCode.NEW_LINE===e||Mn.CharacterCode.RETURN_LINE===e}isComment(e,n){return Mn.CharacterCode.SLASH===e&&Mn.CharacterCode.SLASH===n}isIdentifierStart(e){return(e|32)>=97&&(e|32)<=122||e>=128||e===95}isIdentifierPart(e){return(e|32)>=97&&(e|32)<=122||e>=48&&e<=57||e>=128||e===95}isDecDigit(e){return e>=Mn.CharacterCode.NUMBER_0&&e<=Mn.CharacterCode.NUMBER_9}isWinNewline(e,n){switch(e){case Mn.CharacterCode.RETURN_LINE:return Mn.CharacterCode.NEW_LINE===n;case Mn.CharacterCode.NEW_LINE:return Mn.CharacterCode.RETURN_LINE===n}return!1}};wh.default=xh});var Uc=g(Ks=>{"use strict";Object.defineProperty(Ks,"__esModule",{value:!0});Ks.ParserException=Ks.LexerException=void 0;var Ah=class extends Error{constructor(e,n){super(e),this.range=n}};Ks.LexerException=Ah;var Oh=class extends Error{constructor(e,n){super(e),this.range=n}};Ks.ParserException=Oh});var Ch=g(aa=>{"use strict";Object.defineProperty(aa,"__esModule",{value:!0});aa.Literal=void 0;var zC;(function(t){t.True="true",t.False="false",t.Null="null"})(zC=aa.Literal||(aa.Literal={}))});var Vs=g(ua=>{"use strict";Object.defineProperty(ua,"__esModule",{value:!0});ua.Operator=void 0;var XC;(function(t){t.Plus="+",t.Asterik="*",t.Minus="-",t.Slash="/",t.Power="^",t.Modulo="%",t.LessThan="<",t.GreaterThan=">",t.LessThanOrEqual="<=",t.GreaterThanOrEqual=">=",t.NotEqual="!=",t.Equal="==",t.Or="or",t.And="and",t.Not="not",t.Isa="isa",t.AddShorthand="+=",t.SubtractShorthand="-=",t.MultiplyShorthand="*=",t.DivideShorthand="/=",t.PowerShorthand="^=",t.ModuloShorthand="%=",t.Member=".",t.Assign="=",t.EndOfLine=";",t.EndOfFile="<eof>",t.SliceSeperator=":",t.Comma=",",t.Escape='"',t.SLBracket="[",t.SRBracket="]",t.CLBracket="{",t.CRBracket="}",t.LParenthesis="(",t.RParenthesis=")",t.Reference="@",t.New="new"})(XC=ua.Operator||(ua.Operator={}))});var ca=g(Hc=>{"use strict";Object.defineProperty(Hc,"__esModule",{value:!0});Hc.Range=void 0;var Rh=class{constructor(e,n){this.start=e,this.end=n}toString(){return`${this.start} - ${this.end}`}};Hc.Range=Rh});var Ih=g(Dh=>{"use strict";Object.defineProperty(Dh,"__esModule",{value:!0});var Ph=class{constructor(){this._head=null,this._tail=null,this._size=0}enqueue(e){let n={value:e};this._head?this._tail.next=n:this._head=n,this._tail=n,this._size++}dequeue(){let e=this._head.value;if(e)return this._head=this._head.next,this._size--,e}peek(){var e;return((e=this._head)===null||e===void 0?void 0:e.value)||null}clear(){this._head=null,this._tail=null,this._size=0}copyInto(e){this._head=e._head,this._tail=e._tail,this._size=e._size}get size(){return this._size}*[Symbol.iterator](){let e=this._head;for(;e;)yield e,e=e.next}};Dh.default=Ph});var Nh=g(da=>{"use strict";var tx=da&&da.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(da,"__esModule",{value:!0});var rt=li(),YC=tx(Eh()),_e=Bc(),JC=Uc(),Mh=Gs(),la=Ch(),it=Vs(),zs=ra(),Lh=ca(),ex=tx(Ih());function di(t){let e=this.content[this.index];return this.index+=e.length,this.createPunctuator(e,t)}var Wc=class t{constructor(e,n={}){let r=this;r.content=e,r.length=e.length,r.index=0,r.tokenStart=null,r.tabWidth=n.tabWidth||1,r.line=1,r.lineStart=0,r.offset=0,r.validator=n.validator||new YC.default,r.unsafe=n.unsafe,r.errors=[],r.backlog=new ex.default,r.snapshot=new ex.default}scan(e,n){let r=t.scanHandlers[e];return r?r.call(this,n):this.validator.isDecDigit(e)?this.scanNumericLiteral(n):(this.index++,null)}isAtWhitespace(){return this.validator.isWhitespace(this.codeAt())}codeAt(e=0){let n=this.index+e;return n<this.length?this.content.charCodeAt(n):0}createEOL(e){let n=this,r=new rt.Token({type:rt.TokenType.EOL,value:it.Operator.EndOfLine,line:n.line,lineStart:n.lineStart,range:[n.tokenStart,n.index],offsetRange:[n.offset,n.offset],afterSpace:e});return n.snapshot.enqueue(r),r}createIdentifier(e,n){let r=this,i=new rt.Token({type:rt.TokenType.Identifier,value:e,line:r.line,lineStart:r.lineStart,range:[r.tokenStart,r.index],offsetRange:[r.offset,r.offset],afterSpace:n});return r.snapshot.enqueue(i),i}createEOF(e){let n=this,r=new rt.Token({type:rt.TokenType.EOF,value:it.Operator.EndOfFile,line:n.line,lineStart:n.lineStart,range:[n.index,n.index],offsetRange:[n.offset,n.offset],afterSpace:e});return n.snapshot.enqueue(r),r}createBoolean(e,n){let r=this,i=new rt.LiteralToken({type:rt.TokenType.BooleanLiteral,value:e===la.Literal.True,raw:e,line:r.line,lineStart:r.lineStart,range:[r.tokenStart,r.index],offsetRange:[r.offset,r.offset],afterSpace:n});return r.snapshot.enqueue(i),i}createNull(e){let n=this,r=new rt.LiteralToken({type:rt.TokenType.NilLiteral,value:null,raw:la.Literal.Null,line:n.line,lineStart:n.lineStart,range:[n.tokenStart,n.index],offsetRange:[n.offset,n.offset],afterSpace:e});return n.snapshot.enqueue(r),r}createSlice(e){let n=new rt.Token({type:rt.TokenType.SliceOperator,value:it.Operator.SliceSeperator,line:this.line,lineStart:this.lineStart,range:[this.tokenStart,this.index],offsetRange:[this.offset,this.offset],afterSpace:e});return this.snapshot.enqueue(n),n}createPunctuator(e,n){let r=new rt.Token({type:rt.TokenType.Punctuator,value:e,line:this.line,lineStart:this.lineStart,range:[this.tokenStart,this.index],offsetRange:[this.offset,this.offset],afterSpace:n});return this.snapshot.enqueue(r),r}createNumericLiteral(e,n,r){let i=new rt.LiteralToken({type:rt.TokenType.NumericLiteral,value:e,raw:n,line:this.line,lineStart:this.lineStart,range:[this.tokenStart,this.index],offsetRange:[this.offset,this.offset],afterSpace:r});return this.snapshot.enqueue(i),i}scanStringLiteral(e){let n=this,r=n.validator,i=n.line,s=n.lineStart,o=n.index,a=n.offset,u=n.offset,c=!1;for(;n.index<n.length;){n.index++;let b=n.codeAt();if(n.validator.isEndOfLine(b))r.isWinNewline(b,n.codeAt(1))&&n.index++,n.line++,u=n.index+1;else if(_e.CharacterCode.QUOTE===b){if(_e.CharacterCode.QUOTE!==n.codeAt(1)){c=!0;break}n.index++}}if(!c)return n.raise("Unexpected string end of file.",new Lh.Range(new zs.Position(i,o-a+1),new zs.Position(n.line,n.index-u+2)));n.index++;let l=n.content.slice(n.tokenStart,n.index),d=l.slice(1,-1).replace(/""/g,it.Operator.Escape),p=new rt.LiteralToken({type:rt.TokenType.StringLiteral,value:d,raw:l,line:i,lineStart:s,range:[n.tokenStart,n.index],offsetRange:[a,u],afterSpace:e,lastLine:n.line,lastLineStart:n.lineStart});return n.offset=u,n.snapshot.enqueue(p),p}scanComment(e){let n=this,r=n.validator,i=n.line,s=n.lineStart;for(;this.index<this.length&&!r.isEndOfLine(n.codeAt());n.index++);r.isWinNewline(n.codeAt(),n.codeAt(1))&&n.index++;let o=n.content.slice(n.tokenStart+2,n.index),a=new rt.Token({type:rt.TokenType.Comment,value:o,line:i,lineStart:s,range:[n.tokenStart,n.index],offsetRange:[n.offset,n.offset],afterSpace:e});return n.snapshot.enqueue(a),a}scanNumericLiteral(e){let n=this.validator,r,i;for(;this.index<this.length&&(r=i,i=this.codeAt(),n.isDecDigit(i)||_e.CharacterCode.DOT===i||_e.CharacterCode.LETTER_E===i||_e.CharacterCode.LETTER_e===i||(_e.CharacterCode.MINUS===i||_e.CharacterCode.PLUS===i)&&(_e.CharacterCode.LETTER_E===r||_e.CharacterCode.LETTER_e===r));)this.index++;let s=this.content.slice(this.tokenStart,this.index),o=Number(s);return isNaN(o)?this.raise(`Invalid numeric literal: ${s}`,new Lh.Range(new zs.Position(this.line,this.tokenStart-this.offset+1),new zs.Position(this.line,this.index-this.offset+1))):this.createNumericLiteral(o,s,e)}scanPunctuator(e,n){return this.index+=e.length,this.createPunctuator(e,n)}skipWhiteSpace(){let e=this;for(;e.index<e.length;e.index++){let n=e.content[e.index];if(n===" ")e.offset-=e.tabWidth-1;else if(n!==" ")return}}scanKeyword(e,n){let r=this,i=r.validator,s=e;switch(e){case Mh.Keyword.End:{for(r.index++;i.isIdentifierPart(r.codeAt());r.index++);s=r.content.slice(r.tokenStart,r.index);break}case Mh.Keyword.Else:{let a=r.content.slice(r.tokenStart,r.index+3);a===Mh.Keyword.ElseIf&&(r.index+=3,s=a);break}}let o=new rt.Token({type:rt.TokenType.Keyword,value:s,line:r.line,lineStart:r.lineStart,range:[r.tokenStart,r.index],offsetRange:[r.offset,r.offset],afterSpace:n});return r.snapshot.enqueue(o),o}scanIdentifierOrKeyword(e){let n=this,r=n.validator;for(n.index++;r.isIdentifierPart(n.codeAt());n.index++);let i=n.content.slice(n.tokenStart,n.index);if(r.isKeyword(i))return n.scanKeyword(i,e);switch(i){case la.Literal.True:case la.Literal.False:return n.createBoolean(i,e);case la.Literal.Null:return n.createNull(e)}return n.createIdentifier(i,e)}next(){let e=this;if(e.backlog.size)return e.backlog.dequeue();let n=e.index;e.skipWhiteSpace();let r=n<e.index,i=e.codeAt();if(e.validator.isComment(i,e.codeAt(1)))return e.tokenStart=e.index,e.scanComment(r);if(this.index>=this.length)return e.createEOF(r);if(e.tokenStart=e.index,e.validator.isEndOfLine(i)){e.validator.isWinNewline(i,e.codeAt(1))&&e.index++;let a=e.createEOL(r);return e.line++,e.offset=e.index+1,e.lineStart=++e.index,a}if(e.validator.isIdentifierStart(i))return e.scanIdentifierOrKeyword(r);let s=e.line,o=e.scan(i,r);return o||e.raise(`Invalid character ${i} (Code: ${String.fromCharCode(i)})`,new Lh.Range(new zs.Position(s,e.tokenStart-e.offset+1),new zs.Position(e.line,e.index-e.offset+1)))}recordSnapshot(){this.snapshot.clear()}recoverFromSnapshot(){this.backlog.copyInto(this.snapshot)}raise(e,n){let r=this,i=new JC.LexerException(e,n);if(r.errors.push(i),r.unsafe)return new rt.Token({type:rt.TokenType.Invalid,value:"",line:r.line,lineStart:r.lineStart,range:[r.tokenStart,r.index],offsetRange:[r.offset,r.offset]});throw i}};da.default=Wc;Wc.scanHandlers={[_e.CharacterCode.QUOTE]:function(e){return this.scanStringLiteral(e)},[_e.CharacterCode.DOT]:function(e){return this.validator.isDecDigit(this.codeAt(1))?this.scanNumericLiteral(e):(this.index++,this.createPunctuator(it.Operator.Member,e))},[_e.CharacterCode.EQUAL]:function(e){return _e.CharacterCode.EQUAL===this.codeAt(1)?this.scanPunctuator(it.Operator.Equal,e):this.scanPunctuator(it.Operator.Assign,e)},[_e.CharacterCode.ARROW_LEFT]:function(e){return _e.CharacterCode.EQUAL===this.codeAt(1)?this.scanPunctuator(it.Operator.LessThanOrEqual,e):this.scanPunctuator(it.Operator.LessThan,e)},[_e.CharacterCode.ARROW_RIGHT]:function(e){return _e.CharacterCode.EQUAL===this.codeAt(1)?this.scanPunctuator(it.Operator.GreaterThanOrEqual,e):this.scanPunctuator(it.Operator.GreaterThan,e)},[_e.CharacterCode.EXCLAMATION_MARK]:function(e){return _e.CharacterCode.EQUAL===this.codeAt(1)?this.scanPunctuator(it.Operator.NotEqual,e):(this.index++,null)},[_e.CharacterCode.MINUS]:function(e){return _e.CharacterCode.EQUAL===this.codeAt(1)?this.scanPunctuator(it.Operator.SubtractShorthand,e):this.scanPunctuator(it.Operator.Minus,e)},[_e.CharacterCode.PLUS]:function(e){return _e.CharacterCode.EQUAL===this.codeAt(1)?this.scanPunctuator(it.Operator.AddShorthand,e):this.scanPunctuator(it.Operator.Plus,e)},[_e.CharacterCode.ASTERISK]:function(e){return _e.CharacterCode.EQUAL===this.codeAt(1)?this.scanPunctuator(it.Operator.MultiplyShorthand,e):this.scanPunctuator(it.Operator.Asterik,e)},[_e.CharacterCode.SLASH]:function(e){return _e.CharacterCode.EQUAL===this.codeAt(1)?this.scanPunctuator(it.Operator.DivideShorthand,e):this.scanPunctuator(it.Operator.Slash,e)},[_e.CharacterCode.COLON]:function(e){return this.index++,this.createSlice(e)},[_e.CharacterCode.CARET]:function(e){return _e.CharacterCode.EQUAL===this.codeAt(1)?this.scanPunctuator(it.Operator.PowerShorthand,e):this.scanPunctuator(it.Operator.Power,e)},[_e.CharacterCode.PERCENT]:function(e){return _e.CharacterCode.EQUAL===this.codeAt(1)?this.scanPunctuator(it.Operator.ModuloShorthand,e):this.scanPunctuator(it.Operator.Modulo,e)},[_e.CharacterCode.SEMICOLON]:function(e){return this.index++,this.createEOL(e)},[_e.CharacterCode.COMMA]:di,[_e.CharacterCode.CURLY_BRACKET_LEFT]:di,[_e.CharacterCode.CURLY_BRACKET_RIGHT]:di,[_e.CharacterCode.SQUARE_BRACKETS_LEFT]:di,[_e.CharacterCode.SQUARE_BRACKETS_RIGHT]:di,[_e.CharacterCode.PARENTHESIS_LEFT]:di,[_e.CharacterCode.PARENTHESIS_RIGHT]:di,[_e.CharacterCode.AT_SIGN]:di}});var dt=g(Sn=>{"use strict";Object.defineProperty(Sn,"__esModule",{value:!0});Sn.ASTComment=Sn.ASTBaseBlockWithScope=Sn.ASTBaseBlock=Sn.ASTBase=Sn.ASTType=void 0;var nx;(function(t){t.BreakStatement="BreakStatement",t.ContinueStatement="ContinueStatement",t.ReturnStatement="ReturnStatement",t.IfShortcutStatement="IfShortcutStatement",t.IfShortcutClause="IfShortcutClause",t.ElseifShortcutClause="ElseifShortcutClause",t.ElseShortcutClause="ElseShortcutClause",t.IfStatement="IfStatement",t.IfClause="IfClause",t.ElseifClause="ElseifClause",t.ElseClause="ElseClause",t.WhileStatement="WhileStatement",t.AssignmentStatement="AssignmentStatement",t.CallStatement="CallStatement",t.FunctionDeclaration="FunctionDeclaration",t.ForGenericStatement="ForGenericStatement",t.Chunk="Chunk",t.Identifier="Identifier",t.StringLiteral="StringLiteral",t.NumericLiteral="NumericLiteral",t.BooleanLiteral="BooleanLiteral",t.NilLiteral="NilLiteral",t.Unknown="Unknown",t.MemberExpression="MemberExpression",t.CallExpression="CallExpression",t.Comment="Comment",t.NegationExpression="NegationExpression",t.BinaryNegatedExpression="BinaryNegatedExpression",t.UnaryExpression="UnaryExpression",t.MapKeyString="MapKeyString",t.MapValue="MapValue",t.MapConstructorExpression="MapConstructorExpression",t.MapCallExpression="MapCallExpression",t.ListValue="ListValue",t.ListConstructorExpression="ListConstructorExpression",t.EmptyExpression="EmptyExpression",t.IndexExpression="IndexExpression",t.BinaryExpression="BinaryExpression",t.LogicalExpression="LogicalExpression",t.IsaExpression="IsaExpression",t.SliceExpression="SliceExpression",t.ImportCodeExpression="ImportCodeExpression",t.InvalidCodeExpression="InvalidCodeExpression",t.ParenthesisExpression="ParenthesisExpression",t.ComparisonGroupExpression="ComparisonGroupExpression"})(nx=Sn.ASTType||(Sn.ASTType={}));var fa=class t{constructor(e,n){this.type=e,this.start=n.start,this.end=n.end,this.range=n.range,this.scope=n.scope||null}toString(){return`${this.type}[${this.start}-${this.end}][]`}clone(){return new t(this.type,{start:this.start,end:this.end,range:this.range,scope:this.scope})}};Sn.ASTBase=fa;var Gc=class t extends fa{constructor(e,n){super(e,n),this.body=n.body||[]}toString(){let e=this.body.map(n=>`${n}`).join(`
37
37
  `).split(`
38
38
  `).map(n=>` ${n}`).join(`
39
39
  `);return`${this.type}[${this.start}-${this.end}][${e.length>0?`
40
40
  ${e}
41
- `:""}]`}clone(){return new t(this.type,{body:this.body.map(e=>e.clone()),start:this.start,end:this.end,range:this.range,scope:this.scope})}};Sn.ASTBaseBlock=Gc;var qh=class t extends Gc{constructor(e,n){super(e,n),this.namespaces=n.namespaces||new Set,this.assignments=n.assignments||[],this.returns=n.returns||[]}clone(){return new t(this.type,{namespaces:this.namespaces,assignments:this.assignments.map(e=>e.clone()),returns:this.returns.map(e=>e.clone()),body:this.body.map(e=>e.clone()),start:this.start,end:this.end,range:this.range,scope:this.scope})}};Sn.ASTBaseBlockWithScope=qh;var jh=class t extends fa{constructor(e){super(ex.Comment,e),this.value=e.value,this.isMultiline=e.isMultiline||!1}toString(){return`Comment[${this.start}-${this.end}][${this.value}]`}clone(){return new t({value:this.value,isMultiline:this.isMultiline,start:this.start,end:this.end,range:this.range,scope:this.scope})}};Sn.ASTComment=jh});var $h=g(Kc=>{"use strict";Object.defineProperty(Kc,"__esModule",{value:!0});Kc.ASTAssignmentStatement=void 0;var tx=dt(),Fh=class t extends tx.ASTBase{constructor(e){super(tx.ASTType.AssignmentStatement,e),this.variable=e.variable,this.init=e.init}toString(){return`AssignmentStatement[${this.start}-${this.end}][${this.variable} = ${this.init}]`}clone(){return new t({variable:this.variable.clone(),init:this.init.clone(),start:this.start,end:this.end,range:this.range,scope:this.scope})}};Kc.ASTAssignmentStatement=Fh});var Uh=g(Vc=>{"use strict";Object.defineProperty(Vc,"__esModule",{value:!0});Vc.ASTBinaryExpression=void 0;var nx=dt(),Bh=class t extends nx.ASTBase{constructor(e){super(nx.ASTType.BinaryExpression,e),this.operator=e.operator,this.left=e.left,this.right=e.right}toString(){return`${this.type}[${this.start}-${this.end}][${this.left} ${this.operator} ${this.right}]`}clone(){return new t({operator:this.operator,left:this.left.clone(),right:this.right.clone(),start:this.start,end:this.end,range:this.range,scope:this.scope})}};Vc.ASTBinaryExpression=Bh});var Gh=g(Xs=>{"use strict";Object.defineProperty(Xs,"__esModule",{value:!0});Xs.ASTCallExpression=Xs.ASTCallStatement=void 0;var zc=dt(),Hh=class t extends zc.ASTBase{constructor(e){super(zc.ASTType.CallStatement,e),this.expression=e.expression}toString(){return`CallStatment[${this.start}-${this.end}][${this.expression}]`}clone(){return new t({expression:this.expression,start:this.start,end:this.end,range:this.range,scope:this.scope})}};Xs.ASTCallStatement=Hh;var Wh=class t extends zc.ASTBase{constructor(e){super(zc.ASTType.CallExpression,e),this.base=e.base,this.arguments=e.arguments||[]}toString(){return`CallExpression[${this.start}-${this.end}][${this.base}(${this.arguments.map(e=>e.toString()).join(", ")})]`}clone(){return new t({base:this.base.clone(),arguments:this.arguments.map(e=>e.clone()),start:this.start,end:this.end,range:this.range,scope:this.scope})}};Xs.ASTCallExpression=Wh});var Vh=g(Xc=>{"use strict";Object.defineProperty(Xc,"__esModule",{value:!0});Xc.ASTChunk=void 0;var rx=dt(),Kh=class t extends rx.ASTBaseBlockWithScope{constructor(e){super(rx.ASTType.Chunk,e),this.literals=e.literals||[],this.scopes=e.scopes||[],this.lines=e.lines||{}}toString(){if(this.body.length===0)return`Chunk[${this.start}-${this.end}][]`;let e=this.body.map(n=>`${n}`).join(`
41
+ `:""}]`}clone(){return new t(this.type,{body:this.body.map(e=>e.clone()),start:this.start,end:this.end,range:this.range,scope:this.scope})}};Sn.ASTBaseBlock=Gc;var qh=class t extends Gc{constructor(e,n){super(e,n),this.namespaces=n.namespaces||new Set,this.assignments=n.assignments||[],this.returns=n.returns||[]}clone(){return new t(this.type,{namespaces:this.namespaces,assignments:this.assignments.map(e=>e.clone()),returns:this.returns.map(e=>e.clone()),body:this.body.map(e=>e.clone()),start:this.start,end:this.end,range:this.range,scope:this.scope})}};Sn.ASTBaseBlockWithScope=qh;var jh=class t extends fa{constructor(e){super(nx.Comment,e),this.value=e.value,this.isMultiline=e.isMultiline||!1}toString(){return`Comment[${this.start}-${this.end}][${this.value}]`}clone(){return new t({value:this.value,isMultiline:this.isMultiline,start:this.start,end:this.end,range:this.range,scope:this.scope})}};Sn.ASTComment=jh});var $h=g(Kc=>{"use strict";Object.defineProperty(Kc,"__esModule",{value:!0});Kc.ASTAssignmentStatement=void 0;var rx=dt(),Fh=class t extends rx.ASTBase{constructor(e){super(rx.ASTType.AssignmentStatement,e),this.variable=e.variable,this.init=e.init}toString(){return`AssignmentStatement[${this.start}-${this.end}][${this.variable} = ${this.init}]`}clone(){return new t({variable:this.variable.clone(),init:this.init.clone(),start:this.start,end:this.end,range:this.range,scope:this.scope})}};Kc.ASTAssignmentStatement=Fh});var Uh=g(Vc=>{"use strict";Object.defineProperty(Vc,"__esModule",{value:!0});Vc.ASTBinaryExpression=void 0;var ix=dt(),Bh=class t extends ix.ASTBase{constructor(e){super(ix.ASTType.BinaryExpression,e),this.operator=e.operator,this.left=e.left,this.right=e.right}toString(){return`${this.type}[${this.start}-${this.end}][${this.left} ${this.operator} ${this.right}]`}clone(){return new t({operator:this.operator,left:this.left.clone(),right:this.right.clone(),start:this.start,end:this.end,range:this.range,scope:this.scope})}};Vc.ASTBinaryExpression=Bh});var Gh=g(Xs=>{"use strict";Object.defineProperty(Xs,"__esModule",{value:!0});Xs.ASTCallExpression=Xs.ASTCallStatement=void 0;var zc=dt(),Hh=class t extends zc.ASTBase{constructor(e){super(zc.ASTType.CallStatement,e),this.expression=e.expression}toString(){return`CallStatment[${this.start}-${this.end}][${this.expression}]`}clone(){return new t({expression:this.expression,start:this.start,end:this.end,range:this.range,scope:this.scope})}};Xs.ASTCallStatement=Hh;var Wh=class t extends zc.ASTBase{constructor(e){super(zc.ASTType.CallExpression,e),this.base=e.base,this.arguments=e.arguments||[]}toString(){return`CallExpression[${this.start}-${this.end}][${this.base}(${this.arguments.map(e=>e.toString()).join(", ")})]`}clone(){return new t({base:this.base.clone(),arguments:this.arguments.map(e=>e.clone()),start:this.start,end:this.end,range:this.range,scope:this.scope})}};Xs.ASTCallExpression=Wh});var Vh=g(Xc=>{"use strict";Object.defineProperty(Xc,"__esModule",{value:!0});Xc.ASTChunk=void 0;var sx=dt(),Kh=class t extends sx.ASTBaseBlockWithScope{constructor(e){super(sx.ASTType.Chunk,e),this.literals=e.literals||[],this.scopes=e.scopes||[],this.lines=e.lines||{}}toString(){if(this.body.length===0)return`Chunk[${this.start}-${this.end}][]`;let e=this.body.map(n=>`${n}`).join(`
42
42
  `).split(`
43
43
  `).map(n=>` ${n}`).join(`
44
44
  `);return`Chunk[${this.start}-${this.end}][
45
45
  ${e}
46
- ]`}clone(){return new t({literals:this.literals.map(e=>e.clone()),scopes:this.scopes.map(e=>e.clone()),lines:this.lines,start:this.start,end:this.end,range:this.range,scope:this.scope})}};Xc.ASTChunk=Kh});var Xh=g(Yc=>{"use strict";Object.defineProperty(Yc,"__esModule",{value:!0});Yc.ASTComparisonGroupExpression=void 0;var ix=dt(),zh=class t extends ix.ASTBase{constructor(e){super(ix.ASTType.ComparisonGroupExpression,e),this.operators=e.operators,this.expressions=e.expressions}toString(){let e=[this.expressions[0].toString()];for(let n=1;n<this.expressions.length;n++)e.push(this.operators[n-1],this.expressions[n].toString());return`${this.type}[${this.start}-${this.end}][${e.join(" ")}]`}clone(){return new t({operators:this.operators,expressions:this.expressions,start:this.start,end:this.end,range:this.range,scope:this.scope})}};Yc.ASTComparisonGroupExpression=zh});var Jh=g(Jc=>{"use strict";Object.defineProperty(Jc,"__esModule",{value:!0});Jc.ASTForGenericStatement=void 0;var sx=dt(),Yh=class t extends sx.ASTBaseBlock{constructor(e){super(sx.ASTType.ForGenericStatement,e),this.variable=e.variable,this.iterator=e.iterator}toString(){if(this.body.length===0)return`${this.type}[${this.start}-${this.end}][${this.variable} in ${this.iterator}]`;let e=this.body.map(n=>`${n}`).join(`
46
+ ]`}clone(){return new t({literals:this.literals.map(e=>e.clone()),scopes:this.scopes.map(e=>e.clone()),lines:this.lines,start:this.start,end:this.end,range:this.range,scope:this.scope})}};Xc.ASTChunk=Kh});var Xh=g(Yc=>{"use strict";Object.defineProperty(Yc,"__esModule",{value:!0});Yc.ASTComparisonGroupExpression=void 0;var ox=dt(),zh=class t extends ox.ASTBase{constructor(e){super(ox.ASTType.ComparisonGroupExpression,e),this.operators=e.operators,this.expressions=e.expressions}toString(){let e=[this.expressions[0].toString()];for(let n=1;n<this.expressions.length;n++)e.push(this.operators[n-1],this.expressions[n].toString());return`${this.type}[${this.start}-${this.end}][${e.join(" ")}]`}clone(){return new t({operators:this.operators,expressions:this.expressions,start:this.start,end:this.end,range:this.range,scope:this.scope})}};Yc.ASTComparisonGroupExpression=zh});var Jh=g(Jc=>{"use strict";Object.defineProperty(Jc,"__esModule",{value:!0});Jc.ASTForGenericStatement=void 0;var ax=dt(),Yh=class t extends ax.ASTBaseBlock{constructor(e){super(ax.ASTType.ForGenericStatement,e),this.variable=e.variable,this.iterator=e.iterator}toString(){if(this.body.length===0)return`${this.type}[${this.start}-${this.end}][${this.variable} in ${this.iterator}]`;let e=this.body.map(n=>`${n}`).join(`
47
47
  `).split(`
48
48
  `).map(n=>` ${n}`).join(`
49
49
  `);return`For[${this.start}-${this.end}][${this.variable} in ${this.iterator}
50
50
  ${e}
51
- ]`}clone(){return new t({variable:this.variable.clone(),iterator:this.iterator.clone(),start:this.start,end:this.end,range:this.range,scope:this.scope})}};Jc.ASTForGenericStatement=Yh});var Zh=g(Qc=>{"use strict";Object.defineProperty(Qc,"__esModule",{value:!0});Qc.ASTFunctionStatement=void 0;var ox=dt(),Qh=class t extends ox.ASTBaseBlockWithScope{constructor(e){super(ox.ASTType.FunctionDeclaration,e),this.parameters=e.parameters||[],this.assignment=e.assignment}toString(){let e=this.parameters.map(r=>r).join(", ");if(this.body.length===0)return`${this.type}[${this.start}-${this.end}][${e}]`;let n=this.body.map(r=>`${r}`).join(`
51
+ ]`}clone(){return new t({variable:this.variable.clone(),iterator:this.iterator.clone(),start:this.start,end:this.end,range:this.range,scope:this.scope})}};Jc.ASTForGenericStatement=Yh});var Zh=g(Qc=>{"use strict";Object.defineProperty(Qc,"__esModule",{value:!0});Qc.ASTFunctionStatement=void 0;var ux=dt(),Qh=class t extends ux.ASTBaseBlockWithScope{constructor(e){super(ux.ASTType.FunctionDeclaration,e),this.parameters=e.parameters||[],this.assignment=e.assignment}toString(){let e=this.parameters.map(r=>r).join(", ");if(this.body.length===0)return`${this.type}[${this.start}-${this.end}][${e}]`;let n=this.body.map(r=>`${r}`).join(`
52
52
  `).split(`
53
53
  `).map(r=>` ${r}`).join(`
54
54
  `);return`Function[${this.start}-${this.end}][${e} =>
55
55
  ${n}
56
- ]`}clone(){return new t({parameters:this.parameters.map(e=>e.clone()),assignment:this.assignment.clone(),start:this.start,end:this.end,range:this.range,scope:this.scope})}};Qc.ASTFunctionStatement=Qh});var rg=g(di=>{"use strict";Object.defineProperty(di,"__esModule",{value:!0});di.ASTIndexExpression=di.ASTMemberExpression=di.ASTIdentifier=void 0;var Ys=dt(),eg=class t extends Ys.ASTBase{constructor(e){super(Ys.ASTType.Identifier,e),this.name=e.name}toString(){return`Identifier[${this.start}-${this.end}][${this.name}]`}clone(){return new t({name:this.name,start:this.start,end:this.end,range:this.range,scope:this.scope})}};di.ASTIdentifier=eg;var tg=class t extends Ys.ASTBase{constructor(e){super(Ys.ASTType.MemberExpression,e),this.indexer=e.indexer,this.identifier=e.identifier,this.base=e.base}toString(){return`MemberExpression[${this.start}-${this.end}][${this.base}.${this.identifier}]`}clone(){return new t({indexer:this.indexer,identifier:this.identifier.clone(),base:this.base,start:this.start,end:this.end,range:this.range,scope:this.scope})}};di.ASTMemberExpression=tg;var ng=class t extends Ys.ASTBase{constructor(e){super(Ys.ASTType.IndexExpression,e),this.base=e.base,this.index=e.index}toString(){return`IndexExpression[${this.start}-${this.end}][${this.base}[${this.index}]]`}clone(){return new t({base:this.base.clone(),index:this.index.clone(),start:this.start,end:this.end,range:this.range,scope:this.scope})}};di.ASTIndexExpression=ng});var ag=g(pr=>{"use strict";Object.defineProperty(pr,"__esModule",{value:!0});pr.ASTElseClause=pr.ASTIfClause=pr.ASTIfStatement=pr.ASTClause=void 0;var ax=dt(),pa=class extends ax.ASTBaseBlock{};pr.ASTClause=pa;var ig=class t extends ax.ASTBase{constructor(e,n){super(e,n),this.clauses=n.clauses||[]}toString(){if(this.clauses.length===0)return`IfStatement[${this.start}-${this.end}][]`;let e=this.clauses.map(n=>`${n}`).join(`
56
+ ]`}clone(){return new t({parameters:this.parameters.map(e=>e.clone()),assignment:this.assignment.clone(),start:this.start,end:this.end,range:this.range,scope:this.scope})}};Qc.ASTFunctionStatement=Qh});var rg=g(fi=>{"use strict";Object.defineProperty(fi,"__esModule",{value:!0});fi.ASTIndexExpression=fi.ASTMemberExpression=fi.ASTIdentifier=void 0;var Ys=dt(),eg=class t extends Ys.ASTBase{constructor(e){super(Ys.ASTType.Identifier,e),this.name=e.name}toString(){return`Identifier[${this.start}-${this.end}][${this.name}]`}clone(){return new t({name:this.name,start:this.start,end:this.end,range:this.range,scope:this.scope})}};fi.ASTIdentifier=eg;var tg=class t extends Ys.ASTBase{constructor(e){super(Ys.ASTType.MemberExpression,e),this.indexer=e.indexer,this.identifier=e.identifier,this.base=e.base}toString(){return`MemberExpression[${this.start}-${this.end}][${this.base}.${this.identifier}]`}clone(){return new t({indexer:this.indexer,identifier:this.identifier.clone(),base:this.base,start:this.start,end:this.end,range:this.range,scope:this.scope})}};fi.ASTMemberExpression=tg;var ng=class t extends Ys.ASTBase{constructor(e){super(Ys.ASTType.IndexExpression,e),this.base=e.base,this.index=e.index}toString(){return`IndexExpression[${this.start}-${this.end}][${this.base}[${this.index}]]`}clone(){return new t({base:this.base.clone(),index:this.index.clone(),start:this.start,end:this.end,range:this.range,scope:this.scope})}};fi.ASTIndexExpression=ng});var ag=g(pr=>{"use strict";Object.defineProperty(pr,"__esModule",{value:!0});pr.ASTElseClause=pr.ASTIfClause=pr.ASTIfStatement=pr.ASTClause=void 0;var cx=dt(),pa=class extends cx.ASTBaseBlock{};pr.ASTClause=pa;var ig=class t extends cx.ASTBase{constructor(e,n){super(e,n),this.clauses=n.clauses||[]}toString(){if(this.clauses.length===0)return`IfStatement[${this.start}-${this.end}][]`;let e=this.clauses.map(n=>`${n}`).join(`
57
57
  `).split(`
58
58
  `).map(n=>` ${n}`).join(`
59
59
  `);return`IfStatement[${this.start}-${this.end}][
@@ -68,22 +68,22 @@ ${e}
68
68
  `).map(n=>` ${n}`).join(`
69
69
  `);return`${this.type}[${this.start}-${this.end}][
70
70
  ${e}
71
- }]`}clone(){return new t(this.type,{start:this.start,end:this.end,range:this.range,scope:this.scope})}};pr.ASTElseClause=og});var cg=g(Zc=>{"use strict";Object.defineProperty(Zc,"__esModule",{value:!0});Zc.ASTIsaExpression=void 0;var ux=dt(),ug=class t extends ux.ASTBase{constructor(e){super(ux.ASTType.IsaExpression,e),this.operator=e.operator,this.left=e.left,this.right=e.right}toString(){return`${this.type}[${this.start}-${this.end}][${this.left} ${this.operator} ${this.right}]`}clone(){return new t({operator:this.operator,left:this.left.clone(),right:this.right.clone(),start:this.start,end:this.end,range:this.range,scope:this.scope})}};Zc.ASTIsaExpression=ug});var fg=g(Js=>{"use strict";Object.defineProperty(Js,"__esModule",{value:!0});Js.ASTListConstructorExpression=Js.ASTListValue=void 0;var el=dt(),lg=class t extends el.ASTBase{constructor(e){super(el.ASTType.ListValue,e),this.value=e.value}toString(){return`ListValue[${this.start}-${this.end}][${this.value}]`}clone(){return new t({value:this.value.clone(),start:this.start,end:this.end,range:this.range,scope:this.scope})}};Js.ASTListValue=lg;var dg=class t extends el.ASTBase{constructor(e){super(el.ASTType.ListConstructorExpression,e),this.fields=e.fields||[]}toString(){if(this.fields.length===0)return`ListConstructor[${this.start}-${this.end}][]`;let e=this.fields.map(n=>`${n}`).join(`
71
+ }]`}clone(){return new t(this.type,{start:this.start,end:this.end,range:this.range,scope:this.scope})}};pr.ASTElseClause=og});var cg=g(Zc=>{"use strict";Object.defineProperty(Zc,"__esModule",{value:!0});Zc.ASTIsaExpression=void 0;var lx=dt(),ug=class t extends lx.ASTBase{constructor(e){super(lx.ASTType.IsaExpression,e),this.operator=e.operator,this.left=e.left,this.right=e.right}toString(){return`${this.type}[${this.start}-${this.end}][${this.left} ${this.operator} ${this.right}]`}clone(){return new t({operator:this.operator,left:this.left.clone(),right:this.right.clone(),start:this.start,end:this.end,range:this.range,scope:this.scope})}};Zc.ASTIsaExpression=ug});var fg=g(Js=>{"use strict";Object.defineProperty(Js,"__esModule",{value:!0});Js.ASTListConstructorExpression=Js.ASTListValue=void 0;var el=dt(),lg=class t extends el.ASTBase{constructor(e){super(el.ASTType.ListValue,e),this.value=e.value}toString(){return`ListValue[${this.start}-${this.end}][${this.value}]`}clone(){return new t({value:this.value.clone(),start:this.start,end:this.end,range:this.range,scope:this.scope})}};Js.ASTListValue=lg;var dg=class t extends el.ASTBase{constructor(e){super(el.ASTType.ListConstructorExpression,e),this.fields=e.fields||[]}toString(){if(this.fields.length===0)return`ListConstructor[${this.start}-${this.end}][]`;let e=this.fields.map(n=>`${n}`).join(`
72
72
  `).split(`
73
73
  `).map(n=>` ${n}`).join(`
74
74
  `);return`ListConstructor[${this.start}-${this.end}][
75
75
  ${e}
76
- ]`}clone(){return new t({fields:this.fields.map(e=>e.clone()),start:this.start,end:this.end,range:this.range,scope:this.scope})}};Js.ASTListConstructorExpression=dg});var bg=g(Ln=>{"use strict";Object.defineProperty(Ln,"__esModule",{value:!0});Ln.ASTNilLiteral=Ln.ASTStringLiteral=Ln.ASTBooleanLiteral=Ln.ASTNumericLiteral=Ln.ASTLiteral=void 0;var cx=ci(),yg=dt(),Wi=class extends yg.ASTBase{};Ln.ASTLiteral=Wi;var pg=class t extends Wi{constructor(e){super(cx.TokenType.NumericLiteral,e),this.value=e.value,this.raw=e.raw,this.negated=!1}toString(){return`Literal[${this.start}-${this.end}][${this.negated?"-":""}${this.value}]`}clone(){let e=new t({value:this.value,raw:this.raw,start:this.start,end:this.end,range:this.range,scope:this.scope});return e.negated=this.negated,e}};Ln.ASTNumericLiteral=pg;var hg=class t extends Wi{constructor(e){super(cx.TokenType.BooleanLiteral,e),this.value=e.value,this.raw=e.raw,this.negated=!1}toString(){return`Literal[${this.start}-${this.end}][${this.negated?"-":""}${this.value}]`}clone(){let e=new t({value:this.value,raw:this.raw,start:this.start,end:this.end,range:this.range,scope:this.scope});return e.negated=this.negated,e}};Ln.ASTBooleanLiteral=hg;var gg=class t extends Wi{constructor(e){super(yg.ASTType.StringLiteral,e),this.value=e.value,this.raw=e.raw}toString(){return`Literal[${this.start}-${this.end}][${this.value}]`}clone(){return new t({value:this.value,raw:this.raw,start:this.start,end:this.end,range:this.range,scope:this.scope})}};Ln.ASTStringLiteral=gg;var mg=class t extends Wi{constructor(e){super(yg.ASTType.NilLiteral,e),this.value=e.value,this.raw=e.raw}toString(){return`Literal[${this.start}-${this.end}][${this.value}]`}clone(){return new t({value:this.value,raw:this.raw,start:this.start,end:this.end,range:this.range,scope:this.scope})}};Ln.ASTNilLiteral=mg});var _g=g(tl=>{"use strict";Object.defineProperty(tl,"__esModule",{value:!0});tl.ASTLogicalExpression=void 0;var lx=dt(),vg=class t extends lx.ASTBase{constructor(e){super(lx.ASTType.LogicalExpression,e),this.operator=e.operator,this.left=e.left,this.right=e.right}toString(){return`${this.type}[${this.start}-${this.end}][${this.left} ${this.operator} ${this.right}]`}clone(){return new t({operator:this.operator,left:this.left.clone(),right:this.right.clone(),start:this.start,end:this.end,range:this.range,scope:this.scope})}};tl.ASTLogicalExpression=vg});var kg=g(Qs=>{"use strict";Object.defineProperty(Qs,"__esModule",{value:!0});Qs.ASTMapConstructorExpression=Qs.ASTMapKeyString=void 0;var nl=dt(),Tg=class t extends nl.ASTBase{constructor(e){super(nl.ASTType.MapKeyString,e),this.key=e.key,this.value=e.value}toString(){return`MapKeyString[${this.start}-${this.end}][${this.key}: ${this.value}]`}clone(){return new t({key:this.key.clone(),value:this.value.clone(),start:this.start,end:this.end,range:this.range,scope:this.scope})}};Qs.ASTMapKeyString=Tg;var Sg=class t extends nl.ASTBase{constructor(e){super(nl.ASTType.MapConstructorExpression,e),this.fields=e.fields||[]}toString(){if(this.fields.length===0)return`MapConstructor[${this.start}-${this.end}][]`;let e=this.fields.map(n=>`${n}`).join(`
76
+ ]`}clone(){return new t({fields:this.fields.map(e=>e.clone()),start:this.start,end:this.end,range:this.range,scope:this.scope})}};Js.ASTListConstructorExpression=dg});var bg=g(Ln=>{"use strict";Object.defineProperty(Ln,"__esModule",{value:!0});Ln.ASTNilLiteral=Ln.ASTStringLiteral=Ln.ASTBooleanLiteral=Ln.ASTNumericLiteral=Ln.ASTLiteral=void 0;var dx=li(),yg=dt(),Wi=class extends yg.ASTBase{};Ln.ASTLiteral=Wi;var pg=class t extends Wi{constructor(e){super(dx.TokenType.NumericLiteral,e),this.value=e.value,this.raw=e.raw,this.negated=!1}toString(){return`Literal[${this.start}-${this.end}][${this.negated?"-":""}${this.value}]`}clone(){let e=new t({value:this.value,raw:this.raw,start:this.start,end:this.end,range:this.range,scope:this.scope});return e.negated=this.negated,e}};Ln.ASTNumericLiteral=pg;var hg=class t extends Wi{constructor(e){super(dx.TokenType.BooleanLiteral,e),this.value=e.value,this.raw=e.raw,this.negated=!1}toString(){return`Literal[${this.start}-${this.end}][${this.negated?"-":""}${this.value}]`}clone(){let e=new t({value:this.value,raw:this.raw,start:this.start,end:this.end,range:this.range,scope:this.scope});return e.negated=this.negated,e}};Ln.ASTBooleanLiteral=hg;var gg=class t extends Wi{constructor(e){super(yg.ASTType.StringLiteral,e),this.value=e.value,this.raw=e.raw}toString(){return`Literal[${this.start}-${this.end}][${this.value}]`}clone(){return new t({value:this.value,raw:this.raw,start:this.start,end:this.end,range:this.range,scope:this.scope})}};Ln.ASTStringLiteral=gg;var mg=class t extends Wi{constructor(e){super(yg.ASTType.NilLiteral,e),this.value=e.value,this.raw=e.raw}toString(){return`Literal[${this.start}-${this.end}][${this.value}]`}clone(){return new t({value:this.value,raw:this.raw,start:this.start,end:this.end,range:this.range,scope:this.scope})}};Ln.ASTNilLiteral=mg});var _g=g(tl=>{"use strict";Object.defineProperty(tl,"__esModule",{value:!0});tl.ASTLogicalExpression=void 0;var fx=dt(),vg=class t extends fx.ASTBase{constructor(e){super(fx.ASTType.LogicalExpression,e),this.operator=e.operator,this.left=e.left,this.right=e.right}toString(){return`${this.type}[${this.start}-${this.end}][${this.left} ${this.operator} ${this.right}]`}clone(){return new t({operator:this.operator,left:this.left.clone(),right:this.right.clone(),start:this.start,end:this.end,range:this.range,scope:this.scope})}};tl.ASTLogicalExpression=vg});var kg=g(Qs=>{"use strict";Object.defineProperty(Qs,"__esModule",{value:!0});Qs.ASTMapConstructorExpression=Qs.ASTMapKeyString=void 0;var nl=dt(),Tg=class t extends nl.ASTBase{constructor(e){super(nl.ASTType.MapKeyString,e),this.key=e.key,this.value=e.value}toString(){return`MapKeyString[${this.start}-${this.end}][${this.key}: ${this.value}]`}clone(){return new t({key:this.key.clone(),value:this.value.clone(),start:this.start,end:this.end,range:this.range,scope:this.scope})}};Qs.ASTMapKeyString=Tg;var Sg=class t extends nl.ASTBase{constructor(e){super(nl.ASTType.MapConstructorExpression,e),this.fields=e.fields||[]}toString(){if(this.fields.length===0)return`MapConstructor[${this.start}-${this.end}][]`;let e=this.fields.map(n=>`${n}`).join(`
77
77
  `).split(`
78
78
  `).map(n=>` ${n}`).join(`
79
79
  `);return`MapConstructor[${this.start}-${this.end}][
80
80
  ${e}
81
- ]`}clone(){return new t({fields:this.fields.map(e=>e.clone()),start:this.start,end:this.end,range:this.range,scope:this.scope})}};Qs.ASTMapConstructorExpression=Sg});var wg=g(rl=>{"use strict";Object.defineProperty(rl,"__esModule",{value:!0});rl.ASTParenthesisExpression=void 0;var dx=dt(),xg=class t extends dx.ASTBase{constructor(e){super(dx.ASTType.ParenthesisExpression,e),this.expression=e.expression}toString(){return this.expression.toString()}clone(){return new t({expression:this.expression.clone(),start:this.start,end:this.end,range:this.range,scope:this.scope})}};rl.ASTParenthesisExpression=xg});var Ag=g(il=>{"use strict";Object.defineProperty(il,"__esModule",{value:!0});il.ASTReturnStatement=void 0;var fx=dt(),Eg=class t extends fx.ASTBase{constructor(e){super(fx.ASTType.ReturnStatement,e),this.argument=e.argument}toString(){return`ReturnStatement[${this.start}-${this.end}][${this.argument}]`}clone(){return new t({argument:this.argument.clone(),start:this.start,end:this.end,range:this.range,scope:this.scope})}};il.ASTReturnStatement=Eg});var Cg=g(sl=>{"use strict";Object.defineProperty(sl,"__esModule",{value:!0});sl.ASTSliceExpression=void 0;var px=dt(),Og=class t extends px.ASTBase{constructor(e){super(px.ASTType.SliceExpression,e),this.left=e.left,this.right=e.right,this.base=e.base}toString(){return`SliceExpression[${this.start}-${this.end}][${this.base}[${this.left}:${this.right}]]`}clone(){return new t({base:this.base.clone(),left:this.left.clone(),right:this.right.clone(),start:this.start,end:this.end,range:this.range,scope:this.scope})}};sl.ASTSliceExpression=Og});var Dg=g(al=>{"use strict";Object.defineProperty(al,"__esModule",{value:!0});al.ASTUnaryExpression=void 0;var Rg=Vs(),ol=dt(),Pg=class t extends ol.ASTBase{constructor(e){super(t.getUnaryType(e.operator),e),this.argument=e.argument,this.operator=e.operator}static getUnaryType(e){switch(e){case Rg.Operator.Not:return ol.ASTType.NegationExpression;case Rg.Operator.Plus:case Rg.Operator.Minus:return ol.ASTType.BinaryNegatedExpression;default:return ol.ASTType.UnaryExpression}}toString(){return`${this.type}[${this.start}-${this.end}][${this.operator} ${this.argument}]`}clone(){return new t({argument:this.argument.clone(),operator:this.operator,start:this.start,end:this.end,range:this.range,scope:this.scope})}};al.ASTUnaryExpression=Pg});var Mg=g(ul=>{"use strict";Object.defineProperty(ul,"__esModule",{value:!0});ul.ASTWhileStatement=void 0;var hx=dt(),Ig=class t extends hx.ASTBaseBlock{constructor(e){super(hx.ASTType.WhileStatement,e),this.condition=e.condition}toString(){if(this.body.length===0)return`WhileStatement[${this.start}-${this.end}][${this.condition}]`;let e=this.body.map(n=>`${n}`).join(`
81
+ ]`}clone(){return new t({fields:this.fields.map(e=>e.clone()),start:this.start,end:this.end,range:this.range,scope:this.scope})}};Qs.ASTMapConstructorExpression=Sg});var wg=g(rl=>{"use strict";Object.defineProperty(rl,"__esModule",{value:!0});rl.ASTParenthesisExpression=void 0;var px=dt(),xg=class t extends px.ASTBase{constructor(e){super(px.ASTType.ParenthesisExpression,e),this.expression=e.expression}toString(){return this.expression.toString()}clone(){return new t({expression:this.expression.clone(),start:this.start,end:this.end,range:this.range,scope:this.scope})}};rl.ASTParenthesisExpression=xg});var Ag=g(il=>{"use strict";Object.defineProperty(il,"__esModule",{value:!0});il.ASTReturnStatement=void 0;var hx=dt(),Eg=class t extends hx.ASTBase{constructor(e){super(hx.ASTType.ReturnStatement,e),this.argument=e.argument}toString(){return`ReturnStatement[${this.start}-${this.end}][${this.argument}]`}clone(){return new t({argument:this.argument.clone(),start:this.start,end:this.end,range:this.range,scope:this.scope})}};il.ASTReturnStatement=Eg});var Cg=g(sl=>{"use strict";Object.defineProperty(sl,"__esModule",{value:!0});sl.ASTSliceExpression=void 0;var gx=dt(),Og=class t extends gx.ASTBase{constructor(e){super(gx.ASTType.SliceExpression,e),this.left=e.left,this.right=e.right,this.base=e.base}toString(){return`SliceExpression[${this.start}-${this.end}][${this.base}[${this.left}:${this.right}]]`}clone(){return new t({base:this.base.clone(),left:this.left.clone(),right:this.right.clone(),start:this.start,end:this.end,range:this.range,scope:this.scope})}};sl.ASTSliceExpression=Og});var Dg=g(al=>{"use strict";Object.defineProperty(al,"__esModule",{value:!0});al.ASTUnaryExpression=void 0;var Rg=Vs(),ol=dt(),Pg=class t extends ol.ASTBase{constructor(e){super(t.getUnaryType(e.operator),e),this.argument=e.argument,this.operator=e.operator}static getUnaryType(e){switch(e){case Rg.Operator.Not:return ol.ASTType.NegationExpression;case Rg.Operator.Plus:case Rg.Operator.Minus:return ol.ASTType.BinaryNegatedExpression;default:return ol.ASTType.UnaryExpression}}toString(){return`${this.type}[${this.start}-${this.end}][${this.operator} ${this.argument}]`}clone(){return new t({argument:this.argument.clone(),operator:this.operator,start:this.start,end:this.end,range:this.range,scope:this.scope})}};al.ASTUnaryExpression=Pg});var Mg=g(ul=>{"use strict";Object.defineProperty(ul,"__esModule",{value:!0});ul.ASTWhileStatement=void 0;var mx=dt(),Ig=class t extends mx.ASTBaseBlock{constructor(e){super(mx.ASTType.WhileStatement,e),this.condition=e.condition}toString(){if(this.body.length===0)return`WhileStatement[${this.start}-${this.end}][${this.condition}]`;let e=this.body.map(n=>`${n}`).join(`
82
82
  `).split(`
83
83
  `).map(n=>` ${n}`).join(`
84
84
  `);return`WhileStatement[${this.start}-${this.end}][${this.condition}
85
85
  ${e}
86
- ]`}clone(){return new t({condition:this.condition.clone(),start:this.start,end:this.end,range:this.range,scope:this.scope})}};ul.ASTWhileStatement=Ig});var jg=g(Y=>{"use strict";Object.defineProperty(Y,"__esModule",{value:!0});Y.ASTWhileStatement=Y.ASTUnaryExpression=Y.ASTSliceExpression=Y.ASTReturnStatement=Y.ASTParenthesisExpression=Y.ASTMapKeyString=Y.ASTMapConstructorExpression=Y.ASTLogicalExpression=Y.ASTStringLiteral=Y.ASTNumericLiteral=Y.ASTNilLiteral=Y.ASTLiteral=Y.ASTBooleanLiteral=Y.ASTListValue=Y.ASTListConstructorExpression=Y.ASTIsaExpression=Y.ASTIfStatement=Y.ASTIfClause=Y.ASTElseClause=Y.ASTClause=Y.ASTMemberExpression=Y.ASTIndexExpression=Y.ASTIdentifier=Y.ASTFunctionStatement=Y.ASTForGenericStatement=Y.ASTComparisonGroupExpression=Y.ASTChunk=Y.ASTCallStatement=Y.ASTCallExpression=Y.ASTBinaryExpression=Y.ASTType=Y.ASTComment=Y.ASTBaseBlockWithScope=Y.ASTBaseBlock=Y.ASTBase=Y.ASTAssignmentStatement=Y.ASTProvider=void 0;var cl=ci(),QC=$h(),Et=dt(),ZC=Uh(),gx=Gh(),eR=Vh(),tR=Xh(),nR=Jh(),rR=Zh(),Lg=rg(),fi=ag(),iR=cg(),mx=fg(),ll=bg(),sR=_g(),yx=kg(),oR=wg(),aR=Ag(),uR=Cg(),cR=Dg(),lR=Mg(),Ng=class{breakStatement(e){return new Et.ASTBase(Et.ASTType.BreakStatement,e)}continueStatement(e){return new Et.ASTBase(Et.ASTType.ContinueStatement,e)}returnStatement(e){return new aR.ASTReturnStatement(e)}ifShortcutStatement(e){return new fi.ASTIfStatement(Et.ASTType.IfShortcutStatement,e)}ifShortcutClause(e){return new fi.ASTIfClause(Et.ASTType.IfShortcutClause,e)}elseifShortcutClause(e){return new fi.ASTIfClause(Et.ASTType.ElseifShortcutClause,e)}elseShortcutClause(e){return new fi.ASTElseClause(Et.ASTType.ElseShortcutClause,e)}ifStatement(e){return new fi.ASTIfStatement(Et.ASTType.IfStatement,e)}ifClause(e){return new fi.ASTIfClause(Et.ASTType.IfClause,e)}elseifClause(e){return new fi.ASTIfClause(Et.ASTType.ElseifClause,e)}elseClause(e){return new fi.ASTElseClause(Et.ASTType.ElseClause,e)}whileStatement(e){return new lR.ASTWhileStatement(e)}assignmentStatement(e){return new QC.ASTAssignmentStatement(e)}callStatement(e){return new gx.ASTCallStatement(e)}functionStatement(e){return new rR.ASTFunctionStatement(e)}forGenericStatement(e){return new nR.ASTForGenericStatement(e)}chunk(e){return new eR.ASTChunk(e)}identifier(e){return new Lg.ASTIdentifier(e)}literal(e,n){switch(e){case cl.TokenType.StringLiteral:return new ll.ASTStringLiteral(n);case cl.TokenType.NumericLiteral:return new ll.ASTNumericLiteral(n);case cl.TokenType.BooleanLiteral:return new ll.ASTBooleanLiteral(n);case cl.TokenType.NilLiteral:return new ll.ASTNilLiteral(n)}}memberExpression(e){return new Lg.ASTMemberExpression(e)}callExpression(e){return new gx.ASTCallExpression(e)}comment(e){return new Et.ASTComment(e)}unaryExpression(e){return new cR.ASTUnaryExpression(e)}mapKeyString(e){return new yx.ASTMapKeyString(e)}mapConstructorExpression(e){return new yx.ASTMapConstructorExpression(e)}listValue(e){return new mx.ASTListValue(e)}listConstructorExpression(e){return new mx.ASTListConstructorExpression(e)}unknown(e){return new Et.ASTBase(Et.ASTType.Unknown,e)}emptyExpression(e){return new Et.ASTBase(Et.ASTType.EmptyExpression,e)}invalidCodeExpression(e){return new Et.ASTBase(Et.ASTType.InvalidCodeExpression,e)}indexExpression(e){return new Lg.ASTIndexExpression(e)}logicalExpression(e){return new sR.ASTLogicalExpression(e)}isaExpression(e){return new iR.ASTIsaExpression(e)}binaryExpression(e){return new ZC.ASTBinaryExpression(e)}sliceExpression(e){return new uR.ASTSliceExpression(e)}parenthesisExpression(e){return new oR.ASTParenthesisExpression(e)}comparisonGroupExpression(e){return new tR.ASTComparisonGroupExpression(e)}};Y.ASTProvider=Ng;var dR=$h();Object.defineProperty(Y,"ASTAssignmentStatement",{enumerable:!0,get:function(){return dR.ASTAssignmentStatement}});var ha=dt();Object.defineProperty(Y,"ASTBase",{enumerable:!0,get:function(){return ha.ASTBase}});Object.defineProperty(Y,"ASTBaseBlock",{enumerable:!0,get:function(){return ha.ASTBaseBlock}});Object.defineProperty(Y,"ASTBaseBlockWithScope",{enumerable:!0,get:function(){return ha.ASTBaseBlockWithScope}});Object.defineProperty(Y,"ASTComment",{enumerable:!0,get:function(){return ha.ASTComment}});Object.defineProperty(Y,"ASTType",{enumerable:!0,get:function(){return ha.ASTType}});var fR=Uh();Object.defineProperty(Y,"ASTBinaryExpression",{enumerable:!0,get:function(){return fR.ASTBinaryExpression}});var bx=Gh();Object.defineProperty(Y,"ASTCallExpression",{enumerable:!0,get:function(){return bx.ASTCallExpression}});Object.defineProperty(Y,"ASTCallStatement",{enumerable:!0,get:function(){return bx.ASTCallStatement}});var pR=Vh();Object.defineProperty(Y,"ASTChunk",{enumerable:!0,get:function(){return pR.ASTChunk}});var hR=Xh();Object.defineProperty(Y,"ASTComparisonGroupExpression",{enumerable:!0,get:function(){return hR.ASTComparisonGroupExpression}});var gR=Jh();Object.defineProperty(Y,"ASTForGenericStatement",{enumerable:!0,get:function(){return gR.ASTForGenericStatement}});var mR=Zh();Object.defineProperty(Y,"ASTFunctionStatement",{enumerable:!0,get:function(){return mR.ASTFunctionStatement}});var qg=rg();Object.defineProperty(Y,"ASTIdentifier",{enumerable:!0,get:function(){return qg.ASTIdentifier}});Object.defineProperty(Y,"ASTIndexExpression",{enumerable:!0,get:function(){return qg.ASTIndexExpression}});Object.defineProperty(Y,"ASTMemberExpression",{enumerable:!0,get:function(){return qg.ASTMemberExpression}});var dl=ag();Object.defineProperty(Y,"ASTClause",{enumerable:!0,get:function(){return dl.ASTClause}});Object.defineProperty(Y,"ASTElseClause",{enumerable:!0,get:function(){return dl.ASTElseClause}});Object.defineProperty(Y,"ASTIfClause",{enumerable:!0,get:function(){return dl.ASTIfClause}});Object.defineProperty(Y,"ASTIfStatement",{enumerable:!0,get:function(){return dl.ASTIfStatement}});var yR=cg();Object.defineProperty(Y,"ASTIsaExpression",{enumerable:!0,get:function(){return yR.ASTIsaExpression}});var vx=fg();Object.defineProperty(Y,"ASTListConstructorExpression",{enumerable:!0,get:function(){return vx.ASTListConstructorExpression}});Object.defineProperty(Y,"ASTListValue",{enumerable:!0,get:function(){return vx.ASTListValue}});var ga=bg();Object.defineProperty(Y,"ASTBooleanLiteral",{enumerable:!0,get:function(){return ga.ASTBooleanLiteral}});Object.defineProperty(Y,"ASTLiteral",{enumerable:!0,get:function(){return ga.ASTLiteral}});Object.defineProperty(Y,"ASTNilLiteral",{enumerable:!0,get:function(){return ga.ASTNilLiteral}});Object.defineProperty(Y,"ASTNumericLiteral",{enumerable:!0,get:function(){return ga.ASTNumericLiteral}});Object.defineProperty(Y,"ASTStringLiteral",{enumerable:!0,get:function(){return ga.ASTStringLiteral}});var bR=_g();Object.defineProperty(Y,"ASTLogicalExpression",{enumerable:!0,get:function(){return bR.ASTLogicalExpression}});var _x=kg();Object.defineProperty(Y,"ASTMapConstructorExpression",{enumerable:!0,get:function(){return _x.ASTMapConstructorExpression}});Object.defineProperty(Y,"ASTMapKeyString",{enumerable:!0,get:function(){return _x.ASTMapKeyString}});var vR=wg();Object.defineProperty(Y,"ASTParenthesisExpression",{enumerable:!0,get:function(){return vR.ASTParenthesisExpression}});var _R=Ag();Object.defineProperty(Y,"ASTReturnStatement",{enumerable:!0,get:function(){return _R.ASTReturnStatement}});var TR=Cg();Object.defineProperty(Y,"ASTSliceExpression",{enumerable:!0,get:function(){return TR.ASTSliceExpression}});var SR=Dg();Object.defineProperty(Y,"ASTUnaryExpression",{enumerable:!0,get:function(){return SR.ASTUnaryExpression}});var kR=Mg();Object.defineProperty(Y,"ASTWhileStatement",{enumerable:!0,get:function(){return kR.ASTWhileStatement}})});var Bg=g($g=>{"use strict";Object.defineProperty($g,"__esModule",{value:!0});var pi=ci(),Fg=class{constructor(){this.isNonNilLiteral=Set.prototype.has.bind(new Set([pi.TokenType.StringLiteral,pi.TokenType.NumericLiteral,pi.TokenType.BooleanLiteral])),this.isLiteral=Set.prototype.has.bind(new Set([pi.TokenType.StringLiteral,pi.TokenType.NumericLiteral,pi.TokenType.BooleanLiteral,pi.TokenType.NilLiteral]))}isComment(e){return e===pi.TokenType.Comment}};$g.default=Fg});var Hg=g(ue=>{"use strict";Object.defineProperty(ue,"__esModule",{value:!0});ue.SelectorGroups=ue.SelectorGroupType=ue.getSelectorsFromGroup=ue.createSelectorGroup=ue.Selectors=ue.getSelectorValue=ue.createSelector=ue.createSelectorOptions=ue.SelectorType=void 0;var le=ci(),er=Gs(),Te=Vs(),xR;(function(t){t.EndOfLine="EndOfLine",t.EndOfFile="EndOfFile",t.LParenthesis="LParenthesis",t.RParenthesis="RParenthesis",t.CLBracket="CLBracket",t.CRBracket="CRBracket",t.SLBracket="SLBracket",t.SRBracket="SRBracket",t.Assign="Assign",t.AddShorthand="AddShorthand",t.SubtractShorthand="SubtractShorthand",t.MultiplyShorthand="MultiplyShorthand",t.DivideShorthand="DivideShorthand",t.PowerShorthand="PowerShorthand",t.ModuloShorthand="ModuloShorthand",t.Seperator="Seperator",t.Function="Function",t.EndFunction="EndFunction",t.EndWhile="EndWhile",t.EndFor="EndFor",t.EndIf="EndIf",t.SliceSeperator="SliceSeperator",t.MapKeyValueSeperator="MapKeyValueSeperator",t.MapSeperator="MapSeperator",t.ListSeperator="ListSeperator",t.CallSeperator="CallSeperator",t.ArgumentSeperator="ArgumentSeperator",t.ImportCodeSeperator="ImportCodeSeperator",t.ElseIf="ElseIf",t.Then="Then",t.Else="Else",t.In="In",t.MemberSeperator="MemberSeperator",t.NumberSeperator="NumberSeperator",t.Reference="Reference",t.Isa="Isa",t.Or="Or",t.And="And",t.Minus="Minus",t.Plus="Plus",t.Times="Times",t.Divide="Divide",t.Power="Power",t.Mod="Mod",t.Equal="Equal",t.NotEqual="NotEqual",t.Greater="Greater",t.GreaterEqual="GreaterEqual",t.Lesser="Lesser",t.LessEqual="LessEqual",t.New="New",t.Not="Not",t.Comment="Comment"})(xR=ue.SelectorType||(ue.SelectorType={}));var Ug=class{};ue.createSelectorOptions=Ug;function ae(t){let e;return t.value===void 0?(e=new Function("token",`if (token == null) return false;return token.type === '${t.type}';`),Object.defineProperty(e,"name",{value:`selector_${t.type}`,writable:!1})):(e=new Function("token",`if (token == null) return false;return token.value === '${t.value}' && token.type === '${t.type}';`),Object.defineProperty(e,"name",{value:`selector_${t.type}_${t.value}`,writable:!1})),e.data=t,e}ue.createSelector=ae;function wR(t){return t.data.value}ue.getSelectorValue=wR;ue.Selectors={EndOfLine:ae({type:le.TokenType.EOL,value:Te.Operator.EndOfLine}),EndOfFile:ae({type:le.TokenType.EOF,value:Te.Operator.EndOfFile}),LParenthesis:ae({type:le.TokenType.Punctuator,value:Te.Operator.LParenthesis}),RParenthesis:ae({type:le.TokenType.Punctuator,value:Te.Operator.RParenthesis}),CLBracket:ae({type:le.TokenType.Punctuator,value:Te.Operator.CLBracket}),CRBracket:ae({type:le.TokenType.Punctuator,value:Te.Operator.CRBracket}),SLBracket:ae({type:le.TokenType.Punctuator,value:Te.Operator.SLBracket}),SRBracket:ae({type:le.TokenType.Punctuator,value:Te.Operator.SRBracket}),Assign:ae({type:le.TokenType.Punctuator,value:Te.Operator.Assign}),AddShorthand:ae({type:le.TokenType.Punctuator,value:Te.Operator.AddShorthand}),SubtractShorthand:ae({type:le.TokenType.Punctuator,value:Te.Operator.SubtractShorthand}),MultiplyShorthand:ae({type:le.TokenType.Punctuator,value:Te.Operator.MultiplyShorthand}),DivideShorthand:ae({type:le.TokenType.Punctuator,value:Te.Operator.DivideShorthand}),PowerShorthand:ae({type:le.TokenType.Punctuator,value:Te.Operator.PowerShorthand}),ModuloShorthand:ae({type:le.TokenType.Punctuator,value:Te.Operator.ModuloShorthand}),Seperator:ae({type:le.TokenType.Punctuator,value:Te.Operator.Comma}),Function:ae({type:le.TokenType.Keyword,value:er.Keyword.Function}),EndFunction:ae({type:le.TokenType.Keyword,value:er.Keyword.EndFunction}),EndWhile:ae({type:le.TokenType.Keyword,value:er.Keyword.EndWhile}),EndFor:ae({type:le.TokenType.Keyword,value:er.Keyword.EndFor}),EndIf:ae({type:le.TokenType.Keyword,value:er.Keyword.EndIf}),SliceSeperator:ae({type:le.TokenType.SliceOperator,value:Te.Operator.SliceSeperator}),MapKeyValueSeperator:ae({type:le.TokenType.SliceOperator,value:Te.Operator.SliceSeperator}),MapSeperator:ae({type:le.TokenType.Punctuator,value:Te.Operator.Comma}),ListSeperator:ae({type:le.TokenType.Punctuator,value:Te.Operator.Comma}),CallSeperator:ae({type:le.TokenType.Punctuator,value:Te.Operator.Comma}),ArgumentSeperator:ae({type:le.TokenType.Punctuator,value:Te.Operator.Comma}),ImportCodeSeperator:ae({type:le.TokenType.SliceOperator,value:Te.Operator.SliceSeperator}),ElseIf:ae({type:le.TokenType.Keyword,value:er.Keyword.ElseIf}),Then:ae({type:le.TokenType.Keyword,value:er.Keyword.Then}),Else:ae({type:le.TokenType.Keyword,value:er.Keyword.Else}),In:ae({type:le.TokenType.Keyword,value:er.Keyword.In}),MemberSeperator:ae({type:le.TokenType.Punctuator,value:Te.Operator.Member}),NumberSeperator:ae({type:le.TokenType.Punctuator,value:Te.Operator.Member}),Reference:ae({type:le.TokenType.Punctuator,value:Te.Operator.Reference}),Isa:ae({type:le.TokenType.Keyword,value:Te.Operator.Isa}),Or:ae({type:le.TokenType.Keyword,value:Te.Operator.Or}),And:ae({type:le.TokenType.Keyword,value:Te.Operator.And}),Minus:ae({type:le.TokenType.Punctuator,value:Te.Operator.Minus}),Plus:ae({type:le.TokenType.Punctuator,value:Te.Operator.Plus}),Times:ae({type:le.TokenType.Punctuator,value:Te.Operator.Asterik}),Power:ae({type:le.TokenType.Punctuator,value:Te.Operator.Power}),Divide:ae({type:le.TokenType.Punctuator,value:Te.Operator.Slash}),Mod:ae({type:le.TokenType.Punctuator,value:Te.Operator.Modulo}),Equal:ae({type:le.TokenType.Punctuator,value:Te.Operator.Equal}),NotEqual:ae({type:le.TokenType.Punctuator,value:Te.Operator.NotEqual}),Greater:ae({type:le.TokenType.Punctuator,value:Te.Operator.GreaterThan}),GreaterEqual:ae({type:le.TokenType.Punctuator,value:Te.Operator.GreaterThanOrEqual}),Lesser:ae({type:le.TokenType.Punctuator,value:Te.Operator.LessThan}),LessEqual:ae({type:le.TokenType.Punctuator,value:Te.Operator.LessThanOrEqual}),New:ae({type:le.TokenType.Keyword,value:er.Keyword.New}),Not:ae({type:le.TokenType.Keyword,value:er.Keyword.Not}),Comment:ae({type:le.TokenType.Comment})};function hr(t,e){let r=e.filter(a=>a.data.value!==void 0).map(a=>`case '${a.data.value}': return token.type === '${a.data.type}';`).join(`
86
+ ]`}clone(){return new t({condition:this.condition.clone(),start:this.start,end:this.end,range:this.range,scope:this.scope})}};ul.ASTWhileStatement=Ig});var jg=g(Y=>{"use strict";Object.defineProperty(Y,"__esModule",{value:!0});Y.ASTWhileStatement=Y.ASTUnaryExpression=Y.ASTSliceExpression=Y.ASTReturnStatement=Y.ASTParenthesisExpression=Y.ASTMapKeyString=Y.ASTMapConstructorExpression=Y.ASTLogicalExpression=Y.ASTStringLiteral=Y.ASTNumericLiteral=Y.ASTNilLiteral=Y.ASTLiteral=Y.ASTBooleanLiteral=Y.ASTListValue=Y.ASTListConstructorExpression=Y.ASTIsaExpression=Y.ASTIfStatement=Y.ASTIfClause=Y.ASTElseClause=Y.ASTClause=Y.ASTMemberExpression=Y.ASTIndexExpression=Y.ASTIdentifier=Y.ASTFunctionStatement=Y.ASTForGenericStatement=Y.ASTComparisonGroupExpression=Y.ASTChunk=Y.ASTCallStatement=Y.ASTCallExpression=Y.ASTBinaryExpression=Y.ASTType=Y.ASTComment=Y.ASTBaseBlockWithScope=Y.ASTBaseBlock=Y.ASTBase=Y.ASTAssignmentStatement=Y.ASTProvider=void 0;var cl=li(),QC=$h(),Et=dt(),ZC=Uh(),yx=Gh(),eR=Vh(),tR=Xh(),nR=Jh(),rR=Zh(),Lg=rg(),pi=ag(),iR=cg(),bx=fg(),ll=bg(),sR=_g(),vx=kg(),oR=wg(),aR=Ag(),uR=Cg(),cR=Dg(),lR=Mg(),Ng=class{breakStatement(e){return new Et.ASTBase(Et.ASTType.BreakStatement,e)}continueStatement(e){return new Et.ASTBase(Et.ASTType.ContinueStatement,e)}returnStatement(e){return new aR.ASTReturnStatement(e)}ifShortcutStatement(e){return new pi.ASTIfStatement(Et.ASTType.IfShortcutStatement,e)}ifShortcutClause(e){return new pi.ASTIfClause(Et.ASTType.IfShortcutClause,e)}elseifShortcutClause(e){return new pi.ASTIfClause(Et.ASTType.ElseifShortcutClause,e)}elseShortcutClause(e){return new pi.ASTElseClause(Et.ASTType.ElseShortcutClause,e)}ifStatement(e){return new pi.ASTIfStatement(Et.ASTType.IfStatement,e)}ifClause(e){return new pi.ASTIfClause(Et.ASTType.IfClause,e)}elseifClause(e){return new pi.ASTIfClause(Et.ASTType.ElseifClause,e)}elseClause(e){return new pi.ASTElseClause(Et.ASTType.ElseClause,e)}whileStatement(e){return new lR.ASTWhileStatement(e)}assignmentStatement(e){return new QC.ASTAssignmentStatement(e)}callStatement(e){return new yx.ASTCallStatement(e)}functionStatement(e){return new rR.ASTFunctionStatement(e)}forGenericStatement(e){return new nR.ASTForGenericStatement(e)}chunk(e){return new eR.ASTChunk(e)}identifier(e){return new Lg.ASTIdentifier(e)}literal(e,n){switch(e){case cl.TokenType.StringLiteral:return new ll.ASTStringLiteral(n);case cl.TokenType.NumericLiteral:return new ll.ASTNumericLiteral(n);case cl.TokenType.BooleanLiteral:return new ll.ASTBooleanLiteral(n);case cl.TokenType.NilLiteral:return new ll.ASTNilLiteral(n)}}memberExpression(e){return new Lg.ASTMemberExpression(e)}callExpression(e){return new yx.ASTCallExpression(e)}comment(e){return new Et.ASTComment(e)}unaryExpression(e){return new cR.ASTUnaryExpression(e)}mapKeyString(e){return new vx.ASTMapKeyString(e)}mapConstructorExpression(e){return new vx.ASTMapConstructorExpression(e)}listValue(e){return new bx.ASTListValue(e)}listConstructorExpression(e){return new bx.ASTListConstructorExpression(e)}unknown(e){return new Et.ASTBase(Et.ASTType.Unknown,e)}emptyExpression(e){return new Et.ASTBase(Et.ASTType.EmptyExpression,e)}invalidCodeExpression(e){return new Et.ASTBase(Et.ASTType.InvalidCodeExpression,e)}indexExpression(e){return new Lg.ASTIndexExpression(e)}logicalExpression(e){return new sR.ASTLogicalExpression(e)}isaExpression(e){return new iR.ASTIsaExpression(e)}binaryExpression(e){return new ZC.ASTBinaryExpression(e)}sliceExpression(e){return new uR.ASTSliceExpression(e)}parenthesisExpression(e){return new oR.ASTParenthesisExpression(e)}comparisonGroupExpression(e){return new tR.ASTComparisonGroupExpression(e)}};Y.ASTProvider=Ng;var dR=$h();Object.defineProperty(Y,"ASTAssignmentStatement",{enumerable:!0,get:function(){return dR.ASTAssignmentStatement}});var ha=dt();Object.defineProperty(Y,"ASTBase",{enumerable:!0,get:function(){return ha.ASTBase}});Object.defineProperty(Y,"ASTBaseBlock",{enumerable:!0,get:function(){return ha.ASTBaseBlock}});Object.defineProperty(Y,"ASTBaseBlockWithScope",{enumerable:!0,get:function(){return ha.ASTBaseBlockWithScope}});Object.defineProperty(Y,"ASTComment",{enumerable:!0,get:function(){return ha.ASTComment}});Object.defineProperty(Y,"ASTType",{enumerable:!0,get:function(){return ha.ASTType}});var fR=Uh();Object.defineProperty(Y,"ASTBinaryExpression",{enumerable:!0,get:function(){return fR.ASTBinaryExpression}});var _x=Gh();Object.defineProperty(Y,"ASTCallExpression",{enumerable:!0,get:function(){return _x.ASTCallExpression}});Object.defineProperty(Y,"ASTCallStatement",{enumerable:!0,get:function(){return _x.ASTCallStatement}});var pR=Vh();Object.defineProperty(Y,"ASTChunk",{enumerable:!0,get:function(){return pR.ASTChunk}});var hR=Xh();Object.defineProperty(Y,"ASTComparisonGroupExpression",{enumerable:!0,get:function(){return hR.ASTComparisonGroupExpression}});var gR=Jh();Object.defineProperty(Y,"ASTForGenericStatement",{enumerable:!0,get:function(){return gR.ASTForGenericStatement}});var mR=Zh();Object.defineProperty(Y,"ASTFunctionStatement",{enumerable:!0,get:function(){return mR.ASTFunctionStatement}});var qg=rg();Object.defineProperty(Y,"ASTIdentifier",{enumerable:!0,get:function(){return qg.ASTIdentifier}});Object.defineProperty(Y,"ASTIndexExpression",{enumerable:!0,get:function(){return qg.ASTIndexExpression}});Object.defineProperty(Y,"ASTMemberExpression",{enumerable:!0,get:function(){return qg.ASTMemberExpression}});var dl=ag();Object.defineProperty(Y,"ASTClause",{enumerable:!0,get:function(){return dl.ASTClause}});Object.defineProperty(Y,"ASTElseClause",{enumerable:!0,get:function(){return dl.ASTElseClause}});Object.defineProperty(Y,"ASTIfClause",{enumerable:!0,get:function(){return dl.ASTIfClause}});Object.defineProperty(Y,"ASTIfStatement",{enumerable:!0,get:function(){return dl.ASTIfStatement}});var yR=cg();Object.defineProperty(Y,"ASTIsaExpression",{enumerable:!0,get:function(){return yR.ASTIsaExpression}});var Tx=fg();Object.defineProperty(Y,"ASTListConstructorExpression",{enumerable:!0,get:function(){return Tx.ASTListConstructorExpression}});Object.defineProperty(Y,"ASTListValue",{enumerable:!0,get:function(){return Tx.ASTListValue}});var ga=bg();Object.defineProperty(Y,"ASTBooleanLiteral",{enumerable:!0,get:function(){return ga.ASTBooleanLiteral}});Object.defineProperty(Y,"ASTLiteral",{enumerable:!0,get:function(){return ga.ASTLiteral}});Object.defineProperty(Y,"ASTNilLiteral",{enumerable:!0,get:function(){return ga.ASTNilLiteral}});Object.defineProperty(Y,"ASTNumericLiteral",{enumerable:!0,get:function(){return ga.ASTNumericLiteral}});Object.defineProperty(Y,"ASTStringLiteral",{enumerable:!0,get:function(){return ga.ASTStringLiteral}});var bR=_g();Object.defineProperty(Y,"ASTLogicalExpression",{enumerable:!0,get:function(){return bR.ASTLogicalExpression}});var Sx=kg();Object.defineProperty(Y,"ASTMapConstructorExpression",{enumerable:!0,get:function(){return Sx.ASTMapConstructorExpression}});Object.defineProperty(Y,"ASTMapKeyString",{enumerable:!0,get:function(){return Sx.ASTMapKeyString}});var vR=wg();Object.defineProperty(Y,"ASTParenthesisExpression",{enumerable:!0,get:function(){return vR.ASTParenthesisExpression}});var _R=Ag();Object.defineProperty(Y,"ASTReturnStatement",{enumerable:!0,get:function(){return _R.ASTReturnStatement}});var TR=Cg();Object.defineProperty(Y,"ASTSliceExpression",{enumerable:!0,get:function(){return TR.ASTSliceExpression}});var SR=Dg();Object.defineProperty(Y,"ASTUnaryExpression",{enumerable:!0,get:function(){return SR.ASTUnaryExpression}});var kR=Mg();Object.defineProperty(Y,"ASTWhileStatement",{enumerable:!0,get:function(){return kR.ASTWhileStatement}})});var Bg=g($g=>{"use strict";Object.defineProperty($g,"__esModule",{value:!0});var hi=li(),Fg=class{constructor(){this.isNonNilLiteral=Set.prototype.has.bind(new Set([hi.TokenType.StringLiteral,hi.TokenType.NumericLiteral,hi.TokenType.BooleanLiteral])),this.isLiteral=Set.prototype.has.bind(new Set([hi.TokenType.StringLiteral,hi.TokenType.NumericLiteral,hi.TokenType.BooleanLiteral,hi.TokenType.NilLiteral]))}isComment(e){return e===hi.TokenType.Comment}};$g.default=Fg});var Hg=g(ue=>{"use strict";Object.defineProperty(ue,"__esModule",{value:!0});ue.SelectorGroups=ue.SelectorGroupType=ue.getSelectorsFromGroup=ue.createSelectorGroup=ue.Selectors=ue.getSelectorValue=ue.createSelector=ue.createSelectorOptions=ue.SelectorType=void 0;var le=li(),er=Gs(),Te=Vs(),xR;(function(t){t.EndOfLine="EndOfLine",t.EndOfFile="EndOfFile",t.LParenthesis="LParenthesis",t.RParenthesis="RParenthesis",t.CLBracket="CLBracket",t.CRBracket="CRBracket",t.SLBracket="SLBracket",t.SRBracket="SRBracket",t.Assign="Assign",t.AddShorthand="AddShorthand",t.SubtractShorthand="SubtractShorthand",t.MultiplyShorthand="MultiplyShorthand",t.DivideShorthand="DivideShorthand",t.PowerShorthand="PowerShorthand",t.ModuloShorthand="ModuloShorthand",t.Seperator="Seperator",t.Function="Function",t.EndFunction="EndFunction",t.EndWhile="EndWhile",t.EndFor="EndFor",t.EndIf="EndIf",t.SliceSeperator="SliceSeperator",t.MapKeyValueSeperator="MapKeyValueSeperator",t.MapSeperator="MapSeperator",t.ListSeperator="ListSeperator",t.CallSeperator="CallSeperator",t.ArgumentSeperator="ArgumentSeperator",t.ImportCodeSeperator="ImportCodeSeperator",t.ElseIf="ElseIf",t.Then="Then",t.Else="Else",t.In="In",t.MemberSeperator="MemberSeperator",t.NumberSeperator="NumberSeperator",t.Reference="Reference",t.Isa="Isa",t.Or="Or",t.And="And",t.Minus="Minus",t.Plus="Plus",t.Times="Times",t.Divide="Divide",t.Power="Power",t.Mod="Mod",t.Equal="Equal",t.NotEqual="NotEqual",t.Greater="Greater",t.GreaterEqual="GreaterEqual",t.Lesser="Lesser",t.LessEqual="LessEqual",t.New="New",t.Not="Not",t.Comment="Comment"})(xR=ue.SelectorType||(ue.SelectorType={}));var Ug=class{};ue.createSelectorOptions=Ug;function ae(t){let e;return t.value===void 0?(e=new Function("token",`if (token == null) return false;return token.type === '${t.type}';`),Object.defineProperty(e,"name",{value:`selector_${t.type}`,writable:!1})):(e=new Function("token",`if (token == null) return false;return token.value === '${t.value}' && token.type === '${t.type}';`),Object.defineProperty(e,"name",{value:`selector_${t.type}_${t.value}`,writable:!1})),e.data=t,e}ue.createSelector=ae;function wR(t){return t.data.value}ue.getSelectorValue=wR;ue.Selectors={EndOfLine:ae({type:le.TokenType.EOL,value:Te.Operator.EndOfLine}),EndOfFile:ae({type:le.TokenType.EOF,value:Te.Operator.EndOfFile}),LParenthesis:ae({type:le.TokenType.Punctuator,value:Te.Operator.LParenthesis}),RParenthesis:ae({type:le.TokenType.Punctuator,value:Te.Operator.RParenthesis}),CLBracket:ae({type:le.TokenType.Punctuator,value:Te.Operator.CLBracket}),CRBracket:ae({type:le.TokenType.Punctuator,value:Te.Operator.CRBracket}),SLBracket:ae({type:le.TokenType.Punctuator,value:Te.Operator.SLBracket}),SRBracket:ae({type:le.TokenType.Punctuator,value:Te.Operator.SRBracket}),Assign:ae({type:le.TokenType.Punctuator,value:Te.Operator.Assign}),AddShorthand:ae({type:le.TokenType.Punctuator,value:Te.Operator.AddShorthand}),SubtractShorthand:ae({type:le.TokenType.Punctuator,value:Te.Operator.SubtractShorthand}),MultiplyShorthand:ae({type:le.TokenType.Punctuator,value:Te.Operator.MultiplyShorthand}),DivideShorthand:ae({type:le.TokenType.Punctuator,value:Te.Operator.DivideShorthand}),PowerShorthand:ae({type:le.TokenType.Punctuator,value:Te.Operator.PowerShorthand}),ModuloShorthand:ae({type:le.TokenType.Punctuator,value:Te.Operator.ModuloShorthand}),Seperator:ae({type:le.TokenType.Punctuator,value:Te.Operator.Comma}),Function:ae({type:le.TokenType.Keyword,value:er.Keyword.Function}),EndFunction:ae({type:le.TokenType.Keyword,value:er.Keyword.EndFunction}),EndWhile:ae({type:le.TokenType.Keyword,value:er.Keyword.EndWhile}),EndFor:ae({type:le.TokenType.Keyword,value:er.Keyword.EndFor}),EndIf:ae({type:le.TokenType.Keyword,value:er.Keyword.EndIf}),SliceSeperator:ae({type:le.TokenType.SliceOperator,value:Te.Operator.SliceSeperator}),MapKeyValueSeperator:ae({type:le.TokenType.SliceOperator,value:Te.Operator.SliceSeperator}),MapSeperator:ae({type:le.TokenType.Punctuator,value:Te.Operator.Comma}),ListSeperator:ae({type:le.TokenType.Punctuator,value:Te.Operator.Comma}),CallSeperator:ae({type:le.TokenType.Punctuator,value:Te.Operator.Comma}),ArgumentSeperator:ae({type:le.TokenType.Punctuator,value:Te.Operator.Comma}),ImportCodeSeperator:ae({type:le.TokenType.SliceOperator,value:Te.Operator.SliceSeperator}),ElseIf:ae({type:le.TokenType.Keyword,value:er.Keyword.ElseIf}),Then:ae({type:le.TokenType.Keyword,value:er.Keyword.Then}),Else:ae({type:le.TokenType.Keyword,value:er.Keyword.Else}),In:ae({type:le.TokenType.Keyword,value:er.Keyword.In}),MemberSeperator:ae({type:le.TokenType.Punctuator,value:Te.Operator.Member}),NumberSeperator:ae({type:le.TokenType.Punctuator,value:Te.Operator.Member}),Reference:ae({type:le.TokenType.Punctuator,value:Te.Operator.Reference}),Isa:ae({type:le.TokenType.Keyword,value:Te.Operator.Isa}),Or:ae({type:le.TokenType.Keyword,value:Te.Operator.Or}),And:ae({type:le.TokenType.Keyword,value:Te.Operator.And}),Minus:ae({type:le.TokenType.Punctuator,value:Te.Operator.Minus}),Plus:ae({type:le.TokenType.Punctuator,value:Te.Operator.Plus}),Times:ae({type:le.TokenType.Punctuator,value:Te.Operator.Asterik}),Power:ae({type:le.TokenType.Punctuator,value:Te.Operator.Power}),Divide:ae({type:le.TokenType.Punctuator,value:Te.Operator.Slash}),Mod:ae({type:le.TokenType.Punctuator,value:Te.Operator.Modulo}),Equal:ae({type:le.TokenType.Punctuator,value:Te.Operator.Equal}),NotEqual:ae({type:le.TokenType.Punctuator,value:Te.Operator.NotEqual}),Greater:ae({type:le.TokenType.Punctuator,value:Te.Operator.GreaterThan}),GreaterEqual:ae({type:le.TokenType.Punctuator,value:Te.Operator.GreaterThanOrEqual}),Lesser:ae({type:le.TokenType.Punctuator,value:Te.Operator.LessThan}),LessEqual:ae({type:le.TokenType.Punctuator,value:Te.Operator.LessThanOrEqual}),New:ae({type:le.TokenType.Keyword,value:er.Keyword.New}),Not:ae({type:le.TokenType.Keyword,value:er.Keyword.Not}),Comment:ae({type:le.TokenType.Comment})};function hr(t,e){let r=e.filter(a=>a.data.value!==void 0).map(a=>`case '${a.data.value}': return token.type === '${a.data.type}';`).join(`
87
87
  `),s=e.filter(a=>a.data.value===void 0).map(a=>`case '${a.data.type}':`).join(`
88
88
  `),o=new Function("token",`
89
89
  ${s.length>0?`switch(token.type) {
@@ -93,35 +93,35 @@ ${e}
93
93
  ${r.length>0?`switch(token.value) {
94
94
  ${r}
95
95
  }`:""}
96
- return false;`);return Object.defineProperty(o,"name",{value:`selector_group_${t}`,writable:!1}),o.selectors=e,o}ue.createSelectorGroup=hr;function ER(t){return t.selectors}ue.getSelectorsFromGroup=ER;var gr;(function(t){t.BlockEndOfLine="BlockEndOfLine",t.AssignmentEndOfExpr="AssignmentEndOfExpr",t.AssignmentShorthand="AssignmentShorthand",t.AssignmentCommandArgs="AssignmentCommandArgs",t.ReturnStatementEnd="ReturnStatementEnd",t.FunctionDeclarationArgEnd="FunctionDeclarationArgEnd",t.ComparisonOperators="ComparisonOperators",t.MultiDivOperators="MultiDivOperators",t.CallArgsEnd="CallArgsEnd"})(gr=ue.SelectorGroupType||(ue.SelectorGroupType={}));ue.SelectorGroups={BlockEndOfLine:hr(gr.AssignmentEndOfExpr,[ue.Selectors.EndOfLine,ue.Selectors.Comment]),AssignmentEndOfExpr:hr(gr.AssignmentEndOfExpr,[ue.Selectors.EndOfFile,ue.Selectors.EndOfLine,ue.Selectors.Else,ue.Selectors.Comment]),AssignmentShorthand:hr(gr.AssignmentShorthand,[ue.Selectors.AddShorthand,ue.Selectors.SubtractShorthand,ue.Selectors.MultiplyShorthand,ue.Selectors.DivideShorthand,ue.Selectors.PowerShorthand,ue.Selectors.ModuloShorthand]),AssignmentCommandArgs:hr(gr.AssignmentCommandArgs,[ue.Selectors.ArgumentSeperator,ue.Selectors.EndOfLine,ue.Selectors.EndOfFile]),ReturnStatementEnd:hr(gr.ReturnStatementEnd,[ue.Selectors.EndOfLine,ue.Selectors.Else,ue.Selectors.Comment]),FunctionDeclarationArgEnd:hr(gr.FunctionDeclarationArgEnd,[ue.Selectors.RParenthesis,ue.Selectors.EndOfFile,ue.Selectors.EndOfLine]),ComparisonOperators:hr(gr.ComparisonOperators,[ue.Selectors.Equal,ue.Selectors.NotEqual,ue.Selectors.Greater,ue.Selectors.GreaterEqual,ue.Selectors.Lesser,ue.Selectors.LessEqual]),MultiDivOperators:hr(gr.MultiDivOperators,[ue.Selectors.Times,ue.Selectors.Divide,ue.Selectors.Mod]),CallArgsEnd:hr(gr.CallArgsEnd,[ue.Selectors.ArgumentSeperator,ue.Selectors.RParenthesis])}});var Gg=g(fl=>{"use strict";Object.defineProperty(fl,"__esModule",{value:!0});fl.Stack=void 0;var Wg=class{constructor(){this._items=[],this._last=null,this._default=null}setDefault(e){this._default=e}push(e){return this._items.push(this._last=e)}pop(){switch(this._items.length){case 0:return this._default;case 1:return this._last=null,this._items.pop()}let e=this._items.pop();return this._last=this._items[this._items.length-1],e}peek(){return this._last||this._default}};fl.Stack=Wg});var Jg=g(Je=>{"use strict";Object.defineProperty(Je,"__esModule",{value:!0});Je.PendingWhile=Je.isPendingWhile=Je.PendingIf=Je.isPendingIf=Je.PendingFunction=Je.isPendingFunction=Je.PendingFor=Je.isPendingFor=Je.PendingChunk=Je.isPendingChunk=Je.PendingBlockType=void 0;var tr;(function(t){t[t.Chunk=0]="Chunk",t[t.For=1]="For",t[t.Function=2]="Function",t[t.If=3]="If",t[t.While=4]="While"})(tr=Je.PendingBlockType||(Je.PendingBlockType={}));var Gi=class{constructor(e,n){this.block=e,this.body=[],this.type=n,this.onComplete=null}complete(e){var n;(n=this.onComplete)===null||n===void 0||n.call(this,this)}};function AR(t){return t.type===tr.Chunk}Je.isPendingChunk=AR;var Kg=class extends Gi{constructor(e){super(e,tr.Chunk)}complete(e){this.block.body=this.body,this.block.end=e.end,this.block.range=[this.block.range[0],e.range[1]],super.complete(e)}};Je.PendingChunk=Kg;function OR(t){return t.type===tr.For}Je.isPendingFor=OR;var Vg=class extends Gi{constructor(e){super(e,tr.For)}complete(e){this.block.body=this.body,this.block.end=e.end,this.block.range=[this.block.range[0],e.range[1]],super.complete(e)}};Je.PendingFor=Vg;function CR(t){return t.type===tr.Function}Je.isPendingFunction=CR;var zg=class extends Gi{constructor(e){super(e,tr.Function)}complete(e){this.block.body=this.body,this.block.end=e.end,this.block.range=[this.block.range[0],e.range[1]],super.complete(e)}};Je.PendingFunction=zg;function RR(t){return t.type===tr.If}Je.isPendingIf=RR;var Xg=class extends Gi{constructor(e,n){super(e,tr.If),this.currentClause=n}next(e){this.currentClause.body=this.body,this.currentClause.end=e.end,this.currentClause.range=[this.currentClause.range[0],e.range[1]],this.block.clauses.push(this.currentClause),super.complete(e),this.body=[]}complete(e){this.body.length>0&&this.next(e),this.block.end=e.end,this.block.range=[this.block.range[0],e.range[1]],super.complete(e)}};Je.PendingIf=Xg;function PR(t){return t.type===tr.While}Je.isPendingWhile=PR;var Yg=class extends Gi{constructor(e){super(e,tr.While)}complete(e){this.block.body=this.body,this.block.end=e.end,this.block.range=[this.block.range[0],e.range[1]],super.complete(e)}};Je.PendingWhile=Yg});var Sx=g(ma=>{"use strict";var Tx=ma&&ma.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ma,"__esModule",{value:!0});var DR=Tx(Nh()),hi=ci(),mr=jg(),IR=Tx(Bg()),MR=Uc(),$t=Gs(),qr=Vs(),Zt=ca(),J=Hg(),LR=Gg(),yr=Jg(),Qg=class{constructor(e,n={}){let r=this;r.content=e,r.backpatches=new LR.Stack,r.statementErrors=[],r.lexer=n.lexer||new DR.default(e,{unsafe:n.unsafe,tabWidth:n.tabWidth}),r.token=null,r.previousToken=null,r.lines={},r.scopes=[],r.currentScope=null,r.currentAssignment=null,r.outerScopes=[],r.literals=[],r.validator=n.validator||new IR.default,r.astProvider=n.astProvider||new mr.ASTProvider,r.unsafe=n.unsafe||!1,r.errors=[]}next(){this.previousToken=this.token,this.token=this.lexer.next()}isType(e){return this.token!==null&&e===this.token.type}consume(e){return e(this.token)?(this.next(),!0):!1}consumeMany(e){return e(this.token)?(this.next(),!0):!1}requireType(e,n){let r=this.token;return this.token.type!==e?(this.raise(`got ${r} where ${e} is required`,new Zt.Range(n||r.start,r.end)),null):(this.next(),r)}requireToken(e,n){let r=this.token;return e(r)?(this.next(),r):(this.raise(`got ${r} where "${(0,J.getSelectorValue)(e)}" is required`,new Zt.Range(n||r.start,r.end)),null)}requireTokenOfAny(e,n){let r=this.token;return e(r)?(this.next(),r):(this.raise(`got ${r} where any of ${(0,J.getSelectorsFromGroup)(e).map(i=>`"${(0,J.getSelectorValue)(i)}"`).join(", ")} is required`,new Zt.Range(n||r.start,r.end)),null)}addItemToLines(e){let n=this.lines,r=e.end.line;for(let i=e.start.line;i<=r;i++){let s=n[i];s?s.push(e):n[i]=[e]}}skipNewlines(){let e=this,n=0;for(;;){if(J.Selectors.Comment(e.token)){let r=e.astProvider.comment({value:e.token.value,start:e.token.start,end:e.token.end,range:e.token.range,scope:e.currentScope});e.addItemToLines(r),e.backpatches.peek().body.push(r)}else if(J.Selectors.EndOfLine(e.token))n++;else break;e.next()}return n}pushScope(e){let n=this;n.currentScope!==null&&(n.scopes.push(e),n.outerScopes.push(n.currentScope)),n.currentScope=e}popScope(){let e=this;e.currentScope=e.outerScopes.pop()}tryToRecover(){let e=this,n=e.statementErrors[0];if(e.errors.push(n),!e.unsafe)throw n;for(e.lexer.recoverFromSnapshot(),e.next();e.token.type!==hi.TokenType.EOL&&e.token.type!==hi.TokenType.EOF;e.next());}finishRemaingScopes(){let e=this,n=e.backpatches.pop();for(;!(0,yr.isPendingChunk)(n);){let r=e.raise(`found open block ${n.block.type}`,new Zt.Range(n.block.start,n.block.start));if(n.complete(e.previousToken),e.errors.push(r),!e.unsafe)throw r;n=e.backpatches.pop()}}parseChunk(){let e=this;e.next();let n=e.token.start,r=e.astProvider.chunk({start:n,end:null,range:[e.token.range[0],null]}),i=new yr.PendingChunk(r);for(e.backpatches.setDefault(i),e.pushScope(r);!J.Selectors.EndOfFile(e.token)&&(e.skipNewlines(),!J.Selectors.EndOfFile(e.token));)e.lexer.recordSnapshot(),e.statementErrors=[],e.parseStatement(),e.statementErrors.length>0&&e.tryToRecover();return e.finishRemaingScopes(),e.popScope(),i.complete(e.token),r.literals=e.literals,r.scopes=e.scopes,r.lines=e.lines,r}parseStatement(){let e=this;if(hi.TokenType.Keyword===e.token.type&&$t.Keyword.Not!==e.token.value){e.parseKeyword();return}let n=e.backpatches.peek(),r=e.parseAssignment();r.end!==null&&e.addItemToLines(r),n.body.push(r)}parseKeyword(){let e=this;switch(e.token.value){case $t.Keyword.Return:{let r=e.backpatches.peek();e.next();let i=e.parseReturnStatement();i.end!==null&&e.addItemToLines(i),r.body.push(i);return}case $t.Keyword.If:{e.next(),e.parseIfStatement();return}case $t.Keyword.ElseIf:{e.next(),e.nextIfClause(mr.ASTType.ElseifClause);return}case $t.Keyword.Else:{e.next(),e.nextIfClause(mr.ASTType.ElseClause);return}case $t.Keyword.While:{e.next(),e.parseWhileStatement();return}case $t.Keyword.For:{e.next(),e.parseForStatement();return}case $t.Keyword.EndFunction:{e.next(),e.finalizeFunction();return}case $t.Keyword.EndFor:{e.next(),e.finalizeForStatement();return}case $t.Keyword.EndWhile:{e.next(),e.finalizeWhileStatement();return}case $t.Keyword.EndIf:{e.next(),e.nextIfClause(null);return}case $t.Keyword.Continue:{let r=e.backpatches.peek();e.next();let i=e.astProvider.continueStatement({start:e.previousToken.start,end:e.previousToken.end,range:e.previousToken.range,scope:e.currentScope});e.addItemToLines(i),r.body.push(i);return}case $t.Keyword.Break:{let r=e.backpatches.peek();e.next();let i=e.astProvider.breakStatement({start:e.previousToken.start,end:e.previousToken.end,range:e.previousToken.range,scope:e.currentScope});e.addItemToLines(i),r.body.push(i);return}}e.raise(`unexpected keyword ${e.token} at start of line`,new Zt.Range(e.token.start,e.token.end))}parseShortcutStatement(){let e=this;if(hi.TokenType.Keyword===e.token.type&&$t.Keyword.Not!==e.token.value)switch(e.token.value){case $t.Keyword.Return:return e.next(),e.parseReturnStatement();case $t.Keyword.Continue:return e.next(),e.astProvider.continueStatement({start:e.previousToken.start,end:e.previousToken.end,range:e.previousToken.range,scope:e.currentScope});case $t.Keyword.Break:return e.next(),e.astProvider.breakStatement({start:e.previousToken.start,end:e.previousToken.end,range:e.previousToken.range,scope:e.currentScope});default:return e.raise(`unexpected keyword ${e.token} in shorthand statement`,new Zt.Range(e.token.start,e.token.end)),e.parseInvalidCode()}return e.parseAssignment()}parseAssignment(){let e=this,n=e.currentScope,r=e.token,i=e.parseExpr(null,!0,!0);if(J.SelectorGroups.AssignmentEndOfExpr(e.token))return i;if(J.Selectors.Assign(e.token)){e.next();let o=e.astProvider.assignmentStatement({variable:i,init:null,start:r.start,range:[r.range[0],null],end:null,scope:n}),a=e.currentAssignment;if(e.currentAssignment=o,o.init=e.parseExpr(o),o.end=e.previousToken.end,o.range[1]=e.previousToken.range[1],o.init.type===mr.ASTType.FunctionDeclaration){let u=e.backpatches.peek();u.onComplete=c=>{o.end=c.block.end,o.range[1]=c.block.range[1]}}return e.currentAssignment=a,n.assignments.push(o),o}else if(J.SelectorGroups.AssignmentShorthand(e.token)){let o=e.token;e.next();let a=e.astProvider.assignmentStatement({variable:i,init:null,start:r.start,range:[r.range[0],null],end:null,scope:n}),u=e.currentAssignment;e.currentAssignment=a;let c=e.token,l=o.value.charAt(0),d=e.parseExpr(a),p=e.astProvider.parenthesisExpression({start:d.start,end:d.end,range:d.range,expression:d});return a.init=e.astProvider.binaryExpression({operator:l,left:i.clone(),right:p,start:c.start,end:e.previousToken.end,range:[c.range[0],e.previousToken.range[1]],scope:n}),a.end=e.previousToken.end,a.range[1]=e.previousToken.range[1],e.currentAssignment=u,n.assignments.push(a),a}let s=[];for(;!J.Selectors.EndOfFile(e.token);){let o=e.parseExpr(null);if(s.push(o),J.SelectorGroups.BlockEndOfLine(e.token)||J.Selectors.Else(e.token))break;if(J.Selectors.ArgumentSeperator(e.token)){e.next(),e.skipNewlines();continue}let a=e.requireTokenOfAny(J.SelectorGroups.AssignmentCommandArgs,r.start);if(J.Selectors.EndOfLine(a)||J.Selectors.EndOfFile(a))break}return s.length===0?e.astProvider.callStatement({expression:i,start:r.start,end:e.previousToken.end,range:[r.range[0],e.previousToken.range[1]],scope:n}):e.astProvider.callStatement({expression:e.astProvider.callExpression({base:i,arguments:s,start:r.start,end:e.previousToken.end,range:[r.range[0],e.previousToken.range[1]],scope:n}),start:r.start,end:e.previousToken.end,range:[r.range[0],e.previousToken.range[1]],scope:n})}parseReturnStatement(){let e=this,n=e.currentScope,r=e.previousToken,i=null,s=e.astProvider.returnStatement({argument:null,start:r.start,end:null,range:[r.range[0],null],scope:n});if(J.SelectorGroups.ReturnStatementEnd(e.token))s.end=e.previousToken.end,s.range[1]=e.previousToken.range[1];else{if(i=e.parseExpr(s),s.end=e.previousToken.end,s.range[1]=e.previousToken.range[1],i.type===mr.ASTType.FunctionDeclaration){let o=e.backpatches.peek();o.onComplete=a=>{s.end=a.block.end,s.range[1]=a.block.range[1]}}s.argument=i}return n.returns.push(s),s}parseIfStatement(){let e=this,n=e.previousToken,r=e.parseExpr(null);if(e.addItemToLines(r),e.requireToken(J.Selectors.Then,n.start),!J.SelectorGroups.BlockEndOfLine(e.token)){e.parseIfShortcutStatement(r,n);return}let i=e.astProvider.ifStatement({clauses:[],start:n.start,end:null,range:[n.range[0],null],scope:e.currentScope}),s=e.astProvider.ifClause({condition:r,start:n.start,end:e.token.end,range:[n.range[0],e.token.range[1]],scope:e.currentScope}),o=new yr.PendingIf(i,s);e.backpatches.push(o)}nextIfClause(e){let n=this,r=n.backpatches.peek();if(!(0,yr.isPendingIf)(r)){n.raise("no matching open if block",new Zt.Range(n.token.start,n.token.end));return}switch(r.next(n.previousToken),e){case mr.ASTType.ElseifClause:{let i=n.token,s=n.parseExpr(null);n.requireToken(J.Selectors.Then,i.start),r.currentClause=n.astProvider.elseifClause({condition:s,start:i.start,end:null,range:[i.range[0],null],scope:n.currentScope});break}case mr.ASTType.ElseClause:{let i=n.token;r.currentClause=n.astProvider.elseClause({start:i.start,end:null,range:[i.range[0],null],scope:n.currentScope});break}}e===null&&(r.complete(n.previousToken),n.addItemToLines(r.block),n.backpatches.pop(),n.backpatches.peek().body.push(r.block))}parseIfShortcutStatement(e,n){let r=this,i=[],s=r.backpatches.peek(),o=r.astProvider.ifShortcutStatement({clauses:i,start:n.start,end:null,range:[n.range[0],null],scope:r.currentScope}),a=r.parseShortcutStatement();if(i.push(r.astProvider.ifShortcutClause({condition:e,body:[a],start:n.start,end:r.token.end,range:[n.range[0],r.token.range[1]],scope:r.currentScope})),J.Selectors.Else(r.token)){r.next();let u=r.token,c=r.parseShortcutStatement();i.push(r.astProvider.elseShortcutClause({body:[c],start:u.start,end:r.token.end,range:[u.range[0],r.token.range[1]],scope:r.currentScope}))}o.end=r.token.end,o.range[1]=r.token.range[1],r.addItemToLines(o),s.body.push(o)}parseWhileStatement(){let e=this,n=e.previousToken,r=e.parseExpr(null);if(!r){e.raise("while requires a condition",new Zt.Range(n.start,e.token.end));return}if(!J.SelectorGroups.BlockEndOfLine(e.token))return e.parseWhileShortcutStatement(r,n);let i=e.astProvider.whileStatement({condition:r,start:n.start,end:null,range:[n.range[0],null],scope:e.currentScope}),s=new yr.PendingWhile(i);e.backpatches.push(s),s.onComplete=o=>{e.addItemToLines(o.block),e.backpatches.pop(),e.backpatches.peek().body.push(o.block)}}finalizeWhileStatement(){let e=this,n=e.backpatches.peek();if(!(0,yr.isPendingWhile)(n)){e.raise("no matching open while block",new Zt.Range(e.token.start,e.token.end));return}n.complete(e.previousToken)}parseWhileShortcutStatement(e,n){let r=this,i=r.backpatches.peek(),s=r.parseShortcutStatement(),o=r.astProvider.whileStatement({condition:e,body:[s],start:n.start,end:r.previousToken.end,range:[n.range[0],r.previousToken.range[1]],scope:r.currentScope});r.addItemToLines(o),i.body.push(o)}parseForStatement(){let e=this,n=e.currentScope,r=e.previousToken,i=e.parseIdentifier(),s=e.astProvider.assignmentStatement({variable:i,init:e.astProvider.unknown({start:i.start,end:i.end,range:i.range,scope:n}),start:i.start,end:i.end,range:i.range,scope:n}),o=e.astProvider.assignmentStatement({variable:e.astProvider.identifier({name:`__${i.name}_idx`,start:i.start,end:i.end,range:i.range,scope:n}),init:e.astProvider.literal(hi.TokenType.NumericLiteral,{value:0,raw:"0",start:i.start,end:i.end,range:i.range,scope:n}),start:i.start,end:i.end,range:i.range,scope:n});n.assignments.push(s,o),e.requireToken(J.Selectors.In,r.start);let a=e.parseExpr(null);if(!a){e.raise("sequence expression expected for 'for' loop",new Zt.Range(r.start,e.token.end));return}if(!J.SelectorGroups.BlockEndOfLine(e.token))return e.parseForShortcutStatement(i,a,r);let u=e.astProvider.forGenericStatement({variable:i,iterator:a,start:r.start,end:e.previousToken.end,range:[r.range[0],e.previousToken.range[1]],scope:n}),c=new yr.PendingFor(u);e.backpatches.push(c)}finalizeForStatement(){let e=this,n=e.backpatches.peek();if(!(0,yr.isPendingFor)(n)){e.raise("no matching open for block",new Zt.Range(e.token.start,e.token.end));return}n.complete(e.previousToken),e.addItemToLines(n.block),e.backpatches.pop(),e.backpatches.peek().body.push(n.block)}parseForShortcutStatement(e,n,r){let i=this,s=i.backpatches.peek(),o=i.parseShortcutStatement(),a=i.astProvider.forGenericStatement({variable:e,iterator:n,body:[o],start:r.start,end:i.previousToken.end,range:[r.range[0],i.previousToken.range[1]],scope:i.currentScope});i.addItemToLines(a),s.body.push(a)}parseExpr(e,n=!1,r=!1){return this.parseFunctionDeclaration(e,n,r)}parseFunctionDeclaration(e,n=!1,r=!1){let i=this;if(!J.Selectors.Function(i.token))return i.parseOr(n,r);i.next();let s=i.previousToken,o=i.astProvider.functionStatement({start:s.start,end:null,range:[s.range[0],null],scope:i.currentScope,parent:i.outerScopes[i.outerScopes.length-1],assignment:i.currentAssignment}),a=[];if(i.pushScope(o),!J.SelectorGroups.BlockEndOfLine(i.token)){for(i.requireToken(J.Selectors.LParenthesis,s.start);!J.SelectorGroups.FunctionDeclarationArgEnd(i.token);){let c=i.parseIdentifier(),l=c;if(i.consume(J.Selectors.Assign)){let d=i.parseExpr(null);if(d instanceof mr.ASTLiteral){let p=i.astProvider.assignmentStatement({variable:c,init:d,start:l.start,end:i.previousToken.end,range:[l.range[0],i.previousToken.range[1]],scope:i.currentScope});i.currentScope.assignments.push(p),a.push(p)}else i.raise("parameter default value must be a literal value",new Zt.Range(l.start,i.token.end)),a.push(i.astProvider.invalidCodeExpression({start:l.start,end:i.previousToken.end,range:[l.range[0],i.previousToken.range[1]]}))}else{let d=i.astProvider.assignmentStatement({variable:c,init:i.astProvider.unknown({start:l.start,end:i.previousToken.end,range:[l.range[0],i.previousToken.range[1]],scope:i.currentScope}),start:l.start,end:i.previousToken.end,range:[l.range[0],i.previousToken.range[1]],scope:i.currentScope});i.currentScope.assignments.push(d),a.push(c)}if(J.Selectors.RParenthesis(i.token))break;if(i.requireToken(J.Selectors.ArgumentSeperator,s.start),J.Selectors.RParenthesis(i.token)){i.raise("expected argument instead received right parenthesis",new Zt.Range(i.previousToken.end,i.previousToken.end));break}}i.requireToken(J.Selectors.RParenthesis,s.start)}o.parameters=a;let u=new yr.PendingFunction(o);return i.backpatches.push(u),u.onComplete=c=>{e!==null?(e.end=c.block.end,e.range[1]=c.block.range[1],i.addItemToLines(e)):i.addItemToLines(c.block)},o}finalizeFunction(){let e=this,n=e.backpatches.peek();if(!(0,yr.isPendingFunction)(n)){e.raise("no matching open function block",new Zt.Range(e.token.start,e.token.end));return}e.popScope(),n.complete(e.previousToken),e.backpatches.pop()}parseOr(e=!1,n=!1){let r=this,i=r.token,o=r.parseAnd(e,n);for(;J.Selectors.Or(r.token);){r.next(),r.skipNewlines();let a=r.parseAnd();o=r.astProvider.logicalExpression({operator:qr.Operator.Or,left:o,right:a,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return o}parseAnd(e=!1,n=!1){let r=this,i=r.token,o=r.parseNot(e,n);for(;J.Selectors.And(r.token);){r.next(),r.skipNewlines();let a=r.parseNot();o=r.astProvider.logicalExpression({operator:qr.Operator.And,left:o,right:a,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return o}parseNot(e=!1,n=!1){let r=this,i=r.token;if(J.Selectors.Not(r.token)){r.next(),r.skipNewlines();let s=r.parseIsa();return r.astProvider.unaryExpression({operator:qr.Operator.Not,argument:s,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return r.parseIsa(e,n)}parseIsa(e=!1,n=!1){let r=this,i=r.token,s=r.parseComparisons(e,n);if(J.Selectors.Isa(r.token)){r.next(),r.skipNewlines();let o=r.parseComparisons();return r.astProvider.isaExpression({operator:qr.Operator.Isa,left:s,right:o,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return s}parseComparisons(e=!1,n=!1){let r=this,i=r.token,s=r.parseAddSub(e,n);if(!J.SelectorGroups.ComparisonOperators(r.token))return s;let o=[s],a=[];do{let u=r.token;r.next(),r.skipNewlines();let c=r.parseAddSub();a.push(u.value),o.push(c)}while(J.SelectorGroups.ComparisonOperators(r.token));return a.length===1?r.astProvider.binaryExpression({operator:a[0],left:o[0],right:o[1],start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope}):r.astProvider.comparisonGroupExpression({operators:a,expressions:o,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}parseAddSub(e=!1,n=!1){let r=this,i=r.token,o=r.parseMultDiv(e,n);for(;J.Selectors.Plus(r.token)||J.Selectors.Minus(r.token)&&(!n||!r.token.afterSpace||r.lexer.isAtWhitespace());){let a=r.token;r.next(),r.skipNewlines();let u=r.parseMultDiv();o=r.astProvider.binaryExpression({operator:a.value,left:o,right:u,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return o}parseMultDiv(e=!1,n=!1){let r=this,i=r.token,o=r.parseUnaryMinus(e,n);for(;J.SelectorGroups.MultiDivOperators(r.token);){let a=r.token;r.next(),r.skipNewlines();let u=r.parseUnaryMinus();o=r.astProvider.binaryExpression({operator:a.value,left:o,right:u,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return o}parseUnaryMinus(e=!1,n=!1){let r=this;if(!J.Selectors.Minus(r.token))return r.parseNew(e,n);let i=r.token;r.next(),r.skipNewlines();let s=r.parseNew();return s instanceof mr.ASTNumericLiteral||s instanceof mr.ASTBooleanLiteral?(s.negated=!0,s):r.astProvider.unaryExpression({operator:qr.Operator.Minus,argument:s,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}parseNew(e=!1,n=!1){let r=this;if(!J.Selectors.New(r.token))return r.parseAddressOf(e,n);let i=r.token;r.next(),r.skipNewlines();let s=r.parseNew();return r.astProvider.unaryExpression({operator:qr.Operator.New,argument:s,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}parseAddressOf(e=!1,n=!1){let r=this;if(!J.Selectors.Reference(r.token))return r.parsePower(e,n);let i=r.token;r.next(),r.skipNewlines();let s=r.parsePower();return r.astProvider.unaryExpression({operator:qr.Operator.Reference,argument:s,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}parsePower(e=!1,n=!1){let r=this,i=r.token,s=r.parseCallExpr(e,n);if(J.Selectors.Power(r.token)){r.next(),r.skipNewlines();let o=r.parseCallExpr();return r.astProvider.binaryExpression({operator:qr.Operator.Power,left:s,right:o,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return s}parseCallExpr(e=!1,n=!1){let r=this,i=r.token,s=r.parseMap(e,n);for(;!J.Selectors.EndOfFile(r.token);)if(J.Selectors.MemberSeperator(r.token)){r.next(),r.skipNewlines();let o=r.parseIdentifier();s=r.astProvider.memberExpression({base:s,indexer:qr.Operator.Member,identifier:o,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}else if(J.Selectors.SLBracket(r.token)&&!r.token.afterSpace){if(r.next(),r.skipNewlines(),J.Selectors.SliceSeperator(r.token)){let o=r.astProvider.emptyExpression({start:r.previousToken.start,end:r.previousToken.end,range:r.previousToken.range,scope:r.currentScope});r.next(),r.skipNewlines();let a=J.Selectors.SRBracket(r.token)?r.astProvider.emptyExpression({start:r.previousToken.start,end:r.previousToken.end,range:r.previousToken.range,scope:r.currentScope}):r.parseExpr(null);s=r.astProvider.sliceExpression({base:s,left:o,right:a,start:i.start,end:r.token.end,range:[i.range[0],r.token.range[1]],scope:r.currentScope})}else{let o=r.parseExpr(null);if(J.Selectors.SliceSeperator(r.token)){r.next(),r.skipNewlines();let a=J.Selectors.SRBracket(r.token)?r.astProvider.emptyExpression({start:r.previousToken.start,end:r.previousToken.end,range:r.previousToken.range,scope:r.currentScope}):r.parseExpr(null);s=r.astProvider.sliceExpression({base:s,left:o,right:a,start:i.start,end:r.token.end,range:[i.range[0],r.token.range[1]],scope:r.currentScope})}else s=r.astProvider.indexExpression({base:s,index:o,start:i.start,end:r.token.end,range:[i.range[0],r.token.range[1]],scope:r.currentScope})}r.requireToken(J.Selectors.SRBracket,i.start)}else if(J.Selectors.LParenthesis(r.token)&&(!e||!r.token.afterSpace)){let o=r.parseCallArgs();s=r.astProvider.callExpression({base:s,arguments:o,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}else break;return s}parseCallArgs(){let e=this,n=[];if(J.Selectors.LParenthesis(e.token))if(e.next(),J.Selectors.RParenthesis(e.token))e.next();else for(;!J.Selectors.EndOfFile(e.token);){e.skipNewlines();let r=e.parseExpr(null);if(n.push(r),e.skipNewlines(),J.Selectors.RParenthesis(e.requireTokenOfAny(J.SelectorGroups.CallArgsEnd,r.start)))break}return n}parseMap(e=!1,n=!1){let r=this;if(!J.Selectors.CLBracket(r.token))return r.parseList(e,n);let i=r.currentScope,s=r.token,o=[],a=r.astProvider.mapConstructorExpression({fields:o,start:s.start,end:null,range:[s.range[0],null],scope:i});if(r.next(),J.Selectors.CRBracket(r.token))r.next();else for(r.skipNewlines();!J.Selectors.EndOfFile(r.token);){if(J.Selectors.CRBracket(r.token)){r.next();break}let u=r.astProvider.mapKeyString({key:null,value:null,start:r.token.start,end:null,range:[r.token.range[0],null],scope:i});if(u.key=r.parseExpr(null),r.requireToken(J.Selectors.MapKeyValueSeperator),r.skipNewlines(),r.currentAssignment){let c=r.astProvider.assignmentStatement({variable:r.astProvider.indexExpression({index:u.key,base:r.currentAssignment.variable,start:u.start,end:r.token.end,range:[u.range[0],r.token.range[1]],scope:i}),init:null,start:u.start,end:null,range:[u.range[0],null]}),l=r.currentAssignment;r.currentAssignment=c,u.value=r.parseExpr(u),r.currentAssignment=l,c.init=u.value,c.end=r.previousToken.end,c.range[1]=r.previousToken.range[1],i.assignments.push(c)}else u.value=r.parseExpr(u);if(u.end=r.previousToken.end,u.range[1]=r.previousToken.range[1],o.push(u),J.Selectors.MapSeperator(r.token)&&(r.next(),r.skipNewlines()),J.Selectors.CRBracket(r.token)){r.next();break}}return a.end=r.token.start,a.range[1]=r.token.range[1],a}parseList(e=!1,n=!1){let r=this;if(!J.Selectors.SLBracket(r.token))return r.parseQuantity(e,n);let i=r.currentScope,s=r.token,o=[],a=r.astProvider.listConstructorExpression({fields:o,start:s.start,end:null,range:[s.range[0],null],scope:i});if(r.next(),J.Selectors.SRBracket(r.token))r.next();else for(r.skipNewlines();!J.Selectors.EndOfFile(r.token);){if(J.Selectors.SRBracket(r.token)){r.next();break}let u=r.astProvider.listValue({value:null,start:r.token.start,end:null,range:[r.token.range[0],null],scope:i});if(r.currentAssignment){let c=r.astProvider.assignmentStatement({variable:r.astProvider.indexExpression({index:r.astProvider.literal(hi.TokenType.NumericLiteral,{value:o.length,raw:`${o.length}`,start:s.start,end:r.token.end,range:[s.range[0],r.token.range[1]],scope:i}),base:r.currentAssignment.variable,start:null,end:null,range:[null,null],scope:i}),init:null,start:null,range:[null,null],end:null}),l=r.currentAssignment,d=r.token;r.currentAssignment=l,u.value=r.parseExpr(u),r.currentAssignment=l,c.variable.start=d.start,c.variable.end=r.previousToken.end,c.variable.range=[d.range[0],r.previousToken.range[1]],c.init=u.value,c.start=u.start,c.end=r.previousToken.end,c.range=[u.range[0],r.previousToken.range[1]],i.assignments.push(c)}else u.value=r.parseExpr(u);if(u.end=r.previousToken.end,u.range[1]=r.previousToken.range[1],o.push(u),J.Selectors.MapSeperator(r.token)&&(r.next(),r.skipNewlines()),J.Selectors.SRBracket(r.token)){r.next();break}}return a.end=r.token.start,a.range[1]=r.token.range[1],a}parseQuantity(e=!1,n=!1){let r=this;if(!J.Selectors.LParenthesis(r.token))return r.parseAtom(e,n);let i=r.token;r.next(),r.skipNewlines();let s=r.parseExpr(null);return r.requireToken(J.Selectors.RParenthesis,i.start),r.astProvider.parenthesisExpression({expression:s,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}parseAtom(e=!1,n=!1){let r=this;return r.validator.isLiteral(r.token.type)?r.parseLiteral():r.isType(hi.TokenType.Identifier)?r.parseIdentifier():(r.raise(`got ${r.token} where number, string, or identifier is required`,new Zt.Range(r.token.start,r.token.end)),r.parseInvalidCode())}parseLiteral(){let e=this,n=e.token,r=e.token.type,i=e.astProvider.literal(r,{value:e.token.value,raw:e.token.raw,start:n.start,end:e.token.end,range:[n.range[0],e.token.range[1]],scope:e.currentScope});return e.literals.push(i),e.next(),i}parseIdentifier(){let e=this,n=e.token,r=e.requireType(hi.TokenType.Identifier);return r===null?e.parseInvalidCode():(e.currentScope.namespaces.add(r.value),e.astProvider.identifier({name:r.value,start:n.start,end:n.end,range:n.range,scope:e.currentScope}))}parseInvalidCode(){let e=this,n=e.token,r=e.astProvider.invalidCodeExpression({start:n.start,end:n.end,range:n.range});return e.next(),r}raise(e,n){let r=this,i=new MR.ParserException(e,n);return r.statementErrors.push(i),i}};ma.default=Qg});var qe=g(Ne=>{"use strict";var NR=Ne&&Ne.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),nr=Ne&&Ne.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&NR(e,t,n)},pl=Ne&&Ne.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Ne,"__esModule",{value:!0});Ne.ASTRange=Ne.ASTPosition=Ne.ParserValidatorm=Ne.Parser=Ne.LexerValidator=Ne.Lexer=void 0;var qR=Nh();Object.defineProperty(Ne,"Lexer",{enumerable:!0,get:function(){return pl(qR).default}});nr(ci(),Ne);var jR=Eh();Object.defineProperty(Ne,"LexerValidator",{enumerable:!0,get:function(){return pl(jR).default}});var FR=Sx();Object.defineProperty(Ne,"Parser",{enumerable:!0,get:function(){return pl(FR).default}});nr(jg(),Ne);var $R=Bg();Object.defineProperty(Ne,"ParserValidatorm",{enumerable:!0,get:function(){return pl($R).default}});nr(Jg(),Ne);nr(Gg(),Ne);nr(Ih(),Ne);nr(Bc(),Ne);nr(Uc(),Ne);nr(Gs(),Ne);nr(Ch(),Ne);nr(Vs(),Ne);var BR=ra();Object.defineProperty(Ne,"ASTPosition",{enumerable:!0,get:function(){return BR.Position}});var UR=ca();Object.defineProperty(Ne,"ASTRange",{enumerable:!0,get:function(){return UR.Range}});nr(Hg(),Ne)});var Ki=g(ya=>{"use strict";Object.defineProperty(ya,"__esModule",{value:!0});ya.SignatureDefinitionBaseType=void 0;var HR;(function(t){t.Function="function",t.Number="number",t.String="string",t.Map="map",t.List="list",t.Any="any",t.General="general"})(HR=ya.SignatureDefinitionBaseType||(ya.SignatureDefinitionBaseType={}))});var ba=g(Zs=>{"use strict";var kx=Zs&&Zs.__read||function(t,e){var n=typeof Symbol=="function"&&t[Symbol.iterator];if(!n)return t;var r=n.call(t),i,s=[],o;try{for(;(e===void 0||e-- >0)&&!(i=r.next()).done;)s.push(i.value)}catch(a){o={error:a}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return s};Object.defineProperty(Zs,"__esModule",{value:!0});Zs.SignatureDefinitionTypeMeta=void 0;var en=Ki(),WR=function(){function t(e){var n,r;this.type=e.type,this.keyType=(n=e.keyType)!==null&&n!==void 0?n:null,this.valueType=(r=e.valueType)!==null&&r!==void 0?r:null}return t.fromString=function(e){var n=e.match(/^([a-zA-Z]+)(?:<([^>]+)>)?$/);if(!n)return null;var r=null,i=null,s=kx(n,3),o=s[0],a=s[1],u=s[2];if(a===en.SignatureDefinitionBaseType.Map?(r=en.SignatureDefinitionBaseType.Any,i=en.SignatureDefinitionBaseType.Any):a===en.SignatureDefinitionBaseType.List&&(r=en.SignatureDefinitionBaseType.Any),u){var c=u.split(",").map(function(b){return b.trim()});if(c.length>2)return null;var l=kx(c,2),d=l[0],p=l[1];p!=null?(r=p,i=d):r=d}return new t({type:a,keyType:i,valueType:r})},t.parse=function(e){var n,r;if(typeof e=="string"){var i=e,s=null,o=null;return i===en.SignatureDefinitionBaseType.Map?(s=en.SignatureDefinitionBaseType.Any,o=en.SignatureDefinitionBaseType.Any):i===en.SignatureDefinitionBaseType.List&&(s=en.SignatureDefinitionBaseType.Any),new t({type:i,valueType:s,keyType:o})}else if(typeof e=="object"){var i=e.type,s=(n=e.valueType)!==null&&n!==void 0?n:null,o=(r=e.keyType)!==null&&r!==void 0?r:null;return i===en.SignatureDefinitionBaseType.Map?(s=s??en.SignatureDefinitionBaseType.Any,o=o??en.SignatureDefinitionBaseType.Any):i===en.SignatureDefinitionBaseType.List&&(s=s??en.SignatureDefinitionBaseType.Any),new t({type:i,valueType:s,keyType:o})}throw new Error("Unable to parse type definition!")},t.prototype.isEqual=function(e){return this.type===e.type},t.prototype.isEqualSafe=function(e){return this.type===e.type&&this.keyType===e.keyType&&this.valueType===e.valueType},t.prototype.toString=function(){return this.keyType===null?this.valueType===null?this.type:"".concat(this.type,"<").concat(this.valueType,">"):"".concat(this.type,"<").concat(this.keyType,",").concat(this.valueType,">")},t.prototype.toJSON=function(){return this.keyType===null?this.valueType===null?this.type:{type:this.type,valueType:this.valueType}:{type:this.type,keyType:this.keyType,valueType:this.valueType}},t.prototype.copy=function(){return new t({type:this.type,keyType:this.keyType,valueType:this.valueType})},t}();Zs.SignatureDefinitionTypeMeta=WR});var Zg=g(gi=>{"use strict";var xx=gi&&gi.__read||function(t,e){var n=typeof Symbol=="function"&&t[Symbol.iterator];if(!n)return t;var r=n.call(t),i,s=[],o;try{for(;(e===void 0||e-- >0)&&!(i=r.next()).done;)s.push(i.value)}catch(a){o={error:a}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return s},wx=gi&&gi.__spreadArray||function(t,e,n){if(n||arguments.length===2)for(var r=0,i=e.length,s;r<i;r++)(s||!(r in e))&&(s||(s=Array.prototype.slice.call(e,0,r)),s[r]=e[r]);return t.concat(s||Array.prototype.slice.call(e))};Object.defineProperty(gi,"__esModule",{value:!0});gi.SignatureDefinitionFunctionArg=void 0;var Ex=ba(),GR=function(){function t(e){this._label=e.label,this._types=e.types.reduce(function(n,r){return n.set(r.type,r)},new Map),this._opt=e.opt,this._default=e.default}return t.parse=function(e){var n,r,i=[];if(e.type)i.push(Ex.SignatureDefinitionTypeMeta.parse(e.type));else if(e.types)i.push.apply(i,wx([],xx(e.types.map(Ex.SignatureDefinitionTypeMeta.parse)),!1));else throw new Error("Invalid signature definition function arg payload!");return new t({label:e.label,types:i,opt:(n=e.opt)!==null&&n!==void 0?n:!1,default:(r=e.default)!==null&&r!==void 0?r:null})},t.prototype.getLabel=function(){return this._label},t.prototype.isOptional=function(){return this._opt},t.prototype.getDefault=function(){return this._default},t.prototype.getTypes=function(){return wx([],xx(this._types.values()),!1)},t.prototype.isValidType=function(e){return this._types.has(e.type)},t.prototype.isValidTypeSafe=function(e){var n;return!!(!((n=this._types.get(e.type))===null||n===void 0)&&n.isEqualSafe(e))},t.prototype.toJSON=function(){return{label:this._label,types:this.getTypes().map(function(e){return e.toJSON()}),opt:this._opt,default:this._default}},t.prototype.copy=function(){return new t({label:this._label,types:this.getTypes().map(function(e){return e.copy()}),opt:this._opt,default:this._default})},t}();gi.SignatureDefinitionFunctionArg=GR});var hl=g(br=>{"use strict";var Vi=br&&br.__read||function(t,e){var n=typeof Symbol=="function"&&t[Symbol.iterator];if(!n)return t;var r=n.call(t),i,s=[],o;try{for(;(e===void 0||e-- >0)&&!(i=r.next()).done;)s.push(i.value)}catch(a){o={error:a}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return s},zi=br&&br.__spreadArray||function(t,e,n){if(n||arguments.length===2)for(var r=0,i=e.length,s;r<i;r++)(s||!(r in e))&&(s||(s=Array.prototype.slice.call(e,0,r)),s[r]=e[r]);return t.concat(s||Array.prototype.slice.call(e))},KR=br&&br.__values||function(t){var e=typeof Symbol=="function"&&Symbol.iterator,n=e&&t[e],r=0;if(n)return n.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(br,"__esModule",{value:!0});br.VariationRegistry=void 0;var VR=function(){function t(e){this._name=e,this._variations=new Set}return t.prototype.getName=function(){return this._name},t.prototype.push=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return this._variations=new Set(zi(zi([],Vi(e),!1),Vi(this._variations),!1)),this},t.prototype.getAll=function(){return zi([],Vi(this._variations),!1)},t}(),zR=function(){function t(){}return t.add=function(e,n){var r=new VR(e);return r.push.apply(r,zi([],Vi(n),!1)),this.variationContainers.set(e,r),this},t.get=function(e){var n;return(n=this.variationContainers.get(e))!==null&&n!==void 0?n:null},t.resolve=function(e){var n,r,i=new Set;try{for(var s=KR(e),o=s.next();!o.done;o=s.next()){var a=o.value;if(typeof a=="string"&&a.startsWith("!")){var u=a.slice(1),c=this.get(u);if(c!==null)i=new Set(zi(zi([],Vi(c.getAll()),!1),Vi(i),!1));else throw new Error("Cannot find variation container for ".concat(u));continue}i.add(a)}}catch(l){n={error:l}}finally{try{o&&!o.done&&(r=s.return)&&r.call(s)}finally{if(n)throw n.error}}return zi([],Vi(i),!1)},t.variationContainers=new Map,t}();br.VariationRegistry=zR});var gl=g(mi=>{"use strict";var XR=mi&&mi.__read||function(t,e){var n=typeof Symbol=="function"&&t[Symbol.iterator];if(!n)return t;var r=n.call(t),i,s=[],o;try{for(;(e===void 0||e-- >0)&&!(i=r.next()).done;)s.push(i.value)}catch(a){o={error:a}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return s},YR=mi&&mi.__spreadArray||function(t,e,n){if(n||arguments.length===2)for(var r=0,i=e.length,s;r<i;r++)(s||!(r in e))&&(s||(s=Array.prototype.slice.call(e,0,r)),s[r]=e[r]);return t.concat(s||Array.prototype.slice.call(e))};Object.defineProperty(mi,"__esModule",{value:!0});mi.SignatureDefinition=void 0;var JR=hl(),QR=ba(),ZR=function(){function t(e){this._type=e.type,this._isProtected=e.isProtected,this._description=e.description,this._example=e.example,this._variations=e.variations}return t.parse=function(e){var n,r,i;return new t({type:QR.SignatureDefinitionTypeMeta.parse(e.type),isProtected:!!e.isProtected,description:(n=e.description)!==null&&n!==void 0?n:null,example:(r=e.example)!==null&&r!==void 0?r:null,variations:(i=e.variations)!==null&&i!==void 0?i:null})},t.prototype.getType=function(){return this._type},t.prototype.isProtected=function(){return this._isProtected},t.prototype.getDescription=function(){return this._description},t.prototype.getExample=function(){return this._example},t.prototype.setDescription=function(e){var n;return this._description=e.description,this._example=(n=e.example)!==null&&n!==void 0?n:null,this},t.prototype.addVariation=function(e){return this._variations==null&&(this._variations=[]),this._variations.push(e),this},t.prototype.getVariations=function(){return JR.VariationRegistry.resolve(this._variations)},t.prototype.toJSON=function(){return{type:this._type.toJSON(),isProtected:this._isProtected,description:this._description,example:this._example?YR([],XR(this._example),!1):null}},t.prototype.withDescription=function(e){var n,r;return new t({type:this._type,isProtected:this._isProtected,description:(n=e?.description)!==null&&n!==void 0?n:this._description,example:(r=e?.example)!==null&&r!==void 0?r:this._example,variations:this._variations})},t.prototype.copy=function(){return new t({type:this._type.copy(),isProtected:this._isProtected,description:this._description,example:this._example,variations:this._variations})},t}();mi.SignatureDefinition=ZR});var em=g(Nn=>{"use strict";var eP=Nn&&Nn.__extends||function(){var t=function(e,n){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,i){r.__proto__=i}||function(r,i){for(var s in i)Object.prototype.hasOwnProperty.call(i,s)&&(r[s]=i[s])},t(e,n)};return function(e,n){if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");t(e,n);function r(){this.constructor=e}e.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),ml=Nn&&Nn.__assign||function(){return ml=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++){e=arguments[n];for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])}return t},ml.apply(this,arguments)},tP=Nn&&Nn.__read||function(t,e){var n=typeof Symbol=="function"&&t[Symbol.iterator];if(!n)return t;var r=n.call(t),i,s=[],o;try{for(;(e===void 0||e-- >0)&&!(i=r.next()).done;)s.push(i.value)}catch(a){o={error:a}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return s},nP=Nn&&Nn.__spreadArray||function(t,e,n){if(n||arguments.length===2)for(var r=0,i=e.length,s;r<i;r++)(s||!(r in e))&&(s||(s=Array.prototype.slice.call(e,0,r)),s[r]=e[r]);return t.concat(s||Array.prototype.slice.call(e))};Object.defineProperty(Nn,"__esModule",{value:!0});Nn.SignatureDefinitionFunction=void 0;var rP=Ki(),iP=hl(),sP=gl(),oP=Zg(),Ax=ba(),aP=function(t){eP(e,t);function e(n){var r=t.call(this,{type:n.type,isProtected:n.isProtected,description:n.description,example:n.example,variations:n.variations})||this;return r._argList=n.arguments.map(function(i){return i.getLabel()}),r._argRefs=n.arguments.reduce(function(i,s){return i.set(s.getLabel(),s)},new Map),r._returns=n.returns.reduce(function(i,s){return i.set(s.type,s)},new Map),r._returnVariations=n.returnVariations,r}return e.parse=function(n){var r,i,s,o,a,u;return new e({type:new Ax.SignatureDefinitionTypeMeta({type:rP.SignatureDefinitionBaseType.Function}),isProtected:(r=n.isProtected)!==null&&r!==void 0?r:!1,description:(i=n.description)!==null&&i!==void 0?i:null,example:(s=n.example)!==null&&s!==void 0?s:null,arguments:(a=(o=n.arguments)===null||o===void 0?void 0:o.map(oP.SignatureDefinitionFunctionArg.parse))!==null&&a!==void 0?a:[],returns:n.returns.map(Ax.SignatureDefinitionTypeMeta.parse),variations:n.variations,returnVariations:(u=n.returnVariations)!==null&&u!==void 0?u:null})},e.prototype.getArguments=function(){var n=this;return this._argList.map(function(r){return n._argRefs.get(r)})},e.prototype.getArgument=function(n){var r;return(r=this._argRefs.get(n))!==null&&r!==void 0?r:null},e.prototype.getReturns=function(){return nP([],tP(this._returns.values()),!1)},e.prototype.addReturnVariation=function(n){return this._returnVariations==null&&(this._returnVariations=[]),this._returnVariations.push(n),this},e.prototype.getReturnVariations=function(){return this._returnVariations==null&&(this._returnVariations=[]),iP.VariationRegistry.resolve(this._returnVariations)},e.prototype.toJSON=function(){return ml(ml({},t.prototype.toJSON.call(this)),{arguments:this.getArguments().map(function(n){return n.toJSON()}),returns:this.getReturns().map(function(n){return n.toJSON()})})},e.prototype.withDescription=function(n){var r,i;return new e({type:this._type,isProtected:this._isProtected,arguments:this.getArguments(),returns:this.getReturns(),description:(r=n?.description)!==null&&r!==void 0?r:this._description,example:(i=n?.example)!==null&&i!==void 0?i:this._example,variations:this._variations,returnVariations:this._returnVariations})},e.prototype.copy=function(){return new e({type:this._type.copy(),isProtected:this._isProtected,arguments:this.getArguments().map(function(n){return n.copy()}),returns:this.getReturns().map(function(n){return n.copy()}),description:this._description,example:this._example,variations:this._variations,returnVariations:this._returnVariations})},e}(sP.SignatureDefinition);Nn.SignatureDefinitionFunction=aP});var Cx=g((vB,Ox)=>{"use strict";Ox.exports=function(...t){try{return JSON.stringify(...t)}catch(e){return"[Cannot display object: "+e.message+"]"}}});var tm=g((Rx,Px)=>{"use strict";var uP=Cx();Px.exports=class extends Error{constructor(t){let e=t.filter(n=>n!=="").map(n=>typeof n=="string"?n:n instanceof Error?n.message:uP(n));super(e.join(" ")||"Unknown error"),typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,Rx.assert)}}});var Ie=g((TB,Dx)=>{"use strict";var cP=tm();Dx.exports=function(t,...e){if(!t)throw e.length===1&&e[0]instanceof Error?e[0]:new cP(e)}});var Xi=g((SB,Mx)=>{"use strict";var nm=Ie(),Ix={};Mx.exports=function(t,e,n){if(e===!1||e===null||e===void 0)return t;n=n||{},typeof n=="string"&&(n={separator:n});let r=Array.isArray(e);nm(!r||!n.separator,"Separator option is not valid for array-based chain");let i=r?e:e.split(n.separator||"."),s=t;for(let o=0;o<i.length;++o){let a=i[o],u=n.iterables&&Ix.iterables(s);if(Array.isArray(s)||u==="set"){let c=Number(a);Number.isInteger(c)&&(a=c<0?s.length+c:c)}if(!s||typeof s=="function"&&n.functions===!1||!u&&s[a]===void 0){nm(!n.strict||o+1===i.length,"Missing segment",a,"in reach path ",e),nm(typeof s=="object"||n.functions===!0||typeof s!="function","Invalid segment",a,"in reach path ",e),s=n.default;break}u?u==="set"?s=[...s][a]:s=s.get(a):s=s[a]}return s};Ix.iterables=function(t){if(t instanceof Set)return"set";if(t instanceof Map)return"map"}});var rm=g((tn,Nx)=>{"use strict";var Lx={};tn=Nx.exports={array:Array.prototype,buffer:Buffer&&Buffer.prototype,date:Date.prototype,error:Error.prototype,generic:Object.prototype,map:Map.prototype,promise:Promise.prototype,regex:RegExp.prototype,set:Set.prototype,weakMap:WeakMap.prototype,weakSet:WeakSet.prototype};Lx.typeMap=new Map([["[object Error]",tn.error],["[object Map]",tn.map],["[object Promise]",tn.promise],["[object Set]",tn.set],["[object WeakMap]",tn.weakMap],["[object WeakSet]",tn.weakSet]]);tn.getInternalProto=function(t){if(Array.isArray(t))return tn.array;if(Buffer&&t instanceof Buffer)return tn.buffer;if(t instanceof Date)return tn.date;if(t instanceof RegExp)return tn.regex;if(t instanceof Error)return tn.error;let e=Object.prototype.toString.call(t);return Lx.typeMap.get(e)||tn.generic}});var im=g(qx=>{"use strict";qx.keys=function(t,e={}){return e.symbols!==!1?Reflect.ownKeys(t):Object.getOwnPropertyNames(t)}});var nn=g((xB,jx)=>{"use strict";var lP=Xi(),kn=rm(),dP=im(),jr={needsProtoHack:new Set([kn.set,kn.map,kn.weakSet,kn.weakMap])};jx.exports=jr.clone=function(t,e={},n=null){if(typeof t!="object"||t===null)return t;let r=jr.clone,i=n;if(e.shallow){if(e.shallow!==!0)return jr.cloneWithShallow(t,e);r=u=>u}else if(i){let u=i.get(t);if(u)return u}else i=new Map;let s=kn.getInternalProto(t);if(s===kn.buffer)return Buffer&&Buffer.from(t);if(s===kn.date)return new Date(t.getTime());if(s===kn.regex)return new RegExp(t);let o=jr.base(t,s,e);if(o===t)return t;if(i&&i.set(t,o),s===kn.set)for(let u of t)o.add(r(u,e,i));else if(s===kn.map)for(let[u,c]of t)o.set(u,r(c,e,i));let a=dP.keys(t,e);for(let u of a){if(u==="__proto__")continue;if(s===kn.array&&u==="length"){o.length=t.length;continue}let c=Object.getOwnPropertyDescriptor(t,u);c?c.get||c.set?Object.defineProperty(o,u,c):c.enumerable?o[u]=r(t[u],e,i):Object.defineProperty(o,u,{enumerable:!1,writable:!0,configurable:!0,value:r(t[u],e,i)}):Object.defineProperty(o,u,{enumerable:!0,writable:!0,configurable:!0,value:r(t[u],e,i)})}return o};jr.cloneWithShallow=function(t,e){let n=e.shallow;e=Object.assign({},e),e.shallow=!1;let r=new Map;for(let i of n){let s=lP(t,i);(typeof s=="object"||typeof s=="function")&&r.set(s,s)}return jr.clone(t,e,r)};jr.base=function(t,e,n){if(n.prototype===!1)return jr.needsProtoHack.has(e)?new e.constructor:e===kn.array?[]:{};let r=Object.getPrototypeOf(t);if(r&&r.isImmutable)return t;if(e===kn.array){let i=[];return r!==e&&Object.setPrototypeOf(i,r),i}if(jr.needsProtoHack.has(e)){let i=new r.constructor;return r!==e&&Object.setPrototypeOf(i,r),i}return Object.create(r)}});var Fx=g((wB,fP)=>{fP.exports={name:"joi",description:"Object schema validation",version:"17.13.3",repository:"git://github.com/hapijs/joi",main:"lib/index.js",types:"lib/index.d.ts",browser:"dist/joi-browser.min.js",files:["lib/**/*","dist/*"],keywords:["schema","validation"],dependencies:{"@hapi/hoek":"^9.3.0","@hapi/topo":"^5.1.0","@sideway/address":"^4.1.5","@sideway/formula":"^3.0.1","@sideway/pinpoint":"^2.0.0"},devDependencies:{"@hapi/bourne":"2.x.x","@hapi/code":"8.x.x","@hapi/joi-legacy-test":"npm:@hapi/joi@15.x.x","@hapi/lab":"^25.1.3","@types/node":"^14.18.63",typescript:"4.3.x"},scripts:{prepublishOnly:"cd browser && npm install && npm run build",test:"lab -t 100 -a @hapi/code -L -Y","test-cov-html":"lab -r html -o coverage.html -a @hapi/code"},license:"BSD-3-Clause"}});var yl=g(va=>{"use strict";var O=bl(),me={};me.wrap=O.string().min(1).max(2).allow(!1);va.preferences=O.object({allowUnknown:O.boolean(),abortEarly:O.boolean(),artifacts:O.boolean(),cache:O.boolean(),context:O.object(),convert:O.boolean(),dateFormat:O.valid("date","iso","string","time","utc"),debug:O.boolean(),errors:{escapeHtml:O.boolean(),label:O.valid("path","key",!1),language:[O.string(),O.object().ref()],render:O.boolean(),stack:O.boolean(),wrap:{label:me.wrap,array:me.wrap,string:me.wrap}},externals:O.boolean(),messages:O.object(),noDefaults:O.boolean(),nonEnumerables:O.boolean(),presence:O.valid("required","optional","forbidden"),skipFunctions:O.boolean(),stripUnknown:O.object({arrays:O.boolean(),objects:O.boolean()}).or("arrays","objects").allow(!0,!1),warnings:O.boolean()}).strict();me.nameRx=/^[a-zA-Z0-9]\w*$/;me.rule=O.object({alias:O.array().items(O.string().pattern(me.nameRx)).single(),args:O.array().items(O.string(),O.object({name:O.string().pattern(me.nameRx).required(),ref:O.boolean(),assert:O.alternatives([O.function(),O.object().schema()]).conditional("ref",{is:!0,then:O.required()}),normalize:O.function(),message:O.string().when("assert",{is:O.function(),then:O.required()})})),convert:O.boolean(),manifest:O.boolean(),method:O.function().allow(!1),multi:O.boolean(),validate:O.function()});va.extension=O.object({type:O.alternatives([O.string(),O.object().regex()]).required(),args:O.function(),cast:O.object().pattern(me.nameRx,O.object({from:O.function().maxArity(1).required(),to:O.function().minArity(1).maxArity(2).required()})),base:O.object().schema().when("type",{is:O.object().regex(),then:O.forbidden()}),coerce:[O.function().maxArity(3),O.object({method:O.function().maxArity(3).required(),from:O.array().items(O.string()).single()})],flags:O.object().pattern(me.nameRx,O.object({setter:O.string(),default:O.any()})),manifest:{build:O.function().arity(2)},messages:[O.object(),O.string()],modifiers:O.object().pattern(me.nameRx,O.function().minArity(1).maxArity(2)),overrides:O.object().pattern(me.nameRx,O.function()),prepare:O.function().maxArity(3),rebuild:O.function().arity(1),rules:O.object().pattern(me.nameRx,me.rule),terms:O.object().pattern(me.nameRx,O.object({init:O.array().allow(null).required(),manifest:O.object().pattern(/.+/,[O.valid("schema","single"),O.object({mapped:O.object({from:O.string().required(),to:O.string().required()}).required()})])})),validate:O.function().maxArity(3)}).strict();va.extensions=O.array().items(O.object(),O.function().arity(1)).strict();me.desc={buffer:O.object({buffer:O.string()}),func:O.object({function:O.function().required(),options:{literal:!0}}),override:O.object({override:!0}),ref:O.object({ref:O.object({type:O.valid("value","global","local"),path:O.array().required(),separator:O.string().length(1).allow(!1),ancestor:O.number().min(0).integer().allow("root"),map:O.array().items(O.array().length(2)).min(1),adjust:O.function(),iterables:O.boolean(),in:O.boolean(),render:O.boolean()}).required()}),regex:O.object({regex:O.string().min(3)}),special:O.object({special:O.valid("deep").required()}),template:O.object({template:O.string().required(),options:O.object()}),value:O.object({value:O.alternatives([O.object(),O.array()]).required()})};me.desc.entity=O.alternatives([O.array().items(O.link("...")),O.boolean(),O.function(),O.number(),O.string(),me.desc.buffer,me.desc.func,me.desc.ref,me.desc.regex,me.desc.special,me.desc.template,me.desc.value,O.link("/")]);me.desc.values=O.array().items(null,O.boolean(),O.function(),O.number().allow(1/0,-1/0),O.string().allow(""),O.symbol(),me.desc.buffer,me.desc.func,me.desc.override,me.desc.ref,me.desc.regex,me.desc.template,me.desc.value);me.desc.messages=O.object().pattern(/.+/,[O.string(),me.desc.template,O.object().pattern(/.+/,[O.string(),me.desc.template])]);va.description=O.object({type:O.string().required(),flags:O.object({cast:O.string(),default:O.any(),description:O.string(),empty:O.link("/"),failover:me.desc.entity,id:O.string(),label:O.string(),only:!0,presence:["optional","required","forbidden"],result:["raw","strip"],strip:O.boolean(),unit:O.string()}).unknown(),preferences:{allowUnknown:O.boolean(),abortEarly:O.boolean(),artifacts:O.boolean(),cache:O.boolean(),convert:O.boolean(),dateFormat:["date","iso","string","time","utc"],errors:{escapeHtml:O.boolean(),label:["path","key"],language:[O.string(),me.desc.ref],wrap:{label:me.wrap,array:me.wrap}},externals:O.boolean(),messages:me.desc.messages,noDefaults:O.boolean(),nonEnumerables:O.boolean(),presence:["required","optional","forbidden"],skipFunctions:O.boolean(),stripUnknown:O.object({arrays:O.boolean(),objects:O.boolean()}).or("arrays","objects").allow(!0,!1),warnings:O.boolean()},allow:me.desc.values,invalid:me.desc.values,rules:O.array().min(1).items({name:O.string().required(),args:O.object().min(1),keep:O.boolean(),message:[O.string(),me.desc.messages],warn:O.boolean()}),keys:O.object().pattern(/.*/,O.link("/")),link:me.desc.ref}).pattern(/^[a-z]\w*$/,O.any())});var Bx=g((AB,$x)=>{"use strict";var yi={};$x.exports=function(t){if(!t)return"";let e="";for(let n=0;n<t.length;++n){let r=t.charCodeAt(n);yi.isSafe(r)?e+=t[n]:e+=yi.escapeHtmlChar(r)}return e};yi.escapeHtmlChar=function(t){let e=yi.namedHtml.get(t);return e||(t>=256?"&#"+t+";":`&#x${t.toString(16).padStart(2,"0")};`)};yi.isSafe=function(t){return yi.safeCharCodes.has(t)};yi.namedHtml=new Map([[38,"&amp;"],[60,"&lt;"],[62,"&gt;"],[34,"&quot;"],[160,"&nbsp;"],[162,"&cent;"],[163,"&pound;"],[164,"&curren;"],[169,"&copy;"],[174,"&reg;"]]);yi.safeCharCodes=function(){let t=new Set;for(let e=32;e<123;++e)(e>=97||e>=65&&e<=90||e>=48&&e<=57||e===32||e===46||e===44||e===45||e===58||e===95)&&t.add(e);return t}()});var Ux=g(_a=>{"use strict";var Ce={operators:["!","^","*","/","%","+","-","<","<=",">",">=","==","!=","&&","||","??"],operatorCharacters:["!","^","*","/","%","+","-","<","=",">","&","|","?"],operatorsOrder:[["^"],["*","/","%"],["+","-"],["<","<=",">",">="],["==","!="],["&&"],["||","??"]],operatorsPrefix:["!","n"],literals:{'"':'"',"`":"`","'":"'","[":"]"},numberRx:/^(?:[0-9]*(\.[0-9]*)?){1}$/,tokenRx:/^[\w\$\#\.\@\:\{\}]+$/,symbol:Symbol("formula"),settings:Symbol("settings")};_a.Parser=class{constructor(t,e={}){if(!e[Ce.settings]&&e.constants)for(let n in e.constants){let r=e.constants[n];if(r!==null&&!["boolean","number","string"].includes(typeof r))throw new Error(`Formula constant ${n} contains invalid ${typeof r} value type`)}this.settings=e[Ce.settings]?e:Object.assign({[Ce.settings]:!0,constants:{},functions:{}},e),this.single=null,this._parts=null,this._parse(t)}_parse(t){let e=[],n="",r=0,i=!1,s=a=>{if(r)throw new Error("Formula missing closing parenthesis");let u=e.length?e[e.length-1]:null;if(!(!i&&!n&&!a)){if(u&&u.type==="reference"&&a===")"){u.type="function",u.value=this._subFormula(n,u.value),n="";return}if(a===")"){let c=new _a.Parser(n,this.settings);e.push({type:"segment",value:c})}else if(i){if(i==="]"){e.push({type:"reference",value:n}),n="";return}e.push({type:"literal",value:n})}else if(Ce.operatorCharacters.includes(n))u&&u.type==="operator"&&Ce.operators.includes(u.value+n)?u.value+=n:e.push({type:"operator",value:n});else if(n.match(Ce.numberRx))e.push({type:"constant",value:parseFloat(n)});else if(this.settings.constants[n]!==void 0)e.push({type:"constant",value:this.settings.constants[n]});else{if(!n.match(Ce.tokenRx))throw new Error(`Formula contains invalid token: ${n}`);e.push({type:"reference",value:n})}n=""}};for(let a of t)i?a===i?(s(),i=!1):n+=a:r?a==="("?(n+=a,++r):a===")"?(--r,r?n+=a:s(a)):n+=a:a in Ce.literals?i=Ce.literals[a]:a==="("?(s(),++r):Ce.operatorCharacters.includes(a)?(s(),n=a,s()):a!==" "?n+=a:s();s(),e=e.map((a,u)=>a.type!=="operator"||a.value!=="-"||u&&e[u-1].type!=="operator"?a:{type:"operator",value:"n"});let o=!1;for(let a of e){if(a.type==="operator"){if(Ce.operatorsPrefix.includes(a.value))continue;if(!o)throw new Error("Formula contains an operator in invalid position");if(!Ce.operators.includes(a.value))throw new Error(`Formula contains an unknown operator ${a.value}`)}else if(o)throw new Error("Formula missing expected operator");o=!o}if(!o)throw new Error("Formula contains invalid trailing operator");e.length===1&&["reference","literal","constant"].includes(e[0].type)&&(this.single={type:e[0].type==="reference"?"reference":"value",value:e[0].value}),this._parts=e.map(a=>{if(a.type==="operator")return Ce.operatorsPrefix.includes(a.value)?a:a.value;if(a.type!=="reference")return a.value;if(this.settings.tokenRx&&!this.settings.tokenRx.test(a.value))throw new Error(`Formula contains invalid reference ${a.value}`);return this.settings.reference?this.settings.reference(a.value):Ce.reference(a.value)})}_subFormula(t,e){let n=this.settings.functions[e];if(typeof n!="function")throw new Error(`Formula contains unknown function ${e}`);let r=[];if(t){let i="",s=0,o=!1,a=()=>{if(!i)throw new Error(`Formula contains function ${e} with invalid arguments ${t}`);r.push(i),i=""};for(let u=0;u<t.length;++u){let c=t[u];o?(i+=c,c===o&&(o=!1)):c in Ce.literals&&!s?(i+=c,o=Ce.literals[c]):c===","&&!s?a():(i+=c,c==="("?++s:c===")"&&--s)}a()}return r=r.map(i=>new _a.Parser(i,this.settings)),function(i){let s=[];for(let o of r)s.push(o.evaluate(i));return n.call(i,...s)}}evaluate(t){let e=this._parts.slice();for(let n=e.length-2;n>=0;--n){let r=e[n];if(r&&r.type==="operator"){let i=e[n+1];e.splice(n+1,1);let s=Ce.evaluate(i,t);e[n]=Ce.single(r.value,s)}}return Ce.operatorsOrder.forEach(n=>{for(let r=1;r<e.length-1;)if(n.includes(e[r])){let i=e[r],s=Ce.evaluate(e[r-1],t),o=Ce.evaluate(e[r+1],t);e.splice(r,2);let a=Ce.calculate(i,s,o);e[r-1]=a===0?0:a}else r+=2}),Ce.evaluate(e[0],t)}};_a.Parser.prototype[Ce.symbol]=!0;Ce.reference=function(t){return function(e){return e&&e[t]!==void 0?e[t]:null}};Ce.evaluate=function(t,e){return t===null?null:typeof t=="function"?t(e):t[Ce.symbol]?t.evaluate(e):t};Ce.single=function(t,e){if(t==="!")return!e;let n=-e;return n===0?0:n};Ce.calculate=function(t,e,n){if(t==="??")return Ce.exists(e)?e:n;if(typeof e=="string"||typeof n=="string"){if(t==="+")return e=Ce.exists(e)?e:"",n=Ce.exists(n)?n:"",e+n}else switch(t){case"^":return Math.pow(e,n);case"*":return e*n;case"/":return e/n;case"%":return e%n;case"+":return e+n;case"-":return e-n}switch(t){case"<":return e<n;case"<=":return e<=n;case">":return e>n;case">=":return e>=n;case"==":return e===n;case"!=":return e!==n;case"&&":return e&&n;case"||":return e||n}return null};Ce.exists=function(t){return t!=null}});var Wx=g(Hx=>{"use strict";var pP=nn(),hP=Qe(),Yi={annotations:Symbol("annotations")};Hx.error=function(t){if(!this._original||typeof this._original!="object")return this.details[0].message;let e=t?"":"\x1B[31m",n=t?"":"\x1B[41m",r=t?"":"\x1B[0m",i=pP(this._original);for(let a=this.details.length-1;a>=0;--a){let u=a+1,c=this.details[a],l=c.path,d=i;for(let p=0;;++p){let b=l[p];if(hP.isSchema(d)&&(d=d.clone()),p+1<l.length&&typeof d[b]!="string")d=d[b];else{let _=d[Yi.annotations]||{errors:{},missing:{}};d[Yi.annotations]=_;let E=b||c.context.key;d[b]!==void 0?(_.errors[E]=_.errors[E]||[],_.errors[E].push(u)):_.missing[E]=u;break}}}let s={key:/_\$key\$_([, \d]+)_\$end\$_"/g,missing:/"_\$miss\$_([^|]+)\|(\d+)_\$end\$_": "__missing__"/g,arrayIndex:/\s*"_\$idx\$_([, \d]+)_\$end\$_",?\n(.*)/g,specials:/"\[(NaN|Symbol.*|-?Infinity|function.*|\(.*)]"/g},o=Yi.safeStringify(i,2).replace(s.key,(a,u)=>`" ${e}[${u}]${r}`).replace(s.missing,(a,u,c)=>`${n}"${u}"${r}${e} [${c}]: -- missing --${r}`).replace(s.arrayIndex,(a,u,c)=>`
96
+ return false;`);return Object.defineProperty(o,"name",{value:`selector_group_${t}`,writable:!1}),o.selectors=e,o}ue.createSelectorGroup=hr;function ER(t){return t.selectors}ue.getSelectorsFromGroup=ER;var gr;(function(t){t.BlockEndOfLine="BlockEndOfLine",t.AssignmentEndOfExpr="AssignmentEndOfExpr",t.AssignmentShorthand="AssignmentShorthand",t.AssignmentCommandArgs="AssignmentCommandArgs",t.ReturnStatementEnd="ReturnStatementEnd",t.FunctionDeclarationArgEnd="FunctionDeclarationArgEnd",t.ComparisonOperators="ComparisonOperators",t.MultiDivOperators="MultiDivOperators",t.CallArgsEnd="CallArgsEnd"})(gr=ue.SelectorGroupType||(ue.SelectorGroupType={}));ue.SelectorGroups={BlockEndOfLine:hr(gr.AssignmentEndOfExpr,[ue.Selectors.EndOfLine,ue.Selectors.Comment]),AssignmentEndOfExpr:hr(gr.AssignmentEndOfExpr,[ue.Selectors.EndOfFile,ue.Selectors.EndOfLine,ue.Selectors.Else,ue.Selectors.Comment]),AssignmentShorthand:hr(gr.AssignmentShorthand,[ue.Selectors.AddShorthand,ue.Selectors.SubtractShorthand,ue.Selectors.MultiplyShorthand,ue.Selectors.DivideShorthand,ue.Selectors.PowerShorthand,ue.Selectors.ModuloShorthand]),AssignmentCommandArgs:hr(gr.AssignmentCommandArgs,[ue.Selectors.ArgumentSeperator,ue.Selectors.EndOfLine,ue.Selectors.EndOfFile]),ReturnStatementEnd:hr(gr.ReturnStatementEnd,[ue.Selectors.EndOfLine,ue.Selectors.Else,ue.Selectors.Comment]),FunctionDeclarationArgEnd:hr(gr.FunctionDeclarationArgEnd,[ue.Selectors.RParenthesis,ue.Selectors.EndOfFile,ue.Selectors.EndOfLine]),ComparisonOperators:hr(gr.ComparisonOperators,[ue.Selectors.Equal,ue.Selectors.NotEqual,ue.Selectors.Greater,ue.Selectors.GreaterEqual,ue.Selectors.Lesser,ue.Selectors.LessEqual]),MultiDivOperators:hr(gr.MultiDivOperators,[ue.Selectors.Times,ue.Selectors.Divide,ue.Selectors.Mod]),CallArgsEnd:hr(gr.CallArgsEnd,[ue.Selectors.ArgumentSeperator,ue.Selectors.RParenthesis])}});var Gg=g(fl=>{"use strict";Object.defineProperty(fl,"__esModule",{value:!0});fl.Stack=void 0;var Wg=class{constructor(){this._items=[],this._last=null,this._default=null}setDefault(e){this._default=e}push(e){return this._items.push(this._last=e)}pop(){switch(this._items.length){case 0:return this._default;case 1:return this._last=null,this._items.pop()}let e=this._items.pop();return this._last=this._items[this._items.length-1],e}peek(){return this._last||this._default}};fl.Stack=Wg});var Jg=g(Je=>{"use strict";Object.defineProperty(Je,"__esModule",{value:!0});Je.PendingWhile=Je.isPendingWhile=Je.PendingIf=Je.isPendingIf=Je.PendingFunction=Je.isPendingFunction=Je.PendingFor=Je.isPendingFor=Je.PendingChunk=Je.isPendingChunk=Je.PendingBlockType=void 0;var tr;(function(t){t[t.Chunk=0]="Chunk",t[t.For=1]="For",t[t.Function=2]="Function",t[t.If=3]="If",t[t.While=4]="While"})(tr=Je.PendingBlockType||(Je.PendingBlockType={}));var Gi=class{constructor(e,n){this.block=e,this.body=[],this.type=n,this.onComplete=null}complete(e){var n;(n=this.onComplete)===null||n===void 0||n.call(this,this)}};function AR(t){return t.type===tr.Chunk}Je.isPendingChunk=AR;var Kg=class extends Gi{constructor(e){super(e,tr.Chunk)}complete(e){this.block.body=this.body,this.block.end=e.end,this.block.range=[this.block.range[0],e.range[1]],super.complete(e)}};Je.PendingChunk=Kg;function OR(t){return t.type===tr.For}Je.isPendingFor=OR;var Vg=class extends Gi{constructor(e){super(e,tr.For)}complete(e){this.block.body=this.body,this.block.end=e.end,this.block.range=[this.block.range[0],e.range[1]],super.complete(e)}};Je.PendingFor=Vg;function CR(t){return t.type===tr.Function}Je.isPendingFunction=CR;var zg=class extends Gi{constructor(e){super(e,tr.Function)}complete(e){this.block.body=this.body,this.block.end=e.end,this.block.range=[this.block.range[0],e.range[1]],super.complete(e)}};Je.PendingFunction=zg;function RR(t){return t.type===tr.If}Je.isPendingIf=RR;var Xg=class extends Gi{constructor(e,n){super(e,tr.If),this.currentClause=n}next(e){this.currentClause.body=this.body,this.currentClause.end=e.end,this.currentClause.range=[this.currentClause.range[0],e.range[1]],this.block.clauses.push(this.currentClause),super.complete(e),this.body=[]}complete(e){this.body.length>0&&this.next(e),this.block.end=e.end,this.block.range=[this.block.range[0],e.range[1]],super.complete(e)}};Je.PendingIf=Xg;function PR(t){return t.type===tr.While}Je.isPendingWhile=PR;var Yg=class extends Gi{constructor(e){super(e,tr.While)}complete(e){this.block.body=this.body,this.block.end=e.end,this.block.range=[this.block.range[0],e.range[1]],super.complete(e)}};Je.PendingWhile=Yg});var xx=g(ma=>{"use strict";var kx=ma&&ma.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ma,"__esModule",{value:!0});var DR=kx(Nh()),gi=li(),mr=jg(),IR=kx(Bg()),MR=Uc(),$t=Gs(),qr=Vs(),Zt=ca(),J=Hg(),LR=Gg(),yr=Jg(),Qg=class{constructor(e,n={}){let r=this;r.content=e,r.backpatches=new LR.Stack,r.statementErrors=[],r.lexer=n.lexer||new DR.default(e,{unsafe:n.unsafe,tabWidth:n.tabWidth}),r.token=null,r.previousToken=null,r.lines={},r.scopes=[],r.currentScope=null,r.currentAssignment=null,r.outerScopes=[],r.literals=[],r.validator=n.validator||new IR.default,r.astProvider=n.astProvider||new mr.ASTProvider,r.unsafe=n.unsafe||!1,r.errors=[]}next(){this.previousToken=this.token,this.token=this.lexer.next()}isType(e){return this.token!==null&&e===this.token.type}consume(e){return e(this.token)?(this.next(),!0):!1}consumeMany(e){return e(this.token)?(this.next(),!0):!1}requireType(e,n){let r=this.token;return this.token.type!==e?(this.raise(`got ${r} where ${e} is required`,new Zt.Range(n||r.start,r.end)),null):(this.next(),r)}requireToken(e,n){let r=this.token;return e(r)?(this.next(),r):(this.raise(`got ${r} where "${(0,J.getSelectorValue)(e)}" is required`,new Zt.Range(n||r.start,r.end)),null)}requireTokenOfAny(e,n){let r=this.token;return e(r)?(this.next(),r):(this.raise(`got ${r} where any of ${(0,J.getSelectorsFromGroup)(e).map(i=>`"${(0,J.getSelectorValue)(i)}"`).join(", ")} is required`,new Zt.Range(n||r.start,r.end)),null)}addItemToLines(e){let n=this.lines,r=e.end.line;for(let i=e.start.line;i<=r;i++){let s=n[i];s?s.push(e):n[i]=[e]}}skipNewlines(){let e=this,n=0;for(;;){if(J.Selectors.Comment(e.token)){let r=e.astProvider.comment({value:e.token.value,start:e.token.start,end:e.token.end,range:e.token.range,scope:e.currentScope});e.addItemToLines(r),e.backpatches.peek().body.push(r)}else if(J.Selectors.EndOfLine(e.token))n++;else break;e.next()}return n}pushScope(e){let n=this;n.currentScope!==null&&(n.scopes.push(e),n.outerScopes.push(n.currentScope)),n.currentScope=e}popScope(){let e=this;e.currentScope=e.outerScopes.pop()}tryToRecover(){let e=this,n=e.statementErrors[0];if(e.errors.push(n),!e.unsafe)throw n;for(e.lexer.recoverFromSnapshot(),e.next();e.token.type!==gi.TokenType.EOL&&e.token.type!==gi.TokenType.EOF;e.next());}finishRemaingScopes(){let e=this,n=e.backpatches.pop();for(;!(0,yr.isPendingChunk)(n);){let r=e.raise(`found open block ${n.block.type}`,new Zt.Range(n.block.start,n.block.start));if(n.complete(e.previousToken),e.errors.push(r),!e.unsafe)throw r;n=e.backpatches.pop()}}parseChunk(){let e=this;e.next();let n=e.token.start,r=e.astProvider.chunk({start:n,end:null,range:[e.token.range[0],null]}),i=new yr.PendingChunk(r);for(e.backpatches.setDefault(i),e.pushScope(r);!J.Selectors.EndOfFile(e.token)&&(e.skipNewlines(),!J.Selectors.EndOfFile(e.token));)e.lexer.recordSnapshot(),e.statementErrors=[],e.parseStatement(),e.statementErrors.length>0&&e.tryToRecover();return e.finishRemaingScopes(),e.popScope(),i.complete(e.token),r.literals=e.literals,r.scopes=e.scopes,r.lines=e.lines,r}parseStatement(){let e=this;if(gi.TokenType.Keyword===e.token.type&&$t.Keyword.Not!==e.token.value){e.parseKeyword();return}let n=e.backpatches.peek(),r=e.parseAssignment();r.end!==null&&e.addItemToLines(r),n.body.push(r)}parseKeyword(){let e=this;switch(e.token.value){case $t.Keyword.Return:{let r=e.backpatches.peek();e.next();let i=e.parseReturnStatement();i.end!==null&&e.addItemToLines(i),r.body.push(i);return}case $t.Keyword.If:{e.next(),e.parseIfStatement();return}case $t.Keyword.ElseIf:{e.next(),e.nextIfClause(mr.ASTType.ElseifClause);return}case $t.Keyword.Else:{e.next(),e.nextIfClause(mr.ASTType.ElseClause);return}case $t.Keyword.While:{e.next(),e.parseWhileStatement();return}case $t.Keyword.For:{e.next(),e.parseForStatement();return}case $t.Keyword.EndFunction:{e.next(),e.finalizeFunction();return}case $t.Keyword.EndFor:{e.next(),e.finalizeForStatement();return}case $t.Keyword.EndWhile:{e.next(),e.finalizeWhileStatement();return}case $t.Keyword.EndIf:{e.next(),e.nextIfClause(null);return}case $t.Keyword.Continue:{let r=e.backpatches.peek();e.next();let i=e.astProvider.continueStatement({start:e.previousToken.start,end:e.previousToken.end,range:e.previousToken.range,scope:e.currentScope});e.addItemToLines(i),r.body.push(i);return}case $t.Keyword.Break:{let r=e.backpatches.peek();e.next();let i=e.astProvider.breakStatement({start:e.previousToken.start,end:e.previousToken.end,range:e.previousToken.range,scope:e.currentScope});e.addItemToLines(i),r.body.push(i);return}}e.raise(`unexpected keyword ${e.token} at start of line`,new Zt.Range(e.token.start,e.token.end))}parseShortcutStatement(){let e=this;if(gi.TokenType.Keyword===e.token.type&&$t.Keyword.Not!==e.token.value)switch(e.token.value){case $t.Keyword.Return:return e.next(),e.parseReturnStatement();case $t.Keyword.Continue:return e.next(),e.astProvider.continueStatement({start:e.previousToken.start,end:e.previousToken.end,range:e.previousToken.range,scope:e.currentScope});case $t.Keyword.Break:return e.next(),e.astProvider.breakStatement({start:e.previousToken.start,end:e.previousToken.end,range:e.previousToken.range,scope:e.currentScope});default:return e.raise(`unexpected keyword ${e.token} in shorthand statement`,new Zt.Range(e.token.start,e.token.end)),e.parseInvalidCode()}return e.parseAssignment()}parseAssignment(){let e=this,n=e.currentScope,r=e.token,i=e.parseExpr(null,!0,!0);if(J.SelectorGroups.AssignmentEndOfExpr(e.token))return i;if(J.Selectors.Assign(e.token)){e.next();let o=e.astProvider.assignmentStatement({variable:i,init:null,start:r.start,range:[r.range[0],null],end:null,scope:n}),a=e.currentAssignment;if(e.currentAssignment=o,o.init=e.parseExpr(o),o.end=e.previousToken.end,o.range[1]=e.previousToken.range[1],o.init.type===mr.ASTType.FunctionDeclaration){let u=e.backpatches.peek();u.onComplete=c=>{o.end=c.block.end,o.range[1]=c.block.range[1]}}return e.currentAssignment=a,n.assignments.push(o),o}else if(J.SelectorGroups.AssignmentShorthand(e.token)){let o=e.token;e.next();let a=e.astProvider.assignmentStatement({variable:i,init:null,start:r.start,range:[r.range[0],null],end:null,scope:n}),u=e.currentAssignment;e.currentAssignment=a;let c=e.token,l=o.value.charAt(0),d=e.parseExpr(a),p=e.astProvider.parenthesisExpression({start:d.start,end:d.end,range:d.range,expression:d});return a.init=e.astProvider.binaryExpression({operator:l,left:i.clone(),right:p,start:c.start,end:e.previousToken.end,range:[c.range[0],e.previousToken.range[1]],scope:n}),a.end=e.previousToken.end,a.range[1]=e.previousToken.range[1],e.currentAssignment=u,n.assignments.push(a),a}let s=[];for(;!J.Selectors.EndOfFile(e.token);){let o=e.parseExpr(null);if(s.push(o),J.SelectorGroups.BlockEndOfLine(e.token)||J.Selectors.Else(e.token))break;if(J.Selectors.ArgumentSeperator(e.token)){e.next(),e.skipNewlines();continue}let a=e.requireTokenOfAny(J.SelectorGroups.AssignmentCommandArgs,r.start);if(J.Selectors.EndOfLine(a)||J.Selectors.EndOfFile(a))break}return s.length===0?e.astProvider.callStatement({expression:i,start:r.start,end:e.previousToken.end,range:[r.range[0],e.previousToken.range[1]],scope:n}):e.astProvider.callStatement({expression:e.astProvider.callExpression({base:i,arguments:s,start:r.start,end:e.previousToken.end,range:[r.range[0],e.previousToken.range[1]],scope:n}),start:r.start,end:e.previousToken.end,range:[r.range[0],e.previousToken.range[1]],scope:n})}parseReturnStatement(){let e=this,n=e.currentScope,r=e.previousToken,i=null,s=e.astProvider.returnStatement({argument:null,start:r.start,end:null,range:[r.range[0],null],scope:n});if(J.SelectorGroups.ReturnStatementEnd(e.token))s.end=e.previousToken.end,s.range[1]=e.previousToken.range[1];else{if(i=e.parseExpr(s),s.end=e.previousToken.end,s.range[1]=e.previousToken.range[1],i.type===mr.ASTType.FunctionDeclaration){let o=e.backpatches.peek();o.onComplete=a=>{s.end=a.block.end,s.range[1]=a.block.range[1]}}s.argument=i}return n.returns.push(s),s}parseIfStatement(){let e=this,n=e.previousToken,r=e.parseExpr(null);if(e.addItemToLines(r),e.requireToken(J.Selectors.Then,n.start),!J.SelectorGroups.BlockEndOfLine(e.token)){e.parseIfShortcutStatement(r,n);return}let i=e.astProvider.ifStatement({clauses:[],start:n.start,end:null,range:[n.range[0],null],scope:e.currentScope}),s=e.astProvider.ifClause({condition:r,start:n.start,end:e.token.end,range:[n.range[0],e.token.range[1]],scope:e.currentScope}),o=new yr.PendingIf(i,s);e.backpatches.push(o)}nextIfClause(e){let n=this,r=n.backpatches.peek();if(!(0,yr.isPendingIf)(r)){n.raise("no matching open if block",new Zt.Range(n.token.start,n.token.end));return}switch(r.next(n.previousToken),e){case mr.ASTType.ElseifClause:{let i=n.token,s=n.parseExpr(null);n.requireToken(J.Selectors.Then,i.start),r.currentClause=n.astProvider.elseifClause({condition:s,start:i.start,end:null,range:[i.range[0],null],scope:n.currentScope});break}case mr.ASTType.ElseClause:{let i=n.token;r.currentClause=n.astProvider.elseClause({start:i.start,end:null,range:[i.range[0],null],scope:n.currentScope});break}}e===null&&(r.complete(n.previousToken),n.addItemToLines(r.block),n.backpatches.pop(),n.backpatches.peek().body.push(r.block))}parseIfShortcutStatement(e,n){let r=this,i=[],s=r.backpatches.peek(),o=r.astProvider.ifShortcutStatement({clauses:i,start:n.start,end:null,range:[n.range[0],null],scope:r.currentScope}),a=r.parseShortcutStatement();if(i.push(r.astProvider.ifShortcutClause({condition:e,body:[a],start:n.start,end:r.token.end,range:[n.range[0],r.token.range[1]],scope:r.currentScope})),J.Selectors.Else(r.token)){r.next();let u=r.token,c=r.parseShortcutStatement();i.push(r.astProvider.elseShortcutClause({body:[c],start:u.start,end:r.token.end,range:[u.range[0],r.token.range[1]],scope:r.currentScope}))}o.end=r.token.end,o.range[1]=r.token.range[1],r.addItemToLines(o),s.body.push(o)}parseWhileStatement(){let e=this,n=e.previousToken,r=e.parseExpr(null);if(!r){e.raise("while requires a condition",new Zt.Range(n.start,e.token.end));return}if(!J.SelectorGroups.BlockEndOfLine(e.token))return e.parseWhileShortcutStatement(r,n);let i=e.astProvider.whileStatement({condition:r,start:n.start,end:null,range:[n.range[0],null],scope:e.currentScope}),s=new yr.PendingWhile(i);e.backpatches.push(s),s.onComplete=o=>{e.addItemToLines(o.block),e.backpatches.pop(),e.backpatches.peek().body.push(o.block)}}finalizeWhileStatement(){let e=this,n=e.backpatches.peek();if(!(0,yr.isPendingWhile)(n)){e.raise("no matching open while block",new Zt.Range(e.token.start,e.token.end));return}n.complete(e.previousToken)}parseWhileShortcutStatement(e,n){let r=this,i=r.backpatches.peek(),s=r.parseShortcutStatement(),o=r.astProvider.whileStatement({condition:e,body:[s],start:n.start,end:r.previousToken.end,range:[n.range[0],r.previousToken.range[1]],scope:r.currentScope});r.addItemToLines(o),i.body.push(o)}parseForStatement(){let e=this,n=e.currentScope,r=e.previousToken,i=e.parseIdentifier(),s=e.astProvider.assignmentStatement({variable:i,init:e.astProvider.unknown({start:i.start,end:i.end,range:i.range,scope:n}),start:i.start,end:i.end,range:i.range,scope:n}),o=e.astProvider.assignmentStatement({variable:e.astProvider.identifier({name:`__${i.name}_idx`,start:i.start,end:i.end,range:i.range,scope:n}),init:e.astProvider.literal(gi.TokenType.NumericLiteral,{value:0,raw:"0",start:i.start,end:i.end,range:i.range,scope:n}),start:i.start,end:i.end,range:i.range,scope:n});n.assignments.push(s,o),e.requireToken(J.Selectors.In,r.start);let a=e.parseExpr(null);if(!a){e.raise("sequence expression expected for 'for' loop",new Zt.Range(r.start,e.token.end));return}if(!J.SelectorGroups.BlockEndOfLine(e.token))return e.parseForShortcutStatement(i,a,r);let u=e.astProvider.forGenericStatement({variable:i,iterator:a,start:r.start,end:e.previousToken.end,range:[r.range[0],e.previousToken.range[1]],scope:n}),c=new yr.PendingFor(u);e.backpatches.push(c)}finalizeForStatement(){let e=this,n=e.backpatches.peek();if(!(0,yr.isPendingFor)(n)){e.raise("no matching open for block",new Zt.Range(e.token.start,e.token.end));return}n.complete(e.previousToken),e.addItemToLines(n.block),e.backpatches.pop(),e.backpatches.peek().body.push(n.block)}parseForShortcutStatement(e,n,r){let i=this,s=i.backpatches.peek(),o=i.parseShortcutStatement(),a=i.astProvider.forGenericStatement({variable:e,iterator:n,body:[o],start:r.start,end:i.previousToken.end,range:[r.range[0],i.previousToken.range[1]],scope:i.currentScope});i.addItemToLines(a),s.body.push(a)}parseExpr(e,n=!1,r=!1){return this.parseFunctionDeclaration(e,n,r)}parseFunctionDeclaration(e,n=!1,r=!1){let i=this;if(!J.Selectors.Function(i.token))return i.parseOr(n,r);i.next();let s=i.previousToken,o=i.astProvider.functionStatement({start:s.start,end:null,range:[s.range[0],null],scope:i.currentScope,parent:i.outerScopes[i.outerScopes.length-1],assignment:i.currentAssignment}),a=[];if(i.pushScope(o),!J.SelectorGroups.BlockEndOfLine(i.token)){for(i.requireToken(J.Selectors.LParenthesis,s.start);!J.SelectorGroups.FunctionDeclarationArgEnd(i.token);){let c=i.parseIdentifier(),l=c;if(i.consume(J.Selectors.Assign)){let d=i.parseExpr(null);if(d instanceof mr.ASTLiteral){let p=i.astProvider.assignmentStatement({variable:c,init:d,start:l.start,end:i.previousToken.end,range:[l.range[0],i.previousToken.range[1]],scope:i.currentScope});i.currentScope.assignments.push(p),a.push(p)}else i.raise("parameter default value must be a literal value",new Zt.Range(l.start,i.token.end)),a.push(i.astProvider.invalidCodeExpression({start:l.start,end:i.previousToken.end,range:[l.range[0],i.previousToken.range[1]]}))}else{let d=i.astProvider.assignmentStatement({variable:c,init:i.astProvider.unknown({start:l.start,end:i.previousToken.end,range:[l.range[0],i.previousToken.range[1]],scope:i.currentScope}),start:l.start,end:i.previousToken.end,range:[l.range[0],i.previousToken.range[1]],scope:i.currentScope});i.currentScope.assignments.push(d),a.push(c)}if(J.Selectors.RParenthesis(i.token))break;if(i.requireToken(J.Selectors.ArgumentSeperator,s.start),J.Selectors.RParenthesis(i.token)){i.raise("expected argument instead received right parenthesis",new Zt.Range(i.previousToken.end,i.previousToken.end));break}}i.requireToken(J.Selectors.RParenthesis,s.start)}o.parameters=a;let u=new yr.PendingFunction(o);return i.backpatches.push(u),u.onComplete=c=>{e!==null?(e.end=c.block.end,e.range[1]=c.block.range[1],i.addItemToLines(e)):i.addItemToLines(c.block)},o}finalizeFunction(){let e=this,n=e.backpatches.peek();if(!(0,yr.isPendingFunction)(n)){e.raise("no matching open function block",new Zt.Range(e.token.start,e.token.end));return}e.popScope(),n.complete(e.previousToken),e.backpatches.pop()}parseOr(e=!1,n=!1){let r=this,i=r.token,o=r.parseAnd(e,n);for(;J.Selectors.Or(r.token);){r.next(),r.skipNewlines();let a=r.parseAnd();o=r.astProvider.logicalExpression({operator:qr.Operator.Or,left:o,right:a,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return o}parseAnd(e=!1,n=!1){let r=this,i=r.token,o=r.parseNot(e,n);for(;J.Selectors.And(r.token);){r.next(),r.skipNewlines();let a=r.parseNot();o=r.astProvider.logicalExpression({operator:qr.Operator.And,left:o,right:a,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return o}parseNot(e=!1,n=!1){let r=this,i=r.token;if(J.Selectors.Not(r.token)){r.next(),r.skipNewlines();let s=r.parseIsa();return r.astProvider.unaryExpression({operator:qr.Operator.Not,argument:s,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return r.parseIsa(e,n)}parseIsa(e=!1,n=!1){let r=this,i=r.token,s=r.parseComparisons(e,n);if(J.Selectors.Isa(r.token)){r.next(),r.skipNewlines();let o=r.parseComparisons();return r.astProvider.isaExpression({operator:qr.Operator.Isa,left:s,right:o,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return s}parseComparisons(e=!1,n=!1){let r=this,i=r.token,s=r.parseAddSub(e,n);if(!J.SelectorGroups.ComparisonOperators(r.token))return s;let o=[s],a=[];do{let u=r.token;r.next(),r.skipNewlines();let c=r.parseAddSub();a.push(u.value),o.push(c)}while(J.SelectorGroups.ComparisonOperators(r.token));return a.length===1?r.astProvider.binaryExpression({operator:a[0],left:o[0],right:o[1],start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope}):r.astProvider.comparisonGroupExpression({operators:a,expressions:o,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}parseAddSub(e=!1,n=!1){let r=this,i=r.token,o=r.parseMultDiv(e,n);for(;J.Selectors.Plus(r.token)||J.Selectors.Minus(r.token)&&(!n||!r.token.afterSpace||r.lexer.isAtWhitespace());){let a=r.token;r.next(),r.skipNewlines();let u=r.parseMultDiv();o=r.astProvider.binaryExpression({operator:a.value,left:o,right:u,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return o}parseMultDiv(e=!1,n=!1){let r=this,i=r.token,o=r.parseUnaryMinus(e,n);for(;J.SelectorGroups.MultiDivOperators(r.token);){let a=r.token;r.next(),r.skipNewlines();let u=r.parseUnaryMinus();o=r.astProvider.binaryExpression({operator:a.value,left:o,right:u,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return o}parseUnaryMinus(e=!1,n=!1){let r=this;if(!J.Selectors.Minus(r.token))return r.parseNew(e,n);let i=r.token;r.next(),r.skipNewlines();let s=r.parseNew();return s instanceof mr.ASTNumericLiteral||s instanceof mr.ASTBooleanLiteral?(s.negated=!0,s):r.astProvider.unaryExpression({operator:qr.Operator.Minus,argument:s,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}parseNew(e=!1,n=!1){let r=this;if(!J.Selectors.New(r.token))return r.parseAddressOf(e,n);let i=r.token;r.next(),r.skipNewlines();let s=r.parseNew();return r.astProvider.unaryExpression({operator:qr.Operator.New,argument:s,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}parseAddressOf(e=!1,n=!1){let r=this;if(!J.Selectors.Reference(r.token))return r.parsePower(e,n);let i=r.token;r.next(),r.skipNewlines();let s=r.parsePower();return r.astProvider.unaryExpression({operator:qr.Operator.Reference,argument:s,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}parsePower(e=!1,n=!1){let r=this,i=r.token,s=r.parseCallExpr(e,n);if(J.Selectors.Power(r.token)){r.next(),r.skipNewlines();let o=r.parseCallExpr();return r.astProvider.binaryExpression({operator:qr.Operator.Power,left:s,right:o,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return s}parseCallExpr(e=!1,n=!1){let r=this,i=r.token,s=r.parseMap(e,n);for(;!J.Selectors.EndOfFile(r.token);)if(J.Selectors.MemberSeperator(r.token)){r.next(),r.skipNewlines();let o=r.parseIdentifier();s=r.astProvider.memberExpression({base:s,indexer:qr.Operator.Member,identifier:o,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}else if(J.Selectors.SLBracket(r.token)&&!r.token.afterSpace){if(r.next(),r.skipNewlines(),J.Selectors.SliceSeperator(r.token)){let o=r.astProvider.emptyExpression({start:r.previousToken.start,end:r.previousToken.end,range:r.previousToken.range,scope:r.currentScope});r.next(),r.skipNewlines();let a=J.Selectors.SRBracket(r.token)?r.astProvider.emptyExpression({start:r.previousToken.start,end:r.previousToken.end,range:r.previousToken.range,scope:r.currentScope}):r.parseExpr(null);s=r.astProvider.sliceExpression({base:s,left:o,right:a,start:i.start,end:r.token.end,range:[i.range[0],r.token.range[1]],scope:r.currentScope})}else{let o=r.parseExpr(null);if(J.Selectors.SliceSeperator(r.token)){r.next(),r.skipNewlines();let a=J.Selectors.SRBracket(r.token)?r.astProvider.emptyExpression({start:r.previousToken.start,end:r.previousToken.end,range:r.previousToken.range,scope:r.currentScope}):r.parseExpr(null);s=r.astProvider.sliceExpression({base:s,left:o,right:a,start:i.start,end:r.token.end,range:[i.range[0],r.token.range[1]],scope:r.currentScope})}else s=r.astProvider.indexExpression({base:s,index:o,start:i.start,end:r.token.end,range:[i.range[0],r.token.range[1]],scope:r.currentScope})}r.requireToken(J.Selectors.SRBracket,i.start)}else if(J.Selectors.LParenthesis(r.token)&&(!e||!r.token.afterSpace)){let o=r.parseCallArgs();s=r.astProvider.callExpression({base:s,arguments:o,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}else break;return s}parseCallArgs(){let e=this,n=[];if(J.Selectors.LParenthesis(e.token))if(e.next(),J.Selectors.RParenthesis(e.token))e.next();else for(;!J.Selectors.EndOfFile(e.token);){e.skipNewlines();let r=e.parseExpr(null);if(n.push(r),e.skipNewlines(),J.Selectors.RParenthesis(e.requireTokenOfAny(J.SelectorGroups.CallArgsEnd,r.start)))break}return n}parseMap(e=!1,n=!1){let r=this;if(!J.Selectors.CLBracket(r.token))return r.parseList(e,n);let i=r.currentScope,s=r.token,o=[],a=r.astProvider.mapConstructorExpression({fields:o,start:s.start,end:null,range:[s.range[0],null],scope:i});if(r.next(),J.Selectors.CRBracket(r.token))r.next();else for(r.skipNewlines();!J.Selectors.EndOfFile(r.token);){if(J.Selectors.CRBracket(r.token)){r.next();break}let u=r.astProvider.mapKeyString({key:null,value:null,start:r.token.start,end:null,range:[r.token.range[0],null],scope:i});if(u.key=r.parseExpr(null),r.requireToken(J.Selectors.MapKeyValueSeperator),r.skipNewlines(),r.currentAssignment){let c=r.astProvider.assignmentStatement({variable:r.astProvider.indexExpression({index:u.key,base:r.currentAssignment.variable,start:u.start,end:r.token.end,range:[u.range[0],r.token.range[1]],scope:i}),init:null,start:u.start,end:null,range:[u.range[0],null]}),l=r.currentAssignment;r.currentAssignment=c,u.value=r.parseExpr(u),r.currentAssignment=l,c.init=u.value,c.end=r.previousToken.end,c.range[1]=r.previousToken.range[1],i.assignments.push(c)}else u.value=r.parseExpr(u);if(u.end=r.previousToken.end,u.range[1]=r.previousToken.range[1],o.push(u),J.Selectors.MapSeperator(r.token)&&(r.next(),r.skipNewlines()),J.Selectors.CRBracket(r.token)){r.next();break}}return a.end=r.token.start,a.range[1]=r.token.range[1],a}parseList(e=!1,n=!1){let r=this;if(!J.Selectors.SLBracket(r.token))return r.parseQuantity(e,n);let i=r.currentScope,s=r.token,o=[],a=r.astProvider.listConstructorExpression({fields:o,start:s.start,end:null,range:[s.range[0],null],scope:i});if(r.next(),J.Selectors.SRBracket(r.token))r.next();else for(r.skipNewlines();!J.Selectors.EndOfFile(r.token);){if(J.Selectors.SRBracket(r.token)){r.next();break}let u=r.astProvider.listValue({value:null,start:r.token.start,end:null,range:[r.token.range[0],null],scope:i});if(r.currentAssignment){let c=r.astProvider.assignmentStatement({variable:r.astProvider.indexExpression({index:r.astProvider.literal(gi.TokenType.NumericLiteral,{value:o.length,raw:`${o.length}`,start:s.start,end:r.token.end,range:[s.range[0],r.token.range[1]],scope:i}),base:r.currentAssignment.variable,start:null,end:null,range:[null,null],scope:i}),init:null,start:null,range:[null,null],end:null}),l=r.currentAssignment,d=r.token;r.currentAssignment=l,u.value=r.parseExpr(u),r.currentAssignment=l,c.variable.start=d.start,c.variable.end=r.previousToken.end,c.variable.range=[d.range[0],r.previousToken.range[1]],c.init=u.value,c.start=u.start,c.end=r.previousToken.end,c.range=[u.range[0],r.previousToken.range[1]],i.assignments.push(c)}else u.value=r.parseExpr(u);if(u.end=r.previousToken.end,u.range[1]=r.previousToken.range[1],o.push(u),J.Selectors.MapSeperator(r.token)&&(r.next(),r.skipNewlines()),J.Selectors.SRBracket(r.token)){r.next();break}}return a.end=r.token.start,a.range[1]=r.token.range[1],a}parseQuantity(e=!1,n=!1){let r=this;if(!J.Selectors.LParenthesis(r.token))return r.parseAtom(e,n);let i=r.token;r.next(),r.skipNewlines();let s=r.parseExpr(null);return r.requireToken(J.Selectors.RParenthesis,i.start),r.astProvider.parenthesisExpression({expression:s,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}parseAtom(e=!1,n=!1){let r=this;return r.validator.isLiteral(r.token.type)?r.parseLiteral():r.isType(gi.TokenType.Identifier)?r.parseIdentifier():(r.raise(`got ${r.token} where number, string, or identifier is required`,new Zt.Range(r.token.start,r.token.end)),r.parseInvalidCode())}parseLiteral(){let e=this,n=e.token,r=e.token.type,i=e.astProvider.literal(r,{value:e.token.value,raw:e.token.raw,start:n.start,end:e.token.end,range:[n.range[0],e.token.range[1]],scope:e.currentScope});return e.literals.push(i),e.next(),i}parseIdentifier(){let e=this,n=e.token,r=e.requireType(gi.TokenType.Identifier);return r===null?e.parseInvalidCode():(e.currentScope.namespaces.add(r.value),e.astProvider.identifier({name:r.value,start:n.start,end:n.end,range:n.range,scope:e.currentScope}))}parseInvalidCode(){let e=this,n=e.token,r=e.astProvider.invalidCodeExpression({start:n.start,end:n.end,range:n.range});return e.next(),r}raise(e,n){let r=this,i=new MR.ParserException(e,n);return r.statementErrors.push(i),i}};ma.default=Qg});var qe=g(Ne=>{"use strict";var NR=Ne&&Ne.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),nr=Ne&&Ne.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&NR(e,t,n)},pl=Ne&&Ne.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Ne,"__esModule",{value:!0});Ne.ASTRange=Ne.ASTPosition=Ne.ParserValidatorm=Ne.Parser=Ne.LexerValidator=Ne.Lexer=void 0;var qR=Nh();Object.defineProperty(Ne,"Lexer",{enumerable:!0,get:function(){return pl(qR).default}});nr(li(),Ne);var jR=Eh();Object.defineProperty(Ne,"LexerValidator",{enumerable:!0,get:function(){return pl(jR).default}});var FR=xx();Object.defineProperty(Ne,"Parser",{enumerable:!0,get:function(){return pl(FR).default}});nr(jg(),Ne);var $R=Bg();Object.defineProperty(Ne,"ParserValidatorm",{enumerable:!0,get:function(){return pl($R).default}});nr(Jg(),Ne);nr(Gg(),Ne);nr(Ih(),Ne);nr(Bc(),Ne);nr(Uc(),Ne);nr(Gs(),Ne);nr(Ch(),Ne);nr(Vs(),Ne);var BR=ra();Object.defineProperty(Ne,"ASTPosition",{enumerable:!0,get:function(){return BR.Position}});var UR=ca();Object.defineProperty(Ne,"ASTRange",{enumerable:!0,get:function(){return UR.Range}});nr(Hg(),Ne)});var Ki=g(ya=>{"use strict";Object.defineProperty(ya,"__esModule",{value:!0});ya.SignatureDefinitionBaseType=void 0;var HR;(function(t){t.Function="function",t.Number="number",t.String="string",t.Map="map",t.List="list",t.Any="any",t.General="general"})(HR=ya.SignatureDefinitionBaseType||(ya.SignatureDefinitionBaseType={}))});var ba=g(Zs=>{"use strict";var wx=Zs&&Zs.__read||function(t,e){var n=typeof Symbol=="function"&&t[Symbol.iterator];if(!n)return t;var r=n.call(t),i,s=[],o;try{for(;(e===void 0||e-- >0)&&!(i=r.next()).done;)s.push(i.value)}catch(a){o={error:a}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return s};Object.defineProperty(Zs,"__esModule",{value:!0});Zs.SignatureDefinitionTypeMeta=void 0;var en=Ki(),WR=function(){function t(e){var n,r;this.type=e.type,this.keyType=(n=e.keyType)!==null&&n!==void 0?n:null,this.valueType=(r=e.valueType)!==null&&r!==void 0?r:null}return t.fromString=function(e){var n=e.match(/^([a-zA-Z]+)(?:<([^>]+)>)?$/);if(!n)return null;var r=null,i=null,s=wx(n,3),o=s[0],a=s[1],u=s[2];if(a===en.SignatureDefinitionBaseType.Map?(r=en.SignatureDefinitionBaseType.Any,i=en.SignatureDefinitionBaseType.Any):a===en.SignatureDefinitionBaseType.List&&(r=en.SignatureDefinitionBaseType.Any),u){var c=u.split(",").map(function(b){return b.trim()});if(c.length>2)return null;var l=wx(c,2),d=l[0],p=l[1];p!=null?(r=p,i=d):r=d}return new t({type:a,keyType:i,valueType:r})},t.parse=function(e){var n,r;if(typeof e=="string"){var i=e,s=null,o=null;return i===en.SignatureDefinitionBaseType.Map?(s=en.SignatureDefinitionBaseType.Any,o=en.SignatureDefinitionBaseType.Any):i===en.SignatureDefinitionBaseType.List&&(s=en.SignatureDefinitionBaseType.Any),new t({type:i,valueType:s,keyType:o})}else if(typeof e=="object"){var i=e.type,s=(n=e.valueType)!==null&&n!==void 0?n:null,o=(r=e.keyType)!==null&&r!==void 0?r:null;return i===en.SignatureDefinitionBaseType.Map?(s=s??en.SignatureDefinitionBaseType.Any,o=o??en.SignatureDefinitionBaseType.Any):i===en.SignatureDefinitionBaseType.List&&(s=s??en.SignatureDefinitionBaseType.Any),new t({type:i,valueType:s,keyType:o})}throw new Error("Unable to parse type definition!")},t.prototype.isEqual=function(e){return this.type===e.type},t.prototype.isEqualSafe=function(e){return this.type===e.type&&this.keyType===e.keyType&&this.valueType===e.valueType},t.prototype.toString=function(){return this.keyType===null?this.valueType===null?this.type:"".concat(this.type,"<").concat(this.valueType,">"):"".concat(this.type,"<").concat(this.keyType,",").concat(this.valueType,">")},t.prototype.toJSON=function(){return this.keyType===null?this.valueType===null?this.type:{type:this.type,valueType:this.valueType}:{type:this.type,keyType:this.keyType,valueType:this.valueType}},t.prototype.copy=function(){return new t({type:this.type,keyType:this.keyType,valueType:this.valueType})},t}();Zs.SignatureDefinitionTypeMeta=WR});var Zg=g(mi=>{"use strict";var Ex=mi&&mi.__read||function(t,e){var n=typeof Symbol=="function"&&t[Symbol.iterator];if(!n)return t;var r=n.call(t),i,s=[],o;try{for(;(e===void 0||e-- >0)&&!(i=r.next()).done;)s.push(i.value)}catch(a){o={error:a}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return s},Ax=mi&&mi.__spreadArray||function(t,e,n){if(n||arguments.length===2)for(var r=0,i=e.length,s;r<i;r++)(s||!(r in e))&&(s||(s=Array.prototype.slice.call(e,0,r)),s[r]=e[r]);return t.concat(s||Array.prototype.slice.call(e))};Object.defineProperty(mi,"__esModule",{value:!0});mi.SignatureDefinitionFunctionArg=void 0;var Ox=ba(),GR=function(){function t(e){this._label=e.label,this._types=e.types.reduce(function(n,r){return n.set(r.type,r)},new Map),this._opt=e.opt,this._default=e.default}return t.parse=function(e){var n,r,i=[];if(e.type)i.push(Ox.SignatureDefinitionTypeMeta.parse(e.type));else if(e.types)i.push.apply(i,Ax([],Ex(e.types.map(Ox.SignatureDefinitionTypeMeta.parse)),!1));else throw new Error("Invalid signature definition function arg payload!");return new t({label:e.label,types:i,opt:(n=e.opt)!==null&&n!==void 0?n:!1,default:(r=e.default)!==null&&r!==void 0?r:null})},t.prototype.getLabel=function(){return this._label},t.prototype.isOptional=function(){return this._opt},t.prototype.getDefault=function(){return this._default},t.prototype.getTypes=function(){return Ax([],Ex(this._types.values()),!1)},t.prototype.isValidType=function(e){return this._types.has(e.type)},t.prototype.isValidTypeSafe=function(e){var n;return!!(!((n=this._types.get(e.type))===null||n===void 0)&&n.isEqualSafe(e))},t.prototype.toJSON=function(){return{label:this._label,types:this.getTypes().map(function(e){return e.toJSON()}),opt:this._opt,default:this._default}},t.prototype.copy=function(){return new t({label:this._label,types:this.getTypes().map(function(e){return e.copy()}),opt:this._opt,default:this._default})},t}();mi.SignatureDefinitionFunctionArg=GR});var hl=g(br=>{"use strict";var Vi=br&&br.__read||function(t,e){var n=typeof Symbol=="function"&&t[Symbol.iterator];if(!n)return t;var r=n.call(t),i,s=[],o;try{for(;(e===void 0||e-- >0)&&!(i=r.next()).done;)s.push(i.value)}catch(a){o={error:a}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return s},zi=br&&br.__spreadArray||function(t,e,n){if(n||arguments.length===2)for(var r=0,i=e.length,s;r<i;r++)(s||!(r in e))&&(s||(s=Array.prototype.slice.call(e,0,r)),s[r]=e[r]);return t.concat(s||Array.prototype.slice.call(e))},KR=br&&br.__values||function(t){var e=typeof Symbol=="function"&&Symbol.iterator,n=e&&t[e],r=0;if(n)return n.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(br,"__esModule",{value:!0});br.VariationRegistry=void 0;var VR=function(){function t(e){this._name=e,this._variations=new Set}return t.prototype.getName=function(){return this._name},t.prototype.push=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return this._variations=new Set(zi(zi([],Vi(e),!1),Vi(this._variations),!1)),this},t.prototype.getAll=function(){return zi([],Vi(this._variations),!1)},t}(),zR=function(){function t(){}return t.add=function(e,n){var r=new VR(e);return r.push.apply(r,zi([],Vi(n),!1)),this.variationContainers.set(e,r),this},t.get=function(e){var n;return(n=this.variationContainers.get(e))!==null&&n!==void 0?n:null},t.resolve=function(e){var n,r,i=new Set;try{for(var s=KR(e),o=s.next();!o.done;o=s.next()){var a=o.value;if(typeof a=="string"&&a.startsWith("!")){var u=a.slice(1),c=this.get(u);if(c!==null)i=new Set(zi(zi([],Vi(c.getAll()),!1),Vi(i),!1));else throw new Error("Cannot find variation container for ".concat(u));continue}i.add(a)}}catch(l){n={error:l}}finally{try{o&&!o.done&&(r=s.return)&&r.call(s)}finally{if(n)throw n.error}}return zi([],Vi(i),!1)},t.variationContainers=new Map,t}();br.VariationRegistry=zR});var gl=g(yi=>{"use strict";var XR=yi&&yi.__read||function(t,e){var n=typeof Symbol=="function"&&t[Symbol.iterator];if(!n)return t;var r=n.call(t),i,s=[],o;try{for(;(e===void 0||e-- >0)&&!(i=r.next()).done;)s.push(i.value)}catch(a){o={error:a}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return s},YR=yi&&yi.__spreadArray||function(t,e,n){if(n||arguments.length===2)for(var r=0,i=e.length,s;r<i;r++)(s||!(r in e))&&(s||(s=Array.prototype.slice.call(e,0,r)),s[r]=e[r]);return t.concat(s||Array.prototype.slice.call(e))};Object.defineProperty(yi,"__esModule",{value:!0});yi.SignatureDefinition=void 0;var JR=hl(),QR=ba(),ZR=function(){function t(e){this._type=e.type,this._isProtected=e.isProtected,this._description=e.description,this._example=e.example,this._variations=e.variations}return t.parse=function(e){var n,r,i;return new t({type:QR.SignatureDefinitionTypeMeta.parse(e.type),isProtected:!!e.isProtected,description:(n=e.description)!==null&&n!==void 0?n:null,example:(r=e.example)!==null&&r!==void 0?r:null,variations:(i=e.variations)!==null&&i!==void 0?i:null})},t.prototype.getType=function(){return this._type},t.prototype.isProtected=function(){return this._isProtected},t.prototype.getDescription=function(){return this._description},t.prototype.getExample=function(){return this._example},t.prototype.setDescription=function(e){var n;return this._description=e.description,this._example=(n=e.example)!==null&&n!==void 0?n:null,this},t.prototype.addVariation=function(e){return this._variations==null&&(this._variations=[]),this._variations.push(e),this},t.prototype.getVariations=function(){return JR.VariationRegistry.resolve(this._variations)},t.prototype.toJSON=function(){return{type:this._type.toJSON(),isProtected:this._isProtected,description:this._description,example:this._example?YR([],XR(this._example),!1):null}},t.prototype.withDescription=function(e){var n,r;return new t({type:this._type,isProtected:this._isProtected,description:(n=e?.description)!==null&&n!==void 0?n:this._description,example:(r=e?.example)!==null&&r!==void 0?r:this._example,variations:this._variations})},t.prototype.copy=function(){return new t({type:this._type.copy(),isProtected:this._isProtected,description:this._description,example:this._example,variations:this._variations})},t}();yi.SignatureDefinition=ZR});var em=g(Nn=>{"use strict";var eP=Nn&&Nn.__extends||function(){var t=function(e,n){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,i){r.__proto__=i}||function(r,i){for(var s in i)Object.prototype.hasOwnProperty.call(i,s)&&(r[s]=i[s])},t(e,n)};return function(e,n){if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");t(e,n);function r(){this.constructor=e}e.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),ml=Nn&&Nn.__assign||function(){return ml=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++){e=arguments[n];for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])}return t},ml.apply(this,arguments)},tP=Nn&&Nn.__read||function(t,e){var n=typeof Symbol=="function"&&t[Symbol.iterator];if(!n)return t;var r=n.call(t),i,s=[],o;try{for(;(e===void 0||e-- >0)&&!(i=r.next()).done;)s.push(i.value)}catch(a){o={error:a}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return s},nP=Nn&&Nn.__spreadArray||function(t,e,n){if(n||arguments.length===2)for(var r=0,i=e.length,s;r<i;r++)(s||!(r in e))&&(s||(s=Array.prototype.slice.call(e,0,r)),s[r]=e[r]);return t.concat(s||Array.prototype.slice.call(e))};Object.defineProperty(Nn,"__esModule",{value:!0});Nn.SignatureDefinitionFunction=void 0;var rP=Ki(),iP=hl(),sP=gl(),oP=Zg(),Cx=ba(),aP=function(t){eP(e,t);function e(n){var r=t.call(this,{type:n.type,isProtected:n.isProtected,description:n.description,example:n.example,variations:n.variations})||this;return r._argList=n.arguments.map(function(i){return i.getLabel()}),r._argRefs=n.arguments.reduce(function(i,s){return i.set(s.getLabel(),s)},new Map),r._returns=n.returns.reduce(function(i,s){return i.set(s.type,s)},new Map),r._returnVariations=n.returnVariations,r}return e.parse=function(n){var r,i,s,o,a,u;return new e({type:new Cx.SignatureDefinitionTypeMeta({type:rP.SignatureDefinitionBaseType.Function}),isProtected:(r=n.isProtected)!==null&&r!==void 0?r:!1,description:(i=n.description)!==null&&i!==void 0?i:null,example:(s=n.example)!==null&&s!==void 0?s:null,arguments:(a=(o=n.arguments)===null||o===void 0?void 0:o.map(oP.SignatureDefinitionFunctionArg.parse))!==null&&a!==void 0?a:[],returns:n.returns.map(Cx.SignatureDefinitionTypeMeta.parse),variations:n.variations,returnVariations:(u=n.returnVariations)!==null&&u!==void 0?u:null})},e.prototype.getArguments=function(){var n=this;return this._argList.map(function(r){return n._argRefs.get(r)})},e.prototype.getArgument=function(n){var r;return(r=this._argRefs.get(n))!==null&&r!==void 0?r:null},e.prototype.getReturns=function(){return nP([],tP(this._returns.values()),!1)},e.prototype.addReturnVariation=function(n){return this._returnVariations==null&&(this._returnVariations=[]),this._returnVariations.push(n),this},e.prototype.getReturnVariations=function(){return this._returnVariations==null&&(this._returnVariations=[]),iP.VariationRegistry.resolve(this._returnVariations)},e.prototype.toJSON=function(){return ml(ml({},t.prototype.toJSON.call(this)),{arguments:this.getArguments().map(function(n){return n.toJSON()}),returns:this.getReturns().map(function(n){return n.toJSON()})})},e.prototype.withDescription=function(n){var r,i;return new e({type:this._type,isProtected:this._isProtected,arguments:this.getArguments(),returns:this.getReturns(),description:(r=n?.description)!==null&&r!==void 0?r:this._description,example:(i=n?.example)!==null&&i!==void 0?i:this._example,variations:this._variations,returnVariations:this._returnVariations})},e.prototype.copy=function(){return new e({type:this._type.copy(),isProtected:this._isProtected,arguments:this.getArguments().map(function(n){return n.copy()}),returns:this.getReturns().map(function(n){return n.copy()}),description:this._description,example:this._example,variations:this._variations,returnVariations:this._returnVariations})},e}(sP.SignatureDefinition);Nn.SignatureDefinitionFunction=aP});var Px=g((_B,Rx)=>{"use strict";Rx.exports=function(...t){try{return JSON.stringify(...t)}catch(e){return"[Cannot display object: "+e.message+"]"}}});var tm=g((Dx,Ix)=>{"use strict";var uP=Px();Ix.exports=class extends Error{constructor(t){let e=t.filter(n=>n!=="").map(n=>typeof n=="string"?n:n instanceof Error?n.message:uP(n));super(e.join(" ")||"Unknown error"),typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,Dx.assert)}}});var Ie=g((SB,Mx)=>{"use strict";var cP=tm();Mx.exports=function(t,...e){if(!t)throw e.length===1&&e[0]instanceof Error?e[0]:new cP(e)}});var Xi=g((kB,Nx)=>{"use strict";var nm=Ie(),Lx={};Nx.exports=function(t,e,n){if(e===!1||e===null||e===void 0)return t;n=n||{},typeof n=="string"&&(n={separator:n});let r=Array.isArray(e);nm(!r||!n.separator,"Separator option is not valid for array-based chain");let i=r?e:e.split(n.separator||"."),s=t;for(let o=0;o<i.length;++o){let a=i[o],u=n.iterables&&Lx.iterables(s);if(Array.isArray(s)||u==="set"){let c=Number(a);Number.isInteger(c)&&(a=c<0?s.length+c:c)}if(!s||typeof s=="function"&&n.functions===!1||!u&&s[a]===void 0){nm(!n.strict||o+1===i.length,"Missing segment",a,"in reach path ",e),nm(typeof s=="object"||n.functions===!0||typeof s!="function","Invalid segment",a,"in reach path ",e),s=n.default;break}u?u==="set"?s=[...s][a]:s=s.get(a):s=s[a]}return s};Lx.iterables=function(t){if(t instanceof Set)return"set";if(t instanceof Map)return"map"}});var rm=g((tn,jx)=>{"use strict";var qx={};tn=jx.exports={array:Array.prototype,buffer:Buffer&&Buffer.prototype,date:Date.prototype,error:Error.prototype,generic:Object.prototype,map:Map.prototype,promise:Promise.prototype,regex:RegExp.prototype,set:Set.prototype,weakMap:WeakMap.prototype,weakSet:WeakSet.prototype};qx.typeMap=new Map([["[object Error]",tn.error],["[object Map]",tn.map],["[object Promise]",tn.promise],["[object Set]",tn.set],["[object WeakMap]",tn.weakMap],["[object WeakSet]",tn.weakSet]]);tn.getInternalProto=function(t){if(Array.isArray(t))return tn.array;if(Buffer&&t instanceof Buffer)return tn.buffer;if(t instanceof Date)return tn.date;if(t instanceof RegExp)return tn.regex;if(t instanceof Error)return tn.error;let e=Object.prototype.toString.call(t);return qx.typeMap.get(e)||tn.generic}});var im=g(Fx=>{"use strict";Fx.keys=function(t,e={}){return e.symbols!==!1?Reflect.ownKeys(t):Object.getOwnPropertyNames(t)}});var nn=g((wB,$x)=>{"use strict";var lP=Xi(),kn=rm(),dP=im(),jr={needsProtoHack:new Set([kn.set,kn.map,kn.weakSet,kn.weakMap])};$x.exports=jr.clone=function(t,e={},n=null){if(typeof t!="object"||t===null)return t;let r=jr.clone,i=n;if(e.shallow){if(e.shallow!==!0)return jr.cloneWithShallow(t,e);r=u=>u}else if(i){let u=i.get(t);if(u)return u}else i=new Map;let s=kn.getInternalProto(t);if(s===kn.buffer)return Buffer&&Buffer.from(t);if(s===kn.date)return new Date(t.getTime());if(s===kn.regex)return new RegExp(t);let o=jr.base(t,s,e);if(o===t)return t;if(i&&i.set(t,o),s===kn.set)for(let u of t)o.add(r(u,e,i));else if(s===kn.map)for(let[u,c]of t)o.set(u,r(c,e,i));let a=dP.keys(t,e);for(let u of a){if(u==="__proto__")continue;if(s===kn.array&&u==="length"){o.length=t.length;continue}let c=Object.getOwnPropertyDescriptor(t,u);c?c.get||c.set?Object.defineProperty(o,u,c):c.enumerable?o[u]=r(t[u],e,i):Object.defineProperty(o,u,{enumerable:!1,writable:!0,configurable:!0,value:r(t[u],e,i)}):Object.defineProperty(o,u,{enumerable:!0,writable:!0,configurable:!0,value:r(t[u],e,i)})}return o};jr.cloneWithShallow=function(t,e){let n=e.shallow;e=Object.assign({},e),e.shallow=!1;let r=new Map;for(let i of n){let s=lP(t,i);(typeof s=="object"||typeof s=="function")&&r.set(s,s)}return jr.clone(t,e,r)};jr.base=function(t,e,n){if(n.prototype===!1)return jr.needsProtoHack.has(e)?new e.constructor:e===kn.array?[]:{};let r=Object.getPrototypeOf(t);if(r&&r.isImmutable)return t;if(e===kn.array){let i=[];return r!==e&&Object.setPrototypeOf(i,r),i}if(jr.needsProtoHack.has(e)){let i=new r.constructor;return r!==e&&Object.setPrototypeOf(i,r),i}return Object.create(r)}});var Bx=g((EB,fP)=>{fP.exports={name:"joi",description:"Object schema validation",version:"17.13.3",repository:"git://github.com/hapijs/joi",main:"lib/index.js",types:"lib/index.d.ts",browser:"dist/joi-browser.min.js",files:["lib/**/*","dist/*"],keywords:["schema","validation"],dependencies:{"@hapi/hoek":"^9.3.0","@hapi/topo":"^5.1.0","@sideway/address":"^4.1.5","@sideway/formula":"^3.0.1","@sideway/pinpoint":"^2.0.0"},devDependencies:{"@hapi/bourne":"2.x.x","@hapi/code":"8.x.x","@hapi/joi-legacy-test":"npm:@hapi/joi@15.x.x","@hapi/lab":"^25.1.3","@types/node":"^14.18.63",typescript:"4.3.x"},scripts:{prepublishOnly:"cd browser && npm install && npm run build",test:"lab -t 100 -a @hapi/code -L -Y","test-cov-html":"lab -r html -o coverage.html -a @hapi/code"},license:"BSD-3-Clause"}});var yl=g(va=>{"use strict";var O=bl(),me={};me.wrap=O.string().min(1).max(2).allow(!1);va.preferences=O.object({allowUnknown:O.boolean(),abortEarly:O.boolean(),artifacts:O.boolean(),cache:O.boolean(),context:O.object(),convert:O.boolean(),dateFormat:O.valid("date","iso","string","time","utc"),debug:O.boolean(),errors:{escapeHtml:O.boolean(),label:O.valid("path","key",!1),language:[O.string(),O.object().ref()],render:O.boolean(),stack:O.boolean(),wrap:{label:me.wrap,array:me.wrap,string:me.wrap}},externals:O.boolean(),messages:O.object(),noDefaults:O.boolean(),nonEnumerables:O.boolean(),presence:O.valid("required","optional","forbidden"),skipFunctions:O.boolean(),stripUnknown:O.object({arrays:O.boolean(),objects:O.boolean()}).or("arrays","objects").allow(!0,!1),warnings:O.boolean()}).strict();me.nameRx=/^[a-zA-Z0-9]\w*$/;me.rule=O.object({alias:O.array().items(O.string().pattern(me.nameRx)).single(),args:O.array().items(O.string(),O.object({name:O.string().pattern(me.nameRx).required(),ref:O.boolean(),assert:O.alternatives([O.function(),O.object().schema()]).conditional("ref",{is:!0,then:O.required()}),normalize:O.function(),message:O.string().when("assert",{is:O.function(),then:O.required()})})),convert:O.boolean(),manifest:O.boolean(),method:O.function().allow(!1),multi:O.boolean(),validate:O.function()});va.extension=O.object({type:O.alternatives([O.string(),O.object().regex()]).required(),args:O.function(),cast:O.object().pattern(me.nameRx,O.object({from:O.function().maxArity(1).required(),to:O.function().minArity(1).maxArity(2).required()})),base:O.object().schema().when("type",{is:O.object().regex(),then:O.forbidden()}),coerce:[O.function().maxArity(3),O.object({method:O.function().maxArity(3).required(),from:O.array().items(O.string()).single()})],flags:O.object().pattern(me.nameRx,O.object({setter:O.string(),default:O.any()})),manifest:{build:O.function().arity(2)},messages:[O.object(),O.string()],modifiers:O.object().pattern(me.nameRx,O.function().minArity(1).maxArity(2)),overrides:O.object().pattern(me.nameRx,O.function()),prepare:O.function().maxArity(3),rebuild:O.function().arity(1),rules:O.object().pattern(me.nameRx,me.rule),terms:O.object().pattern(me.nameRx,O.object({init:O.array().allow(null).required(),manifest:O.object().pattern(/.+/,[O.valid("schema","single"),O.object({mapped:O.object({from:O.string().required(),to:O.string().required()}).required()})])})),validate:O.function().maxArity(3)}).strict();va.extensions=O.array().items(O.object(),O.function().arity(1)).strict();me.desc={buffer:O.object({buffer:O.string()}),func:O.object({function:O.function().required(),options:{literal:!0}}),override:O.object({override:!0}),ref:O.object({ref:O.object({type:O.valid("value","global","local"),path:O.array().required(),separator:O.string().length(1).allow(!1),ancestor:O.number().min(0).integer().allow("root"),map:O.array().items(O.array().length(2)).min(1),adjust:O.function(),iterables:O.boolean(),in:O.boolean(),render:O.boolean()}).required()}),regex:O.object({regex:O.string().min(3)}),special:O.object({special:O.valid("deep").required()}),template:O.object({template:O.string().required(),options:O.object()}),value:O.object({value:O.alternatives([O.object(),O.array()]).required()})};me.desc.entity=O.alternatives([O.array().items(O.link("...")),O.boolean(),O.function(),O.number(),O.string(),me.desc.buffer,me.desc.func,me.desc.ref,me.desc.regex,me.desc.special,me.desc.template,me.desc.value,O.link("/")]);me.desc.values=O.array().items(null,O.boolean(),O.function(),O.number().allow(1/0,-1/0),O.string().allow(""),O.symbol(),me.desc.buffer,me.desc.func,me.desc.override,me.desc.ref,me.desc.regex,me.desc.template,me.desc.value);me.desc.messages=O.object().pattern(/.+/,[O.string(),me.desc.template,O.object().pattern(/.+/,[O.string(),me.desc.template])]);va.description=O.object({type:O.string().required(),flags:O.object({cast:O.string(),default:O.any(),description:O.string(),empty:O.link("/"),failover:me.desc.entity,id:O.string(),label:O.string(),only:!0,presence:["optional","required","forbidden"],result:["raw","strip"],strip:O.boolean(),unit:O.string()}).unknown(),preferences:{allowUnknown:O.boolean(),abortEarly:O.boolean(),artifacts:O.boolean(),cache:O.boolean(),convert:O.boolean(),dateFormat:["date","iso","string","time","utc"],errors:{escapeHtml:O.boolean(),label:["path","key"],language:[O.string(),me.desc.ref],wrap:{label:me.wrap,array:me.wrap}},externals:O.boolean(),messages:me.desc.messages,noDefaults:O.boolean(),nonEnumerables:O.boolean(),presence:["required","optional","forbidden"],skipFunctions:O.boolean(),stripUnknown:O.object({arrays:O.boolean(),objects:O.boolean()}).or("arrays","objects").allow(!0,!1),warnings:O.boolean()},allow:me.desc.values,invalid:me.desc.values,rules:O.array().min(1).items({name:O.string().required(),args:O.object().min(1),keep:O.boolean(),message:[O.string(),me.desc.messages],warn:O.boolean()}),keys:O.object().pattern(/.*/,O.link("/")),link:me.desc.ref}).pattern(/^[a-z]\w*$/,O.any())});var Hx=g((OB,Ux)=>{"use strict";var bi={};Ux.exports=function(t){if(!t)return"";let e="";for(let n=0;n<t.length;++n){let r=t.charCodeAt(n);bi.isSafe(r)?e+=t[n]:e+=bi.escapeHtmlChar(r)}return e};bi.escapeHtmlChar=function(t){let e=bi.namedHtml.get(t);return e||(t>=256?"&#"+t+";":`&#x${t.toString(16).padStart(2,"0")};`)};bi.isSafe=function(t){return bi.safeCharCodes.has(t)};bi.namedHtml=new Map([[38,"&amp;"],[60,"&lt;"],[62,"&gt;"],[34,"&quot;"],[160,"&nbsp;"],[162,"&cent;"],[163,"&pound;"],[164,"&curren;"],[169,"&copy;"],[174,"&reg;"]]);bi.safeCharCodes=function(){let t=new Set;for(let e=32;e<123;++e)(e>=97||e>=65&&e<=90||e>=48&&e<=57||e===32||e===46||e===44||e===45||e===58||e===95)&&t.add(e);return t}()});var Wx=g(_a=>{"use strict";var Ce={operators:["!","^","*","/","%","+","-","<","<=",">",">=","==","!=","&&","||","??"],operatorCharacters:["!","^","*","/","%","+","-","<","=",">","&","|","?"],operatorsOrder:[["^"],["*","/","%"],["+","-"],["<","<=",">",">="],["==","!="],["&&"],["||","??"]],operatorsPrefix:["!","n"],literals:{'"':'"',"`":"`","'":"'","[":"]"},numberRx:/^(?:[0-9]*(\.[0-9]*)?){1}$/,tokenRx:/^[\w\$\#\.\@\:\{\}]+$/,symbol:Symbol("formula"),settings:Symbol("settings")};_a.Parser=class{constructor(t,e={}){if(!e[Ce.settings]&&e.constants)for(let n in e.constants){let r=e.constants[n];if(r!==null&&!["boolean","number","string"].includes(typeof r))throw new Error(`Formula constant ${n} contains invalid ${typeof r} value type`)}this.settings=e[Ce.settings]?e:Object.assign({[Ce.settings]:!0,constants:{},functions:{}},e),this.single=null,this._parts=null,this._parse(t)}_parse(t){let e=[],n="",r=0,i=!1,s=a=>{if(r)throw new Error("Formula missing closing parenthesis");let u=e.length?e[e.length-1]:null;if(!(!i&&!n&&!a)){if(u&&u.type==="reference"&&a===")"){u.type="function",u.value=this._subFormula(n,u.value),n="";return}if(a===")"){let c=new _a.Parser(n,this.settings);e.push({type:"segment",value:c})}else if(i){if(i==="]"){e.push({type:"reference",value:n}),n="";return}e.push({type:"literal",value:n})}else if(Ce.operatorCharacters.includes(n))u&&u.type==="operator"&&Ce.operators.includes(u.value+n)?u.value+=n:e.push({type:"operator",value:n});else if(n.match(Ce.numberRx))e.push({type:"constant",value:parseFloat(n)});else if(this.settings.constants[n]!==void 0)e.push({type:"constant",value:this.settings.constants[n]});else{if(!n.match(Ce.tokenRx))throw new Error(`Formula contains invalid token: ${n}`);e.push({type:"reference",value:n})}n=""}};for(let a of t)i?a===i?(s(),i=!1):n+=a:r?a==="("?(n+=a,++r):a===")"?(--r,r?n+=a:s(a)):n+=a:a in Ce.literals?i=Ce.literals[a]:a==="("?(s(),++r):Ce.operatorCharacters.includes(a)?(s(),n=a,s()):a!==" "?n+=a:s();s(),e=e.map((a,u)=>a.type!=="operator"||a.value!=="-"||u&&e[u-1].type!=="operator"?a:{type:"operator",value:"n"});let o=!1;for(let a of e){if(a.type==="operator"){if(Ce.operatorsPrefix.includes(a.value))continue;if(!o)throw new Error("Formula contains an operator in invalid position");if(!Ce.operators.includes(a.value))throw new Error(`Formula contains an unknown operator ${a.value}`)}else if(o)throw new Error("Formula missing expected operator");o=!o}if(!o)throw new Error("Formula contains invalid trailing operator");e.length===1&&["reference","literal","constant"].includes(e[0].type)&&(this.single={type:e[0].type==="reference"?"reference":"value",value:e[0].value}),this._parts=e.map(a=>{if(a.type==="operator")return Ce.operatorsPrefix.includes(a.value)?a:a.value;if(a.type!=="reference")return a.value;if(this.settings.tokenRx&&!this.settings.tokenRx.test(a.value))throw new Error(`Formula contains invalid reference ${a.value}`);return this.settings.reference?this.settings.reference(a.value):Ce.reference(a.value)})}_subFormula(t,e){let n=this.settings.functions[e];if(typeof n!="function")throw new Error(`Formula contains unknown function ${e}`);let r=[];if(t){let i="",s=0,o=!1,a=()=>{if(!i)throw new Error(`Formula contains function ${e} with invalid arguments ${t}`);r.push(i),i=""};for(let u=0;u<t.length;++u){let c=t[u];o?(i+=c,c===o&&(o=!1)):c in Ce.literals&&!s?(i+=c,o=Ce.literals[c]):c===","&&!s?a():(i+=c,c==="("?++s:c===")"&&--s)}a()}return r=r.map(i=>new _a.Parser(i,this.settings)),function(i){let s=[];for(let o of r)s.push(o.evaluate(i));return n.call(i,...s)}}evaluate(t){let e=this._parts.slice();for(let n=e.length-2;n>=0;--n){let r=e[n];if(r&&r.type==="operator"){let i=e[n+1];e.splice(n+1,1);let s=Ce.evaluate(i,t);e[n]=Ce.single(r.value,s)}}return Ce.operatorsOrder.forEach(n=>{for(let r=1;r<e.length-1;)if(n.includes(e[r])){let i=e[r],s=Ce.evaluate(e[r-1],t),o=Ce.evaluate(e[r+1],t);e.splice(r,2);let a=Ce.calculate(i,s,o);e[r-1]=a===0?0:a}else r+=2}),Ce.evaluate(e[0],t)}};_a.Parser.prototype[Ce.symbol]=!0;Ce.reference=function(t){return function(e){return e&&e[t]!==void 0?e[t]:null}};Ce.evaluate=function(t,e){return t===null?null:typeof t=="function"?t(e):t[Ce.symbol]?t.evaluate(e):t};Ce.single=function(t,e){if(t==="!")return!e;let n=-e;return n===0?0:n};Ce.calculate=function(t,e,n){if(t==="??")return Ce.exists(e)?e:n;if(typeof e=="string"||typeof n=="string"){if(t==="+")return e=Ce.exists(e)?e:"",n=Ce.exists(n)?n:"",e+n}else switch(t){case"^":return Math.pow(e,n);case"*":return e*n;case"/":return e/n;case"%":return e%n;case"+":return e+n;case"-":return e-n}switch(t){case"<":return e<n;case"<=":return e<=n;case">":return e>n;case">=":return e>=n;case"==":return e===n;case"!=":return e!==n;case"&&":return e&&n;case"||":return e||n}return null};Ce.exists=function(t){return t!=null}});var Kx=g(Gx=>{"use strict";var pP=nn(),hP=Qe(),Yi={annotations:Symbol("annotations")};Gx.error=function(t){if(!this._original||typeof this._original!="object")return this.details[0].message;let e=t?"":"\x1B[31m",n=t?"":"\x1B[41m",r=t?"":"\x1B[0m",i=pP(this._original);for(let a=this.details.length-1;a>=0;--a){let u=a+1,c=this.details[a],l=c.path,d=i;for(let p=0;;++p){let b=l[p];if(hP.isSchema(d)&&(d=d.clone()),p+1<l.length&&typeof d[b]!="string")d=d[b];else{let _=d[Yi.annotations]||{errors:{},missing:{}};d[Yi.annotations]=_;let E=b||c.context.key;d[b]!==void 0?(_.errors[E]=_.errors[E]||[],_.errors[E].push(u)):_.missing[E]=u;break}}}let s={key:/_\$key\$_([, \d]+)_\$end\$_"/g,missing:/"_\$miss\$_([^|]+)\|(\d+)_\$end\$_": "__missing__"/g,arrayIndex:/\s*"_\$idx\$_([, \d]+)_\$end\$_",?\n(.*)/g,specials:/"\[(NaN|Symbol.*|-?Infinity|function.*|\(.*)]"/g},o=Yi.safeStringify(i,2).replace(s.key,(a,u)=>`" ${e}[${u}]${r}`).replace(s.missing,(a,u,c)=>`${n}"${u}"${r}${e} [${c}]: -- missing --${r}`).replace(s.arrayIndex,(a,u,c)=>`
97
97
  ${c} ${e}[${u}]${r}`).replace(s.specials,(a,u)=>u);o=`${o}
98
98
  ${e}`;for(let a=0;a<this.details.length;++a){let u=a+1;o=`${o}
99
- [${u}] ${this.details[a].message}`}return o=o+r,o};Yi.safeStringify=function(t,e){return JSON.stringify(t,Yi.serializer(),e)};Yi.serializer=function(){let t=[],e=[],n=(r,i)=>e[0]===i?"[Circular ~]":"[Circular ~."+t.slice(0,e.indexOf(i)).join(".")+"]";return function(r,i){if(e.length>0){let s=e.indexOf(this);~s?(e.length=s+1,t.length=s+1,t[s]=r):(e.push(this),t.push(r)),~e.indexOf(i)&&(i=n.call(this,r,i))}else e.push(i);if(i){let s=i[Yi.annotations];if(s){if(Array.isArray(i)){let o=[];for(let a=0;a<i.length;++a)s.errors[a]&&o.push(`_$idx$_${s.errors[a].sort().join(", ")}_$end$_`),o.push(i[a]);i=o}else{for(let o in s.errors)i[`${o}_$key$_${s.errors[o].sort().join(", ")}_$end$_`]=i[o],i[o]=void 0;for(let o in s.missing)i[`_$miss$_${o}|${s.missing[o]}_$end$_`]="__missing__"}return i}}return i===1/0||i===-1/0||Number.isNaN(i)||typeof i=="function"||typeof i=="symbol"?"["+i.toString()+"]":i}}});var Fr=g(xt=>{"use strict";var gP=Wx(),mP=Qe(),yP=bi();xt.Report=class{constructor(t,e,n,r,i,s,o){if(this.code=t,this.flags=r,this.messages=i,this.path=s.path,this.prefs=o,this.state=s,this.value=e,this.message=null,this.template=null,this.local=n||{},this.local.label=xt.label(this.flags,this.state,this.prefs,this.messages),this.value!==void 0&&!this.local.hasOwnProperty("value")&&(this.local.value=this.value),this.path.length){let a=this.path[this.path.length-1];typeof a!="object"&&(this.local.key=a)}}_setTemplate(t){if(this.template=t,!this.flags.label&&this.path.length===0){let e=this._template(this.template,"root");e&&(this.local.label=e)}}toString(){if(this.message)return this.message;let t=this.code;if(!this.prefs.errors.render)return this.code;let e=this._template(this.template)||this._template(this.prefs.messages)||this._template(this.messages);return e===void 0?`Error code "${t}" is not defined, your custom type is missing the correct messages definition`:(this.message=e.render(this.value,this.state,this.prefs,this.local,{errors:this.prefs.errors,messages:[this.prefs.messages,this.messages]}),this.prefs.errors.label||(this.message=this.message.replace(/^"" /,"").trim()),this.message)}_template(t,e){return xt.template(this.value,t,e||this.code,this.state,this.prefs)}};xt.path=function(t){let e="";for(let n of t)typeof n!="object"&&(typeof n=="string"?(e&&(e+="."),e+=n):e+=`[${n}]`);return e};xt.template=function(t,e,n,r,i){if(!e)return;if(yP.isTemplate(e))return n!=="root"?e:null;let s=i.errors.language;if(mP.isResolvable(s)&&(s=s.resolve(t,r,i)),s&&e[s]){if(e[s][n]!==void 0)return e[s][n];if(e[s]["*"]!==void 0)return e[s]["*"]}return e[n]?e[n]:e["*"]};xt.label=function(t,e,n,r){if(!n.errors.label)return"";if(t.label)return t.label;let i=e.path;n.errors.label==="key"&&e.path.length>1&&(i=e.path.slice(-1));let s=xt.path(i);return s||xt.template(null,n.messages,"root",e,n)||r&&xt.template(null,r,"root",e,n)||"value"};xt.process=function(t,e,n){if(!t)return null;let{override:r,message:i,details:s}=xt.details(t);if(r)return r;if(n.errors.stack)return new xt.ValidationError(i,s,e);let o=Error.stackTraceLimit;Error.stackTraceLimit=0;let a=new xt.ValidationError(i,s,e);return Error.stackTraceLimit=o,a};xt.details=function(t,e={}){let n=[],r=[];for(let i of t){if(i instanceof Error){if(e.override!==!1)return{override:i};let o=i.toString();n.push(o),r.push({message:o,type:"override",context:{error:i}});continue}let s=i.toString();n.push(s),r.push({message:s,path:i.path.filter(o=>typeof o!="object"),type:i.code,context:i.local})}return n.length>1&&(n=[...new Set(n)]),{message:n.join(". "),details:r}};xt.ValidationError=class extends Error{constructor(t,e,n){super(t),this._original=n,this.details=e}static isError(t){return t instanceof xt.ValidationError}};xt.ValidationError.prototype.isJoi=!0;xt.ValidationError.prototype.name="ValidationError";xt.ValidationError.prototype.annotate=gP.error});var $r=g(Fn=>{"use strict";var qn=Ie(),bP=nn(),vP=Xi(),Ta=Qe(),sm,jn={symbol:Symbol("ref"),defaults:{adjust:null,in:!1,iterables:null,map:null,separator:".",type:"value"}};Fn.create=function(t,e={}){qn(typeof t=="string","Invalid reference key:",t),Ta.assertOptions(e,["adjust","ancestor","in","iterables","map","prefix","render","separator"]),qn(!e.prefix||typeof e.prefix=="object","options.prefix must be of type object");let n=Object.assign({},jn.defaults,e);delete n.prefix;let r=n.separator,i=jn.context(t,r,e.prefix);if(n.type=i.type,t=i.key,n.type==="value")if(i.root&&(qn(!r||t[0]!==r,"Cannot specify relative path with root prefix"),n.ancestor="root",t||(t=null)),r&&r===t)t=null,n.ancestor=0;else if(n.ancestor!==void 0)qn(!r||!t||t[0]!==r,"Cannot combine prefix with ancestor option");else{let[s,o]=jn.ancestor(t,r);o&&(t=t.slice(o),t===""&&(t=null)),n.ancestor=s}return n.path=r?t===null?[]:t.split(r):[t],new jn.Ref(n)};Fn.in=function(t,e={}){return Fn.create(t,{...e,in:!0})};Fn.isRef=function(t){return t?!!t[Ta.symbols.ref]:!1};jn.Ref=class{constructor(t){qn(typeof t=="object","Invalid reference construction"),Ta.assertOptions(t,["adjust","ancestor","in","iterables","map","path","render","separator","type","depth","key","root","display"]),qn([!1,void 0].includes(t.separator)||typeof t.separator=="string"&&t.separator.length===1,"Invalid separator"),qn(!t.adjust||typeof t.adjust=="function","options.adjust must be a function"),qn(!t.map||Array.isArray(t.map),"options.map must be an array"),qn(!t.map||!t.adjust,"Cannot set both map and adjust options"),Object.assign(this,jn.defaults,t),qn(this.type==="value"||this.ancestor===void 0,"Non-value references cannot reference ancestors"),Array.isArray(this.map)&&(this.map=new Map(this.map)),this.depth=this.path.length,this.key=this.path.length?this.path.join(this.separator):null,this.root=this.path[0],this.updateDisplay()}resolve(t,e,n,r,i={}){return qn(!this.in||i.in,"Invalid in() reference usage"),this.type==="global"?this._resolve(n.context,e,i):this.type==="local"?this._resolve(r,e,i):this.ancestor?this.ancestor==="root"?this._resolve(e.ancestors[e.ancestors.length-1],e,i):(qn(this.ancestor<=e.ancestors.length,"Invalid reference exceeds the schema root:",this.display),this._resolve(e.ancestors[this.ancestor-1],e,i)):this._resolve(t,e,i)}_resolve(t,e,n){let r;if(this.type==="value"&&e.mainstay.shadow&&n.shadow!==!1&&(r=e.mainstay.shadow.get(this.absolute(e))),r===void 0&&(r=vP(t,this.path,{iterables:this.iterables,functions:!0})),this.adjust&&(r=this.adjust(r)),this.map){let i=this.map.get(r);i!==void 0&&(r=i)}return e.mainstay&&e.mainstay.tracer.resolve(e,this,r),r}toString(){return this.display}absolute(t){return[...t.path.slice(0,-this.ancestor),...this.path]}clone(){return new jn.Ref(this)}describe(){let t={path:this.path};this.type!=="value"&&(t.type=this.type),this.separator!=="."&&(t.separator=this.separator),this.type==="value"&&this.ancestor!==1&&(t.ancestor=this.ancestor),this.map&&(t.map=[...this.map]);for(let e of["adjust","iterables","render"])this[e]!==null&&this[e]!==void 0&&(t[e]=this[e]);return this.in!==!1&&(t.in=!0),{ref:t}}updateDisplay(){let t=this.key!==null?this.key:"";if(this.type!=="value"){this.display=`ref:${this.type}:${t}`;return}if(!this.separator){this.display=`ref:${t}`;return}if(!this.ancestor){this.display=`ref:${this.separator}${t}`;return}if(this.ancestor==="root"){this.display=`ref:root:${t}`;return}if(this.ancestor===1){this.display=`ref:${t||".."}`;return}let e=new Array(this.ancestor+1).fill(this.separator).join("");this.display=`ref:${e}${t||""}`}};jn.Ref.prototype[Ta.symbols.ref]=!0;Fn.build=function(t){return t=Object.assign({},jn.defaults,t),t.type==="value"&&t.ancestor===void 0&&(t.ancestor=1),new jn.Ref(t)};jn.context=function(t,e,n={}){if(t=t.trim(),n){let r=n.global===void 0?"$":n.global;if(r!==e&&t.startsWith(r))return{key:t.slice(r.length),type:"global"};let i=n.local===void 0?"#":n.local;if(i!==e&&t.startsWith(i))return{key:t.slice(i.length),type:"local"};let s=n.root===void 0?"/":n.root;if(s!==e&&t.startsWith(s))return{key:t.slice(s.length),type:"value",root:!0}}return{key:t,type:"value"}};jn.ancestor=function(t,e){if(!e)return[1,0];if(t[0]!==e)return[1,0];if(t[1]!==e)return[0,1];let n=2;for(;t[n]===e;)++n;return[n-1,n]};Fn.toSibling=0;Fn.toParent=1;Fn.Manager=class{constructor(){this.refs=[]}register(t,e){if(t){if(e=e===void 0?Fn.toParent:e,Array.isArray(t)){for(let n of t)this.register(n,e);return}if(Ta.isSchema(t)){for(let n of t._refs.refs)n.ancestor-e>=0&&this.refs.push({ancestor:n.ancestor-e,root:n.root});return}Fn.isRef(t)&&t.type==="value"&&t.ancestor-e>=0&&this.refs.push({ancestor:t.ancestor-e,root:t.root}),sm=sm||bi(),sm.isTemplate(t)&&this.register(t.refs(),e)}}get length(){return this.refs.length}clone(){let t=new Fn.Manager;return t.refs=bP(this.refs),t}reset(){this.refs=[]}roots(){return this.refs.filter(t=>!t.ancestor).map(t=>t.root)}}});var bi=g((zx,Xx)=>{"use strict";var vl=Ie(),_P=nn(),TP=Bx(),SP=Ux(),Kx=Qe(),Gx=Fr(),Vx=$r(),Be={symbol:Symbol("template"),opens:new Array(1e3).join("\0"),closes:new Array(1e3).join(""),dateFormat:{date:Date.prototype.toDateString,iso:Date.prototype.toISOString,string:Date.prototype.toString,time:Date.prototype.toTimeString,utc:Date.prototype.toUTCString}};Xx.exports=zx=Be.Template=class{constructor(t,e){if(vl(typeof t=="string","Template source must be a string"),vl(!t.includes("\0")&&!t.includes(""),"Template source cannot contain reserved control characters"),this.source=t,this.rendered=t,this._template=null,e){let{functions:n,...r}=e;this._settings=Object.keys(r).length?_P(r):void 0,this._functions=n,this._functions&&(vl(Object.keys(this._functions).every(i=>typeof i=="string"),"Functions keys must be strings"),vl(Object.values(this._functions).every(i=>typeof i=="function"),"Functions values must be functions"))}else this._settings=void 0,this._functions=void 0;this._parse()}_parse(){if(!this.source.includes("{"))return;let t=Be.encode(this.source),e=Be.split(t),n=!1,r=[],i=e.shift();i&&r.push(i);for(let s of e){let o=s[0]!=="{",a=o?"}":"}}",u=s.indexOf(a);if(u===-1||s[1]==="{"){r.push(`{${Be.decode(s)}`);continue}let c=s.slice(o?0:1,u),l=c[0]===":";l&&(c=c.slice(1));let d=this._ref(Be.decode(c),{raw:o,wrapped:l});r.push(d),typeof d!="string"&&(n=!0);let p=s.slice(u+a.length);p&&r.push(Be.decode(p))}if(!n){this.rendered=r.join("");return}this._template=r}static date(t,e){return Be.dateFormat[e.dateFormat].call(t)}describe(t={}){if(!this._settings&&t.compact)return this.source;let e={template:this.source};return this._settings&&(e.options=this._settings),this._functions&&(e.functions=this._functions),e}static build(t){return new Be.Template(t.template,t.options||t.functions?{...t.options,functions:t.functions}:void 0)}isDynamic(){return!!this._template}static isTemplate(t){return t?!!t[Kx.symbols.template]:!1}refs(){if(!this._template)return;let t=[];for(let e of this._template)typeof e!="string"&&t.push(...e.refs);return t}resolve(t,e,n,r){return this._template&&this._template.length===1?this._part(this._template[0],t,e,n,r,{}):this.render(t,e,n,r)}_part(t,...e){return t.ref?t.ref.resolve(...e):t.formula.evaluate(e)}render(t,e,n,r,i={}){if(!this.isDynamic())return this.rendered;let s=[];for(let o of this._template)if(typeof o=="string")s.push(o);else{let a=this._part(o,t,e,n,r,i),u=Be.stringify(a,t,e,n,r,i);if(u!==void 0){let c=o.raw||(i.errors&&i.errors.escapeHtml)===!1?u:TP(u);s.push(Be.wrap(c,o.wrapped&&n.errors.wrap.label))}}return s.join("")}_ref(t,{raw:e,wrapped:n}){let r=[],i=o=>{let a=Vx.create(o,this._settings);return r.push(a),u=>{let c=a.resolve(...u);return c!==void 0?c:null}};try{let o=this._functions?{...Be.functions,...this._functions}:Be.functions;var s=new SP.Parser(t,{reference:i,functions:o,constants:Be.constants})}catch(o){throw o.message=`Invalid template variable "${t}" fails due to: ${o.message}`,o}if(s.single){if(s.single.type==="reference"){let o=r[0];return{ref:o,raw:e,refs:r,wrapped:n||o.type==="local"&&o.key==="label"}}return Be.stringify(s.single.value)}return{formula:s,raw:e,refs:r}}toString(){return this.source}};Be.Template.prototype[Kx.symbols.template]=!0;Be.Template.prototype.isImmutable=!0;Be.encode=function(t){return t.replace(/\\(\{+)/g,(e,n)=>Be.opens.slice(0,n.length)).replace(/\\(\}+)/g,(e,n)=>Be.closes.slice(0,n.length))};Be.decode=function(t){return t.replace(/\u0000/g,"{").replace(/\u0001/g,"}")};Be.split=function(t){let e=[],n="";for(let r=0;r<t.length;++r){let i=t[r];if(i==="{"){let s="";for(;r+1<t.length&&t[r+1]==="{";)s+="{",++r;e.push(n),n=s}else n+=i}return e.push(n),e};Be.wrap=function(t,e){return e?e.length===1?`${e}${t}${e}`:`${e[0]}${t}${e[1]}`:t};Be.stringify=function(t,e,n,r,i,s={}){let o=typeof t,a=r&&r.errors&&r.errors.wrap||{},u=!1;if(Vx.isRef(t)&&t.render&&(u=t.in,t=t.resolve(e,n,r,i,{in:t.in,...s})),t===null)return"null";if(o==="string")return Be.wrap(t,s.arrayItems&&a.string);if(o==="number"||o==="function"||o==="symbol")return t.toString();if(o!=="object")return JSON.stringify(t);if(t instanceof Date)return Be.Template.date(t,r);if(t instanceof Map){let l=[];for(let[d,p]of t.entries())l.push(`${d.toString()} -> ${p.toString()}`);t=l}if(!Array.isArray(t))return t.toString();let c=[];for(let l of t)c.push(Be.stringify(l,e,n,r,i,{arrayItems:!0,...s}));return Be.wrap(c.join(", "),!u&&a.array)};Be.constants={true:!0,false:!1,null:null,second:1e3,minute:60*1e3,hour:60*60*1e3,day:24*60*60*1e3};Be.functions={if(t,e,n){return t?e:n},length(t){return typeof t=="string"?t.length:!t||typeof t!="object"?null:Array.isArray(t)?t.length:Object.keys(t).length},msg(t){let[e,n,r,i,s]=this,o=s.messages;if(!o)return"";let a=Gx.template(e,o[0],t,n,r)||Gx.template(e,o[1],t,n,r);return a?a.render(e,n,r,i,s):""},number(t){return typeof t=="number"?t:typeof t=="string"?parseFloat(t):typeof t=="boolean"?t?1:0:t instanceof Date?t.getTime():null}}});var eo=g(Sa=>{"use strict";var Ji=Ie(),Yx=nn(),xn=bi();Sa.compile=function(t,e){if(typeof t=="string")return Ji(!e,"Cannot set single message string"),new xn(t);if(xn.isTemplate(t))return Ji(!e,"Cannot set single message template"),t;Ji(typeof t=="object"&&!Array.isArray(t),"Invalid message options"),e=e?Yx(e):{};for(let n in t){let r=t[n];if(n==="root"||xn.isTemplate(r)){e[n]=r;continue}if(typeof r=="string"){e[n]=new xn(r);continue}Ji(typeof r=="object"&&!Array.isArray(r),"Invalid message for",n);let i=n;e[i]=e[i]||{};for(n in r){let s=r[n];if(n==="root"||xn.isTemplate(s)){e[i][n]=s;continue}Ji(typeof s=="string","Invalid message for",n,"in",i),e[i][n]=new xn(s)}}return e};Sa.decompile=function(t){let e={};for(let n in t){let r=t[n];if(n==="root"){e.root=r;continue}if(xn.isTemplate(r)){e[n]=r.describe({compact:!0});continue}let i=n;e[i]={};for(n in r){let s=r[n];if(n==="root"){e[i].root=s;continue}e[i][n]=s.describe({compact:!0})}}return e};Sa.merge=function(t,e){if(!t)return Sa.compile(e);if(!e)return t;if(typeof e=="string")return new xn(e);if(xn.isTemplate(e))return e;let n=Yx(t);for(let r in e){let i=e[r];if(r==="root"||xn.isTemplate(i)){n[r]=i;continue}if(typeof i=="string"){n[r]=new xn(i);continue}Ji(typeof i=="object"&&!Array.isArray(i),"Invalid message for",r);let s=r;n[s]=n[s]||{};for(r in i){let o=i[r];if(r==="root"||xn.isTemplate(o)){n[s][r]=o;continue}Ji(typeof o=="string","Invalid message for",r,"in",s),n[s][r]=new xn(o)}}return n}});var Qe=g(Ze=>{"use strict";var _l=Ie(),kP=tm(),xP=Fx(),om,am,wP={isoDate:/^(?:[-+]\d{2})?(?:\d{4}(?!\d{2}\b))(?:(-?)(?:(?:0[1-9]|1[0-2])(?:\1(?:[12]\d|0[1-9]|3[01]))?|W(?:[0-4]\d|5[0-2])(?:-?[1-7])?|(?:00[1-9]|0[1-9]\d|[12]\d{2}|3(?:[0-5]\d|6[1-6])))(?![T]$|[T][\d]+Z$)(?:[T\s](?:(?:(?:[01]\d|2[0-3])(?:(:?)[0-5]\d)?|24\:?00)(?:[.,]\d+(?!:))?)(?:\2[0-5]\d(?:[.,]\d+)?)?(?:[Z]|(?:[+-])(?:[01]\d|2[0-3])(?::?[0-5]\d)?)?)?)?$/};Ze.version=xP.version;Ze.defaults={abortEarly:!0,allowUnknown:!1,artifacts:!1,cache:!0,context:null,convert:!0,dateFormat:"iso",errors:{escapeHtml:!1,label:"path",language:null,render:!0,stack:!1,wrap:{label:'"',array:"[]"}},externals:!0,messages:{},nonEnumerables:!1,noDefaults:!1,presence:"optional",skipFunctions:!1,stripUnknown:!1,warnings:!1};Ze.symbols={any:Symbol.for("@hapi/joi/schema"),arraySingle:Symbol("arraySingle"),deepDefault:Symbol("deepDefault"),errors:Symbol("errors"),literal:Symbol("literal"),override:Symbol("override"),parent:Symbol("parent"),prefs:Symbol("prefs"),ref:Symbol("ref"),template:Symbol("template"),values:Symbol("values")};Ze.assertOptions=function(t,e,n="Options"){_l(t&&typeof t=="object"&&!Array.isArray(t),"Options must be of type object");let r=Object.keys(t).filter(i=>!e.includes(i));_l(r.length===0,`${n} contain unknown keys: ${r}`)};Ze.checkPreferences=function(t){am=am||yl();let e=am.preferences.validate(t);if(e.error)throw new kP([e.error.details[0].message])};Ze.compare=function(t,e,n){switch(n){case"=":return t===e;case">":return t>e;case"<":return t<e;case">=":return t>=e;case"<=":return t<=e}};Ze.default=function(t,e){return t===void 0?e:t};Ze.isIsoDate=function(t){return wP.isoDate.test(t)};Ze.isNumber=function(t){return typeof t=="number"&&!isNaN(t)};Ze.isResolvable=function(t){return t?t[Ze.symbols.ref]||t[Ze.symbols.template]:!1};Ze.isSchema=function(t,e={}){let n=t&&t[Ze.symbols.any];return n?(_l(e.legacy||n.version===Ze.version,"Cannot mix different versions of joi schemas"),!0):!1};Ze.isValues=function(t){return t[Ze.symbols.values]};Ze.limit=function(t){return Number.isSafeInteger(t)&&t>=0};Ze.preferences=function(t,e){om=om||eo(),t=t||{},e=e||{};let n=Object.assign({},t,e);return e.errors&&t.errors&&(n.errors=Object.assign({},t.errors,e.errors),n.errors.wrap=Object.assign({},t.errors.wrap,e.errors.wrap)),e.messages&&(n.messages=om.compile(e.messages,t.messages)),delete n[Ze.symbols.prefs],n};Ze.tryWithPath=function(t,e,n={}){try{return t()}catch(r){throw r.path!==void 0?r.path=e+"."+r.path:r.path=e,n.append&&(r.message=`${r.message} (${r.path})`),r}};Ze.validateArg=function(t,e,{assert:n,message:r}){if(Ze.isSchema(n)){let i=n.validate(t);return i.error?i.error.message:void 0}else if(!n(t))return e?`${e} ${r}`:r};Ze.verifyFlat=function(t,e){for(let n of t)_l(!Array.isArray(n),"Method no longer accepts array arguments:",e)}});var um=g(Jx=>{"use strict";var EP=Ie(),AP=nn(),OP=Qe(),to={max:1e3,supported:new Set(["undefined","boolean","number","string"])};Jx.provider={provision(t){return new to.Cache(t)}};to.Cache=class{constructor(t={}){OP.assertOptions(t,["max"]),EP(t.max===void 0||t.max&&t.max>0&&isFinite(t.max),"Invalid max cache size"),this._max=t.max||to.max,this._map=new Map,this._list=new to.List}get length(){return this._map.size}set(t,e){if(t!==null&&!to.supported.has(typeof t))return;let n=this._map.get(t);if(n){n.value=e,this._list.first(n);return}n=this._list.unshift({key:t,value:e}),this._map.set(t,n),this._compact()}get(t){let e=this._map.get(t);if(e)return this._list.first(e),AP(e.value)}_compact(){if(this._map.size>this._max){let t=this._list.pop();this._map.delete(t.key)}}};to.List=class{constructor(){this.tail=null,this.head=null}unshift(t){return t.next=null,t.prev=this.head,this.head&&(this.head.next=t),this.head=t,this.tail||(this.tail=t),t}first(t){t!==this.head&&(this._remove(t),this.unshift(t))}pop(){return this._remove(this.tail)}_remove(t){let{next:e,prev:n}=t;return e.prev=n,n&&(n.next=e),t===this.tail&&(this.tail=e),t.prev=null,t.next=null,t}}});var Qi=g(Br=>{"use strict";var ft=Ie(),wn=Qe(),no=$r(),$n={};Br.schema=function(t,e,n={}){wn.assertOptions(n,["appendPath","override"]);try{return $n.schema(t,e,n)}catch(r){throw n.appendPath&&r.path!==void 0&&(r.message=`${r.message} (${r.path})`),r}};$n.schema=function(t,e,n){ft(e!==void 0,"Invalid undefined schema"),Array.isArray(e)&&(ft(e.length,"Invalid empty array schema"),e.length===1&&(e=e[0]));let r=(i,...s)=>n.override!==!1?i.valid(t.override,...s):i.valid(...s);if($n.simple(e))return r(t,e);if(typeof e=="function")return t.custom(e);if(ft(typeof e=="object","Invalid schema content:",typeof e),wn.isResolvable(e))return r(t,e);if(wn.isSchema(e))return e;if(Array.isArray(e)){for(let i of e)if(!$n.simple(i))return t.alternatives().try(...e);return r(t,...e)}return e instanceof RegExp?t.string().regex(e):e instanceof Date?r(t.date(),e):(ft(Object.getPrototypeOf(e)===Object.getPrototypeOf({}),"Schema can only contain plain objects"),t.object().keys(e))};Br.ref=function(t,e){return no.isRef(t)?t:no.create(t,e)};Br.compile=function(t,e,n={}){wn.assertOptions(n,["legacy"]);let r=e&&e[wn.symbols.any];if(r)return ft(n.legacy||r.version===wn.version,"Cannot mix different versions of joi schemas:",r.version,wn.version),e;if(typeof e!="object"||!n.legacy)return Br.schema(t,e,{appendPath:!0});let i=$n.walk(e);return i?i.compile(i.root,e):Br.schema(t,e,{appendPath:!0})};$n.walk=function(t){if(typeof t!="object")return null;if(Array.isArray(t)){for(let n of t){let r=$n.walk(n);if(r)return r}return null}let e=t[wn.symbols.any];if(e)return{root:t[e.root],compile:e.compile};ft(Object.getPrototypeOf(t)===Object.getPrototypeOf({}),"Schema can only contain plain objects");for(let n in t){let r=$n.walk(t[n]);if(r)return r}return null};$n.simple=function(t){return t===null||["boolean","string","number"].includes(typeof t)};Br.when=function(t,e,n){if(n===void 0&&(ft(e&&typeof e=="object","Missing options"),n=e,e=no.create(".")),Array.isArray(n)&&(n={switch:n}),wn.assertOptions(n,["is","not","then","otherwise","switch","break"]),wn.isSchema(e))return ft(n.is===void 0,'"is" can not be used with a schema condition'),ft(n.not===void 0,'"not" can not be used with a schema condition'),ft(n.switch===void 0,'"switch" can not be used with a schema condition'),$n.condition(t,{is:e,then:n.then,otherwise:n.otherwise,break:n.break});if(ft(no.isRef(e)||typeof e=="string","Invalid condition:",e),ft(n.not===void 0||n.is===void 0,'Cannot combine "is" with "not"'),n.switch===void 0){let i=n;n.not!==void 0&&(i={is:n.not,then:n.otherwise,otherwise:n.then,break:n.break});let s=i.is!==void 0?t.$_compile(i.is):t.$_root.invalid(null,!1,0,"").required();return ft(i.then!==void 0||i.otherwise!==void 0,'options must have at least one of "then", "otherwise", or "switch"'),ft(i.break===void 0||i.then===void 0||i.otherwise===void 0,"Cannot specify then, otherwise, and break all together"),n.is!==void 0&&!no.isRef(n.is)&&!wn.isSchema(n.is)&&(s=s.required()),$n.condition(t,{ref:Br.ref(e),is:s,then:i.then,otherwise:i.otherwise,break:i.break})}ft(Array.isArray(n.switch),'"switch" must be an array'),ft(n.is===void 0,'Cannot combine "switch" with "is"'),ft(n.not===void 0,'Cannot combine "switch" with "not"'),ft(n.then===void 0,'Cannot combine "switch" with "then"');let r={ref:Br.ref(e),switch:[],break:n.break};for(let i=0;i<n.switch.length;++i){let s=n.switch[i],o=i===n.switch.length-1;wn.assertOptions(s,o?["is","then","otherwise"]:["is","then"]),ft(s.is!==void 0,'Switch statement missing "is"'),ft(s.then!==void 0,'Switch statement missing "then"');let a={is:t.$_compile(s.is),then:t.$_compile(s.then)};if(!no.isRef(s.is)&&!wn.isSchema(s.is)&&(a.is=a.is.required()),o){ft(n.otherwise===void 0||s.otherwise===void 0,'Cannot specify "otherwise" inside and outside a "switch"');let u=n.otherwise!==void 0?n.otherwise:s.otherwise;u!==void 0&&(ft(r.break===void 0,"Cannot specify both otherwise and break"),a.otherwise=t.$_compile(u))}r.switch.push(a)}return r};$n.condition=function(t,e){for(let n of["then","otherwise"])e[n]===void 0?delete e[n]:e[n]=t.$_compile(e[n]);return e}});var cm=g(Zx=>{"use strict";var vi=Ie(),CP=nn(),Qx=Qe(),RP=eo(),vr={};Zx.type=function(t,e){let n=Object.getPrototypeOf(t),r=CP(n),i=t._assign(Object.create(r)),s=Object.assign({},e);delete s.base,r._definition=s;let o=n._definition||{};s.messages=RP.merge(o.messages,s.messages),s.properties=Object.assign({},o.properties,s.properties),i.type=s.type,s.flags=Object.assign({},o.flags,s.flags);let a=Object.assign({},o.terms);if(s.terms)for(let d in s.terms){let p=s.terms[d];vi(i.$_terms[d]===void 0,"Invalid term override for",s.type,d),i.$_terms[d]=p.init,a[d]=p}s.terms=a,s.args||(s.args=o.args),s.prepare=vr.prepare(s.prepare,o.prepare),s.coerce&&(typeof s.coerce=="function"&&(s.coerce={method:s.coerce}),s.coerce.from&&!Array.isArray(s.coerce.from)&&(s.coerce={method:s.coerce.method,from:[].concat(s.coerce.from)})),s.coerce=vr.coerce(s.coerce,o.coerce),s.validate=vr.validate(s.validate,o.validate);let u=Object.assign({},o.rules);if(s.rules)for(let d in s.rules){let p=s.rules[d];vi(typeof p=="object","Invalid rule definition for",s.type,d);let b=p.method;if(b===void 0&&(b=function(){return this.$_addRule(d)}),b&&(vi(!r[d],"Rule conflict in",s.type,d),r[d]=b),vi(!u[d],"Rule conflict in",s.type,d),u[d]=p,p.alias){let _=[].concat(p.alias);for(let E of _)r[E]=p.method}p.args&&(p.argsByName=new Map,p.args=p.args.map(_=>(typeof _=="string"&&(_={name:_}),vi(!p.argsByName.has(_.name),"Duplicated argument name",_.name),Qx.isSchema(_.assert)&&(_.assert=_.assert.strict().label(_.name)),p.argsByName.set(_.name,_),_)))}s.rules=u;let c=Object.assign({},o.modifiers);if(s.modifiers)for(let d in s.modifiers){vi(!r[d],"Rule conflict in",s.type,d);let p=s.modifiers[d];vi(typeof p=="function","Invalid modifier definition for",s.type,d);let b=function(_){return this.rule({[d]:_})};r[d]=b,c[d]=p}if(s.modifiers=c,s.overrides){r._super=n,i.$_super={};for(let d in s.overrides)vi(n[d],"Cannot override missing",d),s.overrides[d][Qx.symbols.parent]=n[d],i.$_super[d]=n[d].bind(i);Object.assign(r,s.overrides)}s.cast=Object.assign({},o.cast,s.cast);let l=Object.assign({},o.manifest,s.manifest);return l.build=vr.build(s.manifest&&s.manifest.build,o.manifest&&o.manifest.build),s.manifest=l,s.rebuild=vr.rebuild(s.rebuild,o.rebuild),i};vr.build=function(t,e){return!t||!e?t||e:function(n,r){return e(t(n,r),r)}};vr.coerce=function(t,e){return!t||!e?t||e:{from:t.from&&e.from?[...new Set([...t.from,...e.from])]:null,method(n,r){let i;if((!e.from||e.from.includes(typeof n))&&(i=e.method(n,r),i)){if(i.errors||i.value===void 0)return i;n=i.value}if(!t.from||t.from.includes(typeof n)){let s=t.method(n,r);if(s)return s}return i}}};vr.prepare=function(t,e){return!t||!e?t||e:function(n,r){let i=t(n,r);if(i){if(i.errors||i.value===void 0)return i;n=i.value}return e(n,r)||i}};vr.rebuild=function(t,e){return!t||!e?t||e:function(n){e(n),t(n)}};vr.validate=function(t,e){return!t||!e?t||e:function(n,r){let i=e(n,r);if(i){if(i.errors&&(!Array.isArray(i.errors)||i.errors.length))return i;n=i.value}return t(n,r)||i}}});var fm=g(dm=>{"use strict";var _r=Ie(),Tl=nn(),Zi=Qe(),PP=eo(),ew=$r(),DP=bi(),lm,rn={};dm.describe=function(t){let e=t._definition,n={type:t.type,flags:{},rules:[]};for(let r in t._flags)r[0]!=="_"&&(n.flags[r]=rn.describe(t._flags[r]));Object.keys(n.flags).length||delete n.flags,t._preferences&&(n.preferences=Tl(t._preferences,{shallow:["messages"]}),delete n.preferences[Zi.symbols.prefs],n.preferences.messages&&(n.preferences.messages=PP.decompile(n.preferences.messages))),t._valids&&(n.allow=t._valids.describe()),t._invalids&&(n.invalid=t._invalids.describe());for(let r of t._rules){if(e.rules[r.name].manifest===!1)continue;let s={name:r.name};for(let o in e.modifiers)r[o]!==void 0&&(s[o]=rn.describe(r[o]));if(r.args){s.args={};for(let o in r.args){let a=r.args[o];o==="options"&&!Object.keys(a).length||(s.args[o]=rn.describe(a,{assign:o}))}Object.keys(s.args).length||delete s.args}n.rules.push(s)}n.rules.length||delete n.rules;for(let r in t.$_terms){if(r[0]==="_")continue;_r(!n[r],"Cannot describe schema due to internal name conflict with",r);let i=t.$_terms[r];if(!i)continue;if(i instanceof Map){i.size&&(n[r]=[...i.entries()]);continue}if(Zi.isValues(i)){n[r]=i.describe();continue}_r(e.terms[r],"Term",r,"missing configuration");let s=e.terms[r].manifest,o=typeof s=="object";if(!i.length&&!o)continue;let a=[];for(let u of i)a.push(rn.describe(u));if(o){let{from:u,to:c}=s.mapped;n[r]={};for(let l of a)n[r][l[c]]=l[u];continue}if(s==="single"){_r(a.length===1,"Term",r,"contains more than one item"),n[r]=a[0];continue}n[r]=a}return rn.validate(t.$_root,n),n};rn.describe=function(t,e={}){if(Array.isArray(t))return t.map(rn.describe);if(t===Zi.symbols.deepDefault)return{special:"deep"};if(typeof t!="object"||t===null)return t;if(e.assign==="options")return Tl(t);if(Buffer&&Buffer.isBuffer(t))return{buffer:t.toString("binary")};if(t instanceof Date)return t.toISOString();if(t instanceof Error)return t;if(t instanceof RegExp)return e.assign==="regex"?t.toString():{regex:t.toString()};if(t[Zi.symbols.literal])return{function:t.literal};if(typeof t.describe=="function")return e.assign==="ref"?t.describe().ref:t.describe();let n={};for(let r in t){let i=t[r];i!==void 0&&(n[r]=rn.describe(i,{assign:r}))}return n};dm.build=function(t,e){return new rn.Builder(t).parse(e)};rn.Builder=class{constructor(t){this.joi=t}parse(t){rn.validate(this.joi,t);let e=this.joi[t.type]()._bare(),n=e._definition;if(t.flags)for(let i in t.flags){let s=n.flags[i]&&n.flags[i].setter||i;_r(typeof e[s]=="function","Invalid flag",i,"for type",t.type),e=e[s](this.build(t.flags[i]))}if(t.preferences&&(e=e.preferences(this.build(t.preferences))),t.allow&&(e=e.allow(...this.build(t.allow))),t.invalid&&(e=e.invalid(...this.build(t.invalid))),t.rules)for(let i of t.rules){_r(typeof e[i.name]=="function","Invalid rule",i.name,"for type",t.type);let s=[];if(i.args){let a={};for(let l in i.args)a[l]=this.build(i.args[l],{assign:l});let u=Object.keys(a),c=n.rules[i.name].args;if(c){_r(u.length<=c.length,"Invalid number of arguments for",t.type,i.name,"(expected up to",c.length,", found",u.length,")");for(let{name:l}of c)s.push(a[l])}else _r(u.length===1,"Invalid number of arguments for",t.type,i.name,"(expected up to 1, found",u.length,")"),s.push(a[u[0]])}e=e[i.name](...s);let o={};for(let a in n.modifiers)i[a]!==void 0&&(o[a]=this.build(i[a]));Object.keys(o).length&&(e=e.rule(o))}let r={};for(let i in t){if(["allow","flags","invalid","whens","preferences","rules","type"].includes(i))continue;_r(n.terms[i],"Term",i,"missing configuration");let s=n.terms[i].manifest;if(s==="schema"){r[i]=t[i].map(o=>this.parse(o));continue}if(s==="values"){r[i]=t[i].map(o=>this.build(o));continue}if(s==="single"){r[i]=this.build(t[i]);continue}if(typeof s=="object"){r[i]={};for(let o in t[i]){let a=t[i][o];r[i][o]=this.parse(a)}continue}r[i]=this.build(t[i])}return t.whens&&(r.whens=t.whens.map(i=>this.build(i))),e=n.manifest.build(e,r),e.$_temp.ruleset=!1,e}build(t,e={}){if(t===null)return null;if(Array.isArray(t))return t.map(r=>this.build(r));if(t instanceof Error)return t;if(e.assign==="options")return Tl(t);if(e.assign==="regex")return rn.regex(t);if(e.assign==="ref")return ew.build(t);if(typeof t!="object")return t;if(Object.keys(t).length===1){if(t.buffer)return _r(Buffer,"Buffers are not supported"),Buffer&&Buffer.from(t.buffer,"binary");if(t.function)return{[Zi.symbols.literal]:!0,literal:t.function};if(t.override)return Zi.symbols.override;if(t.ref)return ew.build(t.ref);if(t.regex)return rn.regex(t.regex);if(t.special)return _r(["deep"].includes(t.special),"Unknown special value",t.special),Zi.symbols.deepDefault;if(t.value)return Tl(t.value)}if(t.type)return this.parse(t);if(t.template)return DP.build(t);let n={};for(let r in t)n[r]=this.build(t[r],{assign:r});return n}};rn.regex=function(t){let e=t.lastIndexOf("/"),n=t.slice(1,e),r=t.slice(e+1);return new RegExp(n,r)};rn.validate=function(t,e){lm=lm||yl(),t.assert(e,lm.description)}});var ka=g((VB,tw)=>{"use strict";var Tr=rm(),zt={mismatched:null};tw.exports=function(t,e,n){return n=Object.assign({prototype:!0},n),!!zt.isDeepEqual(t,e,n,[])};zt.isDeepEqual=function(t,e,n,r){if(t===e)return t!==0||1/t===1/e;let i=typeof t;if(i!==typeof e||t===null||e===null)return!1;if(i==="function"){if(!n.deepFunction||t.toString()!==e.toString())return!1}else if(i!=="object")return t!==t&&e!==e;let s=zt.getSharedType(t,e,!!n.prototype);switch(s){case Tr.buffer:return Buffer&&Buffer.prototype.equals.call(t,e);case Tr.promise:return t===e;case Tr.regex:return t.toString()===e.toString();case zt.mismatched:return!1}for(let o=r.length-1;o>=0;--o)if(r[o].isSame(t,e))return!0;r.push(new zt.SeenEntry(t,e));try{return!!zt.isDeepEqualObj(s,t,e,n,r)}finally{r.pop()}};zt.getSharedType=function(t,e,n){if(n)return Object.getPrototypeOf(t)!==Object.getPrototypeOf(e)?zt.mismatched:Tr.getInternalProto(t);let r=Tr.getInternalProto(t);return r!==Tr.getInternalProto(e)?zt.mismatched:r};zt.valueOf=function(t){let e=t.valueOf;if(e===void 0)return t;try{return e.call(t)}catch(n){return n}};zt.hasOwnEnumerableProperty=function(t,e){return Object.prototype.propertyIsEnumerable.call(t,e)};zt.isSetSimpleEqual=function(t,e){for(let n of Set.prototype.values.call(t))if(!Set.prototype.has.call(e,n))return!1;return!0};zt.isDeepEqualObj=function(t,e,n,r,i){let{isDeepEqual:s,valueOf:o,hasOwnEnumerableProperty:a}=zt,{keys:u,getOwnPropertySymbols:c}=Object;if(t===Tr.array)if(r.part){for(let _ of e)for(let E of n)if(s(_,E,r,i))return!0}else{if(e.length!==n.length)return!1;for(let _=0;_<e.length;++_)if(!s(e[_],n[_],r,i))return!1;return!0}else if(t===Tr.set){if(e.size!==n.size)return!1;if(!zt.isSetSimpleEqual(e,n)){let _=new Set(Set.prototype.values.call(n));for(let E of Set.prototype.values.call(e)){if(_.delete(E))continue;let L=!1;for(let M of _)if(s(E,M,r,i)){_.delete(M),L=!0;break}if(!L)return!1}}}else if(t===Tr.map){if(e.size!==n.size)return!1;for(let[_,E]of Map.prototype.entries.call(e))if(E===void 0&&!Map.prototype.has.call(n,_)||!s(E,Map.prototype.get.call(n,_),r,i))return!1}else if(t===Tr.error&&(e.name!==n.name||e.message!==n.message))return!1;let l=o(e),d=o(n);if((e!==l||n!==d)&&!s(l,d,r,i))return!1;let p=u(e);if(!r.part&&p.length!==u(n).length&&!r.skip)return!1;let b=0;for(let _ of p){if(r.skip&&r.skip.includes(_)){n[_]===void 0&&++b;continue}if(!a(n,_)||!s(e[_],n[_],r,i))return!1}if(!r.part&&p.length-b!==u(n).length)return!1;if(r.symbols!==!1){let _=c(e),E=new Set(c(n));for(let L of _){if(!r.skip||!r.skip.includes(L)){if(a(e,L)){if(!a(n,L)||!s(e[L],n[L],r,i))return!1}else if(a(n,L))return!1}E.delete(L)}for(let L of E)if(a(n,L))return!1}return!0};zt.SeenEntry=class{constructor(t,e){this.obj=t,this.ref=e}isSame(t,e){return this.obj===t&&this.ref===e}}});var rw=g(nw=>{"use strict";nw.location=function(t=0){let e=Error.prepareStackTrace;Error.prepareStackTrace=(i,s)=>s;let n={};Error.captureStackTrace(n,this);let r=n.stack[t+1];return Error.prepareStackTrace=e,{filename:r.getFileName(),line:r.getLineNumber()}}});var hm=g(pm=>{"use strict";var iw=ka(),sw=rw(),IP=Fr(),Xt={codes:{error:1,pass:2,full:3},labels:{0:"never used",1:"always error",2:"always pass"}};pm.setup=function(t){let e=function(){return t._tracer=t._tracer||new Xt.Tracer,t._tracer};t.trace=e,t[Symbol.for("@hapi/lab/coverage/initialize")]=e,t.untrace=()=>{t._tracer=null}};pm.location=function(t){return t.$_setFlag("_tracerLocation",sw.location(2))};Xt.Tracer=class{constructor(){this.name="Joi",this._schemas=new Map}_register(t){let e=this._schemas.get(t);if(e)return e.store;let n=new Xt.Store(t),{filename:r,line:i}=t._flags._tracerLocation||sw.location(5);return this._schemas.set(t,{filename:r,line:i,store:n}),n}_combine(t,e){for(let{store:n}of this._schemas.values())n._combine(t,e)}report(t){let e=[];for(let{filename:n,line:r,store:i}of this._schemas.values()){if(t&&t!==n)continue;let s=[],o=[];for(let[a,u]of i._sources.entries()){if(Xt.sub(u.paths,o))continue;if(!u.entry){s.push({status:"never reached",paths:[...u.paths]}),o.push(...u.paths);continue}for(let l of["valid","invalid"]){let d=a[`_${l}s`];if(!d)continue;let p=new Set(d._values),b=new Set(d._refs);for(let{value:_,ref:E}of u[l])p.delete(_),b.delete(E);(p.size||b.size)&&s.push({status:[...p,...[...b].map(_=>_.display)],rule:`${l}s`})}let c=a._rules.map(l=>l.name);for(let l of["default","failover"])a._flags[l]!==void 0&&c.push(l);for(let l of c){let d=Xt.labels[u.rule[l]||0];if(d){let p={rule:l,status:d};u.paths.size&&(p.paths=[...u.paths]),s.push(p)}}}s.length&&e.push({filename:n,line:r,missing:s,severity:"error",message:`Schema missing tests for ${s.map(Xt.message).join(", ")}`})}return e.length?e:null}};Xt.Store=class{constructor(t){this.active=!0,this._sources=new Map,this._combos=new Map,this._scan(t)}debug(t,e,n,r){t.mainstay.debug&&t.mainstay.debug.push({type:e,name:n,result:r,path:t.path})}entry(t,e){Xt.debug(e,{type:"entry"}),this._record(t,n=>{n.entry=!0})}filter(t,e,n,r){Xt.debug(e,{type:n,...r}),this._record(t,i=>{i[n].add(r)})}log(t,e,n,r,i){Xt.debug(e,{type:n,name:r,result:i==="full"?"pass":i}),this._record(t,s=>{s[n][r]=s[n][r]||0,s[n][r]|=Xt.codes[i]})}resolve(t,e,n){if(!t.mainstay.debug)return;let r={type:"resolve",ref:e.display,to:n,path:t.path};t.mainstay.debug.push(r)}value(t,e,n,r,i){if(!t.mainstay.debug||iw(n,r))return;let s={type:"value",by:e,from:n,to:r,path:t.path};i&&(s.name=i),t.mainstay.debug.push(s)}_record(t,e){let n=this._sources.get(t);if(n){e(n);return}let r=this._combos.get(t);for(let i of r)this._record(i,e)}_scan(t,e){let n=e||[],r=this._sources.get(t);r||(r={paths:new Set,entry:!1,rule:{},valid:new Set,invalid:new Set},this._sources.set(t,r)),n.length&&r.paths.add(n);let i=(s,o)=>{let a=Xt.id(s,o);this._scan(s,n.concat(a))};t.$_modify({each:i,ref:!1})}_combine(t,e){this._combos.set(t,e)}};Xt.message=function(t){return`${t.paths?IP.path(t.paths[0])+(t.rule?":":""):""}${t.rule||""} (${t.status})`};Xt.id=function(t,{source:e,name:n,path:r,key:i}){return t._flags.id?t._flags.id:i||(n=`@${n}`,e==="terms"?[n,r[Math.min(r.length-1,1)]]:n)};Xt.sub=function(t,e){for(let n of t)for(let r of e)if(iw(n.slice(0,r.length),r))return!0;return!1};Xt.debug=function(t,e){t.mainstay.debug&&(e.path=t.debug?[...t.path,t.debug]:t.path,t.mainstay.debug.push(e))}});var Sl=g((ZB,uw)=>{"use strict";var gm=Ie(),ow=nn(),MP=im(),aw={};uw.exports=aw.merge=function(t,e,n){if(gm(t&&typeof t=="object","Invalid target value: must be an object"),gm(e==null||typeof e=="object","Invalid source value: must be null, undefined, or an object"),!e)return t;if(n=Object.assign({nullOverride:!0,mergeArrays:!0},n),Array.isArray(e)){gm(Array.isArray(t),"Cannot merge array onto an object"),n.mergeArrays||(t.length=0);for(let i=0;i<e.length;++i)t.push(ow(e[i],{symbols:n.symbols}));return t}let r=MP.keys(e,n);for(let i=0;i<r.length;++i){let s=r[i];if(s==="__proto__"||!Object.prototype.propertyIsEnumerable.call(e,s))continue;let o=e[s];if(o&&typeof o=="object"){if(t[s]===o)continue;!t[s]||typeof t[s]!="object"||Array.isArray(t[s])!==Array.isArray(o)||o instanceof Date||Buffer&&Buffer.isBuffer(o)||o instanceof RegExp?t[s]=ow(o,{symbols:n.symbols}):aw.merge(t[s],o,n)}else(o!=null||n.nullOverride)&&(t[s]=o)}return t}});var cw=g(kl=>{"use strict";var Ur=Ie(),mm=Qe(),LP=$r(),Sr={};kl.Ids=Sr.Ids=class{constructor(){this._byId=new Map,this._byKey=new Map,this._schemaChain=!1}clone(){let t=new Sr.Ids;return t._byId=new Map(this._byId),t._byKey=new Map(this._byKey),t._schemaChain=this._schemaChain,t}concat(t){t._schemaChain&&(this._schemaChain=!0);for(let[e,n]of t._byId.entries())Ur(!this._byKey.has(e),"Schema id conflicts with existing key:",e),this._byId.set(e,n);for(let[e,n]of t._byKey.entries())Ur(!this._byId.has(e),"Schema key conflicts with existing id:",e),this._byKey.set(e,n)}fork(t,e,n){let r=this._collect(t);r.push({schema:n});let i=r.shift(),s={id:i.id,schema:e(i.schema)};Ur(mm.isSchema(s.schema),"adjuster function failed to return a joi schema type");for(let o of r)s={id:o.id,schema:Sr.fork(o.schema,s.id,s.schema)};return s.schema}labels(t,e=[]){let n=t[0],r=this._get(n);if(!r)return[...e,...t].join(".");let i=t.slice(1);return e=[...e,r.schema._flags.label||n],i.length?r.schema._ids.labels(i,e):e.join(".")}reach(t,e=[]){let n=t[0],r=this._get(n);Ur(r,"Schema does not contain path",[...e,...t].join("."));let i=t.slice(1);return i.length?r.schema._ids.reach(i,[...e,n]):r.schema}register(t,{key:e}={}){if(!t||!mm.isSchema(t))return;(t.$_property("schemaChain")||t._ids._schemaChain)&&(this._schemaChain=!0);let n=t._flags.id;if(n){let r=this._byId.get(n);Ur(!r||r.schema===t,"Cannot add different schemas with the same id:",n),Ur(!this._byKey.has(n),"Schema id conflicts with existing key:",n),this._byId.set(n,{schema:t,id:n})}e&&(Ur(!this._byKey.has(e),"Schema already contains key:",e),Ur(!this._byId.has(e),"Schema key conflicts with existing id:",e),this._byKey.set(e,{schema:t,id:e}))}reset(){this._byId=new Map,this._byKey=new Map,this._schemaChain=!1}_collect(t,e=[],n=[]){let r=t[0],i=this._get(r);Ur(i,"Schema does not contain path",[...e,...t].join(".")),n=[i,...n];let s=t.slice(1);return s.length?i.schema._ids._collect(s,[...e,r],n):n}_get(t){return this._byId.get(t)||this._byKey.get(t)}};Sr.fork=function(t,e,n){let r=(s,{key:o})=>{if(e===(s._flags.id||o))return n},i=kl.schema(t,{each:r,ref:!1});return i?i.$_mutateRebuild():t};kl.schema=function(t,e){let n;for(let r in t._flags){if(r[0]==="_")continue;let i=Sr.scan(t._flags[r],{source:"flags",name:r},e);i!==void 0&&(n=n||t.clone(),n._flags[r]=i)}for(let r=0;r<t._rules.length;++r){let i=t._rules[r],s=Sr.scan(i.args,{source:"rules",name:i.name},e);if(s!==void 0){n=n||t.clone();let o=Object.assign({},i);o.args=s,n._rules[r]=o,n._singleRules.get(i.name)===i&&n._singleRules.set(i.name,o)}}for(let r in t.$_terms){if(r[0]==="_")continue;let i=Sr.scan(t.$_terms[r],{source:"terms",name:r},e);i!==void 0&&(n=n||t.clone(),n.$_terms[r]=i)}return n};Sr.scan=function(t,e,n,r,i){let s=r||[];if(t===null||typeof t!="object")return;let o;if(Array.isArray(t)){for(let a=0;a<t.length;++a){let u=e.source==="terms"&&e.name==="keys"&&t[a].key,c=Sr.scan(t[a],e,n,[a,...s],u);c!==void 0&&(o=o||t.slice(),o[a]=c)}return o}if(n.schema!==!1&&mm.isSchema(t)||n.ref!==!1&&LP.isRef(t)){let a=n.each(t,{...e,path:s,key:i});return a===t?void 0:a}for(let a in t){if(a[0]==="_")continue;let u=Sr.scan(t[a],e,n,[a,...s],i);u!==void 0&&(o=o||Object.assign({},t),o[a]=u)}return o}});var dw=g((n5,lw)=>{"use strict";lw.exports=function(){}});var hw=g((r5,pw)=>{"use strict";var NP=nn(),fw=Xi(),qP=Qe(),kr={value:Symbol("value")};pw.exports=kr.State=class{constructor(t,e,n){this.path=t,this.ancestors=e,this.mainstay=n.mainstay,this.schemas=n.schemas,this.debug=null}localize(t,e=null,n=null){let r=new kr.State(t,e,this);return n&&r.schemas&&(r.schemas=[kr.schemas(n),...r.schemas]),r}nest(t,e){let n=new kr.State(this.path,this.ancestors,this);return n.schemas=n.schemas&&[kr.schemas(t),...n.schemas],n.debug=e,n}shadow(t,e){this.mainstay.shadow=this.mainstay.shadow||new kr.Shadow,this.mainstay.shadow.set(this.path,t,e)}snapshot(){this.mainstay.shadow&&(this._snapshot=NP(this.mainstay.shadow.node(this.path))),this.mainstay.snapshot()}restore(){this.mainstay.shadow&&(this.mainstay.shadow.override(this.path,this._snapshot),this._snapshot=void 0),this.mainstay.restore()}commit(){this.mainstay.shadow&&(this.mainstay.shadow.override(this.path,this._snapshot),this._snapshot=void 0),this.mainstay.commit()}};kr.schemas=function(t){return qP.isSchema(t)?{schema:t}:t};kr.Shadow=class{constructor(){this._values=null}set(t,e,n){if(!t.length||n==="strip"&&typeof t[t.length-1]=="number")return;this._values=this._values||new Map;let r=this._values;for(let i=0;i<t.length;++i){let s=t[i],o=r.get(s);o||(o=new Map,r.set(s,o)),r=o}r[kr.value]=e}get(t){let e=this.node(t);if(e)return e[kr.value]}node(t){if(this._values)return fw(this._values,t,{iterables:!0})}override(t,e){if(!this._values)return;let n=t.slice(0,-1),r=t[t.length-1],i=fw(this._values,n,{iterables:!0});if(e){i.set(r,e);return}i&&i.delete(r)}}});var mw=g(wa=>{"use strict";var xa=Ie(),gw=nn(),ro=dw(),jP=Xi(),At=Qe(),_i=Fr(),FP=hw(),Se={result:Symbol("result")};wa.entry=function(t,e,n){let r=At.defaults;n&&(xa(n.warnings===void 0,"Cannot override warnings preference in synchronous validation"),xa(n.artifacts===void 0,"Cannot override artifacts preference in synchronous validation"),r=At.preferences(At.defaults,n));let i=Se.entry(t,e,r);xa(!i.mainstay.externals.length,"Schema with external rules must use validateAsync()");let s={value:i.value};return i.error&&(s.error=i.error),i.mainstay.warnings.length&&(s.warning=_i.details(i.mainstay.warnings)),i.mainstay.debug&&(s.debug=i.mainstay.debug),i.mainstay.artifacts&&(s.artifacts=i.mainstay.artifacts),s};wa.entryAsync=async function(t,e,n){let r=At.defaults;n&&(r=At.preferences(At.defaults,n));let i=Se.entry(t,e,r),s=i.mainstay;if(i.error)throw s.debug&&(i.error.debug=s.debug),i.error;if(s.externals.length){let a=i.value,u=[];for(let c of s.externals){let l=c.state.path,d=c.schema.type==="link"?s.links.get(c.schema):null,p=a,b,_,E=l.length?[a]:[],L=l.length?jP(t,l):t;if(l.length){b=l[l.length-1];let M=a;for(let x of l.slice(0,-1))M=M[x],E.unshift(M);_=E[0],p=_[b]}try{let M=(k,v)=>(d||c.schema).$_createError(k,p,v,c.state,r),x=await c.method(p,{schema:c.schema,linked:d,state:c.state,prefs:n,original:L,error:M,errorsArray:Se.errorsArray,warn:(k,v)=>s.warnings.push((d||c.schema).$_createError(k,p,v,c.state,r)),message:(k,v)=>(d||c.schema).$_createError("external",p,v,c.state,r,{messages:k})});if(x===void 0||x===p)continue;if(x instanceof _i.Report){if(s.tracer.log(c.schema,c.state,"rule","external","error"),u.push(x),r.abortEarly)break;continue}if(Array.isArray(x)&&x[At.symbols.errors]){if(s.tracer.log(c.schema,c.state,"rule","external","error"),u.push(...x),r.abortEarly)break;continue}_?(s.tracer.value(c.state,"rule",p,x,"external"),_[b]=x):(s.tracer.value(c.state,"rule",a,x,"external"),a=x)}catch(M){throw r.errors.label&&(M.message+=` (${c.label})`),M}}if(i.value=a,u.length)throw i.error=_i.process(u,t,r),s.debug&&(i.error.debug=s.debug),i.error}if(!r.warnings&&!r.debug&&!r.artifacts)return i.value;let o={value:i.value};return s.warnings.length&&(o.warning=_i.details(s.warnings)),s.debug&&(o.debug=s.debug),s.artifacts&&(o.artifacts=s.artifacts),o};Se.Mainstay=class{constructor(t,e,n){this.externals=[],this.warnings=[],this.tracer=t,this.debug=e,this.links=n,this.shadow=null,this.artifacts=null,this._snapshots=[]}snapshot(){this._snapshots.push({externals:this.externals.slice(),warnings:this.warnings.slice()})}restore(){let t=this._snapshots.pop();this.externals=t.externals,this.warnings=t.warnings}commit(){this._snapshots.pop()}};Se.entry=function(t,e,n){let{tracer:r,cleanup:i}=Se.tracer(e,n),s=n.debug?[]:null,o=e._ids._schemaChain?new Map:null,a=new Se.Mainstay(r,s,o),u=e._ids._schemaChain?[{schema:e}]:null,c=new FP([],[],{mainstay:a,schemas:u}),l=wa.validate(t,e,c,n);i&&e.$_root.untrace();let d=_i.process(l.errors,t,n);return{value:l.value,error:d,mainstay:a}};Se.tracer=function(t,e){return t.$_root._tracer?{tracer:t.$_root._tracer._register(t)}:e.debug?(xa(t.$_root.trace,"Debug mode not supported"),{tracer:t.$_root.trace()._register(t),cleanup:!0}):{tracer:Se.ignore}};wa.validate=function(t,e,n,r,i={}){if(e.$_terms.whens&&(e=e._generate(t,n,r).schema),e._preferences&&(r=Se.prefs(e,r)),e._cache&&r.cache){let d=e._cache.get(t);if(n.mainstay.tracer.debug(n,"validate","cached",!!d),d)return d}let s=(d,p,b)=>e.$_createError(d,t,p,b||n,r),o={original:t,prefs:r,schema:e,state:n,error:s,errorsArray:Se.errorsArray,warn:(d,p,b)=>n.mainstay.warnings.push(s(d,p,b)),message:(d,p)=>e.$_createError("custom",t,p,n,r,{messages:d})};n.mainstay.tracer.entry(e,n);let a=e._definition;if(a.prepare&&t!==void 0&&r.convert){let d=a.prepare(t,o);if(d){if(n.mainstay.tracer.value(n,"prepare",t,d.value),d.errors)return Se.finalize(d.value,[].concat(d.errors),o);t=d.value}}if(a.coerce&&t!==void 0&&r.convert&&(!a.coerce.from||a.coerce.from.includes(typeof t))){let d=a.coerce.method(t,o);if(d){if(n.mainstay.tracer.value(n,"coerced",t,d.value),d.errors)return Se.finalize(d.value,[].concat(d.errors),o);t=d.value}}let u=e._flags.empty;u&&u.$_match(Se.trim(t,e),n.nest(u),At.defaults)&&(n.mainstay.tracer.value(n,"empty",t,void 0),t=void 0);let c=i.presence||e._flags.presence||(e._flags._endedSwitch?null:r.presence);if(t===void 0){if(c==="forbidden")return Se.finalize(t,null,o);if(c==="required")return Se.finalize(t,[e.$_createError("any.required",t,null,n,r)],o);if(c==="optional"){if(e._flags.default!==At.symbols.deepDefault)return Se.finalize(t,null,o);n.mainstay.tracer.value(n,"default",t,{}),t={}}}else if(c==="forbidden")return Se.finalize(t,[e.$_createError("any.unknown",t,null,n,r)],o);let l=[];if(e._valids){let d=e._valids.get(t,n,r,e._flags.insensitive);if(d)return r.convert&&(n.mainstay.tracer.value(n,"valids",t,d.value),t=d.value),n.mainstay.tracer.filter(e,n,"valid",d),Se.finalize(t,null,o);if(e._flags.only){let p=e.$_createError("any.only",t,{valids:e._valids.values({display:!0})},n,r);if(r.abortEarly)return Se.finalize(t,[p],o);l.push(p)}}if(e._invalids){let d=e._invalids.get(t,n,r,e._flags.insensitive);if(d){n.mainstay.tracer.filter(e,n,"invalid",d);let p=e.$_createError("any.invalid",t,{invalids:e._invalids.values({display:!0})},n,r);if(r.abortEarly)return Se.finalize(t,[p],o);l.push(p)}}if(a.validate){let d=a.validate(t,o);if(d&&(n.mainstay.tracer.value(n,"base",t,d.value),t=d.value,d.errors)){if(!Array.isArray(d.errors))return l.push(d.errors),Se.finalize(t,l,o);if(d.errors.length)return l.push(...d.errors),Se.finalize(t,l,o)}}return e._rules.length?Se.rules(t,l,o):Se.finalize(t,l,o)};Se.rules=function(t,e,n){let{schema:r,state:i,prefs:s}=n;for(let o of r._rules){let a=r._definition.rules[o.method];if(a.convert&&s.convert){i.mainstay.tracer.log(r,i,"rule",o.name,"full");continue}let u,c=o.args;if(o._resolve.length){c=Object.assign({},c);for(let d of o._resolve){let p=a.argsByName.get(d),b=c[d].resolve(t,i,s),_=p.normalize?p.normalize(b):b,E=At.validateArg(_,null,p);if(E){u=r.$_createError("any.ref",b,{arg:d,ref:c[d],reason:E},i,s);break}c[d]=_}}u=u||a.validate(t,n,c,o);let l=Se.rule(u,o);if(l.errors){if(i.mainstay.tracer.log(r,i,"rule",o.name,"error"),o.warn){i.mainstay.warnings.push(...l.errors);continue}if(s.abortEarly)return Se.finalize(t,l.errors,n);e.push(...l.errors)}else i.mainstay.tracer.log(r,i,"rule",o.name,"pass"),i.mainstay.tracer.value(i,"rule",t,l.value,o.name),t=l.value}return Se.finalize(t,e,n)};Se.rule=function(t,e){return t instanceof _i.Report?(Se.error(t,e),{errors:[t],value:null}):Array.isArray(t)&&t[At.symbols.errors]?(t.forEach(n=>Se.error(n,e)),{errors:t,value:null}):{errors:null,value:t}};Se.error=function(t,e){return e.message&&t._setTemplate(e.message),t};Se.finalize=function(t,e,n){e=e||[];let{schema:r,state:i,prefs:s}=n;if(e.length){let a=Se.default("failover",void 0,e,n);a!==void 0&&(i.mainstay.tracer.value(i,"failover",t,a),t=a,e=[])}if(e.length&&r._flags.error)if(typeof r._flags.error=="function"){e=r._flags.error(e),Array.isArray(e)||(e=[e]);for(let a of e)xa(a instanceof Error||a instanceof _i.Report,"error() must return an Error object")}else e=[r._flags.error];if(t===void 0){let a=Se.default("default",t,e,n);i.mainstay.tracer.value(i,"default",t,a),t=a}if(r._flags.cast&&t!==void 0){let a=r._definition.cast[r._flags.cast];if(a.from(t)){let u=a.to(t,n);i.mainstay.tracer.value(i,"cast",t,u,r._flags.cast),t=u}}if(r.$_terms.externals&&s.externals&&s._externals!==!1)for(let{method:a}of r.$_terms.externals)i.mainstay.externals.push({method:a,schema:r,state:i,label:_i.label(r._flags,i,s)});let o={value:t,errors:e.length?e:null};return r._flags.result&&(o.value=r._flags.result==="strip"?void 0:n.original,i.mainstay.tracer.value(i,r._flags.result,t,o.value),i.shadow(t,r._flags.result)),r._cache&&s.cache!==!1&&!r._refs.length&&r._cache.set(n.original,o),t!==void 0&&!o.errors&&r._flags.artifact!==void 0&&(i.mainstay.artifacts=i.mainstay.artifacts||new Map,i.mainstay.artifacts.has(r._flags.artifact)||i.mainstay.artifacts.set(r._flags.artifact,[]),i.mainstay.artifacts.get(r._flags.artifact).push(i.path)),o};Se.prefs=function(t,e){let n=e===At.defaults;return n&&t._preferences[At.symbols.prefs]?t._preferences[At.symbols.prefs]:(e=At.preferences(e,t._preferences),n&&(t._preferences[At.symbols.prefs]=e),e)};Se.default=function(t,e,n,r){let{schema:i,state:s,prefs:o}=r,a=i._flags[t];if(o.noDefaults||a===void 0)return e;if(s.mainstay.tracer.log(i,s,"rule",t,"full"),!a)return a;if(typeof a=="function"){let u=a.length?[gw(s.ancestors[0]),r]:[];try{return a(...u)}catch(c){n.push(i.$_createError(`any.${t}`,null,{error:c},s,o));return}}return typeof a!="object"?a:a[At.symbols.literal]?a.literal:At.isResolvable(a)?a.resolve(e,s,o):gw(a)};Se.trim=function(t,e){if(typeof t!="string")return t;let n=e.$_getRule("trim");return!n||!n.args.enabled?t:t.trim()};Se.ignore={active:!1,debug:ro,entry:ro,filter:ro,log:ro,resolve:ro,value:ro};Se.errorsArray=function(){let t=[];return t[At.symbols.errors]=!0,t}});var bm=g((u5,bw)=>{"use strict";var $P=Ie(),yw=ka(),ym=Qe(),Hr={};bw.exports=Hr.Values=class{constructor(t,e){this._values=new Set(t),this._refs=new Set(e),this._lowercase=Hr.lowercases(t),this._override=!1}get length(){return this._values.size+this._refs.size}add(t,e){if(ym.isResolvable(t)){this._refs.has(t)||(this._refs.add(t),e&&e.register(t));return}this.has(t,null,null,!1)||(this._values.add(t),typeof t=="string"&&this._lowercase.set(t.toLowerCase(),t))}static merge(t,e,n){if(t=t||new Hr.Values,e){if(e._override)return e.clone();for(let r of[...e._values,...e._refs])t.add(r)}if(n)for(let r of[...n._values,...n._refs])t.remove(r);return t.length?t:null}remove(t){if(ym.isResolvable(t)){this._refs.delete(t);return}this._values.delete(t),typeof t=="string"&&this._lowercase.delete(t.toLowerCase())}has(t,e,n,r){return!!this.get(t,e,n,r)}get(t,e,n,r){if(!this.length)return!1;if(this._values.has(t))return{value:t};if(typeof t=="string"&&t&&r){let i=this._lowercase.get(t.toLowerCase());if(i)return{value:i}}if(!this._refs.size&&typeof t!="object")return!1;if(typeof t=="object"){for(let i of this._values)if(yw(i,t))return{value:i}}if(e)for(let i of this._refs){let s=i.resolve(t,e,n,null,{in:!0});if(s===void 0)continue;let o=!i.in||typeof s!="object"?[s]:Array.isArray(s)?s:Object.keys(s);for(let a of o)if(typeof a==typeof t){if(r&&t&&typeof t=="string"){if(a.toLowerCase()===t.toLowerCase())return{value:a,ref:i}}else if(yw(a,t))return{value:a,ref:i}}}return!1}override(){this._override=!0}values(t){if(t&&t.display){let e=[];for(let n of[...this._values,...this._refs])n!==void 0&&e.push(n);return e}return Array.from([...this._values,...this._refs])}clone(){let t=new Hr.Values(this._values,this._refs);return t._override=this._override,t}concat(t){$P(!t._override,"Cannot concat override set of values");let e=new Hr.Values([...this._values,...t._values],[...this._refs,...t._refs]);return e._override=this._override,e}describe(){let t=[];this._override&&t.push({override:!0});for(let e of this._values.values())t.push(e&&typeof e=="object"?{value:e}:e);for(let e of this._refs.values())t.push(e.describe());return t}};Hr.Values.prototype[ym.symbols.values]=!0;Hr.Values.prototype.slice=Hr.Values.prototype.clone;Hr.lowercases=function(t){let e=new Map;if(t)for(let n of t)typeof n=="string"&&e.set(n.toLowerCase(),n);return e}});var Ew=g((l5,ww)=>{"use strict";var ne=Ie(),vw=nn(),_w=ka(),vm=Sl(),BP=um(),bt=Qe(),_m=Qi(),UP=Fr(),HP=cm(),Tw=fm(),WP=eo(),Sw=cw(),kw=$r(),xw=hm(),xl=mw(),wl=bm(),Lt={};Lt.Base=class{constructor(t){this.type=t,this.$_root=null,this._definition={},this._reset()}_reset(){this._ids=new Sw.Ids,this._preferences=null,this._refs=new kw.Manager,this._cache=null,this._valids=null,this._invalids=null,this._flags={},this._rules=[],this._singleRules=new Map,this.$_terms={},this.$_temp={ruleset:null,whens:{}}}describe(){return ne(typeof Tw.describe=="function","Manifest functionality disabled"),Tw.describe(this)}allow(...t){return bt.verifyFlat(t,"allow"),this._values(t,"_valids")}alter(t){ne(t&&typeof t=="object"&&!Array.isArray(t),"Invalid targets argument"),ne(!this._inRuleset(),"Cannot set alterations inside a ruleset");let e=this.clone();e.$_terms.alterations=e.$_terms.alterations||[];for(let n in t){let r=t[n];ne(typeof r=="function","Alteration adjuster for",n,"must be a function"),e.$_terms.alterations.push({target:n,adjuster:r})}return e.$_temp.ruleset=!1,e}artifact(t){return ne(t!==void 0,"Artifact cannot be undefined"),ne(!this._cache,"Cannot set an artifact with a rule cache"),this.$_setFlag("artifact",t)}cast(t){return ne(t===!1||typeof t=="string","Invalid to value"),ne(t===!1||this._definition.cast[t],"Type",this.type,"does not support casting to",t),this.$_setFlag("cast",t===!1?void 0:t)}default(t,e){return this._default("default",t,e)}description(t){return ne(t&&typeof t=="string","Description must be a non-empty string"),this.$_setFlag("description",t)}empty(t){let e=this.clone();return t!==void 0&&(t=e.$_compile(t,{override:!1})),e.$_setFlag("empty",t,{clone:!1})}error(t){return ne(t,"Missing error"),ne(t instanceof Error||typeof t=="function","Must provide a valid Error object or a function"),this.$_setFlag("error",t)}example(t,e={}){return ne(t!==void 0,"Missing example"),bt.assertOptions(e,["override"]),this._inner("examples",t,{single:!0,override:e.override})}external(t,e){return typeof t=="object"&&(ne(!e,"Cannot combine options with description"),e=t.description,t=t.method),ne(typeof t=="function","Method must be a function"),ne(e===void 0||e&&typeof e=="string","Description must be a non-empty string"),this._inner("externals",{method:t,description:e},{single:!0})}failover(t,e){return this._default("failover",t,e)}forbidden(){return this.presence("forbidden")}id(t){return t?(ne(typeof t=="string","id must be a non-empty string"),ne(/^[^\.]+$/.test(t),"id cannot contain period character"),this.$_setFlag("id",t)):this.$_setFlag("id",void 0)}invalid(...t){return this._values(t,"_invalids")}label(t){return ne(t&&typeof t=="string","Label name must be a non-empty string"),this.$_setFlag("label",t)}meta(t){return ne(t!==void 0,"Meta cannot be undefined"),this._inner("metas",t,{single:!0})}note(...t){ne(t.length,"Missing notes");for(let e of t)ne(e&&typeof e=="string","Notes must be non-empty strings");return this._inner("notes",t)}only(t=!0){return ne(typeof t=="boolean","Invalid mode:",t),this.$_setFlag("only",t)}optional(){return this.presence("optional")}prefs(t){ne(t,"Missing preferences"),ne(t.context===void 0,"Cannot override context"),ne(t.externals===void 0,"Cannot override externals"),ne(t.warnings===void 0,"Cannot override warnings"),ne(t.debug===void 0,"Cannot override debug"),bt.checkPreferences(t);let e=this.clone();return e._preferences=bt.preferences(e._preferences,t),e}presence(t){return ne(["optional","required","forbidden"].includes(t),"Unknown presence mode",t),this.$_setFlag("presence",t)}raw(t=!0){return this.$_setFlag("result",t?"raw":void 0)}result(t){return ne(["raw","strip"].includes(t),"Unknown result mode",t),this.$_setFlag("result",t)}required(){return this.presence("required")}strict(t){let e=this.clone(),n=t===void 0?!1:!t;return e._preferences=bt.preferences(e._preferences,{convert:n}),e}strip(t=!0){return this.$_setFlag("result",t?"strip":void 0)}tag(...t){ne(t.length,"Missing tags");for(let e of t)ne(e&&typeof e=="string","Tags must be non-empty strings");return this._inner("tags",t)}unit(t){return ne(t&&typeof t=="string","Unit name must be a non-empty string"),this.$_setFlag("unit",t)}valid(...t){bt.verifyFlat(t,"valid");let e=this.allow(...t);return e.$_setFlag("only",!!e._valids,{clone:!1}),e}when(t,e){let n=this.clone();n.$_terms.whens||(n.$_terms.whens=[]);let r=_m.when(n,t,e);if(!["any","link"].includes(n.type)){let i=r.is?[r]:r.switch;for(let s of i)ne(!s.then||s.then.type==="any"||s.then.type===n.type,"Cannot combine",n.type,"with",s.then&&s.then.type),ne(!s.otherwise||s.otherwise.type==="any"||s.otherwise.type===n.type,"Cannot combine",n.type,"with",s.otherwise&&s.otherwise.type)}return n.$_terms.whens.push(r),n.$_mutateRebuild()}cache(t){ne(!this._inRuleset(),"Cannot set caching inside a ruleset"),ne(!this._cache,"Cannot override schema cache"),ne(this._flags.artifact===void 0,"Cannot cache a rule with an artifact");let e=this.clone();return e._cache=t||BP.provider.provision(),e.$_temp.ruleset=!1,e}clone(){let t=Object.create(Object.getPrototypeOf(this));return this._assign(t)}concat(t){ne(bt.isSchema(t),"Invalid schema object"),ne(this.type==="any"||t.type==="any"||t.type===this.type,"Cannot merge type",this.type,"with another type:",t.type),ne(!this._inRuleset(),"Cannot concatenate onto a schema with open ruleset"),ne(!t._inRuleset(),"Cannot concatenate a schema with open ruleset");let e=this.clone();if(this.type==="any"&&t.type!=="any"){let n=t.clone();for(let r of Object.keys(e))r!=="type"&&(n[r]=e[r]);e=n}e._ids.concat(t._ids),e._refs.register(t,kw.toSibling),e._preferences=e._preferences?bt.preferences(e._preferences,t._preferences):t._preferences,e._valids=wl.merge(e._valids,t._valids,t._invalids),e._invalids=wl.merge(e._invalids,t._invalids,t._valids);for(let n of t._singleRules.keys())e._singleRules.has(n)&&(e._rules=e._rules.filter(r=>r.keep||r.name!==n),e._singleRules.delete(n));for(let n of t._rules)t._definition.rules[n.method].multi||e._singleRules.set(n.name,n),e._rules.push(n);if(e._flags.empty&&t._flags.empty){e._flags.empty=e._flags.empty.concat(t._flags.empty);let n=Object.assign({},t._flags);delete n.empty,vm(e._flags,n)}else if(t._flags.empty){e._flags.empty=t._flags.empty;let n=Object.assign({},t._flags);delete n.empty,vm(e._flags,n)}else vm(e._flags,t._flags);for(let n in t.$_terms){let r=t.$_terms[n];if(!r){e.$_terms[n]||(e.$_terms[n]=r);continue}if(!e.$_terms[n]){e.$_terms[n]=r.slice();continue}e.$_terms[n]=e.$_terms[n].concat(r)}return this.$_root._tracer&&this.$_root._tracer._combine(e,[this,t]),e.$_mutateRebuild()}extend(t){return ne(!t.base,"Cannot extend type with another base"),HP.type(this,t)}extract(t){return t=Array.isArray(t)?t:t.split("."),this._ids.reach(t)}fork(t,e){ne(!this._inRuleset(),"Cannot fork inside a ruleset");let n=this;for(let r of[].concat(t))r=Array.isArray(r)?r:r.split("."),n=n._ids.fork(r,e,n);return n.$_temp.ruleset=!1,n}rule(t){let e=this._definition;bt.assertOptions(t,Object.keys(e.modifiers)),ne(this.$_temp.ruleset!==!1,"Cannot apply rules to empty ruleset or the last rule added does not support rule properties");let n=this.$_temp.ruleset===null?this._rules.length-1:this.$_temp.ruleset;ne(n>=0&&n<this._rules.length,"Cannot apply rules to empty ruleset");let r=this.clone();for(let i=n;i<r._rules.length;++i){let s=r._rules[i],o=vw(s);for(let a in t)e.modifiers[a](o,t[a]),ne(o.name===s.name,"Cannot change rule name");r._rules[i]=o,r._singleRules.get(o.name)===s&&r._singleRules.set(o.name,o)}return r.$_temp.ruleset=!1,r.$_mutateRebuild()}get ruleset(){ne(!this._inRuleset(),"Cannot start a new ruleset without closing the previous one");let t=this.clone();return t.$_temp.ruleset=t._rules.length,t}get $(){return this.ruleset}tailor(t){t=[].concat(t),ne(!this._inRuleset(),"Cannot tailor inside a ruleset");let e=this;if(this.$_terms.alterations)for(let{target:n,adjuster:r}of this.$_terms.alterations)t.includes(n)&&(e=r(e),ne(bt.isSchema(e),"Alteration adjuster for",n,"failed to return a schema object"));return e=e.$_modify({each:n=>n.tailor(t),ref:!1}),e.$_temp.ruleset=!1,e.$_mutateRebuild()}tracer(){return xw.location?xw.location(this):this}validate(t,e){return xl.entry(t,this,e)}validateAsync(t,e){return xl.entryAsync(t,this,e)}$_addRule(t){typeof t=="string"&&(t={name:t}),ne(t&&typeof t=="object","Invalid options"),ne(t.name&&typeof t.name=="string","Invalid rule name");for(let s in t)ne(s[0]!=="_","Cannot set private rule properties");let e=Object.assign({},t);e._resolve=[],e.method=e.method||e.name;let n=this._definition.rules[e.method],r=e.args;ne(n,"Unknown rule",e.method);let i=this.clone();if(r){ne(Object.keys(r).length===1||Object.keys(r).length===this._definition.rules[e.name].args.length,"Invalid rule definition for",this.type,e.name);for(let s in r){let o=r[s];if(n.argsByName){let a=n.argsByName.get(s);if(a.ref&&bt.isResolvable(o))e._resolve.push(s),i.$_mutateRegister(o);else if(a.normalize&&(o=a.normalize(o),r[s]=o),a.assert){let u=bt.validateArg(o,s,a);ne(!u,u,"or reference")}}if(o===void 0){delete r[s];continue}r[s]=o}}return n.multi||(i._ruleRemove(e.name,{clone:!1}),i._singleRules.set(e.name,e)),i.$_temp.ruleset===!1&&(i.$_temp.ruleset=null),n.priority?i._rules.unshift(e):i._rules.push(e),i}$_compile(t,e){return _m.schema(this.$_root,t,e)}$_createError(t,e,n,r,i,s={}){let o=s.flags!==!1?this._flags:{},a=s.messages?WP.merge(this._definition.messages,s.messages):this._definition.messages;return new UP.Report(t,e,n,o,a,r,i)}$_getFlag(t){return this._flags[t]}$_getRule(t){return this._singleRules.get(t)}$_mapLabels(t){return t=Array.isArray(t)?t:t.split("."),this._ids.labels(t)}$_match(t,e,n,r){n=Object.assign({},n),n.abortEarly=!0,n._externals=!1,e.snapshot();let i=!xl.validate(t,this,e,n,r).errors;return e.restore(),i}$_modify(t){return bt.assertOptions(t,["each","once","ref","schema"]),Sw.schema(this,t)||this}$_mutateRebuild(){ne(!this._inRuleset(),"Cannot add this rule inside a ruleset"),this._refs.reset(),this._ids.reset();let t=(e,{source:n,name:r,path:i,key:s})=>{let o=this._definition[n][r]&&this._definition[n][r].register;o!==!1&&this.$_mutateRegister(e,{family:o,key:s})};return this.$_modify({each:t}),this._definition.rebuild&&this._definition.rebuild(this),this.$_temp.ruleset=!1,this}$_mutateRegister(t,{family:e,key:n}={}){this._refs.register(t,e),this._ids.register(t,{key:n})}$_property(t){return this._definition.properties[t]}$_reach(t){return this._ids.reach(t)}$_rootReferences(){return this._refs.roots()}$_setFlag(t,e,n={}){ne(t[0]==="_"||!this._inRuleset(),"Cannot set flag inside a ruleset");let r=this._definition.flags[t]||{};if(_w(e,r.default)&&(e=void 0),_w(e,this._flags[t]))return this;let i=n.clone!==!1?this.clone():this;return e!==void 0?(i._flags[t]=e,i.$_mutateRegister(e)):delete i._flags[t],t[0]!=="_"&&(i.$_temp.ruleset=!1),i}$_parent(t,...e){return this[t][bt.symbols.parent].call(this,...e)}$_validate(t,e,n){return xl.validate(t,this,e,n)}_assign(t){t.type=this.type,t.$_root=this.$_root,t.$_temp=Object.assign({},this.$_temp),t.$_temp.whens={},t._ids=this._ids.clone(),t._preferences=this._preferences,t._valids=this._valids&&this._valids.clone(),t._invalids=this._invalids&&this._invalids.clone(),t._rules=this._rules.slice(),t._singleRules=vw(this._singleRules,{shallow:!0}),t._refs=this._refs.clone(),t._flags=Object.assign({},this._flags),t._cache=null,t.$_terms={};for(let e in this.$_terms)t.$_terms[e]=this.$_terms[e]?this.$_terms[e].slice():null;t.$_super={};for(let e in this.$_super)t.$_super[e]=this._super[e].bind(t);return t}_bare(){let t=this.clone();t._reset();let e=t._definition.terms;for(let n in e){let r=e[n];t.$_terms[n]=r.init}return t.$_mutateRebuild()}_default(t,e,n={}){return bt.assertOptions(n,"literal"),ne(e!==void 0,"Missing",t,"value"),ne(typeof e=="function"||!n.literal,"Only function value supports literal option"),typeof e=="function"&&n.literal&&(e={[bt.symbols.literal]:!0,literal:e}),this.$_setFlag(t,e)}_generate(t,e,n){if(!this.$_terms.whens)return{schema:this};let r=[],i=[];for(let a=0;a<this.$_terms.whens.length;++a){let u=this.$_terms.whens[a];if(u.concat){r.push(u.concat),i.push(`${a}.concat`);continue}let c=u.ref?u.ref.resolve(t,e,n):t,l=u.is?[u]:u.switch,d=i.length;for(let p=0;p<l.length;++p){let{is:b,then:_,otherwise:E}=l[p],L=`${a}${u.switch?"."+p:""}`;if(b.$_match(c,e.nest(b,`${L}.is`),n)){if(_){let M=e.localize([...e.path,`${L}.then`],e.ancestors,e.schemas),{schema:x,id:k}=_._generate(t,M,n);r.push(x),i.push(`${L}.then${k?`(${k})`:""}`);break}}else if(E){let M=e.localize([...e.path,`${L}.otherwise`],e.ancestors,e.schemas),{schema:x,id:k}=E._generate(t,M,n);r.push(x),i.push(`${L}.otherwise${k?`(${k})`:""}`);break}}if(u.break&&i.length>d)break}let s=i.join(", ");if(e.mainstay.tracer.debug(e,"rule","when",s),!s)return{schema:this};if(!e.mainstay.tracer.active&&this.$_temp.whens[s])return{schema:this.$_temp.whens[s],id:s};let o=this;this._definition.generate&&(o=this._definition.generate(this,t,e,n));for(let a of r)o=o.concat(a);return this.$_root._tracer&&this.$_root._tracer._combine(o,[this,...r]),this.$_temp.whens[s]=o,{schema:o,id:s}}_inner(t,e,n={}){ne(!this._inRuleset(),`Cannot set ${t} inside a ruleset`);let r=this.clone();return(!r.$_terms[t]||n.override)&&(r.$_terms[t]=[]),n.single?r.$_terms[t].push(e):r.$_terms[t].push(...e),r.$_temp.ruleset=!1,r}_inRuleset(){return this.$_temp.ruleset!==null&&this.$_temp.ruleset!==!1}_ruleRemove(t,e={}){if(!this._singleRules.has(t))return this;let n=e.clone!==!1?this.clone():this;n._singleRules.delete(t);let r=[];for(let i=0;i<n._rules.length;++i){let s=n._rules[i];if(s.name===t&&!s.keep){n._inRuleset()&&i<n.$_temp.ruleset&&--n.$_temp.ruleset;continue}r.push(s)}return n._rules=r,n}_values(t,e){bt.verifyFlat(t,e.slice(1,-1));let n=this.clone(),r=t[0]===bt.symbols.override;if(r&&(t=t.slice(1)),!n[e]&&t.length?n[e]=new wl:r&&(n[e]=t.length?new wl:null,n.$_mutateRebuild()),!n[e])return n;r&&n[e].override();for(let i of t){ne(i!==void 0,"Cannot call allow/valid/invalid with undefined"),ne(i!==bt.symbols.override,"Override must be the first value");let s=e==="_invalids"?"_valids":"_invalids";n[s]&&(n[s].remove(i),n[s].length||(ne(e==="_valids"||!n._flags.only,"Setting invalid value",i,"leaves schema rejecting all values due to previous valid rule"),n[s]=null)),n[e].add(i,n._refs)}return n}};Lt.Base.prototype[bt.symbols.any]={version:bt.version,compile:_m.compile,root:"$_root"};Lt.Base.prototype.isImmutable=!0;Lt.Base.prototype.deny=Lt.Base.prototype.invalid;Lt.Base.prototype.disallow=Lt.Base.prototype.invalid;Lt.Base.prototype.equal=Lt.Base.prototype.valid;Lt.Base.prototype.exist=Lt.Base.prototype.required;Lt.Base.prototype.not=Lt.Base.prototype.invalid;Lt.Base.prototype.options=Lt.Base.prototype.prefs;Lt.Base.prototype.preferences=Lt.Base.prototype.prefs;ww.exports=new Lt.Base});var Bn=g((f5,Aw)=>{"use strict";var El=Ie(),GP=Ew(),KP=Qe(),VP=eo();Aw.exports=GP.extend({type:"any",flags:{only:{default:!1}},terms:{alterations:{init:null},examples:{init:null},externals:{init:null},metas:{init:[]},notes:{init:[]},shared:{init:null},tags:{init:[]},whens:{init:null}},rules:{custom:{method(t,e){return El(typeof t=="function","Method must be a function"),El(e===void 0||e&&typeof e=="string","Description must be a non-empty string"),this.$_addRule({name:"custom",args:{method:t,description:e}})},validate(t,e,{method:n}){try{return n(t,e)}catch(r){return e.error("any.custom",{error:r})}},args:["method","description"],multi:!0},messages:{method(t){return this.prefs({messages:t})}},shared:{method(t){El(KP.isSchema(t)&&t._flags.id,"Schema must be a schema with an id");let e=this.clone();return e.$_terms.shared=e.$_terms.shared||[],e.$_terms.shared.push(t),e.$_mutateRegister(t),e}},warning:{method(t,e){return El(t&&typeof t=="string","Invalid warning code"),this.$_addRule({name:"warning",args:{code:t,local:e},warn:!0})},validate(t,e,{code:n,local:r}){return e.error(n,r)},args:["code","local"],multi:!0}},modifiers:{keep(t,e=!0){t.keep=e},message(t,e){t.message=VP.compile(e)},warn(t,e=!0){t.warn=e}},manifest:{build(t,e){for(let n in e){let r=e[n];if(["examples","externals","metas","notes","tags"].includes(n)){for(let i of r)t=t[n.slice(0,-1)](i);continue}if(n==="alterations"){let i={};for(let{target:s,adjuster:o}of r)i[s]=o;t=t.alter(i);continue}if(n==="whens"){for(let i of r){let{ref:s,is:o,not:a,then:u,otherwise:c,concat:l}=i;l?t=t.concat(l):s?t=t.when(s,{is:o,not:a,then:u,otherwise:c,switch:i.switch,break:i.break}):t=t.when(o,{then:u,otherwise:c,break:i.break})}continue}if(n==="shared")for(let i of r)t=t.shared(i)}return t}},messages:{"any.custom":"{{#label}} failed custom validation because {{#error.message}}","any.default":"{{#label}} threw an error when running default method","any.failover":"{{#label}} threw an error when running failover method","any.invalid":"{{#label}} contains an invalid value","any.only":'{{#label}} must be {if(#valids.length == 1, "", "one of ")}{{#valids}}',"any.ref":"{{#label}} {{#arg}} references {{:#ref}} which {{#reason}}","any.required":"{{#label}} is required","any.unknown":"{{#label}} is not allowed"}})});var Rw=g((p5,Cw)=>{"use strict";var es=Ie(),zP=Sl(),XP=Bn(),Ow=Qe(),YP=Qi(),Al=Fr(),JP=$r(),io={};Cw.exports=XP.extend({type:"alternatives",flags:{match:{default:"any"}},terms:{matches:{init:[],register:JP.toSibling}},args(t,...e){return e.length===1&&Array.isArray(e[0])?t.try(...e[0]):t.try(...e)},validate(t,e){let{schema:n,error:r,state:i,prefs:s}=e;if(n._flags.match){let a=[],u=[];for(let l=0;l<n.$_terms.matches.length;++l){let d=n.$_terms.matches[l],p=i.nest(d.schema,`match.${l}`);p.snapshot();let b=d.schema.$_validate(t,p,s);b.errors?(u.push(b.errors),p.restore()):(a.push(b.value),p.commit())}if(a.length===0){let l={details:u.map(d=>Al.details(d,{override:!1}))};return{errors:r("alternatives.any",l)}}if(n._flags.match==="one")return a.length===1?{value:a[0]}:{errors:r("alternatives.one")};if(a.length!==n.$_terms.matches.length){let l={details:u.map(d=>Al.details(d,{override:!1}))};return{errors:r("alternatives.all",l)}}let c=l=>l.$_terms.matches.some(d=>d.schema.type==="object"||d.schema.type==="alternatives"&&c(d.schema));return c(n)?{value:a.reduce((l,d)=>zP(l,d,{mergeArrays:!1}))}:{value:a[a.length-1]}}let o=[];for(let a=0;a<n.$_terms.matches.length;++a){let u=n.$_terms.matches[a];if(u.schema){let d=i.nest(u.schema,`match.${a}`);d.snapshot();let p=u.schema.$_validate(t,d,s);if(!p.errors)return d.commit(),p;d.restore(),o.push({schema:u.schema,reports:p.errors});continue}let c=u.ref?u.ref.resolve(t,i,s):t,l=u.is?[u]:u.switch;for(let d=0;d<l.length;++d){let p=l[d],{is:b,then:_,otherwise:E}=p,L=`match.${a}${u.switch?"."+d:""}`;if(b.$_match(c,i.nest(b,`${L}.is`),s)){if(_)return _.$_validate(t,i.nest(_,`${L}.then`),s)}else if(E)return E.$_validate(t,i.nest(E,`${L}.otherwise`),s)}}return io.errors(o,e)},rules:{conditional:{method(t,e){es(!this._flags._endedSwitch,"Unreachable condition"),es(!this._flags.match,"Cannot combine match mode",this._flags.match,"with conditional rule"),es(e.break===void 0,"Cannot use break option with alternatives conditional");let n=this.clone(),r=YP.when(n,t,e),i=r.is?[r]:r.switch;for(let s of i)if(s.then&&s.otherwise){n.$_setFlag("_endedSwitch",!0,{clone:!1});break}return n.$_terms.matches.push(r),n.$_mutateRebuild()}},match:{method(t){if(es(["any","one","all"].includes(t),"Invalid alternatives match mode",t),t!=="any")for(let e of this.$_terms.matches)es(e.schema,"Cannot combine match mode",t,"with conditional rules");return this.$_setFlag("match",t)}},try:{method(...t){es(t.length,"Missing alternative schemas"),Ow.verifyFlat(t,"try"),es(!this._flags._endedSwitch,"Unreachable condition");let e=this.clone();for(let n of t)e.$_terms.matches.push({schema:e.$_compile(n)});return e.$_mutateRebuild()}}},overrides:{label(t){let e=this.$_parent("label",t),n=(r,i)=>i.path[0]!=="is"&&typeof r._flags.label!="string"?r.label(t):void 0;return e.$_modify({each:n,ref:!1})}},rebuild(t){let e=n=>{Ow.isSchema(n)&&n.type==="array"&&t.$_setFlag("_arrayItems",!0,{clone:!1})};t.$_modify({each:e})},manifest:{build(t,e){if(e.matches)for(let n of e.matches){let{schema:r,ref:i,is:s,not:o,then:a,otherwise:u}=n;r?t=t.try(r):i?t=t.conditional(i,{is:s,then:a,not:o,otherwise:u,switch:n.switch}):t=t.conditional(s,{then:a,otherwise:u})}return t}},messages:{"alternatives.all":"{{#label}} does not match all of the required types","alternatives.any":"{{#label}} does not match any of the allowed types","alternatives.match":"{{#label}} does not match any of the allowed types","alternatives.one":"{{#label}} matches more than one allowed type","alternatives.types":"{{#label}} must be one of {{#types}}"}});io.errors=function(t,{error:e,state:n}){if(!t.length)return{errors:e("alternatives.any")};if(t.length===1)return{errors:t[0].reports};let r=new Set,i=[];for(let{reports:s,schema:o}of t){if(s.length>1)return io.unmatched(t,e);let a=s[0];if(!(a instanceof Al.Report))return io.unmatched(t,e);if(a.state.path.length!==n.path.length){i.push({type:o.type,report:a});continue}if(a.code==="any.only"){for(let l of a.local.valids)r.add(l);continue}let[u,c]=a.code.split(".");c!=="base"?i.push({type:o.type,report:a}):a.code==="object.base"?r.add(a.local.type):r.add(u)}return i.length?i.length===1?{errors:i[0].report}:io.unmatched(t,e):{errors:e("alternatives.types",{types:[...r]})}};io.unmatched=function(t,e){let n=[];for(let r of t)n.push(...r.reports);return{errors:e("alternatives.match",Al.details(n,{override:!1}))}}});var Dw=g((h5,Pw)=>{"use strict";var Ea=Ie(),QP=ka(),ZP=Xi(),eD=Bn(),Un=Qe(),tD=Qi(),at={};Pw.exports=eD.extend({type:"array",flags:{single:{default:!1},sparse:{default:!1}},terms:{items:{init:[],manifest:"schema"},ordered:{init:[],manifest:"schema"},_exclusions:{init:[]},_inclusions:{init:[]},_requireds:{init:[]}},coerce:{from:"object",method(t,{schema:e,state:n,prefs:r}){if(!Array.isArray(t))return;let i=e.$_getRule("sort");if(i)return at.sort(e,t,i.args.options,n,r)}},validate(t,{schema:e,error:n}){if(!Array.isArray(t)){if(e._flags.single){let r=[t];return r[Un.symbols.arraySingle]=!0,{value:r}}return{errors:n("array.base")}}if(!(!e.$_getRule("items")&&!e.$_terms.externals))return{value:t.slice()}},rules:{has:{method(t){t=this.$_compile(t,{appendPath:!0});let e=this.$_addRule({name:"has",args:{schema:t}});return e.$_mutateRegister(t),e},validate(t,{state:e,prefs:n,error:r},{schema:i}){let s=[t,...e.ancestors];for(let a=0;a<t.length;++a){let u=e.localize([...e.path,a],s,i);if(i.$_match(t[a],u,n))return t}let o=i._flags.label;return o?r("array.hasKnown",{patternLabel:o}):r("array.hasUnknown",null)},multi:!0},items:{method(...t){Un.verifyFlat(t,"items");let e=this.$_addRule("items");for(let n=0;n<t.length;++n){let r=Un.tryWithPath(()=>this.$_compile(t[n]),n,{append:!0});e.$_terms.items.push(r)}return e.$_mutateRebuild()},validate(t,{schema:e,error:n,state:r,prefs:i,errorsArray:s}){let o=e.$_terms._requireds.slice(),a=e.$_terms.ordered.slice(),u=[...e.$_terms._inclusions,...o],c=!t[Un.symbols.arraySingle];delete t[Un.symbols.arraySingle];let l=s(),d=t.length;for(let p=0;p<d;++p){let b=t[p],_=!1,E=!1,L=c?p:new Number(p),M=[...r.path,L];if(!e._flags.sparse&&b===void 0){if(l.push(n("array.sparse",{key:L,path:M,pos:p,value:void 0},r.localize(M))),i.abortEarly)return l;a.shift();continue}let x=[t,...r.ancestors];for(let C of e.$_terms._exclusions)if(C.$_match(b,r.localize(M,x,C),i,{presence:"ignore"})){if(l.push(n("array.excludes",{pos:p,value:b},r.localize(M))),i.abortEarly)return l;_=!0,a.shift();break}if(_)continue;if(e.$_terms.ordered.length){if(a.length){let C=a.shift(),V=C.$_validate(b,r.localize(M,x,C),i);if(V.errors){if(l.push(...V.errors),i.abortEarly)return l}else if(C._flags.result==="strip")at.fastSplice(t,p),--p,--d;else if(!e._flags.sparse&&V.value===void 0){if(l.push(n("array.sparse",{key:L,path:M,pos:p,value:void 0},r.localize(M))),i.abortEarly)return l;continue}else t[p]=V.value;continue}else if(!e.$_terms.items.length){if(l.push(n("array.orderedLength",{pos:p,limit:e.$_terms.ordered.length})),i.abortEarly)return l;break}}let k=[],v=o.length;for(let C=0;C<v;++C){let V=r.localize(M,x,o[C]);V.snapshot();let ce=o[C].$_validate(b,V,i);if(k[C]=ce,!ce.errors){if(V.commit(),t[p]=ce.value,E=!0,at.fastSplice(o,C),--C,--v,!e._flags.sparse&&ce.value===void 0&&(l.push(n("array.sparse",{key:L,path:M,pos:p,value:void 0},r.localize(M))),i.abortEarly))return l;break}V.restore()}if(E)continue;let F=i.stripUnknown&&!!i.stripUnknown.arrays||!1;v=u.length;for(let C of u){let V,ce=o.indexOf(C);if(ce!==-1)V=k[ce];else{let ye=r.localize(M,x,C);if(ye.snapshot(),V=C.$_validate(b,ye,i),!V.errors){ye.commit(),C._flags.result==="strip"?(at.fastSplice(t,p),--p,--d):!e._flags.sparse&&V.value===void 0?(l.push(n("array.sparse",{key:L,path:M,pos:p,value:void 0},r.localize(M))),_=!0):t[p]=V.value,E=!0;break}ye.restore()}if(v===1){if(F){at.fastSplice(t,p),--p,--d,E=!0;break}if(l.push(...V.errors),i.abortEarly)return l;_=!0;break}}if(!_&&(e.$_terms._inclusions.length||e.$_terms._requireds.length)&&!E){if(F){at.fastSplice(t,p),--p,--d;continue}if(l.push(n("array.includes",{pos:p,value:b},r.localize(M))),i.abortEarly)return l}}return o.length&&at.fillMissedErrors(e,l,o,t,r,i),a.length&&(at.fillOrderedErrors(e,l,a,t,r,i),l.length||at.fillDefault(a,t,r,i)),l.length?l:t},priority:!0,manifest:!1},length:{method(t){return this.$_addRule({name:"length",args:{limit:t},operator:"="})},validate(t,e,{limit:n},{name:r,operator:i,args:s}){return Un.compare(t.length,n,i)?t:e.error("array."+r,{limit:s.limit,value:t})},args:[{name:"limit",ref:!0,assert:Un.limit,message:"must be a positive integer"}]},max:{method(t){return this.$_addRule({name:"max",method:"length",args:{limit:t},operator:"<="})}},min:{method(t){return this.$_addRule({name:"min",method:"length",args:{limit:t},operator:">="})}},ordered:{method(...t){Un.verifyFlat(t,"ordered");let e=this.$_addRule("items");for(let n=0;n<t.length;++n){let r=Un.tryWithPath(()=>this.$_compile(t[n]),n,{append:!0});at.validateSingle(r,e),e.$_mutateRegister(r),e.$_terms.ordered.push(r)}return e.$_mutateRebuild()}},single:{method(t){let e=t===void 0?!0:!!t;return Ea(!e||!this._flags._arrayItems,"Cannot specify single rule when array has array items"),this.$_setFlag("single",e)}},sort:{method(t={}){Un.assertOptions(t,["by","order"]);let e={order:t.order||"ascending"};return t.by&&(e.by=tD.ref(t.by,{ancestor:0}),Ea(!e.by.ancestor,"Cannot sort by ancestor")),this.$_addRule({name:"sort",args:{options:e}})},validate(t,{error:e,state:n,prefs:r,schema:i},{options:s}){let{value:o,errors:a}=at.sort(i,t,s,n,r);if(a)return a;for(let u=0;u<t.length;++u)if(t[u]!==o[u])return e("array.sort",{order:s.order,by:s.by?s.by.key:"value"});return t},convert:!0},sparse:{method(t){let e=t===void 0?!0:!!t;return this._flags.sparse===e?this:(e?this.clone():this.$_addRule("items")).$_setFlag("sparse",e,{clone:!1})}},unique:{method(t,e={}){Ea(!t||typeof t=="function"||typeof t=="string","comparator must be a function or a string"),Un.assertOptions(e,["ignoreUndefined","separator"]);let n={name:"unique",args:{options:e,comparator:t}};if(t)if(typeof t=="string"){let r=Un.default(e.separator,".");n.path=r?t.split(r):[t]}else n.comparator=t;return this.$_addRule(n)},validate(t,{state:e,error:n,schema:r},{comparator:i,options:s},{comparator:o,path:a}){let u={string:Object.create(null),number:Object.create(null),undefined:Object.create(null),boolean:Object.create(null),bigint:Object.create(null),object:new Map,function:new Map,custom:new Map},c=o||QP,l=s.ignoreUndefined;for(let d=0;d<t.length;++d){let p=a?ZP(t[d],a):t[d],b=o?u.custom:u[typeof p];if(Ea(b,"Failed to find unique map container for type",typeof p),b instanceof Map){let _=b.entries(),E;for(;!(E=_.next()).done;)if(c(E.value[0],p)){let L=e.localize([...e.path,d],[t,...e.ancestors]),M={pos:d,value:t[d],dupePos:E.value[1],dupeValue:t[E.value[1]]};return a&&(M.path=i),n("array.unique",M,L)}b.set(p,d)}else{if((!l||p!==void 0)&&b[p]!==void 0){let _={pos:d,value:t[d],dupePos:b[p],dupeValue:t[b[p]]};a&&(_.path=i);let E=e.localize([...e.path,d],[t,...e.ancestors]);return n("array.unique",_,E)}b[p]=d}}return t},args:["comparator","options"],multi:!0}},cast:{set:{from:Array.isArray,to(t,e){return new Set(t)}}},rebuild(t){t.$_terms._inclusions=[],t.$_terms._exclusions=[],t.$_terms._requireds=[];for(let e of t.$_terms.items)at.validateSingle(e,t),e._flags.presence==="required"?t.$_terms._requireds.push(e):e._flags.presence==="forbidden"?t.$_terms._exclusions.push(e):t.$_terms._inclusions.push(e);for(let e of t.$_terms.ordered)at.validateSingle(e,t)},manifest:{build(t,e){return e.items&&(t=t.items(...e.items)),e.ordered&&(t=t.ordered(...e.ordered)),t}},messages:{"array.base":"{{#label}} must be an array","array.excludes":"{{#label}} contains an excluded value","array.hasKnown":"{{#label}} does not contain at least one required match for type {:#patternLabel}","array.hasUnknown":"{{#label}} does not contain at least one required match","array.includes":"{{#label}} does not match any of the allowed types","array.includesRequiredBoth":"{{#label}} does not contain {{#knownMisses}} and {{#unknownMisses}} other required value(s)","array.includesRequiredKnowns":"{{#label}} does not contain {{#knownMisses}}","array.includesRequiredUnknowns":"{{#label}} does not contain {{#unknownMisses}} required value(s)","array.length":"{{#label}} must contain {{#limit}} items","array.max":"{{#label}} must contain less than or equal to {{#limit}} items","array.min":"{{#label}} must contain at least {{#limit}} items","array.orderedLength":"{{#label}} must contain at most {{#limit}} items","array.sort":"{{#label}} must be sorted in {#order} order by {{#by}}","array.sort.mismatching":"{{#label}} cannot be sorted due to mismatching types","array.sort.unsupported":"{{#label}} cannot be sorted due to unsupported type {#type}","array.sparse":"{{#label}} must not be a sparse array item","array.unique":"{{#label}} contains a duplicate value"}});at.fillMissedErrors=function(t,e,n,r,i,s){let o=[],a=0;for(let u of n){let c=u._flags.label;c?o.push(c):++a}o.length?a?e.push(t.$_createError("array.includesRequiredBoth",r,{knownMisses:o,unknownMisses:a},i,s)):e.push(t.$_createError("array.includesRequiredKnowns",r,{knownMisses:o},i,s)):e.push(t.$_createError("array.includesRequiredUnknowns",r,{unknownMisses:a},i,s))};at.fillOrderedErrors=function(t,e,n,r,i,s){let o=[];for(let a of n)a._flags.presence==="required"&&o.push(a);o.length&&at.fillMissedErrors(t,e,o,r,i,s)};at.fillDefault=function(t,e,n,r){let i=[],s=!0;for(let o=t.length-1;o>=0;--o){let a=t[o],u=[e,...n.ancestors],c=a.$_validate(void 0,n.localize(n.path,u,a),r).value;if(s){if(c===void 0)continue;s=!1}i.unshift(c)}i.length&&e.push(...i)};at.fastSplice=function(t,e){let n=e;for(;n<t.length;)t[n++]=t[n];--t.length};at.validateSingle=function(t,e){(t.type==="array"||t._flags._arrayItems)&&(Ea(!e._flags.single,"Cannot specify array item with single rule enabled"),e.$_setFlag("_arrayItems",!0,{clone:!1}))};at.sort=function(t,e,n,r,i){let s=n.order==="ascending"?1:-1,o=-1*s,a=s,u=(c,l)=>{let d=at.compare(c,l,o,a);if(d!==null||(n.by&&(c=n.by.resolve(c,r,i),l=n.by.resolve(l,r,i)),d=at.compare(c,l,o,a),d!==null))return d;let p=typeof c;if(p!==typeof l)throw t.$_createError("array.sort.mismatching",e,null,r,i);if(p!=="number"&&p!=="string")throw t.$_createError("array.sort.unsupported",e,{type:p},r,i);return p==="number"?(c-l)*s:c<l?o:a};try{return{value:e.slice().sort(u)}}catch(c){return{errors:c}}};at.compare=function(t,e,n,r){return t===e?0:t===void 0?1:e===void 0?-1:t===null?r:e===null?n:null}});var qw=g((g5,Nw)=>{"use strict";var Iw=Ie(),nD=Bn(),Mw=Qe(),Lw=bm(),Tm={};Tm.isBool=function(t){return typeof t=="boolean"};Nw.exports=nD.extend({type:"boolean",flags:{sensitive:{default:!1}},terms:{falsy:{init:null,manifest:"values"},truthy:{init:null,manifest:"values"}},coerce(t,{schema:e}){if(typeof t!="boolean"){if(typeof t=="string"){let n=e._flags.sensitive?t:t.toLowerCase();t=n==="true"?!0:n==="false"?!1:t}return typeof t!="boolean"&&(t=e.$_terms.truthy&&e.$_terms.truthy.has(t,null,null,!e._flags.sensitive)||(e.$_terms.falsy&&e.$_terms.falsy.has(t,null,null,!e._flags.sensitive)?!1:t)),{value:t}}},validate(t,{error:e}){if(typeof t!="boolean")return{value:t,errors:e("boolean.base")}},rules:{truthy:{method(...t){Mw.verifyFlat(t,"truthy");let e=this.clone();e.$_terms.truthy=e.$_terms.truthy||new Lw;for(let n=0;n<t.length;++n){let r=t[n];Iw(r!==void 0,"Cannot call truthy with undefined"),e.$_terms.truthy.add(r)}return e}},falsy:{method(...t){Mw.verifyFlat(t,"falsy");let e=this.clone();e.$_terms.falsy=e.$_terms.falsy||new Lw;for(let n=0;n<t.length;++n){let r=t[n];Iw(r!==void 0,"Cannot call falsy with undefined"),e.$_terms.falsy.add(r)}return e}},sensitive:{method(t=!0){return this.$_setFlag("sensitive",t)}}},cast:{number:{from:Tm.isBool,to(t,e){return t?1:0}},string:{from:Tm.isBool,to(t,e){return t?"true":"false"}}},manifest:{build(t,e){return e.truthy&&(t=t.truthy(...e.truthy)),e.falsy&&(t=t.falsy(...e.falsy)),t}},messages:{"boolean.base":"{{#label}} must be a boolean"}})});var Bw=g((m5,$w)=>{"use strict";var jw=Ie(),rD=Bn(),Fw=Qe(),iD=bi(),rr={};rr.isDate=function(t){return t instanceof Date};$w.exports=rD.extend({type:"date",coerce:{from:["number","string"],method(t,{schema:e}){return{value:rr.parse(t,e._flags.format)||t}}},validate(t,{schema:e,error:n,prefs:r}){if(t instanceof Date&&!isNaN(t.getTime()))return;let i=e._flags.format;return!r.convert||!i||typeof t!="string"?{value:t,errors:n("date.base")}:{value:t,errors:n("date.format",{format:i})}},rules:{compare:{method:!1,validate(t,e,{date:n},{name:r,operator:i,args:s}){let o=n==="now"?Date.now():n.getTime();return Fw.compare(t.getTime(),o,i)?t:e.error("date."+r,{limit:s.date,value:t})},args:[{name:"date",ref:!0,normalize:t=>t==="now"?t:rr.parse(t),assert:t=>t!==null,message:"must have a valid date format"}]},format:{method(t){return jw(["iso","javascript","unix"].includes(t),"Unknown date format",t),this.$_setFlag("format",t)}},greater:{method(t){return this.$_addRule({name:"greater",method:"compare",args:{date:t},operator:">"})}},iso:{method(){return this.format("iso")}},less:{method(t){return this.$_addRule({name:"less",method:"compare",args:{date:t},operator:"<"})}},max:{method(t){return this.$_addRule({name:"max",method:"compare",args:{date:t},operator:"<="})}},min:{method(t){return this.$_addRule({name:"min",method:"compare",args:{date:t},operator:">="})}},timestamp:{method(t="javascript"){return jw(["javascript","unix"].includes(t),'"type" must be one of "javascript, unix"'),this.format(t)}}},cast:{number:{from:rr.isDate,to(t,e){return t.getTime()}},string:{from:rr.isDate,to(t,{prefs:e}){return iD.date(t,e)}}},messages:{"date.base":"{{#label}} must be a valid date","date.format":'{{#label}} must be in {msg("date.format." + #format) || #format} format',"date.greater":"{{#label}} must be greater than {{:#limit}}","date.less":"{{#label}} must be less than {{:#limit}}","date.max":"{{#label}} must be less than or equal to {{:#limit}}","date.min":"{{#label}} must be greater than or equal to {{:#limit}}","date.format.iso":"ISO 8601 date","date.format.javascript":"timestamp or number of milliseconds","date.format.unix":"timestamp or number of seconds"}});rr.parse=function(t,e){if(t instanceof Date)return t;if(typeof t!="string"&&(isNaN(t)||!isFinite(t))||/^\s*$/.test(t))return null;if(e==="iso")return Fw.isIsoDate(t)?rr.date(t.toString()):null;let n=t;if(typeof t=="string"&&/^[+-]?\d+(\.\d+)?$/.test(t)&&(t=parseFloat(t)),e){if(e==="javascript")return rr.date(1*t);if(e==="unix")return rr.date(1e3*t);if(typeof n=="string")return null}return rr.date(t)};rr.date=function(t){let e=new Date(t);return isNaN(e.getTime())?null:e}});var Kw=g((y5,Gw)=>{"use strict";var Ol=Ie(),Hw=nn(),Ww=Sl(),Uw=Xi(),Cl={};Gw.exports=function(t,e,n={}){if(Ol(t&&typeof t=="object","Invalid defaults value: must be an object"),Ol(!e||e===!0||typeof e=="object","Invalid source value: must be true, falsy or an object"),Ol(typeof n=="object","Invalid options: must be an object"),!e)return null;if(n.shallow)return Cl.applyToDefaultsWithShallow(t,e,n);let r=Hw(t);if(e===!0)return r;let i=n.nullOverride!==void 0?n.nullOverride:!1;return Ww(r,e,{nullOverride:i,mergeArrays:!1})};Cl.applyToDefaultsWithShallow=function(t,e,n){let r=n.shallow;Ol(Array.isArray(r),"Invalid keys");let i=new Map,s=e===!0?null:new Set;for(let u of r){u=Array.isArray(u)?u:u.split(".");let c=Uw(t,u);c&&typeof c=="object"?i.set(c,s&&Uw(e,u)||c):s&&s.add(u)}let o=Hw(t,{},i);if(!s)return o;for(let u of s)Cl.reachCopy(o,e,u);let a=n.nullOverride!==void 0?n.nullOverride:!1;return Ww(o,e,{nullOverride:a,mergeArrays:!1})};Cl.reachCopy=function(t,e,n){for(let s of n){if(!(s in e))return;let o=e[s];if(typeof o!="object"||o===null)return;e=o}let r=e,i=t;for(let s=0;s<n.length-1;++s){let o=n[s];typeof i[o]!="object"&&(i[o]={}),i=i[o]}i[n[n.length-1]]=r}});var Xw=g(zw=>{"use strict";var ts=Ie(),Vw={};zw.Sorter=class{constructor(){this._items=[],this.nodes=[]}add(t,e){e=e||{};let n=[].concat(e.before||[]),r=[].concat(e.after||[]),i=e.group||"?",s=e.sort||0;ts(!n.includes(i),`Item cannot come before itself: ${i}`),ts(!n.includes("?"),"Item cannot come before unassociated items"),ts(!r.includes(i),`Item cannot come after itself: ${i}`),ts(!r.includes("?"),"Item cannot come after unassociated items"),Array.isArray(t)||(t=[t]);for(let o of t){let a={seq:this._items.length,sort:s,before:n,after:r,group:i,node:o};this._items.push(a)}if(!e.manual){let o=this._sort();ts(o,"item",i!=="?"?`added into group ${i}`:"","created a dependencies error")}return this.nodes}merge(t){Array.isArray(t)||(t=[t]);for(let n of t)if(n)for(let r of n._items)this._items.push(Object.assign({},r));this._items.sort(Vw.mergeSort);for(let n=0;n<this._items.length;++n)this._items[n].seq=n;let e=this._sort();return ts(e,"merge created a dependencies error"),this.nodes}sort(){let t=this._sort();return ts(t,"sort created a dependencies error"),this.nodes}_sort(){let t={},e=Object.create(null),n=Object.create(null);for(let a of this._items){let u=a.seq,c=a.group;n[c]=n[c]||[],n[c].push(u),t[u]=a.before;for(let l of a.after)e[l]=e[l]||[],e[l].push(u)}for(let a in t){let u=[];for(let c in t[a]){let l=t[a][c];n[l]=n[l]||[],u.push(...n[l])}t[a]=u}for(let a in e)if(n[a])for(let u of n[a])t[u].push(...e[a]);let r={};for(let a in t){let u=t[a];for(let c of u)r[c]=r[c]||[],r[c].push(a)}let i={},s=[];for(let a=0;a<this._items.length;++a){let u=a;if(r[a]){u=null;for(let c=0;c<this._items.length;++c){if(i[c]===!0)continue;r[c]||(r[c]=[]);let l=r[c].length,d=0;for(let p=0;p<l;++p)i[r[c][p]]&&++d;if(d===l){u=c;break}}}u!==null&&(i[u]=!0,s.push(u))}if(s.length!==this._items.length)return!1;let o={};for(let a of this._items)o[a.seq]=a;this._items=[],this.nodes=[];for(let a of s){let u=o[a];this.nodes.push(u.node),this._items.push(u)}return!0}};Vw.mergeSort=(t,e)=>t.sort===e.sort?0:t.sort<e.sort?-1:1});var km=g((_5,Qw)=>{"use strict";var sD=Kw(),Hn=Ie(),Yw=nn(),oD=Xw(),aD=Bn(),Yt=Qe(),Sm=Qi(),uD=Fr(),Jw=$r(),Rl=bi(),pe={renameDefaults:{alias:!1,multiple:!1,override:!1}};Qw.exports=aD.extend({type:"_keys",properties:{typeof:"object"},flags:{unknown:{default:void 0}},terms:{dependencies:{init:null},keys:{init:null,manifest:{mapped:{from:"schema",to:"key"}}},patterns:{init:null},renames:{init:null}},args(t,e){return t.keys(e)},validate(t,{schema:e,error:n,state:r,prefs:i}){if(!t||typeof t!==e.$_property("typeof")||Array.isArray(t))return{value:t,errors:n("object.base",{type:e.$_property("typeof")})};if(!e.$_terms.renames&&!e.$_terms.dependencies&&!e.$_terms.keys&&!e.$_terms.patterns&&!e.$_terms.externals)return;t=pe.clone(t,i);let s=[];if(e.$_terms.renames&&!pe.rename(e,t,r,i,s))return{value:t,errors:s};if(!e.$_terms.keys&&!e.$_terms.patterns&&!e.$_terms.dependencies)return{value:t,errors:s};let o=new Set(Object.keys(t));if(e.$_terms.keys){let a=[t,...r.ancestors];for(let u of e.$_terms.keys){let c=u.key,l=t[c];o.delete(c);let d=r.localize([...r.path,c],a,u),p=u.schema.$_validate(l,d,i);if(p.errors){if(i.abortEarly)return{value:t,errors:p.errors};p.value!==void 0&&(t[c]=p.value),s.push(...p.errors)}else u.schema._flags.result==="strip"||p.value===void 0&&l!==void 0?delete t[c]:p.value!==void 0&&(t[c]=p.value)}}if(o.size||e._flags._hasPatternMatch){let a=pe.unknown(e,t,o,s,r,i);if(a)return a}if(e.$_terms.dependencies)for(let a of e.$_terms.dependencies){if(a.key!==null&&pe.isPresent(a.options)(a.key.resolve(t,r,i,null,{shadow:!1}))===!1)continue;let u=pe.dependencies[a.rel](e,a,t,r,i);if(u){let c=e.$_createError(u.code,t,u.context,r,i);if(i.abortEarly)return{value:t,errors:c};s.push(c)}}return{value:t,errors:s}},rules:{and:{method(...t){return Yt.verifyFlat(t,"and"),pe.dependency(this,"and",null,t)}},append:{method(t){return t==null||Object.keys(t).length===0?this:this.keys(t)}},assert:{method(t,e,n){Rl.isTemplate(t)||(t=Sm.ref(t)),Hn(n===void 0||typeof n=="string","Message must be a string"),e=this.$_compile(e,{appendPath:!0});let r=this.$_addRule({name:"assert",args:{subject:t,schema:e,message:n}});return r.$_mutateRegister(t),r.$_mutateRegister(e),r},validate(t,{error:e,prefs:n,state:r},{subject:i,schema:s,message:o}){let a=i.resolve(t,r,n),u=Jw.isRef(i)?i.absolute(r):[];return s.$_match(a,r.localize(u,[t,...r.ancestors],s),n)?t:e("object.assert",{subject:i,message:o})},args:["subject","schema","message"],multi:!0},instance:{method(t,e){return Hn(typeof t=="function","constructor must be a function"),e=e||t.name,this.$_addRule({name:"instance",args:{constructor:t,name:e}})},validate(t,e,{constructor:n,name:r}){return t instanceof n?t:e.error("object.instance",{type:r,value:t})},args:["constructor","name"]},keys:{method(t){Hn(t===void 0||typeof t=="object","Object schema must be a valid object"),Hn(!Yt.isSchema(t),"Object schema cannot be a joi schema");let e=this.clone();if(!t)e.$_terms.keys=null;else if(!Object.keys(t).length)e.$_terms.keys=new pe.Keys;else{e.$_terms.keys=e.$_terms.keys?e.$_terms.keys.filter(n=>!t.hasOwnProperty(n.key)):new pe.Keys;for(let n in t)Yt.tryWithPath(()=>e.$_terms.keys.push({key:n,schema:this.$_compile(t[n])}),n)}return e.$_mutateRebuild()}},length:{method(t){return this.$_addRule({name:"length",args:{limit:t},operator:"="})},validate(t,e,{limit:n},{name:r,operator:i,args:s}){return Yt.compare(Object.keys(t).length,n,i)?t:e.error("object."+r,{limit:s.limit,value:t})},args:[{name:"limit",ref:!0,assert:Yt.limit,message:"must be a positive integer"}]},max:{method(t){return this.$_addRule({name:"max",method:"length",args:{limit:t},operator:"<="})}},min:{method(t){return this.$_addRule({name:"min",method:"length",args:{limit:t},operator:">="})}},nand:{method(...t){return Yt.verifyFlat(t,"nand"),pe.dependency(this,"nand",null,t)}},or:{method(...t){return Yt.verifyFlat(t,"or"),pe.dependency(this,"or",null,t)}},oxor:{method(...t){return pe.dependency(this,"oxor",null,t)}},pattern:{method(t,e,n={}){let r=t instanceof RegExp;r||(t=this.$_compile(t,{appendPath:!0})),Hn(e!==void 0,"Invalid rule"),Yt.assertOptions(n,["fallthrough","matches"]),r&&Hn(!t.flags.includes("g")&&!t.flags.includes("y"),"pattern should not use global or sticky mode"),e=this.$_compile(e,{appendPath:!0});let i=this.clone();i.$_terms.patterns=i.$_terms.patterns||[];let s={[r?"regex":"schema"]:t,rule:e};return n.matches&&(s.matches=this.$_compile(n.matches),s.matches.type!=="array"&&(s.matches=s.matches.$_root.array().items(s.matches)),i.$_mutateRegister(s.matches),i.$_setFlag("_hasPatternMatch",!0,{clone:!1})),n.fallthrough&&(s.fallthrough=!0),i.$_terms.patterns.push(s),i.$_mutateRegister(e),i}},ref:{method(){return this.$_addRule("ref")},validate(t,e){return Jw.isRef(t)?t:e.error("object.refType",{value:t})}},regex:{method(){return this.$_addRule("regex")},validate(t,e){return t instanceof RegExp?t:e.error("object.regex",{value:t})}},rename:{method(t,e,n={}){Hn(typeof t=="string"||t instanceof RegExp,"Rename missing the from argument"),Hn(typeof e=="string"||e instanceof Rl,"Invalid rename to argument"),Hn(e!==t,"Cannot rename key to same name:",t),Yt.assertOptions(n,["alias","ignoreUndefined","override","multiple"]);let r=this.clone();r.$_terms.renames=r.$_terms.renames||[];for(let i of r.$_terms.renames)Hn(i.from!==t,"Cannot rename the same key multiple times");return e instanceof Rl&&r.$_mutateRegister(e),r.$_terms.renames.push({from:t,to:e,options:sD(pe.renameDefaults,n)}),r}},schema:{method(t="any"){return this.$_addRule({name:"schema",args:{type:t}})},validate(t,e,{type:n}){return Yt.isSchema(t)&&(n==="any"||t.type===n)?t:e.error("object.schema",{type:n})}},unknown:{method(t){return this.$_setFlag("unknown",t!==!1)}},with:{method(t,e,n={}){return pe.dependency(this,"with",t,e,n)}},without:{method(t,e,n={}){return pe.dependency(this,"without",t,e,n)}},xor:{method(...t){return Yt.verifyFlat(t,"xor"),pe.dependency(this,"xor",null,t)}}},overrides:{default(t,e){return t===void 0&&(t=Yt.symbols.deepDefault),this.$_parent("default",t,e)}},rebuild(t){if(t.$_terms.keys){let e=new oD.Sorter;for(let n of t.$_terms.keys)Yt.tryWithPath(()=>e.add(n,{after:n.schema.$_rootReferences(),group:n.key}),n.key);t.$_terms.keys=new pe.Keys(...e.nodes)}},manifest:{build(t,e){if(e.keys&&(t=t.keys(e.keys)),e.dependencies)for(let{rel:n,key:r=null,peers:i,options:s}of e.dependencies)t=pe.dependency(t,n,r,i,s);if(e.patterns)for(let{regex:n,schema:r,rule:i,fallthrough:s,matches:o}of e.patterns)t=t.pattern(n||r,i,{fallthrough:s,matches:o});if(e.renames)for(let{from:n,to:r,options:i}of e.renames)t=t.rename(n,r,i);return t}},messages:{"object.and":"{{#label}} contains {{#presentWithLabels}} without its required peers {{#missingWithLabels}}","object.assert":'{{#label}} is invalid because {if(#subject.key, `"` + #subject.key + `" failed to ` + (#message || "pass the assertion test"), #message || "the assertion failed")}',"object.base":"{{#label}} must be of type {{#type}}","object.instance":"{{#label}} must be an instance of {{:#type}}","object.length":'{{#label}} must have {{#limit}} key{if(#limit == 1, "", "s")}',"object.max":'{{#label}} must have less than or equal to {{#limit}} key{if(#limit == 1, "", "s")}',"object.min":'{{#label}} must have at least {{#limit}} key{if(#limit == 1, "", "s")}',"object.missing":"{{#label}} must contain at least one of {{#peersWithLabels}}","object.nand":"{{:#mainWithLabel}} must not exist simultaneously with {{#peersWithLabels}}","object.oxor":"{{#label}} contains a conflict between optional exclusive peers {{#peersWithLabels}}","object.pattern.match":"{{#label}} keys failed to match pattern requirements","object.refType":"{{#label}} must be a Joi reference","object.regex":"{{#label}} must be a RegExp object","object.rename.multiple":"{{#label}} cannot rename {{:#from}} because multiple renames are disabled and another key was already renamed to {{:#to}}","object.rename.override":"{{#label}} cannot rename {{:#from}} because override is disabled and target {{:#to}} exists","object.schema":"{{#label}} must be a Joi schema of {{#type}} type","object.unknown":"{{#label}} is not allowed","object.with":"{{:#mainWithLabel}} missing required peer {{:#peerWithLabel}}","object.without":"{{:#mainWithLabel}} conflict with forbidden peer {{:#peerWithLabel}}","object.xor":"{{#label}} contains a conflict between exclusive peers {{#peersWithLabels}}"}});pe.clone=function(t,e){if(typeof t=="object"){if(e.nonEnumerables)return Yw(t,{shallow:!0});let r=Object.create(Object.getPrototypeOf(t));return Object.assign(r,t),r}let n=function(...r){return t.apply(this,r)};return n.prototype=Yw(t.prototype),Object.defineProperty(n,"name",{value:t.name,writable:!1}),Object.defineProperty(n,"length",{value:t.length,writable:!1}),Object.assign(n,t),n};pe.dependency=function(t,e,n,r,i){Hn(n===null||typeof n=="string",e,"key must be a strings"),i||(i=r.length>1&&typeof r[r.length-1]=="object"?r.pop():{}),Yt.assertOptions(i,["separator","isPresent"]),r=[].concat(r);let s=Yt.default(i.separator,"."),o=[];for(let u of r)Hn(typeof u=="string",e,"peers must be strings"),o.push(Sm.ref(u,{separator:s,ancestor:0,prefix:!1}));n!==null&&(n=Sm.ref(n,{separator:s,ancestor:0,prefix:!1}));let a=t.clone();return a.$_terms.dependencies=a.$_terms.dependencies||[],a.$_terms.dependencies.push(new pe.Dependency(e,n,o,r,i)),a};pe.dependencies={and(t,e,n,r,i){let s=[],o=[],a=e.peers.length,u=pe.isPresent(e.options);for(let c of e.peers)u(c.resolve(n,r,i,null,{shadow:!1}))===!1?s.push(c.key):o.push(c.key);if(s.length!==a&&o.length!==a)return{code:"object.and",context:{present:o,presentWithLabels:pe.keysToLabels(t,o),missing:s,missingWithLabels:pe.keysToLabels(t,s)}}},nand(t,e,n,r,i){let s=[],o=pe.isPresent(e.options);for(let c of e.peers)o(c.resolve(n,r,i,null,{shadow:!1}))&&s.push(c.key);if(s.length!==e.peers.length)return;let a=e.paths[0],u=e.paths.slice(1);return{code:"object.nand",context:{main:a,mainWithLabel:pe.keysToLabels(t,a),peers:u,peersWithLabels:pe.keysToLabels(t,u)}}},or(t,e,n,r,i){let s=pe.isPresent(e.options);for(let o of e.peers)if(s(o.resolve(n,r,i,null,{shadow:!1})))return;return{code:"object.missing",context:{peers:e.paths,peersWithLabels:pe.keysToLabels(t,e.paths)}}},oxor(t,e,n,r,i){let s=[],o=pe.isPresent(e.options);for(let u of e.peers)o(u.resolve(n,r,i,null,{shadow:!1}))&&s.push(u.key);if(!s.length||s.length===1)return;let a={peers:e.paths,peersWithLabels:pe.keysToLabels(t,e.paths)};return a.present=s,a.presentWithLabels=pe.keysToLabels(t,s),{code:"object.oxor",context:a}},with(t,e,n,r,i){let s=pe.isPresent(e.options);for(let o of e.peers)if(s(o.resolve(n,r,i,null,{shadow:!1}))===!1)return{code:"object.with",context:{main:e.key.key,mainWithLabel:pe.keysToLabels(t,e.key.key),peer:o.key,peerWithLabel:pe.keysToLabels(t,o.key)}}},without(t,e,n,r,i){let s=pe.isPresent(e.options);for(let o of e.peers)if(s(o.resolve(n,r,i,null,{shadow:!1})))return{code:"object.without",context:{main:e.key.key,mainWithLabel:pe.keysToLabels(t,e.key.key),peer:o.key,peerWithLabel:pe.keysToLabels(t,o.key)}}},xor(t,e,n,r,i){let s=[],o=pe.isPresent(e.options);for(let u of e.peers)o(u.resolve(n,r,i,null,{shadow:!1}))&&s.push(u.key);if(s.length===1)return;let a={peers:e.paths,peersWithLabels:pe.keysToLabels(t,e.paths)};return s.length===0?{code:"object.missing",context:a}:(a.present=s,a.presentWithLabels=pe.keysToLabels(t,s),{code:"object.xor",context:a})}};pe.keysToLabels=function(t,e){return Array.isArray(e)?e.map(n=>t.$_mapLabels(n)):t.$_mapLabels(e)};pe.isPresent=function(t){return typeof t.isPresent=="function"?t.isPresent:e=>e!==void 0};pe.rename=function(t,e,n,r,i){let s={};for(let o of t.$_terms.renames){let a=[],u=typeof o.from!="string";if(!u)Object.prototype.hasOwnProperty.call(e,o.from)&&(e[o.from]!==void 0||!o.options.ignoreUndefined)&&a.push(o);else for(let c in e){if(e[c]===void 0&&o.options.ignoreUndefined||c===o.to)continue;let l=o.from.exec(c);l&&a.push({from:c,to:o.to,match:l})}for(let c of a){let l=c.from,d=c.to;if(d instanceof Rl&&(d=d.render(e,n,r,c.match)),l!==d){if(!o.options.multiple&&s[d]&&(i.push(t.$_createError("object.rename.multiple",e,{from:l,to:d,pattern:u},n,r)),r.abortEarly)||Object.prototype.hasOwnProperty.call(e,d)&&!o.options.override&&!s[d]&&(i.push(t.$_createError("object.rename.override",e,{from:l,to:d,pattern:u},n,r)),r.abortEarly))return!1;e[l]===void 0?delete e[d]:e[d]=e[l],s[d]=!0,o.options.alias||delete e[l]}}}return!0};pe.unknown=function(t,e,n,r,i,s){if(t.$_terms.patterns){let a=!1,u=t.$_terms.patterns.map(l=>{if(l.matches)return a=!0,[]}),c=[e,...i.ancestors];for(let l of n){let d=e[l],p=[...i.path,l];for(let b=0;b<t.$_terms.patterns.length;++b){let _=t.$_terms.patterns[b];if(_.regex){let M=_.regex.test(l);if(i.mainstay.tracer.debug(i,"rule",`pattern.${b}`,M?"pass":"error"),!M)continue}else if(!_.schema.$_match(l,i.nest(_.schema,`pattern.${b}`),s))continue;n.delete(l);let E=i.localize(p,c,{schema:_.rule,key:l}),L=_.rule.$_validate(d,E,s);if(L.errors){if(s.abortEarly)return{value:e,errors:L.errors};r.push(...L.errors)}if(_.matches&&u[b].push(l),e[l]=L.value,!_.fallthrough)break}}if(a)for(let l=0;l<u.length;++l){let d=u[l];if(!d)continue;let p=t.$_terms.patterns[l].matches,b=i.localize(i.path,c,p),_=p.$_validate(d,b,s);if(_.errors){let E=uD.details(_.errors,{override:!1});E.matches=d;let L=t.$_createError("object.pattern.match",e,E,i,s);if(s.abortEarly)return{value:e,errors:L};r.push(L)}}}if(!n.size||!t.$_terms.keys&&!t.$_terms.patterns)return;if(s.stripUnknown&&typeof t._flags.unknown>"u"||s.skipFunctions){let a=s.stripUnknown?s.stripUnknown===!0?!0:!!s.stripUnknown.objects:!1;for(let u of n)a?(delete e[u],n.delete(u)):typeof e[u]=="function"&&n.delete(u)}if(!Yt.default(t._flags.unknown,s.allowUnknown))for(let a of n){let u=i.localize([...i.path,a],[]),c=t.$_createError("object.unknown",e[a],{child:a},u,s,{flags:!1});if(s.abortEarly)return{value:e,errors:c};r.push(c)}};pe.Dependency=class{constructor(t,e,n,r,i){this.rel=t,this.key=e,this.peers=n,this.paths=r,this.options=i}describe(){let t={rel:this.rel,peers:this.paths};return this.key!==null&&(t.key=this.key.key),this.peers[0].separator!=="."&&(t.options={...t.options,separator:this.peers[0].separator}),this.options.isPresent&&(t.options={...t.options,isPresent:this.options.isPresent}),t}};pe.Keys=class extends Array{concat(t){let e=this.slice(),n=new Map;for(let r=0;r<e.length;++r)n.set(e[r].key,r);for(let r of t){let i=r.key,s=n.get(i);s!==void 0?e[s]={key:i,schema:e[s].schema.concat(r.schema)}:e.push(r)}return e}}});var e0=g((k5,Zw)=>{"use strict";var xm=Ie(),cD=km();Zw.exports=cD.extend({type:"function",properties:{typeof:"function"},rules:{arity:{method(t){return xm(Number.isSafeInteger(t)&&t>=0,"n must be a positive integer"),this.$_addRule({name:"arity",args:{n:t}})},validate(t,e,{n}){return t.length===n?t:e.error("function.arity",{n})}},class:{method(){return this.$_addRule("class")},validate(t,e){return/^\s*class\s/.test(t.toString())?t:e.error("function.class",{value:t})}},minArity:{method(t){return xm(Number.isSafeInteger(t)&&t>0,"n must be a strict positive integer"),this.$_addRule({name:"minArity",args:{n:t}})},validate(t,e,{n}){return t.length>=n?t:e.error("function.minArity",{n})}},maxArity:{method(t){return xm(Number.isSafeInteger(t)&&t>=0,"n must be a positive integer"),this.$_addRule({name:"maxArity",args:{n:t}})},validate(t,e,{n}){return t.length<=n?t:e.error("function.maxArity",{n})}}},messages:{"function.arity":"{{#label}} must have an arity of {{#n}}","function.class":"{{#label}} must be a class","function.maxArity":"{{#label}} must have an arity lesser or equal to {{#n}}","function.minArity":"{{#label}} must have an arity greater or equal to {{#n}}"}})});var n0=g((x5,t0)=>{"use strict";var Wr=Ie(),lD=Bn(),dD=Qe(),fD=Qi(),pD=Fr(),Gr={};t0.exports=lD.extend({type:"link",properties:{schemaChain:!0},terms:{link:{init:null,manifest:"single",register:!1}},args(t,e){return t.ref(e)},validate(t,{schema:e,state:n,prefs:r}){Wr(e.$_terms.link,"Uninitialized link schema");let i=Gr.generate(e,t,n,r),s=e.$_terms.link[0].ref;return i.$_validate(t,n.nest(i,`link:${s.display}:${i.type}`),r)},generate(t,e,n,r){return Gr.generate(t,e,n,r)},rules:{ref:{method(t){Wr(!this.$_terms.link,"Cannot reinitialize schema"),t=fD.ref(t),Wr(t.type==="value"||t.type==="local","Invalid reference type:",t.type),Wr(t.type==="local"||t.ancestor==="root"||t.ancestor>0,"Link cannot reference itself");let e=this.clone();return e.$_terms.link=[{ref:t}],e}},relative:{method(t=!0){return this.$_setFlag("relative",t)}}},overrides:{concat(t){Wr(this.$_terms.link,"Uninitialized link schema"),Wr(dD.isSchema(t),"Invalid schema object"),Wr(t.type!=="link","Cannot merge type link with another link");let e=this.clone();return e.$_terms.whens||(e.$_terms.whens=[]),e.$_terms.whens.push({concat:t}),e.$_mutateRebuild()}},manifest:{build(t,e){return Wr(e.link,"Invalid link description missing link"),t.ref(e.link)}}});Gr.generate=function(t,e,n,r){let i=n.mainstay.links.get(t);if(i)return i._generate(e,n,r).schema;let s=t.$_terms.link[0].ref,{perspective:o,path:a}=Gr.perspective(s,n);Gr.assert(o,"which is outside of schema boundaries",s,t,n,r);try{i=a.length?o.$_reach(a):o}catch{Gr.assert(!1,"to non-existing schema",s,t,n,r)}return Gr.assert(i.type!=="link","which is another link",s,t,n,r),t._flags.relative||n.mainstay.links.set(t,i),i._generate(e,n,r).schema};Gr.perspective=function(t,e){if(t.type==="local"){for(let{schema:n,key:r}of e.schemas){if((n._flags.id||r)===t.path[0])return{perspective:n,path:t.path.slice(1)};if(n.$_terms.shared){for(let s of n.$_terms.shared)if(s._flags.id===t.path[0])return{perspective:s,path:t.path.slice(1)}}}return{perspective:null,path:null}}return t.ancestor==="root"?{perspective:e.schemas[e.schemas.length-1].schema,path:t.path}:{perspective:e.schemas[t.ancestor]&&e.schemas[t.ancestor].schema,path:t.path}};Gr.assert=function(t,e,n,r,i,s){t||Wr(!1,`"${pD.label(r._flags,i,s)}" contains link reference "${n.display}" ${e}`)}});var i0=g((w5,r0)=>{"use strict";var wm=Ie(),hD=Bn(),Em=Qe(),En={numberRx:/^\s*[+-]?(?:(?:\d+(?:\.\d*)?)|(?:\.\d+))(?:e([+-]?\d+))?\s*$/i,precisionRx:/(?:\.(\d+))?(?:[eE]([+-]?\d+))?$/,exponentialPartRegex:/[eE][+-]?\d+$/,leadingSignAndZerosRegex:/^[+-]?(0*)?/,dotRegex:/\./,trailingZerosRegex:/0+$/,decimalPlaces(t){let e=t.toString(),n=e.indexOf("."),r=e.indexOf("e");return(n<0?0:(r<0?e.length:r)-n-1)+(r<0?0:Math.max(0,-parseInt(e.slice(r+1))))}};r0.exports=hD.extend({type:"number",flags:{unsafe:{default:!1}},coerce:{from:"string",method(t,{schema:e,error:n}){if(!t.match(En.numberRx))return;t=t.trim();let i={value:parseFloat(t)};if(i.value===0&&(i.value=0),!e._flags.unsafe)if(t.match(/e/i)){if(En.extractSignificantDigits(t)!==En.extractSignificantDigits(String(i.value)))return i.errors=n("number.unsafe"),i}else{let s=i.value.toString();if(s.match(/e/i))return i;if(s!==En.normalizeDecimal(t))return i.errors=n("number.unsafe"),i}return i}},validate(t,{schema:e,error:n,prefs:r}){if(t===1/0||t===-1/0)return{value:t,errors:n("number.infinity")};if(!Em.isNumber(t))return{value:t,errors:n("number.base")};let i={value:t};if(r.convert){let s=e.$_getRule("precision");if(s){let o=Math.pow(10,s.args.limit);i.value=Math.round(i.value*o)/o}}return i.value===0&&(i.value=0),!e._flags.unsafe&&(t>Number.MAX_SAFE_INTEGER||t<Number.MIN_SAFE_INTEGER)&&(i.errors=n("number.unsafe")),i},rules:{compare:{method:!1,validate(t,e,{limit:n},{name:r,operator:i,args:s}){return Em.compare(t,n,i)?t:e.error("number."+r,{limit:s.limit,value:t})},args:[{name:"limit",ref:!0,assert:Em.isNumber,message:"must be a number"}]},greater:{method(t){return this.$_addRule({name:"greater",method:"compare",args:{limit:t},operator:">"})}},integer:{method(){return this.$_addRule("integer")},validate(t,e){return Math.trunc(t)-t===0?t:e.error("number.integer")}},less:{method(t){return this.$_addRule({name:"less",method:"compare",args:{limit:t},operator:"<"})}},max:{method(t){return this.$_addRule({name:"max",method:"compare",args:{limit:t},operator:"<="})}},min:{method(t){return this.$_addRule({name:"min",method:"compare",args:{limit:t},operator:">="})}},multiple:{method(t){let e=typeof t=="number"?En.decimalPlaces(t):null,n=Math.pow(10,e);return this.$_addRule({name:"multiple",args:{base:t,baseDecimalPlace:e,pfactor:n}})},validate(t,e,{base:n,baseDecimalPlace:r,pfactor:i},s){return En.decimalPlaces(t)>r?e.error("number.multiple",{multiple:s.args.base,value:t}):Math.round(i*t)%Math.round(i*n)===0?t:e.error("number.multiple",{multiple:s.args.base,value:t})},args:[{name:"base",ref:!0,assert:t=>typeof t=="number"&&isFinite(t)&&t>0,message:"must be a positive number"},"baseDecimalPlace","pfactor"],multi:!0},negative:{method(){return this.sign("negative")}},port:{method(){return this.$_addRule("port")},validate(t,e){return Number.isSafeInteger(t)&&t>=0&&t<=65535?t:e.error("number.port")}},positive:{method(){return this.sign("positive")}},precision:{method(t){return wm(Number.isSafeInteger(t),"limit must be an integer"),this.$_addRule({name:"precision",args:{limit:t}})},validate(t,e,{limit:n}){let r=t.toString().match(En.precisionRx);return Math.max((r[1]?r[1].length:0)-(r[2]?parseInt(r[2],10):0),0)<=n?t:e.error("number.precision",{limit:n,value:t})},convert:!0},sign:{method(t){return wm(["negative","positive"].includes(t),"Invalid sign",t),this.$_addRule({name:"sign",args:{sign:t}})},validate(t,e,{sign:n}){return n==="negative"&&t<0||n==="positive"&&t>0?t:e.error(`number.${n}`)}},unsafe:{method(t=!0){return wm(typeof t=="boolean","enabled must be a boolean"),this.$_setFlag("unsafe",t)}}},cast:{string:{from:t=>typeof t=="number",to(t,e){return t.toString()}}},messages:{"number.base":"{{#label}} must be a number","number.greater":"{{#label}} must be greater than {{#limit}}","number.infinity":"{{#label}} cannot be infinity","number.integer":"{{#label}} must be an integer","number.less":"{{#label}} must be less than {{#limit}}","number.max":"{{#label}} must be less than or equal to {{#limit}}","number.min":"{{#label}} must be greater than or equal to {{#limit}}","number.multiple":"{{#label}} must be a multiple of {{#multiple}}","number.negative":"{{#label}} must be a negative number","number.port":"{{#label}} must be a valid port","number.positive":"{{#label}} must be a positive number","number.precision":"{{#label}} must have no more than {{#limit}} decimal places","number.unsafe":"{{#label}} must be a safe number"}});En.extractSignificantDigits=function(t){return t.replace(En.exponentialPartRegex,"").replace(En.dotRegex,"").replace(En.trailingZerosRegex,"").replace(En.leadingSignAndZerosRegex,"")};En.normalizeDecimal=function(t){return t=t.replace(/^\+/,"").replace(/\.0*$/,"").replace(/^(-?)\.([^\.]*)$/,"$10.$2").replace(/^(-?)0+([0-9])/,"$1$2"),t.includes(".")&&t.endsWith("0")&&(t=t.replace(/0+$/,"")),t==="-0"?"0":t}});var o0=g((E5,s0)=>{"use strict";var gD=km();s0.exports=gD.extend({type:"object",cast:{map:{from:t=>t&&typeof t=="object",to(t,e){return new Map(Object.entries(t))}}}})});var Am=g(Pl=>{"use strict";Pl.codes={EMPTY_STRING:"Address must be a non-empty string",FORBIDDEN_UNICODE:"Address contains forbidden Unicode characters",MULTIPLE_AT_CHAR:"Address cannot contain more than one @ character",MISSING_AT_CHAR:"Address must contain one @ character",EMPTY_LOCAL:"Address local part cannot be empty",ADDRESS_TOO_LONG:"Address too long",LOCAL_TOO_LONG:"Address local part too long",EMPTY_LOCAL_SEGMENT:"Address local part contains empty dot-separated segment",INVALID_LOCAL_CHARS:"Address local part contains invalid character",DOMAIN_NON_EMPTY_STRING:"Domain must be a non-empty string",DOMAIN_TOO_LONG:"Domain too long",DOMAIN_INVALID_UNICODE_CHARS:"Domain contains forbidden Unicode characters",DOMAIN_INVALID_CHARS:"Domain contains invalid character",DOMAIN_INVALID_TLDS_CHARS:"Domain contains invalid tld character",DOMAIN_SEGMENTS_COUNT:"Domain lacks the minimum required number of segments",DOMAIN_SEGMENTS_COUNT_MAX:"Domain contains too many segments",DOMAIN_FORBIDDEN_TLDS:"Domain uses forbidden TLD",DOMAIN_EMPTY_SEGMENT:"Domain contains empty dot-separated segment",DOMAIN_LONG_SEGMENT:"Domain contains dot-separated segment that is too long"};Pl.code=function(t){return{code:t,error:Pl.codes[t]}}});var Om=g(Dl=>{"use strict";var mD=require("url"),ir=Am(),Ti={minDomainSegments:2,nonAsciiRx:/[^\x00-\x7f]/,domainControlRx:/[\x00-\x20@\:\/\\#!\$&\'\(\)\*\+,;=\?]/,tldSegmentRx:/^[a-zA-Z](?:[a-zA-Z0-9\-]*[a-zA-Z0-9])?$/,domainSegmentRx:/^[a-zA-Z0-9](?:[a-zA-Z0-9\-]*[a-zA-Z0-9])?$/,URL:mD.URL||URL};Dl.analyze=function(t,e={}){if(!t)return ir.code("DOMAIN_NON_EMPTY_STRING");if(typeof t!="string")throw new Error("Invalid input: domain must be a string");if(t.length>256)return ir.code("DOMAIN_TOO_LONG");if(!!Ti.nonAsciiRx.test(t)){if(e.allowUnicode===!1)return ir.code("DOMAIN_INVALID_UNICODE_CHARS");t=t.normalize("NFC")}if(Ti.domainControlRx.test(t))return ir.code("DOMAIN_INVALID_CHARS");t=Ti.punycode(t),e.allowFullyQualified&&t[t.length-1]==="."&&(t=t.slice(0,-1));let r=e.minDomainSegments||Ti.minDomainSegments,i=t.split(".");if(i.length<r)return ir.code("DOMAIN_SEGMENTS_COUNT");if(e.maxDomainSegments&&i.length>e.maxDomainSegments)return ir.code("DOMAIN_SEGMENTS_COUNT_MAX");let s=e.tlds;if(s){let o=i[i.length-1].toLowerCase();if(s.deny&&s.deny.has(o)||s.allow&&!s.allow.has(o))return ir.code("DOMAIN_FORBIDDEN_TLDS")}for(let o=0;o<i.length;++o){let a=i[o];if(!a.length)return ir.code("DOMAIN_EMPTY_SEGMENT");if(a.length>63)return ir.code("DOMAIN_LONG_SEGMENT");if(o<i.length-1){if(!Ti.domainSegmentRx.test(a))return ir.code("DOMAIN_INVALID_CHARS")}else if(!Ti.tldSegmentRx.test(a))return ir.code("DOMAIN_INVALID_TLDS_CHARS")}return null};Dl.isValid=function(t,e){return!Dl.analyze(t,e)};Ti.punycode=function(t){t.includes("%")&&(t=t.replace(/%/g,"%25"));try{return new Ti.URL(`http://${t}`).host}catch{return t}}});var a0=g(Cm=>{"use strict";var yD=require("util"),bD=Om(),xr=Am(),sn={nonAsciiRx:/[^\x00-\x7f]/,encoder:new(yD.TextEncoder||TextEncoder)};Cm.analyze=function(t,e){return sn.email(t,e)};Cm.isValid=function(t,e){return!sn.email(t,e)};sn.email=function(t,e={}){if(typeof t!="string")throw new Error("Invalid input: email must be a string");if(!t)return xr.code("EMPTY_STRING");let n=!sn.nonAsciiRx.test(t);if(!n){if(e.allowUnicode===!1)return xr.code("FORBIDDEN_UNICODE");t=t.normalize("NFC")}let r=t.split("@");if(r.length!==2)return r.length>2?xr.code("MULTIPLE_AT_CHAR"):xr.code("MISSING_AT_CHAR");let[i,s]=r;if(!i)return xr.code("EMPTY_LOCAL");if(!e.ignoreLength){if(t.length>254)return xr.code("ADDRESS_TOO_LONG");if(sn.encoder.encode(i).length>64)return xr.code("LOCAL_TOO_LONG")}return sn.local(i,n)||bD.analyze(s,e)};sn.local=function(t,e){let n=t.split(".");for(let r of n){if(!r.length)return xr.code("EMPTY_LOCAL_SEGMENT");if(e){if(!sn.atextRx.test(r))return xr.code("INVALID_LOCAL_CHARS");continue}for(let i of r){if(sn.atextRx.test(i))continue;let s=sn.binary(i);if(!sn.atomRx.test(s))return xr.code("INVALID_LOCAL_CHARS")}}};sn.binary=function(t){return Array.from(sn.encoder.encode(t)).map(e=>String.fromCharCode(e)).join("")};sn.atextRx=/^[\w!#\$%&'\*\+\-/=\?\^`\{\|\}~]+$/;sn.atomRx=new RegExp(["(?:[\\xc2-\\xdf][\\x80-\\xbf])","(?:\\xe0[\\xa0-\\xbf][\\x80-\\xbf])|(?:[\\xe1-\\xec][\\x80-\\xbf]{2})|(?:\\xed[\\x80-\\x9f][\\x80-\\xbf])|(?:[\\xee-\\xef][\\x80-\\xbf]{2})","(?:\\xf0[\\x90-\\xbf][\\x80-\\xbf]{2})|(?:[\\xf1-\\xf3][\\x80-\\xbf]{3})|(?:\\xf4[\\x80-\\x8f][\\x80-\\xbf]{2})"].join("|"))});var Rm=g((R5,u0)=>{"use strict";u0.exports=function(t){return t.replace(/[\^\$\.\*\+\-\?\=\!\:\|\\\/\(\)\[\]\{\}\,]/g,"\\$&")}});var Dm=g(Pm=>{"use strict";var Il=Ie(),vD=Rm(),Bt={};Bt.generate=function(){let t={},e="\\dA-Fa-f",n="["+e+"]",r="\\w-\\.~",i="!\\$&'\\(\\)\\*\\+,;=",s="%"+e,o=r+s+i+":@",a="["+o+"]",u="(?:0{0,2}\\d|0?[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])";t.ipv4address="(?:"+u+"\\.){3}"+u;let c=n+"{1,4}",l="(?:"+c+":"+c+"|"+t.ipv4address+")",d="(?:"+c+":){6}"+l,p="::(?:"+c+":){5}"+l,b="(?:"+c+")?::(?:"+c+":){4}"+l,_="(?:(?:"+c+":){0,1}"+c+")?::(?:"+c+":){3}"+l,E="(?:(?:"+c+":){0,2}"+c+")?::(?:"+c+":){2}"+l,L="(?:(?:"+c+":){0,3}"+c+")?::"+c+":"+l,M="(?:(?:"+c+":){0,4}"+c+")?::"+l,x="(?:(?:"+c+":){0,5}"+c+")?::"+c,k="(?:(?:"+c+":){0,6}"+c+")?::";t.ipv4Cidr="(?:\\d|[1-2]\\d|3[0-2])",t.ipv6Cidr="(?:0{0,2}\\d|0?[1-9]\\d|1[01]\\d|12[0-8])",t.ipv6address="(?:"+d+"|"+p+"|"+b+"|"+_+"|"+E+"|"+L+"|"+M+"|"+x+"|"+k+")",t.ipvFuture="v"+n+"+\\.["+r+i+":]+",t.scheme="[a-zA-Z][a-zA-Z\\d+-\\.]*",t.schemeRegex=new RegExp(t.scheme);let v="["+r+s+i+":]*",F="\\[(?:"+t.ipv6address+"|"+t.ipvFuture+")\\]",C="["+r+s+i+"]{1,255}",V="(?:"+F+"|"+t.ipv4address+"|"+C+")",ce="\\d*",ye="(?:"+v+"@)?"+V+"(?::"+ce+")?",K="(?:"+v+"@)?("+V+")(?::"+ce+")?",A=a+"*",D=a+"+",I="["+r+s+i+"@]+",j="",he="(?:\\/"+A+")*",fe="\\/(?:"+D+he+")?",Dt=D+he,mt=I+he,$e="(?:\\/\\/\\/"+A+he+")";return t.hierPart="(?:(?:\\/\\/"+ye+he+")|"+fe+"|"+Dt+"|"+$e+")",t.hierPartCapture="(?:(?:\\/\\/"+K+he+")|"+fe+"|"+Dt+")",t.relativeRef="(?:(?:\\/\\/"+ye+he+")|"+fe+"|"+mt+"|"+j+")",t.relativeRefCapture="(?:(?:\\/\\/"+K+he+")|"+fe+"|"+mt+"|"+j+")",t.query="["+o+"\\/\\?]*(?=#|$)",t.queryWithSquareBrackets="["+o+"\\[\\]\\/\\?]*(?=#|$)",t.fragment="["+o+"\\/\\?]*",t};Bt.rfc3986=Bt.generate();Pm.ip={v4Cidr:Bt.rfc3986.ipv4Cidr,v6Cidr:Bt.rfc3986.ipv6Cidr,ipv4:Bt.rfc3986.ipv4address,ipv6:Bt.rfc3986.ipv6address,ipvfuture:Bt.rfc3986.ipvFuture};Bt.createRegex=function(t){let e=Bt.rfc3986,r="(?:\\?"+(t.allowQuerySquareBrackets?e.queryWithSquareBrackets:e.query)+")?(?:#"+e.fragment+")?",i=t.domain?e.relativeRefCapture:e.relativeRef;if(t.relativeOnly)return Bt.wrap(i+r);let s="";if(t.scheme){Il(t.scheme instanceof RegExp||typeof t.scheme=="string"||Array.isArray(t.scheme),"scheme must be a RegExp, String, or Array");let c=[].concat(t.scheme);Il(c.length>=1,"scheme must have at least 1 scheme specified");let l=[];for(let d=0;d<c.length;++d){let p=c[d];Il(p instanceof RegExp||typeof p=="string","scheme at position "+d+" must be a RegExp or String"),p instanceof RegExp?l.push(p.source.toString()):(Il(e.schemeRegex.test(p),"scheme at position "+d+" must be a valid scheme"),l.push(vD(p)))}s=l.join("|")}let a="(?:"+(s?"(?:"+s+")":e.scheme)+":"+(t.domain?e.hierPartCapture:e.hierPart)+")",u=t.allowRelative?"(?:"+a+"|"+i+")":a;return Bt.wrap(u+r,s)};Bt.wrap=function(t,e){return t=`(?=.)(?!https?:/(?:$|[^/]))(?!https?:///)(?!https?:[^/])${t}`,{raw:t,regex:new RegExp(`^${t}$`),scheme:e}};Bt.uriRegex=Bt.createRegex({});Pm.regex=function(t={}){return t.scheme||t.allowRelative||t.relativeOnly||t.allowQuerySquareBrackets||t.domain?Bt.createRegex(t):Bt.uriRegex}});var l0=g(c0=>{"use strict";var so=Ie(),Aa=Dm();c0.regex=function(t={}){so(t.cidr===void 0||typeof t.cidr=="string","options.cidr must be a string");let e=t.cidr?t.cidr.toLowerCase():"optional";so(["required","optional","forbidden"].includes(e),"options.cidr must be one of required, optional, forbidden"),so(t.version===void 0||typeof t.version=="string"||Array.isArray(t.version),"options.version must be a string or an array of string");let n=t.version||["ipv4","ipv6","ipvfuture"];Array.isArray(n)||(n=[n]),so(n.length>=1,"options.version must have at least 1 version specified");for(let o=0;o<n.length;++o)so(typeof n[o]=="string","options.version must only contain strings"),n[o]=n[o].toLowerCase(),so(["ipv4","ipv6","ipvfuture"].includes(n[o]),"options.version contains unknown version "+n[o]+" - must be one of ipv4, ipv6, ipvfuture");n=Array.from(new Set(n));let i=`(?:${n.map(o=>{if(e==="forbidden")return Aa.ip[o];let a=`\\/${o==="ipv4"?Aa.ip.v4Cidr:Aa.ip.v6Cidr}`;return e==="required"?`${Aa.ip[o]}${a}`:`${Aa.ip[o]}(?:${a})?`}).join("|")})`,s=new RegExp(`^${i}$`);return{cidr:e,versions:n,regex:s,raw:i}}});var p0=g((I5,f0)=>{"use strict";var d0={};d0.tlds=["AAA","AARP","ABB","ABBOTT","ABBVIE","ABC","ABLE","ABOGADO","ABUDHABI","AC","ACADEMY","ACCENTURE","ACCOUNTANT","ACCOUNTANTS","ACO","ACTOR","AD","ADS","ADULT","AE","AEG","AERO","AETNA","AF","AFL","AFRICA","AG","AGAKHAN","AGENCY","AI","AIG","AIRBUS","AIRFORCE","AIRTEL","AKDN","AL","ALIBABA","ALIPAY","ALLFINANZ","ALLSTATE","ALLY","ALSACE","ALSTOM","AM","AMAZON","AMERICANEXPRESS","AMERICANFAMILY","AMEX","AMFAM","AMICA","AMSTERDAM","ANALYTICS","ANDROID","ANQUAN","ANZ","AO","AOL","APARTMENTS","APP","APPLE","AQ","AQUARELLE","AR","ARAB","ARAMCO","ARCHI","ARMY","ARPA","ART","ARTE","AS","ASDA","ASIA","ASSOCIATES","AT","ATHLETA","ATTORNEY","AU","AUCTION","AUDI","AUDIBLE","AUDIO","AUSPOST","AUTHOR","AUTO","AUTOS","AVIANCA","AW","AWS","AX","AXA","AZ","AZURE","BA","BABY","BAIDU","BANAMEX","BAND","BANK","BAR","BARCELONA","BARCLAYCARD","BARCLAYS","BAREFOOT","BARGAINS","BASEBALL","BASKETBALL","BAUHAUS","BAYERN","BB","BBC","BBT","BBVA","BCG","BCN","BD","BE","BEATS","BEAUTY","BEER","BENTLEY","BERLIN","BEST","BESTBUY","BET","BF","BG","BH","BHARTI","BI","BIBLE","BID","BIKE","BING","BINGO","BIO","BIZ","BJ","BLACK","BLACKFRIDAY","BLOCKBUSTER","BLOG","BLOOMBERG","BLUE","BM","BMS","BMW","BN","BNPPARIBAS","BO","BOATS","BOEHRINGER","BOFA","BOM","BOND","BOO","BOOK","BOOKING","BOSCH","BOSTIK","BOSTON","BOT","BOUTIQUE","BOX","BR","BRADESCO","BRIDGESTONE","BROADWAY","BROKER","BROTHER","BRUSSELS","BS","BT","BUILD","BUILDERS","BUSINESS","BUY","BUZZ","BV","BW","BY","BZ","BZH","CA","CAB","CAFE","CAL","CALL","CALVINKLEIN","CAM","CAMERA","CAMP","CANON","CAPETOWN","CAPITAL","CAPITALONE","CAR","CARAVAN","CARDS","CARE","CAREER","CAREERS","CARS","CASA","CASE","CASH","CASINO","CAT","CATERING","CATHOLIC","CBA","CBN","CBRE","CC","CD","CENTER","CEO","CERN","CF","CFA","CFD","CG","CH","CHANEL","CHANNEL","CHARITY","CHASE","CHAT","CHEAP","CHINTAI","CHRISTMAS","CHROME","CHURCH","CI","CIPRIANI","CIRCLE","CISCO","CITADEL","CITI","CITIC","CITY","CK","CL","CLAIMS","CLEANING","CLICK","CLINIC","CLINIQUE","CLOTHING","CLOUD","CLUB","CLUBMED","CM","CN","CO","COACH","CODES","COFFEE","COLLEGE","COLOGNE","COM","COMCAST","COMMBANK","COMMUNITY","COMPANY","COMPARE","COMPUTER","COMSEC","CONDOS","CONSTRUCTION","CONSULTING","CONTACT","CONTRACTORS","COOKING","COOL","COOP","CORSICA","COUNTRY","COUPON","COUPONS","COURSES","CPA","CR","CREDIT","CREDITCARD","CREDITUNION","CRICKET","CROWN","CRS","CRUISE","CRUISES","CU","CUISINELLA","CV","CW","CX","CY","CYMRU","CYOU","CZ","DABUR","DAD","DANCE","DATA","DATE","DATING","DATSUN","DAY","DCLK","DDS","DE","DEAL","DEALER","DEALS","DEGREE","DELIVERY","DELL","DELOITTE","DELTA","DEMOCRAT","DENTAL","DENTIST","DESI","DESIGN","DEV","DHL","DIAMONDS","DIET","DIGITAL","DIRECT","DIRECTORY","DISCOUNT","DISCOVER","DISH","DIY","DJ","DK","DM","DNP","DO","DOCS","DOCTOR","DOG","DOMAINS","DOT","DOWNLOAD","DRIVE","DTV","DUBAI","DUNLOP","DUPONT","DURBAN","DVAG","DVR","DZ","EARTH","EAT","EC","ECO","EDEKA","EDU","EDUCATION","EE","EG","EMAIL","EMERCK","ENERGY","ENGINEER","ENGINEERING","ENTERPRISES","EPSON","EQUIPMENT","ER","ERICSSON","ERNI","ES","ESQ","ESTATE","ET","EU","EUROVISION","EUS","EVENTS","EXCHANGE","EXPERT","EXPOSED","EXPRESS","EXTRASPACE","FAGE","FAIL","FAIRWINDS","FAITH","FAMILY","FAN","FANS","FARM","FARMERS","FASHION","FAST","FEDEX","FEEDBACK","FERRARI","FERRERO","FI","FIDELITY","FIDO","FILM","FINAL","FINANCE","FINANCIAL","FIRE","FIRESTONE","FIRMDALE","FISH","FISHING","FIT","FITNESS","FJ","FK","FLICKR","FLIGHTS","FLIR","FLORIST","FLOWERS","FLY","FM","FO","FOO","FOOD","FOOTBALL","FORD","FOREX","FORSALE","FORUM","FOUNDATION","FOX","FR","FREE","FRESENIUS","FRL","FROGANS","FRONTIER","FTR","FUJITSU","FUN","FUND","FURNITURE","FUTBOL","FYI","GA","GAL","GALLERY","GALLO","GALLUP","GAME","GAMES","GAP","GARDEN","GAY","GB","GBIZ","GD","GDN","GE","GEA","GENT","GENTING","GEORGE","GF","GG","GGEE","GH","GI","GIFT","GIFTS","GIVES","GIVING","GL","GLASS","GLE","GLOBAL","GLOBO","GM","GMAIL","GMBH","GMO","GMX","GN","GODADDY","GOLD","GOLDPOINT","GOLF","GOO","GOODYEAR","GOOG","GOOGLE","GOP","GOT","GOV","GP","GQ","GR","GRAINGER","GRAPHICS","GRATIS","GREEN","GRIPE","GROCERY","GROUP","GS","GT","GU","GUARDIAN","GUCCI","GUGE","GUIDE","GUITARS","GURU","GW","GY","HAIR","HAMBURG","HANGOUT","HAUS","HBO","HDFC","HDFCBANK","HEALTH","HEALTHCARE","HELP","HELSINKI","HERE","HERMES","HIPHOP","HISAMITSU","HITACHI","HIV","HK","HKT","HM","HN","HOCKEY","HOLDINGS","HOLIDAY","HOMEDEPOT","HOMEGOODS","HOMES","HOMESENSE","HONDA","HORSE","HOSPITAL","HOST","HOSTING","HOT","HOTELS","HOTMAIL","HOUSE","HOW","HR","HSBC","HT","HU","HUGHES","HYATT","HYUNDAI","IBM","ICBC","ICE","ICU","ID","IE","IEEE","IFM","IKANO","IL","IM","IMAMAT","IMDB","IMMO","IMMOBILIEN","IN","INC","INDUSTRIES","INFINITI","INFO","ING","INK","INSTITUTE","INSURANCE","INSURE","INT","INTERNATIONAL","INTUIT","INVESTMENTS","IO","IPIRANGA","IQ","IR","IRISH","IS","ISMAILI","IST","ISTANBUL","IT","ITAU","ITV","JAGUAR","JAVA","JCB","JE","JEEP","JETZT","JEWELRY","JIO","JLL","JM","JMP","JNJ","JO","JOBS","JOBURG","JOT","JOY","JP","JPMORGAN","JPRS","JUEGOS","JUNIPER","KAUFEN","KDDI","KE","KERRYHOTELS","KERRYLOGISTICS","KERRYPROPERTIES","KFH","KG","KH","KI","KIA","KIDS","KIM","KINDLE","KITCHEN","KIWI","KM","KN","KOELN","KOMATSU","KOSHER","KP","KPMG","KPN","KR","KRD","KRED","KUOKGROUP","KW","KY","KYOTO","KZ","LA","LACAIXA","LAMBORGHINI","LAMER","LANCASTER","LAND","LANDROVER","LANXESS","LASALLE","LAT","LATINO","LATROBE","LAW","LAWYER","LB","LC","LDS","LEASE","LECLERC","LEFRAK","LEGAL","LEGO","LEXUS","LGBT","LI","LIDL","LIFE","LIFEINSURANCE","LIFESTYLE","LIGHTING","LIKE","LILLY","LIMITED","LIMO","LINCOLN","LINK","LIPSY","LIVE","LIVING","LK","LLC","LLP","LOAN","LOANS","LOCKER","LOCUS","LOL","LONDON","LOTTE","LOTTO","LOVE","LPL","LPLFINANCIAL","LR","LS","LT","LTD","LTDA","LU","LUNDBECK","LUXE","LUXURY","LV","LY","MA","MADRID","MAIF","MAISON","MAKEUP","MAN","MANAGEMENT","MANGO","MAP","MARKET","MARKETING","MARKETS","MARRIOTT","MARSHALLS","MATTEL","MBA","MC","MCKINSEY","MD","ME","MED","MEDIA","MEET","MELBOURNE","MEME","MEMORIAL","MEN","MENU","MERCKMSD","MG","MH","MIAMI","MICROSOFT","MIL","MINI","MINT","MIT","MITSUBISHI","MK","ML","MLB","MLS","MM","MMA","MN","MO","MOBI","MOBILE","MODA","MOE","MOI","MOM","MONASH","MONEY","MONSTER","MORMON","MORTGAGE","MOSCOW","MOTO","MOTORCYCLES","MOV","MOVIE","MP","MQ","MR","MS","MSD","MT","MTN","MTR","MU","MUSEUM","MUSIC","MV","MW","MX","MY","MZ","NA","NAB","NAGOYA","NAME","NATURA","NAVY","NBA","NC","NE","NEC","NET","NETBANK","NETFLIX","NETWORK","NEUSTAR","NEW","NEWS","NEXT","NEXTDIRECT","NEXUS","NF","NFL","NG","NGO","NHK","NI","NICO","NIKE","NIKON","NINJA","NISSAN","NISSAY","NL","NO","NOKIA","NORTON","NOW","NOWRUZ","NOWTV","NP","NR","NRA","NRW","NTT","NU","NYC","NZ","OBI","OBSERVER","OFFICE","OKINAWA","OLAYAN","OLAYANGROUP","OLLO","OM","OMEGA","ONE","ONG","ONL","ONLINE","OOO","OPEN","ORACLE","ORANGE","ORG","ORGANIC","ORIGINS","OSAKA","OTSUKA","OTT","OVH","PA","PAGE","PANASONIC","PARIS","PARS","PARTNERS","PARTS","PARTY","PAY","PCCW","PE","PET","PF","PFIZER","PG","PH","PHARMACY","PHD","PHILIPS","PHONE","PHOTO","PHOTOGRAPHY","PHOTOS","PHYSIO","PICS","PICTET","PICTURES","PID","PIN","PING","PINK","PIONEER","PIZZA","PK","PL","PLACE","PLAY","PLAYSTATION","PLUMBING","PLUS","PM","PN","PNC","POHL","POKER","POLITIE","PORN","POST","PR","PRAMERICA","PRAXI","PRESS","PRIME","PRO","PROD","PRODUCTIONS","PROF","PROGRESSIVE","PROMO","PROPERTIES","PROPERTY","PROTECTION","PRU","PRUDENTIAL","PS","PT","PUB","PW","PWC","PY","QA","QPON","QUEBEC","QUEST","RACING","RADIO","RE","READ","REALESTATE","REALTOR","REALTY","RECIPES","RED","REDSTONE","REDUMBRELLA","REHAB","REISE","REISEN","REIT","RELIANCE","REN","RENT","RENTALS","REPAIR","REPORT","REPUBLICAN","REST","RESTAURANT","REVIEW","REVIEWS","REXROTH","RICH","RICHARDLI","RICOH","RIL","RIO","RIP","RO","ROCKS","RODEO","ROGERS","ROOM","RS","RSVP","RU","RUGBY","RUHR","RUN","RW","RWE","RYUKYU","SA","SAARLAND","SAFE","SAFETY","SAKURA","SALE","SALON","SAMSCLUB","SAMSUNG","SANDVIK","SANDVIKCOROMANT","SANOFI","SAP","SARL","SAS","SAVE","SAXO","SB","SBI","SBS","SC","SCB","SCHAEFFLER","SCHMIDT","SCHOLARSHIPS","SCHOOL","SCHULE","SCHWARZ","SCIENCE","SCOT","SD","SE","SEARCH","SEAT","SECURE","SECURITY","SEEK","SELECT","SENER","SERVICES","SEVEN","SEW","SEX","SEXY","SFR","SG","SH","SHANGRILA","SHARP","SHAW","SHELL","SHIA","SHIKSHA","SHOES","SHOP","SHOPPING","SHOUJI","SHOW","SI","SILK","SINA","SINGLES","SITE","SJ","SK","SKI","SKIN","SKY","SKYPE","SL","SLING","SM","SMART","SMILE","SN","SNCF","SO","SOCCER","SOCIAL","SOFTBANK","SOFTWARE","SOHU","SOLAR","SOLUTIONS","SONG","SONY","SOY","SPA","SPACE","SPORT","SPOT","SR","SRL","SS","ST","STADA","STAPLES","STAR","STATEBANK","STATEFARM","STC","STCGROUP","STOCKHOLM","STORAGE","STORE","STREAM","STUDIO","STUDY","STYLE","SU","SUCKS","SUPPLIES","SUPPLY","SUPPORT","SURF","SURGERY","SUZUKI","SV","SWATCH","SWISS","SX","SY","SYDNEY","SYSTEMS","SZ","TAB","TAIPEI","TALK","TAOBAO","TARGET","TATAMOTORS","TATAR","TATTOO","TAX","TAXI","TC","TCI","TD","TDK","TEAM","TECH","TECHNOLOGY","TEL","TEMASEK","TENNIS","TEVA","TF","TG","TH","THD","THEATER","THEATRE","TIAA","TICKETS","TIENDA","TIPS","TIRES","TIROL","TJ","TJMAXX","TJX","TK","TKMAXX","TL","TM","TMALL","TN","TO","TODAY","TOKYO","TOOLS","TOP","TORAY","TOSHIBA","TOTAL","TOURS","TOWN","TOYOTA","TOYS","TR","TRADE","TRADING","TRAINING","TRAVEL","TRAVELERS","TRAVELERSINSURANCE","TRUST","TRV","TT","TUBE","TUI","TUNES","TUSHU","TV","TVS","TW","TZ","UA","UBANK","UBS","UG","UK","UNICOM","UNIVERSITY","UNO","UOL","UPS","US","UY","UZ","VA","VACATIONS","VANA","VANGUARD","VC","VE","VEGAS","VENTURES","VERISIGN","VERSICHERUNG","VET","VG","VI","VIAJES","VIDEO","VIG","VIKING","VILLAS","VIN","VIP","VIRGIN","VISA","VISION","VIVA","VIVO","VLAANDEREN","VN","VODKA","VOLVO","VOTE","VOTING","VOTO","VOYAGE","VU","WALES","WALMART","WALTER","WANG","WANGGOU","WATCH","WATCHES","WEATHER","WEATHERCHANNEL","WEBCAM","WEBER","WEBSITE","WED","WEDDING","WEIBO","WEIR","WF","WHOSWHO","WIEN","WIKI","WILLIAMHILL","WIN","WINDOWS","WINE","WINNERS","WME","WOLTERSKLUWER","WOODSIDE","WORK","WORKS","WORLD","WOW","WS","WTC","WTF","XBOX","XEROX","XFINITY","XIHUAN","XIN","XN--11B4C3D","XN--1CK2E1B","XN--1QQW23A","XN--2SCRJ9C","XN--30RR7Y","XN--3BST00M","XN--3DS443G","XN--3E0B707E","XN--3HCRJ9C","XN--3PXU8K","XN--42C2D9A","XN--45BR5CYL","XN--45BRJ9C","XN--45Q11C","XN--4DBRK0CE","XN--4GBRIM","XN--54B7FTA0CC","XN--55QW42G","XN--55QX5D","XN--5SU34J936BGSG","XN--5TZM5G","XN--6FRZ82G","XN--6QQ986B3XL","XN--80ADXHKS","XN--80AO21A","XN--80AQECDR1A","XN--80ASEHDB","XN--80ASWG","XN--8Y0A063A","XN--90A3AC","XN--90AE","XN--90AIS","XN--9DBQ2A","XN--9ET52U","XN--9KRT00A","XN--B4W605FERD","XN--BCK1B9A5DRE4C","XN--C1AVG","XN--C2BR7G","XN--CCK2B3B","XN--CCKWCXETD","XN--CG4BKI","XN--CLCHC0EA0B2G2A9GCD","XN--CZR694B","XN--CZRS0T","XN--CZRU2D","XN--D1ACJ3B","XN--D1ALF","XN--E1A4C","XN--ECKVDTC9D","XN--EFVY88H","XN--FCT429K","XN--FHBEI","XN--FIQ228C5HS","XN--FIQ64B","XN--FIQS8S","XN--FIQZ9S","XN--FJQ720A","XN--FLW351E","XN--FPCRJ9C3D","XN--FZC2C9E2C","XN--FZYS8D69UVGM","XN--G2XX48C","XN--GCKR3F0F","XN--GECRJ9C","XN--GK3AT1E","XN--H2BREG3EVE","XN--H2BRJ9C","XN--H2BRJ9C8C","XN--HXT814E","XN--I1B6B1A6A2E","XN--IMR513N","XN--IO0A7I","XN--J1AEF","XN--J1AMH","XN--J6W193G","XN--JLQ480N2RG","XN--JVR189M","XN--KCRX77D1X4A","XN--KPRW13D","XN--KPRY57D","XN--KPUT3I","XN--L1ACC","XN--LGBBAT1AD8J","XN--MGB9AWBF","XN--MGBA3A3EJT","XN--MGBA3A4F16A","XN--MGBA7C0BBN0A","XN--MGBAAM7A8H","XN--MGBAB2BD","XN--MGBAH1A3HJKRD","XN--MGBAI9AZGQP6J","XN--MGBAYH7GPA","XN--MGBBH1A","XN--MGBBH1A71E","XN--MGBC0A9AZCG","XN--MGBCA7DZDO","XN--MGBCPQ6GPA1A","XN--MGBERP4A5D4AR","XN--MGBGU82A","XN--MGBI4ECEXP","XN--MGBPL2FH","XN--MGBT3DHD","XN--MGBTX2B","XN--MGBX4CD0AB","XN--MIX891F","XN--MK1BU44C","XN--MXTQ1M","XN--NGBC5AZD","XN--NGBE9E0A","XN--NGBRX","XN--NODE","XN--NQV7F","XN--NQV7FS00EMA","XN--NYQY26A","XN--O3CW4H","XN--OGBPF8FL","XN--OTU796D","XN--P1ACF","XN--P1AI","XN--PGBS0DH","XN--PSSY2U","XN--Q7CE6A","XN--Q9JYB4C","XN--QCKA1PMC","XN--QXA6A","XN--QXAM","XN--RHQV96G","XN--ROVU88B","XN--RVC1E0AM3E","XN--S9BRJ9C","XN--SES554G","XN--T60B56A","XN--TCKWE","XN--TIQ49XQYJ","XN--UNUP4Y","XN--VERMGENSBERATER-CTB","XN--VERMGENSBERATUNG-PWB","XN--VHQUV","XN--VUQ861B","XN--W4R85EL8FHU5DNRA","XN--W4RS40L","XN--WGBH1C","XN--WGBL6A","XN--XHQ521B","XN--XKC2AL3HYE2A","XN--XKC2DL3A5EE0H","XN--Y9A3AQ","XN--YFRO4I67O","XN--YGBI2AMMX","XN--ZFR164B","XXX","XYZ","YACHTS","YAHOO","YAMAXUN","YANDEX","YE","YODOBASHI","YOGA","YOKOHAMA","YOU","YOUTUBE","YT","YUN","ZA","ZAPPOS","ZARA","ZERO","ZIP","ZM","ZONE","ZUERICH","ZW"];f0.exports=new Set(d0.tlds.map(t=>t.toLowerCase()))});var b0=g((M5,y0)=>{"use strict";var Ue=Ie(),Ml=Om(),_D=a0(),m0=l0(),h0=Rm(),g0=p0(),TD=Dm(),SD=Bn(),on=Qe(),Re={tlds:g0 instanceof Set?{tlds:{allow:g0,deny:null}}:!1,base64Regex:{true:{true:/^(?:[\w\-]{2}[\w\-]{2})*(?:[\w\-]{2}==|[\w\-]{3}=)?$/,false:/^(?:[A-Za-z0-9+\/]{2}[A-Za-z0-9+\/]{2})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$/},false:{true:/^(?:[\w\-]{2}[\w\-]{2})*(?:[\w\-]{2}(==)?|[\w\-]{3}=?)?$/,false:/^(?:[A-Za-z0-9+\/]{2}[A-Za-z0-9+\/]{2})*(?:[A-Za-z0-9+\/]{2}(==)?|[A-Za-z0-9+\/]{3}=?)?$/}},dataUriRegex:/^data:[\w+.-]+\/[\w+.-]+;((charset=[\w-]+|base64),)?(.*)$/,hexRegex:{withPrefix:/^0x[0-9a-f]+$/i,withOptionalPrefix:/^(?:0x)?[0-9a-f]+$/i,withoutPrefix:/^[0-9a-f]+$/i},ipRegex:m0.regex({cidr:"forbidden"}).regex,isoDurationRegex:/^P(?!$)(\d+Y)?(\d+M)?(\d+W)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?$/,guidBrackets:{"{":"}","[":"]","(":")","":""},guidVersions:{uuidv1:"1",uuidv2:"2",uuidv3:"3",uuidv4:"4",uuidv5:"5",uuidv6:"6",uuidv7:"7",uuidv8:"8"},guidSeparators:new Set([void 0,!0,!1,"-",":"]),normalizationForms:["NFC","NFD","NFKC","NFKD"]};y0.exports=SD.extend({type:"string",flags:{insensitive:{default:!1},truncate:{default:!1}},terms:{replacements:{init:null}},coerce:{from:"string",method(t,{schema:e,state:n,prefs:r}){let i=e.$_getRule("normalize");i&&(t=t.normalize(i.args.form));let s=e.$_getRule("case");s&&(t=s.args.direction==="upper"?t.toLocaleUpperCase():t.toLocaleLowerCase());let o=e.$_getRule("trim");if(o&&o.args.enabled&&(t=t.trim()),e.$_terms.replacements)for(let u of e.$_terms.replacements)t=t.replace(u.pattern,u.replacement);let a=e.$_getRule("hex");if(a&&a.args.options.byteAligned&&t.length%2!==0&&(t=`0${t}`),e.$_getRule("isoDate")){let u=Re.isoDate(t);u&&(t=u)}if(e._flags.truncate){let u=e.$_getRule("max");if(u){let c=u.args.limit;if(on.isResolvable(c)&&(c=c.resolve(t,n,r),!on.limit(c)))return{value:t,errors:e.$_createError("any.ref",c,{ref:u.args.limit,arg:"limit",reason:"must be a positive integer"},n,r)};t=t.slice(0,c)}}return{value:t}}},validate(t,{schema:e,error:n}){if(typeof t!="string")return{value:t,errors:n("string.base")};if(t===""){let r=e.$_getRule("min");return r&&r.args.limit===0?void 0:{value:t,errors:n("string.empty")}}},rules:{alphanum:{method(){return this.$_addRule("alphanum")},validate(t,e){return/^[a-zA-Z0-9]+$/.test(t)?t:e.error("string.alphanum")}},base64:{method(t={}){return on.assertOptions(t,["paddingRequired","urlSafe"]),t={urlSafe:!1,paddingRequired:!0,...t},Ue(typeof t.paddingRequired=="boolean","paddingRequired must be boolean"),Ue(typeof t.urlSafe=="boolean","urlSafe must be boolean"),this.$_addRule({name:"base64",args:{options:t}})},validate(t,e,{options:n}){return Re.base64Regex[n.paddingRequired][n.urlSafe].test(t)?t:e.error("string.base64")}},case:{method(t){return Ue(["lower","upper"].includes(t),"Invalid case:",t),this.$_addRule({name:"case",args:{direction:t}})},validate(t,e,{direction:n}){return n==="lower"&&t===t.toLocaleLowerCase()||n==="upper"&&t===t.toLocaleUpperCase()?t:e.error(`string.${n}case`)},convert:!0},creditCard:{method(){return this.$_addRule("creditCard")},validate(t,e){let n=t.length,r=0,i=1;for(;n--;){let s=t.charAt(n)*i;r=r+(s-(s>9)*9),i=i^3}return r>0&&r%10===0?t:e.error("string.creditCard")}},dataUri:{method(t={}){return on.assertOptions(t,["paddingRequired"]),t={paddingRequired:!0,...t},Ue(typeof t.paddingRequired=="boolean","paddingRequired must be boolean"),this.$_addRule({name:"dataUri",args:{options:t}})},validate(t,e,{options:n}){let r=t.match(Re.dataUriRegex);return r&&(!r[2]||r[2]!=="base64"||Re.base64Regex[n.paddingRequired].false.test(r[3]))?t:e.error("string.dataUri")}},domain:{method(t){t&&on.assertOptions(t,["allowFullyQualified","allowUnicode","maxDomainSegments","minDomainSegments","tlds"]);let e=Re.addressOptions(t);return this.$_addRule({name:"domain",args:{options:t},address:e})},validate(t,e,n,{address:r}){return Ml.isValid(t,r)?t:e.error("string.domain")}},email:{method(t={}){on.assertOptions(t,["allowFullyQualified","allowUnicode","ignoreLength","maxDomainSegments","minDomainSegments","multiple","separator","tlds"]),Ue(t.multiple===void 0||typeof t.multiple=="boolean","multiple option must be an boolean");let e=Re.addressOptions(t),n=new RegExp(`\\s*[${t.separator?h0(t.separator):","}]\\s*`);return this.$_addRule({name:"email",args:{options:t},regex:n,address:e})},validate(t,e,{options:n},{regex:r,address:i}){let s=n.multiple?t.split(r):[t],o=[];for(let a of s)_D.isValid(a,i)||o.push(a);return o.length?e.error("string.email",{value:t,invalids:o}):t}},guid:{alias:"uuid",method(t={}){on.assertOptions(t,["version","separator"]);let e="";if(t.version){let i=[].concat(t.version);Ue(i.length>=1,"version must have at least 1 valid version specified");let s=new Set;for(let o=0;o<i.length;++o){let a=i[o];Ue(typeof a=="string","version at position "+o+" must be a string");let u=Re.guidVersions[a.toLowerCase()];Ue(u,"version at position "+o+" must be one of "+Object.keys(Re.guidVersions).join(", ")),Ue(!s.has(u),"version at position "+o+" must not be a duplicate"),e+=u,s.add(u)}}Ue(Re.guidSeparators.has(t.separator),'separator must be one of true, false, "-", or ":"');let n=t.separator===void 0?"[:-]?":t.separator===!0?"[:-]":t.separator===!1?"[]?":`\\${t.separator}`,r=new RegExp(`^([\\[{\\(]?)[0-9A-F]{8}(${n})[0-9A-F]{4}\\2?[${e||"0-9A-F"}][0-9A-F]{3}\\2?[${e?"89AB":"0-9A-F"}][0-9A-F]{3}\\2?[0-9A-F]{12}([\\]}\\)]?)$`,"i");return this.$_addRule({name:"guid",args:{options:t},regex:r})},validate(t,e,n,{regex:r}){let i=r.exec(t);return!i||Re.guidBrackets[i[1]]!==i[i.length-1]?e.error("string.guid"):t}},hex:{method(t={}){return on.assertOptions(t,["byteAligned","prefix"]),t={byteAligned:!1,prefix:!1,...t},Ue(typeof t.byteAligned=="boolean","byteAligned must be boolean"),Ue(typeof t.prefix=="boolean"||t.prefix==="optional",'prefix must be boolean or "optional"'),this.$_addRule({name:"hex",args:{options:t}})},validate(t,e,{options:n}){return(n.prefix==="optional"?Re.hexRegex.withOptionalPrefix:n.prefix===!0?Re.hexRegex.withPrefix:Re.hexRegex.withoutPrefix).test(t)?n.byteAligned&&t.length%2!==0?e.error("string.hexAlign"):t:e.error("string.hex")}},hostname:{method(){return this.$_addRule("hostname")},validate(t,e){return Ml.isValid(t,{minDomainSegments:1})||Re.ipRegex.test(t)?t:e.error("string.hostname")}},insensitive:{method(){return this.$_setFlag("insensitive",!0)}},ip:{method(t={}){on.assertOptions(t,["cidr","version"]);let{cidr:e,versions:n,regex:r}=m0.regex(t),i=t.version?n:void 0;return this.$_addRule({name:"ip",args:{options:{cidr:e,version:i}},regex:r})},validate(t,e,{options:n},{regex:r}){return r.test(t)?t:n.version?e.error("string.ipVersion",{value:t,cidr:n.cidr,version:n.version}):e.error("string.ip",{value:t,cidr:n.cidr})}},isoDate:{method(){return this.$_addRule("isoDate")},validate(t,{error:e}){return Re.isoDate(t)?t:e("string.isoDate")}},isoDuration:{method(){return this.$_addRule("isoDuration")},validate(t,e){return Re.isoDurationRegex.test(t)?t:e.error("string.isoDuration")}},length:{method(t,e){return Re.length(this,"length",t,"=",e)},validate(t,e,{limit:n,encoding:r},{name:i,operator:s,args:o}){let a=r?Buffer&&Buffer.byteLength(t,r):t.length;return on.compare(a,n,s)?t:e.error("string."+i,{limit:o.limit,value:t,encoding:r})},args:[{name:"limit",ref:!0,assert:on.limit,message:"must be a positive integer"},"encoding"]},lowercase:{method(){return this.case("lower")}},max:{method(t,e){return Re.length(this,"max",t,"<=",e)},args:["limit","encoding"]},min:{method(t,e){return Re.length(this,"min",t,">=",e)},args:["limit","encoding"]},normalize:{method(t="NFC"){return Ue(Re.normalizationForms.includes(t),"normalization form must be one of "+Re.normalizationForms.join(", ")),this.$_addRule({name:"normalize",args:{form:t}})},validate(t,{error:e},{form:n}){return t===t.normalize(n)?t:e("string.normalize",{value:t,form:n})},convert:!0},pattern:{alias:"regex",method(t,e={}){Ue(t instanceof RegExp,"regex must be a RegExp"),Ue(!t.flags.includes("g")&&!t.flags.includes("y"),"regex should not use global or sticky mode"),typeof e=="string"&&(e={name:e}),on.assertOptions(e,["invert","name"]);let n=["string.pattern",e.invert?".invert":"",e.name?".name":".base"].join("");return this.$_addRule({name:"pattern",args:{regex:t,options:e},errorCode:n})},validate(t,e,{regex:n,options:r},{errorCode:i}){return n.test(t)^r.invert?t:e.error(i,{name:r.name,regex:n,value:t})},args:["regex","options"],multi:!0},replace:{method(t,e){typeof t=="string"&&(t=new RegExp(h0(t),"g")),Ue(t instanceof RegExp,"pattern must be a RegExp"),Ue(typeof e=="string","replacement must be a String");let n=this.clone();return n.$_terms.replacements||(n.$_terms.replacements=[]),n.$_terms.replacements.push({pattern:t,replacement:e}),n}},token:{method(){return this.$_addRule("token")},validate(t,e){return/^\w+$/.test(t)?t:e.error("string.token")}},trim:{method(t=!0){return Ue(typeof t=="boolean","enabled must be a boolean"),this.$_addRule({name:"trim",args:{enabled:t}})},validate(t,e,{enabled:n}){return!n||t===t.trim()?t:e.error("string.trim")},convert:!0},truncate:{method(t=!0){return Ue(typeof t=="boolean","enabled must be a boolean"),this.$_setFlag("truncate",t)}},uppercase:{method(){return this.case("upper")}},uri:{method(t={}){on.assertOptions(t,["allowRelative","allowQuerySquareBrackets","domain","relativeOnly","scheme","encodeUri"]),t.domain&&on.assertOptions(t.domain,["allowFullyQualified","allowUnicode","maxDomainSegments","minDomainSegments","tlds"]);let{regex:e,scheme:n}=TD.regex(t),r=t.domain?Re.addressOptions(t.domain):null;return this.$_addRule({name:"uri",args:{options:t},regex:e,domain:r,scheme:n})},validate(t,e,{options:n},{regex:r,domain:i,scheme:s}){if(["http:/","https:/"].includes(t))return e.error("string.uri");let o=r.exec(t);if(!o&&e.prefs.convert&&n.encodeUri){let a=encodeURI(t);o=r.exec(a),o&&(t=a)}if(o){let a=o[1]||o[2];return i&&(!n.allowRelative||a)&&!Ml.isValid(a,i)?e.error("string.domain",{value:a}):t}return n.relativeOnly?e.error("string.uriRelativeOnly"):n.scheme?e.error("string.uriCustomScheme",{scheme:s,value:t}):e.error("string.uri")}}},manifest:{build(t,e){if(e.replacements)for(let{pattern:n,replacement:r}of e.replacements)t=t.replace(n,r);return t}},messages:{"string.alphanum":"{{#label}} must only contain alpha-numeric characters","string.base":"{{#label}} must be a string","string.base64":"{{#label}} must be a valid base64 string","string.creditCard":"{{#label}} must be a credit card","string.dataUri":"{{#label}} must be a valid dataUri string","string.domain":"{{#label}} must contain a valid domain name","string.email":"{{#label}} must be a valid email","string.empty":"{{#label}} is not allowed to be empty","string.guid":"{{#label}} must be a valid GUID","string.hex":"{{#label}} must only contain hexadecimal characters","string.hexAlign":"{{#label}} hex decoded representation must be byte aligned","string.hostname":"{{#label}} must be a valid hostname","string.ip":"{{#label}} must be a valid ip address with a {{#cidr}} CIDR","string.ipVersion":"{{#label}} must be a valid ip address of one of the following versions {{#version}} with a {{#cidr}} CIDR","string.isoDate":"{{#label}} must be in iso format","string.isoDuration":"{{#label}} must be a valid ISO 8601 duration","string.length":"{{#label}} length must be {{#limit}} characters long","string.lowercase":"{{#label}} must only contain lowercase characters","string.max":"{{#label}} length must be less than or equal to {{#limit}} characters long","string.min":"{{#label}} length must be at least {{#limit}} characters long","string.normalize":"{{#label}} must be unicode normalized in the {{#form}} form","string.token":"{{#label}} must only contain alpha-numeric and underscore characters","string.pattern.base":"{{#label}} with value {:[.]} fails to match the required pattern: {{#regex}}","string.pattern.name":"{{#label}} with value {:[.]} fails to match the {{#name}} pattern","string.pattern.invert.base":"{{#label}} with value {:[.]} matches the inverted pattern: {{#regex}}","string.pattern.invert.name":"{{#label}} with value {:[.]} matches the inverted {{#name}} pattern","string.trim":"{{#label}} must not have leading or trailing whitespace","string.uri":"{{#label}} must be a valid uri","string.uriCustomScheme":"{{#label}} must be a valid uri with a scheme matching the {{#scheme}} pattern","string.uriRelativeOnly":"{{#label}} must be a valid relative uri","string.uppercase":"{{#label}} must only contain uppercase characters"}});Re.addressOptions=function(t){if(!t)return Re.tlds||t;if(Ue(t.minDomainSegments===void 0||Number.isSafeInteger(t.minDomainSegments)&&t.minDomainSegments>0,"minDomainSegments must be a positive integer"),Ue(t.maxDomainSegments===void 0||Number.isSafeInteger(t.maxDomainSegments)&&t.maxDomainSegments>0,"maxDomainSegments must be a positive integer"),t.tlds===!1)return t;if(t.tlds===!0||t.tlds===void 0)return Ue(Re.tlds,"Built-in TLD list disabled"),Object.assign({},t,Re.tlds);Ue(typeof t.tlds=="object","tlds must be true, false, or an object");let e=t.tlds.deny;if(e)return Array.isArray(e)&&(t=Object.assign({},t,{tlds:{deny:new Set(e)}})),Ue(t.tlds.deny instanceof Set,"tlds.deny must be an array, Set, or boolean"),Ue(!t.tlds.allow,"Cannot specify both tlds.allow and tlds.deny lists"),Re.validateTlds(t.tlds.deny,"tlds.deny"),t;let n=t.tlds.allow;return n?n===!0?(Ue(Re.tlds,"Built-in TLD list disabled"),Object.assign({},t,Re.tlds)):(Array.isArray(n)&&(t=Object.assign({},t,{tlds:{allow:new Set(n)}})),Ue(t.tlds.allow instanceof Set,"tlds.allow must be an array, Set, or boolean"),Re.validateTlds(t.tlds.allow,"tlds.allow"),t):t};Re.validateTlds=function(t,e){for(let n of t)Ue(Ml.isValid(n,{minDomainSegments:1,maxDomainSegments:1}),`${e} must contain valid top level domain names`)};Re.isoDate=function(t){if(!on.isIsoDate(t))return null;/.*T.*[+-]\d\d$/.test(t)&&(t+="00");let e=new Date(t);return isNaN(e.getTime())?null:e.toISOString()};Re.length=function(t,e,n,r,i){return Ue(!i||Buffer&&Buffer.isEncoding(i),"Invalid encoding:",i),t.$_addRule({name:e,method:"length",args:{limit:n,encoding:i},operator:r})}});var _0=g((L5,v0)=>{"use strict";var Ll=Ie(),kD=Bn(),Im={};Im.Map=class extends Map{slice(){return new Im.Map(this)}};v0.exports=kD.extend({type:"symbol",terms:{map:{init:new Im.Map}},coerce:{method(t,{schema:e,error:n}){let r=e.$_terms.map.get(t);return r&&(t=r),!e._flags.only||typeof t=="symbol"?{value:t}:{value:t,errors:n("symbol.map",{map:e.$_terms.map})}}},validate(t,{error:e}){if(typeof t!="symbol")return{value:t,errors:e("symbol.base")}},rules:{map:{method(t){t&&!t[Symbol.iterator]&&typeof t=="object"&&(t=Object.entries(t)),Ll(t&&t[Symbol.iterator],"Iterable must be an iterable or object");let e=this.clone(),n=[];for(let r of t){Ll(r&&r[Symbol.iterator],"Entry must be an iterable");let[i,s]=r;Ll(typeof i!="object"&&typeof i!="function"&&typeof i!="symbol","Key must not be of type object, function, or Symbol"),Ll(typeof s=="symbol","Value must be a Symbol"),e.$_terms.map.set(i,s),n.push(s)}return e.valid(...n)}}},manifest:{build(t,e){return e.map&&(t=t.map(e.map)),t}},messages:{"symbol.base":"{{#label}} must be a symbol","symbol.map":"{{#label}} must be one of {{#map}}"}})});var k0=g((q5,S0)=>{"use strict";var xD=Ie(),wD=Bn(),T0=Qe();S0.exports=wD.extend({type:"binary",coerce:{from:["string","object"],method(t,{schema:e}){if(typeof t=="string"||t!==null&&t.type==="Buffer")try{return{value:Buffer.from(t,e._flags.encoding)}}catch{}}},validate(t,{error:e}){if(!Buffer.isBuffer(t))return{value:t,errors:e("binary.base")}},rules:{encoding:{method(t){return xD(Buffer.isEncoding(t),"Invalid encoding:",t),this.$_setFlag("encoding",t)}},length:{method(t){return this.$_addRule({name:"length",method:"length",args:{limit:t},operator:"="})},validate(t,e,{limit:n},{name:r,operator:i,args:s}){return T0.compare(t.length,n,i)?t:e.error("binary."+r,{limit:s.limit,value:t})},args:[{name:"limit",ref:!0,assert:T0.limit,message:"must be a positive integer"}]},max:{method(t){return this.$_addRule({name:"max",method:"length",args:{limit:t},operator:"<="})}},min:{method(t){return this.$_addRule({name:"min",method:"length",args:{limit:t},operator:">="})}}},cast:{string:{from:t=>Buffer.isBuffer(t),to(t,e){return t.toString()}}},messages:{"binary.base":"{{#label}} must be a buffer or a string","binary.length":"{{#label}} must be {{#limit}} bytes","binary.max":"{{#label}} must be less than or equal to {{#limit}} bytes","binary.min":"{{#label}} must be at least {{#limit}} bytes"}})});var bl=g((j5,A0)=>{"use strict";var rs=Ie(),ED=nn(),AD=um(),ns=Qe(),OD=Qi(),Lm=Fr(),CD=cm(),x0=fm(),Mm=$r(),w0=bi(),E0=hm(),Nl,Ot={types:{alternatives:Rw(),any:Bn(),array:Dw(),boolean:qw(),date:Bw(),function:e0(),link:n0(),number:i0(),object:o0(),string:b0(),symbol:_0()},aliases:{alt:"alternatives",bool:"boolean",func:"function"}};Buffer&&(Ot.types.binary=k0());Ot.root=function(){let t={_types:new Set(Object.keys(Ot.types))};for(let e of t._types)t[e]=function(...n){return rs(!n.length||["alternatives","link","object"].includes(e),"The",e,"type does not allow arguments"),Ot.generate(this,Ot.types[e],n)};for(let e of["allow","custom","disallow","equal","exist","forbidden","invalid","not","only","optional","options","prefs","preferences","required","strip","valid","when"])t[e]=function(...n){return this.any()[e](...n)};Object.assign(t,Ot.methods);for(let e in Ot.aliases){let n=Ot.aliases[e];t[e]=t[n]}return t.x=t.expression,E0.setup&&E0.setup(t),t};Ot.methods={ValidationError:Lm.ValidationError,version:ns.version,cache:AD.provider,assert(t,e,...n){Ot.assert(t,e,!0,n)},attempt(t,e,...n){return Ot.assert(t,e,!1,n)},build(t){return rs(typeof x0.build=="function","Manifest functionality disabled"),x0.build(this,t)},checkPreferences(t){ns.checkPreferences(t)},compile(t,e){return OD.compile(this,t,e)},defaults(t){rs(typeof t=="function","modifier must be a function");let e=Object.assign({},this);for(let n of e._types){let r=t(e[n]());rs(ns.isSchema(r),"modifier must return a valid schema object"),e[n]=function(...i){return Ot.generate(this,r,i)}}return e},expression(...t){return new w0(...t)},extend(...t){ns.verifyFlat(t,"extend"),Nl=Nl||yl(),rs(t.length,"You need to provide at least one extension"),this.assert(t,Nl.extensions);let e=Object.assign({},this);e._types=new Set(e._types);for(let n of t){typeof n=="function"&&(n=n(e)),this.assert(n,Nl.extension);let r=Ot.expandExtension(n,e);for(let i of r){rs(e[i.type]===void 0||e._types.has(i.type),"Cannot override name",i.type);let s=i.base||this.any(),o=CD.type(s,i);e._types.add(i.type),e[i.type]=function(...a){return Ot.generate(this,o,a)}}}return e},isError:Lm.ValidationError.isError,isExpression:w0.isTemplate,isRef:Mm.isRef,isSchema:ns.isSchema,in(...t){return Mm.in(...t)},override:ns.symbols.override,ref(...t){return Mm.create(...t)},types(){let t={};for(let e of this._types)t[e]=this[e]();for(let e in Ot.aliases)t[e]=this[e]();return t}};Ot.assert=function(t,e,n,r){let i=r[0]instanceof Error||typeof r[0]=="string"?r[0]:null,s=i!==null?r[1]:r[0],o=e.validate(t,ns.preferences({errors:{stack:!0}},s||{})),a=o.error;if(!a)return o.value;if(i instanceof Error)throw i;let u=n&&typeof a.annotate=="function"?a.annotate():a.message;throw a instanceof Lm.ValidationError||(a=ED(a)),a.message=i?`${i} ${u}`:u,a};Ot.generate=function(t,e,n){return rs(t,"Must be invoked on a Joi instance."),e.$_root=t,!e._definition.args||!n.length?e:e._definition.args(e,...n)};Ot.expandExtension=function(t,e){if(typeof t.type=="string")return[t];let n=[];for(let r of e._types)if(t.type.test(r)){let i=Object.assign({},t);i.type=r,i.base=e[r](),n.push(i)}return n};A0.exports=Ot.root()});var O0=g(ke=>{"use strict";var RD=ke&&ke.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ke,"__esModule",{value:!0});ke.descriptionContainerSchema=ke.signatureSchema=ke.signatureDefinitionContainerSchema=ke.signatureDefinitionSchema=ke.signatureDefinitionFunctionSchema=ke.signatureDefinitionFunctionSchemaArg=ke.signatureDefinitionFunctionSchemaArgMultiTypes=ke.signatureDefinitionFunctionSchemaArgDefaultNumber=ke.signatureDefinitionFunctionSchemaArgDefaultString=ke.signatureDefinitionTypeSchema=ke.variationsSchema=void 0;var oe=RD(bl()),ql=Ki();ke.variationsSchema=oe.default.array().items(oe.default.alternatives(oe.default.string(),oe.default.number()));ke.signatureDefinitionTypeSchema=oe.default.alternatives(oe.default.string(),oe.default.object({type:oe.default.string().required(),keyType:oe.default.string().optional(),valueType:oe.default.string().optional()}));ke.signatureDefinitionFunctionSchemaArgDefaultString=oe.default.object({type:oe.default.string().valid(ql.SignatureDefinitionBaseType.String).required(),value:oe.default.string().allow("").required()});ke.signatureDefinitionFunctionSchemaArgDefaultNumber=oe.default.object({type:oe.default.string().valid(ql.SignatureDefinitionBaseType.Number).required(),value:oe.default.number().required()});ke.signatureDefinitionFunctionSchemaArgMultiTypes=oe.default.object({label:oe.default.string().required(),types:oe.default.array().items(ke.signatureDefinitionTypeSchema).required(),opt:oe.default.boolean().optional(),default:oe.default.alternatives(ke.signatureDefinitionFunctionSchemaArgDefaultString,ke.signatureDefinitionFunctionSchemaArgDefaultNumber).optional()});ke.signatureDefinitionFunctionSchemaArg=oe.default.object({label:oe.default.string().required(),type:ke.signatureDefinitionTypeSchema.required(),opt:oe.default.boolean().optional(),default:oe.default.alternatives(ke.signatureDefinitionFunctionSchemaArgDefaultString,ke.signatureDefinitionFunctionSchemaArgDefaultNumber).optional()});ke.signatureDefinitionFunctionSchema=oe.default.object({type:oe.default.string().valid(ql.SignatureDefinitionBaseType.Function).required(),description:oe.default.string().optional(),example:oe.default.string().optional(),isProtected:oe.default.boolean().optional(),arguments:oe.default.array().items(oe.default.alternatives(ke.signatureDefinitionFunctionSchemaArg,ke.signatureDefinitionFunctionSchemaArgMultiTypes)).optional(),returns:oe.default.array().items(ke.signatureDefinitionTypeSchema).required(),variations:ke.variationsSchema.optional(),returnVariations:ke.variationsSchema.optional()});ke.signatureDefinitionSchema=oe.default.object({type:ke.signatureDefinitionTypeSchema.invalid(ql.SignatureDefinitionBaseType.Function).required(),description:oe.default.string().optional(),example:oe.default.string().optional(),isProtected:oe.default.boolean().optional(),variations:ke.variationsSchema.optional()});ke.signatureDefinitionContainerSchema=oe.default.object().pattern(oe.default.string(),oe.default.alternatives(ke.signatureDefinitionFunctionSchema,ke.signatureDefinitionSchema));ke.signatureSchema=oe.default.object({type:oe.default.string().required(),hidden:oe.default.boolean().optional(),extends:oe.default.string().optional(),definitions:oe.default.object().required()});ke.descriptionContainerSchema=oe.default.object({$meta:oe.default.object({description:oe.default.string().required(),example:oe.default.array().items(oe.default.string().allow("")).optional()}).optional()}).pattern(oe.default.string(),oe.default.object({description:oe.default.string().required(),example:oe.default.array().items(oe.default.string().allow("")).optional()}))});var Fm=g(hn=>{"use strict";var oo=hn&&hn.__assign||function(){return oo=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++){e=arguments[n];for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])}return t},oo.apply(this,arguments)},PD=hn&&hn.__rest||function(t,e){var n={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(t);i<r.length;i++)e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(t,r[i])&&(n[r[i]]=t[r[i]]);return n},Si=hn&&hn.__values||function(t){var e=typeof Symbol=="function"&&Symbol.iterator,n=e&&t[e],r=0;if(n)return n.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},Nm=hn&&hn.__read||function(t,e){var n=typeof Symbol=="function"&&t[Symbol.iterator];if(!n)return t;var r=n.call(t),i,s=[],o;try{for(;(e===void 0||e-- >0)&&!(i=r.next()).done;)s.push(i.value)}catch(a){o={error:a}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return s},DD=hn&&hn.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(hn,"__esModule",{value:!0});hn.Signature=void 0;var qm=DD(bl()),jm=O0(),ID=Ki(),MD=gl(),LD=em(),ND=function(){function t(e){var n,r,i;this._type=e.type,this._extends=(n=e.extends)!==null&&n!==void 0?n:null,this._descriptions={},this._definitions=(r=e.definitions)!==null&&r!==void 0?r:{},this._hidden=(i=e.hidden)!==null&&i!==void 0?i:!1}return t.parseDefinitions=function(e){var n,r;qm.default.assert(e,jm.signatureDefinitionContainerSchema);var i={};try{for(var s=Si(Object.entries(e)),o=s.next();!o.done;o=s.next()){var a=Nm(o.value,2),u=a[0],c=a[1],l=c.type===ID.SignatureDefinitionBaseType.Function?LD.SignatureDefinitionFunction.parse(c):MD.SignatureDefinition.parse(c);i[u]=l}}catch(d){n={error:d}}finally{try{o&&!o.done&&(r=s.return)&&r.call(s)}finally{if(n)throw n.error}}return i},t.parseDescriptions=function(e){var n,r,i,s,o;qm.default.assert(e,jm.descriptionContainerSchema);var a=e,u=null;if(a.$meta){var c=e.$meta,l=PD(e,["$meta"]);u=c,a=l}var d={};try{for(var p=Si(Object.entries(a)),b=p.next();!b.done;b=p.next()){var _=Nm(b.value,2),E=_[0],L=_[1];d[E]={description:L.description,example:(i=L.example)!==null&&i!==void 0?i:null}}}catch(M){n={error:M}}finally{try{b&&!b.done&&(r=p.return)&&r.call(p)}finally{if(n)throw n.error}}return oo({$meta:{description:(s=u?.description)!==null&&s!==void 0?s:"unknown",example:(o=u?.example)!==null&&o!==void 0?o:null}},d)},t.parse=function(e,n){var r,i;qm.default.assert(e,jm.signatureSchema);var s=new t({type:e.type,hidden:e.hidden,extends:e.extends}),o=t.parseDefinitions(e.definitions);if(s.setDefinition(o),n!=null)try{for(var a=Si(Object.entries(n)),u=a.next();!u.done;u=a.next()){var c=Nm(u.value,2),l=c[0],d=c[1],p=t.parseDescriptions(d);s.addDescriptions(l,p)}}catch(b){r={error:b}}finally{try{u&&!u.done&&(i=a.return)&&i.call(a)}finally{if(r)throw r.error}}return s},t.prototype.getType=function(){return this._type},t.prototype.getExtendedType=function(){return this._extends},t.prototype.getDefinitions=function(){return this._definitions},t.prototype.getAllDescriptions=function(){return this._descriptions},t.prototype.isHidden=function(){return this._hidden},t.prototype.setExtend=function(e){return this._extends=e,this},t.prototype.setDefinition=function(e){return this._definitions=e,this},t.prototype.mergeDefinitions=function(e){var n,r,i=Object.keys(e);try{for(var s=Si(i),o=s.next();!o.done;o=s.next()){var a=o.value;this._definitions[a]=e[a]}}catch(u){n={error:u}}finally{try{o&&!o.done&&(r=s.return)&&r.call(s)}finally{if(n)throw n.error}}return this},t.prototype.getDefinition=function(e,n){if(!Object.prototype.hasOwnProperty.call(this._definitions,e))return null;var r=this._definitions[e],i=this.getDescriptions(n),s=i[e];return r.withDescription(s)},t.prototype.setDescriptions=function(e,n){return this._descriptions[e]=n,this},t.prototype.addDescriptions=function(e,n){var r,i,s=this._descriptions[e];s==null&&(s={},this._descriptions[e]=s);var o=Object.keys(n);try{for(var a=Si(o),u=a.next();!u.done;u=a.next()){var c=u.value;s[c]=oo(oo({},s[c]),n[c])}}catch(l){r={error:l}}finally{try{u&&!u.done&&(i=a.return)&&i.call(a)}finally{if(r)throw r.error}}return this},t.prototype.getDescriptions=function(e){e===void 0&&(e="en");var n=this._descriptions[e];return n??{}},t.prototype.toJSON=function(){var e,n,r={},i=Object.keys(this._definitions);try{for(var s=Si(i),o=s.next();!o.done;o=s.next()){var a=o.value;r[a]=this._definitions[a].toJSON()}}catch(u){e={error:u}}finally{try{o&&!o.done&&(n=s.return)&&n.call(s)}finally{if(e)throw e.error}}return{type:this._type,extend:this._extends,hidden:this._hidden,definitions:r}},t.prototype.copy=function(){var e,n,r,i,s=new t({type:this._type,hidden:this._hidden,extends:this._extends}),o={},a=Object.keys(this._definitions);try{for(var u=Si(a),c=u.next();!c.done;c=u.next()){var l=c.value;o[l]=this._definitions[l].copy()}}catch(E){e={error:E}}finally{try{c&&!c.done&&(n=u.return)&&n.call(u)}finally{if(e)throw e.error}}var d={},p=Object.keys(this._descriptions);try{for(var b=Si(p),_=b.next();!_.done;_=b.next()){var l=_.value;d[l]=oo({},d[l])}}catch(E){r={error:E}}finally{try{_&&!_.done&&(i=b.return)&&i.call(b)}finally{if(r)throw r.error}}return s._descriptions=d,s._definitions=o,s},t}();hn.Signature=ND});var C0=g(Er=>{"use strict";var ki=Er&&Er.__read||function(t,e){var n=typeof Symbol=="function"&&t[Symbol.iterator];if(!n)return t;var r=n.call(t),i,s=[],o;try{for(;(e===void 0||e-- >0)&&!(i=r.next()).done;)s.push(i.value)}catch(a){o={error:a}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return s},ao=Er&&Er.__spreadArray||function(t,e,n){if(n||arguments.length===2)for(var r=0,i=e.length,s;r<i;r++)(s||!(r in e))&&(s||(s=Array.prototype.slice.call(e,0,r)),s[r]=e[r]);return t.concat(s||Array.prototype.slice.call(e))},Oa=Er&&Er.__values||function(t){var e=typeof Symbol=="function"&&Symbol.iterator,n=e&&t[e],r=0;if(n)return n.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(Er,"__esModule",{value:!0});Er.Container=void 0;var wr=Fm(),vt=Ki(),qD=function(){function t(){this._primitives=new Map([[vt.SignatureDefinitionBaseType.Any,new wr.Signature({type:vt.SignatureDefinitionBaseType.Any})],[vt.SignatureDefinitionBaseType.General,new wr.Signature({type:vt.SignatureDefinitionBaseType.General})],[vt.SignatureDefinitionBaseType.String,new wr.Signature({type:vt.SignatureDefinitionBaseType.String})],[vt.SignatureDefinitionBaseType.Function,new wr.Signature({type:vt.SignatureDefinitionBaseType.Function})],[vt.SignatureDefinitionBaseType.Number,new wr.Signature({type:vt.SignatureDefinitionBaseType.Number})],[vt.SignatureDefinitionBaseType.List,new wr.Signature({type:vt.SignatureDefinitionBaseType.List})],[vt.SignatureDefinitionBaseType.Map,new wr.Signature({type:vt.SignatureDefinitionBaseType.Map})]]),this._types=new Map,this._excludeFromSearch=new Set}return t.prototype.getOrCreateTypeSignature=function(e){var n=this.getTypeSignature(e);return n==null&&(n=new wr.Signature({type:e}),this._types.set(e,n)),n},t.prototype.getPrimitives=function(){return this._primitives},t.prototype.getTypes=function(){return this._types},t.prototype.getAllVisibleTypes=function(){var e=this;return ao(ao([],ki(this._primitives.keys()),!1),ki(this._types.keys()),!1).filter(function(n){return!e.getTypeSignature(n).isHidden()&&n!==vt.SignatureDefinitionBaseType.Any&&n!==vt.SignatureDefinitionBaseType.General})},t.prototype.excludeFromSearch=function(e){return this._excludeFromSearch.add(e),this},t.prototype.includeToSearch=function(e){return this._excludeFromSearch.delete(e),this},t.prototype.getTypeSignature=function(e){var n,r;return(r=(n=this._primitives.get(e))!==null&&n!==void 0?n:this._types.get(e))!==null&&r!==void 0?r:null},t.prototype.getAllPrimitiveSignatures=function(){return Array.from(this._primitives.values())},t.prototype.getAllTypeSignatures=function(){return Array.from(this._types.values())},t.prototype.getAllSignatures=function(){return ao(ao([],ki(this.getAllPrimitiveSignatures()),!1),ki(this.getAllTypeSignatures()),!1)},t.prototype.getAllVisibleSignatures=function(){return ao(ao([],ki(this.getAllPrimitiveSignatures()),!1),ki(this.getAllTypeSignatures()),!1).filter(function(e){return e.isHidden()})},t.prototype.addTypeSignatureFromPayload=function(e){var n=wr.Signature.parse(e);return this.addTypeSignature({type:n.getType(),extends:n.getExtendedType(),hidden:n.isHidden(),definitions:n.getDefinitions()}),this},t.prototype.addTypeSignature=function(e){var n=this.getOrCreateTypeSignature(e.type);return e.extends!==void 0&&n.setExtend(e.extends),n.mergeDefinitions(e.definitions),this},t.prototype.addMetaFromPayload=function(e,n){var r,i,s={},o=Object.keys(n);try{for(var a=Oa(o),u=a.next();!u.done;u=a.next()){var c=u.value,l=wr.Signature.parseDescriptions(n[c]);s[c]=l}}catch(d){r={error:d}}finally{try{u&&!u.done&&(i=a.return)&&i.call(a)}finally{if(r)throw r.error}}return this.addMeta(e,s),this},t.prototype.addMeta=function(e,n){var r,i,s=Object.keys(n);try{for(var o=Oa(s),a=o.next();!a.done;a=o.next()){var u=a.value,c=this.getOrCreateTypeSignature(u);c.addDescriptions(e,n[u])}}catch(l){r={error:l}}finally{try{a&&!a.done&&(i=o.return)&&i.call(o)}finally{if(r)throw r.error}}return this},t.prototype.searchDefinitionMatches=function(e,n,r){var i,s;if(r===void 0&&(r="en"),typeof e=="string")return this.searchDefinitionMatches([e],n,r);var o=e.includes(vt.SignatureDefinitionBaseType.Any)?new Set(this.getAllVisibleTypes()):new Set(e),a=new Set,u=new Map;try{for(var c=Oa(o),l=c.next();!l.done;l=c.next()){var d=l.value;if(!this._excludeFromSearch.has(d)){for(var p=d,b=this.getTypeSignature(d),_=null;b!==null&&!a.has(b.getType())&&(a.add(b.getType()),b.isHidden()||(_=b.getDefinition(n,r)),_===null);)p=b.getExtendedType(),b=this.getTypeSignature(p);_!==null&&u.set(p,_)}}}catch(E){i={error:E}}finally{try{l&&!l.done&&(s=c.return)&&s.call(c)}finally{if(i)throw i.error}}return u},t.prototype.getDefinition=function(e,n,r){if(r===void 0&&(r="en"),typeof e=="string")return this.getDefinition([e],n,r);var i=this._primitives.get(vt.SignatureDefinitionBaseType.Any).getDefinition(n,r);if(e.includes(vt.SignatureDefinitionBaseType.Any)&&i)return i;var s=this.searchDefinitionMatches(e,n,r);return s.size===0?null:s.size===1?s.values().next().value:s.has(vt.SignatureDefinitionBaseType.Any)?s.get(vt.SignatureDefinitionBaseType.Any):i!==null?i:s.values().next().value},t.prototype.fork=function(){var e,n,r,i,s=new t;try{for(var o=Oa(this._primitives),a=o.next();!a.done;a=o.next()){var u=ki(a.value,2),c=u[0],l=u[1];s._primitives.set(c,l.copy())}}catch(_){e={error:_}}finally{try{a&&!a.done&&(n=o.return)&&n.call(o)}finally{if(e)throw e.error}}try{for(var d=Oa(this._types),p=d.next();!p.done;p=d.next()){var b=ki(p.value,2),c=b[0],l=b[1];s._types.set(c,l.copy())}}catch(_){r={error:_}}finally{try{p&&!p.done&&(i=d.return)&&i.call(d)}finally{if(r)throw r.error}}return s._excludeFromSearch=new Set(this._excludeFromSearch),s},t}();Er.Container=qD});var P0=g(R0=>{"use strict";Object.defineProperty(R0,"__esModule",{value:!0})});var Wn=g(pt=>{"use strict";var jD=pt&&pt.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),D0=pt&&pt.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&jD(e,t,n)};Object.defineProperty(pt,"__esModule",{value:!0});pt.VariationRegistry=pt.Container=pt.Signature=pt.SignatureDefinition=pt.SignatureDefinitionTypeMeta=pt.SignatureDefinitionFunction=pt.SignatureDefinitionFunctionArg=void 0;var FD=Zg();Object.defineProperty(pt,"SignatureDefinitionFunctionArg",{enumerable:!0,get:function(){return FD.SignatureDefinitionFunctionArg}});var $D=em();Object.defineProperty(pt,"SignatureDefinitionFunction",{enumerable:!0,get:function(){return $D.SignatureDefinitionFunction}});var BD=ba();Object.defineProperty(pt,"SignatureDefinitionTypeMeta",{enumerable:!0,get:function(){return BD.SignatureDefinitionTypeMeta}});var UD=gl();Object.defineProperty(pt,"SignatureDefinition",{enumerable:!0,get:function(){return UD.SignatureDefinition}});var HD=Fm();Object.defineProperty(pt,"Signature",{enumerable:!0,get:function(){return HD.Signature}});var WD=C0();Object.defineProperty(pt,"Container",{enumerable:!0,get:function(){return WD.Container}});var GD=hl();Object.defineProperty(pt,"VariationRegistry",{enumerable:!0,get:function(){return GD.VariationRegistry}});D0(P0(),pt);D0(Ki(),pt)});var Ca=g(jl=>{"use strict";Object.defineProperty(jl,"__esModule",{value:!0});jl.isValidIdentifierLiteral=void 0;var KD=qe(),VD=t=>{if(t.type!==KD.ASTType.StringLiteral)return!1;let e=t.value.toString();return/^[_a-z][_a-z0-9]*$/i.test(e)};jl.isValidIdentifierLiteral=VD});var $m=g(xi=>{"use strict";Object.defineProperty(xi,"__esModule",{value:!0});xi.getStringHashCode=xi.getHashCode=xi.rotateBits=void 0;function zD(t){return t>>1|t<<31}xi.rotateBits=zD;function XD(t,e=0){let n=t>>>0;return n=(n>>16^n)*73244475,n=(n>>16^n)*73244475,n=n>>16^n,(e<<5)-e+n|0}xi.getHashCode=XD;xi.getStringHashCode=function(){let t=new Map,e=n=>{let r,i;for(r=0,i=0;r<n.length;r++)i=Math.imul(31,i)+n.charCodeAt(r)|0;return i};return n=>{if(n.length===0)return 0;let r=t.get(n);if(r!==void 0)return r;let i=e(n);return t.set(n,i),i}}()});var I0=g(Fl=>{"use strict";Object.defineProperty(Fl,"__esModule",{value:!0});Fl.createExpressionHash=void 0;var ze=qe(),_t=$m(),YD=Ca(),Ut=(t,e)=>t.$$hash=e,JD=t=>t.$$hash??null;function st(t){let e=JD(t);if(e!==null)return e;let n=(0,_t.getStringHashCode)(t.type);switch(t.type){case ze.ASTType.BinaryExpression:{let r=t;return n^=(0,_t.getStringHashCode)(r.operator),n^=st(r.left),n^=st(r.right),Ut(t,n)}case ze.ASTType.LogicalExpression:{let r=t;return n^=(0,_t.getStringHashCode)(r.operator),n^=st(r.left),n^=st(r.right),Ut(t,n)}case ze.ASTType.IsaExpression:{let r=t;return n^=(0,_t.getStringHashCode)(r.operator),n^=st(r.left),n^=st(r.right),Ut(t,n)}case ze.ASTType.ComparisonGroupExpression:{let r=t;for(let i=0;i<r.expressions.length;i++)n^=st(r.expressions[i]);for(let i=0;i<r.operators.length;i++)n^=(0,_t.getStringHashCode)(r.operators[i]);return Ut(t,n)}case ze.ASTType.FunctionDeclaration:{let r=t;n^=(0,_t.getHashCode)(r.parameters.length);for(let i=0;i<r.parameters.length;i++){let s=r.parameters[i];if(s.type===ze.ASTType.Identifier){n^=(0,_t.getStringHashCode)(s.name);continue}let o=s;n^=(0,_t.getStringHashCode)(o.variable.name),n^=st(o.init)}return Ut(t,n)}case ze.ASTType.ParenthesisExpression:return st(t.expression);case ze.ASTType.MemberExpression:{let r=t;if(r.base.type===ze.ASTType.Identifier){let i=r.base.name;if(i==="globals"||i==="locals"||i==="outer")return n=(0,_t.getStringHashCode)(ze.ASTType.Identifier),n^=(0,_t.getStringHashCode)(r.identifier.name),Ut(t,n)}return n^=st(r.base),n^=st(r.identifier),Ut(t,n)}case ze.ASTType.IndexExpression:{let r=t;if((0,YD.isValidIdentifierLiteral)(r.index)){if(r.base.type===ze.ASTType.Identifier){let s=r.base.name;if(s==="globals"||s==="locals"||s==="outer")return n=(0,_t.getStringHashCode)(ze.ASTType.Identifier),n^=(0,_t.getStringHashCode)(r.index.value.toString()),Ut(t,n)}n=(0,_t.getStringHashCode)(ze.ASTType.MemberExpression),n^=st(r.base);let i=(0,_t.getStringHashCode)(ze.ASTType.Identifier);i^=(0,_t.getStringHashCode)(r.index.value.toString()),n^=i}else n^=st(r.base),n^=st(r.index);return Ut(t,n)}case ze.ASTType.CallExpression:{let r=t;n^=st(r.base),n^=(0,_t.getHashCode)(r.arguments.length);for(let i=0;i<r.arguments.length;i++){let s=r.arguments[i];n^=st(s)}return Ut(t,n)}case ze.ASTType.NegationExpression:case ze.ASTType.BinaryNegatedExpression:case ze.ASTType.UnaryExpression:{let r=t;return n^=r.operator?(0,_t.getStringHashCode)(r.operator):1,n^=st(r.argument),Ut(t,n)}case ze.ASTType.Identifier:{let r=t;return n^=(0,_t.getStringHashCode)(r.name),Ut(t,n)}case ze.ASTType.NumericLiteral:case ze.ASTType.StringLiteral:case ze.ASTType.NilLiteral:return n^=(0,_t.getStringHashCode)(t.value.toString()),Ut(t,n);case ze.ASTType.MapConstructorExpression:{let r=t;n^=(0,_t.getHashCode)(r.fields.length);for(let i=0;i<r.fields.length;i++){let s=r.fields[i];n^=st(s.key),n^=st(s.value)}return Ut(t,n)}case ze.ASTType.ListConstructorExpression:{let r=t;n^=(0,_t.getHashCode)(r.fields.length);for(let i=0;i<r.fields.length;i++){let s=r.fields[i];n^=st(s.value)}return Ut(t,n)}case ze.ASTType.SliceExpression:{let r=t;return n^=st(r.base),n^=st(r.left),n^=st(r.right),Ut(t,n)}}return Ut(t,n)}function QD(t){return st(t)}Fl.createExpressionHash=QD});var Bm=g($l=>{"use strict";Object.defineProperty($l,"__esModule",{value:!0});$l.createExpressionId=void 0;var wt=qe(),ZD=Ca(),Ct=(t,e)=>t.$$id=e,eI=t=>t.$$id??null;function et(t){let e=eI(t);if(e!==null)return e;switch(t.type){case wt.ASTType.BinaryExpression:{let n=t;return Ct(t,et(n.left)+n.operator+et(n.right))}case wt.ASTType.LogicalExpression:{let n=t;return Ct(t,et(n.left)+n.operator+et(n.right))}case wt.ASTType.IsaExpression:{let n=t;return Ct(t,et(n.left)+n.operator+et(n.right))}case wt.ASTType.ComparisonGroupExpression:{let n=t,r=n.expressions.map(s=>et(s)),i=[r[0]];for(let s=0;s<n.operators.length;s++)i.push(n.operators[s],r[s+1]);return Ct(t,i.join(" "))}case wt.ASTType.FunctionDeclaration:{let n=t,r="function",i=[];for(let s=0;s<n.parameters.length;s++){let o=n.parameters[s];if(o.type===wt.ASTType.Identifier){i.push(o.name);continue}let a=o;i.push(a.variable.name+"="+et(a.init))}return i.length>0&&(r+="("+i.join(",")+")"),Ct(t,r)}case wt.ASTType.ParenthesisExpression:return Ct(t,et(t.expression));case wt.ASTType.MemberExpression:{let n=t;return Ct(t,et(n.base)+"."+n.identifier.name)}case wt.ASTType.IndexExpression:{let n=t;return(0,ZD.isValidIdentifierLiteral)(n.index)?Ct(t,et(n.base)+"."+n.index.value.toString()):Ct(t,et(n.base)+"["+et(n.index)+"]")}case wt.ASTType.CallExpression:{let n=t,r=et(n.base),i=[];for(let s=0;s<n.arguments.length;s++){let o=n.arguments[s];i.push(et(o))}return i.length>0&&(r+="("+i.join(",")+")"),Ct(t,r)}case wt.ASTType.NegationExpression:case wt.ASTType.BinaryNegatedExpression:case wt.ASTType.UnaryExpression:{let n=t;return n.operator==null?Ct(t,et(n.argument)):n.operator==="@"?Ct(t,n.operator+et(n.argument)):Ct(t,n.operator+" "+et(n.argument))}case wt.ASTType.Identifier:return Ct(t,t.name);case wt.ASTType.NumericLiteral:case wt.ASTType.StringLiteral:case wt.ASTType.NilLiteral:return Ct(t,t.raw.toString());case wt.ASTType.MapConstructorExpression:{let n=t,r=[];for(let i=0;i<n.fields.length;i++){let s=n.fields[i];r.push(et(s.key)+":"+et(s.value))}return Ct(t,"{"+r.join(",")+"}")}case wt.ASTType.ListConstructorExpression:{let n=t,r=[];for(let i=0;i<n.fields.length;i++){let s=n.fields[i];r.push(et(s.value))}return Ct(t,"["+r.join(",")+"]")}case wt.ASTType.SliceExpression:{let n=t;return Ct(t,et(n.base)+"["+et(n.left)+":"+et(n.right)+"]")}}return Ct(t,"")}function tI(t){return et(t)}$l.createExpressionId=tI});var uo=g(Ra=>{"use strict";Object.defineProperty(Ra,"__esModule",{value:!0});Ra.Markers=void 0;var nI;(function(t){t.start="/**",t.nostart="/***",t.delim="*",t.end="*/"})(nI=Ra.Markers||(Ra.Markers={}))});var sr=g(ht=>{"use strict";Object.defineProperty(ht,"__esModule",{value:!0});ht.rewireSpecs=ht.rewireSource=ht.seedTokens=ht.seedSpec=ht.seedBlock=ht.splitLines=ht.splitSpace=ht.splitCR=ht.hasCR=ht.isSpace=void 0;function rI(t){return/^\s+$/.test(t)}ht.isSpace=rI;function iI(t){return/\r$/.test(t)}ht.hasCR=iI;function sI(t){let e=t.match(/\r+$/);return e==null?["",t]:[t.slice(-e[0].length),t.slice(0,-e[0].length)]}ht.splitCR=sI;function oI(t){let e=t.match(/^\s+/);return e==null?["",t]:[t.slice(0,e[0].length),t.slice(e[0].length)]}ht.splitSpace=oI;function aI(t){return t.split(/\n/)}ht.splitLines=aI;function uI(t={}){return Object.assign({description:"",tags:[],source:[],problems:[]},t)}ht.seedBlock=uI;function cI(t={}){return Object.assign({tag:"",name:"",type:"",optional:!1,description:"",problems:[],source:[]},t)}ht.seedSpec=cI;function lI(t={}){return Object.assign({start:"",delimiter:"",postDelimiter:"",tag:"",postTag:"",name:"",postName:"",type:"",postType:"",description:"",end:"",lineEnd:""},t)}ht.seedTokens=lI;function dI(t){let e=t.source.reduce((n,r)=>n.set(r.number,r),new Map);for(let n of t.tags)n.source=n.source.map(r=>e.get(r.number));return t}ht.rewireSource=dI;function fI(t){let e=t.tags.reduce((n,r)=>r.source.reduce((i,s)=>i.set(s.number,s),n),new Map);return t.source=t.source.map(n=>e.get(n.number)||n),t}ht.rewireSpecs=fI});var M0=g(Um=>{"use strict";Object.defineProperty(Um,"__esModule",{value:!0});var pI=/^@\S+/;function hI({fence:t="```"}={}){let e=gI(t),n=(r,i)=>e(r)?!i:i;return function(i){let s=[[]],o=!1;for(let a of i)pI.test(a.tokens.description)&&!o?s.push([a]):s[s.length-1].push(a),o=n(a.tokens.description,o);return s}}Um.default=hI;function gI(t){return typeof t=="string"?e=>e.split(t).length%2===0:t}});var L0=g(Hm=>{"use strict";Object.defineProperty(Hm,"__esModule",{value:!0});var mI=uo(),Pa=sr();function yI({startLine:t=0,markers:e=mI.Markers}={}){let n=null,r=t;return function(s){let o=s,a=(0,Pa.seedTokens)();if([a.lineEnd,o]=(0,Pa.splitCR)(o),[a.start,o]=(0,Pa.splitSpace)(o),n===null&&o.startsWith(e.start)&&!o.startsWith(e.nostart)&&(n=[],a.delimiter=o.slice(0,e.start.length),o=o.slice(e.start.length),[a.postDelimiter,o]=(0,Pa.splitSpace)(o)),n===null)return r++,null;let u=o.trimRight().endsWith(e.end);if(a.delimiter===""&&o.startsWith(e.delim)&&!o.startsWith(e.end)&&(a.delimiter=e.delim,o=o.slice(e.delim.length),[a.postDelimiter,o]=(0,Pa.splitSpace)(o)),u){let c=o.trimRight();a.end=o.slice(c.length-e.end.length),o=c.slice(0,-e.end.length)}if(a.description=o,n.push({number:r,source:s,tokens:a}),r++,u){let c=n.slice();return n=null,c}return null}}Hm.default=yI});var N0=g(Wm=>{"use strict";Object.defineProperty(Wm,"__esModule",{value:!0});var bI=sr();function vI({tokenizers:t}){return function(n){var r;let i=(0,bI.seedSpec)({source:n});for(let s of t)if(i=s(i),!((r=i.problems[i.problems.length-1])===null||r===void 0)&&r.critical)break;return i}}Wm.default=vI});var Km=g(Gm=>{"use strict";Object.defineProperty(Gm,"__esModule",{value:!0});function _I(){return t=>{let{tokens:e}=t.source[0],n=e.description.match(/\s*(@(\S+))(\s*)/);return n===null?(t.problems.push({code:"spec:tag:prefix",message:'tag should start with "@" symbol',line:t.source[0].number,critical:!0}),t):(e.tag=n[1],e.postTag=n[3],e.description=e.description.slice(n[0].length),t.tag=n[2],t)}}Gm.default=_I});var zm=g(Vm=>{"use strict";Object.defineProperty(Vm,"__esModule",{value:!0});var TI=sr();function SI(t="compact"){let e=xI(t);return n=>{let r=0,i=[];for(let[a,{tokens:u}]of n.source.entries()){let c="";if(a===0&&u.description[0]!=="{")return n;for(let l of u.description)if(l==="{"&&r++,l==="}"&&r--,c+=l,r===0)break;if(i.push([u,c]),r===0)break}if(r!==0)return n.problems.push({code:"spec:type:unpaired-curlies",message:"unpaired curlies",line:n.source[0].number,critical:!0}),n;let s=[],o=i[0][0].postDelimiter.length;for(let[a,[u,c]]of i.entries())u.type=c,a>0&&(u.type=u.postDelimiter.slice(o)+c,u.postDelimiter=u.postDelimiter.slice(0,o)),[u.postType,u.description]=(0,TI.splitSpace)(u.description.slice(c.length)),s.push(u.type);return s[0]=s[0].slice(1),s[s.length-1]=s[s.length-1].slice(0,-1),n.type=e(s),n}}Vm.default=SI;var kI=t=>t.trim();function xI(t){return t==="compact"?e=>e.map(kI).join(""):t==="preserve"?e=>e.join(`
100
- `):t}});var Jm=g(Ym=>{"use strict";Object.defineProperty(Ym,"__esModule",{value:!0});var Xm=sr(),wI=t=>t&&t.startsWith('"')&&t.endsWith('"');function EI(){let t=(e,{tokens:n},r)=>n.type===""?e:r;return e=>{let{tokens:n}=e.source[e.source.reduce(t,0)],r=n.description.trimLeft(),i=r.split('"');if(i.length>1&&i[0]===""&&i.length%2===1)return e.name=i[1],n.name=`"${i[1]}"`,[n.postName,n.description]=(0,Xm.splitSpace)(r.slice(n.name.length)),e;let s=0,o="",a=!1,u;for(let l of r){if(s===0&&(0,Xm.isSpace)(l))break;l==="["&&s++,l==="]"&&s--,o+=l}if(s!==0)return e.problems.push({code:"spec:name:unpaired-brackets",message:"unpaired brackets",line:e.source[0].number,critical:!0}),e;let c=o;if(o[0]==="["&&o[o.length-1]==="]"){a=!0,o=o.slice(1,-1);let l=o.split("=");if(o=l[0].trim(),l[1]!==void 0&&(u=l.slice(1).join("=").trim()),o==="")return e.problems.push({code:"spec:name:empty-name",message:"empty name",line:e.source[0].number,critical:!0}),e;if(u==="")return e.problems.push({code:"spec:name:empty-default",message:"empty default value",line:e.source[0].number,critical:!0}),e;if(!wI(u)&&/=(?!>)/.test(u))return e.problems.push({code:"spec:name:invalid-default",message:"invalid default value syntax",line:e.source[0].number,critical:!0}),e}return e.optional=a,e.name=o,n.name=c,u!==void 0&&(e.default=u),[n.postName,n.description]=(0,Xm.splitSpace)(r.slice(n.name.length)),e}}Ym.default=EI});var Zm=g(Da=>{"use strict";Object.defineProperty(Da,"__esModule",{value:!0});Da.getJoiner=void 0;var Qm=uo();function AI(t="compact",e=Qm.Markers){let n=q0(t);return r=>(r.description=n(r.source,e),r)}Da.default=AI;function q0(t){return t==="compact"?OI:t==="preserve"?PI:t}Da.getJoiner=q0;function OI(t,e=Qm.Markers){return t.map(({tokens:{description:n}})=>n.trim()).filter(n=>n!=="").join(" ")}var CI=(t,{tokens:e},n)=>e.type===""?t:n,RI=({tokens:t})=>(t.delimiter===""?t.start:t.postDelimiter.slice(1))+t.description;function PI(t,e=Qm.Markers){if(t.length===0)return"";t[0].tokens.description===""&&t[0].tokens.delimiter===e.start&&(t=t.slice(1));let n=t[t.length-1];return n!==void 0&&n.tokens.description===""&&n.tokens.end.endsWith(e.end)&&(t=t.slice(0,-1)),t=t.slice(t.reduce(CI,0)),t.map(RI).join(`
101
- `)}});var F0=g(ey=>{"use strict";Object.defineProperty(ey,"__esModule",{value:!0});var DI=uo(),II=sr(),MI=M0(),LI=L0(),NI=N0(),qI=Km(),jI=zm(),FI=Jm(),j0=Zm();function $I({startLine:t=0,fence:e="```",spacing:n="compact",markers:r=DI.Markers,tokenizers:i=[(0,qI.default)(),(0,jI.default)(n),(0,FI.default)(),(0,j0.default)(n)]}={}){if(t<0||t%1>0)throw new Error("Invalid startLine");let s=(0,LI.default)({startLine:t,markers:r}),o=(0,MI.default)({fence:e}),a=(0,NI.default)({tokenizers:i}),u=(0,j0.getJoiner)(n);return function(c){let l=[];for(let d of(0,II.splitLines)(c)){let p=s(d);if(p===null)continue;let b=o(p),_=b.slice(1).map(a);l.push({description:u(b[0],r),tags:_,source:p,problems:_.reduce((E,L)=>E.concat(L.problems),[])})}return l}}ey.default=$I});var $0=g(ty=>{"use strict";Object.defineProperty(ty,"__esModule",{value:!0});function BI(t){return t.start+t.delimiter+t.postDelimiter+t.tag+t.postTag+t.type+t.postType+t.name+t.postName+t.description+t.end+t.lineEnd}function UI(){return t=>t.source.map(({tokens:e})=>BI(e)).join(`
102
- `)}ty.default=UI});var U0=g(Ia=>{"use strict";var HI=Ia&&Ia.__rest||function(t,e){var n={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(t);i<r.length;i++)e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(t,r[i])&&(n[r[i]]=t[r[i]]);return n};Object.defineProperty(Ia,"__esModule",{value:!0});var B0=uo(),WI=sr(),GI={start:0,tag:0,type:0,name:0},KI=(t=B0.Markers)=>(e,{tokens:n})=>({start:n.delimiter===t.start?n.start.length:e.start,tag:Math.max(e.tag,n.tag.length),type:Math.max(e.type,n.type.length),name:Math.max(e.name,n.name.length)}),is=t=>"".padStart(t," ");function VI(t=B0.Markers){let e=!1,n;function r(i){let s=Object.assign({},i.tokens);s.tag!==""&&(e=!0);let o=s.tag===""&&s.name===""&&s.type===""&&s.description==="";if(s.end===t.end&&o)return s.start=is(n.start+1),Object.assign(Object.assign({},i),{tokens:s});switch(s.delimiter){case t.start:s.start=is(n.start);break;case t.delim:s.start=is(n.start+1);break;default:s.delimiter="",s.start=is(n.start+2)}if(!e)return s.postDelimiter=s.description===""?"":" ",Object.assign(Object.assign({},i),{tokens:s});let a={delim:!1,tag:!1,type:!1,name:!1};return s.description===""&&(a.name=!0,s.postName="",s.name===""&&(a.type=!0,s.postType="",s.type===""&&(a.tag=!0,s.postTag="",s.tag===""&&(a.delim=!0)))),s.postDelimiter=a.delim?"":" ",a.tag||(s.postTag=is(n.tag-s.tag.length+1)),a.type||(s.postType=is(n.type-s.type.length+1)),a.name||(s.postName=is(n.name-s.name.length+1)),Object.assign(Object.assign({},i),{tokens:s})}return i=>{var{source:s}=i,o=HI(i,["source"]);return n=s.reduce(KI(t),Object.assign({},GI)),(0,WI.rewireSource)(Object.assign(Object.assign({},o),{source:s.map(r)}))}}Ia.default=VI});var H0=g(Ma=>{"use strict";var zI=Ma&&Ma.__rest||function(t,e){var n={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(t);i<r.length;i++)e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(t,r[i])&&(n[r[i]]=t[r[i]]);return n};Object.defineProperty(Ma,"__esModule",{value:!0});var XI=sr(),YI=t=>e=>e.slice(t),JI=t=>{let e="".padStart(t," ");return n=>n+e};function QI(t){let e,n=i=>{if(e===void 0){let s=t-i.length;e=s>0?JI(s):YI(-s)}return e(i)},r=i=>Object.assign(Object.assign({},i),{tokens:Object.assign(Object.assign({},i.tokens),{start:n(i.tokens.start)})});return i=>{var{source:s}=i,o=zI(i,["source"]);return(0,XI.rewireSource)(Object.assign(Object.assign({},o),{source:s.map(r)}))}}Ma.default=QI});var W0=g(La=>{"use strict";var ZI=La&&La.__rest||function(t,e){var n={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(t);i<r.length;i++)e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(t,r[i])&&(n[r[i]]=t[r[i]]);return n};Object.defineProperty(La,"__esModule",{value:!0});var eM=sr();function tM(t){function e(n){return Object.assign(Object.assign({},n),{tokens:Object.assign(Object.assign({},n.tokens),{lineEnd:t==="LF"?"":"\r"})})}return n=>{var{source:r}=n,i=ZI(n,["source"]);return(0,eM.rewireSource)(Object.assign(Object.assign({},i),{source:r.map(e)}))}}La.default=tM});var G0=g(Bl=>{"use strict";Object.defineProperty(Bl,"__esModule",{value:!0});Bl.flow=void 0;function nM(...t){return e=>t.reduce((n,r)=>r(n),e)}Bl.flow=nM});var X0=g(ry=>{"use strict";Object.defineProperty(ry,"__esModule",{value:!0});var rM=sr(),V0={line:0,start:0,delimiter:0,postDelimiter:0,tag:0,postTag:0,name:0,postName:0,type:0,postType:0,description:0,end:0,lineEnd:0},K0={lineEnd:"CR"},ny=Object.keys(V0),z0=t=>(0,rM.isSpace)(t)?`{${t.length}}`:t,iM=t=>"|"+t.join("|")+"|",sM=(t,e)=>Object.keys(e).map(n=>z0(e[n]).padEnd(t[n]));function oM({source:t}){var e,n;if(t.length===0)return"";let r=Object.assign({},V0);for(let s of ny)r[s]=((e=K0[s])!==null&&e!==void 0?e:s).length;for(let{number:s,tokens:o}of t){r.line=Math.max(r.line,s.toString().length);for(let a in o)r[a]=Math.max(r[a],z0(o[a]).length)}let i=[[],[]];for(let s of ny)i[0].push(((n=K0[s])!==null&&n!==void 0?n:s).padEnd(r[s]));for(let s of ny)i[1].push("-".padEnd(r[s],"-"));for(let{number:s,tokens:o}of t){let a=s.toString().padStart(r.line);i.push([a,...sM(r,o)])}return i.map(iM).join(`
103
- `)}ry.default=oM});var iy=g(Rt=>{"use strict";var aM=Rt&&Rt.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),uM=Rt&&Rt.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&aM(e,t,n)};Object.defineProperty(Rt,"__esModule",{value:!0});Rt.util=Rt.tokenizers=Rt.transforms=Rt.inspect=Rt.stringify=Rt.parse=void 0;var cM=F0(),lM=Zm(),dM=Jm(),fM=Km(),pM=zm(),hM=$0(),gM=U0(),mM=H0(),yM=W0(),bM=G0(),Ul=sr();uM(uo(),Rt);function vM(t,e={}){return(0,cM.default)(e)(t)}Rt.parse=vM;Rt.stringify=(0,hM.default)();var _M=X0();Object.defineProperty(Rt,"inspect",{enumerable:!0,get:function(){return _M.default}});Rt.transforms={flow:bM.flow,align:gM.default,indent:mM.default,crlf:yM.default};Rt.tokenizers={tag:fM.default,type:pM.default,name:dM.default,description:lM.default};Rt.util={rewireSpecs:Ul.rewireSpecs,rewireSource:Ul.rewireSource,seedBlock:Ul.seedBlock,seedTokens:Ul.seedTokens}});var sy=g(ss=>{"use strict";Object.defineProperty(ss,"__esModule",{value:!0});ss.enrichWithMetaInformation=ss.FunctionBlockTag=void 0;var TM=iy(),Y0=Wn();function J0(t){return[t.name,t.description].filter(e=>e!==void 0).join(" ")}var Na;(function(t){t.Description="description",t.Param="param",t.Return="return",t.Example="example"})(Na=ss.FunctionBlockTag||(ss.FunctionBlockTag={}));function SM(t){let e=[t.description??"",...t.tags.filter(s=>s.tag===Na.Description).map(J0)].join(`
99
+ [${u}] ${this.details[a].message}`}return o=o+r,o};Yi.safeStringify=function(t,e){return JSON.stringify(t,Yi.serializer(),e)};Yi.serializer=function(){let t=[],e=[],n=(r,i)=>e[0]===i?"[Circular ~]":"[Circular ~."+t.slice(0,e.indexOf(i)).join(".")+"]";return function(r,i){if(e.length>0){let s=e.indexOf(this);~s?(e.length=s+1,t.length=s+1,t[s]=r):(e.push(this),t.push(r)),~e.indexOf(i)&&(i=n.call(this,r,i))}else e.push(i);if(i){let s=i[Yi.annotations];if(s){if(Array.isArray(i)){let o=[];for(let a=0;a<i.length;++a)s.errors[a]&&o.push(`_$idx$_${s.errors[a].sort().join(", ")}_$end$_`),o.push(i[a]);i=o}else{for(let o in s.errors)i[`${o}_$key$_${s.errors[o].sort().join(", ")}_$end$_`]=i[o],i[o]=void 0;for(let o in s.missing)i[`_$miss$_${o}|${s.missing[o]}_$end$_`]="__missing__"}return i}}return i===1/0||i===-1/0||Number.isNaN(i)||typeof i=="function"||typeof i=="symbol"?"["+i.toString()+"]":i}}});var Fr=g(xt=>{"use strict";var gP=Kx(),mP=Qe(),yP=vi();xt.Report=class{constructor(t,e,n,r,i,s,o){if(this.code=t,this.flags=r,this.messages=i,this.path=s.path,this.prefs=o,this.state=s,this.value=e,this.message=null,this.template=null,this.local=n||{},this.local.label=xt.label(this.flags,this.state,this.prefs,this.messages),this.value!==void 0&&!this.local.hasOwnProperty("value")&&(this.local.value=this.value),this.path.length){let a=this.path[this.path.length-1];typeof a!="object"&&(this.local.key=a)}}_setTemplate(t){if(this.template=t,!this.flags.label&&this.path.length===0){let e=this._template(this.template,"root");e&&(this.local.label=e)}}toString(){if(this.message)return this.message;let t=this.code;if(!this.prefs.errors.render)return this.code;let e=this._template(this.template)||this._template(this.prefs.messages)||this._template(this.messages);return e===void 0?`Error code "${t}" is not defined, your custom type is missing the correct messages definition`:(this.message=e.render(this.value,this.state,this.prefs,this.local,{errors:this.prefs.errors,messages:[this.prefs.messages,this.messages]}),this.prefs.errors.label||(this.message=this.message.replace(/^"" /,"").trim()),this.message)}_template(t,e){return xt.template(this.value,t,e||this.code,this.state,this.prefs)}};xt.path=function(t){let e="";for(let n of t)typeof n!="object"&&(typeof n=="string"?(e&&(e+="."),e+=n):e+=`[${n}]`);return e};xt.template=function(t,e,n,r,i){if(!e)return;if(yP.isTemplate(e))return n!=="root"?e:null;let s=i.errors.language;if(mP.isResolvable(s)&&(s=s.resolve(t,r,i)),s&&e[s]){if(e[s][n]!==void 0)return e[s][n];if(e[s]["*"]!==void 0)return e[s]["*"]}return e[n]?e[n]:e["*"]};xt.label=function(t,e,n,r){if(!n.errors.label)return"";if(t.label)return t.label;let i=e.path;n.errors.label==="key"&&e.path.length>1&&(i=e.path.slice(-1));let s=xt.path(i);return s||xt.template(null,n.messages,"root",e,n)||r&&xt.template(null,r,"root",e,n)||"value"};xt.process=function(t,e,n){if(!t)return null;let{override:r,message:i,details:s}=xt.details(t);if(r)return r;if(n.errors.stack)return new xt.ValidationError(i,s,e);let o=Error.stackTraceLimit;Error.stackTraceLimit=0;let a=new xt.ValidationError(i,s,e);return Error.stackTraceLimit=o,a};xt.details=function(t,e={}){let n=[],r=[];for(let i of t){if(i instanceof Error){if(e.override!==!1)return{override:i};let o=i.toString();n.push(o),r.push({message:o,type:"override",context:{error:i}});continue}let s=i.toString();n.push(s),r.push({message:s,path:i.path.filter(o=>typeof o!="object"),type:i.code,context:i.local})}return n.length>1&&(n=[...new Set(n)]),{message:n.join(". "),details:r}};xt.ValidationError=class extends Error{constructor(t,e,n){super(t),this._original=n,this.details=e}static isError(t){return t instanceof xt.ValidationError}};xt.ValidationError.prototype.isJoi=!0;xt.ValidationError.prototype.name="ValidationError";xt.ValidationError.prototype.annotate=gP.error});var $r=g(Fn=>{"use strict";var qn=Ie(),bP=nn(),vP=Xi(),Ta=Qe(),sm,jn={symbol:Symbol("ref"),defaults:{adjust:null,in:!1,iterables:null,map:null,separator:".",type:"value"}};Fn.create=function(t,e={}){qn(typeof t=="string","Invalid reference key:",t),Ta.assertOptions(e,["adjust","ancestor","in","iterables","map","prefix","render","separator"]),qn(!e.prefix||typeof e.prefix=="object","options.prefix must be of type object");let n=Object.assign({},jn.defaults,e);delete n.prefix;let r=n.separator,i=jn.context(t,r,e.prefix);if(n.type=i.type,t=i.key,n.type==="value")if(i.root&&(qn(!r||t[0]!==r,"Cannot specify relative path with root prefix"),n.ancestor="root",t||(t=null)),r&&r===t)t=null,n.ancestor=0;else if(n.ancestor!==void 0)qn(!r||!t||t[0]!==r,"Cannot combine prefix with ancestor option");else{let[s,o]=jn.ancestor(t,r);o&&(t=t.slice(o),t===""&&(t=null)),n.ancestor=s}return n.path=r?t===null?[]:t.split(r):[t],new jn.Ref(n)};Fn.in=function(t,e={}){return Fn.create(t,{...e,in:!0})};Fn.isRef=function(t){return t?!!t[Ta.symbols.ref]:!1};jn.Ref=class{constructor(t){qn(typeof t=="object","Invalid reference construction"),Ta.assertOptions(t,["adjust","ancestor","in","iterables","map","path","render","separator","type","depth","key","root","display"]),qn([!1,void 0].includes(t.separator)||typeof t.separator=="string"&&t.separator.length===1,"Invalid separator"),qn(!t.adjust||typeof t.adjust=="function","options.adjust must be a function"),qn(!t.map||Array.isArray(t.map),"options.map must be an array"),qn(!t.map||!t.adjust,"Cannot set both map and adjust options"),Object.assign(this,jn.defaults,t),qn(this.type==="value"||this.ancestor===void 0,"Non-value references cannot reference ancestors"),Array.isArray(this.map)&&(this.map=new Map(this.map)),this.depth=this.path.length,this.key=this.path.length?this.path.join(this.separator):null,this.root=this.path[0],this.updateDisplay()}resolve(t,e,n,r,i={}){return qn(!this.in||i.in,"Invalid in() reference usage"),this.type==="global"?this._resolve(n.context,e,i):this.type==="local"?this._resolve(r,e,i):this.ancestor?this.ancestor==="root"?this._resolve(e.ancestors[e.ancestors.length-1],e,i):(qn(this.ancestor<=e.ancestors.length,"Invalid reference exceeds the schema root:",this.display),this._resolve(e.ancestors[this.ancestor-1],e,i)):this._resolve(t,e,i)}_resolve(t,e,n){let r;if(this.type==="value"&&e.mainstay.shadow&&n.shadow!==!1&&(r=e.mainstay.shadow.get(this.absolute(e))),r===void 0&&(r=vP(t,this.path,{iterables:this.iterables,functions:!0})),this.adjust&&(r=this.adjust(r)),this.map){let i=this.map.get(r);i!==void 0&&(r=i)}return e.mainstay&&e.mainstay.tracer.resolve(e,this,r),r}toString(){return this.display}absolute(t){return[...t.path.slice(0,-this.ancestor),...this.path]}clone(){return new jn.Ref(this)}describe(){let t={path:this.path};this.type!=="value"&&(t.type=this.type),this.separator!=="."&&(t.separator=this.separator),this.type==="value"&&this.ancestor!==1&&(t.ancestor=this.ancestor),this.map&&(t.map=[...this.map]);for(let e of["adjust","iterables","render"])this[e]!==null&&this[e]!==void 0&&(t[e]=this[e]);return this.in!==!1&&(t.in=!0),{ref:t}}updateDisplay(){let t=this.key!==null?this.key:"";if(this.type!=="value"){this.display=`ref:${this.type}:${t}`;return}if(!this.separator){this.display=`ref:${t}`;return}if(!this.ancestor){this.display=`ref:${this.separator}${t}`;return}if(this.ancestor==="root"){this.display=`ref:root:${t}`;return}if(this.ancestor===1){this.display=`ref:${t||".."}`;return}let e=new Array(this.ancestor+1).fill(this.separator).join("");this.display=`ref:${e}${t||""}`}};jn.Ref.prototype[Ta.symbols.ref]=!0;Fn.build=function(t){return t=Object.assign({},jn.defaults,t),t.type==="value"&&t.ancestor===void 0&&(t.ancestor=1),new jn.Ref(t)};jn.context=function(t,e,n={}){if(t=t.trim(),n){let r=n.global===void 0?"$":n.global;if(r!==e&&t.startsWith(r))return{key:t.slice(r.length),type:"global"};let i=n.local===void 0?"#":n.local;if(i!==e&&t.startsWith(i))return{key:t.slice(i.length),type:"local"};let s=n.root===void 0?"/":n.root;if(s!==e&&t.startsWith(s))return{key:t.slice(s.length),type:"value",root:!0}}return{key:t,type:"value"}};jn.ancestor=function(t,e){if(!e)return[1,0];if(t[0]!==e)return[1,0];if(t[1]!==e)return[0,1];let n=2;for(;t[n]===e;)++n;return[n-1,n]};Fn.toSibling=0;Fn.toParent=1;Fn.Manager=class{constructor(){this.refs=[]}register(t,e){if(t){if(e=e===void 0?Fn.toParent:e,Array.isArray(t)){for(let n of t)this.register(n,e);return}if(Ta.isSchema(t)){for(let n of t._refs.refs)n.ancestor-e>=0&&this.refs.push({ancestor:n.ancestor-e,root:n.root});return}Fn.isRef(t)&&t.type==="value"&&t.ancestor-e>=0&&this.refs.push({ancestor:t.ancestor-e,root:t.root}),sm=sm||vi(),sm.isTemplate(t)&&this.register(t.refs(),e)}}get length(){return this.refs.length}clone(){let t=new Fn.Manager;return t.refs=bP(this.refs),t}reset(){this.refs=[]}roots(){return this.refs.filter(t=>!t.ancestor).map(t=>t.root)}}});var vi=g((Yx,Jx)=>{"use strict";var vl=Ie(),_P=nn(),TP=Hx(),SP=Wx(),zx=Qe(),Vx=Fr(),Xx=$r(),Be={symbol:Symbol("template"),opens:new Array(1e3).join("\0"),closes:new Array(1e3).join(""),dateFormat:{date:Date.prototype.toDateString,iso:Date.prototype.toISOString,string:Date.prototype.toString,time:Date.prototype.toTimeString,utc:Date.prototype.toUTCString}};Jx.exports=Yx=Be.Template=class{constructor(t,e){if(vl(typeof t=="string","Template source must be a string"),vl(!t.includes("\0")&&!t.includes(""),"Template source cannot contain reserved control characters"),this.source=t,this.rendered=t,this._template=null,e){let{functions:n,...r}=e;this._settings=Object.keys(r).length?_P(r):void 0,this._functions=n,this._functions&&(vl(Object.keys(this._functions).every(i=>typeof i=="string"),"Functions keys must be strings"),vl(Object.values(this._functions).every(i=>typeof i=="function"),"Functions values must be functions"))}else this._settings=void 0,this._functions=void 0;this._parse()}_parse(){if(!this.source.includes("{"))return;let t=Be.encode(this.source),e=Be.split(t),n=!1,r=[],i=e.shift();i&&r.push(i);for(let s of e){let o=s[0]!=="{",a=o?"}":"}}",u=s.indexOf(a);if(u===-1||s[1]==="{"){r.push(`{${Be.decode(s)}`);continue}let c=s.slice(o?0:1,u),l=c[0]===":";l&&(c=c.slice(1));let d=this._ref(Be.decode(c),{raw:o,wrapped:l});r.push(d),typeof d!="string"&&(n=!0);let p=s.slice(u+a.length);p&&r.push(Be.decode(p))}if(!n){this.rendered=r.join("");return}this._template=r}static date(t,e){return Be.dateFormat[e.dateFormat].call(t)}describe(t={}){if(!this._settings&&t.compact)return this.source;let e={template:this.source};return this._settings&&(e.options=this._settings),this._functions&&(e.functions=this._functions),e}static build(t){return new Be.Template(t.template,t.options||t.functions?{...t.options,functions:t.functions}:void 0)}isDynamic(){return!!this._template}static isTemplate(t){return t?!!t[zx.symbols.template]:!1}refs(){if(!this._template)return;let t=[];for(let e of this._template)typeof e!="string"&&t.push(...e.refs);return t}resolve(t,e,n,r){return this._template&&this._template.length===1?this._part(this._template[0],t,e,n,r,{}):this.render(t,e,n,r)}_part(t,...e){return t.ref?t.ref.resolve(...e):t.formula.evaluate(e)}render(t,e,n,r,i={}){if(!this.isDynamic())return this.rendered;let s=[];for(let o of this._template)if(typeof o=="string")s.push(o);else{let a=this._part(o,t,e,n,r,i),u=Be.stringify(a,t,e,n,r,i);if(u!==void 0){let c=o.raw||(i.errors&&i.errors.escapeHtml)===!1?u:TP(u);s.push(Be.wrap(c,o.wrapped&&n.errors.wrap.label))}}return s.join("")}_ref(t,{raw:e,wrapped:n}){let r=[],i=o=>{let a=Xx.create(o,this._settings);return r.push(a),u=>{let c=a.resolve(...u);return c!==void 0?c:null}};try{let o=this._functions?{...Be.functions,...this._functions}:Be.functions;var s=new SP.Parser(t,{reference:i,functions:o,constants:Be.constants})}catch(o){throw o.message=`Invalid template variable "${t}" fails due to: ${o.message}`,o}if(s.single){if(s.single.type==="reference"){let o=r[0];return{ref:o,raw:e,refs:r,wrapped:n||o.type==="local"&&o.key==="label"}}return Be.stringify(s.single.value)}return{formula:s,raw:e,refs:r}}toString(){return this.source}};Be.Template.prototype[zx.symbols.template]=!0;Be.Template.prototype.isImmutable=!0;Be.encode=function(t){return t.replace(/\\(\{+)/g,(e,n)=>Be.opens.slice(0,n.length)).replace(/\\(\}+)/g,(e,n)=>Be.closes.slice(0,n.length))};Be.decode=function(t){return t.replace(/\u0000/g,"{").replace(/\u0001/g,"}")};Be.split=function(t){let e=[],n="";for(let r=0;r<t.length;++r){let i=t[r];if(i==="{"){let s="";for(;r+1<t.length&&t[r+1]==="{";)s+="{",++r;e.push(n),n=s}else n+=i}return e.push(n),e};Be.wrap=function(t,e){return e?e.length===1?`${e}${t}${e}`:`${e[0]}${t}${e[1]}`:t};Be.stringify=function(t,e,n,r,i,s={}){let o=typeof t,a=r&&r.errors&&r.errors.wrap||{},u=!1;if(Xx.isRef(t)&&t.render&&(u=t.in,t=t.resolve(e,n,r,i,{in:t.in,...s})),t===null)return"null";if(o==="string")return Be.wrap(t,s.arrayItems&&a.string);if(o==="number"||o==="function"||o==="symbol")return t.toString();if(o!=="object")return JSON.stringify(t);if(t instanceof Date)return Be.Template.date(t,r);if(t instanceof Map){let l=[];for(let[d,p]of t.entries())l.push(`${d.toString()} -> ${p.toString()}`);t=l}if(!Array.isArray(t))return t.toString();let c=[];for(let l of t)c.push(Be.stringify(l,e,n,r,i,{arrayItems:!0,...s}));return Be.wrap(c.join(", "),!u&&a.array)};Be.constants={true:!0,false:!1,null:null,second:1e3,minute:60*1e3,hour:60*60*1e3,day:24*60*60*1e3};Be.functions={if(t,e,n){return t?e:n},length(t){return typeof t=="string"?t.length:!t||typeof t!="object"?null:Array.isArray(t)?t.length:Object.keys(t).length},msg(t){let[e,n,r,i,s]=this,o=s.messages;if(!o)return"";let a=Vx.template(e,o[0],t,n,r)||Vx.template(e,o[1],t,n,r);return a?a.render(e,n,r,i,s):""},number(t){return typeof t=="number"?t:typeof t=="string"?parseFloat(t):typeof t=="boolean"?t?1:0:t instanceof Date?t.getTime():null}}});var eo=g(Sa=>{"use strict";var Ji=Ie(),Qx=nn(),xn=vi();Sa.compile=function(t,e){if(typeof t=="string")return Ji(!e,"Cannot set single message string"),new xn(t);if(xn.isTemplate(t))return Ji(!e,"Cannot set single message template"),t;Ji(typeof t=="object"&&!Array.isArray(t),"Invalid message options"),e=e?Qx(e):{};for(let n in t){let r=t[n];if(n==="root"||xn.isTemplate(r)){e[n]=r;continue}if(typeof r=="string"){e[n]=new xn(r);continue}Ji(typeof r=="object"&&!Array.isArray(r),"Invalid message for",n);let i=n;e[i]=e[i]||{};for(n in r){let s=r[n];if(n==="root"||xn.isTemplate(s)){e[i][n]=s;continue}Ji(typeof s=="string","Invalid message for",n,"in",i),e[i][n]=new xn(s)}}return e};Sa.decompile=function(t){let e={};for(let n in t){let r=t[n];if(n==="root"){e.root=r;continue}if(xn.isTemplate(r)){e[n]=r.describe({compact:!0});continue}let i=n;e[i]={};for(n in r){let s=r[n];if(n==="root"){e[i].root=s;continue}e[i][n]=s.describe({compact:!0})}}return e};Sa.merge=function(t,e){if(!t)return Sa.compile(e);if(!e)return t;if(typeof e=="string")return new xn(e);if(xn.isTemplate(e))return e;let n=Qx(t);for(let r in e){let i=e[r];if(r==="root"||xn.isTemplate(i)){n[r]=i;continue}if(typeof i=="string"){n[r]=new xn(i);continue}Ji(typeof i=="object"&&!Array.isArray(i),"Invalid message for",r);let s=r;n[s]=n[s]||{};for(r in i){let o=i[r];if(r==="root"||xn.isTemplate(o)){n[s][r]=o;continue}Ji(typeof o=="string","Invalid message for",r,"in",s),n[s][r]=new xn(o)}}return n}});var Qe=g(Ze=>{"use strict";var _l=Ie(),kP=tm(),xP=Bx(),om,am,wP={isoDate:/^(?:[-+]\d{2})?(?:\d{4}(?!\d{2}\b))(?:(-?)(?:(?:0[1-9]|1[0-2])(?:\1(?:[12]\d|0[1-9]|3[01]))?|W(?:[0-4]\d|5[0-2])(?:-?[1-7])?|(?:00[1-9]|0[1-9]\d|[12]\d{2}|3(?:[0-5]\d|6[1-6])))(?![T]$|[T][\d]+Z$)(?:[T\s](?:(?:(?:[01]\d|2[0-3])(?:(:?)[0-5]\d)?|24\:?00)(?:[.,]\d+(?!:))?)(?:\2[0-5]\d(?:[.,]\d+)?)?(?:[Z]|(?:[+-])(?:[01]\d|2[0-3])(?::?[0-5]\d)?)?)?)?$/};Ze.version=xP.version;Ze.defaults={abortEarly:!0,allowUnknown:!1,artifacts:!1,cache:!0,context:null,convert:!0,dateFormat:"iso",errors:{escapeHtml:!1,label:"path",language:null,render:!0,stack:!1,wrap:{label:'"',array:"[]"}},externals:!0,messages:{},nonEnumerables:!1,noDefaults:!1,presence:"optional",skipFunctions:!1,stripUnknown:!1,warnings:!1};Ze.symbols={any:Symbol.for("@hapi/joi/schema"),arraySingle:Symbol("arraySingle"),deepDefault:Symbol("deepDefault"),errors:Symbol("errors"),literal:Symbol("literal"),override:Symbol("override"),parent:Symbol("parent"),prefs:Symbol("prefs"),ref:Symbol("ref"),template:Symbol("template"),values:Symbol("values")};Ze.assertOptions=function(t,e,n="Options"){_l(t&&typeof t=="object"&&!Array.isArray(t),"Options must be of type object");let r=Object.keys(t).filter(i=>!e.includes(i));_l(r.length===0,`${n} contain unknown keys: ${r}`)};Ze.checkPreferences=function(t){am=am||yl();let e=am.preferences.validate(t);if(e.error)throw new kP([e.error.details[0].message])};Ze.compare=function(t,e,n){switch(n){case"=":return t===e;case">":return t>e;case"<":return t<e;case">=":return t>=e;case"<=":return t<=e}};Ze.default=function(t,e){return t===void 0?e:t};Ze.isIsoDate=function(t){return wP.isoDate.test(t)};Ze.isNumber=function(t){return typeof t=="number"&&!isNaN(t)};Ze.isResolvable=function(t){return t?t[Ze.symbols.ref]||t[Ze.symbols.template]:!1};Ze.isSchema=function(t,e={}){let n=t&&t[Ze.symbols.any];return n?(_l(e.legacy||n.version===Ze.version,"Cannot mix different versions of joi schemas"),!0):!1};Ze.isValues=function(t){return t[Ze.symbols.values]};Ze.limit=function(t){return Number.isSafeInteger(t)&&t>=0};Ze.preferences=function(t,e){om=om||eo(),t=t||{},e=e||{};let n=Object.assign({},t,e);return e.errors&&t.errors&&(n.errors=Object.assign({},t.errors,e.errors),n.errors.wrap=Object.assign({},t.errors.wrap,e.errors.wrap)),e.messages&&(n.messages=om.compile(e.messages,t.messages)),delete n[Ze.symbols.prefs],n};Ze.tryWithPath=function(t,e,n={}){try{return t()}catch(r){throw r.path!==void 0?r.path=e+"."+r.path:r.path=e,n.append&&(r.message=`${r.message} (${r.path})`),r}};Ze.validateArg=function(t,e,{assert:n,message:r}){if(Ze.isSchema(n)){let i=n.validate(t);return i.error?i.error.message:void 0}else if(!n(t))return e?`${e} ${r}`:r};Ze.verifyFlat=function(t,e){for(let n of t)_l(!Array.isArray(n),"Method no longer accepts array arguments:",e)}});var um=g(Zx=>{"use strict";var EP=Ie(),AP=nn(),OP=Qe(),to={max:1e3,supported:new Set(["undefined","boolean","number","string"])};Zx.provider={provision(t){return new to.Cache(t)}};to.Cache=class{constructor(t={}){OP.assertOptions(t,["max"]),EP(t.max===void 0||t.max&&t.max>0&&isFinite(t.max),"Invalid max cache size"),this._max=t.max||to.max,this._map=new Map,this._list=new to.List}get length(){return this._map.size}set(t,e){if(t!==null&&!to.supported.has(typeof t))return;let n=this._map.get(t);if(n){n.value=e,this._list.first(n);return}n=this._list.unshift({key:t,value:e}),this._map.set(t,n),this._compact()}get(t){let e=this._map.get(t);if(e)return this._list.first(e),AP(e.value)}_compact(){if(this._map.size>this._max){let t=this._list.pop();this._map.delete(t.key)}}};to.List=class{constructor(){this.tail=null,this.head=null}unshift(t){return t.next=null,t.prev=this.head,this.head&&(this.head.next=t),this.head=t,this.tail||(this.tail=t),t}first(t){t!==this.head&&(this._remove(t),this.unshift(t))}pop(){return this._remove(this.tail)}_remove(t){let{next:e,prev:n}=t;return e.prev=n,n&&(n.next=e),t===this.tail&&(this.tail=e),t.prev=null,t.next=null,t}}});var Qi=g(Br=>{"use strict";var ft=Ie(),wn=Qe(),no=$r(),$n={};Br.schema=function(t,e,n={}){wn.assertOptions(n,["appendPath","override"]);try{return $n.schema(t,e,n)}catch(r){throw n.appendPath&&r.path!==void 0&&(r.message=`${r.message} (${r.path})`),r}};$n.schema=function(t,e,n){ft(e!==void 0,"Invalid undefined schema"),Array.isArray(e)&&(ft(e.length,"Invalid empty array schema"),e.length===1&&(e=e[0]));let r=(i,...s)=>n.override!==!1?i.valid(t.override,...s):i.valid(...s);if($n.simple(e))return r(t,e);if(typeof e=="function")return t.custom(e);if(ft(typeof e=="object","Invalid schema content:",typeof e),wn.isResolvable(e))return r(t,e);if(wn.isSchema(e))return e;if(Array.isArray(e)){for(let i of e)if(!$n.simple(i))return t.alternatives().try(...e);return r(t,...e)}return e instanceof RegExp?t.string().regex(e):e instanceof Date?r(t.date(),e):(ft(Object.getPrototypeOf(e)===Object.getPrototypeOf({}),"Schema can only contain plain objects"),t.object().keys(e))};Br.ref=function(t,e){return no.isRef(t)?t:no.create(t,e)};Br.compile=function(t,e,n={}){wn.assertOptions(n,["legacy"]);let r=e&&e[wn.symbols.any];if(r)return ft(n.legacy||r.version===wn.version,"Cannot mix different versions of joi schemas:",r.version,wn.version),e;if(typeof e!="object"||!n.legacy)return Br.schema(t,e,{appendPath:!0});let i=$n.walk(e);return i?i.compile(i.root,e):Br.schema(t,e,{appendPath:!0})};$n.walk=function(t){if(typeof t!="object")return null;if(Array.isArray(t)){for(let n of t){let r=$n.walk(n);if(r)return r}return null}let e=t[wn.symbols.any];if(e)return{root:t[e.root],compile:e.compile};ft(Object.getPrototypeOf(t)===Object.getPrototypeOf({}),"Schema can only contain plain objects");for(let n in t){let r=$n.walk(t[n]);if(r)return r}return null};$n.simple=function(t){return t===null||["boolean","string","number"].includes(typeof t)};Br.when=function(t,e,n){if(n===void 0&&(ft(e&&typeof e=="object","Missing options"),n=e,e=no.create(".")),Array.isArray(n)&&(n={switch:n}),wn.assertOptions(n,["is","not","then","otherwise","switch","break"]),wn.isSchema(e))return ft(n.is===void 0,'"is" can not be used with a schema condition'),ft(n.not===void 0,'"not" can not be used with a schema condition'),ft(n.switch===void 0,'"switch" can not be used with a schema condition'),$n.condition(t,{is:e,then:n.then,otherwise:n.otherwise,break:n.break});if(ft(no.isRef(e)||typeof e=="string","Invalid condition:",e),ft(n.not===void 0||n.is===void 0,'Cannot combine "is" with "not"'),n.switch===void 0){let i=n;n.not!==void 0&&(i={is:n.not,then:n.otherwise,otherwise:n.then,break:n.break});let s=i.is!==void 0?t.$_compile(i.is):t.$_root.invalid(null,!1,0,"").required();return ft(i.then!==void 0||i.otherwise!==void 0,'options must have at least one of "then", "otherwise", or "switch"'),ft(i.break===void 0||i.then===void 0||i.otherwise===void 0,"Cannot specify then, otherwise, and break all together"),n.is!==void 0&&!no.isRef(n.is)&&!wn.isSchema(n.is)&&(s=s.required()),$n.condition(t,{ref:Br.ref(e),is:s,then:i.then,otherwise:i.otherwise,break:i.break})}ft(Array.isArray(n.switch),'"switch" must be an array'),ft(n.is===void 0,'Cannot combine "switch" with "is"'),ft(n.not===void 0,'Cannot combine "switch" with "not"'),ft(n.then===void 0,'Cannot combine "switch" with "then"');let r={ref:Br.ref(e),switch:[],break:n.break};for(let i=0;i<n.switch.length;++i){let s=n.switch[i],o=i===n.switch.length-1;wn.assertOptions(s,o?["is","then","otherwise"]:["is","then"]),ft(s.is!==void 0,'Switch statement missing "is"'),ft(s.then!==void 0,'Switch statement missing "then"');let a={is:t.$_compile(s.is),then:t.$_compile(s.then)};if(!no.isRef(s.is)&&!wn.isSchema(s.is)&&(a.is=a.is.required()),o){ft(n.otherwise===void 0||s.otherwise===void 0,'Cannot specify "otherwise" inside and outside a "switch"');let u=n.otherwise!==void 0?n.otherwise:s.otherwise;u!==void 0&&(ft(r.break===void 0,"Cannot specify both otherwise and break"),a.otherwise=t.$_compile(u))}r.switch.push(a)}return r};$n.condition=function(t,e){for(let n of["then","otherwise"])e[n]===void 0?delete e[n]:e[n]=t.$_compile(e[n]);return e}});var cm=g(tw=>{"use strict";var _i=Ie(),CP=nn(),ew=Qe(),RP=eo(),vr={};tw.type=function(t,e){let n=Object.getPrototypeOf(t),r=CP(n),i=t._assign(Object.create(r)),s=Object.assign({},e);delete s.base,r._definition=s;let o=n._definition||{};s.messages=RP.merge(o.messages,s.messages),s.properties=Object.assign({},o.properties,s.properties),i.type=s.type,s.flags=Object.assign({},o.flags,s.flags);let a=Object.assign({},o.terms);if(s.terms)for(let d in s.terms){let p=s.terms[d];_i(i.$_terms[d]===void 0,"Invalid term override for",s.type,d),i.$_terms[d]=p.init,a[d]=p}s.terms=a,s.args||(s.args=o.args),s.prepare=vr.prepare(s.prepare,o.prepare),s.coerce&&(typeof s.coerce=="function"&&(s.coerce={method:s.coerce}),s.coerce.from&&!Array.isArray(s.coerce.from)&&(s.coerce={method:s.coerce.method,from:[].concat(s.coerce.from)})),s.coerce=vr.coerce(s.coerce,o.coerce),s.validate=vr.validate(s.validate,o.validate);let u=Object.assign({},o.rules);if(s.rules)for(let d in s.rules){let p=s.rules[d];_i(typeof p=="object","Invalid rule definition for",s.type,d);let b=p.method;if(b===void 0&&(b=function(){return this.$_addRule(d)}),b&&(_i(!r[d],"Rule conflict in",s.type,d),r[d]=b),_i(!u[d],"Rule conflict in",s.type,d),u[d]=p,p.alias){let _=[].concat(p.alias);for(let E of _)r[E]=p.method}p.args&&(p.argsByName=new Map,p.args=p.args.map(_=>(typeof _=="string"&&(_={name:_}),_i(!p.argsByName.has(_.name),"Duplicated argument name",_.name),ew.isSchema(_.assert)&&(_.assert=_.assert.strict().label(_.name)),p.argsByName.set(_.name,_),_)))}s.rules=u;let c=Object.assign({},o.modifiers);if(s.modifiers)for(let d in s.modifiers){_i(!r[d],"Rule conflict in",s.type,d);let p=s.modifiers[d];_i(typeof p=="function","Invalid modifier definition for",s.type,d);let b=function(_){return this.rule({[d]:_})};r[d]=b,c[d]=p}if(s.modifiers=c,s.overrides){r._super=n,i.$_super={};for(let d in s.overrides)_i(n[d],"Cannot override missing",d),s.overrides[d][ew.symbols.parent]=n[d],i.$_super[d]=n[d].bind(i);Object.assign(r,s.overrides)}s.cast=Object.assign({},o.cast,s.cast);let l=Object.assign({},o.manifest,s.manifest);return l.build=vr.build(s.manifest&&s.manifest.build,o.manifest&&o.manifest.build),s.manifest=l,s.rebuild=vr.rebuild(s.rebuild,o.rebuild),i};vr.build=function(t,e){return!t||!e?t||e:function(n,r){return e(t(n,r),r)}};vr.coerce=function(t,e){return!t||!e?t||e:{from:t.from&&e.from?[...new Set([...t.from,...e.from])]:null,method(n,r){let i;if((!e.from||e.from.includes(typeof n))&&(i=e.method(n,r),i)){if(i.errors||i.value===void 0)return i;n=i.value}if(!t.from||t.from.includes(typeof n)){let s=t.method(n,r);if(s)return s}return i}}};vr.prepare=function(t,e){return!t||!e?t||e:function(n,r){let i=t(n,r);if(i){if(i.errors||i.value===void 0)return i;n=i.value}return e(n,r)||i}};vr.rebuild=function(t,e){return!t||!e?t||e:function(n){e(n),t(n)}};vr.validate=function(t,e){return!t||!e?t||e:function(n,r){let i=e(n,r);if(i){if(i.errors&&(!Array.isArray(i.errors)||i.errors.length))return i;n=i.value}return t(n,r)||i}}});var fm=g(dm=>{"use strict";var _r=Ie(),Tl=nn(),Zi=Qe(),PP=eo(),nw=$r(),DP=vi(),lm,rn={};dm.describe=function(t){let e=t._definition,n={type:t.type,flags:{},rules:[]};for(let r in t._flags)r[0]!=="_"&&(n.flags[r]=rn.describe(t._flags[r]));Object.keys(n.flags).length||delete n.flags,t._preferences&&(n.preferences=Tl(t._preferences,{shallow:["messages"]}),delete n.preferences[Zi.symbols.prefs],n.preferences.messages&&(n.preferences.messages=PP.decompile(n.preferences.messages))),t._valids&&(n.allow=t._valids.describe()),t._invalids&&(n.invalid=t._invalids.describe());for(let r of t._rules){if(e.rules[r.name].manifest===!1)continue;let s={name:r.name};for(let o in e.modifiers)r[o]!==void 0&&(s[o]=rn.describe(r[o]));if(r.args){s.args={};for(let o in r.args){let a=r.args[o];o==="options"&&!Object.keys(a).length||(s.args[o]=rn.describe(a,{assign:o}))}Object.keys(s.args).length||delete s.args}n.rules.push(s)}n.rules.length||delete n.rules;for(let r in t.$_terms){if(r[0]==="_")continue;_r(!n[r],"Cannot describe schema due to internal name conflict with",r);let i=t.$_terms[r];if(!i)continue;if(i instanceof Map){i.size&&(n[r]=[...i.entries()]);continue}if(Zi.isValues(i)){n[r]=i.describe();continue}_r(e.terms[r],"Term",r,"missing configuration");let s=e.terms[r].manifest,o=typeof s=="object";if(!i.length&&!o)continue;let a=[];for(let u of i)a.push(rn.describe(u));if(o){let{from:u,to:c}=s.mapped;n[r]={};for(let l of a)n[r][l[c]]=l[u];continue}if(s==="single"){_r(a.length===1,"Term",r,"contains more than one item"),n[r]=a[0];continue}n[r]=a}return rn.validate(t.$_root,n),n};rn.describe=function(t,e={}){if(Array.isArray(t))return t.map(rn.describe);if(t===Zi.symbols.deepDefault)return{special:"deep"};if(typeof t!="object"||t===null)return t;if(e.assign==="options")return Tl(t);if(Buffer&&Buffer.isBuffer(t))return{buffer:t.toString("binary")};if(t instanceof Date)return t.toISOString();if(t instanceof Error)return t;if(t instanceof RegExp)return e.assign==="regex"?t.toString():{regex:t.toString()};if(t[Zi.symbols.literal])return{function:t.literal};if(typeof t.describe=="function")return e.assign==="ref"?t.describe().ref:t.describe();let n={};for(let r in t){let i=t[r];i!==void 0&&(n[r]=rn.describe(i,{assign:r}))}return n};dm.build=function(t,e){return new rn.Builder(t).parse(e)};rn.Builder=class{constructor(t){this.joi=t}parse(t){rn.validate(this.joi,t);let e=this.joi[t.type]()._bare(),n=e._definition;if(t.flags)for(let i in t.flags){let s=n.flags[i]&&n.flags[i].setter||i;_r(typeof e[s]=="function","Invalid flag",i,"for type",t.type),e=e[s](this.build(t.flags[i]))}if(t.preferences&&(e=e.preferences(this.build(t.preferences))),t.allow&&(e=e.allow(...this.build(t.allow))),t.invalid&&(e=e.invalid(...this.build(t.invalid))),t.rules)for(let i of t.rules){_r(typeof e[i.name]=="function","Invalid rule",i.name,"for type",t.type);let s=[];if(i.args){let a={};for(let l in i.args)a[l]=this.build(i.args[l],{assign:l});let u=Object.keys(a),c=n.rules[i.name].args;if(c){_r(u.length<=c.length,"Invalid number of arguments for",t.type,i.name,"(expected up to",c.length,", found",u.length,")");for(let{name:l}of c)s.push(a[l])}else _r(u.length===1,"Invalid number of arguments for",t.type,i.name,"(expected up to 1, found",u.length,")"),s.push(a[u[0]])}e=e[i.name](...s);let o={};for(let a in n.modifiers)i[a]!==void 0&&(o[a]=this.build(i[a]));Object.keys(o).length&&(e=e.rule(o))}let r={};for(let i in t){if(["allow","flags","invalid","whens","preferences","rules","type"].includes(i))continue;_r(n.terms[i],"Term",i,"missing configuration");let s=n.terms[i].manifest;if(s==="schema"){r[i]=t[i].map(o=>this.parse(o));continue}if(s==="values"){r[i]=t[i].map(o=>this.build(o));continue}if(s==="single"){r[i]=this.build(t[i]);continue}if(typeof s=="object"){r[i]={};for(let o in t[i]){let a=t[i][o];r[i][o]=this.parse(a)}continue}r[i]=this.build(t[i])}return t.whens&&(r.whens=t.whens.map(i=>this.build(i))),e=n.manifest.build(e,r),e.$_temp.ruleset=!1,e}build(t,e={}){if(t===null)return null;if(Array.isArray(t))return t.map(r=>this.build(r));if(t instanceof Error)return t;if(e.assign==="options")return Tl(t);if(e.assign==="regex")return rn.regex(t);if(e.assign==="ref")return nw.build(t);if(typeof t!="object")return t;if(Object.keys(t).length===1){if(t.buffer)return _r(Buffer,"Buffers are not supported"),Buffer&&Buffer.from(t.buffer,"binary");if(t.function)return{[Zi.symbols.literal]:!0,literal:t.function};if(t.override)return Zi.symbols.override;if(t.ref)return nw.build(t.ref);if(t.regex)return rn.regex(t.regex);if(t.special)return _r(["deep"].includes(t.special),"Unknown special value",t.special),Zi.symbols.deepDefault;if(t.value)return Tl(t.value)}if(t.type)return this.parse(t);if(t.template)return DP.build(t);let n={};for(let r in t)n[r]=this.build(t[r],{assign:r});return n}};rn.regex=function(t){let e=t.lastIndexOf("/"),n=t.slice(1,e),r=t.slice(e+1);return new RegExp(n,r)};rn.validate=function(t,e){lm=lm||yl(),t.assert(e,lm.description)}});var ka=g((zB,rw)=>{"use strict";var Tr=rm(),zt={mismatched:null};rw.exports=function(t,e,n){return n=Object.assign({prototype:!0},n),!!zt.isDeepEqual(t,e,n,[])};zt.isDeepEqual=function(t,e,n,r){if(t===e)return t!==0||1/t===1/e;let i=typeof t;if(i!==typeof e||t===null||e===null)return!1;if(i==="function"){if(!n.deepFunction||t.toString()!==e.toString())return!1}else if(i!=="object")return t!==t&&e!==e;let s=zt.getSharedType(t,e,!!n.prototype);switch(s){case Tr.buffer:return Buffer&&Buffer.prototype.equals.call(t,e);case Tr.promise:return t===e;case Tr.regex:return t.toString()===e.toString();case zt.mismatched:return!1}for(let o=r.length-1;o>=0;--o)if(r[o].isSame(t,e))return!0;r.push(new zt.SeenEntry(t,e));try{return!!zt.isDeepEqualObj(s,t,e,n,r)}finally{r.pop()}};zt.getSharedType=function(t,e,n){if(n)return Object.getPrototypeOf(t)!==Object.getPrototypeOf(e)?zt.mismatched:Tr.getInternalProto(t);let r=Tr.getInternalProto(t);return r!==Tr.getInternalProto(e)?zt.mismatched:r};zt.valueOf=function(t){let e=t.valueOf;if(e===void 0)return t;try{return e.call(t)}catch(n){return n}};zt.hasOwnEnumerableProperty=function(t,e){return Object.prototype.propertyIsEnumerable.call(t,e)};zt.isSetSimpleEqual=function(t,e){for(let n of Set.prototype.values.call(t))if(!Set.prototype.has.call(e,n))return!1;return!0};zt.isDeepEqualObj=function(t,e,n,r,i){let{isDeepEqual:s,valueOf:o,hasOwnEnumerableProperty:a}=zt,{keys:u,getOwnPropertySymbols:c}=Object;if(t===Tr.array)if(r.part){for(let _ of e)for(let E of n)if(s(_,E,r,i))return!0}else{if(e.length!==n.length)return!1;for(let _=0;_<e.length;++_)if(!s(e[_],n[_],r,i))return!1;return!0}else if(t===Tr.set){if(e.size!==n.size)return!1;if(!zt.isSetSimpleEqual(e,n)){let _=new Set(Set.prototype.values.call(n));for(let E of Set.prototype.values.call(e)){if(_.delete(E))continue;let L=!1;for(let M of _)if(s(E,M,r,i)){_.delete(M),L=!0;break}if(!L)return!1}}}else if(t===Tr.map){if(e.size!==n.size)return!1;for(let[_,E]of Map.prototype.entries.call(e))if(E===void 0&&!Map.prototype.has.call(n,_)||!s(E,Map.prototype.get.call(n,_),r,i))return!1}else if(t===Tr.error&&(e.name!==n.name||e.message!==n.message))return!1;let l=o(e),d=o(n);if((e!==l||n!==d)&&!s(l,d,r,i))return!1;let p=u(e);if(!r.part&&p.length!==u(n).length&&!r.skip)return!1;let b=0;for(let _ of p){if(r.skip&&r.skip.includes(_)){n[_]===void 0&&++b;continue}if(!a(n,_)||!s(e[_],n[_],r,i))return!1}if(!r.part&&p.length-b!==u(n).length)return!1;if(r.symbols!==!1){let _=c(e),E=new Set(c(n));for(let L of _){if(!r.skip||!r.skip.includes(L)){if(a(e,L)){if(!a(n,L)||!s(e[L],n[L],r,i))return!1}else if(a(n,L))return!1}E.delete(L)}for(let L of E)if(a(n,L))return!1}return!0};zt.SeenEntry=class{constructor(t,e){this.obj=t,this.ref=e}isSame(t,e){return this.obj===t&&this.ref===e}}});var sw=g(iw=>{"use strict";iw.location=function(t=0){let e=Error.prepareStackTrace;Error.prepareStackTrace=(i,s)=>s;let n={};Error.captureStackTrace(n,this);let r=n.stack[t+1];return Error.prepareStackTrace=e,{filename:r.getFileName(),line:r.getLineNumber()}}});var hm=g(pm=>{"use strict";var ow=ka(),aw=sw(),IP=Fr(),Xt={codes:{error:1,pass:2,full:3},labels:{0:"never used",1:"always error",2:"always pass"}};pm.setup=function(t){let e=function(){return t._tracer=t._tracer||new Xt.Tracer,t._tracer};t.trace=e,t[Symbol.for("@hapi/lab/coverage/initialize")]=e,t.untrace=()=>{t._tracer=null}};pm.location=function(t){return t.$_setFlag("_tracerLocation",aw.location(2))};Xt.Tracer=class{constructor(){this.name="Joi",this._schemas=new Map}_register(t){let e=this._schemas.get(t);if(e)return e.store;let n=new Xt.Store(t),{filename:r,line:i}=t._flags._tracerLocation||aw.location(5);return this._schemas.set(t,{filename:r,line:i,store:n}),n}_combine(t,e){for(let{store:n}of this._schemas.values())n._combine(t,e)}report(t){let e=[];for(let{filename:n,line:r,store:i}of this._schemas.values()){if(t&&t!==n)continue;let s=[],o=[];for(let[a,u]of i._sources.entries()){if(Xt.sub(u.paths,o))continue;if(!u.entry){s.push({status:"never reached",paths:[...u.paths]}),o.push(...u.paths);continue}for(let l of["valid","invalid"]){let d=a[`_${l}s`];if(!d)continue;let p=new Set(d._values),b=new Set(d._refs);for(let{value:_,ref:E}of u[l])p.delete(_),b.delete(E);(p.size||b.size)&&s.push({status:[...p,...[...b].map(_=>_.display)],rule:`${l}s`})}let c=a._rules.map(l=>l.name);for(let l of["default","failover"])a._flags[l]!==void 0&&c.push(l);for(let l of c){let d=Xt.labels[u.rule[l]||0];if(d){let p={rule:l,status:d};u.paths.size&&(p.paths=[...u.paths]),s.push(p)}}}s.length&&e.push({filename:n,line:r,missing:s,severity:"error",message:`Schema missing tests for ${s.map(Xt.message).join(", ")}`})}return e.length?e:null}};Xt.Store=class{constructor(t){this.active=!0,this._sources=new Map,this._combos=new Map,this._scan(t)}debug(t,e,n,r){t.mainstay.debug&&t.mainstay.debug.push({type:e,name:n,result:r,path:t.path})}entry(t,e){Xt.debug(e,{type:"entry"}),this._record(t,n=>{n.entry=!0})}filter(t,e,n,r){Xt.debug(e,{type:n,...r}),this._record(t,i=>{i[n].add(r)})}log(t,e,n,r,i){Xt.debug(e,{type:n,name:r,result:i==="full"?"pass":i}),this._record(t,s=>{s[n][r]=s[n][r]||0,s[n][r]|=Xt.codes[i]})}resolve(t,e,n){if(!t.mainstay.debug)return;let r={type:"resolve",ref:e.display,to:n,path:t.path};t.mainstay.debug.push(r)}value(t,e,n,r,i){if(!t.mainstay.debug||ow(n,r))return;let s={type:"value",by:e,from:n,to:r,path:t.path};i&&(s.name=i),t.mainstay.debug.push(s)}_record(t,e){let n=this._sources.get(t);if(n){e(n);return}let r=this._combos.get(t);for(let i of r)this._record(i,e)}_scan(t,e){let n=e||[],r=this._sources.get(t);r||(r={paths:new Set,entry:!1,rule:{},valid:new Set,invalid:new Set},this._sources.set(t,r)),n.length&&r.paths.add(n);let i=(s,o)=>{let a=Xt.id(s,o);this._scan(s,n.concat(a))};t.$_modify({each:i,ref:!1})}_combine(t,e){this._combos.set(t,e)}};Xt.message=function(t){return`${t.paths?IP.path(t.paths[0])+(t.rule?":":""):""}${t.rule||""} (${t.status})`};Xt.id=function(t,{source:e,name:n,path:r,key:i}){return t._flags.id?t._flags.id:i||(n=`@${n}`,e==="terms"?[n,r[Math.min(r.length-1,1)]]:n)};Xt.sub=function(t,e){for(let n of t)for(let r of e)if(ow(n.slice(0,r.length),r))return!0;return!1};Xt.debug=function(t,e){t.mainstay.debug&&(e.path=t.debug?[...t.path,t.debug]:t.path,t.mainstay.debug.push(e))}});var Sl=g((e5,lw)=>{"use strict";var gm=Ie(),uw=nn(),MP=im(),cw={};lw.exports=cw.merge=function(t,e,n){if(gm(t&&typeof t=="object","Invalid target value: must be an object"),gm(e==null||typeof e=="object","Invalid source value: must be null, undefined, or an object"),!e)return t;if(n=Object.assign({nullOverride:!0,mergeArrays:!0},n),Array.isArray(e)){gm(Array.isArray(t),"Cannot merge array onto an object"),n.mergeArrays||(t.length=0);for(let i=0;i<e.length;++i)t.push(uw(e[i],{symbols:n.symbols}));return t}let r=MP.keys(e,n);for(let i=0;i<r.length;++i){let s=r[i];if(s==="__proto__"||!Object.prototype.propertyIsEnumerable.call(e,s))continue;let o=e[s];if(o&&typeof o=="object"){if(t[s]===o)continue;!t[s]||typeof t[s]!="object"||Array.isArray(t[s])!==Array.isArray(o)||o instanceof Date||Buffer&&Buffer.isBuffer(o)||o instanceof RegExp?t[s]=uw(o,{symbols:n.symbols}):cw.merge(t[s],o,n)}else(o!=null||n.nullOverride)&&(t[s]=o)}return t}});var dw=g(kl=>{"use strict";var Ur=Ie(),mm=Qe(),LP=$r(),Sr={};kl.Ids=Sr.Ids=class{constructor(){this._byId=new Map,this._byKey=new Map,this._schemaChain=!1}clone(){let t=new Sr.Ids;return t._byId=new Map(this._byId),t._byKey=new Map(this._byKey),t._schemaChain=this._schemaChain,t}concat(t){t._schemaChain&&(this._schemaChain=!0);for(let[e,n]of t._byId.entries())Ur(!this._byKey.has(e),"Schema id conflicts with existing key:",e),this._byId.set(e,n);for(let[e,n]of t._byKey.entries())Ur(!this._byId.has(e),"Schema key conflicts with existing id:",e),this._byKey.set(e,n)}fork(t,e,n){let r=this._collect(t);r.push({schema:n});let i=r.shift(),s={id:i.id,schema:e(i.schema)};Ur(mm.isSchema(s.schema),"adjuster function failed to return a joi schema type");for(let o of r)s={id:o.id,schema:Sr.fork(o.schema,s.id,s.schema)};return s.schema}labels(t,e=[]){let n=t[0],r=this._get(n);if(!r)return[...e,...t].join(".");let i=t.slice(1);return e=[...e,r.schema._flags.label||n],i.length?r.schema._ids.labels(i,e):e.join(".")}reach(t,e=[]){let n=t[0],r=this._get(n);Ur(r,"Schema does not contain path",[...e,...t].join("."));let i=t.slice(1);return i.length?r.schema._ids.reach(i,[...e,n]):r.schema}register(t,{key:e}={}){if(!t||!mm.isSchema(t))return;(t.$_property("schemaChain")||t._ids._schemaChain)&&(this._schemaChain=!0);let n=t._flags.id;if(n){let r=this._byId.get(n);Ur(!r||r.schema===t,"Cannot add different schemas with the same id:",n),Ur(!this._byKey.has(n),"Schema id conflicts with existing key:",n),this._byId.set(n,{schema:t,id:n})}e&&(Ur(!this._byKey.has(e),"Schema already contains key:",e),Ur(!this._byId.has(e),"Schema key conflicts with existing id:",e),this._byKey.set(e,{schema:t,id:e}))}reset(){this._byId=new Map,this._byKey=new Map,this._schemaChain=!1}_collect(t,e=[],n=[]){let r=t[0],i=this._get(r);Ur(i,"Schema does not contain path",[...e,...t].join(".")),n=[i,...n];let s=t.slice(1);return s.length?i.schema._ids._collect(s,[...e,r],n):n}_get(t){return this._byId.get(t)||this._byKey.get(t)}};Sr.fork=function(t,e,n){let r=(s,{key:o})=>{if(e===(s._flags.id||o))return n},i=kl.schema(t,{each:r,ref:!1});return i?i.$_mutateRebuild():t};kl.schema=function(t,e){let n;for(let r in t._flags){if(r[0]==="_")continue;let i=Sr.scan(t._flags[r],{source:"flags",name:r},e);i!==void 0&&(n=n||t.clone(),n._flags[r]=i)}for(let r=0;r<t._rules.length;++r){let i=t._rules[r],s=Sr.scan(i.args,{source:"rules",name:i.name},e);if(s!==void 0){n=n||t.clone();let o=Object.assign({},i);o.args=s,n._rules[r]=o,n._singleRules.get(i.name)===i&&n._singleRules.set(i.name,o)}}for(let r in t.$_terms){if(r[0]==="_")continue;let i=Sr.scan(t.$_terms[r],{source:"terms",name:r},e);i!==void 0&&(n=n||t.clone(),n.$_terms[r]=i)}return n};Sr.scan=function(t,e,n,r,i){let s=r||[];if(t===null||typeof t!="object")return;let o;if(Array.isArray(t)){for(let a=0;a<t.length;++a){let u=e.source==="terms"&&e.name==="keys"&&t[a].key,c=Sr.scan(t[a],e,n,[a,...s],u);c!==void 0&&(o=o||t.slice(),o[a]=c)}return o}if(n.schema!==!1&&mm.isSchema(t)||n.ref!==!1&&LP.isRef(t)){let a=n.each(t,{...e,path:s,key:i});return a===t?void 0:a}for(let a in t){if(a[0]==="_")continue;let u=Sr.scan(t[a],e,n,[a,...s],i);u!==void 0&&(o=o||Object.assign({},t),o[a]=u)}return o}});var pw=g((r5,fw)=>{"use strict";fw.exports=function(){}});var mw=g((i5,gw)=>{"use strict";var NP=nn(),hw=Xi(),qP=Qe(),kr={value:Symbol("value")};gw.exports=kr.State=class{constructor(t,e,n){this.path=t,this.ancestors=e,this.mainstay=n.mainstay,this.schemas=n.schemas,this.debug=null}localize(t,e=null,n=null){let r=new kr.State(t,e,this);return n&&r.schemas&&(r.schemas=[kr.schemas(n),...r.schemas]),r}nest(t,e){let n=new kr.State(this.path,this.ancestors,this);return n.schemas=n.schemas&&[kr.schemas(t),...n.schemas],n.debug=e,n}shadow(t,e){this.mainstay.shadow=this.mainstay.shadow||new kr.Shadow,this.mainstay.shadow.set(this.path,t,e)}snapshot(){this.mainstay.shadow&&(this._snapshot=NP(this.mainstay.shadow.node(this.path))),this.mainstay.snapshot()}restore(){this.mainstay.shadow&&(this.mainstay.shadow.override(this.path,this._snapshot),this._snapshot=void 0),this.mainstay.restore()}commit(){this.mainstay.shadow&&(this.mainstay.shadow.override(this.path,this._snapshot),this._snapshot=void 0),this.mainstay.commit()}};kr.schemas=function(t){return qP.isSchema(t)?{schema:t}:t};kr.Shadow=class{constructor(){this._values=null}set(t,e,n){if(!t.length||n==="strip"&&typeof t[t.length-1]=="number")return;this._values=this._values||new Map;let r=this._values;for(let i=0;i<t.length;++i){let s=t[i],o=r.get(s);o||(o=new Map,r.set(s,o)),r=o}r[kr.value]=e}get(t){let e=this.node(t);if(e)return e[kr.value]}node(t){if(this._values)return hw(this._values,t,{iterables:!0})}override(t,e){if(!this._values)return;let n=t.slice(0,-1),r=t[t.length-1],i=hw(this._values,n,{iterables:!0});if(e){i.set(r,e);return}i&&i.delete(r)}}});var bw=g(wa=>{"use strict";var xa=Ie(),yw=nn(),ro=pw(),jP=Xi(),At=Qe(),Ti=Fr(),FP=mw(),Se={result:Symbol("result")};wa.entry=function(t,e,n){let r=At.defaults;n&&(xa(n.warnings===void 0,"Cannot override warnings preference in synchronous validation"),xa(n.artifacts===void 0,"Cannot override artifacts preference in synchronous validation"),r=At.preferences(At.defaults,n));let i=Se.entry(t,e,r);xa(!i.mainstay.externals.length,"Schema with external rules must use validateAsync()");let s={value:i.value};return i.error&&(s.error=i.error),i.mainstay.warnings.length&&(s.warning=Ti.details(i.mainstay.warnings)),i.mainstay.debug&&(s.debug=i.mainstay.debug),i.mainstay.artifacts&&(s.artifacts=i.mainstay.artifacts),s};wa.entryAsync=async function(t,e,n){let r=At.defaults;n&&(r=At.preferences(At.defaults,n));let i=Se.entry(t,e,r),s=i.mainstay;if(i.error)throw s.debug&&(i.error.debug=s.debug),i.error;if(s.externals.length){let a=i.value,u=[];for(let c of s.externals){let l=c.state.path,d=c.schema.type==="link"?s.links.get(c.schema):null,p=a,b,_,E=l.length?[a]:[],L=l.length?jP(t,l):t;if(l.length){b=l[l.length-1];let M=a;for(let x of l.slice(0,-1))M=M[x],E.unshift(M);_=E[0],p=_[b]}try{let M=(k,v)=>(d||c.schema).$_createError(k,p,v,c.state,r),x=await c.method(p,{schema:c.schema,linked:d,state:c.state,prefs:n,original:L,error:M,errorsArray:Se.errorsArray,warn:(k,v)=>s.warnings.push((d||c.schema).$_createError(k,p,v,c.state,r)),message:(k,v)=>(d||c.schema).$_createError("external",p,v,c.state,r,{messages:k})});if(x===void 0||x===p)continue;if(x instanceof Ti.Report){if(s.tracer.log(c.schema,c.state,"rule","external","error"),u.push(x),r.abortEarly)break;continue}if(Array.isArray(x)&&x[At.symbols.errors]){if(s.tracer.log(c.schema,c.state,"rule","external","error"),u.push(...x),r.abortEarly)break;continue}_?(s.tracer.value(c.state,"rule",p,x,"external"),_[b]=x):(s.tracer.value(c.state,"rule",a,x,"external"),a=x)}catch(M){throw r.errors.label&&(M.message+=` (${c.label})`),M}}if(i.value=a,u.length)throw i.error=Ti.process(u,t,r),s.debug&&(i.error.debug=s.debug),i.error}if(!r.warnings&&!r.debug&&!r.artifacts)return i.value;let o={value:i.value};return s.warnings.length&&(o.warning=Ti.details(s.warnings)),s.debug&&(o.debug=s.debug),s.artifacts&&(o.artifacts=s.artifacts),o};Se.Mainstay=class{constructor(t,e,n){this.externals=[],this.warnings=[],this.tracer=t,this.debug=e,this.links=n,this.shadow=null,this.artifacts=null,this._snapshots=[]}snapshot(){this._snapshots.push({externals:this.externals.slice(),warnings:this.warnings.slice()})}restore(){let t=this._snapshots.pop();this.externals=t.externals,this.warnings=t.warnings}commit(){this._snapshots.pop()}};Se.entry=function(t,e,n){let{tracer:r,cleanup:i}=Se.tracer(e,n),s=n.debug?[]:null,o=e._ids._schemaChain?new Map:null,a=new Se.Mainstay(r,s,o),u=e._ids._schemaChain?[{schema:e}]:null,c=new FP([],[],{mainstay:a,schemas:u}),l=wa.validate(t,e,c,n);i&&e.$_root.untrace();let d=Ti.process(l.errors,t,n);return{value:l.value,error:d,mainstay:a}};Se.tracer=function(t,e){return t.$_root._tracer?{tracer:t.$_root._tracer._register(t)}:e.debug?(xa(t.$_root.trace,"Debug mode not supported"),{tracer:t.$_root.trace()._register(t),cleanup:!0}):{tracer:Se.ignore}};wa.validate=function(t,e,n,r,i={}){if(e.$_terms.whens&&(e=e._generate(t,n,r).schema),e._preferences&&(r=Se.prefs(e,r)),e._cache&&r.cache){let d=e._cache.get(t);if(n.mainstay.tracer.debug(n,"validate","cached",!!d),d)return d}let s=(d,p,b)=>e.$_createError(d,t,p,b||n,r),o={original:t,prefs:r,schema:e,state:n,error:s,errorsArray:Se.errorsArray,warn:(d,p,b)=>n.mainstay.warnings.push(s(d,p,b)),message:(d,p)=>e.$_createError("custom",t,p,n,r,{messages:d})};n.mainstay.tracer.entry(e,n);let a=e._definition;if(a.prepare&&t!==void 0&&r.convert){let d=a.prepare(t,o);if(d){if(n.mainstay.tracer.value(n,"prepare",t,d.value),d.errors)return Se.finalize(d.value,[].concat(d.errors),o);t=d.value}}if(a.coerce&&t!==void 0&&r.convert&&(!a.coerce.from||a.coerce.from.includes(typeof t))){let d=a.coerce.method(t,o);if(d){if(n.mainstay.tracer.value(n,"coerced",t,d.value),d.errors)return Se.finalize(d.value,[].concat(d.errors),o);t=d.value}}let u=e._flags.empty;u&&u.$_match(Se.trim(t,e),n.nest(u),At.defaults)&&(n.mainstay.tracer.value(n,"empty",t,void 0),t=void 0);let c=i.presence||e._flags.presence||(e._flags._endedSwitch?null:r.presence);if(t===void 0){if(c==="forbidden")return Se.finalize(t,null,o);if(c==="required")return Se.finalize(t,[e.$_createError("any.required",t,null,n,r)],o);if(c==="optional"){if(e._flags.default!==At.symbols.deepDefault)return Se.finalize(t,null,o);n.mainstay.tracer.value(n,"default",t,{}),t={}}}else if(c==="forbidden")return Se.finalize(t,[e.$_createError("any.unknown",t,null,n,r)],o);let l=[];if(e._valids){let d=e._valids.get(t,n,r,e._flags.insensitive);if(d)return r.convert&&(n.mainstay.tracer.value(n,"valids",t,d.value),t=d.value),n.mainstay.tracer.filter(e,n,"valid",d),Se.finalize(t,null,o);if(e._flags.only){let p=e.$_createError("any.only",t,{valids:e._valids.values({display:!0})},n,r);if(r.abortEarly)return Se.finalize(t,[p],o);l.push(p)}}if(e._invalids){let d=e._invalids.get(t,n,r,e._flags.insensitive);if(d){n.mainstay.tracer.filter(e,n,"invalid",d);let p=e.$_createError("any.invalid",t,{invalids:e._invalids.values({display:!0})},n,r);if(r.abortEarly)return Se.finalize(t,[p],o);l.push(p)}}if(a.validate){let d=a.validate(t,o);if(d&&(n.mainstay.tracer.value(n,"base",t,d.value),t=d.value,d.errors)){if(!Array.isArray(d.errors))return l.push(d.errors),Se.finalize(t,l,o);if(d.errors.length)return l.push(...d.errors),Se.finalize(t,l,o)}}return e._rules.length?Se.rules(t,l,o):Se.finalize(t,l,o)};Se.rules=function(t,e,n){let{schema:r,state:i,prefs:s}=n;for(let o of r._rules){let a=r._definition.rules[o.method];if(a.convert&&s.convert){i.mainstay.tracer.log(r,i,"rule",o.name,"full");continue}let u,c=o.args;if(o._resolve.length){c=Object.assign({},c);for(let d of o._resolve){let p=a.argsByName.get(d),b=c[d].resolve(t,i,s),_=p.normalize?p.normalize(b):b,E=At.validateArg(_,null,p);if(E){u=r.$_createError("any.ref",b,{arg:d,ref:c[d],reason:E},i,s);break}c[d]=_}}u=u||a.validate(t,n,c,o);let l=Se.rule(u,o);if(l.errors){if(i.mainstay.tracer.log(r,i,"rule",o.name,"error"),o.warn){i.mainstay.warnings.push(...l.errors);continue}if(s.abortEarly)return Se.finalize(t,l.errors,n);e.push(...l.errors)}else i.mainstay.tracer.log(r,i,"rule",o.name,"pass"),i.mainstay.tracer.value(i,"rule",t,l.value,o.name),t=l.value}return Se.finalize(t,e,n)};Se.rule=function(t,e){return t instanceof Ti.Report?(Se.error(t,e),{errors:[t],value:null}):Array.isArray(t)&&t[At.symbols.errors]?(t.forEach(n=>Se.error(n,e)),{errors:t,value:null}):{errors:null,value:t}};Se.error=function(t,e){return e.message&&t._setTemplate(e.message),t};Se.finalize=function(t,e,n){e=e||[];let{schema:r,state:i,prefs:s}=n;if(e.length){let a=Se.default("failover",void 0,e,n);a!==void 0&&(i.mainstay.tracer.value(i,"failover",t,a),t=a,e=[])}if(e.length&&r._flags.error)if(typeof r._flags.error=="function"){e=r._flags.error(e),Array.isArray(e)||(e=[e]);for(let a of e)xa(a instanceof Error||a instanceof Ti.Report,"error() must return an Error object")}else e=[r._flags.error];if(t===void 0){let a=Se.default("default",t,e,n);i.mainstay.tracer.value(i,"default",t,a),t=a}if(r._flags.cast&&t!==void 0){let a=r._definition.cast[r._flags.cast];if(a.from(t)){let u=a.to(t,n);i.mainstay.tracer.value(i,"cast",t,u,r._flags.cast),t=u}}if(r.$_terms.externals&&s.externals&&s._externals!==!1)for(let{method:a}of r.$_terms.externals)i.mainstay.externals.push({method:a,schema:r,state:i,label:Ti.label(r._flags,i,s)});let o={value:t,errors:e.length?e:null};return r._flags.result&&(o.value=r._flags.result==="strip"?void 0:n.original,i.mainstay.tracer.value(i,r._flags.result,t,o.value),i.shadow(t,r._flags.result)),r._cache&&s.cache!==!1&&!r._refs.length&&r._cache.set(n.original,o),t!==void 0&&!o.errors&&r._flags.artifact!==void 0&&(i.mainstay.artifacts=i.mainstay.artifacts||new Map,i.mainstay.artifacts.has(r._flags.artifact)||i.mainstay.artifacts.set(r._flags.artifact,[]),i.mainstay.artifacts.get(r._flags.artifact).push(i.path)),o};Se.prefs=function(t,e){let n=e===At.defaults;return n&&t._preferences[At.symbols.prefs]?t._preferences[At.symbols.prefs]:(e=At.preferences(e,t._preferences),n&&(t._preferences[At.symbols.prefs]=e),e)};Se.default=function(t,e,n,r){let{schema:i,state:s,prefs:o}=r,a=i._flags[t];if(o.noDefaults||a===void 0)return e;if(s.mainstay.tracer.log(i,s,"rule",t,"full"),!a)return a;if(typeof a=="function"){let u=a.length?[yw(s.ancestors[0]),r]:[];try{return a(...u)}catch(c){n.push(i.$_createError(`any.${t}`,null,{error:c},s,o));return}}return typeof a!="object"?a:a[At.symbols.literal]?a.literal:At.isResolvable(a)?a.resolve(e,s,o):yw(a)};Se.trim=function(t,e){if(typeof t!="string")return t;let n=e.$_getRule("trim");return!n||!n.args.enabled?t:t.trim()};Se.ignore={active:!1,debug:ro,entry:ro,filter:ro,log:ro,resolve:ro,value:ro};Se.errorsArray=function(){let t=[];return t[At.symbols.errors]=!0,t}});var bm=g((c5,_w)=>{"use strict";var $P=Ie(),vw=ka(),ym=Qe(),Hr={};_w.exports=Hr.Values=class{constructor(t,e){this._values=new Set(t),this._refs=new Set(e),this._lowercase=Hr.lowercases(t),this._override=!1}get length(){return this._values.size+this._refs.size}add(t,e){if(ym.isResolvable(t)){this._refs.has(t)||(this._refs.add(t),e&&e.register(t));return}this.has(t,null,null,!1)||(this._values.add(t),typeof t=="string"&&this._lowercase.set(t.toLowerCase(),t))}static merge(t,e,n){if(t=t||new Hr.Values,e){if(e._override)return e.clone();for(let r of[...e._values,...e._refs])t.add(r)}if(n)for(let r of[...n._values,...n._refs])t.remove(r);return t.length?t:null}remove(t){if(ym.isResolvable(t)){this._refs.delete(t);return}this._values.delete(t),typeof t=="string"&&this._lowercase.delete(t.toLowerCase())}has(t,e,n,r){return!!this.get(t,e,n,r)}get(t,e,n,r){if(!this.length)return!1;if(this._values.has(t))return{value:t};if(typeof t=="string"&&t&&r){let i=this._lowercase.get(t.toLowerCase());if(i)return{value:i}}if(!this._refs.size&&typeof t!="object")return!1;if(typeof t=="object"){for(let i of this._values)if(vw(i,t))return{value:i}}if(e)for(let i of this._refs){let s=i.resolve(t,e,n,null,{in:!0});if(s===void 0)continue;let o=!i.in||typeof s!="object"?[s]:Array.isArray(s)?s:Object.keys(s);for(let a of o)if(typeof a==typeof t){if(r&&t&&typeof t=="string"){if(a.toLowerCase()===t.toLowerCase())return{value:a,ref:i}}else if(vw(a,t))return{value:a,ref:i}}}return!1}override(){this._override=!0}values(t){if(t&&t.display){let e=[];for(let n of[...this._values,...this._refs])n!==void 0&&e.push(n);return e}return Array.from([...this._values,...this._refs])}clone(){let t=new Hr.Values(this._values,this._refs);return t._override=this._override,t}concat(t){$P(!t._override,"Cannot concat override set of values");let e=new Hr.Values([...this._values,...t._values],[...this._refs,...t._refs]);return e._override=this._override,e}describe(){let t=[];this._override&&t.push({override:!0});for(let e of this._values.values())t.push(e&&typeof e=="object"?{value:e}:e);for(let e of this._refs.values())t.push(e.describe());return t}};Hr.Values.prototype[ym.symbols.values]=!0;Hr.Values.prototype.slice=Hr.Values.prototype.clone;Hr.lowercases=function(t){let e=new Map;if(t)for(let n of t)typeof n=="string"&&e.set(n.toLowerCase(),n);return e}});var Ow=g((d5,Aw)=>{"use strict";var ne=Ie(),Tw=nn(),Sw=ka(),vm=Sl(),BP=um(),bt=Qe(),_m=Qi(),UP=Fr(),HP=cm(),kw=fm(),WP=eo(),xw=dw(),ww=$r(),Ew=hm(),xl=bw(),wl=bm(),Lt={};Lt.Base=class{constructor(t){this.type=t,this.$_root=null,this._definition={},this._reset()}_reset(){this._ids=new xw.Ids,this._preferences=null,this._refs=new ww.Manager,this._cache=null,this._valids=null,this._invalids=null,this._flags={},this._rules=[],this._singleRules=new Map,this.$_terms={},this.$_temp={ruleset:null,whens:{}}}describe(){return ne(typeof kw.describe=="function","Manifest functionality disabled"),kw.describe(this)}allow(...t){return bt.verifyFlat(t,"allow"),this._values(t,"_valids")}alter(t){ne(t&&typeof t=="object"&&!Array.isArray(t),"Invalid targets argument"),ne(!this._inRuleset(),"Cannot set alterations inside a ruleset");let e=this.clone();e.$_terms.alterations=e.$_terms.alterations||[];for(let n in t){let r=t[n];ne(typeof r=="function","Alteration adjuster for",n,"must be a function"),e.$_terms.alterations.push({target:n,adjuster:r})}return e.$_temp.ruleset=!1,e}artifact(t){return ne(t!==void 0,"Artifact cannot be undefined"),ne(!this._cache,"Cannot set an artifact with a rule cache"),this.$_setFlag("artifact",t)}cast(t){return ne(t===!1||typeof t=="string","Invalid to value"),ne(t===!1||this._definition.cast[t],"Type",this.type,"does not support casting to",t),this.$_setFlag("cast",t===!1?void 0:t)}default(t,e){return this._default("default",t,e)}description(t){return ne(t&&typeof t=="string","Description must be a non-empty string"),this.$_setFlag("description",t)}empty(t){let e=this.clone();return t!==void 0&&(t=e.$_compile(t,{override:!1})),e.$_setFlag("empty",t,{clone:!1})}error(t){return ne(t,"Missing error"),ne(t instanceof Error||typeof t=="function","Must provide a valid Error object or a function"),this.$_setFlag("error",t)}example(t,e={}){return ne(t!==void 0,"Missing example"),bt.assertOptions(e,["override"]),this._inner("examples",t,{single:!0,override:e.override})}external(t,e){return typeof t=="object"&&(ne(!e,"Cannot combine options with description"),e=t.description,t=t.method),ne(typeof t=="function","Method must be a function"),ne(e===void 0||e&&typeof e=="string","Description must be a non-empty string"),this._inner("externals",{method:t,description:e},{single:!0})}failover(t,e){return this._default("failover",t,e)}forbidden(){return this.presence("forbidden")}id(t){return t?(ne(typeof t=="string","id must be a non-empty string"),ne(/^[^\.]+$/.test(t),"id cannot contain period character"),this.$_setFlag("id",t)):this.$_setFlag("id",void 0)}invalid(...t){return this._values(t,"_invalids")}label(t){return ne(t&&typeof t=="string","Label name must be a non-empty string"),this.$_setFlag("label",t)}meta(t){return ne(t!==void 0,"Meta cannot be undefined"),this._inner("metas",t,{single:!0})}note(...t){ne(t.length,"Missing notes");for(let e of t)ne(e&&typeof e=="string","Notes must be non-empty strings");return this._inner("notes",t)}only(t=!0){return ne(typeof t=="boolean","Invalid mode:",t),this.$_setFlag("only",t)}optional(){return this.presence("optional")}prefs(t){ne(t,"Missing preferences"),ne(t.context===void 0,"Cannot override context"),ne(t.externals===void 0,"Cannot override externals"),ne(t.warnings===void 0,"Cannot override warnings"),ne(t.debug===void 0,"Cannot override debug"),bt.checkPreferences(t);let e=this.clone();return e._preferences=bt.preferences(e._preferences,t),e}presence(t){return ne(["optional","required","forbidden"].includes(t),"Unknown presence mode",t),this.$_setFlag("presence",t)}raw(t=!0){return this.$_setFlag("result",t?"raw":void 0)}result(t){return ne(["raw","strip"].includes(t),"Unknown result mode",t),this.$_setFlag("result",t)}required(){return this.presence("required")}strict(t){let e=this.clone(),n=t===void 0?!1:!t;return e._preferences=bt.preferences(e._preferences,{convert:n}),e}strip(t=!0){return this.$_setFlag("result",t?"strip":void 0)}tag(...t){ne(t.length,"Missing tags");for(let e of t)ne(e&&typeof e=="string","Tags must be non-empty strings");return this._inner("tags",t)}unit(t){return ne(t&&typeof t=="string","Unit name must be a non-empty string"),this.$_setFlag("unit",t)}valid(...t){bt.verifyFlat(t,"valid");let e=this.allow(...t);return e.$_setFlag("only",!!e._valids,{clone:!1}),e}when(t,e){let n=this.clone();n.$_terms.whens||(n.$_terms.whens=[]);let r=_m.when(n,t,e);if(!["any","link"].includes(n.type)){let i=r.is?[r]:r.switch;for(let s of i)ne(!s.then||s.then.type==="any"||s.then.type===n.type,"Cannot combine",n.type,"with",s.then&&s.then.type),ne(!s.otherwise||s.otherwise.type==="any"||s.otherwise.type===n.type,"Cannot combine",n.type,"with",s.otherwise&&s.otherwise.type)}return n.$_terms.whens.push(r),n.$_mutateRebuild()}cache(t){ne(!this._inRuleset(),"Cannot set caching inside a ruleset"),ne(!this._cache,"Cannot override schema cache"),ne(this._flags.artifact===void 0,"Cannot cache a rule with an artifact");let e=this.clone();return e._cache=t||BP.provider.provision(),e.$_temp.ruleset=!1,e}clone(){let t=Object.create(Object.getPrototypeOf(this));return this._assign(t)}concat(t){ne(bt.isSchema(t),"Invalid schema object"),ne(this.type==="any"||t.type==="any"||t.type===this.type,"Cannot merge type",this.type,"with another type:",t.type),ne(!this._inRuleset(),"Cannot concatenate onto a schema with open ruleset"),ne(!t._inRuleset(),"Cannot concatenate a schema with open ruleset");let e=this.clone();if(this.type==="any"&&t.type!=="any"){let n=t.clone();for(let r of Object.keys(e))r!=="type"&&(n[r]=e[r]);e=n}e._ids.concat(t._ids),e._refs.register(t,ww.toSibling),e._preferences=e._preferences?bt.preferences(e._preferences,t._preferences):t._preferences,e._valids=wl.merge(e._valids,t._valids,t._invalids),e._invalids=wl.merge(e._invalids,t._invalids,t._valids);for(let n of t._singleRules.keys())e._singleRules.has(n)&&(e._rules=e._rules.filter(r=>r.keep||r.name!==n),e._singleRules.delete(n));for(let n of t._rules)t._definition.rules[n.method].multi||e._singleRules.set(n.name,n),e._rules.push(n);if(e._flags.empty&&t._flags.empty){e._flags.empty=e._flags.empty.concat(t._flags.empty);let n=Object.assign({},t._flags);delete n.empty,vm(e._flags,n)}else if(t._flags.empty){e._flags.empty=t._flags.empty;let n=Object.assign({},t._flags);delete n.empty,vm(e._flags,n)}else vm(e._flags,t._flags);for(let n in t.$_terms){let r=t.$_terms[n];if(!r){e.$_terms[n]||(e.$_terms[n]=r);continue}if(!e.$_terms[n]){e.$_terms[n]=r.slice();continue}e.$_terms[n]=e.$_terms[n].concat(r)}return this.$_root._tracer&&this.$_root._tracer._combine(e,[this,t]),e.$_mutateRebuild()}extend(t){return ne(!t.base,"Cannot extend type with another base"),HP.type(this,t)}extract(t){return t=Array.isArray(t)?t:t.split("."),this._ids.reach(t)}fork(t,e){ne(!this._inRuleset(),"Cannot fork inside a ruleset");let n=this;for(let r of[].concat(t))r=Array.isArray(r)?r:r.split("."),n=n._ids.fork(r,e,n);return n.$_temp.ruleset=!1,n}rule(t){let e=this._definition;bt.assertOptions(t,Object.keys(e.modifiers)),ne(this.$_temp.ruleset!==!1,"Cannot apply rules to empty ruleset or the last rule added does not support rule properties");let n=this.$_temp.ruleset===null?this._rules.length-1:this.$_temp.ruleset;ne(n>=0&&n<this._rules.length,"Cannot apply rules to empty ruleset");let r=this.clone();for(let i=n;i<r._rules.length;++i){let s=r._rules[i],o=Tw(s);for(let a in t)e.modifiers[a](o,t[a]),ne(o.name===s.name,"Cannot change rule name");r._rules[i]=o,r._singleRules.get(o.name)===s&&r._singleRules.set(o.name,o)}return r.$_temp.ruleset=!1,r.$_mutateRebuild()}get ruleset(){ne(!this._inRuleset(),"Cannot start a new ruleset without closing the previous one");let t=this.clone();return t.$_temp.ruleset=t._rules.length,t}get $(){return this.ruleset}tailor(t){t=[].concat(t),ne(!this._inRuleset(),"Cannot tailor inside a ruleset");let e=this;if(this.$_terms.alterations)for(let{target:n,adjuster:r}of this.$_terms.alterations)t.includes(n)&&(e=r(e),ne(bt.isSchema(e),"Alteration adjuster for",n,"failed to return a schema object"));return e=e.$_modify({each:n=>n.tailor(t),ref:!1}),e.$_temp.ruleset=!1,e.$_mutateRebuild()}tracer(){return Ew.location?Ew.location(this):this}validate(t,e){return xl.entry(t,this,e)}validateAsync(t,e){return xl.entryAsync(t,this,e)}$_addRule(t){typeof t=="string"&&(t={name:t}),ne(t&&typeof t=="object","Invalid options"),ne(t.name&&typeof t.name=="string","Invalid rule name");for(let s in t)ne(s[0]!=="_","Cannot set private rule properties");let e=Object.assign({},t);e._resolve=[],e.method=e.method||e.name;let n=this._definition.rules[e.method],r=e.args;ne(n,"Unknown rule",e.method);let i=this.clone();if(r){ne(Object.keys(r).length===1||Object.keys(r).length===this._definition.rules[e.name].args.length,"Invalid rule definition for",this.type,e.name);for(let s in r){let o=r[s];if(n.argsByName){let a=n.argsByName.get(s);if(a.ref&&bt.isResolvable(o))e._resolve.push(s),i.$_mutateRegister(o);else if(a.normalize&&(o=a.normalize(o),r[s]=o),a.assert){let u=bt.validateArg(o,s,a);ne(!u,u,"or reference")}}if(o===void 0){delete r[s];continue}r[s]=o}}return n.multi||(i._ruleRemove(e.name,{clone:!1}),i._singleRules.set(e.name,e)),i.$_temp.ruleset===!1&&(i.$_temp.ruleset=null),n.priority?i._rules.unshift(e):i._rules.push(e),i}$_compile(t,e){return _m.schema(this.$_root,t,e)}$_createError(t,e,n,r,i,s={}){let o=s.flags!==!1?this._flags:{},a=s.messages?WP.merge(this._definition.messages,s.messages):this._definition.messages;return new UP.Report(t,e,n,o,a,r,i)}$_getFlag(t){return this._flags[t]}$_getRule(t){return this._singleRules.get(t)}$_mapLabels(t){return t=Array.isArray(t)?t:t.split("."),this._ids.labels(t)}$_match(t,e,n,r){n=Object.assign({},n),n.abortEarly=!0,n._externals=!1,e.snapshot();let i=!xl.validate(t,this,e,n,r).errors;return e.restore(),i}$_modify(t){return bt.assertOptions(t,["each","once","ref","schema"]),xw.schema(this,t)||this}$_mutateRebuild(){ne(!this._inRuleset(),"Cannot add this rule inside a ruleset"),this._refs.reset(),this._ids.reset();let t=(e,{source:n,name:r,path:i,key:s})=>{let o=this._definition[n][r]&&this._definition[n][r].register;o!==!1&&this.$_mutateRegister(e,{family:o,key:s})};return this.$_modify({each:t}),this._definition.rebuild&&this._definition.rebuild(this),this.$_temp.ruleset=!1,this}$_mutateRegister(t,{family:e,key:n}={}){this._refs.register(t,e),this._ids.register(t,{key:n})}$_property(t){return this._definition.properties[t]}$_reach(t){return this._ids.reach(t)}$_rootReferences(){return this._refs.roots()}$_setFlag(t,e,n={}){ne(t[0]==="_"||!this._inRuleset(),"Cannot set flag inside a ruleset");let r=this._definition.flags[t]||{};if(Sw(e,r.default)&&(e=void 0),Sw(e,this._flags[t]))return this;let i=n.clone!==!1?this.clone():this;return e!==void 0?(i._flags[t]=e,i.$_mutateRegister(e)):delete i._flags[t],t[0]!=="_"&&(i.$_temp.ruleset=!1),i}$_parent(t,...e){return this[t][bt.symbols.parent].call(this,...e)}$_validate(t,e,n){return xl.validate(t,this,e,n)}_assign(t){t.type=this.type,t.$_root=this.$_root,t.$_temp=Object.assign({},this.$_temp),t.$_temp.whens={},t._ids=this._ids.clone(),t._preferences=this._preferences,t._valids=this._valids&&this._valids.clone(),t._invalids=this._invalids&&this._invalids.clone(),t._rules=this._rules.slice(),t._singleRules=Tw(this._singleRules,{shallow:!0}),t._refs=this._refs.clone(),t._flags=Object.assign({},this._flags),t._cache=null,t.$_terms={};for(let e in this.$_terms)t.$_terms[e]=this.$_terms[e]?this.$_terms[e].slice():null;t.$_super={};for(let e in this.$_super)t.$_super[e]=this._super[e].bind(t);return t}_bare(){let t=this.clone();t._reset();let e=t._definition.terms;for(let n in e){let r=e[n];t.$_terms[n]=r.init}return t.$_mutateRebuild()}_default(t,e,n={}){return bt.assertOptions(n,"literal"),ne(e!==void 0,"Missing",t,"value"),ne(typeof e=="function"||!n.literal,"Only function value supports literal option"),typeof e=="function"&&n.literal&&(e={[bt.symbols.literal]:!0,literal:e}),this.$_setFlag(t,e)}_generate(t,e,n){if(!this.$_terms.whens)return{schema:this};let r=[],i=[];for(let a=0;a<this.$_terms.whens.length;++a){let u=this.$_terms.whens[a];if(u.concat){r.push(u.concat),i.push(`${a}.concat`);continue}let c=u.ref?u.ref.resolve(t,e,n):t,l=u.is?[u]:u.switch,d=i.length;for(let p=0;p<l.length;++p){let{is:b,then:_,otherwise:E}=l[p],L=`${a}${u.switch?"."+p:""}`;if(b.$_match(c,e.nest(b,`${L}.is`),n)){if(_){let M=e.localize([...e.path,`${L}.then`],e.ancestors,e.schemas),{schema:x,id:k}=_._generate(t,M,n);r.push(x),i.push(`${L}.then${k?`(${k})`:""}`);break}}else if(E){let M=e.localize([...e.path,`${L}.otherwise`],e.ancestors,e.schemas),{schema:x,id:k}=E._generate(t,M,n);r.push(x),i.push(`${L}.otherwise${k?`(${k})`:""}`);break}}if(u.break&&i.length>d)break}let s=i.join(", ");if(e.mainstay.tracer.debug(e,"rule","when",s),!s)return{schema:this};if(!e.mainstay.tracer.active&&this.$_temp.whens[s])return{schema:this.$_temp.whens[s],id:s};let o=this;this._definition.generate&&(o=this._definition.generate(this,t,e,n));for(let a of r)o=o.concat(a);return this.$_root._tracer&&this.$_root._tracer._combine(o,[this,...r]),this.$_temp.whens[s]=o,{schema:o,id:s}}_inner(t,e,n={}){ne(!this._inRuleset(),`Cannot set ${t} inside a ruleset`);let r=this.clone();return(!r.$_terms[t]||n.override)&&(r.$_terms[t]=[]),n.single?r.$_terms[t].push(e):r.$_terms[t].push(...e),r.$_temp.ruleset=!1,r}_inRuleset(){return this.$_temp.ruleset!==null&&this.$_temp.ruleset!==!1}_ruleRemove(t,e={}){if(!this._singleRules.has(t))return this;let n=e.clone!==!1?this.clone():this;n._singleRules.delete(t);let r=[];for(let i=0;i<n._rules.length;++i){let s=n._rules[i];if(s.name===t&&!s.keep){n._inRuleset()&&i<n.$_temp.ruleset&&--n.$_temp.ruleset;continue}r.push(s)}return n._rules=r,n}_values(t,e){bt.verifyFlat(t,e.slice(1,-1));let n=this.clone(),r=t[0]===bt.symbols.override;if(r&&(t=t.slice(1)),!n[e]&&t.length?n[e]=new wl:r&&(n[e]=t.length?new wl:null,n.$_mutateRebuild()),!n[e])return n;r&&n[e].override();for(let i of t){ne(i!==void 0,"Cannot call allow/valid/invalid with undefined"),ne(i!==bt.symbols.override,"Override must be the first value");let s=e==="_invalids"?"_valids":"_invalids";n[s]&&(n[s].remove(i),n[s].length||(ne(e==="_valids"||!n._flags.only,"Setting invalid value",i,"leaves schema rejecting all values due to previous valid rule"),n[s]=null)),n[e].add(i,n._refs)}return n}};Lt.Base.prototype[bt.symbols.any]={version:bt.version,compile:_m.compile,root:"$_root"};Lt.Base.prototype.isImmutable=!0;Lt.Base.prototype.deny=Lt.Base.prototype.invalid;Lt.Base.prototype.disallow=Lt.Base.prototype.invalid;Lt.Base.prototype.equal=Lt.Base.prototype.valid;Lt.Base.prototype.exist=Lt.Base.prototype.required;Lt.Base.prototype.not=Lt.Base.prototype.invalid;Lt.Base.prototype.options=Lt.Base.prototype.prefs;Lt.Base.prototype.preferences=Lt.Base.prototype.prefs;Aw.exports=new Lt.Base});var Bn=g((p5,Cw)=>{"use strict";var El=Ie(),GP=Ow(),KP=Qe(),VP=eo();Cw.exports=GP.extend({type:"any",flags:{only:{default:!1}},terms:{alterations:{init:null},examples:{init:null},externals:{init:null},metas:{init:[]},notes:{init:[]},shared:{init:null},tags:{init:[]},whens:{init:null}},rules:{custom:{method(t,e){return El(typeof t=="function","Method must be a function"),El(e===void 0||e&&typeof e=="string","Description must be a non-empty string"),this.$_addRule({name:"custom",args:{method:t,description:e}})},validate(t,e,{method:n}){try{return n(t,e)}catch(r){return e.error("any.custom",{error:r})}},args:["method","description"],multi:!0},messages:{method(t){return this.prefs({messages:t})}},shared:{method(t){El(KP.isSchema(t)&&t._flags.id,"Schema must be a schema with an id");let e=this.clone();return e.$_terms.shared=e.$_terms.shared||[],e.$_terms.shared.push(t),e.$_mutateRegister(t),e}},warning:{method(t,e){return El(t&&typeof t=="string","Invalid warning code"),this.$_addRule({name:"warning",args:{code:t,local:e},warn:!0})},validate(t,e,{code:n,local:r}){return e.error(n,r)},args:["code","local"],multi:!0}},modifiers:{keep(t,e=!0){t.keep=e},message(t,e){t.message=VP.compile(e)},warn(t,e=!0){t.warn=e}},manifest:{build(t,e){for(let n in e){let r=e[n];if(["examples","externals","metas","notes","tags"].includes(n)){for(let i of r)t=t[n.slice(0,-1)](i);continue}if(n==="alterations"){let i={};for(let{target:s,adjuster:o}of r)i[s]=o;t=t.alter(i);continue}if(n==="whens"){for(let i of r){let{ref:s,is:o,not:a,then:u,otherwise:c,concat:l}=i;l?t=t.concat(l):s?t=t.when(s,{is:o,not:a,then:u,otherwise:c,switch:i.switch,break:i.break}):t=t.when(o,{then:u,otherwise:c,break:i.break})}continue}if(n==="shared")for(let i of r)t=t.shared(i)}return t}},messages:{"any.custom":"{{#label}} failed custom validation because {{#error.message}}","any.default":"{{#label}} threw an error when running default method","any.failover":"{{#label}} threw an error when running failover method","any.invalid":"{{#label}} contains an invalid value","any.only":'{{#label}} must be {if(#valids.length == 1, "", "one of ")}{{#valids}}',"any.ref":"{{#label}} {{#arg}} references {{:#ref}} which {{#reason}}","any.required":"{{#label}} is required","any.unknown":"{{#label}} is not allowed"}})});var Dw=g((h5,Pw)=>{"use strict";var es=Ie(),zP=Sl(),XP=Bn(),Rw=Qe(),YP=Qi(),Al=Fr(),JP=$r(),io={};Pw.exports=XP.extend({type:"alternatives",flags:{match:{default:"any"}},terms:{matches:{init:[],register:JP.toSibling}},args(t,...e){return e.length===1&&Array.isArray(e[0])?t.try(...e[0]):t.try(...e)},validate(t,e){let{schema:n,error:r,state:i,prefs:s}=e;if(n._flags.match){let a=[],u=[];for(let l=0;l<n.$_terms.matches.length;++l){let d=n.$_terms.matches[l],p=i.nest(d.schema,`match.${l}`);p.snapshot();let b=d.schema.$_validate(t,p,s);b.errors?(u.push(b.errors),p.restore()):(a.push(b.value),p.commit())}if(a.length===0){let l={details:u.map(d=>Al.details(d,{override:!1}))};return{errors:r("alternatives.any",l)}}if(n._flags.match==="one")return a.length===1?{value:a[0]}:{errors:r("alternatives.one")};if(a.length!==n.$_terms.matches.length){let l={details:u.map(d=>Al.details(d,{override:!1}))};return{errors:r("alternatives.all",l)}}let c=l=>l.$_terms.matches.some(d=>d.schema.type==="object"||d.schema.type==="alternatives"&&c(d.schema));return c(n)?{value:a.reduce((l,d)=>zP(l,d,{mergeArrays:!1}))}:{value:a[a.length-1]}}let o=[];for(let a=0;a<n.$_terms.matches.length;++a){let u=n.$_terms.matches[a];if(u.schema){let d=i.nest(u.schema,`match.${a}`);d.snapshot();let p=u.schema.$_validate(t,d,s);if(!p.errors)return d.commit(),p;d.restore(),o.push({schema:u.schema,reports:p.errors});continue}let c=u.ref?u.ref.resolve(t,i,s):t,l=u.is?[u]:u.switch;for(let d=0;d<l.length;++d){let p=l[d],{is:b,then:_,otherwise:E}=p,L=`match.${a}${u.switch?"."+d:""}`;if(b.$_match(c,i.nest(b,`${L}.is`),s)){if(_)return _.$_validate(t,i.nest(_,`${L}.then`),s)}else if(E)return E.$_validate(t,i.nest(E,`${L}.otherwise`),s)}}return io.errors(o,e)},rules:{conditional:{method(t,e){es(!this._flags._endedSwitch,"Unreachable condition"),es(!this._flags.match,"Cannot combine match mode",this._flags.match,"with conditional rule"),es(e.break===void 0,"Cannot use break option with alternatives conditional");let n=this.clone(),r=YP.when(n,t,e),i=r.is?[r]:r.switch;for(let s of i)if(s.then&&s.otherwise){n.$_setFlag("_endedSwitch",!0,{clone:!1});break}return n.$_terms.matches.push(r),n.$_mutateRebuild()}},match:{method(t){if(es(["any","one","all"].includes(t),"Invalid alternatives match mode",t),t!=="any")for(let e of this.$_terms.matches)es(e.schema,"Cannot combine match mode",t,"with conditional rules");return this.$_setFlag("match",t)}},try:{method(...t){es(t.length,"Missing alternative schemas"),Rw.verifyFlat(t,"try"),es(!this._flags._endedSwitch,"Unreachable condition");let e=this.clone();for(let n of t)e.$_terms.matches.push({schema:e.$_compile(n)});return e.$_mutateRebuild()}}},overrides:{label(t){let e=this.$_parent("label",t),n=(r,i)=>i.path[0]!=="is"&&typeof r._flags.label!="string"?r.label(t):void 0;return e.$_modify({each:n,ref:!1})}},rebuild(t){let e=n=>{Rw.isSchema(n)&&n.type==="array"&&t.$_setFlag("_arrayItems",!0,{clone:!1})};t.$_modify({each:e})},manifest:{build(t,e){if(e.matches)for(let n of e.matches){let{schema:r,ref:i,is:s,not:o,then:a,otherwise:u}=n;r?t=t.try(r):i?t=t.conditional(i,{is:s,then:a,not:o,otherwise:u,switch:n.switch}):t=t.conditional(s,{then:a,otherwise:u})}return t}},messages:{"alternatives.all":"{{#label}} does not match all of the required types","alternatives.any":"{{#label}} does not match any of the allowed types","alternatives.match":"{{#label}} does not match any of the allowed types","alternatives.one":"{{#label}} matches more than one allowed type","alternatives.types":"{{#label}} must be one of {{#types}}"}});io.errors=function(t,{error:e,state:n}){if(!t.length)return{errors:e("alternatives.any")};if(t.length===1)return{errors:t[0].reports};let r=new Set,i=[];for(let{reports:s,schema:o}of t){if(s.length>1)return io.unmatched(t,e);let a=s[0];if(!(a instanceof Al.Report))return io.unmatched(t,e);if(a.state.path.length!==n.path.length){i.push({type:o.type,report:a});continue}if(a.code==="any.only"){for(let l of a.local.valids)r.add(l);continue}let[u,c]=a.code.split(".");c!=="base"?i.push({type:o.type,report:a}):a.code==="object.base"?r.add(a.local.type):r.add(u)}return i.length?i.length===1?{errors:i[0].report}:io.unmatched(t,e):{errors:e("alternatives.types",{types:[...r]})}};io.unmatched=function(t,e){let n=[];for(let r of t)n.push(...r.reports);return{errors:e("alternatives.match",Al.details(n,{override:!1}))}}});var Mw=g((g5,Iw)=>{"use strict";var Ea=Ie(),QP=ka(),ZP=Xi(),eD=Bn(),Un=Qe(),tD=Qi(),at={};Iw.exports=eD.extend({type:"array",flags:{single:{default:!1},sparse:{default:!1}},terms:{items:{init:[],manifest:"schema"},ordered:{init:[],manifest:"schema"},_exclusions:{init:[]},_inclusions:{init:[]},_requireds:{init:[]}},coerce:{from:"object",method(t,{schema:e,state:n,prefs:r}){if(!Array.isArray(t))return;let i=e.$_getRule("sort");if(i)return at.sort(e,t,i.args.options,n,r)}},validate(t,{schema:e,error:n}){if(!Array.isArray(t)){if(e._flags.single){let r=[t];return r[Un.symbols.arraySingle]=!0,{value:r}}return{errors:n("array.base")}}if(!(!e.$_getRule("items")&&!e.$_terms.externals))return{value:t.slice()}},rules:{has:{method(t){t=this.$_compile(t,{appendPath:!0});let e=this.$_addRule({name:"has",args:{schema:t}});return e.$_mutateRegister(t),e},validate(t,{state:e,prefs:n,error:r},{schema:i}){let s=[t,...e.ancestors];for(let a=0;a<t.length;++a){let u=e.localize([...e.path,a],s,i);if(i.$_match(t[a],u,n))return t}let o=i._flags.label;return o?r("array.hasKnown",{patternLabel:o}):r("array.hasUnknown",null)},multi:!0},items:{method(...t){Un.verifyFlat(t,"items");let e=this.$_addRule("items");for(let n=0;n<t.length;++n){let r=Un.tryWithPath(()=>this.$_compile(t[n]),n,{append:!0});e.$_terms.items.push(r)}return e.$_mutateRebuild()},validate(t,{schema:e,error:n,state:r,prefs:i,errorsArray:s}){let o=e.$_terms._requireds.slice(),a=e.$_terms.ordered.slice(),u=[...e.$_terms._inclusions,...o],c=!t[Un.symbols.arraySingle];delete t[Un.symbols.arraySingle];let l=s(),d=t.length;for(let p=0;p<d;++p){let b=t[p],_=!1,E=!1,L=c?p:new Number(p),M=[...r.path,L];if(!e._flags.sparse&&b===void 0){if(l.push(n("array.sparse",{key:L,path:M,pos:p,value:void 0},r.localize(M))),i.abortEarly)return l;a.shift();continue}let x=[t,...r.ancestors];for(let C of e.$_terms._exclusions)if(C.$_match(b,r.localize(M,x,C),i,{presence:"ignore"})){if(l.push(n("array.excludes",{pos:p,value:b},r.localize(M))),i.abortEarly)return l;_=!0,a.shift();break}if(_)continue;if(e.$_terms.ordered.length){if(a.length){let C=a.shift(),V=C.$_validate(b,r.localize(M,x,C),i);if(V.errors){if(l.push(...V.errors),i.abortEarly)return l}else if(C._flags.result==="strip")at.fastSplice(t,p),--p,--d;else if(!e._flags.sparse&&V.value===void 0){if(l.push(n("array.sparse",{key:L,path:M,pos:p,value:void 0},r.localize(M))),i.abortEarly)return l;continue}else t[p]=V.value;continue}else if(!e.$_terms.items.length){if(l.push(n("array.orderedLength",{pos:p,limit:e.$_terms.ordered.length})),i.abortEarly)return l;break}}let k=[],v=o.length;for(let C=0;C<v;++C){let V=r.localize(M,x,o[C]);V.snapshot();let ce=o[C].$_validate(b,V,i);if(k[C]=ce,!ce.errors){if(V.commit(),t[p]=ce.value,E=!0,at.fastSplice(o,C),--C,--v,!e._flags.sparse&&ce.value===void 0&&(l.push(n("array.sparse",{key:L,path:M,pos:p,value:void 0},r.localize(M))),i.abortEarly))return l;break}V.restore()}if(E)continue;let F=i.stripUnknown&&!!i.stripUnknown.arrays||!1;v=u.length;for(let C of u){let V,ce=o.indexOf(C);if(ce!==-1)V=k[ce];else{let ye=r.localize(M,x,C);if(ye.snapshot(),V=C.$_validate(b,ye,i),!V.errors){ye.commit(),C._flags.result==="strip"?(at.fastSplice(t,p),--p,--d):!e._flags.sparse&&V.value===void 0?(l.push(n("array.sparse",{key:L,path:M,pos:p,value:void 0},r.localize(M))),_=!0):t[p]=V.value,E=!0;break}ye.restore()}if(v===1){if(F){at.fastSplice(t,p),--p,--d,E=!0;break}if(l.push(...V.errors),i.abortEarly)return l;_=!0;break}}if(!_&&(e.$_terms._inclusions.length||e.$_terms._requireds.length)&&!E){if(F){at.fastSplice(t,p),--p,--d;continue}if(l.push(n("array.includes",{pos:p,value:b},r.localize(M))),i.abortEarly)return l}}return o.length&&at.fillMissedErrors(e,l,o,t,r,i),a.length&&(at.fillOrderedErrors(e,l,a,t,r,i),l.length||at.fillDefault(a,t,r,i)),l.length?l:t},priority:!0,manifest:!1},length:{method(t){return this.$_addRule({name:"length",args:{limit:t},operator:"="})},validate(t,e,{limit:n},{name:r,operator:i,args:s}){return Un.compare(t.length,n,i)?t:e.error("array."+r,{limit:s.limit,value:t})},args:[{name:"limit",ref:!0,assert:Un.limit,message:"must be a positive integer"}]},max:{method(t){return this.$_addRule({name:"max",method:"length",args:{limit:t},operator:"<="})}},min:{method(t){return this.$_addRule({name:"min",method:"length",args:{limit:t},operator:">="})}},ordered:{method(...t){Un.verifyFlat(t,"ordered");let e=this.$_addRule("items");for(let n=0;n<t.length;++n){let r=Un.tryWithPath(()=>this.$_compile(t[n]),n,{append:!0});at.validateSingle(r,e),e.$_mutateRegister(r),e.$_terms.ordered.push(r)}return e.$_mutateRebuild()}},single:{method(t){let e=t===void 0?!0:!!t;return Ea(!e||!this._flags._arrayItems,"Cannot specify single rule when array has array items"),this.$_setFlag("single",e)}},sort:{method(t={}){Un.assertOptions(t,["by","order"]);let e={order:t.order||"ascending"};return t.by&&(e.by=tD.ref(t.by,{ancestor:0}),Ea(!e.by.ancestor,"Cannot sort by ancestor")),this.$_addRule({name:"sort",args:{options:e}})},validate(t,{error:e,state:n,prefs:r,schema:i},{options:s}){let{value:o,errors:a}=at.sort(i,t,s,n,r);if(a)return a;for(let u=0;u<t.length;++u)if(t[u]!==o[u])return e("array.sort",{order:s.order,by:s.by?s.by.key:"value"});return t},convert:!0},sparse:{method(t){let e=t===void 0?!0:!!t;return this._flags.sparse===e?this:(e?this.clone():this.$_addRule("items")).$_setFlag("sparse",e,{clone:!1})}},unique:{method(t,e={}){Ea(!t||typeof t=="function"||typeof t=="string","comparator must be a function or a string"),Un.assertOptions(e,["ignoreUndefined","separator"]);let n={name:"unique",args:{options:e,comparator:t}};if(t)if(typeof t=="string"){let r=Un.default(e.separator,".");n.path=r?t.split(r):[t]}else n.comparator=t;return this.$_addRule(n)},validate(t,{state:e,error:n,schema:r},{comparator:i,options:s},{comparator:o,path:a}){let u={string:Object.create(null),number:Object.create(null),undefined:Object.create(null),boolean:Object.create(null),bigint:Object.create(null),object:new Map,function:new Map,custom:new Map},c=o||QP,l=s.ignoreUndefined;for(let d=0;d<t.length;++d){let p=a?ZP(t[d],a):t[d],b=o?u.custom:u[typeof p];if(Ea(b,"Failed to find unique map container for type",typeof p),b instanceof Map){let _=b.entries(),E;for(;!(E=_.next()).done;)if(c(E.value[0],p)){let L=e.localize([...e.path,d],[t,...e.ancestors]),M={pos:d,value:t[d],dupePos:E.value[1],dupeValue:t[E.value[1]]};return a&&(M.path=i),n("array.unique",M,L)}b.set(p,d)}else{if((!l||p!==void 0)&&b[p]!==void 0){let _={pos:d,value:t[d],dupePos:b[p],dupeValue:t[b[p]]};a&&(_.path=i);let E=e.localize([...e.path,d],[t,...e.ancestors]);return n("array.unique",_,E)}b[p]=d}}return t},args:["comparator","options"],multi:!0}},cast:{set:{from:Array.isArray,to(t,e){return new Set(t)}}},rebuild(t){t.$_terms._inclusions=[],t.$_terms._exclusions=[],t.$_terms._requireds=[];for(let e of t.$_terms.items)at.validateSingle(e,t),e._flags.presence==="required"?t.$_terms._requireds.push(e):e._flags.presence==="forbidden"?t.$_terms._exclusions.push(e):t.$_terms._inclusions.push(e);for(let e of t.$_terms.ordered)at.validateSingle(e,t)},manifest:{build(t,e){return e.items&&(t=t.items(...e.items)),e.ordered&&(t=t.ordered(...e.ordered)),t}},messages:{"array.base":"{{#label}} must be an array","array.excludes":"{{#label}} contains an excluded value","array.hasKnown":"{{#label}} does not contain at least one required match for type {:#patternLabel}","array.hasUnknown":"{{#label}} does not contain at least one required match","array.includes":"{{#label}} does not match any of the allowed types","array.includesRequiredBoth":"{{#label}} does not contain {{#knownMisses}} and {{#unknownMisses}} other required value(s)","array.includesRequiredKnowns":"{{#label}} does not contain {{#knownMisses}}","array.includesRequiredUnknowns":"{{#label}} does not contain {{#unknownMisses}} required value(s)","array.length":"{{#label}} must contain {{#limit}} items","array.max":"{{#label}} must contain less than or equal to {{#limit}} items","array.min":"{{#label}} must contain at least {{#limit}} items","array.orderedLength":"{{#label}} must contain at most {{#limit}} items","array.sort":"{{#label}} must be sorted in {#order} order by {{#by}}","array.sort.mismatching":"{{#label}} cannot be sorted due to mismatching types","array.sort.unsupported":"{{#label}} cannot be sorted due to unsupported type {#type}","array.sparse":"{{#label}} must not be a sparse array item","array.unique":"{{#label}} contains a duplicate value"}});at.fillMissedErrors=function(t,e,n,r,i,s){let o=[],a=0;for(let u of n){let c=u._flags.label;c?o.push(c):++a}o.length?a?e.push(t.$_createError("array.includesRequiredBoth",r,{knownMisses:o,unknownMisses:a},i,s)):e.push(t.$_createError("array.includesRequiredKnowns",r,{knownMisses:o},i,s)):e.push(t.$_createError("array.includesRequiredUnknowns",r,{unknownMisses:a},i,s))};at.fillOrderedErrors=function(t,e,n,r,i,s){let o=[];for(let a of n)a._flags.presence==="required"&&o.push(a);o.length&&at.fillMissedErrors(t,e,o,r,i,s)};at.fillDefault=function(t,e,n,r){let i=[],s=!0;for(let o=t.length-1;o>=0;--o){let a=t[o],u=[e,...n.ancestors],c=a.$_validate(void 0,n.localize(n.path,u,a),r).value;if(s){if(c===void 0)continue;s=!1}i.unshift(c)}i.length&&e.push(...i)};at.fastSplice=function(t,e){let n=e;for(;n<t.length;)t[n++]=t[n];--t.length};at.validateSingle=function(t,e){(t.type==="array"||t._flags._arrayItems)&&(Ea(!e._flags.single,"Cannot specify array item with single rule enabled"),e.$_setFlag("_arrayItems",!0,{clone:!1}))};at.sort=function(t,e,n,r,i){let s=n.order==="ascending"?1:-1,o=-1*s,a=s,u=(c,l)=>{let d=at.compare(c,l,o,a);if(d!==null||(n.by&&(c=n.by.resolve(c,r,i),l=n.by.resolve(l,r,i)),d=at.compare(c,l,o,a),d!==null))return d;let p=typeof c;if(p!==typeof l)throw t.$_createError("array.sort.mismatching",e,null,r,i);if(p!=="number"&&p!=="string")throw t.$_createError("array.sort.unsupported",e,{type:p},r,i);return p==="number"?(c-l)*s:c<l?o:a};try{return{value:e.slice().sort(u)}}catch(c){return{errors:c}}};at.compare=function(t,e,n,r){return t===e?0:t===void 0?1:e===void 0?-1:t===null?r:e===null?n:null}});var Fw=g((m5,jw)=>{"use strict";var Lw=Ie(),nD=Bn(),Nw=Qe(),qw=bm(),Tm={};Tm.isBool=function(t){return typeof t=="boolean"};jw.exports=nD.extend({type:"boolean",flags:{sensitive:{default:!1}},terms:{falsy:{init:null,manifest:"values"},truthy:{init:null,manifest:"values"}},coerce(t,{schema:e}){if(typeof t!="boolean"){if(typeof t=="string"){let n=e._flags.sensitive?t:t.toLowerCase();t=n==="true"?!0:n==="false"?!1:t}return typeof t!="boolean"&&(t=e.$_terms.truthy&&e.$_terms.truthy.has(t,null,null,!e._flags.sensitive)||(e.$_terms.falsy&&e.$_terms.falsy.has(t,null,null,!e._flags.sensitive)?!1:t)),{value:t}}},validate(t,{error:e}){if(typeof t!="boolean")return{value:t,errors:e("boolean.base")}},rules:{truthy:{method(...t){Nw.verifyFlat(t,"truthy");let e=this.clone();e.$_terms.truthy=e.$_terms.truthy||new qw;for(let n=0;n<t.length;++n){let r=t[n];Lw(r!==void 0,"Cannot call truthy with undefined"),e.$_terms.truthy.add(r)}return e}},falsy:{method(...t){Nw.verifyFlat(t,"falsy");let e=this.clone();e.$_terms.falsy=e.$_terms.falsy||new qw;for(let n=0;n<t.length;++n){let r=t[n];Lw(r!==void 0,"Cannot call falsy with undefined"),e.$_terms.falsy.add(r)}return e}},sensitive:{method(t=!0){return this.$_setFlag("sensitive",t)}}},cast:{number:{from:Tm.isBool,to(t,e){return t?1:0}},string:{from:Tm.isBool,to(t,e){return t?"true":"false"}}},manifest:{build(t,e){return e.truthy&&(t=t.truthy(...e.truthy)),e.falsy&&(t=t.falsy(...e.falsy)),t}},messages:{"boolean.base":"{{#label}} must be a boolean"}})});var Hw=g((y5,Uw)=>{"use strict";var $w=Ie(),rD=Bn(),Bw=Qe(),iD=vi(),rr={};rr.isDate=function(t){return t instanceof Date};Uw.exports=rD.extend({type:"date",coerce:{from:["number","string"],method(t,{schema:e}){return{value:rr.parse(t,e._flags.format)||t}}},validate(t,{schema:e,error:n,prefs:r}){if(t instanceof Date&&!isNaN(t.getTime()))return;let i=e._flags.format;return!r.convert||!i||typeof t!="string"?{value:t,errors:n("date.base")}:{value:t,errors:n("date.format",{format:i})}},rules:{compare:{method:!1,validate(t,e,{date:n},{name:r,operator:i,args:s}){let o=n==="now"?Date.now():n.getTime();return Bw.compare(t.getTime(),o,i)?t:e.error("date."+r,{limit:s.date,value:t})},args:[{name:"date",ref:!0,normalize:t=>t==="now"?t:rr.parse(t),assert:t=>t!==null,message:"must have a valid date format"}]},format:{method(t){return $w(["iso","javascript","unix"].includes(t),"Unknown date format",t),this.$_setFlag("format",t)}},greater:{method(t){return this.$_addRule({name:"greater",method:"compare",args:{date:t},operator:">"})}},iso:{method(){return this.format("iso")}},less:{method(t){return this.$_addRule({name:"less",method:"compare",args:{date:t},operator:"<"})}},max:{method(t){return this.$_addRule({name:"max",method:"compare",args:{date:t},operator:"<="})}},min:{method(t){return this.$_addRule({name:"min",method:"compare",args:{date:t},operator:">="})}},timestamp:{method(t="javascript"){return $w(["javascript","unix"].includes(t),'"type" must be one of "javascript, unix"'),this.format(t)}}},cast:{number:{from:rr.isDate,to(t,e){return t.getTime()}},string:{from:rr.isDate,to(t,{prefs:e}){return iD.date(t,e)}}},messages:{"date.base":"{{#label}} must be a valid date","date.format":'{{#label}} must be in {msg("date.format." + #format) || #format} format',"date.greater":"{{#label}} must be greater than {{:#limit}}","date.less":"{{#label}} must be less than {{:#limit}}","date.max":"{{#label}} must be less than or equal to {{:#limit}}","date.min":"{{#label}} must be greater than or equal to {{:#limit}}","date.format.iso":"ISO 8601 date","date.format.javascript":"timestamp or number of milliseconds","date.format.unix":"timestamp or number of seconds"}});rr.parse=function(t,e){if(t instanceof Date)return t;if(typeof t!="string"&&(isNaN(t)||!isFinite(t))||/^\s*$/.test(t))return null;if(e==="iso")return Bw.isIsoDate(t)?rr.date(t.toString()):null;let n=t;if(typeof t=="string"&&/^[+-]?\d+(\.\d+)?$/.test(t)&&(t=parseFloat(t)),e){if(e==="javascript")return rr.date(1*t);if(e==="unix")return rr.date(1e3*t);if(typeof n=="string")return null}return rr.date(t)};rr.date=function(t){let e=new Date(t);return isNaN(e.getTime())?null:e}});var zw=g((b5,Vw)=>{"use strict";var Ol=Ie(),Gw=nn(),Kw=Sl(),Ww=Xi(),Cl={};Vw.exports=function(t,e,n={}){if(Ol(t&&typeof t=="object","Invalid defaults value: must be an object"),Ol(!e||e===!0||typeof e=="object","Invalid source value: must be true, falsy or an object"),Ol(typeof n=="object","Invalid options: must be an object"),!e)return null;if(n.shallow)return Cl.applyToDefaultsWithShallow(t,e,n);let r=Gw(t);if(e===!0)return r;let i=n.nullOverride!==void 0?n.nullOverride:!1;return Kw(r,e,{nullOverride:i,mergeArrays:!1})};Cl.applyToDefaultsWithShallow=function(t,e,n){let r=n.shallow;Ol(Array.isArray(r),"Invalid keys");let i=new Map,s=e===!0?null:new Set;for(let u of r){u=Array.isArray(u)?u:u.split(".");let c=Ww(t,u);c&&typeof c=="object"?i.set(c,s&&Ww(e,u)||c):s&&s.add(u)}let o=Gw(t,{},i);if(!s)return o;for(let u of s)Cl.reachCopy(o,e,u);let a=n.nullOverride!==void 0?n.nullOverride:!1;return Kw(o,e,{nullOverride:a,mergeArrays:!1})};Cl.reachCopy=function(t,e,n){for(let s of n){if(!(s in e))return;let o=e[s];if(typeof o!="object"||o===null)return;e=o}let r=e,i=t;for(let s=0;s<n.length-1;++s){let o=n[s];typeof i[o]!="object"&&(i[o]={}),i=i[o]}i[n[n.length-1]]=r}});var Jw=g(Yw=>{"use strict";var ts=Ie(),Xw={};Yw.Sorter=class{constructor(){this._items=[],this.nodes=[]}add(t,e){e=e||{};let n=[].concat(e.before||[]),r=[].concat(e.after||[]),i=e.group||"?",s=e.sort||0;ts(!n.includes(i),`Item cannot come before itself: ${i}`),ts(!n.includes("?"),"Item cannot come before unassociated items"),ts(!r.includes(i),`Item cannot come after itself: ${i}`),ts(!r.includes("?"),"Item cannot come after unassociated items"),Array.isArray(t)||(t=[t]);for(let o of t){let a={seq:this._items.length,sort:s,before:n,after:r,group:i,node:o};this._items.push(a)}if(!e.manual){let o=this._sort();ts(o,"item",i!=="?"?`added into group ${i}`:"","created a dependencies error")}return this.nodes}merge(t){Array.isArray(t)||(t=[t]);for(let n of t)if(n)for(let r of n._items)this._items.push(Object.assign({},r));this._items.sort(Xw.mergeSort);for(let n=0;n<this._items.length;++n)this._items[n].seq=n;let e=this._sort();return ts(e,"merge created a dependencies error"),this.nodes}sort(){let t=this._sort();return ts(t,"sort created a dependencies error"),this.nodes}_sort(){let t={},e=Object.create(null),n=Object.create(null);for(let a of this._items){let u=a.seq,c=a.group;n[c]=n[c]||[],n[c].push(u),t[u]=a.before;for(let l of a.after)e[l]=e[l]||[],e[l].push(u)}for(let a in t){let u=[];for(let c in t[a]){let l=t[a][c];n[l]=n[l]||[],u.push(...n[l])}t[a]=u}for(let a in e)if(n[a])for(let u of n[a])t[u].push(...e[a]);let r={};for(let a in t){let u=t[a];for(let c of u)r[c]=r[c]||[],r[c].push(a)}let i={},s=[];for(let a=0;a<this._items.length;++a){let u=a;if(r[a]){u=null;for(let c=0;c<this._items.length;++c){if(i[c]===!0)continue;r[c]||(r[c]=[]);let l=r[c].length,d=0;for(let p=0;p<l;++p)i[r[c][p]]&&++d;if(d===l){u=c;break}}}u!==null&&(i[u]=!0,s.push(u))}if(s.length!==this._items.length)return!1;let o={};for(let a of this._items)o[a.seq]=a;this._items=[],this.nodes=[];for(let a of s){let u=o[a];this.nodes.push(u.node),this._items.push(u)}return!0}};Xw.mergeSort=(t,e)=>t.sort===e.sort?0:t.sort<e.sort?-1:1});var km=g((T5,e0)=>{"use strict";var sD=zw(),Hn=Ie(),Qw=nn(),oD=Jw(),aD=Bn(),Yt=Qe(),Sm=Qi(),uD=Fr(),Zw=$r(),Rl=vi(),pe={renameDefaults:{alias:!1,multiple:!1,override:!1}};e0.exports=aD.extend({type:"_keys",properties:{typeof:"object"},flags:{unknown:{default:void 0}},terms:{dependencies:{init:null},keys:{init:null,manifest:{mapped:{from:"schema",to:"key"}}},patterns:{init:null},renames:{init:null}},args(t,e){return t.keys(e)},validate(t,{schema:e,error:n,state:r,prefs:i}){if(!t||typeof t!==e.$_property("typeof")||Array.isArray(t))return{value:t,errors:n("object.base",{type:e.$_property("typeof")})};if(!e.$_terms.renames&&!e.$_terms.dependencies&&!e.$_terms.keys&&!e.$_terms.patterns&&!e.$_terms.externals)return;t=pe.clone(t,i);let s=[];if(e.$_terms.renames&&!pe.rename(e,t,r,i,s))return{value:t,errors:s};if(!e.$_terms.keys&&!e.$_terms.patterns&&!e.$_terms.dependencies)return{value:t,errors:s};let o=new Set(Object.keys(t));if(e.$_terms.keys){let a=[t,...r.ancestors];for(let u of e.$_terms.keys){let c=u.key,l=t[c];o.delete(c);let d=r.localize([...r.path,c],a,u),p=u.schema.$_validate(l,d,i);if(p.errors){if(i.abortEarly)return{value:t,errors:p.errors};p.value!==void 0&&(t[c]=p.value),s.push(...p.errors)}else u.schema._flags.result==="strip"||p.value===void 0&&l!==void 0?delete t[c]:p.value!==void 0&&(t[c]=p.value)}}if(o.size||e._flags._hasPatternMatch){let a=pe.unknown(e,t,o,s,r,i);if(a)return a}if(e.$_terms.dependencies)for(let a of e.$_terms.dependencies){if(a.key!==null&&pe.isPresent(a.options)(a.key.resolve(t,r,i,null,{shadow:!1}))===!1)continue;let u=pe.dependencies[a.rel](e,a,t,r,i);if(u){let c=e.$_createError(u.code,t,u.context,r,i);if(i.abortEarly)return{value:t,errors:c};s.push(c)}}return{value:t,errors:s}},rules:{and:{method(...t){return Yt.verifyFlat(t,"and"),pe.dependency(this,"and",null,t)}},append:{method(t){return t==null||Object.keys(t).length===0?this:this.keys(t)}},assert:{method(t,e,n){Rl.isTemplate(t)||(t=Sm.ref(t)),Hn(n===void 0||typeof n=="string","Message must be a string"),e=this.$_compile(e,{appendPath:!0});let r=this.$_addRule({name:"assert",args:{subject:t,schema:e,message:n}});return r.$_mutateRegister(t),r.$_mutateRegister(e),r},validate(t,{error:e,prefs:n,state:r},{subject:i,schema:s,message:o}){let a=i.resolve(t,r,n),u=Zw.isRef(i)?i.absolute(r):[];return s.$_match(a,r.localize(u,[t,...r.ancestors],s),n)?t:e("object.assert",{subject:i,message:o})},args:["subject","schema","message"],multi:!0},instance:{method(t,e){return Hn(typeof t=="function","constructor must be a function"),e=e||t.name,this.$_addRule({name:"instance",args:{constructor:t,name:e}})},validate(t,e,{constructor:n,name:r}){return t instanceof n?t:e.error("object.instance",{type:r,value:t})},args:["constructor","name"]},keys:{method(t){Hn(t===void 0||typeof t=="object","Object schema must be a valid object"),Hn(!Yt.isSchema(t),"Object schema cannot be a joi schema");let e=this.clone();if(!t)e.$_terms.keys=null;else if(!Object.keys(t).length)e.$_terms.keys=new pe.Keys;else{e.$_terms.keys=e.$_terms.keys?e.$_terms.keys.filter(n=>!t.hasOwnProperty(n.key)):new pe.Keys;for(let n in t)Yt.tryWithPath(()=>e.$_terms.keys.push({key:n,schema:this.$_compile(t[n])}),n)}return e.$_mutateRebuild()}},length:{method(t){return this.$_addRule({name:"length",args:{limit:t},operator:"="})},validate(t,e,{limit:n},{name:r,operator:i,args:s}){return Yt.compare(Object.keys(t).length,n,i)?t:e.error("object."+r,{limit:s.limit,value:t})},args:[{name:"limit",ref:!0,assert:Yt.limit,message:"must be a positive integer"}]},max:{method(t){return this.$_addRule({name:"max",method:"length",args:{limit:t},operator:"<="})}},min:{method(t){return this.$_addRule({name:"min",method:"length",args:{limit:t},operator:">="})}},nand:{method(...t){return Yt.verifyFlat(t,"nand"),pe.dependency(this,"nand",null,t)}},or:{method(...t){return Yt.verifyFlat(t,"or"),pe.dependency(this,"or",null,t)}},oxor:{method(...t){return pe.dependency(this,"oxor",null,t)}},pattern:{method(t,e,n={}){let r=t instanceof RegExp;r||(t=this.$_compile(t,{appendPath:!0})),Hn(e!==void 0,"Invalid rule"),Yt.assertOptions(n,["fallthrough","matches"]),r&&Hn(!t.flags.includes("g")&&!t.flags.includes("y"),"pattern should not use global or sticky mode"),e=this.$_compile(e,{appendPath:!0});let i=this.clone();i.$_terms.patterns=i.$_terms.patterns||[];let s={[r?"regex":"schema"]:t,rule:e};return n.matches&&(s.matches=this.$_compile(n.matches),s.matches.type!=="array"&&(s.matches=s.matches.$_root.array().items(s.matches)),i.$_mutateRegister(s.matches),i.$_setFlag("_hasPatternMatch",!0,{clone:!1})),n.fallthrough&&(s.fallthrough=!0),i.$_terms.patterns.push(s),i.$_mutateRegister(e),i}},ref:{method(){return this.$_addRule("ref")},validate(t,e){return Zw.isRef(t)?t:e.error("object.refType",{value:t})}},regex:{method(){return this.$_addRule("regex")},validate(t,e){return t instanceof RegExp?t:e.error("object.regex",{value:t})}},rename:{method(t,e,n={}){Hn(typeof t=="string"||t instanceof RegExp,"Rename missing the from argument"),Hn(typeof e=="string"||e instanceof Rl,"Invalid rename to argument"),Hn(e!==t,"Cannot rename key to same name:",t),Yt.assertOptions(n,["alias","ignoreUndefined","override","multiple"]);let r=this.clone();r.$_terms.renames=r.$_terms.renames||[];for(let i of r.$_terms.renames)Hn(i.from!==t,"Cannot rename the same key multiple times");return e instanceof Rl&&r.$_mutateRegister(e),r.$_terms.renames.push({from:t,to:e,options:sD(pe.renameDefaults,n)}),r}},schema:{method(t="any"){return this.$_addRule({name:"schema",args:{type:t}})},validate(t,e,{type:n}){return Yt.isSchema(t)&&(n==="any"||t.type===n)?t:e.error("object.schema",{type:n})}},unknown:{method(t){return this.$_setFlag("unknown",t!==!1)}},with:{method(t,e,n={}){return pe.dependency(this,"with",t,e,n)}},without:{method(t,e,n={}){return pe.dependency(this,"without",t,e,n)}},xor:{method(...t){return Yt.verifyFlat(t,"xor"),pe.dependency(this,"xor",null,t)}}},overrides:{default(t,e){return t===void 0&&(t=Yt.symbols.deepDefault),this.$_parent("default",t,e)}},rebuild(t){if(t.$_terms.keys){let e=new oD.Sorter;for(let n of t.$_terms.keys)Yt.tryWithPath(()=>e.add(n,{after:n.schema.$_rootReferences(),group:n.key}),n.key);t.$_terms.keys=new pe.Keys(...e.nodes)}},manifest:{build(t,e){if(e.keys&&(t=t.keys(e.keys)),e.dependencies)for(let{rel:n,key:r=null,peers:i,options:s}of e.dependencies)t=pe.dependency(t,n,r,i,s);if(e.patterns)for(let{regex:n,schema:r,rule:i,fallthrough:s,matches:o}of e.patterns)t=t.pattern(n||r,i,{fallthrough:s,matches:o});if(e.renames)for(let{from:n,to:r,options:i}of e.renames)t=t.rename(n,r,i);return t}},messages:{"object.and":"{{#label}} contains {{#presentWithLabels}} without its required peers {{#missingWithLabels}}","object.assert":'{{#label}} is invalid because {if(#subject.key, `"` + #subject.key + `" failed to ` + (#message || "pass the assertion test"), #message || "the assertion failed")}',"object.base":"{{#label}} must be of type {{#type}}","object.instance":"{{#label}} must be an instance of {{:#type}}","object.length":'{{#label}} must have {{#limit}} key{if(#limit == 1, "", "s")}',"object.max":'{{#label}} must have less than or equal to {{#limit}} key{if(#limit == 1, "", "s")}',"object.min":'{{#label}} must have at least {{#limit}} key{if(#limit == 1, "", "s")}',"object.missing":"{{#label}} must contain at least one of {{#peersWithLabels}}","object.nand":"{{:#mainWithLabel}} must not exist simultaneously with {{#peersWithLabels}}","object.oxor":"{{#label}} contains a conflict between optional exclusive peers {{#peersWithLabels}}","object.pattern.match":"{{#label}} keys failed to match pattern requirements","object.refType":"{{#label}} must be a Joi reference","object.regex":"{{#label}} must be a RegExp object","object.rename.multiple":"{{#label}} cannot rename {{:#from}} because multiple renames are disabled and another key was already renamed to {{:#to}}","object.rename.override":"{{#label}} cannot rename {{:#from}} because override is disabled and target {{:#to}} exists","object.schema":"{{#label}} must be a Joi schema of {{#type}} type","object.unknown":"{{#label}} is not allowed","object.with":"{{:#mainWithLabel}} missing required peer {{:#peerWithLabel}}","object.without":"{{:#mainWithLabel}} conflict with forbidden peer {{:#peerWithLabel}}","object.xor":"{{#label}} contains a conflict between exclusive peers {{#peersWithLabels}}"}});pe.clone=function(t,e){if(typeof t=="object"){if(e.nonEnumerables)return Qw(t,{shallow:!0});let r=Object.create(Object.getPrototypeOf(t));return Object.assign(r,t),r}let n=function(...r){return t.apply(this,r)};return n.prototype=Qw(t.prototype),Object.defineProperty(n,"name",{value:t.name,writable:!1}),Object.defineProperty(n,"length",{value:t.length,writable:!1}),Object.assign(n,t),n};pe.dependency=function(t,e,n,r,i){Hn(n===null||typeof n=="string",e,"key must be a strings"),i||(i=r.length>1&&typeof r[r.length-1]=="object"?r.pop():{}),Yt.assertOptions(i,["separator","isPresent"]),r=[].concat(r);let s=Yt.default(i.separator,"."),o=[];for(let u of r)Hn(typeof u=="string",e,"peers must be strings"),o.push(Sm.ref(u,{separator:s,ancestor:0,prefix:!1}));n!==null&&(n=Sm.ref(n,{separator:s,ancestor:0,prefix:!1}));let a=t.clone();return a.$_terms.dependencies=a.$_terms.dependencies||[],a.$_terms.dependencies.push(new pe.Dependency(e,n,o,r,i)),a};pe.dependencies={and(t,e,n,r,i){let s=[],o=[],a=e.peers.length,u=pe.isPresent(e.options);for(let c of e.peers)u(c.resolve(n,r,i,null,{shadow:!1}))===!1?s.push(c.key):o.push(c.key);if(s.length!==a&&o.length!==a)return{code:"object.and",context:{present:o,presentWithLabels:pe.keysToLabels(t,o),missing:s,missingWithLabels:pe.keysToLabels(t,s)}}},nand(t,e,n,r,i){let s=[],o=pe.isPresent(e.options);for(let c of e.peers)o(c.resolve(n,r,i,null,{shadow:!1}))&&s.push(c.key);if(s.length!==e.peers.length)return;let a=e.paths[0],u=e.paths.slice(1);return{code:"object.nand",context:{main:a,mainWithLabel:pe.keysToLabels(t,a),peers:u,peersWithLabels:pe.keysToLabels(t,u)}}},or(t,e,n,r,i){let s=pe.isPresent(e.options);for(let o of e.peers)if(s(o.resolve(n,r,i,null,{shadow:!1})))return;return{code:"object.missing",context:{peers:e.paths,peersWithLabels:pe.keysToLabels(t,e.paths)}}},oxor(t,e,n,r,i){let s=[],o=pe.isPresent(e.options);for(let u of e.peers)o(u.resolve(n,r,i,null,{shadow:!1}))&&s.push(u.key);if(!s.length||s.length===1)return;let a={peers:e.paths,peersWithLabels:pe.keysToLabels(t,e.paths)};return a.present=s,a.presentWithLabels=pe.keysToLabels(t,s),{code:"object.oxor",context:a}},with(t,e,n,r,i){let s=pe.isPresent(e.options);for(let o of e.peers)if(s(o.resolve(n,r,i,null,{shadow:!1}))===!1)return{code:"object.with",context:{main:e.key.key,mainWithLabel:pe.keysToLabels(t,e.key.key),peer:o.key,peerWithLabel:pe.keysToLabels(t,o.key)}}},without(t,e,n,r,i){let s=pe.isPresent(e.options);for(let o of e.peers)if(s(o.resolve(n,r,i,null,{shadow:!1})))return{code:"object.without",context:{main:e.key.key,mainWithLabel:pe.keysToLabels(t,e.key.key),peer:o.key,peerWithLabel:pe.keysToLabels(t,o.key)}}},xor(t,e,n,r,i){let s=[],o=pe.isPresent(e.options);for(let u of e.peers)o(u.resolve(n,r,i,null,{shadow:!1}))&&s.push(u.key);if(s.length===1)return;let a={peers:e.paths,peersWithLabels:pe.keysToLabels(t,e.paths)};return s.length===0?{code:"object.missing",context:a}:(a.present=s,a.presentWithLabels=pe.keysToLabels(t,s),{code:"object.xor",context:a})}};pe.keysToLabels=function(t,e){return Array.isArray(e)?e.map(n=>t.$_mapLabels(n)):t.$_mapLabels(e)};pe.isPresent=function(t){return typeof t.isPresent=="function"?t.isPresent:e=>e!==void 0};pe.rename=function(t,e,n,r,i){let s={};for(let o of t.$_terms.renames){let a=[],u=typeof o.from!="string";if(!u)Object.prototype.hasOwnProperty.call(e,o.from)&&(e[o.from]!==void 0||!o.options.ignoreUndefined)&&a.push(o);else for(let c in e){if(e[c]===void 0&&o.options.ignoreUndefined||c===o.to)continue;let l=o.from.exec(c);l&&a.push({from:c,to:o.to,match:l})}for(let c of a){let l=c.from,d=c.to;if(d instanceof Rl&&(d=d.render(e,n,r,c.match)),l!==d){if(!o.options.multiple&&s[d]&&(i.push(t.$_createError("object.rename.multiple",e,{from:l,to:d,pattern:u},n,r)),r.abortEarly)||Object.prototype.hasOwnProperty.call(e,d)&&!o.options.override&&!s[d]&&(i.push(t.$_createError("object.rename.override",e,{from:l,to:d,pattern:u},n,r)),r.abortEarly))return!1;e[l]===void 0?delete e[d]:e[d]=e[l],s[d]=!0,o.options.alias||delete e[l]}}}return!0};pe.unknown=function(t,e,n,r,i,s){if(t.$_terms.patterns){let a=!1,u=t.$_terms.patterns.map(l=>{if(l.matches)return a=!0,[]}),c=[e,...i.ancestors];for(let l of n){let d=e[l],p=[...i.path,l];for(let b=0;b<t.$_terms.patterns.length;++b){let _=t.$_terms.patterns[b];if(_.regex){let M=_.regex.test(l);if(i.mainstay.tracer.debug(i,"rule",`pattern.${b}`,M?"pass":"error"),!M)continue}else if(!_.schema.$_match(l,i.nest(_.schema,`pattern.${b}`),s))continue;n.delete(l);let E=i.localize(p,c,{schema:_.rule,key:l}),L=_.rule.$_validate(d,E,s);if(L.errors){if(s.abortEarly)return{value:e,errors:L.errors};r.push(...L.errors)}if(_.matches&&u[b].push(l),e[l]=L.value,!_.fallthrough)break}}if(a)for(let l=0;l<u.length;++l){let d=u[l];if(!d)continue;let p=t.$_terms.patterns[l].matches,b=i.localize(i.path,c,p),_=p.$_validate(d,b,s);if(_.errors){let E=uD.details(_.errors,{override:!1});E.matches=d;let L=t.$_createError("object.pattern.match",e,E,i,s);if(s.abortEarly)return{value:e,errors:L};r.push(L)}}}if(!n.size||!t.$_terms.keys&&!t.$_terms.patterns)return;if(s.stripUnknown&&typeof t._flags.unknown>"u"||s.skipFunctions){let a=s.stripUnknown?s.stripUnknown===!0?!0:!!s.stripUnknown.objects:!1;for(let u of n)a?(delete e[u],n.delete(u)):typeof e[u]=="function"&&n.delete(u)}if(!Yt.default(t._flags.unknown,s.allowUnknown))for(let a of n){let u=i.localize([...i.path,a],[]),c=t.$_createError("object.unknown",e[a],{child:a},u,s,{flags:!1});if(s.abortEarly)return{value:e,errors:c};r.push(c)}};pe.Dependency=class{constructor(t,e,n,r,i){this.rel=t,this.key=e,this.peers=n,this.paths=r,this.options=i}describe(){let t={rel:this.rel,peers:this.paths};return this.key!==null&&(t.key=this.key.key),this.peers[0].separator!=="."&&(t.options={...t.options,separator:this.peers[0].separator}),this.options.isPresent&&(t.options={...t.options,isPresent:this.options.isPresent}),t}};pe.Keys=class extends Array{concat(t){let e=this.slice(),n=new Map;for(let r=0;r<e.length;++r)n.set(e[r].key,r);for(let r of t){let i=r.key,s=n.get(i);s!==void 0?e[s]={key:i,schema:e[s].schema.concat(r.schema)}:e.push(r)}return e}}});var n0=g((x5,t0)=>{"use strict";var xm=Ie(),cD=km();t0.exports=cD.extend({type:"function",properties:{typeof:"function"},rules:{arity:{method(t){return xm(Number.isSafeInteger(t)&&t>=0,"n must be a positive integer"),this.$_addRule({name:"arity",args:{n:t}})},validate(t,e,{n}){return t.length===n?t:e.error("function.arity",{n})}},class:{method(){return this.$_addRule("class")},validate(t,e){return/^\s*class\s/.test(t.toString())?t:e.error("function.class",{value:t})}},minArity:{method(t){return xm(Number.isSafeInteger(t)&&t>0,"n must be a strict positive integer"),this.$_addRule({name:"minArity",args:{n:t}})},validate(t,e,{n}){return t.length>=n?t:e.error("function.minArity",{n})}},maxArity:{method(t){return xm(Number.isSafeInteger(t)&&t>=0,"n must be a positive integer"),this.$_addRule({name:"maxArity",args:{n:t}})},validate(t,e,{n}){return t.length<=n?t:e.error("function.maxArity",{n})}}},messages:{"function.arity":"{{#label}} must have an arity of {{#n}}","function.class":"{{#label}} must be a class","function.maxArity":"{{#label}} must have an arity lesser or equal to {{#n}}","function.minArity":"{{#label}} must have an arity greater or equal to {{#n}}"}})});var i0=g((w5,r0)=>{"use strict";var Wr=Ie(),lD=Bn(),dD=Qe(),fD=Qi(),pD=Fr(),Gr={};r0.exports=lD.extend({type:"link",properties:{schemaChain:!0},terms:{link:{init:null,manifest:"single",register:!1}},args(t,e){return t.ref(e)},validate(t,{schema:e,state:n,prefs:r}){Wr(e.$_terms.link,"Uninitialized link schema");let i=Gr.generate(e,t,n,r),s=e.$_terms.link[0].ref;return i.$_validate(t,n.nest(i,`link:${s.display}:${i.type}`),r)},generate(t,e,n,r){return Gr.generate(t,e,n,r)},rules:{ref:{method(t){Wr(!this.$_terms.link,"Cannot reinitialize schema"),t=fD.ref(t),Wr(t.type==="value"||t.type==="local","Invalid reference type:",t.type),Wr(t.type==="local"||t.ancestor==="root"||t.ancestor>0,"Link cannot reference itself");let e=this.clone();return e.$_terms.link=[{ref:t}],e}},relative:{method(t=!0){return this.$_setFlag("relative",t)}}},overrides:{concat(t){Wr(this.$_terms.link,"Uninitialized link schema"),Wr(dD.isSchema(t),"Invalid schema object"),Wr(t.type!=="link","Cannot merge type link with another link");let e=this.clone();return e.$_terms.whens||(e.$_terms.whens=[]),e.$_terms.whens.push({concat:t}),e.$_mutateRebuild()}},manifest:{build(t,e){return Wr(e.link,"Invalid link description missing link"),t.ref(e.link)}}});Gr.generate=function(t,e,n,r){let i=n.mainstay.links.get(t);if(i)return i._generate(e,n,r).schema;let s=t.$_terms.link[0].ref,{perspective:o,path:a}=Gr.perspective(s,n);Gr.assert(o,"which is outside of schema boundaries",s,t,n,r);try{i=a.length?o.$_reach(a):o}catch{Gr.assert(!1,"to non-existing schema",s,t,n,r)}return Gr.assert(i.type!=="link","which is another link",s,t,n,r),t._flags.relative||n.mainstay.links.set(t,i),i._generate(e,n,r).schema};Gr.perspective=function(t,e){if(t.type==="local"){for(let{schema:n,key:r}of e.schemas){if((n._flags.id||r)===t.path[0])return{perspective:n,path:t.path.slice(1)};if(n.$_terms.shared){for(let s of n.$_terms.shared)if(s._flags.id===t.path[0])return{perspective:s,path:t.path.slice(1)}}}return{perspective:null,path:null}}return t.ancestor==="root"?{perspective:e.schemas[e.schemas.length-1].schema,path:t.path}:{perspective:e.schemas[t.ancestor]&&e.schemas[t.ancestor].schema,path:t.path}};Gr.assert=function(t,e,n,r,i,s){t||Wr(!1,`"${pD.label(r._flags,i,s)}" contains link reference "${n.display}" ${e}`)}});var o0=g((E5,s0)=>{"use strict";var wm=Ie(),hD=Bn(),Em=Qe(),En={numberRx:/^\s*[+-]?(?:(?:\d+(?:\.\d*)?)|(?:\.\d+))(?:e([+-]?\d+))?\s*$/i,precisionRx:/(?:\.(\d+))?(?:[eE]([+-]?\d+))?$/,exponentialPartRegex:/[eE][+-]?\d+$/,leadingSignAndZerosRegex:/^[+-]?(0*)?/,dotRegex:/\./,trailingZerosRegex:/0+$/,decimalPlaces(t){let e=t.toString(),n=e.indexOf("."),r=e.indexOf("e");return(n<0?0:(r<0?e.length:r)-n-1)+(r<0?0:Math.max(0,-parseInt(e.slice(r+1))))}};s0.exports=hD.extend({type:"number",flags:{unsafe:{default:!1}},coerce:{from:"string",method(t,{schema:e,error:n}){if(!t.match(En.numberRx))return;t=t.trim();let i={value:parseFloat(t)};if(i.value===0&&(i.value=0),!e._flags.unsafe)if(t.match(/e/i)){if(En.extractSignificantDigits(t)!==En.extractSignificantDigits(String(i.value)))return i.errors=n("number.unsafe"),i}else{let s=i.value.toString();if(s.match(/e/i))return i;if(s!==En.normalizeDecimal(t))return i.errors=n("number.unsafe"),i}return i}},validate(t,{schema:e,error:n,prefs:r}){if(t===1/0||t===-1/0)return{value:t,errors:n("number.infinity")};if(!Em.isNumber(t))return{value:t,errors:n("number.base")};let i={value:t};if(r.convert){let s=e.$_getRule("precision");if(s){let o=Math.pow(10,s.args.limit);i.value=Math.round(i.value*o)/o}}return i.value===0&&(i.value=0),!e._flags.unsafe&&(t>Number.MAX_SAFE_INTEGER||t<Number.MIN_SAFE_INTEGER)&&(i.errors=n("number.unsafe")),i},rules:{compare:{method:!1,validate(t,e,{limit:n},{name:r,operator:i,args:s}){return Em.compare(t,n,i)?t:e.error("number."+r,{limit:s.limit,value:t})},args:[{name:"limit",ref:!0,assert:Em.isNumber,message:"must be a number"}]},greater:{method(t){return this.$_addRule({name:"greater",method:"compare",args:{limit:t},operator:">"})}},integer:{method(){return this.$_addRule("integer")},validate(t,e){return Math.trunc(t)-t===0?t:e.error("number.integer")}},less:{method(t){return this.$_addRule({name:"less",method:"compare",args:{limit:t},operator:"<"})}},max:{method(t){return this.$_addRule({name:"max",method:"compare",args:{limit:t},operator:"<="})}},min:{method(t){return this.$_addRule({name:"min",method:"compare",args:{limit:t},operator:">="})}},multiple:{method(t){let e=typeof t=="number"?En.decimalPlaces(t):null,n=Math.pow(10,e);return this.$_addRule({name:"multiple",args:{base:t,baseDecimalPlace:e,pfactor:n}})},validate(t,e,{base:n,baseDecimalPlace:r,pfactor:i},s){return En.decimalPlaces(t)>r?e.error("number.multiple",{multiple:s.args.base,value:t}):Math.round(i*t)%Math.round(i*n)===0?t:e.error("number.multiple",{multiple:s.args.base,value:t})},args:[{name:"base",ref:!0,assert:t=>typeof t=="number"&&isFinite(t)&&t>0,message:"must be a positive number"},"baseDecimalPlace","pfactor"],multi:!0},negative:{method(){return this.sign("negative")}},port:{method(){return this.$_addRule("port")},validate(t,e){return Number.isSafeInteger(t)&&t>=0&&t<=65535?t:e.error("number.port")}},positive:{method(){return this.sign("positive")}},precision:{method(t){return wm(Number.isSafeInteger(t),"limit must be an integer"),this.$_addRule({name:"precision",args:{limit:t}})},validate(t,e,{limit:n}){let r=t.toString().match(En.precisionRx);return Math.max((r[1]?r[1].length:0)-(r[2]?parseInt(r[2],10):0),0)<=n?t:e.error("number.precision",{limit:n,value:t})},convert:!0},sign:{method(t){return wm(["negative","positive"].includes(t),"Invalid sign",t),this.$_addRule({name:"sign",args:{sign:t}})},validate(t,e,{sign:n}){return n==="negative"&&t<0||n==="positive"&&t>0?t:e.error(`number.${n}`)}},unsafe:{method(t=!0){return wm(typeof t=="boolean","enabled must be a boolean"),this.$_setFlag("unsafe",t)}}},cast:{string:{from:t=>typeof t=="number",to(t,e){return t.toString()}}},messages:{"number.base":"{{#label}} must be a number","number.greater":"{{#label}} must be greater than {{#limit}}","number.infinity":"{{#label}} cannot be infinity","number.integer":"{{#label}} must be an integer","number.less":"{{#label}} must be less than {{#limit}}","number.max":"{{#label}} must be less than or equal to {{#limit}}","number.min":"{{#label}} must be greater than or equal to {{#limit}}","number.multiple":"{{#label}} must be a multiple of {{#multiple}}","number.negative":"{{#label}} must be a negative number","number.port":"{{#label}} must be a valid port","number.positive":"{{#label}} must be a positive number","number.precision":"{{#label}} must have no more than {{#limit}} decimal places","number.unsafe":"{{#label}} must be a safe number"}});En.extractSignificantDigits=function(t){return t.replace(En.exponentialPartRegex,"").replace(En.dotRegex,"").replace(En.trailingZerosRegex,"").replace(En.leadingSignAndZerosRegex,"")};En.normalizeDecimal=function(t){return t=t.replace(/^\+/,"").replace(/\.0*$/,"").replace(/^(-?)\.([^\.]*)$/,"$10.$2").replace(/^(-?)0+([0-9])/,"$1$2"),t.includes(".")&&t.endsWith("0")&&(t=t.replace(/0+$/,"")),t==="-0"?"0":t}});var u0=g((A5,a0)=>{"use strict";var gD=km();a0.exports=gD.extend({type:"object",cast:{map:{from:t=>t&&typeof t=="object",to(t,e){return new Map(Object.entries(t))}}}})});var Am=g(Pl=>{"use strict";Pl.codes={EMPTY_STRING:"Address must be a non-empty string",FORBIDDEN_UNICODE:"Address contains forbidden Unicode characters",MULTIPLE_AT_CHAR:"Address cannot contain more than one @ character",MISSING_AT_CHAR:"Address must contain one @ character",EMPTY_LOCAL:"Address local part cannot be empty",ADDRESS_TOO_LONG:"Address too long",LOCAL_TOO_LONG:"Address local part too long",EMPTY_LOCAL_SEGMENT:"Address local part contains empty dot-separated segment",INVALID_LOCAL_CHARS:"Address local part contains invalid character",DOMAIN_NON_EMPTY_STRING:"Domain must be a non-empty string",DOMAIN_TOO_LONG:"Domain too long",DOMAIN_INVALID_UNICODE_CHARS:"Domain contains forbidden Unicode characters",DOMAIN_INVALID_CHARS:"Domain contains invalid character",DOMAIN_INVALID_TLDS_CHARS:"Domain contains invalid tld character",DOMAIN_SEGMENTS_COUNT:"Domain lacks the minimum required number of segments",DOMAIN_SEGMENTS_COUNT_MAX:"Domain contains too many segments",DOMAIN_FORBIDDEN_TLDS:"Domain uses forbidden TLD",DOMAIN_EMPTY_SEGMENT:"Domain contains empty dot-separated segment",DOMAIN_LONG_SEGMENT:"Domain contains dot-separated segment that is too long"};Pl.code=function(t){return{code:t,error:Pl.codes[t]}}});var Om=g(Dl=>{"use strict";var mD=require("url"),ir=Am(),Si={minDomainSegments:2,nonAsciiRx:/[^\x00-\x7f]/,domainControlRx:/[\x00-\x20@\:\/\\#!\$&\'\(\)\*\+,;=\?]/,tldSegmentRx:/^[a-zA-Z](?:[a-zA-Z0-9\-]*[a-zA-Z0-9])?$/,domainSegmentRx:/^[a-zA-Z0-9](?:[a-zA-Z0-9\-]*[a-zA-Z0-9])?$/,URL:mD.URL||URL};Dl.analyze=function(t,e={}){if(!t)return ir.code("DOMAIN_NON_EMPTY_STRING");if(typeof t!="string")throw new Error("Invalid input: domain must be a string");if(t.length>256)return ir.code("DOMAIN_TOO_LONG");if(!!Si.nonAsciiRx.test(t)){if(e.allowUnicode===!1)return ir.code("DOMAIN_INVALID_UNICODE_CHARS");t=t.normalize("NFC")}if(Si.domainControlRx.test(t))return ir.code("DOMAIN_INVALID_CHARS");t=Si.punycode(t),e.allowFullyQualified&&t[t.length-1]==="."&&(t=t.slice(0,-1));let r=e.minDomainSegments||Si.minDomainSegments,i=t.split(".");if(i.length<r)return ir.code("DOMAIN_SEGMENTS_COUNT");if(e.maxDomainSegments&&i.length>e.maxDomainSegments)return ir.code("DOMAIN_SEGMENTS_COUNT_MAX");let s=e.tlds;if(s){let o=i[i.length-1].toLowerCase();if(s.deny&&s.deny.has(o)||s.allow&&!s.allow.has(o))return ir.code("DOMAIN_FORBIDDEN_TLDS")}for(let o=0;o<i.length;++o){let a=i[o];if(!a.length)return ir.code("DOMAIN_EMPTY_SEGMENT");if(a.length>63)return ir.code("DOMAIN_LONG_SEGMENT");if(o<i.length-1){if(!Si.domainSegmentRx.test(a))return ir.code("DOMAIN_INVALID_CHARS")}else if(!Si.tldSegmentRx.test(a))return ir.code("DOMAIN_INVALID_TLDS_CHARS")}return null};Dl.isValid=function(t,e){return!Dl.analyze(t,e)};Si.punycode=function(t){t.includes("%")&&(t=t.replace(/%/g,"%25"));try{return new Si.URL(`http://${t}`).host}catch{return t}}});var c0=g(Cm=>{"use strict";var yD=require("util"),bD=Om(),xr=Am(),sn={nonAsciiRx:/[^\x00-\x7f]/,encoder:new(yD.TextEncoder||TextEncoder)};Cm.analyze=function(t,e){return sn.email(t,e)};Cm.isValid=function(t,e){return!sn.email(t,e)};sn.email=function(t,e={}){if(typeof t!="string")throw new Error("Invalid input: email must be a string");if(!t)return xr.code("EMPTY_STRING");let n=!sn.nonAsciiRx.test(t);if(!n){if(e.allowUnicode===!1)return xr.code("FORBIDDEN_UNICODE");t=t.normalize("NFC")}let r=t.split("@");if(r.length!==2)return r.length>2?xr.code("MULTIPLE_AT_CHAR"):xr.code("MISSING_AT_CHAR");let[i,s]=r;if(!i)return xr.code("EMPTY_LOCAL");if(!e.ignoreLength){if(t.length>254)return xr.code("ADDRESS_TOO_LONG");if(sn.encoder.encode(i).length>64)return xr.code("LOCAL_TOO_LONG")}return sn.local(i,n)||bD.analyze(s,e)};sn.local=function(t,e){let n=t.split(".");for(let r of n){if(!r.length)return xr.code("EMPTY_LOCAL_SEGMENT");if(e){if(!sn.atextRx.test(r))return xr.code("INVALID_LOCAL_CHARS");continue}for(let i of r){if(sn.atextRx.test(i))continue;let s=sn.binary(i);if(!sn.atomRx.test(s))return xr.code("INVALID_LOCAL_CHARS")}}};sn.binary=function(t){return Array.from(sn.encoder.encode(t)).map(e=>String.fromCharCode(e)).join("")};sn.atextRx=/^[\w!#\$%&'\*\+\-/=\?\^`\{\|\}~]+$/;sn.atomRx=new RegExp(["(?:[\\xc2-\\xdf][\\x80-\\xbf])","(?:\\xe0[\\xa0-\\xbf][\\x80-\\xbf])|(?:[\\xe1-\\xec][\\x80-\\xbf]{2})|(?:\\xed[\\x80-\\x9f][\\x80-\\xbf])|(?:[\\xee-\\xef][\\x80-\\xbf]{2})","(?:\\xf0[\\x90-\\xbf][\\x80-\\xbf]{2})|(?:[\\xf1-\\xf3][\\x80-\\xbf]{3})|(?:\\xf4[\\x80-\\x8f][\\x80-\\xbf]{2})"].join("|"))});var Rm=g((P5,l0)=>{"use strict";l0.exports=function(t){return t.replace(/[\^\$\.\*\+\-\?\=\!\:\|\\\/\(\)\[\]\{\}\,]/g,"\\$&")}});var Dm=g(Pm=>{"use strict";var Il=Ie(),vD=Rm(),Bt={};Bt.generate=function(){let t={},e="\\dA-Fa-f",n="["+e+"]",r="\\w-\\.~",i="!\\$&'\\(\\)\\*\\+,;=",s="%"+e,o=r+s+i+":@",a="["+o+"]",u="(?:0{0,2}\\d|0?[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])";t.ipv4address="(?:"+u+"\\.){3}"+u;let c=n+"{1,4}",l="(?:"+c+":"+c+"|"+t.ipv4address+")",d="(?:"+c+":){6}"+l,p="::(?:"+c+":){5}"+l,b="(?:"+c+")?::(?:"+c+":){4}"+l,_="(?:(?:"+c+":){0,1}"+c+")?::(?:"+c+":){3}"+l,E="(?:(?:"+c+":){0,2}"+c+")?::(?:"+c+":){2}"+l,L="(?:(?:"+c+":){0,3}"+c+")?::"+c+":"+l,M="(?:(?:"+c+":){0,4}"+c+")?::"+l,x="(?:(?:"+c+":){0,5}"+c+")?::"+c,k="(?:(?:"+c+":){0,6}"+c+")?::";t.ipv4Cidr="(?:\\d|[1-2]\\d|3[0-2])",t.ipv6Cidr="(?:0{0,2}\\d|0?[1-9]\\d|1[01]\\d|12[0-8])",t.ipv6address="(?:"+d+"|"+p+"|"+b+"|"+_+"|"+E+"|"+L+"|"+M+"|"+x+"|"+k+")",t.ipvFuture="v"+n+"+\\.["+r+i+":]+",t.scheme="[a-zA-Z][a-zA-Z\\d+-\\.]*",t.schemeRegex=new RegExp(t.scheme);let v="["+r+s+i+":]*",F="\\[(?:"+t.ipv6address+"|"+t.ipvFuture+")\\]",C="["+r+s+i+"]{1,255}",V="(?:"+F+"|"+t.ipv4address+"|"+C+")",ce="\\d*",ye="(?:"+v+"@)?"+V+"(?::"+ce+")?",K="(?:"+v+"@)?("+V+")(?::"+ce+")?",A=a+"*",D=a+"+",I="["+r+s+i+"@]+",j="",he="(?:\\/"+A+")*",fe="\\/(?:"+D+he+")?",Dt=D+he,mt=I+he,$e="(?:\\/\\/\\/"+A+he+")";return t.hierPart="(?:(?:\\/\\/"+ye+he+")|"+fe+"|"+Dt+"|"+$e+")",t.hierPartCapture="(?:(?:\\/\\/"+K+he+")|"+fe+"|"+Dt+")",t.relativeRef="(?:(?:\\/\\/"+ye+he+")|"+fe+"|"+mt+"|"+j+")",t.relativeRefCapture="(?:(?:\\/\\/"+K+he+")|"+fe+"|"+mt+"|"+j+")",t.query="["+o+"\\/\\?]*(?=#|$)",t.queryWithSquareBrackets="["+o+"\\[\\]\\/\\?]*(?=#|$)",t.fragment="["+o+"\\/\\?]*",t};Bt.rfc3986=Bt.generate();Pm.ip={v4Cidr:Bt.rfc3986.ipv4Cidr,v6Cidr:Bt.rfc3986.ipv6Cidr,ipv4:Bt.rfc3986.ipv4address,ipv6:Bt.rfc3986.ipv6address,ipvfuture:Bt.rfc3986.ipvFuture};Bt.createRegex=function(t){let e=Bt.rfc3986,r="(?:\\?"+(t.allowQuerySquareBrackets?e.queryWithSquareBrackets:e.query)+")?(?:#"+e.fragment+")?",i=t.domain?e.relativeRefCapture:e.relativeRef;if(t.relativeOnly)return Bt.wrap(i+r);let s="";if(t.scheme){Il(t.scheme instanceof RegExp||typeof t.scheme=="string"||Array.isArray(t.scheme),"scheme must be a RegExp, String, or Array");let c=[].concat(t.scheme);Il(c.length>=1,"scheme must have at least 1 scheme specified");let l=[];for(let d=0;d<c.length;++d){let p=c[d];Il(p instanceof RegExp||typeof p=="string","scheme at position "+d+" must be a RegExp or String"),p instanceof RegExp?l.push(p.source.toString()):(Il(e.schemeRegex.test(p),"scheme at position "+d+" must be a valid scheme"),l.push(vD(p)))}s=l.join("|")}let a="(?:"+(s?"(?:"+s+")":e.scheme)+":"+(t.domain?e.hierPartCapture:e.hierPart)+")",u=t.allowRelative?"(?:"+a+"|"+i+")":a;return Bt.wrap(u+r,s)};Bt.wrap=function(t,e){return t=`(?=.)(?!https?:/(?:$|[^/]))(?!https?:///)(?!https?:[^/])${t}`,{raw:t,regex:new RegExp(`^${t}$`),scheme:e}};Bt.uriRegex=Bt.createRegex({});Pm.regex=function(t={}){return t.scheme||t.allowRelative||t.relativeOnly||t.allowQuerySquareBrackets||t.domain?Bt.createRegex(t):Bt.uriRegex}});var f0=g(d0=>{"use strict";var so=Ie(),Aa=Dm();d0.regex=function(t={}){so(t.cidr===void 0||typeof t.cidr=="string","options.cidr must be a string");let e=t.cidr?t.cidr.toLowerCase():"optional";so(["required","optional","forbidden"].includes(e),"options.cidr must be one of required, optional, forbidden"),so(t.version===void 0||typeof t.version=="string"||Array.isArray(t.version),"options.version must be a string or an array of string");let n=t.version||["ipv4","ipv6","ipvfuture"];Array.isArray(n)||(n=[n]),so(n.length>=1,"options.version must have at least 1 version specified");for(let o=0;o<n.length;++o)so(typeof n[o]=="string","options.version must only contain strings"),n[o]=n[o].toLowerCase(),so(["ipv4","ipv6","ipvfuture"].includes(n[o]),"options.version contains unknown version "+n[o]+" - must be one of ipv4, ipv6, ipvfuture");n=Array.from(new Set(n));let i=`(?:${n.map(o=>{if(e==="forbidden")return Aa.ip[o];let a=`\\/${o==="ipv4"?Aa.ip.v4Cidr:Aa.ip.v6Cidr}`;return e==="required"?`${Aa.ip[o]}${a}`:`${Aa.ip[o]}(?:${a})?`}).join("|")})`,s=new RegExp(`^${i}$`);return{cidr:e,versions:n,regex:s,raw:i}}});var g0=g((M5,h0)=>{"use strict";var p0={};p0.tlds=["AAA","AARP","ABB","ABBOTT","ABBVIE","ABC","ABLE","ABOGADO","ABUDHABI","AC","ACADEMY","ACCENTURE","ACCOUNTANT","ACCOUNTANTS","ACO","ACTOR","AD","ADS","ADULT","AE","AEG","AERO","AETNA","AF","AFL","AFRICA","AG","AGAKHAN","AGENCY","AI","AIG","AIRBUS","AIRFORCE","AIRTEL","AKDN","AL","ALIBABA","ALIPAY","ALLFINANZ","ALLSTATE","ALLY","ALSACE","ALSTOM","AM","AMAZON","AMERICANEXPRESS","AMERICANFAMILY","AMEX","AMFAM","AMICA","AMSTERDAM","ANALYTICS","ANDROID","ANQUAN","ANZ","AO","AOL","APARTMENTS","APP","APPLE","AQ","AQUARELLE","AR","ARAB","ARAMCO","ARCHI","ARMY","ARPA","ART","ARTE","AS","ASDA","ASIA","ASSOCIATES","AT","ATHLETA","ATTORNEY","AU","AUCTION","AUDI","AUDIBLE","AUDIO","AUSPOST","AUTHOR","AUTO","AUTOS","AVIANCA","AW","AWS","AX","AXA","AZ","AZURE","BA","BABY","BAIDU","BANAMEX","BAND","BANK","BAR","BARCELONA","BARCLAYCARD","BARCLAYS","BAREFOOT","BARGAINS","BASEBALL","BASKETBALL","BAUHAUS","BAYERN","BB","BBC","BBT","BBVA","BCG","BCN","BD","BE","BEATS","BEAUTY","BEER","BENTLEY","BERLIN","BEST","BESTBUY","BET","BF","BG","BH","BHARTI","BI","BIBLE","BID","BIKE","BING","BINGO","BIO","BIZ","BJ","BLACK","BLACKFRIDAY","BLOCKBUSTER","BLOG","BLOOMBERG","BLUE","BM","BMS","BMW","BN","BNPPARIBAS","BO","BOATS","BOEHRINGER","BOFA","BOM","BOND","BOO","BOOK","BOOKING","BOSCH","BOSTIK","BOSTON","BOT","BOUTIQUE","BOX","BR","BRADESCO","BRIDGESTONE","BROADWAY","BROKER","BROTHER","BRUSSELS","BS","BT","BUILD","BUILDERS","BUSINESS","BUY","BUZZ","BV","BW","BY","BZ","BZH","CA","CAB","CAFE","CAL","CALL","CALVINKLEIN","CAM","CAMERA","CAMP","CANON","CAPETOWN","CAPITAL","CAPITALONE","CAR","CARAVAN","CARDS","CARE","CAREER","CAREERS","CARS","CASA","CASE","CASH","CASINO","CAT","CATERING","CATHOLIC","CBA","CBN","CBRE","CC","CD","CENTER","CEO","CERN","CF","CFA","CFD","CG","CH","CHANEL","CHANNEL","CHARITY","CHASE","CHAT","CHEAP","CHINTAI","CHRISTMAS","CHROME","CHURCH","CI","CIPRIANI","CIRCLE","CISCO","CITADEL","CITI","CITIC","CITY","CK","CL","CLAIMS","CLEANING","CLICK","CLINIC","CLINIQUE","CLOTHING","CLOUD","CLUB","CLUBMED","CM","CN","CO","COACH","CODES","COFFEE","COLLEGE","COLOGNE","COM","COMCAST","COMMBANK","COMMUNITY","COMPANY","COMPARE","COMPUTER","COMSEC","CONDOS","CONSTRUCTION","CONSULTING","CONTACT","CONTRACTORS","COOKING","COOL","COOP","CORSICA","COUNTRY","COUPON","COUPONS","COURSES","CPA","CR","CREDIT","CREDITCARD","CREDITUNION","CRICKET","CROWN","CRS","CRUISE","CRUISES","CU","CUISINELLA","CV","CW","CX","CY","CYMRU","CYOU","CZ","DABUR","DAD","DANCE","DATA","DATE","DATING","DATSUN","DAY","DCLK","DDS","DE","DEAL","DEALER","DEALS","DEGREE","DELIVERY","DELL","DELOITTE","DELTA","DEMOCRAT","DENTAL","DENTIST","DESI","DESIGN","DEV","DHL","DIAMONDS","DIET","DIGITAL","DIRECT","DIRECTORY","DISCOUNT","DISCOVER","DISH","DIY","DJ","DK","DM","DNP","DO","DOCS","DOCTOR","DOG","DOMAINS","DOT","DOWNLOAD","DRIVE","DTV","DUBAI","DUNLOP","DUPONT","DURBAN","DVAG","DVR","DZ","EARTH","EAT","EC","ECO","EDEKA","EDU","EDUCATION","EE","EG","EMAIL","EMERCK","ENERGY","ENGINEER","ENGINEERING","ENTERPRISES","EPSON","EQUIPMENT","ER","ERICSSON","ERNI","ES","ESQ","ESTATE","ET","EU","EUROVISION","EUS","EVENTS","EXCHANGE","EXPERT","EXPOSED","EXPRESS","EXTRASPACE","FAGE","FAIL","FAIRWINDS","FAITH","FAMILY","FAN","FANS","FARM","FARMERS","FASHION","FAST","FEDEX","FEEDBACK","FERRARI","FERRERO","FI","FIDELITY","FIDO","FILM","FINAL","FINANCE","FINANCIAL","FIRE","FIRESTONE","FIRMDALE","FISH","FISHING","FIT","FITNESS","FJ","FK","FLICKR","FLIGHTS","FLIR","FLORIST","FLOWERS","FLY","FM","FO","FOO","FOOD","FOOTBALL","FORD","FOREX","FORSALE","FORUM","FOUNDATION","FOX","FR","FREE","FRESENIUS","FRL","FROGANS","FRONTIER","FTR","FUJITSU","FUN","FUND","FURNITURE","FUTBOL","FYI","GA","GAL","GALLERY","GALLO","GALLUP","GAME","GAMES","GAP","GARDEN","GAY","GB","GBIZ","GD","GDN","GE","GEA","GENT","GENTING","GEORGE","GF","GG","GGEE","GH","GI","GIFT","GIFTS","GIVES","GIVING","GL","GLASS","GLE","GLOBAL","GLOBO","GM","GMAIL","GMBH","GMO","GMX","GN","GODADDY","GOLD","GOLDPOINT","GOLF","GOO","GOODYEAR","GOOG","GOOGLE","GOP","GOT","GOV","GP","GQ","GR","GRAINGER","GRAPHICS","GRATIS","GREEN","GRIPE","GROCERY","GROUP","GS","GT","GU","GUARDIAN","GUCCI","GUGE","GUIDE","GUITARS","GURU","GW","GY","HAIR","HAMBURG","HANGOUT","HAUS","HBO","HDFC","HDFCBANK","HEALTH","HEALTHCARE","HELP","HELSINKI","HERE","HERMES","HIPHOP","HISAMITSU","HITACHI","HIV","HK","HKT","HM","HN","HOCKEY","HOLDINGS","HOLIDAY","HOMEDEPOT","HOMEGOODS","HOMES","HOMESENSE","HONDA","HORSE","HOSPITAL","HOST","HOSTING","HOT","HOTELS","HOTMAIL","HOUSE","HOW","HR","HSBC","HT","HU","HUGHES","HYATT","HYUNDAI","IBM","ICBC","ICE","ICU","ID","IE","IEEE","IFM","IKANO","IL","IM","IMAMAT","IMDB","IMMO","IMMOBILIEN","IN","INC","INDUSTRIES","INFINITI","INFO","ING","INK","INSTITUTE","INSURANCE","INSURE","INT","INTERNATIONAL","INTUIT","INVESTMENTS","IO","IPIRANGA","IQ","IR","IRISH","IS","ISMAILI","IST","ISTANBUL","IT","ITAU","ITV","JAGUAR","JAVA","JCB","JE","JEEP","JETZT","JEWELRY","JIO","JLL","JM","JMP","JNJ","JO","JOBS","JOBURG","JOT","JOY","JP","JPMORGAN","JPRS","JUEGOS","JUNIPER","KAUFEN","KDDI","KE","KERRYHOTELS","KERRYLOGISTICS","KERRYPROPERTIES","KFH","KG","KH","KI","KIA","KIDS","KIM","KINDLE","KITCHEN","KIWI","KM","KN","KOELN","KOMATSU","KOSHER","KP","KPMG","KPN","KR","KRD","KRED","KUOKGROUP","KW","KY","KYOTO","KZ","LA","LACAIXA","LAMBORGHINI","LAMER","LANCASTER","LAND","LANDROVER","LANXESS","LASALLE","LAT","LATINO","LATROBE","LAW","LAWYER","LB","LC","LDS","LEASE","LECLERC","LEFRAK","LEGAL","LEGO","LEXUS","LGBT","LI","LIDL","LIFE","LIFEINSURANCE","LIFESTYLE","LIGHTING","LIKE","LILLY","LIMITED","LIMO","LINCOLN","LINK","LIPSY","LIVE","LIVING","LK","LLC","LLP","LOAN","LOANS","LOCKER","LOCUS","LOL","LONDON","LOTTE","LOTTO","LOVE","LPL","LPLFINANCIAL","LR","LS","LT","LTD","LTDA","LU","LUNDBECK","LUXE","LUXURY","LV","LY","MA","MADRID","MAIF","MAISON","MAKEUP","MAN","MANAGEMENT","MANGO","MAP","MARKET","MARKETING","MARKETS","MARRIOTT","MARSHALLS","MATTEL","MBA","MC","MCKINSEY","MD","ME","MED","MEDIA","MEET","MELBOURNE","MEME","MEMORIAL","MEN","MENU","MERCKMSD","MG","MH","MIAMI","MICROSOFT","MIL","MINI","MINT","MIT","MITSUBISHI","MK","ML","MLB","MLS","MM","MMA","MN","MO","MOBI","MOBILE","MODA","MOE","MOI","MOM","MONASH","MONEY","MONSTER","MORMON","MORTGAGE","MOSCOW","MOTO","MOTORCYCLES","MOV","MOVIE","MP","MQ","MR","MS","MSD","MT","MTN","MTR","MU","MUSEUM","MUSIC","MV","MW","MX","MY","MZ","NA","NAB","NAGOYA","NAME","NATURA","NAVY","NBA","NC","NE","NEC","NET","NETBANK","NETFLIX","NETWORK","NEUSTAR","NEW","NEWS","NEXT","NEXTDIRECT","NEXUS","NF","NFL","NG","NGO","NHK","NI","NICO","NIKE","NIKON","NINJA","NISSAN","NISSAY","NL","NO","NOKIA","NORTON","NOW","NOWRUZ","NOWTV","NP","NR","NRA","NRW","NTT","NU","NYC","NZ","OBI","OBSERVER","OFFICE","OKINAWA","OLAYAN","OLAYANGROUP","OLLO","OM","OMEGA","ONE","ONG","ONL","ONLINE","OOO","OPEN","ORACLE","ORANGE","ORG","ORGANIC","ORIGINS","OSAKA","OTSUKA","OTT","OVH","PA","PAGE","PANASONIC","PARIS","PARS","PARTNERS","PARTS","PARTY","PAY","PCCW","PE","PET","PF","PFIZER","PG","PH","PHARMACY","PHD","PHILIPS","PHONE","PHOTO","PHOTOGRAPHY","PHOTOS","PHYSIO","PICS","PICTET","PICTURES","PID","PIN","PING","PINK","PIONEER","PIZZA","PK","PL","PLACE","PLAY","PLAYSTATION","PLUMBING","PLUS","PM","PN","PNC","POHL","POKER","POLITIE","PORN","POST","PR","PRAMERICA","PRAXI","PRESS","PRIME","PRO","PROD","PRODUCTIONS","PROF","PROGRESSIVE","PROMO","PROPERTIES","PROPERTY","PROTECTION","PRU","PRUDENTIAL","PS","PT","PUB","PW","PWC","PY","QA","QPON","QUEBEC","QUEST","RACING","RADIO","RE","READ","REALESTATE","REALTOR","REALTY","RECIPES","RED","REDSTONE","REDUMBRELLA","REHAB","REISE","REISEN","REIT","RELIANCE","REN","RENT","RENTALS","REPAIR","REPORT","REPUBLICAN","REST","RESTAURANT","REVIEW","REVIEWS","REXROTH","RICH","RICHARDLI","RICOH","RIL","RIO","RIP","RO","ROCKS","RODEO","ROGERS","ROOM","RS","RSVP","RU","RUGBY","RUHR","RUN","RW","RWE","RYUKYU","SA","SAARLAND","SAFE","SAFETY","SAKURA","SALE","SALON","SAMSCLUB","SAMSUNG","SANDVIK","SANDVIKCOROMANT","SANOFI","SAP","SARL","SAS","SAVE","SAXO","SB","SBI","SBS","SC","SCB","SCHAEFFLER","SCHMIDT","SCHOLARSHIPS","SCHOOL","SCHULE","SCHWARZ","SCIENCE","SCOT","SD","SE","SEARCH","SEAT","SECURE","SECURITY","SEEK","SELECT","SENER","SERVICES","SEVEN","SEW","SEX","SEXY","SFR","SG","SH","SHANGRILA","SHARP","SHAW","SHELL","SHIA","SHIKSHA","SHOES","SHOP","SHOPPING","SHOUJI","SHOW","SI","SILK","SINA","SINGLES","SITE","SJ","SK","SKI","SKIN","SKY","SKYPE","SL","SLING","SM","SMART","SMILE","SN","SNCF","SO","SOCCER","SOCIAL","SOFTBANK","SOFTWARE","SOHU","SOLAR","SOLUTIONS","SONG","SONY","SOY","SPA","SPACE","SPORT","SPOT","SR","SRL","SS","ST","STADA","STAPLES","STAR","STATEBANK","STATEFARM","STC","STCGROUP","STOCKHOLM","STORAGE","STORE","STREAM","STUDIO","STUDY","STYLE","SU","SUCKS","SUPPLIES","SUPPLY","SUPPORT","SURF","SURGERY","SUZUKI","SV","SWATCH","SWISS","SX","SY","SYDNEY","SYSTEMS","SZ","TAB","TAIPEI","TALK","TAOBAO","TARGET","TATAMOTORS","TATAR","TATTOO","TAX","TAXI","TC","TCI","TD","TDK","TEAM","TECH","TECHNOLOGY","TEL","TEMASEK","TENNIS","TEVA","TF","TG","TH","THD","THEATER","THEATRE","TIAA","TICKETS","TIENDA","TIPS","TIRES","TIROL","TJ","TJMAXX","TJX","TK","TKMAXX","TL","TM","TMALL","TN","TO","TODAY","TOKYO","TOOLS","TOP","TORAY","TOSHIBA","TOTAL","TOURS","TOWN","TOYOTA","TOYS","TR","TRADE","TRADING","TRAINING","TRAVEL","TRAVELERS","TRAVELERSINSURANCE","TRUST","TRV","TT","TUBE","TUI","TUNES","TUSHU","TV","TVS","TW","TZ","UA","UBANK","UBS","UG","UK","UNICOM","UNIVERSITY","UNO","UOL","UPS","US","UY","UZ","VA","VACATIONS","VANA","VANGUARD","VC","VE","VEGAS","VENTURES","VERISIGN","VERSICHERUNG","VET","VG","VI","VIAJES","VIDEO","VIG","VIKING","VILLAS","VIN","VIP","VIRGIN","VISA","VISION","VIVA","VIVO","VLAANDEREN","VN","VODKA","VOLVO","VOTE","VOTING","VOTO","VOYAGE","VU","WALES","WALMART","WALTER","WANG","WANGGOU","WATCH","WATCHES","WEATHER","WEATHERCHANNEL","WEBCAM","WEBER","WEBSITE","WED","WEDDING","WEIBO","WEIR","WF","WHOSWHO","WIEN","WIKI","WILLIAMHILL","WIN","WINDOWS","WINE","WINNERS","WME","WOLTERSKLUWER","WOODSIDE","WORK","WORKS","WORLD","WOW","WS","WTC","WTF","XBOX","XEROX","XFINITY","XIHUAN","XIN","XN--11B4C3D","XN--1CK2E1B","XN--1QQW23A","XN--2SCRJ9C","XN--30RR7Y","XN--3BST00M","XN--3DS443G","XN--3E0B707E","XN--3HCRJ9C","XN--3PXU8K","XN--42C2D9A","XN--45BR5CYL","XN--45BRJ9C","XN--45Q11C","XN--4DBRK0CE","XN--4GBRIM","XN--54B7FTA0CC","XN--55QW42G","XN--55QX5D","XN--5SU34J936BGSG","XN--5TZM5G","XN--6FRZ82G","XN--6QQ986B3XL","XN--80ADXHKS","XN--80AO21A","XN--80AQECDR1A","XN--80ASEHDB","XN--80ASWG","XN--8Y0A063A","XN--90A3AC","XN--90AE","XN--90AIS","XN--9DBQ2A","XN--9ET52U","XN--9KRT00A","XN--B4W605FERD","XN--BCK1B9A5DRE4C","XN--C1AVG","XN--C2BR7G","XN--CCK2B3B","XN--CCKWCXETD","XN--CG4BKI","XN--CLCHC0EA0B2G2A9GCD","XN--CZR694B","XN--CZRS0T","XN--CZRU2D","XN--D1ACJ3B","XN--D1ALF","XN--E1A4C","XN--ECKVDTC9D","XN--EFVY88H","XN--FCT429K","XN--FHBEI","XN--FIQ228C5HS","XN--FIQ64B","XN--FIQS8S","XN--FIQZ9S","XN--FJQ720A","XN--FLW351E","XN--FPCRJ9C3D","XN--FZC2C9E2C","XN--FZYS8D69UVGM","XN--G2XX48C","XN--GCKR3F0F","XN--GECRJ9C","XN--GK3AT1E","XN--H2BREG3EVE","XN--H2BRJ9C","XN--H2BRJ9C8C","XN--HXT814E","XN--I1B6B1A6A2E","XN--IMR513N","XN--IO0A7I","XN--J1AEF","XN--J1AMH","XN--J6W193G","XN--JLQ480N2RG","XN--JVR189M","XN--KCRX77D1X4A","XN--KPRW13D","XN--KPRY57D","XN--KPUT3I","XN--L1ACC","XN--LGBBAT1AD8J","XN--MGB9AWBF","XN--MGBA3A3EJT","XN--MGBA3A4F16A","XN--MGBA7C0BBN0A","XN--MGBAAM7A8H","XN--MGBAB2BD","XN--MGBAH1A3HJKRD","XN--MGBAI9AZGQP6J","XN--MGBAYH7GPA","XN--MGBBH1A","XN--MGBBH1A71E","XN--MGBC0A9AZCG","XN--MGBCA7DZDO","XN--MGBCPQ6GPA1A","XN--MGBERP4A5D4AR","XN--MGBGU82A","XN--MGBI4ECEXP","XN--MGBPL2FH","XN--MGBT3DHD","XN--MGBTX2B","XN--MGBX4CD0AB","XN--MIX891F","XN--MK1BU44C","XN--MXTQ1M","XN--NGBC5AZD","XN--NGBE9E0A","XN--NGBRX","XN--NODE","XN--NQV7F","XN--NQV7FS00EMA","XN--NYQY26A","XN--O3CW4H","XN--OGBPF8FL","XN--OTU796D","XN--P1ACF","XN--P1AI","XN--PGBS0DH","XN--PSSY2U","XN--Q7CE6A","XN--Q9JYB4C","XN--QCKA1PMC","XN--QXA6A","XN--QXAM","XN--RHQV96G","XN--ROVU88B","XN--RVC1E0AM3E","XN--S9BRJ9C","XN--SES554G","XN--T60B56A","XN--TCKWE","XN--TIQ49XQYJ","XN--UNUP4Y","XN--VERMGENSBERATER-CTB","XN--VERMGENSBERATUNG-PWB","XN--VHQUV","XN--VUQ861B","XN--W4R85EL8FHU5DNRA","XN--W4RS40L","XN--WGBH1C","XN--WGBL6A","XN--XHQ521B","XN--XKC2AL3HYE2A","XN--XKC2DL3A5EE0H","XN--Y9A3AQ","XN--YFRO4I67O","XN--YGBI2AMMX","XN--ZFR164B","XXX","XYZ","YACHTS","YAHOO","YAMAXUN","YANDEX","YE","YODOBASHI","YOGA","YOKOHAMA","YOU","YOUTUBE","YT","YUN","ZA","ZAPPOS","ZARA","ZERO","ZIP","ZM","ZONE","ZUERICH","ZW"];h0.exports=new Set(p0.tlds.map(t=>t.toLowerCase()))});var _0=g((L5,v0)=>{"use strict";var Ue=Ie(),Ml=Om(),_D=c0(),b0=f0(),m0=Rm(),y0=g0(),TD=Dm(),SD=Bn(),on=Qe(),Re={tlds:y0 instanceof Set?{tlds:{allow:y0,deny:null}}:!1,base64Regex:{true:{true:/^(?:[\w\-]{2}[\w\-]{2})*(?:[\w\-]{2}==|[\w\-]{3}=)?$/,false:/^(?:[A-Za-z0-9+\/]{2}[A-Za-z0-9+\/]{2})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$/},false:{true:/^(?:[\w\-]{2}[\w\-]{2})*(?:[\w\-]{2}(==)?|[\w\-]{3}=?)?$/,false:/^(?:[A-Za-z0-9+\/]{2}[A-Za-z0-9+\/]{2})*(?:[A-Za-z0-9+\/]{2}(==)?|[A-Za-z0-9+\/]{3}=?)?$/}},dataUriRegex:/^data:[\w+.-]+\/[\w+.-]+;((charset=[\w-]+|base64),)?(.*)$/,hexRegex:{withPrefix:/^0x[0-9a-f]+$/i,withOptionalPrefix:/^(?:0x)?[0-9a-f]+$/i,withoutPrefix:/^[0-9a-f]+$/i},ipRegex:b0.regex({cidr:"forbidden"}).regex,isoDurationRegex:/^P(?!$)(\d+Y)?(\d+M)?(\d+W)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?$/,guidBrackets:{"{":"}","[":"]","(":")","":""},guidVersions:{uuidv1:"1",uuidv2:"2",uuidv3:"3",uuidv4:"4",uuidv5:"5",uuidv6:"6",uuidv7:"7",uuidv8:"8"},guidSeparators:new Set([void 0,!0,!1,"-",":"]),normalizationForms:["NFC","NFD","NFKC","NFKD"]};v0.exports=SD.extend({type:"string",flags:{insensitive:{default:!1},truncate:{default:!1}},terms:{replacements:{init:null}},coerce:{from:"string",method(t,{schema:e,state:n,prefs:r}){let i=e.$_getRule("normalize");i&&(t=t.normalize(i.args.form));let s=e.$_getRule("case");s&&(t=s.args.direction==="upper"?t.toLocaleUpperCase():t.toLocaleLowerCase());let o=e.$_getRule("trim");if(o&&o.args.enabled&&(t=t.trim()),e.$_terms.replacements)for(let u of e.$_terms.replacements)t=t.replace(u.pattern,u.replacement);let a=e.$_getRule("hex");if(a&&a.args.options.byteAligned&&t.length%2!==0&&(t=`0${t}`),e.$_getRule("isoDate")){let u=Re.isoDate(t);u&&(t=u)}if(e._flags.truncate){let u=e.$_getRule("max");if(u){let c=u.args.limit;if(on.isResolvable(c)&&(c=c.resolve(t,n,r),!on.limit(c)))return{value:t,errors:e.$_createError("any.ref",c,{ref:u.args.limit,arg:"limit",reason:"must be a positive integer"},n,r)};t=t.slice(0,c)}}return{value:t}}},validate(t,{schema:e,error:n}){if(typeof t!="string")return{value:t,errors:n("string.base")};if(t===""){let r=e.$_getRule("min");return r&&r.args.limit===0?void 0:{value:t,errors:n("string.empty")}}},rules:{alphanum:{method(){return this.$_addRule("alphanum")},validate(t,e){return/^[a-zA-Z0-9]+$/.test(t)?t:e.error("string.alphanum")}},base64:{method(t={}){return on.assertOptions(t,["paddingRequired","urlSafe"]),t={urlSafe:!1,paddingRequired:!0,...t},Ue(typeof t.paddingRequired=="boolean","paddingRequired must be boolean"),Ue(typeof t.urlSafe=="boolean","urlSafe must be boolean"),this.$_addRule({name:"base64",args:{options:t}})},validate(t,e,{options:n}){return Re.base64Regex[n.paddingRequired][n.urlSafe].test(t)?t:e.error("string.base64")}},case:{method(t){return Ue(["lower","upper"].includes(t),"Invalid case:",t),this.$_addRule({name:"case",args:{direction:t}})},validate(t,e,{direction:n}){return n==="lower"&&t===t.toLocaleLowerCase()||n==="upper"&&t===t.toLocaleUpperCase()?t:e.error(`string.${n}case`)},convert:!0},creditCard:{method(){return this.$_addRule("creditCard")},validate(t,e){let n=t.length,r=0,i=1;for(;n--;){let s=t.charAt(n)*i;r=r+(s-(s>9)*9),i=i^3}return r>0&&r%10===0?t:e.error("string.creditCard")}},dataUri:{method(t={}){return on.assertOptions(t,["paddingRequired"]),t={paddingRequired:!0,...t},Ue(typeof t.paddingRequired=="boolean","paddingRequired must be boolean"),this.$_addRule({name:"dataUri",args:{options:t}})},validate(t,e,{options:n}){let r=t.match(Re.dataUriRegex);return r&&(!r[2]||r[2]!=="base64"||Re.base64Regex[n.paddingRequired].false.test(r[3]))?t:e.error("string.dataUri")}},domain:{method(t){t&&on.assertOptions(t,["allowFullyQualified","allowUnicode","maxDomainSegments","minDomainSegments","tlds"]);let e=Re.addressOptions(t);return this.$_addRule({name:"domain",args:{options:t},address:e})},validate(t,e,n,{address:r}){return Ml.isValid(t,r)?t:e.error("string.domain")}},email:{method(t={}){on.assertOptions(t,["allowFullyQualified","allowUnicode","ignoreLength","maxDomainSegments","minDomainSegments","multiple","separator","tlds"]),Ue(t.multiple===void 0||typeof t.multiple=="boolean","multiple option must be an boolean");let e=Re.addressOptions(t),n=new RegExp(`\\s*[${t.separator?m0(t.separator):","}]\\s*`);return this.$_addRule({name:"email",args:{options:t},regex:n,address:e})},validate(t,e,{options:n},{regex:r,address:i}){let s=n.multiple?t.split(r):[t],o=[];for(let a of s)_D.isValid(a,i)||o.push(a);return o.length?e.error("string.email",{value:t,invalids:o}):t}},guid:{alias:"uuid",method(t={}){on.assertOptions(t,["version","separator"]);let e="";if(t.version){let i=[].concat(t.version);Ue(i.length>=1,"version must have at least 1 valid version specified");let s=new Set;for(let o=0;o<i.length;++o){let a=i[o];Ue(typeof a=="string","version at position "+o+" must be a string");let u=Re.guidVersions[a.toLowerCase()];Ue(u,"version at position "+o+" must be one of "+Object.keys(Re.guidVersions).join(", ")),Ue(!s.has(u),"version at position "+o+" must not be a duplicate"),e+=u,s.add(u)}}Ue(Re.guidSeparators.has(t.separator),'separator must be one of true, false, "-", or ":"');let n=t.separator===void 0?"[:-]?":t.separator===!0?"[:-]":t.separator===!1?"[]?":`\\${t.separator}`,r=new RegExp(`^([\\[{\\(]?)[0-9A-F]{8}(${n})[0-9A-F]{4}\\2?[${e||"0-9A-F"}][0-9A-F]{3}\\2?[${e?"89AB":"0-9A-F"}][0-9A-F]{3}\\2?[0-9A-F]{12}([\\]}\\)]?)$`,"i");return this.$_addRule({name:"guid",args:{options:t},regex:r})},validate(t,e,n,{regex:r}){let i=r.exec(t);return!i||Re.guidBrackets[i[1]]!==i[i.length-1]?e.error("string.guid"):t}},hex:{method(t={}){return on.assertOptions(t,["byteAligned","prefix"]),t={byteAligned:!1,prefix:!1,...t},Ue(typeof t.byteAligned=="boolean","byteAligned must be boolean"),Ue(typeof t.prefix=="boolean"||t.prefix==="optional",'prefix must be boolean or "optional"'),this.$_addRule({name:"hex",args:{options:t}})},validate(t,e,{options:n}){return(n.prefix==="optional"?Re.hexRegex.withOptionalPrefix:n.prefix===!0?Re.hexRegex.withPrefix:Re.hexRegex.withoutPrefix).test(t)?n.byteAligned&&t.length%2!==0?e.error("string.hexAlign"):t:e.error("string.hex")}},hostname:{method(){return this.$_addRule("hostname")},validate(t,e){return Ml.isValid(t,{minDomainSegments:1})||Re.ipRegex.test(t)?t:e.error("string.hostname")}},insensitive:{method(){return this.$_setFlag("insensitive",!0)}},ip:{method(t={}){on.assertOptions(t,["cidr","version"]);let{cidr:e,versions:n,regex:r}=b0.regex(t),i=t.version?n:void 0;return this.$_addRule({name:"ip",args:{options:{cidr:e,version:i}},regex:r})},validate(t,e,{options:n},{regex:r}){return r.test(t)?t:n.version?e.error("string.ipVersion",{value:t,cidr:n.cidr,version:n.version}):e.error("string.ip",{value:t,cidr:n.cidr})}},isoDate:{method(){return this.$_addRule("isoDate")},validate(t,{error:e}){return Re.isoDate(t)?t:e("string.isoDate")}},isoDuration:{method(){return this.$_addRule("isoDuration")},validate(t,e){return Re.isoDurationRegex.test(t)?t:e.error("string.isoDuration")}},length:{method(t,e){return Re.length(this,"length",t,"=",e)},validate(t,e,{limit:n,encoding:r},{name:i,operator:s,args:o}){let a=r?Buffer&&Buffer.byteLength(t,r):t.length;return on.compare(a,n,s)?t:e.error("string."+i,{limit:o.limit,value:t,encoding:r})},args:[{name:"limit",ref:!0,assert:on.limit,message:"must be a positive integer"},"encoding"]},lowercase:{method(){return this.case("lower")}},max:{method(t,e){return Re.length(this,"max",t,"<=",e)},args:["limit","encoding"]},min:{method(t,e){return Re.length(this,"min",t,">=",e)},args:["limit","encoding"]},normalize:{method(t="NFC"){return Ue(Re.normalizationForms.includes(t),"normalization form must be one of "+Re.normalizationForms.join(", ")),this.$_addRule({name:"normalize",args:{form:t}})},validate(t,{error:e},{form:n}){return t===t.normalize(n)?t:e("string.normalize",{value:t,form:n})},convert:!0},pattern:{alias:"regex",method(t,e={}){Ue(t instanceof RegExp,"regex must be a RegExp"),Ue(!t.flags.includes("g")&&!t.flags.includes("y"),"regex should not use global or sticky mode"),typeof e=="string"&&(e={name:e}),on.assertOptions(e,["invert","name"]);let n=["string.pattern",e.invert?".invert":"",e.name?".name":".base"].join("");return this.$_addRule({name:"pattern",args:{regex:t,options:e},errorCode:n})},validate(t,e,{regex:n,options:r},{errorCode:i}){return n.test(t)^r.invert?t:e.error(i,{name:r.name,regex:n,value:t})},args:["regex","options"],multi:!0},replace:{method(t,e){typeof t=="string"&&(t=new RegExp(m0(t),"g")),Ue(t instanceof RegExp,"pattern must be a RegExp"),Ue(typeof e=="string","replacement must be a String");let n=this.clone();return n.$_terms.replacements||(n.$_terms.replacements=[]),n.$_terms.replacements.push({pattern:t,replacement:e}),n}},token:{method(){return this.$_addRule("token")},validate(t,e){return/^\w+$/.test(t)?t:e.error("string.token")}},trim:{method(t=!0){return Ue(typeof t=="boolean","enabled must be a boolean"),this.$_addRule({name:"trim",args:{enabled:t}})},validate(t,e,{enabled:n}){return!n||t===t.trim()?t:e.error("string.trim")},convert:!0},truncate:{method(t=!0){return Ue(typeof t=="boolean","enabled must be a boolean"),this.$_setFlag("truncate",t)}},uppercase:{method(){return this.case("upper")}},uri:{method(t={}){on.assertOptions(t,["allowRelative","allowQuerySquareBrackets","domain","relativeOnly","scheme","encodeUri"]),t.domain&&on.assertOptions(t.domain,["allowFullyQualified","allowUnicode","maxDomainSegments","minDomainSegments","tlds"]);let{regex:e,scheme:n}=TD.regex(t),r=t.domain?Re.addressOptions(t.domain):null;return this.$_addRule({name:"uri",args:{options:t},regex:e,domain:r,scheme:n})},validate(t,e,{options:n},{regex:r,domain:i,scheme:s}){if(["http:/","https:/"].includes(t))return e.error("string.uri");let o=r.exec(t);if(!o&&e.prefs.convert&&n.encodeUri){let a=encodeURI(t);o=r.exec(a),o&&(t=a)}if(o){let a=o[1]||o[2];return i&&(!n.allowRelative||a)&&!Ml.isValid(a,i)?e.error("string.domain",{value:a}):t}return n.relativeOnly?e.error("string.uriRelativeOnly"):n.scheme?e.error("string.uriCustomScheme",{scheme:s,value:t}):e.error("string.uri")}}},manifest:{build(t,e){if(e.replacements)for(let{pattern:n,replacement:r}of e.replacements)t=t.replace(n,r);return t}},messages:{"string.alphanum":"{{#label}} must only contain alpha-numeric characters","string.base":"{{#label}} must be a string","string.base64":"{{#label}} must be a valid base64 string","string.creditCard":"{{#label}} must be a credit card","string.dataUri":"{{#label}} must be a valid dataUri string","string.domain":"{{#label}} must contain a valid domain name","string.email":"{{#label}} must be a valid email","string.empty":"{{#label}} is not allowed to be empty","string.guid":"{{#label}} must be a valid GUID","string.hex":"{{#label}} must only contain hexadecimal characters","string.hexAlign":"{{#label}} hex decoded representation must be byte aligned","string.hostname":"{{#label}} must be a valid hostname","string.ip":"{{#label}} must be a valid ip address with a {{#cidr}} CIDR","string.ipVersion":"{{#label}} must be a valid ip address of one of the following versions {{#version}} with a {{#cidr}} CIDR","string.isoDate":"{{#label}} must be in iso format","string.isoDuration":"{{#label}} must be a valid ISO 8601 duration","string.length":"{{#label}} length must be {{#limit}} characters long","string.lowercase":"{{#label}} must only contain lowercase characters","string.max":"{{#label}} length must be less than or equal to {{#limit}} characters long","string.min":"{{#label}} length must be at least {{#limit}} characters long","string.normalize":"{{#label}} must be unicode normalized in the {{#form}} form","string.token":"{{#label}} must only contain alpha-numeric and underscore characters","string.pattern.base":"{{#label}} with value {:[.]} fails to match the required pattern: {{#regex}}","string.pattern.name":"{{#label}} with value {:[.]} fails to match the {{#name}} pattern","string.pattern.invert.base":"{{#label}} with value {:[.]} matches the inverted pattern: {{#regex}}","string.pattern.invert.name":"{{#label}} with value {:[.]} matches the inverted {{#name}} pattern","string.trim":"{{#label}} must not have leading or trailing whitespace","string.uri":"{{#label}} must be a valid uri","string.uriCustomScheme":"{{#label}} must be a valid uri with a scheme matching the {{#scheme}} pattern","string.uriRelativeOnly":"{{#label}} must be a valid relative uri","string.uppercase":"{{#label}} must only contain uppercase characters"}});Re.addressOptions=function(t){if(!t)return Re.tlds||t;if(Ue(t.minDomainSegments===void 0||Number.isSafeInteger(t.minDomainSegments)&&t.minDomainSegments>0,"minDomainSegments must be a positive integer"),Ue(t.maxDomainSegments===void 0||Number.isSafeInteger(t.maxDomainSegments)&&t.maxDomainSegments>0,"maxDomainSegments must be a positive integer"),t.tlds===!1)return t;if(t.tlds===!0||t.tlds===void 0)return Ue(Re.tlds,"Built-in TLD list disabled"),Object.assign({},t,Re.tlds);Ue(typeof t.tlds=="object","tlds must be true, false, or an object");let e=t.tlds.deny;if(e)return Array.isArray(e)&&(t=Object.assign({},t,{tlds:{deny:new Set(e)}})),Ue(t.tlds.deny instanceof Set,"tlds.deny must be an array, Set, or boolean"),Ue(!t.tlds.allow,"Cannot specify both tlds.allow and tlds.deny lists"),Re.validateTlds(t.tlds.deny,"tlds.deny"),t;let n=t.tlds.allow;return n?n===!0?(Ue(Re.tlds,"Built-in TLD list disabled"),Object.assign({},t,Re.tlds)):(Array.isArray(n)&&(t=Object.assign({},t,{tlds:{allow:new Set(n)}})),Ue(t.tlds.allow instanceof Set,"tlds.allow must be an array, Set, or boolean"),Re.validateTlds(t.tlds.allow,"tlds.allow"),t):t};Re.validateTlds=function(t,e){for(let n of t)Ue(Ml.isValid(n,{minDomainSegments:1,maxDomainSegments:1}),`${e} must contain valid top level domain names`)};Re.isoDate=function(t){if(!on.isIsoDate(t))return null;/.*T.*[+-]\d\d$/.test(t)&&(t+="00");let e=new Date(t);return isNaN(e.getTime())?null:e.toISOString()};Re.length=function(t,e,n,r,i){return Ue(!i||Buffer&&Buffer.isEncoding(i),"Invalid encoding:",i),t.$_addRule({name:e,method:"length",args:{limit:n,encoding:i},operator:r})}});var S0=g((N5,T0)=>{"use strict";var Ll=Ie(),kD=Bn(),Im={};Im.Map=class extends Map{slice(){return new Im.Map(this)}};T0.exports=kD.extend({type:"symbol",terms:{map:{init:new Im.Map}},coerce:{method(t,{schema:e,error:n}){let r=e.$_terms.map.get(t);return r&&(t=r),!e._flags.only||typeof t=="symbol"?{value:t}:{value:t,errors:n("symbol.map",{map:e.$_terms.map})}}},validate(t,{error:e}){if(typeof t!="symbol")return{value:t,errors:e("symbol.base")}},rules:{map:{method(t){t&&!t[Symbol.iterator]&&typeof t=="object"&&(t=Object.entries(t)),Ll(t&&t[Symbol.iterator],"Iterable must be an iterable or object");let e=this.clone(),n=[];for(let r of t){Ll(r&&r[Symbol.iterator],"Entry must be an iterable");let[i,s]=r;Ll(typeof i!="object"&&typeof i!="function"&&typeof i!="symbol","Key must not be of type object, function, or Symbol"),Ll(typeof s=="symbol","Value must be a Symbol"),e.$_terms.map.set(i,s),n.push(s)}return e.valid(...n)}}},manifest:{build(t,e){return e.map&&(t=t.map(e.map)),t}},messages:{"symbol.base":"{{#label}} must be a symbol","symbol.map":"{{#label}} must be one of {{#map}}"}})});var w0=g((j5,x0)=>{"use strict";var xD=Ie(),wD=Bn(),k0=Qe();x0.exports=wD.extend({type:"binary",coerce:{from:["string","object"],method(t,{schema:e}){if(typeof t=="string"||t!==null&&t.type==="Buffer")try{return{value:Buffer.from(t,e._flags.encoding)}}catch{}}},validate(t,{error:e}){if(!Buffer.isBuffer(t))return{value:t,errors:e("binary.base")}},rules:{encoding:{method(t){return xD(Buffer.isEncoding(t),"Invalid encoding:",t),this.$_setFlag("encoding",t)}},length:{method(t){return this.$_addRule({name:"length",method:"length",args:{limit:t},operator:"="})},validate(t,e,{limit:n},{name:r,operator:i,args:s}){return k0.compare(t.length,n,i)?t:e.error("binary."+r,{limit:s.limit,value:t})},args:[{name:"limit",ref:!0,assert:k0.limit,message:"must be a positive integer"}]},max:{method(t){return this.$_addRule({name:"max",method:"length",args:{limit:t},operator:"<="})}},min:{method(t){return this.$_addRule({name:"min",method:"length",args:{limit:t},operator:">="})}}},cast:{string:{from:t=>Buffer.isBuffer(t),to(t,e){return t.toString()}}},messages:{"binary.base":"{{#label}} must be a buffer or a string","binary.length":"{{#label}} must be {{#limit}} bytes","binary.max":"{{#label}} must be less than or equal to {{#limit}} bytes","binary.min":"{{#label}} must be at least {{#limit}} bytes"}})});var bl=g((F5,C0)=>{"use strict";var rs=Ie(),ED=nn(),AD=um(),ns=Qe(),OD=Qi(),Lm=Fr(),CD=cm(),E0=fm(),Mm=$r(),A0=vi(),O0=hm(),Nl,Ot={types:{alternatives:Dw(),any:Bn(),array:Mw(),boolean:Fw(),date:Hw(),function:n0(),link:i0(),number:o0(),object:u0(),string:_0(),symbol:S0()},aliases:{alt:"alternatives",bool:"boolean",func:"function"}};Buffer&&(Ot.types.binary=w0());Ot.root=function(){let t={_types:new Set(Object.keys(Ot.types))};for(let e of t._types)t[e]=function(...n){return rs(!n.length||["alternatives","link","object"].includes(e),"The",e,"type does not allow arguments"),Ot.generate(this,Ot.types[e],n)};for(let e of["allow","custom","disallow","equal","exist","forbidden","invalid","not","only","optional","options","prefs","preferences","required","strip","valid","when"])t[e]=function(...n){return this.any()[e](...n)};Object.assign(t,Ot.methods);for(let e in Ot.aliases){let n=Ot.aliases[e];t[e]=t[n]}return t.x=t.expression,O0.setup&&O0.setup(t),t};Ot.methods={ValidationError:Lm.ValidationError,version:ns.version,cache:AD.provider,assert(t,e,...n){Ot.assert(t,e,!0,n)},attempt(t,e,...n){return Ot.assert(t,e,!1,n)},build(t){return rs(typeof E0.build=="function","Manifest functionality disabled"),E0.build(this,t)},checkPreferences(t){ns.checkPreferences(t)},compile(t,e){return OD.compile(this,t,e)},defaults(t){rs(typeof t=="function","modifier must be a function");let e=Object.assign({},this);for(let n of e._types){let r=t(e[n]());rs(ns.isSchema(r),"modifier must return a valid schema object"),e[n]=function(...i){return Ot.generate(this,r,i)}}return e},expression(...t){return new A0(...t)},extend(...t){ns.verifyFlat(t,"extend"),Nl=Nl||yl(),rs(t.length,"You need to provide at least one extension"),this.assert(t,Nl.extensions);let e=Object.assign({},this);e._types=new Set(e._types);for(let n of t){typeof n=="function"&&(n=n(e)),this.assert(n,Nl.extension);let r=Ot.expandExtension(n,e);for(let i of r){rs(e[i.type]===void 0||e._types.has(i.type),"Cannot override name",i.type);let s=i.base||this.any(),o=CD.type(s,i);e._types.add(i.type),e[i.type]=function(...a){return Ot.generate(this,o,a)}}}return e},isError:Lm.ValidationError.isError,isExpression:A0.isTemplate,isRef:Mm.isRef,isSchema:ns.isSchema,in(...t){return Mm.in(...t)},override:ns.symbols.override,ref(...t){return Mm.create(...t)},types(){let t={};for(let e of this._types)t[e]=this[e]();for(let e in Ot.aliases)t[e]=this[e]();return t}};Ot.assert=function(t,e,n,r){let i=r[0]instanceof Error||typeof r[0]=="string"?r[0]:null,s=i!==null?r[1]:r[0],o=e.validate(t,ns.preferences({errors:{stack:!0}},s||{})),a=o.error;if(!a)return o.value;if(i instanceof Error)throw i;let u=n&&typeof a.annotate=="function"?a.annotate():a.message;throw a instanceof Lm.ValidationError||(a=ED(a)),a.message=i?`${i} ${u}`:u,a};Ot.generate=function(t,e,n){return rs(t,"Must be invoked on a Joi instance."),e.$_root=t,!e._definition.args||!n.length?e:e._definition.args(e,...n)};Ot.expandExtension=function(t,e){if(typeof t.type=="string")return[t];let n=[];for(let r of e._types)if(t.type.test(r)){let i=Object.assign({},t);i.type=r,i.base=e[r](),n.push(i)}return n};C0.exports=Ot.root()});var R0=g(ke=>{"use strict";var RD=ke&&ke.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ke,"__esModule",{value:!0});ke.descriptionContainerSchema=ke.signatureSchema=ke.signatureDefinitionContainerSchema=ke.signatureDefinitionSchema=ke.signatureDefinitionFunctionSchema=ke.signatureDefinitionFunctionSchemaArg=ke.signatureDefinitionFunctionSchemaArgMultiTypes=ke.signatureDefinitionFunctionSchemaArgDefaultNumber=ke.signatureDefinitionFunctionSchemaArgDefaultString=ke.signatureDefinitionTypeSchema=ke.variationsSchema=void 0;var oe=RD(bl()),ql=Ki();ke.variationsSchema=oe.default.array().items(oe.default.alternatives(oe.default.string(),oe.default.number()));ke.signatureDefinitionTypeSchema=oe.default.alternatives(oe.default.string(),oe.default.object({type:oe.default.string().required(),keyType:oe.default.string().optional(),valueType:oe.default.string().optional()}));ke.signatureDefinitionFunctionSchemaArgDefaultString=oe.default.object({type:oe.default.string().valid(ql.SignatureDefinitionBaseType.String).required(),value:oe.default.string().allow("").required()});ke.signatureDefinitionFunctionSchemaArgDefaultNumber=oe.default.object({type:oe.default.string().valid(ql.SignatureDefinitionBaseType.Number).required(),value:oe.default.number().required()});ke.signatureDefinitionFunctionSchemaArgMultiTypes=oe.default.object({label:oe.default.string().required(),types:oe.default.array().items(ke.signatureDefinitionTypeSchema).required(),opt:oe.default.boolean().optional(),default:oe.default.alternatives(ke.signatureDefinitionFunctionSchemaArgDefaultString,ke.signatureDefinitionFunctionSchemaArgDefaultNumber).optional()});ke.signatureDefinitionFunctionSchemaArg=oe.default.object({label:oe.default.string().required(),type:ke.signatureDefinitionTypeSchema.required(),opt:oe.default.boolean().optional(),default:oe.default.alternatives(ke.signatureDefinitionFunctionSchemaArgDefaultString,ke.signatureDefinitionFunctionSchemaArgDefaultNumber).optional()});ke.signatureDefinitionFunctionSchema=oe.default.object({type:oe.default.string().valid(ql.SignatureDefinitionBaseType.Function).required(),description:oe.default.string().optional(),example:oe.default.string().optional(),isProtected:oe.default.boolean().optional(),arguments:oe.default.array().items(oe.default.alternatives(ke.signatureDefinitionFunctionSchemaArg,ke.signatureDefinitionFunctionSchemaArgMultiTypes)).optional(),returns:oe.default.array().items(ke.signatureDefinitionTypeSchema).required(),variations:ke.variationsSchema.optional(),returnVariations:ke.variationsSchema.optional()});ke.signatureDefinitionSchema=oe.default.object({type:ke.signatureDefinitionTypeSchema.invalid(ql.SignatureDefinitionBaseType.Function).required(),description:oe.default.string().optional(),example:oe.default.string().optional(),isProtected:oe.default.boolean().optional(),variations:ke.variationsSchema.optional()});ke.signatureDefinitionContainerSchema=oe.default.object().pattern(oe.default.string(),oe.default.alternatives(ke.signatureDefinitionFunctionSchema,ke.signatureDefinitionSchema));ke.signatureSchema=oe.default.object({type:oe.default.string().required(),hidden:oe.default.boolean().optional(),extends:oe.default.string().optional(),definitions:oe.default.object().required()});ke.descriptionContainerSchema=oe.default.object({$meta:oe.default.object({description:oe.default.string().required(),example:oe.default.array().items(oe.default.string().allow("")).optional()}).optional()}).pattern(oe.default.string(),oe.default.object({description:oe.default.string().required(),example:oe.default.array().items(oe.default.string().allow("")).optional()}))});var Fm=g(hn=>{"use strict";var oo=hn&&hn.__assign||function(){return oo=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++){e=arguments[n];for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])}return t},oo.apply(this,arguments)},PD=hn&&hn.__rest||function(t,e){var n={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(t);i<r.length;i++)e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(t,r[i])&&(n[r[i]]=t[r[i]]);return n},ki=hn&&hn.__values||function(t){var e=typeof Symbol=="function"&&Symbol.iterator,n=e&&t[e],r=0;if(n)return n.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},Nm=hn&&hn.__read||function(t,e){var n=typeof Symbol=="function"&&t[Symbol.iterator];if(!n)return t;var r=n.call(t),i,s=[],o;try{for(;(e===void 0||e-- >0)&&!(i=r.next()).done;)s.push(i.value)}catch(a){o={error:a}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return s},DD=hn&&hn.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(hn,"__esModule",{value:!0});hn.Signature=void 0;var qm=DD(bl()),jm=R0(),ID=Ki(),MD=gl(),LD=em(),ND=function(){function t(e){var n,r,i;this._type=e.type,this._extends=(n=e.extends)!==null&&n!==void 0?n:null,this._descriptions={},this._definitions=(r=e.definitions)!==null&&r!==void 0?r:{},this._hidden=(i=e.hidden)!==null&&i!==void 0?i:!1}return t.parseDefinitions=function(e){var n,r;qm.default.assert(e,jm.signatureDefinitionContainerSchema);var i={};try{for(var s=ki(Object.entries(e)),o=s.next();!o.done;o=s.next()){var a=Nm(o.value,2),u=a[0],c=a[1],l=c.type===ID.SignatureDefinitionBaseType.Function?LD.SignatureDefinitionFunction.parse(c):MD.SignatureDefinition.parse(c);i[u]=l}}catch(d){n={error:d}}finally{try{o&&!o.done&&(r=s.return)&&r.call(s)}finally{if(n)throw n.error}}return i},t.parseDescriptions=function(e){var n,r,i,s,o;qm.default.assert(e,jm.descriptionContainerSchema);var a=e,u=null;if(a.$meta){var c=e.$meta,l=PD(e,["$meta"]);u=c,a=l}var d={};try{for(var p=ki(Object.entries(a)),b=p.next();!b.done;b=p.next()){var _=Nm(b.value,2),E=_[0],L=_[1];d[E]={description:L.description,example:(i=L.example)!==null&&i!==void 0?i:null}}}catch(M){n={error:M}}finally{try{b&&!b.done&&(r=p.return)&&r.call(p)}finally{if(n)throw n.error}}return oo({$meta:{description:(s=u?.description)!==null&&s!==void 0?s:"unknown",example:(o=u?.example)!==null&&o!==void 0?o:null}},d)},t.parse=function(e,n){var r,i;qm.default.assert(e,jm.signatureSchema);var s=new t({type:e.type,hidden:e.hidden,extends:e.extends}),o=t.parseDefinitions(e.definitions);if(s.setDefinition(o),n!=null)try{for(var a=ki(Object.entries(n)),u=a.next();!u.done;u=a.next()){var c=Nm(u.value,2),l=c[0],d=c[1],p=t.parseDescriptions(d);s.addDescriptions(l,p)}}catch(b){r={error:b}}finally{try{u&&!u.done&&(i=a.return)&&i.call(a)}finally{if(r)throw r.error}}return s},t.prototype.getType=function(){return this._type},t.prototype.getExtendedType=function(){return this._extends},t.prototype.getDefinitions=function(){return this._definitions},t.prototype.getAllDescriptions=function(){return this._descriptions},t.prototype.isHidden=function(){return this._hidden},t.prototype.setExtend=function(e){return this._extends=e,this},t.prototype.setDefinition=function(e){return this._definitions=e,this},t.prototype.mergeDefinitions=function(e){var n,r,i=Object.keys(e);try{for(var s=ki(i),o=s.next();!o.done;o=s.next()){var a=o.value;this._definitions[a]=e[a]}}catch(u){n={error:u}}finally{try{o&&!o.done&&(r=s.return)&&r.call(s)}finally{if(n)throw n.error}}return this},t.prototype.getDefinition=function(e,n){if(!Object.prototype.hasOwnProperty.call(this._definitions,e))return null;var r=this._definitions[e],i=this.getDescriptions(n),s=i[e];return r.withDescription(s)},t.prototype.setDescriptions=function(e,n){return this._descriptions[e]=n,this},t.prototype.addDescriptions=function(e,n){var r,i,s=this._descriptions[e];s==null&&(s={},this._descriptions[e]=s);var o=Object.keys(n);try{for(var a=ki(o),u=a.next();!u.done;u=a.next()){var c=u.value;s[c]=oo(oo({},s[c]),n[c])}}catch(l){r={error:l}}finally{try{u&&!u.done&&(i=a.return)&&i.call(a)}finally{if(r)throw r.error}}return this},t.prototype.getDescriptions=function(e){e===void 0&&(e="en");var n=this._descriptions[e];return n??{}},t.prototype.toJSON=function(){var e,n,r={},i=Object.keys(this._definitions);try{for(var s=ki(i),o=s.next();!o.done;o=s.next()){var a=o.value;r[a]=this._definitions[a].toJSON()}}catch(u){e={error:u}}finally{try{o&&!o.done&&(n=s.return)&&n.call(s)}finally{if(e)throw e.error}}return{type:this._type,extend:this._extends,hidden:this._hidden,definitions:r}},t.prototype.copy=function(){var e,n,r,i,s=new t({type:this._type,hidden:this._hidden,extends:this._extends}),o={},a=Object.keys(this._definitions);try{for(var u=ki(a),c=u.next();!c.done;c=u.next()){var l=c.value;o[l]=this._definitions[l].copy()}}catch(E){e={error:E}}finally{try{c&&!c.done&&(n=u.return)&&n.call(u)}finally{if(e)throw e.error}}var d={},p=Object.keys(this._descriptions);try{for(var b=ki(p),_=b.next();!_.done;_=b.next()){var l=_.value;d[l]=oo({},d[l])}}catch(E){r={error:E}}finally{try{_&&!_.done&&(i=b.return)&&i.call(b)}finally{if(r)throw r.error}}return s._descriptions=d,s._definitions=o,s},t}();hn.Signature=ND});var P0=g(Er=>{"use strict";var xi=Er&&Er.__read||function(t,e){var n=typeof Symbol=="function"&&t[Symbol.iterator];if(!n)return t;var r=n.call(t),i,s=[],o;try{for(;(e===void 0||e-- >0)&&!(i=r.next()).done;)s.push(i.value)}catch(a){o={error:a}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return s},ao=Er&&Er.__spreadArray||function(t,e,n){if(n||arguments.length===2)for(var r=0,i=e.length,s;r<i;r++)(s||!(r in e))&&(s||(s=Array.prototype.slice.call(e,0,r)),s[r]=e[r]);return t.concat(s||Array.prototype.slice.call(e))},Oa=Er&&Er.__values||function(t){var e=typeof Symbol=="function"&&Symbol.iterator,n=e&&t[e],r=0;if(n)return n.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(Er,"__esModule",{value:!0});Er.Container=void 0;var wr=Fm(),vt=Ki(),qD=function(){function t(){this._primitives=new Map([[vt.SignatureDefinitionBaseType.Any,new wr.Signature({type:vt.SignatureDefinitionBaseType.Any})],[vt.SignatureDefinitionBaseType.General,new wr.Signature({type:vt.SignatureDefinitionBaseType.General})],[vt.SignatureDefinitionBaseType.String,new wr.Signature({type:vt.SignatureDefinitionBaseType.String})],[vt.SignatureDefinitionBaseType.Function,new wr.Signature({type:vt.SignatureDefinitionBaseType.Function})],[vt.SignatureDefinitionBaseType.Number,new wr.Signature({type:vt.SignatureDefinitionBaseType.Number})],[vt.SignatureDefinitionBaseType.List,new wr.Signature({type:vt.SignatureDefinitionBaseType.List})],[vt.SignatureDefinitionBaseType.Map,new wr.Signature({type:vt.SignatureDefinitionBaseType.Map})]]),this._types=new Map,this._excludeFromSearch=new Set}return t.prototype.getOrCreateTypeSignature=function(e){var n=this.getTypeSignature(e);return n==null&&(n=new wr.Signature({type:e}),this._types.set(e,n)),n},t.prototype.getPrimitives=function(){return this._primitives},t.prototype.getTypes=function(){return this._types},t.prototype.getAllVisibleTypes=function(){var e=this;return ao(ao([],xi(this._primitives.keys()),!1),xi(this._types.keys()),!1).filter(function(n){return!e.getTypeSignature(n).isHidden()&&n!==vt.SignatureDefinitionBaseType.Any&&n!==vt.SignatureDefinitionBaseType.General})},t.prototype.excludeFromSearch=function(e){return this._excludeFromSearch.add(e),this},t.prototype.includeToSearch=function(e){return this._excludeFromSearch.delete(e),this},t.prototype.getTypeSignature=function(e){var n,r;return(r=(n=this._primitives.get(e))!==null&&n!==void 0?n:this._types.get(e))!==null&&r!==void 0?r:null},t.prototype.getAllPrimitiveSignatures=function(){return Array.from(this._primitives.values())},t.prototype.getAllTypeSignatures=function(){return Array.from(this._types.values())},t.prototype.getAllSignatures=function(){return ao(ao([],xi(this.getAllPrimitiveSignatures()),!1),xi(this.getAllTypeSignatures()),!1)},t.prototype.getAllVisibleSignatures=function(){return ao(ao([],xi(this.getAllPrimitiveSignatures()),!1),xi(this.getAllTypeSignatures()),!1).filter(function(e){return e.isHidden()})},t.prototype.addTypeSignatureFromPayload=function(e){var n=wr.Signature.parse(e);return this.addTypeSignature({type:n.getType(),extends:n.getExtendedType(),hidden:n.isHidden(),definitions:n.getDefinitions()}),this},t.prototype.addTypeSignature=function(e){var n=this.getOrCreateTypeSignature(e.type);return e.extends!==void 0&&n.setExtend(e.extends),n.mergeDefinitions(e.definitions),this},t.prototype.addMetaFromPayload=function(e,n){var r,i,s={},o=Object.keys(n);try{for(var a=Oa(o),u=a.next();!u.done;u=a.next()){var c=u.value,l=wr.Signature.parseDescriptions(n[c]);s[c]=l}}catch(d){r={error:d}}finally{try{u&&!u.done&&(i=a.return)&&i.call(a)}finally{if(r)throw r.error}}return this.addMeta(e,s),this},t.prototype.addMeta=function(e,n){var r,i,s=Object.keys(n);try{for(var o=Oa(s),a=o.next();!a.done;a=o.next()){var u=a.value,c=this.getOrCreateTypeSignature(u);c.addDescriptions(e,n[u])}}catch(l){r={error:l}}finally{try{a&&!a.done&&(i=o.return)&&i.call(o)}finally{if(r)throw r.error}}return this},t.prototype.searchDefinitionMatches=function(e,n,r){var i,s;if(r===void 0&&(r="en"),typeof e=="string")return this.searchDefinitionMatches([e],n,r);var o=e.includes(vt.SignatureDefinitionBaseType.Any)?new Set(this.getAllVisibleTypes()):new Set(e),a=new Set,u=new Map;try{for(var c=Oa(o),l=c.next();!l.done;l=c.next()){var d=l.value;if(!this._excludeFromSearch.has(d)){for(var p=d,b=this.getTypeSignature(d),_=null;b!==null&&!a.has(b.getType())&&(a.add(b.getType()),b.isHidden()||(_=b.getDefinition(n,r)),_===null);)p=b.getExtendedType(),b=this.getTypeSignature(p);_!==null&&u.set(p,_)}}}catch(E){i={error:E}}finally{try{l&&!l.done&&(s=c.return)&&s.call(c)}finally{if(i)throw i.error}}return u},t.prototype.getDefinition=function(e,n,r){if(r===void 0&&(r="en"),typeof e=="string")return this.getDefinition([e],n,r);var i=this._primitives.get(vt.SignatureDefinitionBaseType.Any).getDefinition(n,r);if(e.includes(vt.SignatureDefinitionBaseType.Any)&&i)return i;var s=this.searchDefinitionMatches(e,n,r);return s.size===0?null:s.size===1?s.values().next().value:s.has(vt.SignatureDefinitionBaseType.Any)?s.get(vt.SignatureDefinitionBaseType.Any):i!==null?i:s.values().next().value},t.prototype.fork=function(){var e,n,r,i,s=new t;try{for(var o=Oa(this._primitives),a=o.next();!a.done;a=o.next()){var u=xi(a.value,2),c=u[0],l=u[1];s._primitives.set(c,l.copy())}}catch(_){e={error:_}}finally{try{a&&!a.done&&(n=o.return)&&n.call(o)}finally{if(e)throw e.error}}try{for(var d=Oa(this._types),p=d.next();!p.done;p=d.next()){var b=xi(p.value,2),c=b[0],l=b[1];s._types.set(c,l.copy())}}catch(_){r={error:_}}finally{try{p&&!p.done&&(i=d.return)&&i.call(d)}finally{if(r)throw r.error}}return s._excludeFromSearch=new Set(this._excludeFromSearch),s},t}();Er.Container=qD});var I0=g(D0=>{"use strict";Object.defineProperty(D0,"__esModule",{value:!0})});var Wn=g(pt=>{"use strict";var jD=pt&&pt.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),M0=pt&&pt.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&jD(e,t,n)};Object.defineProperty(pt,"__esModule",{value:!0});pt.VariationRegistry=pt.Container=pt.Signature=pt.SignatureDefinition=pt.SignatureDefinitionTypeMeta=pt.SignatureDefinitionFunction=pt.SignatureDefinitionFunctionArg=void 0;var FD=Zg();Object.defineProperty(pt,"SignatureDefinitionFunctionArg",{enumerable:!0,get:function(){return FD.SignatureDefinitionFunctionArg}});var $D=em();Object.defineProperty(pt,"SignatureDefinitionFunction",{enumerable:!0,get:function(){return $D.SignatureDefinitionFunction}});var BD=ba();Object.defineProperty(pt,"SignatureDefinitionTypeMeta",{enumerable:!0,get:function(){return BD.SignatureDefinitionTypeMeta}});var UD=gl();Object.defineProperty(pt,"SignatureDefinition",{enumerable:!0,get:function(){return UD.SignatureDefinition}});var HD=Fm();Object.defineProperty(pt,"Signature",{enumerable:!0,get:function(){return HD.Signature}});var WD=P0();Object.defineProperty(pt,"Container",{enumerable:!0,get:function(){return WD.Container}});var GD=hl();Object.defineProperty(pt,"VariationRegistry",{enumerable:!0,get:function(){return GD.VariationRegistry}});M0(I0(),pt);M0(Ki(),pt)});var Ca=g(jl=>{"use strict";Object.defineProperty(jl,"__esModule",{value:!0});jl.isValidIdentifierLiteral=void 0;var KD=qe(),VD=t=>{if(t.type!==KD.ASTType.StringLiteral)return!1;let e=t.value.toString();return/^[_a-z][_a-z0-9]*$/i.test(e)};jl.isValidIdentifierLiteral=VD});var $m=g(wi=>{"use strict";Object.defineProperty(wi,"__esModule",{value:!0});wi.getStringHashCode=wi.getHashCode=wi.rotateBits=void 0;function zD(t){return t>>1|t<<31}wi.rotateBits=zD;function XD(t,e=0){let n=t>>>0;return n=(n>>16^n)*73244475,n=(n>>16^n)*73244475,n=n>>16^n,(e<<5)-e+n|0}wi.getHashCode=XD;wi.getStringHashCode=function(){let t=new Map,e=n=>{let r,i;for(r=0,i=0;r<n.length;r++)i=Math.imul(31,i)+n.charCodeAt(r)|0;return i};return n=>{if(n.length===0)return 0;let r=t.get(n);if(r!==void 0)return r;let i=e(n);return t.set(n,i),i}}()});var L0=g(Fl=>{"use strict";Object.defineProperty(Fl,"__esModule",{value:!0});Fl.createExpressionHash=void 0;var ze=qe(),_t=$m(),YD=Ca(),Ut=(t,e)=>t.$$hash=e,JD=t=>t.$$hash??null;function st(t){let e=JD(t);if(e!==null)return e;let n=(0,_t.getStringHashCode)(t.type);switch(t.type){case ze.ASTType.BinaryExpression:{let r=t;return n^=(0,_t.getStringHashCode)(r.operator),n^=st(r.left),n^=st(r.right),Ut(t,n)}case ze.ASTType.LogicalExpression:{let r=t;return n^=(0,_t.getStringHashCode)(r.operator),n^=st(r.left),n^=st(r.right),Ut(t,n)}case ze.ASTType.IsaExpression:{let r=t;return n^=(0,_t.getStringHashCode)(r.operator),n^=st(r.left),n^=st(r.right),Ut(t,n)}case ze.ASTType.ComparisonGroupExpression:{let r=t;for(let i=0;i<r.expressions.length;i++)n^=st(r.expressions[i]);for(let i=0;i<r.operators.length;i++)n^=(0,_t.getStringHashCode)(r.operators[i]);return Ut(t,n)}case ze.ASTType.FunctionDeclaration:{let r=t;n^=(0,_t.getHashCode)(r.parameters.length);for(let i=0;i<r.parameters.length;i++){let s=r.parameters[i];if(s.type===ze.ASTType.Identifier){n^=(0,_t.getStringHashCode)(s.name);continue}let o=s;n^=(0,_t.getStringHashCode)(o.variable.name),n^=st(o.init)}return Ut(t,n)}case ze.ASTType.ParenthesisExpression:return st(t.expression);case ze.ASTType.MemberExpression:{let r=t;if(r.base.type===ze.ASTType.Identifier){let i=r.base.name;if(i==="globals"||i==="locals"||i==="outer")return n=(0,_t.getStringHashCode)(ze.ASTType.Identifier),n^=(0,_t.getStringHashCode)(r.identifier.name),Ut(t,n)}return n^=st(r.base),n^=st(r.identifier),Ut(t,n)}case ze.ASTType.IndexExpression:{let r=t;if((0,YD.isValidIdentifierLiteral)(r.index)){if(r.base.type===ze.ASTType.Identifier){let s=r.base.name;if(s==="globals"||s==="locals"||s==="outer")return n=(0,_t.getStringHashCode)(ze.ASTType.Identifier),n^=(0,_t.getStringHashCode)(r.index.value.toString()),Ut(t,n)}n=(0,_t.getStringHashCode)(ze.ASTType.MemberExpression),n^=st(r.base);let i=(0,_t.getStringHashCode)(ze.ASTType.Identifier);i^=(0,_t.getStringHashCode)(r.index.value.toString()),n^=i}else n^=st(r.base),n^=st(r.index);return Ut(t,n)}case ze.ASTType.CallExpression:{let r=t;n^=st(r.base),n^=(0,_t.getHashCode)(r.arguments.length);for(let i=0;i<r.arguments.length;i++){let s=r.arguments[i];n^=st(s)}return Ut(t,n)}case ze.ASTType.NegationExpression:case ze.ASTType.BinaryNegatedExpression:case ze.ASTType.UnaryExpression:{let r=t;return n^=r.operator?(0,_t.getStringHashCode)(r.operator):1,n^=st(r.argument),Ut(t,n)}case ze.ASTType.Identifier:{let r=t;return n^=(0,_t.getStringHashCode)(r.name),Ut(t,n)}case ze.ASTType.NumericLiteral:case ze.ASTType.StringLiteral:case ze.ASTType.NilLiteral:return n^=(0,_t.getStringHashCode)(t.value.toString()),Ut(t,n);case ze.ASTType.MapConstructorExpression:{let r=t;n^=(0,_t.getHashCode)(r.fields.length);for(let i=0;i<r.fields.length;i++){let s=r.fields[i];n^=st(s.key),n^=st(s.value)}return Ut(t,n)}case ze.ASTType.ListConstructorExpression:{let r=t;n^=(0,_t.getHashCode)(r.fields.length);for(let i=0;i<r.fields.length;i++){let s=r.fields[i];n^=st(s.value)}return Ut(t,n)}case ze.ASTType.SliceExpression:{let r=t;return n^=st(r.base),n^=st(r.left),n^=st(r.right),Ut(t,n)}}return Ut(t,n)}function QD(t){return st(t)}Fl.createExpressionHash=QD});var Bm=g($l=>{"use strict";Object.defineProperty($l,"__esModule",{value:!0});$l.createExpressionId=void 0;var wt=qe(),ZD=Ca(),Ct=(t,e)=>t.$$id=e,eI=t=>t.$$id??null;function et(t){let e=eI(t);if(e!==null)return e;switch(t.type){case wt.ASTType.BinaryExpression:{let n=t;return Ct(t,et(n.left)+n.operator+et(n.right))}case wt.ASTType.LogicalExpression:{let n=t;return Ct(t,et(n.left)+n.operator+et(n.right))}case wt.ASTType.IsaExpression:{let n=t;return Ct(t,et(n.left)+n.operator+et(n.right))}case wt.ASTType.ComparisonGroupExpression:{let n=t,r=n.expressions.map(s=>et(s)),i=[r[0]];for(let s=0;s<n.operators.length;s++)i.push(n.operators[s],r[s+1]);return Ct(t,i.join(" "))}case wt.ASTType.FunctionDeclaration:{let n=t,r="function",i=[];for(let s=0;s<n.parameters.length;s++){let o=n.parameters[s];if(o.type===wt.ASTType.Identifier){i.push(o.name);continue}let a=o;i.push(a.variable.name+"="+et(a.init))}return i.length>0&&(r+="("+i.join(",")+")"),Ct(t,r)}case wt.ASTType.ParenthesisExpression:return Ct(t,et(t.expression));case wt.ASTType.MemberExpression:{let n=t;return Ct(t,et(n.base)+"."+n.identifier.name)}case wt.ASTType.IndexExpression:{let n=t;return(0,ZD.isValidIdentifierLiteral)(n.index)?Ct(t,et(n.base)+"."+n.index.value.toString()):Ct(t,et(n.base)+"["+et(n.index)+"]")}case wt.ASTType.CallExpression:{let n=t,r=et(n.base),i=[];for(let s=0;s<n.arguments.length;s++){let o=n.arguments[s];i.push(et(o))}return i.length>0&&(r+="("+i.join(",")+")"),Ct(t,r)}case wt.ASTType.NegationExpression:case wt.ASTType.BinaryNegatedExpression:case wt.ASTType.UnaryExpression:{let n=t;return n.operator==null?Ct(t,et(n.argument)):n.operator==="@"?Ct(t,n.operator+et(n.argument)):Ct(t,n.operator+" "+et(n.argument))}case wt.ASTType.Identifier:return Ct(t,t.name);case wt.ASTType.NumericLiteral:case wt.ASTType.StringLiteral:case wt.ASTType.NilLiteral:return Ct(t,t.raw.toString());case wt.ASTType.MapConstructorExpression:{let n=t,r=[];for(let i=0;i<n.fields.length;i++){let s=n.fields[i];r.push(et(s.key)+":"+et(s.value))}return Ct(t,"{"+r.join(",")+"}")}case wt.ASTType.ListConstructorExpression:{let n=t,r=[];for(let i=0;i<n.fields.length;i++){let s=n.fields[i];r.push(et(s.value))}return Ct(t,"["+r.join(",")+"]")}case wt.ASTType.SliceExpression:{let n=t;return Ct(t,et(n.base)+"["+et(n.left)+":"+et(n.right)+"]")}}return Ct(t,"")}function tI(t){return et(t)}$l.createExpressionId=tI});var uo=g(Ra=>{"use strict";Object.defineProperty(Ra,"__esModule",{value:!0});Ra.Markers=void 0;var nI;(function(t){t.start="/**",t.nostart="/***",t.delim="*",t.end="*/"})(nI=Ra.Markers||(Ra.Markers={}))});var sr=g(ht=>{"use strict";Object.defineProperty(ht,"__esModule",{value:!0});ht.rewireSpecs=ht.rewireSource=ht.seedTokens=ht.seedSpec=ht.seedBlock=ht.splitLines=ht.splitSpace=ht.splitCR=ht.hasCR=ht.isSpace=void 0;function rI(t){return/^\s+$/.test(t)}ht.isSpace=rI;function iI(t){return/\r$/.test(t)}ht.hasCR=iI;function sI(t){let e=t.match(/\r+$/);return e==null?["",t]:[t.slice(-e[0].length),t.slice(0,-e[0].length)]}ht.splitCR=sI;function oI(t){let e=t.match(/^\s+/);return e==null?["",t]:[t.slice(0,e[0].length),t.slice(e[0].length)]}ht.splitSpace=oI;function aI(t){return t.split(/\n/)}ht.splitLines=aI;function uI(t={}){return Object.assign({description:"",tags:[],source:[],problems:[]},t)}ht.seedBlock=uI;function cI(t={}){return Object.assign({tag:"",name:"",type:"",optional:!1,description:"",problems:[],source:[]},t)}ht.seedSpec=cI;function lI(t={}){return Object.assign({start:"",delimiter:"",postDelimiter:"",tag:"",postTag:"",name:"",postName:"",type:"",postType:"",description:"",end:"",lineEnd:""},t)}ht.seedTokens=lI;function dI(t){let e=t.source.reduce((n,r)=>n.set(r.number,r),new Map);for(let n of t.tags)n.source=n.source.map(r=>e.get(r.number));return t}ht.rewireSource=dI;function fI(t){let e=t.tags.reduce((n,r)=>r.source.reduce((i,s)=>i.set(s.number,s),n),new Map);return t.source=t.source.map(n=>e.get(n.number)||n),t}ht.rewireSpecs=fI});var N0=g(Um=>{"use strict";Object.defineProperty(Um,"__esModule",{value:!0});var pI=/^@\S+/;function hI({fence:t="```"}={}){let e=gI(t),n=(r,i)=>e(r)?!i:i;return function(i){let s=[[]],o=!1;for(let a of i)pI.test(a.tokens.description)&&!o?s.push([a]):s[s.length-1].push(a),o=n(a.tokens.description,o);return s}}Um.default=hI;function gI(t){return typeof t=="string"?e=>e.split(t).length%2===0:t}});var q0=g(Hm=>{"use strict";Object.defineProperty(Hm,"__esModule",{value:!0});var mI=uo(),Pa=sr();function yI({startLine:t=0,markers:e=mI.Markers}={}){let n=null,r=t;return function(s){let o=s,a=(0,Pa.seedTokens)();if([a.lineEnd,o]=(0,Pa.splitCR)(o),[a.start,o]=(0,Pa.splitSpace)(o),n===null&&o.startsWith(e.start)&&!o.startsWith(e.nostart)&&(n=[],a.delimiter=o.slice(0,e.start.length),o=o.slice(e.start.length),[a.postDelimiter,o]=(0,Pa.splitSpace)(o)),n===null)return r++,null;let u=o.trimRight().endsWith(e.end);if(a.delimiter===""&&o.startsWith(e.delim)&&!o.startsWith(e.end)&&(a.delimiter=e.delim,o=o.slice(e.delim.length),[a.postDelimiter,o]=(0,Pa.splitSpace)(o)),u){let c=o.trimRight();a.end=o.slice(c.length-e.end.length),o=c.slice(0,-e.end.length)}if(a.description=o,n.push({number:r,source:s,tokens:a}),r++,u){let c=n.slice();return n=null,c}return null}}Hm.default=yI});var j0=g(Wm=>{"use strict";Object.defineProperty(Wm,"__esModule",{value:!0});var bI=sr();function vI({tokenizers:t}){return function(n){var r;let i=(0,bI.seedSpec)({source:n});for(let s of t)if(i=s(i),!((r=i.problems[i.problems.length-1])===null||r===void 0)&&r.critical)break;return i}}Wm.default=vI});var Km=g(Gm=>{"use strict";Object.defineProperty(Gm,"__esModule",{value:!0});function _I(){return t=>{let{tokens:e}=t.source[0],n=e.description.match(/\s*(@(\S+))(\s*)/);return n===null?(t.problems.push({code:"spec:tag:prefix",message:'tag should start with "@" symbol',line:t.source[0].number,critical:!0}),t):(e.tag=n[1],e.postTag=n[3],e.description=e.description.slice(n[0].length),t.tag=n[2],t)}}Gm.default=_I});var zm=g(Vm=>{"use strict";Object.defineProperty(Vm,"__esModule",{value:!0});var TI=sr();function SI(t="compact"){let e=xI(t);return n=>{let r=0,i=[];for(let[a,{tokens:u}]of n.source.entries()){let c="";if(a===0&&u.description[0]!=="{")return n;for(let l of u.description)if(l==="{"&&r++,l==="}"&&r--,c+=l,r===0)break;if(i.push([u,c]),r===0)break}if(r!==0)return n.problems.push({code:"spec:type:unpaired-curlies",message:"unpaired curlies",line:n.source[0].number,critical:!0}),n;let s=[],o=i[0][0].postDelimiter.length;for(let[a,[u,c]]of i.entries())u.type=c,a>0&&(u.type=u.postDelimiter.slice(o)+c,u.postDelimiter=u.postDelimiter.slice(0,o)),[u.postType,u.description]=(0,TI.splitSpace)(u.description.slice(c.length)),s.push(u.type);return s[0]=s[0].slice(1),s[s.length-1]=s[s.length-1].slice(0,-1),n.type=e(s),n}}Vm.default=SI;var kI=t=>t.trim();function xI(t){return t==="compact"?e=>e.map(kI).join(""):t==="preserve"?e=>e.join(`
100
+ `):t}});var Jm=g(Ym=>{"use strict";Object.defineProperty(Ym,"__esModule",{value:!0});var Xm=sr(),wI=t=>t&&t.startsWith('"')&&t.endsWith('"');function EI(){let t=(e,{tokens:n},r)=>n.type===""?e:r;return e=>{let{tokens:n}=e.source[e.source.reduce(t,0)],r=n.description.trimLeft(),i=r.split('"');if(i.length>1&&i[0]===""&&i.length%2===1)return e.name=i[1],n.name=`"${i[1]}"`,[n.postName,n.description]=(0,Xm.splitSpace)(r.slice(n.name.length)),e;let s=0,o="",a=!1,u;for(let l of r){if(s===0&&(0,Xm.isSpace)(l))break;l==="["&&s++,l==="]"&&s--,o+=l}if(s!==0)return e.problems.push({code:"spec:name:unpaired-brackets",message:"unpaired brackets",line:e.source[0].number,critical:!0}),e;let c=o;if(o[0]==="["&&o[o.length-1]==="]"){a=!0,o=o.slice(1,-1);let l=o.split("=");if(o=l[0].trim(),l[1]!==void 0&&(u=l.slice(1).join("=").trim()),o==="")return e.problems.push({code:"spec:name:empty-name",message:"empty name",line:e.source[0].number,critical:!0}),e;if(u==="")return e.problems.push({code:"spec:name:empty-default",message:"empty default value",line:e.source[0].number,critical:!0}),e;if(!wI(u)&&/=(?!>)/.test(u))return e.problems.push({code:"spec:name:invalid-default",message:"invalid default value syntax",line:e.source[0].number,critical:!0}),e}return e.optional=a,e.name=o,n.name=c,u!==void 0&&(e.default=u),[n.postName,n.description]=(0,Xm.splitSpace)(r.slice(n.name.length)),e}}Ym.default=EI});var Zm=g(Da=>{"use strict";Object.defineProperty(Da,"__esModule",{value:!0});Da.getJoiner=void 0;var Qm=uo();function AI(t="compact",e=Qm.Markers){let n=F0(t);return r=>(r.description=n(r.source,e),r)}Da.default=AI;function F0(t){return t==="compact"?OI:t==="preserve"?PI:t}Da.getJoiner=F0;function OI(t,e=Qm.Markers){return t.map(({tokens:{description:n}})=>n.trim()).filter(n=>n!=="").join(" ")}var CI=(t,{tokens:e},n)=>e.type===""?t:n,RI=({tokens:t})=>(t.delimiter===""?t.start:t.postDelimiter.slice(1))+t.description;function PI(t,e=Qm.Markers){if(t.length===0)return"";t[0].tokens.description===""&&t[0].tokens.delimiter===e.start&&(t=t.slice(1));let n=t[t.length-1];return n!==void 0&&n.tokens.description===""&&n.tokens.end.endsWith(e.end)&&(t=t.slice(0,-1)),t=t.slice(t.reduce(CI,0)),t.map(RI).join(`
101
+ `)}});var B0=g(ey=>{"use strict";Object.defineProperty(ey,"__esModule",{value:!0});var DI=uo(),II=sr(),MI=N0(),LI=q0(),NI=j0(),qI=Km(),jI=zm(),FI=Jm(),$0=Zm();function $I({startLine:t=0,fence:e="```",spacing:n="compact",markers:r=DI.Markers,tokenizers:i=[(0,qI.default)(),(0,jI.default)(n),(0,FI.default)(),(0,$0.default)(n)]}={}){if(t<0||t%1>0)throw new Error("Invalid startLine");let s=(0,LI.default)({startLine:t,markers:r}),o=(0,MI.default)({fence:e}),a=(0,NI.default)({tokenizers:i}),u=(0,$0.getJoiner)(n);return function(c){let l=[];for(let d of(0,II.splitLines)(c)){let p=s(d);if(p===null)continue;let b=o(p),_=b.slice(1).map(a);l.push({description:u(b[0],r),tags:_,source:p,problems:_.reduce((E,L)=>E.concat(L.problems),[])})}return l}}ey.default=$I});var U0=g(ty=>{"use strict";Object.defineProperty(ty,"__esModule",{value:!0});function BI(t){return t.start+t.delimiter+t.postDelimiter+t.tag+t.postTag+t.type+t.postType+t.name+t.postName+t.description+t.end+t.lineEnd}function UI(){return t=>t.source.map(({tokens:e})=>BI(e)).join(`
102
+ `)}ty.default=UI});var W0=g(Ia=>{"use strict";var HI=Ia&&Ia.__rest||function(t,e){var n={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(t);i<r.length;i++)e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(t,r[i])&&(n[r[i]]=t[r[i]]);return n};Object.defineProperty(Ia,"__esModule",{value:!0});var H0=uo(),WI=sr(),GI={start:0,tag:0,type:0,name:0},KI=(t=H0.Markers)=>(e,{tokens:n})=>({start:n.delimiter===t.start?n.start.length:e.start,tag:Math.max(e.tag,n.tag.length),type:Math.max(e.type,n.type.length),name:Math.max(e.name,n.name.length)}),is=t=>"".padStart(t," ");function VI(t=H0.Markers){let e=!1,n;function r(i){let s=Object.assign({},i.tokens);s.tag!==""&&(e=!0);let o=s.tag===""&&s.name===""&&s.type===""&&s.description==="";if(s.end===t.end&&o)return s.start=is(n.start+1),Object.assign(Object.assign({},i),{tokens:s});switch(s.delimiter){case t.start:s.start=is(n.start);break;case t.delim:s.start=is(n.start+1);break;default:s.delimiter="",s.start=is(n.start+2)}if(!e)return s.postDelimiter=s.description===""?"":" ",Object.assign(Object.assign({},i),{tokens:s});let a={delim:!1,tag:!1,type:!1,name:!1};return s.description===""&&(a.name=!0,s.postName="",s.name===""&&(a.type=!0,s.postType="",s.type===""&&(a.tag=!0,s.postTag="",s.tag===""&&(a.delim=!0)))),s.postDelimiter=a.delim?"":" ",a.tag||(s.postTag=is(n.tag-s.tag.length+1)),a.type||(s.postType=is(n.type-s.type.length+1)),a.name||(s.postName=is(n.name-s.name.length+1)),Object.assign(Object.assign({},i),{tokens:s})}return i=>{var{source:s}=i,o=HI(i,["source"]);return n=s.reduce(KI(t),Object.assign({},GI)),(0,WI.rewireSource)(Object.assign(Object.assign({},o),{source:s.map(r)}))}}Ia.default=VI});var G0=g(Ma=>{"use strict";var zI=Ma&&Ma.__rest||function(t,e){var n={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(t);i<r.length;i++)e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(t,r[i])&&(n[r[i]]=t[r[i]]);return n};Object.defineProperty(Ma,"__esModule",{value:!0});var XI=sr(),YI=t=>e=>e.slice(t),JI=t=>{let e="".padStart(t," ");return n=>n+e};function QI(t){let e,n=i=>{if(e===void 0){let s=t-i.length;e=s>0?JI(s):YI(-s)}return e(i)},r=i=>Object.assign(Object.assign({},i),{tokens:Object.assign(Object.assign({},i.tokens),{start:n(i.tokens.start)})});return i=>{var{source:s}=i,o=zI(i,["source"]);return(0,XI.rewireSource)(Object.assign(Object.assign({},o),{source:s.map(r)}))}}Ma.default=QI});var K0=g(La=>{"use strict";var ZI=La&&La.__rest||function(t,e){var n={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(t);i<r.length;i++)e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(t,r[i])&&(n[r[i]]=t[r[i]]);return n};Object.defineProperty(La,"__esModule",{value:!0});var eM=sr();function tM(t){function e(n){return Object.assign(Object.assign({},n),{tokens:Object.assign(Object.assign({},n.tokens),{lineEnd:t==="LF"?"":"\r"})})}return n=>{var{source:r}=n,i=ZI(n,["source"]);return(0,eM.rewireSource)(Object.assign(Object.assign({},i),{source:r.map(e)}))}}La.default=tM});var V0=g(Bl=>{"use strict";Object.defineProperty(Bl,"__esModule",{value:!0});Bl.flow=void 0;function nM(...t){return e=>t.reduce((n,r)=>r(n),e)}Bl.flow=nM});var J0=g(ry=>{"use strict";Object.defineProperty(ry,"__esModule",{value:!0});var rM=sr(),X0={line:0,start:0,delimiter:0,postDelimiter:0,tag:0,postTag:0,name:0,postName:0,type:0,postType:0,description:0,end:0,lineEnd:0},z0={lineEnd:"CR"},ny=Object.keys(X0),Y0=t=>(0,rM.isSpace)(t)?`{${t.length}}`:t,iM=t=>"|"+t.join("|")+"|",sM=(t,e)=>Object.keys(e).map(n=>Y0(e[n]).padEnd(t[n]));function oM({source:t}){var e,n;if(t.length===0)return"";let r=Object.assign({},X0);for(let s of ny)r[s]=((e=z0[s])!==null&&e!==void 0?e:s).length;for(let{number:s,tokens:o}of t){r.line=Math.max(r.line,s.toString().length);for(let a in o)r[a]=Math.max(r[a],Y0(o[a]).length)}let i=[[],[]];for(let s of ny)i[0].push(((n=z0[s])!==null&&n!==void 0?n:s).padEnd(r[s]));for(let s of ny)i[1].push("-".padEnd(r[s],"-"));for(let{number:s,tokens:o}of t){let a=s.toString().padStart(r.line);i.push([a,...sM(r,o)])}return i.map(iM).join(`
103
+ `)}ry.default=oM});var iy=g(Rt=>{"use strict";var aM=Rt&&Rt.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),uM=Rt&&Rt.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&aM(e,t,n)};Object.defineProperty(Rt,"__esModule",{value:!0});Rt.util=Rt.tokenizers=Rt.transforms=Rt.inspect=Rt.stringify=Rt.parse=void 0;var cM=B0(),lM=Zm(),dM=Jm(),fM=Km(),pM=zm(),hM=U0(),gM=W0(),mM=G0(),yM=K0(),bM=V0(),Ul=sr();uM(uo(),Rt);function vM(t,e={}){return(0,cM.default)(e)(t)}Rt.parse=vM;Rt.stringify=(0,hM.default)();var _M=J0();Object.defineProperty(Rt,"inspect",{enumerable:!0,get:function(){return _M.default}});Rt.transforms={flow:bM.flow,align:gM.default,indent:mM.default,crlf:yM.default};Rt.tokenizers={tag:fM.default,type:pM.default,name:dM.default,description:lM.default};Rt.util={rewireSpecs:Ul.rewireSpecs,rewireSource:Ul.rewireSource,seedBlock:Ul.seedBlock,seedTokens:Ul.seedTokens}});var sy=g(ss=>{"use strict";Object.defineProperty(ss,"__esModule",{value:!0});ss.enrichWithMetaInformation=ss.FunctionBlockTag=void 0;var TM=iy(),Q0=Wn();function Z0(t){return[t.name,t.description].filter(e=>e!==void 0).join(" ")}var Na;(function(t){t.Description="description",t.Param="param",t.Return="return",t.Example="example"})(Na=ss.FunctionBlockTag||(ss.FunctionBlockTag={}));function SM(t){let e=[t.description??"",...t.tags.filter(s=>s.tag===Na.Description).map(Z0)].join(`
104
104
 
105
- `),n=t.tags.filter(s=>s.tag===Na.Param).map(s=>({label:s.name,types:s.type.split("|"),opt:s.optional})),r=t.tags.find(s=>s.tag===Na.Return)??{type:"any"},i=t.tags.filter(s=>s.tag===Na.Example).map(J0);return{descriptions:e,args:n,returns:r,examples:i}}function kM(t){let e=(0,TM.parse)(`/**
105
+ `),n=t.tags.filter(s=>s.tag===Na.Param).map(s=>({label:s.name,types:s.type.split("|"),opt:s.optional})),r=t.tags.find(s=>s.tag===Na.Return)??{type:"any"},i=t.tags.filter(s=>s.tag===Na.Example).map(Z0);return{descriptions:e,args:n,returns:r,examples:i}}function kM(t){let e=(0,TM.parse)(`/**
106
106
  ${t.getDescription()}
107
- */`),[n]=e;if(n.tags.length>0){let{descriptions:r,args:i,returns:s,examples:o}=SM(n);return Y0.SignatureDefinitionFunction.parse({type:Y0.SignatureDefinitionBaseType.Function,arguments:t.getArguments().map((a,u)=>{let c=a.getLabel(),l=a.getTypes().map(p=>p.toString()),d=a.isOptional();return{types:l,opt:d,...i[u],label:c}}),returns:s.type.split("|"),description:r,example:o})}return t}ss.enrichWithMetaInformation=kM});var oy=g(Hl=>{"use strict";Object.defineProperty(Hl,"__esModule",{value:!0});Hl.createResolveChain=void 0;var an=qe();function wi(t,e,n=null,r=!1){switch(t.type){case an.ASTType.ParenthesisExpression:{wi(t.expression,e,n);return}case an.ASTType.MemberExpression:{let i=t;wi(i.base,e),e.push({ref:t,getter:i.identifier,unary:n,isInCallExpression:r});return}case an.ASTType.IndexExpression:{let i=t;wi(i.base,e),e.push({ref:t,getter:i.index,unary:n,isInCallExpression:r});return}case an.ASTType.CallStatement:{wi(t.expression,e,n,!0);return}case an.ASTType.CallExpression:{wi(t.base,e,n,!0);return}case an.ASTType.NegationExpression:case an.ASTType.BinaryNegatedExpression:case an.ASTType.UnaryExpression:{let i=t;wi(i.argument,e,i);return}case an.ASTType.Identifier:{e.push({ref:t,getter:t,unary:n,isInCallExpression:r});return}case an.ASTType.NumericLiteral:case an.ASTType.StringLiteral:case an.ASTType.NilLiteral:case an.ASTType.MapConstructorExpression:case an.ASTType.ListConstructorExpression:{e.push({ref:t,value:t,unary:n,isInCallExpression:r});return}case an.ASTType.SliceExpression:wi(t.base,e),e.push({ref:t,unary:n,isInCallExpression:r})}}function xM(t){let e=[];return wi(t,e),e}Hl.createResolveChain=xM});var Z0=g(ay=>{function Q0(t,e){return t>e?1:-1}ay.hash=function t(e,n){var r=5381;if(typeof e=="object"&&e!==null&&(e.toString===Object.prototype.toString||e.toString===Array.prototype.toString)){n||(n=new WeakSet);for(var i=Object.keys(e).sort(Q0),s=0;s<i.length;s++){var o=i[s],a=e[o];if(r=33*r^t(o,n),typeof a=="object"&&a!==null&&(e.toString===Object.prototype.toString||e.toString===Array.prototype.toString)){if(n.has(a))continue;n.add(a)}r=33*r^t(a,n)}return 33*r^t(e.constructor,n)}var u=typeof e;try{e instanceof Date?u+=e.getTime():u+=String(e)}catch{u+=String(Object.assign({},e))}for(var c=0;c<u.length;c++)r=33*r^u.charCodeAt(c);return r},ay.sortNumbers=Q0});var ly=g(co=>{"use strict";Object.defineProperty(co,"__esModule",{value:!0});co.ObjectSet=co.ObjectSetIterator=void 0;var uy=Z0(),Wl=class{constructor(e){let n=this;n.value=e,n.index=0}next(){let e=this;return e.index>=e.value.length?{value:null,done:!0}:{value:e.value[e.index++],done:!1}}};co.ObjectSetIterator=Wl;var cy=class{constructor(e){let r=(e?Array.from(e):[]).map(i=>[(0,uy.hash)(i),i]);this._map=new Map(r),this._first=null,this._last=null,r.length>0&&(this._first=r[0][0],this._last=r[r.length-1][0])}[Symbol.iterator](){return new Wl(Array.from(this._map.values()))}first(){return this._first!=null?this._map.get(this._first)??null:null}last(){return this._last!=null?this._map.get(this._last)??null:null}toArray(){return Array.from(this._map.values())}add(e){let n=(0,uy.hash)(e);return this._map.set(n,e),this._first??(this._first=n),this._last=n,this}delete(e){let n=(0,uy.hash)(e);return this._map.delete(n)}extend(e){for(let[n,r]of e._map)this._map.set(n,r),this._first??(this._first=n),this._last=n;return this}toJSON(){return Array.from(this._map.values())}clear(){this._map.clear()}};co.ObjectSet=cy});var dy=g(Gl=>{"use strict";Object.defineProperty(Gl,"__esModule",{value:!0});Gl.DEFAULT_CUSTOM_FUNCTION_DESCRIPTION=void 0;Gl.DEFAULT_CUSTOM_FUNCTION_DESCRIPTION="This is a custom method. You can add a description for this method by adding a comment above or after the function.\n```\nmyFunction = function(a, b, c) // This function does xyz\n```\nor\n```\n/*\n This function does xyz\n*/\nmyFunction = function(a, b, c)\n```"});var os=g(qa=>{"use strict";Object.defineProperty(qa,"__esModule",{value:!0});qa.CompletionItemKind=void 0;var wM;(function(t){t.Variable="var",t.Property="var",t.Function="function",t.Literal="literal",t.Constant="constant",t.ListConstructor="list",t.MapConstructor="map",t.Expression="expr",t.Unknown="unknown"})(wM=qa.CompletionItemKind||(qa.CompletionItemKind={}))});var fy=g(Ar=>{"use strict";Object.defineProperty(Ar,"__esModule",{value:!0});Ar.isResolveChainItemWithValue=Ar.isResolveChainItemWithIdentifier=Ar.isResolveChainItemWithMember=Ar.isResolveChainItemWithIndex=void 0;var Ei=qe(),EM=t=>t!=null&&t.ref.type===Ei.ASTType.IndexExpression;Ar.isResolveChainItemWithIndex=EM;var AM=t=>t!=null&&t.ref.type===Ei.ASTType.MemberExpression;Ar.isResolveChainItemWithMember=AM;var OM=t=>t!=null&&t.ref.type===Ei.ASTType.Identifier;Ar.isResolveChainItemWithIdentifier=OM;var CM=t=>t!=null&&(t.ref.type===Ei.ASTType.NumericLiteral||t.ref.type===Ei.ASTType.StringLiteral||t.ref.type===Ei.ASTType.NilLiteral||t.ref.type===Ei.ASTType.MapConstructorExpression||t.ref.type===Ei.ASTType.ListConstructorExpression);Ar.isResolveChainItemWithValue=CM});var py=g(Kl=>{"use strict";Object.defineProperty(Kl,"__esModule",{value:!0});Kl.isSignatureDefinitionFunction=void 0;var RM=Wn(),PM=t=>t.getType().type===RM.SignatureDefinitionBaseType.Function;Kl.isSignatureDefinitionFunction=PM});var hy=g(Vl=>{"use strict";Object.defineProperty(Vl,"__esModule",{value:!0});Vl.aggregateEntity=void 0;var DM=t=>{let e=[],n=t;for(;n!=null;)e.push(n),n=n.getIsa();return e};Vl.aggregateEntity=DM});var ja=g(zl=>{"use strict";Object.defineProperty(zl,"__esModule",{value:!0});zl.injectIdentifers=void 0;var IM=hy(),MM=(t,e)=>{let n=(0,IM.aggregateEntity)(e);for(let r=0;r<n.length;r++){let i=n[r];for(let[s,o]of i.values)if(s.startsWith("i:")){let a=s.slice(2);if(t.has(a))continue;t.set(a,{kind:o.kind,line:o.source===e.source?o.line:-1})}}};zl.injectIdentifers=MM});var Yl=g(Xl=>{"use strict";Object.defineProperty(Xl,"__esModule",{value:!0});Xl.isEligibleForProperties=void 0;var gy=Wn(),LM=t=>t.types.has(gy.SignatureDefinitionBaseType.Map)||t.types.has(gy.SignatureDefinitionBaseType.List)||t.types.has(gy.SignatureDefinitionBaseType.Any);Xl.isEligibleForProperties=LM});var Ql=g(Jl=>{"use strict";Object.defineProperty(Jl,"__esModule",{value:!0});Jl.lookupProperty=void 0;var NM=Yl(),qM=(t,e)=>{let n=t;for(;(0,NM.isEligibleForProperties)(n);){let r=n.values.get(`i:${e}`);if(r!=null)return r;let i=n.getIsa();if(i==null)break;n=i}return null};Jl.lookupProperty=qM});var po=g(Ai=>{"use strict";Object.defineProperty(Ai,"__esModule",{value:!0});Ai.Entity=Ai.resolveEntity=void 0;var lo=Wn(),fo=os(),jM=py(),FM=ja(),Zl=Yl(),eE=Ql(),tE=ly(),$M=(t,e,n=!1)=>{if(e.isCallable()&&!n){let r=e.getReturnEntity();if(r!==null)return r;let i=e.getCallableReturnTypes();return i?new as({source:e.source,kind:fo.CompletionItemKind.Variable,container:t,label:e.label,context:e.context}).addTypes(i):new as({source:e.source,kind:fo.CompletionItemKind.Variable,container:t,label:e.label,context:e.context}).addType(lo.SignatureDefinitionBaseType.Any)}return e};Ai.resolveEntity=$M;var my={hasProperty(t,e,n){return!!(0,eE.lookupProperty)(t,n)||!t.isAPI()&&!!e.getDefinition(Array.from(t.types),n,!0)},resolveProperty(t,e,n,r=!1){let i=(0,eE.lookupProperty)(t,n)??null;return i==null?t.isAPI()?null:e.getDefinition(Array.from(t.types),n,r):(0,Ai.resolveEntity)(e,i,r)},setProperty(t,e,n,r){if(!(0,Zl.isEligibleForProperties)(t))return!1;let i=`i:${n}`,s=t.values.get(i);return s?s.extend(r):t.values.set(i,r.copy({container:e,label:n,context:t,definitions:[]})),!0}},yy={hasProperty(t,e,n){if(!(0,Zl.isEligibleForProperties)(t))return!1;for(let r of n.types)if(t.values.has(`t:${r}`))return!0;return!1},resolveProperty(t,e,n,r=!1){if(!(0,Zl.isEligibleForProperties)(t))return new as({source:t.source,kind:fo.CompletionItemKind.Variable,container:e,label:n.label,context:t}).addType(lo.SignatureDefinitionBaseType.Any);let i=new as({source:n.source,kind:fo.CompletionItemKind.Variable,container:e,label:n.label,context:t});for(let s of n.types){let o=t.values.get(`t:${s}`);o&&i.extend(o)}return i.types.size===0&&i.addType(lo.SignatureDefinitionBaseType.Any),(0,Ai.resolveEntity)(e,i,r)},setProperty(t,e,n,r){if(!(0,Zl.isEligibleForProperties)(t))return!1;for(let i of n.types){let s=`t:${i}`,o=t.values.get(s);o?o.extend(r):t.values.set(s,r.copy({container:e,label:i,context:t,definitions:[]}))}return!0}},as=class t{get source(){return this._source}get definitions(){return this._definitions}get kind(){return this._kind}get line(){return this._line}get signatureDefinitions(){return this._signatureDefinitions}get context(){return this._context}get label(){return this._label}get types(){return this._types}get values(){return this._values}constructor(e){this._source=e.source,this._isAPI=e.isAPI??!1,this._isFromSignature=e.isFromSignature??!1,this._kind=e.kind,this._line=e.line??-1,this._label=e.label??"anonymous",this._signatureDefinitions=e.signatureDefinitions??new tE.ObjectSet,this._types=e.types??new Set,this._values=e.values??new Map,this._context=e.context??null,this._container=e.container,this._definitions=e.definitions??[],this._returnEntity=e.returnEntity??null}isFromSignature(){return this._isFromSignature}hasContext(){return this._context!=null&&!this._context.isAPI}getIsa(){return this._values.get("i:__isa")??null}hasIsa(){return this._values.has("i:__isa")}isAPI(){return this._isAPI}isCallable(){return this._types.has(lo.SignatureDefinitionBaseType.Function)}getCallableReturnTypes(){if(!this.isCallable())return null;let e=Array.from(this._signatureDefinitions).filter(n=>(0,jM.isSignatureDefinitionFunction)(n));return e.length===0?null:e.flatMap(n=>n.getReturns()).map(n=>n.type)}addSignatureType(e){return this._signatureDefinitions.add(e),this.addType(e.getType().type),this}setReturnEntity(e){return this._returnEntity=e,this}getReturnEntity(){return this._returnEntity}setKind(e){return this._kind=e,this}setLine(e){return this._line=e,this}setLabel(e){return this._label=e,this}setContext(e){return this._context=e,this}addType(e){return this._types.add(e),this}addTypes(e){for(let n=0;n<e.length;n++)this._types.add(e[n]);return this}hasProperty(e){switch(typeof e){case"object":return yy.hasProperty(this,this._container,e);default:return my.hasProperty(this,this._container,e)}}resolveProperty(e,n=!1){switch(typeof e){case"object":return yy.resolveProperty(this,this._container,e,n);default:return my.resolveProperty(this,this._container,e,n)}}setProperty(e,n){switch(typeof e){case"object":return yy.setProperty(this,this._container,e,n);default:return my.setProperty(this,this._container,e,n)}}extend(e){if(e===this)return this;this._isFromSignature=!1,this._signatureDefinitions.extend(e.signatureDefinitions),this.addTypes(Array.from(e.types));for(let[n,r]of e.values){let i=this.values.get(n);i==null?this.values.set(n,r.copy({container:this._container,context:this})):i.extend(r)}return this}insertSignature(e){let n=Object.keys(e.getDefinitions());this.addType(lo.SignatureDefinitionBaseType.Map);for(let r=0;r<n.length;r++){let i=n[r],s=e.getDefinition(i),o=new t({source:this._source,label:i,kind:s.getType().type===lo.SignatureDefinitionBaseType.Function?fo.CompletionItemKind.Function:fo.CompletionItemKind.Property,container:this._container,isFromSignature:!0});o.addSignatureType(s),this.setProperty(i,o)}return this}getAllIdentifier(){let e=new Map;for(let n of this._types){let r=this._container.getAllIdentifier(n);for(let i of r)e.set(...i)}return(0,FM.injectIdentifers)(e,this),e}toJSONInternal(e=new WeakMap){if(e.has(this))return e.get(this);let n={};return e.set(this,n),n.kind=this.kind,n.signatureDefinitions=this._signatureDefinitions.toJSON(),n.types=Array.from(this._types),n.values=Array.from(this._values).reduce((r,[i,s])=>(r[i]=s?.toJSONInternal(e),r),{}),n}toJSON(){return this.toJSONInternal()}copy(e={}){let n=new t({source:e.source??this._source,kind:e.kind??this._kind,line:e.line??this._line,isFromSignature:e.isFromSignature??this._isFromSignature,isAPI:e.isAPI??this._isAPI,container:e.container??this._container,label:e.label??this._label,context:e.context??this._context,signatureDefinitions:new tE.ObjectSet(Array.from(this._signatureDefinitions,r=>r.copy())),types:new Set(this._types),returnEntity:this._returnEntity,values:e.values??this.values,definitions:e.definitions??this._definitions});return e.deepCopy&&(n._values=new Map(Array.from(this._values,([r,i])=>[r,i.copy({deepCopy:e.deepCopy,container:e.container,line:e.line,context:n,values:i.values})])),n._definitions=[...this._definitions]),n}};Ai.Entity=as});var _y=g(nd=>{"use strict";Object.defineProperty(nd,"__esModule",{value:!0});nd.Scope=void 0;var ed=Wn(),us=os(),by=ja(),td=po(),vy=class t{get source(){return this._source}get definitions(){return[]}get signatureDefinitions(){return null}get kind(){return us.CompletionItemKind.Constant}get line(){return this._locals.line}get label(){return this._locals.label}get context(){return this._locals.context}get types(){return new Set(ed.SignatureDefinitionBaseType.Map)}get values(){return this._locals.values}get globals(){return this._globals}get outer(){return this._parent?.locals??null}get locals(){return this._locals}constructor(e){this._source=e.source,this._container=e.container,this._parent=e.parent??null,this._globals=e.globals,this._locals=e.locals??new td.Entity({source:this._source,kind:us.CompletionItemKind.Constant,container:this._container,label:"locals"}).addType(ed.SignatureDefinitionBaseType.Map)}getIsa(){return null}hasIsa(){return!1}setCustomType(e,n){this._container.setCustomType(e,n)}addSignatureType(){throw new Error("Cannot add signature type to scope!")}hasProperty(e){return this._locals.hasProperty(e)}resolveProperty(e,n){return this._locals.resolveProperty(e,n)}resolveNamespace(e,n=!1){if(typeof e!="string")throw new Error("Invalid property type for scope!");if(e==="locals")return this._locals;if(e==="outer")return this._parent?.locals??this._globals;if(e==="globals")return this._globals;if(this._locals.values.has(`i:${e}`)){let r=this._locals.values.get(`i:${e}`);return(0,td.resolveEntity)(this._container,r,n)}else if(this._parent?.locals.values.has(`i:${e}`)){let r=this._parent.locals.values.get(`i:${e}`);return(0,td.resolveEntity)(this._container,r,n)}else if(this._globals.values.has(`i:${e}`)){let r=this._globals.values.get(`i:${e}`);return(0,td.resolveEntity)(this._container,r,n)}return this._container.getGeneralDefinition(e,n)}setProperty(e,n){return this._locals.setProperty(e,n)}extend(e){return this._locals.extend(e),this}addType(){throw new Error("Scope cannot get type assigned!")}addTypes(){throw new Error("Scope cannot get types assigned!")}setReturnEntity(){throw new Error("Scope cannot set return entity!")}getReturnEntity(){throw new Error("Scope cannot get return entity!")}setKind(e){return this._locals.setKind(e),this}setLine(e){return this._locals.setLine(e),this}setLabel(e){return this._locals.setLabel(e),this}setContext(e){return this._locals.setContext(e),this}insertSignature(e){return this._locals.insertSignature(e),this}isAPI(){return!1}hasContext(){return!1}isFromSignature(){return!1}isCallable(){return!1}getCallableReturnTypes(){return null}getAllIdentifier(){let e=new Map([["globals",{kind:us.CompletionItemKind.Constant,line:-1}],["locals",{kind:us.CompletionItemKind.Constant,line:-1}],["outer",{kind:us.CompletionItemKind.Constant,line:-1}],...this._container.getAllIdentifier(ed.SignatureDefinitionBaseType.General)]);return this._locals!==this._globals&&(0,by.injectIdentifers)(e,this._globals),this._parent&&(0,by.injectIdentifers)(e,this._parent.locals),(0,by.injectIdentifers)(e,this._locals),this.isSelfAvailable()&&e.set("self",{kind:us.CompletionItemKind.Constant,line:-1}),this.isSuperAvailable()&&e.set("super",{kind:us.CompletionItemKind.Constant,line:-1}),e}isSelfAvailable(){return this._locals.context!=null&&this._locals.context.types.has(ed.SignatureDefinitionBaseType.Map)}isSuperAvailable(){return this.isSelfAvailable()&&this._locals.context.hasProperty("__isa")}toJSON(){return this._locals.toJSON()}copy(e={}){return new t({source:this._source,container:e.container??this._container,parent:this._parent.copy({container:e.container,deepCopy:!0}),globals:this._globals.copy({container:e.container,deepCopy:!0}),locals:this._locals.copy({...e,deepCopy:!0})})}};nd.Scope=vy});var ho=g(Fa=>{"use strict";Object.defineProperty(Fa,"__esModule",{value:!0});Fa.GreybelKeyword=void 0;var BM;(function(t){t.Envar="#envar",t.Import="#import",t.Include="#include",t.ImportWithComment="//import",t.IncludeWithComment="//include",t.Debugger="debugger",t.Line="#line",t.File="#filename",t.Inject="#inject"})(BM=Fa.GreybelKeyword||(Fa.GreybelKeyword={}))});var ky=g(Sy=>{"use strict";Object.defineProperty(Sy,"__esModule",{value:!0});var cs=qe(),UM=ho(),Ty=class extends cs.LexerValidator{constructor(){super(...arguments),this.isKeyword=Set.prototype.has.bind(new Set([...Object.values(cs.Keyword),...Object.values(UM.GreybelKeyword)]))}isIdentifierStart(e){return super.isIdentifierStart(e)||e===cs.CharacterCode.HASH}isMultilineComment(e,n){return cs.CharacterCode.SLASH===e&&cs.CharacterCode.ASTERISK===n}isMultilineCommentEnd(e,n){return cs.CharacterCode.ASTERISK===e&&cs.CharacterCode.SLASH===n}isComment(e,n){return super.isComment(e,n)||this.isMultilineComment(e,n)}};Sy.default=Ty});var xy=g($a=>{"use strict";Object.defineProperty($a,"__esModule",{value:!0});$a.CharacterCode=void 0;var HM;(function(t){t[t.VERTICAL_LINE=124]="VERTICAL_LINE",t[t.AMPERSAND=38]="AMPERSAND"})(HM=$a.CharacterCode||($a.CharacterCode={}))});var go=g(Ba=>{"use strict";Object.defineProperty(Ba,"__esModule",{value:!0});Ba.Operator=void 0;var WM;(function(t){t.BitwiseAnd="&",t.BitwiseOr="|",t.LeftShift="<<",t.RightShift=">>",t.UnsignedRightShift=">>>"})(WM=Ba.Operator||(Ba.Operator={}))});var Ey=g(Ua=>{"use strict";var GM=Ua&&Ua.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Ua,"__esModule",{value:!0});var or=qe(),KM=GM(ky()),nE=xy(),rE=ho(),wy=go();function iE(t){let e=this.content[this.index];return this.index+=e.length,this.createPunctuator(e,t)}var rd=class t extends or.Lexer{constructor(e,n={}){n.validator=n.validator||new KM.default,super(e,n)}scan(e,n){let r=t.greybelScanHandlers[e];return r?r.call(this,n)||super.scan(e,n):super.scan(e,n)}scanMultilineComment(e){let n=this,r=n.line,i=n.lineStart,s=n.index,o=n.offset,a=n.offset,u=!1;for(;n.index<n.length;){let d=n.codeAt();if(n.validator.isEndOfLine(d))n.validator.isWinNewline(d,n.codeAt(1))&&n.index++,n.line++,a=n.index+1;else if(n.validator.isMultilineCommentEnd(n.codeAt(),n.codeAt(1))){u=!0;break}n.index++}if(!u)return n.raise("Unexpected end of file in multiline comment.",new or.ASTRange(new or.ASTPosition(r,s-o+1),new or.ASTPosition(n.line,n.index-a+3)));let c=n.content.slice(s+2,n.index);n.index+=2;let l=new or.Token({type:or.TokenType.Comment,value:c,line:r,lineStart:i,range:[n.tokenStart,n.index],offsetRange:[o,a],afterSpace:e,lastLine:n.line,lastLineStart:n.lineStart});return n.offset=a,n.snapshot.enqueue(l),l}scanComment(e){let n=this,r=n.validator;return n.content.startsWith(rE.GreybelKeyword.ImportWithComment,n.index)||n.content.startsWith(rE.GreybelKeyword.IncludeWithComment,n.index)?(n.index++,n.scanIdentifierOrKeyword(e)):r.isMultilineComment(n.codeAt(),n.codeAt(1))?n.scanMultilineComment(e):super.scanComment(e)}};Ua.default=rd;rd.greybelScanHandlers={[or.CharacterCode.ARROW_LEFT]:function(e){if(or.CharacterCode.ARROW_LEFT===this.codeAt(1))return this.scanPunctuator(wy.Operator.LeftShift,e)},[or.CharacterCode.ARROW_RIGHT]:function(e){if(or.CharacterCode.ARROW_RIGHT===this.codeAt(1))return or.CharacterCode.ARROW_RIGHT===this.codeAt(2)?this.scanPunctuator(wy.Operator.UnsignedRightShift,e):this.scanPunctuator(wy.Operator.RightShift,e)},[nE.CharacterCode.AMPERSAND]:iE,[nE.CharacterCode.VERTICAL_LINE]:iE}});var id=g(Ha=>{"use strict";Object.defineProperty(Ha,"__esModule",{value:!0});Ha.ASTType=void 0;var VM;(function(t){t.FeatureImportExpression="FeatureImportExpression",t.FeatureIncludeExpression="FeatureIncludeExpression",t.FeatureEnvarExpression="FeatureEnvarExpression",t.FeatureInjectExpression="FeatureInjectExpression",t.FeatureDebuggerExpression="FeatureDebuggerExpression",t.FeatureLineExpression="FeatureLineExpression",t.FeatureFileExpression="FeatureFileExpression"})(VM=Ha.ASTType||(Ha.ASTType={}))});var Oy=g(sd=>{"use strict";Object.defineProperty(sd,"__esModule",{value:!0});sd.ASTChunkAdvanced=void 0;var zM=qe(),Ay=class t extends zM.ASTChunk{constructor(e){super(e),this.imports=e.imports||[],this.includes=e.includes||[],this.injects=e.injects||[]}clone(){return new t({literals:this.literals.map(e=>e.clone()),scopes:this.scopes.map(e=>e.clone()),imports:this.imports.map(e=>e.clone()),includes:this.includes.map(e=>e.clone()),injects:this.injects.map(e=>e.clone()),lines:this.lines,start:this.start,end:this.end,range:this.range,scope:this.scope})}};sd.ASTChunkAdvanced=Ay});var My=g(Gn=>{"use strict";Object.defineProperty(Gn,"__esModule",{value:!0});Gn.ASTFeatureFileExpression=Gn.ASTFeatureInjectExpression=Gn.ASTFeatureEnvarExpression=Gn.ASTFeatureIncludeExpression=Gn.ASTFeatureImportExpression=void 0;var Wa=qe(),Ga=id(),Cy=class t extends Wa.ASTBase{constructor(e){super(Ga.ASTType.FeatureImportExpression,e),this.name=e.name,this.path=e.path,this.chunk=e.chunk,this.namespace=e.namespace}toString(){return`FeatureImportExpression[${this.start}-${this.end}][name = ${this.name}, path = ${this.path}]`}clone(){return new t({name:this.name.clone(),path:this.path,chunk:this.chunk.clone(),namespace:this.namespace,start:this.start,end:this.end,range:this.range,scope:this.scope})}};Gn.ASTFeatureImportExpression=Cy;var Ry=class t extends Wa.ASTBase{constructor(e){super(Ga.ASTType.FeatureIncludeExpression,e),this.path=e.path,this.chunk=e.chunk,this.namespace=e.namespace}toString(){return`FeatureIncludeExpression[${this.start}-${this.end}][path = ${this.path}]`}clone(){return new t({path:this.path,chunk:this.chunk.clone(),namespace:this.namespace,start:this.start,end:this.end,range:this.range,scope:this.scope})}};Gn.ASTFeatureIncludeExpression=Ry;var Py=class t extends Wa.ASTBase{constructor(e){super(Ga.ASTType.FeatureEnvarExpression,e),this.name=e.name}toString(){return`FeatureEnvarExpression[${this.start}-${this.end}][name = ${this.name}]`}clone(){return new t({name:this.name,start:this.start,end:this.end,range:this.range,scope:this.scope})}};Gn.ASTFeatureEnvarExpression=Py;var Dy=class t extends Wa.ASTBase{constructor(e){super(Ga.ASTType.FeatureInjectExpression,e),this.path=e.path}toString(){return`FeatureInjectExpression[${this.start}-${this.end}][path = ${this.path}]`}clone(){return new t({path:this.path,start:this.start,end:this.end,range:this.range,scope:this.scope})}};Gn.ASTFeatureInjectExpression=Dy;var Iy=class t extends Wa.ASTBase{constructor(e){super(Ga.ASTType.FeatureFileExpression,e),this.filename=e.filename}toString(){return`FeatureFileExpression[${this.start}-${this.end}][path = ${this.filename}]`}clone(){return new t({filename:this.filename,start:this.start,end:this.end,range:this.range,scope:this.scope})}};Gn.ASTFeatureFileExpression=Iy});var qy=g(Nt=>{"use strict";Object.defineProperty(Nt,"__esModule",{value:!0});Nt.ASTFeatureInjectExpression=Nt.ASTFeatureIncludeExpression=Nt.ASTFeatureImportExpression=Nt.ASTFeatureFileExpression=Nt.ASTFeatureEnvarExpression=Nt.ASTChunkAdvanced=Nt.ASTType=Nt.ASTProvider=void 0;var Ly=qe(),sE=id(),XM=Oy(),Ka=My(),Ny=class extends Ly.ASTProvider{featureImportExpression(e){return new Ka.ASTFeatureImportExpression(e)}featureIncludeExpression(e){return new Ka.ASTFeatureIncludeExpression(e)}featureEnvarExpression(e){return new Ka.ASTFeatureEnvarExpression(e)}featureInjectExpression(e){return new Ka.ASTFeatureInjectExpression(e)}featureDebuggerExpression(e){return new Ly.ASTBase(sE.ASTType.FeatureDebuggerExpression,e)}featureLineExpression(e){return new Ly.ASTBase(sE.ASTType.FeatureLineExpression,e)}featureFileExpression(e){return new Ka.ASTFeatureFileExpression(e)}chunkAdvanced(e){return new XM.ASTChunkAdvanced(e)}};Nt.ASTProvider=Ny;var YM=id();Object.defineProperty(Nt,"ASTType",{enumerable:!0,get:function(){return YM.ASTType}});var JM=Oy();Object.defineProperty(Nt,"ASTChunkAdvanced",{enumerable:!0,get:function(){return JM.ASTChunkAdvanced}});var Va=My();Object.defineProperty(Nt,"ASTFeatureEnvarExpression",{enumerable:!0,get:function(){return Va.ASTFeatureEnvarExpression}});Object.defineProperty(Nt,"ASTFeatureFileExpression",{enumerable:!0,get:function(){return Va.ASTFeatureFileExpression}});Object.defineProperty(Nt,"ASTFeatureImportExpression",{enumerable:!0,get:function(){return Va.ASTFeatureImportExpression}});Object.defineProperty(Nt,"ASTFeatureIncludeExpression",{enumerable:!0,get:function(){return Va.ASTFeatureIncludeExpression}});Object.defineProperty(Nt,"ASTFeatureInjectExpression",{enumerable:!0,get:function(){return Va.ASTFeatureInjectExpression}})});var jy=g(gt=>{"use strict";Object.defineProperty(gt,"__esModule",{value:!0});gt.SelectorGroups=gt.SelectorGroupType=gt.Selectors=gt.SelectorTypes=void 0;var He=qe(),od=ho(),za=go(),QM;(function(t){t.From="From",t.Envar="Envar",t.Inject="Inject",t.Line="Line",t.File="File",t.LeftShift="LeftShift",t.RightShift="RightShift",t.UnsignedRightShift="UnsignedRightShift",t.BitwiseOr="BitwiseOr",t.BitwiseAnd="BitwiseAnd",t.Escape="Escape"})(QM=gt.SelectorTypes||(gt.SelectorTypes={}));gt.Selectors=Object.assign(Object.assign({},He.Selectors),{From:(0,He.createSelector)({type:He.TokenType.Identifier,value:"from"}),Envar:(0,He.createSelector)({type:He.TokenType.Keyword,value:od.GreybelKeyword.Envar}),Inject:(0,He.createSelector)({type:He.TokenType.Keyword,value:od.GreybelKeyword.Inject}),Line:(0,He.createSelector)({type:He.TokenType.Keyword,value:od.GreybelKeyword.Line}),File:(0,He.createSelector)({type:He.TokenType.Keyword,value:od.GreybelKeyword.File}),LeftShift:(0,He.createSelector)({type:He.TokenType.Punctuator,value:za.Operator.LeftShift}),RightShift:(0,He.createSelector)({type:He.TokenType.Punctuator,value:za.Operator.RightShift}),UnsignedRightShift:(0,He.createSelector)({type:He.TokenType.Punctuator,value:za.Operator.UnsignedRightShift}),BitwiseOr:(0,He.createSelector)({type:He.TokenType.Punctuator,value:za.Operator.BitwiseOr}),BitwiseAnd:(0,He.createSelector)({type:He.TokenType.Punctuator,value:za.Operator.BitwiseAnd}),Escape:(0,He.createSelector)({type:He.TokenType.Punctuator,value:He.Operator.Escape})});var Kr;(function(t){t.MapSeparator="MapSeparator",t.ListSeparator="ListSeparator",t.PathSegmentEnd="PathSegmentEnd",t.BitwiseOperators="BitwiseOperators"})(Kr=gt.SelectorGroupType||(gt.SelectorGroupType={}));gt.SelectorGroups=Object.assign(Object.assign({},He.SelectorGroups),{[Kr.MapSeparator]:(0,He.createSelectorGroup)(Kr.MapSeparator,[gt.Selectors.MapSeperator,gt.Selectors.CRBracket]),[Kr.ListSeparator]:(0,He.createSelectorGroup)(Kr.ListSeparator,[gt.Selectors.MapSeperator,gt.Selectors.SRBracket]),[Kr.PathSegmentEnd]:(0,He.createSelectorGroup)(Kr.PathSegmentEnd,[gt.Selectors.EndOfLine,gt.Selectors.Comment,gt.Selectors.EndOfFile]),[Kr.BitwiseOperators]:(0,He.createSelectorGroup)(Kr.BitwiseOperators,[gt.Selectors.LeftShift,gt.Selectors.RightShift,gt.Selectors.UnsignedRightShift])})});var uE=g(Xa=>{"use strict";var ZM=Xa&&Xa.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Xa,"__esModule",{value:!0});var gn=qe(),eL=ra(),oE=ca(),tL=ZM(Ey()),nL=qy(),ls=ho(),aE=go(),Fe=jy(),Fy=class extends gn.Parser{constructor(e,n={}){var r;n.lexer=n.lexer||new tL.default(e,{unsafe:n.unsafe,tabWidth:n.tabWidth}),n.astProvider=n.astProvider||new nL.ASTProvider,super(e,n);let i=this;i.filename=(r=n.filename)!==null&&r!==void 0?r:"unknown",i.imports=[],i.includes=[],i.injects=[]}skipNewlines(){let e=this,n=0;for(;;){if(Fe.Selectors.Comment(e.token)){let r=e.astProvider.comment({value:e.token.value,isMultiline:e.token.value.indexOf(`
108
- `)!==-1,start:e.token.start,end:e.token.end,range:e.token.range,scope:e.currentScope});e.addItemToLines(r),e.backpatches.peek().body.push(r)}else if(Fe.Selectors.EndOfLine(e.token))n++;else break;e.next()}return n}parseMap(e=!1,n=!1){let r=this;if(!Fe.Selectors.CLBracket(r.token))return r.parseList(e,n);let i=r.currentScope,s=r.token,o=[],a=r.astProvider.mapConstructorExpression({fields:o,start:s.start,end:null,range:[s.range[0],null],scope:i});if(r.next(),Fe.Selectors.CRBracket(r.token))r.next();else for(;!Fe.Selectors.EndOfFile(r.token);){if(r.skipNewlines(),Fe.Selectors.CRBracket(r.token)){r.next();break}let u=r.astProvider.mapKeyString({key:null,value:null,start:r.token.start,end:null,range:[r.token.range[0],null],scope:i});if(u.key=r.parseExpr(null),r.requireToken(Fe.Selectors.MapKeyValueSeperator),r.skipNewlines(),r.currentAssignment){let l=r.astProvider.assignmentStatement({variable:r.astProvider.indexExpression({index:u.key,base:r.currentAssignment.variable,start:u.start,end:r.token.end,range:[u.range[0],r.token.range[1]],scope:i}),init:null,start:u.start,end:null,range:[u.range[0],null]}),d=r.currentAssignment;r.currentAssignment=l,u.value=r.parseExpr(u),r.currentAssignment=d,l.init=u.value,l.end=r.previousToken.end,l.range[1]=r.previousToken.range[1],i.assignments.push(l)}else u.value=r.parseExpr(u);u.end=r.previousToken.end,u.range[1]=r.previousToken.range[1],o.push(u),r.skipNewlines();let c=r.requireTokenOfAny(Fe.SelectorGroups.MapSeparator,s.start);if(Fe.Selectors.CRBracket(c))break}return a.end=r.token.start,a.range[1]=r.token.range[1],a}parseList(e=!1,n=!1){let r=this;if(!Fe.Selectors.SLBracket(r.token))return r.parseQuantity(e,n);let i=r.currentScope,s=r.token,o=[],a=r.astProvider.listConstructorExpression({fields:o,start:s.start,end:null,range:[s.range[0],null],scope:i});if(r.next(),Fe.Selectors.SRBracket(r.token))r.next();else for(;!Fe.Selectors.EndOfFile(r.token);){if(r.skipNewlines(),Fe.Selectors.SRBracket(r.token)){r.next();break}let u=r.astProvider.listValue({value:null,start:r.token.start,end:null,range:[r.token.range[0],null],scope:i});if(r.currentAssignment){let l=r.astProvider.assignmentStatement({variable:r.astProvider.indexExpression({index:r.astProvider.literal(gn.TokenType.NumericLiteral,{value:o.length,raw:`${o.length}`,start:s.start,end:r.token.end,range:[s.range[0],r.token.range[1]],scope:i}),base:r.currentAssignment.variable,start:null,end:null,range:[null,null],scope:i}),init:null,start:null,end:null,range:[null,null]}),d=r.currentAssignment,p=r.token;r.currentAssignment=d,u.value=r.parseExpr(u),r.currentAssignment=d,l.variable.start=p.start,l.variable.end=r.previousToken.end,l.variable.range=[p.range[0],r.previousToken.range[1]],l.init=u.value,l.start=u.start,l.end=r.previousToken.end,l.range=[u.range[0],r.previousToken.range[1]],i.assignments.push(l)}else u.value=r.parseExpr(u);u.end=r.previousToken.end,u.range[1]=r.previousToken.range[1],o.push(u),r.skipNewlines();let c=r.requireTokenOfAny(Fe.SelectorGroups.ListSeparator,s.start);if(Fe.Selectors.SRBracket(c))break}return a.end=r.token.start,a.range[1]=r.token.range[1],a}parsePathSegment(){let e=this;if(this.token.type===gn.ASTType.StringLiteral){let r=this.token.value;return this.next(),r}let n="";for(;!Fe.SelectorGroups.PathSegmentEnd(e.token);)n=n+e.token.value,e.next();return e.consumeMany(Fe.SelectorGroups.PathSegmentEnd),n}parseFeatureIncludeStatement(){let e=this,n=e.previousToken,r=e.parsePathSegment(),i=e.astProvider.featureIncludeExpression({path:r,start:n.start,end:e.previousToken.end,range:[n.range[0],e.previousToken.range[1]],scope:e.currentScope});return e.includes.push(i),i}parseFeatureImportStatement(){var e;let n=this,r=n.previousToken,i=n.parseIdentifier();if(!n.consume(Fe.Selectors.From))return n.raise("expected from keyword",new oE.Range(r.start,new eL.Position((e=n.token.lastLine)!==null&&e!==void 0?e:n.token.line,n.token.end.character))),n.parseInvalidCode();let s=n.parsePathSegment(),o=n.astProvider.featureImportExpression({name:i,path:s,start:r.start,end:n.previousToken.end,range:[r.range[0],n.previousToken.range[1]],scope:n.currentScope});n.imports.push(o);let a=n.astProvider.assignmentStatement({variable:i,init:n.astProvider.literal(gn.TokenType.NilLiteral,{value:null,raw:"null",start:i.start,end:i.end,range:i.range,scope:n.currentScope}),start:i.start,end:i.end,range:i.range,scope:n.currentScope});return n.currentScope.assignments.push(a),o}parseFeatureEnvarExpression(){let e=this,n=e.previousToken,r=e.token.value;return e.next(),e.astProvider.featureEnvarExpression({name:r,start:n.start,end:e.previousToken.end,range:[n.range[0],e.previousToken.range[1]],scope:e.currentScope})}parseFeatureInjectExpression(){let e=this,n=e.previousToken,r=this.parsePathSegment();e.next();let i=e.astProvider.featureInjectExpression({path:r,start:n.start,end:e.previousToken.end,range:[n.range[0],e.previousToken.range[1]],scope:e.currentScope});return e.injects.push(i),i}parseIsa(e=!1,n=!1){let r=this,i=r.token,s=r.parseBitwiseOr(e,n);if(Fe.Selectors.Isa(r.token)){r.next(),r.skipNewlines();let o=r.parseBitwiseOr();return r.astProvider.isaExpression({operator:gn.Operator.Isa,left:s,right:o,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return s}parseBitwiseOr(e=!1,n=!1){let r=this,i=r.token,o=r.parseBitwiseAnd(e,n);for(;Fe.Selectors.BitwiseOr(r.token);){r.next();let a=r.parseBitwiseAnd();o=r.astProvider.binaryExpression({operator:aE.Operator.BitwiseOr,left:o,right:a,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return o}parseBitwiseAnd(e=!1,n=!1){let r=this,i=r.token,o=r.parseComparisons(e,n);for(;Fe.Selectors.BitwiseAnd(r.token);){r.next();let a=r.parseComparisons();o=r.astProvider.binaryExpression({operator:aE.Operator.BitwiseAnd,left:o,right:a,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return o}parseAddSub(e=!1,n=!1){let r=this,i=r.token,o=r.parseBitwise(e,n);for(;Fe.Selectors.Plus(r.token)||Fe.Selectors.Minus(r.token)&&(!n||!r.token.afterSpace||r.lexer.isAtWhitespace());){let a=r.token;r.next(),r.skipNewlines();let u=r.parseBitwise();o=r.astProvider.binaryExpression({operator:a.value,left:o,right:u,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return o}parseBitwise(e=!1,n=!1){let r=this,i=r.token,o=r.parseMultDiv(e,n);for(;Fe.SelectorGroups.BitwiseOperators(r.token);){let a=r.token;r.next(),r.skipNewlines();let u=r.parseMultDiv();o=r.astProvider.binaryExpression({operator:a.value,left:o,right:u,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return o}parseAtom(){let e=this;return Fe.Selectors.Envar(e.token)?(e.next(),e.parseFeatureEnvarExpression()):Fe.Selectors.Inject(e.token)?(e.next(),e.parseFeatureInjectExpression()):Fe.Selectors.Line(e.token)?(e.next(),e.astProvider.featureLineExpression({start:new gn.ASTPosition(e.previousToken.line,e.previousToken.start.character),end:new gn.ASTPosition(e.previousToken.line,e.previousToken.end.character),range:e.previousToken.range,scope:e.currentScope})):Fe.Selectors.File(e.token)?(e.next(),e.astProvider.featureFileExpression({filename:e.filename,start:new gn.ASTPosition(e.previousToken.line,e.previousToken.start.character),end:new gn.ASTPosition(e.previousToken.line,e.previousToken.end.character),range:e.previousToken.range,scope:e.currentScope})):super.parseAtom()}parseStatement(){let e=this,n=e.backpatches.peek();if(e.isType(gn.TokenType.Keyword))switch(e.token.value){case ls.GreybelKeyword.Include:case ls.GreybelKeyword.IncludeWithComment:{e.next();let i=e.parseFeatureIncludeStatement();e.addItemToLines(i),n.body.push(i);return}case ls.GreybelKeyword.Import:case ls.GreybelKeyword.ImportWithComment:{e.next();let i=e.parseFeatureImportStatement();e.addItemToLines(i),n.body.push(i);return}case ls.GreybelKeyword.Envar:{e.next();let i=e.parseFeatureEnvarExpression();e.addItemToLines(i),n.body.push(i);return}case ls.GreybelKeyword.Inject:{e.next();let i=e.parseFeatureInjectExpression();e.addItemToLines(i),n.body.push(i);return}case ls.GreybelKeyword.Debugger:{e.next();let i=e.astProvider.featureDebuggerExpression({start:new gn.ASTPosition(e.previousToken.line,e.previousToken.start.character),end:new gn.ASTPosition(e.previousToken.line,e.previousToken.end.character),range:e.previousToken.range,scope:e.currentScope});e.addItemToLines(i),n.body.push(i);return}default:break}super.parseStatement()}parseChunk(){let e=this;e.next();let n=e.token,r=e.astProvider.chunkAdvanced({start:n.start,end:null,range:[n.range[0],null]}),i=new gn.PendingChunk(r);for(e.backpatches.setDefault(i),e.pushScope(r);!Fe.Selectors.EndOfFile(e.token)&&(e.skipNewlines(),!Fe.Selectors.EndOfFile(e.token));)e.lexer.recordSnapshot(),e.statementErrors=[],e.parseStatement(),e.statementErrors.length>0&&e.tryToRecover();let s=e.backpatches.pop();for(;!(0,gn.isPendingChunk)(s);){let o=e.raise(`found open block ${s.block.type}`,new oE.Range(s.block.start,s.block.start));if(s.complete(e.previousToken),e.errors.push(o),!e.unsafe)throw o;s=e.backpatches.pop()}return e.finishRemaingScopes(),e.popScope(),i.complete(e.token),r.literals=e.literals,r.scopes=e.scopes,r.lines=e.lines,r.imports=e.imports,r.includes=e.includes,r.injects=e.injects,r}};Xa.default=Fy});var Or=g(Pt=>{"use strict";var rL=Pt&&Pt.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),Ya=Pt&&Pt.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&rL(e,t,n)},$y=Pt&&Pt.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Pt,"__esModule",{value:!0});Pt.Parser=Pt.LexerValidator=Pt.Lexer=void 0;var iL=Ey();Object.defineProperty(Pt,"Lexer",{enumerable:!0,get:function(){return $y(iL).default}});var sL=ky();Object.defineProperty(Pt,"LexerValidator",{enumerable:!0,get:function(){return $y(sL).default}});var oL=uE();Object.defineProperty(Pt,"Parser",{enumerable:!0,get:function(){return $y(oL).default}});Ya(qy(),Pt);Ya(xy(),Pt);Ya(ho(),Pt);Ya(go(),Pt);Ya(jy(),Pt)});var By=g(ad=>{"use strict";Object.defineProperty(ad,"__esModule",{value:!0});ad.merge=void 0;function aL(t,e,n=1e4){if(e.length<=n){Array.prototype.push.apply(t,e);return}for(let r=0;r<e.length;r+=n)Array.prototype.push.apply(t,e.slice(r,r+n))}ad.merge=aL});var cE=g(ud=>{"use strict";Object.defineProperty(ud,"__esModule",{value:!0});ud.mergeUnique=void 0;function uL(t,e,n=1e4){let r=Array.from(new Set([...t,...e]));if(t.length=0,r.length<=n){Array.prototype.push.apply(t,r);return}for(let i=0;i<r.length;i+=n)Array.prototype.push.apply(t,r.slice(i,i+n))}ud.mergeUnique=uL});var lE=g(cd=>{"use strict";Object.defineProperty(cd,"__esModule",{value:!0});cd.parseMapDescription=void 0;var cL=iy();function lL(t){return{path:t.name,type:t.type}}function dL(t){let e=t.tags.find(r=>r.tag==="type");if(!e)return null;let n=t.tags.filter(r=>r.tag==="property");return{type:e.name,properties:n.map(lL)}}function fL(t){let e=(0,cL.parse)(`/**
107
+ */`),[n]=e;if(n.tags.length>0){let{descriptions:r,args:i,returns:s,examples:o}=SM(n);return Q0.SignatureDefinitionFunction.parse({type:Q0.SignatureDefinitionBaseType.Function,arguments:t.getArguments().map((a,u)=>{let c=a.getLabel(),l=a.getTypes().map(p=>p.toString()),d=a.isOptional();return{types:l,opt:d,...i[u],label:c}}),returns:s.type.split("|"),description:r,example:o})}return t}ss.enrichWithMetaInformation=kM});var oy=g(Hl=>{"use strict";Object.defineProperty(Hl,"__esModule",{value:!0});Hl.createResolveChain=void 0;var an=qe();function Ei(t,e,n=null,r=!1){switch(t.type){case an.ASTType.ParenthesisExpression:{Ei(t.expression,e,n);return}case an.ASTType.MemberExpression:{let i=t;Ei(i.base,e),e.push({ref:t,getter:i.identifier,unary:n,isInCallExpression:r});return}case an.ASTType.IndexExpression:{let i=t;Ei(i.base,e),e.push({ref:t,getter:i.index,unary:n,isInCallExpression:r});return}case an.ASTType.CallStatement:{Ei(t.expression,e,n,!0);return}case an.ASTType.CallExpression:{Ei(t.base,e,n,!0);return}case an.ASTType.NegationExpression:case an.ASTType.BinaryNegatedExpression:case an.ASTType.UnaryExpression:{let i=t;Ei(i.argument,e,i);return}case an.ASTType.Identifier:{e.push({ref:t,getter:t,unary:n,isInCallExpression:r});return}case an.ASTType.NumericLiteral:case an.ASTType.StringLiteral:case an.ASTType.NilLiteral:case an.ASTType.MapConstructorExpression:case an.ASTType.ListConstructorExpression:{e.push({ref:t,value:t,unary:n,isInCallExpression:r});return}case an.ASTType.SliceExpression:Ei(t.base,e),e.push({ref:t,unary:n,isInCallExpression:r})}}function xM(t){let e=[];return Ei(t,e),e}Hl.createResolveChain=xM});var tE=g(ay=>{function eE(t,e){return t>e?1:-1}ay.hash=function t(e,n){var r=5381;if(typeof e=="object"&&e!==null&&(e.toString===Object.prototype.toString||e.toString===Array.prototype.toString)){n||(n=new WeakSet);for(var i=Object.keys(e).sort(eE),s=0;s<i.length;s++){var o=i[s],a=e[o];if(r=33*r^t(o,n),typeof a=="object"&&a!==null&&(e.toString===Object.prototype.toString||e.toString===Array.prototype.toString)){if(n.has(a))continue;n.add(a)}r=33*r^t(a,n)}return 33*r^t(e.constructor,n)}var u=typeof e;try{e instanceof Date?u+=e.getTime():u+=String(e)}catch{u+=String(Object.assign({},e))}for(var c=0;c<u.length;c++)r=33*r^u.charCodeAt(c);return r},ay.sortNumbers=eE});var ly=g(co=>{"use strict";Object.defineProperty(co,"__esModule",{value:!0});co.ObjectSet=co.ObjectSetIterator=void 0;var uy=tE(),Wl=class{constructor(e){let n=this;n.value=e,n.index=0}next(){let e=this;return e.index>=e.value.length?{value:null,done:!0}:{value:e.value[e.index++],done:!1}}};co.ObjectSetIterator=Wl;var cy=class{constructor(e){let r=(e?Array.from(e):[]).map(i=>[(0,uy.hash)(i),i]);this._map=new Map(r),this._first=null,this._last=null,r.length>0&&(this._first=r[0][0],this._last=r[r.length-1][0])}[Symbol.iterator](){return new Wl(Array.from(this._map.values()))}first(){return this._first!=null?this._map.get(this._first)??null:null}last(){return this._last!=null?this._map.get(this._last)??null:null}toArray(){return Array.from(this._map.values())}add(e){let n=(0,uy.hash)(e);return this._map.set(n,e),this._first??(this._first=n),this._last=n,this}delete(e){let n=(0,uy.hash)(e);return this._map.delete(n)}extend(e){for(let[n,r]of e._map)this._map.set(n,r),this._first??(this._first=n),this._last=n;return this}toJSON(){return Array.from(this._map.values())}clear(){this._map.clear()}};co.ObjectSet=cy});var dy=g(Gl=>{"use strict";Object.defineProperty(Gl,"__esModule",{value:!0});Gl.DEFAULT_CUSTOM_FUNCTION_DESCRIPTION=void 0;Gl.DEFAULT_CUSTOM_FUNCTION_DESCRIPTION="This is a custom method. You can add a description for this method by adding a comment above or after the function.\n```\nmyFunction = function(a, b, c) // This function does xyz\n```\nor\n```\n/*\n This function does xyz\n*/\nmyFunction = function(a, b, c)\n```"});var os=g(qa=>{"use strict";Object.defineProperty(qa,"__esModule",{value:!0});qa.CompletionItemKind=void 0;var wM;(function(t){t.Variable="var",t.Property="var",t.Function="function",t.Literal="literal",t.Constant="constant",t.ListConstructor="list",t.MapConstructor="map",t.Expression="expr",t.Unknown="unknown"})(wM=qa.CompletionItemKind||(qa.CompletionItemKind={}))});var fy=g(Ar=>{"use strict";Object.defineProperty(Ar,"__esModule",{value:!0});Ar.isResolveChainItemWithValue=Ar.isResolveChainItemWithIdentifier=Ar.isResolveChainItemWithMember=Ar.isResolveChainItemWithIndex=void 0;var Ai=qe(),EM=t=>t!=null&&t.ref.type===Ai.ASTType.IndexExpression;Ar.isResolveChainItemWithIndex=EM;var AM=t=>t!=null&&t.ref.type===Ai.ASTType.MemberExpression;Ar.isResolveChainItemWithMember=AM;var OM=t=>t!=null&&t.ref.type===Ai.ASTType.Identifier;Ar.isResolveChainItemWithIdentifier=OM;var CM=t=>t!=null&&(t.ref.type===Ai.ASTType.NumericLiteral||t.ref.type===Ai.ASTType.StringLiteral||t.ref.type===Ai.ASTType.NilLiteral||t.ref.type===Ai.ASTType.MapConstructorExpression||t.ref.type===Ai.ASTType.ListConstructorExpression);Ar.isResolveChainItemWithValue=CM});var py=g(Kl=>{"use strict";Object.defineProperty(Kl,"__esModule",{value:!0});Kl.isSignatureDefinitionFunction=void 0;var RM=Wn(),PM=t=>t.getType().type===RM.SignatureDefinitionBaseType.Function;Kl.isSignatureDefinitionFunction=PM});var hy=g(Vl=>{"use strict";Object.defineProperty(Vl,"__esModule",{value:!0});Vl.aggregateEntity=void 0;var DM=t=>{let e=new Set,n=t;for(;n!=null&&!e.has(n);)e.add(n),n=n.getIsa();return Array.from(e)};Vl.aggregateEntity=DM});var ja=g(zl=>{"use strict";Object.defineProperty(zl,"__esModule",{value:!0});zl.injectIdentifers=void 0;var IM=hy(),MM=(t,e)=>{let n=(0,IM.aggregateEntity)(e);for(let r=0;r<n.length;r++){let i=n[r];for(let[s,o]of i.values)if(s.startsWith("i:")){let a=s.slice(2);if(t.has(a))continue;t.set(a,{kind:o.kind,line:o.source===e.source?o.line:-1})}}};zl.injectIdentifers=MM});var Yl=g(Xl=>{"use strict";Object.defineProperty(Xl,"__esModule",{value:!0});Xl.isEligibleForProperties=void 0;var gy=Wn(),LM=t=>t.types.has(gy.SignatureDefinitionBaseType.Map)||t.types.has(gy.SignatureDefinitionBaseType.List)||t.types.has(gy.SignatureDefinitionBaseType.Any);Xl.isEligibleForProperties=LM});var Ql=g(Jl=>{"use strict";Object.defineProperty(Jl,"__esModule",{value:!0});Jl.lookupProperty=void 0;var NM=Yl(),qM=(t,e)=>{let n=t,r=new Set([n]);for(;(0,NM.isEligibleForProperties)(n);){let i=n.values.get(`i:${e}`);if(i!=null)return i;let s=n.getIsa();if(s==null||r.has(s))break;r.add(s),n=s}return null};Jl.lookupProperty=qM});var my=g(Zl=>{"use strict";Object.defineProperty(Zl,"__esModule",{value:!0});Zl.mergeUnique=void 0;function jM(t,e,n=1e4){let r=Array.from(new Set([...t,...e]));if(t.length=0,r.length<=n){Array.prototype.push.apply(t,r);return}for(let i=0;i<r.length;i+=n)Array.prototype.push.apply(t,r.slice(i,i+n))}Zl.mergeUnique=jM});var po=g(Oi=>{"use strict";Object.defineProperty(Oi,"__esModule",{value:!0});Oi.Entity=Oi.resolveEntity=void 0;var lo=Wn(),fo=os(),FM=py(),$M=ja(),ed=Yl(),nE=Ql(),rE=ly(),BM=my(),UM=(t,e,n=!1)=>{if(e.isCallable()&&!n){let r=e.getReturnEntity();if(r!==null)return r;let i=e.getCallableReturnTypes();return i?new as({source:e.source,kind:fo.CompletionItemKind.Variable,container:t,label:e.label,context:e.context}).addTypes(i):new as({source:e.source,kind:fo.CompletionItemKind.Variable,container:t,label:e.label,context:e.context}).addType(lo.SignatureDefinitionBaseType.Any)}return e};Oi.resolveEntity=UM;var yy={hasProperty(t,e,n){return!!(0,nE.lookupProperty)(t,n)||!t.isAPI()&&!!e.getDefinition(Array.from(t.types),n,!0)},resolveProperty(t,e,n,r=!1){let i=(0,nE.lookupProperty)(t,n)??null;return i==null?t.isAPI()?null:e.getDefinition(Array.from(t.types),n,r):(0,Oi.resolveEntity)(e,i,r)},setProperty(t,e,n,r){if(!(0,ed.isEligibleForProperties)(t))return!1;let i=`i:${n}`,s=t.values.get(i);return s?s.extend(r):t.values.set(i,r.copy({container:e,label:n,context:t,definitions:[]})),!0}},by={hasProperty(t,e,n){if(!(0,ed.isEligibleForProperties)(t))return!1;for(let r of n.types)if(t.values.has(`t:${r}`))return!0;return!1},resolveProperty(t,e,n,r=!1){if(!(0,ed.isEligibleForProperties)(t))return new as({source:t.source,kind:fo.CompletionItemKind.Variable,container:e,label:n.label,context:t}).addType(lo.SignatureDefinitionBaseType.Any);let i=new as({source:n.source,kind:fo.CompletionItemKind.Variable,container:e,label:n.label,context:t});for(let s of n.types){let o=t.values.get(`t:${s}`);o&&i.extend(o)}return i.types.size===0&&i.addType(lo.SignatureDefinitionBaseType.Any),(0,Oi.resolveEntity)(e,i,r)},setProperty(t,e,n,r){if(!(0,ed.isEligibleForProperties)(t))return!1;for(let i of n.types){let s=`t:${i}`,o=t.values.get(s);o?o.extend(r):t.values.set(s,r.copy({container:e,label:i,context:t,definitions:[]}))}return!0}},as=class t{get source(){return this._source}get definitions(){return this._definitions}get kind(){return this._kind}get line(){return this._line}get signatureDefinitions(){return this._signatureDefinitions}get context(){return this._context}get label(){return this._label}get types(){return this._types}get values(){return this._values}constructor(e){this._source=e.source,this._isAPI=e.isAPI??!1,this._isFromSignature=e.isFromSignature??!1,this._kind=e.kind,this._line=e.line??-1,this._label=e.label??"anonymous",this._signatureDefinitions=e.signatureDefinitions??new rE.ObjectSet,this._types=e.types??new Set,this._values=e.values??new Map,this._context=e.context??null,this._container=e.container,this._definitions=e.definitions??[],this._returnEntity=e.returnEntity??null}isFromSignature(){return this._isFromSignature}hasContext(){return this._context!=null&&!this._context.isAPI}getIsa(){return this._values.get("i:__isa")??null}hasIsa(){return this._values.has("i:__isa")}isAPI(){return this._isAPI}isCallable(){return this._types.has(lo.SignatureDefinitionBaseType.Function)}getCallableReturnTypes(){if(!this.isCallable())return null;let e=Array.from(this._signatureDefinitions).filter(n=>(0,FM.isSignatureDefinitionFunction)(n));return e.length===0?null:e.flatMap(n=>n.getReturns()).map(n=>n.type)}addSignatureType(e){return this._signatureDefinitions.add(e),this.addType(e.getType().type),this}setReturnEntity(e){return this._returnEntity=e,this}getReturnEntity(){return this._returnEntity}setKind(e){return this._kind=e,this}setLine(e){return this._line=e,this}setLabel(e){return this._label=e,this}setContext(e){return this._context=e,this}addType(e){return this._types.add(e),this}addTypes(e){for(let n=0;n<e.length;n++)this._types.add(e[n]);return this}hasProperty(e){switch(typeof e){case"object":return by.hasProperty(this,this._container,e);default:return yy.hasProperty(this,this._container,e)}}resolveProperty(e,n=!1){switch(typeof e){case"object":return by.resolveProperty(this,this._container,e,n);default:return yy.resolveProperty(this,this._container,e,n)}}setProperty(e,n){switch(typeof e){case"object":return by.setProperty(this,this._container,e,n);default:return yy.setProperty(this,this._container,e,n)}}extend(e,n=!1){if(e===this)return this;this._isFromSignature=!1,this._signatureDefinitions.extend(e.signatureDefinitions),n&&(0,BM.mergeUnique)(this.definitions,e.definitions),this.addTypes(Array.from(e.types));for(let[r,i]of e.values){let s=this.values.get(r);s==null?this.values.set(r,i.copy({container:this._container,context:this})):s.extend(i,n)}return this}insertSignature(e){let n=Object.keys(e.getDefinitions());this.addType(lo.SignatureDefinitionBaseType.Map);for(let r=0;r<n.length;r++){let i=n[r],s=e.getDefinition(i),o=new t({source:this._source,label:i,kind:s.getType().type===lo.SignatureDefinitionBaseType.Function?fo.CompletionItemKind.Function:fo.CompletionItemKind.Property,container:this._container,isFromSignature:!0});o.addSignatureType(s),this.setProperty(i,o)}return this}getAllIdentifier(){let e=new Map;for(let n of this._types){let r=this._container.getAllIdentifier(n);for(let i of r)e.set(...i)}return(0,$M.injectIdentifers)(e,this),e}toJSONInternal(e=new WeakMap){if(e.has(this))return e.get(this);let n={};return e.set(this,n),n.kind=this.kind,n.signatureDefinitions=this._signatureDefinitions.toJSON(),n.types=Array.from(this._types),n.values=Array.from(this._values).reduce((r,[i,s])=>(r[i]=s?.toJSONInternal(e),r),{}),n}toJSON(){return this.toJSONInternal()}copy(e={}){let n=new t({source:e.source??this._source,kind:e.kind??this._kind,line:e.line??this._line,isFromSignature:e.isFromSignature??this._isFromSignature,isAPI:e.isAPI??this._isAPI,container:e.container??this._container,label:e.label??this._label,context:e.context??this._context,signatureDefinitions:new rE.ObjectSet(Array.from(this._signatureDefinitions,r=>r.copy())),types:new Set(this._types),returnEntity:this._returnEntity,values:e.values??this.values,definitions:e.definitions??this._definitions});return e.deepCopy&&(n._values=new Map(Array.from(this._values,([r,i])=>[r,i.copy({deepCopy:e.deepCopy,container:e.container,line:e.line,context:n,values:i.values})])),n._definitions=[...this._definitions]),n}};Oi.Entity=as});var Ty=g(rd=>{"use strict";Object.defineProperty(rd,"__esModule",{value:!0});rd.Scope=void 0;var td=Wn(),us=os(),vy=ja(),nd=po(),_y=class t{get source(){return this._source}get definitions(){return[]}get signatureDefinitions(){return null}get kind(){return us.CompletionItemKind.Constant}get line(){return this._locals.line}get label(){return this._locals.label}get context(){return this._locals.context}get types(){return new Set(td.SignatureDefinitionBaseType.Map)}get values(){return this._locals.values}get globals(){return this._globals}get outer(){return this._parent?.locals??null}get locals(){return this._locals}constructor(e){this._source=e.source,this._container=e.container,this._parent=e.parent??null,this._globals=e.globals,this._locals=e.locals??new nd.Entity({source:this._source,kind:us.CompletionItemKind.Constant,container:this._container,label:"locals"}).addType(td.SignatureDefinitionBaseType.Map)}getIsa(){return null}hasIsa(){return!1}setCustomType(e,n){this._container.setCustomType(e,n)}addSignatureType(){throw new Error("Cannot add signature type to scope!")}hasProperty(e){return this._locals.hasProperty(e)}resolveProperty(e,n){return this._locals.resolveProperty(e,n)}resolveNamespace(e,n=!1){if(typeof e!="string")throw new Error("Invalid property type for scope!");if(e==="locals")return this._locals;if(e==="outer")return this._parent?.locals??this._globals;if(e==="globals")return this._globals;if(this._locals.values.has(`i:${e}`)){let r=this._locals.values.get(`i:${e}`);return(0,nd.resolveEntity)(this._container,r,n)}else if(this._parent?.locals.values.has(`i:${e}`)){let r=this._parent.locals.values.get(`i:${e}`);return(0,nd.resolveEntity)(this._container,r,n)}else if(this._globals.values.has(`i:${e}`)){let r=this._globals.values.get(`i:${e}`);return(0,nd.resolveEntity)(this._container,r,n)}return this._container.getGeneralDefinition(e,n)}setProperty(e,n){return this._locals.setProperty(e,n)}extend(e){return this._locals.extend(e),this}addType(){throw new Error("Scope cannot get type assigned!")}addTypes(){throw new Error("Scope cannot get types assigned!")}setReturnEntity(){throw new Error("Scope cannot set return entity!")}getReturnEntity(){throw new Error("Scope cannot get return entity!")}setKind(e){return this._locals.setKind(e),this}setLine(e){return this._locals.setLine(e),this}setLabel(e){return this._locals.setLabel(e),this}setContext(e){return this._locals.setContext(e),this}insertSignature(e){return this._locals.insertSignature(e),this}isAPI(){return!1}hasContext(){return!1}isFromSignature(){return!1}isCallable(){return!1}getCallableReturnTypes(){return null}getAllIdentifier(){let e=new Map([["globals",{kind:us.CompletionItemKind.Constant,line:-1}],["locals",{kind:us.CompletionItemKind.Constant,line:-1}],["outer",{kind:us.CompletionItemKind.Constant,line:-1}],...this._container.getAllIdentifier(td.SignatureDefinitionBaseType.General)]);return this._locals!==this._globals&&(0,vy.injectIdentifers)(e,this._globals),this._parent&&(0,vy.injectIdentifers)(e,this._parent.locals),(0,vy.injectIdentifers)(e,this._locals),this.isSelfAvailable()&&e.set("self",{kind:us.CompletionItemKind.Constant,line:-1}),this.isSuperAvailable()&&e.set("super",{kind:us.CompletionItemKind.Constant,line:-1}),e}isSelfAvailable(){return this._locals.context!=null&&this._locals.context.types.has(td.SignatureDefinitionBaseType.Map)}isSuperAvailable(){return this.isSelfAvailable()&&this._locals.context.hasProperty("__isa")}toJSON(){return this._locals.toJSON()}copy(e={}){return new t({source:this._source,container:e.container??this._container,parent:this._parent.copy({container:e.container,deepCopy:!0}),globals:this._globals.copy({container:e.container,deepCopy:!0}),locals:this._locals.copy({...e,deepCopy:!0})})}};rd.Scope=_y});var ho=g(Fa=>{"use strict";Object.defineProperty(Fa,"__esModule",{value:!0});Fa.GreybelKeyword=void 0;var HM;(function(t){t.Envar="#envar",t.Import="#import",t.Include="#include",t.ImportWithComment="//import",t.IncludeWithComment="//include",t.Debugger="debugger",t.Line="#line",t.File="#filename",t.Inject="#inject"})(HM=Fa.GreybelKeyword||(Fa.GreybelKeyword={}))});var xy=g(ky=>{"use strict";Object.defineProperty(ky,"__esModule",{value:!0});var cs=qe(),WM=ho(),Sy=class extends cs.LexerValidator{constructor(){super(...arguments),this.isKeyword=Set.prototype.has.bind(new Set([...Object.values(cs.Keyword),...Object.values(WM.GreybelKeyword)]))}isIdentifierStart(e){return super.isIdentifierStart(e)||e===cs.CharacterCode.HASH}isMultilineComment(e,n){return cs.CharacterCode.SLASH===e&&cs.CharacterCode.ASTERISK===n}isMultilineCommentEnd(e,n){return cs.CharacterCode.ASTERISK===e&&cs.CharacterCode.SLASH===n}isComment(e,n){return super.isComment(e,n)||this.isMultilineComment(e,n)}};ky.default=Sy});var wy=g($a=>{"use strict";Object.defineProperty($a,"__esModule",{value:!0});$a.CharacterCode=void 0;var GM;(function(t){t[t.VERTICAL_LINE=124]="VERTICAL_LINE",t[t.AMPERSAND=38]="AMPERSAND"})(GM=$a.CharacterCode||($a.CharacterCode={}))});var go=g(Ba=>{"use strict";Object.defineProperty(Ba,"__esModule",{value:!0});Ba.Operator=void 0;var KM;(function(t){t.BitwiseAnd="&",t.BitwiseOr="|",t.LeftShift="<<",t.RightShift=">>",t.UnsignedRightShift=">>>"})(KM=Ba.Operator||(Ba.Operator={}))});var Ay=g(Ua=>{"use strict";var VM=Ua&&Ua.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Ua,"__esModule",{value:!0});var or=qe(),zM=VM(xy()),iE=wy(),sE=ho(),Ey=go();function oE(t){let e=this.content[this.index];return this.index+=e.length,this.createPunctuator(e,t)}var id=class t extends or.Lexer{constructor(e,n={}){n.validator=n.validator||new zM.default,super(e,n)}scan(e,n){let r=t.greybelScanHandlers[e];return r?r.call(this,n)||super.scan(e,n):super.scan(e,n)}scanMultilineComment(e){let n=this,r=n.line,i=n.lineStart,s=n.index,o=n.offset,a=n.offset,u=!1;for(;n.index<n.length;){let d=n.codeAt();if(n.validator.isEndOfLine(d))n.validator.isWinNewline(d,n.codeAt(1))&&n.index++,n.line++,a=n.index+1;else if(n.validator.isMultilineCommentEnd(n.codeAt(),n.codeAt(1))){u=!0;break}n.index++}if(!u)return n.raise("Unexpected end of file in multiline comment.",new or.ASTRange(new or.ASTPosition(r,s-o+1),new or.ASTPosition(n.line,n.index-a+3)));let c=n.content.slice(s+2,n.index);n.index+=2;let l=new or.Token({type:or.TokenType.Comment,value:c,line:r,lineStart:i,range:[n.tokenStart,n.index],offsetRange:[o,a],afterSpace:e,lastLine:n.line,lastLineStart:n.lineStart});return n.offset=a,n.snapshot.enqueue(l),l}scanComment(e){let n=this,r=n.validator;return n.content.startsWith(sE.GreybelKeyword.ImportWithComment,n.index)||n.content.startsWith(sE.GreybelKeyword.IncludeWithComment,n.index)?(n.index++,n.scanIdentifierOrKeyword(e)):r.isMultilineComment(n.codeAt(),n.codeAt(1))?n.scanMultilineComment(e):super.scanComment(e)}};Ua.default=id;id.greybelScanHandlers={[or.CharacterCode.ARROW_LEFT]:function(e){if(or.CharacterCode.ARROW_LEFT===this.codeAt(1))return this.scanPunctuator(Ey.Operator.LeftShift,e)},[or.CharacterCode.ARROW_RIGHT]:function(e){if(or.CharacterCode.ARROW_RIGHT===this.codeAt(1))return or.CharacterCode.ARROW_RIGHT===this.codeAt(2)?this.scanPunctuator(Ey.Operator.UnsignedRightShift,e):this.scanPunctuator(Ey.Operator.RightShift,e)},[iE.CharacterCode.AMPERSAND]:oE,[iE.CharacterCode.VERTICAL_LINE]:oE}});var sd=g(Ha=>{"use strict";Object.defineProperty(Ha,"__esModule",{value:!0});Ha.ASTType=void 0;var XM;(function(t){t.FeatureImportExpression="FeatureImportExpression",t.FeatureIncludeExpression="FeatureIncludeExpression",t.FeatureEnvarExpression="FeatureEnvarExpression",t.FeatureInjectExpression="FeatureInjectExpression",t.FeatureDebuggerExpression="FeatureDebuggerExpression",t.FeatureLineExpression="FeatureLineExpression",t.FeatureFileExpression="FeatureFileExpression"})(XM=Ha.ASTType||(Ha.ASTType={}))});var Cy=g(od=>{"use strict";Object.defineProperty(od,"__esModule",{value:!0});od.ASTChunkAdvanced=void 0;var YM=qe(),Oy=class t extends YM.ASTChunk{constructor(e){super(e),this.imports=e.imports||[],this.includes=e.includes||[],this.injects=e.injects||[]}clone(){return new t({literals:this.literals.map(e=>e.clone()),scopes:this.scopes.map(e=>e.clone()),imports:this.imports.map(e=>e.clone()),includes:this.includes.map(e=>e.clone()),injects:this.injects.map(e=>e.clone()),lines:this.lines,start:this.start,end:this.end,range:this.range,scope:this.scope})}};od.ASTChunkAdvanced=Oy});var Ly=g(Gn=>{"use strict";Object.defineProperty(Gn,"__esModule",{value:!0});Gn.ASTFeatureFileExpression=Gn.ASTFeatureInjectExpression=Gn.ASTFeatureEnvarExpression=Gn.ASTFeatureIncludeExpression=Gn.ASTFeatureImportExpression=void 0;var Wa=qe(),Ga=sd(),Ry=class t extends Wa.ASTBase{constructor(e){super(Ga.ASTType.FeatureImportExpression,e),this.name=e.name,this.path=e.path,this.chunk=e.chunk,this.namespace=e.namespace}toString(){return`FeatureImportExpression[${this.start}-${this.end}][name = ${this.name}, path = ${this.path}]`}clone(){return new t({name:this.name.clone(),path:this.path,chunk:this.chunk.clone(),namespace:this.namespace,start:this.start,end:this.end,range:this.range,scope:this.scope})}};Gn.ASTFeatureImportExpression=Ry;var Py=class t extends Wa.ASTBase{constructor(e){super(Ga.ASTType.FeatureIncludeExpression,e),this.path=e.path,this.chunk=e.chunk,this.namespace=e.namespace}toString(){return`FeatureIncludeExpression[${this.start}-${this.end}][path = ${this.path}]`}clone(){return new t({path:this.path,chunk:this.chunk.clone(),namespace:this.namespace,start:this.start,end:this.end,range:this.range,scope:this.scope})}};Gn.ASTFeatureIncludeExpression=Py;var Dy=class t extends Wa.ASTBase{constructor(e){super(Ga.ASTType.FeatureEnvarExpression,e),this.name=e.name}toString(){return`FeatureEnvarExpression[${this.start}-${this.end}][name = ${this.name}]`}clone(){return new t({name:this.name,start:this.start,end:this.end,range:this.range,scope:this.scope})}};Gn.ASTFeatureEnvarExpression=Dy;var Iy=class t extends Wa.ASTBase{constructor(e){super(Ga.ASTType.FeatureInjectExpression,e),this.path=e.path}toString(){return`FeatureInjectExpression[${this.start}-${this.end}][path = ${this.path}]`}clone(){return new t({path:this.path,start:this.start,end:this.end,range:this.range,scope:this.scope})}};Gn.ASTFeatureInjectExpression=Iy;var My=class t extends Wa.ASTBase{constructor(e){super(Ga.ASTType.FeatureFileExpression,e),this.filename=e.filename}toString(){return`FeatureFileExpression[${this.start}-${this.end}][path = ${this.filename}]`}clone(){return new t({filename:this.filename,start:this.start,end:this.end,range:this.range,scope:this.scope})}};Gn.ASTFeatureFileExpression=My});var jy=g(Nt=>{"use strict";Object.defineProperty(Nt,"__esModule",{value:!0});Nt.ASTFeatureInjectExpression=Nt.ASTFeatureIncludeExpression=Nt.ASTFeatureImportExpression=Nt.ASTFeatureFileExpression=Nt.ASTFeatureEnvarExpression=Nt.ASTChunkAdvanced=Nt.ASTType=Nt.ASTProvider=void 0;var Ny=qe(),aE=sd(),JM=Cy(),Ka=Ly(),qy=class extends Ny.ASTProvider{featureImportExpression(e){return new Ka.ASTFeatureImportExpression(e)}featureIncludeExpression(e){return new Ka.ASTFeatureIncludeExpression(e)}featureEnvarExpression(e){return new Ka.ASTFeatureEnvarExpression(e)}featureInjectExpression(e){return new Ka.ASTFeatureInjectExpression(e)}featureDebuggerExpression(e){return new Ny.ASTBase(aE.ASTType.FeatureDebuggerExpression,e)}featureLineExpression(e){return new Ny.ASTBase(aE.ASTType.FeatureLineExpression,e)}featureFileExpression(e){return new Ka.ASTFeatureFileExpression(e)}chunkAdvanced(e){return new JM.ASTChunkAdvanced(e)}};Nt.ASTProvider=qy;var QM=sd();Object.defineProperty(Nt,"ASTType",{enumerable:!0,get:function(){return QM.ASTType}});var ZM=Cy();Object.defineProperty(Nt,"ASTChunkAdvanced",{enumerable:!0,get:function(){return ZM.ASTChunkAdvanced}});var Va=Ly();Object.defineProperty(Nt,"ASTFeatureEnvarExpression",{enumerable:!0,get:function(){return Va.ASTFeatureEnvarExpression}});Object.defineProperty(Nt,"ASTFeatureFileExpression",{enumerable:!0,get:function(){return Va.ASTFeatureFileExpression}});Object.defineProperty(Nt,"ASTFeatureImportExpression",{enumerable:!0,get:function(){return Va.ASTFeatureImportExpression}});Object.defineProperty(Nt,"ASTFeatureIncludeExpression",{enumerable:!0,get:function(){return Va.ASTFeatureIncludeExpression}});Object.defineProperty(Nt,"ASTFeatureInjectExpression",{enumerable:!0,get:function(){return Va.ASTFeatureInjectExpression}})});var Fy=g(gt=>{"use strict";Object.defineProperty(gt,"__esModule",{value:!0});gt.SelectorGroups=gt.SelectorGroupType=gt.Selectors=gt.SelectorTypes=void 0;var He=qe(),ad=ho(),za=go(),eL;(function(t){t.From="From",t.Envar="Envar",t.Inject="Inject",t.Line="Line",t.File="File",t.LeftShift="LeftShift",t.RightShift="RightShift",t.UnsignedRightShift="UnsignedRightShift",t.BitwiseOr="BitwiseOr",t.BitwiseAnd="BitwiseAnd",t.Escape="Escape"})(eL=gt.SelectorTypes||(gt.SelectorTypes={}));gt.Selectors=Object.assign(Object.assign({},He.Selectors),{From:(0,He.createSelector)({type:He.TokenType.Identifier,value:"from"}),Envar:(0,He.createSelector)({type:He.TokenType.Keyword,value:ad.GreybelKeyword.Envar}),Inject:(0,He.createSelector)({type:He.TokenType.Keyword,value:ad.GreybelKeyword.Inject}),Line:(0,He.createSelector)({type:He.TokenType.Keyword,value:ad.GreybelKeyword.Line}),File:(0,He.createSelector)({type:He.TokenType.Keyword,value:ad.GreybelKeyword.File}),LeftShift:(0,He.createSelector)({type:He.TokenType.Punctuator,value:za.Operator.LeftShift}),RightShift:(0,He.createSelector)({type:He.TokenType.Punctuator,value:za.Operator.RightShift}),UnsignedRightShift:(0,He.createSelector)({type:He.TokenType.Punctuator,value:za.Operator.UnsignedRightShift}),BitwiseOr:(0,He.createSelector)({type:He.TokenType.Punctuator,value:za.Operator.BitwiseOr}),BitwiseAnd:(0,He.createSelector)({type:He.TokenType.Punctuator,value:za.Operator.BitwiseAnd}),Escape:(0,He.createSelector)({type:He.TokenType.Punctuator,value:He.Operator.Escape})});var Kr;(function(t){t.MapSeparator="MapSeparator",t.ListSeparator="ListSeparator",t.PathSegmentEnd="PathSegmentEnd",t.BitwiseOperators="BitwiseOperators"})(Kr=gt.SelectorGroupType||(gt.SelectorGroupType={}));gt.SelectorGroups=Object.assign(Object.assign({},He.SelectorGroups),{[Kr.MapSeparator]:(0,He.createSelectorGroup)(Kr.MapSeparator,[gt.Selectors.MapSeperator,gt.Selectors.CRBracket]),[Kr.ListSeparator]:(0,He.createSelectorGroup)(Kr.ListSeparator,[gt.Selectors.MapSeperator,gt.Selectors.SRBracket]),[Kr.PathSegmentEnd]:(0,He.createSelectorGroup)(Kr.PathSegmentEnd,[gt.Selectors.EndOfLine,gt.Selectors.Comment,gt.Selectors.EndOfFile]),[Kr.BitwiseOperators]:(0,He.createSelectorGroup)(Kr.BitwiseOperators,[gt.Selectors.LeftShift,gt.Selectors.RightShift,gt.Selectors.UnsignedRightShift])})});var lE=g(Xa=>{"use strict";var tL=Xa&&Xa.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Xa,"__esModule",{value:!0});var gn=qe(),nL=ra(),uE=ca(),rL=tL(Ay()),iL=jy(),ls=ho(),cE=go(),Fe=Fy(),$y=class extends gn.Parser{constructor(e,n={}){var r;n.lexer=n.lexer||new rL.default(e,{unsafe:n.unsafe,tabWidth:n.tabWidth}),n.astProvider=n.astProvider||new iL.ASTProvider,super(e,n);let i=this;i.filename=(r=n.filename)!==null&&r!==void 0?r:"unknown",i.imports=[],i.includes=[],i.injects=[]}skipNewlines(){let e=this,n=0;for(;;){if(Fe.Selectors.Comment(e.token)){let r=e.astProvider.comment({value:e.token.value,isMultiline:e.token.value.indexOf(`
108
+ `)!==-1,start:e.token.start,end:e.token.end,range:e.token.range,scope:e.currentScope});e.addItemToLines(r),e.backpatches.peek().body.push(r)}else if(Fe.Selectors.EndOfLine(e.token))n++;else break;e.next()}return n}parseMap(e=!1,n=!1){let r=this;if(!Fe.Selectors.CLBracket(r.token))return r.parseList(e,n);let i=r.currentScope,s=r.token,o=[],a=r.astProvider.mapConstructorExpression({fields:o,start:s.start,end:null,range:[s.range[0],null],scope:i});if(r.next(),Fe.Selectors.CRBracket(r.token))r.next();else for(;!Fe.Selectors.EndOfFile(r.token);){if(r.skipNewlines(),Fe.Selectors.CRBracket(r.token)){r.next();break}let u=r.astProvider.mapKeyString({key:null,value:null,start:r.token.start,end:null,range:[r.token.range[0],null],scope:i});if(u.key=r.parseExpr(null),r.requireToken(Fe.Selectors.MapKeyValueSeperator),r.skipNewlines(),r.currentAssignment){let l=r.astProvider.assignmentStatement({variable:r.astProvider.indexExpression({index:u.key,base:r.currentAssignment.variable,start:u.start,end:r.token.end,range:[u.range[0],r.token.range[1]],scope:i}),init:null,start:u.start,end:null,range:[u.range[0],null]}),d=r.currentAssignment;r.currentAssignment=l,u.value=r.parseExpr(u),r.currentAssignment=d,l.init=u.value,l.end=r.previousToken.end,l.range[1]=r.previousToken.range[1],i.assignments.push(l)}else u.value=r.parseExpr(u);u.end=r.previousToken.end,u.range[1]=r.previousToken.range[1],o.push(u),r.skipNewlines();let c=r.requireTokenOfAny(Fe.SelectorGroups.MapSeparator,s.start);if(Fe.Selectors.CRBracket(c))break}return a.end=r.token.start,a.range[1]=r.token.range[1],a}parseList(e=!1,n=!1){let r=this;if(!Fe.Selectors.SLBracket(r.token))return r.parseQuantity(e,n);let i=r.currentScope,s=r.token,o=[],a=r.astProvider.listConstructorExpression({fields:o,start:s.start,end:null,range:[s.range[0],null],scope:i});if(r.next(),Fe.Selectors.SRBracket(r.token))r.next();else for(;!Fe.Selectors.EndOfFile(r.token);){if(r.skipNewlines(),Fe.Selectors.SRBracket(r.token)){r.next();break}let u=r.astProvider.listValue({value:null,start:r.token.start,end:null,range:[r.token.range[0],null],scope:i});if(r.currentAssignment){let l=r.astProvider.assignmentStatement({variable:r.astProvider.indexExpression({index:r.astProvider.literal(gn.TokenType.NumericLiteral,{value:o.length,raw:`${o.length}`,start:s.start,end:r.token.end,range:[s.range[0],r.token.range[1]],scope:i}),base:r.currentAssignment.variable,start:null,end:null,range:[null,null],scope:i}),init:null,start:null,end:null,range:[null,null]}),d=r.currentAssignment,p=r.token;r.currentAssignment=d,u.value=r.parseExpr(u),r.currentAssignment=d,l.variable.start=p.start,l.variable.end=r.previousToken.end,l.variable.range=[p.range[0],r.previousToken.range[1]],l.init=u.value,l.start=u.start,l.end=r.previousToken.end,l.range=[u.range[0],r.previousToken.range[1]],i.assignments.push(l)}else u.value=r.parseExpr(u);u.end=r.previousToken.end,u.range[1]=r.previousToken.range[1],o.push(u),r.skipNewlines();let c=r.requireTokenOfAny(Fe.SelectorGroups.ListSeparator,s.start);if(Fe.Selectors.SRBracket(c))break}return a.end=r.token.start,a.range[1]=r.token.range[1],a}parsePathSegment(){let e=this;if(this.token.type===gn.ASTType.StringLiteral){let r=this.token.value;return this.next(),r}let n="";for(;!Fe.SelectorGroups.PathSegmentEnd(e.token);)n=n+e.token.value,e.next();return e.consumeMany(Fe.SelectorGroups.PathSegmentEnd),n}parseFeatureIncludeStatement(){let e=this,n=e.previousToken,r=e.parsePathSegment(),i=e.astProvider.featureIncludeExpression({path:r,start:n.start,end:e.previousToken.end,range:[n.range[0],e.previousToken.range[1]],scope:e.currentScope});return e.includes.push(i),i}parseFeatureImportStatement(){var e;let n=this,r=n.previousToken,i=n.parseIdentifier();if(!n.consume(Fe.Selectors.From))return n.raise("expected from keyword",new uE.Range(r.start,new nL.Position((e=n.token.lastLine)!==null&&e!==void 0?e:n.token.line,n.token.end.character))),n.parseInvalidCode();let s=n.parsePathSegment(),o=n.astProvider.featureImportExpression({name:i,path:s,start:r.start,end:n.previousToken.end,range:[r.range[0],n.previousToken.range[1]],scope:n.currentScope});n.imports.push(o);let a=n.astProvider.assignmentStatement({variable:i,init:n.astProvider.literal(gn.TokenType.NilLiteral,{value:null,raw:"null",start:i.start,end:i.end,range:i.range,scope:n.currentScope}),start:i.start,end:i.end,range:i.range,scope:n.currentScope});return n.currentScope.assignments.push(a),o}parseFeatureEnvarExpression(){let e=this,n=e.previousToken,r=e.token.value;return e.next(),e.astProvider.featureEnvarExpression({name:r,start:n.start,end:e.previousToken.end,range:[n.range[0],e.previousToken.range[1]],scope:e.currentScope})}parseFeatureInjectExpression(){let e=this,n=e.previousToken,r=this.parsePathSegment();e.next();let i=e.astProvider.featureInjectExpression({path:r,start:n.start,end:e.previousToken.end,range:[n.range[0],e.previousToken.range[1]],scope:e.currentScope});return e.injects.push(i),i}parseIsa(e=!1,n=!1){let r=this,i=r.token,s=r.parseBitwiseOr(e,n);if(Fe.Selectors.Isa(r.token)){r.next(),r.skipNewlines();let o=r.parseBitwiseOr();return r.astProvider.isaExpression({operator:gn.Operator.Isa,left:s,right:o,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return s}parseBitwiseOr(e=!1,n=!1){let r=this,i=r.token,o=r.parseBitwiseAnd(e,n);for(;Fe.Selectors.BitwiseOr(r.token);){r.next();let a=r.parseBitwiseAnd();o=r.astProvider.binaryExpression({operator:cE.Operator.BitwiseOr,left:o,right:a,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return o}parseBitwiseAnd(e=!1,n=!1){let r=this,i=r.token,o=r.parseComparisons(e,n);for(;Fe.Selectors.BitwiseAnd(r.token);){r.next();let a=r.parseComparisons();o=r.astProvider.binaryExpression({operator:cE.Operator.BitwiseAnd,left:o,right:a,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return o}parseAddSub(e=!1,n=!1){let r=this,i=r.token,o=r.parseBitwise(e,n);for(;Fe.Selectors.Plus(r.token)||Fe.Selectors.Minus(r.token)&&(!n||!r.token.afterSpace||r.lexer.isAtWhitespace());){let a=r.token;r.next(),r.skipNewlines();let u=r.parseBitwise();o=r.astProvider.binaryExpression({operator:a.value,left:o,right:u,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return o}parseBitwise(e=!1,n=!1){let r=this,i=r.token,o=r.parseMultDiv(e,n);for(;Fe.SelectorGroups.BitwiseOperators(r.token);){let a=r.token;r.next(),r.skipNewlines();let u=r.parseMultDiv();o=r.astProvider.binaryExpression({operator:a.value,left:o,right:u,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return o}parseAtom(){let e=this;return Fe.Selectors.Envar(e.token)?(e.next(),e.parseFeatureEnvarExpression()):Fe.Selectors.Inject(e.token)?(e.next(),e.parseFeatureInjectExpression()):Fe.Selectors.Line(e.token)?(e.next(),e.astProvider.featureLineExpression({start:new gn.ASTPosition(e.previousToken.line,e.previousToken.start.character),end:new gn.ASTPosition(e.previousToken.line,e.previousToken.end.character),range:e.previousToken.range,scope:e.currentScope})):Fe.Selectors.File(e.token)?(e.next(),e.astProvider.featureFileExpression({filename:e.filename,start:new gn.ASTPosition(e.previousToken.line,e.previousToken.start.character),end:new gn.ASTPosition(e.previousToken.line,e.previousToken.end.character),range:e.previousToken.range,scope:e.currentScope})):super.parseAtom()}parseStatement(){let e=this,n=e.backpatches.peek();if(e.isType(gn.TokenType.Keyword))switch(e.token.value){case ls.GreybelKeyword.Include:case ls.GreybelKeyword.IncludeWithComment:{e.next();let i=e.parseFeatureIncludeStatement();e.addItemToLines(i),n.body.push(i);return}case ls.GreybelKeyword.Import:case ls.GreybelKeyword.ImportWithComment:{e.next();let i=e.parseFeatureImportStatement();e.addItemToLines(i),n.body.push(i);return}case ls.GreybelKeyword.Envar:{e.next();let i=e.parseFeatureEnvarExpression();e.addItemToLines(i),n.body.push(i);return}case ls.GreybelKeyword.Inject:{e.next();let i=e.parseFeatureInjectExpression();e.addItemToLines(i),n.body.push(i);return}case ls.GreybelKeyword.Debugger:{e.next();let i=e.astProvider.featureDebuggerExpression({start:new gn.ASTPosition(e.previousToken.line,e.previousToken.start.character),end:new gn.ASTPosition(e.previousToken.line,e.previousToken.end.character),range:e.previousToken.range,scope:e.currentScope});e.addItemToLines(i),n.body.push(i);return}default:break}super.parseStatement()}parseChunk(){let e=this;e.next();let n=e.token,r=e.astProvider.chunkAdvanced({start:n.start,end:null,range:[n.range[0],null]}),i=new gn.PendingChunk(r);for(e.backpatches.setDefault(i),e.pushScope(r);!Fe.Selectors.EndOfFile(e.token)&&(e.skipNewlines(),!Fe.Selectors.EndOfFile(e.token));)e.lexer.recordSnapshot(),e.statementErrors=[],e.parseStatement(),e.statementErrors.length>0&&e.tryToRecover();let s=e.backpatches.pop();for(;!(0,gn.isPendingChunk)(s);){let o=e.raise(`found open block ${s.block.type}`,new uE.Range(s.block.start,s.block.start));if(s.complete(e.previousToken),e.errors.push(o),!e.unsafe)throw o;s=e.backpatches.pop()}return e.finishRemaingScopes(),e.popScope(),i.complete(e.token),r.literals=e.literals,r.scopes=e.scopes,r.lines=e.lines,r.imports=e.imports,r.includes=e.includes,r.injects=e.injects,r}};Xa.default=$y});var Or=g(Pt=>{"use strict";var sL=Pt&&Pt.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),Ya=Pt&&Pt.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&sL(e,t,n)},By=Pt&&Pt.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Pt,"__esModule",{value:!0});Pt.Parser=Pt.LexerValidator=Pt.Lexer=void 0;var oL=Ay();Object.defineProperty(Pt,"Lexer",{enumerable:!0,get:function(){return By(oL).default}});var aL=xy();Object.defineProperty(Pt,"LexerValidator",{enumerable:!0,get:function(){return By(aL).default}});var uL=lE();Object.defineProperty(Pt,"Parser",{enumerable:!0,get:function(){return By(uL).default}});Ya(jy(),Pt);Ya(wy(),Pt);Ya(ho(),Pt);Ya(go(),Pt);Ya(Fy(),Pt)});var Uy=g(ud=>{"use strict";Object.defineProperty(ud,"__esModule",{value:!0});ud.merge=void 0;function cL(t,e,n=1e4){if(e.length<=n){Array.prototype.push.apply(t,e);return}for(let r=0;r<e.length;r+=n)Array.prototype.push.apply(t,e.slice(r,r+n))}ud.merge=cL});var dE=g(cd=>{"use strict";Object.defineProperty(cd,"__esModule",{value:!0});cd.parseMapDescription=void 0;var lL=iy();function dL(t){return{path:t.name,type:t.type}}function fL(t){let e=t.tags.find(r=>r.tag==="type");if(!e)return null;let n=t.tags.filter(r=>r.tag==="property");return{type:e.name,properties:n.map(dL)}}function pL(t){let e=(0,lL.parse)(`/**
109
109
  ${t}
110
- */`),[n]=e;return n.tags.length>0?dL(n):null}cd.parseMapDescription=fL});var Hy=g(dd=>{"use strict";Object.defineProperty(dd,"__esModule",{value:!0});dd.Aggregator=void 0;var ld=Or(),Me=Wn(),Oe=qe(),pL=dy(),we=os(),ds=fy(),dE=Bm(),hL=sy(),fE=oy(),pE=Ca(),hE=By(),gL=cE(),mL=lE(),yL=po(),Uy=class{get definitions(){return this._definitions}get parent(){return this._parent}constructor(e){this._root=e.root,this._scope=e.scope,this._document=e.document,this._parent=e.parent??null,this._definitions=new Map,this._lastModifiedProperty=null}factory(e){return new yL.Entity({source:this._document.source,kind:e,container:this._document.container})}createMapDescription(e){let n=this._document.getLastASTItemOfLine(e.start.line-1),r=this._document.findASTItemInLine(e.start.line,Oe.ASTType.Comment);if(n instanceof Oe.ASTComment){let i=new Set,s=[],o=e.start.line-1;for(;o>=0;){let a=this._document.getLastASTItemOfLine(o--);if(!i.has(a))if(a instanceof Oe.ASTComment)i.add(a),s.unshift(a.value);else break}return s.join(`
111
- `)}else if(r instanceof Oe.ASTComment)return r.value;return null}createCustomTypeFromMap(e,n){let r=this.createMapDescription(e);if(r==null)return;let i=(0,mL.parseMapDescription)(r);i!=null&&(i.properties.forEach(s=>{if(s.path==="__isa")return;let o=s.path.split("."),a=this.factory(we.CompletionItemKind.Property).addType(s.type).setLabel(o[o.length-1]);this.setEntityInPath(n,o,a)}),this._scope.setCustomType(i.type,n))}createFunctionDescription(e,n=pL.DEFAULT_CUSTOM_FUNCTION_DESCRIPTION){let r=this._document.getLastASTItemOfLine(e.start.line-1),i=this._document.findASTItemInLine(e.start.line,Oe.ASTType.Comment);if(r instanceof Oe.ASTComment){let s=new Set,o=[],a=e.start.line-1;for(;a>=0;){let u=this._document.getLastASTItemOfLine(a--);if(!s.has(u))if(u instanceof Oe.ASTComment)s.add(u),o.unshift(u.value);else break}return o.join(`
110
+ */`),[n]=e;return n.tags.length>0?fL(n):null}cd.parseMapDescription=pL});var Wy=g(dd=>{"use strict";Object.defineProperty(dd,"__esModule",{value:!0});dd.Aggregator=void 0;var ld=Or(),Me=Wn(),Oe=qe(),hL=dy(),we=os(),ds=fy(),fE=Bm(),gL=sy(),pE=oy(),hE=Ca(),gE=Uy(),mL=my(),yL=dE(),bL=po(),Hy=class{get definitions(){return this._definitions}get parent(){return this._parent}constructor(e){this._root=e.root,this._scope=e.scope,this._document=e.document,this._parent=e.parent??null,this._definitions=new Map,this._lastModifiedProperty=null}factory(e){return new bL.Entity({source:this._document.source,kind:e,container:this._document.container})}createMapDescription(e){let n=this._document.getLastASTItemOfLine(e.start.line-1),r=this._document.findASTItemInLine(e.start.line,Oe.ASTType.Comment);if(n instanceof Oe.ASTComment){let i=new Set,s=[],o=e.start.line-1;for(;o>=0;){let a=this._document.getLastASTItemOfLine(o--);if(!i.has(a))if(a instanceof Oe.ASTComment)i.add(a),s.unshift(a.value);else break}return s.join(`
111
+ `)}else if(r instanceof Oe.ASTComment)return r.value;return null}createCustomTypeFromMap(e,n){let r=this.createMapDescription(e);if(r==null)return;let i=(0,yL.parseMapDescription)(r);i!=null&&(i.properties.forEach(s=>{if(s.path==="__isa")return;let o=s.path.split("."),a=this.factory(we.CompletionItemKind.Property).addType(s.type).setLabel(o[o.length-1]);this.setEntityInPath(n,o,a)}),this._scope.setCustomType(i.type,n))}createFunctionDescription(e,n=hL.DEFAULT_CUSTOM_FUNCTION_DESCRIPTION){let r=this._document.getLastASTItemOfLine(e.start.line-1),i=this._document.findASTItemInLine(e.start.line,Oe.ASTType.Comment);if(r instanceof Oe.ASTComment){let s=new Set,o=[],a=e.start.line-1;for(;a>=0;){let u=this._document.getLastASTItemOfLine(a--);if(!s.has(u))if(u instanceof Oe.ASTComment)s.add(u),o.unshift(u.value);else break}return o.join(`
112
112
 
113
- `)}else if(i instanceof Oe.ASTComment)return i.value;return n}resolveFunctionStatement(e){let n=Me.SignatureDefinitionFunction.parse({type:Me.SignatureDefinitionBaseType.Function,description:this.createFunctionDescription(e),arguments:e.parameters.map(r=>{if(r.type===Oe.ASTType.Identifier)return{label:r.name??"unknown",type:Me.SignatureDefinitionBaseType.Any};let i=r;return{label:i.variable?.name??"unknown",types:Array.from(this.resolveTypeWithDefault(i.init).types)}}),returns:["any"]});return this.factory(we.CompletionItemKind.Function).addType(Me.SignatureDefinitionBaseType.Function).addSignatureType((0,hL.enrichWithMetaInformation)(n)).setLine(e.start.line)}resolveParenthesisExpression(e){return this.resolveTypeWithDefault(e.expression)}resolveBinaryExpression(e){let n=this.factory(we.CompletionItemKind.Expression).setLabel("Binary Expr").setLine(e.start.line),r=this.resolveTypeWithDefault(e.left),i=this.resolveTypeWithDefault(e.right);return n.extend(r),n.extend(i),n}resolveLogicalExpression(e){return this.factory(we.CompletionItemKind.Expression).setLabel("Logical Expr").addType(Me.SignatureDefinitionBaseType.Number).setLine(e.start.line)}resolveComparisonGroupExpression(e){return this.factory(we.CompletionItemKind.Expression).setLabel("Comparison Group Expr").addType(Me.SignatureDefinitionBaseType.Number).setLine(e.start.line)}resolveIsaExpression(e){return this.factory(we.CompletionItemKind.Expression).setLabel("Isa Expr").addType(Me.SignatureDefinitionBaseType.Number).setLine(e.start.line)}resolveCallStatement(e){let n=this.resolveNamespace(e);return n===null?this.factory(we.CompletionItemKind.Variable).addType(Me.SignatureDefinitionBaseType.Any).setLine(e.start.line):n}resolveCallExpression(e){let n=this.resolveNamespace(e);return n===null?this.factory(we.CompletionItemKind.Variable).addType(Me.SignatureDefinitionBaseType.Any).setLine(e.start.line):n}resolveUnaryExpression(e){let n=this.resolveNamespace(e);return n===null?this.factory(we.CompletionItemKind.Variable).addType(Me.SignatureDefinitionBaseType.Any).setLine(e.start.line):n}resolveMapConstructorExpression(e){let n=this.factory(we.CompletionItemKind.MapConstructor).addType(Me.SignatureDefinitionBaseType.Map);for(let r=0;r<e.fields.length;r++){let i=e.fields[r],s=this.resolveTypeWithDefault(i.value).setLine(i.start.line);if(i.key.type===Oe.ASTType.StringLiteral){let o=i.key.value.toString();n.setProperty(o,s),n.values.get(`i:${o}`)?.definitions.push({source:this._document.source,node:i})}else{let o=this.resolveTypeWithDefault(i.key).setLine(i.start.line);n.setProperty(o,s)}}return this.createCustomTypeFromMap(e,n),n.setLabel("{}").setLine(e.start.line)}resolveListConstructorExpression(e){let n=this.factory(we.CompletionItemKind.ListConstructor).addType(Me.SignatureDefinitionBaseType.List);for(let r=0;r<e.fields.length;r++){let i=e.fields[r],s=this.factory(we.CompletionItemKind.Variable).addType(Me.SignatureDefinitionBaseType.Number).setLine(i.start.line),o=this.resolveTypeWithDefault(i.value).setLine(i.start.line);n.setProperty(s,o)}return n.setLabel("[]").setLine(e.start.line)}resolveSliceExpression(e){let n=this.resolveNamespace(e);return n===null?this.factory(we.CompletionItemKind.Variable).addType(Me.SignatureDefinitionBaseType.Any).setLine(e.start.line):n.setLine(e.start.line)}resolveIndexExpression(e,n=!1){let r=this.resolveNamespace(e,n);return r===null?this.factory(we.CompletionItemKind.Variable).addType(Me.SignatureDefinitionBaseType.Any).setLine(e.start.line):r}resolveMemberExpression(e,n=!1){let r=this.resolveNamespace(e,n);return r===null?this.factory(we.CompletionItemKind.Property).addType(Me.SignatureDefinitionBaseType.Any).setLabel(e.identifier.name).setLine(e.start.line):r}resolveIdentifier(e,n=!1){let r=this.resolveNamespace(e,n);return r===null?this.factory(we.CompletionItemKind.Property).addType(Me.SignatureDefinitionBaseType.Any).setLabel(e.name).setLine(e.start.line):r}resolveType(e,n=!1){if(e==null)return null;switch(e.type){case Oe.ASTType.ParenthesisExpression:return this.resolveParenthesisExpression(e);case Oe.ASTType.CallStatement:return this.resolveCallStatement(e);case Oe.ASTType.CallExpression:return this.resolveCallExpression(e);case Oe.ASTType.BinaryExpression:return this.resolveBinaryExpression(e);case Oe.ASTType.LogicalExpression:return this.resolveLogicalExpression(e);case Oe.ASTType.IsaExpression:return this.resolveIsaExpression(e);case Oe.ASTType.ComparisonGroupExpression:return this.resolveComparisonGroupExpression(e);case Oe.ASTType.FunctionDeclaration:return this.resolveFunctionStatement(e);case Oe.ASTType.SliceExpression:return this.resolveSliceExpression(e);case Oe.ASTType.IndexExpression:return this.resolveIndexExpression(e,n);case Oe.ASTType.MemberExpression:return this.resolveMemberExpression(e,n);case Oe.ASTType.Identifier:return this.resolveIdentifier(e,n);case Oe.ASTType.MapConstructorExpression:return this.resolveMapConstructorExpression(e);case Oe.ASTType.ListConstructorExpression:return this.resolveListConstructorExpression(e);case Oe.ASTType.NegationExpression:case Oe.ASTType.BinaryNegatedExpression:case Oe.ASTType.UnaryExpression:return this.resolveUnaryExpression(e);case Oe.ASTType.NilLiteral:return this.factory(we.CompletionItemKind.Literal).addType("null").setLabel("null").setLine(e.start.line);case Oe.ASTType.StringLiteral:{let r=e.value.toString();return this.factory(we.CompletionItemKind.Literal).addType(Me.SignatureDefinitionBaseType.String).setLabel(`"${r.length>20?r.substr(0,20)+"...":r}"`).setLine(e.start.line)}case Oe.ASTType.NumericLiteral:case Oe.ASTType.BooleanLiteral:{let r=e.value.toString();return this.factory(we.CompletionItemKind.Literal).addType(Me.SignatureDefinitionBaseType.Number).setLabel(r).setLine(e.start.line)}case ld.ASTType.FeatureFileExpression:return this.factory(we.CompletionItemKind.Expression).addType(Me.SignatureDefinitionBaseType.String).setLabel("File Expr").setLine(e.start.line);case ld.ASTType.FeatureLineExpression:return this.factory(we.CompletionItemKind.Expression).addType(Me.SignatureDefinitionBaseType.Number).setLabel("Line Expr").setLine(e.start.line);case ld.ASTType.FeatureEnvarExpression:return this.factory(we.CompletionItemKind.Expression).addType(Me.SignatureDefinitionBaseType.String).setLabel("Envar Expr").setLine(e.start.line);case ld.ASTType.FeatureInjectExpression:return this.factory(we.CompletionItemKind.Expression).addType(Me.SignatureDefinitionBaseType.String).setLabel("Inject Expr").setLine(e.start.line);default:return null}}resolveTypeWithDefault(e=null,n=!1){let r=this.resolveType(e,n);if(r==null){let i=this.factory(we.CompletionItemKind.Variable).addType(Me.SignatureDefinitionBaseType.Any);return e!=null&&i.setLine(e.start.line),i}return r}resolveChain(e,n=!1){if(e.length===0)return null;let r=null,i=e[0],s=i.unary?.operator==="@"&&!i.isInCallExpression||n&&e.length===1;if((0,ds.isResolveChainItemWithIdentifier)(i))if(i.getter.name==="globals")r=this._scope.globals;else if(i.getter.name==="outer")r=this._scope.outer;else if(i.getter.name==="locals")r=this._scope.locals;else if(i.getter.name==="super"){let a=this._document.getScopeContext(i.ref.scope)?.scope.context?.getIsa();a==null?r=this.factory(we.CompletionItemKind.Constant).addType("null").setLabel("super"):r=a.copy({kind:we.CompletionItemKind.Constant,label:"super",values:a.values})}else if(i.getter.name==="self"){let a=this._document.getScopeContext(i.ref.scope)?.scope.context;a==null?r=this.factory(we.CompletionItemKind.Constant).addType("null").setLabel("self"):r=a.copy({kind:we.CompletionItemKind.Constant,label:"self",values:a.values})}else r=this._scope.resolveNamespace(i.getter.name,s)??this.factory(we.CompletionItemKind.Variable).addType(Me.SignatureDefinitionBaseType.Any).setLabel(i.getter.name);else if((0,ds.isResolveChainItemWithValue)(i))r=this.resolveTypeWithDefault(i.value,s);else return null;if(i.unary?.operator===Oe.Keyword.New&&r!==null){let a=this.factory(we.CompletionItemKind.Variable).addType(Me.SignatureDefinitionBaseType.Map).setLabel(r.label);a.setProperty("__isa",r),this.createCustomTypeFromMap(i.unary,a),r=a}let o=e.length;for(let a=1;a<o&&r!==null;a++){let u=e[a],c=u.unary?.operator==="@"&&!u.isInCallExpression||n&&e.length-1===a;if((0,ds.isResolveChainItemWithMember)(u))r=r.resolveProperty(u.getter.name,c)??this.factory(we.CompletionItemKind.Variable).addType(Me.SignatureDefinitionBaseType.Any).setLabel(u.getter.name);else if((0,ds.isResolveChainItemWithIndex)(u))if((0,pE.isValidIdentifierLiteral)(u.getter)){let l=u.getter.value.toString();r=r.resolveProperty(l,u.isInCallExpression)??this.factory(we.CompletionItemKind.Variable).addType(Me.SignatureDefinitionBaseType.Any).setLabel(l)}else{let l=this.resolveTypeWithDefault(u.getter);r=r.resolveProperty(l,u.isInCallExpression)??this.factory(we.CompletionItemKind.Variable).addType(Me.SignatureDefinitionBaseType.Any)}else if(u.ref.type===Oe.ASTType.SliceExpression)r=r.copy();else return null;if(u.unary?.operator===Oe.Keyword.New&&r!==null){let l=this.factory(we.CompletionItemKind.Property).addType(Me.SignatureDefinitionBaseType.Map).setLabel(r.label);l.setProperty("__isa",r),this.createCustomTypeFromMap(u.unary,l),r=l}}return r}setEntityInPath(e,n,r){let i=e;for(let s=0;s<n.length-1;s++){let o=n[s],a=i.resolveProperty(o);if(a==null){let u=this.factory(we.CompletionItemKind.Property).addType(Me.SignatureDefinitionBaseType.Map).setLabel(o);i.setProperty(o,u),a=u}i=a}return i.setProperty(n[n.length-1],r)}getEntityInPath(e,n){let r=e;for(let i=0;i<n.length;i++){let s=n[i],o=r.resolveProperty(s);if(o==null)return null;r=o}return r}resolveNamespace(e,n=!1){let r=(0,fE.createResolveChain)(e);return this.resolveChain(r,n)}defineProperty(e,n,r){let i=e.setProperty(n,r);return this._lastModifiedProperty=e.resolveProperty(n,!0),i}defineNamespace(e,n){let r=(0,fE.createResolveChain)(e),i=r.pop();if(this._lastModifiedProperty=null,r.length>0){let o=this.resolveChain(r);if(o===null)return!1;if((0,ds.isResolveChainItemWithMember)(i))return this.defineProperty(o,i.getter.name,n);if((0,ds.isResolveChainItemWithIndex)(i)){if((0,pE.isValidIdentifierLiteral)(i.getter))return this.defineProperty(o,i.getter.value.toString(),n);{let a=this.resolveTypeWithDefault(i.getter);return this.defineProperty(o,a,n)}}return!1}let s=this._scope;return(0,ds.isResolveChainItemWithIdentifier)(i)?this.defineProperty(s,i.getter.name,n):!1}addDefinition(e){this._lastModifiedProperty?.definitions.push({source:this._document.source,node:e});let n=(0,dE.createExpressionId)(e.variable),r=this._definitions;n.startsWith("globals.")?(r=this._document.getRootScopeContext().aggregator.definitions,n=n.slice(8)):n.startsWith("locals.")?(r=this._definitions,n=n.slice(7)):n.startsWith("outer.")&&(r=this.parent.definitions,n=n.slice(6));let i=r.get(n);i?i.push({source:this._document.source,node:e}):r.set(n,[{source:this._document.source,node:e}])}resolveAvailableAssignmentsWithQuery(e){let n=[],r=new Set([this,this._parent,this._document.getRootScopeContext().aggregator]);for(let i of r){let s=i.definitions;for(let o of s.keys())if(o.includes(e)){let a=s.get(o);(0,hE.merge)(n,a)}}return n}resolveAvailableAssignments(e){let n=(0,dE.createExpressionId)(e),r=this;n.startsWith("globals.")?(r=this._document.getRootScopeContext().aggregator,n=n.slice(8)):n.startsWith("locals.")?(r=this,n=n.slice(7)):n.startsWith("outer.")&&(r=this.parent,n=n.slice(6));let i=[],s=new Set([r,r._parent,r._document.getRootScopeContext().aggregator]);for(let o of s){if(o==null)continue;let a=o.resolveNamespace(e,!0);a!=null&&(0,hE.merge)(i,a.definitions)}return i}analyze(){for(let e=0;e<this._root.assignments.length;e++){let n=this._root.assignments[e],r=this.resolveType(n.init)?.copy({source:this._document.source}).setLine(n.start.line)??this.factory(we.CompletionItemKind.Variable).addType(Me.SignatureDefinitionBaseType.Any).setLine(n.start.line);this.defineNamespace(n.variable,r),this.addDefinition(n)}}extend(e){for(let[n,r]of e.definitions){let i=this.definitions.get(n);i?(0,gL.mergeUnique)(i,r):this.definitions.set(n,r)}}};dd.Aggregator=Uy});var Gy=g(fd=>{"use strict";Object.defineProperty(fd,"__esModule",{value:!0});fd.Document=void 0;var Vr=Wn(),bL=qe(),gE=os(),vL=By(),mE=Hy(),yE=po(),bE=_y(),Wy=class t{get source(){return this._source}get root(){return this._root}get container(){return this._container}get intrinsics(){return this._intrinscis}get globals(){return this._globals}get api(){return this._api}constructor(e){this._source=e.source,this._root=e.root,this._container=e.container,this._scopeMapping=e.scopeMapping??new WeakMap,this._intrinscis=e.intrinsics??this.createIntrinscis(),this._api=e.api??this.initApi(),this._globals=e.globals??this.initGlobals()}createIntrinscis(){return{map:this._container.primitives.get(Vr.SignatureDefinitionBaseType.Map),funcRef:this._container.primitives.get(Vr.SignatureDefinitionBaseType.Function),number:this._container.primitives.get(Vr.SignatureDefinitionBaseType.Number),string:this._container.primitives.get(Vr.SignatureDefinitionBaseType.String),list:this._container.primitives.get(Vr.SignatureDefinitionBaseType.List)}}initApi(){let e=this._container.primitives.get(Vr.SignatureDefinitionBaseType.General);return e.resolveProperty("map",!0).setReturnEntity(this._intrinscis.map),e.resolveProperty("funcRef",!0).setReturnEntity(this._intrinscis.funcRef),e.resolveProperty("number",!0).setReturnEntity(this._intrinscis.number),e.resolveProperty("string",!0).setReturnEntity(this._intrinscis.string),e.resolveProperty("list",!0).setReturnEntity(this._intrinscis.list),e}initGlobals(){return new yE.Entity({source:this._source,kind:gE.CompletionItemKind.Constant,container:this._container,label:"globals"}).addType(Vr.SignatureDefinitionBaseType.Map)}analyzeScope(e){let n=this._scopeMapping.get(e.scope),r=new bE.Scope({source:this._source,container:this._container,parent:n?.scope,globals:this._globals}),i=new mE.Aggregator({scope:r,root:e,document:this,parent:n?.aggregator});this._scopeMapping.set(e,{scope:r,aggregator:i});let s=e.assignment instanceof bL.ASTAssignmentStatement?this.resolveNamespace(e.assignment.variable,!0):null;if(s!==null){let o=s?.context;o!=null&&o.types.has(Vr.SignatureDefinitionBaseType.Map)&&o!==this._globals&&r.setContext(o)}if(i.analyze(),s!==null){let o=s.signatureDefinitions.last();if(o!=null){let a=o.getArguments();for(let u=0;u<a.length;u++){let c=a[u],l=r.resolveProperty(c.getLabel(),!0),d=c.getTypes().map(p=>p.type);l===null?r.setProperty(c.getLabel(),new yE.Entity({source:this._source,kind:gE.CompletionItemKind.Variable,container:this._container}).addTypes(d)):(l.types.delete(Vr.SignatureDefinitionBaseType.Any),l.addTypes(d))}}}}analyze(){let e=new bE.Scope({source:this._source,container:this._container,globals:this._globals,locals:this._globals}),n=new mE.Aggregator({scope:e,root:this._root,document:this});this._scopeMapping.set(this._root,{scope:e,aggregator:n}),n.analyze();for(let r=0;r<this._root.scopes.length;r++){let i=this._root.scopes[r];this.analyzeScope(i)}}getRootScopeContext(){return this._scopeMapping.get(this._root)}getAllScopeContexts(){return[this._root,...this._root.scopes].map(e=>this._scopeMapping.get(e))}getScopeContext(e){return this._scopeMapping.get(e)??null}getLastASTItemOfLine(e){let n=this._root.lines[e];return n&&n.length>0?n[n.length-1]:null}findASTItemInLine(e,n){let r=this._root.lines[e];if(r&&r.length>0){let i=r.find(s=>s.type===n);if(i)return i}return null}resolveAllAssignmentsWithQuery(e){let n=[],r=[this._root,...this._root.scopes];for(let i=0;i<r.length;i++){let o=this._scopeMapping.get(r[i]).aggregator.definitions;for(let a of o.keys())if(a.includes(e)){let u=o.get(a);(0,vL.merge)(n,u)}}return n}resolveAvailableAssignments(e){return this._scopeMapping.get(e.scope)?.aggregator.resolveAvailableAssignments(e)??[]}resolveType(e,n){return this._scopeMapping.get(e.scope)?.aggregator.resolveType(e,n)??null}resolveTypeWithDefault(e,n){return this._scopeMapping.get(e.scope)?.aggregator.resolveTypeWithDefault(e,n)}resolveNamespace(e,n=!1){return this._scopeMapping.get(e.scope)?.aggregator.resolveNamespace(e,n)??null}merge(...e){let n=new t({source:this._source,root:this._root,container:this._container.copy()});for(let r=0;r<e.length;r++){let i=e[r];n._globals.extend(i._globals),n._intrinscis.map.extend(i._intrinscis.map),n._intrinscis.funcRef.extend(i._intrinscis.funcRef),n._intrinscis.number.extend(i._intrinscis.number),n._intrinscis.string.extend(i._intrinscis.string),n._intrinscis.list.extend(i._intrinscis.list),n._container.mergeCustomTypes(i._container)}n.analyze();for(let r=0;r<e.length;r++){let i=e[r];n.getRootScopeContext().aggregator.extend(i.getRootScopeContext().aggregator)}return n}};fd.Document=Wy});var zy=g(pd=>{"use strict";Object.defineProperty(pd,"__esModule",{value:!0});pd.ContainerProxy=void 0;var ar=Wn(),Oi=po(),vE=os(),_E=ja(),Ky=Ql(),Vy=class t{get primitives(){return this._primitives}get types(){return this._types}constructor(e){this._container=e.container,this._primitives=e.primitives??this.createPrimitives(),this._types=e.types??this.createTypes(),this._customTypes=new Set}createPrimitives(){let e=new Map;for(let[n,r]of this._container.getPrimitives()){let i=new Oi.Entity({source:"internal",kind:vE.CompletionItemKind.Constant,container:this,isAPI:n===ar.SignatureDefinitionBaseType.General}).addType(ar.SignatureDefinitionBaseType.Map).insertSignature(r);e.set(n,i)}return e}createTypes(){let e=new Map;for(let[n,r]of this._container.getTypes()){let i=new Oi.Entity({source:"internal",kind:vE.CompletionItemKind.Constant,container:this}).addType(ar.SignatureDefinitionBaseType.Map).insertSignature(r);e.set(n,i)}return e}setCustomType(e,n){this._types.has(e)||(this._types.set(e,n),this._customTypes.add(e))}mergeCustomTypes(e){for(let n of e._customTypes){let r=e._types.get(n);r!=null&&this.setCustomType(n,r.copy({deepCopy:!0}))}}getTypeSignature(e){return this._primitives.get(e)??this._types.get(e)??null}searchDefinitionMatches(e,n){if(typeof e=="string")return this.searchDefinitionMatches([e],n);let r=e.includes(ar.SignatureDefinitionBaseType.Any)?new Set(this._container.getAllVisibleTypes()):new Set(e),i=new Map;for(let s of r){let o=this.getTypeSignature(s);if(o===null)continue;let a=(0,Ky.lookupProperty)(o,n);a!==null&&i.set(s,a)}return i}getDefinition(e,n,r=!1){if(typeof e=="string")return this.getDefinition([e],n);let i=(0,Ky.lookupProperty)(this._primitives.get(ar.SignatureDefinitionBaseType.Any),n);if(e.includes(ar.SignatureDefinitionBaseType.Any)&&i)return(0,Oi.resolveEntity)(this,i,r);let s=this.searchDefinitionMatches(e,n);return s.size===0?null:s.size===1?(0,Oi.resolveEntity)(this,s.values().next().value,r):s.has(ar.SignatureDefinitionBaseType.Any)?(0,Oi.resolveEntity)(this,s.get(ar.SignatureDefinitionBaseType.Any),r):i!==null?(0,Oi.resolveEntity)(this,i,r):(0,Oi.resolveEntity)(this,s.values().next().value,r)}getGeneralDefinition(e,n=!1){let r=(0,Ky.lookupProperty)(this._primitives.get(ar.SignatureDefinitionBaseType.General),e);return r==null?null:(0,Oi.resolveEntity)(this,r,n)}injectTypeIdentifiers(e,n){let r=this.getTypeSignature(n);if(r!=null&&((0,_E.injectIdentifers)(e,r),this._types.has(n))){let i=this._primitives.get(ar.SignatureDefinitionBaseType.Map);(0,_E.injectIdentifers)(e,i)}}getAllIdentifier(e){let n=new Map;if(e===ar.SignatureDefinitionBaseType.Any){let r=this._container.getAllVisibleTypes();for(let i=0;i<r.length;i++)this.injectTypeIdentifiers(n,r[i]);return n}return this.injectTypeIdentifiers(n,e),n}copy(){return new t({container:this._container})}};pd.ContainerProxy=Vy});var TE=g(hd=>{"use strict";Object.defineProperty(hd,"__esModule",{value:!0});hd.TypeManager=void 0;var _L=Gy(),TL=zy(),Xy=class{constructor(e){this._container=new TL.ContainerProxy({container:e.container}),this._types=new Map}analyze(e,n){let r=new _L.Document({source:e,container:this._container.copy(),root:n});try{r.analyze()}catch(i){console.error(i)}return this._types.set(e,r),r}get(e){return this._types.get(e)??null}};hd.TypeManager=Xy});var Ja=g(se=>{"use strict";Object.defineProperty(se,"__esModule",{value:!0});se.TypeManager=se.ContainerProxy=se.Document=se.Aggregator=se.Scope=se.Entity=se.aggregateEntity=se.lookupProperty=se.isEligibleForProperties=se.injectIdentifers=se.isSignatureDefinitionFunction=se.isResolveChainItemWithValue=se.isResolveChainItemWithMember=se.isResolveChainItemWithIndex=se.isResolveChainItemWithIdentifier=se.CompletionItemKind=se.DEFAULT_CUSTOM_FUNCTION_DESCRIPTION=se.ObjectSetIterator=se.ObjectSet=se.rotateBits=se.getStringHashCode=se.getHashCode=se.createResolveChain=se.enrichWithMetaInformation=se.createExpressionId=se.createExpressionHash=se.isValidIdentifierLiteral=void 0;var SL=Ca();Object.defineProperty(se,"isValidIdentifierLiteral",{enumerable:!0,get:function(){return SL.isValidIdentifierLiteral}});var kL=I0();Object.defineProperty(se,"createExpressionHash",{enumerable:!0,get:function(){return kL.createExpressionHash}});var xL=Bm();Object.defineProperty(se,"createExpressionId",{enumerable:!0,get:function(){return xL.createExpressionId}});var wL=sy();Object.defineProperty(se,"enrichWithMetaInformation",{enumerable:!0,get:function(){return wL.enrichWithMetaInformation}});var EL=oy();Object.defineProperty(se,"createResolveChain",{enumerable:!0,get:function(){return EL.createResolveChain}});var Yy=$m();Object.defineProperty(se,"getHashCode",{enumerable:!0,get:function(){return Yy.getHashCode}});Object.defineProperty(se,"getStringHashCode",{enumerable:!0,get:function(){return Yy.getStringHashCode}});Object.defineProperty(se,"rotateBits",{enumerable:!0,get:function(){return Yy.rotateBits}});var SE=ly();Object.defineProperty(se,"ObjectSet",{enumerable:!0,get:function(){return SE.ObjectSet}});Object.defineProperty(se,"ObjectSetIterator",{enumerable:!0,get:function(){return SE.ObjectSetIterator}});var AL=dy();Object.defineProperty(se,"DEFAULT_CUSTOM_FUNCTION_DESCRIPTION",{enumerable:!0,get:function(){return AL.DEFAULT_CUSTOM_FUNCTION_DESCRIPTION}});var OL=os();Object.defineProperty(se,"CompletionItemKind",{enumerable:!0,get:function(){return OL.CompletionItemKind}});var gd=fy();Object.defineProperty(se,"isResolveChainItemWithIdentifier",{enumerable:!0,get:function(){return gd.isResolveChainItemWithIdentifier}});Object.defineProperty(se,"isResolveChainItemWithIndex",{enumerable:!0,get:function(){return gd.isResolveChainItemWithIndex}});Object.defineProperty(se,"isResolveChainItemWithMember",{enumerable:!0,get:function(){return gd.isResolveChainItemWithMember}});Object.defineProperty(se,"isResolveChainItemWithValue",{enumerable:!0,get:function(){return gd.isResolveChainItemWithValue}});var CL=py();Object.defineProperty(se,"isSignatureDefinitionFunction",{enumerable:!0,get:function(){return CL.isSignatureDefinitionFunction}});var RL=ja();Object.defineProperty(se,"injectIdentifers",{enumerable:!0,get:function(){return RL.injectIdentifers}});var PL=Yl();Object.defineProperty(se,"isEligibleForProperties",{enumerable:!0,get:function(){return PL.isEligibleForProperties}});var DL=Ql();Object.defineProperty(se,"lookupProperty",{enumerable:!0,get:function(){return DL.lookupProperty}});var IL=hy();Object.defineProperty(se,"aggregateEntity",{enumerable:!0,get:function(){return IL.aggregateEntity}});var ML=po();Object.defineProperty(se,"Entity",{enumerable:!0,get:function(){return ML.Entity}});var LL=_y();Object.defineProperty(se,"Scope",{enumerable:!0,get:function(){return LL.Scope}});var NL=Hy();Object.defineProperty(se,"Aggregator",{enumerable:!0,get:function(){return NL.Aggregator}});var qL=Gy();Object.defineProperty(se,"Document",{enumerable:!0,get:function(){return qL.Document}});var jL=zy();Object.defineProperty(se,"ContainerProxy",{enumerable:!0,get:function(){return jL.ContainerProxy}});var FL=TE();Object.defineProperty(se,"TypeManager",{enumerable:!0,get:function(){return FL.TypeManager}})});var Qy=g(md=>{"use strict";Object.defineProperty(md,"__esModule",{value:!0});md.findEx=void 0;var $L=qe(),BL=function(t){return{ParenthesisExpression:(e,n)=>{t(e.expression,n)},AssignmentStatement:function(e,n){t(e.init,n),t(e.variable,n)},MemberExpression:function(e,n){t(e.base,n),t(e.identifier,n)},FunctionDeclaration:function(e,n){for(let r=0;r<e.parameters.length;r++)t(e.parameters[r],n);for(let r=0;r<e.body.length;r++)t(e.body[r],n)},MapConstructorExpression:function(e,n){for(let r=0;r<e.fields.length;r++)t(e.fields[r],n)},ReturnStatement:function(e,n){e.argument&&t(e.argument,n)},WhileStatement:function(e,n){t(e.condition,n);for(let r=0;r<e.body.length;r++)t(e.body[r],n)},IndexExpression:function(e,n){t(e.base,n),t(e.index,n)},SliceExpression:function(e,n){t(e.base,n),t(e.left,n),t(e.right,n)},ListValue:function(e,n){t(e.value,n)},MapKeyString:function(e,n){t(e.key,n),t(e.value,n)},IfShortcutStatement:function(e,n){for(let r=0;r<e.clauses.length;r++)t(e.clauses[r],n)},IfShortcutClause:function(e,n){t(e.condition,n);for(let r=0;r<e.body.length;r++)t(e.body[r],n)},ElseifShortcutClause:function(e,n){t(e.condition,n);for(let r=0;r<e.body.length;r++)t(e.body[r],n)},ElseShortcutClause:function(e,n){for(let r=0;r<e.body.length;r++)t(e.body[r],n)},ForGenericStatement:function(e,n){t(e.variable,n),t(e.iterator,n);for(let r=0;r<e.body.length;r++)t(e.body[r],n)},IfStatement:function(e,n){for(let r=0;r<e.clauses.length;r++)t(e.clauses[r],n)},IfClause:function(e,n){t(e.condition,n);for(let r=0;r<e.body.length;r++)t(e.body[r],n)},ElseifClause:function(e,n){t(e.condition,n);for(let r=0;r<e.body.length;r++)t(e.body[r],n)},ElseClause:function(e,n){for(let r=0;r<e.body.length;r++)t(e.body[r],n)},NegationExpression:function(e,n){t(e.argument,n)},CallExpression:function(e,n){t(e.base,n);for(let r=0;r<e.arguments.length;r++)t(e.arguments[r],n)},CallStatement:function(e,n){t(e.expression,n)},ListConstructorExpression:function(e,n){for(let r=0;r<e.fields.length;r++)t(e.fields[r],n)},BinaryExpression:function(e,n){t(e.left,n),t(e.right,n)},BinaryNegatedExpression:function(e,n){t(e.argument,n)},IsaExpression:function(e,n){t(e.left,n),t(e.right,n)},LogicalExpression:function(e,n){t(e.left,n),t(e.right,n)},ComparisonGroupExpression:function(e,n){for(let r=0;r<e.expressions.length;r++)t(e.expressions[r],n)},UnaryExpression:function(e,n){t(e.argument,n)},Chunk:function(e,n){for(let r=0;r<e.body.length;r++)t(e.body[r],n)},InvalidCodeExpression:()=>{}}},Jy=class{constructor(e){this.map=BL(this.visit.bind(this)),this.callback=e,this.state={exit:!1}}visit(e,n=0){let r=this;if(e==null)return;if(e.type==null)throw console.error("Error ast type:",e),new Error("Unexpected as type");if(r.state=r.callback(e,n),r.state.exit||r.state.skip)return;let i=r.map[e.type];i?.call(r,e,n+1)}};function UL(t,e){let n=[];return new Jy((i,s)=>{let o=t(i,s)||{};return o.valid&&i.type!==$L.ASTType.InvalidCodeExpression&&n.push(i),{exit:!!o.exit,skip:!!o.skip}}).visit(e),n}md.findEx=UL});var kE=g((KU,HL)=>{HL.exports={insert:{description:"Depending on the data type this method will insert a value to the provided index. Due to the insertion, the object will be mutated. To get a better idea about the behaviour look into the `insert` method related to `list` or `string`.",example:["list = [2, 3, 4]","list.insert(2, 42)",'print("List with inserted item: " + list.join(", "))']},indexOf:{description:"Depending on the data type this function searches for the index of the provided value. To get a better idea about the behaviour look into the `indexOf` methods related to `string`, `list` and `map`.",example:['index = "test".indexOf("e")','print("e is at: " + index)']},hasIndex:{description:"Depending on data type this function checks if the provided index is available inside the value. To get a better idea about the behaviour look into the `hasIndex` methods related to `string`, `list` and `map`.",example:['print("List has index: " + [1, 2, 3].hasIndex(2)']},remove:{description:"Depending on the data type this function will remove a value in the provided object. As a result, the object will get mutated. To get a better idea about the behaviour look into the `remove` methods related to `list` and `map`.",example:["list = [9, 3, 5, 7]","list.remove(5)",'print("List after removal: " + list.join(", "))']},push:{description:"Depending on data type this function will append a value to the provided object. As a result, the object will get mutated. To get a better idea about the behaviour look into the `push` methods related to `list` and `map`.",example:["list = [0, 1, 2, 3, 4, 5]","list.push(42)",'print("The answer to everything is: " + list.pop)']},pull:{description:"Depending on data type this function will return the first item in the provided value. Additionally, this function removes the last item and therefore mutates the object. To get a better idea about the behaviour look into the `pop` methods related to `list` and `map`.",example:["myList = [42, 1, 3]","answer = myList.pull",'print("Answer to everything: " + answer)']},pop:{description:"Depending on data type this function will return the last item in the provided value. Additionally, this function removes the last item and therefore mutates the object. To get a better idea about the behaviour look into the `pop` methods related to `list` and `map`.",example:["list = [0, 1, 2, 3, 4, 5]",'print("The last item is: " + list.pop)']},shuffle:{description:"Depending on data type this function will shuffle data. Instead of returning the newly shuffled data, this function will mutate the data. To get a better idea about the behaviour look into the `shuffle` methods related to `list` and `map`.",example:["list = [0, 1, 2, 3, 4, 5]","list.shuffle",'print("And the winner is: " + list[0])']},sum:{description:"Depending on data type this function returns the sum of all items. To get a better idea about the behaviour look into the `sum` methods related to `list` and `map`.",example:["list = [0, 1, 2, 3, 4, 5]",'print("Sum of all items is: " + list.sum)']},indexes:{description:"Depending on data type this function returns a `list` with all available indexes. To get a better idea about the behaviour look into the `indexes` methods related to `string`, `list` and `map`.",example:['indexesOfStr = "test".indexes','print("Following indexes are available: " + indexesOfStr.join(", "))']},len:{description:"Depending on data type this function returns the length of the provided value. To get a better idea about the behaviour look into the `len` methods related to `string`, `list` and `map`.",example:['length = "test".len','print("Length of string is: " + length)']},values:{description:"Depending on data type this function returns a `list` with all available values. To get a better idea about the behaviour look into the `values` methods related to `string`, `list` and `map`.",example:['indexesOfStr = "test".values','print("Following values are available: " + indexesOfStr.join(", "))']}}});var xE=g((VU,WL)=>{WL.exports={hasIndex:{description:"Depending on data type this function checks if the provided index is available inside the value. To get a better idea about the behaviour look into the `hasIndex` methods related to `string`, `list` and `map`.",example:['print("List has index: " + hasIndex([1, 2, 3], 2)']},print:{description:"Print a message on the Terminal.",example:['print("hello world")']},indexes:{description:"Depending on data type this function returns a `list` with all available indexes. To get a better idea about the behaviour look into the `indexes` methods related to `string`, `list` and `map`.",example:['indexesOfStr = indexes("test")','print("Following indexes are available: " + indexesOfStr.join(", "))']},values:{description:"Depending on data type this function returns a `list` with all available values. To get a better idea about the behaviour look into the `values` methods related to `string`, `list` and `map`.",example:['indexesOfStr = values("test")','print("Following values are available: " + indexesOfStr.join(", "))']},indexOf:{description:"Depending on the data type this function searches for the index of the provided value. To get a better idea about the behaviour look into the `indexOf` methods related to `string`, `list` and `map`.",example:['index = indexOf("test", "e")','print("e is at: " + index)']},len:{description:"Depending on data type this function returns the length of the provided value. To get a better idea about the behaviour look into the `len` methods related to `string`, `list` and `map`.",example:['length = len("test")','print("Length of string is: " + length)']},shuffle:{description:"Depending on data type this function will shuffle data. Instead of returning the newly shuffled data, this function will mutate the data. To get a better idea about the behaviour look into the `shuffle` methods related to `list` and `map`.",example:["list = [0, 1, 2, 3, 4, 5]","shuffle(list)",'print("And the winner is: " + list[0])']},val:{description:"Casts a `string` to a `number`. In case the provided `string` does not represent a valid `number` the `number` zero will get returned.",example:['num = val("1.25")','print("Number in string is: " + num)']},lower:{description:"Returns a `string` which is the lowercase transformed version of the provided `string`.",example:['myString = lower("HELLO WORLD")',"print(myString)"]},upper:{description:"Returns a `string` which is the uppercase transformed version of the provided `string`.",example:['myString = upper("hello world")',"print(myString)"]},sum:{description:"Depending on data type this function returns the sum of all items. To get a better idea about the behaviour look into the `sum` methods related to `list` and `map`.",example:["list = [0, 1, 2, 3, 4, 5]",'print("Sum of all items is: " + sum(list))']},pop:{description:"Depending on data type this function will return the last item in the provided value. Additionally, this function removes the last item and therefore mutates the object. To get a better idea about the behaviour look into the `pop` methods related to `list` and `map`.",example:["list = [0, 1, 2, 3, 4, 5]",'print("The last item is: " + pop(list))']},pull:{description:"Depending on data type this function will return the first item in the provided value. Additionally, this function removes the first item and therefore mutates the object. To get a better idea about the behaviour look into the `pull` methods related to `list` and `map`.",example:["list = [0, 1, 2, 3, 4, 5]",'print("The first item is: " + pull(list))']},push:{description:"Depending on data type this function will append a value to the provided object. As a result, the object will get mutated. To get a better idea about the behaviour look into the `push` methods related to `list` and `map`.",example:["list = [0, 1, 2, 3, 4, 5]","push(list, 42)",'print("The answer to everything is: " + pop(list))']},sort:{description:"Depending on the data type this function will sort the values in the provided object. As a result, the object will get mutated. To get a better idea about the behaviour look into the `sort` methods related to `list` and `map`.",example:["list = [9, 3, 5, 7]","sort(list)",'print("Sorted list: " + list.join(", "))']},remove:{description:"Depending on the data type this function will remove a value in the provided object. As a result, the object will get mutated. To get a better idea about the behaviour look into the `remove` methods related to `list` and `map`.",example:["list = [9, 3, 5, 7]","remove(list, 5)",'print("List after removal: " + list.join(", "))']},wait:{description:"Puts script execution on hold. Optionally the duration can be provided via the time argument. By default, the duration will be 1 second. The duration cannot be below 0.01 or above 300.",example:["start = time","wait(5)","elapsed = time - start",'print("Waited: " + elapsed)']},bitwise:{description:'Enables to perform bitwise operations. Supported operators are: `"&"`, `"|"`, `"^"`, `"<<"`, `">>"`, `">>>"`. Returns a `number`.',example:["num = params[0].to_int",'isOdd = bitwise("&", num, 1) == 1',"if isOdd then",' print("Number is odd.")',"else",' print("Number is even.")',"end if"]},abs:{description:"Returns the absolute value of `number`.",example:["a = 1","b = 5","difference = abs(a - b)",'print("Difference between a and b is: " + difference)']},acos:{description:"Returns the inverse cosine (in radians) of a `number`.",example:["adjacent = 8","hypotenuse = 10","calcAngle = acos(adjacent / hypotenuse)",'print("Angle: " + calcAngle)']},asin:{description:"Returns the inverse sine (in radians) of a `number`.",example:["opposite = 6","hypotenuse = 10","calcAngle = acos(opposite / hypotenuse)",'print("Angle: " + calcAngle)']},atan:{description:"Returns the inverse tangent (in radians) of a `number`.",example:["opposite = 8","hypotenuse = 10","calcAngle = atan(opposite / hypotenuse)",'print("Angle: " + calcAngle)']},tan:{description:"Returns the tangent of a `number` in radians.",example:["degrees = 90","tanFromDegrees = tan(degress * pi / 180)",'print("Tan from degrees: " + tanFromDegrees)']},cos:{description:"Returns the cosine of a `number` in radians.",example:["radians = 1","radius = 10","circleX = cos(radians) * radius","print(circleX)"]},code:{description:"Returns the Unicode `number` of the first character of the string. In case an empty `string` is provided the script execution will crash.",example:['key = user_input("Press a key!", false, true)',"isA = key.code == 97","if isA then",' print("You pressed A.")',"else",' print("You did not press A.")',"end if"]},char:{description:"Returns the Unicode character `string` related to the provided unicode `number`. The provided `number` needs to be between 0 and 65535. Any `number` which is outside this range will cause the script to throw a runtime error.",example:['key = user_input("Press a key!", false, true)',"isA = key == char(97)","if isA then",' print("You pressed A.")',"else",' print("You did not press A.")',"end if"]},sin:{description:"Returns the sine of a `number` in radians.",example:["radians = 1","radius = 10","circleY = sin(radians) * radius","print(circleY)"]},floor:{description:"Returns `number` rounded down to the integer value of the provided `number`.",example:["price = 25.43467","floored = floor(price * 100) / 100",'print("Floored price: " + floored)']},range:{description:"Returns a `list` where each item is a `number`. By default, the `list` starts with the `number` zero and increments by one for each item. Optionally start and end can be defined. Additionally, the incremental value can be changed as well. In case the incremental value is zero this function will throw a runtime error.",example:['print("Countdown:")',"for num in range(10)"," print(num)","end for",'print("Done!")']},round:{description:"Returns `number` rounded to the integer value of the provided `number`.",example:["price = 25.43467","rounded = round(price * 100) / 100",'print("Price: " + rounded)']},rnd:{description:"Returns a random `number` between 0 and 1. Optionally a seed `number` can be provided.",example:["min = 10","max = 20","output = floor(rnd * (max - min + 1) + min)",'input = user_input("Guess a number between 10 and 20!").to_int',"if (input == output) then",' print("You guessed right!")',"else",' print("You failed! The number was " + output)',"end if"]},sign:{description:"Returns a one or minus one, indicating the sign of the number passed as argument. If the input is zero, it will be returned as-is.",example:["print(sign(40))","print(sign(-40))","print(sign(0))"]},sqrt:{description:"Returns the square root of a `number`.",example:["a = 3","b = 4","calcHypotenuse = sqrt((a * a) + (b * b))",'print("Hypotenuse: " + calcHypotenuse)']},str:{description:"Returns the `string` value of provided data. Can be used to turn a `number` into a `string` or to get the signature of a `function`.",example:["signature = str(@user_input)","argSegment = signature[9:signature.len - 1]",'args = argSegment.split(",")','print("Function has " + args.len + " arguments.")']},ceil:{description:"Returns `number` rounded up to the integer value of the provided `number`.",example:["price = 25.43467","upperPrice = ceil(price * 100) / 100",'print("Upper price: " + upperPrice)']},pi:{description:"Returns the `number` PI to the precision of six.",example:["radius = 10","circumference = 2 * pi * radius",'print("Circumference: " + circumference)']},slice:{description:"Returns a sliced `list`. Valid data types for slicing are `string` and `list`. The returned `list` will contain all elements related to the provided start and end index.",example:['myString = "not your text"','print("my " + slice(myString, 9))']},hash:{description:"Returns numeric hash for the provided data.",example:['hashA = hash({ "a": 2, "b": 1 })','hashB = hash({ "b": 1, "a": 2 })',"if (hashA == hashB) then",' print("Objects are alike!")',"else",' print("Objects are different!")',"end if"]},time:{description:"Returns a `number` of seconds representing the elapsed time since the script got started.",example:["start = time","for i in range(10000)"," var = i * 100","end for","endTime = time - start",'print("Script execution done within: " + endTime)']},bitAnd:{description:"Performs a bitwise AND for the provided values. Returns a `number`.",example:['print("Result of bitwise AND: " + bitAnd(1, 2))']},bitOr:{description:"Performs a bitwise OR for the provided values. Returns a `number`.",example:['print("Result of bitwise OR: " + bitOr(1, 2))']},bitXor:{description:"Permorms a bitwise XOR for the provided values. Returns a `number`.",example:['print("Result of bitwise XOR: " + bitXor(1, 2))']},log:{description:"Returns the natural logarithm of a `number`. By default, the base is 10. Optionally the base can be changed.",example:["a = 2","b = 8","baseLog = log(a) / log(b)",'print("Base log is: " + baseLog)']},yield:{description:"Waits for the next tick.",example:["while (true)"," yield",' print("tick")',"end while"]},get_custom_object:{description:"Returns `map` which is shared throughout all script executions. Can be helpful in case forwarding an entity is desired.",example:["get_custom_object.shouldEndScript = false","while (get_custom_object.shouldEndScript)",' print("Waiting...")'," wait(2)","end while"]},insert:{description:"Depending on the data type this function will insert a value to the provided index. Due to the insertion, the object will be mutated. To get a better idea about the behaviour look into the `insert` method related to `list` or `string`.",example:["list = [2, 3, 4]","insert(list, 2, 42)",'print("List with inserted item: " + list.join(", "))']},join:{description:"Returns a concatenated `string` containing all stringified values inside the `list`. These values will be separated via the provided separator.",example:["myList = [42, 1, 3]",`print(join(myList, " .-*'*-. "))`]},split:{description:"Returns a `list` where each item is a segment of the `string`. The separation depends on the provided separator `string`. Keep in mind that for some odd reason, this method is using regular expressions for matching.",example:['myString = "42 as an answer is wrong"','segments = split(myString, " ")','if segments[0] != "42" then',' print("Invalid information spotted!")',"else",' print("Information seems valid!")',"end if"]},replace:{description:"Depending on the data type this function will replace a value in the provided object. Due to the replacement, the object might get mutated. To get a better idea about the behaviour look into the `replace` method related to `map`, `list` or `string`.",example:['myString = "42 as an answer is wrong"','newString = replace(myString, "wrong", "right")',"print(newString)"]},refEquals:{description:"Tests whether two values refer to the very same object (rather than merely representing the same value). For numbers, this is the same as ==, but for strings, lists, and maps, it is reference equality."},version:{description:`Get a map with information about the version of MiniScript and the host environment that you're currently running. This will include at least the following keys:
113
+ `)}else if(i instanceof Oe.ASTComment)return i.value;return n}resolveFunctionStatement(e){let n=Me.SignatureDefinitionFunction.parse({type:Me.SignatureDefinitionBaseType.Function,description:this.createFunctionDescription(e),arguments:e.parameters.map(r=>{if(r.type===Oe.ASTType.Identifier)return{label:r.name??"unknown",type:Me.SignatureDefinitionBaseType.Any};let i=r;return{label:i.variable?.name??"unknown",types:Array.from(this.resolveTypeWithDefault(i.init).types)}}),returns:["any"]});return this.factory(we.CompletionItemKind.Function).addType(Me.SignatureDefinitionBaseType.Function).addSignatureType((0,gL.enrichWithMetaInformation)(n)).setLine(e.start.line)}resolveParenthesisExpression(e){return this.resolveTypeWithDefault(e.expression)}resolveBinaryExpression(e){let n=this.factory(we.CompletionItemKind.Expression).setLabel("Binary Expr").setLine(e.start.line),r=this.resolveTypeWithDefault(e.left),i=this.resolveTypeWithDefault(e.right);return n.extend(r),n.extend(i),n}resolveLogicalExpression(e){return this.factory(we.CompletionItemKind.Expression).setLabel("Logical Expr").addType(Me.SignatureDefinitionBaseType.Number).setLine(e.start.line)}resolveComparisonGroupExpression(e){return this.factory(we.CompletionItemKind.Expression).setLabel("Comparison Group Expr").addType(Me.SignatureDefinitionBaseType.Number).setLine(e.start.line)}resolveIsaExpression(e){return this.factory(we.CompletionItemKind.Expression).setLabel("Isa Expr").addType(Me.SignatureDefinitionBaseType.Number).setLine(e.start.line)}resolveCallStatement(e){let n=this.resolveNamespace(e);return n===null?this.factory(we.CompletionItemKind.Variable).addType(Me.SignatureDefinitionBaseType.Any).setLine(e.start.line):n}resolveCallExpression(e){let n=this.resolveNamespace(e);return n===null?this.factory(we.CompletionItemKind.Variable).addType(Me.SignatureDefinitionBaseType.Any).setLine(e.start.line):n}resolveUnaryExpression(e){let n=this.resolveNamespace(e);return n===null?this.factory(we.CompletionItemKind.Variable).addType(Me.SignatureDefinitionBaseType.Any).setLine(e.start.line):n}resolveMapConstructorExpression(e){let n=this.factory(we.CompletionItemKind.MapConstructor).addType(Me.SignatureDefinitionBaseType.Map);for(let r=0;r<e.fields.length;r++){let i=e.fields[r],s=this.resolveTypeWithDefault(i.value).setLine(i.start.line);if(i.key.type===Oe.ASTType.StringLiteral){let o=i.key.value.toString();n.setProperty(o,s),n.values.get(`i:${o}`)?.definitions.push({source:this._document.source,node:i})}else{let o=this.resolveTypeWithDefault(i.key).setLine(i.start.line);n.setProperty(o,s)}}return this.createCustomTypeFromMap(e,n),n.setLabel("{}").setLine(e.start.line)}resolveListConstructorExpression(e){let n=this.factory(we.CompletionItemKind.ListConstructor).addType(Me.SignatureDefinitionBaseType.List);for(let r=0;r<e.fields.length;r++){let i=e.fields[r],s=this.factory(we.CompletionItemKind.Variable).addType(Me.SignatureDefinitionBaseType.Number).setLine(i.start.line),o=this.resolveTypeWithDefault(i.value).setLine(i.start.line);n.setProperty(s,o)}return n.setLabel("[]").setLine(e.start.line)}resolveSliceExpression(e){let n=this.resolveNamespace(e);return n===null?this.factory(we.CompletionItemKind.Variable).addType(Me.SignatureDefinitionBaseType.Any).setLine(e.start.line):n.setLine(e.start.line)}resolveIndexExpression(e,n=!1){let r=this.resolveNamespace(e,n);return r===null?this.factory(we.CompletionItemKind.Variable).addType(Me.SignatureDefinitionBaseType.Any).setLine(e.start.line):r}resolveMemberExpression(e,n=!1){let r=this.resolveNamespace(e,n);return r===null?this.factory(we.CompletionItemKind.Property).addType(Me.SignatureDefinitionBaseType.Any).setLabel(e.identifier.name).setLine(e.start.line):r}resolveIdentifier(e,n=!1){let r=this.resolveNamespace(e,n);return r===null?this.factory(we.CompletionItemKind.Property).addType(Me.SignatureDefinitionBaseType.Any).setLabel(e.name).setLine(e.start.line):r}resolveType(e,n=!1){if(e==null)return null;switch(e.type){case Oe.ASTType.ParenthesisExpression:return this.resolveParenthesisExpression(e);case Oe.ASTType.CallStatement:return this.resolveCallStatement(e);case Oe.ASTType.CallExpression:return this.resolveCallExpression(e);case Oe.ASTType.BinaryExpression:return this.resolveBinaryExpression(e);case Oe.ASTType.LogicalExpression:return this.resolveLogicalExpression(e);case Oe.ASTType.IsaExpression:return this.resolveIsaExpression(e);case Oe.ASTType.ComparisonGroupExpression:return this.resolveComparisonGroupExpression(e);case Oe.ASTType.FunctionDeclaration:return this.resolveFunctionStatement(e);case Oe.ASTType.SliceExpression:return this.resolveSliceExpression(e);case Oe.ASTType.IndexExpression:return this.resolveIndexExpression(e,n);case Oe.ASTType.MemberExpression:return this.resolveMemberExpression(e,n);case Oe.ASTType.Identifier:return this.resolveIdentifier(e,n);case Oe.ASTType.MapConstructorExpression:return this.resolveMapConstructorExpression(e);case Oe.ASTType.ListConstructorExpression:return this.resolveListConstructorExpression(e);case Oe.ASTType.NegationExpression:case Oe.ASTType.BinaryNegatedExpression:case Oe.ASTType.UnaryExpression:return this.resolveUnaryExpression(e);case Oe.ASTType.NilLiteral:return this.factory(we.CompletionItemKind.Literal).addType("null").setLabel("null").setLine(e.start.line);case Oe.ASTType.StringLiteral:{let r=e.value.toString();return this.factory(we.CompletionItemKind.Literal).addType(Me.SignatureDefinitionBaseType.String).setLabel(`"${r.length>20?r.substr(0,20)+"...":r}"`).setLine(e.start.line)}case Oe.ASTType.NumericLiteral:case Oe.ASTType.BooleanLiteral:{let r=e.value.toString();return this.factory(we.CompletionItemKind.Literal).addType(Me.SignatureDefinitionBaseType.Number).setLabel(r).setLine(e.start.line)}case ld.ASTType.FeatureFileExpression:return this.factory(we.CompletionItemKind.Expression).addType(Me.SignatureDefinitionBaseType.String).setLabel("File Expr").setLine(e.start.line);case ld.ASTType.FeatureLineExpression:return this.factory(we.CompletionItemKind.Expression).addType(Me.SignatureDefinitionBaseType.Number).setLabel("Line Expr").setLine(e.start.line);case ld.ASTType.FeatureEnvarExpression:return this.factory(we.CompletionItemKind.Expression).addType(Me.SignatureDefinitionBaseType.String).setLabel("Envar Expr").setLine(e.start.line);case ld.ASTType.FeatureInjectExpression:return this.factory(we.CompletionItemKind.Expression).addType(Me.SignatureDefinitionBaseType.String).setLabel("Inject Expr").setLine(e.start.line);default:return null}}resolveTypeWithDefault(e=null,n=!1){let r=this.resolveType(e,n);if(r==null){let i=this.factory(we.CompletionItemKind.Variable).addType(Me.SignatureDefinitionBaseType.Any);return e!=null&&i.setLine(e.start.line),i}return r}resolveChain(e,n=!1){if(e.length===0)return null;let r=null,i=e[0],s=i.unary?.operator==="@"&&!i.isInCallExpression||n&&e.length===1;if((0,ds.isResolveChainItemWithIdentifier)(i))if(i.getter.name==="globals")r=this._scope.globals;else if(i.getter.name==="outer")r=this._scope.outer;else if(i.getter.name==="locals")r=this._scope.locals;else if(i.getter.name==="super"){let a=this._document.getScopeContext(i.ref.scope)?.scope.context?.getIsa();a==null?r=this.factory(we.CompletionItemKind.Constant).addType("null").setLabel("super"):r=a.copy({kind:we.CompletionItemKind.Constant,label:"super",values:a.values})}else if(i.getter.name==="self"){let a=this._document.getScopeContext(i.ref.scope)?.scope.context;a==null?r=this.factory(we.CompletionItemKind.Constant).addType("null").setLabel("self"):r=a.copy({kind:we.CompletionItemKind.Constant,label:"self",values:a.values})}else r=this._scope.resolveNamespace(i.getter.name,s)??this.factory(we.CompletionItemKind.Variable).addType(Me.SignatureDefinitionBaseType.Any).setLabel(i.getter.name);else if((0,ds.isResolveChainItemWithValue)(i))r=this.resolveTypeWithDefault(i.value,s);else return null;if(i.unary?.operator===Oe.Keyword.New&&r!==null){let a=this.factory(we.CompletionItemKind.Variable).addType(Me.SignatureDefinitionBaseType.Map).setLabel(r.label);a.setProperty("__isa",r),this.createCustomTypeFromMap(i.unary,a),r=a}let o=e.length;for(let a=1;a<o&&r!==null;a++){let u=e[a],c=u.unary?.operator==="@"&&!u.isInCallExpression||n&&e.length-1===a;if((0,ds.isResolveChainItemWithMember)(u))r=r.resolveProperty(u.getter.name,c)??this.factory(we.CompletionItemKind.Variable).addType(Me.SignatureDefinitionBaseType.Any).setLabel(u.getter.name);else if((0,ds.isResolveChainItemWithIndex)(u))if((0,hE.isValidIdentifierLiteral)(u.getter)){let l=u.getter.value.toString();r=r.resolveProperty(l,u.isInCallExpression)??this.factory(we.CompletionItemKind.Variable).addType(Me.SignatureDefinitionBaseType.Any).setLabel(l)}else{let l=this.resolveTypeWithDefault(u.getter);r=r.resolveProperty(l,u.isInCallExpression)??this.factory(we.CompletionItemKind.Variable).addType(Me.SignatureDefinitionBaseType.Any)}else if(u.ref.type===Oe.ASTType.SliceExpression)r=r.copy();else return null;if(u.unary?.operator===Oe.Keyword.New&&r!==null){let l=this.factory(we.CompletionItemKind.Property).addType(Me.SignatureDefinitionBaseType.Map).setLabel(r.label);l.setProperty("__isa",r),this.createCustomTypeFromMap(u.unary,l),r=l}}return r}setEntityInPath(e,n,r){let i=e;for(let s=0;s<n.length-1;s++){let o=n[s],a=i.resolveProperty(o);if(a==null){let u=this.factory(we.CompletionItemKind.Property).addType(Me.SignatureDefinitionBaseType.Map).setLabel(o);i.setProperty(o,u),a=u}i=a}return i.setProperty(n[n.length-1],r)}getEntityInPath(e,n){let r=e;for(let i=0;i<n.length;i++){let s=n[i],o=r.resolveProperty(s);if(o==null)return null;r=o}return r}resolveNamespace(e,n=!1){let r=(0,pE.createResolveChain)(e);return this.resolveChain(r,n)}defineProperty(e,n,r){let i=e.setProperty(n,r);return this._lastModifiedProperty=e.resolveProperty(n,!0),i}defineNamespace(e,n){let r=(0,pE.createResolveChain)(e),i=r.pop();if(this._lastModifiedProperty=null,r.length>0){let o=this.resolveChain(r);if(o===null)return!1;if((0,ds.isResolveChainItemWithMember)(i))return this.defineProperty(o,i.getter.name,n);if((0,ds.isResolveChainItemWithIndex)(i)){if((0,hE.isValidIdentifierLiteral)(i.getter))return this.defineProperty(o,i.getter.value.toString(),n);{let a=this.resolveTypeWithDefault(i.getter);return this.defineProperty(o,a,n)}}return!1}let s=this._scope;return(0,ds.isResolveChainItemWithIdentifier)(i)?this.defineProperty(s,i.getter.name,n):!1}addDefinition(e){this._lastModifiedProperty?.definitions.push({source:this._document.source,node:e});let n=(0,fE.createExpressionId)(e.variable),r=this._definitions;n.startsWith("globals.")?(r=this._document.getRootScopeContext().aggregator.definitions,n=n.slice(8)):n.startsWith("locals.")?(r=this._definitions,n=n.slice(7)):n.startsWith("outer.")&&(r=this.parent.definitions,n=n.slice(6));let i=r.get(n);i?i.push({source:this._document.source,node:e}):r.set(n,[{source:this._document.source,node:e}])}resolveAvailableAssignmentsWithQuery(e){let n=[],r=new Set([this,this._parent,this._document.getRootScopeContext().aggregator]);for(let i of r){let s=i.definitions;for(let o of s.keys())if(o.includes(e)){let a=s.get(o);(0,gE.merge)(n,a)}}return n}resolveAvailableAssignments(e){let n=(0,fE.createExpressionId)(e),r=this;n.startsWith("globals.")?(r=this._document.getRootScopeContext().aggregator,n=n.slice(8)):n.startsWith("locals.")?(r=this,n=n.slice(7)):n.startsWith("outer.")&&(r=this.parent,n=n.slice(6));let i=[],s=new Set([r,r._parent,r._document.getRootScopeContext().aggregator]);for(let o of s){if(o==null)continue;let a=o.resolveNamespace(e,!0);a!=null&&(0,gE.merge)(i,a.definitions)}return i}analyze(){for(let e=0;e<this._root.assignments.length;e++){let n=this._root.assignments[e],r=this.resolveType(n.init)?.copy({source:this._document.source}).setLine(n.start.line)??this.factory(we.CompletionItemKind.Variable).addType(Me.SignatureDefinitionBaseType.Any).setLine(n.start.line);this.defineNamespace(n.variable,r),this.addDefinition(n)}}extend(e){for(let[n,r]of e.definitions){let i=this.definitions.get(n);i?(0,mL.mergeUnique)(i,r):this.definitions.set(n,r)}}};dd.Aggregator=Hy});var Ky=g(fd=>{"use strict";Object.defineProperty(fd,"__esModule",{value:!0});fd.Document=void 0;var Vr=Wn(),vL=qe(),mE=os(),_L=Uy(),yE=Wy(),bE=po(),vE=Ty(),Gy=class t{get source(){return this._source}get root(){return this._root}get container(){return this._container}get intrinsics(){return this._intrinscis}get globals(){return this._globals}get api(){return this._api}constructor(e){this._source=e.source,this._root=e.root,this._container=e.container,this._scopeMapping=e.scopeMapping??new WeakMap,this._intrinscis=e.intrinsics??this.createIntrinscis(),this._api=e.api??this.initApi(),this._globals=e.globals??this.initGlobals()}createIntrinscis(){return{map:this._container.primitives.get(Vr.SignatureDefinitionBaseType.Map),funcRef:this._container.primitives.get(Vr.SignatureDefinitionBaseType.Function),number:this._container.primitives.get(Vr.SignatureDefinitionBaseType.Number),string:this._container.primitives.get(Vr.SignatureDefinitionBaseType.String),list:this._container.primitives.get(Vr.SignatureDefinitionBaseType.List)}}initApi(){let e=this._container.primitives.get(Vr.SignatureDefinitionBaseType.General);return e.resolveProperty("map",!0).setReturnEntity(this._intrinscis.map),e.resolveProperty("funcRef",!0).setReturnEntity(this._intrinscis.funcRef),e.resolveProperty("number",!0).setReturnEntity(this._intrinscis.number),e.resolveProperty("string",!0).setReturnEntity(this._intrinscis.string),e.resolveProperty("list",!0).setReturnEntity(this._intrinscis.list),e}initGlobals(){return new bE.Entity({source:this._source,kind:mE.CompletionItemKind.Constant,container:this._container,label:"globals"}).addType(Vr.SignatureDefinitionBaseType.Map)}analyzeScope(e){let n=this._scopeMapping.get(e.scope),r=new vE.Scope({source:this._source,container:this._container,parent:n?.scope,globals:this._globals}),i=new yE.Aggregator({scope:r,root:e,document:this,parent:n?.aggregator});this._scopeMapping.set(e,{scope:r,aggregator:i});let s=e.assignment instanceof vL.ASTAssignmentStatement?this.resolveNamespace(e.assignment.variable,!0):null;if(s!==null){let o=s?.context;o!=null&&o.types.has(Vr.SignatureDefinitionBaseType.Map)&&o!==this._globals&&r.setContext(o)}if(i.analyze(),s!==null){let o=s.signatureDefinitions.last();if(o!=null){let a=o.getArguments();for(let u=0;u<a.length;u++){let c=a[u],l=r.resolveProperty(c.getLabel(),!0),d=c.getTypes().map(p=>p.type);l===null?r.setProperty(c.getLabel(),new bE.Entity({source:this._source,kind:mE.CompletionItemKind.Variable,container:this._container}).addTypes(d)):(l.types.delete(Vr.SignatureDefinitionBaseType.Any),l.addTypes(d))}}}}analyze(){let e=new vE.Scope({source:this._source,container:this._container,globals:this._globals,locals:this._globals}),n=new yE.Aggregator({scope:e,root:this._root,document:this});this._scopeMapping.set(this._root,{scope:e,aggregator:n}),n.analyze();for(let r=0;r<this._root.scopes.length;r++){let i=this._root.scopes[r];this.analyzeScope(i)}}getRootScopeContext(){return this._scopeMapping.get(this._root)}getAllScopeContexts(){return[this._root,...this._root.scopes].map(e=>this._scopeMapping.get(e))}getScopeContext(e){return this._scopeMapping.get(e)??null}getLastASTItemOfLine(e){let n=this._root.lines[e];return n&&n.length>0?n[n.length-1]:null}findASTItemInLine(e,n){let r=this._root.lines[e];if(r&&r.length>0){let i=r.find(s=>s.type===n);if(i)return i}return null}resolveAllAssignmentsWithQuery(e){let n=[],r=[this._root,...this._root.scopes];for(let i=0;i<r.length;i++){let o=this._scopeMapping.get(r[i]).aggregator.definitions;for(let a of o.keys())if(a.includes(e)){let u=o.get(a);(0,_L.merge)(n,u)}}return n}resolveAvailableAssignments(e){return this._scopeMapping.get(e.scope)?.aggregator.resolveAvailableAssignments(e)??[]}resolveType(e,n){return this._scopeMapping.get(e.scope)?.aggregator.resolveType(e,n)??null}resolveTypeWithDefault(e,n){return this._scopeMapping.get(e.scope)?.aggregator.resolveTypeWithDefault(e,n)}resolveNamespace(e,n=!1){return this._scopeMapping.get(e.scope)?.aggregator.resolveNamespace(e,n)??null}merge(...e){let n=new t({source:this._source,root:this._root,container:this._container.copy()});for(let r=0;r<e.length;r++){let i=e[r];n._globals.extend(i._globals),n._intrinscis.map.extend(i._intrinscis.map),n._intrinscis.funcRef.extend(i._intrinscis.funcRef),n._intrinscis.number.extend(i._intrinscis.number),n._intrinscis.string.extend(i._intrinscis.string),n._intrinscis.list.extend(i._intrinscis.list),n._container.mergeCustomTypes(i._container)}n.analyze();for(let r=0;r<e.length;r++){let i=e[r];n.getRootScopeContext().aggregator.extend(i.getRootScopeContext().aggregator)}return n}};fd.Document=Gy});var Yy=g(pd=>{"use strict";Object.defineProperty(pd,"__esModule",{value:!0});pd.ContainerProxy=void 0;var ar=Wn(),zr=po(),Vy=os(),_E=ja(),zy=Ql(),Xy=class t{get primitives(){return this._primitives}get types(){return this._types}constructor(e){this._container=e.container,this._primitives=e.primitives??this.createPrimitives(),this._types=e.types??this.createTypes(),this._customTypes=new Set}createPrimitives(){let e=new Map;for(let[n,r]of this._container.getPrimitives()){let i=new zr.Entity({source:"internal",kind:Vy.CompletionItemKind.Constant,container:this,isAPI:n===ar.SignatureDefinitionBaseType.General}).addType(ar.SignatureDefinitionBaseType.Map).insertSignature(r);e.set(n,i)}return e}createTypes(){let e=new Map;for(let[n,r]of this._container.getTypes()){let i=new zr.Entity({source:"internal",kind:Vy.CompletionItemKind.Constant,container:this}).addType(ar.SignatureDefinitionBaseType.Map).insertSignature(r);e.set(n,i)}return e}setCustomType(e,n){this._types.has(e)||(this._types.set(e,n),this._customTypes.add(e))}mergeCustomTypes(e){for(let n of e._customTypes){let r=e._types.get(n);r!=null&&this.setCustomType(n,r.copy({deepCopy:!0}))}}getTypeSignature(e){return this._primitives.get(e)??this._types.get(e)??null}searchDefinitionMatches(e,n){if(typeof e=="string")return this.searchDefinitionMatches([e],n);let r=e.includes(ar.SignatureDefinitionBaseType.Any)?new Set(this._container.getAllVisibleTypes()):new Set(e),i=new Map;for(let s of r){let o=this.getTypeSignature(s);if(o===null)continue;let a=(0,zy.lookupProperty)(o,n);a!==null&&i.set(s,a)}return i}getDefinition(e,n,r=!1){if(typeof e=="string")return this.getDefinition([e],n);let i=(0,zy.lookupProperty)(this._primitives.get(ar.SignatureDefinitionBaseType.Any),n);if(e.includes(ar.SignatureDefinitionBaseType.Any)&&i)return(0,zr.resolveEntity)(this,i,r);let s=this.searchDefinitionMatches(e,n);if(s.size===0)return null;if(s.size===1)return(0,zr.resolveEntity)(this,s.values().next().value,r);if(s.has(ar.SignatureDefinitionBaseType.Any))return(0,zr.resolveEntity)(this,s.get(ar.SignatureDefinitionBaseType.Any),r);if(i!==null)return(0,zr.resolveEntity)(this,i,r);let o=new zr.Entity({source:"internal",kind:Vy.CompletionItemKind.Property,container:this});for(let a of s.values()){let u=(0,zr.resolveEntity)(this,a,r);o.extend(u,!0)}return o}getGeneralDefinition(e,n=!1){let r=(0,zy.lookupProperty)(this._primitives.get(ar.SignatureDefinitionBaseType.General),e);return r==null?null:(0,zr.resolveEntity)(this,r,n)}injectTypeIdentifiers(e,n){let r=this.getTypeSignature(n);if(r!=null&&((0,_E.injectIdentifers)(e,r),this._types.has(n))){let i=this._primitives.get(ar.SignatureDefinitionBaseType.Map);(0,_E.injectIdentifers)(e,i)}}getAllIdentifier(e){let n=new Map;if(e===ar.SignatureDefinitionBaseType.Any){let r=this._container.getAllVisibleTypes();for(let i=0;i<r.length;i++)this.injectTypeIdentifiers(n,r[i]);return n}return this.injectTypeIdentifiers(n,e),n}copy(){return new t({container:this._container})}};pd.ContainerProxy=Xy});var TE=g(hd=>{"use strict";Object.defineProperty(hd,"__esModule",{value:!0});hd.TypeManager=void 0;var TL=Ky(),SL=Yy(),Jy=class{constructor(e){this._container=new SL.ContainerProxy({container:e.container}),this._types=new Map}analyze(e,n){let r=new TL.Document({source:e,container:this._container.copy(),root:n});try{r.analyze()}catch(i){console.error(i)}return this._types.set(e,r),r}get(e){return this._types.get(e)??null}};hd.TypeManager=Jy});var Ja=g(se=>{"use strict";Object.defineProperty(se,"__esModule",{value:!0});se.TypeManager=se.ContainerProxy=se.Document=se.Aggregator=se.Scope=se.Entity=se.aggregateEntity=se.lookupProperty=se.isEligibleForProperties=se.injectIdentifers=se.isSignatureDefinitionFunction=se.isResolveChainItemWithValue=se.isResolveChainItemWithMember=se.isResolveChainItemWithIndex=se.isResolveChainItemWithIdentifier=se.CompletionItemKind=se.DEFAULT_CUSTOM_FUNCTION_DESCRIPTION=se.ObjectSetIterator=se.ObjectSet=se.rotateBits=se.getStringHashCode=se.getHashCode=se.createResolveChain=se.enrichWithMetaInformation=se.createExpressionId=se.createExpressionHash=se.isValidIdentifierLiteral=void 0;var kL=Ca();Object.defineProperty(se,"isValidIdentifierLiteral",{enumerable:!0,get:function(){return kL.isValidIdentifierLiteral}});var xL=L0();Object.defineProperty(se,"createExpressionHash",{enumerable:!0,get:function(){return xL.createExpressionHash}});var wL=Bm();Object.defineProperty(se,"createExpressionId",{enumerable:!0,get:function(){return wL.createExpressionId}});var EL=sy();Object.defineProperty(se,"enrichWithMetaInformation",{enumerable:!0,get:function(){return EL.enrichWithMetaInformation}});var AL=oy();Object.defineProperty(se,"createResolveChain",{enumerable:!0,get:function(){return AL.createResolveChain}});var Qy=$m();Object.defineProperty(se,"getHashCode",{enumerable:!0,get:function(){return Qy.getHashCode}});Object.defineProperty(se,"getStringHashCode",{enumerable:!0,get:function(){return Qy.getStringHashCode}});Object.defineProperty(se,"rotateBits",{enumerable:!0,get:function(){return Qy.rotateBits}});var SE=ly();Object.defineProperty(se,"ObjectSet",{enumerable:!0,get:function(){return SE.ObjectSet}});Object.defineProperty(se,"ObjectSetIterator",{enumerable:!0,get:function(){return SE.ObjectSetIterator}});var OL=dy();Object.defineProperty(se,"DEFAULT_CUSTOM_FUNCTION_DESCRIPTION",{enumerable:!0,get:function(){return OL.DEFAULT_CUSTOM_FUNCTION_DESCRIPTION}});var CL=os();Object.defineProperty(se,"CompletionItemKind",{enumerable:!0,get:function(){return CL.CompletionItemKind}});var gd=fy();Object.defineProperty(se,"isResolveChainItemWithIdentifier",{enumerable:!0,get:function(){return gd.isResolveChainItemWithIdentifier}});Object.defineProperty(se,"isResolveChainItemWithIndex",{enumerable:!0,get:function(){return gd.isResolveChainItemWithIndex}});Object.defineProperty(se,"isResolveChainItemWithMember",{enumerable:!0,get:function(){return gd.isResolveChainItemWithMember}});Object.defineProperty(se,"isResolveChainItemWithValue",{enumerable:!0,get:function(){return gd.isResolveChainItemWithValue}});var RL=py();Object.defineProperty(se,"isSignatureDefinitionFunction",{enumerable:!0,get:function(){return RL.isSignatureDefinitionFunction}});var PL=ja();Object.defineProperty(se,"injectIdentifers",{enumerable:!0,get:function(){return PL.injectIdentifers}});var DL=Yl();Object.defineProperty(se,"isEligibleForProperties",{enumerable:!0,get:function(){return DL.isEligibleForProperties}});var IL=Ql();Object.defineProperty(se,"lookupProperty",{enumerable:!0,get:function(){return IL.lookupProperty}});var ML=hy();Object.defineProperty(se,"aggregateEntity",{enumerable:!0,get:function(){return ML.aggregateEntity}});var LL=po();Object.defineProperty(se,"Entity",{enumerable:!0,get:function(){return LL.Entity}});var NL=Ty();Object.defineProperty(se,"Scope",{enumerable:!0,get:function(){return NL.Scope}});var qL=Wy();Object.defineProperty(se,"Aggregator",{enumerable:!0,get:function(){return qL.Aggregator}});var jL=Ky();Object.defineProperty(se,"Document",{enumerable:!0,get:function(){return jL.Document}});var FL=Yy();Object.defineProperty(se,"ContainerProxy",{enumerable:!0,get:function(){return FL.ContainerProxy}});var $L=TE();Object.defineProperty(se,"TypeManager",{enumerable:!0,get:function(){return $L.TypeManager}})});var eb=g(md=>{"use strict";Object.defineProperty(md,"__esModule",{value:!0});md.findEx=void 0;var BL=qe(),UL=function(t){return{ParenthesisExpression:(e,n)=>{t(e.expression,n)},AssignmentStatement:function(e,n){t(e.init,n),t(e.variable,n)},MemberExpression:function(e,n){t(e.base,n),t(e.identifier,n)},FunctionDeclaration:function(e,n){for(let r=0;r<e.parameters.length;r++)t(e.parameters[r],n);for(let r=0;r<e.body.length;r++)t(e.body[r],n)},MapConstructorExpression:function(e,n){for(let r=0;r<e.fields.length;r++)t(e.fields[r],n)},ReturnStatement:function(e,n){e.argument&&t(e.argument,n)},WhileStatement:function(e,n){t(e.condition,n);for(let r=0;r<e.body.length;r++)t(e.body[r],n)},IndexExpression:function(e,n){t(e.base,n),t(e.index,n)},SliceExpression:function(e,n){t(e.base,n),t(e.left,n),t(e.right,n)},ListValue:function(e,n){t(e.value,n)},MapKeyString:function(e,n){t(e.key,n),t(e.value,n)},IfShortcutStatement:function(e,n){for(let r=0;r<e.clauses.length;r++)t(e.clauses[r],n)},IfShortcutClause:function(e,n){t(e.condition,n);for(let r=0;r<e.body.length;r++)t(e.body[r],n)},ElseifShortcutClause:function(e,n){t(e.condition,n);for(let r=0;r<e.body.length;r++)t(e.body[r],n)},ElseShortcutClause:function(e,n){for(let r=0;r<e.body.length;r++)t(e.body[r],n)},ForGenericStatement:function(e,n){t(e.variable,n),t(e.iterator,n);for(let r=0;r<e.body.length;r++)t(e.body[r],n)},IfStatement:function(e,n){for(let r=0;r<e.clauses.length;r++)t(e.clauses[r],n)},IfClause:function(e,n){t(e.condition,n);for(let r=0;r<e.body.length;r++)t(e.body[r],n)},ElseifClause:function(e,n){t(e.condition,n);for(let r=0;r<e.body.length;r++)t(e.body[r],n)},ElseClause:function(e,n){for(let r=0;r<e.body.length;r++)t(e.body[r],n)},NegationExpression:function(e,n){t(e.argument,n)},CallExpression:function(e,n){t(e.base,n);for(let r=0;r<e.arguments.length;r++)t(e.arguments[r],n)},CallStatement:function(e,n){t(e.expression,n)},ListConstructorExpression:function(e,n){for(let r=0;r<e.fields.length;r++)t(e.fields[r],n)},BinaryExpression:function(e,n){t(e.left,n),t(e.right,n)},BinaryNegatedExpression:function(e,n){t(e.argument,n)},IsaExpression:function(e,n){t(e.left,n),t(e.right,n)},LogicalExpression:function(e,n){t(e.left,n),t(e.right,n)},ComparisonGroupExpression:function(e,n){for(let r=0;r<e.expressions.length;r++)t(e.expressions[r],n)},UnaryExpression:function(e,n){t(e.argument,n)},Chunk:function(e,n){for(let r=0;r<e.body.length;r++)t(e.body[r],n)},InvalidCodeExpression:()=>{}}},Zy=class{constructor(e){this.map=UL(this.visit.bind(this)),this.callback=e,this.state={exit:!1}}visit(e,n=0){let r=this;if(e==null)return;if(e.type==null)throw console.error("Error ast type:",e),new Error("Unexpected as type");if(r.state=r.callback(e,n),r.state.exit||r.state.skip)return;let i=r.map[e.type];i?.call(r,e,n+1)}};function HL(t,e){let n=[];return new Zy((i,s)=>{let o=t(i,s)||{};return o.valid&&i.type!==BL.ASTType.InvalidCodeExpression&&n.push(i),{exit:!!o.exit,skip:!!o.skip}}).visit(e),n}md.findEx=HL});var kE=g((VU,WL)=>{WL.exports={insert:{description:"Depending on the data type this method will insert a value to the provided index. Due to the insertion, the object will be mutated. To get a better idea about the behaviour look into the `insert` method related to `list` or `string`.",example:["list = [2, 3, 4]","list.insert(2, 42)",'print("List with inserted item: " + list.join(", "))']},indexOf:{description:"Depending on the data type this function searches for the index of the provided value. To get a better idea about the behaviour look into the `indexOf` methods related to `string`, `list` and `map`.",example:['index = "test".indexOf("e")','print("e is at: " + index)']},hasIndex:{description:"Depending on data type this function checks if the provided index is available inside the value. To get a better idea about the behaviour look into the `hasIndex` methods related to `string`, `list` and `map`.",example:['print("List has index: " + [1, 2, 3].hasIndex(2)']},remove:{description:"Depending on the data type this function will remove a value in the provided object. As a result, the object will get mutated. To get a better idea about the behaviour look into the `remove` methods related to `list` and `map`.",example:["list = [9, 3, 5, 7]","list.remove(5)",'print("List after removal: " + list.join(", "))']},push:{description:"Depending on data type this function will append a value to the provided object. As a result, the object will get mutated. To get a better idea about the behaviour look into the `push` methods related to `list` and `map`.",example:["list = [0, 1, 2, 3, 4, 5]","list.push(42)",'print("The answer to everything is: " + list.pop)']},pull:{description:"Depending on data type this function will return the first item in the provided value. Additionally, this function removes the last item and therefore mutates the object. To get a better idea about the behaviour look into the `pop` methods related to `list` and `map`.",example:["myList = [42, 1, 3]","answer = myList.pull",'print("Answer to everything: " + answer)']},pop:{description:"Depending on data type this function will return the last item in the provided value. Additionally, this function removes the last item and therefore mutates the object. To get a better idea about the behaviour look into the `pop` methods related to `list` and `map`.",example:["list = [0, 1, 2, 3, 4, 5]",'print("The last item is: " + list.pop)']},shuffle:{description:"Depending on data type this function will shuffle data. Instead of returning the newly shuffled data, this function will mutate the data. To get a better idea about the behaviour look into the `shuffle` methods related to `list` and `map`.",example:["list = [0, 1, 2, 3, 4, 5]","list.shuffle",'print("And the winner is: " + list[0])']},sum:{description:"Depending on data type this function returns the sum of all items. To get a better idea about the behaviour look into the `sum` methods related to `list` and `map`.",example:["list = [0, 1, 2, 3, 4, 5]",'print("Sum of all items is: " + list.sum)']},indexes:{description:"Depending on data type this function returns a `list` with all available indexes. To get a better idea about the behaviour look into the `indexes` methods related to `string`, `list` and `map`.",example:['indexesOfStr = "test".indexes','print("Following indexes are available: " + indexesOfStr.join(", "))']},len:{description:"Depending on data type this function returns the length of the provided value. To get a better idea about the behaviour look into the `len` methods related to `string`, `list` and `map`.",example:['length = "test".len','print("Length of string is: " + length)']},values:{description:"Depending on data type this function returns a `list` with all available values. To get a better idea about the behaviour look into the `values` methods related to `string`, `list` and `map`.",example:['indexesOfStr = "test".values','print("Following values are available: " + indexesOfStr.join(", "))']}}});var xE=g((zU,GL)=>{GL.exports={hasIndex:{description:"Depending on data type this function checks if the provided index is available inside the value. To get a better idea about the behaviour look into the `hasIndex` methods related to `string`, `list` and `map`.",example:['print("List has index: " + hasIndex([1, 2, 3], 2)']},print:{description:"Print a message on the Terminal.",example:['print("hello world")']},indexes:{description:"Depending on data type this function returns a `list` with all available indexes. To get a better idea about the behaviour look into the `indexes` methods related to `string`, `list` and `map`.",example:['indexesOfStr = indexes("test")','print("Following indexes are available: " + indexesOfStr.join(", "))']},values:{description:"Depending on data type this function returns a `list` with all available values. To get a better idea about the behaviour look into the `values` methods related to `string`, `list` and `map`.",example:['indexesOfStr = values("test")','print("Following values are available: " + indexesOfStr.join(", "))']},indexOf:{description:"Depending on the data type this function searches for the index of the provided value. To get a better idea about the behaviour look into the `indexOf` methods related to `string`, `list` and `map`.",example:['index = indexOf("test", "e")','print("e is at: " + index)']},len:{description:"Depending on data type this function returns the length of the provided value. To get a better idea about the behaviour look into the `len` methods related to `string`, `list` and `map`.",example:['length = len("test")','print("Length of string is: " + length)']},shuffle:{description:"Depending on data type this function will shuffle data. Instead of returning the newly shuffled data, this function will mutate the data. To get a better idea about the behaviour look into the `shuffle` methods related to `list` and `map`.",example:["list = [0, 1, 2, 3, 4, 5]","shuffle(list)",'print("And the winner is: " + list[0])']},val:{description:"Casts a `string` to a `number`. In case the provided `string` does not represent a valid `number` the `number` zero will get returned.",example:['num = val("1.25")','print("Number in string is: " + num)']},lower:{description:"Returns a `string` which is the lowercase transformed version of the provided `string`.",example:['myString = lower("HELLO WORLD")',"print(myString)"]},upper:{description:"Returns a `string` which is the uppercase transformed version of the provided `string`.",example:['myString = upper("hello world")',"print(myString)"]},sum:{description:"Depending on data type this function returns the sum of all items. To get a better idea about the behaviour look into the `sum` methods related to `list` and `map`.",example:["list = [0, 1, 2, 3, 4, 5]",'print("Sum of all items is: " + sum(list))']},pop:{description:"Depending on data type this function will return the last item in the provided value. Additionally, this function removes the last item and therefore mutates the object. To get a better idea about the behaviour look into the `pop` methods related to `list` and `map`.",example:["list = [0, 1, 2, 3, 4, 5]",'print("The last item is: " + pop(list))']},pull:{description:"Depending on data type this function will return the first item in the provided value. Additionally, this function removes the first item and therefore mutates the object. To get a better idea about the behaviour look into the `pull` methods related to `list` and `map`.",example:["list = [0, 1, 2, 3, 4, 5]",'print("The first item is: " + pull(list))']},push:{description:"Depending on data type this function will append a value to the provided object. As a result, the object will get mutated. To get a better idea about the behaviour look into the `push` methods related to `list` and `map`.",example:["list = [0, 1, 2, 3, 4, 5]","push(list, 42)",'print("The answer to everything is: " + pop(list))']},sort:{description:"Depending on the data type this function will sort the values in the provided object. As a result, the object will get mutated. To get a better idea about the behaviour look into the `sort` methods related to `list` and `map`.",example:["list = [9, 3, 5, 7]","sort(list)",'print("Sorted list: " + list.join(", "))']},remove:{description:"Depending on the data type this function will remove a value in the provided object. As a result, the object will get mutated. To get a better idea about the behaviour look into the `remove` methods related to `list` and `map`.",example:["list = [9, 3, 5, 7]","remove(list, 5)",'print("List after removal: " + list.join(", "))']},wait:{description:"Puts script execution on hold. Optionally the duration can be provided via the time argument. By default, the duration will be 1 second. The duration cannot be below 0.01 or above 300.",example:["start = time","wait(5)","elapsed = time - start",'print("Waited: " + elapsed)']},bitwise:{description:'Enables to perform bitwise operations. Supported operators are: `"&"`, `"|"`, `"^"`, `"<<"`, `">>"`, `">>>"`. Returns a `number`.',example:["num = params[0].to_int",'isOdd = bitwise("&", num, 1) == 1',"if isOdd then",' print("Number is odd.")',"else",' print("Number is even.")',"end if"]},abs:{description:"Returns the absolute value of `number`.",example:["a = 1","b = 5","difference = abs(a - b)",'print("Difference between a and b is: " + difference)']},acos:{description:"Returns the inverse cosine (in radians) of a `number`.",example:["adjacent = 8","hypotenuse = 10","calcAngle = acos(adjacent / hypotenuse)",'print("Angle: " + calcAngle)']},asin:{description:"Returns the inverse sine (in radians) of a `number`.",example:["opposite = 6","hypotenuse = 10","calcAngle = acos(opposite / hypotenuse)",'print("Angle: " + calcAngle)']},atan:{description:"Returns the inverse tangent (in radians) of a `number`.",example:["opposite = 8","hypotenuse = 10","calcAngle = atan(opposite / hypotenuse)",'print("Angle: " + calcAngle)']},tan:{description:"Returns the tangent of a `number` in radians.",example:["degrees = 90","tanFromDegrees = tan(degress * pi / 180)",'print("Tan from degrees: " + tanFromDegrees)']},cos:{description:"Returns the cosine of a `number` in radians.",example:["radians = 1","radius = 10","circleX = cos(radians) * radius","print(circleX)"]},code:{description:"Returns the Unicode `number` of the first character of the string. In case an empty `string` is provided the script execution will crash.",example:['key = user_input("Press a key!", false, true)',"isA = key.code == 97","if isA then",' print("You pressed A.")',"else",' print("You did not press A.")',"end if"]},char:{description:"Returns the Unicode character `string` related to the provided unicode `number`. The provided `number` needs to be between 0 and 65535. Any `number` which is outside this range will cause the script to throw a runtime error.",example:['key = user_input("Press a key!", false, true)',"isA = key == char(97)","if isA then",' print("You pressed A.")',"else",' print("You did not press A.")',"end if"]},sin:{description:"Returns the sine of a `number` in radians.",example:["radians = 1","radius = 10","circleY = sin(radians) * radius","print(circleY)"]},floor:{description:"Returns `number` rounded down to the integer value of the provided `number`.",example:["price = 25.43467","floored = floor(price * 100) / 100",'print("Floored price: " + floored)']},range:{description:"Returns a `list` where each item is a `number`. By default, the `list` starts with the `number` zero and increments by one for each item. Optionally start and end can be defined. Additionally, the incremental value can be changed as well. In case the incremental value is zero this function will throw a runtime error.",example:['print("Countdown:")',"for num in range(10)"," print(num)","end for",'print("Done!")']},round:{description:"Returns `number` rounded to the integer value of the provided `number`.",example:["price = 25.43467","rounded = round(price * 100) / 100",'print("Price: " + rounded)']},rnd:{description:"Returns a random `number` between 0 and 1. Optionally a seed `number` can be provided.",example:["min = 10","max = 20","output = floor(rnd * (max - min + 1) + min)",'input = user_input("Guess a number between 10 and 20!").to_int',"if (input == output) then",' print("You guessed right!")',"else",' print("You failed! The number was " + output)',"end if"]},sign:{description:"Returns a one or minus one, indicating the sign of the number passed as argument. If the input is zero, it will be returned as-is.",example:["print(sign(40))","print(sign(-40))","print(sign(0))"]},sqrt:{description:"Returns the square root of a `number`.",example:["a = 3","b = 4","calcHypotenuse = sqrt((a * a) + (b * b))",'print("Hypotenuse: " + calcHypotenuse)']},str:{description:"Returns the `string` value of provided data. Can be used to turn a `number` into a `string` or to get the signature of a `function`.",example:["signature = str(@user_input)","argSegment = signature[9:signature.len - 1]",'args = argSegment.split(",")','print("Function has " + args.len + " arguments.")']},ceil:{description:"Returns `number` rounded up to the integer value of the provided `number`.",example:["price = 25.43467","upperPrice = ceil(price * 100) / 100",'print("Upper price: " + upperPrice)']},pi:{description:"Returns the `number` PI to the precision of six.",example:["radius = 10","circumference = 2 * pi * radius",'print("Circumference: " + circumference)']},slice:{description:"Returns a sliced `list`. Valid data types for slicing are `string` and `list`. The returned `list` will contain all elements related to the provided start and end index.",example:['myString = "not your text"','print("my " + slice(myString, 9))']},hash:{description:"Returns numeric hash for the provided data.",example:['hashA = hash({ "a": 2, "b": 1 })','hashB = hash({ "b": 1, "a": 2 })',"if (hashA == hashB) then",' print("Objects are alike!")',"else",' print("Objects are different!")',"end if"]},time:{description:"Returns a `number` of seconds representing the elapsed time since the script got started.",example:["start = time","for i in range(10000)"," var = i * 100","end for","endTime = time - start",'print("Script execution done within: " + endTime)']},bitAnd:{description:"Performs a bitwise AND for the provided values. Returns a `number`.",example:['print("Result of bitwise AND: " + bitAnd(1, 2))']},bitOr:{description:"Performs a bitwise OR for the provided values. Returns a `number`.",example:['print("Result of bitwise OR: " + bitOr(1, 2))']},bitXor:{description:"Permorms a bitwise XOR for the provided values. Returns a `number`.",example:['print("Result of bitwise XOR: " + bitXor(1, 2))']},log:{description:"Returns the natural logarithm of a `number`. By default, the base is 10. Optionally the base can be changed.",example:["a = 2","b = 8","baseLog = log(a) / log(b)",'print("Base log is: " + baseLog)']},yield:{description:"Waits for the next tick.",example:["while (true)"," yield",' print("tick")',"end while"]},get_custom_object:{description:"Returns `map` which is shared throughout all script executions. Can be helpful in case forwarding an entity is desired.",example:["get_custom_object.shouldEndScript = false","while (get_custom_object.shouldEndScript)",' print("Waiting...")'," wait(2)","end while"]},insert:{description:"Depending on the data type this function will insert a value to the provided index. Due to the insertion, the object will be mutated. To get a better idea about the behaviour look into the `insert` method related to `list` or `string`.",example:["list = [2, 3, 4]","insert(list, 2, 42)",'print("List with inserted item: " + list.join(", "))']},join:{description:"Returns a concatenated `string` containing all stringified values inside the `list`. These values will be separated via the provided separator.",example:["myList = [42, 1, 3]",`print(join(myList, " .-*'*-. "))`]},split:{description:"Returns a `list` where each item is a segment of the `string`. The separation depends on the provided separator `string`. Keep in mind that for some odd reason, this method is using regular expressions for matching.",example:['myString = "42 as an answer is wrong"','segments = split(myString, " ")','if segments[0] != "42" then',' print("Invalid information spotted!")',"else",' print("Information seems valid!")',"end if"]},replace:{description:"Depending on the data type this function will replace a value in the provided object. Due to the replacement, the object might get mutated. To get a better idea about the behaviour look into the `replace` method related to `map`, `list` or `string`.",example:['myString = "42 as an answer is wrong"','newString = replace(myString, "wrong", "right")',"print(newString)"]},refEquals:{description:"Tests whether two values refer to the very same object (rather than merely representing the same value). For numbers, this is the same as ==, but for strings, lists, and maps, it is reference equality."},version:{description:`Get a map with information about the version of MiniScript and the host environment that you're currently running. This will include at least the following keys:
114
114
  miniscript: a string such as "1.5"
115
115
  buildDate: a date in yyyy-mm-dd format, like "2020-05-28"
116
116
  host: a number for the host major and minor version, like 0.9
117
117
  hostName: name of the host application, e.g. "Mini Micro"
118
- hostInfo: URL or other short info about the host app`},stackTrace:{description:"Get a list describing the call stack."}}});var wE=g((zU,GL)=>{GL.exports={$meta:{description:"Create a `list` with square brackets. Then iterate over the `list` with for, or pull out individual items with a 0-based index in square brackets. A negative index counts from the end. Get a slice (subset) of a `list` with two indices, separated by a colon.",example:["x = [2, 4, 6, 8]","print(x[0]) // get first item from list","print(x[-1]) // get last item from list","print(x[1:3]) // slice items from index 1 to 3","x[2] = 5 // set item at index 2 to 5","print(x)","print(x + [42]) // concatenate two lists"]},remove:{description:"Removes an item from the `list` with the provided index. Due to the removal the `list` will get mutated.",example:["myList = [1, 42, 3]","myList.remove(1)",'print("This list does not contain the answer to everything: " + myList.split(", "))']},insert:{description:"Inserts a value into the `list` at the index provided. Due to the insertion the `list` will get mutated. Returns the mutated `list`.",example:["myList = [1, 3]","myList.insert(1, 42)",'print("This list does contain the answer to everything: " + myList.split(", "))']},push:{description:"Appends a value to the end of the `list`. This operation will mutate the `list`. Additionally, this method will return the updated `list`.",example:["myList = [1, 3]","myList.push(42)",'print("This list does contain the answer to everything: " + myList.split(", "))']},pop:{description:"Returns and removes the last item in the `list`. This operation will mutate the `list`.",example:["myList = [1, 3, 42]","answer = myList.pop",'print("Answer to everything: " + answer)']},pull:{description:"Returns and removes the first item in the `list`. This operation will mutate the `list`.",example:["myList = [42, 1, 3]","answer = myList.pull",'print("Answer to everything: " + answer)']},shuffle:{description:"Shuffles all values in the `list`. This operation will mutate the `list`.",example:["myList = [42, 1, 3]","myList.shuffle",'print("New list order: " + myList.split(", "))']},sum:{description:"Returns sum of all values inside the `list`. Any non-numeric values will be considered a zero.",example:["myList = [42, 1, 3]","sum = myList.sum",'print("Sum of all items in list: " + sum)']},hasIndex:{description:"Returns `true` if the provided index is available in the `list`. Otherwise, this method will return `false`.",example:["myList = [42, 1, 3]","containsIndex = myList.hasIndex(1)","if containsIndex then",' print("List contains index of 1.")',"else",' print("List does not contain index of 1.")',"end if"]},indexOf:{description:"Returns a `number` which indicates the first matching index of the provided value inside the `list`. Optionally a start index can be provided. In case the value does not exist inside the `list` a `null` gets returned.",example:["myList = [42, 1, 3]","index = myList.indexOf(42)","if index != null then",' print("The answer for everything is at the following index: " + index)',"else",' print("No answer for everything found.")',"end if"]},sort:{description:"Sort `list` values alphanumerically. This operation will mutate the `list`. Optionally a key can be provided which which is used in case the items are maps. Additionally, this method will return the updated `list`.",example:['myList = [{ "key": 42 }, { "key": 2 }, { "key": 1 }]','myList.sort("key")',"print(myList)"]},join:{description:"Returns a concatenated `string` containing all stringified values inside the `list`. These values will be separated via the provided separator.",example:["myList = [42, 1, 3]",`print(myList.join(" .-*'*-. "))`]},indexes:{description:"Returns a `list` containing all available indexes.",example:["myList = [42, 1, 3]","for i in myList.indexes"," print(myList[i])","end for"]},len:{description:"Returns a `number` representing the count of values inside the `list`.",example:["myList = [42, 1, 3]",'print("myList contains " + myList.len + " items")']},values:{description:"Returns a `list` containing all available values.",example:["myList = [42, 1, 3]","for v in myList.values"," print(v)","end for"]},replace:{description:"Returns updated `list` where each value matching with the provided replace argument gets replaced. This operation will mutate the `list`.",example:["myList = [1, 2, 2, 7]","myList.replace(2, 3)",'print(myList.join(""))']}}});var EE=g((XU,KL)=>{KL.exports={$meta:{description:"A `map` is a set of values associated with unique keys. Create a `map` with curly braces; get or set a single value with square brackets. Keys and values may be any type.",example:['x = { "test": 123 }',"x.foo = 42 // set property foo to 42","print(x.foo) // get value of property foo",'print(x + { "bar": 2 }) // concatenate two maps']},remove:{description:"Removes an item from the `map` with the provided key. Due to the removal the `map` will get mutated.",example:['myMap = { "answer": 42, "bar": 23, "foo": "moo" }','myMap.remove("answer")',"print(myMap)"]},push:{description:"Adds the value 1 to the provided key. This operation will mutate the `map`. Additionally, this method will return the updated `map`.",example:['myMap = { "answer": 42, "bar": 23, "foo": "moo" }','myMap.push("answer")',"print(myMap.answer)"]},pull:{description:"Returns and removes the first item in the `map`. This operation will mutate the `map`.",example:['myMap = { "answer": 42, "bar": 23, "foo": "moo" }',"print(myMap.pull)"]},pop:{description:"Returns and removes the last item in the `map`. This operation will mutate the `map`.",example:['myMap = { "answer": 42, "bar": 23, "foo": "moo" }',"print(myMap.pop)"]},shuffle:{description:"Shuffles all values in the `map`. This operation will mutate the `map`.",example:['myMap = { "answer": 42, "bar": 23, "foo": "moo" }',"myMap.shuffle","print(myMap)"]},sum:{description:"Returns sum of all values inside the `map`. Any non-numeric values will be considered a zero.",example:['myMap = { "answer": 42, "bar": 23, "foo": "moo" }',"sum = myMap.sum",'print("Sum of all items in map: " + sum)']},hasIndex:{description:"Returns `true` if the provided key is available in the `map`. Otherwise, this method will return `false`.",example:['myMap = { "answer": 42, "bar": 23, "foo": "moo" }','containsIndex = myList.hasIndex("answer")',"if containsIndex then",' print("Map contains the answer.")',"else",' print("Map does not contain the answer.")',"end if"]},indexOf:{description:"Returns `string` which indicates the key of the provided value inside the `map`. In case the value does not exist inside the `map` a `null` gets returned.",example:['myMap = { "answer": 42, "bar": 23, "foo": "moo" }',"key = myList.indexOf(42)","if key != null then",' print("Map contains the answer.")',"else",' print("Map does not contain the answer.")',"end if"]},indexes:{description:"Returns a `list` containing all available keys.",example:['myMap = { "answer": 42, "bar": 23, "foo": "moo" }',"for key in myMap.indexes"," print(myMap[key])","end for"]},len:{description:"Returns a `number` representing the count of items inside the `map`.",example:['myMap = { "answer": 42, "bar": 23, "foo": "moo" }','print("myMap contains " + myMap.len + " items")']},values:{description:"Returns a `list` containing all available values.",example:['myMap = { "answer": 42, "bar": 23, "foo": "moo" }',"for value in myMap.values"," print(value)","end for"]},replace:{description:"Returns updated `map` where each value matching with the provided replace argument gets replaced. This operation will mutate the `map`.",example:['myObject = { "answer": 45 }',"myObject.replace(45, 42)","print(myObject.answer)"]}}});var AE=g((YU,VL)=>{VL.exports={$meta:{description:"All numbers are stored in full-precision format. Numbers also represent `true == 1` and `false == 0`.",example:["a = 20","b = 22","print(a + b) // addition","print(a - b) // substraction","print(a / b) // division","print(a * b) // multiply","print(a % b) // modulo","print(a - b) // substraction","print(a ^ b) // power","print(a and b) // logical and","print(a or b) // logical or","print(not a) // logical not","print(a == b) // comparison equal","print(a != b) // comparison unequal","print(a > b) // comparison greater than","print(a < b) // comparison lower than","print(a >= b) // comparison greater equal than","print(a <= b) // comparison lower equal than"]}}});var OE=g((JU,zL)=>{zL.exports={$meta:{description:"Text is stored in strings of Unicode characters. Write strings by surrounding them with quotes. If you need to include a quotation mark in the string, write it twice.",example:['a = "hello"','b = "world"',"print(a + b) // concatinate a and b","print(a * 10) // repeat hello ten times","print(a[0]) // prints h","print(a[1:3]) // prints ell"]},remove:{description:"Returns a new `string` where the provided `string` got removed.",example:['myString = "42 as an answer is wrong"','newString = myString.remove("wrong")','print(newString + "right")']},hasIndex:{description:"Returns `true` if the provided index is available in the `string`. Otherwise, this method will return `false`.",example:['myString = "42 as an answer is wrong"',"containsIndex = myString.hasIndex(1)","if containsIndex then",' print("String contains index of 1.")',"else",' print("String does not contain index of 1.")',"end if"]},insert:{description:"Returns a `string` with the newly inserted `string` at the provided index.",example:['myString = "42 as an answer is wrong"','index = myString.lastIndexOf("w") - 1','newString = myString.insert(index, "not ")',"print(newString)"]},indexOf:{description:"Returns a `number` which indicates the first matching index of the provided value inside the `list`. Optionally a start index can be provided. In case the value does not exist inside the `string` a `null` gets returned.",example:['myString = "42 as an answer is wrong"','index = myString.indexOf("wrong")',"if index != null then",' print("Invalid information spotted at: " + index)',"else",' print("Information seems valid.")',"end if"]},split:{description:"Returns a `list` where each item is a segment of the `string`. The separation depends on the provided separator `string`. Keep in mind that for some odd reason, this method is using regular expressions for matching.",example:['myString = "42 as an answer is wrong"','segments = myString.split(" ")','if segments[0] != "42" then',' print("Invalid information spotted!")',"else",' print("Information seems valid!")',"end if"]},replace:{description:"Returns a new `string` where the provided `string` got replaced by the second provided `string`.",example:['myString = "42 as an answer is wrong"','newString = myString.replace("wrong", "right")',"print(newString)"]},indexes:{description:"Returns a `list` where each item is a `number` representing all available indexes in the `string`.",example:['myString = "42"',"print(myString.indexes)"]},code:{description:"Returns a `number` representing the Unicode code of the first character of the `string`.",example:['myString = "HELLO WORLD"',"print(myString.code)"]},len:{description:"Returns a `number` representing the length of the `string`.",example:['myString = "HELLO WORLD"','print("Size of string is: " + myString.len)']},lower:{description:"Returns a new `string` in which all characters are transformed into lowercase.",example:['myString = "HELLO WORLD"',"print(myString.lower)"]},upper:{description:"Returns a new `string` in which all characters are transformed into uppercase.",example:['myString = "hello world"',"print(myString.upper)"]},val:{description:"Returns a `number` which is parsed from the `string`. In case the `string` is not numeric it will return a zero.",example:['myString = "1.25"',"print(myString.val + 40.75)"]},values:{description:"Returns a `list` where each item is a `string` representing all available characters in the `string`. Could be compared to using `split` but without any separator.",example:['myString = "hello world"',"print(myString.values)"]}}});var CE=g(Qa=>{"use strict";var mo=Qa&&Qa.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Qa,"__esModule",{value:!0});var XL=mo(kE()),YL=mo(xE()),JL=mo(wE()),QL=mo(EE()),ZL=mo(AE()),eN=mo(OE()),tN={any:XL.default,general:YL.default,list:JL.default,map:QL.default,string:eN.default,number:ZL.default};Qa.default=tN});var RE=g((ZU,nN)=>{nN.exports={type:"any",definitions:{insert:{type:"function",arguments:[{label:"index",type:"number"},{label:"value",type:"any"}],returns:["list","string"]},indexOf:{type:"function",arguments:[{label:"value",type:"any"},{label:"offset",type:"number",opt:!0}],returns:["any"]},hasIndex:{type:"function",arguments:[{label:"value",type:"any"}],returns:["number"]},remove:{type:"function",arguments:[{label:"value",type:"any"}],returns:["null"]},push:{type:"function",arguments:[{label:"value",type:"any"}],returns:["map","list","null"]},pull:{type:"function",returns:["any"]},pop:{type:"function",returns:["any"]},shuffle:{type:"function",returns:["null"]},sum:{type:"function",returns:["number"]},indexes:{type:"function",returns:["list"]},len:{type:"function",returns:["number"]},values:{type:"function",returns:["list"]}}}});var PE=g((eH,rN)=>{rN.exports={type:"general",definitions:{hasIndex:{type:"function",arguments:[{label:"self",types:["list","map","string"]},{label:"index",type:"any"}],returns:["number","null"]},print:{type:"function",arguments:[{label:"value",type:"any",default:{type:"string",value:""}},{label:"delimiter",type:"string",opt:!0}],returns:["null"]},indexes:{type:"function",arguments:[{label:"self",types:["map","list","string"]}],returns:["list","null"]},values:{type:"function",arguments:[{label:"self",types:["map","list","string"]}],returns:["list"]},indexOf:{type:"function",arguments:[{label:"self",types:["list","map","string"]},{label:"value",type:"any"},{label:"after",type:"any",opt:!0}],returns:["any","null"]},len:{type:"function",arguments:[{label:"self",types:["list","string","map"]}],returns:["number","null"]},shuffle:{type:"function",arguments:[{label:"self",types:["list","map"]}],returns:["null"]},val:{type:"function",arguments:[{label:"self",type:"any"}],returns:["number","null"]},lower:{type:"function",arguments:[{label:"self",type:"string"}],returns:["string"]},upper:{type:"function",arguments:[{label:"self",type:"string"}],returns:["string"]},sum:{type:"function",arguments:[{label:"self",types:["list","map"]}],returns:["number"]},pop:{type:"function",arguments:[{label:"self",types:["list","map"]}],returns:["any","null"]},pull:{type:"function",arguments:[{label:"self",types:["list","map"]}],returns:["any","null"]},push:{type:"function",arguments:[{label:"self",types:["list","map"]},{label:"value",type:"any"}],returns:["map","list","null"]},sort:{type:"function",arguments:[{label:"self",type:"list"},{label:"byKey",type:"any"},{label:"ascending",type:"number",default:{type:"number",value:1}}],returns:["list","null"]},remove:{type:"function",arguments:[{label:"self",types:["list","map","string"]},{label:"key",type:"any"}],returns:["list","map","string"]},wait:{type:"function",arguments:[{label:"seconds",type:"number",default:{type:"number",value:1}}],returns:["null"]},abs:{type:"function",arguments:[{label:"value",type:"number",default:{type:"number",value:0}}],returns:["number"]},acos:{type:"function",arguments:[{label:"value",type:"number",default:{type:"number",value:0}}],returns:["number"]},asin:{type:"function",arguments:[{label:"value",type:"number",default:{type:"number",value:0}}],returns:["number"]},atan:{type:"function",arguments:[{label:"y",type:"number",default:{type:"number",value:0}},{label:"x",type:"number",default:{type:"number",value:1}}],returns:["number"]},tan:{type:"function",arguments:[{label:"radians",type:"number",default:{type:"number",value:0}}],returns:["number"]},cos:{type:"function",arguments:[{label:"radians",type:"number",default:{type:"number",value:0}}],returns:["number"]},code:{type:"function",arguments:[{label:"value",type:"string"}],returns:["number"]},char:{type:"function",arguments:[{label:"codePoint",type:"number",default:{type:"number",value:65}}],returns:["string"]},sin:{type:"function",arguments:[{label:"radians",type:"number",default:{type:"number",value:0}}],returns:["number"]},floor:{type:"function",arguments:[{label:"x",type:"number",default:{type:"number",value:0}}],returns:["number"]},range:{type:"function",arguments:[{label:"start",type:"number",default:{type:"number",value:0}},{label:"end",type:"number",default:{type:"number",value:0}},{label:"inc",type:"number",opt:!0}],returns:[{type:"list",valueType:"number"}]},round:{type:"function",arguments:[{label:"x",type:"number",default:{type:"number",value:0}},{label:"decimalPlaces",type:"number",default:{type:"number",value:0}}],returns:["number"]},rnd:{type:"function",arguments:[{label:"seed",type:"number",opt:!0}],returns:["number"]},sign:{type:"function",arguments:[{label:"x",type:"number",default:{type:"number",value:0}}],returns:["number"]},sqrt:{type:"function",arguments:[{label:"x",type:"number",default:{type:"number",value:0}}],returns:["number"]},str:{type:"function",arguments:[{label:"value",type:"any"}],returns:["string"]},ceil:{type:"function",arguments:[{label:"x",type:"number",default:{type:"number",value:0}}],returns:["number"]},pi:{type:"function",returns:["number"]},slice:{type:"function",arguments:[{label:"seq",types:["list","string"]},{label:"from",type:"number",default:{type:"number",value:0}},{label:"to",type:"number",opt:!0}],returns:["list","string"]},hash:{type:"function",arguments:[{label:"value",type:"any"}],returns:["number"]},time:{type:"function",returns:["number"]},bitAnd:{type:"function",arguments:[{label:"a",type:"number",default:{type:"number",value:0}},{label:"b",type:"number",default:{type:"number",value:0}}],returns:["number"]},bitOr:{type:"function",arguments:[{label:"a",type:"number",default:{type:"number",value:0}},{label:"b",type:"number",default:{type:"number",value:0}}],returns:["number"]},bitXor:{type:"function",arguments:[{label:"a",type:"number",default:{type:"number",value:0}},{label:"b",type:"number",default:{type:"number",value:0}}],returns:["number"]},log:{type:"function",arguments:[{label:"value",type:"number",default:{type:"number",value:0}},{label:"base",type:"number",default:{type:"number",value:10}}],returns:["number"]},yield:{type:"function",returns:["null"]},insert:{type:"function",arguments:[{label:"self",types:["list","string"]},{label:"index",type:"number"},{label:"value",type:"any"}],returns:["list","string"]},join:{type:"function",arguments:[{label:"self",type:"list"},{label:"delimiter",type:"string",default:{type:"string",value:" "}}],returns:["string"]},split:{type:"function",arguments:[{label:"self",type:"string"},{label:"delimiter",type:"string",default:{type:"string",value:" "}},{label:"maxCount",type:"number",default:{type:"number",value:-1}}],returns:[{type:"list",valueType:"string"}]},replace:{type:"function",arguments:[{label:"self",types:["list","map","string"]},{label:"oldval",type:"any"},{label:"newval",type:"any"},{label:"maxCount",type:"number",opt:!0}],returns:["list","map","string"]},funcRef:{type:"function",returns:[{type:"map",keyType:"string"}]},list:{type:"function",returns:[{type:"map",keyType:"string"}]},map:{type:"function",returns:[{type:"map",keyType:"string"}]},number:{type:"function",returns:[{type:"map",keyType:"string"}]},string:{type:"function",returns:[{type:"map",keyType:"string"}]},refEquals:{type:"function",arguments:[{label:"a",type:"any"},{label:"b",type:"any"}],returns:["number"]},stackTrace:{type:"function",returns:[{type:"list",valueType:"string"}]},version:{type:"function",returns:["version"]}}}});var DE=g((tH,iN)=>{iN.exports={type:"list",definitions:{remove:{type:"function",arguments:[{label:"index",type:"number"}],returns:["null"]},insert:{type:"function",arguments:[{label:"index",type:"number"},{label:"value",type:"any"}],returns:["list"]},push:{type:"function",arguments:[{label:"value",type:"any"}],returns:["list"]},pop:{type:"function",returns:["any"]},pull:{type:"function",returns:["any"]},shuffle:{type:"function",returns:["null"]},sum:{type:"function",returns:["number"]},hasIndex:{type:"function",arguments:[{label:"index",type:"number"}],returns:["number"]},indexOf:{type:"function",arguments:[{label:"value",type:"any"},{label:"offset",type:"number",opt:!0}],returns:["number","null"]},sort:{type:"function",arguments:[{label:"byKey",type:"string"},{label:"ascending",type:"number",default:{type:"number",value:1}}],returns:["list"]},join:{type:"function",arguments:[{label:"delimiter",type:"string",default:{type:"string",value:" "}}],returns:["string"]},indexes:{type:"function",returns:[{type:"list",valueType:"number"}]},len:{type:"function",returns:["number"]},values:{type:"function",returns:["list"]},replace:{type:"function",arguments:[{label:"oldVal",type:"any"},{label:"newVal",type:"any"},{label:"maxCount",type:"number",opt:!0}],returns:["list"]}}}});var IE=g((nH,sN)=>{sN.exports={type:"map",definitions:{remove:{type:"function",arguments:[{label:"key",type:"string"}],returns:["number"]},push:{type:"function",arguments:[{label:"key",type:"string"}],returns:["map"]},pull:{type:"function",returns:["any"]},pop:{type:"function",returns:["any"]},shuffle:{type:"function",returns:["null"]},sum:{type:"function",returns:["number"]},hasIndex:{type:"function",arguments:[{label:"key",type:"string"}],returns:["number"]},indexOf:{type:"function",arguments:[{label:"value",type:"any"},{label:"offset",type:"number",opt:!0}],returns:["any","null"]},indexes:{type:"function",returns:["list"]},len:{type:"function",returns:["number"]},values:{type:"function",returns:["list"]},replace:{type:"function",arguments:[{label:"oldVal",type:"any"},{label:"newVal",type:"any"},{label:"maxCount",type:"number",opt:!0}],returns:["map"]}}}});var ME=g((rH,oN)=>{oN.exports={type:"number",definitions:{}}});var LE=g((iH,aN)=>{aN.exports={type:"string",definitions:{remove:{type:"function",arguments:[{label:"toDelete",type:"string"}],returns:["string"]},hasIndex:{type:"function",arguments:[{label:"index",type:"number"}],returns:["number"]},insert:{type:"function",arguments:[{label:"index",type:"number"},{label:"value",type:"string"}],returns:["string"]},indexOf:{type:"function",arguments:[{label:"value",type:"string"},{label:"offset",type:"number",opt:!0}],returns:["number","null"]},split:{type:"function",arguments:[{label:"delimiter",type:"string",default:{type:"string",value:" "}},{label:"maxCount",type:"number",default:{type:"number",value:-1}}],returns:[{type:"list",valueType:"string"}]},replace:{type:"function",arguments:[{label:"oldVal",type:"string"},{label:"newVal",type:"string"},{label:"maxCount",type:"number",opt:!0}],returns:["string"]},indexes:{type:"function",returns:[{type:"list",valueType:"number"}]},code:{type:"function",returns:["number"]},len:{type:"function",returns:["number"]},lower:{type:"function",returns:["string"]},upper:{type:"function",returns:["string"]},val:{type:"function",returns:["number"]},values:{type:"function",returns:[{type:"list",valueType:"string"}]}}}});var NE=g((sH,uN)=>{uN.exports={type:"version",extends:"map",definitions:{miniscript:{type:"string"},buildDate:{type:"string"},host:{type:"number"},hostName:{type:"string"},hostInfo:{type:"string"}}}});var Zy=g(mn=>{"use strict";var Ci=mn&&mn.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(mn,"__esModule",{value:!0});mn.miniscriptMeta=void 0;var cN=Wn(),lN=Ci(CE()),dN=Ci(RE()),fN=Ci(PE()),pN=Ci(DE()),hN=Ci(IE()),gN=Ci(ME()),mN=Ci(LE()),yN=Ci(NE());mn.miniscriptMeta=new cN.Container;mn.miniscriptMeta.addTypeSignatureFromPayload(dN.default);mn.miniscriptMeta.addTypeSignatureFromPayload(fN.default);mn.miniscriptMeta.addTypeSignatureFromPayload(pN.default);mn.miniscriptMeta.addTypeSignatureFromPayload(hN.default);mn.miniscriptMeta.addTypeSignatureFromPayload(gN.default);mn.miniscriptMeta.addTypeSignatureFromPayload(mN.default);mn.miniscriptMeta.addTypeSignatureFromPayload(yN.default);mn.miniscriptMeta.addMetaFromPayload("en",lN.default)});var yo=g(ur=>{"use strict";Object.defineProperty(ur,"__esModule",{value:!0});ur.lookupBase=ur.lookupIdentifier=void 0;var zr=qe(),bN=Zy(),vN=Ja(),_N=t=>{switch(t.type){case zr.ASTType.CallStatement:return(0,ur.lookupIdentifier)(t.expression);case zr.ASTType.CallExpression:return(0,ur.lookupIdentifier)(t.base);case zr.ASTType.Identifier:return t;case zr.ASTType.MemberExpression:return(0,ur.lookupIdentifier)(t.identifier);case zr.ASTType.IndexExpression:return(0,ur.lookupIdentifier)(t.index);default:return null}};ur.lookupIdentifier=_N;var TN=(t=null)=>{switch(t?.type){case zr.ASTType.MemberExpression:return t.base;case zr.ASTType.IndexExpression:return t.base;case zr.ASTType.CallExpression:return t.base;case zr.ASTType.SliceExpression:return t.base;default:return null}};ur.lookupBase=TN;ur.default=new vN.TypeManager({container:bN.miniscriptMeta})});var vo=g(Cr=>{"use strict";var SN=Cr&&Cr.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),kN=Cr&&Cr.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),xN=Cr&&Cr.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var n in t)n!=="default"&&Object.prototype.hasOwnProperty.call(t,n)&&SN(e,t,n);return kN(e,t),e};Object.defineProperty(Cr,"__esModule",{value:!0});Cr.LookupHelper=void 0;var wN=Wn(),qE=qe(),bo=Ja(),EN=xN(Qy()),AN=yo(),eb=class{constructor(e,n){this.document=e,this.context=n,this.mergedTypeMap=null}async getTypeMap(){return this.mergedTypeMap==null&&(this.mergedTypeMap=await this.context.documentMerger.build(this.document,this.context)),this.mergedTypeMap}async findAllAssignmentsOfIdentifier(e,n){let r=await this.getTypeMap();if(r==null)return[];let i=r.getScopeContext(n);return i==null?[]:i.aggregator.resolveAvailableAssignmentsWithQuery(e)}async findAllAssignmentsOfItem(e,n){let r=await this.getTypeMap();if(r==null)return[];let i=r.getScopeContext(n);return i==null?[]:i.aggregator.resolveAvailableAssignments(e)}async findAllAvailableIdentifierInRoot(){let e=await this.getTypeMap();return e==null?new Map:e.getRootScopeContext().scope.getAllIdentifier()}async findAllAvailableIdentifier(e){let n=await this.getTypeMap();if(n==null)return new Map;let r=n.getScopeContext(e);return r==null?new Map:r.scope.getAllIdentifier()}async findAllAvailableIdentifierRelatedToPosition(e){let n=await this.getTypeMap(),r=new Map;if(n==null)return r;for(let a of n.container.getAllIdentifier(wN.SignatureDefinitionBaseType.General))r.set(...a);let i=n.getScopeContext(e.scope);if(i==null)return r;i.scope.isSelfAvailable()&&r.set("self",{kind:bo.CompletionItemKind.Constant,line:-1}),i.scope.isSuperAvailable()&&r.set("super",{kind:bo.CompletionItemKind.Constant,line:-1});let s=new Map;(0,bo.injectIdentifers)(s,i.scope);let o=Array.from(s.entries()).map(([a,u])=>({identifier:a,...u})).sort((a,u)=>a.line-u.line);for(let a=0;a<o.length;a++){let u=o[a];if(u.line>=e.end.line)break;r.set(u.identifier,{kind:u.kind,line:u.line})}return i.scope.locals!==i.scope.globals&&(0,bo.injectIdentifers)(r,i.scope.globals),i.scope.outer&&(0,bo.injectIdentifers)(r,i.scope.outer),r}lookupAST(e){let n=this,i=this.context.documentManager.get(n.document).document.lines[e.line+1];if(!i)return null;for(let s=0;s<i.length;s++){let o=i[s],a=EN.findEx((c,l)=>{let d=c.start.line-1,p=c.start.character-1,b=c.end.line-1,_=c.end.character-1;return d>e.line?{exit:!0}:d<b?{valid:e.line>d&&e.line<b||e.line===d&&p<=e.character||e.line===b&&_>=e.character}:{valid:d<=e.line&&p<=e.character&&b>=e.line&&_>=e.character}},o),u=a.pop();if(u)return{closest:u,outer:a}}return null}async lookupBasePath(e){let n=await this.getTypeMap();if(n===null)return null;let r=(0,AN.lookupBase)(e);return r?n.resolveNamespace(r):null}async lookupTypeInfo({closest:e,outer:n}){let r=await this.getTypeMap();if(r===null)return null;let i=n.length>0?n[n.length-1]:void 0;return i?.type===qE.ASTType.MemberExpression&&e===i.identifier||i?.type===qE.ASTType.IndexExpression&&e===i.index&&(0,bo.isValidIdentifierLiteral)(e)?r.resolveType(i,!0):r.resolveType(e,!0)}lookupType(e){let n=this,r=n.lookupAST(e);return r?n.lookupTypeInfo(r):null}};Cr.LookupHelper=eb});var jE=g(yd=>{"use strict";Object.defineProperty(yd,"__esModule",{value:!0});yd.AVAILABLE_CONSTANTS=void 0;yd.AVAILABLE_CONSTANTS=["true","false","null","params","globals","locals","outer"].map(t=>({label:t,kind:21}))});var FE=g(bd=>{"use strict";Object.defineProperty(bd,"__esModule",{value:!0});bd.AVAILABLE_KEYWORDS=void 0;var _o=Or(),Jt=qe();bd.AVAILABLE_KEYWORDS=[Jt.Keyword.If,Jt.Keyword.In,Jt.Keyword.Or,Jt.Keyword.And,Jt.Keyword.Isa,Jt.Keyword.For,Jt.Keyword.New,Jt.Keyword.Not,Jt.Keyword.End,Jt.Keyword.Then,Jt.Keyword.Else,Jt.Keyword.Break,Jt.Keyword.While,Jt.Keyword.Return,Jt.Keyword.Function,Jt.Keyword.Continue,_o.GreybelKeyword.Envar,_o.GreybelKeyword.Import,_o.GreybelKeyword.Include,_o.GreybelKeyword.Debugger,_o.GreybelKeyword.Line,_o.GreybelKeyword.File].map(t=>({label:t,kind:14}))});var $E=g(vd=>{"use strict";Object.defineProperty(vd,"__esModule",{value:!0});vd.AVAILABLE_OPERATORS=void 0;var Za=go(),qt=qe();vd.AVAILABLE_OPERATORS=[qt.Operator.Plus,qt.Operator.Asterik,qt.Operator.Minus,qt.Operator.Slash,qt.Operator.Power,qt.Operator.Modulo,qt.Operator.LessThan,qt.Operator.GreaterThan,qt.Operator.LessThanOrEqual,qt.Operator.GreaterThanOrEqual,qt.Operator.NotEqual,qt.Operator.Equal,qt.Operator.AddShorthand,qt.Operator.SubtractShorthand,qt.Operator.MultiplyShorthand,qt.Operator.DivideShorthand,Za.Operator.BitwiseAnd,Za.Operator.BitwiseOr,Za.Operator.LeftShift,Za.Operator.RightShift,Za.Operator.UnsignedRightShift,qt.Operator.Assign,qt.Operator.Reference].map(t=>({label:t,kind:24}))});var tb=g(To=>{"use strict";Object.defineProperty(To,"__esModule",{value:!0});To.getSymbolItemKind=To.getCompletionItemKind=void 0;var Qt=Ja(),ON=t=>{switch(t){case Qt.CompletionItemKind.Constant:return 21;case Qt.CompletionItemKind.Variable:return 6;case Qt.CompletionItemKind.Expression:return 6;case Qt.CompletionItemKind.Function:return 3;case Qt.CompletionItemKind.ListConstructor:case Qt.CompletionItemKind.MapConstructor:case Qt.CompletionItemKind.Literal:case Qt.CompletionItemKind.Unknown:return 12}};To.getCompletionItemKind=ON;var CN=t=>{switch(t){case Qt.CompletionItemKind.Constant:return 14;case Qt.CompletionItemKind.Variable:return 13;case Qt.CompletionItemKind.Expression:return 13;case Qt.CompletionItemKind.Function:return 12;case Qt.CompletionItemKind.ListConstructor:return 18;case Qt.CompletionItemKind.MapConstructor:return 19;case Qt.CompletionItemKind.Literal:case Qt.CompletionItemKind.Unknown:return 13}};To.getSymbolItemKind=CN});var BE=g(_d=>{"use strict";Object.defineProperty(_d,"__esModule",{value:!0});_d.CompletionListBuilder=void 0;var RN=tb(),nb=class{constructor(){this.collection=new Map,this.default=[]}setDefault(e){this.default=e}addCollection(e){e!=null&&(this.collection=new Map([...this.collection,...e]))}build(){let e=[];for(let[n,r]of this.collection)e.push({label:n,kind:(0,RN.getCompletionItemKind)(r.kind)});return[...e,...this.default]}};_d.CompletionListBuilder=nb});var HE=g(Kn=>{"use strict";Object.defineProperty(Kn,"__esModule",{value:!0});Kn.activate=Kn.getDefaultCompletionList=Kn.getPropertyCompletionList=void 0;var UE=qe(),PN=vo(),DN=jE(),IN=FE(),MN=$E(),LN=BE(),NN=async(t,e)=>{let n=await t.lookupBasePath(e);return n===null?null:n.getAllIdentifier()};Kn.getPropertyCompletionList=NN;var qN=()=>[...IN.AVAILABLE_KEYWORDS,...MN.AVAILABLE_OPERATORS,...DN.AVAILABLE_CONSTANTS];Kn.getDefaultCompletionList=qN;function jN(t){t.connection.onCompletion(async e=>{if(!t.getConfiguration().autocomplete)return;let n=await t.fs.getTextDocument(e.textDocument.uri);if(n==null)return;let r=await t.documentManager.getLatest(n),i=new PN.LookupHelper(r.textDocument,t),s=i.lookupAST(e.position),o=new LN.CompletionListBuilder,a=!1;if(s){let{closest:u}=s;u instanceof UE.ASTMemberExpression?(o.addCollection(await(0,Kn.getPropertyCompletionList)(i,u)),a=!0):u instanceof UE.ASTIndexExpression?(o.addCollection(await(0,Kn.getPropertyCompletionList)(i,u)),a=!0):(o.setDefault((0,Kn.getDefaultCompletionList)()),o.addCollection(await i.findAllAvailableIdentifierRelatedToPosition(s.closest)))}else o.setDefault((0,Kn.getDefaultCompletionList)()),o.addCollection(await i.findAllAvailableIdentifierInRoot());return o.build()}),t.connection.onCompletionResolve(e=>e)}Kn.activate=jN});var GE=g((gH,WE)=>{"use strict";WE.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var rb=g((mH,VE)=>{var eu=GE(),KE={};for(let t of Object.keys(eu))KE[eu[t]]=t;var re={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};VE.exports=re;for(let t of Object.keys(re)){if(!("channels"in re[t]))throw new Error("missing channels property: "+t);if(!("labels"in re[t]))throw new Error("missing channel labels property: "+t);if(re[t].labels.length!==re[t].channels)throw new Error("channel and label counts mismatch: "+t);let{channels:e,labels:n}=re[t];delete re[t].channels,delete re[t].labels,Object.defineProperty(re[t],"channels",{value:e}),Object.defineProperty(re[t],"labels",{value:n})}re.rgb.hsl=function(t){let e=t[0]/255,n=t[1]/255,r=t[2]/255,i=Math.min(e,n,r),s=Math.max(e,n,r),o=s-i,a,u;s===i?a=0:e===s?a=(n-r)/o:n===s?a=2+(r-e)/o:r===s&&(a=4+(e-n)/o),a=Math.min(a*60,360),a<0&&(a+=360);let c=(i+s)/2;return s===i?u=0:c<=.5?u=o/(s+i):u=o/(2-s-i),[a,u*100,c*100]};re.rgb.hsv=function(t){let e,n,r,i,s,o=t[0]/255,a=t[1]/255,u=t[2]/255,c=Math.max(o,a,u),l=c-Math.min(o,a,u),d=function(p){return(c-p)/6/l+1/2};return l===0?(i=0,s=0):(s=l/c,e=d(o),n=d(a),r=d(u),o===c?i=r-n:a===c?i=1/3+e-r:u===c&&(i=2/3+n-e),i<0?i+=1:i>1&&(i-=1)),[i*360,s*100,c*100]};re.rgb.hwb=function(t){let e=t[0],n=t[1],r=t[2],i=re.rgb.hsl(t)[0],s=1/255*Math.min(e,Math.min(n,r));return r=1-1/255*Math.max(e,Math.max(n,r)),[i,s*100,r*100]};re.rgb.cmyk=function(t){let e=t[0]/255,n=t[1]/255,r=t[2]/255,i=Math.min(1-e,1-n,1-r),s=(1-e-i)/(1-i)||0,o=(1-n-i)/(1-i)||0,a=(1-r-i)/(1-i)||0;return[s*100,o*100,a*100,i*100]};function FN(t,e){return(t[0]-e[0])**2+(t[1]-e[1])**2+(t[2]-e[2])**2}re.rgb.keyword=function(t){let e=KE[t];if(e)return e;let n=1/0,r;for(let i of Object.keys(eu)){let s=eu[i],o=FN(t,s);o<n&&(n=o,r=i)}return r};re.keyword.rgb=function(t){return eu[t]};re.rgb.xyz=function(t){let e=t[0]/255,n=t[1]/255,r=t[2]/255;e=e>.04045?((e+.055)/1.055)**2.4:e/12.92,n=n>.04045?((n+.055)/1.055)**2.4:n/12.92,r=r>.04045?((r+.055)/1.055)**2.4:r/12.92;let i=e*.4124+n*.3576+r*.1805,s=e*.2126+n*.7152+r*.0722,o=e*.0193+n*.1192+r*.9505;return[i*100,s*100,o*100]};re.rgb.lab=function(t){let e=re.rgb.xyz(t),n=e[0],r=e[1],i=e[2];n/=95.047,r/=100,i/=108.883,n=n>.008856?n**(1/3):7.787*n+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,i=i>.008856?i**(1/3):7.787*i+16/116;let s=116*r-16,o=500*(n-r),a=200*(r-i);return[s,o,a]};re.hsl.rgb=function(t){let e=t[0]/360,n=t[1]/100,r=t[2]/100,i,s,o;if(n===0)return o=r*255,[o,o,o];r<.5?i=r*(1+n):i=r+n-r*n;let a=2*r-i,u=[0,0,0];for(let c=0;c<3;c++)s=e+1/3*-(c-1),s<0&&s++,s>1&&s--,6*s<1?o=a+(i-a)*6*s:2*s<1?o=i:3*s<2?o=a+(i-a)*(2/3-s)*6:o=a,u[c]=o*255;return u};re.hsl.hsv=function(t){let e=t[0],n=t[1]/100,r=t[2]/100,i=n,s=Math.max(r,.01);r*=2,n*=r<=1?r:2-r,i*=s<=1?s:2-s;let o=(r+n)/2,a=r===0?2*i/(s+i):2*n/(r+n);return[e,a*100,o*100]};re.hsv.rgb=function(t){let e=t[0]/60,n=t[1]/100,r=t[2]/100,i=Math.floor(e)%6,s=e-Math.floor(e),o=255*r*(1-n),a=255*r*(1-n*s),u=255*r*(1-n*(1-s));switch(r*=255,i){case 0:return[r,u,o];case 1:return[a,r,o];case 2:return[o,r,u];case 3:return[o,a,r];case 4:return[u,o,r];case 5:return[r,o,a]}};re.hsv.hsl=function(t){let e=t[0],n=t[1]/100,r=t[2]/100,i=Math.max(r,.01),s,o;o=(2-n)*r;let a=(2-n)*i;return s=n*i,s/=a<=1?a:2-a,s=s||0,o/=2,[e,s*100,o*100]};re.hwb.rgb=function(t){let e=t[0]/360,n=t[1]/100,r=t[2]/100,i=n+r,s;i>1&&(n/=i,r/=i);let o=Math.floor(6*e),a=1-r;s=6*e-o,o&1&&(s=1-s);let u=n+s*(a-n),c,l,d;switch(o){default:case 6:case 0:c=a,l=u,d=n;break;case 1:c=u,l=a,d=n;break;case 2:c=n,l=a,d=u;break;case 3:c=n,l=u,d=a;break;case 4:c=u,l=n,d=a;break;case 5:c=a,l=n,d=u;break}return[c*255,l*255,d*255]};re.cmyk.rgb=function(t){let e=t[0]/100,n=t[1]/100,r=t[2]/100,i=t[3]/100,s=1-Math.min(1,e*(1-i)+i),o=1-Math.min(1,n*(1-i)+i),a=1-Math.min(1,r*(1-i)+i);return[s*255,o*255,a*255]};re.xyz.rgb=function(t){let e=t[0]/100,n=t[1]/100,r=t[2]/100,i,s,o;return i=e*3.2406+n*-1.5372+r*-.4986,s=e*-.9689+n*1.8758+r*.0415,o=e*.0557+n*-.204+r*1.057,i=i>.0031308?1.055*i**(1/2.4)-.055:i*12.92,s=s>.0031308?1.055*s**(1/2.4)-.055:s*12.92,o=o>.0031308?1.055*o**(1/2.4)-.055:o*12.92,i=Math.min(Math.max(0,i),1),s=Math.min(Math.max(0,s),1),o=Math.min(Math.max(0,o),1),[i*255,s*255,o*255]};re.xyz.lab=function(t){let e=t[0],n=t[1],r=t[2];e/=95.047,n/=100,r/=108.883,e=e>.008856?e**(1/3):7.787*e+16/116,n=n>.008856?n**(1/3):7.787*n+16/116,r=r>.008856?r**(1/3):7.787*r+16/116;let i=116*n-16,s=500*(e-n),o=200*(n-r);return[i,s,o]};re.lab.xyz=function(t){let e=t[0],n=t[1],r=t[2],i,s,o;s=(e+16)/116,i=n/500+s,o=s-r/200;let a=s**3,u=i**3,c=o**3;return s=a>.008856?a:(s-16/116)/7.787,i=u>.008856?u:(i-16/116)/7.787,o=c>.008856?c:(o-16/116)/7.787,i*=95.047,s*=100,o*=108.883,[i,s,o]};re.lab.lch=function(t){let e=t[0],n=t[1],r=t[2],i;i=Math.atan2(r,n)*360/2/Math.PI,i<0&&(i+=360);let o=Math.sqrt(n*n+r*r);return[e,o,i]};re.lch.lab=function(t){let e=t[0],n=t[1],i=t[2]/360*2*Math.PI,s=n*Math.cos(i),o=n*Math.sin(i);return[e,s,o]};re.rgb.ansi16=function(t,e=null){let[n,r,i]=t,s=e===null?re.rgb.hsv(t)[2]:e;if(s=Math.round(s/50),s===0)return 30;let o=30+(Math.round(i/255)<<2|Math.round(r/255)<<1|Math.round(n/255));return s===2&&(o+=60),o};re.hsv.ansi16=function(t){return re.rgb.ansi16(re.hsv.rgb(t),t[2])};re.rgb.ansi256=function(t){let e=t[0],n=t[1],r=t[2];return e===n&&n===r?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(n/255*5)+Math.round(r/255*5)};re.ansi16.rgb=function(t){let e=t%10;if(e===0||e===7)return t>50&&(e+=3.5),e=e/10.5*255,[e,e,e];let n=(~~(t>50)+1)*.5,r=(e&1)*n*255,i=(e>>1&1)*n*255,s=(e>>2&1)*n*255;return[r,i,s]};re.ansi256.rgb=function(t){if(t>=232){let s=(t-232)*10+8;return[s,s,s]}t-=16;let e,n=Math.floor(t/36)/5*255,r=Math.floor((e=t%36)/6)/5*255,i=e%6/5*255;return[n,r,i]};re.rgb.hex=function(t){let n=(((Math.round(t[0])&255)<<16)+((Math.round(t[1])&255)<<8)+(Math.round(t[2])&255)).toString(16).toUpperCase();return"000000".substring(n.length)+n};re.hex.rgb=function(t){let e=t.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!e)return[0,0,0];let n=e[0];e[0].length===3&&(n=n.split("").map(a=>a+a).join(""));let r=parseInt(n,16),i=r>>16&255,s=r>>8&255,o=r&255;return[i,s,o]};re.rgb.hcg=function(t){let e=t[0]/255,n=t[1]/255,r=t[2]/255,i=Math.max(Math.max(e,n),r),s=Math.min(Math.min(e,n),r),o=i-s,a,u;return o<1?a=s/(1-o):a=0,o<=0?u=0:i===e?u=(n-r)/o%6:i===n?u=2+(r-e)/o:u=4+(e-n)/o,u/=6,u%=1,[u*360,o*100,a*100]};re.hsl.hcg=function(t){let e=t[1]/100,n=t[2]/100,r=n<.5?2*e*n:2*e*(1-n),i=0;return r<1&&(i=(n-.5*r)/(1-r)),[t[0],r*100,i*100]};re.hsv.hcg=function(t){let e=t[1]/100,n=t[2]/100,r=e*n,i=0;return r<1&&(i=(n-r)/(1-r)),[t[0],r*100,i*100]};re.hcg.rgb=function(t){let e=t[0]/360,n=t[1]/100,r=t[2]/100;if(n===0)return[r*255,r*255,r*255];let i=[0,0,0],s=e%1*6,o=s%1,a=1-o,u=0;switch(Math.floor(s)){case 0:i[0]=1,i[1]=o,i[2]=0;break;case 1:i[0]=a,i[1]=1,i[2]=0;break;case 2:i[0]=0,i[1]=1,i[2]=o;break;case 3:i[0]=0,i[1]=a,i[2]=1;break;case 4:i[0]=o,i[1]=0,i[2]=1;break;default:i[0]=1,i[1]=0,i[2]=a}return u=(1-n)*r,[(n*i[0]+u)*255,(n*i[1]+u)*255,(n*i[2]+u)*255]};re.hcg.hsv=function(t){let e=t[1]/100,n=t[2]/100,r=e+n*(1-e),i=0;return r>0&&(i=e/r),[t[0],i*100,r*100]};re.hcg.hsl=function(t){let e=t[1]/100,r=t[2]/100*(1-e)+.5*e,i=0;return r>0&&r<.5?i=e/(2*r):r>=.5&&r<1&&(i=e/(2*(1-r))),[t[0],i*100,r*100]};re.hcg.hwb=function(t){let e=t[1]/100,n=t[2]/100,r=e+n*(1-e);return[t[0],(r-e)*100,(1-r)*100]};re.hwb.hcg=function(t){let e=t[1]/100,r=1-t[2]/100,i=r-e,s=0;return i<1&&(s=(r-i)/(1-i)),[t[0],i*100,s*100]};re.apple.rgb=function(t){return[t[0]/65535*255,t[1]/65535*255,t[2]/65535*255]};re.rgb.apple=function(t){return[t[0]/255*65535,t[1]/255*65535,t[2]/255*65535]};re.gray.rgb=function(t){return[t[0]/100*255,t[0]/100*255,t[0]/100*255]};re.gray.hsl=function(t){return[0,0,t[0]]};re.gray.hsv=re.gray.hsl;re.gray.hwb=function(t){return[0,100,t[0]]};re.gray.cmyk=function(t){return[0,0,0,t[0]]};re.gray.lab=function(t){return[t[0],0,0]};re.gray.hex=function(t){let e=Math.round(t[0]/100*255)&255,r=((e<<16)+(e<<8)+e).toString(16).toUpperCase();return"000000".substring(r.length)+r};re.rgb.gray=function(t){return[(t[0]+t[1]+t[2])/3/255*100]}});var XE=g((yH,zE)=>{var Td=rb();function $N(){let t={},e=Object.keys(Td);for(let n=e.length,r=0;r<n;r++)t[e[r]]={distance:-1,parent:null};return t}function BN(t){let e=$N(),n=[t];for(e[t].distance=0;n.length;){let r=n.pop(),i=Object.keys(Td[r]);for(let s=i.length,o=0;o<s;o++){let a=i[o],u=e[a];u.distance===-1&&(u.distance=e[r].distance+1,u.parent=r,n.unshift(a))}}return e}function UN(t,e){return function(n){return e(t(n))}}function HN(t,e){let n=[e[t].parent,t],r=Td[e[t].parent][t],i=e[t].parent;for(;e[i].parent;)n.unshift(e[i].parent),r=UN(Td[e[i].parent][i],r),i=e[i].parent;return r.conversion=n,r}zE.exports=function(t){let e=BN(t),n={},r=Object.keys(e);for(let i=r.length,s=0;s<i;s++){let o=r[s];e[o].parent!==null&&(n[o]=HN(o,e))}return n}});var JE=g((bH,YE)=>{var ib=rb(),WN=XE(),So={},GN=Object.keys(ib);function KN(t){let e=function(...n){let r=n[0];return r==null?r:(r.length>1&&(n=r),t(n))};return"conversion"in t&&(e.conversion=t.conversion),e}function VN(t){let e=function(...n){let r=n[0];if(r==null)return r;r.length>1&&(n=r);let i=t(n);if(typeof i=="object")for(let s=i.length,o=0;o<s;o++)i[o]=Math.round(i[o]);return i};return"conversion"in t&&(e.conversion=t.conversion),e}GN.forEach(t=>{So[t]={},Object.defineProperty(So[t],"channels",{value:ib[t].channels}),Object.defineProperty(So[t],"labels",{value:ib[t].labels});let e=WN(t);Object.keys(e).forEach(r=>{let i=e[r];So[t][r]=VN(i),So[t][r].raw=KN(i)})});YE.exports=So});var ZE=g(ko=>{"use strict";var zN=ko&&ko.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ko,"__esModule",{value:!0});ko.activate=void 0;var sb=zN(JE()),XN=qe(),QE;(function(t){t.Black="black",t.Blue="blue",t.Green="green",t.Orange="orange",t.Purple="purple",t.Red="red",t.White="white",t.Yellow="yellow"})(QE||(QE={}));var ob={black:"#000000",blue:"#0000FF",green:"#00FF00",orange:"#FF8800",purple:"#CC8899",red:"#FF0000",white:"#FFFFFF",yellow:"#FFFF00"},YN=()=>new RegExp(`(?:mark|color)=(${Object.keys(ob).join("|")}|(?:#[0-9a-f]{6}|#[0-9a-f]{3}))`,"ig"),JN=Object.prototype.hasOwnProperty;function QN(t){t.connection.onColorPresentation(e=>[{label:`#${sb.default.rgb.hex(e.color.red*255,e.color.green*255,e.color.blue*255)}`}]),t.connection.onDocumentColor(async e=>{let n=await t.fs.getTextDocument(e.textDocument.uri);if(n==null)return;let s=(await t.documentManager.getLatest(n)).document.literals.filter(u=>u.type===XN.ASTType.StringLiteral),o=[],a=({match:u,markup:c,value:l,astPosition:d,lineIndex:p})=>{let b=u.index+c.indexOf("=")+1,_=b+l.length,E=d.line-1+p,L=b,M=_;return p===0&&(L+=d.character,M+=d.character),{start:{line:E,character:L},end:{line:E,character:M}}};for(let u=0;u<s.length;u++){let c=s[u];if(!c.start)continue;let l=c.start,d=c.value.toString().split(`
119
- `);for(let p=0;p<d.length;p++){let b=d[p],_=YN(),E;for(;E=_.exec(b);){let[L,M]=E,x=a({match:E,markup:L,value:M,astPosition:l,lineIndex:p});if(M.startsWith("#")){let[k,v,F]=sb.default.hex.rgb(M.slice(1));o.push({range:x,color:{red:k/255,green:v/255,blue:F/255,alpha:1}})}else if(JN.call(ob,M)){let[k,v,F]=sb.default.hex.rgb(ob[M].slice(1));o.push({range:x,color:{red:k/255,green:v/255,blue:F/255,alpha:1}})}else o.push({range:x,color:{red:0,green:0,blue:0,alpha:1}})}}}return o})}ko.activate=QN});var eA=g(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});Sd.activate=void 0;var ZN=qe(),eq=vo(),tq=t=>`${t.targetUri}:${t.targetRange.start.line}:${t.targetRange.start.character}-${t.targetRange.end.line}:${t.targetRange.end.character}`,nq=async(t,e,n)=>{let r=await t.findAllAssignmentsOfItem(e,n),i=[],s=new Set;for(let o of r){let a=o.node;if(!a.start||!a.end)continue;let u={line:a.start.line-1,character:a.start.character-1},c={line:a.end.line-1,character:a.end.character-1},l={targetUri:o.source,targetRange:{start:u,end:c},targetSelectionRange:{start:u,end:c}},d=tq(l);s.has(d)||(s.add(d),i.push(l))}return i};function rq(t){t.connection.onDefinition(async e=>{let n=await t.fs.getTextDocument(e.textDocument.uri);if(n==null)return;let r=new eq.LookupHelper(n,t),i=r.lookupAST(e.position);if(!i)return;let{outer:s,closest:o}=i,a=s.length>0?s[s.length-1]:void 0,u=o;return a&&a instanceof ZN.ASTMemberExpression&&a.identifier===o&&(u=a),await nq(r,u,u.scope)})}Sd.activate=rq});var tA=g(kd=>{"use strict";Object.defineProperty(kd,"__esModule",{value:!0});kd.activate=void 0;async function iq(t,e){let n=await e.documentManager.getLatest(t);return n.errors.map(r=>{if(r?.range){let i=r.range;return{range:{start:{line:i.start.line-1,character:i.start.character-1},end:{line:i.end.line-1,character:i.end.character-1}},message:r.message,severity:1}}return{range:{start:n.document.start,end:n.document.end},message:r.message,severity:1}})}function sq(t){t.connection.languages.diagnostics.on(async e=>{if(!t.getConfiguration().diagnostic)return;let n=await t.fs.getTextDocument(e.textDocument.uri);if(n==null)return;let r=await iq(n,t);return r.length===0?{kind:"full",items:[]}:{kind:"full",items:r}})}kd.activate=sq});var nA=g(xd=>{"use strict";Object.defineProperty(xd,"__esModule",{value:!0});xd.getStringHashCode=void 0;xd.getStringHashCode=function(){let t=new Map,e=n=>{let r,i;for(r=0,i=0;r<n.length;r++)i=Math.imul(31,i)+n.charCodeAt(r)|0;return i};return n=>{if(n.length===0)return 0;let r=t.get(n);if(r!==void 0)return r;let i=e(n);return t.set(n,i),i}}()});var ab=g(Ad=>{"use strict";Object.defineProperty(Ad,"__esModule",{value:!0});Ad.createExpressionHash=void 0;var wd=qe(),rA=nA(),Ed=(t,e)=>t.$$hash=e,oq=t=>{var e;return(e=t.$$hash)!==null&&e!==void 0?e:null};function xo(t){let e=oq(t);if(e!==null)return e;let n=(0,rA.getStringHashCode)(t.type);switch(t.type){case wd.ASTType.ParenthesisExpression:return xo(t.expression);case wd.ASTType.MemberExpression:{let r=t;return n^=xo(r.base),n^=xo(r.identifier),Ed(t,n)}case wd.ASTType.IndexExpression:{let r=t;return n^=xo(r.base),n^=xo(r.index),Ed(t,n)}case wd.ASTType.Identifier:{let r=t;return n^=(0,rA.getStringHashCode)(r.name),Ed(t,n)}}return Ed(t,n)}function aq(t){return xo(t)}Ad.createExpressionHash=aq});var cb=g(Od=>{"use strict";Object.defineProperty(Od,"__esModule",{value:!0});Od.Stack=void 0;var ub=class{constructor(){let e=this;e.currentStack=[]}get(e){let r=this.currentStack;e==null&&(e=0);let i=r.length-e-1;return i<0?null:r[i]}depth(){return this.currentStack.filter(function(e){return Object.prototype.hasOwnProperty.call(e,"body")}).length}lookup(e){let n=this;for(let r=n.currentStack.length-2;r>=0;r--)if(e(n.currentStack[r]))return!0;return!1}push(e){let n=this;return n.currentStack.push(e),n}pop(){let e=this;return e.currentStack.pop(),e}};Od.Stack=ub});var wo=g(fs=>{"use strict";Object.defineProperty(fs,"__esModule",{value:!0});fs.Factory=fs.TokenType=void 0;var uq=cb(),cq;(function(t){t[t.Text=0]="Text",t[t.EndOfLine=1]="EndOfLine",t[t.Comment=2]="Comment"})(cq=fs.TokenType||(fs.TokenType={}));var lb=class{get tokens(){return this._tokens}get currentStack(){return this._currentStack}get currentDependency(){return this._currentDependency}constructor(e){this.transformer=e,this._tokens=[],this._currentDependency=null,this._currentStack=new uq.Stack}process(e,n={}){let r=this,i=r._currentStack;if(e==null)return;if(e.type==null)throw console.error("Error AST type:",e),new Error("Unexpected AST type");let s=r.handlers[e.type];if(s==null)throw console.error("Error AST:",e),new Error("Type does not exist "+e.type);i.push(e),s.call(this,e,n),i.pop()}};fs.Factory=lb});var fb=g(ps=>{"use strict";Object.defineProperty(ps,"__esModule",{value:!0});ps.BeautifyContext=ps.IndentationType=void 0;var tu=qe(),Cd=wo(),iA;(function(t){t[t.Tab=0]="Tab",t[t.Whitespace=1]="Whitespace"})(iA=ps.IndentationType||(ps.IndentationType={}));var db=class{get indent(){return this._indent}get isMultilineAllowed(){return this._isMultilineAllowed}get usedComments(){return this._usedComments}constructor(e,n){this.factory=e,this.options=n,this._indent=0,this._isMultilineAllowed=!0,this._usedComments=new Set,this.getIndent=n.indentation===iA.Tab?(r=0)=>" ".repeat(this._indent+r):(r=0)=>" ".repeat(n.indentationSpaces).repeat(this._indent+r)}disableMultiline(){this._isMultilineAllowed=!1}enableMultiline(){this._isMultilineAllowed=!0}incIndent(){this._indent++}decIndent(){this._indent--}getBlockOpenerEndLine(e){return e instanceof tu.ASTIfClause||e instanceof tu.ASTWhileStatement?e.condition.end.line:e instanceof tu.ASTForGenericStatement?e.iterator.end.line:e instanceof tu.ASTChunk?e.start.line-1:e.start.line}getPreviousEndLine(e){if(e==null)return 0;if(e.type===tu.ASTType.IfShortcutStatement){let n=e;return n.clauses[n.clauses.length-1].body[0].end.line}return e.end.line}containsNewLineInRange(e,n=this.factory.tokens.length){let r=Math.min(n,this.factory.tokens.length);for(let i=e;i<r;i++)if(this.factory.tokens[i].type===Cd.TokenType.EndOfLine)return!0;return!1}buildBlock(e){if(e.body.length===0)return;e.body.sort((s,o)=>s.range[0]-o.range[0]);let n=null;for(let s=0;s<e.body.length;s++){let o=e.body[s],a=n?this.getPreviousEndLine(n):this.getBlockOpenerEndLine(e),u=Math.max(o.start.line-a-1,0);if(u>0)for(let l=0;l<u;l++){let d={line:a+l+1,character:0};this.factory.tokens.push({type:Cd.TokenType.EndOfLine,value:`
118
+ hostInfo: URL or other short info about the host app`},stackTrace:{description:"Get a list describing the call stack."}}});var wE=g((XU,KL)=>{KL.exports={$meta:{description:"Create a `list` with square brackets. Then iterate over the `list` with for, or pull out individual items with a 0-based index in square brackets. A negative index counts from the end. Get a slice (subset) of a `list` with two indices, separated by a colon.",example:["x = [2, 4, 6, 8]","print(x[0]) // get first item from list","print(x[-1]) // get last item from list","print(x[1:3]) // slice items from index 1 to 3","x[2] = 5 // set item at index 2 to 5","print(x)","print(x + [42]) // concatenate two lists"]},remove:{description:"Removes an item from the `list` with the provided index. Due to the removal the `list` will get mutated.",example:["myList = [1, 42, 3]","myList.remove(1)",'print("This list does not contain the answer to everything: " + myList.split(", "))']},insert:{description:"Inserts a value into the `list` at the index provided. Due to the insertion the `list` will get mutated. Returns the mutated `list`.",example:["myList = [1, 3]","myList.insert(1, 42)",'print("This list does contain the answer to everything: " + myList.split(", "))']},push:{description:"Appends a value to the end of the `list`. This operation will mutate the `list`. Additionally, this method will return the updated `list`.",example:["myList = [1, 3]","myList.push(42)",'print("This list does contain the answer to everything: " + myList.split(", "))']},pop:{description:"Returns and removes the last item in the `list`. This operation will mutate the `list`.",example:["myList = [1, 3, 42]","answer = myList.pop",'print("Answer to everything: " + answer)']},pull:{description:"Returns and removes the first item in the `list`. This operation will mutate the `list`.",example:["myList = [42, 1, 3]","answer = myList.pull",'print("Answer to everything: " + answer)']},shuffle:{description:"Shuffles all values in the `list`. This operation will mutate the `list`.",example:["myList = [42, 1, 3]","myList.shuffle",'print("New list order: " + myList.split(", "))']},sum:{description:"Returns sum of all values inside the `list`. Any non-numeric values will be considered a zero.",example:["myList = [42, 1, 3]","sum = myList.sum",'print("Sum of all items in list: " + sum)']},hasIndex:{description:"Returns `true` if the provided index is available in the `list`. Otherwise, this method will return `false`.",example:["myList = [42, 1, 3]","containsIndex = myList.hasIndex(1)","if containsIndex then",' print("List contains index of 1.")',"else",' print("List does not contain index of 1.")',"end if"]},indexOf:{description:"Returns a `number` which indicates the first matching index of the provided value inside the `list`. Optionally a start index can be provided. In case the value does not exist inside the `list` a `null` gets returned.",example:["myList = [42, 1, 3]","index = myList.indexOf(42)","if index != null then",' print("The answer for everything is at the following index: " + index)',"else",' print("No answer for everything found.")',"end if"]},sort:{description:"Sort `list` values alphanumerically. This operation will mutate the `list`. Optionally a key can be provided which which is used in case the items are maps. Additionally, this method will return the updated `list`.",example:['myList = [{ "key": 42 }, { "key": 2 }, { "key": 1 }]','myList.sort("key")',"print(myList)"]},join:{description:"Returns a concatenated `string` containing all stringified values inside the `list`. These values will be separated via the provided separator.",example:["myList = [42, 1, 3]",`print(myList.join(" .-*'*-. "))`]},indexes:{description:"Returns a `list` containing all available indexes.",example:["myList = [42, 1, 3]","for i in myList.indexes"," print(myList[i])","end for"]},len:{description:"Returns a `number` representing the count of values inside the `list`.",example:["myList = [42, 1, 3]",'print("myList contains " + myList.len + " items")']},values:{description:"Returns a `list` containing all available values.",example:["myList = [42, 1, 3]","for v in myList.values"," print(v)","end for"]},replace:{description:"Returns updated `list` where each value matching with the provided replace argument gets replaced. This operation will mutate the `list`.",example:["myList = [1, 2, 2, 7]","myList.replace(2, 3)",'print(myList.join(""))']}}});var EE=g((YU,VL)=>{VL.exports={$meta:{description:"A `map` is a set of values associated with unique keys. Create a `map` with curly braces; get or set a single value with square brackets. Keys and values may be any type.",example:['x = { "test": 123 }',"x.foo = 42 // set property foo to 42","print(x.foo) // get value of property foo",'print(x + { "bar": 2 }) // concatenate two maps']},remove:{description:"Removes an item from the `map` with the provided key. Due to the removal the `map` will get mutated.",example:['myMap = { "answer": 42, "bar": 23, "foo": "moo" }','myMap.remove("answer")',"print(myMap)"]},push:{description:"Adds the value 1 to the provided key. This operation will mutate the `map`. Additionally, this method will return the updated `map`.",example:['myMap = { "answer": 42, "bar": 23, "foo": "moo" }','myMap.push("answer")',"print(myMap.answer)"]},pull:{description:"Returns and removes the first item in the `map`. This operation will mutate the `map`.",example:['myMap = { "answer": 42, "bar": 23, "foo": "moo" }',"print(myMap.pull)"]},pop:{description:"Returns and removes the last item in the `map`. This operation will mutate the `map`.",example:['myMap = { "answer": 42, "bar": 23, "foo": "moo" }',"print(myMap.pop)"]},shuffle:{description:"Shuffles all values in the `map`. This operation will mutate the `map`.",example:['myMap = { "answer": 42, "bar": 23, "foo": "moo" }',"myMap.shuffle","print(myMap)"]},sum:{description:"Returns sum of all values inside the `map`. Any non-numeric values will be considered a zero.",example:['myMap = { "answer": 42, "bar": 23, "foo": "moo" }',"sum = myMap.sum",'print("Sum of all items in map: " + sum)']},hasIndex:{description:"Returns `true` if the provided key is available in the `map`. Otherwise, this method will return `false`.",example:['myMap = { "answer": 42, "bar": 23, "foo": "moo" }','containsIndex = myList.hasIndex("answer")',"if containsIndex then",' print("Map contains the answer.")',"else",' print("Map does not contain the answer.")',"end if"]},indexOf:{description:"Returns `string` which indicates the key of the provided value inside the `map`. In case the value does not exist inside the `map` a `null` gets returned.",example:['myMap = { "answer": 42, "bar": 23, "foo": "moo" }',"key = myList.indexOf(42)","if key != null then",' print("Map contains the answer.")',"else",' print("Map does not contain the answer.")',"end if"]},indexes:{description:"Returns a `list` containing all available keys.",example:['myMap = { "answer": 42, "bar": 23, "foo": "moo" }',"for key in myMap.indexes"," print(myMap[key])","end for"]},len:{description:"Returns a `number` representing the count of items inside the `map`.",example:['myMap = { "answer": 42, "bar": 23, "foo": "moo" }','print("myMap contains " + myMap.len + " items")']},values:{description:"Returns a `list` containing all available values.",example:['myMap = { "answer": 42, "bar": 23, "foo": "moo" }',"for value in myMap.values"," print(value)","end for"]},replace:{description:"Returns updated `map` where each value matching with the provided replace argument gets replaced. This operation will mutate the `map`.",example:['myObject = { "answer": 45 }',"myObject.replace(45, 42)","print(myObject.answer)"]}}});var AE=g((JU,zL)=>{zL.exports={$meta:{description:"All numbers are stored in full-precision format. Numbers also represent `true == 1` and `false == 0`.",example:["a = 20","b = 22","print(a + b) // addition","print(a - b) // substraction","print(a / b) // division","print(a * b) // multiply","print(a % b) // modulo","print(a - b) // substraction","print(a ^ b) // power","print(a and b) // logical and","print(a or b) // logical or","print(not a) // logical not","print(a == b) // comparison equal","print(a != b) // comparison unequal","print(a > b) // comparison greater than","print(a < b) // comparison lower than","print(a >= b) // comparison greater equal than","print(a <= b) // comparison lower equal than"]}}});var OE=g((QU,XL)=>{XL.exports={$meta:{description:"Text is stored in strings of Unicode characters. Write strings by surrounding them with quotes. If you need to include a quotation mark in the string, write it twice.",example:['a = "hello"','b = "world"',"print(a + b) // concatinate a and b","print(a * 10) // repeat hello ten times","print(a[0]) // prints h","print(a[1:3]) // prints ell"]},remove:{description:"Returns a new `string` where the provided `string` got removed.",example:['myString = "42 as an answer is wrong"','newString = myString.remove("wrong")','print(newString + "right")']},hasIndex:{description:"Returns `true` if the provided index is available in the `string`. Otherwise, this method will return `false`.",example:['myString = "42 as an answer is wrong"',"containsIndex = myString.hasIndex(1)","if containsIndex then",' print("String contains index of 1.")',"else",' print("String does not contain index of 1.")',"end if"]},insert:{description:"Returns a `string` with the newly inserted `string` at the provided index.",example:['myString = "42 as an answer is wrong"','index = myString.lastIndexOf("w") - 1','newString = myString.insert(index, "not ")',"print(newString)"]},indexOf:{description:"Returns a `number` which indicates the first matching index of the provided value inside the `list`. Optionally a start index can be provided. In case the value does not exist inside the `string` a `null` gets returned.",example:['myString = "42 as an answer is wrong"','index = myString.indexOf("wrong")',"if index != null then",' print("Invalid information spotted at: " + index)',"else",' print("Information seems valid.")',"end if"]},split:{description:"Returns a `list` where each item is a segment of the `string`. The separation depends on the provided separator `string`. Keep in mind that for some odd reason, this method is using regular expressions for matching.",example:['myString = "42 as an answer is wrong"','segments = myString.split(" ")','if segments[0] != "42" then',' print("Invalid information spotted!")',"else",' print("Information seems valid!")',"end if"]},replace:{description:"Returns a new `string` where the provided `string` got replaced by the second provided `string`.",example:['myString = "42 as an answer is wrong"','newString = myString.replace("wrong", "right")',"print(newString)"]},indexes:{description:"Returns a `list` where each item is a `number` representing all available indexes in the `string`.",example:['myString = "42"',"print(myString.indexes)"]},code:{description:"Returns a `number` representing the Unicode code of the first character of the `string`.",example:['myString = "HELLO WORLD"',"print(myString.code)"]},len:{description:"Returns a `number` representing the length of the `string`.",example:['myString = "HELLO WORLD"','print("Size of string is: " + myString.len)']},lower:{description:"Returns a new `string` in which all characters are transformed into lowercase.",example:['myString = "HELLO WORLD"',"print(myString.lower)"]},upper:{description:"Returns a new `string` in which all characters are transformed into uppercase.",example:['myString = "hello world"',"print(myString.upper)"]},val:{description:"Returns a `number` which is parsed from the `string`. In case the `string` is not numeric it will return a zero.",example:['myString = "1.25"',"print(myString.val + 40.75)"]},values:{description:"Returns a `list` where each item is a `string` representing all available characters in the `string`. Could be compared to using `split` but without any separator.",example:['myString = "hello world"',"print(myString.values)"]}}});var CE=g(Qa=>{"use strict";var mo=Qa&&Qa.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Qa,"__esModule",{value:!0});var YL=mo(kE()),JL=mo(xE()),QL=mo(wE()),ZL=mo(EE()),eN=mo(AE()),tN=mo(OE()),nN={any:YL.default,general:JL.default,list:QL.default,map:ZL.default,string:tN.default,number:eN.default};Qa.default=nN});var RE=g((eH,rN)=>{rN.exports={type:"any",definitions:{insert:{type:"function",arguments:[{label:"index",type:"number"},{label:"value",type:"any"}],returns:["list","string"]},indexOf:{type:"function",arguments:[{label:"value",type:"any"},{label:"offset",type:"number",opt:!0}],returns:["any"]},hasIndex:{type:"function",arguments:[{label:"value",type:"any"}],returns:["number"]},remove:{type:"function",arguments:[{label:"value",type:"any"}],returns:["null"]},push:{type:"function",arguments:[{label:"value",type:"any"}],returns:["map","list","null"]},pull:{type:"function",returns:["any"]},pop:{type:"function",returns:["any"]},shuffle:{type:"function",returns:["null"]},sum:{type:"function",returns:["number"]},indexes:{type:"function",returns:["list"]},len:{type:"function",returns:["number"]},values:{type:"function",returns:["list"]}}}});var PE=g((tH,iN)=>{iN.exports={type:"general",definitions:{hasIndex:{type:"function",arguments:[{label:"self",types:["list","map","string"]},{label:"index",type:"any"}],returns:["number","null"]},print:{type:"function",arguments:[{label:"value",type:"any",default:{type:"string",value:""}},{label:"delimiter",type:"string",opt:!0}],returns:["null"]},indexes:{type:"function",arguments:[{label:"self",types:["map","list","string"]}],returns:["list","null"]},values:{type:"function",arguments:[{label:"self",types:["map","list","string"]}],returns:["list"]},indexOf:{type:"function",arguments:[{label:"self",types:["list","map","string"]},{label:"value",type:"any"},{label:"after",type:"any",opt:!0}],returns:["any","null"]},len:{type:"function",arguments:[{label:"self",types:["list","string","map"]}],returns:["number","null"]},shuffle:{type:"function",arguments:[{label:"self",types:["list","map"]}],returns:["null"]},val:{type:"function",arguments:[{label:"self",type:"any"}],returns:["number","null"]},lower:{type:"function",arguments:[{label:"self",type:"string"}],returns:["string"]},upper:{type:"function",arguments:[{label:"self",type:"string"}],returns:["string"]},sum:{type:"function",arguments:[{label:"self",types:["list","map"]}],returns:["number"]},pop:{type:"function",arguments:[{label:"self",types:["list","map"]}],returns:["any","null"]},pull:{type:"function",arguments:[{label:"self",types:["list","map"]}],returns:["any","null"]},push:{type:"function",arguments:[{label:"self",types:["list","map"]},{label:"value",type:"any"}],returns:["map","list","null"]},sort:{type:"function",arguments:[{label:"self",type:"list"},{label:"byKey",type:"any"},{label:"ascending",type:"number",default:{type:"number",value:1}}],returns:["list","null"]},remove:{type:"function",arguments:[{label:"self",types:["list","map","string"]},{label:"key",type:"any"}],returns:["list","map","string"]},wait:{type:"function",arguments:[{label:"seconds",type:"number",default:{type:"number",value:1}}],returns:["null"]},abs:{type:"function",arguments:[{label:"value",type:"number",default:{type:"number",value:0}}],returns:["number"]},acos:{type:"function",arguments:[{label:"value",type:"number",default:{type:"number",value:0}}],returns:["number"]},asin:{type:"function",arguments:[{label:"value",type:"number",default:{type:"number",value:0}}],returns:["number"]},atan:{type:"function",arguments:[{label:"y",type:"number",default:{type:"number",value:0}},{label:"x",type:"number",default:{type:"number",value:1}}],returns:["number"]},tan:{type:"function",arguments:[{label:"radians",type:"number",default:{type:"number",value:0}}],returns:["number"]},cos:{type:"function",arguments:[{label:"radians",type:"number",default:{type:"number",value:0}}],returns:["number"]},code:{type:"function",arguments:[{label:"value",type:"string"}],returns:["number"]},char:{type:"function",arguments:[{label:"codePoint",type:"number",default:{type:"number",value:65}}],returns:["string"]},sin:{type:"function",arguments:[{label:"radians",type:"number",default:{type:"number",value:0}}],returns:["number"]},floor:{type:"function",arguments:[{label:"x",type:"number",default:{type:"number",value:0}}],returns:["number"]},range:{type:"function",arguments:[{label:"start",type:"number",default:{type:"number",value:0}},{label:"end",type:"number",default:{type:"number",value:0}},{label:"inc",type:"number",opt:!0}],returns:[{type:"list",valueType:"number"}]},round:{type:"function",arguments:[{label:"x",type:"number",default:{type:"number",value:0}},{label:"decimalPlaces",type:"number",default:{type:"number",value:0}}],returns:["number"]},rnd:{type:"function",arguments:[{label:"seed",type:"number",opt:!0}],returns:["number"]},sign:{type:"function",arguments:[{label:"x",type:"number",default:{type:"number",value:0}}],returns:["number"]},sqrt:{type:"function",arguments:[{label:"x",type:"number",default:{type:"number",value:0}}],returns:["number"]},str:{type:"function",arguments:[{label:"value",type:"any"}],returns:["string"]},ceil:{type:"function",arguments:[{label:"x",type:"number",default:{type:"number",value:0}}],returns:["number"]},pi:{type:"function",returns:["number"]},slice:{type:"function",arguments:[{label:"seq",types:["list","string"]},{label:"from",type:"number",default:{type:"number",value:0}},{label:"to",type:"number",opt:!0}],returns:["list","string"]},hash:{type:"function",arguments:[{label:"value",type:"any"}],returns:["number"]},time:{type:"function",returns:["number"]},bitAnd:{type:"function",arguments:[{label:"a",type:"number",default:{type:"number",value:0}},{label:"b",type:"number",default:{type:"number",value:0}}],returns:["number"]},bitOr:{type:"function",arguments:[{label:"a",type:"number",default:{type:"number",value:0}},{label:"b",type:"number",default:{type:"number",value:0}}],returns:["number"]},bitXor:{type:"function",arguments:[{label:"a",type:"number",default:{type:"number",value:0}},{label:"b",type:"number",default:{type:"number",value:0}}],returns:["number"]},log:{type:"function",arguments:[{label:"value",type:"number",default:{type:"number",value:0}},{label:"base",type:"number",default:{type:"number",value:10}}],returns:["number"]},yield:{type:"function",returns:["null"]},insert:{type:"function",arguments:[{label:"self",types:["list","string"]},{label:"index",type:"number"},{label:"value",type:"any"}],returns:["list","string"]},join:{type:"function",arguments:[{label:"self",type:"list"},{label:"delimiter",type:"string",default:{type:"string",value:" "}}],returns:["string"]},split:{type:"function",arguments:[{label:"self",type:"string"},{label:"delimiter",type:"string",default:{type:"string",value:" "}},{label:"maxCount",type:"number",default:{type:"number",value:-1}}],returns:[{type:"list",valueType:"string"}]},replace:{type:"function",arguments:[{label:"self",types:["list","map","string"]},{label:"oldval",type:"any"},{label:"newval",type:"any"},{label:"maxCount",type:"number",opt:!0}],returns:["list","map","string"]},funcRef:{type:"function",returns:[{type:"map",keyType:"string"}]},list:{type:"function",returns:[{type:"map",keyType:"string"}]},map:{type:"function",returns:[{type:"map",keyType:"string"}]},number:{type:"function",returns:[{type:"map",keyType:"string"}]},string:{type:"function",returns:[{type:"map",keyType:"string"}]},refEquals:{type:"function",arguments:[{label:"a",type:"any"},{label:"b",type:"any"}],returns:["number"]},stackTrace:{type:"function",returns:[{type:"list",valueType:"string"}]},version:{type:"function",returns:["version"]}}}});var DE=g((nH,sN)=>{sN.exports={type:"list",definitions:{remove:{type:"function",arguments:[{label:"index",type:"number"}],returns:["null"]},insert:{type:"function",arguments:[{label:"index",type:"number"},{label:"value",type:"any"}],returns:["list"]},push:{type:"function",arguments:[{label:"value",type:"any"}],returns:["list"]},pop:{type:"function",returns:["any"]},pull:{type:"function",returns:["any"]},shuffle:{type:"function",returns:["null"]},sum:{type:"function",returns:["number"]},hasIndex:{type:"function",arguments:[{label:"index",type:"number"}],returns:["number"]},indexOf:{type:"function",arguments:[{label:"value",type:"any"},{label:"offset",type:"number",opt:!0}],returns:["number","null"]},sort:{type:"function",arguments:[{label:"byKey",type:"string"},{label:"ascending",type:"number",default:{type:"number",value:1}}],returns:["list"]},join:{type:"function",arguments:[{label:"delimiter",type:"string",default:{type:"string",value:" "}}],returns:["string"]},indexes:{type:"function",returns:[{type:"list",valueType:"number"}]},len:{type:"function",returns:["number"]},values:{type:"function",returns:["list"]},replace:{type:"function",arguments:[{label:"oldVal",type:"any"},{label:"newVal",type:"any"},{label:"maxCount",type:"number",opt:!0}],returns:["list"]}}}});var IE=g((rH,oN)=>{oN.exports={type:"map",definitions:{remove:{type:"function",arguments:[{label:"key",type:"string"}],returns:["number"]},push:{type:"function",arguments:[{label:"key",type:"string"}],returns:["map"]},pull:{type:"function",returns:["any"]},pop:{type:"function",returns:["any"]},shuffle:{type:"function",returns:["null"]},sum:{type:"function",returns:["number"]},hasIndex:{type:"function",arguments:[{label:"key",type:"string"}],returns:["number"]},indexOf:{type:"function",arguments:[{label:"value",type:"any"},{label:"offset",type:"number",opt:!0}],returns:["any","null"]},indexes:{type:"function",returns:["list"]},len:{type:"function",returns:["number"]},values:{type:"function",returns:["list"]},replace:{type:"function",arguments:[{label:"oldVal",type:"any"},{label:"newVal",type:"any"},{label:"maxCount",type:"number",opt:!0}],returns:["map"]}}}});var ME=g((iH,aN)=>{aN.exports={type:"number",definitions:{}}});var LE=g((sH,uN)=>{uN.exports={type:"string",definitions:{remove:{type:"function",arguments:[{label:"toDelete",type:"string"}],returns:["string"]},hasIndex:{type:"function",arguments:[{label:"index",type:"number"}],returns:["number"]},insert:{type:"function",arguments:[{label:"index",type:"number"},{label:"value",type:"string"}],returns:["string"]},indexOf:{type:"function",arguments:[{label:"value",type:"string"},{label:"offset",type:"number",opt:!0}],returns:["number","null"]},split:{type:"function",arguments:[{label:"delimiter",type:"string",default:{type:"string",value:" "}},{label:"maxCount",type:"number",default:{type:"number",value:-1}}],returns:[{type:"list",valueType:"string"}]},replace:{type:"function",arguments:[{label:"oldVal",type:"string"},{label:"newVal",type:"string"},{label:"maxCount",type:"number",opt:!0}],returns:["string"]},indexes:{type:"function",returns:[{type:"list",valueType:"number"}]},code:{type:"function",returns:["number"]},len:{type:"function",returns:["number"]},lower:{type:"function",returns:["string"]},upper:{type:"function",returns:["string"]},val:{type:"function",returns:["number"]},values:{type:"function",returns:[{type:"list",valueType:"string"}]}}}});var NE=g((oH,cN)=>{cN.exports={type:"version",extends:"map",definitions:{miniscript:{type:"string"},buildDate:{type:"string"},host:{type:"number"},hostName:{type:"string"},hostInfo:{type:"string"}}}});var tb=g(mn=>{"use strict";var Ci=mn&&mn.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(mn,"__esModule",{value:!0});mn.miniscriptMeta=void 0;var lN=Wn(),dN=Ci(CE()),fN=Ci(RE()),pN=Ci(PE()),hN=Ci(DE()),gN=Ci(IE()),mN=Ci(ME()),yN=Ci(LE()),bN=Ci(NE());mn.miniscriptMeta=new lN.Container;mn.miniscriptMeta.addTypeSignatureFromPayload(fN.default);mn.miniscriptMeta.addTypeSignatureFromPayload(pN.default);mn.miniscriptMeta.addTypeSignatureFromPayload(hN.default);mn.miniscriptMeta.addTypeSignatureFromPayload(gN.default);mn.miniscriptMeta.addTypeSignatureFromPayload(mN.default);mn.miniscriptMeta.addTypeSignatureFromPayload(yN.default);mn.miniscriptMeta.addTypeSignatureFromPayload(bN.default);mn.miniscriptMeta.addMetaFromPayload("en",dN.default)});var yo=g(ur=>{"use strict";Object.defineProperty(ur,"__esModule",{value:!0});ur.lookupBase=ur.lookupIdentifier=void 0;var Xr=qe(),vN=tb(),_N=Ja(),TN=t=>{switch(t.type){case Xr.ASTType.CallStatement:return(0,ur.lookupIdentifier)(t.expression);case Xr.ASTType.CallExpression:return(0,ur.lookupIdentifier)(t.base);case Xr.ASTType.Identifier:return t;case Xr.ASTType.MemberExpression:return(0,ur.lookupIdentifier)(t.identifier);case Xr.ASTType.IndexExpression:return(0,ur.lookupIdentifier)(t.index);default:return null}};ur.lookupIdentifier=TN;var SN=(t=null)=>{switch(t?.type){case Xr.ASTType.MemberExpression:return t.base;case Xr.ASTType.IndexExpression:return t.base;case Xr.ASTType.CallExpression:return t.base;case Xr.ASTType.SliceExpression:return t.base;default:return null}};ur.lookupBase=SN;ur.default=new _N.TypeManager({container:vN.miniscriptMeta})});var vo=g(Cr=>{"use strict";var kN=Cr&&Cr.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),xN=Cr&&Cr.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),wN=Cr&&Cr.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var n in t)n!=="default"&&Object.prototype.hasOwnProperty.call(t,n)&&kN(e,t,n);return xN(e,t),e};Object.defineProperty(Cr,"__esModule",{value:!0});Cr.LookupHelper=void 0;var EN=Wn(),qE=qe(),bo=Ja(),AN=wN(eb()),ON=yo(),nb=class{constructor(e,n){this.document=e,this.context=n,this.mergedTypeMap=null}async getTypeMap(){return this.mergedTypeMap==null&&(this.mergedTypeMap=await this.context.documentMerger.build(this.document,this.context)),this.mergedTypeMap}async findAllAssignmentsOfIdentifier(e,n){let r=await this.getTypeMap();if(r==null)return[];let i=r.getScopeContext(n);return i==null?[]:i.aggregator.resolveAvailableAssignmentsWithQuery(e)}async findAllAssignmentsOfItem(e,n){let r=await this.getTypeMap();if(r==null)return[];let i=r.getScopeContext(n);return i==null?[]:i.aggregator.resolveAvailableAssignments(e)}async findAllAvailableIdentifierInRoot(){let e=await this.getTypeMap();return e==null?new Map:e.getRootScopeContext().scope.getAllIdentifier()}async findAllAvailableIdentifier(e){let n=await this.getTypeMap();if(n==null)return new Map;let r=n.getScopeContext(e);return r==null?new Map:r.scope.getAllIdentifier()}async findAllAvailableIdentifierRelatedToPosition(e){let n=await this.getTypeMap(),r=new Map;if(n==null)return r;for(let a of n.container.getAllIdentifier(EN.SignatureDefinitionBaseType.General))r.set(...a);let i=n.getScopeContext(e.scope);if(i==null)return r;i.scope.isSelfAvailable()&&r.set("self",{kind:bo.CompletionItemKind.Constant,line:-1}),i.scope.isSuperAvailable()&&r.set("super",{kind:bo.CompletionItemKind.Constant,line:-1});let s=new Map;(0,bo.injectIdentifers)(s,i.scope);let o=Array.from(s.entries()).map(([a,u])=>({identifier:a,...u})).sort((a,u)=>a.line-u.line);for(let a=0;a<o.length;a++){let u=o[a];if(u.line>=e.end.line)break;r.set(u.identifier,{kind:u.kind,line:u.line})}return i.scope.locals!==i.scope.globals&&(0,bo.injectIdentifers)(r,i.scope.globals),i.scope.outer&&(0,bo.injectIdentifers)(r,i.scope.outer),r}lookupAST(e){let n=this,i=this.context.documentManager.get(n.document).document.lines[e.line+1];if(!i)return null;for(let s=0;s<i.length;s++){let o=i[s],a=AN.findEx((c,l)=>{let d=c.start.line-1,p=c.start.character-1,b=c.end.line-1,_=c.end.character-1;return d>e.line?{exit:!0}:d<b?{valid:e.line>d&&e.line<b||e.line===d&&p<=e.character||e.line===b&&_>=e.character}:{valid:d<=e.line&&p<=e.character&&b>=e.line&&_>=e.character}},o),u=a.pop();if(u)return{closest:u,outer:a}}return null}async lookupBasePath(e){let n=await this.getTypeMap();if(n===null)return null;let r=(0,ON.lookupBase)(e);return r?n.resolveNamespace(r):null}async lookupTypeInfo({closest:e,outer:n}){let r=await this.getTypeMap();if(r===null)return null;let i=n.length>0?n[n.length-1]:void 0;return i?.type===qE.ASTType.MemberExpression&&e===i.identifier||i?.type===qE.ASTType.IndexExpression&&e===i.index&&(0,bo.isValidIdentifierLiteral)(e)?r.resolveType(i,!0):r.resolveType(e,!0)}lookupType(e){let n=this,r=n.lookupAST(e);return r?n.lookupTypeInfo(r):null}};Cr.LookupHelper=nb});var jE=g(yd=>{"use strict";Object.defineProperty(yd,"__esModule",{value:!0});yd.AVAILABLE_CONSTANTS=void 0;yd.AVAILABLE_CONSTANTS=["true","false","null","params","globals","locals","outer"].map(t=>({label:t,kind:21}))});var FE=g(bd=>{"use strict";Object.defineProperty(bd,"__esModule",{value:!0});bd.AVAILABLE_KEYWORDS=void 0;var _o=Or(),Jt=qe();bd.AVAILABLE_KEYWORDS=[Jt.Keyword.If,Jt.Keyword.In,Jt.Keyword.Or,Jt.Keyword.And,Jt.Keyword.Isa,Jt.Keyword.For,Jt.Keyword.New,Jt.Keyword.Not,Jt.Keyword.End,Jt.Keyword.Then,Jt.Keyword.Else,Jt.Keyword.Break,Jt.Keyword.While,Jt.Keyword.Return,Jt.Keyword.Function,Jt.Keyword.Continue,_o.GreybelKeyword.Envar,_o.GreybelKeyword.Import,_o.GreybelKeyword.Include,_o.GreybelKeyword.Debugger,_o.GreybelKeyword.Line,_o.GreybelKeyword.File].map(t=>({label:t,kind:14}))});var $E=g(vd=>{"use strict";Object.defineProperty(vd,"__esModule",{value:!0});vd.AVAILABLE_OPERATORS=void 0;var Za=go(),qt=qe();vd.AVAILABLE_OPERATORS=[qt.Operator.Plus,qt.Operator.Asterik,qt.Operator.Minus,qt.Operator.Slash,qt.Operator.Power,qt.Operator.Modulo,qt.Operator.LessThan,qt.Operator.GreaterThan,qt.Operator.LessThanOrEqual,qt.Operator.GreaterThanOrEqual,qt.Operator.NotEqual,qt.Operator.Equal,qt.Operator.AddShorthand,qt.Operator.SubtractShorthand,qt.Operator.MultiplyShorthand,qt.Operator.DivideShorthand,Za.Operator.BitwiseAnd,Za.Operator.BitwiseOr,Za.Operator.LeftShift,Za.Operator.RightShift,Za.Operator.UnsignedRightShift,qt.Operator.Assign,qt.Operator.Reference].map(t=>({label:t,kind:24}))});var rb=g(To=>{"use strict";Object.defineProperty(To,"__esModule",{value:!0});To.getSymbolItemKind=To.getCompletionItemKind=void 0;var Qt=Ja(),CN=t=>{switch(t){case Qt.CompletionItemKind.Constant:return 21;case Qt.CompletionItemKind.Variable:return 6;case Qt.CompletionItemKind.Expression:return 6;case Qt.CompletionItemKind.Function:return 3;case Qt.CompletionItemKind.ListConstructor:case Qt.CompletionItemKind.MapConstructor:case Qt.CompletionItemKind.Literal:case Qt.CompletionItemKind.Unknown:return 12}};To.getCompletionItemKind=CN;var RN=t=>{switch(t){case Qt.CompletionItemKind.Constant:return 14;case Qt.CompletionItemKind.Variable:return 13;case Qt.CompletionItemKind.Expression:return 13;case Qt.CompletionItemKind.Function:return 12;case Qt.CompletionItemKind.ListConstructor:return 18;case Qt.CompletionItemKind.MapConstructor:return 19;case Qt.CompletionItemKind.Literal:case Qt.CompletionItemKind.Unknown:return 13}};To.getSymbolItemKind=RN});var BE=g(_d=>{"use strict";Object.defineProperty(_d,"__esModule",{value:!0});_d.CompletionListBuilder=void 0;var PN=rb(),ib=class{constructor(){this.collection=new Map,this.default=[]}setDefault(e){this.default=e}addCollection(e){e!=null&&(this.collection=new Map([...this.collection,...e]))}build(){let e=[];for(let[n,r]of this.collection)e.push({label:n,kind:(0,PN.getCompletionItemKind)(r.kind)});return[...e,...this.default]}};_d.CompletionListBuilder=ib});var HE=g(Kn=>{"use strict";Object.defineProperty(Kn,"__esModule",{value:!0});Kn.activate=Kn.getDefaultCompletionList=Kn.getPropertyCompletionList=void 0;var UE=qe(),DN=vo(),IN=jE(),MN=FE(),LN=$E(),NN=BE(),qN=async(t,e)=>{let n=await t.lookupBasePath(e);return n===null?null:n.getAllIdentifier()};Kn.getPropertyCompletionList=qN;var jN=()=>[...MN.AVAILABLE_KEYWORDS,...LN.AVAILABLE_OPERATORS,...IN.AVAILABLE_CONSTANTS];Kn.getDefaultCompletionList=jN;function FN(t){t.connection.onCompletion(async e=>{if(!t.getConfiguration().autocomplete)return;let n=await t.fs.getTextDocument(e.textDocument.uri);if(n==null)return;let r=await t.documentManager.getLatest(n),i=new DN.LookupHelper(r.textDocument,t),s=i.lookupAST(e.position),o=new NN.CompletionListBuilder,a=!1;if(s){let{closest:u}=s;u instanceof UE.ASTMemberExpression?(o.addCollection(await(0,Kn.getPropertyCompletionList)(i,u)),a=!0):u instanceof UE.ASTIndexExpression?(o.addCollection(await(0,Kn.getPropertyCompletionList)(i,u)),a=!0):(o.setDefault((0,Kn.getDefaultCompletionList)()),o.addCollection(await i.findAllAvailableIdentifierRelatedToPosition(s.closest)))}else o.setDefault((0,Kn.getDefaultCompletionList)()),o.addCollection(await i.findAllAvailableIdentifierInRoot());return o.build()}),t.connection.onCompletionResolve(e=>e)}Kn.activate=FN});var GE=g((mH,WE)=>{"use strict";WE.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var sb=g((yH,VE)=>{var eu=GE(),KE={};for(let t of Object.keys(eu))KE[eu[t]]=t;var re={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};VE.exports=re;for(let t of Object.keys(re)){if(!("channels"in re[t]))throw new Error("missing channels property: "+t);if(!("labels"in re[t]))throw new Error("missing channel labels property: "+t);if(re[t].labels.length!==re[t].channels)throw new Error("channel and label counts mismatch: "+t);let{channels:e,labels:n}=re[t];delete re[t].channels,delete re[t].labels,Object.defineProperty(re[t],"channels",{value:e}),Object.defineProperty(re[t],"labels",{value:n})}re.rgb.hsl=function(t){let e=t[0]/255,n=t[1]/255,r=t[2]/255,i=Math.min(e,n,r),s=Math.max(e,n,r),o=s-i,a,u;s===i?a=0:e===s?a=(n-r)/o:n===s?a=2+(r-e)/o:r===s&&(a=4+(e-n)/o),a=Math.min(a*60,360),a<0&&(a+=360);let c=(i+s)/2;return s===i?u=0:c<=.5?u=o/(s+i):u=o/(2-s-i),[a,u*100,c*100]};re.rgb.hsv=function(t){let e,n,r,i,s,o=t[0]/255,a=t[1]/255,u=t[2]/255,c=Math.max(o,a,u),l=c-Math.min(o,a,u),d=function(p){return(c-p)/6/l+1/2};return l===0?(i=0,s=0):(s=l/c,e=d(o),n=d(a),r=d(u),o===c?i=r-n:a===c?i=1/3+e-r:u===c&&(i=2/3+n-e),i<0?i+=1:i>1&&(i-=1)),[i*360,s*100,c*100]};re.rgb.hwb=function(t){let e=t[0],n=t[1],r=t[2],i=re.rgb.hsl(t)[0],s=1/255*Math.min(e,Math.min(n,r));return r=1-1/255*Math.max(e,Math.max(n,r)),[i,s*100,r*100]};re.rgb.cmyk=function(t){let e=t[0]/255,n=t[1]/255,r=t[2]/255,i=Math.min(1-e,1-n,1-r),s=(1-e-i)/(1-i)||0,o=(1-n-i)/(1-i)||0,a=(1-r-i)/(1-i)||0;return[s*100,o*100,a*100,i*100]};function $N(t,e){return(t[0]-e[0])**2+(t[1]-e[1])**2+(t[2]-e[2])**2}re.rgb.keyword=function(t){let e=KE[t];if(e)return e;let n=1/0,r;for(let i of Object.keys(eu)){let s=eu[i],o=$N(t,s);o<n&&(n=o,r=i)}return r};re.keyword.rgb=function(t){return eu[t]};re.rgb.xyz=function(t){let e=t[0]/255,n=t[1]/255,r=t[2]/255;e=e>.04045?((e+.055)/1.055)**2.4:e/12.92,n=n>.04045?((n+.055)/1.055)**2.4:n/12.92,r=r>.04045?((r+.055)/1.055)**2.4:r/12.92;let i=e*.4124+n*.3576+r*.1805,s=e*.2126+n*.7152+r*.0722,o=e*.0193+n*.1192+r*.9505;return[i*100,s*100,o*100]};re.rgb.lab=function(t){let e=re.rgb.xyz(t),n=e[0],r=e[1],i=e[2];n/=95.047,r/=100,i/=108.883,n=n>.008856?n**(1/3):7.787*n+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,i=i>.008856?i**(1/3):7.787*i+16/116;let s=116*r-16,o=500*(n-r),a=200*(r-i);return[s,o,a]};re.hsl.rgb=function(t){let e=t[0]/360,n=t[1]/100,r=t[2]/100,i,s,o;if(n===0)return o=r*255,[o,o,o];r<.5?i=r*(1+n):i=r+n-r*n;let a=2*r-i,u=[0,0,0];for(let c=0;c<3;c++)s=e+1/3*-(c-1),s<0&&s++,s>1&&s--,6*s<1?o=a+(i-a)*6*s:2*s<1?o=i:3*s<2?o=a+(i-a)*(2/3-s)*6:o=a,u[c]=o*255;return u};re.hsl.hsv=function(t){let e=t[0],n=t[1]/100,r=t[2]/100,i=n,s=Math.max(r,.01);r*=2,n*=r<=1?r:2-r,i*=s<=1?s:2-s;let o=(r+n)/2,a=r===0?2*i/(s+i):2*n/(r+n);return[e,a*100,o*100]};re.hsv.rgb=function(t){let e=t[0]/60,n=t[1]/100,r=t[2]/100,i=Math.floor(e)%6,s=e-Math.floor(e),o=255*r*(1-n),a=255*r*(1-n*s),u=255*r*(1-n*(1-s));switch(r*=255,i){case 0:return[r,u,o];case 1:return[a,r,o];case 2:return[o,r,u];case 3:return[o,a,r];case 4:return[u,o,r];case 5:return[r,o,a]}};re.hsv.hsl=function(t){let e=t[0],n=t[1]/100,r=t[2]/100,i=Math.max(r,.01),s,o;o=(2-n)*r;let a=(2-n)*i;return s=n*i,s/=a<=1?a:2-a,s=s||0,o/=2,[e,s*100,o*100]};re.hwb.rgb=function(t){let e=t[0]/360,n=t[1]/100,r=t[2]/100,i=n+r,s;i>1&&(n/=i,r/=i);let o=Math.floor(6*e),a=1-r;s=6*e-o,o&1&&(s=1-s);let u=n+s*(a-n),c,l,d;switch(o){default:case 6:case 0:c=a,l=u,d=n;break;case 1:c=u,l=a,d=n;break;case 2:c=n,l=a,d=u;break;case 3:c=n,l=u,d=a;break;case 4:c=u,l=n,d=a;break;case 5:c=a,l=n,d=u;break}return[c*255,l*255,d*255]};re.cmyk.rgb=function(t){let e=t[0]/100,n=t[1]/100,r=t[2]/100,i=t[3]/100,s=1-Math.min(1,e*(1-i)+i),o=1-Math.min(1,n*(1-i)+i),a=1-Math.min(1,r*(1-i)+i);return[s*255,o*255,a*255]};re.xyz.rgb=function(t){let e=t[0]/100,n=t[1]/100,r=t[2]/100,i,s,o;return i=e*3.2406+n*-1.5372+r*-.4986,s=e*-.9689+n*1.8758+r*.0415,o=e*.0557+n*-.204+r*1.057,i=i>.0031308?1.055*i**(1/2.4)-.055:i*12.92,s=s>.0031308?1.055*s**(1/2.4)-.055:s*12.92,o=o>.0031308?1.055*o**(1/2.4)-.055:o*12.92,i=Math.min(Math.max(0,i),1),s=Math.min(Math.max(0,s),1),o=Math.min(Math.max(0,o),1),[i*255,s*255,o*255]};re.xyz.lab=function(t){let e=t[0],n=t[1],r=t[2];e/=95.047,n/=100,r/=108.883,e=e>.008856?e**(1/3):7.787*e+16/116,n=n>.008856?n**(1/3):7.787*n+16/116,r=r>.008856?r**(1/3):7.787*r+16/116;let i=116*n-16,s=500*(e-n),o=200*(n-r);return[i,s,o]};re.lab.xyz=function(t){let e=t[0],n=t[1],r=t[2],i,s,o;s=(e+16)/116,i=n/500+s,o=s-r/200;let a=s**3,u=i**3,c=o**3;return s=a>.008856?a:(s-16/116)/7.787,i=u>.008856?u:(i-16/116)/7.787,o=c>.008856?c:(o-16/116)/7.787,i*=95.047,s*=100,o*=108.883,[i,s,o]};re.lab.lch=function(t){let e=t[0],n=t[1],r=t[2],i;i=Math.atan2(r,n)*360/2/Math.PI,i<0&&(i+=360);let o=Math.sqrt(n*n+r*r);return[e,o,i]};re.lch.lab=function(t){let e=t[0],n=t[1],i=t[2]/360*2*Math.PI,s=n*Math.cos(i),o=n*Math.sin(i);return[e,s,o]};re.rgb.ansi16=function(t,e=null){let[n,r,i]=t,s=e===null?re.rgb.hsv(t)[2]:e;if(s=Math.round(s/50),s===0)return 30;let o=30+(Math.round(i/255)<<2|Math.round(r/255)<<1|Math.round(n/255));return s===2&&(o+=60),o};re.hsv.ansi16=function(t){return re.rgb.ansi16(re.hsv.rgb(t),t[2])};re.rgb.ansi256=function(t){let e=t[0],n=t[1],r=t[2];return e===n&&n===r?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(n/255*5)+Math.round(r/255*5)};re.ansi16.rgb=function(t){let e=t%10;if(e===0||e===7)return t>50&&(e+=3.5),e=e/10.5*255,[e,e,e];let n=(~~(t>50)+1)*.5,r=(e&1)*n*255,i=(e>>1&1)*n*255,s=(e>>2&1)*n*255;return[r,i,s]};re.ansi256.rgb=function(t){if(t>=232){let s=(t-232)*10+8;return[s,s,s]}t-=16;let e,n=Math.floor(t/36)/5*255,r=Math.floor((e=t%36)/6)/5*255,i=e%6/5*255;return[n,r,i]};re.rgb.hex=function(t){let n=(((Math.round(t[0])&255)<<16)+((Math.round(t[1])&255)<<8)+(Math.round(t[2])&255)).toString(16).toUpperCase();return"000000".substring(n.length)+n};re.hex.rgb=function(t){let e=t.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!e)return[0,0,0];let n=e[0];e[0].length===3&&(n=n.split("").map(a=>a+a).join(""));let r=parseInt(n,16),i=r>>16&255,s=r>>8&255,o=r&255;return[i,s,o]};re.rgb.hcg=function(t){let e=t[0]/255,n=t[1]/255,r=t[2]/255,i=Math.max(Math.max(e,n),r),s=Math.min(Math.min(e,n),r),o=i-s,a,u;return o<1?a=s/(1-o):a=0,o<=0?u=0:i===e?u=(n-r)/o%6:i===n?u=2+(r-e)/o:u=4+(e-n)/o,u/=6,u%=1,[u*360,o*100,a*100]};re.hsl.hcg=function(t){let e=t[1]/100,n=t[2]/100,r=n<.5?2*e*n:2*e*(1-n),i=0;return r<1&&(i=(n-.5*r)/(1-r)),[t[0],r*100,i*100]};re.hsv.hcg=function(t){let e=t[1]/100,n=t[2]/100,r=e*n,i=0;return r<1&&(i=(n-r)/(1-r)),[t[0],r*100,i*100]};re.hcg.rgb=function(t){let e=t[0]/360,n=t[1]/100,r=t[2]/100;if(n===0)return[r*255,r*255,r*255];let i=[0,0,0],s=e%1*6,o=s%1,a=1-o,u=0;switch(Math.floor(s)){case 0:i[0]=1,i[1]=o,i[2]=0;break;case 1:i[0]=a,i[1]=1,i[2]=0;break;case 2:i[0]=0,i[1]=1,i[2]=o;break;case 3:i[0]=0,i[1]=a,i[2]=1;break;case 4:i[0]=o,i[1]=0,i[2]=1;break;default:i[0]=1,i[1]=0,i[2]=a}return u=(1-n)*r,[(n*i[0]+u)*255,(n*i[1]+u)*255,(n*i[2]+u)*255]};re.hcg.hsv=function(t){let e=t[1]/100,n=t[2]/100,r=e+n*(1-e),i=0;return r>0&&(i=e/r),[t[0],i*100,r*100]};re.hcg.hsl=function(t){let e=t[1]/100,r=t[2]/100*(1-e)+.5*e,i=0;return r>0&&r<.5?i=e/(2*r):r>=.5&&r<1&&(i=e/(2*(1-r))),[t[0],i*100,r*100]};re.hcg.hwb=function(t){let e=t[1]/100,n=t[2]/100,r=e+n*(1-e);return[t[0],(r-e)*100,(1-r)*100]};re.hwb.hcg=function(t){let e=t[1]/100,r=1-t[2]/100,i=r-e,s=0;return i<1&&(s=(r-i)/(1-i)),[t[0],i*100,s*100]};re.apple.rgb=function(t){return[t[0]/65535*255,t[1]/65535*255,t[2]/65535*255]};re.rgb.apple=function(t){return[t[0]/255*65535,t[1]/255*65535,t[2]/255*65535]};re.gray.rgb=function(t){return[t[0]/100*255,t[0]/100*255,t[0]/100*255]};re.gray.hsl=function(t){return[0,0,t[0]]};re.gray.hsv=re.gray.hsl;re.gray.hwb=function(t){return[0,100,t[0]]};re.gray.cmyk=function(t){return[0,0,0,t[0]]};re.gray.lab=function(t){return[t[0],0,0]};re.gray.hex=function(t){let e=Math.round(t[0]/100*255)&255,r=((e<<16)+(e<<8)+e).toString(16).toUpperCase();return"000000".substring(r.length)+r};re.rgb.gray=function(t){return[(t[0]+t[1]+t[2])/3/255*100]}});var XE=g((bH,zE)=>{var Td=sb();function BN(){let t={},e=Object.keys(Td);for(let n=e.length,r=0;r<n;r++)t[e[r]]={distance:-1,parent:null};return t}function UN(t){let e=BN(),n=[t];for(e[t].distance=0;n.length;){let r=n.pop(),i=Object.keys(Td[r]);for(let s=i.length,o=0;o<s;o++){let a=i[o],u=e[a];u.distance===-1&&(u.distance=e[r].distance+1,u.parent=r,n.unshift(a))}}return e}function HN(t,e){return function(n){return e(t(n))}}function WN(t,e){let n=[e[t].parent,t],r=Td[e[t].parent][t],i=e[t].parent;for(;e[i].parent;)n.unshift(e[i].parent),r=HN(Td[e[i].parent][i],r),i=e[i].parent;return r.conversion=n,r}zE.exports=function(t){let e=UN(t),n={},r=Object.keys(e);for(let i=r.length,s=0;s<i;s++){let o=r[s];e[o].parent!==null&&(n[o]=WN(o,e))}return n}});var JE=g((vH,YE)=>{var ob=sb(),GN=XE(),So={},KN=Object.keys(ob);function VN(t){let e=function(...n){let r=n[0];return r==null?r:(r.length>1&&(n=r),t(n))};return"conversion"in t&&(e.conversion=t.conversion),e}function zN(t){let e=function(...n){let r=n[0];if(r==null)return r;r.length>1&&(n=r);let i=t(n);if(typeof i=="object")for(let s=i.length,o=0;o<s;o++)i[o]=Math.round(i[o]);return i};return"conversion"in t&&(e.conversion=t.conversion),e}KN.forEach(t=>{So[t]={},Object.defineProperty(So[t],"channels",{value:ob[t].channels}),Object.defineProperty(So[t],"labels",{value:ob[t].labels});let e=GN(t);Object.keys(e).forEach(r=>{let i=e[r];So[t][r]=zN(i),So[t][r].raw=VN(i)})});YE.exports=So});var ZE=g(ko=>{"use strict";var XN=ko&&ko.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ko,"__esModule",{value:!0});ko.activate=void 0;var ab=XN(JE()),YN=qe(),QE;(function(t){t.Black="black",t.Blue="blue",t.Green="green",t.Orange="orange",t.Purple="purple",t.Red="red",t.White="white",t.Yellow="yellow"})(QE||(QE={}));var ub={black:"#000000",blue:"#0000FF",green:"#00FF00",orange:"#FF8800",purple:"#CC8899",red:"#FF0000",white:"#FFFFFF",yellow:"#FFFF00"},JN=()=>new RegExp(`(?:mark|color)=(${Object.keys(ub).join("|")}|(?:#[0-9a-f]{6}|#[0-9a-f]{3}))`,"ig"),QN=Object.prototype.hasOwnProperty;function ZN(t){t.connection.onColorPresentation(e=>[{label:`#${ab.default.rgb.hex(e.color.red*255,e.color.green*255,e.color.blue*255)}`}]),t.connection.onDocumentColor(async e=>{let n=await t.fs.getTextDocument(e.textDocument.uri);if(n==null)return;let s=(await t.documentManager.getLatest(n)).document.literals.filter(u=>u.type===YN.ASTType.StringLiteral),o=[],a=({match:u,markup:c,value:l,astPosition:d,lineIndex:p})=>{let b=u.index+c.indexOf("=")+1,_=b+l.length,E=d.line-1+p,L=b,M=_;return p===0&&(L+=d.character,M+=d.character),{start:{line:E,character:L},end:{line:E,character:M}}};for(let u=0;u<s.length;u++){let c=s[u];if(!c.start)continue;let l=c.start,d=c.value.toString().split(`
119
+ `);for(let p=0;p<d.length;p++){let b=d[p],_=JN(),E;for(;E=_.exec(b);){let[L,M]=E,x=a({match:E,markup:L,value:M,astPosition:l,lineIndex:p});if(M.startsWith("#")){let[k,v,F]=ab.default.hex.rgb(M.slice(1));o.push({range:x,color:{red:k/255,green:v/255,blue:F/255,alpha:1}})}else if(QN.call(ub,M)){let[k,v,F]=ab.default.hex.rgb(ub[M].slice(1));o.push({range:x,color:{red:k/255,green:v/255,blue:F/255,alpha:1}})}else o.push({range:x,color:{red:0,green:0,blue:0,alpha:1}})}}}return o})}ko.activate=ZN});var eA=g(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});Sd.activate=void 0;var eq=qe(),tq=vo(),nq=t=>`${t.targetUri}:${t.targetRange.start.line}:${t.targetRange.start.character}-${t.targetRange.end.line}:${t.targetRange.end.character}`,rq=async(t,e,n)=>{let r=await t.findAllAssignmentsOfItem(e,n),i=[],s=new Set;for(let o of r){let a=o.node;if(!a.start||!a.end)continue;let u={line:a.start.line-1,character:a.start.character-1},c={line:a.end.line-1,character:a.end.character-1},l={targetUri:o.source,targetRange:{start:u,end:c},targetSelectionRange:{start:u,end:c}},d=nq(l);s.has(d)||(s.add(d),i.push(l))}return i};function iq(t){t.connection.onDefinition(async e=>{let n=await t.fs.getTextDocument(e.textDocument.uri);if(n==null)return;let r=new tq.LookupHelper(n,t),i=r.lookupAST(e.position);if(!i)return;let{outer:s,closest:o}=i,a=s.length>0?s[s.length-1]:void 0,u=o;return a&&a instanceof eq.ASTMemberExpression&&a.identifier===o&&(u=a),await rq(r,u,u.scope)})}Sd.activate=iq});var tA=g(kd=>{"use strict";Object.defineProperty(kd,"__esModule",{value:!0});kd.activate=void 0;async function sq(t,e){let n=await e.documentManager.getLatest(t);return n.errors.map(r=>{if(r?.range){let i=r.range;return{range:{start:{line:i.start.line-1,character:i.start.character-1},end:{line:i.end.line-1,character:i.end.character-1}},message:r.message,severity:1}}return{range:{start:n.document.start,end:n.document.end},message:r.message,severity:1}})}function oq(t){t.connection.languages.diagnostics.on(async e=>{if(!t.getConfiguration().diagnostic)return;let n=await t.fs.getTextDocument(e.textDocument.uri);if(n==null)return;let r=await sq(n,t);return r.length===0?{kind:"full",items:[]}:{kind:"full",items:r}})}kd.activate=oq});var nA=g(xd=>{"use strict";Object.defineProperty(xd,"__esModule",{value:!0});xd.getStringHashCode=void 0;xd.getStringHashCode=function(){let t=new Map,e=n=>{let r,i;for(r=0,i=0;r<n.length;r++)i=Math.imul(31,i)+n.charCodeAt(r)|0;return i};return n=>{if(n.length===0)return 0;let r=t.get(n);if(r!==void 0)return r;let i=e(n);return t.set(n,i),i}}()});var cb=g(Ad=>{"use strict";Object.defineProperty(Ad,"__esModule",{value:!0});Ad.createExpressionHash=void 0;var wd=qe(),rA=nA(),Ed=(t,e)=>t.$$hash=e,aq=t=>{var e;return(e=t.$$hash)!==null&&e!==void 0?e:null};function xo(t){let e=aq(t);if(e!==null)return e;let n=(0,rA.getStringHashCode)(t.type);switch(t.type){case wd.ASTType.ParenthesisExpression:return xo(t.expression);case wd.ASTType.MemberExpression:{let r=t;return n^=xo(r.base),n^=xo(r.identifier),Ed(t,n)}case wd.ASTType.IndexExpression:{let r=t;return n^=xo(r.base),n^=xo(r.index),Ed(t,n)}case wd.ASTType.Identifier:{let r=t;return n^=(0,rA.getStringHashCode)(r.name),Ed(t,n)}}return Ed(t,n)}function uq(t){return xo(t)}Ad.createExpressionHash=uq});var db=g(Od=>{"use strict";Object.defineProperty(Od,"__esModule",{value:!0});Od.Stack=void 0;var lb=class{constructor(){let e=this;e.currentStack=[]}get(e){let r=this.currentStack;e==null&&(e=0);let i=r.length-e-1;return i<0?null:r[i]}depth(){return this.currentStack.filter(function(e){return Object.prototype.hasOwnProperty.call(e,"body")}).length}lookup(e){let n=this;for(let r=n.currentStack.length-2;r>=0;r--)if(e(n.currentStack[r]))return!0;return!1}push(e){let n=this;return n.currentStack.push(e),n}pop(){let e=this;return e.currentStack.pop(),e}};Od.Stack=lb});var wo=g(fs=>{"use strict";Object.defineProperty(fs,"__esModule",{value:!0});fs.Factory=fs.TokenType=void 0;var cq=db(),lq;(function(t){t[t.Text=0]="Text",t[t.EndOfLine=1]="EndOfLine",t[t.Comment=2]="Comment"})(lq=fs.TokenType||(fs.TokenType={}));var fb=class{get tokens(){return this._tokens}get currentStack(){return this._currentStack}get currentDependency(){return this._currentDependency}constructor(e){this.transformer=e,this._tokens=[],this._currentDependency=null,this._currentStack=new cq.Stack}process(e,n={}){let r=this,i=r._currentStack;if(e==null)return;if(e.type==null)throw console.error("Error AST type:",e),new Error("Unexpected AST type");let s=r.handlers[e.type];if(s==null)throw console.error("Error AST:",e),new Error("Type does not exist "+e.type);i.push(e),s.call(this,e,n),i.pop()}};fs.Factory=fb});var hb=g(ps=>{"use strict";Object.defineProperty(ps,"__esModule",{value:!0});ps.BeautifyContext=ps.IndentationType=void 0;var tu=qe(),Cd=wo(),iA;(function(t){t[t.Tab=0]="Tab",t[t.Whitespace=1]="Whitespace"})(iA=ps.IndentationType||(ps.IndentationType={}));var pb=class{get indent(){return this._indent}get isMultilineAllowed(){return this._isMultilineAllowed}get usedComments(){return this._usedComments}constructor(e,n){this.factory=e,this.options=n,this._indent=0,this._isMultilineAllowed=!0,this._usedComments=new Set,this.getIndent=n.indentation===iA.Tab?(r=0)=>" ".repeat(this._indent+r):(r=0)=>" ".repeat(n.indentationSpaces).repeat(this._indent+r)}disableMultiline(){this._isMultilineAllowed=!1}enableMultiline(){this._isMultilineAllowed=!0}incIndent(){this._indent++}decIndent(){this._indent--}getBlockOpenerEndLine(e){return e instanceof tu.ASTIfClause||e instanceof tu.ASTWhileStatement?e.condition.end.line:e instanceof tu.ASTForGenericStatement?e.iterator.end.line:e instanceof tu.ASTChunk?e.start.line-1:e.start.line}getPreviousEndLine(e){if(e==null)return 0;if(e.type===tu.ASTType.IfShortcutStatement){let n=e;return n.clauses[n.clauses.length-1].body[0].end.line}return e.end.line}containsNewLineInRange(e,n=this.factory.tokens.length){let r=Math.min(n,this.factory.tokens.length);for(let i=e;i<r;i++)if(this.factory.tokens[i].type===Cd.TokenType.EndOfLine)return!0;return!1}buildBlock(e){if(e.body.length===0)return;e.body.sort((s,o)=>s.range[0]-o.range[0]);let n=null;for(let s=0;s<e.body.length;s++){let o=e.body[s],a=n?this.getPreviousEndLine(n):this.getBlockOpenerEndLine(e),u=Math.max(o.start.line-a-1,0);if(u>0)for(let l=0;l<u;l++){let d={line:a+l+1,character:0};this.factory.tokens.push({type:Cd.TokenType.EndOfLine,value:`
120
120
  `,ref:{start:d,end:d}})}let c=this.factory.tokens.length;this.factory.process(o,{isCommand:!0}),c<this.factory.tokens.length&&(this.factory.tokens[c].value=this.getIndent()+this.factory.tokens[c].value,this.factory.tokens.push({type:Cd.TokenType.EndOfLine,value:`
121
121
  `,ref:{start:o.end,end:o.end}})),n=o}let r=e.body[e.body.length-1],i=Math.max(e.end.line-this.getPreviousEndLine(r)-1,0);if(i>0)for(let s=0;s<i;s++){let o={line:r.end.line+s+1,character:0};this.factory.tokens.push({type:Cd.TokenType.EndOfLine,value:`
122
- `,ref:{start:o,end:o}})}}};ps.BeautifyContext=db});var pb=g(Ht=>{"use strict";Object.defineProperty(Ht,"__esModule",{value:!0});Ht.hasEmptyBody=Ht.containsMultilineItemInShortcutClauses=Ht.getLastComment=Ht.unwrap=Ht.countRightBinaryExpressions=Ht.SHORTHAND_OPERATORS=void 0;var yn=qe();Ht.SHORTHAND_OPERATORS=[yn.Operator.Plus,yn.Operator.Minus,yn.Operator.Asterik,yn.Operator.Slash,yn.Operator.Modulo,yn.Operator.Power];var lq=t=>{if(t=(0,Ht.unwrap)(t),t instanceof yn.ASTComparisonGroupExpression)return t.expressions.length;let e=[t],n=0;for(;e.length>0;){let r=e.pop();r instanceof yn.ASTBinaryExpression&&n++,(r instanceof yn.ASTBinaryExpression||r instanceof yn.ASTLogicalExpression||r instanceof yn.ASTIsaExpression)&&(e.push((0,Ht.unwrap)(r.left)),e.push((0,Ht.unwrap)(r.right)))}return n};Ht.countRightBinaryExpressions=lq;var dq=t=>{for(;t instanceof yn.ASTParenthesisExpression;)t=t.expression;return t};Ht.unwrap=dq;var fq=t=>{for(let e=t.length-1;e>=0;e--){let n=t[e];if(n.type===yn.ASTType.Comment)return n}return null};Ht.getLastComment=fq;var pq=(t,e)=>e.some(n=>t.line<n.body[0].end.line);Ht.containsMultilineItemInShortcutClauses=pq;var hq=t=>!t.some(e=>!(e instanceof yn.ASTComment));Ht.hasEmptyBody=hq});var gb=g(Rd=>{"use strict";Object.defineProperty(Rd,"__esModule",{value:!0});Rd.BeautifyFactory=void 0;var nu=qe(),gq=require("path"),sA=ab(),oA=fb(),Xr=pb(),N=wo(),hb=class extends N.Factory{constructor(e){super(e),this.handlers={ParenthesisExpression:function(o,a){this.tokens.push({type:N.TokenType.Text,value:"(",ref:o}),this.process(o.expression,{hasLogicalIndentActive:a.hasLogicalIndentActive}),this.tokens.push({type:N.TokenType.Text,value:")",ref:o})},Comment:function(o,a){if(this.context.usedComments.add(o),o.isMultiline){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:N.TokenType.Comment,value:`/*${o.value}*/`,ref:o,isMultiline:!0});return}this.tokens.push({type:N.TokenType.Comment,value:o.value.split(`
122
+ `,ref:{start:o,end:o}})}}};ps.BeautifyContext=pb});var gb=g(Ht=>{"use strict";Object.defineProperty(Ht,"__esModule",{value:!0});Ht.hasEmptyBody=Ht.containsMultilineItemInShortcutClauses=Ht.getLastComment=Ht.unwrap=Ht.countRightBinaryExpressions=Ht.SHORTHAND_OPERATORS=void 0;var yn=qe();Ht.SHORTHAND_OPERATORS=[yn.Operator.Plus,yn.Operator.Minus,yn.Operator.Asterik,yn.Operator.Slash,yn.Operator.Modulo,yn.Operator.Power];var dq=t=>{if(t=(0,Ht.unwrap)(t),t instanceof yn.ASTComparisonGroupExpression)return t.expressions.length;let e=[t],n=0;for(;e.length>0;){let r=e.pop();r instanceof yn.ASTBinaryExpression&&n++,(r instanceof yn.ASTBinaryExpression||r instanceof yn.ASTLogicalExpression||r instanceof yn.ASTIsaExpression)&&(e.push((0,Ht.unwrap)(r.left)),e.push((0,Ht.unwrap)(r.right)))}return n};Ht.countRightBinaryExpressions=dq;var fq=t=>{for(;t instanceof yn.ASTParenthesisExpression;)t=t.expression;return t};Ht.unwrap=fq;var pq=t=>{for(let e=t.length-1;e>=0;e--){let n=t[e];if(n.type===yn.ASTType.Comment)return n}return null};Ht.getLastComment=pq;var hq=(t,e)=>e.some(n=>t.line<n.body[0].end.line);Ht.containsMultilineItemInShortcutClauses=hq;var gq=t=>!t.some(e=>!(e instanceof yn.ASTComment));Ht.hasEmptyBody=gq});var yb=g(Rd=>{"use strict";Object.defineProperty(Rd,"__esModule",{value:!0});Rd.BeautifyFactory=void 0;var nu=qe(),mq=require("path"),sA=cb(),oA=hb(),Yr=gb(),N=wo(),mb=class extends N.Factory{constructor(e){super(e),this.handlers={ParenthesisExpression:function(o,a){this.tokens.push({type:N.TokenType.Text,value:"(",ref:o}),this.process(o.expression,{hasLogicalIndentActive:a.hasLogicalIndentActive}),this.tokens.push({type:N.TokenType.Text,value:")",ref:o})},Comment:function(o,a){if(this.context.usedComments.add(o),o.isMultiline){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:N.TokenType.Comment,value:`/*${o.value}*/`,ref:o,isMultiline:!0});return}this.tokens.push({type:N.TokenType.Comment,value:o.value.split(`
123
123
  `).map(u=>`//${u}`).join(`
124
- `),ref:o,isMultiline:!0});return}this.tokens.push({type:N.TokenType.Comment,value:"// "+o.value.trimStart(),ref:o,isMultiline:!1})},AssignmentStatement:function(o,a){let u=o.variable,c=o.init;if(this.process(u),(u instanceof nu.ASTIdentifier||u instanceof nu.ASTMemberExpression)&&c instanceof nu.ASTBinaryExpression&&(c.left instanceof nu.ASTIdentifier||c.left instanceof nu.ASTMemberExpression)&&Xr.SHORTHAND_OPERATORS.includes(c.operator)&&(0,sA.createExpressionHash)(u)===(0,sA.createExpressionHash)(c.left)){this.tokens.push({type:N.TokenType.Text,value:" "+c.operator+"= ",ref:o}),this.process((0,Xr.unwrap)(c.right));return}this.tokens.push({type:N.TokenType.Text,value:" = ",ref:o}),this.process(c)},MemberExpression:function(o,a){this.process(o.base),this.tokens.push({type:N.TokenType.Text,value:o.indexer,ref:o}),this.process(o.identifier)},FunctionDeclaration:function(o,a){if(o.parameters.length===0)this.tokens.push({type:N.TokenType.Text,value:"function",ref:{start:o.start,end:o.start}});else{this.context.disableMultiline(),this.tokens.push({type:N.TokenType.Text,value:"function(",ref:{start:o.start,end:o.start}});for(let u=0;u<o.parameters.length;u++){let c=o.parameters[u];this.process(c),u!==o.parameters.length-1&&this.tokens.push({type:N.TokenType.Text,value:", ",ref:c})}this.tokens.push({type:N.TokenType.Text,value:")",ref:{start:o.start,end:o.start}}),this.context.enableMultiline()}this.tokens.push({type:N.TokenType.EndOfLine,value:`
124
+ `),ref:o,isMultiline:!0});return}this.tokens.push({type:N.TokenType.Comment,value:"// "+o.value.trimStart(),ref:o,isMultiline:!1})},AssignmentStatement:function(o,a){let u=o.variable,c=o.init;if(this.process(u),(u instanceof nu.ASTIdentifier||u instanceof nu.ASTMemberExpression)&&c instanceof nu.ASTBinaryExpression&&(c.left instanceof nu.ASTIdentifier||c.left instanceof nu.ASTMemberExpression)&&Yr.SHORTHAND_OPERATORS.includes(c.operator)&&(0,sA.createExpressionHash)(u)===(0,sA.createExpressionHash)(c.left)){this.tokens.push({type:N.TokenType.Text,value:" "+c.operator+"= ",ref:o}),this.process((0,Yr.unwrap)(c.right));return}this.tokens.push({type:N.TokenType.Text,value:" = ",ref:o}),this.process(c)},MemberExpression:function(o,a){this.process(o.base),this.tokens.push({type:N.TokenType.Text,value:o.indexer,ref:o}),this.process(o.identifier)},FunctionDeclaration:function(o,a){if(o.parameters.length===0)this.tokens.push({type:N.TokenType.Text,value:"function",ref:{start:o.start,end:o.start}});else{this.context.disableMultiline(),this.tokens.push({type:N.TokenType.Text,value:"function(",ref:{start:o.start,end:o.start}});for(let u=0;u<o.parameters.length;u++){let c=o.parameters[u];this.process(c),u!==o.parameters.length-1&&this.tokens.push({type:N.TokenType.Text,value:", ",ref:c})}this.tokens.push({type:N.TokenType.Text,value:")",ref:{start:o.start,end:o.start}}),this.context.enableMultiline()}this.tokens.push({type:N.TokenType.EndOfLine,value:`
125
125
  `,ref:{start:o.start,end:o.start}}),this.context.incIndent(),this.context.buildBlock(o),this.context.decIndent(),this.tokens.push({type:N.TokenType.Text,value:this.context.getIndent()+"end function",ref:{start:o.end,end:o.end}})},MapConstructorExpression:function(o,a){if(o.fields.length===0){this.tokens.push({type:N.TokenType.Text,value:"{}",ref:o});return}if(o.fields.length===1){this.tokens.push({type:N.TokenType.Text,value:"{ ",ref:o}),this.process(o.fields[0]),this.tokens.push({type:N.TokenType.Text,value:" }",ref:o});return}if(this.context.isMultilineAllowed){this.context.incIndent(),this.tokens.push({type:N.TokenType.Text,value:"{",ref:{start:o.start,end:o.start}}),this.tokens.push({type:N.TokenType.EndOfLine,value:`
126
126
  `,ref:{start:o.start,end:o.start}});for(let u=0;u<o.fields.length;u++){let c=o.fields[u];this.tokens.push({type:N.TokenType.Text,value:this.context.getIndent(),ref:c}),this.process(c),this.tokens.push({type:N.TokenType.Text,value:",",ref:c}),this.tokens.push({type:N.TokenType.EndOfLine,value:`
127
127
  `,ref:c})}this.context.decIndent(),this.tokens.push({type:N.TokenType.Text,value:this.context.getIndent()+"}",ref:{start:o.end,end:o.end}});return}this.tokens.push({type:N.TokenType.Text,value:"{ ",ref:{start:o.start,end:o.start}});for(let u=0;u<o.fields.length;u++){let c=o.fields[u];this.process(c),u!==o.fields.length-1&&this.tokens.push({type:N.TokenType.Text,value:", ",ref:c})}this.context.decIndent(),this.tokens.push({type:N.TokenType.Text,value:" }",ref:{start:o.end,end:o.end}})},MapKeyString:function(o,a){this.process(o.key),this.tokens.push({type:N.TokenType.Text,value:": ",ref:o}),this.process(o.value)},Identifier:function(o,a){this.tokens.push({type:N.TokenType.Text,value:o.name,ref:o})},ReturnStatement:function(o,a){this.tokens.push({type:N.TokenType.Text,value:"return ",ref:o}),o.argument&&this.process(o.argument)},NumericLiteral:function(o,a){this.tokens.push({type:N.TokenType.Text,value:(o.negated?"-":"")+o.value.toString(),ref:o})},WhileStatement:function(o,a){this.tokens.push({type:N.TokenType.Text,value:"while ",ref:{start:o.start,end:o.start}}),this.context.disableMultiline(),this.process(o.condition),this.context.enableMultiline(),this.tokens.push({type:N.TokenType.EndOfLine,value:`
@@ -129,15 +129,15 @@ ${e}`;for(let a=0;a<this.details.length;++a){let u=a+1;o=`${o}
129
129
  `,ref:{start:o.start,end:o.start}});for(let l=0;l<o.arguments.length;l++){let d=o.arguments[l];this.tokens.push({type:N.TokenType.Text,value:this.context.getIndent(),ref:d}),this.process(d),l!==o.arguments.length-1&&(this.tokens.push({type:N.TokenType.Text,value:",",ref:d}),this.tokens.push({type:N.TokenType.EndOfLine,value:`
130
130
  `,ref:d}))}this.context.decIndent(),this.tokens.push({type:N.TokenType.Text,value:")",ref:{start:o.end,end:o.end}});return}this.tokens.push({type:N.TokenType.Text,value:"(",ref:{start:o.start,end:o.start}});let u=this.tokens.length-1;for(let l=0;l<o.arguments.length;l++){let d=o.arguments[l];this.process(d),l!==o.arguments.length-1&&this.tokens.push({type:N.TokenType.Text,value:", ",ref:d})}let c=this.context.containsNewLineInRange(u);if(o.arguments.length>1&&c){this._tokens=this._tokens.slice(0,u+1),this.context.incIndent(),this.tokens.push({type:N.TokenType.EndOfLine,value:`
131
131
  `,ref:{start:o.start,end:o.start}});for(let l=0;l<o.arguments.length;l++){let d=o.arguments[l];this.tokens.push({type:N.TokenType.Text,value:this.context.getIndent(),ref:d}),this.process(d),l!==o.arguments.length-1&&(this.tokens.push({type:N.TokenType.Text,value:",",ref:d}),this.tokens.push({type:N.TokenType.EndOfLine,value:`
132
- `,ref:d}))}this.context.decIndent(),this.tokens.push({type:N.TokenType.Text,value:")",ref:{start:o.end,end:o.end}});return}if(a.isCommand&&!this.transformer.buildOptions.keepParentheses){this.tokens[u].value=" ";return}this.tokens.push({type:N.TokenType.Text,value:")",ref:{start:o.end,end:o.end}})},StringLiteral:function(o,a){this.tokens.push({type:N.TokenType.Text,value:o.raw.toString(),ref:{start:o.end,end:o.end}})},SliceExpression:function(o,a){this.process(o.base),this.tokens.push({type:N.TokenType.Text,value:"[",ref:o}),this.process(o.left),this.tokens.push({type:N.TokenType.Text,value:" : ",ref:o}),this.process(o.right),this.tokens.push({type:N.TokenType.Text,value:"]",ref:o})},IndexExpression:function(o,a){this.process(o.base),this.tokens.push({type:N.TokenType.Text,value:"[",ref:o}),this.process(o.index),this.tokens.push({type:N.TokenType.Text,value:"]",ref:o})},UnaryExpression:function(o,a){o.operator==="new"?this.tokens.push({type:N.TokenType.Text,value:o.operator+" ",ref:o}):this.tokens.push({type:N.TokenType.Text,value:o.operator,ref:o}),this.process(o.argument)},NegationExpression:function(o,a){this.tokens.push({type:N.TokenType.Text,value:"not ",ref:o}),this.process(o.argument)},FeatureEnvarExpression:function(o,a){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:N.TokenType.Text,value:`#envar ${o.name}`,ref:o});return}let u=this.transformer.environmentVariables.get(o.name);if(!u){this.tokens.push({type:N.TokenType.Text,value:"null",ref:o});return}this.tokens.push({type:N.TokenType.Text,value:`"${u}"`,ref:o})},IfShortcutStatement:function(o,a){for(let u=0;u<o.clauses.length;u++){let c=o.clauses[u];this.process(c),u!==o.clauses.length-1&&this.tokens.push({type:N.TokenType.Text,value:" ",ref:o})}},IfShortcutClause:function(o,a){this.tokens.push({type:N.TokenType.Text,value:"if ",ref:o}),this.process((0,Xr.unwrap)(o.condition)),this.tokens.push({type:N.TokenType.Text,value:" then ",ref:o}),this.process(o.body[0])},ElseifShortcutClause:function(o,a){this.tokens.push({type:N.TokenType.Text,value:"else if ",ref:o}),this.process((0,Xr.unwrap)(o.condition)),this.tokens.push({type:N.TokenType.Text,value:" then ",ref:o}),this.process(o.body[0])},ElseShortcutClause:function(o,a){this.tokens.push({type:N.TokenType.Text,value:"else ",ref:o}),this.process(o.body[0])},NilLiteral:function(o,a){this.tokens.push({type:N.TokenType.Text,value:"null",ref:o})},ForGenericStatement:function(o,a){this.tokens.push({type:N.TokenType.Text,value:"for ",ref:{start:o.start,end:o.start}}),this.process((0,Xr.unwrap)(o.variable)),this.tokens.push({type:N.TokenType.Text,value:" in ",ref:{start:o.start,end:o.start}}),this.process((0,Xr.unwrap)(o.iterator)),this.tokens.push({type:N.TokenType.EndOfLine,value:`
133
- `,ref:{start:o.start,end:o.start}}),this.context.incIndent(),this.context.buildBlock(o),this.context.decIndent(),this.tokens.push({type:N.TokenType.Text,value:this.context.getIndent()+"end for",ref:{start:o.end,end:o.end}})},IfStatement:function(o,a){for(let u of o.clauses)this.process(u);this.tokens.push({type:N.TokenType.Text,value:this.context.getIndent()+"end if",ref:{start:o.end,end:o.end}})},IfClause:function(o,a){this.tokens.push({type:N.TokenType.Text,value:"if ",ref:{start:o.start,end:o.start}}),this.process((0,Xr.unwrap)(o.condition)),this.tokens.push({type:N.TokenType.Text,value:" then",ref:{start:o.start,end:o.start}}),this.tokens.push({type:N.TokenType.EndOfLine,value:`
134
- `,ref:{start:o.start,end:o.start}}),this.context.incIndent(),this.context.buildBlock(o),this.context.decIndent()},ElseifClause:function(o,a){this.tokens.push({type:N.TokenType.Text,value:this.context.getIndent()+"else if ",ref:{start:o.start,end:o.start}}),this.process((0,Xr.unwrap)(o.condition)),this.tokens.push({type:N.TokenType.Text,value:" then",ref:{start:o.start,end:o.start}}),this.tokens.push({type:N.TokenType.EndOfLine,value:`
132
+ `,ref:d}))}this.context.decIndent(),this.tokens.push({type:N.TokenType.Text,value:")",ref:{start:o.end,end:o.end}});return}if(a.isCommand&&!this.transformer.buildOptions.keepParentheses){this.tokens[u].value=" ";return}this.tokens.push({type:N.TokenType.Text,value:")",ref:{start:o.end,end:o.end}})},StringLiteral:function(o,a){this.tokens.push({type:N.TokenType.Text,value:o.raw.toString(),ref:{start:o.end,end:o.end}})},SliceExpression:function(o,a){this.process(o.base),this.tokens.push({type:N.TokenType.Text,value:"[",ref:o}),this.process(o.left),this.tokens.push({type:N.TokenType.Text,value:" : ",ref:o}),this.process(o.right),this.tokens.push({type:N.TokenType.Text,value:"]",ref:o})},IndexExpression:function(o,a){this.process(o.base),this.tokens.push({type:N.TokenType.Text,value:"[",ref:o}),this.process(o.index),this.tokens.push({type:N.TokenType.Text,value:"]",ref:o})},UnaryExpression:function(o,a){o.operator==="new"?this.tokens.push({type:N.TokenType.Text,value:o.operator+" ",ref:o}):this.tokens.push({type:N.TokenType.Text,value:o.operator,ref:o}),this.process(o.argument)},NegationExpression:function(o,a){this.tokens.push({type:N.TokenType.Text,value:"not ",ref:o}),this.process(o.argument)},FeatureEnvarExpression:function(o,a){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:N.TokenType.Text,value:`#envar ${o.name}`,ref:o});return}let u=this.transformer.environmentVariables.get(o.name);if(!u){this.tokens.push({type:N.TokenType.Text,value:"null",ref:o});return}this.tokens.push({type:N.TokenType.Text,value:`"${u}"`,ref:o})},IfShortcutStatement:function(o,a){for(let u=0;u<o.clauses.length;u++){let c=o.clauses[u];this.process(c),u!==o.clauses.length-1&&this.tokens.push({type:N.TokenType.Text,value:" ",ref:o})}},IfShortcutClause:function(o,a){this.tokens.push({type:N.TokenType.Text,value:"if ",ref:o}),this.process((0,Yr.unwrap)(o.condition)),this.tokens.push({type:N.TokenType.Text,value:" then ",ref:o}),this.process(o.body[0])},ElseifShortcutClause:function(o,a){this.tokens.push({type:N.TokenType.Text,value:"else if ",ref:o}),this.process((0,Yr.unwrap)(o.condition)),this.tokens.push({type:N.TokenType.Text,value:" then ",ref:o}),this.process(o.body[0])},ElseShortcutClause:function(o,a){this.tokens.push({type:N.TokenType.Text,value:"else ",ref:o}),this.process(o.body[0])},NilLiteral:function(o,a){this.tokens.push({type:N.TokenType.Text,value:"null",ref:o})},ForGenericStatement:function(o,a){this.tokens.push({type:N.TokenType.Text,value:"for ",ref:{start:o.start,end:o.start}}),this.process((0,Yr.unwrap)(o.variable)),this.tokens.push({type:N.TokenType.Text,value:" in ",ref:{start:o.start,end:o.start}}),this.process((0,Yr.unwrap)(o.iterator)),this.tokens.push({type:N.TokenType.EndOfLine,value:`
133
+ `,ref:{start:o.start,end:o.start}}),this.context.incIndent(),this.context.buildBlock(o),this.context.decIndent(),this.tokens.push({type:N.TokenType.Text,value:this.context.getIndent()+"end for",ref:{start:o.end,end:o.end}})},IfStatement:function(o,a){for(let u of o.clauses)this.process(u);this.tokens.push({type:N.TokenType.Text,value:this.context.getIndent()+"end if",ref:{start:o.end,end:o.end}})},IfClause:function(o,a){this.tokens.push({type:N.TokenType.Text,value:"if ",ref:{start:o.start,end:o.start}}),this.process((0,Yr.unwrap)(o.condition)),this.tokens.push({type:N.TokenType.Text,value:" then",ref:{start:o.start,end:o.start}}),this.tokens.push({type:N.TokenType.EndOfLine,value:`
134
+ `,ref:{start:o.start,end:o.start}}),this.context.incIndent(),this.context.buildBlock(o),this.context.decIndent()},ElseifClause:function(o,a){this.tokens.push({type:N.TokenType.Text,value:this.context.getIndent()+"else if ",ref:{start:o.start,end:o.start}}),this.process((0,Yr.unwrap)(o.condition)),this.tokens.push({type:N.TokenType.Text,value:" then",ref:{start:o.start,end:o.start}}),this.tokens.push({type:N.TokenType.EndOfLine,value:`
135
135
  `,ref:{start:o.start,end:o.start}}),this.context.incIndent(),this.context.buildBlock(o),this.context.decIndent()},ElseClause:function(o,a){this.tokens.push({type:N.TokenType.Text,value:this.context.getIndent()+"else",ref:{start:o.start,end:o.start}}),this.tokens.push({type:N.TokenType.EndOfLine,value:`
136
- `,ref:{start:o.start,end:o.start}}),this.context.incIndent(),this.context.buildBlock(o),this.context.decIndent()},ContinueStatement:function(o,a){this.tokens.push({type:N.TokenType.Text,value:"continue",ref:o})},BreakStatement:function(o,a){this.tokens.push({type:N.TokenType.Text,value:"break",ref:o})},CallStatement:function(o,a){this.process(o.expression,{isCommand:!0})},FeatureInjectExpression:function(o,a){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:N.TokenType.Text,value:`#inject "${o.path}";`,ref:o});return}if(this.currentDependency===null){this.tokens.push({type:N.TokenType.Text,value:`#inject "${o.path}";`,ref:o});return}let u=this.currentDependency.injections.get(o.path);if(u==null){this.tokens.push({type:N.TokenType.Text,value:"null",ref:o});return}this.tokens.push({type:N.TokenType.Text,value:`"${u.replace(/"/g,'""')}"`,ref:o})},FeatureImportExpression:function(o,a){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:N.TokenType.Text,value:"#import ",ref:o}),this.process(o.name),this.tokens.push({type:N.TokenType.Text,value:` from "${o.path}";`,ref:o});return}if(!o.chunk){this.tokens.push({type:N.TokenType.Text,value:"#import ",ref:o}),this.process(o.name),this.tokens.push({type:N.TokenType.Text,value:` from "${o.path}";`,ref:o});return}this.process(o.name),this.tokens.push({type:N.TokenType.Text,value:' = __REQUIRE("'+o.namespace+'")',ref:o})},FeatureIncludeExpression:function(o,a){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:N.TokenType.Text,value:`#include "${o.path}";`,ref:o});return}if(!o.chunk){this.tokens.push({type:N.TokenType.Text,value:`#include "${o.path}";`,ref:o});return}this.process(o.chunk)},FeatureDebuggerExpression:function(o,a){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:N.TokenType.Text,value:"debugger",ref:o});return}this.tokens.push({type:N.TokenType.Text,value:"//debugger",ref:o})},FeatureLineExpression:function(o,a){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:N.TokenType.Text,value:"#line",ref:o});return}this.tokens.push({type:N.TokenType.Text,value:`${o.start.line}`,ref:o})},FeatureFileExpression:function(o,a){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:N.TokenType.Text,value:"#filename",ref:o});return}this.tokens.push({type:N.TokenType.Text,value:`"${(0,gq.basename)(o.filename).replace(/"/g,'"')}"`,ref:o})},ListConstructorExpression:function(o,a){if(o.fields.length===0){this.tokens.push({type:N.TokenType.Text,value:"[]",ref:o});return}if(o.fields.length===1){this.tokens.push({type:N.TokenType.Text,value:"[ ",ref:o}),this.process(o.fields[0]),this.tokens.push({type:N.TokenType.Text,value:" ]",ref:o});return}if(this.context.isMultilineAllowed){this.context.incIndent(),this.tokens.push({type:N.TokenType.Text,value:"[",ref:{start:o.start,end:o.start}}),this.tokens.push({type:N.TokenType.EndOfLine,value:`
136
+ `,ref:{start:o.start,end:o.start}}),this.context.incIndent(),this.context.buildBlock(o),this.context.decIndent()},ContinueStatement:function(o,a){this.tokens.push({type:N.TokenType.Text,value:"continue",ref:o})},BreakStatement:function(o,a){this.tokens.push({type:N.TokenType.Text,value:"break",ref:o})},CallStatement:function(o,a){this.process(o.expression,{isCommand:!0})},FeatureInjectExpression:function(o,a){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:N.TokenType.Text,value:`#inject "${o.path}";`,ref:o});return}if(this.currentDependency===null){this.tokens.push({type:N.TokenType.Text,value:`#inject "${o.path}";`,ref:o});return}let u=this.currentDependency.injections.get(o.path);if(u==null){this.tokens.push({type:N.TokenType.Text,value:"null",ref:o});return}this.tokens.push({type:N.TokenType.Text,value:`"${u.replace(/"/g,'""')}"`,ref:o})},FeatureImportExpression:function(o,a){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:N.TokenType.Text,value:"#import ",ref:o}),this.process(o.name),this.tokens.push({type:N.TokenType.Text,value:` from "${o.path}";`,ref:o});return}if(!o.chunk){this.tokens.push({type:N.TokenType.Text,value:"#import ",ref:o}),this.process(o.name),this.tokens.push({type:N.TokenType.Text,value:` from "${o.path}";`,ref:o});return}this.process(o.name),this.tokens.push({type:N.TokenType.Text,value:' = __REQUIRE("'+o.namespace+'")',ref:o})},FeatureIncludeExpression:function(o,a){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:N.TokenType.Text,value:`#include "${o.path}";`,ref:o});return}if(!o.chunk){this.tokens.push({type:N.TokenType.Text,value:`#include "${o.path}";`,ref:o});return}this.process(o.chunk)},FeatureDebuggerExpression:function(o,a){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:N.TokenType.Text,value:"debugger",ref:o});return}this.tokens.push({type:N.TokenType.Text,value:"//debugger",ref:o})},FeatureLineExpression:function(o,a){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:N.TokenType.Text,value:"#line",ref:o});return}this.tokens.push({type:N.TokenType.Text,value:`${o.start.line}`,ref:o})},FeatureFileExpression:function(o,a){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:N.TokenType.Text,value:"#filename",ref:o});return}this.tokens.push({type:N.TokenType.Text,value:`"${(0,mq.basename)(o.filename).replace(/"/g,'"')}"`,ref:o})},ListConstructorExpression:function(o,a){if(o.fields.length===0){this.tokens.push({type:N.TokenType.Text,value:"[]",ref:o});return}if(o.fields.length===1){this.tokens.push({type:N.TokenType.Text,value:"[ ",ref:o}),this.process(o.fields[0]),this.tokens.push({type:N.TokenType.Text,value:" ]",ref:o});return}if(this.context.isMultilineAllowed){this.context.incIndent(),this.tokens.push({type:N.TokenType.Text,value:"[",ref:{start:o.start,end:o.start}}),this.tokens.push({type:N.TokenType.EndOfLine,value:`
137
137
  `,ref:{start:o.start,end:o.start}});for(let u=0;u<o.fields.length;u++){let c=o.fields[u];this.tokens.push({type:N.TokenType.Text,value:this.context.getIndent(),ref:c}),this.process(c),this.tokens.push({type:N.TokenType.Text,value:",",ref:c}),this.tokens.push({type:N.TokenType.EndOfLine,value:`
138
- `,ref:c})}this.context.decIndent(),this.tokens.push({type:N.TokenType.Text,value:this.context.getIndent()+"]",ref:{start:o.end,end:o.end}});return}this.tokens.push({type:N.TokenType.Text,value:"[ ",ref:o});for(let u=0;u<o.fields.length;u++){let c=o.fields[u];this.process(c),u!==o.fields.length-1&&this.tokens.push({type:N.TokenType.Text,value:", ",ref:c})}this.tokens.push({type:N.TokenType.Text,value:" ]",ref:o})},ListValue:function(o,a){this.process(o.value)},BooleanLiteral:function(o,a){this.tokens.push({type:N.TokenType.Text,value:(o.negated?"-":"")+o.raw.toString(),ref:o})},EmptyExpression:function(o,a){this.tokens.push({type:N.TokenType.Text,value:"",ref:o})},IsaExpression:function(o,a){this.process(o.left,{hasLogicalIndentActive:a.hasLogicalIndentActive}),this.tokens.push({type:N.TokenType.Text,value:" "+o.operator+" ",ref:o}),this.process(o.right,{hasLogicalIndentActive:a.hasLogicalIndentActive})},LogicalExpression:function(o,a){if((0,Xr.countRightBinaryExpressions)(o.right)>2){a.hasLogicalIndentActive||this.context.incIndent(),this.process(o.left,{hasLogicalIndentActive:!0}),this.tokens.push({type:N.TokenType.Text,value:" "+o.operator+" ",ref:o}),this.tokens.push({type:N.TokenType.EndOfLine,value:`
138
+ `,ref:c})}this.context.decIndent(),this.tokens.push({type:N.TokenType.Text,value:this.context.getIndent()+"]",ref:{start:o.end,end:o.end}});return}this.tokens.push({type:N.TokenType.Text,value:"[ ",ref:o});for(let u=0;u<o.fields.length;u++){let c=o.fields[u];this.process(c),u!==o.fields.length-1&&this.tokens.push({type:N.TokenType.Text,value:", ",ref:c})}this.tokens.push({type:N.TokenType.Text,value:" ]",ref:o})},ListValue:function(o,a){this.process(o.value)},BooleanLiteral:function(o,a){this.tokens.push({type:N.TokenType.Text,value:(o.negated?"-":"")+o.raw.toString(),ref:o})},EmptyExpression:function(o,a){this.tokens.push({type:N.TokenType.Text,value:"",ref:o})},IsaExpression:function(o,a){this.process(o.left,{hasLogicalIndentActive:a.hasLogicalIndentActive}),this.tokens.push({type:N.TokenType.Text,value:" "+o.operator+" ",ref:o}),this.process(o.right,{hasLogicalIndentActive:a.hasLogicalIndentActive})},LogicalExpression:function(o,a){if((0,Yr.countRightBinaryExpressions)(o.right)>2){a.hasLogicalIndentActive||this.context.incIndent(),this.process(o.left,{hasLogicalIndentActive:!0}),this.tokens.push({type:N.TokenType.Text,value:" "+o.operator+" ",ref:o}),this.tokens.push({type:N.TokenType.EndOfLine,value:`
139
139
  `,ref:o}),this.tokens.push({type:N.TokenType.Text,value:this.context.getIndent(),ref:o}),this.process(o.right,{hasLogicalIndentActive:!0}),a.hasLogicalIndentActive||this.context.decIndent();return}this.process(o.left,{hasLogicalIndentActive:a.hasLogicalIndentActive}),this.tokens.push({type:N.TokenType.Text,value:" "+o.operator+" ",ref:o}),this.process(o.right,{hasLogicalIndentActive:a.hasLogicalIndentActive})},BinaryExpression:function(o,a){if(o.operator==="|"){this.tokens.push({type:N.TokenType.Text,value:"bitOr(",ref:o}),this.process(o.left),this.tokens.push({type:N.TokenType.Text,value:", ",ref:o}),this.process(o.right),this.tokens.push({type:N.TokenType.Text,value:")",ref:o});return}else if(o.operator==="&"){this.tokens.push({type:N.TokenType.Text,value:"bitAnd(",ref:o}),this.process(o.left),this.tokens.push({type:N.TokenType.Text,value:", ",ref:o}),this.process(o.right),this.tokens.push({type:N.TokenType.Text,value:")",ref:o});return}else if(o.operator==="<<"||o.operator===">>"||o.operator===">>>")throw new Error("Operators in binary expression are not supported");this.process(o.left),this.tokens.push({type:N.TokenType.Text,value:" "+o.operator+" ",ref:o}),this.process(o.right)},BinaryNegatedExpression:function(o,a){this.tokens.push({type:N.TokenType.Text,value:o.operator,ref:o}),this.process(o.argument)},ComparisonGroupExpression:function(o,a){this.process(o.expressions[0]);for(let u=0;u<o.operators.length;u++)this.tokens.push({type:N.TokenType.Text,value:" "+o.operators[u]+" ",ref:o}),this.process(o.expressions[u+1])},Chunk:function(o,a){this.context.buildBlock(o)}};let{keepParentheses:n=!1,indentation:r=oA.IndentationType.Tab,indentationSpaces:i=2,isDevMode:s=!1}=e.buildOptions;this.context=new oA.BeautifyContext(this,{keepParentheses:n,indentation:r,indentationSpaces:i,isDevMode:s})}transform(e,n){this._tokens=[],this._currentDependency=n,this.process(e);let r="";for(let i=0;i<this.tokens.length-1;i++){let s=this.tokens[i],o=this.tokens[i+1];if(s.type===N.TokenType.Text)r+=s.value;else if(s.type===N.TokenType.Comment)r+=s.value;else if(s.type===N.TokenType.EndOfLine){if(o?.type===N.TokenType.Comment&&s.ref.end.line===o?.ref.start.line){r+=" "+o.value.trim(),i++;continue}r+=`
140
- `}else throw new Error("Unknown token type!")}return r}generateOptimizations(){return[]}};Rd.BeautifyFactory=hb});var yb=g(Pd=>{"use strict";Object.defineProperty(Pd,"__esModule",{value:!0});Pd.DefaultFactory=void 0;var mq=require("path"),W=wo(),mb=class extends W.Factory{constructor(){super(...arguments),this.handlers={ParenthesisExpression:function(e,n){this.tokens.push({type:W.TokenType.Text,value:"(",ref:e}),this.process(e.expression),this.tokens.push({type:W.TokenType.Text,value:")",ref:e})},Comment:function(e,n){if(e.isMultiline){this.tokens.push({type:W.TokenType.Comment,value:e.value.split(`
140
+ `}else throw new Error("Unknown token type!")}return r}generateOptimizations(){return[]}};Rd.BeautifyFactory=mb});var vb=g(Pd=>{"use strict";Object.defineProperty(Pd,"__esModule",{value:!0});Pd.DefaultFactory=void 0;var yq=require("path"),W=wo(),bb=class extends W.Factory{constructor(){super(...arguments),this.handlers={ParenthesisExpression:function(e,n){this.tokens.push({type:W.TokenType.Text,value:"(",ref:e}),this.process(e.expression),this.tokens.push({type:W.TokenType.Text,value:")",ref:e})},Comment:function(e,n){if(e.isMultiline){this.tokens.push({type:W.TokenType.Comment,value:e.value.split(`
141
141
  `).map(r=>`//${r}`).join(`
142
142
  `),ref:e});return}this.tokens.push({type:W.TokenType.Comment,value:"//"+e.value,ref:e})},AssignmentStatement:function(e,n){let r=e.variable,i=e.init;this.process(r),this.tokens.push({type:W.TokenType.Text,value:"=",ref:e}),this.process(i)},MemberExpression:function(e,n){this.process(e.base),this.tokens.push({type:W.TokenType.Text,value:e.indexer,ref:e}),this.process(e.identifier)},FunctionDeclaration:function(e,n){if(e.parameters.length===0)this.tokens.push({type:W.TokenType.Text,value:"function",ref:{start:e.start,end:e.start}});else{this.tokens.push({type:W.TokenType.Text,value:"function(",ref:{start:e.start,end:e.start}});for(let r=0;r<e.parameters.length;r++){let i=e.parameters[r];this.process(i),r!==e.parameters.length-1&&this.tokens.push({type:W.TokenType.Text,value:",",ref:i})}this.tokens.push({type:W.TokenType.Text,value:")",ref:{start:e.start,end:e.start}})}this.tokens.push({type:W.TokenType.EndOfLine,value:`
143
143
  `,ref:{start:e.start,end:e.start}});for(let r of e.body){let i=this.tokens.length;this.process(r),i<this.tokens.length&&this.tokens.push({type:W.TokenType.EndOfLine,value:`
@@ -151,13 +151,13 @@ ${e}`;for(let a=0;a<this.details.length;++a){let u=a+1;o=`${o}
151
151
  `,ref:{start:e.start,end:e.start}});for(let r of e.body){let i=this.tokens.length;this.process(r),i<this.tokens.length&&this.tokens.push({type:W.TokenType.EndOfLine,value:`
152
152
  `,ref:{start:r.end,end:r.end}})}},ElseClause:function(e,n){this.tokens.push({type:W.TokenType.Text,value:"else",ref:{start:e.start,end:e.start}}),this.tokens.push({type:W.TokenType.EndOfLine,value:`
153
153
  `,ref:{start:e.start,end:e.start}});for(let r of e.body){let i=this.tokens.length;this.process(r),i<this.tokens.length&&this.tokens.push({type:W.TokenType.EndOfLine,value:`
154
- `,ref:{start:r.end,end:r.end}})}},ContinueStatement:function(e,n){this.tokens.push({type:W.TokenType.Text,value:"continue",ref:e})},BreakStatement:function(e,n){this.tokens.push({type:W.TokenType.Text,value:"break",ref:e})},CallStatement:function(e,n){this.process(e.expression)},FeatureInjectExpression:function(e,n){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:W.TokenType.Text,value:`#inject "${e.path}";`,ref:e});return}if(this.currentDependency===null){this.tokens.push({type:W.TokenType.Text,value:`#inject "${e.path}";`,ref:e});return}let r=this.currentDependency.injections.get(e.path);if(r==null){this.tokens.push({type:W.TokenType.Text,value:"null",ref:e});return}this.tokens.push({type:W.TokenType.Text,value:`"${r.replace(/"/g,'""')}"`,ref:e})},FeatureImportExpression:function(e,n){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:W.TokenType.Text,value:"#import ",ref:e}),this.process(e.name),this.tokens.push({type:W.TokenType.Text,value:` from "${e.path}";`,ref:e});return}if(!e.chunk){this.tokens.push({type:W.TokenType.Text,value:"#import ",ref:e}),this.process(e.name),this.tokens.push({type:W.TokenType.Text,value:` from "${e.path}";`,ref:e});return}this.process(e.name),this.tokens.push({type:W.TokenType.Text,value:' = __REQUIRE("'+e.namespace+'")',ref:e})},FeatureIncludeExpression:function(e,n){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:W.TokenType.Text,value:`#include "${e.path}";`,ref:e});return}if(!e.chunk){this.tokens.push({type:W.TokenType.Text,value:`#include "${e.path}";`,ref:e});return}this.process(e.chunk)},FeatureDebuggerExpression:function(e,n){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:W.TokenType.Text,value:"debugger",ref:e});return}this.tokens.push({type:W.TokenType.Text,value:"//debugger",ref:e})},FeatureLineExpression:function(e,n){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:W.TokenType.Text,value:"#line",ref:e});return}this.tokens.push({type:W.TokenType.Text,value:`${e.start.line}`,ref:e})},FeatureFileExpression:function(e,n){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:W.TokenType.Text,value:"#filename",ref:e});return}this.tokens.push({type:W.TokenType.Text,value:`"${(0,mq.basename)(e.filename).replace(/"/g,'"')}"`,ref:e})},ListConstructorExpression:function(e,n){this.tokens.push({type:W.TokenType.Text,value:"[",ref:e});for(let r=0;r<e.fields.length;r++){let i=e.fields[r];this.process(i),r!==e.fields.length-1&&this.tokens.push({type:W.TokenType.Text,value:",",ref:i})}this.tokens.push({type:W.TokenType.Text,value:"]",ref:e})},ListValue:function(e,n){this.process(e.value)},BooleanLiteral:function(e,n){this.tokens.push({type:W.TokenType.Text,value:(e.negated?"-":"")+e.raw.toString(),ref:e})},EmptyExpression:function(e,n){this.tokens.push({type:W.TokenType.Text,value:"",ref:e})},IsaExpression:function(e,n){this.process(e.left),this.tokens.push({type:W.TokenType.Text,value:" "+e.operator+" ",ref:e}),this.process(e.right)},LogicalExpression:function(e,n){this.process(e.left),this.tokens.push({type:W.TokenType.Text,value:" "+e.operator+" ",ref:e}),this.process(e.right)},BinaryExpression:function(e,n){if(e.operator==="|"){this.tokens.push({type:W.TokenType.Text,value:"bitOr(",ref:e}),this.process(e.left),this.tokens.push({type:W.TokenType.Text,value:",",ref:e}),this.process(e.right),this.tokens.push({type:W.TokenType.Text,value:")",ref:e});return}else if(e.operator==="&"){this.tokens.push({type:W.TokenType.Text,value:"bitAnd(",ref:e}),this.process(e.left),this.tokens.push({type:W.TokenType.Text,value:",",ref:e}),this.process(e.right),this.tokens.push({type:W.TokenType.Text,value:")",ref:e});return}else if(e.operator==="<<"||e.operator===">>"||e.operator===">>>")throw new Error("Operators in binary expression are not supported");this.process(e.left),this.tokens.push({type:W.TokenType.Text,value:e.operator,ref:e}),this.process(e.right)},BinaryNegatedExpression:function(e,n){this.tokens.push({type:W.TokenType.Text,value:e.operator,ref:e}),this.process(e.argument)},ComparisonGroupExpression:function(e,n){this.process(e.expressions[0]);for(let r=0;r<e.operators.length;r++)this.tokens.push({type:W.TokenType.Text,value:e.operators[r],ref:e}),this.process(e.expressions[r+1])},Chunk:function(e,n){for(let r of e.body){let i=this.tokens.length;this.process(r),i<this.tokens.length&&this.tokens.push({type:W.TokenType.EndOfLine,value:`
154
+ `,ref:{start:r.end,end:r.end}})}},ContinueStatement:function(e,n){this.tokens.push({type:W.TokenType.Text,value:"continue",ref:e})},BreakStatement:function(e,n){this.tokens.push({type:W.TokenType.Text,value:"break",ref:e})},CallStatement:function(e,n){this.process(e.expression)},FeatureInjectExpression:function(e,n){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:W.TokenType.Text,value:`#inject "${e.path}";`,ref:e});return}if(this.currentDependency===null){this.tokens.push({type:W.TokenType.Text,value:`#inject "${e.path}";`,ref:e});return}let r=this.currentDependency.injections.get(e.path);if(r==null){this.tokens.push({type:W.TokenType.Text,value:"null",ref:e});return}this.tokens.push({type:W.TokenType.Text,value:`"${r.replace(/"/g,'""')}"`,ref:e})},FeatureImportExpression:function(e,n){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:W.TokenType.Text,value:"#import ",ref:e}),this.process(e.name),this.tokens.push({type:W.TokenType.Text,value:` from "${e.path}";`,ref:e});return}if(!e.chunk){this.tokens.push({type:W.TokenType.Text,value:"#import ",ref:e}),this.process(e.name),this.tokens.push({type:W.TokenType.Text,value:` from "${e.path}";`,ref:e});return}this.process(e.name),this.tokens.push({type:W.TokenType.Text,value:' = __REQUIRE("'+e.namespace+'")',ref:e})},FeatureIncludeExpression:function(e,n){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:W.TokenType.Text,value:`#include "${e.path}";`,ref:e});return}if(!e.chunk){this.tokens.push({type:W.TokenType.Text,value:`#include "${e.path}";`,ref:e});return}this.process(e.chunk)},FeatureDebuggerExpression:function(e,n){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:W.TokenType.Text,value:"debugger",ref:e});return}this.tokens.push({type:W.TokenType.Text,value:"//debugger",ref:e})},FeatureLineExpression:function(e,n){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:W.TokenType.Text,value:"#line",ref:e});return}this.tokens.push({type:W.TokenType.Text,value:`${e.start.line}`,ref:e})},FeatureFileExpression:function(e,n){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:W.TokenType.Text,value:"#filename",ref:e});return}this.tokens.push({type:W.TokenType.Text,value:`"${(0,yq.basename)(e.filename).replace(/"/g,'"')}"`,ref:e})},ListConstructorExpression:function(e,n){this.tokens.push({type:W.TokenType.Text,value:"[",ref:e});for(let r=0;r<e.fields.length;r++){let i=e.fields[r];this.process(i),r!==e.fields.length-1&&this.tokens.push({type:W.TokenType.Text,value:",",ref:i})}this.tokens.push({type:W.TokenType.Text,value:"]",ref:e})},ListValue:function(e,n){this.process(e.value)},BooleanLiteral:function(e,n){this.tokens.push({type:W.TokenType.Text,value:(e.negated?"-":"")+e.raw.toString(),ref:e})},EmptyExpression:function(e,n){this.tokens.push({type:W.TokenType.Text,value:"",ref:e})},IsaExpression:function(e,n){this.process(e.left),this.tokens.push({type:W.TokenType.Text,value:" "+e.operator+" ",ref:e}),this.process(e.right)},LogicalExpression:function(e,n){this.process(e.left),this.tokens.push({type:W.TokenType.Text,value:" "+e.operator+" ",ref:e}),this.process(e.right)},BinaryExpression:function(e,n){if(e.operator==="|"){this.tokens.push({type:W.TokenType.Text,value:"bitOr(",ref:e}),this.process(e.left),this.tokens.push({type:W.TokenType.Text,value:",",ref:e}),this.process(e.right),this.tokens.push({type:W.TokenType.Text,value:")",ref:e});return}else if(e.operator==="&"){this.tokens.push({type:W.TokenType.Text,value:"bitAnd(",ref:e}),this.process(e.left),this.tokens.push({type:W.TokenType.Text,value:",",ref:e}),this.process(e.right),this.tokens.push({type:W.TokenType.Text,value:")",ref:e});return}else if(e.operator==="<<"||e.operator===">>"||e.operator===">>>")throw new Error("Operators in binary expression are not supported");this.process(e.left),this.tokens.push({type:W.TokenType.Text,value:e.operator,ref:e}),this.process(e.right)},BinaryNegatedExpression:function(e,n){this.tokens.push({type:W.TokenType.Text,value:e.operator,ref:e}),this.process(e.argument)},ComparisonGroupExpression:function(e,n){this.process(e.expressions[0]);for(let r=0;r<e.operators.length;r++)this.tokens.push({type:W.TokenType.Text,value:e.operators[r],ref:e}),this.process(e.expressions[r+1])},Chunk:function(e,n){for(let r of e.body){let i=this.tokens.length;this.process(r),i<this.tokens.length&&this.tokens.push({type:W.TokenType.EndOfLine,value:`
155
155
  `,ref:{start:r.end,end:r.end}})}}}}transform(e,n){this._tokens=[],this._currentDependency=n,this.process(e);let r="";for(let i=0;i<this.tokens.length-1;i++){let s=this.tokens[i];if(s.type===W.TokenType.Text||s.type===W.TokenType.Comment)r+=s.value;else if(s.type===W.TokenType.EndOfLine)r+=`
156
- `;else throw new Error("Unknown token type!")}return r}generateOptimizations(){return[]}};Pd.DefaultFactory=mb});var bb=g(Id=>{"use strict";Object.defineProperty(Id,"__esModule",{value:!0});Id.createExpressionString=void 0;var Dd=qe();function ru(t){switch(t.type){case Dd.ASTType.ParenthesisExpression:return ru(t.expression);case Dd.ASTType.MemberExpression:{let e=t;return`${ru(e.base)}.${ru(e.identifier)}`}case Dd.ASTType.IndexExpression:return`${ru(t.base)}[]`;case Dd.ASTType.Identifier:return t.name}}function yq(t){return ru(t)}Id.createExpressionString=yq});var _b=g(Md=>{"use strict";Object.defineProperty(Md,"__esModule",{value:!0});Md.UglifyFactory=void 0;var bq=require("path"),aA=bb(),$=wo(),vb=class extends $.Factory{constructor(e){var n,r;super(e),this.handlers={ParenthesisExpression:function(i,s){this.tokens.push({type:$.TokenType.Text,value:"(",ref:i}),this.process(i.expression),this.tokens.push({type:$.TokenType.Text,value:")",ref:i})},Comment:function(i,s){},AssignmentStatement:function(i,s){let o=i.variable,a=i.init;this.process(o),this.tokens.push({type:$.TokenType.Text,value:"=",ref:i}),this.process(a)},MemberExpression:function(i,s){this.process(i.base),this.tokens.push({type:$.TokenType.Text,value:i.indexer,ref:i});let o=(0,aA.createExpressionString)(i.base);this.process(i.identifier,{usesNativeVar:o==="globals"||o==="locals"||o==="outer",isMember:!0})},FunctionDeclaration:function(i,s){if(i.parameters.length===0)this.tokens.push({type:$.TokenType.Text,value:"function",ref:{start:i.start,end:i.start}});else{this.tokens.push({type:$.TokenType.Text,value:"function(",ref:{start:i.start,end:i.start}}),this.isWithinArgument=!0;for(let o=0;o<i.parameters.length;o++){let a=i.parameters[o];this.process(a),o!==i.parameters.length-1&&this.tokens.push({type:$.TokenType.Text,value:",",ref:a})}this.isWithinArgument=!1,this.tokens.push({type:$.TokenType.Text,value:")",ref:{start:i.start,end:i.start}})}this.tokens.push({type:$.TokenType.EndOfLine,value:`
156
+ `;else throw new Error("Unknown token type!")}return r}generateOptimizations(){return[]}};Pd.DefaultFactory=bb});var _b=g(Id=>{"use strict";Object.defineProperty(Id,"__esModule",{value:!0});Id.createExpressionString=void 0;var Dd=qe();function ru(t){switch(t.type){case Dd.ASTType.ParenthesisExpression:return ru(t.expression);case Dd.ASTType.MemberExpression:{let e=t;return`${ru(e.base)}.${ru(e.identifier)}`}case Dd.ASTType.IndexExpression:return`${ru(t.base)}[]`;case Dd.ASTType.Identifier:return t.name}}function bq(t){return ru(t)}Id.createExpressionString=bq});var Sb=g(Md=>{"use strict";Object.defineProperty(Md,"__esModule",{value:!0});Md.UglifyFactory=void 0;var vq=require("path"),aA=_b(),$=wo(),Tb=class extends $.Factory{constructor(e){var n,r;super(e),this.handlers={ParenthesisExpression:function(i,s){this.tokens.push({type:$.TokenType.Text,value:"(",ref:i}),this.process(i.expression),this.tokens.push({type:$.TokenType.Text,value:")",ref:i})},Comment:function(i,s){},AssignmentStatement:function(i,s){let o=i.variable,a=i.init;this.process(o),this.tokens.push({type:$.TokenType.Text,value:"=",ref:i}),this.process(a)},MemberExpression:function(i,s){this.process(i.base),this.tokens.push({type:$.TokenType.Text,value:i.indexer,ref:i});let o=(0,aA.createExpressionString)(i.base);this.process(i.identifier,{usesNativeVar:o==="globals"||o==="locals"||o==="outer",isMember:!0})},FunctionDeclaration:function(i,s){if(i.parameters.length===0)this.tokens.push({type:$.TokenType.Text,value:"function",ref:{start:i.start,end:i.start}});else{this.tokens.push({type:$.TokenType.Text,value:"function(",ref:{start:i.start,end:i.start}}),this.isWithinArgument=!0;for(let o=0;o<i.parameters.length;o++){let a=i.parameters[o];this.process(a),o!==i.parameters.length-1&&this.tokens.push({type:$.TokenType.Text,value:",",ref:a})}this.isWithinArgument=!1,this.tokens.push({type:$.TokenType.Text,value:")",ref:{start:i.start,end:i.start}})}this.tokens.push({type:$.TokenType.EndOfLine,value:`
157
157
  `,ref:{start:i.start,end:i.start}});for(let o of i.body){let a=this.tokens.length;this.process(o),a<this.tokens.length&&this.tokens.push({type:$.TokenType.EndOfLine,value:`
158
158
  `,ref:{start:o.end,end:o.end}})}this.tokens.push({type:$.TokenType.Text,value:"end function",ref:{start:i.end,end:i.end}})},MapConstructorExpression:function(i,s){this.tokens.push({type:$.TokenType.Text,value:"{",ref:{start:i.start,end:i.start}});for(let o=0;o<i.fields.length;o++){let a=i.fields[o];this.process(a),o!==i.fields.length-1&&this.tokens.push({type:$.TokenType.Text,value:",",ref:a})}this.tokens.push({type:$.TokenType.Text,value:"}",ref:{start:i.end,end:i.end}})},MapKeyString:function(i,s){this.process(i.key),this.tokens.push({type:$.TokenType.Text,value:":",ref:i}),this.process(i.value)},Identifier:function(i,s){let o=i.name;if(this.disableNamespacesOptimization){this.tokens.push({type:$.TokenType.Text,value:o,ref:i});return}if(s.isMember){if(s.usesNativeVar){this.tokens.push({type:$.TokenType.Text,value:this.transformer.context.variables.get(o)||o,ref:i});return}this.tokens.push({type:$.TokenType.Text,value:o,ref:i});return}this.tokens.push({type:$.TokenType.Text,value:this.transformer.context.variables.get(o)||o,ref:i})},ReturnStatement:function(i,s){this.tokens.push({type:$.TokenType.Text,value:"return ",ref:i}),i.argument&&this.process(i.argument)},NumericLiteral:function(i,s){if(this.disableLiteralsOptimization){this.tokens.push({type:$.TokenType.Text,value:(i.negated?"-":"")+i.value.toString(),ref:i});return}let o=this.transformer.context.literals.get(i);if(!this.isWithinArgument&&o!==null&&o.namespace!==null){this.tokens.push({type:$.TokenType.Text,value:o.namespace,ref:i});return}this.tokens.push({type:$.TokenType.Text,value:(i.negated?"-":"")+i.value.toString(),ref:i})},WhileStatement:function(i,s){this.tokens.push({type:$.TokenType.Text,value:"while ",ref:{start:i.start,end:i.start}}),this.process(i.condition),this.tokens.push({type:$.TokenType.EndOfLine,value:`
159
159
  `,ref:{start:i.start,end:i.start}});for(let o of i.body){let a=this.tokens.length;this.process(o),a<this.tokens.length&&this.tokens.push({type:$.TokenType.EndOfLine,value:`
160
- `,ref:{start:o.end,end:o.end}})}this.tokens.push({type:$.TokenType.Text,value:"end while",ref:{start:i.end,end:i.end}})},CallExpression:function(i,s){let o=(0,aA.createExpressionString)(i.base),a=o==="globals.hasIndex"||o==="locals.hasIndex"||o==="outer.hasIndex",u;if(this.process(i.base),a){if(u=i.arguments[0],u.type==="StringLiteral"){let c=u.value.toString(),l=this.transformer.context.variables.get(c);this.tokens.push({type:$.TokenType.Text,value:'("'+(l??c)+'")',ref:{start:i.start,end:i.start}});return}this.tokens.push({type:$.TokenType.Text,value:"(",ref:{start:i.start,end:i.start}}),this.process(u),this.tokens.push({type:$.TokenType.Text,value:")",ref:{start:i.end,end:i.end}});return}if(i.arguments.length!==0){this.tokens.push({type:$.TokenType.Text,value:"(",ref:{start:i.start,end:i.start}});for(let c=0;c<i.arguments.length;c++){let l=i.arguments[c];this.process(l),c!==i.arguments.length-1&&this.tokens.push({type:$.TokenType.Text,value:",",ref:l})}this.tokens.push({type:$.TokenType.Text,value:")",ref:{start:i.end,end:i.end}})}},StringLiteral:function(i,s){if(this.disableLiteralsOptimization){this.tokens.push({type:$.TokenType.Text,value:i.raw.toString(),ref:i});return}let o=this.transformer.context.literals.get(i);if(!this.isWithinArgument&&o!==null&&o.namespace!==null){this.tokens.push({type:$.TokenType.Text,value:o.namespace,ref:i});return}this.tokens.push({type:$.TokenType.Text,value:i.raw.toString(),ref:i})},SliceExpression:function(i,s){this.process(i.base),this.tokens.push({type:$.TokenType.Text,value:"[",ref:i}),this.process(i.left),this.tokens.push({type:$.TokenType.Text,value:":",ref:i}),this.process(i.right),this.tokens.push({type:$.TokenType.Text,value:"]",ref:i})},IndexExpression:function(i,s){this.process(i.base),this.tokens.push({type:$.TokenType.Text,value:"[",ref:i}),this.process(i.index),this.tokens.push({type:$.TokenType.Text,value:"]",ref:i})},UnaryExpression:function(i,s){i.operator==="new"?this.tokens.push({type:$.TokenType.Text,value:i.operator+" ",ref:i}):this.tokens.push({type:$.TokenType.Text,value:i.operator,ref:i}),this.process(i.argument)},NegationExpression:function(i,s){this.tokens.push({type:$.TokenType.Text,value:"not ",ref:i}),this.process(i.argument)},FeatureEnvarExpression:function(i,s){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:$.TokenType.Text,value:`#envar ${i.name}`,ref:i});return}let o=this.transformer.environmentVariables.get(i.name);if(!o){this.tokens.push({type:$.TokenType.Text,value:"null",ref:i});return}this.tokens.push({type:$.TokenType.Text,value:`"${o}"`,ref:i})},FeatureDebuggerExpression:function(i,s){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:$.TokenType.Text,value:"debugger",ref:i});return}this.tokens.push({type:$.TokenType.Text,value:"//debugger",ref:i})},FeatureLineExpression:function(i,s){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:$.TokenType.Text,value:"#line",ref:i});return}this.tokens.push({type:$.TokenType.Text,value:`${i.start.line}`,ref:i})},FeatureFileExpression:function(i,s){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:$.TokenType.Text,value:"#filename",ref:i});return}this.tokens.push({type:$.TokenType.Text,value:`"${(0,bq.basename)(i.filename).replace(/"/g,'"')}"`,ref:i})},IfShortcutStatement:function(i,s){for(let o=0;o<i.clauses.length;o++){let a=i.clauses[o];this.process(a),o!==i.clauses.length-1&&this.tokens.push({type:$.TokenType.Text,value:" ",ref:i})}},IfShortcutClause:function(i,s){this.tokens.push({type:$.TokenType.Text,value:"if ",ref:i}),this.process(i.condition),this.tokens.push({type:$.TokenType.Text,value:" then ",ref:i}),this.process(i.body[0])},ElseifShortcutClause:function(i,s){this.tokens.push({type:$.TokenType.Text,value:"else if ",ref:i}),this.process(i.condition),this.tokens.push({type:$.TokenType.Text,value:" then ",ref:i}),this.process(i.body[0])},ElseShortcutClause:function(i,s){this.tokens.push({type:$.TokenType.Text,value:"else ",ref:i}),this.process(i.body[0])},NilLiteral:function(i,s){if(this.disableLiteralsOptimization){this.tokens.push({type:$.TokenType.Text,value:"null",ref:i});return}let o=this.transformer.context.literals.get(i);if(!this.isWithinArgument&&o!==null&&o.namespace!==null){this.tokens.push({type:$.TokenType.Text,value:o.namespace,ref:i});return}this.tokens.push({type:$.TokenType.Text,value:"null",ref:i})},ForGenericStatement:function(i,s){this.tokens.push({type:$.TokenType.Text,value:"for ",ref:{start:i.start,end:i.start}}),this.process(i.variable),this.tokens.push({type:$.TokenType.Text,value:" in ",ref:{start:i.start,end:i.start}}),this.process(i.iterator),this.tokens.push({type:$.TokenType.EndOfLine,value:`
160
+ `,ref:{start:o.end,end:o.end}})}this.tokens.push({type:$.TokenType.Text,value:"end while",ref:{start:i.end,end:i.end}})},CallExpression:function(i,s){let o=(0,aA.createExpressionString)(i.base),a=o==="globals.hasIndex"||o==="locals.hasIndex"||o==="outer.hasIndex",u;if(this.process(i.base),a){if(u=i.arguments[0],u.type==="StringLiteral"){let c=u.value.toString(),l=this.transformer.context.variables.get(c);this.tokens.push({type:$.TokenType.Text,value:'("'+(l??c)+'")',ref:{start:i.start,end:i.start}});return}this.tokens.push({type:$.TokenType.Text,value:"(",ref:{start:i.start,end:i.start}}),this.process(u),this.tokens.push({type:$.TokenType.Text,value:")",ref:{start:i.end,end:i.end}});return}if(i.arguments.length!==0){this.tokens.push({type:$.TokenType.Text,value:"(",ref:{start:i.start,end:i.start}});for(let c=0;c<i.arguments.length;c++){let l=i.arguments[c];this.process(l),c!==i.arguments.length-1&&this.tokens.push({type:$.TokenType.Text,value:",",ref:l})}this.tokens.push({type:$.TokenType.Text,value:")",ref:{start:i.end,end:i.end}})}},StringLiteral:function(i,s){if(this.disableLiteralsOptimization){this.tokens.push({type:$.TokenType.Text,value:i.raw.toString(),ref:i});return}let o=this.transformer.context.literals.get(i);if(!this.isWithinArgument&&o!==null&&o.namespace!==null){this.tokens.push({type:$.TokenType.Text,value:o.namespace,ref:i});return}this.tokens.push({type:$.TokenType.Text,value:i.raw.toString(),ref:i})},SliceExpression:function(i,s){this.process(i.base),this.tokens.push({type:$.TokenType.Text,value:"[",ref:i}),this.process(i.left),this.tokens.push({type:$.TokenType.Text,value:":",ref:i}),this.process(i.right),this.tokens.push({type:$.TokenType.Text,value:"]",ref:i})},IndexExpression:function(i,s){this.process(i.base),this.tokens.push({type:$.TokenType.Text,value:"[",ref:i}),this.process(i.index),this.tokens.push({type:$.TokenType.Text,value:"]",ref:i})},UnaryExpression:function(i,s){i.operator==="new"?this.tokens.push({type:$.TokenType.Text,value:i.operator+" ",ref:i}):this.tokens.push({type:$.TokenType.Text,value:i.operator,ref:i}),this.process(i.argument)},NegationExpression:function(i,s){this.tokens.push({type:$.TokenType.Text,value:"not ",ref:i}),this.process(i.argument)},FeatureEnvarExpression:function(i,s){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:$.TokenType.Text,value:`#envar ${i.name}`,ref:i});return}let o=this.transformer.environmentVariables.get(i.name);if(!o){this.tokens.push({type:$.TokenType.Text,value:"null",ref:i});return}this.tokens.push({type:$.TokenType.Text,value:`"${o}"`,ref:i})},FeatureDebuggerExpression:function(i,s){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:$.TokenType.Text,value:"debugger",ref:i});return}this.tokens.push({type:$.TokenType.Text,value:"//debugger",ref:i})},FeatureLineExpression:function(i,s){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:$.TokenType.Text,value:"#line",ref:i});return}this.tokens.push({type:$.TokenType.Text,value:`${i.start.line}`,ref:i})},FeatureFileExpression:function(i,s){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:$.TokenType.Text,value:"#filename",ref:i});return}this.tokens.push({type:$.TokenType.Text,value:`"${(0,vq.basename)(i.filename).replace(/"/g,'"')}"`,ref:i})},IfShortcutStatement:function(i,s){for(let o=0;o<i.clauses.length;o++){let a=i.clauses[o];this.process(a),o!==i.clauses.length-1&&this.tokens.push({type:$.TokenType.Text,value:" ",ref:i})}},IfShortcutClause:function(i,s){this.tokens.push({type:$.TokenType.Text,value:"if ",ref:i}),this.process(i.condition),this.tokens.push({type:$.TokenType.Text,value:" then ",ref:i}),this.process(i.body[0])},ElseifShortcutClause:function(i,s){this.tokens.push({type:$.TokenType.Text,value:"else if ",ref:i}),this.process(i.condition),this.tokens.push({type:$.TokenType.Text,value:" then ",ref:i}),this.process(i.body[0])},ElseShortcutClause:function(i,s){this.tokens.push({type:$.TokenType.Text,value:"else ",ref:i}),this.process(i.body[0])},NilLiteral:function(i,s){if(this.disableLiteralsOptimization){this.tokens.push({type:$.TokenType.Text,value:"null",ref:i});return}let o=this.transformer.context.literals.get(i);if(!this.isWithinArgument&&o!==null&&o.namespace!==null){this.tokens.push({type:$.TokenType.Text,value:o.namespace,ref:i});return}this.tokens.push({type:$.TokenType.Text,value:"null",ref:i})},ForGenericStatement:function(i,s){this.tokens.push({type:$.TokenType.Text,value:"for ",ref:{start:i.start,end:i.start}}),this.process(i.variable),this.tokens.push({type:$.TokenType.Text,value:" in ",ref:{start:i.start,end:i.start}}),this.process(i.iterator),this.tokens.push({type:$.TokenType.EndOfLine,value:`
161
161
  `,ref:{start:i.start,end:i.start}});for(let o of i.body){let a=this.tokens.length;this.process(o),a<this.tokens.length&&this.tokens.push({type:$.TokenType.EndOfLine,value:`
162
162
  `,ref:{start:o.end,end:o.end}})}this.tokens.push({type:$.TokenType.Text,value:"end for",ref:{start:i.end,end:i.end}})},IfStatement:function(i,s){for(let o of i.clauses)this.process(o);this.tokens.push({type:$.TokenType.Text,value:"end if",ref:{start:i.end,end:i.end}})},IfClause:function(i,s){this.tokens.push({type:$.TokenType.Text,value:"if ",ref:{start:i.start,end:i.start}}),this.process(i.condition),this.tokens.push({type:$.TokenType.Text,value:" then",ref:{start:i.start,end:i.start}}),this.tokens.push({type:$.TokenType.EndOfLine,value:`
163
163
  `,ref:{start:i.start,end:i.start}});for(let o of i.body){let a=this.tokens.length;this.process(o),a<this.tokens.length&&this.tokens.push({type:$.TokenType.EndOfLine,value:`
@@ -167,7 +167,7 @@ ${e}`;for(let a=0;a<this.details.length;++a){let u=a+1;o=`${o}
167
167
  `,ref:{start:i.start,end:i.start}});for(let o of i.body){let a=this.tokens.length;this.process(o),a<this.tokens.length&&this.tokens.push({type:$.TokenType.EndOfLine,value:`
168
168
  `,ref:{start:o.end,end:o.end}})}},ContinueStatement:function(i,s){this.tokens.push({type:$.TokenType.Text,value:"continue",ref:i})},BreakStatement:function(i,s){this.tokens.push({type:$.TokenType.Text,value:"break",ref:i})},CallStatement:function(i,s){this.process(i.expression)},FeatureInjectExpression:function(i,s){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:$.TokenType.Text,value:`#inject "${i.path}";`,ref:i});return}if(this.currentDependency===null){this.tokens.push({type:$.TokenType.Text,value:`#inject "${i.path}";`,ref:i});return}let o=this.currentDependency.injections.get(i.path);if(o==null){this.tokens.push({type:$.TokenType.Text,value:"null",ref:i});return}this.tokens.push({type:$.TokenType.Text,value:`"${o.replace(/"/g,'""')}"`,ref:i})},FeatureImportExpression:function(i,s){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:$.TokenType.Text,value:"#import ",ref:i}),this.process(i.name),this.tokens.push({type:$.TokenType.Text,value:` from "${i.path}";`,ref:i});return}if(!i.chunk){this.tokens.push({type:$.TokenType.Text,value:"#import ",ref:i}),this.process(i.name),this.tokens.push({type:$.TokenType.Text,value:` from "${i.path}";`,ref:i});return}if(this.process(i.name),this.disableNamespacesOptimization){this.tokens.push({type:$.TokenType.Text,value:`=__REQUIRE("${i.namespace}")`,ref:i});return}let o=this.transformer.context.variables.get("__REQUIRE");this.tokens.push({type:$.TokenType.Text,value:`=${o}("${i.namespace}")`,ref:i})},FeatureIncludeExpression:function(i,s){if(this.transformer.buildOptions.isDevMode){this.tokens.push({type:$.TokenType.Text,value:`#include "${i.path}";`,ref:i});return}if(!i.chunk){this.tokens.push({type:$.TokenType.Text,value:`#include "${i.path}";`,ref:i});return}this.process(i.chunk)},ListConstructorExpression:function(i,s){this.tokens.push({type:$.TokenType.Text,value:"[",ref:i});for(let o=0;o<i.fields.length;o++){let a=i.fields[o];this.process(a),o!==i.fields.length-1&&this.tokens.push({type:$.TokenType.Text,value:",",ref:a})}this.tokens.push({type:$.TokenType.Text,value:"]",ref:i})},ListValue:function(i,s){this.process(i.value)},BooleanLiteral:function(i,s){if(this.disableLiteralsOptimization){this.tokens.push({type:$.TokenType.Text,value:(i.negated?"-":"")+i.raw.toString(),ref:i});return}let o=this.transformer.context.literals.get(i);if(!this.isWithinArgument&&o!==null&&o.namespace!==null){this.tokens.push({type:$.TokenType.Text,value:o.namespace,ref:i});return}this.tokens.push({type:$.TokenType.Text,value:(i.negated?"-":"")+i.raw.toString(),ref:i})},EmptyExpression:function(i,s){this.tokens.push({type:$.TokenType.Text,value:"",ref:i})},IsaExpression:function(i,s){this.process(i.left),this.tokens.push({type:$.TokenType.Text,value:" "+i.operator+" ",ref:i}),this.process(i.right)},LogicalExpression:function(i,s){this.process(i.left),this.tokens.push({type:$.TokenType.Text,value:" "+i.operator+" ",ref:i}),this.process(i.right)},BinaryExpression:function(i,s){if(i.operator==="|"){this.tokens.push({type:$.TokenType.Text,value:"bitOr(",ref:i}),this.process(i.left),this.tokens.push({type:$.TokenType.Text,value:",",ref:i}),this.process(i.right),this.tokens.push({type:$.TokenType.Text,value:")",ref:i});return}else if(i.operator==="&"){this.tokens.push({type:$.TokenType.Text,value:"bitAnd(",ref:i}),this.process(i.left),this.tokens.push({type:$.TokenType.Text,value:",",ref:i}),this.process(i.right),this.tokens.push({type:$.TokenType.Text,value:")",ref:i});return}else if(i.operator==="<<"||i.operator===">>"||i.operator===">>>")throw new Error("Operators in binary expression are not supported");this.process(i.left),this.tokens.push({type:$.TokenType.Text,value:i.operator,ref:i}),this.process(i.right)},BinaryNegatedExpression:function(i,s){this.tokens.push({type:$.TokenType.Text,value:i.operator,ref:i}),this.process(i.argument)},ComparisonGroupExpression:function(i,s){this.process(i.expressions[0]);for(let o=0;o<i.operators.length;o++)this.tokens.push({type:$.TokenType.Text,value:i.operators[o],ref:i}),this.process(i.expressions[o+1])},Chunk:function(i,s){for(let o of i.body){let a=this.tokens.length;this.process(o),a<this.tokens.length&&this.tokens.push({type:$.TokenType.EndOfLine,value:`
169
169
  `,ref:{start:o.end,end:o.end}})}}},this.disableLiteralsOptimization=(n=e.buildOptions.disableLiteralsOptimization)!==null&&n!==void 0?n:!1,this.disableNamespacesOptimization=(r=e.buildOptions.disableNamespacesOptimization)!==null&&r!==void 0?r:!1,this.isWithinArgument=!1}transform(e,n){this._tokens=[],this._currentDependency=n,this.process(e);let r="";for(let i=0;i<this.tokens.length-1;i++){let s=this.tokens[i];if(s.type===$.TokenType.Text||s.type===$.TokenType.Comment)r+=s.value;else if(s.type===$.TokenType.EndOfLine)r+=`
170
- `;else throw new Error("Unknown token type!")}return r}generateOptimizations(){let e=this.transformer.context,n=Array.from(e.literals.getMapping().values()).filter(s=>s.namespace!=null),r=e.variables.get("globals"),i=[];return(!this.disableNamespacesOptimization||n.length>0)&&i.push(`globals.${r}=globals`),n.length>0&&i.push(...n.map(s=>`${r}.${s.namespace}=${s.literal.raw}`)),i}};Md.UglifyFactory=vb});var Ld=g(hs=>{"use strict";Object.defineProperty(hs,"__esModule",{value:!0});hs.getFactory=hs.BuildType=void 0;var vq=gb(),_q=yb(),Tq=_b(),iu;(function(t){t[t.DEFAULT=0]="DEFAULT",t[t.UGLIFY=1]="UGLIFY",t[t.BEAUTIFY=2]="BEAUTIFY"})(iu=hs.BuildType||(hs.BuildType={}));var Sq={[iu.DEFAULT]:_q.DefaultFactory,[iu.UGLIFY]:Tq.UglifyFactory,[iu.BEAUTIFY]:vq.BeautifyFactory};function kq(t=iu.DEFAULT){let e=Sq[t];if(!e)throw new Error("Unknown build type.");return e}hs.getFactory=kq});var Tb=g((uA,Nd)=>{(function(t){"use strict";function e(v,F){var C=(v&65535)+(F&65535),V=(v>>16)+(F>>16)+(C>>16);return V<<16|C&65535}function n(v,F){return v<<F|v>>>32-F}function r(v,F,C,V,ce,ye){return e(n(e(e(F,v),e(V,ye)),ce),C)}function i(v,F,C,V,ce,ye,K){return r(F&C|~F&V,v,F,ce,ye,K)}function s(v,F,C,V,ce,ye,K){return r(F&V|C&~V,v,F,ce,ye,K)}function o(v,F,C,V,ce,ye,K){return r(F^C^V,v,F,ce,ye,K)}function a(v,F,C,V,ce,ye,K){return r(C^(F|~V),v,F,ce,ye,K)}function u(v,F){v[F>>5]|=128<<F%32,v[(F+64>>>9<<4)+14]=F;var C,V,ce,ye,K,A=1732584193,D=-271733879,I=-1732584194,j=271733878;for(C=0;C<v.length;C+=16)V=A,ce=D,ye=I,K=j,A=i(A,D,I,j,v[C],7,-680876936),j=i(j,A,D,I,v[C+1],12,-389564586),I=i(I,j,A,D,v[C+2],17,606105819),D=i(D,I,j,A,v[C+3],22,-1044525330),A=i(A,D,I,j,v[C+4],7,-176418897),j=i(j,A,D,I,v[C+5],12,1200080426),I=i(I,j,A,D,v[C+6],17,-1473231341),D=i(D,I,j,A,v[C+7],22,-45705983),A=i(A,D,I,j,v[C+8],7,1770035416),j=i(j,A,D,I,v[C+9],12,-1958414417),I=i(I,j,A,D,v[C+10],17,-42063),D=i(D,I,j,A,v[C+11],22,-1990404162),A=i(A,D,I,j,v[C+12],7,1804603682),j=i(j,A,D,I,v[C+13],12,-40341101),I=i(I,j,A,D,v[C+14],17,-1502002290),D=i(D,I,j,A,v[C+15],22,1236535329),A=s(A,D,I,j,v[C+1],5,-165796510),j=s(j,A,D,I,v[C+6],9,-1069501632),I=s(I,j,A,D,v[C+11],14,643717713),D=s(D,I,j,A,v[C],20,-373897302),A=s(A,D,I,j,v[C+5],5,-701558691),j=s(j,A,D,I,v[C+10],9,38016083),I=s(I,j,A,D,v[C+15],14,-660478335),D=s(D,I,j,A,v[C+4],20,-405537848),A=s(A,D,I,j,v[C+9],5,568446438),j=s(j,A,D,I,v[C+14],9,-1019803690),I=s(I,j,A,D,v[C+3],14,-187363961),D=s(D,I,j,A,v[C+8],20,1163531501),A=s(A,D,I,j,v[C+13],5,-1444681467),j=s(j,A,D,I,v[C+2],9,-51403784),I=s(I,j,A,D,v[C+7],14,1735328473),D=s(D,I,j,A,v[C+12],20,-1926607734),A=o(A,D,I,j,v[C+5],4,-378558),j=o(j,A,D,I,v[C+8],11,-2022574463),I=o(I,j,A,D,v[C+11],16,1839030562),D=o(D,I,j,A,v[C+14],23,-35309556),A=o(A,D,I,j,v[C+1],4,-1530992060),j=o(j,A,D,I,v[C+4],11,1272893353),I=o(I,j,A,D,v[C+7],16,-155497632),D=o(D,I,j,A,v[C+10],23,-1094730640),A=o(A,D,I,j,v[C+13],4,681279174),j=o(j,A,D,I,v[C],11,-358537222),I=o(I,j,A,D,v[C+3],16,-722521979),D=o(D,I,j,A,v[C+6],23,76029189),A=o(A,D,I,j,v[C+9],4,-640364487),j=o(j,A,D,I,v[C+12],11,-421815835),I=o(I,j,A,D,v[C+15],16,530742520),D=o(D,I,j,A,v[C+2],23,-995338651),A=a(A,D,I,j,v[C],6,-198630844),j=a(j,A,D,I,v[C+7],10,1126891415),I=a(I,j,A,D,v[C+14],15,-1416354905),D=a(D,I,j,A,v[C+5],21,-57434055),A=a(A,D,I,j,v[C+12],6,1700485571),j=a(j,A,D,I,v[C+3],10,-1894986606),I=a(I,j,A,D,v[C+10],15,-1051523),D=a(D,I,j,A,v[C+1],21,-2054922799),A=a(A,D,I,j,v[C+8],6,1873313359),j=a(j,A,D,I,v[C+15],10,-30611744),I=a(I,j,A,D,v[C+6],15,-1560198380),D=a(D,I,j,A,v[C+13],21,1309151649),A=a(A,D,I,j,v[C+4],6,-145523070),j=a(j,A,D,I,v[C+11],10,-1120210379),I=a(I,j,A,D,v[C+2],15,718787259),D=a(D,I,j,A,v[C+9],21,-343485551),A=e(A,V),D=e(D,ce),I=e(I,ye),j=e(j,K);return[A,D,I,j]}function c(v){var F,C="",V=v.length*32;for(F=0;F<V;F+=8)C+=String.fromCharCode(v[F>>5]>>>F%32&255);return C}function l(v){var F,C=[];for(C[(v.length>>2)-1]=void 0,F=0;F<C.length;F+=1)C[F]=0;var V=v.length*8;for(F=0;F<V;F+=8)C[F>>5]|=(v.charCodeAt(F/8)&255)<<F%32;return C}function d(v){return c(u(l(v),v.length*8))}function p(v,F){var C,V=l(v),ce=[],ye=[],K;for(ce[15]=ye[15]=void 0,V.length>16&&(V=u(V,v.length*8)),C=0;C<16;C+=1)ce[C]=V[C]^909522486,ye[C]=V[C]^1549556828;return K=u(ce.concat(l(F)),512+F.length*8),c(u(ye.concat(K),640))}function b(v){var F="0123456789abcdef",C="",V,ce;for(ce=0;ce<v.length;ce+=1)V=v.charCodeAt(ce),C+=F.charAt(V>>>4&15)+F.charAt(V&15);return C}function _(v){return unescape(encodeURIComponent(v))}function E(v){return d(_(v))}function L(v){return b(E(v))}function M(v,F){return p(_(v),_(F))}function x(v,F){return b(M(v,F))}function k(v,F,C){return F?C?M(F,v):x(F,v):C?E(v):L(v)}typeof define=="function"&&define.amd?define(function(){return k}):typeof Nd=="object"&&Nd.exports?Nd.exports=k:t.md5=k})(uA)});var kb=g(Eo=>{"use strict";var xq=Eo&&Eo.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Eo,"__esModule",{value:!0});Eo.LiteralsMapper=void 0;var wq=xq(Tb()),Sb=class{constructor(e){let n=this;n.mapping=new Map,n.variableNamespacesGenerator=e}reset(){let e=this;return e.mapping=new Map,e}add(e){let n=this,r=e.raw.toString();if(!n.mapping.has(r))n.mapping.set(r,{literal:e,amount:1,length:r.length,namespace:null});else{let i=n.mapping.get(r),s=i.amount+1,o=i.length+r.length;i.amount=s,i.length=o,o>10&&s>2&&i.namespace==null&&(i.namespace=n.variableNamespacesGenerator.createNamespace((0,wq.default)(r)))}return n}get(e){let n=this,r=e.raw.toString();return n.mapping.has(r)?n.mapping.get(r):null}getMapping(){return this.mapping}};Eo.LiteralsMapper=Sb});var wb=g(qd=>{"use strict";Object.defineProperty(qd,"__esModule",{value:!0});qd.NamespaceGenerator=void 0;var xb=class{constructor(e){let n=this;n.buffer=[0],n.mapping=new Map,n.rmapping=new Map,n.forbidden=e.forbidden||[],n.characters=e.characters||null,n.defaultNamespaces=e.defaultNamespaces||[];for(let r of n.defaultNamespaces)n.createNamespace(r)}exclude(e){let n=this;return Array.isArray(e)?n.forbidden=n.forbidden.concat(e):n.forbidden.push(e),n}setCharset(e){let n=this;return n.characters=e,n}reset(){let e=this;return e.buffer=[0],e.mapping=new Map,e.rmapping=new Map,e}get(e){let n=this.mapping;return n.has(e)?n.get(e):null}increaseBuffer(e){let n=this,r=n.buffer,i=n.characters.length;e==null&&(e=r.length-1);let s=r[e];return s=s+1,r[e]=s,s===i&&(r[e]=0,e===0?r.push(0):n.increaseBuffer(e-1)),n}generateNamespace(){let e=this,n=e.buffer,r=e.characters,i=e.forbidden,s="",o=0,a;for(;o<n.length;)a=n[o],s=s+r[a],o===n.length-1&&e.increaseBuffer(),o=o+1;return i.indexOf(s)!==-1||e.mapping.has(s)?e.generateNamespace():s}createNamespace(e,n=!1){let r=this,i=r.mapping,s=r.rmapping;if(r.forbidden.indexOf(e)!==-1)return e;if(i.has(e)&&!n)return i.get(e);let a=r.generateNamespace();if(i.set(e,a),s.set(a,e),s.has(e)){let u=s.get(e);s.delete(e),a=r.createNamespace(u,!0)}return a}};qd.NamespaceGenerator=xb});var su=g(gs=>{"use strict";Object.defineProperty(gs,"__esModule",{value:!0});gs.Context=gs.ContextDataProperty=void 0;var Eq=kb(),cA=wb(),Aq;(function(t){t.ResourceDependencyMap="resourceDependencyMap",t.DependencyCallStack="dependencyCallStack"})(Aq=gs.ContextDataProperty||(gs.ContextDataProperty={}));var Eb=class{constructor(e){let n=this;n.modules=new cA.NamespaceGenerator({characters:e.modulesCharset}),n.variables=new cA.NamespaceGenerator({characters:e.variablesCharset,defaultNamespaces:["BACKSLASH_CODE","NEW_LINE_OPERATOR","MODULES","EXPORTED","__REQUIRE","MAIN","module","globals"],forbidden:["locals","outer","self","super","string","list","map","number","funcRef",...e.variablesExcluded||[]]}),n.literals=new Eq.LiteralsMapper(n.variables),n.data=new Map}createModuleNamespace(e){return this.modules.createNamespace(e)}getOrCreateData(e,n){let r=this;if(r.data.has(e))return r.data.get(e);let i=n();return r.data.set(e,i),i}set(e,n){return this.data.set(e,n),this}get(e){return this.data.get(e)}};gs.Context=Eb});var Ab=g(ou=>{"use strict";Object.defineProperty(ou,"__esModule",{value:!0});ou.DependencyType=void 0;var Oq;(function(t){t[t.Main=0]="Main",t[t.Import=1]="Import",t[t.Include=2]="Include"})(Oq=ou.DependencyType||(ou.DependencyType={}))});var Fd=g(jd=>{"use strict";Object.defineProperty(jd,"__esModule",{value:!0});jd.BuildError=void 0;var Ob=class extends Error{constructor(e,n){super(e),this.target=n.target,this.range=n.range}};jd.BuildError=Ob});var Bd=g($d=>{"use strict";Object.defineProperty($d,"__esModule",{value:!0});$d.fetchNamespaces=void 0;function Cq(t){let e=new Set(t.namespaces);return t.scopes.reduce((n,r)=>(r.namespaces.forEach(i=>e.add(i)),n),e),Array.from(e)}$d.fetchNamespaces=Cq});var Hd=g(Ud=>{"use strict";Object.defineProperty(Ud,"__esModule",{value:!0});Ud.merge=void 0;function Rq(t,e,n=1e4){if(e.length<=n){Array.prototype.push.apply(t,e);return}for(let r=0;r<e.length;r+=n)Array.prototype.push.apply(t,e.slice(r,r+n))}Ud.merge=Rq});var Db=g(Ri=>{"use strict";var Cb=Ri&&Ri.__awaiter||function(t,e,n,r){function i(s){return s instanceof n?s:new n(function(o){o(s)})}return new(n||(n=Promise))(function(s,o){function a(l){try{c(r.next(l))}catch(d){o(d)}}function u(l){try{c(r.throw(l))}catch(d){o(d)}}function c(l){l.done?s(l.value):i(l.value).then(a,u)}c((r=r.apply(t,e||[])).next())})},hA=Ri&&Ri.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Ri,"__esModule",{value:!0});Ri.Dependency=void 0;var lA=hA(Tb()),Pq=hA(require("events")),dA=Or(),Wd=su(),Rb=Ab(),fA=Fd(),Dq=Bd(),pA=Hd(),Pb=class t extends Pq.default{constructor(e){super();let n=this;n.target=e.target,n.id=(0,lA.default)(e.target),n.resourceHandler=e.resourceHandler,n.chunk=e.chunk,n.dependencies=new Set,n.injections=new Map,n.type=e.type||Rb.DependencyType.Main,n.context=e.context,n.ref=e.ref;let r=n.context.createModuleNamespace(n.id);n.context.getOrCreateData(Wd.ContextDataProperty.ResourceDependencyMap,()=>new Map).set(r,n),n.context.getOrCreateData(Wd.ContextDataProperty.DependencyCallStack,()=>[])}getId(){return this.id}getNamespace(){let e=this;return e.context.modules.get(e.id)}resolve(e,n,r){return Cb(this,void 0,void 0,function*(){let i=this,s=i.context,{modules:o}=s,a=s.get(Wd.ContextDataProperty.ResourceDependencyMap),u=i.resourceHandler,c=yield u.getTargetRelativeTo(i.target,e),l=(0,lA.default)(c),d=o.get(l);if(a.has(d))return a.get(d);if(!(yield u.has(c)))throw new Error("Dependency "+c+" does not exist...");let p=yield u.get(c);i.emit("parse-before",c);try{let _=new dA.Parser(p,{filename:c}).parseChunk(),E=new t({target:c,resourceHandler:u,chunk:_,type:n,context:s,ref:r});return i.emit("parse-after",E),E}catch(b){throw b instanceof fA.BuildError?b:new fA.BuildError(b.message,{target:c,range:b.range})}})}findInjections(){return Cb(this,void 0,void 0,function*(){let e=this,{injects:n}=e.chunk,r=new Map;for(let i of n){let s=yield e.resourceHandler.getTargetRelativeTo(e.target,i.path);if(!(yield e.resourceHandler.has(s)))throw new Error("Injection "+s+" does not exist...");let o=yield e.resourceHandler.get(s);r.set(i.path,o)}return e.injections=r,r})}findDependencies(){return Cb(this,void 0,void 0,function*(){let e=this,{imports:n,includes:r}=e.chunk,i=e.getNamespace(),s=e.context.get(Wd.ContextDataProperty.DependencyCallStack),o=[...(0,Dq.fetchNamespaces)(e.chunk)],a=[...e.chunk.literals],u=[];s.push(i);let c=[...n,...r];for(let d of c){let p=d instanceof dA.ASTFeatureIncludeExpression?Rb.DependencyType.Include:Rb.DependencyType.Import,b=yield e.resolve(d.path,p,d),_=b.getNamespace();if(s.includes(_))throw new Error(`Circular dependency from ${e.target} to ${b.target} detected.`);let E=b.chunk;d.chunk=E,d.namespace=_;let L=yield b.findDependencies();(0,pA.merge)(o,L.namespaces),(0,pA.merge)(a,L.literals),u.push(b)}yield this.findInjections();let l=new Set(u);return e.dependencies=l,s.pop(),{dependencies:l,namespaces:o,literals:a}})}};Ri.Dependency=Pb});var Kd=g(Gd=>{"use strict";Object.defineProperty(Gd,"__esModule",{value:!0});Gd.Transformer=void 0;var Ib=class{get factory(){return this._factory}get buildOptions(){return this._buildOptions}get context(){return this._context}get environmentVariables(){return this._environmentVariables}get resourceHandler(){return this._resourceHandler}constructor({buildOptions:e,factoryConstructor:n,context:r,environmentVariables:i,resourceHandler:s}){let o=this;o._buildOptions=e,o._context=r,o._environmentVariables=i,o._factory=new n(o),o._resourceHandler=s??null}transform(e,n=null){let r=this;if(e.type!=="Chunk")throw new Error("Expects chunk");return r._factory.transform(e,n)}};Gd.Transformer=Ib});var Xd=g(zd=>{"use strict";Object.defineProperty(zd,"__esModule",{value:!0});zd.generateCharsetMap=void 0;function Vd(t,e){let n="";for(;t<=e;)n=n+String.fromCharCode(t),t=t+1;return n}function Iq(t=!1){let e=Vd(65,90),n=Vd(97,122),r=Vd(48,57),i="_";return t&&(i=i+Vd(1e3,2e3)),{variables:e+n+i,modules:e+n+r+i}}zd.generateCharsetMap=Iq});var Lb=g(Pi=>{"use strict";Object.defineProperty(Pi,"__esModule",{value:!0});Pi.MAIN_BOILERPLATE=Pi.MODULE_BOILERPLATE=Pi.HEADER_BOILERPLATE=void 0;var Mb=Or();Pi.HEADER_BOILERPLATE=new Mb.Parser(`MODULES={}
170
+ `;else throw new Error("Unknown token type!")}return r}generateOptimizations(){let e=this.transformer.context,n=Array.from(e.literals.getMapping().values()).filter(s=>s.namespace!=null),r=e.variables.get("globals"),i=[];return(!this.disableNamespacesOptimization||n.length>0)&&i.push(`globals.${r}=globals`),n.length>0&&i.push(...n.map(s=>`${r}.${s.namespace}=${s.literal.raw}`)),i}};Md.UglifyFactory=Tb});var Ld=g(hs=>{"use strict";Object.defineProperty(hs,"__esModule",{value:!0});hs.getFactory=hs.BuildType=void 0;var _q=yb(),Tq=vb(),Sq=Sb(),iu;(function(t){t[t.DEFAULT=0]="DEFAULT",t[t.UGLIFY=1]="UGLIFY",t[t.BEAUTIFY=2]="BEAUTIFY"})(iu=hs.BuildType||(hs.BuildType={}));var kq={[iu.DEFAULT]:Tq.DefaultFactory,[iu.UGLIFY]:Sq.UglifyFactory,[iu.BEAUTIFY]:_q.BeautifyFactory};function xq(t=iu.DEFAULT){let e=kq[t];if(!e)throw new Error("Unknown build type.");return e}hs.getFactory=xq});var kb=g((uA,Nd)=>{(function(t){"use strict";function e(v,F){var C=(v&65535)+(F&65535),V=(v>>16)+(F>>16)+(C>>16);return V<<16|C&65535}function n(v,F){return v<<F|v>>>32-F}function r(v,F,C,V,ce,ye){return e(n(e(e(F,v),e(V,ye)),ce),C)}function i(v,F,C,V,ce,ye,K){return r(F&C|~F&V,v,F,ce,ye,K)}function s(v,F,C,V,ce,ye,K){return r(F&V|C&~V,v,F,ce,ye,K)}function o(v,F,C,V,ce,ye,K){return r(F^C^V,v,F,ce,ye,K)}function a(v,F,C,V,ce,ye,K){return r(C^(F|~V),v,F,ce,ye,K)}function u(v,F){v[F>>5]|=128<<F%32,v[(F+64>>>9<<4)+14]=F;var C,V,ce,ye,K,A=1732584193,D=-271733879,I=-1732584194,j=271733878;for(C=0;C<v.length;C+=16)V=A,ce=D,ye=I,K=j,A=i(A,D,I,j,v[C],7,-680876936),j=i(j,A,D,I,v[C+1],12,-389564586),I=i(I,j,A,D,v[C+2],17,606105819),D=i(D,I,j,A,v[C+3],22,-1044525330),A=i(A,D,I,j,v[C+4],7,-176418897),j=i(j,A,D,I,v[C+5],12,1200080426),I=i(I,j,A,D,v[C+6],17,-1473231341),D=i(D,I,j,A,v[C+7],22,-45705983),A=i(A,D,I,j,v[C+8],7,1770035416),j=i(j,A,D,I,v[C+9],12,-1958414417),I=i(I,j,A,D,v[C+10],17,-42063),D=i(D,I,j,A,v[C+11],22,-1990404162),A=i(A,D,I,j,v[C+12],7,1804603682),j=i(j,A,D,I,v[C+13],12,-40341101),I=i(I,j,A,D,v[C+14],17,-1502002290),D=i(D,I,j,A,v[C+15],22,1236535329),A=s(A,D,I,j,v[C+1],5,-165796510),j=s(j,A,D,I,v[C+6],9,-1069501632),I=s(I,j,A,D,v[C+11],14,643717713),D=s(D,I,j,A,v[C],20,-373897302),A=s(A,D,I,j,v[C+5],5,-701558691),j=s(j,A,D,I,v[C+10],9,38016083),I=s(I,j,A,D,v[C+15],14,-660478335),D=s(D,I,j,A,v[C+4],20,-405537848),A=s(A,D,I,j,v[C+9],5,568446438),j=s(j,A,D,I,v[C+14],9,-1019803690),I=s(I,j,A,D,v[C+3],14,-187363961),D=s(D,I,j,A,v[C+8],20,1163531501),A=s(A,D,I,j,v[C+13],5,-1444681467),j=s(j,A,D,I,v[C+2],9,-51403784),I=s(I,j,A,D,v[C+7],14,1735328473),D=s(D,I,j,A,v[C+12],20,-1926607734),A=o(A,D,I,j,v[C+5],4,-378558),j=o(j,A,D,I,v[C+8],11,-2022574463),I=o(I,j,A,D,v[C+11],16,1839030562),D=o(D,I,j,A,v[C+14],23,-35309556),A=o(A,D,I,j,v[C+1],4,-1530992060),j=o(j,A,D,I,v[C+4],11,1272893353),I=o(I,j,A,D,v[C+7],16,-155497632),D=o(D,I,j,A,v[C+10],23,-1094730640),A=o(A,D,I,j,v[C+13],4,681279174),j=o(j,A,D,I,v[C],11,-358537222),I=o(I,j,A,D,v[C+3],16,-722521979),D=o(D,I,j,A,v[C+6],23,76029189),A=o(A,D,I,j,v[C+9],4,-640364487),j=o(j,A,D,I,v[C+12],11,-421815835),I=o(I,j,A,D,v[C+15],16,530742520),D=o(D,I,j,A,v[C+2],23,-995338651),A=a(A,D,I,j,v[C],6,-198630844),j=a(j,A,D,I,v[C+7],10,1126891415),I=a(I,j,A,D,v[C+14],15,-1416354905),D=a(D,I,j,A,v[C+5],21,-57434055),A=a(A,D,I,j,v[C+12],6,1700485571),j=a(j,A,D,I,v[C+3],10,-1894986606),I=a(I,j,A,D,v[C+10],15,-1051523),D=a(D,I,j,A,v[C+1],21,-2054922799),A=a(A,D,I,j,v[C+8],6,1873313359),j=a(j,A,D,I,v[C+15],10,-30611744),I=a(I,j,A,D,v[C+6],15,-1560198380),D=a(D,I,j,A,v[C+13],21,1309151649),A=a(A,D,I,j,v[C+4],6,-145523070),j=a(j,A,D,I,v[C+11],10,-1120210379),I=a(I,j,A,D,v[C+2],15,718787259),D=a(D,I,j,A,v[C+9],21,-343485551),A=e(A,V),D=e(D,ce),I=e(I,ye),j=e(j,K);return[A,D,I,j]}function c(v){var F,C="",V=v.length*32;for(F=0;F<V;F+=8)C+=String.fromCharCode(v[F>>5]>>>F%32&255);return C}function l(v){var F,C=[];for(C[(v.length>>2)-1]=void 0,F=0;F<C.length;F+=1)C[F]=0;var V=v.length*8;for(F=0;F<V;F+=8)C[F>>5]|=(v.charCodeAt(F/8)&255)<<F%32;return C}function d(v){return c(u(l(v),v.length*8))}function p(v,F){var C,V=l(v),ce=[],ye=[],K;for(ce[15]=ye[15]=void 0,V.length>16&&(V=u(V,v.length*8)),C=0;C<16;C+=1)ce[C]=V[C]^909522486,ye[C]=V[C]^1549556828;return K=u(ce.concat(l(F)),512+F.length*8),c(u(ye.concat(K),640))}function b(v){var F="0123456789abcdef",C="",V,ce;for(ce=0;ce<v.length;ce+=1)V=v.charCodeAt(ce),C+=F.charAt(V>>>4&15)+F.charAt(V&15);return C}function _(v){return unescape(encodeURIComponent(v))}function E(v){return d(_(v))}function L(v){return b(E(v))}function M(v,F){return p(_(v),_(F))}function x(v,F){return b(M(v,F))}function k(v,F,C){return F?C?M(F,v):x(F,v):C?E(v):L(v)}typeof define=="function"&&define.amd?define(function(){return k}):typeof Nd=="object"&&Nd.exports?Nd.exports=k:t.md5=k})(uA)});var wb=g(Eo=>{"use strict";var wq=Eo&&Eo.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Eo,"__esModule",{value:!0});Eo.LiteralsMapper=void 0;var Eq=wq(kb()),xb=class{constructor(e){let n=this;n.mapping=new Map,n.variableNamespacesGenerator=e}reset(){let e=this;return e.mapping=new Map,e}add(e){let n=this,r=e.raw.toString();if(!n.mapping.has(r))n.mapping.set(r,{literal:e,amount:1,length:r.length,namespace:null});else{let i=n.mapping.get(r),s=i.amount+1,o=i.length+r.length;i.amount=s,i.length=o,o>10&&s>2&&i.namespace==null&&(i.namespace=n.variableNamespacesGenerator.createNamespace((0,Eq.default)(r)))}return n}get(e){let n=this,r=e.raw.toString();return n.mapping.has(r)?n.mapping.get(r):null}getMapping(){return this.mapping}};Eo.LiteralsMapper=xb});var Ab=g(qd=>{"use strict";Object.defineProperty(qd,"__esModule",{value:!0});qd.NamespaceGenerator=void 0;var Eb=class{constructor(e){let n=this;n.buffer=[0],n.mapping=new Map,n.rmapping=new Map,n.forbidden=e.forbidden||[],n.characters=e.characters||null,n.defaultNamespaces=e.defaultNamespaces||[];for(let r of n.defaultNamespaces)n.createNamespace(r)}exclude(e){let n=this;return Array.isArray(e)?n.forbidden=n.forbidden.concat(e):n.forbidden.push(e),n}setCharset(e){let n=this;return n.characters=e,n}reset(){let e=this;return e.buffer=[0],e.mapping=new Map,e.rmapping=new Map,e}get(e){let n=this.mapping;return n.has(e)?n.get(e):null}increaseBuffer(e){let n=this,r=n.buffer,i=n.characters.length;e==null&&(e=r.length-1);let s=r[e];return s=s+1,r[e]=s,s===i&&(r[e]=0,e===0?r.push(0):n.increaseBuffer(e-1)),n}generateNamespace(){let e=this,n=e.buffer,r=e.characters,i=e.forbidden,s="",o=0,a;for(;o<n.length;)a=n[o],s=s+r[a],o===n.length-1&&e.increaseBuffer(),o=o+1;return i.indexOf(s)!==-1||e.mapping.has(s)?e.generateNamespace():s}createNamespace(e,n=!1){let r=this,i=r.mapping,s=r.rmapping;if(r.forbidden.indexOf(e)!==-1)return e;if(i.has(e)&&!n)return i.get(e);let a=r.generateNamespace();if(i.set(e,a),s.set(a,e),s.has(e)){let u=s.get(e);s.delete(e),a=r.createNamespace(u,!0)}return a}};qd.NamespaceGenerator=Eb});var su=g(gs=>{"use strict";Object.defineProperty(gs,"__esModule",{value:!0});gs.Context=gs.ContextDataProperty=void 0;var Aq=wb(),cA=Ab(),Oq;(function(t){t.ResourceDependencyMap="resourceDependencyMap",t.DependencyCallStack="dependencyCallStack"})(Oq=gs.ContextDataProperty||(gs.ContextDataProperty={}));var Ob=class{constructor(e){let n=this;n.modules=new cA.NamespaceGenerator({characters:e.modulesCharset}),n.variables=new cA.NamespaceGenerator({characters:e.variablesCharset,defaultNamespaces:["BACKSLASH_CODE","NEW_LINE_OPERATOR","MODULES","EXPORTED","__REQUIRE","MAIN","module","globals"],forbidden:["locals","outer","self","super","string","list","map","number","funcRef",...e.variablesExcluded||[]]}),n.literals=new Aq.LiteralsMapper(n.variables),n.data=new Map}createModuleNamespace(e){return this.modules.createNamespace(e)}getOrCreateData(e,n){let r=this;if(r.data.has(e))return r.data.get(e);let i=n();return r.data.set(e,i),i}set(e,n){return this.data.set(e,n),this}get(e){return this.data.get(e)}};gs.Context=Ob});var Cb=g(ou=>{"use strict";Object.defineProperty(ou,"__esModule",{value:!0});ou.DependencyType=void 0;var Cq;(function(t){t[t.Main=0]="Main",t[t.Import=1]="Import",t[t.Include=2]="Include"})(Cq=ou.DependencyType||(ou.DependencyType={}))});var Fd=g(jd=>{"use strict";Object.defineProperty(jd,"__esModule",{value:!0});jd.BuildError=void 0;var Rb=class extends Error{constructor(e,n){super(e),this.target=n.target,this.range=n.range}};jd.BuildError=Rb});var Bd=g($d=>{"use strict";Object.defineProperty($d,"__esModule",{value:!0});$d.fetchNamespaces=void 0;function Rq(t){let e=new Set(t.namespaces);return t.scopes.reduce((n,r)=>(r.namespaces.forEach(i=>e.add(i)),n),e),Array.from(e)}$d.fetchNamespaces=Rq});var Hd=g(Ud=>{"use strict";Object.defineProperty(Ud,"__esModule",{value:!0});Ud.merge=void 0;function Pq(t,e,n=1e4){if(e.length<=n){Array.prototype.push.apply(t,e);return}for(let r=0;r<e.length;r+=n)Array.prototype.push.apply(t,e.slice(r,r+n))}Ud.merge=Pq});var Mb=g(Ri=>{"use strict";var Pb=Ri&&Ri.__awaiter||function(t,e,n,r){function i(s){return s instanceof n?s:new n(function(o){o(s)})}return new(n||(n=Promise))(function(s,o){function a(l){try{c(r.next(l))}catch(d){o(d)}}function u(l){try{c(r.throw(l))}catch(d){o(d)}}function c(l){l.done?s(l.value):i(l.value).then(a,u)}c((r=r.apply(t,e||[])).next())})},hA=Ri&&Ri.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Ri,"__esModule",{value:!0});Ri.Dependency=void 0;var lA=hA(kb()),Dq=hA(require("events")),dA=Or(),Wd=su(),Db=Cb(),fA=Fd(),Iq=Bd(),pA=Hd(),Ib=class t extends Dq.default{constructor(e){super();let n=this;n.target=e.target,n.id=(0,lA.default)(e.target),n.resourceHandler=e.resourceHandler,n.chunk=e.chunk,n.dependencies=new Set,n.injections=new Map,n.type=e.type||Db.DependencyType.Main,n.context=e.context,n.ref=e.ref;let r=n.context.createModuleNamespace(n.id);n.context.getOrCreateData(Wd.ContextDataProperty.ResourceDependencyMap,()=>new Map).set(r,n),n.context.getOrCreateData(Wd.ContextDataProperty.DependencyCallStack,()=>[])}getId(){return this.id}getNamespace(){let e=this;return e.context.modules.get(e.id)}resolve(e,n,r){return Pb(this,void 0,void 0,function*(){let i=this,s=i.context,{modules:o}=s,a=s.get(Wd.ContextDataProperty.ResourceDependencyMap),u=i.resourceHandler,c=yield u.getTargetRelativeTo(i.target,e),l=(0,lA.default)(c),d=o.get(l);if(a.has(d))return a.get(d);if(!(yield u.has(c)))throw new Error("Dependency "+c+" does not exist...");let p=yield u.get(c);i.emit("parse-before",c);try{let _=new dA.Parser(p,{filename:c}).parseChunk(),E=new t({target:c,resourceHandler:u,chunk:_,type:n,context:s,ref:r});return i.emit("parse-after",E),E}catch(b){throw b instanceof fA.BuildError?b:new fA.BuildError(b.message,{target:c,range:b.range})}})}findInjections(){return Pb(this,void 0,void 0,function*(){let e=this,{injects:n}=e.chunk,r=new Map;for(let i of n){let s=yield e.resourceHandler.getTargetRelativeTo(e.target,i.path);if(!(yield e.resourceHandler.has(s)))throw new Error("Injection "+s+" does not exist...");let o=yield e.resourceHandler.get(s);r.set(i.path,o)}return e.injections=r,r})}findDependencies(){return Pb(this,void 0,void 0,function*(){let e=this,{imports:n,includes:r}=e.chunk,i=e.getNamespace(),s=e.context.get(Wd.ContextDataProperty.DependencyCallStack),o=[...(0,Iq.fetchNamespaces)(e.chunk)],a=[...e.chunk.literals],u=[];s.push(i);let c=[...n,...r];for(let d of c){let p=d instanceof dA.ASTFeatureIncludeExpression?Db.DependencyType.Include:Db.DependencyType.Import,b=yield e.resolve(d.path,p,d),_=b.getNamespace();if(s.includes(_))throw new Error(`Circular dependency from ${e.target} to ${b.target} detected.`);let E=b.chunk;d.chunk=E,d.namespace=_;let L=yield b.findDependencies();(0,pA.merge)(o,L.namespaces),(0,pA.merge)(a,L.literals),u.push(b)}yield this.findInjections();let l=new Set(u);return e.dependencies=l,s.pop(),{dependencies:l,namespaces:o,literals:a}})}};Ri.Dependency=Ib});var Kd=g(Gd=>{"use strict";Object.defineProperty(Gd,"__esModule",{value:!0});Gd.Transformer=void 0;var Lb=class{get factory(){return this._factory}get buildOptions(){return this._buildOptions}get context(){return this._context}get environmentVariables(){return this._environmentVariables}get resourceHandler(){return this._resourceHandler}constructor({buildOptions:e,factoryConstructor:n,context:r,environmentVariables:i,resourceHandler:s}){let o=this;o._buildOptions=e,o._context=r,o._environmentVariables=i,o._factory=new n(o),o._resourceHandler=s??null}transform(e,n=null){let r=this;if(e.type!=="Chunk")throw new Error("Expects chunk");return r._factory.transform(e,n)}};Gd.Transformer=Lb});var Xd=g(zd=>{"use strict";Object.defineProperty(zd,"__esModule",{value:!0});zd.generateCharsetMap=void 0;function Vd(t,e){let n="";for(;t<=e;)n=n+String.fromCharCode(t),t=t+1;return n}function Mq(t=!1){let e=Vd(65,90),n=Vd(97,122),r=Vd(48,57),i="_";return t&&(i=i+Vd(1e3,2e3)),{variables:e+n+i,modules:e+n+r+i}}zd.generateCharsetMap=Mq});var qb=g(Pi=>{"use strict";Object.defineProperty(Pi,"__esModule",{value:!0});Pi.MAIN_BOILERPLATE=Pi.MODULE_BOILERPLATE=Pi.HEADER_BOILERPLATE=void 0;var Nb=Or();Pi.HEADER_BOILERPLATE=new Nb.Parser(`MODULES={}
171
171
  EXPORTED={}
172
172
  __REQUIRE=function(r)
173
173
  if (not MODULES.hasIndex(r)) then
@@ -176,7 +176,7 @@ ${e}`;for(let a=0;a<this.details.length;++a){let u=a+1;o=`${o}
176
176
  end if
177
177
  module=@MODULES[r]
178
178
  return @module(r).exports
179
- end function`).parseChunk();Pi.MODULE_BOILERPLATE=new Mb.Parser(`MODULES["$0"]=function(r)
179
+ end function`).parseChunk();Pi.MODULE_BOILERPLATE=new Nb.Parser(`MODULES["$0"]=function(r)
180
180
  module={}
181
181
  if (EXPORTED.hasIndex(r)) then
182
182
  module=EXPORTED[r]
@@ -186,11 +186,11 @@ ${e}`;for(let a=0;a<this.details.length;++a){let u=a+1;o=`${o}
186
186
  end if
187
187
  EXPORTED[r]=module
188
188
  return EXPORTED[r]
189
- end function`).parseChunk();Pi.MAIN_BOILERPLATE=new Mb.Parser('"$0"').parseChunk()});var Jd=g(Yd=>{"use strict";Object.defineProperty(Yd,"__esModule",{value:!0});Yd.OutputProcessor=void 0;var gA=Lb(),Mq=Hd(),Nb=class{constructor(e,n,{header:r=gA.HEADER_BOILERPLATE,main:i=gA.MAIN_BOILERPLATE}={}){this.context=e,this.transformer=n,this.processed=[],this.headerBoilerplate=this.transformer.transform(r),this.mainBoilerplate=this.transformer.transform(i)}addOptimizations(){return(0,Mq.merge)(this.processed,this.transformer.factory.generateOptimizations()),this}addHeader(){return this.processed.push(this.headerBoilerplate),this}addCode(e,n=!1){if(n){let r=this.mainBoilerplate.replace('"$0"',e);this.processed.push(r)}else this.processed.push(e);return this}build(){return this.processed.join(`
190
- `)}};Yd.OutputProcessor=Nb});var yA=g(Ao=>{"use strict";var Lq=Ao&&Ao.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Ao,"__esModule",{value:!0});Ao.DirectTranspiler=void 0;var Nq=Lq(require("events")),qq=Or(),mA=Ld(),jq=su(),Fq=Kd(),$q=Xd(),Bq=Bd(),Uq=Jd(),Hq=Object.prototype.hasOwnProperty,qb=class extends Nq.default{constructor(e){super();let n=this;n.code=e.code,n.obfuscation=Hq.call(e,"obfuscation")?e.obfuscation:!0,n.buildType=e.buildType||mA.BuildType.DEFAULT,n.buildOptions=e.buildOptions||{isDevMode:!1},n.environmentVariables=e.environmentVariables||new Map,n.excludedNamespaces=e.excludedNamespaces||[]}parse(){let e=this,n=(0,mA.getFactory)(e.buildType),i=new qq.Parser(e.code).parseChunk(),s=(0,Bq.fetchNamespaces)(i),o=[].concat(i.literals),a=(0,$q.generateCharsetMap)(e.obfuscation),u=new jq.Context({variablesCharset:a.variables,variablesExcluded:e.excludedNamespaces,modulesCharset:a.modules});new Set(s).forEach(b=>u.variables.createNamespace(b)),o.forEach(b=>u.literals.add(b));let l=new Fq.Transformer({buildOptions:e.buildOptions,factoryConstructor:n,context:u,environmentVariables:e.environmentVariables}),d=new Uq.OutputProcessor(u,l);d.addOptimizations();let p=l.transform(i);return d.addCode(p),d.build()}};Ao.DirectTranspiler=qb});var Fb=g(Qd=>{"use strict";Object.defineProperty(Qd,"__esModule",{value:!0});Qd.ResourceProvider=void 0;var jb=class{getHandler(){let e=require("fs"),n=require("path");return{getTargetRelativeTo:(r,i)=>{let s=n.resolve(r,".."),o=n.resolve(s,i);return Promise.resolve(e.existsSync(o)?o:o+".src")},has:r=>Promise.resolve(e.existsSync(r)),get:r=>Promise.resolve(e.readFileSync(r,"utf8")),resolve:r=>Promise.resolve(n.resolve(r))}}};Qd.ResourceProvider=jb});var Bb=g(Di=>{"use strict";var Wq=Di&&Di.__awaiter||function(t,e,n,r){function i(s){return s instanceof n?s:new n(function(o){o(s)})}return new(n||(n=Promise))(function(s,o){function a(l){try{c(r.next(l))}catch(d){o(d)}}function u(l){try{c(r.throw(l))}catch(d){o(d)}}function c(l){l.done?s(l.value):i(l.value).then(a,u)}c((r=r.apply(t,e||[])).next())})},Gq=Di&&Di.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Di,"__esModule",{value:!0});Di.Target=void 0;var Kq=Gq(require("events")),Vq=Or(),zq=Db(),bA=Fd(),$b=class extends Kq.default{constructor(e){super();let n=this;n.target=e.target,n.resourceHandler=e.resourceHandler,n.context=e.context}parse(){return Wq(this,void 0,void 0,function*(){let e=this,n=e.resourceHandler,r=yield n.resolve(e.target);if(!(yield n.has(r)))throw new Error("Target "+r+" does not exist...");let i=e.context,s=yield n.get(r);e.emit("parse-before",r);try{let a=new Vq.Parser(s,{filename:r}).parseChunk(),u=new zq.Dependency({target:r,resourceHandler:n,chunk:a,context:i}),{namespaces:c,literals:l}=yield u.findDependencies(),d=new Set(c);for(let p of d)i.variables.createNamespace(p);for(let p of l)i.literals.add(p);return{main:{chunk:a,dependency:u}}}catch(o){throw o instanceof bA.BuildError?o:new bA.BuildError(o.message,{target:this.target,range:o.range})}})}};Di.Target=$b});var _A=g(Oo=>{"use strict";var Xq=Oo&&Oo.__awaiter||function(t,e,n,r){function i(s){return s instanceof n?s:new n(function(o){o(s)})}return new(n||(n=Promise))(function(s,o){function a(l){try{c(r.next(l))}catch(d){o(d)}}function u(l){try{c(r.throw(l))}catch(d){o(d)}}function c(l){l.done?s(l.value):i(l.value).then(a,u)}c((r=r.apply(t,e||[])).next())})};Object.defineProperty(Oo,"__esModule",{value:!0});Oo.Transpiler=void 0;var Yq=Hb(),Jq=Lb(),vA=Ld(),Qq=su(),Zq=Fb(),ej=Bb(),tj=Kd(),nj=Xd(),rj=Jd(),ij=Object.prototype.hasOwnProperty,Ub=class{constructor(e){let n=this;n.target=e.target,n.resourceHandler=e.resourceHandler||new Zq.ResourceProvider().getHandler(),n.obfuscation=ij.call(e,"obfuscation")?e.obfuscation:!0;let r=(0,nj.generateCharsetMap)(n.obfuscation);n.context=new Qq.Context({variablesCharset:r.variables,variablesExcluded:e.excludedNamespaces,modulesCharset:r.modules}),n.buildType=e.buildType||vA.BuildType.DEFAULT,n.buildOptions=e.buildOptions||{isDevMode:!1},n.installer=e.installer||!1,n.environmentVariables=e.environmentVariables||new Map}parse(){return Xq(this,void 0,void 0,function*(){let e=this,n=(0,vA.getFactory)(e.buildType),r=e.context,s=yield new ej.Target({target:e.target,resourceHandler:e.resourceHandler,context:e.context}).parse(),o=new tj.Transformer({buildOptions:e.buildOptions,factoryConstructor:n,context:r,environmentVariables:e.environmentVariables,resourceHandler:e.resourceHandler}),a=s.main,u=o.transform(Jq.MODULE_BOILERPLATE),c=l=>{let d=r.modules.get(l.getId()),p={},b=0,_=function(M){let x=M.getNamespace();if(!(x in p)){if(x!==d&&M.type===Yq.DependencyType.Import){let k=o.transform(M.chunk,M);p[x]=u.replace('"$0"','"'+x+'"').replace('"$1"',k),b++}for(let k of M.dependencies)_(k)}};_(l);let E=new rj.OutputProcessor(r,o);E.addOptimizations(),b>0&&E.addHeader(),Object.keys(p).forEach(M=>E.addCode(p[M]));let L=o.transform(l.chunk,l);return E.addCode(L,!0),E.build()};return{[e.target]:c(a.dependency)}})}};Oo.Transpiler=Ub});var TA=g(Zd=>{"use strict";Object.defineProperty(Zd,"__esModule",{value:!0});Zd.unwrap=void 0;var sj=qe();function oj(t){for(;t instanceof sj.ASTParenthesisExpression;)t=t.expression;return t}Zd.unwrap=oj});var Hb=g(ee=>{"use strict";var SA=ee&&ee.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),aj=ee&&ee.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),uj=ee&&ee.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var n in t)n!=="default"&&Object.prototype.hasOwnProperty.call(t,n)&&SA(e,t,n);return aj(e,t),e},cj=ee&&ee.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&SA(e,t,n)};Object.defineProperty(ee,"__esModule",{value:!0});ee.merge=ee.unwrap=ee.Stack=ee.OutputProcessor=ee.NamespaceGenerator=ee.LiteralsMapper=ee.fetchNamespaces=ee.BuildError=ee.createExpressionString=ee.createExpressionHash=ee.generateCharsetMap=ee.DependencyType=ee.Transpiler=ee.Transformer=ee.Target=ee.DirectTranspiler=ee.Dependency=ee.ContextDataProperty=ee.Context=ee.UglifyFactory=ee.TokenType=ee.Factory=ee.DefaultFactory=ee.BeautifyUtils=ee.BeautifyContext=ee.BeautifyFactory=ee.getFactory=ee.BuildType=void 0;var kA=Ld();Object.defineProperty(ee,"BuildType",{enumerable:!0,get:function(){return kA.BuildType}});Object.defineProperty(ee,"getFactory",{enumerable:!0,get:function(){return kA.getFactory}});var lj=gb();Object.defineProperty(ee,"BeautifyFactory",{enumerable:!0,get:function(){return lj.BeautifyFactory}});var dj=fb();Object.defineProperty(ee,"BeautifyContext",{enumerable:!0,get:function(){return dj.BeautifyContext}});ee.BeautifyUtils=uj(pb());var fj=yb();Object.defineProperty(ee,"DefaultFactory",{enumerable:!0,get:function(){return fj.DefaultFactory}});var xA=wo();Object.defineProperty(ee,"Factory",{enumerable:!0,get:function(){return xA.Factory}});Object.defineProperty(ee,"TokenType",{enumerable:!0,get:function(){return xA.TokenType}});var pj=_b();Object.defineProperty(ee,"UglifyFactory",{enumerable:!0,get:function(){return pj.UglifyFactory}});var wA=su();Object.defineProperty(ee,"Context",{enumerable:!0,get:function(){return wA.Context}});Object.defineProperty(ee,"ContextDataProperty",{enumerable:!0,get:function(){return wA.ContextDataProperty}});var hj=Db();Object.defineProperty(ee,"Dependency",{enumerable:!0,get:function(){return hj.Dependency}});var gj=yA();Object.defineProperty(ee,"DirectTranspiler",{enumerable:!0,get:function(){return gj.DirectTranspiler}});cj(Fb(),ee);var mj=Bb();Object.defineProperty(ee,"Target",{enumerable:!0,get:function(){return mj.Target}});var yj=Kd();Object.defineProperty(ee,"Transformer",{enumerable:!0,get:function(){return yj.Transformer}});var bj=_A();Object.defineProperty(ee,"Transpiler",{enumerable:!0,get:function(){return bj.Transpiler}});var vj=Ab();Object.defineProperty(ee,"DependencyType",{enumerable:!0,get:function(){return vj.DependencyType}});var _j=Xd();Object.defineProperty(ee,"generateCharsetMap",{enumerable:!0,get:function(){return _j.generateCharsetMap}});var Tj=ab();Object.defineProperty(ee,"createExpressionHash",{enumerable:!0,get:function(){return Tj.createExpressionHash}});var Sj=bb();Object.defineProperty(ee,"createExpressionString",{enumerable:!0,get:function(){return Sj.createExpressionString}});var kj=Fd();Object.defineProperty(ee,"BuildError",{enumerable:!0,get:function(){return kj.BuildError}});var xj=Bd();Object.defineProperty(ee,"fetchNamespaces",{enumerable:!0,get:function(){return xj.fetchNamespaces}});var wj=kb();Object.defineProperty(ee,"LiteralsMapper",{enumerable:!0,get:function(){return wj.LiteralsMapper}});var Ej=wb();Object.defineProperty(ee,"NamespaceGenerator",{enumerable:!0,get:function(){return Ej.NamespaceGenerator}});var Aj=Jd();Object.defineProperty(ee,"OutputProcessor",{enumerable:!0,get:function(){return Aj.OutputProcessor}});var Oj=cb();Object.defineProperty(ee,"Stack",{enumerable:!0,get:function(){return Oj.Stack}});var Cj=TA();Object.defineProperty(ee,"unwrap",{enumerable:!0,get:function(){return Cj.unwrap}});var Rj=Hd();Object.defineProperty(ee,"merge",{enumerable:!0,get:function(){return Rj.merge}})});var AA=g(ef=>{"use strict";Object.defineProperty(ef,"__esModule",{value:!0});ef.activate=void 0;var EA=Hb();function Pj(t){async function e(n){try{let r=t.getConfiguration();return new EA.DirectTranspiler({code:n,buildType:EA.BuildType.BEAUTIFY,buildOptions:{isDevMode:!0,keepParentheses:r.transpiler.beautify.keepParentheses,indentation:r.transpiler.beautify.indentation==="Tab"?0:1,indentationSpaces:r.transpiler.beautify.indentationSpaces}}).parse()}catch{return null}}t.connection.onDocumentFormatting(async n=>{if(!t.getConfiguration().formatter)return;let r=await t.fs.getTextDocument(n.textDocument.uri);if(r==null)return;let i=await t.documentManager.getLatest(r),s=await e(r.getText());return s===null?[]:[{range:{start:{line:0,character:0},end:i.document.end},newText:s}]})}ef.activate=Pj});var tf=g((au,Wb)=>{(function(t,e){if(typeof au=="object"&&typeof Wb=="object")Wb.exports=e();else if(typeof define=="function"&&define.amd)define([],e);else{var n=e();for(var r in n)(typeof au=="object"?au:t)[r]=n[r]}})(au,()=>(()=>{"use strict";var t={470:i=>{function s(u){if(typeof u!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(u))}function o(u,c){for(var l,d="",p=0,b=-1,_=0,E=0;E<=u.length;++E){if(E<u.length)l=u.charCodeAt(E);else{if(l===47)break;l=47}if(l===47){if(!(b===E-1||_===1))if(b!==E-1&&_===2){if(d.length<2||p!==2||d.charCodeAt(d.length-1)!==46||d.charCodeAt(d.length-2)!==46){if(d.length>2){var L=d.lastIndexOf("/");if(L!==d.length-1){L===-1?(d="",p=0):p=(d=d.slice(0,L)).length-1-d.lastIndexOf("/"),b=E,_=0;continue}}else if(d.length===2||d.length===1){d="",p=0,b=E,_=0;continue}}c&&(d.length>0?d+="/..":d="..",p=2)}else d.length>0?d+="/"+u.slice(b+1,E):d=u.slice(b+1,E),p=E-b-1;b=E,_=0}else l===46&&_!==-1?++_:_=-1}return d}var a={resolve:function(){for(var u,c="",l=!1,d=arguments.length-1;d>=-1&&!l;d--){var p;d>=0?p=arguments[d]:(u===void 0&&(u=process.cwd()),p=u),s(p),p.length!==0&&(c=p+"/"+c,l=p.charCodeAt(0)===47)}return c=o(c,!l),l?c.length>0?"/"+c:"/":c.length>0?c:"."},normalize:function(u){if(s(u),u.length===0)return".";var c=u.charCodeAt(0)===47,l=u.charCodeAt(u.length-1)===47;return(u=o(u,!c)).length!==0||c||(u="."),u.length>0&&l&&(u+="/"),c?"/"+u:u},isAbsolute:function(u){return s(u),u.length>0&&u.charCodeAt(0)===47},join:function(){if(arguments.length===0)return".";for(var u,c=0;c<arguments.length;++c){var l=arguments[c];s(l),l.length>0&&(u===void 0?u=l:u+="/"+l)}return u===void 0?".":a.normalize(u)},relative:function(u,c){if(s(u),s(c),u===c||(u=a.resolve(u))===(c=a.resolve(c)))return"";for(var l=1;l<u.length&&u.charCodeAt(l)===47;++l);for(var d=u.length,p=d-l,b=1;b<c.length&&c.charCodeAt(b)===47;++b);for(var _=c.length-b,E=p<_?p:_,L=-1,M=0;M<=E;++M){if(M===E){if(_>E){if(c.charCodeAt(b+M)===47)return c.slice(b+M+1);if(M===0)return c.slice(b+M)}else p>E&&(u.charCodeAt(l+M)===47?L=M:M===0&&(L=0));break}var x=u.charCodeAt(l+M);if(x!==c.charCodeAt(b+M))break;x===47&&(L=M)}var k="";for(M=l+L+1;M<=d;++M)M!==d&&u.charCodeAt(M)!==47||(k.length===0?k+="..":k+="/..");return k.length>0?k+c.slice(b+L):(b+=L,c.charCodeAt(b)===47&&++b,c.slice(b))},_makeLong:function(u){return u},dirname:function(u){if(s(u),u.length===0)return".";for(var c=u.charCodeAt(0),l=c===47,d=-1,p=!0,b=u.length-1;b>=1;--b)if((c=u.charCodeAt(b))===47){if(!p){d=b;break}}else p=!1;return d===-1?l?"/":".":l&&d===1?"//":u.slice(0,d)},basename:function(u,c){if(c!==void 0&&typeof c!="string")throw new TypeError('"ext" argument must be a string');s(u);var l,d=0,p=-1,b=!0;if(c!==void 0&&c.length>0&&c.length<=u.length){if(c.length===u.length&&c===u)return"";var _=c.length-1,E=-1;for(l=u.length-1;l>=0;--l){var L=u.charCodeAt(l);if(L===47){if(!b){d=l+1;break}}else E===-1&&(b=!1,E=l+1),_>=0&&(L===c.charCodeAt(_)?--_==-1&&(p=l):(_=-1,p=E))}return d===p?p=E:p===-1&&(p=u.length),u.slice(d,p)}for(l=u.length-1;l>=0;--l)if(u.charCodeAt(l)===47){if(!b){d=l+1;break}}else p===-1&&(b=!1,p=l+1);return p===-1?"":u.slice(d,p)},extname:function(u){s(u);for(var c=-1,l=0,d=-1,p=!0,b=0,_=u.length-1;_>=0;--_){var E=u.charCodeAt(_);if(E!==47)d===-1&&(p=!1,d=_+1),E===46?c===-1?c=_:b!==1&&(b=1):c!==-1&&(b=-1);else if(!p){l=_+1;break}}return c===-1||d===-1||b===0||b===1&&c===d-1&&c===l+1?"":u.slice(c,d)},format:function(u){if(u===null||typeof u!="object")throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof u);return function(c,l){var d=l.dir||l.root,p=l.base||(l.name||"")+(l.ext||"");return d?d===l.root?d+p:d+"/"+p:p}(0,u)},parse:function(u){s(u);var c={root:"",dir:"",base:"",ext:"",name:""};if(u.length===0)return c;var l,d=u.charCodeAt(0),p=d===47;p?(c.root="/",l=1):l=0;for(var b=-1,_=0,E=-1,L=!0,M=u.length-1,x=0;M>=l;--M)if((d=u.charCodeAt(M))!==47)E===-1&&(L=!1,E=M+1),d===46?b===-1?b=M:x!==1&&(x=1):b!==-1&&(x=-1);else if(!L){_=M+1;break}return b===-1||E===-1||x===0||x===1&&b===E-1&&b===_+1?E!==-1&&(c.base=c.name=_===0&&p?u.slice(1,E):u.slice(_,E)):(_===0&&p?(c.name=u.slice(1,b),c.base=u.slice(1,E)):(c.name=u.slice(_,b),c.base=u.slice(_,E)),c.ext=u.slice(b,E)),_>0?c.dir=u.slice(0,_-1):p&&(c.dir="/"),c},sep:"/",delimiter:":",win32:null,posix:null};a.posix=a,i.exports=a},674:(i,s)=>{if(Object.defineProperty(s,"__esModule",{value:!0}),s.isWindows=void 0,typeof process=="object")s.isWindows=process.platform==="win32";else if(typeof navigator=="object"){let o=navigator.userAgent;s.isWindows=o.indexOf("Windows")>=0}},796:(i,s,o)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.uriToFsPath=s.URI=void 0;let a=o(674),u=/^\w[\w\d+.-]*$/,c=/^\//,l=/^\/\//;function d(K,A){if(!K.scheme&&A)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${K.authority}", path: "${K.path}", query: "${K.query}", fragment: "${K.fragment}"}`);if(K.scheme&&!u.test(K.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(K.path){if(K.authority){if(!c.test(K.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(l.test(K.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}let p="",b="/",_=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class E{static isUri(A){return A instanceof E||!!A&&typeof A.authority=="string"&&typeof A.fragment=="string"&&typeof A.path=="string"&&typeof A.query=="string"&&typeof A.scheme=="string"&&typeof A.fsPath=="string"&&typeof A.with=="function"&&typeof A.toString=="function"}scheme;authority;path;query;fragment;constructor(A,D,I,j,he,fe=!1){typeof A=="object"?(this.scheme=A.scheme||p,this.authority=A.authority||p,this.path=A.path||p,this.query=A.query||p,this.fragment=A.fragment||p):(this.scheme=function(Dt,mt){return Dt||mt?Dt:"file"}(A,fe),this.authority=D||p,this.path=function(Dt,mt){switch(Dt){case"https":case"http":case"file":mt?mt[0]!==b&&(mt=b+mt):mt=b}return mt}(this.scheme,I||p),this.query=j||p,this.fragment=he||p,d(this,fe))}get fsPath(){return F(this,!1)}with(A){if(!A)return this;let{scheme:D,authority:I,path:j,query:he,fragment:fe}=A;return D===void 0?D=this.scheme:D===null&&(D=p),I===void 0?I=this.authority:I===null&&(I=p),j===void 0?j=this.path:j===null&&(j=p),he===void 0?he=this.query:he===null&&(he=p),fe===void 0?fe=this.fragment:fe===null&&(fe=p),D===this.scheme&&I===this.authority&&j===this.path&&he===this.query&&fe===this.fragment?this:new M(D,I,j,he,fe)}static parse(A,D=!1){let I=_.exec(A);return I?new M(I[2]||p,ye(I[4]||p),ye(I[5]||p),ye(I[7]||p),ye(I[9]||p),D):new M(p,p,p,p,p)}static file(A){let D=p;if(a.isWindows&&(A=A.replace(/\\/g,b)),A[0]===b&&A[1]===b){let I=A.indexOf(b,2);I===-1?(D=A.substring(2),A=b):(D=A.substring(2,I),A=A.substring(I)||b)}return new M("file",D,A,p,p)}static from(A){let D=new M(A.scheme,A.authority,A.path,A.query,A.fragment);return d(D,!0),D}toString(A=!1){return C(this,A)}toJSON(){return this}static revive(A){if(A){if(A instanceof E)return A;{let D=new M(A);return D._formatted=A.external,D._fsPath=A._sep===L?A.fsPath:null,D}}return A}}s.URI=E;let L=a.isWindows?1:void 0;class M extends E{_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=F(this,!1)),this._fsPath}toString(A=!1){return A?C(this,!0):(this._formatted||(this._formatted=C(this,!1)),this._formatted)}toJSON(){let A={$mid:1};return this._fsPath&&(A.fsPath=this._fsPath,A._sep=L),this._formatted&&(A.external=this._formatted),this.path&&(A.path=this.path),this.scheme&&(A.scheme=this.scheme),this.authority&&(A.authority=this.authority),this.query&&(A.query=this.query),this.fragment&&(A.fragment=this.fragment),A}}let x={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 k(K,A,D){let I,j=-1;for(let he=0;he<K.length;he++){let fe=K.charCodeAt(he);if(fe>=97&&fe<=122||fe>=65&&fe<=90||fe>=48&&fe<=57||fe===45||fe===46||fe===95||fe===126||A&&fe===47||D&&fe===91||D&&fe===93||D&&fe===58)j!==-1&&(I+=encodeURIComponent(K.substring(j,he)),j=-1),I!==void 0&&(I+=K.charAt(he));else{I===void 0&&(I=K.substr(0,he));let Dt=x[fe];Dt!==void 0?(j!==-1&&(I+=encodeURIComponent(K.substring(j,he)),j=-1),I+=Dt):j===-1&&(j=he)}}return j!==-1&&(I+=encodeURIComponent(K.substring(j))),I!==void 0?I:K}function v(K){let A;for(let D=0;D<K.length;D++){let I=K.charCodeAt(D);I===35||I===63?(A===void 0&&(A=K.substr(0,D)),A+=x[I]):A!==void 0&&(A+=K[D])}return A!==void 0?A:K}function F(K,A){let D;return D=K.authority&&K.path.length>1&&K.scheme==="file"?`//${K.authority}${K.path}`:K.path.charCodeAt(0)===47&&(K.path.charCodeAt(1)>=65&&K.path.charCodeAt(1)<=90||K.path.charCodeAt(1)>=97&&K.path.charCodeAt(1)<=122)&&K.path.charCodeAt(2)===58?A?K.path.substr(1):K.path[1].toLowerCase()+K.path.substr(2):K.path,a.isWindows&&(D=D.replace(/\//g,"\\")),D}function C(K,A){let D=A?v:k,I="",{scheme:j,authority:he,path:fe,query:Dt,fragment:mt}=K;if(j&&(I+=j,I+=":"),(he||j==="file")&&(I+=b,I+=b),he){let $e=he.indexOf("@");if($e!==-1){let un=he.substr(0,$e);he=he.substr($e+1),$e=un.lastIndexOf(":"),$e===-1?I+=D(un,!1,!1):(I+=D(un.substr(0,$e),!1,!1),I+=":",I+=D(un.substr($e+1),!1,!0)),I+="@"}he=he.toLowerCase(),$e=he.lastIndexOf(":"),$e===-1?I+=D(he,!1,!0):(I+=D(he.substr(0,$e),!1,!0),I+=he.substr($e))}if(fe){if(fe.length>=3&&fe.charCodeAt(0)===47&&fe.charCodeAt(2)===58){let $e=fe.charCodeAt(1);$e>=65&&$e<=90&&(fe=`/${String.fromCharCode($e+32)}:${fe.substr(3)}`)}else if(fe.length>=2&&fe.charCodeAt(1)===58){let $e=fe.charCodeAt(0);$e>=65&&$e<=90&&(fe=`${String.fromCharCode($e+32)}:${fe.substr(2)}`)}I+=D(fe,!0,!1)}return Dt&&(I+="?",I+=D(Dt,!1,!1)),mt&&(I+="#",I+=A?mt:k(mt,!1,!1)),I}function V(K){try{return decodeURIComponent(K)}catch{return K.length>3?K.substr(0,3)+V(K.substr(3)):K}}s.uriToFsPath=F;let ce=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function ye(K){return K.match(ce)?K.replace(ce,A=>V(A)):K}},679:function(i,s,o){var a=this&&this.__createBinding||(Object.create?function(_,E,L,M){M===void 0&&(M=L);var x=Object.getOwnPropertyDescriptor(E,L);x&&!("get"in x?!E.__esModule:x.writable||x.configurable)||(x={enumerable:!0,get:function(){return E[L]}}),Object.defineProperty(_,M,x)}:function(_,E,L,M){M===void 0&&(M=L),_[M]=E[L]}),u=this&&this.__setModuleDefault||(Object.create?function(_,E){Object.defineProperty(_,"default",{enumerable:!0,value:E})}:function(_,E){_.default=E}),c=this&&this.__importStar||function(_){if(_&&_.__esModule)return _;var E={};if(_!=null)for(var L in _)L!=="default"&&Object.prototype.hasOwnProperty.call(_,L)&&a(E,_,L);return u(E,_),E};Object.defineProperty(s,"__esModule",{value:!0}),s.Utils=void 0;let l=c(o(470)),d=l.posix||l,p="/";var b;(function(_){_.joinPath=function(E,...L){return E.with({path:d.join(E.path,...L)})},_.resolvePath=function(E,...L){let M=E.path,x=!1;M[0]!==p&&(M=p+M,x=!0);let k=d.resolve(M,...L);return x&&k[0]===p&&!E.authority&&(k=k.substring(1)),E.with({path:k})},_.dirname=function(E){if(E.path.length===0||E.path===p)return E;let L=d.dirname(E.path);return L.length===1&&L.charCodeAt(0)===46&&(L=""),E.with({path:L})},_.basename=function(E){return d.basename(E.path)},_.extname=function(E){return d.extname(E.path)}})(b||(s.Utils=b={}))}},e={};function n(i){var s=e[i];if(s!==void 0)return s.exports;var o=e[i]={exports:{}};return t[i].call(o.exports,o,o.exports,n),o.exports}var r={};return(()=>{var i=r;Object.defineProperty(i,"__esModule",{value:!0}),i.Utils=i.URI=void 0;let s=n(796);Object.defineProperty(i,"URI",{enumerable:!0,get:function(){return s.URI}});let o=n(679);Object.defineProperty(i,"Utils",{enumerable:!0,get:function(){return o.Utils}})})(),r})())});var rf=g(nf=>{"use strict";Object.defineProperty(nf,"__esModule",{value:!0});nf.MarkdownString=void 0;var Gb=class{constructor(e=""){this.sanitize=!0,this.value=e}appendText(e){return this.value+=e.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&"),this}appendMarkdown(e){return this.value+=e,this}appendCodeblock(e,n){return this.value+="\n```",this.value+=e,this.value+=`
191
- `,this.value+=n,this.value+="\n```\n",this}toString(){return this.value}};nf.MarkdownString=Gb});var sf=g(Tt=>{"use strict";Object.defineProperty(Tt,"__esModule",{value:!0});Tt.createHover=Tt.createSignatureInfo=Tt.appendTooltipBody=Tt.appendTooltipHeader=Tt.createTooltipHeader=Tt.formatDefaultValue=Tt.formatTypes=void 0;var OA=Ws(),CA=rf();function Kb(t){return t==null?"":t.map(e=>e.toString().replace(",","\u066B")).join(" or ")}Tt.formatTypes=Kb;function RA(t){return typeof t=="string"?`"${t}"`:t.toString()}Tt.formatDefaultValue=RA;var Dj=(t,e)=>{let n=e.getArguments()||[],r=Kb(e.getReturns())||"null";if(n.length===0)return`(${t.kind}) ${t.label} (): ${r}`;let i=n.map(s=>`${s.getLabel()}${s.isOptional()?"?":""}: ${Kb(s.getTypes())}${s.getDefault()?` = ${RA(s.getDefault().value)}`:""}`).join(", ");return`(${t.kind}) ${t.label} (${i}): ${r}`};Tt.createTooltipHeader=Dj;var Ij=(t,e,n)=>{t.appendCodeblock(OA.LanguageId,(0,Tt.createTooltipHeader)(e,n)),t.appendMarkdown(`***
192
- `)};Tt.appendTooltipHeader=Ij;var Mj=(t,e)=>{let n=e.getExample()||[];t.appendMarkdown(e.getDescription()+`
189
+ end function`).parseChunk();Pi.MAIN_BOILERPLATE=new Nb.Parser('"$0"').parseChunk()});var Jd=g(Yd=>{"use strict";Object.defineProperty(Yd,"__esModule",{value:!0});Yd.OutputProcessor=void 0;var gA=qb(),Lq=Hd(),jb=class{constructor(e,n,{header:r=gA.HEADER_BOILERPLATE,main:i=gA.MAIN_BOILERPLATE}={}){this.context=e,this.transformer=n,this.processed=[],this.headerBoilerplate=this.transformer.transform(r),this.mainBoilerplate=this.transformer.transform(i)}addOptimizations(){return(0,Lq.merge)(this.processed,this.transformer.factory.generateOptimizations()),this}addHeader(){return this.processed.push(this.headerBoilerplate),this}addCode(e,n=!1){if(n){let r=this.mainBoilerplate.replace('"$0"',e);this.processed.push(r)}else this.processed.push(e);return this}build(){return this.processed.join(`
190
+ `)}};Yd.OutputProcessor=jb});var yA=g(Ao=>{"use strict";var Nq=Ao&&Ao.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Ao,"__esModule",{value:!0});Ao.DirectTranspiler=void 0;var qq=Nq(require("events")),jq=Or(),mA=Ld(),Fq=su(),$q=Kd(),Bq=Xd(),Uq=Bd(),Hq=Jd(),Wq=Object.prototype.hasOwnProperty,Fb=class extends qq.default{constructor(e){super();let n=this;n.code=e.code,n.obfuscation=Wq.call(e,"obfuscation")?e.obfuscation:!0,n.buildType=e.buildType||mA.BuildType.DEFAULT,n.buildOptions=e.buildOptions||{isDevMode:!1},n.environmentVariables=e.environmentVariables||new Map,n.excludedNamespaces=e.excludedNamespaces||[]}parse(){let e=this,n=(0,mA.getFactory)(e.buildType),i=new jq.Parser(e.code).parseChunk(),s=(0,Uq.fetchNamespaces)(i),o=[].concat(i.literals),a=(0,Bq.generateCharsetMap)(e.obfuscation),u=new Fq.Context({variablesCharset:a.variables,variablesExcluded:e.excludedNamespaces,modulesCharset:a.modules});new Set(s).forEach(b=>u.variables.createNamespace(b)),o.forEach(b=>u.literals.add(b));let l=new $q.Transformer({buildOptions:e.buildOptions,factoryConstructor:n,context:u,environmentVariables:e.environmentVariables}),d=new Hq.OutputProcessor(u,l);d.addOptimizations();let p=l.transform(i);return d.addCode(p),d.build()}};Ao.DirectTranspiler=Fb});var Bb=g(Qd=>{"use strict";Object.defineProperty(Qd,"__esModule",{value:!0});Qd.ResourceProvider=void 0;var $b=class{getHandler(){let e=require("fs"),n=require("path");return{getTargetRelativeTo:(r,i)=>{let s=n.resolve(r,".."),o=n.resolve(s,i);return Promise.resolve(e.existsSync(o)?o:o+".src")},has:r=>Promise.resolve(e.existsSync(r)),get:r=>Promise.resolve(e.readFileSync(r,"utf8")),resolve:r=>Promise.resolve(n.resolve(r))}}};Qd.ResourceProvider=$b});var Hb=g(Di=>{"use strict";var Gq=Di&&Di.__awaiter||function(t,e,n,r){function i(s){return s instanceof n?s:new n(function(o){o(s)})}return new(n||(n=Promise))(function(s,o){function a(l){try{c(r.next(l))}catch(d){o(d)}}function u(l){try{c(r.throw(l))}catch(d){o(d)}}function c(l){l.done?s(l.value):i(l.value).then(a,u)}c((r=r.apply(t,e||[])).next())})},Kq=Di&&Di.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Di,"__esModule",{value:!0});Di.Target=void 0;var Vq=Kq(require("events")),zq=Or(),Xq=Mb(),bA=Fd(),Ub=class extends Vq.default{constructor(e){super();let n=this;n.target=e.target,n.resourceHandler=e.resourceHandler,n.context=e.context}parse(){return Gq(this,void 0,void 0,function*(){let e=this,n=e.resourceHandler,r=yield n.resolve(e.target);if(!(yield n.has(r)))throw new Error("Target "+r+" does not exist...");let i=e.context,s=yield n.get(r);e.emit("parse-before",r);try{let a=new zq.Parser(s,{filename:r}).parseChunk(),u=new Xq.Dependency({target:r,resourceHandler:n,chunk:a,context:i}),{namespaces:c,literals:l}=yield u.findDependencies(),d=new Set(c);for(let p of d)i.variables.createNamespace(p);for(let p of l)i.literals.add(p);return{main:{chunk:a,dependency:u}}}catch(o){throw o instanceof bA.BuildError?o:new bA.BuildError(o.message,{target:this.target,range:o.range})}})}};Di.Target=Ub});var _A=g(Oo=>{"use strict";var Yq=Oo&&Oo.__awaiter||function(t,e,n,r){function i(s){return s instanceof n?s:new n(function(o){o(s)})}return new(n||(n=Promise))(function(s,o){function a(l){try{c(r.next(l))}catch(d){o(d)}}function u(l){try{c(r.throw(l))}catch(d){o(d)}}function c(l){l.done?s(l.value):i(l.value).then(a,u)}c((r=r.apply(t,e||[])).next())})};Object.defineProperty(Oo,"__esModule",{value:!0});Oo.Transpiler=void 0;var Jq=Gb(),Qq=qb(),vA=Ld(),Zq=su(),ej=Bb(),tj=Hb(),nj=Kd(),rj=Xd(),ij=Jd(),sj=Object.prototype.hasOwnProperty,Wb=class{constructor(e){let n=this;n.target=e.target,n.resourceHandler=e.resourceHandler||new ej.ResourceProvider().getHandler(),n.obfuscation=sj.call(e,"obfuscation")?e.obfuscation:!0;let r=(0,rj.generateCharsetMap)(n.obfuscation);n.context=new Zq.Context({variablesCharset:r.variables,variablesExcluded:e.excludedNamespaces,modulesCharset:r.modules}),n.buildType=e.buildType||vA.BuildType.DEFAULT,n.buildOptions=e.buildOptions||{isDevMode:!1},n.installer=e.installer||!1,n.environmentVariables=e.environmentVariables||new Map}parse(){return Yq(this,void 0,void 0,function*(){let e=this,n=(0,vA.getFactory)(e.buildType),r=e.context,s=yield new tj.Target({target:e.target,resourceHandler:e.resourceHandler,context:e.context}).parse(),o=new nj.Transformer({buildOptions:e.buildOptions,factoryConstructor:n,context:r,environmentVariables:e.environmentVariables,resourceHandler:e.resourceHandler}),a=s.main,u=o.transform(Qq.MODULE_BOILERPLATE),c=l=>{let d=r.modules.get(l.getId()),p={},b=0,_=function(M){let x=M.getNamespace();if(!(x in p)){if(x!==d&&M.type===Jq.DependencyType.Import){let k=o.transform(M.chunk,M);p[x]=u.replace('"$0"','"'+x+'"').replace('"$1"',k),b++}for(let k of M.dependencies)_(k)}};_(l);let E=new ij.OutputProcessor(r,o);E.addOptimizations(),b>0&&E.addHeader(),Object.keys(p).forEach(M=>E.addCode(p[M]));let L=o.transform(l.chunk,l);return E.addCode(L,!0),E.build()};return{[e.target]:c(a.dependency)}})}};Oo.Transpiler=Wb});var TA=g(Zd=>{"use strict";Object.defineProperty(Zd,"__esModule",{value:!0});Zd.unwrap=void 0;var oj=qe();function aj(t){for(;t instanceof oj.ASTParenthesisExpression;)t=t.expression;return t}Zd.unwrap=aj});var Gb=g(ee=>{"use strict";var SA=ee&&ee.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),uj=ee&&ee.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),cj=ee&&ee.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var n in t)n!=="default"&&Object.prototype.hasOwnProperty.call(t,n)&&SA(e,t,n);return uj(e,t),e},lj=ee&&ee.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&SA(e,t,n)};Object.defineProperty(ee,"__esModule",{value:!0});ee.merge=ee.unwrap=ee.Stack=ee.OutputProcessor=ee.NamespaceGenerator=ee.LiteralsMapper=ee.fetchNamespaces=ee.BuildError=ee.createExpressionString=ee.createExpressionHash=ee.generateCharsetMap=ee.DependencyType=ee.Transpiler=ee.Transformer=ee.Target=ee.DirectTranspiler=ee.Dependency=ee.ContextDataProperty=ee.Context=ee.UglifyFactory=ee.TokenType=ee.Factory=ee.DefaultFactory=ee.BeautifyUtils=ee.BeautifyContext=ee.BeautifyFactory=ee.getFactory=ee.BuildType=void 0;var kA=Ld();Object.defineProperty(ee,"BuildType",{enumerable:!0,get:function(){return kA.BuildType}});Object.defineProperty(ee,"getFactory",{enumerable:!0,get:function(){return kA.getFactory}});var dj=yb();Object.defineProperty(ee,"BeautifyFactory",{enumerable:!0,get:function(){return dj.BeautifyFactory}});var fj=hb();Object.defineProperty(ee,"BeautifyContext",{enumerable:!0,get:function(){return fj.BeautifyContext}});ee.BeautifyUtils=cj(gb());var pj=vb();Object.defineProperty(ee,"DefaultFactory",{enumerable:!0,get:function(){return pj.DefaultFactory}});var xA=wo();Object.defineProperty(ee,"Factory",{enumerable:!0,get:function(){return xA.Factory}});Object.defineProperty(ee,"TokenType",{enumerable:!0,get:function(){return xA.TokenType}});var hj=Sb();Object.defineProperty(ee,"UglifyFactory",{enumerable:!0,get:function(){return hj.UglifyFactory}});var wA=su();Object.defineProperty(ee,"Context",{enumerable:!0,get:function(){return wA.Context}});Object.defineProperty(ee,"ContextDataProperty",{enumerable:!0,get:function(){return wA.ContextDataProperty}});var gj=Mb();Object.defineProperty(ee,"Dependency",{enumerable:!0,get:function(){return gj.Dependency}});var mj=yA();Object.defineProperty(ee,"DirectTranspiler",{enumerable:!0,get:function(){return mj.DirectTranspiler}});lj(Bb(),ee);var yj=Hb();Object.defineProperty(ee,"Target",{enumerable:!0,get:function(){return yj.Target}});var bj=Kd();Object.defineProperty(ee,"Transformer",{enumerable:!0,get:function(){return bj.Transformer}});var vj=_A();Object.defineProperty(ee,"Transpiler",{enumerable:!0,get:function(){return vj.Transpiler}});var _j=Cb();Object.defineProperty(ee,"DependencyType",{enumerable:!0,get:function(){return _j.DependencyType}});var Tj=Xd();Object.defineProperty(ee,"generateCharsetMap",{enumerable:!0,get:function(){return Tj.generateCharsetMap}});var Sj=cb();Object.defineProperty(ee,"createExpressionHash",{enumerable:!0,get:function(){return Sj.createExpressionHash}});var kj=_b();Object.defineProperty(ee,"createExpressionString",{enumerable:!0,get:function(){return kj.createExpressionString}});var xj=Fd();Object.defineProperty(ee,"BuildError",{enumerable:!0,get:function(){return xj.BuildError}});var wj=Bd();Object.defineProperty(ee,"fetchNamespaces",{enumerable:!0,get:function(){return wj.fetchNamespaces}});var Ej=wb();Object.defineProperty(ee,"LiteralsMapper",{enumerable:!0,get:function(){return Ej.LiteralsMapper}});var Aj=Ab();Object.defineProperty(ee,"NamespaceGenerator",{enumerable:!0,get:function(){return Aj.NamespaceGenerator}});var Oj=Jd();Object.defineProperty(ee,"OutputProcessor",{enumerable:!0,get:function(){return Oj.OutputProcessor}});var Cj=db();Object.defineProperty(ee,"Stack",{enumerable:!0,get:function(){return Cj.Stack}});var Rj=TA();Object.defineProperty(ee,"unwrap",{enumerable:!0,get:function(){return Rj.unwrap}});var Pj=Hd();Object.defineProperty(ee,"merge",{enumerable:!0,get:function(){return Pj.merge}})});var AA=g(ef=>{"use strict";Object.defineProperty(ef,"__esModule",{value:!0});ef.activate=void 0;var EA=Gb();function Dj(t){async function e(n){try{let r=t.getConfiguration();return new EA.DirectTranspiler({code:n,buildType:EA.BuildType.BEAUTIFY,buildOptions:{isDevMode:!0,keepParentheses:r.transpiler.beautify.keepParentheses,indentation:r.transpiler.beautify.indentation==="Tab"?0:1,indentationSpaces:r.transpiler.beautify.indentationSpaces}}).parse()}catch{return null}}t.connection.onDocumentFormatting(async n=>{if(!t.getConfiguration().formatter)return;let r=await t.fs.getTextDocument(n.textDocument.uri);if(r==null)return;let i=await t.documentManager.getLatest(r),s=await e(r.getText());return s===null?[]:[{range:{start:{line:0,character:0},end:i.document.end},newText:s}]})}ef.activate=Dj});var tf=g((au,Kb)=>{(function(t,e){if(typeof au=="object"&&typeof Kb=="object")Kb.exports=e();else if(typeof define=="function"&&define.amd)define([],e);else{var n=e();for(var r in n)(typeof au=="object"?au:t)[r]=n[r]}})(au,()=>(()=>{"use strict";var t={470:i=>{function s(u){if(typeof u!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(u))}function o(u,c){for(var l,d="",p=0,b=-1,_=0,E=0;E<=u.length;++E){if(E<u.length)l=u.charCodeAt(E);else{if(l===47)break;l=47}if(l===47){if(!(b===E-1||_===1))if(b!==E-1&&_===2){if(d.length<2||p!==2||d.charCodeAt(d.length-1)!==46||d.charCodeAt(d.length-2)!==46){if(d.length>2){var L=d.lastIndexOf("/");if(L!==d.length-1){L===-1?(d="",p=0):p=(d=d.slice(0,L)).length-1-d.lastIndexOf("/"),b=E,_=0;continue}}else if(d.length===2||d.length===1){d="",p=0,b=E,_=0;continue}}c&&(d.length>0?d+="/..":d="..",p=2)}else d.length>0?d+="/"+u.slice(b+1,E):d=u.slice(b+1,E),p=E-b-1;b=E,_=0}else l===46&&_!==-1?++_:_=-1}return d}var a={resolve:function(){for(var u,c="",l=!1,d=arguments.length-1;d>=-1&&!l;d--){var p;d>=0?p=arguments[d]:(u===void 0&&(u=process.cwd()),p=u),s(p),p.length!==0&&(c=p+"/"+c,l=p.charCodeAt(0)===47)}return c=o(c,!l),l?c.length>0?"/"+c:"/":c.length>0?c:"."},normalize:function(u){if(s(u),u.length===0)return".";var c=u.charCodeAt(0)===47,l=u.charCodeAt(u.length-1)===47;return(u=o(u,!c)).length!==0||c||(u="."),u.length>0&&l&&(u+="/"),c?"/"+u:u},isAbsolute:function(u){return s(u),u.length>0&&u.charCodeAt(0)===47},join:function(){if(arguments.length===0)return".";for(var u,c=0;c<arguments.length;++c){var l=arguments[c];s(l),l.length>0&&(u===void 0?u=l:u+="/"+l)}return u===void 0?".":a.normalize(u)},relative:function(u,c){if(s(u),s(c),u===c||(u=a.resolve(u))===(c=a.resolve(c)))return"";for(var l=1;l<u.length&&u.charCodeAt(l)===47;++l);for(var d=u.length,p=d-l,b=1;b<c.length&&c.charCodeAt(b)===47;++b);for(var _=c.length-b,E=p<_?p:_,L=-1,M=0;M<=E;++M){if(M===E){if(_>E){if(c.charCodeAt(b+M)===47)return c.slice(b+M+1);if(M===0)return c.slice(b+M)}else p>E&&(u.charCodeAt(l+M)===47?L=M:M===0&&(L=0));break}var x=u.charCodeAt(l+M);if(x!==c.charCodeAt(b+M))break;x===47&&(L=M)}var k="";for(M=l+L+1;M<=d;++M)M!==d&&u.charCodeAt(M)!==47||(k.length===0?k+="..":k+="/..");return k.length>0?k+c.slice(b+L):(b+=L,c.charCodeAt(b)===47&&++b,c.slice(b))},_makeLong:function(u){return u},dirname:function(u){if(s(u),u.length===0)return".";for(var c=u.charCodeAt(0),l=c===47,d=-1,p=!0,b=u.length-1;b>=1;--b)if((c=u.charCodeAt(b))===47){if(!p){d=b;break}}else p=!1;return d===-1?l?"/":".":l&&d===1?"//":u.slice(0,d)},basename:function(u,c){if(c!==void 0&&typeof c!="string")throw new TypeError('"ext" argument must be a string');s(u);var l,d=0,p=-1,b=!0;if(c!==void 0&&c.length>0&&c.length<=u.length){if(c.length===u.length&&c===u)return"";var _=c.length-1,E=-1;for(l=u.length-1;l>=0;--l){var L=u.charCodeAt(l);if(L===47){if(!b){d=l+1;break}}else E===-1&&(b=!1,E=l+1),_>=0&&(L===c.charCodeAt(_)?--_==-1&&(p=l):(_=-1,p=E))}return d===p?p=E:p===-1&&(p=u.length),u.slice(d,p)}for(l=u.length-1;l>=0;--l)if(u.charCodeAt(l)===47){if(!b){d=l+1;break}}else p===-1&&(b=!1,p=l+1);return p===-1?"":u.slice(d,p)},extname:function(u){s(u);for(var c=-1,l=0,d=-1,p=!0,b=0,_=u.length-1;_>=0;--_){var E=u.charCodeAt(_);if(E!==47)d===-1&&(p=!1,d=_+1),E===46?c===-1?c=_:b!==1&&(b=1):c!==-1&&(b=-1);else if(!p){l=_+1;break}}return c===-1||d===-1||b===0||b===1&&c===d-1&&c===l+1?"":u.slice(c,d)},format:function(u){if(u===null||typeof u!="object")throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof u);return function(c,l){var d=l.dir||l.root,p=l.base||(l.name||"")+(l.ext||"");return d?d===l.root?d+p:d+"/"+p:p}(0,u)},parse:function(u){s(u);var c={root:"",dir:"",base:"",ext:"",name:""};if(u.length===0)return c;var l,d=u.charCodeAt(0),p=d===47;p?(c.root="/",l=1):l=0;for(var b=-1,_=0,E=-1,L=!0,M=u.length-1,x=0;M>=l;--M)if((d=u.charCodeAt(M))!==47)E===-1&&(L=!1,E=M+1),d===46?b===-1?b=M:x!==1&&(x=1):b!==-1&&(x=-1);else if(!L){_=M+1;break}return b===-1||E===-1||x===0||x===1&&b===E-1&&b===_+1?E!==-1&&(c.base=c.name=_===0&&p?u.slice(1,E):u.slice(_,E)):(_===0&&p?(c.name=u.slice(1,b),c.base=u.slice(1,E)):(c.name=u.slice(_,b),c.base=u.slice(_,E)),c.ext=u.slice(b,E)),_>0?c.dir=u.slice(0,_-1):p&&(c.dir="/"),c},sep:"/",delimiter:":",win32:null,posix:null};a.posix=a,i.exports=a},674:(i,s)=>{if(Object.defineProperty(s,"__esModule",{value:!0}),s.isWindows=void 0,typeof process=="object")s.isWindows=process.platform==="win32";else if(typeof navigator=="object"){let o=navigator.userAgent;s.isWindows=o.indexOf("Windows")>=0}},796:(i,s,o)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.uriToFsPath=s.URI=void 0;let a=o(674),u=/^\w[\w\d+.-]*$/,c=/^\//,l=/^\/\//;function d(K,A){if(!K.scheme&&A)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${K.authority}", path: "${K.path}", query: "${K.query}", fragment: "${K.fragment}"}`);if(K.scheme&&!u.test(K.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(K.path){if(K.authority){if(!c.test(K.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(l.test(K.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}let p="",b="/",_=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class E{static isUri(A){return A instanceof E||!!A&&typeof A.authority=="string"&&typeof A.fragment=="string"&&typeof A.path=="string"&&typeof A.query=="string"&&typeof A.scheme=="string"&&typeof A.fsPath=="string"&&typeof A.with=="function"&&typeof A.toString=="function"}scheme;authority;path;query;fragment;constructor(A,D,I,j,he,fe=!1){typeof A=="object"?(this.scheme=A.scheme||p,this.authority=A.authority||p,this.path=A.path||p,this.query=A.query||p,this.fragment=A.fragment||p):(this.scheme=function(Dt,mt){return Dt||mt?Dt:"file"}(A,fe),this.authority=D||p,this.path=function(Dt,mt){switch(Dt){case"https":case"http":case"file":mt?mt[0]!==b&&(mt=b+mt):mt=b}return mt}(this.scheme,I||p),this.query=j||p,this.fragment=he||p,d(this,fe))}get fsPath(){return F(this,!1)}with(A){if(!A)return this;let{scheme:D,authority:I,path:j,query:he,fragment:fe}=A;return D===void 0?D=this.scheme:D===null&&(D=p),I===void 0?I=this.authority:I===null&&(I=p),j===void 0?j=this.path:j===null&&(j=p),he===void 0?he=this.query:he===null&&(he=p),fe===void 0?fe=this.fragment:fe===null&&(fe=p),D===this.scheme&&I===this.authority&&j===this.path&&he===this.query&&fe===this.fragment?this:new M(D,I,j,he,fe)}static parse(A,D=!1){let I=_.exec(A);return I?new M(I[2]||p,ye(I[4]||p),ye(I[5]||p),ye(I[7]||p),ye(I[9]||p),D):new M(p,p,p,p,p)}static file(A){let D=p;if(a.isWindows&&(A=A.replace(/\\/g,b)),A[0]===b&&A[1]===b){let I=A.indexOf(b,2);I===-1?(D=A.substring(2),A=b):(D=A.substring(2,I),A=A.substring(I)||b)}return new M("file",D,A,p,p)}static from(A){let D=new M(A.scheme,A.authority,A.path,A.query,A.fragment);return d(D,!0),D}toString(A=!1){return C(this,A)}toJSON(){return this}static revive(A){if(A){if(A instanceof E)return A;{let D=new M(A);return D._formatted=A.external,D._fsPath=A._sep===L?A.fsPath:null,D}}return A}}s.URI=E;let L=a.isWindows?1:void 0;class M extends E{_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=F(this,!1)),this._fsPath}toString(A=!1){return A?C(this,!0):(this._formatted||(this._formatted=C(this,!1)),this._formatted)}toJSON(){let A={$mid:1};return this._fsPath&&(A.fsPath=this._fsPath,A._sep=L),this._formatted&&(A.external=this._formatted),this.path&&(A.path=this.path),this.scheme&&(A.scheme=this.scheme),this.authority&&(A.authority=this.authority),this.query&&(A.query=this.query),this.fragment&&(A.fragment=this.fragment),A}}let x={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 k(K,A,D){let I,j=-1;for(let he=0;he<K.length;he++){let fe=K.charCodeAt(he);if(fe>=97&&fe<=122||fe>=65&&fe<=90||fe>=48&&fe<=57||fe===45||fe===46||fe===95||fe===126||A&&fe===47||D&&fe===91||D&&fe===93||D&&fe===58)j!==-1&&(I+=encodeURIComponent(K.substring(j,he)),j=-1),I!==void 0&&(I+=K.charAt(he));else{I===void 0&&(I=K.substr(0,he));let Dt=x[fe];Dt!==void 0?(j!==-1&&(I+=encodeURIComponent(K.substring(j,he)),j=-1),I+=Dt):j===-1&&(j=he)}}return j!==-1&&(I+=encodeURIComponent(K.substring(j))),I!==void 0?I:K}function v(K){let A;for(let D=0;D<K.length;D++){let I=K.charCodeAt(D);I===35||I===63?(A===void 0&&(A=K.substr(0,D)),A+=x[I]):A!==void 0&&(A+=K[D])}return A!==void 0?A:K}function F(K,A){let D;return D=K.authority&&K.path.length>1&&K.scheme==="file"?`//${K.authority}${K.path}`:K.path.charCodeAt(0)===47&&(K.path.charCodeAt(1)>=65&&K.path.charCodeAt(1)<=90||K.path.charCodeAt(1)>=97&&K.path.charCodeAt(1)<=122)&&K.path.charCodeAt(2)===58?A?K.path.substr(1):K.path[1].toLowerCase()+K.path.substr(2):K.path,a.isWindows&&(D=D.replace(/\//g,"\\")),D}function C(K,A){let D=A?v:k,I="",{scheme:j,authority:he,path:fe,query:Dt,fragment:mt}=K;if(j&&(I+=j,I+=":"),(he||j==="file")&&(I+=b,I+=b),he){let $e=he.indexOf("@");if($e!==-1){let un=he.substr(0,$e);he=he.substr($e+1),$e=un.lastIndexOf(":"),$e===-1?I+=D(un,!1,!1):(I+=D(un.substr(0,$e),!1,!1),I+=":",I+=D(un.substr($e+1),!1,!0)),I+="@"}he=he.toLowerCase(),$e=he.lastIndexOf(":"),$e===-1?I+=D(he,!1,!0):(I+=D(he.substr(0,$e),!1,!0),I+=he.substr($e))}if(fe){if(fe.length>=3&&fe.charCodeAt(0)===47&&fe.charCodeAt(2)===58){let $e=fe.charCodeAt(1);$e>=65&&$e<=90&&(fe=`/${String.fromCharCode($e+32)}:${fe.substr(3)}`)}else if(fe.length>=2&&fe.charCodeAt(1)===58){let $e=fe.charCodeAt(0);$e>=65&&$e<=90&&(fe=`${String.fromCharCode($e+32)}:${fe.substr(2)}`)}I+=D(fe,!0,!1)}return Dt&&(I+="?",I+=D(Dt,!1,!1)),mt&&(I+="#",I+=A?mt:k(mt,!1,!1)),I}function V(K){try{return decodeURIComponent(K)}catch{return K.length>3?K.substr(0,3)+V(K.substr(3)):K}}s.uriToFsPath=F;let ce=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function ye(K){return K.match(ce)?K.replace(ce,A=>V(A)):K}},679:function(i,s,o){var a=this&&this.__createBinding||(Object.create?function(_,E,L,M){M===void 0&&(M=L);var x=Object.getOwnPropertyDescriptor(E,L);x&&!("get"in x?!E.__esModule:x.writable||x.configurable)||(x={enumerable:!0,get:function(){return E[L]}}),Object.defineProperty(_,M,x)}:function(_,E,L,M){M===void 0&&(M=L),_[M]=E[L]}),u=this&&this.__setModuleDefault||(Object.create?function(_,E){Object.defineProperty(_,"default",{enumerable:!0,value:E})}:function(_,E){_.default=E}),c=this&&this.__importStar||function(_){if(_&&_.__esModule)return _;var E={};if(_!=null)for(var L in _)L!=="default"&&Object.prototype.hasOwnProperty.call(_,L)&&a(E,_,L);return u(E,_),E};Object.defineProperty(s,"__esModule",{value:!0}),s.Utils=void 0;let l=c(o(470)),d=l.posix||l,p="/";var b;(function(_){_.joinPath=function(E,...L){return E.with({path:d.join(E.path,...L)})},_.resolvePath=function(E,...L){let M=E.path,x=!1;M[0]!==p&&(M=p+M,x=!0);let k=d.resolve(M,...L);return x&&k[0]===p&&!E.authority&&(k=k.substring(1)),E.with({path:k})},_.dirname=function(E){if(E.path.length===0||E.path===p)return E;let L=d.dirname(E.path);return L.length===1&&L.charCodeAt(0)===46&&(L=""),E.with({path:L})},_.basename=function(E){return d.basename(E.path)},_.extname=function(E){return d.extname(E.path)}})(b||(s.Utils=b={}))}},e={};function n(i){var s=e[i];if(s!==void 0)return s.exports;var o=e[i]={exports:{}};return t[i].call(o.exports,o,o.exports,n),o.exports}var r={};return(()=>{var i=r;Object.defineProperty(i,"__esModule",{value:!0}),i.Utils=i.URI=void 0;let s=n(796);Object.defineProperty(i,"URI",{enumerable:!0,get:function(){return s.URI}});let o=n(679);Object.defineProperty(i,"Utils",{enumerable:!0,get:function(){return o.Utils}})})(),r})())});var rf=g(nf=>{"use strict";Object.defineProperty(nf,"__esModule",{value:!0});nf.MarkdownString=void 0;var Vb=class{constructor(e=""){this.sanitize=!0,this.value=e}appendText(e){return this.value+=e.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&"),this}appendMarkdown(e){return this.value+=e,this}appendCodeblock(e,n){return this.value+="\n```",this.value+=e,this.value+=`
191
+ `,this.value+=n,this.value+="\n```\n",this}toString(){return this.value}};nf.MarkdownString=Vb});var sf=g(Tt=>{"use strict";Object.defineProperty(Tt,"__esModule",{value:!0});Tt.createHover=Tt.createSignatureInfo=Tt.appendTooltipBody=Tt.appendTooltipHeader=Tt.createTooltipHeader=Tt.formatDefaultValue=Tt.formatTypes=void 0;var OA=Ws(),CA=rf();function zb(t){return t==null?"":t.map(e=>e.toString().replace(",","\u066B")).join(" or ")}Tt.formatTypes=zb;function RA(t){return typeof t=="string"?`"${t}"`:t.toString()}Tt.formatDefaultValue=RA;var Ij=(t,e)=>{let n=e.getArguments()||[],r=zb(e.getReturns())||"null";if(n.length===0)return`(${t.kind}) ${t.label} (): ${r}`;let i=n.map(s=>`${s.getLabel()}${s.isOptional()?"?":""}: ${zb(s.getTypes())}${s.getDefault()?` = ${RA(s.getDefault().value)}`:""}`).join(", ");return`(${t.kind}) ${t.label} (${i}): ${r}`};Tt.createTooltipHeader=Ij;var Mj=(t,e,n)=>{t.appendCodeblock(OA.LanguageId,(0,Tt.createTooltipHeader)(e,n)),t.appendMarkdown(`***
192
+ `)};Tt.appendTooltipHeader=Mj;var Lj=(t,e)=>{let n=e.getExample()||[];t.appendMarkdown(e.getDescription()+`
193
193
  `),n.length>0&&(t.appendMarkdown(`#### Examples:
194
194
  `),t.appendCodeblock(OA.LanguageId,n.join(`
195
- `)))};Tt.appendTooltipBody=Mj;var Lj=t=>{let e=[];for(let n of t.signatureDefinitions){let r=n,s={label:(0,Tt.createTooltipHeader)(t,r)},o=r.getArguments()??[],a=new CA.MarkdownString("");(0,Tt.appendTooltipBody)(a,r),s.parameters=o.map(u=>({label:`${u.getLabel()}${u.isOptional()?"?":""}: ${u.getTypes().join(" or ")}`})),s.documentation=a.toString(),e.push(s)}return e};Tt.createSignatureInfo=Lj;var Nj=t=>{let e=[];for(let n of t.signatureDefinitions){let r=new CA.MarkdownString(""),i=n;(0,Tt.appendTooltipHeader)(r,t,i),(0,Tt.appendTooltipBody)(r,i),e.push(r)}return{contents:e.map(n=>n.toString())}};Tt.createHover=Nj});var IA=g(Co=>{"use strict";var qj=Co&&Co.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Co,"__esModule",{value:!0});Co.activate=void 0;var PA=Or(),Vb=Wn(),jj=qj(require("path")),uu=tf(),Fj=vo(),DA=rf(),zb=sf(),$j=Ws(),Bj=async(t,e,n)=>{let r=uu.URI.parse(e.uri),i=await t.fs.getWorkspaceFolderUri(r);return i==null?uu.Utils.joinPath(r,".."):n.startsWith("/")?i:uu.Utils.joinPath(r,"..")};function Uj(t){async function e(n,r){let i=new DA.MarkdownString(""),o=r.closest.path,a=await Bj(t,n,o),u=uu.Utils.joinPath(a,o),c=uu.Utils.joinPath(a,`${o}`),l=await t.fs.findExistingPath(u.toString(),c.toString()),d=l==null?["Cannot open file."]:[`[Inserts file "${jj.default.basename(l)}" inside this code when building](${l.toString()})`,"***","Click the link above to open the file."];return i.appendMarkdown(d.join(`
196
- `)),{contents:i.toString()}}t.connection.onHover(async n=>{if(!t.getConfiguration().hoverdocs)return;let r=await t.fs.getTextDocument(n.textDocument.uri);if(r==null)return;let i=new Fj.LookupHelper(r,t),s=i.lookupAST(n.position);if(!s)return;if(s.closest.type===PA.ASTType.FeatureImportExpression||s.closest.type===PA.ASTType.FeatureIncludeExpression)return await e(r,s);let o=await i.lookupTypeInfo(s);if(!o)return;if(o.isCallable())return(0,zb.createHover)(o);let a=new DA.MarkdownString(""),u=Array.from(o.types).map(Vb.SignatureDefinitionTypeMeta.parse),c=`(${o.kind}) ${o.label}: ${(0,zb.formatTypes)(u)}`;if(o.types.has(Vb.SignatureDefinitionBaseType.Map)){let l={};for(let[d,p]of o.values){let b=Array.from(p.types).map(Vb.SignatureDefinitionTypeMeta.parse);l[d.slice(2)]=(0,zb.formatTypes)(b)}c+=" "+JSON.stringify(l,null,2)}return a.appendCodeblock($j.LanguageId,c),{contents:a.toString()}})}Co.activate=Uj});var LA=g(of=>{"use strict";Object.defineProperty(of,"__esModule",{value:!0});of.activate=void 0;var MA=qe(),Hj=vo(),Wj=sf(),Gj=t=>{if(t.closest.type===MA.ASTType.CallExpression)return t.closest;for(let e=t.outer.length-1;e>=0;e--){let n=t.outer[e];if(n.type===MA.ASTType.CallExpression)return n}return null};function Kj(t){t.connection.onSignatureHelp(async e=>{if(!t.getConfiguration().autocomplete)return;let n=await t.fs.getTextDocument(e.textDocument.uri);if(n==null)return;await t.documentManager.getLatest(n);let r=new Hj.LookupHelper(n,t),i=r.lookupAST(e.position);if(!i)return;let{closest:s}=i,o=Gj(i);if(o===null)return;let a=await r.lookupTypeInfo({closest:o.base,outer:s.scope?[s.scope]:[]});if(!a||!a.isCallable())return;let c=o.arguments.findIndex(d=>{let p=d.start.character-1,b=d.end.character;return p<=e.position.character&&b>=e.position.character}),l={activeParameter:c===-1?0:c,signatures:[],activeSignature:0};return l.signatures.push(...(0,Wj.createSignatureInfo)(a)),l})}of.activate=Kj});var qA=g(af=>{"use strict";Object.defineProperty(af,"__esModule",{value:!0});af.activate=void 0;var NA=Ws();function Vj(t){let e=r=>r.languageId!==NA.LanguageId?!1:t.documentManager.schedule(r),n=r=>{r.languageId===NA.LanguageId&&t.documentManager.clear(r)};t.fs.on("text-document-open",e),t.fs.on("text-document-change",e),t.fs.on("text-document-close",n)}af.activate=Vj});var FA=g(Ro=>{"use strict";var zj=Ro&&Ro.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Ro,"__esModule",{value:!0});Ro.activate=void 0;var Xj=Ja(),Yj=tb(),Jj=zj(yo()),jA=(t,e)=>{let n=Jj.default.get(t.uri),r=n.resolveAllAssignmentsWithQuery(e),i=[];for(let s of r){let o=s.node,a=n.resolveNamespace(o.variable,!0);if(a==null)continue;let u=a?.label??(0,Xj.createExpressionId)(o.variable),c=a?.kind?(0,Yj.getSymbolItemKind)(a.kind):13,l={line:o.variable.start.line-1,character:o.variable.start.character-1},d={line:o.variable.end.line-1,character:o.variable.end.character-1};i.push({name:u,containerName:u,kind:c,location:{uri:t.uri,range:{start:l,end:d}}})}return i};function Qj(t){t.connection.onDocumentSymbol(async e=>{let n=await t.fs.getTextDocument(e.textDocument.uri);return n==null?void 0:t.documentManager.get(n).document?jA(n,""):[]}),t.connection.onWorkspaceSymbol(e=>{let n=[];for(let r of t.fs.getAllTextDocuments())t.documentManager.get(r).document&&n.push(...jA(r,e.query));return n})}Ro.activate=Qj});var uf=g(Vn=>{"use strict";Object.defineProperty(Vn,"__esModule",{value:!0});Vn.buildTokens=Vn.semanticTokensLegend=Vn.SemanticTokenModifier=Vn.SemanticTokenType=void 0;var H=qe(),jt=Or(),Zj=Zy(),$A=(t,e)=>!!Zj.miniscriptMeta.getDefinition(t,e),Q;(function(t){t[t.Keyword=0]="Keyword",t[t.String=1]="String",t[t.Number=2]="Number",t[t.Variable=3]="Variable",t[t.Property=4]="Property",t[t.Function=5]="Function",t[t.Parameter=6]="Parameter",t[t.Operator=7]="Operator",t[t.Comment=8]="Comment",t[t.Constant=9]="Constant",t[t.Punctuator=10]="Punctuator"})(Q=Vn.SemanticTokenType||(Vn.SemanticTokenType={}));var Xb;(function(t){t[t.Declaration=0]="Declaration",t[t.Definition=1]="Definition",t[t.Readonly=2]="Readonly",t[t.Static=3]="Static",t[t.Deprecated=4]="Deprecated",t[t.Abstract=5]="Abstract",t[t.Async=6]="Async",t[t.Modification=7]="Modification",t[t.Documentation=8]="Documentation",t[t.DefaultLibrary=9]="DefaultLibrary"})(Xb=Vn.SemanticTokenModifier||(Vn.SemanticTokenModifier={}));Vn.semanticTokensLegend={tokenTypes:["keyword","string","number","variable","property","function","parameter","operator","comment","constant","punctuator"],tokenModifiers:["declaration","definition","readonly","static","deprecated","abstract","async","modification","documentation","defaultLibrary"]};var BA=t=>1<<t,Yb=class{constructor(e,n){this._lexer=e,this._builder=n,this._validator=new H.ParserValidatorm}next(){this.previousToken=this.token,this.token=this._lexer.next()}isType(e){return this.token!==null&&e===this.token.type}consume(e){return e(this.token)?(this.next(),!0):!1}consumeMany(e){return e(this.token)?(this.next(),!0):!1}requireType(e){let n=this.token;return this.token.type!==e?null:(this.next(),n)}requireToken(e){let n=this.token;return e(n)?(this.next(),n):null}requireTokenOfAny(e){let n=this.token;return e(n)?(this.next(),n):null}skipNewlines(){let e=this;for(;;){if(H.Selectors.Comment(e.token))this._builder.push(e.token.start.line-1,e.token.start.character-1,e.token.value.length+2,Q.Comment,0);else if(!H.Selectors.EndOfLine(e.token))break;e.next()}}processIdentifier(e=!1,n=!1){let r=this,i=r.requireType(H.TokenType.Identifier);if(i)if(n)r._builder.push(i.start.line-1,i.start.character-1,i.value.length,Q.Parameter,0);else if(e){let o=$A(["any"],i.value)?BA(Xb.DefaultLibrary):0;r._builder.push(i.start.line-1,i.start.character-1,i.value.length,Q.Property,o)}else{let o=$A(["general"],i.value)?BA(Xb.DefaultLibrary):0;r._builder.push(i.start.line-1,i.start.character-1,i.value.length,Q.Variable,o)}}processLiteral(){let e=this.token;switch(e.type){case H.TokenType.StringLiteral:{this._builder.push(e.start.line-1,e.start.character-1,e.raw.length,Q.String,0);break}case H.TokenType.NumericLiteral:{this._builder.push(e.start.line-1,e.start.character-1,e.raw.length,Q.Number,0);break}case H.TokenType.BooleanLiteral:case H.TokenType.NilLiteral:{this._builder.push(e.start.line-1,e.start.character-1,e.raw.length,Q.Constant,0);break}}this.next()}processAtom(e=!1,n=!1){let r=this;if(jt.Selectors.Envar(r.token))return r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Keyword,0),r.next(),r.processFeatureEnvarExpression();if(jt.Selectors.Inject(r.token))return r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Keyword,0),r.next(),r.processFeatureInjectExpression();if(jt.Selectors.Line(r.token)){r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Keyword,0),r.next();return}else if(jt.Selectors.File(r.token)){r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Keyword,0),r.next();return}if(r._validator.isLiteral(r.token.type))return r.processLiteral();if(r.isType(H.TokenType.Identifier))return r.processIdentifier()}processQuantity(e=!1,n=!1){let r=this;if(!H.Selectors.LParenthesis(r.token))return r.processAtom(e,n);r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next(),r.skipNewlines(),r.processExpr();let i=r.requireToken(H.Selectors.RParenthesis);i&&r._builder.push(i.start.line-1,i.start.character-1,i.value.length,Q.Punctuator,0)}processList(e=!1,n=!1){let r=this;if(!H.Selectors.SLBracket(r.token))return r.processQuantity(e,n);if(r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next(),H.Selectors.SRBracket(r.token))r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next();else for(r.skipNewlines();!H.Selectors.EndOfFile(r.token);){if(H.Selectors.SRBracket(r.token)){r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next();break}if(r.processExpr(),H.Selectors.MapSeperator(r.token)&&(r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next(),r.skipNewlines()),H.Selectors.SRBracket(r.token)){r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next();break}}}processMap(e=!1,n=!1){let r=this;if(!H.Selectors.CLBracket(r.token))return r.processList(e,n);if(r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next(),H.Selectors.CRBracket(r.token))r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next();else for(r.skipNewlines();!H.Selectors.EndOfFile(r.token);){if(H.Selectors.CRBracket(r.token)){r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next();break}r.processExpr();let i=r.requireToken(H.Selectors.MapKeyValueSeperator);if(!i)return;if(r._builder.push(i.start.line-1,i.start.character-1,i.value.length,Q.Punctuator,0),r.skipNewlines(),r.processExpr(),H.Selectors.MapSeperator(r.token)&&(r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next(),r.skipNewlines()),H.Selectors.CRBracket(r.token)){r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next();break}}}processCallArgs(){let e=this;if(H.Selectors.LParenthesis(e.token))if(e._builder.push(e.token.start.line-1,e.token.start.character-1,e.token.value.length,Q.Punctuator,0),e.next(),H.Selectors.RParenthesis(e.token))e._builder.push(e.token.start.line-1,e.token.start.character-1,e.token.value.length,Q.Punctuator,0),e.next();else for(;!H.Selectors.EndOfFile(e.token);){e.skipNewlines(),e.processExpr(),e.skipNewlines();let n=e.requireTokenOfAny(H.SelectorGroups.CallArgsEnd);if(!n)return;if(H.Selectors.RParenthesis(n)){e._builder.push(n.start.line-1,n.start.character-1,n.value.length,Q.Punctuator,0);break}else if(!H.Selectors.ArgumentSeperator(n))break}}processCallExpr(e=!1,n=!1){let r=this;for(r.processMap(e,n);!H.Selectors.EndOfFile(r.token);)if(H.Selectors.MemberSeperator(r.token))r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next(),r.skipNewlines(),r.processIdentifier(!0);else if(H.Selectors.SLBracket(r.token)&&!r.token.afterSpace){r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next(),r.skipNewlines(),H.Selectors.SliceSeperator(r.token)?(r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next(),r.skipNewlines(),H.Selectors.SRBracket(r.token)?r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0):r.processExpr()):(r.processExpr(),H.Selectors.SliceSeperator(r.token)&&(r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next(),r.skipNewlines(),H.Selectors.SRBracket(r.token)?r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0):r.processExpr()));let i=r.requireToken(H.Selectors.SRBracket);if(!i)return;r._builder.push(i.start.line-1,i.start.character-1,i.value.length,Q.Punctuator,0)}else if(H.Selectors.LParenthesis(r.token)&&(!e||!r.token.afterSpace))r.processCallArgs();else break}processPower(e=!1,n=!1){let r=this;r.processCallExpr(e,n),H.Selectors.Power(r.token)&&(r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Operator,0),r.next(),r.skipNewlines(),r.processCallExpr())}processAddressOf(e=!1,n=!1){let r=this;if(!H.Selectors.Reference(r.token))return r.processPower(e,n);r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next(),r.skipNewlines(),r.processPower()}processNew(e=!1,n=!1){let r=this;if(!H.Selectors.New(r.token))return r.processAddressOf(e,n);r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Keyword,0),r.next(),r.skipNewlines(),r.processNew()}processUnaryMinus(e=!1,n=!1){let r=this;if(!H.Selectors.Minus(r.token))return r.processNew(e,n);r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Operator,0),r.next(),r.skipNewlines(),r.processNew()}processMultDiv(e=!1,n=!1){let r=this;for(r.processUnaryMinus(e,n);H.SelectorGroups.MultiDivOperators(r.token);)r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Operator,0),r.next(),r.skipNewlines(),r.processUnaryMinus()}processBitwise(e=!1,n=!1){let r=this;for(r.processMultDiv(e,n);jt.SelectorGroups.BitwiseOperators(r.token);)r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Operator,0),r.next(),r.skipNewlines(),r.processMultDiv()}processAddSub(e=!1,n=!1){let r=this;for(r.processBitwise(e,n);H.Selectors.Plus(r.token)||H.Selectors.Minus(r.token)&&(!n||!r.token.afterSpace||r._lexer.isAtWhitespace());)r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Operator,0),r.next(),r.skipNewlines(),r.processBitwise()}processComparisons(e=!1,n=!1){let r=this;if(r.processAddSub(e,n),!!H.SelectorGroups.ComparisonOperators(r.token))do r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Operator,0),r.next(),r.skipNewlines(),r.processAddSub();while(H.SelectorGroups.ComparisonOperators(r.token))}processBitwiseAnd(e=!1,n=!1){let r=this;for(r.processComparisons(e,n);jt.Selectors.BitwiseAnd(r.token);)r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next(),r.processComparisons()}processBitwiseOr(e=!1,n=!1){let r=this;for(r.processBitwiseAnd(e,n);jt.Selectors.BitwiseOr(r.token);)r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next(),r.processBitwiseAnd()}processIsa(e=!1,n=!1){let r=this;if(r.processBitwiseOr(e,n),H.Selectors.Isa(r.token)){r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Keyword,0),r.next(),r.skipNewlines(),r.processBitwiseOr();return}}processNot(e=!1,n=!1){let r=this;if(H.Selectors.Not(r.token)){r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Keyword,0),r.next(),r.skipNewlines(),r.processIsa();return}r.processIsa(e,n)}processAnd(e=!1,n=!1){let r=this;for(r.processNot(e,n);H.Selectors.And(r.token);)r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Keyword,0),r.next(),r.skipNewlines(),r.processNot()}processOr(e=!1,n=!1){let r=this;for(r.processAnd(e,n);H.Selectors.Or(r.token);)r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Keyword,0),r.next(),r.skipNewlines(),r.processAnd()}processFunctionDeclaration(e=!1,n=!1){let r=this;if(!H.Selectors.Function(r.token))return r.processOr(e,n);if(r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Keyword,0),r.next(),!H.SelectorGroups.BlockEndOfLine(r.token)){let i=r.requireToken(H.Selectors.LParenthesis);if(!i)return;for(r._builder.push(i.start.line-1,i.start.character-1,i.value.length,Q.Punctuator,0);!H.SelectorGroups.FunctionDeclarationArgEnd(r.token)&&(r.processIdentifier(!1,!0),r.consume(H.Selectors.Assign)&&(r._builder.push(r.previousToken.start.line-1,r.previousToken.start.character-1,r.previousToken.value.length,Q.Operator,0),r.processExpr()),!H.Selectors.RParenthesis(r.token));){r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0);let o=r.requireToken(H.Selectors.ArgumentSeperator);if(!o)return;if(r._builder.push(o.start.line-1,o.start.character-1,o.value.length,Q.Punctuator,0),H.Selectors.RParenthesis(r.token)){r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0);break}}let s=r.requireToken(H.Selectors.RParenthesis);if(!s)return;r._builder.push(s.start.line-1,s.start.character-1,s.value.length,Q.Punctuator,0)}}processExpr(e=!1,n=!1){this.processFunctionDeclaration(e,n)}processForShortcutStatement(){this.processShortcutStatement()}processForStatement(){let e=this;e.processIdentifier();let n=e.requireToken(H.Selectors.In);if(n&&(e._builder.push(n.start.line-1,n.start.character-1,n.value.length,Q.Keyword,0),e.processExpr(),!H.SelectorGroups.BlockEndOfLine(e.token))){e.processForShortcutStatement();return}}processWhileShortcutStatement(){this.processShortcutStatement()}processWhileStatement(){let e=this;if(e.processExpr(),!H.SelectorGroups.BlockEndOfLine(e.token))return e.processWhileShortcutStatement()}processIfShortcutStatement(){let e=this;e.processShortcutStatement(),H.Selectors.Else(e.token)&&(e._builder.push(e.token.start.line-1,e.token.start.character-1,e.token.value.length,Q.Keyword,0),e.next(),e.processShortcutStatement())}processNextIfClause(e){let n=this;switch(e){case H.ASTType.ElseifClause:{n.processExpr();let r=n.requireToken(H.Selectors.Then);if(!r)return;n._builder.push(r.start.line-1,r.start.character-1,r.value.length,Q.Keyword,0);break}case H.ASTType.ElseClause:break}}processIfStatement(){let e=this;e.processExpr();let n=e.requireToken(H.Selectors.Then);if(n&&(e._builder.push(n.start.line-1,n.start.character-1,n.value.length,Q.Keyword,0),!H.SelectorGroups.BlockEndOfLine(e.token))){e.processIfShortcutStatement();return}}processReturnStatement(){let e=this;H.SelectorGroups.ReturnStatementEnd(e.token)||e.processExpr()}processAssignment(){let e=this,n=e.token;if(e.processExpr(!0,!0),H.SelectorGroups.AssignmentEndOfExpr(e.token))return;if(H.Selectors.Assign(e.token)){e._builder.push(e.token.start.line-1,e.token.start.character-1,e.token.value.length,Q.Operator,0),e.next(),e.processExpr();return}else if(H.SelectorGroups.AssignmentShorthand(e.token)){let i=e.token;e._builder.push(e.token.start.line-1,e.token.start.character-1,e.token.value.length,Q.Operator,0),e.next(),e.processExpr();return}let r=[];for(;!H.Selectors.EndOfFile(e.token)&&(e.processExpr(),!(H.SelectorGroups.BlockEndOfLine(e.token)||H.Selectors.Else(e.token)));){if(H.Selectors.ArgumentSeperator(e.token)){e.next(),e.skipNewlines();continue}let i=e.requireTokenOfAny(H.SelectorGroups.AssignmentCommandArgs);if(!i)return;if(H.Selectors.EndOfLine(i)||H.Selectors.EndOfFile(i))break}r.length}processShortcutStatement(){let e=this;if(H.TokenType.Keyword===e.token.type&&H.Keyword.Not!==e.token.value){let n=e.token.value;switch(this._builder.push(e.token.start.line-1,e.token.start.character-1,e.token.value.length,Q.Keyword,0),n){case H.Keyword.Return:e.next(),e.processReturnStatement();case H.Keyword.Continue:{e.next();return}case H.Keyword.Break:{e.next();return}default:}}return e.processAssignment()}processPathSegment(){let e=this;if(this.token.type===H.ASTType.StringLiteral){let r=this.token;e._builder.push(r.start.line-1,r.start.character-1,r.raw.length,Q.String,0),this.next();return}let n="";for(;!jt.SelectorGroups.PathSegmentEnd(e.token);)e._builder.push(e.token.start.line-1,e.token.start.character-1,e.token.value.length,Q.String,0),n=n+e.token.value,e.next();return e.consumeMany(jt.SelectorGroups.PathSegmentEnd)&&e._builder.push(e.previousToken.start.line-1,e.previousToken.start.character-1,e.previousToken.value.length,Q.Punctuator,0),n}processFeatureEnvarExpression(){let e=this;e._builder.push(e.token.start.line-1,e.token.start.character-1,e.token.value.length,Q.String,0),e.next()}processFeatureInjectExpression(){this.processPathSegment()}processFeatureImportStatement(){let e=this;e.processIdentifier(),e.consume(jt.Selectors.From)&&(e._builder.push(e.previousToken.start.line-1,e.previousToken.start.character-1,e.previousToken.value.length,Q.Keyword,0),e.processPathSegment())}processFeatureIncludeStatement(){this.processPathSegment()}processNativeImportCodeStatement(){let e=this;if(e.consume(H.Selectors.LParenthesis)){if(e._builder.push(e.previousToken.start.line-1,e.previousToken.start.character-1,e.previousToken.value.length,Q.Punctuator,0),H.TokenType.StringLiteral===e.token.type){let n=e.token;e._builder.push(n.start.line-1,n.start.character-1,n.raw.length,Q.String,0),e.next()}else return;if(e.consume(H.Selectors.ImportCodeSeperator)){if(e._builder.push(e.previousToken.start.line-1,e.previousToken.start.character-1,e.previousToken.value.length,Q.Punctuator,0),!e.isType(H.TokenType.StringLiteral))return;let n=e.token;e._builder.push(n.start.line-1,n.start.character-1,n.raw.length,Q.String,0),e.next()}e.consume(H.Selectors.RParenthesis)&&e._builder.push(e.previousToken.start.line-1,e.previousToken.start.character-1,e.previousToken.value.length,Q.Punctuator,0)}}processKeyword(){let e=this,n=e.token.value;switch(this._builder.push(e.token.start.line-1,e.token.start.character-1,e.token.value.length,Q.Keyword,0),n){case H.Keyword.Return:{e.next(),e.processReturnStatement();return}case H.Keyword.If:{e.next(),e.processIfStatement();return}case H.Keyword.ElseIf:{e.next(),e.processNextIfClause(H.ASTType.ElseifClause);return}case H.Keyword.Else:{e.next(),e.processNextIfClause(H.ASTType.ElseClause);return}case H.Keyword.While:{e.next(),e.processWhileStatement();return}case H.Keyword.For:{e.next(),e.processForStatement();return}case H.Keyword.EndFunction:{e.next();return}case H.Keyword.EndFor:{e.next();return}case H.Keyword.EndWhile:{e.next();return}case H.Keyword.EndIf:{e.next();return}case H.Keyword.Continue:{e.next();return}case H.Keyword.Break:{e.next();return}case jt.GreybelKeyword.Include:case jt.GreybelKeyword.IncludeWithComment:{e.next(),e.processFeatureIncludeStatement();return}case jt.GreybelKeyword.Import:case jt.GreybelKeyword.ImportWithComment:{e.next(),e.processFeatureImportStatement();return}case jt.GreybelKeyword.Envar:{e.next(),e.processFeatureEnvarExpression();return}case jt.GreybelKeyword.Inject:{e.next(),e.processFeatureInjectExpression();return}case jt.GreybelKeyword.Debugger:{e.next();return}}}processStatement(){let e=this;if(H.TokenType.Keyword===e.token.type&&H.Keyword.Not!==e.token.value){e.processKeyword();return}e.processAssignment()}process(){let e=this;for(e.next();!H.Selectors.EndOfFile(e.token)&&(e.skipNewlines(),!H.Selectors.EndOfFile(e.token));)e.processStatement()}};function eF(t,e){let n=new jt.Lexer(e.content,{unsafe:!0});return new Yb(n,t).process(),t}Vn.buildTokens=eF});var UA=g(cf=>{"use strict";Object.defineProperty(cf,"__esModule",{value:!0});cf.activate=void 0;var tF=uf();function nF(t){t.connection.languages.semanticTokens.on(async e=>{let n=await t.fs.getTextDocument(e.textDocument.uri);if(n==null)return;let r=t.documentManager.get(n);if(!r.document)return;let i=t.createSemanticTokensBuilder();return(0,tF.buildTokens)(i,r),i.build()})}cf.activate=nF});var ff=g((uW,KA)=>{var cu=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,rF=typeof AbortController=="function",lf=rF?AbortController:class{constructor(){this.signal=new HA}abort(e=new Error("This operation was aborted")){this.signal.reason=this.signal.reason||e,this.signal.aborted=!0,this.signal.dispatchEvent({type:"abort",target:this.signal})}},iF=typeof AbortSignal=="function",sF=typeof lf.AbortSignal=="function",HA=iF?AbortSignal:sF?lf.AbortController:class{constructor(){this.reason=void 0,this.aborted=!1,this._listeners=[]}dispatchEvent(e){e.type==="abort"&&(this.aborted=!0,this.onabort(e),this._listeners.forEach(n=>n(e),this))}onabort(){}addEventListener(e,n){e==="abort"&&this._listeners.push(n)}removeEventListener(e,n){e==="abort"&&(this._listeners=this._listeners.filter(r=>r!==n))}},ev=new Set,Jb=(t,e)=>{let n=`LRU_CACHE_OPTION_${t}`;df(n)&&tv(n,`${t} option`,`options.${e}`,Do)},Qb=(t,e)=>{let n=`LRU_CACHE_METHOD_${t}`;if(df(n)){let{prototype:r}=Do,{get:i}=Object.getOwnPropertyDescriptor(r,t);tv(n,`${t} method`,`cache.${e}()`,i)}},oF=(t,e)=>{let n=`LRU_CACHE_PROPERTY_${t}`;if(df(n)){let{prototype:r}=Do,{get:i}=Object.getOwnPropertyDescriptor(r,t);tv(n,`${t} property`,`cache.${e}`,i)}},WA=(...t)=>{typeof process=="object"&&process&&typeof process.emitWarning=="function"?process.emitWarning(...t):console.error(...t)},df=t=>!ev.has(t),tv=(t,e,n,r)=>{ev.add(t);let i=`The ${e} is deprecated. Please use ${n} instead.`;WA(i,"DeprecationWarning",t,r)},Ii=t=>t&&t===Math.floor(t)&&t>0&&isFinite(t),GA=t=>Ii(t)?t<=Math.pow(2,8)?Uint8Array:t<=Math.pow(2,16)?Uint16Array:t<=Math.pow(2,32)?Uint32Array:t<=Number.MAX_SAFE_INTEGER?Po:null:null,Po=class extends Array{constructor(e){super(e),this.fill(0)}},Zb=class{constructor(e){if(e===0)return[];let n=GA(e);this.heap=new n(e),this.length=0}push(e){this.heap[this.length++]=e}pop(){return this.heap[--this.length]}},Do=class t{constructor(e={}){let{max:n=0,ttl:r,ttlResolution:i=1,ttlAutopurge:s,updateAgeOnGet:o,updateAgeOnHas:a,allowStale:u,dispose:c,disposeAfter:l,noDisposeOnSet:d,noUpdateTTL:p,maxSize:b=0,maxEntrySize:_=0,sizeCalculation:E,fetchMethod:L,fetchContext:M,noDeleteOnFetchRejection:x,noDeleteOnStaleGet:k,allowStaleOnFetchRejection:v,allowStaleOnFetchAbort:F,ignoreFetchAbort:C}=e,{length:V,maxAge:ce,stale:ye}=e instanceof t?{}:e;if(n!==0&&!Ii(n))throw new TypeError("max option must be a nonnegative integer");let K=n?GA(n):Array;if(!K)throw new Error("invalid max value: "+n);if(this.max=n,this.maxSize=b,this.maxEntrySize=_||this.maxSize,this.sizeCalculation=E||V,this.sizeCalculation){if(!this.maxSize&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(this.fetchMethod=L||null,this.fetchMethod&&typeof this.fetchMethod!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.fetchContext=M,!this.fetchMethod&&M!==void 0)throw new TypeError("cannot set fetchContext without fetchMethod");if(this.keyMap=new Map,this.keyList=new Array(n).fill(null),this.valList=new Array(n).fill(null),this.next=new K(n),this.prev=new K(n),this.head=0,this.tail=0,this.free=new Zb(n),this.initialFill=1,this.size=0,typeof c=="function"&&(this.dispose=c),typeof l=="function"?(this.disposeAfter=l,this.disposed=[]):(this.disposeAfter=null,this.disposed=null),this.noDisposeOnSet=!!d,this.noUpdateTTL=!!p,this.noDeleteOnFetchRejection=!!x,this.allowStaleOnFetchRejection=!!v,this.allowStaleOnFetchAbort=!!F,this.ignoreFetchAbort=!!C,this.maxEntrySize!==0){if(this.maxSize!==0&&!Ii(this.maxSize))throw new TypeError("maxSize must be a positive integer if specified");if(!Ii(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.initializeSizeTracking()}if(this.allowStale=!!u||!!ye,this.noDeleteOnStaleGet=!!k,this.updateAgeOnGet=!!o,this.updateAgeOnHas=!!a,this.ttlResolution=Ii(i)||i===0?i:1,this.ttlAutopurge=!!s,this.ttl=r||ce||0,this.ttl){if(!Ii(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.initializeTTLTracking()}if(this.max===0&&this.ttl===0&&this.maxSize===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.max&&!this.maxSize){let A="LRU_CACHE_UNBOUNDED";df(A)&&(ev.add(A),WA("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",A,t))}ye&&Jb("stale","allowStale"),ce&&Jb("maxAge","ttl"),V&&Jb("length","sizeCalculation")}getRemainingTTL(e){return this.has(e,{updateAgeOnHas:!1})?1/0:0}initializeTTLTracking(){this.ttls=new Po(this.max),this.starts=new Po(this.max),this.setItemTTL=(r,i,s=cu.now())=>{if(this.starts[r]=i!==0?s:0,this.ttls[r]=i,i!==0&&this.ttlAutopurge){let o=setTimeout(()=>{this.isStale(r)&&this.delete(this.keyList[r])},i+1);o.unref&&o.unref()}},this.updateItemAge=r=>{this.starts[r]=this.ttls[r]!==0?cu.now():0},this.statusTTL=(r,i)=>{r&&(r.ttl=this.ttls[i],r.start=this.starts[i],r.now=e||n(),r.remainingTTL=r.now+r.ttl-r.start)};let e=0,n=()=>{let r=cu.now();if(this.ttlResolution>0){e=r;let i=setTimeout(()=>e=0,this.ttlResolution);i.unref&&i.unref()}return r};this.getRemainingTTL=r=>{let i=this.keyMap.get(r);return i===void 0?0:this.ttls[i]===0||this.starts[i]===0?1/0:this.starts[i]+this.ttls[i]-(e||n())},this.isStale=r=>this.ttls[r]!==0&&this.starts[r]!==0&&(e||n())-this.starts[r]>this.ttls[r]}updateItemAge(e){}statusTTL(e,n){}setItemTTL(e,n,r){}isStale(e){return!1}initializeSizeTracking(){this.calculatedSize=0,this.sizes=new Po(this.max),this.removeItemSize=e=>{this.calculatedSize-=this.sizes[e],this.sizes[e]=0},this.requireSize=(e,n,r,i)=>{if(this.isBackgroundFetch(n))return 0;if(!Ii(r))if(i){if(typeof i!="function")throw new TypeError("sizeCalculation must be a function");if(r=i(n,e),!Ii(r))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return r},this.addItemSize=(e,n,r)=>{if(this.sizes[e]=n,this.maxSize){let i=this.maxSize-this.sizes[e];for(;this.calculatedSize>i;)this.evict(!0)}this.calculatedSize+=this.sizes[e],r&&(r.entrySize=n,r.totalCalculatedSize=this.calculatedSize)}}removeItemSize(e){}addItemSize(e,n){}requireSize(e,n,r,i){if(r||i)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache")}*indexes({allowStale:e=this.allowStale}={}){if(this.size)for(let n=this.tail;!(!this.isValidIndex(n)||((e||!this.isStale(n))&&(yield n),n===this.head));)n=this.prev[n]}*rindexes({allowStale:e=this.allowStale}={}){if(this.size)for(let n=this.head;!(!this.isValidIndex(n)||((e||!this.isStale(n))&&(yield n),n===this.tail));)n=this.next[n]}isValidIndex(e){return e!==void 0&&this.keyMap.get(this.keyList[e])===e}*entries(){for(let e of this.indexes())this.valList[e]!==void 0&&this.keyList[e]!==void 0&&!this.isBackgroundFetch(this.valList[e])&&(yield[this.keyList[e],this.valList[e]])}*rentries(){for(let e of this.rindexes())this.valList[e]!==void 0&&this.keyList[e]!==void 0&&!this.isBackgroundFetch(this.valList[e])&&(yield[this.keyList[e],this.valList[e]])}*keys(){for(let e of this.indexes())this.keyList[e]!==void 0&&!this.isBackgroundFetch(this.valList[e])&&(yield this.keyList[e])}*rkeys(){for(let e of this.rindexes())this.keyList[e]!==void 0&&!this.isBackgroundFetch(this.valList[e])&&(yield this.keyList[e])}*values(){for(let e of this.indexes())this.valList[e]!==void 0&&!this.isBackgroundFetch(this.valList[e])&&(yield this.valList[e])}*rvalues(){for(let e of this.rindexes())this.valList[e]!==void 0&&!this.isBackgroundFetch(this.valList[e])&&(yield this.valList[e])}[Symbol.iterator](){return this.entries()}find(e,n){for(let r of this.indexes()){let i=this.valList[r],s=this.isBackgroundFetch(i)?i.__staleWhileFetching:i;if(s!==void 0&&e(s,this.keyList[r],this))return this.get(this.keyList[r],n)}}forEach(e,n=this){for(let r of this.indexes()){let i=this.valList[r],s=this.isBackgroundFetch(i)?i.__staleWhileFetching:i;s!==void 0&&e.call(n,s,this.keyList[r],this)}}rforEach(e,n=this){for(let r of this.rindexes()){let i=this.valList[r],s=this.isBackgroundFetch(i)?i.__staleWhileFetching:i;s!==void 0&&e.call(n,s,this.keyList[r],this)}}get prune(){return Qb("prune","purgeStale"),this.purgeStale}purgeStale(){let e=!1;for(let n of this.rindexes({allowStale:!0}))this.isStale(n)&&(this.delete(this.keyList[n]),e=!0);return e}dump(){let e=[];for(let n of this.indexes({allowStale:!0})){let r=this.keyList[n],i=this.valList[n],s=this.isBackgroundFetch(i)?i.__staleWhileFetching:i;if(s===void 0)continue;let o={value:s};if(this.ttls){o.ttl=this.ttls[n];let a=cu.now()-this.starts[n];o.start=Math.floor(Date.now()-a)}this.sizes&&(o.size=this.sizes[n]),e.unshift([r,o])}return e}load(e){this.clear();for(let[n,r]of e){if(r.start){let i=Date.now()-r.start;r.start=cu.now()-i}this.set(n,r.value,r)}}dispose(e,n,r){}set(e,n,{ttl:r=this.ttl,start:i,noDisposeOnSet:s=this.noDisposeOnSet,size:o=0,sizeCalculation:a=this.sizeCalculation,noUpdateTTL:u=this.noUpdateTTL,status:c}={}){if(o=this.requireSize(e,n,o,a),this.maxEntrySize&&o>this.maxEntrySize)return c&&(c.set="miss",c.maxEntrySizeExceeded=!0),this.delete(e),this;let l=this.size===0?void 0:this.keyMap.get(e);if(l===void 0)l=this.newIndex(),this.keyList[l]=e,this.valList[l]=n,this.keyMap.set(e,l),this.next[this.tail]=l,this.prev[l]=this.tail,this.tail=l,this.size++,this.addItemSize(l,o,c),c&&(c.set="add"),u=!1;else{this.moveToTail(l);let d=this.valList[l];if(n!==d){if(this.isBackgroundFetch(d)?d.__abortController.abort(new Error("replaced")):s||(this.dispose(d,e,"set"),this.disposeAfter&&this.disposed.push([d,e,"set"])),this.removeItemSize(l),this.valList[l]=n,this.addItemSize(l,o,c),c){c.set="replace";let p=d&&this.isBackgroundFetch(d)?d.__staleWhileFetching:d;p!==void 0&&(c.oldValue=p)}}else c&&(c.set="update")}if(r!==0&&this.ttl===0&&!this.ttls&&this.initializeTTLTracking(),u||this.setItemTTL(l,r,i),this.statusTTL(c,l),this.disposeAfter)for(;this.disposed.length;)this.disposeAfter(...this.disposed.shift());return this}newIndex(){return this.size===0?this.tail:this.size===this.max&&this.max!==0?this.evict(!1):this.free.length!==0?this.free.pop():this.initialFill++}pop(){if(this.size){let e=this.valList[this.head];return this.evict(!0),e}}evict(e){let n=this.head,r=this.keyList[n],i=this.valList[n];return this.isBackgroundFetch(i)?i.__abortController.abort(new Error("evicted")):(this.dispose(i,r,"evict"),this.disposeAfter&&this.disposed.push([i,r,"evict"])),this.removeItemSize(n),e&&(this.keyList[n]=null,this.valList[n]=null,this.free.push(n)),this.head=this.next[n],this.keyMap.delete(r),this.size--,n}has(e,{updateAgeOnHas:n=this.updateAgeOnHas,status:r}={}){let i=this.keyMap.get(e);if(i!==void 0)if(this.isStale(i))r&&(r.has="stale",this.statusTTL(r,i));else return n&&this.updateItemAge(i),r&&(r.has="hit"),this.statusTTL(r,i),!0;else r&&(r.has="miss");return!1}peek(e,{allowStale:n=this.allowStale}={}){let r=this.keyMap.get(e);if(r!==void 0&&(n||!this.isStale(r))){let i=this.valList[r];return this.isBackgroundFetch(i)?i.__staleWhileFetching:i}}backgroundFetch(e,n,r,i){let s=n===void 0?void 0:this.valList[n];if(this.isBackgroundFetch(s))return s;let o=new lf;r.signal&&r.signal.addEventListener("abort",()=>o.abort(r.signal.reason));let a={signal:o.signal,options:r,context:i},u=(b,_=!1)=>{let{aborted:E}=o.signal,L=r.ignoreFetchAbort&&b!==void 0;return r.status&&(E&&!_?(r.status.fetchAborted=!0,r.status.fetchError=o.signal.reason,L&&(r.status.fetchAbortIgnored=!0)):r.status.fetchResolved=!0),E&&!L&&!_?l(o.signal.reason):(this.valList[n]===p&&(b===void 0?p.__staleWhileFetching?this.valList[n]=p.__staleWhileFetching:this.delete(e):(r.status&&(r.status.fetchUpdated=!0),this.set(e,b,a.options))),b)},c=b=>(r.status&&(r.status.fetchRejected=!0,r.status.fetchError=b),l(b)),l=b=>{let{aborted:_}=o.signal,E=_&&r.allowStaleOnFetchAbort,L=E||r.allowStaleOnFetchRejection,M=L||r.noDeleteOnFetchRejection;if(this.valList[n]===p&&(!M||p.__staleWhileFetching===void 0?this.delete(e):E||(this.valList[n]=p.__staleWhileFetching)),L)return r.status&&p.__staleWhileFetching!==void 0&&(r.status.returnedStale=!0),p.__staleWhileFetching;if(p.__returned===p)throw b},d=(b,_)=>{this.fetchMethod(e,s,a).then(E=>b(E),_),o.signal.addEventListener("abort",()=>{(!r.ignoreFetchAbort||r.allowStaleOnFetchAbort)&&(b(),r.allowStaleOnFetchAbort&&(b=E=>u(E,!0)))})};r.status&&(r.status.fetchDispatched=!0);let p=new Promise(d).then(u,c);return p.__abortController=o,p.__staleWhileFetching=s,p.__returned=null,n===void 0?(this.set(e,p,{...a.options,status:void 0}),n=this.keyMap.get(e)):this.valList[n]=p,p}isBackgroundFetch(e){return e&&typeof e=="object"&&typeof e.then=="function"&&Object.prototype.hasOwnProperty.call(e,"__staleWhileFetching")&&Object.prototype.hasOwnProperty.call(e,"__returned")&&(e.__returned===e||e.__returned===null)}async fetch(e,{allowStale:n=this.allowStale,updateAgeOnGet:r=this.updateAgeOnGet,noDeleteOnStaleGet:i=this.noDeleteOnStaleGet,ttl:s=this.ttl,noDisposeOnSet:o=this.noDisposeOnSet,size:a=0,sizeCalculation:u=this.sizeCalculation,noUpdateTTL:c=this.noUpdateTTL,noDeleteOnFetchRejection:l=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:d=this.allowStaleOnFetchRejection,ignoreFetchAbort:p=this.ignoreFetchAbort,allowStaleOnFetchAbort:b=this.allowStaleOnFetchAbort,fetchContext:_=this.fetchContext,forceRefresh:E=!1,status:L,signal:M}={}){if(!this.fetchMethod)return L&&(L.fetch="get"),this.get(e,{allowStale:n,updateAgeOnGet:r,noDeleteOnStaleGet:i,status:L});let x={allowStale:n,updateAgeOnGet:r,noDeleteOnStaleGet:i,ttl:s,noDisposeOnSet:o,size:a,sizeCalculation:u,noUpdateTTL:c,noDeleteOnFetchRejection:l,allowStaleOnFetchRejection:d,allowStaleOnFetchAbort:b,ignoreFetchAbort:p,status:L,signal:M},k=this.keyMap.get(e);if(k===void 0){L&&(L.fetch="miss");let v=this.backgroundFetch(e,k,x,_);return v.__returned=v}else{let v=this.valList[k];if(this.isBackgroundFetch(v)){let ye=n&&v.__staleWhileFetching!==void 0;return L&&(L.fetch="inflight",ye&&(L.returnedStale=!0)),ye?v.__staleWhileFetching:v.__returned=v}let F=this.isStale(k);if(!E&&!F)return L&&(L.fetch="hit"),this.moveToTail(k),r&&this.updateItemAge(k),this.statusTTL(L,k),v;let C=this.backgroundFetch(e,k,x,_),V=C.__staleWhileFetching!==void 0,ce=V&&n;return L&&(L.fetch=V&&F?"stale":"refresh",ce&&F&&(L.returnedStale=!0)),ce?C.__staleWhileFetching:C.__returned=C}}get(e,{allowStale:n=this.allowStale,updateAgeOnGet:r=this.updateAgeOnGet,noDeleteOnStaleGet:i=this.noDeleteOnStaleGet,status:s}={}){let o=this.keyMap.get(e);if(o!==void 0){let a=this.valList[o],u=this.isBackgroundFetch(a);return this.statusTTL(s,o),this.isStale(o)?(s&&(s.get="stale"),u?(s&&(s.returnedStale=n&&a.__staleWhileFetching!==void 0),n?a.__staleWhileFetching:void 0):(i||this.delete(e),s&&(s.returnedStale=n),n?a:void 0)):(s&&(s.get="hit"),u?a.__staleWhileFetching:(this.moveToTail(o),r&&this.updateItemAge(o),a))}else s&&(s.get="miss")}connect(e,n){this.prev[n]=e,this.next[e]=n}moveToTail(e){e!==this.tail&&(e===this.head?this.head=this.next[e]:this.connect(this.prev[e],this.next[e]),this.connect(this.tail,e),this.tail=e)}get del(){return Qb("del","delete"),this.delete}delete(e){let n=!1;if(this.size!==0){let r=this.keyMap.get(e);if(r!==void 0)if(n=!0,this.size===1)this.clear();else{this.removeItemSize(r);let i=this.valList[r];this.isBackgroundFetch(i)?i.__abortController.abort(new Error("deleted")):(this.dispose(i,e,"delete"),this.disposeAfter&&this.disposed.push([i,e,"delete"])),this.keyMap.delete(e),this.keyList[r]=null,this.valList[r]=null,r===this.tail?this.tail=this.prev[r]:r===this.head?this.head=this.next[r]:(this.next[this.prev[r]]=this.next[r],this.prev[this.next[r]]=this.prev[r]),this.size--,this.free.push(r)}}if(this.disposed)for(;this.disposed.length;)this.disposeAfter(...this.disposed.shift());return n}clear(){for(let e of this.rindexes({allowStale:!0})){let n=this.valList[e];if(this.isBackgroundFetch(n))n.__abortController.abort(new Error("deleted"));else{let r=this.keyList[e];this.dispose(n,r,"delete"),this.disposeAfter&&this.disposed.push([n,r,"delete"])}}if(this.keyMap.clear(),this.valList.fill(null),this.keyList.fill(null),this.ttls&&(this.ttls.fill(0),this.starts.fill(0)),this.sizes&&this.sizes.fill(0),this.head=0,this.tail=0,this.initialFill=1,this.free.length=0,this.calculatedSize=0,this.size=0,this.disposed)for(;this.disposed.length;)this.disposeAfter(...this.disposed.shift())}get reset(){return Qb("reset","clear"),this.clear}get length(){return oF("length","size"),this.size}static get AbortController(){return lf}static get AbortSignal(){return HA}};KA.exports=Do});var ZA=g((cW,QA)=>{var sv=Object.defineProperty,aF=Object.getOwnPropertyDescriptor,uF=Object.getOwnPropertyNames,cF=Object.prototype.hasOwnProperty,lF=(t,e)=>{for(var n in e)sv(t,n,{get:e[n],enumerable:!0})},dF=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of uF(e))!cF.call(t,i)&&i!==n&&sv(t,i,{get:()=>e[i],enumerable:!(r=aF(e,i))||r.enumerable});return t},fF=t=>dF(sv({},"__esModule",{value:!0}),t),VA={};lF(VA,{ScheduleIntervalHelper:()=>nv,SchedulePostMessageHelper:()=>rv,ScheduleSetImmmediateHelper:()=>iv,schedule:()=>gF,scheduleProvider:()=>JA});QA.exports=fF(VA);var pF=Promise.prototype.then.bind(Promise.resolve()),ov=class pf{constructor(){this.queue=[],this.sleep=0}static{this.SLEEP_LIMIT=512}static{this.QUEUE_LIMIT=1024}static isApplicable(){return!1}static createCallback(){throw new Error("Cannot create callback from base schedule helper!")}tick(){let e=this.queue,n=Math.min(e.length,pf.QUEUE_LIMIT);this.queue=this.queue.slice(pf.QUEUE_LIMIT);for(let r=0;r<n;pF(e[r++]));if(this.queue.length>0&&(this.sleep=0),this.sleep++<=pf.SLEEP_LIMIT){this.nextTick();return}this.endTick()}start(){this.isTickActive()||(this.sleep=0,this.startTick())}add(e){this.queue.push(e),this.start()}},nv=class zA extends ov{constructor(){super(...arguments),this.timer=null,this.boundTick=this.tick.bind(this)}static isApplicable(){return!!globalThis.setInterval}static createCallback(){let e=new zA;return e.add.bind(e)}isTickActive(){return this.timer!==null}startTick(){this.timer=setInterval(this.boundTick,0)}nextTick(){}endTick(){clearInterval(this.timer),this.timer=null}},hF=()=>{try{return typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope}catch{}return!1},rv=class XA extends ov{constructor(){super(),this.id=(Math.random()+1).toString(36).substring(7),this.active=!1,self.addEventListener("message",this.onMessage.bind(this))}static isApplicable(){return!hF()&&!!self.postMessage&&!!self.addEventListener}static createCallback(){let e=new XA;return e.add.bind(e)}onMessage(e){e.source!==self||e.data!==this.id||this.tick()}isTickActive(){return this.active}startTick(){this.active=!0,self.postMessage(this.id)}nextTick(){self.postMessage(this.id)}endTick(){this.active=!1}},iv=class YA extends ov{constructor(){super(...arguments),this.immediate=null,this.boundTick=this.tick.bind(this)}static isApplicable(){return!!globalThis.setImmediate}static createCallback(){let e=new YA;return e.add.bind(e)}isTickActive(){return this.immediate!==null}startTick(){this.immediate=setImmediate(this.boundTick)}nextTick(){this.immediate=setImmediate(this.boundTick)}endTick(){clearImmediate(this.immediate),this.immediate=null}};function JA(){if(iv.isApplicable())return iv.createCallback();if(rv.isApplicable())return rv.createCallback();if(nv.isApplicable())return nv.createCallback();throw new Error("No schedule helper fulfills requirements!")}var gF=JA()});var e1=g(An=>{"use strict";var cv=An&&An.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(An,"__esModule",{value:!0});An.DocumentManager=An.PROCESSING_TIMEOUT=An.ActiveDocument=An.DocumentURIBuilder=void 0;var mF=cv(require("events")),yF=Or(),bF=cv(ff()),av=ZA(),Io=tf(),vF=cv(yo()),hf=class{constructor(e,n=null){this.workspaceFolderUri=n,this.rootPath=e}getFromWorkspaceFolder(e){return this.workspaceFolderUri==null?(console.warn("Workspace folders are not available. Falling back to only relative paths."),Io.Utils.joinPath(this.rootPath,e).toString()):Io.Utils.joinPath(this.workspaceFolderUri,e).toString()}getFromRootPath(e){return Io.Utils.joinPath(this.rootPath,e).toString()}};An.DocumentURIBuilder=hf;var gf=class{constructor(e){this.documentManager=e.documentManager,this.content=e.content,this.textDocument=e.textDocument,this.document=e.document,this.errors=e.errors}getDirectory(){return Io.Utils.joinPath(Io.URI.parse(this.textDocument.uri),"..")}async getImportsAndIncludes(e=null){if(this.document==null)return[];let n=this.document,r=this.getDirectory(),i=this.documentManager.context,s=new hf(r,e),o=u=>u.startsWith("/")?i.fs.findExistingPath(s.getFromWorkspaceFolder(u),s.getFromWorkspaceFolder(`${u}.src`)):i.fs.findExistingPath(s.getFromRootPath(u),s.getFromRootPath(`${u}.src`));return(await Promise.all([...n.imports.filter(u=>u.path).map(u=>o(u.path)),...n.includes.filter(u=>u.path).map(u=>o(u.path))])).filter(u=>u!=null)}async getDependencies(){if(this.document==null)return[];if(this.dependencies)return this.dependencies;let e=await this.documentManager.context.fs.getWorkspaceFolderUri(Io.URI.parse(this.textDocument.uri)),n=await this.getImportsAndIncludes(e),r=new Set([...n]);return this.dependencies=Array.from(r),this.dependencies}async getImports(e=!0){if(this.document==null)return[];let n=new Set,r=new Set([this.textDocument.uri]),i=async s=>{let o=await s.getDependencies();for(let a of o){if(r.has(a))continue;let u=await this.documentManager.open(a);r.add(a),u!==null&&(n.add(u),u.document!==null&&e&&await i(u))}};return await i(this),Array.from(n)}};An.ActiveDocument=gf;An.PROCESSING_TIMEOUT=100;var uv=class extends mF.default{get context(){return this._context}setContext(e){return this._context=e,this}constructor(e=An.PROCESSING_TIMEOUT){super(),this._context=null,this._timer=null,this.results=new bF.default({ttl:1e3*60*20,ttlAutopurge:!0}),this.scheduledItems=new Map,this.tickRef=this.tick.bind(this),this.processingTimeout=e,(0,av.schedule)(this.tickRef)}tick(){if(this.scheduledItems.size===0){this._timer=null;return}let e=Date.now(),n=Array.from(this.scheduledItems.values());for(let r=0;r<n.length;r++){let i=n[r];e-i.createdAt>this.processingTimeout&&(0,av.schedule)(()=>this.refresh(i.document))}this._timer=setTimeout(this.tickRef,0)}refresh(e){let n=e.uri;if(!this.scheduledItems.has(n)&&this.results.has(n))return this.results.get(n);let r=this.create(e);return this.results.set(n,r),this.emit("parsed",e,r),this.scheduledItems.delete(n),r}create(e){let n=e.getText(),r=new yF.Parser(n,{unsafe:!0}),i=r.parseChunk();return this._context.documentMerger.flushCacheKey(e.uri),vF.default.analyze(e.uri,i),new gf({documentManager:this,content:n,textDocument:e,document:i,errors:[...r.lexer.errors,...r.errors]})}schedule(e){let n=e.uri,r=e.getText();return this.results.get(n)?.content===r?!1:(this.scheduledItems.set(n,{document:e,createdAt:Date.now()}),this._timer===null&&(this._timer=setTimeout(this.tickRef,0)),!0)}async open(e){try{let n=await this.context.fs.getTextDocument(e);return n==null?null:this.get(n)}catch{return null}}get(e){return this.results.get(e.uri)||this.refresh(e)}getLatest(e,n=5e3){return new Promise(r=>{(0,av.schedule)(()=>{if(!this.scheduledItems.has(e.uri))return r(this.get(e));let i=()=>{this.removeListener("parsed",s),r(this.get(e))},s=a=>{a.uri===e.uri&&(this.removeListener("parsed",s),clearTimeout(o),r(this.get(e)))},o=setTimeout(i,n);this.addListener("parsed",s)})})}clear(e){this.results.delete(e.uri),this.emit("cleared",e)}};An.DocumentManager=uv});var t1=g(mf=>{"use strict";Object.defineProperty(mf,"__esModule",{value:!0});mf.hash=void 0;function _F(t){let e=5381,n=t.length;for(;n;)e=e*33^t.charCodeAt(--n);return e>>>0}mf.hash=_F});var s1=g(Mo=>{"use strict";var i1=Mo&&Mo.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Mo,"__esModule",{value:!0});Mo.DocumentMerger=void 0;var TF=i1(ff()),n1=i1(yo()),r1=t1(),lv=class{constructor(){this.keyToDocumentUriMap=new Map,this.results=new TF.default({ttl:1e3*60*20,ttlAutopurge:!0})}createCacheKey(e,n){let r=(0,r1.hash)(`${e.uri}-${e.version}`);for(let i=0;i<n.length;i++){let s=n[i];r^=(0,r1.hash)(`${s.textDocument.uri}-${s.textDocument.version}`),r=r>>>0}return r}registerCacheKey(e,n){this.flushCacheKey(n),this.keyToDocumentUriMap.set(n,e)}flushCacheKey(e){let n=this.keyToDocumentUriMap.get(e);n&&(this.results.delete(n),this.keyToDocumentUriMap.delete(e))}async process(e,n,r){let i=e.uri;if(r.has(i))return r.get(i);let s=n1.default.get(i);if(r.set(i,null),!s)return null;let o=[],a=await n.documentManager.get(e).getImports(),u=this.createCacheKey(e,a);if(this.results.has(u))return this.results.get(u);this.registerCacheKey(u,i);let c=await n.documentManager.get(e).getDependencies();await Promise.all(c.map(async d=>{let p=n.documentManager.results.get(d);if(!p)return;let{document:b,textDocument:_}=p;if(!b)return;let E=await this.process(_,n,r);E!==null&&o.push(E)}));let l=s.merge(...o);return r.set(i,l),this.results.set(u,l),l}async build(e,n){let r=e.uri,i=n1.default.get(r);if(!i)return null;let s=[],o=await n.documentManager.get(e).getImports(),a=this.createCacheKey(e,o);if(this.results.has(a))return this.results.get(a);this.registerCacheKey(a,r);let u=await n.documentManager.get(e).getDependencies(),c=new Map([[r,null]]);await Promise.all(u.map(async d=>{let p=n.documentManager.results.get(d);if(!p)return;let{document:b,textDocument:_}=p;if(!b)return;let E=await this.process(_,n,c);E!==null&&s.push(E)}));let l=i.merge(...s);return this.results.set(a,l),l}};Mo.DocumentMerger=lv});var u1=g(Lo=>{"use strict";var SF=Lo&&Lo.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Lo,"__esModule",{value:!0});Lo.CoreContext=void 0;var kF=SF(require("events")),dv=Ws(),o1=uf();function a1(t){return{formatter:t?.formatter??!0,autocomplete:t?.autocomplete??!0,hoverdocs:t?.hoverdocs??!0,diagnostic:t?.diagnostic??!0,transpiler:{beautify:{keepParentheses:t?.transpiler?.beautify?.keepParentheses??!0,indentation:t?.transpiler?.beautify?.indentation??dv.IndentationType.Tab,indentationSpaces:t?.transpiler?.beautify?.indentationSpaces??2}}}}var fv=class extends kF.default{constructor(){super(),this._configuration=a1(),this._features={configuration:!1,workspaceFolder:!1}}get features(){return this._features}getConfiguration(){return this._configuration}async syncConfiguraton(){let e=await this.connection.workspace.getConfiguration(dv.ConfigurationNamespace);this._configuration=a1(e)}configureCapabilties(e){this._features.configuration=!!(e.workspace&&e.workspace.configuration),this._features.workspaceFolder=!!(e.workspace&&e.workspace.workspaceFolders)}async onInitialize(e){this.configureCapabilties(e.capabilities);let n={capabilities:{completionProvider:{triggerCharacters:["."],resolveProvider:!0},hoverProvider:!0,colorProvider:!0,definitionProvider:!0,documentFormattingProvider:!0,signatureHelpProvider:{triggerCharacters:[",","("]},documentSymbolProvider:!0,workspaceSymbolProvider:!0,diagnosticProvider:{identifier:dv.LanguageId,interFileDependencies:!1,workspaceDiagnostics:!1},semanticTokensProvider:{legend:{tokenTypes:o1.semanticTokensLegend.tokenTypes,tokenModifiers:o1.semanticTokensLegend.tokenModifiers},full:!0},textDocumentSync:2}};return this._features.workspaceFolder&&(n.capabilities.workspace={workspaceFolders:{supported:!0}}),this.emit("ready",this),n}async onInitialized(e){this._features.configuration&&(await this.syncConfiguraton(),this.connection.onDidChangeConfiguration(async()=>{let n=this._configuration;await this.syncConfiguraton(),this.emit("configuration-change",this,this._configuration,n)})),this.emit("loaded",this)}async listen(){this.fs.listen(this.connection),this.connection.onInitialize(this.onInitialize.bind(this)),this.connection.onInitialized(this.onInitialized.bind(this)),this.connection.listen()}};Lo.CoreContext=fv});var yf=g(Z=>{"use strict";var xF=Z&&Z.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),wF=Z&&Z.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),EF=Z&&Z.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var n in t)n!=="default"&&Object.prototype.hasOwnProperty.call(t,n)&&xF(e,t,n);return wF(e,t),e},AF=Z&&Z.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Z,"__esModule",{value:!0});Z.CoreContext=Z.buildTokens=Z.semanticTokensLegend=Z.typeAnalyzer=Z.lookupBase=Z.lookupIdentifier=Z.appendTooltipHeader=Z.appendTooltipBody=Z.formatTypes=Z.formatDefaultValue=Z.createTooltipHeader=Z.createSignatureInfo=Z.createHover=Z.MarkdownString=Z.LookupHelper=Z.DocumentMerger=Z.DocumentManager=Z.ActiveDocument=Z.ASTScraper=Z.activateSemantic=Z.activateSymbol=Z.activateSubscriptions=Z.activateSignature=Z.activateHover=Z.activateFormatter=Z.activateDiagnostic=Z.activateDefinition=Z.activateColor=Z.activateAutocomplete=Z.ConfigurationNamespace=Z.LanguageId=Z.IndentationType=void 0;var pv=Ws();Object.defineProperty(Z,"IndentationType",{enumerable:!0,get:function(){return pv.IndentationType}});Object.defineProperty(Z,"LanguageId",{enumerable:!0,get:function(){return pv.LanguageId}});Object.defineProperty(Z,"ConfigurationNamespace",{enumerable:!0,get:function(){return pv.ConfigurationNamespace}});var OF=HE();Object.defineProperty(Z,"activateAutocomplete",{enumerable:!0,get:function(){return OF.activate}});var CF=ZE();Object.defineProperty(Z,"activateColor",{enumerable:!0,get:function(){return CF.activate}});var RF=eA();Object.defineProperty(Z,"activateDefinition",{enumerable:!0,get:function(){return RF.activate}});var PF=tA();Object.defineProperty(Z,"activateDiagnostic",{enumerable:!0,get:function(){return PF.activate}});var DF=AA();Object.defineProperty(Z,"activateFormatter",{enumerable:!0,get:function(){return DF.activate}});var IF=IA();Object.defineProperty(Z,"activateHover",{enumerable:!0,get:function(){return IF.activate}});var MF=LA();Object.defineProperty(Z,"activateSignature",{enumerable:!0,get:function(){return MF.activate}});var LF=qA();Object.defineProperty(Z,"activateSubscriptions",{enumerable:!0,get:function(){return LF.activate}});var NF=FA();Object.defineProperty(Z,"activateSymbol",{enumerable:!0,get:function(){return NF.activate}});var qF=UA();Object.defineProperty(Z,"activateSemantic",{enumerable:!0,get:function(){return qF.activate}});Z.ASTScraper=EF(Qy());var c1=e1();Object.defineProperty(Z,"ActiveDocument",{enumerable:!0,get:function(){return c1.ActiveDocument}});Object.defineProperty(Z,"DocumentManager",{enumerable:!0,get:function(){return c1.DocumentManager}});var jF=s1();Object.defineProperty(Z,"DocumentMerger",{enumerable:!0,get:function(){return jF.DocumentMerger}});var FF=vo();Object.defineProperty(Z,"LookupHelper",{enumerable:!0,get:function(){return FF.LookupHelper}});var $F=rf();Object.defineProperty(Z,"MarkdownString",{enumerable:!0,get:function(){return $F.MarkdownString}});var ms=sf();Object.defineProperty(Z,"createHover",{enumerable:!0,get:function(){return ms.createHover}});Object.defineProperty(Z,"createSignatureInfo",{enumerable:!0,get:function(){return ms.createSignatureInfo}});Object.defineProperty(Z,"createTooltipHeader",{enumerable:!0,get:function(){return ms.createTooltipHeader}});Object.defineProperty(Z,"formatDefaultValue",{enumerable:!0,get:function(){return ms.formatDefaultValue}});Object.defineProperty(Z,"formatTypes",{enumerable:!0,get:function(){return ms.formatTypes}});Object.defineProperty(Z,"appendTooltipBody",{enumerable:!0,get:function(){return ms.appendTooltipBody}});Object.defineProperty(Z,"appendTooltipHeader",{enumerable:!0,get:function(){return ms.appendTooltipHeader}});var hv=yo();Object.defineProperty(Z,"lookupIdentifier",{enumerable:!0,get:function(){return hv.lookupIdentifier}});Object.defineProperty(Z,"lookupBase",{enumerable:!0,get:function(){return hv.lookupBase}});Object.defineProperty(Z,"typeAnalyzer",{enumerable:!0,get:function(){return AF(hv).default}});var l1=uf();Object.defineProperty(Z,"semanticTokensLegend",{enumerable:!0,get:function(){return l1.semanticTokensLegend}});Object.defineProperty(Z,"buildTokens",{enumerable:!0,get:function(){return l1.buildTokens}});var BF=u1();Object.defineProperty(Z,"CoreContext",{enumerable:!0,get:function(){return BF.CoreContext}})});var h1={};w1(h1,{TextDocument:()=>gv});function mv(t,e){if(t.length<=1)return t;let n=t.length/2|0,r=t.slice(0,n),i=t.slice(n);mv(r,e),mv(i,e);let s=0,o=0,a=0;for(;s<r.length&&o<i.length;)e(r[s],i[o])<=0?t[a++]=r[s++]:t[a++]=i[o++];for(;s<r.length;)t[a++]=r[s++];for(;o<i.length;)t[a++]=i[o++];return t}function d1(t,e,n=0){let r=e?[n]:[];for(let i=0;i<t.length;i++){let s=t.charCodeAt(i);f1(s)&&(s===13&&i+1<t.length&&t.charCodeAt(i+1)===10&&i++,r.push(n+i+1))}return r}function f1(t){return t===13||t===10}function p1(t){let e=t.start,n=t.end;return e.line>n.line||e.line===n.line&&e.character>n.character?{start:n,end:e}:t}function UF(t){let e=p1(t.range);return e!==t.range?{newText:t.newText,range:e}:t}var bf,gv,g1=x1(()=>{"use strict";bf=class t{constructor(e,n,r,i){this._uri=e,this._languageId=n,this._version=r,this._content=i,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let n=this.offsetAt(e.start),r=this.offsetAt(e.end);return this._content.substring(n,r)}return this._content}update(e,n){for(let r of e)if(t.isIncremental(r)){let i=p1(r.range),s=this.offsetAt(i.start),o=this.offsetAt(i.end);this._content=this._content.substring(0,s)+r.text+this._content.substring(o,this._content.length);let a=Math.max(i.start.line,0),u=Math.max(i.end.line,0),c=this._lineOffsets,l=d1(r.text,!1,s);if(u-a===l.length)for(let p=0,b=l.length;p<b;p++)c[p+a+1]=l[p];else l.length<1e4?c.splice(a+1,u-a,...l):this._lineOffsets=c=c.slice(0,a+1).concat(l,c.slice(u+1));let d=r.text.length-(o-s);if(d!==0)for(let p=a+1+l.length,b=c.length;p<b;p++)c[p]=c[p]+d}else if(t.isFull(r))this._content=r.text,this._lineOffsets=void 0;else throw new Error("Unknown change event received");this._version=n}getLineOffsets(){return this._lineOffsets===void 0&&(this._lineOffsets=d1(this._content,!0)),this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let n=this.getLineOffsets(),r=0,i=n.length;if(i===0)return{line:0,character:e};for(;r<i;){let o=Math.floor((r+i)/2);n[o]>e?i=o:r=o+1}let s=r-1;return e=this.ensureBeforeEOL(e,n[s]),{line:s,character:e-n[s]}}offsetAt(e){let n=this.getLineOffsets();if(e.line>=n.length)return this._content.length;if(e.line<0)return 0;let r=n[e.line];if(e.character<=0)return r;let i=e.line+1<n.length?n[e.line+1]:this._content.length,s=Math.min(r+e.character,i);return this.ensureBeforeEOL(s,r)}ensureBeforeEOL(e,n){for(;e>n&&f1(this._content.charCodeAt(e-1));)e--;return e}get lineCount(){return this.getLineOffsets().length}static isIncremental(e){let n=e;return n!=null&&typeof n.text=="string"&&n.range!==void 0&&(n.rangeLength===void 0||typeof n.rangeLength=="number")}static isFull(e){let n=e;return n!=null&&typeof n.text=="string"&&n.range===void 0&&n.rangeLength===void 0}};(function(t){function e(i,s,o,a){return new bf(i,s,o,a)}t.create=e;function n(i,s,o){if(i instanceof bf)return i.update(s,o),i;throw new Error("TextDocument.update: document must be created by TextDocument.create")}t.update=n;function r(i,s){let o=i.getText(),a=mv(s.map(UF),(l,d)=>{let p=l.range.start.line-d.range.start.line;return p===0?l.range.start.character-d.range.start.character:p}),u=0,c=[];for(let l of a){let d=i.offsetAt(l.range.start);if(d<u)throw new Error("Overlapping edit");d>u&&c.push(o.substring(u,d)),l.newText.length&&c.push(l.newText),u=i.offsetAt(l.range.end)}return c.push(o.substr(u)),c.join("")}t.applyEdits=r})(gv||(gv={}))});var y1=g(No=>{"use strict";var vv=No&&No.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(No,"__esModule",{value:!0});No.FileSystem=void 0;var HF=vh(),m1=(g1(),A1(h1)),WF=vv(require("events")),yv=tf(),GF=vv(require("fs")),KF=yf(),VF=vv(ff()),bv=class extends WF.default{constructor(e){super(),this._context=e,this._textDocumentManager=new HF.TextDocuments(m1.TextDocument),this._tempTextDocumentCache=new VF.default({ttl:1e3,max:100})}async getWorkspaceFolderUris(){if(!this._context.features.workspaceFolder)return[];if(this._workspace==null)return[];let e=await this._workspace.getWorkspaceFolders();return e==null?[]:Array.from(new Set(e.map(n=>n.uri))).map(n=>yv.URI.parse(n))}async getWorkspaceFolderUri(e){return(await this.getWorkspaceFolderUris()).find(r=>e.path.startsWith(r.path))||null}async findExistingPath(...e){if(e.length===0)return null;for(let n=0;n<e.length;n++)if(await this.getTextDocument(e[n])!=null)return e[n];return null}getAllTextDocuments(){return this._textDocumentManager.all()}async fetchTextDocument(e){let n=yv.URI.parse(e),r=this._tempTextDocumentCache.get(e);if(r!=null)return r;let i=null;try{let s=await GF.default.promises.readFile(n.fsPath,{encoding:"utf-8"});i=m1.TextDocument.create(e,KF.LanguageId,0,s)}catch{}return this._tempTextDocumentCache.set(e,i),i}async getTextDocument(e){let n=this._textDocumentManager.get(e);return n||(yv.URI.parse(e).scheme=="file"?await this.fetchTextDocument(e):null)}async readFile(e){return(await this.getTextDocument(e)).getText()}listen(e){this._workspace=e.workspace,this._textDocumentManager.listen(e),this._textDocumentManager.onDidOpen(n=>{this.emit("text-document-open",n.document)}),this._textDocumentManager.onDidChangeContent(n=>{this.emit("text-document-change",n.document)}),this._textDocumentManager.onDidClose(n=>{this.emit("text-document-close",n.document)})}};No.FileSystem=bv});var b1=g(vf=>{"use strict";Object.defineProperty(vf,"__esModule",{value:!0});vf.NodeContext=void 0;var _v=vh(),Tv=yf(),zF=y1(),Sv=class extends Tv.CoreContext{constructor(){super(),this.documentManager=new Tv.DocumentManager().setContext(this),this.documentMerger=new Tv.DocumentMerger,this.connection=(0,_v.createConnection)(_v.ProposedFeatures.all),this.fs=new zF.FileSystem(this)}createSemanticTokensBuilder(){return new _v.SemanticTokensBuilder}};vf.NodeContext=Sv});Object.defineProperty(exports,"__esModule",{value:!0});var XF=b1(),Rr=yf(),v1=new XF.NodeContext;v1.on("ready",t=>{(0,Rr.activateAutocomplete)(t),(0,Rr.activateColor)(t),(0,Rr.activateDefinition)(t),(0,Rr.activateDiagnostic)(t),(0,Rr.activateFormatter)(t),(0,Rr.activateHover)(t),(0,Rr.activateSignature)(t),(0,Rr.activateSubscriptions)(t),(0,Rr.activateSymbol)(t),(0,Rr.activateSemantic)(t)});v1.listen();
195
+ `)))};Tt.appendTooltipBody=Lj;var Nj=t=>{let e=[];for(let n of t.signatureDefinitions){let r=n,s={label:(0,Tt.createTooltipHeader)(t,r)},o=r.getArguments()??[],a=new CA.MarkdownString("");(0,Tt.appendTooltipBody)(a,r),s.parameters=o.map(u=>({label:`${u.getLabel()}${u.isOptional()?"?":""}: ${u.getTypes().join(" or ")}`})),s.documentation=a.toString(),e.push(s)}return e};Tt.createSignatureInfo=Nj;var qj=t=>{let e=[];for(let n of t.signatureDefinitions){let r=new CA.MarkdownString(""),i=n;(0,Tt.appendTooltipHeader)(r,t,i),(0,Tt.appendTooltipBody)(r,i),e.push(r)}return{contents:e.map(n=>n.toString())}};Tt.createHover=qj});var IA=g(Co=>{"use strict";var jj=Co&&Co.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Co,"__esModule",{value:!0});Co.activate=void 0;var PA=Or(),Xb=Wn(),Fj=jj(require("path")),uu=tf(),$j=vo(),DA=rf(),Yb=sf(),Bj=Ws(),Uj=async(t,e,n)=>{let r=uu.URI.parse(e.uri),i=await t.fs.getWorkspaceFolderUri(r);return i==null?uu.Utils.joinPath(r,".."):n.startsWith("/")?i:uu.Utils.joinPath(r,"..")};function Hj(t){async function e(n,r){let i=new DA.MarkdownString(""),o=r.closest.path,a=await Uj(t,n,o),u=uu.Utils.joinPath(a,o),c=uu.Utils.joinPath(a,`${o}`),l=await t.fs.findExistingPath(u.toString(),c.toString()),d=l==null?["Cannot open file."]:[`[Inserts file "${Fj.default.basename(l)}" inside this code when building](${l.toString()})`,"***","Click the link above to open the file."];return i.appendMarkdown(d.join(`
196
+ `)),{contents:i.toString()}}t.connection.onHover(async n=>{if(!t.getConfiguration().hoverdocs)return;let r=await t.fs.getTextDocument(n.textDocument.uri);if(r==null)return;let i=new $j.LookupHelper(r,t),s=i.lookupAST(n.position);if(!s)return;if(s.closest.type===PA.ASTType.FeatureImportExpression||s.closest.type===PA.ASTType.FeatureIncludeExpression)return await e(r,s);let o=await i.lookupTypeInfo(s);if(!o)return;if(o.isCallable())return(0,Yb.createHover)(o);let a=new DA.MarkdownString(""),u=Array.from(o.types).map(Xb.SignatureDefinitionTypeMeta.parse),c=`(${o.kind}) ${o.label}: ${(0,Yb.formatTypes)(u)}`;if(o.types.has(Xb.SignatureDefinitionBaseType.Map)){let l={};for(let[d,p]of o.values){let b=Array.from(p.types).map(Xb.SignatureDefinitionTypeMeta.parse);l[d.slice(2)]=(0,Yb.formatTypes)(b)}c+=" "+JSON.stringify(l,null,2)}return a.appendCodeblock(Bj.LanguageId,c),{contents:a.toString()}})}Co.activate=Hj});var LA=g(of=>{"use strict";Object.defineProperty(of,"__esModule",{value:!0});of.activate=void 0;var MA=qe(),Wj=vo(),Gj=sf(),Kj=t=>{if(t.closest.type===MA.ASTType.CallExpression)return t.closest;for(let e=t.outer.length-1;e>=0;e--){let n=t.outer[e];if(n.type===MA.ASTType.CallExpression)return n}return null};function Vj(t){t.connection.onSignatureHelp(async e=>{if(!t.getConfiguration().autocomplete)return;let n=await t.fs.getTextDocument(e.textDocument.uri);if(n==null)return;await t.documentManager.getLatest(n);let r=new Wj.LookupHelper(n,t),i=r.lookupAST(e.position);if(!i)return;let{closest:s}=i,o=Kj(i);if(o===null)return;let a=await r.lookupTypeInfo({closest:o.base,outer:s.scope?[s.scope]:[]});if(!a||!a.isCallable())return;let c=o.arguments.findIndex(d=>{let p=d.start.character-1,b=d.end.character;return p<=e.position.character&&b>=e.position.character}),l={activeParameter:c===-1?0:c,signatures:[],activeSignature:0};return l.signatures.push(...(0,Gj.createSignatureInfo)(a)),l})}of.activate=Vj});var qA=g(af=>{"use strict";Object.defineProperty(af,"__esModule",{value:!0});af.activate=void 0;var NA=Ws();function zj(t){let e=r=>r.languageId!==NA.LanguageId?!1:t.documentManager.schedule(r),n=r=>{r.languageId===NA.LanguageId&&t.documentManager.clear(r)};t.fs.on("text-document-open",e),t.fs.on("text-document-change",e),t.fs.on("text-document-close",n)}af.activate=zj});var FA=g(Ro=>{"use strict";var Xj=Ro&&Ro.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Ro,"__esModule",{value:!0});Ro.activate=void 0;var Yj=Ja(),Jj=rb(),Qj=Xj(yo()),jA=(t,e)=>{let n=Qj.default.get(t.uri),r=n.resolveAllAssignmentsWithQuery(e),i=[];for(let s of r){let o=s.node,a=n.resolveNamespace(o.variable,!0);if(a==null)continue;let u=a?.label??(0,Yj.createExpressionId)(o.variable),c=a?.kind?(0,Jj.getSymbolItemKind)(a.kind):13,l={line:o.variable.start.line-1,character:o.variable.start.character-1},d={line:o.variable.end.line-1,character:o.variable.end.character-1};i.push({name:u,containerName:u,kind:c,location:{uri:t.uri,range:{start:l,end:d}}})}return i};function Zj(t){t.connection.onDocumentSymbol(async e=>{let n=await t.fs.getTextDocument(e.textDocument.uri);return n==null?void 0:t.documentManager.get(n).document?jA(n,""):[]}),t.connection.onWorkspaceSymbol(e=>{let n=[];for(let r of t.fs.getAllTextDocuments())t.documentManager.get(r).document&&n.push(...jA(r,e.query));return n})}Ro.activate=Zj});var uf=g(Vn=>{"use strict";Object.defineProperty(Vn,"__esModule",{value:!0});Vn.buildTokens=Vn.semanticTokensLegend=Vn.SemanticTokenModifier=Vn.SemanticTokenType=void 0;var H=qe(),jt=Or(),eF=tb(),$A=(t,e)=>!!eF.miniscriptMeta.getDefinition(t,e),Q;(function(t){t[t.Keyword=0]="Keyword",t[t.String=1]="String",t[t.Number=2]="Number",t[t.Variable=3]="Variable",t[t.Property=4]="Property",t[t.Function=5]="Function",t[t.Parameter=6]="Parameter",t[t.Operator=7]="Operator",t[t.Comment=8]="Comment",t[t.Constant=9]="Constant",t[t.Punctuator=10]="Punctuator"})(Q=Vn.SemanticTokenType||(Vn.SemanticTokenType={}));var Jb;(function(t){t[t.Declaration=0]="Declaration",t[t.Definition=1]="Definition",t[t.Readonly=2]="Readonly",t[t.Static=3]="Static",t[t.Deprecated=4]="Deprecated",t[t.Abstract=5]="Abstract",t[t.Async=6]="Async",t[t.Modification=7]="Modification",t[t.Documentation=8]="Documentation",t[t.DefaultLibrary=9]="DefaultLibrary"})(Jb=Vn.SemanticTokenModifier||(Vn.SemanticTokenModifier={}));Vn.semanticTokensLegend={tokenTypes:["keyword","string","number","variable","property","function","parameter","operator","comment","constant","punctuator"],tokenModifiers:["declaration","definition","readonly","static","deprecated","abstract","async","modification","documentation","defaultLibrary"]};var BA=t=>1<<t,Qb=class{constructor(e,n){this._lexer=e,this._builder=n,this._validator=new H.ParserValidatorm}next(){this.previousToken=this.token,this.token=this._lexer.next()}isType(e){return this.token!==null&&e===this.token.type}consume(e){return e(this.token)?(this.next(),!0):!1}consumeMany(e){return e(this.token)?(this.next(),!0):!1}requireType(e){let n=this.token;return this.token.type!==e?null:(this.next(),n)}requireToken(e){let n=this.token;return e(n)?(this.next(),n):null}requireTokenOfAny(e){let n=this.token;return e(n)?(this.next(),n):null}skipNewlines(){let e=this;for(;;){if(H.Selectors.Comment(e.token))this._builder.push(e.token.start.line-1,e.token.start.character-1,e.token.value.length+2,Q.Comment,0);else if(!H.Selectors.EndOfLine(e.token))break;e.next()}}processIdentifier(e=!1,n=!1){let r=this,i=r.requireType(H.TokenType.Identifier);if(i)if(n)r._builder.push(i.start.line-1,i.start.character-1,i.value.length,Q.Parameter,0);else if(e){let o=$A(["any"],i.value)?BA(Jb.DefaultLibrary):0;r._builder.push(i.start.line-1,i.start.character-1,i.value.length,Q.Property,o)}else{let o=$A(["general"],i.value)?BA(Jb.DefaultLibrary):0;r._builder.push(i.start.line-1,i.start.character-1,i.value.length,Q.Variable,o)}}processLiteral(){let e=this.token;switch(e.type){case H.TokenType.StringLiteral:{this._builder.push(e.start.line-1,e.start.character-1,e.raw.length,Q.String,0);break}case H.TokenType.NumericLiteral:{this._builder.push(e.start.line-1,e.start.character-1,e.raw.length,Q.Number,0);break}case H.TokenType.BooleanLiteral:case H.TokenType.NilLiteral:{this._builder.push(e.start.line-1,e.start.character-1,e.raw.length,Q.Constant,0);break}}this.next()}processAtom(e=!1,n=!1){let r=this;if(jt.Selectors.Envar(r.token))return r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Keyword,0),r.next(),r.processFeatureEnvarExpression();if(jt.Selectors.Inject(r.token))return r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Keyword,0),r.next(),r.processFeatureInjectExpression();if(jt.Selectors.Line(r.token)){r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Keyword,0),r.next();return}else if(jt.Selectors.File(r.token)){r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Keyword,0),r.next();return}if(r._validator.isLiteral(r.token.type))return r.processLiteral();if(r.isType(H.TokenType.Identifier))return r.processIdentifier()}processQuantity(e=!1,n=!1){let r=this;if(!H.Selectors.LParenthesis(r.token))return r.processAtom(e,n);r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next(),r.skipNewlines(),r.processExpr();let i=r.requireToken(H.Selectors.RParenthesis);i&&r._builder.push(i.start.line-1,i.start.character-1,i.value.length,Q.Punctuator,0)}processList(e=!1,n=!1){let r=this;if(!H.Selectors.SLBracket(r.token))return r.processQuantity(e,n);if(r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next(),H.Selectors.SRBracket(r.token))r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next();else for(r.skipNewlines();!H.Selectors.EndOfFile(r.token);){if(H.Selectors.SRBracket(r.token)){r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next();break}if(r.processExpr(),H.Selectors.MapSeperator(r.token)&&(r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next(),r.skipNewlines()),H.Selectors.SRBracket(r.token)){r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next();break}}}processMap(e=!1,n=!1){let r=this;if(!H.Selectors.CLBracket(r.token))return r.processList(e,n);if(r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next(),H.Selectors.CRBracket(r.token))r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next();else for(r.skipNewlines();!H.Selectors.EndOfFile(r.token);){if(H.Selectors.CRBracket(r.token)){r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next();break}r.processExpr();let i=r.requireToken(H.Selectors.MapKeyValueSeperator);if(!i)return;if(r._builder.push(i.start.line-1,i.start.character-1,i.value.length,Q.Punctuator,0),r.skipNewlines(),r.processExpr(),H.Selectors.MapSeperator(r.token)&&(r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next(),r.skipNewlines()),H.Selectors.CRBracket(r.token)){r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next();break}}}processCallArgs(){let e=this;if(H.Selectors.LParenthesis(e.token))if(e._builder.push(e.token.start.line-1,e.token.start.character-1,e.token.value.length,Q.Punctuator,0),e.next(),H.Selectors.RParenthesis(e.token))e._builder.push(e.token.start.line-1,e.token.start.character-1,e.token.value.length,Q.Punctuator,0),e.next();else for(;!H.Selectors.EndOfFile(e.token);){e.skipNewlines(),e.processExpr(),e.skipNewlines();let n=e.requireTokenOfAny(H.SelectorGroups.CallArgsEnd);if(!n)return;if(H.Selectors.RParenthesis(n)){e._builder.push(n.start.line-1,n.start.character-1,n.value.length,Q.Punctuator,0);break}else if(!H.Selectors.ArgumentSeperator(n))break}}processCallExpr(e=!1,n=!1){let r=this;for(r.processMap(e,n);!H.Selectors.EndOfFile(r.token);)if(H.Selectors.MemberSeperator(r.token))r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next(),r.skipNewlines(),r.processIdentifier(!0);else if(H.Selectors.SLBracket(r.token)&&!r.token.afterSpace){r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next(),r.skipNewlines(),H.Selectors.SliceSeperator(r.token)?(r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next(),r.skipNewlines(),H.Selectors.SRBracket(r.token)?r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0):r.processExpr()):(r.processExpr(),H.Selectors.SliceSeperator(r.token)&&(r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next(),r.skipNewlines(),H.Selectors.SRBracket(r.token)?r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0):r.processExpr()));let i=r.requireToken(H.Selectors.SRBracket);if(!i)return;r._builder.push(i.start.line-1,i.start.character-1,i.value.length,Q.Punctuator,0)}else if(H.Selectors.LParenthesis(r.token)&&(!e||!r.token.afterSpace))r.processCallArgs();else break}processPower(e=!1,n=!1){let r=this;r.processCallExpr(e,n),H.Selectors.Power(r.token)&&(r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Operator,0),r.next(),r.skipNewlines(),r.processCallExpr())}processAddressOf(e=!1,n=!1){let r=this;if(!H.Selectors.Reference(r.token))return r.processPower(e,n);r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next(),r.skipNewlines(),r.processPower()}processNew(e=!1,n=!1){let r=this;if(!H.Selectors.New(r.token))return r.processAddressOf(e,n);r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Keyword,0),r.next(),r.skipNewlines(),r.processNew()}processUnaryMinus(e=!1,n=!1){let r=this;if(!H.Selectors.Minus(r.token))return r.processNew(e,n);r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Operator,0),r.next(),r.skipNewlines(),r.processNew()}processMultDiv(e=!1,n=!1){let r=this;for(r.processUnaryMinus(e,n);H.SelectorGroups.MultiDivOperators(r.token);)r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Operator,0),r.next(),r.skipNewlines(),r.processUnaryMinus()}processBitwise(e=!1,n=!1){let r=this;for(r.processMultDiv(e,n);jt.SelectorGroups.BitwiseOperators(r.token);)r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Operator,0),r.next(),r.skipNewlines(),r.processMultDiv()}processAddSub(e=!1,n=!1){let r=this;for(r.processBitwise(e,n);H.Selectors.Plus(r.token)||H.Selectors.Minus(r.token)&&(!n||!r.token.afterSpace||r._lexer.isAtWhitespace());)r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Operator,0),r.next(),r.skipNewlines(),r.processBitwise()}processComparisons(e=!1,n=!1){let r=this;if(r.processAddSub(e,n),!!H.SelectorGroups.ComparisonOperators(r.token))do r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Operator,0),r.next(),r.skipNewlines(),r.processAddSub();while(H.SelectorGroups.ComparisonOperators(r.token))}processBitwiseAnd(e=!1,n=!1){let r=this;for(r.processComparisons(e,n);jt.Selectors.BitwiseAnd(r.token);)r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next(),r.processComparisons()}processBitwiseOr(e=!1,n=!1){let r=this;for(r.processBitwiseAnd(e,n);jt.Selectors.BitwiseOr(r.token);)r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0),r.next(),r.processBitwiseAnd()}processIsa(e=!1,n=!1){let r=this;if(r.processBitwiseOr(e,n),H.Selectors.Isa(r.token)){r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Keyword,0),r.next(),r.skipNewlines(),r.processBitwiseOr();return}}processNot(e=!1,n=!1){let r=this;if(H.Selectors.Not(r.token)){r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Keyword,0),r.next(),r.skipNewlines(),r.processIsa();return}r.processIsa(e,n)}processAnd(e=!1,n=!1){let r=this;for(r.processNot(e,n);H.Selectors.And(r.token);)r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Keyword,0),r.next(),r.skipNewlines(),r.processNot()}processOr(e=!1,n=!1){let r=this;for(r.processAnd(e,n);H.Selectors.Or(r.token);)r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Keyword,0),r.next(),r.skipNewlines(),r.processAnd()}processFunctionDeclaration(e=!1,n=!1){let r=this;if(!H.Selectors.Function(r.token))return r.processOr(e,n);if(r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Keyword,0),r.next(),!H.SelectorGroups.BlockEndOfLine(r.token)){let i=r.requireToken(H.Selectors.LParenthesis);if(!i)return;for(r._builder.push(i.start.line-1,i.start.character-1,i.value.length,Q.Punctuator,0);!H.SelectorGroups.FunctionDeclarationArgEnd(r.token)&&(r.processIdentifier(!1,!0),r.consume(H.Selectors.Assign)&&(r._builder.push(r.previousToken.start.line-1,r.previousToken.start.character-1,r.previousToken.value.length,Q.Operator,0),r.processExpr()),!H.Selectors.RParenthesis(r.token));){r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0);let o=r.requireToken(H.Selectors.ArgumentSeperator);if(!o)return;if(r._builder.push(o.start.line-1,o.start.character-1,o.value.length,Q.Punctuator,0),H.Selectors.RParenthesis(r.token)){r._builder.push(r.token.start.line-1,r.token.start.character-1,r.token.value.length,Q.Punctuator,0);break}}let s=r.requireToken(H.Selectors.RParenthesis);if(!s)return;r._builder.push(s.start.line-1,s.start.character-1,s.value.length,Q.Punctuator,0)}}processExpr(e=!1,n=!1){this.processFunctionDeclaration(e,n)}processForShortcutStatement(){this.processShortcutStatement()}processForStatement(){let e=this;e.processIdentifier();let n=e.requireToken(H.Selectors.In);if(n&&(e._builder.push(n.start.line-1,n.start.character-1,n.value.length,Q.Keyword,0),e.processExpr(),!H.SelectorGroups.BlockEndOfLine(e.token))){e.processForShortcutStatement();return}}processWhileShortcutStatement(){this.processShortcutStatement()}processWhileStatement(){let e=this;if(e.processExpr(),!H.SelectorGroups.BlockEndOfLine(e.token))return e.processWhileShortcutStatement()}processIfShortcutStatement(){let e=this;e.processShortcutStatement(),H.Selectors.Else(e.token)&&(e._builder.push(e.token.start.line-1,e.token.start.character-1,e.token.value.length,Q.Keyword,0),e.next(),e.processShortcutStatement())}processNextIfClause(e){let n=this;switch(e){case H.ASTType.ElseifClause:{n.processExpr();let r=n.requireToken(H.Selectors.Then);if(!r)return;n._builder.push(r.start.line-1,r.start.character-1,r.value.length,Q.Keyword,0);break}case H.ASTType.ElseClause:break}}processIfStatement(){let e=this;e.processExpr();let n=e.requireToken(H.Selectors.Then);if(n&&(e._builder.push(n.start.line-1,n.start.character-1,n.value.length,Q.Keyword,0),!H.SelectorGroups.BlockEndOfLine(e.token))){e.processIfShortcutStatement();return}}processReturnStatement(){let e=this;H.SelectorGroups.ReturnStatementEnd(e.token)||e.processExpr()}processAssignment(){let e=this,n=e.token;if(e.processExpr(!0,!0),H.SelectorGroups.AssignmentEndOfExpr(e.token))return;if(H.Selectors.Assign(e.token)){e._builder.push(e.token.start.line-1,e.token.start.character-1,e.token.value.length,Q.Operator,0),e.next(),e.processExpr();return}else if(H.SelectorGroups.AssignmentShorthand(e.token)){let i=e.token;e._builder.push(e.token.start.line-1,e.token.start.character-1,e.token.value.length,Q.Operator,0),e.next(),e.processExpr();return}let r=[];for(;!H.Selectors.EndOfFile(e.token)&&(e.processExpr(),!(H.SelectorGroups.BlockEndOfLine(e.token)||H.Selectors.Else(e.token)));){if(H.Selectors.ArgumentSeperator(e.token)){e.next(),e.skipNewlines();continue}let i=e.requireTokenOfAny(H.SelectorGroups.AssignmentCommandArgs);if(!i)return;if(H.Selectors.EndOfLine(i)||H.Selectors.EndOfFile(i))break}r.length}processShortcutStatement(){let e=this;if(H.TokenType.Keyword===e.token.type&&H.Keyword.Not!==e.token.value){let n=e.token.value;switch(this._builder.push(e.token.start.line-1,e.token.start.character-1,e.token.value.length,Q.Keyword,0),n){case H.Keyword.Return:e.next(),e.processReturnStatement();case H.Keyword.Continue:{e.next();return}case H.Keyword.Break:{e.next();return}default:}}return e.processAssignment()}processPathSegment(){let e=this;if(this.token.type===H.ASTType.StringLiteral){let r=this.token;e._builder.push(r.start.line-1,r.start.character-1,r.raw.length,Q.String,0),this.next();return}let n="";for(;!jt.SelectorGroups.PathSegmentEnd(e.token);)e._builder.push(e.token.start.line-1,e.token.start.character-1,e.token.value.length,Q.String,0),n=n+e.token.value,e.next();return e.consumeMany(jt.SelectorGroups.PathSegmentEnd)&&e._builder.push(e.previousToken.start.line-1,e.previousToken.start.character-1,e.previousToken.value.length,Q.Punctuator,0),n}processFeatureEnvarExpression(){let e=this;e._builder.push(e.token.start.line-1,e.token.start.character-1,e.token.value.length,Q.String,0),e.next()}processFeatureInjectExpression(){this.processPathSegment()}processFeatureImportStatement(){let e=this;e.processIdentifier(),e.consume(jt.Selectors.From)&&(e._builder.push(e.previousToken.start.line-1,e.previousToken.start.character-1,e.previousToken.value.length,Q.Keyword,0),e.processPathSegment())}processFeatureIncludeStatement(){this.processPathSegment()}processNativeImportCodeStatement(){let e=this;if(e.consume(H.Selectors.LParenthesis)){if(e._builder.push(e.previousToken.start.line-1,e.previousToken.start.character-1,e.previousToken.value.length,Q.Punctuator,0),H.TokenType.StringLiteral===e.token.type){let n=e.token;e._builder.push(n.start.line-1,n.start.character-1,n.raw.length,Q.String,0),e.next()}else return;if(e.consume(H.Selectors.ImportCodeSeperator)){if(e._builder.push(e.previousToken.start.line-1,e.previousToken.start.character-1,e.previousToken.value.length,Q.Punctuator,0),!e.isType(H.TokenType.StringLiteral))return;let n=e.token;e._builder.push(n.start.line-1,n.start.character-1,n.raw.length,Q.String,0),e.next()}e.consume(H.Selectors.RParenthesis)&&e._builder.push(e.previousToken.start.line-1,e.previousToken.start.character-1,e.previousToken.value.length,Q.Punctuator,0)}}processKeyword(){let e=this,n=e.token.value;switch(this._builder.push(e.token.start.line-1,e.token.start.character-1,e.token.value.length,Q.Keyword,0),n){case H.Keyword.Return:{e.next(),e.processReturnStatement();return}case H.Keyword.If:{e.next(),e.processIfStatement();return}case H.Keyword.ElseIf:{e.next(),e.processNextIfClause(H.ASTType.ElseifClause);return}case H.Keyword.Else:{e.next(),e.processNextIfClause(H.ASTType.ElseClause);return}case H.Keyword.While:{e.next(),e.processWhileStatement();return}case H.Keyword.For:{e.next(),e.processForStatement();return}case H.Keyword.EndFunction:{e.next();return}case H.Keyword.EndFor:{e.next();return}case H.Keyword.EndWhile:{e.next();return}case H.Keyword.EndIf:{e.next();return}case H.Keyword.Continue:{e.next();return}case H.Keyword.Break:{e.next();return}case jt.GreybelKeyword.Include:case jt.GreybelKeyword.IncludeWithComment:{e.next(),e.processFeatureIncludeStatement();return}case jt.GreybelKeyword.Import:case jt.GreybelKeyword.ImportWithComment:{e.next(),e.processFeatureImportStatement();return}case jt.GreybelKeyword.Envar:{e.next(),e.processFeatureEnvarExpression();return}case jt.GreybelKeyword.Inject:{e.next(),e.processFeatureInjectExpression();return}case jt.GreybelKeyword.Debugger:{e.next();return}}}processStatement(){let e=this;if(H.TokenType.Keyword===e.token.type&&H.Keyword.Not!==e.token.value){e.processKeyword();return}e.processAssignment()}process(){let e=this;for(e.next();!H.Selectors.EndOfFile(e.token)&&(e.skipNewlines(),!H.Selectors.EndOfFile(e.token));)e.processStatement()}};function tF(t,e){let n=new jt.Lexer(e.content,{unsafe:!0});return new Qb(n,t).process(),t}Vn.buildTokens=tF});var UA=g(cf=>{"use strict";Object.defineProperty(cf,"__esModule",{value:!0});cf.activate=void 0;var nF=uf();function rF(t){t.connection.languages.semanticTokens.on(async e=>{let n=await t.fs.getTextDocument(e.textDocument.uri);if(n==null)return;let r=t.documentManager.get(n);if(!r.document)return;let i=t.createSemanticTokensBuilder();return(0,nF.buildTokens)(i,r),i.build()})}cf.activate=rF});var ff=g((cW,KA)=>{var cu=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,iF=typeof AbortController=="function",lf=iF?AbortController:class{constructor(){this.signal=new HA}abort(e=new Error("This operation was aborted")){this.signal.reason=this.signal.reason||e,this.signal.aborted=!0,this.signal.dispatchEvent({type:"abort",target:this.signal})}},sF=typeof AbortSignal=="function",oF=typeof lf.AbortSignal=="function",HA=sF?AbortSignal:oF?lf.AbortController:class{constructor(){this.reason=void 0,this.aborted=!1,this._listeners=[]}dispatchEvent(e){e.type==="abort"&&(this.aborted=!0,this.onabort(e),this._listeners.forEach(n=>n(e),this))}onabort(){}addEventListener(e,n){e==="abort"&&this._listeners.push(n)}removeEventListener(e,n){e==="abort"&&(this._listeners=this._listeners.filter(r=>r!==n))}},nv=new Set,Zb=(t,e)=>{let n=`LRU_CACHE_OPTION_${t}`;df(n)&&rv(n,`${t} option`,`options.${e}`,Do)},ev=(t,e)=>{let n=`LRU_CACHE_METHOD_${t}`;if(df(n)){let{prototype:r}=Do,{get:i}=Object.getOwnPropertyDescriptor(r,t);rv(n,`${t} method`,`cache.${e}()`,i)}},aF=(t,e)=>{let n=`LRU_CACHE_PROPERTY_${t}`;if(df(n)){let{prototype:r}=Do,{get:i}=Object.getOwnPropertyDescriptor(r,t);rv(n,`${t} property`,`cache.${e}`,i)}},WA=(...t)=>{typeof process=="object"&&process&&typeof process.emitWarning=="function"?process.emitWarning(...t):console.error(...t)},df=t=>!nv.has(t),rv=(t,e,n,r)=>{nv.add(t);let i=`The ${e} is deprecated. Please use ${n} instead.`;WA(i,"DeprecationWarning",t,r)},Ii=t=>t&&t===Math.floor(t)&&t>0&&isFinite(t),GA=t=>Ii(t)?t<=Math.pow(2,8)?Uint8Array:t<=Math.pow(2,16)?Uint16Array:t<=Math.pow(2,32)?Uint32Array:t<=Number.MAX_SAFE_INTEGER?Po:null:null,Po=class extends Array{constructor(e){super(e),this.fill(0)}},tv=class{constructor(e){if(e===0)return[];let n=GA(e);this.heap=new n(e),this.length=0}push(e){this.heap[this.length++]=e}pop(){return this.heap[--this.length]}},Do=class t{constructor(e={}){let{max:n=0,ttl:r,ttlResolution:i=1,ttlAutopurge:s,updateAgeOnGet:o,updateAgeOnHas:a,allowStale:u,dispose:c,disposeAfter:l,noDisposeOnSet:d,noUpdateTTL:p,maxSize:b=0,maxEntrySize:_=0,sizeCalculation:E,fetchMethod:L,fetchContext:M,noDeleteOnFetchRejection:x,noDeleteOnStaleGet:k,allowStaleOnFetchRejection:v,allowStaleOnFetchAbort:F,ignoreFetchAbort:C}=e,{length:V,maxAge:ce,stale:ye}=e instanceof t?{}:e;if(n!==0&&!Ii(n))throw new TypeError("max option must be a nonnegative integer");let K=n?GA(n):Array;if(!K)throw new Error("invalid max value: "+n);if(this.max=n,this.maxSize=b,this.maxEntrySize=_||this.maxSize,this.sizeCalculation=E||V,this.sizeCalculation){if(!this.maxSize&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(this.fetchMethod=L||null,this.fetchMethod&&typeof this.fetchMethod!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.fetchContext=M,!this.fetchMethod&&M!==void 0)throw new TypeError("cannot set fetchContext without fetchMethod");if(this.keyMap=new Map,this.keyList=new Array(n).fill(null),this.valList=new Array(n).fill(null),this.next=new K(n),this.prev=new K(n),this.head=0,this.tail=0,this.free=new tv(n),this.initialFill=1,this.size=0,typeof c=="function"&&(this.dispose=c),typeof l=="function"?(this.disposeAfter=l,this.disposed=[]):(this.disposeAfter=null,this.disposed=null),this.noDisposeOnSet=!!d,this.noUpdateTTL=!!p,this.noDeleteOnFetchRejection=!!x,this.allowStaleOnFetchRejection=!!v,this.allowStaleOnFetchAbort=!!F,this.ignoreFetchAbort=!!C,this.maxEntrySize!==0){if(this.maxSize!==0&&!Ii(this.maxSize))throw new TypeError("maxSize must be a positive integer if specified");if(!Ii(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.initializeSizeTracking()}if(this.allowStale=!!u||!!ye,this.noDeleteOnStaleGet=!!k,this.updateAgeOnGet=!!o,this.updateAgeOnHas=!!a,this.ttlResolution=Ii(i)||i===0?i:1,this.ttlAutopurge=!!s,this.ttl=r||ce||0,this.ttl){if(!Ii(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.initializeTTLTracking()}if(this.max===0&&this.ttl===0&&this.maxSize===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.max&&!this.maxSize){let A="LRU_CACHE_UNBOUNDED";df(A)&&(nv.add(A),WA("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",A,t))}ye&&Zb("stale","allowStale"),ce&&Zb("maxAge","ttl"),V&&Zb("length","sizeCalculation")}getRemainingTTL(e){return this.has(e,{updateAgeOnHas:!1})?1/0:0}initializeTTLTracking(){this.ttls=new Po(this.max),this.starts=new Po(this.max),this.setItemTTL=(r,i,s=cu.now())=>{if(this.starts[r]=i!==0?s:0,this.ttls[r]=i,i!==0&&this.ttlAutopurge){let o=setTimeout(()=>{this.isStale(r)&&this.delete(this.keyList[r])},i+1);o.unref&&o.unref()}},this.updateItemAge=r=>{this.starts[r]=this.ttls[r]!==0?cu.now():0},this.statusTTL=(r,i)=>{r&&(r.ttl=this.ttls[i],r.start=this.starts[i],r.now=e||n(),r.remainingTTL=r.now+r.ttl-r.start)};let e=0,n=()=>{let r=cu.now();if(this.ttlResolution>0){e=r;let i=setTimeout(()=>e=0,this.ttlResolution);i.unref&&i.unref()}return r};this.getRemainingTTL=r=>{let i=this.keyMap.get(r);return i===void 0?0:this.ttls[i]===0||this.starts[i]===0?1/0:this.starts[i]+this.ttls[i]-(e||n())},this.isStale=r=>this.ttls[r]!==0&&this.starts[r]!==0&&(e||n())-this.starts[r]>this.ttls[r]}updateItemAge(e){}statusTTL(e,n){}setItemTTL(e,n,r){}isStale(e){return!1}initializeSizeTracking(){this.calculatedSize=0,this.sizes=new Po(this.max),this.removeItemSize=e=>{this.calculatedSize-=this.sizes[e],this.sizes[e]=0},this.requireSize=(e,n,r,i)=>{if(this.isBackgroundFetch(n))return 0;if(!Ii(r))if(i){if(typeof i!="function")throw new TypeError("sizeCalculation must be a function");if(r=i(n,e),!Ii(r))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return r},this.addItemSize=(e,n,r)=>{if(this.sizes[e]=n,this.maxSize){let i=this.maxSize-this.sizes[e];for(;this.calculatedSize>i;)this.evict(!0)}this.calculatedSize+=this.sizes[e],r&&(r.entrySize=n,r.totalCalculatedSize=this.calculatedSize)}}removeItemSize(e){}addItemSize(e,n){}requireSize(e,n,r,i){if(r||i)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache")}*indexes({allowStale:e=this.allowStale}={}){if(this.size)for(let n=this.tail;!(!this.isValidIndex(n)||((e||!this.isStale(n))&&(yield n),n===this.head));)n=this.prev[n]}*rindexes({allowStale:e=this.allowStale}={}){if(this.size)for(let n=this.head;!(!this.isValidIndex(n)||((e||!this.isStale(n))&&(yield n),n===this.tail));)n=this.next[n]}isValidIndex(e){return e!==void 0&&this.keyMap.get(this.keyList[e])===e}*entries(){for(let e of this.indexes())this.valList[e]!==void 0&&this.keyList[e]!==void 0&&!this.isBackgroundFetch(this.valList[e])&&(yield[this.keyList[e],this.valList[e]])}*rentries(){for(let e of this.rindexes())this.valList[e]!==void 0&&this.keyList[e]!==void 0&&!this.isBackgroundFetch(this.valList[e])&&(yield[this.keyList[e],this.valList[e]])}*keys(){for(let e of this.indexes())this.keyList[e]!==void 0&&!this.isBackgroundFetch(this.valList[e])&&(yield this.keyList[e])}*rkeys(){for(let e of this.rindexes())this.keyList[e]!==void 0&&!this.isBackgroundFetch(this.valList[e])&&(yield this.keyList[e])}*values(){for(let e of this.indexes())this.valList[e]!==void 0&&!this.isBackgroundFetch(this.valList[e])&&(yield this.valList[e])}*rvalues(){for(let e of this.rindexes())this.valList[e]!==void 0&&!this.isBackgroundFetch(this.valList[e])&&(yield this.valList[e])}[Symbol.iterator](){return this.entries()}find(e,n){for(let r of this.indexes()){let i=this.valList[r],s=this.isBackgroundFetch(i)?i.__staleWhileFetching:i;if(s!==void 0&&e(s,this.keyList[r],this))return this.get(this.keyList[r],n)}}forEach(e,n=this){for(let r of this.indexes()){let i=this.valList[r],s=this.isBackgroundFetch(i)?i.__staleWhileFetching:i;s!==void 0&&e.call(n,s,this.keyList[r],this)}}rforEach(e,n=this){for(let r of this.rindexes()){let i=this.valList[r],s=this.isBackgroundFetch(i)?i.__staleWhileFetching:i;s!==void 0&&e.call(n,s,this.keyList[r],this)}}get prune(){return ev("prune","purgeStale"),this.purgeStale}purgeStale(){let e=!1;for(let n of this.rindexes({allowStale:!0}))this.isStale(n)&&(this.delete(this.keyList[n]),e=!0);return e}dump(){let e=[];for(let n of this.indexes({allowStale:!0})){let r=this.keyList[n],i=this.valList[n],s=this.isBackgroundFetch(i)?i.__staleWhileFetching:i;if(s===void 0)continue;let o={value:s};if(this.ttls){o.ttl=this.ttls[n];let a=cu.now()-this.starts[n];o.start=Math.floor(Date.now()-a)}this.sizes&&(o.size=this.sizes[n]),e.unshift([r,o])}return e}load(e){this.clear();for(let[n,r]of e){if(r.start){let i=Date.now()-r.start;r.start=cu.now()-i}this.set(n,r.value,r)}}dispose(e,n,r){}set(e,n,{ttl:r=this.ttl,start:i,noDisposeOnSet:s=this.noDisposeOnSet,size:o=0,sizeCalculation:a=this.sizeCalculation,noUpdateTTL:u=this.noUpdateTTL,status:c}={}){if(o=this.requireSize(e,n,o,a),this.maxEntrySize&&o>this.maxEntrySize)return c&&(c.set="miss",c.maxEntrySizeExceeded=!0),this.delete(e),this;let l=this.size===0?void 0:this.keyMap.get(e);if(l===void 0)l=this.newIndex(),this.keyList[l]=e,this.valList[l]=n,this.keyMap.set(e,l),this.next[this.tail]=l,this.prev[l]=this.tail,this.tail=l,this.size++,this.addItemSize(l,o,c),c&&(c.set="add"),u=!1;else{this.moveToTail(l);let d=this.valList[l];if(n!==d){if(this.isBackgroundFetch(d)?d.__abortController.abort(new Error("replaced")):s||(this.dispose(d,e,"set"),this.disposeAfter&&this.disposed.push([d,e,"set"])),this.removeItemSize(l),this.valList[l]=n,this.addItemSize(l,o,c),c){c.set="replace";let p=d&&this.isBackgroundFetch(d)?d.__staleWhileFetching:d;p!==void 0&&(c.oldValue=p)}}else c&&(c.set="update")}if(r!==0&&this.ttl===0&&!this.ttls&&this.initializeTTLTracking(),u||this.setItemTTL(l,r,i),this.statusTTL(c,l),this.disposeAfter)for(;this.disposed.length;)this.disposeAfter(...this.disposed.shift());return this}newIndex(){return this.size===0?this.tail:this.size===this.max&&this.max!==0?this.evict(!1):this.free.length!==0?this.free.pop():this.initialFill++}pop(){if(this.size){let e=this.valList[this.head];return this.evict(!0),e}}evict(e){let n=this.head,r=this.keyList[n],i=this.valList[n];return this.isBackgroundFetch(i)?i.__abortController.abort(new Error("evicted")):(this.dispose(i,r,"evict"),this.disposeAfter&&this.disposed.push([i,r,"evict"])),this.removeItemSize(n),e&&(this.keyList[n]=null,this.valList[n]=null,this.free.push(n)),this.head=this.next[n],this.keyMap.delete(r),this.size--,n}has(e,{updateAgeOnHas:n=this.updateAgeOnHas,status:r}={}){let i=this.keyMap.get(e);if(i!==void 0)if(this.isStale(i))r&&(r.has="stale",this.statusTTL(r,i));else return n&&this.updateItemAge(i),r&&(r.has="hit"),this.statusTTL(r,i),!0;else r&&(r.has="miss");return!1}peek(e,{allowStale:n=this.allowStale}={}){let r=this.keyMap.get(e);if(r!==void 0&&(n||!this.isStale(r))){let i=this.valList[r];return this.isBackgroundFetch(i)?i.__staleWhileFetching:i}}backgroundFetch(e,n,r,i){let s=n===void 0?void 0:this.valList[n];if(this.isBackgroundFetch(s))return s;let o=new lf;r.signal&&r.signal.addEventListener("abort",()=>o.abort(r.signal.reason));let a={signal:o.signal,options:r,context:i},u=(b,_=!1)=>{let{aborted:E}=o.signal,L=r.ignoreFetchAbort&&b!==void 0;return r.status&&(E&&!_?(r.status.fetchAborted=!0,r.status.fetchError=o.signal.reason,L&&(r.status.fetchAbortIgnored=!0)):r.status.fetchResolved=!0),E&&!L&&!_?l(o.signal.reason):(this.valList[n]===p&&(b===void 0?p.__staleWhileFetching?this.valList[n]=p.__staleWhileFetching:this.delete(e):(r.status&&(r.status.fetchUpdated=!0),this.set(e,b,a.options))),b)},c=b=>(r.status&&(r.status.fetchRejected=!0,r.status.fetchError=b),l(b)),l=b=>{let{aborted:_}=o.signal,E=_&&r.allowStaleOnFetchAbort,L=E||r.allowStaleOnFetchRejection,M=L||r.noDeleteOnFetchRejection;if(this.valList[n]===p&&(!M||p.__staleWhileFetching===void 0?this.delete(e):E||(this.valList[n]=p.__staleWhileFetching)),L)return r.status&&p.__staleWhileFetching!==void 0&&(r.status.returnedStale=!0),p.__staleWhileFetching;if(p.__returned===p)throw b},d=(b,_)=>{this.fetchMethod(e,s,a).then(E=>b(E),_),o.signal.addEventListener("abort",()=>{(!r.ignoreFetchAbort||r.allowStaleOnFetchAbort)&&(b(),r.allowStaleOnFetchAbort&&(b=E=>u(E,!0)))})};r.status&&(r.status.fetchDispatched=!0);let p=new Promise(d).then(u,c);return p.__abortController=o,p.__staleWhileFetching=s,p.__returned=null,n===void 0?(this.set(e,p,{...a.options,status:void 0}),n=this.keyMap.get(e)):this.valList[n]=p,p}isBackgroundFetch(e){return e&&typeof e=="object"&&typeof e.then=="function"&&Object.prototype.hasOwnProperty.call(e,"__staleWhileFetching")&&Object.prototype.hasOwnProperty.call(e,"__returned")&&(e.__returned===e||e.__returned===null)}async fetch(e,{allowStale:n=this.allowStale,updateAgeOnGet:r=this.updateAgeOnGet,noDeleteOnStaleGet:i=this.noDeleteOnStaleGet,ttl:s=this.ttl,noDisposeOnSet:o=this.noDisposeOnSet,size:a=0,sizeCalculation:u=this.sizeCalculation,noUpdateTTL:c=this.noUpdateTTL,noDeleteOnFetchRejection:l=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:d=this.allowStaleOnFetchRejection,ignoreFetchAbort:p=this.ignoreFetchAbort,allowStaleOnFetchAbort:b=this.allowStaleOnFetchAbort,fetchContext:_=this.fetchContext,forceRefresh:E=!1,status:L,signal:M}={}){if(!this.fetchMethod)return L&&(L.fetch="get"),this.get(e,{allowStale:n,updateAgeOnGet:r,noDeleteOnStaleGet:i,status:L});let x={allowStale:n,updateAgeOnGet:r,noDeleteOnStaleGet:i,ttl:s,noDisposeOnSet:o,size:a,sizeCalculation:u,noUpdateTTL:c,noDeleteOnFetchRejection:l,allowStaleOnFetchRejection:d,allowStaleOnFetchAbort:b,ignoreFetchAbort:p,status:L,signal:M},k=this.keyMap.get(e);if(k===void 0){L&&(L.fetch="miss");let v=this.backgroundFetch(e,k,x,_);return v.__returned=v}else{let v=this.valList[k];if(this.isBackgroundFetch(v)){let ye=n&&v.__staleWhileFetching!==void 0;return L&&(L.fetch="inflight",ye&&(L.returnedStale=!0)),ye?v.__staleWhileFetching:v.__returned=v}let F=this.isStale(k);if(!E&&!F)return L&&(L.fetch="hit"),this.moveToTail(k),r&&this.updateItemAge(k),this.statusTTL(L,k),v;let C=this.backgroundFetch(e,k,x,_),V=C.__staleWhileFetching!==void 0,ce=V&&n;return L&&(L.fetch=V&&F?"stale":"refresh",ce&&F&&(L.returnedStale=!0)),ce?C.__staleWhileFetching:C.__returned=C}}get(e,{allowStale:n=this.allowStale,updateAgeOnGet:r=this.updateAgeOnGet,noDeleteOnStaleGet:i=this.noDeleteOnStaleGet,status:s}={}){let o=this.keyMap.get(e);if(o!==void 0){let a=this.valList[o],u=this.isBackgroundFetch(a);return this.statusTTL(s,o),this.isStale(o)?(s&&(s.get="stale"),u?(s&&(s.returnedStale=n&&a.__staleWhileFetching!==void 0),n?a.__staleWhileFetching:void 0):(i||this.delete(e),s&&(s.returnedStale=n),n?a:void 0)):(s&&(s.get="hit"),u?a.__staleWhileFetching:(this.moveToTail(o),r&&this.updateItemAge(o),a))}else s&&(s.get="miss")}connect(e,n){this.prev[n]=e,this.next[e]=n}moveToTail(e){e!==this.tail&&(e===this.head?this.head=this.next[e]:this.connect(this.prev[e],this.next[e]),this.connect(this.tail,e),this.tail=e)}get del(){return ev("del","delete"),this.delete}delete(e){let n=!1;if(this.size!==0){let r=this.keyMap.get(e);if(r!==void 0)if(n=!0,this.size===1)this.clear();else{this.removeItemSize(r);let i=this.valList[r];this.isBackgroundFetch(i)?i.__abortController.abort(new Error("deleted")):(this.dispose(i,e,"delete"),this.disposeAfter&&this.disposed.push([i,e,"delete"])),this.keyMap.delete(e),this.keyList[r]=null,this.valList[r]=null,r===this.tail?this.tail=this.prev[r]:r===this.head?this.head=this.next[r]:(this.next[this.prev[r]]=this.next[r],this.prev[this.next[r]]=this.prev[r]),this.size--,this.free.push(r)}}if(this.disposed)for(;this.disposed.length;)this.disposeAfter(...this.disposed.shift());return n}clear(){for(let e of this.rindexes({allowStale:!0})){let n=this.valList[e];if(this.isBackgroundFetch(n))n.__abortController.abort(new Error("deleted"));else{let r=this.keyList[e];this.dispose(n,r,"delete"),this.disposeAfter&&this.disposed.push([n,r,"delete"])}}if(this.keyMap.clear(),this.valList.fill(null),this.keyList.fill(null),this.ttls&&(this.ttls.fill(0),this.starts.fill(0)),this.sizes&&this.sizes.fill(0),this.head=0,this.tail=0,this.initialFill=1,this.free.length=0,this.calculatedSize=0,this.size=0,this.disposed)for(;this.disposed.length;)this.disposeAfter(...this.disposed.shift())}get reset(){return ev("reset","clear"),this.clear}get length(){return aF("length","size"),this.size}static get AbortController(){return lf}static get AbortSignal(){return HA}};KA.exports=Do});var ZA=g((lW,QA)=>{var av=Object.defineProperty,uF=Object.getOwnPropertyDescriptor,cF=Object.getOwnPropertyNames,lF=Object.prototype.hasOwnProperty,dF=(t,e)=>{for(var n in e)av(t,n,{get:e[n],enumerable:!0})},fF=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of cF(e))!lF.call(t,i)&&i!==n&&av(t,i,{get:()=>e[i],enumerable:!(r=uF(e,i))||r.enumerable});return t},pF=t=>fF(av({},"__esModule",{value:!0}),t),VA={};dF(VA,{ScheduleIntervalHelper:()=>iv,SchedulePostMessageHelper:()=>sv,ScheduleSetImmmediateHelper:()=>ov,schedule:()=>mF,scheduleProvider:()=>JA});QA.exports=pF(VA);var hF=Promise.prototype.then.bind(Promise.resolve()),uv=class pf{constructor(){this.queue=[],this.sleep=0}static{this.SLEEP_LIMIT=512}static{this.QUEUE_LIMIT=1024}static isApplicable(){return!1}static createCallback(){throw new Error("Cannot create callback from base schedule helper!")}tick(){let e=this.queue,n=Math.min(e.length,pf.QUEUE_LIMIT);this.queue=this.queue.slice(pf.QUEUE_LIMIT);for(let r=0;r<n;hF(e[r++]));if(this.queue.length>0&&(this.sleep=0),this.sleep++<=pf.SLEEP_LIMIT){this.nextTick();return}this.endTick()}start(){this.isTickActive()||(this.sleep=0,this.startTick())}add(e){this.queue.push(e),this.start()}},iv=class zA extends uv{constructor(){super(...arguments),this.timer=null,this.boundTick=this.tick.bind(this)}static isApplicable(){return!!globalThis.setInterval}static createCallback(){let e=new zA;return e.add.bind(e)}isTickActive(){return this.timer!==null}startTick(){this.timer=setInterval(this.boundTick,0)}nextTick(){}endTick(){clearInterval(this.timer),this.timer=null}},gF=()=>{try{return typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope}catch{}return!1},sv=class XA extends uv{constructor(){super(),this.id=(Math.random()+1).toString(36).substring(7),this.active=!1,self.addEventListener("message",this.onMessage.bind(this))}static isApplicable(){return!gF()&&!!self.postMessage&&!!self.addEventListener}static createCallback(){let e=new XA;return e.add.bind(e)}onMessage(e){e.source!==self||e.data!==this.id||this.tick()}isTickActive(){return this.active}startTick(){this.active=!0,self.postMessage(this.id)}nextTick(){self.postMessage(this.id)}endTick(){this.active=!1}},ov=class YA extends uv{constructor(){super(...arguments),this.immediate=null,this.boundTick=this.tick.bind(this)}static isApplicable(){return!!globalThis.setImmediate}static createCallback(){let e=new YA;return e.add.bind(e)}isTickActive(){return this.immediate!==null}startTick(){this.immediate=setImmediate(this.boundTick)}nextTick(){this.immediate=setImmediate(this.boundTick)}endTick(){clearImmediate(this.immediate),this.immediate=null}};function JA(){if(ov.isApplicable())return ov.createCallback();if(sv.isApplicable())return sv.createCallback();if(iv.isApplicable())return iv.createCallback();throw new Error("No schedule helper fulfills requirements!")}var mF=JA()});var e1=g(An=>{"use strict";var dv=An&&An.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(An,"__esModule",{value:!0});An.DocumentManager=An.PROCESSING_TIMEOUT=An.ActiveDocument=An.DocumentURIBuilder=void 0;var yF=dv(require("events")),bF=Or(),vF=dv(ff()),cv=ZA(),Io=tf(),_F=dv(yo()),hf=class{constructor(e,n=null){this.workspaceFolderUri=n,this.rootPath=e}getFromWorkspaceFolder(e){return this.workspaceFolderUri==null?(console.warn("Workspace folders are not available. Falling back to only relative paths."),Io.Utils.joinPath(this.rootPath,e).toString()):Io.Utils.joinPath(this.workspaceFolderUri,e).toString()}getFromRootPath(e){return Io.Utils.joinPath(this.rootPath,e).toString()}};An.DocumentURIBuilder=hf;var gf=class{constructor(e){this.documentManager=e.documentManager,this.content=e.content,this.textDocument=e.textDocument,this.document=e.document,this.errors=e.errors}getDirectory(){return Io.Utils.joinPath(Io.URI.parse(this.textDocument.uri),"..")}async getImportsAndIncludes(e=null){if(this.document==null)return[];let n=this.document,r=this.getDirectory(),i=this.documentManager.context,s=new hf(r,e),o=u=>u.startsWith("/")?i.fs.findExistingPath(s.getFromWorkspaceFolder(u),s.getFromWorkspaceFolder(`${u}.src`)):i.fs.findExistingPath(s.getFromRootPath(u),s.getFromRootPath(`${u}.src`));return(await Promise.all([...n.imports.filter(u=>u.path).map(u=>o(u.path)),...n.includes.filter(u=>u.path).map(u=>o(u.path))])).filter(u=>u!=null)}async getDependencies(){if(this.document==null)return[];if(this.dependencies)return this.dependencies;let e=await this.documentManager.context.fs.getWorkspaceFolderUri(Io.URI.parse(this.textDocument.uri)),n=await this.getImportsAndIncludes(e),r=new Set([...n]);return this.dependencies=Array.from(r),this.dependencies}async getImports(e=!0){if(this.document==null)return[];let n=new Set,r=new Set([this.textDocument.uri]),i=async s=>{let o=await s.getDependencies();for(let a of o){if(r.has(a))continue;let u=await this.documentManager.open(a);r.add(a),u!==null&&(n.add(u),u.document!==null&&e&&await i(u))}};return await i(this),Array.from(n)}};An.ActiveDocument=gf;An.PROCESSING_TIMEOUT=100;var lv=class extends yF.default{get context(){return this._context}setContext(e){return this._context=e,this}constructor(e=An.PROCESSING_TIMEOUT){super(),this._context=null,this._timer=null,this.results=new vF.default({ttl:1e3*60*20,ttlAutopurge:!0}),this.scheduledItems=new Map,this.tickRef=this.tick.bind(this),this.processingTimeout=e,(0,cv.schedule)(this.tickRef)}tick(){if(this.scheduledItems.size===0){this._timer=null;return}let e=Date.now(),n=Array.from(this.scheduledItems.values());for(let r=0;r<n.length;r++){let i=n[r];e-i.createdAt>this.processingTimeout&&(0,cv.schedule)(()=>this.refresh(i.document))}this._timer=setTimeout(this.tickRef,0)}refresh(e){let n=e.uri;if(!this.scheduledItems.has(n)&&this.results.has(n))return this.results.get(n);let r=this.create(e);return this.results.set(n,r),this.emit("parsed",e,r),this.scheduledItems.delete(n),r}create(e){let n=e.getText(),r=new bF.Parser(n,{unsafe:!0}),i=r.parseChunk();return this._context.documentMerger.flushCacheKey(e.uri),_F.default.analyze(e.uri,i),new gf({documentManager:this,content:n,textDocument:e,document:i,errors:[...r.lexer.errors,...r.errors]})}schedule(e){let n=e.uri,r=e.getText();return this.results.get(n)?.content===r?!1:(this.scheduledItems.set(n,{document:e,createdAt:Date.now()}),this._timer===null&&(this._timer=setTimeout(this.tickRef,0)),!0)}async open(e){try{let n=await this.context.fs.getTextDocument(e);return n==null?null:this.get(n)}catch{return null}}get(e){return this.results.get(e.uri)||this.refresh(e)}getLatest(e,n=5e3){return new Promise(r=>{(0,cv.schedule)(()=>{if(!this.scheduledItems.has(e.uri))return r(this.get(e));let i=()=>{this.removeListener("parsed",s),r(this.get(e))},s=a=>{a.uri===e.uri&&(this.removeListener("parsed",s),clearTimeout(o),r(this.get(e)))},o=setTimeout(i,n);this.addListener("parsed",s)})})}clear(e){this.results.delete(e.uri),this.emit("cleared",e)}};An.DocumentManager=lv});var t1=g(mf=>{"use strict";Object.defineProperty(mf,"__esModule",{value:!0});mf.hash=void 0;function TF(t){let e=5381,n=t.length;for(;n;)e=e*33^t.charCodeAt(--n);return e>>>0}mf.hash=TF});var s1=g(Mo=>{"use strict";var i1=Mo&&Mo.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Mo,"__esModule",{value:!0});Mo.DocumentMerger=void 0;var SF=i1(ff()),n1=i1(yo()),r1=t1(),fv=class{constructor(){this.keyToDocumentUriMap=new Map,this.results=new SF.default({ttl:1e3*60*20,ttlAutopurge:!0})}createCacheKey(e,n){let r=(0,r1.hash)(`${e.uri}-${e.version}`);for(let i=0;i<n.length;i++){let s=n[i];r^=(0,r1.hash)(`${s.textDocument.uri}-${s.textDocument.version}`),r=r>>>0}return r}registerCacheKey(e,n){this.flushCacheKey(n),this.keyToDocumentUriMap.set(n,e)}flushCacheKey(e){let n=this.keyToDocumentUriMap.get(e);n&&(this.results.delete(n),this.keyToDocumentUriMap.delete(e))}async process(e,n,r){let i=e.uri;if(r.has(i))return r.get(i);let s=n1.default.get(i);if(r.set(i,null),!s)return null;let o=[],a=await n.documentManager.get(e).getImports(),u=this.createCacheKey(e,a);if(this.results.has(u))return this.results.get(u);this.registerCacheKey(u,i);let c=await n.documentManager.get(e).getDependencies();await Promise.all(c.map(async d=>{let p=n.documentManager.results.get(d);if(!p)return;let{document:b,textDocument:_}=p;if(!b)return;let E=await this.process(_,n,r);E!==null&&o.push(E)}));let l=s.merge(...o);return r.set(i,l),this.results.set(u,l),l}async build(e,n){let r=e.uri,i=n1.default.get(r);if(!i)return null;let s=[],o=await n.documentManager.get(e).getImports(),a=this.createCacheKey(e,o);if(this.results.has(a))return this.results.get(a);this.registerCacheKey(a,r);let u=await n.documentManager.get(e).getDependencies(),c=new Map([[r,null]]);await Promise.all(u.map(async d=>{let p=n.documentManager.results.get(d);if(!p)return;let{document:b,textDocument:_}=p;if(!b)return;let E=await this.process(_,n,c);E!==null&&s.push(E)}));let l=i.merge(...s);return this.results.set(a,l),l}};Mo.DocumentMerger=fv});var u1=g(Lo=>{"use strict";var kF=Lo&&Lo.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Lo,"__esModule",{value:!0});Lo.CoreContext=void 0;var xF=kF(require("events")),pv=Ws(),o1=uf();function a1(t){return{formatter:t?.formatter??!0,autocomplete:t?.autocomplete??!0,hoverdocs:t?.hoverdocs??!0,diagnostic:t?.diagnostic??!0,transpiler:{beautify:{keepParentheses:t?.transpiler?.beautify?.keepParentheses??!0,indentation:t?.transpiler?.beautify?.indentation??pv.IndentationType.Tab,indentationSpaces:t?.transpiler?.beautify?.indentationSpaces??2}}}}var hv=class extends xF.default{constructor(){super(),this._configuration=a1(),this._features={configuration:!1,workspaceFolder:!1}}get features(){return this._features}getConfiguration(){return this._configuration}async syncConfiguraton(){let e=await this.connection.workspace.getConfiguration(pv.ConfigurationNamespace);this._configuration=a1(e)}configureCapabilties(e){this._features.configuration=!!(e.workspace&&e.workspace.configuration),this._features.workspaceFolder=!!(e.workspace&&e.workspace.workspaceFolders)}async onInitialize(e){this.configureCapabilties(e.capabilities);let n={capabilities:{completionProvider:{triggerCharacters:["."],resolveProvider:!0},hoverProvider:!0,colorProvider:!0,definitionProvider:!0,documentFormattingProvider:!0,signatureHelpProvider:{triggerCharacters:[",","("]},documentSymbolProvider:!0,workspaceSymbolProvider:!0,diagnosticProvider:{identifier:pv.LanguageId,interFileDependencies:!1,workspaceDiagnostics:!1},semanticTokensProvider:{legend:{tokenTypes:o1.semanticTokensLegend.tokenTypes,tokenModifiers:o1.semanticTokensLegend.tokenModifiers},full:!0},textDocumentSync:2}};return this._features.workspaceFolder&&(n.capabilities.workspace={workspaceFolders:{supported:!0}}),this.emit("ready",this),n}async onInitialized(e){this._features.configuration&&(await this.syncConfiguraton(),this.connection.onDidChangeConfiguration(async()=>{let n=this._configuration;await this.syncConfiguraton(),this.emit("configuration-change",this,this._configuration,n)})),this.emit("loaded",this)}async listen(){this.fs.listen(this.connection),this.connection.onInitialize(this.onInitialize.bind(this)),this.connection.onInitialized(this.onInitialized.bind(this)),this.connection.listen()}};Lo.CoreContext=hv});var yf=g(Z=>{"use strict";var wF=Z&&Z.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),EF=Z&&Z.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),AF=Z&&Z.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var n in t)n!=="default"&&Object.prototype.hasOwnProperty.call(t,n)&&wF(e,t,n);return EF(e,t),e},OF=Z&&Z.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Z,"__esModule",{value:!0});Z.CoreContext=Z.buildTokens=Z.semanticTokensLegend=Z.typeAnalyzer=Z.lookupBase=Z.lookupIdentifier=Z.appendTooltipHeader=Z.appendTooltipBody=Z.formatTypes=Z.formatDefaultValue=Z.createTooltipHeader=Z.createSignatureInfo=Z.createHover=Z.MarkdownString=Z.LookupHelper=Z.DocumentMerger=Z.DocumentManager=Z.ActiveDocument=Z.ASTScraper=Z.activateSemantic=Z.activateSymbol=Z.activateSubscriptions=Z.activateSignature=Z.activateHover=Z.activateFormatter=Z.activateDiagnostic=Z.activateDefinition=Z.activateColor=Z.activateAutocomplete=Z.ConfigurationNamespace=Z.LanguageId=Z.IndentationType=void 0;var gv=Ws();Object.defineProperty(Z,"IndentationType",{enumerable:!0,get:function(){return gv.IndentationType}});Object.defineProperty(Z,"LanguageId",{enumerable:!0,get:function(){return gv.LanguageId}});Object.defineProperty(Z,"ConfigurationNamespace",{enumerable:!0,get:function(){return gv.ConfigurationNamespace}});var CF=HE();Object.defineProperty(Z,"activateAutocomplete",{enumerable:!0,get:function(){return CF.activate}});var RF=ZE();Object.defineProperty(Z,"activateColor",{enumerable:!0,get:function(){return RF.activate}});var PF=eA();Object.defineProperty(Z,"activateDefinition",{enumerable:!0,get:function(){return PF.activate}});var DF=tA();Object.defineProperty(Z,"activateDiagnostic",{enumerable:!0,get:function(){return DF.activate}});var IF=AA();Object.defineProperty(Z,"activateFormatter",{enumerable:!0,get:function(){return IF.activate}});var MF=IA();Object.defineProperty(Z,"activateHover",{enumerable:!0,get:function(){return MF.activate}});var LF=LA();Object.defineProperty(Z,"activateSignature",{enumerable:!0,get:function(){return LF.activate}});var NF=qA();Object.defineProperty(Z,"activateSubscriptions",{enumerable:!0,get:function(){return NF.activate}});var qF=FA();Object.defineProperty(Z,"activateSymbol",{enumerable:!0,get:function(){return qF.activate}});var jF=UA();Object.defineProperty(Z,"activateSemantic",{enumerable:!0,get:function(){return jF.activate}});Z.ASTScraper=AF(eb());var c1=e1();Object.defineProperty(Z,"ActiveDocument",{enumerable:!0,get:function(){return c1.ActiveDocument}});Object.defineProperty(Z,"DocumentManager",{enumerable:!0,get:function(){return c1.DocumentManager}});var FF=s1();Object.defineProperty(Z,"DocumentMerger",{enumerable:!0,get:function(){return FF.DocumentMerger}});var $F=vo();Object.defineProperty(Z,"LookupHelper",{enumerable:!0,get:function(){return $F.LookupHelper}});var BF=rf();Object.defineProperty(Z,"MarkdownString",{enumerable:!0,get:function(){return BF.MarkdownString}});var ms=sf();Object.defineProperty(Z,"createHover",{enumerable:!0,get:function(){return ms.createHover}});Object.defineProperty(Z,"createSignatureInfo",{enumerable:!0,get:function(){return ms.createSignatureInfo}});Object.defineProperty(Z,"createTooltipHeader",{enumerable:!0,get:function(){return ms.createTooltipHeader}});Object.defineProperty(Z,"formatDefaultValue",{enumerable:!0,get:function(){return ms.formatDefaultValue}});Object.defineProperty(Z,"formatTypes",{enumerable:!0,get:function(){return ms.formatTypes}});Object.defineProperty(Z,"appendTooltipBody",{enumerable:!0,get:function(){return ms.appendTooltipBody}});Object.defineProperty(Z,"appendTooltipHeader",{enumerable:!0,get:function(){return ms.appendTooltipHeader}});var mv=yo();Object.defineProperty(Z,"lookupIdentifier",{enumerable:!0,get:function(){return mv.lookupIdentifier}});Object.defineProperty(Z,"lookupBase",{enumerable:!0,get:function(){return mv.lookupBase}});Object.defineProperty(Z,"typeAnalyzer",{enumerable:!0,get:function(){return OF(mv).default}});var l1=uf();Object.defineProperty(Z,"semanticTokensLegend",{enumerable:!0,get:function(){return l1.semanticTokensLegend}});Object.defineProperty(Z,"buildTokens",{enumerable:!0,get:function(){return l1.buildTokens}});var UF=u1();Object.defineProperty(Z,"CoreContext",{enumerable:!0,get:function(){return UF.CoreContext}})});var h1={};w1(h1,{TextDocument:()=>yv});function bv(t,e){if(t.length<=1)return t;let n=t.length/2|0,r=t.slice(0,n),i=t.slice(n);bv(r,e),bv(i,e);let s=0,o=0,a=0;for(;s<r.length&&o<i.length;)e(r[s],i[o])<=0?t[a++]=r[s++]:t[a++]=i[o++];for(;s<r.length;)t[a++]=r[s++];for(;o<i.length;)t[a++]=i[o++];return t}function d1(t,e,n=0){let r=e?[n]:[];for(let i=0;i<t.length;i++){let s=t.charCodeAt(i);f1(s)&&(s===13&&i+1<t.length&&t.charCodeAt(i+1)===10&&i++,r.push(n+i+1))}return r}function f1(t){return t===13||t===10}function p1(t){let e=t.start,n=t.end;return e.line>n.line||e.line===n.line&&e.character>n.character?{start:n,end:e}:t}function HF(t){let e=p1(t.range);return e!==t.range?{newText:t.newText,range:e}:t}var bf,yv,g1=x1(()=>{"use strict";bf=class t{constructor(e,n,r,i){this._uri=e,this._languageId=n,this._version=r,this._content=i,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let n=this.offsetAt(e.start),r=this.offsetAt(e.end);return this._content.substring(n,r)}return this._content}update(e,n){for(let r of e)if(t.isIncremental(r)){let i=p1(r.range),s=this.offsetAt(i.start),o=this.offsetAt(i.end);this._content=this._content.substring(0,s)+r.text+this._content.substring(o,this._content.length);let a=Math.max(i.start.line,0),u=Math.max(i.end.line,0),c=this._lineOffsets,l=d1(r.text,!1,s);if(u-a===l.length)for(let p=0,b=l.length;p<b;p++)c[p+a+1]=l[p];else l.length<1e4?c.splice(a+1,u-a,...l):this._lineOffsets=c=c.slice(0,a+1).concat(l,c.slice(u+1));let d=r.text.length-(o-s);if(d!==0)for(let p=a+1+l.length,b=c.length;p<b;p++)c[p]=c[p]+d}else if(t.isFull(r))this._content=r.text,this._lineOffsets=void 0;else throw new Error("Unknown change event received");this._version=n}getLineOffsets(){return this._lineOffsets===void 0&&(this._lineOffsets=d1(this._content,!0)),this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let n=this.getLineOffsets(),r=0,i=n.length;if(i===0)return{line:0,character:e};for(;r<i;){let o=Math.floor((r+i)/2);n[o]>e?i=o:r=o+1}let s=r-1;return e=this.ensureBeforeEOL(e,n[s]),{line:s,character:e-n[s]}}offsetAt(e){let n=this.getLineOffsets();if(e.line>=n.length)return this._content.length;if(e.line<0)return 0;let r=n[e.line];if(e.character<=0)return r;let i=e.line+1<n.length?n[e.line+1]:this._content.length,s=Math.min(r+e.character,i);return this.ensureBeforeEOL(s,r)}ensureBeforeEOL(e,n){for(;e>n&&f1(this._content.charCodeAt(e-1));)e--;return e}get lineCount(){return this.getLineOffsets().length}static isIncremental(e){let n=e;return n!=null&&typeof n.text=="string"&&n.range!==void 0&&(n.rangeLength===void 0||typeof n.rangeLength=="number")}static isFull(e){let n=e;return n!=null&&typeof n.text=="string"&&n.range===void 0&&n.rangeLength===void 0}};(function(t){function e(i,s,o,a){return new bf(i,s,o,a)}t.create=e;function n(i,s,o){if(i instanceof bf)return i.update(s,o),i;throw new Error("TextDocument.update: document must be created by TextDocument.create")}t.update=n;function r(i,s){let o=i.getText(),a=bv(s.map(HF),(l,d)=>{let p=l.range.start.line-d.range.start.line;return p===0?l.range.start.character-d.range.start.character:p}),u=0,c=[];for(let l of a){let d=i.offsetAt(l.range.start);if(d<u)throw new Error("Overlapping edit");d>u&&c.push(o.substring(u,d)),l.newText.length&&c.push(l.newText),u=i.offsetAt(l.range.end)}return c.push(o.substr(u)),c.join("")}t.applyEdits=r})(yv||(yv={}))});var y1=g(No=>{"use strict";var Tv=No&&No.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(No,"__esModule",{value:!0});No.FileSystem=void 0;var WF=vh(),m1=(g1(),A1(h1)),GF=Tv(require("events")),vv=tf(),KF=Tv(require("fs")),VF=yf(),zF=Tv(ff()),_v=class extends GF.default{constructor(e){super(),this._context=e,this._textDocumentManager=new WF.TextDocuments(m1.TextDocument),this._tempTextDocumentCache=new zF.default({ttl:1e3,max:100})}async getWorkspaceFolderUris(){if(!this._context.features.workspaceFolder)return[];if(this._workspace==null)return[];let e=await this._workspace.getWorkspaceFolders();return e==null?[]:Array.from(new Set(e.map(n=>n.uri))).map(n=>vv.URI.parse(n))}async getWorkspaceFolderUri(e){return(await this.getWorkspaceFolderUris()).find(r=>e.path.startsWith(r.path))||null}async findExistingPath(...e){if(e.length===0)return null;for(let n=0;n<e.length;n++)if(await this.getTextDocument(e[n])!=null)return e[n];return null}getAllTextDocuments(){return this._textDocumentManager.all()}async fetchTextDocument(e){let n=vv.URI.parse(e),r=this._tempTextDocumentCache.get(e);if(r!=null)return r;let i=null;try{let s=await KF.default.promises.readFile(n.fsPath,{encoding:"utf-8"});i=m1.TextDocument.create(e,VF.LanguageId,0,s)}catch{}return this._tempTextDocumentCache.set(e,i),i}async getTextDocument(e){let n=this._textDocumentManager.get(e);return n||(vv.URI.parse(e).scheme=="file"?await this.fetchTextDocument(e):null)}async readFile(e){return(await this.getTextDocument(e)).getText()}listen(e){this._workspace=e.workspace,this._textDocumentManager.listen(e),this._textDocumentManager.onDidOpen(n=>{this.emit("text-document-open",n.document)}),this._textDocumentManager.onDidChangeContent(n=>{this.emit("text-document-change",n.document)}),this._textDocumentManager.onDidClose(n=>{this.emit("text-document-close",n.document)})}};No.FileSystem=_v});var b1=g(vf=>{"use strict";Object.defineProperty(vf,"__esModule",{value:!0});vf.NodeContext=void 0;var Sv=vh(),kv=yf(),XF=y1(),xv=class extends kv.CoreContext{constructor(){super(),this.documentManager=new kv.DocumentManager().setContext(this),this.documentMerger=new kv.DocumentMerger,this.connection=(0,Sv.createConnection)(Sv.ProposedFeatures.all),this.fs=new XF.FileSystem(this)}createSemanticTokensBuilder(){return new Sv.SemanticTokensBuilder}};vf.NodeContext=xv});Object.defineProperty(exports,"__esModule",{value:!0});var YF=b1(),Rr=yf(),v1=new YF.NodeContext;v1.on("ready",t=>{(0,Rr.activateAutocomplete)(t),(0,Rr.activateColor)(t),(0,Rr.activateDefinition)(t),(0,Rr.activateDiagnostic)(t),(0,Rr.activateFormatter)(t),(0,Rr.activateHover)(t),(0,Rr.activateSignature)(t),(0,Rr.activateSubscriptions)(t),(0,Rr.activateSymbol)(t),(0,Rr.activateSemantic)(t)});v1.listen();