@dcl/governance-site 2.1.1 → 2.1.2-21396561927.commit-5f7c81e
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/{BlockOverrides-b253ac3c.js → BlockOverrides-303f7e9f.js} +5 -5
- package/assets/{ConstantsUtil-8392393d.js → ConstantsUtil-a131dde8.js} +1 -1
- package/assets/ContentfulRichText-16284a17.js +1 -0
- package/assets/{ExchangeController-8312cbac.js → ExchangeController-a14191f2.js} +1 -1
- package/assets/{HelpersUtil-422d6b63.js → HelpersUtil-2b99f8bd.js} +1 -1
- package/assets/{NetworkUtil-f04f30f1.js → NetworkUtil-c907cd4d.js} +1 -1
- package/assets/{ReownAuthentication-95163b2a.js → ReownAuthentication-b2c2d543.js} +1 -1
- package/assets/{SwapController-a78fa27a.js → SwapController-cd0f257b.js} +1 -1
- package/assets/{UserAvatar-ba80ecc0.js → UserAvatar-fd309664.js} +1 -1
- package/assets/__vite-optional-peer-dep_lottie-react_decentraland-ui2-b25bb000.js +1 -0
- package/assets/{ccip-afcae892.js → ccip-44049d54.js} +1 -1
- package/assets/{data-capture-a3e503e9.js → data-capture-7e26f0ce.js} +1 -1
- package/assets/{email-707c1fd2.js → email-8a377eee.js} +1 -1
- package/assets/{embedded-wallet-5cdc1540.js → embedded-wallet-0fb24cc2.js} +1 -1
- package/assets/features-7aff3cdd.js +1 -0
- package/assets/{fortmatic-c27206e9.js → fortmatic-19aac1db.js} +1 -1
- package/assets/{if-defined-7c3cfad4.js → if-defined-5ecb5632.js} +1 -1
- package/assets/{index-1912ccb5.js → index-02cebb5e.js} +208 -211
- package/assets/{index-3beb72c7.js → index-0687b660.js} +1 -1
- package/assets/{index-2a442cfb.js → index-088190d3.js} +1 -1
- package/assets/{index-3d9f7aa4.js → index-12ec15f0.js} +1 -1
- package/assets/{index-c1960f8b.js → index-15da260e.js} +1 -1
- package/assets/{index-11611d06.js → index-1ef89fbf.js} +1 -1
- package/assets/{index-25743d75.js → index-2428c92d.js} +1 -1
- package/assets/{index-24f70ec2.js → index-304c2025.js} +1 -1
- package/assets/{index-0d9e7a1b.js → index-45573641.js} +1 -1
- package/assets/{index-a6ebc22c.js → index-4795bc6d.js} +1 -1
- package/assets/{index-d606cdd8.js → index-52bd0c54.js} +3 -2
- package/assets/{index-f1b0fa49.js → index-557ac282.js} +1 -1
- package/assets/{index-8a1e4e8f.js → index-5b7f5468.js} +1 -1
- package/assets/{index-50d289a7.js → index-5db900d2.js} +1 -1
- package/assets/{index-378e1ef5.js → index-61219cbe.js} +46 -43
- package/assets/{index-29524bff.js → index-67af3d9f.js} +1 -1
- package/assets/{index-0155e9d0.js → index-6a478a1a.js} +1 -1
- package/assets/{index-674cfbc1.js → index-6aa35c4c.js} +1 -1
- package/assets/{index-6b3f1dc3.js → index-6d67eda0.js} +1 -1
- package/assets/{index-c4bd5468.js → index-6efd5958.js} +1 -1
- package/assets/{index-d3a32d19.js → index-7cb264a1.js} +1 -1
- package/assets/index-863e8fd6.js +277 -0
- package/assets/{index-b079bc07.js → index-906aeedb.js} +39 -39
- package/assets/{index-e65926ac.js → index-91e7b718.js} +1 -1
- package/assets/{index-88b3d2d0.js → index-9c5f86d3.js} +1 -1
- package/assets/{index-9b4b1d43.js → index-9ed03248.js} +1 -1
- package/assets/{index-033dbcb1.js → index-a30fd37b.js} +1 -1
- package/assets/index-b249573f.js +43 -0
- package/assets/{index-3aca6a72.js → index-b612aba6.js} +1 -1
- package/assets/{index-cae81f79.css → index-bad2d6e3.css} +4 -4
- package/assets/{index-327f2bbb.js → index-bfa1b0b2.js} +1 -1
- package/assets/{index-66b13afd.js → index-bfcb1eaf.js} +2 -2
- package/assets/{index-e4a556a6.js → index-cdede9c1.js} +1 -1
- package/assets/{index-e66b5a2a.js → index-d4cf6fd5.js} +1 -1
- package/assets/{index-628f4c66.js → index-e0285d09.js} +1 -1
- package/assets/{index-a1f961e2.js → index-e82b1bf2.js} +1 -1
- package/assets/networks-f92d44f1.js +1 -0
- package/assets/{onramp-e920d24b.js → onramp-531cac52.js} +1 -1
- package/assets/{pay-with-exchange-591f2a34.js → pay-with-exchange-7c86030c.js} +1 -1
- package/assets/{receive-731a2ffa.js → receive-168aa468.js} +1 -1
- package/assets/{ref-27933252.js → ref-f07b284a.js} +1 -1
- package/assets/rich-text-react-renderer_decentraland-ui2-b25bb000.js +1 -0
- package/assets/{send-40d251c3.js → send-d84e8cd4.js} +28 -28
- package/assets/{socials-4e758372.js → socials-a7521156.js} +1 -1
- package/assets/{swaps-62f6ad92.js → swaps-35bf1db5.js} +1 -1
- package/assets/{transactions-6223734a.js → transactions-ffdabf4e.js} +1 -1
- package/assets/{tslib.es6-08ac7de7.js → tslib.es6-f2b18d1b.js} +1 -1
- package/assets/{w3m-modal-caef023e.js → w3m-modal-c647dc65.js} +1 -1
- package/assets/zoraTestnet-bea7fe0f.js +36 -0
- package/index.html +4 -4
- package/package.json +3 -3
- package/assets/features-eaf3f10e.js +0 -1
- package/assets/index-139e0e8d.js +0 -277
- package/assets/index-7a343a6c.js +0 -43
- package/assets/networks-afe9d5a8.js +0 -1
- package/assets/zoraTestnet-f8dce652.js +0 -36
package/assets/index-139e0e8d.js
DELETED
|
@@ -1,277 +0,0 @@
|
|
|
1
|
-
import{b as Vt,g as wb,_ as Jt,a as sy,k as sr,n as we,B as Be,c as Ci,x as oh,o as hf}from"./index-1912ccb5.js";import{C as T,A as iy,N as oy}from"./NetworkUtil-f04f30f1.js";import{s as Eb,u as Vu,h as bb,a as _b}from"./BlockOverrides-b253ac3c.js";import{r as vb}from"./index-7a343a6c.js";function Cb(t,e){for(var n=0;n<e.length;n++){const r=e[n];if(typeof r!="string"&&!Array.isArray(r)){for(const s in r)if(s!=="default"&&!(s in t)){const i=Object.getOwnPropertyDescriptor(r,s);i&&Object.defineProperty(t,s,i.get?i:{enumerable:!0,get:()=>r[s]})}}}return Object.freeze(Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}))}const ay={isLowerCaseMatch(t,e){return(t==null?void 0:t.toLowerCase())===(e==null?void 0:e.toLowerCase())}};var Ab=20,Sb=1,ri=1e6,ff=1e6,Ib=-7,Nb=21,Tb=!1,Ea="[big.js] ",pi=Ea+"Invalid ",sl=pi+"decimal places",Ob=pi+"rounding mode",cy=Ea+"Division by zero",Ve={},wr=void 0,Rb=/^-?(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i;function ly(){function t(e){var n=this;if(!(n instanceof t))return e===wr?ly():new t(e);if(e instanceof t)n.s=e.s,n.e=e.e,n.c=e.c.slice();else{if(typeof e!="string"){if(t.strict===!0&&typeof e!="bigint")throw TypeError(pi+"value");e=e===0&&1/e<0?"-0":String(e)}xb(n,e)}n.constructor=t}return t.prototype=Ve,t.DP=Ab,t.RM=Sb,t.NE=Ib,t.PE=Nb,t.strict=Tb,t.roundDown=0,t.roundHalfUp=1,t.roundHalfEven=2,t.roundUp=3,t}function xb(t,e){var n,r,s;if(!Rb.test(e))throw Error(pi+"number");for(t.s=e.charAt(0)=="-"?(e=e.slice(1),-1):1,(n=e.indexOf("."))>-1&&(e=e.replace(".","")),(r=e.search(/e/i))>0?(n<0&&(n=r),n+=+e.slice(r+1),e=e.substring(0,r)):n<0&&(n=e.length),s=e.length,r=0;r<s&&e.charAt(r)=="0";)++r;if(r==s)t.c=[t.e=0];else{for(;s>0&&e.charAt(--s)=="0";);for(t.e=n-r-1,t.c=[],n=0;r<=s;)t.c[n++]=+e.charAt(r++)}return t}function gi(t,e,n,r){var s=t.c;if(n===wr&&(n=t.constructor.RM),n!==0&&n!==1&&n!==2&&n!==3)throw Error(Ob);if(e<1)r=n===3&&(r||!!s[0])||e===0&&(n===1&&s[0]>=5||n===2&&(s[0]>5||s[0]===5&&(r||s[1]!==wr))),s.length=1,r?(t.e=t.e-e+1,s[0]=1):s[0]=t.e=0;else if(e<s.length){if(r=n===1&&s[e]>=5||n===2&&(s[e]>5||s[e]===5&&(r||s[e+1]!==wr||s[e-1]&1))||n===3&&(r||!!s[0]),s.length=e,r){for(;++s[--e]>9;)if(s[e]=0,e===0){++t.e,s.unshift(1);break}}for(e=s.length;!s[--e];)s.pop()}return t}function mi(t,e,n){var r=t.e,s=t.c.join(""),i=s.length;if(e)s=s.charAt(0)+(i>1?"."+s.slice(1):"")+(r<0?"e":"e+")+r;else if(r<0){for(;++r;)s="0"+s;s="0."+s}else if(r>0)if(++r>i)for(r-=i;r--;)s+="0";else r<i&&(s=s.slice(0,r)+"."+s.slice(r));else i>1&&(s=s.charAt(0)+"."+s.slice(1));return t.s<0&&n?"-"+s:s}Ve.abs=function(){var t=new this.constructor(this);return t.s=1,t};Ve.cmp=function(t){var e,n=this,r=n.c,s=(t=new n.constructor(t)).c,i=n.s,o=t.s,a=n.e,c=t.e;if(!r[0]||!s[0])return r[0]?i:s[0]?-o:0;if(i!=o)return i;if(e=i<0,a!=c)return a>c^e?1:-1;for(o=(a=r.length)<(c=s.length)?a:c,i=-1;++i<o;)if(r[i]!=s[i])return r[i]>s[i]^e?1:-1;return a==c?0:a>c^e?1:-1};Ve.div=function(t){var e=this,n=e.constructor,r=e.c,s=(t=new n(t)).c,i=e.s==t.s?1:-1,o=n.DP;if(o!==~~o||o<0||o>ri)throw Error(sl);if(!s[0])throw Error(cy);if(!r[0])return t.s=i,t.c=[t.e=0],t;var a,c,l,u,d,h=s.slice(),f=a=s.length,p=r.length,g=r.slice(0,a),y=g.length,v=t,A=v.c=[],E=0,C=o+(v.e=e.e-t.e)+1;for(v.s=i,i=C<0?0:C,h.unshift(0);y++<a;)g.push(0);do{for(l=0;l<10;l++){if(a!=(y=g.length))u=a>y?1:-1;else for(d=-1,u=0;++d<a;)if(s[d]!=g[d]){u=s[d]>g[d]?1:-1;break}if(u<0){for(c=y==a?s:h;y;){if(g[--y]<c[y]){for(d=y;d&&!g[--d];)g[d]=9;--g[d],g[y]+=10}g[y]-=c[y]}for(;!g[0];)g.shift()}else break}A[E++]=u?l:++l,g[0]&&u?g[y]=r[f]||0:g=[r[f]]}while((f++<p||g[0]!==wr)&&i--);return!A[0]&&E!=1&&(A.shift(),v.e--,C--),E>C&&gi(v,C,n.RM,g[0]!==wr),v};Ve.eq=function(t){return this.cmp(t)===0};Ve.gt=function(t){return this.cmp(t)>0};Ve.gte=function(t){return this.cmp(t)>-1};Ve.lt=function(t){return this.cmp(t)<0};Ve.lte=function(t){return this.cmp(t)<1};Ve.minus=Ve.sub=function(t){var e,n,r,s,i=this,o=i.constructor,a=i.s,c=(t=new o(t)).s;if(a!=c)return t.s=-c,i.plus(t);var l=i.c.slice(),u=i.e,d=t.c,h=t.e;if(!l[0]||!d[0])return d[0]?t.s=-c:l[0]?t=new o(i):t.s=1,t;if(a=u-h){for((s=a<0)?(a=-a,r=l):(h=u,r=d),r.reverse(),c=a;c--;)r.push(0);r.reverse()}else for(n=((s=l.length<d.length)?l:d).length,a=c=0;c<n;c++)if(l[c]!=d[c]){s=l[c]<d[c];break}if(s&&(r=l,l=d,d=r,t.s=-t.s),(c=(n=d.length)-(e=l.length))>0)for(;c--;)l[e++]=0;for(c=e;n>a;){if(l[--n]<d[n]){for(e=n;e&&!l[--e];)l[e]=9;--l[e],l[n]+=10}l[n]-=d[n]}for(;l[--c]===0;)l.pop();for(;l[0]===0;)l.shift(),--h;return l[0]||(t.s=1,l=[h=0]),t.c=l,t.e=h,t};Ve.mod=function(t){var e,n=this,r=n.constructor,s=n.s,i=(t=new r(t)).s;if(!t.c[0])throw Error(cy);return n.s=t.s=1,e=t.cmp(n)==1,n.s=s,t.s=i,e?new r(n):(s=r.DP,i=r.RM,r.DP=r.RM=0,n=n.div(t),r.DP=s,r.RM=i,this.minus(n.times(t)))};Ve.neg=function(){var t=new this.constructor(this);return t.s=-t.s,t};Ve.plus=Ve.add=function(t){var e,n,r,s=this,i=s.constructor;if(t=new i(t),s.s!=t.s)return t.s=-t.s,s.minus(t);var o=s.e,a=s.c,c=t.e,l=t.c;if(!a[0]||!l[0])return l[0]||(a[0]?t=new i(s):t.s=s.s),t;if(a=a.slice(),e=o-c){for(e>0?(c=o,r=l):(e=-e,r=a),r.reverse();e--;)r.push(0);r.reverse()}for(a.length-l.length<0&&(r=l,l=a,a=r),e=l.length,n=0;e;a[e]%=10)n=(a[--e]=a[e]+l[e]+n)/10|0;for(n&&(a.unshift(n),++c),e=a.length;a[--e]===0;)a.pop();return t.c=a,t.e=c,t};Ve.pow=function(t){var e=this,n=new e.constructor("1"),r=n,s=t<0;if(t!==~~t||t<-ff||t>ff)throw Error(pi+"exponent");for(s&&(t=-t);t&1&&(r=r.times(e)),t>>=1,!!t;)e=e.times(e);return s?n.div(r):r};Ve.prec=function(t,e){if(t!==~~t||t<1||t>ri)throw Error(pi+"precision");return gi(new this.constructor(this),t,e)};Ve.round=function(t,e){if(t===wr)t=0;else if(t!==~~t||t<-ri||t>ri)throw Error(sl);return gi(new this.constructor(this),t+this.e+1,e)};Ve.sqrt=function(){var t,e,n,r=this,s=r.constructor,i=r.s,o=r.e,a=new s("0.5");if(!r.c[0])return new s(r);if(i<0)throw Error(Ea+"No square root");i=Math.sqrt(+mi(r,!0,!0)),i===0||i===1/0?(e=r.c.join(""),e.length+o&1||(e+="0"),i=Math.sqrt(e),o=((o+1)/2|0)-(o<0||o&1),t=new s((i==1/0?"5e":(i=i.toExponential()).slice(0,i.indexOf("e")+1))+o)):t=new s(i+""),o=t.e+(s.DP+=4);do n=t,t=a.times(n.plus(r.div(n)));while(n.c.slice(0,o).join("")!==t.c.slice(0,o).join(""));return gi(t,(s.DP-=4)+t.e+1,s.RM)};Ve.times=Ve.mul=function(t){var e,n=this,r=n.constructor,s=n.c,i=(t=new r(t)).c,o=s.length,a=i.length,c=n.e,l=t.e;if(t.s=n.s==t.s?1:-1,!s[0]||!i[0])return t.c=[t.e=0],t;for(t.e=c+l,o<a&&(e=s,s=i,i=e,l=o,o=a,a=l),e=new Array(l=o+a);l--;)e[l]=0;for(c=a;c--;){for(a=0,l=o+c;l>c;)a=e[l]+i[c]*s[l-c-1]+a,e[l--]=a%10,a=a/10|0;e[l]=a}for(a?++t.e:e.shift(),c=e.length;!e[--c];)e.pop();return t.c=e,t};Ve.toExponential=function(t,e){var n=this,r=n.c[0];if(t!==wr){if(t!==~~t||t<0||t>ri)throw Error(sl);for(n=gi(new n.constructor(n),++t,e);n.c.length<t;)n.c.push(0)}return mi(n,!0,!!r)};Ve.toFixed=function(t,e){var n=this,r=n.c[0];if(t!==wr){if(t!==~~t||t<0||t>ri)throw Error(sl);for(n=gi(new n.constructor(n),t+n.e+1,e),t=t+n.e+1;n.c.length<t;)n.c.push(0)}return mi(n,!1,!!r)};Ve[Symbol.for("nodejs.util.inspect.custom")]=Ve.toJSON=Ve.toString=function(){var t=this,e=t.constructor;return mi(t,t.e<=e.NE||t.e>=e.PE,!!t.c[0])};Ve.toNumber=function(){var t=+mi(this,!0,!0);if(this.constructor.strict===!0&&!this.eq(t.toString()))throw Error(Ea+"Imprecise conversion");return t};Ve.toPrecision=function(t,e){var n=this,r=n.constructor,s=n.c[0];if(t!==wr){if(t!==~~t||t<1||t>ri)throw Error(pi+"precision");for(n=gi(new r(n),t,e);n.c.length<t;)n.c.push(0)}return mi(n,t<=n.e||n.e<=r.NE||n.e>=r.PE,!!s)};Ve.valueOf=function(){var t=this,e=t.constructor;if(e.strict===!0)throw Error(Ea+"valueOf disallowed");return mi(t,t.e<=e.NE||t.e>=e.PE,!0)};var ir=ly();const uy={bigNumber(t,e={safe:!1}){try{return t?new ir(t):new ir(0)}catch(n){if(e.safe)return new ir(0);throw n}},formatNumber(t,e){const{decimals:n,round:r=8,safe:s=!0}=e;return uy.bigNumber(t,{safe:s}).div(new ir(10).pow(n)).round(r)},multiply(t,e){if(t===void 0||e===void 0)return new ir(0);const n=new ir(t),r=new ir(e);return n.times(r)},toFixed(t,e=2){return t===void 0||t===""?new ir(0).toFixed(e):new ir(t).toFixed(e)},formatNumberToLocalString(t,e=2){return t===void 0||t===""?"0.00":typeof t=="number"?t.toLocaleString("en-US",{maximumFractionDigits:e,minimumFractionDigits:e,roundingMode:"floor"}):parseFloat(t).toLocaleString("en-US",{maximumFractionDigits:e,minimumFractionDigits:e,roundingMode:"floor"})},parseLocalStringToNumber(t){if(t===void 0||t==="")return 0;const e=t.replace(/,/gu,"");return new ir(e).toNumber()}},Pb=[{type:"function",name:"transfer",stateMutability:"nonpayable",inputs:[{name:"_to",type:"address"},{name:"_value",type:"uint256"}],outputs:[{name:"",type:"bool"}]},{type:"function",name:"transferFrom",stateMutability:"nonpayable",inputs:[{name:"_from",type:"address"},{name:"_to",type:"address"},{name:"_value",type:"uint256"}],outputs:[{name:"",type:"bool"}]}],Db=[{type:"function",name:"approve",stateMutability:"nonpayable",inputs:[{name:"spender",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]}],kb=[{type:"function",name:"transfer",stateMutability:"nonpayable",inputs:[{name:"recipient",type:"address"},{name:"amount",type:"uint256"}],outputs:[]},{type:"function",name:"transferFrom",stateMutability:"nonpayable",inputs:[{name:"sender",type:"address"},{name:"recipient",type:"address"},{name:"amount",type:"uint256"}],outputs:[{name:"",type:"bool"}]}],Ub={getERC20Abi:t=>T.USDT_CONTRACT_ADDRESSES.includes(t)?kb:Pb,getSwapAbi:()=>Db},Ai={ConnectorExplorerIds:{[T.CONNECTOR_ID.COINBASE]:"fd20dc426fb37566d803205b19bbc1d4096b248ac04548e3cfb6b3a38bd033aa",[T.CONNECTOR_ID.COINBASE_SDK]:"fd20dc426fb37566d803205b19bbc1d4096b248ac04548e3cfb6b3a38bd033aa",[T.CONNECTOR_ID.BASE_ACCOUNT]:"fd20dc426fb37566d803205b19bbc1d4096b248ac04548e3cfb6b3a38bd033aa",[T.CONNECTOR_ID.SAFE]:"225affb176778569276e484e1b92637ad061b01e13a048b35a9d280c3b58970f",[T.CONNECTOR_ID.LEDGER]:"19177a98252e07ddfc9af2083ba8e07ef627cb6103467ffebb3f8f4205fd7927",[T.CONNECTOR_ID.OKX]:"971e689d0a5be527bac79629b4ee9b925e82208e5168b733496a09c0faed0709",[T.METMASK_CONNECTOR_NAME]:"c57ca95b47569778a828d19178114f4db188b89b763c899ba0be274e97267d96",[T.TRUST_CONNECTOR_NAME]:"4622a2b2d6af1c9844944291e5e7351a6aa24cd7b23099efac1b2fd875da31a0",[T.SOLFLARE_CONNECTOR_NAME]:"1ca0bdd4747578705b1939af023d120677c64fe6ca76add81fda36e350605e79",[T.PHANTOM_CONNECTOR_NAME]:"a797aa35c0fadbfc1a53e7f675162ed5226968b44a19ee3d24385c64d1d3c393",[T.COIN98_CONNECTOR_NAME]:"2a3c89040ac3b723a1972a33a125b1db11e258a6975d3a61252cd64e6ea5ea01",[T.MAGIC_EDEN_CONNECTOR_NAME]:"8b830a2b724a9c3fbab63af6f55ed29c9dfa8a55e732dc88c80a196a2ba136c6",[T.BACKPACK_CONNECTOR_NAME]:"2bd8c14e035c2d48f184aaa168559e86b0e3433228d3c4075900a221785019b0",[T.BITGET_CONNECTOR_NAME]:"38f5d18bd8522c244bdd70cb4a68e0e718865155811c043f052fb9f1c51de662",[T.FRONTIER_CONNECTOR_NAME]:"85db431492aa2e8672e93f4ea7acf10c88b97b867b0d373107af63dc4880f041",[T.XVERSE_CONNECTOR_NAME]:"2a87d74ae02e10bdd1f51f7ce6c4e1cc53cd5f2c0b6b5ad0d7b3007d2b13de7b",[T.LEATHER_CONNECTOR_NAME]:"483afe1df1df63daf313109971ff3ef8356ddf1cc4e45877d205eee0b7893a13",[T.OKX_CONNECTOR_NAME]:"971e689d0a5be527bac79629b4ee9b925e82208e5168b733496a09c0faed0709",[T.BINANCE_CONNECTOR_NAME]:"2fafea35bb471d22889ccb49c08d99dd0a18a37982602c33f696a5723934ba25"},NetworkImageIds:{1:"ba0ba0cd-17c6-4806-ad93-f9d174f17900",42161:"3bff954d-5cb0-47a0-9a23-d20192e74600",43114:"30c46e53-e989-45fb-4549-be3bd4eb3b00",56:"93564157-2e8e-4ce7-81df-b264dbee9b00",250:"06b26297-fe0c-4733-5d6b-ffa5498aac00",10:"ab9c186a-c52f-464b-2906-ca59d760a400",137:"41d04d42-da3b-4453-8506-668cc0727900",5e3:"e86fae9b-b770-4eea-e520-150e12c81100",295:"6a97d510-cac8-4e58-c7ce-e8681b044c00",11155111:"e909ea0a-f92a-4512-c8fc-748044ea6800",84532:"a18a7ecd-e307-4360-4746-283182228e00",1301:"4eeea7ef-0014-4649-5d1d-07271a80f600",130:"2257980a-3463-48c6-cbac-a42d2a956e00",10143:"0a728e83-bacb-46db-7844-948f05434900",100:"02b53f6a-e3d4-479e-1cb4-21178987d100",9001:"f926ff41-260d-4028-635e-91913fc28e00",324:"b310f07f-4ef7-49f3-7073-2a0a39685800",314:"5a73b3dd-af74-424e-cae0-0de859ee9400",4689:"34e68754-e536-40da-c153-6ef2e7188a00",1088:"3897a66d-40b9-4833-162f-a2c90531c900",1284:"161038da-44ae-4ec7-1208-0ea569454b00",1285:"f1d73bb6-5450-4e18-38f7-fb6484264a00",7777777:"845c60df-d429-4991-e687-91ae45791600",42220:"ab781bbc-ccc6-418d-d32d-789b15da1f00",8453:"7289c336-3981-4081-c5f4-efc26ac64a00",1313161554:"3ff73439-a619-4894-9262-4470c773a100",2020:"b8101fc0-9c19-4b6f-ec65-f6dfff106e00",2021:"b8101fc0-9c19-4b6f-ec65-f6dfff106e00",80094:"e329c2c9-59b0-4a02-83e4-212ff3779900",2741:"fc2427d1-5af9-4a9c-8da5-6f94627cd900","5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp":"a1b58899-f671-4276-6a5e-56ca5bd59700","4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z":"a1b58899-f671-4276-6a5e-56ca5bd59700",EtWTRABZaYq6iMfeYKouRu166VU2xqa1:"a1b58899-f671-4276-6a5e-56ca5bd59700","000000000019d6689c085ae165831e93":"0b4838db-0161-4ffe-022d-532bf03dba00","000000000933ea01ad0ee984209779ba":"39354064-d79b-420b-065d-f980c4b78200","00000008819873e925422c1ff0f99f7c":"b3406e4a-bbfc-44fb-e3a6-89673c78b700","-239":"20f673c0-095e-49b2-07cf-eb5049dcf600","-3":"20f673c0-095e-49b2-07cf-eb5049dcf600"},ConnectorImageIds:{[T.CONNECTOR_ID.COINBASE]:"0c2840c3-5b04-4c44-9661-fbd4b49e1800",[T.CONNECTOR_ID.COINBASE_SDK]:"0c2840c3-5b04-4c44-9661-fbd4b49e1800",[T.CONNECTOR_ID.BASE_ACCOUNT]:"bba2c8be-7fd1-463e-42b1-796ecb0ad200",[T.CONNECTOR_ID.SAFE]:"461db637-8616-43ce-035a-d89b8a1d5800",[T.CONNECTOR_ID.LEDGER]:"54a1aa77-d202-4f8d-0fb2-5d2bb6db0300",[T.CONNECTOR_ID.WALLET_CONNECT]:"ef1a1fcf-7fe8-4d69-bd6d-fda1345b4400",[T.CONNECTOR_ID.INJECTED]:"07ba87ed-43aa-4adf-4540-9e6a2b9cae00"},ConnectorNamesMap:{[T.CONNECTOR_ID.INJECTED]:"Browser Wallet",[T.CONNECTOR_ID.WALLET_CONNECT]:"WalletConnect",[T.CONNECTOR_ID.COINBASE]:"Coinbase",[T.CONNECTOR_ID.COINBASE_SDK]:"Coinbase",[T.CONNECTOR_ID.BASE_ACCOUNT]:"Base Account",[T.CONNECTOR_ID.LEDGER]:"Ledger",[T.CONNECTOR_ID.SAFE]:"Safe"},ConnectorTypesMap:{[T.CONNECTOR_ID.INJECTED]:"INJECTED",[T.CONNECTOR_ID.WALLET_CONNECT]:"WALLET_CONNECT",[T.CONNECTOR_ID.EIP6963]:"ANNOUNCED",[T.CONNECTOR_ID.AUTH]:"AUTH"},WalletConnectRpcChainIds:[1,5,11155111,10,420,42161,421613,137,80001,42220,1313161554,1313161555,56,97,43114,43113,100,8453,84531,7777777,999,324,280]},wt={validateCaipAddress(t){var e;if(((e=t.split(":"))==null?void 0:e.length)!==3)throw new Error("Invalid CAIP Address");return t},parseCaipAddress(t){const e=t.split(":");if(e.length!==3)throw new Error(`Invalid CAIP-10 address: ${t}`);const[n,r,s]=e;if(!n||!r||!s)throw new Error(`Invalid CAIP-10 address: ${t}`);return{chainNamespace:n,chainId:r,address:s}},parseCaipNetworkId(t){const e=t.split(":");if(e.length!==2)throw new Error(`Invalid CAIP-2 network id: ${t}`);const[n,r]=e;if(!n||!r)throw new Error(`Invalid CAIP-2 network id: ${t}`);return{chainNamespace:n,chainId:r}}},Mr={RPC_ERROR_CODE:{USER_REJECTED_REQUEST:4001,USER_REJECTED_METHODS:5002,USER_REJECTED:5e3},PROVIDER_RPC_ERROR_NAME:{PROVIDER_RPC:"ProviderRpcError",USER_REJECTED_REQUEST:"UserRejectedRequestError"},isRpcProviderError(t){try{if(typeof t=="object"&&t!==null){const e=t,n=typeof e.message=="string",r=typeof e.code=="number";return n&&r}return!1}catch{return!1}},isUserRejectedMessage(t){return t.toLowerCase().includes("user rejected")||t.toLowerCase().includes("user cancelled")||t.toLowerCase().includes("user canceled")},isUserRejectedRequestError(t){if(Mr.isRpcProviderError(t)){const e=t.code===Mr.RPC_ERROR_CODE.USER_REJECTED_REQUEST,n=t.code===Mr.RPC_ERROR_CODE.USER_REJECTED_METHODS;return e||n||Mr.isUserRejectedMessage(t.message)}return t instanceof Error?Mr.isUserRejectedMessage(t.message):!1}};class $b extends Error{constructor(e,n){super(n.message,{cause:e}),this.name=Mr.PROVIDER_RPC_ERROR_NAME.PROVIDER_RPC,this.code=n.code}}class dy extends $b{constructor(e){super(e,{code:Mr.RPC_ERROR_CODE.USER_REJECTED_REQUEST,message:"User rejected the request"}),this.name=Mr.PROVIDER_RPC_ERROR_NAME.USER_REJECTED_REQUEST}}const le={WALLET_ID:"@appkit/wallet_id",WALLET_NAME:"@appkit/wallet_name",SOLANA_WALLET:"@appkit/solana_wallet",SOLANA_CAIP_CHAIN:"@appkit/solana_caip_chain",ACTIVE_CAIP_NETWORK_ID:"@appkit/active_caip_network_id",CONNECTED_SOCIAL:"@appkit/connected_social",CONNECTED_SOCIAL_USERNAME:"@appkit-wallet/SOCIAL_USERNAME",RECENT_WALLETS:"@appkit/recent_wallets",RECENT_WALLET:"@appkit/recent_wallet",DEEPLINK_CHOICE:"WALLETCONNECT_DEEPLINK_CHOICE",ACTIVE_NAMESPACE:"@appkit/active_namespace",CONNECTED_NAMESPACES:"@appkit/connected_namespaces",CONNECTION_STATUS:"@appkit/connection_status",SIWX_AUTH_TOKEN:"@appkit/siwx-auth-token",SIWX_NONCE_TOKEN:"@appkit/siwx-nonce-token",TELEGRAM_SOCIAL_PROVIDER:"@appkit/social_provider",NATIVE_BALANCE_CACHE:"@appkit/native_balance_cache",PORTFOLIO_CACHE:"@appkit/portfolio_cache",ENS_CACHE:"@appkit/ens_cache",IDENTITY_CACHE:"@appkit/identity_cache",PREFERRED_ACCOUNT_TYPES:"@appkit/preferred_account_types",CONNECTIONS:"@appkit/connections",DISCONNECTED_CONNECTOR_IDS:"@appkit/disconnected_connector_ids",HISTORY_TRANSACTIONS_CACHE:"@appkit/history_transactions_cache",TOKEN_PRICE_CACHE:"@appkit/token_price_cache",RECENT_EMAILS:"@appkit/recent_emails",LATEST_APPKIT_VERSION:"@appkit/latest_version",TON_WALLETS_CACHE:"@appkit/ton_wallets_cache"};function Pl(t){if(!t)throw new Error("Namespace is required for CONNECTED_CONNECTOR_ID");return`@appkit/${t}:connected_connector_id`}const ce={setItem(t,e){Io()&&e!==void 0&&localStorage.setItem(t,e)},getItem(t){if(Io())return localStorage.getItem(t)||void 0},removeItem(t){Io()&&localStorage.removeItem(t)},clear(){Io()&&localStorage.clear()}};function Io(){return typeof window<"u"&&typeof localStorage<"u"}function Ho(t,e){const n=(t==null?void 0:t["--apkt-accent"])??(t==null?void 0:t["--w3m-accent"]);return e==="light"?{"--w3m-accent":n||"hsla(231, 100%, 70%, 1)","--w3m-background":"#fff"}:{"--w3m-accent":n||"hsla(230, 100%, 67%, 1)","--w3m-background":"#202020"}}const Bb=Symbol(),pf=Object.getPrototypeOf,Ku=new WeakMap,Fb=t=>t&&(Ku.has(t)?Ku.get(t):pf(t)===Object.prototype||pf(t)===Array.prototype),Lb=t=>Fb(t)&&t[Bb]||null,gf=(t,e=!0)=>{Ku.set(t,e)},ah=t=>typeof t=="object"&&t!==null,Mb=t=>ah(t)&&!ba.has(t)&&(Array.isArray(t)||!(Symbol.iterator in t))&&!(t instanceof WeakMap)&&!(t instanceof WeakSet)&&!(t instanceof Error)&&!(t instanceof Number)&&!(t instanceof Date)&&!(t instanceof String)&&!(t instanceof RegExp)&&!(t instanceof ArrayBuffer)&&!(t instanceof Promise),hy=(t,e)=>{const n=Gu.get(t);if((n==null?void 0:n[0])===e)return n[1];const r=Array.isArray(t)?[]:Object.create(Object.getPrototypeOf(t));return gf(r,!0),Gu.set(t,[e,r]),Reflect.ownKeys(t).forEach(s=>{if(Object.getOwnPropertyDescriptor(r,s))return;const i=Reflect.get(t,s),{enumerable:o}=Reflect.getOwnPropertyDescriptor(t,s),a={value:i,enumerable:o,configurable:!0};if(ba.has(i))gf(i,!1);else if(As.has(i)){const[c,l]=As.get(i);a.value=hy(c,l())}Object.defineProperty(r,s,a)}),Object.preventExtensions(r)},jb=(t,e,n,r)=>({deleteProperty(s,i){const o=Reflect.get(s,i);n(i);const a=Reflect.deleteProperty(s,i);return a&&r(["delete",[i],o]),a},set(s,i,o,a){const c=!t()&&Reflect.has(s,i),l=Reflect.get(s,i,a);if(c&&(mf(l,o)||zo.has(o)&&mf(l,zo.get(o))))return!0;n(i),ah(o)&&(o=Lb(o)||o);const u=!As.has(o)&&qb(o)?Xe(o):o;return e(i,u),Reflect.set(s,i,u,a),r(["set",[i],o,l]),!0}}),As=new WeakMap,ba=new WeakSet,Gu=new WeakMap,lc=[1],zo=new WeakMap;let mf=Object.is,Wb=(t,e)=>new Proxy(t,e),qb=Mb,Hb=hy,zb=jb;function Xe(t={}){if(!ah(t))throw new Error("object required");const e=zo.get(t);if(e)return e;let n=lc[0];const r=new Set,s=(y,v=++lc[0])=>{n!==v&&(i=n=v,r.forEach(A=>A(y,v)))};let i=n;const o=(y=lc[0])=>(i!==y&&(i=y,c.forEach(([v])=>{const A=v[1](y);A>n&&(n=A)})),n),a=y=>(v,A)=>{const E=[...v];E[1]=[y,...E[1]],s(E,A)},c=new Map,l=(y,v)=>{const A=!ba.has(v)&&As.get(v);if(A)if(r.size){const E=A[2](a(y));c.set(y,[A,E])}else c.set(y,[A])},u=y=>{var v;const A=c.get(y);A&&(c.delete(y),(v=A[1])==null||v.call(A))},d=y=>(r.add(y),r.size===1&&c.forEach(([A,E],C)=>{const O=A[2](a(C));c.set(C,[A,O])}),()=>{r.delete(y),r.size===0&&c.forEach(([A,E],C)=>{E&&(E(),c.set(C,[A]))})});let h=!0;const f=zb(()=>h,l,u,s),p=Wb(t,f);zo.set(t,p);const g=[t,o,d];return As.set(p,g),Reflect.ownKeys(t).forEach(y=>{const v=Object.getOwnPropertyDescriptor(t,y);"value"in v&&v.writable&&(p[y]=t[y])}),h=!1,p}function xt(t,e,n){const r=As.get(t);let s;const i=[],o=r[2];let a=!1;const l=o(u=>{if(i.push(u),n){e(i.splice(0));return}s||(s=Promise.resolve().then(()=>{s=void 0,a&&e(i.splice(0))}))});return a=!0,()=>{a=!1,l()}}function Vo(t){const e=As.get(t),[n,r]=e;return Hb(n,r())}function Ko(t){return ba.add(t),t}function Vb(){return{proxyStateMap:As,refSet:ba,snapCache:Gu,versionHolder:lc,proxyCache:zo}}function Pt(t,e,n,r){let s=t[e];return xt(t,()=>{const i=t[e];Object.is(s,i)||n(s=i)},r)}const{proxyStateMap:Kb,snapCache:Gb}=Vb(),Ua=t=>Kb.has(t);function Yb(t){const e=[];let n=0;const r=new Map,s=new WeakMap,i=()=>{const l=Gb.get(a),u=l==null?void 0:l[1];if(u&&!s.has(u)){const d=new Map(r);s.set(u,d)}},o=l=>s.get(l)||r;if(t){if(typeof t[Symbol.iterator]!="function")throw new TypeError(`proxyMap:
|
|
2
|
-
initial state must be iterable
|
|
3
|
-
tip: structure should be [[key, value]]`);for(const[l,u]of t)r.set(l,n),e[n++]=u}const a={data:e,index:n,epoch:0,get size(){return Ua(this)||i(),o(this).size},get(l){const d=o(this).get(l);if(d===void 0){this.epoch;return}return this.data[d]},has(l){const u=o(this);return this.epoch,u.has(l)},set(l,u){if(!Ua(this))throw new Error("Cannot perform mutations on a snapshot");const d=r.get(l);return d===void 0?(r.set(l,this.index),this.data[this.index++]=u):this.data[d]=u,this.epoch++,this},delete(l){if(!Ua(this))throw new Error("Cannot perform mutations on a snapshot");const u=r.get(l);return u===void 0?!1:(delete this.data[u],r.delete(l),this.epoch++,!0)},clear(){if(!Ua(this))throw new Error("Cannot perform mutations on a snapshot");this.data.length=0,this.index=0,this.epoch++,r.clear()},forEach(l){this.epoch,o(this).forEach((d,h)=>{l(this.data[d],h,this)})},*entries(){this.epoch;const l=o(this);for(const[u,d]of l)yield[u,this.data[d]]},*keys(){this.epoch;const l=o(this);for(const u of l.keys())yield u},*values(){this.epoch;const l=o(this);for(const u of l.values())yield this.data[u]},[Symbol.iterator](){return this.entries()},get[Symbol.toStringTag](){return"Map"},toJSON(){return new Map(this.entries())}},c=Xe(a);return Object.defineProperties(c,{size:{enumerable:!1},index:{enumerable:!1},epoch:{enumerable:!1},data:{enumerable:!1},toJSON:{enumerable:!1}}),Object.seal(c),c}const Dl=(typeof Vt<"u"&&typeof{}<"u"?{}.NEXT_PUBLIC_SECURE_SITE_ORIGIN:void 0)||"https://secure.walletconnect.org",fy=[{label:"Meld.io",name:"meld",feeRange:"1-2%",url:"https://meldcrypto.com",supportedChains:["eip155","solana"]}],Zb="WXETMuFUQmqqybHuRkSgxv:25B8LJHSfpG6LVjR2ytU5Cwh7Z4Sch2ocoU",Oe={FOUR_MINUTES_MS:24e4,TEN_SEC_MS:1e4,FIVE_SEC_MS:5e3,THREE_SEC_MS:3e3,ONE_SEC_MS:1e3,SECURE_SITE:Dl,SECURE_SITE_DASHBOARD:`${Dl}/dashboard`,SECURE_SITE_FAVICON:`${Dl}/images/favicon.png`,SOLANA_NATIVE_TOKEN_ADDRESS:"So11111111111111111111111111111111111111111",RESTRICTED_TIMEZONES:["ASIA/SHANGHAI","ASIA/URUMQI","ASIA/CHONGQING","ASIA/HARBIN","ASIA/KASHGAR","ASIA/MACAU","ASIA/HONG_KONG","ASIA/MACAO","ASIA/BEIJING","ASIA/HARBIN"],SWAP_SUGGESTED_TOKENS:["ETH","UNI","1INCH","AAVE","SOL","ADA","AVAX","DOT","LINK","NITRO","GAIA","MILK","TRX","NEAR","GNO","WBTC","DAI","WETH","USDC","USDT","ARB","BAL","BICO","CRV","ENS","MATIC","OP"],SWAP_POPULAR_TOKENS:["ETH","UNI","1INCH","AAVE","SOL","ADA","AVAX","DOT","LINK","NITRO","GAIA","MILK","TRX","NEAR","GNO","WBTC","DAI","WETH","USDC","USDT","ARB","BAL","BICO","CRV","ENS","MATIC","OP","METAL","DAI","CHAMP","WOLF","SALE","BAL","BUSD","MUST","BTCpx","ROUTE","HEX","WELT","amDAI","VSQ","VISION","AURUM","pSP","SNX","VC","LINK","CHP","amUSDT","SPHERE","FOX","GIDDY","GFC","OMEN","OX_OLD","DE","WNT"],SUGGESTED_TOKENS_BY_CHAIN:{"eip155:42161":["USD₮0"]},BALANCE_SUPPORTED_CHAINS:[T.CHAIN.EVM,T.CHAIN.SOLANA],SEND_PARAMS_SUPPORTED_CHAINS:[T.CHAIN.EVM],SWAP_SUPPORTED_NETWORKS:["eip155:1","eip155:42161","eip155:10","eip155:324","eip155:8453","eip155:56","eip155:137","eip155:100","eip155:43114","eip155:250","eip155:8217","eip155:1313161554"],NAMES_SUPPORTED_CHAIN_NAMESPACES:[T.CHAIN.EVM],ONRAMP_SUPPORTED_CHAIN_NAMESPACES:[T.CHAIN.EVM,T.CHAIN.SOLANA],PAY_WITH_EXCHANGE_SUPPORTED_CHAIN_NAMESPACES:[T.CHAIN.EVM,T.CHAIN.SOLANA],ACTIVITY_ENABLED_CHAIN_NAMESPACES:[T.CHAIN.EVM,T.CHAIN.TON],NATIVE_TOKEN_ADDRESS:{eip155:"0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",solana:"So11111111111111111111111111111111111111111",polkadot:"0x",bip122:"0x",cosmos:"0x",sui:"0x",stacks:"0x",ton:"0x"},CONVERT_SLIPPAGE_TOLERANCE:1,CONNECT_LABELS:{MOBILE:"Open and continue in the wallet app",WEB:"Open and continue in the wallet app"},SEND_SUPPORTED_NAMESPACES:[T.CHAIN.EVM,T.CHAIN.SOLANA],DEFAULT_REMOTE_FEATURES:{swaps:["1inch"],onramp:["meld"],email:!0,socials:["google","x","discord","farcaster","github","apple","facebook"],activity:!0,reownBranding:!0,multiWallet:!1,emailCapture:!1,payWithExchange:!1,payments:!1,reownAuthentication:!1,headless:!1},DEFAULT_REMOTE_FEATURES_DISABLED:{email:!1,socials:!1,swaps:!1,onramp:!1,activity:!1,reownBranding:!1,emailCapture:!1,reownAuthentication:!1,headless:!1},DEFAULT_FEATURES:{receive:!0,send:!0,emailShowWallets:!0,connectorTypeOrder:["walletConnect","recent","injected","featured","custom","external","recommended"],analytics:!0,allWallets:!0,legalCheckbox:!1,smartSessions:!1,collapseWallets:!1,walletFeaturesOrder:["onramp","swaps","receive","send"],connectMethodsOrder:void 0,pay:!1,reownAuthentication:!1,headless:!1},DEFAULT_SOCIALS:["google","x","farcaster","discord","apple","github","facebook"],DEFAULT_ACCOUNT_TYPES:{bip122:"payment",eip155:"smartAccount",polkadot:"eoa",solana:"eoa",ton:"eoa"},ADAPTER_TYPES:{UNIVERSAL:"universal",SOLANA:"solana",WAGMI:"wagmi",ETHERS:"ethers",ETHERS5:"ethers5",BITCOIN:"bitcoin"},SIWX_DEFAULTS:{signOutOnDisconnect:!0},MANDATORY_WALLET_IDS_ON_MOBILE:[Ai.ConnectorExplorerIds[T.CONNECTOR_ID.COINBASE],Ai.ConnectorExplorerIds[T.CONNECTOR_ID.COINBASE_SDK],Ai.ConnectorExplorerIds[T.CONNECTOR_ID.BASE_ACCOUNT],Ai.ConnectorExplorerIds[T.SOLFLARE_CONNECTOR_NAME],Ai.ConnectorExplorerIds[T.PHANTOM_CONNECTOR_NAME],Ai.ConnectorExplorerIds[T.BINANCE_CONNECTOR_NAME]],DEFAULT_CONNECT_METHOD_ORDER:["email","social","wallet"]},j={cacheExpiry:{portfolio:3e4,nativeBalance:3e4,ens:3e5,identity:3e5,transactionsHistory:15e3,tokenPrice:15e3,latestAppKitVersion:6048e5,tonWallets:864e5},isCacheExpired(t,e){return Date.now()-t>e},getActiveNetworkProps(){const t=j.getActiveNamespace(),e=j.getActiveCaipNetworkId(),n=e?e.split(":")[1]:void 0,r=n?isNaN(Number(n))?n:Number(n):void 0;return{namespace:t,caipNetworkId:e,chainId:r}},setWalletConnectDeepLink({name:t,href:e}){try{ce.setItem(le.DEEPLINK_CHOICE,JSON.stringify({href:e,name:t}))}catch{console.info("Unable to set WalletConnect deep link")}},getWalletConnectDeepLink(){try{const t=ce.getItem(le.DEEPLINK_CHOICE);if(t)return JSON.parse(t)}catch{console.info("Unable to get WalletConnect deep link")}},deleteWalletConnectDeepLink(){try{ce.removeItem(le.DEEPLINK_CHOICE)}catch{console.info("Unable to delete WalletConnect deep link")}},setActiveNamespace(t){try{ce.setItem(le.ACTIVE_NAMESPACE,t)}catch{console.info("Unable to set active namespace")}},setActiveCaipNetworkId(t){try{ce.setItem(le.ACTIVE_CAIP_NETWORK_ID,t),j.setActiveNamespace(t.split(":")[0])}catch{console.info("Unable to set active caip network id")}},getActiveCaipNetworkId(){try{return ce.getItem(le.ACTIVE_CAIP_NETWORK_ID)}catch{console.info("Unable to get active caip network id");return}},deleteActiveCaipNetworkId(){try{ce.removeItem(le.ACTIVE_CAIP_NETWORK_ID)}catch{console.info("Unable to delete active caip network id")}},deleteConnectedConnectorId(t){try{const e=Pl(t);ce.removeItem(e)}catch{console.info("Unable to delete connected connector id")}},setAppKitRecent(t){try{const e=j.getRecentWallets();e.find(r=>r.id===t.id)||(e.unshift(t),e.length>2&&e.pop(),ce.setItem(le.RECENT_WALLETS,JSON.stringify(e)),ce.setItem(le.RECENT_WALLET,JSON.stringify(t)))}catch{console.info("Unable to set AppKit recent")}},getRecentWallets(){try{const t=ce.getItem(le.RECENT_WALLETS);return t?JSON.parse(t):[]}catch{console.info("Unable to get AppKit recent")}return[]},getRecentWallet(){try{const t=ce.getItem(le.RECENT_WALLET);return t?JSON.parse(t):null}catch{console.info("Unable to get AppKit recent")}return null},deleteRecentWallet(){try{ce.removeItem(le.RECENT_WALLET)}catch{console.info("Unable to delete AppKit recent")}},setConnectedConnectorId(t,e){try{const n=Pl(t);ce.setItem(n,e)}catch{console.info("Unable to set Connected Connector Id")}},getActiveNamespace(){try{return ce.getItem(le.ACTIVE_NAMESPACE)}catch{console.info("Unable to get active namespace")}},getConnectedConnectorId(t){if(t)try{const e=Pl(t);return ce.getItem(e)}catch{console.info("Unable to get connected connector id in namespace",t)}},setConnectedSocialProvider(t){try{ce.setItem(le.CONNECTED_SOCIAL,t)}catch{console.info("Unable to set connected social provider")}},getConnectedSocialProvider(){try{return ce.getItem(le.CONNECTED_SOCIAL)}catch{console.info("Unable to get connected social provider")}},deleteConnectedSocialProvider(){try{ce.removeItem(le.CONNECTED_SOCIAL)}catch{console.info("Unable to delete connected social provider")}},getConnectedSocialUsername(){try{return ce.getItem(le.CONNECTED_SOCIAL_USERNAME)}catch{console.info("Unable to get connected social username")}},getStoredActiveCaipNetworkId(){var n;const t=ce.getItem(le.ACTIVE_CAIP_NETWORK_ID);return(n=t==null?void 0:t.split(":"))==null?void 0:n[1]},setConnectionStatus(t){try{ce.setItem(le.CONNECTION_STATUS,t)}catch{console.info("Unable to set connection status")}},getConnectionStatus(){try{return ce.getItem(le.CONNECTION_STATUS)}catch{return}},getConnectedNamespaces(){try{const t=ce.getItem(le.CONNECTED_NAMESPACES);return t!=null&&t.length?t.split(","):[]}catch{return[]}},setConnectedNamespaces(t){try{const e=Array.from(new Set(t));ce.setItem(le.CONNECTED_NAMESPACES,e.join(","))}catch{console.info("Unable to set namespaces in storage")}},addConnectedNamespace(t){try{const e=j.getConnectedNamespaces();e.includes(t)||(e.push(t),j.setConnectedNamespaces(e))}catch{console.info("Unable to add connected namespace")}},removeConnectedNamespace(t){try{const e=j.getConnectedNamespaces(),n=e.indexOf(t);n>-1&&(e.splice(n,1),j.setConnectedNamespaces(e))}catch{console.info("Unable to remove connected namespace")}},getTelegramSocialProvider(){try{return ce.getItem(le.TELEGRAM_SOCIAL_PROVIDER)}catch{return console.info("Unable to get telegram social provider"),null}},setTelegramSocialProvider(t){try{ce.setItem(le.TELEGRAM_SOCIAL_PROVIDER,t)}catch{console.info("Unable to set telegram social provider")}},removeTelegramSocialProvider(){try{ce.removeItem(le.TELEGRAM_SOCIAL_PROVIDER)}catch{console.info("Unable to remove telegram social provider")}},getBalanceCache(){let t={};try{const e=ce.getItem(le.PORTFOLIO_CACHE);t=e?JSON.parse(e):{}}catch{console.info("Unable to get balance cache")}return t},removeAddressFromBalanceCache(t){try{const e=j.getBalanceCache();ce.setItem(le.PORTFOLIO_CACHE,JSON.stringify({...e,[t]:void 0}))}catch{console.info("Unable to remove address from balance cache",t)}},getBalanceCacheForCaipAddress(t){try{const n=j.getBalanceCache()[t];if(n&&!this.isCacheExpired(n.timestamp,this.cacheExpiry.portfolio))return n.balance;j.removeAddressFromBalanceCache(t)}catch{console.info("Unable to get balance cache for address",t)}},updateBalanceCache(t){try{const e=j.getBalanceCache();e[t.caipAddress]=t,ce.setItem(le.PORTFOLIO_CACHE,JSON.stringify(e))}catch{console.info("Unable to update balance cache",t)}},getNativeBalanceCache(){let t={};try{const e=ce.getItem(le.NATIVE_BALANCE_CACHE);t=e?JSON.parse(e):{}}catch{console.info("Unable to get balance cache")}return t},removeAddressFromNativeBalanceCache(t){try{const e=j.getBalanceCache();ce.setItem(le.NATIVE_BALANCE_CACHE,JSON.stringify({...e,[t]:void 0}))}catch{console.info("Unable to remove address from balance cache",t)}},getNativeBalanceCacheForCaipAddress(t){try{const n=j.getNativeBalanceCache()[t];if(n&&!this.isCacheExpired(n.timestamp,this.cacheExpiry.nativeBalance))return n;console.info("Discarding cache for address",t),j.removeAddressFromBalanceCache(t)}catch{console.info("Unable to get balance cache for address",t)}},updateNativeBalanceCache(t){try{const e=j.getNativeBalanceCache();e[t.caipAddress]=t,ce.setItem(le.NATIVE_BALANCE_CACHE,JSON.stringify(e))}catch{console.info("Unable to update balance cache",t)}},getEnsCache(){let t={};try{const e=ce.getItem(le.ENS_CACHE);t=e?JSON.parse(e):{}}catch{console.info("Unable to get ens name cache")}return t},getEnsFromCacheForAddress(t){try{const n=j.getEnsCache()[t];if(n&&!this.isCacheExpired(n.timestamp,this.cacheExpiry.ens))return n.ens;j.removeEnsFromCache(t)}catch{console.info("Unable to get ens name from cache",t)}},updateEnsCache(t){try{const e=j.getEnsCache();e[t.address]=t,ce.setItem(le.ENS_CACHE,JSON.stringify(e))}catch{console.info("Unable to update ens name cache",t)}},removeEnsFromCache(t){try{const e=j.getEnsCache();ce.setItem(le.ENS_CACHE,JSON.stringify({...e,[t]:void 0}))}catch{console.info("Unable to remove ens name from cache",t)}},getIdentityCache(){let t={};try{const e=ce.getItem(le.IDENTITY_CACHE);t=e?JSON.parse(e):{}}catch{console.info("Unable to get identity cache")}return t},getIdentityFromCacheForAddress(t){try{const n=j.getIdentityCache()[t];if(n&&!this.isCacheExpired(n.timestamp,this.cacheExpiry.identity))return n.identity;j.removeIdentityFromCache(t)}catch{console.info("Unable to get identity from cache",t)}},updateIdentityCache(t){try{const e=j.getIdentityCache();e[t.address]={identity:t.identity,timestamp:t.timestamp},ce.setItem(le.IDENTITY_CACHE,JSON.stringify(e))}catch{console.info("Unable to update identity cache",t)}},removeIdentityFromCache(t){try{const e=j.getIdentityCache();ce.setItem(le.IDENTITY_CACHE,JSON.stringify({...e,[t]:void 0}))}catch{console.info("Unable to remove identity from cache",t)}},getTonWalletsCache(){try{const t=ce.getItem(le.TON_WALLETS_CACHE),e=t?JSON.parse(t):void 0;if(e&&!this.isCacheExpired(e.timestamp,this.cacheExpiry.tonWallets))return e;j.removeTonWalletsCache()}catch{console.info("Unable to get ton wallets cache")}},updateTonWalletsCache(t){try{const e=j.getTonWalletsCache()||{timestamp:0,wallets:[]};e.timestamp=new Date().getTime(),e.wallets=t,ce.setItem(le.TON_WALLETS_CACHE,JSON.stringify(e))}catch{console.info("Unable to update ton wallets cache",t)}},removeTonWalletsCache(){try{ce.removeItem(le.TON_WALLETS_CACHE)}catch{console.info("Unable to remove ton wallets cache")}},clearAddressCache(){try{ce.removeItem(le.PORTFOLIO_CACHE),ce.removeItem(le.NATIVE_BALANCE_CACHE),ce.removeItem(le.ENS_CACHE),ce.removeItem(le.IDENTITY_CACHE),ce.removeItem(le.HISTORY_TRANSACTIONS_CACHE)}catch{console.info("Unable to clear address cache")}},setPreferredAccountTypes(t){try{ce.setItem(le.PREFERRED_ACCOUNT_TYPES,JSON.stringify(t))}catch{console.info("Unable to set preferred account types",t)}},getPreferredAccountTypes(){try{const t=ce.getItem(le.PREFERRED_ACCOUNT_TYPES);return t?JSON.parse(t):{}}catch{console.info("Unable to get preferred account types")}return{}},setConnections(t,e){try{const n=j.getConnections(),r=n[e]??[],s=new Map;for(const o of r)s.set(o.connectorId,{...o});for(const o of t){const a=s.get(o.connectorId),c=o.connectorId===T.CONNECTOR_ID.AUTH;if(a&&!c){const l=new Set(a.accounts.map(d=>d.address.toLowerCase())),u=o.accounts.filter(d=>!l.has(d.address.toLowerCase()));a.accounts.push(...u)}else s.set(o.connectorId,{...o})}const i={...n,[e]:Array.from(s.values())};ce.setItem(le.CONNECTIONS,JSON.stringify(i))}catch(n){console.error("Unable to sync connections to storage",n)}},getConnections(){try{const t=ce.getItem(le.CONNECTIONS);return t?JSON.parse(t):{}}catch(t){return console.error("Unable to get connections from storage",t),{}}},deleteAddressFromConnection({connectorId:t,address:e,namespace:n}){try{const r=j.getConnections(),s=r[n]??[],i=new Map(s.map(a=>[a.connectorId,a])),o=i.get(t);o&&(o.accounts.filter(c=>c.address.toLowerCase()!==e.toLowerCase()).length===0?i.delete(t):i.set(t,{...o,accounts:o.accounts.filter(c=>c.address.toLowerCase()!==e.toLowerCase())})),ce.setItem(le.CONNECTIONS,JSON.stringify({...r,[n]:Array.from(i.values())}))}catch{console.error(`Unable to remove address "${e}" from connector "${t}" in namespace "${n}"`)}},getDisconnectedConnectorIds(){try{const t=ce.getItem(le.DISCONNECTED_CONNECTOR_IDS);return t?JSON.parse(t):{}}catch{console.info("Unable to get disconnected connector ids")}return{}},addDisconnectedConnectorId(t,e){try{const n=j.getDisconnectedConnectorIds(),r=n[e]??[];r.push(t),ce.setItem(le.DISCONNECTED_CONNECTOR_IDS,JSON.stringify({...n,[e]:Array.from(new Set(r))}))}catch{console.error(`Unable to set disconnected connector id "${t}" for namespace "${e}"`)}},removeDisconnectedConnectorId(t,e){try{const n=j.getDisconnectedConnectorIds();let r=n[e]??[];r=r.filter(s=>s.toLowerCase()!==t.toLowerCase()),ce.setItem(le.DISCONNECTED_CONNECTOR_IDS,JSON.stringify({...n,[e]:Array.from(new Set(r))}))}catch{console.error(`Unable to remove disconnected connector id "${t}" for namespace "${e}"`)}},isConnectorDisconnected(t,e){try{return(j.getDisconnectedConnectorIds()[e]??[]).some(s=>s.toLowerCase()===t.toLowerCase())}catch{console.info(`Unable to get disconnected connector id "${t}" for namespace "${e}"`)}return!1},getTransactionsCache(){try{const t=ce.getItem(le.HISTORY_TRANSACTIONS_CACHE);return t?JSON.parse(t):{}}catch{console.info("Unable to get transactions cache")}return{}},getTransactionsCacheForAddress({address:t,chainId:e=""}){var n;try{const s=(n=j.getTransactionsCache()[t])==null?void 0:n[e];if(s&&!this.isCacheExpired(s.timestamp,this.cacheExpiry.transactionsHistory))return s.transactions;j.removeTransactionsCache({address:t,chainId:e})}catch{console.info("Unable to get transactions cache")}},updateTransactionsCache({address:t,chainId:e="",timestamp:n,transactions:r}){try{const s=j.getTransactionsCache();s[t]={...s[t],[e]:{timestamp:n,transactions:r}},ce.setItem(le.HISTORY_TRANSACTIONS_CACHE,JSON.stringify(s))}catch{console.info("Unable to update transactions cache",{address:t,chainId:e,timestamp:n,transactions:r})}},removeTransactionsCache({address:t,chainId:e}){try{const n=j.getTransactionsCache(),r=(n==null?void 0:n[t])||{},{[e]:s,...i}=r;ce.setItem(le.HISTORY_TRANSACTIONS_CACHE,JSON.stringify({...n,[t]:i}))}catch{console.info("Unable to remove transactions cache",{address:t,chainId:e})}},getTokenPriceCache(){try{const t=ce.getItem(le.TOKEN_PRICE_CACHE);return t?JSON.parse(t):{}}catch{console.info("Unable to get token price cache")}return{}},getTokenPriceCacheForAddresses(t){try{const n=j.getTokenPriceCache()[t.join(",")];if(n&&!this.isCacheExpired(n.timestamp,this.cacheExpiry.tokenPrice))return n.tokenPrice;j.removeTokenPriceCache(t)}catch{console.info("Unable to get token price cache for addresses",t)}},updateTokenPriceCache(t){try{const e=j.getTokenPriceCache();e[t.addresses.join(",")]={timestamp:t.timestamp,tokenPrice:t.tokenPrice},ce.setItem(le.TOKEN_PRICE_CACHE,JSON.stringify(e))}catch{console.info("Unable to update token price cache",t)}},removeTokenPriceCache(t){try{const e=j.getTokenPriceCache();ce.setItem(le.TOKEN_PRICE_CACHE,JSON.stringify({...e,[t.join(",")]:void 0}))}catch{console.info("Unable to remove token price cache",t)}},getLatestAppKitVersion(){try{const t=this.getLatestAppKitVersionCache(),e=t==null?void 0:t.version;return e&&!this.isCacheExpired(t.timestamp,this.cacheExpiry.latestAppKitVersion)?e:void 0}catch{console.info("Unable to get latest AppKit version")}},getLatestAppKitVersionCache(){try{const t=ce.getItem(le.LATEST_APPKIT_VERSION);return t?JSON.parse(t):{}}catch{console.info("Unable to get latest AppKit version cache")}return{}},updateLatestAppKitVersion(t){try{const e=j.getLatestAppKitVersionCache();e.timestamp=t.timestamp,e.version=t.version,ce.setItem(le.LATEST_APPKIT_VERSION,JSON.stringify(e))}catch{console.info("Unable to update latest AppKit version on local storage",t)}}},J={getWindow(){if(!(typeof window>"u"))return window},isMobile(){var t;return this.isClient()?!!(window!=null&&window.matchMedia&&typeof window.matchMedia=="function"&&((t=window.matchMedia("(pointer:coarse)"))!=null&&t.matches)||/Android|webOS|iPhone|iPad|iPod|BlackBerry|Opera Mini/u.test(navigator.userAgent)):!1},checkCaipNetwork(t,e=""){return t==null?void 0:t.caipNetworkId.toLocaleLowerCase().includes(e.toLowerCase())},isAndroid(){if(!this.isMobile())return!1;const t=window==null?void 0:window.navigator.userAgent.toLowerCase();return J.isMobile()&&t.includes("android")},isIos(){if(!this.isMobile())return!1;const t=window==null?void 0:window.navigator.userAgent.toLowerCase();return t.includes("iphone")||t.includes("ipad")},isSafari(){return this.isClient()?(window==null?void 0:window.navigator.userAgent.toLowerCase()).includes("safari"):!1},isClient(){return typeof window<"u"},isPairingExpired(t){return t?t-Date.now()<=Oe.TEN_SEC_MS:!0},isAllowedRetry(t,e=Oe.ONE_SEC_MS){return Date.now()-t>=e},copyToClopboard(t){navigator.clipboard.writeText(t)},isIframe(){try{return(window==null?void 0:window.self)!==(window==null?void 0:window.top)}catch{return!1}},isSafeApp(){var t,e;if(J.isClient()&&window.self!==window.top)try{const n=(e=(t=window==null?void 0:window.location)==null?void 0:t.ancestorOrigins)==null?void 0:e[0],r="https://app.safe.global";if(n){const s=new URL(n),i=new URL(r);return s.hostname===i.hostname}}catch{return!1}return!1},getPairingExpiry(){return Date.now()+Oe.FOUR_MINUTES_MS},getNetworkId(t){return t==null?void 0:t.split(":")[1]},getPlainAddress(t){return t==null?void 0:t.split(":")[2]},async wait(t){return new Promise(e=>{setTimeout(e,t)})},debounce(t,e=500){let n;return(...r)=>{function s(){t(...r)}n&&clearTimeout(n),n=setTimeout(s,e)}},isHttpUrl(t){return t.startsWith("http://")||t.startsWith("https://")},formatNativeUrl(t,e,n=null){if(J.isHttpUrl(t))return this.formatUniversalUrl(t,e);let r=t,s=n;r.includes("://")||(r=t.replaceAll("/","").replaceAll(":",""),r=`${r}://`),r.endsWith("/")||(r=`${r}/`),s&&!(s!=null&&s.endsWith("/"))&&(s=`${s}/`),this.isTelegram()&&this.isAndroid()&&(e=encodeURIComponent(e));const i=encodeURIComponent(e);return{redirect:`${r}wc?uri=${i}`,redirectUniversalLink:s?`${s}wc?uri=${i}`:void 0,href:r}},formatUniversalUrl(t,e){if(!J.isHttpUrl(t))return this.formatNativeUrl(t,e);let n=t;n.endsWith("/")||(n=`${n}/`);const r=encodeURIComponent(e);return{redirect:`${n}wc?uri=${r}`,href:n}},getOpenTargetForPlatform(t){return t==="popupWindow"?t:this.isTelegram()?j.getTelegramSocialProvider()?"_top":"_blank":t},openHref(t,e,n){window==null||window.open(t,this.getOpenTargetForPlatform(e),n||"noreferrer noopener")},returnOpenHref(t,e,n){return window==null?void 0:window.open(t,this.getOpenTargetForPlatform(e),n||"noreferrer noopener")},isTelegram(){return typeof window<"u"&&(!!window.TelegramWebviewProxy||!!window.Telegram||!!window.TelegramWebviewProxyProto)},isPWA(){var n,r;if(typeof window>"u")return!1;const t=window!=null&&window.matchMedia&&typeof window.matchMedia=="function"?(n=window.matchMedia("(display-mode: standalone)"))==null?void 0:n.matches:!1,e=(r=window==null?void 0:window.navigator)==null?void 0:r.standalone;return!!(t||e)},async preloadImage(t){const e=new Promise((n,r)=>{const s=new Image;s.onload=n,s.onerror=r,s.crossOrigin="anonymous",s.src=t});return Promise.race([e,J.wait(2e3)])},parseBalance(t,e){let n="0.000";if(typeof t=="string"){const c=Number(t);if(!isNaN(c)){const l=(Math.floor(c*1e3)/1e3).toFixed(3);l&&(n=l)}}const[r,s]=n.split("."),i=r||"0",o=s||"000";return{formattedText:`${i}.${o}${e?` ${e}`:""}`,value:i,decimals:o,symbol:e}},getApiUrl(){return T.W3M_API_URL},getBlockchainApiUrl(){return T.BLOCKCHAIN_API_RPC_URL},getAnalyticsUrl(){return T.PULSE_API_URL},getUUID(){return crypto!=null&&crypto.randomUUID?crypto.randomUUID():"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/gu,t=>{const e=Math.random()*16|0;return(t==="x"?e:e&3|8).toString(16)})},parseError(t){var e,n;return typeof t=="string"?t:typeof((n=(e=t==null?void 0:t.issues)==null?void 0:e[0])==null?void 0:n.message)=="string"?t.issues[0].message:t instanceof Error?t.message:"Unknown error"},sortRequestedNetworks(t,e=[]){const n={};return e&&t&&(t.forEach((r,s)=>{n[r]=s}),e.sort((r,s)=>{const i=n[r.id],o=n[s.id];return i!==void 0&&o!==void 0?i-o:i!==void 0?-1:o!==void 0?1:0})),e},calculateBalance(t){let e=0;for(const n of t)e+=n.value??0;return e},formatTokenBalance(t){const e=t.toFixed(2),[n,r]=e.split(".");return{dollars:n,pennies:r}},isAddress(t,e="eip155"){switch(e){case"eip155":if(/^(?:0x)?[0-9a-f]{40}$/iu.test(t)){if(/^(?:0x)?[0-9a-f]{40}$/iu.test(t)||/^(?:0x)?[0-9A-F]{40}$/iu.test(t))return!0}else return!1;return!1;case"solana":return/[1-9A-HJ-NP-Za-km-z]{32,44}$/iu.test(t);case"bip122":{const n=/^[1][a-km-zA-HJ-NP-Z1-9]{25,34}$/u.test(t),r=/^[3][a-km-zA-HJ-NP-Z1-9]{25,34}$/u.test(t),s=/^bc1[a-z0-9]{39,87}$/u.test(t),i=/^bc1p[a-z0-9]{58}$/u.test(t);return n||r||s||i}default:return!1}},uniqueBy(t,e){const n=new Set;return t.filter(r=>{const s=r[e];return n.has(s)?!1:(n.add(s),!0)})},generateSdkVersion(t,e,n){const s=t.length===0?Oe.ADAPTER_TYPES.UNIVERSAL:t.map(i=>i.adapterType).join(",");return`${e}-${s}-${n}`},createAccount(t,e,n,r,s){return{namespace:t,address:e,type:n,publicKey:r,path:s}},isCaipAddress(t){if(typeof t!="string")return!1;const e=t.split(":"),n=e[0];return e.filter(Boolean).length===3&&n in T.CHAIN_NAME_MAP},getAccount(t){return t?typeof t=="string"?{address:t,chainId:void 0}:{address:t.address,chainId:t.chainId}:{address:void 0,chainId:void 0}},isMac(){const t=window==null?void 0:window.navigator.userAgent.toLowerCase();return t.includes("macintosh")&&!t.includes("safari")},formatTelegramSocialLoginUrl(t){const e=`--${encodeURIComponent(window==null?void 0:window.location.href)}`,n="state=";if(new URL(t).host==="auth.magic.link"){const s="provider_authorization_url=",i=t.substring(t.indexOf(s)+s.length),o=this.injectIntoUrl(decodeURIComponent(i),n,e);return t.replace(i,encodeURIComponent(o))}return this.injectIntoUrl(t,n,e)},injectIntoUrl(t,e,n){const r=t.indexOf(e);if(r===-1)throw new Error(`${e} parameter not found in the URL: ${t}`);const s=t.indexOf("&",r),i=e.length,o=s!==-1?s:t.length,a=t.substring(0,r+i),c=t.substring(r+i,o),l=t.substring(s),u=c+n;return a+u+l},isNumber(t){return typeof t!="number"&&typeof t!="string"?!1:!isNaN(Number(t))}},Jb="https://secure.walletconnect.org/sdk",Xb=(typeof Vt<"u"&&typeof{}<"u"?{}.NEXT_PUBLIC_SECURE_SITE_SDK_URL:void 0)||Jb,Qb=(typeof Vt<"u"&&typeof{}<"u"?{}.NEXT_PUBLIC_DEFAULT_LOG_LEVEL:void 0)||"error",e1=(typeof Vt<"u"&&typeof{}<"u"?{}.NEXT_PUBLIC_SECURE_SITE_SDK_VERSION:void 0)||"4",ae={APP_EVENT_KEY:"@w3m-app/",FRAME_EVENT_KEY:"@w3m-frame/",RPC_METHOD_KEY:"RPC_",STORAGE_KEY:"@appkit-wallet/",SESSION_TOKEN_KEY:"SESSION_TOKEN_KEY",EMAIL_LOGIN_USED_KEY:"EMAIL_LOGIN_USED_KEY",LAST_USED_CHAIN_KEY:"LAST_USED_CHAIN_KEY",LAST_EMAIL_LOGIN_TIME:"LAST_EMAIL_LOGIN_TIME",EMAIL:"EMAIL",PREFERRED_ACCOUNT_TYPE:"PREFERRED_ACCOUNT_TYPE",SMART_ACCOUNT_ENABLED:"SMART_ACCOUNT_ENABLED",SMART_ACCOUNT_ENABLED_NETWORKS:"SMART_ACCOUNT_ENABLED_NETWORKS",SOCIAL_USERNAME:"SOCIAL_USERNAME",APP_SWITCH_NETWORK:"@w3m-app/SWITCH_NETWORK",APP_CONNECT_EMAIL:"@w3m-app/CONNECT_EMAIL",APP_CONNECT_DEVICE:"@w3m-app/CONNECT_DEVICE",APP_CONNECT_OTP:"@w3m-app/CONNECT_OTP",APP_CONNECT_SOCIAL:"@w3m-app/CONNECT_SOCIAL",APP_GET_SOCIAL_REDIRECT_URI:"@w3m-app/GET_SOCIAL_REDIRECT_URI",APP_GET_USER:"@w3m-app/GET_USER",APP_SIGN_OUT:"@w3m-app/SIGN_OUT",APP_IS_CONNECTED:"@w3m-app/IS_CONNECTED",APP_GET_CHAIN_ID:"@w3m-app/GET_CHAIN_ID",APP_RPC_REQUEST:"@w3m-app/RPC_REQUEST",APP_UPDATE_EMAIL:"@w3m-app/UPDATE_EMAIL",APP_UPDATE_EMAIL_PRIMARY_OTP:"@w3m-app/UPDATE_EMAIL_PRIMARY_OTP",APP_UPDATE_EMAIL_SECONDARY_OTP:"@w3m-app/UPDATE_EMAIL_SECONDARY_OTP",APP_AWAIT_UPDATE_EMAIL:"@w3m-app/AWAIT_UPDATE_EMAIL",APP_SYNC_THEME:"@w3m-app/SYNC_THEME",APP_SYNC_DAPP_DATA:"@w3m-app/SYNC_DAPP_DATA",APP_GET_SMART_ACCOUNT_ENABLED_NETWORKS:"@w3m-app/GET_SMART_ACCOUNT_ENABLED_NETWORKS",APP_INIT_SMART_ACCOUNT:"@w3m-app/INIT_SMART_ACCOUNT",APP_SET_PREFERRED_ACCOUNT:"@w3m-app/SET_PREFERRED_ACCOUNT",APP_CONNECT_FARCASTER:"@w3m-app/CONNECT_FARCASTER",APP_GET_FARCASTER_URI:"@w3m-app/GET_FARCASTER_URI",APP_RELOAD:"@w3m-app/RELOAD",APP_RPC_ABORT:"@w3m-app/RPC_ABORT",FRAME_SWITCH_NETWORK_ERROR:"@w3m-frame/SWITCH_NETWORK_ERROR",FRAME_SWITCH_NETWORK_SUCCESS:"@w3m-frame/SWITCH_NETWORK_SUCCESS",FRAME_CONNECT_EMAIL_ERROR:"@w3m-frame/CONNECT_EMAIL_ERROR",FRAME_CONNECT_EMAIL_SUCCESS:"@w3m-frame/CONNECT_EMAIL_SUCCESS",FRAME_CONNECT_DEVICE_ERROR:"@w3m-frame/CONNECT_DEVICE_ERROR",FRAME_CONNECT_DEVICE_SUCCESS:"@w3m-frame/CONNECT_DEVICE_SUCCESS",FRAME_CONNECT_OTP_SUCCESS:"@w3m-frame/CONNECT_OTP_SUCCESS",FRAME_CONNECT_OTP_ERROR:"@w3m-frame/CONNECT_OTP_ERROR",FRAME_CONNECT_SOCIAL_SUCCESS:"@w3m-frame/CONNECT_SOCIAL_SUCCESS",FRAME_CONNECT_SOCIAL_ERROR:"@w3m-frame/CONNECT_SOCIAL_ERROR",FRAME_CONNECT_FARCASTER_SUCCESS:"@w3m-frame/CONNECT_FARCASTER_SUCCESS",FRAME_CONNECT_FARCASTER_ERROR:"@w3m-frame/CONNECT_FARCASTER_ERROR",FRAME_GET_FARCASTER_URI_SUCCESS:"@w3m-frame/GET_FARCASTER_URI_SUCCESS",FRAME_GET_FARCASTER_URI_ERROR:"@w3m-frame/GET_FARCASTER_URI_ERROR",FRAME_GET_SOCIAL_REDIRECT_URI_SUCCESS:"@w3m-frame/GET_SOCIAL_REDIRECT_URI_SUCCESS",FRAME_GET_SOCIAL_REDIRECT_URI_ERROR:"@w3m-frame/GET_SOCIAL_REDIRECT_URI_ERROR",FRAME_GET_USER_SUCCESS:"@w3m-frame/GET_USER_SUCCESS",FRAME_GET_USER_ERROR:"@w3m-frame/GET_USER_ERROR",FRAME_SIGN_OUT_SUCCESS:"@w3m-frame/SIGN_OUT_SUCCESS",FRAME_SIGN_OUT_ERROR:"@w3m-frame/SIGN_OUT_ERROR",FRAME_IS_CONNECTED_SUCCESS:"@w3m-frame/IS_CONNECTED_SUCCESS",FRAME_IS_CONNECTED_ERROR:"@w3m-frame/IS_CONNECTED_ERROR",FRAME_GET_CHAIN_ID_SUCCESS:"@w3m-frame/GET_CHAIN_ID_SUCCESS",FRAME_GET_CHAIN_ID_ERROR:"@w3m-frame/GET_CHAIN_ID_ERROR",FRAME_RPC_REQUEST_SUCCESS:"@w3m-frame/RPC_REQUEST_SUCCESS",FRAME_RPC_REQUEST_ERROR:"@w3m-frame/RPC_REQUEST_ERROR",FRAME_SESSION_UPDATE:"@w3m-frame/SESSION_UPDATE",FRAME_UPDATE_EMAIL_SUCCESS:"@w3m-frame/UPDATE_EMAIL_SUCCESS",FRAME_UPDATE_EMAIL_ERROR:"@w3m-frame/UPDATE_EMAIL_ERROR",FRAME_UPDATE_EMAIL_PRIMARY_OTP_SUCCESS:"@w3m-frame/UPDATE_EMAIL_PRIMARY_OTP_SUCCESS",FRAME_UPDATE_EMAIL_PRIMARY_OTP_ERROR:"@w3m-frame/UPDATE_EMAIL_PRIMARY_OTP_ERROR",FRAME_UPDATE_EMAIL_SECONDARY_OTP_SUCCESS:"@w3m-frame/UPDATE_EMAIL_SECONDARY_OTP_SUCCESS",FRAME_UPDATE_EMAIL_SECONDARY_OTP_ERROR:"@w3m-frame/UPDATE_EMAIL_SECONDARY_OTP_ERROR",FRAME_SYNC_THEME_SUCCESS:"@w3m-frame/SYNC_THEME_SUCCESS",FRAME_SYNC_THEME_ERROR:"@w3m-frame/SYNC_THEME_ERROR",FRAME_SYNC_DAPP_DATA_SUCCESS:"@w3m-frame/SYNC_DAPP_DATA_SUCCESS",FRAME_SYNC_DAPP_DATA_ERROR:"@w3m-frame/SYNC_DAPP_DATA_ERROR",FRAME_GET_SMART_ACCOUNT_ENABLED_NETWORKS_SUCCESS:"@w3m-frame/GET_SMART_ACCOUNT_ENABLED_NETWORKS_SUCCESS",FRAME_GET_SMART_ACCOUNT_ENABLED_NETWORKS_ERROR:"@w3m-frame/GET_SMART_ACCOUNT_ENABLED_NETWORKS_ERROR",FRAME_INIT_SMART_ACCOUNT_SUCCESS:"@w3m-frame/INIT_SMART_ACCOUNT_SUCCESS",FRAME_INIT_SMART_ACCOUNT_ERROR:"@w3m-frame/INIT_SMART_ACCOUNT_ERROR",FRAME_SET_PREFERRED_ACCOUNT_SUCCESS:"@w3m-frame/SET_PREFERRED_ACCOUNT_SUCCESS",FRAME_SET_PREFERRED_ACCOUNT_ERROR:"@w3m-frame/SET_PREFERRED_ACCOUNT_ERROR",FRAME_READY:"@w3m-frame/READY",FRAME_RELOAD_SUCCESS:"@w3m-frame/RELOAD_SUCCESS",FRAME_RELOAD_ERROR:"@w3m-frame/RELOAD_ERROR",FRAME_RPC_ABORT_SUCCESS:"@w3m-frame/RPC_ABORT_SUCCESS",FRAME_RPC_ABORT_ERROR:"@w3m-frame/RPC_ABORT_ERROR",RPC_RESPONSE_TYPE_ERROR:"RPC_RESPONSE_ERROR",RPC_RESPONSE_TYPE_TX:"RPC_RESPONSE_TRANSACTION_HASH",RPC_RESPONSE_TYPE_OBJECT:"RPC_RESPONSE_OBJECT"},at={SAFE_RPC_METHODS:["eth_accounts","eth_blockNumber","eth_call","eth_chainId","eth_estimateGas","eth_feeHistory","eth_gasPrice","eth_getAccount","eth_getBalance","eth_getBlockByHash","eth_getBlockByNumber","eth_getBlockReceipts","eth_getBlockTransactionCountByHash","eth_getBlockTransactionCountByNumber","eth_getCode","eth_getFilterChanges","eth_getFilterLogs","eth_getLogs","eth_getProof","eth_getStorageAt","eth_getTransactionByBlockHashAndIndex","eth_getTransactionByBlockNumberAndIndex","eth_getTransactionByHash","eth_getTransactionCount","eth_getTransactionReceipt","eth_getUncleCountByBlockHash","eth_getUncleCountByBlockNumber","eth_maxPriorityFeePerGas","eth_newBlockFilter","eth_newFilter","eth_newPendingTransactionFilter","eth_sendRawTransaction","eth_syncing","eth_uninstallFilter","wallet_getCapabilities","wallet_getCallsStatus","eth_getUserOperationReceipt","eth_estimateUserOperationGas","eth_getUserOperationByHash","eth_supportedEntryPoints","wallet_getAssets"],NOT_SAFE_RPC_METHODS:["personal_sign","eth_signTypedData_v4","eth_sendTransaction","solana_signMessage","solana_signTransaction","solana_signAllTransactions","solana_signAndSendTransaction","wallet_sendCalls","wallet_grantPermissions","wallet_revokePermissions","eth_sendUserOperation"],GET_CHAIN_ID:"eth_chainId",RPC_METHOD_NOT_ALLOWED_MESSAGE:"Requested RPC call is not allowed",RPC_METHOD_NOT_ALLOWED_UI_MESSAGE:"Action not allowed",ACCOUNT_TYPES:{EOA:"eoa",SMART_ACCOUNT:"smartAccount"}},yf={address:/^0x(?:[A-Fa-f0-9]{40})$/u,transactionHash:/^0x(?:[A-Fa-f0-9]{64})$/u,signedMessage:/^0x(?:[a-fA-F0-9]{62,})$/u},gt={set(t,e){In.isClient&&localStorage.setItem(`${ae.STORAGE_KEY}${t}`,e)},get(t){return In.isClient?localStorage.getItem(`${ae.STORAGE_KEY}${t}`):null},delete(t,e){In.isClient&&(e?localStorage.removeItem(t):localStorage.removeItem(`${ae.STORAGE_KEY}${t}`))}},$a=30*1e3,In={checkIfAllowedToTriggerEmail(){const t=gt.get(ae.LAST_EMAIL_LOGIN_TIME);if(t){const e=Date.now()-Number(t);if(e<$a){const n=Math.ceil(($a-e)/1e3);throw new Error(`Please try again after ${n} seconds`)}}},getTimeToNextEmailLogin(){const t=gt.get(ae.LAST_EMAIL_LOGIN_TIME);if(t){const e=Date.now()-Number(t);if(e<$a)return Math.ceil(($a-e)/1e3)}return 0},checkIfRequestExists(t){return at.NOT_SAFE_RPC_METHODS.includes(t.method)||at.SAFE_RPC_METHODS.includes(t.method)},getResponseType(t){return typeof t=="string"&&((t==null?void 0:t.match(yf.transactionHash))||(t==null?void 0:t.match(yf.signedMessage)))?ae.RPC_RESPONSE_TYPE_TX:ae.RPC_RESPONSE_TYPE_OBJECT},checkIfRequestIsSafe(t){return at.SAFE_RPC_METHODS.includes(t.method)},isClient:typeof window<"u"};var je;(function(t){t.assertEqual=s=>s;function e(s){}t.assertIs=e;function n(s){throw new Error}t.assertNever=n,t.arrayToEnum=s=>{const i={};for(const o of s)i[o]=o;return i},t.getValidEnumValues=s=>{const i=t.objectKeys(s).filter(a=>typeof s[s[a]]!="number"),o={};for(const a of i)o[a]=s[a];return t.objectValues(o)},t.objectValues=s=>t.objectKeys(s).map(function(i){return s[i]}),t.objectKeys=typeof Object.keys=="function"?s=>Object.keys(s):s=>{const i=[];for(const o in s)Object.prototype.hasOwnProperty.call(s,o)&&i.push(o);return i},t.find=(s,i)=>{for(const o of s)if(i(o))return o},t.isInteger=typeof Number.isInteger=="function"?s=>Number.isInteger(s):s=>typeof s=="number"&&isFinite(s)&&Math.floor(s)===s;function r(s,i=" | "){return s.map(o=>typeof o=="string"?`'${o}'`:o).join(i)}t.joinValues=r,t.jsonStringifyReplacer=(s,i)=>typeof i=="bigint"?i.toString():i})(je||(je={}));var Yu;(function(t){t.mergeShapes=(e,n)=>({...e,...n})})(Yu||(Yu={}));const re=je.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),hs=t=>{switch(typeof t){case"undefined":return re.undefined;case"string":return re.string;case"number":return isNaN(t)?re.nan:re.number;case"boolean":return re.boolean;case"function":return re.function;case"bigint":return re.bigint;case"symbol":return re.symbol;case"object":return Array.isArray(t)?re.array:t===null?re.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?re.promise:typeof Map<"u"&&t instanceof Map?re.map:typeof Set<"u"&&t instanceof Set?re.set:typeof Date<"u"&&t instanceof Date?re.date:re.object;default:return re.unknown}},K=je.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),t1=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:");class Qn extends Error{constructor(e){super(),this.issues=[],this.addIssue=r=>{this.issues=[...this.issues,r]},this.addIssues=(r=[])=>{this.issues=[...this.issues,...r]};const n=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,n):this.__proto__=n,this.name="ZodError",this.issues=e}get errors(){return this.issues}format(e){const n=e||function(i){return i.message},r={_errors:[]},s=i=>{for(const o of i.issues)if(o.code==="invalid_union")o.unionErrors.map(s);else if(o.code==="invalid_return_type")s(o.returnTypeError);else if(o.code==="invalid_arguments")s(o.argumentsError);else if(o.path.length===0)r._errors.push(n(o));else{let a=r,c=0;for(;c<o.path.length;){const l=o.path[c];c===o.path.length-1?(a[l]=a[l]||{_errors:[]},a[l]._errors.push(n(o))):a[l]=a[l]||{_errors:[]},a=a[l],c++}}};return s(this),r}toString(){return this.message}get message(){return JSON.stringify(this.issues,je.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=n=>n.message){const n={},r=[];for(const s of this.issues)s.path.length>0?(n[s.path[0]]=n[s.path[0]]||[],n[s.path[0]].push(e(s))):r.push(e(s));return{formErrors:r,fieldErrors:n}}get formErrors(){return this.flatten()}}Qn.create=t=>new Qn(t);const Go=(t,e)=>{let n;switch(t.code){case K.invalid_type:t.received===re.undefined?n="Required":n=`Expected ${t.expected}, received ${t.received}`;break;case K.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(t.expected,je.jsonStringifyReplacer)}`;break;case K.unrecognized_keys:n=`Unrecognized key(s) in object: ${je.joinValues(t.keys,", ")}`;break;case K.invalid_union:n="Invalid input";break;case K.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${je.joinValues(t.options)}`;break;case K.invalid_enum_value:n=`Invalid enum value. Expected ${je.joinValues(t.options)}, received '${t.received}'`;break;case K.invalid_arguments:n="Invalid function arguments";break;case K.invalid_return_type:n="Invalid function return type";break;case K.invalid_date:n="Invalid date";break;case K.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(n=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(n=`${n} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?n=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?n=`Invalid input: must end with "${t.validation.endsWith}"`:je.assertNever(t.validation):t.validation!=="regex"?n=`Invalid ${t.validation}`:n="Invalid";break;case K.too_small:t.type==="array"?n=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?n=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?n=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?n=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:n="Invalid input";break;case K.too_big:t.type==="array"?n=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?n=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?n=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?n=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?n=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:n="Invalid input";break;case K.custom:n="Invalid input";break;case K.invalid_intersection_types:n="Intersection results could not be merged";break;case K.not_multiple_of:n=`Number must be a multiple of ${t.multipleOf}`;break;case K.not_finite:n="Number must be finite";break;default:n=e.defaultError,je.assertNever(t)}return{message:n}};let py=Go;function n1(t){py=t}function vc(){return py}const Cc=t=>{const{data:e,path:n,errorMaps:r,issueData:s}=t,i=[...n,...s.path||[]],o={...s,path:i};let a="";const c=r.filter(l=>!!l).slice().reverse();for(const l of c)a=l(o,{data:e,defaultError:a}).message;return{...s,path:i,message:s.message||a}},r1=[];function oe(t,e){const n=Cc({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,vc(),Go].filter(r=>!!r)});t.common.issues.push(n)}class Kt{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,n){const r=[];for(const s of n){if(s.status==="aborted")return _e;s.status==="dirty"&&e.dirty(),r.push(s.value)}return{status:e.value,value:r}}static async mergeObjectAsync(e,n){const r=[];for(const s of n)r.push({key:await s.key,value:await s.value});return Kt.mergeObjectSync(e,r)}static mergeObjectSync(e,n){const r={};for(const s of n){const{key:i,value:o}=s;if(i.status==="aborted"||o.status==="aborted")return _e;i.status==="dirty"&&e.dirty(),o.status==="dirty"&&e.dirty(),i.value!=="__proto__"&&(typeof o.value<"u"||s.alwaysSet)&&(r[i.value]=o.value)}return{status:e.value,value:r}}}const _e=Object.freeze({status:"aborted"}),gy=t=>({status:"dirty",value:t}),nn=t=>({status:"valid",value:t}),Zu=t=>t.status==="aborted",Ju=t=>t.status==="dirty",Yo=t=>t.status==="valid",Ac=t=>typeof Promise<"u"&&t instanceof Promise;var ge;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e==null?void 0:e.message})(ge||(ge={}));class _r{constructor(e,n,r,s){this._cachedPath=[],this.parent=e,this.data=n,this._path=r,this._key=s}get path(){return this._cachedPath.length||(this._key instanceof Array?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const wf=(t,e)=>{if(Yo(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const n=new Qn(t.common.issues);return this._error=n,this._error}}};function Ce(t){if(!t)return{};const{errorMap:e,invalid_type_error:n,required_error:r,description:s}=t;if(e&&(n||r))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:s}:{errorMap:(o,a)=>o.code!=="invalid_type"?{message:a.defaultError}:typeof a.data>"u"?{message:r??a.defaultError}:{message:n??a.defaultError},description:s}}class Ie{constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this)}get description(){return this._def.description}_getType(e){return hs(e.data)}_getOrReturnCtx(e,n){return n||{common:e.parent.common,data:e.data,parsedType:hs(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Kt,ctx:{common:e.parent.common,data:e.data,parsedType:hs(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){const n=this._parse(e);if(Ac(n))throw new Error("Synchronous parse encountered promise.");return n}_parseAsync(e){const n=this._parse(e);return Promise.resolve(n)}parse(e,n){const r=this.safeParse(e,n);if(r.success)return r.data;throw r.error}safeParse(e,n){var r;const s={common:{issues:[],async:(r=n==null?void 0:n.async)!==null&&r!==void 0?r:!1,contextualErrorMap:n==null?void 0:n.errorMap},path:(n==null?void 0:n.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:hs(e)},i=this._parseSync({data:e,path:s.path,parent:s});return wf(s,i)}async parseAsync(e,n){const r=await this.safeParseAsync(e,n);if(r.success)return r.data;throw r.error}async safeParseAsync(e,n){const r={common:{issues:[],contextualErrorMap:n==null?void 0:n.errorMap,async:!0},path:(n==null?void 0:n.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:hs(e)},s=this._parse({data:e,path:r.path,parent:r}),i=await(Ac(s)?s:Promise.resolve(s));return wf(r,i)}refine(e,n){const r=s=>typeof n=="string"||typeof n>"u"?{message:n}:typeof n=="function"?n(s):n;return this._refinement((s,i)=>{const o=e(s),a=()=>i.addIssue({code:K.custom,...r(s)});return typeof Promise<"u"&&o instanceof Promise?o.then(c=>c?!0:(a(),!1)):o?!0:(a(),!1)})}refinement(e,n){return this._refinement((r,s)=>e(r)?!0:(s.addIssue(typeof n=="function"?n(r,s):n),!1))}_refinement(e){return new nr({schema:this,typeName:ye.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}optional(){return qr.create(this,this._def)}nullable(){return oi.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return er.create(this,this._def)}promise(){return Ji.create(this,this._def)}or(e){return Qo.create([this,e],this._def)}and(e){return ea.create(this,e,this._def)}transform(e){return new nr({...Ce(this._def),schema:this,typeName:ye.ZodEffects,effect:{type:"transform",transform:e}})}default(e){const n=typeof e=="function"?e:()=>e;return new ia({...Ce(this._def),innerType:this,defaultValue:n,typeName:ye.ZodDefault})}brand(){return new yy({typeName:ye.ZodBranded,type:this,...Ce(this._def)})}catch(e){const n=typeof e=="function"?e:()=>e;return new Tc({...Ce(this._def),innerType:this,catchValue:n,typeName:ye.ZodCatch})}describe(e){const n=this.constructor;return new n({...this._def,description:e})}pipe(e){return _a.create(this,e)}readonly(){return Rc.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const s1=/^c[^\s-]{8,}$/i,i1=/^[a-z][a-z0-9]*$/,o1=/^[0-9A-HJKMNP-TV-Z]{26}$/,a1=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,c1=/^(?!\.)(?!.*\.\.)([A-Z0-9_+-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,l1="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let kl;const u1=/^(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))$/,d1=/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,h1=t=>t.precision?t.offset?new RegExp(`^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}\\.\\d{${t.precision}}(([+-]\\d{2}(:?\\d{2})?)|Z)$`):new RegExp(`^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}\\.\\d{${t.precision}}Z$`):t.precision===0?t.offset?new RegExp("^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(([+-]\\d{2}(:?\\d{2})?)|Z)$"):new RegExp("^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}Z$"):t.offset?new RegExp("^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(\\.\\d+)?(([+-]\\d{2}(:?\\d{2})?)|Z)$"):new RegExp("^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(\\.\\d+)?Z$");function f1(t,e){return!!((e==="v4"||!e)&&u1.test(t)||(e==="v6"||!e)&&d1.test(t))}class Xn extends Ie{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==re.string){const i=this._getOrReturnCtx(e);return oe(i,{code:K.invalid_type,expected:re.string,received:i.parsedType}),_e}const r=new Kt;let s;for(const i of this._def.checks)if(i.kind==="min")e.data.length<i.value&&(s=this._getOrReturnCtx(e,s),oe(s,{code:K.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),r.dirty());else if(i.kind==="max")e.data.length>i.value&&(s=this._getOrReturnCtx(e,s),oe(s,{code:K.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),r.dirty());else if(i.kind==="length"){const o=e.data.length>i.value,a=e.data.length<i.value;(o||a)&&(s=this._getOrReturnCtx(e,s),o?oe(s,{code:K.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}):a&&oe(s,{code:K.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}),r.dirty())}else if(i.kind==="email")c1.test(e.data)||(s=this._getOrReturnCtx(e,s),oe(s,{validation:"email",code:K.invalid_string,message:i.message}),r.dirty());else if(i.kind==="emoji")kl||(kl=new RegExp(l1,"u")),kl.test(e.data)||(s=this._getOrReturnCtx(e,s),oe(s,{validation:"emoji",code:K.invalid_string,message:i.message}),r.dirty());else if(i.kind==="uuid")a1.test(e.data)||(s=this._getOrReturnCtx(e,s),oe(s,{validation:"uuid",code:K.invalid_string,message:i.message}),r.dirty());else if(i.kind==="cuid")s1.test(e.data)||(s=this._getOrReturnCtx(e,s),oe(s,{validation:"cuid",code:K.invalid_string,message:i.message}),r.dirty());else if(i.kind==="cuid2")i1.test(e.data)||(s=this._getOrReturnCtx(e,s),oe(s,{validation:"cuid2",code:K.invalid_string,message:i.message}),r.dirty());else if(i.kind==="ulid")o1.test(e.data)||(s=this._getOrReturnCtx(e,s),oe(s,{validation:"ulid",code:K.invalid_string,message:i.message}),r.dirty());else if(i.kind==="url")try{new URL(e.data)}catch{s=this._getOrReturnCtx(e,s),oe(s,{validation:"url",code:K.invalid_string,message:i.message}),r.dirty()}else i.kind==="regex"?(i.regex.lastIndex=0,i.regex.test(e.data)||(s=this._getOrReturnCtx(e,s),oe(s,{validation:"regex",code:K.invalid_string,message:i.message}),r.dirty())):i.kind==="trim"?e.data=e.data.trim():i.kind==="includes"?e.data.includes(i.value,i.position)||(s=this._getOrReturnCtx(e,s),oe(s,{code:K.invalid_string,validation:{includes:i.value,position:i.position},message:i.message}),r.dirty()):i.kind==="toLowerCase"?e.data=e.data.toLowerCase():i.kind==="toUpperCase"?e.data=e.data.toUpperCase():i.kind==="startsWith"?e.data.startsWith(i.value)||(s=this._getOrReturnCtx(e,s),oe(s,{code:K.invalid_string,validation:{startsWith:i.value},message:i.message}),r.dirty()):i.kind==="endsWith"?e.data.endsWith(i.value)||(s=this._getOrReturnCtx(e,s),oe(s,{code:K.invalid_string,validation:{endsWith:i.value},message:i.message}),r.dirty()):i.kind==="datetime"?h1(i).test(e.data)||(s=this._getOrReturnCtx(e,s),oe(s,{code:K.invalid_string,validation:"datetime",message:i.message}),r.dirty()):i.kind==="ip"?f1(e.data,i.version)||(s=this._getOrReturnCtx(e,s),oe(s,{validation:"ip",code:K.invalid_string,message:i.message}),r.dirty()):je.assertNever(i);return{status:r.value,value:e.data}}_regex(e,n,r){return this.refinement(s=>e.test(s),{validation:n,code:K.invalid_string,...ge.errToObj(r)})}_addCheck(e){return new Xn({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...ge.errToObj(e)})}url(e){return this._addCheck({kind:"url",...ge.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...ge.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...ge.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...ge.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...ge.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...ge.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...ge.errToObj(e)})}datetime(e){var n;return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof(e==null?void 0:e.precision)>"u"?null:e==null?void 0:e.precision,offset:(n=e==null?void 0:e.offset)!==null&&n!==void 0?n:!1,...ge.errToObj(e==null?void 0:e.message)})}regex(e,n){return this._addCheck({kind:"regex",regex:e,...ge.errToObj(n)})}includes(e,n){return this._addCheck({kind:"includes",value:e,position:n==null?void 0:n.position,...ge.errToObj(n==null?void 0:n.message)})}startsWith(e,n){return this._addCheck({kind:"startsWith",value:e,...ge.errToObj(n)})}endsWith(e,n){return this._addCheck({kind:"endsWith",value:e,...ge.errToObj(n)})}min(e,n){return this._addCheck({kind:"min",value:e,...ge.errToObj(n)})}max(e,n){return this._addCheck({kind:"max",value:e,...ge.errToObj(n)})}length(e,n){return this._addCheck({kind:"length",value:e,...ge.errToObj(n)})}nonempty(e){return this.min(1,ge.errToObj(e))}trim(){return new Xn({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new Xn({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new Xn({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get minLength(){let e=null;for(const n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxLength(){let e=null;for(const n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}}Xn.create=t=>{var e;return new Xn({checks:[],typeName:ye.ZodString,coerce:(e=t==null?void 0:t.coerce)!==null&&e!==void 0?e:!1,...Ce(t)})};function p1(t,e){const n=(t.toString().split(".")[1]||"").length,r=(e.toString().split(".")[1]||"").length,s=n>r?n:r,i=parseInt(t.toFixed(s).replace(".","")),o=parseInt(e.toFixed(s).replace(".",""));return i%o/Math.pow(10,s)}class Ss extends Ie{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==re.number){const i=this._getOrReturnCtx(e);return oe(i,{code:K.invalid_type,expected:re.number,received:i.parsedType}),_e}let r;const s=new Kt;for(const i of this._def.checks)i.kind==="int"?je.isInteger(e.data)||(r=this._getOrReturnCtx(e,r),oe(r,{code:K.invalid_type,expected:"integer",received:"float",message:i.message}),s.dirty()):i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(r=this._getOrReturnCtx(e,r),oe(r,{code:K.too_small,minimum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),s.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(r=this._getOrReturnCtx(e,r),oe(r,{code:K.too_big,maximum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),s.dirty()):i.kind==="multipleOf"?p1(e.data,i.value)!==0&&(r=this._getOrReturnCtx(e,r),oe(r,{code:K.not_multiple_of,multipleOf:i.value,message:i.message}),s.dirty()):i.kind==="finite"?Number.isFinite(e.data)||(r=this._getOrReturnCtx(e,r),oe(r,{code:K.not_finite,message:i.message}),s.dirty()):je.assertNever(i);return{status:s.value,value:e.data}}gte(e,n){return this.setLimit("min",e,!0,ge.toString(n))}gt(e,n){return this.setLimit("min",e,!1,ge.toString(n))}lte(e,n){return this.setLimit("max",e,!0,ge.toString(n))}lt(e,n){return this.setLimit("max",e,!1,ge.toString(n))}setLimit(e,n,r,s){return new Ss({...this._def,checks:[...this._def.checks,{kind:e,value:n,inclusive:r,message:ge.toString(s)}]})}_addCheck(e){return new Ss({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:ge.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:ge.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:ge.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:ge.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:ge.toString(e)})}multipleOf(e,n){return this._addCheck({kind:"multipleOf",value:e,message:ge.toString(n)})}finite(e){return this._addCheck({kind:"finite",message:ge.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:ge.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:ge.toString(e)})}get minValue(){let e=null;for(const n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxValue(){let e=null;for(const n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&je.isInteger(e.value))}get isFinite(){let e=null,n=null;for(const r of this._def.checks){if(r.kind==="finite"||r.kind==="int"||r.kind==="multipleOf")return!0;r.kind==="min"?(n===null||r.value>n)&&(n=r.value):r.kind==="max"&&(e===null||r.value<e)&&(e=r.value)}return Number.isFinite(n)&&Number.isFinite(e)}}Ss.create=t=>new Ss({checks:[],typeName:ye.ZodNumber,coerce:(t==null?void 0:t.coerce)||!1,...Ce(t)});class Is extends Ie{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce&&(e.data=BigInt(e.data)),this._getType(e)!==re.bigint){const i=this._getOrReturnCtx(e);return oe(i,{code:K.invalid_type,expected:re.bigint,received:i.parsedType}),_e}let r;const s=new Kt;for(const i of this._def.checks)i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(r=this._getOrReturnCtx(e,r),oe(r,{code:K.too_small,type:"bigint",minimum:i.value,inclusive:i.inclusive,message:i.message}),s.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(r=this._getOrReturnCtx(e,r),oe(r,{code:K.too_big,type:"bigint",maximum:i.value,inclusive:i.inclusive,message:i.message}),s.dirty()):i.kind==="multipleOf"?e.data%i.value!==BigInt(0)&&(r=this._getOrReturnCtx(e,r),oe(r,{code:K.not_multiple_of,multipleOf:i.value,message:i.message}),s.dirty()):je.assertNever(i);return{status:s.value,value:e.data}}gte(e,n){return this.setLimit("min",e,!0,ge.toString(n))}gt(e,n){return this.setLimit("min",e,!1,ge.toString(n))}lte(e,n){return this.setLimit("max",e,!0,ge.toString(n))}lt(e,n){return this.setLimit("max",e,!1,ge.toString(n))}setLimit(e,n,r,s){return new Is({...this._def,checks:[...this._def.checks,{kind:e,value:n,inclusive:r,message:ge.toString(s)}]})}_addCheck(e){return new Is({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:ge.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:ge.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:ge.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:ge.toString(e)})}multipleOf(e,n){return this._addCheck({kind:"multipleOf",value:e,message:ge.toString(n)})}get minValue(){let e=null;for(const n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxValue(){let e=null;for(const n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}}Is.create=t=>{var e;return new Is({checks:[],typeName:ye.ZodBigInt,coerce:(e=t==null?void 0:t.coerce)!==null&&e!==void 0?e:!1,...Ce(t)})};class Zo extends Ie{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==re.boolean){const r=this._getOrReturnCtx(e);return oe(r,{code:K.invalid_type,expected:re.boolean,received:r.parsedType}),_e}return nn(e.data)}}Zo.create=t=>new Zo({typeName:ye.ZodBoolean,coerce:(t==null?void 0:t.coerce)||!1,...Ce(t)});class si extends Ie{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==re.date){const i=this._getOrReturnCtx(e);return oe(i,{code:K.invalid_type,expected:re.date,received:i.parsedType}),_e}if(isNaN(e.data.getTime())){const i=this._getOrReturnCtx(e);return oe(i,{code:K.invalid_date}),_e}const r=new Kt;let s;for(const i of this._def.checks)i.kind==="min"?e.data.getTime()<i.value&&(s=this._getOrReturnCtx(e,s),oe(s,{code:K.too_small,message:i.message,inclusive:!0,exact:!1,minimum:i.value,type:"date"}),r.dirty()):i.kind==="max"?e.data.getTime()>i.value&&(s=this._getOrReturnCtx(e,s),oe(s,{code:K.too_big,message:i.message,inclusive:!0,exact:!1,maximum:i.value,type:"date"}),r.dirty()):je.assertNever(i);return{status:r.value,value:new Date(e.data.getTime())}}_addCheck(e){return new si({...this._def,checks:[...this._def.checks,e]})}min(e,n){return this._addCheck({kind:"min",value:e.getTime(),message:ge.toString(n)})}max(e,n){return this._addCheck({kind:"max",value:e.getTime(),message:ge.toString(n)})}get minDate(){let e=null;for(const n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(const n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e!=null?new Date(e):null}}si.create=t=>new si({checks:[],coerce:(t==null?void 0:t.coerce)||!1,typeName:ye.ZodDate,...Ce(t)});class Sc extends Ie{_parse(e){if(this._getType(e)!==re.symbol){const r=this._getOrReturnCtx(e);return oe(r,{code:K.invalid_type,expected:re.symbol,received:r.parsedType}),_e}return nn(e.data)}}Sc.create=t=>new Sc({typeName:ye.ZodSymbol,...Ce(t)});class Jo extends Ie{_parse(e){if(this._getType(e)!==re.undefined){const r=this._getOrReturnCtx(e);return oe(r,{code:K.invalid_type,expected:re.undefined,received:r.parsedType}),_e}return nn(e.data)}}Jo.create=t=>new Jo({typeName:ye.ZodUndefined,...Ce(t)});class Xo extends Ie{_parse(e){if(this._getType(e)!==re.null){const r=this._getOrReturnCtx(e);return oe(r,{code:K.invalid_type,expected:re.null,received:r.parsedType}),_e}return nn(e.data)}}Xo.create=t=>new Xo({typeName:ye.ZodNull,...Ce(t)});class Zi extends Ie{constructor(){super(...arguments),this._any=!0}_parse(e){return nn(e.data)}}Zi.create=t=>new Zi({typeName:ye.ZodAny,...Ce(t)});class ei extends Ie{constructor(){super(...arguments),this._unknown=!0}_parse(e){return nn(e.data)}}ei.create=t=>new ei({typeName:ye.ZodUnknown,...Ce(t)});class Gr extends Ie{_parse(e){const n=this._getOrReturnCtx(e);return oe(n,{code:K.invalid_type,expected:re.never,received:n.parsedType}),_e}}Gr.create=t=>new Gr({typeName:ye.ZodNever,...Ce(t)});class Ic extends Ie{_parse(e){if(this._getType(e)!==re.undefined){const r=this._getOrReturnCtx(e);return oe(r,{code:K.invalid_type,expected:re.void,received:r.parsedType}),_e}return nn(e.data)}}Ic.create=t=>new Ic({typeName:ye.ZodVoid,...Ce(t)});class er extends Ie{_parse(e){const{ctx:n,status:r}=this._processInputParams(e),s=this._def;if(n.parsedType!==re.array)return oe(n,{code:K.invalid_type,expected:re.array,received:n.parsedType}),_e;if(s.exactLength!==null){const o=n.data.length>s.exactLength.value,a=n.data.length<s.exactLength.value;(o||a)&&(oe(n,{code:o?K.too_big:K.too_small,minimum:a?s.exactLength.value:void 0,maximum:o?s.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:s.exactLength.message}),r.dirty())}if(s.minLength!==null&&n.data.length<s.minLength.value&&(oe(n,{code:K.too_small,minimum:s.minLength.value,type:"array",inclusive:!0,exact:!1,message:s.minLength.message}),r.dirty()),s.maxLength!==null&&n.data.length>s.maxLength.value&&(oe(n,{code:K.too_big,maximum:s.maxLength.value,type:"array",inclusive:!0,exact:!1,message:s.maxLength.message}),r.dirty()),n.common.async)return Promise.all([...n.data].map((o,a)=>s.type._parseAsync(new _r(n,o,n.path,a)))).then(o=>Kt.mergeArray(r,o));const i=[...n.data].map((o,a)=>s.type._parseSync(new _r(n,o,n.path,a)));return Kt.mergeArray(r,i)}get element(){return this._def.type}min(e,n){return new er({...this._def,minLength:{value:e,message:ge.toString(n)}})}max(e,n){return new er({...this._def,maxLength:{value:e,message:ge.toString(n)}})}length(e,n){return new er({...this._def,exactLength:{value:e,message:ge.toString(n)}})}nonempty(e){return this.min(1,e)}}er.create=(t,e)=>new er({type:t,minLength:null,maxLength:null,exactLength:null,typeName:ye.ZodArray,...Ce(e)});function Ui(t){if(t instanceof rt){const e={};for(const n in t.shape){const r=t.shape[n];e[n]=qr.create(Ui(r))}return new rt({...t._def,shape:()=>e})}else return t instanceof er?new er({...t._def,type:Ui(t.element)}):t instanceof qr?qr.create(Ui(t.unwrap())):t instanceof oi?oi.create(Ui(t.unwrap())):t instanceof vr?vr.create(t.items.map(e=>Ui(e))):t}class rt extends Ie{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;const e=this._def.shape(),n=je.objectKeys(e);return this._cached={shape:e,keys:n}}_parse(e){if(this._getType(e)!==re.object){const l=this._getOrReturnCtx(e);return oe(l,{code:K.invalid_type,expected:re.object,received:l.parsedType}),_e}const{status:r,ctx:s}=this._processInputParams(e),{shape:i,keys:o}=this._getCached(),a=[];if(!(this._def.catchall instanceof Gr&&this._def.unknownKeys==="strip"))for(const l in s.data)o.includes(l)||a.push(l);const c=[];for(const l of o){const u=i[l],d=s.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new _r(s,d,s.path,l)),alwaysSet:l in s.data})}if(this._def.catchall instanceof Gr){const l=this._def.unknownKeys;if(l==="passthrough")for(const u of a)c.push({key:{status:"valid",value:u},value:{status:"valid",value:s.data[u]}});else if(l==="strict")a.length>0&&(oe(s,{code:K.unrecognized_keys,keys:a}),r.dirty());else if(l!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const l=this._def.catchall;for(const u of a){const d=s.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new _r(s,d,s.path,u)),alwaysSet:u in s.data})}}return s.common.async?Promise.resolve().then(async()=>{const l=[];for(const u of c){const d=await u.key;l.push({key:d,value:await u.value,alwaysSet:u.alwaysSet})}return l}).then(l=>Kt.mergeObjectSync(r,l)):Kt.mergeObjectSync(r,c)}get shape(){return this._def.shape()}strict(e){return ge.errToObj,new rt({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(n,r)=>{var s,i,o,a;const c=(o=(i=(s=this._def).errorMap)===null||i===void 0?void 0:i.call(s,n,r).message)!==null&&o!==void 0?o:r.defaultError;return n.code==="unrecognized_keys"?{message:(a=ge.errToObj(e).message)!==null&&a!==void 0?a:c}:{message:c}}}:{}})}strip(){return new rt({...this._def,unknownKeys:"strip"})}passthrough(){return new rt({...this._def,unknownKeys:"passthrough"})}extend(e){return new rt({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new rt({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:ye.ZodObject})}setKey(e,n){return this.augment({[e]:n})}catchall(e){return new rt({...this._def,catchall:e})}pick(e){const n={};return je.objectKeys(e).forEach(r=>{e[r]&&this.shape[r]&&(n[r]=this.shape[r])}),new rt({...this._def,shape:()=>n})}omit(e){const n={};return je.objectKeys(this.shape).forEach(r=>{e[r]||(n[r]=this.shape[r])}),new rt({...this._def,shape:()=>n})}deepPartial(){return Ui(this)}partial(e){const n={};return je.objectKeys(this.shape).forEach(r=>{const s=this.shape[r];e&&!e[r]?n[r]=s:n[r]=s.optional()}),new rt({...this._def,shape:()=>n})}required(e){const n={};return je.objectKeys(this.shape).forEach(r=>{if(e&&!e[r])n[r]=this.shape[r];else{let i=this.shape[r];for(;i instanceof qr;)i=i._def.innerType;n[r]=i}}),new rt({...this._def,shape:()=>n})}keyof(){return my(je.objectKeys(this.shape))}}rt.create=(t,e)=>new rt({shape:()=>t,unknownKeys:"strip",catchall:Gr.create(),typeName:ye.ZodObject,...Ce(e)});rt.strictCreate=(t,e)=>new rt({shape:()=>t,unknownKeys:"strict",catchall:Gr.create(),typeName:ye.ZodObject,...Ce(e)});rt.lazycreate=(t,e)=>new rt({shape:t,unknownKeys:"strip",catchall:Gr.create(),typeName:ye.ZodObject,...Ce(e)});class Qo extends Ie{_parse(e){const{ctx:n}=this._processInputParams(e),r=this._def.options;function s(i){for(const a of i)if(a.result.status==="valid")return a.result;for(const a of i)if(a.result.status==="dirty")return n.common.issues.push(...a.ctx.common.issues),a.result;const o=i.map(a=>new Qn(a.ctx.common.issues));return oe(n,{code:K.invalid_union,unionErrors:o}),_e}if(n.common.async)return Promise.all(r.map(async i=>{const o={...n,common:{...n.common,issues:[]},parent:null};return{result:await i._parseAsync({data:n.data,path:n.path,parent:o}),ctx:o}})).then(s);{let i;const o=[];for(const c of r){const l={...n,common:{...n.common,issues:[]},parent:null},u=c._parseSync({data:n.data,path:n.path,parent:l});if(u.status==="valid")return u;u.status==="dirty"&&!i&&(i={result:u,ctx:l}),l.common.issues.length&&o.push(l.common.issues)}if(i)return n.common.issues.push(...i.ctx.common.issues),i.result;const a=o.map(c=>new Qn(c));return oe(n,{code:K.invalid_union,unionErrors:a}),_e}}get options(){return this._def.options}}Qo.create=(t,e)=>new Qo({options:t,typeName:ye.ZodUnion,...Ce(e)});const uc=t=>t instanceof na?uc(t.schema):t instanceof nr?uc(t.innerType()):t instanceof ra?[t.value]:t instanceof Ns?t.options:t instanceof sa?Object.keys(t.enum):t instanceof ia?uc(t._def.innerType):t instanceof Jo?[void 0]:t instanceof Xo?[null]:null;class il extends Ie{_parse(e){const{ctx:n}=this._processInputParams(e);if(n.parsedType!==re.object)return oe(n,{code:K.invalid_type,expected:re.object,received:n.parsedType}),_e;const r=this.discriminator,s=n.data[r],i=this.optionsMap.get(s);return i?n.common.async?i._parseAsync({data:n.data,path:n.path,parent:n}):i._parseSync({data:n.data,path:n.path,parent:n}):(oe(n,{code:K.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[r]}),_e)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,n,r){const s=new Map;for(const i of n){const o=uc(i.shape[e]);if(!o)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(const a of o){if(s.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);s.set(a,i)}}return new il({typeName:ye.ZodDiscriminatedUnion,discriminator:e,options:n,optionsMap:s,...Ce(r)})}}function Xu(t,e){const n=hs(t),r=hs(e);if(t===e)return{valid:!0,data:t};if(n===re.object&&r===re.object){const s=je.objectKeys(e),i=je.objectKeys(t).filter(a=>s.indexOf(a)!==-1),o={...t,...e};for(const a of i){const c=Xu(t[a],e[a]);if(!c.valid)return{valid:!1};o[a]=c.data}return{valid:!0,data:o}}else if(n===re.array&&r===re.array){if(t.length!==e.length)return{valid:!1};const s=[];for(let i=0;i<t.length;i++){const o=t[i],a=e[i],c=Xu(o,a);if(!c.valid)return{valid:!1};s.push(c.data)}return{valid:!0,data:s}}else return n===re.date&&r===re.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}class ea extends Ie{_parse(e){const{status:n,ctx:r}=this._processInputParams(e),s=(i,o)=>{if(Zu(i)||Zu(o))return _e;const a=Xu(i.value,o.value);return a.valid?((Ju(i)||Ju(o))&&n.dirty(),{status:n.value,value:a.data}):(oe(r,{code:K.invalid_intersection_types}),_e)};return r.common.async?Promise.all([this._def.left._parseAsync({data:r.data,path:r.path,parent:r}),this._def.right._parseAsync({data:r.data,path:r.path,parent:r})]).then(([i,o])=>s(i,o)):s(this._def.left._parseSync({data:r.data,path:r.path,parent:r}),this._def.right._parseSync({data:r.data,path:r.path,parent:r}))}}ea.create=(t,e,n)=>new ea({left:t,right:e,typeName:ye.ZodIntersection,...Ce(n)});class vr extends Ie{_parse(e){const{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==re.array)return oe(r,{code:K.invalid_type,expected:re.array,received:r.parsedType}),_e;if(r.data.length<this._def.items.length)return oe(r,{code:K.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),_e;!this._def.rest&&r.data.length>this._def.items.length&&(oe(r,{code:K.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),n.dirty());const i=[...r.data].map((o,a)=>{const c=this._def.items[a]||this._def.rest;return c?c._parse(new _r(r,o,r.path,a)):null}).filter(o=>!!o);return r.common.async?Promise.all(i).then(o=>Kt.mergeArray(n,o)):Kt.mergeArray(n,i)}get items(){return this._def.items}rest(e){return new vr({...this._def,rest:e})}}vr.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new vr({items:t,typeName:ye.ZodTuple,rest:null,...Ce(e)})};class ta extends Ie{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==re.object)return oe(r,{code:K.invalid_type,expected:re.object,received:r.parsedType}),_e;const s=[],i=this._def.keyType,o=this._def.valueType;for(const a in r.data)s.push({key:i._parse(new _r(r,a,r.path,a)),value:o._parse(new _r(r,r.data[a],r.path,a))});return r.common.async?Kt.mergeObjectAsync(n,s):Kt.mergeObjectSync(n,s)}get element(){return this._def.valueType}static create(e,n,r){return n instanceof Ie?new ta({keyType:e,valueType:n,typeName:ye.ZodRecord,...Ce(r)}):new ta({keyType:Xn.create(),valueType:e,typeName:ye.ZodRecord,...Ce(n)})}}class Nc extends Ie{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==re.map)return oe(r,{code:K.invalid_type,expected:re.map,received:r.parsedType}),_e;const s=this._def.keyType,i=this._def.valueType,o=[...r.data.entries()].map(([a,c],l)=>({key:s._parse(new _r(r,a,r.path,[l,"key"])),value:i._parse(new _r(r,c,r.path,[l,"value"]))}));if(r.common.async){const a=new Map;return Promise.resolve().then(async()=>{for(const c of o){const l=await c.key,u=await c.value;if(l.status==="aborted"||u.status==="aborted")return _e;(l.status==="dirty"||u.status==="dirty")&&n.dirty(),a.set(l.value,u.value)}return{status:n.value,value:a}})}else{const a=new Map;for(const c of o){const l=c.key,u=c.value;if(l.status==="aborted"||u.status==="aborted")return _e;(l.status==="dirty"||u.status==="dirty")&&n.dirty(),a.set(l.value,u.value)}return{status:n.value,value:a}}}}Nc.create=(t,e,n)=>new Nc({valueType:e,keyType:t,typeName:ye.ZodMap,...Ce(n)});class ii extends Ie{_parse(e){const{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==re.set)return oe(r,{code:K.invalid_type,expected:re.set,received:r.parsedType}),_e;const s=this._def;s.minSize!==null&&r.data.size<s.minSize.value&&(oe(r,{code:K.too_small,minimum:s.minSize.value,type:"set",inclusive:!0,exact:!1,message:s.minSize.message}),n.dirty()),s.maxSize!==null&&r.data.size>s.maxSize.value&&(oe(r,{code:K.too_big,maximum:s.maxSize.value,type:"set",inclusive:!0,exact:!1,message:s.maxSize.message}),n.dirty());const i=this._def.valueType;function o(c){const l=new Set;for(const u of c){if(u.status==="aborted")return _e;u.status==="dirty"&&n.dirty(),l.add(u.value)}return{status:n.value,value:l}}const a=[...r.data.values()].map((c,l)=>i._parse(new _r(r,c,r.path,l)));return r.common.async?Promise.all(a).then(c=>o(c)):o(a)}min(e,n){return new ii({...this._def,minSize:{value:e,message:ge.toString(n)}})}max(e,n){return new ii({...this._def,maxSize:{value:e,message:ge.toString(n)}})}size(e,n){return this.min(e,n).max(e,n)}nonempty(e){return this.min(1,e)}}ii.create=(t,e)=>new ii({valueType:t,minSize:null,maxSize:null,typeName:ye.ZodSet,...Ce(e)});class Wi extends Ie{constructor(){super(...arguments),this.validate=this.implement}_parse(e){const{ctx:n}=this._processInputParams(e);if(n.parsedType!==re.function)return oe(n,{code:K.invalid_type,expected:re.function,received:n.parsedType}),_e;function r(a,c){return Cc({data:a,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,vc(),Go].filter(l=>!!l),issueData:{code:K.invalid_arguments,argumentsError:c}})}function s(a,c){return Cc({data:a,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,vc(),Go].filter(l=>!!l),issueData:{code:K.invalid_return_type,returnTypeError:c}})}const i={errorMap:n.common.contextualErrorMap},o=n.data;if(this._def.returns instanceof Ji){const a=this;return nn(async function(...c){const l=new Qn([]),u=await a._def.args.parseAsync(c,i).catch(f=>{throw l.addIssue(r(c,f)),l}),d=await Reflect.apply(o,this,u);return await a._def.returns._def.type.parseAsync(d,i).catch(f=>{throw l.addIssue(s(d,f)),l})})}else{const a=this;return nn(function(...c){const l=a._def.args.safeParse(c,i);if(!l.success)throw new Qn([r(c,l.error)]);const u=Reflect.apply(o,this,l.data),d=a._def.returns.safeParse(u,i);if(!d.success)throw new Qn([s(u,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new Wi({...this._def,args:vr.create(e).rest(ei.create())})}returns(e){return new Wi({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,n,r){return new Wi({args:e||vr.create([]).rest(ei.create()),returns:n||ei.create(),typeName:ye.ZodFunction,...Ce(r)})}}class na extends Ie{get schema(){return this._def.getter()}_parse(e){const{ctx:n}=this._processInputParams(e);return this._def.getter()._parse({data:n.data,path:n.path,parent:n})}}na.create=(t,e)=>new na({getter:t,typeName:ye.ZodLazy,...Ce(e)});class ra extends Ie{_parse(e){if(e.data!==this._def.value){const n=this._getOrReturnCtx(e);return oe(n,{received:n.data,code:K.invalid_literal,expected:this._def.value}),_e}return{status:"valid",value:e.data}}get value(){return this._def.value}}ra.create=(t,e)=>new ra({value:t,typeName:ye.ZodLiteral,...Ce(e)});function my(t,e){return new Ns({values:t,typeName:ye.ZodEnum,...Ce(e)})}class Ns extends Ie{_parse(e){if(typeof e.data!="string"){const n=this._getOrReturnCtx(e),r=this._def.values;return oe(n,{expected:je.joinValues(r),received:n.parsedType,code:K.invalid_type}),_e}if(this._def.values.indexOf(e.data)===-1){const n=this._getOrReturnCtx(e),r=this._def.values;return oe(n,{received:n.data,code:K.invalid_enum_value,options:r}),_e}return nn(e.data)}get options(){return this._def.values}get enum(){const e={};for(const n of this._def.values)e[n]=n;return e}get Values(){const e={};for(const n of this._def.values)e[n]=n;return e}get Enum(){const e={};for(const n of this._def.values)e[n]=n;return e}extract(e){return Ns.create(e)}exclude(e){return Ns.create(this.options.filter(n=>!e.includes(n)))}}Ns.create=my;class sa extends Ie{_parse(e){const n=je.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(e);if(r.parsedType!==re.string&&r.parsedType!==re.number){const s=je.objectValues(n);return oe(r,{expected:je.joinValues(s),received:r.parsedType,code:K.invalid_type}),_e}if(n.indexOf(e.data)===-1){const s=je.objectValues(n);return oe(r,{received:r.data,code:K.invalid_enum_value,options:s}),_e}return nn(e.data)}get enum(){return this._def.values}}sa.create=(t,e)=>new sa({values:t,typeName:ye.ZodNativeEnum,...Ce(e)});class Ji extends Ie{unwrap(){return this._def.type}_parse(e){const{ctx:n}=this._processInputParams(e);if(n.parsedType!==re.promise&&n.common.async===!1)return oe(n,{code:K.invalid_type,expected:re.promise,received:n.parsedType}),_e;const r=n.parsedType===re.promise?n.data:Promise.resolve(n.data);return nn(r.then(s=>this._def.type.parseAsync(s,{path:n.path,errorMap:n.common.contextualErrorMap})))}}Ji.create=(t,e)=>new Ji({type:t,typeName:ye.ZodPromise,...Ce(e)});class nr extends Ie{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===ye.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){const{status:n,ctx:r}=this._processInputParams(e),s=this._def.effect||null,i={addIssue:o=>{oe(r,o),o.fatal?n.abort():n.dirty()},get path(){return r.path}};if(i.addIssue=i.addIssue.bind(i),s.type==="preprocess"){const o=s.transform(r.data,i);return r.common.issues.length?{status:"dirty",value:r.data}:r.common.async?Promise.resolve(o).then(a=>this._def.schema._parseAsync({data:a,path:r.path,parent:r})):this._def.schema._parseSync({data:o,path:r.path,parent:r})}if(s.type==="refinement"){const o=a=>{const c=s.refinement(a,i);if(r.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(r.common.async===!1){const a=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});return a.status==="aborted"?_e:(a.status==="dirty"&&n.dirty(),o(a.value),{status:n.value,value:a.value})}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(a=>a.status==="aborted"?_e:(a.status==="dirty"&&n.dirty(),o(a.value).then(()=>({status:n.value,value:a.value}))))}if(s.type==="transform")if(r.common.async===!1){const o=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});if(!Yo(o))return o;const a=s.transform(o.value,i);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:n.value,value:a}}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(o=>Yo(o)?Promise.resolve(s.transform(o.value,i)).then(a=>({status:n.value,value:a})):o);je.assertNever(s)}}nr.create=(t,e,n)=>new nr({schema:t,typeName:ye.ZodEffects,effect:e,...Ce(n)});nr.createWithPreprocess=(t,e,n)=>new nr({schema:e,effect:{type:"preprocess",transform:t},typeName:ye.ZodEffects,...Ce(n)});class qr extends Ie{_parse(e){return this._getType(e)===re.undefined?nn(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}qr.create=(t,e)=>new qr({innerType:t,typeName:ye.ZodOptional,...Ce(e)});class oi extends Ie{_parse(e){return this._getType(e)===re.null?nn(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}oi.create=(t,e)=>new oi({innerType:t,typeName:ye.ZodNullable,...Ce(e)});class ia extends Ie{_parse(e){const{ctx:n}=this._processInputParams(e);let r=n.data;return n.parsedType===re.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:n.path,parent:n})}removeDefault(){return this._def.innerType}}ia.create=(t,e)=>new ia({innerType:t,typeName:ye.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...Ce(e)});class Tc extends Ie{_parse(e){const{ctx:n}=this._processInputParams(e),r={...n,common:{...n.common,issues:[]}},s=this._def.innerType._parse({data:r.data,path:r.path,parent:{...r}});return Ac(s)?s.then(i=>({status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new Qn(r.common.issues)},input:r.data})})):{status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Qn(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}}Tc.create=(t,e)=>new Tc({innerType:t,typeName:ye.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...Ce(e)});class Oc extends Ie{_parse(e){if(this._getType(e)!==re.nan){const r=this._getOrReturnCtx(e);return oe(r,{code:K.invalid_type,expected:re.nan,received:r.parsedType}),_e}return{status:"valid",value:e.data}}}Oc.create=t=>new Oc({typeName:ye.ZodNaN,...Ce(t)});const g1=Symbol("zod_brand");class yy extends Ie{_parse(e){const{ctx:n}=this._processInputParams(e),r=n.data;return this._def.type._parse({data:r,path:n.path,parent:n})}unwrap(){return this._def.type}}class _a extends Ie{_parse(e){const{status:n,ctx:r}=this._processInputParams(e);if(r.common.async)return(async()=>{const i=await this._def.in._parseAsync({data:r.data,path:r.path,parent:r});return i.status==="aborted"?_e:i.status==="dirty"?(n.dirty(),gy(i.value)):this._def.out._parseAsync({data:i.value,path:r.path,parent:r})})();{const s=this._def.in._parseSync({data:r.data,path:r.path,parent:r});return s.status==="aborted"?_e:s.status==="dirty"?(n.dirty(),{status:"dirty",value:s.value}):this._def.out._parseSync({data:s.value,path:r.path,parent:r})}}static create(e,n){return new _a({in:e,out:n,typeName:ye.ZodPipeline})}}class Rc extends Ie{_parse(e){const n=this._def.innerType._parse(e);return Yo(n)&&(n.value=Object.freeze(n.value)),n}}Rc.create=(t,e)=>new Rc({innerType:t,typeName:ye.ZodReadonly,...Ce(e)});const wy=(t,e={},n)=>t?Zi.create().superRefine((r,s)=>{var i,o;if(!t(r)){const a=typeof e=="function"?e(r):typeof e=="string"?{message:e}:e,c=(o=(i=a.fatal)!==null&&i!==void 0?i:n)!==null&&o!==void 0?o:!0,l=typeof a=="string"?{message:a}:a;s.addIssue({code:"custom",...l,fatal:c})}}):Zi.create(),m1={object:rt.lazycreate};var ye;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(ye||(ye={}));const y1=(t,e={message:`Input not instance of ${t.name}`})=>wy(n=>n instanceof t,e),Ey=Xn.create,by=Ss.create,w1=Oc.create,E1=Is.create,_y=Zo.create,b1=si.create,_1=Sc.create,v1=Jo.create,C1=Xo.create,A1=Zi.create,S1=ei.create,I1=Gr.create,N1=Ic.create,T1=er.create,O1=rt.create,R1=rt.strictCreate,x1=Qo.create,P1=il.create,D1=ea.create,k1=vr.create,U1=ta.create,$1=Nc.create,B1=ii.create,F1=Wi.create,L1=na.create,M1=ra.create,j1=Ns.create,W1=sa.create,q1=Ji.create,Ef=nr.create,H1=qr.create,z1=oi.create,V1=nr.createWithPreprocess,K1=_a.create,G1=()=>Ey().optional(),Y1=()=>by().optional(),Z1=()=>_y().optional(),J1={string:t=>Xn.create({...t,coerce:!0}),number:t=>Ss.create({...t,coerce:!0}),boolean:t=>Zo.create({...t,coerce:!0}),bigint:t=>Is.create({...t,coerce:!0}),date:t=>si.create({...t,coerce:!0})},X1=_e;var m=Object.freeze({__proto__:null,defaultErrorMap:Go,setErrorMap:n1,getErrorMap:vc,makeIssue:Cc,EMPTY_PATH:r1,addIssueToContext:oe,ParseStatus:Kt,INVALID:_e,DIRTY:gy,OK:nn,isAborted:Zu,isDirty:Ju,isValid:Yo,isAsync:Ac,get util(){return je},get objectUtil(){return Yu},ZodParsedType:re,getParsedType:hs,ZodType:Ie,ZodString:Xn,ZodNumber:Ss,ZodBigInt:Is,ZodBoolean:Zo,ZodDate:si,ZodSymbol:Sc,ZodUndefined:Jo,ZodNull:Xo,ZodAny:Zi,ZodUnknown:ei,ZodNever:Gr,ZodVoid:Ic,ZodArray:er,ZodObject:rt,ZodUnion:Qo,ZodDiscriminatedUnion:il,ZodIntersection:ea,ZodTuple:vr,ZodRecord:ta,ZodMap:Nc,ZodSet:ii,ZodFunction:Wi,ZodLazy:na,ZodLiteral:ra,ZodEnum:Ns,ZodNativeEnum:sa,ZodPromise:Ji,ZodEffects:nr,ZodTransformer:nr,ZodOptional:qr,ZodNullable:oi,ZodDefault:ia,ZodCatch:Tc,ZodNaN:Oc,BRAND:g1,ZodBranded:yy,ZodPipeline:_a,ZodReadonly:Rc,custom:wy,Schema:Ie,ZodSchema:Ie,late:m1,get ZodFirstPartyTypeKind(){return ye},coerce:J1,any:A1,array:T1,bigint:E1,boolean:_y,date:b1,discriminatedUnion:P1,effect:Ef,enum:j1,function:F1,instanceof:y1,intersection:D1,lazy:L1,literal:M1,map:$1,nan:w1,nativeEnum:W1,never:I1,null:C1,nullable:z1,number:by,object:O1,oboolean:Z1,onumber:Y1,optional:H1,ostring:G1,pipeline:K1,preprocess:V1,promise:q1,record:U1,set:B1,strictObject:R1,string:Ey,symbol:_1,transformer:Ef,tuple:k1,undefined:v1,union:x1,unknown:S1,void:N1,NEVER:X1,ZodIssueCode:K,quotelessJson:t1,ZodError:Qn});const st=m.object({message:m.string()});function se(t){return m.literal(ae[t])}const ol=m.object({serializedMessage:m.string().optional(),accountAddress:m.string(),chainId:m.string(),notBefore:m.string().optional(),domain:m.string(),uri:m.string(),version:m.string(),nonce:m.string(),statement:m.string().optional(),resources:m.array(m.string()).optional(),requestId:m.string().optional(),issuedAt:m.string().optional(),expirationTime:m.string().optional()});m.object({accessList:m.array(m.string()),blockHash:m.string().nullable(),blockNumber:m.string().nullable(),chainId:m.string().or(m.number()),from:m.string(),gas:m.string(),hash:m.string(),input:m.string().nullable(),maxFeePerGas:m.string(),maxPriorityFeePerGas:m.string(),nonce:m.string(),r:m.string(),s:m.string(),to:m.string(),transactionIndex:m.string().nullable(),type:m.string(),v:m.string(),value:m.string()});const Q1=m.object({chainId:m.string().or(m.number()),rpcUrl:m.optional(m.string())}),e_=m.object({email:m.string().email()}),t_=m.object({otp:m.string()}),n_=m.object({uri:m.string(),preferredAccountType:m.optional(m.string()),chainId:m.optional(m.string().or(m.number())),siwxMessage:m.optional(ol),rpcUrl:m.optional(m.string())}),r_=m.object({chainId:m.optional(m.string().or(m.number())),preferredAccountType:m.optional(m.string()),socialUri:m.optional(m.string()),siwxMessage:m.optional(ol),rpcUrl:m.optional(m.string())}),s_=m.object({provider:m.enum(["google","github","apple","facebook","x","discord"])}),i_=m.object({email:m.string().email()}),o_=m.object({otp:m.string()}),a_=m.object({otp:m.string()}),c_=m.object({themeMode:m.optional(m.enum(["light","dark"])),themeVariables:m.optional(m.record(m.string(),m.string().or(m.number()))),w3mThemeVariables:m.optional(m.record(m.string(),m.string()))}),l_=m.object({metadata:m.object({name:m.string(),description:m.string(),url:m.string(),icons:m.array(m.string())}).optional(),sdkVersion:m.string().optional(),sdkType:m.string().optional(),projectId:m.string()}),u_=m.object({type:m.string()}),d_=m.object({action:m.enum(["VERIFY_DEVICE","VERIFY_OTP","CONNECT"])}),h_=m.object({url:m.string()}),f_=m.object({userName:m.string()}),p_=m.object({email:m.string().optional().nullable(),address:m.string(),chainId:m.string().or(m.number()),accounts:m.array(m.object({address:m.string(),type:m.enum([at.ACCOUNT_TYPES.EOA,at.ACCOUNT_TYPES.SMART_ACCOUNT])})).optional(),userName:m.string().optional().nullable(),preferredAccountType:m.optional(m.string()),signature:m.string().optional(),message:m.string().optional(),siwxMessage:m.optional(ol)}),g_=m.object({action:m.enum(["VERIFY_PRIMARY_OTP","VERIFY_SECONDARY_OTP"])}),m_=m.object({email:m.string().email().optional().nullable(),address:m.string(),chainId:m.string().or(m.number()),smartAccountDeployed:m.optional(m.boolean()),accounts:m.array(m.object({address:m.string(),type:m.enum([at.ACCOUNT_TYPES.EOA,at.ACCOUNT_TYPES.SMART_ACCOUNT])})).optional(),preferredAccountType:m.optional(m.string()),signature:m.string().optional(),message:m.string().optional(),siwxMessage:m.optional(ol)}),y_=m.object({uri:m.string()}),w_=m.object({isConnected:m.boolean()}),E_=m.object({chainId:m.string().or(m.number())}),b_=m.object({chainId:m.string().or(m.number())}),__=m.object({newEmail:m.string().email()}),v_=m.object({smartAccountEnabledNetworks:m.array(m.number())});m.object({address:m.string(),isDeployed:m.boolean()});const C_=m.object({version:m.string().optional()}),A_=m.object({type:m.string(),address:m.string()}),S_=m.any(),I_=m.object({method:m.literal("eth_accounts")}),N_=m.object({method:m.literal("eth_blockNumber")}),T_=m.object({method:m.literal("eth_call"),params:m.array(m.any())}),O_=m.object({method:m.literal("eth_chainId")}),R_=m.object({method:m.literal("eth_estimateGas"),params:m.array(m.any())}),x_=m.object({method:m.literal("eth_feeHistory"),params:m.array(m.any())}),P_=m.object({method:m.literal("eth_gasPrice")}),D_=m.object({method:m.literal("eth_getAccount"),params:m.array(m.any())}),k_=m.object({method:m.literal("eth_getBalance"),params:m.array(m.any())}),U_=m.object({method:m.literal("eth_getBlockByHash"),params:m.array(m.any())}),$_=m.object({method:m.literal("eth_getBlockByNumber"),params:m.array(m.any())}),B_=m.object({method:m.literal("eth_getBlockReceipts"),params:m.array(m.any())}),F_=m.object({method:m.literal("eth_getBlockTransactionCountByHash"),params:m.array(m.any())}),L_=m.object({method:m.literal("eth_getBlockTransactionCountByNumber"),params:m.array(m.any())}),M_=m.object({method:m.literal("eth_getCode"),params:m.array(m.any())}),j_=m.object({method:m.literal("eth_getFilterChanges"),params:m.array(m.any())}),W_=m.object({method:m.literal("eth_getFilterLogs"),params:m.array(m.any())}),q_=m.object({method:m.literal("eth_getLogs"),params:m.array(m.any())}),H_=m.object({method:m.literal("eth_getProof"),params:m.array(m.any())}),z_=m.object({method:m.literal("eth_getStorageAt"),params:m.array(m.any())}),V_=m.object({method:m.literal("eth_getTransactionByBlockHashAndIndex"),params:m.array(m.any())}),K_=m.object({method:m.literal("eth_getTransactionByBlockNumberAndIndex"),params:m.array(m.any())}),G_=m.object({method:m.literal("eth_getTransactionByHash"),params:m.array(m.any())}),Y_=m.object({method:m.literal("eth_getTransactionCount"),params:m.array(m.any())}),Z_=m.object({method:m.literal("eth_getTransactionReceipt"),params:m.array(m.any())}),J_=m.object({method:m.literal("eth_getUncleCountByBlockHash"),params:m.array(m.any())}),X_=m.object({method:m.literal("eth_getUncleCountByBlockNumber"),params:m.array(m.any())}),Q_=m.object({method:m.literal("eth_maxPriorityFeePerGas")}),ev=m.object({method:m.literal("eth_newBlockFilter")}),tv=m.object({method:m.literal("eth_newFilter"),params:m.array(m.any())}),nv=m.object({method:m.literal("eth_newPendingTransactionFilter")}),rv=m.object({method:m.literal("eth_sendRawTransaction"),params:m.array(m.any())}),sv=m.object({method:m.literal("eth_syncing"),params:m.array(m.any())}),iv=m.object({method:m.literal("eth_uninstallFilter"),params:m.array(m.any())}),bf=m.object({method:m.literal("personal_sign"),params:m.array(m.any())}),ov=m.object({method:m.literal("eth_signTypedData_v4"),params:m.array(m.any())}),av=m.object({method:m.literal("eth_sendTransaction"),params:m.array(m.any())}),cv=m.object({method:m.literal("solana_signMessage"),params:m.object({message:m.string(),pubkey:m.string()})}),lv=m.object({method:m.literal("solana_signTransaction"),params:m.object({transaction:m.string()})}),uv=m.object({method:m.literal("solana_signAllTransactions"),params:m.object({transactions:m.array(m.string())})}),dv=m.object({method:m.literal("solana_signAndSendTransaction"),params:m.object({transaction:m.string(),options:m.object({skipPreflight:m.boolean().optional(),preflightCommitment:m.enum(["processed","confirmed","finalized","recent","single","singleGossip","root","max"]).optional(),maxRetries:m.number().optional(),minContextSlot:m.number().optional()}).optional()})}),hv=m.object({method:m.literal("wallet_sendCalls"),params:m.array(m.object({chainId:m.string().or(m.number()).optional(),from:m.string().optional(),version:m.string().optional(),capabilities:m.any().optional(),calls:m.array(m.object({to:m.string().startsWith("0x"),data:m.string().startsWith("0x").optional(),value:m.string().optional()}))}))}),fv=m.object({method:m.literal("wallet_getCallsStatus"),params:m.array(m.string())}),pv=m.object({method:m.literal("wallet_getCapabilities"),params:m.array(m.string().or(m.number()).optional()).optional()}),gv=m.object({method:m.literal("wallet_grantPermissions"),params:m.array(m.any())}),mv=m.object({method:m.literal("wallet_revokePermissions"),params:m.any()}),yv=m.object({method:m.literal("wallet_getAssets"),params:m.any()}),_f=m.object({token:m.string()}),ie=m.object({id:m.string().optional()}),Ul={appEvent:ie.extend({type:se("APP_SWITCH_NETWORK"),payload:Q1}).or(ie.extend({type:se("APP_CONNECT_EMAIL"),payload:e_})).or(ie.extend({type:se("APP_CONNECT_DEVICE")})).or(ie.extend({type:se("APP_CONNECT_OTP"),payload:t_})).or(ie.extend({type:se("APP_CONNECT_SOCIAL"),payload:n_})).or(ie.extend({type:se("APP_GET_FARCASTER_URI")})).or(ie.extend({type:se("APP_CONNECT_FARCASTER")})).or(ie.extend({type:se("APP_GET_USER"),payload:m.optional(r_)})).or(ie.extend({type:se("APP_GET_SOCIAL_REDIRECT_URI"),payload:s_})).or(ie.extend({type:se("APP_SIGN_OUT")})).or(ie.extend({type:se("APP_IS_CONNECTED"),payload:m.optional(_f)})).or(ie.extend({type:se("APP_GET_CHAIN_ID")})).or(ie.extend({type:se("APP_GET_SMART_ACCOUNT_ENABLED_NETWORKS")})).or(ie.extend({type:se("APP_INIT_SMART_ACCOUNT")})).or(ie.extend({type:se("APP_SET_PREFERRED_ACCOUNT"),payload:u_})).or(ie.extend({type:se("APP_RPC_REQUEST"),payload:bf.or(yv).or(I_).or(N_).or(T_).or(O_).or(R_).or(x_).or(P_).or(D_).or(k_).or(U_).or($_).or(B_).or(F_).or(L_).or(M_).or(j_).or(W_).or(q_).or(H_).or(z_).or(V_).or(K_).or(G_).or(Y_).or(Z_).or(J_).or(X_).or(Q_).or(ev).or(tv).or(nv).or(rv).or(sv).or(iv).or(bf).or(ov).or(av).or(cv).or(lv).or(uv).or(dv).or(fv).or(hv).or(pv).or(gv).or(mv).and(m.object({chainId:m.string().or(m.number()).optional(),chainNamespace:m.enum(["eip155","solana","polkadot","bip122","cosmos"]).optional(),rpcUrl:m.string().optional()}))})).or(ie.extend({type:se("APP_UPDATE_EMAIL"),payload:i_})).or(ie.extend({type:se("APP_UPDATE_EMAIL_PRIMARY_OTP"),payload:o_})).or(ie.extend({type:se("APP_UPDATE_EMAIL_SECONDARY_OTP"),payload:a_})).or(ie.extend({type:se("APP_SYNC_THEME"),payload:c_})).or(ie.extend({type:se("APP_SYNC_DAPP_DATA"),payload:l_})).or(ie.extend({type:se("APP_RELOAD")})).or(ie.extend({type:se("APP_RPC_ABORT")})),frameEvent:ie.extend({type:se("FRAME_SWITCH_NETWORK_ERROR"),payload:st}).or(ie.extend({type:se("FRAME_SWITCH_NETWORK_SUCCESS"),payload:b_})).or(ie.extend({type:se("FRAME_CONNECT_EMAIL_SUCCESS"),payload:d_})).or(ie.extend({type:se("FRAME_CONNECT_EMAIL_ERROR"),payload:st})).or(ie.extend({type:se("FRAME_GET_FARCASTER_URI_SUCCESS"),payload:h_})).or(ie.extend({type:se("FRAME_GET_FARCASTER_URI_ERROR"),payload:st})).or(ie.extend({type:se("FRAME_CONNECT_FARCASTER_SUCCESS"),payload:f_})).or(ie.extend({type:se("FRAME_CONNECT_FARCASTER_ERROR"),payload:st})).or(ie.extend({type:se("FRAME_CONNECT_OTP_ERROR"),payload:st})).or(ie.extend({type:se("FRAME_CONNECT_OTP_SUCCESS")})).or(ie.extend({type:se("FRAME_CONNECT_DEVICE_ERROR"),payload:st})).or(ie.extend({type:se("FRAME_CONNECT_DEVICE_SUCCESS")})).or(ie.extend({type:se("FRAME_CONNECT_SOCIAL_SUCCESS"),payload:p_})).or(ie.extend({type:se("FRAME_CONNECT_SOCIAL_ERROR"),payload:st})).or(ie.extend({type:se("FRAME_GET_USER_ERROR"),payload:st})).or(ie.extend({type:se("FRAME_GET_USER_SUCCESS"),payload:m_})).or(ie.extend({type:se("FRAME_GET_SOCIAL_REDIRECT_URI_ERROR"),payload:st})).or(ie.extend({type:se("FRAME_GET_SOCIAL_REDIRECT_URI_SUCCESS"),payload:y_})).or(ie.extend({type:se("FRAME_SIGN_OUT_ERROR"),payload:st})).or(ie.extend({type:se("FRAME_SIGN_OUT_SUCCESS")})).or(ie.extend({type:se("FRAME_IS_CONNECTED_ERROR"),payload:st})).or(ie.extend({type:se("FRAME_IS_CONNECTED_SUCCESS"),payload:w_})).or(ie.extend({type:se("FRAME_GET_CHAIN_ID_ERROR"),payload:st})).or(ie.extend({type:se("FRAME_GET_CHAIN_ID_SUCCESS"),payload:E_})).or(ie.extend({type:se("FRAME_RPC_REQUEST_ERROR"),payload:st})).or(ie.extend({type:se("FRAME_RPC_REQUEST_SUCCESS"),payload:S_})).or(ie.extend({type:se("FRAME_SESSION_UPDATE"),payload:_f})).or(ie.extend({type:se("FRAME_UPDATE_EMAIL_ERROR"),payload:st})).or(ie.extend({type:se("FRAME_UPDATE_EMAIL_SUCCESS"),payload:g_})).or(ie.extend({type:se("FRAME_UPDATE_EMAIL_PRIMARY_OTP_ERROR"),payload:st})).or(ie.extend({type:se("FRAME_UPDATE_EMAIL_PRIMARY_OTP_SUCCESS")})).or(ie.extend({type:se("FRAME_UPDATE_EMAIL_SECONDARY_OTP_ERROR"),payload:st})).or(ie.extend({type:se("FRAME_UPDATE_EMAIL_SECONDARY_OTP_SUCCESS"),payload:__})).or(ie.extend({type:se("FRAME_SYNC_THEME_ERROR"),payload:st})).or(ie.extend({type:se("FRAME_SYNC_THEME_SUCCESS")})).or(ie.extend({type:se("FRAME_SYNC_DAPP_DATA_ERROR"),payload:st})).or(ie.extend({type:se("FRAME_SYNC_DAPP_DATA_SUCCESS")})).or(ie.extend({type:se("FRAME_GET_SMART_ACCOUNT_ENABLED_NETWORKS_SUCCESS"),payload:v_})).or(ie.extend({type:se("FRAME_GET_SMART_ACCOUNT_ENABLED_NETWORKS_ERROR"),payload:st})).or(ie.extend({type:se("FRAME_INIT_SMART_ACCOUNT_ERROR"),payload:st})).or(ie.extend({type:se("FRAME_SET_PREFERRED_ACCOUNT_SUCCESS"),payload:A_})).or(ie.extend({type:se("FRAME_SET_PREFERRED_ACCOUNT_ERROR"),payload:st})).or(ie.extend({type:se("FRAME_READY"),payload:C_})).or(ie.extend({type:se("FRAME_RELOAD_ERROR"),payload:st})).or(ie.extend({type:se("FRAME_RELOAD_SUCCESS")}))};function $l(t,e={}){var n;return typeof(e==null?void 0:e.type)=="string"&&((n=e==null?void 0:e.type)==null?void 0:n.includes(t))}function wv({projectId:t,chainId:e,enableLogger:n,rpcUrl:r=T.BLOCKCHAIN_API_RPC_URL,enableCloudAuthAccount:s=!1}){const i=new URL(Xb);i.searchParams.set("projectId",t),i.searchParams.set("chainId",String(e)),i.searchParams.set("version",e1),i.searchParams.set("enableLogger",String(n)),i.searchParams.set("rpcUrl",r);const o=gt.get("dapp_smart_account_version");return o&&(o==="v6"||o==="v7")&&(console.warn(">> AppKit - Forcing smart account version",o),i.searchParams.set("smartAccountVersion",o)),s&&i.searchParams.set("enableCloudAuthAccount","true"),i.toString()}class Ev{constructor({projectId:e,isAppClient:n=!1,chainId:r="eip155:1",enableLogger:s=!0,enableCloudAuthAccount:i=!1,rpcUrl:o=T.BLOCKCHAIN_API_RPC_URL}){if(this.iframe=null,this.iframeIsReady=!1,this.initFrame=()=>{const a=document.getElementById("w3m-iframe");this.iframe&&!a&&document.body.appendChild(this.iframe)},this.events={registerFrameEventHandler:(a,c,l)=>{function u({data:d}){var f;if(!$l(ae.FRAME_EVENT_KEY,d))return;const h=Ul.frameEvent.safeParse(d);if(!h.success){console.warn("W3mFrame: invalid frame event",h.error.message);return}((f=h.data)==null?void 0:f.id)===a&&(c(h.data),window.removeEventListener("message",u))}In.isClient&&(window.addEventListener("message",u),l.addEventListener("abort",()=>{window.removeEventListener("message",u)}))},onFrameEvent:a=>{In.isClient&&window.addEventListener("message",({data:c})=>{if(!$l(ae.FRAME_EVENT_KEY,c))return;const l=Ul.frameEvent.safeParse(c);l.success?a(l.data):console.warn("W3mFrame: invalid frame event",l.error.message)})},onAppEvent:a=>{In.isClient&&window.addEventListener("message",({data:c})=>{if(!$l(ae.APP_EVENT_KEY,c))return;const l=Ul.appEvent.safeParse(c);l.success||console.warn("W3mFrame: invalid app event",l.error.message),a(c)})},postAppEvent:a=>{var c;if(In.isClient){if(!((c=this.iframe)!=null&&c.contentWindow))throw new Error("W3mFrame: iframe is not set");this.iframe.contentWindow.postMessage(a,"*")}},postFrameEvent:a=>{if(In.isClient){if(!parent)throw new Error("W3mFrame: parent is not set");parent.postMessage(a,"*")}}},this.projectId=e,this.frameLoadPromise=new Promise((a,c)=>{this.frameLoadPromiseResolver={resolve:a,reject:c}}),this.rpcUrl=o,n&&(this.frameLoadPromise=new Promise((a,c)=>{this.frameLoadPromiseResolver={resolve:a,reject:c}}),In.isClient)){const a=document.createElement("iframe");a.id="w3m-iframe",a.src=wv({projectId:e,chainId:r,enableLogger:s,rpcUrl:this.rpcUrl,enableCloudAuthAccount:i}),a.name="w3m-secure-iframe",a.style.position="fixed",a.style.zIndex="999999",a.style.display="none",a.style.border="none",a.style.animationDelay="0s, 50ms",a.style.borderBottomLeftRadius="clamp(0px, var(--apkt-borderRadius-8), 44px)",a.style.borderBottomRightRadius="clamp(0px, var(--apkt-borderRadius-8), 44px)",this.iframe=a,this.iframe.onerror=()=>{var c;(c=this.frameLoadPromiseResolver)==null||c.reject("Unable to load email login dependency")},this.events.onFrameEvent(c=>{var l;c.type==="@w3m-frame/READY"&&(this.iframeIsReady=!0,(l=this.frameLoadPromiseResolver)==null||l.resolve(void 0))})}}get networks(){const e=["eip155:1","eip155:5","eip155:11155111","eip155:10","eip155:420","eip155:42161","eip155:421613","eip155:137","eip155:80001","eip155:42220","eip155:1313161554","eip155:1313161555","eip155:56","eip155:97","eip155:43114","eip155:43113","eip155:324","eip155:280","eip155:100","eip155:8453","eip155:84531","eip155:84532","eip155:7777777","eip155:999","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","solana:4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z","solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1"].map(n=>({[n]:{rpcUrl:`${this.rpcUrl}/v1/?chainId=${n}&projectId=${this.projectId}`,chainId:n}}));return Object.assign({},...e)}}var pr={exports:{}};function bv(t){try{return JSON.stringify(t)}catch{return'"[Circular]"'}}var _v=vv;function vv(t,e,n){var r=n&&n.stringify||bv,s=1;if(typeof t=="object"&&t!==null){var i=e.length+s;if(i===1)return t;var o=new Array(i);o[0]=r(t);for(var a=1;a<i;a++)o[a]=r(e[a]);return o.join(" ")}if(typeof t!="string")return t;var c=e.length;if(c===0)return t;for(var l="",u=1-s,d=-1,h=t&&t.length||0,f=0;f<h;){if(t.charCodeAt(f)===37&&f+1<h){switch(d=d>-1?d:0,t.charCodeAt(f+1)){case 100:case 102:if(u>=c||e[u]==null)break;d<f&&(l+=t.slice(d,f)),l+=Number(e[u]),d=f+2,f++;break;case 105:if(u>=c||e[u]==null)break;d<f&&(l+=t.slice(d,f)),l+=Math.floor(Number(e[u])),d=f+2,f++;break;case 79:case 111:case 106:if(u>=c||e[u]===void 0)break;d<f&&(l+=t.slice(d,f));var p=typeof e[u];if(p==="string"){l+="'"+e[u]+"'",d=f+2,f++;break}if(p==="function"){l+=e[u].name||"<anonymous>",d=f+2,f++;break}l+=r(e[u]),d=f+2,f++;break;case 115:if(u>=c)break;d<f&&(l+=t.slice(d,f)),l+=String(e[u]),d=f+2,f++;break;case 37:d<f&&(l+=t.slice(d,f)),l+="%",d=f+2,f++,u--;break}++u}++f}return d===-1?t:(d<h&&(l+=t.slice(d)),l)}const vf=_v;pr.exports=Hr;const oa=Bv().console||{},Cv={mapHttpRequest:Ba,mapHttpResponse:Ba,wrapRequestSerializer:Bl,wrapResponseSerializer:Bl,wrapErrorSerializer:Bl,req:Ba,res:Ba,err:Af,errWithCause:Af};function ws(t,e){return t==="silent"?1/0:e.levels.values[t]}const ch=Symbol("pino.logFuncs"),Qu=Symbol("pino.hierarchy"),Av={error:"log",fatal:"error",warn:"error",info:"log",debug:"log",trace:"log"};function Cf(t,e){const n={logger:e,parent:t[Qu]};e[Qu]=n}function Sv(t,e,n){const r={};e.forEach(s=>{r[s]=n[s]?n[s]:oa[s]||oa[Av[s]||"log"]||qi}),t[ch]=r}function Iv(t,e){return Array.isArray(t)?t.filter(function(n){return n!=="!stdSerializers.err"}):t===!0?Object.keys(e):!1}function Hr(t){t=t||{},t.browser=t.browser||{};const e=t.browser.transmit;if(e&&typeof e.send!="function")throw Error("pino: transmit option must have a send function");const n=t.browser.write||oa;t.browser.write&&(t.browser.asObject=!0);const r=t.serializers||{},s=Iv(t.browser.serialize,r);let i=t.browser.serialize;Array.isArray(t.browser.serialize)&&t.browser.serialize.indexOf("!stdSerializers.err")>-1&&(i=!1);const o=Object.keys(t.customLevels||{}),a=["error","fatal","warn","info","debug","trace"].concat(o);typeof n=="function"&&a.forEach(function(g){n[g]=n}),(t.enabled===!1||t.browser.disabled)&&(t.level="silent");const c=t.level||"info",l=Object.create(n);l.log||(l.log=qi),Sv(l,a,n),Cf({},l),Object.defineProperty(l,"levelVal",{get:d}),Object.defineProperty(l,"level",{get:h,set:f});const u={transmit:e,serialize:s,asObject:t.browser.asObject,asObjectBindingsOnly:t.browser.asObjectBindingsOnly,formatters:t.browser.formatters,levels:a,timestamp:kv(t),messageKey:t.messageKey||"msg",onChild:t.onChild||qi};l.levels=Nv(t),l.level=c,l.isLevelEnabled=function(g){return this.levels.values[g]?this.levels.values[g]>=this.levels.values[this.level]:!1},l.setMaxListeners=l.getMaxListeners=l.emit=l.addListener=l.on=l.prependListener=l.once=l.prependOnceListener=l.removeListener=l.removeAllListeners=l.listeners=l.listenerCount=l.eventNames=l.write=l.flush=qi,l.serializers=r,l._serialize=s,l._stdErrSerialize=i,l.child=function(...g){return p.call(this,u,...g)},e&&(l._logEvent=ed());function d(){return ws(this.level,this)}function h(){return this._level}function f(g){if(g!=="silent"&&!this.levels.values[g])throw Error("unknown level "+g);this._level=g,Ps(this,u,l,"error"),Ps(this,u,l,"fatal"),Ps(this,u,l,"warn"),Ps(this,u,l,"info"),Ps(this,u,l,"debug"),Ps(this,u,l,"trace"),o.forEach(y=>{Ps(this,u,l,y)})}function p(g,y,v){if(!y)throw new Error("missing bindings for child Pino");v=v||{},s&&y.serializers&&(v.serializers=y.serializers);const A=v.serializers;if(s&&A){var E=Object.assign({},r,A),C=t.browser.serialize===!0?Object.keys(E):s;delete y.serializers,lh([y],C,E,this._stdErrSerialize)}function O($){this._childLevel=($._childLevel|0)+1,this.bindings=y,E&&(this.serializers=E,this._serialize=C),e&&(this._logEvent=ed([].concat($._logEvent.bindings,y)))}O.prototype=this;const k=new O(this);return Cf(this,k),k.child=function(...$){return p.call(this,g,...$)},k.level=v.level||this.level,g.onChild(k),k}return l}function Nv(t){const e=t.customLevels||{},n=Object.assign({},Hr.levels.values,e),r=Object.assign({},Hr.levels.labels,Tv(e));return{values:n,labels:r}}function Tv(t){const e={};return Object.keys(t).forEach(function(n){e[t[n]]=n}),e}Hr.levels={values:{fatal:60,error:50,warn:40,info:30,debug:20,trace:10},labels:{10:"trace",20:"debug",30:"info",40:"warn",50:"error",60:"fatal"}},Hr.stdSerializers=Cv,Hr.stdTimeFunctions=Object.assign({},{nullTime:vy,epochTime:Cy,unixTime:Uv,isoTime:$v});function Ov(t){const e=[];t.bindings&&e.push(t.bindings);let n=t[Qu];for(;n.parent;)n=n.parent,n.logger.bindings&&e.push(n.logger.bindings);return e.reverse()}function Ps(t,e,n,r){if(Object.defineProperty(t,r,{value:ws(t.level,n)>ws(r,n)?qi:n[ch][r],writable:!0,enumerable:!0,configurable:!0}),t[r]===qi){if(!e.transmit)return;const i=e.transmit.level||t.level,o=ws(i,n);if(ws(r,n)<o)return}t[r]=xv(t,e,n,r);const s=Ov(t);s.length!==0&&(t[r]=Rv(s,t[r]))}function Rv(t,e){return function(){return e.apply(this,[...t,...arguments])}}function xv(t,e,n,r){return function(s){return function(){const i=e.timestamp(),o=new Array(arguments.length),a=Object.getPrototypeOf&&Object.getPrototypeOf(this)===oa?oa:this;for(var c=0;c<o.length;c++)o[c]=arguments[c];var l=!1;if(e.serialize&&(lh(o,this._serialize,this.serializers,this._stdErrSerialize),l=!0),e.asObject||e.formatters?s.call(a,...Pv(this,r,o,i,e)):s.apply(a,o),e.transmit){const u=e.transmit.level||t._level,d=ws(u,n),h=ws(r,n);if(h<d)return;Dv(this,{ts:i,methodLevel:r,methodValue:h,transmitLevel:u,transmitValue:n.levels.values[e.transmit.level||t._level],send:e.transmit.send,val:ws(t._level,n)},o,l)}}}(t[ch][r])}function Pv(t,e,n,r,s){const{level:i,log:o=d=>d}=s.formatters||{},a=n.slice();let c=a[0];const l={};let u=(t._childLevel|0)+1;if(u<1&&(u=1),r&&(l.time=r),i){const d=i(e,t.levels.values[e]);Object.assign(l,d)}else l.level=t.levels.values[e];if(s.asObjectBindingsOnly){if(c!==null&&typeof c=="object")for(;u--&&typeof a[0]=="object";)Object.assign(l,a.shift());return[o(l),...a]}else{if(c!==null&&typeof c=="object"){for(;u--&&typeof a[0]=="object";)Object.assign(l,a.shift());c=a.length?vf(a.shift(),a):void 0}else typeof c=="string"&&(c=vf(a.shift(),a));return c!==void 0&&(l[s.messageKey]=c),[o(l)]}}function lh(t,e,n,r){for(const s in t)if(r&&t[s]instanceof Error)t[s]=Hr.stdSerializers.err(t[s]);else if(typeof t[s]=="object"&&!Array.isArray(t[s])&&e)for(const i in t[s])e.indexOf(i)>-1&&i in n&&(t[s][i]=n[i](t[s][i]))}function Dv(t,e,n,r=!1){const s=e.send,i=e.ts,o=e.methodLevel,a=e.methodValue,c=e.val,l=t._logEvent.bindings;r||lh(n,t._serialize||Object.keys(t.serializers),t.serializers,t._stdErrSerialize===void 0?!0:t._stdErrSerialize),t._logEvent.ts=i,t._logEvent.messages=n.filter(function(u){return l.indexOf(u)===-1}),t._logEvent.level.label=o,t._logEvent.level.value=a,s(o,t._logEvent,c),t._logEvent=ed(l)}function ed(t){return{ts:0,messages:[],bindings:t||[],level:{label:"",value:0}}}function Af(t){const e={type:t.constructor.name,msg:t.message,stack:t.stack};for(const n in t)e[n]===void 0&&(e[n]=t[n]);return e}function kv(t){return typeof t.timestamp=="function"?t.timestamp:t.timestamp===!1?vy:Cy}function Ba(){return{}}function Bl(t){return t}function qi(){}function vy(){return!1}function Cy(){return Date.now()}function Uv(){return Math.round(Date.now()/1e3)}function $v(){return new Date(Date.now()).toISOString()}function Bv(){function t(e){return typeof e<"u"&&e}try{return typeof globalThis<"u"||Object.defineProperty(Object.prototype,"globalThis",{get:function(){return delete Object.prototype.globalThis,this.globalThis=this},configurable:!0}),globalThis}catch{return t(self)||t(window)||t(this)||{}}}pr.exports.default=Hr;pr.exports.pino=Hr;const Fv={level:"info"},al="custom_context",uh=1e3*1024;var Lv=Object.defineProperty,Mv=(t,e,n)=>e in t?Lv(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,fs=(t,e,n)=>Mv(t,typeof e!="symbol"?e+"":e,n);let jv=class{constructor(e){fs(this,"nodeValue"),fs(this,"sizeInBytes"),fs(this,"next"),this.nodeValue=e,this.sizeInBytes=new TextEncoder().encode(this.nodeValue).length,this.next=null}get value(){return this.nodeValue}get size(){return this.sizeInBytes}},Sf=class{constructor(e){fs(this,"lengthInNodes"),fs(this,"sizeInBytes"),fs(this,"head"),fs(this,"tail"),fs(this,"maxSizeInBytes"),this.head=null,this.tail=null,this.lengthInNodes=0,this.maxSizeInBytes=e,this.sizeInBytes=0}append(e){const n=new jv(e);if(n.size>this.maxSizeInBytes)throw new Error(`[LinkedList] Value too big to insert into list: ${e} with size ${n.size}`);for(;this.size+n.size>this.maxSizeInBytes;)this.shift();this.head?(this.tail&&(this.tail.next=n),this.tail=n):(this.head=n,this.tail=n),this.lengthInNodes++,this.sizeInBytes+=n.size}shift(){if(!this.head)return;const e=this.head;this.head=this.head.next,this.head||(this.tail=null),this.lengthInNodes--,this.sizeInBytes-=e.size}toArray(){const e=[];let n=this.head;for(;n!==null;)e.push(n.value),n=n.next;return e}get length(){return this.lengthInNodes}get size(){return this.sizeInBytes}toOrderedArray(){return Array.from(this)}[Symbol.iterator](){let e=this.head;return{next:()=>{if(!e)return{done:!0,value:null};const n=e.value;return e=e.next,{done:!1,value:n}}}}};const Wv=t=>JSON.stringify(t,(e,n)=>typeof n=="bigint"?n.toString()+"n":n);function If(t){return typeof t=="string"?t:Wv(t)||""}var qv=Object.defineProperty,Hv=(t,e,n)=>e in t?qv(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Fa=(t,e,n)=>Hv(t,typeof e!="symbol"?e+"":e,n);let Ay=class{constructor(e,n=uh){Fa(this,"logs"),Fa(this,"level"),Fa(this,"levelValue"),Fa(this,"MAX_LOG_SIZE_IN_BYTES"),this.level=e??"error",this.levelValue=pr.exports.levels.values[this.level],this.MAX_LOG_SIZE_IN_BYTES=n,this.logs=new Sf(this.MAX_LOG_SIZE_IN_BYTES)}forwardToConsole(e,n){n===pr.exports.levels.values.error?console.error(e):n===pr.exports.levels.values.warn?console.warn(e):n===pr.exports.levels.values.debug?console.debug(e):n===pr.exports.levels.values.trace?console.trace(e):console.log(e)}appendToLogs(e){this.logs.append(If({timestamp:new Date().toISOString(),log:e}));const n=typeof e=="string"?JSON.parse(e).level:e.level;n>=this.levelValue&&this.forwardToConsole(e,n)}getLogs(){return this.logs}clearLogs(){this.logs=new Sf(this.MAX_LOG_SIZE_IN_BYTES)}getLogArray(){return Array.from(this.logs)}logsToBlob(e){const n=this.getLogArray();return n.push(If({extraMetadata:e})),new Blob(n,{type:"application/json"})}};var zv=Object.defineProperty,Vv=(t,e,n)=>e in t?zv(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Kv=(t,e,n)=>Vv(t,typeof e!="symbol"?e+"":e,n);let Gv=class{constructor(e,n=uh){Kv(this,"baseChunkLogger"),this.baseChunkLogger=new Ay(e,n)}write(e){this.baseChunkLogger.appendToLogs(e)}getLogs(){return this.baseChunkLogger.getLogs()}clearLogs(){this.baseChunkLogger.clearLogs()}getLogArray(){return this.baseChunkLogger.getLogArray()}logsToBlob(e){return this.baseChunkLogger.logsToBlob(e)}downloadLogsBlobInBrowser(e){const n=URL.createObjectURL(this.logsToBlob(e)),r=document.createElement("a");r.href=n,r.download=`walletconnect-logs-${new Date().toISOString()}.txt`,document.body.appendChild(r),r.click(),document.body.removeChild(r),URL.revokeObjectURL(n)}};var Yv=Object.defineProperty,Zv=(t,e,n)=>e in t?Yv(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Jv=(t,e,n)=>Zv(t,typeof e!="symbol"?e+"":e,n);let Xv=class{constructor(e,n=uh){Jv(this,"baseChunkLogger"),this.baseChunkLogger=new Ay(e,n)}write(e){this.baseChunkLogger.appendToLogs(e)}getLogs(){return this.baseChunkLogger.getLogs()}clearLogs(){this.baseChunkLogger.clearLogs()}getLogArray(){return this.baseChunkLogger.getLogArray()}logsToBlob(e){return this.baseChunkLogger.logsToBlob(e)}};var Qv=Object.defineProperty,eC=Object.defineProperties,tC=Object.getOwnPropertyDescriptors,Nf=Object.getOwnPropertySymbols,nC=Object.prototype.hasOwnProperty,rC=Object.prototype.propertyIsEnumerable,Tf=(t,e,n)=>e in t?Qv(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,xc=(t,e)=>{for(var n in e||(e={}))nC.call(e,n)&&Tf(t,n,e[n]);if(Nf)for(var n of Nf(e))rC.call(e,n)&&Tf(t,n,e[n]);return t},Pc=(t,e)=>eC(t,tC(e));function dh(t){return Pc(xc({},t),{level:(t==null?void 0:t.level)||Fv.level})}function sC(t,e,n=al){return t[n]=e,t}function yn(t,e=al){return t[e]||""}function iC(t,e,n=al){const r=yn(t,n);return r.trim()?`${r}/${e}`:e}function wn(t,e,n=al){const r=iC(t,e,n),s=t.child({context:r});return sC(s,r,n)}function oC(t){var e,n;const r=new Gv((e=t.opts)==null?void 0:e.level,t.maxSizeInBytes);return{logger:pr.exports(Pc(xc({},t.opts),{level:"trace",browser:Pc(xc({},(n=t.opts)==null?void 0:n.browser),{write:s=>r.write(s)})})),chunkLoggerController:r}}function aC(t){var e;const n=new Xv((e=t.opts)==null?void 0:e.level,t.maxSizeInBytes);return{logger:pr.exports(Pc(xc({},t.opts),{level:"trace"}),n),chunkLoggerController:n}}function cl(t){return typeof t.loggerOverride<"u"&&typeof t.loggerOverride!="string"?{logger:t.loggerOverride,chunkLoggerController:null}:typeof window<"u"?oC(t):aC(t)}class cC{constructor(e){var i;const n=dh({level:Qb}),{logger:r,chunkLoggerController:s}=cl({opts:n});this.logger=wn(r,this.constructor.name),this.chunkLoggerController=s,typeof window<"u"&&((i=this.chunkLoggerController)!=null&&i.downloadLogsBlobInBrowser)&&(window.downloadAppKitLogsBlob||(window.downloadAppKitLogsBlob={}),window.downloadAppKitLogsBlob.sdk=()=>{var o;(o=this.chunkLoggerController)!=null&&o.downloadLogsBlobInBrowser&&this.chunkLoggerController.downloadLogsBlobInBrowser({projectId:e})})}}class lC{constructor({projectId:e,chainId:n,enableLogger:r=!0,onTimeout:s,abortController:i,getActiveCaipNetwork:o,getCaipNetworks:a,enableCloudAuthAccount:c,metadata:l,sdkVersion:u,sdkType:d}){this.openRpcRequests=new Map,this.isInitialized=!1,r&&(this.w3mLogger=new cC(e)),this.abortController=i,this.getActiveCaipNetwork=o,this.getCaipNetworks=a;const h=this.getRpcUrl(n);this.projectId=e,this.sdkVersion=u,this.sdkType=d,this.metadata=l,this.w3mFrame=new Ev({projectId:e,isAppClient:!0,chainId:n,enableLogger:r,rpcUrl:h,enableCloudAuthAccount:c}),this.onTimeout=s,this.getLoginEmailUsed()&&this.createFrame()}async createFrame(){this.w3mFrame.initFrame(),this.initPromise=new Promise(e=>{this.w3mFrame.events.onFrameEvent(n=>{n.type===ae.FRAME_READY&&setTimeout(()=>{e()},500)})}),await this.initPromise,await this.syncDappData({metadata:this.metadata,projectId:this.projectId,sdkVersion:this.sdkVersion,sdkType:this.sdkType}),await this.getSmartAccountEnabledNetworks(),this.isInitialized=!0,this.initPromise=void 0}async init(){if(!this.isInitialized){if(this.initPromise){await this.initPromise;return}await this.createFrame()}}getLoginEmailUsed(){return!!gt.get(ae.EMAIL_LOGIN_USED_KEY)}getEmail(){return gt.get(ae.EMAIL)}getUsername(){return gt.get(ae.SOCIAL_USERNAME)}async reload(){var e;try{await this.appEvent({type:ae.APP_RELOAD})}catch(n){throw(e=this.w3mLogger)==null||e.logger.error({error:n},"Error reloading iframe"),n}}async connectEmail(e){var n;try{In.checkIfAllowedToTriggerEmail(),await this.init();const r=await this.appEvent({type:ae.APP_CONNECT_EMAIL,payload:e});return this.setNewLastEmailLoginTime(),r}catch(r){throw(n=this.w3mLogger)==null||n.logger.error({error:r},"Error connecting email"),r}}async connectDevice(){var e;try{return this.appEvent({type:ae.APP_CONNECT_DEVICE})}catch(n){throw(e=this.w3mLogger)==null||e.logger.error({error:n},"Error connecting device"),n}}async connectOtp(e){var n;try{return this.appEvent({type:ae.APP_CONNECT_OTP,payload:e})}catch(r){throw(n=this.w3mLogger)==null||n.logger.error({error:r},"Error connecting otp"),r}}async isConnected(){var e;try{if(!this.getLoginEmailUsed())return{isConnected:!1};const n=await this.appEvent({type:ae.APP_IS_CONNECTED});return n!=null&&n.isConnected||this.deleteAuthLoginCache(),n}catch(n){throw this.deleteAuthLoginCache(),(e=this.w3mLogger)==null||e.logger.error({error:n},"Error checking connection"),n}}async getChainId(){var e;try{const n=await this.appEvent({type:ae.APP_GET_CHAIN_ID});return this.setLastUsedChainId(n.chainId),n}catch(n){throw(e=this.w3mLogger)==null||e.logger.error({error:n},"Error getting chain id"),n}}async getSocialRedirectUri(e){var n;try{return await this.init(),this.appEvent({type:ae.APP_GET_SOCIAL_REDIRECT_URI,payload:e})}catch(r){throw(n=this.w3mLogger)==null||n.logger.error({error:r},"Error getting social redirect uri"),r}}async updateEmail(e){var n;try{const r=await this.appEvent({type:ae.APP_UPDATE_EMAIL,payload:e});return this.setNewLastEmailLoginTime(),r}catch(r){throw(n=this.w3mLogger)==null||n.logger.error({error:r},"Error updating email"),r}}async updateEmailPrimaryOtp(e){var n;try{return this.appEvent({type:ae.APP_UPDATE_EMAIL_PRIMARY_OTP,payload:e})}catch(r){throw(n=this.w3mLogger)==null||n.logger.error({error:r},"Error updating email primary otp"),r}}async updateEmailSecondaryOtp(e){var n;try{const r=await this.appEvent({type:ae.APP_UPDATE_EMAIL_SECONDARY_OTP,payload:e});return this.setLoginSuccess(r.newEmail),r}catch(r){throw(n=this.w3mLogger)==null||n.logger.error({error:r},"Error updating email secondary otp"),r}}async syncTheme(e){var n;try{return this.appEvent({type:ae.APP_SYNC_THEME,payload:e})}catch(r){throw(n=this.w3mLogger)==null||n.logger.error({error:r},"Error syncing theme"),r}}async syncDappData(e){var n;try{return this.appEvent({type:ae.APP_SYNC_DAPP_DATA,payload:e})}catch(r){throw(n=this.w3mLogger)==null||n.logger.error({error:r},"Error syncing dapp data"),r}}async getSmartAccountEnabledNetworks(){var e;try{const n=await this.appEvent({type:ae.APP_GET_SMART_ACCOUNT_ENABLED_NETWORKS});return this.persistSmartAccountEnabledNetworks(n.smartAccountEnabledNetworks),n}catch(n){throw this.persistSmartAccountEnabledNetworks([]),(e=this.w3mLogger)==null||e.logger.error({error:n},"Error getting smart account enabled networks"),n}}async setPreferredAccount(e){var n;try{return this.appEvent({type:ae.APP_SET_PREFERRED_ACCOUNT,payload:{type:e}})}catch(r){throw(n=this.w3mLogger)==null||n.logger.error({error:r},"Error setting preferred account"),r}}async connect(e){var n,r;if(e!=null&&e.socialUri)try{await this.init();const s=this.getRpcUrl(e.chainId),i=await this.appEvent({type:ae.APP_CONNECT_SOCIAL,payload:{uri:e.socialUri,preferredAccountType:e.preferredAccountType,chainId:e.chainId,siwxMessage:e.siwxMessage,rpcUrl:s}});return i.userName&&this.setSocialLoginSuccess(i.userName),this.setLoginSuccess(i.email),this.setLastUsedChainId(i.chainId),this.user=i,i}catch(s){throw(n=this.w3mLogger)==null||n.logger.error({error:s},"Error connecting social"),s}else try{const s=(e==null?void 0:e.chainId)||this.getLastUsedChainId()||1,i=await this.getUser({chainId:s,preferredAccountType:e==null?void 0:e.preferredAccountType,siwxMessage:e==null?void 0:e.siwxMessage,rpcUrl:this.getRpcUrl(s)});return this.setLoginSuccess(i.email),this.setLastUsedChainId(i.chainId),this.user=i,i}catch(s){throw(r=this.w3mLogger)==null||r.logger.error({error:s},"Error connecting"),s}}async getUser(e){var n;try{await this.init();const r=(e==null?void 0:e.chainId)||this.getLastUsedChainId()||1,s=await this.appEvent({type:ae.APP_GET_USER,payload:{...e,chainId:r,rpcUrl:this.getRpcUrl(r)}});return this.user=s,s}catch(r){throw(n=this.w3mLogger)==null||n.logger.error({error:r},"Error connecting"),r}}async connectSocial({uri:e,chainId:n,preferredAccountType:r}){var s;try{await this.init();const i=this.getRpcUrl(n),o=await this.appEvent({type:ae.APP_CONNECT_SOCIAL,payload:{uri:e,chainId:n,rpcUrl:i,preferredAccountType:r}});return o.userName&&this.setSocialLoginSuccess(o.userName),o}catch(i){throw(s=this.w3mLogger)==null||s.logger.error({error:i},"Error connecting social"),i}}async getFarcasterUri(){var e;try{return await this.init(),await this.appEvent({type:ae.APP_GET_FARCASTER_URI})}catch(n){throw(e=this.w3mLogger)==null||e.logger.error({error:n},"Error getting farcaster uri"),n}}async connectFarcaster(){var e;try{const n=await this.appEvent({type:ae.APP_CONNECT_FARCASTER});return n.userName&&this.setSocialLoginSuccess(n.userName),n}catch(n){throw(e=this.w3mLogger)==null||e.logger.error({error:n},"Error connecting farcaster"),n}}async switchNetwork({chainId:e}){var n;try{const r=this.getRpcUrl(e),s=await this.appEvent({type:ae.APP_SWITCH_NETWORK,payload:{chainId:e,rpcUrl:r}});return this.setLastUsedChainId(s.chainId),s}catch(r){throw(n=this.w3mLogger)==null||n.logger.error({error:r},"Error switching network"),r}}async disconnect(){var e;try{return this.deleteAuthLoginCache(),await new Promise(async r=>{const s=setTimeout(()=>{r()},3e3);await this.appEvent({type:ae.APP_SIGN_OUT}),clearTimeout(s),r()})}catch(n){throw(e=this.w3mLogger)==null||e.logger.error({error:n},"Error disconnecting"),n}}async request(e){var r,s,i,o,a;const n=e;try{if(at.GET_CHAIN_ID===e.method)return this.getLastUsedChainId();const c=e.chainNamespace||"eip155",l=(r=this.getActiveCaipNetwork(c))==null?void 0:r.id;n.chainNamespace=c,n.chainId=l,n.rpcUrl=this.getRpcUrl(l),(s=this.rpcRequestHandler)==null||s.call(this,e);const u=await this.appEvent({type:ae.APP_RPC_REQUEST,payload:n});return(i=this.rpcSuccessHandler)==null||i.call(this,u,n),u}catch(c){throw(o=this.rpcErrorHandler)==null||o.call(this,c,n),(a=this.w3mLogger)==null||a.logger.error({error:c},"Error requesting"),c}}onRpcRequest(e){this.rpcRequestHandler=e}onRpcSuccess(e){this.rpcSuccessHandler=e}onRpcError(e){this.rpcErrorHandler=e}onIsConnected(e){this.w3mFrame.events.onFrameEvent(n=>{n.type===ae.FRAME_IS_CONNECTED_SUCCESS&&n.payload.isConnected&&e()})}onNotConnected(e){this.w3mFrame.events.onFrameEvent(n=>{n.type===ae.FRAME_IS_CONNECTED_ERROR&&e(),n.type===ae.FRAME_IS_CONNECTED_SUCCESS&&!n.payload.isConnected&&e()})}onConnect(e){this.w3mFrame.events.onFrameEvent(n=>{n.type===ae.FRAME_GET_USER_SUCCESS&&e(n.payload)})}onSocialConnected(e){this.w3mFrame.events.onFrameEvent(n=>{n.type===ae.FRAME_CONNECT_SOCIAL_SUCCESS&&e(n.payload)})}async getCapabilities(){try{return await this.request({method:"wallet_getCapabilities"})||{}}catch{return{}}}onSetPreferredAccount(e){this.w3mFrame.events.onFrameEvent(n=>{n.type===ae.FRAME_SET_PREFERRED_ACCOUNT_SUCCESS?e(n.payload):n.type===ae.FRAME_SET_PREFERRED_ACCOUNT_ERROR&&e({type:at.ACCOUNT_TYPES.EOA})})}getAvailableChainIds(){return Object.keys(this.w3mFrame.networks)}async rejectRpcRequests(){var e;try{await Promise.all(Array.from(this.openRpcRequests.values()).map(async({abortController:n,method:r})=>{at.SAFE_RPC_METHODS.includes(r)||n.abort(),await this.appEvent({type:ae.APP_RPC_ABORT})})),this.openRpcRequests.clear()}catch(n){(e=this.w3mLogger)==null||e.logger.error({error:n},"Error aborting RPC request")}}async appEvent(e){let n,r;function s(c){return c.replace("@w3m-app/","")}const i=[ae.APP_SYNC_DAPP_DATA,ae.APP_SYNC_THEME,ae.APP_SET_PREFERRED_ACCOUNT],o=s(e.type);return!this.w3mFrame.iframeIsReady&&!i.includes(e.type)&&(r=setTimeout(()=>{var c;(c=this.onTimeout)==null||c.call(this,"iframe_load_failed"),this.abortController.abort()},2e4)),await this.w3mFrame.frameLoadPromise,clearTimeout(r),[ae.APP_CONNECT_EMAIL,ae.APP_CONNECT_DEVICE,ae.APP_CONNECT_OTP,ae.APP_CONNECT_SOCIAL,ae.APP_GET_SOCIAL_REDIRECT_URI].map(s).includes(o)&&(n=setTimeout(()=>{var c;(c=this.onTimeout)==null||c.call(this,"iframe_request_timeout"),this.abortController.abort()},12e4)),new Promise((c,l)=>{var f,p,g;const u=Math.random().toString(36).substring(7);(g=(f=this.w3mLogger)==null?void 0:(p=f.logger).info)==null||g.call(p,{event:e,id:u},"Sending app event"),this.w3mFrame.events.postAppEvent({...e,id:u});const d=new AbortController;if(o==="RPC_REQUEST"){const y=e;this.openRpcRequests.set(u,{...y.payload,abortController:d})}d.signal.addEventListener("abort",()=>{o==="RPC_REQUEST"?l(new Error("Request was aborted")):o!=="GET_FARCASTER_URI"&&l(new Error("Something went wrong"))});const h=(y,v)=>{var A,E,C;y.id===u&&((E=v==null?void 0:(A=v.logger).info)==null||E.call(A,{framEvent:y,id:u},"Received frame response"),this.openRpcRequests.delete(y.id),y.type===`@w3m-frame/${o}_SUCCESS`?(n&&clearTimeout(n),r&&clearTimeout(r),"payload"in y&&c(y.payload),c(void 0)):y.type===`@w3m-frame/${o}_ERROR`&&(n&&clearTimeout(n),r&&clearTimeout(r),"payload"in y&&l(new Error(((C=y.payload)==null?void 0:C.message)||"An error occurred")),l(new Error("An error occurred"))))};this.w3mFrame.events.registerFrameEventHandler(u,y=>h(y,this.w3mLogger),this.abortController.signal)})}setNewLastEmailLoginTime(){gt.set(ae.LAST_EMAIL_LOGIN_TIME,Date.now().toString())}setSocialLoginSuccess(e){gt.set(ae.SOCIAL_USERNAME,e)}setLoginSuccess(e){e&>.set(ae.EMAIL,e),gt.set(ae.EMAIL_LOGIN_USED_KEY,"true"),gt.delete(ae.LAST_EMAIL_LOGIN_TIME)}deleteAuthLoginCache(){gt.delete(ae.EMAIL_LOGIN_USED_KEY),gt.delete(ae.EMAIL),gt.delete(ae.LAST_USED_CHAIN_KEY),gt.delete(ae.SOCIAL_USERNAME)}setLastUsedChainId(e){e&>.set(ae.LAST_USED_CHAIN_KEY,String(e))}getLastUsedChainId(){const e=gt.get(ae.LAST_USED_CHAIN_KEY)??void 0,n=Number(e);return isNaN(n)?e:n}persistSmartAccountEnabledNetworks(e){gt.set(ae.SMART_ACCOUNT_ENABLED_NETWORKS,e.join(","))}getRpcUrl(e){var i,o;let n=e===void 0?void 0:"eip155";typeof e=="string"&&(e.includes(":")?n=(i=wt.parseCaipNetworkId(e))==null?void 0:i.chainNamespace:Number.isInteger(Number(e))?n="eip155":n="solana");const r=this.getCaipNetworks(n),s=e?r.find(a=>String(a.id)===String(e)||a.caipNetworkId===e):r[0];return(o=s==null?void 0:s.rpcUrls.default.http)==null?void 0:o[0]}}var zt=vb();const uC=wb(zt),dC=Cb({__proto__:null,default:uC},[zt]);async function ao(...t){const e=await fetch(...t);if(!e.ok)throw new Error(`HTTP status code: ${e.status}`,{cause:e});return e}class va{constructor({baseUrl:e,clientId:n}){this.baseUrl=e,this.clientId=n}async get({headers:e,signal:n,cache:r,...s}){const i=this.createUrl(s);return(await ao(i,{method:"GET",headers:e,signal:n,cache:r})).json()}async getBlob({headers:e,signal:n,...r}){const s=this.createUrl(r);return(await ao(s,{method:"GET",headers:e,signal:n})).blob()}async post({body:e,headers:n,signal:r,...s}){const i=this.createUrl(s);return(await ao(i,{method:"POST",headers:n,body:e?JSON.stringify(e):void 0,signal:r})).json()}async put({body:e,headers:n,signal:r,...s}){const i=this.createUrl(s);return(await ao(i,{method:"PUT",headers:n,body:e?JSON.stringify(e):void 0,signal:r})).json()}async delete({body:e,headers:n,signal:r,...s}){const i=this.createUrl(s);return(await ao(i,{method:"DELETE",headers:n,body:e?JSON.stringify(e):void 0,signal:r})).json()}createUrl({path:e,params:n}){const r=new URL(e,this.baseUrl);return n&&Object.entries(n).forEach(([s,i])=>{i&&r.searchParams.append(s,i)}),this.clientId&&r.searchParams.append("clientId",this.clientId),r}sendBeacon({body:e,...n}){const r=this.createUrl(n);return navigator.sendBeacon(r.toString(),e?JSON.stringify(e):void 0)}}const td={getFeatureValue(t,e){const n=e==null?void 0:e[t];return n===void 0?Oe.DEFAULT_FEATURES[t]:n},filterSocialsByPlatform(t){if(!t||!t.length)return t;let e=t;return J.isTelegram()&&(J.isIos()&&(e=e.filter(n=>n!=="google")),J.isMac()&&(e=e.filter(n=>n!=="x")),J.isAndroid()&&(e=e.filter(n=>!["facebook","x"].includes(n)))),J.isMobile()&&(e=e.filter(n=>n!=="facebook")),e},isSocialsEnabled(){var t,e,n,r;return Array.isArray((t=B.state.features)==null?void 0:t.socials)&&((e=B.state.features)==null?void 0:e.socials.length)>0||Array.isArray((n=B.state.remoteFeatures)==null?void 0:n.socials)&&((r=B.state.remoteFeatures)==null?void 0:r.socials.length)>0},isEmailEnabled(){var t,e;return!!((t=B.state.features)!=null&&t.email||(e=B.state.remoteFeatures)!=null&&e.email)}},ue=Xe({features:Oe.DEFAULT_FEATURES,projectId:"",sdkType:"appkit",sdkVersion:"html-wagmi-undefined",defaultAccountTypes:Oe.DEFAULT_ACCOUNT_TYPES,enableNetworkSwitch:!0,experimental_preferUniversalLinks:!1,remoteFeatures:{},enableMobileFullScreen:!1,coinbasePreference:"all"}),B={state:ue,subscribeKey(t,e){return Pt(ue,t,e)},setOptions(t){Object.assign(ue,t)},setRemoteFeatures(t){var n,r;if(!t)return;const e={...ue.remoteFeatures,...t};ue.remoteFeatures=e,(n=ue.remoteFeatures)!=null&&n.socials&&(ue.remoteFeatures.socials=td.filterSocialsByPlatform(ue.remoteFeatures.socials)),(r=ue.features)!=null&&r.pay&&(ue.remoteFeatures.email=!1,ue.remoteFeatures.socials=!1)},setFeatures(t){var n;if(!t)return;ue.features||(ue.features=Oe.DEFAULT_FEATURES);const e={...ue.features,...t};ue.features=e,(n=ue.features)!=null&&n.pay&&ue.remoteFeatures&&(ue.remoteFeatures.email=!1,ue.remoteFeatures.socials=!1)},setProjectId(t){ue.projectId=t},setCustomRpcUrls(t){ue.customRpcUrls=t},setAllWallets(t){ue.allWallets=t},setIncludeWalletIds(t){ue.includeWalletIds=t},setExcludeWalletIds(t){ue.excludeWalletIds=t},setFeaturedWalletIds(t){ue.featuredWalletIds=t},setTokens(t){ue.tokens=t},setTermsConditionsUrl(t){ue.termsConditionsUrl=t},setPrivacyPolicyUrl(t){ue.privacyPolicyUrl=t},setCustomWallets(t){ue.customWallets=t},setIsSiweEnabled(t){ue.isSiweEnabled=t},setIsUniversalProvider(t){ue.isUniversalProvider=t},setSdkVersion(t){ue.sdkVersion=t},setMetadata(t){ue.metadata=t},setDisableAppend(t){ue.disableAppend=t},setEIP6963Enabled(t){ue.enableEIP6963=t},setDebug(t){ue.debug=t},setEnableWalletGuide(t){ue.enableWalletGuide=t},setEnableAuthLogger(t){ue.enableAuthLogger=t},setEnableWallets(t){ue.enableWallets=t},setPreferUniversalLinks(t){ue.experimental_preferUniversalLinks=t},setSIWX(t){if(t)for(const[e,n]of Object.entries(Oe.SIWX_DEFAULTS))t[e]??(t[e]=n);ue.siwx=t},setConnectMethodsOrder(t){ue.features={...ue.features,connectMethodsOrder:t}},setWalletFeaturesOrder(t){ue.features={...ue.features,walletFeaturesOrder:t}},setSocialsOrder(t){ue.remoteFeatures={...ue.remoteFeatures,socials:t}},setCollapseWallets(t){ue.features={...ue.features,collapseWallets:t}},setEnableEmbedded(t){ue.enableEmbedded=t},setAllowUnsupportedChain(t){ue.allowUnsupportedChain=t},setManualWCControl(t){ue.manualWCControl=t},setEnableNetworkSwitch(t){ue.enableNetworkSwitch=t},setEnableMobileFullScreen(t){ue.enableMobileFullScreen=J.isMobile()&&t},setEnableReconnect(t){ue.enableReconnect=t},setCoinbasePreference(t){ue.coinbasePreference=t},setDefaultAccountTypes(t={}){Object.entries(t).forEach(([e,n])=>{n&&(ue.defaultAccountTypes[e]=n)})},setUniversalProviderConfigOverride(t){ue.universalProviderConfigOverride=t},getUniversalProviderConfigOverride(){return ue.universalProviderConfigOverride},getSnapshot(){return Vo(ue)}},js=Object.freeze({message:"",variant:"success",svg:void 0,open:!1,autoClose:!0}),ft=Xe({...js}),hC={state:ft,subscribeKey(t,e){return Pt(ft,t,e)},showLoading(t,e={}){this._showMessage({message:t,variant:"loading",...e})},showSuccess(t){this._showMessage({message:t,variant:"success"})},showSvg(t,e){this._showMessage({message:t,svg:e})},showError(t){const e=J.parseError(t);this._showMessage({message:e,variant:"error"})},hide(){ft.message=js.message,ft.variant=js.variant,ft.svg=js.svg,ft.open=js.open,ft.autoClose=js.autoClose},_showMessage({message:t,svg:e,variant:n="success",autoClose:r=js.autoClose}){ft.open?(ft.open=!1,setTimeout(()=>{ft.message=t,ft.variant=n,ft.svg=e,ft.open=!0,ft.autoClose=r},150)):(ft.message=t,ft.variant=n,ft.svg=e,ft.open=!0,ft.autoClose=r)}},gr=hC,fC={purchaseCurrencies:[{id:"2b92315d-eab7-5bef-84fa-089a131333f5",name:"USD Coin",symbol:"USDC",networks:[{name:"ethereum-mainnet",display_name:"Ethereum",chain_id:"1",contract_address:"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"},{name:"polygon-mainnet",display_name:"Polygon",chain_id:"137",contract_address:"0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174"}]},{id:"2b92315d-eab7-5bef-84fa-089a131333f5",name:"Ether",symbol:"ETH",networks:[{name:"ethereum-mainnet",display_name:"Ethereum",chain_id:"1",contract_address:"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"},{name:"polygon-mainnet",display_name:"Polygon",chain_id:"137",contract_address:"0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174"}]}],paymentCurrencies:[{id:"USD",payment_method_limits:[{id:"card",min:"10.00",max:"7500.00"},{id:"ach_bank_account",min:"10.00",max:"25000.00"}]},{id:"EUR",payment_method_limits:[{id:"card",min:"10.00",max:"7500.00"},{id:"ach_bank_account",min:"10.00",max:"25000.00"}]}]},Sy=J.getBlockchainApiUrl(),Yt=Xe({clientId:null,api:new va({baseUrl:Sy,clientId:null}),supportedChains:{http:[],ws:[]}}),me={state:Yt,async get(t){const{st:e,sv:n}=me.getSdkProperties(),r=B.state.projectId,s={...t.params||{},st:e,sv:n,projectId:r};return Yt.api.get({...t,params:s})},getSdkProperties(){const{sdkType:t,sdkVersion:e}=B.state;return{st:t||"unknown",sv:e||"unknown"}},async isNetworkSupported(t){if(!t)return!1;try{Yt.supportedChains.http.length||await me.getSupportedNetworks()}catch{return!1}return Yt.supportedChains.http.includes(t)},async getSupportedNetworks(){try{const t=await me.get({path:"v1/supported-chains"});return Yt.supportedChains=t,t}catch{return Yt.supportedChains}},async fetchIdentity({address:t}){const e=j.getIdentityFromCacheForAddress(t);if(e)return e;const n=await me.get({path:`/v1/identity/${t}`,params:{sender:w.state.activeCaipAddress?J.getPlainAddress(w.state.activeCaipAddress):void 0}});return j.updateIdentityCache({address:t,identity:n,timestamp:Date.now()}),n},async fetchTransactions({account:t,cursor:e,signal:n,cache:r,chainId:s}){var c;if(!await me.isNetworkSupported((c=w.state.activeCaipNetwork)==null?void 0:c.caipNetworkId))return{data:[],next:void 0};const o=j.getTransactionsCacheForAddress({address:t,chainId:s});if(o)return o;const a=await me.get({path:`/v1/account/${t}/history`,params:{cursor:e,chainId:s},signal:n,cache:r});return j.updateTransactionsCache({address:t,chainId:s,timestamp:Date.now(),transactions:a}),a},async fetchSwapQuote({amount:t,userAddress:e,from:n,to:r,gasPrice:s}){var o;return await me.isNetworkSupported((o=w.state.activeCaipNetwork)==null?void 0:o.caipNetworkId)?me.get({path:"/v1/convert/quotes",headers:{"Content-Type":"application/json"},params:{amount:t,userAddress:e,from:n,to:r,gasPrice:s}}):{quotes:[]}},async fetchSwapTokens({chainId:t}){var n;return await me.isNetworkSupported((n=w.state.activeCaipNetwork)==null?void 0:n.caipNetworkId)?me.get({path:"/v1/convert/tokens",params:{chainId:t}}):{tokens:[]}},async getAddressBalance({caipNetworkId:t,address:e}){return Yt.api.post({path:`/v1?chainId=${t}&projectId=${B.state.projectId}`,body:{id:"1",jsonrpc:"2.0",method:"getAddressBalance",params:{address:e}}}).then(n=>n.result)},async fetchTokenPrice({addresses:t,caipNetworkId:e=(n=>(n=w.state.activeCaipNetwork)==null?void 0:n.caipNetworkId)()}){if(!await me.isNetworkSupported(e))return{fungibles:[]};const s=j.getTokenPriceCacheForAddresses(t);if(s)return s;const i=await Yt.api.post({path:"/v1/fungible/price",body:{currency:"usd",addresses:t,projectId:B.state.projectId},headers:{"Content-Type":"application/json"}});return j.updateTokenPriceCache({addresses:t,timestamp:Date.now(),tokenPrice:i}),i},async fetchSwapAllowance({tokenAddress:t,userAddress:e}){var r;return await me.isNetworkSupported((r=w.state.activeCaipNetwork)==null?void 0:r.caipNetworkId)?me.get({path:"/v1/convert/allowance",params:{tokenAddress:t,userAddress:e},headers:{"Content-Type":"application/json"}}):{allowance:"0"}},async fetchGasPrice({chainId:t}){var s;const{st:e,sv:n}=me.getSdkProperties();if(!await me.isNetworkSupported((s=w.state.activeCaipNetwork)==null?void 0:s.caipNetworkId))throw new Error("Network not supported for Gas Price");return me.get({path:"/v1/convert/gas-price",headers:{"Content-Type":"application/json"},params:{chainId:t,st:e,sv:n}})},async generateSwapCalldata({amount:t,from:e,to:n,userAddress:r,disableEstimate:s}){var o;if(!await me.isNetworkSupported((o=w.state.activeCaipNetwork)==null?void 0:o.caipNetworkId))throw new Error("Network not supported for Swaps");return Yt.api.post({path:"/v1/convert/build-transaction",headers:{"Content-Type":"application/json"},body:{amount:t,eip155:{slippage:Oe.CONVERT_SLIPPAGE_TOLERANCE},projectId:B.state.projectId,from:e,to:n,userAddress:r,disableEstimate:s}})},async generateApproveCalldata({from:t,to:e,userAddress:n}){var o;const{st:r,sv:s}=me.getSdkProperties();if(!await me.isNetworkSupported((o=w.state.activeCaipNetwork)==null?void 0:o.caipNetworkId))throw new Error("Network not supported for Swaps");return me.get({path:"/v1/convert/build-approve",headers:{"Content-Type":"application/json"},params:{userAddress:n,from:t,to:e,st:r,sv:s}})},async getBalance(t,e,n){var l;const{st:r,sv:s}=me.getSdkProperties();if(!await me.isNetworkSupported((l=w.state.activeCaipNetwork)==null?void 0:l.caipNetworkId))return gr.showError("Token Balance Unavailable"),{balances:[]};const o=`${e}:${t}`,a=j.getBalanceCacheForCaipAddress(o);if(a)return a;const c=await me.get({path:`/v1/account/${t}/balance`,params:{currency:"usd",chainId:e,forceUpdate:n,st:r,sv:s}});return j.updateBalanceCache({caipAddress:o,balance:c,timestamp:Date.now()}),c},async lookupEnsName(t){var n;return await me.isNetworkSupported((n=w.state.activeCaipNetwork)==null?void 0:n.caipNetworkId)?me.get({path:`/v1/profile/account/${t}`,params:{apiVersion:"2"}}):{addresses:{},attributes:[]}},async reverseLookupEnsName({address:t}){var r,s;if(!await me.isNetworkSupported((r=w.state.activeCaipNetwork)==null?void 0:r.caipNetworkId))return[];const n=(s=w.getAccountData())==null?void 0:s.address;return me.get({path:`/v1/profile/reverse/${t}`,params:{sender:n,apiVersion:"2"}})},async getEnsNameSuggestions(t){var n;return await me.isNetworkSupported((n=w.state.activeCaipNetwork)==null?void 0:n.caipNetworkId)?me.get({path:`/v1/profile/suggestions/${t}`,params:{zone:"reown.id"}}):{suggestions:[]}},async registerEnsName({coinType:t,address:e,message:n,signature:r}){var i;return await me.isNetworkSupported((i=w.state.activeCaipNetwork)==null?void 0:i.caipNetworkId)?Yt.api.post({path:"/v1/profile/account",body:{coin_type:t,address:e,message:n,signature:r},headers:{"Content-Type":"application/json"}}):{success:!1}},async generateOnRampURL({destinationWallets:t,partnerUserId:e,defaultNetwork:n,purchaseAmount:r,paymentAmount:s}){var a;return await me.isNetworkSupported((a=w.state.activeCaipNetwork)==null?void 0:a.caipNetworkId)?(await Yt.api.post({path:"/v1/generators/onrampurl",params:{projectId:B.state.projectId},body:{destinationWallets:t,defaultNetwork:n,partnerUserId:e,defaultExperience:"buy",presetCryptoAmount:r,presetFiatAmount:s}})).url:""},async getOnrampOptions(){var e;if(!await me.isNetworkSupported((e=w.state.activeCaipNetwork)==null?void 0:e.caipNetworkId))return{paymentCurrencies:[],purchaseCurrencies:[]};try{return await me.get({path:"/v1/onramp/options"})}catch{return fC}},async getOnrampQuote({purchaseCurrency:t,paymentCurrency:e,amount:n,network:r}){var s;try{return await me.isNetworkSupported((s=w.state.activeCaipNetwork)==null?void 0:s.caipNetworkId)?await Yt.api.post({path:"/v1/onramp/quote",params:{projectId:B.state.projectId},body:{purchaseCurrency:t,paymentCurrency:e,amount:n,network:r}}):null}catch{return{networkFee:{amount:n,currency:e.id},paymentSubtotal:{amount:n,currency:e.id},paymentTotal:{amount:n,currency:e.id},purchaseAmount:{amount:n,currency:e.id},quoteId:"mocked-quote-id"}}},async getSmartSessions(t){var n;return await me.isNetworkSupported((n=w.state.activeCaipNetwork)==null?void 0:n.caipNetworkId)?me.get({path:`/v1/sessions/${t}`}):[]},async revokeSmartSession(t,e,n){var s;return await me.isNetworkSupported((s=w.state.activeCaipNetwork)==null?void 0:s.caipNetworkId)?Yt.api.post({path:`/v1/sessions/${t}/revoke`,params:{projectId:B.state.projectId},body:{pci:e,signature:n}}):{success:!1}},setClientId(t){Yt.clientId=t,Yt.api=new va({baseUrl:Sy,clientId:t})}},pC=Object.freeze({enabled:!0,events:[]}),gC=new va({baseUrl:J.getAnalyticsUrl(),clientId:null}),mC=5,yC=60*1e3,Jr=Xe({...pC}),wC={state:Jr,subscribeKey(t,e){return Pt(Jr,t,e)},async sendError(t,e){if(!Jr.enabled)return;const n=Date.now();if(Jr.events.filter(i=>{const o=new Date(i.properties.timestamp||"").getTime();return n-o<yC}).length>=mC)return;const s={type:"error",event:e,properties:{errorType:t.name,errorMessage:t.message,stackTrace:t.stack,timestamp:new Date().toISOString()}};Jr.events.push(s);try{if(typeof window>"u")return;const{projectId:i,sdkType:o,sdkVersion:a}=B.state;await gC.post({path:"/e",params:{projectId:i,st:o,sv:a||"html-wagmi-4.2.2"},body:{eventId:J.getUUID(),url:window.location.href,domain:window.location.hostname,timestamp:new Date().toISOString(),props:{type:"error",event:e,errorType:t.name,errorMessage:t.message,stackTrace:t.stack}}})}catch{}},enable(){Jr.enabled=!0},disable(){Jr.enabled=!1},clearEvents(){Jr.events=[]}};class ai extends Error{constructor(e,n,r){super(e),this.originalName="AppKitError",this.name="AppKitError",this.category=n,this.originalError=r,r&&r instanceof Error&&(this.originalName=r.name),Object.setPrototypeOf(this,ai.prototype);let s=!1;if(r instanceof Error&&typeof r.stack=="string"&&r.stack){const i=r.stack,o=i.indexOf(`
|
|
4
|
-
`);if(o>-1){const a=i.substring(o+1);this.stack=`${this.name}: ${this.message}
|
|
5
|
-
${a}`,s=!0}}s||(Error.captureStackTrace?Error.captureStackTrace(this,ai):this.stack||(this.stack=`${this.name}: ${this.message}`))}}function Of(t,e){let n="";try{t instanceof Error?n=t.message:typeof t=="string"?n=t:typeof t=="object"&&t!==null?Object.keys(t).length===0?n="Unknown error":n=(t==null?void 0:t.message)||JSON.stringify(t):n=String(t)}catch(s){n="Unknown error",console.error("Error parsing error message",s)}const r=t instanceof ai?t:new ai(n,e,t);throw wC.sendError(r,r.category),r}function qn(t,e="INTERNAL_SDK_ERROR"){const n={};return Object.keys(t).forEach(r=>{const s=t[r];if(typeof s=="function"){let i=s;s.constructor.name==="AsyncFunction"?i=async(...o)=>{try{return await s(...o)}catch(a){return Of(a,e)}}:i=(...o)=>{try{return s(...o)}catch(a){return Of(a,e)}},n[r]=i}else n[r]=s}),n}const En=Xe({walletImages:{},networkImages:{},chainImages:{},connectorImages:{},tokenImages:{},currencyImages:{}}),EC={state:En,subscribeNetworkImages(t){return xt(En.networkImages,()=>t(En.networkImages))},subscribeKey(t,e){return Pt(En,t,e)},subscribe(t){return xt(En,()=>t(En))},setWalletImage(t,e){En.walletImages[t]=e},setNetworkImage(t,e){En.networkImages[t]=e},setChainImage(t,e){En.chainImages[t]=e},setConnectorImage(t,e){En.connectorImages={...En.connectorImages,[t]:e}},setTokenImage(t,e){En.tokenImages[t]=e},setCurrencyImage(t,e){En.currencyImages[t]=e}},Ln=qn(EC),Rf={eip155:"ba0ba0cd-17c6-4806-ad93-f9d174f17900",solana:"a1b58899-f671-4276-6a5e-56ca5bd59700",polkadot:"",bip122:"0b4838db-0161-4ffe-022d-532bf03dba00",cosmos:"",sui:"",stacks:"",ton:"20f673c0-095e-49b2-07cf-eb5049dcf600"},Si=Xe({networkImagePromises:{},tokenImagePromises:{}}),Dc={async fetchWalletImage(t){if(t)return await ne._fetchWalletImage(t),this.getWalletImageById(t)},async fetchNetworkImage(t){if(!t)return;const e=this.getNetworkImageById(t);return e||(Si.networkImagePromises[t]||(Si.networkImagePromises[t]=ne._fetchNetworkImage(t)),await Si.networkImagePromises[t],this.getNetworkImageById(t))},async fetchTokenImage(t){if(t)return Si.tokenImagePromises[t]||(Si.tokenImagePromises[t]=ne._fetchTokenImage(t)),await Si.tokenImagePromises[t],this.getTokenImage(t)},getWalletImageById(t){if(t)return Ln.state.walletImages[t]},getWalletImage(t){if(t!=null&&t.image_url)return t==null?void 0:t.image_url;if(t!=null&&t.image_id)return Ln.state.walletImages[t.image_id]},getNetworkImage(t){var e,n,r;if((e=t==null?void 0:t.assets)!=null&&e.imageUrl)return(n=t==null?void 0:t.assets)==null?void 0:n.imageUrl;if((r=t==null?void 0:t.assets)!=null&&r.imageId)return Ln.state.networkImages[t.assets.imageId]},getNetworkImageById(t){if(t)return Ln.state.networkImages[t]},getConnectorImage(t){var e;if(t!=null&&t.imageUrl)return t.imageUrl;if((e=t==null?void 0:t.info)!=null&&e.icon)return t.info.icon;if(t!=null&&t.imageId)return Ln.state.connectorImages[t.imageId]},getChainImage(t){return Ln.state.networkImages[Rf[t]]},getTokenImage(t){if(t)return Ln.state.tokenImages[t]},getWalletImageUrl(t){if(!t)return"";const{projectId:e,sdkType:n,sdkVersion:r}=B.state,s=new URL(`${T.W3M_API_URL}/getWalletImage/${t}`);return s.searchParams.set("projectId",e),s.searchParams.set("st",n),s.searchParams.set("sv",r),s.toString()},getAssetImageUrl(t){if(!t)return"";const{projectId:e,sdkType:n,sdkVersion:r}=B.state,s=new URL(`${T.W3M_API_URL}/public/getAssetImage/${t}`);return s.searchParams.set("projectId",e),s.searchParams.set("st",n),s.searchParams.set("sv",r),s.toString()},getChainNamespaceImageUrl(t){return this.getAssetImageUrl(Rf[t])},async getImageByToken(t,e){if(t==="native"){const r=T.NATIVE_IMAGE_IDS_BY_NAMESPACE[e]??null;return r?Dc.fetchNetworkImage(r):void 0}const[,n]=Object.entries(T.TOKEN_SYMBOLS_BY_ADDRESS).find(([r])=>r.toLowerCase()===t.toLowerCase())??[];if(n)return Dc.fetchTokenImage(n)}},kn={PHANTOM:{id:"a797aa35c0fadbfc1a53e7f675162ed5226968b44a19ee3d24385c64d1d3c393",url:"https://phantom.app"},SOLFLARE:{id:"1ca0bdd4747578705b1939af023d120677c64fe6ca76add81fda36e350605e79",url:"https://solflare.com"},COINBASE:{id:"fd20dc426fb37566d803205b19bbc1d4096b248ac04548e3cfb6b3a38bd033aa",url:"https://go.cb-w.com"},BINANCE:{id:"2fafea35bb471d22889ccb49c08d99dd0a18a37982602c33f696a5723934ba25",appId:"yFK5FCqYprrXDiVFbhyRx7",deeplink:"bnc://app.binance.com/mp/app",url:"https://app.binance.com/en/download"}},bC={handleMobileDeeplinkRedirect(t,e){const n=window.location.href,r=encodeURIComponent(n);if(t===kn.PHANTOM.id&&!("phantom"in window)){const s=n.startsWith("https")?"https":"http",i=n.split("/")[2],o=encodeURIComponent(`${s}://${i}`);window.location.href=`${kn.PHANTOM.url}/ul/browse/${r}?ref=${o}`}if(t===kn.SOLFLARE.id&&!("solflare"in window)&&(window.location.href=`${kn.SOLFLARE.url}/ul/v1/browse/${r}?ref=${r}`),e===T.CHAIN.SOLANA&&t===kn.COINBASE.id&&!("coinbaseSolana"in window)&&(window.location.href=`${kn.COINBASE.url}/dapp?cb_url=${r}`),e===T.CHAIN.BITCOIN&&t===kn.BINANCE.id&&!("binancew3w"in window)){const s=w.state.activeCaipNetwork,i=window.btoa("/pages/browser/index"),o=window.btoa(`url=${r}&defaultChainId=${(s==null?void 0:s.id)??1}`),a=new URL(kn.BINANCE.deeplink);a.searchParams.set("appId",kn.BINANCE.appId),a.searchParams.set("startPagePath",i),a.searchParams.set("startPageQuery",o);const c=new URL(kn.BINANCE.url);c.searchParams.set("_dp",window.btoa(a.toString())),window.location.href=c.toString()}}},_C=J.getAnalyticsUrl(),vC=new va({baseUrl:_C,clientId:null}),CC=["MODAL_CREATED"],AC=45,xf=1e3*10,it=Xe({timestamp:Date.now(),lastFlush:Date.now(),reportedErrors:{},data:{type:"track",event:"MODAL_CREATED"},pendingEvents:[],subscribedToVisibilityChange:!1,walletImpressions:[]}),be={state:it,subscribe(t){return xt(it,()=>t(it))},getSdkProperties(){const{projectId:t,sdkType:e,sdkVersion:n}=B.state;return{projectId:t,st:e,sv:n||"html-wagmi-4.2.2"}},shouldFlushEvents(){const t=JSON.stringify(it.pendingEvents).length/1024>AC,e=it.lastFlush+xf<Date.now();return t||e},_setPendingEvent(t){var e,n;try{let r=(e=w.getAccountData())==null?void 0:e.address;if("address"in t.data&&t.data.address&&(r=t.data.address),CC.includes(t.data.event)||typeof window>"u")return;const s=(n=w.getActiveCaipNetwork())==null?void 0:n.caipNetworkId;this.state.pendingEvents.push({eventId:J.getUUID(),url:window.location.href,domain:window.location.hostname,timestamp:t.timestamp,props:{...t.data,address:r,properties:{..."properties"in t.data?t.data.properties:{},caipNetworkId:s}}}),it.reportedErrors.FORBIDDEN=!1,be.shouldFlushEvents()&&be._submitPendingEvents()}catch(r){console.warn("_setPendingEvent",r)}},sendEvent(t){var n;it.timestamp=Date.now(),it.data=t;const e=["INITIALIZE","CONNECT_SUCCESS","SOCIAL_LOGIN_SUCCESS"];((n=B.state.features)!=null&&n.analytics||e.includes(t.event))&&be._setPendingEvent(it),this.subscribeToFlushTriggers()},sendWalletImpressionEvent(t){it.walletImpressions.push(t)},_transformPendingEventsForBatch(t){try{return t.filter(e=>e.props.event!=="WALLET_IMPRESSION_V2")}catch{return t}},_submitPendingEvents(){if(it.lastFlush=Date.now(),!(it.pendingEvents.length===0&&it.walletImpressions.length===0))try{const t=be._transformPendingEventsForBatch(it.pendingEvents);it.walletImpressions.length&&t.push({eventId:J.getUUID(),url:window.location.href,domain:window.location.hostname,timestamp:Date.now(),props:{type:"track",event:"WALLET_IMPRESSION_V2",items:[...it.walletImpressions]}}),vC.sendBeacon({path:"/batch",params:be.getSdkProperties(),body:t}),it.reportedErrors.FORBIDDEN=!1,it.pendingEvents=[],it.walletImpressions=[]}catch{it.reportedErrors.FORBIDDEN=!0}},subscribeToFlushTriggers(){var t,e,n;it.subscribedToVisibilityChange||typeof document>"u"||(it.subscribedToVisibilityChange=!0,(t=document==null?void 0:document.addEventListener)==null||t.call(document,"visibilitychange",()=>{document.visibilityState==="hidden"&&be._submitPendingEvents()}),(e=document==null?void 0:document.addEventListener)==null||e.call(document,"freeze",()=>{be._submitPendingEvents()}),(n=window==null?void 0:window.addEventListener)==null||n.call(window,"pagehide",()=>{be._submitPendingEvents()}),setInterval(()=>{be._submitPendingEvents()},xf))}},SC=J.getApiUrl(),Zt=new va({baseUrl:SC,clientId:null}),IC=40,Pf=4,NC=20,Ee=Xe({promises:{},page:1,count:0,featured:[],allFeatured:[],recommended:[],allRecommended:[],wallets:[],filteredWallets:[],search:[],isAnalyticsEnabled:!1,excludedWallets:[],isFetchingRecommendedWallets:!1,explorerWallets:[],explorerFilteredWallets:[],plan:{tier:"none",hasExceededUsageLimit:!1,limits:{isAboveRpcLimit:!1,isAboveMauLimit:!1}}}),ne={state:Ee,subscribeKey(t,e){return Pt(Ee,t,e)},_getSdkProperties(){const{projectId:t,sdkType:e,sdkVersion:n}=B.state;return{projectId:t,st:e||"appkit",sv:n||"html-wagmi-4.2.2"}},_filterOutExtensions(t){return B.state.isUniversalProvider?t.filter(e=>!!(e.mobile_link||e.desktop_link||e.webapp_link)):t},async _fetchWalletImage(t){const e=`${Zt.baseUrl}/getWalletImage/${t}`,n=await Zt.getBlob({path:e,params:ne._getSdkProperties()});Ln.setWalletImage(t,URL.createObjectURL(n))},async _fetchNetworkImage(t){const e=`${Zt.baseUrl}/public/getAssetImage/${t}`,n=await Zt.getBlob({path:e,params:ne._getSdkProperties()});Ln.setNetworkImage(t,URL.createObjectURL(n))},async _fetchConnectorImage(t){const e=`${Zt.baseUrl}/public/getAssetImage/${t}`,n=await Zt.getBlob({path:e,params:ne._getSdkProperties()});Ln.setConnectorImage(t,URL.createObjectURL(n))},async _fetchCurrencyImage(t){const e=`${Zt.baseUrl}/public/getCurrencyImage/${t}`,n=await Zt.getBlob({path:e,params:ne._getSdkProperties()});Ln.setCurrencyImage(t,URL.createObjectURL(n))},async _fetchTokenImage(t){const e=`${Zt.baseUrl}/public/getTokenImage/${t}`,n=await Zt.getBlob({path:e,params:ne._getSdkProperties()});Ln.setTokenImage(t,URL.createObjectURL(n))},_filterWalletsByPlatform(t){const e=t.length,n=J.isMobile()?t==null?void 0:t.filter(s=>s.mobile_link||s.webapp_link?!0:Object.values(kn).map(o=>o.id).includes(s.id)):t,r=e-n.length;return{filteredWallets:n,mobileFilteredOutWalletsLength:r}},async fetchProjectConfig(){return(await Zt.get({path:"/appkit/v1/config",params:ne._getSdkProperties()})).features},async fetchUsage(){try{const t=await Zt.get({path:"/appkit/v1/project-limits",params:ne._getSdkProperties()}),{tier:e,isAboveMauLimit:n,isAboveRpcLimit:r}=t.planLimits,s=e==="starter",i=n||r;ne.state.plan={tier:e,hasExceededUsageLimit:s&&i,limits:{isAboveRpcLimit:r,isAboveMauLimit:n}}}catch(t){console.warn("Failed to fetch usage",t)}},async fetchAllowedOrigins(){try{const{allowedOrigins:t}=await Zt.get({path:"/projects/v1/origins",params:ne._getSdkProperties()});return t}catch(t){if(t instanceof Error&&t.cause instanceof Response){const e=t.cause.status;if(e===T.HTTP_STATUS_CODES.TOO_MANY_REQUESTS)throw new Error("RATE_LIMITED",{cause:t});if(e>=T.HTTP_STATUS_CODES.SERVER_ERROR&&e<600)throw new Error("SERVER_ERROR",{cause:t});return[]}return[]}},async fetchNetworkImages(){const t=w.getAllRequestedCaipNetworks(),e=t==null?void 0:t.map(({assets:n})=>n==null?void 0:n.imageId).filter(Boolean).filter(n=>!Dc.getNetworkImageById(n));e&&await Promise.allSettled(e.map(n=>ne._fetchNetworkImage(n)))},async fetchConnectorImages(){const{connectors:t}=z.state,e=t.map(({imageId:n})=>n).filter(Boolean);await Promise.allSettled(e.map(n=>ne._fetchConnectorImage(n)))},async fetchCurrencyImages(t=[]){await Promise.allSettled(t.map(e=>ne._fetchCurrencyImage(e)))},async fetchTokenImages(t=[]){await Promise.allSettled(t.map(e=>ne._fetchTokenImage(e)))},async fetchWallets(t){var o;const e=t.exclude??[];ne._getSdkProperties().sv.startsWith("html-core-")&&e.push(...Object.values(kn).map(a=>a.id));const r=await Zt.get({path:"/getWallets",params:{...ne._getSdkProperties(),...t,page:String(t.page),entries:String(t.entries),include:(o=t.include)==null?void 0:o.join(","),exclude:e.join(",")}}),{filteredWallets:s,mobileFilteredOutWalletsLength:i}=ne._filterWalletsByPlatform(r==null?void 0:r.data);return{data:s||[],count:r==null?void 0:r.count,mobileFilteredOutWalletsLength:i}},async prefetchWalletRanks(){const t=z.state.connectors;if(!(t!=null&&t.length))return;const e={page:1,entries:20,badge:"certified"};if(e.names=t.map(s=>s.name).join(","),w.state.activeChain===T.CHAIN.EVM){const s=[...t.flatMap(i=>{var o;return((o=i.connectors)==null?void 0:o.map(a=>{var c;return(c=a.info)==null?void 0:c.rdns}))||[]}),...t.map(i=>{var o;return(o=i.info)==null?void 0:o.rdns})].filter(i=>typeof i=="string"&&i.length>0);s.length&&(e.rdns=s.join(","))}const{data:n}=await ne.fetchWallets(e);Ee.explorerWallets=n,z.extendConnectorsWithExplorerWallets(n);const r=w.getRequestedCaipNetworkIds().join(",");Ee.explorerFilteredWallets=n.filter(s=>{var i;return(i=s.chains)==null?void 0:i.some(o=>r.includes(o))})},async fetchFeaturedWallets(){const{featuredWalletIds:t}=B.state;if(t!=null&&t.length){const e={...ne._getSdkProperties(),page:1,entries:(t==null?void 0:t.length)??Pf,include:t},{data:n}=await ne.fetchWallets(e),r=[...n].sort((i,o)=>t.indexOf(i.id)-t.indexOf(o.id)),s=r.map(i=>i.image_id).filter(Boolean);await Promise.allSettled(s.map(i=>ne._fetchWalletImage(i))),Ee.featured=r,Ee.allFeatured=r}},async fetchRecommendedWallets(){try{Ee.isFetchingRecommendedWallets=!0;const{includeWalletIds:t,excludeWalletIds:e,featuredWalletIds:n}=B.state,r=[...e??[],...n??[]].filter(Boolean),s=w.getRequestedCaipNetworkIds().join(","),i={page:1,entries:Pf,include:t,exclude:r,chains:s},{data:o,count:a}=await ne.fetchWallets(i),c=j.getRecentWallets(),l=o.map(d=>d.image_id).filter(Boolean),u=c.map(d=>d.image_id).filter(Boolean);await Promise.allSettled([...l,...u].map(d=>ne._fetchWalletImage(d))),Ee.recommended=o,Ee.allRecommended=o,Ee.count=a??0}catch{}finally{Ee.isFetchingRecommendedWallets=!1}},async fetchWalletsByPage({page:t}){const{includeWalletIds:e,excludeWalletIds:n,featuredWalletIds:r}=B.state,s=w.getRequestedCaipNetworkIds().join(","),i=[...Ee.recommended.map(({id:d})=>d),...n??[],...r??[]].filter(Boolean),o={page:t,entries:IC,include:e,exclude:i,chains:s},{data:a,count:c,mobileFilteredOutWalletsLength:l}=await ne.fetchWallets(o);Ee.mobileFilteredOutWalletsLength=l+(Ee.mobileFilteredOutWalletsLength??0);const u=a.slice(0,NC).map(d=>d.image_id).filter(Boolean);await Promise.allSettled(u.map(d=>ne._fetchWalletImage(d))),Ee.wallets=J.uniqueBy([...Ee.wallets,...ne._filterOutExtensions(a)],"id").filter(d=>{var h;return(h=d.chains)==null?void 0:h.some(f=>s.includes(f))}),Ee.count=c>Ee.count?c:Ee.count,Ee.page=t},async initializeExcludedWallets({ids:t}){const e={page:1,entries:t.length,include:t},{data:n}=await ne.fetchWallets(e);n&&n.forEach(r=>{Ee.excludedWallets.push({rdns:r.rdns,name:r.name})})},async searchWallet({search:t,badge:e}){const{includeWalletIds:n,excludeWalletIds:r}=B.state,s=w.getRequestedCaipNetworkIds().join(",");Ee.search=[];const i={page:1,entries:100,search:t==null?void 0:t.trim(),badge_type:e,include:n,exclude:r,chains:s},{data:o}=await ne.fetchWallets(i);be.sendEvent({type:"track",event:"SEARCH_WALLET",properties:{badge:e??"",search:t??""}});const a=o.map(c=>c.image_id).filter(Boolean);await Promise.allSettled([...a.map(c=>ne._fetchWalletImage(c)),J.wait(300)]),Ee.search=ne._filterOutExtensions(o)},initPromise(t,e){const n=Ee.promises[t];return n||(Ee.promises[t]=e())},prefetch({fetchConnectorImages:t=!0,fetchFeaturedWallets:e=!0,fetchRecommendedWallets:n=!0,fetchNetworkImages:r=!0,fetchWalletRanks:s=!0}={}){const i=[t&&ne.initPromise("connectorImages",ne.fetchConnectorImages),e&&ne.initPromise("featuredWallets",ne.fetchFeaturedWallets),n&&ne.initPromise("recommendedWallets",ne.fetchRecommendedWallets),r&&ne.initPromise("networkImages",ne.fetchNetworkImages),s&&ne.initPromise("walletRanks",ne.prefetchWalletRanks)].filter(Boolean);return Promise.allSettled(i)},prefetchAnalyticsConfig(){var t;(t=B.state.features)!=null&&t.analytics&&ne.fetchAnalyticsConfig()},async fetchAnalyticsConfig(){try{const{isAnalyticsEnabled:t}=await Zt.get({path:"/getAnalyticsConfig",params:ne._getSdkProperties()});B.setFeatures({analytics:t})}catch{B.setFeatures({analytics:!1})}},filterByNamespaces(t){if(!(t!=null&&t.length)){Ee.featured=Ee.allFeatured,Ee.recommended=Ee.allRecommended;return}const e=w.getRequestedCaipNetworkIds().join(",");Ee.featured=Ee.allFeatured.filter(n=>{var r;return(r=n.chains)==null?void 0:r.some(s=>e.includes(s))}),Ee.recommended=Ee.allRecommended.filter(n=>{var r;return(r=n.chains)==null?void 0:r.some(s=>e.includes(s))}),Ee.filteredWallets=Ee.wallets.filter(n=>{var r;return(r=n.chains)==null?void 0:r.some(s=>e.includes(s))})},clearFilterByNamespaces(){Ee.filteredWallets=[]},setFilterByNamespace(t){if(!t){Ee.featured=Ee.allFeatured,Ee.recommended=Ee.allRecommended;return}const e=w.getRequestedCaipNetworkIds().join(",");Ee.featured=Ee.allFeatured.filter(n=>{var r;return(r=n.chains)==null?void 0:r.some(s=>e.includes(s))}),Ee.recommended=Ee.allRecommended.filter(n=>{var r;return(r=n.chains)==null?void 0:r.some(s=>e.includes(s))}),Ee.filteredWallets=Ee.wallets.filter(n=>{var r;return(r=n.chains)==null?void 0:r.some(s=>e.includes(s))})}},Es={filterOutDuplicatesByRDNS(t){const e=B.state.enableEIP6963?z.state.connectors:[],n=j.getRecentWallets(),r=e.map(a=>{var c;return(c=a.info)==null?void 0:c.rdns}).filter(Boolean),s=n.map(a=>a.rdns).filter(Boolean),i=r.concat(s);if(i.includes("io.metamask.mobile")&&J.isMobile()){const a=i.indexOf("io.metamask.mobile");i[a]="io.metamask"}return t.filter(a=>!(a!=null&&a.rdns&&i.includes(String(a.rdns))||!(a!=null&&a.rdns)&&e.some(l=>l.name===a.name)))},filterOutDuplicatesByIds(t){const e=z.state.connectors.filter(a=>a.type==="ANNOUNCED"||a.type==="INJECTED"||a.type==="MULTI_CHAIN"),n=j.getRecentWallets(),r=e.map(a=>{var c;return a.explorerId||((c=a.explorerWallet)==null?void 0:c.id)||a.id}),s=n.map(a=>a.id),i=r.concat(s);return t.filter(a=>!i.includes(a==null?void 0:a.id))},filterOutDuplicateWallets(t){const e=this.filterOutDuplicatesByRDNS(t);return this.filterOutDuplicatesByIds(e)},markWalletsAsInstalled(t){const{connectors:e}=z.state,{featuredWalletIds:n}=B.state,r=e.filter(o=>o.type==="ANNOUNCED").reduce((o,a)=>{var c;return(c=a.info)!=null&&c.rdns&&(o[a.info.rdns]=!0),o},{});return t.map(o=>({...o,installed:!!o.rdns&&!!r[o.rdns??""]})).sort((o,a)=>{const c=Number(a.installed)-Number(o.installed);if(c!==0)return c;if(n!=null&&n.length){const l=n.indexOf(o.id),u=n.indexOf(a.id);if(l!==-1&&u!==-1)return l-u;if(l!==-1)return-1;if(u!==-1)return 1}return 0})},getConnectOrderMethod(t,e){var c;const n=(t==null?void 0:t.connectMethodsOrder)||((c=B.state.features)==null?void 0:c.connectMethodsOrder),r=e||z.state.connectors;if(n)return n;const{injected:s,announced:i}=Xt.getConnectorsByType(r,ne.state.recommended,ne.state.featured),o=s.filter(Xt.showConnector),a=i.filter(Xt.showConnector);return o.length||a.length?["wallet","email","social"]:Oe.DEFAULT_CONNECT_METHOD_ORDER},isExcluded(t){const e=!!t.rdns&&ne.state.excludedWallets.some(r=>r.rdns===t.rdns),n=!!t.name&&ne.state.excludedWallets.some(r=>ay.isLowerCaseMatch(r.name,t.name));return e||n},markWalletsWithDisplayIndex(t){return t.map((e,n)=>({...e,display_index:n}))},filterWalletsByWcSupport(t){return V.state.wcBasic?t.filter(e=>e.supports_wc):J.isMobile()?t.filter(e=>e.supports_wc||Oe.MANDATORY_WALLET_IDS_ON_MOBILE.includes(e.id)):t},getWalletConnectWallets(t){var i;const e=[...ne.state.featured,...ne.state.recommended];((i=ne.state.filteredWallets)==null?void 0:i.length)>0?e.push(...ne.state.filteredWallets):e.push(...t);const n=J.uniqueBy(e,"id"),r=Es.markWalletsAsInstalled(n),s=Es.filterWalletsByWcSupport(r);return Es.markWalletsWithDisplayIndex(s)}},Xt={getConnectorsByType(t,e,n){const{customWallets:r}=B.state,s=j.getRecentWallets(),i=Es.filterOutDuplicateWallets(e),o=Es.filterOutDuplicateWallets(n),a=t.filter(d=>d.type==="MULTI_CHAIN"),c=t.filter(d=>d.type==="ANNOUNCED"),l=t.filter(d=>d.type==="INJECTED"),u=t.filter(d=>d.type==="EXTERNAL");return{custom:r,recent:s,external:u,multiChain:a,announced:c,injected:l,recommended:i,featured:o}},showConnector(t){var s;const e=(s=t.info)==null?void 0:s.rdns,n=!!e&&ne.state.excludedWallets.some(i=>!!i.rdns&&i.rdns===e),r=!!t.name&&ne.state.excludedWallets.some(i=>ay.isLowerCaseMatch(i.name,t.name));return!(t.type==="INJECTED"&&(t.name==="Browser Wallet"&&(!J.isMobile()||J.isMobile()&&!e&&!V.checkInstalled())||n||r)||(t.type==="ANNOUNCED"||t.type==="EXTERNAL")&&(n||r))},getIsConnectedWithWC(){return Array.from(w.state.chains.values()).some(n=>z.getConnectorId(n.namespace)===T.CONNECTOR_ID.WALLET_CONNECT)},getConnectorTypeOrder({recommended:t,featured:e,custom:n,recent:r,announced:s,injected:i,multiChain:o,external:a,overriddenConnectors:c=(l=>(l=B.state.features)==null?void 0:l.connectorTypeOrder)()??[]}){const d=[{type:"walletConnect",isEnabled:!0},{type:"recent",isEnabled:r.length>0},{type:"injected",isEnabled:[...i,...s,...o].length>0},{type:"featured",isEnabled:e.length>0},{type:"custom",isEnabled:n&&n.length>0},{type:"external",isEnabled:a.length>0},{type:"recommended",isEnabled:t.length>0}].filter(g=>g.isEnabled),h=new Set(d.map(g=>g.type)),f=c.filter(g=>h.has(g)).map(g=>({type:g,isEnabled:!0})),p=d.filter(({type:g})=>!f.some(({type:v})=>v===g));return Array.from(new Set([...f,...p].map(({type:g})=>g)))},sortConnectorsByExplorerWallet(t){return[...t].sort((e,n)=>e.explorerWallet&&n.explorerWallet?(e.explorerWallet.order??0)-(n.explorerWallet.order??0):e.explorerWallet?-1:n.explorerWallet?1:0)},getPriority(t){return t.id===T.CONNECTOR_ID.BASE_ACCOUNT?0:t.id===T.CONNECTOR_ID.COINBASE||t.id===T.CONNECTOR_ID.COINBASE_SDK?1:2},sortConnectorsByPriority(t){return[...t].sort((e,n)=>Xt.getPriority(e)-Xt.getPriority(n))},getAuthName({email:t,socialUsername:e,socialProvider:n}){return e?n&&n==="discord"&&e.endsWith("0")?e.slice(0,-1):e:t.length>30?`${t.slice(0,-3)}...`:t},async fetchProviderData(t){var e,n;try{if(t.name==="Browser Wallet"&&!J.isMobile())return{accounts:[],chainId:void 0};if(t.id===T.CONNECTOR_ID.AUTH)return{accounts:[],chainId:void 0};const[r,s]=await Promise.all([(e=t.provider)==null?void 0:e.request({method:"eth_accounts"}),(n=t.provider)==null?void 0:n.request({method:"eth_chainId"}).then(i=>Number(i))]);return{accounts:r,chainId:s}}catch(r){return console.warn(`Failed to fetch provider data for ${t.name}`,r),{accounts:[],chainId:void 0}}},getFilteredCustomWallets(t){const e=j.getRecentWallets(),n=z.state.connectors.map(o=>{var a;return(a=o.info)==null?void 0:a.rdns}).filter(Boolean),r=e.map(o=>o.rdns).filter(Boolean),s=n.concat(r);if(s.includes("io.metamask.mobile")&&J.isMobile()){const o=s.indexOf("io.metamask.mobile");s[o]="io.metamask"}return t.filter(o=>!s.includes(String(o==null?void 0:o.rdns)))},hasWalletConnector(t){return z.state.connectors.some(e=>e.id===t.id||e.name===t.name)},isWalletCompatibleWithCurrentChain(t){const e=w.state.activeChain;return e&&t.chains?t.chains.some(n=>{const r=n.split(":")[0];return e===r}):!0},getFilteredRecentWallets(){return j.getRecentWallets().filter(n=>!Es.isExcluded(n)).filter(n=>!this.hasWalletConnector(n)).filter(n=>this.isWalletCompatibleWithCurrentChain(n))},getCappedRecommendedWallets(t){const{connectors:e}=z.state,{customWallets:n,featuredWalletIds:r}=B.state,s=e.find(A=>A.id==="walletConnect"),i=e.filter(A=>A.type==="INJECTED"||A.type==="ANNOUNCED"||A.type==="MULTI_CHAIN");if(!s&&!i.length&&!(n!=null&&n.length))return[];const o=td.isEmailEnabled(),a=td.isSocialsEnabled(),c=i.filter(A=>A.name!=="Browser Wallet"&&A.name!=="WalletConnect"),l=(r==null?void 0:r.length)||0,u=(n==null?void 0:n.length)||0,d=c.length||0,h=o?1:0,f=a?1:0,p=l+u+d+h+f,y=Math.max(0,4-p);return y<=0?[]:Es.filterOutDuplicateWallets(t).slice(0,y)},processConnectorsByType(t,e=!0){const n=Xt.sortConnectorsByExplorerWallet([...t]);return e?n.filter(Xt.showConnector):n},connectorList(){const t=Xt.getConnectorsByType(z.state.connectors,ne.state.recommended,ne.state.featured),e=this.processConnectorsByType(t.announced.filter(f=>f.id!=="walletConnect")),n=this.processConnectorsByType(t.injected),r=this.processConnectorsByType(t.multiChain.filter(f=>f.name!=="WalletConnect"),!1),s=t.custom,i=t.recent,o=this.processConnectorsByType(t.external.filter(f=>f.id!==T.CONNECTOR_ID.COINBASE_SDK&&f.id!==T.CONNECTOR_ID.BASE_ACCOUNT)),a=t.recommended,c=t.featured,l=Xt.getConnectorTypeOrder({custom:s,recent:i,announced:e,injected:n,multiChain:r,recommended:a,featured:c,external:o}),u=z.state.connectors.find(f=>f.id==="walletConnect"),d=J.isMobile(),h=[];for(const f of l)switch(f){case"walletConnect":{!d&&u&&h.push({kind:"connector",subtype:"walletConnect",connector:u});break}case"recent":{Xt.getFilteredRecentWallets().forEach(g=>h.push({kind:"wallet",subtype:"recent",wallet:g}));break}case"injected":{r.forEach(p=>h.push({kind:"connector",subtype:"multiChain",connector:p})),e.forEach(p=>h.push({kind:"connector",subtype:"announced",connector:p})),n.forEach(p=>h.push({kind:"connector",subtype:"injected",connector:p}));break}case"featured":{c.forEach(p=>h.push({kind:"wallet",subtype:"featured",wallet:p}));break}case"custom":{Xt.getFilteredCustomWallets(s??[]).forEach(g=>h.push({kind:"wallet",subtype:"custom",wallet:g}));break}case"external":{o.forEach(p=>h.push({kind:"connector",subtype:"external",connector:p}));break}case"recommended":{Xt.getCappedRecommendedWallets(a).forEach(g=>h.push({kind:"wallet",subtype:"recommended",wallet:g}));break}default:console.warn(`Unknown connector type: ${f}`)}return h},hasInjectedConnectors(){return z.state.connectors.filter(t=>(t.type==="INJECTED"||t.type==="ANNOUNCED"||t.type==="MULTI_CHAIN")&&t.name!=="Browser Wallet"&&t.name!=="WalletConnect").length}},TC=["ConnectingExternal","ConnectingMultiChain","ConnectingSocial","ConnectingFarcaster"],qe=Xe({view:"Connect",history:["Connect"],transactionStack:[]}),OC={state:qe,subscribeKey(t,e){return Pt(qe,t,e)},pushTransactionStack(t){qe.transactionStack.push(t)},popTransactionStack(t){const e=qe.transactionStack.pop();if(!e)return;const{onSuccess:n,onError:r,onCancel:s}=e;switch(t){case"success":n==null||n();break;case"error":r==null||r(),pe.goBack();break;case"cancel":s==null||s(),pe.goBack();break}},push(t,e){let n=t,r=e;ne.state.plan.hasExceededUsageLimit&&TC.includes(t)&&(n="UsageExceeded",r=void 0),n!==qe.view&&(qe.view=n,qe.history.push(n),qe.data=r)},reset(t,e){qe.view=t,qe.history=[t],qe.data=e},replace(t,e){qe.history.at(-1)===t||(qe.view=t,qe.history[qe.history.length-1]=t,qe.data=e)},goBack(){var r,s;const t=w.state.activeCaipAddress,e=pe.state.view==="ConnectingFarcaster",n=!t&&e;if(qe.history.length>1){qe.history.pop();const[i]=qe.history.slice(-1);i&&(t&&i==="Connect"?qe.view="Account":qe.view=i)}else Re.close();(r=qe.data)!=null&&r.wallet&&(qe.data.wallet=void 0),(s=qe.data)!=null&&s.redirectView&&(qe.data.redirectView=void 0),setTimeout(()=>{var i,o,a;if(n){w.setAccountProp("farcasterUrl",void 0,w.state.activeChain);const c=z.getAuthConnector();(i=c==null?void 0:c.provider)==null||i.reload();const l=Vo(B.state);(a=(o=c==null?void 0:c.provider)==null?void 0:o.syncDappData)==null||a.call(o,{metadata:l.metadata,sdkVersion:l.sdkVersion,projectId:l.projectId,sdkType:l.sdkType})}},100)},goBackToIndex(t){if(qe.history.length>1){qe.history=qe.history.slice(0,t+1);const[e]=qe.history.slice(-1);e&&(qe.view=e)}},goBackOrCloseModal(){pe.state.history.length>1?pe.goBack():Re.close()}},pe=qn(OC),Sr=Xe({themeMode:"dark",themeVariables:{},w3mThemeVariables:void 0}),nd={state:Sr,subscribe(t){return xt(Sr,()=>t(Sr))},setThemeMode(t){Sr.themeMode=t;try{const e=z.getAuthConnector();if(e){const n=nd.getSnapshot().themeVariables;e.provider.syncTheme({themeMode:t,themeVariables:n,w3mThemeVariables:Ho(n,t)})}}catch{console.info("Unable to sync theme to auth connector")}},setThemeVariables(t){Sr.themeVariables={...Sr.themeVariables,...t};try{const e=z.getAuthConnector();if(e){const n=nd.getSnapshot().themeVariables;e.provider.syncTheme({themeVariables:n,w3mThemeVariables:Ho(Sr.themeVariables,Sr.themeMode)})}}catch{console.info("Unable to sync theme to auth connector")}},getSnapshot(){return Vo(Sr)}},un=qn(nd),Iy=Object.fromEntries(iy.map(t=>[t,void 0])),RC=Object.fromEntries(iy.map(t=>[t,!0])),ke=Xe({allConnectors:[],connectors:[],activeConnector:void 0,filterByNamespace:void 0,activeConnectorIds:Iy,filterByNamespaceMap:RC}),xC={state:ke,subscribe(t){return xt(ke,()=>{t(ke)})},subscribeKey(t,e){return Pt(ke,t,e)},initialize(t){t.forEach(e=>{const n=j.getConnectedConnectorId(e);n&&z.setConnectorId(n,e)})},setActiveConnector(t){t&&(ke.activeConnector=Ko(t))},setConnectors(t){t.filter(s=>!ke.allConnectors.some(i=>i.id===s.id&&z.getConnectorName(i.name)===z.getConnectorName(s.name)&&i.chain===s.chain)).forEach(s=>{s.type!=="MULTI_CHAIN"&&ke.allConnectors.push(Ko(s))});const n=z.getEnabledNamespaces(),r=z.getEnabledConnectors(n);ke.connectors=z.mergeMultiChainConnectors(r)},filterByNamespaces(t){Object.keys(ke.filterByNamespaceMap).forEach(e=>{ke.filterByNamespaceMap[e]=!1}),t.forEach(e=>{ke.filterByNamespaceMap[e]=!0}),z.updateConnectorsForEnabledNamespaces()},filterByNamespace(t,e){ke.filterByNamespaceMap[t]=e,z.updateConnectorsForEnabledNamespaces()},updateConnectorsForEnabledNamespaces(){const t=z.getEnabledNamespaces(),e=z.getEnabledConnectors(t),n=z.areAllNamespacesEnabled();ke.connectors=z.mergeMultiChainConnectors(e),n?ne.clearFilterByNamespaces():ne.filterByNamespaces(t)},getEnabledNamespaces(){return Object.entries(ke.filterByNamespaceMap).filter(([t,e])=>e).map(([t])=>t)},getEnabledConnectors(t){return ke.allConnectors.filter(e=>t.includes(e.chain))},areAllNamespacesEnabled(){return Object.values(ke.filterByNamespaceMap).every(t=>t)},mergeMultiChainConnectors(t){const e=z.generateConnectorMapByName(t),n=[];return e.forEach(r=>{const s=r[0],i=(s==null?void 0:s.id)===T.CONNECTOR_ID.AUTH;r.length>1&&s?n.push({name:s.name,imageUrl:s.imageUrl,imageId:s.imageId,connectors:[...r],type:i?"AUTH":"MULTI_CHAIN",chain:"eip155",id:(s==null?void 0:s.id)||""}):s&&n.push(s)}),n},generateConnectorMapByName(t){const e=new Map;return t.forEach(n=>{const{name:r}=n,s=z.getConnectorName(r);if(!s)return;const i=e.get(s)||[];i.find(a=>a.chain===n.chain)||i.push(n),e.set(s,i)}),e},getConnectorName(t){return t&&({"Trust Wallet":"Trust"}[t]||t)},getUniqueConnectorsByName(t){const e=[];return t.forEach(n=>{e.find(r=>r.chain===n.chain)||e.push(n)}),e},addConnector(t){var e,n,r;if(t.id===T.CONNECTOR_ID.AUTH){const s=t,i=Vo(B.state),o=un.getSnapshot().themeMode,a=un.getSnapshot().themeVariables;(n=(e=s==null?void 0:s.provider)==null?void 0:e.syncDappData)==null||n.call(e,{metadata:i.metadata,sdkVersion:i.sdkVersion,projectId:i.projectId,sdkType:i.sdkType}),(r=s==null?void 0:s.provider)==null||r.syncTheme({themeMode:o,themeVariables:a,w3mThemeVariables:Ho(a,o)}),z.setConnectors([t])}else z.setConnectors([t])},getAuthConnector(t){var r;const e=t||w.state.activeChain,n=ke.connectors.find(s=>s.id===T.CONNECTOR_ID.AUTH);if(n)return(r=n==null?void 0:n.connectors)!=null&&r.length?n.connectors.find(i=>i.chain===e):n},getAnnouncedConnectorRdns(){return ke.connectors.filter(t=>t.type==="ANNOUNCED").map(t=>{var e;return(e=t.info)==null?void 0:e.rdns})},getConnectorById(t){return Xt.sortConnectorsByPriority(ke.allConnectors).find(n=>n.id===t)},getConnector({id:t,namespace:e}){const n=e||w.state.activeChain,r=ke.allConnectors.filter(o=>o.chain===n);return Xt.sortConnectorsByPriority(r).find(o=>o.id===t||o.explorerId===t)},syncIfAuthConnector(t){var i,o;if(t.id!=="AUTH")return;const e=t,n=Vo(B.state),r=un.getSnapshot().themeMode,s=un.getSnapshot().themeVariables;(o=(i=e==null?void 0:e.provider)==null?void 0:i.syncDappData)==null||o.call(i,{metadata:n.metadata,sdkVersion:n.sdkVersion,sdkType:n.sdkType,projectId:n.projectId}),e.provider.syncTheme({themeMode:r,themeVariables:s,w3mThemeVariables:Ho(s,r)})},getConnectorsByNamespace(t){const e=ke.allConnectors.filter(n=>n.chain===t);return z.mergeMultiChainConnectors(e)},canSwitchToSmartAccount(t){return w.checkIfSmartAccountEnabled()&&Nn(t)===at.ACCOUNT_TYPES.EOA},selectWalletConnector(t){var s;const e=(s=pe.state.data)==null?void 0:s.redirectView,n=w.state.activeChain,r=n?z.getConnector({id:t.id,namespace:n}):void 0;bC.handleMobileDeeplinkRedirect((r==null?void 0:r.explorerId)||t.id,w.state.activeChain),r?pe.push("ConnectingExternal",{connector:r,wallet:t,redirectView:e}):pe.push("ConnectingWalletConnect",{wallet:t,redirectView:e})},getConnectors(t){return t?z.getConnectorsByNamespace(t):z.mergeMultiChainConnectors(ke.allConnectors)},setFilterByNamespace(t){ke.filterByNamespace=t,ke.connectors=z.getConnectors(t),ne.setFilterByNamespace(t)},setConnectorId(t,e){t&&(ke.activeConnectorIds={...ke.activeConnectorIds,[e]:t},j.setConnectedConnectorId(e,t))},removeConnectorId(t){ke.activeConnectorIds={...ke.activeConnectorIds,[t]:void 0},j.deleteConnectedConnectorId(t)},getConnectorId(t){if(t)return ke.activeConnectorIds[t]},isConnected(t){return t?!!ke.activeConnectorIds[t]:Object.values(ke.activeConnectorIds).some(e=>!!e)},resetConnectorIds(){ke.activeConnectorIds={...Iy}},extendConnectorsWithExplorerWallets(t){ke.allConnectors.forEach(r=>{const s=t.find(i=>{var o;return i.id===r.id||i.rdns&&i.rdns===((o=r.info)==null?void 0:o.rdns)});s&&(r.explorerWallet=s)});const e=z.getEnabledNamespaces(),n=z.getEnabledConnectors(e);ke.connectors=z.mergeMultiChainConnectors(n)},async connect(t={}){const{namespace:e}=t;return z.setFilterByNamespace(e),pe.push("Connect",{addWalletForNamespace:e}),new Promise((n,r)=>{if(e){const s=w.subscribeChainProp("accountState",o=>{o!=null&&o.caipAddress&&(n({caipAddress:o==null?void 0:o.caipAddress}),s())},e),i=Re.subscribeKey("open",o=>{o||(r(new Error("Modal closed")),i())})}else{const s=w.subscribeKey("activeCaipAddress",o=>{o&&(n({caipAddress:o}),s())}),i=Re.subscribeKey("open",o=>{o||(r(new Error("Modal closed")),i())})}})}},z=qn(xC),PC=1e3,co={checkNamespaceConnectorId(t,e){return z.getConnectorId(t)===e},isSocialProvider(t){return Oe.DEFAULT_REMOTE_FEATURES.socials.includes(t)},connectWalletConnect({walletConnect:t,connector:e,closeModalOnConnect:n=!0,redirectViewOnModalClose:r="Connect",onOpen:s,onConnect:i}){return new Promise((o,a)=>{if(t&&z.setActiveConnector(e),s==null||s(J.isMobile()&&t),r){const l=Re.subscribeKey("open",u=>{u||(pe.state.view!==r&&pe.replace(r),l(),a(new Error("Modal closed")))})}const c=w.subscribeKey("activeCaipAddress",l=>{l&&(i==null||i(),n&&Re.close(),c(),o(wt.parseCaipAddress(l)))})})},connectExternal(t){return new Promise((e,n)=>{const r=w.subscribeKey("activeCaipAddress",s=>{s&&(Re.close(),r(),e(wt.parseCaipAddress(s)))});V.connectExternal(t,t.chain).catch(()=>{r(),n(new Error("Connection rejected"))})})},connectSocial({social:t,namespace:e,closeModalOnConnect:n=!0,onOpenFarcaster:r,onConnect:s}){let i,o=!1,a=null;const c=e||w.state.activeChain,l=w.subscribeKey("activeCaipAddress",u=>{u&&(n&&Re.close(),l())});return new Promise((u,d)=>{async function h(p){var g;if((g=p.data)!=null&&g.resultUri)if(p.origin===T.SECURE_SITE_SDK_ORIGIN){window.removeEventListener("message",h,!1);try{const y=z.getAuthConnector(c);if(y&&!o){i&&i.close(),o=!0;const v=p.data.resultUri;be.sendEvent({type:"track",event:"SOCIAL_LOGIN_REQUEST_USER_DATA",properties:{provider:t}}),j.setConnectedSocialProvider(t),await V.connectExternal({id:y.id,type:y.type,socialUri:v},y.chain);const A=w.state.activeCaipAddress;if(!A){d(new Error("Failed to connect"));return}u(wt.parseCaipAddress(A)),be.sendEvent({type:"track",event:"SOCIAL_LOGIN_SUCCESS",properties:{provider:t}})}}catch(y){be.sendEvent({type:"track",event:"SOCIAL_LOGIN_ERROR",properties:{provider:t,message:J.parseError(y)}}),d(new Error("Failed to connect"))}}else be.sendEvent({type:"track",event:"SOCIAL_LOGIN_ERROR",properties:{provider:t,message:"Untrusted Origin"}})}async function f(){if(be.sendEvent({type:"track",event:"SOCIAL_LOGIN_STARTED",properties:{provider:t}}),t==="farcaster"){r==null||r();const p=Re.subscribeKey("open",y=>{!y&&t==="farcaster"&&(d(new Error("Popup closed")),s==null||s(),p())}),g=z.getAuthConnector();if(g){const y=w.getAccountData(c);if(!(y!=null&&y.farcasterUrl))try{const{url:v}=await g.provider.getFarcasterUri();w.setAccountProp("farcasterUrl",v,c)}catch{d(new Error("Failed to connect to farcaster"))}}}else{const p=z.getAuthConnector();a=J.returnOpenHref(`${T.SECURE_SITE_SDK_ORIGIN}/loading`,"popupWindow","width=600,height=800,scrollbars=yes");try{if(p){const{uri:g}=await p.provider.getSocialRedirectUri({provider:t});if(a&&g){a.location.href=g,i=a;const y=setInterval(()=>{i!=null&&i.closed&&!o&&(d(new Error("Popup closed")),clearInterval(y))},1e3);window.addEventListener("message",h,!1)}else a==null||a.close(),d(new Error("Failed to initiate social connection"))}}catch{d(new Error("Failed to initiate social connection")),a==null||a.close()}}}f()})},connectEmail({closeModalOnConnect:t=!0,redirectViewOnModalClose:e="Connect",onOpen:n,onConnect:r}){return new Promise((s,i)=>{if(n==null||n(),e){const a=Re.subscribeKey("open",c=>{c||(pe.state.view!==e&&pe.replace(e),a(),i(new Error("Modal closed")))})}const o=w.subscribeKey("activeCaipAddress",a=>{a&&(r==null||r(),t&&Re.close(),o(),s(wt.parseCaipAddress(a)))})})},async updateEmail(){const t=j.getConnectedConnectorId(w.state.activeChain),e=z.getAuthConnector();if(!e)throw new Error("No auth connector found");if(t!==T.CONNECTOR_ID.AUTH)throw new Error("Not connected to email or social");const n=e.provider.getEmail()??"";return await Re.open({view:"UpdateEmailWallet",data:{email:n,redirectView:void 0}}),new Promise((r,s)=>{const i=setInterval(()=>{const a=e.provider.getEmail()??"";a!==n&&(Re.close(),clearInterval(i),o(),r({email:a}))},PC),o=Re.subscribeKey("open",a=>{a||(pe.state.view!=="Connect"&&pe.push("Connect"),clearInterval(i),o(),s(new Error("Modal closed")))})})},canSwitchToSmartAccount(t){return w.checkIfSmartAccountEnabled()&&Nn(t)===at.ACCOUNT_TYPES.EOA}};function Ny(){var r,s;const t=((r=w.state.activeCaipNetwork)==null?void 0:r.chainNamespace)||"eip155",e=((s=w.state.activeCaipNetwork)==null?void 0:s.id)||1,n=Oe.NATIVE_TOKEN_ADDRESS[t];return`${t}:${e}:${n}`}function IF(t){return Oe.NATIVE_TOKEN_ADDRESS[t]}function Nn(t){var n;return(n=w.getAccountData(t))==null?void 0:n.preferredAccountType}function No(t){var e,n;return t?(n=(e=w.state.chains.get(t))==null?void 0:e.networkState)==null?void 0:n.caipNetwork:w.state.activeCaipNetwork}const kc={getConnectionStatus(t,e){const n=z.state.activeConnectorIds[e],r=V.getConnections(e);return!!n&&t.connectorId===n?"connected":r.some(o=>o.connectorId.toLowerCase()===t.connectorId.toLowerCase())?"active":"disconnected"},excludeConnectorAddressFromConnections({connections:t,connectorId:e,addresses:n}){return t.map(r=>{if((e?r.connectorId.toLowerCase()===e.toLowerCase():!1)&&n){const i=r.accounts.filter(o=>!n.some(c=>c.toLowerCase()===o.address.toLowerCase()));return{...r,accounts:i}}return r})},excludeExistingConnections(t,e){const n=new Set(t);return e.filter(r=>!n.has(r.connectorId))},getConnectionsByConnectorId(t,e){return t.filter(n=>n.connectorId.toLowerCase()===e.toLowerCase())},getConnectionsData(t){var a;const e=!!((a=B.state.remoteFeatures)!=null&&a.multiWallet),n=z.state.activeConnectorIds[t],r=V.getConnections(t),i=(V.state.recentConnections.get(t)??[]).filter(c=>z.getConnectorById(c.connectorId)),o=kc.excludeExistingConnections([...r.map(c=>c.connectorId),...n?[n]:[]],i);return e?{connections:r,recentConnections:o}:{connections:r.filter(c=>c.connectorId.toLowerCase()===(n==null?void 0:n.toLowerCase())),recentConnections:[]}},onConnectMobile(t){const e=V.state.wcUri;if(t!=null&&t.mobile_link&&e)try{V.setWcError(!1);const{mobile_link:n,link_mode:r,name:s}=t,{redirect:i,redirectUniversalLink:o,href:a}=J.formatNativeUrl(n,e,r),c=i,l=o,u=J.isIframe()?"_top":"_self";V.setWcLinking({name:s,href:a}),V.setRecentWallet(t),B.state.experimental_preferUniversalLinks&&l?J.openHref(l,u):J.openHref(c,u)}catch(n){be.sendEvent({type:"track",event:"CONNECT_PROXY_ERROR",properties:{message:n instanceof Error?n.message:"Error parsing the deep link",uri:e,mobile_link:t.mobile_link,name:t.name}}),V.setWcError(!0)}}},Ii=Xe({loading:!1,open:!1,selectedNetworkId:void 0,activeChain:void 0,initialized:!1,connectingWallet:void 0}),Tn={state:Ii,subscribe(t){return xt(Ii,()=>t(Ii))},subscribeOpen(t){return Pt(Ii,"open",t)},set(t){Object.assign(Ii,{...Ii,...t})}},Qe=Xe({transactions:[],transactionsByYear:{},lastNetworkInView:void 0,loading:!1,empty:!1,next:void 0}),DC={state:Qe,subscribe(t){return xt(Qe,()=>t(Qe))},setLastNetworkInView(t){Qe.lastNetworkInView=t},async fetchTransactions(t){var e;if(!t)throw new Error("Transactions can't be fetched without an accountAddress");Qe.loading=!0;try{const n=await me.fetchTransactions({account:t,cursor:Qe.next,chainId:(e=w.state.activeCaipNetwork)==null?void 0:e.caipNetworkId}),r=dc.filterSpamTransactions(n.data),s=dc.filterByConnectedChain(r),i=[...Qe.transactions,...s];Qe.loading=!1,Qe.transactions=i,Qe.transactionsByYear=dc.groupTransactionsByYearAndMonth(Qe.transactionsByYear,s),Qe.empty=i.length===0,Qe.next=n.next?n.next:void 0}catch{const r=w.state.activeChain;be.sendEvent({type:"track",event:"ERROR_FETCH_TRANSACTIONS",properties:{address:t,projectId:B.state.projectId,cursor:Qe.next,isSmartAccount:Nn(r)===at.ACCOUNT_TYPES.SMART_ACCOUNT}}),gr.showError("Failed to fetch transactions"),Qe.loading=!1,Qe.empty=!0,Qe.next=void 0}},groupTransactionsByYearAndMonth(t={},e=[]){const n=t;return e.forEach(r=>{const s=new Date(r.metadata.minedAt).getFullYear(),i=new Date(r.metadata.minedAt).getMonth(),o=n[s]??{},c=(o[i]??[]).filter(l=>l.id!==r.id);n[s]={...o,[i]:[...c,r].sort((l,u)=>new Date(u.metadata.minedAt).getTime()-new Date(l.metadata.minedAt).getTime())}}),n},filterSpamTransactions(t){return t.filter(e=>{var r;return!((r=e.transfers)==null?void 0:r.every(s=>{var i;return((i=s.nft_info)==null?void 0:i.flags.is_spam)===!0}))})},filterByConnectedChain(t){var r;const e=(r=w.state.activeCaipNetwork)==null?void 0:r.caipNetworkId;return t.filter(s=>s.metadata.chain===e)},clearCursor(){Qe.next=void 0},resetTransactions(){Qe.transactions=[],Qe.transactionsByYear={},Qe.lastNetworkInView=void 0,Qe.loading=!1,Qe.empty=!1,Qe.next=void 0}},dc=qn(DC,"API_ERROR"),Te=Xe({connections:new Map,recentConnections:new Map,isSwitchingConnection:!1,wcError:!1,wcFetchingUri:!1,buffering:!1,status:"disconnected"});let Ds;const kC={state:Te,subscribe(t){return xt(Te,()=>t(Te))},subscribeKey(t,e){return Pt(Te,t,e)},_getClient(){return Te._client},setClient(t){Te._client=Ko(t)},initialize(t){const e=t.filter(n=>!!n.namespace).map(n=>n.namespace);V.syncStorageConnections(e)},syncStorageConnections(t){const e=j.getConnections(),n=t??Array.from(w.state.chains.keys());for(const r of n){const s=e[r]??[],i=new Map(Te.recentConnections);i.set(r,s),Te.recentConnections=i}},getConnections(t){return t?Te.connections.get(t)??[]:[]},hasAnyConnection(t){const e=V.state.connections;return Array.from(e.values()).flatMap(n=>n).some(({connectorId:n})=>n===t)},async connectWalletConnect({cache:t="auto"}={}){var n,r,s,i;Te.wcFetchingUri=!0;const e=J.isTelegram()||J.isSafari()&&J.isIos();if(t==="always"||t==="auto"&&e){if(Ds){await Ds,Ds=void 0;return}if(!J.isPairingExpired(Te==null?void 0:Te.wcPairingExpiry)){const o=Te.wcUri;Te.wcUri=o;return}Ds=(r=(n=V._getClient())==null?void 0:n.connectWalletConnect)==null?void 0:r.call(n).catch(()=>{}),V.state.status="connecting",await Ds,Ds=void 0,Te.wcPairingExpiry=void 0,V.state.status="connected"}else await((i=(s=V._getClient())==null?void 0:s.connectWalletConnect)==null?void 0:i.call(s))},async connectExternal(t,e,n=!0){var o,a,c;const r=await((a=(o=V._getClient())==null?void 0:o.connectExternal)==null?void 0:a.call(o,t));n&&w.setActiveNamespace(e);const s=z.state.allConnectors.find(l=>l.id===(t==null?void 0:t.id)),i=t.type==="AUTH"?"email":"browser";return be.sendEvent({type:"track",event:"CONNECT_SUCCESS",properties:{method:i,name:(s==null?void 0:s.name)||"Unknown",view:pe.state.view,walletRank:(c=s==null?void 0:s.explorerWallet)==null?void 0:c.order}}),r},async reconnectExternal(t){var n,r;await((r=(n=V._getClient())==null?void 0:n.reconnectExternal)==null?void 0:r.call(n,t));const e=t.chain||w.state.activeChain;e&&z.setConnectorId(t.id,e)},async setPreferredAccountType(t,e){var r;if(!e)return;Re.setLoading(!0,w.state.activeChain);const n=z.getAuthConnector();n&&(w.setAccountProp("preferredAccountType",t,e),await n.provider.setPreferredAccount(t),j.setPreferredAccountTypes(Object.entries(w.state.chains).reduce((s,[i,o])=>{const a=i,c=Nn(a);return c!==void 0&&(s[a]=c),s},{})),await V.reconnectExternal(n),Re.setLoading(!1,w.state.activeChain),be.sendEvent({type:"track",event:"SET_PREFERRED_ACCOUNT_TYPE",properties:{accountType:t,network:((r=w.state.activeCaipNetwork)==null?void 0:r.caipNetworkId)||""}}))},async signMessage(t){var e;return(e=V._getClient())==null?void 0:e.signMessage(t)},parseUnits(t,e){var n;return(n=V._getClient())==null?void 0:n.parseUnits(t,e)},formatUnits(t,e){var n;return(n=V._getClient())==null?void 0:n.formatUnits(t,e)},updateBalance(t){var e;return(e=V._getClient())==null?void 0:e.updateBalance(t)},async sendTransaction(t){var e;return(e=V._getClient())==null?void 0:e.sendTransaction(t)},async getCapabilities(t){var e;return(e=V._getClient())==null?void 0:e.getCapabilities(t)},async grantPermissions(t){var e;return(e=V._getClient())==null?void 0:e.grantPermissions(t)},async walletGetAssets(t){var e;return((e=V._getClient())==null?void 0:e.walletGetAssets(t))??{}},async estimateGas(t){var e;return(e=V._getClient())==null?void 0:e.estimateGas(t)},async writeContract(t){var e;return(e=V._getClient())==null?void 0:e.writeContract(t)},async writeSolanaTransaction(t){var e;return(e=V._getClient())==null?void 0:e.writeSolanaTransaction(t)},async getEnsAddress(t){var e;return(e=V._getClient())==null?void 0:e.getEnsAddress(t)},async getEnsAvatar(t){var e;return(e=V._getClient())==null?void 0:e.getEnsAvatar(t)},checkInstalled(t){var e,n;return((n=(e=V._getClient())==null?void 0:e.checkInstalled)==null?void 0:n.call(e,t))||!1},resetWcConnection(){Te.wcUri=void 0,Te.wcPairingExpiry=void 0,Te.wcLinking=void 0,Te.recentWallet=void 0,Te.wcFetchingUri=!1,Te.status="disconnected",dc.resetTransactions(),j.deleteWalletConnectDeepLink(),j.deleteRecentWallet(),Tn.set({connectingWallet:void 0})},resetUri(){Te.wcUri=void 0,Te.wcPairingExpiry=void 0,Ds=void 0,Te.wcFetchingUri=!1,Tn.set({connectingWallet:void 0})},finalizeWcConnection(t){var r,s;const{wcLinking:e,recentWallet:n}=V.state;e&&j.setWalletConnectDeepLink(e),n&&j.setAppKitRecent(n),t&&be.sendEvent({type:"track",event:"CONNECT_SUCCESS",address:t,properties:{method:e?"mobile":"qrcode",name:((s=(r=pe.state.data)==null?void 0:r.wallet)==null?void 0:s.name)||"Unknown",view:pe.state.view,walletRank:n==null?void 0:n.order}})},setWcBasic(t){Te.wcBasic=t},setUri(t){Te.wcUri=t,Te.wcFetchingUri=!1,Te.wcPairingExpiry=J.getPairingExpiry()},setWcLinking(t){Te.wcLinking=t},setWcError(t){Te.wcError=t,Te.wcFetchingUri=!1,Te.buffering=!1},setRecentWallet(t){Te.recentWallet=t},setBuffering(t){Te.buffering=t},setStatus(t){Te.status=t},setIsSwitchingConnection(t){Te.isSwitchingConnection=t},async disconnect({id:t,namespace:e,initialDisconnect:n}={}){var r;try{await((r=V._getClient())==null?void 0:r.disconnect({id:t,chainNamespace:e,initialDisconnect:n}))}catch(s){throw new ai("Failed to disconnect","INTERNAL_SDK_ERROR",s)}},async disconnectConnector({id:t,namespace:e}){var n;try{await((n=V._getClient())==null?void 0:n.disconnectConnector({id:t,namespace:e}))}catch(r){throw new ai("Failed to disconnect connector","INTERNAL_SDK_ERROR",r)}},setConnections(t,e){const n=new Map(Te.connections);n.set(e,t),Te.connections=n},async handleAuthAccountSwitch({address:t,namespace:e}){var i,o;const n=w.getAccountData(e),r=(o=(i=n==null?void 0:n.user)==null?void 0:i.accounts)==null?void 0:o.find(a=>a.type==="smartAccount"),s=r&&r.address.toLowerCase()===t.toLowerCase()&&co.canSwitchToSmartAccount(e)?"smartAccount":"eoa";await V.setPreferredAccountType(s,e)},async handleActiveConnection({connection:t,namespace:e,address:n}){const r=z.getConnectorById(t.connectorId),s=t.connectorId===T.CONNECTOR_ID.AUTH;if(!r)throw new Error(`No connector found for connection: ${t.connectorId}`);if(s)n&&await V.handleAuthAccountSwitch({address:n,namespace:e});else{const i=await V.connectExternal({id:r.id,type:r.type,provider:r.provider,address:n,chain:e},e);return i==null?void 0:i.address}return n},async handleDisconnectedConnection({connection:t,namespace:e,address:n,closeModalOnConnect:r}){var l,u;const s=z.getConnectorById(t.connectorId),i=(u=(l=t.auth)==null?void 0:l.name)==null?void 0:u.toLowerCase(),o=t.connectorId===T.CONNECTOR_ID.AUTH,a=t.connectorId===T.CONNECTOR_ID.WALLET_CONNECT;if(!s)throw new Error(`No connector found for connection: ${t.connectorId}`);let c;if(o)if(i&&co.isSocialProvider(i)){const{address:d}=await co.connectSocial({social:i,closeModalOnConnect:r,onOpenFarcaster(){Re.open({view:"ConnectingFarcaster"})},onConnect(){pe.replace("ProfileWallets")}});c=d}else{const{address:d}=await co.connectEmail({closeModalOnConnect:r,onOpen(){Re.open({view:"EmailLogin"})},onConnect(){pe.replace("ProfileWallets")}});c=d}else if(a){const{address:d}=await co.connectWalletConnect({walletConnect:!0,connector:s,closeModalOnConnect:r,onOpen(h){const f=h?"AllWallets":"ConnectingWalletConnect";Re.state.open?pe.push(f):Re.open({view:f})},onConnect(){pe.replace("ProfileWallets")}});c=d}else{const d=await V.connectExternal({id:s.id,type:s.type,provider:s.provider,chain:e},e);d&&(c=d.address)}return o&&n&&await V.handleAuthAccountSwitch({address:n,namespace:e}),c},async switchConnection({connection:t,address:e,namespace:n,closeModalOnConnect:r,onChange:s}){var c;let i;const o=(c=w.getAccountData(n))==null?void 0:c.caipAddress;if(o){const{address:l}=wt.parseCaipAddress(o);i=l}const a=kc.getConnectionStatus(t,n);switch(a){case"connected":case"active":{const l=await V.handleActiveConnection({connection:t,namespace:n,address:e});if(i&&l){const u=l.toLowerCase()!==i.toLowerCase();s==null||s({address:l,namespace:n,hasSwitchedAccount:u,hasSwitchedWallet:a==="active"})}break}case"disconnected":{const l=await V.handleDisconnectedConnection({connection:t,namespace:n,address:e,closeModalOnConnect:r});l&&(s==null||s({address:l,namespace:n,hasSwitchedAccount:!0,hasSwitchedWallet:!0}));break}default:throw new Error(`Invalid connection status: ${a}`)}}},V=qn(kC),Fl={createBalance(t,e){const n={name:t.metadata.name||"",symbol:t.metadata.symbol||"",decimals:t.metadata.decimals||0,value:t.metadata.value||0,price:t.metadata.price||0,iconUrl:t.metadata.iconUrl||""};return{name:n.name,symbol:n.symbol,chainId:e,address:t.address==="native"?void 0:this.convertAddressToCAIP10Address(t.address,e),value:n.value,price:n.price,quantity:{decimals:n.decimals.toString(),numeric:this.convertHexToBalance({hex:t.balance,decimals:n.decimals})},iconUrl:n.iconUrl}},convertHexToBalance({hex:t,decimals:e}){return zt.formatUnits(BigInt(t),e)},convertAddressToCAIP10Address(t,e){return`${e}:${t}`},createCAIP2ChainId(t,e){return`${e}:${parseInt(t,16)}`},getChainIdHexFromCAIP2ChainId(t){const e=t.split(":");if(e.length<2||!e[1])return"0x0";const n=e[1],r=parseInt(n,10);return isNaN(r)?"0x0":`0x${r.toString(16)}`},isWalletGetAssetsResponse(t){return typeof t!="object"||t===null?!1:Object.values(t).every(e=>Array.isArray(e)&&e.every(n=>this.isValidAsset(n)))},isValidAsset(t){return typeof t=="object"&&t!==null&&typeof t.address=="string"&&typeof t.balance=="string"&&(t.type==="ERC20"||t.type==="NATIVE")&&typeof t.metadata=="object"&&t.metadata!==null&&typeof t.metadata.name=="string"&&typeof t.metadata.symbol=="string"&&typeof t.metadata.decimals=="number"&&typeof t.metadata.price=="number"&&typeof t.metadata.iconUrl=="string"}};let Ll;async function Df(){if(!Ll){const{createPublicClient:t,http:e,defineChain:n}=await Jt(()=>Promise.resolve().then(()=>dC),void 0);Ll={createPublicClient:t,http:e,defineChain:n}}return Ll}const rd={getBlockchainApiRpcUrl(t,e){const n=new URL("https://rpc.walletconnect.org/v1/");return n.searchParams.set("chainId",t),n.searchParams.set("projectId",e),n.toString()},async getViemChain(t){const{defineChain:e}=await Df(),{chainId:n}=wt.parseCaipNetworkId(t.caipNetworkId);return e({...t,id:Number(n)})},async createViemPublicClient(t){const{createPublicClient:e,http:n}=await Df(),r=B.state.projectId,s=await rd.getViemChain(t);if(!s)throw new Error(`Chain ${t.caipNetworkId} not found in viem/chains`);return e({chain:s,transport:n(rd.getBlockchainApiRpcUrl(t.caipNetworkId,r))})}},hh={async getMyTokensWithBalance(t={forceUpdate:void 0,caipNetwork:w.state.activeCaipNetwork,address:(e=>(e=w.getAccountData())==null?void 0:e.address)()}){const{forceUpdate:n,caipNetwork:r,address:s}=t,i=z.getConnectorId("eip155")===T.CONNECTOR_ID.AUTH;if(!s)return[];const o=r?`${r.caipNetworkId}:${s}`:s,a=j.getBalanceCacheForCaipAddress(o);if(a)return a.balances;if(r&&r.chainNamespace===T.CHAIN.EVM&&i){const l=await this.getEIP155Balances(s,r);if(l)return this.filterLowQualityTokens(l)}const c=await me.getBalance(s,r==null?void 0:r.caipNetworkId,n);return this.filterLowQualityTokens(c.balances)},async getEIP155Balances(t,e){var n,r;try{const s=Fl.getChainIdHexFromCAIP2ChainId(e.caipNetworkId),i=await V.getCapabilities(t);if(!((r=(n=i==null?void 0:i[s])==null?void 0:n.assetDiscovery)!=null&&r.supported))return null;const o=await V.walletGetAssets({account:t,chainFilter:[s]});if(!Fl.isWalletGetAssetsResponse(o))return null;const c=(o[s]||[]).map(l=>Fl.createBalance(l,e.caipNetworkId));return j.updateBalanceCache({caipAddress:`${e.caipNetworkId}:${t}`,balance:{balances:c},timestamp:Date.now()}),c}catch{return null}},filterLowQualityTokens(t){return t.filter(e=>e.quantity.decimals!=="0")},async fetchERC20Balance({caipAddress:t,assetAddress:e,caipNetwork:n}){const r=await rd.createViemPublicClient(n),{address:s}=wt.parseCaipAddress(t),[{result:i},{result:o},{result:a},{result:c}]=await r.multicall({contracts:[{address:e,functionName:"name",args:[],abi:zt.erc20Abi},{address:e,functionName:"symbol",args:[],abi:zt.erc20Abi},{address:e,functionName:"balanceOf",args:[s],abi:zt.erc20Abi},{address:e,functionName:"decimals",args:[],abi:zt.erc20Abi}]});return{name:i,symbol:o,decimals:c,balance:a&&c?zt.formatUnits(a,c):"0"}}},Ml={adapters:{}},Ty={state:Ml,initialize(t){Ml.adapters={...t}},get(t){return Ml.adapters[t]}},Uc={eip155:void 0,solana:void 0,polkadot:void 0,bip122:void 0,cosmos:void 0,sui:void 0,stacks:void 0,ton:void 0},rn=Xe({providers:{...Uc},providerIds:{...Uc}}),Ke={state:rn,subscribeKey(t,e){return Pt(rn,t,e)},subscribe(t){return xt(rn,()=>{t(rn)})},subscribeProviders(t){return xt(rn.providers,()=>t(rn.providers))},setProvider(t,e){t&&e&&(rn.providers[t]=Ko(e))},getProvider(t){if(t)return rn.providers[t]},setProviderId(t,e){e&&(rn.providerIds[t]=e)},getProviderId(t){if(t)return rn.providerIds[t]},reset(){rn.providers={...Uc},rn.providerIds={...Uc}},resetChain(t){rn.providers[t]=void 0,rn.providerIds[t]=void 0}},UC={async getTokenList(t){var r;const e=await me.fetchSwapTokens({chainId:t});return((r=e==null?void 0:e.tokens)==null?void 0:r.map(s=>({...s,eip2612:!1,quantity:{decimals:"0",numeric:"0"},price:0,value:0})))||[]},async fetchGasPrice(){var e;const t=w.state.activeCaipNetwork;if(!t)return null;try{switch(t.chainNamespace){case"solana":const n=(e=await(V==null?void 0:V.estimateGas({chainNamespace:"solana"})))==null?void 0:e.toString();return{standard:n,fast:n,instant:n};case"eip155":default:return await me.fetchGasPrice({chainId:t.caipNetworkId})}}catch{return null}},async fetchSwapAllowance({tokenAddress:t,userAddress:e,sourceTokenAmount:n,sourceTokenDecimals:r}){const s=await me.fetchSwapAllowance({tokenAddress:t,userAddress:e});if(s!=null&&s.allowance&&n&&r){const i=V.parseUnits(n,r)||0;return BigInt(s.allowance)>=i}return!1},async getMyTokensWithBalance(t){var n;const e=await hh.getMyTokensWithBalance({forceUpdate:t,caipNetwork:w.state.activeCaipNetwork,address:(n=w.getAccountData())==null?void 0:n.address});return w.setAccountProp("tokenBalance",e,w.state.activeChain),this.mapBalancesToSwapTokens(e)},mapBalancesToSwapTokens(t){return(t==null?void 0:t.map(e=>({...e,address:e!=null&&e.address?e.address:Ny(),decimals:parseInt(e.quantity.decimals,10),logoUri:e.iconUrl,eip2612:!1})))||[]},async handleSwapError(t){var e,n;try{const r=t==null?void 0:t.cause;if(!(r!=null&&r.json))return;const s=await r.json(),i=(n=(e=s==null?void 0:s.reasons)==null?void 0:e[0])==null?void 0:n.description;return i!=null&&i.includes("insufficient liquidity")?"Insufficient liquidity":void 0}catch{return}}},Ue=Xe({tokenBalances:[],loading:!1}),$C={state:Ue,subscribe(t){return xt(Ue,()=>t(Ue))},subscribeKey(t,e){return Pt(Ue,t,e)},setToken(t){t&&(Ue.token=Ko(t))},setTokenAmount(t){Ue.sendTokenAmount=t},setReceiverAddress(t){Ue.receiverAddress=t},setReceiverProfileImageUrl(t){Ue.receiverProfileImageUrl=t},setReceiverProfileName(t){Ue.receiverProfileName=t},setNetworkBalanceInUsd(t){Ue.networkBalanceInUSD=t},setLoading(t){Ue.loading=t},getSdkEventProperties(t){var e,n;return{message:J.parseError(t),isSmartAccount:Nn(w.state.activeChain)===at.ACCOUNT_TYPES.SMART_ACCOUNT,token:((e=Ue.token)==null?void 0:e.symbol)||"",amount:Ue.sendTokenAmount??0,network:((n=w.state.activeCaipNetwork)==null?void 0:n.caipNetworkId)||""}},async sendToken(){var t;try{switch(Se.setLoading(!0),(t=w.state.activeCaipNetwork)==null?void 0:t.chainNamespace){case"eip155":await Se.sendEvmToken();return;case"solana":await Se.sendSolanaToken();return;default:throw new Error("Unsupported chain")}}catch(e){throw Mr.isUserRejectedRequestError(e)?new dy(e):e}finally{Se.setLoading(!1)}},async sendEvmToken(){var n,r,s;const t=w.state.activeChain;if(!t)throw new Error("SendController:sendEvmToken - activeChainNamespace is required");const e=Nn(t);if(!Se.state.sendTokenAmount||!Se.state.receiverAddress)throw new Error("An amount and receiver address are required");if(!Se.state.token)throw new Error("A token is required");if((n=Se.state.token)!=null&&n.address){be.sendEvent({type:"track",event:"SEND_INITIATED",properties:{isSmartAccount:e===at.ACCOUNT_TYPES.SMART_ACCOUNT,token:Se.state.token.address,amount:Se.state.sendTokenAmount,network:((r=w.state.activeCaipNetwork)==null?void 0:r.caipNetworkId)||""}});const{hash:i}=await Se.sendERC20Token({receiverAddress:Se.state.receiverAddress,tokenAddress:Se.state.token.address,sendTokenAmount:Se.state.sendTokenAmount,decimals:Se.state.token.quantity.decimals});i&&(Ue.hash=i)}else{be.sendEvent({type:"track",event:"SEND_INITIATED",properties:{isSmartAccount:e===at.ACCOUNT_TYPES.SMART_ACCOUNT,token:Se.state.token.symbol||"",amount:Se.state.sendTokenAmount,network:((s=w.state.activeCaipNetwork)==null?void 0:s.caipNetworkId)||""}});const{hash:i}=await Se.sendNativeToken({receiverAddress:Se.state.receiverAddress,sendTokenAmount:Se.state.sendTokenAmount,decimals:Se.state.token.quantity.decimals});i&&(Ue.hash=i)}},async fetchTokenBalance(t){var o,a,c;Ue.loading=!0;const e=w.state.activeChain,n=(o=w.state.activeCaipNetwork)==null?void 0:o.caipNetworkId,r=(a=w.state.activeCaipNetwork)==null?void 0:a.chainNamespace,s=((c=w.getAccountData(e))==null?void 0:c.caipAddress)??w.state.activeCaipAddress,i=s?J.getPlainAddress(s):void 0;if(Ue.lastRetry&&!J.isAllowedRetry(Ue.lastRetry,30*Oe.ONE_SEC_MS))return Ue.loading=!1,[];try{if(i&&n&&r){const l=await hh.getMyTokensWithBalance();return Ue.tokenBalances=l,Ue.lastRetry=void 0,l}}catch(l){Ue.lastRetry=Date.now(),t==null||t(l),gr.showError("Token Balance Unavailable")}finally{Ue.loading=!1}return[]},fetchNetworkBalance(){if(Ue.tokenBalances.length===0)return;const t=UC.mapBalancesToSwapTokens(Ue.tokenBalances);if(!t)return;const e=t.find(n=>n.address===Ny());e&&(Ue.networkBalanceInUSD=e?uy.multiply(e.quantity.numeric,e.price).toString():"0")},async sendNativeToken(t){var o,a,c,l;pe.pushTransactionStack({});const e=t.receiverAddress,n=(o=w.getAccountData())==null?void 0:o.address,r=V.parseUnits(t.sendTokenAmount.toString(),Number(t.decimals)),s="0x",i=await V.sendTransaction({chainNamespace:T.CHAIN.EVM,to:e,address:n,data:s,value:r??BigInt(0)});return be.sendEvent({type:"track",event:"SEND_SUCCESS",properties:{isSmartAccount:Nn("eip155")===at.ACCOUNT_TYPES.SMART_ACCOUNT,token:((a=Se.state.token)==null?void 0:a.symbol)||"",amount:t.sendTokenAmount,network:((c=w.state.activeCaipNetwork)==null?void 0:c.caipNetworkId)||"",hash:i||""}}),(l=V._getClient())==null||l.updateBalance("eip155"),Se.resetSend(),{hash:i}},async sendERC20Token(t){var r,s,i;pe.pushTransactionStack({onSuccess(){pe.replace("Account")}});const e=V.parseUnits(t.sendTokenAmount.toString(),Number(t.decimals)),n=(r=w.getAccountData())==null?void 0:r.address;if(n&&t.sendTokenAmount&&t.receiverAddress&&t.tokenAddress){const o=J.getPlainAddress(t.tokenAddress);if(!o)throw new Error("SendController:sendERC20Token - tokenAddress is required");const a=await V.writeContract({fromAddress:n,tokenAddress:o,args:[t.receiverAddress,e??BigInt(0)],method:"transfer",abi:Ub.getERC20Abi(o),chainNamespace:T.CHAIN.EVM});return be.sendEvent({type:"track",event:"SEND_SUCCESS",properties:{isSmartAccount:Nn("eip155")===at.ACCOUNT_TYPES.SMART_ACCOUNT,token:((s=Se.state.token)==null?void 0:s.symbol)||"",amount:t.sendTokenAmount,network:((i=w.state.activeCaipNetwork)==null?void 0:i.caipNetworkId)||"",hash:a||""}}),Se.resetSend(),{hash:a}}return{hash:void 0}},async sendSolanaToken(){var n,r,s;if(!Se.state.sendTokenAmount||!Se.state.receiverAddress)throw new Error("An amount and receiver address are required");pe.pushTransactionStack({onSuccess(){pe.replace("Account")}});let t;Se.state.token&&Se.state.token.address!==Oe.SOLANA_NATIVE_TOKEN_ADDRESS&&(J.isCaipAddress(Se.state.token.address)?t=J.getPlainAddress(Se.state.token.address):t=Se.state.token.address);const e=await V.sendTransaction({chainNamespace:"solana",tokenMint:t,to:Se.state.receiverAddress,value:Se.state.sendTokenAmount});e&&(Ue.hash=e),(n=V._getClient())==null||n.updateBalance("solana"),be.sendEvent({type:"track",event:"SEND_SUCCESS",properties:{isSmartAccount:!1,token:((r=Se.state.token)==null?void 0:r.symbol)||"",amount:Se.state.sendTokenAmount,network:((s=w.state.activeCaipNetwork)==null?void 0:s.caipNetworkId)||"",hash:e||""}}),Se.resetSend()},resetSend(){Ue.token=void 0,Ue.sendTokenAmount=void 0,Ue.receiverAddress=void 0,Ue.receiverProfileImageUrl=void 0,Ue.receiverProfileName=void 0,Ue.loading=!1,Ue.tokenBalances=[]}},Se=qn($C),jl={currentTab:0,tokenBalance:[],smartAccountDeployed:!1,addressLabels:new Map,user:void 0,preferredAccountType:void 0},La={caipNetwork:void 0,supportsAllNetworks:!0,smartAccountEnabledNetworks:[]},Q=Xe({chains:Yb(),activeCaipAddress:void 0,activeChain:void 0,activeCaipNetwork:void 0,noAdapters:!1,universalAdapter:{connectionControllerClient:void 0},isSwitchingNamespace:!1}),Oy={state:Q,subscribe(t){return xt(Q,()=>{t(Q)})},subscribeKey(t,e){return Pt(Q,t,e)},subscribeAccountStateProp(t,e,n){var s;const r=n||Q.activeChain;return r?Pt(((s=Q.chains.get(r))==null?void 0:s.accountState)||{},t,e):()=>{}},subscribeChainProp(t,e,n){let r;return xt(Q.chains,()=>{var i;const s=n||Q.activeChain;if(s){const o=(i=Q.chains.get(s))==null?void 0:i[t];r!==o&&(r=o,e(o))}})},initialize(t,e,n){const{chainId:r,namespace:s}=j.getActiveNetworkProps(),i=e==null?void 0:e.find(u=>u.id.toString()===(r==null?void 0:r.toString())),a=t.find(u=>(u==null?void 0:u.namespace)===s)||(t==null?void 0:t[0]),c=t.map(u=>u.namespace).filter(u=>u!==void 0),l=B.state.enableEmbedded?new Set([...c]):new Set([...(e==null?void 0:e.map(u=>u.chainNamespace))??[]]);((t==null?void 0:t.length)===0||!a)&&(Q.noAdapters=!0),Q.noAdapters||(Q.activeChain=a==null?void 0:a.namespace,Q.activeCaipNetwork=i,w.setChainNetworkData(a==null?void 0:a.namespace,{caipNetwork:i}),Q.activeChain&&Tn.set({activeChain:a==null?void 0:a.namespace})),l.forEach(u=>{const d=e==null?void 0:e.filter(p=>p.chainNamespace===u),h=j.getPreferredAccountTypes()||{},f={...B.state.defaultAccountTypes,...h};w.state.chains.set(u,{namespace:u,networkState:Xe({...La,caipNetwork:d==null?void 0:d[0]}),accountState:Xe({...jl,preferredAccountType:f[u]}),caipNetworks:d??[],...n}),w.setRequestedCaipNetworks(d??[],u)})},removeAdapter(t){var e,n;if(Q.activeChain===t){const r=Array.from(Q.chains.entries()).find(([s])=>s!==t);if(r){const s=(n=(e=r[1])==null?void 0:e.caipNetworks)==null?void 0:n[0];s&&w.setActiveCaipNetwork(s)}}Q.chains.delete(t)},addAdapter(t,{connectionControllerClient:e},n){if(!t.namespace)throw new Error("ChainController:addAdapter - adapter must have a namespace");Q.chains.set(t.namespace,{namespace:t.namespace,networkState:{...La,caipNetwork:n[0]},accountState:{...jl},caipNetworks:n,connectionControllerClient:e}),w.setRequestedCaipNetworks((n==null?void 0:n.filter(r=>r.chainNamespace===t.namespace))??[],t.namespace)},addNetwork(t){var n;const e=Q.chains.get(t.chainNamespace);if(e){const r=[...e.caipNetworks||[]];(n=e.caipNetworks)!=null&&n.find(s=>s.id===t.id)||r.push(t),Q.chains.set(t.chainNamespace,{...e,caipNetworks:r}),w.setRequestedCaipNetworks(r,t.chainNamespace),z.filterByNamespace(t.chainNamespace,!0)}},removeNetwork(t,e){var r,s,i;const n=Q.chains.get(t);if(n){const o=((r=Q.activeCaipNetwork)==null?void 0:r.id)===e,a=[...((s=n.caipNetworks)==null?void 0:s.filter(c=>c.id!==e))||[]];o&&((i=n==null?void 0:n.caipNetworks)!=null&&i[0])&&w.setActiveCaipNetwork(n.caipNetworks[0]),Q.chains.set(t,{...n,caipNetworks:a}),w.setRequestedCaipNetworks(a||[],t),a.length===0&&z.filterByNamespace(t,!1)}},setAdapterNetworkState(t,e){const n=Q.chains.get(t);n&&(n.networkState={...n.networkState||La,...e},Q.chains.set(t,n))},setChainAccountData(t,e,n=!0){if(!t)throw new Error("Chain is required to update chain account data");const r=Q.chains.get(t);if(r){const s={...r.accountState||jl,...e};Q.chains.set(t,{...r,accountState:s}),(Q.chains.size===1||Q.activeChain===t)&&e.caipAddress&&(Q.activeCaipAddress=e.caipAddress)}},setChainNetworkData(t,e){if(!t)return;const n=Q.chains.get(t);if(n){const r={...n.networkState||La,...e};Q.chains.set(t,{...n,networkState:r})}},setAccountProp(t,e,n,r=!0){w.setChainAccountData(n,{[t]:e},r)},setActiveNamespace(t){var r,s;Q.activeChain=t;const e=t?Q.chains.get(t):void 0,n=(r=e==null?void 0:e.networkState)==null?void 0:r.caipNetwork;n!=null&&n.id&&t&&(Q.activeCaipAddress=(s=e==null?void 0:e.accountState)==null?void 0:s.caipAddress,Q.activeCaipNetwork=n,w.setChainNetworkData(t,{caipNetwork:n}),j.setActiveCaipNetworkId(n==null?void 0:n.caipNetworkId),Tn.set({activeChain:t,selectedNetworkId:n==null?void 0:n.caipNetworkId}))},setActiveCaipNetwork(t){var i,o;if(!t)return;const e=Q.activeChain===t.chainNamespace;e||w.setIsSwitchingNamespace(!0);const n=Q.chains.get(t.chainNamespace);Q.activeChain=t.chainNamespace,Q.activeCaipNetwork=t,w.setChainNetworkData(t.chainNamespace,{caipNetwork:t});let r=(i=n==null?void 0:n.accountState)==null?void 0:i.address;if(r)Q.activeCaipAddress=`${t.chainNamespace}:${t.id}:${r}`;else if(e&&Q.activeCaipAddress){const{address:a}=wt.parseCaipAddress(Q.activeCaipAddress);r=a,Q.activeCaipAddress=`${t.caipNetworkId}:${r}`}else Q.activeCaipAddress=void 0;w.setChainAccountData(t.chainNamespace,{address:r,caipAddress:Q.activeCaipAddress}),Se.resetSend(),Tn.set({activeChain:Q.activeChain,selectedNetworkId:(o=Q.activeCaipNetwork)==null?void 0:o.caipNetworkId}),j.setActiveCaipNetworkId(t.caipNetworkId),!w.checkIfSupportedNetwork(t.chainNamespace)&&B.state.enableNetworkSwitch&&!B.state.allowUnsupportedChain&&!V.state.wcBasic&&w.showUnsupportedChainUI()},addCaipNetwork(t){var n;if(!t)return;const e=Q.chains.get(t.chainNamespace);e&&((n=e==null?void 0:e.caipNetworks)==null||n.push(t))},async switchActiveNamespace(t){var s;if(!t)return;const e=t!==w.state.activeChain,n=(s=w.getNetworkData(t))==null?void 0:s.caipNetwork,r=w.getCaipNetworkByNamespace(t,n==null?void 0:n.id);e&&r&&await w.switchActiveNetwork(r)},async switchActiveNetwork(t,{throwOnFailure:e=!1}={}){var o;const n=w.state.activeChain;if(!n)throw new Error("ChainController:switchActiveNetwork - namespace is required");const r=Ke.getProviderId(Q.activeChain)==="AUTH",s=(o=w.getAccountData(n))==null?void 0:o.address,i=T.AUTH_CONNECTOR_SUPPORTED_CHAINS.includes(t.chainNamespace);try{if(s&&t.chainNamespace===n||r&&i){const a=Ty.get(t.chainNamespace);if(!a)throw new Error("Adapter not found");await a.switchNetwork({caipNetwork:t})}w.setActiveCaipNetwork(t)}catch(a){if(e)throw a}be.sendEvent({type:"track",event:"SWITCH_NETWORK",properties:{network:t.caipNetworkId}})},getConnectionControllerClient(t){const e=t||Q.activeChain;if(!e)throw new Error("Chain is required to get connection controller client");const n=Q.chains.get(e);if(!(n!=null&&n.connectionControllerClient))throw new Error("ConnectionController client not set");return n.connectionControllerClient},getNetworkProp(t,e){var r;const n=(r=Q.chains.get(e))==null?void 0:r.networkState;if(n)return n[t]},getRequestedCaipNetworks(t){const e=Q.chains.get(t),{approvedCaipNetworkIds:n=[],requestedCaipNetworks:r=[]}=(e==null?void 0:e.networkState)||{};return J.sortRequestedNetworks(n,r).filter(o=>o==null?void 0:o.id)},getAllRequestedCaipNetworks(){const t=[];return Q.chains.forEach(e=>{if(!e.namespace)throw new Error("ChainController:getAllRequestedCaipNetworks - chainAdapter must have a namespace");const n=w.getRequestedCaipNetworks(e.namespace);t.push(...n)}),t},setRequestedCaipNetworks(t,e){w.setAdapterNetworkState(e,{requestedCaipNetworks:t});const r=w.getAllRequestedCaipNetworks().map(i=>i.chainNamespace),s=Array.from(new Set(r));z.filterByNamespaces(s)},getAllApprovedCaipNetworkIds(){const t=[];return Q.chains.forEach(e=>{if(!e.namespace)throw new Error("ChainController:getAllApprovedCaipNetworkIds - chainAdapter must have a namespace");const n=w.getApprovedCaipNetworkIds(e.namespace);t.push(...n)}),t},getActiveCaipNetwork(t){var e,n;return t?(n=(e=Q.chains.get(t))==null?void 0:e.networkState)==null?void 0:n.caipNetwork:Q.activeCaipNetwork},getActiveCaipAddress(){return Q.activeCaipAddress},getApprovedCaipNetworkIds(t){var r;const e=Q.chains.get(t);return((r=e==null?void 0:e.networkState)==null?void 0:r.approvedCaipNetworkIds)||[]},setApprovedCaipNetworksData(t,e){w.setAdapterNetworkState(t,e)},checkIfSupportedNetwork(t,e){var s;const n=e||((s=Q.activeCaipNetwork)==null?void 0:s.caipNetworkId),r=w.getRequestedCaipNetworks(t);return r.length?r==null?void 0:r.some(i=>i.caipNetworkId===n):!0},checkIfSupportedChainId(t){if(!Q.activeChain)return!0;const e=w.getRequestedCaipNetworks(Q.activeChain);return e==null?void 0:e.some(n=>n.id===t)},checkIfSmartAccountEnabled(){var r,s;const t=oy.caipNetworkIdToNumber((r=Q.activeCaipNetwork)==null?void 0:r.caipNetworkId);if(!Q.activeChain||!t)return!1;const n=((s=gt.get(ae.SMART_ACCOUNT_ENABLED_NETWORKS))==null?void 0:s.split(","))||[];return!!(n!=null&&n.includes(t.toString()))},showUnsupportedChainUI(){Re.open({view:"UnsupportedChain"})},checkIfNamesSupported(){const t=Q.activeCaipNetwork;return!!(t!=null&&t.chainNamespace&&Oe.NAMES_SUPPORTED_CHAIN_NAMESPACES.includes(t.chainNamespace))},resetNetwork(t){w.setAdapterNetworkState(t,{approvedCaipNetworkIds:void 0,supportsAllNetworks:!0})},resetAccount(t){var s,i;const e=t;if(!e)throw new Error("Chain is required to set account prop");const n=(i=(s=w.state.chains.get(e))==null?void 0:s.accountState)==null?void 0:i.preferredAccountType,r=B.state.defaultAccountTypes[e];Q.activeCaipAddress=void 0,w.setChainAccountData(e,{smartAccountDeployed:!1,currentTab:0,caipAddress:void 0,address:void 0,balance:void 0,balanceSymbol:void 0,profileName:void 0,profileImage:void 0,addressExplorerUrl:void 0,tokenBalance:[],connectedWalletInfo:void 0,preferredAccountType:r||n,socialProvider:void 0,socialWindow:void 0,farcasterUrl:void 0,user:void 0,status:"disconnected"}),z.removeConnectorId(e)},setIsSwitchingNamespace(t){Q.isSwitchingNamespace=t},getFirstCaipNetworkSupportsAuthConnector(){var n,r;const t=[];let e;if(Q.chains.forEach(s=>{T.AUTH_CONNECTOR_SUPPORTED_CHAINS.find(i=>i===s.namespace)&&s.namespace&&t.push(s.namespace)}),t.length>0){const s=t[0];return e=s?(r=(n=Q.chains.get(s))==null?void 0:n.caipNetworks)==null?void 0:r[0]:void 0,e}},getAccountData(t){var n;const e=t||Q.activeChain;if(e)return(n=w.state.chains.get(e))==null?void 0:n.accountState},getNetworkData(t){var n;const e=t||Q.activeChain;if(e)return(n=w.state.chains.get(e))==null?void 0:n.networkState},getCaipNetworkByNamespace(t,e){var s,i,o;if(!t)return;const n=w.state.chains.get(t),r=(s=n==null?void 0:n.caipNetworks)==null?void 0:s.find(a=>a.id.toString()===(e==null?void 0:e.toString()));return r||((i=n==null?void 0:n.networkState)==null?void 0:i.caipNetwork)||((o=n==null?void 0:n.caipNetworks)==null?void 0:o[0])},getRequestedCaipNetworkIds(){const t=z.state.filterByNamespace;return(t?[Q.chains.get(t)]:Array.from(Q.chains.values())).flatMap(n=>(n==null?void 0:n.caipNetworks)||[]).map(n=>n.caipNetworkId)},getCaipNetworks(t){return t?w.getRequestedCaipNetworks(t):w.getAllRequestedCaipNetworks()},getCaipNetworkById(t,e){return Oy.getCaipNetworks(e).find(n=>n.id.toString()===t.toString()||n.caipNetworkId.toString()===t.toString())},setLastConnectedSIWECaipNetwork(t){Q.lastConnectedSIWECaipNetwork=t},getLastConnectedSIWECaipNetwork(){return Q.lastConnectedSIWECaipNetwork},async fetchTokenBalance(t){var o,a;const e=w.getAccountData();if(!e)return[];const n=(o=w.state.activeCaipNetwork)==null?void 0:o.caipNetworkId,r=(a=w.state.activeCaipNetwork)==null?void 0:a.chainNamespace,s=w.state.activeCaipAddress,i=s?J.getPlainAddress(s):void 0;if(w.setAccountProp("balanceLoading",!0,r),e.lastRetry&&!J.isAllowedRetry(e.lastRetry,30*Oe.ONE_SEC_MS))return w.setAccountProp("balanceLoading",!1,r),[];try{if(i&&n&&r){const c=await hh.getMyTokensWithBalance();return w.setAccountProp("tokenBalance",c,r),w.setAccountProp("lastRetry",void 0,r),w.setAccountProp("balanceLoading",!1,r),c}}catch(c){w.setAccountProp("lastRetry",Date.now(),r),t==null||t(c),gr.showError("Token Balance Unavailable")}finally{w.setAccountProp("balanceLoading",!1,r)}return[]},isCaipNetworkDisabled(t){var c;const e=t.chainNamespace,n=!!((c=w.getAccountData(e))!=null&&c.caipAddress),r=w.getAllApprovedCaipNetworkIds(),s=w.getNetworkProp("supportsAllNetworks",e)!==!1,i=z.getConnectorId(e),o=z.getAuthConnector(),a=i===T.CONNECTOR_ID.AUTH&&o;return!n||s||a?!1:!(r!=null&&r.includes(t.caipNetworkId))}},w=qn(Oy),BC={onSwitchNetwork({network:t,ignoreSwitchConfirmation:e=!1}){var h,f;const n=w.state.activeCaipNetwork,r=w.state.activeChain,s=pe.state.data;if(t.id===(n==null?void 0:n.id))return;const o=!!((h=w.getAccountData(r))!=null&&h.address),a=!!((f=w.getAccountData(t.chainNamespace))!=null&&f.address),c=t.chainNamespace!==r,u=z.getConnectorId(r)===T.CONNECTOR_ID.AUTH,d=T.AUTH_CONNECTOR_SUPPORTED_CHAINS.find(p=>p===t.chainNamespace);e||u&&d?pe.push("SwitchNetwork",{...s,network:t}):o&&c&&!a?pe.push("SwitchActiveChain",{switchToChain:t.chainNamespace,navigateTo:"Connect",navigateWithReplace:!0,network:t}):pe.push("SwitchNetwork",{...s,network:t})}},sn=Xe({loading:!1,loadingNamespaceMap:new Map,open:!1,shake:!1,namespace:void 0}),FC={state:sn,subscribe(t){return xt(sn,()=>t(sn))},subscribeKey(t,e){return Pt(sn,t,e)},async open(t){var o,a;const e=t==null?void 0:t.namespace,n=w.state.activeChain,r=e&&e!==n,s=(o=w.getAccountData(t==null?void 0:t.namespace))==null?void 0:o.caipAddress,i=w.state.noAdapters;if(V.state.wcBasic?ne.prefetch({fetchNetworkImages:!1,fetchConnectorImages:!1,fetchWalletRanks:!1}):await ne.prefetch(),z.setFilterByNamespace(t==null?void 0:t.namespace),Re.setLoading(!0,e),e&&r){const c=((a=w.getNetworkData(e))==null?void 0:a.caipNetwork)||w.getRequestedCaipNetworks(e)[0];c&&(i?(await w.switchActiveNetwork(c),pe.push("ConnectingWalletConnectBasic")):BC.onSwitchNetwork({network:c,ignoreSwitchConfirmation:!0}))}else B.state.manualWCControl||i&&!s?J.isMobile()?pe.reset("AllWallets"):pe.reset("ConnectingWalletConnectBasic"):t!=null&&t.view?pe.reset(t.view,t.data):s?pe.reset("Account"):pe.reset("Connect");sn.open=!0,Tn.set({open:!0}),be.sendEvent({type:"track",event:"MODAL_OPEN",properties:{connected:!!s}})},close(){const t=B.state.enableEmbedded,e=!!w.state.activeCaipAddress;sn.open&&be.sendEvent({type:"track",event:"MODAL_CLOSE",properties:{connected:e}}),sn.open=!1,pe.reset("Connect"),Re.clearLoading(),t?e?pe.replace("Account"):pe.push("Connect"):Tn.set({open:!1}),V.resetUri()},setLoading(t,e){e&&sn.loadingNamespaceMap.set(e,t),sn.loading=t,Tn.set({loading:t})},clearLoading(){sn.loadingNamespaceMap.clear(),sn.loading=!1,Tn.set({loading:!1})},shake(){sn.shake||(sn.shake=!0,setTimeout(()=>{sn.shake=!1},500))}},Re=qn(FC),Do={id:"2b92315d-eab7-5bef-84fa-089a131333f5",name:"USD Coin",symbol:"USDC",networks:[{name:"ethereum-mainnet",display_name:"Ethereum",chain_id:"1",contract_address:"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"},{name:"polygon-mainnet",display_name:"Polygon",chain_id:"137",contract_address:"0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174"}]},sd={id:"USD",payment_method_limits:[{id:"card",min:"10.00",max:"7500.00"},{id:"ach_bank_account",min:"10.00",max:"25000.00"}]},LC={providers:fy,selectedProvider:null,error:null,purchaseCurrency:Do,paymentCurrency:sd,purchaseCurrencies:[Do],paymentCurrencies:[],quotesLoading:!1},$e=Xe(LC),MC={state:$e,subscribe(t){return xt($e,()=>t($e))},subscribeKey(t,e){return Pt($e,t,e)},setSelectedProvider(t){var e,n;if(t&&t.name==="meld"){const r=w.state.activeChain,s=r===T.CHAIN.SOLANA?"SOL":"USDC",i=r?((n=(e=w.state.chains.get(r))==null?void 0:e.accountState)==null?void 0:n.address)??"":"",o=new URL(t.url);o.searchParams.append("publicKey",Zb),o.searchParams.append("destinationCurrencyCode",s),o.searchParams.append("walletAddress",i),o.searchParams.append("externalCustomerId",B.state.projectId),$e.selectedProvider={...t,url:o.toString()}}else $e.selectedProvider=t},setOnrampProviders(t){if(Array.isArray(t)&&t.every(e=>typeof e=="string")){const e=t,n=fy.filter(r=>e.includes(r.name));$e.providers=n}else $e.providers=[]},setPurchaseCurrency(t){$e.purchaseCurrency=t},setPaymentCurrency(t){$e.paymentCurrency=t},setPurchaseAmount(t){id.state.purchaseAmount=t},setPaymentAmount(t){id.state.paymentAmount=t},async getAvailableCurrencies(){const t=await me.getOnrampOptions();$e.purchaseCurrencies=t.purchaseCurrencies,$e.paymentCurrencies=t.paymentCurrencies,$e.paymentCurrency=t.paymentCurrencies[0]||sd,$e.purchaseCurrency=t.purchaseCurrencies[0]||Do,await ne.fetchCurrencyImages(t.paymentCurrencies.map(e=>e.id)),await ne.fetchTokenImages(t.purchaseCurrencies.map(e=>e.symbol))},async getQuote(){var t,e;$e.quotesLoading=!0;try{const n=await me.getOnrampQuote({purchaseCurrency:$e.purchaseCurrency,paymentCurrency:$e.paymentCurrency,amount:((t=$e.paymentAmount)==null?void 0:t.toString())||"0",network:(e=$e.purchaseCurrency)==null?void 0:e.symbol});return $e.quotesLoading=!1,$e.purchaseAmount=Number(n==null?void 0:n.purchaseAmount.amount),n}catch(n){return $e.error=n.message,$e.quotesLoading=!1,null}finally{$e.quotesLoading=!1}},resetState(){$e.selectedProvider=null,$e.error=null,$e.purchaseCurrency=Do,$e.paymentCurrency=sd,$e.purchaseCurrencies=[Do],$e.paymentCurrencies=[],$e.paymentAmount=void 0,$e.purchaseAmount=void 0,$e.quotesLoading=!1}},id=qn(MC);var G={};/*! *****************************************************************************
|
|
6
|
-
Copyright (c) Microsoft Corporation.
|
|
7
|
-
|
|
8
|
-
Permission to use, copy, modify, and/or distribute this software for any
|
|
9
|
-
purpose with or without fee is hereby granted.
|
|
10
|
-
|
|
11
|
-
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
12
|
-
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
13
|
-
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
14
|
-
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
15
|
-
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
16
|
-
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
17
|
-
PERFORMANCE OF THIS SOFTWARE.
|
|
18
|
-
***************************************************************************** */var od=function(t,e){return od=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,r){n.__proto__=r}||function(n,r){for(var s in r)r.hasOwnProperty(s)&&(n[s]=r[s])},od(t,e)};function jC(t,e){od(t,e);function n(){this.constructor=t}t.prototype=e===null?Object.create(e):(n.prototype=e.prototype,new n)}var ad=function(){return ad=Object.assign||function(e){for(var n,r=1,s=arguments.length;r<s;r++){n=arguments[r];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},ad.apply(this,arguments)};function WC(t,e){var n={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,r=Object.getOwnPropertySymbols(t);s<r.length;s++)e.indexOf(r[s])<0&&Object.prototype.propertyIsEnumerable.call(t,r[s])&&(n[r[s]]=t[r[s]]);return n}function qC(t,e,n,r){var s=arguments.length,i=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,o;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(t,e,n,r);else for(var a=t.length-1;a>=0;a--)(o=t[a])&&(i=(s<3?o(i):s>3?o(e,n,i):o(e,n))||i);return s>3&&i&&Object.defineProperty(e,n,i),i}function HC(t,e){return function(n,r){e(n,r,t)}}function zC(t,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(t,e)}function VC(t,e,n,r){function s(i){return i instanceof n?i:new n(function(o){o(i)})}return new(n||(n=Promise))(function(i,o){function a(u){try{l(r.next(u))}catch(d){o(d)}}function c(u){try{l(r.throw(u))}catch(d){o(d)}}function l(u){u.done?i(u.value):s(u.value).then(a,c)}l((r=r.apply(t,e||[])).next())})}function KC(t,e){var n={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},r,s,i,o;return o={next:a(0),throw:a(1),return:a(2)},typeof Symbol=="function"&&(o[Symbol.iterator]=function(){return this}),o;function a(l){return function(u){return c([l,u])}}function c(l){if(r)throw new TypeError("Generator is already executing.");for(;n;)try{if(r=1,s&&(i=l[0]&2?s.return:l[0]?s.throw||((i=s.return)&&i.call(s),0):s.next)&&!(i=i.call(s,l[1])).done)return i;switch(s=0,i&&(l=[l[0]&2,i.value]),l[0]){case 0:case 1:i=l;break;case 4:return n.label++,{value:l[1],done:!1};case 5:n.label++,s=l[1],l=[0];continue;case 7:l=n.ops.pop(),n.trys.pop();continue;default:if(i=n.trys,!(i=i.length>0&&i[i.length-1])&&(l[0]===6||l[0]===2)){n=0;continue}if(l[0]===3&&(!i||l[1]>i[0]&&l[1]<i[3])){n.label=l[1];break}if(l[0]===6&&n.label<i[1]){n.label=i[1],i=l;break}if(i&&n.label<i[2]){n.label=i[2],n.ops.push(l);break}i[2]&&n.ops.pop(),n.trys.pop();continue}l=e.call(t,n)}catch(u){l=[6,u],s=0}finally{r=i=0}if(l[0]&5)throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}function GC(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}function YC(t,e){for(var n in t)n!=="default"&&!e.hasOwnProperty(n)&&(e[n]=t[n])}function cd(t){var e=typeof Symbol=="function"&&Symbol.iterator,n=e&&t[e],r=0;if(n)return n.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function Ry(t,e){var n=typeof Symbol=="function"&&t[Symbol.iterator];if(!n)return t;var r=n.call(t),s,i=[],o;try{for(;(e===void 0||e-- >0)&&!(s=r.next()).done;)i.push(s.value)}catch(a){o={error:a}}finally{try{s&&!s.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return i}function ZC(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(Ry(arguments[e]));return t}function JC(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;for(var r=Array(t),s=0,e=0;e<n;e++)for(var i=arguments[e],o=0,a=i.length;o<a;o++,s++)r[s]=i[o];return r}function aa(t){return this instanceof aa?(this.v=t,this):new aa(t)}function XC(t,e,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r=n.apply(t,e||[]),s,i=[];return s={},o("next"),o("throw"),o("return"),s[Symbol.asyncIterator]=function(){return this},s;function o(h){r[h]&&(s[h]=function(f){return new Promise(function(p,g){i.push([h,f,p,g])>1||a(h,f)})})}function a(h,f){try{c(r[h](f))}catch(p){d(i[0][3],p)}}function c(h){h.value instanceof aa?Promise.resolve(h.value.v).then(l,u):d(i[0][2],h)}function l(h){a("next",h)}function u(h){a("throw",h)}function d(h,f){h(f),i.shift(),i.length&&a(i[0][0],i[0][1])}}function QC(t){var e,n;return e={},r("next"),r("throw",function(s){throw s}),r("return"),e[Symbol.iterator]=function(){return this},e;function r(s,i){e[s]=t[s]?function(o){return(n=!n)?{value:aa(t[s](o)),done:s==="return"}:i?i(o):o}:i}}function eA(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],n;return e?e.call(t):(t=typeof cd=="function"?cd(t):t[Symbol.iterator](),n={},r("next"),r("throw"),r("return"),n[Symbol.asyncIterator]=function(){return this},n);function r(i){n[i]=t[i]&&function(o){return new Promise(function(a,c){o=t[i](o),s(a,c,o.done,o.value)})}}function s(i,o,a,c){Promise.resolve(c).then(function(l){i({value:l,done:a})},o)}}function tA(t,e){return Object.defineProperty?Object.defineProperty(t,"raw",{value:e}):t.raw=e,t}function nA(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var n in t)Object.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e.default=t,e}function rA(t){return t&&t.__esModule?t:{default:t}}function sA(t,e){if(!e.has(t))throw new TypeError("attempted to get private field on non-instance");return e.get(t)}function iA(t,e,n){if(!e.has(t))throw new TypeError("attempted to set private field on non-instance");return e.set(t,n),n}const oA=Object.freeze(Object.defineProperty({__proto__:null,get __assign(){return ad},__asyncDelegator:QC,__asyncGenerator:XC,__asyncValues:eA,__await:aa,__awaiter:VC,__classPrivateFieldGet:sA,__classPrivateFieldSet:iA,__createBinding:GC,__decorate:qC,__exportStar:YC,__extends:jC,__generator:KC,__importDefault:rA,__importStar:nA,__makeTemplateObject:tA,__metadata:zC,__param:HC,__read:Ry,__rest:WC,__spread:ZC,__spreadArrays:JC,__values:cd},Symbol.toStringTag,{value:"Module"})),ll=sy(oA);var Wl={},lo={},kf;function aA(){if(kf)return lo;kf=1,Object.defineProperty(lo,"__esModule",{value:!0}),lo.delay=void 0;function t(e){return new Promise(n=>{setTimeout(()=>{n(!0)},e)})}return lo.delay=t,lo}var ks={},ql={},Us={},Uf;function cA(){return Uf||(Uf=1,Object.defineProperty(Us,"__esModule",{value:!0}),Us.ONE_THOUSAND=Us.ONE_HUNDRED=void 0,Us.ONE_HUNDRED=100,Us.ONE_THOUSAND=1e3),Us}var Hl={},$f;function lA(){return $f||($f=1,function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.ONE_YEAR=t.FOUR_WEEKS=t.THREE_WEEKS=t.TWO_WEEKS=t.ONE_WEEK=t.THIRTY_DAYS=t.SEVEN_DAYS=t.FIVE_DAYS=t.THREE_DAYS=t.ONE_DAY=t.TWENTY_FOUR_HOURS=t.TWELVE_HOURS=t.SIX_HOURS=t.THREE_HOURS=t.ONE_HOUR=t.SIXTY_MINUTES=t.THIRTY_MINUTES=t.TEN_MINUTES=t.FIVE_MINUTES=t.ONE_MINUTE=t.SIXTY_SECONDS=t.THIRTY_SECONDS=t.TEN_SECONDS=t.FIVE_SECONDS=t.ONE_SECOND=void 0,t.ONE_SECOND=1,t.FIVE_SECONDS=5,t.TEN_SECONDS=10,t.THIRTY_SECONDS=30,t.SIXTY_SECONDS=60,t.ONE_MINUTE=t.SIXTY_SECONDS,t.FIVE_MINUTES=t.ONE_MINUTE*5,t.TEN_MINUTES=t.ONE_MINUTE*10,t.THIRTY_MINUTES=t.ONE_MINUTE*30,t.SIXTY_MINUTES=t.ONE_MINUTE*60,t.ONE_HOUR=t.SIXTY_MINUTES,t.THREE_HOURS=t.ONE_HOUR*3,t.SIX_HOURS=t.ONE_HOUR*6,t.TWELVE_HOURS=t.ONE_HOUR*12,t.TWENTY_FOUR_HOURS=t.ONE_HOUR*24,t.ONE_DAY=t.TWENTY_FOUR_HOURS,t.THREE_DAYS=t.ONE_DAY*3,t.FIVE_DAYS=t.ONE_DAY*5,t.SEVEN_DAYS=t.ONE_DAY*7,t.THIRTY_DAYS=t.ONE_DAY*30,t.ONE_WEEK=t.SEVEN_DAYS,t.TWO_WEEKS=t.ONE_WEEK*2,t.THREE_WEEKS=t.ONE_WEEK*3,t.FOUR_WEEKS=t.ONE_WEEK*4,t.ONE_YEAR=t.ONE_DAY*365}(Hl)),Hl}var Bf;function xy(){return Bf||(Bf=1,function(t){Object.defineProperty(t,"__esModule",{value:!0});const e=ll;e.__exportStar(cA(),t),e.__exportStar(lA(),t)}(ql)),ql}var Ff;function uA(){if(Ff)return ks;Ff=1,Object.defineProperty(ks,"__esModule",{value:!0}),ks.fromMiliseconds=ks.toMiliseconds=void 0;const t=xy();function e(r){return r*t.ONE_THOUSAND}ks.toMiliseconds=e;function n(r){return Math.floor(r/t.ONE_THOUSAND)}return ks.fromMiliseconds=n,ks}var Lf;function dA(){return Lf||(Lf=1,function(t){Object.defineProperty(t,"__esModule",{value:!0});const e=ll;e.__exportStar(aA(),t),e.__exportStar(uA(),t)}(Wl)),Wl}var Ni={},Mf;function hA(){if(Mf)return Ni;Mf=1,Object.defineProperty(Ni,"__esModule",{value:!0}),Ni.Watch=void 0;class t{constructor(){this.timestamps=new Map}start(n){if(this.timestamps.has(n))throw new Error(`Watch already started for label: ${n}`);this.timestamps.set(n,{started:Date.now()})}stop(n){const r=this.get(n);if(typeof r.elapsed<"u")throw new Error(`Watch already stopped for label: ${n}`);const s=Date.now()-r.started;this.timestamps.set(n,{started:r.started,elapsed:s})}get(n){const r=this.timestamps.get(n);if(typeof r>"u")throw new Error(`No timestamp found for label: ${n}`);return r}elapsed(n){const r=this.get(n);return r.elapsed||Date.now()-r.started}}return Ni.Watch=t,Ni.default=t,Ni}var zl={},uo={},jf;function fA(){if(jf)return uo;jf=1,Object.defineProperty(uo,"__esModule",{value:!0}),uo.IWatch=void 0;class t{}return uo.IWatch=t,uo}var Wf;function pA(){return Wf||(Wf=1,function(t){Object.defineProperty(t,"__esModule",{value:!0}),ll.__exportStar(fA(),t)}(zl)),zl}(function(t){Object.defineProperty(t,"__esModule",{value:!0});const e=ll;e.__exportStar(dA(),t),e.__exportStar(hA(),t),e.__exportStar(pA(),t),e.__exportStar(xy(),t)})(G);class yi{}let gA=class extends yi{constructor(e){super()}};const qf=G.FIVE_SECONDS,wi={pulse:"heartbeat_pulse"};let mA=class Py extends gA{constructor(e){super(e),this.events=new sr.EventEmitter,this.interval=qf,this.interval=(e==null?void 0:e.interval)||qf}static async init(e){const n=new Py(e);return await n.init(),n}async init(){await this.initialize()}stop(){clearInterval(this.intervalRef)}on(e,n){this.events.on(e,n)}once(e,n){this.events.once(e,n)}off(e,n){this.events.off(e,n)}removeListener(e,n){this.events.removeListener(e,n)}async initialize(){this.intervalRef=setInterval(()=>this.pulse(),G.toMiliseconds(this.interval))}pulse(){this.events.emit(wi.pulse)}};const yA=/"(?:_|\\u0{2}5[Ff]){2}(?:p|\\u0{2}70)(?:r|\\u0{2}72)(?:o|\\u0{2}6[Ff])(?:t|\\u0{2}74)(?:o|\\u0{2}6[Ff])(?:_|\\u0{2}5[Ff]){2}"\s*:/,wA=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/,EA=/^\s*["[{]|^\s*-?\d{1,16}(\.\d{1,17})?([Ee][+-]?\d+)?\s*$/;function bA(t,e){if(t==="__proto__"||t==="constructor"&&e&&typeof e=="object"&&"prototype"in e){_A(t);return}return e}function _A(t){console.warn(`[destr] Dropping "${t}" key to prevent prototype pollution.`)}function Ma(t,e={}){if(typeof t!="string")return t;if(t[0]==='"'&&t[t.length-1]==='"'&&t.indexOf("\\")===-1)return t.slice(1,-1);const n=t.trim();if(n.length<=9)switch(n.toLowerCase()){case"true":return!0;case"false":return!1;case"undefined":return;case"null":return null;case"nan":return Number.NaN;case"infinity":return Number.POSITIVE_INFINITY;case"-infinity":return Number.NEGATIVE_INFINITY}if(!EA.test(t)){if(e.strict)throw new SyntaxError("[destr] Invalid JSON");return t}try{if(yA.test(t)||wA.test(t)){if(e.strict)throw new Error("[destr] Possible prototype pollution");return JSON.parse(t,bA)}return JSON.parse(t)}catch(r){if(e.strict)throw r;return t}}function vA(t){return!t||typeof t.then!="function"?Promise.resolve(t):t}function vt(t,...e){try{return vA(t(...e))}catch(n){return Promise.reject(n)}}function CA(t){const e=typeof t;return t===null||e!=="object"&&e!=="function"}function AA(t){const e=Object.getPrototypeOf(t);return!e||e.isPrototypeOf(Object)}function hc(t){if(CA(t))return String(t);if(AA(t)||Array.isArray(t))return JSON.stringify(t);if(typeof t.toJSON=="function")return hc(t.toJSON());throw new Error("[unstorage] Cannot stringify value!")}const ld="base64:";function SA(t){return typeof t=="string"?t:ld+TA(t)}function IA(t){return typeof t!="string"||!t.startsWith(ld)?t:NA(t.slice(ld.length))}function NA(t){return globalThis.Buffer?Buffer.from(t,"base64"):Uint8Array.from(globalThis.atob(t),e=>e.codePointAt(0))}function TA(t){return globalThis.Buffer?Buffer.from(t).toString("base64"):globalThis.btoa(String.fromCodePoint(...t))}function cn(t){var e;return t&&((e=t.split("?")[0])==null?void 0:e.replace(/[/\\]/g,":").replace(/:+/g,":").replace(/^:|:$/g,""))||""}function OA(...t){return cn(t.join(":"))}function ja(t){return t=cn(t),t?t+":":""}function RA(t,e){if(e===void 0)return!0;let n=0,r=t.indexOf(":");for(;r>-1;)n++,r=t.indexOf(":",r+1);return n<=e}function xA(t,e){return e?t.startsWith(e)&&t[t.length-1]!=="$":t[t.length-1]!=="$"}const PA="memory",DA=()=>{const t=new Map;return{name:PA,getInstance:()=>t,hasItem(e){return t.has(e)},getItem(e){return t.get(e)??null},getItemRaw(e){return t.get(e)??null},setItem(e,n){t.set(e,n)},setItemRaw(e,n){t.set(e,n)},removeItem(e){t.delete(e)},getKeys(){return[...t.keys()]},clear(){t.clear()},dispose(){t.clear()}}};function kA(t={}){const e={mounts:{"":t.driver||DA()},mountpoints:[""],watching:!1,watchListeners:[],unwatch:{}},n=l=>{for(const u of e.mountpoints)if(l.startsWith(u))return{base:u,relativeKey:l.slice(u.length),driver:e.mounts[u]};return{base:"",relativeKey:l,driver:e.mounts[""]}},r=(l,u)=>e.mountpoints.filter(d=>d.startsWith(l)||u&&l.startsWith(d)).map(d=>({relativeBase:l.length>d.length?l.slice(d.length):void 0,mountpoint:d,driver:e.mounts[d]})),s=(l,u)=>{if(e.watching){u=cn(u);for(const d of e.watchListeners)d(l,u)}},i=async()=>{if(!e.watching){e.watching=!0;for(const l in e.mounts)e.unwatch[l]=await Hf(e.mounts[l],s,l)}},o=async()=>{if(e.watching){for(const l in e.unwatch)await e.unwatch[l]();e.unwatch={},e.watching=!1}},a=(l,u,d)=>{const h=new Map,f=p=>{let g=h.get(p.base);return g||(g={driver:p.driver,base:p.base,items:[]},h.set(p.base,g)),g};for(const p of l){const g=typeof p=="string",y=cn(g?p:p.key),v=g?void 0:p.value,A=g||!p.options?u:{...u,...p.options},E=n(y);f(E).items.push({key:y,value:v,relativeKey:E.relativeKey,options:A})}return Promise.all([...h.values()].map(p=>d(p))).then(p=>p.flat())},c={hasItem(l,u={}){l=cn(l);const{relativeKey:d,driver:h}=n(l);return vt(h.hasItem,d,u)},getItem(l,u={}){l=cn(l);const{relativeKey:d,driver:h}=n(l);return vt(h.getItem,d,u).then(f=>Ma(f))},getItems(l,u={}){return a(l,u,d=>d.driver.getItems?vt(d.driver.getItems,d.items.map(h=>({key:h.relativeKey,options:h.options})),u).then(h=>h.map(f=>({key:OA(d.base,f.key),value:Ma(f.value)}))):Promise.all(d.items.map(h=>vt(d.driver.getItem,h.relativeKey,h.options).then(f=>({key:h.key,value:Ma(f)})))))},getItemRaw(l,u={}){l=cn(l);const{relativeKey:d,driver:h}=n(l);return h.getItemRaw?vt(h.getItemRaw,d,u):vt(h.getItem,d,u).then(f=>IA(f))},async setItem(l,u,d={}){if(u===void 0)return c.removeItem(l);l=cn(l);const{relativeKey:h,driver:f}=n(l);f.setItem&&(await vt(f.setItem,h,hc(u),d),f.watch||s("update",l))},async setItems(l,u){await a(l,u,async d=>{if(d.driver.setItems)return vt(d.driver.setItems,d.items.map(h=>({key:h.relativeKey,value:hc(h.value),options:h.options})),u);d.driver.setItem&&await Promise.all(d.items.map(h=>vt(d.driver.setItem,h.relativeKey,hc(h.value),h.options)))})},async setItemRaw(l,u,d={}){if(u===void 0)return c.removeItem(l,d);l=cn(l);const{relativeKey:h,driver:f}=n(l);if(f.setItemRaw)await vt(f.setItemRaw,h,u,d);else if(f.setItem)await vt(f.setItem,h,SA(u),d);else return;f.watch||s("update",l)},async removeItem(l,u={}){typeof u=="boolean"&&(u={removeMeta:u}),l=cn(l);const{relativeKey:d,driver:h}=n(l);h.removeItem&&(await vt(h.removeItem,d,u),(u.removeMeta||u.removeMata)&&await vt(h.removeItem,d+"$",u),h.watch||s("remove",l))},async getMeta(l,u={}){typeof u=="boolean"&&(u={nativeOnly:u}),l=cn(l);const{relativeKey:d,driver:h}=n(l),f=Object.create(null);if(h.getMeta&&Object.assign(f,await vt(h.getMeta,d,u)),!u.nativeOnly){const p=await vt(h.getItem,d+"$",u).then(g=>Ma(g));p&&typeof p=="object"&&(typeof p.atime=="string"&&(p.atime=new Date(p.atime)),typeof p.mtime=="string"&&(p.mtime=new Date(p.mtime)),Object.assign(f,p))}return f},setMeta(l,u,d={}){return this.setItem(l+"$",u,d)},removeMeta(l,u={}){return this.removeItem(l+"$",u)},async getKeys(l,u={}){var y;l=ja(l);const d=r(l,!0);let h=[];const f=[];let p=!0;for(const v of d){(y=v.driver.flags)!=null&&y.maxDepth||(p=!1);const A=await vt(v.driver.getKeys,v.relativeBase,u);for(const E of A){const C=v.mountpoint+cn(E);h.some(O=>C.startsWith(O))||f.push(C)}h=[v.mountpoint,...h.filter(E=>!E.startsWith(v.mountpoint))]}const g=u.maxDepth!==void 0&&!p;return f.filter(v=>(!g||RA(v,u.maxDepth))&&xA(v,l))},async clear(l,u={}){l=ja(l),await Promise.all(r(l,!1).map(async d=>{if(d.driver.clear)return vt(d.driver.clear,d.relativeBase,u);if(d.driver.removeItem){const h=await d.driver.getKeys(d.relativeBase||"",u);return Promise.all(h.map(f=>d.driver.removeItem(f,u)))}}))},async dispose(){await Promise.all(Object.values(e.mounts).map(l=>zf(l)))},async watch(l){return await i(),e.watchListeners.push(l),async()=>{e.watchListeners=e.watchListeners.filter(u=>u!==l),e.watchListeners.length===0&&await o()}},async unwatch(){e.watchListeners=[],await o()},mount(l,u){if(l=ja(l),l&&e.mounts[l])throw new Error(`already mounted at ${l}`);return l&&(e.mountpoints.push(l),e.mountpoints.sort((d,h)=>h.length-d.length)),e.mounts[l]=u,e.watching&&Promise.resolve(Hf(u,s,l)).then(d=>{e.unwatch[l]=d}).catch(console.error),c},async unmount(l,u=!0){var d,h;l=ja(l),!(!l||!e.mounts[l])&&(e.watching&&l in e.unwatch&&((h=(d=e.unwatch)[l])==null||h.call(d),delete e.unwatch[l]),u&&await zf(e.mounts[l]),e.mountpoints=e.mountpoints.filter(f=>f!==l),delete e.mounts[l])},getMount(l=""){l=cn(l)+":";const u=n(l);return{driver:u.driver,base:u.base}},getMounts(l="",u={}){return l=cn(l),r(l,u.parents).map(h=>({driver:h.driver,base:h.mountpoint}))},keys:(l,u={})=>c.getKeys(l,u),get:(l,u={})=>c.getItem(l,u),set:(l,u,d={})=>c.setItem(l,u,d),has:(l,u={})=>c.hasItem(l,u),del:(l,u={})=>c.removeItem(l,u),remove:(l,u={})=>c.removeItem(l,u)};return c}function Hf(t,e,n){return t.watch?t.watch((r,s)=>e(r,n+s)):()=>{}}async function zf(t){typeof t.dispose=="function"&&await vt(t.dispose)}function Ei(t){return new Promise((e,n)=>{t.oncomplete=t.onsuccess=()=>e(t.result),t.onabort=t.onerror=()=>n(t.error)})}function Dy(t,e){const n=indexedDB.open(t);n.onupgradeneeded=()=>n.result.createObjectStore(e);const r=Ei(n);return(s,i)=>r.then(o=>i(o.transaction(e,s).objectStore(e)))}let Vl;function Ca(){return Vl||(Vl=Dy("keyval-store","keyval")),Vl}function Vf(t,e=Ca()){return e("readonly",n=>Ei(n.get(t)))}function UA(t,e,n=Ca()){return n("readwrite",r=>(r.put(e,t),Ei(r.transaction)))}function $A(t,e=Ca()){return e("readwrite",n=>(n.delete(t),Ei(n.transaction)))}function BA(t=Ca()){return t("readwrite",e=>(e.clear(),Ei(e.transaction)))}function FA(t,e){return t.openCursor().onsuccess=function(){this.result&&(e(this.result),this.result.continue())},Ei(t.transaction)}function LA(t=Ca()){return t("readonly",e=>{if(e.getAllKeys)return Ei(e.getAllKeys());const n=[];return FA(e,r=>n.push(r.key)).then(()=>n)})}const MA=t=>JSON.stringify(t,(e,n)=>typeof n=="bigint"?n.toString()+"n":n),jA=t=>{const e=/([\[:])?(\d{17,}|(?:[9](?:[1-9]07199254740991|0[1-9]7199254740991|00[8-9]199254740991|007[2-9]99254740991|007199[3-9]54740991|0071992[6-9]4740991|00719925[5-9]740991|007199254[8-9]40991|0071992547[5-9]0991|00719925474[1-9]991|00719925474099[2-9])))([,\}\]])/g,n=t.replace(e,'$1"$2n"$3');return JSON.parse(n,(r,s)=>typeof s=="string"&&s.match(/^\d+n$/)?BigInt(s.substring(0,s.length-1)):s)};function ci(t){if(typeof t!="string")throw new Error(`Cannot safe json parse value of type ${typeof t}`);try{return jA(t)}catch{return t}}function li(t){return typeof t=="string"?t:MA(t)||""}const WA="idb-keyval";var qA=(t={})=>{const e=t.base&&t.base.length>0?`${t.base}:`:"",n=s=>e+s;let r;return t.dbName&&t.storeName&&(r=Dy(t.dbName,t.storeName)),{name:WA,options:t,async hasItem(s){return!(typeof await Vf(n(s),r)>"u")},async getItem(s){return await Vf(n(s),r)??null},setItem(s,i){return UA(n(s),i,r)},removeItem(s){return $A(n(s),r)},getKeys(){return LA(r)},clear(){return BA(r)}}};const HA="WALLET_CONNECT_V2_INDEXED_DB",zA="keyvaluestorage";let VA=class{constructor(){this.indexedDb=kA({driver:qA({dbName:HA,storeName:zA})})}async getKeys(){return this.indexedDb.getKeys()}async getEntries(){return(await this.indexedDb.getItems(await this.indexedDb.getKeys())).map(e=>[e.key,e.value])}async getItem(e){const n=await this.indexedDb.getItem(e);if(n!==null)return n}async setItem(e,n){await this.indexedDb.setItem(e,li(n))}async removeItem(e){await this.indexedDb.removeItem(e)}};var Kl=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof we<"u"?we:typeof self<"u"?self:{},fc={exports:{}};(function(){let t;function e(){}t=e,t.prototype.getItem=function(n){return this.hasOwnProperty(n)?String(this[n]):null},t.prototype.setItem=function(n,r){this[n]=String(r)},t.prototype.removeItem=function(n){delete this[n]},t.prototype.clear=function(){const n=this;Object.keys(n).forEach(function(r){n[r]=void 0,delete n[r]})},t.prototype.key=function(n){return n=n||0,Object.keys(this)[n]},t.prototype.__defineGetter__("length",function(){return Object.keys(this).length}),typeof Kl<"u"&&Kl.localStorage?fc.exports=Kl.localStorage:typeof window<"u"&&window.localStorage?fc.exports=window.localStorage:fc.exports=new e})();function KA(t){var e;return[t[0],ci((e=t[1])!=null?e:"")]}let GA=class{constructor(){this.localStorage=fc.exports}async getKeys(){return Object.keys(this.localStorage)}async getEntries(){return Object.entries(this.localStorage).map(KA)}async getItem(e){const n=this.localStorage.getItem(e);if(n!==null)return ci(n)}async setItem(e,n){this.localStorage.setItem(e,li(n))}async removeItem(e){this.localStorage.removeItem(e)}};const YA="wc_storage_version",Kf=1,ZA=async(t,e,n)=>{const r=YA,s=await e.getItem(r);if(s&&s>=Kf){n(e);return}const i=await t.getKeys();if(!i.length){n(e);return}const o=[];for(;i.length;){const a=i.shift();if(!a)continue;const c=a.toLowerCase();if(c.includes("wc@")||c.includes("walletconnect")||c.includes("wc_")||c.includes("wallet_connect")){const l=await t.getItem(a);await e.setItem(a,l),o.push(a)}}await e.setItem(r,Kf),n(e),JA(t,o)},JA=async(t,e)=>{e.length&&e.forEach(async n=>{await t.removeItem(n)})};let XA=class{constructor(){this.initialized=!1,this.setInitialized=n=>{this.storage=n,this.initialized=!0};const e=new GA;this.storage=e;try{const n=new VA;ZA(e,n,this.setInitialized)}catch{this.initialized=!0}}async getKeys(){return await this.initialize(),this.storage.getKeys()}async getEntries(){return await this.initialize(),this.storage.getEntries()}async getItem(e){return await this.initialize(),this.storage.getItem(e)}async setItem(e,n){return await this.initialize(),this.storage.setItem(e,n)}async removeItem(e){return await this.initialize(),this.storage.removeItem(e)}async initialize(){this.initialized||await new Promise(e=>{const n=setInterval(()=>{this.initialized&&(clearInterval(n),e())},20)})}};var QA=Object.defineProperty,eS=(t,e,n)=>e in t?QA(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Gf=(t,e,n)=>eS(t,typeof e!="symbol"?e+"":e,n);let tS=class extends yi{constructor(e){super(),this.opts=e,Gf(this,"protocol","wc"),Gf(this,"version",2)}};var nS=Object.defineProperty,rS=(t,e,n)=>e in t?nS(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,sS=(t,e,n)=>rS(t,typeof e!="symbol"?e+"":e,n);let iS=class extends yi{constructor(e,n){super(),this.core=e,this.logger=n,sS(this,"records",new Map)}},oS=class{constructor(e,n){this.logger=e,this.core=n}},aS=class extends yi{constructor(e,n){super(),this.relayer=e,this.logger=n}},cS=class extends yi{constructor(e){super()}},lS=class{constructor(e,n,r,s){this.core=e,this.logger=n,this.name=r}},uS=class extends yi{constructor(e,n){super(),this.relayer=e,this.logger=n}},dS=class extends yi{constructor(e,n){super(),this.core=e,this.logger=n}},hS=class{constructor(e,n,r){this.core=e,this.logger=n,this.store=r}},fS=class{constructor(e,n){this.projectId=e,this.logger=n}},pS=class{constructor(e,n,r){this.core=e,this.logger=n,this.telemetryEnabled=r}};var gS=Object.defineProperty,mS=(t,e,n)=>e in t?gS(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Yf=(t,e,n)=>mS(t,typeof e!="symbol"?e+"":e,n);let yS=class{constructor(e){this.opts=e,Yf(this,"protocol","wc"),Yf(this,"version",2)}},wS=class{constructor(e){this.client=e}};function ES(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function ky(t,...e){if(!ES(t))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(t.length))throw new Error("Uint8Array expected of length "+e+", got length="+t.length)}function Zf(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function bS(t,e){ky(t);const n=e.outputLen;if(t.length<n)throw new Error("digestInto() expects output buffer of length at least "+n)}const Ti=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Gl=t=>new DataView(t.buffer,t.byteOffset,t.byteLength);function _S(t){if(typeof t!="string")throw new Error("utf8ToBytes expected string, got "+typeof t);return new Uint8Array(new TextEncoder().encode(t))}function Uy(t){return typeof t=="string"&&(t=_S(t)),ky(t),t}let vS=class{clone(){return this._cloneInto()}};function CS(t){const e=r=>t().update(Uy(r)).digest(),n=t();return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=()=>t(),e}function $y(t=32){if(Ti&&typeof Ti.getRandomValues=="function")return Ti.getRandomValues(new Uint8Array(t));if(Ti&&typeof Ti.randomBytes=="function")return Ti.randomBytes(t);throw new Error("crypto.getRandomValues must be defined")}function AS(t,e,n,r){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,n,r);const s=BigInt(32),i=BigInt(4294967295),o=Number(n>>s&i),a=Number(n&i),c=r?4:0,l=r?0:4;t.setUint32(e+c,o,r),t.setUint32(e+l,a,r)}let SS=class extends vS{constructor(e,n,r,s){super(),this.blockLen=e,this.outputLen=n,this.padOffset=r,this.isLE=s,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=Gl(this.buffer)}update(e){Zf(this);const{view:n,buffer:r,blockLen:s}=this;e=Uy(e);const i=e.length;for(let o=0;o<i;){const a=Math.min(s-this.pos,i-o);if(a===s){const c=Gl(e);for(;s<=i-o;o+=s)this.process(c,o);continue}r.set(e.subarray(o,o+a),this.pos),this.pos+=a,o+=a,this.pos===s&&(this.process(n,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Zf(this),bS(e,this),this.finished=!0;const{buffer:n,view:r,blockLen:s,isLE:i}=this;let{pos:o}=this;n[o++]=128,this.buffer.subarray(o).fill(0),this.padOffset>s-o&&(this.process(r,0),o=0);for(let d=o;d<s;d++)n[d]=0;AS(r,s-8,BigInt(this.length*8),i),this.process(r,0);const a=Gl(e),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const l=c/4,u=this.get();if(l>u.length)throw new Error("_sha2: outputLen bigger than state");for(let d=0;d<l;d++)a.setUint32(4*d,u[d],i)}digest(){const{buffer:e,outputLen:n}=this;this.digestInto(e);const r=e.slice(0,n);return this.destroy(),r}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());const{blockLen:n,buffer:r,length:s,finished:i,destroyed:o,pos:a}=this;return e.length=s,e.pos=a,e.finished=i,e.destroyed=o,s%n&&e.buffer.set(r),e}};const Wa=BigInt(2**32-1),ud=BigInt(32);function By(t,e=!1){return e?{h:Number(t&Wa),l:Number(t>>ud&Wa)}:{h:Number(t>>ud&Wa)|0,l:Number(t&Wa)|0}}function IS(t,e=!1){let n=new Uint32Array(t.length),r=new Uint32Array(t.length);for(let s=0;s<t.length;s++){const{h:i,l:o}=By(t[s],e);[n[s],r[s]]=[i,o]}return[n,r]}const NS=(t,e)=>BigInt(t>>>0)<<ud|BigInt(e>>>0),TS=(t,e,n)=>t>>>n,OS=(t,e,n)=>t<<32-n|e>>>n,RS=(t,e,n)=>t>>>n|e<<32-n,xS=(t,e,n)=>t<<32-n|e>>>n,PS=(t,e,n)=>t<<64-n|e>>>n-32,DS=(t,e,n)=>t>>>n-32|e<<64-n,kS=(t,e)=>e,US=(t,e)=>t,$S=(t,e,n)=>t<<n|e>>>32-n,BS=(t,e,n)=>e<<n|t>>>32-n,FS=(t,e,n)=>e<<n-32|t>>>64-n,LS=(t,e,n)=>t<<n-32|e>>>64-n;function MS(t,e,n,r){const s=(e>>>0)+(r>>>0);return{h:t+n+(s/2**32|0)|0,l:s|0}}const jS=(t,e,n)=>(t>>>0)+(e>>>0)+(n>>>0),WS=(t,e,n,r)=>e+n+r+(t/2**32|0)|0,qS=(t,e,n,r)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0),HS=(t,e,n,r,s)=>e+n+r+s+(t/2**32|0)|0,zS=(t,e,n,r,s)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0)+(s>>>0),VS=(t,e,n,r,s,i)=>e+n+r+s+i+(t/2**32|0)|0,Ae={fromBig:By,split:IS,toBig:NS,shrSH:TS,shrSL:OS,rotrSH:RS,rotrSL:xS,rotrBH:PS,rotrBL:DS,rotr32H:kS,rotr32L:US,rotlSH:$S,rotlSL:BS,rotlBH:FS,rotlBL:LS,add:MS,add3L:jS,add3H:WS,add4L:qS,add4H:HS,add5H:VS,add5L:zS},[KS,GS]=(()=>Ae.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(t=>BigInt(t))))(),Xr=new Uint32Array(80),Qr=new Uint32Array(80);let YS=class extends SS{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){const{Ah:e,Al:n,Bh:r,Bl:s,Ch:i,Cl:o,Dh:a,Dl:c,Eh:l,El:u,Fh:d,Fl:h,Gh:f,Gl:p,Hh:g,Hl:y}=this;return[e,n,r,s,i,o,a,c,l,u,d,h,f,p,g,y]}set(e,n,r,s,i,o,a,c,l,u,d,h,f,p,g,y){this.Ah=e|0,this.Al=n|0,this.Bh=r|0,this.Bl=s|0,this.Ch=i|0,this.Cl=o|0,this.Dh=a|0,this.Dl=c|0,this.Eh=l|0,this.El=u|0,this.Fh=d|0,this.Fl=h|0,this.Gh=f|0,this.Gl=p|0,this.Hh=g|0,this.Hl=y|0}process(e,n){for(let E=0;E<16;E++,n+=4)Xr[E]=e.getUint32(n),Qr[E]=e.getUint32(n+=4);for(let E=16;E<80;E++){const C=Xr[E-15]|0,O=Qr[E-15]|0,k=Ae.rotrSH(C,O,1)^Ae.rotrSH(C,O,8)^Ae.shrSH(C,O,7),$=Ae.rotrSL(C,O,1)^Ae.rotrSL(C,O,8)^Ae.shrSL(C,O,7),F=Xr[E-2]|0,D=Qr[E-2]|0,W=Ae.rotrSH(F,D,19)^Ae.rotrBH(F,D,61)^Ae.shrSH(F,D,6),H=Ae.rotrSL(F,D,19)^Ae.rotrBL(F,D,61)^Ae.shrSL(F,D,6),U=Ae.add4L($,H,Qr[E-7],Qr[E-16]),N=Ae.add4H(U,k,W,Xr[E-7],Xr[E-16]);Xr[E]=N|0,Qr[E]=U|0}let{Ah:r,Al:s,Bh:i,Bl:o,Ch:a,Cl:c,Dh:l,Dl:u,Eh:d,El:h,Fh:f,Fl:p,Gh:g,Gl:y,Hh:v,Hl:A}=this;for(let E=0;E<80;E++){const C=Ae.rotrSH(d,h,14)^Ae.rotrSH(d,h,18)^Ae.rotrBH(d,h,41),O=Ae.rotrSL(d,h,14)^Ae.rotrSL(d,h,18)^Ae.rotrBL(d,h,41),k=d&f^~d&g,$=h&p^~h&y,F=Ae.add5L(A,O,$,GS[E],Qr[E]),D=Ae.add5H(F,v,C,k,KS[E],Xr[E]),W=F|0,H=Ae.rotrSH(r,s,28)^Ae.rotrBH(r,s,34)^Ae.rotrBH(r,s,39),U=Ae.rotrSL(r,s,28)^Ae.rotrBL(r,s,34)^Ae.rotrBL(r,s,39),N=r&i^r&a^i&a,P=s&o^s&c^o&c;v=g|0,A=y|0,g=f|0,y=p|0,f=d|0,p=h|0,{h:d,l:h}=Ae.add(l|0,u|0,D|0,W|0),l=a|0,u=c|0,a=i|0,c=o|0,i=r|0,o=s|0;const _=Ae.add3L(W,U,P);r=Ae.add3H(_,D,H,N),s=_|0}({h:r,l:s}=Ae.add(this.Ah|0,this.Al|0,r|0,s|0)),{h:i,l:o}=Ae.add(this.Bh|0,this.Bl|0,i|0,o|0),{h:a,l:c}=Ae.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:l,l:u}=Ae.add(this.Dh|0,this.Dl|0,l|0,u|0),{h:d,l:h}=Ae.add(this.Eh|0,this.El|0,d|0,h|0),{h:f,l:p}=Ae.add(this.Fh|0,this.Fl|0,f|0,p|0),{h:g,l:y}=Ae.add(this.Gh|0,this.Gl|0,g|0,y|0),{h:v,l:A}=Ae.add(this.Hh|0,this.Hl|0,v|0,A|0),this.set(r,s,i,o,a,c,l,u,d,h,f,p,g,y,v,A)}roundClean(){Xr.fill(0),Qr.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};const ZS=CS(()=>new YS);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const fh=BigInt(0),Fy=BigInt(1),JS=BigInt(2);function ph(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function gh(t){if(!ph(t))throw new Error("Uint8Array expected")}function Yl(t,e){if(typeof e!="boolean")throw new Error(t+" boolean expected, got "+e)}const XS=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function mh(t){gh(t);let e="";for(let n=0;n<t.length;n++)e+=XS[t[n]];return e}function Ly(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return t===""?fh:BigInt("0x"+t)}const Ir={_0:48,_9:57,A:65,F:70,a:97,f:102};function Jf(t){if(t>=Ir._0&&t<=Ir._9)return t-Ir._0;if(t>=Ir.A&&t<=Ir.F)return t-(Ir.A-10);if(t>=Ir.a&&t<=Ir.f)return t-(Ir.a-10)}function My(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);const e=t.length,n=e/2;if(e%2)throw new Error("hex string expected, got unpadded hex of length "+e);const r=new Uint8Array(n);for(let s=0,i=0;s<n;s++,i+=2){const o=Jf(t.charCodeAt(i)),a=Jf(t.charCodeAt(i+1));if(o===void 0||a===void 0){const c=t[i]+t[i+1];throw new Error('hex string expected, got non-hex character "'+c+'" at index '+i)}r[s]=o*16+a}return r}function QS(t){return Ly(mh(t))}function pc(t){return gh(t),Ly(mh(Uint8Array.from(t).reverse()))}function jy(t,e){return My(t.toString(16).padStart(e*2,"0"))}function dd(t,e){return jy(t,e).reverse()}function Nr(t,e,n){let r;if(typeof e=="string")try{r=My(e)}catch(i){throw new Error(t+" must be hex string or Uint8Array, cause: "+i)}else if(ph(e))r=Uint8Array.from(e);else throw new Error(t+" must be hex string or Uint8Array");const s=r.length;if(typeof n=="number"&&s!==n)throw new Error(t+" of length "+n+" expected, got "+s);return r}function Xf(...t){let e=0;for(let r=0;r<t.length;r++){const s=t[r];gh(s),e+=s.length}const n=new Uint8Array(e);for(let r=0,s=0;r<t.length;r++){const i=t[r];n.set(i,s),s+=i.length}return n}const Zl=t=>typeof t=="bigint"&&fh<=t;function eI(t,e,n){return Zl(t)&&Zl(e)&&Zl(n)&&e<=t&&t<n}function ho(t,e,n,r){if(!eI(e,n,r))throw new Error("expected valid "+t+": "+n+" <= n < "+r+", got "+e)}function tI(t){let e;for(e=0;t>fh;t>>=Fy,e+=1);return e}const nI=t=>(JS<<BigInt(t-1))-Fy,rI={bigint:t=>typeof t=="bigint",function:t=>typeof t=="function",boolean:t=>typeof t=="boolean",string:t=>typeof t=="string",stringOrUint8Array:t=>typeof t=="string"||ph(t),isSafeInteger:t=>Number.isSafeInteger(t),array:t=>Array.isArray(t),field:(t,e)=>e.Fp.isValid(t),hash:t=>typeof t=="function"&&Number.isSafeInteger(t.outputLen)};function yh(t,e,n={}){const r=(s,i,o)=>{const a=rI[i];if(typeof a!="function")throw new Error("invalid validator function");const c=t[s];if(!(o&&c===void 0)&&!a(c,t))throw new Error("param "+String(s)+" is invalid. Expected "+i+", got "+c)};for(const[s,i]of Object.entries(e))r(s,i,!1);for(const[s,i]of Object.entries(n))r(s,i,!0);return t}function Qf(t){const e=new WeakMap;return(n,...r)=>{const s=e.get(n);if(s!==void 0)return s;const i=t(n,...r);return e.set(n,i),i}}const St=BigInt(0),ot=BigInt(1),qs=BigInt(2),sI=BigInt(3),hd=BigInt(4),ep=BigInt(5),tp=BigInt(8);function mt(t,e){const n=t%e;return n>=St?n:e+n}function iI(t,e,n){if(e<St)throw new Error("invalid exponent, negatives unsupported");if(n<=St)throw new Error("invalid modulus");if(n===ot)return St;let r=ot;for(;e>St;)e&ot&&(r=r*t%n),t=t*t%n,e>>=ot;return r}function or(t,e,n){let r=t;for(;e-- >St;)r*=r,r%=n;return r}function np(t,e){if(t===St)throw new Error("invert: expected non-zero number");if(e<=St)throw new Error("invert: expected positive modulus, got "+e);let n=mt(t,e),r=e,s=St,i=ot;for(;n!==St;){const o=r/n,a=r%n,c=s-i*o;r=n,n=a,s=i,i=c}if(r!==ot)throw new Error("invert: does not exist");return mt(s,e)}function oI(t){const e=(t-ot)/qs;let n,r,s;for(n=t-ot,r=0;n%qs===St;n/=qs,r++);for(s=qs;s<t&&iI(s,e,t)!==t-ot;s++)if(s>1e3)throw new Error("Cannot find square root: likely non-prime P");if(r===1){const o=(t+ot)/hd;return function(a,c){const l=a.pow(c,o);if(!a.eql(a.sqr(l),c))throw new Error("Cannot find square root");return l}}const i=(n+ot)/qs;return function(o,a){if(o.pow(a,e)===o.neg(o.ONE))throw new Error("Cannot find square root");let c=r,l=o.pow(o.mul(o.ONE,s),n),u=o.pow(a,i),d=o.pow(a,n);for(;!o.eql(d,o.ONE);){if(o.eql(d,o.ZERO))return o.ZERO;let h=1;for(let p=o.sqr(d);h<c&&!o.eql(p,o.ONE);h++)p=o.sqr(p);const f=o.pow(l,ot<<BigInt(c-h-1));l=o.sqr(f),u=o.mul(u,f),d=o.mul(d,l),c=h}return u}}function aI(t){if(t%hd===sI){const e=(t+ot)/hd;return function(n,r){const s=n.pow(r,e);if(!n.eql(n.sqr(s),r))throw new Error("Cannot find square root");return s}}if(t%tp===ep){const e=(t-ep)/tp;return function(n,r){const s=n.mul(r,qs),i=n.pow(s,e),o=n.mul(r,i),a=n.mul(n.mul(o,qs),i),c=n.mul(o,n.sub(a,n.ONE));if(!n.eql(n.sqr(c),r))throw new Error("Cannot find square root");return c}}return oI(t)}const cI=(t,e)=>(mt(t,e)&ot)===ot,lI=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function uI(t){const e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},n=lI.reduce((r,s)=>(r[s]="function",r),e);return yh(t,n)}function dI(t,e,n){if(n<St)throw new Error("invalid exponent, negatives unsupported");if(n===St)return t.ONE;if(n===ot)return e;let r=t.ONE,s=e;for(;n>St;)n&ot&&(r=t.mul(r,s)),s=t.sqr(s),n>>=ot;return r}function hI(t,e){const n=new Array(e.length),r=e.reduce((i,o,a)=>t.is0(o)?i:(n[a]=i,t.mul(i,o)),t.ONE),s=t.inv(r);return e.reduceRight((i,o,a)=>t.is0(o)?i:(n[a]=t.mul(i,n[a]),t.mul(i,o)),s),n}function Wy(t,e){const n=e!==void 0?e:t.toString(2).length,r=Math.ceil(n/8);return{nBitLength:n,nByteLength:r}}function qy(t,e,n=!1,r={}){if(t<=St)throw new Error("invalid field: expected ORDER > 0, got "+t);const{nBitLength:s,nByteLength:i}=Wy(t,e);if(i>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");let o;const a=Object.freeze({ORDER:t,isLE:n,BITS:s,BYTES:i,MASK:nI(s),ZERO:St,ONE:ot,create:c=>mt(c,t),isValid:c=>{if(typeof c!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof c);return St<=c&&c<t},is0:c=>c===St,isOdd:c=>(c&ot)===ot,neg:c=>mt(-c,t),eql:(c,l)=>c===l,sqr:c=>mt(c*c,t),add:(c,l)=>mt(c+l,t),sub:(c,l)=>mt(c-l,t),mul:(c,l)=>mt(c*l,t),pow:(c,l)=>dI(a,c,l),div:(c,l)=>mt(c*np(l,t),t),sqrN:c=>c*c,addN:(c,l)=>c+l,subN:(c,l)=>c-l,mulN:(c,l)=>c*l,inv:c=>np(c,t),sqrt:r.sqrt||(c=>(o||(o=aI(t)),o(a,c))),invertBatch:c=>hI(a,c),cmov:(c,l,u)=>u?l:c,toBytes:c=>n?dd(c,i):jy(c,i),fromBytes:c=>{if(c.length!==i)throw new Error("Field.fromBytes: expected "+i+" bytes, got "+c.length);return n?pc(c):QS(c)}});return Object.freeze(a)}const rp=BigInt(0),qa=BigInt(1);function Jl(t,e){const n=e.negate();return t?n:e}function Hy(t,e){if(!Number.isSafeInteger(t)||t<=0||t>e)throw new Error("invalid window size, expected [1.."+e+"], got W="+t)}function Xl(t,e){Hy(t,e);const n=Math.ceil(e/t)+1,r=2**(t-1);return{windows:n,windowSize:r}}function fI(t,e){if(!Array.isArray(t))throw new Error("array expected");t.forEach((n,r)=>{if(!(n instanceof e))throw new Error("invalid point at index "+r)})}function pI(t,e){if(!Array.isArray(t))throw new Error("array of scalars expected");t.forEach((n,r)=>{if(!e.isValid(n))throw new Error("invalid scalar at index "+r)})}const Ql=new WeakMap,zy=new WeakMap;function eu(t){return zy.get(t)||1}function gI(t,e){return{constTimeNegate:Jl,hasPrecomputes(n){return eu(n)!==1},unsafeLadder(n,r,s=t.ZERO){let i=n;for(;r>rp;)r&qa&&(s=s.add(i)),i=i.double(),r>>=qa;return s},precomputeWindow(n,r){const{windows:s,windowSize:i}=Xl(r,e),o=[];let a=n,c=a;for(let l=0;l<s;l++){c=a,o.push(c);for(let u=1;u<i;u++)c=c.add(a),o.push(c);a=c.double()}return o},wNAF(n,r,s){const{windows:i,windowSize:o}=Xl(n,e);let a=t.ZERO,c=t.BASE;const l=BigInt(2**n-1),u=2**n,d=BigInt(n);for(let h=0;h<i;h++){const f=h*o;let p=Number(s&l);s>>=d,p>o&&(p-=u,s+=qa);const g=f,y=f+Math.abs(p)-1,v=h%2!==0,A=p<0;p===0?c=c.add(Jl(v,r[g])):a=a.add(Jl(A,r[y]))}return{p:a,f:c}},wNAFUnsafe(n,r,s,i=t.ZERO){const{windows:o,windowSize:a}=Xl(n,e),c=BigInt(2**n-1),l=2**n,u=BigInt(n);for(let d=0;d<o;d++){const h=d*a;if(s===rp)break;let f=Number(s&c);if(s>>=u,f>a&&(f-=l,s+=qa),f===0)continue;let p=r[h+Math.abs(f)-1];f<0&&(p=p.negate()),i=i.add(p)}return i},getPrecomputes(n,r,s){let i=Ql.get(r);return i||(i=this.precomputeWindow(r,n),n!==1&&Ql.set(r,s(i))),i},wNAFCached(n,r,s){const i=eu(n);return this.wNAF(i,this.getPrecomputes(i,n,s),r)},wNAFCachedUnsafe(n,r,s,i){const o=eu(n);return o===1?this.unsafeLadder(n,r,i):this.wNAFUnsafe(o,this.getPrecomputes(o,n,s),r,i)},setWindowSize(n,r){Hy(r,e),zy.set(n,r),Ql.delete(n)}}}function mI(t,e,n,r){if(fI(n,t),pI(r,e),n.length!==r.length)throw new Error("arrays of points and scalars must have equal length");const s=t.ZERO,i=tI(BigInt(n.length)),o=i>12?i-3:i>4?i-2:i?2:1,a=(1<<o)-1,c=new Array(a+1).fill(s),l=Math.floor((e.BITS-1)/o)*o;let u=s;for(let d=l;d>=0;d-=o){c.fill(s);for(let f=0;f<r.length;f++){const p=r[f],g=Number(p>>BigInt(d)&BigInt(a));c[g]=c[g].add(n[f])}let h=s;for(let f=c.length-1,p=s;f>0;f--)p=p.add(c[f]),h=h.add(p);if(u=u.add(h),d!==0)for(let f=0;f<o;f++)u=u.double()}return u}function yI(t){return uI(t.Fp),yh(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...Wy(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}const Hn=BigInt(0),on=BigInt(1),Ha=BigInt(2),wI=BigInt(8),EI={zip215:!0};function bI(t){const e=yI(t);return yh(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function _I(t){const e=bI(t),{Fp:n,n:r,prehash:s,hash:i,randomBytes:o,nByteLength:a,h:c}=e,l=Ha<<BigInt(a*8)-on,u=n.create,d=qy(e.n,e.nBitLength),h=e.uvRatio||((_,b)=>{try{return{isValid:!0,value:n.sqrt(_*n.inv(b))}}catch{return{isValid:!1,value:Hn}}}),f=e.adjustScalarBytes||(_=>_),p=e.domain||((_,b,I)=>{if(Yl("phflag",I),b.length||I)throw new Error("Contexts/pre-hash are not supported");return _});function g(_,b){ho("coordinate "+_,b,Hn,l)}function y(_){if(!(_ instanceof E))throw new Error("ExtendedPoint expected")}const v=Qf((_,b)=>{const{ex:I,ey:x,ez:S}=_,R=_.is0();b==null&&(b=R?wI:n.inv(S));const L=u(I*b),M=u(x*b),te=u(S*b);if(R)return{x:Hn,y:on};if(te!==on)throw new Error("invZ was invalid");return{x:L,y:M}}),A=Qf(_=>{const{a:b,d:I}=e;if(_.is0())throw new Error("bad point: ZERO");const{ex:x,ey:S,ez:R,et:L}=_,M=u(x*x),te=u(S*S),X=u(R*R),Z=u(X*X),de=u(M*b),fe=u(X*u(de+te)),Ne=u(Z+u(I*u(M*te)));if(fe!==Ne)throw new Error("bad point: equation left != right (1)");const he=u(x*S),xe=u(R*L);if(he!==xe)throw new Error("bad point: equation left != right (2)");return!0});class E{constructor(b,I,x,S){this.ex=b,this.ey=I,this.ez=x,this.et=S,g("x",b),g("y",I),g("z",x),g("t",S),Object.freeze(this)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(b){if(b instanceof E)throw new Error("extended point not allowed");const{x:I,y:x}=b||{};return g("x",I),g("y",x),new E(I,x,on,u(I*x))}static normalizeZ(b){const I=n.invertBatch(b.map(x=>x.ez));return b.map((x,S)=>x.toAffine(I[S])).map(E.fromAffine)}static msm(b,I){return mI(E,d,b,I)}_setWindowSize(b){k.setWindowSize(this,b)}assertValidity(){A(this)}equals(b){y(b);const{ex:I,ey:x,ez:S}=this,{ex:R,ey:L,ez:M}=b,te=u(I*M),X=u(R*S),Z=u(x*M),de=u(L*S);return te===X&&Z===de}is0(){return this.equals(E.ZERO)}negate(){return new E(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){const{a:b}=e,{ex:I,ey:x,ez:S}=this,R=u(I*I),L=u(x*x),M=u(Ha*u(S*S)),te=u(b*R),X=I+x,Z=u(u(X*X)-R-L),de=te+L,fe=de-M,Ne=te-L,he=u(Z*fe),xe=u(de*Ne),nt=u(Z*Ne),ht=u(fe*de);return new E(he,xe,ht,nt)}add(b){y(b);const{a:I,d:x}=e,{ex:S,ey:R,ez:L,et:M}=this,{ex:te,ey:X,ez:Z,et:de}=b;if(I===BigInt(-1)){const sf=u((R-S)*(X+te)),of=u((R+S)*(X-te)),xl=u(of-sf);if(xl===Hn)return this.double();const af=u(L*Ha*de),cf=u(M*Ha*Z),lf=cf+af,uf=of+sf,df=cf-af,pb=u(lf*xl),gb=u(uf*df),mb=u(lf*df),yb=u(xl*uf);return new E(pb,gb,yb,mb)}const fe=u(S*te),Ne=u(R*X),he=u(M*x*de),xe=u(L*Z),nt=u((S+R)*(te+X)-fe-Ne),ht=xe-he,Et=xe+he,Gt=u(Ne-I*fe),Ar=u(nt*ht),Zr=u(Et*Gt),hb=u(nt*Gt),fb=u(ht*Et);return new E(Ar,Zr,fb,hb)}subtract(b){return this.add(b.negate())}wNAF(b){return k.wNAFCached(this,b,E.normalizeZ)}multiply(b){const I=b;ho("scalar",I,on,r);const{p:x,f:S}=this.wNAF(I);return E.normalizeZ([x,S])[0]}multiplyUnsafe(b,I=E.ZERO){const x=b;return ho("scalar",x,Hn,r),x===Hn?O:this.is0()||x===on?this:k.wNAFCachedUnsafe(this,x,E.normalizeZ,I)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return k.unsafeLadder(this,r).is0()}toAffine(b){return v(this,b)}clearCofactor(){const{h:b}=e;return b===on?this:this.multiplyUnsafe(b)}static fromHex(b,I=!1){const{d:x,a:S}=e,R=n.BYTES;b=Nr("pointHex",b,R),Yl("zip215",I);const L=b.slice(),M=b[R-1];L[R-1]=M&-129;const te=pc(L),X=I?l:n.ORDER;ho("pointHex.y",te,Hn,X);const Z=u(te*te),de=u(Z-on),fe=u(x*Z-S);let{isValid:Ne,value:he}=h(de,fe);if(!Ne)throw new Error("Point.fromHex: invalid y coordinate");const xe=(he&on)===on,nt=(M&128)!==0;if(!I&&he===Hn&&nt)throw new Error("Point.fromHex: x=0 and x_0=1");return nt!==xe&&(he=u(-he)),E.fromAffine({x:he,y:te})}static fromPrivateKey(b){return D(b).point}toRawBytes(){const{x:b,y:I}=this.toAffine(),x=dd(I,n.BYTES);return x[x.length-1]|=b&on?128:0,x}toHex(){return mh(this.toRawBytes())}}E.BASE=new E(e.Gx,e.Gy,on,u(e.Gx*e.Gy)),E.ZERO=new E(Hn,on,on,Hn);const{BASE:C,ZERO:O}=E,k=gI(E,a*8);function $(_){return mt(_,r)}function F(_){return $(pc(_))}function D(_){const b=n.BYTES;_=Nr("private key",_,b);const I=Nr("hashed private key",i(_),2*b),x=f(I.slice(0,b)),S=I.slice(b,2*b),R=F(x),L=C.multiply(R),M=L.toRawBytes();return{head:x,prefix:S,scalar:R,point:L,pointBytes:M}}function W(_){return D(_).pointBytes}function H(_=new Uint8Array,...b){const I=Xf(...b);return F(i(p(I,Nr("context",_),!!s)))}function U(_,b,I={}){_=Nr("message",_),s&&(_=s(_));const{prefix:x,scalar:S,pointBytes:R}=D(b),L=H(I.context,x,_),M=C.multiply(L).toRawBytes(),te=H(I.context,M,R,_),X=$(L+te*S);ho("signature.s",X,Hn,r);const Z=Xf(M,dd(X,n.BYTES));return Nr("result",Z,n.BYTES*2)}const N=EI;function P(_,b,I,x=N){const{context:S,zip215:R}=x,L=n.BYTES;_=Nr("signature",_,2*L),b=Nr("message",b),I=Nr("publicKey",I,L),R!==void 0&&Yl("zip215",R),s&&(b=s(b));const M=pc(_.slice(L,2*L));let te,X,Z;try{te=E.fromHex(I,R),X=E.fromHex(_.slice(0,L),R),Z=C.multiplyUnsafe(M)}catch{return!1}if(!R&&te.isSmallOrder())return!1;const de=H(S,X.toRawBytes(),te.toRawBytes(),b);return X.add(te.multiplyUnsafe(de)).subtract(Z).clearCofactor().equals(E.ZERO)}return C._setWindowSize(8),{CURVE:e,getPublicKey:W,sign:U,verify:P,ExtendedPoint:E,utils:{getExtendedPublicKey:D,randomPrivateKey:()=>o(n.BYTES),precompute(_=8,b=E.BASE){return b._setWindowSize(_),b.multiply(BigInt(3)),b}}}}BigInt(0),BigInt(1);const wh=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),sp=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752");BigInt(0);const vI=BigInt(1),ip=BigInt(2);BigInt(3);const CI=BigInt(5),AI=BigInt(8);function SI(t){const e=BigInt(10),n=BigInt(20),r=BigInt(40),s=BigInt(80),i=wh,o=t*t%i*t%i,a=or(o,ip,i)*o%i,c=or(a,vI,i)*t%i,l=or(c,CI,i)*c%i,u=or(l,e,i)*l%i,d=or(u,n,i)*u%i,h=or(d,r,i)*d%i,f=or(h,s,i)*h%i,p=or(f,s,i)*h%i,g=or(p,e,i)*l%i;return{pow_p_5_8:or(g,ip,i)*t%i,b2:o}}function II(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function NI(t,e){const n=wh,r=mt(e*e*e,n),s=mt(r*r*e,n),i=SI(t*s).pow_p_5_8;let o=mt(t*r*i,n);const a=mt(e*o*o,n),c=o,l=mt(o*sp,n),u=a===t,d=a===mt(-t,n),h=a===mt(-t*sp,n);return u&&(o=c),(d||h)&&(o=l),cI(o,n)&&(o=mt(-o,n)),{isValid:u||d,value:o}}const TI=(()=>qy(wh,void 0,!0))(),OI=(()=>({a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:TI,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:AI,Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:ZS,randomBytes:$y,adjustScalarBytes:II,uvRatio:NI}))(),Vy=(()=>_I(OI))(),RI="EdDSA",xI="JWT",$c=".",ul="base64url",Ky="utf8",Gy="utf8",PI=":",DI="did",kI="key",op="base58btc",UI="z",$I="K36",BI=32;function Eh(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function Yy(t=0){return globalThis.Buffer!=null&&globalThis.Buffer.allocUnsafe!=null?Eh(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}function Zy(t,e){e||(e=t.reduce((s,i)=>s+i.length,0));const n=Yy(e);let r=0;for(const s of t)n.set(s,r),r+=s.length;return Eh(n)}function FI(t,e){if(t.length>=255)throw new TypeError("Alphabet too long");for(var n=new Uint8Array(256),r=0;r<n.length;r++)n[r]=255;for(var s=0;s<t.length;s++){var i=t.charAt(s),o=i.charCodeAt(0);if(n[o]!==255)throw new TypeError(i+" is ambiguous");n[o]=s}var a=t.length,c=t.charAt(0),l=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function d(p){if(p instanceof Uint8Array||(ArrayBuffer.isView(p)?p=new Uint8Array(p.buffer,p.byteOffset,p.byteLength):Array.isArray(p)&&(p=Uint8Array.from(p))),!(p instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(p.length===0)return"";for(var g=0,y=0,v=0,A=p.length;v!==A&&p[v]===0;)v++,g++;for(var E=(A-v)*u+1>>>0,C=new Uint8Array(E);v!==A;){for(var O=p[v],k=0,$=E-1;(O!==0||k<y)&&$!==-1;$--,k++)O+=256*C[$]>>>0,C[$]=O%a>>>0,O=O/a>>>0;if(O!==0)throw new Error("Non-zero carry");y=k,v++}for(var F=E-y;F!==E&&C[F]===0;)F++;for(var D=c.repeat(g);F<E;++F)D+=t.charAt(C[F]);return D}function h(p){if(typeof p!="string")throw new TypeError("Expected String");if(p.length===0)return new Uint8Array;var g=0;if(p[g]!==" "){for(var y=0,v=0;p[g]===c;)y++,g++;for(var A=(p.length-g)*l+1>>>0,E=new Uint8Array(A);p[g];){var C=n[p.charCodeAt(g)];if(C===255)return;for(var O=0,k=A-1;(C!==0||O<v)&&k!==-1;k--,O++)C+=a*E[k]>>>0,E[k]=C%256>>>0,C=C/256>>>0;if(C!==0)throw new Error("Non-zero carry");v=O,g++}if(p[g]!==" "){for(var $=A-v;$!==A&&E[$]===0;)$++;for(var F=new Uint8Array(y+(A-$)),D=y;$!==A;)F[D++]=E[$++];return F}}}function f(p){var g=h(p);if(g)return g;throw new Error(`Non-${e} character`)}return{encode:d,decodeUnsafe:h,decode:f}}var LI=FI,MI=LI;const Jy=t=>{if(t instanceof Uint8Array&&t.constructor.name==="Uint8Array")return t;if(t instanceof ArrayBuffer)return new Uint8Array(t);if(ArrayBuffer.isView(t))return new Uint8Array(t.buffer,t.byteOffset,t.byteLength);throw new Error("Unknown type, must be binary type")},jI=t=>new TextEncoder().encode(t),WI=t=>new TextDecoder().decode(t);let qI=class{constructor(e,n,r){this.name=e,this.prefix=n,this.baseEncode=r}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},HI=class{constructor(e,n,r){if(this.name=e,this.prefix=n,n.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=n.codePointAt(0),this.baseDecode=r}decode(e){if(typeof e=="string"){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))}else throw Error("Can only multibase decode strings")}or(e){return Xy(this,e)}},zI=class{constructor(e){this.decoders=e}or(e){return Xy(this,e)}decode(e){const n=e[0],r=this.decoders[n];if(r)return r.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};const Xy=(t,e)=>new zI({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}});let VI=class{constructor(e,n,r,s){this.name=e,this.prefix=n,this.baseEncode=r,this.baseDecode=s,this.encoder=new qI(e,n,r),this.decoder=new HI(e,n,s)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};const dl=({name:t,prefix:e,encode:n,decode:r})=>new VI(t,e,n,r),Aa=({prefix:t,name:e,alphabet:n})=>{const{encode:r,decode:s}=MI(n,e);return dl({prefix:t,name:e,encode:r,decode:i=>Jy(s(i))})},KI=(t,e,n,r)=>{const s={};for(let u=0;u<e.length;++u)s[e[u]]=u;let i=t.length;for(;t[i-1]==="=";)--i;const o=new Uint8Array(i*n/8|0);let a=0,c=0,l=0;for(let u=0;u<i;++u){const d=s[t[u]];if(d===void 0)throw new SyntaxError(`Non-${r} character`);c=c<<n|d,a+=n,a>=8&&(a-=8,o[l++]=255&c>>a)}if(a>=n||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return o},GI=(t,e,n)=>{const r=e[e.length-1]==="=",s=(1<<n)-1;let i="",o=0,a=0;for(let c=0;c<t.length;++c)for(a=a<<8|t[c],o+=8;o>n;)o-=n,i+=e[s&a>>o];if(o&&(i+=e[s&a<<n-o]),r)for(;i.length*n&7;)i+="=";return i},Dt=({name:t,prefix:e,bitsPerChar:n,alphabet:r})=>dl({prefix:e,name:t,encode(s){return GI(s,r,n)},decode(s){return KI(s,r,n,t)}}),YI=dl({prefix:"\0",name:"identity",encode:t=>WI(t),decode:t=>jI(t)});var ZI=Object.freeze({__proto__:null,identity:YI});const JI=Dt({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var XI=Object.freeze({__proto__:null,base2:JI});const QI=Dt({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var eN=Object.freeze({__proto__:null,base8:QI});const tN=Aa({prefix:"9",name:"base10",alphabet:"0123456789"});var nN=Object.freeze({__proto__:null,base10:tN});const rN=Dt({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),sN=Dt({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var iN=Object.freeze({__proto__:null,base16:rN,base16upper:sN});const oN=Dt({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),aN=Dt({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),cN=Dt({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),lN=Dt({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),uN=Dt({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),dN=Dt({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),hN=Dt({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),fN=Dt({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),pN=Dt({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var gN=Object.freeze({__proto__:null,base32:oN,base32upper:aN,base32pad:cN,base32padupper:lN,base32hex:uN,base32hexupper:dN,base32hexpad:hN,base32hexpadupper:fN,base32z:pN});const mN=Aa({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),yN=Aa({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var wN=Object.freeze({__proto__:null,base36:mN,base36upper:yN});const EN=Aa({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),bN=Aa({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var _N=Object.freeze({__proto__:null,base58btc:EN,base58flickr:bN});const vN=Dt({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),CN=Dt({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),AN=Dt({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),SN=Dt({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var IN=Object.freeze({__proto__:null,base64:vN,base64pad:CN,base64url:AN,base64urlpad:SN});const Qy=Array.from("🚀🪐☄🛰🌌🌑🌒🌓🌔🌕🌖🌗🌘🌍🌏🌎🐉☀💻🖥💾💿😂❤😍🤣😊🙏💕😭😘👍😅👏😁🔥🥰💔💖💙😢🤔😆🙄💪😉☺👌🤗💜😔😎😇🌹🤦🎉💞✌✨🤷😱😌🌸🙌😋💗💚😏💛🙂💓🤩😄😀🖤😃💯🙈👇🎶😒🤭❣😜💋👀😪😑💥🙋😞😩😡🤪👊🥳😥🤤👉💃😳✋😚😝😴🌟😬🙃🍀🌷😻😓⭐✅🥺🌈😈🤘💦✔😣🏃💐☹🎊💘😠☝😕🌺🎂🌻😐🖕💝🙊😹🗣💫💀👑🎵🤞😛🔴😤🌼😫⚽🤙☕🏆🤫👈😮🙆🍻🍃🐶💁😲🌿🧡🎁⚡🌞🎈❌✊👋😰🤨😶🤝🚶💰🍓💢🤟🙁🚨💨🤬✈🎀🍺🤓😙💟🌱😖👶🥴▶➡❓💎💸⬇😨🌚🦋😷🕺⚠🙅😟😵👎🤲🤠🤧📌🔵💅🧐🐾🍒😗🤑🌊🤯🐷☎💧😯💆👆🎤🙇🍑❄🌴💣🐸💌📍🥀🤢👅💡💩👐📸👻🤐🤮🎼🥵🚩🍎🍊👼💍📣🥂"),NN=Qy.reduce((t,e,n)=>(t[n]=e,t),[]),TN=Qy.reduce((t,e,n)=>(t[e.codePointAt(0)]=n,t),[]);function ON(t){return t.reduce((e,n)=>(e+=NN[n],e),"")}function RN(t){const e=[];for(const n of t){const r=TN[n.codePointAt(0)];if(r===void 0)throw new Error(`Non-base256emoji character: ${n}`);e.push(r)}return new Uint8Array(e)}const xN=dl({prefix:"🚀",name:"base256emoji",encode:ON,decode:RN});var PN=Object.freeze({__proto__:null,base256emoji:xN}),DN=ew,ap=128,kN=127,UN=~kN,$N=Math.pow(2,31);function ew(t,e,n){e=e||[],n=n||0;for(var r=n;t>=$N;)e[n++]=t&255|ap,t/=128;for(;t&UN;)e[n++]=t&255|ap,t>>>=7;return e[n]=t|0,ew.bytes=n-r+1,e}var BN=fd,FN=128,cp=127;function fd(t,r){var n=0,r=r||0,s=0,i=r,o,a=t.length;do{if(i>=a)throw fd.bytes=0,new RangeError("Could not decode varint");o=t[i++],n+=s<28?(o&cp)<<s:(o&cp)*Math.pow(2,s),s+=7}while(o>=FN);return fd.bytes=i-r,n}var LN=Math.pow(2,7),MN=Math.pow(2,14),jN=Math.pow(2,21),WN=Math.pow(2,28),qN=Math.pow(2,35),HN=Math.pow(2,42),zN=Math.pow(2,49),VN=Math.pow(2,56),KN=Math.pow(2,63),GN=function(t){return t<LN?1:t<MN?2:t<jN?3:t<WN?4:t<qN?5:t<HN?6:t<zN?7:t<VN?8:t<KN?9:10},YN={encode:DN,decode:BN,encodingLength:GN},tw=YN;const lp=(t,e,n=0)=>(tw.encode(t,e,n),e),up=t=>tw.encodingLength(t),pd=(t,e)=>{const n=e.byteLength,r=up(t),s=r+up(n),i=new Uint8Array(s+n);return lp(t,i,0),lp(n,i,r),i.set(e,s),new ZN(t,n,e,i)};let ZN=class{constructor(e,n,r,s){this.code=e,this.size=n,this.digest=r,this.bytes=s}};const nw=({name:t,code:e,encode:n})=>new JN(t,e,n);let JN=class{constructor(e,n,r){this.name=e,this.code=n,this.encode=r}digest(e){if(e instanceof Uint8Array){const n=this.encode(e);return n instanceof Uint8Array?pd(this.code,n):n.then(r=>pd(this.code,r))}else throw Error("Unknown type, must be binary type")}};const rw=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),XN=nw({name:"sha2-256",code:18,encode:rw("SHA-256")}),QN=nw({name:"sha2-512",code:19,encode:rw("SHA-512")});var e2=Object.freeze({__proto__:null,sha256:XN,sha512:QN});const sw=0,t2="identity",iw=Jy,n2=t=>pd(sw,iw(t)),r2={code:sw,name:t2,encode:iw,digest:n2};var s2=Object.freeze({__proto__:null,identity:r2});new TextEncoder,new TextDecoder;const dp={...ZI,...XI,...eN,...nN,...iN,...gN,...wN,..._N,...IN,...PN};({...e2,...s2});function ow(t,e,n,r){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:n},decoder:{decode:r}}}const hp=ow("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),tu=ow("ascii","a",t=>{let e="a";for(let n=0;n<t.length;n++)e+=String.fromCharCode(t[n]);return e},t=>{t=t.substring(1);const e=Yy(t.length);for(let n=0;n<t.length;n++)e[n]=t.charCodeAt(n);return e}),aw={utf8:hp,"utf-8":hp,hex:dp.base16,latin1:tu,ascii:tu,binary:tu,...dp};function hl(t,e="utf8"){const n=aw[e];if(!n)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(t.buffer,t.byteOffset,t.byteLength).toString("utf8"):n.encoder.encode(t).substring(1)}function no(t,e="utf8"){const n=aw[e];if(!n)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?Eh(globalThis.Buffer.from(t,"utf-8")):n.decoder.decode(`${n.prefix}${t}`)}function fp(t){return ci(hl(no(t,ul),Ky))}function Bc(t){return hl(no(li(t),Ky),ul)}function cw(t){const e=no($I,op),n=UI+hl(Zy([e,t]),op);return[DI,kI,n].join(PI)}function i2(t){return hl(t,ul)}function o2(t){return no(t,ul)}function a2(t){return no([Bc(t.header),Bc(t.payload)].join($c),Gy)}function c2(t){return[Bc(t.header),Bc(t.payload),i2(t.signature)].join($c)}function gd(t){const e=t.split($c),n=fp(e[0]),r=fp(e[1]),s=o2(e[2]),i=no(e.slice(0,2).join($c),Gy);return{header:n,payload:r,signature:s,data:i}}function pp(t=$y(BI)){const e=Vy.getPublicKey(t);return{secretKey:Zy([t,e]),publicKey:e}}async function l2(t,e,n,r,s=G.fromMiliseconds(Date.now())){const i={alg:RI,typ:xI},o=cw(r.publicKey),a=s+n,c={iss:o,sub:t,aud:e,iat:s,exp:a},l=a2({header:i,payload:c}),u=Vy.sign(l,r.secretKey.slice(0,32));return c2({header:i,payload:c,signature:u})}var gp=globalThis&&globalThis.__spreadArray||function(t,e,n){if(n||arguments.length===2)for(var r=0,s=e.length,i;r<s;r++)(i||!(r in e))&&(i||(i=Array.prototype.slice.call(e,0,r)),i[r]=e[r]);return t.concat(i||Array.prototype.slice.call(e))},u2=function(){function t(e,n,r){this.name=e,this.version=n,this.os=r,this.type="browser"}return t}(),d2=function(){function t(e){this.version=e,this.type="node",this.name="node",this.os=Vt.platform}return t}(),h2=function(){function t(e,n,r,s){this.name=e,this.version=n,this.os=r,this.bot=s,this.type="bot-device"}return t}(),f2=function(){function t(){this.type="bot",this.bot=!0,this.name="bot",this.version=null,this.os=null}return t}(),p2=function(){function t(){this.type="react-native",this.name="react-native",this.version=null,this.os=null}return t}(),g2=/alexa|bot|crawl(er|ing)|facebookexternalhit|feedburner|google web preview|nagios|postrank|pingdom|slurp|spider|yahoo!|yandex/,m2=/(nuhk|curl|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask\ Jeeves\/Teoma|ia_archiver)/,mp=3,y2=[["aol",/AOLShield\/([0-9\._]+)/],["edge",/Edge\/([0-9\._]+)/],["edge-ios",/EdgiOS\/([0-9\._]+)/],["yandexbrowser",/YaBrowser\/([0-9\._]+)/],["kakaotalk",/KAKAOTALK\s([0-9\.]+)/],["samsung",/SamsungBrowser\/([0-9\.]+)/],["silk",/\bSilk\/([0-9._-]+)\b/],["miui",/MiuiBrowser\/([0-9\.]+)$/],["beaker",/BeakerBrowser\/([0-9\.]+)/],["edge-chromium",/EdgA?\/([0-9\.]+)/],["chromium-webview",/(?!Chrom.*OPR)wv\).*Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["chrome",/(?!Chrom.*OPR)Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["phantomjs",/PhantomJS\/([0-9\.]+)(:?\s|$)/],["crios",/CriOS\/([0-9\.]+)(:?\s|$)/],["firefox",/Firefox\/([0-9\.]+)(?:\s|$)/],["fxios",/FxiOS\/([0-9\.]+)/],["opera-mini",/Opera Mini.*Version\/([0-9\.]+)/],["opera",/Opera\/([0-9\.]+)(?:\s|$)/],["opera",/OPR\/([0-9\.]+)(:?\s|$)/],["pie",/^Microsoft Pocket Internet Explorer\/(\d+\.\d+)$/],["pie",/^Mozilla\/\d\.\d+\s\(compatible;\s(?:MSP?IE|MSInternet Explorer) (\d+\.\d+);.*Windows CE.*\)$/],["netfront",/^Mozilla\/\d\.\d+.*NetFront\/(\d.\d)/],["ie",/Trident\/7\.0.*rv\:([0-9\.]+).*\).*Gecko$/],["ie",/MSIE\s([0-9\.]+);.*Trident\/[4-7].0/],["ie",/MSIE\s(7\.0)/],["bb10",/BB10;\sTouch.*Version\/([0-9\.]+)/],["android",/Android\s([0-9\.]+)/],["ios",/Version\/([0-9\._]+).*Mobile.*Safari.*/],["safari",/Version\/([0-9\._]+).*Safari/],["facebook",/FB[AS]V\/([0-9\.]+)/],["instagram",/Instagram\s([0-9\.]+)/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Mobile/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Gecko\)$/],["curl",/^curl\/([0-9\.]+)$/],["searchbot",g2]],yp=[["iOS",/iP(hone|od|ad)/],["Android OS",/Android/],["BlackBerry OS",/BlackBerry|BB10/],["Windows Mobile",/IEMobile/],["Amazon OS",/Kindle/],["Windows 3.11",/Win16/],["Windows 95",/(Windows 95)|(Win95)|(Windows_95)/],["Windows 98",/(Windows 98)|(Win98)/],["Windows 2000",/(Windows NT 5.0)|(Windows 2000)/],["Windows XP",/(Windows NT 5.1)|(Windows XP)/],["Windows Server 2003",/(Windows NT 5.2)/],["Windows Vista",/(Windows NT 6.0)/],["Windows 7",/(Windows NT 6.1)/],["Windows 8",/(Windows NT 6.2)/],["Windows 8.1",/(Windows NT 6.3)/],["Windows 10",/(Windows NT 10.0)/],["Windows ME",/Windows ME/],["Windows CE",/Windows CE|WinCE|Microsoft Pocket Internet Explorer/],["Open BSD",/OpenBSD/],["Sun OS",/SunOS/],["Chrome OS",/CrOS/],["Linux",/(Linux)|(X11)/],["Mac OS",/(Mac_PowerPC)|(Macintosh)/],["QNX",/QNX/],["BeOS",/BeOS/],["OS/2",/OS\/2/]];function w2(t){return t?wp(t):typeof document>"u"&&typeof navigator<"u"&&navigator.product==="ReactNative"?new p2:typeof navigator<"u"?wp(navigator.userAgent):_2()}function E2(t){return t!==""&&y2.reduce(function(e,n){var r=n[0],s=n[1];if(e)return e;var i=s.exec(t);return!!i&&[r,i]},!1)}function wp(t){var e=E2(t);if(!e)return null;var n=e[0],r=e[1];if(n==="searchbot")return new f2;var s=r[1]&&r[1].split(".").join("_").split("_").slice(0,3);s?s.length<mp&&(s=gp(gp([],s,!0),v2(mp-s.length),!0)):s=[];var i=s.join("."),o=b2(t),a=m2.exec(t);return a&&a[1]?new h2(n,i,o,a[1]):new u2(n,i,o)}function b2(t){for(var e=0,n=yp.length;e<n;e++){var r=yp[e],s=r[0],i=r[1],o=i.exec(t);if(o)return s}return null}function _2(){var t=typeof Vt<"u"&&Vt.version;return t?new d2(Vt.version.slice(1)):null}function v2(t){for(var e=[],n=0;n<t;n++)e.push("0");return e}var Ze={};Object.defineProperty(Ze,"__esModule",{value:!0});Ze.getLocalStorage=Ze.getLocalStorageOrThrow=Ze.getCrypto=Ze.getCryptoOrThrow=lw=Ze.getLocation=Ze.getLocationOrThrow=bh=Ze.getNavigator=Ze.getNavigatorOrThrow=ui=Ze.getDocument=Ze.getDocumentOrThrow=Ze.getFromWindowOrThrow=Ze.getFromWindow=void 0;function bi(t){let e;return typeof window<"u"&&typeof window[t]<"u"&&(e=window[t]),e}Ze.getFromWindow=bi;function ro(t){const e=bi(t);if(!e)throw new Error(`${t} is not defined in Window`);return e}Ze.getFromWindowOrThrow=ro;function C2(){return ro("document")}Ze.getDocumentOrThrow=C2;function A2(){return bi("document")}var ui=Ze.getDocument=A2;function S2(){return ro("navigator")}Ze.getNavigatorOrThrow=S2;function I2(){return bi("navigator")}var bh=Ze.getNavigator=I2;function N2(){return ro("location")}Ze.getLocationOrThrow=N2;function T2(){return bi("location")}var lw=Ze.getLocation=T2;function O2(){return ro("crypto")}Ze.getCryptoOrThrow=O2;function R2(){return bi("crypto")}Ze.getCrypto=R2;function x2(){return ro("localStorage")}Ze.getLocalStorageOrThrow=x2;function P2(){return bi("localStorage")}Ze.getLocalStorage=P2;var _h={};Object.defineProperty(_h,"__esModule",{value:!0});var uw=_h.getWindowMetadata=void 0;const Ep=Ze;function D2(){let t,e;try{t=Ep.getDocumentOrThrow(),e=Ep.getLocationOrThrow()}catch{return null}function n(){const d=t.getElementsByTagName("link"),h=[];for(let f=0;f<d.length;f++){const p=d[f],g=p.getAttribute("rel");if(g&&g.toLowerCase().indexOf("icon")>-1){const y=p.getAttribute("href");if(y)if(y.toLowerCase().indexOf("https:")===-1&&y.toLowerCase().indexOf("http:")===-1&&y.indexOf("//")!==0){let v=e.protocol+"//"+e.host;if(y.indexOf("/")===0)v+=y;else{const A=e.pathname.split("/");A.pop();const E=A.join("/");v+=E+"/"+y}h.push(v)}else if(y.indexOf("//")===0){const v=e.protocol+y;h.push(v)}else h.push(y)}}return h}function r(...d){const h=t.getElementsByTagName("meta");for(let f=0;f<h.length;f++){const p=h[f],g=["itemprop","property","name"].map(y=>p.getAttribute(y)).filter(y=>y?d.includes(y):!1);if(g.length&&g){const y=p.getAttribute("content");if(y)return y}}return""}function s(){let d=r("name","og:site_name","og:title","twitter:title");return d||(d=t.title),d}function i(){return r("description","og:description","twitter:description","keywords")}const o=s(),a=i(),c=e.origin,l=n();return{description:a,url:c,icons:l,name:o}}uw=_h.getWindowMetadata=D2;const k2="0.1.1";function U2(){return k2}class tt extends Error{constructor(e,n={}){const r=(()=>{var c;if(n.cause instanceof tt){if(n.cause.details)return n.cause.details;if(n.cause.shortMessage)return n.cause.shortMessage}return n.cause&&"details"in n.cause&&typeof n.cause.details=="string"?n.cause.details:(c=n.cause)!=null&&c.message?n.cause.message:n.details})(),s=(()=>n.cause instanceof tt&&n.cause.docsPath||n.docsPath)(),o=`https://oxlib.sh${s??""}`,a=[e||"An error occurred.",...n.metaMessages?["",...n.metaMessages]:[],...r||s?["",r?`Details: ${r}`:void 0,s?`See: ${o}`:void 0]:[]].filter(c=>typeof c=="string").join(`
|
|
19
|
-
`);super(a,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BaseError"}),Object.defineProperty(this,"version",{enumerable:!0,configurable:!0,writable:!0,value:`ox@${U2()}`}),this.cause=n.cause,this.details=r,this.docs=o,this.docsPath=s,this.shortMessage=e}walk(e){return dw(this,e)}}function dw(t,e){return e!=null&&e(t)?t:t&&typeof t=="object"&&"cause"in t&&t.cause?dw(t.cause,e):e?null:t}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const vh=BigInt(0),md=BigInt(1);function Sa(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function Ch(t){if(!Sa(t))throw new Error("Uint8Array expected")}function ca(t,e){if(typeof e!="boolean")throw new Error(t+" boolean expected, got "+e)}function za(t){const e=t.toString(16);return e.length&1?"0"+e:e}function hw(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return t===""?vh:BigInt("0x"+t)}const fw=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",$2=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function la(t){if(Ch(t),fw)return t.toHex();let e="";for(let n=0;n<t.length;n++)e+=$2[t[n]];return e}const Tr={_0:48,_9:57,A:65,F:70,a:97,f:102};function bp(t){if(t>=Tr._0&&t<=Tr._9)return t-Tr._0;if(t>=Tr.A&&t<=Tr.F)return t-(Tr.A-10);if(t>=Tr.a&&t<=Tr.f)return t-(Tr.a-10)}function Fc(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);if(fw)return Uint8Array.fromHex(t);const e=t.length,n=e/2;if(e%2)throw new Error("hex string expected, got unpadded hex of length "+e);const r=new Uint8Array(n);for(let s=0,i=0;s<n;s++,i+=2){const o=bp(t.charCodeAt(i)),a=bp(t.charCodeAt(i+1));if(o===void 0||a===void 0){const c=t[i]+t[i+1];throw new Error('hex string expected, got non-hex character "'+c+'" at index '+i)}r[s]=o*16+a}return r}function ti(t){return hw(la(t))}function pw(t){return Ch(t),hw(la(Uint8Array.from(t).reverse()))}function Ia(t,e){return Fc(t.toString(16).padStart(e*2,"0"))}function gw(t,e){return Ia(t,e).reverse()}function $n(t,e,n){let r;if(typeof e=="string")try{r=Fc(e)}catch(i){throw new Error(t+" must be hex string or Uint8Array, cause: "+i)}else if(Sa(e))r=Uint8Array.from(e);else throw new Error(t+" must be hex string or Uint8Array");const s=r.length;if(typeof n=="number"&&s!==n)throw new Error(t+" of length "+n+" expected, got "+s);return r}function Lc(...t){let e=0;for(let r=0;r<t.length;r++){const s=t[r];Ch(s),e+=s.length}const n=new Uint8Array(e);for(let r=0,s=0;r<t.length;r++){const i=t[r];n.set(i,s),s+=i.length}return n}const nu=t=>typeof t=="bigint"&&vh<=t;function Ah(t,e,n){return nu(t)&&nu(e)&&nu(n)&&e<=t&&t<n}function Hi(t,e,n,r){if(!Ah(e,n,r))throw new Error("expected valid "+t+": "+n+" <= n < "+r+", got "+e)}function B2(t){let e;for(e=0;t>vh;t>>=md,e+=1);return e}const fl=t=>(md<<BigInt(t))-md,ru=t=>new Uint8Array(t),_p=t=>Uint8Array.from(t);function F2(t,e,n){if(typeof t!="number"||t<2)throw new Error("hashLen must be a number");if(typeof e!="number"||e<2)throw new Error("qByteLen must be a number");if(typeof n!="function")throw new Error("hmacFn must be a function");let r=ru(t),s=ru(t),i=0;const o=()=>{r.fill(1),s.fill(0),i=0},a=(...d)=>n(s,r,...d),c=(d=ru(0))=>{s=a(_p([0]),d),r=a(),d.length!==0&&(s=a(_p([1]),d),r=a())},l=()=>{if(i++>=1e3)throw new Error("drbg: tried 1000 values");let d=0;const h=[];for(;d<e;){r=a();const f=r.slice();h.push(f),d+=r.length}return Lc(...h)};return(d,h)=>{o(),c(d);let f;for(;!(f=h(l()));)c();return o(),f}}const L2={bigint:t=>typeof t=="bigint",function:t=>typeof t=="function",boolean:t=>typeof t=="boolean",string:t=>typeof t=="string",stringOrUint8Array:t=>typeof t=="string"||Sa(t),isSafeInteger:t=>Number.isSafeInteger(t),array:t=>Array.isArray(t),field:(t,e)=>e.Fp.isValid(t),hash:t=>typeof t=="function"&&Number.isSafeInteger(t.outputLen)};function pl(t,e,n={}){const r=(s,i,o)=>{const a=L2[i];if(typeof a!="function")throw new Error("invalid validator function");const c=t[s];if(!(o&&c===void 0)&&!a(c,t))throw new Error("param "+String(s)+" is invalid. Expected "+i+", got "+c)};for(const[s,i]of Object.entries(e))r(s,i,!1);for(const[s,i]of Object.entries(n))r(s,i,!0);return t}function vp(t){const e=new WeakMap;return(n,...r)=>{const s=e.get(n);if(s!==void 0)return s;const i=t(n,...r);return e.set(n,i),i}}function M2(t,e){if(Ip(t)>e)throw new aT({givenSize:Ip(t),maxSize:e})}const Or={zero:48,nine:57,A:65,F:70,a:97,f:102};function Cp(t){if(t>=Or.zero&&t<=Or.nine)return t-Or.zero;if(t>=Or.A&&t<=Or.F)return t-(Or.A-10);if(t>=Or.a&&t<=Or.f)return t-(Or.a-10)}function j2(t,e={}){const{dir:n,size:r=32}=e;if(r===0)return t;if(t.length>r)throw new cT({size:t.length,targetSize:r,type:"Bytes"});const s=new Uint8Array(r);for(let i=0;i<r;i++){const o=n==="right";s[o?i:r-i-1]=t[o?i:t.length-i-1]}return s}function mw(t,e){if(Ts(t)>e)throw new J2({givenSize:Ts(t),maxSize:e})}function W2(t,e){if(typeof e=="number"&&e>0&&e>Ts(t)-1)throw new Ew({offset:e,position:"start",size:Ts(t)})}function q2(t,e,n){if(typeof e=="number"&&typeof n=="number"&&Ts(t)!==n-e)throw new Ew({offset:n,position:"end",size:Ts(t)})}function yw(t,e={}){const{dir:n,size:r=32}=e;if(r===0)return t;const s=t.replace("0x","");if(s.length>r*2)throw new X2({size:Math.ceil(s.length/2),targetSize:r,type:"Hex"});return`0x${s[n==="right"?"padEnd":"padStart"](r*2,"0")}`}const H2="#__bigint";function Sh(t,e,n){return JSON.stringify(t,(r,s)=>typeof e=="function"?e(r,s):typeof s=="bigint"?s.toString()+H2:s,n)}const z2=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function V2(t,e={}){const{strict:n=!1}=e;if(!t)throw new Ap(t);if(typeof t!="string")throw new Ap(t);if(n&&!/^0x[0-9a-fA-F]*$/.test(t))throw new Sp(t);if(!t.startsWith("0x"))throw new Sp(t)}function K2(...t){return`0x${t.reduce((e,n)=>e+n.replace("0x",""),"")}`}function Ih(t){return t instanceof Uint8Array?Mc(t):Array.isArray(t)?Mc(new Uint8Array(t)):t}function Mc(t,e={}){let n="";for(let s=0;s<t.length;s++)n+=z2[t[s]];const r=`0x${n}`;return typeof e.size=="number"?(mw(r,e.size),ww(r,e.size)):r}function su(t,e={}){const{signed:n,size:r}=e,s=BigInt(t);let i;r?n?i=(1n<<BigInt(r)*8n-1n)-1n:i=2n**(BigInt(r)*8n)-1n:typeof t=="number"&&(i=BigInt(Number.MAX_SAFE_INTEGER));const o=typeof i=="bigint"&&n?-i-1n:0;if(i&&s>i||s<o){const l=typeof t=="bigint"?"n":"";throw new Z2({max:i?`${i}${l}`:void 0,min:`${o}${l}`,signed:n,size:r,value:`${t}${l}`})}const c=`0x${(n&&s<0?(1n<<BigInt(r*8))+BigInt(s):s).toString(16)}`;return r?G2(c,r):c}function G2(t,e){return yw(t,{dir:"left",size:e})}function ww(t,e){return yw(t,{dir:"right",size:e})}function $r(t,e,n,r={}){const{strict:s}=r;W2(t,e);const i=`0x${t.replace("0x","").slice((e??0)*2,(n??t.length)*2)}`;return s&&q2(i,e,n),i}function Ts(t){return Math.ceil((t.length-2)/2)}function Y2(t,e={}){const{strict:n=!1}=e;try{return V2(t,{strict:n}),!0}catch{return!1}}class Z2 extends tt{constructor({max:e,min:n,signed:r,size:s,value:i}){super(`Number \`${i}\` is not in safe${s?` ${s*8}-bit`:""}${r?" signed":" unsigned"} integer range ${e?`(\`${n}\` to \`${e}\`)`:`(above \`${n}\`)`}`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.IntegerOutOfRangeError"})}}class Ap extends tt{constructor(e){super(`Value \`${typeof e=="object"?Sh(e):e}\` of type \`${typeof e}\` is an invalid hex type.`,{metaMessages:['Hex types must be represented as `"0x${string}"`.']}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.InvalidHexTypeError"})}}class Sp extends tt{constructor(e){super(`Value \`${e}\` is an invalid hex value.`,{metaMessages:['Hex values must start with `"0x"` and contain only hexadecimal characters (0-9, a-f, A-F).']}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.InvalidHexValueError"})}}let J2=class extends tt{constructor({givenSize:e,maxSize:n}){super(`Size cannot exceed \`${n}\` bytes. Given size: \`${e}\` bytes.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeOverflowError"})}};class Ew extends tt{constructor({offset:e,position:n,size:r}){super(`Slice ${n==="start"?"starting":"ending"} at offset \`${e}\` is out-of-bounds (size: \`${r}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SliceOffsetOutOfBoundsError"})}}let X2=class extends tt{constructor({size:e,targetSize:n,type:r}){super(`${r.charAt(0).toUpperCase()}${r.slice(1).toLowerCase()} size (\`${e}\`) exceeds padding size (\`${n}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeExceedsPaddingSizeError"})}};const Q2=new TextEncoder;function eT(t){if(!(t instanceof Uint8Array)){if(!t)throw new Va(t);if(typeof t!="object")throw new Va(t);if(!("BYTES_PER_ELEMENT"in t))throw new Va(t);if(t.BYTES_PER_ELEMENT!==1||t.constructor.name!=="Uint8Array")throw new Va(t)}}function tT(t){return t instanceof Uint8Array?t:typeof t=="string"?rT(t):nT(t)}function nT(t){return t instanceof Uint8Array?t:new Uint8Array(t)}function rT(t,e={}){const{size:n}=e;let r=t;n&&(mw(t,n),r=ww(t,n));let s=r.slice(2);s.length%2&&(s=`0${s}`);const i=s.length/2,o=new Uint8Array(i);for(let a=0,c=0;a<i;a++){const l=Cp(s.charCodeAt(c++)),u=Cp(s.charCodeAt(c++));if(l===void 0||u===void 0)throw new tt(`Invalid byte sequence ("${s[c-2]}${s[c-1]}" in "${s}").`);o[a]=l*16+u}return o}function sT(t,e={}){const{size:n}=e,r=Q2.encode(t);return typeof n=="number"?(M2(r,n),iT(r,n)):r}function iT(t,e){return j2(t,{dir:"right",size:e})}function Ip(t){return t.length}function oT(t){try{return eT(t),!0}catch{return!1}}class Va extends tt{constructor(e){super(`Value \`${typeof e=="object"?Sh(e):e}\` of type \`${typeof e}\` is an invalid Bytes value.`,{metaMessages:["Bytes values must be of type `Bytes`."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.InvalidBytesTypeError"})}}class aT extends tt{constructor({givenSize:e,maxSize:n}){super(`Size cannot exceed \`${n}\` bytes. Given size: \`${e}\` bytes.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeOverflowError"})}}class cT extends tt{constructor({size:e,targetSize:n,type:r}){super(`${r.charAt(0).toUpperCase()}${r.slice(1).toLowerCase()} size (\`${e}\`) exceeds padding size (\`${n}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeExceedsPaddingSizeError"})}}function bw(t,e={}){const{as:n=typeof t=="string"?"Hex":"Bytes"}=e,r=Eb.keccak_256(tT(t));return n==="Bytes"?r:Mc(r)}class lT extends Map{constructor(e){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){const n=super.get(e);return super.has(e)&&n!==void 0&&(this.delete(e),super.set(e,n)),n}set(e,n){if(super.set(e,n),this.maxSize&&this.size>this.maxSize){const r=this.keys().next().value;r&&this.delete(r)}return this}}const uT={checksum:new lT(8192)},iu=uT.checksum;function _w(t,e={}){const{compressed:n}=e,{prefix:r,x:s,y:i}=t;if(n===!1||typeof s=="bigint"&&typeof i=="bigint"){if(r!==4)throw new Np({prefix:r,cause:new mT});return}if(n===!0||typeof s=="bigint"&&typeof i>"u"){if(r!==3&&r!==2)throw new Np({prefix:r,cause:new gT});return}throw new pT({publicKey:t})}function dT(t){const e=(()=>{if(Y2(t))return vw(t);if(oT(t))return hT(t);const{prefix:n,x:r,y:s}=t;return typeof r=="bigint"&&typeof s=="bigint"?{prefix:n??4,x:r,y:s}:{prefix:n,x:r}})();return _w(e),e}function hT(t){return vw(Mc(t))}function vw(t){if(t.length!==132&&t.length!==130&&t.length!==68)throw new yT({publicKey:t});if(t.length===130){const r=BigInt($r(t,0,32)),s=BigInt($r(t,32,64));return{prefix:4,x:r,y:s}}if(t.length===132){const r=Number($r(t,0,1)),s=BigInt($r(t,1,33)),i=BigInt($r(t,33,65));return{prefix:r,x:s,y:i}}const e=Number($r(t,0,1)),n=BigInt($r(t,1,33));return{prefix:e,x:n}}function fT(t,e={}){_w(t);const{prefix:n,x:r,y:s}=t,{includePrefix:i=!0}=e;return K2(i?su(n,{size:1}):"0x",su(r,{size:32}),typeof s=="bigint"?su(s,{size:32}):"0x")}class pT extends tt{constructor({publicKey:e}){super(`Value \`${Sh(e)}\` is not a valid public key.`,{metaMessages:["Public key must contain:","- an `x` and `prefix` value (compressed)","- an `x`, `y`, and `prefix` value (uncompressed)"]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidError"})}}class Np extends tt{constructor({prefix:e,cause:n}){super(`Prefix "${e}" is invalid.`,{cause:n}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidPrefixError"})}}class gT extends tt{constructor(){super("Prefix must be 2 or 3 for compressed public keys."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidCompressedPrefixError"})}}class mT extends tt{constructor(){super("Prefix must be 4 for uncompressed public keys."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidUncompressedPrefixError"})}}let yT=class extends tt{constructor({publicKey:e}){super(`Value \`${e}\` is an invalid public key size.`,{metaMessages:["Expected: 33 bytes (compressed + prefix), 64 bytes (uncompressed) or 65 bytes (uncompressed + prefix).",`Received ${Ts(Ih(e))} bytes.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidSerializedSizeError"})}};const wT=/^0x[a-fA-F0-9]{40}$/;function Cw(t,e={}){const{strict:n=!0}=e;if(!wT.test(t))throw new Tp({address:t,cause:new _T});if(n){if(t.toLowerCase()===t)return;if(Aw(t)!==t)throw new Tp({address:t,cause:new vT})}}function Aw(t){if(iu.has(t))return iu.get(t);Cw(t,{strict:!1});const e=t.substring(2).toLowerCase(),n=bw(sT(e),{as:"Bytes"}),r=e.split("");for(let i=0;i<40;i+=2)n[i>>1]>>4>=8&&r[i]&&(r[i]=r[i].toUpperCase()),(n[i>>1]&15)>=8&&r[i+1]&&(r[i+1]=r[i+1].toUpperCase());const s=`0x${r.join("")}`;return iu.set(t,s),s}function ET(t,e={}){const{checksum:n=!1}=e;return Cw(t),n?Aw(t):t}function bT(t,e={}){const n=bw(`0x${fT(t).slice(4)}`).substring(26);return ET(`0x${n}`,e)}class Tp extends tt{constructor({address:e,cause:n}){super(`Address "${e}" is invalid.`,{cause:n}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidAddressError"})}}class _T extends tt{constructor(){super("Address is not a 20 byte (40 hexadecimal character) value."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidInputError"})}}class vT extends tt{constructor(){super("Address does not match its checksum counterpart."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidChecksumError"})}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const pn=BigInt(0),Qt=BigInt(1),Ks=BigInt(2),CT=BigInt(3),Sw=BigInt(4),Iw=BigInt(5),Nw=BigInt(8);function dn(t,e){const n=t%e;return n>=pn?n:e+n}function Rn(t,e,n){let r=t;for(;e-- >pn;)r*=r,r%=n;return r}function yd(t,e){if(t===pn)throw new Error("invert: expected non-zero number");if(e<=pn)throw new Error("invert: expected positive modulus, got "+e);let n=dn(t,e),r=e,s=pn,i=Qt;for(;n!==pn;){const a=r/n,c=r%n,l=s-i*a;r=n,n=c,s=i,i=l}if(r!==Qt)throw new Error("invert: does not exist");return dn(s,e)}function Tw(t,e){const n=(t.ORDER+Qt)/Sw,r=t.pow(e,n);if(!t.eql(t.sqr(r),e))throw new Error("Cannot find square root");return r}function AT(t,e){const n=(t.ORDER-Iw)/Nw,r=t.mul(e,Ks),s=t.pow(r,n),i=t.mul(e,s),o=t.mul(t.mul(i,Ks),s),a=t.mul(i,t.sub(o,t.ONE));if(!t.eql(t.sqr(a),e))throw new Error("Cannot find square root");return a}function ST(t){if(t<BigInt(3))throw new Error("sqrt is not defined for small field");let e=t-Qt,n=0;for(;e%Ks===pn;)e/=Ks,n++;let r=Ks;const s=Nh(t);for(;Op(s,r)===1;)if(r++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(n===1)return Tw;let i=s.pow(r,e);const o=(e+Qt)/Ks;return function(c,l){if(c.is0(l))return l;if(Op(c,l)!==1)throw new Error("Cannot find square root");let u=n,d=c.mul(c.ONE,i),h=c.pow(l,e),f=c.pow(l,o);for(;!c.eql(h,c.ONE);){if(c.is0(h))return c.ZERO;let p=1,g=c.sqr(h);for(;!c.eql(g,c.ONE);)if(p++,g=c.sqr(g),p===u)throw new Error("Cannot find square root");const y=Qt<<BigInt(u-p-1),v=c.pow(d,y);u=p,d=c.sqr(v),h=c.mul(h,d),f=c.mul(f,v)}return f}}function IT(t){return t%Sw===CT?Tw:t%Nw===Iw?AT:ST(t)}const NT=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function TT(t){const e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},n=NT.reduce((r,s)=>(r[s]="function",r),e);return pl(t,n)}function OT(t,e,n){if(n<pn)throw new Error("invalid exponent, negatives unsupported");if(n===pn)return t.ONE;if(n===Qt)return e;let r=t.ONE,s=e;for(;n>pn;)n&Qt&&(r=t.mul(r,s)),s=t.sqr(s),n>>=Qt;return r}function Ow(t,e,n=!1){const r=new Array(e.length).fill(n?t.ZERO:void 0),s=e.reduce((o,a,c)=>t.is0(a)?o:(r[c]=o,t.mul(o,a)),t.ONE),i=t.inv(s);return e.reduceRight((o,a,c)=>t.is0(a)?o:(r[c]=t.mul(o,r[c]),t.mul(o,a)),i),r}function Op(t,e){const n=(t.ORDER-Qt)/Ks,r=t.pow(e,n),s=t.eql(r,t.ONE),i=t.eql(r,t.ZERO),o=t.eql(r,t.neg(t.ONE));if(!s&&!i&&!o)throw new Error("invalid Legendre symbol result");return s?1:i?0:-1}function Rw(t,e){e!==void 0&&Vu.anumber(e);const n=e!==void 0?e:t.toString(2).length,r=Math.ceil(n/8);return{nBitLength:n,nByteLength:r}}function Nh(t,e,n=!1,r={}){if(t<=pn)throw new Error("invalid field: expected ORDER > 0, got "+t);const{nBitLength:s,nByteLength:i}=Rw(t,e);if(i>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");let o;const a=Object.freeze({ORDER:t,isLE:n,BITS:s,BYTES:i,MASK:fl(s),ZERO:pn,ONE:Qt,create:c=>dn(c,t),isValid:c=>{if(typeof c!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof c);return pn<=c&&c<t},is0:c=>c===pn,isOdd:c=>(c&Qt)===Qt,neg:c=>dn(-c,t),eql:(c,l)=>c===l,sqr:c=>dn(c*c,t),add:(c,l)=>dn(c+l,t),sub:(c,l)=>dn(c-l,t),mul:(c,l)=>dn(c*l,t),pow:(c,l)=>OT(a,c,l),div:(c,l)=>dn(c*yd(l,t),t),sqrN:c=>c*c,addN:(c,l)=>c+l,subN:(c,l)=>c-l,mulN:(c,l)=>c*l,inv:c=>yd(c,t),sqrt:r.sqrt||(c=>(o||(o=IT(t)),o(a,c))),toBytes:c=>n?gw(c,i):Ia(c,i),fromBytes:c=>{if(c.length!==i)throw new Error("Field.fromBytes: expected "+i+" bytes, got "+c.length);return n?pw(c):ti(c)},invertBatch:c=>Ow(a,c),cmov:(c,l,u)=>u?l:c});return Object.freeze(a)}function xw(t){if(typeof t!="bigint")throw new Error("field order must be bigint");const e=t.toString(2).length;return Math.ceil(e/8)}function Pw(t){const e=xw(t);return e+Math.ceil(e/2)}function RT(t,e,n=!1){const r=t.length,s=xw(e),i=Pw(e);if(r<16||r<i||r>1024)throw new Error("expected "+i+"-1024 bytes of input, got "+r);const o=n?pw(t):ti(t),a=dn(o,e-Qt)+Qt;return n?gw(a,s):Ia(a,s)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Rp=BigInt(0),wd=BigInt(1);function ou(t,e){const n=e.negate();return t?n:e}function Dw(t,e){if(!Number.isSafeInteger(t)||t<=0||t>e)throw new Error("invalid window size, expected [1.."+e+"], got W="+t)}function au(t,e){Dw(t,e);const n=Math.ceil(e/t)+1,r=2**(t-1),s=2**t,i=fl(t),o=BigInt(t);return{windows:n,windowSize:r,mask:i,maxNumber:s,shiftBy:o}}function xp(t,e,n){const{windowSize:r,mask:s,maxNumber:i,shiftBy:o}=n;let a=Number(t&s),c=t>>o;a>r&&(a-=i,c+=wd);const l=e*r,u=l+Math.abs(a)-1,d=a===0,h=a<0,f=e%2!==0;return{nextN:c,offset:u,isZero:d,isNeg:h,isNegF:f,offsetF:l}}function xT(t,e){if(!Array.isArray(t))throw new Error("array expected");t.forEach((n,r)=>{if(!(n instanceof e))throw new Error("invalid point at index "+r)})}function PT(t,e){if(!Array.isArray(t))throw new Error("array of scalars expected");t.forEach((n,r)=>{if(!e.isValid(n))throw new Error("invalid scalar at index "+r)})}const cu=new WeakMap,kw=new WeakMap;function lu(t){return kw.get(t)||1}function DT(t,e){return{constTimeNegate:ou,hasPrecomputes(n){return lu(n)!==1},unsafeLadder(n,r,s=t.ZERO){let i=n;for(;r>Rp;)r&wd&&(s=s.add(i)),i=i.double(),r>>=wd;return s},precomputeWindow(n,r){const{windows:s,windowSize:i}=au(r,e),o=[];let a=n,c=a;for(let l=0;l<s;l++){c=a,o.push(c);for(let u=1;u<i;u++)c=c.add(a),o.push(c);a=c.double()}return o},wNAF(n,r,s){let i=t.ZERO,o=t.BASE;const a=au(n,e);for(let c=0;c<a.windows;c++){const{nextN:l,offset:u,isZero:d,isNeg:h,isNegF:f,offsetF:p}=xp(s,c,a);s=l,d?o=o.add(ou(f,r[p])):i=i.add(ou(h,r[u]))}return{p:i,f:o}},wNAFUnsafe(n,r,s,i=t.ZERO){const o=au(n,e);for(let a=0;a<o.windows&&s!==Rp;a++){const{nextN:c,offset:l,isZero:u,isNeg:d}=xp(s,a,o);if(s=c,!u){const h=r[l];i=i.add(d?h.negate():h)}}return i},getPrecomputes(n,r,s){let i=cu.get(r);return i||(i=this.precomputeWindow(r,n),n!==1&&cu.set(r,s(i))),i},wNAFCached(n,r,s){const i=lu(n);return this.wNAF(i,this.getPrecomputes(i,n,s),r)},wNAFCachedUnsafe(n,r,s,i){const o=lu(n);return o===1?this.unsafeLadder(n,r,i):this.wNAFUnsafe(o,this.getPrecomputes(o,n,s),r,i)},setWindowSize(n,r){Dw(r,e),kw.set(n,r),cu.delete(n)}}}function kT(t,e,n,r){xT(n,t),PT(r,e);const s=n.length,i=r.length;if(s!==i)throw new Error("arrays of points and scalars must have equal length");const o=t.ZERO,a=B2(BigInt(s));let c=1;a>12?c=a-3:a>4?c=a-2:a>0&&(c=2);const l=fl(c),u=new Array(Number(l)+1).fill(o),d=Math.floor((e.BITS-1)/c)*c;let h=o;for(let f=d;f>=0;f-=c){u.fill(o);for(let g=0;g<i;g++){const y=r[g],v=Number(y>>BigInt(f)&l);u[v]=u[v].add(n[g])}let p=o;for(let g=u.length-1,y=o;g>0;g--)y=y.add(u[g]),p=p.add(y);if(h=h.add(p),f!==0)for(let g=0;g<c;g++)h=h.double()}return h}function Uw(t){return TT(t.Fp),pl(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...Rw(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function Pp(t){t.lowS!==void 0&&ca("lowS",t.lowS),t.prehash!==void 0&&ca("prehash",t.prehash)}function UT(t){const e=Uw(t);pl(e,{a:"field",b:"field"},{allowInfinityPoint:"boolean",allowedPrivateKeyLengths:"array",clearCofactor:"function",fromBytes:"function",isTorsionFree:"function",toBytes:"function",wrapPrivateKey:"boolean"});const{endo:n,Fp:r,a:s}=e;if(n){if(!r.eql(s,r.ZERO))throw new Error("invalid endo: CURVE.a must be 0");if(typeof n!="object"||typeof n.beta!="bigint"||typeof n.splitScalar!="function")throw new Error('invalid endo: expected "beta": bigint and "splitScalar": function')}return Object.freeze({...e})}class $T extends Error{constructor(e=""){super(e)}}const Fr={Err:$T,_tlv:{encode:(t,e)=>{const{Err:n}=Fr;if(t<0||t>256)throw new n("tlv.encode: wrong tag");if(e.length&1)throw new n("tlv.encode: unpadded data");const r=e.length/2,s=za(r);if(s.length/2&128)throw new n("tlv.encode: long form length too big");const i=r>127?za(s.length/2|128):"";return za(t)+i+s+e},decode(t,e){const{Err:n}=Fr;let r=0;if(t<0||t>256)throw new n("tlv.encode: wrong tag");if(e.length<2||e[r++]!==t)throw new n("tlv.decode: wrong tlv");const s=e[r++],i=!!(s&128);let o=0;if(!i)o=s;else{const c=s&127;if(!c)throw new n("tlv.decode(long): indefinite length not supported");if(c>4)throw new n("tlv.decode(long): byte length is too big");const l=e.subarray(r,r+c);if(l.length!==c)throw new n("tlv.decode: length bytes not complete");if(l[0]===0)throw new n("tlv.decode(long): zero leftmost byte");for(const u of l)o=o<<8|u;if(r+=c,o<128)throw new n("tlv.decode(long): not minimal encoding")}const a=e.subarray(r,r+o);if(a.length!==o)throw new n("tlv.decode: wrong value length");return{v:a,l:e.subarray(r+o)}}},_int:{encode(t){const{Err:e}=Fr;if(t<jr)throw new e("integer: negative integers are not allowed");let n=za(t);if(Number.parseInt(n[0],16)&8&&(n="00"+n),n.length&1)throw new e("unexpected DER parsing assertion: unpadded hex");return n},decode(t){const{Err:e}=Fr;if(t[0]&128)throw new e("invalid signature integer: negative");if(t[0]===0&&!(t[1]&128))throw new e("invalid signature integer: unnecessary leading zero");return ti(t)}},toSig(t){const{Err:e,_int:n,_tlv:r}=Fr,s=$n("signature",t),{v:i,l:o}=r.decode(48,s);if(o.length)throw new e("invalid signature: left bytes after parsing");const{v:a,l:c}=r.decode(2,i),{v:l,l:u}=r.decode(2,c);if(u.length)throw new e("invalid signature: left bytes after parsing");return{r:n.decode(a),s:n.decode(l)}},hexFromSig(t){const{_tlv:e,_int:n}=Fr,r=e.encode(2,n.encode(t.r)),s=e.encode(2,n.encode(t.s)),i=r+s;return e.encode(48,i)}};function uu(t,e){return la(Ia(t,e))}const jr=BigInt(0),Ct=BigInt(1);BigInt(2);const du=BigInt(3),BT=BigInt(4);function FT(t){const e=UT(t),{Fp:n}=e,r=Nh(e.n,e.nBitLength),s=e.toBytes||((E,C,O)=>{const k=C.toAffine();return Lc(Uint8Array.from([4]),n.toBytes(k.x),n.toBytes(k.y))}),i=e.fromBytes||(E=>{const C=E.subarray(1),O=n.fromBytes(C.subarray(0,n.BYTES)),k=n.fromBytes(C.subarray(n.BYTES,2*n.BYTES));return{x:O,y:k}});function o(E){const{a:C,b:O}=e,k=n.sqr(E),$=n.mul(k,E);return n.add(n.add($,n.mul(E,C)),O)}function a(E,C){const O=n.sqr(C),k=o(E);return n.eql(O,k)}if(!a(e.Gx,e.Gy))throw new Error("bad curve params: generator point");const c=n.mul(n.pow(e.a,du),BT),l=n.mul(n.sqr(e.b),BigInt(27));if(n.is0(n.add(c,l)))throw new Error("bad curve params: a or b");function u(E){return Ah(E,Ct,e.n)}function d(E){const{allowedPrivateKeyLengths:C,nByteLength:O,wrapPrivateKey:k,n:$}=e;if(C&&typeof E!="bigint"){if(Sa(E)&&(E=la(E)),typeof E!="string"||!C.includes(E.length))throw new Error("invalid private key");E=E.padStart(O*2,"0")}let F;try{F=typeof E=="bigint"?E:ti($n("private key",E,O))}catch{throw new Error("invalid private key, expected hex or "+O+" bytes, got "+typeof E)}return k&&(F=dn(F,$)),Hi("private key",F,Ct,$),F}function h(E){if(!(E instanceof g))throw new Error("ProjectivePoint expected")}const f=vp((E,C)=>{const{px:O,py:k,pz:$}=E;if(n.eql($,n.ONE))return{x:O,y:k};const F=E.is0();C==null&&(C=F?n.ONE:n.inv($));const D=n.mul(O,C),W=n.mul(k,C),H=n.mul($,C);if(F)return{x:n.ZERO,y:n.ZERO};if(!n.eql(H,n.ONE))throw new Error("invZ was invalid");return{x:D,y:W}}),p=vp(E=>{if(E.is0()){if(e.allowInfinityPoint&&!n.is0(E.py))return;throw new Error("bad point: ZERO")}const{x:C,y:O}=E.toAffine();if(!n.isValid(C)||!n.isValid(O))throw new Error("bad point: x or y not FE");if(!a(C,O))throw new Error("bad point: equation left != right");if(!E.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});class g{constructor(C,O,k){if(C==null||!n.isValid(C))throw new Error("x required");if(O==null||!n.isValid(O)||n.is0(O))throw new Error("y required");if(k==null||!n.isValid(k))throw new Error("z required");this.px=C,this.py=O,this.pz=k,Object.freeze(this)}static fromAffine(C){const{x:O,y:k}=C||{};if(!C||!n.isValid(O)||!n.isValid(k))throw new Error("invalid affine point");if(C instanceof g)throw new Error("projective point not allowed");const $=F=>n.eql(F,n.ZERO);return $(O)&&$(k)?g.ZERO:new g(O,k,n.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(C){const O=Ow(n,C.map(k=>k.pz));return C.map((k,$)=>k.toAffine(O[$])).map(g.fromAffine)}static fromHex(C){const O=g.fromAffine(i($n("pointHex",C)));return O.assertValidity(),O}static fromPrivateKey(C){return g.BASE.multiply(d(C))}static msm(C,O){return kT(g,r,C,O)}_setWindowSize(C){A.setWindowSize(this,C)}assertValidity(){p(this)}hasEvenY(){const{y:C}=this.toAffine();if(n.isOdd)return!n.isOdd(C);throw new Error("Field doesn't support isOdd")}equals(C){h(C);const{px:O,py:k,pz:$}=this,{px:F,py:D,pz:W}=C,H=n.eql(n.mul(O,W),n.mul(F,$)),U=n.eql(n.mul(k,W),n.mul(D,$));return H&&U}negate(){return new g(this.px,n.neg(this.py),this.pz)}double(){const{a:C,b:O}=e,k=n.mul(O,du),{px:$,py:F,pz:D}=this;let W=n.ZERO,H=n.ZERO,U=n.ZERO,N=n.mul($,$),P=n.mul(F,F),_=n.mul(D,D),b=n.mul($,F);return b=n.add(b,b),U=n.mul($,D),U=n.add(U,U),W=n.mul(C,U),H=n.mul(k,_),H=n.add(W,H),W=n.sub(P,H),H=n.add(P,H),H=n.mul(W,H),W=n.mul(b,W),U=n.mul(k,U),_=n.mul(C,_),b=n.sub(N,_),b=n.mul(C,b),b=n.add(b,U),U=n.add(N,N),N=n.add(U,N),N=n.add(N,_),N=n.mul(N,b),H=n.add(H,N),_=n.mul(F,D),_=n.add(_,_),N=n.mul(_,b),W=n.sub(W,N),U=n.mul(_,P),U=n.add(U,U),U=n.add(U,U),new g(W,H,U)}add(C){h(C);const{px:O,py:k,pz:$}=this,{px:F,py:D,pz:W}=C;let H=n.ZERO,U=n.ZERO,N=n.ZERO;const P=e.a,_=n.mul(e.b,du);let b=n.mul(O,F),I=n.mul(k,D),x=n.mul($,W),S=n.add(O,k),R=n.add(F,D);S=n.mul(S,R),R=n.add(b,I),S=n.sub(S,R),R=n.add(O,$);let L=n.add(F,W);return R=n.mul(R,L),L=n.add(b,x),R=n.sub(R,L),L=n.add(k,$),H=n.add(D,W),L=n.mul(L,H),H=n.add(I,x),L=n.sub(L,H),N=n.mul(P,R),H=n.mul(_,x),N=n.add(H,N),H=n.sub(I,N),N=n.add(I,N),U=n.mul(H,N),I=n.add(b,b),I=n.add(I,b),x=n.mul(P,x),R=n.mul(_,R),I=n.add(I,x),x=n.sub(b,x),x=n.mul(P,x),R=n.add(R,x),b=n.mul(I,R),U=n.add(U,b),b=n.mul(L,R),H=n.mul(S,H),H=n.sub(H,b),b=n.mul(S,I),N=n.mul(L,N),N=n.add(N,b),new g(H,U,N)}subtract(C){return this.add(C.negate())}is0(){return this.equals(g.ZERO)}wNAF(C){return A.wNAFCached(this,C,g.normalizeZ)}multiplyUnsafe(C){const{endo:O,n:k}=e;Hi("scalar",C,jr,k);const $=g.ZERO;if(C===jr)return $;if(this.is0()||C===Ct)return this;if(!O||A.hasPrecomputes(this))return A.wNAFCachedUnsafe(this,C,g.normalizeZ);let{k1neg:F,k1:D,k2neg:W,k2:H}=O.splitScalar(C),U=$,N=$,P=this;for(;D>jr||H>jr;)D&Ct&&(U=U.add(P)),H&Ct&&(N=N.add(P)),P=P.double(),D>>=Ct,H>>=Ct;return F&&(U=U.negate()),W&&(N=N.negate()),N=new g(n.mul(N.px,O.beta),N.py,N.pz),U.add(N)}multiply(C){const{endo:O,n:k}=e;Hi("scalar",C,Ct,k);let $,F;if(O){const{k1neg:D,k1:W,k2neg:H,k2:U}=O.splitScalar(C);let{p:N,f:P}=this.wNAF(W),{p:_,f:b}=this.wNAF(U);N=A.constTimeNegate(D,N),_=A.constTimeNegate(H,_),_=new g(n.mul(_.px,O.beta),_.py,_.pz),$=N.add(_),F=P.add(b)}else{const{p:D,f:W}=this.wNAF(C);$=D,F=W}return g.normalizeZ([$,F])[0]}multiplyAndAddUnsafe(C,O,k){const $=g.BASE,F=(W,H)=>H===jr||H===Ct||!W.equals($)?W.multiplyUnsafe(H):W.multiply(H),D=F(this,O).add(F(C,k));return D.is0()?void 0:D}toAffine(C){return f(this,C)}isTorsionFree(){const{h:C,isTorsionFree:O}=e;if(C===Ct)return!0;if(O)return O(g,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){const{h:C,clearCofactor:O}=e;return C===Ct?this:O?O(g,this):this.multiplyUnsafe(e.h)}toRawBytes(C=!0){return ca("isCompressed",C),this.assertValidity(),s(g,this,C)}toHex(C=!0){return ca("isCompressed",C),la(this.toRawBytes(C))}}g.BASE=new g(e.Gx,e.Gy,n.ONE),g.ZERO=new g(n.ZERO,n.ONE,n.ZERO);const{endo:y,nBitLength:v}=e,A=DT(g,y?Math.ceil(v/2):v);return{CURVE:e,ProjectivePoint:g,normPrivateKeyToScalar:d,weierstrassEquation:o,isWithinCurveOrder:u}}function LT(t){const e=Uw(t);return pl(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function MT(t){const e=LT(t),{Fp:n,n:r,nByteLength:s,nBitLength:i}=e,o=n.BYTES+1,a=2*n.BYTES+1;function c(_){return dn(_,r)}function l(_){return yd(_,r)}const{ProjectivePoint:u,normPrivateKeyToScalar:d,weierstrassEquation:h,isWithinCurveOrder:f}=FT({...e,toBytes(_,b,I){const x=b.toAffine(),S=n.toBytes(x.x),R=Lc;return ca("isCompressed",I),I?R(Uint8Array.from([b.hasEvenY()?2:3]),S):R(Uint8Array.from([4]),S,n.toBytes(x.y))},fromBytes(_){const b=_.length,I=_[0],x=_.subarray(1);if(b===o&&(I===2||I===3)){const S=ti(x);if(!Ah(S,Ct,n.ORDER))throw new Error("Point is not on curve");const R=h(S);let L;try{L=n.sqrt(R)}catch(X){const Z=X instanceof Error?": "+X.message:"";throw new Error("Point is not on curve"+Z)}const M=(L&Ct)===Ct;return(I&1)===1!==M&&(L=n.neg(L)),{x:S,y:L}}else if(b===a&&I===4){const S=n.fromBytes(x.subarray(0,n.BYTES)),R=n.fromBytes(x.subarray(n.BYTES,2*n.BYTES));return{x:S,y:R}}else{const S=o,R=a;throw new Error("invalid Point, expected length of "+S+", or uncompressed "+R+", got "+b)}}});function p(_){const b=r>>Ct;return _>b}function g(_){return p(_)?c(-_):_}const y=(_,b,I)=>ti(_.slice(b,I));class v{constructor(b,I,x){Hi("r",b,Ct,r),Hi("s",I,Ct,r),this.r=b,this.s=I,x!=null&&(this.recovery=x),Object.freeze(this)}static fromCompact(b){const I=s;return b=$n("compactSignature",b,I*2),new v(y(b,0,I),y(b,I,2*I))}static fromDER(b){const{r:I,s:x}=Fr.toSig($n("DER",b));return new v(I,x)}assertValidity(){}addRecoveryBit(b){return new v(this.r,this.s,b)}recoverPublicKey(b){const{r:I,s:x,recovery:S}=this,R=$($n("msgHash",b));if(S==null||![0,1,2,3].includes(S))throw new Error("recovery id invalid");const L=S===2||S===3?I+e.n:I;if(L>=n.ORDER)throw new Error("recovery id 2 or 3 invalid");const M=S&1?"03":"02",te=u.fromHex(M+uu(L,n.BYTES)),X=l(L),Z=c(-R*X),de=c(x*X),fe=u.BASE.multiplyAndAddUnsafe(te,Z,de);if(!fe)throw new Error("point at infinify");return fe.assertValidity(),fe}hasHighS(){return p(this.s)}normalizeS(){return this.hasHighS()?new v(this.r,c(-this.s),this.recovery):this}toDERRawBytes(){return Fc(this.toDERHex())}toDERHex(){return Fr.hexFromSig(this)}toCompactRawBytes(){return Fc(this.toCompactHex())}toCompactHex(){const b=s;return uu(this.r,b)+uu(this.s,b)}}const A={isValidPrivateKey(_){try{return d(_),!0}catch{return!1}},normPrivateKeyToScalar:d,randomPrivateKey:()=>{const _=Pw(e.n);return RT(e.randomBytes(_),e.n)},precompute(_=8,b=u.BASE){return b._setWindowSize(_),b.multiply(BigInt(3)),b}};function E(_,b=!0){return u.fromPrivateKey(_).toRawBytes(b)}function C(_){if(typeof _=="bigint")return!1;if(_ instanceof u)return!0;const I=$n("key",_).length,x=n.BYTES,S=x+1,R=2*x+1;if(!(e.allowedPrivateKeyLengths||s===S))return I===S||I===R}function O(_,b,I=!0){if(C(_)===!0)throw new Error("first arg must be private key");if(C(b)===!1)throw new Error("second arg must be public key");return u.fromHex(b).multiply(d(_)).toRawBytes(I)}const k=e.bits2int||function(_){if(_.length>8192)throw new Error("input is too large");const b=ti(_),I=_.length*8-i;return I>0?b>>BigInt(I):b},$=e.bits2int_modN||function(_){return c(k(_))},F=fl(i);function D(_){return Hi("num < 2^"+i,_,jr,F),Ia(_,s)}function W(_,b,I=H){if(["recovered","canonical"].some(he=>he in I))throw new Error("sign() legacy options not supported");const{hash:x,randomBytes:S}=e;let{lowS:R,prehash:L,extraEntropy:M}=I;R==null&&(R=!0),_=$n("msgHash",_),Pp(I),L&&(_=$n("prehashed msgHash",x(_)));const te=$(_),X=d(b),Z=[D(X),D(te)];if(M!=null&&M!==!1){const he=M===!0?S(n.BYTES):M;Z.push($n("extraEntropy",he))}const de=Lc(...Z),fe=te;function Ne(he){const xe=k(he);if(!f(xe))return;const nt=l(xe),ht=u.BASE.multiply(xe).toAffine(),Et=c(ht.x);if(Et===jr)return;const Gt=c(nt*c(fe+Et*X));if(Gt===jr)return;let Ar=(ht.x===Et?0:2)|Number(ht.y&Ct),Zr=Gt;return R&&p(Gt)&&(Zr=g(Gt),Ar^=1),new v(Et,Zr,Ar)}return{seed:de,k2sig:Ne}}const H={lowS:e.lowS,prehash:!1},U={lowS:e.lowS,prehash:!1};function N(_,b,I=H){const{seed:x,k2sig:S}=W(_,b,I),R=e;return F2(R.hash.outputLen,R.nByteLength,R.hmac)(x,S)}u.BASE._setWindowSize(8);function P(_,b,I,x=U){var Ar;const S=_;b=$n("msgHash",b),I=$n("publicKey",I);const{lowS:R,prehash:L,format:M}=x;if(Pp(x),"strict"in x)throw new Error("options.strict was renamed to lowS");if(M!==void 0&&M!=="compact"&&M!=="der")throw new Error("format must be compact or der");const te=typeof S=="string"||Sa(S),X=!te&&!M&&typeof S=="object"&&S!==null&&typeof S.r=="bigint"&&typeof S.s=="bigint";if(!te&&!X)throw new Error("invalid signature, expected Uint8Array, hex string or Signature instance");let Z,de;try{if(X&&(Z=new v(S.r,S.s)),te){try{M!=="compact"&&(Z=v.fromDER(S))}catch(Zr){if(!(Zr instanceof Fr.Err))throw Zr}!Z&&M!=="der"&&(Z=v.fromCompact(S))}de=u.fromHex(I)}catch{return!1}if(!Z||R&&Z.hasHighS())return!1;L&&(b=e.hash(b));const{r:fe,s:Ne}=Z,he=$(b),xe=l(Ne),nt=c(he*xe),ht=c(fe*xe),Et=(Ar=u.BASE.multiplyAndAddUnsafe(de,nt,ht))==null?void 0:Ar.toAffine();return Et?c(Et.x)===fe:!1}return{CURVE:e,getPublicKey:E,getSharedSecret:O,sign:N,verify:P,ProjectivePoint:u,Signature:v,utils:A}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function jT(t){return{hash:t,hmac:(e,...n)=>bb.hmac(t,e,Vu.concatBytes(...n)),randomBytes:Vu.randomBytes}}function WT(t,e){const n=r=>MT({...t,...jT(r)});return{...n(e),create:n}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const $w=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Dp=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),qT=BigInt(0),HT=BigInt(1),Ed=BigInt(2),kp=(t,e)=>(t+e/Ed)/e;function zT(t){const e=$w,n=BigInt(3),r=BigInt(6),s=BigInt(11),i=BigInt(22),o=BigInt(23),a=BigInt(44),c=BigInt(88),l=t*t*t%e,u=l*l*t%e,d=Rn(u,n,e)*u%e,h=Rn(d,n,e)*u%e,f=Rn(h,Ed,e)*l%e,p=Rn(f,s,e)*f%e,g=Rn(p,i,e)*p%e,y=Rn(g,a,e)*g%e,v=Rn(y,c,e)*y%e,A=Rn(v,a,e)*g%e,E=Rn(A,n,e)*u%e,C=Rn(E,o,e)*p%e,O=Rn(C,r,e)*l%e,k=Rn(O,Ed,e);if(!bd.eql(bd.sqr(k),t))throw new Error("Cannot find square root");return k}const bd=Nh($w,void 0,void 0,{sqrt:zT}),VT=WT({a:qT,b:BigInt(7),Fp:bd,n:Dp,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{const e=Dp,n=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),r=-HT*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),s=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),i=n,o=BigInt("0x100000000000000000000000000000000"),a=kp(i*t,e),c=kp(-r*t,e);let l=dn(t-a*n-c*s,e),u=dn(-a*r-c*i,e);const d=l>o,h=u>o;if(d&&(l=e-l),h&&(u=e-u),l>o||u>o)throw new Error("splitScalar: Endomorphism failed, k="+t);return{k1neg:d,k1:l,k2neg:h,k2:u}}}},_b.sha256);function KT(t){if(t.length!==130&&t.length!==132)throw new YT({signature:t});const e=BigInt($r(t,0,32)),n=BigInt($r(t,32,64)),r=(()=>{const s=+`0x${t.slice(130)}`;if(!Number.isNaN(s))try{return GT(s)}catch{throw new ZT({value:s})}})();return typeof r>"u"?{r:e,s:n}:{r:e,s:n,yParity:r}}function GT(t){if(t===0||t===27)return 0;if(t===1||t===28)return 1;if(t>=35)return t%2===0?1:0;throw new JT({value:t})}class YT extends tt{constructor({signature:e}){super(`Value \`${e}\` is an invalid signature size.`,{metaMessages:["Expected: 64 bytes or 65 bytes.",`Received ${Ts(Ih(e))} bytes.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidSerializedSizeError"})}}class ZT extends tt{constructor({value:e}){super(`Value \`${e}\` is an invalid y-parity value. Y-parity must be 0 or 1.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidYParityError"})}}class JT extends tt{constructor({value:e}){super(`Value \`${e}\` is an invalid v value. v must be 27, 28 or >=35.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidVError"})}}/*! scure-base - MIT License (c) 2022 Paul Miller (paulmillr.com) */function XT(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function Bw(t,e){return Array.isArray(e)?e.length===0?!0:t?e.every(n=>typeof n=="string"):e.every(n=>Number.isSafeInteger(n)):!1}function jc(t,e){if(typeof e!="string")throw new Error(`${t}: string expected`);return!0}function Th(t){if(!Number.isSafeInteger(t))throw new Error(`invalid integer: ${t}`)}function _d(t){if(!Array.isArray(t))throw new Error("array expected")}function Wc(t,e){if(!Bw(!0,e))throw new Error(`${t}: array of strings expected`)}function QT(t,e){if(!Bw(!1,e))throw new Error(`${t}: array of numbers expected`)}function eO(...t){const e=i=>i,n=(i,o)=>a=>i(o(a)),r=t.map(i=>i.encode).reduceRight(n,e),s=t.map(i=>i.decode).reduce(n,e);return{encode:r,decode:s}}function tO(t){const e=typeof t=="string"?t.split(""):t,n=e.length;Wc("alphabet",e);const r=new Map(e.map((s,i)=>[s,i]));return{encode:s=>(_d(s),s.map(i=>{if(!Number.isSafeInteger(i)||i<0||i>=n)throw new Error(`alphabet.encode: digit index outside alphabet "${i}". Allowed: ${t}`);return e[i]})),decode:s=>(_d(s),s.map(i=>{jc("alphabet.decode",i);const o=r.get(i);if(o===void 0)throw new Error(`Unknown letter: "${i}". Allowed: ${t}`);return o}))}}function nO(t=""){return jc("join",t),{encode:e=>(Wc("join.decode",e),e.join(t)),decode:e=>(jc("join.decode",e),e.split(t))}}function rO(t,e="="){return Th(t),jc("padding",e),{encode(n){for(Wc("padding.encode",n);n.length*t%8;)n.push(e);return n},decode(n){Wc("padding.decode",n);let r=n.length;if(r*t%8)throw new Error("padding: invalid, string should have whole number of bytes");for(;r>0&&n[r-1]===e;r--)if((r-1)*t%8===0)throw new Error("padding: invalid, string has too much padding");return n.slice(0,r)}}}const Fw=(t,e)=>e===0?t:Fw(e,t%e),qc=(t,e)=>t+(e-Fw(t,e)),hu=(()=>{let t=[];for(let e=0;e<40;e++)t.push(2**e);return t})();function Up(t,e,n,r){if(_d(t),e<=0||e>32)throw new Error(`convertRadix2: wrong from=${e}`);if(n<=0||n>32)throw new Error(`convertRadix2: wrong to=${n}`);if(qc(e,n)>32)throw new Error(`convertRadix2: carry overflow from=${e} to=${n} carryBits=${qc(e,n)}`);let s=0,i=0;const o=hu[e],a=hu[n]-1,c=[];for(const l of t){if(Th(l),l>=o)throw new Error(`convertRadix2: invalid data word=${l} from=${e}`);if(s=s<<e|l,i+e>32)throw new Error(`convertRadix2: carry overflow pos=${i} from=${e}`);for(i+=e;i>=n;i-=n)c.push((s>>i-n&a)>>>0);const u=hu[i];if(u===void 0)throw new Error("invalid carry");s&=u-1}if(s=s<<n-i&a,!r&&i>=e)throw new Error("Excess padding");if(!r&&s>0)throw new Error(`Non-zero padding: ${s}`);return r&&i>0&&c.push(s>>>0),c}function sO(t,e=!1){if(Th(t),t<=0||t>32)throw new Error("radix2: bits should be in (0..32]");if(qc(8,t)>32||qc(t,8)>32)throw new Error("radix2: carry overflow");return{encode:n=>{if(!XT(n))throw new Error("radix2.encode input should be Uint8Array");return Up(Array.from(n),8,t,!e)},decode:n=>(QT("radix2.decode",n),Uint8Array.from(Up(n,t,8,e)))}}const iO=eO(sO(5),tO("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"),rO(5),nO(""));function oO(t){return bT(aO(t))}function aO(t){const{payload:e,signature:n}=t,{r,s,yParity:i}=n,a=new VT.Signature(BigInt(r),BigInt(s)).addRecoveryBit(i).recoverPublicKey(Ih(e).substring(2));return dT(a)}function cO(t){if(t.length>=255)throw new TypeError("Alphabet too long");const e=new Uint8Array(256);for(let l=0;l<e.length;l++)e[l]=255;for(let l=0;l<t.length;l++){const u=t.charAt(l),d=u.charCodeAt(0);if(e[d]!==255)throw new TypeError(u+" is ambiguous");e[d]=l}const n=t.length,r=t.charAt(0),s=Math.log(n)/Math.log(256),i=Math.log(256)/Math.log(n);function o(l){if(l instanceof Uint8Array||(ArrayBuffer.isView(l)?l=new Uint8Array(l.buffer,l.byteOffset,l.byteLength):Array.isArray(l)&&(l=Uint8Array.from(l))),!(l instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(l.length===0)return"";let u=0,d=0,h=0;const f=l.length;for(;h!==f&&l[h]===0;)h++,u++;const p=(f-h)*i+1>>>0,g=new Uint8Array(p);for(;h!==f;){let A=l[h],E=0;for(let C=p-1;(A!==0||E<d)&&C!==-1;C--,E++)A+=256*g[C]>>>0,g[C]=A%n>>>0,A=A/n>>>0;if(A!==0)throw new Error("Non-zero carry");d=E,h++}let y=p-d;for(;y!==p&&g[y]===0;)y++;let v=r.repeat(u);for(;y<p;++y)v+=t.charAt(g[y]);return v}function a(l){if(typeof l!="string")throw new TypeError("Expected String");if(l.length===0)return new Uint8Array;let u=0,d=0,h=0;for(;l[u]===r;)d++,u++;const f=(l.length-u)*s+1>>>0,p=new Uint8Array(f);for(;u<l.length;){const A=l.charCodeAt(u);if(A>255)return;let E=e[A];if(E===255)return;let C=0;for(let O=f-1;(E!==0||C<h)&&O!==-1;O--,C++)E+=n*p[O]>>>0,p[O]=E%256>>>0,E=E/256>>>0;if(E!==0)throw new Error("Non-zero carry");h=C,u++}let g=f-h;for(;g!==f&&p[g]===0;)g++;const y=new Uint8Array(d+(f-g));let v=d;for(;g!==f;)y[v++]=p[g++];return y}function c(l){const u=a(l);if(u)return u;throw new Error("Non-base"+n+" character")}return{encode:o,decodeUnsafe:a,decode:c}}var lO="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";const so=cO(lO);function uO(t){const e=t.length;let n=0,r=0;for(;r<e;){let s=t.charCodeAt(r++);if(s&4294967168)if(!(s&4294965248))n+=2;else{if(s>=55296&&s<=56319&&r<e){const i=t.charCodeAt(r);(i&64512)===56320&&(++r,s=((s&1023)<<10)+(i&1023)+65536)}s&4294901760?n+=4:n+=3}else{n++;continue}}return n}function dO(t,e,n){const r=t.length;let s=n,i=0;for(;i<r;){let o=t.charCodeAt(i++);if(o&4294967168)if(!(o&4294965248))e[s++]=o>>6&31|192;else{if(o>=55296&&o<=56319&&i<r){const a=t.charCodeAt(i);(a&64512)===56320&&(++i,o=((o&1023)<<10)+(a&1023)+65536)}o&4294901760?(e[s++]=o>>18&7|240,e[s++]=o>>12&63|128,e[s++]=o>>6&63|128):(e[s++]=o>>12&15|224,e[s++]=o>>6&63|128)}else{e[s++]=o;continue}e[s++]=o&63|128}}const hO=new TextEncoder,fO=50;function pO(t,e,n){hO.encodeInto(t,e.subarray(n))}function gO(t,e,n){t.length>fO?pO(t,e,n):dO(t,e,n)}const mO=4096;function Lw(t,e,n){let r=e;const s=r+n,i=[];let o="";for(;r<s;){const a=t[r++];if(!(a&128))i.push(a);else if((a&224)===192){const c=t[r++]&63;i.push((a&31)<<6|c)}else if((a&240)===224){const c=t[r++]&63,l=t[r++]&63;i.push((a&31)<<12|c<<6|l)}else if((a&248)===240){const c=t[r++]&63,l=t[r++]&63,u=t[r++]&63;let d=(a&7)<<18|c<<12|l<<6|u;d>65535&&(d-=65536,i.push(d>>>10&1023|55296),d=56320|d&1023),i.push(d)}else i.push(a);i.length>=mO&&(o+=String.fromCharCode(...i),i.length=0)}return i.length>0&&(o+=String.fromCharCode(...i)),o}const yO=new TextDecoder,wO=200;function EO(t,e,n){const r=t.subarray(e,e+n);return yO.decode(r)}function bO(t,e,n){return n>wO?EO(t,e,n):Lw(t,e,n)}class Ka{constructor(e,n){this.type=e,this.data=n}}class Cn extends Error{constructor(e){super(e);const n=Object.create(Cn.prototype);Object.setPrototypeOf(this,n),Object.defineProperty(this,"name",{configurable:!0,enumerable:!1,value:Cn.name})}}const fo=4294967295;function _O(t,e,n){const r=n/4294967296,s=n;t.setUint32(e,r),t.setUint32(e+4,s)}function Mw(t,e,n){const r=Math.floor(n/4294967296),s=n;t.setUint32(e,r),t.setUint32(e+4,s)}function jw(t,e){const n=t.getInt32(e),r=t.getUint32(e+4);return n*4294967296+r}function vO(t,e){const n=t.getUint32(e),r=t.getUint32(e+4);return n*4294967296+r}const CO=-1,AO=4294967296-1,SO=17179869184-1;function IO({sec:t,nsec:e}){if(t>=0&&e>=0&&t<=SO)if(e===0&&t<=AO){const n=new Uint8Array(4);return new DataView(n.buffer).setUint32(0,t),n}else{const n=t/4294967296,r=t&4294967295,s=new Uint8Array(8),i=new DataView(s.buffer);return i.setUint32(0,e<<2|n&3),i.setUint32(4,r),s}else{const n=new Uint8Array(12),r=new DataView(n.buffer);return r.setUint32(0,e),Mw(r,4,t),n}}function NO(t){const e=t.getTime(),n=Math.floor(e/1e3),r=(e-n*1e3)*1e6,s=Math.floor(r/1e9);return{sec:n+s,nsec:r-s*1e9}}function TO(t){if(t instanceof Date){const e=NO(t);return IO(e)}else return null}function OO(t){const e=new DataView(t.buffer,t.byteOffset,t.byteLength);switch(t.byteLength){case 4:return{sec:e.getUint32(0),nsec:0};case 8:{const n=e.getUint32(0),r=e.getUint32(4),s=(n&3)*4294967296+r,i=n>>>2;return{sec:s,nsec:i}}case 12:{const n=jw(e,4),r=e.getUint32(0);return{sec:n,nsec:r}}default:throw new Cn(`Unrecognized data size for timestamp (expected 4, 8, or 12): ${t.length}`)}}function RO(t){const e=OO(t);return new Date(e.sec*1e3+e.nsec/1e6)}const xO={type:CO,encode:TO,decode:RO};class Hc{constructor(){this.builtInEncoders=[],this.builtInDecoders=[],this.encoders=[],this.decoders=[],this.register(xO)}register({type:e,encode:n,decode:r}){if(e>=0)this.encoders[e]=n,this.decoders[e]=r;else{const s=-1-e;this.builtInEncoders[s]=n,this.builtInDecoders[s]=r}}tryToEncode(e,n){for(let r=0;r<this.builtInEncoders.length;r++){const s=this.builtInEncoders[r];if(s!=null){const i=s(e,n);if(i!=null){const o=-1-r;return new Ka(o,i)}}}for(let r=0;r<this.encoders.length;r++){const s=this.encoders[r];if(s!=null){const i=s(e,n);if(i!=null){const o=r;return new Ka(o,i)}}}return e instanceof Ka?e:null}decode(e,n,r){const s=n<0?this.builtInDecoders[-1-n]:this.decoders[n];return s?s(e,n,r):new Ka(n,e)}}Hc.defaultCodec=new Hc;function PO(t){return t instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&t instanceof SharedArrayBuffer}function vd(t){return t instanceof Uint8Array?t:ArrayBuffer.isView(t)?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):PO(t)?new Uint8Array(t):Uint8Array.from(t)}const DO=100,kO=2048;let UO=class Ww{constructor(e){this.entered=!1,this.extensionCodec=(e==null?void 0:e.extensionCodec)??Hc.defaultCodec,this.context=e==null?void 0:e.context,this.useBigInt64=(e==null?void 0:e.useBigInt64)??!1,this.maxDepth=(e==null?void 0:e.maxDepth)??DO,this.initialBufferSize=(e==null?void 0:e.initialBufferSize)??kO,this.sortKeys=(e==null?void 0:e.sortKeys)??!1,this.forceFloat32=(e==null?void 0:e.forceFloat32)??!1,this.ignoreUndefined=(e==null?void 0:e.ignoreUndefined)??!1,this.forceIntegerToFloat=(e==null?void 0:e.forceIntegerToFloat)??!1,this.pos=0,this.view=new DataView(new ArrayBuffer(this.initialBufferSize)),this.bytes=new Uint8Array(this.view.buffer)}clone(){return new Ww({extensionCodec:this.extensionCodec,context:this.context,useBigInt64:this.useBigInt64,maxDepth:this.maxDepth,initialBufferSize:this.initialBufferSize,sortKeys:this.sortKeys,forceFloat32:this.forceFloat32,ignoreUndefined:this.ignoreUndefined,forceIntegerToFloat:this.forceIntegerToFloat})}reinitializeState(){this.pos=0}encodeSharedRef(e){if(this.entered)return this.clone().encodeSharedRef(e);try{return this.entered=!0,this.reinitializeState(),this.doEncode(e,1),this.bytes.subarray(0,this.pos)}finally{this.entered=!1}}encode(e){if(this.entered)return this.clone().encode(e);try{return this.entered=!0,this.reinitializeState(),this.doEncode(e,1),this.bytes.slice(0,this.pos)}finally{this.entered=!1}}doEncode(e,n){if(n>this.maxDepth)throw new Error(`Too deep objects in depth ${n}`);e==null?this.encodeNil():typeof e=="boolean"?this.encodeBoolean(e):typeof e=="number"?this.forceIntegerToFloat?this.encodeNumberAsFloat(e):this.encodeNumber(e):typeof e=="string"?this.encodeString(e):this.useBigInt64&&typeof e=="bigint"?this.encodeBigInt64(e):this.encodeObject(e,n)}ensureBufferSizeToWrite(e){const n=this.pos+e;this.view.byteLength<n&&this.resizeBuffer(n*2)}resizeBuffer(e){const n=new ArrayBuffer(e),r=new Uint8Array(n),s=new DataView(n);r.set(this.bytes),this.view=s,this.bytes=r}encodeNil(){this.writeU8(192)}encodeBoolean(e){e===!1?this.writeU8(194):this.writeU8(195)}encodeNumber(e){!this.forceIntegerToFloat&&Number.isSafeInteger(e)?e>=0?e<128?this.writeU8(e):e<256?(this.writeU8(204),this.writeU8(e)):e<65536?(this.writeU8(205),this.writeU16(e)):e<4294967296?(this.writeU8(206),this.writeU32(e)):this.useBigInt64?this.encodeNumberAsFloat(e):(this.writeU8(207),this.writeU64(e)):e>=-32?this.writeU8(224|e+32):e>=-128?(this.writeU8(208),this.writeI8(e)):e>=-32768?(this.writeU8(209),this.writeI16(e)):e>=-2147483648?(this.writeU8(210),this.writeI32(e)):this.useBigInt64?this.encodeNumberAsFloat(e):(this.writeU8(211),this.writeI64(e)):this.encodeNumberAsFloat(e)}encodeNumberAsFloat(e){this.forceFloat32?(this.writeU8(202),this.writeF32(e)):(this.writeU8(203),this.writeF64(e))}encodeBigInt64(e){e>=BigInt(0)?(this.writeU8(207),this.writeBigUint64(e)):(this.writeU8(211),this.writeBigInt64(e))}writeStringHeader(e){if(e<32)this.writeU8(160+e);else if(e<256)this.writeU8(217),this.writeU8(e);else if(e<65536)this.writeU8(218),this.writeU16(e);else if(e<4294967296)this.writeU8(219),this.writeU32(e);else throw new Error(`Too long string: ${e} bytes in UTF-8`)}encodeString(e){const r=uO(e);this.ensureBufferSizeToWrite(5+r),this.writeStringHeader(r),gO(e,this.bytes,this.pos),this.pos+=r}encodeObject(e,n){const r=this.extensionCodec.tryToEncode(e,this.context);if(r!=null)this.encodeExtension(r);else if(Array.isArray(e))this.encodeArray(e,n);else if(ArrayBuffer.isView(e))this.encodeBinary(e);else if(typeof e=="object")this.encodeMap(e,n);else throw new Error(`Unrecognized object: ${Object.prototype.toString.apply(e)}`)}encodeBinary(e){const n=e.byteLength;if(n<256)this.writeU8(196),this.writeU8(n);else if(n<65536)this.writeU8(197),this.writeU16(n);else if(n<4294967296)this.writeU8(198),this.writeU32(n);else throw new Error(`Too large binary: ${n}`);const r=vd(e);this.writeU8a(r)}encodeArray(e,n){const r=e.length;if(r<16)this.writeU8(144+r);else if(r<65536)this.writeU8(220),this.writeU16(r);else if(r<4294967296)this.writeU8(221),this.writeU32(r);else throw new Error(`Too large array: ${r}`);for(const s of e)this.doEncode(s,n+1)}countWithoutUndefined(e,n){let r=0;for(const s of n)e[s]!==void 0&&r++;return r}encodeMap(e,n){const r=Object.keys(e);this.sortKeys&&r.sort();const s=this.ignoreUndefined?this.countWithoutUndefined(e,r):r.length;if(s<16)this.writeU8(128+s);else if(s<65536)this.writeU8(222),this.writeU16(s);else if(s<4294967296)this.writeU8(223),this.writeU32(s);else throw new Error(`Too large map object: ${s}`);for(const i of r){const o=e[i];this.ignoreUndefined&&o===void 0||(this.encodeString(i),this.doEncode(o,n+1))}}encodeExtension(e){if(typeof e.data=="function"){const r=e.data(this.pos+6),s=r.length;if(s>=4294967296)throw new Error(`Too large extension object: ${s}`);this.writeU8(201),this.writeU32(s),this.writeI8(e.type),this.writeU8a(r);return}const n=e.data.length;if(n===1)this.writeU8(212);else if(n===2)this.writeU8(213);else if(n===4)this.writeU8(214);else if(n===8)this.writeU8(215);else if(n===16)this.writeU8(216);else if(n<256)this.writeU8(199),this.writeU8(n);else if(n<65536)this.writeU8(200),this.writeU16(n);else if(n<4294967296)this.writeU8(201),this.writeU32(n);else throw new Error(`Too large extension object: ${n}`);this.writeI8(e.type),this.writeU8a(e.data)}writeU8(e){this.ensureBufferSizeToWrite(1),this.view.setUint8(this.pos,e),this.pos++}writeU8a(e){const n=e.length;this.ensureBufferSizeToWrite(n),this.bytes.set(e,this.pos),this.pos+=n}writeI8(e){this.ensureBufferSizeToWrite(1),this.view.setInt8(this.pos,e),this.pos++}writeU16(e){this.ensureBufferSizeToWrite(2),this.view.setUint16(this.pos,e),this.pos+=2}writeI16(e){this.ensureBufferSizeToWrite(2),this.view.setInt16(this.pos,e),this.pos+=2}writeU32(e){this.ensureBufferSizeToWrite(4),this.view.setUint32(this.pos,e),this.pos+=4}writeI32(e){this.ensureBufferSizeToWrite(4),this.view.setInt32(this.pos,e),this.pos+=4}writeF32(e){this.ensureBufferSizeToWrite(4),this.view.setFloat32(this.pos,e),this.pos+=4}writeF64(e){this.ensureBufferSizeToWrite(8),this.view.setFloat64(this.pos,e),this.pos+=8}writeU64(e){this.ensureBufferSizeToWrite(8),_O(this.view,this.pos,e),this.pos+=8}writeI64(e){this.ensureBufferSizeToWrite(8),Mw(this.view,this.pos,e),this.pos+=8}writeBigUint64(e){this.ensureBufferSizeToWrite(8),this.view.setBigUint64(this.pos,e),this.pos+=8}writeBigInt64(e){this.ensureBufferSizeToWrite(8),this.view.setBigInt64(this.pos,e),this.pos+=8}};function $O(t,e){return new UO(e).encodeSharedRef(t)}function fu(t){return`${t<0?"-":""}0x${Math.abs(t).toString(16).padStart(2,"0")}`}const BO=16,FO=16;class LO{constructor(e=BO,n=FO){this.hit=0,this.miss=0,this.maxKeyLength=e,this.maxLengthPerKey=n,this.caches=[];for(let r=0;r<this.maxKeyLength;r++)this.caches.push([])}canBeCached(e){return e>0&&e<=this.maxKeyLength}find(e,n,r){const s=this.caches[r-1];e:for(const i of s){const o=i.bytes;for(let a=0;a<r;a++)if(o[a]!==e[n+a])continue e;return i.str}return null}store(e,n){const r=this.caches[e.length-1],s={bytes:e,str:n};r.length>=this.maxLengthPerKey?r[Math.random()*r.length|0]=s:r.push(s)}decode(e,n,r){const s=this.find(e,n,r);if(s!=null)return this.hit++,s;this.miss++;const i=Lw(e,n,r),o=Uint8Array.prototype.slice.call(e,n,n+r);return this.store(o,i),i}}const Cd="array",ko="map_key",qw="map_value",MO=t=>{if(typeof t=="string"||typeof t=="number")return t;throw new Cn("The type of key must be string or number but "+typeof t)};class jO{constructor(){this.stack=[],this.stackHeadPosition=-1}get length(){return this.stackHeadPosition+1}top(){return this.stack[this.stackHeadPosition]}pushArrayState(e){const n=this.getUninitializedStateFromPool();n.type=Cd,n.position=0,n.size=e,n.array=new Array(e)}pushMapState(e){const n=this.getUninitializedStateFromPool();n.type=ko,n.readCount=0,n.size=e,n.map={}}getUninitializedStateFromPool(){if(this.stackHeadPosition++,this.stackHeadPosition===this.stack.length){const e={type:void 0,size:0,array:void 0,position:0,readCount:0,map:void 0,key:null};this.stack.push(e)}return this.stack[this.stackHeadPosition]}release(e){if(this.stack[this.stackHeadPosition]!==e)throw new Error("Invalid stack state. Released state is not on top of the stack.");if(e.type===Cd){const r=e;r.size=0,r.array=void 0,r.position=0,r.type=void 0}if(e.type===ko||e.type===qw){const r=e;r.size=0,r.map=void 0,r.readCount=0,r.type=void 0}this.stackHeadPosition--}reset(){this.stack.length=0,this.stackHeadPosition=-1}}const po=-1,Oh=new DataView(new ArrayBuffer(0)),WO=new Uint8Array(Oh.buffer);try{Oh.getInt8(0)}catch(t){if(!(t instanceof RangeError))throw new Error("This module is not supported in the current JavaScript engine because DataView does not throw RangeError on out-of-bounds access")}const $p=new RangeError("Insufficient data"),qO=new LO;let HO=class Hw{constructor(e){this.totalPos=0,this.pos=0,this.view=Oh,this.bytes=WO,this.headByte=po,this.stack=new jO,this.entered=!1,this.extensionCodec=(e==null?void 0:e.extensionCodec)??Hc.defaultCodec,this.context=e==null?void 0:e.context,this.useBigInt64=(e==null?void 0:e.useBigInt64)??!1,this.rawStrings=(e==null?void 0:e.rawStrings)??!1,this.maxStrLength=(e==null?void 0:e.maxStrLength)??fo,this.maxBinLength=(e==null?void 0:e.maxBinLength)??fo,this.maxArrayLength=(e==null?void 0:e.maxArrayLength)??fo,this.maxMapLength=(e==null?void 0:e.maxMapLength)??fo,this.maxExtLength=(e==null?void 0:e.maxExtLength)??fo,this.keyDecoder=(e==null?void 0:e.keyDecoder)!==void 0?e.keyDecoder:qO,this.mapKeyConverter=(e==null?void 0:e.mapKeyConverter)??MO}clone(){return new Hw({extensionCodec:this.extensionCodec,context:this.context,useBigInt64:this.useBigInt64,rawStrings:this.rawStrings,maxStrLength:this.maxStrLength,maxBinLength:this.maxBinLength,maxArrayLength:this.maxArrayLength,maxMapLength:this.maxMapLength,maxExtLength:this.maxExtLength,keyDecoder:this.keyDecoder})}reinitializeState(){this.totalPos=0,this.headByte=po,this.stack.reset()}setBuffer(e){const n=vd(e);this.bytes=n,this.view=new DataView(n.buffer,n.byteOffset,n.byteLength),this.pos=0}appendBuffer(e){if(this.headByte===po&&!this.hasRemaining(1))this.setBuffer(e);else{const n=this.bytes.subarray(this.pos),r=vd(e),s=new Uint8Array(n.length+r.length);s.set(n),s.set(r,n.length),this.setBuffer(s)}}hasRemaining(e){return this.view.byteLength-this.pos>=e}createExtraByteError(e){const{view:n,pos:r}=this;return new RangeError(`Extra ${n.byteLength-r} of ${n.byteLength} byte(s) found at buffer[${e}]`)}decode(e){if(this.entered)return this.clone().decode(e);try{this.entered=!0,this.reinitializeState(),this.setBuffer(e);const n=this.doDecodeSync();if(this.hasRemaining(1))throw this.createExtraByteError(this.pos);return n}finally{this.entered=!1}}*decodeMulti(e){if(this.entered){yield*this.clone().decodeMulti(e);return}try{for(this.entered=!0,this.reinitializeState(),this.setBuffer(e);this.hasRemaining(1);)yield this.doDecodeSync()}finally{this.entered=!1}}async decodeAsync(e){if(this.entered)return this.clone().decodeAsync(e);try{this.entered=!0;let n=!1,r;for await(const a of e){if(n)throw this.entered=!1,this.createExtraByteError(this.totalPos);this.appendBuffer(a);try{r=this.doDecodeSync(),n=!0}catch(c){if(!(c instanceof RangeError))throw c}this.totalPos+=this.pos}if(n){if(this.hasRemaining(1))throw this.createExtraByteError(this.totalPos);return r}const{headByte:s,pos:i,totalPos:o}=this;throw new RangeError(`Insufficient data in parsing ${fu(s)} at ${o} (${i} in the current buffer)`)}finally{this.entered=!1}}decodeArrayStream(e){return this.decodeMultiAsync(e,!0)}decodeStream(e){return this.decodeMultiAsync(e,!1)}async*decodeMultiAsync(e,n){if(this.entered){yield*this.clone().decodeMultiAsync(e,n);return}try{this.entered=!0;let r=n,s=-1;for await(const i of e){if(n&&s===0)throw this.createExtraByteError(this.totalPos);this.appendBuffer(i),r&&(s=this.readArraySize(),r=!1,this.complete());try{for(;yield this.doDecodeSync(),--s!==0;);}catch(o){if(!(o instanceof RangeError))throw o}this.totalPos+=this.pos}}finally{this.entered=!1}}doDecodeSync(){e:for(;;){const e=this.readHeadByte();let n;if(e>=224)n=e-256;else if(e<192)if(e<128)n=e;else if(e<144){const s=e-128;if(s!==0){this.pushMapState(s),this.complete();continue e}else n={}}else if(e<160){const s=e-144;if(s!==0){this.pushArrayState(s),this.complete();continue e}else n=[]}else{const s=e-160;n=this.decodeString(s,0)}else if(e===192)n=null;else if(e===194)n=!1;else if(e===195)n=!0;else if(e===202)n=this.readF32();else if(e===203)n=this.readF64();else if(e===204)n=this.readU8();else if(e===205)n=this.readU16();else if(e===206)n=this.readU32();else if(e===207)this.useBigInt64?n=this.readU64AsBigInt():n=this.readU64();else if(e===208)n=this.readI8();else if(e===209)n=this.readI16();else if(e===210)n=this.readI32();else if(e===211)this.useBigInt64?n=this.readI64AsBigInt():n=this.readI64();else if(e===217){const s=this.lookU8();n=this.decodeString(s,1)}else if(e===218){const s=this.lookU16();n=this.decodeString(s,2)}else if(e===219){const s=this.lookU32();n=this.decodeString(s,4)}else if(e===220){const s=this.readU16();if(s!==0){this.pushArrayState(s),this.complete();continue e}else n=[]}else if(e===221){const s=this.readU32();if(s!==0){this.pushArrayState(s),this.complete();continue e}else n=[]}else if(e===222){const s=this.readU16();if(s!==0){this.pushMapState(s),this.complete();continue e}else n={}}else if(e===223){const s=this.readU32();if(s!==0){this.pushMapState(s),this.complete();continue e}else n={}}else if(e===196){const s=this.lookU8();n=this.decodeBinary(s,1)}else if(e===197){const s=this.lookU16();n=this.decodeBinary(s,2)}else if(e===198){const s=this.lookU32();n=this.decodeBinary(s,4)}else if(e===212)n=this.decodeExtension(1,0);else if(e===213)n=this.decodeExtension(2,0);else if(e===214)n=this.decodeExtension(4,0);else if(e===215)n=this.decodeExtension(8,0);else if(e===216)n=this.decodeExtension(16,0);else if(e===199){const s=this.lookU8();n=this.decodeExtension(s,1)}else if(e===200){const s=this.lookU16();n=this.decodeExtension(s,2)}else if(e===201){const s=this.lookU32();n=this.decodeExtension(s,4)}else throw new Cn(`Unrecognized type byte: ${fu(e)}`);this.complete();const r=this.stack;for(;r.length>0;){const s=r.top();if(s.type===Cd)if(s.array[s.position]=n,s.position++,s.position===s.size)n=s.array,r.release(s);else continue e;else if(s.type===ko){if(n==="__proto__")throw new Cn("The key __proto__ is not allowed");s.key=this.mapKeyConverter(n),s.type=qw;continue e}else if(s.map[s.key]=n,s.readCount++,s.readCount===s.size)n=s.map,r.release(s);else{s.key=null,s.type=ko;continue e}}return n}}readHeadByte(){return this.headByte===po&&(this.headByte=this.readU8()),this.headByte}complete(){this.headByte=po}readArraySize(){const e=this.readHeadByte();switch(e){case 220:return this.readU16();case 221:return this.readU32();default:{if(e<160)return e-144;throw new Cn(`Unrecognized array type byte: ${fu(e)}`)}}}pushMapState(e){if(e>this.maxMapLength)throw new Cn(`Max length exceeded: map length (${e}) > maxMapLengthLength (${this.maxMapLength})`);this.stack.pushMapState(e)}pushArrayState(e){if(e>this.maxArrayLength)throw new Cn(`Max length exceeded: array length (${e}) > maxArrayLength (${this.maxArrayLength})`);this.stack.pushArrayState(e)}decodeString(e,n){return!this.rawStrings||this.stateIsMapKey()?this.decodeUtf8String(e,n):this.decodeBinary(e,n)}decodeUtf8String(e,n){var i;if(e>this.maxStrLength)throw new Cn(`Max length exceeded: UTF-8 byte length (${e}) > maxStrLength (${this.maxStrLength})`);if(this.bytes.byteLength<this.pos+n+e)throw $p;const r=this.pos+n;let s;return this.stateIsMapKey()&&((i=this.keyDecoder)!=null&&i.canBeCached(e))?s=this.keyDecoder.decode(this.bytes,r,e):s=bO(this.bytes,r,e),this.pos+=n+e,s}stateIsMapKey(){return this.stack.length>0?this.stack.top().type===ko:!1}decodeBinary(e,n){if(e>this.maxBinLength)throw new Cn(`Max length exceeded: bin length (${e}) > maxBinLength (${this.maxBinLength})`);if(!this.hasRemaining(e+n))throw $p;const r=this.pos+n,s=this.bytes.subarray(r,r+e);return this.pos+=n+e,s}decodeExtension(e,n){if(e>this.maxExtLength)throw new Cn(`Max length exceeded: ext length (${e}) > maxExtLength (${this.maxExtLength})`);const r=this.view.getInt8(this.pos+n),s=this.decodeBinary(e,n+1);return this.extensionCodec.decode(s,r,this.context)}lookU8(){return this.view.getUint8(this.pos)}lookU16(){return this.view.getUint16(this.pos)}lookU32(){return this.view.getUint32(this.pos)}readU8(){const e=this.view.getUint8(this.pos);return this.pos++,e}readI8(){const e=this.view.getInt8(this.pos);return this.pos++,e}readU16(){const e=this.view.getUint16(this.pos);return this.pos+=2,e}readI16(){const e=this.view.getInt16(this.pos);return this.pos+=2,e}readU32(){const e=this.view.getUint32(this.pos);return this.pos+=4,e}readI32(){const e=this.view.getInt32(this.pos);return this.pos+=4,e}readU64(){const e=vO(this.view,this.pos);return this.pos+=8,e}readI64(){const e=jw(this.view,this.pos);return this.pos+=8,e}readU64AsBigInt(){const e=this.view.getBigUint64(this.pos);return this.pos+=8,e}readI64AsBigInt(){const e=this.view.getBigInt64(this.pos);return this.pos+=8,e}readF32(){const e=this.view.getFloat32(this.pos);return this.pos+=4,e}readF64(){const e=this.view.getFloat64(this.pos);return this.pos+=8,e}};function zO(t,e){return new HO(e).decode(t)}function Rh(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function zw(t=0){return globalThis.Buffer!=null&&globalThis.Buffer.allocUnsafe!=null?Rh(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}function Uo(t,e){e||(e=t.reduce((s,i)=>s+i.length,0));const n=zw(e);let r=0;for(const s of t)n.set(s,r),r+=s.length;return Rh(n)}function VO(t,e){if(t.length>=255)throw new TypeError("Alphabet too long");for(var n=new Uint8Array(256),r=0;r<n.length;r++)n[r]=255;for(var s=0;s<t.length;s++){var i=t.charAt(s),o=i.charCodeAt(0);if(n[o]!==255)throw new TypeError(i+" is ambiguous");n[o]=s}var a=t.length,c=t.charAt(0),l=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function d(p){if(p instanceof Uint8Array||(ArrayBuffer.isView(p)?p=new Uint8Array(p.buffer,p.byteOffset,p.byteLength):Array.isArray(p)&&(p=Uint8Array.from(p))),!(p instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(p.length===0)return"";for(var g=0,y=0,v=0,A=p.length;v!==A&&p[v]===0;)v++,g++;for(var E=(A-v)*u+1>>>0,C=new Uint8Array(E);v!==A;){for(var O=p[v],k=0,$=E-1;(O!==0||k<y)&&$!==-1;$--,k++)O+=256*C[$]>>>0,C[$]=O%a>>>0,O=O/a>>>0;if(O!==0)throw new Error("Non-zero carry");y=k,v++}for(var F=E-y;F!==E&&C[F]===0;)F++;for(var D=c.repeat(g);F<E;++F)D+=t.charAt(C[F]);return D}function h(p){if(typeof p!="string")throw new TypeError("Expected String");if(p.length===0)return new Uint8Array;var g=0;if(p[g]!==" "){for(var y=0,v=0;p[g]===c;)y++,g++;for(var A=(p.length-g)*l+1>>>0,E=new Uint8Array(A);p[g];){var C=n[p.charCodeAt(g)];if(C===255)return;for(var O=0,k=A-1;(C!==0||O<v)&&k!==-1;k--,O++)C+=a*E[k]>>>0,E[k]=C%256>>>0,C=C/256>>>0;if(C!==0)throw new Error("Non-zero carry");v=O,g++}if(p[g]!==" "){for(var $=A-v;$!==A&&E[$]===0;)$++;for(var F=new Uint8Array(y+(A-$)),D=y;$!==A;)F[D++]=E[$++];return F}}}function f(p){var g=h(p);if(g)return g;throw new Error(`Non-${e} character`)}return{encode:d,decodeUnsafe:h,decode:f}}var KO=VO,GO=KO;const YO=t=>{if(t instanceof Uint8Array&&t.constructor.name==="Uint8Array")return t;if(t instanceof ArrayBuffer)return new Uint8Array(t);if(ArrayBuffer.isView(t))return new Uint8Array(t.buffer,t.byteOffset,t.byteLength);throw new Error("Unknown type, must be binary type")},ZO=t=>new TextEncoder().encode(t),JO=t=>new TextDecoder().decode(t);class XO{constructor(e,n,r){this.name=e,this.prefix=n,this.baseEncode=r}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}}class QO{constructor(e,n,r){if(this.name=e,this.prefix=n,n.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=n.codePointAt(0),this.baseDecode=r}decode(e){if(typeof e=="string"){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))}else throw Error("Can only multibase decode strings")}or(e){return Vw(this,e)}}class eR{constructor(e){this.decoders=e}or(e){return Vw(this,e)}decode(e){const n=e[0],r=this.decoders[n];if(r)return r.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}}const Vw=(t,e)=>new eR({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}});class tR{constructor(e,n,r,s){this.name=e,this.prefix=n,this.baseEncode=r,this.baseDecode=s,this.encoder=new XO(e,n,r),this.decoder=new QO(e,n,s)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}}const gl=({name:t,prefix:e,encode:n,decode:r})=>new tR(t,e,n,r),Na=({prefix:t,name:e,alphabet:n})=>{const{encode:r,decode:s}=GO(n,e);return gl({prefix:t,name:e,encode:r,decode:i=>YO(s(i))})},nR=(t,e,n,r)=>{const s={};for(let u=0;u<e.length;++u)s[e[u]]=u;let i=t.length;for(;t[i-1]==="=";)--i;const o=new Uint8Array(i*n/8|0);let a=0,c=0,l=0;for(let u=0;u<i;++u){const d=s[t[u]];if(d===void 0)throw new SyntaxError(`Non-${r} character`);c=c<<n|d,a+=n,a>=8&&(a-=8,o[l++]=255&c>>a)}if(a>=n||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return o},rR=(t,e,n)=>{const r=e[e.length-1]==="=",s=(1<<n)-1;let i="",o=0,a=0;for(let c=0;c<t.length;++c)for(a=a<<8|t[c],o+=8;o>n;)o-=n,i+=e[s&a>>o];if(o&&(i+=e[s&a<<n-o]),r)for(;i.length*n&7;)i+="=";return i},kt=({name:t,prefix:e,bitsPerChar:n,alphabet:r})=>gl({prefix:e,name:t,encode(s){return rR(s,r,n)},decode(s){return nR(s,r,n,t)}}),sR=gl({prefix:"\0",name:"identity",encode:t=>JO(t),decode:t=>ZO(t)}),iR=Object.freeze(Object.defineProperty({__proto__:null,identity:sR},Symbol.toStringTag,{value:"Module"})),oR=kt({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1}),aR=Object.freeze(Object.defineProperty({__proto__:null,base2:oR},Symbol.toStringTag,{value:"Module"})),cR=kt({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3}),lR=Object.freeze(Object.defineProperty({__proto__:null,base8:cR},Symbol.toStringTag,{value:"Module"})),uR=Na({prefix:"9",name:"base10",alphabet:"0123456789"}),dR=Object.freeze(Object.defineProperty({__proto__:null,base10:uR},Symbol.toStringTag,{value:"Module"})),hR=kt({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),fR=kt({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4}),pR=Object.freeze(Object.defineProperty({__proto__:null,base16:hR,base16upper:fR},Symbol.toStringTag,{value:"Module"})),gR=kt({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),mR=kt({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),yR=kt({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),wR=kt({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),ER=kt({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),bR=kt({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),_R=kt({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),vR=kt({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),CR=kt({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5}),AR=Object.freeze(Object.defineProperty({__proto__:null,base32:gR,base32hex:ER,base32hexpad:_R,base32hexpadupper:vR,base32hexupper:bR,base32pad:yR,base32padupper:wR,base32upper:mR,base32z:CR},Symbol.toStringTag,{value:"Module"})),SR=Na({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),IR=Na({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"}),NR=Object.freeze(Object.defineProperty({__proto__:null,base36:SR,base36upper:IR},Symbol.toStringTag,{value:"Module"})),TR=Na({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),OR=Na({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"}),RR=Object.freeze(Object.defineProperty({__proto__:null,base58btc:TR,base58flickr:OR},Symbol.toStringTag,{value:"Module"})),xR=kt({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),PR=kt({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),DR=kt({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),kR=kt({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6}),UR=Object.freeze(Object.defineProperty({__proto__:null,base64:xR,base64pad:PR,base64url:DR,base64urlpad:kR},Symbol.toStringTag,{value:"Module"})),Kw=Array.from("🚀🪐☄🛰🌌🌑🌒🌓🌔🌕🌖🌗🌘🌍🌏🌎🐉☀💻🖥💾💿😂❤😍🤣😊🙏💕😭😘👍😅👏😁🔥🥰💔💖💙😢🤔😆🙄💪😉☺👌🤗💜😔😎😇🌹🤦🎉💞✌✨🤷😱😌🌸🙌😋💗💚😏💛🙂💓🤩😄😀🖤😃💯🙈👇🎶😒🤭❣😜💋👀😪😑💥🙋😞😩😡🤪👊🥳😥🤤👉💃😳✋😚😝😴🌟😬🙃🍀🌷😻😓⭐✅🥺🌈😈🤘💦✔😣🏃💐☹🎊💘😠☝😕🌺🎂🌻😐🖕💝🙊😹🗣💫💀👑🎵🤞😛🔴😤🌼😫⚽🤙☕🏆🤫👈😮🙆🍻🍃🐶💁😲🌿🧡🎁⚡🌞🎈❌✊👋😰🤨😶🤝🚶💰🍓💢🤟🙁🚨💨🤬✈🎀🍺🤓😙💟🌱😖👶🥴▶➡❓💎💸⬇😨🌚🦋😷🕺⚠🙅😟😵👎🤲🤠🤧📌🔵💅🧐🐾🍒😗🤑🌊🤯🐷☎💧😯💆👆🎤🙇🍑❄🌴💣🐸💌📍🥀🤢👅💡💩👐📸👻🤐🤮🎼🥵🚩🍎🍊👼💍📣🥂"),$R=Kw.reduce((t,e,n)=>(t[n]=e,t),[]),BR=Kw.reduce((t,e,n)=>(t[e.codePointAt(0)]=n,t),[]);function FR(t){return t.reduce((e,n)=>(e+=$R[n],e),"")}function LR(t){const e=[];for(const n of t){const r=BR[n.codePointAt(0)];if(r===void 0)throw new Error(`Non-base256emoji character: ${n}`);e.push(r)}return new Uint8Array(e)}const MR=gl({prefix:"🚀",name:"base256emoji",encode:FR,decode:LR}),jR=Object.freeze(Object.defineProperty({__proto__:null,base256emoji:MR},Symbol.toStringTag,{value:"Module"}));new TextEncoder;new TextDecoder;const Bp={...iR,...aR,...lR,...dR,...pR,...AR,...NR,...RR,...UR,...jR};function Gw(t,e,n,r){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:n},decoder:{decode:r}}}const Fp=Gw("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),pu=Gw("ascii","a",t=>{let e="a";for(let n=0;n<t.length;n++)e+=String.fromCharCode(t[n]);return e},t=>{t=t.substring(1);const e=zw(t.length);for(let n=0;n<t.length;n++)e[n]=t.charCodeAt(n);return e}),Yw={utf8:Fp,"utf-8":Fp,hex:Bp.base16,latin1:pu,ascii:pu,binary:pu,...Bp};function jn(t,e="utf8"){const n=Yw[e];if(!n)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?Rh(globalThis.Buffer.from(t,"utf-8")):n.decoder.decode(`${n.prefix}${t}`)}function mn(t,e="utf8"){const n=Yw[e];if(!n)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(t.buffer,t.byteOffset,t.byteLength).toString("utf8"):n.encoder.encode(t).substring(1)}const WR={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"}},qR="Input must be an string, Buffer or Uint8Array";function HR(t){let e;if(t instanceof Uint8Array)e=t;else if(typeof t=="string")e=new TextEncoder().encode(t);else throw new Error(qR);return e}function zR(t){return Array.prototype.map.call(t,function(e){return(e<16?"0":"")+e.toString(16)}).join("")}function Ga(t){return(4294967296+t).toString(16).substring(1)}function VR(t,e,n){let r=`
|
|
20
|
-
`+t+" = ";for(let s=0;s<e.length;s+=2){if(n===32)r+=Ga(e[s]).toUpperCase(),r+=" ",r+=Ga(e[s+1]).toUpperCase();else if(n===64)r+=Ga(e[s+1]).toUpperCase(),r+=Ga(e[s]).toUpperCase();else throw new Error("Invalid size "+n);s%6===4?r+=`
|
|
21
|
-
`+new Array(t.length+4).join(" "):s<e.length-2&&(r+=" ")}console.log(r)}function KR(t,e,n){let r=new Date().getTime();const s=new Uint8Array(e);for(let o=0;o<e;o++)s[o]=o%256;const i=new Date().getTime();console.log("Generated random input in "+(i-r)+"ms"),r=i;for(let o=0;o<n;o++){const a=t(s),c=new Date().getTime(),l=c-r;r=c,console.log("Hashed in "+l+"ms: "+a.substring(0,20)+"..."),console.log(Math.round(e/(1<<20)/(l/1e3)*100)/100+" MB PER SECOND")}}var Zw={normalizeInput:HR,toHex:zR,debugPrint:VR,testSpeed:KR};const gc=Zw;function Ya(t,e,n){const r=t[e]+t[n];let s=t[e+1]+t[n+1];r>=4294967296&&s++,t[e]=r,t[e+1]=s}function Lp(t,e,n,r){let s=t[e]+n;n<0&&(s+=4294967296);let i=t[e+1]+r;s>=4294967296&&i++,t[e]=s,t[e+1]=i}function Jw(t,e){return t[e]^t[e+1]<<8^t[e+2]<<16^t[e+3]<<24}function es(t,e,n,r,s,i){const o=To[s],a=To[s+1],c=To[i],l=To[i+1];Ya(ve,t,e),Lp(ve,t,o,a);let u=ve[r]^ve[t],d=ve[r+1]^ve[t+1];ve[r]=d,ve[r+1]=u,Ya(ve,n,r),u=ve[e]^ve[n],d=ve[e+1]^ve[n+1],ve[e]=u>>>24^d<<8,ve[e+1]=d>>>24^u<<8,Ya(ve,t,e),Lp(ve,t,c,l),u=ve[r]^ve[t],d=ve[r+1]^ve[t+1],ve[r]=u>>>16^d<<16,ve[r+1]=d>>>16^u<<16,Ya(ve,n,r),u=ve[e]^ve[n],d=ve[e+1]^ve[n+1],ve[e]=d>>>31^u<<1,ve[e+1]=u>>>31^d<<1}const Xw=new Uint32Array([4089235720,1779033703,2227873595,3144134277,4271175723,1013904242,1595750129,2773480762,2917565137,1359893119,725511199,2600822924,4215389547,528734635,327033209,1541459225]),GR=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9,12,5,1,15,14,13,4,10,0,7,6,3,9,2,8,11,13,11,7,14,12,1,3,9,5,0,15,4,8,6,2,10,6,15,14,9,11,3,0,8,12,2,13,7,1,4,10,5,10,2,8,4,7,6,1,5,15,11,9,14,3,12,13,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3],$t=new Uint8Array(GR.map(function(t){return t*2})),ve=new Uint32Array(32),To=new Uint32Array(32);function Qw(t,e){let n=0;for(n=0;n<16;n++)ve[n]=t.h[n],ve[n+16]=Xw[n];for(ve[24]=ve[24]^t.t,ve[25]=ve[25]^t.t/4294967296,e&&(ve[28]=~ve[28],ve[29]=~ve[29]),n=0;n<32;n++)To[n]=Jw(t.b,4*n);for(n=0;n<12;n++)es(0,8,16,24,$t[n*16+0],$t[n*16+1]),es(2,10,18,26,$t[n*16+2],$t[n*16+3]),es(4,12,20,28,$t[n*16+4],$t[n*16+5]),es(6,14,22,30,$t[n*16+6],$t[n*16+7]),es(0,10,20,30,$t[n*16+8],$t[n*16+9]),es(2,12,22,24,$t[n*16+10],$t[n*16+11]),es(4,14,16,26,$t[n*16+12],$t[n*16+13]),es(6,8,18,28,$t[n*16+14],$t[n*16+15]);for(n=0;n<16;n++)t.h[n]=t.h[n]^ve[n]^ve[n+16]}const ts=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);function e0(t,e,n,r){if(t===0||t>64)throw new Error("Illegal output length, expected 0 < length <= 64");if(e&&e.length>64)throw new Error("Illegal key, expected Uint8Array with 0 < length <= 64");if(n&&n.length!==16)throw new Error("Illegal salt, expected Uint8Array with length is 16");if(r&&r.length!==16)throw new Error("Illegal personal, expected Uint8Array with length is 16");const s={b:new Uint8Array(128),h:new Uint32Array(16),t:0,c:0,outlen:t};ts.fill(0),ts[0]=t,e&&(ts[1]=e.length),ts[2]=1,ts[3]=1,n&&ts.set(n,32),r&&ts.set(r,48);for(let i=0;i<16;i++)s.h[i]=Xw[i]^Jw(ts,i*4);return e&&(xh(s,e),s.c=128),s}function xh(t,e){for(let n=0;n<e.length;n++)t.c===128&&(t.t+=t.c,Qw(t,!1),t.c=0),t.b[t.c++]=e[n]}function t0(t){for(t.t+=t.c;t.c<128;)t.b[t.c++]=0;Qw(t,!0);const e=new Uint8Array(t.outlen);for(let n=0;n<t.outlen;n++)e[n]=t.h[n>>2]>>8*(n&3);return e}function n0(t,e,n,r,s){n=n||64,t=gc.normalizeInput(t),r&&(r=gc.normalizeInput(r)),s&&(s=gc.normalizeInput(s));const i=e0(n,e,r,s);return xh(i,t),t0(i)}function YR(t,e,n,r,s){const i=n0(t,e,n,r,s);return gc.toHex(i)}var ZR={blake2b:n0,blake2bHex:YR,blake2bInit:e0,blake2bUpdate:xh,blake2bFinal:t0};const r0=Zw;function JR(t,e){return t[e]^t[e+1]<<8^t[e+2]<<16^t[e+3]<<24}function ns(t,e,n,r,s,i){Me[t]=Me[t]+Me[e]+s,Me[r]=Za(Me[r]^Me[t],16),Me[n]=Me[n]+Me[r],Me[e]=Za(Me[e]^Me[n],12),Me[t]=Me[t]+Me[e]+i,Me[r]=Za(Me[r]^Me[t],8),Me[n]=Me[n]+Me[r],Me[e]=Za(Me[e]^Me[n],7)}function Za(t,e){return t>>>e^t<<32-e}const s0=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Bt=new Uint8Array([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9,12,5,1,15,14,13,4,10,0,7,6,3,9,2,8,11,13,11,7,14,12,1,3,9,5,0,15,4,8,6,2,10,6,15,14,9,11,3,0,8,12,2,13,7,1,4,10,5,10,2,8,4,7,6,1,5,15,11,9,14,3,12,13,0]),Me=new Uint32Array(16),It=new Uint32Array(16);function i0(t,e){let n=0;for(n=0;n<8;n++)Me[n]=t.h[n],Me[n+8]=s0[n];for(Me[12]^=t.t,Me[13]^=t.t/4294967296,e&&(Me[14]=~Me[14]),n=0;n<16;n++)It[n]=JR(t.b,4*n);for(n=0;n<10;n++)ns(0,4,8,12,It[Bt[n*16+0]],It[Bt[n*16+1]]),ns(1,5,9,13,It[Bt[n*16+2]],It[Bt[n*16+3]]),ns(2,6,10,14,It[Bt[n*16+4]],It[Bt[n*16+5]]),ns(3,7,11,15,It[Bt[n*16+6]],It[Bt[n*16+7]]),ns(0,5,10,15,It[Bt[n*16+8]],It[Bt[n*16+9]]),ns(1,6,11,12,It[Bt[n*16+10]],It[Bt[n*16+11]]),ns(2,7,8,13,It[Bt[n*16+12]],It[Bt[n*16+13]]),ns(3,4,9,14,It[Bt[n*16+14]],It[Bt[n*16+15]]);for(n=0;n<8;n++)t.h[n]^=Me[n]^Me[n+8]}function o0(t,e){if(!(t>0&&t<=32))throw new Error("Incorrect output length, should be in [1, 32]");const n=e?e.length:0;if(e&&!(n>0&&n<=32))throw new Error("Incorrect key length, should be in [1, 32]");const r={h:new Uint32Array(s0),b:new Uint8Array(64),c:0,t:0,outlen:t};return r.h[0]^=16842752^n<<8^t,n>0&&(Ph(r,e),r.c=64),r}function Ph(t,e){for(let n=0;n<e.length;n++)t.c===64&&(t.t+=t.c,i0(t,!1),t.c=0),t.b[t.c++]=e[n]}function a0(t){for(t.t+=t.c;t.c<64;)t.b[t.c++]=0;i0(t,!0);const e=new Uint8Array(t.outlen);for(let n=0;n<t.outlen;n++)e[n]=t.h[n>>2]>>8*(n&3)&255;return e}function c0(t,e,n){n=n||32,t=r0.normalizeInput(t);const r=o0(n,e);return Ph(r,t),a0(r)}function XR(t,e,n){const r=c0(t,e,n);return r0.toHex(r)}var QR={blake2s:c0,blake2sHex:XR,blake2sInit:o0,blake2sUpdate:Ph,blake2sFinal:a0};const go=ZR,mo=QR;var ex={blake2b:go.blake2b,blake2bHex:go.blake2bHex,blake2bInit:go.blake2bInit,blake2bUpdate:go.blake2bUpdate,blake2bFinal:go.blake2bFinal,blake2s:mo.blake2s,blake2sHex:mo.blake2sHex,blake2sInit:mo.blake2sInit,blake2sUpdate:mo.blake2sUpdate,blake2sFinal:mo.blake2sFinal};const tx=":";function zr(t){const[e,n]=t.split(tx);return{namespace:e,reference:n}}function l0(t,e){return t.includes(":")?[t]:e.chains||[]}var nx=Object.defineProperty,rx=Object.defineProperties,sx=Object.getOwnPropertyDescriptors,Mp=Object.getOwnPropertySymbols,ix=Object.prototype.hasOwnProperty,ox=Object.prototype.propertyIsEnumerable,Ad=(t,e,n)=>e in t?nx(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,jp=(t,e)=>{for(var n in e||(e={}))ix.call(e,n)&&Ad(t,n,e[n]);if(Mp)for(var n of Mp(e))ox.call(e,n)&&Ad(t,n,e[n]);return t},ax=(t,e)=>rx(t,sx(e)),Wp=(t,e,n)=>Ad(t,typeof e!="symbol"?e+"":e,n);const cx="ReactNative",On={reactNative:"react-native",node:"node",browser:"browser",unknown:"unknown"},lx="js";function zc(){return typeof Vt<"u"&&typeof Vt.versions<"u"&&typeof Vt.versions.node<"u"}function Rs(){return!ui()&&!!bh()&&navigator.product===cx}function ux(){return Rs()&&typeof we<"u"&&typeof(we==null?void 0:we.Platform)<"u"&&(we==null?void 0:we.Platform.OS)==="android"}function dx(){return Rs()&&typeof we<"u"&&typeof(we==null?void 0:we.Platform)<"u"&&(we==null?void 0:we.Platform.OS)==="ios"}function io(){return!zc()&&!!bh()&&!!ui()}function Ta(){return Rs()?On.reactNative:zc()?On.node:io()?On.browser:On.unknown}function qp(){var t;try{return Rs()&&typeof we<"u"&&typeof(we==null?void 0:we.Application)<"u"?(t=we.Application)==null?void 0:t.applicationId:void 0}catch{return}}function hx(t,e){const n=new URLSearchParams(t);return Object.entries(e).sort(([r],[s])=>r.localeCompare(s)).forEach(([r,s])=>{s!=null&&n.set(r,String(s))}),n.toString()}function fx(t){var e,n;const r=u0();try{return t!=null&&t.url&&r.url&&new URL(t.url).host!==new URL(r.url).host&&(console.warn(`The configured WalletConnect 'metadata.url':${t.url} differs from the actual page url:${r.url}. This is probably unintended and can lead to issues.`),t.url=r.url),(e=t==null?void 0:t.icons)!=null&&e.length&&t.icons.length>0&&(t.icons=t.icons.filter(s=>s!=="")),ax(jp(jp({},r),t),{url:(t==null?void 0:t.url)||r.url,name:(t==null?void 0:t.name)||r.name,description:(t==null?void 0:t.description)||r.description,icons:(n=t==null?void 0:t.icons)!=null&&n.length&&t.icons.length>0?t.icons:r.icons})}catch(s){return console.warn("Error populating app metadata",s),t||r}}function u0(){return uw()||{name:"",description:"",url:"",icons:[""]}}function px(){if(Ta()===On.reactNative&&typeof we<"u"&&typeof(we==null?void 0:we.Platform)<"u"){const{OS:n,Version:r}=we.Platform;return[n,r].join("-")}const t=w2();if(t===null)return"unknown";const e=t.os?t.os.replace(" ","").toLowerCase():"unknown";return t.type==="browser"?[e,t.name,t.version].join("-"):[e,t.version].join("-")}function gx(){var t;const e=Ta();return e===On.browser?[e,((t=lw())==null?void 0:t.host)||"unknown"].join(":"):e}function d0(t,e,n){const r=px(),s=gx();return[[t,e].join("-"),[lx,n].join("-"),r,s].join("/")}function mx({protocol:t,version:e,relayUrl:n,sdkVersion:r,auth:s,projectId:i,useOnCloseEvent:o,bundleId:a,packageName:c}){const l=n.split("?"),u=d0(t,e,r),d={auth:s,ua:u,projectId:i,useOnCloseEvent:o||void 0,packageName:c||void 0,bundleId:a||void 0},h=hx(l[1]||"",d);return l[0]+"?"+h}function Gs(t,e){return t.filter(n=>e.includes(n)).length===t.length}function Sd(t){return Object.fromEntries(t.entries())}function Id(t){return new Map(Object.entries(t))}function Ws(t=G.FIVE_MINUTES,e){const n=G.toMiliseconds(t||G.FIVE_MINUTES);let r,s,i,o;return{resolve:a=>{i&&r&&(clearTimeout(i),r(a),o=Promise.resolve(a))},reject:a=>{i&&s&&(clearTimeout(i),s(a))},done:()=>new Promise((a,c)=>{if(o)return a(o);i=setTimeout(()=>{const l=new Error(e);o=Promise.reject(l),c(l)},n),r=a,s=c})}}function mr(t,e,n){return new Promise(async(r,s)=>{const i=setTimeout(()=>s(new Error(n)),e);try{const o=await t;r(o)}catch(o){s(o)}clearTimeout(i)})}function h0(t,e){if(typeof e=="string"&&e.startsWith(`${t}:`))return e;if(t.toLowerCase()==="topic"){if(typeof e!="string")throw new Error('Value must be "string" for expirer target type: topic');return`topic:${e}`}else if(t.toLowerCase()==="id"){if(typeof e!="number")throw new Error('Value must be "number" for expirer target type: id');return`id:${e}`}throw new Error(`Unknown expirer target type: ${t}`)}function yx(t){return h0("topic",t)}function wx(t){return h0("id",t)}function f0(t){const[e,n]=t.split(":"),r={id:void 0,topic:void 0};if(e==="topic"&&typeof n=="string")r.topic=n;else if(e==="id"&&Number.isInteger(Number(n)))r.id=Number(n);else throw new Error(`Invalid target, expected id:number or topic:string, got ${e}:${n}`);return r}function lt(t,e){return G.fromMiliseconds((e||Date.now())+G.toMiliseconds(t))}function fr(t){return Date.now()>=G.toMiliseconds(t)}function He(t,e){return`${t}${e?`:${e}`:""}`}function Er(t=[],e=[]){return[...new Set([...t,...e])]}async function Ex({id:t,topic:e,wcDeepLink:n}){var r;try{if(!n)return;const s=typeof n=="string"?JSON.parse(n):n,i=s==null?void 0:s.href;if(typeof i!="string")return;const o=bx(i,t,e),a=Ta();if(a===On.browser){if(!((r=ui())!=null&&r.hasFocus())){console.warn("Document does not have focus, skipping deeplink.");return}_x(o)}else a===On.reactNative&&typeof(we==null?void 0:we.Linking)<"u"&&await we.Linking.openURL(o)}catch(s){console.error(s)}}function bx(t,e,n){const r=`requestId=${e}&sessionTopic=${n}`;t.endsWith("/")&&(t=t.slice(0,-1));let s=`${t}`;if(t.startsWith("https://t.me")){const i=t.includes("?")?"&startapp=":"?startapp=";s=`${s}${i}${Sx(r,!0)}`}else s=`${s}/wc?${r}`;return s}function _x(t){let e="_self";Ax()?e="_top":(Cx()||t.startsWith("https://")||t.startsWith("http://"))&&(e="_blank"),window.open(t,e,"noreferrer noopener")}async function vx(t,e){let n="";try{if(io()&&(n=localStorage.getItem(e),n))return n;n=await t.getItem(e)}catch(r){console.error(r)}return n}function Hp(t,e){if(!t.includes(e))return null;const n=t.split(/([&,?,=])/),r=n.indexOf(e);return n[r+2]}function zp(){return typeof crypto<"u"&&crypto!=null&&crypto.randomUUID?crypto.randomUUID():"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/gu,t=>{const e=Math.random()*16|0;return(t==="x"?e:e&3|8).toString(16)})}function Dh(){return typeof Vt<"u"&&{}.IS_VITEST==="true"}function Cx(){return typeof window<"u"&&(!!window.TelegramWebviewProxy||!!window.Telegram||!!window.TelegramWebviewProxyProto)}function Ax(){try{return window.self!==window.top}catch{return!1}}function Sx(t,e=!1){const n=Be.from(t).toString("base64");return e?n.replace(/[=]/g,""):n}function p0(t){return Be.from(t,"base64").toString("utf-8")}function Ix(t){return new Promise(e=>setTimeout(e,t))}let Nx=class{constructor({limit:e}){Wp(this,"limit"),Wp(this,"set"),this.limit=e,this.set=new Set}add(e){if(!this.set.has(e)){if(this.set.size>=this.limit){const n=this.set.values().next().value;n&&this.set.delete(n)}this.set.add(e)}}has(e){return this.set.has(e)}};const Ja=BigInt(2**32-1),Vp=BigInt(32);function g0(t,e=!1){return e?{h:Number(t&Ja),l:Number(t>>Vp&Ja)}:{h:Number(t>>Vp&Ja)|0,l:Number(t&Ja)|0}}function m0(t,e=!1){const n=t.length;let r=new Uint32Array(n),s=new Uint32Array(n);for(let i=0;i<n;i++){const{h:o,l:a}=g0(t[i],e);[r[i],s[i]]=[o,a]}return[r,s]}const Kp=(t,e,n)=>t>>>n,Gp=(t,e,n)=>t<<32-n|e>>>n,ls=(t,e,n)=>t>>>n|e<<32-n,us=(t,e,n)=>t<<32-n|e>>>n,Oo=(t,e,n)=>t<<64-n|e>>>n-32,Ro=(t,e,n)=>t>>>n-32|e<<64-n,Tx=(t,e)=>e,Ox=(t,e)=>t,Rx=(t,e,n)=>t<<n|e>>>32-n,xx=(t,e,n)=>e<<n|t>>>32-n,Px=(t,e,n)=>e<<n-32|t>>>64-n,Dx=(t,e,n)=>t<<n-32|e>>>64-n;function Yn(t,e,n,r){const s=(e>>>0)+(r>>>0);return{h:t+n+(s/2**32|0)|0,l:s|0}}const kh=(t,e,n)=>(t>>>0)+(e>>>0)+(n>>>0),Uh=(t,e,n,r)=>e+n+r+(t/2**32|0)|0,kx=(t,e,n,r)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0),Ux=(t,e,n,r,s)=>e+n+r+s+(t/2**32|0)|0,$x=(t,e,n,r,s)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0)+(s>>>0),Bx=(t,e,n,r,s,i)=>e+n+r+s+i+(t/2**32|0)|0,Oi=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function ml(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function Yr(t){if(!Number.isSafeInteger(t)||t<0)throw new Error("positive integer expected, got "+t)}function rr(t,...e){if(!ml(t))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(t.length))throw new Error("Uint8Array expected of length "+e+", got length="+t.length)}function yl(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.createHasher");Yr(t.outputLen),Yr(t.blockLen)}function Os(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function $h(t,e){rr(t);const n=e.outputLen;if(t.length<n)throw new Error("digestInto() expects output buffer of length at least "+n)}function ua(t){return new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4))}function Wn(...t){for(let e=0;e<t.length;e++)t[e].fill(0)}function gu(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function ar(t,e){return t<<32-e|t>>>e}const y0=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function w0(t){return t<<24&4278190080|t<<8&16711680|t>>>8&65280|t>>>24&255}const Dr=y0?t=>t:t=>w0(t);function Fx(t){for(let e=0;e<t.length;e++)t[e]=w0(t[e]);return t}const ds=y0?t=>t:Fx,E0=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",Lx=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function zi(t){if(rr(t),E0)return t.toHex();let e="";for(let n=0;n<t.length;n++)e+=Lx[t[n]];return e}const Rr={_0:48,_9:57,A:65,F:70,a:97,f:102};function Yp(t){if(t>=Rr._0&&t<=Rr._9)return t-Rr._0;if(t>=Rr.A&&t<=Rr.F)return t-(Rr.A-10);if(t>=Rr.a&&t<=Rr.f)return t-(Rr.a-10)}function Vc(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);if(E0)return Uint8Array.fromHex(t);const e=t.length,n=e/2;if(e%2)throw new Error("hex string expected, got unpadded hex of length "+e);const r=new Uint8Array(n);for(let s=0,i=0;s<n;s++,i+=2){const o=Yp(t.charCodeAt(i)),a=Yp(t.charCodeAt(i+1));if(o===void 0||a===void 0){const c=t[i]+t[i+1];throw new Error('hex string expected, got non-hex character "'+c+'" at index '+i)}r[s]=o*16+a}return r}function b0(t){if(typeof t!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(t))}function tr(t){return typeof t=="string"&&(t=b0(t)),rr(t),t}function ps(...t){let e=0;for(let r=0;r<t.length;r++){const s=t[r];rr(s),e+=s.length}const n=new Uint8Array(e);for(let r=0,s=0;r<t.length;r++){const i=t[r];n.set(i,s),s+=i.length}return n}let wl=class{};function Oa(t){const e=r=>t().update(tr(r)).digest(),n=t();return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=()=>t(),e}function Mx(t){const e=(r,s)=>t(s).update(tr(r)).digest(),n=t({});return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=r=>t(r),e}function _i(t=32){if(Oi&&typeof Oi.getRandomValues=="function")return Oi.getRandomValues(new Uint8Array(t));if(Oi&&typeof Oi.randomBytes=="function")return Uint8Array.from(Oi.randomBytes(t));throw new Error("crypto.getRandomValues must be defined")}const jx=BigInt(0),yo=BigInt(1),Wx=BigInt(2),qx=BigInt(7),Hx=BigInt(256),zx=BigInt(113),_0=[],v0=[],C0=[];for(let t=0,e=yo,n=1,r=0;t<24;t++){[n,r]=[r,(2*n+3*r)%5],_0.push(2*(5*r+n)),v0.push((t+1)*(t+2)/2%64);let s=jx;for(let i=0;i<7;i++)e=(e<<yo^(e>>qx)*zx)%Hx,e&Wx&&(s^=yo<<(yo<<BigInt(i))-yo);C0.push(s)}const A0=m0(C0,!0),Vx=A0[0],Kx=A0[1],Zp=(t,e,n)=>n>32?Px(t,e,n):Rx(t,e,n),Jp=(t,e,n)=>n>32?Dx(t,e,n):xx(t,e,n);function Gx(t,e=24){const n=new Uint32Array(10);for(let r=24-e;r<24;r++){for(let o=0;o<10;o++)n[o]=t[o]^t[o+10]^t[o+20]^t[o+30]^t[o+40];for(let o=0;o<10;o+=2){const a=(o+8)%10,c=(o+2)%10,l=n[c],u=n[c+1],d=Zp(l,u,1)^n[a],h=Jp(l,u,1)^n[a+1];for(let f=0;f<50;f+=10)t[o+f]^=d,t[o+f+1]^=h}let s=t[2],i=t[3];for(let o=0;o<24;o++){const a=v0[o],c=Zp(s,i,a),l=Jp(s,i,a),u=_0[o];s=t[u],i=t[u+1],t[u]=c,t[u+1]=l}for(let o=0;o<50;o+=10){for(let a=0;a<10;a++)n[a]=t[o+a];for(let a=0;a<10;a++)t[o+a]^=~n[(a+2)%10]&n[(a+4)%10]}t[0]^=Vx[r],t[1]^=Kx[r]}Wn(n)}let Yx=class S0 extends wl{constructor(e,n,r,s=!1,i=24){if(super(),this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,this.enableXOF=!1,this.blockLen=e,this.suffix=n,this.outputLen=r,this.enableXOF=s,this.rounds=i,Yr(r),!(0<e&&e<200))throw new Error("only keccak-f1600 function is supported");this.state=new Uint8Array(200),this.state32=ua(this.state)}clone(){return this._cloneInto()}keccak(){ds(this.state32),Gx(this.state32,this.rounds),ds(this.state32),this.posOut=0,this.pos=0}update(e){Os(this),e=tr(e),rr(e);const{blockLen:n,state:r}=this,s=e.length;for(let i=0;i<s;){const o=Math.min(n-this.pos,s-i);for(let a=0;a<o;a++)r[this.pos++]^=e[i++];this.pos===n&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;const{state:e,suffix:n,pos:r,blockLen:s}=this;e[r]^=n,n&128&&r===s-1&&this.keccak(),e[s-1]^=128,this.keccak()}writeInto(e){Os(this,!1),rr(e),this.finish();const n=this.state,{blockLen:r}=this;for(let s=0,i=e.length;s<i;){this.posOut>=r&&this.keccak();const o=Math.min(r-this.posOut,i-s);e.set(n.subarray(this.posOut,this.posOut+o),s),this.posOut+=o,s+=o}return e}xofInto(e){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return Yr(e),this.xofInto(new Uint8Array(e))}digestInto(e){if($h(e,this),this.finished)throw new Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,Wn(this.state)}_cloneInto(e){const{blockLen:n,suffix:r,outputLen:s,rounds:i,enableXOF:o}=this;return e||(e=new S0(n,r,s,o,i)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=i,e.suffix=r,e.outputLen=s,e.enableXOF=o,e.destroyed=this.destroyed,e}};const Zx=(t,e,n)=>Oa(()=>new Yx(e,t,n)),Jx=Zx(1,136,256/8);function Xx(t,e,n,r){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,n,r);const s=BigInt(32),i=BigInt(4294967295),o=Number(n>>s&i),a=Number(n&i),c=r?4:0,l=r?0:4;t.setUint32(e+c,o,r),t.setUint32(e+l,a,r)}function Qx(t,e,n){return t&e^~t&n}function e3(t,e,n){return t&e^t&n^e&n}let I0=class extends wl{constructor(e,n,r,s){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=n,this.padOffset=r,this.isLE=s,this.buffer=new Uint8Array(e),this.view=gu(this.buffer)}update(e){Os(this),e=tr(e),rr(e);const{view:n,buffer:r,blockLen:s}=this,i=e.length;for(let o=0;o<i;){const a=Math.min(s-this.pos,i-o);if(a===s){const c=gu(e);for(;s<=i-o;o+=s)this.process(c,o);continue}r.set(e.subarray(o,o+a),this.pos),this.pos+=a,o+=a,this.pos===s&&(this.process(n,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Os(this),$h(e,this),this.finished=!0;const{buffer:n,view:r,blockLen:s,isLE:i}=this;let{pos:o}=this;n[o++]=128,Wn(this.buffer.subarray(o)),this.padOffset>s-o&&(this.process(r,0),o=0);for(let d=o;d<s;d++)n[d]=0;Xx(r,s-8,BigInt(this.length*8),i),this.process(r,0);const a=gu(e),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const l=c/4,u=this.get();if(l>u.length)throw new Error("_sha2: outputLen bigger than state");for(let d=0;d<l;d++)a.setUint32(4*d,u[d],i)}digest(){const{buffer:e,outputLen:n}=this;this.digestInto(e);const r=e.slice(0,n);return this.destroy(),r}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());const{blockLen:n,buffer:r,length:s,finished:i,destroyed:o,pos:a}=this;return e.destroyed=o,e.finished=i,e.length=s,e.pos=a,s%n&&e.buffer.set(r),e}clone(){return this._cloneInto()}};const rs=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Ft=Uint32Array.from([3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]),Lt=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209]),t3=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),ss=new Uint32Array(64);class n3 extends I0{constructor(e=32){super(64,e,8,!1),this.A=rs[0]|0,this.B=rs[1]|0,this.C=rs[2]|0,this.D=rs[3]|0,this.E=rs[4]|0,this.F=rs[5]|0,this.G=rs[6]|0,this.H=rs[7]|0}get(){const{A:e,B:n,C:r,D:s,E:i,F:o,G:a,H:c}=this;return[e,n,r,s,i,o,a,c]}set(e,n,r,s,i,o,a,c){this.A=e|0,this.B=n|0,this.C=r|0,this.D=s|0,this.E=i|0,this.F=o|0,this.G=a|0,this.H=c|0}process(e,n){for(let d=0;d<16;d++,n+=4)ss[d]=e.getUint32(n,!1);for(let d=16;d<64;d++){const h=ss[d-15],f=ss[d-2],p=ar(h,7)^ar(h,18)^h>>>3,g=ar(f,17)^ar(f,19)^f>>>10;ss[d]=g+ss[d-7]+p+ss[d-16]|0}let{A:r,B:s,C:i,D:o,E:a,F:c,G:l,H:u}=this;for(let d=0;d<64;d++){const h=ar(a,6)^ar(a,11)^ar(a,25),f=u+h+Qx(a,c,l)+t3[d]+ss[d]|0,p=(ar(r,2)^ar(r,13)^ar(r,22))+e3(r,s,i)|0;u=l,l=c,c=a,a=o+f|0,o=i,i=s,s=r,r=f+p|0}r=r+this.A|0,s=s+this.B|0,i=i+this.C|0,o=o+this.D|0,a=a+this.E|0,c=c+this.F|0,l=l+this.G|0,u=u+this.H|0,this.set(r,s,i,o,a,c,l,u)}roundClean(){Wn(ss)}destroy(){this.set(0,0,0,0,0,0,0,0),Wn(this.buffer)}}const N0=m0(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(t=>BigInt(t))),r3=N0[0],s3=N0[1],is=new Uint32Array(80),os=new Uint32Array(80);let Bh=class extends I0{constructor(e=64){super(128,e,16,!1),this.Ah=Lt[0]|0,this.Al=Lt[1]|0,this.Bh=Lt[2]|0,this.Bl=Lt[3]|0,this.Ch=Lt[4]|0,this.Cl=Lt[5]|0,this.Dh=Lt[6]|0,this.Dl=Lt[7]|0,this.Eh=Lt[8]|0,this.El=Lt[9]|0,this.Fh=Lt[10]|0,this.Fl=Lt[11]|0,this.Gh=Lt[12]|0,this.Gl=Lt[13]|0,this.Hh=Lt[14]|0,this.Hl=Lt[15]|0}get(){const{Ah:e,Al:n,Bh:r,Bl:s,Ch:i,Cl:o,Dh:a,Dl:c,Eh:l,El:u,Fh:d,Fl:h,Gh:f,Gl:p,Hh:g,Hl:y}=this;return[e,n,r,s,i,o,a,c,l,u,d,h,f,p,g,y]}set(e,n,r,s,i,o,a,c,l,u,d,h,f,p,g,y){this.Ah=e|0,this.Al=n|0,this.Bh=r|0,this.Bl=s|0,this.Ch=i|0,this.Cl=o|0,this.Dh=a|0,this.Dl=c|0,this.Eh=l|0,this.El=u|0,this.Fh=d|0,this.Fl=h|0,this.Gh=f|0,this.Gl=p|0,this.Hh=g|0,this.Hl=y|0}process(e,n){for(let E=0;E<16;E++,n+=4)is[E]=e.getUint32(n),os[E]=e.getUint32(n+=4);for(let E=16;E<80;E++){const C=is[E-15]|0,O=os[E-15]|0,k=ls(C,O,1)^ls(C,O,8)^Kp(C,O,7),$=us(C,O,1)^us(C,O,8)^Gp(C,O,7),F=is[E-2]|0,D=os[E-2]|0,W=ls(F,D,19)^Oo(F,D,61)^Kp(F,D,6),H=us(F,D,19)^Ro(F,D,61)^Gp(F,D,6),U=kx($,H,os[E-7],os[E-16]),N=Ux(U,k,W,is[E-7],is[E-16]);is[E]=N|0,os[E]=U|0}let{Ah:r,Al:s,Bh:i,Bl:o,Ch:a,Cl:c,Dh:l,Dl:u,Eh:d,El:h,Fh:f,Fl:p,Gh:g,Gl:y,Hh:v,Hl:A}=this;for(let E=0;E<80;E++){const C=ls(d,h,14)^ls(d,h,18)^Oo(d,h,41),O=us(d,h,14)^us(d,h,18)^Ro(d,h,41),k=d&f^~d&g,$=h&p^~h&y,F=$x(A,O,$,s3[E],os[E]),D=Bx(F,v,C,k,r3[E],is[E]),W=F|0,H=ls(r,s,28)^Oo(r,s,34)^Oo(r,s,39),U=us(r,s,28)^Ro(r,s,34)^Ro(r,s,39),N=r&i^r&a^i&a,P=s&o^s&c^o&c;v=g|0,A=y|0,g=f|0,y=p|0,f=d|0,p=h|0,{h:d,l:h}=Yn(l|0,u|0,D|0,W|0),l=a|0,u=c|0,a=i|0,c=o|0,i=r|0,o=s|0;const _=kh(W,U,P);r=Uh(_,D,H,N),s=_|0}({h:r,l:s}=Yn(this.Ah|0,this.Al|0,r|0,s|0)),{h:i,l:o}=Yn(this.Bh|0,this.Bl|0,i|0,o|0),{h:a,l:c}=Yn(this.Ch|0,this.Cl|0,a|0,c|0),{h:l,l:u}=Yn(this.Dh|0,this.Dl|0,l|0,u|0),{h:d,l:h}=Yn(this.Eh|0,this.El|0,d|0,h|0),{h:f,l:p}=Yn(this.Fh|0,this.Fl|0,f|0,p|0),{h:g,l:y}=Yn(this.Gh|0,this.Gl|0,g|0,y|0),{h:v,l:A}=Yn(this.Hh|0,this.Hl|0,v|0,A|0),this.set(r,s,i,o,a,c,l,u,d,h,f,p,g,y,v,A)}roundClean(){Wn(is,os)}destroy(){Wn(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};class i3 extends Bh{constructor(){super(48),this.Ah=Ft[0]|0,this.Al=Ft[1]|0,this.Bh=Ft[2]|0,this.Bl=Ft[3]|0,this.Ch=Ft[4]|0,this.Cl=Ft[5]|0,this.Dh=Ft[6]|0,this.Dl=Ft[7]|0,this.Eh=Ft[8]|0,this.El=Ft[9]|0,this.Fh=Ft[10]|0,this.Fl=Ft[11]|0,this.Gh=Ft[12]|0,this.Gl=Ft[13]|0,this.Hh=Ft[14]|0,this.Hl=Ft[15]|0}}const Mt=Uint32Array.from([573645204,4230739756,2673172387,3360449730,596883563,1867755857,2520282905,1497426621,2519219938,2827943907,3193839141,1401305490,721525244,746961066,246885852,2177182882]);class o3 extends Bh{constructor(){super(32),this.Ah=Mt[0]|0,this.Al=Mt[1]|0,this.Bh=Mt[2]|0,this.Bl=Mt[3]|0,this.Ch=Mt[4]|0,this.Cl=Mt[5]|0,this.Dh=Mt[6]|0,this.Dl=Mt[7]|0,this.Eh=Mt[8]|0,this.El=Mt[9]|0,this.Fh=Mt[10]|0,this.Fl=Mt[11]|0,this.Gh=Mt[12]|0,this.Gl=Mt[13]|0,this.Hh=Mt[14]|0,this.Hl=Mt[15]|0}}const El=Oa(()=>new n3),a3=Oa(()=>new Bh),c3=Oa(()=>new i3),l3=Oa(()=>new o3),u3=Uint8Array.from([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9,12,5,1,15,14,13,4,10,0,7,6,3,9,2,8,11,13,11,7,14,12,1,3,9,5,0,15,4,8,6,2,10,6,15,14,9,11,3,0,8,12,2,13,7,1,4,10,5,10,2,8,4,7,6,1,5,15,11,9,14,3,12,13,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9]),pt=Uint32Array.from([4089235720,1779033703,2227873595,3144134277,4271175723,1013904242,1595750129,2773480762,2917565137,1359893119,725511199,2600822924,4215389547,528734635,327033209,1541459225]),ee=new Uint32Array(32);function as(t,e,n,r,s,i){const o=s[i],a=s[i+1];let c=ee[2*t],l=ee[2*t+1],u=ee[2*e],d=ee[2*e+1],h=ee[2*n],f=ee[2*n+1],p=ee[2*r],g=ee[2*r+1],y=kh(c,u,o);l=Uh(y,l,d,a),c=y|0,{Dh:g,Dl:p}={Dh:g^l,Dl:p^c},{Dh:g,Dl:p}={Dh:Tx(g,p),Dl:Ox(g)},{h:f,l:h}=Yn(f,h,g,p),{Bh:d,Bl:u}={Bh:d^f,Bl:u^h},{Bh:d,Bl:u}={Bh:ls(d,u,24),Bl:us(d,u,24)},ee[2*t]=c,ee[2*t+1]=l,ee[2*e]=u,ee[2*e+1]=d,ee[2*n]=h,ee[2*n+1]=f,ee[2*r]=p,ee[2*r+1]=g}function cs(t,e,n,r,s,i){const o=s[i],a=s[i+1];let c=ee[2*t],l=ee[2*t+1],u=ee[2*e],d=ee[2*e+1],h=ee[2*n],f=ee[2*n+1],p=ee[2*r],g=ee[2*r+1],y=kh(c,u,o);l=Uh(y,l,d,a),c=y|0,{Dh:g,Dl:p}={Dh:g^l,Dl:p^c},{Dh:g,Dl:p}={Dh:ls(g,p,16),Dl:us(g,p,16)},{h:f,l:h}=Yn(f,h,g,p),{Bh:d,Bl:u}={Bh:d^f,Bl:u^h},{Bh:d,Bl:u}={Bh:Oo(d,u,63),Bl:Ro(d,u,63)},ee[2*t]=c,ee[2*t+1]=l,ee[2*e]=u,ee[2*e+1]=d,ee[2*n]=h,ee[2*n+1]=f,ee[2*r]=p,ee[2*r+1]=g}function d3(t,e={},n,r,s){if(Yr(n),t<0||t>n)throw new Error("outputLen bigger than keyLen");const{key:i,salt:o,personalization:a}=e;if(i!==void 0&&(i.length<1||i.length>n))throw new Error("key length must be undefined or 1.."+n);if(o!==void 0&&o.length!==r)throw new Error("salt must be undefined or "+r);if(a!==void 0&&a.length!==s)throw new Error("personalization must be undefined or "+s)}class h3 extends wl{constructor(e,n){super(),this.finished=!1,this.destroyed=!1,this.length=0,this.pos=0,Yr(e),Yr(n),this.blockLen=e,this.outputLen=n,this.buffer=new Uint8Array(e),this.buffer32=ua(this.buffer)}update(e){Os(this),e=tr(e),rr(e);const{blockLen:n,buffer:r,buffer32:s}=this,i=e.length,o=e.byteOffset,a=e.buffer;for(let c=0;c<i;){this.pos===n&&(ds(s),this.compress(s,0,!1),ds(s),this.pos=0);const l=Math.min(n-this.pos,i-c),u=o+c;if(l===n&&!(u%4)&&c+l<i){const d=new Uint32Array(a,u,Math.floor((i-c)/4));ds(d);for(let h=0;c+n<i;h+=s.length,c+=n)this.length+=n,this.compress(d,h,!1);ds(d);continue}r.set(e.subarray(c,c+l),this.pos),this.pos+=l,this.length+=l,c+=l}return this}digestInto(e){Os(this),$h(e,this);const{pos:n,buffer32:r}=this;this.finished=!0,Wn(this.buffer.subarray(n)),ds(r),this.compress(r,0,!0),ds(r);const s=ua(e);this.get().forEach((i,o)=>s[o]=Dr(i))}digest(){const{buffer:e,outputLen:n}=this;this.digestInto(e);const r=e.slice(0,n);return this.destroy(),r}_cloneInto(e){const{buffer:n,length:r,finished:s,destroyed:i,outputLen:o,pos:a}=this;return e||(e=new this.constructor({dkLen:o})),e.set(...this.get()),e.buffer.set(n),e.destroyed=i,e.finished=s,e.length=r,e.pos=a,e.outputLen=o,e}clone(){return this._cloneInto()}}class f3 extends h3{constructor(e={}){const n=e.dkLen===void 0?64:e.dkLen;super(128,n),this.v0l=pt[0]|0,this.v0h=pt[1]|0,this.v1l=pt[2]|0,this.v1h=pt[3]|0,this.v2l=pt[4]|0,this.v2h=pt[5]|0,this.v3l=pt[6]|0,this.v3h=pt[7]|0,this.v4l=pt[8]|0,this.v4h=pt[9]|0,this.v5l=pt[10]|0,this.v5h=pt[11]|0,this.v6l=pt[12]|0,this.v6h=pt[13]|0,this.v7l=pt[14]|0,this.v7h=pt[15]|0,d3(n,e,64,16,16);let{key:r,personalization:s,salt:i}=e,o=0;if(r!==void 0&&(r=tr(r),o=r.length),this.v0l^=this.outputLen|o<<8|65536|1<<24,i!==void 0){i=tr(i);const a=ua(i);this.v4l^=Dr(a[0]),this.v4h^=Dr(a[1]),this.v5l^=Dr(a[2]),this.v5h^=Dr(a[3])}if(s!==void 0){s=tr(s);const a=ua(s);this.v6l^=Dr(a[0]),this.v6h^=Dr(a[1]),this.v7l^=Dr(a[2]),this.v7h^=Dr(a[3])}if(r!==void 0){const a=new Uint8Array(this.blockLen);a.set(r),this.update(a)}}get(){let{v0l:e,v0h:n,v1l:r,v1h:s,v2l:i,v2h:o,v3l:a,v3h:c,v4l:l,v4h:u,v5l:d,v5h:h,v6l:f,v6h:p,v7l:g,v7h:y}=this;return[e,n,r,s,i,o,a,c,l,u,d,h,f,p,g,y]}set(e,n,r,s,i,o,a,c,l,u,d,h,f,p,g,y){this.v0l=e|0,this.v0h=n|0,this.v1l=r|0,this.v1h=s|0,this.v2l=i|0,this.v2h=o|0,this.v3l=a|0,this.v3h=c|0,this.v4l=l|0,this.v4h=u|0,this.v5l=d|0,this.v5h=h|0,this.v6l=f|0,this.v6h=p|0,this.v7l=g|0,this.v7h=y|0}compress(e,n,r){this.get().forEach((c,l)=>ee[l]=c),ee.set(pt,16);let{h:s,l:i}=g0(BigInt(this.length));ee[24]=pt[8]^i,ee[25]=pt[9]^s,r&&(ee[28]=~ee[28],ee[29]=~ee[29]);let o=0;const a=u3;for(let c=0;c<12;c++)as(0,4,8,12,e,n+2*a[o++]),cs(0,4,8,12,e,n+2*a[o++]),as(1,5,9,13,e,n+2*a[o++]),cs(1,5,9,13,e,n+2*a[o++]),as(2,6,10,14,e,n+2*a[o++]),cs(2,6,10,14,e,n+2*a[o++]),as(3,7,11,15,e,n+2*a[o++]),cs(3,7,11,15,e,n+2*a[o++]),as(0,5,10,15,e,n+2*a[o++]),cs(0,5,10,15,e,n+2*a[o++]),as(1,6,11,12,e,n+2*a[o++]),cs(1,6,11,12,e,n+2*a[o++]),as(2,7,8,13,e,n+2*a[o++]),cs(2,7,8,13,e,n+2*a[o++]),as(3,4,9,14,e,n+2*a[o++]),cs(3,4,9,14,e,n+2*a[o++]);this.v0l^=ee[0]^ee[16],this.v0h^=ee[1]^ee[17],this.v1l^=ee[2]^ee[18],this.v1h^=ee[3]^ee[19],this.v2l^=ee[4]^ee[20],this.v2h^=ee[5]^ee[21],this.v3l^=ee[6]^ee[22],this.v3h^=ee[7]^ee[23],this.v4l^=ee[8]^ee[24],this.v4h^=ee[9]^ee[25],this.v5l^=ee[10]^ee[26],this.v5h^=ee[11]^ee[27],this.v6l^=ee[12]^ee[28],this.v6h^=ee[13]^ee[29],this.v7l^=ee[14]^ee[30],this.v7h^=ee[15]^ee[31],Wn(ee)}destroy(){this.destroyed=!0,Wn(this.buffer32),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}}const p3=Mx(t=>new f3(t)),g3="https://rpc.walletconnect.org/v1";function T0(t){const e=`Ethereum Signed Message:
|
|
22
|
-
${t.length}`,n=new TextEncoder().encode(e+t);return"0x"+Be.from(Jx(n)).toString("hex")}async function m3(t,e,n,r,s,i){switch(n.t){case"eip191":return await y3(t,e,n.s);case"eip1271":return await w3(t,e,n.s,r,s,i);default:throw new Error(`verifySignature failed: Attempted to verify CacaoSignature with unknown type: ${n.t}`)}}function y3(t,e,n){const r=KT(n);return oO({payload:T0(e),signature:r}).toLowerCase()===t.toLowerCase()}async function w3(t,e,n,r,s,i){const o=zr(r);if(!o.namespace||!o.reference)throw new Error(`isValidEip1271Signature failed: chainId must be in CAIP-2 format, received: ${r}`);try{const a="0x1626ba7e",c="0000000000000000000000000000000000000000000000000000000000000040",l=n.substring(2),u=(l.length/2).toString(16).padStart(64,"0"),d=(e.startsWith("0x")?e:T0(e)).substring(2),h=a+d+c+u+l,f=await fetch(`${i||g3}/?chainId=${r}&projectId=${s}`,{headers:{"Content-Type":"application/json"},method:"POST",body:JSON.stringify({id:E3(),jsonrpc:"2.0",method:"eth_call",params:[{to:t,data:h},"latest"]})}),{result:p}=await f.json();return p?p.slice(0,a.length).toLowerCase()===a.toLowerCase():!1}catch(a){return console.error("isValidEip1271Signature: ",a),!1}}function E3(){return Date.now()+Math.floor(Math.random()*1e3)}function b3(t){const e=atob(t),n=new Uint8Array(e.length);for(let o=0;o<e.length;o++)n[o]=e.charCodeAt(o);const r=n[0];if(r===0)throw new Error("No signatures found");const s=1+r*64;if(n.length<s)throw new Error("Transaction data too short for claimed signature count");if(n.length<100)throw new Error("Transaction too short");const i=Be.from(t,"base64").slice(1,65);return so.encode(i)}function _3(t){const e=new Uint8Array(Be.from(t,"base64")),n=Array.from("TransactionData::").map(i=>i.charCodeAt(0)),r=new Uint8Array(n.length+e.length);r.set(n),r.set(e,n.length);const s=p3(r,{dkLen:32});return so.encode(s)}function Xp(t){const e=new Uint8Array(El(v3(t)));return so.encode(e)}function v3(t){if(t instanceof Uint8Array)return t;if(Array.isArray(t))return new Uint8Array(t);if(typeof t=="object"&&t!=null&&t.data)return new Uint8Array(Object.values(t.data));if(typeof t=="object"&&t)return new Uint8Array(Object.values(t));throw new Error("getNearUint8ArrayFromBytes: Unexpected result type from bytes array")}function Qp(t){const e=Be.from(t,"base64"),n=zO(e).txn;if(!n)throw new Error("Invalid signed transaction: missing 'txn' field");const r=$O(n),s=Be.from("TX"),i=Be.concat([s,Be.from(r)]),o=l3(i);return iO.encode(o).replace(/=+$/,"")}function mu(t){const e=[];let n=BigInt(t);for(;n>=BigInt(128);)e.push(Number(n&BigInt(127)|BigInt(128))),n>>=BigInt(7);return e.push(Number(n)),Be.from(e)}function C3(t){const e=Be.from(t.signed.bodyBytes,"base64"),n=Be.from(t.signed.authInfoBytes,"base64"),r=Be.from(t.signature.signature,"base64"),s=[];s.push(Be.from([10])),s.push(mu(e.length)),s.push(e),s.push(Be.from([18])),s.push(mu(n.length)),s.push(n),s.push(Be.from([26])),s.push(mu(r.length)),s.push(r);const i=Be.concat(s),o=El(i);return Be.from(o).toString("hex").toUpperCase()}function A3(t){var e,n;const r=[];try{if(typeof t=="string")return r.push(t),r;if(typeof t!="object")return r;t!=null&&t.id&&r.push(t.id);const s=(n=(e=t==null?void 0:t.capabilities)==null?void 0:e.caip345)==null?void 0:n.transactionHashes;s&&r.push(...s)}catch(s){console.warn("getWalletSendCallsHashes failed: ",s)}return r}var S3=Object.defineProperty,I3=Object.defineProperties,N3=Object.getOwnPropertyDescriptors,eg=Object.getOwnPropertySymbols,T3=Object.prototype.hasOwnProperty,O3=Object.prototype.propertyIsEnumerable,tg=(t,e,n)=>e in t?S3(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,R3=(t,e)=>{for(var n in e||(e={}))T3.call(e,n)&&tg(t,n,e[n]);if(eg)for(var n of eg(e))O3.call(e,n)&&tg(t,n,e[n]);return t},x3=(t,e)=>I3(t,N3(e));const O0="did:pkh:",P3={eip155:"Ethereum",solana:"Solana",bip122:"Bitcoin"},D3=t=>t?P3[t]||t:"",bl=t=>t==null?void 0:t.split(":"),k3=t=>{const e=t&&bl(t);if(e)return t.includes(O0)?e[3]:e[1]},U3=t=>{const e=t&&bl(t);if(e)return t.includes(O0)?e[2]:e[0]},Nd=t=>{const e=t&&bl(t);if(e)return e[2]+":"+e[3]},Kc=t=>{const e=t&&bl(t);if(e)return e.pop()};async function ng(t){const{cacao:e,projectId:n}=t,{s:r,p:s}=e,i=R0(s,s.iss),o=Kc(s.iss);return await m3(o,i,r,Nd(s.iss),n)}const R0=(t,e)=>{const n=U3(e);if(!n)throw new Error("Invalid issuer: "+e);const r=`${t.domain} wants you to sign in with your ${D3(n)} account:`,s=Kc(e);if(!t.aud&&!t.uri)throw new Error("Either `aud` or `uri` is required to construct the message");let i=t.statement||void 0;const o=`URI: ${t.aud||t.uri}`,a=`Version: ${t.version}`,c=`Chain ID: ${k3(e)}`,l=`Nonce: ${t.nonce}`,u=`Issued At: ${t.iat}`,d=t.exp?`Expiration Time: ${t.exp}`:void 0,h=t.nbf?`Not Before: ${t.nbf}`:void 0,f=t.requestId?`Request ID: ${t.requestId}`:void 0,p=t.resources?`Resources:${t.resources.map(y=>`
|
|
23
|
-
- ${y}`).join("")}`:void 0,g=mc(t.resources);if(g){const y=da(g);i=H3(i,y)}return[r,s,"",i,"",o,a,c,l,u,d,h,f,p].filter(y=>y!=null).join(`
|
|
24
|
-
`)};function $3(t){return Be.from(JSON.stringify(t)).toString("base64")}function B3(t){return JSON.parse(Be.from(t,"base64").toString("utf-8"))}function di(t){if(!t)throw new Error("No recap provided, value is undefined");if(!t.att)throw new Error("No `att` property found");const e=Object.keys(t.att);if(!(e!=null&&e.length))throw new Error("No resources found in `att` property");e.forEach(n=>{const r=t.att[n];if(Array.isArray(r))throw new Error(`Resource must be an object: ${n}`);if(typeof r!="object")throw new Error(`Resource must be an object: ${n}`);if(!Object.keys(r).length)throw new Error(`Resource object is empty: ${n}`);Object.keys(r).forEach(s=>{const i=r[s];if(!Array.isArray(i))throw new Error(`Ability limits ${s} must be an array of objects, found: ${i}`);if(!i.length)throw new Error(`Value of ${s} is empty array, must be an array with objects`);i.forEach(o=>{if(typeof o!="object")throw new Error(`Ability limits (${s}) must be an array of objects, found: ${o}`)})})})}function F3(t,e,n,r={}){return n==null||n.sort((s,i)=>s.localeCompare(i)),{att:{[t]:L3(e,n,r)}}}function L3(t,e,n={}){e=e==null?void 0:e.sort((s,i)=>s.localeCompare(i));const r=e.map(s=>({[`${t}/${s}`]:[n]}));return Object.assign({},...r)}function x0(t){return di(t),`urn:recap:${$3(t).replace(/=/g,"")}`}function da(t){const e=B3(t.replace("urn:recap:",""));return di(e),e}function M3(t,e,n){const r=F3(t,e,n);return x0(r)}function j3(t){return t&&t.includes("urn:recap:")}function W3(t,e){const n=da(t),r=da(e),s=q3(n,r);return x0(s)}function q3(t,e){di(t),di(e);const n=Object.keys(t.att).concat(Object.keys(e.att)).sort((s,i)=>s.localeCompare(i)),r={att:{}};return n.forEach(s=>{var i,o;Object.keys(((i=t.att)==null?void 0:i[s])||{}).concat(Object.keys(((o=e.att)==null?void 0:o[s])||{})).sort((a,c)=>a.localeCompare(c)).forEach(a=>{var c,l;r.att[s]=x3(R3({},r.att[s]),{[a]:((c=t.att[s])==null?void 0:c[a])||((l=e.att[s])==null?void 0:l[a])})})}),r}function H3(t="",e){di(e);const n="I further authorize the stated URI to perform the following actions on my behalf: ";if(t.includes(n))return t;const r=[];let s=0;Object.keys(e.att).forEach(a=>{const c=Object.keys(e.att[a]).map(d=>({ability:d.split("/")[0],action:d.split("/")[1]}));c.sort((d,h)=>d.action.localeCompare(h.action));const l={};c.forEach(d=>{l[d.ability]||(l[d.ability]=[]),l[d.ability].push(d.action)});const u=Object.keys(l).map(d=>(s++,`(${s}) '${d}': '${l[d].join("', '")}' for '${a}'.`));r.push(u.join(", ").replace(".,","."))});const i=r.join(" "),o=`${n}${i}`;return`${t?t+" ":""}${o}`}function rg(t){var e;const n=da(t);di(n);const r=(e=n.att)==null?void 0:e.eip155;return r?Object.keys(r).map(s=>s.split("/")[1]):[]}function sg(t){const e=da(t);di(e);const n=[];return Object.values(e.att).forEach(r=>{Object.values(r).forEach(s=>{var i;(i=s==null?void 0:s[0])!=null&&i.chains&&n.push(s[0].chains)})}),[...new Set(n.flat())]}function mc(t){if(!t)return;const e=t==null?void 0:t[t.length-1];return j3(e)?e:void 0}/*! noble-ciphers - MIT License (c) 2023 Paul Miller (paulmillr.com) */function P0(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function Td(t){if(typeof t!="boolean")throw new Error(`boolean expected, not ${t}`)}function yu(t){if(!Number.isSafeInteger(t)||t<0)throw new Error("positive integer expected, got "+t)}function hn(t,...e){if(!P0(t))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(t.length))throw new Error("Uint8Array expected of length "+e+", got length="+t.length)}function ig(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function z3(t,e){hn(t);const n=e.outputLen;if(t.length<n)throw new Error("digestInto() expects output buffer of length at least "+n)}function _s(t){return new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4))}function Xi(...t){for(let e=0;e<t.length;e++)t[e].fill(0)}function V3(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}const K3=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function G3(t){if(typeof t!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(t))}function Od(t){if(typeof t=="string")t=G3(t);else if(P0(t))t=Rd(t);else throw new Error("Uint8Array expected, got "+typeof t);return t}function Y3(t,e){if(e==null||typeof e!="object")throw new Error("options must be defined");return Object.assign(t,e)}function Z3(t,e){if(t.length!==e.length)return!1;let n=0;for(let r=0;r<t.length;r++)n|=t[r]^e[r];return n===0}const J3=(t,e)=>{function n(r,...s){if(hn(r),!K3)throw new Error("Non little-endian hardware is not yet supported");if(t.nonceLength!==void 0){const l=s[0];if(!l)throw new Error("nonce / iv required");t.varSizeNonce?hn(l):hn(l,t.nonceLength)}const i=t.tagLength;i&&s[1]!==void 0&&hn(s[1]);const o=e(r,...s),a=(l,u)=>{if(u!==void 0){if(l!==2)throw new Error("cipher output not supported");hn(u)}};let c=!1;return{encrypt(l,u){if(c)throw new Error("cannot encrypt() twice with same key + nonce");return c=!0,hn(l),a(o.encrypt.length,u),o.encrypt(l,u)},decrypt(l,u){if(hn(l),i&&l.length<i)throw new Error("invalid ciphertext length: smaller than tagLength="+i);return a(o.decrypt.length,u),o.decrypt(l,u)}}}return Object.assign(n,t),n};function og(t,e,n=!0){if(e===void 0)return new Uint8Array(t);if(e.length!==t)throw new Error("invalid output length, expected "+t+", got: "+e.length);if(n&&!Q3(e))throw new Error("invalid output, must be aligned");return e}function ag(t,e,n,r){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,n,r);const s=BigInt(32),i=BigInt(4294967295),o=Number(n>>s&i),a=Number(n&i),c=r?4:0,l=r?0:4;t.setUint32(e+c,o,r),t.setUint32(e+l,a,r)}function X3(t,e,n){Td(n);const r=new Uint8Array(16),s=V3(r);return ag(s,0,BigInt(e),n),ag(s,8,BigInt(t),n),r}function Q3(t){return t.byteOffset%4===0}function Rd(t){return Uint8Array.from(t)}const D0=t=>Uint8Array.from(t.split("").map(e=>e.charCodeAt(0))),eP=D0("expand 16-byte k"),tP=D0("expand 32-byte k"),nP=_s(eP),rP=_s(tP);function Fe(t,e){return t<<e|t>>>32-e}function xd(t){return t.byteOffset%4===0}const Xa=64,sP=16,k0=2**32-1,cg=new Uint32Array;function iP(t,e,n,r,s,i,o,a){const c=s.length,l=new Uint8Array(Xa),u=_s(l),d=xd(s)&&xd(i),h=d?_s(s):cg,f=d?_s(i):cg;for(let p=0;p<c;o++){if(t(e,n,r,u,o,a),o>=k0)throw new Error("arx: counter overflow");const g=Math.min(Xa,c-p);if(d&&g===Xa){const y=p/4;if(p%4!==0)throw new Error("arx: invalid block position");for(let v=0,A;v<sP;v++)A=y+v,f[A]=h[A]^u[v];p+=Xa;continue}for(let y=0,v;y<g;y++)v=p+y,i[v]=s[v]^l[y];p+=g}}function oP(t,e){const{allowShortKeys:n,extendNonceFn:r,counterLength:s,counterRight:i,rounds:o}=Y3({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},e);if(typeof t!="function")throw new Error("core must be a function");return yu(s),yu(o),Td(i),Td(n),(a,c,l,u,d=0)=>{hn(a),hn(c),hn(l);const h=l.length;if(u===void 0&&(u=new Uint8Array(h)),hn(u),yu(d),d<0||d>=k0)throw new Error("arx: counter overflow");if(u.length<h)throw new Error(`arx: output (${u.length}) is shorter than data (${h})`);const f=[];let p=a.length,g,y;if(p===32)f.push(g=Rd(a)),y=rP;else if(p===16&&n)g=new Uint8Array(32),g.set(a),g.set(a,16),y=nP,f.push(g);else throw new Error(`arx: invalid 32-byte key, got length=${p}`);xd(c)||f.push(c=Rd(c));const v=_s(g);if(r){if(c.length!==24)throw new Error("arx: extended nonce must be 24 bytes");r(y,v,_s(c.subarray(0,16)),v),c=c.subarray(16)}const A=16-s;if(A!==c.length)throw new Error(`arx: nonce must be ${A} or 16 bytes`);if(A!==12){const C=new Uint8Array(12);C.set(c,i?0:12-c.length),c=C,f.push(c)}const E=_s(c);return iP(t,y,v,E,l,u,d,o),Xi(...f),u}}const Nt=(t,e)=>t[e++]&255|(t[e++]&255)<<8;class aP{constructor(e){this.blockLen=16,this.outputLen=16,this.buffer=new Uint8Array(16),this.r=new Uint16Array(10),this.h=new Uint16Array(10),this.pad=new Uint16Array(8),this.pos=0,this.finished=!1,e=Od(e),hn(e,32);const n=Nt(e,0),r=Nt(e,2),s=Nt(e,4),i=Nt(e,6),o=Nt(e,8),a=Nt(e,10),c=Nt(e,12),l=Nt(e,14);this.r[0]=n&8191,this.r[1]=(n>>>13|r<<3)&8191,this.r[2]=(r>>>10|s<<6)&7939,this.r[3]=(s>>>7|i<<9)&8191,this.r[4]=(i>>>4|o<<12)&255,this.r[5]=o>>>1&8190,this.r[6]=(o>>>14|a<<2)&8191,this.r[7]=(a>>>11|c<<5)&8065,this.r[8]=(c>>>8|l<<8)&8191,this.r[9]=l>>>5&127;for(let u=0;u<8;u++)this.pad[u]=Nt(e,16+2*u)}process(e,n,r=!1){const s=r?0:2048,{h:i,r:o}=this,a=o[0],c=o[1],l=o[2],u=o[3],d=o[4],h=o[5],f=o[6],p=o[7],g=o[8],y=o[9],v=Nt(e,n+0),A=Nt(e,n+2),E=Nt(e,n+4),C=Nt(e,n+6),O=Nt(e,n+8),k=Nt(e,n+10),$=Nt(e,n+12),F=Nt(e,n+14);let D=i[0]+(v&8191),W=i[1]+((v>>>13|A<<3)&8191),H=i[2]+((A>>>10|E<<6)&8191),U=i[3]+((E>>>7|C<<9)&8191),N=i[4]+((C>>>4|O<<12)&8191),P=i[5]+(O>>>1&8191),_=i[6]+((O>>>14|k<<2)&8191),b=i[7]+((k>>>11|$<<5)&8191),I=i[8]+(($>>>8|F<<8)&8191),x=i[9]+(F>>>5|s),S=0,R=S+D*a+W*(5*y)+H*(5*g)+U*(5*p)+N*(5*f);S=R>>>13,R&=8191,R+=P*(5*h)+_*(5*d)+b*(5*u)+I*(5*l)+x*(5*c),S+=R>>>13,R&=8191;let L=S+D*c+W*a+H*(5*y)+U*(5*g)+N*(5*p);S=L>>>13,L&=8191,L+=P*(5*f)+_*(5*h)+b*(5*d)+I*(5*u)+x*(5*l),S+=L>>>13,L&=8191;let M=S+D*l+W*c+H*a+U*(5*y)+N*(5*g);S=M>>>13,M&=8191,M+=P*(5*p)+_*(5*f)+b*(5*h)+I*(5*d)+x*(5*u),S+=M>>>13,M&=8191;let te=S+D*u+W*l+H*c+U*a+N*(5*y);S=te>>>13,te&=8191,te+=P*(5*g)+_*(5*p)+b*(5*f)+I*(5*h)+x*(5*d),S+=te>>>13,te&=8191;let X=S+D*d+W*u+H*l+U*c+N*a;S=X>>>13,X&=8191,X+=P*(5*y)+_*(5*g)+b*(5*p)+I*(5*f)+x*(5*h),S+=X>>>13,X&=8191;let Z=S+D*h+W*d+H*u+U*l+N*c;S=Z>>>13,Z&=8191,Z+=P*a+_*(5*y)+b*(5*g)+I*(5*p)+x*(5*f),S+=Z>>>13,Z&=8191;let de=S+D*f+W*h+H*d+U*u+N*l;S=de>>>13,de&=8191,de+=P*c+_*a+b*(5*y)+I*(5*g)+x*(5*p),S+=de>>>13,de&=8191;let fe=S+D*p+W*f+H*h+U*d+N*u;S=fe>>>13,fe&=8191,fe+=P*l+_*c+b*a+I*(5*y)+x*(5*g),S+=fe>>>13,fe&=8191;let Ne=S+D*g+W*p+H*f+U*h+N*d;S=Ne>>>13,Ne&=8191,Ne+=P*u+_*l+b*c+I*a+x*(5*y),S+=Ne>>>13,Ne&=8191;let he=S+D*y+W*g+H*p+U*f+N*h;S=he>>>13,he&=8191,he+=P*d+_*u+b*l+I*c+x*a,S+=he>>>13,he&=8191,S=(S<<2)+S|0,S=S+R|0,R=S&8191,S=S>>>13,L+=S,i[0]=R,i[1]=L,i[2]=M,i[3]=te,i[4]=X,i[5]=Z,i[6]=de,i[7]=fe,i[8]=Ne,i[9]=he}finalize(){const{h:e,pad:n}=this,r=new Uint16Array(10);let s=e[1]>>>13;e[1]&=8191;for(let a=2;a<10;a++)e[a]+=s,s=e[a]>>>13,e[a]&=8191;e[0]+=s*5,s=e[0]>>>13,e[0]&=8191,e[1]+=s,s=e[1]>>>13,e[1]&=8191,e[2]+=s,r[0]=e[0]+5,s=r[0]>>>13,r[0]&=8191;for(let a=1;a<10;a++)r[a]=e[a]+s,s=r[a]>>>13,r[a]&=8191;r[9]-=8192;let i=(s^1)-1;for(let a=0;a<10;a++)r[a]&=i;i=~i;for(let a=0;a<10;a++)e[a]=e[a]&i|r[a];e[0]=(e[0]|e[1]<<13)&65535,e[1]=(e[1]>>>3|e[2]<<10)&65535,e[2]=(e[2]>>>6|e[3]<<7)&65535,e[3]=(e[3]>>>9|e[4]<<4)&65535,e[4]=(e[4]>>>12|e[5]<<1|e[6]<<14)&65535,e[5]=(e[6]>>>2|e[7]<<11)&65535,e[6]=(e[7]>>>5|e[8]<<8)&65535,e[7]=(e[8]>>>8|e[9]<<5)&65535;let o=e[0]+n[0];e[0]=o&65535;for(let a=1;a<8;a++)o=(e[a]+n[a]|0)+(o>>>16)|0,e[a]=o&65535;Xi(r)}update(e){ig(this),e=Od(e),hn(e);const{buffer:n,blockLen:r}=this,s=e.length;for(let i=0;i<s;){const o=Math.min(r-this.pos,s-i);if(o===r){for(;r<=s-i;i+=r)this.process(e,i);continue}n.set(e.subarray(i,i+o),this.pos),this.pos+=o,i+=o,this.pos===r&&(this.process(n,0,!1),this.pos=0)}return this}destroy(){Xi(this.h,this.r,this.buffer,this.pad)}digestInto(e){ig(this),z3(e,this),this.finished=!0;const{buffer:n,h:r}=this;let{pos:s}=this;if(s){for(n[s++]=1;s<16;s++)n[s]=0;this.process(n,0,!0)}this.finalize();let i=0;for(let o=0;o<8;o++)e[i++]=r[o]>>>0,e[i++]=r[o]>>>8;return e}digest(){const{buffer:e,outputLen:n}=this;this.digestInto(e);const r=e.slice(0,n);return this.destroy(),r}}function cP(t){const e=(r,s)=>t(s).update(Od(r)).digest(),n=t(new Uint8Array(32));return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=r=>t(r),e}const lP=cP(t=>new aP(t));function uP(t,e,n,r,s,i=20){let o=t[0],a=t[1],c=t[2],l=t[3],u=e[0],d=e[1],h=e[2],f=e[3],p=e[4],g=e[5],y=e[6],v=e[7],A=s,E=n[0],C=n[1],O=n[2],k=o,$=a,F=c,D=l,W=u,H=d,U=h,N=f,P=p,_=g,b=y,I=v,x=A,S=E,R=C,L=O;for(let te=0;te<i;te+=2)k=k+W|0,x=Fe(x^k,16),P=P+x|0,W=Fe(W^P,12),k=k+W|0,x=Fe(x^k,8),P=P+x|0,W=Fe(W^P,7),$=$+H|0,S=Fe(S^$,16),_=_+S|0,H=Fe(H^_,12),$=$+H|0,S=Fe(S^$,8),_=_+S|0,H=Fe(H^_,7),F=F+U|0,R=Fe(R^F,16),b=b+R|0,U=Fe(U^b,12),F=F+U|0,R=Fe(R^F,8),b=b+R|0,U=Fe(U^b,7),D=D+N|0,L=Fe(L^D,16),I=I+L|0,N=Fe(N^I,12),D=D+N|0,L=Fe(L^D,8),I=I+L|0,N=Fe(N^I,7),k=k+H|0,L=Fe(L^k,16),b=b+L|0,H=Fe(H^b,12),k=k+H|0,L=Fe(L^k,8),b=b+L|0,H=Fe(H^b,7),$=$+U|0,x=Fe(x^$,16),I=I+x|0,U=Fe(U^I,12),$=$+U|0,x=Fe(x^$,8),I=I+x|0,U=Fe(U^I,7),F=F+N|0,S=Fe(S^F,16),P=P+S|0,N=Fe(N^P,12),F=F+N|0,S=Fe(S^F,8),P=P+S|0,N=Fe(N^P,7),D=D+W|0,R=Fe(R^D,16),_=_+R|0,W=Fe(W^_,12),D=D+W|0,R=Fe(R^D,8),_=_+R|0,W=Fe(W^_,7);let M=0;r[M++]=o+k|0,r[M++]=a+$|0,r[M++]=c+F|0,r[M++]=l+D|0,r[M++]=u+W|0,r[M++]=d+H|0,r[M++]=h+U|0,r[M++]=f+N|0,r[M++]=p+P|0,r[M++]=g+_|0,r[M++]=y+b|0,r[M++]=v+I|0,r[M++]=A+x|0,r[M++]=E+S|0,r[M++]=C+R|0,r[M++]=O+L|0}const dP=oP(uP,{counterRight:!1,counterLength:4,allowShortKeys:!1}),hP=new Uint8Array(16),lg=(t,e)=>{t.update(e);const n=e.length%16;n&&t.update(hP.subarray(n))},fP=new Uint8Array(32);function ug(t,e,n,r,s){const i=t(e,n,fP),o=lP.create(i);s&&lg(o,s),lg(o,r);const a=X3(r.length,s?s.length:0,!0);o.update(a);const c=o.digest();return Xi(i,a),c}const pP=t=>(e,n,r)=>({encrypt(s,i){const o=s.length;i=og(o+16,i,!1),i.set(s);const a=i.subarray(0,-16);t(e,n,a,a,1);const c=ug(t,e,n,a,r);return i.set(c,o),Xi(c),i},decrypt(s,i){i=og(s.length-16,i,!1);const o=s.subarray(0,-16),a=s.subarray(-16),c=ug(t,e,n,o,r);if(!Z3(a,c))throw new Error("invalid tag");return i.set(s.subarray(0,-16)),t(e,n,i,i,1),Xi(c),i}}),U0=J3({blockSize:64,nonceLength:12,tagLength:16},pP(dP));let $0=class extends wl{constructor(e,n){super(),this.finished=!1,this.destroyed=!1,yl(e);const r=tr(n);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const s=this.blockLen,i=new Uint8Array(s);i.set(r.length>s?e.create().update(r).digest():r);for(let o=0;o<i.length;o++)i[o]^=54;this.iHash.update(i),this.oHash=e.create();for(let o=0;o<i.length;o++)i[o]^=106;this.oHash.update(i),Wn(i)}update(e){return Os(this),this.iHash.update(e),this}digestInto(e){Os(this),rr(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){const e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));const{oHash:n,iHash:r,finished:s,destroyed:i,blockLen:o,outputLen:a}=this;return e=e,e.finished=s,e.destroyed=i,e.blockLen=o,e.outputLen=a,e.oHash=n._cloneInto(e.oHash),e.iHash=r._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}};const _l=(t,e,n)=>new $0(t,e).update(n).digest();_l.create=(t,e)=>new $0(t,e);function gP(t,e,n){return yl(t),n===void 0&&(n=new Uint8Array(t.outputLen)),_l(t,tr(n),tr(e))}const wu=Uint8Array.from([0]),dg=Uint8Array.of();function mP(t,e,n,r=32){yl(t),Yr(r);const s=t.outputLen;if(r>255*s)throw new Error("Length should be <= 255*HashLen");const i=Math.ceil(r/s);n===void 0&&(n=dg);const o=new Uint8Array(i*s),a=_l.create(t,e),c=a._cloneInto(),l=new Uint8Array(a.outputLen);for(let u=0;u<i;u++)wu[0]=u+1,c.update(u===0?dg:l).update(n).update(wu).digestInto(l),o.set(l,s*u),a._cloneInto(c);return a.destroy(),c.destroy(),Wn(l,wu),o.slice(0,r)}const yP=(t,e,n,r,s)=>mP(t,gP(t,e,n),r,s),vl=El,Fh=BigInt(0),Pd=BigInt(1);function Gc(t,e=""){if(typeof t!="boolean"){const n=e&&`"${e}"`;throw new Error(n+"expected boolean, got type="+typeof t)}return t}function Ys(t,e,n=""){const r=ml(t),s=t==null?void 0:t.length,i=e!==void 0;if(!r||i&&s!==e){const o=n&&`"${n}" `,a=i?` of length ${e}`:"",c=r?`length=${s}`:`type=${typeof t}`;throw new Error(o+"expected Uint8Array"+a+", got "+c)}return t}function Qa(t){const e=t.toString(16);return e.length&1?"0"+e:e}function B0(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return t===""?Fh:BigInt("0x"+t)}function Cl(t){return B0(zi(t))}function Yc(t){return rr(t),B0(zi(Uint8Array.from(t).reverse()))}function Lh(t,e){return Vc(t.toString(16).padStart(e*2,"0"))}function Mh(t,e){return Lh(t,e).reverse()}function Ht(t,e,n){let r;if(typeof e=="string")try{r=Vc(e)}catch(i){throw new Error(t+" must be hex string or Uint8Array, cause: "+i)}else if(ml(e))r=Uint8Array.from(e);else throw new Error(t+" must be hex string or Uint8Array");const s=r.length;if(typeof n=="number"&&s!==n)throw new Error(t+" of length "+n+" expected, got "+s);return r}const Eu=t=>typeof t=="bigint"&&Fh<=t;function wP(t,e,n){return Eu(t)&&Eu(e)&&Eu(n)&&e<=t&&t<n}function Dd(t,e,n,r){if(!wP(e,n,r))throw new Error("expected valid "+t+": "+n+" <= n < "+r+", got "+e)}function F0(t){let e;for(e=0;t>Fh;t>>=Pd,e+=1);return e}const Ra=t=>(Pd<<BigInt(t))-Pd;function EP(t,e,n){if(typeof t!="number"||t<2)throw new Error("hashLen must be a number");if(typeof e!="number"||e<2)throw new Error("qByteLen must be a number");if(typeof n!="function")throw new Error("hmacFn must be a function");const r=h=>new Uint8Array(h),s=h=>Uint8Array.of(h);let i=r(t),o=r(t),a=0;const c=()=>{i.fill(1),o.fill(0),a=0},l=(...h)=>n(o,i,...h),u=(h=r(0))=>{o=l(s(0),h),i=l(),h.length!==0&&(o=l(s(1),h),i=l())},d=()=>{if(a++>=1e3)throw new Error("drbg: tried 1000 values");let h=0;const f=[];for(;h<e;){i=l();const p=i.slice();f.push(p),h+=i.length}return ps(...f)};return(h,f)=>{c(),u(h);let p;for(;!(p=f(d()));)u();return c(),p}}function Al(t,e,n={}){if(!t||typeof t!="object")throw new Error("expected valid options object");function r(s,i,o){const a=t[s];if(o&&a===void 0)return;const c=typeof a;if(c!==i||a===null)throw new Error(`param "${s}" is invalid: expected ${i}, got ${c}`)}Object.entries(e).forEach(([s,i])=>r(s,i,!1)),Object.entries(n).forEach(([s,i])=>r(s,i,!0))}function hg(t){const e=new WeakMap;return(n,...r)=>{const s=e.get(n);if(s!==void 0)return s;const i=t(n,...r);return e.set(n,i),i}}const gn=BigInt(0),en=BigInt(1),Zs=BigInt(2),L0=BigInt(3),M0=BigInt(4),j0=BigInt(5),bP=BigInt(7),W0=BigInt(8),_P=BigInt(9),q0=BigInt(16);function An(t,e){const n=t%e;return n>=gn?n:e+n}function Gn(t,e,n){let r=t;for(;e-- >gn;)r*=r,r%=n;return r}function fg(t,e){if(t===gn)throw new Error("invert: expected non-zero number");if(e<=gn)throw new Error("invert: expected positive modulus, got "+e);let n=An(t,e),r=e,s=gn,i=en;for(;n!==gn;){const o=r/n,a=r%n,c=s-i*o;r=n,n=a,s=i,i=c}if(r!==en)throw new Error("invert: does not exist");return An(s,e)}function jh(t,e,n){if(!t.eql(t.sqr(e),n))throw new Error("Cannot find square root")}function H0(t,e){const n=(t.ORDER+en)/M0,r=t.pow(e,n);return jh(t,r,e),r}function vP(t,e){const n=(t.ORDER-j0)/W0,r=t.mul(e,Zs),s=t.pow(r,n),i=t.mul(e,s),o=t.mul(t.mul(i,Zs),s),a=t.mul(i,t.sub(o,t.ONE));return jh(t,a,e),a}function CP(t){const e=xs(t),n=z0(t),r=n(e,e.neg(e.ONE)),s=n(e,r),i=n(e,e.neg(r)),o=(t+bP)/q0;return(a,c)=>{let l=a.pow(c,o),u=a.mul(l,r);const d=a.mul(l,s),h=a.mul(l,i),f=a.eql(a.sqr(u),c),p=a.eql(a.sqr(d),c);l=a.cmov(l,u,f),u=a.cmov(h,d,p);const g=a.eql(a.sqr(u),c),y=a.cmov(l,u,g);return jh(a,y,c),y}}function z0(t){if(t<L0)throw new Error("sqrt is not defined for small field");let e=t-en,n=0;for(;e%Zs===gn;)e/=Zs,n++;let r=Zs;const s=xs(t);for(;pg(s,r)===1;)if(r++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(n===1)return H0;let i=s.pow(r,e);const o=(e+en)/Zs;return function(a,c){if(a.is0(c))return c;if(pg(a,c)!==1)throw new Error("Cannot find square root");let l=n,u=a.mul(a.ONE,i),d=a.pow(c,e),h=a.pow(c,o);for(;!a.eql(d,a.ONE);){if(a.is0(d))return a.ZERO;let f=1,p=a.sqr(d);for(;!a.eql(p,a.ONE);)if(f++,p=a.sqr(p),f===l)throw new Error("Cannot find square root");const g=en<<BigInt(l-f-1),y=a.pow(u,g);l=f,u=a.sqr(y),d=a.mul(d,u),h=a.mul(h,y)}return h}}function AP(t){return t%M0===L0?H0:t%W0===j0?vP:t%q0===_P?CP(t):z0(t)}const SP=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function IP(t){const e={ORDER:"bigint",MASK:"bigint",BYTES:"number",BITS:"number"},n=SP.reduce((r,s)=>(r[s]="function",r),e);return Al(t,n),t}function NP(t,e,n){if(n<gn)throw new Error("invalid exponent, negatives unsupported");if(n===gn)return t.ONE;if(n===en)return e;let r=t.ONE,s=e;for(;n>gn;)n&en&&(r=t.mul(r,s)),s=t.sqr(s),n>>=en;return r}function V0(t,e,n=!1){const r=new Array(e.length).fill(n?t.ZERO:void 0),s=e.reduce((o,a,c)=>t.is0(a)?o:(r[c]=o,t.mul(o,a)),t.ONE),i=t.inv(s);return e.reduceRight((o,a,c)=>t.is0(a)?o:(r[c]=t.mul(o,r[c]),t.mul(o,a)),i),r}function pg(t,e){const n=(t.ORDER-en)/Zs,r=t.pow(e,n),s=t.eql(r,t.ONE),i=t.eql(r,t.ZERO),o=t.eql(r,t.neg(t.ONE));if(!s&&!i&&!o)throw new Error("invalid Legendre symbol result");return s?1:i?0:-1}function K0(t,e){e!==void 0&&Yr(e);const n=e!==void 0?e:t.toString(2).length,r=Math.ceil(n/8);return{nBitLength:n,nByteLength:r}}function xs(t,e,n=!1,r={}){if(t<=gn)throw new Error("invalid field: expected ORDER > 0, got "+t);let s,i,o=!1,a;if(typeof e=="object"&&e!=null){if(r.sqrt||n)throw new Error("cannot specify opts in two arguments");const h=e;h.BITS&&(s=h.BITS),h.sqrt&&(i=h.sqrt),typeof h.isLE=="boolean"&&(n=h.isLE),typeof h.modFromBytes=="boolean"&&(o=h.modFromBytes),a=h.allowedLengths}else typeof e=="number"&&(s=e),r.sqrt&&(i=r.sqrt);const{nBitLength:c,nByteLength:l}=K0(t,s);if(l>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");let u;const d=Object.freeze({ORDER:t,isLE:n,BITS:c,BYTES:l,MASK:Ra(c),ZERO:gn,ONE:en,allowedLengths:a,create:h=>An(h,t),isValid:h=>{if(typeof h!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof h);return gn<=h&&h<t},is0:h=>h===gn,isValidNot0:h=>!d.is0(h)&&d.isValid(h),isOdd:h=>(h&en)===en,neg:h=>An(-h,t),eql:(h,f)=>h===f,sqr:h=>An(h*h,t),add:(h,f)=>An(h+f,t),sub:(h,f)=>An(h-f,t),mul:(h,f)=>An(h*f,t),pow:(h,f)=>NP(d,h,f),div:(h,f)=>An(h*fg(f,t),t),sqrN:h=>h*h,addN:(h,f)=>h+f,subN:(h,f)=>h-f,mulN:(h,f)=>h*f,inv:h=>fg(h,t),sqrt:i||(h=>(u||(u=AP(t)),u(d,h))),toBytes:h=>n?Mh(h,l):Lh(h,l),fromBytes:(h,f=!0)=>{if(a){if(!a.includes(h.length)||h.length>l)throw new Error("Field.fromBytes: expected "+a+" bytes, got "+h.length);const g=new Uint8Array(l);g.set(h,n?0:g.length-h.length),h=g}if(h.length!==l)throw new Error("Field.fromBytes: expected "+l+" bytes, got "+h.length);let p=n?Yc(h):Cl(h);if(o&&(p=An(p,t)),!f&&!d.isValid(p))throw new Error("invalid field element: outside of range 0..ORDER");return p},invertBatch:h=>V0(d,h),cmov:(h,f,p)=>p?f:h});return Object.freeze(d)}function G0(t){if(typeof t!="bigint")throw new Error("field order must be bigint");const e=t.toString(2).length;return Math.ceil(e/8)}function Y0(t){const e=G0(t);return e+Math.ceil(e/2)}function TP(t,e,n=!1){const r=t.length,s=G0(e),i=Y0(e);if(r<16||r<i||r>1024)throw new Error("expected "+i+"-1024 bytes of input, got "+r);const o=n?Yc(t):Cl(t),a=An(o,e-en)+en;return n?Mh(a,s):Lh(a,s)}const Qi=BigInt(0),Js=BigInt(1);function Zc(t,e){const n=e.negate();return t?n:e}function bu(t,e){const n=V0(t.Fp,e.map(r=>r.Z));return e.map((r,s)=>t.fromAffine(r.toAffine(n[s])))}function Z0(t,e){if(!Number.isSafeInteger(t)||t<=0||t>e)throw new Error("invalid window size, expected [1.."+e+"], got W="+t)}function _u(t,e){Z0(t,e);const n=Math.ceil(e/t)+1,r=2**(t-1),s=2**t,i=Ra(t),o=BigInt(t);return{windows:n,windowSize:r,mask:i,maxNumber:s,shiftBy:o}}function gg(t,e,n){const{windowSize:r,mask:s,maxNumber:i,shiftBy:o}=n;let a=Number(t&s),c=t>>o;a>r&&(a-=i,c+=Js);const l=e*r,u=l+Math.abs(a)-1,d=a===0,h=a<0,f=e%2!==0;return{nextN:c,offset:u,isZero:d,isNeg:h,isNegF:f,offsetF:l}}function OP(t,e){if(!Array.isArray(t))throw new Error("array expected");t.forEach((n,r)=>{if(!(n instanceof e))throw new Error("invalid point at index "+r)})}function RP(t,e){if(!Array.isArray(t))throw new Error("array of scalars expected");t.forEach((n,r)=>{if(!e.isValid(n))throw new Error("invalid scalar at index "+r)})}const vu=new WeakMap,J0=new WeakMap;function Cu(t){return J0.get(t)||1}function mg(t){if(t!==Qi)throw new Error("invalid wNAF")}class xP{constructor(e,n){this.BASE=e.BASE,this.ZERO=e.ZERO,this.Fn=e.Fn,this.bits=n}_unsafeLadder(e,n,r=this.ZERO){let s=e;for(;n>Qi;)n&Js&&(r=r.add(s)),s=s.double(),n>>=Js;return r}precomputeWindow(e,n){const{windows:r,windowSize:s}=_u(n,this.bits),i=[];let o=e,a=o;for(let c=0;c<r;c++){a=o,i.push(a);for(let l=1;l<s;l++)a=a.add(o),i.push(a);o=a.double()}return i}wNAF(e,n,r){if(!this.Fn.isValid(r))throw new Error("invalid scalar");let s=this.ZERO,i=this.BASE;const o=_u(e,this.bits);for(let a=0;a<o.windows;a++){const{nextN:c,offset:l,isZero:u,isNeg:d,isNegF:h,offsetF:f}=gg(r,a,o);r=c,u?i=i.add(Zc(h,n[f])):s=s.add(Zc(d,n[l]))}return mg(r),{p:s,f:i}}wNAFUnsafe(e,n,r,s=this.ZERO){const i=_u(e,this.bits);for(let o=0;o<i.windows&&r!==Qi;o++){const{nextN:a,offset:c,isZero:l,isNeg:u}=gg(r,o,i);if(r=a,!l){const d=n[c];s=s.add(u?d.negate():d)}}return mg(r),s}getPrecomputes(e,n,r){let s=vu.get(n);return s||(s=this.precomputeWindow(n,e),e!==1&&(typeof r=="function"&&(s=r(s)),vu.set(n,s))),s}cached(e,n,r){const s=Cu(e);return this.wNAF(s,this.getPrecomputes(s,e,r),n)}unsafe(e,n,r,s){const i=Cu(e);return i===1?this._unsafeLadder(e,n,s):this.wNAFUnsafe(i,this.getPrecomputes(i,e,r),n,s)}createCache(e,n){Z0(n,this.bits),J0.set(e,n),vu.delete(e)}hasCache(e){return Cu(e)!==1}}function PP(t,e,n,r){let s=e,i=t.ZERO,o=t.ZERO;for(;n>Qi||r>Qi;)n&Js&&(i=i.add(s)),r&Js&&(o=o.add(s)),s=s.double(),n>>=Js,r>>=Js;return{p1:i,p2:o}}function DP(t,e,n,r){OP(n,t),RP(r,e);const s=n.length,i=r.length;if(s!==i)throw new Error("arrays of points and scalars must have equal length");const o=t.ZERO,a=F0(BigInt(s));let c=1;a>12?c=a-3:a>4?c=a-2:a>0&&(c=2);const l=Ra(c),u=new Array(Number(l)+1).fill(o),d=Math.floor((e.BITS-1)/c)*c;let h=o;for(let f=d;f>=0;f-=c){u.fill(o);for(let g=0;g<i;g++){const y=r[g],v=Number(y>>BigInt(f)&l);u[v]=u[v].add(n[g])}let p=o;for(let g=u.length-1,y=o;g>0;g--)y=y.add(u[g]),p=p.add(y);if(h=h.add(p),f!==0)for(let g=0;g<c;g++)h=h.double()}return h}function yg(t,e,n){if(e){if(e.ORDER!==t)throw new Error("Field.ORDER must match order: Fp == p, Fn == n");return IP(e),e}else return xs(t,{isLE:n})}function kP(t,e,n={},r){if(r===void 0&&(r=t==="edwards"),!e||typeof e!="object")throw new Error(`expected valid ${t} CURVE object`);for(const a of["p","n","h"]){const c=e[a];if(!(typeof c=="bigint"&&c>Qi))throw new Error(`CURVE.${a} must be positive bigint`)}const s=yg(e.p,n.Fp,r),i=yg(e.n,n.Fn,r),o=["Gx","Gy","a",t==="weierstrass"?"b":"d"];for(const a of o)if(!s.isValid(e[a]))throw new Error(`CURVE.${a} must be valid field element of CURVE.Fp`);return e=Object.freeze(Object.assign({},e)),{CURVE:e,Fp:s,Fn:i}}BigInt(0),BigInt(1),BigInt(2),BigInt(8),b0("HashToScalar-");const wo=BigInt(0),Ri=BigInt(1),ec=BigInt(2);function UP(t){return Al(t,{adjustScalarBytes:"function",powPminus2:"function"}),Object.freeze({...t})}function $P(t){const e=UP(t),{P:n,type:r,adjustScalarBytes:s,powPminus2:i,randomBytes:o}=e,a=r==="x25519";if(!a&&r!=="x448")throw new Error("invalid type");const c=o||_i,l=a?255:448,u=a?32:56,d=BigInt(a?9:5),h=BigInt(a?121665:39081),f=a?ec**BigInt(254):ec**BigInt(447),p=a?BigInt(8)*ec**BigInt(251)-Ri:BigInt(4)*ec**BigInt(445)-Ri,g=f+p+Ri,y=U=>An(U,n),v=A(d);function A(U){return Mh(y(U),u)}function E(U){const N=Ht("u coordinate",U,u);return a&&(N[31]&=127),y(Yc(N))}function C(U){return Yc(s(Ht("scalar",U,u)))}function O(U,N){const P=F(E(N),C(U));if(P===wo)throw new Error("invalid private or public key received");return A(P)}function k(U){return O(U,v)}function $(U,N,P){const _=y(U*(N-P));return N=y(N-_),P=y(P+_),{x_2:N,x_3:P}}function F(U,N){Dd("u",U,wo,n),Dd("scalar",N,f,g);const P=N,_=U;let b=Ri,I=wo,x=U,S=Ri,R=wo;for(let M=BigInt(l-1);M>=wo;M--){const te=P>>M&Ri;R^=te,{x_2:b,x_3:x}=$(R,b,x),{x_2:I,x_3:S}=$(R,I,S),R=te;const X=b+I,Z=y(X*X),de=b-I,fe=y(de*de),Ne=Z-fe,he=x+S,xe=x-S,nt=y(xe*X),ht=y(he*de),Et=nt+ht,Gt=nt-ht;x=y(Et*Et),S=y(_*y(Gt*Gt)),b=y(Z*fe),I=y(Ne*(Z+y(h*Ne)))}({x_2:b,x_3:x}=$(R,b,x)),{x_2:I,x_3:S}=$(R,I,S);const L=i(I);return y(b*L)}const D={secretKey:u,publicKey:u,seed:u},W=(U=c(u))=>(rr(U,D.seed),U);function H(U){const N=W(U);return{secretKey:N,publicKey:k(N)}}return{keygen:H,getSharedSecret:(U,N)=>O(U,N),getPublicKey:U=>k(U),scalarMult:O,scalarMultBase:k,utils:{randomSecretKey:W,randomPrivateKey:W},GuBytes:v.slice(),lengths:D}}const BP=BigInt(1),wg=BigInt(2),FP=BigInt(3),LP=BigInt(5),MP=BigInt(8),X0=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed"),jP={p:X0,n:BigInt("0x1000000000000000000000000000000014def9dea2f79cd65812631a5cf5d3ed"),h:MP,a:BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec"),d:BigInt("0x52036cee2b6ffe738cc740797779e89800700a4d4141d8ab75eb4dca135978a3"),Gx:BigInt("0x216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a"),Gy:BigInt("0x6666666666666666666666666666666666666666666666666666666666666658")};function WP(t){const e=BigInt(10),n=BigInt(20),r=BigInt(40),s=BigInt(80),i=X0,o=t*t%i*t%i,a=Gn(o,wg,i)*o%i,c=Gn(a,BP,i)*t%i,l=Gn(c,LP,i)*c%i,u=Gn(l,e,i)*l%i,d=Gn(u,n,i)*u%i,h=Gn(d,r,i)*d%i,f=Gn(h,s,i)*h%i,p=Gn(f,s,i)*h%i,g=Gn(p,e,i)*l%i;return{pow_p_5_8:Gn(g,wg,i)*t%i,b2:o}}function qP(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}const HP=xs(jP.p,{isLE:!0}),kd=(()=>{const t=HP.ORDER;return $P({P:t,type:"x25519",powPminus2:e=>{const{pow_p_5_8:n,b2:r}=WP(e);return An(Gn(n,FP,t)*r,t)},adjustScalarBytes:qP})})(),Eg=(t,e)=>(t+(t>=0?e:-e)/Q0)/e;function zP(t,e,n){const[[r,s],[i,o]]=e,a=Eg(o*t,n),c=Eg(-s*t,n);let l=t-a*r-c*i,u=-a*s-c*o;const d=l<Wr,h=u<Wr;d&&(l=-l),h&&(u=-u);const f=Ra(Math.ceil(F0(n)/2))+Vi;if(l<Wr||l>=f||u<Wr||u>=f)throw new Error("splitScalar (endomorphism): failed, k="+t);return{k1neg:d,k1:l,k2neg:h,k2:u}}function Ud(t){if(!["compact","recovered","der"].includes(t))throw new Error('Signature format must be "compact", "recovered", or "der"');return t}function Au(t,e){const n={};for(let r of Object.keys(e))n[r]=t[r]===void 0?e[r]:t[r];return Gc(n.lowS,"lowS"),Gc(n.prehash,"prehash"),n.format!==void 0&&Ud(n.format),n}class VP extends Error{constructor(e=""){super(e)}}const Lr={Err:VP,_tlv:{encode:(t,e)=>{const{Err:n}=Lr;if(t<0||t>256)throw new n("tlv.encode: wrong tag");if(e.length&1)throw new n("tlv.encode: unpadded data");const r=e.length/2,s=Qa(r);if(s.length/2&128)throw new n("tlv.encode: long form length too big");const i=r>127?Qa(s.length/2|128):"";return Qa(t)+i+s+e},decode(t,e){const{Err:n}=Lr;let r=0;if(t<0||t>256)throw new n("tlv.encode: wrong tag");if(e.length<2||e[r++]!==t)throw new n("tlv.decode: wrong tlv");const s=e[r++],i=!!(s&128);let o=0;if(!i)o=s;else{const c=s&127;if(!c)throw new n("tlv.decode(long): indefinite length not supported");if(c>4)throw new n("tlv.decode(long): byte length is too big");const l=e.subarray(r,r+c);if(l.length!==c)throw new n("tlv.decode: length bytes not complete");if(l[0]===0)throw new n("tlv.decode(long): zero leftmost byte");for(const u of l)o=o<<8|u;if(r+=c,o<128)throw new n("tlv.decode(long): not minimal encoding")}const a=e.subarray(r,r+o);if(a.length!==o)throw new n("tlv.decode: wrong value length");return{v:a,l:e.subarray(r+o)}}},_int:{encode(t){const{Err:e}=Lr;if(t<Wr)throw new e("integer: negative integers are not allowed");let n=Qa(t);if(Number.parseInt(n[0],16)&8&&(n="00"+n),n.length&1)throw new e("unexpected DER parsing assertion: unpadded hex");return n},decode(t){const{Err:e}=Lr;if(t[0]&128)throw new e("invalid signature integer: negative");if(t[0]===0&&!(t[1]&128))throw new e("invalid signature integer: unnecessary leading zero");return Cl(t)}},toSig(t){const{Err:e,_int:n,_tlv:r}=Lr,s=Ht("signature",t),{v:i,l:o}=r.decode(48,s);if(o.length)throw new e("invalid signature: left bytes after parsing");const{v:a,l:c}=r.decode(2,i),{v:l,l:u}=r.decode(2,c);if(u.length)throw new e("invalid signature: left bytes after parsing");return{r:n.decode(a),s:n.decode(l)}},hexFromSig(t){const{_tlv:e,_int:n}=Lr,r=e.encode(2,n.encode(t.r)),s=e.encode(2,n.encode(t.s)),i=r+s;return e.encode(48,i)}},Wr=BigInt(0),Vi=BigInt(1),Q0=BigInt(2),tc=BigInt(3),KP=BigInt(4);function Fi(t,e){const{BYTES:n}=t;let r;if(typeof e=="bigint")r=e;else{let s=Ht("private key",e);try{r=t.fromBytes(s)}catch{throw new Error(`invalid private key: expected ui8a of size ${n}, got ${typeof e}`)}}if(!t.isValidNot0(r))throw new Error("invalid private key: out of range [1..N-1]");return r}function GP(t,e={}){const n=kP("weierstrass",t,e),{Fp:r,Fn:s}=n;let i=n.CURVE;const{h:o,n:a}=i;Al(e,{},{allowInfinityPoint:"boolean",clearCofactor:"function",isTorsionFree:"function",fromBytes:"function",toBytes:"function",endo:"object",wrapPrivateKey:"boolean"});const{endo:c}=e;if(c&&(!r.is0(i.a)||typeof c.beta!="bigint"||!Array.isArray(c.basises)))throw new Error('invalid endo: expected "beta": bigint and "basises": array');const l=tE(r,s);function u(){if(!r.isOdd)throw new Error("compression is not supported: Field does not have .isOdd()")}function d(U,N,P){const{x:_,y:b}=N.toAffine(),I=r.toBytes(_);if(Gc(P,"isCompressed"),P){u();const x=!r.isOdd(b);return ps(eE(x),I)}else return ps(Uint8Array.of(4),I,r.toBytes(b))}function h(U){Ys(U,void 0,"Point");const{publicKey:N,publicKeyUncompressed:P}=l,_=U.length,b=U[0],I=U.subarray(1);if(_===N&&(b===2||b===3)){const x=r.fromBytes(I);if(!r.isValid(x))throw new Error("bad point: is not on curve, wrong x");const S=g(x);let R;try{R=r.sqrt(S)}catch(M){const te=M instanceof Error?": "+M.message:"";throw new Error("bad point: is not on curve, sqrt error"+te)}u();const L=r.isOdd(R);return(b&1)===1!==L&&(R=r.neg(R)),{x,y:R}}else if(_===P&&b===4){const x=r.BYTES,S=r.fromBytes(I.subarray(0,x)),R=r.fromBytes(I.subarray(x,x*2));if(!y(S,R))throw new Error("bad point: is not on curve");return{x:S,y:R}}else throw new Error(`bad point: got length ${_}, expected compressed=${N} or uncompressed=${P}`)}const f=e.toBytes||d,p=e.fromBytes||h;function g(U){const N=r.sqr(U),P=r.mul(N,U);return r.add(r.add(P,r.mul(U,i.a)),i.b)}function y(U,N){const P=r.sqr(N),_=g(U);return r.eql(P,_)}if(!y(i.Gx,i.Gy))throw new Error("bad curve params: generator point");const v=r.mul(r.pow(i.a,tc),KP),A=r.mul(r.sqr(i.b),BigInt(27));if(r.is0(r.add(v,A)))throw new Error("bad curve params: a or b");function E(U,N,P=!1){if(!r.isValid(N)||P&&r.is0(N))throw new Error(`bad point coordinate ${U}`);return N}function C(U){if(!(U instanceof D))throw new Error("ProjectivePoint expected")}function O(U){if(!c||!c.basises)throw new Error("no endo");return zP(U,c.basises,s.ORDER)}const k=hg((U,N)=>{const{X:P,Y:_,Z:b}=U;if(r.eql(b,r.ONE))return{x:P,y:_};const I=U.is0();N==null&&(N=I?r.ONE:r.inv(b));const x=r.mul(P,N),S=r.mul(_,N),R=r.mul(b,N);if(I)return{x:r.ZERO,y:r.ZERO};if(!r.eql(R,r.ONE))throw new Error("invZ was invalid");return{x,y:S}}),$=hg(U=>{if(U.is0()){if(e.allowInfinityPoint&&!r.is0(U.Y))return;throw new Error("bad point: ZERO")}const{x:N,y:P}=U.toAffine();if(!r.isValid(N)||!r.isValid(P))throw new Error("bad point: x or y not field elements");if(!y(N,P))throw new Error("bad point: equation left != right");if(!U.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});function F(U,N,P,_,b){return P=new D(r.mul(P.X,U),P.Y,P.Z),N=Zc(_,N),P=Zc(b,P),N.add(P)}class D{constructor(N,P,_){this.X=E("x",N),this.Y=E("y",P,!0),this.Z=E("z",_),Object.freeze(this)}static CURVE(){return i}static fromAffine(N){const{x:P,y:_}=N||{};if(!N||!r.isValid(P)||!r.isValid(_))throw new Error("invalid affine point");if(N instanceof D)throw new Error("projective point not allowed");return r.is0(P)&&r.is0(_)?D.ZERO:new D(P,_,r.ONE)}static fromBytes(N){const P=D.fromAffine(p(Ys(N,void 0,"point")));return P.assertValidity(),P}static fromHex(N){return D.fromBytes(Ht("pointHex",N))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(N=8,P=!0){return H.createCache(this,N),P||this.multiply(tc),this}assertValidity(){$(this)}hasEvenY(){const{y:N}=this.toAffine();if(!r.isOdd)throw new Error("Field doesn't support isOdd");return!r.isOdd(N)}equals(N){C(N);const{X:P,Y:_,Z:b}=this,{X:I,Y:x,Z:S}=N,R=r.eql(r.mul(P,S),r.mul(I,b)),L=r.eql(r.mul(_,S),r.mul(x,b));return R&&L}negate(){return new D(this.X,r.neg(this.Y),this.Z)}double(){const{a:N,b:P}=i,_=r.mul(P,tc),{X:b,Y:I,Z:x}=this;let S=r.ZERO,R=r.ZERO,L=r.ZERO,M=r.mul(b,b),te=r.mul(I,I),X=r.mul(x,x),Z=r.mul(b,I);return Z=r.add(Z,Z),L=r.mul(b,x),L=r.add(L,L),S=r.mul(N,L),R=r.mul(_,X),R=r.add(S,R),S=r.sub(te,R),R=r.add(te,R),R=r.mul(S,R),S=r.mul(Z,S),L=r.mul(_,L),X=r.mul(N,X),Z=r.sub(M,X),Z=r.mul(N,Z),Z=r.add(Z,L),L=r.add(M,M),M=r.add(L,M),M=r.add(M,X),M=r.mul(M,Z),R=r.add(R,M),X=r.mul(I,x),X=r.add(X,X),M=r.mul(X,Z),S=r.sub(S,M),L=r.mul(X,te),L=r.add(L,L),L=r.add(L,L),new D(S,R,L)}add(N){C(N);const{X:P,Y:_,Z:b}=this,{X:I,Y:x,Z:S}=N;let R=r.ZERO,L=r.ZERO,M=r.ZERO;const te=i.a,X=r.mul(i.b,tc);let Z=r.mul(P,I),de=r.mul(_,x),fe=r.mul(b,S),Ne=r.add(P,_),he=r.add(I,x);Ne=r.mul(Ne,he),he=r.add(Z,de),Ne=r.sub(Ne,he),he=r.add(P,b);let xe=r.add(I,S);return he=r.mul(he,xe),xe=r.add(Z,fe),he=r.sub(he,xe),xe=r.add(_,b),R=r.add(x,S),xe=r.mul(xe,R),R=r.add(de,fe),xe=r.sub(xe,R),M=r.mul(te,he),R=r.mul(X,fe),M=r.add(R,M),R=r.sub(de,M),M=r.add(de,M),L=r.mul(R,M),de=r.add(Z,Z),de=r.add(de,Z),fe=r.mul(te,fe),he=r.mul(X,he),de=r.add(de,fe),fe=r.sub(Z,fe),fe=r.mul(te,fe),he=r.add(he,fe),Z=r.mul(de,he),L=r.add(L,Z),Z=r.mul(xe,he),R=r.mul(Ne,R),R=r.sub(R,Z),Z=r.mul(Ne,de),M=r.mul(xe,M),M=r.add(M,Z),new D(R,L,M)}subtract(N){return this.add(N.negate())}is0(){return this.equals(D.ZERO)}multiply(N){const{endo:P}=e;if(!s.isValidNot0(N))throw new Error("invalid scalar: out of range");let _,b;const I=x=>H.cached(this,x,S=>bu(D,S));if(P){const{k1neg:x,k1:S,k2neg:R,k2:L}=O(N),{p:M,f:te}=I(S),{p:X,f:Z}=I(L);b=te.add(Z),_=F(P.beta,M,X,x,R)}else{const{p:x,f:S}=I(N);_=x,b=S}return bu(D,[_,b])[0]}multiplyUnsafe(N){const{endo:P}=e,_=this;if(!s.isValid(N))throw new Error("invalid scalar: out of range");if(N===Wr||_.is0())return D.ZERO;if(N===Vi)return _;if(H.hasCache(this))return this.multiply(N);if(P){const{k1neg:b,k1:I,k2neg:x,k2:S}=O(N),{p1:R,p2:L}=PP(D,_,I,S);return F(P.beta,R,L,b,x)}else return H.unsafe(_,N)}multiplyAndAddUnsafe(N,P,_){const b=this.multiplyUnsafe(P).add(N.multiplyUnsafe(_));return b.is0()?void 0:b}toAffine(N){return k(this,N)}isTorsionFree(){const{isTorsionFree:N}=e;return o===Vi?!0:N?N(D,this):H.unsafe(this,a).is0()}clearCofactor(){const{clearCofactor:N}=e;return o===Vi?this:N?N(D,this):this.multiplyUnsafe(o)}isSmallOrder(){return this.multiplyUnsafe(o).is0()}toBytes(N=!0){return Gc(N,"isCompressed"),this.assertValidity(),f(D,this,N)}toHex(N=!0){return zi(this.toBytes(N))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}get px(){return this.X}get py(){return this.X}get pz(){return this.Z}toRawBytes(N=!0){return this.toBytes(N)}_setWindowSize(N){this.precompute(N)}static normalizeZ(N){return bu(D,N)}static msm(N,P){return DP(D,s,N,P)}static fromPrivateKey(N){return D.BASE.multiply(Fi(s,N))}}D.BASE=new D(i.Gx,i.Gy,r.ONE),D.ZERO=new D(r.ZERO,r.ONE,r.ZERO),D.Fp=r,D.Fn=s;const W=s.BITS,H=new xP(D,e.endo?Math.ceil(W/2):W);return D.BASE.precompute(8),D}function eE(t){return Uint8Array.of(t?2:3)}function tE(t,e){return{secretKey:e.BYTES,publicKey:1+t.BYTES,publicKeyUncompressed:1+2*t.BYTES,publicKeyHasPrefix:!0,signature:2*e.BYTES}}function YP(t,e={}){const{Fn:n}=t,r=e.randomBytes||_i,s=Object.assign(tE(t.Fp,n),{seed:Y0(n.ORDER)});function i(h){try{return!!Fi(n,h)}catch{return!1}}function o(h,f){const{publicKey:p,publicKeyUncompressed:g}=s;try{const y=h.length;return f===!0&&y!==p||f===!1&&y!==g?!1:!!t.fromBytes(h)}catch{return!1}}function a(h=r(s.seed)){return TP(Ys(h,s.seed,"seed"),n.ORDER)}function c(h,f=!0){return t.BASE.multiply(Fi(n,h)).toBytes(f)}function l(h){const f=a(h);return{secretKey:f,publicKey:c(f)}}function u(h){if(typeof h=="bigint")return!1;if(h instanceof t)return!0;const{secretKey:f,publicKey:p,publicKeyUncompressed:g}=s;if(n.allowedLengths||f===p)return;const y=Ht("key",h).length;return y===p||y===g}function d(h,f,p=!0){if(u(h)===!0)throw new Error("first arg must be private key");if(u(f)===!1)throw new Error("second arg must be public key");const g=Fi(n,h);return t.fromHex(f).multiply(g).toBytes(p)}return Object.freeze({getPublicKey:c,getSharedSecret:d,keygen:l,Point:t,utils:{isValidSecretKey:i,isValidPublicKey:o,randomSecretKey:a,isValidPrivateKey:i,randomPrivateKey:a,normPrivateKeyToScalar:h=>Fi(n,h),precompute(h=8,f=t.BASE){return f.precompute(h,!1)}},lengths:s})}function ZP(t,e,n={}){yl(e),Al(n,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"});const r=n.randomBytes||_i,s=n.hmac||((P,..._)=>_l(e,P,ps(..._))),{Fp:i,Fn:o}=t,{ORDER:a,BITS:c}=o,{keygen:l,getPublicKey:u,getSharedSecret:d,utils:h,lengths:f}=YP(t,n),p={prehash:!1,lowS:typeof n.lowS=="boolean"?n.lowS:!1,format:void 0,extraEntropy:!1},g="compact";function y(P){const _=a>>Vi;return P>_}function v(P,_){if(!o.isValidNot0(_))throw new Error(`invalid signature ${P}: out of range 1..Point.Fn.ORDER`);return _}function A(P,_){Ud(_);const b=f.signature,I=_==="compact"?b:_==="recovered"?b+1:void 0;return Ys(P,I,`${_} signature`)}class E{constructor(_,b,I){this.r=v("r",_),this.s=v("s",b),I!=null&&(this.recovery=I),Object.freeze(this)}static fromBytes(_,b=g){A(_,b);let I;if(b==="der"){const{r:L,s:M}=Lr.toSig(Ys(_));return new E(L,M)}b==="recovered"&&(I=_[0],b="compact",_=_.subarray(1));const x=o.BYTES,S=_.subarray(0,x),R=_.subarray(x,x*2);return new E(o.fromBytes(S),o.fromBytes(R),I)}static fromHex(_,b){return this.fromBytes(Vc(_),b)}addRecoveryBit(_){return new E(this.r,this.s,_)}recoverPublicKey(_){const b=i.ORDER,{r:I,s:x,recovery:S}=this;if(S==null||![0,1,2,3].includes(S))throw new Error("recovery id invalid");if(a*Q0<b&&S>1)throw new Error("recovery id is ambiguous for h>1 curve");const R=S===2||S===3?I+a:I;if(!i.isValid(R))throw new Error("recovery id 2 or 3 invalid");const L=i.toBytes(R),M=t.fromBytes(ps(eE((S&1)===0),L)),te=o.inv(R),X=O(Ht("msgHash",_)),Z=o.create(-X*te),de=o.create(x*te),fe=t.BASE.multiplyUnsafe(Z).add(M.multiplyUnsafe(de));if(fe.is0())throw new Error("point at infinify");return fe.assertValidity(),fe}hasHighS(){return y(this.s)}toBytes(_=g){if(Ud(_),_==="der")return Vc(Lr.hexFromSig(this));const b=o.toBytes(this.r),I=o.toBytes(this.s);if(_==="recovered"){if(this.recovery==null)throw new Error("recovery bit must be present");return ps(Uint8Array.of(this.recovery),b,I)}return ps(b,I)}toHex(_){return zi(this.toBytes(_))}assertValidity(){}static fromCompact(_){return E.fromBytes(Ht("sig",_),"compact")}static fromDER(_){return E.fromBytes(Ht("sig",_),"der")}normalizeS(){return this.hasHighS()?new E(this.r,o.neg(this.s),this.recovery):this}toDERRawBytes(){return this.toBytes("der")}toDERHex(){return zi(this.toBytes("der"))}toCompactRawBytes(){return this.toBytes("compact")}toCompactHex(){return zi(this.toBytes("compact"))}}const C=n.bits2int||function(P){if(P.length>8192)throw new Error("input is too large");const _=Cl(P),b=P.length*8-c;return b>0?_>>BigInt(b):_},O=n.bits2int_modN||function(P){return o.create(C(P))},k=Ra(c);function $(P){return Dd("num < 2^"+c,P,Wr,k),o.toBytes(P)}function F(P,_){return Ys(P,void 0,"message"),_?Ys(e(P),void 0,"prehashed message"):P}function D(P,_,b){if(["recovered","canonical"].some(de=>de in b))throw new Error("sign() legacy options not supported");const{lowS:I,prehash:x,extraEntropy:S}=Au(b,p);P=F(P,x);const R=O(P),L=Fi(o,_),M=[$(L),$(R)];if(S!=null&&S!==!1){const de=S===!0?r(f.secretKey):S;M.push(Ht("extraEntropy",de))}const te=ps(...M),X=R;function Z(de){const fe=C(de);if(!o.isValidNot0(fe))return;const Ne=o.inv(fe),he=t.BASE.multiply(fe).toAffine(),xe=o.create(he.x);if(xe===Wr)return;const nt=o.create(Ne*o.create(X+xe*L));if(nt===Wr)return;let ht=(he.x===xe?0:2)|Number(he.y&Vi),Et=nt;return I&&y(nt)&&(Et=o.neg(nt),ht^=1),new E(xe,Et,ht)}return{seed:te,k2sig:Z}}function W(P,_,b={}){P=Ht("message",P);const{seed:I,k2sig:x}=D(P,_,b);return EP(e.outputLen,o.BYTES,s)(I,x)}function H(P){let _;const b=typeof P=="string"||ml(P),I=!b&&P!==null&&typeof P=="object"&&typeof P.r=="bigint"&&typeof P.s=="bigint";if(!b&&!I)throw new Error("invalid signature, expected Uint8Array, hex string or Signature instance");if(I)_=new E(P.r,P.s);else if(b){try{_=E.fromBytes(Ht("sig",P),"der")}catch(x){if(!(x instanceof Lr.Err))throw x}if(!_)try{_=E.fromBytes(Ht("sig",P),"compact")}catch{return!1}}return _||!1}function U(P,_,b,I={}){const{lowS:x,prehash:S,format:R}=Au(I,p);if(b=Ht("publicKey",b),_=F(Ht("message",_),S),"strict"in I)throw new Error("options.strict was renamed to lowS");const L=R===void 0?H(P):E.fromBytes(Ht("sig",P),R);if(L===!1)return!1;try{const M=t.fromBytes(b);if(x&&L.hasHighS())return!1;const{r:te,s:X}=L,Z=O(_),de=o.inv(X),fe=o.create(Z*de),Ne=o.create(te*de),he=t.BASE.multiplyUnsafe(fe).add(M.multiplyUnsafe(Ne));return he.is0()?!1:o.create(he.x)===te}catch{return!1}}function N(P,_,b={}){const{prehash:I}=Au(b,p);return _=F(_,I),E.fromBytes(P,"recovered").recoverPublicKey(_).toBytes()}return Object.freeze({keygen:l,getPublicKey:u,getSharedSecret:d,utils:h,lengths:f,Point:t,sign:W,verify:U,recoverPublicKey:N,Signature:E,hash:e})}function JP(t){const e={a:t.a,b:t.b,p:t.Fp.ORDER,n:t.n,h:t.h,Gx:t.Gx,Gy:t.Gy},n=t.Fp;let r=t.allowedPrivateKeyLengths?Array.from(new Set(t.allowedPrivateKeyLengths.map(o=>Math.ceil(o/2)))):void 0;const s=xs(e.n,{BITS:t.nBitLength,allowedLengths:r,modFromBytes:t.wrapPrivateKey}),i={Fp:n,Fn:s,allowInfinityPoint:t.allowInfinityPoint,endo:t.endo,isTorsionFree:t.isTorsionFree,clearCofactor:t.clearCofactor,fromBytes:t.fromBytes,toBytes:t.toBytes};return{CURVE:e,curveOpts:i}}function XP(t){const{CURVE:e,curveOpts:n}=JP(t),r={hmac:t.hmac,randomBytes:t.randomBytes,lowS:t.lowS,bits2int:t.bits2int,bits2int_modN:t.bits2int_modN};return{CURVE:e,curveOpts:n,hash:t.hash,ecdsaOpts:r}}function QP(t,e){const n=e.Point;return Object.assign({},e,{ProjectivePoint:n,CURVE:Object.assign({},t,K0(n.Fn.ORDER,n.Fn.BITS))})}function eD(t){const{CURVE:e,curveOpts:n,hash:r,ecdsaOpts:s}=XP(t),i=GP(e,n),o=ZP(i,r,s);return QP(t,o)}function $d(t,e){const n=r=>eD({...t,hash:r});return{...n(e),create:n}}const nE={p:BigInt("0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff"),n:BigInt("0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551"),h:BigInt(1),a:BigInt("0xffffffff00000001000000000000000000000000fffffffffffffffffffffffc"),b:BigInt("0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b"),Gx:BigInt("0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296"),Gy:BigInt("0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5")},rE={p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff"),n:BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973"),h:BigInt(1),a:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc"),b:BigInt("0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef"),Gx:BigInt("0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7"),Gy:BigInt("0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f")},sE={p:BigInt("0x1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),n:BigInt("0x01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409"),h:BigInt(1),a:BigInt("0x1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc"),b:BigInt("0x0051953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f00"),Gx:BigInt("0x00c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66"),Gy:BigInt("0x011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650")},tD=xs(nE.p),nD=xs(rE.p),rD=xs(sE.p),sD=$d({...nE,Fp:tD,lowS:!1},El);$d({...rE,Fp:nD,lowS:!1},c3),$d({...sE,Fp:rD,lowS:!1,allowedPrivateKeyLengths:[130,131,132]},a3);const iD=sD,iE="base10",tn="base16",fn="base64pad",gs="base64url",xa="utf8",oE=0,Vr=1,Pa=2,oD=0,bg=1,$o=12,Wh=32;function aD(){const t=kd.utils.randomPrivateKey(),e=kd.getPublicKey(t);return{privateKey:mn(t,tn),publicKey:mn(e,tn)}}function Bd(){const t=_i(Wh);return mn(t,tn)}function cD(t,e){const n=kd.getSharedSecret(jn(t,tn),jn(e,tn)),r=yP(vl,n,void 0,void 0,Wh);return mn(r,tn)}function yc(t){const e=vl(jn(t,tn));return mn(e,tn)}function Bn(t){const e=vl(jn(t,xa));return mn(e,tn)}function aE(t){return jn(`${t}`,iE)}function hi(t){return Number(mn(t,iE))}function cE(t){return t.replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function lE(t){const e=t.replace(/-/g,"+").replace(/_/g,"/"),n=(4-e.length%4)%4;return e+"=".repeat(n)}function lD(t){const e=aE(typeof t.type<"u"?t.type:oE);if(hi(e)===Vr&&typeof t.senderPublicKey>"u")throw new Error("Missing sender public key for type 1 envelope");const n=typeof t.senderPublicKey<"u"?jn(t.senderPublicKey,tn):void 0,r=typeof t.iv<"u"?jn(t.iv,tn):_i($o),s=jn(t.symKey,tn),i=U0(s,r).encrypt(jn(t.message,xa)),o=uE({type:e,sealed:i,iv:r,senderPublicKey:n});return t.encoding===gs?cE(o):o}function uD(t){const e=jn(t.symKey,tn),{sealed:n,iv:r}=ha({encoded:t.encoded,encoding:t.encoding}),s=U0(e,r).decrypt(n);if(s===null)throw new Error("Failed to decrypt");return mn(s,xa)}function dD(t,e){const n=aE(Pa),r=_i($o),s=jn(t,xa),i=uE({type:n,sealed:s,iv:r});return e===gs?cE(i):i}function hD(t,e){const{sealed:n}=ha({encoded:t,encoding:e});return mn(n,xa)}function uE(t){if(hi(t.type)===Pa)return mn(Uo([t.type,t.sealed]),fn);if(hi(t.type)===Vr){if(typeof t.senderPublicKey>"u")throw new Error("Missing sender public key for type 1 envelope");return mn(Uo([t.type,t.senderPublicKey,t.iv,t.sealed]),fn)}return mn(Uo([t.type,t.iv,t.sealed]),fn)}function ha(t){const e=(t.encoding||fn)===gs?lE(t.encoded):t.encoded,n=jn(e,fn),r=n.slice(oD,bg),s=bg;if(hi(r)===Vr){const c=s+Wh,l=c+$o,u=n.slice(s,c),d=n.slice(c,l),h=n.slice(l);return{type:r,sealed:h,iv:d,senderPublicKey:u}}if(hi(r)===Pa){const c=n.slice(s),l=_i($o);return{type:r,sealed:c,iv:l}}const i=s+$o,o=n.slice(s,i),a=n.slice(i);return{type:r,sealed:a,iv:o}}function fD(t,e){const n=ha({encoded:t,encoding:e==null?void 0:e.encoding});return dE({type:hi(n.type),senderPublicKey:typeof n.senderPublicKey<"u"?mn(n.senderPublicKey,tn):void 0,receiverPublicKey:e==null?void 0:e.receiverPublicKey})}function dE(t){const e=(t==null?void 0:t.type)||oE;if(e===Vr){if(typeof(t==null?void 0:t.senderPublicKey)>"u")throw new Error("missing sender public key");if(typeof(t==null?void 0:t.receiverPublicKey)>"u")throw new Error("missing receiver public key")}return{type:e,senderPublicKey:t==null?void 0:t.senderPublicKey,receiverPublicKey:t==null?void 0:t.receiverPublicKey}}function _g(t){return t.type===Vr&&typeof t.senderPublicKey=="string"&&typeof t.receiverPublicKey=="string"}function vg(t){return t.type===Pa}function pD(t){const e=Be.from(t.x,"base64"),n=Be.from(t.y,"base64");return Uo([new Uint8Array([4]),e,n])}function gD(t,e){const[n,r,s]=t.split("."),i=Be.from(lE(s),"base64");if(i.length!==64)throw new Error("Invalid signature length");const o=i.slice(0,32),a=i.slice(32,64),c=`${n}.${r}`,l=vl(c),u=pD(e);if(!iD.verify(Uo([o,a]),l,u))throw new Error("Invalid signature");return gd(t).payload}const mD="irn";function Jc(t){return(t==null?void 0:t.relay)||{protocol:mD}}function Li(t){const e=WR[t];if(typeof e>"u")throw new Error(`Relay Protocol not supported: ${t}`);return e}var yD=Object.defineProperty,wD=Object.defineProperties,ED=Object.getOwnPropertyDescriptors,Cg=Object.getOwnPropertySymbols,bD=Object.prototype.hasOwnProperty,_D=Object.prototype.propertyIsEnumerable,Ag=(t,e,n)=>e in t?yD(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Su=(t,e)=>{for(var n in e||(e={}))bD.call(e,n)&&Ag(t,n,e[n]);if(Cg)for(var n of Cg(e))_D.call(e,n)&&Ag(t,n,e[n]);return t},vD=(t,e)=>wD(t,ED(e));function CD(t,e="-"){const n={},r="relay"+e;return Object.keys(t).forEach(s=>{if(s.startsWith(r)){const i=s.replace(r,""),o=t[s];n[i]=o}}),n}function Sg(t){if(!t.includes("wc:")){const l=p0(t);l!=null&&l.includes("wc:")&&(t=l)}t=t.includes("wc://")?t.replace("wc://",""):t,t=t.includes("wc:")?t.replace("wc:",""):t;const e=t.indexOf(":"),n=t.indexOf("?")!==-1?t.indexOf("?"):void 0,r=t.substring(0,e),s=t.substring(e+1,n).split("@"),i=typeof n<"u"?t.substring(n):"",o=new URLSearchParams(i),a=Object.fromEntries(o.entries()),c=typeof a.methods=="string"?a.methods.split(","):void 0;return{protocol:r,topic:AD(s[0]),version:parseInt(s[1],10),symKey:a.symKey,relay:CD(a),methods:c,expiryTimestamp:a.expiryTimestamp?parseInt(a.expiryTimestamp,10):void 0}}function AD(t){return t.startsWith("//")?t.substring(2):t}function SD(t,e="-"){const n="relay",r={};return Object.keys(t).forEach(s=>{const i=s,o=n+e+i;t[i]&&(r[o]=t[i])}),r}function Ig(t){const e=new URLSearchParams,n=Su(Su(vD(Su({},SD(t.relay)),{symKey:t.symKey}),t.expiryTimestamp&&{expiryTimestamp:t.expiryTimestamp.toString()}),t.methods&&{methods:t.methods.join(",")});return Object.entries(n).sort(([r],[s])=>r.localeCompare(s)).forEach(([r,s])=>{s!==void 0&&e.append(r,String(s))}),`${t.protocol}:${t.topic}@${t.version}?${e}`}function nc(t,e,n){return`${t}?wc_ev=${n}&topic=${e}`}var ID=Object.defineProperty,ND=Object.defineProperties,TD=Object.getOwnPropertyDescriptors,Ng=Object.getOwnPropertySymbols,OD=Object.prototype.hasOwnProperty,RD=Object.prototype.propertyIsEnumerable,Tg=(t,e,n)=>e in t?ID(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,xD=(t,e)=>{for(var n in e||(e={}))OD.call(e,n)&&Tg(t,n,e[n]);if(Ng)for(var n of Ng(e))RD.call(e,n)&&Tg(t,n,e[n]);return t},PD=(t,e)=>ND(t,TD(e));function oo(t){const e=[];return t.forEach(n=>{const[r,s]=n.split(":");e.push(`${r}:${s}`)}),e}function hE(t){const e=[];return Object.values(t).forEach(n=>{e.push(...oo(n.accounts))}),[...new Set(e)]}function DD(t){const e=[];return Object.values(t).forEach(n=>{e.push(...n.methods)}),[...new Set(e)]}function kD(t){const e=[];return Object.values(t).forEach(n=>{e.push(...n.events)}),[...new Set(e)]}function UD(t,e){const n=[];return Object.values(t).forEach(r=>{oo(r.accounts).includes(e)&&n.push(...r.methods)}),n}function $D(t,e){const n=[];return Object.values(t).forEach(r=>{oo(r.accounts).includes(e)&&n.push(...r.events)}),n}function Sl(t){return t.includes(":")}function Mi(t){return Sl(t)?t.split(":")[0]:t}function Og(t){var e,n,r;const s={};if(!br(t))return s;for(const[i,o]of Object.entries(t)){const a=Sl(i)?[i]:o.chains,c=o.methods||[],l=o.events||[],u=Mi(i);s[u]=PD(xD({},s[u]),{chains:Er(a,(e=s[u])==null?void 0:e.chains),methods:Er(c,(n=s[u])==null?void 0:n.methods),events:Er(l,(r=s[u])==null?void 0:r.events)})}return s}function BD(t){const e={};return t==null||t.forEach(n=>{var r;const[s,i]=n.split(":");e[s]||(e[s]={accounts:[],chains:[],events:[],methods:[]}),e[s].accounts.push(n),(r=e[s].chains)==null||r.push(`${s}:${i}`)}),e}function Rg(t,e){e=e.map(r=>r.replace("did:pkh:",""));const n=BD(e);for(const[r,s]of Object.entries(n))s.methods?s.methods=Er(s.methods,t):s.methods=t,s.events=["chainChanged","accountsChanged"];return n}function FD(t,e){var n,r,s,i,o,a;const c=Og(t),l=Og(e),u={},d=Object.keys(c).concat(Object.keys(l));for(const h of d)u[h]={chains:Er((n=c[h])==null?void 0:n.chains,(r=l[h])==null?void 0:r.chains),methods:Er((s=c[h])==null?void 0:s.methods,(i=l[h])==null?void 0:i.methods),events:Er((o=c[h])==null?void 0:o.events,(a=l[h])==null?void 0:a.events)};return u}const LD={INVALID_METHOD:{message:"Invalid method.",code:1001},INVALID_EVENT:{message:"Invalid event.",code:1002},INVALID_UPDATE_REQUEST:{message:"Invalid update request.",code:1003},INVALID_EXTEND_REQUEST:{message:"Invalid extend request.",code:1004},INVALID_SESSION_SETTLE_REQUEST:{message:"Invalid session settle request.",code:1005},UNAUTHORIZED_METHOD:{message:"Unauthorized method.",code:3001},UNAUTHORIZED_EVENT:{message:"Unauthorized event.",code:3002},UNAUTHORIZED_UPDATE_REQUEST:{message:"Unauthorized update request.",code:3003},UNAUTHORIZED_EXTEND_REQUEST:{message:"Unauthorized extend request.",code:3004},USER_REJECTED:{message:"User rejected.",code:5e3},USER_REJECTED_CHAINS:{message:"User rejected chains.",code:5001},USER_REJECTED_METHODS:{message:"User rejected methods.",code:5002},USER_REJECTED_EVENTS:{message:"User rejected events.",code:5003},UNSUPPORTED_CHAINS:{message:"Unsupported chains.",code:5100},UNSUPPORTED_METHODS:{message:"Unsupported methods.",code:5101},UNSUPPORTED_EVENTS:{message:"Unsupported events.",code:5102},UNSUPPORTED_ACCOUNTS:{message:"Unsupported accounts.",code:5103},UNSUPPORTED_NAMESPACE_KEY:{message:"Unsupported namespace key.",code:5104},USER_DISCONNECTED:{message:"User disconnected.",code:6e3},SESSION_SETTLEMENT_FAILED:{message:"Session settlement failed.",code:7e3},WC_METHOD_UNSUPPORTED:{message:"Unsupported wc_ method.",code:10001}},MD={NOT_INITIALIZED:{message:"Not initialized.",code:1},NO_MATCHING_KEY:{message:"No matching key.",code:2},RESTORE_WILL_OVERRIDE:{message:"Restore will override.",code:3},RESUBSCRIBED:{message:"Resubscribed.",code:4},MISSING_OR_INVALID:{message:"Missing or invalid.",code:5},EXPIRED:{message:"Expired.",code:6},UNKNOWN_TYPE:{message:"Unknown type.",code:7},MISMATCHED_TOPIC:{message:"Mismatched topic.",code:8},NON_CONFORMING_NAMESPACES:{message:"Non conforming namespaces.",code:9}};function Y(t,e){const{message:n,code:r}=MD[t];return{message:e?`${n} ${e}`:n,code:r}}function et(t,e){const{message:n,code:r}=LD[t];return{message:e?`${n} ${e}`:n,code:r}}function Kr(t,e){return Array.isArray(t)?typeof e<"u"&&t.length?t.every(e):!0:!1}function br(t){return Object.getPrototypeOf(t)===Object.prototype&&Object.keys(t).length}function yt(t){return typeof t>"u"}function dt(t,e){return e&&yt(t)?!0:typeof t=="string"&&!!t.trim().length}function qh(t,e){return e&&yt(t)?!0:typeof t=="number"&&!isNaN(t)}function jD(t,e){const{requiredNamespaces:n}=e,r=Object.keys(t.namespaces),s=Object.keys(n);let i=!0;return Gs(s,r)?(r.forEach(o=>{const{accounts:a,methods:c,events:l}=t.namespaces[o],u=oo(a),d=n[o];(!Gs(l0(o,d),u)||!Gs(d.methods,c)||!Gs(d.events,l))&&(i=!1)}),i):!1}function Xc(t){return dt(t,!1)&&t.includes(":")?t.split(":").length===2:!1}function WD(t){if(dt(t,!1)&&t.includes(":")){const e=t.split(":");if(e.length===3){const n=e[0]+":"+e[1];return!!e[2]&&Xc(n)}}return!1}function qD(t){function e(n){try{return typeof new URL(n)<"u"}catch{return!1}}try{if(dt(t,!1)){if(e(t))return!0;const n=p0(t);return e(n)}}catch{}return!1}function HD(t){var e;return(e=t==null?void 0:t.proposer)==null?void 0:e.publicKey}function zD(t){return t==null?void 0:t.topic}function VD(t,e){let n=null;return dt(t==null?void 0:t.publicKey,!1)||(n=Y("MISSING_OR_INVALID",`${e} controller public key should be a string`)),n}function xg(t){let e=!0;return Kr(t)?t.length&&(e=t.every(n=>dt(n,!1))):e=!1,e}function KD(t,e,n){let r=null;return Kr(e)&&e.length?e.forEach(s=>{r||Xc(s)||(r=et("UNSUPPORTED_CHAINS",`${n}, chain ${s} should be a string and conform to "namespace:chainId" format`))}):Xc(t)||(r=et("UNSUPPORTED_CHAINS",`${n}, chains must be defined as "namespace:chainId" e.g. "eip155:1": {...} in the namespace key OR as an array of CAIP-2 chainIds e.g. eip155: { chains: ["eip155:1", "eip155:5"] }`)),r}function GD(t,e,n){let r=null;return Object.entries(t).forEach(([s,i])=>{if(r)return;const o=KD(s,l0(s,i),`${e} ${n}`);o&&(r=o)}),r}function YD(t,e){let n=null;return Kr(t)?t.forEach(r=>{n||WD(r)||(n=et("UNSUPPORTED_ACCOUNTS",`${e}, account ${r} should be a string and conform to "namespace:chainId:address" format`))}):n=et("UNSUPPORTED_ACCOUNTS",`${e}, accounts should be an array of strings conforming to "namespace:chainId:address" format`),n}function ZD(t,e){let n=null;return Object.values(t).forEach(r=>{if(n)return;const s=YD(r==null?void 0:r.accounts,`${e} namespace`);s&&(n=s)}),n}function JD(t,e){let n=null;return xg(t==null?void 0:t.methods)?xg(t==null?void 0:t.events)||(n=et("UNSUPPORTED_EVENTS",`${e}, events should be an array of strings or empty array for no events`)):n=et("UNSUPPORTED_METHODS",`${e}, methods should be an array of strings or empty array for no methods`),n}function fE(t,e){let n=null;return Object.values(t).forEach(r=>{if(n)return;const s=JD(r,`${e}, namespace`);s&&(n=s)}),n}function XD(t,e,n){let r=null;if(t&&br(t)){const s=fE(t,e);s&&(r=s);const i=GD(t,e,n);i&&(r=i)}else r=Y("MISSING_OR_INVALID",`${e}, ${n} should be an object with data`);return r}function Iu(t,e){let n=null;if(t&&br(t)){const r=fE(t,e);r&&(n=r);const s=ZD(t,e);s&&(n=s)}else n=Y("MISSING_OR_INVALID",`${e}, namespaces should be an object with data`);return n}function pE(t){return dt(t.protocol,!0)}function QD(t,e){let n=!1;return e&&!t?n=!0:t&&Kr(t)&&t.length&&t.forEach(r=>{n=pE(r)}),n}function ek(t){return typeof t=="number"}function ln(t){return typeof t<"u"&&typeof t!==null}function tk(t){return!(!t||typeof t!="object"||!t.code||!qh(t.code,!1)||!t.message||!dt(t.message,!1))}function nk(t){return!(yt(t)||!dt(t.method,!1))}function rk(t){return!(yt(t)||yt(t.result)&&yt(t.error)||!qh(t.id,!1)||!dt(t.jsonrpc,!1))}function sk(t){return!(yt(t)||!dt(t.name,!1))}function Pg(t,e){return!(!Xc(e)||!hE(t).includes(e))}function ik(t,e,n){return dt(n,!1)?UD(t,e).includes(n):!1}function ok(t,e,n){return dt(n,!1)?$D(t,e).includes(n):!1}function Dg(t,e,n){let r=null;const s=ak(t),i=ck(e),o=Object.keys(s),a=Object.keys(i),c=kg(Object.keys(t)),l=kg(Object.keys(e)),u=c.filter(d=>!l.includes(d));return u.length&&(r=Y("NON_CONFORMING_NAMESPACES",`${n} namespaces keys don't satisfy requiredNamespaces.
|
|
25
|
-
Required: ${u.toString()}
|
|
26
|
-
Received: ${Object.keys(e).toString()}`)),Gs(o,a)||(r=Y("NON_CONFORMING_NAMESPACES",`${n} namespaces chains don't satisfy required namespaces.
|
|
27
|
-
Required: ${o.toString()}
|
|
28
|
-
Approved: ${a.toString()}`)),Object.keys(e).forEach(d=>{if(!d.includes(":")||r)return;const h=oo(e[d].accounts);h.includes(d)||(r=Y("NON_CONFORMING_NAMESPACES",`${n} namespaces accounts don't satisfy namespace accounts for ${d}
|
|
29
|
-
Required: ${d}
|
|
30
|
-
Approved: ${h.toString()}`))}),o.forEach(d=>{r||(Gs(s[d].methods,i[d].methods)?Gs(s[d].events,i[d].events)||(r=Y("NON_CONFORMING_NAMESPACES",`${n} namespaces events don't satisfy namespace events for ${d}`)):r=Y("NON_CONFORMING_NAMESPACES",`${n} namespaces methods don't satisfy namespace methods for ${d}`))}),r}function ak(t){const e={};return Object.keys(t).forEach(n=>{var r;n.includes(":")?e[n]=t[n]:(r=t[n].chains)==null||r.forEach(s=>{e[s]={methods:t[n].methods,events:t[n].events}})}),e}function kg(t){return[...new Set(t.map(e=>e.includes(":")?e.split(":")[0]:e))]}function ck(t){const e={};return Object.keys(t).forEach(n=>{if(n.includes(":"))e[n]=t[n];else{const r=oo(t[n].accounts);r==null||r.forEach(s=>{e[s]={accounts:t[n].accounts.filter(i=>i.includes(`${s}:`)),methods:t[n].methods,events:t[n].events}})}}),e}function lk(t,e){return qh(t,!1)&&t<=e.max&&t>=e.min}function Ug(){const t=Ta();return new Promise(e=>{switch(t){case On.browser:e(uk());break;case On.reactNative:e(dk());break;case On.node:e(hk());break;default:e(!0)}})}function uk(){return io()&&(navigator==null?void 0:navigator.onLine)}async function dk(){if(Rs()&&typeof we<"u"&&we!=null&&we.NetInfo){const t=await(we==null?void 0:we.NetInfo.fetch());return t==null?void 0:t.isConnected}return!0}function hk(){return!0}function fk(t){switch(Ta()){case On.browser:pk(t);break;case On.reactNative:gk(t);break}}function pk(t){!Rs()&&io()&&(window.addEventListener("online",()=>t(!0)),window.addEventListener("offline",()=>t(!1)))}function gk(t){var e;Rs()&&typeof we<"u"&&we!=null&&we.NetInfo&&((e=we)==null||e.NetInfo.addEventListener(n=>t(n==null?void 0:n.isConnected)))}function mk(){var t;return io()&&ui()?((t=ui())==null?void 0:t.visibilityState)==="visible":!0}const Nu={};class Eo{static get(e){return Nu[e]}static set(e,n){Nu[e]=n}static delete(e){delete Nu[e]}}function yk(t){const e=so.decode(t);if(e.length<33)throw new Error("Too short to contain a public key");return e.slice(1,33)}function wk({publicKey:t,signature:e,payload:n}){var r;const s=Fd(n.method),i=128|parseInt(((r=n.version)==null?void 0:r.toString())||"4"),o=_k(n.address),a=n.era==="00"?new Uint8Array([0]):Fd(n.era);if(a.length!==1&&a.length!==2)throw new Error("Invalid era length");const c=parseInt(n.nonce,16),l=new Uint8Array([c&255,c>>8&255]),u=BigInt(`0x${bk(n.tip)}`),d=Ck(u),h=new Uint8Array([0,...t,o,...e,...a,...l,...d,...s]),f=vk(h.length+1);return new Uint8Array([...f,i,...h])}function Ek(t){const e=Fd(t),n=ex.blake2b(e,void 0,32);return"0x"+Be.from(n).toString("hex")}function Fd(t){return new Uint8Array(t.replace(/^0x/,"").match(/.{1,2}/g).map(e=>parseInt(e,16)))}function bk(t){return t.startsWith("0x")?t.slice(2):t}function _k(t){const e=so.decode(t)[0];return e===42?0:e===60?2:1}function vk(t){if(t<64)return new Uint8Array([t<<2]);if(t<16384){const e=t<<2|1;return new Uint8Array([e&255,e>>8&255])}else if(t<1<<30){const e=t<<2|2;return new Uint8Array([e&255,e>>8&255,e>>16&255,e>>24&255])}else throw new Error("Compact encoding > 2^30 not supported")}function Ck(t){if(t<BigInt(1)<<BigInt(6))return new Uint8Array([Number(t<<BigInt(2))]);if(t<BigInt(1)<<BigInt(14)){const e=t<<BigInt(2)|BigInt(1);return new Uint8Array([Number(e&BigInt(255)),Number(e>>BigInt(8)&BigInt(255))])}else if(t<BigInt(1)<<BigInt(30)){const e=t<<BigInt(2)|BigInt(2);return new Uint8Array([Number(e&BigInt(255)),Number(e>>BigInt(8)&BigInt(255)),Number(e>>BigInt(16)&BigInt(255)),Number(e>>BigInt(24)&BigInt(255))])}else throw new Error("BigInt compact encoding not supported > 2^30")}function Ak(t){const e=Uint8Array.from(Be.from(t.signature,"hex")),n=yk(t.transaction.address),r=wk({publicKey:n,signature:e,payload:t.transaction}),s=Be.from(r).toString("hex");return Ek(s)}function Hh({logger:t,name:e}){const n=typeof t=="string"?cl({opts:{level:t,name:e}}).logger:t;return n.level=typeof t=="string"?t:t.level,n}const Sk="PARSE_ERROR",Ik="INVALID_REQUEST",Nk="METHOD_NOT_FOUND",Tk="INVALID_PARAMS",gE="INTERNAL_ERROR",zh="SERVER_ERROR",Ok=[-32700,-32600,-32601,-32602,-32603],Bo={[Sk]:{code:-32700,message:"Parse error"},[Ik]:{code:-32600,message:"Invalid Request"},[Nk]:{code:-32601,message:"Method not found"},[Tk]:{code:-32602,message:"Invalid params"},[gE]:{code:-32603,message:"Internal error"},[zh]:{code:-32e3,message:"Server error"}},mE=zh;function Rk(t){return Ok.includes(t)}function $g(t){return Object.keys(Bo).includes(t)?Bo[t]:Bo[mE]}function xk(t){const e=Object.values(Bo).find(n=>n.code===t);return e||Bo[mE]}function yE(t,e,n){return t.message.includes("getaddrinfo ENOTFOUND")||t.message.includes("connect ECONNREFUSED")?new Error(`Unavailable ${n} RPC url at ${e}`):t}var wE={};/*! *****************************************************************************
|
|
31
|
-
Copyright (c) Microsoft Corporation.
|
|
32
|
-
|
|
33
|
-
Permission to use, copy, modify, and/or distribute this software for any
|
|
34
|
-
purpose with or without fee is hereby granted.
|
|
35
|
-
|
|
36
|
-
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
37
|
-
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
38
|
-
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
39
|
-
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
40
|
-
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
41
|
-
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
42
|
-
PERFORMANCE OF THIS SOFTWARE.
|
|
43
|
-
***************************************************************************** */var Ld=function(t,e){return Ld=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,r){n.__proto__=r}||function(n,r){for(var s in r)r.hasOwnProperty(s)&&(n[s]=r[s])},Ld(t,e)};function Pk(t,e){Ld(t,e);function n(){this.constructor=t}t.prototype=e===null?Object.create(e):(n.prototype=e.prototype,new n)}var Md=function(){return Md=Object.assign||function(e){for(var n,r=1,s=arguments.length;r<s;r++){n=arguments[r];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},Md.apply(this,arguments)};function Dk(t,e){var n={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,r=Object.getOwnPropertySymbols(t);s<r.length;s++)e.indexOf(r[s])<0&&Object.prototype.propertyIsEnumerable.call(t,r[s])&&(n[r[s]]=t[r[s]]);return n}function kk(t,e,n,r){var s=arguments.length,i=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,o;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(t,e,n,r);else for(var a=t.length-1;a>=0;a--)(o=t[a])&&(i=(s<3?o(i):s>3?o(e,n,i):o(e,n))||i);return s>3&&i&&Object.defineProperty(e,n,i),i}function Uk(t,e){return function(n,r){e(n,r,t)}}function $k(t,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(t,e)}function Bk(t,e,n,r){function s(i){return i instanceof n?i:new n(function(o){o(i)})}return new(n||(n=Promise))(function(i,o){function a(u){try{l(r.next(u))}catch(d){o(d)}}function c(u){try{l(r.throw(u))}catch(d){o(d)}}function l(u){u.done?i(u.value):s(u.value).then(a,c)}l((r=r.apply(t,e||[])).next())})}function Fk(t,e){var n={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},r,s,i,o;return o={next:a(0),throw:a(1),return:a(2)},typeof Symbol=="function"&&(o[Symbol.iterator]=function(){return this}),o;function a(l){return function(u){return c([l,u])}}function c(l){if(r)throw new TypeError("Generator is already executing.");for(;n;)try{if(r=1,s&&(i=l[0]&2?s.return:l[0]?s.throw||((i=s.return)&&i.call(s),0):s.next)&&!(i=i.call(s,l[1])).done)return i;switch(s=0,i&&(l=[l[0]&2,i.value]),l[0]){case 0:case 1:i=l;break;case 4:return n.label++,{value:l[1],done:!1};case 5:n.label++,s=l[1],l=[0];continue;case 7:l=n.ops.pop(),n.trys.pop();continue;default:if(i=n.trys,!(i=i.length>0&&i[i.length-1])&&(l[0]===6||l[0]===2)){n=0;continue}if(l[0]===3&&(!i||l[1]>i[0]&&l[1]<i[3])){n.label=l[1];break}if(l[0]===6&&n.label<i[1]){n.label=i[1],i=l;break}if(i&&n.label<i[2]){n.label=i[2],n.ops.push(l);break}i[2]&&n.ops.pop(),n.trys.pop();continue}l=e.call(t,n)}catch(u){l=[6,u],s=0}finally{r=i=0}if(l[0]&5)throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}function Lk(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}function Mk(t,e){for(var n in t)n!=="default"&&!e.hasOwnProperty(n)&&(e[n]=t[n])}function jd(t){var e=typeof Symbol=="function"&&Symbol.iterator,n=e&&t[e],r=0;if(n)return n.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function EE(t,e){var n=typeof Symbol=="function"&&t[Symbol.iterator];if(!n)return t;var r=n.call(t),s,i=[],o;try{for(;(e===void 0||e-- >0)&&!(s=r.next()).done;)i.push(s.value)}catch(a){o={error:a}}finally{try{s&&!s.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return i}function jk(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(EE(arguments[e]));return t}function Wk(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;for(var r=Array(t),s=0,e=0;e<n;e++)for(var i=arguments[e],o=0,a=i.length;o<a;o++,s++)r[s]=i[o];return r}function fa(t){return this instanceof fa?(this.v=t,this):new fa(t)}function qk(t,e,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r=n.apply(t,e||[]),s,i=[];return s={},o("next"),o("throw"),o("return"),s[Symbol.asyncIterator]=function(){return this},s;function o(h){r[h]&&(s[h]=function(f){return new Promise(function(p,g){i.push([h,f,p,g])>1||a(h,f)})})}function a(h,f){try{c(r[h](f))}catch(p){d(i[0][3],p)}}function c(h){h.value instanceof fa?Promise.resolve(h.value.v).then(l,u):d(i[0][2],h)}function l(h){a("next",h)}function u(h){a("throw",h)}function d(h,f){h(f),i.shift(),i.length&&a(i[0][0],i[0][1])}}function Hk(t){var e,n;return e={},r("next"),r("throw",function(s){throw s}),r("return"),e[Symbol.iterator]=function(){return this},e;function r(s,i){e[s]=t[s]?function(o){return(n=!n)?{value:fa(t[s](o)),done:s==="return"}:i?i(o):o}:i}}function zk(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],n;return e?e.call(t):(t=typeof jd=="function"?jd(t):t[Symbol.iterator](),n={},r("next"),r("throw"),r("return"),n[Symbol.asyncIterator]=function(){return this},n);function r(i){n[i]=t[i]&&function(o){return new Promise(function(a,c){o=t[i](o),s(a,c,o.done,o.value)})}}function s(i,o,a,c){Promise.resolve(c).then(function(l){i({value:l,done:a})},o)}}function Vk(t,e){return Object.defineProperty?Object.defineProperty(t,"raw",{value:e}):t.raw=e,t}function Kk(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var n in t)Object.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e.default=t,e}function Gk(t){return t&&t.__esModule?t:{default:t}}function Yk(t,e){if(!e.has(t))throw new TypeError("attempted to get private field on non-instance");return e.get(t)}function Zk(t,e,n){if(!e.has(t))throw new TypeError("attempted to set private field on non-instance");return e.set(t,n),n}const Jk=Object.freeze(Object.defineProperty({__proto__:null,get __assign(){return Md},__asyncDelegator:Hk,__asyncGenerator:qk,__asyncValues:zk,__await:fa,__awaiter:Bk,__classPrivateFieldGet:Yk,__classPrivateFieldSet:Zk,__createBinding:Lk,__decorate:kk,__exportStar:Mk,__extends:Pk,__generator:Fk,__importDefault:Gk,__importStar:Kk,__makeTemplateObject:Vk,__metadata:$k,__param:Uk,__read:EE,__rest:Dk,__spread:jk,__spreadArrays:Wk,__values:jd},Symbol.toStringTag,{value:"Module"})),Xk=sy(Jk);var xr={},Bg;function Qk(){if(Bg)return xr;Bg=1,Object.defineProperty(xr,"__esModule",{value:!0}),xr.isBrowserCryptoAvailable=xr.getSubtleCrypto=xr.getBrowerCrypto=void 0;function t(){return(Ci===null||Ci===void 0?void 0:Ci.crypto)||(Ci===null||Ci===void 0?void 0:Ci.msCrypto)||{}}xr.getBrowerCrypto=t;function e(){const r=t();return r.subtle||r.webkitSubtle}xr.getSubtleCrypto=e;function n(){return!!t()&&!!e()}return xr.isBrowserCryptoAvailable=n,xr}var Pr={},Fg;function e4(){if(Fg)return Pr;Fg=1,Object.defineProperty(Pr,"__esModule",{value:!0}),Pr.isBrowser=Pr.isNode=Pr.isReactNative=void 0;function t(){return typeof document>"u"&&typeof navigator<"u"&&navigator.product==="ReactNative"}Pr.isReactNative=t;function e(){return typeof Vt<"u"&&typeof Vt.versions<"u"&&typeof Vt.versions.node<"u"}Pr.isNode=e;function n(){return!t()&&!e()}return Pr.isBrowser=n,Pr}(function(t){Object.defineProperty(t,"__esModule",{value:!0});const e=Xk;e.__exportStar(Qk(),t),e.__exportStar(e4(),t)})(wE);function dr(t=3){const e=Date.now()*Math.pow(10,t),n=Math.floor(Math.random()*Math.pow(10,t));return e+n}function bs(t=6){return BigInt(dr(t))}function Jn(t,e,n){return{id:n||dr(),jsonrpc:"2.0",method:t,params:e}}function pa(t,e){return{id:t,jsonrpc:"2.0",result:e}}function Il(t,e,n){return{id:t,jsonrpc:"2.0",error:t4(e,n)}}function t4(t,e){return typeof t>"u"?$g(gE):(typeof t=="string"&&(t=Object.assign(Object.assign({},$g(zh)),{message:t})),typeof e<"u"&&(t.data=e),Rk(t.code)&&(t=xk(t.code)),t)}let n4=class{},r4=class extends n4{constructor(){super()}},s4=class extends r4{constructor(e){super()}};const i4="^https?:",o4="^wss?:";function a4(t){const e=t.match(new RegExp(/^\w+:/,"gi"));if(!(!e||!e.length))return e[0]}function bE(t,e){const n=a4(t);return typeof n>"u"?!1:new RegExp(e).test(n)}function Lg(t){return bE(t,i4)}function Mg(t){return bE(t,o4)}function c4(t){return new RegExp("wss?://localhost(:d{2,5})?").test(t)}function _E(t){return typeof t=="object"&&"id"in t&&"jsonrpc"in t&&t.jsonrpc==="2.0"}function Vh(t){return _E(t)&&"method"in t}function Nl(t){return _E(t)&&(hr(t)||Fn(t))}function hr(t){return"result"in t}function Fn(t){return"error"in t}let Kh=class extends s4{constructor(e){super(e),this.events=new sr.EventEmitter,this.hasRegisteredEventListeners=!1,this.connection=this.setConnection(e),this.connection.connected&&this.registerEventListeners()}async connect(e=this.connection){await this.open(e)}async disconnect(){await this.close()}on(e,n){this.events.on(e,n)}once(e,n){this.events.once(e,n)}off(e,n){this.events.off(e,n)}removeListener(e,n){this.events.removeListener(e,n)}async request(e,n){return this.requestStrict(Jn(e.method,e.params||[],e.id||bs().toString()),n)}async requestStrict(e,n){return new Promise(async(r,s)=>{if(!this.connection.connected)try{await this.open()}catch(i){s(i)}this.events.on(`${e.id}`,i=>{Fn(i)?s(i.error):r(i.result)});try{await this.connection.send(e,n)}catch(i){s(i)}})}setConnection(e=this.connection){return e}onPayload(e){this.events.emit("payload",e),Nl(e)?this.events.emit(`${e.id}`,e):this.events.emit("message",{type:e.method,data:e.params})}onClose(e){e&&e.code===3e3&&this.events.emit("error",new Error(`WebSocket connection closed abnormally with code: ${e.code} ${e.reason?`(${e.reason})`:""}`)),this.events.emit("disconnect")}async open(e=this.connection){this.connection===e&&this.connection.connected||(this.connection.connected&&this.close(),typeof e=="string"&&(await this.connection.open(e),e=this.connection),this.connection=this.setConnection(e),await this.connection.open(),this.registerEventListeners(),this.events.emit("connect"))}async close(){await this.connection.close()}registerEventListeners(){this.hasRegisteredEventListeners||(this.connection.on("payload",e=>this.onPayload(e)),this.connection.on("close",e=>this.onClose(e)),this.connection.on("error",e=>this.events.emit("error",e)),this.connection.on("register_error",e=>this.onClose()),this.hasRegisteredEventListeners=!0)}};var Tu,jg;function l4(){return jg||(jg=1,Tu=function(){throw new Error("ws does not work in the browser. Browser clients must use the native WebSocket object")}),Tu}const u4=()=>typeof WebSocket<"u"?WebSocket:typeof we<"u"&&typeof we.WebSocket<"u"?we.WebSocket:typeof window<"u"&&typeof window.WebSocket<"u"?window.WebSocket:typeof self<"u"&&typeof self.WebSocket<"u"?self.WebSocket:l4(),d4=()=>typeof WebSocket<"u"||typeof we<"u"&&typeof we.WebSocket<"u"||typeof window<"u"&&typeof window.WebSocket<"u"||typeof self<"u"&&typeof self.WebSocket<"u",Wg=t=>t.split("?")[0],qg=10,h4=u4();let f4=class{constructor(e){if(this.url=e,this.events=new sr.EventEmitter,this.registering=!1,!Mg(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,n){this.events.on(e,n)}once(e,n){this.events.once(e,n)}off(e,n){this.events.off(e,n)}removeListener(e,n){this.events.removeListener(e,n)}async open(e=this.url){await this.register(e)}async close(){return new Promise((e,n)=>{if(typeof this.socket>"u"){n(new Error("Connection already closed"));return}this.socket.onclose=r=>{this.onClose(r),e()},this.socket.close()})}async send(e){typeof this.socket>"u"&&(this.socket=await this.register());try{this.socket.send(li(e))}catch(n){this.onError(e.id,n)}}register(e=this.url){if(!Mg(e))throw new Error(`Provided URL is not compatible with WebSocket connection: ${e}`);if(this.registering){const n=this.events.getMaxListeners();return(this.events.listenerCount("register_error")>=n||this.events.listenerCount("open")>=n)&&this.events.setMaxListeners(n+1),new Promise((r,s)=>{this.events.once("register_error",i=>{this.resetMaxListeners(),s(i)}),this.events.once("open",()=>{if(this.resetMaxListeners(),typeof this.socket>"u")return s(new Error("WebSocket connection is missing or invalid"));r(this.socket)})})}return this.url=e,this.registering=!0,new Promise((n,r)=>{const s=wE.isReactNative()?void 0:{rejectUnauthorized:!c4(e)},i=new h4(e,[],s);d4()?i.onerror=o=>{const a=o;r(this.emitError(a.error))}:i.on("error",o=>{r(this.emitError(o))}),i.onopen=()=>{this.onOpen(i),n(i)}})}onOpen(e){e.onmessage=n=>this.onPayload(n),e.onclose=n=>this.onClose(n),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 n=typeof e.data=="string"?ci(e.data):e.data;this.events.emit("payload",n)}onError(e,n){const r=this.parseError(n),s=r.message||r.toString(),i=Il(e,s);this.events.emit("payload",i)}parseError(e,n=this.url){return yE(e,Wg(n),"WS")}resetMaxListeners(){this.events.getMaxListeners()>qg&&this.events.setMaxListeners(qg)}emitError(e){const n=this.parseError(new Error((e==null?void 0:e.message)||`WebSocket connection failed for host: ${Wg(this.url)}`));return this.events.emit("register_error",n),n}};const vE="wc",CE=2,Qc="core",Cr=`${vE}@2:${Qc}:`,p4={name:Qc,logger:"error"},g4={database:":memory:"},m4="crypto",Hg="client_ed25519_seed",y4=G.ONE_DAY,w4="keychain",E4="0.3",b4="messages",_4="0.3",v4=G.SIX_HOURS,C4="publisher",AE="irn",A4="error",SE="wss://relay.walletconnect.org",S4="relayer",ut={message:"relayer_message",message_ack:"relayer_message_ack",connect:"relayer_connect",disconnect:"relayer_disconnect",error:"relayer_error",connection_stalled:"relayer_connection_stalled",transport_closed:"relayer_transport_closed",publish:"relayer_publish"},I4="_subscription",xn={payload:"payload",connect:"connect",disconnect:"disconnect",error:"error"},N4=.1,Wd="2.23.1",Je={link_mode:"link_mode",relay:"relay"},wc={inbound:"inbound",outbound:"outbound"},T4="0.3",O4="WALLETCONNECT_CLIENT_ID",zg="WALLETCONNECT_LINK_MODE_APPS",vn={created:"subscription_created",deleted:"subscription_deleted",expired:"subscription_expired",disabled:"subscription_disabled",sync:"subscription_sync",resubscribed:"subscription_resubscribed"},R4="subscription",x4="0.3",P4="pairing",D4="0.3",bo={wc_pairingDelete:{req:{ttl:G.ONE_DAY,prompt:!1,tag:1e3},res:{ttl:G.ONE_DAY,prompt:!1,tag:1001}},wc_pairingPing:{req:{ttl:G.THIRTY_SECONDS,prompt:!1,tag:1002},res:{ttl:G.THIRTY_SECONDS,prompt:!1,tag:1003}},unregistered_method:{req:{ttl:G.ONE_DAY,prompt:!1,tag:0},res:{ttl:G.ONE_DAY,prompt:!1,tag:0}}},Hs={create:"pairing_create",expire:"pairing_expire",delete:"pairing_delete",ping:"pairing_ping"},zn={created:"history_created",updated:"history_updated",deleted:"history_deleted",sync:"history_sync"},k4="history",U4="0.3",$4="expirer",Un={created:"expirer_created",deleted:"expirer_deleted",expired:"expirer_expired",sync:"expirer_sync"},B4="0.3",F4="verify-api",L4="https://verify.walletconnect.com",IE="https://verify.walletconnect.org",Fo=IE,M4=`${Fo}/v3`,j4=[L4,IE],W4="echo",q4="https://echo.walletconnect.com",ur={pairing_started:"pairing_started",pairing_uri_validation_success:"pairing_uri_validation_success",pairing_uri_not_expired:"pairing_uri_not_expired",store_new_pairing:"store_new_pairing",subscribing_pairing_topic:"subscribing_pairing_topic",subscribe_pairing_topic_success:"subscribe_pairing_topic_success",existing_pairing:"existing_pairing",pairing_not_expired:"pairing_not_expired",emit_inactive_pairing:"emit_inactive_pairing",emit_session_proposal:"emit_session_proposal",subscribing_to_pairing_topic:"subscribing_to_pairing_topic"},kr={no_wss_connection:"no_wss_connection",no_internet_connection:"no_internet_connection",malformed_pairing_uri:"malformed_pairing_uri",active_pairing_already_exists:"active_pairing_already_exists",subscribe_pairing_topic_failure:"subscribe_pairing_topic_failure",pairing_expired:"pairing_expired",proposal_expired:"proposal_expired",proposal_listener_not_found:"proposal_listener_not_found"},Vn={session_approve_started:"session_approve_started",proposal_not_expired:"proposal_not_expired",session_namespaces_validation_success:"session_namespaces_validation_success",create_session_topic:"create_session_topic",subscribing_session_topic:"subscribing_session_topic",subscribe_session_topic_success:"subscribe_session_topic_success",publishing_session_approve:"publishing_session_approve",session_approve_publish_success:"session_approve_publish_success",store_session:"store_session",publishing_session_settle:"publishing_session_settle",session_settle_publish_success:"session_settle_publish_success",session_request_response_started:"session_request_response_started",session_request_response_validation_success:"session_request_response_validation_success",session_request_response_publish_started:"session_request_response_publish_started"},$s={no_internet_connection:"no_internet_connection",no_wss_connection:"no_wss_connection",proposal_expired:"proposal_expired",subscribe_session_topic_failure:"subscribe_session_topic_failure",session_approve_publish_failure:"session_approve_publish_failure",session_settle_publish_failure:"session_settle_publish_failure",session_approve_namespace_validation_failure:"session_approve_namespace_validation_failure",proposal_not_found:"proposal_not_found",session_request_response_validation_failure:"session_request_response_validation_failure",session_request_response_publish_failure:"session_request_response_publish_failure"},Bs={authenticated_session_approve_started:"authenticated_session_approve_started",authenticated_session_not_expired:"authenticated_session_not_expired",chains_caip2_compliant:"chains_caip2_compliant",chains_evm_compliant:"chains_evm_compliant",create_authenticated_session_topic:"create_authenticated_session_topic",cacaos_verified:"cacaos_verified",store_authenticated_session:"store_authenticated_session",subscribing_authenticated_session_topic:"subscribing_authenticated_session_topic",subscribe_authenticated_session_topic_success:"subscribe_authenticated_session_topic_success",publishing_authenticated_session_approve:"publishing_authenticated_session_approve",authenticated_session_approve_publish_success:"authenticated_session_approve_publish_success"},_o={no_internet_connection:"no_internet_connection",no_wss_connection:"no_wss_connection",missing_session_authenticate_request:"missing_session_authenticate_request",session_authenticate_request_expired:"session_authenticate_request_expired",chains_caip2_compliant_failure:"chains_caip2_compliant_failure",chains_evm_compliant_failure:"chains_evm_compliant_failure",invalid_cacao:"invalid_cacao",subscribe_authenticated_session_topic_failure:"subscribe_authenticated_session_topic_failure",authenticated_session_approve_publish_failure:"authenticated_session_approve_publish_failure",authenticated_session_pending_request_not_found:"authenticated_session_pending_request_not_found"},H4=.1,z4="event-client",V4=86400,K4="https://pulse.walletconnect.org/batch";function G4(t,e){if(t.length>=255)throw new TypeError("Alphabet too long");for(var n=new Uint8Array(256),r=0;r<n.length;r++)n[r]=255;for(var s=0;s<t.length;s++){var i=t.charAt(s),o=i.charCodeAt(0);if(n[o]!==255)throw new TypeError(i+" is ambiguous");n[o]=s}var a=t.length,c=t.charAt(0),l=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function d(p){if(p instanceof Uint8Array||(ArrayBuffer.isView(p)?p=new Uint8Array(p.buffer,p.byteOffset,p.byteLength):Array.isArray(p)&&(p=Uint8Array.from(p))),!(p instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(p.length===0)return"";for(var g=0,y=0,v=0,A=p.length;v!==A&&p[v]===0;)v++,g++;for(var E=(A-v)*u+1>>>0,C=new Uint8Array(E);v!==A;){for(var O=p[v],k=0,$=E-1;(O!==0||k<y)&&$!==-1;$--,k++)O+=256*C[$]>>>0,C[$]=O%a>>>0,O=O/a>>>0;if(O!==0)throw new Error("Non-zero carry");y=k,v++}for(var F=E-y;F!==E&&C[F]===0;)F++;for(var D=c.repeat(g);F<E;++F)D+=t.charAt(C[F]);return D}function h(p){if(typeof p!="string")throw new TypeError("Expected String");if(p.length===0)return new Uint8Array;var g=0;if(p[g]!==" "){for(var y=0,v=0;p[g]===c;)y++,g++;for(var A=(p.length-g)*l+1>>>0,E=new Uint8Array(A);p[g];){var C=n[p.charCodeAt(g)];if(C===255)return;for(var O=0,k=A-1;(C!==0||O<v)&&k!==-1;k--,O++)C+=a*E[k]>>>0,E[k]=C%256>>>0,C=C/256>>>0;if(C!==0)throw new Error("Non-zero carry");v=O,g++}if(p[g]!==" "){for(var $=A-v;$!==A&&E[$]===0;)$++;for(var F=new Uint8Array(y+(A-$)),D=y;$!==A;)F[D++]=E[$++];return F}}}function f(p){var g=h(p);if(g)return g;throw new Error(`Non-${e} character`)}return{encode:d,decodeUnsafe:h,decode:f}}var Y4=G4,Z4=Y4;const NE=t=>{if(t instanceof Uint8Array&&t.constructor.name==="Uint8Array")return t;if(t instanceof ArrayBuffer)return new Uint8Array(t);if(ArrayBuffer.isView(t))return new Uint8Array(t.buffer,t.byteOffset,t.byteLength);throw new Error("Unknown type, must be binary type")},J4=t=>new TextEncoder().encode(t),X4=t=>new TextDecoder().decode(t);class Q4{constructor(e,n,r){this.name=e,this.prefix=n,this.baseEncode=r}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}}class e8{constructor(e,n,r){if(this.name=e,this.prefix=n,n.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=n.codePointAt(0),this.baseDecode=r}decode(e){if(typeof e=="string"){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))}else throw Error("Can only multibase decode strings")}or(e){return TE(this,e)}}class t8{constructor(e){this.decoders=e}or(e){return TE(this,e)}decode(e){const n=e[0],r=this.decoders[n];if(r)return r.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}}const TE=(t,e)=>new t8({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}});class n8{constructor(e,n,r,s){this.name=e,this.prefix=n,this.baseEncode=r,this.baseDecode=s,this.encoder=new Q4(e,n,r),this.decoder=new e8(e,n,s)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}}const Tl=({name:t,prefix:e,encode:n,decode:r})=>new n8(t,e,n,r),Da=({prefix:t,name:e,alphabet:n})=>{const{encode:r,decode:s}=Z4(n,e);return Tl({prefix:t,name:e,encode:r,decode:i=>NE(s(i))})},r8=(t,e,n,r)=>{const s={};for(let u=0;u<e.length;++u)s[e[u]]=u;let i=t.length;for(;t[i-1]==="=";)--i;const o=new Uint8Array(i*n/8|0);let a=0,c=0,l=0;for(let u=0;u<i;++u){const d=s[t[u]];if(d===void 0)throw new SyntaxError(`Non-${r} character`);c=c<<n|d,a+=n,a>=8&&(a-=8,o[l++]=255&c>>a)}if(a>=n||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return o},s8=(t,e,n)=>{const r=e[e.length-1]==="=",s=(1<<n)-1;let i="",o=0,a=0;for(let c=0;c<t.length;++c)for(a=a<<8|t[c],o+=8;o>n;)o-=n,i+=e[s&a>>o];if(o&&(i+=e[s&a<<n-o]),r)for(;i.length*n&7;)i+="=";return i},Ut=({name:t,prefix:e,bitsPerChar:n,alphabet:r})=>Tl({prefix:e,name:t,encode(s){return s8(s,r,n)},decode(s){return r8(s,r,n,t)}}),i8=Tl({prefix:"\0",name:"identity",encode:t=>X4(t),decode:t=>J4(t)});var o8=Object.freeze({__proto__:null,identity:i8});const a8=Ut({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var c8=Object.freeze({__proto__:null,base2:a8});const l8=Ut({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var u8=Object.freeze({__proto__:null,base8:l8});const d8=Da({prefix:"9",name:"base10",alphabet:"0123456789"});var h8=Object.freeze({__proto__:null,base10:d8});const f8=Ut({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),p8=Ut({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var g8=Object.freeze({__proto__:null,base16:f8,base16upper:p8});const m8=Ut({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),y8=Ut({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),w8=Ut({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),E8=Ut({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),b8=Ut({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),_8=Ut({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),v8=Ut({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),C8=Ut({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),A8=Ut({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var S8=Object.freeze({__proto__:null,base32:m8,base32upper:y8,base32pad:w8,base32padupper:E8,base32hex:b8,base32hexupper:_8,base32hexpad:v8,base32hexpadupper:C8,base32z:A8});const I8=Da({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),N8=Da({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var T8=Object.freeze({__proto__:null,base36:I8,base36upper:N8});const O8=Da({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),R8=Da({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var x8=Object.freeze({__proto__:null,base58btc:O8,base58flickr:R8});const P8=Ut({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),D8=Ut({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),k8=Ut({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),U8=Ut({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var $8=Object.freeze({__proto__:null,base64:P8,base64pad:D8,base64url:k8,base64urlpad:U8});const OE=Array.from("🚀🪐☄🛰🌌🌑🌒🌓🌔🌕🌖🌗🌘🌍🌏🌎🐉☀💻🖥💾💿😂❤😍🤣😊🙏💕😭😘👍😅👏😁🔥🥰💔💖💙😢🤔😆🙄💪😉☺👌🤗💜😔😎😇🌹🤦🎉💞✌✨🤷😱😌🌸🙌😋💗💚😏💛🙂💓🤩😄😀🖤😃💯🙈👇🎶😒🤭❣😜💋👀😪😑💥🙋😞😩😡🤪👊🥳😥🤤👉💃😳✋😚😝😴🌟😬🙃🍀🌷😻😓⭐✅🥺🌈😈🤘💦✔😣🏃💐☹🎊💘😠☝😕🌺🎂🌻😐🖕💝🙊😹🗣💫💀👑🎵🤞😛🔴😤🌼😫⚽🤙☕🏆🤫👈😮🙆🍻🍃🐶💁😲🌿🧡🎁⚡🌞🎈❌✊👋😰🤨😶🤝🚶💰🍓💢🤟🙁🚨💨🤬✈🎀🍺🤓😙💟🌱😖👶🥴▶➡❓💎💸⬇😨🌚🦋😷🕺⚠🙅😟😵👎🤲🤠🤧📌🔵💅🧐🐾🍒😗🤑🌊🤯🐷☎💧😯💆👆🎤🙇🍑❄🌴💣🐸💌📍🥀🤢👅💡💩👐📸👻🤐🤮🎼🥵🚩🍎🍊👼💍📣🥂"),B8=OE.reduce((t,e,n)=>(t[n]=e,t),[]),F8=OE.reduce((t,e,n)=>(t[e.codePointAt(0)]=n,t),[]);function L8(t){return t.reduce((e,n)=>(e+=B8[n],e),"")}function M8(t){const e=[];for(const n of t){const r=F8[n.codePointAt(0)];if(r===void 0)throw new Error(`Non-base256emoji character: ${n}`);e.push(r)}return new Uint8Array(e)}const j8=Tl({prefix:"🚀",name:"base256emoji",encode:L8,decode:M8});var W8=Object.freeze({__proto__:null,base256emoji:j8}),q8=RE,Vg=128,H8=127,z8=~H8,V8=Math.pow(2,31);function RE(t,e,n){e=e||[],n=n||0;for(var r=n;t>=V8;)e[n++]=t&255|Vg,t/=128;for(;t&z8;)e[n++]=t&255|Vg,t>>>=7;return e[n]=t|0,RE.bytes=n-r+1,e}var K8=qd,G8=128,Kg=127;function qd(t,r){var n=0,r=r||0,s=0,i=r,o,a=t.length;do{if(i>=a)throw qd.bytes=0,new RangeError("Could not decode varint");o=t[i++],n+=s<28?(o&Kg)<<s:(o&Kg)*Math.pow(2,s),s+=7}while(o>=G8);return qd.bytes=i-r,n}var Y8=Math.pow(2,7),Z8=Math.pow(2,14),J8=Math.pow(2,21),X8=Math.pow(2,28),Q8=Math.pow(2,35),eU=Math.pow(2,42),tU=Math.pow(2,49),nU=Math.pow(2,56),rU=Math.pow(2,63),sU=function(t){return t<Y8?1:t<Z8?2:t<J8?3:t<X8?4:t<Q8?5:t<eU?6:t<tU?7:t<nU?8:t<rU?9:10},iU={encode:q8,decode:K8,encodingLength:sU},xE=iU;const Gg=(t,e,n=0)=>(xE.encode(t,e,n),e),Yg=t=>xE.encodingLength(t),Hd=(t,e)=>{const n=e.byteLength,r=Yg(t),s=r+Yg(n),i=new Uint8Array(s+n);return Gg(t,i,0),Gg(n,i,r),i.set(e,s),new oU(t,n,e,i)};class oU{constructor(e,n,r,s){this.code=e,this.size=n,this.digest=r,this.bytes=s}}const PE=({name:t,code:e,encode:n})=>new aU(t,e,n);class aU{constructor(e,n,r){this.name=e,this.code=n,this.encode=r}digest(e){if(e instanceof Uint8Array){const n=this.encode(e);return n instanceof Uint8Array?Hd(this.code,n):n.then(r=>Hd(this.code,r))}else throw Error("Unknown type, must be binary type")}}const DE=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),cU=PE({name:"sha2-256",code:18,encode:DE("SHA-256")}),lU=PE({name:"sha2-512",code:19,encode:DE("SHA-512")});var uU=Object.freeze({__proto__:null,sha256:cU,sha512:lU});const kE=0,dU="identity",UE=NE,hU=t=>Hd(kE,UE(t)),fU={code:kE,name:dU,encode:UE,digest:hU};var pU=Object.freeze({__proto__:null,identity:fU});new TextEncoder,new TextDecoder;const Zg={...o8,...c8,...u8,...h8,...g8,...S8,...T8,...x8,...$8,...W8};({...uU,...pU});function $E(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function gU(t=0){return globalThis.Buffer!=null&&globalThis.Buffer.allocUnsafe!=null?$E(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}function BE(t,e,n,r){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:n},decoder:{decode:r}}}const Jg=BE("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),Ou=BE("ascii","a",t=>{let e="a";for(let n=0;n<t.length;n++)e+=String.fromCharCode(t[n]);return e},t=>{t=t.substring(1);const e=gU(t.length);for(let n=0;n<t.length;n++)e[n]=t.charCodeAt(n);return e}),mU={utf8:Jg,"utf-8":Jg,hex:Zg.base16,latin1:Ou,ascii:Ou,binary:Ou,...Zg};function yU(t,e="utf8"){const n=mU[e];if(!n)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?$E(globalThis.Buffer.from(t,"utf-8")):n.decoder.decode(`${n.prefix}${t}`)}var wU=Object.defineProperty,EU=(t,e,n)=>e in t?wU(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,cr=(t,e,n)=>EU(t,typeof e!="symbol"?e+"":e,n);class bU{constructor(e,n){this.core=e,this.logger=n,cr(this,"keychain",new Map),cr(this,"name",w4),cr(this,"version",E4),cr(this,"initialized",!1),cr(this,"storagePrefix",Cr),cr(this,"init",async()=>{if(!this.initialized){const r=await this.getKeyChain();typeof r<"u"&&(this.keychain=r),this.initialized=!0}}),cr(this,"has",r=>(this.isInitialized(),this.keychain.has(r))),cr(this,"set",async(r,s)=>{this.isInitialized(),this.keychain.set(r,s),await this.persist()}),cr(this,"get",r=>{this.isInitialized();const s=this.keychain.get(r);if(typeof s>"u"){const{message:i}=Y("NO_MATCHING_KEY",`${this.name}: ${r}`);throw new Error(i)}return s}),cr(this,"del",async r=>{this.isInitialized(),this.keychain.delete(r),await this.persist()}),this.core=e,this.logger=wn(n,this.name)}get context(){return yn(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name}async setKeyChain(e){await this.core.storage.setItem(this.storageKey,Sd(e))}async getKeyChain(){const e=await this.core.storage.getItem(this.storageKey);return typeof e<"u"?Id(e):void 0}async persist(){await this.setKeyChain(this.keychain)}isInitialized(){if(!this.initialized){const{message:e}=Y("NOT_INITIALIZED",this.name);throw new Error(e)}}}var _U=Object.defineProperty,vU=(t,e,n)=>e in t?_U(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,bt=(t,e,n)=>vU(t,typeof e!="symbol"?e+"":e,n);class CU{constructor(e,n,r){this.core=e,this.logger=n,bt(this,"name",m4),bt(this,"keychain"),bt(this,"randomSessionIdentifier",Bd()),bt(this,"initialized",!1),bt(this,"clientId"),bt(this,"init",async()=>{this.initialized||(await this.keychain.init(),this.initialized=!0)}),bt(this,"hasKeys",s=>(this.isInitialized(),this.keychain.has(s))),bt(this,"getClientId",async()=>{if(this.isInitialized(),this.clientId)return this.clientId;const s=await this.getClientSeed(),i=pp(s),o=cw(i.publicKey);return this.clientId=o,o}),bt(this,"generateKeyPair",()=>{this.isInitialized();const s=aD();return this.setPrivateKey(s.publicKey,s.privateKey)}),bt(this,"signJWT",async s=>{this.isInitialized();const i=await this.getClientSeed(),o=pp(i),a=this.randomSessionIdentifier;return await l2(a,s,y4,o)}),bt(this,"generateSharedKey",(s,i,o)=>{this.isInitialized();const a=this.getPrivateKey(s),c=cD(a,i);return this.setSymKey(c,o)}),bt(this,"setSymKey",async(s,i)=>{this.isInitialized();const o=i||yc(s);return await this.keychain.set(o,s),o}),bt(this,"deleteKeyPair",async s=>{this.isInitialized(),await this.keychain.del(s)}),bt(this,"deleteSymKey",async s=>{this.isInitialized(),await this.keychain.del(s)}),bt(this,"encode",async(s,i,o)=>{this.isInitialized();const a=dE(o),c=li(i);if(vg(a))return dD(c,o==null?void 0:o.encoding);if(_g(a)){const h=a.senderPublicKey,f=a.receiverPublicKey;s=await this.generateSharedKey(h,f)}const l=this.getSymKey(s),{type:u,senderPublicKey:d}=a;return lD({type:u,symKey:l,message:c,senderPublicKey:d,encoding:o==null?void 0:o.encoding})}),bt(this,"decode",async(s,i,o)=>{this.isInitialized();const a=fD(i,o);if(vg(a)){const c=hD(i,o==null?void 0:o.encoding);return ci(c)}if(_g(a)){const c=a.receiverPublicKey,l=a.senderPublicKey;s=await this.generateSharedKey(c,l)}try{const c=this.getSymKey(s),l=uD({symKey:c,encoded:i,encoding:o==null?void 0:o.encoding});return ci(l)}catch(c){this.logger.error(`Failed to decode message from topic: '${s}', clientId: '${await this.getClientId()}'`),this.logger.error(c)}}),bt(this,"getPayloadType",(s,i=fn)=>{const o=ha({encoded:s,encoding:i});return hi(o.type)}),bt(this,"getPayloadSenderPublicKey",(s,i=fn)=>{const o=ha({encoded:s,encoding:i});return o.senderPublicKey?mn(o.senderPublicKey,tn):void 0}),this.core=e,this.logger=wn(n,this.name),this.keychain=r||new bU(this.core,this.logger)}get context(){return yn(this.logger)}async setPrivateKey(e,n){return await this.keychain.set(e,n),e}getPrivateKey(e){return this.keychain.get(e)}async getClientSeed(){let e="";try{e=this.keychain.get(Hg)}catch{e=Bd(),await this.keychain.set(Hg,e)}return yU(e,"base16")}getSymKey(e){return this.keychain.get(e)}isInitialized(){if(!this.initialized){const{message:e}=Y("NOT_INITIALIZED",this.name);throw new Error(e)}}}var AU=Object.defineProperty,SU=Object.defineProperties,IU=Object.getOwnPropertyDescriptors,Xg=Object.getOwnPropertySymbols,NU=Object.prototype.hasOwnProperty,TU=Object.prototype.propertyIsEnumerable,zd=(t,e,n)=>e in t?AU(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,OU=(t,e)=>{for(var n in e||(e={}))NU.call(e,n)&&zd(t,n,e[n]);if(Xg)for(var n of Xg(e))TU.call(e,n)&&zd(t,n,e[n]);return t},RU=(t,e)=>SU(t,IU(e)),bn=(t,e,n)=>zd(t,typeof e!="symbol"?e+"":e,n);class xU extends oS{constructor(e,n){super(e,n),this.logger=e,this.core=n,bn(this,"messages",new Map),bn(this,"messagesWithoutClientAck",new Map),bn(this,"name",b4),bn(this,"version",_4),bn(this,"initialized",!1),bn(this,"storagePrefix",Cr),bn(this,"init",async()=>{if(!this.initialized){this.logger.trace("Initialized");try{const r=await this.getRelayerMessages();typeof r<"u"&&(this.messages=r);const s=await this.getRelayerMessagesWithoutClientAck();typeof s<"u"&&(this.messagesWithoutClientAck=s),this.logger.debug(`Successfully Restored records for ${this.name}`),this.logger.trace({type:"method",method:"restore",size:this.messages.size})}catch(r){this.logger.debug(`Failed to Restore records for ${this.name}`),this.logger.error(r)}finally{this.initialized=!0}}}),bn(this,"set",async(r,s,i)=>{this.isInitialized();const o=Bn(s);let a=this.messages.get(r);if(typeof a>"u"&&(a={}),typeof a[o]<"u")return o;if(a[o]=s,this.messages.set(r,a),i===wc.inbound){const c=this.messagesWithoutClientAck.get(r)||{};this.messagesWithoutClientAck.set(r,RU(OU({},c),{[o]:s}))}return await this.persist(),o}),bn(this,"get",r=>{this.isInitialized();let s=this.messages.get(r);return typeof s>"u"&&(s={}),s}),bn(this,"getWithoutAck",r=>{this.isInitialized();const s={};for(const i of r){const o=this.messagesWithoutClientAck.get(i)||{};s[i]=Object.values(o)}return s}),bn(this,"has",(r,s)=>{this.isInitialized();const i=this.get(r),o=Bn(s);return typeof i[o]<"u"}),bn(this,"ack",async(r,s)=>{this.isInitialized();const i=this.messagesWithoutClientAck.get(r);if(typeof i>"u")return;const o=Bn(s);delete i[o],Object.keys(i).length===0?this.messagesWithoutClientAck.delete(r):this.messagesWithoutClientAck.set(r,i),await this.persist()}),bn(this,"del",async r=>{this.isInitialized(),this.messages.delete(r),this.messagesWithoutClientAck.delete(r),await this.persist()}),this.logger=wn(e,this.name),this.core=n}get context(){return yn(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name}get storageKeyWithoutClientAck(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name+"_withoutClientAck"}async setRelayerMessages(e){await this.core.storage.setItem(this.storageKey,Sd(e))}async setRelayerMessagesWithoutClientAck(e){await this.core.storage.setItem(this.storageKeyWithoutClientAck,Sd(e))}async getRelayerMessages(){const e=await this.core.storage.getItem(this.storageKey);return typeof e<"u"?Id(e):void 0}async getRelayerMessagesWithoutClientAck(){const e=await this.core.storage.getItem(this.storageKeyWithoutClientAck);return typeof e<"u"?Id(e):void 0}async persist(){await this.setRelayerMessages(this.messages),await this.setRelayerMessagesWithoutClientAck(this.messagesWithoutClientAck)}isInitialized(){if(!this.initialized){const{message:e}=Y("NOT_INITIALIZED",this.name);throw new Error(e)}}}var PU=Object.defineProperty,DU=Object.defineProperties,kU=Object.getOwnPropertyDescriptors,Qg=Object.getOwnPropertySymbols,UU=Object.prototype.hasOwnProperty,$U=Object.prototype.propertyIsEnumerable,Vd=(t,e,n)=>e in t?PU(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,xi=(t,e)=>{for(var n in e||(e={}))UU.call(e,n)&&Vd(t,n,e[n]);if(Qg)for(var n of Qg(e))$U.call(e,n)&&Vd(t,n,e[n]);return t},em=(t,e)=>DU(t,kU(e)),Pn=(t,e,n)=>Vd(t,typeof e!="symbol"?e+"":e,n);class BU extends aS{constructor(e,n){super(e,n),this.relayer=e,this.logger=n,Pn(this,"events",new sr.EventEmitter),Pn(this,"name",C4),Pn(this,"queue",new Map),Pn(this,"publishTimeout",G.toMiliseconds(G.ONE_MINUTE)),Pn(this,"initialPublishTimeout",G.toMiliseconds(G.ONE_SECOND*15)),Pn(this,"needsTransportRestart",!1),Pn(this,"publish",async(r,s,i)=>{var o,a,c,l,u;this.logger.debug("Publishing Payload"),this.logger.trace({type:"method",method:"publish",params:{topic:r,message:s,opts:i}});const d=(i==null?void 0:i.ttl)||v4,h=(i==null?void 0:i.prompt)||!1,f=(i==null?void 0:i.tag)||0,p=(i==null?void 0:i.id)||bs().toString(),g=Li(Jc().protocol),y={id:p,method:(i==null?void 0:i.publishMethod)||g.publish,params:xi({topic:r,message:s,ttl:d,prompt:h,tag:f,attestation:i==null?void 0:i.attestation},i==null?void 0:i.tvf)},v=`Failed to publish payload, please try again. id:${p} tag:${f}`;try{yt((o=y.params)==null?void 0:o.prompt)&&((a=y.params)==null||delete a.prompt),yt((c=y.params)==null?void 0:c.tag)&&((l=y.params)==null||delete l.tag);const A=new Promise(async E=>{const C=({id:k})=>{var $;(($=y.id)==null?void 0:$.toString())===k.toString()&&(this.removeRequestFromQueue(k),this.relayer.events.removeListener(ut.publish,C),E())};this.relayer.events.on(ut.publish,C);const O=mr(new Promise((k,$)=>{this.rpcPublish(y,i).then(k).catch(F=>{this.logger.warn(F,F==null?void 0:F.message),$(F)})}),this.initialPublishTimeout,`Failed initial publish, retrying.... id:${p} tag:${f}`);try{await O,this.events.removeListener(ut.publish,C)}catch(k){this.queue.set(p,{request:y,opts:i,attempt:1}),this.logger.warn(k,k==null?void 0:k.message)}});this.logger.trace({type:"method",method:"publish",params:{id:p,topic:r,message:s,opts:i}}),await mr(A,this.publishTimeout,v)}catch(A){if(this.logger.debug("Failed to Publish Payload"),this.logger.error(A),(u=i==null?void 0:i.internal)!=null&&u.throwOnFailedPublish)throw A}finally{this.queue.delete(p)}}),Pn(this,"publishCustom",async r=>{var s,i,o,a,c;this.logger.debug("Publishing custom payload"),this.logger.trace({type:"method",method:"publishCustom",params:r});const{payload:l,opts:u={}}=r,{attestation:d,tvf:h,publishMethod:f,prompt:p,tag:g,ttl:y=G.FIVE_MINUTES}=u,v=u.id||bs().toString(),A=Li(Jc().protocol),E=f||A.publish,C={id:v,method:E,params:xi(em(xi({},l),{ttl:y,prompt:p,tag:g,attestation:d}),h)},O=`Failed to publish custom payload, please try again. id:${v} tag:${g}`;try{yt((s=C.params)==null?void 0:s.prompt)&&((i=C.params)==null||delete i.prompt),yt((o=C.params)==null?void 0:o.tag)&&((a=C.params)==null||delete a.tag);const k=new Promise(async $=>{const F=({id:W})=>{var H;((H=C.id)==null?void 0:H.toString())===W.toString()&&(this.removeRequestFromQueue(W),this.relayer.events.removeListener(ut.publish,F),$())};this.relayer.events.on(ut.publish,F);const D=mr(new Promise((W,H)=>{this.rpcPublish(C,u).then(W).catch(U=>{this.logger.warn(U,U==null?void 0:U.message),H(U)})}),this.initialPublishTimeout,`Failed initial custom payload publish, retrying.... method:${E} id:${v} tag:${g}`);try{await D,this.events.removeListener(ut.publish,F)}catch(W){this.queue.set(v,{request:C,opts:u,attempt:1}),this.logger.warn(W,W==null?void 0:W.message)}});this.logger.trace({type:"method",method:"publish",params:{id:v,payload:l,opts:u}}),await mr(k,this.publishTimeout,O)}catch(k){if(this.logger.debug("Failed to Publish Payload"),this.logger.error(k),(c=u==null?void 0:u.internal)!=null&&c.throwOnFailedPublish)throw k}finally{this.queue.delete(v)}}),Pn(this,"on",(r,s)=>{this.events.on(r,s)}),Pn(this,"once",(r,s)=>{this.events.once(r,s)}),Pn(this,"off",(r,s)=>{this.events.off(r,s)}),Pn(this,"removeListener",(r,s)=>{this.events.removeListener(r,s)}),this.relayer=e,this.logger=wn(n,this.name),this.registerEventListeners()}get context(){return yn(this.logger)}async rpcPublish(e,n){this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"message",direction:"outgoing",request:e});const r=await this.relayer.request(e);return this.relayer.events.emit(ut.publish,xi(xi({},e),n)),this.logger.debug("Successfully Published Payload"),r}removeRequestFromQueue(e){this.queue.delete(e)}checkQueue(){this.queue.forEach(async(e,n)=>{var r;const s=e.attempt+1;this.queue.set(n,em(xi({},e),{attempt:s})),this.logger.warn({},`Publisher: queue->publishing: ${e.request.id}, tag: ${(r=e.request.params)==null?void 0:r.tag}, attempt: ${s}`),await this.rpcPublish(e.request,e.opts),this.logger.warn({},`Publisher: queue->published: ${e.request.id}`)})}registerEventListeners(){this.relayer.core.heartbeat.on(wi.pulse,()=>{if(this.needsTransportRestart){this.needsTransportRestart=!1,this.relayer.events.emit(ut.connection_stalled);return}this.checkQueue()}),this.relayer.on(ut.message_ack,e=>{this.removeRequestFromQueue(e.id.toString())})}}var FU=Object.defineProperty,LU=(t,e,n)=>e in t?FU(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Pi=(t,e,n)=>LU(t,typeof e!="symbol"?e+"":e,n);class MU{constructor(){Pi(this,"map",new Map),Pi(this,"set",(e,n)=>{const r=this.get(e);this.exists(e,n)||this.map.set(e,[...r,n])}),Pi(this,"get",e=>this.map.get(e)||[]),Pi(this,"exists",(e,n)=>this.get(e).includes(n)),Pi(this,"delete",(e,n)=>{if(typeof n>"u"){this.map.delete(e);return}if(!this.map.has(e))return;const r=this.get(e);if(!this.exists(e,n))return;const s=r.filter(i=>i!==n);if(!s.length){this.map.delete(e);return}this.map.set(e,s)}),Pi(this,"clear",()=>{this.map.clear()})}get topics(){return Array.from(this.map.keys())}}var jU=Object.defineProperty,WU=Object.defineProperties,qU=Object.getOwnPropertyDescriptors,tm=Object.getOwnPropertySymbols,HU=Object.prototype.hasOwnProperty,zU=Object.prototype.propertyIsEnumerable,Kd=(t,e,n)=>e in t?jU(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,vo=(t,e)=>{for(var n in e||(e={}))HU.call(e,n)&&Kd(t,n,e[n]);if(tm)for(var n of tm(e))zU.call(e,n)&&Kd(t,n,e[n]);return t},Ru=(t,e)=>WU(t,qU(e)),Ge=(t,e,n)=>Kd(t,typeof e!="symbol"?e+"":e,n);class VU extends uS{constructor(e,n){super(e,n),this.relayer=e,this.logger=n,Ge(this,"subscriptions",new Map),Ge(this,"topicMap",new MU),Ge(this,"events",new sr.EventEmitter),Ge(this,"name",R4),Ge(this,"version",x4),Ge(this,"pending",new Map),Ge(this,"cached",[]),Ge(this,"initialized",!1),Ge(this,"storagePrefix",Cr),Ge(this,"subscribeTimeout",G.toMiliseconds(G.ONE_MINUTE)),Ge(this,"initialSubscribeTimeout",G.toMiliseconds(G.ONE_SECOND*15)),Ge(this,"clientId"),Ge(this,"batchSubscribeTopicsLimit",500),Ge(this,"init",async()=>{this.initialized||(this.logger.trace("Initialized"),this.registerEventListeners(),await this.restore()),this.initialized=!0}),Ge(this,"subscribe",async(r,s)=>{var i;this.isInitialized(),this.logger.debug("Subscribing Topic"),this.logger.trace({type:"method",method:"subscribe",params:{topic:r,opts:s}});try{const o=Jc(s),a={topic:r,relay:o,transportType:s==null?void 0:s.transportType};(i=s==null?void 0:s.internal)!=null&&i.skipSubscribe||this.pending.set(r,a);const c=await this.rpcSubscribe(r,o,s);return typeof c=="string"&&(this.onSubscribe(c,a),this.logger.debug("Successfully Subscribed Topic"),this.logger.trace({type:"method",method:"subscribe",params:{topic:r,opts:s}})),c}catch(o){throw this.logger.debug("Failed to Subscribe Topic"),this.logger.error(o),o}}),Ge(this,"unsubscribe",async(r,s)=>{this.isInitialized(),typeof(s==null?void 0:s.id)<"u"?await this.unsubscribeById(r,s.id,s):await this.unsubscribeByTopic(r,s)}),Ge(this,"isSubscribed",r=>new Promise(s=>{s(this.topicMap.topics.includes(r))})),Ge(this,"isKnownTopic",r=>new Promise(s=>{s(this.topicMap.topics.includes(r)||this.pending.has(r)||this.cached.some(i=>i.topic===r))})),Ge(this,"on",(r,s)=>{this.events.on(r,s)}),Ge(this,"once",(r,s)=>{this.events.once(r,s)}),Ge(this,"off",(r,s)=>{this.events.off(r,s)}),Ge(this,"removeListener",(r,s)=>{this.events.removeListener(r,s)}),Ge(this,"start",async()=>{await this.onConnect()}),Ge(this,"stop",async()=>{await this.onDisconnect()}),Ge(this,"restart",async()=>{await this.restore(),await this.onRestart()}),Ge(this,"checkPending",async()=>{if(this.pending.size===0&&(!this.initialized||!this.relayer.connected))return;const r=[];this.pending.forEach(s=>{r.push(s)}),await this.batchSubscribe(r)}),Ge(this,"registerEventListeners",()=>{this.relayer.core.heartbeat.on(wi.pulse,async()=>{await this.checkPending()}),this.events.on(vn.created,async r=>{const s=vn.created;this.logger.info(`Emitting ${s}`),this.logger.debug({type:"event",event:s,data:r}),await this.persist()}),this.events.on(vn.deleted,async r=>{const s=vn.deleted;this.logger.info(`Emitting ${s}`),this.logger.debug({type:"event",event:s,data:r}),await this.persist()})}),this.relayer=e,this.logger=wn(n,this.name),this.clientId=""}get context(){return yn(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}get hasAnyTopics(){return this.topicMap.topics.length>0||this.pending.size>0||this.cached.length>0||this.subscriptions.size>0}hasSubscription(e,n){let r=!1;try{r=this.getSubscription(e).topic===n}catch{}return r}reset(){this.cached=[],this.initialized=!0}onDisable(){this.values.length>0&&(this.cached=this.values),this.subscriptions.clear(),this.topicMap.clear()}async unsubscribeByTopic(e,n){const r=this.topicMap.get(e);await Promise.all(r.map(async s=>await this.unsubscribeById(e,s,n)))}async unsubscribeById(e,n,r){this.logger.debug("Unsubscribing Topic"),this.logger.trace({type:"method",method:"unsubscribe",params:{topic:e,id:n,opts:r}});try{const s=Jc(r);await this.restartToComplete({topic:e,id:n,relay:s}),await this.rpcUnsubscribe(e,n,s);const i=et("USER_DISCONNECTED",`${this.name}, ${e}`);await this.onUnsubscribe(e,n,i),this.logger.debug("Successfully Unsubscribed Topic"),this.logger.trace({type:"method",method:"unsubscribe",params:{topic:e,id:n,opts:r}})}catch(s){throw this.logger.debug("Failed to Unsubscribe Topic"),this.logger.error(s),s}}async rpcSubscribe(e,n,r){var s,i;const o=await this.getSubscriptionId(e);if((s=r==null?void 0:r.internal)!=null&&s.skipSubscribe)return o;(!r||(r==null?void 0:r.transportType)===Je.relay)&&await this.restartToComplete({topic:e,id:e,relay:n});const a={method:Li(n.protocol).subscribe,params:{topic:e}};this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:a});const c=(i=r==null?void 0:r.internal)==null?void 0:i.throwOnFailedPublish;try{if((r==null?void 0:r.transportType)===Je.link_mode)return setTimeout(()=>{(this.relayer.connected||this.relayer.connecting)&&this.relayer.request(a).catch(d=>this.logger.warn(d))},G.toMiliseconds(G.ONE_SECOND)),o;const l=new Promise(async d=>{const h=f=>{f.topic===e&&(this.events.removeListener(vn.created,h),d(f.id))};this.events.on(vn.created,h);try{const f=await mr(new Promise((p,g)=>{this.relayer.request(a).catch(y=>{this.logger.warn(y,y==null?void 0:y.message),g(y)}).then(p)}),this.initialSubscribeTimeout,`Subscribing to ${e} failed, please try again`);this.events.removeListener(vn.created,h),d(f)}catch{}}),u=await mr(l,this.subscribeTimeout,`Subscribing to ${e} failed, please try again`);if(!u&&c)throw new Error(`Subscribing to ${e} failed, please try again`);return u?o:null}catch(l){if(this.logger.debug("Outgoing Relay Subscribe Payload stalled"),this.relayer.events.emit(ut.connection_stalled),c)throw l}return null}async rpcBatchSubscribe(e){if(!e.length)return;const n=e[0].relay,r={method:Li(n.protocol).batchSubscribe,params:{topics:e.map(s=>s.topic)}};this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:r});try{await await mr(new Promise(s=>{this.relayer.request(r).catch(i=>this.logger.warn(i)).then(s)}),this.subscribeTimeout,"rpcBatchSubscribe failed, please try again")}catch{this.relayer.events.emit(ut.connection_stalled)}}async rpcBatchFetchMessages(e){if(!e.length)return;const n=e[0].relay,r={method:Li(n.protocol).batchFetchMessages,params:{topics:e.map(i=>i.topic)}};this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:r});let s;try{s=await await mr(new Promise((i,o)=>{this.relayer.request(r).catch(a=>{this.logger.warn(a),o(a)}).then(i)}),this.subscribeTimeout,"rpcBatchFetchMessages failed, please try again")}catch{this.relayer.events.emit(ut.connection_stalled)}return s}rpcUnsubscribe(e,n,r){const s={method:Li(r.protocol).unsubscribe,params:{topic:e,id:n}};return this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:s}),this.relayer.request(s)}onSubscribe(e,n){this.setSubscription(e,Ru(vo({},n),{id:e})),this.pending.delete(n.topic)}onBatchSubscribe(e){e.length&&e.forEach(n=>{this.setSubscription(n.id,vo({},n)),this.pending.delete(n.topic)})}async onUnsubscribe(e,n,r){this.events.removeAllListeners(n),this.hasSubscription(n,e)&&this.deleteSubscription(n,r),await this.relayer.messages.del(e)}async setRelayerSubscriptions(e){await this.relayer.core.storage.setItem(this.storageKey,e)}async getRelayerSubscriptions(){return await this.relayer.core.storage.getItem(this.storageKey)}setSubscription(e,n){this.logger.debug("Setting subscription"),this.logger.trace({type:"method",method:"setSubscription",id:e,subscription:n}),this.addSubscription(e,n)}addSubscription(e,n){this.subscriptions.set(e,vo({},n)),this.topicMap.set(n.topic,e),this.events.emit(vn.created,n)}getSubscription(e){this.logger.debug("Getting subscription"),this.logger.trace({type:"method",method:"getSubscription",id:e});const n=this.subscriptions.get(e);if(!n){const{message:r}=Y("NO_MATCHING_KEY",`${this.name}: ${e}`);throw new Error(r)}return n}deleteSubscription(e,n){this.logger.debug("Deleting subscription"),this.logger.trace({type:"method",method:"deleteSubscription",id:e,reason:n});const r=this.getSubscription(e);this.subscriptions.delete(e),this.topicMap.delete(r.topic,e),this.events.emit(vn.deleted,Ru(vo({},r),{reason:n}))}async persist(){await this.setRelayerSubscriptions(this.values),this.events.emit(vn.sync)}async onRestart(){if(this.cached.length){const e=[...this.cached],n=Math.ceil(this.cached.length/this.batchSubscribeTopicsLimit);for(let r=0;r<n;r++){const s=e.splice(0,this.batchSubscribeTopicsLimit);await this.batchSubscribe(s)}}this.events.emit(vn.resubscribed)}async restore(){try{const e=await this.getRelayerSubscriptions();if(typeof e>"u"||!e.length)return;if(this.subscriptions.size&&!e.every(n=>{var r;return n.topic===((r=this.subscriptions.get(n.id))==null?void 0:r.topic)})){const{message:n}=Y("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(n),this.logger.error(`${this.name}: ${JSON.stringify(this.values)}`),new Error(n)}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){e.length&&(await this.rpcBatchSubscribe(e),this.onBatchSubscribe(await Promise.all(e.map(async n=>Ru(vo({},n),{id:await this.getSubscriptionId(n.topic)})))))}async batchFetchMessages(e){if(!e.length)return;this.logger.trace(`Fetching batch messages for ${e.length} subscriptions`);const n=await this.rpcBatchFetchMessages(e);n&&n.messages&&(await Ix(G.toMiliseconds(G.ONE_SECOND)),await this.relayer.handleBatchMessageEvents(n.messages))}async onConnect(){await this.restart(),this.reset()}onDisconnect(){this.onDisable()}isInitialized(){if(!this.initialized){const{message:e}=Y("NOT_INITIALIZED",this.name);throw new Error(e)}}async restartToComplete(e){!this.relayer.connected&&!this.relayer.connecting&&(this.cached.push(e),await this.relayer.transportOpen())}async getClientId(){return this.clientId||(this.clientId=await this.relayer.core.crypto.getClientId()),this.clientId}async getSubscriptionId(e){return Bn(e+await this.getClientId())}}var KU=Object.defineProperty,nm=Object.getOwnPropertySymbols,GU=Object.prototype.hasOwnProperty,YU=Object.prototype.propertyIsEnumerable,Gd=(t,e,n)=>e in t?KU(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,rm=(t,e)=>{for(var n in e||(e={}))GU.call(e,n)&&Gd(t,n,e[n]);if(nm)for(var n of nm(e))YU.call(e,n)&&Gd(t,n,e[n]);return t},Le=(t,e,n)=>Gd(t,typeof e!="symbol"?e+"":e,n);class ZU extends cS{constructor(e){var n;super(e),Le(this,"protocol","wc"),Le(this,"version",2),Le(this,"core"),Le(this,"logger"),Le(this,"events",new sr.EventEmitter),Le(this,"provider"),Le(this,"messages"),Le(this,"subscriber"),Le(this,"publisher"),Le(this,"name",S4),Le(this,"transportExplicitlyClosed",!1),Le(this,"initialized",!1),Le(this,"connectionAttemptInProgress",!1),Le(this,"relayUrl"),Le(this,"projectId"),Le(this,"packageName"),Le(this,"bundleId"),Le(this,"hasExperiencedNetworkDisruption",!1),Le(this,"pingTimeout"),Le(this,"heartBeatTimeout",G.toMiliseconds(G.THIRTY_SECONDS+G.FIVE_SECONDS)),Le(this,"reconnectTimeout"),Le(this,"connectPromise"),Le(this,"reconnectInProgress",!1),Le(this,"requestsInFlight",[]),Le(this,"connectTimeout",G.toMiliseconds(G.ONE_SECOND*15)),Le(this,"request",async r=>{var s,i;this.logger.debug("Publishing Request Payload");const o=r.id||bs().toString();await this.toEstablishConnection();try{this.logger.trace({id:o,method:r.method,topic:(s=r.params)==null?void 0:s.topic},"relayer.request - publishing...");const a=`${o}:${((i=r.params)==null?void 0:i.tag)||""}`;this.requestsInFlight.push(a);const c=await this.provider.request(r);return this.requestsInFlight=this.requestsInFlight.filter(l=>l!==a),c}catch(a){throw this.logger.debug(`Failed to Publish Request: ${o}`),a}}),Le(this,"resetPingTimeout",()=>{zc()&&(clearTimeout(this.pingTimeout),this.pingTimeout=setTimeout(()=>{var r,s,i,o;try{this.logger.debug({},"pingTimeout: Connection stalled, terminating..."),(o=(i=(s=(r=this.provider)==null?void 0:r.connection)==null?void 0:s.socket)==null?void 0:i.terminate)==null||o.call(i)}catch(a){this.logger.warn(a,a==null?void 0:a.message)}},this.heartBeatTimeout))}),Le(this,"onPayloadHandler",r=>{this.onProviderPayload(r),this.resetPingTimeout()}),Le(this,"onConnectHandler",()=>{this.logger.warn({},"Relayer connected 🛜"),this.startPingTimeout(),this.events.emit(ut.connect)}),Le(this,"onDisconnectHandler",()=>{this.logger.warn({},"Relayer disconnected 🛑"),this.requestsInFlight=[],this.onProviderDisconnect()}),Le(this,"onProviderErrorHandler",r=>{this.logger.fatal(`Fatal socket error: ${r.message}`),this.events.emit(ut.error,r),this.logger.fatal("Fatal socket error received, closing transport"),this.transportClose()}),Le(this,"registerProviderListeners",()=>{this.provider.on(xn.payload,this.onPayloadHandler),this.provider.on(xn.connect,this.onConnectHandler),this.provider.on(xn.disconnect,this.onDisconnectHandler),this.provider.on(xn.error,this.onProviderErrorHandler)}),this.core=e.core,this.logger=Hh({logger:(n=e.logger)!=null?n:A4,name:this.name}),this.messages=new xU(this.logger,e.core),this.subscriber=new VU(this,this.logger),this.publisher=new BU(this,this.logger),this.projectId=e==null?void 0:e.projectId,this.relayUrl=(e==null?void 0:e.relayUrl)||SE,ux()?this.packageName=qp():dx()&&(this.bundleId=qp()),this.provider={}}async init(){this.logger.trace("Initialized"),this.registerEventListeners(),await Promise.all([this.messages.init(),this.subscriber.init()]),this.initialized=!0,this.transportOpen().catch(e=>this.logger.warn(e,e==null?void 0:e.message))}get context(){return yn(this.logger)}get connected(){var e,n,r;return((r=(n=(e=this.provider)==null?void 0:e.connection)==null?void 0:n.socket)==null?void 0:r.readyState)===1||!1}get connecting(){var e,n,r;return((r=(n=(e=this.provider)==null?void 0:e.connection)==null?void 0:n.socket)==null?void 0:r.readyState)===0||this.connectPromise!==void 0||!1}async publish(e,n,r){this.isInitialized(),await this.publisher.publish(e,n,r),await this.recordMessageEvent({topic:e,message:n,publishedAt:Date.now(),transportType:Je.relay},wc.outbound)}async publishCustom(e){this.isInitialized(),await this.publisher.publishCustom(e)}async subscribe(e,n){var r,s,i;this.isInitialized(),(!(n!=null&&n.transportType)||(n==null?void 0:n.transportType)==="relay")&&await this.toEstablishConnection();const o=typeof((r=n==null?void 0:n.internal)==null?void 0:r.throwOnFailedPublish)>"u"?!0:(s=n==null?void 0:n.internal)==null?void 0:s.throwOnFailedPublish;let a=((i=this.subscriber.topicMap.get(e))==null?void 0:i[0])||"",c;const l=u=>{u.topic===e&&(this.subscriber.off(vn.created,l),c())};return await Promise.all([new Promise(u=>{c=u,this.subscriber.on(vn.created,l)}),new Promise(async(u,d)=>{a=await this.subscriber.subscribe(e,rm({internal:{throwOnFailedPublish:o}},n)).catch(h=>{o&&d(h)})||a,u()})]),a}async unsubscribe(e,n){this.isInitialized(),await this.subscriber.unsubscribe(e,n)}on(e,n){this.events.on(e,n)}once(e,n){this.events.once(e,n)}off(e,n){this.events.off(e,n)}removeListener(e,n){this.events.removeListener(e,n)}async transportDisconnect(){this.provider.disconnect&&(this.hasExperiencedNetworkDisruption||this.connected)?await mr(this.provider.disconnect(),2e3,"provider.disconnect()").catch(()=>this.onProviderDisconnect()):this.onProviderDisconnect()}async transportClose(){this.transportExplicitlyClosed=!0,await this.transportDisconnect()}async transportOpen(e){if(!this.subscriber.hasAnyTopics){this.logger.info("Starting WS connection skipped because the client has no topics to work with.");return}if(this.connectPromise?(this.logger.debug({},"Waiting for existing connection attempt to resolve..."),await this.connectPromise,this.logger.debug({},"Existing connection attempt resolved")):(this.connectPromise=new Promise(async(n,r)=>{await this.connect(e).then(n).catch(r).finally(()=>{this.connectPromise=void 0})}),await this.connectPromise),!this.connected)throw new Error(`Couldn't establish socket connection to the relay server: ${this.relayUrl}`)}async restartTransport(e){this.logger.debug({},"Restarting transport..."),!this.connectionAttemptInProgress&&(this.relayUrl=e||this.relayUrl,await this.confirmOnlineStateOrThrow(),await this.transportClose(),await this.transportOpen())}async confirmOnlineStateOrThrow(){if(!await Ug())throw new Error("No internet connection detected. Please restart your network and try again.")}async handleBatchMessageEvents(e){if((e==null?void 0:e.length)===0){this.logger.trace("Batch message events is empty. Ignoring...");return}const n=e.sort((r,s)=>r.publishedAt-s.publishedAt);this.logger.debug(`Batch of ${n.length} message events sorted`);for(const r of n)try{await this.onMessageEvent(r)}catch(s){this.logger.warn(s,"Error while processing batch message event: "+(s==null?void 0:s.message))}this.logger.trace(`Batch of ${n.length} message events processed`)}async onLinkMessageEvent(e,n){const{topic:r}=e;if(!n.sessionExists){const s=lt(G.FIVE_MINUTES),i={topic:r,expiry:s,relay:{protocol:"irn"},active:!1};await this.core.pairing.pairings.set(r,i)}this.events.emit(ut.message,e),await this.recordMessageEvent(e,wc.inbound)}async connect(e){await this.confirmOnlineStateOrThrow(),e&&e!==this.relayUrl&&(this.relayUrl=e,await this.transportDisconnect()),this.connectionAttemptInProgress=!0,this.transportExplicitlyClosed=!1;let n=1;for(;n<6;){try{if(this.transportExplicitlyClosed)break;this.logger.debug({},`Connecting to ${this.relayUrl}, attempt: ${n}...`),await this.createProvider(),await new Promise(async(r,s)=>{const i=()=>{s(new Error("Connection interrupted while trying to connect"))};this.provider.once(xn.disconnect,i),await mr(new Promise((o,a)=>{this.provider.connect().then(o).catch(a)}),this.connectTimeout,`Socket stalled when trying to connect to ${this.relayUrl}`).catch(o=>{s(o)}).finally(()=>{this.provider.off(xn.disconnect,i),clearTimeout(this.reconnectTimeout)}),await new Promise(async(o,a)=>{const c=()=>{s(new Error("Connection interrupted while trying to subscribe"))};this.provider.once(xn.disconnect,c),await this.subscriber.start().then(o).catch(a).finally(()=>{this.provider.off(xn.disconnect,c)})}),this.hasExperiencedNetworkDisruption=!1,r()})}catch(r){await this.subscriber.stop();const s=r;this.logger.warn({},s.message),this.hasExperiencedNetworkDisruption=!0}finally{this.connectionAttemptInProgress=!1}if(this.connected){this.logger.debug({},`Connected to ${this.relayUrl} successfully on attempt: ${n}`);break}await new Promise(r=>setTimeout(r,G.toMiliseconds(n*1))),n++}}startPingTimeout(){var e,n,r,s,i;if(zc())try{(n=(e=this.provider)==null?void 0:e.connection)!=null&&n.socket&&((i=(s=(r=this.provider)==null?void 0:r.connection)==null?void 0:s.socket)==null||i.on("ping",()=>{this.resetPingTimeout()})),this.resetPingTimeout()}catch(o){this.logger.warn(o,o==null?void 0:o.message)}}async createProvider(){this.provider.connection&&this.unregisterProviderListeners();const e=await this.core.crypto.signJWT(this.relayUrl);this.provider=new Kh(new f4(mx({sdkVersion:Wd,protocol:this.protocol,version:this.version,relayUrl:this.relayUrl,projectId:this.projectId,auth:e,useOnCloseEvent:!0,bundleId:this.bundleId,packageName:this.packageName}))),this.registerProviderListeners()}async recordMessageEvent(e,n){const{topic:r,message:s}=e;await this.messages.set(r,s,n)}async shouldIgnoreMessageEvent(e){const{topic:n,message:r}=e;if(!r||r.length===0)return this.logger.warn(`Ignoring invalid/empty message: ${r}`),!0;if(!await this.subscriber.isKnownTopic(n))return this.logger.warn(`Ignoring message for unknown topic ${n}`),!0;const s=this.messages.has(n,r);return s&&this.logger.warn(`Ignoring duplicate message: ${r}`),s}async onProviderPayload(e){if(this.logger.debug("Incoming Relay Payload"),this.logger.trace({type:"payload",direction:"incoming",payload:e}),Vh(e)){if(!e.method.endsWith(I4))return;const n=e.params,{topic:r,message:s,publishedAt:i,attestation:o}=n.data,a={topic:r,message:s,publishedAt:i,transportType:Je.relay,attestation:o};this.logger.debug("Emitting Relayer Payload"),this.logger.trace(rm({type:"event",event:n.id},a)),this.events.emit(n.id,a),await this.acknowledgePayload(e),await this.onMessageEvent(a)}else Nl(e)&&this.events.emit(ut.message_ack,e)}async onMessageEvent(e){await this.shouldIgnoreMessageEvent(e)||(await this.recordMessageEvent(e,wc.inbound),this.events.emit(ut.message,e))}async acknowledgePayload(e){const n=pa(e.id,!0);await this.provider.connection.send(n)}unregisterProviderListeners(){this.provider.off(xn.payload,this.onPayloadHandler),this.provider.off(xn.connect,this.onConnectHandler),this.provider.off(xn.disconnect,this.onDisconnectHandler),this.provider.off(xn.error,this.onProviderErrorHandler),clearTimeout(this.pingTimeout)}async registerEventListeners(){let e=await Ug();fk(async n=>{e!==n&&(e=n,n?await this.transportOpen().catch(r=>this.logger.error(r,r==null?void 0:r.message)):(this.hasExperiencedNetworkDisruption=!0,await this.transportDisconnect(),this.transportExplicitlyClosed=!1))}),this.core.heartbeat.on(wi.pulse,async()=>{if(!this.transportExplicitlyClosed&&!this.connected&&mk())try{await this.confirmOnlineStateOrThrow(),await this.transportOpen()}catch(n){this.logger.warn(n,n==null?void 0:n.message)}})}async onProviderDisconnect(){clearTimeout(this.pingTimeout),this.events.emit(ut.disconnect),this.connectionAttemptInProgress=!1,!this.reconnectInProgress&&(this.reconnectInProgress=!0,await this.subscriber.stop(),this.subscriber.hasAnyTopics&&(this.transportExplicitlyClosed||(this.reconnectTimeout=setTimeout(async()=>{await this.transportOpen().catch(e=>this.logger.error(e,e==null?void 0:e.message)),this.reconnectTimeout=void 0,this.reconnectInProgress=!1},G.toMiliseconds(N4)))))}isInitialized(){if(!this.initialized){const{message:e}=Y("NOT_INITIALIZED",this.name);throw new Error(e)}}async toEstablishConnection(){if(await this.confirmOnlineStateOrThrow(),!this.connected){if(this.connectPromise){await this.connectPromise;return}await this.connect()}}}function JU(t,e){return t===e||Number.isNaN(t)&&Number.isNaN(e)}function sm(t){return Object.getOwnPropertySymbols(t).filter(e=>Object.prototype.propertyIsEnumerable.call(t,e))}function im(t){return t==null?t===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(t)}const XU="[object RegExp]",QU="[object String]",e5="[object Number]",t5="[object Boolean]",om="[object Arguments]",n5="[object Symbol]",r5="[object Date]",s5="[object Map]",i5="[object Set]",o5="[object Array]",a5="[object Function]",c5="[object ArrayBuffer]",xu="[object Object]",l5="[object Error]",u5="[object DataView]",d5="[object Uint8Array]",h5="[object Uint8ClampedArray]",f5="[object Uint16Array]",p5="[object Uint32Array]",g5="[object BigUint64Array]",m5="[object Int8Array]",y5="[object Int16Array]",w5="[object Int32Array]",E5="[object BigInt64Array]",b5="[object Float32Array]",_5="[object Float64Array]";function v5(){}function am(t){if(!t||typeof t!="object")return!1;const e=Object.getPrototypeOf(t);return e===null||e===Object.prototype||Object.getPrototypeOf(e)===null?Object.prototype.toString.call(t)==="[object Object]":!1}function C5(t,e,n){return xo(t,e,void 0,void 0,void 0,void 0,n)}function xo(t,e,n,r,s,i,o){const a=o(t,e,n,r,s,i);if(a!==void 0)return a;if(typeof t==typeof e)switch(typeof t){case"bigint":case"string":case"boolean":case"symbol":case"undefined":return t===e;case"number":return t===e||Object.is(t,e);case"function":return t===e;case"object":return Lo(t,e,i,o)}return Lo(t,e,i,o)}function Lo(t,e,n,r){if(Object.is(t,e))return!0;let s=im(t),i=im(e);if(s===om&&(s=xu),i===om&&(i=xu),s!==i)return!1;switch(s){case QU:return t.toString()===e.toString();case e5:{const c=t.valueOf(),l=e.valueOf();return JU(c,l)}case t5:case r5:case n5:return Object.is(t.valueOf(),e.valueOf());case XU:return t.source===e.source&&t.flags===e.flags;case a5:return t===e}n=n??new Map;const o=n.get(t),a=n.get(e);if(o!=null&&a!=null)return o===e;n.set(t,e),n.set(e,t);try{switch(s){case s5:{if(t.size!==e.size)return!1;for(const[c,l]of t.entries())if(!e.has(c)||!xo(l,e.get(c),c,t,e,n,r))return!1;return!0}case i5:{if(t.size!==e.size)return!1;const c=Array.from(t.values()),l=Array.from(e.values());for(let u=0;u<c.length;u++){const d=c[u],h=l.findIndex(f=>xo(d,f,void 0,t,e,n,r));if(h===-1)return!1;l.splice(h,1)}return!0}case o5:case d5:case h5:case f5:case p5:case g5:case m5:case y5:case w5:case E5:case b5:case _5:{if(typeof Be<"u"&&Be.isBuffer(t)!==Be.isBuffer(e)||t.length!==e.length)return!1;for(let c=0;c<t.length;c++)if(!xo(t[c],e[c],c,t,e,n,r))return!1;return!0}case c5:return t.byteLength!==e.byteLength?!1:Lo(new Uint8Array(t),new Uint8Array(e),n,r);case u5:return t.byteLength!==e.byteLength||t.byteOffset!==e.byteOffset?!1:Lo(new Uint8Array(t),new Uint8Array(e),n,r);case l5:return t.name===e.name&&t.message===e.message;case xu:{if(!(Lo(t.constructor,e.constructor,n,r)||am(t)&&am(e)))return!1;const c=[...Object.keys(t),...sm(t)],l=[...Object.keys(e),...sm(e)];if(c.length!==l.length)return!1;for(let u=0;u<c.length;u++){const d=c[u],h=t[d];if(!Object.hasOwn(e,d))return!1;const f=e[d];if(!xo(h,f,d,t,e,n,r))return!1}return!0}default:return!1}}finally{n.delete(t),n.delete(e)}}function A5(t,e){return C5(t,e,v5)}var S5=Object.defineProperty,cm=Object.getOwnPropertySymbols,I5=Object.prototype.hasOwnProperty,N5=Object.prototype.propertyIsEnumerable,Yd=(t,e,n)=>e in t?S5(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,lm=(t,e)=>{for(var n in e||(e={}))I5.call(e,n)&&Yd(t,n,e[n]);if(cm)for(var n of cm(e))N5.call(e,n)&&Yd(t,n,e[n]);return t},an=(t,e,n)=>Yd(t,typeof e!="symbol"?e+"":e,n);class vi extends lS{constructor(e,n,r,s=Cr,i=void 0){super(e,n,r,s),this.core=e,this.logger=n,this.name=r,an(this,"map",new Map),an(this,"version",T4),an(this,"cached",[]),an(this,"initialized",!1),an(this,"getKey"),an(this,"storagePrefix",Cr),an(this,"recentlyDeleted",[]),an(this,"recentlyDeletedLimit",200),an(this,"init",async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach(o=>{this.getKey&&o!==null&&!yt(o)?this.map.set(this.getKey(o),o):HD(o)?this.map.set(o.id,o):zD(o)&&this.map.set(o.topic,o)}),this.cached=[],this.initialized=!0)}),an(this,"set",async(o,a)=>{this.isInitialized(),this.map.has(o)?await this.update(o,a):(this.logger.debug("Setting value"),this.logger.trace({type:"method",method:"set",key:o,value:a}),this.map.set(o,a),await this.persist())}),an(this,"get",o=>(this.isInitialized(),this.logger.debug("Getting value"),this.logger.trace({type:"method",method:"get",key:o}),this.getData(o))),an(this,"getAll",o=>(this.isInitialized(),o?this.values.filter(a=>Object.keys(o).every(c=>A5(a[c],o[c]))):this.values)),an(this,"update",async(o,a)=>{this.isInitialized(),this.logger.debug("Updating value"),this.logger.trace({type:"method",method:"update",key:o,update:a});const c=lm(lm({},this.getData(o)),a);this.map.set(o,c),await this.persist()}),an(this,"delete",async(o,a)=>{this.isInitialized(),this.map.has(o)&&(this.logger.debug("Deleting value"),this.logger.trace({type:"method",method:"delete",key:o,reason:a}),this.map.delete(o),this.addToRecentlyDeleted(o),await this.persist())}),this.logger=wn(n,this.name),this.storagePrefix=s,this.getKey=i}get context(){return yn(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 n=this.map.get(e);if(!n){if(this.recentlyDeleted.includes(e)){const{message:s}=Y("MISSING_OR_INVALID",`Record was recently deleted - ${this.name}: ${e}`);throw this.logger.error(s),new Error(s)}const{message:r}=Y("NO_MATCHING_KEY",`${this.name}: ${e}`);throw this.logger.error(r),new Error(r)}return n}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:n}=Y("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(n),new Error(n)}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}=Y("NOT_INITIALIZED",this.name);throw new Error(e)}}}var T5=Object.defineProperty,O5=(t,e,n)=>e in t?T5(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Pe=(t,e,n)=>O5(t,typeof e!="symbol"?e+"":e,n);class R5{constructor(e,n){this.core=e,this.logger=n,Pe(this,"name",P4),Pe(this,"version",D4),Pe(this,"events",new oh),Pe(this,"pairings"),Pe(this,"initialized",!1),Pe(this,"storagePrefix",Cr),Pe(this,"ignoredPayloadTypes",[Vr]),Pe(this,"registeredMethods",[]),Pe(this,"init",async()=>{this.initialized||(await this.pairings.init(),await this.cleanup(),this.registerRelayerEvents(),this.registerExpirerEvents(),this.initialized=!0,this.logger.trace("Initialized"))}),Pe(this,"register",({methods:r})=>{this.isInitialized(),this.registeredMethods=[...new Set([...this.registeredMethods,...r])]}),Pe(this,"create",async r=>{this.isInitialized();const s=Bd(),i=await this.core.crypto.setSymKey(s),o=lt(G.FIVE_MINUTES),a={protocol:AE},c={topic:i,expiry:o,relay:a,active:!1,methods:r==null?void 0:r.methods},l=Ig({protocol:this.core.protocol,version:this.core.version,topic:i,symKey:s,relay:a,expiryTimestamp:o,methods:r==null?void 0:r.methods});return this.events.emit(Hs.create,c),this.core.expirer.set(i,o),await this.pairings.set(i,c),await this.core.relayer.subscribe(i,{transportType:r==null?void 0:r.transportType,internal:r==null?void 0:r.internal}),{topic:i,uri:l}}),Pe(this,"pair",async r=>{this.isInitialized();const s=this.core.eventClient.createEvent({properties:{topic:r==null?void 0:r.uri,trace:[ur.pairing_started]}});this.isValidPair(r,s);const{topic:i,symKey:o,relay:a,expiryTimestamp:c,methods:l}=Sg(r.uri);s.props.properties.topic=i,s.addTrace(ur.pairing_uri_validation_success),s.addTrace(ur.pairing_uri_not_expired);let u;if(this.pairings.keys.includes(i)){if(u=this.pairings.get(i),s.addTrace(ur.existing_pairing),u.active)throw s.setError(kr.active_pairing_already_exists),new Error(`Pairing already exists: ${i}. Please try again with a new connection URI.`);s.addTrace(ur.pairing_not_expired)}const d=c||lt(G.FIVE_MINUTES),h={topic:i,relay:a,expiry:d,active:!1,methods:l};this.core.expirer.set(i,d),await this.pairings.set(i,h),s.addTrace(ur.store_new_pairing),r.activatePairing&&await this.activate({topic:i}),this.events.emit(Hs.create,h),s.addTrace(ur.emit_inactive_pairing),this.core.crypto.keychain.has(i)||await this.core.crypto.setSymKey(o,i),s.addTrace(ur.subscribing_pairing_topic);try{await this.core.relayer.confirmOnlineStateOrThrow()}catch{s.setError(kr.no_internet_connection)}try{await this.core.relayer.subscribe(i,{relay:a})}catch(f){throw s.setError(kr.subscribe_pairing_topic_failure),f}return s.addTrace(ur.subscribe_pairing_topic_success),h}),Pe(this,"activate",async({topic:r})=>{this.isInitialized();const s=lt(G.FIVE_MINUTES);this.core.expirer.set(r,s),await this.pairings.update(r,{active:!0,expiry:s})}),Pe(this,"ping",async r=>{this.isInitialized(),await this.isValidPing(r),this.logger.warn("ping() is deprecated and will be removed in the next major release.");const{topic:s}=r;if(this.pairings.keys.includes(s)){const i=await this.sendRequest(s,"wc_pairingPing",{}),{done:o,resolve:a,reject:c}=Ws();this.events.once(He("pairing_ping",i),({error:l})=>{l?c(l):a()}),await o()}}),Pe(this,"updateExpiry",async({topic:r,expiry:s})=>{this.isInitialized(),await this.pairings.update(r,{expiry:s})}),Pe(this,"updateMetadata",async({topic:r,metadata:s})=>{this.isInitialized(),await this.pairings.update(r,{peerMetadata:s})}),Pe(this,"getPairings",()=>(this.isInitialized(),this.pairings.values)),Pe(this,"disconnect",async r=>{this.isInitialized(),await this.isValidDisconnect(r);const{topic:s}=r;this.pairings.keys.includes(s)&&(await this.sendRequest(s,"wc_pairingDelete",et("USER_DISCONNECTED")),await this.deletePairing(s))}),Pe(this,"formatUriFromPairing",r=>{this.isInitialized();const{topic:s,relay:i,expiry:o,methods:a}=r,c=this.core.crypto.keychain.get(s);return Ig({protocol:this.core.protocol,version:this.core.version,topic:s,symKey:c,relay:i,expiryTimestamp:o,methods:a})}),Pe(this,"sendRequest",async(r,s,i)=>{const o=Jn(s,i),a=await this.core.crypto.encode(r,o),c=bo[s].req;return this.core.history.set(r,o),this.core.relayer.publish(r,a,c),o.id}),Pe(this,"sendResult",async(r,s,i)=>{const o=pa(r,i),a=await this.core.crypto.encode(s,o),c=(await this.core.history.get(s,r)).request.method,l=bo[c].res;await this.core.relayer.publish(s,a,l),await this.core.history.resolve(o)}),Pe(this,"sendError",async(r,s,i)=>{const o=Il(r,i),a=await this.core.crypto.encode(s,o),c=(await this.core.history.get(s,r)).request.method,l=bo[c]?bo[c].res:bo.unregistered_method.res;await this.core.relayer.publish(s,a,l),await this.core.history.resolve(o)}),Pe(this,"deletePairing",async(r,s)=>{await this.core.relayer.unsubscribe(r),await Promise.all([this.pairings.delete(r,et("USER_DISCONNECTED")),this.core.crypto.deleteSymKey(r),s?Promise.resolve():this.core.expirer.del(r)])}),Pe(this,"cleanup",async()=>{const r=this.pairings.getAll().filter(s=>fr(s.expiry));await Promise.all(r.map(s=>this.deletePairing(s.topic)))}),Pe(this,"onRelayEventRequest",async r=>{const{topic:s,payload:i}=r;switch(i.method){case"wc_pairingPing":return await this.onPairingPingRequest(s,i);case"wc_pairingDelete":return await this.onPairingDeleteRequest(s,i);default:return await this.onUnknownRpcMethodRequest(s,i)}}),Pe(this,"onRelayEventResponse",async r=>{const{topic:s,payload:i}=r,o=(await this.core.history.get(s,i.id)).request.method;switch(o){case"wc_pairingPing":return this.onPairingPingResponse(s,i);default:return this.onUnknownRpcMethodResponse(o)}}),Pe(this,"onPairingPingRequest",async(r,s)=>{const{id:i}=s;try{this.isValidPing({topic:r}),await this.sendResult(i,r,!0),this.events.emit(Hs.ping,{id:i,topic:r})}catch(o){await this.sendError(i,r,o),this.logger.error(o)}}),Pe(this,"onPairingPingResponse",(r,s)=>{const{id:i}=s;setTimeout(()=>{hr(s)?this.events.emit(He("pairing_ping",i),{}):Fn(s)&&this.events.emit(He("pairing_ping",i),{error:s.error})},500)}),Pe(this,"onPairingDeleteRequest",async(r,s)=>{const{id:i}=s;try{this.isValidDisconnect({topic:r}),await this.deletePairing(r),this.events.emit(Hs.delete,{id:i,topic:r})}catch(o){await this.sendError(i,r,o),this.logger.error(o)}}),Pe(this,"onUnknownRpcMethodRequest",async(r,s)=>{const{id:i,method:o}=s;try{if(this.registeredMethods.includes(o))return;const a=et("WC_METHOD_UNSUPPORTED",o);await this.sendError(i,r,a),this.logger.error(a)}catch(a){await this.sendError(i,r,a),this.logger.error(a)}}),Pe(this,"onUnknownRpcMethodResponse",r=>{this.registeredMethods.includes(r)||this.logger.error(et("WC_METHOD_UNSUPPORTED",r))}),Pe(this,"isValidPair",(r,s)=>{var i;if(!ln(r)){const{message:a}=Y("MISSING_OR_INVALID",`pair() params: ${r}`);throw s.setError(kr.malformed_pairing_uri),new Error(a)}if(!qD(r.uri)){const{message:a}=Y("MISSING_OR_INVALID",`pair() uri: ${r.uri}`);throw s.setError(kr.malformed_pairing_uri),new Error(a)}const o=Sg(r==null?void 0:r.uri);if(!((i=o==null?void 0:o.relay)!=null&&i.protocol)){const{message:a}=Y("MISSING_OR_INVALID","pair() uri#relay-protocol");throw s.setError(kr.malformed_pairing_uri),new Error(a)}if(!(o!=null&&o.symKey)){const{message:a}=Y("MISSING_OR_INVALID","pair() uri#symKey");throw s.setError(kr.malformed_pairing_uri),new Error(a)}if(o!=null&&o.expiryTimestamp&&G.toMiliseconds(o==null?void 0:o.expiryTimestamp)<Date.now()){s.setError(kr.pairing_expired);const{message:a}=Y("EXPIRED","pair() URI has expired. Please try again with a new connection URI.");throw new Error(a)}}),Pe(this,"isValidPing",async r=>{if(!ln(r)){const{message:i}=Y("MISSING_OR_INVALID",`ping() params: ${r}`);throw new Error(i)}const{topic:s}=r;await this.isValidPairingTopic(s)}),Pe(this,"isValidDisconnect",async r=>{if(!ln(r)){const{message:i}=Y("MISSING_OR_INVALID",`disconnect() params: ${r}`);throw new Error(i)}const{topic:s}=r;await this.isValidPairingTopic(s)}),Pe(this,"isValidPairingTopic",async r=>{if(!dt(r,!1)){const{message:s}=Y("MISSING_OR_INVALID",`pairing topic should be a string: ${r}`);throw new Error(s)}if(!this.pairings.keys.includes(r)){const{message:s}=Y("NO_MATCHING_KEY",`pairing topic doesn't exist: ${r}`);throw new Error(s)}if(fr(this.pairings.get(r).expiry)){await this.deletePairing(r);const{message:s}=Y("EXPIRED",`pairing topic: ${r}`);throw new Error(s)}}),this.core=e,this.logger=wn(n,this.name),this.pairings=new vi(this.core,this.logger,this.name,this.storagePrefix)}get context(){return yn(this.logger)}isInitialized(){if(!this.initialized){const{message:e}=Y("NOT_INITIALIZED",this.name);throw new Error(e)}}registerRelayerEvents(){this.core.relayer.on(ut.message,async e=>{const{topic:n,message:r,transportType:s}=e;if(this.pairings.keys.includes(n)&&s!==Je.link_mode&&!this.ignoredPayloadTypes.includes(this.core.crypto.getPayloadType(r)))try{const i=await this.core.crypto.decode(n,r);Vh(i)?(this.core.history.set(n,i),await this.onRelayEventRequest({topic:n,payload:i})):Nl(i)&&(await this.core.history.resolve(i),await this.onRelayEventResponse({topic:n,payload:i}),this.core.history.delete(n,i.id)),await this.core.relayer.messages.ack(n,r)}catch(i){this.logger.error(i)}})}registerExpirerEvents(){this.core.expirer.on(Un.expired,async e=>{const{topic:n}=f0(e.target);n&&this.pairings.keys.includes(n)&&(await this.deletePairing(n,!0),this.events.emit(Hs.expire,{topic:n}))})}}var x5=Object.defineProperty,P5=(t,e,n)=>e in t?x5(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Tt=(t,e,n)=>P5(t,typeof e!="symbol"?e+"":e,n);class D5 extends iS{constructor(e,n){super(e,n),this.core=e,this.logger=n,Tt(this,"records",new Map),Tt(this,"events",new sr.EventEmitter),Tt(this,"name",k4),Tt(this,"version",U4),Tt(this,"cached",[]),Tt(this,"initialized",!1),Tt(this,"storagePrefix",Cr),Tt(this,"init",async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach(r=>this.records.set(r.id,r)),this.cached=[],this.registerEventListeners(),this.initialized=!0)}),Tt(this,"set",(r,s,i)=>{if(this.isInitialized(),this.logger.debug("Setting JSON-RPC request history record"),this.logger.trace({type:"method",method:"set",topic:r,request:s,chainId:i}),this.records.has(s.id))return;const o={id:s.id,topic:r,request:{method:s.method,params:s.params||null},chainId:i,expiry:lt(G.THIRTY_DAYS)};this.records.set(o.id,o),this.persist(),this.events.emit(zn.created,o)}),Tt(this,"resolve",async r=>{if(this.isInitialized(),this.logger.debug("Updating JSON-RPC response history record"),this.logger.trace({type:"method",method:"update",response:r}),!this.records.has(r.id))return;const s=await this.getRecord(r.id);typeof s.response>"u"&&(s.response=Fn(r)?{error:r.error}:{result:r.result},this.records.set(s.id,s),this.persist(),this.events.emit(zn.updated,s))}),Tt(this,"get",async(r,s)=>(this.isInitialized(),this.logger.debug("Getting record"),this.logger.trace({type:"method",method:"get",topic:r,id:s}),await this.getRecord(s))),Tt(this,"delete",(r,s)=>{this.isInitialized(),this.logger.debug("Deleting record"),this.logger.trace({type:"method",method:"delete",id:s}),this.values.forEach(i=>{if(i.topic===r){if(typeof s<"u"&&i.id!==s)return;this.records.delete(i.id),this.events.emit(zn.deleted,i)}}),this.persist()}),Tt(this,"exists",async(r,s)=>(this.isInitialized(),this.records.has(s)?(await this.getRecord(s)).topic===r:!1)),Tt(this,"on",(r,s)=>{this.events.on(r,s)}),Tt(this,"once",(r,s)=>{this.events.once(r,s)}),Tt(this,"off",(r,s)=>{this.events.off(r,s)}),Tt(this,"removeListener",(r,s)=>{this.events.removeListener(r,s)}),this.logger=wn(n,this.name)}get context(){return yn(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=[];return this.values.forEach(n=>{if(typeof n.response<"u")return;const r={topic:n.topic,request:Jn(n.request.method,n.request.params,n.id),chainId:n.chainId};return e.push(r)}),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 n=this.records.get(e);if(!n){const{message:r}=Y("NO_MATCHING_KEY",`${this.name}: ${e}`);throw new Error(r)}return n}async persist(){await this.setJsonRpcRecords(this.values),this.events.emit(zn.sync)}async restore(){try{const e=await this.getJsonRpcRecords();if(typeof e>"u"||!e.length)return;if(this.records.size){const{message:n}=Y("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(n),new Error(n)}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(zn.created,e=>{const n=zn.created;this.logger.info(`Emitting ${n}`),this.logger.debug({type:"event",event:n,record:e})}),this.events.on(zn.updated,e=>{const n=zn.updated;this.logger.info(`Emitting ${n}`),this.logger.debug({type:"event",event:n,record:e})}),this.events.on(zn.deleted,e=>{const n=zn.deleted;this.logger.info(`Emitting ${n}`),this.logger.debug({type:"event",event:n,record:e})}),this.core.heartbeat.on(wi.pulse,()=>{this.cleanup()})}cleanup(){try{this.isInitialized();let e=!1;this.records.forEach(n=>{G.toMiliseconds(n.expiry||0)-Date.now()<=0&&(this.logger.info(`Deleting expired history log: ${n.id}`),this.records.delete(n.id),this.events.emit(zn.deleted,n,!1),e=!0)}),e&&this.persist()}catch(e){this.logger.warn(e)}}isInitialized(){if(!this.initialized){const{message:e}=Y("NOT_INITIALIZED",this.name);throw new Error(e)}}}var k5=Object.defineProperty,U5=(t,e,n)=>e in t?k5(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,jt=(t,e,n)=>U5(t,typeof e!="symbol"?e+"":e,n);class $5 extends dS{constructor(e,n){super(e,n),this.core=e,this.logger=n,jt(this,"expirations",new Map),jt(this,"events",new sr.EventEmitter),jt(this,"name",$4),jt(this,"version",B4),jt(this,"cached",[]),jt(this,"initialized",!1),jt(this,"storagePrefix",Cr),jt(this,"init",async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach(r=>this.expirations.set(r.target,r)),this.cached=[],this.registerEventListeners(),this.initialized=!0)}),jt(this,"has",r=>{try{const s=this.formatTarget(r);return typeof this.getExpiration(s)<"u"}catch{return!1}}),jt(this,"set",(r,s)=>{this.isInitialized();const i=this.formatTarget(r),o={target:i,expiry:s};this.expirations.set(i,o),this.checkExpiry(i,o),this.events.emit(Un.created,{target:i,expiration:o})}),jt(this,"get",r=>{this.isInitialized();const s=this.formatTarget(r);return this.getExpiration(s)}),jt(this,"del",r=>{if(this.isInitialized(),this.has(r)){const s=this.formatTarget(r),i=this.getExpiration(s);this.expirations.delete(s),this.events.emit(Un.deleted,{target:s,expiration:i})}}),jt(this,"on",(r,s)=>{this.events.on(r,s)}),jt(this,"once",(r,s)=>{this.events.once(r,s)}),jt(this,"off",(r,s)=>{this.events.off(r,s)}),jt(this,"removeListener",(r,s)=>{this.events.removeListener(r,s)}),this.logger=wn(n,this.name)}get context(){return yn(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(typeof e=="string")return yx(e);if(typeof e=="number")return wx(e);const{message:n}=Y("UNKNOWN_TYPE",`Target type: ${typeof e}`);throw new Error(n)}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(Un.sync)}async restore(){try{const e=await this.getExpirations();if(typeof e>"u"||!e.length)return;if(this.expirations.size){const{message:n}=Y("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(n),new Error(n)}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 n=this.expirations.get(e);if(!n){const{message:r}=Y("NO_MATCHING_KEY",`${this.name}: ${e}`);throw this.logger.warn(r),new Error(r)}return n}checkExpiry(e,n){const{expiry:r}=n;G.toMiliseconds(r)-Date.now()<=0&&this.expire(e,n)}expire(e,n){this.expirations.delete(e),this.events.emit(Un.expired,{target:e,expiration:n})}checkExpirations(){this.core.relayer.connected&&this.expirations.forEach((e,n)=>this.checkExpiry(n,e))}registerEventListeners(){this.core.heartbeat.on(wi.pulse,()=>this.checkExpirations()),this.events.on(Un.created,e=>{const n=Un.created;this.logger.info(`Emitting ${n}`),this.logger.debug({type:"event",event:n,data:e}),this.persist()}),this.events.on(Un.expired,e=>{const n=Un.expired;this.logger.info(`Emitting ${n}`),this.logger.debug({type:"event",event:n,data:e}),this.persist()}),this.events.on(Un.deleted,e=>{const n=Un.deleted;this.logger.info(`Emitting ${n}`),this.logger.debug({type:"event",event:n,data:e}),this.persist()})}isInitialized(){if(!this.initialized){const{message:e}=Y("NOT_INITIALIZED",this.name);throw new Error(e)}}}var B5=Object.defineProperty,F5=(t,e,n)=>e in t?B5(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,ct=(t,e,n)=>F5(t,typeof e!="symbol"?e+"":e,n);class L5 extends hS{constructor(e,n,r){super(e,n,r),this.core=e,this.logger=n,this.store=r,ct(this,"name",F4),ct(this,"abortController"),ct(this,"isDevEnv"),ct(this,"verifyUrlV3",M4),ct(this,"storagePrefix",Cr),ct(this,"version",CE),ct(this,"publicKey"),ct(this,"fetchPromise"),ct(this,"init",async()=>{var s;this.isDevEnv||(this.publicKey=await this.store.getItem(this.storeKey),this.publicKey&&G.toMiliseconds((s=this.publicKey)==null?void 0:s.expiresAt)<Date.now()&&(this.logger.debug("verify v2 public key expired"),await this.removePublicKey()))}),ct(this,"register",async s=>{if(!io()||this.isDevEnv)return;const i=window.location.origin,{id:o,decryptedId:a}=s,c=`${this.verifyUrlV3}/attestation?projectId=${this.core.projectId}&origin=${i}&id=${o}&decryptedId=${a}`;try{const l=ui(),u=this.startAbortTimer(G.ONE_SECOND*5),d=await new Promise((h,f)=>{const p=()=>{window.removeEventListener("message",y),l.body.removeChild(g),f("attestation aborted")};this.abortController.signal.addEventListener("abort",p);const g=l.createElement("iframe");g.src=c,g.style.display="none",g.addEventListener("error",p,{signal:this.abortController.signal});const y=v=>{if(v.data&&typeof v.data=="string")try{const A=JSON.parse(v.data);if(A.type==="verify_attestation"){if(gd(A.attestation).payload.id!==o)return;clearInterval(u),l.body.removeChild(g),this.abortController.signal.removeEventListener("abort",p),window.removeEventListener("message",y),h(A.attestation===null?"":A.attestation)}}catch(A){this.logger.warn(A)}};l.body.appendChild(g),window.addEventListener("message",y,{signal:this.abortController.signal})});return this.logger.debug(d,"jwt attestation"),d}catch(l){this.logger.warn(l)}return""}),ct(this,"resolve",async s=>{if(this.isDevEnv)return"";const{attestationId:i,hash:o,encryptedId:a}=s;if(i===""){this.logger.debug("resolve: attestationId is empty, skipping");return}if(i){if(gd(i).payload.id!==a)return;const l=await this.isValidJwtAttestation(i);if(l){if(!l.isVerified){this.logger.warn("resolve: jwt attestation: origin url not verified");return}return l}}if(!o)return;const c=this.getVerifyUrl(s==null?void 0:s.verifyUrl);return this.fetchAttestation(o,c)}),ct(this,"fetchAttestation",async(s,i)=>{this.logger.debug(`resolving attestation: ${s} from url: ${i}`);const o=this.startAbortTimer(G.ONE_SECOND*5),a=await fetch(`${i}/attestation/${s}?v2Supported=true`,{signal:this.abortController.signal});return clearTimeout(o),a.status===200?await a.json():void 0}),ct(this,"getVerifyUrl",s=>{let i=s||Fo;return j4.includes(i)||(this.logger.info(`verify url: ${i}, not included in trusted list, assigning default: ${Fo}`),i=Fo),i}),ct(this,"fetchPublicKey",async()=>{try{this.logger.debug(`fetching public key from: ${this.verifyUrlV3}`);const s=this.startAbortTimer(G.FIVE_SECONDS),i=await fetch(`${this.verifyUrlV3}/public-key`,{signal:this.abortController.signal});return clearTimeout(s),await i.json()}catch(s){this.logger.warn(s)}}),ct(this,"persistPublicKey",async s=>{this.logger.debug(s,"persisting public key to local storage"),await this.store.setItem(this.storeKey,s),this.publicKey=s}),ct(this,"removePublicKey",async()=>{this.logger.debug("removing verify v2 public key from storage"),await this.store.removeItem(this.storeKey),this.publicKey=void 0}),ct(this,"isValidJwtAttestation",async s=>{const i=await this.getPublicKey();try{if(i)return this.validateAttestation(s,i)}catch(a){this.logger.error(a),this.logger.warn("error validating attestation")}const o=await this.fetchAndPersistPublicKey();try{if(o)return this.validateAttestation(s,o)}catch(a){this.logger.error(a),this.logger.warn("error validating attestation")}}),ct(this,"getPublicKey",async()=>this.publicKey?this.publicKey:await this.fetchAndPersistPublicKey()),ct(this,"fetchAndPersistPublicKey",async()=>{if(this.fetchPromise)return await this.fetchPromise,this.publicKey;this.fetchPromise=new Promise(async i=>{const o=await this.fetchPublicKey();o&&(await this.persistPublicKey(o),i(o))});const s=await this.fetchPromise;return this.fetchPromise=void 0,s}),ct(this,"validateAttestation",(s,i)=>{const o=gD(s,i.publicKey),a={hasExpired:G.toMiliseconds(o.exp)<Date.now(),payload:o};if(a.hasExpired)throw this.logger.warn("resolve: jwt attestation expired"),new Error("JWT attestation expired");return{origin:a.payload.origin,isScam:a.payload.isScam,isVerified:a.payload.isVerified}}),this.logger=wn(n,this.name),this.abortController=new AbortController,this.isDevEnv=Dh(),this.init()}get storeKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//verify:public:key"}get context(){return yn(this.logger)}startAbortTimer(e){return this.abortController=new AbortController,setTimeout(()=>this.abortController.abort(),G.toMiliseconds(e))}}var M5=Object.defineProperty,j5=(t,e,n)=>e in t?M5(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,um=(t,e,n)=>j5(t,typeof e!="symbol"?e+"":e,n);class W5 extends fS{constructor(e,n){super(e,n),this.projectId=e,this.logger=n,um(this,"context",W4),um(this,"registerDeviceToken",async r=>{const{clientId:s,token:i,notificationType:o,enableEncrypted:a=!1}=r,c=`${q4}/${this.projectId}/clients`;await fetch(c,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({client_id:s,type:o,token:i,always_raw:a})})}),this.logger=wn(n,this.context)}}var q5=Object.defineProperty,dm=Object.getOwnPropertySymbols,H5=Object.prototype.hasOwnProperty,z5=Object.prototype.propertyIsEnumerable,Zd=(t,e,n)=>e in t?q5(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Co=(t,e)=>{for(var n in e||(e={}))H5.call(e,n)&&Zd(t,n,e[n]);if(dm)for(var n of dm(e))z5.call(e,n)&&Zd(t,n,e[n]);return t},_t=(t,e,n)=>Zd(t,typeof e!="symbol"?e+"":e,n);class V5 extends pS{constructor(e,n,r=!0){super(e,n,r),this.core=e,this.logger=n,_t(this,"context",z4),_t(this,"storagePrefix",Cr),_t(this,"storageVersion",H4),_t(this,"events",new Map),_t(this,"shouldPersist",!1),_t(this,"init",async()=>{if(!Dh())try{const s={eventId:zp(),timestamp:Date.now(),domain:this.getAppDomain(),props:{event:"INIT",type:"",properties:{client_id:await this.core.crypto.getClientId(),user_agent:d0(this.core.relayer.protocol,this.core.relayer.version,Wd)}}};await this.sendEvent([s])}catch(s){this.logger.warn(s)}}),_t(this,"createEvent",s=>{const{event:i="ERROR",type:o="",properties:{topic:a,trace:c}}=s,l=zp(),u=this.core.projectId||"",d=Date.now(),h=Co({eventId:l,timestamp:d,props:{event:i,type:o,properties:{topic:a,trace:c}},bundleId:u,domain:this.getAppDomain()},this.setMethods(l));return this.telemetryEnabled&&(this.events.set(l,h),this.shouldPersist=!0),h}),_t(this,"getEvent",s=>{const{eventId:i,topic:o}=s;if(i)return this.events.get(i);const a=Array.from(this.events.values()).find(c=>c.props.properties.topic===o);if(a)return Co(Co({},a),this.setMethods(a.eventId))}),_t(this,"deleteEvent",s=>{const{eventId:i}=s;this.events.delete(i),this.shouldPersist=!0}),_t(this,"setEventListeners",()=>{this.core.heartbeat.on(wi.pulse,async()=>{this.shouldPersist&&await this.persist(),this.events.forEach(s=>{G.fromMiliseconds(Date.now())-G.fromMiliseconds(s.timestamp)>V4&&(this.events.delete(s.eventId),this.shouldPersist=!0)})})}),_t(this,"setMethods",s=>({addTrace:i=>this.addTrace(s,i),setError:i=>this.setError(s,i)})),_t(this,"addTrace",(s,i)=>{const o=this.events.get(s);o&&(o.props.properties.trace.push(i),this.events.set(s,o),this.shouldPersist=!0)}),_t(this,"setError",(s,i)=>{const o=this.events.get(s);o&&(o.props.type=i,o.timestamp=Date.now(),this.events.set(s,o),this.shouldPersist=!0)}),_t(this,"persist",async()=>{await this.core.storage.setItem(this.storageKey,Array.from(this.events.values())),this.shouldPersist=!1}),_t(this,"restore",async()=>{try{const s=await this.core.storage.getItem(this.storageKey)||[];if(!s.length)return;s.forEach(i=>{this.events.set(i.eventId,Co(Co({},i),this.setMethods(i.eventId)))})}catch(s){this.logger.warn(s)}}),_t(this,"submit",async()=>{if(!this.telemetryEnabled||this.events.size===0)return;const s=[];for(const[i,o]of this.events)o.props.type&&s.push(o);if(s.length!==0)try{if((await this.sendEvent(s)).ok)for(const i of s)this.events.delete(i.eventId),this.shouldPersist=!0}catch(i){this.logger.warn(i)}}),_t(this,"sendEvent",async s=>{const i=this.getAppDomain()?"":"&sp=desktop";return await fetch(`${K4}?projectId=${this.core.projectId}&st=events_sdk&sv=js-${Wd}${i}`,{method:"POST",body:JSON.stringify(s)})}),_t(this,"getAppDomain",()=>u0().url),this.logger=wn(n,this.context),this.telemetryEnabled=r,r?this.restore().then(async()=>{await this.submit(),this.setEventListeners()}):this.persist()}get storageKey(){return this.storagePrefix+this.storageVersion+this.core.customStoragePrefix+"//"+this.context}}var K5=Object.defineProperty,hm=Object.getOwnPropertySymbols,G5=Object.prototype.hasOwnProperty,Y5=Object.prototype.propertyIsEnumerable,Jd=(t,e,n)=>e in t?K5(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,fm=(t,e)=>{for(var n in e||(e={}))G5.call(e,n)&&Jd(t,n,e[n]);if(hm)for(var n of hm(e))Y5.call(e,n)&&Jd(t,n,e[n]);return t},Ye=(t,e,n)=>Jd(t,typeof e!="symbol"?e+"":e,n);let Z5=class FE extends tS{constructor(e){var n;super(e),Ye(this,"protocol",vE),Ye(this,"version",CE),Ye(this,"name",Qc),Ye(this,"relayUrl"),Ye(this,"projectId"),Ye(this,"customStoragePrefix"),Ye(this,"events",new sr.EventEmitter),Ye(this,"logger"),Ye(this,"heartbeat"),Ye(this,"relayer"),Ye(this,"crypto"),Ye(this,"storage"),Ye(this,"history"),Ye(this,"expirer"),Ye(this,"pairing"),Ye(this,"verify"),Ye(this,"echoClient"),Ye(this,"linkModeSupportedApps"),Ye(this,"eventClient"),Ye(this,"initialized",!1),Ye(this,"logChunkController"),Ye(this,"on",(a,c)=>this.events.on(a,c)),Ye(this,"once",(a,c)=>this.events.once(a,c)),Ye(this,"off",(a,c)=>this.events.off(a,c)),Ye(this,"removeListener",(a,c)=>this.events.removeListener(a,c)),Ye(this,"dispatchEnvelope",({topic:a,message:c,sessionExists:l})=>{if(!a||!c)return;const u={topic:a,message:c,publishedAt:Date.now(),transportType:Je.link_mode};this.relayer.onLinkMessageEvent(u,{sessionExists:l})});const r=this.getGlobalCore(e==null?void 0:e.customStoragePrefix);if(r)try{return this.customStoragePrefix=r.customStoragePrefix,this.logger=r.logger,this.heartbeat=r.heartbeat,this.crypto=r.crypto,this.history=r.history,this.expirer=r.expirer,this.storage=r.storage,this.relayer=r.relayer,this.pairing=r.pairing,this.verify=r.verify,this.echoClient=r.echoClient,this.linkModeSupportedApps=r.linkModeSupportedApps,this.eventClient=r.eventClient,this.initialized=r.initialized,this.logChunkController=r.logChunkController,r}catch(a){console.warn("Failed to copy global core",a)}this.projectId=e==null?void 0:e.projectId,this.relayUrl=(e==null?void 0:e.relayUrl)||SE,this.customStoragePrefix=e!=null&&e.customStoragePrefix?`:${e.customStoragePrefix}`:"";const s=dh({level:typeof(e==null?void 0:e.logger)=="string"&&e.logger?e.logger:p4.logger,name:Qc}),{logger:i,chunkLoggerController:o}=cl({opts:s,maxSizeInBytes:e==null?void 0:e.maxLogBlobSizeInBytes,loggerOverride:e==null?void 0:e.logger});this.logChunkController=o,(n=this.logChunkController)!=null&&n.downloadLogsBlobInBrowser&&(window.downloadLogsBlobInBrowser=async()=>{var a,c;(a=this.logChunkController)!=null&&a.downloadLogsBlobInBrowser&&((c=this.logChunkController)==null||c.downloadLogsBlobInBrowser({clientId:await this.crypto.getClientId()}))}),this.logger=wn(i,this.name),this.heartbeat=new mA,this.crypto=new CU(this,this.logger,e==null?void 0:e.keychain),this.history=new D5(this,this.logger),this.expirer=new $5(this,this.logger),this.storage=e!=null&&e.storage?e.storage:new XA(fm(fm({},g4),e==null?void 0:e.storageOptions)),this.relayer=new ZU({core:this,logger:this.logger,relayUrl:this.relayUrl,projectId:this.projectId}),this.pairing=new R5(this,this.logger),this.verify=new L5(this,this.logger,this.storage),this.echoClient=new W5(this.projectId||"",this.logger),this.linkModeSupportedApps=[],this.eventClient=new V5(this,this.logger,e==null?void 0:e.telemetryEnabled),this.setGlobalCore(this)}static async init(e){const n=new FE(e);await n.initialize();const r=await n.crypto.getClientId();return await n.storage.setItem(O4,r),n}get context(){return yn(this.logger)}async start(){this.initialized||await this.initialize()}async getLogsBlob(){var e;return(e=this.logChunkController)==null?void 0:e.logsToBlob({clientId:await this.crypto.getClientId()})}async addLinkModeSupportedApp(e){this.linkModeSupportedApps.includes(e)||(this.linkModeSupportedApps.push(e),await this.storage.setItem(zg,this.linkModeSupportedApps))}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(),await this.pairing.init(),this.linkModeSupportedApps=await this.storage.getItem(zg)||[],this.initialized=!0,this.logger.info("Core Initialization Success")}catch(e){throw this.logger.warn(e,`Core Initialization Failure at epoch ${Date.now()}`),this.logger.error(e.message),e}}getGlobalCore(e=""){try{if(this.isGlobalCoreDisabled())return;const n=`_walletConnectCore_${e}`,r=`${n}_count`;return globalThis[r]=(globalThis[r]||0)+1,globalThis[r]>1&&console.warn(`WalletConnect Core is already initialized. This is probably a mistake and can lead to unexpected behavior. Init() was called ${globalThis[r]} times.`),globalThis[n]}catch(n){console.warn("Failed to get global WalletConnect core",n);return}}setGlobalCore(e){var n;try{if(this.isGlobalCoreDisabled())return;const r=`_walletConnectCore_${((n=e.opts)==null?void 0:n.customStoragePrefix)||""}`;globalThis[r]=e}catch(r){console.warn("Failed to set global WalletConnect core",r)}}isGlobalCoreDisabled(){try{return typeof Vt<"u"&&{}.DISABLE_GLOBAL_CORE==="true"}catch{return!0}}};const J5=Z5,LE="wc",ME=2,jE="client",Gh=`${LE}@${ME}:${jE}:`,Pu={name:jE,logger:"error",controller:!1,relayUrl:"wss://relay.walletconnect.org"},pm="WALLETCONNECT_DEEPLINK_CHOICE",X5="proposal",gm="Proposal expired",Q5="session",Di=G.SEVEN_DAYS,e6="engine",Ot={wc_sessionPropose:{req:{ttl:G.FIVE_MINUTES,prompt:!0,tag:1100},res:{ttl:G.FIVE_MINUTES,prompt:!1,tag:1101},reject:{ttl:G.FIVE_MINUTES,prompt:!1,tag:1120},autoReject:{ttl:G.FIVE_MINUTES,prompt:!1,tag:1121}},wc_sessionSettle:{req:{ttl:G.FIVE_MINUTES,prompt:!1,tag:1102},res:{ttl:G.FIVE_MINUTES,prompt:!1,tag:1103}},wc_sessionUpdate:{req:{ttl:G.ONE_DAY,prompt:!1,tag:1104},res:{ttl:G.ONE_DAY,prompt:!1,tag:1105}},wc_sessionExtend:{req:{ttl:G.ONE_DAY,prompt:!1,tag:1106},res:{ttl:G.ONE_DAY,prompt:!1,tag:1107}},wc_sessionRequest:{req:{ttl:G.FIVE_MINUTES,prompt:!0,tag:1108},res:{ttl:G.FIVE_MINUTES,prompt:!1,tag:1109}},wc_sessionEvent:{req:{ttl:G.FIVE_MINUTES,prompt:!0,tag:1110},res:{ttl:G.FIVE_MINUTES,prompt:!1,tag:1111}},wc_sessionDelete:{req:{ttl:G.ONE_DAY,prompt:!1,tag:1112},res:{ttl:G.ONE_DAY,prompt:!1,tag:1113}},wc_sessionPing:{req:{ttl:G.ONE_DAY,prompt:!1,tag:1114},res:{ttl:G.ONE_DAY,prompt:!1,tag:1115}},wc_sessionAuthenticate:{req:{ttl:G.ONE_HOUR,prompt:!0,tag:1116},res:{ttl:G.ONE_HOUR,prompt:!1,tag:1117},reject:{ttl:G.FIVE_MINUTES,prompt:!1,tag:1118},autoReject:{ttl:G.FIVE_MINUTES,prompt:!1,tag:1119}}},Du={min:G.FIVE_MINUTES,max:G.SEVEN_DAYS},lr={idle:"IDLE",active:"ACTIVE"},t6={eth_sendTransaction:{key:""},eth_sendRawTransaction:{key:""},wallet_sendCalls:{key:""},solana_signTransaction:{key:"signature"},solana_signAllTransactions:{key:"transactions"},solana_signAndSendTransaction:{key:"signature"},sui_signAndExecuteTransaction:{key:"digest"},sui_signTransaction:{key:""},hedera_signAndExecuteTransaction:{key:"transactionId"},hedera_executeTransaction:{key:"transactionId"},near_signTransaction:{key:""},near_signTransactions:{key:""},tron_signTransaction:{key:"txID"},xrpl_signTransaction:{key:""},xrpl_signTransactionFor:{key:""},algo_signTxn:{key:""},sendTransfer:{key:"txid"},stacks_stxTransfer:{key:"txId"},polkadot_signTransaction:{key:""},cosmos_signDirect:{key:""}},n6="request",r6=["wc_sessionPropose","wc_sessionRequest","wc_authRequest","wc_sessionAuthenticate"],s6="wc",i6="auth",o6="authKeys",a6="pairingTopics",c6="requests",Ol=`${s6}@${1.5}:${i6}:`,Ec=`${Ol}:PUB_KEY`;var l6=Object.defineProperty,u6=Object.defineProperties,d6=Object.getOwnPropertyDescriptors,mm=Object.getOwnPropertySymbols,h6=Object.prototype.hasOwnProperty,f6=Object.prototype.propertyIsEnumerable,Xd=(t,e,n)=>e in t?l6(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,We=(t,e)=>{for(var n in e||(e={}))h6.call(e,n)&&Xd(t,n,e[n]);if(mm)for(var n of mm(e))f6.call(e,n)&&Xd(t,n,e[n]);return t},Rt=(t,e)=>u6(t,d6(e)),q=(t,e,n)=>Xd(t,typeof e!="symbol"?e+"":e,n);class p6 extends wS{constructor(e){super(e),q(this,"name",e6),q(this,"events",new oh),q(this,"initialized",!1),q(this,"requestQueue",{state:lr.idle,queue:[]}),q(this,"sessionRequestQueue",{state:lr.idle,queue:[]}),q(this,"emittedSessionRequests",new Nx({limit:500})),q(this,"requestQueueDelay",G.ONE_SECOND),q(this,"expectedPairingMethodMap",new Map),q(this,"recentlyDeletedMap",new Map),q(this,"recentlyDeletedLimit",200),q(this,"relayMessageCache",[]),q(this,"pendingSessions",new Map),q(this,"init",async()=>{this.initialized||(await this.cleanup(),this.registerRelayerEvents(),this.registerExpirerEvents(),this.registerPairingEvents(),await this.registerLinkModeListeners(),this.client.core.pairing.register({methods:Object.keys(Ot)}),this.initialized=!0,setTimeout(async()=>{await this.processPendingMessageEvents(),this.sessionRequestQueue.queue=this.getPendingSessionRequests(),this.processSessionRequestQueue()},G.toMiliseconds(this.requestQueueDelay)))}),q(this,"connect",async n=>{var r;this.isInitialized(),await this.confirmOnlineStateOrThrow();const s=Rt(We({},n),{requiredNamespaces:n.requiredNamespaces||{},optionalNamespaces:n.optionalNamespaces||{}});await this.isValidConnect(s),s.optionalNamespaces=FD(s.requiredNamespaces,s.optionalNamespaces),s.requiredNamespaces={};const{pairingTopic:i,requiredNamespaces:o,optionalNamespaces:a,sessionProperties:c,scopedProperties:l,relays:u,authentication:d,walletPay:h}=s,f=((r=d==null?void 0:d[0])==null?void 0:r.ttl)||Ot.wc_sessionPropose.req.ttl||G.FIVE_MINUTES;this.validateRequestExpiry(f);let p=i,g,y=!1;try{if(p){const D=this.client.core.pairing.pairings.get(p);this.client.logger.warn("connect() with existing pairing topic is deprecated and will be removed in the next major release."),y=D.active}}catch(D){throw this.client.logger.error(`connect() -> pairing.get(${p}) failed`),D}if(!p||!y){const{topic:D,uri:W}=await this.client.core.pairing.create({internal:{skipSubscribe:!0}});p=D,g=W}if(!p){const{message:D}=Y("NO_MATCHING_KEY",`connect() pairing topic: ${p}`);throw new Error(D)}const v=await this.client.core.crypto.generateKeyPair(),A=lt(f),E=We(Rt(We(We({requiredNamespaces:o,optionalNamespaces:a,relays:u??[{protocol:AE}],proposer:{publicKey:v,metadata:this.client.metadata},expiryTimestamp:A,pairingTopic:p},c&&{sessionProperties:c}),l&&{scopedProperties:l}),{id:dr()}),(d||h)&&{requests:{authentication:d==null?void 0:d.map(D=>{const{domain:W,chains:H,nonce:U,uri:N,exp:P,nbf:_,type:b,statement:I,requestId:x,resources:S,signatureTypes:R}=D;return{domain:W,chains:H,nonce:U,type:b??"caip122",aud:N,version:"1",iat:new Date().toISOString(),exp:P,nbf:_,statement:I,requestId:x,resources:S,signatureTypes:R}}),walletPay:h}}),C=He("session_connect",E.id),{reject:O,resolve:k,done:$}=Ws(f,gm),F=({id:D})=>{D===E.id&&(this.client.events.off("proposal_expire",F),this.pendingSessions.delete(E.id),this.events.emit(C,{error:{message:gm,code:0}}))};return this.client.events.on("proposal_expire",F),this.events.once(C,({error:D,session:W})=>{this.client.events.off("proposal_expire",F),D?O(D):W&&k(W)}),await this.setProposal(E.id,E),await this.sendProposeSession({proposal:E,publishOpts:{internal:{throwOnFailedPublish:!0},tvf:{correlationId:E.id}}}).catch(D=>{throw this.deleteProposal(E.id),D}),{uri:g,approval:$}}),q(this,"pair",async n=>{this.isInitialized(),await this.confirmOnlineStateOrThrow();try{return await this.client.core.pairing.pair(n)}catch(r){throw this.client.logger.error("pair() failed"),r}}),q(this,"approve",async n=>{var r,s,i;const o=this.client.core.eventClient.createEvent({properties:{topic:(r=n==null?void 0:n.id)==null?void 0:r.toString(),trace:[Vn.session_approve_started]}});try{this.isInitialized(),await this.confirmOnlineStateOrThrow()}catch(W){throw o.setError($s.no_internet_connection),W}try{await this.isValidProposalId(n==null?void 0:n.id)}catch(W){throw this.client.logger.error(`approve() -> proposal.get(${n==null?void 0:n.id}) failed`),o.setError($s.proposal_not_found),W}try{await this.isValidApprove(n)}catch(W){throw this.client.logger.error("approve() -> isValidApprove() failed"),o.setError($s.session_approve_namespace_validation_failure),W}const{id:a,relayProtocol:c,namespaces:l,sessionProperties:u,scopedProperties:d,sessionConfig:h,proposalRequestsResponses:f}=n,p=this.client.proposal.get(a);this.client.core.eventClient.deleteEvent({eventId:o.eventId});const{pairingTopic:g,proposer:y,requiredNamespaces:v,optionalNamespaces:A}=p;let E=(s=this.client.core.eventClient)==null?void 0:s.getEvent({topic:g});E||(E=(i=this.client.core.eventClient)==null?void 0:i.createEvent({type:Vn.session_approve_started,properties:{topic:g,trace:[Vn.session_approve_started,Vn.session_namespaces_validation_success]}}));const C=await this.client.core.crypto.generateKeyPair(),O=y.publicKey,k=await this.client.core.crypto.generateSharedKey(C,O),$=Rt(We(We(We({relay:{protocol:c??"irn"},namespaces:l,controller:{publicKey:C,metadata:this.client.metadata},expiry:lt(Di)},u&&{sessionProperties:u}),d&&{scopedProperties:d}),h&&{sessionConfig:h}),{proposalRequestsResponses:f}),F=Je.relay;E.addTrace(Vn.subscribing_session_topic);try{await this.client.core.relayer.subscribe(k,{transportType:F,internal:{skipSubscribe:!0}})}catch(W){throw E.setError($s.subscribe_session_topic_failure),W}E.addTrace(Vn.subscribe_session_topic_success);const D=Rt(We({},$),{topic:k,requiredNamespaces:v,optionalNamespaces:A,pairingTopic:g,acknowledged:!1,self:$.controller,peer:{publicKey:y.publicKey,metadata:y.metadata},controller:C,transportType:Je.relay,authentication:f==null?void 0:f.authentication,walletPayResult:f==null?void 0:f.walletPay});await this.client.session.set(k,D),E.addTrace(Vn.store_session);try{await this.sendApproveSession({sessionTopic:k,proposal:p,pairingProposalResponse:{relay:{protocol:c??"irn"},responderPublicKey:C},sessionSettleRequest:$,publishOpts:{internal:{throwOnFailedPublish:!0},tvf:We({correlationId:a},this.getTVFApproveParams(D))}}),E.addTrace(Vn.session_approve_publish_success)}catch(W){throw this.client.logger.error(W),this.client.session.delete(k,et("USER_DISCONNECTED")),await this.client.core.relayer.unsubscribe(k),W}return this.client.core.eventClient.deleteEvent({eventId:E.eventId}),await this.client.core.pairing.updateMetadata({topic:g,metadata:y.metadata}),await this.deleteProposal(a),await this.client.core.pairing.activate({topic:g}),await this.setExpiry(k,lt(Di)),{topic:k,acknowledged:()=>Promise.resolve(this.client.session.get(k))}}),q(this,"reject",async n=>{this.isInitialized(),await this.confirmOnlineStateOrThrow();try{await this.isValidReject(n)}catch(o){throw this.client.logger.error("reject() -> isValidReject() failed"),o}const{id:r,reason:s}=n;let i;try{i=this.client.proposal.get(r).pairingTopic}catch(o){throw this.client.logger.error(`reject() -> proposal.get(${r}) failed`),o}i&&await this.sendError({id:r,topic:i,error:s,rpcOpts:Ot.wc_sessionPropose.reject}),await this.deleteProposal(r)}),q(this,"update",async n=>{this.isInitialized(),await this.confirmOnlineStateOrThrow();try{await this.isValidUpdate(n)}catch(d){throw this.client.logger.error("update() -> isValidUpdate() failed"),d}const{topic:r,namespaces:s}=n,{done:i,resolve:o,reject:a}=Ws(G.FIVE_MINUTES,"Session update request expired without receiving any acknowledgement"),c=dr(),l=bs().toString(),u=this.client.session.get(r).namespaces;return this.events.once(He("session_update",c),({error:d})=>{d?a(d):o()}),await this.client.session.update(r,{namespaces:s}),await this.sendRequest({topic:r,method:"wc_sessionUpdate",params:{namespaces:s},throwOnFailedPublish:!0,clientRpcId:c,relayRpcId:l}).catch(d=>{this.client.logger.error(d),this.client.session.update(r,{namespaces:u}),a(d)}),{acknowledged:i}}),q(this,"extend",async n=>{this.isInitialized(),await this.confirmOnlineStateOrThrow();try{await this.isValidExtend(n)}catch(c){throw this.client.logger.error("extend() -> isValidExtend() failed"),c}const{topic:r}=n,s=dr(),{done:i,resolve:o,reject:a}=Ws(G.FIVE_MINUTES,"Session extend request expired without receiving any acknowledgement");return this.events.once(He("session_extend",s),({error:c})=>{c?a(c):o()}),await this.setExpiry(r,lt(Di)),this.sendRequest({topic:r,method:"wc_sessionExtend",params:{},clientRpcId:s,throwOnFailedPublish:!0}).catch(c=>{a(c)}),{acknowledged:i}}),q(this,"request",async n=>{this.isInitialized();try{await this.isValidRequest(n)}catch(y){throw this.client.logger.error("request() -> isValidRequest() failed"),y}const{chainId:r,request:s,topic:i,expiry:o=Ot.wc_sessionRequest.req.ttl}=n,a=this.client.session.get(i);(a==null?void 0:a.transportType)===Je.relay&&await this.confirmOnlineStateOrThrow();const c=dr(),l=bs().toString(),{done:u,resolve:d,reject:h}=Ws(o,"Request expired. Please try again.");this.events.once(He("session_request",c),({error:y,result:v})=>{y?h(y):d(v)});const f="wc_sessionRequest",p=this.getAppLinkIfEnabled(a.peer.metadata,a.transportType);if(p)return await this.sendRequest({clientRpcId:c,relayRpcId:l,topic:i,method:f,params:{request:Rt(We({},s),{expiryTimestamp:lt(o)}),chainId:r},expiry:o,throwOnFailedPublish:!0,appLink:p}).catch(y=>h(y)),this.client.events.emit("session_request_sent",{topic:i,request:s,chainId:r,id:c}),await u();const g={request:Rt(We({},s),{expiryTimestamp:lt(o)}),chainId:r};return await Promise.all([new Promise(async y=>{await this.sendRequest({clientRpcId:c,relayRpcId:l,topic:i,method:f,params:g,expiry:o,throwOnFailedPublish:!0,tvf:this.getTVFParams(c,g)}).catch(v=>h(v)),this.client.events.emit("session_request_sent",{topic:i,request:s,chainId:r,id:c}),y()}),new Promise(async y=>{var v;if(!((v=a.sessionConfig)!=null&&v.disableDeepLink)){const A=await vx(this.client.core.storage,pm);await Ex({id:c,topic:i,wcDeepLink:A})}y()}),u()]).then(y=>y[2])}),q(this,"respond",async n=>{var r,s;this.isInitialized();const i=this.client.core.eventClient.createEvent({properties:{topic:(n==null?void 0:n.topic)||((s=(r=n==null?void 0:n.response)==null?void 0:r.id)==null?void 0:s.toString()),trace:[Vn.session_request_response_started]}});try{await this.isValidRespond(n)}catch(d){throw i.addTrace(d==null?void 0:d.message),i.setError($s.session_request_response_validation_failure),d}i.addTrace(Vn.session_request_response_validation_success);const{topic:o,response:a}=n,{id:c}=a,l=this.client.session.get(o);l.transportType===Je.relay&&await this.confirmOnlineStateOrThrow();const u=this.getAppLinkIfEnabled(l.peer.metadata,l.transportType);try{i.addTrace(Vn.session_request_response_publish_started),hr(a)?await this.sendResult({id:c,topic:o,result:a.result,throwOnFailedPublish:!0,appLink:u}):Fn(a)&&await this.sendError({id:c,topic:o,error:a.error,appLink:u}),this.cleanupAfterResponse(n)}catch(d){throw i.addTrace(d==null?void 0:d.message),i.setError($s.session_request_response_publish_failure),d}}),q(this,"ping",async n=>{this.isInitialized(),await this.confirmOnlineStateOrThrow();try{await this.isValidPing(n)}catch(s){throw this.client.logger.error("ping() -> isValidPing() failed"),s}const{topic:r}=n;if(this.client.session.keys.includes(r)){const s=dr(),i=bs().toString(),{done:o,resolve:a,reject:c}=Ws(G.FIVE_MINUTES,"Ping request expired without receiving any acknowledgement");this.events.once(He("session_ping",s),({error:l})=>{l?c(l):a()}),await Promise.all([this.sendRequest({topic:r,method:"wc_sessionPing",params:{},throwOnFailedPublish:!0,clientRpcId:s,relayRpcId:i}),o()])}else this.client.core.pairing.pairings.keys.includes(r)&&(this.client.logger.warn("ping() on pairing topic is deprecated and will be removed in the next major release."),await this.client.core.pairing.ping({topic:r}))}),q(this,"emit",async n=>{this.isInitialized(),await this.confirmOnlineStateOrThrow(),await this.isValidEmit(n);const{topic:r,event:s,chainId:i}=n,o=bs().toString(),a=dr();await this.sendRequest({topic:r,method:"wc_sessionEvent",params:{event:s,chainId:i},throwOnFailedPublish:!0,relayRpcId:o,clientRpcId:a})}),q(this,"disconnect",async n=>{this.isInitialized(),await this.confirmOnlineStateOrThrow(),await this.isValidDisconnect(n);const{topic:r}=n;if(this.client.session.keys.includes(r))await this.sendRequest({topic:r,method:"wc_sessionDelete",params:et("USER_DISCONNECTED"),throwOnFailedPublish:!0}),await this.deleteSession({topic:r,emitEvent:!1});else if(this.client.core.pairing.pairings.keys.includes(r))await this.client.core.pairing.disconnect({topic:r});else{const{message:s}=Y("MISMATCHED_TOPIC",`Session or pairing topic not found: ${r}`);throw new Error(s)}}),q(this,"find",n=>(this.isInitialized(),this.client.session.getAll().filter(r=>jD(r,n)))),q(this,"getPendingSessionRequests",()=>this.client.pendingRequest.getAll()),q(this,"authenticate",async(n,r)=>{var s;this.isInitialized(),this.isValidAuthenticate(n);const i=r&&this.client.core.linkModeSupportedApps.includes(r)&&((s=this.client.metadata.redirect)==null?void 0:s.linkMode),o=i?Je.link_mode:Je.relay;o===Je.relay&&await this.confirmOnlineStateOrThrow();const{chains:a,statement:c="",uri:l,domain:u,nonce:d,type:h,exp:f,nbf:p,methods:g=[],expiry:y}=n,v=[...n.resources||[]],{topic:A,uri:E}=await this.client.core.pairing.create({methods:["wc_sessionAuthenticate"],transportType:o});this.client.logger.info({message:"Generated new pairing",pairing:{topic:A,uri:E}});const C=await this.client.core.crypto.generateKeyPair(),O=yc(C);if(await Promise.all([this.client.auth.authKeys.set(Ec,{responseTopic:O,publicKey:C}),this.client.auth.pairingTopics.set(O,{topic:O,pairingTopic:A})]),await this.client.core.relayer.subscribe(O,{transportType:o}),this.client.logger.info(`sending request to new pairing topic: ${A}`),g.length>0){const{namespace:S}=zr(a[0]);let R=M3(S,"request",g);mc(v)&&(R=W3(R,v.pop())),v.push(R)}const k=y&&y>Ot.wc_sessionAuthenticate.req.ttl?y:Ot.wc_sessionAuthenticate.req.ttl,$={authPayload:{type:h??"caip122",chains:a,statement:c,aud:l,domain:u,version:"1",nonce:d,iat:new Date().toISOString(),exp:f,nbf:p,resources:v},requester:{publicKey:C,metadata:this.client.metadata},expiryTimestamp:lt(k)},F={eip155:{chains:a,methods:[...new Set(["personal_sign",...g])],events:["chainChanged","accountsChanged"]}},D={requiredNamespaces:{},optionalNamespaces:F,relays:[{protocol:"irn"}],pairingTopic:A,proposer:{publicKey:C,metadata:this.client.metadata},expiryTimestamp:lt(Ot.wc_sessionPropose.req.ttl),id:dr()},{done:W,resolve:H,reject:U}=Ws(k,"Request expired"),N=dr(),P=He("session_connect",D.id),_=He("session_request",N),b=async({error:S,session:R})=>{this.events.off(_,I),S?U(S):R&&H({session:R})},I=async S=>{var R,L,M;if(await this.deletePendingAuthRequest(N,{message:"fulfilled",code:0}),S.error){const he=et("WC_METHOD_UNSUPPORTED","wc_sessionAuthenticate");return S.error.code===he.code?void 0:(this.events.off(P,b),U(S.error.message))}await this.deleteProposal(D.id),this.events.off(P,b);const{cacaos:te,responder:X}=S.result,Z=[],de=[];for(const he of te){await ng({cacao:he,projectId:this.client.core.projectId})||(this.client.logger.error(he,"Signature verification failed"),U(et("SESSION_SETTLEMENT_FAILED","Signature verification failed")));const{p:xe}=he,nt=mc(xe.resources),ht=[Nd(xe.iss)],Et=Kc(xe.iss);if(nt){const Gt=rg(nt),Ar=sg(nt);Z.push(...Gt),ht.push(...Ar)}for(const Gt of ht)de.push(`${Gt}:${Et}`)}const fe=await this.client.core.crypto.generateSharedKey(C,X.publicKey);let Ne;Z.length>0&&(Ne={topic:fe,acknowledged:!0,self:{publicKey:C,metadata:this.client.metadata},peer:X,controller:X.publicKey,expiry:lt(Di),requiredNamespaces:{},optionalNamespaces:{},relay:{protocol:"irn"},pairingTopic:A,namespaces:Rg([...new Set(Z)],[...new Set(de)]),transportType:o},await this.client.core.relayer.subscribe(fe,{transportType:o}),await this.client.session.set(fe,Ne),A&&await this.client.core.pairing.updateMetadata({topic:A,metadata:X.metadata}),Ne=this.client.session.get(fe)),(R=this.client.metadata.redirect)!=null&&R.linkMode&&(L=X.metadata.redirect)!=null&&L.linkMode&&(M=X.metadata.redirect)!=null&&M.universal&&r&&(this.client.core.addLinkModeSupportedApp(X.metadata.redirect.universal),this.client.session.update(fe,{transportType:Je.link_mode})),H({auths:te,session:Ne})};this.events.once(P,b),this.events.once(_,I);let x;try{if(i){const S=Jn("wc_sessionAuthenticate",$,N);this.client.core.history.set(A,S);const R=await this.client.core.crypto.encode("",S,{type:Pa,encoding:gs});x=nc(r,A,R)}else await Promise.all([this.sendRequest({topic:A,method:"wc_sessionAuthenticate",params:$,expiry:n.expiry,throwOnFailedPublish:!0,clientRpcId:N}),this.sendRequest({topic:A,method:"wc_sessionPropose",params:D,expiry:Ot.wc_sessionPropose.req.ttl,throwOnFailedPublish:!0,clientRpcId:D.id})])}catch(S){throw this.events.off(P,b),this.events.off(_,I),S}return await this.setProposal(D.id,D),await this.setAuthRequest(N,{request:Rt(We({},$),{verifyContext:{}}),pairingTopic:A,transportType:o}),{uri:x??E,response:W}}),q(this,"approveSessionAuthenticate",async n=>{const{id:r,auths:s}=n,i=this.client.core.eventClient.createEvent({properties:{topic:r.toString(),trace:[Bs.authenticated_session_approve_started]}});try{this.isInitialized()}catch(y){throw i.setError(_o.no_internet_connection),y}const o=this.getPendingAuthRequest(r);if(!o)throw i.setError(_o.authenticated_session_pending_request_not_found),new Error(`Could not find pending auth request with id ${r}`);const a=o.transportType||Je.relay;a===Je.relay&&await this.confirmOnlineStateOrThrow();const c=o.requester.publicKey,l=await this.client.core.crypto.generateKeyPair(),u=yc(c),d={type:Vr,receiverPublicKey:c,senderPublicKey:l},h=[],f=[];for(const y of s){if(!await ng({cacao:y,projectId:this.client.core.projectId})){i.setError(_o.invalid_cacao);const O=et("SESSION_SETTLEMENT_FAILED","Signature verification failed");throw await this.sendError({id:r,topic:u,error:O,encodeOpts:d}),new Error(O.message)}i.addTrace(Bs.cacaos_verified);const{p:v}=y,A=mc(v.resources),E=[Nd(v.iss)],C=Kc(v.iss);if(A){const O=rg(A),k=sg(A);h.push(...O),E.push(...k)}for(const O of E)f.push(`${O}:${C}`)}const p=await this.client.core.crypto.generateSharedKey(l,c);i.addTrace(Bs.create_authenticated_session_topic);let g;if((h==null?void 0:h.length)>0){g={topic:p,acknowledged:!0,self:{publicKey:l,metadata:this.client.metadata},peer:{publicKey:c,metadata:o.requester.metadata},controller:c,expiry:lt(Di),authentication:s,requiredNamespaces:{},optionalNamespaces:{},relay:{protocol:"irn"},pairingTopic:o.pairingTopic,namespaces:Rg([...new Set(h)],[...new Set(f)]),transportType:a},i.addTrace(Bs.subscribing_authenticated_session_topic);try{await this.client.core.relayer.subscribe(p,{transportType:a})}catch(y){throw i.setError(_o.subscribe_authenticated_session_topic_failure),y}i.addTrace(Bs.subscribe_authenticated_session_topic_success),await this.client.session.set(p,g),i.addTrace(Bs.store_authenticated_session),await this.client.core.pairing.updateMetadata({topic:o.pairingTopic,metadata:o.requester.metadata})}i.addTrace(Bs.publishing_authenticated_session_approve);try{await this.sendResult({topic:u,id:r,result:{cacaos:s,responder:{publicKey:l,metadata:this.client.metadata}},encodeOpts:d,throwOnFailedPublish:!0,appLink:this.getAppLinkIfEnabled(o.requester.metadata,a)})}catch(y){throw i.setError(_o.authenticated_session_approve_publish_failure),y}return await this.client.auth.requests.delete(r,{message:"fulfilled",code:0}),await this.client.core.pairing.activate({topic:o.pairingTopic}),this.client.core.eventClient.deleteEvent({eventId:i.eventId}),{session:g}}),q(this,"rejectSessionAuthenticate",async n=>{this.isInitialized();const{id:r,reason:s}=n,i=this.getPendingAuthRequest(r);if(!i)throw new Error(`Could not find pending auth request with id ${r}`);i.transportType===Je.relay&&await this.confirmOnlineStateOrThrow();const o=i.requester.publicKey,a=await this.client.core.crypto.generateKeyPair(),c=yc(o),l={type:Vr,receiverPublicKey:o,senderPublicKey:a};await this.sendError({id:r,topic:c,error:s,encodeOpts:l,rpcOpts:Ot.wc_sessionAuthenticate.reject,appLink:this.getAppLinkIfEnabled(i.requester.metadata,i.transportType)}),await this.client.auth.requests.delete(r,{message:"rejected",code:0}),await this.deleteProposal(r)}),q(this,"formatAuthMessage",n=>{this.isInitialized();const{request:r,iss:s}=n;return R0(r,s)}),q(this,"processRelayMessageCache",()=>{setTimeout(async()=>{if(this.relayMessageCache.length!==0)for(;this.relayMessageCache.length>0;)try{const n=this.relayMessageCache.shift();n&&await this.onRelayMessage(n)}catch(n){this.client.logger.error(n)}},50)}),q(this,"cleanupDuplicatePairings",async n=>{if(n.pairingTopic)try{const r=this.client.core.pairing.pairings.get(n.pairingTopic),s=this.client.core.pairing.pairings.getAll().filter(i=>{var o,a;return((o=i.peerMetadata)==null?void 0:o.url)&&((a=i.peerMetadata)==null?void 0:a.url)===n.peer.metadata.url&&i.topic&&i.topic!==r.topic});if(s.length===0)return;this.client.logger.info(`Cleaning up ${s.length} duplicate pairing(s)`),await Promise.all(s.map(i=>this.client.core.pairing.disconnect({topic:i.topic}))),this.client.logger.info("Duplicate pairings clean up finished")}catch(r){this.client.logger.error(r)}}),q(this,"deleteSession",async n=>{var r;const{topic:s,expirerHasDeleted:i=!1,emitEvent:o=!0,id:a=0}=n,{self:c}=this.client.session.get(s);await this.client.core.relayer.unsubscribe(s),await this.client.session.delete(s,et("USER_DISCONNECTED")),this.addToRecentlyDeleted(s,"session"),this.client.core.crypto.keychain.has(c.publicKey)&&await this.client.core.crypto.deleteKeyPair(c.publicKey),this.client.core.crypto.keychain.has(s)&&await this.client.core.crypto.deleteSymKey(s),i||this.client.core.expirer.del(s),this.client.core.storage.removeItem(pm).catch(l=>this.client.logger.warn(l)),s===((r=this.sessionRequestQueue.queue[0])==null?void 0:r.topic)&&(this.sessionRequestQueue.state=lr.idle),await Promise.all(this.getPendingSessionRequests().filter(l=>l.topic===s).map(l=>this.deletePendingSessionRequest(l.id,et("USER_DISCONNECTED")))),o&&this.client.events.emit("session_delete",{id:a,topic:s})}),q(this,"deleteProposal",async(n,r)=>{if(r)try{const s=this.client.proposal.get(n),i=this.client.core.eventClient.getEvent({topic:s.pairingTopic});i==null||i.setError($s.proposal_expired)}catch{}await Promise.all([this.client.proposal.delete(n,et("USER_DISCONNECTED")),r?Promise.resolve():this.client.core.expirer.del(n)]),this.addToRecentlyDeleted(n,"proposal")}),q(this,"deletePendingSessionRequest",async(n,r,s=!1)=>{await Promise.all([this.client.pendingRequest.delete(n,r),s?Promise.resolve():this.client.core.expirer.del(n)]),this.addToRecentlyDeleted(n,"request"),this.sessionRequestQueue.queue=this.sessionRequestQueue.queue.filter(i=>i.id!==n),s&&(this.sessionRequestQueue.state=lr.idle,this.client.events.emit("session_request_expire",{id:n}))}),q(this,"deletePendingAuthRequest",async(n,r,s=!1)=>{await Promise.all([this.client.auth.requests.delete(n,r),s?Promise.resolve():this.client.core.expirer.del(n)])}),q(this,"setExpiry",async(n,r)=>{this.client.session.keys.includes(n)&&(this.client.core.expirer.set(n,r),await this.client.session.update(n,{expiry:r}))}),q(this,"setProposal",async(n,r)=>{this.client.core.expirer.set(n,lt(Ot.wc_sessionPropose.req.ttl)),await this.client.proposal.set(n,r)}),q(this,"setAuthRequest",async(n,r)=>{const{request:s,pairingTopic:i,transportType:o=Je.relay}=r;this.client.core.expirer.set(n,s.expiryTimestamp),await this.client.auth.requests.set(n,{authPayload:s.authPayload,requester:s.requester,expiryTimestamp:s.expiryTimestamp,id:n,pairingTopic:i,verifyContext:s.verifyContext,transportType:o})}),q(this,"setPendingSessionRequest",async n=>{const{id:r,topic:s,params:i,verifyContext:o}=n,a=i.request.expiryTimestamp||lt(Ot.wc_sessionRequest.req.ttl);this.client.core.expirer.set(r,a),await this.client.pendingRequest.set(r,{id:r,topic:s,params:i,verifyContext:o})}),q(this,"sendRequest",async n=>{const{topic:r,method:s,params:i,expiry:o,relayRpcId:a,clientRpcId:c,throwOnFailedPublish:l,appLink:u,tvf:d,publishOpts:h={}}=n,f=Jn(s,i,c);let p;const g=!!u;try{const A=g?gs:fn;p=await this.client.core.crypto.encode(r,f,{encoding:A})}catch(A){throw await this.cleanup(),this.client.logger.error(`sendRequest() -> core.crypto.encode() for topic ${r} failed`),A}let y;if(r6.includes(s)){const A=Bn(JSON.stringify(f)),E=Bn(p);y=await this.client.core.verify.register({id:E,decryptedId:A})}const v=We(We({},Ot[s].req),h);if(v.attestation=y,o&&(v.ttl=o),a&&(v.id=a),this.client.core.history.set(r,f),g){const A=nc(u,r,p);await we.Linking.openURL(A,this.client.name)}else v.tvf=Rt(We({},d),{correlationId:f.id}),l?(v.internal=Rt(We({},v.internal),{throwOnFailedPublish:!0}),await this.client.core.relayer.publish(r,p,v)):this.client.core.relayer.publish(r,p,v).catch(A=>this.client.logger.error(A));return f.id}),q(this,"sendProposeSession",async n=>{const{proposal:r,publishOpts:s}=n,i=Jn("wc_sessionPropose",r,r.id);this.client.core.history.set(r.pairingTopic,i);const o=await this.client.core.crypto.encode(r.pairingTopic,i,{encoding:fn}),a=Bn(JSON.stringify(i)),c=Bn(o),l=await this.client.core.verify.register({id:c,decryptedId:a});await this.client.core.relayer.publishCustom({payload:{pairingTopic:r.pairingTopic,sessionProposal:o},opts:Rt(We({},s),{publishMethod:"wc_proposeSession",attestation:l})})}),q(this,"sendApproveSession",async n=>{const{sessionTopic:r,pairingProposalResponse:s,proposal:i,sessionSettleRequest:o,publishOpts:a}=n,c=pa(i.id,s),l=await this.client.core.crypto.encode(i.pairingTopic,c,{encoding:fn}),u=Jn("wc_sessionSettle",o,a==null?void 0:a.id),d=await this.client.core.crypto.encode(r,u,{encoding:fn});this.client.core.history.set(r,u),await this.client.core.relayer.publishCustom({payload:{sessionTopic:r,pairingTopic:i.pairingTopic,sessionProposalResponse:l,sessionSettlementRequest:d},opts:Rt(We({},a),{publishMethod:"wc_approveSession"})})}),q(this,"sendResult",async n=>{const{id:r,topic:s,result:i,throwOnFailedPublish:o,encodeOpts:a,appLink:c}=n,l=pa(r,i);let u;const d=c&&typeof(we==null?void 0:we.Linking)<"u";try{const p=d?gs:fn;u=await this.client.core.crypto.encode(s,l,Rt(We({},a||{}),{encoding:p}))}catch(p){throw await this.cleanup(),this.client.logger.error(`sendResult() -> core.crypto.encode() for topic ${s} failed`),p}let h,f;try{h=await this.client.core.history.get(s,r);const p=h.request;try{f=this.getTVFParams(r,p.params,i)}catch(g){this.client.logger.warn(`sendResult() -> getTVFParams() failed: ${g==null?void 0:g.message}`)}}catch(p){throw this.client.logger.error(`sendResult() -> history.get(${s}, ${r}) failed`),p}if(d){const p=nc(c,s,u);await we.Linking.openURL(p,this.client.name)}else{const p=h.request.method,g=Ot[p].res;g.tvf=Rt(We({},f),{correlationId:r}),o?(g.internal=Rt(We({},g.internal),{throwOnFailedPublish:!0}),await this.client.core.relayer.publish(s,u,g)):this.client.core.relayer.publish(s,u,g).catch(y=>this.client.logger.error(y))}await this.client.core.history.resolve(l)}),q(this,"sendError",async n=>{const{id:r,topic:s,error:i,encodeOpts:o,rpcOpts:a,appLink:c}=n,l=Il(r,i);let u;const d=c&&typeof(we==null?void 0:we.Linking)<"u";try{const f=d?gs:fn;u=await this.client.core.crypto.encode(s,l,Rt(We({},o||{}),{encoding:f}))}catch(f){throw await this.cleanup(),this.client.logger.error(`sendError() -> core.crypto.encode() for topic ${s} failed`),f}let h;try{h=await this.client.core.history.get(s,r)}catch(f){throw this.client.logger.error(`sendError() -> history.get(${s}, ${r}) failed`),f}if(d){const f=nc(c,s,u);await we.Linking.openURL(f,this.client.name)}else{const f=h.request.method,p=a||Ot[f].res;this.client.core.relayer.publish(s,u,p)}await this.client.core.history.resolve(l)}),q(this,"cleanup",async()=>{const n=[],r=[];this.client.session.getAll().forEach(s=>{let i=!1;fr(s.expiry)&&(i=!0),this.client.core.crypto.keychain.has(s.topic)||(i=!0),i&&n.push(s.topic)}),this.client.proposal.getAll().forEach(s=>{fr(s.expiryTimestamp)&&r.push(s.id)}),await Promise.all([...n.map(s=>this.deleteSession({topic:s})),...r.map(s=>this.deleteProposal(s))])}),q(this,"onProviderMessageEvent",async n=>{!this.initialized||this.relayMessageCache.length>0?this.relayMessageCache.push(n):await this.onRelayMessage(n)}),q(this,"onRelayEventRequest",async n=>{this.requestQueue.queue.push(n),await this.processRequestsQueue()}),q(this,"processRequestsQueue",async()=>{if(this.requestQueue.state===lr.active){this.client.logger.info("Request queue already active, skipping...");return}for(this.client.logger.info(`Request queue starting with ${this.requestQueue.queue.length} requests`);this.requestQueue.queue.length>0;){this.requestQueue.state=lr.active;const n=this.requestQueue.queue.shift();if(n)try{await this.processRequest(n)}catch(r){this.client.logger.warn(r)}}this.requestQueue.state=lr.idle}),q(this,"processRequest",async n=>{const{topic:r,payload:s,attestation:i,transportType:o,encryptedId:a}=n,c=s.method;if(!this.shouldIgnorePairingRequest({topic:r,requestMethod:c}))switch(c){case"wc_sessionPropose":return await this.onSessionProposeRequest({topic:r,payload:s,attestation:i,encryptedId:a});case"wc_sessionSettle":return await this.onSessionSettleRequest(r,s);case"wc_sessionUpdate":return await this.onSessionUpdateRequest(r,s);case"wc_sessionExtend":return await this.onSessionExtendRequest(r,s);case"wc_sessionPing":return await this.onSessionPingRequest(r,s);case"wc_sessionDelete":return await this.onSessionDeleteRequest(r,s);case"wc_sessionRequest":return await this.onSessionRequest({topic:r,payload:s,attestation:i,encryptedId:a,transportType:o});case"wc_sessionEvent":return await this.onSessionEventRequest(r,s);case"wc_sessionAuthenticate":return await this.onSessionAuthenticateRequest({topic:r,payload:s,attestation:i,encryptedId:a,transportType:o});default:return this.client.logger.info(`Unsupported request method ${c}`)}}),q(this,"onRelayEventResponse",async n=>{const{topic:r,payload:s,transportType:i}=n,o=(await this.client.core.history.get(r,s.id)).request.method;switch(o){case"wc_sessionPropose":return this.onSessionProposeResponse(r,s,i);case"wc_sessionSettle":return this.onSessionSettleResponse(r,s);case"wc_sessionUpdate":return this.onSessionUpdateResponse(r,s);case"wc_sessionExtend":return this.onSessionExtendResponse(r,s);case"wc_sessionPing":return this.onSessionPingResponse(r,s);case"wc_sessionRequest":return this.onSessionRequestResponse(r,s);case"wc_sessionAuthenticate":return this.onSessionAuthenticateResponse(r,s);default:return this.client.logger.info(`Unsupported response method ${o}`)}}),q(this,"onRelayEventUnknownPayload",n=>{const{topic:r}=n,{message:s}=Y("MISSING_OR_INVALID",`Decoded payload on topic ${r} is not identifiable as a JSON-RPC request or a response.`);throw new Error(s)}),q(this,"shouldIgnorePairingRequest",n=>{const{topic:r,requestMethod:s}=n,i=this.expectedPairingMethodMap.get(r);return!i||i.includes(s)?!1:!!(i.includes("wc_sessionAuthenticate")&&this.client.events.listenerCount("session_authenticate")>0)}),q(this,"onSessionProposeRequest",async n=>{const{topic:r,payload:s,attestation:i,encryptedId:o}=n,{params:a,id:c}=s;try{const l=this.client.core.eventClient.getEvent({topic:r});this.client.events.listenerCount("session_proposal")===0&&(console.warn("No listener for session_proposal event"),l==null||l.setError(kr.proposal_listener_not_found)),this.isValidConnect(We({},s.params));const u=a.expiryTimestamp||lt(Ot.wc_sessionPropose.req.ttl),d=We({id:c,pairingTopic:r,expiryTimestamp:u,attestation:i,encryptedId:o},a);await this.setProposal(c,d);const h=await this.getVerifyContext({attestationId:i,hash:Bn(JSON.stringify(s)),encryptedId:o,metadata:d.proposer.metadata});l==null||l.addTrace(ur.emit_session_proposal),this.client.events.emit("session_proposal",{id:c,params:d,verifyContext:h})}catch(l){await this.sendError({id:c,topic:r,error:l,rpcOpts:Ot.wc_sessionPropose.autoReject}),this.client.logger.error(l)}}),q(this,"onSessionProposeResponse",async(n,r,s)=>{const{id:i}=r;if(hr(r)){const{result:o}=r;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",result:o});const a=this.client.proposal.get(i);this.client.logger.trace({type:"method",method:"onSessionProposeResponse",proposal:a});const c=a.proposer.publicKey;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",selfPublicKey:c});const l=o.responderPublicKey;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",peerPublicKey:l});const u=await this.client.core.crypto.generateSharedKey(c,l);this.pendingSessions.set(i,{sessionTopic:u,pairingTopic:n,proposalId:i,publicKey:c});const d=await this.client.core.relayer.subscribe(u,{transportType:s});this.client.logger.trace({type:"method",method:"onSessionProposeResponse",subscriptionId:d}),await this.client.core.pairing.activate({topic:n})}else if(Fn(r)){await this.deleteProposal(i);const o=He("session_connect",i);if(this.events.listenerCount(o)===0)throw new Error(`emitting ${o} without any listeners, 954`);this.events.emit(o,{error:r.error})}}),q(this,"onSessionSettleRequest",async(n,r)=>{const{id:s,params:i}=r;try{this.isValidSessionSettleRequest(i);const{relay:o,controller:a,expiry:c,namespaces:l,sessionProperties:u,scopedProperties:d,sessionConfig:h,proposalRequestsResponses:f}=r.params,p=[...this.pendingSessions.values()].find(v=>v.sessionTopic===n);if(!p)return this.client.logger.error(`Pending session not found for topic ${n}`);const g=this.client.proposal.get(p.proposalId),y=Rt(We(We(We({topic:n,relay:o,expiry:c,namespaces:l,acknowledged:!0,pairingTopic:p.pairingTopic,requiredNamespaces:g.requiredNamespaces,optionalNamespaces:g.optionalNamespaces,controller:a.publicKey,self:{publicKey:p.publicKey,metadata:this.client.metadata},peer:{publicKey:a.publicKey,metadata:a.metadata}},u&&{sessionProperties:u}),d&&{scopedProperties:d}),h&&{sessionConfig:h}),{transportType:Je.relay,authentication:f==null?void 0:f.authentication,walletPayResult:f==null?void 0:f.walletPay});await this.client.session.set(y.topic,y),await this.setExpiry(y.topic,y.expiry),await this.client.core.pairing.updateMetadata({topic:p.pairingTopic,metadata:y.peer.metadata}),this.pendingSessions.delete(p.proposalId),this.deleteProposal(p.proposalId,!1),this.cleanupDuplicatePairings(y),await this.sendResult({id:r.id,topic:n,throwOnFailedPublish:!0,result:!0}),this.client.events.emit("session_connect",{session:y}),this.events.emit(He("session_connect",p.proposalId),{session:y})}catch(o){await this.sendError({id:s,topic:n,error:o}),this.client.logger.error(o)}}),q(this,"onSessionSettleResponse",async(n,r)=>{const{id:s}=r;hr(r)?(await this.client.session.update(n,{acknowledged:!0}),this.events.emit(He("session_approve",s),{})):Fn(r)&&(await this.client.session.delete(n,et("USER_DISCONNECTED")),this.events.emit(He("session_approve",s),{error:r.error}))}),q(this,"onSessionUpdateRequest",async(n,r)=>{const{params:s,id:i}=r;try{const o=`${n}_session_update`,a=Eo.get(o);if(a&&this.isRequestOutOfSync(a,i)){this.client.logger.warn(`Discarding out of sync request - ${i}`),this.sendError({id:i,topic:n,error:et("INVALID_UPDATE_REQUEST")});return}this.isValidUpdate(We({topic:n},s));try{Eo.set(o,i),await this.client.session.update(n,{namespaces:s.namespaces}),await this.sendResult({id:i,topic:n,result:!0})}catch(c){throw Eo.delete(o),c}this.client.events.emit("session_update",{id:i,topic:n,params:s})}catch(o){await this.sendError({id:i,topic:n,error:o}),this.client.logger.error(o)}}),q(this,"isRequestOutOfSync",(n,r)=>r.toString().slice(0,-3)<n.toString().slice(0,-3)),q(this,"onSessionUpdateResponse",(n,r)=>{const{id:s}=r,i=He("session_update",s);if(this.events.listenerCount(i)===0)throw new Error(`emitting ${i} without any listeners`);hr(r)?this.events.emit(He("session_update",s),{}):Fn(r)&&this.events.emit(He("session_update",s),{error:r.error})}),q(this,"onSessionExtendRequest",async(n,r)=>{const{id:s}=r;try{this.isValidExtend({topic:n}),await this.setExpiry(n,lt(Di)),await this.sendResult({id:s,topic:n,result:!0}),this.client.events.emit("session_extend",{id:s,topic:n})}catch(i){await this.sendError({id:s,topic:n,error:i}),this.client.logger.error(i)}}),q(this,"onSessionExtendResponse",(n,r)=>{const{id:s}=r,i=He("session_extend",s);if(this.events.listenerCount(i)===0)throw new Error(`emitting ${i} without any listeners`);hr(r)?this.events.emit(He("session_extend",s),{}):Fn(r)&&this.events.emit(He("session_extend",s),{error:r.error})}),q(this,"onSessionPingRequest",async(n,r)=>{const{id:s}=r;try{this.isValidPing({topic:n}),await this.sendResult({id:s,topic:n,result:!0,throwOnFailedPublish:!0}),this.client.events.emit("session_ping",{id:s,topic:n})}catch(i){await this.sendError({id:s,topic:n,error:i}),this.client.logger.error(i)}}),q(this,"onSessionPingResponse",(n,r)=>{const{id:s}=r,i=He("session_ping",s);setTimeout(()=>{if(this.events.listenerCount(i)===0)throw new Error(`emitting ${i} without any listeners 2176`);hr(r)?this.events.emit(He("session_ping",s),{}):Fn(r)&&this.events.emit(He("session_ping",s),{error:r.error})},500)}),q(this,"onSessionDeleteRequest",async(n,r)=>{const{id:s}=r;try{await this.isValidDisconnect({topic:n,reason:r.params}),this.cleanupPendingSentRequestsForTopic({topic:n,error:et("USER_DISCONNECTED")}),await this.deleteSession({topic:n,id:s})}catch(i){this.client.logger.error(i)}}),q(this,"onSessionRequest",async n=>{var r,s,i;const{topic:o,payload:a,attestation:c,encryptedId:l,transportType:u}=n,{id:d,params:h}=a;try{await this.isValidRequest(We({topic:o},h));const f=this.client.session.get(o),p=await this.getVerifyContext({attestationId:c,hash:Bn(JSON.stringify(Jn("wc_sessionRequest",h,d))),encryptedId:l,metadata:f.peer.metadata,transportType:u}),g={id:d,topic:o,params:h,verifyContext:p};await this.setPendingSessionRequest(g),u===Je.link_mode&&(r=f.peer.metadata.redirect)!=null&&r.universal&&this.client.core.addLinkModeSupportedApp((s=f.peer.metadata.redirect)==null?void 0:s.universal),(i=this.client.signConfig)!=null&&i.disableRequestQueue?this.emitSessionRequest(g):(this.addSessionRequestToSessionRequestQueue(g),this.processSessionRequestQueue())}catch(f){await this.sendError({id:d,topic:o,error:f}),this.client.logger.error(f)}}),q(this,"onSessionRequestResponse",(n,r)=>{const{id:s}=r,i=He("session_request",s);if(this.events.listenerCount(i)===0)throw new Error(`emitting ${i} without any listeners`);hr(r)?this.events.emit(He("session_request",s),{result:r.result}):Fn(r)&&this.events.emit(He("session_request",s),{error:r.error})}),q(this,"onSessionEventRequest",async(n,r)=>{const{id:s,params:i}=r;try{const o=`${n}_session_event_${i.event.name}`,a=Eo.get(o);if(a&&this.isRequestOutOfSync(a,s)){this.client.logger.info(`Discarding out of sync request - ${s}`);return}this.isValidEmit(We({topic:n},i)),this.client.events.emit("session_event",{id:s,topic:n,params:i}),Eo.set(o,s)}catch(o){await this.sendError({id:s,topic:n,error:o}),this.client.logger.error(o)}}),q(this,"onSessionAuthenticateResponse",(n,r)=>{const{id:s}=r;this.client.logger.trace({type:"method",method:"onSessionAuthenticateResponse",topic:n,payload:r}),hr(r)?this.events.emit(He("session_request",s),{result:r.result}):Fn(r)&&this.events.emit(He("session_request",s),{error:r.error})}),q(this,"onSessionAuthenticateRequest",async n=>{var r;const{topic:s,payload:i,attestation:o,encryptedId:a,transportType:c}=n;try{const{requester:l,authPayload:u,expiryTimestamp:d}=i.params,h=await this.getVerifyContext({attestationId:o,hash:Bn(JSON.stringify(i)),encryptedId:a,metadata:l.metadata,transportType:c}),f={requester:l,pairingTopic:s,id:i.id,authPayload:u,verifyContext:h,expiryTimestamp:d};await this.setAuthRequest(i.id,{request:f,pairingTopic:s,transportType:c}),c===Je.link_mode&&(r=l.metadata.redirect)!=null&&r.universal&&this.client.core.addLinkModeSupportedApp(l.metadata.redirect.universal),this.client.events.emit("session_authenticate",{topic:s,params:i.params,id:i.id,verifyContext:h})}catch(l){this.client.logger.error(l);const u=i.params.requester.publicKey,d=await this.client.core.crypto.generateKeyPair(),h=this.getAppLinkIfEnabled(i.params.requester.metadata,c),f={type:Vr,receiverPublicKey:u,senderPublicKey:d};await this.sendError({id:i.id,topic:s,error:l,encodeOpts:f,rpcOpts:Ot.wc_sessionAuthenticate.autoReject,appLink:h})}}),q(this,"addSessionRequestToSessionRequestQueue",n=>{this.sessionRequestQueue.queue.push(n)}),q(this,"cleanupAfterResponse",n=>{this.deletePendingSessionRequest(n.response.id,{message:"fulfilled",code:0}),setTimeout(()=>{this.sessionRequestQueue.state=lr.idle,this.processSessionRequestQueue()},G.toMiliseconds(this.requestQueueDelay))}),q(this,"cleanupPendingSentRequestsForTopic",({topic:n,error:r})=>{const s=this.client.core.history.pending;s.length>0&&s.filter(i=>i.topic===n&&i.request.method==="wc_sessionRequest").forEach(i=>{this.events.emit(He("session_request",i.request.id),{error:r})})}),q(this,"processSessionRequestQueue",()=>{if(this.sessionRequestQueue.state===lr.active){this.client.logger.info("session request queue is already active.");return}const n=this.sessionRequestQueue.queue[0];if(!n){this.client.logger.info("session request queue is empty.");return}try{this.emitSessionRequest(n)}catch(r){this.client.logger.error(r)}}),q(this,"emitSessionRequest",n=>{if(this.emittedSessionRequests.has(n.id)){this.client.logger.warn({id:n.id},`Skipping emitting \`session_request\` event for duplicate request. id: ${n.id}`);return}this.sessionRequestQueue.state=lr.active,this.emittedSessionRequests.add(n.id),this.client.events.emit("session_request",n)}),q(this,"onPairingCreated",n=>{if(n.methods&&this.expectedPairingMethodMap.set(n.topic,n.methods),n.active)return;const r=this.client.proposal.getAll().find(s=>s.pairingTopic===n.topic);r&&this.onSessionProposeRequest({topic:n.topic,payload:Jn("wc_sessionPropose",Rt(We({},r),{requiredNamespaces:r.requiredNamespaces,optionalNamespaces:r.optionalNamespaces,relays:r.relays,proposer:r.proposer,sessionProperties:r.sessionProperties,scopedProperties:r.scopedProperties}),r.id),attestation:r.attestation,encryptedId:r.encryptedId})}),q(this,"isValidConnect",async n=>{if(!ln(n)){const{message:l}=Y("MISSING_OR_INVALID",`connect() params: ${JSON.stringify(n)}`);throw new Error(l)}const{pairingTopic:r,requiredNamespaces:s,optionalNamespaces:i,sessionProperties:o,scopedProperties:a,relays:c}=n;if(yt(r)||await this.isValidPairingTopic(r),!QD(c,!0)){const{message:l}=Y("MISSING_OR_INVALID",`connect() relays: ${c}`);throw new Error(l)}if(s&&!yt(s)&&br(s)!==0){const l="requiredNamespaces are deprecated and are automatically assigned to optionalNamespaces";["fatal","error","silent"].includes(this.client.logger.level)?console.warn(l):this.client.logger.warn(l),this.validateNamespaces(s,"requiredNamespaces")}if(i&&!yt(i)&&br(i)!==0&&this.validateNamespaces(i,"optionalNamespaces"),o&&!yt(o)&&this.validateSessionProps(o,"sessionProperties"),a&&!yt(a)){this.validateSessionProps(a,"scopedProperties");const l=Object.keys(s||{}).concat(Object.keys(i||{}));if(!Object.keys(a).every(u=>l.includes(u.split(":")[0])))throw new Error(`Scoped properties must be a subset of required/optional namespaces, received: ${JSON.stringify(a)}, required/optional namespaces: ${JSON.stringify(l)}`)}}),q(this,"validateNamespaces",(n,r)=>{const s=XD(n,"connect()",r);if(s)throw new Error(s.message)}),q(this,"isValidApprove",async n=>{if(!ln(n))throw new Error(Y("MISSING_OR_INVALID",`approve() params: ${n}`).message);const{id:r,namespaces:s,relayProtocol:i,sessionProperties:o,scopedProperties:a}=n;this.checkRecentlyDeleted(r),await this.isValidProposalId(r);const c=this.client.proposal.get(r),l=Iu(s,"approve()");if(l)throw new Error(l.message);const u=Dg(c.requiredNamespaces,s,"approve()");if(u)throw new Error(u.message);if(!dt(i,!0)){const{message:d}=Y("MISSING_OR_INVALID",`approve() relayProtocol: ${i}`);throw new Error(d)}if(o&&!yt(o)&&this.validateSessionProps(o,"sessionProperties"),a&&!yt(a)){this.validateSessionProps(a,"scopedProperties");const d=new Set(Object.keys(s));if(!Object.keys(a).every(h=>d.has(h.split(":")[0])))throw new Error(`Scoped properties must be a subset of approved namespaces, received: ${JSON.stringify(a)}, approved namespaces: ${Array.from(d).join(", ")}`)}}),q(this,"isValidReject",async n=>{if(!ln(n)){const{message:i}=Y("MISSING_OR_INVALID",`reject() params: ${n}`);throw new Error(i)}const{id:r,reason:s}=n;if(this.checkRecentlyDeleted(r),await this.isValidProposalId(r),!tk(s)){const{message:i}=Y("MISSING_OR_INVALID",`reject() reason: ${JSON.stringify(s)}`);throw new Error(i)}}),q(this,"isValidSessionSettleRequest",n=>{if(!ln(n)){const{message:l}=Y("MISSING_OR_INVALID",`onSessionSettleRequest() params: ${n}`);throw new Error(l)}const{relay:r,controller:s,namespaces:i,expiry:o}=n;if(!pE(r)){const{message:l}=Y("MISSING_OR_INVALID","onSessionSettleRequest() relay protocol should be a string");throw new Error(l)}const a=VD(s,"onSessionSettleRequest()");if(a)throw new Error(a.message);const c=Iu(i,"onSessionSettleRequest()");if(c)throw new Error(c.message);if(fr(o)){const{message:l}=Y("EXPIRED","onSessionSettleRequest()");throw new Error(l)}}),q(this,"isValidUpdate",async n=>{if(!ln(n)){const{message:c}=Y("MISSING_OR_INVALID",`update() params: ${n}`);throw new Error(c)}const{topic:r,namespaces:s}=n;this.checkRecentlyDeleted(r),await this.isValidSessionTopic(r);const i=this.client.session.get(r),o=Iu(s,"update()");if(o)throw new Error(o.message);const a=Dg(i.requiredNamespaces,s,"update()");if(a)throw new Error(a.message)}),q(this,"isValidExtend",async n=>{if(!ln(n)){const{message:s}=Y("MISSING_OR_INVALID",`extend() params: ${n}`);throw new Error(s)}const{topic:r}=n;this.checkRecentlyDeleted(r),await this.isValidSessionTopic(r)}),q(this,"isValidRequest",async n=>{if(!ln(n)){const{message:c}=Y("MISSING_OR_INVALID",`request() params: ${n}`);throw new Error(c)}const{topic:r,request:s,chainId:i,expiry:o}=n;this.checkRecentlyDeleted(r),await this.isValidSessionTopic(r);const{namespaces:a}=this.client.session.get(r);if(!Pg(a,i)){const{message:c}=Y("MISSING_OR_INVALID",`request() chainId: ${i}`);throw new Error(c)}if(!nk(s)){const{message:c}=Y("MISSING_OR_INVALID",`request() ${JSON.stringify(s)}`);throw new Error(c)}if(!ik(a,i,s.method)){const{message:c}=Y("MISSING_OR_INVALID",`request() method: ${s.method}`);throw new Error(c)}this.validateRequestExpiry(o)}),q(this,"isValidRespond",async n=>{var r;if(!ln(n)){const{message:a}=Y("MISSING_OR_INVALID",`respond() params: ${n}`);throw new Error(a)}const{topic:s,response:i}=n;try{await this.isValidSessionTopic(s)}catch(a){throw(r=n==null?void 0:n.response)!=null&&r.id&&this.cleanupAfterResponse(n),a}if(!rk(i)){const{message:a}=Y("MISSING_OR_INVALID",`respond() response: ${JSON.stringify(i)}`);throw new Error(a)}const o=this.client.pendingRequest.get(i.id);if(o.topic!==s){const{message:a}=Y("MISMATCHED_TOPIC",`Request response topic mismatch. reqId: ${i.id}, expected topic: ${o.topic}, received topic: ${s}`);throw new Error(a)}}),q(this,"isValidPing",async n=>{if(!ln(n)){const{message:s}=Y("MISSING_OR_INVALID",`ping() params: ${n}`);throw new Error(s)}const{topic:r}=n;await this.isValidSessionOrPairingTopic(r)}),q(this,"isValidEmit",async n=>{if(!ln(n)){const{message:a}=Y("MISSING_OR_INVALID",`emit() params: ${n}`);throw new Error(a)}const{topic:r,event:s,chainId:i}=n;await this.isValidSessionTopic(r);const{namespaces:o}=this.client.session.get(r);if(!Pg(o,i)){const{message:a}=Y("MISSING_OR_INVALID",`emit() chainId: ${i}`);throw new Error(a)}if(!sk(s)){const{message:a}=Y("MISSING_OR_INVALID",`emit() event: ${JSON.stringify(s)}`);throw new Error(a)}if(!ok(o,i,s.name)){const{message:a}=Y("MISSING_OR_INVALID",`emit() event: ${JSON.stringify(s)}`);throw new Error(a)}}),q(this,"isValidDisconnect",async n=>{if(!ln(n)){const{message:s}=Y("MISSING_OR_INVALID",`disconnect() params: ${n}`);throw new Error(s)}const{topic:r}=n;await this.isValidSessionOrPairingTopic(r)}),q(this,"isValidAuthenticate",n=>{const{chains:r,uri:s,domain:i,nonce:o}=n;if(!Array.isArray(r)||r.length===0)throw new Error("chains is required and must be a non-empty array");if(!dt(s,!1))throw new Error("uri is required parameter");if(!dt(i,!1))throw new Error("domain is required parameter");if(!dt(o,!1))throw new Error("nonce is required parameter");if([...new Set(r.map(c=>zr(c).namespace))].length>1)throw new Error("Multi-namespace requests are not supported. Please request single namespace only.");const{namespace:a}=zr(r[0]);if(a!=="eip155")throw new Error("Only eip155 namespace is supported for authenticated sessions. Please use .connect() for non-eip155 chains.")}),q(this,"getVerifyContext",async n=>{const{attestationId:r,hash:s,encryptedId:i,metadata:o,transportType:a}=n,c={verified:{verifyUrl:o.verifyUrl||Fo,validation:"UNKNOWN",origin:o.url||""}};try{if(a===Je.link_mode){const u=this.getAppLinkIfEnabled(o,a);return c.verified.validation=u&&new URL(u).origin===new URL(o.url).origin?"VALID":"INVALID",c}const l=await this.client.core.verify.resolve({attestationId:r,hash:s,encryptedId:i,verifyUrl:o.verifyUrl});l&&(c.verified.origin=l.origin,c.verified.isScam=l.isScam,c.verified.validation=l.origin===new URL(o.url).origin?"VALID":"INVALID")}catch(l){this.client.logger.warn(l)}return this.client.logger.debug(`Verify context: ${JSON.stringify(c)}`),c}),q(this,"validateSessionProps",(n,r)=>{Object.values(n).forEach((s,i)=>{if(s==null){const{message:o}=Y("MISSING_OR_INVALID",`${r} must contain an existing value for each key. Received: ${s} for key ${Object.keys(n)[i]}`);throw new Error(o)}})}),q(this,"getPendingAuthRequest",n=>{const r=this.client.auth.requests.get(n);return typeof r=="object"?r:void 0}),q(this,"addToRecentlyDeleted",(n,r)=>{if(this.recentlyDeletedMap.set(n,r),this.recentlyDeletedMap.size>=this.recentlyDeletedLimit){let s=0;const i=this.recentlyDeletedLimit/2;for(const o of this.recentlyDeletedMap.keys()){if(s++>=i)break;this.recentlyDeletedMap.delete(o)}}}),q(this,"checkRecentlyDeleted",n=>{const r=this.recentlyDeletedMap.get(n);if(r){const{message:s}=Y("MISSING_OR_INVALID",`Record was recently deleted - ${r}: ${n}`);throw new Error(s)}}),q(this,"isLinkModeEnabled",(n,r)=>{var s,i,o,a,c,l,u,d,h;return!n||r!==Je.link_mode?!1:((i=(s=this.client.metadata)==null?void 0:s.redirect)==null?void 0:i.linkMode)===!0&&((a=(o=this.client.metadata)==null?void 0:o.redirect)==null?void 0:a.universal)!==void 0&&((l=(c=this.client.metadata)==null?void 0:c.redirect)==null?void 0:l.universal)!==""&&((u=n==null?void 0:n.redirect)==null?void 0:u.universal)!==void 0&&((d=n==null?void 0:n.redirect)==null?void 0:d.universal)!==""&&((h=n==null?void 0:n.redirect)==null?void 0:h.linkMode)===!0&&this.client.core.linkModeSupportedApps.includes(n.redirect.universal)&&typeof(we==null?void 0:we.Linking)<"u"}),q(this,"getAppLinkIfEnabled",(n,r)=>{var s;return this.isLinkModeEnabled(n,r)?(s=n==null?void 0:n.redirect)==null?void 0:s.universal:void 0}),q(this,"handleLinkModeMessage",({url:n})=>{if(!n||!n.includes("wc_ev")||!n.includes("topic"))return;const r=Hp(n,"topic")||"",s=decodeURIComponent(Hp(n,"wc_ev")||""),i=this.client.session.keys.includes(r);i&&this.client.session.update(r,{transportType:Je.link_mode}),this.client.core.dispatchEnvelope({topic:r,message:s,sessionExists:i})}),q(this,"registerLinkModeListeners",async()=>{var n;if(Dh()||Rs()&&(n=this.client.metadata.redirect)!=null&&n.linkMode){const r=we==null?void 0:we.Linking;if(typeof r<"u"){r.addEventListener("url",this.handleLinkModeMessage,this.client.name);const s=await r.getInitialURL();s&&setTimeout(()=>{this.handleLinkModeMessage({url:s})},50)}}}),q(this,"getTVFApproveParams",n=>{try{const r=hE(n.namespaces),s=DD(n.namespaces),i=kD(n.namespaces),o=n.sessionProperties,a=n.scopedProperties;return{approvedChains:r,approvedMethods:s,approvedEvents:i,sessionProperties:o,scopedProperties:a}}catch(r){return this.client.logger.warn(r,"Error getting TVF approve params"),{}}}),q(this,"getTVFParams",(n,r,s)=>{var i,o,a;if(!((i=r.request)!=null&&i.method))return{};const c={correlationId:n,rpcMethods:[r.request.method],chainId:r.chainId};try{const l=this.extractTxHashesFromResult(r.request,s);c.txHashes=l,c.contractAddresses=this.isValidContractData(r.request.params)?[(a=(o=r.request.params)==null?void 0:o[0])==null?void 0:a.to]:[]}catch(l){this.client.logger.warn(l,"Error getting TVF params")}return c}),q(this,"isValidContractData",n=>{var r;if(!n)return!1;try{const s=(n==null?void 0:n.data)||((r=n==null?void 0:n[0])==null?void 0:r.data);if(!s.startsWith("0x"))return!1;const i=s.slice(2);return/^[0-9a-fA-F]*$/.test(i)?i.length%2===0:!1}catch{}return!1}),q(this,"extractTxHashesFromResult",(n,r)=>{var s;try{if(!r)return[];const i=n.method,o=t6[i];if(i==="sui_signTransaction")return[_3(r.transactionBytes)];if(i==="near_signTransaction")return[Xp(r)];if(i==="near_signTransactions")return r.map(c=>Xp(c));if(i==="xrpl_signTransactionFor"||i==="xrpl_signTransaction")return[(s=r.tx_json)==null?void 0:s.hash];if(i==="polkadot_signTransaction")return[Ak({transaction:n.params.transactionPayload,signature:r.signature})];if(i==="algo_signTxn")return Kr(r)?r.map(c=>Qp(c)):[Qp(r)];if(i==="cosmos_signDirect")return[C3(r)];if(i==="wallet_sendCalls")return A3(r);if(typeof r=="string")return[r];const a=r[o.key];if(Kr(a))return i==="solana_signAllTransactions"?a.map(c=>b3(c)):a;if(typeof a=="string")return[a]}catch(i){this.client.logger.warn(i,"Error extracting tx hashes from result")}return[]})}async processPendingMessageEvents(){try{const e=this.client.session.keys,n=this.client.core.relayer.messages.getWithoutAck(e);for(const[r,s]of Object.entries(n))for(const i of s)try{await this.onProviderMessageEvent({topic:r,message:i,publishedAt:Date.now()})}catch{this.client.logger.warn(`Error processing pending message event for topic: ${r}, message: ${i}`)}}catch(e){this.client.logger.warn(e,"processPendingMessageEvents failed")}}isInitialized(){if(!this.initialized){const{message:e}=Y("NOT_INITIALIZED",this.name);throw new Error(e)}}async confirmOnlineStateOrThrow(){await this.client.core.relayer.confirmOnlineStateOrThrow()}registerRelayerEvents(){this.client.core.relayer.on(ut.message,e=>{this.onProviderMessageEvent(e)})}async onRelayMessage(e){const{topic:n,message:r,attestation:s,transportType:i}=e,{publicKey:o}=this.client.auth.authKeys.keys.includes(Ec)?this.client.auth.authKeys.get(Ec):{responseTopic:void 0,publicKey:void 0};try{const a=await this.client.core.crypto.decode(n,r,{receiverPublicKey:o,encoding:i===Je.link_mode?gs:fn});Vh(a)?(this.client.core.history.set(n,a),await this.onRelayEventRequest({topic:n,payload:a,attestation:s,transportType:i,encryptedId:Bn(r)})):Nl(a)?(await this.client.core.history.resolve(a),await this.onRelayEventResponse({topic:n,payload:a,transportType:i}),this.client.core.history.delete(n,a.id)):(this.client.logger.error(`onRelayMessage() -> unknown payload: ${JSON.stringify(a)}`),await this.onRelayEventUnknownPayload({topic:n,payload:a,transportType:i})),await this.client.core.relayer.messages.ack(n,r)}catch(a){this.client.logger.error(`onRelayMessage() -> failed to process an inbound message: ${r}`),this.client.logger.error(a)}}registerExpirerEvents(){this.client.core.expirer.on(Un.expired,async e=>{const{topic:n,id:r}=f0(e.target);if(r&&this.client.pendingRequest.keys.includes(r))return await this.deletePendingSessionRequest(r,Y("EXPIRED"),!0);if(r&&this.client.auth.requests.keys.includes(r))return await this.deletePendingAuthRequest(r,Y("EXPIRED"),!0);n?this.client.session.keys.includes(n)&&(await this.deleteSession({topic:n,expirerHasDeleted:!0}),this.client.events.emit("session_expire",{topic:n})):r&&(await this.deleteProposal(r,!0),this.client.events.emit("proposal_expire",{id:r}))})}registerPairingEvents(){this.client.core.pairing.events.on(Hs.create,e=>this.onPairingCreated(e)),this.client.core.pairing.events.on(Hs.delete,e=>{this.addToRecentlyDeleted(e.topic,"pairing")})}isValidPairingTopic(e){if(!dt(e,!1)){const{message:n}=Y("MISSING_OR_INVALID",`pairing topic should be a string: ${e}`);throw new Error(n)}if(!this.client.core.pairing.pairings.keys.includes(e)){const{message:n}=Y("NO_MATCHING_KEY",`pairing topic doesn't exist: ${e}`);throw new Error(n)}if(fr(this.client.core.pairing.pairings.get(e).expiry)){const{message:n}=Y("EXPIRED",`pairing topic: ${e}`);throw new Error(n)}}async isValidSessionTopic(e){if(!dt(e,!1)){const{message:n}=Y("MISSING_OR_INVALID",`session topic should be a string: ${e}`);throw new Error(n)}if(this.checkRecentlyDeleted(e),!this.client.session.keys.includes(e)){const{message:n}=Y("NO_MATCHING_KEY",`session topic doesn't exist: ${e}`);throw new Error(n)}if(fr(this.client.session.get(e).expiry)){await this.deleteSession({topic:e});const{message:n}=Y("EXPIRED",`session topic: ${e}`);throw new Error(n)}if(!this.client.core.crypto.keychain.has(e)){const{message:n}=Y("MISSING_OR_INVALID",`session topic does not exist in keychain: ${e}`);throw await this.deleteSession({topic:e}),new Error(n)}}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))this.isValidPairingTopic(e);else if(dt(e,!1)){const{message:n}=Y("NO_MATCHING_KEY",`session or pairing topic doesn't exist: ${e}`);throw new Error(n)}else{const{message:n}=Y("MISSING_OR_INVALID",`session or pairing topic should be a string: ${e}`);throw new Error(n)}}async isValidProposalId(e){if(!ek(e)){const{message:n}=Y("MISSING_OR_INVALID",`proposal id should be a number: ${e}`);throw new Error(n)}if(!this.client.proposal.keys.includes(e)){const{message:n}=Y("NO_MATCHING_KEY",`proposal id doesn't exist: ${e}`);throw new Error(n)}if(fr(this.client.proposal.get(e).expiryTimestamp)){await this.deleteProposal(e);const{message:n}=Y("EXPIRED",`proposal id: ${e}`);throw new Error(n)}}validateRequestExpiry(e){if(e&&!lk(e,Du)){const{message:n}=Y("MISSING_OR_INVALID",`request() expiry: ${e}. Expiry must be a number (in seconds) between ${Du.min} and ${Du.max}`);throw new Error(n)}}}class g6 extends vi{constructor(e,n){super(e,n,X5,Gh),this.core=e,this.logger=n}}let m6=class extends vi{constructor(e,n){super(e,n,Q5,Gh),this.core=e,this.logger=n}};class y6 extends vi{constructor(e,n){super(e,n,n6,Gh,r=>r.id),this.core=e,this.logger=n}}class w6 extends vi{constructor(e,n){super(e,n,o6,Ol,()=>Ec),this.core=e,this.logger=n}}class E6 extends vi{constructor(e,n){super(e,n,a6,Ol),this.core=e,this.logger=n}}class b6 extends vi{constructor(e,n){super(e,n,c6,Ol,r=>r.id),this.core=e,this.logger=n}}var _6=Object.defineProperty,v6=(t,e,n)=>e in t?_6(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,ku=(t,e,n)=>v6(t,typeof e!="symbol"?e+"":e,n);class C6{constructor(e,n){this.core=e,this.logger=n,ku(this,"authKeys"),ku(this,"pairingTopics"),ku(this,"requests"),this.authKeys=new w6(this.core,this.logger),this.pairingTopics=new E6(this.core,this.logger),this.requests=new b6(this.core,this.logger)}async init(){await this.authKeys.init(),await this.pairingTopics.init(),await this.requests.init()}}var A6=Object.defineProperty,S6=(t,e,n)=>e in t?A6(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,De=(t,e,n)=>S6(t,typeof e!="symbol"?e+"":e,n);class Yh extends yS{constructor(e){super(e),De(this,"protocol",LE),De(this,"version",ME),De(this,"name",Pu.name),De(this,"metadata"),De(this,"core"),De(this,"logger"),De(this,"events",new sr.EventEmitter),De(this,"engine"),De(this,"session"),De(this,"proposal"),De(this,"pendingRequest"),De(this,"auth"),De(this,"signConfig"),De(this,"on",(r,s)=>this.events.on(r,s)),De(this,"once",(r,s)=>this.events.once(r,s)),De(this,"off",(r,s)=>this.events.off(r,s)),De(this,"removeListener",(r,s)=>this.events.removeListener(r,s)),De(this,"removeAllListeners",r=>this.events.removeAllListeners(r)),De(this,"connect",async r=>{try{return await this.engine.connect(r)}catch(s){throw this.logger.error(s.message),s}}),De(this,"pair",async r=>{try{return await this.engine.pair(r)}catch(s){throw this.logger.error(s.message),s}}),De(this,"approve",async r=>{try{return await this.engine.approve(r)}catch(s){throw this.logger.error(s.message),s}}),De(this,"reject",async r=>{try{return await this.engine.reject(r)}catch(s){throw this.logger.error(s.message),s}}),De(this,"update",async r=>{try{return await this.engine.update(r)}catch(s){throw this.logger.error(s.message),s}}),De(this,"extend",async r=>{try{return await this.engine.extend(r)}catch(s){throw this.logger.error(s.message),s}}),De(this,"request",async r=>{try{return await this.engine.request(r)}catch(s){throw this.logger.error(s.message),s}}),De(this,"respond",async r=>{try{return await this.engine.respond(r)}catch(s){throw this.logger.error(s.message),s}}),De(this,"ping",async r=>{try{return await this.engine.ping(r)}catch(s){throw this.logger.error(s.message),s}}),De(this,"emit",async r=>{try{return await this.engine.emit(r)}catch(s){throw this.logger.error(s.message),s}}),De(this,"disconnect",async r=>{try{return await this.engine.disconnect(r)}catch(s){throw this.logger.error(s.message),s}}),De(this,"find",r=>{try{return this.engine.find(r)}catch(s){throw this.logger.error(s.message),s}}),De(this,"getPendingSessionRequests",()=>{try{return this.engine.getPendingSessionRequests()}catch(r){throw this.logger.error(r.message),r}}),De(this,"authenticate",async(r,s)=>{try{return await this.engine.authenticate(r,s)}catch(i){throw this.logger.error(i.message),i}}),De(this,"formatAuthMessage",r=>{try{return this.engine.formatAuthMessage(r)}catch(s){throw this.logger.error(s.message),s}}),De(this,"approveSessionAuthenticate",async r=>{try{return await this.engine.approveSessionAuthenticate(r)}catch(s){throw this.logger.error(s.message),s}}),De(this,"rejectSessionAuthenticate",async r=>{try{return await this.engine.rejectSessionAuthenticate(r)}catch(s){throw this.logger.error(s.message),s}}),this.name=(e==null?void 0:e.name)||Pu.name,this.metadata=fx(e==null?void 0:e.metadata),this.signConfig=e==null?void 0:e.signConfig;const n=Hh({logger:(e==null?void 0:e.logger)||Pu.logger,name:this.name});this.logger=n,this.core=(e==null?void 0:e.core)||new J5(e),this.session=new m6(this.core,this.logger),this.proposal=new g6(this.core,this.logger),this.pendingRequest=new y6(this.core,this.logger),this.engine=new p6(this),this.auth=new C6(this.core,this.logger)}static async init(e){const n=new Yh(e);return await n.initialize(),n}get context(){return yn(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.auth.init(),await this.engine.init(),this.logger.info("SignClient Initialization Success")}catch(e){throw this.logger.info("SignClient Initialization Failure"),this.logger.error(e.message),e}}}const I6=Yh;var N6=Object.defineProperty,T6=Object.defineProperties,O6=Object.getOwnPropertyDescriptors,ym=Object.getOwnPropertySymbols,R6=Object.prototype.hasOwnProperty,x6=Object.prototype.propertyIsEnumerable,wm=(t,e,n)=>e in t?N6(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Em=(t,e)=>{for(var n in e||(e={}))R6.call(e,n)&&wm(t,n,e[n]);if(ym)for(var n of ym(e))x6.call(e,n)&&wm(t,n,e[n]);return t},bm=(t,e)=>T6(t,O6(e));const P6={Accept:"application/json","Content-Type":"application/json"},D6="POST",_m={headers:P6,method:D6},vm=10;let WE=class{constructor(e,n=!1){if(this.url=e,this.disableProviderPing=n,this.events=new sr.EventEmitter,this.isAvailable=!1,this.registering=!1,!Lg(e))throw new Error(`Provided URL is not compatible with HTTP connection: ${e}`);this.url=e,this.disableProviderPing=n}get connected(){return this.isAvailable}get connecting(){return this.registering}on(e,n){this.events.on(e,n)}once(e,n){this.events.once(e,n)}off(e,n){this.events.off(e,n)}removeListener(e,n){this.events.removeListener(e,n)}async open(e=this.url){await this.register(e)}async close(){if(!this.isAvailable)throw new Error("Connection already closed");this.onClose()}async send(e){this.isAvailable||await this.register();try{const n=li(e),r=await(await hf(this.url,bm(Em({},_m),{body:n}))).json();this.onPayload({data:r})}catch(n){this.onError(e.id,n)}}async register(e=this.url){if(!Lg(e))throw new Error(`Provided URL is not compatible with HTTP connection: ${e}`);if(this.registering){const n=this.events.getMaxListeners();return(this.events.listenerCount("register_error")>=n||this.events.listenerCount("open")>=n)&&this.events.setMaxListeners(n+1),new Promise((r,s)=>{this.events.once("register_error",i=>{this.resetMaxListeners(),s(i)}),this.events.once("open",()=>{if(this.resetMaxListeners(),typeof this.isAvailable>"u")return s(new Error("HTTP connection is missing or invalid"));r()})})}this.url=e,this.registering=!0;try{if(!this.disableProviderPing){const n=li({id:1,jsonrpc:"2.0",method:"test",params:[]});await hf(e,bm(Em({},_m),{body:n}))}this.onOpen()}catch(n){const r=this.parseError(n);throw this.events.emit("register_error",r),this.onClose(),r}}onOpen(){this.isAvailable=!0,this.registering=!1,this.events.emit("open")}onClose(){this.isAvailable=!1,this.registering=!1,this.events.emit("close")}onPayload(e){if(typeof e.data>"u")return;const n=typeof e.data=="string"?ci(e.data):e.data;this.events.emit("payload",n)}onError(e,n){const r=this.parseError(n),s=r.message||r.toString(),i=Il(e,s);this.events.emit("payload",i)}parseError(e,n=this.url){return yE(e,n,"HTTP")}resetMaxListeners(){this.events.getMaxListeners()>vm&&this.events.setMaxListeners(vm)}};function Zh(t){return t==null||typeof t!="object"&&typeof t!="function"}function qE(t){return Object.getOwnPropertySymbols(t).filter(e=>Object.prototype.propertyIsEnumerable.call(t,e))}function HE(t){return t==null?t===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(t)}const k6="[object RegExp]",zE="[object String]",VE="[object Number]",KE="[object Boolean]",GE="[object Arguments]",U6="[object Symbol]",$6="[object Date]",B6="[object Map]",F6="[object Set]",L6="[object Array]",M6="[object ArrayBuffer]",j6="[object Object]",W6="[object DataView]",q6="[object Uint8Array]",H6="[object Uint8ClampedArray]",z6="[object Uint16Array]",V6="[object Uint32Array]",K6="[object Int8Array]",G6="[object Int16Array]",Y6="[object Int32Array]",Z6="[object Float32Array]",J6="[object Float64Array]";function Jh(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)}function X6(t,e){return ji(t,void 0,t,new Map,e)}function ji(t,e,n,r=new Map,s=void 0){const i=s==null?void 0:s(t,e,n,r);if(i!=null)return i;if(Zh(t))return t;if(r.has(t))return r.get(t);if(Array.isArray(t)){const o=new Array(t.length);r.set(t,o);for(let a=0;a<t.length;a++)o[a]=ji(t[a],a,n,r,s);return Object.hasOwn(t,"index")&&(o.index=t.index),Object.hasOwn(t,"input")&&(o.input=t.input),o}if(t instanceof Date)return new Date(t.getTime());if(t instanceof RegExp){const o=new RegExp(t.source,t.flags);return o.lastIndex=t.lastIndex,o}if(t instanceof Map){const o=new Map;r.set(t,o);for(const[a,c]of t)o.set(a,ji(c,a,n,r,s));return o}if(t instanceof Set){const o=new Set;r.set(t,o);for(const a of t)o.add(ji(a,void 0,n,r,s));return o}if(typeof Be<"u"&&Be.isBuffer(t))return t.subarray();if(Jh(t)){const o=new(Object.getPrototypeOf(t)).constructor(t.length);r.set(t,o);for(let a=0;a<t.length;a++)o[a]=ji(t[a],a,n,r,s);return o}if(t instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&t instanceof SharedArrayBuffer)return t.slice(0);if(t instanceof DataView){const o=new DataView(t.buffer.slice(0),t.byteOffset,t.byteLength);return r.set(t,o),zs(o,t,n,r,s),o}if(typeof File<"u"&&t instanceof File){const o=new File([t],t.name,{type:t.type});return r.set(t,o),zs(o,t,n,r,s),o}if(t instanceof Blob){const o=new Blob([t],{type:t.type});return r.set(t,o),zs(o,t,n,r,s),o}if(t instanceof Error){const o=new t.constructor;return r.set(t,o),o.message=t.message,o.name=t.name,o.stack=t.stack,o.cause=t.cause,zs(o,t,n,r,s),o}if(typeof t=="object"&&Q6(t)){const o=Object.create(Object.getPrototypeOf(t));return r.set(t,o),zs(o,t,n,r,s),o}return t}function zs(t,e,n=t,r,s){const i=[...Object.keys(e),...qE(e)];for(let o=0;o<i.length;o++){const a=i[o],c=Object.getOwnPropertyDescriptor(t,a);(c==null||c.writable)&&(t[a]=ji(e[a],a,n,r,s))}}function Q6(t){switch(HE(t)){case GE:case L6:case M6:case W6:case KE:case $6:case Z6:case J6:case K6:case G6:case Y6:case B6:case VE:case j6:case k6:case F6:case zE:case U6:case q6:case H6:case z6:case V6:return!0;default:return!1}}function e$(t,e){return X6(t,(n,r,s,i)=>{const o=e==null?void 0:e(n,r,s,i);if(o!=null)return o;if(typeof t=="object")switch(Object.prototype.toString.call(t)){case VE:case zE:case KE:{const a=new t.constructor(t==null?void 0:t.valueOf());return zs(a,t),a}case GE:{const a={};return zs(a,t),a.length=t.length,a[Symbol.iterator]=t[Symbol.iterator],a}default:return}})}function Cm(t){return e$(t)}function Am(t){return t!==null&&typeof t=="object"&&HE(t)==="[object Arguments]"}function Sm(t){return typeof t=="object"&&t!==null}function t$(){}function n$(t){return Jh(t)}function r$(t){var n;if(typeof t!="object"||t==null)return!1;if(Object.getPrototypeOf(t)===null)return!0;if(Object.prototype.toString.call(t)!=="[object Object]"){const r=t[Symbol.toStringTag];return r==null||!((n=Object.getOwnPropertyDescriptor(t,Symbol.toStringTag))!=null&&n.writable)?!1:t.toString()===`[object ${r}]`}let e=t;for(;Object.getPrototypeOf(e)!==null;)e=Object.getPrototypeOf(e);return Object.getPrototypeOf(t)===e}function s$(t){if(Zh(t))return t;if(Array.isArray(t)||Jh(t)||t instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&t instanceof SharedArrayBuffer)return t.slice(0);const e=Object.getPrototypeOf(t),n=e.constructor;if(t instanceof Date||t instanceof Map||t instanceof Set)return new n(t);if(t instanceof RegExp){const r=new n(t);return r.lastIndex=t.lastIndex,r}if(t instanceof DataView)return new n(t.buffer.slice(0));if(t instanceof Error){const r=new n(t.message);return r.stack=t.stack,r.name=t.name,r.cause=t.cause,r}if(typeof File<"u"&&t instanceof File)return new n([t],t.name,{type:t.type,lastModified:t.lastModified});if(typeof t=="object"){const r=Object.create(e);return Object.assign(r,t)}return t}function i$(t,...e){const n=e.slice(0,-1),r=e[e.length-1];let s=t;for(let i=0;i<n.length;i++){const o=n[i];s=Qd(s,o,r,new Map)}return s}function Qd(t,e,n,r){if(Zh(t)&&(t=Object(t)),e==null||typeof e!="object")return t;if(r.has(e))return s$(r.get(e));if(r.set(e,t),Array.isArray(e)){e=e.slice();for(let i=0;i<e.length;i++)e[i]=e[i]??void 0}const s=[...Object.keys(e),...qE(e)];for(let i=0;i<s.length;i++){const o=s[i];let a=e[o],c=t[o];if(Am(a)&&(a={...a}),Am(c)&&(c={...c}),typeof Be<"u"&&Be.isBuffer(a)&&(a=Cm(a)),Array.isArray(a))if(typeof c=="object"&&c!=null){const u=[],d=Reflect.ownKeys(c);for(let h=0;h<d.length;h++){const f=d[h];u[f]=c[f]}c=u}else c=[];const l=n(c,a,o,t,e,r);l!=null?t[o]=l:Array.isArray(a)||Sm(c)&&Sm(a)?t[o]=Qd(c,a,n,r):c==null&&r$(a)?t[o]=Qd({},a,n,r):c==null&&n$(a)?t[o]=Cm(a):(c===void 0||a!==void 0)&&(t[o]=a)}return t}function o$(t,...e){return i$(t,...e,t$)}const Im="error",a$="wss://relay.walletconnect.org",c$="wc",YE="universal_provider",rc=`${c$}@2:${YE}:`,ZE="https://rpc.walletconnect.org/v1/",JE="generic",l$=`${ZE}bundler`,Ki="call_status",u$=86400,Xh={DEFAULT_CHAIN_CHANGED:"default_chain_changed"};var d$=Object.defineProperty,h$=Object.defineProperties,f$=Object.getOwnPropertyDescriptors,Nm=Object.getOwnPropertySymbols,p$=Object.prototype.hasOwnProperty,g$=Object.prototype.propertyIsEnumerable,Tm=(t,e,n)=>e in t?d$(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,sc=(t,e)=>{for(var n in e||(e={}))p$.call(e,n)&&Tm(t,n,e[n]);if(Nm)for(var n of Nm(e))g$.call(e,n)&&Tm(t,n,e[n]);return t},m$=(t,e)=>h$(t,f$(e));function XE(t,e,n){var r;const s=zr(t);return((r=e.rpcMap)==null?void 0:r[s.reference])||`${ZE}?chainId=${s.namespace}:${s.reference}&projectId=${n}`}function y$(t){return t.includes(":")?t.split(":")[1]:t}function QE(t){return t.map(e=>`${e.split(":")[0]}:${e.split(":")[1]}`)}function w$(t,e){const n=Object.keys(e.namespaces).filter(s=>s.includes(t));if(!n.length)return[];const r=[];return n.forEach(s=>{const i=e.namespaces[s].accounts;r.push(...i)}),r}function Om(t){return Object.fromEntries(Object.entries(t).filter(([e,n])=>{var r,s;return((r=n==null?void 0:n.chains)==null?void 0:r.length)&&((s=n==null?void 0:n.chains)==null?void 0:s.length)>0}))}function ic(t={},e={}){const n=Om(Rm(t)),r=Om(Rm(e));return o$(n,r)}function Rm(t){var e,n,r,s,i;const o={};if(!br(t))return o;for(const[a,c]of Object.entries(t)){const l=Sl(a)?[a]:c.chains,u=c.methods||[],d=c.events||[],h=c.rpcMap||{},f=Mi(a);o[f]=m$(sc(sc({},o[f]),c),{chains:Er(l,(e=o[f])==null?void 0:e.chains),methods:Er(u,(n=o[f])==null?void 0:n.methods),events:Er(d,(r=o[f])==null?void 0:r.events)}),(br(h)||br(((s=o[f])==null?void 0:s.rpcMap)||{}))&&(o[f].rpcMap=sc(sc({},h),(i=o[f])==null?void 0:i.rpcMap))}return o}function xm(t){return t.includes(":")?t.split(":")[2]:t}function Pm(t){const e={};for(const[n,r]of Object.entries(t)){const s=r.methods||[],i=r.events||[],o=r.accounts||[],a=Sl(n)?[n]:r.chains?r.chains:QE(r.accounts);e[n]={chains:a,methods:s,events:i,accounts:o}}return e}function Uu(t){return typeof t=="number"?t:t.includes("0x")?parseInt(t,16):(t=t.includes(":")?t.split(":")[1]:t,isNaN(Number(t))?t:Number(t))}function E$(t){try{const e=JSON.parse(t);return typeof e=="object"&&e!==null&&!Array.isArray(e)}catch{return!1}}const eb={},Gi=t=>eb[t],$u=(t,e)=>{eb[t]=e};var b$=Object.defineProperty,Dm=Object.getOwnPropertySymbols,_$=Object.prototype.hasOwnProperty,v$=Object.prototype.propertyIsEnumerable,km=(t,e,n)=>e in t?b$(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Um=(t,e)=>{for(var n in e||(e={}))_$.call(e,n)&&km(t,n,e[n]);if(Dm)for(var n of Dm(e))v$.call(e,n)&&km(t,n,e[n]);return t};const $m="eip155",C$=["atomic","flow-control","paymasterService","sessionKeys","auxiliaryFunds"],A$=t=>t&&t.startsWith("0x")?BigInt(t).toString(10):t,Bu=t=>t&&t.startsWith("0x")?t:`0x${BigInt(t).toString(16)}`,Bm=t=>Object.keys(t).filter(e=>C$.includes(e)).reduce((e,n)=>(e[n]=S$(t[n]),e),{}),S$=t=>typeof t=="string"&&E$(t)?JSON.parse(t):t,I$=(t,e,n)=>{const{sessionProperties:r={},scopedProperties:s={}}=t,i={};if(!br(s)&&!br(r))return;const o=Bm(r);for(const a of n){const c=A$(a);if(!c)continue;i[Bu(c)]=o;const l=s==null?void 0:s[`${$m}:${c}`];if(l){const u=l==null?void 0:l[`${$m}:${c}:${e}`];i[Bu(c)]=Um(Um({},i[Bu(c)]),Bm(u||l))}}for(const[a,c]of Object.entries(i))Object.keys(c).length===0&&delete i[a];return Object.keys(i).length>0?i:void 0};var N$=Object.defineProperty,T$=(t,e,n)=>e in t?N$(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,O$=(t,e,n)=>T$(t,typeof e!="symbol"?e+"":e,n);let Fu;class Qh{constructor(e){O$(this,"storage"),this.storage=e}async getItem(e){return await this.storage.getItem(e)}async setItem(e,n){return await this.storage.setItem(e,n)}async removeItem(e){return await this.storage.removeItem(e)}static getStorage(e){return Fu||(Fu=new Qh(e)),Fu}}var R$=Object.defineProperty,x$=Object.defineProperties,P$=Object.getOwnPropertyDescriptors,Fm=Object.getOwnPropertySymbols,D$=Object.prototype.hasOwnProperty,k$=Object.prototype.propertyIsEnumerable,Lm=(t,e,n)=>e in t?R$(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,U$=(t,e)=>{for(var n in e||(e={}))D$.call(e,n)&&Lm(t,n,e[n]);if(Fm)for(var n of Fm(e))k$.call(e,n)&&Lm(t,n,e[n]);return t},$$=(t,e)=>x$(t,P$(e));async function B$(t,e){const n=zr(t.result.capabilities.caip345.caip2),r=t.result.capabilities.caip345.transactionHashes,s=await Promise.allSettled(r.map(d=>F$(n.reference,d,e))),i=s.filter(d=>d.status==="fulfilled").map(d=>d.value).filter(d=>d);s.filter(d=>d.status==="rejected").forEach(d=>console.warn("Failed to fetch transaction receipt:",d.reason));const o=!i.length||i.some(d=>!d),a=i.every(d=>(d==null?void 0:d.status)==="0x1"),c=i.every(d=>(d==null?void 0:d.status)==="0x0"),l=i.some(d=>(d==null?void 0:d.status)==="0x0");let u;return o?u=100:a?u=200:c?u=500:l&&(u=600),{id:t.result.id,version:t.request.version,atomic:t.request.atomicRequired,chainId:t.request.chainId,capabilities:t.result.capabilities,receipts:i,status:u}}async function F$(t,e,n){return await n(parseInt(t)).request(Jn("eth_getTransactionReceipt",[e]))}async function L$({sendCalls:t,storage:e}){const n=await e.getItem(Ki);await e.setItem(Ki,$$(U$({},n),{[t.result.id]:{request:t.request,result:t.result,expiry:lt(u$)}}))}async function M$({resultId:t,storage:e}){const n=await e.getItem(Ki);if(n){delete n[t],await e.setItem(Ki,n);for(const r in n)fr(n[r].expiry)&&delete n[r];await e.setItem(Ki,n)}}async function j$({resultId:t,storage:e}){const n=await e.getItem(Ki),r=n==null?void 0:n[t];if(r&&!fr(r.expiry))return r;await M$({resultId:t,storage:e})}var W$=Object.defineProperty,q$=Object.defineProperties,H$=Object.getOwnPropertyDescriptors,Mm=Object.getOwnPropertySymbols,z$=Object.prototype.hasOwnProperty,V$=Object.prototype.propertyIsEnumerable,eh=(t,e,n)=>e in t?W$(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Lu=(t,e)=>{for(var n in e||(e={}))z$.call(e,n)&&eh(t,n,e[n]);if(Mm)for(var n of Mm(e))V$.call(e,n)&&eh(t,n,e[n]);return t},Mu=(t,e)=>q$(t,H$(e)),Fs=(t,e,n)=>eh(t,typeof e!="symbol"?e+"":e,n);class K${constructor(e){Fs(this,"name","eip155"),Fs(this,"client"),Fs(this,"chainId"),Fs(this,"namespace"),Fs(this,"httpProviders"),Fs(this,"events"),Fs(this,"storage"),this.namespace=e.namespace,this.events=Gi("events"),this.client=Gi("client"),this.httpProviders=this.createHttpProviders(),this.chainId=parseInt(this.getDefaultChain()),this.storage=Qh.getStorage(this.client.core.storage)}async request(e){switch(e.request.method){case"eth_requestAccounts":return this.getAccounts();case"eth_accounts":return this.getAccounts();case"wallet_switchEthereumChain":return await this.handleSwitchChain(e);case"eth_chainId":return parseInt(this.getDefaultChain());case"wallet_getCapabilities":return await this.getCapabilities(e);case"wallet_getCallsStatus":return await this.getCallStatus(e);case"wallet_sendCalls":return await this.sendCalls(e)}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,n){this.httpProviders[e]||this.setHttpProvider(parseInt(e),n);const r=this.chainId;this.chainId=parseInt(e),this.events.emit(Xh.DEFAULT_CHAIN_CHANGED,{currentCaipChainId:`${this.name}:${e}`,previousCaipChainId:`${this.name}:${r}`})}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,n){const r=n||XE(`${this.name}:${e}`,this.namespace,this.client.core.projectId);if(!r)throw new Error(`No RPC url provided for chainId: ${e}`);return new Kh(new WE(r,Gi("disableProviderPing")))}setHttpProvider(e,n){const r=this.createHttpProvider(e,n);r&&(this.httpProviders[e]=r)}createHttpProviders(){const e={};return this.namespace.chains.forEach(n=>{var r;const s=parseInt(y$(n));e[s]=this.createHttpProvider(s,(r=this.namespace.rpcMap)==null?void 0:r[n])}),e}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter(n=>n.split(":")[1]===this.chainId.toString()).map(n=>n.split(":")[2]))]:[]}getHttpProvider(e){const n=e||this.chainId;return this.httpProviders[n]||(this.httpProviders=Mu(Lu({},this.httpProviders),{[n]:this.createHttpProvider(n)}),this.httpProviders[n])}async handleSwitchChain(e){var n,r;let s=e.request.params?(n=e.request.params[0])==null?void 0:n.chainId:"0x0";s=s.startsWith("0x")?s:`0x${s}`;const i=parseInt(s,16);if(this.isChainApproved(i))this.setDefaultChain(`${i}`);else if(this.namespace.methods.includes("wallet_switchEthereumChain"))await this.client.request({topic:e.topic,request:{method:e.request.method,params:[{chainId:s}]},chainId:(r=this.namespace.chains)==null?void 0:r[0]}),this.setDefaultChain(`${i}`);else throw new Error(`Failed to switch to chain 'eip155:${i}'. The chain is not approved or the wallet does not support 'wallet_switchEthereumChain' method.`);return null}isChainApproved(e){return this.namespace.chains.includes(`${this.name}:${e}`)}async getCapabilities(e){var n,r,s,i,o;const a=(r=(n=e.request)==null?void 0:n.params)==null?void 0:r[0],c=((i=(s=e.request)==null?void 0:s.params)==null?void 0:i[1])||[];if(!a)throw new Error("Missing address parameter in `wallet_getCapabilities` request");const l=this.client.session.get(e.topic),u=((o=l==null?void 0:l.sessionProperties)==null?void 0:o.capabilities)||{},d=`${a}${c.join(",")}`,h=u==null?void 0:u[d];if(h)return h;let f;try{f=I$(l,a,c)}catch(g){console.warn("Failed to extract capabilities from session",g)}if(f)return f;const p=await this.client.request(e);try{await this.client.session.update(e.topic,{sessionProperties:Mu(Lu({},l.sessionProperties||{}),{capabilities:Mu(Lu({},u||{}),{[d]:p})})})}catch(g){console.warn("Failed to update session with capabilities",g)}return p}async getCallStatus(e){var n,r,s;const i=this.client.session.get(e.topic),o=(n=i.sessionProperties)==null?void 0:n.bundler_name;if(o){const l=this.getBundlerUrl(e.chainId,o);try{return await this.getUserOperationReceipt(l,e)}catch(u){console.warn("Failed to fetch call status from bundler",u,l)}}const a=(r=i.sessionProperties)==null?void 0:r.bundler_url;if(a)try{return await this.getUserOperationReceipt(a,e)}catch(l){console.warn("Failed to fetch call status from custom bundler",l,a)}const c=await j$({resultId:(s=e.request.params)==null?void 0:s[0],storage:this.storage});if(c)try{return await B$(c,this.getHttpProvider.bind(this))}catch(l){console.warn("Failed to fetch call status from stored send calls",l,c)}if(this.namespace.methods.includes(e.request.method))return await this.client.request(e);throw new Error("Fetching call status not approved by the wallet.")}async getUserOperationReceipt(e,n){var r;const s=new URL(e),i=await fetch(s,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(Jn("eth_getUserOperationReceipt",[(r=n.request.params)==null?void 0:r[0]]))});if(!i.ok)throw new Error(`Failed to fetch user operation receipt - ${i.status}`);return await i.json()}getBundlerUrl(e,n){return`${l$}?projectId=${this.client.core.projectId}&chainId=${e}&bundler=${n}`}async sendCalls(e){var n,r,s;const i=await this.client.request(e),o=(n=e.request.params)==null?void 0:n[0],a=i==null?void 0:i.id,c=(i==null?void 0:i.capabilities)||{},l=(r=c==null?void 0:c.caip345)==null?void 0:r.caip2,u=(s=c==null?void 0:c.caip345)==null?void 0:s.transactionHashes;return!a||!l||!(u!=null&&u.length)||await L$({sendCalls:{request:o,result:i},storage:this.storage}),i}}var G$=Object.defineProperty,Y$=(t,e,n)=>e in t?G$(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,ki=(t,e,n)=>Y$(t,typeof e!="symbol"?e+"":e,n);class Z${constructor(e){ki(this,"name",JE),ki(this,"client"),ki(this,"httpProviders"),ki(this,"events"),ki(this,"namespace"),ki(this,"chainId"),this.namespace=e.namespace,this.events=Gi("events"),this.client=Gi("client"),this.chainId=this.getDefaultChain(),this.name=this.getNamespaceName(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace.chains=[...new Set((this.namespace.chains||[]).concat(e.chains||[]))],this.namespace.accounts=[...new Set((this.namespace.accounts||[]).concat(e.accounts||[]))],this.namespace.methods=[...new Set((this.namespace.methods||[]).concat(e.methods||[]))],this.namespace.events=[...new Set((this.namespace.events||[]).concat(e.events||[]))],this.httpProviders=this.createHttpProviders()}requestAccounts(){return this.getAccounts()}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider(e.chainId).request(e.request)}setDefaultChain(e,n){this.httpProviders[e]||this.setHttpProvider(e,n);const r=this.chainId;this.chainId=e,this.events.emit(Xh.DEFAULT_CHAIN_CHANGED,{currentCaipChainId:`${this.name}:${e}`,previousCaipChainId:`${this.name}:${r}`})}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]}getNamespaceName(){const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return zr(e).namespace}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter(n=>n.split(":")[1]===this.chainId.toString()).map(n=>n.split(":")[2]))]:[]}createHttpProviders(){var e,n;const r={};return(n=(e=this.namespace)==null?void 0:e.accounts)==null||n.forEach(s=>{var i,o;const a=zr(s),c=(o=(i=this.namespace)==null?void 0:i.rpcMap)==null?void 0:o[`${a.namespace}:${a.reference}`];r[a.reference]=this.createHttpProvider(s,c)}),r}getHttpProvider(e){const n=zr(e).reference,r=this.httpProviders[n];if(typeof r>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return r}setHttpProvider(e,n){const r=this.createHttpProvider(e,n);r&&(this.httpProviders[e]=r)}createHttpProvider(e,n){const r=n||XE(e,this.namespace,this.client.core.projectId);if(!r)throw new Error(`No RPC url provided for chainId: ${e}`);return new Kh(new WE(r,Gi("disableProviderPing")))}}var J$=Object.defineProperty,X$=Object.defineProperties,Q$=Object.getOwnPropertyDescriptors,jm=Object.getOwnPropertySymbols,eB=Object.prototype.hasOwnProperty,tB=Object.prototype.propertyIsEnumerable,th=(t,e,n)=>e in t?J$(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Ao=(t,e)=>{for(var n in e||(e={}))eB.call(e,n)&&th(t,n,e[n]);if(jm)for(var n of jm(e))tB.call(e,n)&&th(t,n,e[n]);return t},oc=(t,e)=>X$(t,Q$(e)),_n=(t,e,n)=>th(t,typeof e!="symbol"?e+"":e,n);let nB=class tb{constructor(e){_n(this,"client"),_n(this,"namespaces"),_n(this,"optionalNamespaces"),_n(this,"sessionProperties"),_n(this,"scopedProperties"),_n(this,"events",new oh),_n(this,"rpcProviders",{}),_n(this,"session"),_n(this,"providerOpts"),_n(this,"logger"),_n(this,"uri"),_n(this,"disableProviderPing",!1),_n(this,"connectParams");var n,r;this.providerOpts=e,this.logger=Hh({logger:(n=e.logger)!=null?n:Im,name:(r=this.providerOpts.name)!=null?r:YE}),this.disableProviderPing=(e==null?void 0:e.disableProviderPing)||!1}static async init(e){const n=new tb(e);return await n.initialize(),n}async request(e,n,r){const[s,i]=this.validateChain(n);if(!this.session)throw new Error("Please call connect() before request()");return await this.getProvider(s).request({request:Ao({},e),chainId:`${s}:${i}`,topic:this.session.topic,expiry:r})}sendAsync(e,n,r,s){const i=new Date().getTime();this.request(e,r,s).then(o=>n(null,pa(i,o))).catch(o=>n(o,void 0))}async enable(){if(!this.client)throw new Error("Sign Client not initialized");return this.session||await this.connect({namespaces:this.namespaces,optionalNamespaces:this.optionalNamespaces,sessionProperties:this.sessionProperties,scopedProperties:this.scopedProperties}),await this.requestAccounts()}async disconnect(){var e;if(!this.session)throw new Error("Please call connect() before enable()");await this.client.disconnect({topic:(e=this.session)==null?void 0:e.topic,reason:et("USER_DISCONNECTED")}),await this.cleanup()}async connect(e){if(!this.client)throw new Error("Sign Client not initialized");if(this.connectParams=e,this.setNamespaces(e),this.cleanupPendingPairings(),!e.skipPairing)return await this.pair(e.pairingTopic)}async authenticate(e,n){if(!this.client)throw new Error("Sign Client not initialized");this.setNamespaces(e),await this.cleanupPendingPairings();const{uri:r,response:s}=await this.client.authenticate(e,n);r&&(this.uri=r,this.events.emit("display_uri",r));const i=await s();if(this.session=i.session,this.session){const o=Pm(this.session.namespaces);this.namespaces=ic(this.namespaces,o),await this.persist("namespaces",this.namespaces),this.onConnect()}return i}on(e,n){this.events.on(e,n)}once(e,n){this.events.once(e,n)}removeListener(e,n){this.events.removeListener(e,n)}off(e,n){this.events.off(e,n)}get isWalletConnect(){return!0}async pair(e){var n,r;const{uri:s,approval:i}=await this.client.connect({pairingTopic:e,requiredNamespaces:this.namespaces,optionalNamespaces:this.optionalNamespaces,sessionProperties:this.sessionProperties,scopedProperties:this.scopedProperties,authentication:(n=this.connectParams)==null?void 0:n.authentication,walletPay:(r=this.connectParams)==null?void 0:r.walletPay});s&&(this.uri=s,this.events.emit("display_uri",s));const o=await i();this.session=o;const a=Pm(o.namespaces);return this.namespaces=ic(this.namespaces,a),await this.persist("namespaces",this.namespaces),await this.persist("optionalNamespaces",this.optionalNamespaces),this.onConnect(),this.session}setDefaultChain(e,n){try{if(!this.session)return;const[r,s]=this.validateChain(e);this.getProvider(r).setDefaultChain(s,n)}catch(r){if(!/Please call connect/.test(r.message))throw r}}async cleanupPendingPairings(e={}){try{this.logger.info("Cleaning up inactive pairings...");const n=this.client.pairing.getAll();if(!Kr(n))return;for(const r of n)e.deletePairings?this.client.core.expirer.set(r.topic,0):await this.client.core.relayer.subscriber.unsubscribe(r.topic);this.logger.info(`Inactive pairings cleared: ${n.length}`)}catch(n){this.logger.warn(n,"Failed to cleanup pending pairings")}}abortPairingAttempt(){this.logger.warn("abortPairingAttempt is deprecated. This is now a no-op.")}async checkStorage(){this.namespaces=await this.getFromStore("namespaces")||{},this.optionalNamespaces=await this.getFromStore("optionalNamespaces")||{},this.session&&this.createProviders()}async initialize(){this.logger.trace("Initialized"),await this.createClient(),await this.checkStorage(),this.registerEventListeners()}async createClient(){var e,n;if(this.client=this.providerOpts.client||await I6.init({core:this.providerOpts.core,logger:this.providerOpts.logger||Im,relayUrl:this.providerOpts.relayUrl||a$,projectId:this.providerOpts.projectId,metadata:this.providerOpts.metadata,storageOptions:this.providerOpts.storageOptions,storage:this.providerOpts.storage,name:this.providerOpts.name,customStoragePrefix:this.providerOpts.customStoragePrefix,telemetryEnabled:this.providerOpts.telemetryEnabled}),this.providerOpts.session)try{this.session=this.client.session.get(this.providerOpts.session.topic)}catch(r){throw this.logger.error(r,"Failed to get session"),new Error(`The provided session: ${(n=(e=this.providerOpts)==null?void 0:e.session)==null?void 0:n.topic} doesn't exist in the Sign client`)}else{const r=this.client.session.getAll();this.session=r[0]}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(n=>Mi(n)))];$u("client",this.client),$u("events",this.events),$u("disableProviderPing",this.disableProviderPing),e.forEach(n=>{if(!this.session)return;const r=w$(n,this.session);if((r==null?void 0:r.length)===0)return;const s=QE(r),i=ic(this.namespaces,this.optionalNamespaces),o=oc(Ao({},i[n]),{accounts:r,chains:s});switch(n){case"eip155":this.rpcProviders[n]=new K$({namespace:o});break;default:this.rpcProviders[n]=new Z$({namespace:o})}})}registerEventListeners(){if(typeof this.client>"u")throw new Error("Sign Client is not initialized");this.client.on("session_ping",e=>{var n;const{topic:r}=e;r===((n=this.session)==null?void 0:n.topic)&&this.events.emit("session_ping",e)}),this.client.on("session_event",e=>{var n;const{params:r,topic:s}=e;if(s!==((n=this.session)==null?void 0:n.topic))return;const{event:i}=r;if(i.name==="accountsChanged"){const o=i.data;o&&Kr(o)&&this.events.emit("accountsChanged",o.map(xm))}else if(i.name==="chainChanged"){const o=r.chainId,a=r.event.data,c=Mi(o),l=Uu(o)!==Uu(a)?`${c}:${Uu(a)}`:o;this.onChainChanged({currentCaipChainId:l})}else this.events.emit(i.name,i.data);this.events.emit("session_event",e)}),this.client.on("session_update",({topic:e,params:n})=>{var r,s;if(e!==((r=this.session)==null?void 0:r.topic))return;const{namespaces:i}=n,o=(s=this.client)==null?void 0:s.session.get(e);this.session=oc(Ao({},o),{namespaces:i}),this.onSessionUpdate(),this.events.emit("session_update",{topic:e,params:n})}),this.client.on("session_delete",async e=>{var n;e.topic===((n=this.session)==null?void 0:n.topic)&&(await this.cleanup(),this.events.emit("session_delete",e),this.events.emit("disconnect",oc(Ao({},et("USER_DISCONNECTED")),{data:e.topic})))}),this.on(Xh.DEFAULT_CHAIN_CHANGED,e=>{this.onChainChanged(oc(Ao({},e),{internal:!0}))})}getProvider(e){return this.rpcProviders[e]||this.rpcProviders[JE]}onSessionUpdate(){Object.keys(this.rpcProviders).forEach(e=>{var n;this.getProvider(e).updateNamespace((n=this.session)==null?void 0:n.namespaces[e])})}setNamespaces(e){const{namespaces:n={},optionalNamespaces:r={},sessionProperties:s,scopedProperties:i}=e;this.optionalNamespaces=ic(n,r),this.sessionProperties=s,this.scopedProperties=i}validateChain(e){const[n,r]=(e==null?void 0:e.split(":"))||["",""];if(!this.namespaces||!Object.keys(this.namespaces).length)return[n,r];if(n&&!Object.keys(this.namespaces||{}).map(o=>Mi(o)).includes(n))throw new Error(`Namespace '${n}' is not configured. Please call connect() first with namespace config.`);if(n&&r)return[n,r];const s=Mi(Object.keys(this.namespaces)[0]),i=this.rpcProviders[s].getDefaultChain();return[s,i]}async requestAccounts(){const[e]=this.validateChain();return await this.getProvider(e).requestAccounts()}async onChainChanged({currentCaipChainId:e,previousCaipChainId:n,internal:r=!1}){if(!this.namespaces)return;const[s,i]=this.validateChain(e);i&&(this.updateNamespaceChain(s,i),r?(this.events.emit("chainChanged",i),this.emitAccountsChangedOnChainChange({namespace:s,currentCaipChainId:e,previousCaipChainId:n})):this.getProvider(s).setDefaultChain(i),await this.persist("namespaces",this.namespaces))}emitAccountsChangedOnChainChange({namespace:e,currentCaipChainId:n,previousCaipChainId:r}){var s,i;try{if(r===n)return;const o=(i=(s=this.session)==null?void 0:s.namespaces[e])==null?void 0:i.accounts;if(!o)return;const a=o.filter(c=>c.includes(`${n}:`)).map(xm);if(!Kr(a))return;this.events.emit("accountsChanged",a)}catch(o){this.logger.warn(o,"Failed to emit accountsChanged on chain change")}}updateNamespaceChain(e,n){if(!this.namespaces)return;const r=this.namespaces[e]?e:`${e}:${n}`,s={chains:[],methods:[],events:[],defaultChain:n};this.namespaces[r]?this.namespaces[r]&&(this.namespaces[r].defaultChain=n):this.namespaces[r]=s}onConnect(){this.createProviders(),this.events.emit("connect",{session:this.session})}async cleanup(){this.connectParams=void 0,this.namespaces=void 0,this.optionalNamespaces=void 0,this.sessionProperties=void 0,await this.deleteFromStore("namespaces"),await this.deleteFromStore("optionalNamespaces"),await this.deleteFromStore("sessionProperties"),this.session=void 0,this.cleanupPendingPairings({deletePairings:!0}),await this.cleanupStorage()}async persist(e,n){var r;const s=((r=this.session)==null?void 0:r.topic)||"";await this.client.core.storage.setItem(`${rc}/${e}${s}`,n)}async getFromStore(e){var n;const r=((n=this.session)==null?void 0:n.topic)||"";return await this.client.core.storage.getItem(`${rc}/${e}${r}`)}async deleteFromStore(e){var n;const r=((n=this.session)==null?void 0:n.topic)||"";await this.client.core.storage.removeItem(`${rc}/${e}${r}`)}async cleanupStorage(){var e;try{if(((e=this.client)==null?void 0:e.session.length)>0)return;const n=await this.client.core.storage.getKeys();for(const r of n)r.startsWith(rc)&&await this.client.core.storage.removeItem(r)}catch(n){this.logger.warn(n,"Failed to cleanup storage")}}};const Wm=2147483648,rB={convertEVMChainIdToCoinType(t){if(t>=Wm)throw new Error("Invalid chainId");return(Wm|t)>>>0}},Dn=Xe({suggestions:[],loading:!1}),sB={state:Dn,subscribe(t){return xt(Dn,()=>t(Dn))},subscribeKey(t,e){return Pt(Dn,t,e)},async resolveName(t){var e,n;try{return await me.lookupEnsName(t)}catch(r){const s=r;throw new Error(((n=(e=s==null?void 0:s.reasons)==null?void 0:e[0])==null?void 0:n.description)||"Error resolving name")}},async isNameRegistered(t){try{return await me.lookupEnsName(t),!0}catch{return!1}},async getSuggestions(t){try{Dn.loading=!0,Dn.suggestions=[];const e=await me.getEnsNameSuggestions(t);return Dn.suggestions=e.suggestions||[],Dn.suggestions}catch(e){const n=Mo.parseEnsApiError(e,"Error fetching name suggestions");throw new Error(n)}finally{Dn.loading=!1}},async getNamesForAddress(t){try{if(!w.state.activeCaipNetwork)return[];const n=j.getEnsFromCacheForAddress(t);if(n)return n;const r=await me.reverseLookupEnsName({address:t});return j.updateEnsCache({address:t,ens:r,timestamp:Date.now()}),r}catch(e){const n=Mo.parseEnsApiError(e,"Error fetching names for address");throw new Error(n)}},async registerName(t){var s;const e=w.state.activeCaipNetwork,n=(s=w.getAccountData(e==null?void 0:e.chainNamespace))==null?void 0:s.address,r=z.getAuthConnector();if(!e)throw new Error("Network not found");if(!n||!r)throw new Error("Address or auth connector not found");Dn.loading=!0;try{const i=JSON.stringify({name:t,attributes:{},timestamp:Math.floor(Date.now()/1e3)});pe.pushTransactionStack({onCancel(){pe.replace("RegisterAccountName")}});const o=await V.signMessage(i);Dn.loading=!1;const a=e.id;if(!a)throw new Error("Network not found");const c=rB.convertEVMChainIdToCoinType(Number(a));await me.registerEnsName({coinType:c,address:n,signature:o,message:i}),w.setAccountProp("profileName",t,e.chainNamespace),j.updateEnsCache({address:n,ens:[{name:t,registered_at:new Date().toISOString(),updated_at:void 0,addresses:{},attributes:[]}],timestamp:Date.now()}),pe.replace("RegisterAccountNameSuccess")}catch(i){const o=Mo.parseEnsApiError(i,`Error registering name ${t}`);throw pe.replace("RegisterAccountName"),new Error(o)}finally{Dn.loading=!1}},validateName(t){return/^[a-zA-Z0-9-]{4,}$/u.test(t)},parseEnsApiError(t,e){var r,s;const n=t;return((s=(r=n==null?void 0:n.reasons)==null?void 0:r[0])==null?void 0:s.description)||e}},Mo=qn(sB);function nh(t){try{return new URL(t)}catch{return null}}function iB(t){const e=t.split("/"),n=e.length>0&&e[0]!==void 0?e[0]:"",r=n.lastIndexOf(":");return r===-1?{host:n}:{host:n.slice(0,r),port:n.slice(r+1)}}function oB(t){const e=t.indexOf("://");if(e===-1)return null;const n=t.slice(0,e),r=e+3;let s=t.indexOf("/",r);s===-1&&(s=t.length);const i=t.slice(r,s),o=i.lastIndexOf(":");return o===-1?{scheme:n,host:i}:{scheme:n,host:i.slice(0,o),port:i.slice(o+1)}}function aB(t,e){if(e.includes("://")){const o=nh(e);return o?o.origin===t:!1}const{host:n,port:r}=iB(e),s=t.indexOf("://");if(s!==-1){const o=s+3;let a=t.indexOf("/",o);a===-1&&(a=t.length);const c=t.slice(o,a);if(r!==void 0)return`${n}:${r}`===c;const l=c.split(":")[0];return n===l}const i=nh(t);return i?r!==void 0?n===i.hostname&&r===(i.port||void 0):n===i.hostname:!1}function cB(t,e,n){let r=n,s;const i=r.indexOf("://");i!==-1&&(s=r.slice(0,i),r=r.slice(i+3));const o=r.indexOf("/");o!==-1&&(r=r.slice(0,o));let a=r,c;const l=a.lastIndexOf(":");l!==-1&&(c=a.slice(l+1),a=a.slice(0,l));const u=a.split(".");for(const g of u)if(g.includes("*")&&g!=="*")return!1;const d=t.protocol.replace(/:$/u,"");if(s&&s!==d||c!==void 0&&c!=="*"&&c!==t.port)return!1;const h=oB(e),p=(h?h.host:t.hostname).split(".");if(u.length!==p.length)return!1;for(let g=u.length-1;g>=0;g-=1){const y=u[g],v=p[g];if(y!=="*"&&y!==v)return!1}return!0}const lB={ton:["ton_sendMessage","ton_signData"],solana:["solana_signMessage","solana_signTransaction","solana_requestAccounts","solana_getAccounts","solana_signAllTransactions","solana_signAndSendTransaction"],eip155:["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_getCallsStatus","wallet_showCallsStatus","wallet_sendCalls","wallet_getCapabilities","wallet_grantPermissions","wallet_revokePermissions","wallet_getAssets"],bip122:["sendTransfer","signMessage","signPsbt","getAccountAddresses"]},vs={RPC_ERROR_CODE:{USER_REJECTED:5e3,USER_REJECTED_METHODS:5002},getMethodsByChainNamespace(t){return lB[t]||[]},createDefaultNamespace(t){return{methods:this.getMethodsByChainNamespace(t),events:["accountsChanged","chainChanged"],chains:[],rpcMap:{}}},applyNamespaceOverrides(t,e){if(!e)return{...t};const n={...t},r=new Set;if(e.methods&&Object.keys(e.methods).forEach(s=>r.add(s)),e.chains&&Object.keys(e.chains).forEach(s=>r.add(s)),e.events&&Object.keys(e.events).forEach(s=>r.add(s)),e.rpcMap&&Object.keys(e.rpcMap).forEach(s=>{const[i]=s.split(":");i&&r.add(i)}),r.forEach(s=>{n[s]||(n[s]=this.createDefaultNamespace(s))}),e.methods&&Object.entries(e.methods).forEach(([s,i])=>{n[s]&&(n[s].methods=i)}),e.chains&&Object.entries(e.chains).forEach(([s,i])=>{n[s]&&(n[s].chains=i)}),e.events&&Object.entries(e.events).forEach(([s,i])=>{n[s]&&(n[s].events=i)}),e.rpcMap){const s=new Set;Object.entries(e.rpcMap).forEach(([i,o])=>{const[a,c]=i.split(":");!a||!c||!n[a]||(n[a].rpcMap||(n[a].rpcMap={}),s.has(a)||(n[a].rpcMap={},s.add(a)),n[a].rpcMap[c]=o)})}return n},createNamespaces(t,e){const n=t.reduce((r,s)=>{const{id:i,chainNamespace:o,rpcUrls:a}=s,c=a.default.http[0];r[o]||(r[o]=this.createDefaultNamespace(o));const l=`${o}:${i}`,u=r[o];switch(u.chains.push(l),l){case"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp":u.chains.push("solana:4sGjMW1sUnHzSxGspuhpqLDx6wiyjNtZ");break;case"solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1":u.chains.push("solana:8E9rvCKLFQia2Y35HXjjpWzj8weVo44K");break}return u!=null&&u.rpcMap&&c&&(u.rpcMap[i]=c),r},{});return this.applyNamespaceOverrides(n,e)},resolveReownName:async t=>{var r;const e=await Mo.resolveName(t);return((r=(e!=null&&e.addresses?Object.values(e.addresses):[])[0])==null?void 0:r.address)||!1},getChainsFromNamespaces(t={}){return Object.values(t).flatMap(e=>{const n=e.chains||[],r=e.accounts.map(s=>{const[i,o]=s.split(":");return`${i}:${o}`});return Array.from(new Set([...n,...r]))})},isSessionEventData(t){return typeof t=="object"&&t!==null&&"id"in t&&"topic"in t&&"params"in t&&typeof t.params=="object"&&t.params!==null&&"chainId"in t.params&&"event"in t.params&&typeof t.params.event=="object"&&t.params.event!==null},isUserRejectedRequestError(t){try{if(typeof t=="object"&&t!==null){const e=t,n=typeof e.code=="number",r=n&&e.code===vs.RPC_ERROR_CODE.USER_REJECTED_METHODS,s=n&&e.code===vs.RPC_ERROR_CODE.USER_REJECTED;return r||s}return!1}catch{return!1}},isOriginAllowed(t,e,n){const r=[...e,...n];if(e.length===0)return!0;const s=nh(t);if(!s)return r.some(i=>!i.includes("*")&&i===t);if(s.hostname==="localhost"||s.hostname==="127.0.0.1")return!0;for(const i of r)if(i.includes("*")){if(cB(s,t,i))return!0}else if(aB(t,i))return!0;return!1},listenWcProvider({universalProvider:t,namespace:e,onConnect:n,onDisconnect:r,onAccountsChanged:s,onChainChanged:i,onDisplayUri:o}){n&&t.on("connect",()=>{const a=vs.getWalletConnectAccounts(t,e);n(a)}),r&&t.on("disconnect",()=>{r()}),s&&t.on("accountsChanged",a=>{var c,l,u,d,h;try{const f=((u=(l=(c=t.session)==null?void 0:c.namespaces)==null?void 0:l[e])==null?void 0:u.accounts)||[],p=(h=(d=t.rpcProviders)==null?void 0:d[e])==null?void 0:h.getDefaultChain(),g=a.map(y=>{const v=f.find(C=>C.includes(`${e}:${p}:${y}`));if(!v)return;const{chainId:A,chainNamespace:E}=wt.parseCaipAddress(v);return{address:y,chainId:A,chainNamespace:E}}).filter(y=>y!==void 0);g.length>0&&s(g)}catch(f){console.warn("Failed to parse accounts for namespace on accountsChanged event",e,a,f)}}),i&&t.on("chainChanged",a=>{i(a)}),o&&t.on("display_uri",a=>{o(a)})},getWalletConnectAccounts(t,e){var s,i,o,a;const n=new Set,r=(a=(o=(i=(s=t==null?void 0:t.session)==null?void 0:s.namespaces)==null?void 0:i[e])==null?void 0:o.accounts)==null?void 0:a.map(c=>wt.parseCaipAddress(c)).filter(({address:c})=>n.has(c.toLowerCase())?!1:(n.add(c.toLowerCase()),!0));return r&&r.length>0?r:[]}},uB=[T.CONNECTOR_ID.AUTH,T.CONNECTOR_ID.WALLET_CONNECT];class dB{constructor(e){this.availableConnectors=[],this.availableConnections=[],this.providerHandlers={},this.eventListeners=new Map,this.getCaipNetworks=n=>w.getCaipNetworks(n),this.getConnectorId=n=>z.getConnectorId(n),e&&this.construct(e)}construct(e){this.projectId=e.projectId,this.namespace=e.namespace,this.adapterType=e.adapterType}get connectors(){return this.availableConnectors}get connections(){return this.availableConnections}get networks(){return this.getCaipNetworks(this.namespace)}onAuthConnected({accounts:e,chainId:n}){const r=this.getCaipNetworks().filter(s=>s.chainNamespace===this.namespace).find(s=>s.id.toString()===(n==null?void 0:n.toString()));e&&r&&this.addConnection({connectorId:T.CONNECTOR_ID.AUTH,accounts:e,caipNetwork:r})}setAuthProvider(e){e.onConnect(this.onAuthConnected.bind(this)),e.onSocialConnected(this.onAuthConnected.bind(this)),this.addConnector({id:T.CONNECTOR_ID.AUTH,type:"AUTH",name:T.CONNECTOR_NAMES.AUTH,provider:e,imageId:void 0,chain:this.namespace,chains:[]})}addConnector(...e){const n=new Set;this.availableConnectors=[...e,...this.availableConnectors].filter(r=>n.has(r.id)?!1:(n.add(r.id),!0)),this.emit("connectors",this.availableConnectors)}addConnection(...e){const n=new Set;this.availableConnections=[...e,...this.availableConnections].filter(r=>n.has(r.connectorId.toLowerCase())?!1:(n.add(r.connectorId.toLowerCase()),!0)),this.emit("connections",this.availableConnections)}deleteConnection(e){this.availableConnections=this.availableConnections.filter(n=>n.connectorId.toLowerCase()!==e.toLowerCase()),this.emit("connections",this.availableConnections)}clearConnections(e=!1){this.availableConnections=[],e&&this.emit("connections",this.availableConnections)}setStatus(e,n){w.setAccountProp("status",e,n)}on(e,n){var r;this.eventListeners.has(e)||this.eventListeners.set(e,new Set),(r=this.eventListeners.get(e))==null||r.add(n)}off(e,n){const r=this.eventListeners.get(e);r&&r.delete(n)}removeAllEventListeners(){this.eventListeners.forEach(e=>{e.clear()})}emit(e,n){const r=this.eventListeners.get(e);r&&r.forEach(s=>s(n))}async connectWalletConnect(e){try{return{clientId:(await this.getWalletConnectConnector().connectWalletConnect()).clientId}}catch(n){throw vs.isUserRejectedRequestError(n)?new dy(n):n}}async switchNetwork(e){var i;const{caipNetwork:n}=e,r=Ke.getProviderId(n.chainNamespace),s=Ke.getProvider(n.chainNamespace);if(!s)throw new Error("Provider not found");if(r==="WALLET_CONNECT"){s.setDefaultChain(n.caipNetworkId);return}if(r==="AUTH"){const o=(i=z.getAuthConnector())==null?void 0:i.provider;if(!o)throw new Error("Auth provider not found");const a=Nn(n.chainNamespace);await o.switchNetwork({chainId:n.caipNetworkId});const c=await o.getUser({chainId:n.caipNetworkId,preferredAccountType:a});this.emit("switchNetwork",c)}}getWalletConnectConnector(){const e=this.connectors.find(n=>n.id==="walletConnect");if(!e)throw new Error("WalletConnectConnector not found");return e}onConnect(e,n){if(e.length>0){const{address:r,chainId:s}=J.getAccount(e[0]),i=this.getCaipNetworks().filter(a=>a.chainNamespace===this.namespace).find(a=>a.id.toString()===(s==null?void 0:s.toString())),o=this.connectors.find(a=>a.id===n);r&&(this.emit("accountChanged",{address:r,chainId:s,connector:o}),this.addConnection({connectorId:n,accounts:e.map(a=>{const{address:c}=J.getAccount(a);return{address:c}}),caipNetwork:i}))}}onAccountsChanged(e,n,r=!0){var s,i;if(e.length>0){const{address:o}=J.getAccount(e[0]),a=this.getConnection({connectorId:n,connections:this.connections,connectors:this.connectors});o&&((s=this.getConnectorId(T.CHAIN.EVM))==null?void 0:s.toLowerCase())===n.toLowerCase()&&this.emit("accountChanged",{address:o,chainId:(i=a==null?void 0:a.caipNetwork)==null?void 0:i.id,connector:a==null?void 0:a.connector}),this.addConnection({connectorId:n,accounts:e.map(c=>{const{address:l}=J.getAccount(c);return{address:l}}),caipNetwork:a==null?void 0:a.caipNetwork})}else r&&this.onDisconnect(n)}onDisconnect(e){var n;this.removeProviderListeners(e),this.deleteConnection(e),((n=this.getConnectorId(T.CHAIN.EVM))==null?void 0:n.toLowerCase())===e.toLowerCase()&&this.emitFirstAvailableConnection(),this.connections.length===0&&this.emit("disconnect")}onChainChanged(e,n){var o;const r=typeof e=="string"&&e.startsWith("0x")?parseInt(e,16).toString():e.toString(),s=this.getConnection({connectorId:n,connections:this.connections,connectors:this.connectors}),i=this.getCaipNetworks().filter(a=>a.chainNamespace===this.namespace).find(a=>a.id.toString()===r);s&&this.addConnection({connectorId:n,accounts:s.accounts,caipNetwork:i}),((o=this.getConnectorId(T.CHAIN.EVM))==null?void 0:o.toLowerCase())===n.toLowerCase()&&this.emit("switchNetwork",{chainId:r})}listenProviderEvents(e,n){if(uB.includes(e))return;const r=o=>this.onAccountsChanged(o,e),s=o=>this.onChainChanged(o,e),i=()=>this.onDisconnect(e);this.providerHandlers[e]||(n.on("disconnect",i),n.on("accountsChanged",r),n.on("chainChanged",s),this.providerHandlers[e]={provider:n,disconnect:i,accountsChanged:r,chainChanged:s})}removeProviderListeners(e){if(this.providerHandlers[e]){const{provider:n,disconnect:r,accountsChanged:s,chainChanged:i}=this.providerHandlers[e];n.removeListener("disconnect",r),n.removeListener("accountsChanged",s),n.removeListener("chainChanged",i),this.providerHandlers[e]=null}}emitFirstAvailableConnection(){var n;const e=this.getConnection({connections:this.connections,connectors:this.connectors});if(e){const[r]=e.accounts;this.emit("accountChanged",{address:r==null?void 0:r.address,chainId:(n=e.caipNetwork)==null?void 0:n.id,connector:e.connector})}}getConnection({address:e,connectorId:n,connections:r,connectors:s}){if(n){const o=r.find(l=>l.connectorId.toLowerCase()===n.toLowerCase());if(!o)return null;const a=s.find(l=>l.id.toLowerCase()===o.connectorId.toLowerCase()),c=e?o.accounts.find(l=>l.address.toLowerCase()===e.toLowerCase()):o.accounts[0];return{...o,account:c,connector:a}}const i=r.find(o=>o.accounts.length>0&&s.some(a=>a.id.toLowerCase()===o.connectorId.toLowerCase()));if(i){const[o]=i.accounts,a=s.find(c=>c.id.toLowerCase()===i.connectorId.toLowerCase());return{...i,account:o,connector:a}}return null}}let Ls=null;const Mn={getSIWX(){return B.state.siwx},async initializeIfEnabled(t=w.getActiveCaipAddress()){var i,o,a;const e=B.state.siwx;if(!(e&&t))return;const[n,r,s]=t.split(":");if(w.checkIfSupportedNetwork(n,`${n}:${r}`))try{if((i=B.state.remoteFeatures)!=null&&i.emailCapture){const l=(o=w.getAccountData(n))==null?void 0:o.user;await Re.open({view:"DataCapture",data:{email:(l==null?void 0:l.email)??void 0}});return}if(Ls&&await Ls,(await e.getSessions(`${n}:${r}`,s)).length)return;await Re.open({view:"SIWXSignMessage"})}catch(c){console.error("SIWXUtil:initializeIfEnabled",c),be.sendEvent({type:"track",event:"SIWX_AUTH_ERROR",properties:this.getSIWXEventProperties(c)}),await((a=V._getClient())==null?void 0:a.disconnect().catch(console.error)),pe.reset("Connect"),gr.showError("A problem occurred while trying initialize authentication")}},async isAuthenticated(t=w.getActiveCaipAddress()){if(!B.state.siwx||!t)return!0;const{chainNamespace:n,chainId:r,address:s}=wt.parseCaipAddress(t),i=`${n}:${r}`;return(await Mn.getSessions({address:s,caipNetworkId:i})).length>0},async requestSignMessage(){const t=B.state.siwx,e=J.getPlainAddress(w.getActiveCaipAddress()),n=No();if(!t)throw new Error("SIWX is not enabled");if(!e)throw new Error("No ActiveCaipAddress found");if(!n)throw new Error("No ActiveCaipNetwork or client found");try{const r=await t.createMessage({chainId:n.caipNetworkId,accountAddress:e}),s=r.toString();let i="";t.signMessage?i=await t.signMessage({message:s,chainId:n.caipNetworkId,accountAddress:e}):(z.getConnectorId(n.chainNamespace)===T.CONNECTOR_ID.AUTH&&pe.pushTransactionStack({}),i=await V.signMessage(s)||""),await t.addSession({data:r,message:s,signature:i}),w.setLastConnectedSIWECaipNetwork(n),Re.close(),be.sendEvent({type:"track",event:"SIWX_AUTH_SUCCESS",properties:this.getSIWXEventProperties()})}catch(r){(!Re.state.open||pe.state.view==="ApproveTransaction")&&await Re.open({view:"SIWXSignMessage"}),gr.showError("Error signing message"),be.sendEvent({type:"track",event:"SIWX_AUTH_ERROR",properties:this.getSIWXEventProperties(r)}),console.error("SWIXUtil:requestSignMessage",r)}},async cancelSignMessage(){var t;try{const e=this.getSIWX();if((t=e==null?void 0:e.getRequired)==null?void 0:t.call(e)){const r=w.getLastConnectedSIWECaipNetwork();if(r){const s=await(e==null?void 0:e.getSessions(r==null?void 0:r.caipNetworkId,J.getPlainAddress(w.getActiveCaipAddress())||""));s&&s.length>0?await w.switchActiveNetwork(r):await V.disconnect()}else await V.disconnect()}else Re.close();Re.close(),be.sendEvent({event:"CLICK_CANCEL_SIWX",type:"track",properties:this.getSIWXEventProperties()})}catch(e){console.error("SIWXUtil:cancelSignMessage",e)}},async getAllSessions(){const t=this.getSIWX(),e=w.getAllRequestedCaipNetworks(),n=[];return await Promise.all(e.map(async r=>{const s=await(t==null?void 0:t.getSessions(r.caipNetworkId,J.getPlainAddress(w.getActiveCaipAddress())||""));s&&n.push(...s)})),n},async getSessions(t){const e=B.state.siwx;let n=t==null?void 0:t.address;if(!n){const s=w.getActiveCaipAddress();n=J.getPlainAddress(s)}let r=t==null?void 0:t.caipNetworkId;if(!r){const s=w.getActiveCaipNetwork();r=s==null?void 0:s.caipNetworkId}return e&&n&&r?e.getSessions(r,n):[]},async isSIWXCloseDisabled(){var e;const t=this.getSIWX();if(t){const n=pe.state.view==="ApproveTransaction",r=pe.state.view==="SIWXSignMessage";if(n||r)return((e=t.getRequired)==null?void 0:e.call(t))&&(await this.getSessions()).length===0}return!1},async authConnectorAuthenticate({authConnector:t,chainId:e,socialUri:n,preferredAccountType:r,chainNamespace:s}){var d;const i=Mn.getSIWX(),o=No();if(!i||!s.includes(T.CHAIN.EVM)||(d=B.state.remoteFeatures)!=null&&d.emailCapture){const h=await t.connect({chainId:e,socialUri:n,preferredAccountType:r});return{address:h.address,chainId:h.chainId,accounts:h.accounts}}const a=`${s}:${e}`,c=await i.createMessage({chainId:a,accountAddress:"<<AccountAddress>>"}),l={accountAddress:c.accountAddress,chainId:c.chainId,domain:c.domain,uri:c.uri,version:c.version,nonce:c.nonce,notBefore:c.notBefore,statement:c.statement,resources:c.resources,requestId:c.requestId,issuedAt:c.issuedAt,expirationTime:c.expirationTime,serializedMessage:c.toString()},u=await t.connect({chainId:e,socialUri:n,siwxMessage:l,preferredAccountType:r});return l.accountAddress=u.address,l.serializedMessage=u.message||"",u.signature&&u.message&&await Mn.addEmbeddedWalletSession(l,u.message,u.signature),w.setLastConnectedSIWECaipNetwork(o),{address:u.address,chainId:u.chainId,accounts:u.accounts}},async addEmbeddedWalletSession(t,e,n){if(Ls)return Ls;const r=Mn.getSIWX();return r?(Ls=r.addSession({data:t,message:e,signature:n}).finally(()=>{Ls=null}),Ls):Promise.resolve()},async universalProviderAuthenticate({universalProvider:t,chains:e,methods:n}){var l,u,d;const r=Mn.getSIWX(),s=No(),i=new Set(e.map(h=>h.split(":")[0]));if(!r||i.size!==1||!i.has("eip155"))return!1;const o=await r.createMessage({chainId:((l=No())==null?void 0:l.caipNetworkId)||"",accountAddress:""}),a=await t.authenticate({nonce:o.nonce,domain:o.domain,uri:o.uri,exp:o.expirationTime,iat:o.issuedAt,nbf:o.notBefore,requestId:o.requestId,version:o.version,resources:o.resources,statement:o.statement,chainId:o.chainId,methods:n,chains:[o.chainId,...e.filter(h=>h!==o.chainId)]});gr.showLoading("Authenticating...",{autoClose:!1});const c={...a.session.peer.metadata,name:a.session.peer.metadata.name,icon:(u=a.session.peer.metadata.icons)==null?void 0:u[0],type:"WALLET_CONNECT"};if(w.setAccountProp("connectedWalletInfo",c,Array.from(i)[0]),(d=a==null?void 0:a.auths)!=null&&d.length){const h=a.auths.map(f=>{const p=t.client.formatAuthMessage({request:f.p,iss:f.p.iss});return{data:{...f.p,accountAddress:f.p.iss.split(":").slice(-1).join(""),chainId:f.p.iss.split(":").slice(2,4).join(":"),uri:f.p.aud??"",version:f.p.version||o.version,expirationTime:f.p.exp,issuedAt:f.p.iat,notBefore:f.p.nbf},message:p,signature:f.s.s,cacao:f}});try{await r.setSessions(h),s&&w.setLastConnectedSIWECaipNetwork(s),be.sendEvent({type:"track",event:"SIWX_AUTH_SUCCESS",properties:Mn.getSIWXEventProperties()})}catch(f){throw console.error("SIWX:universalProviderAuth - failed to set sessions",f),be.sendEvent({type:"track",event:"SIWX_AUTH_ERROR",properties:Mn.getSIWXEventProperties(f)}),await t.disconnect().catch(console.error),f}finally{gr.hide()}}return!0},getSIWXEventProperties(t){var n;const e=w.state.activeChain;if(!e)throw new Error("SIWXUtil:getSIWXEventProperties - namespace is required");return{network:((n=w.state.activeCaipNetwork)==null?void 0:n.caipNetworkId)||"",isSmartAccount:Nn(e)===at.ACCOUNT_TYPES.SMART_ACCOUNT,message:t?J.parseError(t):void 0}},async clearSessions(){const t=this.getSIWX();t&&await t.setSessions([])}};class hB{constructor({provider:e,namespace:n}){this.id=T.CONNECTOR_ID.WALLET_CONNECT,this.name="WalletConnect",this.type="WALLET_CONNECT",this.imageId="ef1a1fcf-7fe8-4d69-bd6d-fda1345b4400",this.getCaipNetworks=w.getCaipNetworks.bind(w),this.caipNetworks=this.getCaipNetworks(),this.provider=e,this.chain=n}get chains(){return this.getCaipNetworks()}async connectWalletConnect(){if(!await this.authenticate()){const n=this.getCaipNetworks(),r=B.state.universalProviderConfigOverride,s=vs.createNamespaces(n,r);await this.provider.connect({optionalNamespaces:s})}return{clientId:await this.provider.client.core.crypto.getClientId(),session:this.provider.session}}async disconnect(){await this.provider.disconnect()}async authenticate(){const e=this.chains.map(n=>n.caipNetworkId);return Mn.universalProviderAuthenticate({universalProvider:this.provider,chains:e,methods:fB})}}const fB=["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_getCallsStatus","wallet_sendCalls","wallet_getCapabilities","wallet_grantPermissions","wallet_revokePermissions","wallet_getAssets"],Kn=Xe({message:"",variant:"info",open:!1}),pB={state:Kn,subscribeKey(t,e){return Pt(Kn,t,e)},open(t,e){const{debug:n}=B.state,{code:r,displayMessage:s,debugMessage:i}=t;if(s&&n&&(Kn.message=s,Kn.variant=e,Kn.open=!0),i){if(!T.IS_DEVELOPMENT)return;const o=typeof i=="function"?i():i,a=r?{code:r}:void 0;e==="error"?console.error(o,a):e==="warning"?console.warn(o,a):console.info(o,a)}},warn(t,e,n){Kn.open=!0,Kn.message=t,Kn.variant="warning",e&&console.warn(e,n)},close(){Kn.open=!1,Kn.message="",Kn.variant="info"}},Wt=qn(pB),gB={eip155:{native:{assetNamespace:"slip44",assetReference:"60"},defaultTokenNamespace:"erc20"},solana:{native:{assetNamespace:"slip44",assetReference:"501"},defaultTokenNamespace:"token"}};class mB extends Error{}function yB(){const{sdkType:t,sdkVersion:e,projectId:n}=B.getSnapshot(),r=new URL("https://rpc.walletconnect.org/v1/json-rpc");return r.searchParams.set("projectId",n),r.searchParams.set("st",t),r.searchParams.set("sv",e),r.searchParams.set("source","fund-wallet"),r.toString()}async function ef(t,e){const n=yB(),{projectId:r}=B.getSnapshot(),s={jsonrpc:"2.0",id:1,method:t,params:{...e||{},projectId:r}},o=await(await fetch(n,{method:"POST",body:JSON.stringify(s),headers:{"Content-Type":"application/json"}})).json();if(o.error)throw new mB(o.error.message);return o}async function pL(t){return(await ef("reown_getExchanges",t)).result}async function gL(t){return(await ef("reown_getExchangePayUrl",t)).result}async function mL(t){return(await ef("reown_getExchangeBuyStatus",t)).result}function yL(t,e){const{chainNamespace:n,chainId:r}=wt.parseCaipNetworkId(t),s=gB[n];if(!s)throw new Error(`Unsupported chain namespace for CAIP-19 formatting: ${n}`);let i=s.native.assetNamespace,o=s.native.assetReference;return e!=="native"&&(i=s.defaultTokenNamespace,o=e),`${`${n}:${r}`}/${i}:${o}`}const wB={network:"eip155:1",asset:"native",metadata:{name:"Ethereum",symbol:"ETH",decimals:18}},EB={network:"eip155:8453",asset:"native",metadata:{name:"Ethereum",symbol:"ETH",decimals:18}},nb={network:"eip155:8453",asset:"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",metadata:{name:"USD Coin",symbol:"USDC",decimals:6}},bB={network:"eip155:84532",asset:"0x036CbD53842c5426634e7929541eC2318f3dCF7e",metadata:{name:"USD Coin",symbol:"USDC",decimals:6}},_B={network:"eip155:84532",asset:"native",metadata:{name:"Ethereum",symbol:"ETH",decimals:18}},vB={network:"eip155:1",asset:"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",metadata:{name:"USD Coin",symbol:"USDC",decimals:6}},CB={network:"eip155:42161",asset:"0xaf88d065e77c8cC2239327C5EDb3A432268e5831",metadata:{name:"USD Coin",symbol:"USDC",decimals:6}},AB={network:"eip155:137",asset:"0x2791bca1f2de4661ed88a30c99a7a9449aa84174",metadata:{name:"USD Coin",symbol:"USDC",decimals:6}},SB={network:"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",asset:"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",metadata:{name:"USD Coin",symbol:"USDC",decimals:6}},IB={network:"eip155:1",asset:"0xdAC17F958D2ee523a2206206994597C13D831ec7",metadata:{name:"Tether USD",symbol:"USDT",decimals:6}},NB={network:"eip155:10",asset:"0x94b008aA00579c1307B0EF2c499aD98a8ce58e58",metadata:{name:"Tether USD",symbol:"USDT",decimals:6}},TB={network:"eip155:42161",asset:"0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9",metadata:{name:"Tether USD",symbol:"USDT",decimals:6}},OB={network:"eip155:137",asset:"0xc2132d05d31c914a87c6611c10748aeb04b58e8f",metadata:{name:"Tether USD",symbol:"USDT",decimals:6}},RB={network:"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",asset:"Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB",metadata:{name:"Tether USD",symbol:"USDT",decimals:6}},xB={network:"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",asset:"native",metadata:{name:"Solana",symbol:"SOL",decimals:9}},PB={ethereumETH:wB,baseETH:EB,baseUSDC:nb,baseSepoliaETH:_B,ethereumUSDC:vB,arbitrumUSDC:CB,polygonUSDC:AB,solanaUSDC:SB,ethereumUSDT:IB,optimismUSDT:NB,arbitrumUSDT:TB,polygonUSDT:OB,solanaUSDT:RB,solanaSOL:xB};function wL(t){return Object.values(PB).filter(e=>e.network===t)}const ze={METMASK_CONNECTOR_NAME:"MetaMask",TRUST_CONNECTOR_NAME:"Trust Wallet",SOLFLARE_CONNECTOR_NAME:"Solflare",PHANTOM_CONNECTOR_NAME:"Phantom",COIN98_CONNECTOR_NAME:"Coin98",MAGIC_EDEN_CONNECTOR_NAME:"Magic Eden",BACKPACK_CONNECTOR_NAME:"Backpack",BITGET_CONNECTOR_NAME:"Bitget Wallet",FRONTIER_CONNECTOR_NAME:"Frontier",XVERSE_CONNECTOR_NAME:"Xverse Wallet",LEATHER_CONNECTOR_NAME:"Leather",OKX_CONNECTOR_NAME:"OKX Wallet",BINANCE_CONNECTOR_NAME:"Binance Wallet",EIP155:T.CHAIN.EVM,ADD_CHAIN_METHOD:"wallet_addEthereumChain",EIP6963_ANNOUNCE_EVENT:"eip6963:announceProvider",EIP6963_REQUEST_EVENT:"eip6963:requestProvider",CONNECTOR_RDNS_MAP:{coinbaseWallet:"com.coinbase.wallet",coinbaseWalletSDK:"com.coinbase.wallet"},CONNECTOR_TYPE_EXTERNAL:"EXTERNAL",CONNECTOR_TYPE_WALLET_CONNECT:"WALLET_CONNECT",CONNECTOR_TYPE_INJECTED:"INJECTED",CONNECTOR_TYPE_ANNOUNCED:"ANNOUNCED",CONNECTOR_TYPE_AUTH:"AUTH",CONNECTOR_TYPE_MULTI_CHAIN:"MULTI_CHAIN",CONNECTOR_TYPE_W3M_AUTH:"AUTH",getSDKVersionWarningMessage(t,e){return`
|
|
44
|
-
@@@@@@@ @@@@@@@@@@@@@@@@@@
|
|
45
|
-
@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@
|
|
46
|
-
@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@
|
|
47
|
-
@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@
|
|
48
|
-
@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@ @@@@@@@@@@@
|
|
49
|
-
@@@@@@@@@@@@@@@ @@@@@@@@@@@@@ @@@@@@@@@@@@
|
|
50
|
-
@@@@@@@@@@@@@@@ @@@@@@@@@@@@@ @@@@@@@@@@@@@
|
|
51
|
-
@@@@@@@@@@@@@@@ @@@@@@@@@@@@ @@@@@@@@@@@@@
|
|
52
|
-
@@@@@@ @@@@@@ @@@@@@@@@@@ @@@@@@@@@@@@@@
|
|
53
|
-
@@@@@@ @@@@@@ @@@@@@@@@@@ @@@@@@@@@@@@@@@
|
|
54
|
-
@@@@@@@@@@@@@@@ @@@@@@@@@@ @@@@@@@@@@@@@@@
|
|
55
|
-
@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@
|
|
56
|
-
@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@
|
|
57
|
-
@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@
|
|
58
|
-
@@@@@ @@@@@@@@@@@@@@@@@@
|
|
59
|
-
|
|
60
|
-
AppKit SDK version ${t} is outdated. Latest version is ${e}. Please update to the latest version for bug fixes and new features.
|
|
61
|
-
|
|
62
|
-
Changelog: https://github.com/reown-com/appkit/releases
|
|
63
|
-
NPM Registry: https://www.npmjs.com/package/@reown/appkit`}},DB={ConnectorExplorerIds:{[T.CONNECTOR_ID.COINBASE]:"fd20dc426fb37566d803205b19bbc1d4096b248ac04548e3cfb6b3a38bd033aa",[T.CONNECTOR_ID.COINBASE_SDK]:"fd20dc426fb37566d803205b19bbc1d4096b248ac04548e3cfb6b3a38bd033aa",[T.CONNECTOR_ID.BASE_ACCOUNT]:"fd20dc426fb37566d803205b19bbc1d4096b248ac04548e3cfb6b3a38bd033aa",[T.CONNECTOR_ID.SAFE]:"225affb176778569276e484e1b92637ad061b01e13a048b35a9d280c3b58970f",[T.CONNECTOR_ID.LEDGER]:"19177a98252e07ddfc9af2083ba8e07ef627cb6103467ffebb3f8f4205fd7927",[T.CONNECTOR_ID.OKX]:"971e689d0a5be527bac79629b4ee9b925e82208e5168b733496a09c0faed0709",[ze.METMASK_CONNECTOR_NAME]:"c57ca95b47569778a828d19178114f4db188b89b763c899ba0be274e97267d96",[ze.TRUST_CONNECTOR_NAME]:"4622a2b2d6af1c9844944291e5e7351a6aa24cd7b23099efac1b2fd875da31a0",[ze.SOLFLARE_CONNECTOR_NAME]:"1ca0bdd4747578705b1939af023d120677c64fe6ca76add81fda36e350605e79",[ze.PHANTOM_CONNECTOR_NAME]:"a797aa35c0fadbfc1a53e7f675162ed5226968b44a19ee3d24385c64d1d3c393",[ze.COIN98_CONNECTOR_NAME]:"2a3c89040ac3b723a1972a33a125b1db11e258a6975d3a61252cd64e6ea5ea01",[ze.MAGIC_EDEN_CONNECTOR_NAME]:"8b830a2b724a9c3fbab63af6f55ed29c9dfa8a55e732dc88c80a196a2ba136c6",[ze.BACKPACK_CONNECTOR_NAME]:"2bd8c14e035c2d48f184aaa168559e86b0e3433228d3c4075900a221785019b0",[ze.BITGET_CONNECTOR_NAME]:"38f5d18bd8522c244bdd70cb4a68e0e718865155811c043f052fb9f1c51de662",[ze.FRONTIER_CONNECTOR_NAME]:"85db431492aa2e8672e93f4ea7acf10c88b97b867b0d373107af63dc4880f041",[ze.XVERSE_CONNECTOR_NAME]:"2a87d74ae02e10bdd1f51f7ce6c4e1cc53cd5f2c0b6b5ad0d7b3007d2b13de7b",[ze.LEATHER_CONNECTOR_NAME]:"483afe1df1df63daf313109971ff3ef8356ddf1cc4e45877d205eee0b7893a13",[ze.OKX_CONNECTOR_NAME]:"971e689d0a5be527bac79629b4ee9b925e82208e5168b733496a09c0faed0709",[ze.BINANCE_CONNECTOR_NAME]:"2fafea35bb471d22889ccb49c08d99dd0a18a37982602c33f696a5723934ba25"},NetworkImageIds:{1:"ba0ba0cd-17c6-4806-ad93-f9d174f17900",42161:"3bff954d-5cb0-47a0-9a23-d20192e74600",43114:"30c46e53-e989-45fb-4549-be3bd4eb3b00",56:"93564157-2e8e-4ce7-81df-b264dbee9b00",250:"06b26297-fe0c-4733-5d6b-ffa5498aac00",10:"ab9c186a-c52f-464b-2906-ca59d760a400",137:"41d04d42-da3b-4453-8506-668cc0727900",5e3:"e86fae9b-b770-4eea-e520-150e12c81100",295:"6a97d510-cac8-4e58-c7ce-e8681b044c00",11155111:"e909ea0a-f92a-4512-c8fc-748044ea6800",84532:"a18a7ecd-e307-4360-4746-283182228e00",1301:"4eeea7ef-0014-4649-5d1d-07271a80f600",130:"2257980a-3463-48c6-cbac-a42d2a956e00",10143:"0a728e83-bacb-46db-7844-948f05434900",100:"02b53f6a-e3d4-479e-1cb4-21178987d100",9001:"f926ff41-260d-4028-635e-91913fc28e00",324:"b310f07f-4ef7-49f3-7073-2a0a39685800",314:"5a73b3dd-af74-424e-cae0-0de859ee9400",4689:"34e68754-e536-40da-c153-6ef2e7188a00",1088:"3897a66d-40b9-4833-162f-a2c90531c900",1284:"161038da-44ae-4ec7-1208-0ea569454b00",1285:"f1d73bb6-5450-4e18-38f7-fb6484264a00",7777777:"845c60df-d429-4991-e687-91ae45791600",42220:"ab781bbc-ccc6-418d-d32d-789b15da1f00",8453:"7289c336-3981-4081-c5f4-efc26ac64a00",1313161554:"3ff73439-a619-4894-9262-4470c773a100",2020:"b8101fc0-9c19-4b6f-ec65-f6dfff106e00",2021:"b8101fc0-9c19-4b6f-ec65-f6dfff106e00",80094:"e329c2c9-59b0-4a02-83e4-212ff3779900",2741:"fc2427d1-5af9-4a9c-8da5-6f94627cd900","5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp":"a1b58899-f671-4276-6a5e-56ca5bd59700","4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z":"a1b58899-f671-4276-6a5e-56ca5bd59700",EtWTRABZaYq6iMfeYKouRu166VU2xqa1:"a1b58899-f671-4276-6a5e-56ca5bd59700","000000000019d6689c085ae165831e93":"0b4838db-0161-4ffe-022d-532bf03dba00","000000000933ea01ad0ee984209779ba":"39354064-d79b-420b-065d-f980c4b78200","00000008819873e925422c1ff0f99f7c":"b3406e4a-bbfc-44fb-e3a6-89673c78b700","-239":"20f673c0-095e-49b2-07cf-eb5049dcf600","-3":"20f673c0-095e-49b2-07cf-eb5049dcf600"},ConnectorImageIds:{[T.CONNECTOR_ID.COINBASE]:"0c2840c3-5b04-4c44-9661-fbd4b49e1800",[T.CONNECTOR_ID.COINBASE_SDK]:"0c2840c3-5b04-4c44-9661-fbd4b49e1800",[T.CONNECTOR_ID.BASE_ACCOUNT]:"bba2c8be-7fd1-463e-42b1-796ecb0ad200",[T.CONNECTOR_ID.SAFE]:"461db637-8616-43ce-035a-d89b8a1d5800",[T.CONNECTOR_ID.LEDGER]:"54a1aa77-d202-4f8d-0fb2-5d2bb6db0300",[T.CONNECTOR_ID.WALLET_CONNECT]:"ef1a1fcf-7fe8-4d69-bd6d-fda1345b4400",[T.CONNECTOR_ID.INJECTED]:"07ba87ed-43aa-4adf-4540-9e6a2b9cae00"},ConnectorNamesMap:{[T.CONNECTOR_ID.INJECTED]:"Browser Wallet",[T.CONNECTOR_ID.WALLET_CONNECT]:"WalletConnect",[T.CONNECTOR_ID.COINBASE]:"Coinbase",[T.CONNECTOR_ID.COINBASE_SDK]:"Coinbase",[T.CONNECTOR_ID.BASE_ACCOUNT]:"Base Account",[T.CONNECTOR_ID.LEDGER]:"Ledger",[T.CONNECTOR_ID.SAFE]:"Safe"},ConnectorTypesMap:{[T.CONNECTOR_ID.INJECTED]:"INJECTED",[T.CONNECTOR_ID.WALLET_CONNECT]:"WALLET_CONNECT",[T.CONNECTOR_ID.EIP6963]:"ANNOUNCED",[T.CONNECTOR_ID.AUTH]:"AUTH",[ze.CONNECTOR_TYPE_AUTH]:"AUTH"},WalletConnectRpcChainIds:[1,5,11155111,10,420,42161,421613,137,80001,42220,1313161554,1313161555,56,97,43114,43113,100,8453,84531,7777777,999,324,280]},ga={getCaipTokens(t){if(!t)return;const e={};return Object.entries(t).forEach(([n,r])=>{e[`${ze.EIP155}:${n}`]=r}),e},isLowerCaseMatch(t,e){return(t==null?void 0:t.toLowerCase())===(e==null?void 0:e.toLowerCase())},getActiveNamespaceConnectedToAuth(){const t=w.state.activeChain;return T.AUTH_CONNECTOR_SUPPORTED_CHAINS.find(e=>z.getConnectorId(e)===T.CONNECTOR_ID.AUTH&&e===t)},withRetry({conditionFn:t,intervalMs:e,maxRetries:n}){let r=0;return new Promise(s=>{async function i(){return r+=1,await t()?s(!0):r>=n?s(!1):(setTimeout(i,e),null)}i()})},userChainIdToChainNamespace(t){if(typeof t=="number")return T.CHAIN.EVM;const[e]=t.split(":");return e},getOtherAuthNamespaces(t){return t?T.AUTH_CONNECTOR_SUPPORTED_CHAINS.filter(r=>r!==t):[]},getConnectorStorageInfo(t,e){const r=j.getConnections()[e]??[];return{hasDisconnected:j.isConnectorDisconnected(t,e),hasConnected:r.some(s=>ga.isLowerCaseMatch(s.connectorId,t))}}},kB=new AbortController,qt={EmbeddedWalletAbortController:kB,UniversalProviderErrors:{UNAUTHORIZED_DOMAIN_NOT_ALLOWED:{message:"Unauthorized: origin not allowed",alertErrorKey:"ORIGIN_NOT_ALLOWED"},JWT_VALIDATION_ERROR:{message:"JWT validation error: JWT Token is not yet valid",alertErrorKey:"JWT_TOKEN_NOT_VALID"},INVALID_KEY:{message:"Unauthorized: invalid key",alertErrorKey:"INVALID_PROJECT_ID"}},ALERT_ERRORS:{SWITCH_NETWORK_NOT_FOUND:{code:"APKT001",displayMessage:"Network Not Found",debugMessage:"The specified network is not recognized. Please ensure it is included in the `networks` array of your `createAppKit` configuration."},ORIGIN_NOT_ALLOWED:{code:"APKT002",displayMessage:"Invalid App Configuration",debugMessage:()=>`The origin ${Io()?window.origin:"unknown"} is not in your allow list. Please update your allowed domains at https://dashboard.reown.com. [PID: ${B.state.projectId}]`},IFRAME_LOAD_FAILED:{code:"APKT003",displayMessage:"Network Error: Wallet Load Failed",debugMessage:()=>"Failed to load the embedded wallet. This may be due to network issues or server downtime. Please check your network connection and try again shortly. Contact support if the issue persists."},IFRAME_REQUEST_TIMEOUT:{code:"APKT004",displayMessage:"Wallet Request Timeout",debugMessage:()=>"The request to the embedded wallet timed out. Please check your network connection and try again shortly. Contact support if the issue persists."},UNVERIFIED_DOMAIN:{code:"APKT005",displayMessage:"Unverified Domain",debugMessage:()=>"Embedded wallet load failed. Ensure your domain is verified in https://dashboard.reown.com."},JWT_TOKEN_NOT_VALID:{code:"APKT006",displayMessage:"Session Expired",debugMessage:"Your session is invalid or expired. Please check your system’s date and time settings, then reconnect."},INVALID_PROJECT_ID:{code:"APKT007",displayMessage:"Invalid Project ID",debugMessage:"The specified project ID is invalid. Please visit https://dashboard.reown.com to obtain a valid project ID."},PROJECT_ID_NOT_CONFIGURED:{code:"APKT008",displayMessage:"Project ID Missing",debugMessage:"No project ID is configured. You can create and configure a project ID at https://dashboard.reown.com."},SERVER_ERROR_APP_CONFIGURATION:{code:"APKT009",displayMessage:"Server Error",debugMessage:t=>`Unable to fetch App Configuration. ${t}. Please check your network connection and try again shortly. Contact support if the issue persists.`},RATE_LIMITED_APP_CONFIGURATION:{code:"APKT010",displayMessage:"Rate Limited",debugMessage:"You have been rate limited while retrieving App Configuration. Please wait a few minutes and try again. Contact support if the issue persists."}},ALERT_WARNINGS:{LOCAL_CONFIGURATION_IGNORED:{debugMessage:t=>`[Reown Config Notice] ${t}`},INACTIVE_NAMESPACE_NOT_CONNECTED:{code:"APKTW001",displayMessage:"Inactive Namespace Not Connected",debugMessage:(t,e)=>`An error occurred while connecting an inactive namespace ${t}: "${e}"`},INVALID_EMAIL:{code:"APKTW002",displayMessage:"Invalid Email Address",debugMessage:"Please enter a valid email address"}}},rb={TOKEN_ADDRESSES_BY_SYMBOL:{USDC:{8453:nb.asset,84532:bB.asset}},getTokenSymbolByAddress(t){if(!t)return;const[e]=Object.entries(rb.TOKEN_ADDRESSES_BY_SYMBOL).find(([n,r])=>Object.values(r).includes(t))??[];return e}},UB={createLogger(t,e="error"){const n=dh({level:e}),{logger:r}=cl({opts:n});return r.error=(...s)=>{for(const i of s)if(i instanceof Error){t(i,...s);return}t(void 0,...s)},r}},$B="rpc.walletconnect.org";function qm(t,e){const n=new URL("https://rpc.walletconnect.org/v1/");return n.searchParams.set("chainId",t),n.searchParams.set("projectId",e),n.toString()}const ju=["near:mainnet","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","eip155:1101","eip155:56","eip155:42161","eip155:7777777","eip155:59144","eip155:324","solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1","eip155:5000","solana:4sgjmw1sunhzsxgspuhpqldx6wiyjntz","eip155:80084","eip155:5003","eip155:100","eip155:8453","eip155:42220","eip155:1313161555","eip155:17000","eip155:1","eip155:300","eip155:1313161554","eip155:1329","eip155:84532","eip155:421614","eip155:11155111","eip155:8217","eip155:43114","solana:4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z","eip155:999999999","eip155:11155420","eip155:80002","eip155:97","eip155:43113","eip155:137","eip155:10","eip155:1301","eip155:80094","eip155:80069","eip155:560048","eip155:31","eip155:2818","eip155:57054","eip155:911867","eip155:534351","eip155:1112","eip155:534352","eip155:1111","eip155:146","eip155:130","eip155:1284","eip155:30","eip155:2810","bip122:000000000019d6689c085ae165831e93","bip122:000000000933ea01ad0ee984209779ba"],$i={extendRpcUrlWithProjectId(t,e){let n=!1;try{n=new URL(t).host===$B}catch{n=!1}if(n){const r=new URL(t);return r.searchParams.has("projectId")||r.searchParams.set("projectId",e),r.toString()}return t},isCaipNetwork(t){return"chainNamespace"in t&&"caipNetworkId"in t},getChainNamespace(t){return this.isCaipNetwork(t)?t.chainNamespace:T.CHAIN.EVM},getCaipNetworkId(t){return this.isCaipNetwork(t)?t.caipNetworkId:`${T.CHAIN.EVM}:${t.id}`},getDefaultRpcUrl(t,e,n){var s,i,o;const r=(o=(i=(s=t.rpcUrls)==null?void 0:s.default)==null?void 0:i.http)==null?void 0:o[0];return ju.includes(e)?qm(e,n):r||""},extendCaipNetwork(t,{customNetworkImageUrls:e,projectId:n,customRpcUrls:r}){var h,f,p,g,y,v,A;const s=this.getChainNamespace(t),i=this.getCaipNetworkId(t),o=(p=(f=(h=t.rpcUrls)==null?void 0:h.default)==null?void 0:f.http)==null?void 0:p[0],a=this.getDefaultRpcUrl(t,i,n),c=((v=(y=(g=t==null?void 0:t.rpcUrls)==null?void 0:g.chainDefault)==null?void 0:y.http)==null?void 0:v[0])||o,l=((A=r==null?void 0:r[i])==null?void 0:A.map(E=>E.url))||[],u=[...l,...a?[a]:[]],d=[...l];return c&&!d.includes(c)&&d.push(c),{...t,chainNamespace:s,caipNetworkId:i,assets:{imageId:DB.NetworkImageIds[t.id],imageUrl:e==null?void 0:e[t.id]},rpcUrls:{...t.rpcUrls,default:{http:u},chainDefault:{http:d}}}},extendCaipNetworks(t,{customNetworkImageUrls:e,projectId:n,customRpcUrls:r}){return t.map(s=>$i.extendCaipNetwork(s,{customNetworkImageUrls:e,customRpcUrls:r,projectId:n}))},getViemTransport(t,e,n){var s,i,o;const r=[];return n==null||n.forEach(a=>{r.push(zt.http(a.url,a.config))}),ju.includes(t.caipNetworkId)&&r.push(zt.http(qm(t.caipNetworkId,e),{fetchOptions:{headers:{"Content-Type":"text/plain"}}})),(o=(i=(s=t==null?void 0:t.rpcUrls)==null?void 0:s.default)==null?void 0:i.http)==null||o.forEach(a=>{r.push(zt.http(a))}),zt.fallback(r)},extendWagmiTransports(t,e,n){if(ju.includes(t.caipNetworkId)){const r=this.getDefaultRpcUrl(t,t.caipNetworkId,e);return zt.fallback([n,zt.http(r)])}return n},getUnsupportedNetwork(t){return{id:t.split(":")[1],caipNetworkId:t,name:T.UNSUPPORTED_NETWORK_NAME,chainNamespace:t.split(":")[0],nativeCurrency:{name:"",decimals:0,symbol:""},rpcUrls:{default:{http:[]}}}},getCaipNetworkFromStorage(t){var c;const e=j.getActiveCaipNetworkId(),n=w.getAllRequestedCaipNetworks(),r=Array.from(((c=w.state.chains)==null?void 0:c.keys())||[]),s=e==null?void 0:e.split(":")[0],i=s?r.includes(s):!1,o=n==null?void 0:n.find(l=>l.caipNetworkId===e);return i&&!o&&e?this.getUnsupportedNetwork(e):o||t||(n==null?void 0:n[0])}};class jo{constructor(){}static getInstance({projectId:e,chainId:n,enableLogger:r,onTimeout:s,abortController:i,getActiveCaipNetwork:o,getCaipNetworks:a}){var d;const{metadata:c,sdkVersion:l,sdkType:u}=B.getSnapshot();return jo.instance||(jo.instance=new lC({projectId:e,chainId:n,enableLogger:r,onTimeout:s,abortController:i,getActiveCaipNetwork:o,getCaipNetworks:a,enableCloudAuthAccount:!!((d=B.state.remoteFeatures)!=null&&d.emailCapture),metadata:c,sdkVersion:l,sdkType:u})),jo.instance}}/**
|
|
64
|
-
* @license
|
|
65
|
-
* Copyright 2019 Google LLC
|
|
66
|
-
* SPDX-License-Identifier: BSD-3-Clause
|
|
67
|
-
*/const bc=globalThis,tf=bc.ShadowRoot&&(bc.ShadyCSS===void 0||bc.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,nf=Symbol(),Hm=new WeakMap;let sb=class{constructor(e,n,r){if(this._$cssResult$=!0,r!==nf)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=e,this.t=n}get styleSheet(){let e=this.o;const n=this.t;if(tf&&e===void 0){const r=n!==void 0&&n.length===1;r&&(e=Hm.get(n)),e===void 0&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),r&&Hm.set(n,e))}return e}toString(){return this.cssText}};const Zn=t=>new sb(typeof t=="string"?t:t+"",void 0,nf),ms=(t,...e)=>{const n=t.length===1?t[0]:e.reduce((r,s,i)=>r+(o=>{if(o._$cssResult$===!0)return o.cssText;if(typeof o=="number")return o;throw Error("Value passed to 'css' function must be a 'css' function result: "+o+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(s)+t[i+1],t[0]);return new sb(n,t,nf)},BB=(t,e)=>{if(tf)t.adoptedStyleSheets=e.map(n=>n instanceof CSSStyleSheet?n:n.styleSheet);else for(const n of e){const r=document.createElement("style"),s=bc.litNonce;s!==void 0&&r.setAttribute("nonce",s),r.textContent=n.cssText,t.appendChild(r)}},zm=tf?t=>t:t=>t instanceof CSSStyleSheet?(e=>{let n="";for(const r of e.cssRules)n+=r.cssText;return Zn(n)})(t):t;/**
|
|
68
|
-
* @license
|
|
69
|
-
* Copyright 2017 Google LLC
|
|
70
|
-
* SPDX-License-Identifier: BSD-3-Clause
|
|
71
|
-
*/const{is:FB,defineProperty:LB,getOwnPropertyDescriptor:MB,getOwnPropertyNames:jB,getOwnPropertySymbols:WB,getPrototypeOf:qB}=Object,Cs=globalThis,Vm=Cs.trustedTypes,HB=Vm?Vm.emptyScript:"",Wu=Cs.reactiveElementPolyfillSupport,Wo=(t,e)=>t,rh={toAttribute(t,e){switch(e){case Boolean:t=t?HB:null;break;case Object:case Array:t=t==null?t:JSON.stringify(t)}return t},fromAttribute(t,e){let n=t;switch(e){case Boolean:n=t!==null;break;case Number:n=t===null?null:Number(t);break;case Object:case Array:try{n=JSON.parse(t)}catch{n=null}}return n}},ib=(t,e)=>!FB(t,e),Km={attribute:!0,type:String,converter:rh,reflect:!1,useDefault:!1,hasChanged:ib};Symbol.metadata??(Symbol.metadata=Symbol("metadata")),Cs.litPropertyMetadata??(Cs.litPropertyMetadata=new WeakMap);let Bi=class extends HTMLElement{static addInitializer(e){this._$Ei(),(this.l??(this.l=[])).push(e)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(e,n=Km){if(n.state&&(n.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(e)&&((n=Object.create(n)).wrapped=!0),this.elementProperties.set(e,n),!n.noAccessor){const r=Symbol(),s=this.getPropertyDescriptor(e,r,n);s!==void 0&&LB(this.prototype,e,s)}}static getPropertyDescriptor(e,n,r){const{get:s,set:i}=MB(this.prototype,e)??{get(){return this[n]},set(o){this[n]=o}};return{get:s,set(o){const a=s==null?void 0:s.call(this);i==null||i.call(this,o),this.requestUpdate(e,a,r)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)??Km}static _$Ei(){if(this.hasOwnProperty(Wo("elementProperties")))return;const e=qB(this);e.finalize(),e.l!==void 0&&(this.l=[...e.l]),this.elementProperties=new Map(e.elementProperties)}static finalize(){if(this.hasOwnProperty(Wo("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(Wo("properties"))){const n=this.properties,r=[...jB(n),...WB(n)];for(const s of r)this.createProperty(s,n[s])}const e=this[Symbol.metadata];if(e!==null){const n=litPropertyMetadata.get(e);if(n!==void 0)for(const[r,s]of n)this.elementProperties.set(r,s)}this._$Eh=new Map;for(const[n,r]of this.elementProperties){const s=this._$Eu(n,r);s!==void 0&&this._$Eh.set(s,n)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(e){const n=[];if(Array.isArray(e)){const r=new Set(e.flat(1/0).reverse());for(const s of r)n.unshift(zm(s))}else e!==void 0&&n.push(zm(e));return n}static _$Eu(e,n){const r=n.attribute;return r===!1?void 0:typeof r=="string"?r:typeof e=="string"?e.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){var e;this._$ES=new Promise(n=>this.enableUpdating=n),this._$AL=new Map,this._$E_(),this.requestUpdate(),(e=this.constructor.l)==null||e.forEach(n=>n(this))}addController(e){var n;(this._$EO??(this._$EO=new Set)).add(e),this.renderRoot!==void 0&&this.isConnected&&((n=e.hostConnected)==null||n.call(e))}removeController(e){var n;(n=this._$EO)==null||n.delete(e)}_$E_(){const e=new Map,n=this.constructor.elementProperties;for(const r of n.keys())this.hasOwnProperty(r)&&(e.set(r,this[r]),delete this[r]);e.size>0&&(this._$Ep=e)}createRenderRoot(){const e=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return BB(e,this.constructor.elementStyles),e}connectedCallback(){var e;this.renderRoot??(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),(e=this._$EO)==null||e.forEach(n=>{var r;return(r=n.hostConnected)==null?void 0:r.call(n)})}enableUpdating(e){}disconnectedCallback(){var e;(e=this._$EO)==null||e.forEach(n=>{var r;return(r=n.hostDisconnected)==null?void 0:r.call(n)})}attributeChangedCallback(e,n,r){this._$AK(e,r)}_$ET(e,n){var i;const r=this.constructor.elementProperties.get(e),s=this.constructor._$Eu(e,r);if(s!==void 0&&r.reflect===!0){const o=(((i=r.converter)==null?void 0:i.toAttribute)!==void 0?r.converter:rh).toAttribute(n,r.type);this._$Em=e,o==null?this.removeAttribute(s):this.setAttribute(s,o),this._$Em=null}}_$AK(e,n){var i,o;const r=this.constructor,s=r._$Eh.get(e);if(s!==void 0&&this._$Em!==s){const a=r.getPropertyOptions(s),c=typeof a.converter=="function"?{fromAttribute:a.converter}:((i=a.converter)==null?void 0:i.fromAttribute)!==void 0?a.converter:rh;this._$Em=s;const l=c.fromAttribute(n,a.type);this[s]=l??((o=this._$Ej)==null?void 0:o.get(s))??l,this._$Em=null}}requestUpdate(e,n,r,s=!1,i){var o;if(e!==void 0){const a=this.constructor;if(s===!1&&(i=this[e]),r??(r=a.getPropertyOptions(e)),!((r.hasChanged??ib)(i,n)||r.useDefault&&r.reflect&&i===((o=this._$Ej)==null?void 0:o.get(e))&&!this.hasAttribute(a._$Eu(e,r))))return;this.C(e,n,r)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(e,n,{useDefault:r,reflect:s,wrapped:i},o){r&&!(this._$Ej??(this._$Ej=new Map)).has(e)&&(this._$Ej.set(e,o??n??this[e]),i!==!0||o!==void 0)||(this._$AL.has(e)||(this.hasUpdated||r||(n=void 0),this._$AL.set(e,n)),s===!0&&this._$Em!==e&&(this._$Eq??(this._$Eq=new Set)).add(e))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(n){Promise.reject(n)}const e=this.scheduleUpdate();return e!=null&&await e,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var r;if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??(this.renderRoot=this.createRenderRoot()),this._$Ep){for(const[i,o]of this._$Ep)this[i]=o;this._$Ep=void 0}const s=this.constructor.elementProperties;if(s.size>0)for(const[i,o]of s){const{wrapped:a}=o,c=this[i];a!==!0||this._$AL.has(i)||c===void 0||this.C(i,void 0,o,c)}}let e=!1;const n=this._$AL;try{e=this.shouldUpdate(n),e?(this.willUpdate(n),(r=this._$EO)==null||r.forEach(s=>{var i;return(i=s.hostUpdate)==null?void 0:i.call(s)}),this.update(n)):this._$EM()}catch(s){throw e=!1,this._$EM(),s}e&&this._$AE(n)}willUpdate(e){}_$AE(e){var n;(n=this._$EO)==null||n.forEach(r=>{var s;return(s=r.hostUpdated)==null?void 0:s.call(r)}),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(e)),this.updated(e)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(e){return!0}update(e){this._$Eq&&(this._$Eq=this._$Eq.forEach(n=>this._$ET(n,this[n]))),this._$EM()}updated(e){}firstUpdated(e){}};Bi.elementStyles=[],Bi.shadowRootOptions={mode:"open"},Bi[Wo("elementProperties")]=new Map,Bi[Wo("finalized")]=new Map,Wu==null||Wu({ReactiveElement:Bi}),(Cs.reactiveElementVersions??(Cs.reactiveElementVersions=[])).push("2.1.2");/**
|
|
72
|
-
* @license
|
|
73
|
-
* Copyright 2017 Google LLC
|
|
74
|
-
* SPDX-License-Identifier: BSD-3-Clause
|
|
75
|
-
*/const qo=globalThis,Gm=t=>t,el=qo.trustedTypes,Ym=el?el.createPolicy("lit-html",{createHTML:t=>t}):void 0,ob="$lit$",ys=`lit$${Math.random().toFixed(9).slice(2)}$`,ab="?"+ys,zB=`<${ab}>`,fi=document,ma=()=>fi.createComment(""),ya=t=>t===null||typeof t!="object"&&typeof t!="function",rf=Array.isArray,VB=t=>rf(t)||typeof(t==null?void 0:t[Symbol.iterator])=="function",qu=`[
|
|
76
|
-
\f\r]`,So=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,Zm=/-->/g,Jm=/>/g,Ms=RegExp(`>|${qu}(?:([^\\s"'>=/]+)(${qu}*=${qu}*(?:[^
|
|
77
|
-
\f\r"'\`<>=]|("|')|))|$)`,"g"),Xm=/'/g,Qm=/"/g,cb=/^(?:script|style|textarea|title)$/i,lb=t=>(e,...n)=>({_$litType$:t,strings:e,values:n}),_L=lb(1),vL=lb(2),eo=Symbol.for("lit-noChange"),At=Symbol.for("lit-nothing"),ey=new WeakMap,Xs=fi.createTreeWalker(fi,129);function ub(t,e){if(!rf(t)||!t.hasOwnProperty("raw"))throw Error("invalid template strings array");return Ym!==void 0?Ym.createHTML(e):e}const KB=(t,e)=>{const n=t.length-1,r=[];let s,i=e===2?"<svg>":e===3?"<math>":"",o=So;for(let a=0;a<n;a++){const c=t[a];let l,u,d=-1,h=0;for(;h<c.length&&(o.lastIndex=h,u=o.exec(c),u!==null);)h=o.lastIndex,o===So?u[1]==="!--"?o=Zm:u[1]!==void 0?o=Jm:u[2]!==void 0?(cb.test(u[2])&&(s=RegExp("</"+u[2],"g")),o=Ms):u[3]!==void 0&&(o=Ms):o===Ms?u[0]===">"?(o=s??So,d=-1):u[1]===void 0?d=-2:(d=o.lastIndex-u[2].length,l=u[1],o=u[3]===void 0?Ms:u[3]==='"'?Qm:Xm):o===Qm||o===Xm?o=Ms:o===Zm||o===Jm?o=So:(o=Ms,s=void 0);const f=o===Ms&&t[a+1].startsWith("/>")?" ":"";i+=o===So?c+zB:d>=0?(r.push(l),c.slice(0,d)+ob+c.slice(d)+ys+f):c+ys+(d===-2?a:f)}return[ub(t,i+(t[n]||"<?>")+(e===2?"</svg>":e===3?"</math>":"")),r]};class wa{constructor({strings:e,_$litType$:n},r){let s;this.parts=[];let i=0,o=0;const a=e.length-1,c=this.parts,[l,u]=KB(e,n);if(this.el=wa.createElement(l,r),Xs.currentNode=this.el.content,n===2||n===3){const d=this.el.content.firstChild;d.replaceWith(...d.childNodes)}for(;(s=Xs.nextNode())!==null&&c.length<a;){if(s.nodeType===1){if(s.hasAttributes())for(const d of s.getAttributeNames())if(d.endsWith(ob)){const h=u[o++],f=s.getAttribute(d).split(ys),p=/([.?@])?(.*)/.exec(h);c.push({type:1,index:i,name:p[2],strings:f,ctor:p[1]==="."?YB:p[1]==="?"?ZB:p[1]==="@"?JB:Rl}),s.removeAttribute(d)}else d.startsWith(ys)&&(c.push({type:6,index:i}),s.removeAttribute(d));if(cb.test(s.tagName)){const d=s.textContent.split(ys),h=d.length-1;if(h>0){s.textContent=el?el.emptyScript:"";for(let f=0;f<h;f++)s.append(d[f],ma()),Xs.nextNode(),c.push({type:2,index:++i});s.append(d[h],ma())}}}else if(s.nodeType===8)if(s.data===ab)c.push({type:2,index:i});else{let d=-1;for(;(d=s.data.indexOf(ys,d+1))!==-1;)c.push({type:7,index:i}),d+=ys.length-1}i++}}static createElement(e,n){const r=fi.createElement("template");return r.innerHTML=e,r}}function to(t,e,n=t,r){var o,a;if(e===eo)return e;let s=r!==void 0?(o=n._$Co)==null?void 0:o[r]:n._$Cl;const i=ya(e)?void 0:e._$litDirective$;return(s==null?void 0:s.constructor)!==i&&((a=s==null?void 0:s._$AO)==null||a.call(s,!1),i===void 0?s=void 0:(s=new i(t),s._$AT(t,n,r)),r!==void 0?(n._$Co??(n._$Co=[]))[r]=s:n._$Cl=s),s!==void 0&&(e=to(t,s._$AS(t,e.values),s,r)),e}class GB{constructor(e,n){this._$AV=[],this._$AN=void 0,this._$AD=e,this._$AM=n}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(e){const{el:{content:n},parts:r}=this._$AD,s=((e==null?void 0:e.creationScope)??fi).importNode(n,!0);Xs.currentNode=s;let i=Xs.nextNode(),o=0,a=0,c=r[0];for(;c!==void 0;){if(o===c.index){let l;c.type===2?l=new ka(i,i.nextSibling,this,e):c.type===1?l=new c.ctor(i,c.name,c.strings,this,e):c.type===6&&(l=new XB(i,this,e)),this._$AV.push(l),c=r[++a]}o!==(c==null?void 0:c.index)&&(i=Xs.nextNode(),o++)}return Xs.currentNode=fi,s}p(e){let n=0;for(const r of this._$AV)r!==void 0&&(r.strings!==void 0?(r._$AI(e,r,n),n+=r.strings.length-2):r._$AI(e[n])),n++}}class ka{get _$AU(){var e;return((e=this._$AM)==null?void 0:e._$AU)??this._$Cv}constructor(e,n,r,s){this.type=2,this._$AH=At,this._$AN=void 0,this._$AA=e,this._$AB=n,this._$AM=r,this.options=s,this._$Cv=(s==null?void 0:s.isConnected)??!0}get parentNode(){let e=this._$AA.parentNode;const n=this._$AM;return n!==void 0&&(e==null?void 0:e.nodeType)===11&&(e=n.parentNode),e}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(e,n=this){e=to(this,e,n),ya(e)?e===At||e==null||e===""?(this._$AH!==At&&this._$AR(),this._$AH=At):e!==this._$AH&&e!==eo&&this._(e):e._$litType$!==void 0?this.$(e):e.nodeType!==void 0?this.T(e):VB(e)?this.k(e):this._(e)}O(e){return this._$AA.parentNode.insertBefore(e,this._$AB)}T(e){this._$AH!==e&&(this._$AR(),this._$AH=this.O(e))}_(e){this._$AH!==At&&ya(this._$AH)?this._$AA.nextSibling.data=e:this.T(fi.createTextNode(e)),this._$AH=e}$(e){var i;const{values:n,_$litType$:r}=e,s=typeof r=="number"?this._$AC(e):(r.el===void 0&&(r.el=wa.createElement(ub(r.h,r.h[0]),this.options)),r);if(((i=this._$AH)==null?void 0:i._$AD)===s)this._$AH.p(n);else{const o=new GB(s,this),a=o.u(this.options);o.p(n),this.T(a),this._$AH=o}}_$AC(e){let n=ey.get(e.strings);return n===void 0&&ey.set(e.strings,n=new wa(e)),n}k(e){rf(this._$AH)||(this._$AH=[],this._$AR());const n=this._$AH;let r,s=0;for(const i of e)s===n.length?n.push(r=new ka(this.O(ma()),this.O(ma()),this,this.options)):r=n[s],r._$AI(i),s++;s<n.length&&(this._$AR(r&&r._$AB.nextSibling,s),n.length=s)}_$AR(e=this._$AA.nextSibling,n){var r;for((r=this._$AP)==null?void 0:r.call(this,!1,!0,n);e!==this._$AB;){const s=Gm(e).nextSibling;Gm(e).remove(),e=s}}setConnected(e){var n;this._$AM===void 0&&(this._$Cv=e,(n=this._$AP)==null||n.call(this,e))}}class Rl{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(e,n,r,s,i){this.type=1,this._$AH=At,this._$AN=void 0,this.element=e,this.name=n,this._$AM=s,this.options=i,r.length>2||r[0]!==""||r[1]!==""?(this._$AH=Array(r.length-1).fill(new String),this.strings=r):this._$AH=At}_$AI(e,n=this,r,s){const i=this.strings;let o=!1;if(i===void 0)e=to(this,e,n,0),o=!ya(e)||e!==this._$AH&&e!==eo,o&&(this._$AH=e);else{const a=e;let c,l;for(e=i[0],c=0;c<i.length-1;c++)l=to(this,a[r+c],n,c),l===eo&&(l=this._$AH[c]),o||(o=!ya(l)||l!==this._$AH[c]),l===At?e=At:e!==At&&(e+=(l??"")+i[c+1]),this._$AH[c]=l}o&&!s&&this.j(e)}j(e){e===At?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,e??"")}}class YB extends Rl{constructor(){super(...arguments),this.type=3}j(e){this.element[this.name]=e===At?void 0:e}}class ZB extends Rl{constructor(){super(...arguments),this.type=4}j(e){this.element.toggleAttribute(this.name,!!e&&e!==At)}}class JB extends Rl{constructor(e,n,r,s,i){super(e,n,r,s,i),this.type=5}_$AI(e,n=this){if((e=to(this,e,n,0)??At)===eo)return;const r=this._$AH,s=e===At&&r!==At||e.capture!==r.capture||e.once!==r.once||e.passive!==r.passive,i=e!==At&&(r===At||s);s&&this.element.removeEventListener(this.name,this,r),i&&this.element.addEventListener(this.name,this,e),this._$AH=e}handleEvent(e){var n;typeof this._$AH=="function"?this._$AH.call(((n=this.options)==null?void 0:n.host)??this.element,e):this._$AH.handleEvent(e)}}class XB{constructor(e,n,r){this.element=e,this.type=6,this._$AN=void 0,this._$AM=n,this.options=r}get _$AU(){return this._$AM._$AU}_$AI(e){to(this,e)}}const Hu=qo.litHtmlPolyfillSupport;Hu==null||Hu(wa,ka),(qo.litHtmlVersions??(qo.litHtmlVersions=[])).push("3.3.2");const QB=(t,e,n)=>{const r=(n==null?void 0:n.renderBefore)??e;let s=r._$litPart$;if(s===void 0){const i=(n==null?void 0:n.renderBefore)??null;r._$litPart$=s=new ka(e.insertBefore(ma(),i),i,void 0,n??{})}return s._$AI(t),s};/**
|
|
78
|
-
* @license
|
|
79
|
-
* Copyright 2017 Google LLC
|
|
80
|
-
* SPDX-License-Identifier: BSD-3-Clause
|
|
81
|
-
*/const ni=globalThis;class _c extends Bi{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){var n;const e=super.createRenderRoot();return(n=this.renderOptions).renderBefore??(n.renderBefore=e.firstChild),e}update(e){const n=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(e),this._$Do=QB(n,this.renderRoot,this.renderOptions)}connectedCallback(){var e;super.connectedCallback(),(e=this._$Do)==null||e.setConnected(!0)}disconnectedCallback(){var e;super.disconnectedCallback(),(e=this._$Do)==null||e.setConnected(!1)}render(){return eo}}var ry;_c._$litElement$=!0,_c.finalized=!0,(ry=ni.litElementHydrateSupport)==null||ry.call(ni,{LitElement:_c});const zu=ni.litElementPolyfillSupport;zu==null||zu({LitElement:_c});(ni.litElementVersions??(ni.litElementVersions=[])).push("4.2.2");const eF={black:"#202020",white:"#FFFFFF",white010:"rgba(255, 255, 255, 0.1)",accent010:"rgba(9, 136, 240, 0.1)",accent020:"rgba(9, 136, 240, 0.2)",accent030:"rgba(9, 136, 240, 0.3)",accent040:"rgba(9, 136, 240, 0.4)",accent050:"rgba(9, 136, 240, 0.5)",accent060:"rgba(9, 136, 240, 0.6)",accent070:"rgba(9, 136, 240, 0.7)",accent080:"rgba(9, 136, 240, 0.8)",accent090:"rgba(9, 136, 240, 0.9)",accent100:"rgba(9, 136, 240, 1.0)",accentSecondary010:"rgba(199, 185, 148, 0.1)",accentSecondary020:"rgba(199, 185, 148, 0.2)",accentSecondary030:"rgba(199, 185, 148, 0.3)",accentSecondary040:"rgba(199, 185, 148, 0.4)",accentSecondary050:"rgba(199, 185, 148, 0.5)",accentSecondary060:"rgba(199, 185, 148, 0.6)",accentSecondary070:"rgba(199, 185, 148, 0.7)",accentSecondary080:"rgba(199, 185, 148, 0.8)",accentSecondary090:"rgba(199, 185, 148, 0.9)",accentSecondary100:"rgba(199, 185, 148, 1.0)",productWalletKit:"#FFB800",productAppKit:"#FF573B",productCloud:"#0988F0",productDocumentation:"#008847",neutrals050:"#F6F6F6",neutrals100:"#F3F3F3",neutrals200:"#E9E9E9",neutrals300:"#D0D0D0",neutrals400:"#BBB",neutrals500:"#9A9A9A",neutrals600:"#6C6C6C",neutrals700:"#4F4F4F",neutrals800:"#363636",neutrals900:"#2A2A2A",neutrals1000:"#252525",semanticSuccess010:"rgba(48, 164, 107, 0.1)",semanticSuccess020:"rgba(48, 164, 107, 0.2)",semanticSuccess030:"rgba(48, 164, 107, 0.3)",semanticSuccess040:"rgba(48, 164, 107, 0.4)",semanticSuccess050:"rgba(48, 164, 107, 0.5)",semanticSuccess060:"rgba(48, 164, 107, 0.6)",semanticSuccess070:"rgba(48, 164, 107, 0.7)",semanticSuccess080:"rgba(48, 164, 107, 0.8)",semanticSuccess090:"rgba(48, 164, 107, 0.9)",semanticSuccess100:"rgba(48, 164, 107, 1.0)",semanticError010:"rgba(223, 74, 52, 0.1)",semanticError020:"rgba(223, 74, 52, 0.2)",semanticError030:"rgba(223, 74, 52, 0.3)",semanticError040:"rgba(223, 74, 52, 0.4)",semanticError050:"rgba(223, 74, 52, 0.5)",semanticError060:"rgba(223, 74, 52, 0.6)",semanticError070:"rgba(223, 74, 52, 0.7)",semanticError080:"rgba(223, 74, 52, 0.8)",semanticError090:"rgba(223, 74, 52, 0.9)",semanticError100:"rgba(223, 74, 52, 1.0)",semanticWarning010:"rgba(243, 161, 63, 0.1)",semanticWarning020:"rgba(243, 161, 63, 0.2)",semanticWarning030:"rgba(243, 161, 63, 0.3)",semanticWarning040:"rgba(243, 161, 63, 0.4)",semanticWarning050:"rgba(243, 161, 63, 0.5)",semanticWarning060:"rgba(243, 161, 63, 0.6)",semanticWarning070:"rgba(243, 161, 63, 0.7)",semanticWarning080:"rgba(243, 161, 63, 0.8)",semanticWarning090:"rgba(243, 161, 63, 0.9)",semanticWarning100:"rgba(243, 161, 63, 1.0)"},tl={core:{backgroundAccentPrimary:"#0988F0",backgroundAccentCertified:"#C7B994",backgroundWalletKit:"#FFB800",backgroundAppKit:"#FF573B",backgroundCloud:"#0988F0",backgroundDocumentation:"#008847",backgroundSuccess:"rgba(48, 164, 107, 0.20)",backgroundError:"rgba(223, 74, 52, 0.20)",backgroundWarning:"rgba(243, 161, 63, 0.20)",textAccentPrimary:"#0988F0",textAccentCertified:"#C7B994",textWalletKit:"#FFB800",textAppKit:"#FF573B",textCloud:"#0988F0",textDocumentation:"#008847",textSuccess:"#30A46B",textError:"#DF4A34",textWarning:"#F3A13F",borderAccentPrimary:"#0988F0",borderSecondary:"#C7B994",borderSuccess:"#30A46B",borderError:"#DF4A34",borderWarning:"#F3A13F",foregroundAccent010:"rgba(9, 136, 240, 0.1)",foregroundAccent020:"rgba(9, 136, 240, 0.2)",foregroundAccent040:"rgba(9, 136, 240, 0.4)",foregroundAccent060:"rgba(9, 136, 240, 0.6)",foregroundSecondary020:"rgba(199, 185, 148, 0.2)",foregroundSecondary040:"rgba(199, 185, 148, 0.4)",foregroundSecondary060:"rgba(199, 185, 148, 0.6)",iconAccentPrimary:"#0988F0",iconAccentCertified:"#C7B994",iconSuccess:"#30A46B",iconError:"#DF4A34",iconWarning:"#F3A13F",glass010:"rgba(255, 255, 255, 0.1)",zIndex:"9999"},dark:{overlay:"rgba(0, 0, 0, 0.50)",backgroundPrimary:"#202020",backgroundInvert:"#FFFFFF",textPrimary:"#FFFFFF",textSecondary:"#9A9A9A",textTertiary:"#BBBBBB",textInvert:"#202020",borderPrimary:"#2A2A2A",borderPrimaryDark:"#363636",borderSecondary:"#4F4F4F",foregroundPrimary:"#252525",foregroundSecondary:"#2A2A2A",foregroundTertiary:"#363636",iconDefault:"#9A9A9A",iconInverse:"#FFFFFF"},light:{overlay:"rgba(230 , 230, 230, 0.5)",backgroundPrimary:"#FFFFFF",borderPrimaryDark:"#E9E9E9",backgroundInvert:"#202020",textPrimary:"#202020",textSecondary:"#9A9A9A",textTertiary:"#6C6C6C",textInvert:"#FFFFFF",borderPrimary:"#E9E9E9",borderSecondary:"#D0D0D0",foregroundPrimary:"#F3F3F3",foregroundSecondary:"#E9E9E9",foregroundTertiary:"#D0D0D0",iconDefault:"#9A9A9A",iconInverse:"#202020"}},tF={1:"4px",2:"8px",10:"10px",3:"12px",4:"16px",6:"24px",5:"20px",8:"32px",16:"64px",20:"80px",32:"128px",64:"256px",128:"512px",round:"9999px"},nF={0:"0px","01":"2px",1:"4px",2:"8px",3:"12px",4:"16px",5:"20px",6:"24px",7:"28px",8:"32px",9:"36px",10:"40px",12:"48px",14:"56px",16:"64px",20:"80px",32:"128px",64:"256px"},rF={regular:"KHTeka",mono:"KHTekaMono"},sF={regular:"400",medium:"500"},iF={h1:"50px",h2:"44px",h3:"38px",h4:"32px",h5:"26px",h6:"20px",large:"16px",medium:"14px",small:"12px"},oF={"h1-regular-mono":{lineHeight:"50px",letterSpacing:"-3px"},"h1-regular":{lineHeight:"50px",letterSpacing:"-1px"},"h1-medium":{lineHeight:"50px",letterSpacing:"-0.84px"},"h2-regular-mono":{lineHeight:"44px",letterSpacing:"-2.64px"},"h2-regular":{lineHeight:"44px",letterSpacing:"-0.88px"},"h2-medium":{lineHeight:"44px",letterSpacing:"-0.88px"},"h3-regular-mono":{lineHeight:"38px",letterSpacing:"-2.28px"},"h3-regular":{lineHeight:"38px",letterSpacing:"-0.76px"},"h3-medium":{lineHeight:"38px",letterSpacing:"-0.76px"},"h4-regular-mono":{lineHeight:"32px",letterSpacing:"-1.92px"},"h4-regular":{lineHeight:"32px",letterSpacing:"-0.32px"},"h4-medium":{lineHeight:"32px",letterSpacing:"-0.32px"},"h5-regular-mono":{lineHeight:"26px",letterSpacing:"-1.56px"},"h5-regular":{lineHeight:"26px",letterSpacing:"-0.26px"},"h5-medium":{lineHeight:"26px",letterSpacing:"-0.26px"},"h6-regular-mono":{lineHeight:"20px",letterSpacing:"-1.2px"},"h6-regular":{lineHeight:"20px",letterSpacing:"-0.6px"},"h6-medium":{lineHeight:"20px",letterSpacing:"-0.6px"},"lg-regular-mono":{lineHeight:"16px",letterSpacing:"-0.96px"},"lg-regular":{lineHeight:"18px",letterSpacing:"-0.16px"},"lg-medium":{lineHeight:"18px",letterSpacing:"-0.16px"},"md-regular-mono":{lineHeight:"14px",letterSpacing:"-0.84px"},"md-regular":{lineHeight:"16px",letterSpacing:"-0.14px"},"md-medium":{lineHeight:"16px",letterSpacing:"-0.14px"},"sm-regular-mono":{lineHeight:"12px",letterSpacing:"-0.72px"},"sm-regular":{lineHeight:"14px",letterSpacing:"-0.12px"},"sm-medium":{lineHeight:"14px",letterSpacing:"-0.12px"}},aF={"ease-out-power-2":"cubic-bezier(0.23, 0.09, 0.08, 1.13)","ease-out-power-1":"cubic-bezier(0.12, 0.04, 0.2, 1.06)","ease-in-power-2":"cubic-bezier(0.92, -0.13, 0.77, 0.91)","ease-in-power-1":"cubic-bezier(0.88, -0.06, 0.8, 0.96)","ease-inout-power-2":"cubic-bezier(0.77, 0.09, 0.23, 1.13)","ease-inout-power-1":"cubic-bezier(0.88, 0.04, 0.12, 1.06)"},cF={xl:"400ms",lg:"200ms",md:"125ms",sm:"75ms"},sh={colors:eF,fontFamily:rF,fontWeight:sF,textSize:iF,typography:oF,tokens:{core:tl.core,theme:tl.dark},borderRadius:tF,spacing:nF,durations:cF,easings:aF},ty="--apkt";function ac(t){if(!t)return{};const e={};return e["font-family"]=t["--apkt-font-family"]??t["--w3m-font-family"]??"KHTeka",e.accent=t["--apkt-accent"]??t["--w3m-accent"]??"#0988F0",e["color-mix"]=t["--apkt-color-mix"]??t["--w3m-color-mix"]??"#000",e["color-mix-strength"]=t["--apkt-color-mix-strength"]??t["--w3m-color-mix-strength"]??0,e["font-size-master"]=t["--apkt-font-size-master"]??t["--w3m-font-size-master"]??"10px",e["border-radius-master"]=t["--apkt-border-radius-master"]??t["--w3m-border-radius-master"]??"4px",t["--apkt-z-index"]!==void 0?e["z-index"]=t["--apkt-z-index"]:t["--w3m-z-index"]!==void 0&&(e["z-index"]=t["--w3m-z-index"]),e}const Br={createCSSVariables(t){const e={},n={};function r(i,o,a=""){for(const[c,l]of Object.entries(i)){const u=a?`${a}-${c}`:c;l&&typeof l=="object"&&Object.keys(l).length?(o[c]={},r(l,o[c],u)):typeof l=="string"&&(o[c]=`${ty}-${u}`)}}function s(i,o){for(const[a,c]of Object.entries(i))c&&typeof c=="object"?(o[a]={},s(c,o[a])):typeof c=="string"&&(o[a]=`var(${c})`)}return r(t,e),s(e,n),{cssVariables:e,cssVariablesVarPrefix:n}},assignCSSVariables(t,e){const n={};function r(s,i,o){for(const[a,c]of Object.entries(s)){const l=o?`${o}-${a}`:a,u=i[a];c&&typeof c=="object"?r(c,u,l):typeof u=="string"&&(n[`${ty}-${l}`]=u)}}return r(t,e),n},createRootStyles(t,e){const n={...sh,tokens:{...sh.tokens,theme:t==="light"?tl.light:tl.dark}},{cssVariables:r}=Br.createCSSVariables(n),s=Br.assignCSSVariables(r,n),i=Br.generateW3MVariables(e),o=Br.generateW3MOverrides(e),a=Br.generateScaledVariables(e),c=Br.generateBaseVariables(s),l={...s,...c,...i,...o,...a},u=Br.applyColorMixToVariables(e,l),d={...l,...u};return`:root {${Object.entries(d).map(([f,p])=>`${f}:${p.replace("/[:;{}</>]/g","")};`).join("")}}`},generateW3MVariables(t){if(!t)return{};const e=ac(t),n={};return n["--w3m-font-family"]=e["font-family"],n["--w3m-accent"]=e.accent,n["--w3m-color-mix"]=e["color-mix"],n["--w3m-color-mix-strength"]=`${e["color-mix-strength"]}%`,n["--w3m-font-size-master"]=e["font-size-master"],n["--w3m-border-radius-master"]=e["border-radius-master"],n},generateW3MOverrides(t){if(!t)return{};const e=ac(t),n={};if(t["--apkt-accent"]||t["--w3m-accent"]){const r=e.accent;n["--apkt-tokens-core-iconAccentPrimary"]=r,n["--apkt-tokens-core-borderAccentPrimary"]=r,n["--apkt-tokens-core-textAccentPrimary"]=r,n["--apkt-tokens-core-backgroundAccentPrimary"]=r}return(t["--apkt-font-family"]||t["--w3m-font-family"])&&(n["--apkt-fontFamily-regular"]=e["font-family"]),e["z-index"]!==void 0&&(n["--apkt-tokens-core-zIndex"]=`${e["z-index"]}`),n},generateScaledVariables(t){if(!t)return{};const e=ac(t),n={};if(t["--apkt-font-size-master"]||t["--w3m-font-size-master"]){const r=parseFloat(e["font-size-master"].replace("px",""));n["--apkt-textSize-h1"]=`${Number(r)*5}px`,n["--apkt-textSize-h2"]=`${Number(r)*4.4}px`,n["--apkt-textSize-h3"]=`${Number(r)*3.8}px`,n["--apkt-textSize-h4"]=`${Number(r)*3.2}px`,n["--apkt-textSize-h5"]=`${Number(r)*2.6}px`,n["--apkt-textSize-h6"]=`${Number(r)*2}px`,n["--apkt-textSize-large"]=`${Number(r)*1.6}px`,n["--apkt-textSize-medium"]=`${Number(r)*1.4}px`,n["--apkt-textSize-small"]=`${Number(r)*1.2}px`}if(t["--apkt-border-radius-master"]||t["--w3m-border-radius-master"]){const r=parseFloat(e["border-radius-master"].replace("px",""));n["--apkt-borderRadius-1"]=`${Number(r)}px`,n["--apkt-borderRadius-2"]=`${Number(r)*2}px`,n["--apkt-borderRadius-3"]=`${Number(r)*3}px`,n["--apkt-borderRadius-4"]=`${Number(r)*4}px`,n["--apkt-borderRadius-5"]=`${Number(r)*5}px`,n["--apkt-borderRadius-6"]=`${Number(r)*6}px`,n["--apkt-borderRadius-8"]=`${Number(r)*8}px`,n["--apkt-borderRadius-16"]=`${Number(r)*16}px`,n["--apkt-borderRadius-20"]=`${Number(r)*20}px`,n["--apkt-borderRadius-32"]=`${Number(r)*32}px`,n["--apkt-borderRadius-64"]=`${Number(r)*64}px`,n["--apkt-borderRadius-128"]=`${Number(r)*128}px`}return n},generateColorMixCSS(t,e){if(!(t!=null&&t["--w3m-color-mix"])||!t["--w3m-color-mix-strength"])return"";const n=t["--w3m-color-mix"],r=t["--w3m-color-mix-strength"];if(!r||r===0)return"";const s=Object.keys(e||{}).filter(o=>{const a=o.includes("-tokens-core-background")||o.includes("-tokens-core-text")||o.includes("-tokens-core-border")||o.includes("-tokens-core-foreground")||o.includes("-tokens-core-icon")||o.includes("-tokens-theme-background")||o.includes("-tokens-theme-text")||o.includes("-tokens-theme-border")||o.includes("-tokens-theme-foreground")||o.includes("-tokens-theme-icon"),c=o.includes("-borderRadius-")||o.includes("-spacing-")||o.includes("-textSize-")||o.includes("-fontFamily-")||o.includes("-fontWeight-")||o.includes("-typography-")||o.includes("-duration-")||o.includes("-ease-")||o.includes("-path-")||o.includes("-width-")||o.includes("-height-")||o.includes("-visual-size-")||o.includes("-modal-width")||o.includes("-cover");return a&&!c});return s.length===0?"":` @supports (background: color-mix(in srgb, white 50%, black)) {
|
|
82
|
-
:root {
|
|
83
|
-
${s.map(o=>{const a=(e==null?void 0:e[o])||"";return a.includes("color-mix")||a.startsWith("#")||a.startsWith("rgb")?`${o}: color-mix(in srgb, ${n} ${r}%, ${a});`:`${o}: color-mix(in srgb, ${n} ${r}%, var(${o}-base, ${a}));`}).join("")}
|
|
84
|
-
}
|
|
85
|
-
}`},generateBaseVariables(t){const e={},n=t["--apkt-tokens-theme-backgroundPrimary"];n&&(e["--apkt-tokens-theme-backgroundPrimary-base"]=n);const r=t["--apkt-tokens-core-backgroundAccentPrimary"];return r&&(e["--apkt-tokens-core-backgroundAccentPrimary-base"]=r),e},applyColorMixToVariables(t,e){const n={};e!=null&&e["--apkt-tokens-theme-backgroundPrimary"]&&(n["--apkt-tokens-theme-backgroundPrimary"]="var(--apkt-tokens-theme-backgroundPrimary-base)"),e!=null&&e["--apkt-tokens-core-backgroundAccentPrimary"]&&(n["--apkt-tokens-core-backgroundAccentPrimary"]="var(--apkt-tokens-core-backgroundAccentPrimary-base)");const r=ac(t),s=r["color-mix"],i=r["color-mix-strength"];if(!i||i===0)return n;const o=Object.keys(e||{}).filter(a=>{const c=a.includes("-tokens-core-background")||a.includes("-tokens-core-text")||a.includes("-tokens-core-border")||a.includes("-tokens-core-foreground")||a.includes("-tokens-core-icon")||a.includes("-tokens-theme-background")||a.includes("-tokens-theme-text")||a.includes("-tokens-theme-border")||a.includes("-tokens-theme-foreground")||a.includes("-tokens-theme-icon")||a.includes("-tokens-theme-overlay"),l=a.includes("-borderRadius-")||a.includes("-spacing-")||a.includes("-textSize-")||a.includes("-fontFamily-")||a.includes("-fontWeight-")||a.includes("-typography-")||a.includes("-duration-")||a.includes("-ease-")||a.includes("-path-")||a.includes("-width-")||a.includes("-height-")||a.includes("-visual-size-")||a.includes("-modal-width")||a.includes("-cover");return c&&!l});return o.length===0||o.forEach(a=>{const c=(e==null?void 0:e[a])||"";a.endsWith("-base")||(a==="--apkt-tokens-theme-backgroundPrimary"||a==="--apkt-tokens-core-backgroundAccentPrimary"?n[a]=`color-mix(in srgb, ${s} ${i}%, var(${a}-base))`:c.includes("color-mix")||c.startsWith("#")||c.startsWith("rgb")?n[a]=`color-mix(in srgb, ${s} ${i}%, ${c})`:n[a]=`color-mix(in srgb, ${s} ${i}%, var(${a}-base, ${c}))`)}),n}},{cssVariablesVarPrefix:lF}=Br.createCSSVariables(sh);function CL(t,...e){return ms(t,...e.map(n=>Zn(typeof n=="function"?n(lF):n)))}let Vs,Qs,yr,Sn,nl;const Ur={"KHTeka-500-woff2":"https://fonts.reown.com/KHTeka-Medium.woff2","KHTeka-400-woff2":"https://fonts.reown.com/KHTeka-Regular.woff2","KHTeka-300-woff2":"https://fonts.reown.com/KHTeka-Light.woff2","KHTekaMono-400-woff2":"https://fonts.reown.com/KHTekaMono-Regular.woff2","KHTeka-500-woff":"https://fonts.reown.com/KHTeka-Light.woff","KHTeka-400-woff":"https://fonts.reown.com/KHTeka-Regular.woff","KHTeka-300-woff":"https://fonts.reown.com/KHTeka-Light.woff","KHTekaMono-400-woff":"https://fonts.reown.com/KHTekaMono-Regular.woff"};function rl(t,e="dark"){Vs&&document.head.removeChild(Vs),Vs=document.createElement("style"),Vs.textContent=Br.createRootStyles(e,t),document.head.appendChild(Vs)}function AL(t,e="dark"){if(nl=t,Qs=document.createElement("style"),yr=document.createElement("style"),Sn=document.createElement("style"),Qs.textContent=Yi(t).core.cssText,yr.textContent=Yi(t).dark.cssText,Sn.textContent=Yi(t).light.cssText,document.head.appendChild(Qs),document.head.appendChild(yr),document.head.appendChild(Sn),rl(t,e),ih(e),!((t==null?void 0:t["--apkt-font-family"])||(t==null?void 0:t["--w3m-font-family"])))for(const[r,s]of Object.entries(Ur)){const i=document.createElement("link");i.rel="preload",i.href=s,i.as="font",i.type=r.includes("woff2")?"font/woff2":"font/woff",i.crossOrigin="anonymous",document.head.appendChild(i)}ih(e)}function ih(t="dark"){yr&&Sn&&Vs&&(t==="light"?(rl(nl,t),yr.removeAttribute("media"),Sn.media="enabled"):(rl(nl,t),Sn.removeAttribute("media"),yr.media="enabled"))}function uF(t){var e,n,r;if(nl=t,Qs&&yr&&Sn){Qs.textContent=Yi(t).core.cssText,yr.textContent=Yi(t).dark.cssText,Sn.textContent=Yi(t).light.cssText;const s=(t==null?void 0:t["--apkt-font-family"])||(t==null?void 0:t["--w3m-font-family"]);s&&(Qs.textContent=(e=Qs.textContent)==null?void 0:e.replace("font-family: KHTeka",`font-family: ${s}`),yr.textContent=(n=yr.textContent)==null?void 0:n.replace("font-family: KHTeka",`font-family: ${s}`),Sn.textContent=(r=Sn.textContent)==null?void 0:r.replace("font-family: KHTeka",`font-family: ${s}`))}if(Vs){const s=(Sn==null?void 0:Sn.media)==="enabled"?"light":"dark";rl(t,s)}}function Yi(t){const e=!!(t!=null&&t["--apkt-font-family"]||t!=null&&t["--w3m-font-family"]);return{core:ms`
|
|
86
|
-
${e?ms``:ms`
|
|
87
|
-
@font-face {
|
|
88
|
-
font-family: 'KHTeka';
|
|
89
|
-
src:
|
|
90
|
-
url(${Zn(Ur["KHTeka-400-woff2"])}) format('woff2'),
|
|
91
|
-
url(${Zn(Ur["KHTeka-400-woff"])}) format('woff');
|
|
92
|
-
font-weight: 400;
|
|
93
|
-
font-style: normal;
|
|
94
|
-
font-display: swap;
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
@font-face {
|
|
98
|
-
font-family: 'KHTeka';
|
|
99
|
-
src:
|
|
100
|
-
url(${Zn(Ur["KHTeka-300-woff2"])}) format('woff2'),
|
|
101
|
-
url(${Zn(Ur["KHTeka-300-woff"])}) format('woff');
|
|
102
|
-
font-weight: 300;
|
|
103
|
-
font-style: normal;
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
@font-face {
|
|
107
|
-
font-family: 'KHTekaMono';
|
|
108
|
-
src:
|
|
109
|
-
url(${Zn(Ur["KHTekaMono-400-woff2"])}) format('woff2'),
|
|
110
|
-
url(${Zn(Ur["KHTekaMono-400-woff"])}) format('woff');
|
|
111
|
-
font-weight: 400;
|
|
112
|
-
font-style: normal;
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
@font-face {
|
|
116
|
-
font-family: 'KHTeka';
|
|
117
|
-
src:
|
|
118
|
-
url(${Zn(Ur["KHTeka-400-woff2"])}) format('woff2'),
|
|
119
|
-
url(${Zn(Ur["KHTeka-400-woff"])}) format('woff');
|
|
120
|
-
font-weight: 400;
|
|
121
|
-
font-style: normal;
|
|
122
|
-
}
|
|
123
|
-
`}
|
|
124
|
-
|
|
125
|
-
@keyframes w3m-shake {
|
|
126
|
-
0% {
|
|
127
|
-
transform: scale(1) rotate(0deg);
|
|
128
|
-
}
|
|
129
|
-
20% {
|
|
130
|
-
transform: scale(1) rotate(-1deg);
|
|
131
|
-
}
|
|
132
|
-
40% {
|
|
133
|
-
transform: scale(1) rotate(1.5deg);
|
|
134
|
-
}
|
|
135
|
-
60% {
|
|
136
|
-
transform: scale(1) rotate(-1.5deg);
|
|
137
|
-
}
|
|
138
|
-
80% {
|
|
139
|
-
transform: scale(1) rotate(1deg);
|
|
140
|
-
}
|
|
141
|
-
100% {
|
|
142
|
-
transform: scale(1) rotate(0deg);
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
@keyframes w3m-iframe-fade-out {
|
|
146
|
-
0% {
|
|
147
|
-
opacity: 1;
|
|
148
|
-
}
|
|
149
|
-
100% {
|
|
150
|
-
opacity: 0;
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
@keyframes w3m-iframe-zoom-in {
|
|
154
|
-
0% {
|
|
155
|
-
transform: translateY(50px);
|
|
156
|
-
opacity: 0;
|
|
157
|
-
}
|
|
158
|
-
100% {
|
|
159
|
-
transform: translateY(0px);
|
|
160
|
-
opacity: 1;
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
@keyframes w3m-iframe-zoom-in-mobile {
|
|
164
|
-
0% {
|
|
165
|
-
transform: scale(0.95);
|
|
166
|
-
opacity: 0;
|
|
167
|
-
}
|
|
168
|
-
100% {
|
|
169
|
-
transform: scale(1);
|
|
170
|
-
opacity: 1;
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
:root {
|
|
174
|
-
--apkt-modal-width: 370px;
|
|
175
|
-
|
|
176
|
-
--apkt-visual-size-inherit: inherit;
|
|
177
|
-
--apkt-visual-size-sm: 40px;
|
|
178
|
-
--apkt-visual-size-md: 55px;
|
|
179
|
-
--apkt-visual-size-lg: 80px;
|
|
180
|
-
|
|
181
|
-
--apkt-path-network-sm: path(
|
|
182
|
-
'M15.4 2.1a5.21 5.21 0 0 1 5.2 0l11.61 6.7a5.21 5.21 0 0 1 2.61 4.52v13.4c0 1.87-1 3.59-2.6 4.52l-11.61 6.7c-1.62.93-3.6.93-5.22 0l-11.6-6.7a5.21 5.21 0 0 1-2.61-4.51v-13.4c0-1.87 1-3.6 2.6-4.52L15.4 2.1Z'
|
|
183
|
-
);
|
|
184
|
-
|
|
185
|
-
--apkt-path-network-md: path(
|
|
186
|
-
'M43.4605 10.7248L28.0485 1.61089C25.5438 0.129705 22.4562 0.129705 19.9515 1.61088L4.53951 10.7248C2.03626 12.2051 0.5 14.9365 0.5 17.886V36.1139C0.5 39.0635 2.03626 41.7949 4.53951 43.2752L19.9515 52.3891C22.4562 53.8703 25.5438 53.8703 28.0485 52.3891L43.4605 43.2752C45.9637 41.7949 47.5 39.0635 47.5 36.114V17.8861C47.5 14.9365 45.9637 12.2051 43.4605 10.7248Z'
|
|
187
|
-
);
|
|
188
|
-
|
|
189
|
-
--apkt-path-network-lg: path(
|
|
190
|
-
'M78.3244 18.926L50.1808 2.45078C45.7376 -0.150261 40.2624 -0.150262 35.8192 2.45078L7.6756 18.926C3.23322 21.5266 0.5 26.3301 0.5 31.5248V64.4752C0.5 69.6699 3.23322 74.4734 7.6756 77.074L35.8192 93.5492C40.2624 96.1503 45.7376 96.1503 50.1808 93.5492L78.3244 77.074C82.7668 74.4734 85.5 69.6699 85.5 64.4752V31.5248C85.5 26.3301 82.7668 21.5266 78.3244 18.926Z'
|
|
191
|
-
);
|
|
192
|
-
|
|
193
|
-
--apkt-width-network-sm: 36px;
|
|
194
|
-
--apkt-width-network-md: 48px;
|
|
195
|
-
--apkt-width-network-lg: 86px;
|
|
196
|
-
|
|
197
|
-
--apkt-duration-dynamic: 0ms;
|
|
198
|
-
--apkt-height-network-sm: 40px;
|
|
199
|
-
--apkt-height-network-md: 54px;
|
|
200
|
-
--apkt-height-network-lg: 96px;
|
|
201
|
-
}
|
|
202
|
-
`,dark:ms`
|
|
203
|
-
:root {
|
|
204
|
-
}
|
|
205
|
-
`,light:ms`
|
|
206
|
-
:root {
|
|
207
|
-
}
|
|
208
|
-
`}}const SL=ms`
|
|
209
|
-
div,
|
|
210
|
-
span,
|
|
211
|
-
iframe,
|
|
212
|
-
a,
|
|
213
|
-
img,
|
|
214
|
-
form,
|
|
215
|
-
button,
|
|
216
|
-
label,
|
|
217
|
-
*::after,
|
|
218
|
-
*::before {
|
|
219
|
-
margin: 0;
|
|
220
|
-
padding: 0;
|
|
221
|
-
box-sizing: border-box;
|
|
222
|
-
font-style: normal;
|
|
223
|
-
text-rendering: optimizeSpeed;
|
|
224
|
-
-webkit-font-smoothing: antialiased;
|
|
225
|
-
-moz-osx-font-smoothing: grayscale;
|
|
226
|
-
-webkit-tap-highlight-color: transparent;
|
|
227
|
-
backface-visibility: hidden;
|
|
228
|
-
}
|
|
229
|
-
|
|
230
|
-
:host {
|
|
231
|
-
font-family: var(--apkt-fontFamily-regular);
|
|
232
|
-
}
|
|
233
|
-
`,IL=ms`
|
|
234
|
-
button,
|
|
235
|
-
a {
|
|
236
|
-
cursor: pointer;
|
|
237
|
-
display: flex;
|
|
238
|
-
justify-content: center;
|
|
239
|
-
align-items: center;
|
|
240
|
-
position: relative;
|
|
241
|
-
|
|
242
|
-
will-change: background-color, color, border, box-shadow, width, height, transform, opacity;
|
|
243
|
-
outline: none;
|
|
244
|
-
border: none;
|
|
245
|
-
text-decoration: none;
|
|
246
|
-
transition:
|
|
247
|
-
background-color var(--apkt-durations-lg) var(--apkt-easings-ease-out-power-2),
|
|
248
|
-
color var(--apkt-durations-lg) var(--apkt-easings-ease-out-power-2),
|
|
249
|
-
border var(--apkt-durations-lg) var(--apkt-easings-ease-out-power-2),
|
|
250
|
-
box-shadow var(--apkt-durations-lg) var(--apkt-easings-ease-out-power-2),
|
|
251
|
-
width var(--apkt-durations-lg) var(--apkt-easings-ease-out-power-2),
|
|
252
|
-
height var(--apkt-durations-lg) var(--apkt-easings-ease-out-power-2),
|
|
253
|
-
transform var(--apkt-durations-lg) var(--apkt-easings-ease-out-power-2),
|
|
254
|
-
opacity var(--apkt-durations-lg) var(--apkt-easings-ease-out-power-2),
|
|
255
|
-
scale var(--apkt-durations-lg) var(--apkt-easings-ease-out-power-2),
|
|
256
|
-
border-radius var(--apkt-durations-lg) var(--apkt-easings-ease-out-power-2);
|
|
257
|
-
will-change:
|
|
258
|
-
background-color, color, border, box-shadow, width, height, transform, opacity, scale,
|
|
259
|
-
border-radius;
|
|
260
|
-
}
|
|
261
|
-
|
|
262
|
-
a:active:not([disabled]),
|
|
263
|
-
button:active:not([disabled]) {
|
|
264
|
-
scale: 0.975;
|
|
265
|
-
transform-origin: center;
|
|
266
|
-
}
|
|
267
|
-
|
|
268
|
-
button:disabled {
|
|
269
|
-
cursor: default;
|
|
270
|
-
}
|
|
271
|
-
|
|
272
|
-
input {
|
|
273
|
-
border: none;
|
|
274
|
-
outline: none;
|
|
275
|
-
appearance: none;
|
|
276
|
-
}
|
|
277
|
-
`,Po={ERROR_CODE_UNRECOGNIZED_CHAIN_ID:4902,ERROR_CODE_DEFAULT:5e3,ERROR_INVALID_CHAIN_ID:32603};class dF extends dB{async setUniversalProvider(e){if(!this.namespace)throw new Error("UniversalAdapter:setUniversalProvider - namespace is required");return this.addConnector(new hB({provider:e,caipNetworks:this.getCaipNetworks(),namespace:this.namespace})),Promise.resolve()}async connect(e){return Promise.resolve({id:"WALLET_CONNECT",type:"WALLET_CONNECT",chainId:Number(e.chainId),provider:this.provider,address:""})}async disconnect(){try{await this.getWalletConnectConnector().disconnect(),this.emit("disconnect")}catch(e){console.warn("UniversalAdapter:disconnect - error",e)}return{connections:[]}}syncConnections(){return Promise.resolve()}async writeSolanaTransaction(){return Promise.resolve({hash:""})}async getAccounts({namespace:e}){var s,i,o,a;const n=this.provider,r=((a=(o=(i=(s=n==null?void 0:n.session)==null?void 0:s.namespaces)==null?void 0:i[e])==null?void 0:o.accounts)==null?void 0:a.map(c=>{const[,,l]=c.split(":");return l}).filter((c,l,u)=>u.indexOf(c)===l))||[];return Promise.resolve({accounts:r.map(c=>J.createAccount(e,c,e==="bip122"?"payment":"eoa"))})}async syncConnectors(){return Promise.resolve()}async getBalance(e){var o,a,c,l,u;if(!(e.caipNetwork&&Oe.BALANCE_SUPPORTED_CHAINS.includes((o=e.caipNetwork)==null?void 0:o.chainNamespace))||(a=e.caipNetwork)!=null&&a.testnet)return{balance:"0.00",symbol:((c=e.caipNetwork)==null?void 0:c.nativeCurrency.symbol)||""};const r=w.getAccountData();if(r!=null&&r.balanceLoading&&e.chainId===((l=w.state.activeCaipNetwork)==null?void 0:l.id))return{balance:(r==null?void 0:r.balance)||"0.00",symbol:(r==null?void 0:r.balanceSymbol)||""};const i=(await w.fetchTokenBalance()).find(d=>{var h,f;return d.chainId===`${(h=e.caipNetwork)==null?void 0:h.chainNamespace}:${e.chainId}`&&d.symbol===((f=e.caipNetwork)==null?void 0:f.nativeCurrency.symbol)});return{balance:(i==null?void 0:i.quantity.numeric)||"0.00",symbol:(i==null?void 0:i.symbol)||((u=e.caipNetwork)==null?void 0:u.nativeCurrency.symbol)||""}}async signMessage(e){var o,a,c;const{provider:n,message:r,address:s}=e;if(!n)throw new Error("UniversalAdapter:signMessage - provider is undefined");let i="";return((o=w.state.activeCaipNetwork)==null?void 0:o.chainNamespace)===T.CHAIN.SOLANA?i=(await n.request({method:"solana_signMessage",params:{message:so.encode(new TextEncoder().encode(r)),pubkey:s}},(a=w.state.activeCaipNetwork)==null?void 0:a.caipNetworkId)).signature:i=await n.request({method:"personal_sign",params:[r,s]},(c=w.state.activeCaipNetwork)==null?void 0:c.caipNetworkId),{signature:i}}async estimateGas(){return Promise.resolve({gas:BigInt(0)})}async sendTransaction(){return Promise.resolve({hash:""})}walletGetAssets(e){return Promise.resolve({})}async writeContract(){return Promise.resolve({hash:""})}emitFirstAvailableConnection(){}parseUnits(){return 0n}formatUnits(){return"0"}async getCapabilities(){return Promise.resolve({})}async grantPermissions(){return Promise.resolve({})}async revokePermissions(){return Promise.resolve("0x")}async syncConnection(){return Promise.resolve({id:"WALLET_CONNECT",type:"WALLET_CONNECT",chainId:1,provider:this.provider,address:""})}async switchNetwork(e){var s,i,o,a,c,l;const{caipNetwork:n}=e,r=this.getWalletConnectConnector();if(n.chainNamespace===T.CHAIN.EVM)try{await((s=r.provider)==null?void 0:s.request({method:"wallet_switchEthereumChain",params:[{chainId:zt.toHex(n.id)}]}))}catch(u){if(u.code===Po.ERROR_CODE_UNRECOGNIZED_CHAIN_ID||u.code===Po.ERROR_INVALID_CHAIN_ID||u.code===Po.ERROR_CODE_DEFAULT||((o=(i=u==null?void 0:u.data)==null?void 0:i.originalError)==null?void 0:o.code)===Po.ERROR_CODE_UNRECOGNIZED_CHAIN_ID)try{await((l=r.provider)==null?void 0:l.request({method:"wallet_addEthereumChain",params:[{chainId:zt.toHex(n.id),rpcUrls:[(a=n==null?void 0:n.rpcUrls.chainDefault)==null?void 0:a.http],chainName:n.name,nativeCurrency:n.nativeCurrency,blockExplorerUrls:[(c=n.blockExplorers)==null?void 0:c.default.url]}]}))}catch{throw new Error("Chain is not supported")}}r.provider.setDefaultChain(n.caipNetworkId)}getWalletConnectProvider(){const e=this.connectors.find(r=>r.type==="WALLET_CONNECT");return e==null?void 0:e.provider}}const hF=["email","socials","swaps","onramp","activity","reownBranding","multiWallet","emailCapture","payWithExchange","payments","reownAuthentication","headless"],cc={email:{apiFeatureName:"social_login",localFeatureName:"email",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>{if(!(t!=null&&t.config))return!1;const e=t.config;return!!t.isEnabled&&e.includes("email")},processFallback:t=>t===void 0?Oe.DEFAULT_REMOTE_FEATURES.email:!!t},socials:{apiFeatureName:"social_login",localFeatureName:"socials",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>{if(!(t!=null&&t.config))return!1;const e=t.config;return t.isEnabled&&e.length>0?e.filter(n=>n!=="email"):!1},processFallback:t=>t===void 0?Oe.DEFAULT_REMOTE_FEATURES.socials:typeof t=="boolean"?t?Oe.DEFAULT_REMOTE_FEATURES.socials:!1:t},swaps:{apiFeatureName:"swap",localFeatureName:"swaps",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>{if(!(t!=null&&t.config))return!1;const e=t.config;return t.isEnabled&&e.length>0?e:!1},processFallback:t=>t===void 0?Oe.DEFAULT_REMOTE_FEATURES.swaps:typeof t=="boolean"?t?Oe.DEFAULT_REMOTE_FEATURES.swaps:!1:t},onramp:{apiFeatureName:"onramp",localFeatureName:"onramp",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>{if(!(t!=null&&t.config))return!1;const e=t.config;return t.isEnabled&&e.length>0?e:!1},processFallback:t=>t===void 0?Oe.DEFAULT_REMOTE_FEATURES.onramp:typeof t=="boolean"?t?Oe.DEFAULT_REMOTE_FEATURES.onramp:!1:t},activity:{apiFeatureName:"activity",localFeatureName:"history",returnType:!1,isLegacy:!0,isAvailableOnBasic:!1,processApi:t=>!!t.isEnabled,processFallback:t=>t===void 0?Oe.DEFAULT_REMOTE_FEATURES.activity:!!t},reownBranding:{apiFeatureName:"reown_branding",localFeatureName:"reownBranding",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>!!t.isEnabled,processFallback:t=>t===void 0?Oe.DEFAULT_REMOTE_FEATURES.reownBranding:!!t},emailCapture:{apiFeatureName:"email_capture",localFeatureName:"emailCapture",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>t.isEnabled&&(t.config??[]),processFallback:t=>!1},multiWallet:{apiFeatureName:"multi_wallet",localFeatureName:"multiWallet",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>!!t.isEnabled,processFallback:()=>Oe.DEFAULT_REMOTE_FEATURES.multiWallet},payWithExchange:{apiFeatureName:"fund_from_exchange",localFeatureName:"payWithExchange",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>!!t.isEnabled,processFallback:()=>Oe.DEFAULT_REMOTE_FEATURES.payWithExchange},payments:{apiFeatureName:"payments",localFeatureName:"payments",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>!!t.isEnabled,processFallback:()=>Oe.DEFAULT_REMOTE_FEATURES.payments},reownAuthentication:{apiFeatureName:"reown_authentication",localFeatureName:"reownAuthentication",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>!!t.isEnabled,processFallback:t=>typeof t>"u"?Oe.DEFAULT_REMOTE_FEATURES.reownAuthentication:!!t},headless:{apiFeatureName:"headless",localFeatureName:"headless",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>!!t.isEnabled,processFallback:()=>Oe.DEFAULT_REMOTE_FEATURES.headless}},fF={localSettingsOverridden:new Set,getApiConfig(t,e){return e==null?void 0:e.find(n=>n.id===t)},addWarning(t,e){if(t!==void 0){const n=cc[e],r=n.isLegacy?`"features.${n.localFeatureName}" (now "${e}")`:`"features.${e}"`;this.localSettingsOverridden.add(r)}},processFeature(t,e,n,r,s){const i=cc[t],o=e[i.localFeatureName];if(s&&!i.isAvailableOnBasic)return!1;if(r){const a=this.getApiConfig(i.apiFeatureName,n);return(a==null?void 0:a.config)===null?this.processFallbackFeature(t,o):a!=null&&a.config?(o!==void 0&&this.addWarning(o,t),this.processApiFeature(t,a)):!1}return this.processFallbackFeature(t,o)},processApiFeature(t,e){return cc[t].processApi(e)},processFallbackFeature(t,e){return cc[t].processFallback(e)},async fetchRemoteFeatures(t){const e=t.basic??!1,n=t.features||{};this.localSettingsOverridden.clear();let r=null,s=!1;try{r=await ne.fetchProjectConfig(),s=r!=null}catch(o){console.warn("[Reown Config] Failed to fetch remote project configuration. Using local/default values.",o)}const i=s&&!e?Oe.DEFAULT_REMOTE_FEATURES:Oe.DEFAULT_REMOTE_FEATURES_DISABLED;try{for(const o of hF){const a=this.processFeature(o,n,r,s,e);Object.assign(i,{[o]:a})}}catch(o){return console.warn("[Reown Config] Failed to process the configuration from Cloud. Using default values.",o),Oe.DEFAULT_REMOTE_FEATURES}if(s&&this.localSettingsOverridden.size>0){const o=`Your local configuration for ${Array.from(this.localSettingsOverridden).join(", ")} was ignored because a remote configuration was successfully fetched. Please manage these features via your project dashboard on dashboard.reown.com.`;Wt.open({debugMessage:qt.ALERT_WARNINGS.LOCAL_CONFIGURATION_IGNORED.debugMessage(o)},"warning")}return i}};class pF{constructor(e){this.chainNamespaces=[],this.features={},this.remoteFeatures={},this.reportedAlertErrors={},this.getCaipNetwork=(n,r)=>{var s,i,o;if(n){const a=(s=w.getCaipNetworks(n))==null?void 0:s.find(u=>u.id===r);if(a)return a;const c=(i=w.getNetworkData(n))==null?void 0:i.caipNetwork;return c||((o=w.getRequestedCaipNetworks(n).filter(u=>u.chainNamespace===n))==null?void 0:o[0])}return w.state.activeCaipNetwork||this.defaultCaipNetwork},this.getCaipNetworkId=()=>{const n=this.getCaipNetwork();if(n)return n.id},this.getCaipNetworks=n=>w.getCaipNetworks(n),this.getActiveChainNamespace=()=>w.state.activeChain,this.setRequestedCaipNetworks=(n,r)=>{w.setRequestedCaipNetworks(n,r)},this.getApprovedCaipNetworkIds=()=>w.getAllApprovedCaipNetworkIds(),this.getCaipAddress=n=>{var r,s;return w.state.activeChain===n||!n?w.state.activeCaipAddress:(s=(r=w.state.chains.get(n))==null?void 0:r.accountState)==null?void 0:s.caipAddress},this.setClientId=n=>{me.setClientId(n)},this.getProvider=n=>Ke.getProvider(n),this.getProviderType=n=>Ke.getProviderId(n),this.getPreferredAccountType=n=>Nn(n),this.setCaipAddress=(n,r,s=!1)=>{w.setAccountProp("caipAddress",n,r,s),w.setAccountProp("address",J.getPlainAddress(n),r,s)},this.setBalance=(n,r,s)=>{w.setAccountProp("balance",n,s),w.setAccountProp("balanceSymbol",r,s)},this.setProfileName=(n,r)=>{w.setAccountProp("profileName",n,r)},this.setProfileImage=(n,r)=>{w.setAccountProp("profileImage",n,r)},this.setUser=(n,r)=>{w.setAccountProp("user",n,r)},this.resetAccount=n=>{w.resetAccount(n)},this.setCaipNetwork=n=>{w.setActiveCaipNetwork(n)},this.setCaipNetworkOfNamespace=(n,r)=>{w.setChainNetworkData(r,{caipNetwork:n})},this.setStatus=(n,r)=>{w.setAccountProp("status",n,r),z.isConnected()?j.setConnectionStatus("connected"):j.setConnectionStatus("disconnected")},this.getAddressByChainNamespace=n=>{var r;return(r=w.getAccountData(n))==null?void 0:r.address},this.setConnectors=n=>{const r=[...z.state.allConnectors,...n];z.setConnectors(r)},this.setConnections=(n,r)=>{j.setConnections(n,r),V.setConnections(n,r)},this.fetchIdentity=n=>me.fetchIdentity(n),this.getReownName=n=>Mo.getNamesForAddress(n),this.getConnectors=()=>z.getConnectors(),this.getConnectorImage=n=>Dc.getConnectorImage(n),this.getConnections=n=>this.remoteFeatures.multiWallet?kc.getConnectionsData(n).connections:(Wt.open(T.REMOTE_FEATURES_ALERTS.MULTI_WALLET_NOT_ENABLED.DEFAULT,"info"),[]),this.getRecentConnections=n=>this.remoteFeatures.multiWallet?kc.getConnectionsData(n).recentConnections:(Wt.open(T.REMOTE_FEATURES_ALERTS.MULTI_WALLET_NOT_ENABLED.DEFAULT,"info"),[]),this.switchConnection=async n=>{if(!this.remoteFeatures.multiWallet){Wt.open(T.REMOTE_FEATURES_ALERTS.MULTI_WALLET_NOT_ENABLED.DEFAULT,"info");return}await V.switchConnection(n)},this.deleteConnection=n=>{if(!this.remoteFeatures.multiWallet){Wt.open(T.REMOTE_FEATURES_ALERTS.MULTI_WALLET_NOT_ENABLED.DEFAULT,"info");return}j.deleteAddressFromConnection(n),V.syncStorageConnections()},this.setConnectedWalletInfo=(n,r)=>{const s=Ke.getProviderId(r),i=n?{...n,type:s}:void 0;w.setAccountProp("connectedWalletInfo",i,r)},this.getIsConnectedState=()=>!!w.state.activeCaipAddress,this.addAddressLabel=(n,r,s)=>{var o;const i=((o=w.getAccountData(s))==null?void 0:o.addressLabels)||{};w.setAccountProp("addressLabels",{...i,[n]:r},s)},this.removeAddressLabel=(n,r)=>{var i;const s=((i=w.getAccountData(r))==null?void 0:i.addressLabels)||{};w.setAccountProp("addressLabels",{...s,[n]:void 0},r)},this.getAddress=n=>{var s;const r=n||w.state.activeChain;return(s=w.getAccountData(r))==null?void 0:s.address},this.resetNetwork=n=>{w.resetNetwork(n)},this.addConnector=n=>{z.addConnector(n)},this.resetWcConnection=()=>{V.resetWcConnection()},this.setAddressExplorerUrl=(n,r)=>{w.setAccountProp("addressExplorerUrl",n,r)},this.setSmartAccountDeployed=(n,r)=>{w.setAccountProp("smartAccountDeployed",n,r)},this.setPreferredAccountType=(n,r)=>{w.setAccountProp("preferredAccountType",n,r)},this.setEIP6963Enabled=n=>{B.setEIP6963Enabled(n)},this.handleUnsafeRPCRequest=()=>{if(this.isOpen()){if(this.isTransactionStackEmpty())return;this.redirect("ApproveTransaction")}else this.open({view:"ApproveTransaction"})},this.options=e,this.version=e.sdkVersion,this.caipNetworks=this.extendCaipNetworks(e),this.chainNamespaces=this.getChainNamespacesSet(e.adapters,this.caipNetworks),this.defaultCaipNetwork=this.extendDefaultCaipNetwork(e),this.chainAdapters=this.createAdapters(e.adapters),this.readyPromise=this.initialize(e)}getChainNamespacesSet(e,n){const r=e==null?void 0:e.map(i=>i.namespace).filter(i=>!!i);if(r!=null&&r.length)return[...new Set(r)];const s=n==null?void 0:n.map(i=>i.chainNamespace);return[...new Set(s)]}async initialize(e){var n,r,s,i,o,a;if(this.initializeProjectSettings(e),this.initControllers(e),await this.initChainAdapters(),this.sendInitializeEvent(e),(n=e.features)!=null&&n.headless&&!Xt.hasInjectedConnectors()&&ne.prefetch({fetchNetworkImages:!1,fetchConnectorImages:!1,fetchWalletRanks:!1,fetchRecommendedWallets:!0}),B.state.enableReconnect?(await this.syncExistingConnection(),await this.syncAdapterConnections()):await this.unSyncExistingConnection(),!e.basic&&!e.manualWCControl&&(this.remoteFeatures=await fF.fetchRemoteFeatures(e)),await ne.fetchUsage(),B.setRemoteFeatures(this.remoteFeatures),this.remoteFeatures.onramp&&id.setOnrampProviders(this.remoteFeatures.onramp),((r=B.state.remoteFeatures)!=null&&r.email||Array.isArray((s=B.state.remoteFeatures)==null?void 0:s.socials)&&((i=B.state.remoteFeatures)==null?void 0:i.socials.length)>0)&&await this.checkAllowedOrigins(),(o=B.state.features)!=null&&o.reownAuthentication||(a=B.state.remoteFeatures)!=null&&a.reownAuthentication){const{ReownAuthentication:c}=await Jt(()=>import("./features-eaf3f10e.js"),["assets/features-eaf3f10e.js","assets/ReownAuthentication-95163b2a.js","assets/NetworkUtil-f04f30f1.js","assets/index-1912ccb5.js","assets/index-cae81f79.css","assets/BlockOverrides-b253ac3c.js","assets/index-7a343a6c.js"]),l=B.state.siwx;l instanceof c||(l&&console.warn("ReownAuthentication option is enabled, SIWX configuration will be overridden."),B.setSIWX(new c))}}async openSend(e){var i;const n=e.namespace||w.state.activeChain,r=this.getCaipAddress(n),s=(i=this.getCaipNetwork(n))==null?void 0:i.id;if(!r)throw new Error("openSend: caipAddress not found");if((s==null?void 0:s.toString())!==e.chainId.toString()){const o=w.getCaipNetworkById(e.chainId,n);if(!o)throw new Error(`openSend: caipNetwork with chainId ${e.chainId} not found`);await this.switchNetwork(o,{throwOnFailure:!0})}try{const o=rb.getTokenSymbolByAddress(e.assetAddress);o&&await ne.fetchTokenImages([o])}catch{}return await Re.open({view:"WalletSend",data:{send:e}}),new Promise((o,a)=>{const c=Se.subscribeKey("hash",d=>{d&&(u(),o({hash:d}))}),l=Re.subscribe(d=>{d.open||(u(),a(new Error("Modal closed")))}),u=this.createCleanupHandler([c,l])})}toModalOptions(){function e(r){return(r==null?void 0:r.view)==="Swap"}function n(r){return(r==null?void 0:r.view)==="WalletSend"}return{isSwap:e,isSend:n}}async checkAllowedOrigins(){try{const e=await ne.fetchAllowedOrigins();if(!J.isClient())return;const n=window.location.origin;vs.isOriginAllowed(n,e,T.DEFAULT_ALLOWED_ANCESTORS)||Wt.open(qt.ALERT_ERRORS.ORIGIN_NOT_ALLOWED,"error")}catch(e){if(!(e instanceof Error))return;switch(e.message){case"RATE_LIMITED":Wt.open(qt.ALERT_ERRORS.RATE_LIMITED_APP_CONFIGURATION,"error");break;case"SERVER_ERROR":{const n=e.cause instanceof Error?e.cause:e;Wt.open({displayMessage:qt.ALERT_ERRORS.SERVER_ERROR_APP_CONFIGURATION.displayMessage,debugMessage:qt.ALERT_ERRORS.SERVER_ERROR_APP_CONFIGURATION.debugMessage(n.message)},"error");break}}}}createCleanupHandler(e){return()=>{e.forEach(n=>{try{n()}catch{}})}}sendInitializeEvent(e){var r;const{...n}=e;delete n.adapters,delete n.universalProvider,be.sendEvent({type:"track",event:"INITIALIZE",properties:{...n,networks:e.networks.map(s=>s.id),siweConfig:{options:((r=e.siweConfig)==null?void 0:r.options)||{}}}})}initControllers(e){this.initializeOptionsController(e),this.initializeChainController(e),this.initializeThemeController(e),this.initializeConnectionController(e),this.initializeConnectorController()}initAdapterController(){Ty.initialize(this.chainAdapters)}initializeThemeController(e){e.themeMode&&un.setThemeMode(e.themeMode),e.themeVariables&&un.setThemeVariables(e.themeVariables)}initializeChainController(e){if(!this.connectionControllerClient)throw new Error("ConnectionControllerClient must be set");w.initialize(e.adapters??[],this.caipNetworks,{connectionControllerClient:this.connectionControllerClient});const n=this.getDefaultNetwork();n&&w.setActiveCaipNetwork(n)}initializeConnectionController(e){V.initialize(e.adapters??[]),V.setWcBasic(e.basic??!1)}initializeConnectorController(){z.initialize(this.chainNamespaces)}initializeProjectSettings(e){B.setProjectId(e.projectId),B.setSdkVersion(e.sdkVersion)}initializeOptionsController(e){var s;B.setDebug(e.debug!==!1),B.setEnableWalletGuide(e.enableWalletGuide!==!1),B.setEnableWallets(e.enableWallets!==!1),B.setEIP6963Enabled(e.enableEIP6963!==!1),B.setEnableNetworkSwitch(e.enableNetworkSwitch!==!1),B.setEnableReconnect(e.enableReconnect!==!1),B.setEnableMobileFullScreen(e.enableMobileFullScreen===!0),B.setCoinbasePreference(e.coinbasePreference),B.setEnableAuthLogger(e.enableAuthLogger!==!1),B.setCustomRpcUrls(e.customRpcUrls),B.setEnableEmbedded(e.enableEmbedded),B.setAllWallets(e.allWallets),B.setIncludeWalletIds(e.includeWalletIds),B.setExcludeWalletIds(e.excludeWalletIds),B.setFeaturedWalletIds(e.featuredWalletIds),B.setTokens(e.tokens),B.setTermsConditionsUrl(e.termsConditionsUrl),B.setPrivacyPolicyUrl(e.privacyPolicyUrl),B.setCustomWallets(e.customWallets),B.setFeatures(e.features),B.setAllowUnsupportedChain(e.allowUnsupportedChain),B.setUniversalProviderConfigOverride(e.universalProviderConfigOverride),B.setPreferUniversalLinks(e.experimental_preferUniversalLinks),B.setDefaultAccountTypes(e.defaultAccountTypes);const n=this.getDefaultMetaData();if(!e.metadata&&n&&(e.metadata=n),B.setMetadata(e.metadata),B.setDisableAppend(e.disableAppend),B.setEnableEmbedded(e.enableEmbedded),B.setSIWX(e.siwx),this.features=B.state.features??{},!e.projectId){Wt.open(qt.ALERT_ERRORS.PROJECT_ID_NOT_CONFIGURED,"error");return}if(((s=e.adapters)==null?void 0:s.find(i=>i.namespace===T.CHAIN.EVM))&&e.siweConfig){if(e.siwx)throw new Error("Cannot set both `siweConfig` and `siwx` options");B.setSIWX(e.siweConfig.mapToSIWX())}}getDefaultMetaData(){var e,n,r,s;return J.isClient()?{name:((n=(e=document.getElementsByTagName("title"))==null?void 0:e[0])==null?void 0:n.textContent)||"",description:((r=document.querySelector('meta[property="og:description"]'))==null?void 0:r.content)||"",url:window.location.origin,icons:[((s=document.querySelector('link[rel~="icon"]'))==null?void 0:s.href)||""]}:null}setUnsupportedNetwork(e){const n=this.getActiveChainNamespace();if(n){const r=$i.getUnsupportedNetwork(`${n}:${e}`);w.setActiveCaipNetwork(r)}}getDefaultNetwork(){return $i.getCaipNetworkFromStorage(this.defaultCaipNetwork)}extendCaipNetwork(e,n){return $i.extendCaipNetwork(e,{customNetworkImageUrls:n.chainImages,projectId:n.projectId})}extendCaipNetworks(e){return $i.extendCaipNetworks(e.networks,{customNetworkImageUrls:e.chainImages,customRpcUrls:e.customRpcUrls,projectId:e.projectId})}extendDefaultCaipNetwork(e){const n=e.networks.find(s=>{var i;return s.id===((i=e.defaultNetwork)==null?void 0:i.id)});return n?$i.extendCaipNetwork(n,{customNetworkImageUrls:e.chainImages,customRpcUrls:e.customRpcUrls,projectId:e.projectId}):void 0}async disconnectConnector(e,n){var r,s;try{this.setLoading(!0,e);let i={connections:[]};const o=this.getAdapter(e);return(((s=(r=w.state.chains.get(e))==null?void 0:r.accountState)==null?void 0:s.caipAddress)||!B.state.enableReconnect)&&(o!=null&&o.disconnect)&&(i=await o.disconnect({id:n})),this.setLoading(!1,e),i}catch(i){throw this.setLoading(!1,e),new Error(`Failed to disconnect chains: ${i.message}`)}}createClients(){this.connectionControllerClient={connectWalletConnect:async()=>{var l;const e=w.state.activeChain,n=this.getAdapter(e),r=(l=this.getCaipNetwork(e))==null?void 0:l.id,s=V.getConnections(e),i=this.remoteFeatures.multiWallet,o=s.length>0;if(!n)throw new Error("Adapter not found");const a=await n.connectWalletConnect(r);(!o||!i)&&this.close(),this.setClientId((a==null?void 0:a.clientId)||null),j.setConnectedNamespaces([...w.state.chains.keys()]),await this.syncWalletConnectAccount(),await Mn.initializeIfEnabled()},connectExternal:async e=>{const n=await this.onConnectExternal(e);return await this.connectInactiveNamespaces(e,n),n?{address:n.address}:void 0},reconnectExternal:async({id:e,info:n,type:r,provider:s})=>{var a;const i=w.state.activeChain,o=this.getAdapter(i);if(!i)throw new Error("reconnectExternal: namespace not found");if(!o)throw new Error("reconnectExternal: adapter not found");o!=null&&o.reconnect&&(await(o==null?void 0:o.reconnect({id:e,info:n,type:r,provider:s,chainId:(a=this.getCaipNetwork())==null?void 0:a.id})),j.addConnectedNamespace(i),this.syncConnectedWalletInfo(i))},disconnectConnector:async e=>{await this.disconnectConnector(e.namespace,e.id)},disconnect:async e=>{var l;const{id:n,chainNamespace:r,initialDisconnect:s}=e||{},i=r||w.state.activeChain,o=z.getConnectorId(i),a=n===T.CONNECTOR_ID.AUTH||o===T.CONNECTOR_ID.AUTH,c=n===T.CONNECTOR_ID.WALLET_CONNECT||o===T.CONNECTOR_ID.WALLET_CONNECT;try{const u=Array.from(w.state.chains.keys());let d=r?[r]:u;(c||a)&&(d=u);const h=d.map(async g=>{const y=z.getConnectorId(g),v=n||y,A=await this.disconnectConnector(g,v);A&&(a&&j.deleteConnectedSocialProvider(),A.connections.forEach(E=>{j.addDisconnectedConnectorId(E.connectorId,g)})),s&&this.onDisconnectNamespace({chainNamespace:g,closeModal:!1})}),f=await Promise.allSettled(h);Se.resetSend(),V.resetWcConnection(),(l=Mn.getSIWX())!=null&&l.signOutOnDisconnect&&await Mn.clearSessions(),z.setFilterByNamespace(void 0),V.syncStorageConnections();const p=f.filter(g=>g.status==="rejected");if(p.length>0)throw new Error(p.map(g=>g.reason.message).join(", "));be.sendEvent({type:"track",event:"DISCONNECT_SUCCESS",properties:{namespace:r||"all"}})}catch(u){throw new Error(`Failed to disconnect chains: ${u.message}`)}},checkInstalled:e=>e?e.some(n=>{var r;return!!((r=window.ethereum)!=null&&r[String(n)])}):!!window.ethereum,signMessage:async e=>{const n=w.state.activeChain,r=this.getAdapter(w.state.activeChain);if(!n)throw new Error("signMessage: namespace not found");if(!r)throw new Error("signMessage: adapter not found");const s=this.getAddress(n);if(!s)throw new Error("signMessage: address not found");const i=await(r==null?void 0:r.signMessage({message:e,address:s,provider:Ke.getProvider(n)}));return(i==null?void 0:i.signature)||""},sendTransaction:async e=>{const n=e.chainNamespace;if(!n)throw new Error("sendTransaction: namespace not found");if(Oe.SEND_SUPPORTED_NAMESPACES.includes(n)){const r=this.getAdapter(n);if(!r)throw new Error("sendTransaction: adapter not found");const s=Ke.getProvider(n),i=await(r==null?void 0:r.sendTransaction({...e,caipNetwork:this.getCaipNetwork(),provider:s}));return(i==null?void 0:i.hash)||""}return""},estimateGas:async e=>{const n=e.chainNamespace;if(n===T.CHAIN.EVM){const r=this.getAdapter(n);if(!r)throw new Error("estimateGas: adapter is required but got undefined");const s=Ke.getProvider(n),i=this.getCaipNetwork();if(!i)throw new Error("estimateGas: caipNetwork is required but got undefined");const o=await(r==null?void 0:r.estimateGas({...e,provider:s,caipNetwork:i}));return(o==null?void 0:o.gas)||0n}return 0n},getEnsAvatar:async()=>{var s;const e=w.state.activeChain;if(!e)throw new Error("getEnsAvatar: namespace is required but got undefined");const n=this.getAddress(e);if(!n)throw new Error("getEnsAvatar: address not found");await this.syncIdentity({address:n,chainId:Number((s=this.getCaipNetwork())==null?void 0:s.id),chainNamespace:e});const r=w.getAccountData();return(r==null?void 0:r.profileImage)||!1},getEnsAddress:async e=>await vs.resolveReownName(e),writeContract:async e=>{const n=w.state.activeChain,r=this.getAdapter(n);if(!n)throw new Error("writeContract: namespace is required but got undefined");if(!r)throw new Error("writeContract: adapter is required but got undefined");const s=this.getCaipNetwork(),i=this.getCaipAddress(),o=Ke.getProvider(n);if(!s||!i)throw new Error("writeContract: caipNetwork or caipAddress is required but got undefined");const a=await(r==null?void 0:r.writeContract({...e,caipNetwork:s,provider:o,caipAddress:i}));return a==null?void 0:a.hash},writeSolanaTransaction:async e=>{const n=w.state.activeChain,r=this.getAdapter(n);if(!n)throw new Error("writeContract: namespace is required but got undefined");if(!r)throw new Error("writeContract: adapter is required but got undefined");const s=this.getCaipNetwork(),i=this.getCaipAddress(),o=Ke.getProvider(n);if(!s||!i)throw new Error("writeContract: caipNetwork or caipAddress is required but got undefined");const a=await(r==null?void 0:r.writeSolanaTransaction({...e,caipNetwork:s,provider:o,caipAddress:i}));return a==null?void 0:a.hash},parseUnits:(e,n)=>{const r=this.getAdapter(w.state.activeChain);if(!r)throw new Error("parseUnits: adapter is required but got undefined");return(r==null?void 0:r.parseUnits({value:e,decimals:n}))??0n},formatUnits:(e,n)=>{const r=this.getAdapter(w.state.activeChain);if(!r)throw new Error("formatUnits: adapter is required but got undefined");return(r==null?void 0:r.formatUnits({value:e,decimals:n}))??"0"},getCapabilities:async e=>{const n=this.getAdapter(w.state.activeChain);if(!n)throw new Error("getCapabilities: adapter is required but got undefined");return await(n==null?void 0:n.getCapabilities(e))},grantPermissions:async e=>{const n=this.getAdapter(w.state.activeChain);if(!n)throw new Error("grantPermissions: adapter is required but got undefined");return await(n==null?void 0:n.grantPermissions(e))},revokePermissions:async e=>{const n=this.getAdapter(w.state.activeChain);if(!n)throw new Error("revokePermissions: adapter is required but got undefined");return n!=null&&n.revokePermissions?await n.revokePermissions(e):"0x"},walletGetAssets:async e=>{const n=this.getAdapter(w.state.activeChain);if(!n)throw new Error("walletGetAssets: adapter is required but got undefined");return await(n==null?void 0:n.walletGetAssets(e))??{}},updateBalance:e=>{const n=this.getAddress(e),r=this.getCaipNetwork(e);!r||!n||this.updateNativeBalance(n,r==null?void 0:r.id,e)}},V.setClient(this.connectionControllerClient)}async onConnectExternal(e){var l,u,d,h,f,p,g,y;const n=w.state.activeChain,r=e.chain||n,s=this.getAdapter(r);let i=!0;if(e.type===ze.CONNECTOR_TYPE_AUTH&&T.AUTH_CONNECTOR_SUPPORTED_CHAINS.some(E=>z.getConnectorId(E)===T.CONNECTOR_ID.AUTH)&&e.chain!==n&&(i=!1),e.chain&&e.chain!==n&&!e.caipNetwork){const v=this.getCaipNetworks().find(A=>A.chainNamespace===e.chain);v&&i&&this.setCaipNetwork(v)}if(!r)throw new Error("connectExternal: namespace not found");if(!s)throw new Error("connectExternal: adapter not found");const o=this.getCaipNetwork(r),a=e.caipNetwork||o,c=await s.connect({id:e.id,address:e.address,info:e.info,type:e.type,provider:e.provider,socialUri:e.socialUri,chainId:((l=e.caipNetwork)==null?void 0:l.id)||(o==null?void 0:o.id),rpcUrl:((f=(h=(d=(u=e.caipNetwork)==null?void 0:u.rpcUrls)==null?void 0:d.default)==null?void 0:h.http)==null?void 0:f[0])||((y=(g=(p=o==null?void 0:o.rpcUrls)==null?void 0:p.default)==null?void 0:g.http)==null?void 0:y[0])});if(c)return j.addConnectedNamespace(r),this.syncProvider({...c,chainNamespace:r}),this.setStatus("connected",r),this.syncConnectedWalletInfo(r),j.removeDisconnectedConnectorId(e.id,r),{address:c.address,connectedCaipNetwork:a}}async connectInactiveNamespaces(e,n){var a;const r=e.type===ze.CONNECTOR_TYPE_AUTH,s=ga.getOtherAuthNamespaces((a=n==null?void 0:n.connectedCaipNetwork)==null?void 0:a.chainNamespace),i=w.state.activeCaipNetwork,o=this.getAdapter(i==null?void 0:i.chainNamespace);r&&(await Promise.all(s.map(async c=>{var l,u,d;try{const h=Ke.getProvider(c),f=this.getCaipNetwork(c),p=this.getAdapter(c);await(p==null?void 0:p.connect({...e,provider:h,socialUri:void 0,chainId:f==null?void 0:f.id,rpcUrl:(d=(u=(l=f==null?void 0:f.rpcUrls)==null?void 0:l.default)==null?void 0:u.http)==null?void 0:d[0]}))&&(j.addConnectedNamespace(c),j.removeDisconnectedConnectorId(e.id,c),this.setStatus("connected",c),this.syncConnectedWalletInfo(c))}catch(h){Wt.warn(qt.ALERT_WARNINGS.INACTIVE_NAMESPACE_NOT_CONNECTED.displayMessage,qt.ALERT_WARNINGS.INACTIVE_NAMESPACE_NOT_CONNECTED.debugMessage(c,h instanceof Error?h.message:void 0),qt.ALERT_WARNINGS.INACTIVE_NAMESPACE_NOT_CONNECTED.code)}})),i&&await(o==null?void 0:o.switchNetwork({caipNetwork:i})))}getApprovedCaipNetworksData(){var n,r,s,i,o;if(Ke.getProviderId(w.state.activeChain)===ze.CONNECTOR_TYPE_WALLET_CONNECT){const a=(r=(n=this.universalProvider)==null?void 0:n.session)==null?void 0:r.namespaces;return{supportsAllNetworks:((o=(i=(s=this.universalProvider)==null?void 0:s.session)==null?void 0:i.peer)==null?void 0:o.metadata.name)==="MetaMask Wallet",approvedCaipNetworkIds:this.getChainsFromNamespaces(a)}}return{supportsAllNetworks:!0,approvedCaipNetworkIds:[]}}async switchCaipNetwork(e){const n=e.chainNamespace;if(this.getAddressByChainNamespace(e.chainNamespace)){const s=Ke.getProviderId(n);if(e.chainNamespace===w.state.activeChain){const i=this.getAdapter(n);await(i==null?void 0:i.switchNetwork({caipNetwork:e}))}else if(this.setCaipNetwork(e),s===ze.CONNECTOR_TYPE_WALLET_CONNECT)this.syncWalletConnectAccount();else{const i=this.getAddressByChainNamespace(n);i&&this.syncAccount({address:i,chainId:e.id,chainNamespace:n})}}else this.setCaipNetwork(e)}getChainsFromNamespaces(e={}){return Object.values(e).flatMap(n=>{const r=n.chains||[],s=n.accounts.map(i=>{const{chainId:o,chainNamespace:a}=wt.parseCaipAddress(i);return`${a}:${o}`});return Array.from(new Set([...r,...s]))})}createAdapters(e){return this.createClients(),this.chainNamespaces.reduce((n,r)=>{var i,o;const s=e==null?void 0:e.find(a=>a.namespace===r);return s?(s.construct({namespace:r,projectId:(i=this.options)==null?void 0:i.projectId,networks:(o=this.caipNetworks)==null?void 0:o.filter(({chainNamespace:a})=>a===r)}),n[r]=s):n[r]=new dF({namespace:r,networks:this.getCaipNetworks()}),n},{})}async initChainAdapter(e){this.onConnectors(e),this.listenAdapter(e);const n=this.getAdapter(e);if(!n)throw new Error("adapter not found");await n.syncConnectors(),await this.createUniversalProviderForAdapter(e)}async initChainAdapters(){await Promise.all(this.chainNamespaces.map(async e=>{await this.initChainAdapter(e)})),this.initAdapterController()}onConnectors(e){const n=this.getAdapter(e);n==null||n.on("connectors",this.setConnectors.bind(this))}listenAdapter(e){const n=this.getAdapter(e);if(!n)return;const r=j.getConnectionStatus();B.state.enableReconnect===!1?this.setStatus("disconnected",e):r==="connected"?this.setStatus("connecting",e):r==="disconnected"?(j.clearAddressCache(),this.setStatus(r,e)):this.setStatus(r,e),n.on("switchNetwork",({address:s,chainId:i})=>{var l,u;const o=this.getCaipNetworks().find(d=>d.id.toString()===i.toString()||d.caipNetworkId.toString()===i.toString()),a=w.state.activeChain===e,c=(u=(l=w.state.chains.get(e))==null?void 0:l.accountState)==null?void 0:u.address;if(o){const d=a&&s?s:c;d&&this.syncAccount({address:d,chainId:o.id,chainNamespace:e})}else this.setUnsupportedNetwork(i)}),n.on("disconnect",()=>{const s=this.remoteFeatures.multiWallet,i=Array.from(V.state.connections.values()).flat();this.onDisconnectNamespace({chainNamespace:e,closeModal:!s||i.length===0})}),n.on("connections",s=>{this.setConnections(s,e)}),n.on("pendingTransactions",()=>{const s=this.getAddress(e),i=w.state.activeCaipNetwork;!s||!(i!=null&&i.id)||this.updateNativeBalance(s,i.id,i.chainNamespace)}),n.on("accountChanged",({address:s,chainId:i,connector:o})=>{var u,d;this.handlePreviousConnectorConnection(o);const a=w.state.activeChain===e;o!=null&&o.provider&&(this.syncProvider({id:o.id,type:o.type,provider:o==null?void 0:o.provider,chainNamespace:e}),this.syncConnectedWalletInfo(e));const c=(d=(u=w.getNetworkData(e))==null?void 0:u.caipNetwork)==null?void 0:d.id,l=i||c;a&&l?this.syncAccount({address:s,chainId:l,chainNamespace:e}):!a&&l?(this.syncAccountInfo(s,l,e),this.syncBalance({address:s,chainId:l,chainNamespace:e})):this.syncAccountInfo(s,i,e),j.addConnectedNamespace(e)})}async handlePreviousConnectorConnection(e){var c;const n=e==null?void 0:e.chain,r=e==null?void 0:e.id,s=z.getConnectorId(n),i=(c=B.state.remoteFeatures)==null?void 0:c.multiWallet,a=n&&r&&s&&s!==r&&!i;try{a&&await V.disconnect({id:s,namespace:n})}catch(l){console.warn("Error disconnecting previous connector",l)}}async createUniversalProviderForAdapter(e){var n,r,s;await this.getUniversalProvider(),this.universalProvider&&await((s=(r=(n=this.chainAdapters)==null?void 0:n[e])==null?void 0:r.setUniversalProvider)==null?void 0:s.call(r,this.universalProvider))}async syncExistingConnection(){await Promise.allSettled(this.chainNamespaces.map(e=>this.syncNamespaceConnection(e)))}async unSyncExistingConnection(){try{await Promise.allSettled(this.chainNamespaces.map(e=>V.disconnect({namespace:e,initialDisconnect:!0})))}catch(e){console.error("Error disconnecting existing connections:",e)}}async reconnectWalletConnect(){await this.syncWalletConnectAccount();const e=this.getAddress();this.getCaipAddress()||j.deleteRecentWallet();const n=j.getRecentWallet();be.sendEvent({type:"track",event:"CONNECT_SUCCESS",address:e,properties:{method:J.isMobile()?"mobile":"qrcode",name:(n==null?void 0:n.name)||"Unknown",reconnect:!0,view:pe.state.view,walletRank:n==null?void 0:n.order}})}async syncNamespaceConnection(e){try{e===T.CHAIN.EVM&&J.isSafeApp()&&z.setConnectorId(T.CONNECTOR_ID.SAFE,e);const n=z.getConnectorId(e);switch(this.setStatus("connecting",e),n){case T.CONNECTOR_ID.WALLET_CONNECT:await this.reconnectWalletConnect();break;case T.CONNECTOR_ID.AUTH:break;default:await this.syncAdapterConnection(e)}}catch(n){console.warn("AppKit couldn't sync existing connection",n),this.setStatus("disconnected",e)}}onDisconnectNamespace(e){const{chainNamespace:n,closeModal:r}=e||{};w.resetAccount(n),w.resetNetwork(n),j.removeConnectedNamespace(n);const s=Array.from(w.state.chains.keys());(n?[n]:s).forEach(o=>j.addDisconnectedConnectorId(z.getConnectorId(o)||"",o)),z.removeConnectorId(n),Ke.resetChain(n),this.setUser(null,n),this.setStatus("disconnected",n),this.setConnectedWalletInfo(null,n),r!==!1&&Re.close()}async syncAdapterConnections(){await Promise.allSettled(this.chainNamespaces.map(e=>{const n=this.getAdapter(e),r=this.getCaipAddress(e),s=this.getCaipNetwork(e);return n==null?void 0:n.syncConnections({connectToFirstConnector:!r,caipNetwork:s})}))}async syncAdapterConnection(e){var a,c,l,u,d;const n=this.getAdapter(e),r=this.getCaipNetwork(e),s=z.getConnectorId(e),o=z.getConnectors(e).find(h=>h.id===s);try{if(!n||!o)throw new Error(`Adapter or connector not found for namespace ${e}`);if(!(r!=null&&r.id))throw new Error("CaipNetwork not found");const h=await(n==null?void 0:n.syncConnection({namespace:e,id:o.id,chainId:r.id,rpcUrl:(l=(c=(a=r==null?void 0:r.rpcUrls)==null?void 0:a.default)==null?void 0:c.http)==null?void 0:l[0]}));h?(this.syncProvider({...h,chainNamespace:e}),await this.syncAccount({...h,chainNamespace:e}),this.setStatus("connected",e),be.sendEvent({type:"track",event:"CONNECT_SUCCESS",address:h.address,properties:{method:"browser",name:((u=o.info)==null?void 0:u.name)||o.name||"Unknown",reconnect:!0,view:pe.state.view,walletRank:(d=o==null?void 0:o.explorerWallet)==null?void 0:d.order}})):this.setStatus("disconnected",e)}catch{this.onDisconnectNamespace({chainNamespace:e,closeModal:!1})}}async syncWalletConnectAccount(){var r,s;const e=Object.keys(((s=(r=this.universalProvider)==null?void 0:r.session)==null?void 0:s.namespaces)||{}),n=this.chainNamespaces.map(async i=>{var d,h,f,p,g;const o=this.getAdapter(i);if(!o)return;const a=((p=(f=(h=(d=this.universalProvider)==null?void 0:d.session)==null?void 0:h.namespaces)==null?void 0:f[i])==null?void 0:p.accounts)||[],c=(g=w.state.activeCaipNetwork)==null?void 0:g.id,l=a.find(y=>{const{chainId:v}=wt.parseCaipAddress(y);return v===(c==null?void 0:c.toString())})||a[0];if(l){const y=wt.validateCaipAddress(l),{chainId:v,address:A}=wt.parseCaipAddress(y);if(Ke.setProviderId(i,ze.CONNECTOR_TYPE_WALLET_CONNECT),this.caipNetworks&&w.state.activeCaipNetwork&&o.namespace!==T.CHAIN.EVM){const E=o.getWalletConnectProvider({caipNetworks:this.getCaipNetworks(),provider:this.universalProvider,activeCaipNetwork:w.state.activeCaipNetwork});Ke.setProvider(i,E)}else Ke.setProvider(i,this.universalProvider);z.setConnectorId(T.CONNECTOR_ID.WALLET_CONNECT,i),j.addConnectedNamespace(i),await this.syncAccount({address:A,chainId:v,chainNamespace:i})}else e.includes(i)&&this.setStatus("disconnected",i);const u=this.getApprovedCaipNetworksData();this.syncConnectedWalletInfo(i),w.setApprovedCaipNetworksData(i,{approvedCaipNetworkIds:u.approvedCaipNetworkIds,supportsAllNetworks:u.supportsAllNetworks})});await Promise.all(n)}syncProvider({type:e,provider:n,id:r,chainNamespace:s}){Ke.setProviderId(s,e),Ke.setProvider(s,n),z.setConnectorId(r,s)}async syncAccount(e){var d,h;const n=e.chainNamespace===w.state.activeChain,r=w.getCaipNetworkByNamespace(e.chainNamespace,e.chainId),{address:s,chainId:i,chainNamespace:o}=e,{chainId:a}=j.getActiveNetworkProps(),c=(r==null?void 0:r.id)||a,l=((d=w.state.activeCaipNetwork)==null?void 0:d.name)===T.UNSUPPORTED_NETWORK_NAME,u=w.getNetworkProp("supportsAllNetworks",o);if(this.setStatus("connected",o),!(l&&!u)&&c){let f=this.getCaipNetworks().find(v=>v.id.toString()===c.toString()),p=this.getCaipNetworks().find(v=>v.chainNamespace===o);if(!u&&!f&&!p){const v=this.getApprovedCaipNetworkIds()||[],A=v.find(C=>{var O;return((O=wt.parseCaipNetworkId(C))==null?void 0:O.chainId)===c.toString()}),E=v.find(C=>{var O;return((O=wt.parseCaipNetworkId(C))==null?void 0:O.chainNamespace)===o});f=this.getCaipNetworks().find(C=>C.caipNetworkId===A),p=this.getCaipNetworks().find(C=>C.caipNetworkId===E||"deprecatedCaipNetworkId"in C&&C.deprecatedCaipNetworkId===E)}const g=f||p;(g==null?void 0:g.chainNamespace)===w.state.activeChain?B.state.enableNetworkSwitch&&!B.state.allowUnsupportedChain&&((h=w.state.activeCaipNetwork)==null?void 0:h.name)===T.UNSUPPORTED_NETWORK_NAME?w.showUnsupportedChainUI():this.setCaipNetwork(g):n||r&&this.setCaipNetworkOfNamespace(r,o),this.syncConnectedWalletInfo(o);const y=this.getAddress(o);ga.isLowerCaseMatch(s,y)||this.syncAccountInfo(s,g==null?void 0:g.id,o),n?await this.syncBalance({address:s,chainId:g==null?void 0:g.id,chainNamespace:o}):await this.syncBalance({address:s,chainId:r==null?void 0:r.id,chainNamespace:o}),this.syncIdentity({address:s,chainId:i,chainNamespace:o})}}async syncAccountInfo(e,n,r){const s=this.getCaipAddress(r),i=n||(s==null?void 0:s.split(":")[1]);if(!i)return;const o=`${r}:${i}:${e}`;this.setCaipAddress(o,r,!0),await this.syncIdentity({address:e,chainId:i,chainNamespace:r})}async syncReownName(e,n){try{const r=await this.getReownName(e);if(r[0]){const s=r[0];this.setProfileName(s.name,n)}else this.setProfileName(null,n)}catch{this.setProfileName(null,n)}}syncConnectedWalletInfo(e){var s;const n=z.getConnectorId(e),r=Ke.getProviderId(e);if(r===ze.CONNECTOR_TYPE_ANNOUNCED||r===ze.CONNECTOR_TYPE_INJECTED){if(n){const o=this.getConnectors().find(a=>{var d,h;const c=a.id===n,l=((d=a.info)==null?void 0:d.rdns)===n,u=(h=a.connectors)==null?void 0:h.some(f=>{var p;return f.id===n||((p=f.info)==null?void 0:p.rdns)===n});return c||l||!!u});if(o){const{info:a,name:c,imageUrl:l}=o,u=l||this.getConnectorImage(o);this.setConnectedWalletInfo({name:c,icon:u,...a},e)}}}else if(r===ze.CONNECTOR_TYPE_WALLET_CONNECT){const i=Ke.getProvider(e);i!=null&&i.session&&this.setConnectedWalletInfo({...i.session.peer.metadata,name:i.session.peer.metadata.name,icon:(s=i.session.peer.metadata.icons)==null?void 0:s[0]},e)}else if(n&&(n===T.CONNECTOR_ID.COINBASE_SDK||n===T.CONNECTOR_ID.COINBASE)){const i=this.getConnectors().find(l=>l.id===n),o=(i==null?void 0:i.name)||"Coinbase Wallet",a=(i==null?void 0:i.imageUrl)||this.getConnectorImage(i),c=i==null?void 0:i.info;this.setConnectedWalletInfo({...c,name:o,icon:a},e)}}async syncBalance(e){!oy.getNetworksByNamespace(this.getCaipNetworks(),e.chainNamespace).find(r=>{var s;return r.id.toString()===((s=e.chainId)==null?void 0:s.toString())})||!e.chainId||await this.updateNativeBalance(e.address,e.chainId,e.chainNamespace)}async ready(){await this.readyPromise}async updateNativeBalance(e,n,r){const s=this.getAdapter(r),i=w.getCaipNetworkByNamespace(r,n);if(s){const o=await s.getBalance({address:e,chainId:n,caipNetwork:i,tokens:this.options.tokens});return this.setBalance(o.balance,o.symbol,r),o}}async initializeUniversalAdapter(){var s,i,o,a,c,l,u,d,h,f;const e=UB.createLogger((p,...g)=>{p&&this.handleAlertError(p),console.error(...g)}),n={projectId:(s=this.options)==null?void 0:s.projectId,metadata:{name:(i=this.options)!=null&&i.metadata?(o=this.options)==null?void 0:o.metadata.name:"",description:(a=this.options)!=null&&a.metadata?(c=this.options)==null?void 0:c.metadata.description:"",url:(l=this.options)!=null&&l.metadata?(u=this.options)==null?void 0:u.metadata.url:"",icons:(d=this.options)!=null&&d.metadata?(h=this.options)==null?void 0:h.metadata.icons:[""]},logger:e};B.setManualWCControl(!!((f=this.options)!=null&&f.manualWCControl)),this.universalProvider=this.options.universalProvider??await nB.init(n);const r=this.universalProvider.disconnect.bind(this.universalProvider);this.universalProvider.disconnect=async()=>{try{return await r()}catch(p){if(p instanceof Error&&p.message.includes("Missing or invalid. Record was recently deleted"))return;throw p}},B.state.enableReconnect===!1&&this.universalProvider.session&&await this.universalProvider.disconnect(),this.listenWalletConnect()}listenWalletConnect(){this.universalProvider&&this.chainNamespaces.forEach(e=>{vs.listenWcProvider({universalProvider:this.universalProvider,namespace:e,onDisplayUri:n=>{V.setUri(n)},onConnect:n=>{const{address:r}=J.getAccount(n[0]);for(const s of this.chainNamespaces)j.removeDisconnectedConnectorId(T.CONNECTOR_ID.WALLET_CONNECT,s);V.finalizeWcConnection(r)},onDisconnect:()=>{w.state.noAdapters&&this.resetAccount(e),V.resetWcConnection()},onChainChanged:n=>{const r=w.state.activeChain,s=r&&z.state.activeConnectorIds[r]===T.CONNECTOR_ID.WALLET_CONNECT;if(r===e&&(w.state.noAdapters||s)){const i=this.getCaipNetworks().find(a=>a.id.toString()===n.toString()||a.caipNetworkId.toString()===n.toString()),o=this.getCaipNetwork();if(!i){this.setUnsupportedNetwork(n);return}(o==null?void 0:o.id.toString())!==(i==null?void 0:i.id.toString())&&(o==null?void 0:o.chainNamespace)===(i==null?void 0:i.chainNamespace)&&this.setCaipNetwork(i)}},onAccountsChanged:n=>{const r=w.state.activeChain,s=r&&z.state.activeConnectorIds[r]===T.CONNECTOR_ID.WALLET_CONNECT;if(r===e&&(w.state.noAdapters||s)){const i=n==null?void 0:n[0];i&&this.syncAccount({address:i.address,chainId:i.chainId,chainNamespace:i.chainNamespace})}}})})}createUniversalProvider(){var e;return!this.universalProviderInitPromise&&J.isClient()&&((e=this.options)!=null&&e.projectId)&&(this.universalProviderInitPromise=this.initializeUniversalAdapter()),this.universalProviderInitPromise}async getUniversalProvider(){if(!this.universalProvider)try{await this.createUniversalProvider()}catch(e){be.sendEvent({type:"error",event:"INTERNAL_SDK_ERROR",properties:{errorType:"UniversalProviderInitError",errorMessage:e instanceof Error?e.message:"Unknown",uncaught:!1}}),console.error("AppKit:getUniversalProvider - Cannot create provider",e)}return this.universalProvider}getDisabledCaipNetworks(){const e=w.getAllApprovedCaipNetworkIds(),n=w.getAllRequestedCaipNetworks();return J.sortRequestedNetworks(e,n).filter(s=>w.isCaipNetworkDisabled(s))}handleAlertError(e){const n=Object.entries(qt.UniversalProviderErrors).find(([,{message:a}])=>e.message.includes(a)),[r,s]=n??[],{message:i,alertErrorKey:o}=s??{};if(r&&i&&!this.reportedAlertErrors[r]){const a=qt.ALERT_ERRORS[o];a&&(Wt.open(a,"error"),this.reportedAlertErrors[r]=!0)}}getAdapter(e){var n;if(e)return(n=this.chainAdapters)==null?void 0:n[e]}createAdapter(e){var s,i;if(!e)return;const n=e.namespace;if(!n)return;this.createClients();const r=e;r.namespace=n,r.construct({namespace:n,projectId:(s=this.options)==null?void 0:s.projectId,networks:(i=this.caipNetworks)==null?void 0:i.filter(({chainNamespace:o})=>o===n)}),this.chainNamespaces.includes(n)||this.chainNamespaces.push(n),this.chainAdapters&&(this.chainAdapters[n]=r)}async open(e){await this.injectModalUi(),e!=null&&e.uri&&V.setUri(e.uri);const{isSwap:n,isSend:r}=this.toModalOptions();return n(e)?Re.open({...e,data:{swap:e.arguments}}):r(e)&&e.arguments?this.openSend(e.arguments):Re.open(e)}async close(){await this.injectModalUi(),Re.close()}setLoading(e,n){Re.setLoading(e,n)}async disconnect(e){await V.disconnect({namespace:e})}getSIWX(){return B.state.siwx}getError(){return""}getChainId(){var e;return(e=w.state.activeCaipNetwork)==null?void 0:e.id}async switchNetwork(e,{throwOnFailure:n=!1}={}){const r=this.getCaipNetworks().find(s=>s.id===e.id);if(!r){Wt.open(qt.ALERT_ERRORS.SWITCH_NETWORK_NOT_FOUND,"error");return}await w.switchActiveNetwork(r,{throwOnFailure:n})}getWalletProvider(){return w.state.activeChain?Ke.state.providers[w.state.activeChain]:null}getWalletProviderType(){return Ke.getProviderId(w.state.activeChain)}subscribeProviders(e){return Ke.subscribeProviders(e)}getThemeMode(){return un.state.themeMode}getThemeVariables(){return un.state.themeVariables}setThemeMode(e){un.setThemeMode(e),ih(un.state.themeMode)}setTermsConditionsUrl(e){B.setTermsConditionsUrl(e)}setPrivacyPolicyUrl(e){B.setPrivacyPolicyUrl(e)}setThemeVariables(e){un.setThemeVariables(e),uF(un.state.themeVariables)}subscribeTheme(e){return un.subscribe(e)}subscribeConnections(e){return this.remoteFeatures.multiWallet?V.subscribe(e):(Wt.open(T.REMOTE_FEATURES_ALERTS.MULTI_WALLET_NOT_ENABLED.DEFAULT,"info"),()=>{})}getWalletInfo(e){var r,s;if(e)return(s=(r=w.state.chains.get(e))==null?void 0:r.accountState)==null?void 0:s.connectedWalletInfo;const n=w.getAccountData();return n==null?void 0:n.connectedWalletInfo}getAccount(e){const n=e||w.state.activeChain,r=z.getAuthConnector(n),s=w.getAccountData(n),i=j.getConnectedConnectorId(w.state.activeChain),o=V.getConnections(n);if(!n)throw new Error("AppKit:getAccount - namespace is required");const a=o.flatMap(c=>c.accounts.map(({address:l,type:u,publicKey:d})=>J.createAccount(n,l,u||"eoa",d)));if(s)return{allAccounts:a,caipAddress:s.caipAddress,address:J.getPlainAddress(s.caipAddress),isConnected:!!s.caipAddress,status:s.status,embeddedWalletInfo:r&&i===T.CONNECTOR_ID.AUTH?{user:s.user?{...s.user,username:j.getConnectedSocialUsername()}:void 0,authProvider:s.socialProvider||"email",accountType:Nn(n),isSmartAccountDeployed:!!s.smartAccountDeployed}:void 0}}subscribeAccount(e,n){const r=()=>{const s=this.getAccount(n);s&&e(s)};n?w.subscribeChainProp("accountState",r,n):w.subscribe(r),z.subscribe(r)}subscribeNetwork(e){return w.subscribe(({activeCaipNetwork:n})=>{e({caipNetwork:n,chainId:n==null?void 0:n.id,caipNetworkId:n==null?void 0:n.caipNetworkId})})}subscribeWalletInfo(e,n){return n?w.subscribeChainProp("accountState",r=>e(r==null?void 0:r.connectedWalletInfo),n):w.subscribeChainProp("accountState",r=>e(r==null?void 0:r.connectedWalletInfo))}subscribeShouldUpdateToAddress(e){w.subscribeChainProp("accountState",n=>e(n==null?void 0:n.shouldUpdateToAddress))}subscribeCaipNetworkChange(e){w.subscribeKey("activeCaipNetwork",e)}getState(){return Tn.state}getRemoteFeatures(){return B.state.remoteFeatures}subscribeState(e){return Tn.subscribe(e)}subscribeRemoteFeatures(e){return B.subscribeKey("remoteFeatures",e)}showErrorMessage(e){gr.showError(e)}showSuccessMessage(e){gr.showSuccess(e)}getEvent(){return{...be.state}}subscribeEvents(e){return be.subscribe(e)}replace(e){pe.replace(e)}redirect(e){pe.push(e)}popTransactionStack(e){pe.popTransactionStack(e)}isOpen(){return Re.state.open}isTransactionStackEmpty(){return pe.state.transactionStack.length===0}static getInstance(){return this.instance}updateFeatures(e){B.setFeatures(e)}updateRemoteFeatures(e){B.setRemoteFeatures(e)}updateOptions(e){const r={...B.state||{},...e};B.setOptions(r)}setConnectMethodsOrder(e){B.setConnectMethodsOrder(e)}setWalletFeaturesOrder(e){B.setWalletFeaturesOrder(e)}setCollapseWallets(e){B.setCollapseWallets(e)}setSocialsOrder(e){B.setSocialsOrder(e)}getConnectMethodsOrder(){return Es.getConnectOrderMethod(B.state.features,z.getConnectors())}addNetwork(e,n){if(this.chainAdapters&&!this.chainAdapters[e])throw new Error(`Adapter for namespace ${e} doesn't exist`);const r=this.extendCaipNetwork(n,this.options);this.getCaipNetworks().find(s=>s.id===r.id)||w.addNetwork(r)}removeNetwork(e,n){if(this.chainAdapters&&!this.chainAdapters[e])throw new Error(`Adapter for namespace ${e} doesn't exist`);this.getCaipNetworks().find(s=>s.id===n)&&w.removeNetwork(e,n)}}let ny=!1;class db extends pF{async onAuthProviderConnected(e){const n=ga.userChainIdToChainNamespace(e==null?void 0:e.chainId);if(e.message&&e.signature&&e.siwxMessage&&await Mn.addEmbeddedWalletSession({chainId:e.siwxMessage.chainId,accountAddress:e.address,notBefore:e.siwxMessage.notBefore,statement:e.siwxMessage.statement,resources:e.siwxMessage.resources,requestId:e.siwxMessage.requestId,issuedAt:e.siwxMessage.issuedAt,domain:e.siwxMessage.domain,uri:e.siwxMessage.uri,version:e.siwxMessage.version,nonce:e.siwxMessage.nonce},e.message,e.signature),!n)throw new Error("AppKit:onAuthProviderConnected - namespace is required");const r=n===T.CHAIN.EVM?`eip155:${e.chainId}:${e.address}`:`${e.chainId}:${e.address}`,s=B.state.defaultAccountTypes[n],i=Nn(n),o=e.preferredAccountType||i||s;this.setCaipAddress(r,n);const{signature:a,siwxMessage:c,message:l,...u}=e,d=w.getAccountData(n);this.setUser({...(d==null?void 0:d.user)||{},...u},n),this.setSmartAccountDeployed(!!e.smartAccountDeployed,n),this.setPreferredAccountType(o,n),await Promise.all([this.syncAuthConnectorTheme(this.authProvider),this.syncAccount({address:e.address,chainId:e.chainId,chainNamespace:n})]),this.setLoading(!1,n)}setupAuthConnectorListeners(e){e.onRpcRequest(n=>{In.checkIfRequestExists(n)?In.checkIfRequestIsSafe(n)||this.handleUnsafeRPCRequest():(this.open(),console.error(at.RPC_METHOD_NOT_ALLOWED_MESSAGE,{method:n.method}),setTimeout(()=>{this.showErrorMessage(at.RPC_METHOD_NOT_ALLOWED_UI_MESSAGE)},300),e.rejectRpcRequests())}),e.onRpcError(()=>{this.isOpen()&&(this.isTransactionStackEmpty()?this.close():this.popTransactionStack("error"))}),e.onRpcSuccess((n,r)=>{const s=In.checkIfRequestIsSafe(r),i=this.getAddress(),o=w.state.activeCaipNetwork;s||(i&&(o!=null&&o.id)&&this.updateNativeBalance(i,o.id,o.chainNamespace),this.isTransactionStackEmpty()?this.close():this.popTransactionStack("success"))}),e.onNotConnected(()=>{const n=w.state.activeChain;if(!n)throw new Error("AppKit:onNotConnected - namespace is required");z.getConnectorId(n)===T.CONNECTOR_ID.AUTH&&(this.setCaipAddress(null,n),this.setLoading(!1,n))}),e.onConnect(this.onAuthProviderConnected.bind(this)),e.onSocialConnected(this.onAuthProviderConnected.bind(this)),e.onSetPreferredAccount(({address:n,type:r})=>{const s=w.state.activeChain;if(!s)throw new Error("AppKit:onSetPreferredAccount - namespace is required");n&&this.setPreferredAccountType(r,s)})}async syncAuthConnectorTheme(e){if(!e)return;const n=un.getSnapshot();await e.syncTheme({themeMode:n.themeMode,themeVariables:n.themeVariables,w3mThemeVariables:Ho(n.themeVariables,n.themeMode)})}async syncAuthConnector(e,n){var u,d,h,f,p,g,y,v,A;const r=T.AUTH_CONNECTOR_SUPPORTED_CHAINS.includes(n),s=n===w.state.activeChain;if(!r)return;this.setLoading(!0,n);const i=e.getLoginEmailUsed();this.setLoading(i,n),i&&this.setStatus("connecting",n);const o=e.getEmail(),a=e.getUsername(),c=((u=w.getAccountData(n))==null?void 0:u.user)||{};this.setUser({...c,username:a,email:o},n),this.setupAuthConnectorListeners(e);const{isConnected:l}=await e.isConnected();if(n&&r&&s)if(l&&((d=this.connectionControllerClient)!=null&&d.connectExternal)){await e.init(),await this.syncAuthConnectorTheme(e),await((p=this.connectionControllerClient)==null?void 0:p.connectExternal({id:T.CONNECTOR_ID.AUTH,info:{name:T.CONNECTOR_ID.AUTH},type:ze.CONNECTOR_TYPE_AUTH,provider:e,chainId:(f=(h=w.getNetworkData(n))==null?void 0:h.caipNetwork)==null?void 0:f.id,chain:n})),this.setStatus("connected",n);const E=j.getConnectedSocialProvider();E?be.sendEvent({type:"track",event:"SOCIAL_LOGIN_SUCCESS",address:this.getAddress(),properties:{provider:E,reconnect:!0}}):be.sendEvent({type:"track",event:"CONNECT_SUCCESS",address:this.getAddress(),properties:{method:"email",name:((A=(v=(y=(g=this.universalProvider)==null?void 0:g.session)==null?void 0:y.peer)==null?void 0:v.metadata)==null?void 0:A.name)||"Unknown",reconnect:!0,view:pe.state.view,walletRank:void 0}})}else z.getConnectorId(n)===T.CONNECTOR_ID.AUTH&&(this.setStatus("disconnected",n),j.removeConnectedNamespace(n));this.setLoading(!1,n)}async checkExistingTelegramSocialConnection(e){var n;try{if(!J.isTelegram())return;const r=j.getTelegramSocialProvider();if(!r||!J.isClient())return;const i=new URL(window.location.href).searchParams.get("result_uri");if(!i)return;r&&w.setAccountProp("socialProvider",r,e),await((n=this.authProvider)==null?void 0:n.init());const o=z.getAuthConnector();r&&o&&(this.setLoading(!0,e),await V.connectExternal({id:o.id,type:o.type,socialUri:i},o.chain),j.setConnectedSocialProvider(r),j.removeTelegramSocialProvider(),be.sendEvent({type:"track",event:"SOCIAL_LOGIN_SUCCESS",properties:{provider:r}}))}catch(r){this.setLoading(!1,e),console.error("checkExistingSTelegramocialConnection error",r)}try{const r=new URL(window.location.href);r.searchParams.delete("result_uri"),window.history.replaceState({},document.title,r.toString())}catch(r){console.error("tma social login failed",r)}}createAuthProvider(e){var l,u,d,h;if(!T.AUTH_CONNECTOR_SUPPORTED_CHAINS.includes(e))return;const r=(l=this.remoteFeatures)==null?void 0:l.email,s=Array.isArray((u=this.remoteFeatures)==null?void 0:u.socials)&&this.remoteFeatures.socials.length>0,i=r||s,a=ga.getActiveNamespaceConnectedToAuth()||e;!this.authProvider&&((d=this.options)!=null&&d.projectId)&&i&&(this.authProvider=jo.getInstance({projectId:this.options.projectId,enableLogger:this.options.enableAuthLogger,chainId:(h=this.getCaipNetwork(a))==null?void 0:h.caipNetworkId,abortController:qt.EmbeddedWalletAbortController,onTimeout:f=>{f==="iframe_load_failed"?Wt.open(qt.ALERT_ERRORS.IFRAME_LOAD_FAILED,"error"):f==="iframe_request_timeout"?Wt.open(qt.ALERT_ERRORS.IFRAME_REQUEST_TIMEOUT,"error"):f==="unverified_domain"&&Wt.open(qt.ALERT_ERRORS.UNVERIFIED_DOMAIN,"error")},getActiveCaipNetwork:f=>No(f),getCaipNetworks:f=>w.getCaipNetworks(f)}),Tn.subscribeOpen(f=>{var p;!f&&this.isTransactionStackEmpty()&&((p=this.authProvider)==null||p.rejectRpcRequests())}));const c=e===w.state.activeChain&&B.state.enableReconnect;B.state.enableReconnect===!1?this.syncAuthConnectorTheme(this.authProvider):this.authProvider&&c&&(this.syncAuthConnector(this.authProvider,e),this.checkExistingTelegramSocialConnection(e))}createAuthProviderForAdapter(e){var n,r,s;this.createAuthProvider(e),this.authProvider&&((s=(r=(n=this.chainAdapters)==null?void 0:n[e])==null?void 0:r.setAuthProvider)==null||s.call(r,this.authProvider))}initControllers(e){super.initControllers(e),this.options.excludeWalletIds&&ne.initializeExcludedWallets({ids:this.options.excludeWalletIds})}async switchCaipNetwork(e){var o,a,c;if(!e)return;const n=w.state.activeChain,r=e.chainNamespace,s=this.getAddressByChainNamespace(r);if(r===n&&((o=w.getAccountData(r))!=null&&o.caipAddress)){const l=this.getAdapter(r);await(l==null?void 0:l.switchNetwork({caipNetwork:e})),this.setCaipNetwork(e)}else{const u=Ke.getProviderId(n)===ze.CONNECTOR_TYPE_AUTH,d=Ke.getProviderId(r),h=d===ze.CONNECTOR_TYPE_AUTH,f=T.AUTH_CONNECTOR_SUPPORTED_CHAINS.includes(r);if(!r)throw new Error("AppKit:switchCaipNetwork - networkNamespace is required");if((u&&d===void 0||h)&&f)try{if(w.state.activeChain=e.chainNamespace,s){const p=this.getAdapter(r);await(p==null?void 0:p.switchNetwork({caipNetwork:e}))}else await((c=(a=this.connectionControllerClient)==null?void 0:a.connectExternal)==null?void 0:c.call(a,{id:T.CONNECTOR_ID.AUTH,provider:this.authProvider,chain:r,chainId:e.id,type:ze.CONNECTOR_TYPE_AUTH,caipNetwork:e}));this.setCaipNetwork(e)}catch{const g=this.getAdapter(r);await(g==null?void 0:g.switchNetwork({caipNetwork:e}))}else if(d===ze.CONNECTOR_TYPE_WALLET_CONNECT){if(!w.state.noAdapters){const p=this.getAdapter(r);await(p==null?void 0:p.switchNetwork({caipNetwork:e}))}this.setCaipNetwork(e),this.syncWalletConnectAccount()}else this.setCaipNetwork(e),s&&this.syncAccount({address:s,chainId:e.id,chainNamespace:r})}}async initialize(e){var n;await super.initialize(e),(n=this.chainNamespaces)==null||n.forEach(r=>{this.createAuthProviderForAdapter(r)}),await this.injectModalUi(),Tn.set({initialized:!0})}async syncIdentity({address:e,chainId:n,chainNamespace:r}){var a;const s=`${r}:${n}`,i=(a=this.caipNetworks)==null?void 0:a.find(c=>c.caipNetworkId===s);if(i!=null&&i.testnet){this.setProfileName(null,r),this.setProfileImage(null,r);return}const o=z.getConnectorId(r)===T.CONNECTOR_ID.AUTH;try{const{name:c,avatar:l}=await this.fetchIdentity({address:e});!c&&o?await this.syncReownName(e,r):(this.setProfileName(c,r),this.setProfileImage(l,r))}catch{n!==1&&this.setProfileImage(null,r)}}syncConnectedWalletInfo(e){const n=Ke.getProviderId(e);if(n===ze.CONNECTOR_TYPE_AUTH){const r=this.authProvider;if(r){const s=j.getConnectedSocialProvider()??"email",i=r.getEmail()??r.getUsername();this.setConnectedWalletInfo({name:n,identifier:i,social:s},e)}}else super.syncConnectedWalletInfo(e)}async injectModalUi(){if(J.isClient()&&!ny)try{const e={...Oe.DEFAULT_FEATURES,...this.options.features},n=this.remoteFeatures;if(await this.loadModalComponents(e,n),J.isClient()&&!document.querySelector("w3m-modal")){const s=document.createElement("w3m-modal");!B.state.disableAppend&&!B.state.enableEmbedded&&document.body.insertAdjacentElement("beforeend",s)}ny=!0}catch(e){console.error("Error injecting modal UI:",e)}}async loadModalComponents(e,n){if(!J.isClient())return;const r=[];(n.email||n.socials&&n.socials.length>0)&&r.push(Jt(()=>import("./embedded-wallet-5cdc1540.js"),["assets/embedded-wallet-5cdc1540.js","assets/index-378e1ef5.js","assets/index-1912ccb5.js","assets/index-cae81f79.css","assets/index-a1f961e2.js","assets/if-defined-7c3cfad4.js","assets/NetworkUtil-f04f30f1.js","assets/ref-27933252.js","assets/index-c1960f8b.js","assets/HelpersUtil-422d6b63.js","assets/ConstantsUtil-8392393d.js","assets/index-e65926ac.js","assets/index-25743d75.js","assets/index-24f70ec2.js","assets/index-9b4b1d43.js","assets/index-a6ebc22c.js","assets/NavigationUtil-a0d0ce87.js","assets/BlockOverrides-b253ac3c.js","assets/index-7a343a6c.js"])),n.email&&r.push(Jt(()=>import("./email-707c1fd2.js"),["assets/email-707c1fd2.js","assets/index-378e1ef5.js","assets/index-1912ccb5.js","assets/index-cae81f79.css","assets/index-c4bd5468.js","assets/index-a6ebc22c.js","assets/index-c1960f8b.js","assets/index-9b4b1d43.js","assets/if-defined-7c3cfad4.js","assets/ref-27933252.js","assets/index-24f70ec2.js","assets/index-e4a556a6.js","assets/index-e65926ac.js","assets/NetworkUtil-f04f30f1.js","assets/BlockOverrides-b253ac3c.js","assets/index-7a343a6c.js"])),n.socials&&r.push(Jt(()=>import("./socials-4e758372.js"),["assets/socials-4e758372.js","assets/index-378e1ef5.js","assets/index-1912ccb5.js","assets/index-cae81f79.css","assets/if-defined-7c3cfad4.js","assets/index-e66b5a2a.js","assets/ref-27933252.js","assets/index-29524bff.js","assets/NetworkUtil-f04f30f1.js","assets/index-9b4b1d43.js","assets/ConstantsUtil-8392393d.js","assets/index-24f70ec2.js","assets/index-c1960f8b.js","assets/index-628f4c66.js","assets/index-a1f961e2.js","assets/index-3aca6a72.js","assets/BlockOverrides-b253ac3c.js","assets/index-7a343a6c.js"])),n.swaps&&n.swaps.length>0&&r.push(Jt(()=>import("./swaps-62f6ad92.js"),["assets/swaps-62f6ad92.js","assets/index-378e1ef5.js","assets/index-1912ccb5.js","assets/index-cae81f79.css","assets/index-24f70ec2.js","assets/index-c1960f8b.js","assets/index-9b4b1d43.js","assets/if-defined-7c3cfad4.js","assets/index-6b3f1dc3.js","assets/SwapController-a78fa27a.js","assets/NetworkUtil-f04f30f1.js","assets/index-3aca6a72.js","assets/index-2a442cfb.js","assets/index-a1f961e2.js","assets/MathUtil-b514a570.js","assets/index-e65926ac.js","assets/ref-27933252.js","assets/BlockOverrides-b253ac3c.js","assets/index-7a343a6c.js"])),e.send&&r.push(Jt(()=>import("./send-40d251c3.js"),["assets/send-40d251c3.js","assets/index-378e1ef5.js","assets/index-1912ccb5.js","assets/index-cae81f79.css","assets/index-24f70ec2.js","assets/index-c1960f8b.js","assets/index-9b4b1d43.js","assets/if-defined-7c3cfad4.js","assets/index-0155e9d0.js","assets/ref-27933252.js","assets/index-66b13afd.js","assets/index-a6ebc22c.js","assets/index-2a442cfb.js","assets/index-a1f961e2.js","assets/index-3aca6a72.js","assets/SwapController-a78fa27a.js","assets/NetworkUtil-f04f30f1.js","assets/index-e65926ac.js","assets/index-0d9e7a1b.js","assets/index-3beb72c7.js","assets/BlockOverrides-b253ac3c.js","assets/index-7a343a6c.js"])),e.receive&&r.push(Jt(()=>import("./receive-731a2ffa.js"),["assets/receive-731a2ffa.js","assets/index-378e1ef5.js","assets/index-1912ccb5.js","assets/index-cae81f79.css","assets/if-defined-7c3cfad4.js","assets/index-a1f961e2.js","assets/index-628f4c66.js","assets/NetworkUtil-f04f30f1.js","assets/BlockOverrides-b253ac3c.js","assets/index-7a343a6c.js"])),n.onramp&&n.onramp.length>0&&r.push(Jt(()=>import("./onramp-e920d24b.js"),["assets/onramp-e920d24b.js","assets/index-378e1ef5.js","assets/index-1912ccb5.js","assets/index-cae81f79.css","assets/if-defined-7c3cfad4.js","assets/index-8a1e4e8f.js","assets/index-c1960f8b.js","assets/index-e66b5a2a.js","assets/ref-27933252.js","assets/index-a1f961e2.js","assets/index-11611d06.js","assets/index-674cfbc1.js","assets/index-a6ebc22c.js","assets/index-24f70ec2.js","assets/index-9b4b1d43.js","assets/index-e65926ac.js","assets/NetworkUtil-f04f30f1.js","assets/BlockOverrides-b253ac3c.js","assets/index-7a343a6c.js"])),n.payWithExchange&&r.push(Jt(()=>import("./pay-with-exchange-591f2a34.js"),["assets/pay-with-exchange-591f2a34.js","assets/index-378e1ef5.js","assets/index-1912ccb5.js","assets/index-cae81f79.css","assets/if-defined-7c3cfad4.js","assets/index-a1f961e2.js","assets/index-25743d75.js","assets/index-8a1e4e8f.js","assets/index-c1960f8b.js","assets/index-3aca6a72.js","assets/index-24f70ec2.js","assets/index-66b13afd.js","assets/ref-27933252.js","assets/index-a6ebc22c.js","assets/ExchangeController-8312cbac.js","assets/index-9b4b1d43.js","assets/index-e65926ac.js","assets/index-0d9e7a1b.js","assets/index-0155e9d0.js","assets/NetworkUtil-f04f30f1.js","assets/BlockOverrides-b253ac3c.js","assets/index-7a343a6c.js"])),n.activity&&r.push(Jt(()=>import("./transactions-6223734a.js"),["assets/transactions-6223734a.js","assets/index-378e1ef5.js","assets/index-1912ccb5.js","assets/index-cae81f79.css","assets/index-327f2bbb.js","assets/index-9b4b1d43.js","assets/if-defined-7c3cfad4.js","assets/index-a6ebc22c.js","assets/index-a1f961e2.js","assets/index-3aca6a72.js","assets/NetworkUtil-f04f30f1.js","assets/BlockOverrides-b253ac3c.js","assets/index-7a343a6c.js"])),(e.pay||n.payments)&&r.push(Jt(()=>import("./index-f1b0fa49.js"),["assets/index-f1b0fa49.js","assets/index-033dbcb1.js","assets/index-378e1ef5.js","assets/index-1912ccb5.js","assets/index-cae81f79.css","assets/if-defined-7c3cfad4.js","assets/index-24f70ec2.js","assets/index-c1960f8b.js","assets/index-25743d75.js","assets/index-a1f961e2.js","assets/index-8a1e4e8f.js","assets/index-3d9f7aa4.js","assets/index-9b4b1d43.js","assets/index-0155e9d0.js","assets/NetworkUtil-f04f30f1.js","assets/index-3aca6a72.js","assets/MathUtil-b514a570.js","assets/BlockOverrides-b253ac3c.js","assets/index-7a343a6c.js"])),n.emailCapture&&r.push(Jt(()=>import("./data-capture-a3e503e9.js"),["assets/data-capture-a3e503e9.js","assets/index-378e1ef5.js","assets/index-1912ccb5.js","assets/index-cae81f79.css","assets/index-c4bd5468.js","assets/index-a6ebc22c.js","assets/index-c1960f8b.js","assets/ReownAuthentication-95163b2a.js","assets/NetworkUtil-f04f30f1.js","assets/BlockOverrides-b253ac3c.js","assets/index-7a343a6c.js"])),await Promise.all([...r,Jt(()=>import("./index-d606cdd8.js"),["assets/index-d606cdd8.js","assets/index-378e1ef5.js","assets/index-1912ccb5.js","assets/index-cae81f79.css","assets/if-defined-7c3cfad4.js","assets/index-a1f961e2.js","assets/index-c1960f8b.js","assets/index-3beb72c7.js","assets/index-9b4b1d43.js","assets/index-50d289a7.js","assets/index-674cfbc1.js","assets/index-a6ebc22c.js","assets/HelpersUtil-422d6b63.js","assets/ConstantsUtil-8392393d.js","assets/NetworkUtil-f04f30f1.js","assets/index-3d9f7aa4.js","assets/index-25743d75.js","assets/index-8a1e4e8f.js","assets/index-24f70ec2.js","assets/ExchangeController-8312cbac.js","assets/index-327f2bbb.js","assets/index-3aca6a72.js","assets/index-0d9e7a1b.js","assets/index-6b3f1dc3.js","assets/MathUtil-b514a570.js","assets/index-0155e9d0.js","assets/ref-27933252.js","assets/index-e65926ac.js","assets/index-e4a556a6.js","assets/index-e66b5a2a.js","assets/index-29524bff.js","assets/index-628f4c66.js","assets/NavigationUtil-a0d0ce87.js","assets/index-11611d06.js","assets/BlockOverrides-b253ac3c.js","assets/index-7a343a6c.js"]),Jt(()=>import("./w3m-modal-caef023e.js"),["assets/w3m-modal-caef023e.js","assets/index-378e1ef5.js","assets/index-1912ccb5.js","assets/index-cae81f79.css","assets/if-defined-7c3cfad4.js","assets/index-033dbcb1.js","assets/index-24f70ec2.js","assets/index-c1960f8b.js","assets/index-25743d75.js","assets/index-a1f961e2.js","assets/index-8a1e4e8f.js","assets/index-3d9f7aa4.js","assets/index-9b4b1d43.js","assets/index-0155e9d0.js","assets/NetworkUtil-f04f30f1.js","assets/index-3aca6a72.js","assets/MathUtil-b514a570.js","assets/HelpersUtil-422d6b63.js","assets/ConstantsUtil-8392393d.js","assets/index-6b3f1dc3.js","assets/index-50d289a7.js","assets/index-674cfbc1.js","assets/index-a6ebc22c.js","assets/SwapController-a78fa27a.js","assets/BlockOverrides-b253ac3c.js","assets/index-7a343a6c.js"])])}}const gF="1.8.16";function mF(t){return new db({...t,sdkVersion:J.generateSdkVersion(t.adapters??[],"html",gF)})}const NL=Object.freeze(Object.defineProperty({__proto__:null,AppKit:db,CoreHelperUtil:J,WcConstantsUtil:Po,createAppKit:mF},Symbol.toStringTag,{value:"Module"}));export{Ln as $,At as A,me as B,w as C,No as D,be as E,ce as F,ne as G,Dc as H,Ko as I,j as J,In as K,ze as L,Re as M,uy as N,B as O,lC as P,qt as Q,pe as R,gr as S,un as T,vL as U,Ho as V,at as W,gt as X,Se as Y,Mo as Z,id as _,Pt as a,ai as a0,Mr as a1,dc as a2,Mn as a3,AL as a4,Ty as a5,wt as a6,Ub as a7,Ke as a8,va as a9,ga as aa,IF as ab,rh as ac,ib as ad,eo as ae,Xt as af,kc as ag,Es as ah,$i as ai,BC as aj,NL as ak,Ny as b,Oe as c,pL as d,gL as e,yL as f,wL as g,J as h,mL as i,CL as j,IL as k,_c as l,_L as m,ms as n,z as o,Xe as p,UC as q,SL as r,xt as s,hh as t,Wt as u,lF as v,qn as w,V as x,Nn as y,le as z};
|