PageSourceSearch

https://raydium.io/_next/static/chunks/1194.7041d0fd9a502500.js

js raydium.io collected 2026-10-02 02:52:15 UTC 228,193 bytes, 1 lines download raw bytes

1!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},t=(new Error).stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="bff48254-33b6-4eb1-9318-3e987afe3153",e._sentryDebugIdIdentifier="sentry-dbid-bff48254-33b6-4eb1-9318-3e987afe3153")}catch(e){}}(),(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1194],{98219:function(){},50516:function(e,t,i){"use strict";i.r(t),i.d(t,{EthereumProvider:function(){return Ns},OPTIONAL_EVENTS:function(){return ws},OPTIONAL_METHODS:function(){return ms},REQUIRED_EVENTS:function(){return vs},REQUIRED_METHODS:function(){return ys},default:function(){return Ts}});var r=i(17187),s=i.n(r),n=i(22123),o=i(3432),a=i(19490),c=i(12044),h=i(38200);class u extends h.q{constructor(e){super(),this.opts=e,this.protocol="wc",this.version=2}}class l extends h.q{constructor(e,t){super(),this.core=e,this.logger=t,this.records=new Map}}class p extends h.q{constructor(e,t){super(),this.relayer=e,this.logger=t}}class d extends h.q{constructor(e){super()}}class g extends h.q{constructor(e,t){super(),this.relayer=e,this.logger=t}}class f extends h.q{constructor(e,t){super(),this.core=e,this.logger=t}}var y=i(85094),m=i(31050),v=i(31416),w=i(66736);const b="base64url",_="did",I="key",E="base58btc";function P(e){return null!=globalThis.Buffer?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function S(e=0){return null!=globalThis.Buffer&&null!=globalThis.Buffer.allocUnsafe?P(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}var R=i(91835);function C(e,t,i,r){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:i},decoder:{decode:r}}}const x=C("utf8","u",(e=>"u"+new TextDecoder("utf8").decode(e)),(e=>(new TextEncoder).encode(e.substring(1)))),q=C("ascii","a",(e=>{let t="a";for(let i=0;i<e.length;i++)t+=String.fromCharCode(e[i]);return t}),(e=>{const t=S((e=e.substring(1)).length);for(let i=0;i<e.length;i++)t[i]=e.charCodeAt(i);return t}));var O={utf8:x,"utf-8":x,hex:R.gh.base16,latin1:q,ascii:q,binary:q,...R.gh};function T(e,t="utf8"){const i=O[t];if(!i)throw new Error(`Unsupported encoding "${t}"`);return"utf8"!==t&&"utf-8"!==t||null==globalThis.Buffer||null==globalThis.Buffer.from?i.encoder.encode(e).substring(1):globalThis.Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString("utf8")}function N(e,t="utf8"){const i=O[t];if(!i)throw new Error(`Unsupported encoding "${t}"`);return"utf8"!==t&&"utf-8"!==t||null==globalThis.Buffer||null==globalThis.Buffer.from?i.decoder.decode(`${i.prefix}${e}`):P(globalThis.Buffer.from(e,"utf-8"))}function D(e){return T(N((0,y.u)(e),"utf8"),b)}function A(e){const t="z"+T(function(e,t){t||(t=e.reduce(((e,t)=>e+t.length),0));const i=S(t);let r=0;for(const s of e)i.set(s,r),r+=s.length;return P(i)}([N("K36",E),e]),E);return[_,I,t].join(":")}function k(e=(0,v.randomBytes)(32)){return m._w(e)}async function $(e,t,i,r,s=(0,w.fromMiliseconds)(Date.now())){const n={alg:"EdDSA",typ:"JWT"},o={iss:A(r.publicKey),sub:e,aud:t,iat:s,exp:s+i},a=N([D((c={header:n,payload:o}).header),D(c.payload)].join("."),"utf8");var c;return function(e){return[D(e.header),D(e.payload),(t=e.signature,T(t,b))].join(".");var t}({header:n,payload:o,signature:m.Xx(r.secretKey,a)})}i(98219);var M=i(94622),j=i(64534),z=i(56186);const U=e=>e.split("?")[0],L=typeof WebSocket<"u"?WebSocket:typeof i.g<"u"&&typeof i.g.WebSocket<"u"?i.g.WebSocket:typeof window<"u"&&typeof window.WebSocket<"u"?window.WebSocket:typeof self<"u"&&typeof self.WebSocket<"u"?self.WebSocket:i(57026);class H{constructor(e){if(this.url=e,this.events=new r.EventEmitter,this.registering=!1,!(0,z.isWsUrl)(e))throw new Error(`Provided URL is not compatible with WebSocket connection: ${e}`);this.url=e}get connected(){return typeof this.socket<"u"}get connecting(){return this.registering}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}async open(e=this.url){await this.register(e)}async close(){return new Promise(((e,t)=>{typeof this.socket>"u"?t(new Error("Connection already closed")):(this.socket.onclose=t=>{this.onClose(t),e()},this.socket.close())}))}async send(e){typeof this.socket>"u"&&(this.socket=await this.register());try{this.socket.send((0,y.u)(e))}catch(t){this.onError(e.id,t)}}register(e=this.url){if(!(0,z.isWsUrl)(e))throw new Error(`Provided URL is not compatible with WebSocket connection: ${e}`);if(this.registering){const e=this.events.getMaxListeners();return(this.events.listenerCount("register_error")>=e||this.events.listenerCount("open")>=e)&&this.events.setMaxListeners(e+1),new Promise(((e,t)=>{this.events.once("register_error",(e=>{this.resetMaxListeners(),t(e)})),this.events.once("open",(()=>{if(this.resetMaxListeners(),typeof this.socket>"u")return t(new Error("WebSocket connection is missing or invalid"));e(this.socket)}))}))}return this.url=e,this.registering=!0,new Promise(((t,r)=>{const s=new URLSearchParams(e).get("origin"),n=(0,z.isReactNative)()?{headers:{origin:s}}:{rejectUnauthorized:!(0,z.isLocalhostUrl)(e)},o=new L(e,[],n);typeof WebSocket<"u"||typeof i.g<"u"&&typeof i.g.WebSocket<"u"||typeof window<"u"&&typeof window.WebSocket<"u"||typeof self<"u"&&typeof self.WebSocket<"u"?o.onerror=e=>{const t=e;r(this.emitError(t.error))}:o.on("error",(e=>{r(this.emitError(e))})),o.onopen=()=>{this.onOpen(o),t(o)}}))}onOpen(e){e.onmessage=e=>this.onPayload(e),e.onclose=e=>this.onClose(e),this.socket=e,this.registering=!1,this.events.emit("open")}onClose(e){this.socket=void 0,this.registering=!1,this.events.emit("close",e)}onPayload(e){if(typeof e.data>"u")return;const t="string"==typeof e.data?(0,y.D)(e.data):e.data;this.events.emit("payload",t)}onError(e,t){const i=this.parseError(t),r=i.message||i.toString(),s=(0,z.formatJsonRpcError)(e,r);this.events.emit("payload",s)}parseError(e,t=this.url){return(0,z.parseConnectionError)(e,U(t),"WS")}
1resetMaxListeners(){this.events.getMaxListeners()>10&&this.events.setMaxListeners(10)}emitError(e){const t=this.parseError(new Error(e?.message||`WebSocket connection failed for host: ${U(this.url)}`));return this.events.emit("register_error",t),t}}var V=i(72307),K=i.n(V),F=i(63144),B=i.n(F),J=i(34155);var W=function(e,t){if(e.length>=255)throw new TypeError("Alphabet too long");for(var i=new Uint8Array(256),r=0;r<i.length;r++)i[r]=255;for(var s=0;s<e.length;s++){var n=e.charAt(s),o=n.charCodeAt(0);if(255!==i[o])throw new TypeError(n+" is ambiguous");i[o]=s}var a=e.length,c=e.charAt(0),h=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function l(e){if("string"!=typeof e)throw new TypeError("Expected String");if(0===e.length)return new Uint8Array;var t=0;if(" "!==e[t]){for(var r=0,s=0;e[t]===c;)r++,t++;for(var n=(e.length-t)*h+1>>>0,o=new Uint8Array(n);e[t];){var u=i[e.charCodeAt(t)];if(255===u)return;for(var l=0,p=n-1;(0!==u||l<s)&&-1!==p;p--,l++)u+=a*o[p]>>>0,o[p]=u%256>>>0,u=u/256>>>0;if(0!==u)throw new Error("Non-zero carry");s=l,t++}if(" "!==e[t]){for(var d=n-s;d!==n&&0===o[d];)d++;for(var g=new Uint8Array(r+(n-d)),f=r;d!==n;)g[f++]=o[d++];return g}}}return{encode:function(t){if(t instanceof Uint8Array||(ArrayBuffer.isView(t)?t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength):Array.isArray(t)&&(t=Uint8Array.from(t))),!(t instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(0===t.length)return"";for(var i=0,r=0,s=0,n=t.length;s!==n&&0===t[s];)s++,i++;for(var o=(n-s)*u+1>>>0,h=new Uint8Array(o);s!==n;){for(var l=t[s],p=0,d=o-1;(0!==l||p<r)&&-1!==d;d--,p++)l+=256*h[d]>>>0,h[d]=l%a>>>0,l=l/a>>>0;if(0!==l)throw new Error("Non-zero carry");r=p,s++}for(var g=o-r;g!==o&&0===h[g];)g++;for(var f=c.repeat(i);g<o;++g)f+=e.charAt(h[g]);return f},decodeUnsafe:l,decode:function(e){var i=l(e);if(i)return i;throw new Error(`Non-${t} character`)}}},G=W;const Q=e=>{if(e instanceof Uint8Array&&"Uint8Array"===e.constructor.name)return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);throw new Error("Unknown type, must be binary type")};class Y{constructor(e,t,i){this.name=e,this.prefix=t,this.baseEncode=i}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}}class Z{constructor(e,t,i){if(this.name=e,this.prefix=t,void 0===t.codePointAt(0))throw new Error("Invalid prefix character");this.prefixCodePoint=t.codePointAt(0),this.baseDecode=i}decode(e){if("string"==typeof e){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}throw Error("Can only multibase decode strings")}or(e){return ee(this,e)}}class X{constructor(e){this.decoders=e}or(e){return ee(this,e)}decode(e){const t=e[0],i=this.decoders[t];if(i)return i.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}}const ee=(e,t)=>new X({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}});class te{constructor(e,t,i,r){this.name=e,this.prefix=t,this.baseEncode=i,this.baseDecode=r,this.encoder=new Y(e,t,i),this.decoder=new Z(e,t,r)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}}const ie=({name:e,prefix:t,encode:i,decode:r})=>new te(e,t,i,r),re=({prefix:e,name:t,alphabet:i})=>{const{encode:r,decode:s}=G(i,t);return ie({prefix:e,name:t,encode:r,decode:e=>Q(s(e))})},se=({name:e,prefix:t,bitsPerChar:i,alphabet:r})=>ie({prefix:t,name:e,encode:e=>((e,t,i)=>{const r="="===t[t.length-1],s=(1<<i)-1;let n="",o=0,a=0;for(let c=0;c<e.length;++c)for(a=a<<8|e[c],o+=8;o>i;)o-=i,n+=t[s&a>>o];if(o&&(n+=t[s&a<<i-o]),r)for(;n.length*i&7;)n+="=";return n})(e,r,i),decode:t=>((e,t,i,r)=>{const s={};for(let u=0;u<t.length;++u)s[t[u]]=u;let n=e.length;for(;"="===e[n-1];)--n;const o=new Uint8Array(n*i/8|0);let a=0,c=0,h=0;for(let u=0;u<n;
1++u){const t=s[e[u]];if(void 0===t)throw new SyntaxError(`Non-${r} character`);c=c<<i|t,a+=i,a>=8&&(a-=8,o[h++]=255&c>>a)}if(a>=i||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return o})(t,r,i,e)}),ne=ie({prefix:"\0",name:"identity",encode:e=>(e=>(new TextDecoder).decode(e))(e),decode:e=>(e=>(new TextEncoder).encode(e))(e)});var oe=Object.freeze({__proto__:null,identity:ne});const ae=se({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var ce=Object.freeze({__proto__:null,base2:ae});const he=se({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var ue=Object.freeze({__proto__:null,base8:he});const le=re({prefix:"9",name:"base10",alphabet:"0123456789"});var pe=Object.freeze({__proto__:null,base10:le});const de=se({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),ge=se({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var fe=Object.freeze({__proto__:null,base16:de,base16upper:ge});const ye=se({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),me=se({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),ve=se({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),we=se({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),be=se({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),_e=se({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Ie=se({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Ee=se({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Pe=se({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Se=Object.freeze({__proto__:null,base32:ye,base32upper:me,base32pad:ve,base32padupper:we,base32hex:be,base32hexupper:_e,base32hexpad:Ie,base32hexpadupper:Ee,base32z:Pe});const Re=re({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Ce=re({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var xe=Object.freeze({__proto__:null,base36:Re,base36upper:Ce});const qe=re({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Oe=re({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Te=Object.freeze({__proto__:null,base58btc:qe,base58flickr:Oe});const Ne=se({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),De=se({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Ae=se({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),ke=se({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var $e=Object.freeze({__proto__:null,base64:Ne,base64pad:De,base64url:Ae,base64urlpad:ke});const Me=Array.from("\ud83d\ude80\ud83e\ude90\u2604\ud83d\udef0\ud83c\udf0c\ud83c\udf11\ud83c\udf12\ud83c\udf13\ud83c\udf14\ud83c\udf15\ud83c\udf16\ud83c\udf17\ud83c\udf18\ud83c\udf0d\ud83c\udf0f\ud83c\udf0e\ud83d\udc09\u2600\ud83d\udcbb\ud83d\udda5\ud83d\udcbe\ud83d\udcbf\ud83d\ude02\u2764\ud83d\ude0d\ud83e\udd23\ud83d\ude0a\ud83d\ude4f\ud83d\udc95\ud83d\ude2d\ud83d\ude18\ud83d\udc4d\ud83d\ude05\ud83d\udc4f\ud83d\ude01\ud83d\udd25\ud83e\udd70\ud83d\udc94\ud83d\udc96\ud83d\udc99\ud83d\ude22\ud83e\udd14\ud83d\ude06\ud83d\ude44\ud83d\udcaa\ud83d\ude09\u263a\ud83d\udc4c\ud83e\udd17\ud83d\udc9c\ud83d\ude14\ud83d\ude0e\ud83d\ude07\ud83c\udf39\ud83e\udd26\ud83c\udf89\ud83d\udc9e\u270c\u2728\ud83e\udd37\ud83d\ude31\ud83d\ude0c\ud83c\udf38\ud83d\ude4c\ud83d\ude0b\ud83d\udc97\ud83d\udc9a\ud83d\ude0f\ud83d\udc9b\ud83d\ude42\ud83d\udc93\ud83e\udd29\ud83d\ude04\ud83d\ude00\ud83d\udda4\ud83d\ude03\ud83d\udcaf\ud83d\ude48\ud83d\udc47\ud83c\udfb6\ud83d\ude12\ud83e\udd2d\u2763\ud83d\ude1c\ud83d\udc8b\ud83d\udc40\ud83d\ude2a\ud83d\ude11\ud83d\udca5\ud83d\ude4b\ud83d\ude1e\ud83d\ude29\ud83d\ude21\ud83e\udd2a\ud83d\udc4a\ud83e\udd73\ud83d\ude25\ud83e\udd24\ud83d\udc49\ud83d\udc83\ud83d\ude33\u270b\ud83d\ude1a\ud83d\ude1d\ud83d\ude34\ud83c\udf1f\ud83d\ude2c\ud83d\ude43\ud83c\udf40\ud83c\udf37\ud83d\ude3b\ud83d\ude13\u2b50\u2705\ud83e\udd7a\ud83c\udf08\ud83d\ude08\ud83e\udd18\ud83d\udca6\u2714\ud83d\ude23\ud83c\udfc3\ud83d\udc90\u2639\ud83c\udf8a\ud83d\udc98\ud83d\ude20\u261d\ud83d\ude15\ud83c\udf3a\ud83c\udf82\ud83c\udf3b\ud83d\ude10\ud83d\udd95\ud83d\udc9d\ud83d\ude4a\ud83d\ude39\ud83d\udde3\ud83d\udcab\ud83d\udc80\ud83d\udc51\ud83c\udfb5\ud83e\udd1e\ud83d\ude1b\ud83d\udd34\ud83d\ude24\ud83c\udf3c\ud83d\ude2b\u26bd\ud83e\udd19\u2615\ud83c\udfc6\ud83e\udd2b\ud83d\udc48\ud83d\ude2e\ud83d\ude46\ud83c\udf7b\ud83c\udf43\ud83d\udc36\ud83d\udc81\ud83d\ude32\ud83c\udf3f\ud83e\udde1\ud83c\udf81\u26a1\ud83c\udf1e\ud83c\udf88\u274c\u270a\ud83d\udc4b\ud83d\ude30\ud83e\udd28\ud83d\ude36\ud83e\udd1d\ud83d\udeb6\ud83d\udcb0\ud83c\udf53\ud83d\udca2\ud83e\udd1f\ud83d\ude41\ud83d\udea8\ud83d\udca8\ud83e\udd2c\u2708\ud83c\udf80\ud83c\udf7a\ud83e\udd13\ud83d\ude19\ud83d\udc9f\ud83c\udf31\ud83d\ude16\ud83d\udc76\ud83e\udd74\u25b6\u27a1\u2753\ud83d\udc8e\ud83d\udcb8\u2b07\ud83d\ude28\ud83c\udf1a\ud83e\udd8b\ud83d\ude37\ud83d\udd7a\u26a0\ud83d\ude45\ud83d\ude1f\ud83d\ude35\ud83d\udc4e\ud83e\udd32\ud83e\udd20\ud83e\udd27\ud83d\udccc\ud83d\udd35\ud83d\udc85\ud83e\uddd0\ud83d\udc3e\ud83c\udf52\ud83d\ude17\ud83e\udd11\ud83c\udf0a\ud83e\udd2f\ud83d\udc37\u260e\ud83d\udca7\ud83d\ude2f\ud83d\udc86\ud83d\udc46\ud83c\udfa4\ud83d\ude47\ud83c\udf51\u2744\ud83c\udf34\ud83d\udca3\ud83d\udc38\ud83d\udc8c\ud83d\udccd\ud83e\udd40\ud83e\udd22\ud83d\udc45\ud83d\udca1\ud83d\udca9\ud83d\udc50\ud83d\udcf8\ud83d\udc7b\ud83e\udd10\ud83e\udd2e\ud83c\udfbc\ud83e\udd75\ud83d\udea9\ud83c\udf4e\ud83c\udf4a\ud83d\udc7c\ud83d\udc8d\ud83d\udce3\ud83e\udd42"),je=Me.reduce(((e,t,i)=>(e[i]=t,e)),[]),ze=Me.reduce(((e,t,i)=>(e[t.codePointAt(0)]=i,e)),[]);const Ue=ie({prefix:"\ud83d\ude80",name:"base256emoji",encode:function(e){return e.reduce(((e,t)=>e+=je[t]),"")},decode:function(e){const t=[];for(const i of e){const e=ze[i.codePointAt(0)];if(void 0===e)throw new Error(`Non-base256emoji character: ${i}`);t.push(e)}return new Uint8Array(t)}});var Le=Object.freeze({__proto__:null,base256emoji:Ue}),He=function e(t,i,r){i=i||[];for(var s=r=r||0;t>=Ve;)i[r++]=255&t|128,t/=128;for(;-128&t;)i[r++]=255&t|128,t>>>=7;return i[r]=0|t,e.bytes=r-s+1,i},Ve=Math.pow(2,31);var Ke=function e(t,i){var r,s=0,n=0,o=i=i||0,a=t.length;do{if(o>=a)throw e.bytes=0,new RangeError("Could not decode varint");r=t[o++],s+=n<28?(127&r)<<n:(127&r)*Math.pow(2,n),n+=7}while(r>=128);return e.bytes=o-i,s};var Fe=Math.pow(2,7),Be=Math.pow(2,14),Je=Math.pow(2,21),We=Math.pow(2,28),Ge=Math.pow(2,35),Qe=Math.pow(2,42),Ye=Math.pow(2,49),Ze=M
1ath.pow(2,56),Xe=Math.pow(2,63),et={encode:He,decode:Ke,encodingLength:function(e){return e<Fe?1:e<Be?2:e<Je?3:e<We?4:e<Ge?5:e<Qe?6:e<Ye?7:e<Ze?8:e<Xe?9:10}};const tt=(e,t,i=0)=>(et.encode(e,t,i),t),it=e=>et.encodingLength(e),rt=(e,t)=>{const i=t.byteLength,r=it(e),s=r+it(i),n=new Uint8Array(s+i);return tt(e,n,0),tt(i,n,r),n.set(t,s),new st(e,i,t,n)};class st{constructor(e,t,i,r){this.code=e,this.size=t,this.digest=i,this.bytes=r}}const nt=({name:e,code:t,encode:i})=>new ot(e,t,i);class ot{constructor(e,t,i){this.name=e,this.code=t,this.encode=i}digest(e){if(e instanceof Uint8Array){const t=this.encode(e);return t instanceof Uint8Array?rt(this.code,t):t.then((e=>rt(this.code,e)))}throw Error("Unknown type, must be binary type")}}const at=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t)),ct=nt({name:"sha2-256",code:18,encode:at("SHA-256")}),ht=nt({name:"sha2-512",code:19,encode:at("SHA-512")});Object.freeze({__proto__:null,sha256:ct,sha512:ht});const ut=Q,lt={code:0,name:"identity",encode:ut,digest:e=>rt(0,ut(e))};Object.freeze({__proto__:null,identity:lt});new TextEncoder,new TextDecoder;const pt={...oe,...ce,...ue,...pe,...fe,...Se,...xe,...Te,...$e,...Le};function dt(e,t,i,r){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:i},decoder:{decode:r}}}const gt=dt("utf8","u",(e=>"u"+new TextDecoder("utf8").decode(e)),(e=>(new TextEncoder).encode(e.substring(1)))),ft=dt("ascii","a",(e=>{let t="a";for(let i=0;i<e.length;i++)t+=String.fromCharCode(e[i]);return t}),(e=>{const t=function(e=0){return null!=globalThis.Buffer&&null!=globalThis.Buffer.allocUnsafe?globalThis.Buffer.allocUnsafe(e):new Uint8Array(e)}((e=e.substring(1)).length);for(let i=0;i<e.length;i++)t[i]=e.charCodeAt(i);return t})),yt={utf8:gt,"utf-8":gt,hex:pt.base16,latin1:ft,ascii:ft,binary:ft,...pt};const mt="core",vt="wc@2:core:",wt="error",bt={database:":memory:"},_t="client_ed25519_seed",It=w.ONE_DAY,Et=w.SIX_HOURS,Pt="wss://relay.walletconnect.com",St="wss://relay.walletconnect.org",Rt="relayer_message",Ct="relayer_message_ack",xt="relayer_connect",qt="relayer_disconnect",Ot="relayer_error",Tt="relayer_connection_stalled",Nt="relayer_publish",Dt="payload",At="connect",kt="disconnect",$t="error",Mt=w.ONE_SECOND,jt="subscription_created",zt="subscription_deleted",Ut="subscription_sync",Lt="subscription_resubscribed",Ht=1e3*w.FIVE_SECONDS,Vt={wc_pairingDelete:{req:{ttl:w.ONE_DAY,prompt:!1,tag:1e3},res:{ttl:w.ONE_DAY,prompt:!1,tag:1001}},wc_pairingPing:{req:{ttl:w.THIRTY_SECONDS,prompt:!1,tag:1002},res:{ttl:w.THIRTY_SECONDS,prompt:!1,tag:1003}},unregistered_method:{req:{ttl:w.ONE_DAY,prompt:!1,tag:0},res:{ttl:w.ONE_DAY,prompt:!1,tag:0}}},Kt="pairing_create",Ft="pairing_expire",Bt="pairing_delete",Jt="pairing_ping",Wt="history_created",Gt="history_updated",Qt="history_deleted",Yt="history_sync",Zt="expirer_created",Xt="expirer_deleted",ei="expirer_expired",ti="expirer_sync",ii="verify-api",ri="https://verify.walletconnect.com",si="https://verify.walletconnect.org",ni=[ri,si];class oi{constructor(e,t){this.core=e,this.logger=t,this.keychain=new Map,this.name="keychain",this.version="0.3",this.initialized=!1,this.storagePrefix=vt,this.init=async()=>{if(!this.initialized){const e=await this.getKeyChain();typeof e<"u"&&(this.keychain=e),this.initialized=!0}},this.has=e=>(this.isInitialized(),this.keychain.has(e)),this.set=async(e,t)=>{this.isInitialized(),this.keychain.set(e,t),await this.persist()},this.get=e=>{this.isInitialized();const t=this.keychain.get(e);if(typeof t>"u"){const{message:t}=(0,n.kCb)("NO_MATCHING_KEY",`${this.name}: ${e}`);throw new Error(t)}return t},this.del=async e=>{this.isInitialized(),this.keychain.delete(e),await this.persist()},this.core=e,this.logger=(0,c.Ep)(t,this.name)}get context(){return(0,c.Fd)(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name}async setKeyChain(e){await this.core.storage.setItem(this.storageKey,(0,n.KCv)(e))}async getKeyChain(){const e=await this.core.storage.getItem(this.storageKey);return typeof e<"u"?(0,n.IPd)(e):void 0}async persist(){await this.setKeyChain(this.keychain)}isInitialized(){if(!this.initialized){const{message:e}=(0,n.kCb)("NOT_INITIALIZED",this.name);throw new Error(e)}}}class ai{constructor(e,t,i){this.core=e,this.logger=t,this.name="crypto",this.initialized=!1,this.init=async()=>{this.initialized||(await this.keychain.init(),this.initialized=!0)},this.hasKeys=e=>(this.isInitialized(),this.keychain.has(e)),this.getClientId=async()=>{this.isInitialized();return A(k(await this.getClientSeed()).publicKey)},this.generateKeyPair=()=>{this.isInitialized();const e=(0,n.Au2)();return this.setPrivateKey(e.publicKey,e.privateKey)},this.signJWT=async e=>{this.isInitialized();const t=k(await this.getClientSeed()),i=(0,n.jdp)(),r=It;return await $(i,e,r,t)},this.generateSharedKey=(e,t,i)=>{this.isInitialized();const r=this.getPrivateKey(e),s=(0,n.m$A)(r,t);return this.setSymKey(s,i)},this.setSymKey=async(e,t)=>{this.isInitialized();const i=t||(0,n.YmJ)(e);return await this.keychain.set(i,e),i},this.deleteKeyPair=async e=>{this.isInitialized(),await this.keychain.del(e)},this.deleteSymKey=async e=>{this.isInitialized(),await this.keychain.del(e)},this.encode=async(e,t,i)=>{this.isInitialized();const r=(0,n.ENt)(i),s=(0,y.u)(t);if((0,n.Q8x)(r)){const t=r.senderPublicKey,i=r.receiverPublicKey;e=await this.generateSharedKey(t,i)}const o=this.getSymKey(e),{type:a,senderPublicKey:c}=r;return(0,n.HIp)({type:a,symKey:o,message:s,senderPublicKey:c})},this.decode=async(e,t,i)=>{this.isInitialized();const r=(0,n.Llj)(t,i);if((0,n.Q8x)(r)){const t=r.receiverPublicKey,i=r.senderPublicKey;e=await this.generateSharedKey(t,i)}try{const i=this.getSymKey(e),r=(0,n.peR)({symKey:i,encoded:t});return(0,y.D)(r)}catch(l){this.logger.error(`Failed to decode message from topic: '${e}', clientId: '${await this.getClientId()}'`),this.logger.error(l)}},this.getPayloadType=e=>{const t=(0,n.vBi)(e);return(0,n.WGe)(t.type)},this.getPayloadSenderPublicKey=e=>{const t=(0,n.vBi)(e);return t.senderPublicKey?(0,M.BB)(t.senderPublicKey,n.AWt):void 0},this.core=e,this.logger=(0,c.Ep)(t,this.name),this.keychain=i||new oi(this.core,this.logger)}get context(){return(0,c.Fd)(this.logger)}async setPrivateKey(e,t){return await this.keychain.set(e,t),e}getPrivateKey(e){return this.keychain.get(e)}async getClientSeed(){let e="";try{e=this.keychain.get(_t)}catch{e=(0,n.jdp)(),await this.keychain.set(_t,e)}return function(e,t="utf8"){const i=yt[t];if(!i)throw new Error(`Unsupported encoding "${t}"`);return"utf8"!==t&&"utf-8"!==t||null==globalThis.Buffer||null==globalThis.Buffer.from?i.decoder.decode(`${i.prefix}${e}`):globalThis.Buffer.from(e,"utf8")}(e,"base16")}getSymKey(e){return this.keychain.get(e)}isInitialized(){if(!this.initialized){const{message:e}=(0,n.kCb)("NOT_INITIALIZED",this.name);throw new Error(e)}}}class ci extends class{constructor(e,t){this.logger=e,this.core=t}}{constructor(e,t){super(e,t),this.logger=e,this.core=t,this.messages=new Map,this.name="messages",this.version="0.3",this.initialized=!1,this.storagePrefix=vt,this.init=async()=>
1{if(!this.initialized){this.logger.trace("Initialized");try{const e=await this.getRelayerMessages();typeof e<"u"&&(this.messages=e),this.logger.debug(`Successfully Restored records for ${this.name}`),this.logger.trace({type:"method",method:"restore",size:this.messages.size})}catch(e){this.logger.debug(`Failed to Restore records for ${this.name}`),this.logger.error(e)}finally{this.initialized=!0}}},this.set=async(e,t)=>{this.isInitialized();const i=(0,n.rjm)(t);let r=this.messages.get(e);return typeof r>"u"&&(r={}),typeof r[i]<"u"||(r[i]=t,this.messages.set(e,r),await this.persist()),i},this.get=e=>{this.isInitialized();let t=this.messages.get(e);return typeof t>"u"&&(t={}),t},this.has=(e,t)=>{this.isInitialized();return typeof this.get(e)[(0,n.rjm)(t)]<"u"},this.del=async e=>{this.isInitialized(),this.messages.delete(e),await this.persist()},this.logger=(0,c.Ep)(e,this.name),this.core=t}get context(){return(0,c.Fd)(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name}async setRelayerMessages(e){await this.core.storage.setItem(this.storageKey,(0,n.KCv)(e))}async getRelayerMessages(){const e=await this.core.storage.getItem(this.storageKey);return typeof e<"u"?(0,n.IPd)(e):void 0}async persist(){await this.setRelayerMessages(this.messages)}isInitialized(){if(!this.initialized){const{message:e}=(0,n.kCb)("NOT_INITIALIZED",this.name);throw new Error(e)}}}class hi extends p{constructor(e,t){super(e,t),this.relayer=e,this.logger=t,this.events=new r.EventEmitter,this.name="publisher",this.queue=new Map,this.publishTimeout=(0,w.toMiliseconds)(w.ONE_MINUTE),this.failedPublishTimeout=(0,w.toMiliseconds)(w.ONE_SECOND),this.needsTransportRestart=!1,this.publish=async(e,t,i)=>{var r;this.logger.debug("Publishing Payload"),this.logger.trace({type:"method",method:"publish",params:{topic:e,message:t,opts:i}});const s=i?.ttl||Et,o=(0,n._HE)(i),a=i?.prompt||!1,c=i?.tag||0,h=i?.id||(0,z.getBigIntRpcId)().toString(),u={topic:e,message:t,opts:{ttl:s,relay:o,prompt:a,tag:c,id:h}},l=`Failed to publish payload, please try again. id:${h} tag:${c}`,p=Date.now();let d,g=1;try{for(;void 0===d;){if(Date.now()-p>this.publishTimeout)throw new Error(l);this.logger.trace({id:h,attempts:g},`publisher.publish - attempt ${g}`),d=await await(0,n.hFY)(this.rpcPublish(e,t,s,o,a,c,h).catch((e=>this.logger.warn(e))),this.publishTimeout,l),g++,d||await new Promise((e=>setTimeout(e,this.failedPublishTimeout)))}this.relayer.events.emit(Nt,u),this.logger.debug("Successfully Published Payload"),this.logger.trace({type:"method",method:"publish",params:{id:h,topic:e,message:t,opts:i}})}catch(f){if(this.logger.debug("Failed to Publish Payload"),this.logger.error(f),null!=(r=i?.internal)&&r.throwOnFailedPublish)throw f;this.queue.set(h,u)}},this.on=(e,t)=>{this.events.on(e,t)},this.once=(e,t)=>{this.events.once(e,t)},this.off=(e,t)=>{this.events.off(e,t)},this.removeListener=(e,t)=>{this.events.removeListener(e,t)},this.relayer=e,this.logger=(0,c.Ep)(t,this.name),this.registerEventListeners()}get context(){return(0,c.Fd)(this.logger)}rpcPublish(e,t,i,r,s,o,a){var c,h,u,l;const p={method:(0,n.cOS)(r.protocol).publish,params:{topic:e,message:t,ttl:i,prompt:s,tag:o},id:a};return(0,n.o8e)(null==(c=p.params)?void 0:c.prompt)&&(null==(h=p.params)||delete h.prompt),(0,n.o8e)(null==(u=p.params)?void 0:u.tag)&&(null==(l=p.params)||delete l.tag),this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"message",direction:"outgoing",request:p}),this.relayer.request(p)}removeRequestFromQueue(e){this.queue.delete(e)}checkQueue(){this.queue.forEach((async e=>{const{topic:t,message:i,opts:r}=e;await this.publish(t,i,r)}))}registerEventListeners(){this.relayer.core.heartbeat.on(a.Lx.pulse,(()=>{if(this.needsTransportRestart)return this.needsTransportRestart=!1,void this.relayer.events.emit(Tt);this.checkQueue()})),this.relayer.on(Ct,(e=>{this.removeRequestFromQueue(e.id.toString())}))}}class ui{constructor(){this.map=new Map,this.set=(e,t)=>{const i=this.get(e);this.exists(e,t)||this.map.set(e,[...i,t])},this.get=e=>this.map.get(e)||[],this.exists=(e,t)=>this.get(e).includes(t),this.delete=(e,t)=>
1{if(typeof t>"u")return void this.map.delete(e);if(!this.map.has(e))return;const i=this.get(e);if(!this.exists(e,t))return;const r=i.filter((e=>e!==t));r.length?this.map.set(e,r):this.map.delete(e)},this.clear=()=>{this.map.clear()}}get topics(){return Array.from(this.map.keys())}}var li=Object.defineProperty,pi=Object.defineProperties,di=Object.getOwnPropertyDescriptors,gi=Object.getOwnPropertySymbols,fi=Object.prototype.hasOwnProperty,yi=Object.prototype.propertyIsEnumerable,mi=(e,t,i)=>t in e?li(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,vi=(e,t)=>{for(var i in t||(t={}))fi.call(t,i)&&mi(e,i,t[i]);if(gi)for(var i of gi(t))yi.call(t,i)&&mi(e,i,t[i]);return e},wi=(e,t)=>pi(e,di(t));class bi extends g{constructor(e,t){super(e,t),this.relayer=e,this.logger=t,this.subscriptions=new Map,this.topicMap=new ui,this.events=new r.EventEmitter,this.name="subscription",this.version="0.3",this.pending=new Map,this.cached=[],this.initialized=!1,this.pendingSubscriptionWatchLabel="pending_sub_watch_label",this.pollingInterval=20,this.storagePrefix=vt,this.subscribeTimeout=(0,w.toMiliseconds)(w.ONE_MINUTE),this.restartInProgress=!1,this.batchSubscribeTopicsLimit=500,this.pendingBatchMessages=[],this.init=async()=>{this.initialized||(this.logger.trace("Initialized"),this.registerEventListeners(),this.clientId=await this.relayer.core.crypto.getClientId())},this.subscribe=async(e,t)=>{await this.restartToComplete(),this.isInitialized(),this.logger.debug("Subscribing Topic"),this.logger.trace({type:"method",method:"subscribe",params:{topic:e,opts:t}});try{const i=(0,n._HE)(t),r={topic:e,relay:i};this.pending.set(e,r);const s=await this.rpcSubscribe(e,i);return"string"==typeof s&&(this.onSubscribe(s,r),this.logger.debug("Successfully Subscribed Topic"),this.logger.trace({type:"method",method:"subscribe",params:{topic:e,opts:t}})),s}catch(i){throw this.logger.debug("Failed to Subscribe Topic"),this.logger.error(i),i}},this.unsubscribe=async(e,t)=>{await this.restartToComplete(),this.isInitialized(),typeof t?.id<"u"?await this.unsubscribeById(e,t.id,t):await this.unsubscribeByTopic(e,t)},this.isSubscribed=async e=>{if(this.topics.includes(e))return!0;const t=`${this.pendingSubscriptionWatchLabel}_${e}`;return await new Promise(((i,r)=>{const s=new w.Watch;s.start(t);const n=setInterval((()=>{!this.pending.has(e)&&this.topics.includes(e)&&(clearInterval(n),s.stop(t),i(!0)),s.elapsed(t)>=Ht&&(clearInterval(n),s.stop(t),r(new Error("Subscription resolution timeout")))}),this.pollingInterval)})).catch((()=>!1))},this.on=(e,t)=>{this.events.on(e,t)},this.once=(e,t)=>{this.events.once(e,t)},this.off=(e,t)=>{this.events.off(e,t)},this.removeListener=(e,t)=>{this.events.removeListener(e,t)},this.start=async()=>{await this.onConnect()},this.stop=async()=>{await this.onDisconnect()},this.restart=async()=>{this.restartInProgress=!0,await this.restore(),await this.reset(),this.restartInProgress=!1},this.relayer=e,this.logger=(0,c.Ep)(t,this.name),this.clientId=""}get context(){return(0,c.Fd)(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.relayer.core.customStoragePrefix+"//"+this.name}get length(){return this.subscriptions.size}get ids(){return Array.from(this.subscriptions.keys())}get values(){return Array.from(this.subscriptions.values())}get topics(){return this.topicMap.topics}hasSubscription(e,t){let i=!1;try{i=this.getSubscription(e).topic===t}catch{}return i}onEnable(){this.cached=[],this.initialized=!0}onDisable(){this.cached=this.values,this.subscriptions.clear(),this.topicMap.clear()}async unsubscribeByTopic(e,t){const i=this.topicMap.get(e);await Promise.all(i.map((async i=>await this.unsubscribeById(e,i,t))))}async unsubscribeById(e,t,i){this.logger.debug("Unsubscribing Topic"),this.logger.trace({type:"method",method:"unsubscribe",params:{topic:e,id:t,opts:i}});try{const r=(0,n._HE)(i);await this.rpcUnsubscribe(e,t,r);const s=(0,n.D6H)("USER_DISCONNECTED",`${this.name}, ${e}`);await this.onUnsubscribe(e,t,s),this.logger.debug("Successfully Unsubscribed Topic"),this.logger.trace({type:"method",method:"unsubscribe",params:{topic:e,id:t,opts:i}})}catch(r){throw this.logger.debug("Failed to Unsubscribe Topic"),this.logger.error(r),r}}async rpcSubscribe(e,t){const i={method:(0,n.cOS)(t.protocol).subscribe,params:{topic:e}};this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:i});try{return await await(0,n.hFY)(this.relayer.request(i).catch((e=>this.logger.warn(e))),this.subscribeTimeout)?(0,n.rjm)(e+this.clientId):null}catch{this.logger.debug("Outgoing Relay Subscribe Payload stalled"),this.relayer.events.emit(Tt)}return null}async rpcBatchSubscribe(e){if(!e.length)return;const t=e[0].relay,i={method:(0,n.cOS)(t.protocol).batchSubscribe,params:{topics:e.map((e=>e.topic))}};this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:i});try{return await await(0,n.hFY)(this.relayer.request(i).catch((e=>this.logger.warn(e))),this.subscribeTimeout)}catch{this.relayer.events.emit(Tt)}}async rpcBatchFetchMessages(e){if(!e.length)return;const t=e[0].relay,i={method:(0,n.cOS)(t.protocol).batchFetchMessages,params:{topics:e.map((e=>e.topic))}};let r;this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:i});try{r=await await(0,n.hFY)(this.relayer.request(i).catch((e=>this.logger.warn(e))),this.subscribeTimeout)}catch{this.relayer.events.emit(Tt)}return r}rpcUnsubscribe(e,t,i){const r={method:(0,n.cOS)(i.protocol).unsubscribe,params:{topic:e,id:t}};return this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:r}),this.relayer.request(r)}onSubscribe(e,t){this.setSubscription(e,wi(vi({},t),{id:e})),this.pending.delete(t.topic)}onBatchSubscribe(e){e.length&&e.forEach((e=>{this.setSubscription(e.id,vi({},e)),this.pending.delete(e.topic)}))}async onUnsubscribe(e,t,i){this.events.removeAllListeners(t),this.hasSubscription(t,e)&&this.deleteSubscription(t,i),await this.relayer.messages.del(e)}
1async setRelayerSubscriptions(e){await this.relayer.core.storage.setItem(this.storageKey,e)}async getRelayerSubscriptions(){return await this.relayer.core.storage.getItem(this.storageKey)}setSubscription(e,t){this.logger.debug("Setting subscription"),this.logger.trace({type:"method",method:"setSubscription",id:e,subscription:t}),this.addSubscription(e,t)}addSubscription(e,t){this.subscriptions.set(e,vi({},t)),this.topicMap.set(t.topic,e),this.events.emit(jt,t)}getSubscription(e){this.logger.debug("Getting subscription"),this.logger.trace({type:"method",method:"getSubscription",id:e});const t=this.subscriptions.get(e);if(!t){const{message:t}=(0,n.kCb)("NO_MATCHING_KEY",`${this.name}: ${e}`);throw new Error(t)}return t}deleteSubscription(e,t){this.logger.debug("Deleting subscription"),this.logger.trace({type:"method",method:"deleteSubscription",id:e,reason:t});const i=this.getSubscription(e);this.subscriptions.delete(e),this.topicMap.delete(i.topic,e),this.events.emit(zt,wi(vi({},i),{reason:t}))}async persist(){await this.setRelayerSubscriptions(this.values),this.events.emit(Ut)}async reset(){if(this.cached.length){const e=Math.ceil(this.cached.length/this.batchSubscribeTopicsLimit);for(let t=0;t<e;t++){const e=this.cached.splice(0,this.batchSubscribeTopicsLimit);await this.batchFetchMessages(e),await this.batchSubscribe(e)}}this.events.emit(Lt)}async restore(){try{const e=await this.getRelayerSubscriptions();if(typeof e>"u"||!e.length)return;if(this.subscriptions.size){const{message:e}=(0,n.kCb)("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(e),this.logger.error(`${this.name}: ${JSON.stringify(this.values)}`),new Error(e)}this.cached=e,this.logger.debug(`Successfully Restored subscriptions for ${this.name}`),this.logger.trace({type:"method",method:"restore",subscriptions:this.values})}catch(e){this.logger.debug(`Failed to Restore subscriptions for ${this.name}`),this.logger.error(e)}}async batchSubscribe(e){if(!e.length)return;const t=await this.rpcBatchSubscribe(e);(0,n.qt8)(t)&&this.onBatchSubscribe(t.map(((t,i)=>wi(vi({},e[i]),{id:t}))))}async batchFetchMessages(e){if(!e.length)return;this.logger.trace(`Fetching batch messages for ${e.length} subscriptions`);const t=await this.rpcBatchFetchMessages(e);t&&t.messages&&(this.pendingBatchMessages=this.pendingBatchMessages.concat(t.messages))}async onConnect(){await this.restart(),this.onEnable()}onDisconnect(){this.onDisable()}async checkPending(){if(!this.initialized||!this.relayer.connected)return;const e=[];this.pending.forEach((t=>{e.push(t)})),await this.batchSubscribe(e),this.pendingBatchMessages.length&&(await this.relayer.handleBatchMessageEvents(this.pendingBatchMessages),this.pendingBatchMessages=[])}registerEventListeners(){this.relayer.core.heartbeat.on(a.Lx.pulse,(async()=>{await this.checkPending()})),this.events.on(jt,(async e=>{const t=jt;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,data:e}),await this.persist()})),this.events.on(zt,(async e=>{const t=zt;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,data:e}),await this.persist()}))}isInitialized(){if(!this.initialized){const{message:e}=(0,n.kCb)("NOT_INITIALIZED",this.name);throw new Error(e)}}async restartToComplete(){this.restartInProgress&&await new Promise((e=>{const t=setInterval((()=>{this.restartInProgress||(clearInterval(t),e())}),this.pollingInterval)}))}}var _i=Object.defineProperty,Ii=Object.getOwnPropertySymbols,Ei=Object.prototype.hasOwnProperty,Pi=Object.prototype.propertyIsEnumerable,Si=(e,t,i)=>t in e?_i(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i;class Ri extends d{constructor(e){super(e),this.protocol="wc",this.version=2,this.events=new r.EventEmitter,this.name="relayer",this.transportExplicitlyClosed=!1,this.initialized=!1,this.connectionAttemptInProgress=!1,this.connectionStatusPollingInterval=20,this.staleConnectionErrors=["socket hang up","stalled","interrupted"],this.hasExperiencedNetworkDisruption=!1,this.requestsInFlight=new Map,this.heartBeatTimeout=(0,w.toMiliseconds)(w.THIRTY_SECONDS+w.ONE_SECOND),this.request=async e=>{var t,i;this.logger.debug("Publishing Request Payload");const r=e.id||(0,z.getBigIntRpcId)().toString();await this.toEstablishConnection();try{const s=this.provider.request(e);this.requestsInFlight.set(r,{promise:s,request:e}),this.logger.trace({id:r,method:e.method,topic:null==(t=e.params)?void 0:t.topic},"relayer.request - attempt to publish...");const n=await new Promise((async(e,t)=>{const i=()=>{t(new Error(`relayer.request - publish interrupted, id: ${r}`))};this.provider.on(kt,i);const n=await s;this.provider.off(kt,i),e(n)}));return this.logger.trace({id:r,method:e.method,topic:null==(i=e.params)?void 0:i.topic},"relayer.request - published"),n}catch(u){throw this.logger.debug(`Failed to Publish Request: ${r}`),u}finally{this.requestsInFlight.delete(r)}},this.resetPingTimeout=()=>{if((0,n.UGU)())try{clearTimeout(this.pingTimeout),this.pingTimeout=setTimeout((()=>{var e,t,i;null==(i=null==(t=null==(e=this.provider)?void 0:e.connection)?void 0:t.socket)||i.terminate()}),this.heartBeatTimeout)}catch(e){this.logger.warn(e)}},this.onPayloadHandler=e=>{this.onProviderPayload(e),this.resetPingTimeout()},this.onConnectHandler=()=>{this.startPingTimeout(),this.events.emit(xt)},this.onDisconnectHandler=()=>{this.onProviderDisconnect()},this.onProviderErrorHandler=e=>{this.logger.error(e),this.events.emit(Ot,e),this.logger.info("Fatal socket error received, closing transport"),this.transportClose()},this.registerProviderListeners=()=>{this.provider.on(Dt,this.onPayloadHandler),this.provider.on(At,this.onConnectHandler),this.provider.on(kt,this.onDisconnectHandler),this.provider.on($t,this.onProviderErrorHandler)},this.core=e.core,this.logger=typeof e.logger<"u"&&"string"!=typeof e.logger?(0,c.Ep)(e.logger,this.name):(0,c.gw)((0,c.jI)({level:e.logger||"error"})),this.messages=new ci(this.logger,e.core),this.subscriber=new bi(this,this.logger),this.publisher=new hi(this,this.logger),this.relayUrl=e?.relayUrl||Pt,this.projectId=e.projectId,this.bundleId=(0,n.X_B)(),this.provider={}}
1async init(){this.logger.trace("Initialized"),this.registerEventListeners(),await Promise.all([this.messages.init(),this.subscriber.init()]);try{await this.transportOpen()}catch{this.logger.warn(`Connection via ${this.relayUrl} failed, attempting to connect via failover domain ${St}...`),await this.restartTransport(St)}this.initialized=!0,setTimeout((async()=>{0===this.subscriber.topics.length&&0===this.subscriber.pending.size&&(this.logger.info("No topics subscribed to after init, closing transport"),await this.transportClose(),this.transportExplicitlyClosed=!1)}),1e4)}get context(){return(0,c.Fd)(this.logger)}get connected(){var e,t,i;return 1===(null==(i=null==(t=null==(e=this.provider)?void 0:e.connection)?void 0:t.socket)?void 0:i.readyState)}get connecting(){var e,t,i;return 0===(null==(i=null==(t=null==(e=this.provider)?void 0:e.connection)?void 0:t.socket)?void 0:i.readyState)}async publish(e,t,i){this.isInitialized(),await this.publisher.publish(e,t,i),await this.recordMessageEvent({topic:e,message:t,publishedAt:Date.now()})}async subscribe(e,t){var i;this.isInitialized();let r,s=(null==(i=this.subscriber.topicMap.get(e))?void 0:i[0])||"";const n=t=>{t.topic===e&&(this.subscriber.off(jt,n),r())};return await Promise.all([new Promise((e=>{r=e,this.subscriber.on(jt,n)})),new Promise((async i=>{s=await this.subscriber.subscribe(e,t)||s,i()}))]),s}async unsubscribe(e,t){this.isInitialized(),await this.subscriber.unsubscribe(e,t)}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}async transportDisconnect(){if(!this.hasExperiencedNetworkDisruption&&this.connected&&this.requestsInFlight.size>0)try{await Promise.all(Array.from(this.requestsInFlight.values()).map((e=>e.promise)))}catch(e){this.logger.warn(e)}this.hasExperiencedNetworkDisruption||this.connected?await(0,n.hFY)(this.provider.disconnect(),2e3,"provider.disconnect()").catch((()=>this.onProviderDisconnect())):this.onProviderDisconnect()}async transportClose(){this.transportExplicitlyClosed=!0,await this.transportDisconnect()}async transportOpen(e){await this.confirmOnlineStateOrThrow(),e&&e!==this.relayUrl&&(this.relayUrl=e,await this.transportDisconnect()),await this.createProvider(),this.connectionAttemptInProgress=!0,this.transportExplicitlyClosed=!1;try{await new Promise((async(e,t)=>{const i=()=>{this.provider.off(kt,i),t(new Error("Connection interrupted while trying to subscribe"))};this.provider.on(kt,i),await(0,n.hFY)(this.provider.connect(),(0,w.toMiliseconds)(w.ONE_MINUTE),`Socket stalled when trying to connect to ${this.relayUrl}`).catch((e=>{t(e)})),await this.subscriber.start(),this.hasExperiencedNetworkDisruption=!1,e()}))}catch(t){this.logger.error(t);const e=t;if(this.hasExperiencedNetworkDisruption=!0,!this.isConnectionStalled(e.message))throw t}finally{this.connectionAttemptInProgress=!1}}async restartTransport(e){this.connectionAttemptInProgress||(this.relayUrl=e||this.relayUrl,await this.confirmOnlineStateOrThrow(),await this.transportClose(),await this.transportOpen())}async confirmOnlineStateOrThrow(){if(!(await(0,n.Ggh)()))throw new Error("No internet connection detected. Please restart your network and try again.")}async handleBatchMessageEvents(e){if(0===e?.length)return void this.logger.trace("Batch message events is empty. Ignoring...");const t=e.sort(((e,t)=>e.publishedAt-t.publishedAt));this.logger.trace(`Batch of ${t.length} message events sorted`);for(const r of t)try{await this.onMessageEvent(r)}catch(i){this.logger.warn(i)}this.logger.trace(`Batch of ${t.length} message events processed`)}startPingTimeout(){var e,t,i,r,s;if((0,n.UGU)())try{null!=(t=null==(e=this.provider)?void 0:e.connection)&&t.socket&&(null==(s=null==(r=null==(i=this.provider)?void 0:i.connection)?void 0:r.socket)||s.once("ping",(()=>{this.resetPingTimeout()}))),this.resetPingTimeout()}catch(u){this.logger.warn(u)}}isConnectionStalled(e){return this.staleConnectionErrors.some((t=>e.includes(t)))}async createProvider(){this.provider.connection&&this.unregisterProviderListeners();const e=await this.core.crypto.signJWT(this.relayUrl);this.provider=new j.r(new H((0,n.$0m)({sdkVersion:"2.13.0",protocol:this.protocol,version:this.version,relayUrl:this.relayUrl,projectId:this.projectId,auth:e,useOnCloseEvent:!0,bundleId:this.bundleId}))),this.registerProviderListeners()}async recordMessageEvent(e){const{topic:t,message:i}=e;await this.messages.set(t,i)}async shouldIgnoreMessageEvent(e){const{topic:t,message:i}=e;if(!i||0===i.length)return this.logger.debug(`Ignoring invalid/empty message: ${i}`),!0;if(!(await this.subscriber.isSubscribed(t)))return this.logger.debug(`Ignoring message for non-subscribed topic ${t}`),!0;const r=this.messages.has(t,i);return r&&this.logger.debug(`Ignoring duplicate message: ${i}`),r}async onProviderPayload(e){if(this.logger.debug("Incoming Relay Payload"),this.logger.trace({type:"payload",direction:"incoming",payload:e}),(0,z.isJsonRpcRequest)(e)){if(!e.method.endsWith("_subscription"))return;const t=e.params,{topic:i,message:r,publishedAt:s}=t.data,n={topic:i,message:r,publishedAt:s};this.logger.debug("Emitting Relayer Payload"),this.logger.trace(((e,t)=>{for(var i in t||(t={}))Ei.call(t,i)&&Si(e,i,t[i]);if(Ii)for(var i of Ii(t))Pi.call(t,i)&&Si(e,i,t[i]);return e})({type:"event",event:t.id},n)),this.events.emit(t.id,n),await this.acknowledgePayload(e),await this.onMessageEvent(n)}else(0,z.isJsonRpcResponse)(e)&&this.events.emit(Ct,e)}async onMessageEvent(e){await this.shouldIgnoreMessageEvent(e)||(this.events.emit(Rt,e),await this.recordMessageEvent(e))}async acknowledgePayload(e){const t=(0,z.formatJsonRpcResult)(e.id,!0);await this.provider.connection.send(t)}unregisterProviderListeners(){this.provider.off(Dt,this.onPayloadHandler),this.provider.off(At,this.onConnectHandler),this.provider.off(kt,this.onDisconnectHandler),this.provider.off($t,this.onProviderErrorHandler),clearTimeout(this.pingTimeout)}async registerEventListeners(){let e=await(0,n.Ggh)();(0,n.uwg)((async t=>{e!==t&&(e=t,t?await this.restartTransport().catch((e=>this.logger.error(e))):(this.hasExperiencedNetworkDisruption=!0,await this.transportDisconnect(),this.transportExplicitlyClosed=!1))}))}async onProviderDisconnect(){await this.subscriber.stop(),this.requestsInFlight.clear(),clearTimeout(this.pingTimeout),this.events.emit(qt),this.connectionAttemptInProgress=!1,!this.transportExplicitlyClosed&&setTimeout((async()=>{await this.transportOpen().catch((e=>this.logger.error(e)))}),(0,w.toMiliseconds)(Mt))}isInitialized(){if(!this.initialized){const{message:e}=(0,n.kCb)("NOT_INITIALIZED",this.name);throw new Error(e)}}async toEstablishConnection(){await this.confirmOnlineStateOrThrow(),!this.connected&&(this.connectionAttemptInProgress&&await new Promise((e=>{const t=setInterval((()=>{this.connected&&(clearInterval(t),e())}),this.connectionStatusPollingInterval)})),await this.transportOpen())}}var Ci=Object.defineProperty,xi=Object.getOwnPropertySymbols,qi=Object.prototype.hasOwnProperty,Oi=Object.prototype.propertyIsEnumerable,Ti=(e,t,i)=>t in e?Ci(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,Ni=(e,t)=>{for(var i in t||(t={}))qi.call(t,i)&&Ti(e,i,t[i]);if(xi)for(var i of xi(t))Oi.call(t,i)&&Ti(e,i,t[i]);return e};class Di extends class{constructor(e,t,i,r){this.core=e,this.logger=t,this.name=i}}{constructor(e,t,i,r=vt,s){super(e,t,i,r),this.core=e,this.logger=t,this.name=i,this.map=new Map,this.version="0.3",this.cached=[],this.initialized=!1,this.storagePrefix=vt,this.recentlyDeleted=[],this.recentlyDeletedLimit=200,this.init=async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(
1),this.cached.forEach((e=>{this.getKey&&null!==e&&!(0,n.o8e)(e)?this.map.set(this.getKey(e),e):(0,n.xWS)(e)?this.map.set(e.id,e):(0,n.h1R)(e)&&this.map.set(e.topic,e)})),this.cached=[],this.initialized=!0)},this.set=async(e,t)=>{this.isInitialized(),this.map.has(e)?await this.update(e,t):(this.logger.debug("Setting value"),this.logger.trace({type:"method",method:"set",key:e,value:t}),this.map.set(e,t),await this.persist())},this.get=e=>(this.isInitialized(),this.logger.debug("Getting value"),this.logger.trace({type:"method",method:"get",key:e}),this.getData(e)),this.getAll=e=>(this.isInitialized(),e?this.values.filter((t=>Object.keys(e).every((i=>K()(t[i],e[i]))))):this.values),this.update=async(e,t)=>{this.isInitialized(),this.logger.debug("Updating value"),this.logger.trace({type:"method",method:"update",key:e,update:t});const i=Ni(Ni({},this.getData(e)),t);this.map.set(e,i),await this.persist()},this.delete=async(e,t)=>{this.isInitialized(),this.map.has(e)&&(this.logger.debug("Deleting value"),this.logger.trace({type:"method",method:"delete",key:e,reason:t}),this.map.delete(e),this.addToRecentlyDeleted(e),await this.persist())},this.logger=(0,c.Ep)(t,this.name),this.storagePrefix=r,this.getKey=s}get context(){return(0,c.Fd)(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name}get length(){return this.map.size}get keys(){return Array.from(this.map.keys())}get values(){return Array.from(this.map.values())}addToRecentlyDeleted(e){this.recentlyDeleted.push(e),this.recentlyDeleted.length>=this.recentlyDeletedLimit&&this.recentlyDeleted.splice(0,this.recentlyDeletedLimit/2)}async setDataStore(e){await this.core.storage.setItem(this.storageKey,e)}async getDataStore(){return await this.core.storage.getItem(this.storageKey)}getData(e){const t=this.map.get(e);if(!t){if(this.recentlyDeleted.includes(e)){const{message:t}=(0,n.kCb)("MISSING_OR_INVALID",`Record was recently deleted - ${this.name}: ${e}`);throw this.logger.error(t),new Error(t)}const{message:t}=(0,n.kCb)("NO_MATCHING_KEY",`${this.name}: ${e}`);throw this.logger.error(t),new Error(t)}return t}async persist(){await this.setDataStore(this.values)}async restore(){try{const e=await this.getDataStore();if(typeof e>"u"||!e.length)return;if(this.map.size){const{message:e}=(0,n.kCb)("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(e),new Error(e)}this.cached=e,this.logger.debug(`Successfully Restored value for ${this.name}`),this.logger.trace({type:"method",method:"restore",value:this.values})}catch(e){this.logger.debug(`Failed to Restore value for ${this.name}`),this.logger.error(e)}}isInitialized(){if(!this.initialized){const{message:e}=(0,n.kCb)("NOT_INITIALIZED",this.name);throw new Error(e)}}}class Ai{constructor(e,t){this.core=e,this.logger=t,this.name="pairing",this.version="0.3",this.events=new(s()),this.initialized=!1,this.storagePrefix=vt,this.ignoredPayloadTypes=[n.rVF],this.registeredMethods=[],this.init=async()=>{this.initialized||(await this.pairings.init(),await this.cleanup(),this.registerRelayerEvents(),this.registerExpirerEvents(),this.initialized=!0,this.logger.trace("Initialized"))},this.register=({methods:e})=>{this.isInitialized(),this.registeredMethods=[...new Set([...this.registeredMethods,...e])]},this.create=async e=>{this.isInitialized();const t=(0,n.jdp)(),i=await this.core.crypto.setSymKey(t),r=(0,n.gn4)(w.FIVE_MINUTES),s={protocol:"irn"},o={topic:i,expiry:r,relay:s,active:!1},a=(0,n.Bvr)({protocol:this.core.protocol,version:this.core.version,topic:i,symKey:t,relay:s,expiryTimestamp:r,methods:e?.methods});return this.core.expirer.set(i,r),await this.pairings.set(i,o),await this.core.relayer.subscribe(i),{topic:i,uri:a}},this.pair=async e=>{this.isInitialized(),this.isValidPair(e);const{topic:t,symKey:i,relay:r,expiryTimestamp:s,methods:o}=(0,n.heJ)(e.uri);let a;if(this.pairings.keys.includes(t)&&(a=this.pairings.get(t),a.active))throw new Error(`Pairing already exists: ${t}. Please try again with a new connection URI.`);const c=s||(0,n.gn4)(w.FIVE_MINUTES),h={topic:t,relay:r,expiry:c,active:!1,methods:o};return this.core.expirer.set(t,c),await this.pairings.set(t,h),e.activatePairing&&await this.activate({topic:t}),this.events.emit(Kt,h),this.core.crypto.keychain.has(t)||await this.core.crypto.setSymKey(i,t),await this.core.relayer.subscribe(t,{relay:r}),h},this.activate=async({topic:e})=>{this.isInitialized();const t=(0,n.gn4)(w.THIRTY_DAYS);this.core.expirer.set(e,t),await this.pairings.update(e,{active:!0,expiry:t})},this.ping=async e=>{this.isInitialized(),await this.isValidPing(e);const{topic:t}=e;if(this.pairings.keys.includes(t)){const e=await this.sendRequest(t,"wc_pairingPing",{}),{done:i,resolve:r,reject:s}=(0,n.H1S)();this.events.once((0,n.E0T)("pairing_ping",e),(({error:e})=>{e?s(e):r()})),await i()}},this.updateExpiry=async({topic:e,expiry:t})=>{this.isInitialized(),await this.pairings.update(e,{expiry:t})},this.updateMetadata=async({topic:e,metadata:t})=>{this.isInitialized(),await this.pairings.update(e,{peerMetadata:t})},this.getPairings=()=>(this.isInitialized(),this.pairings.values),this.disconnect=async e=>{this.isInitialized(),await this.isValidDisconnect(e);const{topic:t}=e;this.pairings.keys.includes(t)&&(await this.sendRequest(t,"wc_pairingDelete",(0,n.D6H)("USER_DISCONNECTED")),await this.deletePairing(t))},this.sendRequest=async(e,t,i)=>{const r=(0,z.formatJsonRpcRequest)(t,i),s=await this.core.crypto.encode(e,r),n=Vt[t].req;return this.core.history.set(e,r),this.core.relayer.publish(e,s,n),r.id},this.sendResult=async(e,t,i)=>{const r=(0,z.formatJsonRpcResult)(e,i),s=await this.core.crypto.encode(t,r),n=await this.core.history.get(t,e),o=Vt[n.request.method].res;await this.core.relayer.publish(t,s,o),await this.core.history.resolve(r)},this.sendError=async(e,t,i)=>{const r=(0,z.formatJsonRpcError)(e,i),s=await this.core.crypto.encode(t,r),n=await this.core.history.get(t,e),o=Vt[n.request.method]?Vt[n.request.method].res:Vt.unregistered_method.res;await this.core.relayer.publish(t,s,o),await this.core.history.resolve(r)},this.deletePairing=async(e,t)=>{await this.core.relayer.unsubscribe(e),await Promise.all([this.pairings.delete(e,(0,n.D6H)("USER_DISCONNECTED")),this.core.crypto.deleteSymKey(e),t?Promise.resolve():this.core.expirer.del(e)])},this.cleanup=async()=>{const e=this.pairings.getAll().filter((e=>(0,n.BwD)(e.expiry)));await Promise.all(e.map((e=>this.deletePairing(e.topic))))},this.onRelayEventRequest=e=>{const{topic:t,payload:i}=e;switch(i.method){case"wc_pairingPing":return this.onPairingPingRequest(t,i);case"wc_pairingDelete":return this.onPairingDeleteRequest(t,i);default:return this.onUnknownRpcMethodRequest(t,i)}},this.onRelayEventResponse=async e=>{const{topic:t,payload:i}=e,r=(await this.core.history.get(t,i.id)).request.method;return"wc_pairingPing"===r?this.onPairingPingResponse(t,i):this.onUnknownRpcMethodResponse(r)},this.onPairingPingRequest=async(e,t)=>{const{id:i}=t;try{this.isValidPing({topic:e}),await this.sendResult(i,e,!0),this.events.emit(Jt,{id:i,topic:e})}catch(u){await this.sendError(i,e,u),this.logger.error(u)}},this.onPairingPingResponse=(e,t)=>{const{id:i}=t;setTimeout((()=>{(0,z.isJsonRpcResult)(t)?this.events.emit((0,n.E0T)("pairing_ping",i),{}):(0,z.isJsonRpcError)(t)&&this.events.emit((0,n.E0T)("pairing_ping",i),{error:t.error})}),500)},this.onPairingDeleteRequest=async(e,t)=>{const{id:i}=t;try{this.isValidDisconnect({topic:e}),await this.deletePairing(e),this.events.emit(Bt,{id:i,topic:e})}catch(u){await this.sendError(i,e,u),this.logger.error(u)}},this.onUnknownRpcMethodRequest=async(e,t)=>{const{id:i,method:r}=t;try{if(this.registeredMethods.includes(r))return;const t=(0,n.D6H)("WC_METHOD_UNSUPPORTED",r);await this.sendError(i,e,t),this.logger.error(t)}catch(s){await this.sendError(i,e,s),this.logger.error(s)}},this.onUnknownRpcMethodResponse=e=>{this.registeredMethods.includes(e)||this.logger.error((0,n.D6H)("WC_METHOD_UNSUPPORTED",e))},this.isValidPair=e=>{var t;if(!(0,n.EJd)(e)){const{message:t}=(0,n.kCb)("MISSING_OR_INVALID",`pair() params: ${e}`);throw new Error(t)}
1if(!(0,n.jvJ)(e.uri)){const{message:t}=(0,n.kCb)("MISSING_OR_INVALID",`pair() uri: ${e.uri}`);throw new Error(t)}const i=(0,n.heJ)(e.uri);if(null==(t=i?.relay)||!t.protocol){const{message:e}=(0,n.kCb)("MISSING_OR_INVALID","pair() uri#relay-protocol");throw new Error(e)}if(null==i||!i.symKey){const{message:e}=(0,n.kCb)("MISSING_OR_INVALID","pair() uri#symKey");throw new Error(e)}if(null!=i&&i.expiryTimestamp&&(0,w.toMiliseconds)(i?.expiryTimestamp)<Date.now()){const{message:e}=(0,n.kCb)("EXPIRED","pair() URI has expired. Please try again with a new connection URI.");throw new Error(e)}},this.isValidPing=async e=>{if(!(0,n.EJd)(e)){const{message:t}=(0,n.kCb)("MISSING_OR_INVALID",`ping() params: ${e}`);throw new Error(t)}const{topic:t}=e;await this.isValidPairingTopic(t)},this.isValidDisconnect=async e=>{if(!(0,n.EJd)(e)){const{message:t}=(0,n.kCb)("MISSING_OR_INVALID",`disconnect() params: ${e}`);throw new Error(t)}const{topic:t}=e;await this.isValidPairingTopic(t)},this.isValidPairingTopic=async e=>{if(!(0,n.M_r)(e,!1)){const{message:t}=(0,n.kCb)("MISSING_OR_INVALID",`pairing topic should be a string: ${e}`);throw new Error(t)}if(!this.pairings.keys.includes(e)){const{message:t}=(0,n.kCb)("NO_MATCHING_KEY",`pairing topic doesn't exist: ${e}`);throw new Error(t)}if((0,n.BwD)(this.pairings.get(e).expiry)){await this.deletePairing(e);const{message:t}=(0,n.kCb)("EXPIRED",`pairing topic: ${e}`);throw new Error(t)}},this.core=e,this.logger=(0,c.Ep)(t,this.name),this.pairings=new Di(this.core,this.logger,this.name,this.storagePrefix)}get context(){return(0,c.Fd)(this.logger)}isInitialized(){if(!this.initialized){const{message:e}=(0,n.kCb)("NOT_INITIALIZED",this.name);throw new Error(e)}}registerRelayerEvents(){this.core.relayer.on(Rt,(async e=>{const{topic:t,message:i}=e;if(!this.pairings.keys.includes(t)||this.ignoredPayloadTypes.includes(this.core.crypto.getPayloadType(i)))return;const r=await this.core.crypto.decode(t,i);try{(0,z.isJsonRpcRequest)(r)?(this.core.history.set(t,r),this.onRelayEventRequest({topic:t,payload:r})):(0,z.isJsonRpcResponse)(r)&&(await this.core.history.resolve(r),await this.onRelayEventResponse({topic:t,payload:r}),this.core.history.delete(t,r.id))}catch(s){this.logger.error(s)}}))}registerExpirerEvents(){this.core.expirer.on(ei,(async e=>{const{topic:t}=(0,n.iPz)(e.target);t&&this.pairings.keys.includes(t)&&(await this.deletePairing(t,!0),this.events.emit(Ft,{topic:t}))}))}}class ki extends l{constructor(e,t){super(e,t),this.core=e,this.logger=t,this.records=new Map,this.events=new r.EventEmitter,this.name="history",this.version="0.3",this.cached=[],this.initialized=!1,this.storagePrefix=vt,this.init=async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach((e=>this.records.set(e.id,e))),this.cached=[],this.registerEventListeners(),this.initialized=!0)},this.set=(e,t,i)=>{if(this.isInitialized(),this.logger.debug("Setting JSON-RPC request history record"),this.logger.trace({type:"method",method:"set",topic:e,request:t,chainId:i}),this.records.has(t.id))return;const r={id:t.id,topic:e,request:{method:t.method,params:t.params||null},chainId:i,expiry:(0,n.gn4)(w.THIRTY_DAYS)};this.records.set(r.id,r),this.persist(),this.events.emit(Wt,r)},this.resolve=async e=>{if(this.isInitialized(),this.logger.debug("Updating JSON-RPC response history record"),this.logger.trace({type:"method",method:"update",response:e}),!this.records.has(e.id))return;const t=await this.getRecord(e.id);typeof t.response>"u"&&(t.response=(0,z.isJsonRpcError)(e)?{error:e.error}:{result:e.result},this.records.set(t.id,t),this.persist(),this.events.emit(Gt,t))},this.get=async(e,t)=>(this.isInitialized(),this.logger.debug("Getting record"),this.logger.trace({type:"method",method:"get",topic:e,id:t}),await this.getRecord(t)),this.delete=(e,t)=>{this.isInitialized(),this.logger.debug("Deleting record"),this.logger.trace({type:"method",method:"delete",id:t}),this.values.forEach((i=>{if(i.topic===e){if(typeof t<"u"&&i.id!==t)return;this.records.delete(i.id),this.events.emit(Qt,i)}})),this.persist()},this.exists=async(e,t)=>(this.isInitialized(),!!this.records.has(t)&&(await this.getRecord(t)).topic===e),this.on=(e,t)=>{this.events.on(e,t)},this.once=(e,t)=>{this.events.once(e,t)},this.off=(e,t)=>{this.events.off(e,t)},this.removeListener=(e,t)=>{this.events.removeListener(e,t)},this.logger=(0,c.Ep)(t,this.name)}get context(){return(0,c.Fd)(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name}get size(){return this.records.size}get keys(){return Array.from(this.records.keys())}get values(){return Array.from(this.records.values())}get pending(){const e=[];
1return this.values.forEach((t=>{if(typeof t.response<"u")return;const i={topic:t.topic,request:(0,z.formatJsonRpcRequest)(t.request.method,t.request.params,t.id),chainId:t.chainId};return e.push(i)})),e}async setJsonRpcRecords(e){await this.core.storage.setItem(this.storageKey,e)}async getJsonRpcRecords(){return await this.core.storage.getItem(this.storageKey)}getRecord(e){this.isInitialized();const t=this.records.get(e);if(!t){const{message:t}=(0,n.kCb)("NO_MATCHING_KEY",`${this.name}: ${e}`);throw new Error(t)}return t}async persist(){await this.setJsonRpcRecords(this.values),this.events.emit(Yt)}async restore(){try{const e=await this.getJsonRpcRecords();if(typeof e>"u"||!e.length)return;if(this.records.size){const{message:e}=(0,n.kCb)("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(e),new Error(e)}this.cached=e,this.logger.debug(`Successfully Restored records for ${this.name}`),this.logger.trace({type:"method",method:"restore",records:this.values})}catch(e){this.logger.debug(`Failed to Restore records for ${this.name}`),this.logger.error(e)}}registerEventListeners(){this.events.on(Wt,(e=>{const t=Wt;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,record:e})})),this.events.on(Gt,(e=>{const t=Gt;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,record:e})})),this.events.on(Qt,(e=>{const t=Qt;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,record:e})})),this.core.heartbeat.on(a.Lx.pulse,(()=>{this.cleanup()}))}cleanup(){try{this.isInitialized();let e=!1;this.records.forEach((t=>{(0,w.toMiliseconds)(t.expiry||0)-Date.now()<=0&&(this.logger.info(`Deleting expired history log: ${t.id}`),this.records.delete(t.id),this.events.emit(Qt,t,!1),e=!0)})),e&&this.persist()}catch(e){this.logger.warn(e)}}isInitialized(){if(!this.initialized){const{message:e}=(0,n.kCb)("NOT_INITIALIZED",this.name);throw new Error(e)}}}class $i extends f{constructor(e,t){super(e,t),this.core=e,this.logger=t,this.expirations=new Map,this.events=new r.EventEmitter,this.name="expirer",this.version="0.3",this.cached=[],this.initialized=!1,this.storagePrefix=vt,this.init=async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach((e=>this.expirations.set(e.target,e))),this.cached=[],this.registerEventListeners(),this.initialized=!0)},this.has=e=>{try{const t=this.formatTarget(e);return typeof this.getExpiration(t)<"u"}catch{return!1}},this.set=(e,t)=>{this.isInitialized();const i=this.formatTarget(e),r={target:i,expiry:t};this.expirations.set(i,r),this.checkExpiry(i,r),this.events.emit(Zt,{target:i,expiration:r})},this.get=e=>{this.isInitialized();const t=this.formatTarget(e);return this.getExpiration(t)},this.del=e=>{if(this.isInitialized(),this.has(e)){const t=this.formatTarget(e),i=this.getExpiration(t);this.expirations.delete(t),this.events.emit(Xt,{target:t,expiration:i})}},this.on=(e,t)=>{this.events.on(e,t)},this.once=(e,t)=>{this.events.once(e,t)},this.off=(e,t)=>{this.events.off(e,t)},this.removeListener=(e,t)=>{this.events.removeListener(e,t)},this.logger=(0,c.Ep)(t,this.name)}get context(){return(0,c.Fd)(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name}get length(){return this.expirations.size}get keys(){return Array.from(this.expirations.keys())}get values(){return Array.from(this.expirations.values())}formatTarget(e){if("string"==typeof e)return(0,n.Z42)(e);if("number"==typeof e)return(0,n.GqV)(e);const{message:t}=(0,n.kCb)("UNKNOWN_TYPE","Target type: "+typeof e);throw new Error(t)}async setExpirations(e){await this.core.storage.setItem(this.storageKey,e)}async getExpirations(){return await this.core.storage.getItem(this.storageKey)}async persist(){await this.setExpirations(this.values),this.events.emit(ti)}async restore(){try{const e=await this.getExpirations();if(typeof e>"u"||!e.length)return;if(this.expirations.size){const{message:e}=(0,n.kCb)("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(e),new Error(e)}this.cached=e,this.logger.debug(`Successfully Restored expirations for ${this.name}`),this.logger.trace({type:"method",method:"restore",expirations:this.values})}catch(e){this.logger.debug(`Failed to Restore expirations for ${this.name}`),this.logger.error(e)}}getExpiration(e){const t=this.expirations.get(e);if(!t){const{message:t}=(0,n.kCb)("NO_MATCHING_KEY",`${this.name}: ${e}`);throw this.logger.warn(t),new Error(t)}return t}checkExpiry(e,t){const{expiry:i}=t;(0,w.toMiliseconds)(i)-Date.now()<=0&&this.expire(e,t)}expire(e,t){this.expirations.delete(e),this.events.emit(ei,{target:e,expiration:t})}checkExpirations(){this.core.relayer.connected&&this.expirations.forEach(((e,t)=>this.checkExpiry(t,e)))}registerEventListeners(){this.core.heartbeat.on(a.Lx.pulse,(()=>this.checkExpirations())),this.events.on(Zt,(e=>{const t=Zt;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,data:e}),this.persist()})),this.events.on(ei,(e=>{const t=ei;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,data:e}),this.persist()})),this.events.on(Xt,(e=>{const t=Xt;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,data:e}),this.persist()}))}isInitialized(){if(!this.initialized){const{message:e}=(0,n.kCb)("NOT_INITIALIZED",this.name);throw new Error(e)}}}class Mi extends class{constructor(e,t){this.projectId=e,this.logger=t}}{constructor(e,t){super(e,t),this.projectId=e,this.logger=t,this.name=ii,this.initialized=!1,this.queue=[],this.verifyDisabled=!1,this.init=async e=>{if(this.verifyDisabled||(0,n.b$m)()||!(0,n.jUY)())return;const t=this.getVerifyUrl(e?.verifyUrl);this.verifyUrl!==t&&this.removeIframe(),this.verifyUrl=t;try{await this.createIframe()}catch(i){this.logger.info(`Verify iframe failed to load: ${this.verifyUrl}`),this.logger.info(i)}if(!this.initialized){this.removeIframe(),this.verifyUrl=si;try{await this.createIframe()}catch(i){this.logger.info(`Verify iframe failed to load: ${this.verifyUrl}`),this.logger.info(i),this.verifyDisabled=!0}}},this.register=async e=>{this.initialized?this.sendPost(e.attestationId):(this.addToQueue(e.attestationId),await this.init())},this.resolve=async e=>{if(this.isDevEnv)return"";const t=this.getVerifyUrl(e?.verifyUrl);let i;try{i=await this.fetchAttestation(e.attestationId,t)}catch(u){this.logger.info(`failed to resolve attestation: ${e.attestationId} from url: ${t}`),this.logger.info(u),i=await this.fetchAttestation(e.attestationId,si)}return i},this.fetchAttestation=async(e,t)=>{this.logger.info(`resolving attestation: ${e} from url: ${t}`);const i=this.startAbortTimer(2*w.ONE_SECOND),r=await fetch(`${t}/attestation/${e}`,{signal:this.abortController.signal});return clearTimeout(i),200===r.status?await r.json():void 0},this.addToQueue=e=>{this.queue.push(e)},this.processQueue=()=>{0!==this.queue.length&&(this.queue.forEach((e=>this.sendPost(e))),this.queue=[])},this.sendPost=e=>{var t;try{if(!this.iframe)return;null==(t=this.iframe.contentWindow)||t.postMessage(e,"*"),this.logger.info(`postMessage sent: ${e} ${this.verifyUrl}`)}catch{}},this.createIframe=async()=>{let e;const t=i=>{"verify_ready"===i.data&&(this.onInit(),window.removeEventListener("message",t),e())};await Promise.race([new Promise((i=>{const r=document.getElementById(ii);if(r)return this.iframe=r,this.onInit(),i();window.addEventListener("message",t);const s=document.createElement("iframe");s.id=ii,s.src=`${this.verifyUrl}/${this.projectId}`,s.style.display="none",document.body.append(s),this.iframe=s,e=i})),new Promise(((e,i)=>setTimeout((()=>{window.removeEventListener("message",t),i("verify iframe load timeout")}),(0,w.toMiliseconds)(w.FIVE_SECONDS))))])},this.onInit=()=>{this.initialized=!0,this.processQueue()},this.removeIframe=()=>{this.iframe&&(this.iframe.remove(),this.iframe=void 0,this.initialized=!1)},this.getVerifyUrl=e=>{let t=e||ri;return ni.includes(t)||(this.logger.info(`verify url: ${t}, not included in trusted list, assigning default: ${ri}`),t=ri),t},this.logger=(0,c.Ep)(t,this.name),this.verifyUrl=ri,this.abortController=new AbortController,this.isDevEnv=(0,n.UGU)()&&J.env.IS_VITEST}get context(){return(0,c.Fd)(this.logger)}startAbortTimer(e){return this.abortController=new AbortController,setTimeout((()=>this.abortController.abort()),(0,w.toMiliseconds)(e))}}class ji extends class{constructor(e,t){this.projectId=e,this.logger=t}}{constructor(e,t){super(e,t),this.projectId=e,this.logger=t,this.context="echo",this.registerDeviceToken=async e=>{const{clientId:t,token:i,notificationType:r,enableEncrypted:s=!1}=e,n=`https://echo.walletconnect.com/${this.projectId}/clients`;await B()(n,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({client_id:t,type:r,token:i,always_raw:s})})},this.logger=(0,c.Ep)(t,this.context)}}var zi=Object.defineProperty,Ui=Object.getOwnPropertySymbols,Li=Object.prototype.hasOwnProperty,Hi=Object.prototype.propertyIsEnumerable,Vi=(e,t,i)=>t in e?zi(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,Ki=(e,t)=>{for(var i in t||(t={}))Li.call(t,i)&&Vi(e,i,t[i]);if(Ui)for(var i of Ui(t))Hi.call(t,i)&&Vi(e,i,t[i]);return e};class Fi extends u{constructor(e){var t;super(e),this.protocol="wc",this.version=2,this.name=mt,this.events=new r.EventEmitter,this.initialized=!1,this.on=(e,t)=>this.events.on(e,t),this.once=(e,t)=>this.events.once(e,t),this.off=(e,t)=>this.events.off(e,t),this.removeListener=(e,t)=>this.events.removeListener(e,t),this.projectId=e?.projectId,this.relayUrl=e?.relayUrl||Pt,this.customStoragePrefix=null!=e&&e.customStoragePrefix?`:${e.customStoragePrefix}`:"";const i=(0,c.jI)({level:"string"==typeof e?.logger&&e.logger?e.logger:wt}),{logger:s,chunkLoggerController:n}=(0,c.Rt)({opts:i,maxSizeInBytes:e?.maxLogBlobSizeInBytes,loggerOverride:e?.logger});this.logChunkController=n,null!=(t=this.logChunkController)&&t.downloadLogsBlobInBrowser&&(window.downloadLogsBlobInBrowser=async()=>{var e,t;null!=(e=this.logChunkController)&&e.downloadLogsBlobInBrowser&&(null==(t=this.logChunkController)||t.downloadLogsBlobInBrowser({clientId:await this.crypto.getClientId()}))}),this.logger=(0,c.Ep)(s,this.name),this.heartbeat=new a.C$,this.crypto=new ai(this,this.logger,e?.keychain),this.history=new ki(this,this.logger),this.expirer=new $i(this,this.logger),this.storage=null!=e&&e.storage?e.storage:new o.Z(Ki(Ki({},bt),e?.storageOptions)),this.relayer=new Ri({core:this,logger:this.logger,relayUrl:this.relayUrl,projectId:this.projectId}),this.pairing=new Ai(this,this.logger),this.verify=new Mi(this.projectId||"",this.logger),this.echoClient=new ji(this.projectId||"",this.logger)}static async init(e){const t=new Fi(e);await t.initialize();const i=await t.crypto.getClientId();return await t.storage.setItem("WALLETCONNECT_CLIENT_ID",i),t}get context(){return(0,c.Fd)(this.logger)}async start(){this.initialized||await this.initialize()}async getLogsBlob(){var e;return null==(e=this.logChunkController)?void 0:e.logsToBlob({clientId:await this.crypto.getClientId()})}async initialize(){this.logger.trace("Initialized");try{await this.crypto.init(),await this.history.init(),await this.expirer.init(),await this.relayer.init(),await this.heartbeat.init(
1),await this.pairing.init(),this.initialized=!0,this.logger.info("Core Initialization Success")}catch(e){throw this.logger.warn(`Core Initialization Failure at epoch ${Date.now()}`,e),this.logger.error(e.message),e}}}const Bi=Fi,Ji="client",Wi=`wc@2:${Ji}:`,Gi=Ji,Qi="error",Yi="WALLETCONNECT_DEEPLINK_CHOICE",Zi="Proposal expired",Xi=w.SEVEN_DAYS,er={wc_sessionPropose:{req:{ttl:w.FIVE_MINUTES,prompt:!0,tag:1100},res:{ttl:w.FIVE_MINUTES,prompt:!1,tag:1101}},wc_sessionSettle:{req:{ttl:w.FIVE_MINUTES,prompt:!1,tag:1102},res:{ttl:w.FIVE_MINUTES,prompt:!1,tag:1103}},wc_sessionUpdate:{req:{ttl:w.ONE_DAY,prompt:!1,tag:1104},res:{ttl:w.ONE_DAY,prompt:!1,tag:1105}},wc_sessionExtend:{req:{ttl:w.ONE_DAY,prompt:!1,tag:1106},res:{ttl:w.ONE_DAY,prompt:!1,tag:1107}},wc_sessionRequest:{req:{ttl:w.FIVE_MINUTES,prompt:!0,tag:1108},res:{ttl:w.FIVE_MINUTES,prompt:!1,tag:1109}},wc_sessionEvent:{req:{ttl:w.FIVE_MINUTES,prompt:!0,tag:1110},res:{ttl:w.FIVE_MINUTES,prompt:!1,tag:1111}},wc_sessionDelete:{req:{ttl:w.ONE_DAY,prompt:!1,tag:1112},res:{ttl:w.ONE_DAY,prompt:!1,tag:1113}},wc_sessionPing:{req:{ttl:w.ONE_DAY,prompt:!1,tag:1114},res:{ttl:w.ONE_DAY,prompt:!1,tag:1115}},wc_sessionAuthenticate:{req:{ttl:w.ONE_HOUR,prompt:!0,tag:1116},res:{ttl:w.ONE_HOUR,prompt:!1,tag:1117}}},tr={min:w.FIVE_MINUTES,max:w.SEVEN_DAYS},ir="IDLE",rr="ACTIVE",sr=["wc_sessionPropose","wc_sessionRequest","wc_authRequest"],nr="[email protected]:auth:",or=`${nr}:PUB_KEY`;var ar=Object.defineProperty,cr=Object.defineProperties,hr=Object.getOwnPropertyDescriptors,ur=Object.getOwnPropertySymbols,lr=Object.prototype.hasOwnProperty,pr=Object.prototype.propertyIsEnumerable,dr=(e,t,i)=>t in e?ar(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,gr=(e,t)=>{for(var i in t||(t={}))lr.call(t,i)&&dr(e,i,t[i]);if(ur)for(var i of ur(t))pr.call(t,i)&&dr(e,i,t[i]);return e},fr=(e,t)=>cr(e,hr(t));class yr extends class{constructor(e){this.client=e}}{constructor(e){super(e),this.name="engine",this.events=new(s()),this.initialized=!1,this.requestQueue={state:ir,queue:[]},this.sessionRequestQueue={state:ir,queue:[]},this.requestQueueDelay=w.ONE_SECOND,this.expectedPairingMethodMap=new Map,this.recentlyDeletedMap=new Map,this.recentlyDeletedLimit=200,this.init=async()=>{this.initialized||(await this.cleanup(),this.registerRelayerEvents(),this.registerExpirerEvents(),this.registerPairingEvents(),this.client.core.pairing.register({methods:Object.keys(er)}),this.initialized=!0,setTimeout((()=>{this.sessionRequestQueue.queue=this.getPendingSessionRequests(),this.processSessionRequestQueue()}),(0,w.toMiliseconds)(this.requestQueueDelay)))},this.connect=async e=>{await this.isInitialized();const t=fr(gr({},e),{requiredNamespaces:e.requiredNamespaces||{},optionalNamespaces:e.optionalNamespaces||{}});await this.isValidConnect(t);const{pairingTopic:i,requiredNamespaces:r,optionalNamespaces:s,sessionProperties:o,relays:a}=t;let c,h=i,u=!1;try{h&&(u=this.client.core.pairing.pairings.get(h).active)}catch(b){throw this.client.logger.error(`connect() -> pairing.get(${h}) failed`),b}if(!h||!u){const{topic:e,uri:t}=await this.client.core.pairing.create();h=e,c=t}if(!h){const{message:e}=(0,n.kCb)("NO_MATCHING_KEY",`connect() pairing topic: ${h}`);throw new Error(e)}const l=await this.client.core.crypto.generateKeyPair(),p=er.wc_sessionPropose.req.ttl||w.FIVE_MINUTES,d=(0,n.gn4)(p),g=gr({requiredNamespaces:r,optionalNamespaces:s,relays:a??[{protocol:"irn"}],proposer:{publicKey:l,metadata:this.client.metadata},expiryTimestamp:d},o&&{sessionProperties:o}),{reject:f,resolve:y,done:m}=(0,n.H1S)(p,Zi);this.events.once((0,n.E0T)("session_connect"),(async({error:e,session:t})=>{if(e)f(e);else if(t){t.self.publicKey=l;const e=fr(gr({},t),{requiredNamespaces:g.requiredNamespaces,optionalNamespaces:g.optionalNamespaces});await this.client.session.set(t.topic,e),await this.setExpiry(t.topic,t.expiry),h&&await this.client.core.pairing.updateMetadata({topic:h,metadata:t.peer.metadata}),y(e)}}));const v=await this.sendRequest({topic:h,method:"wc_sessionPropose",params:g,throwOnFailedPublish:!0});return await this.setProposal(v,gr({id:v},g)),{uri:c,approval:m}},this.pair=async e=>{await this.isInitialized();try{return await this.client.core.pairing.pair(e)}catch(t){throw this.client.logger.error("pair() failed"),t}},this.approve=async e=>{await this.isInitialized();try{await this.isValidApprove(e)}catch(m){throw this.client.logger.error("approve() -> isValidApprove() failed"),m}const{id:t,relayProtocol:i,namespaces:r,sessionProperties:s,sessionConfig:o}=e;let a;try{a=this.client.proposal.get(t)}catch(m){throw this.client.logger.error(`approve() -> proposal.get(${t}) failed`),m}let{pairingTopic:c,proposer:h,requiredNamespaces:u,optionalNamespaces:l}=a;c=c||"";const p=await this.client.core.crypto.generateKeyPair(),d=h.publicKey,g=await this.client.core.crypto.generateSharedKey(p,d),f=gr(gr({relay:{protocol:i??"irn"},namespaces:r,pairingTopic:c,controller:{publicKey:p,metadata:this.client.metadata},expiry:(0,n.gn4)(Xi)},s&&{sessionProperties:s}),o&&{sessionConfig:o});await this.client.core.relayer.subscribe(g);const y=fr(gr({},f),{topic:g,requiredNamespaces:u,optionalNamespaces:l,pairingTopic:c,acknowledged:!1,self:f.controller,peer:{publicKey:h.publicKey,metadata:h.metadata},controller:p});await this.client.session.set(g,y);try{await this.sendResult({id:t,topic:c,result:{relay:{protocol:i??"irn"},responderPublicKey:p},throwOnFailedPublish:!0}),await this.sendRequest({topic:g,method:"wc_sessionSettle",params:f,throwOnFailedPublish:!0})}catch(m){throw this.client.logger.error(m),this.client.session.delete(g,(0,n.D6H)("USER_DISCONNECTED")),await this.client.core.relayer.unsubscribe(g),m}return await this.client.core.pairing.updateMetadata({topic:c,metadata:h.metadata}),await this.client.proposal.delete(t,(0,n.D6H)("USER_DISCONNECTED")),await this.client.core.pairing.activate({topic:c}),await this.setExpiry(g,(0,n.gn4)(Xi)),{topic:g,acknowledged:()=>new Promise((e=>setTimeout((()=>e(this.client.session.get(g))),500)))}},this.reject=async e=>{await this.isInitialized();try{await this.isValidReject(e)}catch(s){throw this.client.logger.error("reject() -> isValidReject() failed"),s}const{id:t,reason:i}=e;let r;try{r=this.client.proposal.get(t).pairingTopic}catch(s){throw this.client.logger.error(`reject() -> proposal.get(${t}) failed`),s}
1r&&(await this.sendError({id:t,topic:r,error:i}),await this.client.proposal.delete(t,(0,n.D6H)("USER_DISCONNECTED")))},this.update=async e=>{await this.isInitialized();try{await this.isValidUpdate(e)}catch(u){throw this.client.logger.error("update() -> isValidUpdate() failed"),u}const{topic:t,namespaces:i}=e,{done:r,resolve:s,reject:o}=(0,n.H1S)(),a=(0,z.payloadId)(),c=(0,z.getBigIntRpcId)().toString(),h=this.client.session.get(t).namespaces;return this.events.once((0,n.E0T)("session_update",a),(({error:e})=>{e?o(e):s()})),await this.client.session.update(t,{namespaces:i}),await this.sendRequest({topic:t,method:"wc_sessionUpdate",params:{namespaces:i},throwOnFailedPublish:!0,clientRpcId:a,relayRpcId:c}).catch((e=>{this.client.logger.error(e),this.client.session.update(t,{namespaces:h}),o(e)})),{acknowledged:r}},this.extend=async e=>{await this.isInitialized();try{await this.isValidExtend(e)}catch(a){throw this.client.logger.error("extend() -> isValidExtend() failed"),a}const{topic:t}=e,i=(0,z.payloadId)(),{done:r,resolve:s,reject:o}=(0,n.H1S)();return this.events.once((0,n.E0T)("session_extend",i),(({error:e})=>{e?o(e):s()})),await this.setExpiry(t,(0,n.gn4)(Xi)),this.sendRequest({topic:t,method:"wc_sessionExtend",params:{},clientRpcId:i,throwOnFailedPublish:!0}).catch((e=>{o(e)})),{acknowledged:r}},this.request=async e=>{await this.isInitialized();try{await this.isValidRequest(e)}catch(g){throw this.client.logger.error("request() -> isValidRequest() failed"),g}const{chainId:t,request:i,topic:r,expiry:s=er.wc_sessionRequest.req.ttl}=e,o=this.client.session.get(r),a=(0,z.payloadId)(),c=(0,z.getBigIntRpcId)().toString(),{done:h,resolve:u,reject:l}=(0,n.H1S)(s,"Request expired. Please try again.");return this.events.once((0,n.E0T)("session_request",a),(({error:e,result:t})=>{e?l(e):u(t)})),await Promise.all([new Promise((async e=>{await this.sendRequest({clientRpcId:a,relayRpcId:c,topic:r,method:"wc_sessionRequest",params:{request:fr(gr({},i),{expiryTimestamp:(0,n.gn4)(s)}),chainId:t},expiry:s,throwOnFailedPublish:!0}).catch((e=>l(e))),this.client.events.emit("session_request_sent",{topic:r,request:i,chainId:t,id:a}),e()})),new Promise((async e=>{var t;if(null==(t=o.sessionConfig)||!t.disableDeepLink){const e=await(0,n.bW6)(this.client.core.storage,Yi);(0,n.HhN)({id:a,topic:r,wcDeepLink:e})}e()})),h()]).then((e=>e[2]))},this.respond=async e=>{await this.isInitialized(),await this.isValidRespond(e);const{topic:t,response:i}=e,{id:r}=i;(0,z.isJsonRpcResult)(i)?await this.sendResult({id:r,topic:t,result:i.result,throwOnFailedPublish:!0}):(0,z.isJsonRpcError)(i)&&await this.sendError({id:r,topic:t,error:i.error}),this.cleanupAfterResponse(e)},this.ping=async e=>{await this.isInitialized();try{await this.isValidPing(e)}catch(i){throw this.client.logger.error("ping() -> isValidPing() failed"),i}const{topic:t}=e;if(this.client.session.keys.includes(t)){const e=(0,z.payloadId)(),i=(0,z.getBigIntRpcId)().toString(),{done:r,resolve:s,reject:o}=(0,n.H1S)();this.events.once((0,n.E0T)("session_ping",e),(({error:e})=>{e?o(e):s()})),await Promise.all([this.sendRequest({topic:t,method:"wc_sessionPing",params:{},throwOnFailedPublish:!0,clientRpcId:e,relayRpcId:i}),r()])}else this.client.core.pairing.pairings.keys.includes(t)&&await this.client.core.pairing.ping({topic:t})},this.emit=async e=>{await this.isInitialized(),await this.isValidEmit(e);const{topic:t,event:i,chainId:r}=e,s=(0,z.getBigIntRpcId)().toString();await this.sendRequest({topic:t,method:"wc_sessionEvent",params:{event:i,
1chainId:r},throwOnFailedPublish:!0,relayRpcId:s})},this.disconnect=async e=>{await this.isInitialized(),await this.isValidDisconnect(e);const{topic:t}=e;if(this.client.session.keys.includes(t))await this.sendRequest({topic:t,method:"wc_sessionDelete",params:(0,n.D6H)("USER_DISCONNECTED"),throwOnFailedPublish:!0}),await this.deleteSession({topic:t,emitEvent:!1});else{if(!this.client.core.pairing.pairings.keys.includes(t)){const{message:e}=(0,n.kCb)("MISMATCHED_TOPIC",`Session or pairing topic not found: ${t}`);throw new Error(e)}await this.client.core.pairing.disconnect({topic:t})}},this.find=e=>(this.isInitialized(),this.client.session.getAll().filter((t=>(0,n.Ih8)(t,e)))),this.getPendingSessionRequests=()=>this.client.pendingRequest.getAll(),this.authenticate=async e=>{this.isInitialized(),this.isValidAuthenticate(e);const{chains:t,statement:i="",uri:r,domain:s,nonce:o,type:a,exp:c,nbf:h,methods:u=[],expiry:l}=e,p=[...e.resources||[]],{topic:d,uri:g}=await this.client.core.pairing.create({methods:["wc_sessionAuthenticate"]});this.client.logger.info({message:"Generated new pairing",pairing:{topic:d,uri:g}});const f=await this.client.core.crypto.generateKeyPair(),y=(0,n.YmJ)(f);if(await Promise.all([this.client.auth.authKeys.set(or,{responseTopic:y,publicKey:f}),this.client.auth.pairingTopics.set(y,{topic:y,pairingTopic:d})]),await this.client.core.relayer.subscribe(y),this.client.logger.info(`sending request to new pairing topic: ${d}`),u.length>0){const{namespace:e}=(0,n.DQe)(t[0]);let i=(0,n.IkP)(e,"request",u);(0,n.hA9)(p)&&(i=(0,n.qJM)(i,p.pop())),p.push(i)}const m=l&&l>er.wc_sessionAuthenticate.req.ttl?l:er.wc_sessionAuthenticate.req.ttl,v={authPayload:{type:a??"caip122",chains:t,statement:i,aud:r,domain:s,version:"1",nonce:o,iat:(new Date).toISOString(),exp:c,nbf:h,resources:p},requester:{publicKey:f,metadata:this.client.metadata},expiryTimestamp:(0,n.gn4)(m)},w={requiredNamespaces:{},optionalNamespaces:{eip155:{chains:t,methods:[...new Set(["personal_sign",...u])],events:["chainChanged","accountsChanged"]}},relays:[{protocol:"irn"}],proposer:{publicKey:f,metadata:this.client.metadata},expiryTimestamp:(0,n.gn4)(er.wc_sessionPropose.req.ttl)},{done:b,resolve:_,reject:I}=(0,n.H1S)(m,"Request expired"),E=async({error:e,session:t})=>{if(this.events.off((0,n.E0T)("session_request",S),P),e)I(e);else if(t){t.self.publicKey=f,await this.client.session.set(t.topic,t),await this.setExpiry(t.topic,t.expiry),d&&await this.client.core.pairing.updateMetadata({topic:d,metadata:t.peer.metadata});const e=this.client.session.get(t.topic);await this.deleteProposal(R),_({session:e})}},P=async e=>{if(await this.deletePendingAuthRequest(S,{message:"fulfilled",code:0}),e.error){const t=(0,n.D6H)("WC_METHOD_UNSUPPORTED","wc_sessionAuthenticate");return e.error.code===t.code?void 0:(this.events.off((0,n.E0T)("session_connect"),E),I(e.error.message))}await this.deleteProposal(R),this.events.off((0,n.E0T)("session_connect"),E);const{cacaos:t,responder:i}=e.result,r=[],s=[];for(const c of t){await(0,n.c4l)({cacao:c,projectId:this.client.core.projectId})||(this.client.logger.error(c,"Signature verification failed"),I((0,n.D6H)("SESSION_SETTLEMENT_FAILED","Signature verification failed")));const{p:e}=c,t=(0,n.hA9)(e.resources),i=[(0,n.DJo)(e.iss)],o=(0,n.NmC)(e.iss);if(t){const e=(0,n.Y31)(t),s=(0,n.ouN)(t);r.push(...e),i.push(...s)}for(const r of i)s.push(`${r}:${o}`)}const o=await this.client.core.crypto.generateSharedKey(f,i.publicKey);let a;r.length>0&&(a={topic:o,acknowledged:!0,self:{publicKey:f,metadata:this.client.metadata},peer:i,controller:i.publicKey,expiry:(0,n.gn4)(Xi),requiredNamespaces:{},optionalNamespaces:{},relay:{protocol:"irn"},pairingTopic:d,namespaces:(0,n.E12)([...new Set(r)],[...new Set(s)])},await this.client.core.relayer.subscribe(o),await this.client.session.set(o,a),a=this.client.session.get(o)),_({auths:t,session:a})},S=(0,z.payloadId)(),R=(0,z.payloadId)();this.events.once((0,n.E0T)("session_connect"),E),this.events.once((0,n.E0T)("session_request",S),P);try{await Promise.all([this.sendRequest({topic:d,method:"wc_sessionAuthenticate",params:v,expiry:e.expiry,throwOnFailedPublish:!0,clientRpcId:S}),this.sendRequest({topic:d,method:"wc_sessionPropose",params:w,expiry:er.wc_sessionPropose.req.ttl,throwOnFailedPublish:!0,clientRpcId:R})])}catch(C){throw this.events.off((0,n.E0T)("session_connect"),E),this.events.off((0,n.E0T)("session_request",S),P),C}return await this.setProposal(R,gr({id:R},w)),await this.setAuthRequest(S,{request:fr(gr({},v),{verifyContext:{}}),pairingTopic:d}),{uri:g,response:b}},this.approveSessionAuthenticate=async e=>{this.isInitialized();const{id:t,auths:i}=e,r=this.getPendingAuthRequest(t);if(!r)throw new Error(`Could not find pending auth request with id ${t}`);const s=r.requester.publicKey,o=await this.client.core.crypto.generateKeyPair(),a=(0,n.YmJ)(s),c={type:n.rVF,receiverPublicKey:s,senderPublicKey:o},h=[],u=[];for(const d of i){if(!(await(0,n.c4l)({cacao:d,projectId:this.client.core.projectId}))){const e=(0,n.D6H)("SESSION_SETTLEMENT_FAILED","Signature verification failed");
1throw await this.sendError({id:t,topic:a,error:e,encodeOpts:c}),new Error(e.message)}const{p:e}=d,i=(0,n.hA9)(e.resources),r=[(0,n.DJo)(e.iss)],s=(0,n.NmC)(e.iss);if(i){const e=(0,n.Y31)(i),t=(0,n.ouN)(i);h.push(...e),r.push(...t)}for(const t of r)u.push(`${t}:${s}`)}const l=await this.client.core.crypto.generateSharedKey(o,s);let p;return h?.length>0&&(p={topic:l,acknowledged:!0,self:{publicKey:o,metadata:this.client.metadata},peer:{publicKey:s,metadata:r.requester.metadata},controller:s,expiry:(0,n.gn4)(Xi),authentication:i,requiredNamespaces:{},optionalNamespaces:{},relay:{protocol:"irn"},pairingTopic:"",namespaces:(0,n.E12)([...new Set(h)],[...new Set(u)])},await this.client.core.relayer.subscribe(l),await this.client.session.set(l,p)),await this.sendResult({topic:a,id:t,result:{cacaos:i,responder:{publicKey:o,metadata:this.client.metadata}},encodeOpts:c,throwOnFailedPublish:!0}),await this.client.auth.requests.delete(t,{message:"fullfilled",code:0}),await this.client.core.pairing.activate({topic:r.pairingTopic}),{session:p}},this.rejectSessionAuthenticate=async e=>{await this.isInitialized();const{id:t,reason:i}=e,r=this.getPendingAuthRequest(t);if(!r)throw new Error(`Could not find pending auth request with id ${t}`);const s=r.requester.publicKey,o=await this.client.core.crypto.generateKeyPair(),a=(0,n.YmJ)(s),c={type:n.rVF,receiverPublicKey:s,senderPublicKey:o};await this.sendError({id:t,topic:a,error:i,encodeOpts:c}),await this.client.auth.requests.delete(t,{message:"rejected",code:0}),await this.client.proposal.delete(t,(0,n.D6H)("USER_DISCONNECTED"))},this.formatAuthMessage=e=>{this.isInitialized();const{request:t,iss:i}=e;return(0,n.wvx)(t,i)},this.cleanupDuplicatePairings=async e=>{if(e.pairingTopic)try{const t=this.client.core.pairing.pairings.get(e.pairingTopic),i=this.client.core.pairing.pairings.getAll().filter((i=>{var r,s;return(null==(r=i.peerMetadata)?void 0:r.url)&&(null==(s=i.peerMetadata)?void 0:s.url)===e.peer.metadata.url&&i.topic&&i.topic!==t.topic}));if(0===i.length)return;this.client.logger.info(`Cleaning up ${i.length} duplicate pairing(s)`),await Promise.all(i.map((e=>this.client.core.pairing.disconnect({topic:e.topic})))),this.client.logger.info("Duplicate pairings clean up finished")}catch(t){this.client.logger.error(t)}},this.deleteSession=async e=>{const{topic:t,expirerHasDeleted:i=!1,emitEvent:r=!0,id:s=0}=e,{self:o}=this.client.session.get(t);await this.client.core.relayer.unsubscribe(t),await this.client.session.delete(t,(0,n.D6H)("USER_DISCONNECTED")),this.addToRecentlyDeleted(t,"session"),this.client.core.crypto.keychain.has(o.publicKey)&&await this.client.core.crypto.deleteKeyPair(o.publicKey),this.client.core.crypto.keychain.has(t)&&await this.client.core.crypto.deleteSymKey(t),i||this.client.core.expirer.del(t),this.client.core.storage.removeItem(Yi).catch((e=>this.client.logger.warn(e))),this.getPendingSessionRequests().forEach((e=>{e.topic===t&&this.deletePendingSessionRequest(e.id,(0,n.D6H)("USER_DISCONNECTED"))})),r&&this.client.events.emit("session_delete",{id:s,topic:t})},this.deleteProposal=async(e,t)=>{await Promise.all([this.client.proposal.delete(e,(0,n.D6H)("USER_DISCONNECTED")),t?Promise.resolve():this.client.core.expirer.del(e)]),this.addToRecentlyDeleted(e,"proposal")},this.deletePendingSessionRequest=async(e,t,i=!1)=>{await Promise.all([this.client.pendingRequest.delete(e,t),i?Promise.resolve():this.client.core.expirer.del(e)]),this.addToRecentlyDeleted(e,"request"),this.sessionRequestQueue.queue=this.sessionRequestQueue.queue.filter((t=>t.id!==e)),i&&(this.sessionRequestQueue.state=ir,this.client.events.emit("session_request_expire",{id:e}))},this.deletePendingAuthRequest=async(e,t,i=!1)=>{await Promise.all([this.client.auth.requests.delete(e,t),i?Promise.resolve():this.client.core.expirer.del(e)])},this.setExpiry=async(e,t)=>{this.client.session.keys.includes(e)&&(this.client.core.expirer.set(e,t),await this.client.session.update(e,{expiry:t}))},this.setProposal=async(e,t)=>{this.client.core.expirer.set(e,(0,n.gn4)(er.wc_sessionPropose.req.ttl)),await this.client.proposal.set(e,t)},this.setAuthRequest=async(e,t)=>{const{request:i,pairingTopic:r}=t;this.client.core.expirer.set(e,i.expiryTimestamp),await this.client.auth.requests.set(e,{authPayload:i.authPayload,requester:i.requester,expiryTimestamp:i.expiryTimestamp,id:e,pairingTopic:r,verifyContext:i.verifyContext})},this.setPendingSessionRequest=async e=>{const{id:t,topic:i,params:r,verifyContext:s}=e,o=r.request.expiryTimestamp||(0,n.gn4)(er.wc_sessionRequest.req.ttl);
1this.client.core.expirer.set(t,o),await this.client.pendingRequest.set(t,{id:t,topic:i,params:r,verifyContext:s})},this.sendRequest=async e=>{const{topic:t,method:i,params:r,expiry:s,relayRpcId:o,clientRpcId:a,throwOnFailedPublish:c}=e,h=(0,z.formatJsonRpcRequest)(i,r,a);if((0,n.jUY)()&&sr.includes(i)){const e=(0,n.rjm)(JSON.stringify(h));this.client.core.verify.register({attestationId:e})}let u;try{u=await this.client.core.crypto.encode(t,h)}catch(g){throw await this.cleanup(),this.client.logger.error(`sendRequest() -> core.crypto.encode() for topic ${t} failed`),g}const l=er[i].req;return s&&(l.ttl=s),o&&(l.id=o),this.client.core.history.set(t,h),c?(l.internal=fr(gr({},l.internal),{throwOnFailedPublish:!0}),await this.client.core.relayer.publish(t,u,l)):this.client.core.relayer.publish(t,u,l).catch((e=>this.client.logger.error(e))),h.id},this.sendResult=async e=>{const{id:t,topic:i,result:r,throwOnFailedPublish:s,encodeOpts:n}=e,o=(0,z.formatJsonRpcResult)(t,r);let a,c;try{a=await this.client.core.crypto.encode(i,o,n)}catch(d){throw await this.cleanup(),this.client.logger.error(`sendResult() -> core.crypto.encode() for topic ${i} failed`),d}try{c=await this.client.core.history.get(i,t)}catch(d){throw this.client.logger.error(`sendResult() -> history.get(${i}, ${t}) failed`),d}const h=er[c.request.method].res;s?(h.internal=fr(gr({},h.internal),{throwOnFailedPublish:!0}),await this.client.core.relayer.publish(i,a,h)):this.client.core.relayer.publish(i,a,h).catch((e=>this.client.logger.error(e))),await this.client.core.history.resolve(o)},this.sendError=async e=>{const{id:t,topic:i,error:r,encodeOpts:s}=e,n=(0,z.formatJsonRpcError)(t,r);let o,a;try{o=await this.client.core.crypto.encode(i,n,s)}catch(h){throw await this.cleanup(),this.client.logger.error(`sendError() -> core.crypto.encode() for topic ${i} failed`),h}try{a=await this.client.core.history.get(i,t)}catch(h){throw this.client.logger.error(`sendError() -> history.get(${i}, ${t}) failed`),h}const c=er[a.request.method].res;this.client.core.relayer.publish(i,o,c),await this.client.core.history.resolve(n)},this.cleanup=async()=>{const e=[],t=[];this.client.session.getAll().forEach((t=>{let i=!1;(0,n.BwD)(t.expiry)&&(i=!0),this.client.core.crypto.keychain.has(t.topic)||(i=!0),i&&e.push(t.topic)})),this.client.proposal.getAll().forEach((e=>{(0,n.BwD)(e.expiryTimestamp)&&t.push(e.id)})),await Promise.all([...e.map((e=>this.deleteSession({topic:e}))),...t.map((e=>this.deleteProposal(e)))])},this.onRelayEventRequest=async e=>{this.requestQueue.queue.push(e),await this.processRequestsQueue()},this.processRequestsQueue=async()=>{if(this.requestQueue.state!==rr){for(this.client.logger.info(`Request queue starting with ${this.requestQueue.queue.length} requests`);this.requestQueue.queue.length>0;){this.requestQueue.state=rr;const t=this.requestQueue.queue.shift();if(t)try{this.processRequest(t),await new Promise((e=>setTimeout(e,300)))}catch(e){this.client.logger.warn(e)}}this.requestQueue.state=ir}else this.client.logger.info("Request queue already active, skipping...")},this.processRequest=e=>{const{topic:t,payload:i}=e,r=i.method;if(!this.shouldIgnorePairingRequest({topic:t,requestMethod:r}))switch(r){case"wc_sessionPropose":return this.onSessionProposeRequest
1(t,i);case"wc_sessionSettle":return this.onSessionSettleRequest(t,i);case"wc_sessionUpdate":return this.onSessionUpdateRequest(t,i);case"wc_sessionExtend":return this.onSessionExtendRequest(t,i);case"wc_sessionPing":return this.onSessionPingRequest(t,i);case"wc_sessionDelete":return this.onSessionDeleteRequest(t,i);case"wc_sessionRequest":return this.onSessionRequest(t,i);case"wc_sessionEvent":return this.onSessionEventRequest(t,i);case"wc_sessionAuthenticate":return this.onSessionAuthenticateRequest(t,i);default:return this.client.logger.info(`Unsupported request method ${r}`)}},this.onRelayEventResponse=async e=>{const{topic:t,payload:i}=e,r=(await this.client.core.history.get(t,i.id)).request.method;switch(r){case"wc_sessionPropose":return this.onSessionProposeResponse(t,i);case"wc_sessionSettle":return this.onSessionSettleResponse(t,i);case"wc_sessionUpdate":return this.onSessionUpdateResponse(t,i);case"wc_sessionExtend":return this.onSessionExtendResponse(t,i);case"wc_sessionPing":return this.onSessionPingResponse(t,i);case"wc_sessionRequest":return this.onSessionRequestResponse(t,i);case"wc_sessionAuthenticate":return this.onSessionAuthenticateResponse(t,i);default:return this.client.logger.info(`Unsupported response method ${r}`)}},this.onRelayEventUnknownPayload=e=>{const{topic:t}=e,{message:i}=(0,n.kCb)("MISSING_OR_INVALID",`Decoded payload on topic ${t} is not identifiable as a JSON-RPC request or a response.`);throw new Error(i)},this.shouldIgnorePairingRequest=e=>{const{topic:t,requestMethod:i}=e,r=this.expectedPairingMethodMap.get(t);return!(!r||r.includes(i))&&!!(r.includes("wc_sessionAuthenticate")&&this.client.events.listenerCount("session_authenticate")>0)},this.onSessionProposeRequest=async(e,t)=>{const{params:i,id:r}=t;try{this.isValidConnect(gr({},t.params));const s=i.expiryTimestamp||(0,n.gn4)(er.wc_sessionPropose.req.ttl),o=gr({id:r,pairingTopic:e,expiryTimestamp:s},i);await this.setProposal(r,o);const a=(0,n.rjm)(JSON.stringify(t)),c=await this.getVerifyContext(a,o.proposer.metadata);this.client.events.emit("session_proposal",{id:r,params:o,verifyContext:c})}catch(s){await this.sendError({id:r,topic:e,error:s}),this.client.logger.error(s)}},this.onSessionProposeResponse=async(e,t)=>{const{id:i}=t;if((0,z.isJsonRpcResult)(t)){const{result:r}=t;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",result:r});const s=this.client.proposal.get(i);this.client.logger.trace({type:"method",method:"onSessionProposeResponse",proposal:s});const n=s.proposer.publicKey;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",selfPublicKey:n});const o=r.responderPublicKey;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",peerPublicKey:o});const a=await this.client.core.crypto.generateSharedKey(n,o);this.client.logger.trace({type:"method",method:"onSessionProposeResponse",sessionTopic:a});const c=await this.client.core.relayer.subscribe(a);this.client.logger.trace({type:"method",method:"onSessionProposeResponse",subscriptionId:c}),await this.client.core.pairing.activate({topic:e})}else if((0,z.isJsonRpcError)(t)){await this.client.proposal.delete(i,(0,n.D6H)("USER_DISCONNECTED"));const e=(0,n.E0T)("session_connect");if(0===this.events.listenerCount(e))throw new Error(`emitting ${e} without any listeners, 954`);this.events.emit((0,n.E0T)("session_connect"),{error:t.error})}},this.onSessionSettleRequest=async(e,t)=>{const{id:i,params:r}=t;try{this.isValidSessionSettleRequest(r);const{relay:i,controller:s,expiry:o,namespaces:a,sessionProperties:c,pairingTopic:h,sessionConfig:u}=t.params,l=gr(gr({topic:e,relay:i,expiry:o,namespaces:a,acknowledged:!0,pairingTopic:h,requiredNamespaces:{},optionalNamespaces:{},controller:s.publicKey,self:{publicKey:"",metadata:this.client.metadata},peer:{publicKey:s.publicKey,metadata:s.metadata}},c&&{sessionProperties:c}),u&&{sessionConfig:u});await this.sendResult({id:t.id,topic:e,result:!0,throwOnFailedPublish:!0});const p=(0,n.E0T)("session_connect");if(0===this.events.listenerCount(p))throw new Error(`emitting ${p} without any listeners 997`);this.events.emit((0,n.E0T)("session_connect"),{session:l}
1),this.cleanupDuplicatePairings(l)}catch(s){await this.sendError({id:i,topic:e,error:s}),this.client.logger.error(s)}},this.onSessionSettleResponse=async(e,t)=>{const{id:i}=t;(0,z.isJsonRpcResult)(t)?(await this.client.session.update(e,{acknowledged:!0}),this.events.emit((0,n.E0T)("session_approve",i),{})):(0,z.isJsonRpcError)(t)&&(await this.client.session.delete(e,(0,n.D6H)("USER_DISCONNECTED")),this.events.emit((0,n.E0T)("session_approve",i),{error:t.error}))},this.onSessionUpdateRequest=async(e,t)=>{const{params:i,id:r}=t;try{const t=`${e}_session_update`,o=n.O6B.get(t);if(o&&this.isRequestOutOfSync(o,r))return this.client.logger.info(`Discarding out of sync request - ${r}`),void this.sendError({id:r,topic:e,error:(0,n.D6H)("INVALID_UPDATE_REQUEST")});this.isValidUpdate(gr({topic:e},i));try{n.O6B.set(t,r),await this.client.session.update(e,{namespaces:i.namespaces}),await this.sendResult({id:r,topic:e,result:!0,throwOnFailedPublish:!0})}catch(s){throw n.O6B.delete(t),s}this.client.events.emit("session_update",{id:r,topic:e,params:i})}catch(o){await this.sendError({id:r,topic:e,error:o}),this.client.logger.error(o)}},this.isRequestOutOfSync=(e,t)=>parseInt(t.toString().slice(0,-3))<=parseInt(e.toString().slice(0,-3)),this.onSessionUpdateResponse=(e,t)=>{const{id:i}=t,r=(0,n.E0T)("session_update",i);if(0===this.events.listenerCount(r))throw new Error(`emitting ${r} without any listeners`);(0,z.isJsonRpcResult)(t)?this.events.emit((0,n.E0T)("session_update",i),{}):(0,z.isJsonRpcError)(t)&&this.events.emit((0,n.E0T)("session_update",i),{error:t.error})},this.onSessionExtendRequest=async(e,t)=>{const{id:i}=t;try{this.isValidExtend({topic:e}),await this.setExpiry(e,(0,n.gn4)(Xi)),await this.sendResult({id:i,topic:e,result:!0,throwOnFailedPublish:!0}),this.client.events.emit("session_extend",{id:i,topic:e})}catch(r){await this.sendError({id:i,topic:e,error:r}),this.client.logger.error(r)}},this.onSessionExtendResponse=(e,t)=>{const{id:i}=t,r=(0,n.E0T)("session_extend",i);if(0===this.events.listenerCount(r))throw new Error(`emitting ${r} without any listeners`);(0,z.isJsonRpcResult)(t)?this.events.emit((0,n.E0T)("session_extend",i),{}):(0,z.isJsonRpcError)(t)&&this.events.emit((0,n.E0T)("session_extend",i),{error:t.error})},this.onSessionPingRequest=async(e,t)=>{const{id:i}=t;try{this.isValidPing({topic:e}),await this.sendResult({id:i,topic:e,result:!0,throwOnFailedPublish:!0}),this.client.events.emit("session_ping",{id:i,topic:e})}catch(r){await this.sendError({id:i,topic:e,error:r}),this.client.logger.error(r)}},this.onSessionPingResponse=(e,t)=>{const{id:i}=t,r=(0,n.E0T)("session_ping",i);if(0===this.events.listenerCount(r))throw new Error(`emitting ${r} without any listeners`);setTimeout((()=>{(0,z.isJsonRpcResult)(t)?this.events.emit((0,n.E0T)("session_ping",i),{}):(0,z.isJsonRpcError)(t)&&this.events.emit((0,n.E0T)("session_ping",i),{error:t.error})}),500)},this.onSessionDeleteRequest=async(e,t)=>{const{id:i}=t;try{this.isValidDisconnect({topic:e,reason:t.params}),await Promise.all([new Promise((t=>{this.client.core.relayer.once(Nt,(async()=>{t(await this.deleteSession({topic:e,id:i}))}))})),this.sendResult({id:i,topic:e,result:!0,throwOnFailedPublish:!0}),this.cleanupPendingSentRequestsForTopic({topic:e,error:(0,n.D6H)("USER_DISCONNECTED")})])}catch(r){this.client.logger.error(r)}},this.onSessionRequest=async(e,t)=>{var i;const{id:r,params:s}=t;try{await this.isValidRequest(gr({topic:e},s));const t=(0,n.rjm)(JSON.stringify((0,z.formatJsonRpcRequest)("wc_sessionRequest",s,r))),o=this.client.session.get(e),a={id:r,topic:e,params:s,verifyContext:await this.getVerifyContext(t,o.peer.metadata)};await this.setPendingSessionRequest(a),null!=(i=this.client.signConfig)&&i.disableRequestQueue?this.emitSessionRequest(a):(this.addSessionRequestToSessionRequestQueue(a),this.processSessionRequestQueue())}catch(o){await this.sendError({id:r,topic:e,error:o}),this.client.logger.error(o)}},this.onSessionRequestResponse=(e,t)=>{const{id:i}=t,r=(0,n.E0T)("session_request",i);if(0===this.events.listenerCount(r))throw new Error(`emitting ${r}
1 without any listeners`);(0,z.isJsonRpcResult)(t)?this.events.emit((0,n.E0T)("session_request",i),{result:t.result}):(0,z.isJsonRpcError)(t)&&this.events.emit((0,n.E0T)("session_request",i),{error:t.error})},this.onSessionEventRequest=async(e,t)=>{const{id:i,params:r}=t;try{const t=`${e}_session_event_${r.event.name}`,s=n.O6B.get(t);if(s&&this.isRequestOutOfSync(s,i))return void this.client.logger.info(`Discarding out of sync request - ${i}`);this.isValidEmit(gr({topic:e},r)),this.client.events.emit("session_event",{id:i,topic:e,params:r}),n.O6B.set(t,i)}catch(s){await this.sendError({id:i,topic:e,error:s}),this.client.logger.error(s)}},this.onSessionAuthenticateResponse=(e,t)=>{const{id:i}=t;this.client.logger.trace({type:"method",method:"onSessionAuthenticateResponse",topic:e,payload:t}),(0,z.isJsonRpcResult)(t)?this.events.emit((0,n.E0T)("session_request",i),{result:t.result}):(0,z.isJsonRpcError)(t)&&this.events.emit((0,n.E0T)("session_request",i),{error:t.error})},this.onSessionAuthenticateRequest=async(e,t)=>{const{requester:i,authPayload:r,expiryTimestamp:s}=t.params,o=(0,n.rjm)(JSON.stringify(t)),a=await this.getVerifyContext(o,this.client.metadata),c={requester:i,pairingTopic:e,id:t.id,authPayload:r,verifyContext:a,expiryTimestamp:s};await this.setAuthRequest(t.id,{request:c,pairingTopic:e}),this.client.events.emit("session_authenticate",{topic:e,params:t.params,id:t.id})},this.addSessionRequestToSessionRequestQueue=e=>{this.sessionRequestQueue.queue.push(e)},this.cleanupAfterResponse=e=>{this.deletePendingSessionRequest(e.response.id,{message:"fulfilled",code:0}),setTimeout((()=>{this.sessionRequestQueue.state=ir,this.processSessionRequestQueue()}),(0,w.toMiliseconds)(this.requestQueueDelay))},this.cleanupPendingSentRequestsForTopic=({topic:e,error:t})=>{const i=this.client.core.history.pending;i.length>0&&i.filter((t=>t.topic===e&&"wc_sessionRequest"===t.request.method)).forEach((e=>{const i=e.request.id,r=(0,n.E0T)("session_request",i);if(0===this.events.listenerCount(r))throw new Error(`emitting ${r} without any listeners`);this.events.emit((0,n.E0T)("session_request",e.request.id),{error:t})}))},this.processSessionRequestQueue=()=>{if(this.sessionRequestQueue.state===rr)return void this.client.logger.info("session request queue is already active.");const e=this.sessionRequestQueue.queue[0];if(e)try{this.sessionRequestQueue.state=rr,this.emitSessionRequest(e)}catch(t){this.client.logger.error(t)}else this.client.logger.info("session request queue is empty.")},this.emitSessionRequest=e=>{this.client.events.emit("session_request",e)},this.onPairingCreated=e=>{if(e.methods&&this.expectedPairingMethodMap.set(e.topic,e.methods),e.active)return;const t=this.client.proposal.getAll().find((t=>t.pairingTopic===e.topic));
1t&&this.onSessionProposeRequest(e.topic,(0,z.formatJsonRpcRequest)("wc_sessionPropose",{requiredNamespaces:t.requiredNamespaces,optionalNamespaces:t.optionalNamespaces,relays:t.relays,proposer:t.proposer,sessionProperties:t.sessionProperties},t.id))},this.isValidConnect=async e=>{if(!(0,n.EJd)(e)){const{message:t}=(0,n.kCb)("MISSING_OR_INVALID",`connect() params: ${JSON.stringify(e)}`);throw new Error(t)}const{pairingTopic:t,requiredNamespaces:i,optionalNamespaces:r,sessionProperties:s,relays:o}=e;if((0,n.o8e)(t)||await this.isValidPairingTopic(t),!(0,n.PMr)(o,!0)){const{message:e}=(0,n.kCb)("MISSING_OR_INVALID",`connect() relays: ${o}`);throw new Error(e)}!(0,n.o8e)(i)&&0!==(0,n.L5o)(i)&&this.validateNamespaces(i,"requiredNamespaces"),!(0,n.o8e)(r)&&0!==(0,n.L5o)(r)&&this.validateNamespaces(r,"optionalNamespaces"),(0,n.o8e)(s)||this.validateSessionProps(s,"sessionProperties")},this.validateNamespaces=(e,t)=>{const i=(0,n.naP)(e,"connect()",t);if(i)throw new Error(i.message)},this.isValidApprove=async e=>{if(!(0,n.EJd)(e))throw new Error((0,n.kCb)("MISSING_OR_INVALID",`approve() params: ${e}`).message);const{id:t,namespaces:i,relayProtocol:r,sessionProperties:s}=e;this.checkRecentlyDeleted(t),await this.isValidProposalId(t);const o=this.client.proposal.get(t),a=(0,n.ing)(i,"approve()");if(a)throw new Error(a.message);const c=(0,n.rFo)(o.requiredNamespaces,i,"approve()");if(c)throw new Error(c.message);if(!(0,n.M_r)(r,!0)){const{message:e}=(0,n.kCb)("MISSING_OR_INVALID",`approve() relayProtocol: ${r}`);throw new Error(e)}(0,n.o8e)(s)||this.validateSessionProps(s,"sessionProperties")},this.isValidReject=async e=>{if(!(0,n.EJd)(e)){const{message:t}=(0,n.kCb)("MISSING_OR_INVALID",`reject() params: ${e}`);throw new Error(t)}const{id:t,reason:i}=e;if(this.checkRecentlyDeleted(t),await this.isValidProposalId(t),!(0,n.H4H)(i)){const{message:e}=(0,n.kCb)("MISSING_OR_INVALID",`reject() reason: ${JSON.stringify(i)}`);throw new Error(e)}},this.isValidSessionSettleRequest=e=>{if(!(0,n.EJd)(e)){const{message:t}=(0,n.kCb)("MISSING_OR_INVALID",`onSessionSettleRequest() params: ${e}`);throw new Error(t)}const{relay:t,controller:i,namespaces:r,expiry:s}=e;if(!(0,n.Z26)(t)){const{message:e}=(0,n.kCb)("MISSING_OR_INVALID","onSessionSettleRequest() relay protocol should be a string");throw new Error(e)}const o=(0,n.DdM)(i,"onSessionSettleRequest()");if(o)throw new Error(o.message);const a=(0,n.ing)(r,"onSessionSettleRequest()");if(a)throw new Error(a.message);if((0,n.BwD)(s)){const{message:e}=(0,n.kCb)("EXPIRED","onSessionSettleRequest()");throw new Error(e)}},this.isValidUpdate=async e=>{if(!(0,n.EJd)(e)){const{message:t}=(0,n.kCb)("MISSING_OR_INVALID",`update() params: ${e}`);throw new Error(t)}const{topic:t,namespaces:i}=e;this.checkRecentlyDeleted(t),await this.isValidSessionTopic(t);const r=this.client.session.get(t),s=(0,n.ing)(i,"update()");if(s)throw new Error(s.message);const o=(0,n.rFo)(r.requiredNamespaces,i,"update()");if(o)throw new Error(o.message)},this.isValidExtend=async e=>{if(!(0,n.EJd)(e)){const{message:t}=(0,n.kCb)("MISSING_OR_INVALID",`extend() params: ${e}`);throw new Error(t)}const{topic:t}=e;this.checkRecentlyDeleted(t),await this.isValidSessionTopic(t)},this.isValidRequest=async e=>{if(!(0,n.EJd)(e)){const{message:t}=(0,n.kCb)("MISSING_OR_INVALID",`request() params: ${e}`);throw new Error(t)}const{topic:t,request:i,chainId:r,expiry:s}=e;this.checkRecentlyDeleted(t),await this.isValidSessionTopic(t);const{namespaces:o}=this.client.session.get(t);if(!(0,n.p8o)(o,r)){const{message:e}=(0,n.kCb)("MISSING_OR_INVALID",`request() chainId: ${r}`);throw new Error(e)}if(!(0,n.hHR)(i)){const{message:e}=(0,n.kCb)("MISSING_OR_INVALID",`request() ${JSON.stringify(i)}`);throw new Error(e)}if(!(0,n.alS)(o,r,i.method)){const{message:e}=(0,n.kCb)("MISSING_OR_INVALID",`request() method: ${i.method}`);throw new Error(e)}if(s&&!(0,n.ONw)(s,tr)){const{message:e}=(0,n.kCb)("MISSING_OR_INVALID",`request() expiry: ${s}. Expiry must be a number (in seconds) between ${tr.min} and ${tr.max}`);throw new Error(e)}},this.isValidRespond=async e=>{var t;if(!(0,n.EJd)(e)){const{message:t}=(0,n.kCb)("MISSING_OR_INVALID",`respond() params: ${e}`);throw new Error(t)}const{topic:i,response:r}=e;try{await this.isValidSessionTopic(i)}catch(s){throw null!=(t=e?.response)&&t.id&&this.cleanupAfterResponse(e),s}if(!(0,n.JTI)(r)){const{message:e}=(0,n.kCb)("MISSING_OR_INVALID",`respond() response: ${JSON.stringify(r)}`);throw new Error(e)}},this.isValidPing=async e=>{if(!(0,n.EJd)(e)){const{message:t}=(0,n.kCb)("MISSING_OR_INVALID",`ping() params: ${e}`);throw new Error(t)}const{topic:t}=e;await this.isValidSessionOrPairingTopic(t)},this.isValidEmit=async e=>{if(!(0,n.EJd)(e)){const{message:t}=(0,n.kCb)("MISSING_OR_INVALID",`emit() params: ${e}`);throw new Error(t)}
1const{topic:t,event:i,chainId:r}=e;await this.isValidSessionTopic(t);const{namespaces:s}=this.client.session.get(t);if(!(0,n.p8o)(s,r)){const{message:e}=(0,n.kCb)("MISSING_OR_INVALID",`emit() chainId: ${r}`);throw new Error(e)}if(!(0,n.nfW)(i)){const{message:e}=(0,n.kCb)("MISSING_OR_INVALID",`emit() event: ${JSON.stringify(i)}`);throw new Error(e)}if(!(0,n.B95)(s,r,i.name)){const{message:e}=(0,n.kCb)("MISSING_OR_INVALID",`emit() event: ${JSON.stringify(i)}`);throw new Error(e)}},this.isValidDisconnect=async e=>{if(!(0,n.EJd)(e)){const{message:t}=(0,n.kCb)("MISSING_OR_INVALID",`disconnect() params: ${e}`);throw new Error(t)}const{topic:t}=e;await this.isValidSessionOrPairingTopic(t)},this.isValidAuthenticate=e=>{const{chains:t,uri:i,domain:r,nonce:s}=e;if(!Array.isArray(t)||0===t.length)throw new Error("chains is required and must be a non-empty array");if(!(0,n.M_r)(i,!1))throw new Error("uri is required parameter");if(!(0,n.M_r)(r,!1))throw new Error("domain is required parameter");if(!(0,n.M_r)(s,!1))throw new Error("nonce is required parameter");if([...new Set(t.map((e=>(0,n.DQe)(e).namespace)))].length>1)throw new Error("Multi-namespace requests are not supported. Please request single namespace only.");const{namespace:o}=(0,n.DQe)(t[0]);if("eip155"!==o)throw new Error("Only eip155 namespace is supported for authenticated sessions. Please use .connect() for non-eip155 chains.")},this.getVerifyContext=async(e,t)=>{const i={verified:{verifyUrl:t.verifyUrl||ri,validation:"UNKNOWN",origin:t.url||""}};try{const r=await this.client.core.verify.resolve({attestationId:e,verifyUrl:t.verifyUrl});r&&(i.verified.origin=r.origin,i.verified.isScam=r.isScam,i.verified.validation=r.origin===new URL(t.url).origin?"VALID":"INVALID")}catch(r){this.client.logger.info(r)}return this.client.logger.info(`Verify context: ${JSON.stringify(i)}`),i},this.validateSessionProps=(e,t)=>{Object.values(e).forEach((e=>{if(!(0,n.M_r)(e,!1)){const{message:i}=(0,n.kCb)("MISSING_OR_INVALID",`${t} must be in Record<string, string> format. Received: ${JSON.stringify(e)}`);throw new Error(i)}}))},this.getPendingAuthRequest=e=>{const t=this.client.auth.requests.get(e);return"object"==typeof t?t:void 0},this.addToRecentlyDeleted=(e,t)=>{if(this.recentlyDeletedMap.set(e,t),this.recentlyDeletedMap.size>=this.recentlyDeletedLimit){let e=0;const t=this.recentlyDeletedLimit/2;for(const i of this.recentlyDeletedMap.keys()){if(e++>=t)break;this.recentlyDeletedMap.delete(i)}}},this.checkRecentlyDeleted=e=>{const t=this.recentlyDeletedMap.get(e);if(t){const{message:i}=(0,n.kCb)("MISSING_OR_INVALID",`Record was recently deleted - ${t}: ${e}`);throw new Error(i)}}}async isInitialized(){if(!this.initialized){const{message:e}=(0,n.kCb)("NOT_INITIALIZED",this.name);throw new Error(e)}await this.client.core.relayer.confirmOnlineStateOrThrow()}registerRelayerEvents(){this.client.core.relayer.on(Rt,(async e=>{const{topic:t,message:i}=e,{publicKey:r}=this.client.auth.authKeys.keys.includes(or)?this.client.auth.authKeys.get(or):{responseTopic:void 0,publicKey:void 0},s=await this.client.core.crypto.decode(t,i,{receiverPublicKey:r});try{(0,z.isJsonRpcRequest)(s)?(this.client.core.history.set(t,s),this.onRelayEventRequest({topic:t,payload:s})):(0,z.isJsonRpcResponse)(s)?(await this.client.core.history.resolve(s),await this.onRelayEventResponse({topic:t,payload:s}),this.client.core.history.delete(t,s.id)):this.onRelayEventUnknownPayload({topic:t,payload:s})}catch(n){this.client.logger.error(n)}}))}registerExpirerEvents(){this.client.core.expirer.on(ei,(async e=>
1{const{topic:t,id:i}=(0,n.iPz)(e.target);return i&&this.client.pendingRequest.keys.includes(i)?await this.deletePendingSessionRequest(i,(0,n.kCb)("EXPIRED"),!0):i&&this.client.auth.requests.keys.includes(i)?await this.deletePendingAuthRequest(i,(0,n.kCb)("EXPIRED"),!0):void(t?this.client.session.keys.includes(t)&&(await this.deleteSession({topic:t,expirerHasDeleted:!0}),this.client.events.emit("session_expire",{topic:t})):i&&(await this.deleteProposal(i,!0),this.client.events.emit("proposal_expire",{id:i})))}))}registerPairingEvents(){this.client.core.pairing.events.on(Kt,(e=>this.onPairingCreated(e))),this.client.core.pairing.events.on(Bt,(e=>{this.addToRecentlyDeleted(e.topic,"pairing")}))}isValidPairingTopic(e){if(!(0,n.M_r)(e,!1)){const{message:t}=(0,n.kCb)("MISSING_OR_INVALID",`pairing topic should be a string: ${e}`);throw new Error(t)}if(!this.client.core.pairing.pairings.keys.includes(e)){const{message:t}=(0,n.kCb)("NO_MATCHING_KEY",`pairing topic doesn't exist: ${e}`);throw new Error(t)}if((0,n.BwD)(this.client.core.pairing.pairings.get(e).expiry)){const{message:t}=(0,n.kCb)("EXPIRED",`pairing topic: ${e}`);throw new Error(t)}}async isValidSessionTopic(e){if(!(0,n.M_r)(e,!1)){const{message:t}=(0,n.kCb)("MISSING_OR_INVALID",`session topic should be a string: ${e}`);throw new Error(t)}if(this.checkRecentlyDeleted(e),!this.client.session.keys.includes(e)){const{message:t}=(0,n.kCb)("NO_MATCHING_KEY",`session topic doesn't exist: ${e}`);throw new Error(t)}if((0,n.BwD)(this.client.session.get(e).expiry)){await this.deleteSession({topic:e});const{message:t}=(0,n.kCb)("EXPIRED",`session topic: ${e}`);throw new Error(t)}if(!this.client.core.crypto.keychain.has(e)){const{message:t}=(0,n.kCb)("MISSING_OR_INVALID",`session topic does not exist in keychain: ${e}`);throw await this.deleteSession({topic:e}),new Error(t)}}async isValidSessionOrPairingTopic(e){if(this.checkRecentlyDeleted(e),this.client.session.keys.includes(e))await this.isValidSessionTopic(e);else{if(!this.client.core.pairing.pairings.keys.includes(e)){if((0,n.M_r)(e,!1)){const{message:t}=(0,n.kCb)("NO_MATCHING_KEY",`session or pairing topic doesn't exist: ${e}`);throw new Error(t)}{const{message:t}=(0,n.kCb)("MISSING_OR_INVALID",`session or pairing topic should be a string: ${e}`);throw new Error(t)}}this.isValidPairingTopic(e)}}async isValidProposalId(e){if(!(0,n.Q01)(e)){const{message:t}=(0,n.kCb)("MISSING_OR_INVALID",`proposal id should be a number: ${e}`);throw new Error(t)}if(!this.client.proposal.keys.includes(e)){const{message:t}=(0,n.kCb)("NO_MATCHING_KEY",`proposal id doesn't exist: ${e}`);throw new Error(t)}if((0,n.BwD)(this.client.proposal.get(e).expiryTimestamp)){await this.deleteProposal(e);const{message:t}=(0,n.kCb)("EXPIRED",`proposal id: ${e}`);throw new Error(t)}}}class mr extends Di{constructor(e,t){super(e,t,"proposal",Wi),this.core=e,this.logger=t}}class vr extends Di{constructor(e,t){super(e,t,"session",Wi),this.core=e,this.logger=t}}class wr extends Di{constructor(e,t){super(e,t,"request",Wi,(e=>e.id)),this.core=e,this.logger=t}}class br extends Di{constructor(e,t){super(e,t,"authKeys",nr,(()=>or)),this.core=e,this.logger=t}}class _r extends Di{constructor(e,t){super(e,t,"pairingTopics",nr),this.core=e,this.logger=t}}class Ir extends Di{constructor(e,t){super(e,t,"requests",nr,(e=>e.id)),this.core=e,this.logger=t}}class Er{constructor(e,t){this.core=e,this.logger=t,this.authKeys=new br(this.core,this.logger),this.pairingTopics=new _r(this.core,this.logger),this.requests=new Ir(this.core,this.logger)}
1async init(){await this.authKeys.init(),await this.pairingTopics.init(),await this.requests.init()}}class Pr extends class{constructor(e){this.opts=e,this.protocol="wc",this.version=2}}{constructor(e){super(e),this.protocol="wc",this.version=2,this.name=Gi,this.events=new r.EventEmitter,this.on=(e,t)=>this.events.on(e,t),this.once=(e,t)=>this.events.once(e,t),this.off=(e,t)=>this.events.off(e,t),this.removeListener=(e,t)=>this.events.removeListener(e,t),this.removeAllListeners=e=>this.events.removeAllListeners(e),this.connect=async e=>{try{return await this.engine.connect(e)}catch(t){throw this.logger.error(t.message),t}},this.pair=async e=>{try{return await this.engine.pair(e)}catch(t){throw this.logger.error(t.message),t}},this.approve=async e=>{try{return await this.engine.approve(e)}catch(t){throw this.logger.error(t.message),t}},this.reject=async e=>{try{return await this.engine.reject(e)}catch(t){throw this.logger.error(t.message),t}},this.update=async e=>{try{return await this.engine.update(e)}catch(t){throw this.logger.error(t.message),t}},this.extend=async e=>{try{return await this.engine.extend(e)}catch(t){throw this.logger.error(t.message),t}},this.request=async e=>{try{return await this.engine.request(e)}catch(t){throw this.logger.error(t.message),t}},this.respond=async e=>{try{return await this.engine.respond(e)}catch(t){throw this.logger.error(t.message),t}},this.ping=async e=>{try{return await this.engine.ping(e)}catch(t){throw this.logger.error(t.message),t}},this.emit=async e=>{try{return await this.engine.emit(e)}catch(t){throw this.logger.error(t.message),t}},this.disconnect=async e=>{try{return await this.engine.disconnect(e)}catch(t){throw this.logger.error(t.message),t}},this.find=e=>{try{return this.engine.find(e)}catch(t){throw this.logger.error(t.message),t}},this.getPendingSessionRequests=()=>{try{return this.engine.getPendingSessionRequests()}catch(e){throw this.logger.error(e.message),e}},this.authenticate=async e=>{try{return await this.engine.authenticate(e)}catch(t){throw this.logger.error(t.message),t}},this.formatAuthMessage=e=>{try{return this.engine.formatAuthMessage(e)}catch(t){throw this.logger.error(t.message),t}},this.approveSessionAuthenticate=async e=>{try{return await this.engine.approveSessionAuthenticate(e)}catch(t){throw this.logger.error(t.message),t}},this.rejectSessionAuthenticate=async e=>{try{return await this.engine.rejectSessionAuthenticate(e)}catch(t){throw this.logger.error(t.message),t}},this.name=e?.name||Gi,this.metadata=e?.metadata||(0,n.DaH)(),this.signConfig=e?.signConfig;const t=typeof e?.logger<"u"&&"string"!=typeof e?.logger?e.logger:(0,c.gw)((0,c.jI)({level:e?.logger||Qi}));this.core=e?.core||new Bi(e),this.logger=(0,c.Ep)(t,this.name),this.session=new vr(this.core,this.logger),this.proposal=new mr(this.core,this.logger),this.pendingRequest=new wr(this.core,this.logger),this.engine=new yr(this),this.auth=new Er(this.core,this.logger)}static async init(e){const t=new Pr(e);return await t.initialize(),t}get context(){return(0,c.Fd)(this.logger)}get pairing(){return this.core.pairing.pairings}async initialize(){this.logger.trace("Initialized");try{await this.core.start(),await this.session.init(),await this.proposal.init(),await this.pendingRequest.init(),await this.engine.init(),await this.auth.init(),this.core.verify.init({verifyUrl:this.metadata.verifyUrl}),this.logger.info("SignClient Initialization Success")}catch(u){throw this.logger.info("SignClient Initialization Failure"),this.logger.error(u.message),u}}}var Sr=i(88900);const Rr="error",Cr="wc@2:universal_provider:",xr="default_chain_changed";var qr=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof i.g<"u"?i.g:typeof self<"u"?self:{},Or={exports:{}};!function(e,t){(function(){var i,r="Expected a function",s="__lodash_hash_undefined__",n="__lodash_placeholder__",o=16,a=32,c=64,h=128,u=256,l=1/0,p=9007199254740991,d=NaN,g=4294967295,f=[["ary",h],["bind",1],["bindKey",2],["curry",8],["curryRight",o],["flip",512],["partial",a],["partialRight",c],["rearg",u]],y="[object Arguments]",m="[object Array]",v="[object Boolean]",w="[object Date]",b="[object Error]",_="[object Function]",I="[object GeneratorFunction]",E="[object Map]",P="[object Number]",S="[object Object]",R="[object Promise]",C="[object RegExp]",x="[object Set]",q="[object String]",O="[object Symbol]",T="[object WeakMap]",N="[object ArrayBuffer]",D="[object DataView]",A="[object Float32Array]",k="[object Float64Array
vendor: 7,128 bytes, line 1
1]",$="[object Int8Array]",M="[object Int16Array]",j="[object Int32Array]",z="[object Uint8Array]",U="[object Uint8ClampedArray]",L="[object Uint16Array]",H="[object Uint32Array]",V=/\b__p \+= '';/g,K=/\b(__p \+=) '' \+/g,F=/(__e\(.*?\)|\b__t\)) \+\n'';/g,B=/&(?:amp|lt|gt|quot|#39);/g,J=/[&<>"']/g,W=RegExp(B.source),G=RegExp(J.source),Q=/<%-([\s\S]+?)%>/g,Y=/<%([\s\S]+?)%>/g,Z=/<%=([\s\S]+?)%>/g,X=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ee=/^\w*$/,te=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ie=/[\\^$.*+?()[\]{}|]/g,re=RegExp(ie.source),se=/^\s+/,ne=/\s/,oe=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,ae=/\{\n\/\* \[wrapped with (.+)\] \*/,ce=/,? & /,he=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ue=/[()=,{}\[\]\/\s]/,le=/\\(\\)?/g,pe=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,de=/\w*$/,ge=/^[-+]0x[0-9a-f]+$/i,fe=/^0b[01]+$/i,ye=/^\[object .+?Constructor\]$/,me=/^0o[0-7]+$/i,ve=/^(?:0|[1-9]\d*)$/,we=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,be=/($^)/,_e=/['\n\r\u2028\u2029\\]/g,Ie="\\ud800-\\udfff",Ee="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Pe="\\u2700-\\u27bf",Se="a-z\\xdf-\\xf6\\xf8-\\xff",Re="A-Z\\xc0-\\xd6\\xd8-\\xde",Ce="\\ufe0e\\ufe0f",xe="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",qe="['\u2019]",Oe="["+Ie+"]",Te="["+xe+"]",Ne="["+Ee+"]",De="\\d+",Ae="["+Pe+"]",ke="["+Se+"]",$e="[^"+Ie+xe+De+Pe+Se+Re+"]",Me="\\ud83c[\\udffb-\\udfff]",je="[^"+Ie+"]",ze="(?:\\ud83c[\\udde6-\\uddff]){2}",Ue="[\\ud800-\\udbff][\\udc00-\\udfff]",Le="["+Re+"]",He="\\u200d",Ve="(?:"+ke+"|"+$e+")",Ke="(?:"+Le+"|"+$e+")",Fe="(?:['\u2019](?:d|ll|m|re|s|t|ve))?",Be="(?:['\u2019](?:D|LL|M|RE|S|T|VE))?",Je="(?:"+Ne+"|"+Me+")"+"?",We="["+Ce+"]?",Ge=We+Je+("(?:\\u200d(?:"+[je,ze,Ue].join("|")+")"+We+Je+")*"),Qe="(?:"+[Ae,ze,Ue].join("|")+")"+Ge,Ye="(?:"+[je+Ne+"?",Ne,ze,Ue,Oe].join("|")+")",Ze=RegExp(qe,"g"),Xe=RegExp(Ne,"g"),et=RegExp(Me+"(?="+Me+")|"+Ye+Ge,"g"),tt=RegExp([Le+"?"+ke+"+"+Fe+"(?="+[Te,Le,"$"].join("|")+")",Ke+"+"+Be+"(?="+[Te,Le+Ve,"$"].join("|")+")",Le+"?"+Ve+"+"+Fe,Le+"+"+Be,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",De,Qe].join("|"),"g"),it=RegExp("["+He+Ie+Ee+Ce+"]"),rt=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,st=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],nt=-1,ot={};ot[A]=ot[k]=ot[$]=ot[M]=ot[j]=ot[z]=ot[U]=ot[L]=ot[H]=!0,ot[y]=ot[m]=ot[N]=ot[v]=ot[D]=ot[w]=ot[b]=ot[_]=ot[E]=ot[P]=ot[S]=ot[C]=ot[x]=ot[q]=ot[T]=!1;var at={};at[y]=at[m]=at[N]=at[D]=at[v]=at[w]=at[A]=at[k]=at[$]=at[M]=at[j]=at[E]=at[P]=at[S]=at[C]=at[x]=at[q]=at[O]=at[z]=at[U]=at[L]=at[H]=!0,at[b]=at[_]=at[T]=!1;var ct={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},ht=parseFloat,ut=parseInt,lt="object"==typeof qr&&qr&&qr.Object===Object&&qr,pt="object"==typeof self&&self&&self.Object===Object&&self,dt=lt||pt||Function("return this")(),gt=t&&!t.nodeType&&t,ft=gt&&e&&!e.nodeType&&e,yt=ft&&ft.exports===gt,mt=yt&&lt.process,vt=function(){try{return ft&&ft.require&&ft.require("util").types||mt&&mt.binding&&mt.binding("util")}catch{}}(),wt=vt&&vt.isArrayBuffer,bt=vt&&vt.isDate,_t=vt&&vt.isMap,It=vt&&vt.isRegExp,Et=vt&&vt.isSet,Pt=vt&&vt.isTypedArray;function St(e,t,i){switch(i.length){case 0:return e.call(t);case 1:return e.call(t,i[0]);case 2:return e.call(t,i[0],i[1]);case 3:return e.call(t,i[0],i[1],i[2])}return e.apply(t,i)}function Rt(e,t,i,r){for(var s=-1,n=null==e?0:e.length;++s<n;){var o=e[s];t(r,o,i(o),e)}return r}function Ct(e,t){for(var i=-1,r=null==e?0:e.length;++i<r&&!1!==t(e[i],i,e););return e}function xt(e,t){for(var i=null==e?0:e.length;i--&&!1!==t(e[i],i,e););return e}function qt(e,t){for(var i=-1,r=null==e?0:e.length;++i<r;)if(!t(e[i],i,e))return!1;return!0}function Ot(e,t){for(var i=-1,r=null==e?0:e.length,s=0,n=[];++i<r;){var o=e[i];t(o,i,e)&&(n[s++]=o)}return n}function Tt(e,t){return!!(null==e?0:e.length)&&Lt(e,t,0)>-1}function Nt(e,t,i){for(var r=-1,s=null==e?0:e.length;++r<s;)if(i(t,e[r]))return!0;return!1}function Dt(e,t){for(var i=-1,r=null==e?0:e.length,s=Array(r);++i<r;)s[i]=t(e[i],i,e);return s}function At(e,t){for(var i=-1,r=t.length,s=e.length;++i<r;)e[s+i]=t[i];return e}function kt(e,t,i,r){var s=-1,n=null==e?0:e.length;for(r&&n&&(i=e[++s]);++s<n;)i=t(i,e[s],s,e);return i}function $t(e,t,i,r){var s=null==e?0:e.length;for(r&&s&&(i=e[--s]);s--;)i=t(i,e[s],s,e);return i}function Mt(e,t){for(var i=-1,r=null==e?0:e.length;++i<r;)if(t(e[i],i,e))return!0;return!1}var jt=Ft("length");function zt(e,t,i){var r;return i(e,(function(e,i,s){if(t(e,i,s))return r=i,!1})),r}function Ut(e,t,i,r){for(var s=e.length,n=i+(r?1:-1);r?n--:++n<s;)if(t(e[n],n,e))return n;return-1}function Lt(e,t,i){return t===t?function(e,t,i){for(var r=i-1,s=e.length;++r<s;)if(e[r]===t)return r;return-1}(e,t,i):Ut(e,Vt,i)}function Ht(e,t,i,r){for(var s=i-1,n=e.length;++s<n;)if(r(e[s],t))return s;return-1}function Vt(e){return e!==e}function Kt(e,t){var i=null==e?0:e.length;return i?Wt(e,t)/i:d}function Ft(e){return function(t){return null==t?i:t[e]}}function Bt(e){return function(t){return null==e?i:e[t]}}function Jt(e,t,i,r,s){return s(e,(function(e,s,n){i=r?(r=!1,e):t(i,e,s,n)})),i}function Wt(e,t){for(var r,s=-1,n=e.length;++s<n;){var o=t(e[s]);o!==i&&(r=r===i?o:r+o)}return r}function Gt(e,t){for(var i=-1,r=Array(e);++i<e;)r[i]=t(i);return r}function Qt(e){return e&&e.slice(0,di(e)+1).replace(se,"")}function Yt(e){return function(t){return e(t)}}function Zt(e,t){return Dt(t,(function(t){return e[t]}))}function Xt(e,t){return e.has(t)}function ei(e,t){for(var i=-1,r=e.length;++i<r&&Lt(t,e[i],0)>-1;);return i}function ti(e,t){for(var i=e.length;i--&&Lt(t,e[i],0)>-1;);return i}function ii(e,t){for(var i=e.length,r=0;i--;)e[i]===t&&++r;return r}var ri=Bt({"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss","\u0100":"A","\u0102":"A","\u0104":"A","\u0101":"a","\u0103":"a","\u0105":"a","\u0106":"C","\u0108":"C","\u010a":"C","\u010c":"C","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"
1c","\u010e":"D","\u0110":"D","\u010f":"d","\u0111":"d","\u0112":"E","\u0114":"E","\u0116":"E","\u0118":"E","\u011a":"E","\u0113":"e","\u0115":"e","\u0117":"e","\u0119":"e","\u011b":"e","\u011c":"G","\u011e":"G","\u0120":"G","\u0122":"G","\u011d":"g","\u011f":"g","\u0121":"g","\u0123":"g","\u0124":"H","\u0126":"H","\u0125":"h","\u0127":"h","\u0128":"I","\u012a":"I","\u012c":"I","\u012e":"I","\u0130":"I","\u0129":"i","\u012b":"i","\u012d":"i","\u012f":"i","\u0131":"i","\u0134":"J","\u0135":"j","\u0136":"K","\u0137":"k","\u0138":"k","\u0139":"L","\u013b":"L","\u013d":"L","\u013f":"L","\u0141":"L","\u013a":"l","\u013c":"l","\u013e":"l","\u0140":"l","\u0142":"l","\u0143":"N","\u0145":"N","\u0147":"N","\u014a":"N","\u0144":"n","\u0146":"n","\u0148":"n","\u014b":"n","\u014c":"O","\u014e":"O","\u0150":"O","\u014d":"o","\u014f":"o","\u0151":"o","\u0154":"R","\u0156":"R","\u0158":"R","\u0155":"r","\u0157":"r","\u0159":"r","\u015a":"S","\u015c":"S","\u015e":"S","\u0160":"S","\u015b":"s","\u015d":"s","\u015f":"s","\u0161":"s","\u0162":"T","\u0164":"T","\u0166":"T","\u0163":"t","\u0165":"t","\u0167":"t","\u0168":"U","\u016a":"U","\u016c":"U","\u016e":"U","\u0170":"U","\u0172":"U","\u0169":"u","\u016b":"u","\u016d":"u","\u016f":"u","\u0171":"u","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017b":"Z","\u017d":"Z","\u017a":"z","\u017c":"z","\u017e":"z","\u0132":"IJ","\u0133":"ij","\u0152":"Oe","\u0153":"oe","\u0149":"'n","\u017f":"s"}),si=Bt({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"});function ni(e){return"\\"+ct[e]}function oi(e){return it.test(e)}function ai(e){var t=-1,i=Array(e.size);return e.forEach((function(e,r){i[++t]=[r,e]})),i}function ci(e,t){return function(i){return e(t(i))}}function hi(e,t){for(var i=-1,r=e.length,s=0,o=[];++i<r;){var a=e[i];(a===t||a===n)&&(e[i]=n,o[s++]=i)}return o}function ui(e){var t=-1,i=Array(e.size);return e.forEach((function(e){i[++t]=e})),i}function li(e){return oi(e)?function(e){for(var t=et.lastIndex=0;et.test(e);)++t;return t}(e):jt(e)}function pi(e){return oi(e)?function(e){return e.match(et)||[]}(e):function(e){return e.split("")}(e)}function di(e){for(var t=e.length;t--&&ne.test(e.charAt(t)););return t}var gi=Bt({"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"});var fi=function e(t){var ne=(t=null==t?dt:fi.defaults(dt.Object(),t,fi.pick(dt,st))).Array,Ie=t.Date,Ee=t.Error,Pe=t.Function,Se=t.Math,Re=t.Object,Ce=t.RegExp,xe=t.String,qe=t.TypeError,Oe=ne.prototype,Te=Pe.prototype,Ne=Re.prototype,De=t["__core-js_shared__"],Ae=Te.toString,ke=Ne.hasOwnProperty,$e=0,Me=function(){var e=/[^.]+$/.exec(De&&De.keys&&De.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),je=Ne.toString,ze=Ae.call(Re),Ue=dt._,Le=Ce("^"+Ae.call(ke).replace(ie,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),He=yt?t.Buffer:i,Ve=t.Symbol,Ke=t.Uint8Array,Fe=He?He.allocUnsafe:i,Be=ci(Re.getPrototypeOf,Re),Je=Re.create,We=Ne.propertyIsEnumerable,Ge=Oe.splice,Qe=Ve?Ve.isConcatSpreadable:i,Ye=Ve?Ve.iterator:i,et=Ve?Ve.toStringTag:i,it=function(){try{var e=ln(Re,"defineProperty");return e({},"",{}),e}catch{}}(),ct=t.clearTimeout!==dt.clearTimeout&&t.clearTimeout,lt=Ie&&Ie.now!==dt.Date.now&&Ie.now,pt=t.setTimeout!==dt.setTimeout&&t.setTimeout,gt=Se.ceil,ft=Se.floor,mt=Re.getOwnPropertySymbols,vt=He?He.isBuffer:i,jt=t.isFinite,Bt=Oe.join,yi=ci(Re.keys,Re),mi=Se.max,vi=Se.min,wi=Ie.now,bi=t.parseInt,_i=Se.random,Ii=Oe.reverse,Ei=ln(t,"DataView"),Pi=ln(t,"Map"),Si=ln(t,"Promise"),Ri=ln(t,"Set"),Ci=ln(t,"WeakMap"),xi=ln(Re,"create"),qi=Ci&&new Ci,Oi={},Ti=jn(Ei),Ni=jn(Pi),Di=jn(Si),Ai=jn(Ri),ki=jn(Ci),$i=Ve?Ve.prototype:i,Mi=$i?$i.valueOf:i,ji=$i?$i.toString:i;function zi(e){if(ia(e)&&!Fo(e)&&!(e instanceof Vi)){if(e instanceof Hi)return e;if(ke.call(e,"__wrapped__"))return zn(e)}return new Hi(e)}var Ui=function(){function e(){}return function(t){if(!ta(t))return{};if(Je)return Je(t);e.prototype=t;var r=new e;return e.prototype=i,r}}();function Li(){}function Hi(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=i}function Vi(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=g,this.__views__=[]}function Ki(e){var t=-1,i=null==e?0:e.length;for(this.clear();++t<i;){var r=e[t];this.set(r[0],r[1])}}function Fi(e){var t=-1,i=null==e?0:e.length;for(this.clear();++t<i;){var r=e[t];this.set(r[0],r[1])}}function Bi(e){var t=-1,i=null==e?0:e.length;for(this.clear();++t<i;){var r=e[t];this.set(r[0],r[1])}}function Ji(e){var t=-1,i=null==e?0:e.length;for(this.__data__=new Bi;++t<i;)this.add(e[t])}function Wi(e){var t=this.__data__=new Fi(e);this.size=t.size}function Gi(e,t){var i=Fo(e),r=!i&&Ko(e),s=!i&&!r&&Go(e),n=!i&&!r&&!s&&ua(e),o=i||r||s||n,a=o?Gt(e.length,xe):[],c=a.length;for(var h in e)(t||ke.call(e,h))&&(!o||!("length"==h||s&&("offset"==h||"parent"==h)||n&&("buffer"==h||"byteLength"==h||"byteOffset"==h)||vn(h,c)))&&a.push(h);return a}function Qi(e){var t=e.length;return t?e[Jr(0,t-1)]:i}function Yi(e,t){return kn(xs(e),or(t,0,e.length))}function Zi(e){return kn(xs(e))}function Xi(e,t,r){(r!==i&&!Lo(e[t],r)||r===i&&!(t in e))&&sr(e,t,r)}function er(e,t,r){var s=e[t];(!ke.call(e,t)||!Lo(s,r)||r===i&&!(t in e))&&sr(e,t,r)}function tr(e,t){for(var i=e.length;i--;)if(Lo(e[i][0],t))return i;return-1}
vendor: 13,523 bytes, line 1
1function ir(e,t,i,r){return lr(e,(function(e,s,n){t(r,e,i(e),n)})),r}function rr(e,t){return e&&qs(t,Na(t),e)}function sr(e,t,i){"__proto__"==t&&it?it(e,t,{configurable:!0,enumerable:!0,value:i,writable:!0}):e[t]=i}function nr(e,t){for(var r=-1,s=t.length,n=ne(s),o=null==e;++r<s;)n[r]=o?i:Ca(e,t[r]);return n}function or(e,t,r){return e===e&&(r!==i&&(e=e<=r?e:r),t!==i&&(e=e>=t?e:t)),e}function ar(e,t,r,s,n,o){var a,c=1&t,h=2&t,u=4&t;if(r&&(a=n?r(e,s,n,o):r(e)),a!==i)return a;if(!ta(e))return e;var l=Fo(e);if(l){if(a=function(e){var t=e.length,i=new e.constructor(t);return t&&"string"==typeof e[0]&&ke.call(e,"index")&&(i.index=e.index,i.input=e.input),i}(e),!c)return xs(e,a)}else{var p=gn(e),d=p==_||p==I;if(Go(e))return Is(e,c);if(p==S||p==y||d&&!n){if(a=h||d?{}:yn(e),!c)return h?function(e,t){return qs(e,dn(e),t)}(e,function(e,t){return e&&qs(t,Da(t),e)}(a,e)):function(e,t){return qs(e,pn(e),t)}(e,rr(a,e))}else{if(!at[p])return n?e:{};a=function(e,t,i){var r=e.constructor;switch(t){case N:return Es(e);case v:case w:return new r(+e);case D:return function(e,t){var i=t?Es(e.buffer):e.buffer;return new e.constructor(i,e.byteOffset,e.byteLength)}(e,i);case A:case k:case $:case M:case j:case z:case U:case L:case H:return Ps(e,i);case E:return new r;case P:case q:return new r(e);case C:return function(e){var t=new e.constructor(e.source,de.exec(e));return t.lastIndex=e.lastIndex,t}(e);case x:return new r;case O:return function(e){return Mi?Re(Mi.call(e)):{}}(e)}}(e,p,c)}}o||(o=new Wi);var g=o.get(e);if(g)return g;o.set(e,a),aa(e)?e.forEach((function(i){a.add(ar(i,t,r,i,e,o))})):ra(e)&&e.forEach((function(i,s){a.set(s,ar(i,t,r,s,e,o))}));var f=l?i:(u?h?sn:rn:h?Da:Na)(e);return Ct(f||e,(function(i,s){f&&(i=e[s=i]),er(a,s,ar(i,t,r,s,e,o))})),a}function cr(e,t,r){var s=r.length;if(null==e)return!s;for(e=Re(e);s--;){var n=r[s],o=t[n],a=e[n];if(a===i&&!(n in e)||!o(a))return!1}return!0}function hr(e,t,s){if("function"!=typeof e)throw new qe(r);return Tn((function(){e.apply(i,s)}),t)}function ur(e,t,i,r){var s=-1,n=Tt,o=!0,a=e.length,c=[],h=t.length;if(!a)return c;i&&(t=Dt(t,Yt(i))),r?(n=Nt,o=!1):t.length>=200&&(n=Xt,o=!1,t=new Ji(t));e:for(;++s<a;){var u=e[s],l=null==i?u:i(u);if(u=r||0!==u?u:0,o&&l===l){for(var p=h;p--;)if(t[p]===l)continue e;c.push(u)}else n(t,l,r)||c.push(u)}return c}zi.templateSettings={escape:Q,evaluate:Y,interpolate:Z,variable:"",imports:{_:zi}},zi.prototype=Li.prototype,zi.prototype.constructor=zi,Hi.prototype=Ui(Li.prototype),Hi.prototype.constructor=Hi,Vi.prototype=Ui(Li.prototype),Vi.prototype.constructor=Vi,Ki.prototype.clear=function(){this.__data__=xi?xi(null):{},this.size=0},Ki.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Ki.prototype.get=function(e){var t=this.__data__;if(xi){var r=t[e];return r===s?i:r}return ke.call(t,e)?t[e]:i},Ki.prototype.has=function(e){var t=this.__data__;return xi?t[e]!==i:ke.call(t,e)},Ki.prototype.set=function(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=xi&&t===i?s:t,this},Fi.prototype.clear=function(){this.__data__=[],this.size=0},Fi.prototype.delete=function(e){var t=this.__data__,i=tr(t,e);return!(i<0)&&(i==t.length-1?t.pop():Ge.call(t,i,1),--this.size,!0)},Fi.prototype.get=function(e){var t=this.__data__,r=tr(t,e);return r<0?i:t[r][1]},Fi.prototype.has=function(e){return tr(this.__data__,e)>-1},Fi.prototype.set=function(e,t){var i=this.__data__,r=tr(i,e);return r<0?(++this.size,i.push([e,t])):i[r][1]=t,this},Bi.prototype.clear=function(){this.size=0,this.__data__={hash:new Ki,map:new(Pi||Fi),string:new Ki}},Bi.prototype.delete=function(e){var t=hn(this,e).delete(e);return this.size-=t?1:0,t},Bi.prototype.get=function(e){return hn(this,e).get(e)},Bi.prototype.has=function(e){return hn(this,e).has(e)},Bi.prototype.set=function(e,t){var i=hn(this,e),r=i.size;return i.set(e,t),this.size+=i.size==r?0:1,this},Ji.prototype.add=Ji.prototype.push=function(e){return this.__data__.set(e,s),this},Ji.prototype.has=function(e){return this.__data__.has(e)},Wi.prototype.clear=function(){this.__data__=new Fi,this.size=0},Wi.prototype.delete=function(e){var t=this.__data__,i=t.delete(e);return this.size=t.size,i},Wi.prototype.get=function(e){return this.__data__.get(e)},Wi.prototype.has=function(e){return this.__data__.has(e)},Wi.prototype.set=function(e,t){var i=this.__data__;if(i instanceof Fi){var r=i.__data__;if(!Pi||r.length<199)return r.push([e,t]),this.size=++i.size,this;i=this.__data__=new Bi(r)}return i.set(e,t),this.size=i.size,this};var lr=Ns(wr),pr=Ns(br,!0);function dr(e,t){var i=!0;return lr(e,(function(e,r,s){return i=!!t(e,r,s)})),i}function gr(e,t,r){for(var s=-1,n=e.length;++s<n;){var o=e[s],a=t(o);if(null!=a&&(c===i?a===a&&!ha(a):r(a,c)))var c=a,h=o}return h}function fr(e,t){var i=[];return lr(e,(function(e,r,s){t(e,r,s)&&i.push(e)})),i}function yr(e,t,i,r,s){var n=-1,o=e.length;for(i||(i=mn),s||(s=[]);++n<o;){var a=e[n];t>0&&i(a)?t>1?yr(a,t-1,i,r,s):At(s,a):r||(s[s.length]=a)}return s}var mr=Ds(),vr=Ds(!0);function wr(e,t){return e&&mr(e,t,Na)}function br(e,t){return e&&vr(e,t,Na)}function _r(e,t){return Ot(t,(function(t){return Zo(e[t])}))}function Ir(e,t){for(var r=0,s=(t=vs(t,e)).length;null!=e&&r<s;)e=e[Mn(t[r++])];return r&&r==s?e:i}function Er(e,t,i){var r=t(e);return Fo(e)?r:At(r,i(e))}function Pr(e){return null==e?e===i?"[object Undefined]":"[object Null]":et&&et in Re(e)?function(e){var t=ke.call(e,et),r=e[et];try{e[et]=i;var s=!0}catch{}var n=je.call(e);return s&&(t?e[et]=r:delete e[et]),n}(e):function(e){return je.call(e)}(e)}function Sr(e,t){return e>t}function Rr(e,t){return null!=e&&ke.call(e,t)}function Cr(e,t){return null!=e&&t in Re(e)}function xr(e,t,r){for(var s=r?Nt:Tt,n=e[0].length,o=e.length,a=o,c=ne(o),h=1/0,u=[];a--;){var l=e[a];a&&t&&(l=Dt(l,Yt(t))),h=vi(l.length,h),c[a]=!r&&(t||n>=120&&l.length>=120)?new Ji(a&&l):i}l=e[0];var p=-1,d=c[0];e:for(;++p<n&&u.length<h;){var g=l[p],f=t?t(g):g;if(g=r||0!==g?g:0,!(d?Xt(d,f):s(u,f,r))){for(a=o;--a;){var y=c[a];if(!(y?Xt(y,f):s(e[a],f,r)))continue e}d&&d.push(f),u.push(g)}}return u}function qr(e,t,r){var s=null==(e=Cn(e,t=vs(t,e)))?e:e[Mn(Qn(t))];return null==s?i:St(s,e,r)}function Or(e){return ia(e)&&Pr(e)==y}function Tr(e,t,r,s,n){return e===t||(null==e||null==t||!ia(e)&&!ia(t)?e!==e&&t!==t:function(e,t,r,s,n,o){var a=Fo(e),c=Fo(t),h=a?m:gn(e),u=c?m:gn(t),l=(h=h==y?S:h)==S,p=(u=u==y?S:u)==S,d=h==u;if(d&&Go(e)){if(!Go(t))return!1;a=!0,l=!1}if(d&&!l)return o||(o=new Wi),a||ua(e)?en(e,t,r,s,n,o):function(e,t,i,r,s,n,o){switch(i){case D:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case N:return!(e.byteLength!=t.byteLength||!n(new Ke(e),new Ke(t)));case v:case w:case P:return Lo(+e,+t);case b:return e.name==t.name&&e.message==t.message;case C:case q:return e==t+"";case E:var a=ai;case x:var c=1&r;if(a||(a=ui),e.size!=t.size&&!c)return!1;var h=o.get(e);if(h)return h==t;r|=2,o.set(e,t);var u=en(a(e),a(t),r,s,n,o);return o.delete(e),u;case O:if(Mi)return Mi.call(e)==Mi.call(t)}return!1}(e,t,h,r,s,n,o);if(!(1&r)){var g=l&&ke.call(e,"__wrapped__"),f=p&&ke.call(t,"__wrapped__");if(g||f){var _=g?e.value():e,I=f?t.value():t;return o||(o=new Wi),n(_,I,r,s,o)}}return!!d&&(o||(o=new Wi),function(e,t,r,s,n,o){var a=1&r,c=rn(e),h=c.length,u=rn(t).length;if(h!=u&&!a)return!1;for(var l=h;l--;){var p=c[l];if(!(a?p in t:ke.call(t,p)))return!1}var d=o.get(e),g=o.get(t);if(d&&g)return d==t&&g==e;var f=!0;o.set(e,t),o.set(t,e);for(var y=a;++l<h;){var m=e[p=c[l]],v=t[p];if(s)var w=a?s(v,m,p,t,e,o):s(m,v,p,e,t,o);if(!(w===i?m===v||n(m,v,r,s,o):w)){f=!1;break}y||(y="constructor"==p)}if(f&&!y){var b=e.constructor,_=t.constructor;b!=_&&"constructor"in e&&"constructor"in t&&!("function"==typeof b&&b instanceof b&&"function"==typeof _&&_ instanceof _)&&(f=!1)}return o.delete(e),o.delete(t),f}(e,t,r,s,n,o))}(e,t,r,s,Tr,n))}function Nr(e,t,r,s){var n=r.length,o=n,a=!s;if(null==e)return!o;for(e=Re(e);n--;){var c=r[n];if(a&&c[2]?c[1]!==e[c[0]]:!(c[0]in e))return!1}for(;++n<o;){var h=(c=r[n])[0],u=e[h],l=c[1];if(a&&c[2]){if(u===i&&!(h in e))return!1}else{var p=new Wi;if(s)var d=s(u,l,h,e,t,p);if(!(d===i?Tr(l,u,3,s,p):d))return!1}}return!0}function Dr(e){return!(!ta(e)||function(e){return!!Me&&Me in e}(e))&&(Zo(e)?Le:ye).test(jn(e))}function Ar(e){return"function"==typeof e?e:null==e?sc:"object"==typeof e?Fo(e)?Ur(e[0],e[1]):zr(e):dc(e)}function kr(e){if(!En(e))return yi(e);var t=[];for(var i in Re(e))ke.call(e,i)&&"constructor"!=i&&t.push(i);return t}function $r(e){if(!ta(e))return function(e){var t=[];if(null!=e)for(var i in Re(e))t.push(i);return t}(e);var t=En(e),i=[];for(var r in e)"constructor"==r&&(t||!ke.call(e,r))||i.push(r);return i}function Mr(e,t){return e<t}function jr(e,t){var i=-1,r=Jo(e)?ne(e.length):[];return lr(e,(function(e,s,n){r[++i]=t(e,s,n)})),r}function zr(e){var t=un(e);return 1==t.length&&t[0][2]?Sn(t[0][0],t[0][1]):function(i){return i===e||Nr(i,e,t)}}function Ur(e,t){return bn(e)&&Pn(t)?Sn(Mn(e),t):function(r){var s=Ca(r,e);return s===i&&s===t?xa(r,e):Tr(t,s,3)}}function Lr(e,t,r,s,n){e!==t&&mr(t,(function(o,a){if(n||(n=new Wi),ta(o))!function(e,t,r,s,n,o,a){var c=qn(e,r),h=qn(t,r),u=a.get(h);if(u)return void Xi(e,r,u);var l=o?o(c,h,r+"",e,t,a):i,p=l===i;if(p){var d=Fo(h),g=!d&&Go(h),f=!d&&!g&&ua(h);l=h,d||g||f?Fo(c)?l=c:Wo(c)?l=xs(c):g?(p=!1,l=Is(h,!0)):f?(p=!1,l=Ps(h,!0)):l=[]:na(h)||Ko(h)?(l=c,Ko(c)?l=va(c):(!ta(c)||Zo(c))&&(l=yn(h))):p=!1}p&&(a.set(h,l),n(l,h,s,o,a),a.delete(h)),Xi(e,r,l)}(e,t,a,r,Lr,s,n);else{var c=s?s(qn(e,a),o,a+"",e,t,n):i;c===i&&(c=o),Xi(e,a,c)}}),Da)}function Hr(e,t){var r=e.length;if(r)return vn(t+=t<0?r:0,r)?e[t]:i}function Vr(e,t,i){t=t.length?Dt(t,(function(e){return Fo(e)?function(t){return Ir(t,1===e.length?e[0]:e)}:e})):[sc];var r=-1;t=Dt(t,Yt(cn()));var s=jr(e,(function(e,i,s){var n=Dt(t,(function(t){return t(e)}));return{criteria:n,index:++r,value:e}}));return function(e,t){var i=e.length;for(e.sort(t);i--;)e[i]=e[i].value;return e}(s,(function(e,t){return function(e,t,i){for(var r=-1,s=e.criteria,n=t.criteria,o=s.length,a=i.length;++r<o;){var c=Ss(s[r],n[r]);if(c)return r>=a?c:c*("desc"==i[r]?-1:1)}return e.index-t.index}(e,t,i)}))}function Kr(e,t,i){for(var r=-1,s=t.length,n={};++r<s;){var o=t[r],a=Ir(e,o);i(a,o)&&Zr(n,vs(o,e),a)}return n}function Fr(e,t,i,r){var s=r?Ht:Lt,n=-1,o=t.length,a=e;for(e===t&&(t=xs(t)),i&&(a=Dt(e,Yt(i)));++n<o;)for(var c=0,h=t[n],u=i?i(h):h;(c=s(a,u,c,r))>-1;)a!==e&&Ge.call(a,c,1),Ge.call(e,c,1);return e}function Br(e,t){for(var i=e?t.length:0,r=i-1;i--;){var s=t[i];if(i==r||s!==n){var n=s;vn(s)?Ge.call(e,s,1):us(e,s)}}return e}function Jr(e,t){return e+ft(_i()*(t-e+1))}function Wr(e,t){var i="";if(!e||t<1||t>p)return i;do{t%2&&(i+=e),(t=ft(t/2))&&(e+=e)}while(t);return i}function Gr(e,t){return Nn(Rn(e,t,sc),e+"")}function Qr(e){return Qi(La(e))}function Yr(e,t){var i=La(e);return kn(i,or(t,0,i.length))}function Zr(e,t,r,s){if(!ta(e))return e;for(var n=-1,o=(t=vs(t,e)).length,a=o-1,c=e;null!=c&&++n<o;){var h=Mn(t[n]),u=r;if("__proto__"===h||"constructor"===h||"prototype"===h)return e;if(n!=a){var l=c[h];(u=s?s(l,h,c):i)===i&&(u=ta(l)?l:vn(t[n+1])?[]:{})}er(c,h,u),c=c[h]}return e}var Xr=qi?function(e,t){return qi.set(e,t),e}:sc,es=it?function(e,t){return it(e,"toString",{configurable:!0,enumerable:!1,value:tc(t),writable:!0})}:sc;function ts(e){return kn(La(e))}function is(e,t,i){var r=-1,s=e.length;t<0&&(t=-t>s?0:s+t),(i=i>s?s:i)<0&&(i+=s),s=t>i?0:i-t>>>0,t>>>=0;for(var n=ne(s);++r<s;)n[r]=e[r+t];return n}function rs(e,t){var i;return lr(e,(function(e,r,s){return!(i=t(e,r,s))})),!!i}function ss(e,t,i){var r=0,s=null==e?r:e.length;if("number"==typeof t&&t===t&&s<=2147483647){for(;r<s;){var n=r+s>>>1,o=e[n];null!==o&&!ha(o)&&(i?o<=t:o<t)?r=n+1:s=n}return s}return ns(e,t,sc,i)}function ns(e,t,r,s){var n=0,o=null==e?0:e.length;if(0===o)return 0;for(var a=(t=r(t))!==t,c=null===t,h=ha(t),u=t===i;n<o;){var l=ft((n+o)/2),p=r(e[l]),d=p!==i,g=null===p,f=p===p,y=ha(p);if(a)var m=s||f;else m=u?f&&(s||d):c?f&&d&&(s||!g):h?f&&d&&!g&&(s||!y):!g&&!y&&(s?p<=t:p<t);m?n=l+1:o=l}return vi(o,4294967294)}function os(e,t){for(var i=-1,r=e.length,s=0,n=[];++i<r;){var o=e[i],a=t?t(o):o;if(!i||!Lo(a,c)){var c=a;n[s++]=0===o?0:o}}return n}function as(e){return"number"==typeof e?e:ha(e)?d:+e}function cs(e){if("string"==typeof e)return e;if(Fo(e))return Dt(e,cs)+"";if(ha(e))return ji?ji.call(e):"";var t=e+"";return"0"==t&&1/e==-l?"-0":t}function hs(e,t,i){var r=-1,s=Tt,n=e.length,o=!0,a=[],c=a;if(i)o=!1,s=Nt;else if(n>=200){var h=t?null:Ws(e);if(h)return ui(h);o=!1,s=Xt,c=new Ji}else c=t?[]:a;e:for(;++r<n;){var u=e[r],l=t?t(u):u;if(u=i||0!==u?u:0,o&&l===l){for(var p=c.length;p--;)if(c[p]===l)continue e;t&&c.push(l),a.push(u)}else s(c,l,i)||(c!==a&&c.push(l),a.push(u))}return a}function us(e,t){return null==(e=Cn(e,t=vs(t,e)))||delete e[Mn(Qn(t))]}function ls(e,t,i,r){return Zr(e,t,i(Ir(e,t)),r)}function ps(e,t,i,r){for(var s=e.length,n=r?s:-1;(r?n--:++n<s)&&t(e[n],n,e););return i?is(e,r?0:n,r?n+1:s):is(e,r?n+1:0,r?s:n)}function ds(e,t){var i=e;return i instanceof Vi&&(i=i.value()),kt(t,(function(e,t){return t.func.apply(t.thisArg,At([e],t.args))}),i)}function gs(e,t,i){var r=e.length;if(r<2)return r?hs(e[0]):[];for(var s=-1,n=ne(r);++s<r;)for(var o=e[s],a=-1;++a<r;)a!=s&&(n[s]=ur(n[s]||o,e[a],t,i));return hs(yr(n,1),t,i)}function fs(e,t,r){for(var s=-1,n=e.length,o=t.length,a={};++s<n;){var c=s<o?t[s]:i;r(a,e[s],c)}return a}function ys(e){return Wo(e)?e:[]}function ms(e){return"function"==typeof e?e:sc}
vendor: 4,322 bytes, line 1
1function vs(e,t){return Fo(e)?e:bn(e,t)?[e]:$n(wa(e))}var ws=Gr;function bs(e,t,r){var s=e.length;return r=r===i?s:r,!t&&r>=s?e:is(e,t,r)}var _s=ct||function(e){return dt.clearTimeout(e)};function Is(e,t){if(t)return e.slice();var i=e.length,r=Fe?Fe(i):new e.constructor(i);return e.copy(r),r}function Es(e){var t=new e.constructor(e.byteLength);return new Ke(t).set(new Ke(e)),t}function Ps(e,t){var i=t?Es(e.buffer):e.buffer;return new e.constructor(i,e.byteOffset,e.length)}function Ss(e,t){if(e!==t){var r=e!==i,s=null===e,n=e===e,o=ha(e),a=t!==i,c=null===t,h=t===t,u=ha(t);if(!c&&!u&&!o&&e>t||o&&a&&h&&!c&&!u||s&&a&&h||!r&&h||!n)return 1;if(!s&&!o&&!u&&e<t||u&&r&&n&&!s&&!o||c&&r&&n||!a&&n||!h)return-1}return 0}function Rs(e,t,i,r){for(var s=-1,n=e.length,o=i.length,a=-1,c=t.length,h=mi(n-o,0),u=ne(c+h),l=!r;++a<c;)u[a]=t[a];for(;++s<o;)(l||s<n)&&(u[i[s]]=e[s]);for(;h--;)u[a++]=e[s++];return u}function Cs(e,t,i,r){for(var s=-1,n=e.length,o=-1,a=i.length,c=-1,h=t.length,u=mi(n-a,0),l=ne(u+h),p=!r;++s<u;)l[s]=e[s];for(var d=s;++c<h;)l[d+c]=t[c];for(;++o<a;)(p||s<n)&&(l[d+i[o]]=e[s++]);return l}function xs(e,t){var i=-1,r=e.length;for(t||(t=ne(r));++i<r;)t[i]=e[i];return t}function qs(e,t,r,s){var n=!r;r||(r={});for(var o=-1,a=t.length;++o<a;){var c=t[o],h=s?s(r[c],e[c],c,r,e):i;h===i&&(h=e[c]),n?sr(r,c,h):er(r,c,h)}return r}function Os(e,t){return function(i,r){var s=Fo(i)?Rt:ir,n=t?t():{};return s(i,e,cn(r,2),n)}}function Ts(e){return Gr((function(t,r){var s=-1,n=r.length,o=n>1?r[n-1]:i,a=n>2?r[2]:i;for(o=e.length>3&&"function"==typeof o?(n--,o):i,a&&wn(r[0],r[1],a)&&(o=n<3?i:o,n=1),t=Re(t);++s<n;){var c=r[s];c&&e(t,c,s,o)}return t}))}function Ns(e,t){return function(i,r){if(null==i)return i;if(!Jo(i))return e(i,r);for(var s=i.length,n=t?s:-1,o=Re(i);(t?n--:++n<s)&&!1!==r(o[n],n,o););return i}}function Ds(e){return function(t,i,r){for(var s=-1,n=Re(t),o=r(t),a=o.length;a--;){var c=o[e?a:++s];if(!1===i(n[c],c,n))break}return t}}function As(e){return function(t){var r=oi(t=wa(t))?pi(t):i,s=r?r[0]:t.charAt(0),n=r?bs(r,1).join(""):t.slice(1);return s[e]()+n}}function ks(e){return function(t){return kt(Za(Ka(t).replace(Ze,"")),e,"")}}function $s(e){return function(){var t=arguments;switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3]);case 5:return new e(t[0],t[1],t[2],t[3],t[4]);case 6:return new e(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new e(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var i=Ui(e.prototype),r=e.apply(i,t);return ta(r)?r:i}}function Ms(e){return function(t,r,s){var n=Re(t);if(!Jo(t)){var o=cn(r,3);t=Na(t),r=function(e){return o(n[e],e,n)}}var a=e(t,r,s);return a>-1?n[o?t[a]:a]:i}}function js(e){return tn((function(t){var s=t.length,n=s,o=Hi.prototype.thru;for(e&&t.reverse();n--;){var a=t[n];if("function"!=typeof a)throw new qe(r);if(o&&!c&&"wrapper"==on(a))var c=new Hi([],!0)}for(n=c?n:s;++n<s;){var h=on(a=t[n]),u="wrapper"==h?nn(a):i;c=u&&_n(u[0])&&424==u[1]&&!u[4].length&&1==u[9]?c[on(u[0])].apply(c,u[3]):1==a.length&&_n(a)?c[h]():c.thru(a)}return function(){var e=arguments,i=e[0];if(c&&1==e.length&&Fo(i))return c.plant(i).value();for(var r=0,n=s?t[r].apply(this,e):i;++r<s;)n=t[r].call(this,n);return n}}))}function zs(e,t,r,s,n,o,a,c,u,l){var p=t&h,d=1&t,g=2&t,f=24&t,y=512&t,m=g?i:$s(e);return function i(){for(var h=arguments.length,v=ne(h),w=h;w--;)v[w]=arguments[w];if(f)var b=an(i),_=ii(v,b);if(s&&(v=Rs(v,s,n,f)),o&&(v=Cs(v,o,a,f)),h-=_,f&&h<l){var I=hi(v,b);return Bs(e,t,zs,i.placeholder,r,v,I,c,u,l-h)}var E=d?r:this,P=g?E[e]:e;return h=v.length,c?v=xn(v,c):y&&h>1&&v.reverse(),p&&u<h&&(v.length=u),this&&this!==dt&&this instanceof i&&(P=m||$s(P)),P.apply(E,v)}}function Us(e,t){return function(i,r){return function(e,t,i,r){return wr(e,(function(e,s,n){t(r,i(e),s,n)})),r}(i,e,t(r),{})}}function Ls(e,t){return function(r,s){var n;if(r===i&&s===i)return t;if(r!==i&&(n=r),s!==i){if(n===i)return s;"string"==typeof r||"string"==typeof s?(r=cs(r),s=cs(s)):(r=as(r),s=as(s)),n=e(r,s)}return n}}function Hs(e){return tn((function(t){return t=Dt(t,Yt(cn())),Gr((function(i){var r=this;return e(t,(function(e){return St(e,r,i)}))}))}))}function Vs(e,t){var r=(t=t===i?" ":cs(t)).length;if(r<2)return r?Wr(t,e):t;var s=Wr(t,gt(e/li(t)));
vendor: 4,746 bytes, line 1
1return oi(t)?bs(pi(s),0,e).join(""):s.slice(0,e)}function Ks(e){return function(t,r,s){return s&&"number"!=typeof s&&wn(t,r,s)&&(r=s=i),t=ga(t),r===i?(r=t,t=0):r=ga(r),function(e,t,i,r){for(var s=-1,n=mi(gt((t-e)/(i||1)),0),o=ne(n);n--;)o[r?n:++s]=e,e+=i;return o}(t,r,s=s===i?t<r?1:-1:ga(s),e)}}function Fs(e){return function(t,i){return"string"==typeof t&&"string"==typeof i||(t=ma(t),i=ma(i)),e(t,i)}}function Bs(e,t,r,s,n,o,h,u,l,p){var d=8&t;t|=d?a:c,4&(t&=~(d?c:a))||(t&=-4);var g=[e,t,n,d?o:i,d?h:i,d?i:o,d?i:h,u,l,p],f=r.apply(i,g);return _n(e)&&On(f,g),f.placeholder=s,Dn(f,e,t)}function Js(e){var t=Se[e];return function(e,i){if(e=ma(e),(i=null==i?0:vi(fa(i),292))&&jt(e)){var r=(wa(e)+"e").split("e");return+((r=(wa(t(r[0]+"e"+(+r[1]+i)))+"e").split("e"))[0]+"e"+(+r[1]-i))}return t(e)}}var Ws=Ri&&1/ui(new Ri([,-0]))[1]==l?function(e){return new Ri(e)}:hc;function Gs(e){return function(t){var i=gn(t);return i==E?ai(t):i==x?function(e){var t=-1,i=Array(e.size);return e.forEach((function(e){i[++t]=[e,e]})),i}(t):function(e,t){return Dt(t,(function(t){return[t,e[t]]}))}(t,e(t))}}function Qs(e,t,s,l,p,d,g,f){var y=2&t;if(!y&&"function"!=typeof e)throw new qe(r);var m=l?l.length:0;if(m||(t&=-97,l=p=i),g=g===i?g:mi(fa(g),0),f=f===i?f:fa(f),m-=p?p.length:0,t&c){var v=l,w=p;l=p=i}var b=y?i:nn(e),_=[e,t,s,l,p,v,w,d,g,f];if(b&&function(e,t){var i=e[1],r=t[1],s=i|r,o=s<131,a=r==h&&8==i||r==h&&i==u&&e[7].length<=t[8]||384==r&&t[7].length<=t[8]&&8==i;if(!o&&!a)return e;1&r&&(e[2]=t[2],s|=1&i?0:4);var c=t[3];if(c){var l=e[3];e[3]=l?Rs(l,c,t[4]):c,e[4]=l?hi(e[3],n):t[4]}(c=t[5])&&(l=e[5],e[5]=l?Cs(l,c,t[6]):c,e[6]=l?hi(e[5],n):t[6]),(c=t[7])&&(e[7]=c),r&h&&(e[8]=null==e[8]?t[8]:vi(e[8],t[8])),null==e[9]&&(e[9]=t[9]),e[0]=t[0],e[1]=s}(_,b),e=_[0],t=_[1],s=_[2],l=_[3],p=_[4],!(f=_[9]=_[9]===i?y?0:e.length:mi(_[9]-m,0))&&24&t&&(t&=-25),t&&1!=t)I=8==t||t==o?function(e,t,r){var s=$s(e);return function n(){for(var o=arguments.length,a=ne(o),c=o,h=an(n);c--;)a[c]=arguments[c];var u=o<3&&a[0]!==h&&a[o-1]!==h?[]:hi(a,h);return(o-=u.length)<r?Bs(e,t,zs,n.placeholder,i,a,u,i,i,r-o):St(this&&this!==dt&&this instanceof n?s:e,this,a)}}(e,t,f):t!=a&&33!=t||p.length?zs.apply(i,_):function(e,t,i,r){var s=1&t,n=$s(e);return function t(){for(var o=-1,a=arguments.length,c=-1,h=r.length,u=ne(h+a),l=this&&this!==dt&&this instanceof t?n:e;++c<h;)u[c]=r[c];for(;a--;)u[c++]=arguments[++o];return St(l,s?i:this,u)}}(e,t,s,l);else var I=function(e,t,i){var r=1&t,s=$s(e);return function t(){return(this&&this!==dt&&this instanceof t?s:e).apply(r?i:this,arguments)}}(e,t,s);return Dn((b?Xr:On)(I,_),e,t)}function Ys(e,t,r,s){return e===i||Lo(e,Ne[r])&&!ke.call(s,r)?t:e}function Zs(e,t,r,s,n,o){return ta(e)&&ta(t)&&(o.set(t,e),Lr(e,t,i,Zs,o),o.delete(t)),e}function Xs(e){return na(e)?i:e}function en(e,t,r,s,n,o){var a=1&r,c=e.length,h=t.length;if(c!=h&&!(a&&h>c))return!1;var u=o.get(e),l=o.get(t);if(u&&l)return u==t&&l==e;var p=-1,d=!0,g=2&r?new Ji:i;for(o.set(e,t),o.set(t,e);++p<c;){var f=e[p],y=t[p];if(s)var m=a?s(y,f,p,t,e,o):s(f,y,p,e,t,o);if(m!==i){if(m)continue;d=!1;break}if(g){if(!Mt(t,(function(e,t){if(!Xt(g,t)&&(f===e||n(f,e,r,s,o)))return g.push(t)}))){d=!1;break}}else if(f!==y&&!n(f,y,r,s,o)){d=!1;break}}return o.delete(e),o.delete(t),d}function tn(e){return Nn(Rn(e,i,Fn),e+"")}function rn(e){return Er(e,Na,pn)}function sn(e){return Er(e,Da,dn)}var nn=qi?function(e){return qi.get(e)}:hc;function on(e){for(var t=e.name+"",i=Oi[t],r=ke.call(Oi,t)?i.length:0;r--;){var s=i[r],n=s.func;if(null==n||n==e)return s.name}return t}function an(e){return(ke.call(zi,"placeholder")?zi:e).placeholder}function cn(){var e=zi.iteratee||nc;return e=e===nc?Ar:e,arguments.length?e(arguments[0],arguments[1]):e}function hn(e,t){var i=e.__data__;return function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}(t)?i["string"==typeof t?"string":"hash"]:i.map}function un(e){for(var t=Na(e),i=t.length;i--;){var r=t[i],s=e[r];t[i]=[r,s,Pn(s)]}return t}function ln(e,t){var r=function(e,t){return null==e?i:e[t]}(e,t);return Dr(r)?r:i}var pn=mt?function(e){return null==e?[]:(e=Re(e),Ot(mt(e),(function(t){return We.call(e,t)})))}:yc,dn=mt?function(e){for(var t=[];e;)At(t,pn(e)),e=Be(e);return t}:yc,gn=Pr;function fn(e,t,i){for(var r=-1,s=(t=vs(t,e)).length,n=!1;++r<s;){var o=Mn(t[r]);if(!(n=null!=e&&i(e,o)))break;e=e[o]}return n||++r!=s?n:!!(s=null==e?0:e.length)&&ea(s)&&vn(o,s)&&(Fo(e)||Ko(e))}function yn(e){return"function"!=typeof e.constructor||En(e)?{}:Ui(Be(e))}function mn(e){return Fo(e)||Ko(e)||!!(Qe&&e&&e[Qe])}function vn(e,t){var i=typeof e;return!!(t=t??p)&&("number"==i||"symbol"!=i&&ve.test(e))&&e>-1&&e%1==0&&e<t}function wn(e,t,i){if(!ta(i))return!1;var r=typeof t;
vendor: 7,250 bytes, line 1
1return!!("number"==r?Jo(i)&&vn(t,i.length):"string"==r&&t in i)&&Lo(i[t],e)}function bn(e,t){if(Fo(e))return!1;var i=typeof e;return!("number"!=i&&"symbol"!=i&&"boolean"!=i&&null!=e&&!ha(e))||(ee.test(e)||!X.test(e)||null!=t&&e in Re(t))}function _n(e){var t=on(e),i=zi[t];if("function"!=typeof i||!(t in Vi.prototype))return!1;if(e===i)return!0;var r=nn(i);return!!r&&e===r[0]}(Ei&&gn(new Ei(new ArrayBuffer(1)))!=D||Pi&&gn(new Pi)!=E||Si&&gn(Si.resolve())!=R||Ri&&gn(new Ri)!=x||Ci&&gn(new Ci)!=T)&&(gn=function(e){var t=Pr(e),r=t==S?e.constructor:i,s=r?jn(r):"";if(s)switch(s){case Ti:return D;case Ni:return E;case Di:return R;case Ai:return x;case ki:return T}return t});var In=De?Zo:mc;function En(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Ne)}function Pn(e){return e===e&&!ta(e)}function Sn(e,t){return function(r){return null!=r&&(r[e]===t&&(t!==i||e in Re(r)))}}function Rn(e,t,r){return t=mi(t===i?e.length-1:t,0),function(){for(var i=arguments,s=-1,n=mi(i.length-t,0),o=ne(n);++s<n;)o[s]=i[t+s];s=-1;for(var a=ne(t+1);++s<t;)a[s]=i[s];return a[t]=r(o),St(e,this,a)}}function Cn(e,t){return t.length<2?e:Ir(e,is(t,0,-1))}function xn(e,t){for(var r=e.length,s=vi(t.length,r),n=xs(e);s--;){var o=t[s];e[s]=vn(o,r)?n[o]:i}return e}function qn(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}var On=An(Xr),Tn=pt||function(e,t){return dt.setTimeout(e,t)},Nn=An(es);function Dn(e,t,i){var r=t+"";return Nn(e,function(e,t){var i=t.length;if(!i)return e;var r=i-1;return t[r]=(i>1?"& ":"")+t[r],t=t.join(i>2?", ":" "),e.replace(oe,"{\n/* [wrapped with "+t+"] */\n")}(r,function(e,t){return Ct(f,(function(i){var r="_."+i[0];t&i[1]&&!Tt(e,r)&&e.push(r)})),e.sort()}(function(e){var t=e.match(ae);return t?t[1].split(ce):[]}(r),i)))}function An(e){var t=0,r=0;return function(){var s=wi(),n=16-(s-r);if(r=s,n>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(i,arguments)}}function kn(e,t){var r=-1,s=e.length,n=s-1;for(t=t===i?s:t;++r<t;){var o=Jr(r,n),a=e[o];e[o]=e[r],e[r]=a}return e.length=t,e}var $n=function(e){var t=ko(e,(function(e){return 500===i.size&&i.clear(),e})),i=t.cache;return t}((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(te,(function(e,i,r,s){t.push(r?s.replace(le,"$1"):i||e)})),t}));function Mn(e){if("string"==typeof e||ha(e))return e;var t=e+"";return"0"==t&&1/e==-l?"-0":t}function jn(e){if(null!=e){try{return Ae.call(e)}catch{}try{return e+""}catch{}}return""}function zn(e){if(e instanceof Vi)return e.clone();var t=new Hi(e.__wrapped__,e.__chain__);return t.__actions__=xs(e.__actions__),t.__index__=e.__index__,t.__values__=e.__values__,t}var Un=Gr((function(e,t){return Wo(e)?ur(e,yr(t,1,Wo,!0)):[]})),Ln=Gr((function(e,t){var r=Qn(t);return Wo(r)&&(r=i),Wo(e)?ur(e,yr(t,1,Wo,!0),cn(r,2)):[]})),Hn=Gr((function(e,t){var r=Qn(t);return Wo(r)&&(r=i),Wo(e)?ur(e,yr(t,1,Wo,!0),i,r):[]}));function Vn(e,t,i){var r=null==e?0:e.length;if(!r)return-1;var s=null==i?0:fa(i);return s<0&&(s=mi(r+s,0)),Ut(e,cn(t,3),s)}function Kn(e,t,r){var s=null==e?0:e.length;if(!s)return-1;var n=s-1;return r!==i&&(n=fa(r),n=r<0?mi(s+n,0):vi(n,s-1)),Ut(e,cn(t,3),n,!0)}function Fn(e){return(null==e?0:e.length)?yr(e,1):[]}function Bn(e){return e&&e.length?e[0]:i}var Jn=Gr((function(e){var t=Dt(e,ys);return t.length&&t[0]===e[0]?xr(t):[]})),Wn=Gr((function(e){var t=Qn(e),r=Dt(e,ys);return t===Qn(r)?t=i:r.pop(),r.length&&r[0]===e[0]?xr(r,cn(t,2)):[]})),Gn=Gr((function(e){var t=Qn(e),r=Dt(e,ys);return(t="function"==typeof t?t:i)&&r.pop(),r.length&&r[0]===e[0]?xr(r,i,t):[]}));function Qn(e){var t=null==e?0:e.length;return t?e[t-1]:i}var Yn=Gr(Zn);function Zn(e,t){return e&&e.length&&t&&t.length?Fr(e,t):e}var Xn=tn((function(e,t){var i=null==e?0:e.length,r=nr(e,t);return Br(e,Dt(t,(function(e){return vn(e,i)?+e:e})).sort(Ss)),r}));function eo(e){return null==e?e:Ii.call(e)}var to=Gr((function(e){return hs(yr(e,1,Wo,!0))})),io=Gr((function(e){var t=Qn(e);return Wo(t)&&(t=i),hs(yr(e,1,Wo,!0),cn(t,2))})),ro=Gr((function(e){var t=Qn(e);return t="function"==typeof t?t:i,hs(yr(e,1,Wo,!0),i,t)}));function so(e){if(!e||!e.length)return[];var t=0;return e=Ot(e,(function(e){if(Wo(e))return t=mi(e.length,t),!0})),Gt(t,(function(t){return Dt(e,Ft(t))}))}function no(e,t){if(!e||!e.length)return[];var r=so(e);return null==t?r:Dt(r,(function(e){return St(t,i,e)}))}var oo=Gr((function(e,t){return Wo(e)?ur(e,t):[]})),ao=Gr((function(e){return gs(Ot(e,Wo))})),co=Gr((function(e){var t=Qn(e);return Wo(t)&&(t=i),gs(Ot(e,Wo),cn(t,2))})),ho=Gr((function(e){var t=Qn(e);return t="function"==typeof t?t:i,gs(Ot(e,Wo),i,t)})),uo=Gr(so);var lo=Gr((function(e){var t=e.length,r=t>1?e[t-1]:i;return r="function"==typeof r?(e.pop(),r):i,no(e,r)}));function po(e){var t=zi(e);return t.__chain__=!0,t}function go(e,t){return t(e)}var fo=tn((function(e){var t=e.length,r=t?e[0]:0,s=this.__wrapped__,n=function(t){return nr(t,e)};return!(t>1||this.__actions__.length)&&s instanceof Vi&&vn(r)?((s=s.slice(r,+r+(t?1:0))).__actions__.push({func:go,args:[n],thisArg:i}),new Hi(s,this.__chain__).thru((function(e){return t&&!e.length&&e.push(i),e}))):this.thru(n)}));var yo=Os((function(e,t,i){ke.call(e,i)?++e[i]:sr(e,i,1)}));var mo=Ms(Vn),vo=Ms(Kn);function wo(e,t){return(Fo(e)?Ct:lr)(e,cn(t,3))}function bo(e,t){return(Fo(e)?xt:pr)(e,cn(t,3))}var _o=Os((function(e,t,i){ke.call(e,i)?e[i].push(t):sr(e,i,[t])}));var Io=Gr((function(e,t,i){var r=-1,s="function"==typeof t,n=Jo(e)?ne(e.length):[];return lr(e,(function(e){n[++r]=s?St(t,e,i):qr(e,t,i)})),n})),Eo=Os((function(e,t,i){sr(e,i,t)}));function Po(e,t){return(Fo(e)?Dt:jr)(e,cn(t,3))}var So=Os((function(e,t,i){e[i?0:1].push(t)}),(function(){return[[],[]]}));var Ro=Gr((function(e,t){if(null==e)return[];var i=t.length;return i>1&&wn(e,t[0],t[1])?t=[]:i>2&&wn(t[0],t[1],t[2])&&(t=[t[0]]),Vr(e,yr(t,1),[])})),Co=lt||function(){return dt.Date.now()};function xo(e,t,r){return t=r?i:t,t=e&&null==t?e.length:t,Qs(e,h,i,i,i,i,t)}function qo(e,t){var s;if("function"!=typeof t)throw new qe(r);return e=fa(e),function(){return--e>0&&(s=t.apply(this,arguments)),e<=1&&(t=i),s}}var Oo=Gr((function(e,t,i){var r=1;if(i.length){var s=hi(i,an(Oo));r|=a}return Qs(e,r,t,i,s)})),To=Gr((function(e,t,i){var r=3;if(i.length){var s=hi(i,an(To));r|=a}return Qs(t,r,e,i,s)}));function No(e,t,s){var n,o,a,c,h,u,l=0,p=!1,d=!1,g=!0;if("function"!=typeof e)throw new qe(r);function f(t){var r=n,s=o;return n=o=i,l=t,c=e.apply(s,r)}function y(e){return l=e,h=Tn(v,t),p?f(e):c}function m(e){var r=e-u;return u===i||r>=t||r<0||d&&e-l>=a}function v(){var e=Co();if(m(e))return w(e);h=Tn(v,function(e){var i=t-(e-u);return d?vi(i,a-(e-l)):i}(e))}function w(e){return h=i,g&&n?f(e):(n=o=i,c)}function b(){var e=Co(),r=m(e);if(n=arguments,o=this,u=e,r){if(h===i)return y(u);if(d)return _s(h),h=Tn(v,t),f(u)}return h===i&&(h=Tn(v,t)),c}return t=ma(t)||0,ta(s)&&(p=!!s.leading,a=(d="maxWait"in s)?mi(ma(s.maxWait)||0,t):a,g="trailing"in s?!!s.trailing:g),b.cancel=function(){h!==i&&_s(h),l=0,n=u=o=h=i},b.flush=function(){return h===i?c:w(Co())},b}var Do=Gr((function(e,t){return hr(e,1,t)})),Ao=Gr((function(e,t,i){return hr(e,ma(t)||0,i)}));function ko(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new qe(r);
vendor: 5,471 bytes, line 1
1var i=function(){var r=arguments,s=t?t.apply(this,r):r[0],n=i.cache;if(n.has(s))return n.get(s);var o=e.apply(this,r);return i.cache=n.set(s,o)||n,o};return i.cache=new(ko.Cache||Bi),i}function $o(e){if("function"!=typeof e)throw new qe(r);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}ko.Cache=Bi;var Mo=ws((function(e,t){var i=(t=1==t.length&&Fo(t[0])?Dt(t[0],Yt(cn())):Dt(yr(t,1),Yt(cn()))).length;return Gr((function(r){for(var s=-1,n=vi(r.length,i);++s<n;)r[s]=t[s].call(this,r[s]);return St(e,this,r)}))})),jo=Gr((function(e,t){var r=hi(t,an(jo));return Qs(e,a,i,t,r)})),zo=Gr((function(e,t){var r=hi(t,an(zo));return Qs(e,c,i,t,r)})),Uo=tn((function(e,t){return Qs(e,u,i,i,i,t)}));function Lo(e,t){return e===t||e!==e&&t!==t}var Ho=Fs(Sr),Vo=Fs((function(e,t){return e>=t})),Ko=Or(function(){return arguments}())?Or:function(e){return ia(e)&&ke.call(e,"callee")&&!We.call(e,"callee")},Fo=ne.isArray,Bo=wt?Yt(wt):function(e){return ia(e)&&Pr(e)==N};function Jo(e){return null!=e&&ea(e.length)&&!Zo(e)}function Wo(e){return ia(e)&&Jo(e)}var Go=vt||mc,Qo=bt?Yt(bt):function(e){return ia(e)&&Pr(e)==w};function Yo(e){if(!ia(e))return!1;var t=Pr(e);return t==b||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!na(e)}function Zo(e){if(!ta(e))return!1;var t=Pr(e);return t==_||t==I||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Xo(e){return"number"==typeof e&&e==fa(e)}function ea(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=p}function ta(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function ia(e){return null!=e&&"object"==typeof e}var ra=_t?Yt(_t):function(e){return ia(e)&&gn(e)==E};function sa(e){return"number"==typeof e||ia(e)&&Pr(e)==P}function na(e){if(!ia(e)||Pr(e)!=S)return!1;var t=Be(e);if(null===t)return!0;var i=ke.call(t,"constructor")&&t.constructor;return"function"==typeof i&&i instanceof i&&Ae.call(i)==ze}var oa=It?Yt(It):function(e){return ia(e)&&Pr(e)==C};var aa=Et?Yt(Et):function(e){return ia(e)&&gn(e)==x};function ca(e){return"string"==typeof e||!Fo(e)&&ia(e)&&Pr(e)==q}function ha(e){return"symbol"==typeof e||ia(e)&&Pr(e)==O}var ua=Pt?Yt(Pt):function(e){return ia(e)&&ea(e.length)&&!!ot[Pr(e)]};var la=Fs(Mr),pa=Fs((function(e,t){return e<=t}));function da(e){if(!e)return[];if(Jo(e))return ca(e)?pi(e):xs(e);if(Ye&&e[Ye])return function(e){for(var t,i=[];!(t=e.next()).done;)i.push(t.value);return i}(e[Ye]());var t=gn(e);return(t==E?ai:t==x?ui:La)(e)}function ga(e){return e?(e=ma(e))===l||e===-l?17976931348623157e292*(e<0?-1:1):e===e?e:0:0===e?e:0}function fa(e){var t=ga(e),i=t%1;return t===t?i?t-i:t:0}function ya(e){return e?or(fa(e),0,g):0}function ma(e){if("number"==typeof e)return e;if(ha(e))return d;if(ta(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=ta(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=Qt(e);var i=fe.test(e);return i||me.test(e)?ut(e.slice(2),i?2:8):ge.test(e)?d:+e}function va(e){return qs(e,Da(e))}function wa(e){return null==e?"":cs(e)}var ba=Ts((function(e,t){if(En(t)||Jo(t))qs(t,Na(t),e);else for(var i in t)ke.call(t,i)&&er(e,i,t[i])})),_a=Ts((function(e,t){qs(t,Da(t),e)})),Ia=Ts((function(e,t,i,r){qs(t,Da(t),e,r)})),Ea=Ts((function(e,t,i,r){qs(t,Na(t),e,r)})),Pa=tn(nr);var Sa=Gr((function(e,t){e=Re(e);var r=-1,s=t.length,n=s>2?t[2]:i;for(n&&wn(t[0],t[1],n)&&(s=1);++r<s;)for(var o=t[r],a=Da(o),c=-1,h=a.length;++c<h;){var u=a[c],l=e[u];(l===i||Lo(l,Ne[u])&&!ke.call(e,u))&&(e[u]=o[u])}return e})),Ra=Gr((function(e){return e.push(i,Zs),St(ka,i,e)}));function Ca(e,t,r){var s=null==e?i:Ir(e,t);return s===i?r:s}function xa(e,t){return null!=e&&fn(e,t,Cr)}var qa=Us((function(e,t,i){null!=t&&"function"!=typeof t.toString&&(t=je.call(t)),e[t]=i}),tc(sc)),Oa=Us((function(e,t,i){null!=t&&"function"!=typeof t.toString&&(t=je.call(t)),ke.call(e,t)?e[t].push(i):e[t]=[i]}),cn),Ta=Gr(qr);function Na(e){return Jo(e)?Gi(e):kr(e)}function Da(e){return Jo(e)?Gi(e,!0):$r(e)}var Aa=Ts((function(e,t,i){Lr(e,t,i)})),ka=Ts((function(e,t,i,r){Lr(e,t,i,r)})),$a=tn((function(e,t){var i={};if(null==e)return i;var r=!1;t=Dt(t,(function(t){return t=vs(t,e),r||(r=t.length>1),t})),qs(e,sn(e),i),r&&(i=ar(i,7,Xs));for(var s=t.length;s--;)us(i,t[s]);return i}));var Ma=tn((function(e,t){return null==e?{}:function(e,t){return Kr(e,t,(function(t,i){return xa(e,i)}))}(e,t)}));function ja(e,t){if(null==e)return{};var i=Dt(sn(e),(function(e){return[e]}));return t=cn(t),Kr(e,i,(function(e,i){return t(e,i[0])}))}var za=Gs(Na),Ua=Gs(Da);function La(e){return null==e?[]:Zt(e,Na(e))}var Ha=ks((function(e,t,i){return t=t.toLowerCase(),e+(i?Va(t):t)}));function Va(e){return Ya(wa(e).toLowerCase())}function Ka(e){return(e=wa(e))&&e.replace(we,ri).replace(Xe,"")}var Fa=ks((function(e,t,i){return e+(i?"-":"")+t.toLowerCase()})),Ba=ks((function(e,t,i){return e+(i?" ":"")+t.toLowerCase()})),Ja=As("toLowerCase");var Wa=ks((function(e,t,i){return e+(i?"_":"")+t.toLowerCase()}));var Ga=ks((function(e,t,i){return e+(i?" ":"")+Ya(t)}));var Qa=ks((function(e,t,i){return e+(i?" ":"")+t.toUpperCase()})),Ya=As("toUpperCase");function Za(e,t,r){return e=wa(e),(t=r?i:t)===i?function(e){return rt.test(e)}(e)?function(e){return e.match(tt)||[]}(e):function(e){return e.match(he)||[]}(e):e.match(t)||[]}var Xa=Gr((function(e,t){try{return St(e,i,t)}catch(r){return Yo(r)?r:new Ee(r)}}
vendor: 6,759 bytes, line 1
1)),ec=tn((function(e,t){return Ct(t,(function(t){t=Mn(t),sr(e,t,Oo(e[t],e))})),e}));function tc(e){return function(){return e}}var ic=js(),rc=js(!0);function sc(e){return e}function nc(e){return Ar("function"==typeof e?e:ar(e,1))}var oc=Gr((function(e,t){return function(i){return qr(i,e,t)}})),ac=Gr((function(e,t){return function(i){return qr(e,i,t)}}));function cc(e,t,i){var r=Na(t),s=_r(t,r);null==i&&(!ta(t)||!s.length&&r.length)&&(i=t,t=e,e=this,s=_r(t,Na(t)));var n=!(ta(i)&&"chain"in i)||!!i.chain,o=Zo(e);return Ct(s,(function(i){var r=t[i];e[i]=r,o&&(e.prototype[i]=function(){var t=this.__chain__;if(n||t){var i=e(this.__wrapped__),s=i.__actions__=xs(this.__actions__);return s.push({func:r,args:arguments,thisArg:e}),i.__chain__=t,i}return r.apply(e,At([this.value()],arguments))})})),e}function hc(){}var uc=Hs(Dt),lc=Hs(qt),pc=Hs(Mt);function dc(e){return bn(e)?Ft(Mn(e)):function(e){return function(t){return Ir(t,e)}}(e)}var gc=Ks(),fc=Ks(!0);function yc(){return[]}function mc(){return!1}var vc=Ls((function(e,t){return e+t}),0),wc=Js("ceil"),bc=Ls((function(e,t){return e/t}),1),_c=Js("floor");var Ic=Ls((function(e,t){return e*t}),1),Ec=Js("round"),Pc=Ls((function(e,t){return e-t}),0);return zi.after=function(e,t){if("function"!=typeof t)throw new qe(r);return e=fa(e),function(){if(--e<1)return t.apply(this,arguments)}},zi.ary=xo,zi.assign=ba,zi.assignIn=_a,zi.assignInWith=Ia,zi.assignWith=Ea,zi.at=Pa,zi.before=qo,zi.bind=Oo,zi.bindAll=ec,zi.bindKey=To,zi.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return Fo(e)?e:[e]},zi.chain=po,zi.chunk=function(e,t,r){t=(r?wn(e,t,r):t===i)?1:mi(fa(t),0);var s=null==e?0:e.length;if(!s||t<1)return[];for(var n=0,o=0,a=ne(gt(s/t));n<s;)a[o++]=is(e,n,n+=t);return a},zi.compact=function(e){for(var t=-1,i=null==e?0:e.length,r=0,s=[];++t<i;){var n=e[t];n&&(s[r++]=n)}return s},zi.concat=function(){var e=arguments.length;if(!e)return[];for(var t=ne(e-1),i=arguments[0],r=e;r--;)t[r-1]=arguments[r];return At(Fo(i)?xs(i):[i],yr(t,1))},zi.cond=function(e){var t=null==e?0:e.length,i=cn();return e=t?Dt(e,(function(e){if("function"!=typeof e[1])throw new qe(r);return[i(e[0]),e[1]]})):[],Gr((function(i){for(var r=-1;++r<t;){var s=e[r];if(St(s[0],this,i))return St(s[1],this,i)}}))},zi.conforms=function(e){return function(e){var t=Na(e);return function(i){return cr(i,e,t)}}(ar(e,1))},zi.constant=tc,zi.countBy=yo,zi.create=function(e,t){var i=Ui(e);return null==t?i:rr(i,t)},zi.curry=function e(t,r,s){var n=Qs(t,8,i,i,i,i,i,r=s?i:r);return n.placeholder=e.placeholder,n},zi.curryRight=function e(t,r,s){var n=Qs(t,o,i,i,i,i,i,r=s?i:r);return n.placeholder=e.placeholder,n},zi.debounce=No,zi.defaults=Sa,zi.defaultsDeep=Ra,zi.defer=Do,zi.delay=Ao,zi.difference=Un,zi.differenceBy=Ln,zi.differenceWith=Hn,zi.drop=function(e,t,r){var s=null==e?0:e.length;return s?is(e,(t=r||t===i?1:fa(t))<0?0:t,s):[]},zi.dropRight=function(e,t,r){var s=null==e?0:e.length;return s?is(e,0,(t=s-(t=r||t===i?1:fa(t)))<0?0:t):[]},zi.dropRightWhile=function(e,t){return e&&e.length?ps(e,cn(t,3),!0,!0):[]},zi.dropWhile=function(e,t){return e&&e.length?ps(e,cn(t,3),!0):[]},zi.fill=function(e,t,r,s){var n=null==e?0:e.length;return n?(r&&"number"!=typeof r&&wn(e,t,r)&&(r=0,s=n),function(e,t,r,s){var n=e.length;for((r=fa(r))<0&&(r=-r>n?0:n+r),(s=s===i||s>n?n:fa(s))<0&&(s+=n),s=r>s?0:ya(s);r<s;)e[r++]=t;return e}(e,t,r,s)):[]},zi.filter=function(e,t){return(Fo(e)?Ot:fr)(e,cn(t,3))},zi.flatMap=function(e,t){return yr(Po(e,t),1)},zi.flatMapDeep=function(e,t){return yr(Po(e,t),l)},zi.flatMapDepth=function(e,t,r){return r=r===i?1:fa(r),yr(Po(e,t),r)},zi.flatten=Fn,zi.flattenDeep=function(e){return(null==e?0:e.length)?yr(e,l):[]},zi.flattenDepth=function(e,t){return(null==e?0:e.length)?yr(e,t=t===i?1:fa(t)):[]},zi.flip=function(e){return Qs(e,512)},zi.flow=ic,zi.flowRight=rc,zi.fromPairs=function(e){for(var t=-1,i=null==e?0:e.length,r={};++t<i;){var s=e[t];r[s[0]]=s[1]}return r},zi.functions=function(e){return null==e?[]:_r(e,Na(e))},zi.functionsIn=function(e){return null==e?[]:_r(e,Da(e))},zi.groupBy=_o,zi.initial=function(e){return(null==e?0:e.length)?is(e,0,-1):[]},zi.intersection=Jn,zi.intersectionBy=Wn,zi.intersectionWith=Gn,zi.invert=qa,zi.invertBy=Oa,zi.invokeMap=Io,zi.iteratee=nc,zi.keyBy=Eo,zi.keys=Na,zi.keysIn=Da,zi.map=Po,zi.mapKeys=function(e,t){var i={};return t=cn(t,3),wr(e,(function(e,r,s){sr(i,t(e,r,s),e)})),i},zi.mapValues=function(e,t){var i={};return t=cn(t,3),wr(e,(function(e,r,s){sr(i,r,t(e,r,s))})),i},zi.matches=function(e){return zr(ar(e,1))},zi.matchesProperty=function(e,t){return Ur(e,ar(t,1))},zi.memoize=ko,zi.merge=Aa,zi.mergeWith=ka,zi.method=oc,zi.methodOf=ac,zi.mixin=cc,zi.negate=$o,zi.nthArg=function(e){return e=fa(e),Gr((function(t){return Hr(t,e)}))},zi.omit=$a,zi.omitBy=function(e,t){return ja(e,$o(cn(t)))},zi.once=function(e){return qo(2,e)},zi.orderBy=function(e,t,r,s){return null==e?[]:(Fo(t)||(t=null==t?[]:[t]),Fo(r=s?i:r)||(r=null==r?[]:[r]),Vr(e,t,r))},zi.over=uc,zi.overArgs=Mo,zi.overEvery=lc,zi.overSome=pc,zi.partial=jo,zi.partialRight=zo,zi.partition=So,zi.pick=Ma,zi.pickBy=ja,zi.property=dc,zi.propertyOf=function(e){return function(t){return null==e?i:Ir(e,t)}},zi.pull=Yn,zi.pullAll=Zn,zi.pullAllBy=function(e,t,i){return e&&e.length&&t&&t.length?Fr(e,t,cn(i,2)):e},zi.pullAllWith=function(e,t,r){return e&&e.length&&t&&t.length?Fr(e,t,i,r):e},zi.pullAt=Xn,zi.range=gc,zi.rangeRight=fc,zi.rearg=Uo,zi.reject=function(e,t){return(Fo(e)?Ot:fr)(e,$o(cn(t,3)))},zi.remove=function(e,t){var i=[];if(!e||!e.length)return i;var r=-1,s=[],n=e.length;for(t=cn(t,3);++r<n;){var o=e[r];t(o,r,e)&&(i.push(o),s.push(r))}return Br(e,s),i},zi.rest=function(e,t){if("function"!=typeof e)throw new qe(r);return Gr(e,t=t===i?t:fa(t))},zi.reverse=eo,zi.sampleSize=function(e,t,r){return t=(r?wn(e,t,r):t===i)?1:fa(t),(Fo(e)?Yi:Yr)(e,t)},zi.set=function(e,t,i){return null==e?e:Zr(e,t,i)},zi.setWith=function(e,t,r,s){return s="function"==typeof s?s:i,null==e?e:Zr(e,t,r,s)},zi.shuffle=function(e){return(Fo(e)?Zi:ts)(e)},zi.slice=function(e,t,r){var s=null==e?0:e.length;return s?(r&&"number"!=typeof r&&wn(e,t,r)?(t=0,r=s):(t=null==t?0:fa(t),r=r===i?s:fa(r)),is(e,t,r)):[]},zi.sortBy=Ro,zi.sortedUniq=function(e){return e&&e.length?os(e):[]},zi.sortedUniqBy=function(e,t){return e&&e.length?os(e,cn(t,2)):[]},zi.split=function(e,t,r){return r&&"number"!=typeof r&&wn(e,t,r)&&(t=r=i),(r=r===i?g:r>>>0)?(e=wa(e))&&("string"==typeof t||null!=t&&!oa(t))&&(!(t=cs(t))&&oi(e))?bs(pi(e),0,r):e.split(t,r):[]},zi.spread=function(e,t){if("function"!=typeof e)throw new qe(r);return t=null==t?0:mi(fa(t),0),Gr((function(i){var r=i[t],s=bs(i,0,t);return r&&At(s,r),St(e,this,s)}))},zi.tail=function(e){var t=null==e?0:e.length;return t?is(e,1,t):[]}
vendor: 4,994 bytes, line 1
1,zi.take=function(e,t,r){return e&&e.length?is(e,0,(t=r||t===i?1:fa(t))<0?0:t):[]},zi.takeRight=function(e,t,r){var s=null==e?0:e.length;return s?is(e,(t=s-(t=r||t===i?1:fa(t)))<0?0:t,s):[]},zi.takeRightWhile=function(e,t){return e&&e.length?ps(e,cn(t,3),!1,!0):[]},zi.takeWhile=function(e,t){return e&&e.length?ps(e,cn(t,3)):[]},zi.tap=function(e,t){return t(e),e},zi.throttle=function(e,t,i){var s=!0,n=!0;if("function"!=typeof e)throw new qe(r);return ta(i)&&(s="leading"in i?!!i.leading:s,n="trailing"in i?!!i.trailing:n),No(e,t,{leading:s,maxWait:t,trailing:n})},zi.thru=go,zi.toArray=da,zi.toPairs=za,zi.toPairsIn=Ua,zi.toPath=function(e){return Fo(e)?Dt(e,Mn):ha(e)?[e]:xs($n(wa(e)))},zi.toPlainObject=va,zi.transform=function(e,t,i){var r=Fo(e),s=r||Go(e)||ua(e);if(t=cn(t,4),null==i){var n=e&&e.constructor;i=s?r?new n:[]:ta(e)&&Zo(n)?Ui(Be(e)):{}}return(s?Ct:wr)(e,(function(e,r,s){return t(i,e,r,s)})),i},zi.unary=function(e){return xo(e,1)},zi.union=to,zi.unionBy=io,zi.unionWith=ro,zi.uniq=function(e){return e&&e.length?hs(e):[]},zi.uniqBy=function(e,t){return e&&e.length?hs(e,cn(t,2)):[]},zi.uniqWith=function(e,t){return t="function"==typeof t?t:i,e&&e.length?hs(e,i,t):[]},zi.unset=function(e,t){return null==e||us(e,t)},zi.unzip=so,zi.unzipWith=no,zi.update=function(e,t,i){return null==e?e:ls(e,t,ms(i))},zi.updateWith=function(e,t,r,s){return s="function"==typeof s?s:i,null==e?e:ls(e,t,ms(r),s)},zi.values=La,zi.valuesIn=function(e){return null==e?[]:Zt(e,Da(e))},zi.without=oo,zi.words=Za,zi.wrap=function(e,t){return jo(ms(t),e)},zi.xor=ao,zi.xorBy=co,zi.xorWith=ho,zi.zip=uo,zi.zipObject=function(e,t){return fs(e||[],t||[],er)},zi.zipObjectDeep=function(e,t){return fs(e||[],t||[],Zr)},zi.zipWith=lo,zi.entries=za,zi.entriesIn=Ua,zi.extend=_a,zi.extendWith=Ia,cc(zi,zi),zi.add=vc,zi.attempt=Xa,zi.camelCase=Ha,zi.capitalize=Va,zi.ceil=wc,zi.clamp=function(e,t,r){return r===i&&(r=t,t=i),r!==i&&(r=(r=ma(r))===r?r:0),t!==i&&(t=(t=ma(t))===t?t:0),or(ma(e),t,r)},zi.clone=function(e){return ar(e,4)},zi.cloneDeep=function(e){return ar(e,5)},zi.cloneDeepWith=function(e,t){return ar(e,5,t="function"==typeof t?t:i)},zi.cloneWith=function(e,t){return ar(e,4,t="function"==typeof t?t:i)},zi.conformsTo=function(e,t){return null==t||cr(e,t,Na(t))},zi.deburr=Ka,zi.defaultTo=function(e,t){return null==e||e!==e?t:e},zi.divide=bc,zi.endsWith=function(e,t,r){e=wa(e),t=cs(t);var s=e.length,n=r=r===i?s:or(fa(r),0,s);return(r-=t.length)>=0&&e.slice(r,n)==t},zi.eq=Lo,zi.escape=function(e){return(e=wa(e))&&G.test(e)?e.replace(J,si):e},zi.escapeRegExp=function(e){return(e=wa(e))&&re.test(e)?e.replace(ie,"\\$&"):e},zi.every=function(e,t,r){var s=Fo(e)?qt:dr;return r&&wn(e,t,r)&&(t=i),s(e,cn(t,3))},zi.find=mo,zi.findIndex=Vn,zi.findKey=function(e,t){return zt(e,cn(t,3),wr)},zi.findLast=vo,zi.findLastIndex=Kn,zi.findLastKey=function(e,t){return zt(e,cn(t,3),br)},zi.floor=_c,zi.forEach=wo,zi.forEachRight=bo,zi.forIn=function(e,t){return null==e?e:mr(e,cn(t,3),Da)},zi.forInRight=function(e,t){return null==e?e:vr(e,cn(t,3),Da)},zi.forOwn=function(e,t){return e&&wr(e,cn(t,3))},zi.forOwnRight=function(e,t){return e&&br(e,cn(t,3))},zi.get=Ca,zi.gt=Ho,zi.gte=Vo,zi.has=function(e,t){return null!=e&&fn(e,t,Rr)},zi.hasIn=xa,zi.head=Bn,zi.identity=sc,zi.includes=function(e,t,i,r){e=Jo(e)?e:La(e),i=i&&!r?fa(i):0;var s=e.length;return i<0&&(i=mi(s+i,0)),ca(e)?i<=s&&e.indexOf(t,i)>-1:!!s&&Lt(e,t,i)>-1},zi.indexOf=function(e,t,i){var r=null==e?0:e.length;if(!r)return-1;var s=null==i?0:fa(i);return s<0&&(s=mi(r+s,0)),Lt(e,t,s)},zi.inRange=function(e,t,r){return t=ga(t),r===i?(r=t,t=0):r=ga(r),function(e,t,i){return e>=vi(t,i)&&e<mi(t,i)}(e=ma(e),t,r)},zi.invoke=Ta,zi.isArguments=Ko,zi.isArray=Fo,zi.isArrayBuffer=Bo,zi.isArrayLike=Jo,zi.isArrayLikeObject=Wo,zi.isBoolean=function(e){return!0===e||!1===e||ia(e)&&Pr(e)==v},zi.isBuffer=Go,zi.isDate=Qo,zi.isElement=function(e){return ia(e)&&1===e.nodeType&&!na(e)},zi.isEmpty=function(e){if(null==e)return!0;if(Jo(e)&&(Fo(e)||"string"==typeof e||"function"==typeof e.splice||Go(e)||ua(e)||Ko(e)))return!e.length;var t=gn(e);if(t==E||t==x)return!e.size;if(En(e))return!kr(e).length;for(var i in e)if(ke.call(e,i))return!1;return!0},zi.isEqual=function(e,t){return Tr(e,t)},zi.isEqualWith=function(e,t,r){var s=(r="function"==typeof r?r:i)?r(e,t):i;return s===i?Tr(e,t,i,r):!!s},zi.isError=Yo,zi.isFinite=function(e){return"number"==typeof e&&jt(e)},zi.isFunction=Zo,zi.isInteger=Xo,zi.isLength=ea,zi.isMap=ra,zi.isMatch=function(e,t){return e===t||Nr(e,t,un(t))},zi.isMatchWith=function(e,t,r){return r="function"==typeof r?r:i,Nr(e,t,un(t),r)},zi.isNaN=function(e){return sa(e)&&e!=+e},zi.isNative=function(e){if(In(e))throw new Ee("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return Dr(e)},zi.isNil=function(e){return null==e},zi.isNull=function(e){return null===e},zi.isNumber=sa,zi.isObject=ta,zi.isObjectLike=ia,zi.isPlainObject=na,zi.isRegExp=oa,zi.isSafeInteger=function(e){return Xo(e)&&e>=-p&&e<=p}
vendor: 4,465 bytes, line 1
1,zi.isSet=aa,zi.isString=ca,zi.isSymbol=ha,zi.isTypedArray=ua,zi.isUndefined=function(e){return e===i},zi.isWeakMap=function(e){return ia(e)&&gn(e)==T},zi.isWeakSet=function(e){return ia(e)&&"[object WeakSet]"==Pr(e)},zi.join=function(e,t){return null==e?"":Bt.call(e,t)},zi.kebabCase=Fa,zi.last=Qn,zi.lastIndexOf=function(e,t,r){var s=null==e?0:e.length;if(!s)return-1;var n=s;return r!==i&&(n=(n=fa(r))<0?mi(s+n,0):vi(n,s-1)),t===t?function(e,t,i){for(var r=i+1;r--;)if(e[r]===t)return r;return r}(e,t,n):Ut(e,Vt,n,!0)},zi.lowerCase=Ba,zi.lowerFirst=Ja,zi.lt=la,zi.lte=pa,zi.max=function(e){return e&&e.length?gr(e,sc,Sr):i},zi.maxBy=function(e,t){return e&&e.length?gr(e,cn(t,2),Sr):i},zi.mean=function(e){return Kt(e,sc)},zi.meanBy=function(e,t){return Kt(e,cn(t,2))},zi.min=function(e){return e&&e.length?gr(e,sc,Mr):i},zi.minBy=function(e,t){return e&&e.length?gr(e,cn(t,2),Mr):i},zi.stubArray=yc,zi.stubFalse=mc,zi.stubObject=function(){return{}},zi.stubString=function(){return""},zi.stubTrue=function(){return!0},zi.multiply=Ic,zi.nth=function(e,t){return e&&e.length?Hr(e,fa(t)):i},zi.noConflict=function(){return dt._===this&&(dt._=Ue),this},zi.noop=hc,zi.now=Co,zi.pad=function(e,t,i){e=wa(e);var r=(t=fa(t))?li(e):0;if(!t||r>=t)return e;var s=(t-r)/2;return Vs(ft(s),i)+e+Vs(gt(s),i)},zi.padEnd=function(e,t,i){e=wa(e);var r=(t=fa(t))?li(e):0;return t&&r<t?e+Vs(t-r,i):e},zi.padStart=function(e,t,i){e=wa(e);var r=(t=fa(t))?li(e):0;return t&&r<t?Vs(t-r,i)+e:e},zi.parseInt=function(e,t,i){return i||null==t?t=0:t&&(t=+t),bi(wa(e).replace(se,""),t||0)},zi.random=function(e,t,r){if(r&&"boolean"!=typeof r&&wn(e,t,r)&&(t=r=i),r===i&&("boolean"==typeof t?(r=t,t=i):"boolean"==typeof e&&(r=e,e=i)),e===i&&t===i?(e=0,t=1):(e=ga(e),t===i?(t=e,e=0):t=ga(t)),e>t){var s=e;e=t,t=s}if(r||e%1||t%1){var n=_i();return vi(e+n*(t-e+ht("1e-"+((n+"").length-1))),t)}return Jr(e,t)},zi.reduce=function(e,t,i){var r=Fo(e)?kt:Jt,s=arguments.length<3;return r(e,cn(t,4),i,s,lr)},zi.reduceRight=function(e,t,i){var r=Fo(e)?$t:Jt,s=arguments.length<3;return r(e,cn(t,4),i,s,pr)},zi.repeat=function(e,t,r){return t=(r?wn(e,t,r):t===i)?1:fa(t),Wr(wa(e),t)},zi.replace=function(){var e=arguments,t=wa(e[0]);return e.length<3?t:t.replace(e[1],e[2])},zi.result=function(e,t,r){var s=-1,n=(t=vs(t,e)).length;for(n||(n=1,e=i);++s<n;){var o=null==e?i:e[Mn(t[s])];o===i&&(s=n,o=r),e=Zo(o)?o.call(e):o}return e},zi.round=Ec,zi.runInContext=e,zi.sample=function(e){return(Fo(e)?Qi:Qr)(e)},zi.size=function(e){if(null==e)return 0;if(Jo(e))return ca(e)?li(e):e.length;var t=gn(e);return t==E||t==x?e.size:kr(e).length},zi.snakeCase=Wa,zi.some=function(e,t,r){var s=Fo(e)?Mt:rs;return r&&wn(e,t,r)&&(t=i),s(e,cn(t,3))},zi.sortedIndex=function(e,t){return ss(e,t)},zi.sortedIndexBy=function(e,t,i){return ns(e,t,cn(i,2))},zi.sortedIndexOf=function(e,t){var i=null==e?0:e.length;if(i){var r=ss(e,t);if(r<i&&Lo(e[r],t))return r}return-1},zi.sortedLastIndex=function(e,t){return ss(e,t,!0)},zi.sortedLastIndexBy=function(e,t,i){return ns(e,t,cn(i,2),!0)},zi.sortedLastIndexOf=function(e,t){if(null==e?0:e.length){var i=ss(e,t,!0)-1;if(Lo(e[i],t))return i}return-1},zi.startCase=Ga,zi.startsWith=function(e,t,i){return e=wa(e),i=null==i?0:or(fa(i),0,e.length),t=cs(t),e.slice(i,i+t.length)==t},zi.subtract=Pc,zi.sum=function(e){return e&&e.length?Wt(e,sc):0},zi.sumBy=function(e,t){return e&&e.length?Wt(e,cn(t,2)):0},zi.template=function(e,t,r){var s=zi.templateSettings;r&&wn(e,t,r)&&(t=i),e=wa(e),t=Ia({},t,s,Ys);var n,o,a=Ia({},t.imports,s.imports,Ys),c=Na(a),h=Zt(a,c),u=0,l=t.interpolate||be,p="__p += '",d=Ce((t.escape||be).source+"|"+l.source+"|"+(l===Z?pe:be).source+"|"+(t.evaluate||be).source+"|$","g"),g="//# sourceURL="+(ke.call(t,"sourceURL")?(t.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++nt+"]")+"\n";e.replace(d,(function(t,i,r,s,a,c){return r||(r=s),p+=e.slice(u,c).replace(_e,ni),i&&(n=!0,p+="' +\n__e("+i+") +\n'"),a&&(o=!0,p+="';\n"+a+";\n__p += '"),r&&(p+="' +\n((__t = ("+r+")) == null ? '' : __t) +\n'"),u=c+t.length,t})),p+="';\n";var f=ke.call(t,"variable")&&t.variable;if(f){if(ue.test(f))throw new Ee("Invalid `variable` option passed into `_.template`")}else p="with (obj) {\n"+p+"\n}\n";p=(o?p.replace(V,""):p).replace(K,"$1").replace(F,"$1;"),p="function("+(f||"obj")+") {\n"+(f?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(n?", __e = _.escape":"")+(o?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";
1\n")+p+"return __p\n}";var y=Xa((function(){return Pe(c,g+"return "+p).apply(i,h)}));if(y.source=p,Yo(y))throw y;return y},zi.times=function(e,t){if((e=fa(e))<1||e>p)return[];var i=g,r=vi(e,g);t=cn(t),e-=g;for(var s=Gt(r,t);++i<e;)t(i);return s},zi.toFinite=ga,zi.toInteger=fa,zi.toLength=ya,zi.toLower=function(e){return wa(e).toLowerCase()},zi.toNumber=ma,zi.toSafeInteger=function(e){return e?or(fa(e),-p,p):0===e?e:0},zi.toString=wa,zi.toUpper=function(e){return wa(e).toUpperCase()},zi.trim=function(e,t,r){if((e=wa(e))&&(r||t===i))return Qt(e);if(!e||!(t=cs(t)))return e;var s=pi(e),n=pi(t);return bs(s,ei(s,n),ti(s,n)+1).join("")},zi.trimEnd=function(e,t,r){if((e=wa(e))&&(r||t===i))return e.slice(0,di(e)+1);if(!e||!(t=cs(t)))return e;var s=pi(e);return bs(s,0,ti(s,pi(t))+1).join("")},zi.trimStart=function(e,t,r){if((e=wa(e))&&(r||t===i))return e.replace(se,"");if(!e||!(t=cs(t)))return e;var s=pi(e);return bs(s,ei(s,pi(t))).join("")},zi.truncate=function(e,t){var r=30,s="...";if(ta(t)){var n="separator"in t?t.separator:n;r="length"in t?fa(t.length):r,s="omission"in t?cs(t.omission):s}var o=(e=wa(e)).length;if(oi(e)){var a=pi(e);o=a.length}if(r>=o)return e;var c=r-li(s);if(c<1)return s;var h=a?bs(a,0,c).join(""):e.slice(0,c);if(n===i)return h+s;if(a&&(c+=h.length-c),oa(n)){if(e.slice(c).search(n)){var u,l=h;for(n.global||(n=Ce(n.source,wa(de.exec(n))+"g")),n.lastIndex=0;u=n.exec(l);)var p=u.index;h=h.slice(0,p===i?c:p)}}else if(e.indexOf(cs(n),c)!=c){var d=h.lastIndexOf(n);d>-1&&(h=h.slice(0,d))}return h+s},zi.unescape=function(e){return(e=wa(e))&&W.test(e)?e.replace(B,gi):e},zi.uniqueId=function(e){var t=++$e;return wa(e)+t},zi.upperCase=Qa,zi.upperFirst=Ya,zi.each=wo,zi.eachRight=bo,zi.first=Bn,cc(zi,function(){var e={};return wr(zi,(function(t,i){ke.call(zi.prototype,i)||(e[i]=t)})),e}(),{chain:!1}),zi.VERSION="4.17.21",Ct(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){zi[e].placeholder=zi})),Ct(["drop","take"],(function(e,t){Vi.prototype[e]=function(r){r=r===i?1:mi(fa(r),0);var s=this.__filtered__&&!t?new Vi(this):this.clone();return s.__filtered__?s.__takeCount__=vi(r,s.__takeCount__):s.__views__.push({size:vi(r,g),type:e+(s.__dir__<0?"Right":"")}),s},Vi.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}})),Ct(["filter","map","takeWhile"],(function(e,t){var i=t+1,r=1==i||3==i;Vi.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:cn(e,3),type:i}),t.__filtered__=t.__filtered__||r,t}})),Ct(["head","last"],(function(e,t){var i="take"+(t?"Right":"");Vi.prototype[e]=function(){return this[i](1).value()[0]}})),Ct(["initial","tail"],(function(e,t){var i="drop"+(t?"":"Right");Vi.prototype[e]=function(){return this.__filtered__?new Vi(this):this[i](1)}})),Vi.prototype.compact=function(){return this.filter(sc)},Vi.prototype.find=function(e){return this.filter(e).head()},Vi.prototype.findLast=function(e){return this.reverse().find(e)},Vi.prototype.invokeMap=Gr((function(e,t){return"function"==typeof e?new Vi(this):this.map((function(i){return qr(i,e,t)}))})),Vi.prototype.reject=function(e){return this.filter($o(cn(e)))},Vi.prototype.slice=function(e,t){e=fa(e);var r=this;return r.__filtered__&&(e>0||t<0)?new Vi(r):(e<0?r=r.takeRight(-e):e&&(r=r.drop(e)),t!==i&&(r=(t=fa(t))<0?r.dropRight(-t):r.take(t-e)),r)},Vi.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},Vi.prototype.toArray=function(){return this.take(g)},wr(Vi.prototype,(function(e,t){var r=/^(?:filter|find|map|reject)|While$/.test(t),s=/^(?:head|last)$/.test(t),n=zi[s?"take"+("last"==t?"Right":""):t],o=s||/^find/.test(t);n&&(zi.prototype[t]=function(){var t=this.__wrapped__,a=s?[1]:arguments,c=t instanceof Vi,h=a[0],u=c||Fo(t),l=function(e){var t=n.apply(zi,At([e],a));return s&&p?t[0]:t};u&&r&&"function"==typeof h&&1!=h.length&&(c=u=!1);var p=this.__chain__,d=!!this.__actions__.length,g=o&&!p,f=c&&!d;if(!o&&u){t=f?t:new Vi(this);var y=e.apply(t,a);return y.__actions__.push({func:go,args:[l],thisArg:i}),new Hi(y,p)}
1return g&&f?e.apply(this,a):(y=this.thru(l),g?s?y.value()[0]:y.value():y)})})),Ct(["pop","push","shift","sort","splice","unshift"],(function(e){var t=Oe[e],i=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",r=/^(?:pop|shift)$/.test(e);zi.prototype[e]=function(){var e=arguments;if(r&&!this.__chain__){var s=this.value();return t.apply(Fo(s)?s:[],e)}return this[i]((function(i){return t.apply(Fo(i)?i:[],e)}))}})),wr(Vi.prototype,(function(e,t){var i=zi[t];if(i){var r=i.name+"";ke.call(Oi,r)||(Oi[r]=[]),Oi[r].push({name:t,func:i})}})),Oi[zs(i,2).name]=[{name:"wrapper",func:i}],Vi.prototype.clone=function(){var e=new Vi(this.__wrapped__);return e.__actions__=xs(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=xs(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=xs(this.__views__),e},Vi.prototype.reverse=function(){if(this.__filtered__){var e=new Vi(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},Vi.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,i=Fo(e),r=t<0,s=i?e.length:0,n=function(e,t,i){for(var r=-1,s=i.length;++r<s;){var n=i[r],o=n.size;switch(n.type){case"drop":e+=o;break;case"dropRight":t-=o;break;case"take":t=vi(t,e+o);break;case"takeRight":e=mi(e,t-o)}}return{start:e,end:t}}(0,s,this.__views__),o=n.start,a=n.end,c=a-o,h=r?a:o-1,u=this.__iteratees__,l=u.length,p=0,d=vi(c,this.__takeCount__);if(!i||!r&&s==c&&d==c)return ds(e,this.__actions__);var g=[];e:for(;c--&&p<d;){for(var f=-1,y=e[h+=t];++f<l;){var m=u[f],v=m.iteratee,w=m.type,b=v(y);if(2==w)y=b;else if(!b){if(1==w)continue e;break e}}g[p++]=y}return g},zi.prototype.at=fo,zi.prototype.chain=function(){return po(this)},zi.prototype.commit=function(){return new Hi(this.value(),this.__chain__)},zi.prototype.next=function(){this.__values__===i&&(this.__values__=da(this.value()));var e=this.__index__>=this.__values__.length;return{done:e,value:e?i:this.__values__[this.__index__++]}},zi.prototype.plant=function(e){for(var t,r=this;r instanceof Li;){var s=zn(r);s.__index__=0,s.__values__=i,t?n.__wrapped__=s:t=s;var n=s;r=r.__wrapped__}return n.__wrapped__=e,t},zi.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof Vi){var t=e;return this.__actions__.length&&(t=new Vi(this)),(t=t.reverse()).__actions__.push({func:go,args:[eo],thisArg:i}),new Hi(t,this.__chain__)}return this.thru(eo)},zi.prototype.toJSON=zi.prototype.valueOf=zi.prototype.value=function(){return ds(this.__wrapped__,this.__actions__)},zi.prototype.first=zi.prototype.head,Ye&&(zi.prototype[Ye]=function(){return this}),zi}();ft?((ft.exports=fi)._=fi,gt._=fi):dt._=fi}).call(qr)}(Or,Or.exports);var Tr=Object.defineProperty,Nr=Object.defineProperties,Dr=Object.getOwnPropertyDescriptors,Ar=Object.getOwnPropertySymbols,kr=Object.prototype.hasOwnProperty,$r=Object.prototype.propertyIsEnumerable,Mr=(e,t,i)=>t in e?Tr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,jr=(e,t)=>{for(var i in t||(t={}))kr.call(t,i)&&Mr(e,i,t[i]);if(Ar)for(var i of Ar(t))$r.call(t,i)&&Mr(e,i,t[i]);return e},zr=(e,t)=>Nr(e,Dr(t));function Ur(e,t,i){var r;const s=(0,n.DQe)(e);return(null==(r=t.rpcMap)?void 0:r[s.reference])||`https://rpc.walletconnect.com/v1/?chainId=${s.namespace}:${s.reference}&projectId=${i}`}function Lr(e){return e.includes(":")?e.split(":")[1]:e}function Hr(e){return e.map((e=>`${e.split(":")[0]}:${e.split(":")[1]}`))}function Vr(e={},t={}){const i=Kr(e),r=Kr(t);return Or.exports.merge(i,r)}function Kr(e){var t,i,r,s;const o={};if(!(0,n.L5o)(e))return o;for(const[a,c]of Object.entries(e)){const e=(0,n.gpE)(a)?[a]:c.chains,h=c.methods||[],u=c.events||[],l=c.rpcMap||{},p=(0,n.Maj)(a);o[p]=zr(jr(jr({},o[p]),c),{chains:(0,n.eGA)(e,null==(t=o[p])?void 0:t.chains),methods:(0,n.eGA)(h,null==(i=o[p])?void 0:i.methods),events:(0,n.eGA)(u,null==(r=o[p])?void 0:r.events),rpcMap:jr(jr({},l),null==(s=o[p])?void 0:s.rpcMap)})}return o}function Fr(e){return e.includes(":")?e.split(":")[2]:e}function Br(e){const t={};for(const[i,r]of Object.entries(e)){const e=r.methods||[],s=r.events||[],o=r.accounts||[],a=(0,n.gpE)(i)?[i]:r.chains?r.chains:Hr(r.accounts);t[i]={chains:a,methods:e,events:s,accounts:o}}return t}function Jr(e){return"number"==typeof e?e:e.includes("0x")?parseInt(e,16):(e=e.includes(":")?e.split(":")[1]:e,isNaN(Number(e))?e:Number(e))}const Wr={},Gr=e=>Wr[e],Qr=(e,t)=>
1{Wr[e]=t};class Yr{constructor(e){this.name="polkadot",this.namespace=e.namespace,this.events=Gr("events"),this.client=Gr("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){this.httpProviders[e]||this.setHttpProvider(e,t),this.chainId=e,this.events.emit(xr,`${this.name}:${e}`)}getAccounts(){const e=this.namespace.accounts;return e&&e.filter((e=>e.split(":")[1]===this.chainId.toString())).map((e=>e.split(":")[2]))||[]}createHttpProviders(){const e={};return this.namespace.chains.forEach((t=>{var i;const r=Lr(t);e[r]=this.createHttpProvider(r,null==(i=this.namespace.rpcMap)?void 0:i[t])})),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProvider(e,t){const i=t||Ur(e,this.namespace,this.client.core.projectId);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);return new j.r(new Sr.Z(i,Gr("disableProviderPing")))}}class Zr{constructor(e){this.name="eip155",this.namespace=e.namespace,this.events=Gr("events"),this.client=Gr("client"),this.httpProviders=this.createHttpProviders(),this.chainId=parseInt(this.getDefaultChain())}async request(e){switch(e.request.method){case"eth_requestAccounts":case"eth_accounts":return this.getAccounts();case"wallet_switchEthereumChain":return await this.handleSwitchChain(e);case"eth_chainId":return parseInt(this.getDefaultChain())}return this.namespace.methods.includes(e.request.method)?await this.client.request(e):this.getHttpProvider().request(e.request)}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}setDefaultChain(e,t){this.httpProviders[e]||this.setHttpProvider(parseInt(e),t),this.chainId=parseInt(e),this.events.emit(xr,`${this.name}:${e}`)}requestAccounts(){return this.getAccounts()}getDefaultChain(){if(this.chainId)return this.chainId.toString();if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}createHttpProvider(e,t){const i=t||Ur(`${this.name}:${e}`,this.namespace,this.client.core.projectId);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);return new j.r(new Sr.k(i,Gr("disableProviderPing")))}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProviders(){const e={};return this.namespace.chains.forEach((t=>{var i;const r=parseInt(Lr(t));e[r]=this.createHttpProvider(r,null==(i=this.namespace.rpcMap)?void 0:i[t])})),e}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter((e=>e.split(":")[1]===this.chainId.toString())).map((e=>e.split(":")[2])))]:[]}getHttpProvider(){const e=this.chainId,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}async handleSwitchChain(e){var t,i;let r=e.request.params?null==(t=e.request.params[0])?void 0:t.chainId:"0x0";r=r.startsWith("0x")?r:`0x${r}`;const s=parseInt(r,16);if(this.isChainApproved(s))this.setDefaultChain(`${s}`);else{if(!this.namespace.methods.includes("wallet_switchEthereumChain"))throw new Error(`Failed to switch to chain 'eip155:${s}'. The chain is not approved or the wallet does not support 'wallet_switchEthereumChain' method.`);await this.client.request({topic:e.topic,request:{method:e.request.method,params:[{chainId:r}]},chainId:null==(i=this.namespace.chains)?void 0:i[0]}),this.setDefaultChain(`${s}`)}return null}isChainApproved(e){return this.namespace.chains.includes(`${this.name}:${e}`)}}class Xr{constructor(e){this.name="solana",this.namespace=e.namespace,this.events=Gr("events"),this.client=Gr("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){this.httpProviders[e]||this.setHttpProvider(e,t),this.chainId=e,this.events.emit(xr,`${this.name}:${e}`)}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter((e=>e.split(":")[1]===this.chainId.toString())).map((e=>e.split(":")[2])))]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach((t=>{var i;const r=Lr(t);e[r]=this.createHttpProvider(r,null==(i=this.namespace.rpcMap)?void 0:i[t])})),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProvider(e,t){const i=t||Ur(e,this.namespace,this.client.core.projectId);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);return new j.r(new Sr.Z(i,Gr("disableProviderPing")))}}class es{constructor(e){this.name="cosmos",this.namespace=e.namespace,this.events=Gr("events"),this.client=Gr("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){this.httpProviders[e]||this.setHttpProvider(e,t),this.chainId=e,this.events.emit(xr,`${this.name}:${this.chainId}`)}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter((e=>e.split(":")[1]===this.chainId.toString())).map((e=>e.split(":")[2])))]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach((t=>{var i;const r=Lr(t);e[r]=this.createHttpProvider(r,null==(i=this.namespace.rpcMap)?void 0:i[t])})),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProvider(e,t){const i=t||Ur(e,this.namespace,this.client.core.projectId);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);return new j.r(new Sr.Z(i,Gr("disableProviderPing")))}}class ts{constructor(e){this.name="cip34",this.namespace=e.namespace,this.events=Gr("events"),this.client=Gr("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){this.httpProviders[e]||this.setHttpProvider(e,t),this.chainId=e,this.events.emit(xr,`${this.name}:${this.chainId}`)}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter((e=>e.split(":")[1]===this.chainId.toString())).map((e=>e.split(":")[2])))]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach((t=>{const i=this.getCardanoRPCUrl(t),r=Lr(t);e[r]=this.createHttpProvider(r,i)}
1)),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}getCardanoRPCUrl(e){const t=this.namespace.rpcMap;if(t)return t[e]}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProvider(e,t){const i=t||this.getCardanoRPCUrl(e);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);return new j.r(new Sr.Z(i,Gr("disableProviderPing")))}}class is{constructor(e){this.name="elrond",this.namespace=e.namespace,this.events=Gr("events"),this.client=Gr("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){this.httpProviders[e]||this.setHttpProvider(e,t),this.chainId=e,this.events.emit(xr,`${this.name}:${e}`)}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter((e=>e.split(":")[1]===this.chainId.toString())).map((e=>e.split(":")[2])))]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach((t=>{var i;const r=Lr(t);e[r]=this.createHttpProvider(r,null==(i=this.namespace.rpcMap)?void 0:i[t])})),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProvider(e,t){const i=t||Ur(e,this.namespace,this.client.core.projectId);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);return new j.r(new Sr.Z(i,Gr("disableProviderPing")))}}class rs{constructor(e){this.name="multiversx",this.namespace=e.namespace,this.events=Gr("events"),this.client=Gr("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){this.httpProviders[e]||this.setHttpProvider(e,t),this.chainId=e,this.events.emit(xr,`${this.name}:${e}`)}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter((e=>e.split(":")[1]===this.chainId.toString())).map((e=>e.split(":")[2])))]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach((t=>{var i;const r=Lr(t);e[r]=this.createHttpProvider(r,null==(i=this.namespace.rpcMap)?void 0:i[t])})),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProvider(e,t){const i=t||Ur(e,this.namespace,this.client.core.projectId);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);return new j.r(new Sr.Z(i,Gr("disableProviderPing")))}}class ss{constructor(e){this.name="near",this.namespace=e.namespace,this.events=Gr("events"),this.client=Gr("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){if(this.chainId=e,!this.httpProviders[e]){const i=t||Ur(`${this.name}:${e}`,this.namespace);if(!i)throw new Error(`No RPC url provided for chainId: ${e}`);this.setHttpProvider(e,i)}this.events.emit(xr,`${this.name}:${this.chainId}`)}getAccounts(){const e=this.namespace.accounts;return e&&e.filter((e=>e.split(":")[1]===this.chainId.toString())).map((e=>e.split(":")[2]))||[]}createHttpProviders(){const e={};return this.namespace.chains.forEach((t=>{var i;e[t]=this.createHttpProvider(t,null==(i=this.namespace.rpcMap)?void 0:i[t])})),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const i=this.createHttpProvider(e,t);i&&(this.httpProviders[e]=i)}createHttpProvider(e,t){const i=t||Ur(e,this.namespace);return typeof i>"u"?void 0:new j.r(new Sr.Z(i,Gr("disableProviderPing")))}}var ns=Object.defineProperty,os=Object.defineProperties,as=Object.getOwnPropertyDescriptors,cs=Object.getOwnPropertySymbols,hs=Object.prototype.hasOwnProperty,us=Object.prototype.propertyIsEnumerable,ls=(e,t,i)=>t in e?ns(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,ps=(e,t)=>{for(var i in t||(t={}))hs.call(t,i)&&ls(e,i,t[i]);if(cs)for(var i of cs(t))us.call(t,i)&&ls(e,i,t[i]);return e},ds=(e,t)=>os(e,as(t));class gs{constructor(e){this.events=new(s()),this.rpcProviders={},this.shouldAbortPairingAttempt=!1,this.maxPairingAttempts=10,this.disableProviderPing=!1,this.providerOpts=e,this.logger=typeof e?.logger<"u"&&"string"!=typeof e?.logger?e.logger:(0,c.gw)((0,c.jI)({level:e?.logger||Rr})),this.disableProviderPing=e?.disableProviderPing||!1}static async init(e){const t=new gs(e);return await t.initialize(),t}async request(e,t,i){const[r,s]=this.validateChain(t);if(!this.session)throw new Error("Please call connect() before request()");return await this.getProvider(r).request({request:ps({},e),chainId:`${r}:${s}`,topic:this.session.topic,expiry:i})}sendAsync(e,t,i,r){const s=(new Date).getTime();this.request(e,i,r).then((e=>t(null,(0,z.formatJsonRpcResult)(s,e)))).catch((e=>t(e,void 0)))}async enable(){if(!this.client)throw new Error("Sign Client not initialized");
1return this.session||await this.connect({namespaces:this.namespaces,optionalNamespaces:this.optionalNamespaces,sessionProperties:this.sessionProperties}),await this.requestAccounts()}async disconnect(){var e;if(!this.session)throw new Error("Please call connect() before enable()");await this.client.disconnect({topic:null==(e=this.session)?void 0:e.topic,reason:(0,n.D6H)("USER_DISCONNECTED")}),await this.cleanup()}async connect(e){if(!this.client)throw new Error("Sign Client not initialized");if(this.setNamespaces(e),await this.cleanupPendingPairings(),!e.skipPairing)return await this.pair(e.pairingTopic)}async authenticate(e){if(!this.client)throw new Error("Sign Client not initialized");this.setNamespaces(e),await this.cleanupPendingPairings();const{uri:t,response:i}=await this.client.authenticate(e);t&&(this.uri=t,this.events.emit("display_uri",t));const r=await i();if(this.session=r.session,this.session){const e=Br(this.session.namespaces);this.namespaces=Vr(this.namespaces,e),this.persist("namespaces",this.namespaces),this.onConnect()}return r}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}removeListener(e,t){this.events.removeListener(e,t)}off(e,t){this.events.off(e,t)}get isWalletConnect(){return!0}async pair(e){this.shouldAbortPairingAttempt=!1;let t=0;do{if(this.shouldAbortPairingAttempt)throw new Error("Pairing aborted");if(t>=this.maxPairingAttempts)throw new Error("Max auto pairing attempts reached");const{uri:i,approval:r}=await this.client.connect({pairingTopic:e,requiredNamespaces:this.namespaces,optionalNamespaces:this.optionalNamespaces,sessionProperties:this.sessionProperties});i&&(this.uri=i,this.events.emit("display_uri",i)),await r().then((e=>{this.session=e;const t=Br(e.namespaces);this.namespaces=Vr(this.namespaces,t),this.persist("namespaces",this.namespaces)})).catch((e=>{if(e.message!==Zi)throw e;t++}))}while(!this.session);return this.onConnect(),this.session}setDefaultChain(e,t){try{if(!this.session)return;const[i,r]=this.validateChain(e);this.getProvider(i).setDefaultChain(r,t)}catch(i){if(!/Please call connect/.test(i.message))throw i}}async cleanupPendingPairings(e={}){this.logger.info("Cleaning up inactive pairings...");const t=this.client.pairing.getAll();if((0,n.qt8)(t)){for(const i of t)e.deletePairings?this.client.core.expirer.set(i.topic,0):await this.client.core.relayer.subscriber.unsubscribe(i.topic);this.logger.info(`Inactive pairings cleared: ${t.length}`)}}abortPairingAttempt(){this.shouldAbortPairingAttempt=!0}async checkStorage(){if(this.namespaces=await this.getFromStore("namespaces"),this.optionalNamespaces=await this.getFromStore("optionalNamespaces")||{},this.client.session.length){const e=this.client.session.keys.length-1;this.session=this.client.session.get(this.client.session.keys[e]),this.createProviders()}}async initialize(){this.logger.trace("Initialized"),await this.createClient(),await this.checkStorage(),this.registerEventListeners()}async createClient(){this.client=this.providerOpts.client||await Pr.init({logger:this.providerOpts.logger||Rr,relayUrl:this.providerOpts.relayUrl||"wss://relay.walletconnect.com",projectId:this.providerOpts.projectId,metadata:this.providerOpts.metadata,storageOptions:this.providerOpts.storageOptions,storage:this.providerOpts.storage,name:this.providerOpts.name}),this.logger.trace("SignClient Initialized")}createProviders(){if(!this.client)throw new Error("Sign Client not initialized");if(!this.session)throw new Error("Session not initialized. Please call connect() before enable()");const e=[...new Set(Object.keys(this.session.namespaces).map((e=>(0,n.Maj)(e))))];Qr("client",this.client),Qr("events",this.events),Qr("disableProviderPing",this.disableProviderPing),e.forEach((e=>{if(!this.session)return;const t=function(e,t){const i=Object.keys(t.namespaces).filter((t=>t.includes(e)));if(!i.length)return[];const r=[];return i.forEach((e=>{const i=t.namespaces[e].accounts;r.push(...i)})),r}(e,this.session),i=Hr(t),r=Vr(this.namespaces,this.optionalNamespaces),s=ds(ps({},r[e]),{accounts:t,chains:i});switch(e){case"eip155":this.rpcProviders[e]=new Zr({namespace:s});break;case"solana":this.rpcProviders[e]=new Xr({namespace:s});break;case"cosmos":this.rpcProviders[e]=new es({namespace:s});break;case"polkadot":this.rpcProviders[e]=new Yr({namespace:s});break;case"cip34":this.rpcProviders[e]=new ts({namespace:s});break;case"elrond":this.rpcProviders[e]=new is({namespace:s});break;case"multiversx":this.rpcProviders[e]=new rs({namespace:s});break;case"near":this.rpcProviders[e]=new ss({namespace:s})}}))}registerEventListeners(){if(typeof this.client>"u")throw new Error("Sign Client is not initialized");this.client.on("session_ping",(e=>{this.events.emit("session_ping",e)})),this.client.on("session_event",(e=>{const{params:t}=e,{event:i}=t;if("accountsChanged"===i.name){const e=i.data;e&&(0,n.qt8)(e)&&this.events.emit("accountsChanged",e.map(Fr))}else if("chainChanged"===i.name){const e=t.chainId,i=t.event.data,r=(0,n.Maj)(e),s=Jr(e)!==Jr(i)?`${r}:${Jr(i)}`:e;this.onChainChanged(s)}else this.events.emit(i.name,i.data);this.events.emit("session_event",e)})),this.client.on("session_update",(({topic:e,params:t})=>{var i;const{namespaces:r}=t,s=null==(i=this.client)?void 0:i.session.get(e);this.session=ds(ps({},s),{namespaces:r}),this.onSessionUpdate(),this.events.emit("session_update",{topic:e,params:t})})),this.client.on("session_delete",(async e=>{await this.cleanup(),this.events.emit("session_delete",e),this.events.emit("disconnect",ds(ps({},(0,n.D6H)("USER_DISCONNECTED")),{data:e.topic}))}
1)),this.on(xr,(e=>{this.onChainChanged(e,!0)}))}getProvider(e){if(!this.rpcProviders[e])throw new Error(`Provider not found: ${e}`);return this.rpcProviders[e]}onSessionUpdate(){Object.keys(this.rpcProviders).forEach((e=>{var t;this.getProvider(e).updateNamespace(null==(t=this.session)?void 0:t.namespaces[e])}))}setNamespaces(e){const{namespaces:t,optionalNamespaces:i,sessionProperties:r}=e;t&&Object.keys(t).length&&(this.namespaces=t),i&&Object.keys(i).length&&(this.optionalNamespaces=i),this.sessionProperties=r,this.persist("namespaces",t),this.persist("optionalNamespaces",i)}validateChain(e){const[t,i]=e?.split(":")||["",""];if(!this.namespaces||!Object.keys(this.namespaces).length)return[t,i];if(t&&!Object.keys(this.namespaces||{}).map((e=>(0,n.Maj)(e))).includes(t))throw new Error(`Namespace '${t}' is not configured. Please call connect() first with namespace config.`);if(t&&i)return[t,i];const r=(0,n.Maj)(Object.keys(this.namespaces)[0]);return[r,this.rpcProviders[r].getDefaultChain()]}async requestAccounts(){const[e]=this.validateChain();return await this.getProvider(e).requestAccounts()}onChainChanged(e,t=!1){if(!this.namespaces)return;const[i,r]=this.validateChain(e);r&&(t||this.getProvider(i).setDefaultChain(r),this.namespaces[i]?this.namespaces[i].defaultChain=r:this.namespaces[`${i}:${r}`]?this.namespaces[`${i}:${r}`].defaultChain=r:this.namespaces[`${i}:${r}`]={defaultChain:r},this.persist("namespaces",this.namespaces),this.events.emit("chainChanged",r))}onConnect(){this.createProviders(),this.events.emit("connect",{session:this.session})}async cleanup(){this.session=void 0,this.namespaces=void 0,this.optionalNamespaces=void 0,this.sessionProperties=void 0,this.persist("namespaces",void 0),this.persist("optionalNamespaces",void 0),this.persist("sessionProperties",void 0),await this.cleanupPendingPairings({deletePairings:!0})}persist(e,t){this.client.core.storage.setItem(`${Cr}/${e}`,t)}async getFromStore(e){return await this.client.core.storage.getItem(`${Cr}/${e}`)}}const fs=gs,ys=["eth_sendTransaction","personal_sign"],ms=["eth_accounts","eth_requestAccounts","eth_sendRawTransaction","eth_sign","eth_signTransaction","eth_signTypedData","eth_signTypedData_v3","eth_signTypedData_v4","eth_sendTransaction","personal_sign","wallet_switchEthereumChain","wallet_addEthereumChain","wallet_getPermissions","wallet_requestPermissions","wallet_registerOnboarding","wallet_watchAsset","wallet_scanQRCode","wallet_sendCalls","wallet_getCapabilities","wallet_getCallsStatus","wallet_showCallsStatus"],vs=["chainChanged","accountsChanged"],ws=["chainChanged","accountsChanged","message","disconnect","connect"];var bs=Object.defineProperty,_s=Object.defineProperties,Is=Object.getOwnPropertyDescriptors,Es=Object.getOwnPropertySymbols,Ps=Object.prototype.hasOwnProperty,Ss=Object.prototype.propertyIsEnumerable,Rs=(e,t,i)=>t in e?bs(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,Cs=(e,t)=>{for(var i in t||(t={}))Ps.call(t,i)&&Rs(e,i,t[i]);if(Es)for(var i of Es(t))Ss.call(t,i)&&Rs(e,i,t[i]);return e},xs=(e,t)=>_s(e,Is(t));function qs(e){return Number(e[0].split(":")[1])}function Os(e){return`0x${e.toString(16)}`}class Ts{constructor(){this.events=new r.EventEmitter,this.namespace="eip155",this.accounts=[],this.chainId=1,this.STORAGE_KEY="wc@2:ethereum_provider:",this.on=(e,t)=>(this.events.on(e,t),this),this.once=(e,t)=>(this.events.once(e,t),this),this.removeListener=(e,t)=>(this.events.removeListener(e,t),this),this.off=(e,t)=>(this.events.off(e,t),this),this.parseAccount=e=>this.isCompatibleChainId(e)?this.parseAccountId(e).address:e,this.signer={},this.rpc={}}static async init(e){const t=new Ts;return await t.initialize(e),t}async request(e,t){return await this.signer.request(e,this.formatChainId(this.chainId),t)}sendAsync(e,t,i){this.signer.sendAsync(e,t,this.formatChainId(this.chainId),i)}get connected(){return!!this.signer.client&&this.signer.client.core.relayer.connected}get connecting(){return!!this.signer.client&&this.signer.client.core.relayer.connecting}async enable(){return this.session||await this.connect(),await this.request({method:"eth_requestAccounts"})}async connect(e){if(!this.signer.client)throw new Error("Provider not initialized. Call init() first");this.loadConnectOpts(e);const{required:t,optional:i}=function(e){const{chains:t,optionalChains:i,methods:r,optionalMethods:s,events:o,optionalEvents:a,rpcMap:c}=e;if(!(0,n.qt8)(t))throw new Error("Invalid chains");const h={chains:t,methods:r||ys,events:o||vs,rpcMap:Cs({},t.length?{[qs(t)]:c[qs(t)]}:{})},u=o?.filter((e=>!vs.includes(e))),l=r?.filter((e=>!ys.includes(e)));if(!i&&!a&&!s&&(null==u||!u.length)&&(null==l||!l.length))return{required:t.length?h:void 0};const p={chains:[...new Set(u?.length&&l?.length||!i?h.chains.concat(i||[]):i)],methods:[...new Set(h.methods.concat(null!=s&&s.length?s:ms))],events:[...new Set(h.events.concat(null!=a&&a.length?a:ws))],rpcMap:c};return{required:t.length?h:void 0,optional:i.length?p:void 0}}(this.rpc);try{const r=await new Promise((async(r,s)=>{var n;this.rpc.showQrModal&&(null==(n=this.modal)||n.subscribeModal((e=>{!e.open&&!this.signer.session&&(this.signer.abortPairingAttempt(),s(new Error("Connection request reset. Please try again.")))}))),await this.signer.connect(xs(Cs({namespaces:Cs({},t&&{[this.namespace]:t})},i&&{optionalNamespaces:{[this.namespace]:i}}),{pairingTopic:e?.pairingTopic})).then((e=>{r(e)})).catch((e=>{s(new Error(e.message))}))}));if(!r)return;const s=(0,n.guN)(r.namespaces,[this.namespace]);this.setChainIds(this.rpc.chains.length?this.rpc.chains:s),this.setAccounts(s),this.events.emit("connect",{chainId:Os(this.chainId)})}catch(r){throw this.signer.logger.error(r),r}finally{this.modal&&this.modal.closeModal()}}async authenticate(e){if(!this.signer.client)throw new Error("Provider not initialized. Call init() first");this.loadConnectOpts({chains:e?.chains});try{const t=await new Promise((async(t,i)=>{var r;this.rpc.showQrModal&&(null==(r=this.modal)||r.subscribeModal((e=>{!e.open&&!this.signer.session&&(this.signer.abortPairingAttempt(),i(new Error("Connection request reset. Please try again.")))}))),await this.signer.authenticate(xs(Cs({},e),{chains:this.rpc.chains})).then((e=>{t(e)})).catch((e=>{i(new Error(e.message))}))})),i=t.session;if(i){const e=(0,n.guN)(i.namespaces,[this.namespace]);this.setChainIds(this.rpc.chains.length?this.rpc.chains:e),this.setAccounts(e),this.events.emit("connect",{chainId:Os(this.chainId)})}return t}catch(t){throw this.signer.logger.error(t),t}finally{this.modal&&this.modal.closeModal()}}async disconnect(){this.session&&await this.signer.disconnect(),this.reset()}get isWalletConnect(){return!0}get session(){return this.signer.session}registerEventListeners(){this.signer.on("session_event",(e=>{const{params:t}=e,{event:i}=t;"accountsChanged"===i.name?(this.accounts=this.parseAccounts(i.data),this.events.emit("accountsChanged",this.accounts)):"chainChanged"===i.name?this.setChainId(this.formatChainId(i.data)):this.events.emit(i.name,i.data),this.events.emit("session_event",e)})),this.signer.on("chainChanged",(e=>{const t=parseInt(e);this.chainId=t,this.events.emit("chainChanged",Os(this.chainId)),this.persist()})),this.signer.on("session_update",(e=>{this.events.emit("session_update",e)})),this.signer.on("session_delete",(e=>{this.reset(),this.events.emit("session_delete",e),this.events.emit("disconnect",xs(Cs({},(0,n.D6H)("USER_DISCONNECTED")),{data:e.topic,name:"USER_DISCONNECTED"}))})),this.signer.on("display_uri",(e=>{var t,i;this.rpc.showQrModal&&(null==(t=this.modal)||t.closeModal(),null==(i=this.modal)||i.openModal({uri:e})),this.events.emit("display_uri",e)}))}switchEthereumChain(e){this.request({method:"wallet_switchEthereumChain",params:[{chainId:e.toString(16)}]})}isCompatibleChainId(e){return"string"==typeof e&&e.startsWith(`${this.namespace}:`)}formatChainId(e){return`${this.namespace}:${e}`}parseChainId(e){return Number(e.split(":")[1])}setChainIds(e){const t=e.filter((e=>this.isCompatibleChainId(e))).map((e=>this.parseChainId(e)));t.length&&(this.chainId=t[0],this.events.emit("chainChanged",Os(this.chainId)),this.persist())}setChainId(e){if(this.isCompatibleChainId(e)){const t=this.parseChainId(e);this.chainId=t,this.switchEthereumChain(t)}}parseAccountId(e){const[t,i,r]=e.split(":");return{chainId:`${t}:${i}`,address:r}}setAccounts(e){this.accounts=e.filter((e=>this.parseChainId(this.parseAccountId(e).chainId)===this.chainId)).map((e=>this.parseAccountId(e).address)),this.events.emit("accountsChanged",this.accounts)}getRpcConfig(e){var t,i;const r=null!=(t=e?.chains)?t:[],s=null!=(i=e?.optionalChains)?i:[],n=r.concat(s);if(!n.length)throw new Error("No chains specified in either `chains` or `optionalChains`");const o=r.length?e?.methods||ys:[],a=r.length?e?.events||vs:[],c=e?.optionalMethods||[],h=e?.optionalEvents||[],u=e?.rpcMap||this.buildRpcMap(n,e.projectId),l=e?.qrModalOptions||void 0;return{chains:r?.map((e=>this.formatChainId(e))),optionalChains:s.map((e=>this.formatChainId(e))),methods:o,events:a,optionalMethods:c,optionalEvents:h,rpcMap:u,showQrModal:!(null==e||!e.showQrModal),qrModalOptions:l,projectId:e.projectId,metadata:e.metadata}}buildRpcMap(e,t){const i={};return e.forEach((e=>{i[e]=this.getRpcUrl(e,t)})),i}async initialize(e){if(this.rpc=this.getRpcConfig(e),this.chainId=this.rpc.chains.length?qs(this.rpc.chains):qs(this.rpc.optionalChains),this.signer=await fs.init({projectId:this.rpc.projectId,metadata:this.rpc.metadata,disableProviderPing:e.disableProviderPing,relayUrl:e.relayUrl,storageOptions:e.storageOptions}),this.registerEventListeners(),await this.loadPersistedSession(),this.rpc.showQrModal){let e;
1try{const{WalletConnectModal:t}=await i.e(9343).then(i.bind(i,59343));e=t}catch{throw new Error("To use QR modal, please install @walletconnect/modal package")}if(e)try{this.modal=new e(Cs({projectId:this.rpc.projectId},this.rpc.qrModalOptions))}catch(t){throw this.signer.logger.error(t),new Error("Could not generate WalletConnectModal Instance")}}}loadConnectOpts(e){if(!e)return;const{chains:t,optionalChains:i,rpcMap:r}=e;t&&(0,n.qt8)(t)&&(this.rpc.chains=t.map((e=>this.formatChainId(e))),t.forEach((e=>{this.rpc.rpcMap[e]=r?.[e]||this.getRpcUrl(e)}))),i&&(0,n.qt8)(i)&&(this.rpc.optionalChains=[],this.rpc.optionalChains=i?.map((e=>this.formatChainId(e))),i.forEach((e=>{this.rpc.rpcMap[e]=r?.[e]||this.getRpcUrl(e)})))}getRpcUrl(e,t){var i;return(null==(i=this.rpc.rpcMap)?void 0:i[e])||`https://rpc.walletconnect.com/v1/?chainId=eip155:${e}&projectId=${t||this.rpc.projectId}`}async loadPersistedSession(){if(this.session)try{const e=await this.signer.client.core.storage.getItem(`${this.STORAGE_KEY}/chainId`),t=this.session.namespaces[`${this.namespace}:${e}`]?this.session.namespaces[`${this.namespace}:${e}`]:this.session.namespaces[this.namespace];this.setChainIds(e?[this.formatChainId(e)]:t?.accounts),this.setAccounts(t?.accounts)}catch(e){this.signer.logger.error("Failed to load persisted session, clearing state..."),this.signer.logger.error(e),await this.disconnect().catch((e=>this.signer.logger.warn(e)))}}reset(){this.chainId=1,this.accounts=[]}persist(){this.session&&this.signer.client.core.storage.setItem(`${this.STORAGE_KEY}/chainId`,this.chainId)}parseAccounts(e){return"string"==typeof e||e instanceof String?[this.parseAccount(e)]:e.map((e=>this.parseAccount(e)))}}const Ns=Ts},45192:function(e,t,i){"use strict";i.d(t,{iO:function(){return r}});const r={waku:{publish:"waku_publish",batchPublish:"waku_batchPublish",subscribe:"waku_subscribe",batchSubscribe:"waku_batchSubscribe",subscription:"waku_subscription",unsubscribe:"waku_unsubscribe",batchUnsubscribe:"waku_batchUnsubscribe",batchFetchMessages:"waku_batchFetchMessages"},irn:{publish:"irn_publish",batchPublish:"irn_batchPublish",subscribe:"irn_subscribe",batchSubscribe:"irn_batchSubscribe",subscription:"irn_subscription",unsubscribe:"irn_unsubscribe",batchUnsubscribe:"irn_batchUnsubscribe",batchFetchMessages:"irn_batchFetchMessages"},iridium:{publish:"iridium_publish",batchPublish:"iridium_batchPublish",subscribe:"iridium_subscribe",batchSubscribe:"iridium_batchSubscribe",subscription:"iridium_subscription",unsubscribe:"iridium_unsubscribe",batchUnsubscribe:"iridium_batchUnsubscribe",batchFetchMessages:"iridium_batchFetchMessages"}}}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.