@linzumi/cli 1.0.279 → 1.0.280
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/cloud-supervisor.mjs +1 -1
- package/dist/hosted-coding-account-worker.js +1 -1
- package/dist/index.js +305 -305
- package/dist/remote-codex-harness-worker.js +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -59,7 +59,7 @@ Install the CLI or run it with `npx`:
|
|
|
59
59
|
```bash
|
|
60
60
|
npm install -g @linzumi/cli@latest
|
|
61
61
|
npx -y @linzumi/cli@latest connect --supervise --workspace your-workspace
|
|
62
|
-
npx -y @linzumi/cli@1.0.
|
|
62
|
+
npx -y @linzumi/cli@1.0.280 --version
|
|
63
63
|
linzumi --version
|
|
64
64
|
```
|
|
65
65
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createRequire as __linzumiBundleCreateRequire } from 'node:module';
|
|
2
2
|
const require = __linzumiBundleCreateRequire(import.meta.url);
|
|
3
3
|
var qB=Object.create;var Fh=Object.defineProperty;var GB=Object.getOwnPropertyDescriptor;var BB=Object.getOwnPropertyNames;var zB=Object.getPrototypeOf,KB=Object.prototype.hasOwnProperty;var Ze=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,n)=>(typeof require<"u"?require:t)[n]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var G=(e,t)=>()=>(e&&(t=e(e=0)),t);var st=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),HB=(e,t)=>{for(var n in t)Fh(e,n,{get:t[n],enumerable:!0})},WB=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of BB(t))!KB.call(e,i)&&i!==n&&Fh(e,i,{get:()=>t[i],enumerable:!(r=GB(t,i))||r.enumerable});return e};var Ta=(e,t,n)=>(n=e!=null?qB(zB(e)):{},WB(t||!e||!e.__esModule?Fh(n,"default",{value:e,enumerable:!0}):n,e));var Uh=G(()=>{});function jt(e){return e===void 0?{BS_PRIVATE_NESTED_SOME_NONE:0}:e!==null&&e.BS_PRIVATE_NESTED_SOME_NONE!==void 0?{BS_PRIVATE_NESTED_SOME_NONE:e.BS_PRIVATE_NESTED_SOME_NONE+1|0}:e}function _c(e){if(e!=null)return jt(e)}function tt(e){if(e===null||e.BS_PRIVATE_NESTED_SOME_NONE===void 0)return e;let t=e.BS_PRIVATE_NESTED_SOME_NONE;if(t!==0)return{BS_PRIVATE_NESTED_SOME_NONE:t-1|0}}var dt=G(()=>{});function Aa(e,t){if(e!==void 0)return t(tt(e))}function mt(e,t){if(e!==void 0)return jt(t(tt(e)))}function cn(e,t){if(e!==void 0)return t(tt(e))}function Ye(e,t){return e!==void 0?tt(e):t}var $e=G(()=>{Uh();dt()});var gc=G(()=>{});function fn(e,t,n){return e.reduce(n,t)}var xt=G(()=>{gc();dt()});function mi(e){if(e.RE_EXN_ID==="JsExn")return jt(e._1)}var yc,VB,hi,yHe,vHe,$i=G(()=>{dt();yc=(e=>t=>t&&typeof t[e]=="string"?t[e]:void 0),VB=yc("stack"),hi=yc("message"),yHe=yc("name"),vHe=yc("fileName")});var vc=G(()=>{});var hC=st((bHe,mC)=>{var ji=Ze("constants"),ZB=process.cwd,bc=null,YB=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){return bc||(bc=ZB.call(process)),bc};try{process.cwd()}catch{}typeof process.chdir=="function"&&(Bh=process.chdir,process.chdir=function(e){bc=null,Bh.call(process,e)},Object.setPrototypeOf&&Object.setPrototypeOf(process.chdir,Bh));var Bh;mC.exports=QB;function QB(e){ji.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)&&t(e),e.lutimes||n(e),e.chown=o(e.chown),e.fchown=o(e.fchown),e.lchown=o(e.lchown),e.chmod=r(e.chmod),e.fchmod=r(e.fchmod),e.lchmod=r(e.lchmod),e.chownSync=a(e.chownSync),e.fchownSync=a(e.fchownSync),e.lchownSync=a(e.lchownSync),e.chmodSync=i(e.chmodSync),e.fchmodSync=i(e.fchmodSync),e.lchmodSync=i(e.lchmodSync),e.stat=s(e.stat),e.fstat=s(e.fstat),e.lstat=s(e.lstat),e.statSync=d(e.statSync),e.fstatSync=d(e.fstatSync),e.lstatSync=d(e.lstatSync),e.chmod&&!e.lchmod&&(e.lchmod=function(u,c,p){p&&process.nextTick(p)},e.lchmodSync=function(){}),e.chown&&!e.lchown&&(e.lchown=function(u,c,p,m){m&&process.nextTick(m)},e.lchownSync=function(){}),YB==="win32"&&(e.rename=typeof e.rename!="function"?e.rename:(function(u){function c(p,m,g){var h=Date.now(),v=0;u(p,m,function y(S){if(S&&(S.code==="EACCES"||S.code==="EPERM"||S.code==="EBUSY")&&Date.now()-h<6e4){setTimeout(function(){e.stat(m,function(b,E){b&&b.code==="ENOENT"?u(p,m,y):g(S)})},v),v<100&&(v+=10);return}g&&g(S)})}return Object.setPrototypeOf&&Object.setPrototypeOf(c,u),c})(e.rename)),e.read=typeof e.read!="function"?e.read:(function(u){function c(p,m,g,h,v,y){var S;if(y&&typeof y=="function"){var b=0;S=function(E,T,x){if(E&&E.code==="EAGAIN"&&b<10)return b++,u.call(e,p,m,g,h,v,S);y.apply(this,arguments)}}return u.call(e,p,m,g,h,v,S)}return Object.setPrototypeOf&&Object.setPrototypeOf(c,u),c})(e.read),e.readSync=typeof e.readSync!="function"?e.readSync:(function(u){return function(c,p,m,g,h){for(var v=0;;)try{return u.call(e,c,p,m,g,h)}catch(y){if(y.code==="EAGAIN"&&v<10){v++;continue}throw y}}})(e.readSync);function t(u){u.lchmod=function(c,p,m){u.open(c,ji.O_WRONLY|ji.O_SYMLINK,p,function(g,h){if(g){m&&m(g);return}u.fchmod(h,p,function(v){u.close(h,function(y){m&&m(v||y)})})})},u.lchmodSync=function(c,p){var m=u.openSync(c,ji.O_WRONLY|ji.O_SYMLINK,p),g=!0,h;try{h=u.fchmodSync(m,p),g=!1}finally{if(g)try{u.closeSync(m)}catch{}else u.closeSync(m)}return h}}function n(u){ji.hasOwnProperty("O_SYMLINK")&&u.futimes?(u.lutimes=function(c,p,m,g){u.open(c,ji.O_SYMLINK,function(h,v){if(h){g&&g(h);return}u.futimes(v,p,m,function(y){u.close(v,function(S){g&&g(y||S)})})})},u.lutimesSync=function(c,p,m){var g=u.openSync(c,ji.O_SYMLINK),h,v=!0;try{h=u.futimesSync(g,p,m),v=!1}finally{if(v)try{u.closeSync(g)}catch{}else u.closeSync(g)}return h}):u.futimes&&(u.lutimes=function(c,p,m,g){g&&process.nextTick(g)},u.lutimesSync=function(){})}function r(u){return u&&function(c,p,m){return u.call(e,c,p,function(g){l(g)&&(g=null),m&&m.apply(this,arguments)})}}function i(u){return u&&function(c,p){try{return u.call(e,c,p)}catch(m){if(!l(m))throw m}}}function o(u){return u&&function(c,p,m,g){return u.call(e,c,p,m,function(h){l(h)&&(h=null),g&&g.apply(this,arguments)})}}function a(u){return u&&function(c,p,m){try{return u.call(e,c,p,m)}catch(g){if(!l(g))throw g}}}function s(u){return u&&function(c,p,m){typeof p=="function"&&(m=p,p=null);function g(h,v){v&&(v.uid<0&&(v.uid+=4294967296),v.gid<0&&(v.gid+=4294967296)),m&&m.apply(this,arguments)}return p?u.call(e,c,p,g):u.call(e,c,g)}}function d(u){return u&&function(c,p){var m=p?u.call(e,c,p):u.call(e,c);return m&&(m.uid<0&&(m.uid+=4294967296),m.gid<0&&(m.gid+=4294967296)),m}}function l(u){if(!u||u.code==="ENOSYS")return!0;var c=!process.getuid||process.getuid()!==0;return!!(c&&(u.code==="EINVAL"||u.code==="EPERM"))}}});var yC=st((SHe,gC)=>{var _C=Ze("stream").Stream;gC.exports=XB;function XB(e){return{ReadStream:t,WriteStream:n};function t(r,i){if(!(this instanceof t))return new t(r,i);_C.call(this);var o=this;this.path=r,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=64*1024,i=i||{};for(var a=Object.keys(i),s=0,d=a.length;s<d;s++){var l=a[s];this[l]=i[l]}if(this.encoding&&this.setEncoding(this.encoding),this.start!==void 0){if(typeof this.start!="number")throw TypeError("start must be a Number");if(this.end===void 0)this.end=1/0;else if(typeof this.end!="number")throw TypeError("end must be a Number");if(this.start>this.end)throw new Error("start must be <= end");this.pos=this.start}if(this.fd!==null){process.nextTick(function(){o._read()});return}e.open(this.path,this.flags,this.mode,function(u,c){if(u){o.emit("error",u),o.readable=!1;return}o.fd=c,o.emit("open",c),o._read()})}function n(r,i){if(!(this instanceof n))return new n(r,i);_C.call(this),this.path=r,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0,i=i||{};for(var o=Object.keys(i),a=0,s=o.length;a<s;a++){var d=o[a];this[d]=i[d]}if(this.start!==void 0){if(typeof this.start!="number")throw TypeError("start must be a Number");if(this.start<0)throw new Error("start must be >= zero");this.pos=this.start}this.busy=!1,this._queue=[],this.fd===null&&(this._open=e.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush())}}});var bC=st((wHe,vC)=>{"use strict";vC.exports=tz;var ez=Object.getPrototypeOf||function(e){return e.__proto__};function tz(e){if(e===null||typeof e!="object")return e;if(e instanceof Object)var t={__proto__:ez(e)};else var t=Object.create(null);return Object.getOwnPropertyNames(e).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(e,n))}),t}});var Wh=st((EHe,Hh)=>{var St=Ze("fs"),nz=hC(),rz=yC(),iz=bC(),Sc=Ze("util"),Yt,Ec;typeof Symbol=="function"&&typeof Symbol.for=="function"?(Yt=Symbol.for("graceful-fs.queue"),Ec=Symbol.for("graceful-fs.previous")):(Yt="___graceful-fs.queue",Ec="___graceful-fs.previous");function oz(){}function EC(e,t){Object.defineProperty(e,Yt,{get:function(){return t}})}var So=oz;Sc.debuglog?So=Sc.debuglog("gfs4"):/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&(So=function(){var e=Sc.format.apply(Sc,arguments);e="GFS4: "+e.split(/\n/).join(`
|
|
4
|
-
GFS4: `),console.error(e)});St[Yt]||(SC=global[Yt]||[],EC(St,SC),St.close=(function(e){function t(n,r){return e.call(St,n,function(i){i||wC(),typeof r=="function"&&r.apply(this,arguments)})}return Object.defineProperty(t,Ec,{value:e}),t})(St.close),St.closeSync=(function(e){function t(n){e.apply(St,arguments),wC()}return Object.defineProperty(t,Ec,{value:e}),t})(St.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&process.on("exit",function(){So(St[Yt]),Ze("assert").equal(St[Yt].length,0)}));var SC;global[Yt]||EC(global,St[Yt]);Hh.exports=zh(iz(St));process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!St.__patched&&(Hh.exports=zh(St),St.__patched=!0);function zh(e){nz(e),e.gracefulify=zh,e.createReadStream=T,e.createWriteStream=x;var t=e.readFile;e.readFile=n;function n(C,A,O){return typeof A=="function"&&(O=A,A=null),P(C,A,O);function P(R,M,U,ee){return t(R,M,function(Q){Q&&(Q.code==="EMFILE"||Q.code==="ENFILE")?xa([P,[R,M,U],Q,ee||Date.now(),Date.now()]):typeof U=="function"&&U.apply(this,arguments)})}}var r=e.writeFile;e.writeFile=i;function i(C,A,O,P){return typeof O=="function"&&(P=O,O=null),R(C,A,O,P);function R(M,U,ee,Q,te){return r(M,U,ee,function(Y){Y&&(Y.code==="EMFILE"||Y.code==="ENFILE")?xa([R,[M,U,ee,Q],Y,te||Date.now(),Date.now()]):typeof Q=="function"&&Q.apply(this,arguments)})}}var o=e.appendFile;o&&(e.appendFile=a);function a(C,A,O,P){return typeof O=="function"&&(P=O,O=null),R(C,A,O,P);function R(M,U,ee,Q,te){return o(M,U,ee,function(Y){Y&&(Y.code==="EMFILE"||Y.code==="ENFILE")?xa([R,[M,U,ee,Q],Y,te||Date.now(),Date.now()]):typeof Q=="function"&&Q.apply(this,arguments)})}}var s=e.copyFile;s&&(e.copyFile=d);function d(C,A,O,P){return typeof O=="function"&&(P=O,O=0),R(C,A,O,P);function R(M,U,ee,Q,te){return s(M,U,ee,function(Y){Y&&(Y.code==="EMFILE"||Y.code==="ENFILE")?xa([R,[M,U,ee,Q],Y,te||Date.now(),Date.now()]):typeof Q=="function"&&Q.apply(this,arguments)})}}var l=e.readdir;e.readdir=c;var u=/^v[0-5]\./;function c(C,A,O){typeof A=="function"&&(O=A,A=null);var P=u.test(process.version)?function(U,ee,Q,te){return l(U,R(U,ee,Q,te))}:function(U,ee,Q,te){return l(U,ee,R(U,ee,Q,te))};return P(C,A,O);function R(M,U,ee,Q){return function(te,Y){te&&(te.code==="EMFILE"||te.code==="ENFILE")?xa([P,[M,U,ee],te,Q||Date.now(),Date.now()]):(Y&&Y.sort&&Y.sort(),typeof ee=="function"&&ee.call(this,te,Y))}}}if(process.version.substr(0,4)==="v0.8"){var p=rz(e);y=p.ReadStream,b=p.WriteStream}var m=e.ReadStream;m&&(y.prototype=Object.create(m.prototype),y.prototype.open=S);var g=e.WriteStream;g&&(b.prototype=Object.create(g.prototype),b.prototype.open=E),Object.defineProperty(e,"ReadStream",{get:function(){return y},set:function(C){y=C},enumerable:!0,configurable:!0}),Object.defineProperty(e,"WriteStream",{get:function(){return b},set:function(C){b=C},enumerable:!0,configurable:!0});var h=y;Object.defineProperty(e,"FileReadStream",{get:function(){return h},set:function(C){h=C},enumerable:!0,configurable:!0});var v=b;Object.defineProperty(e,"FileWriteStream",{get:function(){return v},set:function(C){v=C},enumerable:!0,configurable:!0});function y(C,A){return this instanceof y?(m.apply(this,arguments),this):y.apply(Object.create(y.prototype),arguments)}function S(){var C=this;w(C.path,C.flags,C.mode,function(A,O){A?(C.autoClose&&C.destroy(),C.emit("error",A)):(C.fd=O,C.emit("open",O),C.read())})}function b(C,A){return this instanceof b?(g.apply(this,arguments),this):b.apply(Object.create(b.prototype),arguments)}function E(){var C=this;w(C.path,C.flags,C.mode,function(A,O){A?(C.destroy(),C.emit("error",A)):(C.fd=O,C.emit("open",O))})}function T(C,A){return new e.ReadStream(C,A)}function x(C,A){return new e.WriteStream(C,A)}var _=e.open;e.open=w;function w(C,A,O,P){return typeof O=="function"&&(P=O,O=null),R(C,A,O,P);function R(M,U,ee,Q,te){return _(M,U,ee,function(Y,$){Y&&(Y.code==="EMFILE"||Y.code==="ENFILE")?xa([R,[M,U,ee,Q],Y,te||Date.now(),Date.now()]):typeof Q=="function"&&Q.apply(this,arguments)})}}return e}function xa(e){So("ENQUEUE",e[0].name,e[1]),St[Yt].push(e),Kh()}var wc;function wC(){for(var e=Date.now(),t=0;t<St[Yt].length;++t)St[Yt][t].length>2&&(St[Yt][t][3]=e,St[Yt][t][4]=e);Kh()}function Kh(){if(clearTimeout(wc),wc=void 0,St[Yt].length!==0){var e=St[Yt].shift(),t=e[0],n=e[1],r=e[2],i=e[3],o=e[4];if(i===void 0)So("RETRY",t.name,n),t.apply(null,n);else if(Date.now()-i>=6e4){So("TIMEOUT",t.name,n);var a=n.pop();typeof a=="function"&&a.call(null,r)}else{var s=Date.now()-o,d=Math.max(o-i,1),l=Math.min(d*1.2,100);s>=l?(So("RETRY",t.name,n),t.apply(null,n.concat([i]))):St[Yt].push(e)}wc===void 0&&(wc=setTimeout(Kh,0))}}});var CC=st((kHe,kC)=>{function Zn(e,t){typeof t=="boolean"&&(t={forever:t}),this._originalTimeouts=JSON.parse(JSON.stringify(e)),this._timeouts=e,this._options=t||{},this._maxRetryTime=t&&t.maxRetryTime||1/0,this._fn=null,this._errors=[],this._attempts=1,this._operationTimeout=null,this._operationTimeoutCb=null,this._timeout=null,this._operationStart=null,this._options.forever&&(this._cachedTimeouts=this._timeouts.slice(0))}kC.exports=Zn;Zn.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts};Zn.prototype.stop=function(){this._timeout&&clearTimeout(this._timeout),this._timeouts=[],this._cachedTimeouts=null};Zn.prototype.retry=function(e){if(this._timeout&&clearTimeout(this._timeout),!e)return!1;var t=new Date().getTime();if(e&&t-this._operationStart>=this._maxRetryTime)return this._errors.unshift(new Error("RetryOperation timeout occurred")),!1;this._errors.push(e);var n=this._timeouts.shift();if(n===void 0)if(this._cachedTimeouts)this._errors.splice(this._errors.length-1,this._errors.length),this._timeouts=this._cachedTimeouts.slice(0),n=this._timeouts.shift();else return!1;var r=this,i=setTimeout(function(){r._attempts++,r._operationTimeoutCb&&(r._timeout=setTimeout(function(){r._operationTimeoutCb(r._attempts)},r._operationTimeout),r._options.unref&&r._timeout.unref()),r._fn(r._attempts)},n);return this._options.unref&&i.unref(),!0};Zn.prototype.attempt=function(e,t){this._fn=e,t&&(t.timeout&&(this._operationTimeout=t.timeout),t.cb&&(this._operationTimeoutCb=t.cb));var n=this;this._operationTimeoutCb&&(this._timeout=setTimeout(function(){n._operationTimeoutCb()},n._operationTimeout)),this._operationStart=new Date().getTime(),this._fn(this._attempts)};Zn.prototype.try=function(e){console.log("Using RetryOperation.try() is deprecated"),this.attempt(e)};Zn.prototype.start=function(e){console.log("Using RetryOperation.start() is deprecated"),this.attempt(e)};Zn.prototype.start=Zn.prototype.try;Zn.prototype.errors=function(){return this._errors};Zn.prototype.attempts=function(){return this._attempts};Zn.prototype.mainError=function(){if(this._errors.length===0)return null;for(var e={},t=null,n=0,r=0;r<this._errors.length;r++){var i=this._errors[r],o=i.message,a=(e[o]||0)+1;e[o]=a,a>=n&&(t=i,n=a)}return t}});var TC=st(wo=>{var az=CC();wo.operation=function(e){var t=wo.timeouts(e);return new az(t,{forever:e&&e.forever,unref:e&&e.unref,maxRetryTime:e&&e.maxRetryTime})};wo.timeouts=function(e){if(e instanceof Array)return[].concat(e);var t={retries:10,factor:2,minTimeout:1*1e3,maxTimeout:1/0,randomize:!1};for(var n in e)t[n]=e[n];if(t.minTimeout>t.maxTimeout)throw new Error("minTimeout is greater than maxTimeout");for(var r=[],i=0;i<t.retries;i++)r.push(this.createTimeout(i,t));return e&&e.forever&&!r.length&&r.push(this.createTimeout(i,t)),r.sort(function(o,a){return o-a}),r};wo.createTimeout=function(e,t){var n=t.randomize?Math.random()+1:1,r=Math.round(n*t.minTimeout*Math.pow(t.factor,e));return r=Math.min(r,t.maxTimeout),r};wo.wrap=function(e,t,n){if(t instanceof Array&&(n=t,t=null),!n){n=[];for(var r in e)typeof e[r]=="function"&&n.push(r)}for(var i=0;i<n.length;i++){var o=n[i],a=e[o];e[o]=function(d){var l=wo.operation(t),u=Array.prototype.slice.call(arguments,1),c=u.pop();u.push(function(p){l.retry(p)||(p&&(arguments[0]=l.mainError()),c.apply(this,arguments))}),l.attempt(function(){d.apply(e,u)})}.bind(e,a),e[o].options=t}}});var xC=st((THe,AC)=>{AC.exports=TC()});var OC=st((AHe,kc)=>{kc.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"];process.platform!=="win32"&&kc.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&kc.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")});var DC=st((xHe,Ra)=>{var ht=global.process,Eo=function(e){return e&&typeof e=="object"&&typeof e.removeListener=="function"&&typeof e.emit=="function"&&typeof e.reallyExit=="function"&&typeof e.listeners=="function"&&typeof e.kill=="function"&&typeof e.pid=="number"&&typeof e.on=="function"};Eo(ht)?(IC=Ze("assert"),Oa=OC(),RC=/^win/i.test(ht.platform),Id=Ze("events"),typeof Id!="function"&&(Id=Id.EventEmitter),ht.__signal_exit_emitter__?zt=ht.__signal_exit_emitter__:(zt=ht.__signal_exit_emitter__=new Id,zt.count=0,zt.emitted={}),zt.infinite||(zt.setMaxListeners(1/0),zt.infinite=!0),Ra.exports=function(e,t){if(!Eo(global.process))return function(){};IC.equal(typeof e,"function","a callback must be provided for exit handler"),Ia===!1&&Jh();var n="exit";t&&t.alwaysLast&&(n="afterexit");var r=function(){zt.removeListener(n,e),zt.listeners("exit").length===0&&zt.listeners("afterexit").length===0&&Cc()};return zt.on(n,e),r},Cc=function(){!Ia||!Eo(global.process)||(Ia=!1,Oa.forEach(function(t){try{ht.removeListener(t,Tc[t])}catch{}}),ht.emit=Ac,ht.reallyExit=Vh,zt.count-=1)},Ra.exports.unload=Cc,ko=function(t,n,r){zt.emitted[t]||(zt.emitted[t]=!0,zt.emit(t,n,r))},Tc={},Oa.forEach(function(e){Tc[e]=function(){if(Eo(global.process)){var n=ht.listeners(e);n.length===zt.count&&(Cc(),ko("exit",null,e),ko("afterexit",null,e),RC&&e==="SIGHUP"&&(e="SIGINT"),ht.kill(ht.pid,e))}}}),Ra.exports.signals=function(){return Oa},Ia=!1,Jh=function(){Ia||!Eo(global.process)||(Ia=!0,zt.count+=1,Oa=Oa.filter(function(t){try{return ht.on(t,Tc[t]),!0}catch{return!1}}),ht.emit=MC,ht.reallyExit=PC)},Ra.exports.load=Jh,Vh=ht.reallyExit,PC=function(t){Eo(global.process)&&(ht.exitCode=t||0,ko("exit",ht.exitCode,null),ko("afterexit",ht.exitCode,null),Vh.call(ht,ht.exitCode))},Ac=ht.emit,MC=function(t,n){if(t==="exit"&&Eo(global.process)){n!==void 0&&(ht.exitCode=n);var r=Ac.apply(this,arguments);return ko("exit",ht.exitCode,null),ko("afterexit",ht.exitCode,null),r}else return Ac.apply(this,arguments)}):Ra.exports=function(){return function(){}};var IC,Oa,RC,Id,zt,Cc,ko,Tc,Ia,Jh,Vh,PC,Ac,MC});var FC=st((OHe,Rd)=>{"use strict";var sz=Ze("path"),Qh=Wh(),dz=xC(),lz=DC(),_i={};function Pa(e,t){return t.lockfilePath||`${e}.lock`}function Xh(e,t,n){if(!t.realpath)return n(null,sz.resolve(e));t.fs.realpath(e,n)}function Zh(e,t,n){t.fs.mkdir(Pa(e,t),r=>{if(!r)return n();if(r.code!=="EEXIST")return n(r);if(t.stale<=0)return n(Object.assign(new Error("Lock file is already being hold"),{code:"ELOCKED",file:e}));t.fs.stat(Pa(e,t),(i,o)=>{if(i)return i.code==="ENOENT"?Zh(e,{...t,stale:0},n):n(i);if(!NC(o,t))return n(Object.assign(new Error("Lock file is already being hold"),{code:"ELOCKED",file:e}));$C(e,t,a=>{if(a)return n(a);Zh(e,{...t,stale:0},n)})})})}function NC(e,t){return e.mtime.getTime()<Date.now()-t.stale}function $C(e,t,n){t.fs.rmdir(Pa(e,t),r=>{if(r&&r.code!=="ENOENT")return n(r);n()})}function Yh(e,t){let n=_i[e];n.updateTimeout||(n.updateDelay=n.updateDelay||t.update,n.updateTimeout=setTimeout(()=>{let r=Date.now()/1e3;n.updateTimeout=null,t.fs.utimes(Pa(e,t),r,r,i=>{if(!n.released){if(n.lastUpdate<=Date.now()-t.stale&&n.lastUpdate>Date.now()-t.stale*2){let o=Object.assign(new Error(n.updateError||"Unable to update lock within the stale threshold"),{code:"ECOMPROMISED"});return LC(e,n,o)}if(i)return i.code==="ENOENT"?LC(e,n,Object.assign(i,{code:"ECOMPROMISED"})):(n.updateError=i,n.updateDelay=1e3,Yh(e,t));n.lastUpdate=Date.now(),n.updateError=null,n.updateDelay=null,Yh(e,t)}})},n.updateDelay),n.updateTimeout.unref&&n.updateTimeout.unref())}function LC(e,t,n){t.released=!0,t.updateTimeout&&clearTimeout(t.updateTimeout),_i[e]===t&&delete _i[e],t.options.onCompromised(n)}function uz(e,t,n){t={stale:1e4,update:null,realpath:!0,retries:0,fs:Qh,onCompromised:r=>{throw r},...t},t.retries=t.retries||0,t.retries=typeof t.retries=="number"?{retries:t.retries}:t.retries,t.stale=Math.max(t.stale||0,2e3),t.update=t.update==null?t.stale/2:t.update||0,t.update=Math.max(Math.min(t.update,t.stale/2),1e3),Xh(e,t,(r,i)=>{if(r)return n(r);let o=dz.operation(t.retries);o.attempt(()=>{Zh(i,t,a=>{if(o.retry(a))return;if(a)return n(o.mainError());let s=_i[i]={options:t,lastUpdate:Date.now()};Yh(i,t),n(null,d=>{if(s.released)return d&&d(Object.assign(new Error("Lock is already released"),{code:"ERELEASED"}));jC(i,{...t,realpath:!1},d)})})})})}function jC(e,t,n){t={fs:Qh,realpath:!0,...t},Xh(e,t,(r,i)=>{if(r)return n(r);let o=_i[i];if(!o)return n(Object.assign(new Error("Lock is not acquired/owned by you"),{code:"ENOTACQUIRED"}));o.updateTimeout&&clearTimeout(o.updateTimeout),o.released=!0,delete _i[i],$C(i,t,n)})}function cz(e,t,n){t={stale:1e4,realpath:!0,fs:Qh,...t},t.stale=Math.max(t.stale||0,2e3),Xh(e,t,(r,i)=>{if(r)return n(r);t.fs.stat(Pa(i,t),(o,a)=>o?o.code==="ENOENT"?n(null,!1):n(o):n(null,!NC(a,t)))})}function fz(){return _i}lz(()=>{for(let e in _i){let t=_i[e].options;try{t.fs.rmdirSync(Pa(e,t))}catch{}}});Rd.exports.lock=uz;Rd.exports.unlock=jC;Rd.exports.check=cz;Rd.exports.getLocks=fz});var qC=st((IHe,UC)=>{"use strict";var pz=Wh();function mz(e){let t=["mkdir","realpath","stat","rmdir","utimes"],n={...e};return t.forEach(r=>{n[r]=(...i)=>{let o=i.pop(),a;try{a=e[`${r}Sync`](...i)}catch(s){return o(s)}o(null,a)}}),n}function hz(e){return(...t)=>new Promise((n,r)=>{t.push((i,o)=>{i?r(i):n(o)}),e(...t)})}function _z(e){return(...t)=>{let n,r;if(t.push((i,o)=>{n=i,r=o}),e(...t),n)throw n;return r}}function gz(e){if(e={...e},e.fs=mz(e.fs||pz),typeof e.retries=="number"&&e.retries>0||e.retries&&typeof e.retries.retries=="number"&&e.retries.retries>0)throw Object.assign(new Error("Cannot use retries with the sync api"),{code:"ESYNC"});return e}UC.exports={toPromise:hz,toSync:_z,toSyncOptions:gz}});var BC=st((RHe,Fi)=>{"use strict";var Ma=FC(),{toPromise:xc,toSync:Oc,toSyncOptions:e_}=qC();async function GC(e,t){let n=await xc(Ma.lock)(e,t);return xc(n)}function yz(e,t){let n=Oc(Ma.lock)(e,e_(t));return Oc(n)}function vz(e,t){return xc(Ma.unlock)(e,t)}function bz(e,t){return Oc(Ma.unlock)(e,e_(t))}function Sz(e,t){return xc(Ma.check)(e,t)}function wz(e,t){return Oc(Ma.check)(e,e_(t))}Fi.exports=GC;Fi.exports.lock=GC;Fi.exports.unlock=vz;Fi.exports.lockSync=yz;Fi.exports.unlockSync=bz;Fi.exports.check=Sz;Fi.exports.checkSync=wz});var zC=G(()=>{});var t_=G(()=>{});var Pd=G(()=>{});var Kt=G(()=>{zC();t_();Pd()});function Cz(e){return e==null?!1:typeof e.RE_EXN_ID=="string"}function Xt(e){return Cz(e)?e:{RE_EXN_ID:"JsExn",_1:e}}function i_(e){let t=r_[e];if(t!==void 0){let n=t+1|0;return r_[e]=n,e+("/"+n)}return r_[e]=1,e}var r_,pn=G(()=>{r_={}});import*as WC from"node:child_process";function Da(e){let t=mi(e);if(t===void 0)return{code:void 0,message:"unknown error"};let n=tt(t);return{code:_c(n.code),message:Ye(hi(n),"unknown error")}}function JC(e,t,n,r){try{return{TAG:"Ok",_0:WC.execFileSync(e,t,{encoding:"utf8",timeout:n,maxBuffer:r})}}catch(i){let o=Xt(i);return{TAG:"Error",_0:Da(o)}}}var Tz,Ht=G(()=>{$i();$e();vc();Tz=Ta(BC(),1);Kt();dt();pn()});function ZC(e){let t=JC(e,["--version"],1e4,1048576);if(t.TAG!=="Ok")return;let n=VC.exec(t._0);if(n!=null)return cn(n.slice(1)[0],r=>r)}function YC(e,t){return e!==void 0&&t!==void 0?e===t?{TAG:"Match",version:e}:{TAG:"Mismatch",pathVersion:e,pinnedVersion:t}:{TAG:"Unverified",pathVersion:e,pinnedVersion:t}}var VC,QC=G(()=>{xt();Ht();$e();Kt();VC=new RegExp("(\\d+\\.\\d+\\.\\d+)")});function xz(e,t){let n=YC(e,t);switch(n.TAG){case"Match":return{TAG:"Ok",_0:n.version};case"Mismatch":return{TAG:"Error",_0:"hosted_codex_runtime_refused reason=mismatch observed="+n.pathVersion+" expected="+n.pinnedVersion};case"Unverified":return{TAG:"Error",_0:"hosted_codex_runtime_refused reason=unverified observed=unverified expected="+t}}}function XC(e,t){return xz(ZC(e),t)}var eT=G(()=>{$e();QC()});var tT,o_=G(()=>{eT();tT=XC});var rT,nT=G(()=>{rT={name:"@linzumi/cli",version:"1.0.279",description:"Linzumi CLI \u2014 point a Codex agent at the real code on your laptop, with your team watching and steering from shared threads.",type:"module",bin:{linzumi:"bin/linzumi.js"},files:["README.md","bin","dist","scripts","!scripts/build-*-oracle.mjs"],scripts:{build:"rescript build ../linzumi-cli-rescript && node scripts/build.mjs","bump-version":"node scripts/bump-cli-version.mjs",test:"pnpm --dir ../linzumi-cli-rescript test && npm run test:operational",typecheck:"rescript build ../linzumi-cli-rescript && tsgo --noEmit -p tsconfig.source.json",prepack:"rescript build -q ../linzumi-cli-rescript && node scripts/build.mjs","pack:dry-run":"npm pack --dry-run","test:operational":"vitest run --config vitest.config.mjs","vendor:codex-app-server-protocol":"tsx scripts/vendor-codex-app-server-protocol.ts","test:startup":"npm run build && node --test --test-concurrency=1 ../linzumi-cli-rescript/src/parity/CommanderStartupRefusalConformance.res.mjs","typecheck:all":"rescript build ../linzumi-cli-rescript && tsgo --noEmit -p tsconfig.json","typecheck:watch":"rescript build ../linzumi-cli-rescript && tsgo --noEmit -w -p tsconfig.source.json","test:agent-source":"LINZUMI_CI_QUARANTINE=0 pnpm exec vitest run --config vitest.config.mjs test/channelSession.test.ts test/kandanQueue.test.ts -t '(retains three busy accepted source snapshots without fusing or interrupting|keeps different accepted agent sources distinct through interrupt pickup)' && pnpm --dir ../linzumi-cli-rescript build && pnpm --dir ../linzumi-cli-rescript exec node --import tsx src/parity/AgentOpenaiModelProviderConformance.res.mjs && pnpm --dir ../linzumi-cli-rescript exec node --import tsx src/parity/WorkerMintCredentialConformance.res.mjs","codex:history-table":"node scripts/codex_history_table.mjs","vendor:codex-app-server-protocol:check":"tsx scripts/vendor-codex-app-server-protocol.ts --check"},keywords:["linzumi","kandan","codex","local-runner"],license:"MIT",publishConfig:{access:"public"},dependencies:{"@anthropic-ai/claude-agent-sdk":"0.3.283","@inquirer/prompts":"^7.8.6","@modelcontextprotocol/sdk":"^1.29.0","@openai/codex":"0.158.0",blessed:"^0.1.81","proper-lockfile":"3.2.0",undici:"^6.25.0",ws:"^8.18.0",zod:"^3.25.76"},engines:{node:">=20"},readmeFilename:"README.md",devDependencies:{"@types/blessed":"^0.1.27","@types/node":"^22.18.6","@types/proper-lockfile":"4.1.4","@typescript/native-preview":"7.0.0-dev.20260703.1",esbuild:"^0.27.2","fast-check":"^3.23.2",rescript:"12.3.0",tsx:"^4.21.0",typescript:"^5.9.3",vitest:"^1.6.1"}}});var a_,Pc=G(()=>{"use strict";nT();a_=rT.dependencies["@openai/codex"]});async function iT(e,t,n){let r;try{e(),r=!0}catch{r=!1}let i;try{await t(),i=!0}catch{i=!1}return r&&i?{TAG:"Ok",_0:void 0}:(n("hosted_auth_quota_cleanup_failed reason=owned_process_not_confirmed_reaped"),{TAG:"Error",_0:"cleanup_failed"})}function oT(e,t){let n=e.quotaWindow,r=e.credits;if(n===void 0&&r===void 0)return{status:"unavailable",reason:"empty_response"};let i=n!==void 0?[n.usedPercent,n.windowMinutes,n.resetsAtMs]:[void 0,void 0,void 0];return{status:"captured",quotaWindow:{usedPercent:i[0],windowMinutes:i[1],resetsAtMs:i[2],capturedAtMs:t,credits:r}}}var aT=G(()=>{});var sT,dT,lT=G(()=>{aT();sT=iT,dT=oT});function We(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function s_(e){let t=[["threadId",e.threadId],["turnId",e.turnId],["itemId",e.itemId],["processId",e.processId],["requestId",e.requestId]].filter(n=>n[1]!==void 0);return Object.fromEntries(t)}var Ot=G(()=>{"use strict"});var Mc=G(()=>{"use strict";Ot()});function pT(e){let t=Ur(e.rateLimits)??Ur(e.rate_limits)??Ur(e.limits)??e,n=[t,...Object.values(t).flatMap(v=>{let y=Ur(v);return y===void 0?[]:[y]})],r=n.reduce((v,y)=>{let S=Be(y.usedPercent)??Be(y.used_percent);return S===void 0?v:v===void 0?S:Math.max(v,S)},void 0),o=n.some(v=>Be(v.remaining)===0||Be(v.remainingRequests)===0||Be(v.remaining_requests)===0||Be(v.remainingTokens)===0||Be(v.remaining_tokens)===0||Be(v.retryAfterSeconds)!==void 0||Be(v.retry_after_seconds)!==void 0)?"rejected":r!==void 0&&r>=80?"allowed_warning":"allowed",a=Ur(t.primary),s=Be(a?.usedPercent),d=Be(a?.windowDurationMins),l=Be(a?.resetsAt),u=Ur(t.credits),c=fT(u?.hasCredits),p=fT(u?.unlimited),m=u?.balance,g=c===void 0||p===void 0?void 0:{hasCredits:c,unlimited:p,balance:typeof m=="string"?m:null},h=s===void 0&&d===void 0&&l===void 0?void 0:{...s===void 0?{}:{usedPercent:s},...d===void 0?{}:{windowMinutes:d},...l===void 0?{}:{resetsAtMs:l*1e3}};return{summary:Mz(e)??"seen (no details)",status:o,utilizationPercent:r,...h===void 0?{}:{quotaWindow:h},...g===void 0?{}:{credits:g}}}function Mz(e){let t=Ur(e.rateLimits)??Ur(e.rate_limits)??Ur(e.limits)??e,n=uT(t,void 0),r=Object.entries(t).flatMap(([o,a])=>{let s=Ur(a);return s===void 0?[]:[uT(s,o)]}),i=[n,...r].filter(o=>o!==void 0);return i.length===0?void 0:i.join(" | ")}function uT(e,t){let n=hr(e.limitName)??hr(e.limit_name)??hr(e.name)??hr(e.type)??t,r=hr(e.planType)??hr(e.plan_type)??hr(e.plan),i=Be(e.remaining)??Be(e.remainingRequests)??Be(e.remaining_requests)??Be(e.remainingTokens)??Be(e.remaining_tokens),o=Be(e.limit)??Be(e.requestLimit)??Be(e.request_limit)??Be(e.limitRequests)??Be(e.limit_requests)??Be(e.tokenLimit)??Be(e.token_limit)??Be(e.limitTokens)??Be(e.limit_tokens),a=hr(e.resetAt)??hr(e.reset_at)??hr(e.resetsAt)??hr(e.resets_at)??cT(e.resetsAt)??cT(e.resets_at)??Dc(e.resetAfterSeconds)??Dc(e.reset_after_seconds)??Dc(e.retryAfterSeconds)??Dc(e.retry_after_seconds),s=Be(e.usedPercent)??Be(e.used_percent),d=Be(e.windowDurationMins)??Be(e.window_duration_mins),l=[n,r].filter(m=>m!==void 0).join(" "),u=l===""?void 0:l,p=[i===void 0?void 0:o===void 0?`${i} remaining`:`${i}/${o} remaining`,s===void 0?void 0:`${s}% used`,d===void 0?void 0:`${d}m window`,a===void 0?void 0:`reset ${a}`].filter(m=>m!==void 0);return p.length===0?u===void 0?void 0:`${u} seen (no details)`:u===void 0?p.join(" "):`${u} ${p.join(" ")}`}function Dc(e){let t=Be(e);return t===void 0?void 0:`${t}s`}function cT(e){let t=Be(e);return t===void 0?void 0:new Date(t*1e3).toISOString()}function Ur(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:void 0}function hr(e){return typeof e=="string"&&e.trim()!==""?e:void 0}function fT(e){return typeof e=="boolean"?e:void 0}function Be(e){if(typeof e=="number"&&Number.isSafeInteger(e))return e;if(typeof e!="string")return;let t=Number.parseInt(e,10);return Number.isSafeInteger(t)&&t.toString()===e.trim()?t:void 0}var mT=G(()=>{"use strict";Mc();Ot()});var gi=st((JHe,gT)=>{"use strict";var hT=["nodebuffer","arraybuffer","fragments"],_T=typeof Blob<"u";_T&&hT.push("blob");gT.exports={BINARY_TYPES:hT,EMPTY_BUFFER:Buffer.alloc(0),GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",hasBlob:_T,kForOnEventAttribute:Symbol("kIsForOnEventAttribute"),kListener:Symbol("kListener"),kStatusCode:Symbol("status-code"),kWebSocket:Symbol("websocket"),NOOP:()=>{}}});var Dd=st((VHe,Lc)=>{"use strict";var{EMPTY_BUFFER:Dz}=gi(),d_=Buffer[Symbol.species];function Lz(e,t){if(e.length===0)return Dz;if(e.length===1)return e[0];let n=Buffer.allocUnsafe(t),r=0;for(let i=0;i<e.length;i++){let o=e[i];n.set(o,r),r+=o.length}return r<t?new d_(n.buffer,n.byteOffset,r):n}function yT(e,t,n,r,i){for(let o=0;o<i;o++)n[r+o]=e[o]^t[o&3]}function vT(e,t){for(let n=0;n<e.length;n++)e[n]^=t[n&3]}function Nz(e){return e.length===e.buffer.byteLength?e.buffer:e.buffer.slice(e.byteOffset,e.byteOffset+e.length)}function l_(e){if(l_.readOnly=!0,Buffer.isBuffer(e))return e;let t;return e instanceof ArrayBuffer?t=new d_(e):ArrayBuffer.isView(e)?t=new d_(e.buffer,e.byteOffset,e.byteLength):(t=Buffer.from(e),l_.readOnly=!1),t}Lc.exports={concat:Lz,mask:yT,toArrayBuffer:Nz,toBuffer:l_,unmask:vT};if(!process.env.WS_NO_BUFFER_UTIL)try{let e=Ze("bufferutil");Lc.exports.mask=function(t,n,r,i,o){o<48?yT(t,n,r,i,o):e.mask(t,n,r,i,o)},Lc.exports.unmask=function(t,n){t.length<32?vT(t,n):e.unmask(t,n)}}catch{}});var wT=st((ZHe,ST)=>{"use strict";var bT=Symbol("kDone"),u_=Symbol("kRun"),c_=class{constructor(t){this[bT]=()=>{this.pending--,this[u_]()},this.concurrency=t||1/0,this.jobs=[],this.pending=0}add(t){this.jobs.push(t),this[u_]()}[u_](){if(this.pending!==this.concurrency&&this.jobs.length){let t=this.jobs.shift();this.pending++,t(this[bT])}}};ST.exports=c_});var Nd=st((YHe,TT)=>{"use strict";var Ld=Ze("zlib"),ET=Dd(),$z=wT(),{kStatusCode:kT}=gi(),jz=Buffer[Symbol.species],Fz=Buffer.from([0,0,255,255]),$c=Symbol("permessage-deflate"),yi=Symbol("total-length"),Na=Symbol("callback"),Ui=Symbol("buffers"),$a=Symbol("error"),Nc,f_=class{constructor(t,n,r){if(this._maxPayload=r|0,this._options=t||{},this._threshold=this._options.threshold!==void 0?this._options.threshold:1024,this._isServer=!!n,this._deflate=null,this._inflate=null,this.params=null,!Nc){let i=this._options.concurrencyLimit!==void 0?this._options.concurrencyLimit:10;Nc=new $z(i)}}static get extensionName(){return"permessage-deflate"}offer(){let t={};return this._options.serverNoContextTakeover&&(t.server_no_context_takeover=!0),this._options.clientNoContextTakeover&&(t.client_no_context_takeover=!0),this._options.serverMaxWindowBits&&(t.server_max_window_bits=this._options.serverMaxWindowBits),this._options.clientMaxWindowBits?t.client_max_window_bits=this._options.clientMaxWindowBits:this._options.clientMaxWindowBits==null&&(t.client_max_window_bits=!0),t}accept(t){return t=this.normalizeParams(t),this.params=this._isServer?this.acceptAsServer(t):this.acceptAsClient(t),this.params}cleanup(){if(this._inflate&&(this._inflate.close(),this._inflate=null),this._deflate){let t=this._deflate[Na];this._deflate.close(),this._deflate=null,t&&t(new Error("The deflate stream was closed while data was being processed"))}}acceptAsServer(t){let n=this._options,r=t.find(i=>!(n.serverNoContextTakeover===!1&&i.server_no_context_takeover||i.server_max_window_bits&&(n.serverMaxWindowBits===!1||typeof n.serverMaxWindowBits=="number"&&n.serverMaxWindowBits>i.server_max_window_bits)||typeof n.clientMaxWindowBits=="number"&&!i.client_max_window_bits));if(!r)throw new Error("None of the extension offers can be accepted");return n.serverNoContextTakeover&&(r.server_no_context_takeover=!0),n.clientNoContextTakeover&&(r.client_no_context_takeover=!0),typeof n.serverMaxWindowBits=="number"&&(r.server_max_window_bits=n.serverMaxWindowBits),typeof n.clientMaxWindowBits=="number"?r.client_max_window_bits=n.clientMaxWindowBits:(r.client_max_window_bits===!0||n.clientMaxWindowBits===!1)&&delete r.client_max_window_bits,r}acceptAsClient(t){let n=t[0];if(this._options.clientNoContextTakeover===!1&&n.client_no_context_takeover)throw new Error('Unexpected parameter "client_no_context_takeover"');if(!n.client_max_window_bits)typeof this._options.clientMaxWindowBits=="number"&&(n.client_max_window_bits=this._options.clientMaxWindowBits);else if(this._options.clientMaxWindowBits===!1||typeof this._options.clientMaxWindowBits=="number"&&n.client_max_window_bits>this._options.clientMaxWindowBits)throw new Error('Unexpected or invalid parameter "client_max_window_bits"');return n}normalizeParams(t){return t.forEach(n=>{Object.keys(n).forEach(r=>{let i=n[r];if(i.length>1)throw new Error(`Parameter "${r}" must have only a single value`);if(i=i[0],r==="client_max_window_bits"){if(i!==!0){let o=+i;if(!Number.isInteger(o)||o<8||o>15)throw new TypeError(`Invalid value for parameter "${r}": ${i}`);i=o}else if(!this._isServer)throw new TypeError(`Invalid value for parameter "${r}": ${i}`)}else if(r==="server_max_window_bits"){let o=+i;if(!Number.isInteger(o)||o<8||o>15)throw new TypeError(`Invalid value for parameter "${r}": ${i}`);i=o}else if(r==="client_no_context_takeover"||r==="server_no_context_takeover"){if(i!==!0)throw new TypeError(`Invalid value for parameter "${r}": ${i}`)}else throw new Error(`Unknown parameter "${r}"`);n[r]=i})}),t}decompress(t,n,r){Nc.add(i=>{this._decompress(t,n,(o,a)=>{i(),r(o,a)})})}compress(t,n,r){Nc.add(i=>{this._compress(t,n,(o,a)=>{i(),r(o,a)})})}_decompress(t,n,r){let i=this._isServer?"client":"server";if(!this._inflate){let o=`${i}_max_window_bits`,a=typeof this.params[o]!="number"?Ld.Z_DEFAULT_WINDOWBITS:this.params[o];this._inflate=Ld.createInflateRaw({...this._options.zlibInflateOptions,windowBits:a}),this._inflate[$c]=this,this._inflate[yi]=0,this._inflate[Ui]=[],this._inflate.on("error",qz),this._inflate.on("data",CT)}this._inflate[Na]=r,this._inflate.write(t),n&&this._inflate.write(Fz),this._inflate.flush(()=>{let o=this._inflate[$a];if(o){this._inflate.close(),this._inflate=null,r(o);return}let a=ET.concat(this._inflate[Ui],this._inflate[yi]);this._inflate._readableState.endEmitted?(this._inflate.close(),this._inflate=null):(this._inflate[yi]=0,this._inflate[Ui]=[],n&&this.params[`${i}_no_context_takeover`]&&this._inflate.reset()),r(null,a)})}_compress(t,n,r){let i=this._isServer?"server":"client";if(!this._deflate){let o=`${i}_max_window_bits`,a=typeof this.params[o]!="number"?Ld.Z_DEFAULT_WINDOWBITS:this.params[o];this._deflate=Ld.createDeflateRaw({...this._options.zlibDeflateOptions,windowBits:a}),this._deflate[yi]=0,this._deflate[Ui]=[],this._deflate.on("data",Uz)}this._deflate[Na]=r,this._deflate.write(t),this._deflate.flush(Ld.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let o=ET.concat(this._deflate[Ui],this._deflate[yi]);n&&(o=new jz(o.buffer,o.byteOffset,o.length-4)),this._deflate[Na]=null,this._deflate[yi]=0,this._deflate[Ui]=[],n&&this.params[`${i}_no_context_takeover`]&&this._deflate.reset(),r(null,o)})}};TT.exports=f_;function Uz(e){this[Ui].push(e),this[yi]+=e.length}function CT(e){if(this[yi]+=e.length,this[$c]._maxPayload<1||this[yi]<=this[$c]._maxPayload){this[Ui].push(e);return}this[$a]=new RangeError("Max payload size exceeded"),this[$a].code="WS_ERR_UNSUPPORTED_MESSAGE_LENGTH",this[$a][kT]=1009,this.removeListener("data",CT),this.reset()}function qz(e){if(this[$c]._inflate=null,this[$a]){this[Na](this[$a]);return}e[kT]=1007,this[Na](e)}});var ja=st((QHe,jc)=>{"use strict";var{isUtf8:AT}=Ze("buffer"),{hasBlob:Gz}=gi(),Bz=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0];function zz(e){return e>=1e3&&e<=1014&&e!==1004&&e!==1005&&e!==1006||e>=3e3&&e<=4999}function p_(e){let t=e.length,n=0;for(;n<t;)if((e[n]&128)===0)n++;else if((e[n]&224)===192){if(n+1===t||(e[n+1]&192)!==128||(e[n]&254)===192)return!1;n+=2}else if((e[n]&240)===224){if(n+2>=t||(e[n+1]&192)!==128||(e[n+2]&192)!==128||e[n]===224&&(e[n+1]&224)===128||e[n]===237&&(e[n+1]&224)===160)return!1;n+=3}else if((e[n]&248)===240){if(n+3>=t||(e[n+1]&192)!==128||(e[n+2]&192)!==128||(e[n+3]&192)!==128||e[n]===240&&(e[n+1]&240)===128||e[n]===244&&e[n+1]>143||e[n]>244)return!1;n+=4}else return!1;return!0}function Kz(e){return Gz&&typeof e=="object"&&typeof e.arrayBuffer=="function"&&typeof e.type=="string"&&typeof e.stream=="function"&&(e[Symbol.toStringTag]==="Blob"||e[Symbol.toStringTag]==="File")}jc.exports={isBlob:Kz,isValidStatusCode:zz,isValidUTF8:p_,tokenChars:Bz};if(AT)jc.exports.isValidUTF8=function(e){return e.length<24?p_(e):AT(e)};else if(!process.env.WS_NO_UTF_8_VALIDATE)try{let e=Ze("utf-8-validate");jc.exports.isValidUTF8=function(t){return t.length<32?p_(t):e(t)}}catch{}});var y_=st((XHe,DT)=>{"use strict";var{Writable:Hz}=Ze("stream"),xT=Nd(),{BINARY_TYPES:Wz,EMPTY_BUFFER:OT,kStatusCode:Jz,kWebSocket:Vz}=gi(),{concat:m_,toArrayBuffer:Zz,unmask:Yz}=Dd(),{isValidStatusCode:Qz,isValidUTF8:IT}=ja(),Fc=Buffer[Symbol.species],Yn=0,RT=1,PT=2,MT=3,h_=4,__=5,Uc=6,g_=class extends Hz{constructor(t={}){super(),this._allowSynchronousEvents=t.allowSynchronousEvents!==void 0?t.allowSynchronousEvents:!0,this._binaryType=t.binaryType||Wz[0],this._extensions=t.extensions||{},this._isServer=!!t.isServer,this._maxPayload=t.maxPayload|0,this._skipUTF8Validation=!!t.skipUTF8Validation,this[Vz]=void 0,this._bufferedBytes=0,this._buffers=[],this._compressed=!1,this._payloadLength=0,this._mask=void 0,this._fragmented=0,this._masked=!1,this._fin=!1,this._opcode=0,this._totalPayloadLength=0,this._messageLength=0,this._fragments=[],this._errored=!1,this._loop=!1,this._state=Yn}_write(t,n,r){if(this._opcode===8&&this._state==Yn)return r();this._bufferedBytes+=t.length,this._buffers.push(t),this.startLoop(r)}consume(t){if(this._bufferedBytes-=t,t===this._buffers[0].length)return this._buffers.shift();if(t<this._buffers[0].length){let r=this._buffers[0];return this._buffers[0]=new Fc(r.buffer,r.byteOffset+t,r.length-t),new Fc(r.buffer,r.byteOffset,t)}let n=Buffer.allocUnsafe(t);do{let r=this._buffers[0],i=n.length-t;t>=r.length?n.set(this._buffers.shift(),i):(n.set(new Uint8Array(r.buffer,r.byteOffset,t),i),this._buffers[0]=new Fc(r.buffer,r.byteOffset+t,r.length-t)),t-=r.length}while(t>0);return n}startLoop(t){this._loop=!0;do switch(this._state){case Yn:this.getInfo(t);break;case RT:this.getPayloadLength16(t);break;case PT:this.getPayloadLength64(t);break;case MT:this.getMask();break;case h_:this.getData(t);break;case __:case Uc:this._loop=!1;return}while(this._loop);this._errored||t()}getInfo(t){if(this._bufferedBytes<2){this._loop=!1;return}let n=this.consume(2);if((n[0]&48)!==0){let i=this.createError(RangeError,"RSV2 and RSV3 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_2_3");t(i);return}let r=(n[0]&64)===64;if(r&&!this._extensions[xT.extensionName]){let i=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");t(i);return}if(this._fin=(n[0]&128)===128,this._opcode=n[0]&15,this._payloadLength=n[1]&127,this._opcode===0){if(r){let i=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");t(i);return}if(!this._fragmented){let i=this.createError(RangeError,"invalid opcode 0",!0,1002,"WS_ERR_INVALID_OPCODE");t(i);return}this._opcode=this._fragmented}else if(this._opcode===1||this._opcode===2){if(this._fragmented){let i=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");t(i);return}this._compressed=r}else if(this._opcode>7&&this._opcode<11){if(!this._fin){let i=this.createError(RangeError,"FIN must be set",!0,1002,"WS_ERR_EXPECTED_FIN");t(i);return}if(r){let i=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");t(i);return}if(this._payloadLength>125||this._opcode===8&&this._payloadLength===1){let i=this.createError(RangeError,`invalid payload length ${this._payloadLength}`,!0,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH");t(i);return}}else{let i=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");t(i);return}if(!this._fin&&!this._fragmented&&(this._fragmented=this._opcode),this._masked=(n[1]&128)===128,this._isServer){if(!this._masked){let i=this.createError(RangeError,"MASK must be set",!0,1002,"WS_ERR_EXPECTED_MASK");t(i);return}}else if(this._masked){let i=this.createError(RangeError,"MASK must be clear",!0,1002,"WS_ERR_UNEXPECTED_MASK");t(i);return}this._payloadLength===126?this._state=RT:this._payloadLength===127?this._state=PT:this.haveLength(t)}getPayloadLength16(t){if(this._bufferedBytes<2){this._loop=!1;return}this._payloadLength=this.consume(2).readUInt16BE(0),this.haveLength(t)}getPayloadLength64(t){if(this._bufferedBytes<8){this._loop=!1;return}let n=this.consume(8),r=n.readUInt32BE(0);if(r>Math.pow(2,21)-1){let i=this.createError(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009,"WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH");t(i);return}this._payloadLength=r*Math.pow(2,32)+n.readUInt32BE(4),this.haveLength(t)}haveLength(t){if(this._payloadLength&&this._opcode<8&&(this._totalPayloadLength+=this._payloadLength,this._totalPayloadLength>this._maxPayload&&this._maxPayload>0)){let n=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");t(n);return}this._masked?this._state=MT:this._state=h_}getMask(){if(this._bufferedBytes<4){this._loop=!1;return}this._mask=this.consume(4),this._state=h_}getData(t){let n=OT;if(this._payloadLength){if(this._bufferedBytes<this._payloadLength){this._loop=!1;return}n=this.consume(this._payloadLength),this._masked&&(this._mask[0]|this._mask[1]|this._mask[2]|this._mask[3])!==0&&Yz(n,this._mask)}if(this._opcode>7){this.controlMessage(n,t);return}if(this._compressed){this._state=__,this.decompress(n,t);return}n.length&&(this._messageLength=this._totalPayloadLength,this._fragments.push(n)),this.dataMessage(t)}decompress(t,n){this._extensions[xT.extensionName].decompress(t,this._fin,(i,o)=>{if(i)return n(i);if(o.length){if(this._messageLength+=o.length,this._messageLength>this._maxPayload&&this._maxPayload>0){let a=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");n(a);return}this._fragments.push(o)}this.dataMessage(n),this._state===Yn&&this.startLoop(n)})}dataMessage(t){if(!this._fin){this._state=Yn;return}let n=this._messageLength,r=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._fragments=[],this._opcode===2){let i;this._binaryType==="nodebuffer"?i=m_(r,n):this._binaryType==="arraybuffer"?i=Zz(m_(r,n)):this._binaryType==="blob"?i=new Blob(r):i=r,this._allowSynchronousEvents?(this.emit("message",i,!0),this._state=Yn):(this._state=Uc,setImmediate(()=>{this.emit("message",i,!0),this._state=Yn,this.startLoop(t)}))}else{let i=m_(r,n);if(!this._skipUTF8Validation&&!IT(i)){let o=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");t(o);return}this._state===__||this._allowSynchronousEvents?(this.emit("message",i,!1),this._state=Yn):(this._state=Uc,setImmediate(()=>{this.emit("message",i,!1),this._state=Yn,this.startLoop(t)}))}}controlMessage(t,n){if(this._opcode===8){if(t.length===0)this._loop=!1,this.emit("conclude",1005,OT),this.end();else{let r=t.readUInt16BE(0);if(!Qz(r)){let o=this.createError(RangeError,`invalid status code ${r}`,!0,1002,"WS_ERR_INVALID_CLOSE_CODE");n(o);return}let i=new Fc(t.buffer,t.byteOffset+2,t.length-2);if(!this._skipUTF8Validation&&!IT(i)){let o=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");n(o);return}this._loop=!1,this.emit("conclude",r,i),this.end()}this._state=Yn;return}this._allowSynchronousEvents?(this.emit(this._opcode===9?"ping":"pong",t),this._state=Yn):(this._state=Uc,setImmediate(()=>{this.emit(this._opcode===9?"ping":"pong",t),this._state=Yn,this.startLoop(n)}))}createError(t,n,r,i,o){this._loop=!1,this._errored=!0;let a=new t(r?`Invalid WebSocket frame: ${n}`:n);return Error.captureStackTrace(a,this.createError),a.code=o,a[Jz]=i,a}};DT.exports=g_});var S_=st((tWe,$T)=>{"use strict";var{Duplex:eWe}=Ze("stream"),{randomFillSync:Xz}=Ze("crypto"),LT=Nd(),{EMPTY_BUFFER:eK,kWebSocket:tK,NOOP:nK}=gi(),{isBlob:Fa,isValidStatusCode:rK}=ja(),{mask:NT,toBuffer:Co}=Dd(),Qn=Symbol("kByteLength"),iK=Buffer.alloc(4),qc=8*1024,To,Ua=qc,_r=0,oK=1,aK=2,v_=class e{constructor(t,n,r){this._extensions=n||{},r&&(this._generateMask=r,this._maskBuffer=Buffer.alloc(4)),this._socket=t,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._queue=[],this._state=_r,this.onerror=nK,this[tK]=void 0}static frame(t,n){let r,i=!1,o=2,a=!1;n.mask&&(r=n.maskBuffer||iK,n.generateMask?n.generateMask(r):(Ua===qc&&(To===void 0&&(To=Buffer.alloc(qc)),Xz(To,0,qc),Ua=0),r[0]=To[Ua++],r[1]=To[Ua++],r[2]=To[Ua++],r[3]=To[Ua++]),a=(r[0]|r[1]|r[2]|r[3])===0,o=6);let s;typeof t=="string"?(!n.mask||a)&&n[Qn]!==void 0?s=n[Qn]:(t=Buffer.from(t),s=t.length):(s=t.length,i=n.mask&&n.readOnly&&!a);let d=s;s>=65536?(o+=8,d=127):s>125&&(o+=2,d=126);let l=Buffer.allocUnsafe(i?s+o:o);return l[0]=n.fin?n.opcode|128:n.opcode,n.rsv1&&(l[0]|=64),l[1]=d,d===126?l.writeUInt16BE(s,2):d===127&&(l[2]=l[3]=0,l.writeUIntBE(s,4,6)),n.mask?(l[1]|=128,l[o-4]=r[0],l[o-3]=r[1],l[o-2]=r[2],l[o-1]=r[3],a?[l,t]:i?(NT(t,r,l,o,s),[l]):(NT(t,r,t,0,s),[l,t])):[l,t]}close(t,n,r,i){let o;if(t===void 0)o=eK;else{if(typeof t!="number"||!rK(t))throw new TypeError("First argument must be a valid error code number");if(n===void 0||!n.length)o=Buffer.allocUnsafe(2),o.writeUInt16BE(t,0);else{let s=Buffer.byteLength(n);if(s>123)throw new RangeError("The message must not be greater than 123 bytes");o=Buffer.allocUnsafe(2+s),o.writeUInt16BE(t,0),typeof n=="string"?o.write(n,2):o.set(n,2)}}let a={[Qn]:o.length,fin:!0,generateMask:this._generateMask,mask:r,maskBuffer:this._maskBuffer,opcode:8,readOnly:!1,rsv1:!1};this._state!==_r?this.enqueue([this.dispatch,o,!1,a,i]):this.sendFrame(e.frame(o,a),i)}ping(t,n,r){let i,o;if(typeof t=="string"?(i=Buffer.byteLength(t),o=!1):Fa(t)?(i=t.size,o=!1):(t=Co(t),i=t.length,o=Co.readOnly),i>125)throw new RangeError("The data size must not be greater than 125 bytes");let a={[Qn]:i,fin:!0,generateMask:this._generateMask,mask:n,maskBuffer:this._maskBuffer,opcode:9,readOnly:o,rsv1:!1};Fa(t)?this._state!==_r?this.enqueue([this.getBlobData,t,!1,a,r]):this.getBlobData(t,!1,a,r):this._state!==_r?this.enqueue([this.dispatch,t,!1,a,r]):this.sendFrame(e.frame(t,a),r)}pong(t,n,r){let i,o;if(typeof t=="string"?(i=Buffer.byteLength(t),o=!1):Fa(t)?(i=t.size,o=!1):(t=Co(t),i=t.length,o=Co.readOnly),i>125)throw new RangeError("The data size must not be greater than 125 bytes");let a={[Qn]:i,fin:!0,generateMask:this._generateMask,mask:n,maskBuffer:this._maskBuffer,opcode:10,readOnly:o,rsv1:!1};Fa(t)?this._state!==_r?this.enqueue([this.getBlobData,t,!1,a,r]):this.getBlobData(t,!1,a,r):this._state!==_r?this.enqueue([this.dispatch,t,!1,a,r]):this.sendFrame(e.frame(t,a),r)}send(t,n,r){let i=this._extensions[LT.extensionName],o=n.binary?2:1,a=n.compress,s,d;typeof t=="string"?(s=Buffer.byteLength(t),d=!1):Fa(t)?(s=t.size,d=!1):(t=Co(t),s=t.length,d=Co.readOnly),this._firstFragment?(this._firstFragment=!1,a&&i&&i.params[i._isServer?"server_no_context_takeover":"client_no_context_takeover"]&&(a=s>=i._threshold),this._compress=a):(a=!1,o=0),n.fin&&(this._firstFragment=!0);let l={[Qn]:s,fin:n.fin,generateMask:this._generateMask,mask:n.mask,maskBuffer:this._maskBuffer,opcode:o,readOnly:d,rsv1:a};Fa(t)?this._state!==_r?this.enqueue([this.getBlobData,t,this._compress,l,r]):this.getBlobData(t,this._compress,l,r):this._state!==_r?this.enqueue([this.dispatch,t,this._compress,l,r]):this.dispatch(t,this._compress,l,r)}getBlobData(t,n,r,i){this._bufferedBytes+=r[Qn],this._state=aK,t.arrayBuffer().then(o=>{if(this._socket.destroyed){let s=new Error("The socket was closed while the blob was being read");process.nextTick(b_,this,s,i);return}this._bufferedBytes-=r[Qn];let a=Co(o);n?this.dispatch(a,n,r,i):(this._state=_r,this.sendFrame(e.frame(a,r),i),this.dequeue())}).catch(o=>{process.nextTick(sK,this,o,i)})}dispatch(t,n,r,i){if(!n){this.sendFrame(e.frame(t,r),i);return}let o=this._extensions[LT.extensionName];this._bufferedBytes+=r[Qn],this._state=oK,o.compress(t,r.fin,(a,s)=>{if(this._socket.destroyed){let d=new Error("The socket was closed while data was being compressed");b_(this,d,i);return}this._bufferedBytes-=r[Qn],this._state=_r,r.readOnly=!1,this.sendFrame(e.frame(s,r),i),this.dequeue()})}dequeue(){for(;this._state===_r&&this._queue.length;){let t=this._queue.shift();this._bufferedBytes-=t[3][Qn],Reflect.apply(t[0],this,t.slice(1))}}enqueue(t){this._bufferedBytes+=t[3][Qn],this._queue.push(t)}sendFrame(t,n){t.length===2?(this._socket.cork(),this._socket.write(t[0]),this._socket.write(t[1],n),this._socket.uncork()):this._socket.write(t[0],n)}};$T.exports=v_;function b_(e,t,n){typeof n=="function"&&n(t);for(let r=0;r<e._queue.length;r++){let i=e._queue[r],o=i[i.length-1];typeof o=="function"&&o(t)}}function sK(e,t,n){b_(e,t,n),e.onerror(t)}});var HT=st((nWe,KT)=>{"use strict";var{kForOnEventAttribute:$d,kListener:w_}=gi(),jT=Symbol("kCode"),FT=Symbol("kData"),UT=Symbol("kError"),qT=Symbol("kMessage"),GT=Symbol("kReason"),qa=Symbol("kTarget"),BT=Symbol("kType"),zT=Symbol("kWasClean"),vi=class{constructor(t){this[qa]=null,this[BT]=t}get target(){return this[qa]}get type(){return this[BT]}};Object.defineProperty(vi.prototype,"target",{enumerable:!0});Object.defineProperty(vi.prototype,"type",{enumerable:!0});var Ao=class extends vi{constructor(t,n={}){super(t),this[jT]=n.code===void 0?0:n.code,this[GT]=n.reason===void 0?"":n.reason,this[zT]=n.wasClean===void 0?!1:n.wasClean}get code(){return this[jT]}get reason(){return this[GT]}get wasClean(){return this[zT]}};Object.defineProperty(Ao.prototype,"code",{enumerable:!0});Object.defineProperty(Ao.prototype,"reason",{enumerable:!0});Object.defineProperty(Ao.prototype,"wasClean",{enumerable:!0});var Ga=class extends vi{constructor(t,n={}){super(t),this[UT]=n.error===void 0?null:n.error,this[qT]=n.message===void 0?"":n.message}get error(){return this[UT]}get message(){return this[qT]}};Object.defineProperty(Ga.prototype,"error",{enumerable:!0});Object.defineProperty(Ga.prototype,"message",{enumerable:!0});var jd=class extends vi{constructor(t,n={}){super(t),this[FT]=n.data===void 0?null:n.data}get data(){return this[FT]}};Object.defineProperty(jd.prototype,"data",{enumerable:!0});var dK={addEventListener(e,t,n={}){for(let i of this.listeners(e))if(!n[$d]&&i[w_]===t&&!i[$d])return;let r;if(e==="message")r=function(o,a){let s=new jd("message",{data:a?o:o.toString()});s[qa]=this,Gc(t,this,s)};else if(e==="close")r=function(o,a){let s=new Ao("close",{code:o,reason:a.toString(),wasClean:this._closeFrameReceived&&this._closeFrameSent});s[qa]=this,Gc(t,this,s)};else if(e==="error")r=function(o){let a=new Ga("error",{error:o,message:o.message});a[qa]=this,Gc(t,this,a)};else if(e==="open")r=function(){let o=new vi("open");o[qa]=this,Gc(t,this,o)};else return;r[$d]=!!n[$d],r[w_]=t,n.once?this.once(e,r):this.on(e,r)},removeEventListener(e,t){for(let n of this.listeners(e))if(n[w_]===t&&!n[$d]){this.removeListener(e,n);break}}};KT.exports={CloseEvent:Ao,ErrorEvent:Ga,Event:vi,EventTarget:dK,MessageEvent:jd};function Gc(e,t,n){typeof e=="object"&&e.handleEvent?e.handleEvent.call(e,n):e.call(t,n)}});var E_=st((rWe,WT)=>{"use strict";var{tokenChars:Fd}=ja();function qr(e,t,n){e[t]===void 0?e[t]=[n]:e[t].push(n)}function lK(e){let t=Object.create(null),n=Object.create(null),r=!1,i=!1,o=!1,a,s,d=-1,l=-1,u=-1,c=0;for(;c<e.length;c++)if(l=e.charCodeAt(c),a===void 0)if(u===-1&&Fd[l]===1)d===-1&&(d=c);else if(c!==0&&(l===32||l===9))u===-1&&d!==-1&&(u=c);else if(l===59||l===44){if(d===-1)throw new SyntaxError(`Unexpected character at index ${c}`);u===-1&&(u=c);let m=e.slice(d,u);l===44?(qr(t,m,n),n=Object.create(null)):a=m,d=u=-1}else throw new SyntaxError(`Unexpected character at index ${c}`);else if(s===void 0)if(u===-1&&Fd[l]===1)d===-1&&(d=c);else if(l===32||l===9)u===-1&&d!==-1&&(u=c);else if(l===59||l===44){if(d===-1)throw new SyntaxError(`Unexpected character at index ${c}`);u===-1&&(u=c),qr(n,e.slice(d,u),!0),l===44&&(qr(t,a,n),n=Object.create(null),a=void 0),d=u=-1}else if(l===61&&d!==-1&&u===-1)s=e.slice(d,c),d=u=-1;else throw new SyntaxError(`Unexpected character at index ${c}`);else if(i){if(Fd[l]!==1)throw new SyntaxError(`Unexpected character at index ${c}`);d===-1?d=c:r||(r=!0),i=!1}else if(o)if(Fd[l]===1)d===-1&&(d=c);else if(l===34&&d!==-1)o=!1,u=c;else if(l===92)i=!0;else throw new SyntaxError(`Unexpected character at index ${c}`);else if(l===34&&e.charCodeAt(c-1)===61)o=!0;else if(u===-1&&Fd[l]===1)d===-1&&(d=c);else if(d!==-1&&(l===32||l===9))u===-1&&(u=c);else if(l===59||l===44){if(d===-1)throw new SyntaxError(`Unexpected character at index ${c}`);u===-1&&(u=c);let m=e.slice(d,u);r&&(m=m.replace(/\\/g,""),r=!1),qr(n,s,m),l===44&&(qr(t,a,n),n=Object.create(null),a=void 0),s=void 0,d=u=-1}else throw new SyntaxError(`Unexpected character at index ${c}`);if(d===-1||o||l===32||l===9)throw new SyntaxError("Unexpected end of input");u===-1&&(u=c);let p=e.slice(d,u);return a===void 0?qr(t,p,n):(s===void 0?qr(n,p,!0):r?qr(n,s,p.replace(/\\/g,"")):qr(n,s,p),qr(t,a,n)),t}function uK(e){return Object.keys(e).map(t=>{let n=e[t];return Array.isArray(n)||(n=[n]),n.map(r=>[t].concat(Object.keys(r).map(i=>{let o=r[i];return Array.isArray(o)||(o=[o]),o.map(a=>a===!0?i:`${i}=${a}`).join("; ")})).join("; ")).join(", ")}).join(", ")}WT.exports={format:uK,parse:lK}});var Hc=st((aWe,oA)=>{"use strict";var cK=Ze("events"),fK=Ze("https"),pK=Ze("http"),ZT=Ze("net"),mK=Ze("tls"),{randomBytes:hK,createHash:_K}=Ze("crypto"),{Duplex:iWe,Readable:oWe}=Ze("stream"),{URL:k_}=Ze("url"),qi=Nd(),gK=y_(),yK=S_(),{isBlob:vK}=ja(),{BINARY_TYPES:JT,EMPTY_BUFFER:Bc,GUID:bK,kForOnEventAttribute:C_,kListener:SK,kStatusCode:wK,kWebSocket:Wt,NOOP:YT}=gi(),{EventTarget:{addEventListener:EK,removeEventListener:kK}}=HT(),{format:CK,parse:TK}=E_(),{toBuffer:AK}=Dd(),xK=30*1e3,QT=Symbol("kAborted"),T_=[8,13],bi=["CONNECTING","OPEN","CLOSING","CLOSED"],OK=/^[!#$%&'*+\-.0-9A-Z^_`|a-z~]+$/,_t=class e extends cK{constructor(t,n,r){super(),this._binaryType=JT[0],this._closeCode=1006,this._closeFrameReceived=!1,this._closeFrameSent=!1,this._closeMessage=Bc,this._closeTimer=null,this._errorEmitted=!1,this._extensions={},this._paused=!1,this._protocol="",this._readyState=e.CONNECTING,this._receiver=null,this._sender=null,this._socket=null,t!==null?(this._bufferedAmount=0,this._isServer=!1,this._redirects=0,n===void 0?n=[]:Array.isArray(n)||(typeof n=="object"&&n!==null?(r=n,n=[]):n=[n]),XT(this,t,n,r)):(this._autoPong=r.autoPong,this._isServer=!0)}get binaryType(){return this._binaryType}set binaryType(t){JT.includes(t)&&(this._binaryType=t,this._receiver&&(this._receiver._binaryType=t))}get bufferedAmount(){return this._socket?this._socket._writableState.length+this._sender._bufferedBytes:this._bufferedAmount}get extensions(){return Object.keys(this._extensions).join()}get isPaused(){return this._paused}get onclose(){return null}get onerror(){return null}get onopen(){return null}get onmessage(){return null}get protocol(){return this._protocol}get readyState(){return this._readyState}get url(){return this._url}setSocket(t,n,r){let i=new gK({allowSynchronousEvents:r.allowSynchronousEvents,binaryType:this.binaryType,extensions:this._extensions,isServer:this._isServer,maxPayload:r.maxPayload,skipUTF8Validation:r.skipUTF8Validation}),o=new yK(t,this._extensions,r.generateMask);this._receiver=i,this._sender=o,this._socket=t,i[Wt]=this,o[Wt]=this,t[Wt]=this,i.on("conclude",PK),i.on("drain",MK),i.on("error",DK),i.on("message",LK),i.on("ping",NK),i.on("pong",$K),o.onerror=jK,t.setTimeout&&t.setTimeout(0),t.setNoDelay&&t.setNoDelay(),n.length>0&&t.unshift(n),t.on("close",nA),t.on("data",Kc),t.on("end",rA),t.on("error",iA),this._readyState=e.OPEN,this.emit("open")}emitClose(){if(!this._socket){this._readyState=e.CLOSED,this.emit("close",this._closeCode,this._closeMessage);return}this._extensions[qi.extensionName]&&this._extensions[qi.extensionName].cleanup(),this._receiver.removeAllListeners(),this._readyState=e.CLOSED,this.emit("close",this._closeCode,this._closeMessage)}close(t,n){if(this.readyState!==e.CLOSED){if(this.readyState===e.CONNECTING){jn(this,this._req,"WebSocket was closed before the connection was established");return}if(this.readyState===e.CLOSING){this._closeFrameSent&&(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end();return}this._readyState=e.CLOSING,this._sender.close(t,n,!this._isServer,r=>{r||(this._closeFrameSent=!0,(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end())}),tA(this)}}pause(){this.readyState===e.CONNECTING||this.readyState===e.CLOSED||(this._paused=!0,this._socket.pause())}ping(t,n,r){if(this.readyState===e.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof t=="function"?(r=t,t=n=void 0):typeof n=="function"&&(r=n,n=void 0),typeof t=="number"&&(t=t.toString()),this.readyState!==e.OPEN){A_(this,t,r);return}n===void 0&&(n=!this._isServer),this._sender.ping(t||Bc,n,r)}pong(t,n,r){if(this.readyState===e.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof t=="function"?(r=t,t=n=void 0):typeof n=="function"&&(r=n,n=void 0),typeof t=="number"&&(t=t.toString()),this.readyState!==e.OPEN){A_(this,t,r);return}n===void 0&&(n=!this._isServer),this._sender.pong(t||Bc,n,r)}resume(){this.readyState===e.CONNECTING||this.readyState===e.CLOSED||(this._paused=!1,this._receiver._writableState.needDrain||this._socket.resume())}send(t,n,r){if(this.readyState===e.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof n=="function"&&(r=n,n={}),typeof t=="number"&&(t=t.toString()),this.readyState!==e.OPEN){A_(this,t,r);return}let i={binary:typeof t!="string",mask:!this._isServer,compress:!0,fin:!0,...n};this._extensions[qi.extensionName]||(i.compress=!1),this._sender.send(t||Bc,i,r)}terminate(){if(this.readyState!==e.CLOSED){if(this.readyState===e.CONNECTING){jn(this,this._req,"WebSocket was closed before the connection was established");return}this._socket&&(this._readyState=e.CLOSING,this._socket.destroy())}}};Object.defineProperty(_t,"CONNECTING",{enumerable:!0,value:bi.indexOf("CONNECTING")});Object.defineProperty(_t.prototype,"CONNECTING",{enumerable:!0,value:bi.indexOf("CONNECTING")});Object.defineProperty(_t,"OPEN",{enumerable:!0,value:bi.indexOf("OPEN")});Object.defineProperty(_t.prototype,"OPEN",{enumerable:!0,value:bi.indexOf("OPEN")});Object.defineProperty(_t,"CLOSING",{enumerable:!0,value:bi.indexOf("CLOSING")});Object.defineProperty(_t.prototype,"CLOSING",{enumerable:!0,value:bi.indexOf("CLOSING")});Object.defineProperty(_t,"CLOSED",{enumerable:!0,value:bi.indexOf("CLOSED")});Object.defineProperty(_t.prototype,"CLOSED",{enumerable:!0,value:bi.indexOf("CLOSED")});["binaryType","bufferedAmount","extensions","isPaused","protocol","readyState","url"].forEach(e=>{Object.defineProperty(_t.prototype,e,{enumerable:!0})});["open","error","close","message"].forEach(e=>{Object.defineProperty(_t.prototype,`on${e}`,{enumerable:!0,get(){for(let t of this.listeners(e))if(t[C_])return t[SK];return null},set(t){for(let n of this.listeners(e))if(n[C_]){this.removeListener(e,n);break}typeof t=="function"&&this.addEventListener(e,t,{[C_]:!0})}})});_t.prototype.addEventListener=EK;_t.prototype.removeEventListener=kK;oA.exports=_t;function XT(e,t,n,r){let i={allowSynchronousEvents:!0,autoPong:!0,protocolVersion:T_[1],maxPayload:104857600,skipUTF8Validation:!1,perMessageDeflate:!0,followRedirects:!1,maxRedirects:10,...r,socketPath:void 0,hostname:void 0,protocol:void 0,timeout:void 0,method:"GET",host:void 0,path:void 0,port:void 0};if(e._autoPong=i.autoPong,!T_.includes(i.protocolVersion))throw new RangeError(`Unsupported protocol version: ${i.protocolVersion} (supported versions: ${T_.join(", ")})`);let o;if(t instanceof k_)o=t;else try{o=new k_(t)}catch{throw new SyntaxError(`Invalid URL: ${t}`)}o.protocol==="http:"?o.protocol="ws:":o.protocol==="https:"&&(o.protocol="wss:"),e._url=o.href;let a=o.protocol==="wss:",s=o.protocol==="ws+unix:",d;if(o.protocol!=="ws:"&&!a&&!s?d=`The URL's protocol must be one of "ws:", "wss:", "http:", "https:", or "ws+unix:"`:s&&!o.pathname?d="The URL's pathname is empty":o.hash&&(d="The URL contains a fragment identifier"),d){let h=new SyntaxError(d);if(e._redirects===0)throw h;zc(e,h);return}let l=a?443:80,u=hK(16).toString("base64"),c=a?fK.request:pK.request,p=new Set,m;if(i.createConnection=i.createConnection||(a?RK:IK),i.defaultPort=i.defaultPort||l,i.port=o.port||l,i.host=o.hostname.startsWith("[")?o.hostname.slice(1,-1):o.hostname,i.headers={...i.headers,"Sec-WebSocket-Version":i.protocolVersion,"Sec-WebSocket-Key":u,Connection:"Upgrade",Upgrade:"websocket"},i.path=o.pathname+o.search,i.timeout=i.handshakeTimeout,i.perMessageDeflate&&(m=new qi(i.perMessageDeflate!==!0?i.perMessageDeflate:{},!1,i.maxPayload),i.headers["Sec-WebSocket-Extensions"]=CK({[qi.extensionName]:m.offer()})),n.length){for(let h of n){if(typeof h!="string"||!OK.test(h)||p.has(h))throw new SyntaxError("An invalid or duplicated subprotocol was specified");p.add(h)}i.headers["Sec-WebSocket-Protocol"]=n.join(",")}if(i.origin&&(i.protocolVersion<13?i.headers["Sec-WebSocket-Origin"]=i.origin:i.headers.Origin=i.origin),(o.username||o.password)&&(i.auth=`${o.username}:${o.password}`),s){let h=i.path.split(":");i.socketPath=h[0],i.path=h[1]}let g;if(i.followRedirects){if(e._redirects===0){e._originalIpc=s,e._originalSecure=a,e._originalHostOrSocketPath=s?i.socketPath:o.host;let h=r&&r.headers;if(r={...r,headers:{}},h)for(let[v,y]of Object.entries(h))r.headers[v.toLowerCase()]=y}else if(e.listenerCount("redirect")===0){let h=s?e._originalIpc?i.socketPath===e._originalHostOrSocketPath:!1:e._originalIpc?!1:o.host===e._originalHostOrSocketPath;(!h||e._originalSecure&&!a)&&(delete i.headers.authorization,delete i.headers.cookie,h||delete i.headers.host,i.auth=void 0)}i.auth&&!r.headers.authorization&&(r.headers.authorization="Basic "+Buffer.from(i.auth).toString("base64")),g=e._req=c(i),e._redirects&&e.emit("redirect",e.url,g)}else g=e._req=c(i);i.timeout&&g.on("timeout",()=>{jn(e,g,"Opening handshake has timed out")}),g.on("error",h=>{g===null||g[QT]||(g=e._req=null,zc(e,h))}),g.on("response",h=>{let v=h.headers.location,y=h.statusCode;if(v&&i.followRedirects&&y>=300&&y<400){if(++e._redirects>i.maxRedirects){jn(e,g,"Maximum redirects exceeded");return}g.abort();let S;try{S=new k_(v,t)}catch{let E=new SyntaxError(`Invalid URL: ${v}`);zc(e,E);return}XT(e,S,n,r)}else e.emit("unexpected-response",g,h)||jn(e,g,`Unexpected server response: ${h.statusCode}`)}),g.on("upgrade",(h,v,y)=>{if(e.emit("upgrade",h),e.readyState!==_t.CONNECTING)return;g=e._req=null;let S=h.headers.upgrade;if(S===void 0||S.toLowerCase()!=="websocket"){jn(e,v,"Invalid Upgrade header");return}let b=_K("sha1").update(u+bK).digest("base64");if(h.headers["sec-websocket-accept"]!==b){jn(e,v,"Invalid Sec-WebSocket-Accept header");return}let E=h.headers["sec-websocket-protocol"],T;if(E!==void 0?p.size?p.has(E)||(T="Server sent an invalid subprotocol"):T="Server sent a subprotocol but none was requested":p.size&&(T="Server sent no subprotocol"),T){jn(e,v,T);return}E&&(e._protocol=E);let x=h.headers["sec-websocket-extensions"];if(x!==void 0){if(!m){jn(e,v,"Server sent a Sec-WebSocket-Extensions header but no extension was requested");return}let _;try{_=TK(x)}catch{jn(e,v,"Invalid Sec-WebSocket-Extensions header");return}let w=Object.keys(_);if(w.length!==1||w[0]!==qi.extensionName){jn(e,v,"Server indicated an extension that was not requested");return}try{m.accept(_[qi.extensionName])}catch{jn(e,v,"Invalid Sec-WebSocket-Extensions header");return}e._extensions[qi.extensionName]=m}e.setSocket(v,y,{allowSynchronousEvents:i.allowSynchronousEvents,generateMask:i.generateMask,maxPayload:i.maxPayload,skipUTF8Validation:i.skipUTF8Validation})}),i.finishRequest?i.finishRequest(g,e):g.end()}function zc(e,t){e._readyState=_t.CLOSING,e._errorEmitted=!0,e.emit("error",t),e.emitClose()}function IK(e){return e.path=e.socketPath,ZT.connect(e)}function RK(e){return e.path=void 0,!e.servername&&e.servername!==""&&(e.servername=ZT.isIP(e.host)?"":e.host),mK.connect(e)}function jn(e,t,n){e._readyState=_t.CLOSING;let r=new Error(n);Error.captureStackTrace(r,jn),t.setHeader?(t[QT]=!0,t.abort(),t.socket&&!t.socket.destroyed&&t.socket.destroy(),process.nextTick(zc,e,r)):(t.destroy(r),t.once("error",e.emit.bind(e,"error")),t.once("close",e.emitClose.bind(e)))}function A_(e,t,n){if(t){let r=vK(t)?t.size:AK(t).length;e._socket?e._sender._bufferedBytes+=r:e._bufferedAmount+=r}if(n){let r=new Error(`WebSocket is not open: readyState ${e.readyState} (${bi[e.readyState]})`);process.nextTick(n,r)}}function PK(e,t){let n=this[Wt];n._closeFrameReceived=!0,n._closeMessage=t,n._closeCode=e,n._socket[Wt]!==void 0&&(n._socket.removeListener("data",Kc),process.nextTick(eA,n._socket),e===1005?n.close():n.close(e,t))}function MK(){let e=this[Wt];e.isPaused||e._socket.resume()}function DK(e){let t=this[Wt];t._socket[Wt]!==void 0&&(t._socket.removeListener("data",Kc),process.nextTick(eA,t._socket),t.close(e[wK])),t._errorEmitted||(t._errorEmitted=!0,t.emit("error",e))}function VT(){this[Wt].emitClose()}function LK(e,t){this[Wt].emit("message",e,t)}function NK(e){let t=this[Wt];t._autoPong&&t.pong(e,!this._isServer,YT),t.emit("ping",e)}function $K(e){this[Wt].emit("pong",e)}function eA(e){e.resume()}function jK(e){let t=this[Wt];t.readyState!==_t.CLOSED&&(t.readyState===_t.OPEN&&(t._readyState=_t.CLOSING,tA(t)),this._socket.end(),t._errorEmitted||(t._errorEmitted=!0,t.emit("error",e)))}function tA(e){e._closeTimer=setTimeout(e._socket.destroy.bind(e._socket),xK)}function nA(){let e=this[Wt];this.removeListener("close",nA),this.removeListener("data",Kc),this.removeListener("end",rA),e._readyState=_t.CLOSING;let t;!this._readableState.endEmitted&&!e._closeFrameReceived&&!e._receiver._writableState.errorEmitted&&(t=e._socket.read())!==null&&e._receiver.write(t),e._receiver.end(),this[Wt]=void 0,clearTimeout(e._closeTimer),e._receiver._writableState.finished||e._receiver._writableState.errorEmitted?e.emitClose():(e._receiver.on("error",VT),e._receiver.on("finish",VT))}function Kc(e){this[Wt]._receiver.write(e)||this.pause()}function rA(){let e=this[Wt];e._readyState=_t.CLOSING,e._receiver.end(),this.end()}function iA(){let e=this[Wt];this.removeListener("error",iA),this.on("error",YT),e&&(e._readyState=_t.CLOSING,this.destroy())}});var lA=st((dWe,dA)=>{"use strict";var sWe=Hc(),{Duplex:FK}=Ze("stream");function aA(e){e.emit("close")}function UK(){!this.destroyed&&this._writableState.finished&&this.destroy()}function sA(e){this.removeListener("error",sA),this.destroy(),this.listenerCount("error")===0&&this.emit("error",e)}function qK(e,t){let n=!0,r=new FK({...t,autoDestroy:!1,emitClose:!1,objectMode:!1,writableObjectMode:!1});return e.on("message",function(o,a){let s=!a&&r._readableState.objectMode?o.toString():o;r.push(s)||e.pause()}),e.once("error",function(o){r.destroyed||(n=!1,r.destroy(o))}),e.once("close",function(){r.destroyed||r.push(null)}),r._destroy=function(i,o){if(e.readyState===e.CLOSED){o(i),process.nextTick(aA,r);return}let a=!1;e.once("error",function(d){a=!0,o(d)}),e.once("close",function(){a||o(i),process.nextTick(aA,r)}),n&&e.terminate()},r._final=function(i){if(e.readyState===e.CONNECTING){e.once("open",function(){r._final(i)});return}e._socket!==null&&(e._socket._writableState.finished?(i(),r._readableState.endEmitted&&r.destroy()):(e._socket.once("finish",function(){i()}),e.close()))},r._read=function(){e.isPaused&&e.resume()},r._write=function(i,o,a){if(e.readyState===e.CONNECTING){e.once("open",function(){r._write(i,o,a)});return}e.send(i,a)},r.on("end",UK),r.on("error",sA),r}dA.exports=qK});var cA=st((lWe,uA)=>{"use strict";var{tokenChars:GK}=ja();function BK(e){let t=new Set,n=-1,r=-1,i=0;for(i;i<e.length;i++){let a=e.charCodeAt(i);if(r===-1&&GK[a]===1)n===-1&&(n=i);else if(i!==0&&(a===32||a===9))r===-1&&n!==-1&&(r=i);else if(a===44){if(n===-1)throw new SyntaxError(`Unexpected character at index ${i}`);r===-1&&(r=i);let s=e.slice(n,r);if(t.has(s))throw new SyntaxError(`The "${s}" subprotocol is duplicated`);t.add(s),n=r=-1}else throw new SyntaxError(`Unexpected character at index ${i}`)}if(n===-1||r!==-1)throw new SyntaxError("Unexpected end of input");let o=e.slice(n,i);if(t.has(o))throw new SyntaxError(`The "${o}" subprotocol is duplicated`);return t.add(o),t}uA.exports={parse:BK}});var yA=st((cWe,gA)=>{"use strict";var zK=Ze("events"),Wc=Ze("http"),{Duplex:uWe}=Ze("stream"),{createHash:KK}=Ze("crypto"),fA=E_(),xo=Nd(),HK=cA(),WK=Hc(),{GUID:JK,kWebSocket:VK}=gi(),ZK=/^[+/0-9A-Za-z]{22}==$/,pA=0,mA=1,_A=2,x_=class extends zK{constructor(t,n){if(super(),t={allowSynchronousEvents:!0,autoPong:!0,maxPayload:100*1024*1024,skipUTF8Validation:!1,perMessageDeflate:!1,handleProtocols:null,clientTracking:!0,verifyClient:null,noServer:!1,backlog:null,server:null,host:null,path:null,port:null,WebSocket:WK,...t},t.port==null&&!t.server&&!t.noServer||t.port!=null&&(t.server||t.noServer)||t.server&&t.noServer)throw new TypeError('One and only one of the "port", "server", or "noServer" options must be specified');if(t.port!=null?(this._server=Wc.createServer((r,i)=>{let o=Wc.STATUS_CODES[426];i.writeHead(426,{"Content-Length":o.length,"Content-Type":"text/plain"}),i.end(o)}),this._server.listen(t.port,t.host,t.backlog,n)):t.server&&(this._server=t.server),this._server){let r=this.emit.bind(this,"connection");this._removeListeners=YK(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(i,o,a)=>{this.handleUpgrade(i,o,a,r)}})}t.perMessageDeflate===!0&&(t.perMessageDeflate={}),t.clientTracking&&(this.clients=new Set,this._shouldEmitClose=!1),this.options=t,this._state=pA}address(){if(this.options.noServer)throw new Error('The server is operating in "noServer" mode');return this._server?this._server.address():null}close(t){if(this._state===_A){t&&this.once("close",()=>{t(new Error("The server is not running"))}),process.nextTick(Ud,this);return}if(t&&this.once("close",t),this._state!==mA)if(this._state=mA,this.options.noServer||this.options.server)this._server&&(this._removeListeners(),this._removeListeners=this._server=null),this.clients?this.clients.size?this._shouldEmitClose=!0:process.nextTick(Ud,this):process.nextTick(Ud,this);else{let n=this._server;this._removeListeners(),this._removeListeners=this._server=null,n.close(()=>{Ud(this)})}}shouldHandle(t){if(this.options.path){let n=t.url.indexOf("?");if((n!==-1?t.url.slice(0,n):t.url)!==this.options.path)return!1}return!0}handleUpgrade(t,n,r,i){n.on("error",hA);let o=t.headers["sec-websocket-key"],a=t.headers.upgrade,s=+t.headers["sec-websocket-version"];if(t.method!=="GET"){Oo(this,t,n,405,"Invalid HTTP method");return}if(a===void 0||a.toLowerCase()!=="websocket"){Oo(this,t,n,400,"Invalid Upgrade header");return}if(o===void 0||!ZK.test(o)){Oo(this,t,n,400,"Missing or invalid Sec-WebSocket-Key header");return}if(s!==13&&s!==8){Oo(this,t,n,400,"Missing or invalid Sec-WebSocket-Version header",{"Sec-WebSocket-Version":"13, 8"});return}if(!this.shouldHandle(t)){qd(n,400);return}let d=t.headers["sec-websocket-protocol"],l=new Set;if(d!==void 0)try{l=HK.parse(d)}catch{Oo(this,t,n,400,"Invalid Sec-WebSocket-Protocol header");return}let u=t.headers["sec-websocket-extensions"],c={};if(this.options.perMessageDeflate&&u!==void 0){let p=new xo(this.options.perMessageDeflate,!0,this.options.maxPayload);try{let m=fA.parse(u);m[xo.extensionName]&&(p.accept(m[xo.extensionName]),c[xo.extensionName]=p)}catch{Oo(this,t,n,400,"Invalid or unacceptable Sec-WebSocket-Extensions header");return}}if(this.options.verifyClient){let p={origin:t.headers[`${s===8?"sec-websocket-origin":"origin"}`],secure:!!(t.socket.authorized||t.socket.encrypted),req:t};if(this.options.verifyClient.length===2){this.options.verifyClient(p,(m,g,h,v)=>{if(!m)return qd(n,g||401,h,v);this.completeUpgrade(c,o,l,t,n,r,i)});return}if(!this.options.verifyClient(p))return qd(n,401)}this.completeUpgrade(c,o,l,t,n,r,i)}completeUpgrade(t,n,r,i,o,a,s){if(!o.readable||!o.writable)return o.destroy();if(o[VK])throw new Error("server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration");if(this._state>pA)return qd(o,503);let l=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade",`Sec-WebSocket-Accept: ${KK("sha1").update(n+JK).digest("base64")}`],u=new this.options.WebSocket(null,void 0,this.options);if(r.size){let c=this.options.handleProtocols?this.options.handleProtocols(r,i):r.values().next().value;c&&(l.push(`Sec-WebSocket-Protocol: ${c}`),u._protocol=c)}if(t[xo.extensionName]){let c=t[xo.extensionName].params,p=fA.format({[xo.extensionName]:[c]});l.push(`Sec-WebSocket-Extensions: ${p}`),u._extensions=t}this.emit("headers",l,i),o.write(l.concat(`\r
|
|
4
|
+
GFS4: `),console.error(e)});St[Yt]||(SC=global[Yt]||[],EC(St,SC),St.close=(function(e){function t(n,r){return e.call(St,n,function(i){i||wC(),typeof r=="function"&&r.apply(this,arguments)})}return Object.defineProperty(t,Ec,{value:e}),t})(St.close),St.closeSync=(function(e){function t(n){e.apply(St,arguments),wC()}return Object.defineProperty(t,Ec,{value:e}),t})(St.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&process.on("exit",function(){So(St[Yt]),Ze("assert").equal(St[Yt].length,0)}));var SC;global[Yt]||EC(global,St[Yt]);Hh.exports=zh(iz(St));process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!St.__patched&&(Hh.exports=zh(St),St.__patched=!0);function zh(e){nz(e),e.gracefulify=zh,e.createReadStream=T,e.createWriteStream=x;var t=e.readFile;e.readFile=n;function n(C,A,O){return typeof A=="function"&&(O=A,A=null),P(C,A,O);function P(R,M,U,ee){return t(R,M,function(Q){Q&&(Q.code==="EMFILE"||Q.code==="ENFILE")?xa([P,[R,M,U],Q,ee||Date.now(),Date.now()]):typeof U=="function"&&U.apply(this,arguments)})}}var r=e.writeFile;e.writeFile=i;function i(C,A,O,P){return typeof O=="function"&&(P=O,O=null),R(C,A,O,P);function R(M,U,ee,Q,te){return r(M,U,ee,function(Y){Y&&(Y.code==="EMFILE"||Y.code==="ENFILE")?xa([R,[M,U,ee,Q],Y,te||Date.now(),Date.now()]):typeof Q=="function"&&Q.apply(this,arguments)})}}var o=e.appendFile;o&&(e.appendFile=a);function a(C,A,O,P){return typeof O=="function"&&(P=O,O=null),R(C,A,O,P);function R(M,U,ee,Q,te){return o(M,U,ee,function(Y){Y&&(Y.code==="EMFILE"||Y.code==="ENFILE")?xa([R,[M,U,ee,Q],Y,te||Date.now(),Date.now()]):typeof Q=="function"&&Q.apply(this,arguments)})}}var s=e.copyFile;s&&(e.copyFile=d);function d(C,A,O,P){return typeof O=="function"&&(P=O,O=0),R(C,A,O,P);function R(M,U,ee,Q,te){return s(M,U,ee,function(Y){Y&&(Y.code==="EMFILE"||Y.code==="ENFILE")?xa([R,[M,U,ee,Q],Y,te||Date.now(),Date.now()]):typeof Q=="function"&&Q.apply(this,arguments)})}}var l=e.readdir;e.readdir=c;var u=/^v[0-5]\./;function c(C,A,O){typeof A=="function"&&(O=A,A=null);var P=u.test(process.version)?function(U,ee,Q,te){return l(U,R(U,ee,Q,te))}:function(U,ee,Q,te){return l(U,ee,R(U,ee,Q,te))};return P(C,A,O);function R(M,U,ee,Q){return function(te,Y){te&&(te.code==="EMFILE"||te.code==="ENFILE")?xa([P,[M,U,ee],te,Q||Date.now(),Date.now()]):(Y&&Y.sort&&Y.sort(),typeof ee=="function"&&ee.call(this,te,Y))}}}if(process.version.substr(0,4)==="v0.8"){var p=rz(e);y=p.ReadStream,b=p.WriteStream}var m=e.ReadStream;m&&(y.prototype=Object.create(m.prototype),y.prototype.open=S);var g=e.WriteStream;g&&(b.prototype=Object.create(g.prototype),b.prototype.open=E),Object.defineProperty(e,"ReadStream",{get:function(){return y},set:function(C){y=C},enumerable:!0,configurable:!0}),Object.defineProperty(e,"WriteStream",{get:function(){return b},set:function(C){b=C},enumerable:!0,configurable:!0});var h=y;Object.defineProperty(e,"FileReadStream",{get:function(){return h},set:function(C){h=C},enumerable:!0,configurable:!0});var v=b;Object.defineProperty(e,"FileWriteStream",{get:function(){return v},set:function(C){v=C},enumerable:!0,configurable:!0});function y(C,A){return this instanceof y?(m.apply(this,arguments),this):y.apply(Object.create(y.prototype),arguments)}function S(){var C=this;w(C.path,C.flags,C.mode,function(A,O){A?(C.autoClose&&C.destroy(),C.emit("error",A)):(C.fd=O,C.emit("open",O),C.read())})}function b(C,A){return this instanceof b?(g.apply(this,arguments),this):b.apply(Object.create(b.prototype),arguments)}function E(){var C=this;w(C.path,C.flags,C.mode,function(A,O){A?(C.destroy(),C.emit("error",A)):(C.fd=O,C.emit("open",O))})}function T(C,A){return new e.ReadStream(C,A)}function x(C,A){return new e.WriteStream(C,A)}var _=e.open;e.open=w;function w(C,A,O,P){return typeof O=="function"&&(P=O,O=null),R(C,A,O,P);function R(M,U,ee,Q,te){return _(M,U,ee,function(Y,$){Y&&(Y.code==="EMFILE"||Y.code==="ENFILE")?xa([R,[M,U,ee,Q],Y,te||Date.now(),Date.now()]):typeof Q=="function"&&Q.apply(this,arguments)})}}return e}function xa(e){So("ENQUEUE",e[0].name,e[1]),St[Yt].push(e),Kh()}var wc;function wC(){for(var e=Date.now(),t=0;t<St[Yt].length;++t)St[Yt][t].length>2&&(St[Yt][t][3]=e,St[Yt][t][4]=e);Kh()}function Kh(){if(clearTimeout(wc),wc=void 0,St[Yt].length!==0){var e=St[Yt].shift(),t=e[0],n=e[1],r=e[2],i=e[3],o=e[4];if(i===void 0)So("RETRY",t.name,n),t.apply(null,n);else if(Date.now()-i>=6e4){So("TIMEOUT",t.name,n);var a=n.pop();typeof a=="function"&&a.call(null,r)}else{var s=Date.now()-o,d=Math.max(o-i,1),l=Math.min(d*1.2,100);s>=l?(So("RETRY",t.name,n),t.apply(null,n.concat([i]))):St[Yt].push(e)}wc===void 0&&(wc=setTimeout(Kh,0))}}});var CC=st((kHe,kC)=>{function Zn(e,t){typeof t=="boolean"&&(t={forever:t}),this._originalTimeouts=JSON.parse(JSON.stringify(e)),this._timeouts=e,this._options=t||{},this._maxRetryTime=t&&t.maxRetryTime||1/0,this._fn=null,this._errors=[],this._attempts=1,this._operationTimeout=null,this._operationTimeoutCb=null,this._timeout=null,this._operationStart=null,this._options.forever&&(this._cachedTimeouts=this._timeouts.slice(0))}kC.exports=Zn;Zn.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts};Zn.prototype.stop=function(){this._timeout&&clearTimeout(this._timeout),this._timeouts=[],this._cachedTimeouts=null};Zn.prototype.retry=function(e){if(this._timeout&&clearTimeout(this._timeout),!e)return!1;var t=new Date().getTime();if(e&&t-this._operationStart>=this._maxRetryTime)return this._errors.unshift(new Error("RetryOperation timeout occurred")),!1;this._errors.push(e);var n=this._timeouts.shift();if(n===void 0)if(this._cachedTimeouts)this._errors.splice(this._errors.length-1,this._errors.length),this._timeouts=this._cachedTimeouts.slice(0),n=this._timeouts.shift();else return!1;var r=this,i=setTimeout(function(){r._attempts++,r._operationTimeoutCb&&(r._timeout=setTimeout(function(){r._operationTimeoutCb(r._attempts)},r._operationTimeout),r._options.unref&&r._timeout.unref()),r._fn(r._attempts)},n);return this._options.unref&&i.unref(),!0};Zn.prototype.attempt=function(e,t){this._fn=e,t&&(t.timeout&&(this._operationTimeout=t.timeout),t.cb&&(this._operationTimeoutCb=t.cb));var n=this;this._operationTimeoutCb&&(this._timeout=setTimeout(function(){n._operationTimeoutCb()},n._operationTimeout)),this._operationStart=new Date().getTime(),this._fn(this._attempts)};Zn.prototype.try=function(e){console.log("Using RetryOperation.try() is deprecated"),this.attempt(e)};Zn.prototype.start=function(e){console.log("Using RetryOperation.start() is deprecated"),this.attempt(e)};Zn.prototype.start=Zn.prototype.try;Zn.prototype.errors=function(){return this._errors};Zn.prototype.attempts=function(){return this._attempts};Zn.prototype.mainError=function(){if(this._errors.length===0)return null;for(var e={},t=null,n=0,r=0;r<this._errors.length;r++){var i=this._errors[r],o=i.message,a=(e[o]||0)+1;e[o]=a,a>=n&&(t=i,n=a)}return t}});var TC=st(wo=>{var az=CC();wo.operation=function(e){var t=wo.timeouts(e);return new az(t,{forever:e&&e.forever,unref:e&&e.unref,maxRetryTime:e&&e.maxRetryTime})};wo.timeouts=function(e){if(e instanceof Array)return[].concat(e);var t={retries:10,factor:2,minTimeout:1*1e3,maxTimeout:1/0,randomize:!1};for(var n in e)t[n]=e[n];if(t.minTimeout>t.maxTimeout)throw new Error("minTimeout is greater than maxTimeout");for(var r=[],i=0;i<t.retries;i++)r.push(this.createTimeout(i,t));return e&&e.forever&&!r.length&&r.push(this.createTimeout(i,t)),r.sort(function(o,a){return o-a}),r};wo.createTimeout=function(e,t){var n=t.randomize?Math.random()+1:1,r=Math.round(n*t.minTimeout*Math.pow(t.factor,e));return r=Math.min(r,t.maxTimeout),r};wo.wrap=function(e,t,n){if(t instanceof Array&&(n=t,t=null),!n){n=[];for(var r in e)typeof e[r]=="function"&&n.push(r)}for(var i=0;i<n.length;i++){var o=n[i],a=e[o];e[o]=function(d){var l=wo.operation(t),u=Array.prototype.slice.call(arguments,1),c=u.pop();u.push(function(p){l.retry(p)||(p&&(arguments[0]=l.mainError()),c.apply(this,arguments))}),l.attempt(function(){d.apply(e,u)})}.bind(e,a),e[o].options=t}}});var xC=st((THe,AC)=>{AC.exports=TC()});var OC=st((AHe,kc)=>{kc.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"];process.platform!=="win32"&&kc.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&kc.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")});var DC=st((xHe,Ra)=>{var ht=global.process,Eo=function(e){return e&&typeof e=="object"&&typeof e.removeListener=="function"&&typeof e.emit=="function"&&typeof e.reallyExit=="function"&&typeof e.listeners=="function"&&typeof e.kill=="function"&&typeof e.pid=="number"&&typeof e.on=="function"};Eo(ht)?(IC=Ze("assert"),Oa=OC(),RC=/^win/i.test(ht.platform),Id=Ze("events"),typeof Id!="function"&&(Id=Id.EventEmitter),ht.__signal_exit_emitter__?zt=ht.__signal_exit_emitter__:(zt=ht.__signal_exit_emitter__=new Id,zt.count=0,zt.emitted={}),zt.infinite||(zt.setMaxListeners(1/0),zt.infinite=!0),Ra.exports=function(e,t){if(!Eo(global.process))return function(){};IC.equal(typeof e,"function","a callback must be provided for exit handler"),Ia===!1&&Jh();var n="exit";t&&t.alwaysLast&&(n="afterexit");var r=function(){zt.removeListener(n,e),zt.listeners("exit").length===0&&zt.listeners("afterexit").length===0&&Cc()};return zt.on(n,e),r},Cc=function(){!Ia||!Eo(global.process)||(Ia=!1,Oa.forEach(function(t){try{ht.removeListener(t,Tc[t])}catch{}}),ht.emit=Ac,ht.reallyExit=Vh,zt.count-=1)},Ra.exports.unload=Cc,ko=function(t,n,r){zt.emitted[t]||(zt.emitted[t]=!0,zt.emit(t,n,r))},Tc={},Oa.forEach(function(e){Tc[e]=function(){if(Eo(global.process)){var n=ht.listeners(e);n.length===zt.count&&(Cc(),ko("exit",null,e),ko("afterexit",null,e),RC&&e==="SIGHUP"&&(e="SIGINT"),ht.kill(ht.pid,e))}}}),Ra.exports.signals=function(){return Oa},Ia=!1,Jh=function(){Ia||!Eo(global.process)||(Ia=!0,zt.count+=1,Oa=Oa.filter(function(t){try{return ht.on(t,Tc[t]),!0}catch{return!1}}),ht.emit=MC,ht.reallyExit=PC)},Ra.exports.load=Jh,Vh=ht.reallyExit,PC=function(t){Eo(global.process)&&(ht.exitCode=t||0,ko("exit",ht.exitCode,null),ko("afterexit",ht.exitCode,null),Vh.call(ht,ht.exitCode))},Ac=ht.emit,MC=function(t,n){if(t==="exit"&&Eo(global.process)){n!==void 0&&(ht.exitCode=n);var r=Ac.apply(this,arguments);return ko("exit",ht.exitCode,null),ko("afterexit",ht.exitCode,null),r}else return Ac.apply(this,arguments)}):Ra.exports=function(){return function(){}};var IC,Oa,RC,Id,zt,Cc,ko,Tc,Ia,Jh,Vh,PC,Ac,MC});var FC=st((OHe,Rd)=>{"use strict";var sz=Ze("path"),Qh=Wh(),dz=xC(),lz=DC(),_i={};function Pa(e,t){return t.lockfilePath||`${e}.lock`}function Xh(e,t,n){if(!t.realpath)return n(null,sz.resolve(e));t.fs.realpath(e,n)}function Zh(e,t,n){t.fs.mkdir(Pa(e,t),r=>{if(!r)return n();if(r.code!=="EEXIST")return n(r);if(t.stale<=0)return n(Object.assign(new Error("Lock file is already being hold"),{code:"ELOCKED",file:e}));t.fs.stat(Pa(e,t),(i,o)=>{if(i)return i.code==="ENOENT"?Zh(e,{...t,stale:0},n):n(i);if(!NC(o,t))return n(Object.assign(new Error("Lock file is already being hold"),{code:"ELOCKED",file:e}));$C(e,t,a=>{if(a)return n(a);Zh(e,{...t,stale:0},n)})})})}function NC(e,t){return e.mtime.getTime()<Date.now()-t.stale}function $C(e,t,n){t.fs.rmdir(Pa(e,t),r=>{if(r&&r.code!=="ENOENT")return n(r);n()})}function Yh(e,t){let n=_i[e];n.updateTimeout||(n.updateDelay=n.updateDelay||t.update,n.updateTimeout=setTimeout(()=>{let r=Date.now()/1e3;n.updateTimeout=null,t.fs.utimes(Pa(e,t),r,r,i=>{if(!n.released){if(n.lastUpdate<=Date.now()-t.stale&&n.lastUpdate>Date.now()-t.stale*2){let o=Object.assign(new Error(n.updateError||"Unable to update lock within the stale threshold"),{code:"ECOMPROMISED"});return LC(e,n,o)}if(i)return i.code==="ENOENT"?LC(e,n,Object.assign(i,{code:"ECOMPROMISED"})):(n.updateError=i,n.updateDelay=1e3,Yh(e,t));n.lastUpdate=Date.now(),n.updateError=null,n.updateDelay=null,Yh(e,t)}})},n.updateDelay),n.updateTimeout.unref&&n.updateTimeout.unref())}function LC(e,t,n){t.released=!0,t.updateTimeout&&clearTimeout(t.updateTimeout),_i[e]===t&&delete _i[e],t.options.onCompromised(n)}function uz(e,t,n){t={stale:1e4,update:null,realpath:!0,retries:0,fs:Qh,onCompromised:r=>{throw r},...t},t.retries=t.retries||0,t.retries=typeof t.retries=="number"?{retries:t.retries}:t.retries,t.stale=Math.max(t.stale||0,2e3),t.update=t.update==null?t.stale/2:t.update||0,t.update=Math.max(Math.min(t.update,t.stale/2),1e3),Xh(e,t,(r,i)=>{if(r)return n(r);let o=dz.operation(t.retries);o.attempt(()=>{Zh(i,t,a=>{if(o.retry(a))return;if(a)return n(o.mainError());let s=_i[i]={options:t,lastUpdate:Date.now()};Yh(i,t),n(null,d=>{if(s.released)return d&&d(Object.assign(new Error("Lock is already released"),{code:"ERELEASED"}));jC(i,{...t,realpath:!1},d)})})})})}function jC(e,t,n){t={fs:Qh,realpath:!0,...t},Xh(e,t,(r,i)=>{if(r)return n(r);let o=_i[i];if(!o)return n(Object.assign(new Error("Lock is not acquired/owned by you"),{code:"ENOTACQUIRED"}));o.updateTimeout&&clearTimeout(o.updateTimeout),o.released=!0,delete _i[i],$C(i,t,n)})}function cz(e,t,n){t={stale:1e4,realpath:!0,fs:Qh,...t},t.stale=Math.max(t.stale||0,2e3),Xh(e,t,(r,i)=>{if(r)return n(r);t.fs.stat(Pa(i,t),(o,a)=>o?o.code==="ENOENT"?n(null,!1):n(o):n(null,!NC(a,t)))})}function fz(){return _i}lz(()=>{for(let e in _i){let t=_i[e].options;try{t.fs.rmdirSync(Pa(e,t))}catch{}}});Rd.exports.lock=uz;Rd.exports.unlock=jC;Rd.exports.check=cz;Rd.exports.getLocks=fz});var qC=st((IHe,UC)=>{"use strict";var pz=Wh();function mz(e){let t=["mkdir","realpath","stat","rmdir","utimes"],n={...e};return t.forEach(r=>{n[r]=(...i)=>{let o=i.pop(),a;try{a=e[`${r}Sync`](...i)}catch(s){return o(s)}o(null,a)}}),n}function hz(e){return(...t)=>new Promise((n,r)=>{t.push((i,o)=>{i?r(i):n(o)}),e(...t)})}function _z(e){return(...t)=>{let n,r;if(t.push((i,o)=>{n=i,r=o}),e(...t),n)throw n;return r}}function gz(e){if(e={...e},e.fs=mz(e.fs||pz),typeof e.retries=="number"&&e.retries>0||e.retries&&typeof e.retries.retries=="number"&&e.retries.retries>0)throw Object.assign(new Error("Cannot use retries with the sync api"),{code:"ESYNC"});return e}UC.exports={toPromise:hz,toSync:_z,toSyncOptions:gz}});var BC=st((RHe,Fi)=>{"use strict";var Ma=FC(),{toPromise:xc,toSync:Oc,toSyncOptions:e_}=qC();async function GC(e,t){let n=await xc(Ma.lock)(e,t);return xc(n)}function yz(e,t){let n=Oc(Ma.lock)(e,e_(t));return Oc(n)}function vz(e,t){return xc(Ma.unlock)(e,t)}function bz(e,t){return Oc(Ma.unlock)(e,e_(t))}function Sz(e,t){return xc(Ma.check)(e,t)}function wz(e,t){return Oc(Ma.check)(e,e_(t))}Fi.exports=GC;Fi.exports.lock=GC;Fi.exports.unlock=vz;Fi.exports.lockSync=yz;Fi.exports.unlockSync=bz;Fi.exports.check=Sz;Fi.exports.checkSync=wz});var zC=G(()=>{});var t_=G(()=>{});var Pd=G(()=>{});var Kt=G(()=>{zC();t_();Pd()});function Cz(e){return e==null?!1:typeof e.RE_EXN_ID=="string"}function Xt(e){return Cz(e)?e:{RE_EXN_ID:"JsExn",_1:e}}function i_(e){let t=r_[e];if(t!==void 0){let n=t+1|0;return r_[e]=n,e+("/"+n)}return r_[e]=1,e}var r_,pn=G(()=>{r_={}});import*as WC from"node:child_process";function Da(e){let t=mi(e);if(t===void 0)return{code:void 0,message:"unknown error"};let n=tt(t);return{code:_c(n.code),message:Ye(hi(n),"unknown error")}}function JC(e,t,n,r){try{return{TAG:"Ok",_0:WC.execFileSync(e,t,{encoding:"utf8",timeout:n,maxBuffer:r})}}catch(i){let o=Xt(i);return{TAG:"Error",_0:Da(o)}}}var Tz,Ht=G(()=>{$i();$e();vc();Tz=Ta(BC(),1);Kt();dt();pn()});function ZC(e){let t=JC(e,["--version"],1e4,1048576);if(t.TAG!=="Ok")return;let n=VC.exec(t._0);if(n!=null)return cn(n.slice(1)[0],r=>r)}function YC(e,t){return e!==void 0&&t!==void 0?e===t?{TAG:"Match",version:e}:{TAG:"Mismatch",pathVersion:e,pinnedVersion:t}:{TAG:"Unverified",pathVersion:e,pinnedVersion:t}}var VC,QC=G(()=>{xt();Ht();$e();Kt();VC=new RegExp("(\\d+\\.\\d+\\.\\d+)")});function xz(e,t){let n=YC(e,t);switch(n.TAG){case"Match":return{TAG:"Ok",_0:n.version};case"Mismatch":return{TAG:"Error",_0:"hosted_codex_runtime_refused reason=mismatch observed="+n.pathVersion+" expected="+n.pinnedVersion};case"Unverified":return{TAG:"Error",_0:"hosted_codex_runtime_refused reason=unverified observed=unverified expected="+t}}}function XC(e,t){return xz(ZC(e),t)}var eT=G(()=>{$e();QC()});var tT,o_=G(()=>{eT();tT=XC});var rT,nT=G(()=>{rT={name:"@linzumi/cli",version:"1.0.280",description:"Linzumi CLI \u2014 point a Codex agent at the real code on your laptop, with your team watching and steering from shared threads.",type:"module",bin:{linzumi:"bin/linzumi.js"},files:["README.md","bin","dist","scripts","!scripts/build-*-oracle.mjs"],scripts:{build:"rescript build ../linzumi-cli-rescript && node scripts/build.mjs","bump-version":"node scripts/bump-cli-version.mjs",test:"pnpm --dir ../linzumi-cli-rescript test && npm run test:operational",typecheck:"rescript build ../linzumi-cli-rescript && tsgo --noEmit -p tsconfig.source.json",prepack:"rescript build -q ../linzumi-cli-rescript && node scripts/build.mjs","pack:dry-run":"npm pack --dry-run","test:operational":"vitest run --config vitest.config.mjs","vendor:codex-app-server-protocol":"tsx scripts/vendor-codex-app-server-protocol.ts","test:startup":"npm run build && node --test --test-concurrency=1 ../linzumi-cli-rescript/src/parity/CommanderStartupRefusalConformance.res.mjs","typecheck:all":"rescript build ../linzumi-cli-rescript && tsgo --noEmit -p tsconfig.json","typecheck:watch":"rescript build ../linzumi-cli-rescript && tsgo --noEmit -w -p tsconfig.source.json","test:agent-source":"LINZUMI_CI_QUARANTINE=0 pnpm exec vitest run --config vitest.config.mjs test/channelSession.test.ts test/kandanQueue.test.ts -t '(retains three busy accepted source snapshots without fusing or interrupting|keeps different accepted agent sources distinct through interrupt pickup)' && pnpm --dir ../linzumi-cli-rescript build && pnpm --dir ../linzumi-cli-rescript exec node --import tsx src/parity/AgentOpenaiModelProviderConformance.res.mjs && pnpm --dir ../linzumi-cli-rescript exec node --import tsx src/parity/WorkerMintCredentialConformance.res.mjs","codex:history-table":"node scripts/codex_history_table.mjs","vendor:codex-app-server-protocol:check":"tsx scripts/vendor-codex-app-server-protocol.ts --check"},keywords:["linzumi","kandan","codex","local-runner"],license:"MIT",publishConfig:{access:"public"},dependencies:{"@anthropic-ai/claude-agent-sdk":"0.3.283","@inquirer/prompts":"^7.8.6","@modelcontextprotocol/sdk":"^1.29.0","@openai/codex":"0.158.0",blessed:"^0.1.81","proper-lockfile":"3.2.0",undici:"^6.25.0",ws:"^8.18.0",zod:"^3.25.76"},engines:{node:">=20"},readmeFilename:"README.md",devDependencies:{"@types/blessed":"^0.1.27","@types/node":"^22.18.6","@types/proper-lockfile":"4.1.4","@typescript/native-preview":"7.0.0-dev.20260703.1",esbuild:"^0.27.2","fast-check":"^3.23.2",rescript:"12.3.0",tsx:"^4.21.0",typescript:"^5.9.3",vitest:"^1.6.1"}}});var a_,Pc=G(()=>{"use strict";nT();a_=rT.dependencies["@openai/codex"]});async function iT(e,t,n){let r;try{e(),r=!0}catch{r=!1}let i;try{await t(),i=!0}catch{i=!1}return r&&i?{TAG:"Ok",_0:void 0}:(n("hosted_auth_quota_cleanup_failed reason=owned_process_not_confirmed_reaped"),{TAG:"Error",_0:"cleanup_failed"})}function oT(e,t){let n=e.quotaWindow,r=e.credits;if(n===void 0&&r===void 0)return{status:"unavailable",reason:"empty_response"};let i=n!==void 0?[n.usedPercent,n.windowMinutes,n.resetsAtMs]:[void 0,void 0,void 0];return{status:"captured",quotaWindow:{usedPercent:i[0],windowMinutes:i[1],resetsAtMs:i[2],capturedAtMs:t,credits:r}}}var aT=G(()=>{});var sT,dT,lT=G(()=>{aT();sT=iT,dT=oT});function We(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function s_(e){let t=[["threadId",e.threadId],["turnId",e.turnId],["itemId",e.itemId],["processId",e.processId],["requestId",e.requestId]].filter(n=>n[1]!==void 0);return Object.fromEntries(t)}var Ot=G(()=>{"use strict"});var Mc=G(()=>{"use strict";Ot()});function pT(e){let t=Ur(e.rateLimits)??Ur(e.rate_limits)??Ur(e.limits)??e,n=[t,...Object.values(t).flatMap(v=>{let y=Ur(v);return y===void 0?[]:[y]})],r=n.reduce((v,y)=>{let S=Be(y.usedPercent)??Be(y.used_percent);return S===void 0?v:v===void 0?S:Math.max(v,S)},void 0),o=n.some(v=>Be(v.remaining)===0||Be(v.remainingRequests)===0||Be(v.remaining_requests)===0||Be(v.remainingTokens)===0||Be(v.remaining_tokens)===0||Be(v.retryAfterSeconds)!==void 0||Be(v.retry_after_seconds)!==void 0)?"rejected":r!==void 0&&r>=80?"allowed_warning":"allowed",a=Ur(t.primary),s=Be(a?.usedPercent),d=Be(a?.windowDurationMins),l=Be(a?.resetsAt),u=Ur(t.credits),c=fT(u?.hasCredits),p=fT(u?.unlimited),m=u?.balance,g=c===void 0||p===void 0?void 0:{hasCredits:c,unlimited:p,balance:typeof m=="string"?m:null},h=s===void 0&&d===void 0&&l===void 0?void 0:{...s===void 0?{}:{usedPercent:s},...d===void 0?{}:{windowMinutes:d},...l===void 0?{}:{resetsAtMs:l*1e3}};return{summary:Mz(e)??"seen (no details)",status:o,utilizationPercent:r,...h===void 0?{}:{quotaWindow:h},...g===void 0?{}:{credits:g}}}function Mz(e){let t=Ur(e.rateLimits)??Ur(e.rate_limits)??Ur(e.limits)??e,n=uT(t,void 0),r=Object.entries(t).flatMap(([o,a])=>{let s=Ur(a);return s===void 0?[]:[uT(s,o)]}),i=[n,...r].filter(o=>o!==void 0);return i.length===0?void 0:i.join(" | ")}function uT(e,t){let n=hr(e.limitName)??hr(e.limit_name)??hr(e.name)??hr(e.type)??t,r=hr(e.planType)??hr(e.plan_type)??hr(e.plan),i=Be(e.remaining)??Be(e.remainingRequests)??Be(e.remaining_requests)??Be(e.remainingTokens)??Be(e.remaining_tokens),o=Be(e.limit)??Be(e.requestLimit)??Be(e.request_limit)??Be(e.limitRequests)??Be(e.limit_requests)??Be(e.tokenLimit)??Be(e.token_limit)??Be(e.limitTokens)??Be(e.limit_tokens),a=hr(e.resetAt)??hr(e.reset_at)??hr(e.resetsAt)??hr(e.resets_at)??cT(e.resetsAt)??cT(e.resets_at)??Dc(e.resetAfterSeconds)??Dc(e.reset_after_seconds)??Dc(e.retryAfterSeconds)??Dc(e.retry_after_seconds),s=Be(e.usedPercent)??Be(e.used_percent),d=Be(e.windowDurationMins)??Be(e.window_duration_mins),l=[n,r].filter(m=>m!==void 0).join(" "),u=l===""?void 0:l,p=[i===void 0?void 0:o===void 0?`${i} remaining`:`${i}/${o} remaining`,s===void 0?void 0:`${s}% used`,d===void 0?void 0:`${d}m window`,a===void 0?void 0:`reset ${a}`].filter(m=>m!==void 0);return p.length===0?u===void 0?void 0:`${u} seen (no details)`:u===void 0?p.join(" "):`${u} ${p.join(" ")}`}function Dc(e){let t=Be(e);return t===void 0?void 0:`${t}s`}function cT(e){let t=Be(e);return t===void 0?void 0:new Date(t*1e3).toISOString()}function Ur(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:void 0}function hr(e){return typeof e=="string"&&e.trim()!==""?e:void 0}function fT(e){return typeof e=="boolean"?e:void 0}function Be(e){if(typeof e=="number"&&Number.isSafeInteger(e))return e;if(typeof e!="string")return;let t=Number.parseInt(e,10);return Number.isSafeInteger(t)&&t.toString()===e.trim()?t:void 0}var mT=G(()=>{"use strict";Mc();Ot()});var gi=st((JHe,gT)=>{"use strict";var hT=["nodebuffer","arraybuffer","fragments"],_T=typeof Blob<"u";_T&&hT.push("blob");gT.exports={BINARY_TYPES:hT,EMPTY_BUFFER:Buffer.alloc(0),GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",hasBlob:_T,kForOnEventAttribute:Symbol("kIsForOnEventAttribute"),kListener:Symbol("kListener"),kStatusCode:Symbol("status-code"),kWebSocket:Symbol("websocket"),NOOP:()=>{}}});var Dd=st((VHe,Lc)=>{"use strict";var{EMPTY_BUFFER:Dz}=gi(),d_=Buffer[Symbol.species];function Lz(e,t){if(e.length===0)return Dz;if(e.length===1)return e[0];let n=Buffer.allocUnsafe(t),r=0;for(let i=0;i<e.length;i++){let o=e[i];n.set(o,r),r+=o.length}return r<t?new d_(n.buffer,n.byteOffset,r):n}function yT(e,t,n,r,i){for(let o=0;o<i;o++)n[r+o]=e[o]^t[o&3]}function vT(e,t){for(let n=0;n<e.length;n++)e[n]^=t[n&3]}function Nz(e){return e.length===e.buffer.byteLength?e.buffer:e.buffer.slice(e.byteOffset,e.byteOffset+e.length)}function l_(e){if(l_.readOnly=!0,Buffer.isBuffer(e))return e;let t;return e instanceof ArrayBuffer?t=new d_(e):ArrayBuffer.isView(e)?t=new d_(e.buffer,e.byteOffset,e.byteLength):(t=Buffer.from(e),l_.readOnly=!1),t}Lc.exports={concat:Lz,mask:yT,toArrayBuffer:Nz,toBuffer:l_,unmask:vT};if(!process.env.WS_NO_BUFFER_UTIL)try{let e=Ze("bufferutil");Lc.exports.mask=function(t,n,r,i,o){o<48?yT(t,n,r,i,o):e.mask(t,n,r,i,o)},Lc.exports.unmask=function(t,n){t.length<32?vT(t,n):e.unmask(t,n)}}catch{}});var wT=st((ZHe,ST)=>{"use strict";var bT=Symbol("kDone"),u_=Symbol("kRun"),c_=class{constructor(t){this[bT]=()=>{this.pending--,this[u_]()},this.concurrency=t||1/0,this.jobs=[],this.pending=0}add(t){this.jobs.push(t),this[u_]()}[u_](){if(this.pending!==this.concurrency&&this.jobs.length){let t=this.jobs.shift();this.pending++,t(this[bT])}}};ST.exports=c_});var Nd=st((YHe,TT)=>{"use strict";var Ld=Ze("zlib"),ET=Dd(),$z=wT(),{kStatusCode:kT}=gi(),jz=Buffer[Symbol.species],Fz=Buffer.from([0,0,255,255]),$c=Symbol("permessage-deflate"),yi=Symbol("total-length"),Na=Symbol("callback"),Ui=Symbol("buffers"),$a=Symbol("error"),Nc,f_=class{constructor(t,n,r){if(this._maxPayload=r|0,this._options=t||{},this._threshold=this._options.threshold!==void 0?this._options.threshold:1024,this._isServer=!!n,this._deflate=null,this._inflate=null,this.params=null,!Nc){let i=this._options.concurrencyLimit!==void 0?this._options.concurrencyLimit:10;Nc=new $z(i)}}static get extensionName(){return"permessage-deflate"}offer(){let t={};return this._options.serverNoContextTakeover&&(t.server_no_context_takeover=!0),this._options.clientNoContextTakeover&&(t.client_no_context_takeover=!0),this._options.serverMaxWindowBits&&(t.server_max_window_bits=this._options.serverMaxWindowBits),this._options.clientMaxWindowBits?t.client_max_window_bits=this._options.clientMaxWindowBits:this._options.clientMaxWindowBits==null&&(t.client_max_window_bits=!0),t}accept(t){return t=this.normalizeParams(t),this.params=this._isServer?this.acceptAsServer(t):this.acceptAsClient(t),this.params}cleanup(){if(this._inflate&&(this._inflate.close(),this._inflate=null),this._deflate){let t=this._deflate[Na];this._deflate.close(),this._deflate=null,t&&t(new Error("The deflate stream was closed while data was being processed"))}}acceptAsServer(t){let n=this._options,r=t.find(i=>!(n.serverNoContextTakeover===!1&&i.server_no_context_takeover||i.server_max_window_bits&&(n.serverMaxWindowBits===!1||typeof n.serverMaxWindowBits=="number"&&n.serverMaxWindowBits>i.server_max_window_bits)||typeof n.clientMaxWindowBits=="number"&&!i.client_max_window_bits));if(!r)throw new Error("None of the extension offers can be accepted");return n.serverNoContextTakeover&&(r.server_no_context_takeover=!0),n.clientNoContextTakeover&&(r.client_no_context_takeover=!0),typeof n.serverMaxWindowBits=="number"&&(r.server_max_window_bits=n.serverMaxWindowBits),typeof n.clientMaxWindowBits=="number"?r.client_max_window_bits=n.clientMaxWindowBits:(r.client_max_window_bits===!0||n.clientMaxWindowBits===!1)&&delete r.client_max_window_bits,r}acceptAsClient(t){let n=t[0];if(this._options.clientNoContextTakeover===!1&&n.client_no_context_takeover)throw new Error('Unexpected parameter "client_no_context_takeover"');if(!n.client_max_window_bits)typeof this._options.clientMaxWindowBits=="number"&&(n.client_max_window_bits=this._options.clientMaxWindowBits);else if(this._options.clientMaxWindowBits===!1||typeof this._options.clientMaxWindowBits=="number"&&n.client_max_window_bits>this._options.clientMaxWindowBits)throw new Error('Unexpected or invalid parameter "client_max_window_bits"');return n}normalizeParams(t){return t.forEach(n=>{Object.keys(n).forEach(r=>{let i=n[r];if(i.length>1)throw new Error(`Parameter "${r}" must have only a single value`);if(i=i[0],r==="client_max_window_bits"){if(i!==!0){let o=+i;if(!Number.isInteger(o)||o<8||o>15)throw new TypeError(`Invalid value for parameter "${r}": ${i}`);i=o}else if(!this._isServer)throw new TypeError(`Invalid value for parameter "${r}": ${i}`)}else if(r==="server_max_window_bits"){let o=+i;if(!Number.isInteger(o)||o<8||o>15)throw new TypeError(`Invalid value for parameter "${r}": ${i}`);i=o}else if(r==="client_no_context_takeover"||r==="server_no_context_takeover"){if(i!==!0)throw new TypeError(`Invalid value for parameter "${r}": ${i}`)}else throw new Error(`Unknown parameter "${r}"`);n[r]=i})}),t}decompress(t,n,r){Nc.add(i=>{this._decompress(t,n,(o,a)=>{i(),r(o,a)})})}compress(t,n,r){Nc.add(i=>{this._compress(t,n,(o,a)=>{i(),r(o,a)})})}_decompress(t,n,r){let i=this._isServer?"client":"server";if(!this._inflate){let o=`${i}_max_window_bits`,a=typeof this.params[o]!="number"?Ld.Z_DEFAULT_WINDOWBITS:this.params[o];this._inflate=Ld.createInflateRaw({...this._options.zlibInflateOptions,windowBits:a}),this._inflate[$c]=this,this._inflate[yi]=0,this._inflate[Ui]=[],this._inflate.on("error",qz),this._inflate.on("data",CT)}this._inflate[Na]=r,this._inflate.write(t),n&&this._inflate.write(Fz),this._inflate.flush(()=>{let o=this._inflate[$a];if(o){this._inflate.close(),this._inflate=null,r(o);return}let a=ET.concat(this._inflate[Ui],this._inflate[yi]);this._inflate._readableState.endEmitted?(this._inflate.close(),this._inflate=null):(this._inflate[yi]=0,this._inflate[Ui]=[],n&&this.params[`${i}_no_context_takeover`]&&this._inflate.reset()),r(null,a)})}_compress(t,n,r){let i=this._isServer?"server":"client";if(!this._deflate){let o=`${i}_max_window_bits`,a=typeof this.params[o]!="number"?Ld.Z_DEFAULT_WINDOWBITS:this.params[o];this._deflate=Ld.createDeflateRaw({...this._options.zlibDeflateOptions,windowBits:a}),this._deflate[yi]=0,this._deflate[Ui]=[],this._deflate.on("data",Uz)}this._deflate[Na]=r,this._deflate.write(t),this._deflate.flush(Ld.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let o=ET.concat(this._deflate[Ui],this._deflate[yi]);n&&(o=new jz(o.buffer,o.byteOffset,o.length-4)),this._deflate[Na]=null,this._deflate[yi]=0,this._deflate[Ui]=[],n&&this.params[`${i}_no_context_takeover`]&&this._deflate.reset(),r(null,o)})}};TT.exports=f_;function Uz(e){this[Ui].push(e),this[yi]+=e.length}function CT(e){if(this[yi]+=e.length,this[$c]._maxPayload<1||this[yi]<=this[$c]._maxPayload){this[Ui].push(e);return}this[$a]=new RangeError("Max payload size exceeded"),this[$a].code="WS_ERR_UNSUPPORTED_MESSAGE_LENGTH",this[$a][kT]=1009,this.removeListener("data",CT),this.reset()}function qz(e){if(this[$c]._inflate=null,this[$a]){this[Na](this[$a]);return}e[kT]=1007,this[Na](e)}});var ja=st((QHe,jc)=>{"use strict";var{isUtf8:AT}=Ze("buffer"),{hasBlob:Gz}=gi(),Bz=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0];function zz(e){return e>=1e3&&e<=1014&&e!==1004&&e!==1005&&e!==1006||e>=3e3&&e<=4999}function p_(e){let t=e.length,n=0;for(;n<t;)if((e[n]&128)===0)n++;else if((e[n]&224)===192){if(n+1===t||(e[n+1]&192)!==128||(e[n]&254)===192)return!1;n+=2}else if((e[n]&240)===224){if(n+2>=t||(e[n+1]&192)!==128||(e[n+2]&192)!==128||e[n]===224&&(e[n+1]&224)===128||e[n]===237&&(e[n+1]&224)===160)return!1;n+=3}else if((e[n]&248)===240){if(n+3>=t||(e[n+1]&192)!==128||(e[n+2]&192)!==128||(e[n+3]&192)!==128||e[n]===240&&(e[n+1]&240)===128||e[n]===244&&e[n+1]>143||e[n]>244)return!1;n+=4}else return!1;return!0}function Kz(e){return Gz&&typeof e=="object"&&typeof e.arrayBuffer=="function"&&typeof e.type=="string"&&typeof e.stream=="function"&&(e[Symbol.toStringTag]==="Blob"||e[Symbol.toStringTag]==="File")}jc.exports={isBlob:Kz,isValidStatusCode:zz,isValidUTF8:p_,tokenChars:Bz};if(AT)jc.exports.isValidUTF8=function(e){return e.length<24?p_(e):AT(e)};else if(!process.env.WS_NO_UTF_8_VALIDATE)try{let e=Ze("utf-8-validate");jc.exports.isValidUTF8=function(t){return t.length<32?p_(t):e(t)}}catch{}});var y_=st((XHe,DT)=>{"use strict";var{Writable:Hz}=Ze("stream"),xT=Nd(),{BINARY_TYPES:Wz,EMPTY_BUFFER:OT,kStatusCode:Jz,kWebSocket:Vz}=gi(),{concat:m_,toArrayBuffer:Zz,unmask:Yz}=Dd(),{isValidStatusCode:Qz,isValidUTF8:IT}=ja(),Fc=Buffer[Symbol.species],Yn=0,RT=1,PT=2,MT=3,h_=4,__=5,Uc=6,g_=class extends Hz{constructor(t={}){super(),this._allowSynchronousEvents=t.allowSynchronousEvents!==void 0?t.allowSynchronousEvents:!0,this._binaryType=t.binaryType||Wz[0],this._extensions=t.extensions||{},this._isServer=!!t.isServer,this._maxPayload=t.maxPayload|0,this._skipUTF8Validation=!!t.skipUTF8Validation,this[Vz]=void 0,this._bufferedBytes=0,this._buffers=[],this._compressed=!1,this._payloadLength=0,this._mask=void 0,this._fragmented=0,this._masked=!1,this._fin=!1,this._opcode=0,this._totalPayloadLength=0,this._messageLength=0,this._fragments=[],this._errored=!1,this._loop=!1,this._state=Yn}_write(t,n,r){if(this._opcode===8&&this._state==Yn)return r();this._bufferedBytes+=t.length,this._buffers.push(t),this.startLoop(r)}consume(t){if(this._bufferedBytes-=t,t===this._buffers[0].length)return this._buffers.shift();if(t<this._buffers[0].length){let r=this._buffers[0];return this._buffers[0]=new Fc(r.buffer,r.byteOffset+t,r.length-t),new Fc(r.buffer,r.byteOffset,t)}let n=Buffer.allocUnsafe(t);do{let r=this._buffers[0],i=n.length-t;t>=r.length?n.set(this._buffers.shift(),i):(n.set(new Uint8Array(r.buffer,r.byteOffset,t),i),this._buffers[0]=new Fc(r.buffer,r.byteOffset+t,r.length-t)),t-=r.length}while(t>0);return n}startLoop(t){this._loop=!0;do switch(this._state){case Yn:this.getInfo(t);break;case RT:this.getPayloadLength16(t);break;case PT:this.getPayloadLength64(t);break;case MT:this.getMask();break;case h_:this.getData(t);break;case __:case Uc:this._loop=!1;return}while(this._loop);this._errored||t()}getInfo(t){if(this._bufferedBytes<2){this._loop=!1;return}let n=this.consume(2);if((n[0]&48)!==0){let i=this.createError(RangeError,"RSV2 and RSV3 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_2_3");t(i);return}let r=(n[0]&64)===64;if(r&&!this._extensions[xT.extensionName]){let i=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");t(i);return}if(this._fin=(n[0]&128)===128,this._opcode=n[0]&15,this._payloadLength=n[1]&127,this._opcode===0){if(r){let i=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");t(i);return}if(!this._fragmented){let i=this.createError(RangeError,"invalid opcode 0",!0,1002,"WS_ERR_INVALID_OPCODE");t(i);return}this._opcode=this._fragmented}else if(this._opcode===1||this._opcode===2){if(this._fragmented){let i=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");t(i);return}this._compressed=r}else if(this._opcode>7&&this._opcode<11){if(!this._fin){let i=this.createError(RangeError,"FIN must be set",!0,1002,"WS_ERR_EXPECTED_FIN");t(i);return}if(r){let i=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");t(i);return}if(this._payloadLength>125||this._opcode===8&&this._payloadLength===1){let i=this.createError(RangeError,`invalid payload length ${this._payloadLength}`,!0,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH");t(i);return}}else{let i=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");t(i);return}if(!this._fin&&!this._fragmented&&(this._fragmented=this._opcode),this._masked=(n[1]&128)===128,this._isServer){if(!this._masked){let i=this.createError(RangeError,"MASK must be set",!0,1002,"WS_ERR_EXPECTED_MASK");t(i);return}}else if(this._masked){let i=this.createError(RangeError,"MASK must be clear",!0,1002,"WS_ERR_UNEXPECTED_MASK");t(i);return}this._payloadLength===126?this._state=RT:this._payloadLength===127?this._state=PT:this.haveLength(t)}getPayloadLength16(t){if(this._bufferedBytes<2){this._loop=!1;return}this._payloadLength=this.consume(2).readUInt16BE(0),this.haveLength(t)}getPayloadLength64(t){if(this._bufferedBytes<8){this._loop=!1;return}let n=this.consume(8),r=n.readUInt32BE(0);if(r>Math.pow(2,21)-1){let i=this.createError(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009,"WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH");t(i);return}this._payloadLength=r*Math.pow(2,32)+n.readUInt32BE(4),this.haveLength(t)}haveLength(t){if(this._payloadLength&&this._opcode<8&&(this._totalPayloadLength+=this._payloadLength,this._totalPayloadLength>this._maxPayload&&this._maxPayload>0)){let n=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");t(n);return}this._masked?this._state=MT:this._state=h_}getMask(){if(this._bufferedBytes<4){this._loop=!1;return}this._mask=this.consume(4),this._state=h_}getData(t){let n=OT;if(this._payloadLength){if(this._bufferedBytes<this._payloadLength){this._loop=!1;return}n=this.consume(this._payloadLength),this._masked&&(this._mask[0]|this._mask[1]|this._mask[2]|this._mask[3])!==0&&Yz(n,this._mask)}if(this._opcode>7){this.controlMessage(n,t);return}if(this._compressed){this._state=__,this.decompress(n,t);return}n.length&&(this._messageLength=this._totalPayloadLength,this._fragments.push(n)),this.dataMessage(t)}decompress(t,n){this._extensions[xT.extensionName].decompress(t,this._fin,(i,o)=>{if(i)return n(i);if(o.length){if(this._messageLength+=o.length,this._messageLength>this._maxPayload&&this._maxPayload>0){let a=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");n(a);return}this._fragments.push(o)}this.dataMessage(n),this._state===Yn&&this.startLoop(n)})}dataMessage(t){if(!this._fin){this._state=Yn;return}let n=this._messageLength,r=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._fragments=[],this._opcode===2){let i;this._binaryType==="nodebuffer"?i=m_(r,n):this._binaryType==="arraybuffer"?i=Zz(m_(r,n)):this._binaryType==="blob"?i=new Blob(r):i=r,this._allowSynchronousEvents?(this.emit("message",i,!0),this._state=Yn):(this._state=Uc,setImmediate(()=>{this.emit("message",i,!0),this._state=Yn,this.startLoop(t)}))}else{let i=m_(r,n);if(!this._skipUTF8Validation&&!IT(i)){let o=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");t(o);return}this._state===__||this._allowSynchronousEvents?(this.emit("message",i,!1),this._state=Yn):(this._state=Uc,setImmediate(()=>{this.emit("message",i,!1),this._state=Yn,this.startLoop(t)}))}}controlMessage(t,n){if(this._opcode===8){if(t.length===0)this._loop=!1,this.emit("conclude",1005,OT),this.end();else{let r=t.readUInt16BE(0);if(!Qz(r)){let o=this.createError(RangeError,`invalid status code ${r}`,!0,1002,"WS_ERR_INVALID_CLOSE_CODE");n(o);return}let i=new Fc(t.buffer,t.byteOffset+2,t.length-2);if(!this._skipUTF8Validation&&!IT(i)){let o=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");n(o);return}this._loop=!1,this.emit("conclude",r,i),this.end()}this._state=Yn;return}this._allowSynchronousEvents?(this.emit(this._opcode===9?"ping":"pong",t),this._state=Yn):(this._state=Uc,setImmediate(()=>{this.emit(this._opcode===9?"ping":"pong",t),this._state=Yn,this.startLoop(n)}))}createError(t,n,r,i,o){this._loop=!1,this._errored=!0;let a=new t(r?`Invalid WebSocket frame: ${n}`:n);return Error.captureStackTrace(a,this.createError),a.code=o,a[Jz]=i,a}};DT.exports=g_});var S_=st((tWe,$T)=>{"use strict";var{Duplex:eWe}=Ze("stream"),{randomFillSync:Xz}=Ze("crypto"),LT=Nd(),{EMPTY_BUFFER:eK,kWebSocket:tK,NOOP:nK}=gi(),{isBlob:Fa,isValidStatusCode:rK}=ja(),{mask:NT,toBuffer:Co}=Dd(),Qn=Symbol("kByteLength"),iK=Buffer.alloc(4),qc=8*1024,To,Ua=qc,_r=0,oK=1,aK=2,v_=class e{constructor(t,n,r){this._extensions=n||{},r&&(this._generateMask=r,this._maskBuffer=Buffer.alloc(4)),this._socket=t,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._queue=[],this._state=_r,this.onerror=nK,this[tK]=void 0}static frame(t,n){let r,i=!1,o=2,a=!1;n.mask&&(r=n.maskBuffer||iK,n.generateMask?n.generateMask(r):(Ua===qc&&(To===void 0&&(To=Buffer.alloc(qc)),Xz(To,0,qc),Ua=0),r[0]=To[Ua++],r[1]=To[Ua++],r[2]=To[Ua++],r[3]=To[Ua++]),a=(r[0]|r[1]|r[2]|r[3])===0,o=6);let s;typeof t=="string"?(!n.mask||a)&&n[Qn]!==void 0?s=n[Qn]:(t=Buffer.from(t),s=t.length):(s=t.length,i=n.mask&&n.readOnly&&!a);let d=s;s>=65536?(o+=8,d=127):s>125&&(o+=2,d=126);let l=Buffer.allocUnsafe(i?s+o:o);return l[0]=n.fin?n.opcode|128:n.opcode,n.rsv1&&(l[0]|=64),l[1]=d,d===126?l.writeUInt16BE(s,2):d===127&&(l[2]=l[3]=0,l.writeUIntBE(s,4,6)),n.mask?(l[1]|=128,l[o-4]=r[0],l[o-3]=r[1],l[o-2]=r[2],l[o-1]=r[3],a?[l,t]:i?(NT(t,r,l,o,s),[l]):(NT(t,r,t,0,s),[l,t])):[l,t]}close(t,n,r,i){let o;if(t===void 0)o=eK;else{if(typeof t!="number"||!rK(t))throw new TypeError("First argument must be a valid error code number");if(n===void 0||!n.length)o=Buffer.allocUnsafe(2),o.writeUInt16BE(t,0);else{let s=Buffer.byteLength(n);if(s>123)throw new RangeError("The message must not be greater than 123 bytes");o=Buffer.allocUnsafe(2+s),o.writeUInt16BE(t,0),typeof n=="string"?o.write(n,2):o.set(n,2)}}let a={[Qn]:o.length,fin:!0,generateMask:this._generateMask,mask:r,maskBuffer:this._maskBuffer,opcode:8,readOnly:!1,rsv1:!1};this._state!==_r?this.enqueue([this.dispatch,o,!1,a,i]):this.sendFrame(e.frame(o,a),i)}ping(t,n,r){let i,o;if(typeof t=="string"?(i=Buffer.byteLength(t),o=!1):Fa(t)?(i=t.size,o=!1):(t=Co(t),i=t.length,o=Co.readOnly),i>125)throw new RangeError("The data size must not be greater than 125 bytes");let a={[Qn]:i,fin:!0,generateMask:this._generateMask,mask:n,maskBuffer:this._maskBuffer,opcode:9,readOnly:o,rsv1:!1};Fa(t)?this._state!==_r?this.enqueue([this.getBlobData,t,!1,a,r]):this.getBlobData(t,!1,a,r):this._state!==_r?this.enqueue([this.dispatch,t,!1,a,r]):this.sendFrame(e.frame(t,a),r)}pong(t,n,r){let i,o;if(typeof t=="string"?(i=Buffer.byteLength(t),o=!1):Fa(t)?(i=t.size,o=!1):(t=Co(t),i=t.length,o=Co.readOnly),i>125)throw new RangeError("The data size must not be greater than 125 bytes");let a={[Qn]:i,fin:!0,generateMask:this._generateMask,mask:n,maskBuffer:this._maskBuffer,opcode:10,readOnly:o,rsv1:!1};Fa(t)?this._state!==_r?this.enqueue([this.getBlobData,t,!1,a,r]):this.getBlobData(t,!1,a,r):this._state!==_r?this.enqueue([this.dispatch,t,!1,a,r]):this.sendFrame(e.frame(t,a),r)}send(t,n,r){let i=this._extensions[LT.extensionName],o=n.binary?2:1,a=n.compress,s,d;typeof t=="string"?(s=Buffer.byteLength(t),d=!1):Fa(t)?(s=t.size,d=!1):(t=Co(t),s=t.length,d=Co.readOnly),this._firstFragment?(this._firstFragment=!1,a&&i&&i.params[i._isServer?"server_no_context_takeover":"client_no_context_takeover"]&&(a=s>=i._threshold),this._compress=a):(a=!1,o=0),n.fin&&(this._firstFragment=!0);let l={[Qn]:s,fin:n.fin,generateMask:this._generateMask,mask:n.mask,maskBuffer:this._maskBuffer,opcode:o,readOnly:d,rsv1:a};Fa(t)?this._state!==_r?this.enqueue([this.getBlobData,t,this._compress,l,r]):this.getBlobData(t,this._compress,l,r):this._state!==_r?this.enqueue([this.dispatch,t,this._compress,l,r]):this.dispatch(t,this._compress,l,r)}getBlobData(t,n,r,i){this._bufferedBytes+=r[Qn],this._state=aK,t.arrayBuffer().then(o=>{if(this._socket.destroyed){let s=new Error("The socket was closed while the blob was being read");process.nextTick(b_,this,s,i);return}this._bufferedBytes-=r[Qn];let a=Co(o);n?this.dispatch(a,n,r,i):(this._state=_r,this.sendFrame(e.frame(a,r),i),this.dequeue())}).catch(o=>{process.nextTick(sK,this,o,i)})}dispatch(t,n,r,i){if(!n){this.sendFrame(e.frame(t,r),i);return}let o=this._extensions[LT.extensionName];this._bufferedBytes+=r[Qn],this._state=oK,o.compress(t,r.fin,(a,s)=>{if(this._socket.destroyed){let d=new Error("The socket was closed while data was being compressed");b_(this,d,i);return}this._bufferedBytes-=r[Qn],this._state=_r,r.readOnly=!1,this.sendFrame(e.frame(s,r),i),this.dequeue()})}dequeue(){for(;this._state===_r&&this._queue.length;){let t=this._queue.shift();this._bufferedBytes-=t[3][Qn],Reflect.apply(t[0],this,t.slice(1))}}enqueue(t){this._bufferedBytes+=t[3][Qn],this._queue.push(t)}sendFrame(t,n){t.length===2?(this._socket.cork(),this._socket.write(t[0]),this._socket.write(t[1],n),this._socket.uncork()):this._socket.write(t[0],n)}};$T.exports=v_;function b_(e,t,n){typeof n=="function"&&n(t);for(let r=0;r<e._queue.length;r++){let i=e._queue[r],o=i[i.length-1];typeof o=="function"&&o(t)}}function sK(e,t,n){b_(e,t,n),e.onerror(t)}});var HT=st((nWe,KT)=>{"use strict";var{kForOnEventAttribute:$d,kListener:w_}=gi(),jT=Symbol("kCode"),FT=Symbol("kData"),UT=Symbol("kError"),qT=Symbol("kMessage"),GT=Symbol("kReason"),qa=Symbol("kTarget"),BT=Symbol("kType"),zT=Symbol("kWasClean"),vi=class{constructor(t){this[qa]=null,this[BT]=t}get target(){return this[qa]}get type(){return this[BT]}};Object.defineProperty(vi.prototype,"target",{enumerable:!0});Object.defineProperty(vi.prototype,"type",{enumerable:!0});var Ao=class extends vi{constructor(t,n={}){super(t),this[jT]=n.code===void 0?0:n.code,this[GT]=n.reason===void 0?"":n.reason,this[zT]=n.wasClean===void 0?!1:n.wasClean}get code(){return this[jT]}get reason(){return this[GT]}get wasClean(){return this[zT]}};Object.defineProperty(Ao.prototype,"code",{enumerable:!0});Object.defineProperty(Ao.prototype,"reason",{enumerable:!0});Object.defineProperty(Ao.prototype,"wasClean",{enumerable:!0});var Ga=class extends vi{constructor(t,n={}){super(t),this[UT]=n.error===void 0?null:n.error,this[qT]=n.message===void 0?"":n.message}get error(){return this[UT]}get message(){return this[qT]}};Object.defineProperty(Ga.prototype,"error",{enumerable:!0});Object.defineProperty(Ga.prototype,"message",{enumerable:!0});var jd=class extends vi{constructor(t,n={}){super(t),this[FT]=n.data===void 0?null:n.data}get data(){return this[FT]}};Object.defineProperty(jd.prototype,"data",{enumerable:!0});var dK={addEventListener(e,t,n={}){for(let i of this.listeners(e))if(!n[$d]&&i[w_]===t&&!i[$d])return;let r;if(e==="message")r=function(o,a){let s=new jd("message",{data:a?o:o.toString()});s[qa]=this,Gc(t,this,s)};else if(e==="close")r=function(o,a){let s=new Ao("close",{code:o,reason:a.toString(),wasClean:this._closeFrameReceived&&this._closeFrameSent});s[qa]=this,Gc(t,this,s)};else if(e==="error")r=function(o){let a=new Ga("error",{error:o,message:o.message});a[qa]=this,Gc(t,this,a)};else if(e==="open")r=function(){let o=new vi("open");o[qa]=this,Gc(t,this,o)};else return;r[$d]=!!n[$d],r[w_]=t,n.once?this.once(e,r):this.on(e,r)},removeEventListener(e,t){for(let n of this.listeners(e))if(n[w_]===t&&!n[$d]){this.removeListener(e,n);break}}};KT.exports={CloseEvent:Ao,ErrorEvent:Ga,Event:vi,EventTarget:dK,MessageEvent:jd};function Gc(e,t,n){typeof e=="object"&&e.handleEvent?e.handleEvent.call(e,n):e.call(t,n)}});var E_=st((rWe,WT)=>{"use strict";var{tokenChars:Fd}=ja();function qr(e,t,n){e[t]===void 0?e[t]=[n]:e[t].push(n)}function lK(e){let t=Object.create(null),n=Object.create(null),r=!1,i=!1,o=!1,a,s,d=-1,l=-1,u=-1,c=0;for(;c<e.length;c++)if(l=e.charCodeAt(c),a===void 0)if(u===-1&&Fd[l]===1)d===-1&&(d=c);else if(c!==0&&(l===32||l===9))u===-1&&d!==-1&&(u=c);else if(l===59||l===44){if(d===-1)throw new SyntaxError(`Unexpected character at index ${c}`);u===-1&&(u=c);let m=e.slice(d,u);l===44?(qr(t,m,n),n=Object.create(null)):a=m,d=u=-1}else throw new SyntaxError(`Unexpected character at index ${c}`);else if(s===void 0)if(u===-1&&Fd[l]===1)d===-1&&(d=c);else if(l===32||l===9)u===-1&&d!==-1&&(u=c);else if(l===59||l===44){if(d===-1)throw new SyntaxError(`Unexpected character at index ${c}`);u===-1&&(u=c),qr(n,e.slice(d,u),!0),l===44&&(qr(t,a,n),n=Object.create(null),a=void 0),d=u=-1}else if(l===61&&d!==-1&&u===-1)s=e.slice(d,c),d=u=-1;else throw new SyntaxError(`Unexpected character at index ${c}`);else if(i){if(Fd[l]!==1)throw new SyntaxError(`Unexpected character at index ${c}`);d===-1?d=c:r||(r=!0),i=!1}else if(o)if(Fd[l]===1)d===-1&&(d=c);else if(l===34&&d!==-1)o=!1,u=c;else if(l===92)i=!0;else throw new SyntaxError(`Unexpected character at index ${c}`);else if(l===34&&e.charCodeAt(c-1)===61)o=!0;else if(u===-1&&Fd[l]===1)d===-1&&(d=c);else if(d!==-1&&(l===32||l===9))u===-1&&(u=c);else if(l===59||l===44){if(d===-1)throw new SyntaxError(`Unexpected character at index ${c}`);u===-1&&(u=c);let m=e.slice(d,u);r&&(m=m.replace(/\\/g,""),r=!1),qr(n,s,m),l===44&&(qr(t,a,n),n=Object.create(null),a=void 0),s=void 0,d=u=-1}else throw new SyntaxError(`Unexpected character at index ${c}`);if(d===-1||o||l===32||l===9)throw new SyntaxError("Unexpected end of input");u===-1&&(u=c);let p=e.slice(d,u);return a===void 0?qr(t,p,n):(s===void 0?qr(n,p,!0):r?qr(n,s,p.replace(/\\/g,"")):qr(n,s,p),qr(t,a,n)),t}function uK(e){return Object.keys(e).map(t=>{let n=e[t];return Array.isArray(n)||(n=[n]),n.map(r=>[t].concat(Object.keys(r).map(i=>{let o=r[i];return Array.isArray(o)||(o=[o]),o.map(a=>a===!0?i:`${i}=${a}`).join("; ")})).join("; ")).join(", ")}).join(", ")}WT.exports={format:uK,parse:lK}});var Hc=st((aWe,oA)=>{"use strict";var cK=Ze("events"),fK=Ze("https"),pK=Ze("http"),ZT=Ze("net"),mK=Ze("tls"),{randomBytes:hK,createHash:_K}=Ze("crypto"),{Duplex:iWe,Readable:oWe}=Ze("stream"),{URL:k_}=Ze("url"),qi=Nd(),gK=y_(),yK=S_(),{isBlob:vK}=ja(),{BINARY_TYPES:JT,EMPTY_BUFFER:Bc,GUID:bK,kForOnEventAttribute:C_,kListener:SK,kStatusCode:wK,kWebSocket:Wt,NOOP:YT}=gi(),{EventTarget:{addEventListener:EK,removeEventListener:kK}}=HT(),{format:CK,parse:TK}=E_(),{toBuffer:AK}=Dd(),xK=30*1e3,QT=Symbol("kAborted"),T_=[8,13],bi=["CONNECTING","OPEN","CLOSING","CLOSED"],OK=/^[!#$%&'*+\-.0-9A-Z^_`|a-z~]+$/,_t=class e extends cK{constructor(t,n,r){super(),this._binaryType=JT[0],this._closeCode=1006,this._closeFrameReceived=!1,this._closeFrameSent=!1,this._closeMessage=Bc,this._closeTimer=null,this._errorEmitted=!1,this._extensions={},this._paused=!1,this._protocol="",this._readyState=e.CONNECTING,this._receiver=null,this._sender=null,this._socket=null,t!==null?(this._bufferedAmount=0,this._isServer=!1,this._redirects=0,n===void 0?n=[]:Array.isArray(n)||(typeof n=="object"&&n!==null?(r=n,n=[]):n=[n]),XT(this,t,n,r)):(this._autoPong=r.autoPong,this._isServer=!0)}get binaryType(){return this._binaryType}set binaryType(t){JT.includes(t)&&(this._binaryType=t,this._receiver&&(this._receiver._binaryType=t))}get bufferedAmount(){return this._socket?this._socket._writableState.length+this._sender._bufferedBytes:this._bufferedAmount}get extensions(){return Object.keys(this._extensions).join()}get isPaused(){return this._paused}get onclose(){return null}get onerror(){return null}get onopen(){return null}get onmessage(){return null}get protocol(){return this._protocol}get readyState(){return this._readyState}get url(){return this._url}setSocket(t,n,r){let i=new gK({allowSynchronousEvents:r.allowSynchronousEvents,binaryType:this.binaryType,extensions:this._extensions,isServer:this._isServer,maxPayload:r.maxPayload,skipUTF8Validation:r.skipUTF8Validation}),o=new yK(t,this._extensions,r.generateMask);this._receiver=i,this._sender=o,this._socket=t,i[Wt]=this,o[Wt]=this,t[Wt]=this,i.on("conclude",PK),i.on("drain",MK),i.on("error",DK),i.on("message",LK),i.on("ping",NK),i.on("pong",$K),o.onerror=jK,t.setTimeout&&t.setTimeout(0),t.setNoDelay&&t.setNoDelay(),n.length>0&&t.unshift(n),t.on("close",nA),t.on("data",Kc),t.on("end",rA),t.on("error",iA),this._readyState=e.OPEN,this.emit("open")}emitClose(){if(!this._socket){this._readyState=e.CLOSED,this.emit("close",this._closeCode,this._closeMessage);return}this._extensions[qi.extensionName]&&this._extensions[qi.extensionName].cleanup(),this._receiver.removeAllListeners(),this._readyState=e.CLOSED,this.emit("close",this._closeCode,this._closeMessage)}close(t,n){if(this.readyState!==e.CLOSED){if(this.readyState===e.CONNECTING){jn(this,this._req,"WebSocket was closed before the connection was established");return}if(this.readyState===e.CLOSING){this._closeFrameSent&&(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end();return}this._readyState=e.CLOSING,this._sender.close(t,n,!this._isServer,r=>{r||(this._closeFrameSent=!0,(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end())}),tA(this)}}pause(){this.readyState===e.CONNECTING||this.readyState===e.CLOSED||(this._paused=!0,this._socket.pause())}ping(t,n,r){if(this.readyState===e.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof t=="function"?(r=t,t=n=void 0):typeof n=="function"&&(r=n,n=void 0),typeof t=="number"&&(t=t.toString()),this.readyState!==e.OPEN){A_(this,t,r);return}n===void 0&&(n=!this._isServer),this._sender.ping(t||Bc,n,r)}pong(t,n,r){if(this.readyState===e.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof t=="function"?(r=t,t=n=void 0):typeof n=="function"&&(r=n,n=void 0),typeof t=="number"&&(t=t.toString()),this.readyState!==e.OPEN){A_(this,t,r);return}n===void 0&&(n=!this._isServer),this._sender.pong(t||Bc,n,r)}resume(){this.readyState===e.CONNECTING||this.readyState===e.CLOSED||(this._paused=!1,this._receiver._writableState.needDrain||this._socket.resume())}send(t,n,r){if(this.readyState===e.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof n=="function"&&(r=n,n={}),typeof t=="number"&&(t=t.toString()),this.readyState!==e.OPEN){A_(this,t,r);return}let i={binary:typeof t!="string",mask:!this._isServer,compress:!0,fin:!0,...n};this._extensions[qi.extensionName]||(i.compress=!1),this._sender.send(t||Bc,i,r)}terminate(){if(this.readyState!==e.CLOSED){if(this.readyState===e.CONNECTING){jn(this,this._req,"WebSocket was closed before the connection was established");return}this._socket&&(this._readyState=e.CLOSING,this._socket.destroy())}}};Object.defineProperty(_t,"CONNECTING",{enumerable:!0,value:bi.indexOf("CONNECTING")});Object.defineProperty(_t.prototype,"CONNECTING",{enumerable:!0,value:bi.indexOf("CONNECTING")});Object.defineProperty(_t,"OPEN",{enumerable:!0,value:bi.indexOf("OPEN")});Object.defineProperty(_t.prototype,"OPEN",{enumerable:!0,value:bi.indexOf("OPEN")});Object.defineProperty(_t,"CLOSING",{enumerable:!0,value:bi.indexOf("CLOSING")});Object.defineProperty(_t.prototype,"CLOSING",{enumerable:!0,value:bi.indexOf("CLOSING")});Object.defineProperty(_t,"CLOSED",{enumerable:!0,value:bi.indexOf("CLOSED")});Object.defineProperty(_t.prototype,"CLOSED",{enumerable:!0,value:bi.indexOf("CLOSED")});["binaryType","bufferedAmount","extensions","isPaused","protocol","readyState","url"].forEach(e=>{Object.defineProperty(_t.prototype,e,{enumerable:!0})});["open","error","close","message"].forEach(e=>{Object.defineProperty(_t.prototype,`on${e}`,{enumerable:!0,get(){for(let t of this.listeners(e))if(t[C_])return t[SK];return null},set(t){for(let n of this.listeners(e))if(n[C_]){this.removeListener(e,n);break}typeof t=="function"&&this.addEventListener(e,t,{[C_]:!0})}})});_t.prototype.addEventListener=EK;_t.prototype.removeEventListener=kK;oA.exports=_t;function XT(e,t,n,r){let i={allowSynchronousEvents:!0,autoPong:!0,protocolVersion:T_[1],maxPayload:104857600,skipUTF8Validation:!1,perMessageDeflate:!0,followRedirects:!1,maxRedirects:10,...r,socketPath:void 0,hostname:void 0,protocol:void 0,timeout:void 0,method:"GET",host:void 0,path:void 0,port:void 0};if(e._autoPong=i.autoPong,!T_.includes(i.protocolVersion))throw new RangeError(`Unsupported protocol version: ${i.protocolVersion} (supported versions: ${T_.join(", ")})`);let o;if(t instanceof k_)o=t;else try{o=new k_(t)}catch{throw new SyntaxError(`Invalid URL: ${t}`)}o.protocol==="http:"?o.protocol="ws:":o.protocol==="https:"&&(o.protocol="wss:"),e._url=o.href;let a=o.protocol==="wss:",s=o.protocol==="ws+unix:",d;if(o.protocol!=="ws:"&&!a&&!s?d=`The URL's protocol must be one of "ws:", "wss:", "http:", "https:", or "ws+unix:"`:s&&!o.pathname?d="The URL's pathname is empty":o.hash&&(d="The URL contains a fragment identifier"),d){let h=new SyntaxError(d);if(e._redirects===0)throw h;zc(e,h);return}let l=a?443:80,u=hK(16).toString("base64"),c=a?fK.request:pK.request,p=new Set,m;if(i.createConnection=i.createConnection||(a?RK:IK),i.defaultPort=i.defaultPort||l,i.port=o.port||l,i.host=o.hostname.startsWith("[")?o.hostname.slice(1,-1):o.hostname,i.headers={...i.headers,"Sec-WebSocket-Version":i.protocolVersion,"Sec-WebSocket-Key":u,Connection:"Upgrade",Upgrade:"websocket"},i.path=o.pathname+o.search,i.timeout=i.handshakeTimeout,i.perMessageDeflate&&(m=new qi(i.perMessageDeflate!==!0?i.perMessageDeflate:{},!1,i.maxPayload),i.headers["Sec-WebSocket-Extensions"]=CK({[qi.extensionName]:m.offer()})),n.length){for(let h of n){if(typeof h!="string"||!OK.test(h)||p.has(h))throw new SyntaxError("An invalid or duplicated subprotocol was specified");p.add(h)}i.headers["Sec-WebSocket-Protocol"]=n.join(",")}if(i.origin&&(i.protocolVersion<13?i.headers["Sec-WebSocket-Origin"]=i.origin:i.headers.Origin=i.origin),(o.username||o.password)&&(i.auth=`${o.username}:${o.password}`),s){let h=i.path.split(":");i.socketPath=h[0],i.path=h[1]}let g;if(i.followRedirects){if(e._redirects===0){e._originalIpc=s,e._originalSecure=a,e._originalHostOrSocketPath=s?i.socketPath:o.host;let h=r&&r.headers;if(r={...r,headers:{}},h)for(let[v,y]of Object.entries(h))r.headers[v.toLowerCase()]=y}else if(e.listenerCount("redirect")===0){let h=s?e._originalIpc?i.socketPath===e._originalHostOrSocketPath:!1:e._originalIpc?!1:o.host===e._originalHostOrSocketPath;(!h||e._originalSecure&&!a)&&(delete i.headers.authorization,delete i.headers.cookie,h||delete i.headers.host,i.auth=void 0)}i.auth&&!r.headers.authorization&&(r.headers.authorization="Basic "+Buffer.from(i.auth).toString("base64")),g=e._req=c(i),e._redirects&&e.emit("redirect",e.url,g)}else g=e._req=c(i);i.timeout&&g.on("timeout",()=>{jn(e,g,"Opening handshake has timed out")}),g.on("error",h=>{g===null||g[QT]||(g=e._req=null,zc(e,h))}),g.on("response",h=>{let v=h.headers.location,y=h.statusCode;if(v&&i.followRedirects&&y>=300&&y<400){if(++e._redirects>i.maxRedirects){jn(e,g,"Maximum redirects exceeded");return}g.abort();let S;try{S=new k_(v,t)}catch{let E=new SyntaxError(`Invalid URL: ${v}`);zc(e,E);return}XT(e,S,n,r)}else e.emit("unexpected-response",g,h)||jn(e,g,`Unexpected server response: ${h.statusCode}`)}),g.on("upgrade",(h,v,y)=>{if(e.emit("upgrade",h),e.readyState!==_t.CONNECTING)return;g=e._req=null;let S=h.headers.upgrade;if(S===void 0||S.toLowerCase()!=="websocket"){jn(e,v,"Invalid Upgrade header");return}let b=_K("sha1").update(u+bK).digest("base64");if(h.headers["sec-websocket-accept"]!==b){jn(e,v,"Invalid Sec-WebSocket-Accept header");return}let E=h.headers["sec-websocket-protocol"],T;if(E!==void 0?p.size?p.has(E)||(T="Server sent an invalid subprotocol"):T="Server sent a subprotocol but none was requested":p.size&&(T="Server sent no subprotocol"),T){jn(e,v,T);return}E&&(e._protocol=E);let x=h.headers["sec-websocket-extensions"];if(x!==void 0){if(!m){jn(e,v,"Server sent a Sec-WebSocket-Extensions header but no extension was requested");return}let _;try{_=TK(x)}catch{jn(e,v,"Invalid Sec-WebSocket-Extensions header");return}let w=Object.keys(_);if(w.length!==1||w[0]!==qi.extensionName){jn(e,v,"Server indicated an extension that was not requested");return}try{m.accept(_[qi.extensionName])}catch{jn(e,v,"Invalid Sec-WebSocket-Extensions header");return}e._extensions[qi.extensionName]=m}e.setSocket(v,y,{allowSynchronousEvents:i.allowSynchronousEvents,generateMask:i.generateMask,maxPayload:i.maxPayload,skipUTF8Validation:i.skipUTF8Validation})}),i.finishRequest?i.finishRequest(g,e):g.end()}function zc(e,t){e._readyState=_t.CLOSING,e._errorEmitted=!0,e.emit("error",t),e.emitClose()}function IK(e){return e.path=e.socketPath,ZT.connect(e)}function RK(e){return e.path=void 0,!e.servername&&e.servername!==""&&(e.servername=ZT.isIP(e.host)?"":e.host),mK.connect(e)}function jn(e,t,n){e._readyState=_t.CLOSING;let r=new Error(n);Error.captureStackTrace(r,jn),t.setHeader?(t[QT]=!0,t.abort(),t.socket&&!t.socket.destroyed&&t.socket.destroy(),process.nextTick(zc,e,r)):(t.destroy(r),t.once("error",e.emit.bind(e,"error")),t.once("close",e.emitClose.bind(e)))}function A_(e,t,n){if(t){let r=vK(t)?t.size:AK(t).length;e._socket?e._sender._bufferedBytes+=r:e._bufferedAmount+=r}if(n){let r=new Error(`WebSocket is not open: readyState ${e.readyState} (${bi[e.readyState]})`);process.nextTick(n,r)}}function PK(e,t){let n=this[Wt];n._closeFrameReceived=!0,n._closeMessage=t,n._closeCode=e,n._socket[Wt]!==void 0&&(n._socket.removeListener("data",Kc),process.nextTick(eA,n._socket),e===1005?n.close():n.close(e,t))}function MK(){let e=this[Wt];e.isPaused||e._socket.resume()}function DK(e){let t=this[Wt];t._socket[Wt]!==void 0&&(t._socket.removeListener("data",Kc),process.nextTick(eA,t._socket),t.close(e[wK])),t._errorEmitted||(t._errorEmitted=!0,t.emit("error",e))}function VT(){this[Wt].emitClose()}function LK(e,t){this[Wt].emit("message",e,t)}function NK(e){let t=this[Wt];t._autoPong&&t.pong(e,!this._isServer,YT),t.emit("ping",e)}function $K(e){this[Wt].emit("pong",e)}function eA(e){e.resume()}function jK(e){let t=this[Wt];t.readyState!==_t.CLOSED&&(t.readyState===_t.OPEN&&(t._readyState=_t.CLOSING,tA(t)),this._socket.end(),t._errorEmitted||(t._errorEmitted=!0,t.emit("error",e)))}function tA(e){e._closeTimer=setTimeout(e._socket.destroy.bind(e._socket),xK)}function nA(){let e=this[Wt];this.removeListener("close",nA),this.removeListener("data",Kc),this.removeListener("end",rA),e._readyState=_t.CLOSING;let t;!this._readableState.endEmitted&&!e._closeFrameReceived&&!e._receiver._writableState.errorEmitted&&(t=e._socket.read())!==null&&e._receiver.write(t),e._receiver.end(),this[Wt]=void 0,clearTimeout(e._closeTimer),e._receiver._writableState.finished||e._receiver._writableState.errorEmitted?e.emitClose():(e._receiver.on("error",VT),e._receiver.on("finish",VT))}function Kc(e){this[Wt]._receiver.write(e)||this.pause()}function rA(){let e=this[Wt];e._readyState=_t.CLOSING,e._receiver.end(),this.end()}function iA(){let e=this[Wt];this.removeListener("error",iA),this.on("error",YT),e&&(e._readyState=_t.CLOSING,this.destroy())}});var lA=st((dWe,dA)=>{"use strict";var sWe=Hc(),{Duplex:FK}=Ze("stream");function aA(e){e.emit("close")}function UK(){!this.destroyed&&this._writableState.finished&&this.destroy()}function sA(e){this.removeListener("error",sA),this.destroy(),this.listenerCount("error")===0&&this.emit("error",e)}function qK(e,t){let n=!0,r=new FK({...t,autoDestroy:!1,emitClose:!1,objectMode:!1,writableObjectMode:!1});return e.on("message",function(o,a){let s=!a&&r._readableState.objectMode?o.toString():o;r.push(s)||e.pause()}),e.once("error",function(o){r.destroyed||(n=!1,r.destroy(o))}),e.once("close",function(){r.destroyed||r.push(null)}),r._destroy=function(i,o){if(e.readyState===e.CLOSED){o(i),process.nextTick(aA,r);return}let a=!1;e.once("error",function(d){a=!0,o(d)}),e.once("close",function(){a||o(i),process.nextTick(aA,r)}),n&&e.terminate()},r._final=function(i){if(e.readyState===e.CONNECTING){e.once("open",function(){r._final(i)});return}e._socket!==null&&(e._socket._writableState.finished?(i(),r._readableState.endEmitted&&r.destroy()):(e._socket.once("finish",function(){i()}),e.close()))},r._read=function(){e.isPaused&&e.resume()},r._write=function(i,o,a){if(e.readyState===e.CONNECTING){e.once("open",function(){r._write(i,o,a)});return}e.send(i,a)},r.on("end",UK),r.on("error",sA),r}dA.exports=qK});var cA=st((lWe,uA)=>{"use strict";var{tokenChars:GK}=ja();function BK(e){let t=new Set,n=-1,r=-1,i=0;for(i;i<e.length;i++){let a=e.charCodeAt(i);if(r===-1&&GK[a]===1)n===-1&&(n=i);else if(i!==0&&(a===32||a===9))r===-1&&n!==-1&&(r=i);else if(a===44){if(n===-1)throw new SyntaxError(`Unexpected character at index ${i}`);r===-1&&(r=i);let s=e.slice(n,r);if(t.has(s))throw new SyntaxError(`The "${s}" subprotocol is duplicated`);t.add(s),n=r=-1}else throw new SyntaxError(`Unexpected character at index ${i}`)}if(n===-1||r!==-1)throw new SyntaxError("Unexpected end of input");let o=e.slice(n,i);if(t.has(o))throw new SyntaxError(`The "${o}" subprotocol is duplicated`);return t.add(o),t}uA.exports={parse:BK}});var yA=st((cWe,gA)=>{"use strict";var zK=Ze("events"),Wc=Ze("http"),{Duplex:uWe}=Ze("stream"),{createHash:KK}=Ze("crypto"),fA=E_(),xo=Nd(),HK=cA(),WK=Hc(),{GUID:JK,kWebSocket:VK}=gi(),ZK=/^[+/0-9A-Za-z]{22}==$/,pA=0,mA=1,_A=2,x_=class extends zK{constructor(t,n){if(super(),t={allowSynchronousEvents:!0,autoPong:!0,maxPayload:100*1024*1024,skipUTF8Validation:!1,perMessageDeflate:!1,handleProtocols:null,clientTracking:!0,verifyClient:null,noServer:!1,backlog:null,server:null,host:null,path:null,port:null,WebSocket:WK,...t},t.port==null&&!t.server&&!t.noServer||t.port!=null&&(t.server||t.noServer)||t.server&&t.noServer)throw new TypeError('One and only one of the "port", "server", or "noServer" options must be specified');if(t.port!=null?(this._server=Wc.createServer((r,i)=>{let o=Wc.STATUS_CODES[426];i.writeHead(426,{"Content-Length":o.length,"Content-Type":"text/plain"}),i.end(o)}),this._server.listen(t.port,t.host,t.backlog,n)):t.server&&(this._server=t.server),this._server){let r=this.emit.bind(this,"connection");this._removeListeners=YK(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(i,o,a)=>{this.handleUpgrade(i,o,a,r)}})}t.perMessageDeflate===!0&&(t.perMessageDeflate={}),t.clientTracking&&(this.clients=new Set,this._shouldEmitClose=!1),this.options=t,this._state=pA}address(){if(this.options.noServer)throw new Error('The server is operating in "noServer" mode');return this._server?this._server.address():null}close(t){if(this._state===_A){t&&this.once("close",()=>{t(new Error("The server is not running"))}),process.nextTick(Ud,this);return}if(t&&this.once("close",t),this._state!==mA)if(this._state=mA,this.options.noServer||this.options.server)this._server&&(this._removeListeners(),this._removeListeners=this._server=null),this.clients?this.clients.size?this._shouldEmitClose=!0:process.nextTick(Ud,this):process.nextTick(Ud,this);else{let n=this._server;this._removeListeners(),this._removeListeners=this._server=null,n.close(()=>{Ud(this)})}}shouldHandle(t){if(this.options.path){let n=t.url.indexOf("?");if((n!==-1?t.url.slice(0,n):t.url)!==this.options.path)return!1}return!0}handleUpgrade(t,n,r,i){n.on("error",hA);let o=t.headers["sec-websocket-key"],a=t.headers.upgrade,s=+t.headers["sec-websocket-version"];if(t.method!=="GET"){Oo(this,t,n,405,"Invalid HTTP method");return}if(a===void 0||a.toLowerCase()!=="websocket"){Oo(this,t,n,400,"Invalid Upgrade header");return}if(o===void 0||!ZK.test(o)){Oo(this,t,n,400,"Missing or invalid Sec-WebSocket-Key header");return}if(s!==13&&s!==8){Oo(this,t,n,400,"Missing or invalid Sec-WebSocket-Version header",{"Sec-WebSocket-Version":"13, 8"});return}if(!this.shouldHandle(t)){qd(n,400);return}let d=t.headers["sec-websocket-protocol"],l=new Set;if(d!==void 0)try{l=HK.parse(d)}catch{Oo(this,t,n,400,"Invalid Sec-WebSocket-Protocol header");return}let u=t.headers["sec-websocket-extensions"],c={};if(this.options.perMessageDeflate&&u!==void 0){let p=new xo(this.options.perMessageDeflate,!0,this.options.maxPayload);try{let m=fA.parse(u);m[xo.extensionName]&&(p.accept(m[xo.extensionName]),c[xo.extensionName]=p)}catch{Oo(this,t,n,400,"Invalid or unacceptable Sec-WebSocket-Extensions header");return}}if(this.options.verifyClient){let p={origin:t.headers[`${s===8?"sec-websocket-origin":"origin"}`],secure:!!(t.socket.authorized||t.socket.encrypted),req:t};if(this.options.verifyClient.length===2){this.options.verifyClient(p,(m,g,h,v)=>{if(!m)return qd(n,g||401,h,v);this.completeUpgrade(c,o,l,t,n,r,i)});return}if(!this.options.verifyClient(p))return qd(n,401)}this.completeUpgrade(c,o,l,t,n,r,i)}completeUpgrade(t,n,r,i,o,a,s){if(!o.readable||!o.writable)return o.destroy();if(o[VK])throw new Error("server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration");if(this._state>pA)return qd(o,503);let l=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade",`Sec-WebSocket-Accept: ${KK("sha1").update(n+JK).digest("base64")}`],u=new this.options.WebSocket(null,void 0,this.options);if(r.size){let c=this.options.handleProtocols?this.options.handleProtocols(r,i):r.values().next().value;c&&(l.push(`Sec-WebSocket-Protocol: ${c}`),u._protocol=c)}if(t[xo.extensionName]){let c=t[xo.extensionName].params,p=fA.format({[xo.extensionName]:[c]});l.push(`Sec-WebSocket-Extensions: ${p}`),u._extensions=t}this.emit("headers",l,i),o.write(l.concat(`\r
|
|
5
5
|
`).join(`\r
|
|
6
6
|
`)),o.removeListener("error",hA),u.setSocket(o,a,{allowSynchronousEvents:this.options.allowSynchronousEvents,maxPayload:this.options.maxPayload,skipUTF8Validation:this.options.skipUTF8Validation}),this.clients&&(this.clients.add(u),u.on("close",()=>{this.clients.delete(u),this._shouldEmitClose&&!this.clients.size&&process.nextTick(Ud,this)})),s(u,i)}};gA.exports=x_;function YK(e,t){for(let n of Object.keys(t))e.on(n,t[n]);return function(){for(let r of Object.keys(t))e.removeListener(r,t[r])}}function Ud(e){e._state=_A,e.emit("close")}function hA(){this.destroy()}function qd(e,t,n,r){n=n||Wc.STATUS_CODES[t],r={Connection:"close","Content-Type":"text/html","Content-Length":Buffer.byteLength(n),...r},e.once("finish",e.destroy),e.end(`HTTP/1.1 ${t} ${Wc.STATUS_CODES[t]}\r
|
|
7
7
|
`+Object.keys(r).map(i=>`${i}: ${r[i]}`).join(`\r
|