@novu/js 3.8.1 → 3.9.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.
- package/dist/cjs/{chunk-JOKRZMGH.js → chunk-VEX66SK3.js} +98 -24
- package/dist/cjs/index.d.ts +6 -5
- package/dist/cjs/index.js +22 -10
- package/dist/cjs/internal/index.d.ts +1 -1
- package/dist/{esm/novu-CktM1OXQ.d.mts → cjs/novu-Db46nHZP.d.ts} +19 -4
- package/dist/cjs/themes/index.d.ts +3 -3
- package/dist/cjs/themes/index.js +10 -0
- package/dist/cjs/types-B-VuVpSW.d.ts +445 -0
- package/dist/{esm/types-CiFWY1AG.d.mts → cjs/types-CbmZeAf8.d.ts} +21 -1
- package/dist/cjs/ui/index.d.ts +13 -4
- package/dist/cjs/ui/index.js +1322 -368
- package/dist/esm/{chunk-HL3WZM2B.mjs → chunk-3CKXF2I4.mjs} +96 -25
- package/dist/esm/index.d.mts +6 -5
- package/dist/esm/index.mjs +1 -1
- package/dist/esm/internal/index.d.mts +1 -1
- package/dist/{cjs/novu-D6fucMvr.d.ts → esm/novu-BOlS1PMv.d.mts} +19 -4
- package/dist/esm/themes/index.d.mts +3 -3
- package/dist/esm/themes/index.mjs +10 -0
- package/dist/esm/types-C9c_ID-G.d.mts +445 -0
- package/dist/{cjs/types-CiFWY1AG.d.ts → esm/types-CbmZeAf8.d.mts} +21 -1
- package/dist/esm/ui/index.d.mts +13 -4
- package/dist/esm/ui/index.mjs +1315 -361
- package/dist/index.css +1 -1
- package/dist/novu.min.js +12 -12
- package/dist/novu.min.js.gz +0 -0
- package/internal/package.json +2 -2
- package/package.json +2 -1
- package/themes/package.json +1 -1
- package/ui/package.json +1 -1
- package/dist/cjs/types-B3PJouaR.d.ts +0 -143
- package/dist/esm/types-C8yNgqZQ.d.mts +0 -143
package/dist/novu.min.js
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
"use strict";(()=>{var $o=Object.create;var ai=Object.defineProperty,Vo=Object.defineProperties,Ho=Object.getOwnPropertyDescriptor,jo=Object.getOwnPropertyDescriptors,Go=Object.getOwnPropertyNames,oi=Object.getOwnPropertySymbols,Ko=Object.getPrototypeOf,ar=Object.prototype.hasOwnProperty,un=Object.prototype.propertyIsEnumerable;var dn=i=>{throw TypeError(i)},pn=Math.pow,or=(i,e,t)=>e in i?ai(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t,_=(i,e)=>{for(var t in e||(e={}))ar.call(e,t)&&or(i,t,e[t]);if(oi)for(var t of oi(e))un.call(e,t)&&or(i,t,e[t]);return i},k=(i,e)=>Vo(i,jo(e));var N=(i=>typeof require!="undefined"?require:typeof Proxy!="undefined"?new Proxy(i,{get:(e,t)=>(typeof require!="undefined"?require:e)[t]}):i)(function(i){if(typeof require!="undefined")return require.apply(this,arguments);throw Error('Dynamic require of "'+i+'" is not supported')});var cr=(i,e)=>{var t={};for(var r in i)ar.call(i,r)&&e.indexOf(r)<0&&(t[r]=i[r]);if(i!=null&&oi)for(var r of oi(i))e.indexOf(r)<0&&un.call(i,r)&&(t[r]=i[r]);return t};var F=(i,e)=>()=>(e||i((e={exports:{}}).exports,e),e.exports),Yo=(i,e)=>{for(var t in e)ai(i,t,{get:e[t],enumerable:!0})},Jo=(i,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of Go(e))!ar.call(i,n)&&n!==t&&ai(i,n,{get:()=>e[n],enumerable:!(r=Ho(e,n))||r.enumerable});return i};var Y=(i,e,t)=>(t=i!=null?$o(Ko(i)):{},Jo(e||!i||!i.__esModule?ai(t,"default",{value:i,enumerable:!0}):t,i));var O=(i,e,t)=>or(i,typeof e!="symbol"?e+"":e,t),lr=(i,e,t)=>e.has(i)||dn("Cannot "+t);var c=(i,e,t)=>(lr(i,e,"read from private field"),t?t.call(i):e.get(i)),S=(i,e,t)=>e.has(i)?dn("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(i):e.set(i,t),w=(i,e,t,r)=>(lr(i,e,"write to private field"),r?r.call(i,t):e.set(i,t),t),he=(i,e,t)=>(lr(i,e,"access private method"),t);var m=(i,e,t)=>new Promise((r,n)=>{var s=h=>{try{a(t.next(h))}catch(u){n(u)}},o=h=>{try{a(t.throw(h))}catch(u){n(u)}},a=h=>h.done?r(h.value):Promise.resolve(h.value).then(s,o);a((t=t.apply(i,e)).next())});var wr=F((bf,Wn)=>{"use strict";var yt=1e3,vt=yt*60,_t=vt*60,Ze=_t*24,ga=Ze*7,ya=Ze*365.25;Wn.exports=function(i,e){e=e||{};var t=typeof i;if(t==="string"&&i.length>0)return va(i);if(t==="number"&&isFinite(i))return e.long?Ea(i):_a(i);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(i))};function va(i){if(i=String(i),!(i.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(i);if(e){var t=parseFloat(e[1]),r=(e[2]||"ms").toLowerCase();switch(r){case"years":case"year":case"yrs":case"yr":case"y":return t*ya;case"weeks":case"week":case"w":return t*ga;case"days":case"day":case"d":return t*Ze;case"hours":case"hour":case"hrs":case"hr":case"h":return t*_t;case"minutes":case"minute":case"mins":case"min":case"m":return t*vt;case"seconds":case"second":case"secs":case"sec":case"s":return t*yt;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:return}}}}function _a(i){var e=Math.abs(i);return e>=Ze?Math.round(i/Ze)+"d":e>=_t?Math.round(i/_t)+"h":e>=vt?Math.round(i/vt)+"m":e>=yt?Math.round(i/yt)+"s":i+"ms"}function Ea(i){var e=Math.abs(i);return e>=Ze?Pi(i,e,Ze,"day"):e>=_t?Pi(i,e,_t,"hour"):e>=vt?Pi(i,e,vt,"minute"):e>=yt?Pi(i,e,yt,"second"):i+" ms"}function Pi(i,e,t,r){var n=e>=t*1.5;return Math.round(i/t)+" "+r+(n?"s":"")}});var br=F((xf,zn)=>{"use strict";function Sa(i){t.debug=t,t.default=t,t.coerce=h,t.disable=s,t.enable=n,t.enabled=o,t.humanize=wr(),t.destroy=u,Object.keys(i).forEach(l=>{t[l]=i[l]}),t.names=[],t.skips=[],t.formatters={};function e(l){let f=0;for(let p=0;p<l.length;p++)f=(f<<5)-f+l.charCodeAt(p),f|=0;return t.colors[Math.abs(f)%t.colors.length]}t.selectColor=e;function t(l){let f,p=null,d,b;function g(...v){if(!g.enabled)return;let R=g,T=Number(new Date),y=T-(f||T);R.diff=y,R.prev=f,R.curr=T,f=T,v[0]=t.coerce(v[0]),typeof v[0]!="string"&&v.unshift("%O");let E=0;v[0]=v[0].replace(/%([a-zA-Z%])/g,(C,M)=>{if(C==="%%")return"%";E++;let q=t.formatters[M];if(typeof q=="function"){let te=v[E];C=q.call(R,te),v.splice(E,1),E--}return C}),t.formatArgs.call(R,v),(R.log||t.log).apply(R,v)}return g.namespace=l,g.useColors=t.useColors(),g.color=t.selectColor(l),g.extend=r,g.destroy=t.destroy,Object.defineProperty(g,"enabled",{enumerable:!0,configurable:!1,get:()=>p!==null?p:(d!==t.namespaces&&(d=t.namespaces,b=t.enabled(l)),b),set:v=>{p=v}}),typeof t.init=="function"&&t.init(g),g}function r(l,f){let p=t(this.namespace+(typeof f=="undefined"?":":f)+l);return p.log=this.log,p}function n(l){t.save(l),t.namespaces=l,t.names=[],t.skips=[];let f,p=(typeof l=="string"?l:"").split(/[\s,]+/),d=p.length;for(f=0;f<d;f++)p[f]&&(l=p[f].replace(/\*/g,".*?"),l[0]==="-"?t.skips.push(new RegExp("^"+l.slice(1)+"$")):t.names.push(new RegExp("^"+l+"$")))}function s(){let l=[...t.names.map(a),...t.skips.map(a).map(f=>"-"+f)].join(",");return t.enable(""),l}function o(l){if(l[l.length-1]==="*")return!0;let f,p;for(f=0,p=t.skips.length;f<p;f++)if(t.skips[f].test(l))return!1;for(f=0,p=t.names.length;f<p;f++)if(t.names[f].test(l))return!0;return!1}function a(l){return l.toString().substring(2,l.toString().length-2).replace(/\.\*\?$/,"*")}function h(l){return l instanceof Error?l.stack||l.message:l}function u(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return t.enable(t.load()),t}zn.exports=Sa});var $n=F((ne,Li)=>{"use strict";ne.formatArgs=ba;ne.save=xa;ne.load=Ca;ne.useColors=wa;ne.storage=Na();ne.destroy=(()=>{let i=!1;return()=>{i||(i=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();ne.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function wa(){if(typeof window!="undefined"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator!="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let i;return typeof document!="undefined"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window!="undefined"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator!="undefined"&&navigator.userAgent&&(i=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(i[1],10)>=31||typeof navigator!="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function ba(i){if(i[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+i[0]+(this.useColors?"%c ":" ")+"+"+Li.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;i.splice(1,0,e,"color: inherit");let t=0,r=0;i[0].replace(/%[a-zA-Z%]/g,n=>{n!=="%%"&&(t++,n==="%c"&&(r=t))}),i.splice(r,0,e)}ne.log=console.debug||console.log||(()=>{});function xa(i){try{i?ne.storage.setItem("debug",i):ne.storage.removeItem("debug")}catch(e){}}function Ca(){let i;try{i=ne.storage.getItem("debug")}catch(e){}return!i&&typeof process!="undefined"&&"env"in process&&(i=process.env.DEBUG),i}function Na(){try{return localStorage}catch(i){}}Li.exports=br()(ne);var{formatters:ka}=Li.exports;ka.j=function(i){try{return JSON.stringify(i)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var Hn=F((Cf,Vn)=>{"use strict";Vn.exports=(i,e=process.argv)=>{let t=i.startsWith("-")?"":i.length===1?"-":"--",r=e.indexOf(t+i),n=e.indexOf("--");return r!==-1&&(n===-1||r<n)}});var Nr=F((Nf,Gn)=>{"use strict";var Aa=N("os"),jn=N("tty"),ue=Hn(),{env:V}=process,We;ue("no-color")||ue("no-colors")||ue("color=false")||ue("color=never")?We=0:(ue("color")||ue("colors")||ue("color=true")||ue("color=always"))&&(We=1);"FORCE_COLOR"in V&&(V.FORCE_COLOR==="true"?We=1:V.FORCE_COLOR==="false"?We=0:We=V.FORCE_COLOR.length===0?1:Math.min(parseInt(V.FORCE_COLOR,10),3));function xr(i){return i===0?!1:{level:i,hasBasic:!0,has256:i>=2,has16m:i>=3}}function Cr(i,e){if(We===0)return 0;if(ue("color=16m")||ue("color=full")||ue("color=truecolor"))return 3;if(ue("color=256"))return 2;if(i&&!e&&We===void 0)return 0;let t=We||0;if(V.TERM==="dumb")return t;if(process.platform==="win32"){let r=Aa.release().split(".");return Number(r[0])>=10&&Number(r[2])>=10586?Number(r[2])>=14931?3:2:1}if("CI"in V)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(r=>r in V)||V.CI_NAME==="codeship"?1:t;if("TEAMCITY_VERSION"in V)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(V.TEAMCITY_VERSION)?1:0;if(V.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in V){let r=parseInt((V.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(V.TERM_PROGRAM){case"iTerm.app":return r>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(V.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(V.TERM)||"COLORTERM"in V?1:t}function Ra(i){let e=Cr(i,i&&i.isTTY);return xr(e)}Gn.exports={supportsColor:Ra,stdout:xr(Cr(!0,jn.isatty(1))),stderr:xr(Cr(!0,jn.isatty(2)))}});var Yn=F((H,Ui)=>{"use strict";var Ta=N("tty"),Fi=N("util");H.init=Da;H.log=La;H.formatArgs=Ia;H.save=Fa;H.load=Ua;H.useColors=Oa;H.destroy=Fi.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");H.colors=[6,2,3,4,5,1];try{let i=Nr();i&&(i.stderr||i).level>=2&&(H.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch(i){}H.inspectOpts=Object.keys(process.env).filter(i=>/^debug_/i.test(i)).reduce((i,e)=>{let t=e.substring(6).toLowerCase().replace(/_([a-z])/g,(n,s)=>s.toUpperCase()),r=process.env[e];return/^(yes|on|true|enabled)$/i.test(r)?r=!0:/^(no|off|false|disabled)$/i.test(r)?r=!1:r==="null"?r=null:r=Number(r),i[t]=r,i},{});function Oa(){return"colors"in H.inspectOpts?!!H.inspectOpts.colors:Ta.isatty(process.stderr.fd)}function Ia(i){let{namespace:e,useColors:t}=this;if(t){let r=this.color,n="\x1B[3"+(r<8?r:"8;5;"+r),s=` ${n};1m${e} \x1B[0m`;i[0]=s+i[0].split(`
|
|
1
|
+
"use strict";(()=>{var Vo=Object.create;var ci=Object.defineProperty,Ho=Object.defineProperties,jo=Object.getOwnPropertyDescriptor,Go=Object.getOwnPropertyDescriptors,Ko=Object.getOwnPropertyNames,ai=Object.getOwnPropertySymbols,Yo=Object.getPrototypeOf,lr=Object.prototype.hasOwnProperty,mn=Object.prototype.propertyIsEnumerable;var gn=i=>{throw TypeError(i)},yn=Math.pow,cr=(i,e,t)=>e in i?ci(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t,_=(i,e)=>{for(var t in e||(e={}))lr.call(e,t)&&cr(i,t,e[t]);if(ai)for(var t of ai(e))mn.call(e,t)&&cr(i,t,e[t]);return i},k=(i,e)=>Ho(i,Go(e));var N=(i=>typeof require!="undefined"?require:typeof Proxy!="undefined"?new Proxy(i,{get:(e,t)=>(typeof require!="undefined"?require:e)[t]}):i)(function(i){if(typeof require!="undefined")return require.apply(this,arguments);throw Error('Dynamic require of "'+i+'" is not supported')});var hr=(i,e)=>{var t={};for(var r in i)lr.call(i,r)&&e.indexOf(r)<0&&(t[r]=i[r]);if(i!=null&&ai)for(var r of ai(i))e.indexOf(r)<0&&mn.call(i,r)&&(t[r]=i[r]);return t};var F=(i,e)=>()=>(e||i((e={exports:{}}).exports,e),e.exports),Jo=(i,e)=>{for(var t in e)ci(i,t,{get:e[t],enumerable:!0})},Xo=(i,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of Ko(e))!lr.call(i,n)&&n!==t&&ci(i,n,{get:()=>e[n],enumerable:!(r=jo(e,n))||r.enumerable});return i};var Y=(i,e,t)=>(t=i!=null?Vo(Yo(i)):{},Xo(e||!i||!i.__esModule?ci(t,"default",{value:i,enumerable:!0}):t,i));var O=(i,e,t)=>cr(i,typeof e!="symbol"?e+"":e,t),fr=(i,e,t)=>e.has(i)||gn("Cannot "+t);var c=(i,e,t)=>(fr(i,e,"read from private field"),t?t.call(i):e.get(i)),S=(i,e,t)=>e.has(i)?gn("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(i):e.set(i,t),w=(i,e,t,r)=>(fr(i,e,"write to private field"),r?r.call(i,t):e.set(i,t),t),le=(i,e,t)=>(fr(i,e,"access private method"),t);var m=(i,e,t)=>new Promise((r,n)=>{var s=l=>{try{a(t.next(l))}catch(u){n(u)}},o=l=>{try{a(t.throw(l))}catch(u){n(u)}},a=l=>l.done?r(l.value):Promise.resolve(l.value).then(s,o);a((t=t.apply(i,e)).next())});var Cr=F((Af,$n)=>{"use strict";var vt=1e3,_t=vt*60,Et=_t*60,et=Et*24,Ea=et*7,Sa=et*365.25;$n.exports=function(i,e){e=e||{};var t=typeof i;if(t==="string"&&i.length>0)return wa(i);if(t==="number"&&isFinite(i))return e.long?xa(i):ba(i);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(i))};function wa(i){if(i=String(i),!(i.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(i);if(e){var t=parseFloat(e[1]),r=(e[2]||"ms").toLowerCase();switch(r){case"years":case"year":case"yrs":case"yr":case"y":return t*Sa;case"weeks":case"week":case"w":return t*Ea;case"days":case"day":case"d":return t*et;case"hours":case"hour":case"hrs":case"hr":case"h":return t*Et;case"minutes":case"minute":case"mins":case"min":case"m":return t*_t;case"seconds":case"second":case"secs":case"sec":case"s":return t*vt;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:return}}}}function ba(i){var e=Math.abs(i);return e>=et?Math.round(i/et)+"d":e>=Et?Math.round(i/Et)+"h":e>=_t?Math.round(i/_t)+"m":e>=vt?Math.round(i/vt)+"s":i+"ms"}function xa(i){var e=Math.abs(i);return e>=et?Fi(i,e,et,"day"):e>=Et?Fi(i,e,Et,"hour"):e>=_t?Fi(i,e,_t,"minute"):e>=vt?Fi(i,e,vt,"second"):i+" ms"}function Fi(i,e,t,r){var n=e>=t*1.5;return Math.round(i/t)+" "+r+(n?"s":"")}});var Nr=F((Rf,Vn)=>{"use strict";function Ca(i){t.debug=t,t.default=t,t.coerce=l,t.disable=s,t.enable=n,t.enabled=o,t.humanize=Cr(),t.destroy=u,Object.keys(i).forEach(f=>{t[f]=i[f]}),t.names=[],t.skips=[],t.formatters={};function e(f){let h=0;for(let p=0;p<f.length;p++)h=(h<<5)-h+f.charCodeAt(p),h|=0;return t.colors[Math.abs(h)%t.colors.length]}t.selectColor=e;function t(f){let h,p=null,d,b;function g(...v){if(!g.enabled)return;let R=g,T=Number(new Date),y=T-(h||T);R.diff=y,R.prev=h,R.curr=T,h=T,v[0]=t.coerce(v[0]),typeof v[0]!="string"&&v.unshift("%O");let E=0;v[0]=v[0].replace(/%([a-zA-Z%])/g,(C,I)=>{if(C==="%%")return"%";E++;let M=t.formatters[I];if(typeof M=="function"){let te=v[E];C=M.call(R,te),v.splice(E,1),E--}return C}),t.formatArgs.call(R,v),(R.log||t.log).apply(R,v)}return g.namespace=f,g.useColors=t.useColors(),g.color=t.selectColor(f),g.extend=r,g.destroy=t.destroy,Object.defineProperty(g,"enabled",{enumerable:!0,configurable:!1,get:()=>p!==null?p:(d!==t.namespaces&&(d=t.namespaces,b=t.enabled(f)),b),set:v=>{p=v}}),typeof t.init=="function"&&t.init(g),g}function r(f,h){let p=t(this.namespace+(typeof h=="undefined"?":":h)+f);return p.log=this.log,p}function n(f){t.save(f),t.namespaces=f,t.names=[],t.skips=[];let h,p=(typeof f=="string"?f:"").split(/[\s,]+/),d=p.length;for(h=0;h<d;h++)p[h]&&(f=p[h].replace(/\*/g,".*?"),f[0]==="-"?t.skips.push(new RegExp("^"+f.slice(1)+"$")):t.names.push(new RegExp("^"+f+"$")))}function s(){let f=[...t.names.map(a),...t.skips.map(a).map(h=>"-"+h)].join(",");return t.enable(""),f}function o(f){if(f[f.length-1]==="*")return!0;let h,p;for(h=0,p=t.skips.length;h<p;h++)if(t.skips[h].test(f))return!1;for(h=0,p=t.names.length;h<p;h++)if(t.names[h].test(f))return!0;return!1}function a(f){return f.toString().substring(2,f.toString().length-2).replace(/\.\*\?$/,"*")}function l(f){return f instanceof Error?f.stack||f.message:f}function u(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return t.enable(t.load()),t}Vn.exports=Ca});var Hn=F((re,Ui)=>{"use strict";re.formatArgs=ka;re.save=Aa;re.load=Ra;re.useColors=Na;re.storage=Ta();re.destroy=(()=>{let i=!1;return()=>{i||(i=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();re.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function Na(){if(typeof window!="undefined"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator!="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let i;return typeof document!="undefined"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window!="undefined"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator!="undefined"&&navigator.userAgent&&(i=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(i[1],10)>=31||typeof navigator!="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function ka(i){if(i[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+i[0]+(this.useColors?"%c ":" ")+"+"+Ui.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;i.splice(1,0,e,"color: inherit");let t=0,r=0;i[0].replace(/%[a-zA-Z%]/g,n=>{n!=="%%"&&(t++,n==="%c"&&(r=t))}),i.splice(r,0,e)}re.log=console.debug||console.log||(()=>{});function Aa(i){try{i?re.storage.setItem("debug",i):re.storage.removeItem("debug")}catch(e){}}function Ra(){let i;try{i=re.storage.getItem("debug")}catch(e){}return!i&&typeof process!="undefined"&&"env"in process&&(i=process.env.DEBUG),i}function Ta(){try{return localStorage}catch(i){}}Ui.exports=Nr()(re);var{formatters:Oa}=Ui.exports;Oa.j=function(i){try{return JSON.stringify(i)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var Gn=F((Tf,jn)=>{"use strict";jn.exports=(i,e=process.argv)=>{let t=i.startsWith("-")?"":i.length===1?"-":"--",r=e.indexOf(t+i),n=e.indexOf("--");return r!==-1&&(n===-1||r<n)}});var Rr=F((Of,Yn)=>{"use strict";var Ia=N("os"),Kn=N("tty"),fe=Gn(),{env:V}=process,ze;fe("no-color")||fe("no-colors")||fe("color=false")||fe("color=never")?ze=0:(fe("color")||fe("colors")||fe("color=true")||fe("color=always"))&&(ze=1);"FORCE_COLOR"in V&&(V.FORCE_COLOR==="true"?ze=1:V.FORCE_COLOR==="false"?ze=0:ze=V.FORCE_COLOR.length===0?1:Math.min(parseInt(V.FORCE_COLOR,10),3));function kr(i){return i===0?!1:{level:i,hasBasic:!0,has256:i>=2,has16m:i>=3}}function Ar(i,e){if(ze===0)return 0;if(fe("color=16m")||fe("color=full")||fe("color=truecolor"))return 3;if(fe("color=256"))return 2;if(i&&!e&&ze===void 0)return 0;let t=ze||0;if(V.TERM==="dumb")return t;if(process.platform==="win32"){let r=Ia.release().split(".");return Number(r[0])>=10&&Number(r[2])>=10586?Number(r[2])>=14931?3:2:1}if("CI"in V)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(r=>r in V)||V.CI_NAME==="codeship"?1:t;if("TEAMCITY_VERSION"in V)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(V.TEAMCITY_VERSION)?1:0;if(V.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in V){let r=parseInt((V.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(V.TERM_PROGRAM){case"iTerm.app":return r>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(V.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(V.TERM)||"COLORTERM"in V?1:t}function Pa(i){let e=Ar(i,i&&i.isTTY);return kr(e)}Yn.exports={supportsColor:Pa,stdout:kr(Ar(!0,Kn.isatty(1))),stderr:kr(Ar(!0,Kn.isatty(2)))}});var Xn=F((H,Bi)=>{"use strict";var La=N("tty"),Di=N("util");H.init=Wa;H.log=Ba;H.formatArgs=Ua;H.save=Ma;H.load=qa;H.useColors=Fa;H.destroy=Di.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");H.colors=[6,2,3,4,5,1];try{let i=Rr();i&&(i.stderr||i).level>=2&&(H.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch(i){}H.inspectOpts=Object.keys(process.env).filter(i=>/^debug_/i.test(i)).reduce((i,e)=>{let t=e.substring(6).toLowerCase().replace(/_([a-z])/g,(n,s)=>s.toUpperCase()),r=process.env[e];return/^(yes|on|true|enabled)$/i.test(r)?r=!0:/^(no|off|false|disabled)$/i.test(r)?r=!1:r==="null"?r=null:r=Number(r),i[t]=r,i},{});function Fa(){return"colors"in H.inspectOpts?!!H.inspectOpts.colors:La.isatty(process.stderr.fd)}function Ua(i){let{namespace:e,useColors:t}=this;if(t){let r=this.color,n="\x1B[3"+(r<8?r:"8;5;"+r),s=` ${n};1m${e} \x1B[0m`;i[0]=s+i[0].split(`
|
|
2
2
|
`).join(`
|
|
3
|
-
`+s),i.push(n+"m+"+
|
|
4
|
-
`)}function
|
|
5
|
-
`).map(e=>e.trim()).join(" ")};
|
|
6
|
-
`);return y.substr(0,y.length-2)},this.getRequestHeader=function(y){return typeof y=="string"&&u[y]?u[y]:""},this.send=function(y){if(this.readyState!=this.OPENED)throw new Error("INVALID_STATE_ERR: connection must be opened before send() is called");if(p)throw new Error("INVALID_STATE_ERR: send has already been called");var E=!1,I=!1,C=rs.parse(o.url),M;switch(C.protocol){case"https:":E=!0;case"http:":M=C.hostname;break;case"file:":I=!0;break;case void 0:case"":M="localhost";break;default:throw new Error("Protocol not supported.")}if(I){if(o.method!=="GET")throw new Error("XMLHttpRequest: Only GET method is supported");if(o.async)Et.readFile(unescape(C.pathname),"utf8",function(le,at){le?e.handleError(le,le.errno||-1):(e.status=200,e.responseText=at,T(e.DONE))});else try{this.responseText=Et.readFileSync(unescape(C.pathname),"utf8"),this.status=200,T(e.DONE)}catch(le){this.handleError(le,le.errno||-1)}return}var q=C.port||(E?443:80),te=C.pathname+(C.search?C.search:"");if(u.Host=M,E&&q===443||q===80||(u.Host+=":"+C.port),o.user){typeof o.password=="undefined"&&(o.password="");var Ge=new Buffer(o.user+":"+o.password);u.Authorization="Basic "+Ge.toString("base64")}o.method==="GET"||o.method==="HEAD"?y=null:y?(u["Content-Length"]=Buffer.isBuffer(y)?y.length:Buffer.byteLength(y),u["Content-Type"]||(u["Content-Type"]="text/plain;charset=UTF-8")):o.method==="POST"&&(u["Content-Length"]=0);var Ke=i.agent||!1,X={host:M,port:q,path:te,method:o.method,headers:u,agent:Ke};if(E&&(X.pfx=i.pfx,X.key=i.key,X.passphrase=i.passphrase,X.cert=i.cert,X.ca=i.ca,X.ciphers=i.ciphers,X.rejectUnauthorized=i.rejectUnauthorized!==!1),d=!1,o.async){var Fe=E?r.request:t.request;p=!0,e.dispatchEvent("readystatechange");var Ue=function(le){if(s=le,s.statusCode===302||s.statusCode===303||s.statusCode===307){o.url=s.headers.location;var at=rs.parse(o.url);M=at.hostname;var Be={hostname:at.hostname,port:at.port,path:at.path,method:s.statusCode===303?"GET":o.method,headers:u};E&&(Be.pfx=i.pfx,Be.key=i.key,Be.passphrase=i.passphrase,Be.cert=i.cert,Be.ca=i.ca,Be.ciphers=i.ciphers,Be.rejectUnauthorized=i.rejectUnauthorized!==!1),n=Fe(Be,Ue).on("error",De),n.end();return}s&&s.setEncoding&&s.setEncoding("utf8"),T(e.HEADERS_RECEIVED),e.status=s.statusCode,s.on("data",function(si){si&&(e.responseText+=si),p&&T(e.LOADING)}),s.on("end",function(){p&&(p=!1,T(e.DONE))}),s.on("error",function(si){e.handleError(si)})},De=function(le){e.handleError(le)};n=Fe(X,Ue).on("error",De),i.autoUnref&&n.on("socket",le=>{le.unref()}),y&&n.write(y),n.end(),e.dispatchEvent("loadstart")}else{var de=".node-xmlhttprequest-content-"+process.pid,ie=".node-xmlhttprequest-sync-"+process.pid;Et.writeFileSync(ie,"","utf8");for(var qo="var http = require('http'), https = require('https'), fs = require('fs');var doRequest = http"+(E?"s":"")+".request;var options = "+JSON.stringify(X)+";var responseText = '';var req = doRequest(options, function(response) {response.setEncoding('utf8');response.on('data', function(chunk) { responseText += chunk;});response.on('end', function() {fs.writeFileSync('"+de+"', 'NODE-XMLHTTPREQUEST-STATUS:' + response.statusCode + ',' + responseText, 'utf8');fs.unlinkSync('"+ie+"');});response.on('error', function(error) {fs.writeFileSync('"+de+"', 'NODE-XMLHTTPREQUEST-ERROR:' + JSON.stringify(error), 'utf8');fs.unlinkSync('"+ie+"');});}).on('error', function(error) {fs.writeFileSync('"+de+"', 'NODE-XMLHTTPREQUEST-ERROR:' + JSON.stringify(error), 'utf8');fs.unlinkSync('"+ie+"');});"+(y?"req.write('"+JSON.stringify(y).slice(1,-1).replace(/'/g,"\\'")+"');":"")+"req.end();",Wo=qa(process.argv[0],["-e",qo]),Fl;Et.existsSync(ie););if(e.responseText=Et.readFileSync(de,"utf8"),Wo.stdin.end(),Et.unlinkSync(de),e.responseText.match(/^NODE-XMLHTTPREQUEST-ERROR:/)){var zo=e.responseText.replace(/^NODE-XMLHTTPREQUEST-ERROR:/,"");e.handleError(zo,503)}else e.status=e.responseText.replace(/^NODE-XMLHTTPREQUEST-STATUS:([0-9]*),.*/,"$1"),e.responseText=e.responseText.replace(/^NODE-XMLHTTPREQUEST-STATUS:[0-9]*,(.*)/,"$1"),T(e.DONE)}},this.handleError=function(y,E){this.status=E||0,this.statusText=y,this.responseText=y.stack,d=!0,T(this.DONE)},this.abort=function(){n&&(n.abort(),n=null),u=Object.assign({},h),this.responseText="",this.responseXML="",d=b=!0,this.readyState!==this.UNSENT&&(this.readyState!==this.OPENED||p)&&this.readyState!==this.DONE&&(p=!1,T(this.DONE)),this.readyState=this.UNSENT},this.addEventListener=function(y,E){y in g||(g[y]=[]),g[y].push(E)},this.removeEventListener=function(y,E){y in g&&(g[y]=g[y].filter(function(I){return I!==E}))},this.dispatchEvent=function(y){if(typeof e["on"+y]=="function"&&(this.readyState===this.DONE?setImmediate(function(){e["on"+y]()}):e["on"+y]()),y in g)for(let E=0,I=g[y].length;E<I;E++)this.readyState===this.DONE?setImmediate(function(){g[y][E].call(e)}):g[y][E].call(e)};var T=function(y){if(!(e.readyState===y||e.readyState===e.UNSENT&&b)&&(e.readyState=y,(o.async||e.readyState<e.OPENED||e.readyState===e.DONE)&&e.dispatchEvent("readystatechange"),e.readyState===e.DONE)){let E;b?E="abort":d?E="error":E="load",e.dispatchEvent(E),e.dispatchEvent("loadend")}}}});var us=F((Hf,fs)=>{"use strict";var{Duplex:Va}=N("stream");function ls(i){i.emit("close")}function Ha(){!this.destroyed&&this._writableState.finished&&this.destroy()}function hs(i){this.removeListener("error",hs),this.destroy(),this.listenerCount("error")===0&&this.emit("error",i)}function ja(i,e){let t=!0,r=new Va(k(_({},e),{autoDestroy:!1,emitClose:!1,objectMode:!1,writableObjectMode:!1}));return i.on("message",function(s,o){let a=!o&&r._readableState.objectMode?s.toString():s;r.push(a)||i.pause()}),i.once("error",function(s){r.destroyed||(t=!1,r.destroy(s))}),i.once("close",function(){r.destroyed||r.push(null)}),r._destroy=function(n,s){if(i.readyState===i.CLOSED){s(n),process.nextTick(ls,r);return}let o=!1;i.once("error",function(h){o=!0,s(h)}),i.once("close",function(){o||s(n),process.nextTick(ls,r)}),t&&i.terminate()},r._final=function(n){if(i.readyState===i.CONNECTING){i.once("open",function(){r._final(n)});return}i._socket!==null&&(i._socket._writableState.finished?(n(),r._readableState.endEmitted&&r.destroy()):(i._socket.once("finish",function(){n()}),i.close()))},r._read=function(){i.isPaused&&i.resume()},r._write=function(n,s,o){if(i.readyState===i.CONNECTING){i.once("open",function(){r._write(n,s,o)});return}i.send(n,o)},r.on("end",Ha),r.on("error",hs),r}fs.exports=ja});var $e=F((Gf,ds)=>{"use strict";ds.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 Wt=F((Kf,qi)=>{"use strict";var{EMPTY_BUFFER:Ga}=$e();function Ka(i,e){if(i.length===0)return Ga;if(i.length===1)return i[0];let t=Buffer.allocUnsafe(e),r=0;for(let n=0;n<i.length;n++){let s=i[n];t.set(s,r),r+=s.length}return r<e?t.slice(0,r):t}function ps(i,e,t,r,n){for(let s=0;s<n;s++)t[r+s]=i[s]^e[s&3]}function ms(i,e){for(let t=0;t<i.length;t++)i[t]^=e[t&3]}function Ya(i){return i.byteLength===i.buffer.byteLength?i.buffer:i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength)}function Lr(i){if(Lr.readOnly=!0,Buffer.isBuffer(i))return i;let e;return i instanceof ArrayBuffer?e=Buffer.from(i):ArrayBuffer.isView(i)?e=Buffer.from(i.buffer,i.byteOffset,i.byteLength):(e=Buffer.from(i),Lr.readOnly=!1),e}qi.exports={concat:Ka,mask:ps,toArrayBuffer:Ya,toBuffer:Lr,unmask:ms};if(!process.env.WS_NO_BUFFER_UTIL)try{let i=N("bufferutil");qi.exports.mask=function(e,t,r,n,s){s<48?ps(e,t,r,n,s):i.mask(e,t,r,n,s)},qi.exports.unmask=function(e,t){e.length<32?ms(e,t):i.unmask(e,t)}}catch(i){}});var vs=F((Yf,ys)=>{"use strict";var gs=Symbol("kDone"),Fr=Symbol("kRun"),Ur=class{constructor(e){this[gs]=()=>{this.pending--,this[Fr]()},this.concurrency=e||1/0,this.jobs=[],this.pending=0}add(e){this.jobs.push(e),this[Fr]()}[Fr](){if(this.pending!==this.concurrency&&this.jobs.length){let e=this.jobs.shift();this.pending++,e(this[gs])}}};ys.exports=Ur});var Vt=F((Jf,ws)=>{"use strict";var zt=N("zlib"),_s=Wt(),Ja=vs(),{kStatusCode:Es}=$e(),Xa=Buffer.from([0,0,255,255]),$i=Symbol("permessage-deflate"),Oe=Symbol("total-length"),$t=Symbol("callback"),Ve=Symbol("buffers"),zi=Symbol("error"),Wi,Dr=class{constructor(e,t,r){if(this._maxPayload=r|0,this._options=e||{},this._threshold=this._options.threshold!==void 0?this._options.threshold:1024,this._isServer=!!t,this._deflate=null,this._inflate=null,this.params=null,!Wi){let n=this._options.concurrencyLimit!==void 0?this._options.concurrencyLimit:10;Wi=new Ja(n)}}static get extensionName(){return"permessage-deflate"}offer(){let e={};return this._options.serverNoContextTakeover&&(e.server_no_context_takeover=!0),this._options.clientNoContextTakeover&&(e.client_no_context_takeover=!0),this._options.serverMaxWindowBits&&(e.server_max_window_bits=this._options.serverMaxWindowBits),this._options.clientMaxWindowBits?e.client_max_window_bits=this._options.clientMaxWindowBits:this._options.clientMaxWindowBits==null&&(e.client_max_window_bits=!0),e}accept(e){return e=this.normalizeParams(e),this.params=this._isServer?this.acceptAsServer(e):this.acceptAsClient(e),this.params}cleanup(){if(this._inflate&&(this._inflate.close(),this._inflate=null),this._deflate){let e=this._deflate[$t];this._deflate.close(),this._deflate=null,e&&e(new Error("The deflate stream was closed while data was being processed"))}}acceptAsServer(e){let t=this._options,r=e.find(n=>!(t.serverNoContextTakeover===!1&&n.server_no_context_takeover||n.server_max_window_bits&&(t.serverMaxWindowBits===!1||typeof t.serverMaxWindowBits=="number"&&t.serverMaxWindowBits>n.server_max_window_bits)||typeof t.clientMaxWindowBits=="number"&&!n.client_max_window_bits));if(!r)throw new Error("None of the extension offers can be accepted");return t.serverNoContextTakeover&&(r.server_no_context_takeover=!0),t.clientNoContextTakeover&&(r.client_no_context_takeover=!0),typeof t.serverMaxWindowBits=="number"&&(r.server_max_window_bits=t.serverMaxWindowBits),typeof t.clientMaxWindowBits=="number"?r.client_max_window_bits=t.clientMaxWindowBits:(r.client_max_window_bits===!0||t.clientMaxWindowBits===!1)&&delete r.client_max_window_bits,r}acceptAsClient(e){let t=e[0];if(this._options.clientNoContextTakeover===!1&&t.client_no_context_takeover)throw new Error('Unexpected parameter "client_no_context_takeover"');if(!t.client_max_window_bits)typeof this._options.clientMaxWindowBits=="number"&&(t.client_max_window_bits=this._options.clientMaxWindowBits);else if(this._options.clientMaxWindowBits===!1||typeof this._options.clientMaxWindowBits=="number"&&t.client_max_window_bits>this._options.clientMaxWindowBits)throw new Error('Unexpected or invalid parameter "client_max_window_bits"');return t}normalizeParams(e){return e.forEach(t=>{Object.keys(t).forEach(r=>{let n=t[r];if(n.length>1)throw new Error(`Parameter "${r}" must have only a single value`);if(n=n[0],r==="client_max_window_bits"){if(n!==!0){let s=+n;if(!Number.isInteger(s)||s<8||s>15)throw new TypeError(`Invalid value for parameter "${r}": ${n}`);n=s}else if(!this._isServer)throw new TypeError(`Invalid value for parameter "${r}": ${n}`)}else if(r==="server_max_window_bits"){let s=+n;if(!Number.isInteger(s)||s<8||s>15)throw new TypeError(`Invalid value for parameter "${r}": ${n}`);n=s}else if(r==="client_no_context_takeover"||r==="server_no_context_takeover"){if(n!==!0)throw new TypeError(`Invalid value for parameter "${r}": ${n}`)}else throw new Error(`Unknown parameter "${r}"`);t[r]=n})}),e}decompress(e,t,r){Wi.add(n=>{this._decompress(e,t,(s,o)=>{n(),r(s,o)})})}compress(e,t,r){Wi.add(n=>{this._compress(e,t,(s,o)=>{n(),r(s,o)})})}_decompress(e,t,r){let n=this._isServer?"client":"server";if(!this._inflate){let s=`${n}_max_window_bits`,o=typeof this.params[s]!="number"?zt.Z_DEFAULT_WINDOWBITS:this.params[s];this._inflate=zt.createInflateRaw(k(_({},this._options.zlibInflateOptions),{windowBits:o})),this._inflate[$i]=this,this._inflate[Oe]=0,this._inflate[Ve]=[],this._inflate.on("error",Za),this._inflate.on("data",Ss)}this._inflate[$t]=r,this._inflate.write(e),t&&this._inflate.write(Xa),this._inflate.flush(()=>{let s=this._inflate[zi];if(s){this._inflate.close(),this._inflate=null,r(s);return}let o=_s.concat(this._inflate[Ve],this._inflate[Oe]);this._inflate._readableState.endEmitted?(this._inflate.close(),this._inflate=null):(this._inflate[Oe]=0,this._inflate[Ve]=[],t&&this.params[`${n}_no_context_takeover`]&&this._inflate.reset()),r(null,o)})}_compress(e,t,r){let n=this._isServer?"server":"client";if(!this._deflate){let s=`${n}_max_window_bits`,o=typeof this.params[s]!="number"?zt.Z_DEFAULT_WINDOWBITS:this.params[s];this._deflate=zt.createDeflateRaw(k(_({},this._options.zlibDeflateOptions),{windowBits:o})),this._deflate[Oe]=0,this._deflate[Ve]=[],this._deflate.on("data",Qa)}this._deflate[$t]=r,this._deflate.write(e),this._deflate.flush(zt.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let s=_s.concat(this._deflate[Ve],this._deflate[Oe]);t&&(s=s.slice(0,s.length-4)),this._deflate[$t]=null,this._deflate[Oe]=0,this._deflate[Ve]=[],t&&this.params[`${n}_no_context_takeover`]&&this._deflate.reset(),r(null,s)})}};ws.exports=Dr;function Qa(i){this[Ve].push(i),this[Oe]+=i.length}function Ss(i){if(this[Oe]+=i.length,this[$i]._maxPayload<1||this[Oe]<=this[$i]._maxPayload){this[Ve].push(i);return}this[zi]=new RangeError("Max payload size exceeded"),this[zi].code="WS_ERR_UNSUPPORTED_MESSAGE_LENGTH",this[zi][Es]=1009,this.removeListener("data",Ss),this.reset()}function Za(i){this[$i]._inflate=null,i[Es]=1007,this[$t](i)}});var Ht=F((Qf,Br)=>{"use strict";var ec=[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 tc(i){return i>=1e3&&i<=1014&&i!==1004&&i!==1005&&i!==1006||i>=3e3&&i<=4999}function bs(i){let e=i.length,t=0;for(;t<e;)if(!(i[t]&128))t++;else if((i[t]&224)===192){if(t+1===e||(i[t+1]&192)!==128||(i[t]&254)===192)return!1;t+=2}else if((i[t]&240)===224){if(t+2>=e||(i[t+1]&192)!==128||(i[t+2]&192)!==128||i[t]===224&&(i[t+1]&224)===128||i[t]===237&&(i[t+1]&224)===160)return!1;t+=3}else if((i[t]&248)===240){if(t+3>=e||(i[t+1]&192)!==128||(i[t+2]&192)!==128||(i[t+3]&192)!==128||i[t]===240&&(i[t+1]&240)===128||i[t]===244&&i[t+1]>143||i[t]>244)return!1;t+=4}else return!1;return!0}Br.exports={isValidStatusCode:tc,isValidUTF8:bs,tokenChars:ec};if(!process.env.WS_NO_UTF_8_VALIDATE)try{let i=N("utf-8-validate");Br.exports.isValidUTF8=function(e){return e.length<150?bs(e):i(e)}}catch(i){}});var zr=F((Zf,Ts)=>{"use strict";var{Writable:ic}=N("stream"),xs=Vt(),{BINARY_TYPES:rc,EMPTY_BUFFER:Cs,kStatusCode:nc,kWebSocket:sc}=$e(),{concat:Mr,toArrayBuffer:oc,unmask:ac}=Wt(),{isValidStatusCode:cc,isValidUTF8:Ns}=Ht(),jt=0,ks=1,As=2,Rs=3,qr=4,lc=5,Wr=class extends ic{constructor(e={}){super(),this._binaryType=e.binaryType||rc[0],this._extensions=e.extensions||{},this._isServer=!!e.isServer,this._maxPayload=e.maxPayload|0,this._skipUTF8Validation=!!e.skipUTF8Validation,this[sc]=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._state=jt,this._loop=!1}_write(e,t,r){if(this._opcode===8&&this._state==jt)return r();this._bufferedBytes+=e.length,this._buffers.push(e),this.startLoop(r)}consume(e){if(this._bufferedBytes-=e,e===this._buffers[0].length)return this._buffers.shift();if(e<this._buffers[0].length){let r=this._buffers[0];return this._buffers[0]=r.slice(e),r.slice(0,e)}let t=Buffer.allocUnsafe(e);do{let r=this._buffers[0],n=t.length-e;e>=r.length?t.set(this._buffers.shift(),n):(t.set(new Uint8Array(r.buffer,r.byteOffset,e),n),this._buffers[0]=r.slice(e)),e-=r.length}while(e>0);return t}startLoop(e){let t;this._loop=!0;do switch(this._state){case jt:t=this.getInfo();break;case ks:t=this.getPayloadLength16();break;case As:t=this.getPayloadLength64();break;case Rs:this.getMask();break;case qr:t=this.getData(e);break;default:this._loop=!1;return}while(this._loop);e(t)}getInfo(){if(this._bufferedBytes<2){this._loop=!1;return}let e=this.consume(2);if(e[0]&48)return this._loop=!1,W(RangeError,"RSV2 and RSV3 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_2_3");let t=(e[0]&64)===64;if(t&&!this._extensions[xs.extensionName])return this._loop=!1,W(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");if(this._fin=(e[0]&128)===128,this._opcode=e[0]&15,this._payloadLength=e[1]&127,this._opcode===0){if(t)return this._loop=!1,W(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");if(!this._fragmented)return this._loop=!1,W(RangeError,"invalid opcode 0",!0,1002,"WS_ERR_INVALID_OPCODE");this._opcode=this._fragmented}else if(this._opcode===1||this._opcode===2){if(this._fragmented)return this._loop=!1,W(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");this._compressed=t}else if(this._opcode>7&&this._opcode<11){if(!this._fin)return this._loop=!1,W(RangeError,"FIN must be set",!0,1002,"WS_ERR_EXPECTED_FIN");if(t)return this._loop=!1,W(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");if(this._payloadLength>125)return this._loop=!1,W(RangeError,`invalid payload length ${this._payloadLength}`,!0,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH")}else return this._loop=!1,W(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");if(!this._fin&&!this._fragmented&&(this._fragmented=this._opcode),this._masked=(e[1]&128)===128,this._isServer){if(!this._masked)return this._loop=!1,W(RangeError,"MASK must be set",!0,1002,"WS_ERR_EXPECTED_MASK")}else if(this._masked)return this._loop=!1,W(RangeError,"MASK must be clear",!0,1002,"WS_ERR_UNEXPECTED_MASK");if(this._payloadLength===126)this._state=ks;else if(this._payloadLength===127)this._state=As;else return this.haveLength()}getPayloadLength16(){if(this._bufferedBytes<2){this._loop=!1;return}return this._payloadLength=this.consume(2).readUInt16BE(0),this.haveLength()}getPayloadLength64(){if(this._bufferedBytes<8){this._loop=!1;return}let e=this.consume(8),t=e.readUInt32BE(0);return t>Math.pow(2,21)-1?(this._loop=!1,W(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009,"WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH")):(this._payloadLength=t*Math.pow(2,32)+e.readUInt32BE(4),this.haveLength())}haveLength(){if(this._payloadLength&&this._opcode<8&&(this._totalPayloadLength+=this._payloadLength,this._totalPayloadLength>this._maxPayload&&this._maxPayload>0))return this._loop=!1,W(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");this._masked?this._state=Rs:this._state=qr}getMask(){if(this._bufferedBytes<4){this._loop=!1;return}this._mask=this.consume(4),this._state=qr}getData(e){let t=Cs;if(this._payloadLength){if(this._bufferedBytes<this._payloadLength){this._loop=!1;return}t=this.consume(this._payloadLength),this._masked&&this._mask[0]|this._mask[1]|this._mask[2]|this._mask[3]&&ac(t,this._mask)}if(this._opcode>7)return this.controlMessage(t);if(this._compressed){this._state=lc,this.decompress(t,e);return}return t.length&&(this._messageLength=this._totalPayloadLength,this._fragments.push(t)),this.dataMessage()}decompress(e,t){this._extensions[xs.extensionName].decompress(e,this._fin,(n,s)=>{if(n)return t(n);if(s.length){if(this._messageLength+=s.length,this._messageLength>this._maxPayload&&this._maxPayload>0)return t(W(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH"));this._fragments.push(s)}let o=this.dataMessage();if(o)return t(o);this.startLoop(t)})}dataMessage(){if(this._fin){let e=this._messageLength,t=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._fragments=[],this._opcode===2){let r;this._binaryType==="nodebuffer"?r=Mr(t,e):this._binaryType==="arraybuffer"?r=oc(Mr(t,e)):r=t,this.emit("message",r,!0)}else{let r=Mr(t,e);if(!this._skipUTF8Validation&&!Ns(r))return this._loop=!1,W(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");this.emit("message",r,!1)}}this._state=jt}controlMessage(e){if(this._opcode===8)if(this._loop=!1,e.length===0)this.emit("conclude",1005,Cs),this.end();else{if(e.length===1)return W(RangeError,"invalid payload length 1",!0,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH");{let t=e.readUInt16BE(0);if(!cc(t))return W(RangeError,`invalid status code ${t}`,!0,1002,"WS_ERR_INVALID_CLOSE_CODE");let r=e.slice(2);if(!this._skipUTF8Validation&&!Ns(r))return W(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");this.emit("conclude",t,r),this.end()}}else this._opcode===9?this.emit("ping",e):this.emit("pong",e);this._state=jt}};Ts.exports=Wr;function W(i,e,t,r,n){let s=new i(t?`Invalid WebSocket frame: ${e}`:e);return Error.captureStackTrace(s,W),s.code=n,s[nc]=r,s}});var Vr=F((iu,Ps)=>{"use strict";var eu=N("net"),tu=N("tls"),{randomFillSync:hc}=N("crypto"),Os=Vt(),{EMPTY_BUFFER:fc}=$e(),{isValidStatusCode:uc}=Ht(),{mask:Is,toBuffer:St}=Wt(),_e=Symbol("kByteLength"),dc=Buffer.alloc(4),$r=class i{constructor(e,t,r){this._extensions=t||{},r&&(this._generateMask=r,this._maskBuffer=Buffer.alloc(4)),this._socket=e,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._deflating=!1,this._queue=[]}static frame(e,t){let r,n=!1,s=2,o=!1;t.mask&&(r=t.maskBuffer||dc,t.generateMask?t.generateMask(r):hc(r,0,4),o=(r[0]|r[1]|r[2]|r[3])===0,s=6);let a;typeof e=="string"?(!t.mask||o)&&t[_e]!==void 0?a=t[_e]:(e=Buffer.from(e),a=e.length):(a=e.length,n=t.mask&&t.readOnly&&!o);let h=a;a>=65536?(s+=8,h=127):a>125&&(s+=2,h=126);let u=Buffer.allocUnsafe(n?a+s:s);return u[0]=t.fin?t.opcode|128:t.opcode,t.rsv1&&(u[0]|=64),u[1]=h,h===126?u.writeUInt16BE(a,2):h===127&&(u[2]=u[3]=0,u.writeUIntBE(a,4,6)),t.mask?(u[1]|=128,u[s-4]=r[0],u[s-3]=r[1],u[s-2]=r[2],u[s-1]=r[3],o?[u,e]:n?(Is(e,r,u,s,a),[u]):(Is(e,r,e,0,a),[u,e])):[u,e]}close(e,t,r,n){let s;if(e===void 0)s=fc;else{if(typeof e!="number"||!uc(e))throw new TypeError("First argument must be a valid error code number");if(t===void 0||!t.length)s=Buffer.allocUnsafe(2),s.writeUInt16BE(e,0);else{let a=Buffer.byteLength(t);if(a>123)throw new RangeError("The message must not be greater than 123 bytes");s=Buffer.allocUnsafe(2+a),s.writeUInt16BE(e,0),typeof t=="string"?s.write(t,2):s.set(t,2)}}let o={[_e]:s.length,fin:!0,generateMask:this._generateMask,mask:r,maskBuffer:this._maskBuffer,opcode:8,readOnly:!1,rsv1:!1};this._deflating?this.enqueue([this.dispatch,s,!1,o,n]):this.sendFrame(i.frame(s,o),n)}ping(e,t,r){let n,s;if(typeof e=="string"?(n=Buffer.byteLength(e),s=!1):(e=St(e),n=e.length,s=St.readOnly),n>125)throw new RangeError("The data size must not be greater than 125 bytes");let o={[_e]:n,fin:!0,generateMask:this._generateMask,mask:t,maskBuffer:this._maskBuffer,opcode:9,readOnly:s,rsv1:!1};this._deflating?this.enqueue([this.dispatch,e,!1,o,r]):this.sendFrame(i.frame(e,o),r)}pong(e,t,r){let n,s;if(typeof e=="string"?(n=Buffer.byteLength(e),s=!1):(e=St(e),n=e.length,s=St.readOnly),n>125)throw new RangeError("The data size must not be greater than 125 bytes");let o={[_e]:n,fin:!0,generateMask:this._generateMask,mask:t,maskBuffer:this._maskBuffer,opcode:10,readOnly:s,rsv1:!1};this._deflating?this.enqueue([this.dispatch,e,!1,o,r]):this.sendFrame(i.frame(e,o),r)}send(e,t,r){let n=this._extensions[Os.extensionName],s=t.binary?2:1,o=t.compress,a,h;if(typeof e=="string"?(a=Buffer.byteLength(e),h=!1):(e=St(e),a=e.length,h=St.readOnly),this._firstFragment?(this._firstFragment=!1,o&&n&&n.params[n._isServer?"server_no_context_takeover":"client_no_context_takeover"]&&(o=a>=n._threshold),this._compress=o):(o=!1,s=0),t.fin&&(this._firstFragment=!0),n){let u={[_e]:a,fin:t.fin,generateMask:this._generateMask,mask:t.mask,maskBuffer:this._maskBuffer,opcode:s,readOnly:h,rsv1:o};this._deflating?this.enqueue([this.dispatch,e,this._compress,u,r]):this.dispatch(e,this._compress,u,r)}else this.sendFrame(i.frame(e,{[_e]:a,fin:t.fin,generateMask:this._generateMask,mask:t.mask,maskBuffer:this._maskBuffer,opcode:s,readOnly:h,rsv1:!1}),r)}dispatch(e,t,r,n){if(!t){this.sendFrame(i.frame(e,r),n);return}let s=this._extensions[Os.extensionName];this._bufferedBytes+=r[_e],this._deflating=!0,s.compress(e,r.fin,(o,a)=>{if(this._socket.destroyed){let h=new Error("The socket was closed while data was being compressed");typeof n=="function"&&n(h);for(let u=0;u<this._queue.length;u++){let l=this._queue[u],f=l[l.length-1];typeof f=="function"&&f(h)}return}this._bufferedBytes-=r[_e],this._deflating=!1,r.readOnly=!1,this.sendFrame(i.frame(a,r),n),this.dequeue()})}dequeue(){for(;!this._deflating&&this._queue.length;){let e=this._queue.shift();this._bufferedBytes-=e[3][_e],Reflect.apply(e[0],this,e.slice(1))}}enqueue(e){this._bufferedBytes+=e[3][_e],this._queue.push(e)}sendFrame(e,t){e.length===2?(this._socket.cork(),this._socket.write(e[0]),this._socket.write(e[1],t),this._socket.uncork()):this._socket.write(e[0],t)}};Ps.exports=$r});var zs=F((ru,Ws)=>{"use strict";var{kForOnEventAttribute:Gt,kListener:Hr}=$e(),Ls=Symbol("kCode"),Fs=Symbol("kData"),Us=Symbol("kError"),Ds=Symbol("kMessage"),Bs=Symbol("kReason"),wt=Symbol("kTarget"),Ms=Symbol("kType"),qs=Symbol("kWasClean"),Ie=class{constructor(e){this[wt]=null,this[Ms]=e}get target(){return this[wt]}get type(){return this[Ms]}};Object.defineProperty(Ie.prototype,"target",{enumerable:!0});Object.defineProperty(Ie.prototype,"type",{enumerable:!0});var tt=class extends Ie{constructor(e,t={}){super(e),this[Ls]=t.code===void 0?0:t.code,this[Bs]=t.reason===void 0?"":t.reason,this[qs]=t.wasClean===void 0?!1:t.wasClean}get code(){return this[Ls]}get reason(){return this[Bs]}get wasClean(){return this[qs]}};Object.defineProperty(tt.prototype,"code",{enumerable:!0});Object.defineProperty(tt.prototype,"reason",{enumerable:!0});Object.defineProperty(tt.prototype,"wasClean",{enumerable:!0});var bt=class extends Ie{constructor(e,t={}){super(e),this[Us]=t.error===void 0?null:t.error,this[Ds]=t.message===void 0?"":t.message}get error(){return this[Us]}get message(){return this[Ds]}};Object.defineProperty(bt.prototype,"error",{enumerable:!0});Object.defineProperty(bt.prototype,"message",{enumerable:!0});var Kt=class extends Ie{constructor(e,t={}){super(e),this[Fs]=t.data===void 0?null:t.data}get data(){return this[Fs]}};Object.defineProperty(Kt.prototype,"data",{enumerable:!0});var pc={addEventListener(i,e,t={}){for(let n of this.listeners(i))if(!t[Gt]&&n[Hr]===e&&!n[Gt])return;let r;if(i==="message")r=function(s,o){let a=new Kt("message",{data:o?s:s.toString()});a[wt]=this,Vi(e,this,a)};else if(i==="close")r=function(s,o){let a=new tt("close",{code:s,reason:o.toString(),wasClean:this._closeFrameReceived&&this._closeFrameSent});a[wt]=this,Vi(e,this,a)};else if(i==="error")r=function(s){let o=new bt("error",{error:s,message:s.message});o[wt]=this,Vi(e,this,o)};else if(i==="open")r=function(){let s=new Ie("open");s[wt]=this,Vi(e,this,s)};else return;r[Gt]=!!t[Gt],r[Hr]=e,t.once?this.once(i,r):this.on(i,r)},removeEventListener(i,e){for(let t of this.listeners(i))if(t[Hr]===e&&!t[Gt]){this.removeListener(i,t);break}}};Ws.exports={CloseEvent:tt,ErrorEvent:bt,Event:Ie,EventTarget:pc,MessageEvent:Kt};function Vi(i,e,t){typeof i=="object"&&i.handleEvent?i.handleEvent.call(i,t):i.call(e,t)}});var jr=F((nu,$s)=>{"use strict";var{tokenChars:Yt}=Ht();function xe(i,e,t){i[e]===void 0?i[e]=[t]:i[e].push(t)}function mc(i){let e=Object.create(null),t=Object.create(null),r=!1,n=!1,s=!1,o,a,h=-1,u=-1,l=-1,f=0;for(;f<i.length;f++)if(u=i.charCodeAt(f),o===void 0)if(l===-1&&Yt[u]===1)h===-1&&(h=f);else if(f!==0&&(u===32||u===9))l===-1&&h!==-1&&(l=f);else if(u===59||u===44){if(h===-1)throw new SyntaxError(`Unexpected character at index ${f}`);l===-1&&(l=f);let d=i.slice(h,l);u===44?(xe(e,d,t),t=Object.create(null)):o=d,h=l=-1}else throw new SyntaxError(`Unexpected character at index ${f}`);else if(a===void 0)if(l===-1&&Yt[u]===1)h===-1&&(h=f);else if(u===32||u===9)l===-1&&h!==-1&&(l=f);else if(u===59||u===44){if(h===-1)throw new SyntaxError(`Unexpected character at index ${f}`);l===-1&&(l=f),xe(t,i.slice(h,l),!0),u===44&&(xe(e,o,t),t=Object.create(null),o=void 0),h=l=-1}else if(u===61&&h!==-1&&l===-1)a=i.slice(h,f),h=l=-1;else throw new SyntaxError(`Unexpected character at index ${f}`);else if(n){if(Yt[u]!==1)throw new SyntaxError(`Unexpected character at index ${f}`);h===-1?h=f:r||(r=!0),n=!1}else if(s)if(Yt[u]===1)h===-1&&(h=f);else if(u===34&&h!==-1)s=!1,l=f;else if(u===92)n=!0;else throw new SyntaxError(`Unexpected character at index ${f}`);else if(u===34&&i.charCodeAt(f-1)===61)s=!0;else if(l===-1&&Yt[u]===1)h===-1&&(h=f);else if(h!==-1&&(u===32||u===9))l===-1&&(l=f);else if(u===59||u===44){if(h===-1)throw new SyntaxError(`Unexpected character at index ${f}`);l===-1&&(l=f);let d=i.slice(h,l);r&&(d=d.replace(/\\/g,""),r=!1),xe(t,a,d),u===44&&(xe(e,o,t),t=Object.create(null),o=void 0),a=void 0,h=l=-1}else throw new SyntaxError(`Unexpected character at index ${f}`);if(h===-1||s||u===32||u===9)throw new SyntaxError("Unexpected end of input");l===-1&&(l=f);let p=i.slice(h,l);return o===void 0?xe(e,p,t):(a===void 0?xe(t,p,!0):r?xe(t,a,p.replace(/\\/g,"")):xe(t,a,p),xe(e,o,t)),e}function gc(i){return Object.keys(i).map(e=>{let t=i[e];return Array.isArray(t)||(t=[t]),t.map(r=>[e].concat(Object.keys(r).map(n=>{let s=r[n];return Array.isArray(s)||(s=[s]),s.map(o=>o===!0?n:`${n}=${o}`).join("; ")})).join("; ")).join(", ")}).join(", ")}$s.exports={format:gc,parse:mc}});var Xr=F((ou,eo)=>{"use strict";var yc=N("events"),vc=N("https"),_c=N("http"),js=N("net"),Ec=N("tls"),{randomBytes:Sc,createHash:wc}=N("crypto"),{Readable:su}=N("stream"),{URL:Gr}=N("url"),He=Vt(),bc=zr(),xc=Vr(),{BINARY_TYPES:Vs,EMPTY_BUFFER:Hi,GUID:Cc,kForOnEventAttribute:Kr,kListener:Nc,kStatusCode:kc,kWebSocket:J,NOOP:Gs}=$e(),{EventTarget:{addEventListener:Ac,removeEventListener:Rc}}=zs(),{format:Tc,parse:Oc}=jr(),{toBuffer:Ic}=Wt(),Pc=30*1e3,Ks=Symbol("kAborted"),Yr=[8,13],Pe=["CONNECTING","OPEN","CLOSING","CLOSED"],Lc=/^[!#$%&'*+\-.0-9A-Z^_`|a-z~]+$/,B=class i extends yc{constructor(e,t,r){super(),this._binaryType=Vs[0],this._closeCode=1006,this._closeFrameReceived=!1,this._closeFrameSent=!1,this._closeMessage=Hi,this._closeTimer=null,this._extensions={},this._paused=!1,this._protocol="",this._readyState=i.CONNECTING,this._receiver=null,this._sender=null,this._socket=null,e!==null?(this._bufferedAmount=0,this._isServer=!1,this._redirects=0,t===void 0?t=[]:Array.isArray(t)||(typeof t=="object"&&t!==null?(r=t,t=[]):t=[t]),Ys(this,e,t,r)):this._isServer=!0}get binaryType(){return this._binaryType}set binaryType(e){Vs.includes(e)&&(this._binaryType=e,this._receiver&&(this._receiver._binaryType=e))}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(e,t,r){let n=new bc({binaryType:this.binaryType,extensions:this._extensions,isServer:this._isServer,maxPayload:r.maxPayload,skipUTF8Validation:r.skipUTF8Validation});this._sender=new xc(e,this._extensions,r.generateMask),this._receiver=n,this._socket=e,n[J]=this,e[J]=this,n.on("conclude",Dc),n.on("drain",Bc),n.on("error",Mc),n.on("message",qc),n.on("ping",Wc),n.on("pong",zc),e.setTimeout(0),e.setNoDelay(),t.length>0&&e.unshift(t),e.on("close",Xs),e.on("data",Gi),e.on("end",Qs),e.on("error",Zs),this._readyState=i.OPEN,this.emit("open")}emitClose(){if(!this._socket){this._readyState=i.CLOSED,this.emit("close",this._closeCode,this._closeMessage);return}this._extensions[He.extensionName]&&this._extensions[He.extensionName].cleanup(),this._receiver.removeAllListeners(),this._readyState=i.CLOSED,this.emit("close",this._closeCode,this._closeMessage)}close(e,t){if(this.readyState!==i.CLOSED){if(this.readyState===i.CONNECTING)return se(this,this._req,"WebSocket was closed before the connection was established");if(this.readyState===i.CLOSING){this._closeFrameSent&&(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end();return}this._readyState=i.CLOSING,this._sender.close(e,t,!this._isServer,r=>{r||(this._closeFrameSent=!0,(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end())}),this._closeTimer=setTimeout(this._socket.destroy.bind(this._socket),Pc)}}pause(){this.readyState===i.CONNECTING||this.readyState===i.CLOSED||(this._paused=!0,this._socket.pause())}ping(e,t,r){if(this.readyState===i.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof e=="function"?(r=e,e=t=void 0):typeof t=="function"&&(r=t,t=void 0),typeof e=="number"&&(e=e.toString()),this.readyState!==i.OPEN){Jr(this,e,r);return}t===void 0&&(t=!this._isServer),this._sender.ping(e||Hi,t,r)}pong(e,t,r){if(this.readyState===i.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof e=="function"?(r=e,e=t=void 0):typeof t=="function"&&(r=t,t=void 0),typeof e=="number"&&(e=e.toString()),this.readyState!==i.OPEN){Jr(this,e,r);return}t===void 0&&(t=!this._isServer),this._sender.pong(e||Hi,t,r)}resume(){this.readyState===i.CONNECTING||this.readyState===i.CLOSED||(this._paused=!1,this._receiver._writableState.needDrain||this._socket.resume())}send(e,t,r){if(this.readyState===i.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof t=="function"&&(r=t,t={}),typeof e=="number"&&(e=e.toString()),this.readyState!==i.OPEN){Jr(this,e,r);return}let n=_({binary:typeof e!="string",mask:!this._isServer,compress:!0,fin:!0},t);this._extensions[He.extensionName]||(n.compress=!1),this._sender.send(e||Hi,n,r)}terminate(){if(this.readyState!==i.CLOSED){if(this.readyState===i.CONNECTING)return se(this,this._req,"WebSocket was closed before the connection was established");this._socket&&(this._readyState=i.CLOSING,this._socket.destroy())}}};Object.defineProperty(B,"CONNECTING",{enumerable:!0,value:Pe.indexOf("CONNECTING")});Object.defineProperty(B.prototype,"CONNECTING",{enumerable:!0,value:Pe.indexOf("CONNECTING")});Object.defineProperty(B,"OPEN",{enumerable:!0,value:Pe.indexOf("OPEN")});Object.defineProperty(B.prototype,"OPEN",{enumerable:!0,value:Pe.indexOf("OPEN")});Object.defineProperty(B,"CLOSING",{enumerable:!0,value:Pe.indexOf("CLOSING")});Object.defineProperty(B.prototype,"CLOSING",{enumerable:!0,value:Pe.indexOf("CLOSING")});Object.defineProperty(B,"CLOSED",{enumerable:!0,value:Pe.indexOf("CLOSED")});Object.defineProperty(B.prototype,"CLOSED",{enumerable:!0,value:Pe.indexOf("CLOSED")});["binaryType","bufferedAmount","extensions","isPaused","protocol","readyState","url"].forEach(i=>{Object.defineProperty(B.prototype,i,{enumerable:!0})});["open","error","close","message"].forEach(i=>{Object.defineProperty(B.prototype,`on${i}`,{enumerable:!0,get(){for(let e of this.listeners(i))if(e[Kr])return e[Nc];return null},set(e){for(let t of this.listeners(i))if(t[Kr]){this.removeListener(i,t);break}typeof e=="function"&&this.addEventListener(i,e,{[Kr]:!0})}})});B.prototype.addEventListener=Ac;B.prototype.removeEventListener=Rc;eo.exports=B;function Ys(i,e,t,r){let n=k(_({protocolVersion:Yr[1],maxPayload:104857600,skipUTF8Validation:!1,perMessageDeflate:!0,followRedirects:!1,maxRedirects:10},r),{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(!Yr.includes(n.protocolVersion))throw new RangeError(`Unsupported protocol version: ${n.protocolVersion} (supported versions: ${Yr.join(", ")})`);let s;if(e instanceof Gr)s=e,i._url=e.href;else{try{s=new Gr(e)}catch(g){throw new SyntaxError(`Invalid URL: ${e}`)}i._url=e}let o=s.protocol==="wss:",a=s.protocol==="ws+unix:",h;if(s.protocol!=="ws:"&&!o&&!a?h=`The URL's protocol must be one of "ws:", "wss:", or "ws+unix:"`:a&&!s.pathname?h="The URL's pathname is empty":s.hash&&(h="The URL contains a fragment identifier"),h){let g=new SyntaxError(h);if(i._redirects===0)throw g;ji(i,g);return}let u=o?443:80,l=Sc(16).toString("base64"),f=o?vc.request:_c.request,p=new Set,d;if(n.createConnection=o?Uc:Fc,n.defaultPort=n.defaultPort||u,n.port=s.port||u,n.host=s.hostname.startsWith("[")?s.hostname.slice(1,-1):s.hostname,n.headers=k(_({},n.headers),{"Sec-WebSocket-Version":n.protocolVersion,"Sec-WebSocket-Key":l,Connection:"Upgrade",Upgrade:"websocket"}),n.path=s.pathname+s.search,n.timeout=n.handshakeTimeout,n.perMessageDeflate&&(d=new He(n.perMessageDeflate!==!0?n.perMessageDeflate:{},!1,n.maxPayload),n.headers["Sec-WebSocket-Extensions"]=Tc({[He.extensionName]:d.offer()})),t.length){for(let g of t){if(typeof g!="string"||!Lc.test(g)||p.has(g))throw new SyntaxError("An invalid or duplicated subprotocol was specified");p.add(g)}n.headers["Sec-WebSocket-Protocol"]=t.join(",")}if(n.origin&&(n.protocolVersion<13?n.headers["Sec-WebSocket-Origin"]=n.origin:n.headers.Origin=n.origin),(s.username||s.password)&&(n.auth=`${s.username}:${s.password}`),a){let g=n.path.split(":");n.socketPath=g[0],n.path=g[1]}let b;if(n.followRedirects){if(i._redirects===0){i._originalIpc=a,i._originalSecure=o,i._originalHostOrSocketPath=a?n.socketPath:s.host;let g=r&&r.headers;if(r=k(_({},r),{headers:{}}),g)for(let[v,R]of Object.entries(g))r.headers[v.toLowerCase()]=R}else if(i.listenerCount("redirect")===0){let g=a?i._originalIpc?n.socketPath===i._originalHostOrSocketPath:!1:i._originalIpc?!1:s.host===i._originalHostOrSocketPath;(!g||i._originalSecure&&!o)&&(delete n.headers.authorization,delete n.headers.cookie,g||delete n.headers.host,n.auth=void 0)}n.auth&&!r.headers.authorization&&(r.headers.authorization="Basic "+Buffer.from(n.auth).toString("base64")),b=i._req=f(n),i._redirects&&i.emit("redirect",i.url,b)}else b=i._req=f(n);n.timeout&&b.on("timeout",()=>{se(i,b,"Opening handshake has timed out")}),b.on("error",g=>{b===null||b[Ks]||(b=i._req=null,ji(i,g))}),b.on("response",g=>{let v=g.headers.location,R=g.statusCode;if(v&&n.followRedirects&&R>=300&&R<400){if(++i._redirects>n.maxRedirects){se(i,b,"Maximum redirects exceeded");return}b.abort();let T;try{T=new Gr(v,e)}catch(y){let E=new SyntaxError(`Invalid URL: ${v}`);ji(i,E);return}Ys(i,T,t,r)}else i.emit("unexpected-response",b,g)||se(i,b,`Unexpected server response: ${g.statusCode}`)}),b.on("upgrade",(g,v,R)=>{if(i.emit("upgrade",g),i.readyState!==B.CONNECTING)return;if(b=i._req=null,g.headers.upgrade.toLowerCase()!=="websocket"){se(i,v,"Invalid Upgrade header");return}let T=wc("sha1").update(l+Cc).digest("base64");if(g.headers["sec-websocket-accept"]!==T){se(i,v,"Invalid Sec-WebSocket-Accept header");return}let y=g.headers["sec-websocket-protocol"],E;if(y!==void 0?p.size?p.has(y)||(E="Server sent an invalid subprotocol"):E="Server sent a subprotocol but none was requested":p.size&&(E="Server sent no subprotocol"),E){se(i,v,E);return}y&&(i._protocol=y);let I=g.headers["sec-websocket-extensions"];if(I!==void 0){if(!d){se(i,v,"Server sent a Sec-WebSocket-Extensions header but no extension was requested");return}let C;try{C=Oc(I)}catch(q){se(i,v,"Invalid Sec-WebSocket-Extensions header");return}let M=Object.keys(C);if(M.length!==1||M[0]!==He.extensionName){se(i,v,"Server indicated an extension that was not requested");return}try{d.accept(C[He.extensionName])}catch(q){se(i,v,"Invalid Sec-WebSocket-Extensions header");return}i._extensions[He.extensionName]=d}i.setSocket(v,R,{generateMask:n.generateMask,maxPayload:n.maxPayload,skipUTF8Validation:n.skipUTF8Validation})}),b.end()}function ji(i,e){i._readyState=B.CLOSING,i.emit("error",e),i.emitClose()}function Fc(i){return i.path=i.socketPath,js.connect(i)}function Uc(i){return i.path=void 0,!i.servername&&i.servername!==""&&(i.servername=js.isIP(i.host)?"":i.host),Ec.connect(i)}function se(i,e,t){i._readyState=B.CLOSING;let r=new Error(t);Error.captureStackTrace(r,se),e.setHeader?(e[Ks]=!0,e.abort(),e.socket&&!e.socket.destroyed&&e.socket.destroy(),process.nextTick(ji,i,r)):(e.destroy(r),e.once("error",i.emit.bind(i,"error")),e.once("close",i.emitClose.bind(i)))}function Jr(i,e,t){if(e){let r=Ic(e).length;i._socket?i._sender._bufferedBytes+=r:i._bufferedAmount+=r}if(t){let r=new Error(`WebSocket is not open: readyState ${i.readyState} (${Pe[i.readyState]})`);t(r)}}function Dc(i,e){let t=this[J];t._closeFrameReceived=!0,t._closeMessage=e,t._closeCode=i,t._socket[J]!==void 0&&(t._socket.removeListener("data",Gi),process.nextTick(Js,t._socket),i===1005?t.close():t.close(i,e))}function Bc(){let i=this[J];i.isPaused||i._socket.resume()}function Mc(i){let e=this[J];e._socket[J]!==void 0&&(e._socket.removeListener("data",Gi),process.nextTick(Js,e._socket),e.close(i[kc])),e.emit("error",i)}function Hs(){this[J].emitClose()}function qc(i,e){this[J].emit("message",i,e)}function Wc(i){let e=this[J];e.pong(i,!e._isServer,Gs),e.emit("ping",i)}function zc(i){this[J].emit("pong",i)}function Js(i){i.resume()}function Xs(){let i=this[J];this.removeListener("close",Xs),this.removeListener("data",Gi),this.removeListener("end",Qs),i._readyState=B.CLOSING;let e;!this._readableState.endEmitted&&!i._closeFrameReceived&&!i._receiver._writableState.errorEmitted&&(e=i._socket.read())!==null&&i._receiver.write(e),i._receiver.end(),this[J]=void 0,clearTimeout(i._closeTimer),i._receiver._writableState.finished||i._receiver._writableState.errorEmitted?i.emitClose():(i._receiver.on("error",Hs),i._receiver.on("finish",Hs))}function Gi(i){this[J]._receiver.write(i)||this.pause()}function Qs(){let i=this[J];i._readyState=B.CLOSING,i._receiver.end(),this.end()}function Zs(){let i=this[J];this.removeListener("error",Zs),this.on("error",Gs),i&&(i._readyState=B.CLOSING,this.destroy())}});var io=F((cu,to)=>{"use strict";var{tokenChars:$c}=Ht();function Vc(i){let e=new Set,t=-1,r=-1,n=0;for(n;n<i.length;n++){let o=i.charCodeAt(n);if(r===-1&&$c[o]===1)t===-1&&(t=n);else if(n!==0&&(o===32||o===9))r===-1&&t!==-1&&(r=n);else if(o===44){if(t===-1)throw new SyntaxError(`Unexpected character at index ${n}`);r===-1&&(r=n);let a=i.slice(t,r);if(e.has(a))throw new SyntaxError(`The "${a}" subprotocol is duplicated`);e.add(a),t=r=-1}else throw new SyntaxError(`Unexpected character at index ${n}`)}if(t===-1||r!==-1)throw new SyntaxError("Unexpected end of input");let s=i.slice(t,n);if(e.has(s))throw new SyntaxError(`The "${s}" subprotocol is duplicated`);return e.add(s),e}to.exports={parse:Vc}});var lo=F((uu,co)=>{"use strict";var Hc=N("events"),Ki=N("http"),lu=N("https"),hu=N("net"),fu=N("tls"),{createHash:jc}=N("crypto"),ro=jr(),it=Vt(),Gc=io(),Kc=Xr(),{GUID:Yc,kWebSocket:Jc}=$e(),Xc=/^[+/0-9A-Za-z]{22}==$/,no=0,so=1,ao=2,Qr=class extends Hc{constructor(e,t){if(super(),e=_({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:Kc},e),e.port==null&&!e.server&&!e.noServer||e.port!=null&&(e.server||e.noServer)||e.server&&e.noServer)throw new TypeError('One and only one of the "port", "server", or "noServer" options must be specified');if(e.port!=null?(this._server=Ki.createServer((r,n)=>{let s=Ki.STATUS_CODES[426];n.writeHead(426,{"Content-Length":s.length,"Content-Type":"text/plain"}),n.end(s)}),this._server.listen(e.port,e.host,e.backlog,t)):e.server&&(this._server=e.server),this._server){let r=this.emit.bind(this,"connection");this._removeListeners=Qc(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(n,s,o)=>{this.handleUpgrade(n,s,o,r)}})}e.perMessageDeflate===!0&&(e.perMessageDeflate={}),e.clientTracking&&(this.clients=new Set,this._shouldEmitClose=!1),this.options=e,this._state=no}address(){if(this.options.noServer)throw new Error('The server is operating in "noServer" mode');return this._server?this._server.address():null}close(e){if(this._state===ao){e&&this.once("close",()=>{e(new Error("The server is not running"))}),process.nextTick(Jt,this);return}if(e&&this.once("close",e),this._state!==so)if(this._state=so,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(Jt,this):process.nextTick(Jt,this);else{let t=this._server;this._removeListeners(),this._removeListeners=this._server=null,t.close(()=>{Jt(this)})}}shouldHandle(e){if(this.options.path){let t=e.url.indexOf("?");if((t!==-1?e.url.slice(0,t):e.url)!==this.options.path)return!1}return!0}handleUpgrade(e,t,r,n){t.on("error",oo);let s=e.headers["sec-websocket-key"],o=+e.headers["sec-websocket-version"];if(e.method!=="GET"){rt(this,e,t,405,"Invalid HTTP method");return}if(e.headers.upgrade.toLowerCase()!=="websocket"){rt(this,e,t,400,"Invalid Upgrade header");return}if(!s||!Xc.test(s)){rt(this,e,t,400,"Missing or invalid Sec-WebSocket-Key header");return}if(o!==8&&o!==13){rt(this,e,t,400,"Missing or invalid Sec-WebSocket-Version header");return}if(!this.shouldHandle(e)){Xt(t,400);return}let a=e.headers["sec-websocket-protocol"],h=new Set;if(a!==void 0)try{h=Gc.parse(a)}catch(f){rt(this,e,t,400,"Invalid Sec-WebSocket-Protocol header");return}let u=e.headers["sec-websocket-extensions"],l={};if(this.options.perMessageDeflate&&u!==void 0){let f=new it(this.options.perMessageDeflate,!0,this.options.maxPayload);try{let p=ro.parse(u);p[it.extensionName]&&(f.accept(p[it.extensionName]),l[it.extensionName]=f)}catch(p){rt(this,e,t,400,"Invalid or unacceptable Sec-WebSocket-Extensions header");return}}if(this.options.verifyClient){let f={origin:e.headers[`${o===8?"sec-websocket-origin":"origin"}`],secure:!!(e.socket.authorized||e.socket.encrypted),req:e};if(this.options.verifyClient.length===2){this.options.verifyClient(f,(p,d,b,g)=>{if(!p)return Xt(t,d||401,b,g);this.completeUpgrade(l,s,h,e,t,r,n)});return}if(!this.options.verifyClient(f))return Xt(t,401)}this.completeUpgrade(l,s,h,e,t,r,n)}completeUpgrade(e,t,r,n,s,o,a){if(!s.readable||!s.writable)return s.destroy();if(s[Jc])throw new Error("server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration");if(this._state>no)return Xt(s,503);let u=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade",`Sec-WebSocket-Accept: ${jc("sha1").update(t+Yc).digest("base64")}`],l=new this.options.WebSocket(null);if(r.size){let f=this.options.handleProtocols?this.options.handleProtocols(r,n):r.values().next().value;f&&(u.push(`Sec-WebSocket-Protocol: ${f}`),l._protocol=f)}if(e[it.extensionName]){let f=e[it.extensionName].params,p=ro.format({[it.extensionName]:[f]});u.push(`Sec-WebSocket-Extensions: ${p}`),l._extensions=e}this.emit("headers",u,n),s.write(u.concat(`\r
|
|
3
|
+
`+s),i.push(n+"m+"+Bi.exports.humanize(this.diff)+"\x1B[0m")}else i[0]=Da()+e+" "+i[0]}function Da(){return H.inspectOpts.hideDate?"":new Date().toISOString()+" "}function Ba(...i){return process.stderr.write(Di.formatWithOptions(H.inspectOpts,...i)+`
|
|
4
|
+
`)}function Ma(i){i?process.env.DEBUG=i:delete process.env.DEBUG}function qa(){return process.env.DEBUG}function Wa(i){i.inspectOpts={};let e=Object.keys(H.inspectOpts);for(let t=0;t<e.length;t++)i.inspectOpts[e[t]]=H.inspectOpts[e[t]]}Bi.exports=Nr()(H);var{formatters:Jn}=Bi.exports;Jn.o=function(i){return this.inspectOpts.colors=this.useColors,Di.inspect(i,this.inspectOpts).split(`
|
|
5
|
+
`).map(e=>e.trim()).join(" ")};Jn.O=function(i){return this.inspectOpts.colors=this.useColors,Di.inspect(i,this.inspectOpts)}});var tt=F((If,Tr)=>{"use strict";typeof process=="undefined"||process.type==="renderer"||process.browser===!0||process.__nwjs?Tr.exports=Hn():Tr.exports=Xn()});var as=F((qf,os)=>{"use strict";var St=N("fs"),ss=N("url"),Va=N("child_process").spawn;os.exports=Pr;Pr.XMLHttpRequest=Pr;function Pr(i){"use strict";i=i||{};var e=this,t=N("http"),r=N("https"),n,s,o={},a=!1,l={"User-Agent":"node-XMLHttpRequest",Accept:"*/*"},u=Object.assign({},l),f=["accept-charset","accept-encoding","access-control-request-headers","access-control-request-method","connection","content-length","content-transfer-encoding","cookie","cookie2","date","expect","host","keep-alive","origin","referer","te","trailer","transfer-encoding","upgrade","via"],h=["TRACE","TRACK","CONNECT"],p=!1,d=!1,b=!1,g={};this.UNSENT=0,this.OPENED=1,this.HEADERS_RECEIVED=2,this.LOADING=3,this.DONE=4,this.readyState=this.UNSENT,this.onreadystatechange=null,this.responseText="",this.responseXML="",this.status=null,this.statusText=null;var v=function(y){return a||y&&f.indexOf(y.toLowerCase())===-1},R=function(y){return y&&h.indexOf(y)===-1};this.open=function(y,E,z,C,I){if(this.abort(),d=!1,b=!1,!R(y))throw new Error("SecurityError: Request method not allowed");o={method:y,url:E.toString(),async:typeof z!="boolean"?!0:z,user:C||null,password:I||null},T(this.OPENED)},this.setDisableHeaderCheck=function(y){a=y},this.setRequestHeader=function(y,E){if(this.readyState!=this.OPENED)throw new Error("INVALID_STATE_ERR: setRequestHeader can only be called when state is OPEN");if(!v(y))return console.warn('Refused to set unsafe header "'+y+'"'),!1;if(p)throw new Error("INVALID_STATE_ERR: send flag is true");return u[y]=E,!0},this.getResponseHeader=function(y){return typeof y=="string"&&this.readyState>this.OPENED&&s.headers[y.toLowerCase()]&&!d?s.headers[y.toLowerCase()]:null},this.getAllResponseHeaders=function(){if(this.readyState<this.HEADERS_RECEIVED||d)return"";var y="";for(var E in s.headers)E!=="set-cookie"&&E!=="set-cookie2"&&(y+=E+": "+s.headers[E]+`\r
|
|
6
|
+
`);return y.substr(0,y.length-2)},this.getRequestHeader=function(y){return typeof y=="string"&&u[y]?u[y]:""},this.send=function(y){if(this.readyState!=this.OPENED)throw new Error("INVALID_STATE_ERR: connection must be opened before send() is called");if(p)throw new Error("INVALID_STATE_ERR: send has already been called");var E=!1,z=!1,C=ss.parse(o.url),I;switch(C.protocol){case"https:":E=!0;case"http:":I=C.hostname;break;case"file:":z=!0;break;case void 0:case"":I="localhost";break;default:throw new Error("Protocol not supported.")}if(z){if(o.method!=="GET")throw new Error("XMLHttpRequest: Only GET method is supported");if(o.async)St.readFile(unescape(C.pathname),"utf8",function(ce,ct){ce?e.handleError(ce,ce.errno||-1):(e.status=200,e.responseText=ct,T(e.DONE))});else try{this.responseText=St.readFileSync(unescape(C.pathname),"utf8"),this.status=200,T(e.DONE)}catch(ce){this.handleError(ce,ce.errno||-1)}return}var M=C.port||(E?443:80),te=C.pathname+(C.search?C.search:"");if(u.Host=I,E&&M===443||M===80||(u.Host+=":"+C.port),o.user){typeof o.password=="undefined"&&(o.password="");var Ke=new Buffer(o.user+":"+o.password);u.Authorization="Basic "+Ke.toString("base64")}o.method==="GET"||o.method==="HEAD"?y=null:y?(u["Content-Length"]=Buffer.isBuffer(y)?y.length:Buffer.byteLength(y),u["Content-Type"]||(u["Content-Type"]="text/plain;charset=UTF-8")):o.method==="POST"&&(u["Content-Length"]=0);var Ye=i.agent||!1,X={host:I,port:M,path:te,method:o.method,headers:u,agent:Ye};if(E&&(X.pfx=i.pfx,X.key=i.key,X.passphrase=i.passphrase,X.cert=i.cert,X.ca=i.ca,X.ciphers=i.ciphers,X.rejectUnauthorized=i.rejectUnauthorized!==!1),d=!1,o.async){var Ue=E?r.request:t.request;p=!0,e.dispatchEvent("readystatechange");var De=function(ce){if(s=ce,s.statusCode===302||s.statusCode===303||s.statusCode===307){o.url=s.headers.location;var ct=ss.parse(o.url);I=ct.hostname;var Me={hostname:ct.hostname,port:ct.port,path:ct.path,method:s.statusCode===303?"GET":o.method,headers:u};E&&(Me.pfx=i.pfx,Me.key=i.key,Me.passphrase=i.passphrase,Me.cert=i.cert,Me.ca=i.ca,Me.ciphers=i.ciphers,Me.rejectUnauthorized=i.rejectUnauthorized!==!1),n=Ue(Me,De).on("error",Be),n.end();return}s&&s.setEncoding&&s.setEncoding("utf8"),T(e.HEADERS_RECEIVED),e.status=s.statusCode,s.on("data",function(oi){oi&&(e.responseText+=oi),p&&T(e.LOADING)}),s.on("end",function(){p&&(p=!1,T(e.DONE))}),s.on("error",function(oi){e.handleError(oi)})},Be=function(ce){e.handleError(ce)};n=Ue(X,De).on("error",Be),i.autoUnref&&n.on("socket",ce=>{ce.unref()}),y&&n.write(y),n.end(),e.dispatchEvent("loadstart")}else{var ue=".node-xmlhttprequest-content-"+process.pid,de=".node-xmlhttprequest-sync-"+process.pid;St.writeFileSync(de,"","utf8");for(var ke="var http = require('http'), https = require('https'), fs = require('fs');var doRequest = http"+(E?"s":"")+".request;var options = "+JSON.stringify(X)+";var responseText = '';var req = doRequest(options, function(response) {response.setEncoding('utf8');response.on('data', function(chunk) { responseText += chunk;});response.on('end', function() {fs.writeFileSync('"+ue+"', 'NODE-XMLHTTPREQUEST-STATUS:' + response.statusCode + ',' + responseText, 'utf8');fs.unlinkSync('"+de+"');});response.on('error', function(error) {fs.writeFileSync('"+ue+"', 'NODE-XMLHTTPREQUEST-ERROR:' + JSON.stringify(error), 'utf8');fs.unlinkSync('"+de+"');});}).on('error', function(error) {fs.writeFileSync('"+ue+"', 'NODE-XMLHTTPREQUEST-ERROR:' + JSON.stringify(error), 'utf8');fs.unlinkSync('"+de+"');});"+(y?"req.write('"+JSON.stringify(y).slice(1,-1).replace(/'/g,"\\'")+"');":"")+"req.end();",zo=Va(process.argv[0],["-e",ke]),Ml;St.existsSync(de););if(e.responseText=St.readFileSync(ue,"utf8"),zo.stdin.end(),St.unlinkSync(ue),e.responseText.match(/^NODE-XMLHTTPREQUEST-ERROR:/)){var $o=e.responseText.replace(/^NODE-XMLHTTPREQUEST-ERROR:/,"");e.handleError($o,503)}else e.status=e.responseText.replace(/^NODE-XMLHTTPREQUEST-STATUS:([0-9]*),.*/,"$1"),e.responseText=e.responseText.replace(/^NODE-XMLHTTPREQUEST-STATUS:[0-9]*,(.*)/,"$1"),T(e.DONE)}},this.handleError=function(y,E){this.status=E||0,this.statusText=y,this.responseText=y.stack,d=!0,T(this.DONE)},this.abort=function(){n&&(n.abort(),n=null),u=Object.assign({},l),this.responseText="",this.responseXML="",d=b=!0,this.readyState!==this.UNSENT&&(this.readyState!==this.OPENED||p)&&this.readyState!==this.DONE&&(p=!1,T(this.DONE)),this.readyState=this.UNSENT},this.addEventListener=function(y,E){y in g||(g[y]=[]),g[y].push(E)},this.removeEventListener=function(y,E){y in g&&(g[y]=g[y].filter(function(z){return z!==E}))},this.dispatchEvent=function(y){if(typeof e["on"+y]=="function"&&(this.readyState===this.DONE?setImmediate(function(){e["on"+y]()}):e["on"+y]()),y in g)for(let E=0,z=g[y].length;E<z;E++)this.readyState===this.DONE?setImmediate(function(){g[y][E].call(e)}):g[y][E].call(e)};var T=function(y){if(!(e.readyState===y||e.readyState===e.UNSENT&&b)&&(e.readyState=y,(o.async||e.readyState<e.OPENED||e.readyState===e.DONE)&&e.dispatchEvent("readystatechange"),e.readyState===e.DONE)){let E;b?E="abort":d?E="error":E="load",e.dispatchEvent(E),e.dispatchEvent("loadend")}}}});var ps=F((Jf,ds)=>{"use strict";var{Duplex:Ka}=N("stream");function fs(i){i.emit("close")}function Ya(){!this.destroyed&&this._writableState.finished&&this.destroy()}function us(i){this.removeListener("error",us),this.destroy(),this.listenerCount("error")===0&&this.emit("error",i)}function Ja(i,e){let t=!0,r=new Ka(k(_({},e),{autoDestroy:!1,emitClose:!1,objectMode:!1,writableObjectMode:!1}));return i.on("message",function(s,o){let a=!o&&r._readableState.objectMode?s.toString():s;r.push(a)||i.pause()}),i.once("error",function(s){r.destroyed||(t=!1,r.destroy(s))}),i.once("close",function(){r.destroyed||r.push(null)}),r._destroy=function(n,s){if(i.readyState===i.CLOSED){s(n),process.nextTick(fs,r);return}let o=!1;i.once("error",function(l){o=!0,s(l)}),i.once("close",function(){o||s(n),process.nextTick(fs,r)}),t&&i.terminate()},r._final=function(n){if(i.readyState===i.CONNECTING){i.once("open",function(){r._final(n)});return}i._socket!==null&&(i._socket._writableState.finished?(n(),r._readableState.endEmitted&&r.destroy()):(i._socket.once("finish",function(){n()}),i.close()))},r._read=function(){i.isPaused&&i.resume()},r._write=function(n,s,o){if(i.readyState===i.CONNECTING){i.once("open",function(){r._write(n,s,o)});return}i.send(n,o)},r.on("end",Ya),r.on("error",us),r}ds.exports=Ja});var Ve=F((Qf,ms)=>{"use strict";ms.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 zt=F((Zf,zi)=>{"use strict";var{EMPTY_BUFFER:Xa}=Ve();function Qa(i,e){if(i.length===0)return Xa;if(i.length===1)return i[0];let t=Buffer.allocUnsafe(e),r=0;for(let n=0;n<i.length;n++){let s=i[n];t.set(s,r),r+=s.length}return r<e?t.slice(0,r):t}function gs(i,e,t,r,n){for(let s=0;s<n;s++)t[r+s]=i[s]^e[s&3]}function ys(i,e){for(let t=0;t<i.length;t++)i[t]^=e[t&3]}function Za(i){return i.byteLength===i.buffer.byteLength?i.buffer:i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength)}function Dr(i){if(Dr.readOnly=!0,Buffer.isBuffer(i))return i;let e;return i instanceof ArrayBuffer?e=Buffer.from(i):ArrayBuffer.isView(i)?e=Buffer.from(i.buffer,i.byteOffset,i.byteLength):(e=Buffer.from(i),Dr.readOnly=!1),e}zi.exports={concat:Qa,mask:gs,toArrayBuffer:Za,toBuffer:Dr,unmask:ys};if(!process.env.WS_NO_BUFFER_UTIL)try{let i=N("bufferutil");zi.exports.mask=function(e,t,r,n,s){s<48?gs(e,t,r,n,s):i.mask(e,t,r,n,s)},zi.exports.unmask=function(e,t){e.length<32?ys(e,t):i.unmask(e,t)}}catch(i){}});var Es=F((eu,_s)=>{"use strict";var vs=Symbol("kDone"),Br=Symbol("kRun"),Mr=class{constructor(e){this[vs]=()=>{this.pending--,this[Br]()},this.concurrency=e||1/0,this.jobs=[],this.pending=0}add(e){this.jobs.push(e),this[Br]()}[Br](){if(this.pending!==this.concurrency&&this.jobs.length){let e=this.jobs.shift();this.pending++,e(this[vs])}}};_s.exports=Mr});var Ht=F((tu,xs)=>{"use strict";var $t=N("zlib"),Ss=zt(),ec=Es(),{kStatusCode:ws}=Ve(),tc=Buffer.from([0,0,255,255]),Hi=Symbol("permessage-deflate"),Ie=Symbol("total-length"),Vt=Symbol("callback"),He=Symbol("buffers"),Vi=Symbol("error"),$i,qr=class{constructor(e,t,r){if(this._maxPayload=r|0,this._options=e||{},this._threshold=this._options.threshold!==void 0?this._options.threshold:1024,this._isServer=!!t,this._deflate=null,this._inflate=null,this.params=null,!$i){let n=this._options.concurrencyLimit!==void 0?this._options.concurrencyLimit:10;$i=new ec(n)}}static get extensionName(){return"permessage-deflate"}offer(){let e={};return this._options.serverNoContextTakeover&&(e.server_no_context_takeover=!0),this._options.clientNoContextTakeover&&(e.client_no_context_takeover=!0),this._options.serverMaxWindowBits&&(e.server_max_window_bits=this._options.serverMaxWindowBits),this._options.clientMaxWindowBits?e.client_max_window_bits=this._options.clientMaxWindowBits:this._options.clientMaxWindowBits==null&&(e.client_max_window_bits=!0),e}accept(e){return e=this.normalizeParams(e),this.params=this._isServer?this.acceptAsServer(e):this.acceptAsClient(e),this.params}cleanup(){if(this._inflate&&(this._inflate.close(),this._inflate=null),this._deflate){let e=this._deflate[Vt];this._deflate.close(),this._deflate=null,e&&e(new Error("The deflate stream was closed while data was being processed"))}}acceptAsServer(e){let t=this._options,r=e.find(n=>!(t.serverNoContextTakeover===!1&&n.server_no_context_takeover||n.server_max_window_bits&&(t.serverMaxWindowBits===!1||typeof t.serverMaxWindowBits=="number"&&t.serverMaxWindowBits>n.server_max_window_bits)||typeof t.clientMaxWindowBits=="number"&&!n.client_max_window_bits));if(!r)throw new Error("None of the extension offers can be accepted");return t.serverNoContextTakeover&&(r.server_no_context_takeover=!0),t.clientNoContextTakeover&&(r.client_no_context_takeover=!0),typeof t.serverMaxWindowBits=="number"&&(r.server_max_window_bits=t.serverMaxWindowBits),typeof t.clientMaxWindowBits=="number"?r.client_max_window_bits=t.clientMaxWindowBits:(r.client_max_window_bits===!0||t.clientMaxWindowBits===!1)&&delete r.client_max_window_bits,r}acceptAsClient(e){let t=e[0];if(this._options.clientNoContextTakeover===!1&&t.client_no_context_takeover)throw new Error('Unexpected parameter "client_no_context_takeover"');if(!t.client_max_window_bits)typeof this._options.clientMaxWindowBits=="number"&&(t.client_max_window_bits=this._options.clientMaxWindowBits);else if(this._options.clientMaxWindowBits===!1||typeof this._options.clientMaxWindowBits=="number"&&t.client_max_window_bits>this._options.clientMaxWindowBits)throw new Error('Unexpected or invalid parameter "client_max_window_bits"');return t}normalizeParams(e){return e.forEach(t=>{Object.keys(t).forEach(r=>{let n=t[r];if(n.length>1)throw new Error(`Parameter "${r}" must have only a single value`);if(n=n[0],r==="client_max_window_bits"){if(n!==!0){let s=+n;if(!Number.isInteger(s)||s<8||s>15)throw new TypeError(`Invalid value for parameter "${r}": ${n}`);n=s}else if(!this._isServer)throw new TypeError(`Invalid value for parameter "${r}": ${n}`)}else if(r==="server_max_window_bits"){let s=+n;if(!Number.isInteger(s)||s<8||s>15)throw new TypeError(`Invalid value for parameter "${r}": ${n}`);n=s}else if(r==="client_no_context_takeover"||r==="server_no_context_takeover"){if(n!==!0)throw new TypeError(`Invalid value for parameter "${r}": ${n}`)}else throw new Error(`Unknown parameter "${r}"`);t[r]=n})}),e}decompress(e,t,r){$i.add(n=>{this._decompress(e,t,(s,o)=>{n(),r(s,o)})})}compress(e,t,r){$i.add(n=>{this._compress(e,t,(s,o)=>{n(),r(s,o)})})}_decompress(e,t,r){let n=this._isServer?"client":"server";if(!this._inflate){let s=`${n}_max_window_bits`,o=typeof this.params[s]!="number"?$t.Z_DEFAULT_WINDOWBITS:this.params[s];this._inflate=$t.createInflateRaw(k(_({},this._options.zlibInflateOptions),{windowBits:o})),this._inflate[Hi]=this,this._inflate[Ie]=0,this._inflate[He]=[],this._inflate.on("error",rc),this._inflate.on("data",bs)}this._inflate[Vt]=r,this._inflate.write(e),t&&this._inflate.write(tc),this._inflate.flush(()=>{let s=this._inflate[Vi];if(s){this._inflate.close(),this._inflate=null,r(s);return}let o=Ss.concat(this._inflate[He],this._inflate[Ie]);this._inflate._readableState.endEmitted?(this._inflate.close(),this._inflate=null):(this._inflate[Ie]=0,this._inflate[He]=[],t&&this.params[`${n}_no_context_takeover`]&&this._inflate.reset()),r(null,o)})}_compress(e,t,r){let n=this._isServer?"server":"client";if(!this._deflate){let s=`${n}_max_window_bits`,o=typeof this.params[s]!="number"?$t.Z_DEFAULT_WINDOWBITS:this.params[s];this._deflate=$t.createDeflateRaw(k(_({},this._options.zlibDeflateOptions),{windowBits:o})),this._deflate[Ie]=0,this._deflate[He]=[],this._deflate.on("data",ic)}this._deflate[Vt]=r,this._deflate.write(e),this._deflate.flush($t.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let s=Ss.concat(this._deflate[He],this._deflate[Ie]);t&&(s=s.slice(0,s.length-4)),this._deflate[Vt]=null,this._deflate[Ie]=0,this._deflate[He]=[],t&&this.params[`${n}_no_context_takeover`]&&this._deflate.reset(),r(null,s)})}};xs.exports=qr;function ic(i){this[He].push(i),this[Ie]+=i.length}function bs(i){if(this[Ie]+=i.length,this[Hi]._maxPayload<1||this[Ie]<=this[Hi]._maxPayload){this[He].push(i);return}this[Vi]=new RangeError("Max payload size exceeded"),this[Vi].code="WS_ERR_UNSUPPORTED_MESSAGE_LENGTH",this[Vi][ws]=1009,this.removeListener("data",bs),this.reset()}function rc(i){this[Hi]._inflate=null,i[ws]=1007,this[Vt](i)}});var jt=F((ru,Wr)=>{"use strict";var nc=[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 sc(i){return i>=1e3&&i<=1014&&i!==1004&&i!==1005&&i!==1006||i>=3e3&&i<=4999}function Cs(i){let e=i.length,t=0;for(;t<e;)if(!(i[t]&128))t++;else if((i[t]&224)===192){if(t+1===e||(i[t+1]&192)!==128||(i[t]&254)===192)return!1;t+=2}else if((i[t]&240)===224){if(t+2>=e||(i[t+1]&192)!==128||(i[t+2]&192)!==128||i[t]===224&&(i[t+1]&224)===128||i[t]===237&&(i[t+1]&224)===160)return!1;t+=3}else if((i[t]&248)===240){if(t+3>=e||(i[t+1]&192)!==128||(i[t+2]&192)!==128||(i[t+3]&192)!==128||i[t]===240&&(i[t+1]&240)===128||i[t]===244&&i[t+1]>143||i[t]>244)return!1;t+=4}else return!1;return!0}Wr.exports={isValidStatusCode:sc,isValidUTF8:Cs,tokenChars:nc};if(!process.env.WS_NO_UTF_8_VALIDATE)try{let i=N("utf-8-validate");Wr.exports.isValidUTF8=function(e){return e.length<150?Cs(e):i(e)}}catch(i){}});var Hr=F((nu,Is)=>{"use strict";var{Writable:oc}=N("stream"),Ns=Ht(),{BINARY_TYPES:ac,EMPTY_BUFFER:ks,kStatusCode:cc,kWebSocket:lc}=Ve(),{concat:zr,toArrayBuffer:hc,unmask:fc}=zt(),{isValidStatusCode:uc,isValidUTF8:As}=jt(),Gt=0,Rs=1,Ts=2,Os=3,$r=4,dc=5,Vr=class extends oc{constructor(e={}){super(),this._binaryType=e.binaryType||ac[0],this._extensions=e.extensions||{},this._isServer=!!e.isServer,this._maxPayload=e.maxPayload|0,this._skipUTF8Validation=!!e.skipUTF8Validation,this[lc]=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._state=Gt,this._loop=!1}_write(e,t,r){if(this._opcode===8&&this._state==Gt)return r();this._bufferedBytes+=e.length,this._buffers.push(e),this.startLoop(r)}consume(e){if(this._bufferedBytes-=e,e===this._buffers[0].length)return this._buffers.shift();if(e<this._buffers[0].length){let r=this._buffers[0];return this._buffers[0]=r.slice(e),r.slice(0,e)}let t=Buffer.allocUnsafe(e);do{let r=this._buffers[0],n=t.length-e;e>=r.length?t.set(this._buffers.shift(),n):(t.set(new Uint8Array(r.buffer,r.byteOffset,e),n),this._buffers[0]=r.slice(e)),e-=r.length}while(e>0);return t}startLoop(e){let t;this._loop=!0;do switch(this._state){case Gt:t=this.getInfo();break;case Rs:t=this.getPayloadLength16();break;case Ts:t=this.getPayloadLength64();break;case Os:this.getMask();break;case $r:t=this.getData(e);break;default:this._loop=!1;return}while(this._loop);e(t)}getInfo(){if(this._bufferedBytes<2){this._loop=!1;return}let e=this.consume(2);if(e[0]&48)return this._loop=!1,q(RangeError,"RSV2 and RSV3 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_2_3");let t=(e[0]&64)===64;if(t&&!this._extensions[Ns.extensionName])return this._loop=!1,q(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");if(this._fin=(e[0]&128)===128,this._opcode=e[0]&15,this._payloadLength=e[1]&127,this._opcode===0){if(t)return this._loop=!1,q(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");if(!this._fragmented)return this._loop=!1,q(RangeError,"invalid opcode 0",!0,1002,"WS_ERR_INVALID_OPCODE");this._opcode=this._fragmented}else if(this._opcode===1||this._opcode===2){if(this._fragmented)return this._loop=!1,q(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");this._compressed=t}else if(this._opcode>7&&this._opcode<11){if(!this._fin)return this._loop=!1,q(RangeError,"FIN must be set",!0,1002,"WS_ERR_EXPECTED_FIN");if(t)return this._loop=!1,q(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");if(this._payloadLength>125)return this._loop=!1,q(RangeError,`invalid payload length ${this._payloadLength}`,!0,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH")}else return this._loop=!1,q(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");if(!this._fin&&!this._fragmented&&(this._fragmented=this._opcode),this._masked=(e[1]&128)===128,this._isServer){if(!this._masked)return this._loop=!1,q(RangeError,"MASK must be set",!0,1002,"WS_ERR_EXPECTED_MASK")}else if(this._masked)return this._loop=!1,q(RangeError,"MASK must be clear",!0,1002,"WS_ERR_UNEXPECTED_MASK");if(this._payloadLength===126)this._state=Rs;else if(this._payloadLength===127)this._state=Ts;else return this.haveLength()}getPayloadLength16(){if(this._bufferedBytes<2){this._loop=!1;return}return this._payloadLength=this.consume(2).readUInt16BE(0),this.haveLength()}getPayloadLength64(){if(this._bufferedBytes<8){this._loop=!1;return}let e=this.consume(8),t=e.readUInt32BE(0);return t>Math.pow(2,21)-1?(this._loop=!1,q(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009,"WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH")):(this._payloadLength=t*Math.pow(2,32)+e.readUInt32BE(4),this.haveLength())}haveLength(){if(this._payloadLength&&this._opcode<8&&(this._totalPayloadLength+=this._payloadLength,this._totalPayloadLength>this._maxPayload&&this._maxPayload>0))return this._loop=!1,q(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");this._masked?this._state=Os:this._state=$r}getMask(){if(this._bufferedBytes<4){this._loop=!1;return}this._mask=this.consume(4),this._state=$r}getData(e){let t=ks;if(this._payloadLength){if(this._bufferedBytes<this._payloadLength){this._loop=!1;return}t=this.consume(this._payloadLength),this._masked&&this._mask[0]|this._mask[1]|this._mask[2]|this._mask[3]&&fc(t,this._mask)}if(this._opcode>7)return this.controlMessage(t);if(this._compressed){this._state=dc,this.decompress(t,e);return}return t.length&&(this._messageLength=this._totalPayloadLength,this._fragments.push(t)),this.dataMessage()}decompress(e,t){this._extensions[Ns.extensionName].decompress(e,this._fin,(n,s)=>{if(n)return t(n);if(s.length){if(this._messageLength+=s.length,this._messageLength>this._maxPayload&&this._maxPayload>0)return t(q(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH"));this._fragments.push(s)}let o=this.dataMessage();if(o)return t(o);this.startLoop(t)})}dataMessage(){if(this._fin){let e=this._messageLength,t=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._fragments=[],this._opcode===2){let r;this._binaryType==="nodebuffer"?r=zr(t,e):this._binaryType==="arraybuffer"?r=hc(zr(t,e)):r=t,this.emit("message",r,!0)}else{let r=zr(t,e);if(!this._skipUTF8Validation&&!As(r))return this._loop=!1,q(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");this.emit("message",r,!1)}}this._state=Gt}controlMessage(e){if(this._opcode===8)if(this._loop=!1,e.length===0)this.emit("conclude",1005,ks),this.end();else{if(e.length===1)return q(RangeError,"invalid payload length 1",!0,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH");{let t=e.readUInt16BE(0);if(!uc(t))return q(RangeError,`invalid status code ${t}`,!0,1002,"WS_ERR_INVALID_CLOSE_CODE");let r=e.slice(2);if(!this._skipUTF8Validation&&!As(r))return q(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");this.emit("conclude",t,r),this.end()}}else this._opcode===9?this.emit("ping",e):this.emit("pong",e);this._state=Gt}};Is.exports=Vr;function q(i,e,t,r,n){let s=new i(t?`Invalid WebSocket frame: ${e}`:e);return Error.captureStackTrace(s,q),s.code=n,s[cc]=r,s}});var Gr=F((au,Fs)=>{"use strict";var su=N("net"),ou=N("tls"),{randomFillSync:pc}=N("crypto"),Ps=Ht(),{EMPTY_BUFFER:mc}=Ve(),{isValidStatusCode:gc}=jt(),{mask:Ls,toBuffer:wt}=zt(),_e=Symbol("kByteLength"),yc=Buffer.alloc(4),jr=class i{constructor(e,t,r){this._extensions=t||{},r&&(this._generateMask=r,this._maskBuffer=Buffer.alloc(4)),this._socket=e,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._deflating=!1,this._queue=[]}static frame(e,t){let r,n=!1,s=2,o=!1;t.mask&&(r=t.maskBuffer||yc,t.generateMask?t.generateMask(r):pc(r,0,4),o=(r[0]|r[1]|r[2]|r[3])===0,s=6);let a;typeof e=="string"?(!t.mask||o)&&t[_e]!==void 0?a=t[_e]:(e=Buffer.from(e),a=e.length):(a=e.length,n=t.mask&&t.readOnly&&!o);let l=a;a>=65536?(s+=8,l=127):a>125&&(s+=2,l=126);let u=Buffer.allocUnsafe(n?a+s:s);return u[0]=t.fin?t.opcode|128:t.opcode,t.rsv1&&(u[0]|=64),u[1]=l,l===126?u.writeUInt16BE(a,2):l===127&&(u[2]=u[3]=0,u.writeUIntBE(a,4,6)),t.mask?(u[1]|=128,u[s-4]=r[0],u[s-3]=r[1],u[s-2]=r[2],u[s-1]=r[3],o?[u,e]:n?(Ls(e,r,u,s,a),[u]):(Ls(e,r,e,0,a),[u,e])):[u,e]}close(e,t,r,n){let s;if(e===void 0)s=mc;else{if(typeof e!="number"||!gc(e))throw new TypeError("First argument must be a valid error code number");if(t===void 0||!t.length)s=Buffer.allocUnsafe(2),s.writeUInt16BE(e,0);else{let a=Buffer.byteLength(t);if(a>123)throw new RangeError("The message must not be greater than 123 bytes");s=Buffer.allocUnsafe(2+a),s.writeUInt16BE(e,0),typeof t=="string"?s.write(t,2):s.set(t,2)}}let o={[_e]:s.length,fin:!0,generateMask:this._generateMask,mask:r,maskBuffer:this._maskBuffer,opcode:8,readOnly:!1,rsv1:!1};this._deflating?this.enqueue([this.dispatch,s,!1,o,n]):this.sendFrame(i.frame(s,o),n)}ping(e,t,r){let n,s;if(typeof e=="string"?(n=Buffer.byteLength(e),s=!1):(e=wt(e),n=e.length,s=wt.readOnly),n>125)throw new RangeError("The data size must not be greater than 125 bytes");let o={[_e]:n,fin:!0,generateMask:this._generateMask,mask:t,maskBuffer:this._maskBuffer,opcode:9,readOnly:s,rsv1:!1};this._deflating?this.enqueue([this.dispatch,e,!1,o,r]):this.sendFrame(i.frame(e,o),r)}pong(e,t,r){let n,s;if(typeof e=="string"?(n=Buffer.byteLength(e),s=!1):(e=wt(e),n=e.length,s=wt.readOnly),n>125)throw new RangeError("The data size must not be greater than 125 bytes");let o={[_e]:n,fin:!0,generateMask:this._generateMask,mask:t,maskBuffer:this._maskBuffer,opcode:10,readOnly:s,rsv1:!1};this._deflating?this.enqueue([this.dispatch,e,!1,o,r]):this.sendFrame(i.frame(e,o),r)}send(e,t,r){let n=this._extensions[Ps.extensionName],s=t.binary?2:1,o=t.compress,a,l;if(typeof e=="string"?(a=Buffer.byteLength(e),l=!1):(e=wt(e),a=e.length,l=wt.readOnly),this._firstFragment?(this._firstFragment=!1,o&&n&&n.params[n._isServer?"server_no_context_takeover":"client_no_context_takeover"]&&(o=a>=n._threshold),this._compress=o):(o=!1,s=0),t.fin&&(this._firstFragment=!0),n){let u={[_e]:a,fin:t.fin,generateMask:this._generateMask,mask:t.mask,maskBuffer:this._maskBuffer,opcode:s,readOnly:l,rsv1:o};this._deflating?this.enqueue([this.dispatch,e,this._compress,u,r]):this.dispatch(e,this._compress,u,r)}else this.sendFrame(i.frame(e,{[_e]:a,fin:t.fin,generateMask:this._generateMask,mask:t.mask,maskBuffer:this._maskBuffer,opcode:s,readOnly:l,rsv1:!1}),r)}dispatch(e,t,r,n){if(!t){this.sendFrame(i.frame(e,r),n);return}let s=this._extensions[Ps.extensionName];this._bufferedBytes+=r[_e],this._deflating=!0,s.compress(e,r.fin,(o,a)=>{if(this._socket.destroyed){let l=new Error("The socket was closed while data was being compressed");typeof n=="function"&&n(l);for(let u=0;u<this._queue.length;u++){let f=this._queue[u],h=f[f.length-1];typeof h=="function"&&h(l)}return}this._bufferedBytes-=r[_e],this._deflating=!1,r.readOnly=!1,this.sendFrame(i.frame(a,r),n),this.dequeue()})}dequeue(){for(;!this._deflating&&this._queue.length;){let e=this._queue.shift();this._bufferedBytes-=e[3][_e],Reflect.apply(e[0],this,e.slice(1))}}enqueue(e){this._bufferedBytes+=e[3][_e],this._queue.push(e)}sendFrame(e,t){e.length===2?(this._socket.cork(),this._socket.write(e[0]),this._socket.write(e[1],t),this._socket.uncork()):this._socket.write(e[0],t)}};Fs.exports=jr});var Vs=F((cu,$s)=>{"use strict";var{kForOnEventAttribute:Kt,kListener:Kr}=Ve(),Us=Symbol("kCode"),Ds=Symbol("kData"),Bs=Symbol("kError"),Ms=Symbol("kMessage"),qs=Symbol("kReason"),bt=Symbol("kTarget"),Ws=Symbol("kType"),zs=Symbol("kWasClean"),Pe=class{constructor(e){this[bt]=null,this[Ws]=e}get target(){return this[bt]}get type(){return this[Ws]}};Object.defineProperty(Pe.prototype,"target",{enumerable:!0});Object.defineProperty(Pe.prototype,"type",{enumerable:!0});var it=class extends Pe{constructor(e,t={}){super(e),this[Us]=t.code===void 0?0:t.code,this[qs]=t.reason===void 0?"":t.reason,this[zs]=t.wasClean===void 0?!1:t.wasClean}get code(){return this[Us]}get reason(){return this[qs]}get wasClean(){return this[zs]}};Object.defineProperty(it.prototype,"code",{enumerable:!0});Object.defineProperty(it.prototype,"reason",{enumerable:!0});Object.defineProperty(it.prototype,"wasClean",{enumerable:!0});var xt=class extends Pe{constructor(e,t={}){super(e),this[Bs]=t.error===void 0?null:t.error,this[Ms]=t.message===void 0?"":t.message}get error(){return this[Bs]}get message(){return this[Ms]}};Object.defineProperty(xt.prototype,"error",{enumerable:!0});Object.defineProperty(xt.prototype,"message",{enumerable:!0});var Yt=class extends Pe{constructor(e,t={}){super(e),this[Ds]=t.data===void 0?null:t.data}get data(){return this[Ds]}};Object.defineProperty(Yt.prototype,"data",{enumerable:!0});var vc={addEventListener(i,e,t={}){for(let n of this.listeners(i))if(!t[Kt]&&n[Kr]===e&&!n[Kt])return;let r;if(i==="message")r=function(s,o){let a=new Yt("message",{data:o?s:s.toString()});a[bt]=this,ji(e,this,a)};else if(i==="close")r=function(s,o){let a=new it("close",{code:s,reason:o.toString(),wasClean:this._closeFrameReceived&&this._closeFrameSent});a[bt]=this,ji(e,this,a)};else if(i==="error")r=function(s){let o=new xt("error",{error:s,message:s.message});o[bt]=this,ji(e,this,o)};else if(i==="open")r=function(){let s=new Pe("open");s[bt]=this,ji(e,this,s)};else return;r[Kt]=!!t[Kt],r[Kr]=e,t.once?this.once(i,r):this.on(i,r)},removeEventListener(i,e){for(let t of this.listeners(i))if(t[Kr]===e&&!t[Kt]){this.removeListener(i,t);break}}};$s.exports={CloseEvent:it,ErrorEvent:xt,Event:Pe,EventTarget:vc,MessageEvent:Yt};function ji(i,e,t){typeof i=="object"&&i.handleEvent?i.handleEvent.call(i,t):i.call(e,t)}});var Yr=F((lu,Hs)=>{"use strict";var{tokenChars:Jt}=jt();function xe(i,e,t){i[e]===void 0?i[e]=[t]:i[e].push(t)}function _c(i){let e=Object.create(null),t=Object.create(null),r=!1,n=!1,s=!1,o,a,l=-1,u=-1,f=-1,h=0;for(;h<i.length;h++)if(u=i.charCodeAt(h),o===void 0)if(f===-1&&Jt[u]===1)l===-1&&(l=h);else if(h!==0&&(u===32||u===9))f===-1&&l!==-1&&(f=h);else if(u===59||u===44){if(l===-1)throw new SyntaxError(`Unexpected character at index ${h}`);f===-1&&(f=h);let d=i.slice(l,f);u===44?(xe(e,d,t),t=Object.create(null)):o=d,l=f=-1}else throw new SyntaxError(`Unexpected character at index ${h}`);else if(a===void 0)if(f===-1&&Jt[u]===1)l===-1&&(l=h);else if(u===32||u===9)f===-1&&l!==-1&&(f=h);else if(u===59||u===44){if(l===-1)throw new SyntaxError(`Unexpected character at index ${h}`);f===-1&&(f=h),xe(t,i.slice(l,f),!0),u===44&&(xe(e,o,t),t=Object.create(null),o=void 0),l=f=-1}else if(u===61&&l!==-1&&f===-1)a=i.slice(l,h),l=f=-1;else throw new SyntaxError(`Unexpected character at index ${h}`);else if(n){if(Jt[u]!==1)throw new SyntaxError(`Unexpected character at index ${h}`);l===-1?l=h:r||(r=!0),n=!1}else if(s)if(Jt[u]===1)l===-1&&(l=h);else if(u===34&&l!==-1)s=!1,f=h;else if(u===92)n=!0;else throw new SyntaxError(`Unexpected character at index ${h}`);else if(u===34&&i.charCodeAt(h-1)===61)s=!0;else if(f===-1&&Jt[u]===1)l===-1&&(l=h);else if(l!==-1&&(u===32||u===9))f===-1&&(f=h);else if(u===59||u===44){if(l===-1)throw new SyntaxError(`Unexpected character at index ${h}`);f===-1&&(f=h);let d=i.slice(l,f);r&&(d=d.replace(/\\/g,""),r=!1),xe(t,a,d),u===44&&(xe(e,o,t),t=Object.create(null),o=void 0),a=void 0,l=f=-1}else throw new SyntaxError(`Unexpected character at index ${h}`);if(l===-1||s||u===32||u===9)throw new SyntaxError("Unexpected end of input");f===-1&&(f=h);let p=i.slice(l,f);return o===void 0?xe(e,p,t):(a===void 0?xe(t,p,!0):r?xe(t,a,p.replace(/\\/g,"")):xe(t,a,p),xe(e,o,t)),e}function Ec(i){return Object.keys(i).map(e=>{let t=i[e];return Array.isArray(t)||(t=[t]),t.map(r=>[e].concat(Object.keys(r).map(n=>{let s=r[n];return Array.isArray(s)||(s=[s]),s.map(o=>o===!0?n:`${n}=${o}`).join("; ")})).join("; ")).join(", ")}).join(", ")}Hs.exports={format:Ec,parse:_c}});var en=F((fu,io)=>{"use strict";var Sc=N("events"),wc=N("https"),bc=N("http"),Ks=N("net"),xc=N("tls"),{randomBytes:Cc,createHash:Nc}=N("crypto"),{Readable:hu}=N("stream"),{URL:Jr}=N("url"),je=Ht(),kc=Hr(),Ac=Gr(),{BINARY_TYPES:js,EMPTY_BUFFER:Gi,GUID:Rc,kForOnEventAttribute:Xr,kListener:Tc,kStatusCode:Oc,kWebSocket:J,NOOP:Ys}=Ve(),{EventTarget:{addEventListener:Ic,removeEventListener:Pc}}=Vs(),{format:Lc,parse:Fc}=Yr(),{toBuffer:Uc}=zt(),Dc=30*1e3,Js=Symbol("kAborted"),Qr=[8,13],Le=["CONNECTING","OPEN","CLOSING","CLOSED"],Bc=/^[!#$%&'*+\-.0-9A-Z^_`|a-z~]+$/,B=class i extends Sc{constructor(e,t,r){super(),this._binaryType=js[0],this._closeCode=1006,this._closeFrameReceived=!1,this._closeFrameSent=!1,this._closeMessage=Gi,this._closeTimer=null,this._extensions={},this._paused=!1,this._protocol="",this._readyState=i.CONNECTING,this._receiver=null,this._sender=null,this._socket=null,e!==null?(this._bufferedAmount=0,this._isServer=!1,this._redirects=0,t===void 0?t=[]:Array.isArray(t)||(typeof t=="object"&&t!==null?(r=t,t=[]):t=[t]),Xs(this,e,t,r)):this._isServer=!0}get binaryType(){return this._binaryType}set binaryType(e){js.includes(e)&&(this._binaryType=e,this._receiver&&(this._receiver._binaryType=e))}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(e,t,r){let n=new kc({binaryType:this.binaryType,extensions:this._extensions,isServer:this._isServer,maxPayload:r.maxPayload,skipUTF8Validation:r.skipUTF8Validation});this._sender=new Ac(e,this._extensions,r.generateMask),this._receiver=n,this._socket=e,n[J]=this,e[J]=this,n.on("conclude",Wc),n.on("drain",zc),n.on("error",$c),n.on("message",Vc),n.on("ping",Hc),n.on("pong",jc),e.setTimeout(0),e.setNoDelay(),t.length>0&&e.unshift(t),e.on("close",Zs),e.on("data",Yi),e.on("end",eo),e.on("error",to),this._readyState=i.OPEN,this.emit("open")}emitClose(){if(!this._socket){this._readyState=i.CLOSED,this.emit("close",this._closeCode,this._closeMessage);return}this._extensions[je.extensionName]&&this._extensions[je.extensionName].cleanup(),this._receiver.removeAllListeners(),this._readyState=i.CLOSED,this.emit("close",this._closeCode,this._closeMessage)}close(e,t){if(this.readyState!==i.CLOSED){if(this.readyState===i.CONNECTING)return ne(this,this._req,"WebSocket was closed before the connection was established");if(this.readyState===i.CLOSING){this._closeFrameSent&&(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end();return}this._readyState=i.CLOSING,this._sender.close(e,t,!this._isServer,r=>{r||(this._closeFrameSent=!0,(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end())}),this._closeTimer=setTimeout(this._socket.destroy.bind(this._socket),Dc)}}pause(){this.readyState===i.CONNECTING||this.readyState===i.CLOSED||(this._paused=!0,this._socket.pause())}ping(e,t,r){if(this.readyState===i.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof e=="function"?(r=e,e=t=void 0):typeof t=="function"&&(r=t,t=void 0),typeof e=="number"&&(e=e.toString()),this.readyState!==i.OPEN){Zr(this,e,r);return}t===void 0&&(t=!this._isServer),this._sender.ping(e||Gi,t,r)}pong(e,t,r){if(this.readyState===i.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof e=="function"?(r=e,e=t=void 0):typeof t=="function"&&(r=t,t=void 0),typeof e=="number"&&(e=e.toString()),this.readyState!==i.OPEN){Zr(this,e,r);return}t===void 0&&(t=!this._isServer),this._sender.pong(e||Gi,t,r)}resume(){this.readyState===i.CONNECTING||this.readyState===i.CLOSED||(this._paused=!1,this._receiver._writableState.needDrain||this._socket.resume())}send(e,t,r){if(this.readyState===i.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof t=="function"&&(r=t,t={}),typeof e=="number"&&(e=e.toString()),this.readyState!==i.OPEN){Zr(this,e,r);return}let n=_({binary:typeof e!="string",mask:!this._isServer,compress:!0,fin:!0},t);this._extensions[je.extensionName]||(n.compress=!1),this._sender.send(e||Gi,n,r)}terminate(){if(this.readyState!==i.CLOSED){if(this.readyState===i.CONNECTING)return ne(this,this._req,"WebSocket was closed before the connection was established");this._socket&&(this._readyState=i.CLOSING,this._socket.destroy())}}};Object.defineProperty(B,"CONNECTING",{enumerable:!0,value:Le.indexOf("CONNECTING")});Object.defineProperty(B.prototype,"CONNECTING",{enumerable:!0,value:Le.indexOf("CONNECTING")});Object.defineProperty(B,"OPEN",{enumerable:!0,value:Le.indexOf("OPEN")});Object.defineProperty(B.prototype,"OPEN",{enumerable:!0,value:Le.indexOf("OPEN")});Object.defineProperty(B,"CLOSING",{enumerable:!0,value:Le.indexOf("CLOSING")});Object.defineProperty(B.prototype,"CLOSING",{enumerable:!0,value:Le.indexOf("CLOSING")});Object.defineProperty(B,"CLOSED",{enumerable:!0,value:Le.indexOf("CLOSED")});Object.defineProperty(B.prototype,"CLOSED",{enumerable:!0,value:Le.indexOf("CLOSED")});["binaryType","bufferedAmount","extensions","isPaused","protocol","readyState","url"].forEach(i=>{Object.defineProperty(B.prototype,i,{enumerable:!0})});["open","error","close","message"].forEach(i=>{Object.defineProperty(B.prototype,`on${i}`,{enumerable:!0,get(){for(let e of this.listeners(i))if(e[Xr])return e[Tc];return null},set(e){for(let t of this.listeners(i))if(t[Xr]){this.removeListener(i,t);break}typeof e=="function"&&this.addEventListener(i,e,{[Xr]:!0})}})});B.prototype.addEventListener=Ic;B.prototype.removeEventListener=Pc;io.exports=B;function Xs(i,e,t,r){let n=k(_({protocolVersion:Qr[1],maxPayload:104857600,skipUTF8Validation:!1,perMessageDeflate:!0,followRedirects:!1,maxRedirects:10},r),{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(!Qr.includes(n.protocolVersion))throw new RangeError(`Unsupported protocol version: ${n.protocolVersion} (supported versions: ${Qr.join(", ")})`);let s;if(e instanceof Jr)s=e,i._url=e.href;else{try{s=new Jr(e)}catch(g){throw new SyntaxError(`Invalid URL: ${e}`)}i._url=e}let o=s.protocol==="wss:",a=s.protocol==="ws+unix:",l;if(s.protocol!=="ws:"&&!o&&!a?l=`The URL's protocol must be one of "ws:", "wss:", or "ws+unix:"`:a&&!s.pathname?l="The URL's pathname is empty":s.hash&&(l="The URL contains a fragment identifier"),l){let g=new SyntaxError(l);if(i._redirects===0)throw g;Ki(i,g);return}let u=o?443:80,f=Cc(16).toString("base64"),h=o?wc.request:bc.request,p=new Set,d;if(n.createConnection=o?qc:Mc,n.defaultPort=n.defaultPort||u,n.port=s.port||u,n.host=s.hostname.startsWith("[")?s.hostname.slice(1,-1):s.hostname,n.headers=k(_({},n.headers),{"Sec-WebSocket-Version":n.protocolVersion,"Sec-WebSocket-Key":f,Connection:"Upgrade",Upgrade:"websocket"}),n.path=s.pathname+s.search,n.timeout=n.handshakeTimeout,n.perMessageDeflate&&(d=new je(n.perMessageDeflate!==!0?n.perMessageDeflate:{},!1,n.maxPayload),n.headers["Sec-WebSocket-Extensions"]=Lc({[je.extensionName]:d.offer()})),t.length){for(let g of t){if(typeof g!="string"||!Bc.test(g)||p.has(g))throw new SyntaxError("An invalid or duplicated subprotocol was specified");p.add(g)}n.headers["Sec-WebSocket-Protocol"]=t.join(",")}if(n.origin&&(n.protocolVersion<13?n.headers["Sec-WebSocket-Origin"]=n.origin:n.headers.Origin=n.origin),(s.username||s.password)&&(n.auth=`${s.username}:${s.password}`),a){let g=n.path.split(":");n.socketPath=g[0],n.path=g[1]}let b;if(n.followRedirects){if(i._redirects===0){i._originalIpc=a,i._originalSecure=o,i._originalHostOrSocketPath=a?n.socketPath:s.host;let g=r&&r.headers;if(r=k(_({},r),{headers:{}}),g)for(let[v,R]of Object.entries(g))r.headers[v.toLowerCase()]=R}else if(i.listenerCount("redirect")===0){let g=a?i._originalIpc?n.socketPath===i._originalHostOrSocketPath:!1:i._originalIpc?!1:s.host===i._originalHostOrSocketPath;(!g||i._originalSecure&&!o)&&(delete n.headers.authorization,delete n.headers.cookie,g||delete n.headers.host,n.auth=void 0)}n.auth&&!r.headers.authorization&&(r.headers.authorization="Basic "+Buffer.from(n.auth).toString("base64")),b=i._req=h(n),i._redirects&&i.emit("redirect",i.url,b)}else b=i._req=h(n);n.timeout&&b.on("timeout",()=>{ne(i,b,"Opening handshake has timed out")}),b.on("error",g=>{b===null||b[Js]||(b=i._req=null,Ki(i,g))}),b.on("response",g=>{let v=g.headers.location,R=g.statusCode;if(v&&n.followRedirects&&R>=300&&R<400){if(++i._redirects>n.maxRedirects){ne(i,b,"Maximum redirects exceeded");return}b.abort();let T;try{T=new Jr(v,e)}catch(y){let E=new SyntaxError(`Invalid URL: ${v}`);Ki(i,E);return}Xs(i,T,t,r)}else i.emit("unexpected-response",b,g)||ne(i,b,`Unexpected server response: ${g.statusCode}`)}),b.on("upgrade",(g,v,R)=>{if(i.emit("upgrade",g),i.readyState!==B.CONNECTING)return;if(b=i._req=null,g.headers.upgrade.toLowerCase()!=="websocket"){ne(i,v,"Invalid Upgrade header");return}let T=Nc("sha1").update(f+Rc).digest("base64");if(g.headers["sec-websocket-accept"]!==T){ne(i,v,"Invalid Sec-WebSocket-Accept header");return}let y=g.headers["sec-websocket-protocol"],E;if(y!==void 0?p.size?p.has(y)||(E="Server sent an invalid subprotocol"):E="Server sent a subprotocol but none was requested":p.size&&(E="Server sent no subprotocol"),E){ne(i,v,E);return}y&&(i._protocol=y);let z=g.headers["sec-websocket-extensions"];if(z!==void 0){if(!d){ne(i,v,"Server sent a Sec-WebSocket-Extensions header but no extension was requested");return}let C;try{C=Fc(z)}catch(M){ne(i,v,"Invalid Sec-WebSocket-Extensions header");return}let I=Object.keys(C);if(I.length!==1||I[0]!==je.extensionName){ne(i,v,"Server indicated an extension that was not requested");return}try{d.accept(C[je.extensionName])}catch(M){ne(i,v,"Invalid Sec-WebSocket-Extensions header");return}i._extensions[je.extensionName]=d}i.setSocket(v,R,{generateMask:n.generateMask,maxPayload:n.maxPayload,skipUTF8Validation:n.skipUTF8Validation})}),b.end()}function Ki(i,e){i._readyState=B.CLOSING,i.emit("error",e),i.emitClose()}function Mc(i){return i.path=i.socketPath,Ks.connect(i)}function qc(i){return i.path=void 0,!i.servername&&i.servername!==""&&(i.servername=Ks.isIP(i.host)?"":i.host),xc.connect(i)}function ne(i,e,t){i._readyState=B.CLOSING;let r=new Error(t);Error.captureStackTrace(r,ne),e.setHeader?(e[Js]=!0,e.abort(),e.socket&&!e.socket.destroyed&&e.socket.destroy(),process.nextTick(Ki,i,r)):(e.destroy(r),e.once("error",i.emit.bind(i,"error")),e.once("close",i.emitClose.bind(i)))}function Zr(i,e,t){if(e){let r=Uc(e).length;i._socket?i._sender._bufferedBytes+=r:i._bufferedAmount+=r}if(t){let r=new Error(`WebSocket is not open: readyState ${i.readyState} (${Le[i.readyState]})`);t(r)}}function Wc(i,e){let t=this[J];t._closeFrameReceived=!0,t._closeMessage=e,t._closeCode=i,t._socket[J]!==void 0&&(t._socket.removeListener("data",Yi),process.nextTick(Qs,t._socket),i===1005?t.close():t.close(i,e))}function zc(){let i=this[J];i.isPaused||i._socket.resume()}function $c(i){let e=this[J];e._socket[J]!==void 0&&(e._socket.removeListener("data",Yi),process.nextTick(Qs,e._socket),e.close(i[Oc])),e.emit("error",i)}function Gs(){this[J].emitClose()}function Vc(i,e){this[J].emit("message",i,e)}function Hc(i){let e=this[J];e.pong(i,!e._isServer,Ys),e.emit("ping",i)}function jc(i){this[J].emit("pong",i)}function Qs(i){i.resume()}function Zs(){let i=this[J];this.removeListener("close",Zs),this.removeListener("data",Yi),this.removeListener("end",eo),i._readyState=B.CLOSING;let e;!this._readableState.endEmitted&&!i._closeFrameReceived&&!i._receiver._writableState.errorEmitted&&(e=i._socket.read())!==null&&i._receiver.write(e),i._receiver.end(),this[J]=void 0,clearTimeout(i._closeTimer),i._receiver._writableState.finished||i._receiver._writableState.errorEmitted?i.emitClose():(i._receiver.on("error",Gs),i._receiver.on("finish",Gs))}function Yi(i){this[J]._receiver.write(i)||this.pause()}function eo(){let i=this[J];i._readyState=B.CLOSING,i._receiver.end(),this.end()}function to(){let i=this[J];this.removeListener("error",to),this.on("error",Ys),i&&(i._readyState=B.CLOSING,this.destroy())}});var no=F((du,ro)=>{"use strict";var{tokenChars:Gc}=jt();function Kc(i){let e=new Set,t=-1,r=-1,n=0;for(n;n<i.length;n++){let o=i.charCodeAt(n);if(r===-1&&Gc[o]===1)t===-1&&(t=n);else if(n!==0&&(o===32||o===9))r===-1&&t!==-1&&(r=n);else if(o===44){if(t===-1)throw new SyntaxError(`Unexpected character at index ${n}`);r===-1&&(r=n);let a=i.slice(t,r);if(e.has(a))throw new SyntaxError(`The "${a}" subprotocol is duplicated`);e.add(a),t=r=-1}else throw new SyntaxError(`Unexpected character at index ${n}`)}if(t===-1||r!==-1)throw new SyntaxError("Unexpected end of input");let s=i.slice(t,n);if(e.has(s))throw new SyntaxError(`The "${s}" subprotocol is duplicated`);return e.add(s),e}ro.exports={parse:Kc}});var fo=F((yu,ho)=>{"use strict";var Yc=N("events"),Ji=N("http"),pu=N("https"),mu=N("net"),gu=N("tls"),{createHash:Jc}=N("crypto"),so=Yr(),rt=Ht(),Xc=no(),Qc=en(),{GUID:Zc,kWebSocket:el}=Ve(),tl=/^[+/0-9A-Za-z]{22}==$/,oo=0,ao=1,lo=2,tn=class extends Yc{constructor(e,t){if(super(),e=_({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:Qc},e),e.port==null&&!e.server&&!e.noServer||e.port!=null&&(e.server||e.noServer)||e.server&&e.noServer)throw new TypeError('One and only one of the "port", "server", or "noServer" options must be specified');if(e.port!=null?(this._server=Ji.createServer((r,n)=>{let s=Ji.STATUS_CODES[426];n.writeHead(426,{"Content-Length":s.length,"Content-Type":"text/plain"}),n.end(s)}),this._server.listen(e.port,e.host,e.backlog,t)):e.server&&(this._server=e.server),this._server){let r=this.emit.bind(this,"connection");this._removeListeners=il(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(n,s,o)=>{this.handleUpgrade(n,s,o,r)}})}e.perMessageDeflate===!0&&(e.perMessageDeflate={}),e.clientTracking&&(this.clients=new Set,this._shouldEmitClose=!1),this.options=e,this._state=oo}address(){if(this.options.noServer)throw new Error('The server is operating in "noServer" mode');return this._server?this._server.address():null}close(e){if(this._state===lo){e&&this.once("close",()=>{e(new Error("The server is not running"))}),process.nextTick(Xt,this);return}if(e&&this.once("close",e),this._state!==ao)if(this._state=ao,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(Xt,this):process.nextTick(Xt,this);else{let t=this._server;this._removeListeners(),this._removeListeners=this._server=null,t.close(()=>{Xt(this)})}}shouldHandle(e){if(this.options.path){let t=e.url.indexOf("?");if((t!==-1?e.url.slice(0,t):e.url)!==this.options.path)return!1}return!0}handleUpgrade(e,t,r,n){t.on("error",co);let s=e.headers["sec-websocket-key"],o=+e.headers["sec-websocket-version"];if(e.method!=="GET"){nt(this,e,t,405,"Invalid HTTP method");return}if(e.headers.upgrade.toLowerCase()!=="websocket"){nt(this,e,t,400,"Invalid Upgrade header");return}if(!s||!tl.test(s)){nt(this,e,t,400,"Missing or invalid Sec-WebSocket-Key header");return}if(o!==8&&o!==13){nt(this,e,t,400,"Missing or invalid Sec-WebSocket-Version header");return}if(!this.shouldHandle(e)){Qt(t,400);return}let a=e.headers["sec-websocket-protocol"],l=new Set;if(a!==void 0)try{l=Xc.parse(a)}catch(h){nt(this,e,t,400,"Invalid Sec-WebSocket-Protocol header");return}let u=e.headers["sec-websocket-extensions"],f={};if(this.options.perMessageDeflate&&u!==void 0){let h=new rt(this.options.perMessageDeflate,!0,this.options.maxPayload);try{let p=so.parse(u);p[rt.extensionName]&&(h.accept(p[rt.extensionName]),f[rt.extensionName]=h)}catch(p){nt(this,e,t,400,"Invalid or unacceptable Sec-WebSocket-Extensions header");return}}if(this.options.verifyClient){let h={origin:e.headers[`${o===8?"sec-websocket-origin":"origin"}`],secure:!!(e.socket.authorized||e.socket.encrypted),req:e};if(this.options.verifyClient.length===2){this.options.verifyClient(h,(p,d,b,g)=>{if(!p)return Qt(t,d||401,b,g);this.completeUpgrade(f,s,l,e,t,r,n)});return}if(!this.options.verifyClient(h))return Qt(t,401)}this.completeUpgrade(f,s,l,e,t,r,n)}completeUpgrade(e,t,r,n,s,o,a){if(!s.readable||!s.writable)return s.destroy();if(s[el])throw new Error("server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration");if(this._state>oo)return Qt(s,503);let u=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade",`Sec-WebSocket-Accept: ${Jc("sha1").update(t+Zc).digest("base64")}`],f=new this.options.WebSocket(null);if(r.size){let h=this.options.handleProtocols?this.options.handleProtocols(r,n):r.values().next().value;h&&(u.push(`Sec-WebSocket-Protocol: ${h}`),f._protocol=h)}if(e[rt.extensionName]){let h=e[rt.extensionName].params,p=so.format({[rt.extensionName]:[h]});u.push(`Sec-WebSocket-Extensions: ${p}`),f._extensions=e}this.emit("headers",u,n),s.write(u.concat(`\r
|
|
7
7
|
`).join(`\r
|
|
8
|
-
`)),s.removeListener("error",
|
|
8
|
+
`)),s.removeListener("error",co),f.setSocket(s,o,{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(Xt,this)})),a(f,n)}};ho.exports=tn;function il(i,e){for(let t of Object.keys(e))i.on(t,e[t]);return function(){for(let r of Object.keys(e))i.removeListener(r,e[r])}}function Xt(i){i._state=lo,i.emit("close")}function co(){this.destroy()}function Qt(i,e,t,r){t=t||Ji.STATUS_CODES[e],r=_({Connection:"close","Content-Type":"text/html","Content-Length":Buffer.byteLength(t)},r),i.once("finish",i.destroy),i.end(`HTTP/1.1 ${e} ${Ji.STATUS_CODES[e]}\r
|
|
9
9
|
`+Object.keys(r).map(n=>`${n}: ${r[n]}`).join(`\r
|
|
10
10
|
`)+`\r
|
|
11
11
|
\r
|
|
12
|
-
`+t)}function
|
|
12
|
+
`+t)}function nt(i,e,t,r,n){if(i.listenerCount("wsClientError")){let s=new Error(n);Error.captureStackTrace(s,nt),i.emit("wsClientError",s,t,e)}else Qt(t,r,n)}});var nn=F((Zu,Eo)=>{"use strict";function ul(i){t.debug=t,t.default=t,t.coerce=l,t.disable=s,t.enable=n,t.enabled=o,t.humanize=Cr(),t.destroy=u,Object.keys(i).forEach(f=>{t[f]=i[f]}),t.names=[],t.skips=[],t.formatters={};function e(f){let h=0;for(let p=0;p<f.length;p++)h=(h<<5)-h+f.charCodeAt(p),h|=0;return t.colors[Math.abs(h)%t.colors.length]}t.selectColor=e;function t(f){let h,p=null,d,b;function g(...v){if(!g.enabled)return;let R=g,T=Number(new Date),y=T-(h||T);R.diff=y,R.prev=h,R.curr=T,h=T,v[0]=t.coerce(v[0]),typeof v[0]!="string"&&v.unshift("%O");let E=0;v[0]=v[0].replace(/%([a-zA-Z%])/g,(C,I)=>{if(C==="%%")return"%";E++;let M=t.formatters[I];if(typeof M=="function"){let te=v[E];C=M.call(R,te),v.splice(E,1),E--}return C}),t.formatArgs.call(R,v),(R.log||t.log).apply(R,v)}return g.namespace=f,g.useColors=t.useColors(),g.color=t.selectColor(f),g.extend=r,g.destroy=t.destroy,Object.defineProperty(g,"enabled",{enumerable:!0,configurable:!1,get:()=>p!==null?p:(d!==t.namespaces&&(d=t.namespaces,b=t.enabled(f)),b),set:v=>{p=v}}),typeof t.init=="function"&&t.init(g),g}function r(f,h){let p=t(this.namespace+(typeof h=="undefined"?":":h)+f);return p.log=this.log,p}function n(f){t.save(f),t.namespaces=f,t.names=[],t.skips=[];let h,p=(typeof f=="string"?f:"").split(/[\s,]+/),d=p.length;for(h=0;h<d;h++)p[h]&&(f=p[h].replace(/\*/g,".*?"),f[0]==="-"?t.skips.push(new RegExp("^"+f.slice(1)+"$")):t.names.push(new RegExp("^"+f+"$")))}function s(){let f=[...t.names.map(a),...t.skips.map(a).map(h=>"-"+h)].join(",");return t.enable(""),f}function o(f){if(f[f.length-1]==="*")return!0;let h,p;for(h=0,p=t.skips.length;h<p;h++)if(t.skips[h].test(f))return!1;for(h=0,p=t.names.length;h<p;h++)if(t.names[h].test(f))return!0;return!1}function a(f){return f.toString().substring(2,f.toString().length-2).replace(/\.\*\?$/,"*")}function l(f){return f instanceof Error?f.stack||f.message:f}function u(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return t.enable(t.load()),t}Eo.exports=ul});var So=F((se,er)=>{"use strict";se.formatArgs=pl;se.save=ml;se.load=gl;se.useColors=dl;se.storage=yl();se.destroy=(()=>{let i=!1;return()=>{i||(i=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();se.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function dl(){return typeof window!="undefined"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator!="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document!="undefined"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window!="undefined"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator!="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator!="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function pl(i){if(i[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+i[0]+(this.useColors?"%c ":" ")+"+"+er.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;i.splice(1,0,e,"color: inherit");let t=0,r=0;i[0].replace(/%[a-zA-Z%]/g,n=>{n!=="%%"&&(t++,n==="%c"&&(r=t))}),i.splice(r,0,e)}se.log=console.debug||console.log||(()=>{});function ml(i){try{i?se.storage.setItem("debug",i):se.storage.removeItem("debug")}catch(e){}}function gl(){let i;try{i=se.storage.getItem("debug")}catch(e){}return!i&&typeof process!="undefined"&&"env"in process&&(i=process.env.DEBUG),i}function yl(){try{return localStorage}catch(i){}}er.exports=nn()(se);var{formatters:vl}=er.exports;vl.j=function(i){try{return JSON.stringify(i)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var bo=F((j,ir)=>{"use strict";var _l=N("tty"),tr=N("util");j.init=Nl;j.log=bl;j.formatArgs=Sl;j.save=xl;j.load=Cl;j.useColors=El;j.destroy=tr.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");j.colors=[6,2,3,4,5,1];try{let i=Rr();i&&(i.stderr||i).level>=2&&(j.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch(i){}j.inspectOpts=Object.keys(process.env).filter(i=>/^debug_/i.test(i)).reduce((i,e)=>{let t=e.substring(6).toLowerCase().replace(/_([a-z])/g,(n,s)=>s.toUpperCase()),r=process.env[e];return/^(yes|on|true|enabled)$/i.test(r)?r=!0:/^(no|off|false|disabled)$/i.test(r)?r=!1:r==="null"?r=null:r=Number(r),i[t]=r,i},{});function El(){return"colors"in j.inspectOpts?!!j.inspectOpts.colors:_l.isatty(process.stderr.fd)}function Sl(i){let{namespace:e,useColors:t}=this;if(t){let r=this.color,n="\x1B[3"+(r<8?r:"8;5;"+r),s=` ${n};1m${e} \x1B[0m`;i[0]=s+i[0].split(`
|
|
13
13
|
`).join(`
|
|
14
|
-
`+s),i.push(n+"m+"+
|
|
15
|
-
`)}function
|
|
16
|
-
`).map(e=>e.trim()).join(" ")};Eo.O=function(i){return this.inspectOpts.colors=this.useColors,Zi.inspect(i,this.inspectOpts)}});var ei=F((Yu,tn)=>{"use strict";typeof process=="undefined"||process.type==="renderer"||process.browser===!0||process.__nwjs?tn.exports=_o():tn.exports=So()});var Xo="v1",Qo=`${PACKAGE_NAME}@${PACKAGE_VERSION}`,ci=class{constructor(e={}){this.DEFAULT_BACKEND_URL=typeof window!="undefined"&&window.NOVU_LOCAL_BACKEND_URL||"https://api.novu.co";let{apiVersion:t=Xo,apiUrl:r=this.DEFAULT_BACKEND_URL,userAgent:n=Qo,headers:s={}}=e||{};this.apiVersion=t,this.apiUrl=`${r}/${t}`,this.headers=_({"Novu-API-Version":NOVU_API_VERSION,"Content-Type":"application/json","User-Agent":n},s)}setAuthorizationToken(e){this.headers.Authorization=`Bearer ${e}`}setKeylessHeader(e){var r;let t=e||typeof window!="undefined"&&((r=window.localStorage)==null?void 0:r.getItem("novu_keyless_application_identifier"));!t||!t.startsWith("pk_keyless_")||(this.headers["Novu-Application-Identifier"]=t)}setHeaders(e){this.headers=_(_({},this.headers),e)}get(e,t,r=!0){return m(this,null,function*(){return this.doFetch({path:e,searchParams:t,options:{method:"GET"},unwrapEnvelope:r})})}post(e,t,r){return m(this,null,function*(){return this.doFetch({path:e,options:{method:"POST",body:t,headers:r==null?void 0:r.headers}})})}patch(e,t){return m(this,null,function*(){return this.doFetch({path:e,options:{method:"PATCH",body:t}})})}delete(e,t){return m(this,null,function*(){return this.doFetch({path:e,options:{method:"DELETE",body:t}})})}doFetch(s){return m(this,arguments,function*({path:e,searchParams:t,options:r,unwrapEnvelope:n=!0}){let o=Zo(this.apiUrl,e,t?`?${t.toString()}`:""),a={method:(r==null?void 0:r.method)||"GET",headers:_(_({},this.headers),(r==null?void 0:r.headers)||{}),body:r!=null&&r.body?JSON.stringify(r.body):void 0},h=yield fetch(o,a);if(!h.ok){let l=yield h.json();throw new Error(`${this.headers["User-Agent"]} error. Status: ${h.status}, Message: ${l.message}`)}if(h.status===204)return;let u=yield h.json();return n?u.data:u})}};function Zo(...i){return i.reduce((e,t)=>(t&&e.push(t.replace(new RegExp("(?<!https?:)\\/+","g"),"/").replace(/^\/+|\/+$/g,"")),e),[]).join("/").replace(/\/\?/,"?")}var ct="/inbox",Z=`${ct}/notifications`,P,li=class{constructor(e={}){this.isSessionInitialized=!1;S(this,P);w(this,P,new ci(e))}initializeSession(n){return m(this,arguments,function*({applicationIdentifier:e,subscriberHash:t,subscriber:r}){let s=yield c(this,P).post(`${ct}/session`,{applicationIdentifier:e,subscriberHash:t,subscriber:r});return c(this,P).setAuthorizationToken(s.token),c(this,P).setKeylessHeader(s.applicationIdentifier),this.isSessionInitialized=!0,s})}fetchNotifications({after:e,archived:t,limit:r=10,offset:n,read:s,tags:o,snoozed:a,seen:h,data:u}){let l=new URLSearchParams(`limit=${r}`);return e&&l.append("after",e),n&&l.append("offset",`${n}`),o&&o.forEach(f=>l.append("tags[]",f)),s!==void 0&&l.append("read",`${s}`),t!==void 0&&l.append("archived",`${t}`),a!==void 0&&l.append("snoozed",`${a}`),h!==void 0&&l.append("seen",`${h}`),u!==void 0&&l.append("data",JSON.stringify(u)),c(this,P).get(Z,l,!1)}count({filters:e}){return c(this,P).get(`${Z}/count`,new URLSearchParams({filters:JSON.stringify(e)}),!1)}read(e){return c(this,P).patch(`${Z}/${e}/read`)}unread(e){return c(this,P).patch(`${Z}/${e}/unread`)}archive(e){return c(this,P).patch(`${Z}/${e}/archive`)}unarchive(e){return c(this,P).patch(`${Z}/${e}/unarchive`)}snooze(e,t){return c(this,P).patch(`${Z}/${e}/snooze`,{snoozeUntil:t})}unsnooze(e){return c(this,P).patch(`${Z}/${e}/unsnooze`)}readAll({tags:e,data:t}){return c(this,P).post(`${Z}/read`,{tags:e,data:t?JSON.stringify(t):void 0})}archiveAll({tags:e,data:t}){return c(this,P).post(`${Z}/archive`,{tags:e,data:t?JSON.stringify(t):void 0})}archiveAllRead({tags:e,data:t}){return c(this,P).post(`${Z}/archive/read`,{tags:e,data:t?JSON.stringify(t):void 0})}markAsSeen({notificationIds:e,tags:t,data:r}){return c(this,P).post(`${Z}/seen`,{notificationIds:e,tags:t,data:r?JSON.stringify(r):void 0})}seen(e){return this.markAsSeen({notificationIds:[e]})}completeAction({actionType:e,notificationId:t}){return c(this,P).patch(`${Z}/${t}/complete`,{actionType:e})}revertAction({actionType:e,notificationId:t}){return c(this,P).patch(`${Z}/${t}/revert`,{actionType:e})}fetchPreferences(e){let t=new URLSearchParams;e&&e.forEach(n=>t.append("tags[]",n));let r=t.size?`?${t.toString()}`:"";return c(this,P).get(`${ct}/preferences${r}`)}bulkUpdatePreferences(e){return c(this,P).patch(`${ct}/preferences/bulk`,{preferences:e})}updateGlobalPreferences(e){return c(this,P).patch(`${ct}/preferences`,e)}updateWorkflowPreferences({workflowId:e,channels:t}){return c(this,P).patch(`${ct}/preferences/${e}`,t)}triggerHelloWorldEvent(){let e={name:"hello-world",to:{subscriberId:"keyless-subscriber-id"},payload:{subject:"Novu Keyless Environment",body:"You're using a keyless demo environment. For full access to Novu features and cloud integration, obtain your API key.",primaryActionText:"Obtain API Key",primaryActionUrl:"https://go.novu.co/keyless",secondaryActionText:"Explore Documentation",secondaryActionUrl:"https://go.novu.co/keyless-docs"}};return c(this,P).post("/inbox/events",e)}};P=new WeakMap;function mn(i){return{all:i=i||new Map,on:function(e,t){var r=i.get(e);r?r.push(t):i.set(e,[t])},off:function(e,t){var r=i.get(e);r&&(t?r.splice(r.indexOf(t)>>>0,1):i.set(e,[]))},emit:function(e,t){var r=i.get(e);r&&r.slice().map(function(n){n(t)}),(r=i.get("*"))&&r.slice().map(function(n){n(e,t)})}}}var Ye,hi=class{constructor(){S(this,Ye);w(this,Ye,mn())}on(e,t){return c(this,Ye).on(e,t),()=>{this.off(e,t)}}off(e,t){c(this,Ye).off(e,t)}emit(e,t){c(this,Ye).emit(e,t)}};Ye=new WeakMap;var A=class extends Error{constructor(e,t){super(e),this.originalError=t}};var fi=r=>m(void 0,[r],function*({emitter:i,apiService:e,args:t}){let{notificationId:n,optimisticValue:s}=ke(t,{isRead:!0,readAt:new Date().toISOString(),isArchived:!1,archivedAt:void 0},{emitter:i,apiService:e});try{i.emit("notification.read.pending",{args:t,data:s});let o=yield e.read(n),a=new U(o,i,e);return i.emit("notification.read.resolved",{args:t,data:a}),{data:a}}catch(o){return i.emit("notification.read.resolved",{args:t,error:o}),{error:new A("Failed to read notification",o)}}}),ui=r=>m(void 0,[r],function*({emitter:i,apiService:e,args:t}){let{notificationId:n,optimisticValue:s}=ke(t,{isRead:!1,readAt:null,isArchived:!1,archivedAt:void 0},{emitter:i,apiService:e});try{i.emit("notification.unread.pending",{args:t,data:s});let o=yield e.unread(n),a=new U(o,i,e);return i.emit("notification.unread.resolved",{args:t,data:a}),{data:a}}catch(o){return i.emit("notification.unread.resolved",{args:t,error:o}),{error:new A("Failed to unread notification",o)}}}),di=r=>m(void 0,[r],function*({emitter:i,apiService:e,args:t}){let{notificationId:n,optimisticValue:s}=ke(t,{isSeen:!0},{emitter:i,apiService:e});try{if(i.emit("notification.seen.pending",{args:t,data:s}),yield e.seen(n),!s)throw new Error("Failed to create optimistic value for notification");let o=new U(s,i,e);return i.emit("notification.seen.resolved",{args:t,data:o}),{data:o}}catch(o){return i.emit("notification.seen.resolved",{args:t,error:o}),{error:new A("Failed to mark notification as seen",o)}}}),pi=r=>m(void 0,[r],function*({emitter:i,apiService:e,args:t}){let{notificationId:n,optimisticValue:s}=ke(t,{isArchived:!0,archivedAt:new Date().toISOString(),isRead:!0,readAt:new Date().toISOString()},{emitter:i,apiService:e});try{i.emit("notification.archive.pending",{args:t,data:s});let o=yield e.archive(n),a=new U(o,i,e);return i.emit("notification.archive.resolved",{args:t,data:a}),{data:a}}catch(o){return i.emit("notification.archive.resolved",{args:t,error:o}),{error:new A("Failed to archive notification",o)}}}),mi=r=>m(void 0,[r],function*({emitter:i,apiService:e,args:t}){let{notificationId:n,optimisticValue:s}=ke(t,{isArchived:!1,archivedAt:null,isRead:!0,readAt:new Date().toISOString()},{emitter:i,apiService:e});try{i.emit("notification.unarchive.pending",{args:t,data:s});let o=yield e.unarchive(n),a=new U(o,i,e);return i.emit("notification.unarchive.resolved",{args:t,data:a}),{data:a}}catch(o){return i.emit("notification.unarchive.resolved",{args:t,error:o}),{error:new A("Failed to unarchive notification",o)}}}),gi=r=>m(void 0,[r],function*({emitter:i,apiService:e,args:t}){let{notificationId:n,optimisticValue:s}=ke(t,{isSnoozed:!0,snoozedUntil:t.snoozeUntil},{emitter:i,apiService:e});try{i.emit("notification.snooze.pending",{args:t,data:s});let o=yield e.snooze(n,t.snoozeUntil),a=new U(o,i,e);return i.emit("notification.snooze.resolved",{args:t,data:a}),{data:a}}catch(o){return i.emit("notification.snooze.resolved",{args:t,error:o}),{error:new A("Failed to snooze notification",o)}}}),yi=r=>m(void 0,[r],function*({emitter:i,apiService:e,args:t}){let{notificationId:n,optimisticValue:s}=ke(t,{isSnoozed:!1,snoozedUntil:null},{emitter:i,apiService:e});try{i.emit("notification.unsnooze.pending",{args:t,data:s});let o=yield e.unsnooze(n),a=new U(o,i,e);return i.emit("notification.unsnooze.resolved",{args:t,data:a}),{data:a}}catch(o){return i.emit("notification.unsnooze.resolved",{args:t,error:o}),{error:new A("Failed to unsnooze notification",o)}}}),lt=n=>m(void 0,[n],function*({emitter:i,apiService:e,args:t,actionType:r}){let s=r==="primary"?{primaryAction:k(_({},"notification"in t?t.notification.primaryAction:{}),{isCompleted:!0})}:{secondaryAction:k(_({},"notification"in t?t.notification.secondaryAction:{}),{isCompleted:!0})},{notificationId:o,optimisticValue:a}=ke(t,s,{emitter:i,apiService:e});try{i.emit("notification.complete_action.pending",{args:t,data:a});let h=yield e.completeAction({actionType:r,notificationId:o}),u=new U(h,i,e);return i.emit("notification.complete_action.resolved",{args:t,data:u}),{data:u}}catch(h){return i.emit("notification.complete_action.resolved",{args:t,error:h}),{error:new A(`Failed to complete ${r} action on the notification`,h)}}}),ht=n=>m(void 0,[n],function*({emitter:i,apiService:e,args:t,actionType:r}){let s=r==="primary"?{primaryAction:k(_({},"notification"in t?t.notification.primaryAction:{}),{isCompleted:!1})}:{secondaryAction:k(_({},"notification"in t?t.notification.secondaryAction:{}),{isCompleted:!1})},{notificationId:o,optimisticValue:a}=ke(t,s,{emitter:i,apiService:e});try{i.emit("notification.revert_action.pending",{args:t,data:a});let h=yield e.revertAction({actionType:r,notificationId:o}),u=new U(h,i,e);return i.emit("notification.revert_action.resolved",{args:t,data:u}),{data:u}}catch(h){return i.emit("notification.revert_action.resolved",{args:t,error:h}),{error:new A("Failed to fetch notifications",h)}}}),ke=(i,e,t)=>"notification"in i?{notificationId:i.notification.id,optimisticValue:new U(_(_({},i.notification),e),t.emitter,t.apiService)}:{notificationId:i.notificationId},gn=s=>m(void 0,[s],function*({emitter:i,inboxService:e,notificationsCache:t,tags:r,data:n}){try{let a=t.getUniqueNotifications({tags:r,data:n}).map(h=>new U(k(_({},h),{isRead:!0,readAt:new Date().toISOString(),isArchived:!1,archivedAt:void 0}),i,e));return i.emit("notifications.read_all.pending",{args:{tags:r,data:n},data:a}),yield e.readAll({tags:r,data:n}),i.emit("notifications.read_all.resolved",{args:{tags:r,data:n},data:a}),{}}catch(o){return i.emit("notifications.read_all.resolved",{args:{tags:r,data:n},error:o}),{error:new A("Failed to read all notifications",o)}}}),hr=o=>m(void 0,[o],function*({emitter:i,inboxService:e,notificationsCache:t,notificationIds:r,tags:n,data:s}){try{let a=t.getUniqueNotifications({tags:n,data:s}),u=(r&&r.length>0?a.filter(l=>r.includes(l.id)):a).map(l=>new U(k(_({},l),{isSeen:!0,firstSeenAt:l.firstSeenAt||new Date().toISOString()}),i,e));return i.emit("notifications.seen_all.pending",{args:{notificationIds:r,tags:n,data:s},data:u}),yield e.markAsSeen({notificationIds:r,tags:n,data:s}),i.emit("notifications.seen_all.resolved",{args:{notificationIds:r,tags:n,data:s},data:u}),{}}catch(a){return i.emit("notifications.seen_all.resolved",{args:{notificationIds:r,tags:n,data:s},error:a}),{error:new A("Failed to mark all notifications as seen",a)}}}),yn=s=>m(void 0,[s],function*({emitter:i,inboxService:e,notificationsCache:t,tags:r,data:n}){try{let a=t.getUniqueNotifications({tags:r,data:n}).map(h=>new U(k(_({},h),{isRead:!0,readAt:new Date().toISOString(),isArchived:!0,archivedAt:new Date().toISOString()}),i,e));return i.emit("notifications.archive_all.pending",{args:{tags:r,data:n},data:a}),yield e.archiveAll({tags:r,data:n}),i.emit("notifications.archive_all.resolved",{args:{tags:r,data:n},data:a}),{}}catch(o){return i.emit("notifications.archive_all.resolved",{args:{tags:r,data:n},error:o}),{error:new A("Failed to archive all notifications",o)}}}),vn=s=>m(void 0,[s],function*({emitter:i,inboxService:e,notificationsCache:t,tags:r,data:n}){try{let a=t.getUniqueNotifications({tags:r,data:n,read:!0}).map(h=>new U(k(_({},h),{isArchived:!0,archivedAt:new Date().toISOString()}),i,e));return i.emit("notifications.archive_all_read.pending",{args:{tags:r,data:n},data:a}),yield e.archiveAllRead({tags:r,data:n}),i.emit("notifications.archive_all_read.resolved",{args:{tags:r,data:n},data:a}),{}}catch(o){return i.emit("notifications.archive_all_read.resolved",{args:{tags:r,data:n},error:o}),{error:new A("Failed to archive all read notifications",o)}}});var G,Q,U=class{constructor(e,t,r){S(this,G);S(this,Q);w(this,G,t),w(this,Q,r),this.id=e.id,this.transactionId=e.transactionId,this.subject=e.subject,this.body=e.body,this.to=e.to,this.isRead=e.isRead,this.isSeen=e.isSeen,this.isArchived=e.isArchived,this.isSnoozed=e.isSnoozed,this.snoozedUntil=e.snoozedUntil,this.deliveredAt=e.deliveredAt,this.createdAt=e.createdAt,this.readAt=e.readAt,this.firstSeenAt=e.firstSeenAt,this.archivedAt=e.archivedAt,this.avatar=e.avatar,this.primaryAction=e.primaryAction,this.secondaryAction=e.secondaryAction,this.channelType=e.channelType,this.tags=e.tags,this.redirect=e.redirect,this.data=e.data,this.workflow=e.workflow}read(){return fi({emitter:c(this,G),apiService:c(this,Q),args:{notification:this}})}unread(){return ui({emitter:c(this,G),apiService:c(this,Q),args:{notification:this}})}seen(){return di({emitter:c(this,G),apiService:c(this,Q),args:{notification:this}})}archive(){return pi({emitter:c(this,G),apiService:c(this,Q),args:{notification:this}})}unarchive(){return mi({emitter:c(this,G),apiService:c(this,Q),args:{notification:this}})}snooze(e){return gi({emitter:c(this,G),apiService:c(this,Q),args:{notification:this,snoozeUntil:e}})}unsnooze(){return yi({emitter:c(this,G),apiService:c(this,Q),args:{notification:this}})}completePrimary(){if(!this.primaryAction)throw new Error("Primary action is not available");return lt({emitter:c(this,G),apiService:c(this,Q),args:{notification:this},actionType:"primary"})}completeSecondary(){if(!this.primaryAction)throw new Error("Secondary action is not available");return lt({emitter:c(this,G),apiService:c(this,Q),args:{notification:this},actionType:"secondary"})}revertPrimary(){if(!this.primaryAction)throw new Error("Primary action is not available");return ht({emitter:c(this,G),apiService:c(this,Q),args:{notification:this},actionType:"primary"})}revertSecondary(){if(!this.primaryAction)throw new Error("Secondary action is not available");return ht({emitter:c(this,G),apiService:c(this,Q),args:{notification:this},actionType:"secondary"})}on(e,t){let r=c(this,G).on(e,t);return()=>{r()}}off(e,t){c(this,G).off(e,t)}};G=new WeakMap,Q=new WeakMap;var Me,ft,Se=class{constructor({inboxServiceInstance:e,eventEmitterInstance:t}){S(this,Me,[]);S(this,ft);this._emitter=t,this._inboxService=e,this._emitter.on("session.initialize.resolved",({error:r,data:n})=>{n?(this.onSessionSuccess(n),c(this,Me).forEach(a=>m(this,[a],function*({fn:s,resolve:o}){o(yield s())})),w(this,Me,[])):r&&(this.onSessionError(r),w(this,ft,r),c(this,Me).forEach(({resolve:s})=>{s({error:new A("Failed to initialize session, please contact the support",r)})}),w(this,Me,[]))})}onSessionSuccess(e){}onSessionError(e){}callWithSession(e){return m(this,null,function*(){return this._inboxService.isSessionInitialized?e():c(this,ft)?Promise.resolve({error:new A("Failed to initialize session, please contact the support",c(this,ft))}):new Promise((t,r)=>{c(this,Me).push({fn:e,resolve:t,reject:r})})})}};Me=new WeakMap,ft=new WeakMap;var _n=(i,e)=>i===e?!0:!i||!e||i.length!==e.length?!1:i.every((t,r)=>t===e[r]);var ah=["seen","unseen"],ch=["read","unread"],fr=(i,e)=>_n(i,e)||!i&&(e==null?void 0:e.length)===0||(i==null?void 0:i.length)===0&&!e,ur=(i,e)=>{if(!i&&!e)return!0;if(!i||!e)return!1;try{return JSON.stringify(i)===JSON.stringify(e)}catch(t){return!1}},dr=(i,e)=>ur(i.data,e.data)&&fr(i.tags,e.tags)&&i.read===e.read&&i.archived===e.archived&&i.snoozed===e.snoozed&&i.seen===e.seen;var pe,ut=class{constructor(){S(this,pe);w(this,pe,new Map)}get(e){return c(this,pe).get(e)}getValues(){return Array.from(c(this,pe).values())}entries(){return Array.from(c(this,pe).entries())}keys(){return Array.from(c(this,pe).keys())}set(e,t){c(this,pe).set(e,t)}remove(e){c(this,pe).delete(e)}clear(){c(this,pe).clear()}};pe=new WeakMap;var En=({tags:i,data:e,read:t,archived:r,snoozed:n,seen:s,limit:o,offset:a,after:h})=>Object.entries({tags:i,data:e,read:t,archived:r,snoozed:n,seen:s,limit:o,offset:a,after:h}).filter(([u,l])=>l!=null&&!(Array.isArray(l)&&l.length===0)).reduce((u,[l,f])=>(u[l]=f,u),{}),pr=({tags:i,data:e,read:t,archived:r,snoozed:n,seen:s,limit:o,offset:a,after:h})=>JSON.stringify(En({tags:i,data:e,read:t,archived:r,snoozed:n,seen:s,limit:o,offset:a,after:h})),ea=({tags:i,data:e,read:t,archived:r,snoozed:n,seen:s})=>JSON.stringify(En({tags:i,data:e,read:t,archived:r,snoozed:n,seen:s})),dt=i=>JSON.parse(i),ta=["notification.read.pending","notification.read.resolved","notification.unread.pending","notification.unread.resolved","notification.complete_action.pending","notification.complete_action.resolved","notification.revert_action.pending","notification.revert_action.resolved","notifications.read_all.pending","notifications.read_all.resolved"],ia=["notification.archive.pending","notification.unarchive.pending","notification.snooze.pending","notification.unsnooze.pending","notifications.archive_all.pending","notifications.archive_all_read.pending"],qe,$,Rt=class{constructor({emitter:e}){S(this,qe);S(this,$);this.updateNotification=(e,t)=>{let r=c(this,$).get(e);if(!r)return!1;let n=r.notifications.findIndex(o=>o.id===t.id);if(n===-1)return!1;let s=[...r.notifications];return s[n]=t,c(this,$).set(e,k(_({},r),{notifications:s})),!0};this.removeNotification=(e,t)=>{let r=c(this,$).get(e);if(!r)return!1;let n=r.notifications.findIndex(o=>o.id===t.id);if(n===-1)return!1;let s=[...r.notifications];return s.splice(n,1),c(this,$).set(e,k(_({},r),{notifications:s})),!0};this.handleNotificationEvent=({remove:e}={remove:!1})=>({data:t})=>{if(!t)return;let r=Array.isArray(t)?t:[t],n=new Set;c(this,$).keys().forEach(s=>{r.forEach(o=>{let a=!1;e?a=this.removeNotification(s,o):a=this.updateNotification(s,o),a&&n.add(ea(dt(s)))})}),n.forEach(s=>{let o=this.getAggregated(dt(s));c(this,qe).emit("notifications.list.updated",{data:o})})};w(this,qe,e),ta.forEach(t=>{c(this,qe).on(t,this.handleNotificationEvent())}),ia.forEach(t=>{c(this,qe).on(t,this.handleNotificationEvent({remove:!0}))}),w(this,$,new ut)}getAggregated(e){return c(this,$).keys().filter(r=>{let n=dt(r);return dr(n,e)}).map(r=>c(this,$).get(r)).reduce((r,n)=>n?{hasMore:n.hasMore,filter:n.filter,notifications:[...r.notifications,...n.notifications]}:r,{hasMore:!1,filter:{},notifications:[]})}has(e){return c(this,$).get(pr(e))!==void 0}set(e,t){c(this,$).set(pr(e),t)}update(e,t){this.set(e,t);let r=this.getAggregated(dt(pr(e)));c(this,qe).emit("notifications.list.updated",{data:r})}getAll(e){if(this.has(e))return this.getAggregated({tags:e.tags,data:e.data,read:e.read,snoozed:e.snoozed,archived:e.archived,seen:e.seen})}getUniqueNotifications({tags:e,read:t,data:r}){let n=c(this,$).keys(),s=new Map;return n.forEach(o=>{let a=dt(o);if(fr(e,a.tags)&&ur(r,a.data)){let h=c(this,$).get(o);if(!h)return;h.notifications.filter(u=>typeof t=="undefined"||t===u.isRead).forEach(u=>s.set(u.id,u))}}),Array.from(s.values())}clear(e){c(this,$).keys().forEach(r=>{dr(dt(r),e)&&c(this,$).remove(r)})}clearAll(){c(this,$).clear()}};qe=new WeakMap,$=new WeakMap;var Tt,vi=class extends Se{constructor({useCache:t,inboxServiceInstance:r,eventEmitterInstance:n}){super({eventEmitterInstance:n,inboxServiceInstance:r});S(this,Tt);this.cache=new Rt({emitter:n}),w(this,Tt,t)}get inboxService(){return this._inboxService}list(){return m(this,arguments,function*(n={}){var s=n,{limit:t=10}=s,r=cr(s,["limit"]);return this.callWithSession(()=>m(this,null,function*(){let o=_({limit:t},r);try{let a="useCache"in o?o.useCache:c(this,Tt),h=a?this.cache.getAll(o):void 0;if(this._emitter.emit("notifications.list.pending",{args:o,data:h}),!h){let u=yield this._inboxService.fetchNotifications(_({limit:t},r));h={hasMore:u.hasMore,filter:u.filter,notifications:u.data.map(l=>new U(l,this._emitter,this._inboxService))},a&&(this.cache.set(o,h),h=this.cache.getAll(o))}return this._emitter.emit("notifications.list.resolved",{args:o,data:h}),{data:h}}catch(a){return this._emitter.emit("notifications.list.resolved",{args:o,error:a}),{error:new A("Failed to fetch notifications",a)}}}))})}count(t){return m(this,null,function*(){return this.callWithSession(()=>m(this,null,function*(){let r=t&&"filters"in t?t.filters:[_({},t)];try{this._emitter.emit("notifications.count.pending",{args:t});let n=yield this._inboxService.count({filters:r}),s=t&&"filters"in t?{counts:n.data}:n.data[0];return this._emitter.emit("notifications.count.resolved",{args:t,data:s}),{data:s}}catch(n){return this._emitter.emit("notifications.count.resolved",{args:t,error:n}),{error:new A("Failed to count notifications",n)}}}))})}read(t){return m(this,null,function*(){return this.callWithSession(()=>m(this,null,function*(){return fi({emitter:this._emitter,apiService:this._inboxService,args:t})}))})}unread(t){return m(this,null,function*(){return this.callWithSession(()=>m(this,null,function*(){return ui({emitter:this._emitter,apiService:this._inboxService,args:t})}))})}seen(t){return m(this,null,function*(){return this.callWithSession(()=>m(this,null,function*(){return di({emitter:this._emitter,apiService:this._inboxService,args:t})}))})}archive(t){return m(this,null,function*(){return this.callWithSession(()=>m(this,null,function*(){return pi({emitter:this._emitter,apiService:this._inboxService,args:t})}))})}unarchive(t){return m(this,null,function*(){return this.callWithSession(()=>m(this,null,function*(){return mi({emitter:this._emitter,apiService:this._inboxService,args:t})}))})}snooze(t){return m(this,null,function*(){return this.callWithSession(()=>m(this,null,function*(){return gi({emitter:this._emitter,apiService:this._inboxService,args:t})}))})}unsnooze(t){return m(this,null,function*(){return this.callWithSession(()=>m(this,null,function*(){return yi({emitter:this._emitter,apiService:this._inboxService,args:t})}))})}completePrimary(t){return m(this,null,function*(){return this.callWithSession(()=>m(this,null,function*(){return lt({emitter:this._emitter,apiService:this._inboxService,args:t,actionType:"primary"})}))})}completeSecondary(t){return m(this,null,function*(){return this.callWithSession(()=>m(this,null,function*(){return lt({emitter:this._emitter,apiService:this._inboxService,args:t,actionType:"secondary"})}))})}revertPrimary(t){return m(this,null,function*(){return this.callWithSession(()=>m(this,null,function*(){return ht({emitter:this._emitter,apiService:this._inboxService,args:t,actionType:"primary"})}))})}revertSecondary(t){return m(this,null,function*(){return this.callWithSession(()=>m(this,null,function*(){return ht({emitter:this._emitter,apiService:this._inboxService,args:t,actionType:"secondary"})}))})}readAll(){return m(this,arguments,function*({tags:t,data:r}={}){return this.callWithSession(()=>m(this,null,function*(){return gn({emitter:this._emitter,inboxService:this._inboxService,notificationsCache:this.cache,tags:t,data:r})}))})}seenAll(){return m(this,arguments,function*(t={}){return this.callWithSession(()=>m(this,null,function*(){return"notificationIds"in t?hr({emitter:this._emitter,inboxService:this._inboxService,notificationsCache:this.cache,notificationIds:t.notificationIds}):hr({emitter:this._emitter,inboxService:this._inboxService,notificationsCache:this.cache,tags:"tags"in t?t.tags:void 0,data:"data"in t?t.data:void 0})}))})}archiveAll(){return m(this,arguments,function*({tags:t,data:r}={}){return this.callWithSession(()=>m(this,null,function*(){return yn({emitter:this._emitter,inboxService:this._inboxService,notificationsCache:this.cache,tags:t,data:r})}))})}archiveAllRead(){return m(this,arguments,function*({tags:t,data:r}={}){return this.callWithSession(()=>m(this,null,function*(){return vn({emitter:this._emitter,inboxService:this._inboxService,notificationsCache:this.cache,tags:t,data:r})}))})}clearCache({filter:t}={}){return t?this.cache.clear(t!=null?t:{}):this.cache.clearAll()}triggerHelloWorldEvent(){return m(this,null,function*(){return this._inboxService.triggerHelloWorldEvent()})}};Tt=new WeakMap;var ra=["preference.update.pending","preference.update.resolved","preferences.bulk_update.pending","preferences.bulk_update.resolved"],na=({tags:i})=>Object.entries({tags:i}).reduce((e,[t,r])=>(r==null||Array.isArray(r)&&r.length===0||(e[t]=r),e),{}),mr=({tags:i})=>JSON.stringify(na({tags:i})),pt,re,_i=class{constructor({emitterInstance:e}){S(this,pt);S(this,re);this.updatePreference=(e,t)=>{let r=c(this,re).get(e);if(!r)return!1;let n=r.findIndex(o=>{var a,h;return((a=o.workflow)==null?void 0:a.id)===((h=t.workflow)==null?void 0:h.id)||o.level===t.level&&t.level==="global"});if(n===-1)return!1;let s=[...r];return s[n]=t,c(this,re).set(e,s),!0};this.handlePreferenceEvent=({data:e})=>{if(!e)return;let t=Array.isArray(e)?e:[e],r=new Set;c(this,re).keys().forEach(n=>{t.forEach(s=>{let o=this.updatePreference(n,s),a=c(this,re).get(n);!o||!a||r.add(n)})}),r.forEach(n=>{var s;c(this,pt).emit("preferences.list.updated",{data:(s=c(this,re).get(n))!=null?s:[]})})};w(this,pt,e),ra.forEach(t=>{c(this,pt).on(t,this.handlePreferenceEvent)}),w(this,re,new ut)}has(e){return c(this,re).get(mr(e))!==void 0}set(e,t){c(this,re).set(mr(e),t)}getAll(e){if(this.has(e))return c(this,re).get(mr(e))}clearAll(){c(this,re).clear()}};pt=new WeakMap,re=new WeakMap;var Ot,It,Pt,Lt,we=class{constructor(e,{emitterInstance:t,inboxServiceInstance:r,cache:n,useCache:s}){S(this,Ot);S(this,It);S(this,Pt);S(this,Lt);w(this,Ot,t),w(this,It,r),w(this,Pt,n),w(this,Lt,s),this.level=e.level,this.enabled=e.enabled,this.channels=e.channels,this.workflow=e.workflow}update({channels:e,channelPreferences:t}){var r;return Ei({emitter:c(this,Ot),apiService:c(this,It),cache:c(this,Pt),useCache:c(this,Lt),args:{workflowId:(r=this.workflow)==null?void 0:r.id,channels:e||t,preference:this}})}};Ot=new WeakMap,It=new WeakMap,Pt=new WeakMap,Lt=new WeakMap;var Ei=s=>m(void 0,[s],function*({emitter:i,apiService:e,cache:t,useCache:r,args:n}){var h;let{channels:o}=n,a="workflowId"in n?n.workflowId:(h=n.preference.workflow)==null?void 0:h.id;try{i.emit("preference.update.pending",{args:n,data:"preference"in n?new we(k(_({},n.preference),{channels:_(_({},n.preference.channels),o)}),{emitterInstance:i,inboxServiceInstance:e,cache:t,useCache:r}):void 0});let u;a?u=yield e.updateWorkflowPreferences({workflowId:a,channels:o}):(sa({emitter:i,apiService:e,cache:t,useCache:r,args:n}),u=yield e.updateGlobalPreferences(o));let l=new we(u,{emitterInstance:i,inboxServiceInstance:e,cache:t,useCache:r});return i.emit("preference.update.resolved",{args:n,data:l}),{data:l}}catch(u){return i.emit("preference.update.resolved",{args:n,error:u}),{error:new A("Failed to update preference",u)}}}),Sn=s=>m(void 0,[s],function*({emitter:i,apiService:e,cache:t,useCache:r,args:n}){if(n.find(a=>"preference"in a&&a.preference.level==="global"))return{error:new A("Global preference is not supported in bulk update","")};try{let a=n.map(f=>"preference"in f?new we(k(_({},f.preference),{channels:_(_({},f.preference.channels),f.channels)}),{emitterInstance:i,inboxServiceInstance:e,cache:t,useCache:r}):void 0).filter(f=>f!==void 0);i.emit("preferences.bulk_update.pending",{args:n,data:a});let h=n.map(f=>{var p,d,b,g;return _({workflowId:"workflowId"in f?f.workflowId:(g=(b=(p=f.preference.workflow)==null?void 0:p.id)!=null?b:(d=f.preference.workflow)==null?void 0:d.identifier)!=null?g:""},f.channels)}),l=(yield e.bulkUpdatePreferences(h)).map(f=>new we(f,{emitterInstance:i,inboxServiceInstance:e,cache:t,useCache:r}));return i.emit("preferences.bulk_update.resolved",{args:n,data:l}),{data:l}}catch(a){return i.emit("preferences.bulk_update.resolved",{args:n,error:a}),{error:new A("Failed to bulk update preferences",a)}}}),sa=({emitter:i,apiService:e,cache:t,useCache:r,args:n})=>{let s=r?t==null?void 0:t.getAll({}):void 0;s==null||s.forEach(o=>{var a,h;if(o.level==="template"){let u=k(_({},o),{channels:Object.entries(o.channels).reduce((f,[p,d])=>{var g;let b=p;return f[b]=(g=n.channels[b])!=null?g:d,f},{})}),l="preference"in n?new we(u,{emitterInstance:i,inboxServiceInstance:e,cache:t,useCache:r}):void 0;l&&i.emit("preference.update.pending",{args:{workflowId:(h=(a=o.workflow)==null?void 0:a.id)!=null?h:"",channels:l.channels},data:l})}})};var Ae,Si=class extends Se{constructor({useCache:t,inboxServiceInstance:r,eventEmitterInstance:n}){super({eventEmitterInstance:n,inboxServiceInstance:r});S(this,Ae);this.cache=new _i({emitterInstance:this._emitter}),w(this,Ae,t)}list(){return m(this,arguments,function*(t={}){return this.callWithSession(()=>m(this,null,function*(){try{let r=c(this,Ae)?this.cache.getAll(t):void 0;return this._emitter.emit("preferences.list.pending",{args:t,data:r}),r||(r=(yield this._inboxService.fetchPreferences(t.tags)).map(s=>new we(s,{emitterInstance:this._emitter,inboxServiceInstance:this._inboxService,cache:this.cache,useCache:c(this,Ae)})),c(this,Ae)&&(this.cache.set(t,r),r=this.cache.getAll(t))),this._emitter.emit("preferences.list.resolved",{args:t,data:r}),{data:r}}catch(r){throw this._emitter.emit("preferences.list.resolved",{args:t,error:r}),r}}))})}update(t){return m(this,null,function*(){return this.callWithSession(()=>Ei({emitter:this._emitter,apiService:this._inboxService,cache:this.cache,useCache:c(this,Ae),args:t}))})}bulkUpdate(t){return m(this,null,function*(){return this.callWithSession(()=>Sn({emitter:this._emitter,apiService:this._inboxService,cache:this.cache,useCache:c(this,Ae),args:t}))})}};Ae=new WeakMap;function wn(){return typeof window!="undefined"}var Je,Ft,fe,wi=class{constructor(e,t,r){S(this,Je);S(this,Ft);S(this,fe);w(this,Je,r),w(this,Ft,t),w(this,fe,e)}get applicationIdentifier(){return c(this,fe).applicationIdentifier}get subscriberId(){var e;return(e=c(this,fe).subscriber)==null?void 0:e.subscriberId}handleApplicationIdentifier(e,t){if(typeof window=="undefined"||!window.localStorage)return null;let r="novu_keyless_application_identifier";switch(e){case"get":return window.localStorage.getItem(r);case"store":return t&&window.localStorage.setItem(r,t),null;case"delete":return window.localStorage.removeItem(r),null;default:return null}}initialize(e){return m(this,null,function*(){var t,r,n,s,o,a;if(((t=c(this,fe).subscriber)==null?void 0:t.subscriberId)!==((r=e==null?void 0:e.subscriber)==null?void 0:r.subscriberId))try{e&&w(this,fe,e);let{subscriber:h,subscriberHash:u,applicationIdentifier:l}=c(this,fe),f;wn()&&(f=Intl.DateTimeFormat().resolvedOptions().timeZone);let p=l;if(p)this.handleApplicationIdentifier("delete");else{let b=this.handleApplicationIdentifier("get");b&&(p=b)}c(this,Je).emit("session.initialize.pending",{args:c(this,fe)});let d=yield c(this,Ft).initializeSession({applicationIdentifier:p,subscriberHash:u,subscriber:k(_({},h),{subscriberId:(n=h==null?void 0:h.subscriberId)!=null?n:"",timezone:(s=h==null?void 0:h.timezone)!=null?s:f})});(o=d==null?void 0:d.applicationIdentifier)!=null&&o.startsWith("pk_keyless_")&&this.handleApplicationIdentifier("store",d.applicationIdentifier),(a=d==null?void 0:d.applicationIdentifier)!=null&&a.startsWith("pk_keyless_")||this.handleApplicationIdentifier("delete"),c(this,Je).emit("session.initialize.resolved",{args:c(this,fe),data:d})}catch(h){c(this,Je).emit("session.initialize.resolved",{args:c(this,fe),error:h})}})}};Je=new WeakMap,Ft=new WeakMap,fe=new WeakMap;function bn({subscriberId:i,subscriber:e}){return e?typeof e=="string"?{subscriberId:e}:e:i?{subscriberId:i}:{subscriberId:""}}(!globalThis.EventTarget||!globalThis.Event)&&console.error(`
|
|
14
|
+
`+s),i.push(n+"m+"+ir.exports.humanize(this.diff)+"\x1B[0m")}else i[0]=wl()+e+" "+i[0]}function wl(){return j.inspectOpts.hideDate?"":new Date().toISOString()+" "}function bl(...i){return process.stderr.write(tr.formatWithOptions(j.inspectOpts,...i)+`
|
|
15
|
+
`)}function xl(i){i?process.env.DEBUG=i:delete process.env.DEBUG}function Cl(){return process.env.DEBUG}function Nl(i){i.inspectOpts={};let e=Object.keys(j.inspectOpts);for(let t=0;t<e.length;t++)i.inspectOpts[e[t]]=j.inspectOpts[e[t]]}ir.exports=nn()(j);var{formatters:wo}=ir.exports;wo.o=function(i){return this.inspectOpts.colors=this.useColors,tr.inspect(i,this.inspectOpts).split(`
|
|
16
|
+
`).map(e=>e.trim()).join(" ")};wo.O=function(i){return this.inspectOpts.colors=this.useColors,tr.inspect(i,this.inspectOpts)}});var ti=F((ed,sn)=>{"use strict";typeof process=="undefined"||process.type==="renderer"||process.browser===!0||process.__nwjs?sn.exports=So():sn.exports=bo()});var Qo="v1",Zo=`${PACKAGE_NAME}@${PACKAGE_VERSION}`,li=class{constructor(e={}){this.DEFAULT_BACKEND_URL=typeof window!="undefined"&&window.NOVU_LOCAL_BACKEND_URL||"https://api.novu.co";let{apiVersion:t=Qo,apiUrl:r=this.DEFAULT_BACKEND_URL,userAgent:n=Zo,headers:s={}}=e||{};this.apiVersion=t,this.apiUrl=`${r}/${t}`,this.headers=_({"Novu-API-Version":NOVU_API_VERSION,"Content-Type":"application/json","User-Agent":n},s)}setAuthorizationToken(e){this.headers.Authorization=`Bearer ${e}`}setKeylessHeader(e){var r;let t=e||typeof window!="undefined"&&((r=window.localStorage)==null?void 0:r.getItem("novu_keyless_application_identifier"));!t||!t.startsWith("pk_keyless_")||(this.headers["Novu-Application-Identifier"]=t)}setHeaders(e){this.headers=_(_({},this.headers),e)}get(e,t,r=!0){return m(this,null,function*(){return this.doFetch({path:e,searchParams:t,options:{method:"GET"},unwrapEnvelope:r})})}post(e,t,r){return m(this,null,function*(){return this.doFetch({path:e,options:{method:"POST",body:t,headers:r==null?void 0:r.headers}})})}patch(e,t){return m(this,null,function*(){return this.doFetch({path:e,options:{method:"PATCH",body:t}})})}delete(e,t){return m(this,null,function*(){return this.doFetch({path:e,options:{method:"DELETE",body:t}})})}doFetch(s){return m(this,arguments,function*({path:e,searchParams:t,options:r,unwrapEnvelope:n=!0}){let o=ea(this.apiUrl,e,t?`?${t.toString()}`:""),a={method:(r==null?void 0:r.method)||"GET",headers:_(_({},this.headers),(r==null?void 0:r.headers)||{}),body:r!=null&&r.body?JSON.stringify(r.body):void 0},l=yield fetch(o,a);if(!l.ok){let f=yield l.json();throw new Error(`${this.headers["User-Agent"]} error. Status: ${l.status}, Message: ${f.message}`)}if(l.status===204)return;let u=yield l.json();return n?u.data:u})}};function ea(...i){return i.reduce((e,t)=>(t&&e.push(t.replace(new RegExp("(?<!https?:)\\/+","g"),"/").replace(/^\/+|\/+$/g,"")),e),[]).join("/").replace(/\/\?/,"?")}var lt="/inbox",Z=`${lt}/notifications`,P,hi=class{constructor(e={}){this.isSessionInitialized=!1;S(this,P);w(this,P,new li(e))}initializeSession(n){return m(this,arguments,function*({applicationIdentifier:e,subscriberHash:t,subscriber:r}){let s=yield c(this,P).post(`${lt}/session`,{applicationIdentifier:e,subscriberHash:t,subscriber:r});return c(this,P).setAuthorizationToken(s.token),c(this,P).setKeylessHeader(s.applicationIdentifier),this.isSessionInitialized=!0,s})}fetchNotifications({after:e,archived:t,limit:r=10,offset:n,read:s,tags:o,snoozed:a,seen:l,data:u,severity:f}){let h=new URLSearchParams(`limit=${r}`);if(e&&h.append("after",e),n&&h.append("offset",`${n}`),o)for(let p of o)h.append("tags[]",p);if(s!==void 0&&h.append("read",`${s}`),t!==void 0&&h.append("archived",`${t}`),a!==void 0&&h.append("snoozed",`${a}`),l!==void 0&&h.append("seen",`${l}`),u!==void 0&&h.append("data",JSON.stringify(u)),f&&Array.isArray(f))for(let p of f)h.append("severity[]",p);else f&&h.append("severity",f);return c(this,P).get(Z,h,!1)}count({filters:e}){return c(this,P).get(`${Z}/count`,new URLSearchParams({filters:JSON.stringify(e)}),!1)}read(e){return c(this,P).patch(`${Z}/${e}/read`)}unread(e){return c(this,P).patch(`${Z}/${e}/unread`)}archive(e){return c(this,P).patch(`${Z}/${e}/archive`)}unarchive(e){return c(this,P).patch(`${Z}/${e}/unarchive`)}snooze(e,t){return c(this,P).patch(`${Z}/${e}/snooze`,{snoozeUntil:t})}unsnooze(e){return c(this,P).patch(`${Z}/${e}/unsnooze`)}readAll({tags:e,data:t}){return c(this,P).post(`${Z}/read`,{tags:e,data:t?JSON.stringify(t):void 0})}archiveAll({tags:e,data:t}){return c(this,P).post(`${Z}/archive`,{tags:e,data:t?JSON.stringify(t):void 0})}archiveAllRead({tags:e,data:t}){return c(this,P).post(`${Z}/read-archive`,{tags:e,data:t?JSON.stringify(t):void 0})}markAsSeen({notificationIds:e,tags:t,data:r}){return c(this,P).post(`${Z}/seen`,{notificationIds:e,tags:t,data:r?JSON.stringify(r):void 0})}seen(e){return this.markAsSeen({notificationIds:[e]})}completeAction({actionType:e,notificationId:t}){return c(this,P).patch(`${Z}/${t}/complete`,{actionType:e})}revertAction({actionType:e,notificationId:t}){return c(this,P).patch(`${Z}/${t}/revert`,{actionType:e})}fetchPreferences({tags:e,severity:t,criticality:r}){let n=new URLSearchParams;if(e)for(let o of e)n.append("tags[]",o);if(t&&Array.isArray(t))for(let o of t)n.append("severity[]",o);else t&&n.append("severity",t);r&&n.append("criticality",r);let s=n.size?`?${n.toString()}`:"";return c(this,P).get(`${lt}/preferences${s}`)}bulkUpdatePreferences(e){return c(this,P).patch(`${lt}/preferences/bulk`,{preferences:e})}updateGlobalPreferences(e){return c(this,P).patch(`${lt}/preferences`,e)}updateWorkflowPreferences({workflowId:e,channels:t}){return c(this,P).patch(`${lt}/preferences/${e}`,t)}triggerHelloWorldEvent(){let e={name:"hello-world",to:{subscriberId:"keyless-subscriber-id"},payload:{subject:"Novu Keyless Environment",body:"You're using a keyless demo environment. For full access to Novu features and cloud integration, obtain your API key.",primaryActionText:"Obtain API Key",primaryActionUrl:"https://go.novu.co/keyless",secondaryActionText:"Explore Documentation",secondaryActionUrl:"https://go.novu.co/keyless-docs"}};return c(this,P).post("/inbox/events",e)}};P=new WeakMap;function vn(i){return{all:i=i||new Map,on:function(e,t){var r=i.get(e);r?r.push(t):i.set(e,[t])},off:function(e,t){var r=i.get(e);r&&(t?r.splice(r.indexOf(t)>>>0,1):i.set(e,[]))},emit:function(e,t){var r=i.get(e);r&&r.slice().map(function(n){n(t)}),(r=i.get("*"))&&r.slice().map(function(n){n(e,t)})}}}var Je,fi=class{constructor(){S(this,Je);w(this,Je,vn())}on(e,t){return c(this,Je).on(e,t),()=>{this.off(e,t)}}off(e,t){c(this,Je).off(e,t)}emit(e,t){c(this,Je).emit(e,t)}};Je=new WeakMap;var A=class extends Error{constructor(e,t){super(e),this.originalError=t}};var ui=r=>m(void 0,[r],function*({emitter:i,apiService:e,args:t}){let{notificationId:n,optimisticValue:s}=Ae(t,{isRead:!0,readAt:new Date().toISOString(),isArchived:!1,archivedAt:void 0},{emitter:i,apiService:e});try{i.emit("notification.read.pending",{args:t,data:s});let o=yield e.read(n),a=new U(o,i,e);return i.emit("notification.read.resolved",{args:t,data:a}),{data:a}}catch(o){return i.emit("notification.read.resolved",{args:t,error:o}),{error:new A("Failed to read notification",o)}}}),di=r=>m(void 0,[r],function*({emitter:i,apiService:e,args:t}){let{notificationId:n,optimisticValue:s}=Ae(t,{isRead:!1,readAt:null,isArchived:!1,archivedAt:void 0},{emitter:i,apiService:e});try{i.emit("notification.unread.pending",{args:t,data:s});let o=yield e.unread(n),a=new U(o,i,e);return i.emit("notification.unread.resolved",{args:t,data:a}),{data:a}}catch(o){return i.emit("notification.unread.resolved",{args:t,error:o}),{error:new A("Failed to unread notification",o)}}}),pi=r=>m(void 0,[r],function*({emitter:i,apiService:e,args:t}){let{notificationId:n,optimisticValue:s}=Ae(t,{isSeen:!0},{emitter:i,apiService:e});try{if(i.emit("notification.seen.pending",{args:t,data:s}),yield e.seen(n),!s)throw new Error("Failed to create optimistic value for notification");let o=new U(s,i,e);return i.emit("notification.seen.resolved",{args:t,data:o}),{data:o}}catch(o){return i.emit("notification.seen.resolved",{args:t,error:o}),{error:new A("Failed to mark notification as seen",o)}}}),mi=r=>m(void 0,[r],function*({emitter:i,apiService:e,args:t}){let{notificationId:n,optimisticValue:s}=Ae(t,{isArchived:!0,archivedAt:new Date().toISOString(),isRead:!0,readAt:new Date().toISOString()},{emitter:i,apiService:e});try{i.emit("notification.archive.pending",{args:t,data:s});let o=yield e.archive(n),a=new U(o,i,e);return i.emit("notification.archive.resolved",{args:t,data:a}),{data:a}}catch(o){return i.emit("notification.archive.resolved",{args:t,error:o}),{error:new A("Failed to archive notification",o)}}}),gi=r=>m(void 0,[r],function*({emitter:i,apiService:e,args:t}){let{notificationId:n,optimisticValue:s}=Ae(t,{isArchived:!1,archivedAt:null,isRead:!0,readAt:new Date().toISOString()},{emitter:i,apiService:e});try{i.emit("notification.unarchive.pending",{args:t,data:s});let o=yield e.unarchive(n),a=new U(o,i,e);return i.emit("notification.unarchive.resolved",{args:t,data:a}),{data:a}}catch(o){return i.emit("notification.unarchive.resolved",{args:t,error:o}),{error:new A("Failed to unarchive notification",o)}}}),yi=r=>m(void 0,[r],function*({emitter:i,apiService:e,args:t}){let{notificationId:n,optimisticValue:s}=Ae(t,{isSnoozed:!0,snoozedUntil:t.snoozeUntil},{emitter:i,apiService:e});try{i.emit("notification.snooze.pending",{args:t,data:s});let o=yield e.snooze(n,t.snoozeUntil),a=new U(o,i,e);return i.emit("notification.snooze.resolved",{args:t,data:a}),{data:a}}catch(o){return i.emit("notification.snooze.resolved",{args:t,error:o}),{error:new A("Failed to snooze notification",o)}}}),vi=r=>m(void 0,[r],function*({emitter:i,apiService:e,args:t}){let{notificationId:n,optimisticValue:s}=Ae(t,{isSnoozed:!1,snoozedUntil:null},{emitter:i,apiService:e});try{i.emit("notification.unsnooze.pending",{args:t,data:s});let o=yield e.unsnooze(n),a=new U(o,i,e);return i.emit("notification.unsnooze.resolved",{args:t,data:a}),{data:a}}catch(o){return i.emit("notification.unsnooze.resolved",{args:t,error:o}),{error:new A("Failed to unsnooze notification",o)}}}),ht=n=>m(void 0,[n],function*({emitter:i,apiService:e,args:t,actionType:r}){let s=r==="primary"?{primaryAction:k(_({},"notification"in t?t.notification.primaryAction:{}),{isCompleted:!0})}:{secondaryAction:k(_({},"notification"in t?t.notification.secondaryAction:{}),{isCompleted:!0})},{notificationId:o,optimisticValue:a}=Ae(t,s,{emitter:i,apiService:e});try{i.emit("notification.complete_action.pending",{args:t,data:a});let l=yield e.completeAction({actionType:r,notificationId:o}),u=new U(l,i,e);return i.emit("notification.complete_action.resolved",{args:t,data:u}),{data:u}}catch(l){return i.emit("notification.complete_action.resolved",{args:t,error:l}),{error:new A(`Failed to complete ${r} action on the notification`,l)}}}),ft=n=>m(void 0,[n],function*({emitter:i,apiService:e,args:t,actionType:r}){let s=r==="primary"?{primaryAction:k(_({},"notification"in t?t.notification.primaryAction:{}),{isCompleted:!1})}:{secondaryAction:k(_({},"notification"in t?t.notification.secondaryAction:{}),{isCompleted:!1})},{notificationId:o,optimisticValue:a}=Ae(t,s,{emitter:i,apiService:e});try{i.emit("notification.revert_action.pending",{args:t,data:a});let l=yield e.revertAction({actionType:r,notificationId:o}),u=new U(l,i,e);return i.emit("notification.revert_action.resolved",{args:t,data:u}),{data:u}}catch(l){return i.emit("notification.revert_action.resolved",{args:t,error:l}),{error:new A("Failed to fetch notifications",l)}}}),Ae=(i,e,t)=>"notification"in i?{notificationId:i.notification.id,optimisticValue:new U(_(_({},i.notification),e),t.emitter,t.apiService)}:{notificationId:i.notificationId},_n=s=>m(void 0,[s],function*({emitter:i,inboxService:e,notificationsCache:t,tags:r,data:n}){try{let a=t.getUniqueNotifications({tags:r,data:n}).map(l=>new U(k(_({},l),{isRead:!0,readAt:new Date().toISOString(),isArchived:!1,archivedAt:void 0}),i,e));return i.emit("notifications.read_all.pending",{args:{tags:r,data:n},data:a}),yield e.readAll({tags:r,data:n}),i.emit("notifications.read_all.resolved",{args:{tags:r,data:n},data:a}),{}}catch(o){return i.emit("notifications.read_all.resolved",{args:{tags:r,data:n},error:o}),{error:new A("Failed to read all notifications",o)}}}),ur=o=>m(void 0,[o],function*({emitter:i,inboxService:e,notificationsCache:t,notificationIds:r,tags:n,data:s}){try{let a=t.getUniqueNotifications({tags:n,data:s}),u=(r&&r.length>0?a.filter(f=>r.includes(f.id)):a).map(f=>new U(k(_({},f),{isSeen:!0,firstSeenAt:f.firstSeenAt||new Date().toISOString()}),i,e));return i.emit("notifications.seen_all.pending",{args:{notificationIds:r,tags:n,data:s},data:u}),yield e.markAsSeen({notificationIds:r,tags:n,data:s}),i.emit("notifications.seen_all.resolved",{args:{notificationIds:r,tags:n,data:s},data:u}),{}}catch(a){return i.emit("notifications.seen_all.resolved",{args:{notificationIds:r,tags:n,data:s},error:a}),{error:new A("Failed to mark all notifications as seen",a)}}}),En=s=>m(void 0,[s],function*({emitter:i,inboxService:e,notificationsCache:t,tags:r,data:n}){try{let a=t.getUniqueNotifications({tags:r,data:n}).map(l=>new U(k(_({},l),{isRead:!0,readAt:new Date().toISOString(),isArchived:!0,archivedAt:new Date().toISOString()}),i,e));return i.emit("notifications.archive_all.pending",{args:{tags:r,data:n},data:a}),yield e.archiveAll({tags:r,data:n}),i.emit("notifications.archive_all.resolved",{args:{tags:r,data:n},data:a}),{}}catch(o){return i.emit("notifications.archive_all.resolved",{args:{tags:r,data:n},error:o}),{error:new A("Failed to archive all notifications",o)}}}),Sn=s=>m(void 0,[s],function*({emitter:i,inboxService:e,notificationsCache:t,tags:r,data:n}){try{let a=t.getUniqueNotifications({tags:r,data:n,read:!0}).map(l=>new U(k(_({},l),{isArchived:!0,archivedAt:new Date().toISOString()}),i,e));return i.emit("notifications.archive_all_read.pending",{args:{tags:r,data:n},data:a}),yield e.archiveAllRead({tags:r,data:n}),i.emit("notifications.archive_all_read.resolved",{args:{tags:r,data:n},data:a}),{}}catch(o){return i.emit("notifications.archive_all_read.resolved",{args:{tags:r,data:n},error:o}),{error:new A("Failed to archive all read notifications",o)}}});var G,Q,U=class{constructor(e,t,r){S(this,G);S(this,Q);w(this,G,t),w(this,Q,r),this.id=e.id,this.transactionId=e.transactionId,this.subject=e.subject,this.body=e.body,this.to=e.to,this.isRead=e.isRead,this.isSeen=e.isSeen,this.isArchived=e.isArchived,this.isSnoozed=e.isSnoozed,this.snoozedUntil=e.snoozedUntil,this.deliveredAt=e.deliveredAt,this.createdAt=e.createdAt,this.readAt=e.readAt,this.firstSeenAt=e.firstSeenAt,this.archivedAt=e.archivedAt,this.avatar=e.avatar,this.primaryAction=e.primaryAction,this.secondaryAction=e.secondaryAction,this.channelType=e.channelType,this.tags=e.tags,this.redirect=e.redirect,this.data=e.data,this.workflow=e.workflow,this.severity=e.severity}read(){return ui({emitter:c(this,G),apiService:c(this,Q),args:{notification:this}})}unread(){return di({emitter:c(this,G),apiService:c(this,Q),args:{notification:this}})}seen(){return pi({emitter:c(this,G),apiService:c(this,Q),args:{notification:this}})}archive(){return mi({emitter:c(this,G),apiService:c(this,Q),args:{notification:this}})}unarchive(){return gi({emitter:c(this,G),apiService:c(this,Q),args:{notification:this}})}snooze(e){return yi({emitter:c(this,G),apiService:c(this,Q),args:{notification:this,snoozeUntil:e}})}unsnooze(){return vi({emitter:c(this,G),apiService:c(this,Q),args:{notification:this}})}completePrimary(){if(!this.primaryAction)throw new Error("Primary action is not available");return ht({emitter:c(this,G),apiService:c(this,Q),args:{notification:this},actionType:"primary"})}completeSecondary(){if(!this.primaryAction)throw new Error("Secondary action is not available");return ht({emitter:c(this,G),apiService:c(this,Q),args:{notification:this},actionType:"secondary"})}revertPrimary(){if(!this.primaryAction)throw new Error("Primary action is not available");return ft({emitter:c(this,G),apiService:c(this,Q),args:{notification:this},actionType:"primary"})}revertSecondary(){if(!this.primaryAction)throw new Error("Secondary action is not available");return ft({emitter:c(this,G),apiService:c(this,Q),args:{notification:this},actionType:"secondary"})}on(e,t){let r=c(this,G).on(e,t);return()=>{r()}}off(e,t){c(this,G).off(e,t)}};G=new WeakMap,Q=new WeakMap;var qe,ut,Se=class{constructor({inboxServiceInstance:e,eventEmitterInstance:t}){S(this,qe,[]);S(this,ut);this._emitter=t,this._inboxService=e,this._emitter.on("session.initialize.resolved",({error:r,data:n})=>{n?(this.onSessionSuccess(n),c(this,qe).forEach(a=>m(this,[a],function*({fn:s,resolve:o}){o(yield s())})),w(this,qe,[])):r&&(this.onSessionError(r),w(this,ut,r),c(this,qe).forEach(({resolve:s})=>{s({error:new A("Failed to initialize session, please contact the support",r)})}),w(this,qe,[]))})}onSessionSuccess(e){}onSessionError(e){}callWithSession(e){return m(this,null,function*(){return this._inboxService.isSessionInitialized?e():c(this,ut)?Promise.resolve({error:new A("Failed to initialize session, please contact the support",c(this,ut))}):new Promise((t,r)=>{c(this,qe).push({fn:e,resolve:t,reject:r})})})}};qe=new WeakMap,ut=new WeakMap;var dr=(i,e)=>i===e?!0:!i||!e||i.length!==e.length?!1:i.every((t,r)=>t===e[r]);var fh=["seen","unseen"],uh=["read","unread"],pr=(i,e)=>dr(i,e)||!i&&(e==null?void 0:e.length)===0||(i==null?void 0:i.length)===0&&!e,ta=(i,e)=>{let t=Array.isArray(i)?i:i?[i]:[],r=Array.isArray(e)?e:e?[e]:[];return dr(t,r)},mr=(i,e)=>{if(!i&&!e)return!0;if(!i||!e)return!1;try{return JSON.stringify(i)===JSON.stringify(e)}catch(t){return!1}},gr=(i,e)=>mr(i.data,e.data)&&pr(i.tags,e.tags)&&i.read===e.read&&i.archived===e.archived&&i.snoozed===e.snoozed&&i.seen===e.seen&&ta(i.severity,e.severity);var pe,dt=class{constructor(){S(this,pe);w(this,pe,new Map)}get(e){return c(this,pe).get(e)}getValues(){return Array.from(c(this,pe).values())}entries(){return Array.from(c(this,pe).entries())}keys(){return Array.from(c(this,pe).keys())}set(e,t){c(this,pe).set(e,t)}remove(e){c(this,pe).delete(e)}clear(){c(this,pe).clear()}};pe=new WeakMap;var wn=({tags:i,data:e,read:t,archived:r,snoozed:n,seen:s,severity:o,limit:a,offset:l,after:u})=>Object.entries({tags:i,data:e,read:t,archived:r,snoozed:n,seen:s,severity:o,limit:a,offset:l,after:u}).filter(([f,h])=>h!=null&&!(Array.isArray(h)&&h.length===0)).reduce((f,[h,p])=>(f[h]=p,f),{}),yr=({tags:i,data:e,read:t,archived:r,snoozed:n,seen:s,severity:o,limit:a,offset:l,after:u})=>JSON.stringify(wn({tags:i,data:e,read:t,archived:r,snoozed:n,seen:s,severity:o,limit:a,offset:l,after:u})),ia=({tags:i,data:e,read:t,archived:r,snoozed:n,seen:s,severity:o})=>JSON.stringify(wn({tags:i,data:e,read:t,archived:r,snoozed:n,seen:s,severity:o})),pt=i=>JSON.parse(i),ra=["notification.read.pending","notification.read.resolved","notification.unread.pending","notification.unread.resolved","notification.complete_action.pending","notification.complete_action.resolved","notification.revert_action.pending","notification.revert_action.resolved","notifications.read_all.pending","notifications.read_all.resolved"],na=["notification.archive.pending","notification.unarchive.pending","notification.snooze.pending","notification.unsnooze.pending","notifications.archive_all.pending","notifications.archive_all_read.pending"],We,$,Tt=class{constructor({emitter:e}){S(this,We);S(this,$);this.updateNotification=(e,t)=>{let r=c(this,$).get(e);if(!r)return!1;let n=r.notifications.findIndex(o=>o.id===t.id);if(n===-1)return!1;let s=[...r.notifications];return s[n]=t,c(this,$).set(e,k(_({},r),{notifications:s})),!0};this.removeNotification=(e,t)=>{let r=c(this,$).get(e);if(!r)return!1;let n=r.notifications.findIndex(o=>o.id===t.id);if(n===-1)return!1;let s=[...r.notifications];return s.splice(n,1),c(this,$).set(e,k(_({},r),{notifications:s})),!0};this.handleNotificationEvent=({remove:e}={remove:!1})=>({data:t})=>{if(!t)return;let r=Array.isArray(t)?t:[t],n=new Set;c(this,$).keys().forEach(s=>{r.forEach(o=>{let a=!1;e?a=this.removeNotification(s,o):a=this.updateNotification(s,o),a&&n.add(ia(pt(s)))})}),n.forEach(s=>{let o=this.getAggregated(pt(s));c(this,We).emit("notifications.list.updated",{data:o})})};w(this,We,e),ra.forEach(t=>{c(this,We).on(t,this.handleNotificationEvent())}),na.forEach(t=>{c(this,We).on(t,this.handleNotificationEvent({remove:!0}))}),w(this,$,new dt)}getAggregated(e){return c(this,$).keys().filter(r=>{let n=pt(r);return gr(n,e)}).map(r=>c(this,$).get(r)).reduce((r,n)=>n?{hasMore:n.hasMore,filter:n.filter,notifications:[...r.notifications,...n.notifications]}:r,{hasMore:!1,filter:{},notifications:[]})}has(e){return c(this,$).get(yr(e))!==void 0}set(e,t){c(this,$).set(yr(e),t)}update(e,t){this.set(e,t);let r=this.getAggregated(pt(yr(e)));c(this,We).emit("notifications.list.updated",{data:r})}getAll(e){if(this.has(e))return this.getAggregated({tags:e.tags,data:e.data,read:e.read,snoozed:e.snoozed,archived:e.archived,seen:e.seen,severity:e.severity})}getUniqueNotifications({tags:e,read:t,data:r}){let n=c(this,$).keys(),s=new Map;return n.forEach(o=>{let a=pt(o);if(pr(e,a.tags)&&mr(r,a.data)){let l=c(this,$).get(o);if(!l)return;l.notifications.filter(u=>typeof t=="undefined"||t===u.isRead).forEach(u=>{s.set(u.id,u)})}}),Array.from(s.values())}clear(e){c(this,$).keys().forEach(r=>{gr(pt(r),e)&&c(this,$).remove(r)})}clearAll(){c(this,$).clear()}};We=new WeakMap,$=new WeakMap;var Ot,_i=class extends Se{constructor({useCache:t,inboxServiceInstance:r,eventEmitterInstance:n}){super({eventEmitterInstance:n,inboxServiceInstance:r});S(this,Ot);this.cache=new Tt({emitter:n}),w(this,Ot,t)}get inboxService(){return this._inboxService}list(){return m(this,arguments,function*(n={}){var s=n,{limit:t=10}=s,r=hr(s,["limit"]);return this.callWithSession(()=>m(this,null,function*(){let o=_({limit:t},r);try{let a="useCache"in o?o.useCache:c(this,Ot),l=a?this.cache.getAll(o):void 0;if(this._emitter.emit("notifications.list.pending",{args:o,data:l}),!l){let u=yield this._inboxService.fetchNotifications(_({limit:t},r));l={hasMore:u.hasMore,filter:u.filter,notifications:u.data.map(f=>new U(f,this._emitter,this._inboxService))},a&&(this.cache.set(o,l),l=this.cache.getAll(o))}return this._emitter.emit("notifications.list.resolved",{args:o,data:l}),{data:l}}catch(a){return this._emitter.emit("notifications.list.resolved",{args:o,error:a}),{error:new A("Failed to fetch notifications",a)}}}))})}count(t){return m(this,null,function*(){return this.callWithSession(()=>m(this,null,function*(){let r=t&&"filters"in t?t.filters:[_({},t)];try{this._emitter.emit("notifications.count.pending",{args:t});let n=yield this._inboxService.count({filters:r}),s=t&&"filters"in t?{counts:n.data}:n.data[0];return this._emitter.emit("notifications.count.resolved",{args:t,data:s}),{data:s}}catch(n){return this._emitter.emit("notifications.count.resolved",{args:t,error:n}),{error:new A("Failed to count notifications",n)}}}))})}read(t){return m(this,null,function*(){return this.callWithSession(()=>m(this,null,function*(){return ui({emitter:this._emitter,apiService:this._inboxService,args:t})}))})}unread(t){return m(this,null,function*(){return this.callWithSession(()=>m(this,null,function*(){return di({emitter:this._emitter,apiService:this._inboxService,args:t})}))})}seen(t){return m(this,null,function*(){return this.callWithSession(()=>m(this,null,function*(){return pi({emitter:this._emitter,apiService:this._inboxService,args:t})}))})}archive(t){return m(this,null,function*(){return this.callWithSession(()=>m(this,null,function*(){return mi({emitter:this._emitter,apiService:this._inboxService,args:t})}))})}unarchive(t){return m(this,null,function*(){return this.callWithSession(()=>m(this,null,function*(){return gi({emitter:this._emitter,apiService:this._inboxService,args:t})}))})}snooze(t){return m(this,null,function*(){return this.callWithSession(()=>m(this,null,function*(){return yi({emitter:this._emitter,apiService:this._inboxService,args:t})}))})}unsnooze(t){return m(this,null,function*(){return this.callWithSession(()=>m(this,null,function*(){return vi({emitter:this._emitter,apiService:this._inboxService,args:t})}))})}completePrimary(t){return m(this,null,function*(){return this.callWithSession(()=>m(this,null,function*(){return ht({emitter:this._emitter,apiService:this._inboxService,args:t,actionType:"primary"})}))})}completeSecondary(t){return m(this,null,function*(){return this.callWithSession(()=>m(this,null,function*(){return ht({emitter:this._emitter,apiService:this._inboxService,args:t,actionType:"secondary"})}))})}revertPrimary(t){return m(this,null,function*(){return this.callWithSession(()=>m(this,null,function*(){return ft({emitter:this._emitter,apiService:this._inboxService,args:t,actionType:"primary"})}))})}revertSecondary(t){return m(this,null,function*(){return this.callWithSession(()=>m(this,null,function*(){return ft({emitter:this._emitter,apiService:this._inboxService,args:t,actionType:"secondary"})}))})}readAll(){return m(this,arguments,function*({tags:t,data:r}={}){return this.callWithSession(()=>m(this,null,function*(){return _n({emitter:this._emitter,inboxService:this._inboxService,notificationsCache:this.cache,tags:t,data:r})}))})}seenAll(){return m(this,arguments,function*(t={}){return this.callWithSession(()=>m(this,null,function*(){return"notificationIds"in t?ur({emitter:this._emitter,inboxService:this._inboxService,notificationsCache:this.cache,notificationIds:t.notificationIds}):ur({emitter:this._emitter,inboxService:this._inboxService,notificationsCache:this.cache,tags:"tags"in t?t.tags:void 0,data:"data"in t?t.data:void 0})}))})}archiveAll(){return m(this,arguments,function*({tags:t,data:r}={}){return this.callWithSession(()=>m(this,null,function*(){return En({emitter:this._emitter,inboxService:this._inboxService,notificationsCache:this.cache,tags:t,data:r})}))})}archiveAllRead(){return m(this,arguments,function*({tags:t,data:r}={}){return this.callWithSession(()=>m(this,null,function*(){return Sn({emitter:this._emitter,inboxService:this._inboxService,notificationsCache:this.cache,tags:t,data:r})}))})}clearCache({filter:t}={}){return t?this.cache.clear(t!=null?t:{}):this.cache.clearAll()}triggerHelloWorldEvent(){return m(this,null,function*(){return this._inboxService.triggerHelloWorldEvent()})}};Ot=new WeakMap;var sa=["preference.update.pending","preference.update.resolved","preferences.bulk_update.pending","preferences.bulk_update.resolved"],oa=({tags:i,severity:e})=>Object.entries({tags:i,severity:e}).reduce((t,[r,n])=>(n==null||Array.isArray(n)&&n.length===0||(t[r]=n),t),{}),vr=({tags:i,severity:e})=>JSON.stringify(oa({tags:i,severity:e})),mt,ie,Ei=class{constructor({emitterInstance:e}){S(this,mt);S(this,ie);this.updatePreference=(e,t)=>{let r=c(this,ie).get(e);if(!r)return!1;let n=r.findIndex(o=>{var a,l;return((a=o.workflow)==null?void 0:a.id)===((l=t.workflow)==null?void 0:l.id)||o.level===t.level&&t.level==="global"});if(n===-1)return!1;let s=[...r];return s[n]=t,c(this,ie).set(e,s),!0};this.handlePreferenceEvent=({data:e})=>{if(!e)return;let t=Array.isArray(e)?e:[e],r=new Set;c(this,ie).keys().forEach(n=>{t.forEach(s=>{let o=this.updatePreference(n,s),a=c(this,ie).get(n);!o||!a||r.add(n)})}),r.forEach(n=>{var s;c(this,mt).emit("preferences.list.updated",{data:(s=c(this,ie).get(n))!=null?s:[]})})};w(this,mt,e),sa.forEach(t=>{c(this,mt).on(t,this.handlePreferenceEvent)}),w(this,ie,new dt)}has(e){return c(this,ie).get(vr(e))!==void 0}set(e,t){c(this,ie).set(vr(e),t)}getAll(e){if(this.has(e))return c(this,ie).get(vr(e))}clearAll(){c(this,ie).clear()}};mt=new WeakMap,ie=new WeakMap;var It,Pt,Lt,Ft,we=class{constructor(e,{emitterInstance:t,inboxServiceInstance:r,cache:n,useCache:s}){S(this,It);S(this,Pt);S(this,Lt);S(this,Ft);w(this,It,t),w(this,Pt,r),w(this,Lt,n),w(this,Ft,s),this.level=e.level,this.enabled=e.enabled,this.channels=e.channels,this.workflow=e.workflow}update({channels:e,channelPreferences:t}){var r;return Si({emitter:c(this,It),apiService:c(this,Pt),cache:c(this,Lt),useCache:c(this,Ft),args:{workflowId:(r=this.workflow)==null?void 0:r.id,channels:e||t,preference:this}})}};It=new WeakMap,Pt=new WeakMap,Lt=new WeakMap,Ft=new WeakMap;var Si=s=>m(void 0,[s],function*({emitter:i,apiService:e,cache:t,useCache:r,args:n}){var l;let{channels:o}=n,a="workflowId"in n?n.workflowId:(l=n.preference.workflow)==null?void 0:l.id;try{i.emit("preference.update.pending",{args:n,data:"preference"in n?new we(k(_({},n.preference),{channels:_(_({},n.preference.channels),o)}),{emitterInstance:i,inboxServiceInstance:e,cache:t,useCache:r}):void 0});let u;a?u=yield e.updateWorkflowPreferences({workflowId:a,channels:o}):(aa({emitter:i,apiService:e,cache:t,useCache:r,args:n}),u=yield e.updateGlobalPreferences(o));let f=new we(u,{emitterInstance:i,inboxServiceInstance:e,cache:t,useCache:r});return i.emit("preference.update.resolved",{args:n,data:f}),{data:f}}catch(u){return i.emit("preference.update.resolved",{args:n,error:u}),{error:new A("Failed to update preference",u)}}}),bn=s=>m(void 0,[s],function*({emitter:i,apiService:e,cache:t,useCache:r,args:n}){if(n.find(a=>"preference"in a&&a.preference.level==="global"))return{error:new A("Global preference is not supported in bulk update","")};try{let a=n.map(h=>"preference"in h?new we(k(_({},h.preference),{channels:_(_({},h.preference.channels),h.channels)}),{emitterInstance:i,inboxServiceInstance:e,cache:t,useCache:r}):void 0).filter(h=>h!==void 0);i.emit("preferences.bulk_update.pending",{args:n,data:a});let l=n.map(h=>{var p,d,b,g;return _({workflowId:"workflowId"in h?h.workflowId:(g=(b=(p=h.preference.workflow)==null?void 0:p.id)!=null?b:(d=h.preference.workflow)==null?void 0:d.identifier)!=null?g:""},h.channels)}),f=(yield e.bulkUpdatePreferences(l)).map(h=>new we(h,{emitterInstance:i,inboxServiceInstance:e,cache:t,useCache:r}));return i.emit("preferences.bulk_update.resolved",{args:n,data:f}),{data:f}}catch(a){return i.emit("preferences.bulk_update.resolved",{args:n,error:a}),{error:new A("Failed to bulk update preferences",a)}}}),aa=({emitter:i,apiService:e,cache:t,useCache:r,args:n})=>{let s=r?t==null?void 0:t.getAll({}):void 0;s==null||s.forEach(o=>{var a,l;if(o.level==="template"){let u=k(_({},o),{channels:Object.entries(o.channels).reduce((h,[p,d])=>{var g;let b=p;return h[b]=(g=n.channels[b])!=null?g:d,h},{})}),f="preference"in n?new we(u,{emitterInstance:i,inboxServiceInstance:e,cache:t,useCache:r}):void 0;f&&i.emit("preference.update.pending",{args:{workflowId:(l=(a=o.workflow)==null?void 0:a.id)!=null?l:"",channels:f.channels},data:f})}})};var Re,wi=class extends Se{constructor({useCache:t,inboxServiceInstance:r,eventEmitterInstance:n}){super({eventEmitterInstance:n,inboxServiceInstance:r});S(this,Re);this.cache=new Ei({emitterInstance:this._emitter}),w(this,Re,t)}list(){return m(this,arguments,function*(t={}){return this.callWithSession(()=>m(this,null,function*(){var r;try{let n=c(this,Re)?this.cache.getAll(t):void 0;return this._emitter.emit("preferences.list.pending",{args:t,data:n}),n||(n=(yield this._inboxService.fetchPreferences({tags:t.tags,severity:t.severity,criticality:(r=t.criticality)!=null?r:"nonCritical"})).map(o=>new we(o,{emitterInstance:this._emitter,inboxServiceInstance:this._inboxService,cache:this.cache,useCache:c(this,Re)})),c(this,Re)&&(this.cache.set(t,n),n=this.cache.getAll(t))),this._emitter.emit("preferences.list.resolved",{args:t,data:n}),{data:n}}catch(n){throw this._emitter.emit("preferences.list.resolved",{args:t,error:n}),n}}))})}update(t){return m(this,null,function*(){return this.callWithSession(()=>Si({emitter:this._emitter,apiService:this._inboxService,cache:this.cache,useCache:c(this,Re),args:t}))})}bulkUpdate(t){return m(this,null,function*(){return this.callWithSession(()=>bn({emitter:this._emitter,apiService:this._inboxService,cache:this.cache,useCache:c(this,Re),args:t}))})}};Re=new WeakMap;function xn(){return typeof window!="undefined"}var Xe,Ut,he,bi=class{constructor(e,t,r){S(this,Xe);S(this,Ut);S(this,he);w(this,Xe,r),w(this,Ut,t),w(this,he,e)}get applicationIdentifier(){return c(this,he).applicationIdentifier}get subscriberId(){var e;return(e=c(this,he).subscriber)==null?void 0:e.subscriberId}handleApplicationIdentifier(e,t){if(typeof window=="undefined"||!window.localStorage)return null;let r="novu_keyless_application_identifier";switch(e){case"get":return window.localStorage.getItem(r);case"store":return t&&window.localStorage.setItem(r,t),null;case"delete":return window.localStorage.removeItem(r),null;default:return null}}initialize(e){return m(this,null,function*(){var t,r,n,s,o,a;if(((t=c(this,he).subscriber)==null?void 0:t.subscriberId)!==((r=e==null?void 0:e.subscriber)==null?void 0:r.subscriberId))try{e&&w(this,he,e);let{subscriber:l,subscriberHash:u,applicationIdentifier:f}=c(this,he),h;xn()&&(h=Intl.DateTimeFormat().resolvedOptions().timeZone);let p=f;if(p)this.handleApplicationIdentifier("delete");else{let b=this.handleApplicationIdentifier("get");b&&(p=b)}c(this,Xe).emit("session.initialize.pending",{args:c(this,he)});let d=yield c(this,Ut).initializeSession({applicationIdentifier:p,subscriberHash:u,subscriber:k(_({},l),{subscriberId:(n=l==null?void 0:l.subscriberId)!=null?n:"",timezone:(s=l==null?void 0:l.timezone)!=null?s:h})});(o=d==null?void 0:d.applicationIdentifier)!=null&&o.startsWith("pk_keyless_")&&this.handleApplicationIdentifier("store",d.applicationIdentifier),(a=d==null?void 0:d.applicationIdentifier)!=null&&a.startsWith("pk_keyless_")||this.handleApplicationIdentifier("delete"),c(this,Xe).emit("session.initialize.resolved",{args:c(this,he),data:d})}catch(l){c(this,Xe).emit("session.initialize.resolved",{args:c(this,he),error:l})}})}};Xe=new WeakMap,Ut=new WeakMap,he=new WeakMap;function Cn({subscriberId:i,subscriber:e}){return e?typeof e=="string"?{subscriberId:e}:e:i?{subscriberId:i}:{subscriberId:""}}var xi=typeof globalThis!="undefined"&&globalThis||typeof self!="undefined"&&self||typeof global!="undefined"&&global,ca=function(){try{new xi.Event("")}catch(i){return!0}return!1}(),la=function(){try{new xi.EventTarget}catch(i){return!0}return!1}();ca&&(xi.Event=function(){function i(e,t){this.bubbles=!!t&&!!t.bubbles,this.cancelable=!!t&&!!t.cancelable,this.composed=!!t&&!!t.composed,this.type=e}return i}());la&&(xi.EventTarget=function(){function i(){this.__listeners=new Map}return i.prototype=Object.create(Object.prototype),i.prototype.addEventListener=function(e,t,r){if(arguments.length<2)throw new TypeError("TypeError: Failed to execute 'addEventListener' on 'EventTarget': 2 arguments required, but only "+arguments.length+" present.");let n=this.__listeners,s=e.toString();n.has(s)||n.set(s,new Map);let o=n.get(s);o.has(t)||o.set(t,r)},i.prototype.removeEventListener=function(e,t,r){if(arguments.length<2)throw new TypeError("TypeError: Failed to execute 'addEventListener' on 'EventTarget': 2 arguments required, but only "+arguments.length+" present.");let n=this.__listeners,s=e.toString();if(n.has(s)){let o=n.get(s);o.has(t)&&o.delete(t)}},i.prototype.dispatchEvent=function(e){if(!(e instanceof Event))throw new TypeError("Failed to execute 'dispatchEvent' on 'EventTarget': parameter 1 is not of type 'Event'.");let t=e.type,n=this.__listeners.get(t);if(n)for(var s of n.entries()){let o=s[0],a=s[1];try{typeof o=="function"?o.call(this,e):o&&typeof o.handleEvent=="function"&&o.handleEvent(e)}catch(l){setTimeout(()=>{throw l})}a&&a.once&&n.delete(o)}return!0},i}());(!globalThis.EventTarget||!globalThis.Event)&&console.error(`
|
|
17
17
|
PartySocket requires a global 'EventTarget' class to be available!
|
|
18
18
|
You can polyfill this global by adding this to your code before any partysocket imports:
|
|
19
19
|
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
import 'partysocket/event-target-polyfill';
|
|
22
22
|
\`\`\`
|
|
23
23
|
Please file an issue at https://github.com/partykit/partykit if you're still having trouble.
|
|
24
|
-
`);var
|
|
24
|
+
`);var An=class extends Event{constructor(e,t){super("error",t);O(this,"message");O(this,"error");this.message=e.message,this.error=e}},Rn=class extends Event{constructor(e=1e3,t="",r){super("close",r);O(this,"code");O(this,"reason");O(this,"wasClean",!0);this.code=e,this.reason=t}},_r={Event,ErrorEvent:An,CloseEvent:Rn};function ha(i,e){if(!i)throw new Error(e)}function fa(i){return new i.constructor(i.type,i)}function ua(i){return"data"in i?new MessageEvent(i.type,i):"code"in i||"reason"in i?new Rn(i.code||1999,i.reason||"unknown reason",i):"error"in i?new An(i.error,i):new Event(i.type,i)}var Nn,da=typeof process!="undefined"&&typeof((Nn=process.versions)==null?void 0:Nn.node)!="undefined"&&typeof document=="undefined",Ci=da?ua:fa,Qe={maxReconnectionDelay:1e4,minReconnectionDelay:1e3+Math.random()*4e3,minUptime:5e3,reconnectionDelayGrowFactor:1.3,connectionTimeout:4e3,maxRetries:Number.POSITIVE_INFINITY,maxEnqueuedMessages:Number.POSITIVE_INFINITY,startClosed:!1,debug:!1},kn=!1,Ni=class Ze extends EventTarget{constructor(t,r,n={}){super();O(this,"_ws");O(this,"_retryCount",-1);O(this,"_uptimeTimeout");O(this,"_connectTimeout");O(this,"_shouldReconnect",!0);O(this,"_connectLock",!1);O(this,"_binaryType","blob");O(this,"_closeCalled",!1);O(this,"_messageQueue",[]);O(this,"_debugLogger",console.log.bind(console));O(this,"_url");O(this,"_protocols");O(this,"_options");O(this,"onclose",null);O(this,"onerror",null);O(this,"onmessage",null);O(this,"onopen",null);O(this,"_handleOpen",t=>{this._debug("open event");let{minUptime:r=Qe.minUptime}=this._options;clearTimeout(this._connectTimeout),this._uptimeTimeout=setTimeout(()=>this._acceptOpen(),r),ha(this._ws,"WebSocket is not defined"),this._ws.binaryType=this._binaryType,this._messageQueue.forEach(n=>{var s;return(s=this._ws)==null?void 0:s.send(n)}),this._messageQueue=[],this.onopen&&this.onopen(t),this.dispatchEvent(Ci(t))});O(this,"_handleMessage",t=>{this._debug("message event"),this.onmessage&&this.onmessage(t),this.dispatchEvent(Ci(t))});O(this,"_handleError",t=>{this._debug("error event",t.message),this._disconnect(void 0,t.message==="TIMEOUT"?"timeout":void 0),this.onerror&&this.onerror(t),this._debug("exec error listeners"),this.dispatchEvent(Ci(t)),this._connect()});O(this,"_handleClose",t=>{this._debug("close event"),this._clearTimeouts(),this._shouldReconnect&&this._connect(),this.onclose&&this.onclose(t),this.dispatchEvent(Ci(t))});this._url=t,this._protocols=r,this._options=n,this._options.startClosed&&(this._shouldReconnect=!1),this._options.debugLogger&&(this._debugLogger=this._options.debugLogger),this._connect()}static get CONNECTING(){return 0}static get OPEN(){return 1}static get CLOSING(){return 2}static get CLOSED(){return 3}get CONNECTING(){return Ze.CONNECTING}get OPEN(){return Ze.OPEN}get CLOSING(){return Ze.CLOSING}get CLOSED(){return Ze.CLOSED}get binaryType(){return this._ws?this._ws.binaryType:this._binaryType}set binaryType(t){this._binaryType=t,this._ws&&(this._ws.binaryType=t)}get retryCount(){return Math.max(this._retryCount,0)}get bufferedAmount(){return this._messageQueue.reduce((r,n)=>(typeof n=="string"?r+=n.length:n instanceof Blob?r+=n.size:r+=n.byteLength,r),0)+(this._ws?this._ws.bufferedAmount:0)}get extensions(){return this._ws?this._ws.extensions:""}get protocol(){return this._ws?this._ws.protocol:""}get readyState(){return this._ws?this._ws.readyState:this._options.startClosed?Ze.CLOSED:Ze.CONNECTING}get url(){return this._ws?this._ws.url:""}get shouldReconnect(){return this._shouldReconnect}close(t=1e3,r){if(this._closeCalled=!0,this._shouldReconnect=!1,this._clearTimeouts(),!this._ws){this._debug("close enqueued: no ws instance");return}if(this._ws.readyState===this.CLOSED){this._debug("close: already closed");return}this._ws.close(t,r)}reconnect(t,r){this._shouldReconnect=!0,this._closeCalled=!1,this._retryCount=-1,!this._ws||this._ws.readyState===this.CLOSED?this._connect():(this._disconnect(t,r),this._connect())}send(t){if(this._ws&&this._ws.readyState===this.OPEN)this._debug("send",t),this._ws.send(t);else{let{maxEnqueuedMessages:r=Qe.maxEnqueuedMessages}=this._options;this._messageQueue.length<r&&(this._debug("enqueue",t),this._messageQueue.push(t))}}_debug(...t){this._options.debug&&this._debugLogger("RWS>",...t)}_getNextDelay(){let{reconnectionDelayGrowFactor:t=Qe.reconnectionDelayGrowFactor,minReconnectionDelay:r=Qe.minReconnectionDelay,maxReconnectionDelay:n=Qe.maxReconnectionDelay}=this._options,s=0;return this._retryCount>0&&(s=r*yn(t,this._retryCount-1),s>n&&(s=n)),this._debug("next delay",s),s}_wait(){return new Promise(t=>{setTimeout(t,this._getNextDelay())})}_getNextProtocols(t){if(!t)return Promise.resolve(null);if(typeof t=="string"||Array.isArray(t))return Promise.resolve(t);if(typeof t=="function"){let r=t();if(!r)return Promise.resolve(null);if(typeof r=="string"||Array.isArray(r))return Promise.resolve(r);if(r.then)return r}throw Error("Invalid protocols")}_getNextUrl(t){if(typeof t=="string")return Promise.resolve(t);if(typeof t=="function"){let r=t();if(typeof r=="string")return Promise.resolve(r);if(r.then)return r}throw Error("Invalid URL")}_connect(){if(this._connectLock||!this._shouldReconnect)return;this._connectLock=!0;let{maxRetries:t=Qe.maxRetries,connectionTimeout:r=Qe.connectionTimeout}=this._options;if(this._retryCount>=t){this._debug("max retries reached",this._retryCount,">=",t);return}this._retryCount++,this._debug("connect",this._retryCount),this._removeListeners(),this._wait().then(()=>Promise.all([this._getNextUrl(this._url),this._getNextProtocols(this._protocols||null)])).then(([n,s])=>{if(this._closeCalled){this._connectLock=!1;return}!this._options.WebSocket&&typeof WebSocket=="undefined"&&!kn&&(console.error(`\u203C\uFE0F No WebSocket implementation available. You should define options.WebSocket.
|
|
25
25
|
|
|
26
26
|
For example, if you're using node.js, run \`npm install ws\`, and then in your code:
|
|
27
27
|
|
|
@@ -34,7 +34,7 @@ const partysocket = new PartySocket({
|
|
|
34
34
|
WebSocket: WS
|
|
35
35
|
});
|
|
36
36
|
|
|
37
|
-
`),Cn=!0);let o=this._options.WebSocket||WebSocket;this._debug("connect",{url:n,protocols:s}),this._ws=s?new o(n,s):new o(n),this._ws.binaryType=this._binaryType,this._connectLock=!1,this._addListeners(),this._connectTimeout=setTimeout(()=>this._handleTimeout(),r)}).catch(n=>{this._connectLock=!1,this._handleError(new gr.ErrorEvent(Error(n.message),this))})}_handleTimeout(){this._debug("timeout event"),this._handleError(new gr.ErrorEvent(Error("TIMEOUT"),this))}_disconnect(t=1e3,r){if(this._clearTimeouts(),!!this._ws){this._removeListeners();try{(this._ws.readyState===this.OPEN||this._ws.readyState===this.CONNECTING)&&this._ws.close(t,r),this._handleClose(new gr.CloseEvent(t,r,this))}catch(n){}}}_acceptOpen(){this._debug("accept open"),this._retryCount=0}_removeListeners(){this._ws&&(this._debug("removeListeners"),this._ws.removeEventListener("open",this._handleOpen),this._ws.removeEventListener("close",this._handleClose),this._ws.removeEventListener("message",this._handleMessage),this._ws.removeEventListener("error",this._handleError))}_addListeners(){this._ws&&(this._debug("addListeners"),this._ws.addEventListener("open",this._handleOpen),this._ws.addEventListener("close",this._handleClose),this._ws.addEventListener("message",this._handleMessage),this._ws.addEventListener("error",this._handleError))}_clearTimeouts(){clearTimeout(this._connectTimeout),clearTimeout(this._uptimeTimeout)}};var Ut="wss://socket.novu.co",An="notifications.notification_received",Rn="notifications.unseen_count_changed",Tn="notifications.unread_count_changed",ha=({_id:i,transactionId:e,content:t,read:r,seen:n,archived:s,snoozedUntil:o,deliveredAt:a,createdAt:h,lastReadDate:u,firstSeenDate:l,archivedAt:f,channel:p,subscriber:d,subject:b,avatar:g,cta:v,tags:R,data:T,workflow:y})=>{var te,Ge,Ke,X,Fe,Ue,De,de;let E={id:d==null?void 0:d._id,subscriberId:d==null?void 0:d.subscriberId,firstName:d==null?void 0:d.firstName,lastName:d==null?void 0:d.lastName,avatar:d==null?void 0:d.avatar,locale:d==null?void 0:d.locale,data:d==null?void 0:d.data,timezone:d==null?void 0:d.timezone,email:d==null?void 0:d.email,phone:d==null?void 0:d.phone},I=(Ge=(te=v.action)==null?void 0:te.buttons)==null?void 0:Ge.find(ie=>ie.type==="primary"),C=(X=(Ke=v.action)==null?void 0:Ke.buttons)==null?void 0:X.find(ie=>ie.type==="secondary"),M=(Ue=(Fe=v.action)==null?void 0:Fe.result)==null?void 0:Ue.type,q=(De=v.action)==null?void 0:De.status;return k(_(_({id:i,transactionId:e,subject:b,body:t,to:E,isRead:r,isSeen:n,isArchived:s,isSnoozed:!!o},a&&{deliveredAt:a}),o&&{snoozedUntil:o}),{createdAt:h,readAt:u,firstSeenAt:l,archivedAt:f,avatar:g,primaryAction:I&&{label:I.content,isCompleted:M==="primary"&&q==="done",redirect:I.url?{target:I.target,url:I.url}:void 0},secondaryAction:C&&{label:C.content,isCompleted:M==="secondary"&&q==="done",redirect:C.url?{target:C.target,url:C.url}:void 0},channelType:p,tags:R,redirect:(de=v.data)!=null&&de.url?{url:v.data.url,target:v.data.target}:void 0,data:T,workflow:y})},mt,me,ge,gt,Ni,ki,Ai,Ri,be,On,yr,vr,Ci=class extends Se{constructor({socketUrl:t,inboxServiceInstance:r,eventEmitterInstance:n}){super({eventEmitterInstance:n,inboxServiceInstance:r});S(this,be);S(this,mt);S(this,me);S(this,ge);S(this,gt);S(this,Ni,t=>{try{let r=JSON.parse(t.data);r.event==="notification_received"&&c(this,me).emit(An,{result:new U(ha(r.data.message),c(this,me),this._inboxService)})}catch(r){console.log("error",r)}});S(this,ki,t=>{try{let r=JSON.parse(t.data);r.event==="unseen_count_changed"&&c(this,me).emit(Rn,{result:r.data.unseenCount})}catch(r){}});S(this,Ai,t=>{try{let r=JSON.parse(t.data);r.event==="unread_count_changed"&&c(this,me).emit(Tn,{result:r.data.unreadCount})}catch(r){}});S(this,Ri,t=>{try{switch(JSON.parse(t.data).event){case"notification_received":c(this,Ni).call(this,t);break;case"unseen_count_changed":c(this,ki).call(this,t);break;case"unread_count_changed":c(this,Ai).call(this,t);break;default:}}catch(r){}});w(this,me,n),w(this,gt,t!=null?t:Ut)}onSessionSuccess({token:t}){w(this,mt,t)}isSocketEvent(t){return t===An||t===Rn||t===Tn}connect(){return m(this,null,function*(){return c(this,mt)?he(this,be,yr).call(this):this.callWithSession(he(this,be,yr).bind(this))})}disconnect(){return m(this,null,function*(){return c(this,ge)?he(this,be,vr).call(this):this.callWithSession(he(this,be,vr).bind(this))})}};mt=new WeakMap,me=new WeakMap,ge=new WeakMap,gt=new WeakMap,Ni=new WeakMap,ki=new WeakMap,Ai=new WeakMap,Ri=new WeakMap,be=new WeakSet,On=function(){return m(this,null,function*(){if(c(this,ge))return;let t={socketUrl:c(this,gt)};c(this,me).emit("socket.connect.pending",{args:t});let r=new URL(c(this,gt));r.searchParams.set("token",c(this,mt)),w(this,ge,new xi(r.toString())),c(this,ge).addEventListener("open",()=>{c(this,me).emit("socket.connect.resolved",{args:t})}),c(this,ge).addEventListener("error",n=>{c(this,me).emit("socket.connect.resolved",{args:t,error:n})}),c(this,ge).addEventListener("message",c(this,Ri))})},yr=function(){return m(this,null,function*(){try{return yield he(this,be,On).call(this),{}}catch(t){return{error:new A("Failed to initialize the PartySocket",t)}}})},vr=function(){return m(this,null,function*(){var t;try{return(t=c(this,ge))==null||t.close(),w(this,ge,void 0),{}}catch(r){return{error:new A("Failed to disconnect from the PartySocket",r)}}})};var ye=Object.create(null);ye.open="0";ye.close="1";ye.ping="2";ye.pong="3";ye.message="4";ye.upgrade="5";ye.noop="6";var Dt=Object.create(null);Object.keys(ye).forEach(i=>{Dt[ye[i]]=i});var Bt={type:"error",data:"parser error"};var Mt=({type:i,data:e},t,r)=>e instanceof ArrayBuffer||ArrayBuffer.isView(e)?r(t?e:"b"+In(e,!0).toString("base64")):r(ye[i]+(e||"")),In=(i,e)=>Buffer.isBuffer(i)||i instanceof Uint8Array&&!e?i:i instanceof ArrayBuffer?Buffer.from(i):Buffer.from(i.buffer,i.byteOffset,i.byteLength),_r;function Pn(i,e){if(i.data instanceof ArrayBuffer||ArrayBuffer.isView(i.data))return e(In(i.data,!1));Mt(i,!0,t=>{_r||(_r=new TextEncoder),e(_r.encode(t))})}var qt=(i,e)=>{if(typeof i!="string")return{type:"message",data:Ln(i,e)};let t=i.charAt(0);if(t==="b"){let r=Buffer.from(i.substring(1),"base64");return{type:"message",data:Ln(r,e)}}return Dt[t]?i.length>1?{type:Dt[t],data:i.substring(1)}:{type:Dt[t]}:Bt},Ln=(i,e)=>{switch(e){case"arraybuffer":return i instanceof ArrayBuffer?i:Buffer.isBuffer(i)?i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength):i.buffer;case"nodebuffer":default:return Buffer.isBuffer(i)?i:Buffer.from(i)}};var Fn="",Un=(i,e)=>{let t=i.length,r=new Array(t),n=0;i.forEach((s,o)=>{Mt(s,!1,a=>{r[o]=a,++n===t&&e(r.join(Fn))})})},Dn=(i,e)=>{let t=i.split(Fn),r=[];for(let n=0;n<t.length;n++){let s=qt(t[n],e);if(r.push(s),s.type==="error")break}return r};function Bn(){return new TransformStream({transform(i,e){Pn(i,t=>{let r=t.length,n;if(r<126)n=new Uint8Array(1),new DataView(n.buffer).setUint8(0,r);else if(r<65536){n=new Uint8Array(3);let s=new DataView(n.buffer);s.setUint8(0,126),s.setUint16(1,r)}else{n=new Uint8Array(9);let s=new DataView(n.buffer);s.setUint8(0,127),s.setBigUint64(1,BigInt(r))}i.data&&typeof i.data!="string"&&(n[0]|=128),e.enqueue(n),e.enqueue(t)})}})}var Er;function Ti(i){return i.reduce((e,t)=>e+t.length,0)}function Oi(i,e){if(i[0].length===e)return i.shift();let t=new Uint8Array(e),r=0;for(let n=0;n<e;n++)t[n]=i[0][r++],r===i[0].length&&(i.shift(),r=0);return i.length&&r<i[0].length&&(i[0]=i[0].slice(r)),t}function Mn(i,e){Er||(Er=new TextDecoder);let t=[],r=0,n=-1,s=!1;return new TransformStream({transform(o,a){for(t.push(o);;){if(r===0){if(Ti(t)<1)break;let h=Oi(t,1);s=(h[0]&128)===128,n=h[0]&127,n<126?r=3:n===126?r=1:r=2}else if(r===1){if(Ti(t)<2)break;let h=Oi(t,2);n=new DataView(h.buffer,h.byteOffset,h.length).getUint16(0),r=3}else if(r===2){if(Ti(t)<8)break;let h=Oi(t,8),u=new DataView(h.buffer,h.byteOffset,h.length),l=u.getUint32(0);if(l>Math.pow(2,21)-1){a.enqueue(Bt);break}n=l*Math.pow(2,32)+u.getUint32(4),r=3}else{if(Ti(t)<n)break;let h=Oi(t,n);a.enqueue(qt(s?h:Er.decode(h),e)),r=0}if(n===0||n>i){a.enqueue(Bt);break}}}})}var Sr=4;function L(i){if(i)return fa(i)}function fa(i){for(var e in L.prototype)i[e]=L.prototype[e];return i}L.prototype.on=L.prototype.addEventListener=function(i,e){return this._callbacks=this._callbacks||{},(this._callbacks["$"+i]=this._callbacks["$"+i]||[]).push(e),this};L.prototype.once=function(i,e){function t(){this.off(i,t),e.apply(this,arguments)}return t.fn=e,this.on(i,t),this};L.prototype.off=L.prototype.removeListener=L.prototype.removeAllListeners=L.prototype.removeEventListener=function(i,e){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var t=this._callbacks["$"+i];if(!t)return this;if(arguments.length==1)return delete this._callbacks["$"+i],this;for(var r,n=0;n<t.length;n++)if(r=t[n],r===e||r.fn===e){t.splice(n,1);break}return t.length===0&&delete this._callbacks["$"+i],this};L.prototype.emit=function(i){this._callbacks=this._callbacks||{};for(var e=new Array(arguments.length-1),t=this._callbacks["$"+i],r=1;r<arguments.length;r++)e[r-1]=arguments[r];if(t){t=t.slice(0);for(var r=0,n=t.length;r<n;++r)t[r].apply(this,e)}return this};L.prototype.emitReserved=L.prototype.emit;L.prototype.listeners=function(i){return this._callbacks=this._callbacks||{},this._callbacks["$"+i]||[]};L.prototype.hasListeners=function(i){return!!this.listeners(i).length};var ve=global;function Ii(i,...e){return e.reduce((t,r)=>(i.hasOwnProperty(r)&&(t[r]=i[r]),t),{})}var ua=ve.setTimeout,da=ve.clearTimeout;function Re(i,e){e.useNativeTimers?(i.setTimeoutFn=ua.bind(ve),i.clearTimeoutFn=da.bind(ve)):(i.setTimeoutFn=ve.setTimeout.bind(ve),i.clearTimeoutFn=ve.clearTimeout.bind(ve))}var pa=1.33;function qn(i){return typeof i=="string"?ma(i):Math.ceil((i.byteLength||i.size)*pa)}function ma(i){let e=0,t=0;for(let r=0,n=i.length;r<n;r++)e=i.charCodeAt(r),e<128?t+=1:e<2048?t+=2:e<55296||e>=57344?t+=3:(r++,t+=4);return t}var Qn=Y(et(),1);function Jn(i){let e="";for(let t in i)i.hasOwnProperty(t)&&(e.length&&(e+="&"),e+=encodeURIComponent(t)+"="+encodeURIComponent(i[t]));return e}function Xn(i){let e={},t=i.split("&");for(let r=0,n=t.length;r<n;r++){let s=t[r].split("=");e[decodeURIComponent(s[0])]=decodeURIComponent(s[1])}return e}var Ba=(0,Qn.default)("engine.io-client:transport"),Ar=class extends Error{constructor(e,t,r){super(e),this.description=t,this.context=r,this.type="TransportError"}},Te=class extends L{constructor(e){super(),this.writable=!1,Re(this,e),this.opts=e,this.query=e.query,this.socket=e.socket}onError(e,t,r){return super.emitReserved("error",new Ar(e,t,r)),this}open(){return this.readyState="opening",this.doOpen(),this}close(){return(this.readyState==="opening"||this.readyState==="open")&&(this.doClose(),this.onClose()),this}send(e){this.readyState==="open"?this.write(e):Ba("transport is not open, discarding packets")}onOpen(){this.readyState="open",this.writable=!0,super.emitReserved("open")}onData(e){let t=qt(e,this.socket.binaryType);this.onPacket(t)}onPacket(e){super.emitReserved("packet",e)}onClose(e){this.readyState="closed",super.emitReserved("close",e)}pause(e){}createUri(e,t={}){return e+"://"+this._hostname()+this._port()+this.opts.path+this._query(t)}_hostname(){let e=this.opts.hostname;return e.indexOf(":")===-1?e:"["+e+"]"}_port(){return this.opts.port&&(this.opts.secure&&+(this.opts.port!==443)||!this.opts.secure&&Number(this.opts.port)!==80)?":"+this.opts.port:""}_query(e){let t=Jn(e);return t.length?"?"+t:""}};var cs=Y(et(),1);var is="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_".split(""),Rr=64,Ma={},Zn=0,Di=0,es;function ts(i){let e="";do e=is[i%Rr]+e,i=Math.floor(i/Rr);while(i>0);return e}function Bi(){let i=ts(+new Date);return i!==es?(Zn=0,es=i):i+"."+ts(Zn++)}for(;Di<Rr;Di++)Ma[is[Di]]=Di;var Ir=Y(ss(),1),Pr=Ir.default||Ir;function os(){return new Or}function Wa(i){let e=i.split("; "),t=e[0].indexOf("=");if(t===-1)return;let r=e[0].substring(0,t).trim();if(!r.length)return;let n=e[0].substring(t+1).trim();n.charCodeAt(0)===34&&(n=n.slice(1,-1));let s={name:r,value:n};for(let o=1;o<e.length;o++){let a=e[o].split("=");if(a.length!==2)continue;let h=a[0].trim(),u=a[1].trim();switch(h){case"Expires":s.expires=new Date(u);break;case"Max-Age":let l=new Date;l.setUTCSeconds(l.getUTCSeconds()+parseInt(u,10)),s.expires=l;break;default:}}return s}var Or=class{constructor(){this.cookies=new Map}parseCookies(e){let t=e.getResponseHeader("set-cookie");t&&t.forEach(r=>{let n=Wa(r);n&&this.cookies.set(n.name,n)})}addCookies(e){let t=[];this.cookies.forEach((r,n)=>{var s;((s=r.expires)===null||s===void 0?void 0:s.getTime())<Date.now()?this.cookies.delete(n):t.push(`${n}=${r.value}`)}),t.length&&(e.setDisableHeaderCheck(!0),e.setRequestHeader("cookie",t.join("; ")))}};var ee=(0,cs.default)("engine.io-client:polling");function za(){}var $a=function(){return new Pr({xdomain:!1}).responseType!=null}(),Mi=class extends Te{constructor(e){if(super(e),this.polling=!1,typeof location!="undefined"){let r=location.protocol==="https:",n=location.port;n||(n=r?"443":"80"),this.xd=typeof location!="undefined"&&e.hostname!==location.hostname||n!==e.port}let t=e&&e.forceBase64;this.supportsBinary=$a&&!t,this.opts.withCredentials&&(this.cookieJar=os())}get name(){return"polling"}doOpen(){this.poll()}pause(e){this.readyState="pausing";let t=()=>{ee("paused"),this.readyState="paused",e()};if(this.polling||!this.writable){let r=0;this.polling&&(ee("we are currently polling - waiting to pause"),r++,this.once("pollComplete",function(){ee("pre-pause polling complete"),--r||t()})),this.writable||(ee("we are currently writing - waiting to pause"),r++,this.once("drain",function(){ee("pre-pause writing complete"),--r||t()}))}else t()}poll(){ee("polling"),this.polling=!0,this.doPoll(),this.emitReserved("poll")}onData(e){ee("polling got data %s",e);let t=r=>{if(this.readyState==="opening"&&r.type==="open"&&this.onOpen(),r.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(r)};Dn(e,this.socket.binaryType).forEach(t),this.readyState!=="closed"&&(this.polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"?this.poll():ee('ignoring poll - transport state "%s"',this.readyState))}doClose(){let e=()=>{ee("writing close packet"),this.write([{type:"close"}])};this.readyState==="open"?(ee("transport open - closing"),e()):(ee("transport not open - deferring close"),this.once("open",e))}write(e){this.writable=!1,Un(e,t=>{this.doWrite(t,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){let e=this.opts.secure?"https":"http",t=this.query||{};return this.opts.timestampRequests!==!1&&(t[this.opts.timestampParam]=Bi()),!this.supportsBinary&&!t.sid&&(t.b64=1),this.createUri(e,t)}request(e={}){return Object.assign(e,{xd:this.xd,cookieJar:this.cookieJar},this.opts),new ze(this.uri(),e)}doWrite(e,t){let r=this.request({method:"POST",data:e});r.on("success",t),r.on("error",(n,s)=>{this.onError("xhr post error",n,s)})}doPoll(){ee("xhr poll");let e=this.request();e.on("data",this.onData.bind(this)),e.on("error",(t,r)=>{this.onError("xhr poll error",t,r)}),this.pollXhr=e}},ze=class i extends L{constructor(e,t){super(),Re(this,t),this.opts=t,this.method=t.method||"GET",this.uri=e,this.data=t.data!==void 0?t.data:null,this.create()}create(){var e;let t=Ii(this.opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");t.xdomain=!!this.opts.xd;let r=this.xhr=new Pr(t);try{ee("xhr open %s: %s",this.method,this.uri),r.open(this.method,this.uri,!0);try{if(this.opts.extraHeaders){r.setDisableHeaderCheck&&r.setDisableHeaderCheck(!0);for(let n in this.opts.extraHeaders)this.opts.extraHeaders.hasOwnProperty(n)&&r.setRequestHeader(n,this.opts.extraHeaders[n])}}catch(n){}if(this.method==="POST")try{r.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch(n){}try{r.setRequestHeader("Accept","*/*")}catch(n){}(e=this.opts.cookieJar)===null||e===void 0||e.addCookies(r),"withCredentials"in r&&(r.withCredentials=this.opts.withCredentials),this.opts.requestTimeout&&(r.timeout=this.opts.requestTimeout),r.onreadystatechange=()=>{var n;r.readyState===3&&((n=this.opts.cookieJar)===null||n===void 0||n.parseCookies(r)),r.readyState===4&&(r.status===200||r.status===1223?this.onLoad():this.setTimeoutFn(()=>{this.onError(typeof r.status=="number"?r.status:0)},0))},ee("xhr data %s",this.data),r.send(this.data)}catch(n){this.setTimeoutFn(()=>{this.onError(n)},0);return}typeof document!="undefined"&&(this.index=i.requestsCount++,i.requests[this.index]=this)}onError(e){this.emitReserved("error",e,this.xhr),this.cleanup(!0)}cleanup(e){if(!(typeof this.xhr=="undefined"||this.xhr===null)){if(this.xhr.onreadystatechange=za,e)try{this.xhr.abort()}catch(t){}typeof document!="undefined"&&delete i.requests[this.index],this.xhr=null}}onLoad(){let e=this.xhr.responseText;e!==null&&(this.emitReserved("data",e),this.emitReserved("success"),this.cleanup())}abort(){this.cleanup()}};ze.requestsCount=0;ze.requests={};if(typeof document!="undefined"){if(typeof attachEvent=="function")attachEvent("onunload",as);else if(typeof addEventListener=="function"){let i="onpagehide"in ve?"pagehide":"unload";addEventListener(i,as,!1)}}function as(){for(let i in ze.requests)ze.requests.hasOwnProperty(i)&&ze.requests[i].abort()}var Zc=Y(us(),1),el=Y(zr(),1),tl=Y(Vr(),1),ho=Y(Xr(),1),il=Y(lo(),1);var fo=ho.default;var Qt=fo,Yi=!1,uo="nodebuffer",nt=process.nextTick;var mo=Y(et(),1);var rl=(0,mo.default)("engine.io-client:websocket"),po=typeof navigator!="undefined"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative",Ji=class extends Te{constructor(e){super(e),this.supportsBinary=!e.forceBase64}get name(){return"websocket"}doOpen(){if(!this.check())return;let e=this.uri(),t=this.opts.protocols,r=po?{}:Ii(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(r.headers=this.opts.extraHeaders);try{this.ws=Yi&&!po?t?new Qt(e,t):new Qt(e):new Qt(e,t,r)}catch(n){return this.emitReserved("error",n)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=e=>this.onClose({description:"websocket connection closed",context:e}),this.ws.onmessage=e=>this.onData(e.data),this.ws.onerror=e=>this.onError("websocket error",e)}write(e){this.writable=!1;for(let t=0;t<e.length;t++){let r=e[t],n=t===e.length-1;Mt(r,this.supportsBinary,s=>{let o={};Yi||(r.options&&(o.compress=r.options.compress),this.opts.perMessageDeflate&&(typeof s=="string"?Buffer.byteLength(s):s.length)<this.opts.perMessageDeflate.threshold&&(o.compress=!1));try{Yi?this.ws.send(s):this.ws.send(s,o)}catch(a){rl("websocket closed before onclose event")}n&&nt(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws!="undefined"&&(this.ws.close(),this.ws=null)}uri(){let e=this.opts.secure?"wss":"ws",t=this.query||{};return this.opts.timestampRequests&&(t[this.opts.timestampParam]=Bi()),this.supportsBinary||(t.b64=1),this.createUri(e,t)}check(){return!!Qt}};var go=Y(et(),1),Zt=(0,go.default)("engine.io-client:webtransport"),Xi=class extends Te{get name(){return"webtransport"}doOpen(){typeof WebTransport=="function"&&(this.transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name]),this.transport.closed.then(()=>{Zt("transport closed gracefully"),this.onClose()}).catch(e=>{Zt("transport closed due to %s",e),this.onError("webtransport error",e)}),this.transport.ready.then(()=>{this.transport.createBidirectionalStream().then(e=>{let t=Mn(Number.MAX_SAFE_INTEGER,this.socket.binaryType),r=e.readable.pipeThrough(t).getReader(),n=Bn();n.readable.pipeTo(e.writable),this.writer=n.writable.getWriter();let s=()=>{r.read().then(({done:a,value:h})=>{if(a){Zt("session is closed");return}Zt("received chunk: %o",h),this.onPacket(h),s()}).catch(a=>{Zt("an error occurred while reading: %s",a)})};s();let o={type:"open"};this.query.sid&&(o.data=`{"sid":"${this.query.sid}"}`),this.writer.write(o).then(()=>this.onOpen())})}))}write(e){this.writable=!1;for(let t=0;t<e.length;t++){let r=e[t],n=t===e.length-1;this.writer.write(r).then(()=>{n&&nt(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var e;(e=this.transport)===null||e===void 0||e.close()}};var Zr={websocket:Ji,webtransport:Xi,polling:Mi};var nl=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,sl=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function xt(i){let e=i,t=i.indexOf("["),r=i.indexOf("]");t!=-1&&r!=-1&&(i=i.substring(0,t)+i.substring(t,r).replace(/:/g,";")+i.substring(r,i.length));let n=nl.exec(i||""),s={},o=14;for(;o--;)s[sl[o]]=n[o]||"";return t!=-1&&r!=-1&&(s.source=e,s.host=s.host.substring(1,s.host.length-1).replace(/;/g,":"),s.authority=s.authority.replace("[","").replace("]","").replace(/;/g,":"),s.ipv6uri=!0),s.pathNames=ol(s,s.path),s.queryKey=al(s,s.query),s}function ol(i,e){let t=/\/{2,9}/g,r=e.replace(t,"/").split("/");return(e.slice(0,1)=="/"||e.length===0)&&r.splice(0,1),e.slice(-1)=="/"&&r.splice(r.length-1,1),r}function al(i,e){let t={};return e.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(r,n,s){n&&(t[n]=s)}),t}var yo=Y(et(),1);var D=(0,yo.default)("engine.io-client:socket"),st=class i extends L{constructor(e,t={}){super(),this.binaryType=uo,this.writeBuffer=[],e&&typeof e=="object"&&(t=e,e=null),e?(e=xt(e),t.hostname=e.host,t.secure=e.protocol==="https"||e.protocol==="wss",t.port=e.port,e.query&&(t.query=e.query)):t.host&&(t.hostname=xt(t.host).host),Re(this,t),this.secure=t.secure!=null?t.secure:typeof location!="undefined"&&location.protocol==="https:",t.hostname&&!t.port&&(t.port=this.secure?"443":"80"),this.hostname=t.hostname||(typeof location!="undefined"?location.hostname:"localhost"),this.port=t.port||(typeof location!="undefined"&&location.port?location.port:this.secure?"443":"80"),this.transports=t.transports||["polling","websocket","webtransport"],this.writeBuffer=[],this.prevBufferLen=0,this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},t),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=Xn(this.opts.query)),this.id=null,this.upgrades=null,this.pingInterval=null,this.pingTimeout=null,this.pingTimeoutTimer=null,typeof addEventListener=="function"&&(this.opts.closeOnBeforeunload&&(this.beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this.beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this.offlineEventListener=()=>{this.onClose("transport close",{description:"network connection lost"})},addEventListener("offline",this.offlineEventListener,!1))),this.open()}createTransport(e){D('creating transport "%s"',e);let t=Object.assign({},this.opts.query);t.EIO=Sr,t.transport=e,this.id&&(t.sid=this.id);let r=Object.assign({},this.opts,{query:t,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[e]);return D("options: %j",r),new Zr[e](r)}open(){let e;if(this.opts.rememberUpgrade&&i.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1)e="websocket";else if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}else e=this.transports[0];this.readyState="opening";try{e=this.createTransport(e)}catch(t){D("error while creating transport: %s",t),this.transports.shift(),this.open();return}e.open(),this.setTransport(e)}setTransport(e){D("setting transport %s",e.name),this.transport&&(D("clearing existing transport %s",this.transport.name),this.transport.removeAllListeners()),this.transport=e,e.on("drain",this.onDrain.bind(this)).on("packet",this.onPacket.bind(this)).on("error",this.onError.bind(this)).on("close",t=>this.onClose("transport close",t))}probe(e){D('probing transport "%s"',e);let t=this.createTransport(e),r=!1;i.priorWebsocketSuccess=!1;let n=()=>{r||(D('probe transport "%s" opened',e),t.send([{type:"ping",data:"probe"}]),t.once("packet",f=>{if(!r)if(f.type==="pong"&&f.data==="probe"){if(D('probe transport "%s" pong',e),this.upgrading=!0,this.emitReserved("upgrading",t),!t)return;i.priorWebsocketSuccess=t.name==="websocket",D('pausing current transport "%s"',this.transport.name),this.transport.pause(()=>{r||this.readyState!=="closed"&&(D("changing transport and sending upgrade packet"),l(),this.setTransport(t),t.send([{type:"upgrade"}]),this.emitReserved("upgrade",t),t=null,this.upgrading=!1,this.flush())})}else{D('probe transport "%s" failed',e);let p=new Error("probe error");p.transport=t.name,this.emitReserved("upgradeError",p)}}))};function s(){r||(r=!0,l(),t.close(),t=null)}let o=f=>{let p=new Error("probe error: "+f);p.transport=t.name,s(),D('probe transport "%s" failed because of error: %s',e,f),this.emitReserved("upgradeError",p)};function a(){o("transport closed")}function h(){o("socket closed")}function u(f){t&&f.name!==t.name&&(D('"%s" works - aborting "%s"',f.name,t.name),s())}let l=()=>{t.removeListener("open",n),t.removeListener("error",o),t.removeListener("close",a),this.off("close",h),this.off("upgrading",u)};t.once("open",n),t.once("error",o),t.once("close",a),this.once("close",h),this.once("upgrading",u),this.upgrades.indexOf("webtransport")!==-1&&e!=="webtransport"?this.setTimeoutFn(()=>{r||t.open()},200):t.open()}onOpen(){if(D("socket open"),this.readyState="open",i.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush(),this.readyState==="open"&&this.opts.upgrade){D("starting upgrade probes");let e=0,t=this.upgrades.length;for(;e<t;e++)this.probe(this.upgrades[e])}}onPacket(e){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(D('socket receive: type "%s", data "%s"',e.type,e.data),this.emitReserved("packet",e),this.emitReserved("heartbeat"),this.resetPingTimeout(),e.type){case"open":this.onHandshake(JSON.parse(e.data));break;case"ping":this.sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong");break;case"error":let t=new Error("server error");t.code=e.data,this.onError(t);break;case"message":this.emitReserved("data",e.data),this.emitReserved("message",e.data);break}else D('packet received with socket readyState "%s"',this.readyState)}onHandshake(e){this.emitReserved("handshake",e),this.id=e.sid,this.transport.query.sid=e.sid,this.upgrades=this.filterUpgrades(e.upgrades),this.pingInterval=e.pingInterval,this.pingTimeout=e.pingTimeout,this.maxPayload=e.maxPayload,this.onOpen(),this.readyState!=="closed"&&this.resetPingTimeout()}resetPingTimeout(){this.clearTimeoutFn(this.pingTimeoutTimer),this.pingTimeoutTimer=this.setTimeoutFn(()=>{this.onClose("ping timeout")},this.pingInterval+this.pingTimeout),this.opts.autoUnref&&this.pingTimeoutTimer.unref()}onDrain(){this.writeBuffer.splice(0,this.prevBufferLen),this.prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){let e=this.getWritablePackets();D("flushing %d packets in socket",e.length),this.transport.send(e),this.prevBufferLen=e.length,this.emitReserved("flush")}}getWritablePackets(){if(!(this.maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let t=1;for(let r=0;r<this.writeBuffer.length;r++){let n=this.writeBuffer[r].data;if(n&&(t+=qn(n)),r>0&&t>this.maxPayload)return D("only send %d out of %d packets",r,this.writeBuffer.length),this.writeBuffer.slice(0,r);t+=2}return D("payload size is %d (max: %d)",t,this.maxPayload),this.writeBuffer}write(e,t,r){return this.sendPacket("message",e,t,r),this}send(e,t,r){return this.sendPacket("message",e,t,r),this}sendPacket(e,t,r,n){if(typeof t=="function"&&(n=t,t=void 0),typeof r=="function"&&(n=r,r=null),this.readyState==="closing"||this.readyState==="closed")return;r=r||{},r.compress=r.compress!==!1;let s={type:e,data:t,options:r};this.emitReserved("packetCreate",s),this.writeBuffer.push(s),n&&this.once("flush",n),this.flush()}close(){let e=()=>{this.onClose("forced close"),D("socket closing - telling transport to close"),this.transport.close()},t=()=>{this.off("upgrade",t),this.off("upgradeError",t),e()},r=()=>{this.once("upgrade",t),this.once("upgradeError",t)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?r():e()}):this.upgrading?r():e()),this}onError(e){D("socket error %j",e),i.priorWebsocketSuccess=!1,this.emitReserved("error",e),this.onClose("transport error",e)}onClose(e,t){(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")&&(D('socket close with reason: "%s"',e),this.clearTimeoutFn(this.pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),typeof removeEventListener=="function"&&(removeEventListener("beforeunload",this.beforeunloadEventListener,!1),removeEventListener("offline",this.offlineEventListener,!1)),this.readyState="closed",this.id=null,this.emitReserved("close",e,t),this.writeBuffer=[],this.prevBufferLen=0)}filterUpgrades(e){let t=[],r=0,n=e.length;for(;r<n;r++)~this.transports.indexOf(e[r])&&t.push(e[r]);return t}};st.protocol=Sr;var Wu=st.protocol;var bo=Y(ei(),1),wo=(0,bo.default)("socket.io-client:url");function xo(i,e="",t){let r=i;t=t||typeof location!="undefined"&&location,i==null&&(i=t.protocol+"//"+t.host),typeof i=="string"&&(i.charAt(0)==="/"&&(i.charAt(1)==="/"?i=t.protocol+i:i=t.host+i),/^(https?|wss?):\/\//.test(i)||(wo("protocol-less url %s",i),typeof t!="undefined"?i=t.protocol+"//"+i:i="https://"+i),wo("parse %s",i),r=xt(i)),r.port||(/^(http|ws)$/.test(r.protocol)?r.port="80":/^(http|ws)s$/.test(r.protocol)&&(r.port="443")),r.path=r.path||"/";let s=r.host.indexOf(":")!==-1?"["+r.host+"]":r.host;return r.id=r.protocol+"://"+s+":"+r.port+e,r.href=r.protocol+"://"+s+(t&&t.port===r.port?"":":"+r.port),r}var ln={};Yo(ln,{Decoder:()=>an,Encoder:()=>on,PacketType:()=>x,protocol:()=>To});var bl=typeof ArrayBuffer=="function",xl=i=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(i):i.buffer instanceof ArrayBuffer,Co=Object.prototype.toString,Cl=typeof Blob=="function"||typeof Blob!="undefined"&&Co.call(Blob)==="[object BlobConstructor]",Nl=typeof File=="function"||typeof File!="undefined"&&Co.call(File)==="[object FileConstructor]";function ii(i){return bl&&(i instanceof ArrayBuffer||xl(i))||Cl&&i instanceof Blob||Nl&&i instanceof File}function ti(i,e){if(!i||typeof i!="object")return!1;if(Array.isArray(i)){for(let t=0,r=i.length;t<r;t++)if(ti(i[t]))return!0;return!1}if(ii(i))return!0;if(i.toJSON&&typeof i.toJSON=="function"&&arguments.length===1)return ti(i.toJSON(),!0);for(let t in i)if(Object.prototype.hasOwnProperty.call(i,t)&&ti(i[t]))return!0;return!1}function No(i){let e=[],t=i.data,r=i;return r.data=rn(t,e),r.attachments=e.length,{packet:r,buffers:e}}function rn(i,e){if(!i)return i;if(ii(i)){let t={_placeholder:!0,num:e.length};return e.push(i),t}else if(Array.isArray(i)){let t=new Array(i.length);for(let r=0;r<i.length;r++)t[r]=rn(i[r],e);return t}else if(typeof i=="object"&&!(i instanceof Date)){let t={};for(let r in i)Object.prototype.hasOwnProperty.call(i,r)&&(t[r]=rn(i[r],e));return t}return i}function ko(i,e){return i.data=nn(i.data,e),delete i.attachments,i}function nn(i,e){if(!i)return i;if(i&&i._placeholder===!0){if(typeof i.num=="number"&&i.num>=0&&i.num<e.length)return e[i.num];throw new Error("illegal attachments")}else if(Array.isArray(i))for(let t=0;t<i.length;t++)i[t]=nn(i[t],e);else if(typeof i=="object")for(let t in i)Object.prototype.hasOwnProperty.call(i,t)&&(i[t]=nn(i[t],e));return i}var Ro=Y(et(),1),sn=(0,Ro.default)("socket.io-parser"),kl=["connect","connect_error","disconnect","disconnecting","newListener","removeListener"],To=5,x;(function(i){i[i.CONNECT=0]="CONNECT",i[i.DISCONNECT=1]="DISCONNECT",i[i.EVENT=2]="EVENT",i[i.ACK=3]="ACK",i[i.CONNECT_ERROR=4]="CONNECT_ERROR",i[i.BINARY_EVENT=5]="BINARY_EVENT",i[i.BINARY_ACK=6]="BINARY_ACK"})(x||(x={}));var on=class{constructor(e){this.replacer=e}encode(e){return sn("encoding packet %j",e),(e.type===x.EVENT||e.type===x.ACK)&&ti(e)?this.encodeAsBinary({type:e.type===x.EVENT?x.BINARY_EVENT:x.BINARY_ACK,nsp:e.nsp,data:e.data,id:e.id}):[this.encodeAsString(e)]}encodeAsString(e){let t=""+e.type;return(e.type===x.BINARY_EVENT||e.type===x.BINARY_ACK)&&(t+=e.attachments+"-"),e.nsp&&e.nsp!=="/"&&(t+=e.nsp+","),e.id!=null&&(t+=e.id),e.data!=null&&(t+=JSON.stringify(e.data,this.replacer)),sn("encoded %j as %s",e,t),t}encodeAsBinary(e){let t=No(e),r=this.encodeAsString(t.packet),n=t.buffers;return n.unshift(r),n}};function Ao(i){return Object.prototype.toString.call(i)==="[object Object]"}var an=class i extends L{constructor(e){super(),this.reviver=e}add(e){let t;if(typeof e=="string"){if(this.reconstructor)throw new Error("got plaintext data when reconstructing a packet");t=this.decodeString(e);let r=t.type===x.BINARY_EVENT;r||t.type===x.BINARY_ACK?(t.type=r?x.EVENT:x.ACK,this.reconstructor=new cn(t),t.attachments===0&&super.emitReserved("decoded",t)):super.emitReserved("decoded",t)}else if(ii(e)||e.base64)if(this.reconstructor)t=this.reconstructor.takeBinaryData(e),t&&(this.reconstructor=null,super.emitReserved("decoded",t));else throw new Error("got binary data when not reconstructing a packet");else throw new Error("Unknown type: "+e)}decodeString(e){let t=0,r={type:Number(e.charAt(0))};if(x[r.type]===void 0)throw new Error("unknown packet type "+r.type);if(r.type===x.BINARY_EVENT||r.type===x.BINARY_ACK){let s=t+1;for(;e.charAt(++t)!=="-"&&t!=e.length;);let o=e.substring(s,t);if(o!=Number(o)||e.charAt(t)!=="-")throw new Error("Illegal attachments");r.attachments=Number(o)}if(e.charAt(t+1)==="/"){let s=t+1;for(;++t&&!(e.charAt(t)===","||t===e.length););r.nsp=e.substring(s,t)}else r.nsp="/";let n=e.charAt(t+1);if(n!==""&&Number(n)==n){let s=t+1;for(;++t;){let o=e.charAt(t);if(o==null||Number(o)!=o){--t;break}if(t===e.length)break}r.id=Number(e.substring(s,t+1))}if(e.charAt(++t)){let s=this.tryParse(e.substr(t));if(i.isPayloadValid(r.type,s))r.data=s;else throw new Error("invalid payload")}return sn("decoded %s as %j",e,r),r}tryParse(e){try{return JSON.parse(e,this.reviver)}catch(t){return!1}}static isPayloadValid(e,t){switch(e){case x.CONNECT:return Ao(t);case x.DISCONNECT:return t===void 0;case x.CONNECT_ERROR:return typeof t=="string"||Ao(t);case x.EVENT:case x.BINARY_EVENT:return Array.isArray(t)&&(typeof t[0]=="number"||typeof t[0]=="string"&&kl.indexOf(t[0])===-1);case x.ACK:case x.BINARY_ACK:return Array.isArray(t)}}destroy(){this.reconstructor&&(this.reconstructor.finishedReconstruction(),this.reconstructor=null)}},cn=class{constructor(e){this.packet=e,this.buffers=[],this.reconPack=e}takeBinaryData(e){if(this.buffers.push(e),this.buffers.length===this.reconPack.attachments){let t=ko(this.reconPack,this.buffers);return this.finishedReconstruction(),t}return null}finishedReconstruction(){this.reconPack=null,this.buffers=[]}};function ae(i,e,t){return i.on(e,t),function(){i.off(e,t)}}var Oo=Y(ei(),1),z=(0,Oo.default)("socket.io-client:socket"),Al=Object.freeze({connect:1,connect_error:1,disconnect:1,disconnecting:1,newListener:1,removeListener:1}),Ct=class extends L{constructor(e,t,r){super(),this.connected=!1,this.recovered=!1,this.receiveBuffer=[],this.sendBuffer=[],this._queue=[],this._queueSeq=0,this.ids=0,this.acks={},this.flags={},this.io=e,this.nsp=t,r&&r.auth&&(this.auth=r.auth),this._opts=Object.assign({},r),this.io._autoConnect&&this.open()}get disconnected(){return!this.connected}subEvents(){if(this.subs)return;let e=this.io;this.subs=[ae(e,"open",this.onopen.bind(this)),ae(e,"packet",this.onpacket.bind(this)),ae(e,"error",this.onerror.bind(this)),ae(e,"close",this.onclose.bind(this))]}get active(){return!!this.subs}connect(){return this.connected?this:(this.subEvents(),this.io._reconnecting||this.io.open(),this.io._readyState==="open"&&this.onopen(),this)}open(){return this.connect()}send(...e){return e.unshift("message"),this.emit.apply(this,e),this}emit(e,...t){if(Al.hasOwnProperty(e))throw new Error('"'+e.toString()+'" is a reserved event name');if(t.unshift(e),this._opts.retries&&!this.flags.fromQueue&&!this.flags.volatile)return this._addToQueue(t),this;let r={type:x.EVENT,data:t};if(r.options={},r.options.compress=this.flags.compress!==!1,typeof t[t.length-1]=="function"){let o=this.ids++;z("emitting packet with ack id %d",o);let a=t.pop();this._registerAckCallback(o,a),r.id=o}let n=this.io.engine&&this.io.engine.transport&&this.io.engine.transport.writable;return this.flags.volatile&&(!n||!this.connected)?z("discard packet as the transport is not currently writable"):this.connected?(this.notifyOutgoingListeners(r),this.packet(r)):this.sendBuffer.push(r),this.flags={},this}_registerAckCallback(e,t){var r;let n=(r=this.flags.timeout)!==null&&r!==void 0?r:this._opts.ackTimeout;if(n===void 0){this.acks[e]=t;return}let s=this.io.setTimeoutFn(()=>{delete this.acks[e];for(let o=0;o<this.sendBuffer.length;o++)this.sendBuffer[o].id===e&&(z("removing packet with ack id %d from the buffer",e),this.sendBuffer.splice(o,1));z("event with ack id %d has timed out after %d ms",e,n),t.call(this,new Error("operation has timed out"))},n);this.acks[e]=(...o)=>{this.io.clearTimeoutFn(s),t.apply(this,[null,...o])}}emitWithAck(e,...t){let r=this.flags.timeout!==void 0||this._opts.ackTimeout!==void 0;return new Promise((n,s)=>{t.push((o,a)=>r?o?s(o):n(a):n(o)),this.emit(e,...t)})}_addToQueue(e){let t;typeof e[e.length-1]=="function"&&(t=e.pop());let r={id:this._queueSeq++,tryCount:0,pending:!1,args:e,flags:Object.assign({fromQueue:!0},this.flags)};e.push((n,...s)=>r!==this._queue[0]?void 0:(n!==null?r.tryCount>this._opts.retries&&(z("packet [%d] is discarded after %d tries",r.id,r.tryCount),this._queue.shift(),t&&t(n)):(z("packet [%d] was successfully sent",r.id),this._queue.shift(),t&&t(null,...s)),r.pending=!1,this._drainQueue())),this._queue.push(r),this._drainQueue()}_drainQueue(e=!1){if(z("draining queue"),!this.connected||this._queue.length===0)return;let t=this._queue[0];if(t.pending&&!e){z("packet [%d] has already been sent and is waiting for an ack",t.id);return}t.pending=!0,t.tryCount++,z("sending packet [%d] (try n\xB0%d)",t.id,t.tryCount),this.flags=t.flags,this.emit.apply(this,t.args)}packet(e){e.nsp=this.nsp,this.io._packet(e)}onopen(){z("transport is open - connecting"),typeof this.auth=="function"?this.auth(e=>{this._sendConnectPacket(e)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(e){this.packet({type:x.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},e):e})}onerror(e){this.connected||this.emitReserved("connect_error",e)}onclose(e,t){z("close (%s)",e),this.connected=!1,delete this.id,this.emitReserved("disconnect",e,t)}onpacket(e){if(e.nsp===this.nsp)switch(e.type){case x.CONNECT:e.data&&e.data.sid?this.onconnect(e.data.sid,e.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case x.EVENT:case x.BINARY_EVENT:this.onevent(e);break;case x.ACK:case x.BINARY_ACK:this.onack(e);break;case x.DISCONNECT:this.ondisconnect();break;case x.CONNECT_ERROR:this.destroy();let r=new Error(e.data.message);r.data=e.data.data,this.emitReserved("connect_error",r);break}}onevent(e){let t=e.data||[];z("emitting event %j",t),e.id!=null&&(z("attaching ack callback to event"),t.push(this.ack(e.id))),this.connected?this.emitEvent(t):this.receiveBuffer.push(Object.freeze(t))}emitEvent(e){if(this._anyListeners&&this._anyListeners.length){let t=this._anyListeners.slice();for(let r of t)r.apply(this,e)}super.emit.apply(this,e),this._pid&&e.length&&typeof e[e.length-1]=="string"&&(this._lastOffset=e[e.length-1])}ack(e){let t=this,r=!1;return function(...n){r||(r=!0,z("sending ack %j",n),t.packet({type:x.ACK,id:e,data:n}))}}onack(e){let t=this.acks[e.id];typeof t=="function"?(z("calling ack %s with %j",e.id,e.data),t.apply(this,e.data),delete this.acks[e.id]):z("bad ack %s",e.id)}onconnect(e,t){z("socket connected with id %s",e),this.id=e,this.recovered=t&&this._pid===t,this._pid=t,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach(e=>this.emitEvent(e)),this.receiveBuffer=[],this.sendBuffer.forEach(e=>{this.notifyOutgoingListeners(e),this.packet(e)}),this.sendBuffer=[]}ondisconnect(){z("server disconnect (%s)",this.nsp),this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(e=>e()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&(z("performing disconnect (%s)",this.nsp),this.packet({type:x.DISCONNECT})),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(e){return this.flags.compress=e,this}get volatile(){return this.flags.volatile=!0,this}timeout(e){return this.flags.timeout=e,this}onAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(e),this}prependAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(e),this}offAny(e){if(!this._anyListeners)return this;if(e){let t=this._anyListeners;for(let r=0;r<t.length;r++)if(e===t[r])return t.splice(r,1),this}else this._anyListeners=[];return this}listenersAny(){return this._anyListeners||[]}onAnyOutgoing(e){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.push(e),this}prependAnyOutgoing(e){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.unshift(e),this}offAnyOutgoing(e){if(!this._anyOutgoingListeners)return this;if(e){let t=this._anyOutgoingListeners;for(let r=0;r<t.length;r++)if(e===t[r])return t.splice(r,1),this}else this._anyOutgoingListeners=[];return this}listenersAnyOutgoing(){return this._anyOutgoingListeners||[]}notifyOutgoingListeners(e){if(this._anyOutgoingListeners&&this._anyOutgoingListeners.length){let t=this._anyOutgoingListeners.slice();for(let r of t)r.apply(this,e.data)}}};function ot(i){i=i||{},this.ms=i.min||100,this.max=i.max||1e4,this.factor=i.factor||2,this.jitter=i.jitter>0&&i.jitter<=1?i.jitter:0,this.attempts=0}ot.prototype.duration=function(){var i=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var e=Math.random(),t=Math.floor(e*this.jitter*i);i=Math.floor(e*10)&1?i+t:i-t}return Math.min(i,this.max)|0};ot.prototype.reset=function(){this.attempts=0};ot.prototype.setMin=function(i){this.ms=i};ot.prototype.setMax=function(i){this.max=i};ot.prototype.setJitter=function(i){this.jitter=i};var Io=Y(ei(),1),K=(0,Io.default)("socket.io-client:manager"),Nt=class extends L{constructor(e,t){var r;super(),this.nsps={},this.subs=[],e&&typeof e=="object"&&(t=e,e=void 0),t=t||{},t.path=t.path||"/socket.io",this.opts=t,Re(this,t),this.reconnection(t.reconnection!==!1),this.reconnectionAttempts(t.reconnectionAttempts||1/0),this.reconnectionDelay(t.reconnectionDelay||1e3),this.reconnectionDelayMax(t.reconnectionDelayMax||5e3),this.randomizationFactor((r=t.randomizationFactor)!==null&&r!==void 0?r:.5),this.backoff=new ot({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(t.timeout==null?2e4:t.timeout),this._readyState="closed",this.uri=e;let n=t.parser||ln;this.encoder=new n.Encoder,this.decoder=new n.Decoder,this._autoConnect=t.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(e){return arguments.length?(this._reconnection=!!e,this):this._reconnection}reconnectionAttempts(e){return e===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=e,this)}reconnectionDelay(e){var t;return e===void 0?this._reconnectionDelay:(this._reconnectionDelay=e,(t=this.backoff)===null||t===void 0||t.setMin(e),this)}randomizationFactor(e){var t;return e===void 0?this._randomizationFactor:(this._randomizationFactor=e,(t=this.backoff)===null||t===void 0||t.setJitter(e),this)}reconnectionDelayMax(e){var t;return e===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=e,(t=this.backoff)===null||t===void 0||t.setMax(e),this)}timeout(e){return arguments.length?(this._timeout=e,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(e){if(K("readyState %s",this._readyState),~this._readyState.indexOf("open"))return this;K("opening %s",this.uri),this.engine=new st(this.uri,this.opts);let t=this.engine,r=this;this._readyState="opening",this.skipReconnect=!1;let n=ae(t,"open",function(){r.onopen(),e&&e()}),s=a=>{K("error"),this.cleanup(),this._readyState="closed",this.emitReserved("error",a),e?e(a):this.maybeReconnectOnOpen()},o=ae(t,"error",s);if(this._timeout!==!1){let a=this._timeout;K("connect attempt will timeout after %d",a);let h=this.setTimeoutFn(()=>{K("connect attempt timed out after %d",a),n(),s(new Error("timeout")),t.close()},a);this.opts.autoUnref&&h.unref(),this.subs.push(()=>{this.clearTimeoutFn(h)})}return this.subs.push(n),this.subs.push(o),this}connect(e){return this.open(e)}onopen(){K("open"),this.cleanup(),this._readyState="open",this.emitReserved("open");let e=this.engine;this.subs.push(ae(e,"ping",this.onping.bind(this)),ae(e,"data",this.ondata.bind(this)),ae(e,"error",this.onerror.bind(this)),ae(e,"close",this.onclose.bind(this)),ae(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(e){try{this.decoder.add(e)}catch(t){this.onclose("parse error",t)}}ondecoded(e){nt(()=>{this.emitReserved("packet",e)},this.setTimeoutFn)}onerror(e){K("error",e),this.emitReserved("error",e)}socket(e,t){let r=this.nsps[e];return r?this._autoConnect&&!r.active&&r.connect():(r=new Ct(this,e,t),this.nsps[e]=r),r}_destroy(e){let t=Object.keys(this.nsps);for(let r of t)if(this.nsps[r].active){K("socket %s is still active, skipping close",r);return}this._close()}_packet(e){K("writing packet %j",e);let t=this.encoder.encode(e);for(let r=0;r<t.length;r++)this.engine.write(t[r],e.options)}cleanup(){K("cleanup"),this.subs.forEach(e=>e()),this.subs.length=0,this.decoder.destroy()}_close(){K("disconnect"),this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close"),this.engine&&this.engine.close()}disconnect(){return this._close()}onclose(e,t){K("closed due to %s",e),this.cleanup(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",e,t),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;let e=this;if(this.backoff.attempts>=this._reconnectionAttempts)K("reconnect failed"),this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{let t=this.backoff.duration();K("will wait %dms before reconnect attempt",t),this._reconnecting=!0;let r=this.setTimeoutFn(()=>{e.skipReconnect||(K("attempting reconnect"),this.emitReserved("reconnect_attempt",e.backoff.attempts),!e.skipReconnect&&e.open(n=>{n?(K("reconnect attempt error"),e._reconnecting=!1,e.reconnect(),this.emitReserved("reconnect_error",n)):(K("reconnect success"),e.onreconnect())}))},t);this.opts.autoUnref&&r.unref(),this.subs.push(()=>{this.clearTimeoutFn(r)})}}onreconnect(){let e=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",e)}};var Lo=Y(ei(),1),Po=(0,Lo.default)("socket.io-client"),ri={};function ni(i,e){typeof i=="object"&&(e=i,i=void 0),e=e||{};let t=xo(i,e.path||"/socket.io"),r=t.source,n=t.id,s=t.path,o=ri[n]&&s in ri[n].nsps,a=e.forceNew||e["force new connection"]||e.multiplex===!1||o,h;return a?(Po("ignoring socket cache for %s",r),h=new Nt(r,e)):(ri[n]||(Po("new io instance for %s",r),ri[n]=new Nt(r,e)),h=ri[n]),t.query&&!e.query&&(e.query=t.queryKey),h.socket(t.path,e)}Object.assign(ni,{Manager:Nt,Socket:Ct,io:ni,connect:ni});var Rl="https://ws.novu.co",Fo="notifications.notification_received",Uo="notifications.unseen_count_changed",Do="notifications.unread_count_changed",Tl=({_id:i,transactionId:e,content:t,read:r,seen:n,archived:s,snoozedUntil:o,deliveredAt:a,createdAt:h,lastReadDate:u,firstSeenDate:l,archivedAt:f,channel:p,subscriber:d,subject:b,avatar:g,cta:v,tags:R,data:T,workflow:y})=>{var te,Ge,Ke,X,Fe,Ue,De,de;let E={id:d==null?void 0:d._id,subscriberId:d==null?void 0:d.subscriberId,firstName:d==null?void 0:d.firstName,lastName:d==null?void 0:d.lastName,avatar:d==null?void 0:d.avatar,locale:d==null?void 0:d.locale,data:d==null?void 0:d.data,timezone:d==null?void 0:d.timezone,email:d==null?void 0:d.email,phone:d==null?void 0:d.phone},I=(Ge=(te=v.action)==null?void 0:te.buttons)==null?void 0:Ge.find(ie=>ie.type==="primary"),C=(X=(Ke=v.action)==null?void 0:Ke.buttons)==null?void 0:X.find(ie=>ie.type==="secondary"),M=(Ue=(Fe=v.action)==null?void 0:Fe.result)==null?void 0:Ue.type,q=(De=v.action)==null?void 0:De.status;return k(_(_({id:i,transactionId:e,subject:b,body:t,to:E,isRead:r,isSeen:n,isArchived:s,isSnoozed:!!o},a&&{deliveredAt:a}),o&&{snoozedUntil:o}),{createdAt:h,readAt:u,firstSeenAt:l,archivedAt:f,avatar:g,primaryAction:I&&{label:I.content,isCompleted:M==="primary"&&q==="done",redirect:I.url?{target:I.target,url:I.url}:void 0},secondaryAction:C&&{label:C.content,isCompleted:M==="secondary"&&q==="done",redirect:C.url?{target:C.target,url:C.url}:void 0},channelType:p,tags:R,redirect:(de=v.data)!=null&&de.url?{url:v.data.url,target:v.data.target}:void 0,data:T,workflow:y})},kt,Ee,ce,At,ir,rr,nr,Ce,Bo,hn,fn,tr=class extends Se{constructor({socketUrl:t,inboxServiceInstance:r,eventEmitterInstance:n}){super({eventEmitterInstance:n,inboxServiceInstance:r});S(this,Ce);S(this,kt);S(this,Ee);S(this,ce);S(this,At);S(this,ir,({message:t})=>{c(this,Ee).emit(Fo,{result:new U(Tl(t),c(this,Ee),this._inboxService)})});S(this,rr,({unseenCount:t})=>{c(this,Ee).emit(Uo,{result:t})});S(this,nr,({unreadCount:t})=>{c(this,Ee).emit(Do,{result:t})});w(this,Ee,n),w(this,At,t!=null?t:Rl)}onSessionSuccess({token:t}){w(this,kt,t)}isSocketEvent(t){return t===Fo||t===Uo||t===Do}connect(){return m(this,null,function*(){return c(this,kt)?he(this,Ce,hn).call(this):this.callWithSession(he(this,Ce,hn).bind(this))})}disconnect(){return m(this,null,function*(){return c(this,ce)?he(this,Ce,fn).call(this):this.callWithSession(he(this,Ce,fn).bind(this))})}};kt=new WeakMap,Ee=new WeakMap,ce=new WeakMap,At=new WeakMap,ir=new WeakMap,rr=new WeakMap,nr=new WeakMap,Ce=new WeakSet,Bo=function(){return m(this,null,function*(){var r,n,s;if(c(this,ce))return;let t={socketUrl:c(this,At)};c(this,Ee).emit("socket.connect.pending",{args:t}),w(this,ce,ni(c(this,At),{reconnectionDelayMax:1e4,transports:["websocket"],query:{token:`${c(this,kt)}`}})),c(this,ce).on("connect",()=>{c(this,Ee).emit("socket.connect.resolved",{args:t})}),c(this,ce).on("connect_error",o=>{c(this,Ee).emit("socket.connect.resolved",{args:t,error:o})}),(r=c(this,ce))==null||r.on("notification_received",c(this,ir)),(n=c(this,ce))==null||n.on("unseen_count_changed",c(this,rr)),(s=c(this,ce))==null||s.on("unread_count_changed",c(this,nr))})},hn=function(){return m(this,null,function*(){try{return yield he(this,Ce,Bo).call(this),{}}catch(t){return{error:new A("Failed to initialize the socket",t)}}})},fn=function(){return m(this,null,function*(){var t;try{return(t=c(this,ce))==null||t.disconnect(),w(this,ce,void 0),{}}catch(r){return{error:new A("Failed to disconnect from the socket",r)}}})};var Ol=["wss://eu.socket.novu.co",Ut,"wss://socket.novu-staging.co","wss://socket-worker-local.cli-shortener.workers.dev"],Il={"https://eu.ws.novu.co":"wss://eu.socket.novu.co","https://ws.novu.co":Ut,"https://dev.ws.novu.co":"wss://socket.novu-staging.co"};function Pl(i){return i?Il[i]||i:Ut}function Ll(i){return!i||Ol.includes(i)}function Mo({socketUrl:i,inboxServiceInstance:e,eventEmitterInstance:t}){let r=Pl(i);switch(Ll(r)?"partysocket":"socket.io"){case"partysocket":return new Ci({socketUrl:r,inboxServiceInstance:e,eventEmitterInstance:t});case"socket.io":default:return new tr({socketUrl:r,inboxServiceInstance:e,eventEmitterInstance:t})}}var Ne,Le,je,sr=class{constructor(e){S(this,Ne);S(this,Le);S(this,je);var t,r;w(this,je,new li({apiUrl:e.apiUrl||e.backendUrl,userAgent:e.__userAgent})),w(this,Ne,new hi),w(this,Le,new wi({applicationIdentifier:e.applicationIdentifier||"",subscriberHash:e.subscriberHash,subscriber:bn({subscriberId:e.subscriberId,subscriber:e.subscriber})},c(this,je),c(this,Ne))),c(this,Le).initialize(),this.notifications=new vi({useCache:(t=e.useCache)!=null?t:!0,inboxServiceInstance:c(this,je),eventEmitterInstance:c(this,Ne)}),this.preferences=new Si({useCache:(r=e.useCache)!=null?r:!0,inboxServiceInstance:c(this,je),eventEmitterInstance:c(this,Ne)}),this.socket=Mo({socketUrl:e.socketUrl,eventEmitterInstance:c(this,Ne),inboxServiceInstance:c(this,je)}),this.on=(n,s)=>{this.socket.isSocketEvent(n)&&this.socket.connect();let o=c(this,Ne).on(n,s);return()=>{o()}},this.off=(n,s)=>{c(this,Ne).off(n,s)}}get applicationIdentifier(){return c(this,Le).applicationIdentifier}get subscriberId(){return c(this,Le).subscriberId}changeSubscriber(e){return m(this,null,function*(){yield c(this,Le).initialize({applicationIdentifier:c(this,Le).applicationIdentifier||"",subscriberHash:e.subscriberHash,subscriber:e.subscriber})})}};Ne=new WeakMap,Le=new WeakMap,je=new WeakMap;window.Novu=sr;})();
|
|
37
|
+
`),kn=!0);let o=this._options.WebSocket||WebSocket;this._debug("connect",{url:n,protocols:s}),this._ws=s?new o(n,s):new o(n),this._ws.binaryType=this._binaryType,this._connectLock=!1,this._addListeners(),this._connectTimeout=setTimeout(()=>this._handleTimeout(),r)}).catch(n=>{this._connectLock=!1,this._handleError(new _r.ErrorEvent(Error(n.message),this))})}_handleTimeout(){this._debug("timeout event"),this._handleError(new _r.ErrorEvent(Error("TIMEOUT"),this))}_disconnect(t=1e3,r){if(this._clearTimeouts(),!!this._ws){this._removeListeners();try{(this._ws.readyState===this.OPEN||this._ws.readyState===this.CONNECTING)&&this._ws.close(t,r),this._handleClose(new _r.CloseEvent(t,r,this))}catch(n){}}}_acceptOpen(){this._debug("accept open"),this._retryCount=0}_removeListeners(){this._ws&&(this._debug("removeListeners"),this._ws.removeEventListener("open",this._handleOpen),this._ws.removeEventListener("close",this._handleClose),this._ws.removeEventListener("message",this._handleMessage),this._ws.removeEventListener("error",this._handleError))}_addListeners(){this._ws&&(this._debug("addListeners"),this._ws.addEventListener("open",this._handleOpen),this._ws.addEventListener("close",this._handleClose),this._ws.addEventListener("message",this._handleMessage),this._ws.addEventListener("error",this._handleError))}_clearTimeouts(){clearTimeout(this._connectTimeout),clearTimeout(this._uptimeTimeout)}};var Dt="wss://socket.novu.co",Tn="notifications.notification_received",On="notifications.unseen_count_changed",In="notifications.unread_count_changed",pa=({_id:i,transactionId:e,content:t,read:r,seen:n,archived:s,snoozedUntil:o,deliveredAt:a,createdAt:l,lastReadDate:u,firstSeenDate:f,archivedAt:h,channel:p,subscriber:d,subject:b,avatar:g,cta:v,tags:R,data:T,workflow:y,severity:E})=>{var Ke,Ye,X,Ue,De,Be,ue,de;let z={id:d==null?void 0:d._id,subscriberId:d==null?void 0:d.subscriberId,firstName:d==null?void 0:d.firstName,lastName:d==null?void 0:d.lastName,avatar:d==null?void 0:d.avatar,locale:d==null?void 0:d.locale,data:d==null?void 0:d.data,timezone:d==null?void 0:d.timezone,email:d==null?void 0:d.email,phone:d==null?void 0:d.phone},C=(Ye=(Ke=v.action)==null?void 0:Ke.buttons)==null?void 0:Ye.find(ke=>ke.type==="primary"),I=(Ue=(X=v.action)==null?void 0:X.buttons)==null?void 0:Ue.find(ke=>ke.type==="secondary"),M=(Be=(De=v.action)==null?void 0:De.result)==null?void 0:Be.type,te=(ue=v.action)==null?void 0:ue.status;return k(_(_({id:i,transactionId:e,subject:b,body:t,to:z,isRead:r,isSeen:n,isArchived:s,isSnoozed:!!o},a&&{deliveredAt:a}),o&&{snoozedUntil:o}),{createdAt:l,readAt:u,firstSeenAt:f,archivedAt:h,avatar:g,primaryAction:C&&{label:C.content,isCompleted:M==="primary"&&te==="done",redirect:C.url?{target:C.target,url:C.url}:void 0},secondaryAction:I&&{label:I.content,isCompleted:M==="secondary"&&te==="done",redirect:I.url?{target:I.target,url:I.url}:void 0},channelType:p,tags:R,redirect:(de=v.data)!=null&&de.url?{url:v.data.url,target:v.data.target}:void 0,data:T,workflow:y,severity:E})},gt,me,ge,yt,Ai,Ri,Ti,Oi,be,Pn,Er,Sr,ki=class extends Se{constructor({socketUrl:t,inboxServiceInstance:r,eventEmitterInstance:n}){super({eventEmitterInstance:n,inboxServiceInstance:r});S(this,be);S(this,gt);S(this,me);S(this,ge);S(this,yt);S(this,Ai,t=>{try{let r=JSON.parse(t.data);r.event==="notification_received"&&c(this,me).emit(Tn,{result:new U(pa(r.data.message),c(this,me),this._inboxService)})}catch(r){console.log("error",r)}});S(this,Ri,t=>{try{let r=JSON.parse(t.data);r.event==="unseen_count_changed"&&c(this,me).emit(On,{result:r.data.unseenCount})}catch(r){}});S(this,Ti,t=>{try{let r=JSON.parse(t.data);r.event==="unread_count_changed"&&c(this,me).emit(In,{result:r.data.counts})}catch(r){}});S(this,Oi,t=>{try{switch(JSON.parse(t.data).event){case"notification_received":c(this,Ai).call(this,t);break;case"unseen_count_changed":c(this,Ri).call(this,t);break;case"unread_count_changed":c(this,Ti).call(this,t);break;default:}}catch(r){}});w(this,me,n),w(this,yt,t!=null?t:Dt)}onSessionSuccess({token:t}){w(this,gt,t)}isSocketEvent(t){return t===Tn||t===On||t===In}connect(){return m(this,null,function*(){return c(this,gt)?le(this,be,Er).call(this):this.callWithSession(le(this,be,Er).bind(this))})}disconnect(){return m(this,null,function*(){return c(this,ge)?le(this,be,Sr).call(this):this.callWithSession(le(this,be,Sr).bind(this))})}};gt=new WeakMap,me=new WeakMap,ge=new WeakMap,yt=new WeakMap,Ai=new WeakMap,Ri=new WeakMap,Ti=new WeakMap,Oi=new WeakMap,be=new WeakSet,Pn=function(){return m(this,null,function*(){if(c(this,ge))return;let t={socketUrl:c(this,yt)};c(this,me).emit("socket.connect.pending",{args:t});let r=new URL(c(this,yt));r.searchParams.set("token",c(this,gt)),w(this,ge,new Ni(r.toString())),c(this,ge).addEventListener("open",()=>{c(this,me).emit("socket.connect.resolved",{args:t})}),c(this,ge).addEventListener("error",n=>{c(this,me).emit("socket.connect.resolved",{args:t,error:n})}),c(this,ge).addEventListener("message",c(this,Oi))})},Er=function(){return m(this,null,function*(){try{return yield le(this,be,Pn).call(this),{}}catch(t){return{error:new A("Failed to initialize the PartySocket",t)}}})},Sr=function(){return m(this,null,function*(){var t;try{return(t=c(this,ge))==null||t.close(),w(this,ge,void 0),{}}catch(r){return{error:new A("Failed to disconnect from the PartySocket",r)}}})};var ye=Object.create(null);ye.open="0";ye.close="1";ye.ping="2";ye.pong="3";ye.message="4";ye.upgrade="5";ye.noop="6";var Bt=Object.create(null);Object.keys(ye).forEach(i=>{Bt[ye[i]]=i});var Mt={type:"error",data:"parser error"};var qt=({type:i,data:e},t,r)=>e instanceof ArrayBuffer||ArrayBuffer.isView(e)?r(t?e:"b"+Ln(e,!0).toString("base64")):r(ye[i]+(e||"")),Ln=(i,e)=>Buffer.isBuffer(i)||i instanceof Uint8Array&&!e?i:i instanceof ArrayBuffer?Buffer.from(i):Buffer.from(i.buffer,i.byteOffset,i.byteLength),wr;function Fn(i,e){if(i.data instanceof ArrayBuffer||ArrayBuffer.isView(i.data))return e(Ln(i.data,!1));qt(i,!0,t=>{wr||(wr=new TextEncoder),e(wr.encode(t))})}var Wt=(i,e)=>{if(typeof i!="string")return{type:"message",data:Un(i,e)};let t=i.charAt(0);if(t==="b"){let r=Buffer.from(i.substring(1),"base64");return{type:"message",data:Un(r,e)}}return Bt[t]?i.length>1?{type:Bt[t],data:i.substring(1)}:{type:Bt[t]}:Mt},Un=(i,e)=>{switch(e){case"arraybuffer":return i instanceof ArrayBuffer?i:Buffer.isBuffer(i)?i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength):i.buffer;case"nodebuffer":default:return Buffer.isBuffer(i)?i:Buffer.from(i)}};var Dn="",Bn=(i,e)=>{let t=i.length,r=new Array(t),n=0;i.forEach((s,o)=>{qt(s,!1,a=>{r[o]=a,++n===t&&e(r.join(Dn))})})},Mn=(i,e)=>{let t=i.split(Dn),r=[];for(let n=0;n<t.length;n++){let s=Wt(t[n],e);if(r.push(s),s.type==="error")break}return r};function qn(){return new TransformStream({transform(i,e){Fn(i,t=>{let r=t.length,n;if(r<126)n=new Uint8Array(1),new DataView(n.buffer).setUint8(0,r);else if(r<65536){n=new Uint8Array(3);let s=new DataView(n.buffer);s.setUint8(0,126),s.setUint16(1,r)}else{n=new Uint8Array(9);let s=new DataView(n.buffer);s.setUint8(0,127),s.setBigUint64(1,BigInt(r))}i.data&&typeof i.data!="string"&&(n[0]|=128),e.enqueue(n),e.enqueue(t)})}})}var br;function Ii(i){return i.reduce((e,t)=>e+t.length,0)}function Pi(i,e){if(i[0].length===e)return i.shift();let t=new Uint8Array(e),r=0;for(let n=0;n<e;n++)t[n]=i[0][r++],r===i[0].length&&(i.shift(),r=0);return i.length&&r<i[0].length&&(i[0]=i[0].slice(r)),t}function Wn(i,e){br||(br=new TextDecoder);let t=[],r=0,n=-1,s=!1;return new TransformStream({transform(o,a){for(t.push(o);;){if(r===0){if(Ii(t)<1)break;let l=Pi(t,1);s=(l[0]&128)===128,n=l[0]&127,n<126?r=3:n===126?r=1:r=2}else if(r===1){if(Ii(t)<2)break;let l=Pi(t,2);n=new DataView(l.buffer,l.byteOffset,l.length).getUint16(0),r=3}else if(r===2){if(Ii(t)<8)break;let l=Pi(t,8),u=new DataView(l.buffer,l.byteOffset,l.length),f=u.getUint32(0);if(f>Math.pow(2,21)-1){a.enqueue(Mt);break}n=f*Math.pow(2,32)+u.getUint32(4),r=3}else{if(Ii(t)<n)break;let l=Pi(t,n);a.enqueue(Wt(s?l:br.decode(l),e)),r=0}if(n===0||n>i){a.enqueue(Mt);break}}}})}var xr=4;function L(i){if(i)return ma(i)}function ma(i){for(var e in L.prototype)i[e]=L.prototype[e];return i}L.prototype.on=L.prototype.addEventListener=function(i,e){return this._callbacks=this._callbacks||{},(this._callbacks["$"+i]=this._callbacks["$"+i]||[]).push(e),this};L.prototype.once=function(i,e){function t(){this.off(i,t),e.apply(this,arguments)}return t.fn=e,this.on(i,t),this};L.prototype.off=L.prototype.removeListener=L.prototype.removeAllListeners=L.prototype.removeEventListener=function(i,e){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var t=this._callbacks["$"+i];if(!t)return this;if(arguments.length==1)return delete this._callbacks["$"+i],this;for(var r,n=0;n<t.length;n++)if(r=t[n],r===e||r.fn===e){t.splice(n,1);break}return t.length===0&&delete this._callbacks["$"+i],this};L.prototype.emit=function(i){this._callbacks=this._callbacks||{};for(var e=new Array(arguments.length-1),t=this._callbacks["$"+i],r=1;r<arguments.length;r++)e[r-1]=arguments[r];if(t){t=t.slice(0);for(var r=0,n=t.length;r<n;++r)t[r].apply(this,e)}return this};L.prototype.emitReserved=L.prototype.emit;L.prototype.listeners=function(i){return this._callbacks=this._callbacks||{},this._callbacks["$"+i]||[]};L.prototype.hasListeners=function(i){return!!this.listeners(i).length};var ve=global;function Li(i,...e){return e.reduce((t,r)=>(i.hasOwnProperty(r)&&(t[r]=i[r]),t),{})}var ga=ve.setTimeout,ya=ve.clearTimeout;function Te(i,e){e.useNativeTimers?(i.setTimeoutFn=ga.bind(ve),i.clearTimeoutFn=ya.bind(ve)):(i.setTimeoutFn=ve.setTimeout.bind(ve),i.clearTimeoutFn=ve.clearTimeout.bind(ve))}var va=1.33;function zn(i){return typeof i=="string"?_a(i):Math.ceil((i.byteLength||i.size)*va)}function _a(i){let e=0,t=0;for(let r=0,n=i.length;r<n;r++)e=i.charCodeAt(r),e<128?t+=1:e<2048?t+=2:e<55296||e>=57344?t+=3:(r++,t+=4);return t}var es=Y(tt(),1);function Qn(i){let e="";for(let t in i)i.hasOwnProperty(t)&&(e.length&&(e+="&"),e+=encodeURIComponent(t)+"="+encodeURIComponent(i[t]));return e}function Zn(i){let e={},t=i.split("&");for(let r=0,n=t.length;r<n;r++){let s=t[r].split("=");e[decodeURIComponent(s[0])]=decodeURIComponent(s[1])}return e}var za=(0,es.default)("engine.io-client:transport"),Or=class extends Error{constructor(e,t,r){super(e),this.description=t,this.context=r,this.type="TransportError"}},Oe=class extends L{constructor(e){super(),this.writable=!1,Te(this,e),this.opts=e,this.query=e.query,this.socket=e.socket}onError(e,t,r){return super.emitReserved("error",new Or(e,t,r)),this}open(){return this.readyState="opening",this.doOpen(),this}close(){return(this.readyState==="opening"||this.readyState==="open")&&(this.doClose(),this.onClose()),this}send(e){this.readyState==="open"?this.write(e):za("transport is not open, discarding packets")}onOpen(){this.readyState="open",this.writable=!0,super.emitReserved("open")}onData(e){let t=Wt(e,this.socket.binaryType);this.onPacket(t)}onPacket(e){super.emitReserved("packet",e)}onClose(e){this.readyState="closed",super.emitReserved("close",e)}pause(e){}createUri(e,t={}){return e+"://"+this._hostname()+this._port()+this.opts.path+this._query(t)}_hostname(){let e=this.opts.hostname;return e.indexOf(":")===-1?e:"["+e+"]"}_port(){return this.opts.port&&(this.opts.secure&&+(this.opts.port!==443)||!this.opts.secure&&Number(this.opts.port)!==80)?":"+this.opts.port:""}_query(e){let t=Qn(e);return t.length?"?"+t:""}};var hs=Y(tt(),1);var ns="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_".split(""),Ir=64,$a={},ts=0,Mi=0,is;function rs(i){let e="";do e=ns[i%Ir]+e,i=Math.floor(i/Ir);while(i>0);return e}function qi(){let i=rs(+new Date);return i!==is?(ts=0,is=i):i+"."+rs(ts++)}for(;Mi<Ir;Mi++)$a[ns[Mi]]=Mi;var Fr=Y(as(),1),Ur=Fr.default||Fr;function cs(){return new Lr}function Ha(i){let e=i.split("; "),t=e[0].indexOf("=");if(t===-1)return;let r=e[0].substring(0,t).trim();if(!r.length)return;let n=e[0].substring(t+1).trim();n.charCodeAt(0)===34&&(n=n.slice(1,-1));let s={name:r,value:n};for(let o=1;o<e.length;o++){let a=e[o].split("=");if(a.length!==2)continue;let l=a[0].trim(),u=a[1].trim();switch(l){case"Expires":s.expires=new Date(u);break;case"Max-Age":let f=new Date;f.setUTCSeconds(f.getUTCSeconds()+parseInt(u,10)),s.expires=f;break;default:}}return s}var Lr=class{constructor(){this.cookies=new Map}parseCookies(e){let t=e.getResponseHeader("set-cookie");t&&t.forEach(r=>{let n=Ha(r);n&&this.cookies.set(n.name,n)})}addCookies(e){let t=[];this.cookies.forEach((r,n)=>{var s;((s=r.expires)===null||s===void 0?void 0:s.getTime())<Date.now()?this.cookies.delete(n):t.push(`${n}=${r.value}`)}),t.length&&(e.setDisableHeaderCheck(!0),e.setRequestHeader("cookie",t.join("; ")))}};var ee=(0,hs.default)("engine.io-client:polling");function ja(){}var Ga=function(){return new Ur({xdomain:!1}).responseType!=null}(),Wi=class extends Oe{constructor(e){if(super(e),this.polling=!1,typeof location!="undefined"){let r=location.protocol==="https:",n=location.port;n||(n=r?"443":"80"),this.xd=typeof location!="undefined"&&e.hostname!==location.hostname||n!==e.port}let t=e&&e.forceBase64;this.supportsBinary=Ga&&!t,this.opts.withCredentials&&(this.cookieJar=cs())}get name(){return"polling"}doOpen(){this.poll()}pause(e){this.readyState="pausing";let t=()=>{ee("paused"),this.readyState="paused",e()};if(this.polling||!this.writable){let r=0;this.polling&&(ee("we are currently polling - waiting to pause"),r++,this.once("pollComplete",function(){ee("pre-pause polling complete"),--r||t()})),this.writable||(ee("we are currently writing - waiting to pause"),r++,this.once("drain",function(){ee("pre-pause writing complete"),--r||t()}))}else t()}poll(){ee("polling"),this.polling=!0,this.doPoll(),this.emitReserved("poll")}onData(e){ee("polling got data %s",e);let t=r=>{if(this.readyState==="opening"&&r.type==="open"&&this.onOpen(),r.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(r)};Mn(e,this.socket.binaryType).forEach(t),this.readyState!=="closed"&&(this.polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"?this.poll():ee('ignoring poll - transport state "%s"',this.readyState))}doClose(){let e=()=>{ee("writing close packet"),this.write([{type:"close"}])};this.readyState==="open"?(ee("transport open - closing"),e()):(ee("transport not open - deferring close"),this.once("open",e))}write(e){this.writable=!1,Bn(e,t=>{this.doWrite(t,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){let e=this.opts.secure?"https":"http",t=this.query||{};return this.opts.timestampRequests!==!1&&(t[this.opts.timestampParam]=qi()),!this.supportsBinary&&!t.sid&&(t.b64=1),this.createUri(e,t)}request(e={}){return Object.assign(e,{xd:this.xd,cookieJar:this.cookieJar},this.opts),new $e(this.uri(),e)}doWrite(e,t){let r=this.request({method:"POST",data:e});r.on("success",t),r.on("error",(n,s)=>{this.onError("xhr post error",n,s)})}doPoll(){ee("xhr poll");let e=this.request();e.on("data",this.onData.bind(this)),e.on("error",(t,r)=>{this.onError("xhr poll error",t,r)}),this.pollXhr=e}},$e=class i extends L{constructor(e,t){super(),Te(this,t),this.opts=t,this.method=t.method||"GET",this.uri=e,this.data=t.data!==void 0?t.data:null,this.create()}create(){var e;let t=Li(this.opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");t.xdomain=!!this.opts.xd;let r=this.xhr=new Ur(t);try{ee("xhr open %s: %s",this.method,this.uri),r.open(this.method,this.uri,!0);try{if(this.opts.extraHeaders){r.setDisableHeaderCheck&&r.setDisableHeaderCheck(!0);for(let n in this.opts.extraHeaders)this.opts.extraHeaders.hasOwnProperty(n)&&r.setRequestHeader(n,this.opts.extraHeaders[n])}}catch(n){}if(this.method==="POST")try{r.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch(n){}try{r.setRequestHeader("Accept","*/*")}catch(n){}(e=this.opts.cookieJar)===null||e===void 0||e.addCookies(r),"withCredentials"in r&&(r.withCredentials=this.opts.withCredentials),this.opts.requestTimeout&&(r.timeout=this.opts.requestTimeout),r.onreadystatechange=()=>{var n;r.readyState===3&&((n=this.opts.cookieJar)===null||n===void 0||n.parseCookies(r)),r.readyState===4&&(r.status===200||r.status===1223?this.onLoad():this.setTimeoutFn(()=>{this.onError(typeof r.status=="number"?r.status:0)},0))},ee("xhr data %s",this.data),r.send(this.data)}catch(n){this.setTimeoutFn(()=>{this.onError(n)},0);return}typeof document!="undefined"&&(this.index=i.requestsCount++,i.requests[this.index]=this)}onError(e){this.emitReserved("error",e,this.xhr),this.cleanup(!0)}cleanup(e){if(!(typeof this.xhr=="undefined"||this.xhr===null)){if(this.xhr.onreadystatechange=ja,e)try{this.xhr.abort()}catch(t){}typeof document!="undefined"&&delete i.requests[this.index],this.xhr=null}}onLoad(){let e=this.xhr.responseText;e!==null&&(this.emitReserved("data",e),this.emitReserved("success"),this.cleanup())}abort(){this.cleanup()}};$e.requestsCount=0;$e.requests={};if(typeof document!="undefined"){if(typeof attachEvent=="function")attachEvent("onunload",ls);else if(typeof addEventListener=="function"){let i="onpagehide"in ve?"pagehide":"unload";addEventListener(i,ls,!1)}}function ls(){for(let i in $e.requests)$e.requests.hasOwnProperty(i)&&$e.requests[i].abort()}var rl=Y(ps(),1),nl=Y(Hr(),1),sl=Y(Gr(),1),uo=Y(en(),1),ol=Y(fo(),1);var po=uo.default;var Zt=po,Xi=!1,mo="nodebuffer",st=process.nextTick;var yo=Y(tt(),1);var al=(0,yo.default)("engine.io-client:websocket"),go=typeof navigator!="undefined"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative",Qi=class extends Oe{constructor(e){super(e),this.supportsBinary=!e.forceBase64}get name(){return"websocket"}doOpen(){if(!this.check())return;let e=this.uri(),t=this.opts.protocols,r=go?{}:Li(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(r.headers=this.opts.extraHeaders);try{this.ws=Xi&&!go?t?new Zt(e,t):new Zt(e):new Zt(e,t,r)}catch(n){return this.emitReserved("error",n)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=e=>this.onClose({description:"websocket connection closed",context:e}),this.ws.onmessage=e=>this.onData(e.data),this.ws.onerror=e=>this.onError("websocket error",e)}write(e){this.writable=!1;for(let t=0;t<e.length;t++){let r=e[t],n=t===e.length-1;qt(r,this.supportsBinary,s=>{let o={};Xi||(r.options&&(o.compress=r.options.compress),this.opts.perMessageDeflate&&(typeof s=="string"?Buffer.byteLength(s):s.length)<this.opts.perMessageDeflate.threshold&&(o.compress=!1));try{Xi?this.ws.send(s):this.ws.send(s,o)}catch(a){al("websocket closed before onclose event")}n&&st(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws!="undefined"&&(this.ws.close(),this.ws=null)}uri(){let e=this.opts.secure?"wss":"ws",t=this.query||{};return this.opts.timestampRequests&&(t[this.opts.timestampParam]=qi()),this.supportsBinary||(t.b64=1),this.createUri(e,t)}check(){return!!Zt}};var vo=Y(tt(),1),ei=(0,vo.default)("engine.io-client:webtransport"),Zi=class extends Oe{get name(){return"webtransport"}doOpen(){typeof WebTransport=="function"&&(this.transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name]),this.transport.closed.then(()=>{ei("transport closed gracefully"),this.onClose()}).catch(e=>{ei("transport closed due to %s",e),this.onError("webtransport error",e)}),this.transport.ready.then(()=>{this.transport.createBidirectionalStream().then(e=>{let t=Wn(Number.MAX_SAFE_INTEGER,this.socket.binaryType),r=e.readable.pipeThrough(t).getReader(),n=qn();n.readable.pipeTo(e.writable),this.writer=n.writable.getWriter();let s=()=>{r.read().then(({done:a,value:l})=>{if(a){ei("session is closed");return}ei("received chunk: %o",l),this.onPacket(l),s()}).catch(a=>{ei("an error occurred while reading: %s",a)})};s();let o={type:"open"};this.query.sid&&(o.data=`{"sid":"${this.query.sid}"}`),this.writer.write(o).then(()=>this.onOpen())})}))}write(e){this.writable=!1;for(let t=0;t<e.length;t++){let r=e[t],n=t===e.length-1;this.writer.write(r).then(()=>{n&&st(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var e;(e=this.transport)===null||e===void 0||e.close()}};var rn={websocket:Qi,webtransport:Zi,polling:Wi};var cl=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,ll=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function Ct(i){let e=i,t=i.indexOf("["),r=i.indexOf("]");t!=-1&&r!=-1&&(i=i.substring(0,t)+i.substring(t,r).replace(/:/g,";")+i.substring(r,i.length));let n=cl.exec(i||""),s={},o=14;for(;o--;)s[ll[o]]=n[o]||"";return t!=-1&&r!=-1&&(s.source=e,s.host=s.host.substring(1,s.host.length-1).replace(/;/g,":"),s.authority=s.authority.replace("[","").replace("]","").replace(/;/g,":"),s.ipv6uri=!0),s.pathNames=hl(s,s.path),s.queryKey=fl(s,s.query),s}function hl(i,e){let t=/\/{2,9}/g,r=e.replace(t,"/").split("/");return(e.slice(0,1)=="/"||e.length===0)&&r.splice(0,1),e.slice(-1)=="/"&&r.splice(r.length-1,1),r}function fl(i,e){let t={};return e.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(r,n,s){n&&(t[n]=s)}),t}var _o=Y(tt(),1);var D=(0,_o.default)("engine.io-client:socket"),ot=class i extends L{constructor(e,t={}){super(),this.binaryType=mo,this.writeBuffer=[],e&&typeof e=="object"&&(t=e,e=null),e?(e=Ct(e),t.hostname=e.host,t.secure=e.protocol==="https"||e.protocol==="wss",t.port=e.port,e.query&&(t.query=e.query)):t.host&&(t.hostname=Ct(t.host).host),Te(this,t),this.secure=t.secure!=null?t.secure:typeof location!="undefined"&&location.protocol==="https:",t.hostname&&!t.port&&(t.port=this.secure?"443":"80"),this.hostname=t.hostname||(typeof location!="undefined"?location.hostname:"localhost"),this.port=t.port||(typeof location!="undefined"&&location.port?location.port:this.secure?"443":"80"),this.transports=t.transports||["polling","websocket","webtransport"],this.writeBuffer=[],this.prevBufferLen=0,this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},t),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=Zn(this.opts.query)),this.id=null,this.upgrades=null,this.pingInterval=null,this.pingTimeout=null,this.pingTimeoutTimer=null,typeof addEventListener=="function"&&(this.opts.closeOnBeforeunload&&(this.beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this.beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this.offlineEventListener=()=>{this.onClose("transport close",{description:"network connection lost"})},addEventListener("offline",this.offlineEventListener,!1))),this.open()}createTransport(e){D('creating transport "%s"',e);let t=Object.assign({},this.opts.query);t.EIO=xr,t.transport=e,this.id&&(t.sid=this.id);let r=Object.assign({},this.opts,{query:t,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[e]);return D("options: %j",r),new rn[e](r)}open(){let e;if(this.opts.rememberUpgrade&&i.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1)e="websocket";else if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}else e=this.transports[0];this.readyState="opening";try{e=this.createTransport(e)}catch(t){D("error while creating transport: %s",t),this.transports.shift(),this.open();return}e.open(),this.setTransport(e)}setTransport(e){D("setting transport %s",e.name),this.transport&&(D("clearing existing transport %s",this.transport.name),this.transport.removeAllListeners()),this.transport=e,e.on("drain",this.onDrain.bind(this)).on("packet",this.onPacket.bind(this)).on("error",this.onError.bind(this)).on("close",t=>this.onClose("transport close",t))}probe(e){D('probing transport "%s"',e);let t=this.createTransport(e),r=!1;i.priorWebsocketSuccess=!1;let n=()=>{r||(D('probe transport "%s" opened',e),t.send([{type:"ping",data:"probe"}]),t.once("packet",h=>{if(!r)if(h.type==="pong"&&h.data==="probe"){if(D('probe transport "%s" pong',e),this.upgrading=!0,this.emitReserved("upgrading",t),!t)return;i.priorWebsocketSuccess=t.name==="websocket",D('pausing current transport "%s"',this.transport.name),this.transport.pause(()=>{r||this.readyState!=="closed"&&(D("changing transport and sending upgrade packet"),f(),this.setTransport(t),t.send([{type:"upgrade"}]),this.emitReserved("upgrade",t),t=null,this.upgrading=!1,this.flush())})}else{D('probe transport "%s" failed',e);let p=new Error("probe error");p.transport=t.name,this.emitReserved("upgradeError",p)}}))};function s(){r||(r=!0,f(),t.close(),t=null)}let o=h=>{let p=new Error("probe error: "+h);p.transport=t.name,s(),D('probe transport "%s" failed because of error: %s',e,h),this.emitReserved("upgradeError",p)};function a(){o("transport closed")}function l(){o("socket closed")}function u(h){t&&h.name!==t.name&&(D('"%s" works - aborting "%s"',h.name,t.name),s())}let f=()=>{t.removeListener("open",n),t.removeListener("error",o),t.removeListener("close",a),this.off("close",l),this.off("upgrading",u)};t.once("open",n),t.once("error",o),t.once("close",a),this.once("close",l),this.once("upgrading",u),this.upgrades.indexOf("webtransport")!==-1&&e!=="webtransport"?this.setTimeoutFn(()=>{r||t.open()},200):t.open()}onOpen(){if(D("socket open"),this.readyState="open",i.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush(),this.readyState==="open"&&this.opts.upgrade){D("starting upgrade probes");let e=0,t=this.upgrades.length;for(;e<t;e++)this.probe(this.upgrades[e])}}onPacket(e){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(D('socket receive: type "%s", data "%s"',e.type,e.data),this.emitReserved("packet",e),this.emitReserved("heartbeat"),this.resetPingTimeout(),e.type){case"open":this.onHandshake(JSON.parse(e.data));break;case"ping":this.sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong");break;case"error":let t=new Error("server error");t.code=e.data,this.onError(t);break;case"message":this.emitReserved("data",e.data),this.emitReserved("message",e.data);break}else D('packet received with socket readyState "%s"',this.readyState)}onHandshake(e){this.emitReserved("handshake",e),this.id=e.sid,this.transport.query.sid=e.sid,this.upgrades=this.filterUpgrades(e.upgrades),this.pingInterval=e.pingInterval,this.pingTimeout=e.pingTimeout,this.maxPayload=e.maxPayload,this.onOpen(),this.readyState!=="closed"&&this.resetPingTimeout()}resetPingTimeout(){this.clearTimeoutFn(this.pingTimeoutTimer),this.pingTimeoutTimer=this.setTimeoutFn(()=>{this.onClose("ping timeout")},this.pingInterval+this.pingTimeout),this.opts.autoUnref&&this.pingTimeoutTimer.unref()}onDrain(){this.writeBuffer.splice(0,this.prevBufferLen),this.prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){let e=this.getWritablePackets();D("flushing %d packets in socket",e.length),this.transport.send(e),this.prevBufferLen=e.length,this.emitReserved("flush")}}getWritablePackets(){if(!(this.maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let t=1;for(let r=0;r<this.writeBuffer.length;r++){let n=this.writeBuffer[r].data;if(n&&(t+=zn(n)),r>0&&t>this.maxPayload)return D("only send %d out of %d packets",r,this.writeBuffer.length),this.writeBuffer.slice(0,r);t+=2}return D("payload size is %d (max: %d)",t,this.maxPayload),this.writeBuffer}write(e,t,r){return this.sendPacket("message",e,t,r),this}send(e,t,r){return this.sendPacket("message",e,t,r),this}sendPacket(e,t,r,n){if(typeof t=="function"&&(n=t,t=void 0),typeof r=="function"&&(n=r,r=null),this.readyState==="closing"||this.readyState==="closed")return;r=r||{},r.compress=r.compress!==!1;let s={type:e,data:t,options:r};this.emitReserved("packetCreate",s),this.writeBuffer.push(s),n&&this.once("flush",n),this.flush()}close(){let e=()=>{this.onClose("forced close"),D("socket closing - telling transport to close"),this.transport.close()},t=()=>{this.off("upgrade",t),this.off("upgradeError",t),e()},r=()=>{this.once("upgrade",t),this.once("upgradeError",t)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?r():e()}):this.upgrading?r():e()),this}onError(e){D("socket error %j",e),i.priorWebsocketSuccess=!1,this.emitReserved("error",e),this.onClose("transport error",e)}onClose(e,t){(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")&&(D('socket close with reason: "%s"',e),this.clearTimeoutFn(this.pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),typeof removeEventListener=="function"&&(removeEventListener("beforeunload",this.beforeunloadEventListener,!1),removeEventListener("offline",this.offlineEventListener,!1)),this.readyState="closed",this.id=null,this.emitReserved("close",e,t),this.writeBuffer=[],this.prevBufferLen=0)}filterUpgrades(e){let t=[],r=0,n=e.length;for(;r<n;r++)~this.transports.indexOf(e[r])&&t.push(e[r]);return t}};ot.protocol=xr;var ju=ot.protocol;var Co=Y(ti(),1),xo=(0,Co.default)("socket.io-client:url");function No(i,e="",t){let r=i;t=t||typeof location!="undefined"&&location,i==null&&(i=t.protocol+"//"+t.host),typeof i=="string"&&(i.charAt(0)==="/"&&(i.charAt(1)==="/"?i=t.protocol+i:i=t.host+i),/^(https?|wss?):\/\//.test(i)||(xo("protocol-less url %s",i),typeof t!="undefined"?i=t.protocol+"//"+i:i="https://"+i),xo("parse %s",i),r=Ct(i)),r.port||(/^(http|ws)$/.test(r.protocol)?r.port="80":/^(http|ws)s$/.test(r.protocol)&&(r.port="443")),r.path=r.path||"/";let s=r.host.indexOf(":")!==-1?"["+r.host+"]":r.host;return r.id=r.protocol+"://"+s+":"+r.port+e,r.href=r.protocol+"://"+s+(t&&t.port===r.port?"":":"+r.port),r}var un={};Jo(un,{Decoder:()=>hn,Encoder:()=>ln,PacketType:()=>x,protocol:()=>Io});var kl=typeof ArrayBuffer=="function",Al=i=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(i):i.buffer instanceof ArrayBuffer,ko=Object.prototype.toString,Rl=typeof Blob=="function"||typeof Blob!="undefined"&&ko.call(Blob)==="[object BlobConstructor]",Tl=typeof File=="function"||typeof File!="undefined"&&ko.call(File)==="[object FileConstructor]";function ri(i){return kl&&(i instanceof ArrayBuffer||Al(i))||Rl&&i instanceof Blob||Tl&&i instanceof File}function ii(i,e){if(!i||typeof i!="object")return!1;if(Array.isArray(i)){for(let t=0,r=i.length;t<r;t++)if(ii(i[t]))return!0;return!1}if(ri(i))return!0;if(i.toJSON&&typeof i.toJSON=="function"&&arguments.length===1)return ii(i.toJSON(),!0);for(let t in i)if(Object.prototype.hasOwnProperty.call(i,t)&&ii(i[t]))return!0;return!1}function Ao(i){let e=[],t=i.data,r=i;return r.data=on(t,e),r.attachments=e.length,{packet:r,buffers:e}}function on(i,e){if(!i)return i;if(ri(i)){let t={_placeholder:!0,num:e.length};return e.push(i),t}else if(Array.isArray(i)){let t=new Array(i.length);for(let r=0;r<i.length;r++)t[r]=on(i[r],e);return t}else if(typeof i=="object"&&!(i instanceof Date)){let t={};for(let r in i)Object.prototype.hasOwnProperty.call(i,r)&&(t[r]=on(i[r],e));return t}return i}function Ro(i,e){return i.data=an(i.data,e),delete i.attachments,i}function an(i,e){if(!i)return i;if(i&&i._placeholder===!0){if(typeof i.num=="number"&&i.num>=0&&i.num<e.length)return e[i.num];throw new Error("illegal attachments")}else if(Array.isArray(i))for(let t=0;t<i.length;t++)i[t]=an(i[t],e);else if(typeof i=="object")for(let t in i)Object.prototype.hasOwnProperty.call(i,t)&&(i[t]=an(i[t],e));return i}var Oo=Y(tt(),1),cn=(0,Oo.default)("socket.io-parser"),Ol=["connect","connect_error","disconnect","disconnecting","newListener","removeListener"],Io=5,x;(function(i){i[i.CONNECT=0]="CONNECT",i[i.DISCONNECT=1]="DISCONNECT",i[i.EVENT=2]="EVENT",i[i.ACK=3]="ACK",i[i.CONNECT_ERROR=4]="CONNECT_ERROR",i[i.BINARY_EVENT=5]="BINARY_EVENT",i[i.BINARY_ACK=6]="BINARY_ACK"})(x||(x={}));var ln=class{constructor(e){this.replacer=e}encode(e){return cn("encoding packet %j",e),(e.type===x.EVENT||e.type===x.ACK)&&ii(e)?this.encodeAsBinary({type:e.type===x.EVENT?x.BINARY_EVENT:x.BINARY_ACK,nsp:e.nsp,data:e.data,id:e.id}):[this.encodeAsString(e)]}encodeAsString(e){let t=""+e.type;return(e.type===x.BINARY_EVENT||e.type===x.BINARY_ACK)&&(t+=e.attachments+"-"),e.nsp&&e.nsp!=="/"&&(t+=e.nsp+","),e.id!=null&&(t+=e.id),e.data!=null&&(t+=JSON.stringify(e.data,this.replacer)),cn("encoded %j as %s",e,t),t}encodeAsBinary(e){let t=Ao(e),r=this.encodeAsString(t.packet),n=t.buffers;return n.unshift(r),n}};function To(i){return Object.prototype.toString.call(i)==="[object Object]"}var hn=class i extends L{constructor(e){super(),this.reviver=e}add(e){let t;if(typeof e=="string"){if(this.reconstructor)throw new Error("got plaintext data when reconstructing a packet");t=this.decodeString(e);let r=t.type===x.BINARY_EVENT;r||t.type===x.BINARY_ACK?(t.type=r?x.EVENT:x.ACK,this.reconstructor=new fn(t),t.attachments===0&&super.emitReserved("decoded",t)):super.emitReserved("decoded",t)}else if(ri(e)||e.base64)if(this.reconstructor)t=this.reconstructor.takeBinaryData(e),t&&(this.reconstructor=null,super.emitReserved("decoded",t));else throw new Error("got binary data when not reconstructing a packet");else throw new Error("Unknown type: "+e)}decodeString(e){let t=0,r={type:Number(e.charAt(0))};if(x[r.type]===void 0)throw new Error("unknown packet type "+r.type);if(r.type===x.BINARY_EVENT||r.type===x.BINARY_ACK){let s=t+1;for(;e.charAt(++t)!=="-"&&t!=e.length;);let o=e.substring(s,t);if(o!=Number(o)||e.charAt(t)!=="-")throw new Error("Illegal attachments");r.attachments=Number(o)}if(e.charAt(t+1)==="/"){let s=t+1;for(;++t&&!(e.charAt(t)===","||t===e.length););r.nsp=e.substring(s,t)}else r.nsp="/";let n=e.charAt(t+1);if(n!==""&&Number(n)==n){let s=t+1;for(;++t;){let o=e.charAt(t);if(o==null||Number(o)!=o){--t;break}if(t===e.length)break}r.id=Number(e.substring(s,t+1))}if(e.charAt(++t)){let s=this.tryParse(e.substr(t));if(i.isPayloadValid(r.type,s))r.data=s;else throw new Error("invalid payload")}return cn("decoded %s as %j",e,r),r}tryParse(e){try{return JSON.parse(e,this.reviver)}catch(t){return!1}}static isPayloadValid(e,t){switch(e){case x.CONNECT:return To(t);case x.DISCONNECT:return t===void 0;case x.CONNECT_ERROR:return typeof t=="string"||To(t);case x.EVENT:case x.BINARY_EVENT:return Array.isArray(t)&&(typeof t[0]=="number"||typeof t[0]=="string"&&Ol.indexOf(t[0])===-1);case x.ACK:case x.BINARY_ACK:return Array.isArray(t)}}destroy(){this.reconstructor&&(this.reconstructor.finishedReconstruction(),this.reconstructor=null)}},fn=class{constructor(e){this.packet=e,this.buffers=[],this.reconPack=e}takeBinaryData(e){if(this.buffers.push(e),this.buffers.length===this.reconPack.attachments){let t=Ro(this.reconPack,this.buffers);return this.finishedReconstruction(),t}return null}finishedReconstruction(){this.reconPack=null,this.buffers=[]}};function oe(i,e,t){return i.on(e,t),function(){i.off(e,t)}}var Po=Y(ti(),1),W=(0,Po.default)("socket.io-client:socket"),Il=Object.freeze({connect:1,connect_error:1,disconnect:1,disconnecting:1,newListener:1,removeListener:1}),Nt=class extends L{constructor(e,t,r){super(),this.connected=!1,this.recovered=!1,this.receiveBuffer=[],this.sendBuffer=[],this._queue=[],this._queueSeq=0,this.ids=0,this.acks={},this.flags={},this.io=e,this.nsp=t,r&&r.auth&&(this.auth=r.auth),this._opts=Object.assign({},r),this.io._autoConnect&&this.open()}get disconnected(){return!this.connected}subEvents(){if(this.subs)return;let e=this.io;this.subs=[oe(e,"open",this.onopen.bind(this)),oe(e,"packet",this.onpacket.bind(this)),oe(e,"error",this.onerror.bind(this)),oe(e,"close",this.onclose.bind(this))]}get active(){return!!this.subs}connect(){return this.connected?this:(this.subEvents(),this.io._reconnecting||this.io.open(),this.io._readyState==="open"&&this.onopen(),this)}open(){return this.connect()}send(...e){return e.unshift("message"),this.emit.apply(this,e),this}emit(e,...t){if(Il.hasOwnProperty(e))throw new Error('"'+e.toString()+'" is a reserved event name');if(t.unshift(e),this._opts.retries&&!this.flags.fromQueue&&!this.flags.volatile)return this._addToQueue(t),this;let r={type:x.EVENT,data:t};if(r.options={},r.options.compress=this.flags.compress!==!1,typeof t[t.length-1]=="function"){let o=this.ids++;W("emitting packet with ack id %d",o);let a=t.pop();this._registerAckCallback(o,a),r.id=o}let n=this.io.engine&&this.io.engine.transport&&this.io.engine.transport.writable;return this.flags.volatile&&(!n||!this.connected)?W("discard packet as the transport is not currently writable"):this.connected?(this.notifyOutgoingListeners(r),this.packet(r)):this.sendBuffer.push(r),this.flags={},this}_registerAckCallback(e,t){var r;let n=(r=this.flags.timeout)!==null&&r!==void 0?r:this._opts.ackTimeout;if(n===void 0){this.acks[e]=t;return}let s=this.io.setTimeoutFn(()=>{delete this.acks[e];for(let o=0;o<this.sendBuffer.length;o++)this.sendBuffer[o].id===e&&(W("removing packet with ack id %d from the buffer",e),this.sendBuffer.splice(o,1));W("event with ack id %d has timed out after %d ms",e,n),t.call(this,new Error("operation has timed out"))},n);this.acks[e]=(...o)=>{this.io.clearTimeoutFn(s),t.apply(this,[null,...o])}}emitWithAck(e,...t){let r=this.flags.timeout!==void 0||this._opts.ackTimeout!==void 0;return new Promise((n,s)=>{t.push((o,a)=>r?o?s(o):n(a):n(o)),this.emit(e,...t)})}_addToQueue(e){let t;typeof e[e.length-1]=="function"&&(t=e.pop());let r={id:this._queueSeq++,tryCount:0,pending:!1,args:e,flags:Object.assign({fromQueue:!0},this.flags)};e.push((n,...s)=>r!==this._queue[0]?void 0:(n!==null?r.tryCount>this._opts.retries&&(W("packet [%d] is discarded after %d tries",r.id,r.tryCount),this._queue.shift(),t&&t(n)):(W("packet [%d] was successfully sent",r.id),this._queue.shift(),t&&t(null,...s)),r.pending=!1,this._drainQueue())),this._queue.push(r),this._drainQueue()}_drainQueue(e=!1){if(W("draining queue"),!this.connected||this._queue.length===0)return;let t=this._queue[0];if(t.pending&&!e){W("packet [%d] has already been sent and is waiting for an ack",t.id);return}t.pending=!0,t.tryCount++,W("sending packet [%d] (try n\xB0%d)",t.id,t.tryCount),this.flags=t.flags,this.emit.apply(this,t.args)}packet(e){e.nsp=this.nsp,this.io._packet(e)}onopen(){W("transport is open - connecting"),typeof this.auth=="function"?this.auth(e=>{this._sendConnectPacket(e)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(e){this.packet({type:x.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},e):e})}onerror(e){this.connected||this.emitReserved("connect_error",e)}onclose(e,t){W("close (%s)",e),this.connected=!1,delete this.id,this.emitReserved("disconnect",e,t)}onpacket(e){if(e.nsp===this.nsp)switch(e.type){case x.CONNECT:e.data&&e.data.sid?this.onconnect(e.data.sid,e.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case x.EVENT:case x.BINARY_EVENT:this.onevent(e);break;case x.ACK:case x.BINARY_ACK:this.onack(e);break;case x.DISCONNECT:this.ondisconnect();break;case x.CONNECT_ERROR:this.destroy();let r=new Error(e.data.message);r.data=e.data.data,this.emitReserved("connect_error",r);break}}onevent(e){let t=e.data||[];W("emitting event %j",t),e.id!=null&&(W("attaching ack callback to event"),t.push(this.ack(e.id))),this.connected?this.emitEvent(t):this.receiveBuffer.push(Object.freeze(t))}emitEvent(e){if(this._anyListeners&&this._anyListeners.length){let t=this._anyListeners.slice();for(let r of t)r.apply(this,e)}super.emit.apply(this,e),this._pid&&e.length&&typeof e[e.length-1]=="string"&&(this._lastOffset=e[e.length-1])}ack(e){let t=this,r=!1;return function(...n){r||(r=!0,W("sending ack %j",n),t.packet({type:x.ACK,id:e,data:n}))}}onack(e){let t=this.acks[e.id];typeof t=="function"?(W("calling ack %s with %j",e.id,e.data),t.apply(this,e.data),delete this.acks[e.id]):W("bad ack %s",e.id)}onconnect(e,t){W("socket connected with id %s",e),this.id=e,this.recovered=t&&this._pid===t,this._pid=t,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach(e=>this.emitEvent(e)),this.receiveBuffer=[],this.sendBuffer.forEach(e=>{this.notifyOutgoingListeners(e),this.packet(e)}),this.sendBuffer=[]}ondisconnect(){W("server disconnect (%s)",this.nsp),this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(e=>e()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&(W("performing disconnect (%s)",this.nsp),this.packet({type:x.DISCONNECT})),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(e){return this.flags.compress=e,this}get volatile(){return this.flags.volatile=!0,this}timeout(e){return this.flags.timeout=e,this}onAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(e),this}prependAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(e),this}offAny(e){if(!this._anyListeners)return this;if(e){let t=this._anyListeners;for(let r=0;r<t.length;r++)if(e===t[r])return t.splice(r,1),this}else this._anyListeners=[];return this}listenersAny(){return this._anyListeners||[]}onAnyOutgoing(e){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.push(e),this}prependAnyOutgoing(e){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.unshift(e),this}offAnyOutgoing(e){if(!this._anyOutgoingListeners)return this;if(e){let t=this._anyOutgoingListeners;for(let r=0;r<t.length;r++)if(e===t[r])return t.splice(r,1),this}else this._anyOutgoingListeners=[];return this}listenersAnyOutgoing(){return this._anyOutgoingListeners||[]}notifyOutgoingListeners(e){if(this._anyOutgoingListeners&&this._anyOutgoingListeners.length){let t=this._anyOutgoingListeners.slice();for(let r of t)r.apply(this,e.data)}}};function at(i){i=i||{},this.ms=i.min||100,this.max=i.max||1e4,this.factor=i.factor||2,this.jitter=i.jitter>0&&i.jitter<=1?i.jitter:0,this.attempts=0}at.prototype.duration=function(){var i=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var e=Math.random(),t=Math.floor(e*this.jitter*i);i=Math.floor(e*10)&1?i+t:i-t}return Math.min(i,this.max)|0};at.prototype.reset=function(){this.attempts=0};at.prototype.setMin=function(i){this.ms=i};at.prototype.setMax=function(i){this.max=i};at.prototype.setJitter=function(i){this.jitter=i};var Lo=Y(ti(),1),K=(0,Lo.default)("socket.io-client:manager"),kt=class extends L{constructor(e,t){var r;super(),this.nsps={},this.subs=[],e&&typeof e=="object"&&(t=e,e=void 0),t=t||{},t.path=t.path||"/socket.io",this.opts=t,Te(this,t),this.reconnection(t.reconnection!==!1),this.reconnectionAttempts(t.reconnectionAttempts||1/0),this.reconnectionDelay(t.reconnectionDelay||1e3),this.reconnectionDelayMax(t.reconnectionDelayMax||5e3),this.randomizationFactor((r=t.randomizationFactor)!==null&&r!==void 0?r:.5),this.backoff=new at({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(t.timeout==null?2e4:t.timeout),this._readyState="closed",this.uri=e;let n=t.parser||un;this.encoder=new n.Encoder,this.decoder=new n.Decoder,this._autoConnect=t.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(e){return arguments.length?(this._reconnection=!!e,this):this._reconnection}reconnectionAttempts(e){return e===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=e,this)}reconnectionDelay(e){var t;return e===void 0?this._reconnectionDelay:(this._reconnectionDelay=e,(t=this.backoff)===null||t===void 0||t.setMin(e),this)}randomizationFactor(e){var t;return e===void 0?this._randomizationFactor:(this._randomizationFactor=e,(t=this.backoff)===null||t===void 0||t.setJitter(e),this)}reconnectionDelayMax(e){var t;return e===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=e,(t=this.backoff)===null||t===void 0||t.setMax(e),this)}timeout(e){return arguments.length?(this._timeout=e,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(e){if(K("readyState %s",this._readyState),~this._readyState.indexOf("open"))return this;K("opening %s",this.uri),this.engine=new ot(this.uri,this.opts);let t=this.engine,r=this;this._readyState="opening",this.skipReconnect=!1;let n=oe(t,"open",function(){r.onopen(),e&&e()}),s=a=>{K("error"),this.cleanup(),this._readyState="closed",this.emitReserved("error",a),e?e(a):this.maybeReconnectOnOpen()},o=oe(t,"error",s);if(this._timeout!==!1){let a=this._timeout;K("connect attempt will timeout after %d",a);let l=this.setTimeoutFn(()=>{K("connect attempt timed out after %d",a),n(),s(new Error("timeout")),t.close()},a);this.opts.autoUnref&&l.unref(),this.subs.push(()=>{this.clearTimeoutFn(l)})}return this.subs.push(n),this.subs.push(o),this}connect(e){return this.open(e)}onopen(){K("open"),this.cleanup(),this._readyState="open",this.emitReserved("open");let e=this.engine;this.subs.push(oe(e,"ping",this.onping.bind(this)),oe(e,"data",this.ondata.bind(this)),oe(e,"error",this.onerror.bind(this)),oe(e,"close",this.onclose.bind(this)),oe(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(e){try{this.decoder.add(e)}catch(t){this.onclose("parse error",t)}}ondecoded(e){st(()=>{this.emitReserved("packet",e)},this.setTimeoutFn)}onerror(e){K("error",e),this.emitReserved("error",e)}socket(e,t){let r=this.nsps[e];return r?this._autoConnect&&!r.active&&r.connect():(r=new Nt(this,e,t),this.nsps[e]=r),r}_destroy(e){let t=Object.keys(this.nsps);for(let r of t)if(this.nsps[r].active){K("socket %s is still active, skipping close",r);return}this._close()}_packet(e){K("writing packet %j",e);let t=this.encoder.encode(e);for(let r=0;r<t.length;r++)this.engine.write(t[r],e.options)}cleanup(){K("cleanup"),this.subs.forEach(e=>e()),this.subs.length=0,this.decoder.destroy()}_close(){K("disconnect"),this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close"),this.engine&&this.engine.close()}disconnect(){return this._close()}onclose(e,t){K("closed due to %s",e),this.cleanup(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",e,t),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;let e=this;if(this.backoff.attempts>=this._reconnectionAttempts)K("reconnect failed"),this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{let t=this.backoff.duration();K("will wait %dms before reconnect attempt",t),this._reconnecting=!0;let r=this.setTimeoutFn(()=>{e.skipReconnect||(K("attempting reconnect"),this.emitReserved("reconnect_attempt",e.backoff.attempts),!e.skipReconnect&&e.open(n=>{n?(K("reconnect attempt error"),e._reconnecting=!1,e.reconnect(),this.emitReserved("reconnect_error",n)):(K("reconnect success"),e.onreconnect())}))},t);this.opts.autoUnref&&r.unref(),this.subs.push(()=>{this.clearTimeoutFn(r)})}}onreconnect(){let e=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",e)}};var Uo=Y(ti(),1),Fo=(0,Uo.default)("socket.io-client"),ni={};function si(i,e){typeof i=="object"&&(e=i,i=void 0),e=e||{};let t=No(i,e.path||"/socket.io"),r=t.source,n=t.id,s=t.path,o=ni[n]&&s in ni[n].nsps,a=e.forceNew||e["force new connection"]||e.multiplex===!1||o,l;return a?(Fo("ignoring socket cache for %s",r),l=new kt(r,e)):(ni[n]||(Fo("new io instance for %s",r),ni[n]=new kt(r,e)),l=ni[n]),t.query&&!e.query&&(e.query=t.queryKey),l.socket(t.path,e)}Object.assign(si,{Manager:kt,Socket:Nt,io:si,connect:si});var Pl="https://ws.novu.co",Do="notifications.notification_received",Bo="notifications.unseen_count_changed",Mo="notifications.unread_count_changed",Ll=({_id:i,transactionId:e,content:t,read:r,seen:n,archived:s,snoozedUntil:o,deliveredAt:a,createdAt:l,lastReadDate:u,firstSeenDate:f,archivedAt:h,channel:p,subscriber:d,subject:b,avatar:g,cta:v,tags:R,data:T,workflow:y,severity:E})=>{var Ke,Ye,X,Ue,De,Be,ue,de;let z={id:d==null?void 0:d._id,subscriberId:d==null?void 0:d.subscriberId,firstName:d==null?void 0:d.firstName,lastName:d==null?void 0:d.lastName,avatar:d==null?void 0:d.avatar,locale:d==null?void 0:d.locale,data:d==null?void 0:d.data,timezone:d==null?void 0:d.timezone,email:d==null?void 0:d.email,phone:d==null?void 0:d.phone},C=(Ye=(Ke=v.action)==null?void 0:Ke.buttons)==null?void 0:Ye.find(ke=>ke.type==="primary"),I=(Ue=(X=v.action)==null?void 0:X.buttons)==null?void 0:Ue.find(ke=>ke.type==="secondary"),M=(Be=(De=v.action)==null?void 0:De.result)==null?void 0:Be.type,te=(ue=v.action)==null?void 0:ue.status;return k(_(_({id:i,transactionId:e,subject:b,body:t,to:z,isRead:r,isSeen:n,isArchived:s,isSnoozed:!!o},a&&{deliveredAt:a}),o&&{snoozedUntil:o}),{createdAt:l,readAt:u,firstSeenAt:f,archivedAt:h,avatar:g,primaryAction:C&&{label:C.content,isCompleted:M==="primary"&&te==="done",redirect:C.url?{target:C.target,url:C.url}:void 0},secondaryAction:I&&{label:I.content,isCompleted:M==="secondary"&&te==="done",redirect:I.url?{target:I.target,url:I.url}:void 0},channelType:p,tags:R,redirect:(de=v.data)!=null&&de.url?{url:v.data.url,target:v.data.target}:void 0,data:T,workflow:y,severity:E})},At,Ee,ae,Rt,nr,sr,or,Ce,qo,dn,pn,rr=class extends Se{constructor({socketUrl:t,inboxServiceInstance:r,eventEmitterInstance:n}){super({eventEmitterInstance:n,inboxServiceInstance:r});S(this,Ce);S(this,At);S(this,Ee);S(this,ae);S(this,Rt);S(this,nr,({message:t})=>{c(this,Ee).emit(Do,{result:new U(Ll(t),c(this,Ee),this._inboxService)})});S(this,sr,({unseenCount:t})=>{c(this,Ee).emit(Bo,{result:t})});S(this,or,({counts:t})=>{c(this,Ee).emit(Mo,{result:t})});w(this,Ee,n),w(this,Rt,t!=null?t:Pl)}onSessionSuccess({token:t}){w(this,At,t)}isSocketEvent(t){return t===Do||t===Bo||t===Mo}connect(){return m(this,null,function*(){return c(this,At)?le(this,Ce,dn).call(this):this.callWithSession(le(this,Ce,dn).bind(this))})}disconnect(){return m(this,null,function*(){return c(this,ae)?le(this,Ce,pn).call(this):this.callWithSession(le(this,Ce,pn).bind(this))})}};At=new WeakMap,Ee=new WeakMap,ae=new WeakMap,Rt=new WeakMap,nr=new WeakMap,sr=new WeakMap,or=new WeakMap,Ce=new WeakSet,qo=function(){return m(this,null,function*(){var r,n,s;if(c(this,ae))return;let t={socketUrl:c(this,Rt)};c(this,Ee).emit("socket.connect.pending",{args:t}),w(this,ae,si(c(this,Rt),{reconnectionDelayMax:1e4,transports:["websocket"],query:{token:`${c(this,At)}`}})),c(this,ae).on("connect",()=>{c(this,Ee).emit("socket.connect.resolved",{args:t})}),c(this,ae).on("connect_error",o=>{c(this,Ee).emit("socket.connect.resolved",{args:t,error:o})}),(r=c(this,ae))==null||r.on("notification_received",c(this,nr)),(n=c(this,ae))==null||n.on("unseen_count_changed",c(this,sr)),(s=c(this,ae))==null||s.on("unread_count_changed",c(this,or))})},dn=function(){return m(this,null,function*(){try{return yield le(this,Ce,qo).call(this),{}}catch(t){return{error:new A("Failed to initialize the socket",t)}}})},pn=function(){return m(this,null,function*(){var t;try{return(t=c(this,ae))==null||t.disconnect(),w(this,ae,void 0),{}}catch(r){return{error:new A("Failed to disconnect from the socket",r)}}})};var Fl=["wss://eu.socket.novu.co",Dt,"wss://socket.novu-staging.co","wss://socket-worker-local.cli-shortener.workers.dev"],Ul={"https://eu.ws.novu.co":"wss://eu.socket.novu.co","https://ws.novu.co":Dt,"https://dev.ws.novu.co":"wss://socket.novu-staging.co"};function Dl(i){return i?Ul[i]||i:Dt}function Bl(i){return!i||Fl.includes(i)}function Wo({socketUrl:i,inboxServiceInstance:e,eventEmitterInstance:t}){let r=Dl(i);switch(Bl(r)?"partysocket":"socket.io"){case"partysocket":return new ki({socketUrl:r,inboxServiceInstance:e,eventEmitterInstance:t});case"socket.io":default:return new rr({socketUrl:r,inboxServiceInstance:e,eventEmitterInstance:t})}}var Ne,Fe,Ge,ar=class{constructor(e){S(this,Ne);S(this,Fe);S(this,Ge);var t,r;w(this,Ge,new hi({apiUrl:e.apiUrl||e.backendUrl,userAgent:e.__userAgent})),w(this,Ne,new fi),w(this,Fe,new bi({applicationIdentifier:e.applicationIdentifier||"",subscriberHash:e.subscriberHash,subscriber:Cn({subscriberId:e.subscriberId,subscriber:e.subscriber})},c(this,Ge),c(this,Ne))),c(this,Fe).initialize(),this.notifications=new _i({useCache:(t=e.useCache)!=null?t:!0,inboxServiceInstance:c(this,Ge),eventEmitterInstance:c(this,Ne)}),this.preferences=new wi({useCache:(r=e.useCache)!=null?r:!0,inboxServiceInstance:c(this,Ge),eventEmitterInstance:c(this,Ne)}),this.socket=Wo({socketUrl:e.socketUrl,eventEmitterInstance:c(this,Ne),inboxServiceInstance:c(this,Ge)}),this.on=(n,s)=>{this.socket.isSocketEvent(n)&&this.socket.connect();let o=c(this,Ne).on(n,s);return()=>{o()}},this.off=(n,s)=>{c(this,Ne).off(n,s)}}get applicationIdentifier(){return c(this,Fe).applicationIdentifier}get subscriberId(){return c(this,Fe).subscriberId}changeSubscriber(e){return m(this,null,function*(){yield c(this,Fe).initialize({applicationIdentifier:c(this,Fe).applicationIdentifier||"",subscriberHash:e.subscriberHash,subscriber:e.subscriber})})}};Ne=new WeakMap,Fe=new WeakMap,Ge=new WeakMap;window.Novu=ar;})();
|
|
38
38
|
/*! Bundled license information:
|
|
39
39
|
|
|
40
40
|
xmlhttprequest-ssl/lib/XMLHttpRequest.js:
|