monocart-reporter 2.2.0 → 2.2.2

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.
@@ -6,7 +6,7 @@ var $s=Object.create;var Te=Object.defineProperty;var Ws=Object.getOwnPropertyDe
6
6
  `],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e","\x1B"],["a","\x07"]]);function cn(e){return e[0]==="u"&&e.length===5||e[0]==="x"&&e.length===3?String.fromCharCode(parseInt(e.slice(1),16)):ta.get(e)||e}function ra(e,t){let r=[],s=t.trim().split(/\s*,\s*/g),n;for(let i of s)if(!isNaN(i))r.push(Number(i));else if(n=i.match(Qi))r.push(n[2].replace(ea,(a,o,u)=>o?cn(o):u));else throw new Error(`Invalid Chalk template style argument: ${i} (in style '${e}')`);return r}function na(e){un.lastIndex=0;let t=[],r;for(;(r=un.exec(e))!==null;){let s=r[1];if(r[2]){let n=ra(s,r[2]);t.push([s].concat(n))}else t.push([s])}return t}function ln(e,t){let r={};for(let n of t)for(let i of n.styles)r[i[0]]=n.inverse?null:i.slice(1);let s=e;for(let n of Object.keys(r))if(Array.isArray(r[n])){if(!(n in s))throw new Error(`Unknown Chalk style: ${n}`);r[n].length>0?s=s[n].apply(s,r[n]):s=s[n]}return s}fn.exports=(e,t)=>{let r=[],s=[],n=[];if(t.replace(Ji,(i,a,o,u,l,f)=>{if(a)n.push(cn(a));else if(u){let c=n.join("");n=[],s.push(r.length===0?c:ln(e,r)(c)),r.push({inverse:o,styles:na(u)})}else if(l){if(r.length===0)throw new Error("Found extraneous } in Chalk template literal");s.push(ln(e,r)(n.join(""))),n=[],r.pop()}else n.push(f)}),s.push(n.join("")),r.length>0){let i=`Chalk template literal is missing ${r.length} closing bracket${r.length===1?"":"s"} (\`}\`)`;throw new Error(i)}return s.join("")}});var bn=g((pu,be)=>{"use strict";var _t=Gr(),S=rn(),yt=on().stdout,sa=hn(),pn=process.platform==="win32"&&!(process.env.TERM||"").toLowerCase().startsWith("xterm"),gn=["ansi","ansi","ansi256","ansi16m"],vn=new Set(["gray"]),ae=Object.create(null);function dn(e,t){t=t||{};let r=yt?yt.level:0;e.level=t.level===void 0?r:t.level,e.enabled="enabled"in t?t.enabled:e.level>0}function ve(e){if(!this||!(this instanceof ve)||this.template){let t={};return dn(t,e),t.template=function(){let r=[].slice.call(arguments);return oa.apply(null,[t.template].concat(r))},Object.setPrototypeOf(t,ve.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=ve,t.template}dn(this,e)}pn&&(S.blue.open="\x1B[94m");for(let e of Object.keys(S))S[e].closeRe=new RegExp(_t(S[e].close),"g"),ae[e]={get(){let t=S[e];return De.call(this,this._styles?this._styles.concat(t):[t],this._empty,e)}};ae.visible={get(){return De.call(this,this._styles||[],!0,"visible")}};S.color.closeRe=new RegExp(_t(S.color.close),"g");for(let e of Object.keys(S.color.ansi))vn.has(e)||(ae[e]={get(){let t=this.level;return function(){let s={open:S.color[gn[t]][e].apply(null,arguments),close:S.color.close,closeRe:S.color.closeRe};return De.call(this,this._styles?this._styles.concat(s):[s],this._empty,e)}}});S.bgColor.closeRe=new RegExp(_t(S.bgColor.close),"g");for(let e of Object.keys(S.bgColor.ansi)){if(vn.has(e))continue;let t="bg"+e[0].toUpperCase()+e.slice(1);ae[t]={get(){let r=this.level;return function(){let n={open:S.bgColor[gn[r]][e].apply(null,arguments),close:S.bgColor.close,closeRe:S.bgColor.closeRe};return De.call(this,this._styles?this._styles.concat(n):[n],this._empty,e)}}}}var ia=Object.defineProperties(()=>{},ae);function De(e,t,r){let s=function(){return aa.apply(s,arguments)};s._styles=e,s._empty=t;let n=this;return Object.defineProperty(s,"level",{enumerable:!0,get(){return n.level},set(i){n.level=i}}),Object.defineProperty(s,"enabled",{enumerable:!0,get(){return n.enabled},set(i){n.enabled=i}}),s.hasGrey=this.hasGrey||r==="gray"||r==="grey",s.__proto__=ia,s}function aa(){let e=arguments,t=e.length,r=String(arguments[0]);if(t===0)return"";if(t>1)for(let n=1;n<t;n++)r+=" "+e[n];if(!this.enabled||this.level<=0||!r)return this._empty?"":r;let s=S.dim.open;pn&&this.hasGrey&&(S.dim.open="");for(let n of this._styles.slice().reverse())r=n.open+r.replace(n.closeRe,n.open)+n.close,r=r.replace(/\r?\n/g,`${n.close}$&${n.open}`);return S.dim.open=s,r}function oa(e,t){if(!Array.isArray(t))return[].slice.call(arguments,1).join(" ");let r=[].slice.call(arguments,2),s=[t.raw[0]];for(let n=1;n<t.length;n++)s.push(String(r[n-1]).replace(/[{}\\]/g,"\\$&")),s.push(String(t.raw[n]));return sa(e,s.join(""))}Object.defineProperties(ve.prototype,ae);be.exports=ve();be.exports.supportsColor=yt;be.exports.default=be.exports});var En=g(Ge=>{"use strict";Object.defineProperty(Ge,"__esModule",{value:!0});Ge.codeFrameColumns=Sn;Ge.default=ha;var mn=Ur(),yn=ua(bn(),!0);function xn(e){if(typeof WeakMap!="function")return null;var t=new WeakMap,r=new WeakMap;return(xn=function(s){return s?r:t})(e)}function ua(e,t){if(!t&&e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var r=xn(t);if(r&&r.has(e))return r.get(e);var s={__proto__:null},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if(i!=="default"&&Object.prototype.hasOwnProperty.call(e,i)){var a=n?Object.getOwnPropertyDescriptor(e,i):null;a&&(a.get||a.set)?Object.defineProperty(s,i,a):s[i]=e[i]}return s.default=e,r&&r.set(e,s),s}var wt;function la(e){if(e){var t;return(t=wt)!=null||(wt=new yn.default.constructor({enabled:!0,level:1})),wt}return yn.default}var _n=!1;function ca(e){return{gutter:e.grey,marker:e.red.bold,message:e.red.bold}}var wn=/\r\n|[\n\r\u2028\u2029]/;function fa(e,t,r){let s=Object.assign({column:0,line:-1},e.start),n=Object.assign({},s,e.end),{linesAbove:i=2,linesBelow:a=3}=r||{},o=s.line,u=s.column,l=n.line,f=n.column,c=Math.max(o-(i+1),0),m=Math.min(t.length,l+a);o===-1&&(c=0),l===-1&&(m=t.length);let _=l-o,v={};if(_)for(let p=0;p<=_;p++){let b=p+o;if(!u)v[b]=!0;else if(p===0){let y=t[b-1].length;v[b]=[u,y-u+1]}else if(p===_)v[b]=[0,f];else{let y=t[b-p].length;v[b]=[0,y]}}else u===f?u?v[o]=[u,0]:v[o]=!0:v[o]=[u,f-u];return{start:c,end:m,markerLines:v}}function Sn(e,t,r={}){let s=(r.highlightCode||r.forceColor)&&(0,mn.shouldHighlight)(r),n=la(r.forceColor),i=ca(n),a=(p,b)=>s?p(b):b,o=e.split(wn),{start:u,end:l,markerLines:f}=fa(t,o,r),c=t.start&&typeof t.start.column=="number",m=String(l).length,v=(s?(0,mn.default)(e,r):e).split(wn,l).slice(u,l).map((p,b)=>{let y=u+1+b,I=` ${` ${y}`.slice(-m)} |`,T=f[y],Me=!f[y+1];if(T){let z="";if(Array.isArray(T)){let Re=p.slice(0,Math.max(T[0]-1,0)).replace(/[^\t]/g," "),ce=T[1]||1;z=[`
7
7
  `,a(i.gutter,I.replace(/\d/g," "))," ",Re,a(i.marker,"^").repeat(ce)].join(""),Me&&r.message&&(z+=" "+a(i.message,r.message))}return[a(i.marker,">"),a(i.gutter,I),p.length>0?` ${p}`:"",z].join("")}else return` ${a(i.gutter,I)}${p.length>0?` ${p}`:""}`}).join(`
8
8
  `);return r.message&&!c&&(v=`${" ".repeat(m+1)}${r.message}
9
- ${v}`),s?n.reset(v):v}function ha(e,t,r,s={}){if(!_n){_n=!0;let i="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";if(process.emitWarning)process.emitWarning(i,"DeprecationWarning");else{let a=new Error(i);a.name="DeprecationWarning",console.warn(new Error(i))}}return r=Math.max(r,0),Sn(e,{start:{column:r,line:t}},s)}});var Mn=g((vu,Cn)=>{"use strict";var{Duplex:da}=require("stream");function kn(e){e.emit("close")}function pa(){!this.destroyed&&this._writableState.finished&&this.destroy()}function On(e){this.removeListener("error",On),this.destroy(),this.listenerCount("error")===0&&this.emit("error",e)}function ga(e,t){let r=!0,s=new da({...t,autoDestroy:!1,emitClose:!1,objectMode:!1,writableObjectMode:!1});return e.on("message",function(i,a){let o=!a&&s._readableState.objectMode?i.toString():i;s.push(o)||e.pause()}),e.once("error",function(i){s.destroyed||(r=!1,s.destroy(i))}),e.once("close",function(){s.destroyed||s.push(null)}),s._destroy=function(n,i){if(e.readyState===e.CLOSED){i(n),process.nextTick(kn,s);return}let a=!1;e.once("error",function(u){a=!0,i(u)}),e.once("close",function(){a||i(n),process.nextTick(kn,s)}),r&&e.terminate()},s._final=function(n){if(e.readyState===e.CONNECTING){e.once("open",function(){s._final(n)});return}e._socket!==null&&(e._socket._writableState.finished?(n(),s._readableState.endEmitted&&s.destroy()):(e._socket.once("finish",function(){n()}),e.close()))},s._read=function(){e.isPaused&&e.resume()},s._write=function(n,i,a){if(e.readyState===e.CONNECTING){e.once("open",function(){s._write(n,i,a)});return}e.send(n,a)},s.on("end",pa),s.on("error",On),s}Cn.exports=ga});var U=g((bu,Rn)=>{"use strict";Rn.exports={BINARY_TYPES:["nodebuffer","arraybuffer","fragments"],EMPTY_BUFFER:Buffer.alloc(0),GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",kForOnEventAttribute:Symbol("kIsForOnEventAttribute"),kListener:Symbol("kListener"),kStatusCode:Symbol("status-code"),kWebSocket:Symbol("websocket"),NOOP:()=>{}}});var me=g((mu,Ve)=>{"use strict";var{EMPTY_BUFFER:va}=U(),xt=Buffer[Symbol.species];function ba(e,t){if(e.length===0)return va;if(e.length===1)return e[0];let r=Buffer.allocUnsafe(t),s=0;for(let n=0;n<e.length;n++){let i=e[n];r.set(i,s),s+=i.length}return s<t?new xt(r.buffer,r.byteOffset,s):r}function Tn(e,t,r,s,n){for(let i=0;i<n;i++)r[s+i]=e[i]^t[i&3]}function Pn(e,t){for(let r=0;r<e.length;r++)e[r]^=t[r&3]}function ma(e){return e.length===e.buffer.byteLength?e.buffer:e.buffer.slice(e.byteOffset,e.byteOffset+e.length)}function St(e){if(St.readOnly=!0,Buffer.isBuffer(e))return e;let t;return e instanceof ArrayBuffer?t=new xt(e):ArrayBuffer.isView(e)?t=new xt(e.buffer,e.byteOffset,e.byteLength):(t=Buffer.from(e),St.readOnly=!1),t}Ve.exports={concat:ba,mask:Tn,toArrayBuffer:ma,toBuffer:St,unmask:Pn};if(!process.env.WS_NO_BUFFER_UTIL)try{let e=require("bufferutil");Ve.exports.mask=function(t,r,s,n,i){i<48?Tn(t,r,s,n,i):e.mask(t,r,s,n,i)},Ve.exports.unmask=function(t,r){t.length<32?Pn(t,r):e.unmask(t,r)}}catch{}});var Bn=g((yu,Nn)=>{"use strict";var Ln=Symbol("kDone"),Et=Symbol("kRun"),kt=class{constructor(t){this[Ln]=()=>{this.pending--,this[Et]()},this.concurrency=t||1/0,this.jobs=[],this.pending=0}add(t){this.jobs.push(t),this[Et]()}[Et](){if(this.pending!==this.concurrency&&this.jobs.length){let t=this.jobs.shift();this.pending++,t(this[Ln])}}};Nn.exports=kt});var we=g((_u,Fn)=>{"use strict";var ye=require("zlib"),In=me(),ya=Bn(),{kStatusCode:jn}=U(),_a=Buffer[Symbol.species],wa=Buffer.from([0,0,255,255]),He=Symbol("permessage-deflate"),F=Symbol("total-length"),_e=Symbol("callback"),D=Symbol("buffers"),Ye=Symbol("error"),ze,Ot=class{constructor(t,r,s){if(this._maxPayload=s|0,this._options=t||{},this._threshold=this._options.threshold!==void 0?this._options.threshold:1024,this._isServer=!!r,this._deflate=null,this._inflate=null,this.params=null,!ze){let n=this._options.concurrencyLimit!==void 0?this._options.concurrencyLimit:10;ze=new ya(n)}}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[_e];this._deflate.close(),this._deflate=null,t&&t(new Error("The deflate stream was closed while data was being processed"))}}acceptAsServer(t){let r=this._options,s=t.find(n=>!(r.serverNoContextTakeover===!1&&n.server_no_context_takeover||n.server_max_window_bits&&(r.serverMaxWindowBits===!1||typeof r.serverMaxWindowBits=="number"&&r.serverMaxWindowBits>n.server_max_window_bits)||typeof r.clientMaxWindowBits=="number"&&!n.client_max_window_bits));if(!s)throw new Error("None of the extension offers can be accepted");return r.serverNoContextTakeover&&(s.server_no_context_takeover=!0),r.clientNoContextTakeover&&(s.client_no_context_takeover=!0),typeof r.serverMaxWindowBits=="number"&&(s.server_max_window_bits=r.serverMaxWindowBits),typeof r.clientMaxWindowBits=="number"?s.client_max_window_bits=r.clientMaxWindowBits:(s.client_max_window_bits===!0||r.clientMaxWindowBits===!1)&&delete s.client_max_window_bits,s}acceptAsClient(t){let r=t[0];if(this._options.clientNoContextTakeover===!1&&r.client_no_context_takeover)throw new Error('Unexpected parameter "client_no_context_takeover"');if(!r.client_max_window_bits)typeof this._options.clientMaxWindowBits=="number"&&(r.client_max_window_bits=this._options.clientMaxWindowBits);else if(this._options.clientMaxWindowBits===!1||typeof this._options.clientMaxWindowBits=="number"&&r.client_max_window_bits>this._options.clientMaxWindowBits)throw new Error('Unexpected or invalid parameter "client_max_window_bits"');return r}normalizeParams(t){return t.forEach(r=>{Object.keys(r).forEach(s=>{let n=r[s];if(n.length>1)throw new Error(`Parameter "${s}" must have only a single value`);if(n=n[0],s==="client_max_window_bits"){if(n!==!0){let i=+n;if(!Number.isInteger(i)||i<8||i>15)throw new TypeError(`Invalid value for parameter "${s}": ${n}`);n=i}else if(!this._isServer)throw new TypeError(`Invalid value for parameter "${s}": ${n}`)}else if(s==="server_max_window_bits"){let i=+n;if(!Number.isInteger(i)||i<8||i>15)throw new TypeError(`Invalid value for parameter "${s}": ${n}`);n=i}else if(s==="client_no_context_takeover"||s==="server_no_context_takeover"){if(n!==!0)throw new TypeError(`Invalid value for parameter "${s}": ${n}`)}else throw new Error(`Unknown parameter "${s}"`);r[s]=n})}),t}decompress(t,r,s){ze.add(n=>{this._decompress(t,r,(i,a)=>{n(),s(i,a)})})}compress(t,r,s){ze.add(n=>{this._compress(t,r,(i,a)=>{n(),s(i,a)})})}_decompress(t,r,s){let n=this._isServer?"client":"server";if(!this._inflate){let i=`${n}_max_window_bits`,a=typeof this.params[i]!="number"?ye.Z_DEFAULT_WINDOWBITS:this.params[i];this._inflate=ye.createInflateRaw({...this._options.zlibInflateOptions,windowBits:a}),this._inflate[He]=this,this._inflate[F]=0,this._inflate[D]=[],this._inflate.on("error",Sa),this._inflate.on("data",An)}this._inflate[_e]=s,this._inflate.write(t),r&&this._inflate.write(wa),this._inflate.flush(()=>{let i=this._inflate[Ye];if(i){this._inflate.close(),this._inflate=null,s(i);return}let a=In.concat(this._inflate[D],this._inflate[F]);this._inflate._readableState.endEmitted?(this._inflate.close(),this._inflate=null):(this._inflate[F]=0,this._inflate[D]=[],r&&this.params[`${n}_no_context_takeover`]&&this._inflate.reset()),s(null,a)})}_compress(t,r,s){let n=this._isServer?"server":"client";if(!this._deflate){let i=`${n}_max_window_bits`,a=typeof this.params[i]!="number"?ye.Z_DEFAULT_WINDOWBITS:this.params[i];this._deflate=ye.createDeflateRaw({...this._options.zlibDeflateOptions,windowBits:a}),this._deflate[F]=0,this._deflate[D]=[],this._deflate.on("data",xa)}this._deflate[_e]=s,this._deflate.write(t),this._deflate.flush(ye.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let i=In.concat(this._deflate[D],this._deflate[F]);r&&(i=new _a(i.buffer,i.byteOffset,i.length-4)),this._deflate[_e]=null,this._deflate[F]=0,this._deflate[D]=[],r&&this.params[`${n}_no_context_takeover`]&&this._deflate.reset(),s(null,i)})}};Fn.exports=Ot;function xa(e){this[D].push(e),this[F]+=e.length}function An(e){if(this[F]+=e.length,this[He]._maxPayload<1||this[F]<=this[He]._maxPayload){this[D].push(e);return}this[Ye]=new RangeError("Max payload size exceeded"),this[Ye].code="WS_ERR_UNSUPPORTED_MESSAGE_LENGTH",this[Ye][jn]=1009,this.removeListener("data",An),this.reset()}function Sa(e){this[He]._inflate=null,e[jn]=1007,this[_e](e)}});var xe=g((wu,Ke)=>{"use strict";var{isUtf8:$n}=require("buffer"),Ea=[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 ka(e){return e>=1e3&&e<=1014&&e!==1004&&e!==1005&&e!==1006||e>=3e3&&e<=4999}function Ct(e){let t=e.length,r=0;for(;r<t;)if(!(e[r]&128))r++;else if((e[r]&224)===192){if(r+1===t||(e[r+1]&192)!==128||(e[r]&254)===192)return!1;r+=2}else if((e[r]&240)===224){if(r+2>=t||(e[r+1]&192)!==128||(e[r+2]&192)!==128||e[r]===224&&(e[r+1]&224)===128||e[r]===237&&(e[r+1]&224)===160)return!1;r+=3}else if((e[r]&248)===240){if(r+3>=t||(e[r+1]&192)!==128||(e[r+2]&192)!==128||(e[r+3]&192)!==128||e[r]===240&&(e[r+1]&240)===128||e[r]===244&&e[r+1]>143||e[r]>244)return!1;r+=4}else return!1;return!0}Ke.exports={isValidStatusCode:ka,isValidUTF8:Ct,tokenChars:Ea};if($n)Ke.exports.isValidUTF8=function(e){return e.length<24?Ct(e):$n(e)};else if(!process.env.WS_NO_UTF_8_VALIDATE)try{let e=require("utf-8-validate");Ke.exports.isValidUTF8=function(t){return t.length<32?Ct(t):e(t)}}catch{}});var Lt=g((xu,zn)=>{"use strict";var{Writable:Oa}=require("stream"),Wn=we(),{BINARY_TYPES:Ca,EMPTY_BUFFER:qn,kStatusCode:Ma,kWebSocket:Ra}=U(),{concat:Mt,toArrayBuffer:Ta,unmask:Pa}=me(),{isValidStatusCode:La,isValidUTF8:Un}=xe(),Xe=Buffer[Symbol.species],Na=Promise.resolve(),Rt=typeof queueMicrotask=="function"?queueMicrotask:Ba,P=0,Dn=1,Gn=2,Vn=3,Tt=4,Ze=5,Je=6,Pt=class extends Oa{constructor(t={}){super(),this._allowSynchronousEvents=!!t.allowSynchronousEvents,this._binaryType=t.binaryType||Ca[0],this._extensions=t.extensions||{},this._isServer=!!t.isServer,this._maxPayload=t.maxPayload|0,this._skipUTF8Validation=!!t.skipUTF8Validation,this[Ra]=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=P}_write(t,r,s){if(this._opcode===8&&this._state==P)return s();this._bufferedBytes+=t.length,this._buffers.push(t),this.startLoop(s)}consume(t){if(this._bufferedBytes-=t,t===this._buffers[0].length)return this._buffers.shift();if(t<this._buffers[0].length){let s=this._buffers[0];return this._buffers[0]=new Xe(s.buffer,s.byteOffset+t,s.length-t),new Xe(s.buffer,s.byteOffset,t)}let r=Buffer.allocUnsafe(t);do{let s=this._buffers[0],n=r.length-t;t>=s.length?r.set(this._buffers.shift(),n):(r.set(new Uint8Array(s.buffer,s.byteOffset,t),n),this._buffers[0]=new Xe(s.buffer,s.byteOffset+t,s.length-t)),t-=s.length}while(t>0);return r}startLoop(t){this._loop=!0;do switch(this._state){case P:this.getInfo(t);break;case Dn:this.getPayloadLength16(t);break;case Gn:this.getPayloadLength64(t);break;case Vn:this.getMask();break;case Tt:this.getData(t);break;case Ze:case Je:this._loop=!1;return}while(this._loop);this._errored||t()}getInfo(t){if(this._bufferedBytes<2){this._loop=!1;return}let r=this.consume(2);if(r[0]&48){let n=this.createError(RangeError,"RSV2 and RSV3 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_2_3");t(n);return}let s=(r[0]&64)===64;if(s&&!this._extensions[Wn.extensionName]){let n=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");t(n);return}if(this._fin=(r[0]&128)===128,this._opcode=r[0]&15,this._payloadLength=r[1]&127,this._opcode===0){if(s){let n=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");t(n);return}if(!this._fragmented){let n=this.createError(RangeError,"invalid opcode 0",!0,1002,"WS_ERR_INVALID_OPCODE");t(n);return}this._opcode=this._fragmented}else if(this._opcode===1||this._opcode===2){if(this._fragmented){let n=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");t(n);return}this._compressed=s}else if(this._opcode>7&&this._opcode<11){if(!this._fin){let n=this.createError(RangeError,"FIN must be set",!0,1002,"WS_ERR_EXPECTED_FIN");t(n);return}if(s){let n=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");t(n);return}if(this._payloadLength>125||this._opcode===8&&this._payloadLength===1){let n=this.createError(RangeError,`invalid payload length ${this._payloadLength}`,!0,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH");t(n);return}}else{let n=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");t(n);return}if(!this._fin&&!this._fragmented&&(this._fragmented=this._opcode),this._masked=(r[1]&128)===128,this._isServer){if(!this._masked){let n=this.createError(RangeError,"MASK must be set",!0,1002,"WS_ERR_EXPECTED_MASK");t(n);return}}else if(this._masked){let n=this.createError(RangeError,"MASK must be clear",!0,1002,"WS_ERR_UNEXPECTED_MASK");t(n);return}this._payloadLength===126?this._state=Dn:this._payloadLength===127?this._state=Gn: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 r=this.consume(8),s=r.readUInt32BE(0);if(s>Math.pow(2,21)-1){let n=this.createError(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009,"WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH");t(n);return}this._payloadLength=s*Math.pow(2,32)+r.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 r=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");t(r);return}this._masked?this._state=Vn:this._state=Tt}getMask(){if(this._bufferedBytes<4){this._loop=!1;return}this._mask=this.consume(4),this._state=Tt}getData(t){let r=qn;if(this._payloadLength){if(this._bufferedBytes<this._payloadLength){this._loop=!1;return}r=this.consume(this._payloadLength),this._masked&&this._mask[0]|this._mask[1]|this._mask[2]|this._mask[3]&&Pa(r,this._mask)}if(this._opcode>7){this.controlMessage(r,t);return}if(this._compressed){this._state=Ze,this.decompress(r,t);return}r.length&&(this._messageLength=this._totalPayloadLength,this._fragments.push(r)),this.dataMessage(t)}decompress(t,r){this._extensions[Wn.extensionName].decompress(t,this._fin,(n,i)=>{if(n)return r(n);if(i.length){if(this._messageLength+=i.length,this._messageLength>this._maxPayload&&this._maxPayload>0){let a=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");r(a);return}this._fragments.push(i)}this.dataMessage(r),this._state===P&&this.startLoop(r)})}dataMessage(t){if(!this._fin){this._state=P;return}let r=this._messageLength,s=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._fragments=[],this._opcode===2){let n;this._binaryType==="nodebuffer"?n=Mt(s,r):this._binaryType==="arraybuffer"?n=Ta(Mt(s,r)):n=s,this._state===Ze||this._allowSynchronousEvents?(this.emit("message",n,!0),this._state=P):(this._state=Je,Rt(()=>{this.emit("message",n,!0),this._state=P,this.startLoop(t)}))}else{let n=Mt(s,r);if(!this._skipUTF8Validation&&!Un(n)){let i=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");t(i);return}this._state===Ze||this._allowSynchronousEvents?(this.emit("message",n,!1),this._state=P):(this._state=Je,Rt(()=>{this.emit("message",n,!1),this._state=P,this.startLoop(t)}))}}controlMessage(t,r){if(this._opcode===8){if(t.length===0)this._loop=!1,this.emit("conclude",1005,qn),this.end();else{let s=t.readUInt16BE(0);if(!La(s)){let i=this.createError(RangeError,`invalid status code ${s}`,!0,1002,"WS_ERR_INVALID_CLOSE_CODE");r(i);return}let n=new Xe(t.buffer,t.byteOffset+2,t.length-2);if(!this._skipUTF8Validation&&!Un(n)){let i=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");r(i);return}this._loop=!1,this.emit("conclude",s,n),this.end()}this._state=P;return}this._allowSynchronousEvents?(this.emit(this._opcode===9?"ping":"pong",t),this._state=P):(this._state=Je,Rt(()=>{this.emit(this._opcode===9?"ping":"pong",t),this._state=P,this.startLoop(r)}))}createError(t,r,s,n,i){this._loop=!1,this._errored=!0;let a=new t(s?`Invalid WebSocket frame: ${r}`:r);return Error.captureStackTrace(a,this.createError),a.code=i,a[Ma]=n,a}};zn.exports=Pt;function Ba(e){Na.then(e).catch(ja)}function Ia(e){throw e}function ja(e){process.nextTick(Ia,e)}});var Bt=g((Eu,Kn)=>{"use strict";var{Duplex:Su}=require("stream"),{randomFillSync:Aa}=require("crypto"),Yn=we(),{EMPTY_BUFFER:Fa}=U(),{isValidStatusCode:$a}=xe(),{mask:Hn,toBuffer:oe}=me(),B=Symbol("kByteLength"),Wa=Buffer.alloc(4),Nt=class e{constructor(t,r,s){this._extensions=r||{},s&&(this._generateMask=s,this._maskBuffer=Buffer.alloc(4)),this._socket=t,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._deflating=!1,this._queue=[]}static frame(t,r){let s,n=!1,i=2,a=!1;r.mask&&(s=r.maskBuffer||Wa,r.generateMask?r.generateMask(s):Aa(s,0,4),a=(s[0]|s[1]|s[2]|s[3])===0,i=6);let o;typeof t=="string"?(!r.mask||a)&&r[B]!==void 0?o=r[B]:(t=Buffer.from(t),o=t.length):(o=t.length,n=r.mask&&r.readOnly&&!a);let u=o;o>=65536?(i+=8,u=127):o>125&&(i+=2,u=126);let l=Buffer.allocUnsafe(n?o+i:i);return l[0]=r.fin?r.opcode|128:r.opcode,r.rsv1&&(l[0]|=64),l[1]=u,u===126?l.writeUInt16BE(o,2):u===127&&(l[2]=l[3]=0,l.writeUIntBE(o,4,6)),r.mask?(l[1]|=128,l[i-4]=s[0],l[i-3]=s[1],l[i-2]=s[2],l[i-1]=s[3],a?[l,t]:n?(Hn(t,s,l,i,o),[l]):(Hn(t,s,t,0,o),[l,t])):[l,t]}close(t,r,s,n){let i;if(t===void 0)i=Fa;else{if(typeof t!="number"||!$a(t))throw new TypeError("First argument must be a valid error code number");if(r===void 0||!r.length)i=Buffer.allocUnsafe(2),i.writeUInt16BE(t,0);else{let o=Buffer.byteLength(r);if(o>123)throw new RangeError("The message must not be greater than 123 bytes");i=Buffer.allocUnsafe(2+o),i.writeUInt16BE(t,0),typeof r=="string"?i.write(r,2):i.set(r,2)}}let a={[B]:i.length,fin:!0,generateMask:this._generateMask,mask:s,maskBuffer:this._maskBuffer,opcode:8,readOnly:!1,rsv1:!1};this._deflating?this.enqueue([this.dispatch,i,!1,a,n]):this.sendFrame(e.frame(i,a),n)}ping(t,r,s){let n,i;if(typeof t=="string"?(n=Buffer.byteLength(t),i=!1):(t=oe(t),n=t.length,i=oe.readOnly),n>125)throw new RangeError("The data size must not be greater than 125 bytes");let a={[B]:n,fin:!0,generateMask:this._generateMask,mask:r,maskBuffer:this._maskBuffer,opcode:9,readOnly:i,rsv1:!1};this._deflating?this.enqueue([this.dispatch,t,!1,a,s]):this.sendFrame(e.frame(t,a),s)}pong(t,r,s){let n,i;if(typeof t=="string"?(n=Buffer.byteLength(t),i=!1):(t=oe(t),n=t.length,i=oe.readOnly),n>125)throw new RangeError("The data size must not be greater than 125 bytes");let a={[B]:n,fin:!0,generateMask:this._generateMask,mask:r,maskBuffer:this._maskBuffer,opcode:10,readOnly:i,rsv1:!1};this._deflating?this.enqueue([this.dispatch,t,!1,a,s]):this.sendFrame(e.frame(t,a),s)}send(t,r,s){let n=this._extensions[Yn.extensionName],i=r.binary?2:1,a=r.compress,o,u;if(typeof t=="string"?(o=Buffer.byteLength(t),u=!1):(t=oe(t),o=t.length,u=oe.readOnly),this._firstFragment?(this._firstFragment=!1,a&&n&&n.params[n._isServer?"server_no_context_takeover":"client_no_context_takeover"]&&(a=o>=n._threshold),this._compress=a):(a=!1,i=0),r.fin&&(this._firstFragment=!0),n){let l={[B]:o,fin:r.fin,generateMask:this._generateMask,mask:r.mask,maskBuffer:this._maskBuffer,opcode:i,readOnly:u,rsv1:a};this._deflating?this.enqueue([this.dispatch,t,this._compress,l,s]):this.dispatch(t,this._compress,l,s)}else this.sendFrame(e.frame(t,{[B]:o,fin:r.fin,generateMask:this._generateMask,mask:r.mask,maskBuffer:this._maskBuffer,opcode:i,readOnly:u,rsv1:!1}),s)}dispatch(t,r,s,n){if(!r){this.sendFrame(e.frame(t,s),n);return}let i=this._extensions[Yn.extensionName];this._bufferedBytes+=s[B],this._deflating=!0,i.compress(t,s.fin,(a,o)=>{if(this._socket.destroyed){let u=new Error("The socket was closed while data was being compressed");typeof n=="function"&&n(u);for(let l=0;l<this._queue.length;l++){let f=this._queue[l],c=f[f.length-1];typeof c=="function"&&c(u)}return}this._bufferedBytes-=s[B],this._deflating=!1,s.readOnly=!1,this.sendFrame(e.frame(o,s),n),this.dequeue()})}dequeue(){for(;!this._deflating&&this._queue.length;){let t=this._queue.shift();this._bufferedBytes-=t[3][B],Reflect.apply(t[0],this,t.slice(1))}}enqueue(t){this._bufferedBytes+=t[3][B],this._queue.push(t)}sendFrame(t,r){t.length===2?(this._socket.cork(),this._socket.write(t[0]),this._socket.write(t[1],r),this._socket.uncork()):this._socket.write(t[0],r)}};Kn.exports=Nt});var ss=g((ku,ns)=>{"use strict";var{kForOnEventAttribute:Se,kListener:It}=U(),Xn=Symbol("kCode"),Zn=Symbol("kData"),Jn=Symbol("kError"),Qn=Symbol("kMessage"),es=Symbol("kReason"),ue=Symbol("kTarget"),ts=Symbol("kType"),rs=Symbol("kWasClean"),$=class{constructor(t){this[ue]=null,this[ts]=t}get target(){return this[ue]}get type(){return this[ts]}};Object.defineProperty($.prototype,"target",{enumerable:!0});Object.defineProperty($.prototype,"type",{enumerable:!0});var X=class extends ${constructor(t,r={}){super(t),this[Xn]=r.code===void 0?0:r.code,this[es]=r.reason===void 0?"":r.reason,this[rs]=r.wasClean===void 0?!1:r.wasClean}get code(){return this[Xn]}get reason(){return this[es]}get wasClean(){return this[rs]}};Object.defineProperty(X.prototype,"code",{enumerable:!0});Object.defineProperty(X.prototype,"reason",{enumerable:!0});Object.defineProperty(X.prototype,"wasClean",{enumerable:!0});var le=class extends ${constructor(t,r={}){super(t),this[Jn]=r.error===void 0?null:r.error,this[Qn]=r.message===void 0?"":r.message}get error(){return this[Jn]}get message(){return this[Qn]}};Object.defineProperty(le.prototype,"error",{enumerable:!0});Object.defineProperty(le.prototype,"message",{enumerable:!0});var Ee=class extends ${constructor(t,r={}){super(t),this[Zn]=r.data===void 0?null:r.data}get data(){return this[Zn]}};Object.defineProperty(Ee.prototype,"data",{enumerable:!0});var qa={addEventListener(e,t,r={}){for(let n of this.listeners(e))if(!r[Se]&&n[It]===t&&!n[Se])return;let s;if(e==="message")s=function(i,a){let o=new Ee("message",{data:a?i:i.toString()});o[ue]=this,Qe(t,this,o)};else if(e==="close")s=function(i,a){let o=new X("close",{code:i,reason:a.toString(),wasClean:this._closeFrameReceived&&this._closeFrameSent});o[ue]=this,Qe(t,this,o)};else if(e==="error")s=function(i){let a=new le("error",{error:i,message:i.message});a[ue]=this,Qe(t,this,a)};else if(e==="open")s=function(){let i=new $("open");i[ue]=this,Qe(t,this,i)};else return;s[Se]=!!r[Se],s[It]=t,r.once?this.once(e,s):this.on(e,s)},removeEventListener(e,t){for(let r of this.listeners(e))if(r[It]===t&&!r[Se]){this.removeListener(e,r);break}}};ns.exports={CloseEvent:X,ErrorEvent:le,Event:$,EventTarget:qa,MessageEvent:Ee};function Qe(e,t,r){typeof e=="object"&&e.handleEvent?e.handleEvent.call(e,r):e.call(t,r)}});var jt=g((Ou,is)=>{"use strict";var{tokenChars:ke}=xe();function A(e,t,r){e[t]===void 0?e[t]=[r]:e[t].push(r)}function Ua(e){let t=Object.create(null),r=Object.create(null),s=!1,n=!1,i=!1,a,o,u=-1,l=-1,f=-1,c=0;for(;c<e.length;c++)if(l=e.charCodeAt(c),a===void 0)if(f===-1&&ke[l]===1)u===-1&&(u=c);else if(c!==0&&(l===32||l===9))f===-1&&u!==-1&&(f=c);else if(l===59||l===44){if(u===-1)throw new SyntaxError(`Unexpected character at index ${c}`);f===-1&&(f=c);let _=e.slice(u,f);l===44?(A(t,_,r),r=Object.create(null)):a=_,u=f=-1}else throw new SyntaxError(`Unexpected character at index ${c}`);else if(o===void 0)if(f===-1&&ke[l]===1)u===-1&&(u=c);else if(l===32||l===9)f===-1&&u!==-1&&(f=c);else if(l===59||l===44){if(u===-1)throw new SyntaxError(`Unexpected character at index ${c}`);f===-1&&(f=c),A(r,e.slice(u,f),!0),l===44&&(A(t,a,r),r=Object.create(null),a=void 0),u=f=-1}else if(l===61&&u!==-1&&f===-1)o=e.slice(u,c),u=f=-1;else throw new SyntaxError(`Unexpected character at index ${c}`);else if(n){if(ke[l]!==1)throw new SyntaxError(`Unexpected character at index ${c}`);u===-1?u=c:s||(s=!0),n=!1}else if(i)if(ke[l]===1)u===-1&&(u=c);else if(l===34&&u!==-1)i=!1,f=c;else if(l===92)n=!0;else throw new SyntaxError(`Unexpected character at index ${c}`);else if(l===34&&e.charCodeAt(c-1)===61)i=!0;else if(f===-1&&ke[l]===1)u===-1&&(u=c);else if(u!==-1&&(l===32||l===9))f===-1&&(f=c);else if(l===59||l===44){if(u===-1)throw new SyntaxError(`Unexpected character at index ${c}`);f===-1&&(f=c);let _=e.slice(u,f);s&&(_=_.replace(/\\/g,""),s=!1),A(r,o,_),l===44&&(A(t,a,r),r=Object.create(null),a=void 0),o=void 0,u=f=-1}else throw new SyntaxError(`Unexpected character at index ${c}`);if(u===-1||i||l===32||l===9)throw new SyntaxError("Unexpected end of input");f===-1&&(f=c);let m=e.slice(u,f);return a===void 0?A(t,m,r):(o===void 0?A(r,m,!0):s?A(r,o,m.replace(/\\/g,"")):A(r,o,m),A(t,a,r)),t}function Da(e){return Object.keys(e).map(t=>{let r=e[t];return Array.isArray(r)||(r=[r]),r.map(s=>[t].concat(Object.keys(s).map(n=>{let i=s[n];return Array.isArray(i)||(i=[i]),i.map(a=>a===!0?n:`${n}=${a}`).join("; ")})).join("; ")).join(", ")}).join(", ")}is.exports={format:Da,parse:Ua}});var qt=g((Ru,vs)=>{"use strict";var Ga=require("events"),Va=require("https"),za=require("http"),us=require("net"),Ya=require("tls"),{randomBytes:Ha,createHash:Ka}=require("crypto"),{Duplex:Cu,Readable:Mu}=require("stream"),{URL:At}=require("url"),G=we(),Xa=Lt(),Za=Bt(),{BINARY_TYPES:as,EMPTY_BUFFER:et,GUID:Ja,kForOnEventAttribute:Ft,kListener:Qa,kStatusCode:eo,kWebSocket:O,NOOP:ls}=U(),{EventTarget:{addEventListener:to,removeEventListener:ro}}=ss(),{format:no,parse:so}=jt(),{toBuffer:io}=me(),ao=30*1e3,cs=Symbol("kAborted"),$t=[8,13],W=["CONNECTING","OPEN","CLOSING","CLOSED"],oo=/^[!#$%&'*+\-.0-9A-Z^_`|a-z~]+$/,w=class e extends Ga{constructor(t,r,s){super(),this._binaryType=as[0],this._closeCode=1006,this._closeFrameReceived=!1,this._closeFrameSent=!1,this._closeMessage=et,this._closeTimer=null,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,r===void 0?r=[]:Array.isArray(r)||(typeof r=="object"&&r!==null?(s=r,r=[]):r=[r]),fs(this,t,r,s)):(this._autoPong=s.autoPong,this._isServer=!0)}get binaryType(){return this._binaryType}set binaryType(t){as.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,r,s){let n=new Xa({allowSynchronousEvents:s.allowSynchronousEvents,binaryType:this.binaryType,extensions:this._extensions,isServer:this._isServer,maxPayload:s.maxPayload,skipUTF8Validation:s.skipUTF8Validation});this._sender=new Za(t,this._extensions,s.generateMask),this._receiver=n,this._socket=t,n[O]=this,t[O]=this,n.on("conclude",co),n.on("drain",fo),n.on("error",ho),n.on("message",po),n.on("ping",go),n.on("pong",vo),t.setTimeout&&t.setTimeout(0),t.setNoDelay&&t.setNoDelay(),r.length>0&&t.unshift(r),t.on("close",ds),t.on("data",rt),t.on("end",ps),t.on("error",gs),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[G.extensionName]&&this._extensions[G.extensionName].cleanup(),this._receiver.removeAllListeners(),this._readyState=e.CLOSED,this.emit("close",this._closeCode,this._closeMessage)}close(t,r){if(this.readyState!==e.CLOSED){if(this.readyState===e.CONNECTING){let s="WebSocket was closed before the connection was established";R(this,this._req,s);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,r,!this._isServer,s=>{s||(this._closeFrameSent=!0,(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end())}),this._closeTimer=setTimeout(this._socket.destroy.bind(this._socket),ao)}}pause(){this.readyState===e.CONNECTING||this.readyState===e.CLOSED||(this._paused=!0,this._socket.pause())}ping(t,r,s){if(this.readyState===e.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof t=="function"?(s=t,t=r=void 0):typeof r=="function"&&(s=r,r=void 0),typeof t=="number"&&(t=t.toString()),this.readyState!==e.OPEN){Wt(this,t,s);return}r===void 0&&(r=!this._isServer),this._sender.ping(t||et,r,s)}pong(t,r,s){if(this.readyState===e.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof t=="function"?(s=t,t=r=void 0):typeof r=="function"&&(s=r,r=void 0),typeof t=="number"&&(t=t.toString()),this.readyState!==e.OPEN){Wt(this,t,s);return}r===void 0&&(r=!this._isServer),this._sender.pong(t||et,r,s)}resume(){this.readyState===e.CONNECTING||this.readyState===e.CLOSED||(this._paused=!1,this._receiver._writableState.needDrain||this._socket.resume())}send(t,r,s){if(this.readyState===e.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof r=="function"&&(s=r,r={}),typeof t=="number"&&(t=t.toString()),this.readyState!==e.OPEN){Wt(this,t,s);return}let n={binary:typeof t!="string",mask:!this._isServer,compress:!0,fin:!0,...r};this._extensions[G.extensionName]||(n.compress=!1),this._sender.send(t||et,n,s)}terminate(){if(this.readyState!==e.CLOSED){if(this.readyState===e.CONNECTING){let t="WebSocket was closed before the connection was established";R(this,this._req,t);return}this._socket&&(this._readyState=e.CLOSING,this._socket.destroy())}}};Object.defineProperty(w,"CONNECTING",{enumerable:!0,value:W.indexOf("CONNECTING")});Object.defineProperty(w.prototype,"CONNECTING",{enumerable:!0,value:W.indexOf("CONNECTING")});Object.defineProperty(w,"OPEN",{enumerable:!0,value:W.indexOf("OPEN")});Object.defineProperty(w.prototype,"OPEN",{enumerable:!0,value:W.indexOf("OPEN")});Object.defineProperty(w,"CLOSING",{enumerable:!0,value:W.indexOf("CLOSING")});Object.defineProperty(w.prototype,"CLOSING",{enumerable:!0,value:W.indexOf("CLOSING")});Object.defineProperty(w,"CLOSED",{enumerable:!0,value:W.indexOf("CLOSED")});Object.defineProperty(w.prototype,"CLOSED",{enumerable:!0,value:W.indexOf("CLOSED")});["binaryType","bufferedAmount","extensions","isPaused","protocol","readyState","url"].forEach(e=>{Object.defineProperty(w.prototype,e,{enumerable:!0})});["open","error","close","message"].forEach(e=>{Object.defineProperty(w.prototype,`on${e}`,{enumerable:!0,get(){for(let t of this.listeners(e))if(t[Ft])return t[Qa];return null},set(t){for(let r of this.listeners(e))if(r[Ft]){this.removeListener(e,r);break}typeof t=="function"&&this.addEventListener(e,t,{[Ft]:!0})}})});w.prototype.addEventListener=to;w.prototype.removeEventListener=ro;vs.exports=w;function fs(e,t,r,s){let n={allowSynchronousEvents:!1,autoPong:!0,protocolVersion:$t[1],maxPayload:104857600,skipUTF8Validation:!1,perMessageDeflate:!0,followRedirects:!1,maxRedirects:10,...s,createConnection:void 0,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=n.autoPong,!$t.includes(n.protocolVersion))throw new RangeError(`Unsupported protocol version: ${n.protocolVersion} (supported versions: ${$t.join(", ")})`);let i;if(t instanceof At)i=t;else try{i=new At(t)}catch{throw new SyntaxError(`Invalid URL: ${t}`)}i.protocol==="http:"?i.protocol="ws:":i.protocol==="https:"&&(i.protocol="wss:"),e._url=i.href;let a=i.protocol==="wss:",o=i.protocol==="ws+unix:",u;if(i.protocol!=="ws:"&&!a&&!o?u=`The URL's protocol must be one of "ws:", "wss:", "http:", "https", or "ws+unix:"`:o&&!i.pathname?u="The URL's pathname is empty":i.hash&&(u="The URL contains a fragment identifier"),u){let p=new SyntaxError(u);if(e._redirects===0)throw p;tt(e,p);return}let l=a?443:80,f=Ha(16).toString("base64"),c=a?Va.request:za.request,m=new Set,_;if(n.createConnection=a?lo:uo,n.defaultPort=n.defaultPort||l,n.port=i.port||l,n.host=i.hostname.startsWith("[")?i.hostname.slice(1,-1):i.hostname,n.headers={...n.headers,"Sec-WebSocket-Version":n.protocolVersion,"Sec-WebSocket-Key":f,Connection:"Upgrade",Upgrade:"websocket"},n.path=i.pathname+i.search,n.timeout=n.handshakeTimeout,n.perMessageDeflate&&(_=new G(n.perMessageDeflate!==!0?n.perMessageDeflate:{},!1,n.maxPayload),n.headers["Sec-WebSocket-Extensions"]=no({[G.extensionName]:_.offer()})),r.length){for(let p of r){if(typeof p!="string"||!oo.test(p)||m.has(p))throw new SyntaxError("An invalid or duplicated subprotocol was specified");m.add(p)}n.headers["Sec-WebSocket-Protocol"]=r.join(",")}if(n.origin&&(n.protocolVersion<13?n.headers["Sec-WebSocket-Origin"]=n.origin:n.headers.Origin=n.origin),(i.username||i.password)&&(n.auth=`${i.username}:${i.password}`),o){let p=n.path.split(":");n.socketPath=p[0],n.path=p[1]}let v;if(n.followRedirects){if(e._redirects===0){e._originalIpc=o,e._originalSecure=a,e._originalHostOrSocketPath=o?n.socketPath:i.host;let p=s&&s.headers;if(s={...s,headers:{}},p)for(let[b,y]of Object.entries(p))s.headers[b.toLowerCase()]=y}else if(e.listenerCount("redirect")===0){let p=o?e._originalIpc?n.socketPath===e._originalHostOrSocketPath:!1:e._originalIpc?!1:i.host===e._originalHostOrSocketPath;(!p||e._originalSecure&&!a)&&(delete n.headers.authorization,delete n.headers.cookie,p||delete n.headers.host,n.auth=void 0)}n.auth&&!s.headers.authorization&&(s.headers.authorization="Basic "+Buffer.from(n.auth).toString("base64")),v=e._req=c(n),e._redirects&&e.emit("redirect",e.url,v)}else v=e._req=c(n);n.timeout&&v.on("timeout",()=>{R(e,v,"Opening handshake has timed out")}),v.on("error",p=>{v===null||v[cs]||(v=e._req=null,tt(e,p))}),v.on("response",p=>{let b=p.headers.location,y=p.statusCode;if(b&&n.followRedirects&&y>=300&&y<400){if(++e._redirects>n.maxRedirects){R(e,v,"Maximum redirects exceeded");return}v.abort();let V;try{V=new At(b,t)}catch{let T=new SyntaxError(`Invalid URL: ${b}`);tt(e,T);return}fs(e,V,r,s)}else e.emit("unexpected-response",v,p)||R(e,v,`Unexpected server response: ${p.statusCode}`)}),v.on("upgrade",(p,b,y)=>{if(e.emit("upgrade",p),e.readyState!==w.CONNECTING)return;if(v=e._req=null,p.headers.upgrade.toLowerCase()!=="websocket"){R(e,b,"Invalid Upgrade header");return}let V=Ka("sha1").update(f+Ja).digest("base64");if(p.headers["sec-websocket-accept"]!==V){R(e,b,"Invalid Sec-WebSocket-Accept header");return}let I=p.headers["sec-websocket-protocol"],T;if(I!==void 0?m.size?m.has(I)||(T="Server sent an invalid subprotocol"):T="Server sent a subprotocol but none was requested":m.size&&(T="Server sent no subprotocol"),T){R(e,b,T);return}I&&(e._protocol=I);let Me=p.headers["sec-websocket-extensions"];if(Me!==void 0){if(!_){R(e,b,"Server sent a Sec-WebSocket-Extensions header but no extension was requested");return}let z;try{z=so(Me)}catch{R(e,b,"Invalid Sec-WebSocket-Extensions header");return}let Re=Object.keys(z);if(Re.length!==1||Re[0]!==G.extensionName){R(e,b,"Server indicated an extension that was not requested");return}try{_.accept(z[G.extensionName])}catch{R(e,b,"Invalid Sec-WebSocket-Extensions header");return}e._extensions[G.extensionName]=_}e.setSocket(b,y,{allowSynchronousEvents:n.allowSynchronousEvents,generateMask:n.generateMask,maxPayload:n.maxPayload,skipUTF8Validation:n.skipUTF8Validation})}),n.finishRequest?n.finishRequest(v,e):v.end()}function tt(e,t){e._readyState=w.CLOSING,e.emit("error",t),e.emitClose()}function uo(e){return e.path=e.socketPath,us.connect(e)}function lo(e){return e.path=void 0,!e.servername&&e.servername!==""&&(e.servername=us.isIP(e.host)?"":e.host),Ya.connect(e)}function R(e,t,r){e._readyState=w.CLOSING;let s=new Error(r);Error.captureStackTrace(s,R),t.setHeader?(t[cs]=!0,t.abort(),t.socket&&!t.socket.destroyed&&t.socket.destroy(),process.nextTick(tt,e,s)):(t.destroy(s),t.once("error",e.emit.bind(e,"error")),t.once("close",e.emitClose.bind(e)))}function Wt(e,t,r){if(t){let s=io(t).length;e._socket?e._sender._bufferedBytes+=s:e._bufferedAmount+=s}if(r){let s=new Error(`WebSocket is not open: readyState ${e.readyState} (${W[e.readyState]})`);process.nextTick(r,s)}}function co(e,t){let r=this[O];r._closeFrameReceived=!0,r._closeMessage=t,r._closeCode=e,r._socket[O]!==void 0&&(r._socket.removeListener("data",rt),process.nextTick(hs,r._socket),e===1005?r.close():r.close(e,t))}function fo(){let e=this[O];e.isPaused||e._socket.resume()}function ho(e){let t=this[O];t._socket[O]!==void 0&&(t._socket.removeListener("data",rt),process.nextTick(hs,t._socket),t.close(e[eo])),t.emit("error",e)}function os(){this[O].emitClose()}function po(e,t){this[O].emit("message",e,t)}function go(e){let t=this[O];t._autoPong&&t.pong(e,!this._isServer,ls),t.emit("ping",e)}function vo(e){this[O].emit("pong",e)}function hs(e){e.resume()}function ds(){let e=this[O];this.removeListener("close",ds),this.removeListener("data",rt),this.removeListener("end",ps),e._readyState=w.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[O]=void 0,clearTimeout(e._closeTimer),e._receiver._writableState.finished||e._receiver._writableState.errorEmitted?e.emitClose():(e._receiver.on("error",os),e._receiver.on("finish",os))}function rt(e){this[O]._receiver.write(e)||this.pause()}function ps(){let e=this[O];e._readyState=w.CLOSING,e._receiver.end(),this.end()}function gs(){let e=this[O];this.removeListener("error",gs),this.on("error",ls),e&&(e._readyState=w.CLOSING,this.destroy())}});var ms=g((Tu,bs)=>{"use strict";var{tokenChars:bo}=xe();function mo(e){let t=new Set,r=-1,s=-1,n=0;for(n;n<e.length;n++){let a=e.charCodeAt(n);if(s===-1&&bo[a]===1)r===-1&&(r=n);else if(n!==0&&(a===32||a===9))s===-1&&r!==-1&&(s=n);else if(a===44){if(r===-1)throw new SyntaxError(`Unexpected character at index ${n}`);s===-1&&(s=n);let o=e.slice(r,s);if(t.has(o))throw new SyntaxError(`The "${o}" subprotocol is duplicated`);t.add(o),r=s=-1}else throw new SyntaxError(`Unexpected character at index ${n}`)}if(r===-1||s!==-1)throw new SyntaxError("Unexpected end of input");let i=e.slice(r,n);if(t.has(i))throw new SyntaxError(`The "${i}" subprotocol is duplicated`);return t.add(i),t}bs.exports={parse:mo}});var ks=g((Lu,Es)=>{"use strict";var yo=require("events"),nt=require("http"),{Duplex:Pu}=require("stream"),{createHash:_o}=require("crypto"),ys=jt(),Z=we(),wo=ms(),xo=qt(),{GUID:So,kWebSocket:Eo}=U(),ko=/^[+/0-9A-Za-z]{22}==$/,_s=0,ws=1,Ss=2,Ut=class extends yo{constructor(t,r){if(super(),t={allowSynchronousEvents:!1,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:xo,...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=nt.createServer((s,n)=>{let i=nt.STATUS_CODES[426];n.writeHead(426,{"Content-Length":i.length,"Content-Type":"text/plain"}),n.end(i)}),this._server.listen(t.port,t.host,t.backlog,r)):t.server&&(this._server=t.server),this._server){let s=this.emit.bind(this,"connection");this._removeListeners=Oo(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(n,i,a)=>{this.handleUpgrade(n,i,a,s)}})}t.perMessageDeflate===!0&&(t.perMessageDeflate={}),t.clientTracking&&(this.clients=new Set,this._shouldEmitClose=!1),this.options=t,this._state=_s}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===Ss){t&&this.once("close",()=>{t(new Error("The server is not running"))}),process.nextTick(Oe,this);return}if(t&&this.once("close",t),this._state!==ws)if(this._state=ws,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(Oe,this):process.nextTick(Oe,this);else{let r=this._server;this._removeListeners(),this._removeListeners=this._server=null,r.close(()=>{Oe(this)})}}shouldHandle(t){if(this.options.path){let r=t.url.indexOf("?");if((r!==-1?t.url.slice(0,r):t.url)!==this.options.path)return!1}return!0}handleUpgrade(t,r,s,n){r.on("error",xs);let i=t.headers["sec-websocket-key"],a=+t.headers["sec-websocket-version"];if(t.method!=="GET"){J(this,t,r,405,"Invalid HTTP method");return}if(t.headers.upgrade.toLowerCase()!=="websocket"){J(this,t,r,400,"Invalid Upgrade header");return}if(!i||!ko.test(i)){J(this,t,r,400,"Missing or invalid Sec-WebSocket-Key header");return}if(a!==8&&a!==13){J(this,t,r,400,"Missing or invalid Sec-WebSocket-Version header");return}if(!this.shouldHandle(t)){Ce(r,400);return}let o=t.headers["sec-websocket-protocol"],u=new Set;if(o!==void 0)try{u=wo.parse(o)}catch{J(this,t,r,400,"Invalid Sec-WebSocket-Protocol header");return}let l=t.headers["sec-websocket-extensions"],f={};if(this.options.perMessageDeflate&&l!==void 0){let c=new Z(this.options.perMessageDeflate,!0,this.options.maxPayload);try{let m=ys.parse(l);m[Z.extensionName]&&(c.accept(m[Z.extensionName]),f[Z.extensionName]=c)}catch{J(this,t,r,400,"Invalid or unacceptable Sec-WebSocket-Extensions header");return}}if(this.options.verifyClient){let c={origin:t.headers[`${a===8?"sec-websocket-origin":"origin"}`],secure:!!(t.socket.authorized||t.socket.encrypted),req:t};if(this.options.verifyClient.length===2){this.options.verifyClient(c,(m,_,v,p)=>{if(!m)return Ce(r,_||401,v,p);this.completeUpgrade(f,i,u,t,r,s,n)});return}if(!this.options.verifyClient(c))return Ce(r,401)}this.completeUpgrade(f,i,u,t,r,s,n)}completeUpgrade(t,r,s,n,i,a,o){if(!i.readable||!i.writable)return i.destroy();if(i[Eo])throw new Error("server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration");if(this._state>_s)return Ce(i,503);let l=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade",`Sec-WebSocket-Accept: ${_o("sha1").update(r+So).digest("base64")}`],f=new this.options.WebSocket(null,void 0,this.options);if(s.size){let c=this.options.handleProtocols?this.options.handleProtocols(s,n):s.values().next().value;c&&(l.push(`Sec-WebSocket-Protocol: ${c}`),f._protocol=c)}if(t[Z.extensionName]){let c=t[Z.extensionName].params,m=ys.format({[Z.extensionName]:[c]});l.push(`Sec-WebSocket-Extensions: ${m}`),f._extensions=t}this.emit("headers",l,n),i.write(l.concat(`\r
9
+ ${v}`),s?n.reset(v):v}function ha(e,t,r,s={}){if(!_n){_n=!0;let i="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";if(process.emitWarning)process.emitWarning(i,"DeprecationWarning");else{let a=new Error(i);a.name="DeprecationWarning",console.warn(new Error(i))}}return r=Math.max(r,0),Sn(e,{start:{column:r,line:t}},s)}});var Mn=g((vu,Cn)=>{"use strict";var{Duplex:da}=require("stream");function kn(e){e.emit("close")}function pa(){!this.destroyed&&this._writableState.finished&&this.destroy()}function On(e){this.removeListener("error",On),this.destroy(),this.listenerCount("error")===0&&this.emit("error",e)}function ga(e,t){let r=!0,s=new da({...t,autoDestroy:!1,emitClose:!1,objectMode:!1,writableObjectMode:!1});return e.on("message",function(i,a){let o=!a&&s._readableState.objectMode?i.toString():i;s.push(o)||e.pause()}),e.once("error",function(i){s.destroyed||(r=!1,s.destroy(i))}),e.once("close",function(){s.destroyed||s.push(null)}),s._destroy=function(n,i){if(e.readyState===e.CLOSED){i(n),process.nextTick(kn,s);return}let a=!1;e.once("error",function(u){a=!0,i(u)}),e.once("close",function(){a||i(n),process.nextTick(kn,s)}),r&&e.terminate()},s._final=function(n){if(e.readyState===e.CONNECTING){e.once("open",function(){s._final(n)});return}e._socket!==null&&(e._socket._writableState.finished?(n(),s._readableState.endEmitted&&s.destroy()):(e._socket.once("finish",function(){n()}),e.close()))},s._read=function(){e.isPaused&&e.resume()},s._write=function(n,i,a){if(e.readyState===e.CONNECTING){e.once("open",function(){s._write(n,i,a)});return}e.send(n,a)},s.on("end",pa),s.on("error",On),s}Cn.exports=ga});var U=g((bu,Rn)=>{"use strict";Rn.exports={BINARY_TYPES:["nodebuffer","arraybuffer","fragments"],EMPTY_BUFFER:Buffer.alloc(0),GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",kForOnEventAttribute:Symbol("kIsForOnEventAttribute"),kListener:Symbol("kListener"),kStatusCode:Symbol("status-code"),kWebSocket:Symbol("websocket"),NOOP:()=>{}}});var me=g((mu,Ve)=>{"use strict";var{EMPTY_BUFFER:va}=U(),xt=Buffer[Symbol.species];function ba(e,t){if(e.length===0)return va;if(e.length===1)return e[0];let r=Buffer.allocUnsafe(t),s=0;for(let n=0;n<e.length;n++){let i=e[n];r.set(i,s),s+=i.length}return s<t?new xt(r.buffer,r.byteOffset,s):r}function Tn(e,t,r,s,n){for(let i=0;i<n;i++)r[s+i]=e[i]^t[i&3]}function Pn(e,t){for(let r=0;r<e.length;r++)e[r]^=t[r&3]}function ma(e){return e.length===e.buffer.byteLength?e.buffer:e.buffer.slice(e.byteOffset,e.byteOffset+e.length)}function St(e){if(St.readOnly=!0,Buffer.isBuffer(e))return e;let t;return e instanceof ArrayBuffer?t=new xt(e):ArrayBuffer.isView(e)?t=new xt(e.buffer,e.byteOffset,e.byteLength):(t=Buffer.from(e),St.readOnly=!1),t}Ve.exports={concat:ba,mask:Tn,toArrayBuffer:ma,toBuffer:St,unmask:Pn};if(!process.env.WS_NO_BUFFER_UTIL)try{let e=require("bufferutil");Ve.exports.mask=function(t,r,s,n,i){i<48?Tn(t,r,s,n,i):e.mask(t,r,s,n,i)},Ve.exports.unmask=function(t,r){t.length<32?Pn(t,r):e.unmask(t,r)}}catch{}});var Bn=g((yu,Nn)=>{"use strict";var Ln=Symbol("kDone"),Et=Symbol("kRun"),kt=class{constructor(t){this[Ln]=()=>{this.pending--,this[Et]()},this.concurrency=t||1/0,this.jobs=[],this.pending=0}add(t){this.jobs.push(t),this[Et]()}[Et](){if(this.pending!==this.concurrency&&this.jobs.length){let t=this.jobs.shift();this.pending++,t(this[Ln])}}};Nn.exports=kt});var we=g((_u,Fn)=>{"use strict";var ye=require("zlib"),In=me(),ya=Bn(),{kStatusCode:jn}=U(),_a=Buffer[Symbol.species],wa=Buffer.from([0,0,255,255]),He=Symbol("permessage-deflate"),F=Symbol("total-length"),_e=Symbol("callback"),D=Symbol("buffers"),Ye=Symbol("error"),ze,Ot=class{constructor(t,r,s){if(this._maxPayload=s|0,this._options=t||{},this._threshold=this._options.threshold!==void 0?this._options.threshold:1024,this._isServer=!!r,this._deflate=null,this._inflate=null,this.params=null,!ze){let n=this._options.concurrencyLimit!==void 0?this._options.concurrencyLimit:10;ze=new ya(n)}}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[_e];this._deflate.close(),this._deflate=null,t&&t(new Error("The deflate stream was closed while data was being processed"))}}acceptAsServer(t){let r=this._options,s=t.find(n=>!(r.serverNoContextTakeover===!1&&n.server_no_context_takeover||n.server_max_window_bits&&(r.serverMaxWindowBits===!1||typeof r.serverMaxWindowBits=="number"&&r.serverMaxWindowBits>n.server_max_window_bits)||typeof r.clientMaxWindowBits=="number"&&!n.client_max_window_bits));if(!s)throw new Error("None of the extension offers can be accepted");return r.serverNoContextTakeover&&(s.server_no_context_takeover=!0),r.clientNoContextTakeover&&(s.client_no_context_takeover=!0),typeof r.serverMaxWindowBits=="number"&&(s.server_max_window_bits=r.serverMaxWindowBits),typeof r.clientMaxWindowBits=="number"?s.client_max_window_bits=r.clientMaxWindowBits:(s.client_max_window_bits===!0||r.clientMaxWindowBits===!1)&&delete s.client_max_window_bits,s}acceptAsClient(t){let r=t[0];if(this._options.clientNoContextTakeover===!1&&r.client_no_context_takeover)throw new Error('Unexpected parameter "client_no_context_takeover"');if(!r.client_max_window_bits)typeof this._options.clientMaxWindowBits=="number"&&(r.client_max_window_bits=this._options.clientMaxWindowBits);else if(this._options.clientMaxWindowBits===!1||typeof this._options.clientMaxWindowBits=="number"&&r.client_max_window_bits>this._options.clientMaxWindowBits)throw new Error('Unexpected or invalid parameter "client_max_window_bits"');return r}normalizeParams(t){return t.forEach(r=>{Object.keys(r).forEach(s=>{let n=r[s];if(n.length>1)throw new Error(`Parameter "${s}" must have only a single value`);if(n=n[0],s==="client_max_window_bits"){if(n!==!0){let i=+n;if(!Number.isInteger(i)||i<8||i>15)throw new TypeError(`Invalid value for parameter "${s}": ${n}`);n=i}else if(!this._isServer)throw new TypeError(`Invalid value for parameter "${s}": ${n}`)}else if(s==="server_max_window_bits"){let i=+n;if(!Number.isInteger(i)||i<8||i>15)throw new TypeError(`Invalid value for parameter "${s}": ${n}`);n=i}else if(s==="client_no_context_takeover"||s==="server_no_context_takeover"){if(n!==!0)throw new TypeError(`Invalid value for parameter "${s}": ${n}`)}else throw new Error(`Unknown parameter "${s}"`);r[s]=n})}),t}decompress(t,r,s){ze.add(n=>{this._decompress(t,r,(i,a)=>{n(),s(i,a)})})}compress(t,r,s){ze.add(n=>{this._compress(t,r,(i,a)=>{n(),s(i,a)})})}_decompress(t,r,s){let n=this._isServer?"client":"server";if(!this._inflate){let i=`${n}_max_window_bits`,a=typeof this.params[i]!="number"?ye.Z_DEFAULT_WINDOWBITS:this.params[i];this._inflate=ye.createInflateRaw({...this._options.zlibInflateOptions,windowBits:a}),this._inflate[He]=this,this._inflate[F]=0,this._inflate[D]=[],this._inflate.on("error",Sa),this._inflate.on("data",An)}this._inflate[_e]=s,this._inflate.write(t),r&&this._inflate.write(wa),this._inflate.flush(()=>{let i=this._inflate[Ye];if(i){this._inflate.close(),this._inflate=null,s(i);return}let a=In.concat(this._inflate[D],this._inflate[F]);this._inflate._readableState.endEmitted?(this._inflate.close(),this._inflate=null):(this._inflate[F]=0,this._inflate[D]=[],r&&this.params[`${n}_no_context_takeover`]&&this._inflate.reset()),s(null,a)})}_compress(t,r,s){let n=this._isServer?"server":"client";if(!this._deflate){let i=`${n}_max_window_bits`,a=typeof this.params[i]!="number"?ye.Z_DEFAULT_WINDOWBITS:this.params[i];this._deflate=ye.createDeflateRaw({...this._options.zlibDeflateOptions,windowBits:a}),this._deflate[F]=0,this._deflate[D]=[],this._deflate.on("data",xa)}this._deflate[_e]=s,this._deflate.write(t),this._deflate.flush(ye.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let i=In.concat(this._deflate[D],this._deflate[F]);r&&(i=new _a(i.buffer,i.byteOffset,i.length-4)),this._deflate[_e]=null,this._deflate[F]=0,this._deflate[D]=[],r&&this.params[`${n}_no_context_takeover`]&&this._deflate.reset(),s(null,i)})}};Fn.exports=Ot;function xa(e){this[D].push(e),this[F]+=e.length}function An(e){if(this[F]+=e.length,this[He]._maxPayload<1||this[F]<=this[He]._maxPayload){this[D].push(e);return}this[Ye]=new RangeError("Max payload size exceeded"),this[Ye].code="WS_ERR_UNSUPPORTED_MESSAGE_LENGTH",this[Ye][jn]=1009,this.removeListener("data",An),this.reset()}function Sa(e){this[He]._inflate=null,e[jn]=1007,this[_e](e)}});var xe=g((wu,Ke)=>{"use strict";var{isUtf8:$n}=require("buffer"),Ea=[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 ka(e){return e>=1e3&&e<=1014&&e!==1004&&e!==1005&&e!==1006||e>=3e3&&e<=4999}function Ct(e){let t=e.length,r=0;for(;r<t;)if(!(e[r]&128))r++;else if((e[r]&224)===192){if(r+1===t||(e[r+1]&192)!==128||(e[r]&254)===192)return!1;r+=2}else if((e[r]&240)===224){if(r+2>=t||(e[r+1]&192)!==128||(e[r+2]&192)!==128||e[r]===224&&(e[r+1]&224)===128||e[r]===237&&(e[r+1]&224)===160)return!1;r+=3}else if((e[r]&248)===240){if(r+3>=t||(e[r+1]&192)!==128||(e[r+2]&192)!==128||(e[r+3]&192)!==128||e[r]===240&&(e[r+1]&240)===128||e[r]===244&&e[r+1]>143||e[r]>244)return!1;r+=4}else return!1;return!0}Ke.exports={isValidStatusCode:ka,isValidUTF8:Ct,tokenChars:Ea};if($n)Ke.exports.isValidUTF8=function(e){return e.length<24?Ct(e):$n(e)};else if(!process.env.WS_NO_UTF_8_VALIDATE)try{let e=require("utf-8-validate");Ke.exports.isValidUTF8=function(t){return t.length<32?Ct(t):e(t)}}catch{}});var Lt=g((xu,zn)=>{"use strict";var{Writable:Oa}=require("stream"),Wn=we(),{BINARY_TYPES:Ca,EMPTY_BUFFER:qn,kStatusCode:Ma,kWebSocket:Ra}=U(),{concat:Mt,toArrayBuffer:Ta,unmask:Pa}=me(),{isValidStatusCode:La,isValidUTF8:Un}=xe(),Xe=Buffer[Symbol.species],Na=Promise.resolve(),Rt=typeof queueMicrotask=="function"?queueMicrotask:Ba,P=0,Dn=1,Gn=2,Vn=3,Tt=4,Ze=5,Je=6,Pt=class extends Oa{constructor(t={}){super(),this._allowSynchronousEvents=!!t.allowSynchronousEvents,this._binaryType=t.binaryType||Ca[0],this._extensions=t.extensions||{},this._isServer=!!t.isServer,this._maxPayload=t.maxPayload|0,this._skipUTF8Validation=!!t.skipUTF8Validation,this[Ra]=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=P}_write(t,r,s){if(this._opcode===8&&this._state==P)return s();this._bufferedBytes+=t.length,this._buffers.push(t),this.startLoop(s)}consume(t){if(this._bufferedBytes-=t,t===this._buffers[0].length)return this._buffers.shift();if(t<this._buffers[0].length){let s=this._buffers[0];return this._buffers[0]=new Xe(s.buffer,s.byteOffset+t,s.length-t),new Xe(s.buffer,s.byteOffset,t)}let r=Buffer.allocUnsafe(t);do{let s=this._buffers[0],n=r.length-t;t>=s.length?r.set(this._buffers.shift(),n):(r.set(new Uint8Array(s.buffer,s.byteOffset,t),n),this._buffers[0]=new Xe(s.buffer,s.byteOffset+t,s.length-t)),t-=s.length}while(t>0);return r}startLoop(t){this._loop=!0;do switch(this._state){case P:this.getInfo(t);break;case Dn:this.getPayloadLength16(t);break;case Gn:this.getPayloadLength64(t);break;case Vn:this.getMask();break;case Tt:this.getData(t);break;case Ze:case Je:this._loop=!1;return}while(this._loop);this._errored||t()}getInfo(t){if(this._bufferedBytes<2){this._loop=!1;return}let r=this.consume(2);if(r[0]&48){let n=this.createError(RangeError,"RSV2 and RSV3 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_2_3");t(n);return}let s=(r[0]&64)===64;if(s&&!this._extensions[Wn.extensionName]){let n=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");t(n);return}if(this._fin=(r[0]&128)===128,this._opcode=r[0]&15,this._payloadLength=r[1]&127,this._opcode===0){if(s){let n=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");t(n);return}if(!this._fragmented){let n=this.createError(RangeError,"invalid opcode 0",!0,1002,"WS_ERR_INVALID_OPCODE");t(n);return}this._opcode=this._fragmented}else if(this._opcode===1||this._opcode===2){if(this._fragmented){let n=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");t(n);return}this._compressed=s}else if(this._opcode>7&&this._opcode<11){if(!this._fin){let n=this.createError(RangeError,"FIN must be set",!0,1002,"WS_ERR_EXPECTED_FIN");t(n);return}if(s){let n=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");t(n);return}if(this._payloadLength>125||this._opcode===8&&this._payloadLength===1){let n=this.createError(RangeError,`invalid payload length ${this._payloadLength}`,!0,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH");t(n);return}}else{let n=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");t(n);return}if(!this._fin&&!this._fragmented&&(this._fragmented=this._opcode),this._masked=(r[1]&128)===128,this._isServer){if(!this._masked){let n=this.createError(RangeError,"MASK must be set",!0,1002,"WS_ERR_EXPECTED_MASK");t(n);return}}else if(this._masked){let n=this.createError(RangeError,"MASK must be clear",!0,1002,"WS_ERR_UNEXPECTED_MASK");t(n);return}this._payloadLength===126?this._state=Dn:this._payloadLength===127?this._state=Gn: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 r=this.consume(8),s=r.readUInt32BE(0);if(s>Math.pow(2,21)-1){let n=this.createError(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009,"WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH");t(n);return}this._payloadLength=s*Math.pow(2,32)+r.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 r=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");t(r);return}this._masked?this._state=Vn:this._state=Tt}getMask(){if(this._bufferedBytes<4){this._loop=!1;return}this._mask=this.consume(4),this._state=Tt}getData(t){let r=qn;if(this._payloadLength){if(this._bufferedBytes<this._payloadLength){this._loop=!1;return}r=this.consume(this._payloadLength),this._masked&&this._mask[0]|this._mask[1]|this._mask[2]|this._mask[3]&&Pa(r,this._mask)}if(this._opcode>7){this.controlMessage(r,t);return}if(this._compressed){this._state=Ze,this.decompress(r,t);return}r.length&&(this._messageLength=this._totalPayloadLength,this._fragments.push(r)),this.dataMessage(t)}decompress(t,r){this._extensions[Wn.extensionName].decompress(t,this._fin,(n,i)=>{if(n)return r(n);if(i.length){if(this._messageLength+=i.length,this._messageLength>this._maxPayload&&this._maxPayload>0){let a=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");r(a);return}this._fragments.push(i)}this.dataMessage(r),this._state===P&&this.startLoop(r)})}dataMessage(t){if(!this._fin){this._state=P;return}let r=this._messageLength,s=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._fragments=[],this._opcode===2){let n;this._binaryType==="nodebuffer"?n=Mt(s,r):this._binaryType==="arraybuffer"?n=Ta(Mt(s,r)):n=s,this._state===Ze||this._allowSynchronousEvents?(this.emit("message",n,!0),this._state=P):(this._state=Je,Rt(()=>{this.emit("message",n,!0),this._state=P,this.startLoop(t)}))}else{let n=Mt(s,r);if(!this._skipUTF8Validation&&!Un(n)){let i=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");t(i);return}this._state===Ze||this._allowSynchronousEvents?(this.emit("message",n,!1),this._state=P):(this._state=Je,Rt(()=>{this.emit("message",n,!1),this._state=P,this.startLoop(t)}))}}controlMessage(t,r){if(this._opcode===8){if(t.length===0)this._loop=!1,this.emit("conclude",1005,qn),this.end();else{let s=t.readUInt16BE(0);if(!La(s)){let i=this.createError(RangeError,`invalid status code ${s}`,!0,1002,"WS_ERR_INVALID_CLOSE_CODE");r(i);return}let n=new Xe(t.buffer,t.byteOffset+2,t.length-2);if(!this._skipUTF8Validation&&!Un(n)){let i=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");r(i);return}this._loop=!1,this.emit("conclude",s,n),this.end()}this._state=P;return}this._allowSynchronousEvents?(this.emit(this._opcode===9?"ping":"pong",t),this._state=P):(this._state=Je,Rt(()=>{this.emit(this._opcode===9?"ping":"pong",t),this._state=P,this.startLoop(r)}))}createError(t,r,s,n,i){this._loop=!1,this._errored=!0;let a=new t(s?`Invalid WebSocket frame: ${r}`:r);return Error.captureStackTrace(a,this.createError),a.code=i,a[Ma]=n,a}};zn.exports=Pt;function Ba(e){Na.then(e).catch(ja)}function Ia(e){throw e}function ja(e){process.nextTick(Ia,e)}});var Bt=g((Eu,Kn)=>{"use strict";var{Duplex:Su}=require("stream"),{randomFillSync:Aa}=require("crypto"),Yn=we(),{EMPTY_BUFFER:Fa}=U(),{isValidStatusCode:$a}=xe(),{mask:Hn,toBuffer:oe}=me(),B=Symbol("kByteLength"),Wa=Buffer.alloc(4),Nt=class e{constructor(t,r,s){this._extensions=r||{},s&&(this._generateMask=s,this._maskBuffer=Buffer.alloc(4)),this._socket=t,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._deflating=!1,this._queue=[]}static frame(t,r){let s,n=!1,i=2,a=!1;r.mask&&(s=r.maskBuffer||Wa,r.generateMask?r.generateMask(s):Aa(s,0,4),a=(s[0]|s[1]|s[2]|s[3])===0,i=6);let o;typeof t=="string"?(!r.mask||a)&&r[B]!==void 0?o=r[B]:(t=Buffer.from(t),o=t.length):(o=t.length,n=r.mask&&r.readOnly&&!a);let u=o;o>=65536?(i+=8,u=127):o>125&&(i+=2,u=126);let l=Buffer.allocUnsafe(n?o+i:i);return l[0]=r.fin?r.opcode|128:r.opcode,r.rsv1&&(l[0]|=64),l[1]=u,u===126?l.writeUInt16BE(o,2):u===127&&(l[2]=l[3]=0,l.writeUIntBE(o,4,6)),r.mask?(l[1]|=128,l[i-4]=s[0],l[i-3]=s[1],l[i-2]=s[2],l[i-1]=s[3],a?[l,t]:n?(Hn(t,s,l,i,o),[l]):(Hn(t,s,t,0,o),[l,t])):[l,t]}close(t,r,s,n){let i;if(t===void 0)i=Fa;else{if(typeof t!="number"||!$a(t))throw new TypeError("First argument must be a valid error code number");if(r===void 0||!r.length)i=Buffer.allocUnsafe(2),i.writeUInt16BE(t,0);else{let o=Buffer.byteLength(r);if(o>123)throw new RangeError("The message must not be greater than 123 bytes");i=Buffer.allocUnsafe(2+o),i.writeUInt16BE(t,0),typeof r=="string"?i.write(r,2):i.set(r,2)}}let a={[B]:i.length,fin:!0,generateMask:this._generateMask,mask:s,maskBuffer:this._maskBuffer,opcode:8,readOnly:!1,rsv1:!1};this._deflating?this.enqueue([this.dispatch,i,!1,a,n]):this.sendFrame(e.frame(i,a),n)}ping(t,r,s){let n,i;if(typeof t=="string"?(n=Buffer.byteLength(t),i=!1):(t=oe(t),n=t.length,i=oe.readOnly),n>125)throw new RangeError("The data size must not be greater than 125 bytes");let a={[B]:n,fin:!0,generateMask:this._generateMask,mask:r,maskBuffer:this._maskBuffer,opcode:9,readOnly:i,rsv1:!1};this._deflating?this.enqueue([this.dispatch,t,!1,a,s]):this.sendFrame(e.frame(t,a),s)}pong(t,r,s){let n,i;if(typeof t=="string"?(n=Buffer.byteLength(t),i=!1):(t=oe(t),n=t.length,i=oe.readOnly),n>125)throw new RangeError("The data size must not be greater than 125 bytes");let a={[B]:n,fin:!0,generateMask:this._generateMask,mask:r,maskBuffer:this._maskBuffer,opcode:10,readOnly:i,rsv1:!1};this._deflating?this.enqueue([this.dispatch,t,!1,a,s]):this.sendFrame(e.frame(t,a),s)}send(t,r,s){let n=this._extensions[Yn.extensionName],i=r.binary?2:1,a=r.compress,o,u;if(typeof t=="string"?(o=Buffer.byteLength(t),u=!1):(t=oe(t),o=t.length,u=oe.readOnly),this._firstFragment?(this._firstFragment=!1,a&&n&&n.params[n._isServer?"server_no_context_takeover":"client_no_context_takeover"]&&(a=o>=n._threshold),this._compress=a):(a=!1,i=0),r.fin&&(this._firstFragment=!0),n){let l={[B]:o,fin:r.fin,generateMask:this._generateMask,mask:r.mask,maskBuffer:this._maskBuffer,opcode:i,readOnly:u,rsv1:a};this._deflating?this.enqueue([this.dispatch,t,this._compress,l,s]):this.dispatch(t,this._compress,l,s)}else this.sendFrame(e.frame(t,{[B]:o,fin:r.fin,generateMask:this._generateMask,mask:r.mask,maskBuffer:this._maskBuffer,opcode:i,readOnly:u,rsv1:!1}),s)}dispatch(t,r,s,n){if(!r){this.sendFrame(e.frame(t,s),n);return}let i=this._extensions[Yn.extensionName];this._bufferedBytes+=s[B],this._deflating=!0,i.compress(t,s.fin,(a,o)=>{if(this._socket.destroyed){let u=new Error("The socket was closed while data was being compressed");typeof n=="function"&&n(u);for(let l=0;l<this._queue.length;l++){let f=this._queue[l],c=f[f.length-1];typeof c=="function"&&c(u)}return}this._bufferedBytes-=s[B],this._deflating=!1,s.readOnly=!1,this.sendFrame(e.frame(o,s),n),this.dequeue()})}dequeue(){for(;!this._deflating&&this._queue.length;){let t=this._queue.shift();this._bufferedBytes-=t[3][B],Reflect.apply(t[0],this,t.slice(1))}}enqueue(t){this._bufferedBytes+=t[3][B],this._queue.push(t)}sendFrame(t,r){t.length===2?(this._socket.cork(),this._socket.write(t[0]),this._socket.write(t[1],r),this._socket.uncork()):this._socket.write(t[0],r)}};Kn.exports=Nt});var ss=g((ku,ns)=>{"use strict";var{kForOnEventAttribute:Se,kListener:It}=U(),Xn=Symbol("kCode"),Zn=Symbol("kData"),Jn=Symbol("kError"),Qn=Symbol("kMessage"),es=Symbol("kReason"),ue=Symbol("kTarget"),ts=Symbol("kType"),rs=Symbol("kWasClean"),$=class{constructor(t){this[ue]=null,this[ts]=t}get target(){return this[ue]}get type(){return this[ts]}};Object.defineProperty($.prototype,"target",{enumerable:!0});Object.defineProperty($.prototype,"type",{enumerable:!0});var X=class extends ${constructor(t,r={}){super(t),this[Xn]=r.code===void 0?0:r.code,this[es]=r.reason===void 0?"":r.reason,this[rs]=r.wasClean===void 0?!1:r.wasClean}get code(){return this[Xn]}get reason(){return this[es]}get wasClean(){return this[rs]}};Object.defineProperty(X.prototype,"code",{enumerable:!0});Object.defineProperty(X.prototype,"reason",{enumerable:!0});Object.defineProperty(X.prototype,"wasClean",{enumerable:!0});var le=class extends ${constructor(t,r={}){super(t),this[Jn]=r.error===void 0?null:r.error,this[Qn]=r.message===void 0?"":r.message}get error(){return this[Jn]}get message(){return this[Qn]}};Object.defineProperty(le.prototype,"error",{enumerable:!0});Object.defineProperty(le.prototype,"message",{enumerable:!0});var Ee=class extends ${constructor(t,r={}){super(t),this[Zn]=r.data===void 0?null:r.data}get data(){return this[Zn]}};Object.defineProperty(Ee.prototype,"data",{enumerable:!0});var qa={addEventListener(e,t,r={}){for(let n of this.listeners(e))if(!r[Se]&&n[It]===t&&!n[Se])return;let s;if(e==="message")s=function(i,a){let o=new Ee("message",{data:a?i:i.toString()});o[ue]=this,Qe(t,this,o)};else if(e==="close")s=function(i,a){let o=new X("close",{code:i,reason:a.toString(),wasClean:this._closeFrameReceived&&this._closeFrameSent});o[ue]=this,Qe(t,this,o)};else if(e==="error")s=function(i){let a=new le("error",{error:i,message:i.message});a[ue]=this,Qe(t,this,a)};else if(e==="open")s=function(){let i=new $("open");i[ue]=this,Qe(t,this,i)};else return;s[Se]=!!r[Se],s[It]=t,r.once?this.once(e,s):this.on(e,s)},removeEventListener(e,t){for(let r of this.listeners(e))if(r[It]===t&&!r[Se]){this.removeListener(e,r);break}}};ns.exports={CloseEvent:X,ErrorEvent:le,Event:$,EventTarget:qa,MessageEvent:Ee};function Qe(e,t,r){typeof e=="object"&&e.handleEvent?e.handleEvent.call(e,r):e.call(t,r)}});var jt=g((Ou,is)=>{"use strict";var{tokenChars:ke}=xe();function A(e,t,r){e[t]===void 0?e[t]=[r]:e[t].push(r)}function Ua(e){let t=Object.create(null),r=Object.create(null),s=!1,n=!1,i=!1,a,o,u=-1,l=-1,f=-1,c=0;for(;c<e.length;c++)if(l=e.charCodeAt(c),a===void 0)if(f===-1&&ke[l]===1)u===-1&&(u=c);else if(c!==0&&(l===32||l===9))f===-1&&u!==-1&&(f=c);else if(l===59||l===44){if(u===-1)throw new SyntaxError(`Unexpected character at index ${c}`);f===-1&&(f=c);let _=e.slice(u,f);l===44?(A(t,_,r),r=Object.create(null)):a=_,u=f=-1}else throw new SyntaxError(`Unexpected character at index ${c}`);else if(o===void 0)if(f===-1&&ke[l]===1)u===-1&&(u=c);else if(l===32||l===9)f===-1&&u!==-1&&(f=c);else if(l===59||l===44){if(u===-1)throw new SyntaxError(`Unexpected character at index ${c}`);f===-1&&(f=c),A(r,e.slice(u,f),!0),l===44&&(A(t,a,r),r=Object.create(null),a=void 0),u=f=-1}else if(l===61&&u!==-1&&f===-1)o=e.slice(u,c),u=f=-1;else throw new SyntaxError(`Unexpected character at index ${c}`);else if(n){if(ke[l]!==1)throw new SyntaxError(`Unexpected character at index ${c}`);u===-1?u=c:s||(s=!0),n=!1}else if(i)if(ke[l]===1)u===-1&&(u=c);else if(l===34&&u!==-1)i=!1,f=c;else if(l===92)n=!0;else throw new SyntaxError(`Unexpected character at index ${c}`);else if(l===34&&e.charCodeAt(c-1)===61)i=!0;else if(f===-1&&ke[l]===1)u===-1&&(u=c);else if(u!==-1&&(l===32||l===9))f===-1&&(f=c);else if(l===59||l===44){if(u===-1)throw new SyntaxError(`Unexpected character at index ${c}`);f===-1&&(f=c);let _=e.slice(u,f);s&&(_=_.replace(/\\/g,""),s=!1),A(r,o,_),l===44&&(A(t,a,r),r=Object.create(null),a=void 0),o=void 0,u=f=-1}else throw new SyntaxError(`Unexpected character at index ${c}`);if(u===-1||i||l===32||l===9)throw new SyntaxError("Unexpected end of input");f===-1&&(f=c);let m=e.slice(u,f);return a===void 0?A(t,m,r):(o===void 0?A(r,m,!0):s?A(r,o,m.replace(/\\/g,"")):A(r,o,m),A(t,a,r)),t}function Da(e){return Object.keys(e).map(t=>{let r=e[t];return Array.isArray(r)||(r=[r]),r.map(s=>[t].concat(Object.keys(s).map(n=>{let i=s[n];return Array.isArray(i)||(i=[i]),i.map(a=>a===!0?n:`${n}=${a}`).join("; ")})).join("; ")).join(", ")}).join(", ")}is.exports={format:Da,parse:Ua}});var qt=g((Ru,vs)=>{"use strict";var Ga=require("events"),Va=require("https"),za=require("http"),us=require("net"),Ya=require("tls"),{randomBytes:Ha,createHash:Ka}=require("crypto"),{Duplex:Cu,Readable:Mu}=require("stream"),{URL:At}=require("url"),G=we(),Xa=Lt(),Za=Bt(),{BINARY_TYPES:as,EMPTY_BUFFER:et,GUID:Ja,kForOnEventAttribute:Ft,kListener:Qa,kStatusCode:eo,kWebSocket:O,NOOP:ls}=U(),{EventTarget:{addEventListener:to,removeEventListener:ro}}=ss(),{format:no,parse:so}=jt(),{toBuffer:io}=me(),ao=30*1e3,cs=Symbol("kAborted"),$t=[8,13],W=["CONNECTING","OPEN","CLOSING","CLOSED"],oo=/^[!#$%&'*+\-.0-9A-Z^_`|a-z~]+$/,w=class e extends Ga{constructor(t,r,s){super(),this._binaryType=as[0],this._closeCode=1006,this._closeFrameReceived=!1,this._closeFrameSent=!1,this._closeMessage=et,this._closeTimer=null,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,r===void 0?r=[]:Array.isArray(r)||(typeof r=="object"&&r!==null?(s=r,r=[]):r=[r]),fs(this,t,r,s)):(this._autoPong=s.autoPong,this._isServer=!0)}get binaryType(){return this._binaryType}set binaryType(t){as.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,r,s){let n=new Xa({allowSynchronousEvents:s.allowSynchronousEvents,binaryType:this.binaryType,extensions:this._extensions,isServer:this._isServer,maxPayload:s.maxPayload,skipUTF8Validation:s.skipUTF8Validation});this._sender=new Za(t,this._extensions,s.generateMask),this._receiver=n,this._socket=t,n[O]=this,t[O]=this,n.on("conclude",co),n.on("drain",fo),n.on("error",ho),n.on("message",po),n.on("ping",go),n.on("pong",vo),t.setTimeout&&t.setTimeout(0),t.setNoDelay&&t.setNoDelay(),r.length>0&&t.unshift(r),t.on("close",ds),t.on("data",rt),t.on("end",ps),t.on("error",gs),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[G.extensionName]&&this._extensions[G.extensionName].cleanup(),this._receiver.removeAllListeners(),this._readyState=e.CLOSED,this.emit("close",this._closeCode,this._closeMessage)}close(t,r){if(this.readyState!==e.CLOSED){if(this.readyState===e.CONNECTING){R(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,r,!this._isServer,s=>{s||(this._closeFrameSent=!0,(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end())}),this._closeTimer=setTimeout(this._socket.destroy.bind(this._socket),ao)}}pause(){this.readyState===e.CONNECTING||this.readyState===e.CLOSED||(this._paused=!0,this._socket.pause())}ping(t,r,s){if(this.readyState===e.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof t=="function"?(s=t,t=r=void 0):typeof r=="function"&&(s=r,r=void 0),typeof t=="number"&&(t=t.toString()),this.readyState!==e.OPEN){Wt(this,t,s);return}r===void 0&&(r=!this._isServer),this._sender.ping(t||et,r,s)}pong(t,r,s){if(this.readyState===e.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof t=="function"?(s=t,t=r=void 0):typeof r=="function"&&(s=r,r=void 0),typeof t=="number"&&(t=t.toString()),this.readyState!==e.OPEN){Wt(this,t,s);return}r===void 0&&(r=!this._isServer),this._sender.pong(t||et,r,s)}resume(){this.readyState===e.CONNECTING||this.readyState===e.CLOSED||(this._paused=!1,this._receiver._writableState.needDrain||this._socket.resume())}send(t,r,s){if(this.readyState===e.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof r=="function"&&(s=r,r={}),typeof t=="number"&&(t=t.toString()),this.readyState!==e.OPEN){Wt(this,t,s);return}let n={binary:typeof t!="string",mask:!this._isServer,compress:!0,fin:!0,...r};this._extensions[G.extensionName]||(n.compress=!1),this._sender.send(t||et,n,s)}terminate(){if(this.readyState!==e.CLOSED){if(this.readyState===e.CONNECTING){R(this,this._req,"WebSocket was closed before the connection was established");return}this._socket&&(this._readyState=e.CLOSING,this._socket.destroy())}}};Object.defineProperty(w,"CONNECTING",{enumerable:!0,value:W.indexOf("CONNECTING")});Object.defineProperty(w.prototype,"CONNECTING",{enumerable:!0,value:W.indexOf("CONNECTING")});Object.defineProperty(w,"OPEN",{enumerable:!0,value:W.indexOf("OPEN")});Object.defineProperty(w.prototype,"OPEN",{enumerable:!0,value:W.indexOf("OPEN")});Object.defineProperty(w,"CLOSING",{enumerable:!0,value:W.indexOf("CLOSING")});Object.defineProperty(w.prototype,"CLOSING",{enumerable:!0,value:W.indexOf("CLOSING")});Object.defineProperty(w,"CLOSED",{enumerable:!0,value:W.indexOf("CLOSED")});Object.defineProperty(w.prototype,"CLOSED",{enumerable:!0,value:W.indexOf("CLOSED")});["binaryType","bufferedAmount","extensions","isPaused","protocol","readyState","url"].forEach(e=>{Object.defineProperty(w.prototype,e,{enumerable:!0})});["open","error","close","message"].forEach(e=>{Object.defineProperty(w.prototype,`on${e}`,{enumerable:!0,get(){for(let t of this.listeners(e))if(t[Ft])return t[Qa];return null},set(t){for(let r of this.listeners(e))if(r[Ft]){this.removeListener(e,r);break}typeof t=="function"&&this.addEventListener(e,t,{[Ft]:!0})}})});w.prototype.addEventListener=to;w.prototype.removeEventListener=ro;vs.exports=w;function fs(e,t,r,s){let n={allowSynchronousEvents:!1,autoPong:!0,protocolVersion:$t[1],maxPayload:104857600,skipUTF8Validation:!1,perMessageDeflate:!0,followRedirects:!1,maxRedirects:10,...s,createConnection:void 0,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=n.autoPong,!$t.includes(n.protocolVersion))throw new RangeError(`Unsupported protocol version: ${n.protocolVersion} (supported versions: ${$t.join(", ")})`);let i;if(t instanceof At)i=t;else try{i=new At(t)}catch{throw new SyntaxError(`Invalid URL: ${t}`)}i.protocol==="http:"?i.protocol="ws:":i.protocol==="https:"&&(i.protocol="wss:"),e._url=i.href;let a=i.protocol==="wss:",o=i.protocol==="ws+unix:",u;if(i.protocol!=="ws:"&&!a&&!o?u=`The URL's protocol must be one of "ws:", "wss:", "http:", "https", or "ws+unix:"`:o&&!i.pathname?u="The URL's pathname is empty":i.hash&&(u="The URL contains a fragment identifier"),u){let p=new SyntaxError(u);if(e._redirects===0)throw p;tt(e,p);return}let l=a?443:80,f=Ha(16).toString("base64"),c=a?Va.request:za.request,m=new Set,_;if(n.createConnection=a?lo:uo,n.defaultPort=n.defaultPort||l,n.port=i.port||l,n.host=i.hostname.startsWith("[")?i.hostname.slice(1,-1):i.hostname,n.headers={...n.headers,"Sec-WebSocket-Version":n.protocolVersion,"Sec-WebSocket-Key":f,Connection:"Upgrade",Upgrade:"websocket"},n.path=i.pathname+i.search,n.timeout=n.handshakeTimeout,n.perMessageDeflate&&(_=new G(n.perMessageDeflate!==!0?n.perMessageDeflate:{},!1,n.maxPayload),n.headers["Sec-WebSocket-Extensions"]=no({[G.extensionName]:_.offer()})),r.length){for(let p of r){if(typeof p!="string"||!oo.test(p)||m.has(p))throw new SyntaxError("An invalid or duplicated subprotocol was specified");m.add(p)}n.headers["Sec-WebSocket-Protocol"]=r.join(",")}if(n.origin&&(n.protocolVersion<13?n.headers["Sec-WebSocket-Origin"]=n.origin:n.headers.Origin=n.origin),(i.username||i.password)&&(n.auth=`${i.username}:${i.password}`),o){let p=n.path.split(":");n.socketPath=p[0],n.path=p[1]}let v;if(n.followRedirects){if(e._redirects===0){e._originalIpc=o,e._originalSecure=a,e._originalHostOrSocketPath=o?n.socketPath:i.host;let p=s&&s.headers;if(s={...s,headers:{}},p)for(let[b,y]of Object.entries(p))s.headers[b.toLowerCase()]=y}else if(e.listenerCount("redirect")===0){let p=o?e._originalIpc?n.socketPath===e._originalHostOrSocketPath:!1:e._originalIpc?!1:i.host===e._originalHostOrSocketPath;(!p||e._originalSecure&&!a)&&(delete n.headers.authorization,delete n.headers.cookie,p||delete n.headers.host,n.auth=void 0)}n.auth&&!s.headers.authorization&&(s.headers.authorization="Basic "+Buffer.from(n.auth).toString("base64")),v=e._req=c(n),e._redirects&&e.emit("redirect",e.url,v)}else v=e._req=c(n);n.timeout&&v.on("timeout",()=>{R(e,v,"Opening handshake has timed out")}),v.on("error",p=>{v===null||v[cs]||(v=e._req=null,tt(e,p))}),v.on("response",p=>{let b=p.headers.location,y=p.statusCode;if(b&&n.followRedirects&&y>=300&&y<400){if(++e._redirects>n.maxRedirects){R(e,v,"Maximum redirects exceeded");return}v.abort();let V;try{V=new At(b,t)}catch{let T=new SyntaxError(`Invalid URL: ${b}`);tt(e,T);return}fs(e,V,r,s)}else e.emit("unexpected-response",v,p)||R(e,v,`Unexpected server response: ${p.statusCode}`)}),v.on("upgrade",(p,b,y)=>{if(e.emit("upgrade",p),e.readyState!==w.CONNECTING)return;if(v=e._req=null,p.headers.upgrade.toLowerCase()!=="websocket"){R(e,b,"Invalid Upgrade header");return}let V=Ka("sha1").update(f+Ja).digest("base64");if(p.headers["sec-websocket-accept"]!==V){R(e,b,"Invalid Sec-WebSocket-Accept header");return}let I=p.headers["sec-websocket-protocol"],T;if(I!==void 0?m.size?m.has(I)||(T="Server sent an invalid subprotocol"):T="Server sent a subprotocol but none was requested":m.size&&(T="Server sent no subprotocol"),T){R(e,b,T);return}I&&(e._protocol=I);let Me=p.headers["sec-websocket-extensions"];if(Me!==void 0){if(!_){R(e,b,"Server sent a Sec-WebSocket-Extensions header but no extension was requested");return}let z;try{z=so(Me)}catch{R(e,b,"Invalid Sec-WebSocket-Extensions header");return}let Re=Object.keys(z);if(Re.length!==1||Re[0]!==G.extensionName){R(e,b,"Server indicated an extension that was not requested");return}try{_.accept(z[G.extensionName])}catch{R(e,b,"Invalid Sec-WebSocket-Extensions header");return}e._extensions[G.extensionName]=_}e.setSocket(b,y,{allowSynchronousEvents:n.allowSynchronousEvents,generateMask:n.generateMask,maxPayload:n.maxPayload,skipUTF8Validation:n.skipUTF8Validation})}),n.finishRequest?n.finishRequest(v,e):v.end()}function tt(e,t){e._readyState=w.CLOSING,e.emit("error",t),e.emitClose()}function uo(e){return e.path=e.socketPath,us.connect(e)}function lo(e){return e.path=void 0,!e.servername&&e.servername!==""&&(e.servername=us.isIP(e.host)?"":e.host),Ya.connect(e)}function R(e,t,r){e._readyState=w.CLOSING;let s=new Error(r);Error.captureStackTrace(s,R),t.setHeader?(t[cs]=!0,t.abort(),t.socket&&!t.socket.destroyed&&t.socket.destroy(),process.nextTick(tt,e,s)):(t.destroy(s),t.once("error",e.emit.bind(e,"error")),t.once("close",e.emitClose.bind(e)))}function Wt(e,t,r){if(t){let s=io(t).length;e._socket?e._sender._bufferedBytes+=s:e._bufferedAmount+=s}if(r){let s=new Error(`WebSocket is not open: readyState ${e.readyState} (${W[e.readyState]})`);process.nextTick(r,s)}}function co(e,t){let r=this[O];r._closeFrameReceived=!0,r._closeMessage=t,r._closeCode=e,r._socket[O]!==void 0&&(r._socket.removeListener("data",rt),process.nextTick(hs,r._socket),e===1005?r.close():r.close(e,t))}function fo(){let e=this[O];e.isPaused||e._socket.resume()}function ho(e){let t=this[O];t._socket[O]!==void 0&&(t._socket.removeListener("data",rt),process.nextTick(hs,t._socket),t.close(e[eo])),t.emit("error",e)}function os(){this[O].emitClose()}function po(e,t){this[O].emit("message",e,t)}function go(e){let t=this[O];t._autoPong&&t.pong(e,!this._isServer,ls),t.emit("ping",e)}function vo(e){this[O].emit("pong",e)}function hs(e){e.resume()}function ds(){let e=this[O];this.removeListener("close",ds),this.removeListener("data",rt),this.removeListener("end",ps),e._readyState=w.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[O]=void 0,clearTimeout(e._closeTimer),e._receiver._writableState.finished||e._receiver._writableState.errorEmitted?e.emitClose():(e._receiver.on("error",os),e._receiver.on("finish",os))}function rt(e){this[O]._receiver.write(e)||this.pause()}function ps(){let e=this[O];e._readyState=w.CLOSING,e._receiver.end(),this.end()}function gs(){let e=this[O];this.removeListener("error",gs),this.on("error",ls),e&&(e._readyState=w.CLOSING,this.destroy())}});var ms=g((Tu,bs)=>{"use strict";var{tokenChars:bo}=xe();function mo(e){let t=new Set,r=-1,s=-1,n=0;for(n;n<e.length;n++){let a=e.charCodeAt(n);if(s===-1&&bo[a]===1)r===-1&&(r=n);else if(n!==0&&(a===32||a===9))s===-1&&r!==-1&&(s=n);else if(a===44){if(r===-1)throw new SyntaxError(`Unexpected character at index ${n}`);s===-1&&(s=n);let o=e.slice(r,s);if(t.has(o))throw new SyntaxError(`The "${o}" subprotocol is duplicated`);t.add(o),r=s=-1}else throw new SyntaxError(`Unexpected character at index ${n}`)}if(r===-1||s!==-1)throw new SyntaxError("Unexpected end of input");let i=e.slice(r,n);if(t.has(i))throw new SyntaxError(`The "${i}" subprotocol is duplicated`);return t.add(i),t}bs.exports={parse:mo}});var ks=g((Lu,Es)=>{"use strict";var yo=require("events"),nt=require("http"),{Duplex:Pu}=require("stream"),{createHash:_o}=require("crypto"),ys=jt(),Z=we(),wo=ms(),xo=qt(),{GUID:So,kWebSocket:Eo}=U(),ko=/^[+/0-9A-Za-z]{22}==$/,_s=0,ws=1,Ss=2,Ut=class extends yo{constructor(t,r){if(super(),t={allowSynchronousEvents:!1,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:xo,...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=nt.createServer((s,n)=>{let i=nt.STATUS_CODES[426];n.writeHead(426,{"Content-Length":i.length,"Content-Type":"text/plain"}),n.end(i)}),this._server.listen(t.port,t.host,t.backlog,r)):t.server&&(this._server=t.server),this._server){let s=this.emit.bind(this,"connection");this._removeListeners=Oo(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(n,i,a)=>{this.handleUpgrade(n,i,a,s)}})}t.perMessageDeflate===!0&&(t.perMessageDeflate={}),t.clientTracking&&(this.clients=new Set,this._shouldEmitClose=!1),this.options=t,this._state=_s}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===Ss){t&&this.once("close",()=>{t(new Error("The server is not running"))}),process.nextTick(Oe,this);return}if(t&&this.once("close",t),this._state!==ws)if(this._state=ws,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(Oe,this):process.nextTick(Oe,this);else{let r=this._server;this._removeListeners(),this._removeListeners=this._server=null,r.close(()=>{Oe(this)})}}shouldHandle(t){if(this.options.path){let r=t.url.indexOf("?");if((r!==-1?t.url.slice(0,r):t.url)!==this.options.path)return!1}return!0}handleUpgrade(t,r,s,n){r.on("error",xs);let i=t.headers["sec-websocket-key"],a=+t.headers["sec-websocket-version"];if(t.method!=="GET"){J(this,t,r,405,"Invalid HTTP method");return}if(t.headers.upgrade.toLowerCase()!=="websocket"){J(this,t,r,400,"Invalid Upgrade header");return}if(!i||!ko.test(i)){J(this,t,r,400,"Missing or invalid Sec-WebSocket-Key header");return}if(a!==8&&a!==13){J(this,t,r,400,"Missing or invalid Sec-WebSocket-Version header");return}if(!this.shouldHandle(t)){Ce(r,400);return}let o=t.headers["sec-websocket-protocol"],u=new Set;if(o!==void 0)try{u=wo.parse(o)}catch{J(this,t,r,400,"Invalid Sec-WebSocket-Protocol header");return}let l=t.headers["sec-websocket-extensions"],f={};if(this.options.perMessageDeflate&&l!==void 0){let c=new Z(this.options.perMessageDeflate,!0,this.options.maxPayload);try{let m=ys.parse(l);m[Z.extensionName]&&(c.accept(m[Z.extensionName]),f[Z.extensionName]=c)}catch{J(this,t,r,400,"Invalid or unacceptable Sec-WebSocket-Extensions header");return}}if(this.options.verifyClient){let c={origin:t.headers[`${a===8?"sec-websocket-origin":"origin"}`],secure:!!(t.socket.authorized||t.socket.encrypted),req:t};if(this.options.verifyClient.length===2){this.options.verifyClient(c,(m,_,v,p)=>{if(!m)return Ce(r,_||401,v,p);this.completeUpgrade(f,i,u,t,r,s,n)});return}if(!this.options.verifyClient(c))return Ce(r,401)}this.completeUpgrade(f,i,u,t,r,s,n)}completeUpgrade(t,r,s,n,i,a,o){if(!i.readable||!i.writable)return i.destroy();if(i[Eo])throw new Error("server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration");if(this._state>_s)return Ce(i,503);let l=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade",`Sec-WebSocket-Accept: ${_o("sha1").update(r+So).digest("base64")}`],f=new this.options.WebSocket(null,void 0,this.options);if(s.size){let c=this.options.handleProtocols?this.options.handleProtocols(s,n):s.values().next().value;c&&(l.push(`Sec-WebSocket-Protocol: ${c}`),f._protocol=c)}if(t[Z.extensionName]){let c=t[Z.extensionName].params,m=ys.format({[Z.extensionName]:[c]});l.push(`Sec-WebSocket-Extensions: ${m}`),f._extensions=t}this.emit("headers",l,n),i.write(l.concat(`\r
10
10
  `).join(`\r
11
11
  `)),i.removeListener("error",xs),f.setSocket(i,a,{allowSynchronousEvents:this.options.allowSynchronousEvents,maxPayload:this.options.maxPayload,skipUTF8Validation:this.options.skipUTF8Validation}),this.clients&&(this.clients.add(f),f.on("close",()=>{this.clients.delete(f),this._shouldEmitClose&&!this.clients.size&&process.nextTick(Oe,this)})),o(f,n)}};Es.exports=Ut;function Oo(e,t){for(let r of Object.keys(t))e.on(r,t[r]);return function(){for(let s of Object.keys(t))e.removeListener(s,t[s])}}function Oe(e){e._state=Ss,e.emit("close")}function xs(){this.destroy()}function Ce(e,t,r,s){r=r||nt.STATUS_CODES[t],s={Connection:"close","Content-Type":"text/html","Content-Length":Buffer.byteLength(r),...s},e.once("finish",e.destroy),e.end(`HTTP/1.1 ${t} ${nt.STATUS_CODES[t]}\r
12
12
  `+Object.keys(s).map(n=>`${n}: ${s[n]}`).join(`\r
@@ -1,6 +1,6 @@
1
1
  const fs = require('fs');
2
2
  const Util = require('../utils/util.js');
3
- const { Locator } = require('monocart-formatter/node');
3
+ const { Locator } = require('monocart-formatter');
4
4
 
5
5
  const cacheMap = new Map();
6
6
 
@@ -1,6 +1,6 @@
1
1
  const fs = require('fs');
2
2
  const path = require('path');
3
- const CoverageReport = require('monocart-coverage-reports');
3
+ const MCR = require('monocart-coverage-reports');
4
4
  const Util = require('../../utils/util.js');
5
5
 
6
6
  const attachCoverageReport = async (data, testInfo, options = {}) => {
@@ -28,7 +28,7 @@ const attachCoverageReport = async (data, testInfo, options = {}) => {
28
28
  ... options
29
29
  };
30
30
 
31
- const coverageReport = new CoverageReport(coverageOptions);
31
+ const coverageReport = MCR(coverageOptions);
32
32
  await coverageReport.add(data);
33
33
  const coverageResults = await coverageReport.generate();
34
34
 
@@ -76,7 +76,7 @@ const addCoverageReport = async (data, testInfo) => {
76
76
  const reporterOptions = Util.resolveReporterOptions(testInfo);
77
77
  const coverageOptions = await getGlobalCoverageOptions(reporterOptions);
78
78
 
79
- const coverageReport = new CoverageReport(coverageOptions);
79
+ const coverageReport = MCR(coverageOptions);
80
80
  const results = await coverageReport.add(data);
81
81
 
82
82
  return results;
@@ -86,7 +86,7 @@ const generateGlobalCoverageReport = async (reporterOptions) => {
86
86
 
87
87
  const coverageOptions = await getGlobalCoverageOptions(reporterOptions);
88
88
 
89
- const coverageReport = new CoverageReport(coverageOptions);
89
+ const coverageReport = MCR(coverageOptions);
90
90
 
91
91
  // check if has cache
92
92
  if (!coverageReport.hasCache()) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "monocart-reporter",
3
- "version": "2.2.0",
3
+ "version": "2.2.2",
4
4
  "description": "A playwright test reporter. Shows suites/cases/steps with tree style, markdown annotations, custom columns/formatters/data collection visitors, console logs, style tags, send email.",
5
5
  "main": "lib/index.js",
6
6
  "bin": {
@@ -42,16 +42,16 @@
42
42
  "url": "git+https://github.com/cenfun/monocart-reporter.git"
43
43
  },
44
44
  "dependencies": {
45
- "console-grid": "~2.0.1",
46
- "eight-colors": "~1.0.3",
45
+ "console-grid": "~2.1.0",
46
+ "eight-colors": "~1.2.1",
47
47
  "koa": "~2.15.0",
48
- "koa-static-resolver": "~1.0.4",
49
- "lz-utils": "~2.0.1",
50
- "monocart-coverage-reports": "~2.0.9",
51
- "monocart-formatter": "^2.2.1",
48
+ "koa-static-resolver": "~1.0.5",
49
+ "lz-utils": "~2.0.2",
50
+ "monocart-coverage-reports": "~2.1.0",
51
+ "monocart-formatter": "~2.3.0",
52
52
  "nodemailer": "~6.9.8",
53
- "open": "~10.0.2",
54
- "turbogrid": "^3.0.12"
53
+ "open": "~10.0.3",
54
+ "turbogrid": "~3.0.12"
55
55
  },
56
56
  "devDependencies": {
57
57
  "@playwright/test": "^1.40.1",
@@ -60,7 +60,7 @@
60
60
  "eslint": "^8.56.0",
61
61
  "eslint-config-plus": "^1.0.6",
62
62
  "eslint-plugin-html": "^7.1.0",
63
- "eslint-plugin-vue": "^9.19.2",
63
+ "eslint-plugin-vue": "^9.20.0",
64
64
  "stylelint": "^15.11.0",
65
65
  "stylelint-config-plus": "^1.0.4",
66
66
  "vine-ui": "^3.1.13"