@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
|
@@ -0,0 +1,277 @@
|
|
|
1
|
+
import{b as Vt,g as qE,_ as Jt,a as _y,k as sr,n as we,B as Be,c as Oi,F as yh,o as Sf}from"./index-02cebb5e.js";import{C as T,A as vy,N as Cy}from"./NetworkUtil-c907cd4d.js";import{r as HE}from"./index-b249573f.js";function zE(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 VE=20,KE=1,ci=1e6,If=1e6,GE=-7,YE=21,ZE=!1,Ra="[big.js] ",Ei=Ra+"Invalid ",pl=Ei+"decimal places",JE=Ei+"rounding mode",Sy=Ra+"Division by zero",Ve={},br=void 0,XE=/^-?(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i;function Iy(){function t(e){var n=this;if(!(n instanceof t))return e===br?Iy():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(Ei+"value");e=e===0&&1/e<0?"-0":String(e)}QE(n,e)}n.constructor=t}return t.prototype=Ve,t.DP=VE,t.RM=KE,t.NE=GE,t.PE=YE,t.strict=ZE,t.roundDown=0,t.roundHalfUp=1,t.roundHalfEven=2,t.roundUp=3,t}function QE(t,e){var n,r,s;if(!XE.test(e))throw Error(Ei+"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 _i(t,e,n,r){var s=t.c;if(n===br&&(n=t.constructor.RM),n!==0&&n!==1&&n!==2&&n!==3)throw Error(JE);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]!==br))),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]!==br||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 vi(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>ci)throw Error(pl);if(!s[0])throw Error(Sy);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=[],b=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[b++]=u?l:++l,g[0]&&u?g[y]=r[f]||0:g=[r[f]]}while((f++<p||g[0]!==br)&&i--);return!A[0]&&b!=1&&(A.shift(),v.e--,C--),b>C&&_i(v,C,n.RM,g[0]!==br),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(Sy);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<-If||t>If)throw Error(Ei+"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>ci)throw Error(Ei+"precision");return _i(new this.constructor(this),t,e)};Ve.round=function(t,e){if(t===br)t=0;else if(t!==~~t||t<-ci||t>ci)throw Error(pl);return _i(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(Ra+"No square root");i=Math.sqrt(+vi(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 _i(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!==br){if(t!==~~t||t<0||t>ci)throw Error(pl);for(n=_i(new n.constructor(n),++t,e);n.c.length<t;)n.c.push(0)}return vi(n,!0,!!r)};Ve.toFixed=function(t,e){var n=this,r=n.c[0];if(t!==br){if(t!==~~t||t<0||t>ci)throw Error(pl);for(n=_i(new n.constructor(n),t+n.e+1,e),t=t+n.e+1;n.c.length<t;)n.c.push(0)}return vi(n,!1,!!r)};Ve[Symbol.for("nodejs.util.inspect.custom")]=Ve.toJSON=Ve.toString=function(){var t=this,e=t.constructor;return vi(t,t.e<=e.NE||t.e>=e.PE,!!t.c[0])};Ve.toNumber=function(){var t=+vi(this,!0,!0);if(this.constructor.strict===!0&&!this.eq(t.toString()))throw Error(Ra+"Imprecise conversion");return t};Ve.toPrecision=function(t,e){var n=this,r=n.constructor,s=n.c[0];if(t!==br){if(t!==~~t||t<1||t>ci)throw Error(Ei+"precision");for(n=_i(new r(n),t,e);n.c.length<t;)n.c.push(0)}return vi(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(Ra+"valueOf disallowed");return vi(t,t.e<=e.NE||t.e>=e.PE,!0)};var ir=Iy();const Ny={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 Ny.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()}},e1=[{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"}]}],t1=[{type:"function",name:"approve",stateMutability:"nonpayable",inputs:[{name:"spender",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]}],n1=[{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"}]}],r1={getERC20Abi:t=>T.USDT_CONTRACT_ADDRESSES.includes(t)?n1:e1,getSwapAbi:()=>t1},Ri={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}}},jr={RPC_ERROR_CODE:{USER_REJECTED_REQUEST:4001,USER_REJECTED_METHODS:5002,USER_REJECTED:5e3,SEND_TRANSACTION_ERROR:5001},PROVIDER_RPC_ERROR_NAME:{PROVIDER_RPC:"ProviderRpcError",USER_REJECTED_REQUEST:"UserRejectedRequestError",SEND_TRANSACTION_ERROR:"SendTransactionError"},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(jr.isRpcProviderError(t)){const e=t.code===jr.RPC_ERROR_CODE.USER_REJECTED_REQUEST,n=t.code===jr.RPC_ERROR_CODE.USER_REJECTED_METHODS;return e||n||jr.isUserRejectedMessage(t.message)}return t instanceof Error?jr.isUserRejectedMessage(t.message):!1}};class s1 extends Error{constructor(e,n){super(n.message,{cause:e}),this.name=jr.PROVIDER_RPC_ERROR_NAME.PROVIDER_RPC,this.code=n.code}}class Ty extends s1{constructor(e){super(e,{code:jr.RPC_ERROR_CODE.USER_REJECTED_REQUEST,message:"User rejected the request"}),this.name=jr.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 ql(t){if(!t)throw new Error("Namespace is required for CONNECTED_CONNECTOR_ID");return`@appkit/${t}:connected_connector_id`}const ce={setItem(t,e){$o()&&e!==void 0&&localStorage.setItem(t,e)},getItem(t){if($o())return localStorage.getItem(t)||void 0},removeItem(t){$o()&&localStorage.removeItem(t)},clear(){$o()&&localStorage.clear()}};function $o(){return typeof window<"u"&&typeof localStorage<"u"}function ea(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 i1=Symbol(),Nf=Object.getPrototypeOf,sd=new WeakMap,o1=t=>t&&(sd.has(t)?sd.get(t):Nf(t)===Object.prototype||Nf(t)===Array.prototype),a1=t=>o1(t)&&t[i1]||null,Tf=(t,e=!0)=>{sd.set(t,e)},wh=t=>typeof t=="object"&&t!==null,c1=t=>wh(t)&&!xa.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),Oy=(t,e)=>{const n=id.get(t);if((n==null?void 0:n[0])===e)return n[1];const r=Array.isArray(t)?[]:Object.create(Object.getPrototypeOf(t));return Tf(r,!0),id.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(xa.has(i))Tf(i,!1);else if(Os.has(i)){const[c,l]=Os.get(i);a.value=Oy(c,l())}Object.defineProperty(r,s,a)}),Object.preventExtensions(r)},l1=(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&&(Of(l,o)||ta.has(o)&&Of(l,ta.get(o))))return!0;n(i),wh(o)&&(o=a1(o)||o);const u=!Os.has(o)&&d1(o)?Xe(o):o;return e(i,u),Reflect.set(s,i,u,a),r(["set",[i],o,l]),!0}}),Os=new WeakMap,xa=new WeakSet,id=new WeakMap,_c=[1],ta=new WeakMap;let Of=Object.is,u1=(t,e)=>new Proxy(t,e),d1=c1,h1=Oy,f1=l1;function Xe(t={}){if(!wh(t))throw new Error("object required");const e=ta.get(t);if(e)return e;let n=_c[0];const r=new Set,s=(y,v=++_c[0])=>{n!==v&&(i=n=v,r.forEach(A=>A(y,v)))};let i=n;const o=(y=_c[0])=>(i!==y&&(i=y,c.forEach(([v])=>{const A=v[1](y);A>n&&(n=A)})),n),a=y=>(v,A)=>{const b=[...v];b[1]=[y,...b[1]],s(b,A)},c=new Map,l=(y,v)=>{const A=!xa.has(v)&&Os.get(v);if(A)if(r.size){const b=A[2](a(y));c.set(y,[A,b])}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,b],C)=>{const O=A[2](a(C));c.set(C,[A,O])}),()=>{r.delete(y),r.size===0&&c.forEach(([A,b],C)=>{b&&(b(),c.set(C,[A]))})});let h=!0;const f=f1(()=>h,l,u,s),p=u1(t,f);ta.set(t,p);const g=[t,o,d];return Os.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=Os.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 na(t){const e=Os.get(t),[n,r]=e;return h1(n,r())}function ra(t){return xa.add(t),t}function p1(){return{proxyStateMap:Os,refSet:xa,snapCache:id,versionHolder:_c,proxyCache:ta}}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:g1,snapCache:m1}=p1(),Va=t=>g1.has(t);function y1(t){const e=[];let n=0;const r=new Map,s=new WeakMap,i=()=>{const l=m1.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 Va(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(!Va(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(!Va(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(!Va(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 Hl=(typeof Vt<"u"&&typeof{}<"u"?{}.NEXT_PUBLIC_SECURE_SITE_ORIGIN:void 0)||"https://secure.walletconnect.org",Ry=[{label:"Meld.io",name:"meld",feeRange:"1-2%",url:"https://meldcrypto.com",supportedChains:["eip155","solana"]}],w1="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:Hl,SECURE_SITE_DASHBOARD:`${Hl}/dashboard`,SECURE_SITE_FAVICON:`${Hl}/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:[Ri.ConnectorExplorerIds[T.CONNECTOR_ID.COINBASE],Ri.ConnectorExplorerIds[T.CONNECTOR_ID.COINBASE_SDK],Ri.ConnectorExplorerIds[T.CONNECTOR_ID.BASE_ACCOUNT],Ri.ConnectorExplorerIds[T.SOLFLARE_CONNECTOR_NAME],Ri.ConnectorExplorerIds[T.PHANTOM_CONNECTOR_NAME],Ri.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=ql(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=ql(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=ql(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)}}},Z={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 Z.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(Z.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(Z.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(!Z.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,Z.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))},appendPayToUri(t,e){return e?`${t}&pay=${encodeURIComponent(e)}`:t}},b1="https://secure.walletconnect.org/sdk",E1=(typeof Vt<"u"&&typeof{}<"u"?{}.NEXT_PUBLIC_SECURE_SITE_SDK_URL:void 0)||b1,_1=(typeof Vt<"u"&&typeof{}<"u"?{}.NEXT_PUBLIC_DEFAULT_LOG_LEVEL:void 0)||"error",v1=(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"}},Rf={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}`))}},Ka=30*1e3,In={checkIfAllowedToTriggerEmail(){const t=gt.get(ae.LAST_EMAIL_LOGIN_TIME);if(t){const e=Date.now()-Number(t);if(e<Ka){const n=Math.ceil((Ka-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<Ka)return Math.ceil((Ka-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(Rf.transactionHash))||(t==null?void 0:t.match(Rf.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 od;(function(t){t.mergeShapes=(e,n)=>({...e,...n})})(od||(od={}));const re=je.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),gs=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"]),C1=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 sa=(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 xy=sa;function A1(t){xy=t}function kc(){return xy}const Uc=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}},S1=[];function oe(t,e){const n=Uc({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,kc(),sa].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"}),Py=t=>({status:"dirty",value:t}),nn=t=>({status:"valid",value:t}),ad=t=>t.status==="aborted",cd=t=>t.status==="dirty",ia=t=>t.status==="valid",$c=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 vr{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 xf=(t,e)=>{if(ia(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 gs(e.data)}_getOrReturnCtx(e,n){return n||{common:e.parent.common,data:e.data,parsedType:gs(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:gs(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){const n=this._parse(e);if($c(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:gs(e)},i=this._parseSync({data:e,path:s.path,parent:s});return xf(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:gs(e)},s=this._parse({data:e,path:r.path,parent:r}),i=await($c(s)?s:Promise.resolve(s));return xf(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 Hr.create(this,this._def)}nullable(){return di.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return er.create(this,this._def)}promise(){return so.create(this,this._def)}or(e){return la.create([this,e],this._def)}and(e){return ua.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 ga({...Ce(this._def),innerType:this,defaultValue:n,typeName:ye.ZodDefault})}brand(){return new ky({typeName:ye.ZodBranded,type:this,...Ce(this._def)})}catch(e){const n=typeof e=="function"?e:()=>e;return new Mc({...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 Pa.create(this,e)}readonly(){return Wc.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const I1=/^c[^\s-]{8,}$/i,N1=/^[a-z][a-z0-9]*$/,T1=/^[0-9A-HJKMNP-TV-Z]{26}$/,O1=/^[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,R1=/^(?!\.)(?!.*\.\.)([A-Z0-9_+-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,x1="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let zl;const P1=/^(((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})))$/,k1=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 U1(t,e){return!!((e==="v4"||!e)&&P1.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")R1.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")zl||(zl=new RegExp(x1,"u")),zl.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")O1.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")I1.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")N1.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")T1.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"?k1(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"?U1(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 $1(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 Rs 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"?$1(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 Rs({...this._def,checks:[...this._def.checks,{kind:e,value:n,inclusive:r,message:ge.toString(s)}]})}_addCheck(e){return new Rs({...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)}}Rs.create=t=>new Rs({checks:[],typeName:ye.ZodNumber,coerce:(t==null?void 0:t.coerce)||!1,...Ce(t)});class xs 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 xs({...this._def,checks:[...this._def.checks,{kind:e,value:n,inclusive:r,message:ge.toString(s)}]})}_addCheck(e){return new xs({...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}}xs.create=t=>{var e;return new xs({checks:[],typeName:ye.ZodBigInt,coerce:(e=t==null?void 0:t.coerce)!==null&&e!==void 0?e:!1,...Ce(t)})};class oa 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)}}oa.create=t=>new oa({typeName:ye.ZodBoolean,coerce:(t==null?void 0:t.coerce)||!1,...Ce(t)});class li 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 li({...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}}li.create=t=>new li({checks:[],coerce:(t==null?void 0:t.coerce)||!1,typeName:ye.ZodDate,...Ce(t)});class Bc 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)}}Bc.create=t=>new Bc({typeName:ye.ZodSymbol,...Ce(t)});class aa 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)}}aa.create=t=>new aa({typeName:ye.ZodUndefined,...Ce(t)});class ca 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)}}ca.create=t=>new ca({typeName:ye.ZodNull,...Ce(t)});class ro extends Ie{constructor(){super(...arguments),this._any=!0}_parse(e){return nn(e.data)}}ro.create=t=>new ro({typeName:ye.ZodAny,...Ce(t)});class ii extends Ie{constructor(){super(...arguments),this._unknown=!0}_parse(e){return nn(e.data)}}ii.create=t=>new ii({typeName:ye.ZodUnknown,...Ce(t)});class Yr extends Ie{_parse(e){const n=this._getOrReturnCtx(e);return oe(n,{code:K.invalid_type,expected:re.never,received:n.parsedType}),_e}}Yr.create=t=>new Yr({typeName:ye.ZodNever,...Ce(t)});class Lc 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)}}Lc.create=t=>new Lc({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 vr(n,o,n.path,a)))).then(o=>Kt.mergeArray(r,o));const i=[...n.data].map((o,a)=>s.type._parseSync(new vr(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 Wi(t){if(t instanceof rt){const e={};for(const n in t.shape){const r=t.shape[n];e[n]=Hr.create(Wi(r))}return new rt({...t._def,shape:()=>e})}else return t instanceof er?new er({...t._def,type:Wi(t.element)}):t instanceof Hr?Hr.create(Wi(t.unwrap())):t instanceof di?di.create(Wi(t.unwrap())):t instanceof Cr?Cr.create(t.items.map(e=>Wi(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 Yr&&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 vr(s,d,s.path,l)),alwaysSet:l in s.data})}if(this._def.catchall instanceof Yr){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 vr(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 Wi(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 Hr;)i=i._def.innerType;n[r]=i}}),new rt({...this._def,shape:()=>n})}keyof(){return Dy(je.objectKeys(this.shape))}}rt.create=(t,e)=>new rt({shape:()=>t,unknownKeys:"strip",catchall:Yr.create(),typeName:ye.ZodObject,...Ce(e)});rt.strictCreate=(t,e)=>new rt({shape:()=>t,unknownKeys:"strict",catchall:Yr.create(),typeName:ye.ZodObject,...Ce(e)});rt.lazycreate=(t,e)=>new rt({shape:t,unknownKeys:"strip",catchall:Yr.create(),typeName:ye.ZodObject,...Ce(e)});class la 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}}la.create=(t,e)=>new la({options:t,typeName:ye.ZodUnion,...Ce(e)});const vc=t=>t instanceof ha?vc(t.schema):t instanceof nr?vc(t.innerType()):t instanceof fa?[t.value]:t instanceof Ps?t.options:t instanceof pa?Object.keys(t.enum):t instanceof ga?vc(t._def.innerType):t instanceof aa?[void 0]:t instanceof ca?[null]:null;class gl 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=vc(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 gl({typeName:ye.ZodDiscriminatedUnion,discriminator:e,options:n,optionsMap:s,...Ce(r)})}}function ld(t,e){const n=gs(t),r=gs(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=ld(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=ld(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 ua extends Ie{_parse(e){const{status:n,ctx:r}=this._processInputParams(e),s=(i,o)=>{if(ad(i)||ad(o))return _e;const a=ld(i.value,o.value);return a.valid?((cd(i)||cd(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}))}}ua.create=(t,e,n)=>new ua({left:t,right:e,typeName:ye.ZodIntersection,...Ce(n)});class Cr 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 vr(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 Cr({...this._def,rest:e})}}Cr.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Cr({items:t,typeName:ye.ZodTuple,rest:null,...Ce(e)})};class da 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 vr(r,a,r.path,a)),value:o._parse(new vr(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 da({keyType:e,valueType:n,typeName:ye.ZodRecord,...Ce(r)}):new da({keyType:Xn.create(),valueType:e,typeName:ye.ZodRecord,...Ce(n)})}}class Fc 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 vr(r,a,r.path,[l,"key"])),value:i._parse(new vr(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}}}}Fc.create=(t,e,n)=>new Fc({valueType:e,keyType:t,typeName:ye.ZodMap,...Ce(n)});class ui 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 vr(r,c,r.path,l)));return r.common.async?Promise.all(a).then(c=>o(c)):o(a)}min(e,n){return new ui({...this._def,minSize:{value:e,message:ge.toString(n)}})}max(e,n){return new ui({...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)}}ui.create=(t,e)=>new ui({valueType:t,minSize:null,maxSize:null,typeName:ye.ZodSet,...Ce(e)});class Yi 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 Uc({data:a,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,kc(),sa].filter(l=>!!l),issueData:{code:K.invalid_arguments,argumentsError:c}})}function s(a,c){return Uc({data:a,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,kc(),sa].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 so){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 Yi({...this._def,args:Cr.create(e).rest(ii.create())})}returns(e){return new Yi({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,n,r){return new Yi({args:e||Cr.create([]).rest(ii.create()),returns:n||ii.create(),typeName:ye.ZodFunction,...Ce(r)})}}class ha 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})}}ha.create=(t,e)=>new ha({getter:t,typeName:ye.ZodLazy,...Ce(e)});class fa 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}}fa.create=(t,e)=>new fa({value:t,typeName:ye.ZodLiteral,...Ce(e)});function Dy(t,e){return new Ps({values:t,typeName:ye.ZodEnum,...Ce(e)})}class Ps 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 Ps.create(e)}exclude(e){return Ps.create(this.options.filter(n=>!e.includes(n)))}}Ps.create=Dy;class pa 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}}pa.create=(t,e)=>new pa({values:t,typeName:ye.ZodNativeEnum,...Ce(e)});class so 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})))}}so.create=(t,e)=>new so({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(!ia(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=>ia(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 Hr extends Ie{_parse(e){return this._getType(e)===re.undefined?nn(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}Hr.create=(t,e)=>new Hr({innerType:t,typeName:ye.ZodOptional,...Ce(e)});class di extends Ie{_parse(e){return this._getType(e)===re.null?nn(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}di.create=(t,e)=>new di({innerType:t,typeName:ye.ZodNullable,...Ce(e)});class ga 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}}ga.create=(t,e)=>new ga({innerType:t,typeName:ye.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...Ce(e)});class Mc 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 $c(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}}Mc.create=(t,e)=>new Mc({innerType:t,typeName:ye.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...Ce(e)});class jc 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}}}jc.create=t=>new jc({typeName:ye.ZodNaN,...Ce(t)});const B1=Symbol("zod_brand");class ky 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 Pa 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(),Py(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 Pa({in:e,out:n,typeName:ye.ZodPipeline})}}class Wc extends Ie{_parse(e){const n=this._def.innerType._parse(e);return ia(n)&&(n.value=Object.freeze(n.value)),n}}Wc.create=(t,e)=>new Wc({innerType:t,typeName:ye.ZodReadonly,...Ce(e)});const Uy=(t,e={},n)=>t?ro.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})}}):ro.create(),L1={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 F1=(t,e={message:`Input not instance of ${t.name}`})=>Uy(n=>n instanceof t,e),$y=Xn.create,By=Rs.create,M1=jc.create,j1=xs.create,Ly=oa.create,W1=li.create,q1=Bc.create,H1=aa.create,z1=ca.create,V1=ro.create,K1=ii.create,G1=Yr.create,Y1=Lc.create,Z1=er.create,J1=rt.create,X1=rt.strictCreate,Q1=la.create,e_=gl.create,t_=ua.create,n_=Cr.create,r_=da.create,s_=Fc.create,i_=ui.create,o_=Yi.create,a_=ha.create,c_=fa.create,l_=Ps.create,u_=pa.create,d_=so.create,Pf=nr.create,h_=Hr.create,f_=di.create,p_=nr.createWithPreprocess,g_=Pa.create,m_=()=>$y().optional(),y_=()=>By().optional(),w_=()=>Ly().optional(),b_={string:t=>Xn.create({...t,coerce:!0}),number:t=>Rs.create({...t,coerce:!0}),boolean:t=>oa.create({...t,coerce:!0}),bigint:t=>xs.create({...t,coerce:!0}),date:t=>li.create({...t,coerce:!0})},E_=_e;var m=Object.freeze({__proto__:null,defaultErrorMap:sa,setErrorMap:A1,getErrorMap:kc,makeIssue:Uc,EMPTY_PATH:S1,addIssueToContext:oe,ParseStatus:Kt,INVALID:_e,DIRTY:Py,OK:nn,isAborted:ad,isDirty:cd,isValid:ia,isAsync:$c,get util(){return je},get objectUtil(){return od},ZodParsedType:re,getParsedType:gs,ZodType:Ie,ZodString:Xn,ZodNumber:Rs,ZodBigInt:xs,ZodBoolean:oa,ZodDate:li,ZodSymbol:Bc,ZodUndefined:aa,ZodNull:ca,ZodAny:ro,ZodUnknown:ii,ZodNever:Yr,ZodVoid:Lc,ZodArray:er,ZodObject:rt,ZodUnion:la,ZodDiscriminatedUnion:gl,ZodIntersection:ua,ZodTuple:Cr,ZodRecord:da,ZodMap:Fc,ZodSet:ui,ZodFunction:Yi,ZodLazy:ha,ZodLiteral:fa,ZodEnum:Ps,ZodNativeEnum:pa,ZodPromise:so,ZodEffects:nr,ZodTransformer:nr,ZodOptional:Hr,ZodNullable:di,ZodDefault:ga,ZodCatch:Mc,ZodNaN:jc,BRAND:B1,ZodBranded:ky,ZodPipeline:Pa,ZodReadonly:Wc,custom:Uy,Schema:Ie,ZodSchema:Ie,late:L1,get ZodFirstPartyTypeKind(){return ye},coerce:b_,any:V1,array:Z1,bigint:j1,boolean:Ly,date:W1,discriminatedUnion:e_,effect:Pf,enum:l_,function:o_,instanceof:F1,intersection:t_,lazy:a_,literal:c_,map:s_,nan:M1,nativeEnum:u_,never:G1,null:z1,nullable:f_,number:By,object:J1,oboolean:w_,onumber:y_,optional:h_,ostring:m_,pipeline:g_,preprocess:p_,promise:d_,record:r_,set:i_,strictObject:X1,string:$y,symbol:q1,transformer:Pf,tuple:n_,undefined:H1,union:Q1,unknown:K1,void:Y1,NEVER:E_,ZodIssueCode:K,quotelessJson:C1,ZodError:Qn});const st=m.object({message:m.string()});function se(t){return m.literal(ae[t])}const ml=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 __=m.object({chainId:m.string().or(m.number()),rpcUrl:m.optional(m.string())}),v_=m.object({email:m.string().email()}),C_=m.object({otp:m.string()}),A_=m.object({uri:m.string(),preferredAccountType:m.optional(m.string()),chainId:m.optional(m.string().or(m.number())),siwxMessage:m.optional(ml),rpcUrl:m.optional(m.string())}),S_=m.object({chainId:m.optional(m.string().or(m.number())),preferredAccountType:m.optional(m.string()),socialUri:m.optional(m.string()),siwxMessage:m.optional(ml),rpcUrl:m.optional(m.string())}),I_=m.object({provider:m.enum(["google","github","apple","facebook","x","discord"])}),N_=m.object({email:m.string().email()}),T_=m.object({otp:m.string()}),O_=m.object({otp:m.string()}),R_=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()))}),x_=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()}),P_=m.object({type:m.string()}),D_=m.object({action:m.enum(["VERIFY_DEVICE","VERIFY_OTP","CONNECT"])}),k_=m.object({url:m.string()}),U_=m.object({userName:m.string()}),$_=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(ml)}),B_=m.object({action:m.enum(["VERIFY_PRIMARY_OTP","VERIFY_SECONDARY_OTP"])}),L_=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(ml)}),F_=m.object({uri:m.string()}),M_=m.object({isConnected:m.boolean()}),j_=m.object({chainId:m.string().or(m.number())}),W_=m.object({chainId:m.string().or(m.number())}),q_=m.object({newEmail:m.string().email()}),H_=m.object({smartAccountEnabledNetworks:m.array(m.number())});m.object({address:m.string(),isDeployed:m.boolean()});const z_=m.object({version:m.string().optional()}),V_=m.object({type:m.string(),address:m.string()}),K_=m.any(),G_=m.object({method:m.literal("eth_accounts")}),Y_=m.object({method:m.literal("eth_blockNumber")}),Z_=m.object({method:m.literal("eth_call"),params:m.array(m.any())}),J_=m.object({method:m.literal("eth_chainId")}),X_=m.object({method:m.literal("eth_estimateGas"),params:m.array(m.any())}),Q_=m.object({method:m.literal("eth_feeHistory"),params:m.array(m.any())}),ev=m.object({method:m.literal("eth_gasPrice")}),tv=m.object({method:m.literal("eth_getAccount"),params:m.array(m.any())}),nv=m.object({method:m.literal("eth_getBalance"),params:m.array(m.any())}),rv=m.object({method:m.literal("eth_getBlockByHash"),params:m.array(m.any())}),sv=m.object({method:m.literal("eth_getBlockByNumber"),params:m.array(m.any())}),iv=m.object({method:m.literal("eth_getBlockReceipts"),params:m.array(m.any())}),ov=m.object({method:m.literal("eth_getBlockTransactionCountByHash"),params:m.array(m.any())}),av=m.object({method:m.literal("eth_getBlockTransactionCountByNumber"),params:m.array(m.any())}),cv=m.object({method:m.literal("eth_getCode"),params:m.array(m.any())}),lv=m.object({method:m.literal("eth_getFilterChanges"),params:m.array(m.any())}),uv=m.object({method:m.literal("eth_getFilterLogs"),params:m.array(m.any())}),dv=m.object({method:m.literal("eth_getLogs"),params:m.array(m.any())}),hv=m.object({method:m.literal("eth_getProof"),params:m.array(m.any())}),fv=m.object({method:m.literal("eth_getStorageAt"),params:m.array(m.any())}),pv=m.object({method:m.literal("eth_getTransactionByBlockHashAndIndex"),params:m.array(m.any())}),gv=m.object({method:m.literal("eth_getTransactionByBlockNumberAndIndex"),params:m.array(m.any())}),mv=m.object({method:m.literal("eth_getTransactionByHash"),params:m.array(m.any())}),yv=m.object({method:m.literal("eth_getTransactionCount"),params:m.array(m.any())}),wv=m.object({method:m.literal("eth_getTransactionReceipt"),params:m.array(m.any())}),bv=m.object({method:m.literal("eth_getUncleCountByBlockHash"),params:m.array(m.any())}),Ev=m.object({method:m.literal("eth_getUncleCountByBlockNumber"),params:m.array(m.any())}),_v=m.object({method:m.literal("eth_maxPriorityFeePerGas")}),vv=m.object({method:m.literal("eth_newBlockFilter")}),Cv=m.object({method:m.literal("eth_newFilter"),params:m.array(m.any())}),Av=m.object({method:m.literal("eth_newPendingTransactionFilter")}),Sv=m.object({method:m.literal("eth_sendRawTransaction"),params:m.array(m.any())}),Iv=m.object({method:m.literal("eth_syncing"),params:m.array(m.any())}),Nv=m.object({method:m.literal("eth_uninstallFilter"),params:m.array(m.any())}),Df=m.object({method:m.literal("personal_sign"),params:m.array(m.any())}),Tv=m.object({method:m.literal("eth_signTypedData_v4"),params:m.array(m.any())}),Ov=m.object({method:m.literal("eth_sendTransaction"),params:m.array(m.any())}),Rv=m.object({method:m.literal("solana_signMessage"),params:m.object({message:m.string(),pubkey:m.string()})}),xv=m.object({method:m.literal("solana_signTransaction"),params:m.object({transaction:m.string()})}),Pv=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()})}),kv=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()}))}))}),Uv=m.object({method:m.literal("wallet_getCallsStatus"),params:m.array(m.string())}),$v=m.object({method:m.literal("wallet_getCapabilities"),params:m.array(m.string().or(m.number()).optional()).optional()}),Bv=m.object({method:m.literal("wallet_grantPermissions"),params:m.array(m.any())}),Lv=m.object({method:m.literal("wallet_revokePermissions"),params:m.any()}),Fv=m.object({method:m.literal("wallet_getAssets"),params:m.any()}),kf=m.object({token:m.string()}),ie=m.object({id:m.string().optional()}),Vl={appEvent:ie.extend({type:se("APP_SWITCH_NETWORK"),payload:__}).or(ie.extend({type:se("APP_CONNECT_EMAIL"),payload:v_})).or(ie.extend({type:se("APP_CONNECT_DEVICE")})).or(ie.extend({type:se("APP_CONNECT_OTP"),payload:C_})).or(ie.extend({type:se("APP_CONNECT_SOCIAL"),payload:A_})).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(S_)})).or(ie.extend({type:se("APP_GET_SOCIAL_REDIRECT_URI"),payload:I_})).or(ie.extend({type:se("APP_SIGN_OUT")})).or(ie.extend({type:se("APP_IS_CONNECTED"),payload:m.optional(kf)})).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:P_})).or(ie.extend({type:se("APP_RPC_REQUEST"),payload:Df.or(Fv).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(ov).or(av).or(cv).or(lv).or(uv).or(dv).or(hv).or(fv).or(pv).or(gv).or(mv).or(yv).or(wv).or(bv).or(Ev).or(_v).or(vv).or(Cv).or(Av).or(Sv).or(Iv).or(Nv).or(Df).or(Tv).or(Ov).or(Rv).or(xv).or(Pv).or(Dv).or(Uv).or(kv).or($v).or(Bv).or(Lv).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:N_})).or(ie.extend({type:se("APP_UPDATE_EMAIL_PRIMARY_OTP"),payload:T_})).or(ie.extend({type:se("APP_UPDATE_EMAIL_SECONDARY_OTP"),payload:O_})).or(ie.extend({type:se("APP_SYNC_THEME"),payload:R_})).or(ie.extend({type:se("APP_SYNC_DAPP_DATA"),payload:x_})).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:W_})).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:k_})).or(ie.extend({type:se("FRAME_GET_FARCASTER_URI_ERROR"),payload:st})).or(ie.extend({type:se("FRAME_CONNECT_FARCASTER_SUCCESS"),payload:U_})).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:$_})).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:L_})).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:F_})).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:M_})).or(ie.extend({type:se("FRAME_GET_CHAIN_ID_ERROR"),payload:st})).or(ie.extend({type:se("FRAME_GET_CHAIN_ID_SUCCESS"),payload:j_})).or(ie.extend({type:se("FRAME_RPC_REQUEST_ERROR"),payload:st})).or(ie.extend({type:se("FRAME_RPC_REQUEST_SUCCESS"),payload:K_})).or(ie.extend({type:se("FRAME_SESSION_UPDATE"),payload:kf})).or(ie.extend({type:se("FRAME_UPDATE_EMAIL_ERROR"),payload:st})).or(ie.extend({type:se("FRAME_UPDATE_EMAIL_SUCCESS"),payload:B_})).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:q_})).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:H_})).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:V_})).or(ie.extend({type:se("FRAME_SET_PREFERRED_ACCOUNT_ERROR"),payload:st})).or(ie.extend({type:se("FRAME_READY"),payload:z_})).or(ie.extend({type:se("FRAME_RELOAD_ERROR"),payload:st})).or(ie.extend({type:se("FRAME_RELOAD_SUCCESS")}))};function Kl(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 Mv({projectId:t,chainId:e,enableLogger:n,rpcUrl:r=T.BLOCKCHAIN_API_RPC_URL,enableCloudAuthAccount:s=!1}){const i=new URL(E1);i.searchParams.set("projectId",t),i.searchParams.set("chainId",String(e)),i.searchParams.set("version",v1),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 jv{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(!Kl(ae.FRAME_EVENT_KEY,d))return;const h=Vl.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(!Kl(ae.FRAME_EVENT_KEY,c))return;const l=Vl.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(!Kl(ae.APP_EVENT_KEY,c))return;const l=Vl.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=Mv({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 gr={exports:{}};function Wv(t){try{return JSON.stringify(t)}catch{return'"[Circular]"'}}var qv=Hv;function Hv(t,e,n){var r=n&&n.stringify||Wv,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 Uf=qv;gr.exports=zr;const ma=iC().console||{},zv={mapHttpRequest:Ga,mapHttpResponse:Ga,wrapRequestSerializer:Gl,wrapResponseSerializer:Gl,wrapErrorSerializer:Gl,req:Ga,res:Ga,err:Bf,errWithCause:Bf};function _s(t,e){return t==="silent"?1/0:e.levels.values[t]}const bh=Symbol("pino.logFuncs"),ud=Symbol("pino.hierarchy"),Vv={error:"log",fatal:"error",warn:"error",info:"log",debug:"log",trace:"log"};function $f(t,e){const n={logger:e,parent:t[ud]};e[ud]=n}function Kv(t,e,n){const r={};e.forEach(s=>{r[s]=n[s]?n[s]:ma[s]||ma[Vv[s]||"log"]||Zi}),t[bh]=r}function Gv(t,e){return Array.isArray(t)?t.filter(function(n){return n!=="!stdSerializers.err"}):t===!0?Object.keys(e):!1}function zr(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||ma;t.browser.write&&(t.browser.asObject=!0);const r=t.serializers||{},s=Gv(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=Zi),Kv(l,a,n),$f({},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:nC(t),messageKey:t.messageKey||"msg",onChild:t.onChild||Zi};l.levels=Yv(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=Zi,l.serializers=r,l._serialize=s,l._stdErrSerialize=i,l.child=function(...g){return p.call(this,u,...g)},e&&(l._logEvent=dd());function d(){return _s(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,Bs(this,u,l,"error"),Bs(this,u,l,"fatal"),Bs(this,u,l,"warn"),Bs(this,u,l,"info"),Bs(this,u,l,"debug"),Bs(this,u,l,"trace"),o.forEach(y=>{Bs(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 b=Object.assign({},r,A),C=t.browser.serialize===!0?Object.keys(b):s;delete y.serializers,Eh([y],C,b,this._stdErrSerialize)}function O($){this._childLevel=($._childLevel|0)+1,this.bindings=y,b&&(this.serializers=b,this._serialize=C),e&&(this._logEvent=dd([].concat($._logEvent.bindings,y)))}O.prototype=this;const k=new O(this);return $f(this,k),k.child=function(...$){return p.call(this,g,...$)},k.level=v.level||this.level,g.onChild(k),k}return l}function Yv(t){const e=t.customLevels||{},n=Object.assign({},zr.levels.values,e),r=Object.assign({},zr.levels.labels,Zv(e));return{values:n,labels:r}}function Zv(t){const e={};return Object.keys(t).forEach(function(n){e[t[n]]=n}),e}zr.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"}},zr.stdSerializers=zv,zr.stdTimeFunctions=Object.assign({},{nullTime:Fy,epochTime:My,unixTime:rC,isoTime:sC});function Jv(t){const e=[];t.bindings&&e.push(t.bindings);let n=t[ud];for(;n.parent;)n=n.parent,n.logger.bindings&&e.push(n.logger.bindings);return e.reverse()}function Bs(t,e,n,r){if(Object.defineProperty(t,r,{value:_s(t.level,n)>_s(r,n)?Zi:n[bh][r],writable:!0,enumerable:!0,configurable:!0}),t[r]===Zi){if(!e.transmit)return;const i=e.transmit.level||t.level,o=_s(i,n);if(_s(r,n)<o)return}t[r]=Qv(t,e,n,r);const s=Jv(t);s.length!==0&&(t[r]=Xv(s,t[r]))}function Xv(t,e){return function(){return e.apply(this,[...t,...arguments])}}function Qv(t,e,n,r){return function(s){return function(){const i=e.timestamp(),o=new Array(arguments.length),a=Object.getPrototypeOf&&Object.getPrototypeOf(this)===ma?ma:this;for(var c=0;c<o.length;c++)o[c]=arguments[c];var l=!1;if(e.serialize&&(Eh(o,this._serialize,this.serializers,this._stdErrSerialize),l=!0),e.asObject||e.formatters?s.call(a,...eC(this,r,o,i,e)):s.apply(a,o),e.transmit){const u=e.transmit.level||t._level,d=_s(u,n),h=_s(r,n);if(h<d)return;tC(this,{ts:i,methodLevel:r,methodValue:h,transmitLevel:u,transmitValue:n.levels.values[e.transmit.level||t._level],send:e.transmit.send,val:_s(t._level,n)},o,l)}}}(t[bh][r])}function eC(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?Uf(a.shift(),a):void 0}else typeof c=="string"&&(c=Uf(a.shift(),a));return c!==void 0&&(l[s.messageKey]=c),[o(l)]}}function Eh(t,e,n,r){for(const s in t)if(r&&t[s]instanceof Error)t[s]=zr.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 tC(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||Eh(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=dd(l)}function dd(t){return{ts:0,messages:[],bindings:t||[],level:{label:"",value:0}}}function Bf(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 nC(t){return typeof t.timestamp=="function"?t.timestamp:t.timestamp===!1?Fy:My}function Ga(){return{}}function Gl(t){return t}function Zi(){}function Fy(){return!1}function My(){return Date.now()}function rC(){return Math.round(Date.now()/1e3)}function sC(){return new Date(Date.now()).toISOString()}function iC(){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)||{}}}gr.exports.default=zr;gr.exports.pino=zr;const oC={level:"info"},yl="custom_context",_h=1e3*1024;var aC=Object.defineProperty,cC=(t,e,n)=>e in t?aC(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,ms=(t,e,n)=>cC(t,typeof e!="symbol"?e+"":e,n);let lC=class{constructor(e){ms(this,"nodeValue"),ms(this,"sizeInBytes"),ms(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}},Lf=class{constructor(e){ms(this,"lengthInNodes"),ms(this,"sizeInBytes"),ms(this,"head"),ms(this,"tail"),ms(this,"maxSizeInBytes"),this.head=null,this.tail=null,this.lengthInNodes=0,this.maxSizeInBytes=e,this.sizeInBytes=0}append(e){const n=new lC(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 uC=t=>JSON.stringify(t,(e,n)=>typeof n=="bigint"?n.toString()+"n":n);function Ff(t){return typeof t=="string"?t:uC(t)||""}var dC=Object.defineProperty,hC=(t,e,n)=>e in t?dC(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Ya=(t,e,n)=>hC(t,typeof e!="symbol"?e+"":e,n);let jy=class{constructor(e,n=_h){Ya(this,"logs"),Ya(this,"level"),Ya(this,"levelValue"),Ya(this,"MAX_LOG_SIZE_IN_BYTES"),this.level=e??"error",this.levelValue=gr.exports.levels.values[this.level],this.MAX_LOG_SIZE_IN_BYTES=n,this.logs=new Lf(this.MAX_LOG_SIZE_IN_BYTES)}forwardToConsole(e,n){n===gr.exports.levels.values.error?console.error(e):n===gr.exports.levels.values.warn?console.warn(e):n===gr.exports.levels.values.debug?console.debug(e):n===gr.exports.levels.values.trace?console.trace(e):console.log(e)}appendToLogs(e){this.logs.append(Ff({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 Lf(this.MAX_LOG_SIZE_IN_BYTES)}getLogArray(){return Array.from(this.logs)}logsToBlob(e){const n=this.getLogArray();return n.push(Ff({extraMetadata:e})),new Blob(n,{type:"application/json"})}};var fC=Object.defineProperty,pC=(t,e,n)=>e in t?fC(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,gC=(t,e,n)=>pC(t,typeof e!="symbol"?e+"":e,n);let mC=class{constructor(e,n=_h){gC(this,"baseChunkLogger"),this.baseChunkLogger=new jy(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 yC=Object.defineProperty,wC=(t,e,n)=>e in t?yC(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,bC=(t,e,n)=>wC(t,typeof e!="symbol"?e+"":e,n);let EC=class{constructor(e,n=_h){bC(this,"baseChunkLogger"),this.baseChunkLogger=new jy(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 _C=Object.defineProperty,vC=Object.defineProperties,CC=Object.getOwnPropertyDescriptors,Mf=Object.getOwnPropertySymbols,AC=Object.prototype.hasOwnProperty,SC=Object.prototype.propertyIsEnumerable,jf=(t,e,n)=>e in t?_C(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,As=(t,e)=>{for(var n in e||(e={}))AC.call(e,n)&&jf(t,n,e[n]);if(Mf)for(var n of Mf(e))SC.call(e,n)&&jf(t,n,e[n]);return t},Ss=(t,e)=>vC(t,CC(e));function vh(t){return Ss(As({},t),{level:(t==null?void 0:t.level)||oC.level})}function IC(t,e,n=yl){return t[n]=e,t}function yn(t,e=yl){return t[e]||""}function NC(t,e,n=yl){const r=yn(t,n);return r.trim()?`${r}/${e}`:e}function wn(t,e,n=yl){const r=NC(t,e,n),s=t.child({context:r});return IC(s,r,n)}function TC(t){var e,n;const r=new mC((e=t.opts)==null?void 0:e.level,t.maxSizeInBytes);return{logger:gr.exports(Ss(As({},t.opts),{level:"trace",browser:Ss(As({},(n=t.opts)==null?void 0:n.browser),{write:s=>r.write(s)})})),chunkLoggerController:r}}function OC(t){var e,n;const r=new EC((e=t.opts)==null?void 0:e.level,t.maxSizeInBytes);return{logger:gr.exports(Ss(As({},t.opts),{level:"trace",browser:Ss(As({},(n=t.opts)==null?void 0:n.browser),{write:s=>r.write(s)})}),r),chunkLoggerController:r}}function wl(t){var e;if(typeof t.loggerOverride<"u"&&typeof t.loggerOverride!="string")return{logger:t.loggerOverride,chunkLoggerController:null};const n=Ss(As({},t.opts),{level:typeof t.loggerOverride=="string"?t.loggerOverride:(e=t.opts)==null?void 0:e.level});return typeof window<"u"?TC(Ss(As({},t),{opts:n})):OC(Ss(As({},t),{opts:n}))}class RC{constructor(e){var i;const n=vh({level:_1}),{logger:r,chunkLoggerController:s}=wl({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 xC{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 RC(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 jv({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,b,C;y.id===u&&((b=v==null?void 0:(A=v.logger).info)==null||b.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=HE();const PC=qE(zt),DC=zE({__proto__:null,default:PC},[zt]);async function yo(...t){const e=await fetch(...t);if(!e.ok)throw new Error(`HTTP status code: ${e.status}`,{cause:e});return e}class Da{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 yo(i,{method:"GET",headers:e,signal:n,cache:r})).json()}async getBlob({headers:e,signal:n,...r}){const s=this.createUrl(r);return(await yo(s,{method:"GET",headers:e,signal:n})).blob()}async post({body:e,headers:n,signal:r,...s}){const i=this.createUrl(s);return(await yo(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 yo(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 yo(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 hd={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 Z.isTelegram()&&(Z.isIos()&&(e=e.filter(n=>n!=="google")),Z.isMac()&&(e=e.filter(n=>n!=="x")),Z.isAndroid()&&(e=e.filter(n=>!["facebook","x"].includes(n)))),Z.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=hd.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=Z.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 na(ue)}},Vs=Object.freeze({message:"",variant:"success",svg:void 0,open:!1,autoClose:!0}),ft=Xe({...Vs}),kC={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=Z.parseError(t);this._showMessage({message:e,variant:"error"})},hide(){ft.message=Vs.message,ft.variant=Vs.variant,ft.svg=Vs.svg,ft.open=Vs.open,ft.autoClose=Vs.autoClose},_showMessage({message:t,svg:e,variant:n="success",autoClose:r=Vs.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)}},mr=kC,UC={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"}]}]},Wy=Z.getBlockchainApiUrl(),Yt=Xe({clientId:null,api:new Da({baseUrl:Wy,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?Z.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 mr.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 UC}},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 Da({baseUrl:Wy,clientId:t})}},$C=Object.freeze({enabled:!0,events:[]}),BC=new Da({baseUrl:Z.getAnalyticsUrl(),clientId:null}),LC=5,FC=60*1e3,Xr=Xe({...$C}),MC={state:Xr,subscribeKey(t,e){return Pt(Xr,t,e)},async sendError(t,e){if(!Xr.enabled)return;const n=Date.now();if(Xr.events.filter(i=>{const o=new Date(i.properties.timestamp||"").getTime();return n-o<FC}).length>=LC)return;const s={type:"error",event:e,properties:{errorType:t.name,errorMessage:t.message,stackTrace:t.stack,timestamp:new Date().toISOString()}};Xr.events.push(s);try{if(typeof window>"u")return;const{projectId:i,sdkType:o,sdkVersion:a}=B.state;await BC.post({path:"/e",params:{projectId:i,st:o,sv:a||"html-wagmi-4.2.2"},body:{eventId:Z.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(){Xr.enabled=!0},disable(){Xr.enabled=!1},clearEvents(){Xr.events=[]}};class hi 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,hi.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,hi):this.stack||(this.stack=`${this.name}: ${this.message}`))}}function Wf(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 hi?t:new hi(n,e,t);throw MC.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 Wf(a,e)}}:i=(...o)=>{try{return s(...o)}catch(a){return Wf(a,e)}},n[r]=i}else n[r]=s}),n}const bn=Xe({walletImages:{},networkImages:{},chainImages:{},connectorImages:{},tokenImages:{},currencyImages:{}}),jC={state:bn,subscribeNetworkImages(t){return xt(bn.networkImages,()=>t(bn.networkImages))},subscribeKey(t,e){return Pt(bn,t,e)},subscribe(t){return xt(bn,()=>t(bn))},setWalletImage(t,e){bn.walletImages[t]=e},setNetworkImage(t,e){bn.networkImages[t]=e},setChainImage(t,e){bn.chainImages[t]=e},setConnectorImage(t,e){bn.connectorImages={...bn.connectorImages,[t]:e}},setTokenImage(t,e){bn.tokenImages[t]=e},setCurrencyImage(t,e){bn.currencyImages[t]=e}},Fn=qn(jC),qf={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"},xi=Xe({networkImagePromises:{},tokenImagePromises:{}}),qc={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||(xi.networkImagePromises[t]||(xi.networkImagePromises[t]=ne._fetchNetworkImage(t)),await xi.networkImagePromises[t],this.getNetworkImageById(t))},async fetchTokenImage(t){if(t)return xi.tokenImagePromises[t]||(xi.tokenImagePromises[t]=ne._fetchTokenImage(t)),await xi.tokenImagePromises[t],this.getTokenImage(t)},getWalletImageById(t){if(t)return Fn.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 Fn.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 Fn.state.networkImages[t.assets.imageId]},getNetworkImageById(t){if(t)return Fn.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 Fn.state.connectorImages[t.imageId]},getChainImage(t){return Fn.state.networkImages[qf[t]]},getTokenImage(t){if(t)return Fn.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(qf[t])},async getImageByToken(t,e){if(t==="native"){const r=T.NATIVE_IMAGE_IDS_BY_NAMESPACE[e]??null;return r?qc.fetchNetworkImage(r):void 0}const[,n]=Object.entries(T.TOKEN_SYMBOLS_BY_ADDRESS).find(([r])=>r.toLowerCase()===t.toLowerCase())??[];if(n)return qc.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"}},WC={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()}}},qC=Z.getAnalyticsUrl(),HC=new Da({baseUrl:qC,clientId:null}),zC=["MODAL_CREATED"],VC=45,Hf=1e3*10,it=Xe({timestamp:Date.now(),lastFlush:Date.now(),reportedErrors:{},data:{type:"track",event:"MODAL_CREATED"},pendingEvents:[],subscribedToVisibilityChange:!1,walletImpressions:[]}),Ee={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>VC,e=it.lastFlush+Hf<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),zC.includes(t.data.event)||typeof window>"u")return;const s=(n=w.getActiveCaipNetwork())==null?void 0:n.caipNetworkId;this.state.pendingEvents.push({eventId:Z.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,Ee.shouldFlushEvents()&&Ee._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))&&Ee._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=Ee._transformPendingEventsForBatch(it.pendingEvents);it.walletImpressions.length&&t.push({eventId:Z.getUUID(),url:window.location.href,domain:window.location.hostname,timestamp:Date.now(),props:{type:"track",event:"WALLET_IMPRESSION_V2",items:[...it.walletImpressions]}}),HC.sendBeacon({path:"/batch",params:Ee.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"&&Ee._submitPendingEvents()}),(e=document==null?void 0:document.addEventListener)==null||e.call(document,"freeze",()=>{Ee._submitPendingEvents()}),(n=window==null?void 0:window.addEventListener)==null||n.call(window,"pagehide",()=>{Ee._submitPendingEvents()}),setInterval(()=>{Ee._submitPendingEvents()},Hf))}},KC=Z.getApiUrl(),Zt=new Da({baseUrl:KC,clientId:null}),GC=40,zf=4,YC=20,be=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:be,subscribeKey(t,e){return Pt(be,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()});Fn.setWalletImage(t,URL.createObjectURL(n))},async _fetchNetworkImage(t){const e=`${Zt.baseUrl}/public/getAssetImage/${t}`,n=await Zt.getBlob({path:e,params:ne._getSdkProperties()});Fn.setNetworkImage(t,URL.createObjectURL(n))},async _fetchConnectorImage(t){const e=`${Zt.baseUrl}/public/getAssetImage/${t}`,n=await Zt.getBlob({path:e,params:ne._getSdkProperties()});Fn.setConnectorImage(t,URL.createObjectURL(n))},async _fetchCurrencyImage(t){const e=`${Zt.baseUrl}/public/getCurrencyImage/${t}`,n=await Zt.getBlob({path:e,params:ne._getSdkProperties()});Fn.setCurrencyImage(t,URL.createObjectURL(n))},async _fetchTokenImage(t){const e=`${Zt.baseUrl}/public/getTokenImage/${t}`,n=await Zt.getBlob({path:e,params:ne._getSdkProperties()});Fn.setTokenImage(t,URL.createObjectURL(n))},_filterWalletsByPlatform(t){const e=t.length,n=Z.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=>!qc.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);be.explorerWallets=n,z.extendConnectorsWithExplorerWallets(n);const r=w.getRequestedCaipNetworkIds().join(",");be.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)??zf,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))),be.featured=r,be.allFeatured=r}},async fetchRecommendedWallets(){try{be.isFetchingRecommendedWallets=!0;const{includeWalletIds:t,excludeWalletIds:e,featuredWalletIds:n}=B.state,r=[...e??[],...n??[]].filter(Boolean),s=w.getRequestedCaipNetworkIds().join(","),i={page:1,entries:zf,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))),be.recommended=o,be.allRecommended=o,be.count=a??0}catch{}finally{be.isFetchingRecommendedWallets=!1}},async fetchWalletsByPage({page:t}){const{includeWalletIds:e,excludeWalletIds:n,featuredWalletIds:r}=B.state,s=w.getRequestedCaipNetworkIds().join(","),i=[...be.recommended.map(({id:d})=>d),...n??[],...r??[]].filter(Boolean),o={page:t,entries:GC,include:e,exclude:i,chains:s},{data:a,count:c,mobileFilteredOutWalletsLength:l}=await ne.fetchWallets(o);be.mobileFilteredOutWalletsLength=l+(be.mobileFilteredOutWalletsLength??0);const u=a.slice(0,YC).map(d=>d.image_id).filter(Boolean);await Promise.allSettled(u.map(d=>ne._fetchWalletImage(d))),be.wallets=Z.uniqueBy([...be.wallets,...ne._filterOutExtensions(a)],"id").filter(d=>{var h;return(h=d.chains)==null?void 0:h.some(f=>s.includes(f))}),be.count=c>be.count?c:be.count,be.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=>{be.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(",");be.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);Ee.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)),Z.wait(300)]),be.search=ne._filterOutExtensions(o)},initPromise(t,e){const n=be.promises[t];return n||(be.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)){be.featured=be.allFeatured,be.recommended=be.allRecommended;return}const e=w.getRequestedCaipNetworkIds().join(",");be.featured=be.allFeatured.filter(n=>{var r;return(r=n.chains)==null?void 0:r.some(s=>e.includes(s))}),be.recommended=be.allRecommended.filter(n=>{var r;return(r=n.chains)==null?void 0:r.some(s=>e.includes(s))}),be.filteredWallets=be.wallets.filter(n=>{var r;return(r=n.chains)==null?void 0:r.some(s=>e.includes(s))})},clearFilterByNamespaces(){be.filteredWallets=[]},setFilterByNamespace(t){if(!t){be.featured=be.allFeatured,be.recommended=be.allRecommended;return}const e=w.getRequestedCaipNetworkIds().join(",");be.featured=be.allFeatured.filter(n=>{var r;return(r=n.chains)==null?void 0:r.some(s=>e.includes(s))}),be.recommended=be.allRecommended.filter(n=>{var r;return(r=n.chains)==null?void 0:r.some(s=>e.includes(s))}),be.filteredWallets=be.wallets.filter(n=>{var r;return(r=n.chains)==null?void 0:r.some(s=>e.includes(s))})}},vs={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")&&Z.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):Z.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=Z.uniqueBy(e,"id"),r=vs.markWalletsAsInstalled(n),s=vs.filterWalletsByWcSupport(r);return vs.markWalletsWithDisplayIndex(s)}},Xt={getConnectorsByType(t,e,n){const{customWallets:r}=B.state,s=j.getRecentWallets(),i=vs.filterOutDuplicateWallets(e),o=vs.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"&&(!Z.isMobile()||Z.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"&&!Z.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")&&Z.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=>!vs.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=hd.isEmailEnabled(),a=hd.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?[]:vs.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=Z.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}},ZC=["ConnectingExternal","ConnectingMultiChain","ConnectingSocial","ConnectingFarcaster"],qe=Xe({view:"Connect",history:["Connect"],transactionStack:[]}),JC={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&&ZC.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=na(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(JC),Ir=Xe({themeMode:"dark",themeVariables:{},w3mThemeVariables:void 0}),fd={state:Ir,subscribe(t){return xt(Ir,()=>t(Ir))},setThemeMode(t){Ir.themeMode=t;try{const e=z.getAuthConnector();if(e){const n=fd.getSnapshot().themeVariables;e.provider.syncTheme({themeMode:t,themeVariables:n,w3mThemeVariables:ea(n,t)})}}catch{console.info("Unable to sync theme to auth connector")}},setThemeVariables(t){Ir.themeVariables={...Ir.themeVariables,...t};try{const e=z.getAuthConnector();if(e){const n=fd.getSnapshot().themeVariables;e.provider.syncTheme({themeVariables:n,w3mThemeVariables:ea(Ir.themeVariables,Ir.themeMode)})}}catch{console.info("Unable to sync theme to auth connector")}},getSnapshot(){return na(Ir)}},un=qn(fd),qy=Object.fromEntries(vy.map(t=>[t,void 0])),XC=Object.fromEntries(vy.map(t=>[t,!0])),ke=Xe({allConnectors:[],connectors:[],activeConnector:void 0,filterByNamespace:void 0,activeConnectorIds:qy,filterByNamespaceMap:XC}),QC={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=ra(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(ra(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=na(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:ea(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=na(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:ea(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;WC.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={...qy}},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(QC),eA=1e3,wo={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(Z.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;Ee.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)),Ee.sendEvent({type:"track",event:"SOCIAL_LOGIN_SUCCESS",properties:{provider:t}})}}catch(y){Ee.sendEvent({type:"track",event:"SOCIAL_LOGIN_ERROR",properties:{provider:t,message:Z.parseError(y)}}),d(new Error("Failed to connect"))}}else Ee.sendEvent({type:"track",event:"SOCIAL_LOGIN_ERROR",properties:{provider:t,message:"Untrusted Origin"}})}async function f(){if(Ee.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=Z.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}))},eA),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 Hy(){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 SF(t){return Oe.NATIVE_TOKEN_ADDRESS[t]}function Nn(t){var n;return(n=w.getAccountData(t))==null?void 0:n.preferredAccountType}function Bo(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 Hc={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=Hc.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,e){const n=V.state.wcUri;if(t!=null&&t.mobile_link&&n)try{V.setWcError(!1);const{mobile_link:r,link_mode:s,name:i}=t,o=Z.appendPayToUri(n,e),{redirect:a,redirectUniversalLink:c,href:l}=Z.formatNativeUrl(r,o,s),u=a,d=c,h=Z.isIframe()?"_top":"_self";V.setWcLinking({name:i,href:l}),V.setRecentWallet(t),B.state.experimental_preferUniversalLinks&&d?Z.openHref(d,h):Z.openHref(u,h)}catch(r){Ee.sendEvent({type:"track",event:"CONNECT_PROXY_ERROR",properties:{message:r instanceof Error?r.message:"Error parsing the deep link",uri:n,mobile_link:t.mobile_link,name:t.name}}),V.setWcError(!0)}}},Pi=Xe({loading:!1,open:!1,selectedNetworkId:void 0,activeChain:void 0,initialized:!1,connectingWallet:void 0}),Tn={state:Pi,subscribe(t){return xt(Pi,()=>t(Pi))},subscribeOpen(t){return Pt(Pi,"open",t)},set(t){Object.assign(Pi,{...Pi,...t})}},Qe=Xe({transactions:[],transactionsByYear:{},lastNetworkInView:void 0,loading:!1,empty:!1,next:void 0}),tA={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=Cc.filterSpamTransactions(n.data),s=Cc.filterByConnectedChain(r),i=[...Qe.transactions,...s];Qe.loading=!1,Qe.transactions=i,Qe.transactionsByYear=Cc.groupTransactionsByYearAndMonth(Qe.transactionsByYear,s),Qe.empty=i.length===0,Qe.next=n.next?n.next:void 0}catch{const r=w.state.activeChain;Ee.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}}),mr.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}},Cc=qn(tA,"API_ERROR"),Te=Xe({connections:new Map,recentConnections:new Map,isSwitchingConnection:!1,wcError:!1,wcFetchingUri:!1,buffering:!1,status:"disconnected"});let Ls;const nA={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=ra(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=Z.isTelegram()||Z.isSafari()&&Z.isIos();if(t==="always"||t==="auto"&&e){if(Ls){await Ls,Ls=void 0;return}if(!Z.isPairingExpired(Te==null?void 0:Te.wcPairingExpiry)){const o=Te.wcUri;Te.wcUri=o;return}Ls=(r=(n=V._getClient())==null?void 0:n.connectWalletConnect)==null?void 0:r.call(n).catch(()=>{}),V.state.status="connecting",await Ls,Ls=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 Ee.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),Ee.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",Cc.resetTransactions(),j.deleteWalletConnectDeepLink(),j.deleteRecentWallet(),Tn.set({connectingWallet:void 0})},resetUri(){Te.wcUri=void 0,Te.wcPairingExpiry=void 0,Ls=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&&Ee.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=Z.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 hi("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 hi("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()&&wo.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&&wo.isSocialProvider(i)){const{address:d}=await wo.connectSocial({social:i,closeModalOnConnect:r,onOpenFarcaster(){Re.open({view:"ConnectingFarcaster"})},onConnect(){pe.replace("ProfileWallets")}});c=d}else{const{address:d}=await wo.connectEmail({closeModalOnConnect:r,onOpen(){Re.open({view:"EmailLogin"})},onConnect(){pe.replace("ProfileWallets")}});c=d}else if(a){const{address:d}=await wo.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=Hc.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(nA),Yl={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 Zl;async function Vf(){if(!Zl){const{createPublicClient:t,http:e,defineChain:n}=await Jt(()=>Promise.resolve().then(()=>DC),void 0);Zl={createPublicClient:t,http:e,defineChain:n}}return Zl}const pd={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 Vf(),{chainId:n}=wt.parseCaipNetworkId(t.caipNetworkId);return e({...t,id:Number(n)})},async createViemPublicClient(t){const{createPublicClient:e,http:n}=await Vf(),r=B.state.projectId,s=await pd.getViemChain(t);if(!s)throw new Error(`Chain ${t.caipNetworkId} not found in viem/chains`);return e({chain:s,transport:n(pd.getBlockchainApiRpcUrl(t.caipNetworkId,r))})}},Ch={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=Yl.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(!Yl.isWalletGetAssetsResponse(o))return null;const c=(o[s]||[]).map(l=>Yl.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 pd.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"}}},Jl={adapters:{}},zy={state:Jl,initialize(t){Jl.adapters={...t}},get(t){return Jl.adapters[t]}},zc={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:{...zc},providerIds:{...zc}}),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]=ra(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={...zc},rn.providerIds={...zc}},resetChain(t){rn.providers[t]=void 0,rn.providerIds[t]=void 0}},rA={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 Ch.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:Hy(),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}),sA={state:Ue,subscribe(t){return xt(Ue,()=>t(Ue))},subscribeKey(t,e){return Pt(Ue,t,e)},setToken(t){t&&(Ue.token=ra(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:Z.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 jr.isUserRejectedRequestError(e)?new Ty(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){Ee.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{Ee.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?Z.getPlainAddress(s):void 0;if(Ue.lastRetry&&!Z.isAllowedRetry(Ue.lastRetry,30*Oe.ONE_SEC_MS))return Ue.loading=!1,[];try{if(i&&n&&r){const l=await Ch.getMyTokensWithBalance();return Ue.tokenBalances=l,Ue.lastRetry=void 0,l}}catch(l){Ue.lastRetry=Date.now(),t==null||t(l),mr.showError("Token Balance Unavailable")}finally{Ue.loading=!1}return[]},fetchNetworkBalance(){if(Ue.tokenBalances.length===0)return;const t=rA.mapBalancesToSwapTokens(Ue.tokenBalances);if(!t)return;const e=t.find(n=>n.address===Hy());e&&(Ue.networkBalanceInUSD=e?Ny.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 Ee.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=Z.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:r1.getERC20Abi(o),chainNamespace:T.CHAIN.EVM});return Ee.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&&(Z.isCaipAddress(Se.state.token.address)?t=Z.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"),Ee.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(sA),Xl={currentTab:0,tokenBalance:[],smartAccountDeployed:!1,addressLabels:new Map,user:void 0,preferredAccountType:void 0},Za={caipNetwork:void 0,supportsAllNetworks:!0,smartAccountEnabledNetworks:[]},Q=Xe({chains:y1(),activeCaipAddress:void 0,activeChain:void 0,activeCaipNetwork:void 0,noAdapters:!1,universalAdapter:{connectionControllerClient:void 0},isSwitchingNamespace:!1}),Vy={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({...Za,caipNetwork:d==null?void 0:d[0]}),accountState:Xe({...Xl,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:{...Za,caipNetwork:n[0]},accountState:{...Xl},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||Za,...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||Xl,...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||Za,...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=zy.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}Ee.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 Z.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=Cy.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 Vy.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?Z.getPlainAddress(s):void 0;if(w.setAccountProp("balanceLoading",!0,r),e.lastRetry&&!Z.isAllowedRetry(e.lastRetry,30*Oe.ONE_SEC_MS))return w.setAccountProp("balanceLoading",!1,r),[];try{if(i&&n&&r){const c=await Ch.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),mr.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(Vy),iA={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}),oA={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")):iA.onSwitchNetwork({network:c,ignoreSwitchConfirmation:!0}))}else B.state.manualWCControl||i&&!s?Z.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}),Ee.sendEvent({type:"track",event:"MODAL_OPEN",properties:{connected:!!s}})},close(){const t=B.state.enableEmbedded,e=!!w.state.activeCaipAddress;sn.open&&Ee.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(oA),qo={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"}]},gd={id:"USD",payment_method_limits:[{id:"card",min:"10.00",max:"7500.00"},{id:"ach_bank_account",min:"10.00",max:"25000.00"}]},aA={providers:Ry,selectedProvider:null,error:null,purchaseCurrency:qo,paymentCurrency:gd,purchaseCurrencies:[qo],paymentCurrencies:[],quotesLoading:!1},$e=Xe(aA),cA={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",w1),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=Ry.filter(r=>e.includes(r.name));$e.providers=n}else $e.providers=[]},setPurchaseCurrency(t){$e.purchaseCurrency=t},setPaymentCurrency(t){$e.paymentCurrency=t},setPurchaseAmount(t){md.state.purchaseAmount=t},setPaymentAmount(t){md.state.paymentAmount=t},async getAvailableCurrencies(){const t=await me.getOnrampOptions();$e.purchaseCurrencies=t.purchaseCurrencies,$e.paymentCurrencies=t.paymentCurrencies,$e.paymentCurrency=t.paymentCurrencies[0]||gd,$e.purchaseCurrency=t.purchaseCurrencies[0]||qo,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=qo,$e.paymentCurrency=gd,$e.purchaseCurrencies=[qo],$e.paymentCurrencies=[],$e.paymentAmount=void 0,$e.purchaseAmount=void 0,$e.quotesLoading=!1}},md=qn(cA);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 yd=function(t,e){return yd=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])},yd(t,e)};function lA(t,e){yd(t,e);function n(){this.constructor=t}t.prototype=e===null?Object.create(e):(n.prototype=e.prototype,new n)}var wd=function(){return wd=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},wd.apply(this,arguments)};function uA(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 dA(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 hA(t,e){return function(n,r){e(n,r,t)}}function fA(t,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(t,e)}function pA(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 gA(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 mA(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}function yA(t,e){for(var n in t)n!=="default"&&!e.hasOwnProperty(n)&&(e[n]=t[n])}function bd(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 Ky(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 wA(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(Ky(arguments[e]));return t}function bA(){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 ya(t){return this instanceof ya?(this.v=t,this):new ya(t)}function EA(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 ya?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 _A(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:ya(t[s](o)),done:s==="return"}:i?i(o):o}:i}}function vA(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 bd=="function"?bd(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 CA(t,e){return Object.defineProperty?Object.defineProperty(t,"raw",{value:e}):t.raw=e,t}function AA(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 SA(t){return t&&t.__esModule?t:{default:t}}function IA(t,e){if(!e.has(t))throw new TypeError("attempted to get private field on non-instance");return e.get(t)}function NA(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 TA=Object.freeze(Object.defineProperty({__proto__:null,get __assign(){return wd},__asyncDelegator:_A,__asyncGenerator:EA,__asyncValues:vA,__await:ya,__awaiter:pA,__classPrivateFieldGet:IA,__classPrivateFieldSet:NA,__createBinding:mA,__decorate:dA,__exportStar:yA,__extends:lA,__generator:gA,__importDefault:SA,__importStar:AA,__makeTemplateObject:CA,__metadata:fA,__param:hA,__read:Ky,__rest:uA,__spread:wA,__spreadArrays:bA,__values:bd},Symbol.toStringTag,{value:"Module"})),bl=_y(TA);var Ql={},bo={},Kf;function OA(){if(Kf)return bo;Kf=1,Object.defineProperty(bo,"__esModule",{value:!0}),bo.delay=void 0;function t(e){return new Promise(n=>{setTimeout(()=>{n(!0)},e)})}return bo.delay=t,bo}var Fs={},eu={},Ms={},Gf;function RA(){return Gf||(Gf=1,Object.defineProperty(Ms,"__esModule",{value:!0}),Ms.ONE_THOUSAND=Ms.ONE_HUNDRED=void 0,Ms.ONE_HUNDRED=100,Ms.ONE_THOUSAND=1e3),Ms}var tu={},Yf;function xA(){return Yf||(Yf=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}(tu)),tu}var Zf;function Gy(){return Zf||(Zf=1,function(t){Object.defineProperty(t,"__esModule",{value:!0});const e=bl;e.__exportStar(RA(),t),e.__exportStar(xA(),t)}(eu)),eu}var Jf;function PA(){if(Jf)return Fs;Jf=1,Object.defineProperty(Fs,"__esModule",{value:!0}),Fs.fromMiliseconds=Fs.toMiliseconds=void 0;const t=Gy();function e(r){return r*t.ONE_THOUSAND}Fs.toMiliseconds=e;function n(r){return Math.floor(r/t.ONE_THOUSAND)}return Fs.fromMiliseconds=n,Fs}var Xf;function DA(){return Xf||(Xf=1,function(t){Object.defineProperty(t,"__esModule",{value:!0});const e=bl;e.__exportStar(OA(),t),e.__exportStar(PA(),t)}(Ql)),Ql}var Di={},Qf;function kA(){if(Qf)return Di;Qf=1,Object.defineProperty(Di,"__esModule",{value:!0}),Di.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 Di.Watch=t,Di.default=t,Di}var nu={},Eo={},ep;function UA(){if(ep)return Eo;ep=1,Object.defineProperty(Eo,"__esModule",{value:!0}),Eo.IWatch=void 0;class t{}return Eo.IWatch=t,Eo}var tp;function $A(){return tp||(tp=1,function(t){Object.defineProperty(t,"__esModule",{value:!0}),bl.__exportStar(UA(),t)}(nu)),nu}(function(t){Object.defineProperty(t,"__esModule",{value:!0});const e=bl;e.__exportStar(DA(),t),e.__exportStar(kA(),t),e.__exportStar($A(),t),e.__exportStar(Gy(),t)})(G);class Ci{}let BA=class extends Ci{constructor(e){super()}};const np=G.FIVE_SECONDS,Ai={pulse:"heartbeat_pulse"};let LA=class Yy extends BA{constructor(e){super(e),this.events=new sr.EventEmitter,this.interval=np,this.interval=(e==null?void 0:e.interval)||np}static async init(e){const n=new Yy(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(Ai.pulse)}};const FA=/"(?:_|\\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*:/,MA=/"(?: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*:/,jA=/^\s*["[{]|^\s*-?\d{1,16}(\.\d{1,17})?([Ee][+-]?\d+)?\s*$/;function WA(t,e){if(t==="__proto__"||t==="constructor"&&e&&typeof e=="object"&&"prototype"in e){qA(t);return}return e}function qA(t){console.warn(`[destr] Dropping "${t}" key to prevent prototype pollution.`)}function Ja(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(!jA.test(t)){if(e.strict)throw new SyntaxError("[destr] Invalid JSON");return t}try{if(FA.test(t)||MA.test(t)){if(e.strict)throw new Error("[destr] Possible prototype pollution");return JSON.parse(t,WA)}return JSON.parse(t)}catch(r){if(e.strict)throw r;return t}}function HA(t){return!t||typeof t.then!="function"?Promise.resolve(t):t}function vt(t,...e){try{return HA(t(...e))}catch(n){return Promise.reject(n)}}function zA(t){const e=typeof t;return t===null||e!=="object"&&e!=="function"}function VA(t){const e=Object.getPrototypeOf(t);return!e||e.isPrototypeOf(Object)}function Ac(t){if(zA(t))return String(t);if(VA(t)||Array.isArray(t))return JSON.stringify(t);if(typeof t.toJSON=="function")return Ac(t.toJSON());throw new Error("[unstorage] Cannot stringify value!")}const Ed="base64:";function KA(t){return typeof t=="string"?t:Ed+ZA(t)}function GA(t){return typeof t!="string"||!t.startsWith(Ed)?t:YA(t.slice(Ed.length))}function YA(t){return globalThis.Buffer?Buffer.from(t,"base64"):Uint8Array.from(globalThis.atob(t),e=>e.codePointAt(0))}function ZA(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 JA(...t){return cn(t.join(":"))}function Xa(t){return t=cn(t),t?t+":":""}function XA(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 QA(t,e){return e?t.startsWith(e)&&t[t.length-1]!=="$":t[t.length-1]!=="$"}const eS="memory",tS=()=>{const t=new Map;return{name:eS,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 nS(t={}){const e={mounts:{"":t.driver||tS()},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 rp(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},b=n(y);f(b).items.push({key:y,value:v,relativeKey:b.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=>Ja(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:JA(d.base,f.key),value:Ja(f.value)}))):Promise.all(d.items.map(h=>vt(d.driver.getItem,h.relativeKey,h.options).then(f=>({key:h.key,value:Ja(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=>GA(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,Ac(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:Ac(h.value),options:h.options})),u);d.driver.setItem&&await Promise.all(d.items.map(h=>vt(d.driver.setItem,h.relativeKey,Ac(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,KA(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=>Ja(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=Xa(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 b of A){const C=v.mountpoint+cn(b);h.some(O=>C.startsWith(O))||f.push(C)}h=[v.mountpoint,...h.filter(b=>!b.startsWith(v.mountpoint))]}const g=u.maxDepth!==void 0&&!p;return f.filter(v=>(!g||XA(v,u.maxDepth))&&QA(v,l))},async clear(l,u={}){l=Xa(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=>sp(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=Xa(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(rp(u,s,l)).then(d=>{e.unwatch[l]=d}).catch(console.error),c},async unmount(l,u=!0){var d,h;l=Xa(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 sp(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 rp(t,e,n){return t.watch?t.watch((r,s)=>e(r,n+s)):()=>{}}async function sp(t){typeof t.dispose=="function"&&await vt(t.dispose)}function Si(t){return new Promise((e,n)=>{t.oncomplete=t.onsuccess=()=>e(t.result),t.onabort=t.onerror=()=>n(t.error)})}function Zy(t,e){const n=indexedDB.open(t);n.onupgradeneeded=()=>n.result.createObjectStore(e);const r=Si(n);return(s,i)=>r.then(o=>i(o.transaction(e,s).objectStore(e)))}let ru;function ka(){return ru||(ru=Zy("keyval-store","keyval")),ru}function ip(t,e=ka()){return e("readonly",n=>Si(n.get(t)))}function rS(t,e,n=ka()){return n("readwrite",r=>(r.put(e,t),Si(r.transaction)))}function sS(t,e=ka()){return e("readwrite",n=>(n.delete(t),Si(n.transaction)))}function iS(t=ka()){return t("readwrite",e=>(e.clear(),Si(e.transaction)))}function oS(t,e){return t.openCursor().onsuccess=function(){this.result&&(e(this.result),this.result.continue())},Si(t.transaction)}function aS(t=ka()){return t("readonly",e=>{if(e.getAllKeys)return Si(e.getAllKeys());const n=[];return oS(e,r=>n.push(r.key)).then(()=>n)})}const cS=t=>JSON.stringify(t,(e,n)=>typeof n=="bigint"?n.toString()+"n":n),lS=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 fi(t){if(typeof t!="string")throw new Error(`Cannot safe json parse value of type ${typeof t}`);try{return lS(t)}catch{return t}}function pi(t){return typeof t=="string"?t:cS(t)||""}const uS="idb-keyval";var dS=(t={})=>{const e=t.base&&t.base.length>0?`${t.base}:`:"",n=s=>e+s;let r;return t.dbName&&t.storeName&&(r=Zy(t.dbName,t.storeName)),{name:uS,options:t,async hasItem(s){return!(typeof await ip(n(s),r)>"u")},async getItem(s){return await ip(n(s),r)??null},setItem(s,i){return rS(n(s),i,r)},removeItem(s){return sS(n(s),r)},getKeys(){return aS(r)},clear(){return iS(r)}}};const hS="WALLET_CONNECT_V2_INDEXED_DB",fS="keyvaluestorage";let pS=class{constructor(){this.indexedDb=nS({driver:dS({dbName:hS,storeName:fS})})}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,pi(n))}async removeItem(e){await this.indexedDb.removeItem(e)}};var su=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof we<"u"?we:typeof self<"u"?self:{},Sc={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 su<"u"&&su.localStorage?Sc.exports=su.localStorage:typeof window<"u"&&window.localStorage?Sc.exports=window.localStorage:Sc.exports=new e})();function gS(t){var e;return[t[0],fi((e=t[1])!=null?e:"")]}let mS=class{constructor(){this.localStorage=Sc.exports}async getKeys(){return Object.keys(this.localStorage)}async getEntries(){return Object.entries(this.localStorage).map(gS)}async getItem(e){const n=this.localStorage.getItem(e);if(n!==null)return fi(n)}async setItem(e,n){this.localStorage.setItem(e,pi(n))}async removeItem(e){this.localStorage.removeItem(e)}};const yS="wc_storage_version",op=1,wS=async(t,e,n)=>{const r=yS,s=await e.getItem(r);if(s&&s>=op){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,op),n(e),bS(t,o)},bS=async(t,e)=>{e.length&&e.forEach(async n=>{await t.removeItem(n)})};let ES=class{constructor(){this.initialized=!1,this.setInitialized=n=>{this.storage=n,this.initialized=!0};const e=new mS;this.storage=e;try{const n=new pS;wS(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 _S=Object.defineProperty,vS=(t,e,n)=>e in t?_S(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,ap=(t,e,n)=>vS(t,typeof e!="symbol"?e+"":e,n);let CS=class extends Ci{constructor(e){super(),this.opts=e,ap(this,"protocol","wc"),ap(this,"version",2)}};var AS=Object.defineProperty,SS=(t,e,n)=>e in t?AS(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,IS=(t,e,n)=>SS(t,typeof e!="symbol"?e+"":e,n);let NS=class extends Ci{constructor(e,n){super(),this.core=e,this.logger=n,IS(this,"records",new Map)}},TS=class{constructor(e,n){this.logger=e,this.core=n}},OS=class extends Ci{constructor(e,n){super(),this.relayer=e,this.logger=n}},RS=class extends Ci{constructor(e){super()}},xS=class{constructor(e,n,r,s){this.core=e,this.logger=n,this.name=r}},PS=class extends Ci{constructor(e,n){super(),this.relayer=e,this.logger=n}},DS=class extends Ci{constructor(e,n){super(),this.core=e,this.logger=n}},kS=class{constructor(e,n,r){this.core=e,this.logger=n,this.store=r}},US=class{constructor(e,n){this.projectId=e,this.logger=n}},$S=class{constructor(e,n,r){this.core=e,this.logger=n,this.telemetryEnabled=r}};var BS=Object.defineProperty,LS=(t,e,n)=>e in t?BS(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,cp=(t,e,n)=>LS(t,typeof e!="symbol"?e+"":e,n);let FS=class{constructor(e){this.opts=e,cp(this,"protocol","wc"),cp(this,"version",2)}},MS=class{constructor(e){this.client=e}};function jS(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function Jy(t,...e){if(!jS(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 lp(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 WS(t,e){Jy(t);const n=e.outputLen;if(t.length<n)throw new Error("digestInto() expects output buffer of length at least "+n)}const ki=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */const iu=t=>new DataView(t.buffer,t.byteOffset,t.byteLength);function qS(t){if(typeof t!="string")throw new Error("utf8ToBytes expected string, got "+typeof t);return new Uint8Array(new TextEncoder().encode(t))}function Xy(t){return typeof t=="string"&&(t=qS(t)),Jy(t),t}let HS=class{clone(){return this._cloneInto()}};function zS(t){const e=r=>t().update(Xy(r)).digest(),n=t();return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=()=>t(),e}function Qy(t=32){if(ki&&typeof ki.getRandomValues=="function")return ki.getRandomValues(new Uint8Array(t));if(ki&&typeof ki.randomBytes=="function")return ki.randomBytes(t);throw new Error("crypto.getRandomValues must be defined")}function VS(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 KS=class extends HS{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=iu(this.buffer)}update(e){lp(this);const{view:n,buffer:r,blockLen:s}=this;e=Xy(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=iu(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){lp(this),WS(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;VS(r,s-8,BigInt(this.length*8),i),this.process(r,0);const a=iu(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 Qa=BigInt(2**32-1),_d=BigInt(32);function e0(t,e=!1){return e?{h:Number(t&Qa),l:Number(t>>_d&Qa)}:{h:Number(t>>_d&Qa)|0,l:Number(t&Qa)|0}}function GS(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}=e0(t[s],e);[n[s],r[s]]=[i,o]}return[n,r]}const YS=(t,e)=>BigInt(t>>>0)<<_d|BigInt(e>>>0),ZS=(t,e,n)=>t>>>n,JS=(t,e,n)=>t<<32-n|e>>>n,XS=(t,e,n)=>t>>>n|e<<32-n,QS=(t,e,n)=>t<<32-n|e>>>n,eI=(t,e,n)=>t<<64-n|e>>>n-32,tI=(t,e,n)=>t>>>n-32|e<<64-n,nI=(t,e)=>e,rI=(t,e)=>t,sI=(t,e,n)=>t<<n|e>>>32-n,iI=(t,e,n)=>e<<n|t>>>32-n,oI=(t,e,n)=>e<<n-32|t>>>64-n,aI=(t,e,n)=>t<<n-32|e>>>64-n;function cI(t,e,n,r){const s=(e>>>0)+(r>>>0);return{h:t+n+(s/2**32|0)|0,l:s|0}}const lI=(t,e,n)=>(t>>>0)+(e>>>0)+(n>>>0),uI=(t,e,n,r)=>e+n+r+(t/2**32|0)|0,dI=(t,e,n,r)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0),hI=(t,e,n,r,s)=>e+n+r+s+(t/2**32|0)|0,fI=(t,e,n,r,s)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0)+(s>>>0),pI=(t,e,n,r,s,i)=>e+n+r+s+i+(t/2**32|0)|0,Ae={fromBig:e0,split:GS,toBig:YS,shrSH:ZS,shrSL:JS,rotrSH:XS,rotrSL:QS,rotrBH:eI,rotrBL:tI,rotr32H:nI,rotr32L:rI,rotlSH:sI,rotlSL:iI,rotlBH:oI,rotlBL:aI,add:cI,add3L:lI,add3H:uI,add4L:dI,add4H:hI,add5H:pI,add5L:fI},[gI,mI]=(()=>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))))(),Qr=new Uint32Array(80),es=new Uint32Array(80);let yI=class extends KS{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 b=0;b<16;b++,n+=4)Qr[b]=e.getUint32(n),es[b]=e.getUint32(n+=4);for(let b=16;b<80;b++){const C=Qr[b-15]|0,O=es[b-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),L=Qr[b-2]|0,D=es[b-2]|0,W=Ae.rotrSH(L,D,19)^Ae.rotrBH(L,D,61)^Ae.shrSH(L,D,6),H=Ae.rotrSL(L,D,19)^Ae.rotrBL(L,D,61)^Ae.shrSL(L,D,6),U=Ae.add4L($,H,es[b-7],es[b-16]),N=Ae.add4H(U,k,W,Qr[b-7],Qr[b-16]);Qr[b]=N|0,es[b]=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 b=0;b<80;b++){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,L=Ae.add5L(A,O,$,mI[b],es[b]),D=Ae.add5H(L,v,C,k,gI[b],Qr[b]),W=L|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(){Qr.fill(0),es.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 wI=zS(()=>new yI);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Ah=BigInt(0),t0=BigInt(1),bI=BigInt(2);function Sh(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function Ih(t){if(!Sh(t))throw new Error("Uint8Array expected")}function ou(t,e){if(typeof e!="boolean")throw new Error(t+" boolean expected, got "+e)}const EI=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function Nh(t){Ih(t);let e="";for(let n=0;n<t.length;n++)e+=EI[t[n]];return e}function n0(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return t===""?Ah:BigInt("0x"+t)}const Nr={_0:48,_9:57,A:65,F:70,a:97,f:102};function up(t){if(t>=Nr._0&&t<=Nr._9)return t-Nr._0;if(t>=Nr.A&&t<=Nr.F)return t-(Nr.A-10);if(t>=Nr.a&&t<=Nr.f)return t-(Nr.a-10)}function r0(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=up(t.charCodeAt(i)),a=up(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 _I(t){return n0(Nh(t))}function Ic(t){return Ih(t),n0(Nh(Uint8Array.from(t).reverse()))}function s0(t,e){return r0(t.toString(16).padStart(e*2,"0"))}function vd(t,e){return s0(t,e).reverse()}function Tr(t,e,n){let r;if(typeof e=="string")try{r=r0(e)}catch(i){throw new Error(t+" must be hex string or Uint8Array, cause: "+i)}else if(Sh(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 dp(...t){let e=0;for(let r=0;r<t.length;r++){const s=t[r];Ih(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 au=t=>typeof t=="bigint"&&Ah<=t;function vI(t,e,n){return au(t)&&au(e)&&au(n)&&e<=t&&t<n}function _o(t,e,n,r){if(!vI(e,n,r))throw new Error("expected valid "+t+": "+n+" <= n < "+r+", got "+e)}function CI(t){let e;for(e=0;t>Ah;t>>=t0,e+=1);return e}const AI=t=>(bI<<BigInt(t-1))-t0,SI={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"||Sh(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 Th(t,e,n={}){const r=(s,i,o)=>{const a=SI[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 hp(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),Gs=BigInt(2),II=BigInt(3),Cd=BigInt(4),fp=BigInt(5),pp=BigInt(8);function mt(t,e){const n=t%e;return n>=St?n:e+n}function NI(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 gp(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 TI(t){const e=(t-ot)/Gs;let n,r,s;for(n=t-ot,r=0;n%Gs===St;n/=Gs,r++);for(s=Gs;s<t&&NI(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)/Cd;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)/Gs;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 OI(t){if(t%Cd===II){const e=(t+ot)/Cd;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%pp===fp){const e=(t-fp)/pp;return function(n,r){const s=n.mul(r,Gs),i=n.pow(s,e),o=n.mul(r,i),a=n.mul(n.mul(o,Gs),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 TI(t)}const RI=(t,e)=>(mt(t,e)&ot)===ot,xI=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function PI(t){const e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},n=xI.reduce((r,s)=>(r[s]="function",r),e);return Th(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 kI(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 i0(t,e){const n=e!==void 0?e:t.toString(2).length,r=Math.ceil(n/8);return{nBitLength:n,nByteLength:r}}function o0(t,e,n=!1,r={}){if(t<=St)throw new Error("invalid field: expected ORDER > 0, got "+t);const{nBitLength:s,nByteLength:i}=i0(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:AI(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*gp(l,t),t),sqrN:c=>c*c,addN:(c,l)=>c+l,subN:(c,l)=>c-l,mulN:(c,l)=>c*l,inv:c=>gp(c,t),sqrt:r.sqrt||(c=>(o||(o=OI(t)),o(a,c))),invertBatch:c=>kI(a,c),cmov:(c,l,u)=>u?l:c,toBytes:c=>n?vd(c,i):s0(c,i),fromBytes:c=>{if(c.length!==i)throw new Error("Field.fromBytes: expected "+i+" bytes, got "+c.length);return n?Ic(c):_I(c)}});return Object.freeze(a)}const mp=BigInt(0),ec=BigInt(1);function cu(t,e){const n=e.negate();return t?n:e}function a0(t,e){if(!Number.isSafeInteger(t)||t<=0||t>e)throw new Error("invalid window size, expected [1.."+e+"], got W="+t)}function lu(t,e){a0(t,e);const n=Math.ceil(e/t)+1,r=2**(t-1);return{windows:n,windowSize:r}}function UI(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 $I(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 uu=new WeakMap,c0=new WeakMap;function du(t){return c0.get(t)||1}function BI(t,e){return{constTimeNegate:cu,hasPrecomputes(n){return du(n)!==1},unsafeLadder(n,r,s=t.ZERO){let i=n;for(;r>mp;)r&ec&&(s=s.add(i)),i=i.double(),r>>=ec;return s},precomputeWindow(n,r){const{windows:s,windowSize:i}=lu(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}=lu(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+=ec);const g=f,y=f+Math.abs(p)-1,v=h%2!==0,A=p<0;p===0?c=c.add(cu(v,r[g])):a=a.add(cu(A,r[y]))}return{p:a,f:c}},wNAFUnsafe(n,r,s,i=t.ZERO){const{windows:o,windowSize:a}=lu(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===mp)break;let f=Number(s&c);if(s>>=u,f>a&&(f-=l,s+=ec),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=uu.get(r);return i||(i=this.precomputeWindow(r,n),n!==1&&uu.set(r,s(i))),i},wNAFCached(n,r,s){const i=du(n);return this.wNAF(i,this.getPrecomputes(i,n,s),r)},wNAFCachedUnsafe(n,r,s,i){const o=du(n);return o===1?this.unsafeLadder(n,r,i):this.wNAFUnsafe(o,this.getPrecomputes(o,n,s),r,i)},setWindowSize(n,r){a0(r,e),c0.set(n,r),uu.delete(n)}}}function LI(t,e,n,r){if(UI(n,t),$I(r,e),n.length!==r.length)throw new Error("arrays of points and scalars must have equal length");const s=t.ZERO,i=CI(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 FI(t){return PI(t.Fp),Th(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...i0(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}const Hn=BigInt(0),on=BigInt(1),tc=BigInt(2),MI=BigInt(8),jI={zip215:!0};function WI(t){const e=FI(t);return Th(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function qI(t){const e=WI(t),{Fp:n,n:r,prehash:s,hash:i,randomBytes:o,nByteLength:a,h:c}=e,l=tc<<BigInt(a*8)-on,u=n.create,d=o0(e.n,e.nBitLength),h=e.uvRatio||((_,E)=>{try{return{isValid:!0,value:n.sqrt(_*n.inv(E))}}catch{return{isValid:!1,value:Hn}}}),f=e.adjustScalarBytes||(_=>_),p=e.domain||((_,E,I)=>{if(ou("phflag",I),E.length||I)throw new Error("Contexts/pre-hash are not supported");return _});function g(_,E){_o("coordinate "+_,E,Hn,l)}function y(_){if(!(_ instanceof b))throw new Error("ExtendedPoint expected")}const v=hp((_,E)=>{const{ex:I,ey:x,ez:S}=_,R=_.is0();E==null&&(E=R?MI:n.inv(S));const F=u(I*E),M=u(x*E),te=u(S*E);if(R)return{x:Hn,y:on};if(te!==on)throw new Error("invZ was invalid");return{x:F,y:M}}),A=hp(_=>{const{a:E,d:I}=e;if(_.is0())throw new Error("bad point: ZERO");const{ex:x,ey:S,ez:R,et:F}=_,M=u(x*x),te=u(S*S),X=u(R*R),J=u(X*X),de=u(M*E),fe=u(X*u(de+te)),Ne=u(J+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*F);if(he!==xe)throw new Error("bad point: equation left != right (2)");return!0});class b{constructor(E,I,x,S){this.ex=E,this.ey=I,this.ez=x,this.et=S,g("x",E),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(E){if(E instanceof b)throw new Error("extended point not allowed");const{x:I,y:x}=E||{};return g("x",I),g("y",x),new b(I,x,on,u(I*x))}static normalizeZ(E){const I=n.invertBatch(E.map(x=>x.ez));return E.map((x,S)=>x.toAffine(I[S])).map(b.fromAffine)}static msm(E,I){return LI(b,d,E,I)}_setWindowSize(E){k.setWindowSize(this,E)}assertValidity(){A(this)}equals(E){y(E);const{ex:I,ey:x,ez:S}=this,{ex:R,ey:F,ez:M}=E,te=u(I*M),X=u(R*S),J=u(x*M),de=u(F*S);return te===X&&J===de}is0(){return this.equals(b.ZERO)}negate(){return new b(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){const{a:E}=e,{ex:I,ey:x,ez:S}=this,R=u(I*I),F=u(x*x),M=u(tc*u(S*S)),te=u(E*R),X=I+x,J=u(u(X*X)-R-F),de=te+F,fe=de-M,Ne=te-F,he=u(J*fe),xe=u(de*Ne),nt=u(J*Ne),ht=u(fe*de);return new b(he,xe,ht,nt)}add(E){y(E);const{a:I,d:x}=e,{ex:S,ey:R,ez:F,et:M}=this,{ex:te,ey:X,ez:J,et:de}=E;if(I===BigInt(-1)){const wf=u((R-S)*(X+te)),bf=u((R+S)*(X-te)),Wl=u(bf-wf);if(Wl===Hn)return this.double();const Ef=u(F*tc*de),_f=u(M*tc*J),vf=_f+Ef,Cf=bf+wf,Af=_f-Ef,FE=u(vf*Wl),ME=u(Cf*Af),jE=u(vf*Af),WE=u(Wl*Cf);return new b(FE,ME,WE,jE)}const fe=u(S*te),Ne=u(R*X),he=u(M*x*de),xe=u(F*J),nt=u((S+R)*(te+X)-fe-Ne),ht=xe-he,bt=xe+he,Gt=u(Ne-I*fe),Sr=u(nt*ht),Jr=u(bt*Gt),BE=u(nt*Gt),LE=u(ht*bt);return new b(Sr,Jr,LE,BE)}subtract(E){return this.add(E.negate())}wNAF(E){return k.wNAFCached(this,E,b.normalizeZ)}multiply(E){const I=E;_o("scalar",I,on,r);const{p:x,f:S}=this.wNAF(I);return b.normalizeZ([x,S])[0]}multiplyUnsafe(E,I=b.ZERO){const x=E;return _o("scalar",x,Hn,r),x===Hn?O:this.is0()||x===on?this:k.wNAFCachedUnsafe(this,x,b.normalizeZ,I)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return k.unsafeLadder(this,r).is0()}toAffine(E){return v(this,E)}clearCofactor(){const{h:E}=e;return E===on?this:this.multiplyUnsafe(E)}static fromHex(E,I=!1){const{d:x,a:S}=e,R=n.BYTES;E=Tr("pointHex",E,R),ou("zip215",I);const F=E.slice(),M=E[R-1];F[R-1]=M&-129;const te=Ic(F),X=I?l:n.ORDER;_o("pointHex.y",te,Hn,X);const J=u(te*te),de=u(J-on),fe=u(x*J-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)),b.fromAffine({x:he,y:te})}static fromPrivateKey(E){return D(E).point}toRawBytes(){const{x:E,y:I}=this.toAffine(),x=vd(I,n.BYTES);return x[x.length-1]|=E&on?128:0,x}toHex(){return Nh(this.toRawBytes())}}b.BASE=new b(e.Gx,e.Gy,on,u(e.Gx*e.Gy)),b.ZERO=new b(Hn,on,on,Hn);const{BASE:C,ZERO:O}=b,k=BI(b,a*8);function $(_){return mt(_,r)}function L(_){return $(Ic(_))}function D(_){const E=n.BYTES;_=Tr("private key",_,E);const I=Tr("hashed private key",i(_),2*E),x=f(I.slice(0,E)),S=I.slice(E,2*E),R=L(x),F=C.multiply(R),M=F.toRawBytes();return{head:x,prefix:S,scalar:R,point:F,pointBytes:M}}function W(_){return D(_).pointBytes}function H(_=new Uint8Array,...E){const I=dp(...E);return L(i(p(I,Tr("context",_),!!s)))}function U(_,E,I={}){_=Tr("message",_),s&&(_=s(_));const{prefix:x,scalar:S,pointBytes:R}=D(E),F=H(I.context,x,_),M=C.multiply(F).toRawBytes(),te=H(I.context,M,R,_),X=$(F+te*S);_o("signature.s",X,Hn,r);const J=dp(M,vd(X,n.BYTES));return Tr("result",J,n.BYTES*2)}const N=jI;function P(_,E,I,x=N){const{context:S,zip215:R}=x,F=n.BYTES;_=Tr("signature",_,2*F),E=Tr("message",E),I=Tr("publicKey",I,F),R!==void 0&&ou("zip215",R),s&&(E=s(E));const M=Ic(_.slice(F,2*F));let te,X,J;try{te=b.fromHex(I,R),X=b.fromHex(_.slice(0,F),R),J=C.multiplyUnsafe(M)}catch{return!1}if(!R&&te.isSmallOrder())return!1;const de=H(S,X.toRawBytes(),te.toRawBytes(),E);return X.add(te.multiplyUnsafe(de)).subtract(J).clearCofactor().equals(b.ZERO)}return C._setWindowSize(8),{CURVE:e,getPublicKey:W,sign:U,verify:P,ExtendedPoint:b,utils:{getExtendedPublicKey:D,randomPrivateKey:()=>o(n.BYTES),precompute(_=8,E=b.BASE){return E._setWindowSize(_),E.multiply(BigInt(3)),E}}}}BigInt(0),BigInt(1);const Oh=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),yp=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752");BigInt(0);const HI=BigInt(1),wp=BigInt(2);BigInt(3);const zI=BigInt(5),VI=BigInt(8);function KI(t){const e=BigInt(10),n=BigInt(20),r=BigInt(40),s=BigInt(80),i=Oh,o=t*t%i*t%i,a=or(o,wp,i)*o%i,c=or(a,HI,i)*t%i,l=or(c,zI,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,wp,i)*t%i,b2:o}}function GI(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function YI(t,e){const n=Oh,r=mt(e*e*e,n),s=mt(r*r*e,n),i=KI(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*yp,n),u=a===t,d=a===mt(-t,n),h=a===mt(-t*yp,n);return u&&(o=c),(d||h)&&(o=l),RI(o,n)&&(o=mt(-o,n)),{isValid:u||d,value:o}}const ZI=(()=>o0(Oh,void 0,!0))(),JI=(()=>({a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:ZI,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:VI,Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:wI,randomBytes:Qy,adjustScalarBytes:GI,uvRatio:YI}))(),l0=(()=>qI(JI))(),XI="EdDSA",QI="JWT",Vc=".",El="base64url",u0="utf8",d0="utf8",eN=":",tN="did",nN="key",bp="base58btc",rN="z",sN="K36",iN=32;function Rh(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function h0(t=0){return globalThis.Buffer!=null&&globalThis.Buffer.allocUnsafe!=null?Rh(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}function f0(t,e){e||(e=t.reduce((s,i)=>s+i.length,0));const n=h0(e);let r=0;for(const s of t)n.set(s,r),r+=s.length;return Rh(n)}function oN(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 b=(A-v)*u+1>>>0,C=new Uint8Array(b);v!==A;){for(var O=p[v],k=0,$=b-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 L=b-y;L!==b&&C[L]===0;)L++;for(var D=c.repeat(g);L<b;++L)D+=t.charAt(C[L]);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,b=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*b[k]>>>0,b[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&&b[$]===0;)$++;for(var L=new Uint8Array(y+(A-$)),D=y;$!==A;)L[D++]=b[$++];return L}}}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 aN=oN,cN=aN;const p0=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")},lN=t=>new TextEncoder().encode(t),uN=t=>new TextDecoder().decode(t);let dN=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")}},hN=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 g0(this,e)}},fN=class{constructor(e){this.decoders=e}or(e){return g0(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 g0=(t,e)=>new fN({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}});let pN=class{constructor(e,n,r,s){this.name=e,this.prefix=n,this.baseEncode=r,this.baseDecode=s,this.encoder=new dN(e,n,r),this.decoder=new hN(e,n,s)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};const _l=({name:t,prefix:e,encode:n,decode:r})=>new pN(t,e,n,r),Ua=({prefix:t,name:e,alphabet:n})=>{const{encode:r,decode:s}=cN(n,e);return _l({prefix:t,name:e,encode:r,decode:i=>p0(s(i))})},gN=(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},mN=(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})=>_l({prefix:e,name:t,encode(s){return mN(s,r,n)},decode(s){return gN(s,r,n,t)}}),yN=_l({prefix:"\0",name:"identity",encode:t=>uN(t),decode:t=>lN(t)});var wN=Object.freeze({__proto__:null,identity:yN});const bN=Dt({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var EN=Object.freeze({__proto__:null,base2:bN});const _N=Dt({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var vN=Object.freeze({__proto__:null,base8:_N});const CN=Ua({prefix:"9",name:"base10",alphabet:"0123456789"});var AN=Object.freeze({__proto__:null,base10:CN});const SN=Dt({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),IN=Dt({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var NN=Object.freeze({__proto__:null,base16:SN,base16upper:IN});const TN=Dt({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),ON=Dt({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),RN=Dt({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),xN=Dt({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),PN=Dt({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),DN=Dt({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),kN=Dt({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),UN=Dt({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),$N=Dt({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var BN=Object.freeze({__proto__:null,base32:TN,base32upper:ON,base32pad:RN,base32padupper:xN,base32hex:PN,base32hexupper:DN,base32hexpad:kN,base32hexpadupper:UN,base32z:$N});const LN=Ua({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),FN=Ua({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var MN=Object.freeze({__proto__:null,base36:LN,base36upper:FN});const jN=Ua({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),WN=Ua({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var qN=Object.freeze({__proto__:null,base58btc:jN,base58flickr:WN});const HN=Dt({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),zN=Dt({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),VN=Dt({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),KN=Dt({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var GN=Object.freeze({__proto__:null,base64:HN,base64pad:zN,base64url:VN,base64urlpad:KN});const m0=Array.from("🚀🪐☄🛰🌌🌑🌒🌓🌔🌕🌖🌗🌘🌍🌏🌎🐉☀💻🖥💾💿😂❤😍🤣😊🙏💕😭😘👍😅👏😁🔥🥰💔💖💙😢🤔😆🙄💪😉☺👌🤗💜😔😎😇🌹🤦🎉💞✌✨🤷😱😌🌸🙌😋💗💚😏💛🙂💓🤩😄😀🖤😃💯🙈👇🎶😒🤭❣😜💋👀😪😑💥🙋😞😩😡🤪👊🥳😥🤤👉💃😳✋😚😝😴🌟😬🙃🍀🌷😻😓⭐✅🥺🌈😈🤘💦✔😣🏃💐☹🎊💘😠☝😕🌺🎂🌻😐🖕💝🙊😹🗣💫💀👑🎵🤞😛🔴😤🌼😫⚽🤙☕🏆🤫👈😮🙆🍻🍃🐶💁😲🌿🧡🎁⚡🌞🎈❌✊👋😰🤨😶🤝🚶💰🍓💢🤟🙁🚨💨🤬✈🎀🍺🤓😙💟🌱😖👶🥴▶➡❓💎💸⬇😨🌚🦋😷🕺⚠🙅😟😵👎🤲🤠🤧📌🔵💅🧐🐾🍒😗🤑🌊🤯🐷☎💧😯💆👆🎤🙇🍑❄🌴💣🐸💌📍🥀🤢👅💡💩👐📸👻🤐🤮🎼🥵🚩🍎🍊👼💍📣🥂"),YN=m0.reduce((t,e,n)=>(t[n]=e,t),[]),ZN=m0.reduce((t,e,n)=>(t[e.codePointAt(0)]=n,t),[]);function JN(t){return t.reduce((e,n)=>(e+=YN[n],e),"")}function XN(t){const e=[];for(const n of t){const r=ZN[n.codePointAt(0)];if(r===void 0)throw new Error(`Non-base256emoji character: ${n}`);e.push(r)}return new Uint8Array(e)}const QN=_l({prefix:"🚀",name:"base256emoji",encode:JN,decode:XN});var e2=Object.freeze({__proto__:null,base256emoji:QN}),t2=y0,Ep=128,n2=127,r2=~n2,s2=Math.pow(2,31);function y0(t,e,n){e=e||[],n=n||0;for(var r=n;t>=s2;)e[n++]=t&255|Ep,t/=128;for(;t&r2;)e[n++]=t&255|Ep,t>>>=7;return e[n]=t|0,y0.bytes=n-r+1,e}var i2=Ad,o2=128,_p=127;function Ad(t,r){var n=0,r=r||0,s=0,i=r,o,a=t.length;do{if(i>=a)throw Ad.bytes=0,new RangeError("Could not decode varint");o=t[i++],n+=s<28?(o&_p)<<s:(o&_p)*Math.pow(2,s),s+=7}while(o>=o2);return Ad.bytes=i-r,n}var a2=Math.pow(2,7),c2=Math.pow(2,14),l2=Math.pow(2,21),u2=Math.pow(2,28),d2=Math.pow(2,35),h2=Math.pow(2,42),f2=Math.pow(2,49),p2=Math.pow(2,56),g2=Math.pow(2,63),m2=function(t){return t<a2?1:t<c2?2:t<l2?3:t<u2?4:t<d2?5:t<h2?6:t<f2?7:t<p2?8:t<g2?9:10},y2={encode:t2,decode:i2,encodingLength:m2},w0=y2;const vp=(t,e,n=0)=>(w0.encode(t,e,n),e),Cp=t=>w0.encodingLength(t),Sd=(t,e)=>{const n=e.byteLength,r=Cp(t),s=r+Cp(n),i=new Uint8Array(s+n);return vp(t,i,0),vp(n,i,r),i.set(e,s),new w2(t,n,e,i)};let w2=class{constructor(e,n,r,s){this.code=e,this.size=n,this.digest=r,this.bytes=s}};const b0=({name:t,code:e,encode:n})=>new b2(t,e,n);let b2=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?Sd(this.code,n):n.then(r=>Sd(this.code,r))}else throw Error("Unknown type, must be binary type")}};const E0=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),E2=b0({name:"sha2-256",code:18,encode:E0("SHA-256")}),_2=b0({name:"sha2-512",code:19,encode:E0("SHA-512")});var v2=Object.freeze({__proto__:null,sha256:E2,sha512:_2});const _0=0,C2="identity",v0=p0,A2=t=>Sd(_0,v0(t)),S2={code:_0,name:C2,encode:v0,digest:A2};var I2=Object.freeze({__proto__:null,identity:S2});new TextEncoder,new TextDecoder;const Ap={...wN,...EN,...vN,...AN,...NN,...BN,...MN,...qN,...GN,...e2};({...v2,...I2});function C0(t,e,n,r){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:n},decoder:{decode:r}}}const Sp=C0("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),hu=C0("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=h0(t.length);for(let n=0;n<t.length;n++)e[n]=t.charCodeAt(n);return e}),A0={utf8:Sp,"utf-8":Sp,hex:Ap.base16,latin1:hu,ascii:hu,binary:hu,...Ap};function vl(t,e="utf8"){const n=A0[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 ho(t,e="utf8"){const n=A0[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 Ip(t){return fi(vl(ho(t,El),u0))}function Kc(t){return vl(ho(pi(t),u0),El)}function S0(t){const e=ho(sN,bp),n=rN+vl(f0([e,t]),bp);return[tN,nN,n].join(eN)}function N2(t){return vl(t,El)}function T2(t){return ho(t,El)}function O2(t){return ho([Kc(t.header),Kc(t.payload)].join(Vc),d0)}function R2(t){return[Kc(t.header),Kc(t.payload),N2(t.signature)].join(Vc)}function Id(t){const e=t.split(Vc),n=Ip(e[0]),r=Ip(e[1]),s=T2(e[2]),i=ho(e.slice(0,2).join(Vc),d0);return{header:n,payload:r,signature:s,data:i}}function Np(t=Qy(iN)){const e=l0.getPublicKey(t);return{secretKey:f0([t,e]),publicKey:e}}async function x2(t,e,n,r,s=G.fromMiliseconds(Date.now())){const i={alg:XI,typ:QI},o=S0(r.publicKey),a=s+n,c={iss:o,sub:t,aud:e,iat:s,exp:a},l=O2({header:i,payload:c}),u=l0.sign(l,r.secretKey.slice(0,32));return R2({header:i,payload:c,signature:u})}var Tp=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))},P2=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}(),k2=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}(),U2=function(){function t(){this.type="bot",this.bot=!0,this.name="bot",this.version=null,this.os=null}return t}(),$2=function(){function t(){this.type="react-native",this.name="react-native",this.version=null,this.os=null}return t}(),B2=/alexa|bot|crawl(er|ing)|facebookexternalhit|feedburner|google web preview|nagios|postrank|pingdom|slurp|spider|yahoo!|yandex/,L2=/(nuhk|curl|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask\ Jeeves\/Teoma|ia_archiver)/,Op=3,F2=[["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",B2]],Rp=[["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 M2(t){return t?xp(t):typeof document>"u"&&typeof navigator<"u"&&navigator.product==="ReactNative"?new $2:typeof navigator<"u"?xp(navigator.userAgent):q2()}function j2(t){return t!==""&&F2.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 xp(t){var e=j2(t);if(!e)return null;var n=e[0],r=e[1];if(n==="searchbot")return new U2;var s=r[1]&&r[1].split(".").join("_").split("_").slice(0,3);s?s.length<Op&&(s=Tp(Tp([],s,!0),H2(Op-s.length),!0)):s=[];var i=s.join("."),o=W2(t),a=L2.exec(t);return a&&a[1]?new k2(n,i,o,a[1]):new P2(n,i,o)}function W2(t){for(var e=0,n=Rp.length;e<n;e++){var r=Rp[e],s=r[0],i=r[1],o=i.exec(t);if(o)return s}return null}function q2(){var t=typeof Vt<"u"&&Vt.version;return t?new D2(Vt.version.slice(1)):null}function H2(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=I0=Ze.getLocation=Ze.getLocationOrThrow=xh=Ze.getNavigator=Ze.getNavigatorOrThrow=gi=Ze.getDocument=Ze.getDocumentOrThrow=Ze.getFromWindowOrThrow=Ze.getFromWindow=void 0;function Ii(t){let e;return typeof window<"u"&&typeof window[t]<"u"&&(e=window[t]),e}Ze.getFromWindow=Ii;function fo(t){const e=Ii(t);if(!e)throw new Error(`${t} is not defined in Window`);return e}Ze.getFromWindowOrThrow=fo;function z2(){return fo("document")}Ze.getDocumentOrThrow=z2;function V2(){return Ii("document")}var gi=Ze.getDocument=V2;function K2(){return fo("navigator")}Ze.getNavigatorOrThrow=K2;function G2(){return Ii("navigator")}var xh=Ze.getNavigator=G2;function Y2(){return fo("location")}Ze.getLocationOrThrow=Y2;function Z2(){return Ii("location")}var I0=Ze.getLocation=Z2;function J2(){return fo("crypto")}Ze.getCryptoOrThrow=J2;function X2(){return Ii("crypto")}Ze.getCrypto=X2;function Q2(){return fo("localStorage")}Ze.getLocalStorageOrThrow=Q2;function eT(){return Ii("localStorage")}Ze.getLocalStorage=eT;var Ph={};Object.defineProperty(Ph,"__esModule",{value:!0});var N0=Ph.getWindowMetadata=void 0;const Pp=Ze;function tT(){let t,e;try{t=Pp.getDocumentOrThrow(),e=Pp.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 b=A.join("/");v+=b+"/"+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}}N0=Ph.getWindowMetadata=tT;const nT="0.1.1";function rT(){return nT}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@${rT()}`}),this.cause=n.cause,this.details=r,this.docs=o,this.docsPath=s,this.shortMessage=e}walk(e){return T0(this,e)}}function T0(t,e){return e!=null&&e(t)?t:t&&typeof t=="object"&&"cause"in t&&t.cause?T0(t.cause,e):e?null:t}const Ui=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */function sT(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function wa(t){if(!Number.isSafeInteger(t)||t<0)throw new Error("positive integer expected, got "+t)}function mi(t,...e){if(!sT(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 iT(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.createHasher");wa(t.outputLen),wa(t.blockLen)}function io(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 O0(t,e){mi(t);const n=e.outputLen;if(t.length<n)throw new Error("digestInto() expects output buffer of length at least "+n)}function oT(t){return new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4))}function oo(...t){for(let e=0;e<t.length;e++)t[e].fill(0)}function fu(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function ar(t,e){return t<<32-e|t>>>e}const aT=(()=>new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68)();function cT(t){return t<<24&4278190080|t<<8&16711680|t>>>8&65280|t>>>24&255}function lT(t){for(let e=0;e<t.length;e++)t[e]=cT(t[e]);return t}const Dp=aT?t=>t:lT;function uT(t){if(typeof t!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(t))}function Cl(t){return typeof t=="string"&&(t=uT(t)),mi(t),t}function dT(...t){let e=0;for(let r=0;r<t.length;r++){const s=t[r];mi(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}class Dh{}function R0(t){const e=r=>t().update(Cl(r)).digest(),n=t();return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=()=>t(),e}function hT(t=32){if(Ui&&typeof Ui.getRandomValues=="function")return Ui.getRandomValues(new Uint8Array(t));if(Ui&&typeof Ui.randomBytes=="function")return Uint8Array.from(Ui.randomBytes(t));throw new Error("crypto.getRandomValues must be defined")}function fT(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 pT(t,e,n){return t&e^~t&n}function gT(t,e,n){return t&e^t&n^e&n}class mT extends Dh{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=fu(this.buffer)}update(e){io(this),e=Cl(e),mi(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=fu(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){io(this),O0(e,this),this.finished=!0;const{buffer:n,view:r,blockLen:s,isLE:i}=this;let{pos:o}=this;n[o++]=128,oo(this.buffer.subarray(o)),this.padOffset>s-o&&(this.process(r,0),o=0);for(let d=o;d<s;d++)n[d]=0;fT(r,s-8,BigInt(this.length*8),i),this.process(r,0);const a=fu(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 ts=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),nc=BigInt(2**32-1),kp=BigInt(32);function yT(t,e=!1){return e?{h:Number(t&nc),l:Number(t>>kp&nc)}:{h:Number(t>>kp&nc)|0,l:Number(t&nc)|0}}function wT(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}=yT(t[i],e);[r[i],s[i]]=[o,a]}return[r,s]}const bT=(t,e,n)=>t<<n|e>>>32-n,ET=(t,e,n)=>e<<n|t>>>32-n,_T=(t,e,n)=>e<<n-32|t>>>64-n,vT=(t,e,n)=>t<<n-32|e>>>64-n,CT=BigInt(0),vo=BigInt(1),AT=BigInt(2),ST=BigInt(7),IT=BigInt(256),NT=BigInt(113),x0=[],P0=[],D0=[];for(let t=0,e=vo,n=1,r=0;t<24;t++){[n,r]=[r,(2*n+3*r)%5],x0.push(2*(5*r+n)),P0.push((t+1)*(t+2)/2%64);let s=CT;for(let i=0;i<7;i++)e=(e<<vo^(e>>ST)*NT)%IT,e&AT&&(s^=vo<<(vo<<BigInt(i))-vo);D0.push(s)}const k0=wT(D0,!0),TT=k0[0],OT=k0[1],Up=(t,e,n)=>n>32?_T(t,e,n):bT(t,e,n),$p=(t,e,n)=>n>32?vT(t,e,n):ET(t,e,n);function RT(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=Up(l,u,1)^n[a],h=$p(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=P0[o],c=Up(s,i,a),l=$p(s,i,a),u=x0[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]^=TT[r],t[1]^=OT[r]}oo(n)}class kh extends Dh{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,wa(r),!(0<e&&e<200))throw new Error("only keccak-f1600 function is supported");this.state=new Uint8Array(200),this.state32=oT(this.state)}clone(){return this._cloneInto()}keccak(){Dp(this.state32),RT(this.state32,this.rounds),Dp(this.state32),this.posOut=0,this.pos=0}update(e){io(this),e=Cl(e),mi(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){io(this,!1),mi(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 wa(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(O0(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,oo(this.state)}_cloneInto(e){const{blockLen:n,suffix:r,outputLen:s,rounds:i,enableXOF:o}=this;return e||(e=new kh(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 xT=(t,e,n)=>R0(()=>new kh(e,t,n)),PT=(()=>xT(1,136,256/8))(),DT=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]),ns=new Uint32Array(64);class kT extends mT{constructor(e=32){super(64,e,8,!1),this.A=ts[0]|0,this.B=ts[1]|0,this.C=ts[2]|0,this.D=ts[3]|0,this.E=ts[4]|0,this.F=ts[5]|0,this.G=ts[6]|0,this.H=ts[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)ns[d]=e.getUint32(n,!1);for(let d=16;d<64;d++){const h=ns[d-15],f=ns[d-2],p=ar(h,7)^ar(h,18)^h>>>3,g=ar(f,17)^ar(f,19)^f>>>10;ns[d]=g+ns[d-7]+p+ns[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+pT(a,c,l)+DT[d]+ns[d]|0,g=(ar(r,2)^ar(r,13)^ar(r,22))+gT(r,s,i)|0;u=l,l=c,c=a,a=o+f|0,o=i,i=s,s=r,r=f+g|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(){oo(ns)}destroy(){this.set(0,0,0,0,0,0,0,0),oo(this.buffer)}}const UT=R0(()=>new kT);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Uh=BigInt(0),Nd=BigInt(1);function $a(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function $h(t){if(!$a(t))throw new Error("Uint8Array expected")}function ba(t,e){if(typeof e!="boolean")throw new Error(t+" boolean expected, got "+e)}function rc(t){const e=t.toString(16);return e.length&1?"0"+e:e}function U0(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return t===""?Uh:BigInt("0x"+t)}const $0=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",$T=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function Ea(t){if($h(t),$0)return t.toHex();let e="";for(let n=0;n<t.length;n++)e+=$T[t[n]];return e}const Or={_0:48,_9:57,A:65,F:70,a:97,f:102};function Bp(t){if(t>=Or._0&&t<=Or._9)return t-Or._0;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 Gc(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);if($0)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 oi(t){return U0(Ea(t))}function B0(t){return $h(t),U0(Ea(Uint8Array.from(t).reverse()))}function Ba(t,e){return Gc(t.toString(16).padStart(e*2,"0"))}function L0(t,e){return Ba(t,e).reverse()}function $n(t,e,n){let r;if(typeof e=="string")try{r=Gc(e)}catch(i){throw new Error(t+" must be hex string or Uint8Array, cause: "+i)}else if($a(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 Yc(...t){let e=0;for(let r=0;r<t.length;r++){const s=t[r];$h(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 pu=t=>typeof t=="bigint"&&Uh<=t;function Bh(t,e,n){return pu(t)&&pu(e)&&pu(n)&&e<=t&&t<n}function Ji(t,e,n,r){if(!Bh(e,n,r))throw new Error("expected valid "+t+": "+n+" <= n < "+r+", got "+e)}function BT(t){let e;for(e=0;t>Uh;t>>=Nd,e+=1);return e}const Al=t=>(Nd<<BigInt(t))-Nd,gu=t=>new Uint8Array(t),Lp=t=>Uint8Array.from(t);function LT(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=gu(t),s=gu(t),i=0;const o=()=>{r.fill(1),s.fill(0),i=0},a=(...d)=>n(s,r,...d),c=(d=gu(0))=>{s=a(Lp([0]),d),r=a(),d.length!==0&&(s=a(Lp([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 Yc(...h)};return(d,h)=>{o(),c(d);let f;for(;!(f=h(l()));)c();return o(),f}}const FT={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"||$a(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 Sl(t,e,n={}){const r=(s,i,o)=>{const a=FT[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 Fp(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 MT(t,e){if(qp(t)>e)throw new aO({givenSize:qp(t),maxSize:e})}const Rr={zero:48,nine:57,A:65,F:70,a:97,f:102};function Mp(t){if(t>=Rr.zero&&t<=Rr.nine)return t-Rr.zero;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 jT(t,e={}){const{dir:n,size:r=32}=e;if(r===0)return t;if(t.length>r)throw new cO({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 F0(t,e){if(Ds(t)>e)throw new JT({givenSize:Ds(t),maxSize:e})}function WT(t,e){if(typeof e=="number"&&e>0&&e>Ds(t)-1)throw new W0({offset:e,position:"start",size:Ds(t)})}function qT(t,e,n){if(typeof e=="number"&&typeof n=="number"&&Ds(t)!==n-e)throw new W0({offset:n,position:"end",size:Ds(t)})}function M0(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 XT({size:Math.ceil(s.length/2),targetSize:r,type:"Hex"});return`0x${s[n==="right"?"padEnd":"padStart"](r*2,"0")}`}const HT="#__bigint";function Lh(t,e,n){return JSON.stringify(t,(r,s)=>typeof e=="function"?e(r,s):typeof s=="bigint"?s.toString()+HT:s,n)}const zT=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function VT(t,e={}){const{strict:n=!1}=e;if(!t)throw new jp(t);if(typeof t!="string")throw new jp(t);if(n&&!/^0x[0-9a-fA-F]*$/.test(t))throw new Wp(t);if(!t.startsWith("0x"))throw new Wp(t)}function KT(...t){return`0x${t.reduce((e,n)=>e+n.replace("0x",""),"")}`}function Fh(t){return t instanceof Uint8Array?Zc(t):Array.isArray(t)?Zc(new Uint8Array(t)):t}function Zc(t,e={}){let n="";for(let s=0;s<t.length;s++)n+=zT[t[s]];const r=`0x${n}`;return typeof e.size=="number"?(F0(r,e.size),j0(r,e.size)):r}function mu(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 ZT({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?GT(c,r):c}function GT(t,e){return M0(t,{dir:"left",size:e})}function j0(t,e){return M0(t,{dir:"right",size:e})}function Br(t,e,n,r={}){const{strict:s}=r;WT(t,e);const i=`0x${t.replace("0x","").slice((e??0)*2,(n??t.length)*2)}`;return s&&qT(i,e,n),i}function Ds(t){return Math.ceil((t.length-2)/2)}function YT(t,e={}){const{strict:n=!1}=e;try{return VT(t,{strict:n}),!0}catch{return!1}}class ZT 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 jp extends tt{constructor(e){super(`Value \`${typeof e=="object"?Lh(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 Wp 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 JT=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 W0 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 XT=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 QT=new TextEncoder;function eO(t){if(!(t instanceof Uint8Array)){if(!t)throw new sc(t);if(typeof t!="object")throw new sc(t);if(!("BYTES_PER_ELEMENT"in t))throw new sc(t);if(t.BYTES_PER_ELEMENT!==1||t.constructor.name!=="Uint8Array")throw new sc(t)}}function tO(t){return t instanceof Uint8Array?t:typeof t=="string"?rO(t):nO(t)}function nO(t){return t instanceof Uint8Array?t:new Uint8Array(t)}function rO(t,e={}){const{size:n}=e;let r=t;n&&(F0(t,n),r=j0(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=Mp(s.charCodeAt(c++)),u=Mp(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 sO(t,e={}){const{size:n}=e,r=QT.encode(t);return typeof n=="number"?(MT(r,n),iO(r,n)):r}function iO(t,e){return jT(t,{dir:"right",size:e})}function qp(t){return t.length}function oO(t){try{return eO(t),!0}catch{return!1}}class sc extends tt{constructor(e){super(`Value \`${typeof e=="object"?Lh(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 aO 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 cO 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 q0(t,e={}){const{as:n=typeof t=="string"?"Hex":"Bytes"}=e,r=PT(tO(t));return n==="Bytes"?r:Zc(r)}class lO 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 uO={checksum:new lO(8192)},yu=uO.checksum;function H0(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 Hp({prefix:r,cause:new mO});return}if(n===!0||typeof s=="bigint"&&typeof i>"u"){if(r!==3&&r!==2)throw new Hp({prefix:r,cause:new gO});return}throw new pO({publicKey:t})}function dO(t){const e=(()=>{if(YT(t))return z0(t);if(oO(t))return hO(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 H0(e),e}function hO(t){return z0(Zc(t))}function z0(t){if(t.length!==132&&t.length!==130&&t.length!==68)throw new yO({publicKey:t});if(t.length===130){const r=BigInt(Br(t,0,32)),s=BigInt(Br(t,32,64));return{prefix:4,x:r,y:s}}if(t.length===132){const r=Number(Br(t,0,1)),s=BigInt(Br(t,1,33)),i=BigInt(Br(t,33,65));return{prefix:r,x:s,y:i}}const e=Number(Br(t,0,1)),n=BigInt(Br(t,1,33));return{prefix:e,x:n}}function fO(t,e={}){H0(t);const{prefix:n,x:r,y:s}=t,{includePrefix:i=!0}=e;return KT(i?mu(n,{size:1}):"0x",mu(r,{size:32}),typeof s=="bigint"?mu(s,{size:32}):"0x")}class pO extends tt{constructor({publicKey:e}){super(`Value \`${Lh(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 Hp 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 gO 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 mO 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 yO=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 ${Ds(Fh(e))} bytes.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidSerializedSizeError"})}};const wO=/^0x[a-fA-F0-9]{40}$/;function V0(t,e={}){const{strict:n=!0}=e;if(!wO.test(t))throw new zp({address:t,cause:new _O});if(n){if(t.toLowerCase()===t)return;if(K0(t)!==t)throw new zp({address:t,cause:new vO})}}function K0(t){if(yu.has(t))return yu.get(t);V0(t,{strict:!1});const e=t.substring(2).toLowerCase(),n=q0(sO(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 yu.set(t,s),s}function bO(t,e={}){const{checksum:n=!1}=e;return V0(t),n?K0(t):t}function EO(t,e={}){const n=q0(`0x${fO(t).slice(4)}`).substring(26);return bO(`0x${n}`,e)}class zp 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 _O 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 vO extends tt{constructor(){super("Address does not match its checksum counterpart."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidChecksumError"})}}class G0 extends Dh{constructor(e,n){super(),this.finished=!1,this.destroyed=!1,iT(e);const r=Cl(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),oo(i)}update(e){return io(this),this.iHash.update(e),this}digestInto(e){io(this),mi(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 Y0=(t,e,n)=>new G0(t,e).update(n).digest();Y0.create=(t,e)=>new G0(t,e);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const pn=BigInt(0),Qt=BigInt(1),Xs=BigInt(2),CO=BigInt(3),Z0=BigInt(4),J0=BigInt(5),X0=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 Td(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 Q0(t,e){const n=(t.ORDER+Qt)/Z0,r=t.pow(e,n);if(!t.eql(t.sqr(r),e))throw new Error("Cannot find square root");return r}function AO(t,e){const n=(t.ORDER-J0)/X0,r=t.mul(e,Xs),s=t.pow(r,n),i=t.mul(e,s),o=t.mul(t.mul(i,Xs),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 SO(t){if(t<BigInt(3))throw new Error("sqrt is not defined for small field");let e=t-Qt,n=0;for(;e%Xs===pn;)e/=Xs,n++;let r=Xs;const s=Mh(t);for(;Vp(s,r)===1;)if(r++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(n===1)return Q0;let i=s.pow(r,e);const o=(e+Qt)/Xs;return function(c,l){if(c.is0(l))return l;if(Vp(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 IO(t){return t%Z0===CO?Q0:t%X0===J0?AO:SO(t)}const NO=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function TO(t){const e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},n=NO.reduce((r,s)=>(r[s]="function",r),e);return Sl(t,n)}function OO(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 ew(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 Vp(t,e){const n=(t.ORDER-Qt)/Xs,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 tw(t,e){e!==void 0&&wa(e);const n=e!==void 0?e:t.toString(2).length,r=Math.ceil(n/8);return{nBitLength:n,nByteLength:r}}function Mh(t,e,n=!1,r={}){if(t<=pn)throw new Error("invalid field: expected ORDER > 0, got "+t);const{nBitLength:s,nByteLength:i}=tw(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:Al(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)=>OO(a,c,l),div:(c,l)=>dn(c*Td(l,t),t),sqrN:c=>c*c,addN:(c,l)=>c+l,subN:(c,l)=>c-l,mulN:(c,l)=>c*l,inv:c=>Td(c,t),sqrt:r.sqrt||(c=>(o||(o=IO(t)),o(a,c))),toBytes:c=>n?L0(c,i):Ba(c,i),fromBytes:c=>{if(c.length!==i)throw new Error("Field.fromBytes: expected "+i+" bytes, got "+c.length);return n?B0(c):oi(c)},invertBatch:c=>ew(a,c),cmov:(c,l,u)=>u?l:c});return Object.freeze(a)}function nw(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 rw(t){const e=nw(t);return e+Math.ceil(e/2)}function RO(t,e,n=!1){const r=t.length,s=nw(e),i=rw(e);if(r<16||r<i||r>1024)throw new Error("expected "+i+"-1024 bytes of input, got "+r);const o=n?B0(t):oi(t),a=dn(o,e-Qt)+Qt;return n?L0(a,s):Ba(a,s)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Kp=BigInt(0),Od=BigInt(1);function wu(t,e){const n=e.negate();return t?n:e}function sw(t,e){if(!Number.isSafeInteger(t)||t<=0||t>e)throw new Error("invalid window size, expected [1.."+e+"], got W="+t)}function bu(t,e){sw(t,e);const n=Math.ceil(e/t)+1,r=2**(t-1),s=2**t,i=Al(t),o=BigInt(t);return{windows:n,windowSize:r,mask:i,maxNumber:s,shiftBy:o}}function Gp(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+=Od);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 xO(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 PO(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 Eu=new WeakMap,iw=new WeakMap;function _u(t){return iw.get(t)||1}function DO(t,e){return{constTimeNegate:wu,hasPrecomputes(n){return _u(n)!==1},unsafeLadder(n,r,s=t.ZERO){let i=n;for(;r>Kp;)r&Od&&(s=s.add(i)),i=i.double(),r>>=Od;return s},precomputeWindow(n,r){const{windows:s,windowSize:i}=bu(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=bu(n,e);for(let c=0;c<a.windows;c++){const{nextN:l,offset:u,isZero:d,isNeg:h,isNegF:f,offsetF:p}=Gp(s,c,a);s=l,d?o=o.add(wu(f,r[p])):i=i.add(wu(h,r[u]))}return{p:i,f:o}},wNAFUnsafe(n,r,s,i=t.ZERO){const o=bu(n,e);for(let a=0;a<o.windows&&s!==Kp;a++){const{nextN:c,offset:l,isZero:u,isNeg:d}=Gp(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=Eu.get(r);return i||(i=this.precomputeWindow(r,n),n!==1&&Eu.set(r,s(i))),i},wNAFCached(n,r,s){const i=_u(n);return this.wNAF(i,this.getPrecomputes(i,n,s),r)},wNAFCachedUnsafe(n,r,s,i){const o=_u(n);return o===1?this.unsafeLadder(n,r,i):this.wNAFUnsafe(o,this.getPrecomputes(o,n,s),r,i)},setWindowSize(n,r){sw(r,e),iw.set(n,r),Eu.delete(n)}}}function kO(t,e,n,r){xO(n,t),PO(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=BT(BigInt(s));let c=1;a>12?c=a-3:a>4?c=a-2:a>0&&(c=2);const l=Al(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 ow(t){return TO(t.Fp),Sl(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...tw(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function Yp(t){t.lowS!==void 0&&ba("lowS",t.lowS),t.prehash!==void 0&&ba("prehash",t.prehash)}function UO(t){const e=ow(t);Sl(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 $O extends Error{constructor(e=""){super(e)}}const Fr={Err:$O,_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=rc(r);if(s.length/2&128)throw new n("tlv.encode: long form length too big");const i=r>127?rc(s.length/2|128):"";return rc(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<Wr)throw new e("integer: negative integers are not allowed");let n=rc(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 oi(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 vu(t,e){return Ea(Ba(t,e))}const Wr=BigInt(0),Ct=BigInt(1);BigInt(2);const Cu=BigInt(3),BO=BigInt(4);function LO(t){const e=UO(t),{Fp:n}=e,r=Mh(e.n,e.nBitLength),s=e.toBytes||((b,C,O)=>{const k=C.toAffine();return Yc(Uint8Array.from([4]),n.toBytes(k.x),n.toBytes(k.y))}),i=e.fromBytes||(b=>{const C=b.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(b){const{a:C,b:O}=e,k=n.sqr(b),$=n.mul(k,b);return n.add(n.add($,n.mul(b,C)),O)}function a(b,C){const O=n.sqr(C),k=o(b);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,Cu),BO),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(b){return Bh(b,Ct,e.n)}function d(b){const{allowedPrivateKeyLengths:C,nByteLength:O,wrapPrivateKey:k,n:$}=e;if(C&&typeof b!="bigint"){if($a(b)&&(b=Ea(b)),typeof b!="string"||!C.includes(b.length))throw new Error("invalid private key");b=b.padStart(O*2,"0")}let L;try{L=typeof b=="bigint"?b:oi($n("private key",b,O))}catch{throw new Error("invalid private key, expected hex or "+O+" bytes, got "+typeof b)}return k&&(L=dn(L,$)),Ji("private key",L,Ct,$),L}function h(b){if(!(b instanceof g))throw new Error("ProjectivePoint expected")}const f=Fp((b,C)=>{const{px:O,py:k,pz:$}=b;if(n.eql($,n.ONE))return{x:O,y:k};const L=b.is0();C==null&&(C=L?n.ONE:n.inv($));const D=n.mul(O,C),W=n.mul(k,C),H=n.mul($,C);if(L)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=Fp(b=>{if(b.is0()){if(e.allowInfinityPoint&&!n.is0(b.py))return;throw new Error("bad point: ZERO")}const{x:C,y:O}=b.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(!b.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 $=L=>n.eql(L,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=ew(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 kO(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:L,py:D,pz:W}=C,H=n.eql(n.mul(O,W),n.mul(L,$)),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,Cu),{px:$,py:L,pz:D}=this;let W=n.ZERO,H=n.ZERO,U=n.ZERO,N=n.mul($,$),P=n.mul(L,L),_=n.mul(D,D),E=n.mul($,L);return E=n.add(E,E),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(E,W),U=n.mul(k,U),_=n.mul(C,_),E=n.sub(N,_),E=n.mul(C,E),E=n.add(E,U),U=n.add(N,N),N=n.add(U,N),N=n.add(N,_),N=n.mul(N,E),H=n.add(H,N),_=n.mul(L,D),_=n.add(_,_),N=n.mul(_,E),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:L,py:D,pz:W}=C;let H=n.ZERO,U=n.ZERO,N=n.ZERO;const P=e.a,_=n.mul(e.b,Cu);let E=n.mul(O,L),I=n.mul(k,D),x=n.mul($,W),S=n.add(O,k),R=n.add(L,D);S=n.mul(S,R),R=n.add(E,I),S=n.sub(S,R),R=n.add(O,$);let F=n.add(L,W);return R=n.mul(R,F),F=n.add(E,x),R=n.sub(R,F),F=n.add(k,$),H=n.add(D,W),F=n.mul(F,H),H=n.add(I,x),F=n.sub(F,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(E,E),I=n.add(I,E),x=n.mul(P,x),R=n.mul(_,R),I=n.add(I,x),x=n.sub(E,x),x=n.mul(P,x),R=n.add(R,x),E=n.mul(I,R),U=n.add(U,E),E=n.mul(F,R),H=n.mul(S,H),H=n.sub(H,E),E=n.mul(S,I),N=n.mul(F,N),N=n.add(N,E),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;Ji("scalar",C,Wr,k);const $=g.ZERO;if(C===Wr)return $;if(this.is0()||C===Ct)return this;if(!O||A.hasPrecomputes(this))return A.wNAFCachedUnsafe(this,C,g.normalizeZ);let{k1neg:L,k1:D,k2neg:W,k2:H}=O.splitScalar(C),U=$,N=$,P=this;for(;D>Wr||H>Wr;)D&Ct&&(U=U.add(P)),H&Ct&&(N=N.add(P)),P=P.double(),D>>=Ct,H>>=Ct;return L&&(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;Ji("scalar",C,Ct,k);let $,L;if(O){const{k1neg:D,k1:W,k2neg:H,k2:U}=O.splitScalar(C);let{p:N,f:P}=this.wNAF(W),{p:_,f:E}=this.wNAF(U);N=A.constTimeNegate(D,N),_=A.constTimeNegate(H,_),_=new g(n.mul(_.px,O.beta),_.py,_.pz),$=N.add(_),L=P.add(E)}else{const{p:D,f:W}=this.wNAF(C);$=D,L=W}return g.normalizeZ([$,L])[0]}multiplyAndAddUnsafe(C,O,k){const $=g.BASE,L=(W,H)=>H===Wr||H===Ct||!W.equals($)?W.multiplyUnsafe(H):W.multiply(H),D=L(this,O).add(L(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 ba("isCompressed",C),this.assertValidity(),s(g,this,C)}toHex(C=!0){return ba("isCompressed",C),Ea(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=DO(g,y?Math.ceil(v/2):v);return{CURVE:e,ProjectivePoint:g,normPrivateKeyToScalar:d,weierstrassEquation:o,isWithinCurveOrder:u}}function FO(t){const e=ow(t);return Sl(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function MO(t){const e=FO(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 Td(_,r)}const{ProjectivePoint:u,normPrivateKeyToScalar:d,weierstrassEquation:h,isWithinCurveOrder:f}=LO({...e,toBytes(_,E,I){const x=E.toAffine(),S=n.toBytes(x.x),R=Yc;return ba("isCompressed",I),I?R(Uint8Array.from([E.hasEvenY()?2:3]),S):R(Uint8Array.from([4]),S,n.toBytes(x.y))},fromBytes(_){const E=_.length,I=_[0],x=_.subarray(1);if(E===o&&(I===2||I===3)){const S=oi(x);if(!Bh(S,Ct,n.ORDER))throw new Error("Point is not on curve");const R=h(S);let F;try{F=n.sqrt(R)}catch(X){const J=X instanceof Error?": "+X.message:"";throw new Error("Point is not on curve"+J)}const M=(F&Ct)===Ct;return(I&1)===1!==M&&(F=n.neg(F)),{x:S,y:F}}else if(E===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 "+E)}}});function p(_){const E=r>>Ct;return _>E}function g(_){return p(_)?c(-_):_}const y=(_,E,I)=>oi(_.slice(E,I));class v{constructor(E,I,x){Ji("r",E,Ct,r),Ji("s",I,Ct,r),this.r=E,this.s=I,x!=null&&(this.recovery=x),Object.freeze(this)}static fromCompact(E){const I=s;return E=$n("compactSignature",E,I*2),new v(y(E,0,I),y(E,I,2*I))}static fromDER(E){const{r:I,s:x}=Fr.toSig($n("DER",E));return new v(I,x)}assertValidity(){}addRecoveryBit(E){return new v(this.r,this.s,E)}recoverPublicKey(E){const{r:I,s:x,recovery:S}=this,R=$($n("msgHash",E));if(S==null||![0,1,2,3].includes(S))throw new Error("recovery id invalid");const F=S===2||S===3?I+e.n:I;if(F>=n.ORDER)throw new Error("recovery id 2 or 3 invalid");const M=S&1?"03":"02",te=u.fromHex(M+vu(F,n.BYTES)),X=l(F),J=c(-R*X),de=c(x*X),fe=u.BASE.multiplyAndAddUnsafe(te,J,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 Gc(this.toDERHex())}toDERHex(){return Fr.hexFromSig(this)}toCompactRawBytes(){return Gc(this.toCompactHex())}toCompactHex(){const E=s;return vu(this.r,E)+vu(this.s,E)}}const A={isValidPrivateKey(_){try{return d(_),!0}catch{return!1}},normPrivateKeyToScalar:d,randomPrivateKey:()=>{const _=rw(e.n);return RO(e.randomBytes(_),e.n)},precompute(_=8,E=u.BASE){return E._setWindowSize(_),E.multiply(BigInt(3)),E}};function b(_,E=!0){return u.fromPrivateKey(_).toRawBytes(E)}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(_,E,I=!0){if(C(_)===!0)throw new Error("first arg must be private key");if(C(E)===!1)throw new Error("second arg must be public key");return u.fromHex(E).multiply(d(_)).toRawBytes(I)}const k=e.bits2int||function(_){if(_.length>8192)throw new Error("input is too large");const E=oi(_),I=_.length*8-i;return I>0?E>>BigInt(I):E},$=e.bits2int_modN||function(_){return c(k(_))},L=Al(i);function D(_){return Ji("num < 2^"+i,_,Wr,L),Ba(_,s)}function W(_,E,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:F,extraEntropy:M}=I;R==null&&(R=!0),_=$n("msgHash",_),Yp(I),F&&(_=$n("prehashed msgHash",x(_)));const te=$(_),X=d(E),J=[D(X),D(te)];if(M!=null&&M!==!1){const he=M===!0?S(n.BYTES):M;J.push($n("extraEntropy",he))}const de=Yc(...J),fe=te;function Ne(he){const xe=k(he);if(!f(xe))return;const nt=l(xe),ht=u.BASE.multiply(xe).toAffine(),bt=c(ht.x);if(bt===Wr)return;const Gt=c(nt*c(fe+bt*X));if(Gt===Wr)return;let Sr=(ht.x===bt?0:2)|Number(ht.y&Ct),Jr=Gt;return R&&p(Gt)&&(Jr=g(Gt),Sr^=1),new v(bt,Jr,Sr)}return{seed:de,k2sig:Ne}}const H={lowS:e.lowS,prehash:!1},U={lowS:e.lowS,prehash:!1};function N(_,E,I=H){const{seed:x,k2sig:S}=W(_,E,I),R=e;return LT(R.hash.outputLen,R.nByteLength,R.hmac)(x,S)}u.BASE._setWindowSize(8);function P(_,E,I,x=U){var Sr;const S=_;E=$n("msgHash",E),I=$n("publicKey",I);const{lowS:R,prehash:F,format:M}=x;if(Yp(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"||$a(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 J,de;try{if(X&&(J=new v(S.r,S.s)),te){try{M!=="compact"&&(J=v.fromDER(S))}catch(Jr){if(!(Jr instanceof Fr.Err))throw Jr}!J&&M!=="der"&&(J=v.fromCompact(S))}de=u.fromHex(I)}catch{return!1}if(!J||R&&J.hasHighS())return!1;F&&(E=e.hash(E));const{r:fe,s:Ne}=J,he=$(E),xe=l(Ne),nt=c(he*xe),ht=c(fe*xe),bt=(Sr=u.BASE.multiplyAndAddUnsafe(de,nt,ht))==null?void 0:Sr.toAffine();return bt?c(bt.x)===fe:!1}return{CURVE:e,getPublicKey:b,getSharedSecret:O,sign:N,verify:P,ProjectivePoint:u,Signature:v,utils:A}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function jO(t){return{hash:t,hmac:(e,...n)=>Y0(t,e,dT(...n)),randomBytes:hT}}function WO(t,e){const n=r=>MO({...t,...jO(r)});return{...n(e),create:n}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const aw=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Zp=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),qO=BigInt(0),HO=BigInt(1),Rd=BigInt(2),Jp=(t,e)=>(t+e/Rd)/e;function zO(t){const e=aw,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,Rd,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,b=Rn(A,n,e)*u%e,C=Rn(b,o,e)*p%e,O=Rn(C,r,e)*l%e,k=Rn(O,Rd,e);if(!xd.eql(xd.sqr(k),t))throw new Error("Cannot find square root");return k}const xd=Mh(aw,void 0,void 0,{sqrt:zO}),VO=WO({a:qO,b:BigInt(7),Fp:xd,n:Zp,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{const e=Zp,n=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),r=-HO*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),s=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),i=n,o=BigInt("0x100000000000000000000000000000000"),a=Jp(i*t,e),c=Jp(-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}}}},UT);function KO(t){if(t.length!==130&&t.length!==132)throw new YO({signature:t});const e=BigInt(Br(t,0,32)),n=BigInt(Br(t,32,64)),r=(()=>{const s=+`0x${t.slice(130)}`;if(!Number.isNaN(s))try{return GO(s)}catch{throw new ZO({value:s})}})();return typeof r>"u"?{r:e,s:n}:{r:e,s:n,yParity:r}}function GO(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 JO({value:t})}class YO extends tt{constructor({signature:e}){super(`Value \`${e}\` is an invalid signature size.`,{metaMessages:["Expected: 64 bytes or 65 bytes.",`Received ${Ds(Fh(e))} bytes.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidSerializedSizeError"})}}class ZO 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 JO 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 XO(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function cw(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 jh(t){if(!Number.isSafeInteger(t))throw new Error(`invalid integer: ${t}`)}function Pd(t){if(!Array.isArray(t))throw new Error("array expected")}function Xc(t,e){if(!cw(!0,e))throw new Error(`${t}: array of strings expected`)}function QO(t,e){if(!cw(!1,e))throw new Error(`${t}: array of numbers expected`)}function eR(...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 tR(t){const e=typeof t=="string"?t.split(""):t,n=e.length;Xc("alphabet",e);const r=new Map(e.map((s,i)=>[s,i]));return{encode:s=>(Pd(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=>(Pd(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 nR(t=""){return Jc("join",t),{encode:e=>(Xc("join.decode",e),e.join(t)),decode:e=>(Jc("join.decode",e),e.split(t))}}function rR(t,e="="){return jh(t),Jc("padding",e),{encode(n){for(Xc("padding.encode",n);n.length*t%8;)n.push(e);return n},decode(n){Xc("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 lw=(t,e)=>e===0?t:lw(e,t%e),Qc=(t,e)=>t+(e-lw(t,e)),Au=(()=>{let t=[];for(let e=0;e<40;e++)t.push(2**e);return t})();function Xp(t,e,n,r){if(Pd(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=Au[e],a=Au[n]-1,c=[];for(const l of t){if(jh(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=Au[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 sR(t,e=!1){if(jh(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(!XO(n))throw new Error("radix2.encode input should be Uint8Array");return Xp(Array.from(n),8,t,!e)},decode:n=>(QO("radix2.decode",n),Uint8Array.from(Xp(n,t,8,e)))}}const iR=eR(sR(5),tR("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"),rR(5),nR(""));function oR(t){return EO(aR(t))}function aR(t){const{payload:e,signature:n}=t,{r,s,yParity:i}=n,a=new VO.Signature(BigInt(r),BigInt(s)).addRecoveryBit(i).recoverPublicKey(Fh(e).substring(2));return dO(a)}function cR(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],b=0;for(let C=p-1;(A!==0||b<d)&&C!==-1;C--,b++)A+=256*g[C]>>>0,g[C]=A%n>>>0,A=A/n>>>0;if(A!==0)throw new Error("Non-zero carry");d=b,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 b=e[A];if(b===255)return;let C=0;for(let O=f-1;(b!==0||C<h)&&O!==-1;O--,C++)b+=n*p[O]>>>0,p[O]=b%256>>>0,b=b/256>>>0;if(b!==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 lR="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";const po=cR(lR);function uR(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 dR(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 hR=new TextEncoder,fR=50;function pR(t,e,n){hR.encodeInto(t,e.subarray(n))}function gR(t,e,n){t.length>fR?pR(t,e,n):dR(t,e,n)}const mR=4096;function uw(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>=mR&&(o+=String.fromCharCode(...i),i.length=0)}return i.length>0&&(o+=String.fromCharCode(...i)),o}const yR=new TextDecoder,wR=200;function bR(t,e,n){const r=t.subarray(e,e+n);return yR.decode(r)}function ER(t,e,n){return n>wR?bR(t,e,n):uw(t,e,n)}class ic{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 Co=4294967295;function _R(t,e,n){const r=n/4294967296,s=n;t.setUint32(e,r),t.setUint32(e+4,s)}function dw(t,e,n){const r=Math.floor(n/4294967296),s=n;t.setUint32(e,r),t.setUint32(e+4,s)}function hw(t,e){const n=t.getInt32(e),r=t.getUint32(e+4);return n*4294967296+r}function vR(t,e){const n=t.getUint32(e),r=t.getUint32(e+4);return n*4294967296+r}const CR=-1,AR=4294967296-1,SR=17179869184-1;function IR({sec:t,nsec:e}){if(t>=0&&e>=0&&t<=SR)if(e===0&&t<=AR){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),dw(r,4,t),n}}function NR(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 TR(t){if(t instanceof Date){const e=NR(t);return IR(e)}else return null}function OR(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=hw(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 RR(t){const e=OR(t);return new Date(e.sec*1e3+e.nsec/1e6)}const xR={type:CR,encode:TR,decode:RR};class el{constructor(){this.builtInEncoders=[],this.builtInDecoders=[],this.encoders=[],this.decoders=[],this.register(xR)}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 ic(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 ic(o,i)}}}return e instanceof ic?e:null}decode(e,n,r){const s=n<0?this.builtInDecoders[-1-n]:this.decoders[n];return s?s(e,n,r):new ic(n,e)}}el.defaultCodec=new el;function PR(t){return t instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&t instanceof SharedArrayBuffer}function Dd(t){return t instanceof Uint8Array?t:ArrayBuffer.isView(t)?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):PR(t)?new Uint8Array(t):Uint8Array.from(t)}const DR=100,kR=2048;let UR=class fw{constructor(e){this.entered=!1,this.extensionCodec=(e==null?void 0:e.extensionCodec)??el.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)??DR,this.initialBufferSize=(e==null?void 0:e.initialBufferSize)??kR,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 fw({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=uR(e);this.ensureBufferSizeToWrite(5+r),this.writeStringHeader(r),gR(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=Dd(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),_R(this.view,this.pos,e),this.pos+=8}writeI64(e){this.ensureBufferSizeToWrite(8),dw(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 $R(t,e){return new UR(e).encodeSharedRef(t)}function Su(t){return`${t<0?"-":""}0x${Math.abs(t).toString(16).padStart(2,"0")}`}const BR=16,LR=16;class FR{constructor(e=BR,n=LR){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=uw(e,n,r),o=Uint8Array.prototype.slice.call(e,n,n+r);return this.store(o,i),i}}const kd="array",Ho="map_key",pw="map_value",MR=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 jR{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=kd,n.position=0,n.size=e,n.array=new Array(e)}pushMapState(e){const n=this.getUninitializedStateFromPool();n.type=Ho,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===kd){const r=e;r.size=0,r.array=void 0,r.position=0,r.type=void 0}if(e.type===Ho||e.type===pw){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 Ao=-1,Wh=new DataView(new ArrayBuffer(0)),WR=new Uint8Array(Wh.buffer);try{Wh.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 Qp=new RangeError("Insufficient data"),qR=new FR;let HR=class gw{constructor(e){this.totalPos=0,this.pos=0,this.view=Wh,this.bytes=WR,this.headByte=Ao,this.stack=new jR,this.entered=!1,this.extensionCodec=(e==null?void 0:e.extensionCodec)??el.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)??Co,this.maxBinLength=(e==null?void 0:e.maxBinLength)??Co,this.maxArrayLength=(e==null?void 0:e.maxArrayLength)??Co,this.maxMapLength=(e==null?void 0:e.maxMapLength)??Co,this.maxExtLength=(e==null?void 0:e.maxExtLength)??Co,this.keyDecoder=(e==null?void 0:e.keyDecoder)!==void 0?e.keyDecoder:qR,this.mapKeyConverter=(e==null?void 0:e.mapKeyConverter)??MR}clone(){return new gw({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=Ao,this.stack.reset()}setBuffer(e){const n=Dd(e);this.bytes=n,this.view=new DataView(n.buffer,n.byteOffset,n.byteLength),this.pos=0}appendBuffer(e){if(this.headByte===Ao&&!this.hasRemaining(1))this.setBuffer(e);else{const n=this.bytes.subarray(this.pos),r=Dd(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 ${Su(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: ${Su(e)}`);this.complete();const r=this.stack;for(;r.length>0;){const s=r.top();if(s.type===kd)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===Ho){if(n==="__proto__")throw new Cn("The key __proto__ is not allowed");s.key=this.mapKeyConverter(n),s.type=pw;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=Ho;continue e}}return n}}readHeadByte(){return this.headByte===Ao&&(this.headByte=this.readU8()),this.headByte}complete(){this.headByte=Ao}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: ${Su(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 Qp;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=ER(this.bytes,r,e),this.pos+=n+e,s}stateIsMapKey(){return this.stack.length>0?this.stack.top().type===Ho:!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 Qp;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=vR(this.view,this.pos);return this.pos+=8,e}readI64(){const e=hw(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 zR(t,e){return new HR(e).decode(t)}function qh(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function mw(t=0){return globalThis.Buffer!=null&&globalThis.Buffer.allocUnsafe!=null?qh(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}function zo(t,e){e||(e=t.reduce((s,i)=>s+i.length,0));const n=mw(e);let r=0;for(const s of t)n.set(s,r),r+=s.length;return qh(n)}function VR(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 b=(A-v)*u+1>>>0,C=new Uint8Array(b);v!==A;){for(var O=p[v],k=0,$=b-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 L=b-y;L!==b&&C[L]===0;)L++;for(var D=c.repeat(g);L<b;++L)D+=t.charAt(C[L]);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,b=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*b[k]>>>0,b[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&&b[$]===0;)$++;for(var L=new Uint8Array(y+(A-$)),D=y;$!==A;)L[D++]=b[$++];return L}}}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 KR=VR,GR=KR;const YR=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")},ZR=t=>new TextEncoder().encode(t),JR=t=>new TextDecoder().decode(t);class XR{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 QR{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 yw(this,e)}}class ex{constructor(e){this.decoders=e}or(e){return yw(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 yw=(t,e)=>new ex({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}});class tx{constructor(e,n,r,s){this.name=e,this.prefix=n,this.baseEncode=r,this.baseDecode=s,this.encoder=new XR(e,n,r),this.decoder=new QR(e,n,s)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}}const Il=({name:t,prefix:e,encode:n,decode:r})=>new tx(t,e,n,r),La=({prefix:t,name:e,alphabet:n})=>{const{encode:r,decode:s}=GR(n,e);return Il({prefix:t,name:e,encode:r,decode:i=>YR(s(i))})},nx=(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},rx=(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})=>Il({prefix:e,name:t,encode(s){return rx(s,r,n)},decode(s){return nx(s,r,n,t)}}),sx=Il({prefix:"\0",name:"identity",encode:t=>JR(t),decode:t=>ZR(t)}),ix=Object.freeze(Object.defineProperty({__proto__:null,identity:sx},Symbol.toStringTag,{value:"Module"})),ox=kt({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1}),ax=Object.freeze(Object.defineProperty({__proto__:null,base2:ox},Symbol.toStringTag,{value:"Module"})),cx=kt({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3}),lx=Object.freeze(Object.defineProperty({__proto__:null,base8:cx},Symbol.toStringTag,{value:"Module"})),ux=La({prefix:"9",name:"base10",alphabet:"0123456789"}),dx=Object.freeze(Object.defineProperty({__proto__:null,base10:ux},Symbol.toStringTag,{value:"Module"})),hx=kt({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),fx=kt({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4}),px=Object.freeze(Object.defineProperty({__proto__:null,base16:hx,base16upper:fx},Symbol.toStringTag,{value:"Module"})),gx=kt({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),mx=kt({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),yx=kt({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),wx=kt({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),bx=kt({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Ex=kt({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),_x=kt({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),vx=kt({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Cx=kt({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5}),Ax=Object.freeze(Object.defineProperty({__proto__:null,base32:gx,base32hex:bx,base32hexpad:_x,base32hexpadupper:vx,base32hexupper:Ex,base32pad:yx,base32padupper:wx,base32upper:mx,base32z:Cx},Symbol.toStringTag,{value:"Module"})),Sx=La({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Ix=La({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"}),Nx=Object.freeze(Object.defineProperty({__proto__:null,base36:Sx,base36upper:Ix},Symbol.toStringTag,{value:"Module"})),Tx=La({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Ox=La({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"}),Rx=Object.freeze(Object.defineProperty({__proto__:null,base58btc:Tx,base58flickr:Ox},Symbol.toStringTag,{value:"Module"})),xx=kt({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Px=kt({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Dx=kt({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),kx=kt({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6}),Ux=Object.freeze(Object.defineProperty({__proto__:null,base64:xx,base64pad:Px,base64url:Dx,base64urlpad:kx},Symbol.toStringTag,{value:"Module"})),ww=Array.from("🚀🪐☄🛰🌌🌑🌒🌓🌔🌕🌖🌗🌘🌍🌏🌎🐉☀💻🖥💾💿😂❤😍🤣😊🙏💕😭😘👍😅👏😁🔥🥰💔💖💙😢🤔😆🙄💪😉☺👌🤗💜😔😎😇🌹🤦🎉💞✌✨🤷😱😌🌸🙌😋💗💚😏💛🙂💓🤩😄😀🖤😃💯🙈👇🎶😒🤭❣😜💋👀😪😑💥🙋😞😩😡🤪👊🥳😥🤤👉💃😳✋😚😝😴🌟😬🙃🍀🌷😻😓⭐✅🥺🌈😈🤘💦✔😣🏃💐☹🎊💘😠☝😕🌺🎂🌻😐🖕💝🙊😹🗣💫💀👑🎵🤞😛🔴😤🌼😫⚽🤙☕🏆🤫👈😮🙆🍻🍃🐶💁😲🌿🧡🎁⚡🌞🎈❌✊👋😰🤨😶🤝🚶💰🍓💢🤟🙁🚨💨🤬✈🎀🍺🤓😙💟🌱😖👶🥴▶➡❓💎💸⬇😨🌚🦋😷🕺⚠🙅😟😵👎🤲🤠🤧📌🔵💅🧐🐾🍒😗🤑🌊🤯🐷☎💧😯💆👆🎤🙇🍑❄🌴💣🐸💌📍🥀🤢👅💡💩👐📸👻🤐🤮🎼🥵🚩🍎🍊👼💍📣🥂"),$x=ww.reduce((t,e,n)=>(t[n]=e,t),[]),Bx=ww.reduce((t,e,n)=>(t[e.codePointAt(0)]=n,t),[]);function Lx(t){return t.reduce((e,n)=>(e+=$x[n],e),"")}function Fx(t){const e=[];for(const n of t){const r=Bx[n.codePointAt(0)];if(r===void 0)throw new Error(`Non-base256emoji character: ${n}`);e.push(r)}return new Uint8Array(e)}const Mx=Il({prefix:"🚀",name:"base256emoji",encode:Lx,decode:Fx}),jx=Object.freeze(Object.defineProperty({__proto__:null,base256emoji:Mx},Symbol.toStringTag,{value:"Module"}));new TextEncoder;new TextDecoder;const eg={...ix,...ax,...lx,...dx,...px,...Ax,...Nx,...Rx,...Ux,...jx};function bw(t,e,n,r){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:n},decoder:{decode:r}}}const tg=bw("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),Iu=bw("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=mw(t.length);for(let n=0;n<t.length;n++)e[n]=t.charCodeAt(n);return e}),Ew={utf8:tg,"utf-8":tg,hex:eg.base16,latin1:Iu,ascii:Iu,binary:Iu,...eg};function jn(t,e="utf8"){const n=Ew[e];if(!n)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?qh(globalThis.Buffer.from(t,"utf-8")):n.decoder.decode(`${n.prefix}${t}`)}function mn(t,e="utf8"){const n=Ew[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 Wx={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"}},qx="Input must be an string, Buffer or Uint8Array";function Hx(t){let e;if(t instanceof Uint8Array)e=t;else if(typeof t=="string")e=new TextEncoder().encode(t);else throw new Error(qx);return e}function zx(t){return Array.prototype.map.call(t,function(e){return(e<16?"0":"")+e.toString(16)}).join("")}function oc(t){return(4294967296+t).toString(16).substring(1)}function Vx(t,e,n){let r=`
|
|
20
|
+
`+t+" = ";for(let s=0;s<e.length;s+=2){if(n===32)r+=oc(e[s]).toUpperCase(),r+=" ",r+=oc(e[s+1]).toUpperCase();else if(n===64)r+=oc(e[s+1]).toUpperCase(),r+=oc(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 Kx(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 _w={normalizeInput:Hx,toHex:zx,debugPrint:Vx,testSpeed:Kx};const Nc=_w;function ac(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 ng(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 vw(t,e){return t[e]^t[e+1]<<8^t[e+2]<<16^t[e+3]<<24}function rs(t,e,n,r,s,i){const o=Lo[s],a=Lo[s+1],c=Lo[i],l=Lo[i+1];ac(ve,t,e),ng(ve,t,o,a);let u=ve[r]^ve[t],d=ve[r+1]^ve[t+1];ve[r]=d,ve[r+1]=u,ac(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,ac(ve,t,e),ng(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,ac(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 Cw=new Uint32Array([4089235720,1779033703,2227873595,3144134277,4271175723,1013904242,1595750129,2773480762,2917565137,1359893119,725511199,2600822924,4215389547,528734635,327033209,1541459225]),Gx=[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(Gx.map(function(t){return t*2})),ve=new Uint32Array(32),Lo=new Uint32Array(32);function Aw(t,e){let n=0;for(n=0;n<16;n++)ve[n]=t.h[n],ve[n+16]=Cw[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++)Lo[n]=vw(t.b,4*n);for(n=0;n<12;n++)rs(0,8,16,24,$t[n*16+0],$t[n*16+1]),rs(2,10,18,26,$t[n*16+2],$t[n*16+3]),rs(4,12,20,28,$t[n*16+4],$t[n*16+5]),rs(6,14,22,30,$t[n*16+6],$t[n*16+7]),rs(0,10,20,30,$t[n*16+8],$t[n*16+9]),rs(2,12,22,24,$t[n*16+10],$t[n*16+11]),rs(4,14,16,26,$t[n*16+12],$t[n*16+13]),rs(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 ss=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 Sw(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};ss.fill(0),ss[0]=t,e&&(ss[1]=e.length),ss[2]=1,ss[3]=1,n&&ss.set(n,32),r&&ss.set(r,48);for(let i=0;i<16;i++)s.h[i]=Cw[i]^vw(ss,i*4);return e&&(Hh(s,e),s.c=128),s}function Hh(t,e){for(let n=0;n<e.length;n++)t.c===128&&(t.t+=t.c,Aw(t,!1),t.c=0),t.b[t.c++]=e[n]}function Iw(t){for(t.t+=t.c;t.c<128;)t.b[t.c++]=0;Aw(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 Nw(t,e,n,r,s){n=n||64,t=Nc.normalizeInput(t),r&&(r=Nc.normalizeInput(r)),s&&(s=Nc.normalizeInput(s));const i=Sw(n,e,r,s);return Hh(i,t),Iw(i)}function Yx(t,e,n,r,s){const i=Nw(t,e,n,r,s);return Nc.toHex(i)}var Zx={blake2b:Nw,blake2bHex:Yx,blake2bInit:Sw,blake2bUpdate:Hh,blake2bFinal:Iw};const Tw=_w;function Jx(t,e){return t[e]^t[e+1]<<8^t[e+2]<<16^t[e+3]<<24}function is(t,e,n,r,s,i){Me[t]=Me[t]+Me[e]+s,Me[r]=cc(Me[r]^Me[t],16),Me[n]=Me[n]+Me[r],Me[e]=cc(Me[e]^Me[n],12),Me[t]=Me[t]+Me[e]+i,Me[r]=cc(Me[r]^Me[t],8),Me[n]=Me[n]+Me[r],Me[e]=cc(Me[e]^Me[n],7)}function cc(t,e){return t>>>e^t<<32-e}const Ow=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 Rw(t,e){let n=0;for(n=0;n<8;n++)Me[n]=t.h[n],Me[n+8]=Ow[n];for(Me[12]^=t.t,Me[13]^=t.t/4294967296,e&&(Me[14]=~Me[14]),n=0;n<16;n++)It[n]=Jx(t.b,4*n);for(n=0;n<10;n++)is(0,4,8,12,It[Bt[n*16+0]],It[Bt[n*16+1]]),is(1,5,9,13,It[Bt[n*16+2]],It[Bt[n*16+3]]),is(2,6,10,14,It[Bt[n*16+4]],It[Bt[n*16+5]]),is(3,7,11,15,It[Bt[n*16+6]],It[Bt[n*16+7]]),is(0,5,10,15,It[Bt[n*16+8]],It[Bt[n*16+9]]),is(1,6,11,12,It[Bt[n*16+10]],It[Bt[n*16+11]]),is(2,7,8,13,It[Bt[n*16+12]],It[Bt[n*16+13]]),is(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 xw(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(Ow),b:new Uint8Array(64),c:0,t:0,outlen:t};return r.h[0]^=16842752^n<<8^t,n>0&&(zh(r,e),r.c=64),r}function zh(t,e){for(let n=0;n<e.length;n++)t.c===64&&(t.t+=t.c,Rw(t,!1),t.c=0),t.b[t.c++]=e[n]}function Pw(t){for(t.t+=t.c;t.c<64;)t.b[t.c++]=0;Rw(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 Dw(t,e,n){n=n||32,t=Tw.normalizeInput(t);const r=xw(n,e);return zh(r,t),Pw(r)}function Xx(t,e,n){const r=Dw(t,e,n);return Tw.toHex(r)}var Qx={blake2s:Dw,blake2sHex:Xx,blake2sInit:xw,blake2sUpdate:zh,blake2sFinal:Pw};const So=Zx,Io=Qx;var e3={blake2b:So.blake2b,blake2bHex:So.blake2bHex,blake2bInit:So.blake2bInit,blake2bUpdate:So.blake2bUpdate,blake2bFinal:So.blake2bFinal,blake2s:Io.blake2s,blake2sHex:Io.blake2sHex,blake2sInit:Io.blake2sInit,blake2sUpdate:Io.blake2sUpdate,blake2sFinal:Io.blake2sFinal};const t3=":";function Vr(t){const[e,n]=t.split(t3);return{namespace:e,reference:n}}function kw(t,e){return t.includes(":")?[t]:e.chains||[]}var n3=Object.defineProperty,r3=Object.defineProperties,s3=Object.getOwnPropertyDescriptors,rg=Object.getOwnPropertySymbols,i3=Object.prototype.hasOwnProperty,o3=Object.prototype.propertyIsEnumerable,Ud=(t,e,n)=>e in t?n3(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,sg=(t,e)=>{for(var n in e||(e={}))i3.call(e,n)&&Ud(t,n,e[n]);if(rg)for(var n of rg(e))o3.call(e,n)&&Ud(t,n,e[n]);return t},a3=(t,e)=>r3(t,s3(e)),ig=(t,e,n)=>Ud(t,typeof e!="symbol"?e+"":e,n);const c3="ReactNative",On={reactNative:"react-native",node:"node",browser:"browser",unknown:"unknown"},l3="js";function tl(){return typeof Vt<"u"&&typeof Vt.versions<"u"&&typeof Vt.versions.node<"u"}function Us(){return!gi()&&!!xh()&&navigator.product===c3}function u3(){return Us()&&typeof we<"u"&&typeof(we==null?void 0:we.Platform)<"u"&&(we==null?void 0:we.Platform.OS)==="android"}function d3(){return Us()&&typeof we<"u"&&typeof(we==null?void 0:we.Platform)<"u"&&(we==null?void 0:we.Platform.OS)==="ios"}function go(){return!tl()&&!!xh()&&!!gi()}function Fa(){return Us()?On.reactNative:tl()?On.node:go()?On.browser:On.unknown}function og(){var t;try{return Us()&&typeof we<"u"&&typeof(we==null?void 0:we.Application)<"u"?(t=we.Application)==null?void 0:t.applicationId:void 0}catch{return}}function h3(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 f3(t){var e,n;const r=Uw();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!=="")),a3(sg(sg({},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 Uw(){return N0()||{name:"",description:"",url:"",icons:[""]}}function p3(){if(Fa()===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=M2();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 g3(){var t;const e=Fa();return e===On.browser?[e,((t=I0())==null?void 0:t.host)||"unknown"].join(":"):e}function $w(t,e,n){const r=p3(),s=g3();return[[t,e].join("-"),[l3,n].join("-"),r,s].join("/")}function m3({protocol:t,version:e,relayUrl:n,sdkVersion:r,auth:s,projectId:i,useOnCloseEvent:o,bundleId:a,packageName:c}){const l=n.split("?"),u=$w(t,e,r),d={auth:s,ua:u,projectId:i,useOnCloseEvent:o||void 0,packageName:c||void 0,bundleId:a||void 0},h=h3(l[1]||"",d);return l[0]+"?"+h}function Qs(t,e){return t.filter(n=>e.includes(n)).length===t.length}function $d(t){return Object.fromEntries(t.entries())}function Bd(t){return new Map(Object.entries(t))}function Ks(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 yr(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 Bw(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 y3(t){return Bw("topic",t)}function w3(t){return Bw("id",t)}function Lw(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 pr(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 b3({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=E3(i,t,e),a=Fa();if(a===On.browser){if(!((r=gi())!=null&&r.hasFocus())){console.warn("Document does not have focus, skipping deeplink.");return}_3(o)}else a===On.reactNative&&typeof(we==null?void 0:we.Linking)<"u"&&await we.Linking.openURL(o)}catch(s){console.error(s)}}function E3(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}${S3(r,!0)}`}else s=`${s}/wc?${r}`;return s}function _3(t){let e="_self";A3()?e="_top":(C3()||t.startsWith("https://")||t.startsWith("http://"))&&(e="_blank"),window.open(t,e,"noreferrer noopener")}async function v3(t,e){let n="";try{if(go()&&(n=localStorage.getItem(e),n))return n;n=await t.getItem(e)}catch(r){console.error(r)}return n}function ag(t,e){if(!t.includes(e))return null;const n=t.split(/([&,?,=])/),r=n.indexOf(e);return n[r+2]}function cg(){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 Vh(){return typeof Vt<"u"&&{}.IS_VITEST==="true"}function C3(){return typeof window<"u"&&(!!window.TelegramWebviewProxy||!!window.Telegram||!!window.TelegramWebviewProxyProto)}function A3(){try{return window.self!==window.top}catch{return!1}}function S3(t,e=!1){const n=Be.from(t).toString("base64");return e?n.replace(/[=]/g,""):n}function Fw(t){return Be.from(t,"base64").toString("utf-8")}function I3(t){return new Promise(e=>setTimeout(e,t))}let N3=class{constructor({limit:e}){ig(this,"limit"),ig(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 lc=BigInt(2**32-1),lg=BigInt(32);function Mw(t,e=!1){return e?{h:Number(t&lc),l:Number(t>>lg&lc)}:{h:Number(t>>lg&lc)|0,l:Number(t&lc)|0}}function jw(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}=Mw(t[i],e);[r[i],s[i]]=[o,a]}return[r,s]}const ug=(t,e,n)=>t>>>n,dg=(t,e,n)=>t<<32-n|e>>>n,hs=(t,e,n)=>t>>>n|e<<32-n,fs=(t,e,n)=>t<<32-n|e>>>n,Fo=(t,e,n)=>t<<64-n|e>>>n-32,Mo=(t,e,n)=>t>>>n-32|e<<64-n,T3=(t,e)=>e,O3=(t,e)=>t,R3=(t,e,n)=>t<<n|e>>>32-n,x3=(t,e,n)=>e<<n|t>>>32-n,P3=(t,e,n)=>e<<n-32|t>>>64-n,D3=(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),Gh=(t,e,n,r)=>e+n+r+(t/2**32|0)|0,k3=(t,e,n,r)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0),U3=(t,e,n,r,s)=>e+n+r+s+(t/2**32|0)|0,$3=(t,e,n,r,s)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0)+(s>>>0),B3=(t,e,n,r,s,i)=>e+n+r+s+i+(t/2**32|0)|0,$i=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function Nl(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function Zr(t){if(!Number.isSafeInteger(t)||t<0)throw new Error("positive integer expected, got "+t)}function rr(t,...e){if(!Nl(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 Tl(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.createHasher");Zr(t.outputLen),Zr(t.blockLen)}function ks(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 Yh(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 _a(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 Nu(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function cr(t,e){return t<<32-e|t>>>e}const Ww=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function qw(t){return t<<24&4278190080|t<<8&16711680|t>>>8&65280|t>>>24&255}const kr=Ww?t=>t:t=>qw(t);function L3(t){for(let e=0;e<t.length;e++)t[e]=qw(t[e]);return t}const ps=Ww?t=>t:L3,Hw=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",F3=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function Xi(t){if(rr(t),Hw)return t.toHex();let e="";for(let n=0;n<t.length;n++)e+=F3[t[n]];return e}const xr={_0:48,_9:57,A:65,F:70,a:97,f:102};function hg(t){if(t>=xr._0&&t<=xr._9)return t-xr._0;if(t>=xr.A&&t<=xr.F)return t-(xr.A-10);if(t>=xr.a&&t<=xr.f)return t-(xr.a-10)}function nl(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);if(Hw)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=hg(t.charCodeAt(i)),a=hg(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 zw(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=zw(t)),rr(t),t}function ys(...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 Ol=class{};function Ma(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 M3(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 Ni(t=32){if($i&&typeof $i.getRandomValues=="function")return $i.getRandomValues(new Uint8Array(t));if($i&&typeof $i.randomBytes=="function")return Uint8Array.from($i.randomBytes(t));throw new Error("crypto.getRandomValues must be defined")}const j3=BigInt(0),No=BigInt(1),W3=BigInt(2),q3=BigInt(7),H3=BigInt(256),z3=BigInt(113),Vw=[],Kw=[],Gw=[];for(let t=0,e=No,n=1,r=0;t<24;t++){[n,r]=[r,(2*n+3*r)%5],Vw.push(2*(5*r+n)),Kw.push((t+1)*(t+2)/2%64);let s=j3;for(let i=0;i<7;i++)e=(e<<No^(e>>q3)*z3)%H3,e&W3&&(s^=No<<(No<<BigInt(i))-No);Gw.push(s)}const Yw=jw(Gw,!0),V3=Yw[0],K3=Yw[1],fg=(t,e,n)=>n>32?P3(t,e,n):R3(t,e,n),pg=(t,e,n)=>n>32?D3(t,e,n):x3(t,e,n);function G3(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=fg(l,u,1)^n[a],h=pg(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=Kw[o],c=fg(s,i,a),l=pg(s,i,a),u=Vw[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]^=V3[r],t[1]^=K3[r]}Wn(n)}let Y3=class Zw extends Ol{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,Zr(r),!(0<e&&e<200))throw new Error("only keccak-f1600 function is supported");this.state=new Uint8Array(200),this.state32=_a(this.state)}clone(){return this._cloneInto()}keccak(){ps(this.state32),G3(this.state32,this.rounds),ps(this.state32),this.posOut=0,this.pos=0}update(e){ks(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){ks(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 Zr(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(Yh(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 Zw(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 Z3=(t,e,n)=>Ma(()=>new Y3(e,t,n)),J3=Z3(1,136,256/8);function X3(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 Q3(t,e,n){return t&e^~t&n}function eP(t,e,n){return t&e^t&n^e&n}let Jw=class extends Ol{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=Nu(this.buffer)}update(e){ks(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=Nu(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){ks(this),Yh(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;X3(r,s-8,BigInt(this.length*8),i),this.process(r,0);const a=Nu(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 os=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Lt=Uint32Array.from([3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]),Ft=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209]),tP=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]),as=new Uint32Array(64);class nP extends Jw{constructor(e=32){super(64,e,8,!1),this.A=os[0]|0,this.B=os[1]|0,this.C=os[2]|0,this.D=os[3]|0,this.E=os[4]|0,this.F=os[5]|0,this.G=os[6]|0,this.H=os[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)as[d]=e.getUint32(n,!1);for(let d=16;d<64;d++){const h=as[d-15],f=as[d-2],p=cr(h,7)^cr(h,18)^h>>>3,g=cr(f,17)^cr(f,19)^f>>>10;as[d]=g+as[d-7]+p+as[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=cr(a,6)^cr(a,11)^cr(a,25),f=u+h+Q3(a,c,l)+tP[d]+as[d]|0,p=(cr(r,2)^cr(r,13)^cr(r,22))+eP(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(as)}destroy(){this.set(0,0,0,0,0,0,0,0),Wn(this.buffer)}}const Xw=jw(["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))),rP=Xw[0],sP=Xw[1],cs=new Uint32Array(80),ls=new Uint32Array(80);let Zh=class extends Jw{constructor(e=64){super(128,e,16,!1),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}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 b=0;b<16;b++,n+=4)cs[b]=e.getUint32(n),ls[b]=e.getUint32(n+=4);for(let b=16;b<80;b++){const C=cs[b-15]|0,O=ls[b-15]|0,k=hs(C,O,1)^hs(C,O,8)^ug(C,O,7),$=fs(C,O,1)^fs(C,O,8)^dg(C,O,7),L=cs[b-2]|0,D=ls[b-2]|0,W=hs(L,D,19)^Fo(L,D,61)^ug(L,D,6),H=fs(L,D,19)^Mo(L,D,61)^dg(L,D,6),U=k3($,H,ls[b-7],ls[b-16]),N=U3(U,k,W,cs[b-7],cs[b-16]);cs[b]=N|0,ls[b]=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 b=0;b<80;b++){const C=hs(d,h,14)^hs(d,h,18)^Fo(d,h,41),O=fs(d,h,14)^fs(d,h,18)^Mo(d,h,41),k=d&f^~d&g,$=h&p^~h&y,L=$3(A,O,$,sP[b],ls[b]),D=B3(L,v,C,k,rP[b],cs[b]),W=L|0,H=hs(r,s,28)^Fo(r,s,34)^Fo(r,s,39),U=fs(r,s,28)^Mo(r,s,34)^Mo(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=Gh(_,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(cs,ls)}destroy(){Wn(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};class iP extends Zh{constructor(){super(48),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}}const Mt=Uint32Array.from([573645204,4230739756,2673172387,3360449730,596883563,1867755857,2520282905,1497426621,2519219938,2827943907,3193839141,1401305490,721525244,746961066,246885852,2177182882]);class oP extends Zh{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 Rl=Ma(()=>new nP),aP=Ma(()=>new Zh),cP=Ma(()=>new iP),lP=Ma(()=>new oP),uP=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 us(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=Gh(y,l,d,a),c=y|0,{Dh:g,Dl:p}={Dh:g^l,Dl:p^c},{Dh:g,Dl:p}={Dh:T3(g,p),Dl:O3(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:hs(d,u,24),Bl:fs(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 ds(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=Gh(y,l,d,a),c=y|0,{Dh:g,Dl:p}={Dh:g^l,Dl:p^c},{Dh:g,Dl:p}={Dh:hs(g,p,16),Dl:fs(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:Fo(d,u,63),Bl:Mo(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 dP(t,e={},n,r,s){if(Zr(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 hP extends Ol{constructor(e,n){super(),this.finished=!1,this.destroyed=!1,this.length=0,this.pos=0,Zr(e),Zr(n),this.blockLen=e,this.outputLen=n,this.buffer=new Uint8Array(e),this.buffer32=_a(this.buffer)}update(e){ks(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&&(ps(s),this.compress(s,0,!1),ps(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));ps(d);for(let h=0;c+n<i;h+=s.length,c+=n)this.length+=n,this.compress(d,h,!1);ps(d);continue}r.set(e.subarray(c,c+l),this.pos),this.pos+=l,this.length+=l,c+=l}return this}digestInto(e){ks(this),Yh(e,this);const{pos:n,buffer32:r}=this;this.finished=!0,Wn(this.buffer.subarray(n)),ps(r),this.compress(r,0,!0),ps(r);const s=_a(e);this.get().forEach((i,o)=>s[o]=kr(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 fP extends hP{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,dP(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=_a(i);this.v4l^=kr(a[0]),this.v4h^=kr(a[1]),this.v5l^=kr(a[2]),this.v5h^=kr(a[3])}if(s!==void 0){s=tr(s);const a=_a(s);this.v6l^=kr(a[0]),this.v6h^=kr(a[1]),this.v7l^=kr(a[2]),this.v7h^=kr(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}=Mw(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=uP;for(let c=0;c<12;c++)us(0,4,8,12,e,n+2*a[o++]),ds(0,4,8,12,e,n+2*a[o++]),us(1,5,9,13,e,n+2*a[o++]),ds(1,5,9,13,e,n+2*a[o++]),us(2,6,10,14,e,n+2*a[o++]),ds(2,6,10,14,e,n+2*a[o++]),us(3,7,11,15,e,n+2*a[o++]),ds(3,7,11,15,e,n+2*a[o++]),us(0,5,10,15,e,n+2*a[o++]),ds(0,5,10,15,e,n+2*a[o++]),us(1,6,11,12,e,n+2*a[o++]),ds(1,6,11,12,e,n+2*a[o++]),us(2,7,8,13,e,n+2*a[o++]),ds(2,7,8,13,e,n+2*a[o++]),us(3,4,9,14,e,n+2*a[o++]),ds(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 pP=M3(t=>new fP(t)),gP="https://rpc.walletconnect.org/v1";function Qw(t){const e=`Ethereum Signed Message:
|
|
22
|
+
${t.length}`,n=new TextEncoder().encode(e+t);return"0x"+Be.from(J3(n)).toString("hex")}async function mP(t,e,n,r,s,i){switch(n.t){case"eip191":return await yP(t,e,n.s);case"eip1271":return await wP(t,e,n.s,r,s,i);default:throw new Error(`verifySignature failed: Attempted to verify CacaoSignature with unknown type: ${n.t}`)}}function yP(t,e,n){const r=KO(n);return oR({payload:Qw(e),signature:r}).toLowerCase()===t.toLowerCase()}async function wP(t,e,n,r,s,i){const o=Vr(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:Qw(e)).substring(2),h=a+d+c+u+l,f=await fetch(`${i||gP}/?chainId=${r}&projectId=${s}`,{headers:{"Content-Type":"application/json"},method:"POST",body:JSON.stringify({id:bP(),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 bP(){return Date.now()+Math.floor(Math.random()*1e3)}function EP(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 po.encode(i)}function _P(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=pP(r,{dkLen:32});return po.encode(s)}function gg(t){const e=new Uint8Array(Rl(vP(t)));return po.encode(e)}function vP(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 mg(t){const e=Be.from(t,"base64"),n=zR(e).txn;if(!n)throw new Error("Invalid signed transaction: missing 'txn' field");const r=$R(n),s=Be.from("TX"),i=Be.concat([s,Be.from(r)]),o=lP(i);return iR.encode(o).replace(/=+$/,"")}function Tu(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 CP(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(Tu(e.length)),s.push(e),s.push(Be.from([18])),s.push(Tu(n.length)),s.push(n),s.push(Be.from([26])),s.push(Tu(r.length)),s.push(r);const i=Be.concat(s),o=Rl(i);return Be.from(o).toString("hex").toUpperCase()}function AP(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 SP=Object.defineProperty,IP=Object.defineProperties,NP=Object.getOwnPropertyDescriptors,yg=Object.getOwnPropertySymbols,TP=Object.prototype.hasOwnProperty,OP=Object.prototype.propertyIsEnumerable,wg=(t,e,n)=>e in t?SP(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,RP=(t,e)=>{for(var n in e||(e={}))TP.call(e,n)&&wg(t,n,e[n]);if(yg)for(var n of yg(e))OP.call(e,n)&&wg(t,n,e[n]);return t},xP=(t,e)=>IP(t,NP(e));const eb="did:pkh:",PP={eip155:"Ethereum",solana:"Solana",bip122:"Bitcoin"},DP=t=>t?PP[t]||t:"",xl=t=>t==null?void 0:t.split(":"),kP=t=>{const e=t&&xl(t);if(e)return t.includes(eb)?e[3]:e[1]},UP=t=>{const e=t&&xl(t);if(e)return t.includes(eb)?e[2]:e[0]},Ld=t=>{const e=t&&xl(t);if(e)return e[2]+":"+e[3]},rl=t=>{const e=t&&xl(t);if(e)return e.pop()};async function bg(t){const{cacao:e,projectId:n}=t,{s:r,p:s}=e,i=tb(s,s.iss),o=rl(s.iss);return await mP(o,i,r,Ld(s.iss),n)}const tb=(t,e)=>{const n=UP(e);if(!n)throw new Error("Invalid issuer: "+e);const r=`${t.domain} wants you to sign in with your ${DP(n)} account:`,s=rl(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: ${kP(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=Tc(t.resources);if(g){const y=va(g);i=HP(i,y)}return[r,s,"",i,"",o,a,c,l,u,d,h,f,p].filter(y=>y!=null).join(`
|
|
24
|
+
`)};function $P(t){return Be.from(JSON.stringify(t)).toString("base64")}function BP(t){return JSON.parse(Be.from(t,"base64").toString("utf-8"))}function yi(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 LP(t,e,n,r={}){return n==null||n.sort((s,i)=>s.localeCompare(i)),{att:{[t]:FP(e,n,r)}}}function FP(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 nb(t){return yi(t),`urn:recap:${$P(t).replace(/=/g,"")}`}function va(t){const e=BP(t.replace("urn:recap:",""));return yi(e),e}function MP(t,e,n){const r=LP(t,e,n);return nb(r)}function jP(t){return t&&t.includes("urn:recap:")}function WP(t,e){const n=va(t),r=va(e),s=qP(n,r);return nb(s)}function qP(t,e){yi(t),yi(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]=xP(RP({},r.att[s]),{[a]:((c=t.att[s])==null?void 0:c[a])||((l=e.att[s])==null?void 0:l[a])})})}),r}function HP(t="",e){yi(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 Eg(t){var e;const n=va(t);yi(n);const r=(e=n.att)==null?void 0:e.eip155;return r?Object.keys(r).map(s=>s.split("/")[1]):[]}function _g(t){const e=va(t);yi(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 Tc(t){if(!t)return;const e=t==null?void 0:t[t.length-1];return jP(e)?e:void 0}/*! noble-ciphers - MIT License (c) 2023 Paul Miller (paulmillr.com) */function rb(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function Fd(t){if(typeof t!="boolean")throw new Error(`boolean expected, not ${t}`)}function Ou(t){if(!Number.isSafeInteger(t)||t<0)throw new Error("positive integer expected, got "+t)}function hn(t,...e){if(!rb(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 vg(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 zP(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 Is(t){return new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4))}function ao(...t){for(let e=0;e<t.length;e++)t[e].fill(0)}function VP(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}const KP=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function GP(t){if(typeof t!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(t))}function Md(t){if(typeof t=="string")t=GP(t);else if(rb(t))t=jd(t);else throw new Error("Uint8Array expected, got "+typeof t);return t}function YP(t,e){if(e==null||typeof e!="object")throw new Error("options must be defined");return Object.assign(t,e)}function ZP(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 JP=(t,e)=>{function n(r,...s){if(hn(r),!KP)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 Cg(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&&!QP(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 XP(t,e,n){Fd(n);const r=new Uint8Array(16),s=VP(r);return Ag(s,0,BigInt(e),n),Ag(s,8,BigInt(t),n),r}function QP(t){return t.byteOffset%4===0}function jd(t){return Uint8Array.from(t)}const sb=t=>Uint8Array.from(t.split("").map(e=>e.charCodeAt(0))),eD=sb("expand 16-byte k"),tD=sb("expand 32-byte k"),nD=Is(eD),rD=Is(tD);function Le(t,e){return t<<e|t>>>32-e}function Wd(t){return t.byteOffset%4===0}const uc=64,sD=16,ib=2**32-1,Sg=new Uint32Array;function iD(t,e,n,r,s,i,o,a){const c=s.length,l=new Uint8Array(uc),u=Is(l),d=Wd(s)&&Wd(i),h=d?Is(s):Sg,f=d?Is(i):Sg;for(let p=0;p<c;o++){if(t(e,n,r,u,o,a),o>=ib)throw new Error("arx: counter overflow");const g=Math.min(uc,c-p);if(d&&g===uc){const y=p/4;if(p%4!==0)throw new Error("arx: invalid block position");for(let v=0,A;v<sD;v++)A=y+v,f[A]=h[A]^u[v];p+=uc;continue}for(let y=0,v;y<g;y++)v=p+y,i[v]=s[v]^l[y];p+=g}}function oD(t,e){const{allowShortKeys:n,extendNonceFn:r,counterLength:s,counterRight:i,rounds:o}=YP({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},e);if(typeof t!="function")throw new Error("core must be a function");return Ou(s),Ou(o),Fd(i),Fd(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),Ou(d),d<0||d>=ib)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=jd(a)),y=rD;else if(p===16&&n)g=new Uint8Array(32),g.set(a),g.set(a,16),y=nD,f.push(g);else throw new Error(`arx: invalid 32-byte key, got length=${p}`);Wd(c)||f.push(c=jd(c));const v=Is(g);if(r){if(c.length!==24)throw new Error("arx: extended nonce must be 24 bytes");r(y,v,Is(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 b=Is(c);return iD(t,y,v,b,l,u,d,o),ao(...f),u}}const Nt=(t,e)=>t[e++]&255|(t[e++]&255)<<8;class aD{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=Md(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),b=Nt(e,n+4),C=Nt(e,n+6),O=Nt(e,n+8),k=Nt(e,n+10),$=Nt(e,n+12),L=Nt(e,n+14);let D=i[0]+(v&8191),W=i[1]+((v>>>13|A<<3)&8191),H=i[2]+((A>>>10|b<<6)&8191),U=i[3]+((b>>>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),E=i[7]+((k>>>11|$<<5)&8191),I=i[8]+(($>>>8|L<<8)&8191),x=i[9]+(L>>>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)+E*(5*u)+I*(5*l)+x*(5*c),S+=R>>>13,R&=8191;let F=S+D*c+W*a+H*(5*y)+U*(5*g)+N*(5*p);S=F>>>13,F&=8191,F+=P*(5*f)+_*(5*h)+E*(5*d)+I*(5*u)+x*(5*l),S+=F>>>13,F&=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)+E*(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)+E*(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)+E*(5*p)+I*(5*f)+x*(5*h),S+=X>>>13,X&=8191;let J=S+D*h+W*d+H*u+U*l+N*c;S=J>>>13,J&=8191,J+=P*a+_*(5*y)+E*(5*g)+I*(5*p)+x*(5*f),S+=J>>>13,J&=8191;let de=S+D*f+W*h+H*d+U*u+N*l;S=de>>>13,de&=8191,de+=P*c+_*a+E*(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+E*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+E*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+E*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,F+=S,i[0]=R,i[1]=F,i[2]=M,i[3]=te,i[4]=X,i[5]=J,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;ao(r)}update(e){vg(this),e=Md(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(){ao(this.h,this.r,this.buffer,this.pad)}digestInto(e){vg(this),zP(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 cD(t){const e=(r,s)=>t(s).update(Md(r)).digest(),n=t(new Uint8Array(32));return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=r=>t(r),e}const lD=cD(t=>new aD(t));function uD(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,b=n[0],C=n[1],O=n[2],k=o,$=a,L=c,D=l,W=u,H=d,U=h,N=f,P=p,_=g,E=y,I=v,x=A,S=b,R=C,F=O;for(let te=0;te<i;te+=2)k=k+W|0,x=Le(x^k,16),P=P+x|0,W=Le(W^P,12),k=k+W|0,x=Le(x^k,8),P=P+x|0,W=Le(W^P,7),$=$+H|0,S=Le(S^$,16),_=_+S|0,H=Le(H^_,12),$=$+H|0,S=Le(S^$,8),_=_+S|0,H=Le(H^_,7),L=L+U|0,R=Le(R^L,16),E=E+R|0,U=Le(U^E,12),L=L+U|0,R=Le(R^L,8),E=E+R|0,U=Le(U^E,7),D=D+N|0,F=Le(F^D,16),I=I+F|0,N=Le(N^I,12),D=D+N|0,F=Le(F^D,8),I=I+F|0,N=Le(N^I,7),k=k+H|0,F=Le(F^k,16),E=E+F|0,H=Le(H^E,12),k=k+H|0,F=Le(F^k,8),E=E+F|0,H=Le(H^E,7),$=$+U|0,x=Le(x^$,16),I=I+x|0,U=Le(U^I,12),$=$+U|0,x=Le(x^$,8),I=I+x|0,U=Le(U^I,7),L=L+N|0,S=Le(S^L,16),P=P+S|0,N=Le(N^P,12),L=L+N|0,S=Le(S^L,8),P=P+S|0,N=Le(N^P,7),D=D+W|0,R=Le(R^D,16),_=_+R|0,W=Le(W^_,12),D=D+W|0,R=Le(R^D,8),_=_+R|0,W=Le(W^_,7);let M=0;r[M++]=o+k|0,r[M++]=a+$|0,r[M++]=c+L|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+E|0,r[M++]=v+I|0,r[M++]=A+x|0,r[M++]=b+S|0,r[M++]=C+R|0,r[M++]=O+F|0}const dD=oD(uD,{counterRight:!1,counterLength:4,allowShortKeys:!1}),hD=new Uint8Array(16),Ig=(t,e)=>{t.update(e);const n=e.length%16;n&&t.update(hD.subarray(n))},fD=new Uint8Array(32);function Ng(t,e,n,r,s){const i=t(e,n,fD),o=lD.create(i);s&&Ig(o,s),Ig(o,r);const a=XP(r.length,s?s.length:0,!0);o.update(a);const c=o.digest();return ao(i,a),c}const pD=t=>(e,n,r)=>({encrypt(s,i){const o=s.length;i=Cg(o+16,i,!1),i.set(s);const a=i.subarray(0,-16);t(e,n,a,a,1);const c=Ng(t,e,n,a,r);return i.set(c,o),ao(c),i},decrypt(s,i){i=Cg(s.length-16,i,!1);const o=s.subarray(0,-16),a=s.subarray(-16),c=Ng(t,e,n,o,r);if(!ZP(a,c))throw new Error("invalid tag");return i.set(s.subarray(0,-16)),t(e,n,i,i,1),ao(c),i}}),ob=JP({blockSize:64,nonceLength:12,tagLength:16},pD(dD));let ab=class extends Ol{constructor(e,n){super(),this.finished=!1,this.destroyed=!1,Tl(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 ks(this),this.iHash.update(e),this}digestInto(e){ks(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 Pl=(t,e,n)=>new ab(t,e).update(n).digest();Pl.create=(t,e)=>new ab(t,e);function gD(t,e,n){return Tl(t),n===void 0&&(n=new Uint8Array(t.outputLen)),Pl(t,tr(n),tr(e))}const Ru=Uint8Array.from([0]),Tg=Uint8Array.of();function mD(t,e,n,r=32){Tl(t),Zr(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=Tg);const o=new Uint8Array(i*s),a=Pl.create(t,e),c=a._cloneInto(),l=new Uint8Array(a.outputLen);for(let u=0;u<i;u++)Ru[0]=u+1,c.update(u===0?Tg:l).update(n).update(Ru).digestInto(l),o.set(l,s*u),a._cloneInto(c);return a.destroy(),c.destroy(),Wn(l,Ru),o.slice(0,r)}const yD=(t,e,n,r,s)=>mD(t,gD(t,e,n),r,s),Dl=Rl,Jh=BigInt(0),qd=BigInt(1);function sl(t,e=""){if(typeof t!="boolean"){const n=e&&`"${e}"`;throw new Error(n+"expected boolean, got type="+typeof t)}return t}function ei(t,e,n=""){const r=Nl(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 dc(t){const e=t.toString(16);return e.length&1?"0"+e:e}function cb(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return t===""?Jh:BigInt("0x"+t)}function kl(t){return cb(Xi(t))}function il(t){return rr(t),cb(Xi(Uint8Array.from(t).reverse()))}function Xh(t,e){return nl(t.toString(16).padStart(e*2,"0"))}function Qh(t,e){return Xh(t,e).reverse()}function Ht(t,e,n){let r;if(typeof e=="string")try{r=nl(e)}catch(i){throw new Error(t+" must be hex string or Uint8Array, cause: "+i)}else if(Nl(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 xu=t=>typeof t=="bigint"&&Jh<=t;function wD(t,e,n){return xu(t)&&xu(e)&&xu(n)&&e<=t&&t<n}function Hd(t,e,n,r){if(!wD(e,n,r))throw new Error("expected valid "+t+": "+n+" <= n < "+r+", got "+e)}function lb(t){let e;for(e=0;t>Jh;t>>=qd,e+=1);return e}const ja=t=>(qd<<BigInt(t))-qd;function bD(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 ys(...f)};return(h,f)=>{c(),u(h);let p;for(;!(p=f(d()));)u();return c(),p}}function Ul(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 Og(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),ti=BigInt(2),ub=BigInt(3),db=BigInt(4),hb=BigInt(5),ED=BigInt(7),fb=BigInt(8),_D=BigInt(9),pb=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 Rg(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 ef(t,e,n){if(!t.eql(t.sqr(e),n))throw new Error("Cannot find square root")}function gb(t,e){const n=(t.ORDER+en)/db,r=t.pow(e,n);return ef(t,r,e),r}function vD(t,e){const n=(t.ORDER-hb)/fb,r=t.mul(e,ti),s=t.pow(r,n),i=t.mul(e,s),o=t.mul(t.mul(i,ti),s),a=t.mul(i,t.sub(o,t.ONE));return ef(t,a,e),a}function CD(t){const e=$s(t),n=mb(t),r=n(e,e.neg(e.ONE)),s=n(e,r),i=n(e,e.neg(r)),o=(t+ED)/pb;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 ef(a,y,c),y}}function mb(t){if(t<ub)throw new Error("sqrt is not defined for small field");let e=t-en,n=0;for(;e%ti===gn;)e/=ti,n++;let r=ti;const s=$s(t);for(;xg(s,r)===1;)if(r++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(n===1)return gb;let i=s.pow(r,e);const o=(e+en)/ti;return function(a,c){if(a.is0(c))return c;if(xg(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 AD(t){return t%db===ub?gb:t%fb===hb?vD:t%pb===_D?CD(t):mb(t)}const SD=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function ID(t){const e={ORDER:"bigint",MASK:"bigint",BYTES:"number",BITS:"number"},n=SD.reduce((r,s)=>(r[s]="function",r),e);return Ul(t,n),t}function ND(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 yb(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 xg(t,e){const n=(t.ORDER-en)/ti,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 wb(t,e){e!==void 0&&Zr(e);const n=e!==void 0?e:t.toString(2).length,r=Math.ceil(n/8);return{nBitLength:n,nByteLength:r}}function $s(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}=wb(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:ja(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)=>ND(d,h,f),div:(h,f)=>An(h*Rg(f,t),t),sqrN:h=>h*h,addN:(h,f)=>h+f,subN:(h,f)=>h-f,mulN:(h,f)=>h*f,inv:h=>Rg(h,t),sqrt:i||(h=>(u||(u=AD(t)),u(d,h))),toBytes:h=>n?Qh(h,l):Xh(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?il(h):kl(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=>yb(d,h),cmov:(h,f,p)=>p?f:h});return Object.freeze(d)}function bb(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 Eb(t){const e=bb(t);return e+Math.ceil(e/2)}function TD(t,e,n=!1){const r=t.length,s=bb(e),i=Eb(e);if(r<16||r<i||r>1024)throw new Error("expected "+i+"-1024 bytes of input, got "+r);const o=n?il(t):kl(t),a=An(o,e-en)+en;return n?Qh(a,s):Xh(a,s)}const co=BigInt(0),ni=BigInt(1);function ol(t,e){const n=e.negate();return t?n:e}function Pu(t,e){const n=yb(t.Fp,e.map(r=>r.Z));return e.map((r,s)=>t.fromAffine(r.toAffine(n[s])))}function _b(t,e){if(!Number.isSafeInteger(t)||t<=0||t>e)throw new Error("invalid window size, expected [1.."+e+"], got W="+t)}function Du(t,e){_b(t,e);const n=Math.ceil(e/t)+1,r=2**(t-1),s=2**t,i=ja(t),o=BigInt(t);return{windows:n,windowSize:r,mask:i,maxNumber:s,shiftBy:o}}function Pg(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+=ni);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 OD(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 RD(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 ku=new WeakMap,vb=new WeakMap;function Uu(t){return vb.get(t)||1}function Dg(t){if(t!==co)throw new Error("invalid wNAF")}class xD{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>co;)n&ni&&(r=r.add(s)),s=s.double(),n>>=ni;return r}precomputeWindow(e,n){const{windows:r,windowSize:s}=Du(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=Du(e,this.bits);for(let a=0;a<o.windows;a++){const{nextN:c,offset:l,isZero:u,isNeg:d,isNegF:h,offsetF:f}=Pg(r,a,o);r=c,u?i=i.add(ol(h,n[f])):s=s.add(ol(d,n[l]))}return Dg(r),{p:s,f:i}}wNAFUnsafe(e,n,r,s=this.ZERO){const i=Du(e,this.bits);for(let o=0;o<i.windows&&r!==co;o++){const{nextN:a,offset:c,isZero:l,isNeg:u}=Pg(r,o,i);if(r=a,!l){const d=n[c];s=s.add(u?d.negate():d)}}return Dg(r),s}getPrecomputes(e,n,r){let s=ku.get(n);return s||(s=this.precomputeWindow(n,e),e!==1&&(typeof r=="function"&&(s=r(s)),ku.set(n,s))),s}cached(e,n,r){const s=Uu(e);return this.wNAF(s,this.getPrecomputes(s,e,r),n)}unsafe(e,n,r,s){const i=Uu(e);return i===1?this._unsafeLadder(e,n,s):this.wNAFUnsafe(i,this.getPrecomputes(i,e,r),n,s)}createCache(e,n){_b(n,this.bits),vb.set(e,n),ku.delete(e)}hasCache(e){return Uu(e)!==1}}function PD(t,e,n,r){let s=e,i=t.ZERO,o=t.ZERO;for(;n>co||r>co;)n&ni&&(i=i.add(s)),r&ni&&(o=o.add(s)),s=s.double(),n>>=ni,r>>=ni;return{p1:i,p2:o}}function DD(t,e,n,r){OD(n,t),RD(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=lb(BigInt(s));let c=1;a>12?c=a-3:a>4?c=a-2:a>0&&(c=2);const l=ja(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 kg(t,e,n){if(e){if(e.ORDER!==t)throw new Error("Field.ORDER must match order: Fp == p, Fn == n");return ID(e),e}else return $s(t,{isLE:n})}function kD(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>co))throw new Error(`CURVE.${a} must be positive bigint`)}const s=kg(e.p,n.Fp,r),i=kg(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),zw("HashToScalar-");const To=BigInt(0),Bi=BigInt(1),hc=BigInt(2);function UD(t){return Ul(t,{adjustScalarBytes:"function",powPminus2:"function"}),Object.freeze({...t})}function $D(t){const e=UD(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||Ni,l=a?255:448,u=a?32:56,d=BigInt(a?9:5),h=BigInt(a?121665:39081),f=a?hc**BigInt(254):hc**BigInt(447),p=a?BigInt(8)*hc**BigInt(251)-Bi:BigInt(4)*hc**BigInt(445)-Bi,g=f+p+Bi,y=U=>An(U,n),v=A(d);function A(U){return Qh(y(U),u)}function b(U){const N=Ht("u coordinate",U,u);return a&&(N[31]&=127),y(il(N))}function C(U){return il(s(Ht("scalar",U,u)))}function O(U,N){const P=L(b(N),C(U));if(P===To)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 L(U,N){Hd("u",U,To,n),Hd("scalar",N,f,g);const P=N,_=U;let E=Bi,I=To,x=U,S=Bi,R=To;for(let M=BigInt(l-1);M>=To;M--){const te=P>>M&Bi;R^=te,{x_2:E,x_3:x}=$(R,E,x),{x_2:I,x_3:S}=$(R,I,S),R=te;const X=E+I,J=y(X*X),de=E-I,fe=y(de*de),Ne=J-fe,he=x+S,xe=x-S,nt=y(xe*X),ht=y(he*de),bt=nt+ht,Gt=nt-ht;x=y(bt*bt),S=y(_*y(Gt*Gt)),E=y(J*fe),I=y(Ne*(J+y(h*Ne)))}({x_2:E,x_3:x}=$(R,E,x)),{x_2:I,x_3:S}=$(R,I,S);const F=i(I);return y(E*F)}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 BD=BigInt(1),Ug=BigInt(2),LD=BigInt(3),FD=BigInt(5),MD=BigInt(8),Cb=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed"),jD={p:Cb,n:BigInt("0x1000000000000000000000000000000014def9dea2f79cd65812631a5cf5d3ed"),h:MD,a:BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec"),d:BigInt("0x52036cee2b6ffe738cc740797779e89800700a4d4141d8ab75eb4dca135978a3"),Gx:BigInt("0x216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a"),Gy:BigInt("0x6666666666666666666666666666666666666666666666666666666666666658")};function WD(t){const e=BigInt(10),n=BigInt(20),r=BigInt(40),s=BigInt(80),i=Cb,o=t*t%i*t%i,a=Gn(o,Ug,i)*o%i,c=Gn(a,BD,i)*t%i,l=Gn(c,FD,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,Ug,i)*t%i,b2:o}}function qD(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}const HD=$s(jD.p,{isLE:!0}),zd=(()=>{const t=HD.ORDER;return $D({P:t,type:"x25519",powPminus2:e=>{const{pow_p_5_8:n,b2:r}=WD(e);return An(Gn(n,LD,t)*r,t)},adjustScalarBytes:qD})})(),$g=(t,e)=>(t+(t>=0?e:-e)/Ab)/e;function zD(t,e,n){const[[r,s],[i,o]]=e,a=$g(o*t,n),c=$g(-s*t,n);let l=t-a*r-c*i,u=-a*s-c*o;const d=l<qr,h=u<qr;d&&(l=-l),h&&(u=-u);const f=ja(Math.ceil(lb(n)/2))+Qi;if(l<qr||l>=f||u<qr||u>=f)throw new Error("splitScalar (endomorphism): failed, k="+t);return{k1neg:d,k1:l,k2neg:h,k2:u}}function Vd(t){if(!["compact","recovered","der"].includes(t))throw new Error('Signature format must be "compact", "recovered", or "der"');return t}function $u(t,e){const n={};for(let r of Object.keys(e))n[r]=t[r]===void 0?e[r]:t[r];return sl(n.lowS,"lowS"),sl(n.prehash,"prehash"),n.format!==void 0&&Vd(n.format),n}class VD extends Error{constructor(e=""){super(e)}}const Mr={Err:VD,_tlv:{encode:(t,e)=>{const{Err:n}=Mr;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=dc(r);if(s.length/2&128)throw new n("tlv.encode: long form length too big");const i=r>127?dc(s.length/2|128):"";return dc(t)+i+s+e},decode(t,e){const{Err:n}=Mr;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}=Mr;if(t<qr)throw new e("integer: negative integers are not allowed");let n=dc(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}=Mr;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 kl(t)}},toSig(t){const{Err:e,_int:n,_tlv:r}=Mr,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}=Mr,r=e.encode(2,n.encode(t.r)),s=e.encode(2,n.encode(t.s)),i=r+s;return e.encode(48,i)}},qr=BigInt(0),Qi=BigInt(1),Ab=BigInt(2),fc=BigInt(3),KD=BigInt(4);function zi(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 GD(t,e={}){const n=kD("weierstrass",t,e),{Fp:r,Fn:s}=n;let i=n.CURVE;const{h:o,n:a}=i;Ul(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=Ib(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:E}=N.toAffine(),I=r.toBytes(_);if(sl(P,"isCompressed"),P){u();const x=!r.isOdd(E);return ys(Sb(x),I)}else return ys(Uint8Array.of(4),I,r.toBytes(E))}function h(U){ei(U,void 0,"Point");const{publicKey:N,publicKeyUncompressed:P}=l,_=U.length,E=U[0],I=U.subarray(1);if(_===N&&(E===2||E===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 F=r.isOdd(R);return(E&1)===1!==F&&(R=r.neg(R)),{x,y:R}}else if(_===P&&E===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,fc),KD),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 b(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 zD(U,c.basises,s.ORDER)}const k=Og((U,N)=>{const{X:P,Y:_,Z:E}=U;if(r.eql(E,r.ONE))return{x:P,y:_};const I=U.is0();N==null&&(N=I?r.ONE:r.inv(E));const x=r.mul(P,N),S=r.mul(_,N),R=r.mul(E,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}}),$=Og(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 L(U,N,P,_,E){return P=new D(r.mul(P.X,U),P.Y,P.Z),N=ol(_,N),P=ol(E,P),N.add(P)}class D{constructor(N,P,_){this.X=b("x",N),this.Y=b("y",P,!0),this.Z=b("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(ei(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(fc),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:E}=this,{X:I,Y:x,Z:S}=N,R=r.eql(r.mul(P,S),r.mul(I,E)),F=r.eql(r.mul(_,S),r.mul(x,E));return R&&F}negate(){return new D(this.X,r.neg(this.Y),this.Z)}double(){const{a:N,b:P}=i,_=r.mul(P,fc),{X:E,Y:I,Z:x}=this;let S=r.ZERO,R=r.ZERO,F=r.ZERO,M=r.mul(E,E),te=r.mul(I,I),X=r.mul(x,x),J=r.mul(E,I);return J=r.add(J,J),F=r.mul(E,x),F=r.add(F,F),S=r.mul(N,F),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(J,S),F=r.mul(_,F),X=r.mul(N,X),J=r.sub(M,X),J=r.mul(N,J),J=r.add(J,F),F=r.add(M,M),M=r.add(F,M),M=r.add(M,X),M=r.mul(M,J),R=r.add(R,M),X=r.mul(I,x),X=r.add(X,X),M=r.mul(X,J),S=r.sub(S,M),F=r.mul(X,te),F=r.add(F,F),F=r.add(F,F),new D(S,R,F)}add(N){C(N);const{X:P,Y:_,Z:E}=this,{X:I,Y:x,Z:S}=N;let R=r.ZERO,F=r.ZERO,M=r.ZERO;const te=i.a,X=r.mul(i.b,fc);let J=r.mul(P,I),de=r.mul(_,x),fe=r.mul(E,S),Ne=r.add(P,_),he=r.add(I,x);Ne=r.mul(Ne,he),he=r.add(J,de),Ne=r.sub(Ne,he),he=r.add(P,E);let xe=r.add(I,S);return he=r.mul(he,xe),xe=r.add(J,fe),he=r.sub(he,xe),xe=r.add(_,E),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),F=r.mul(R,M),de=r.add(J,J),de=r.add(de,J),fe=r.mul(te,fe),he=r.mul(X,he),de=r.add(de,fe),fe=r.sub(J,fe),fe=r.mul(te,fe),he=r.add(he,fe),J=r.mul(de,he),F=r.add(F,J),J=r.mul(xe,he),R=r.mul(Ne,R),R=r.sub(R,J),J=r.mul(Ne,de),M=r.mul(xe,M),M=r.add(M,J),new D(R,F,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 _,E;const I=x=>H.cached(this,x,S=>Pu(D,S));if(P){const{k1neg:x,k1:S,k2neg:R,k2:F}=O(N),{p:M,f:te}=I(S),{p:X,f:J}=I(F);E=te.add(J),_=L(P.beta,M,X,x,R)}else{const{p:x,f:S}=I(N);_=x,E=S}return Pu(D,[_,E])[0]}multiplyUnsafe(N){const{endo:P}=e,_=this;if(!s.isValid(N))throw new Error("invalid scalar: out of range");if(N===qr||_.is0())return D.ZERO;if(N===Qi)return _;if(H.hasCache(this))return this.multiply(N);if(P){const{k1neg:E,k1:I,k2neg:x,k2:S}=O(N),{p1:R,p2:F}=PD(D,_,I,S);return L(P.beta,R,F,E,x)}else return H.unsafe(_,N)}multiplyAndAddUnsafe(N,P,_){const E=this.multiplyUnsafe(P).add(N.multiplyUnsafe(_));return E.is0()?void 0:E}toAffine(N){return k(this,N)}isTorsionFree(){const{isTorsionFree:N}=e;return o===Qi?!0:N?N(D,this):H.unsafe(this,a).is0()}clearCofactor(){const{clearCofactor:N}=e;return o===Qi?this:N?N(D,this):this.multiplyUnsafe(o)}isSmallOrder(){return this.multiplyUnsafe(o).is0()}toBytes(N=!0){return sl(N,"isCompressed"),this.assertValidity(),f(D,this,N)}toHex(N=!0){return Xi(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 Pu(D,N)}static msm(N,P){return DD(D,s,N,P)}static fromPrivateKey(N){return D.BASE.multiply(zi(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 xD(D,e.endo?Math.ceil(W/2):W);return D.BASE.precompute(8),D}function Sb(t){return Uint8Array.of(t?2:3)}function Ib(t,e){return{secretKey:e.BYTES,publicKey:1+t.BYTES,publicKeyUncompressed:1+2*t.BYTES,publicKeyHasPrefix:!0,signature:2*e.BYTES}}function YD(t,e={}){const{Fn:n}=t,r=e.randomBytes||Ni,s=Object.assign(Ib(t.Fp,n),{seed:Eb(n.ORDER)});function i(h){try{return!!zi(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 TD(ei(h,s.seed,"seed"),n.ORDER)}function c(h,f=!0){return t.BASE.multiply(zi(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=zi(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=>zi(n,h),precompute(h=8,f=t.BASE){return f.precompute(h,!1)}},lengths:s})}function ZD(t,e,n={}){Tl(e),Ul(n,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"});const r=n.randomBytes||Ni,s=n.hmac||((P,..._)=>Pl(e,P,ys(..._))),{Fp:i,Fn:o}=t,{ORDER:a,BITS:c}=o,{keygen:l,getPublicKey:u,getSharedSecret:d,utils:h,lengths:f}=YD(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>>Qi;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,_){Vd(_);const E=f.signature,I=_==="compact"?E:_==="recovered"?E+1:void 0;return ei(P,I,`${_} signature`)}class b{constructor(_,E,I){this.r=v("r",_),this.s=v("s",E),I!=null&&(this.recovery=I),Object.freeze(this)}static fromBytes(_,E=g){A(_,E);let I;if(E==="der"){const{r:F,s:M}=Mr.toSig(ei(_));return new b(F,M)}E==="recovered"&&(I=_[0],E="compact",_=_.subarray(1));const x=o.BYTES,S=_.subarray(0,x),R=_.subarray(x,x*2);return new b(o.fromBytes(S),o.fromBytes(R),I)}static fromHex(_,E){return this.fromBytes(nl(_),E)}addRecoveryBit(_){return new b(this.r,this.s,_)}recoverPublicKey(_){const E=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*Ab<E&&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 F=i.toBytes(R),M=t.fromBytes(ys(Sb((S&1)===0),F)),te=o.inv(R),X=O(Ht("msgHash",_)),J=o.create(-X*te),de=o.create(x*te),fe=t.BASE.multiplyUnsafe(J).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(Vd(_),_==="der")return nl(Mr.hexFromSig(this));const E=o.toBytes(this.r),I=o.toBytes(this.s);if(_==="recovered"){if(this.recovery==null)throw new Error("recovery bit must be present");return ys(Uint8Array.of(this.recovery),E,I)}return ys(E,I)}toHex(_){return Xi(this.toBytes(_))}assertValidity(){}static fromCompact(_){return b.fromBytes(Ht("sig",_),"compact")}static fromDER(_){return b.fromBytes(Ht("sig",_),"der")}normalizeS(){return this.hasHighS()?new b(this.r,o.neg(this.s),this.recovery):this}toDERRawBytes(){return this.toBytes("der")}toDERHex(){return Xi(this.toBytes("der"))}toCompactRawBytes(){return this.toBytes("compact")}toCompactHex(){return Xi(this.toBytes("compact"))}}const C=n.bits2int||function(P){if(P.length>8192)throw new Error("input is too large");const _=kl(P),E=P.length*8-c;return E>0?_>>BigInt(E):_},O=n.bits2int_modN||function(P){return o.create(C(P))},k=ja(c);function $(P){return Hd("num < 2^"+c,P,qr,k),o.toBytes(P)}function L(P,_){return ei(P,void 0,"message"),_?ei(e(P),void 0,"prehashed message"):P}function D(P,_,E){if(["recovered","canonical"].some(de=>de in E))throw new Error("sign() legacy options not supported");const{lowS:I,prehash:x,extraEntropy:S}=$u(E,p);P=L(P,x);const R=O(P),F=zi(o,_),M=[$(F),$(R)];if(S!=null&&S!==!1){const de=S===!0?r(f.secretKey):S;M.push(Ht("extraEntropy",de))}const te=ys(...M),X=R;function J(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===qr)return;const nt=o.create(Ne*o.create(X+xe*F));if(nt===qr)return;let ht=(he.x===xe?0:2)|Number(he.y&Qi),bt=nt;return I&&y(nt)&&(bt=o.neg(nt),ht^=1),new b(xe,bt,ht)}return{seed:te,k2sig:J}}function W(P,_,E={}){P=Ht("message",P);const{seed:I,k2sig:x}=D(P,_,E);return bD(e.outputLen,o.BYTES,s)(I,x)}function H(P){let _;const E=typeof P=="string"||Nl(P),I=!E&&P!==null&&typeof P=="object"&&typeof P.r=="bigint"&&typeof P.s=="bigint";if(!E&&!I)throw new Error("invalid signature, expected Uint8Array, hex string or Signature instance");if(I)_=new b(P.r,P.s);else if(E){try{_=b.fromBytes(Ht("sig",P),"der")}catch(x){if(!(x instanceof Mr.Err))throw x}if(!_)try{_=b.fromBytes(Ht("sig",P),"compact")}catch{return!1}}return _||!1}function U(P,_,E,I={}){const{lowS:x,prehash:S,format:R}=$u(I,p);if(E=Ht("publicKey",E),_=L(Ht("message",_),S),"strict"in I)throw new Error("options.strict was renamed to lowS");const F=R===void 0?H(P):b.fromBytes(Ht("sig",P),R);if(F===!1)return!1;try{const M=t.fromBytes(E);if(x&&F.hasHighS())return!1;const{r:te,s:X}=F,J=O(_),de=o.inv(X),fe=o.create(J*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,_,E={}){const{prehash:I}=$u(E,p);return _=L(_,I),b.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:b,hash:e})}function JD(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=$s(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 XD(t){const{CURVE:e,curveOpts:n}=JD(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 QD(t,e){const n=e.Point;return Object.assign({},e,{ProjectivePoint:n,CURVE:Object.assign({},t,wb(n.Fn.ORDER,n.Fn.BITS))})}function ek(t){const{CURVE:e,curveOpts:n,hash:r,ecdsaOpts:s}=XD(t),i=GD(e,n),o=ZD(i,r,s);return QD(t,o)}function Kd(t,e){const n=r=>ek({...t,hash:r});return{...n(e),create:n}}const Nb={p:BigInt("0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff"),n:BigInt("0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551"),h:BigInt(1),a:BigInt("0xffffffff00000001000000000000000000000000fffffffffffffffffffffffc"),b:BigInt("0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b"),Gx:BigInt("0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296"),Gy:BigInt("0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5")},Tb={p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff"),n:BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973"),h:BigInt(1),a:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc"),b:BigInt("0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef"),Gx:BigInt("0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7"),Gy:BigInt("0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f")},Ob={p:BigInt("0x1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),n:BigInt("0x01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409"),h:BigInt(1),a:BigInt("0x1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc"),b:BigInt("0x0051953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f00"),Gx:BigInt("0x00c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66"),Gy:BigInt("0x011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650")},tk=$s(Nb.p),nk=$s(Tb.p),rk=$s(Ob.p),sk=Kd({...Nb,Fp:tk,lowS:!1},Rl);Kd({...Tb,Fp:nk,lowS:!1},cP),Kd({...Ob,Fp:rk,lowS:!1,allowedPrivateKeyLengths:[130,131,132]},aP);const ik=sk,Rb="base10",tn="base16",fn="base64pad",ws="base64url",Wa="utf8",xb=0,Kr=1,qa=2,ok=0,Bg=1,Vo=12,tf=32;function ak(){const t=zd.utils.randomPrivateKey(),e=zd.getPublicKey(t);return{privateKey:mn(t,tn),publicKey:mn(e,tn)}}function Gd(){const t=Ni(tf);return mn(t,tn)}function ck(t,e){const n=zd.getSharedSecret(jn(t,tn),jn(e,tn)),r=yD(Dl,n,void 0,void 0,tf);return mn(r,tn)}function Oc(t){const e=Dl(jn(t,tn));return mn(e,tn)}function Bn(t){const e=Dl(jn(t,Wa));return mn(e,tn)}function Pb(t){return jn(`${t}`,Rb)}function wi(t){return Number(mn(t,Rb))}function Db(t){return t.replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function kb(t){const e=t.replace(/-/g,"+").replace(/_/g,"/"),n=(4-e.length%4)%4;return e+"=".repeat(n)}function lk(t){const e=Pb(typeof t.type<"u"?t.type:xb);if(wi(e)===Kr&&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):Ni(Vo),s=jn(t.symKey,tn),i=ob(s,r).encrypt(jn(t.message,Wa)),o=Ub({type:e,sealed:i,iv:r,senderPublicKey:n});return t.encoding===ws?Db(o):o}function uk(t){const e=jn(t.symKey,tn),{sealed:n,iv:r}=Ca({encoded:t.encoded,encoding:t.encoding}),s=ob(e,r).decrypt(n);if(s===null)throw new Error("Failed to decrypt");return mn(s,Wa)}function dk(t,e){const n=Pb(qa),r=Ni(Vo),s=jn(t,Wa),i=Ub({type:n,sealed:s,iv:r});return e===ws?Db(i):i}function hk(t,e){const{sealed:n}=Ca({encoded:t,encoding:e});return mn(n,Wa)}function Ub(t){if(wi(t.type)===qa)return mn(zo([t.type,t.sealed]),fn);if(wi(t.type)===Kr){if(typeof t.senderPublicKey>"u")throw new Error("Missing sender public key for type 1 envelope");return mn(zo([t.type,t.senderPublicKey,t.iv,t.sealed]),fn)}return mn(zo([t.type,t.iv,t.sealed]),fn)}function Ca(t){const e=(t.encoding||fn)===ws?kb(t.encoded):t.encoded,n=jn(e,fn),r=n.slice(ok,Bg),s=Bg;if(wi(r)===Kr){const c=s+tf,l=c+Vo,u=n.slice(s,c),d=n.slice(c,l),h=n.slice(l);return{type:r,sealed:h,iv:d,senderPublicKey:u}}if(wi(r)===qa){const c=n.slice(s),l=Ni(Vo);return{type:r,sealed:c,iv:l}}const i=s+Vo,o=n.slice(s,i),a=n.slice(i);return{type:r,sealed:a,iv:o}}function fk(t,e){const n=Ca({encoded:t,encoding:e==null?void 0:e.encoding});return $b({type:wi(n.type),senderPublicKey:typeof n.senderPublicKey<"u"?mn(n.senderPublicKey,tn):void 0,receiverPublicKey:e==null?void 0:e.receiverPublicKey})}function $b(t){const e=(t==null?void 0:t.type)||xb;if(e===Kr){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 Lg(t){return t.type===Kr&&typeof t.senderPublicKey=="string"&&typeof t.receiverPublicKey=="string"}function Fg(t){return t.type===qa}function pk(t){const e=Be.from(t.x,"base64"),n=Be.from(t.y,"base64");return zo([new Uint8Array([4]),e,n])}function gk(t,e){const[n,r,s]=t.split("."),i=Be.from(kb(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=Dl(c),u=pk(e);if(!ik.verify(zo([o,a]),l,u))throw new Error("Invalid signature");return Id(t).payload}const mk="irn";function al(t){return(t==null?void 0:t.relay)||{protocol:mk}}function Vi(t){const e=Wx[t];if(typeof e>"u")throw new Error(`Relay Protocol not supported: ${t}`);return e}var yk=Object.defineProperty,wk=Object.defineProperties,bk=Object.getOwnPropertyDescriptors,Mg=Object.getOwnPropertySymbols,Ek=Object.prototype.hasOwnProperty,_k=Object.prototype.propertyIsEnumerable,jg=(t,e,n)=>e in t?yk(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Bu=(t,e)=>{for(var n in e||(e={}))Ek.call(e,n)&&jg(t,n,e[n]);if(Mg)for(var n of Mg(e))_k.call(e,n)&&jg(t,n,e[n]);return t},vk=(t,e)=>wk(t,bk(e));function Ck(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 Wg(t){if(!t.includes("wc:")){const l=Fw(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:Ak(s[0]),version:parseInt(s[1],10),symKey:a.symKey,relay:Ck(a),methods:c,expiryTimestamp:a.expiryTimestamp?parseInt(a.expiryTimestamp,10):void 0}}function Ak(t){return t.startsWith("//")?t.substring(2):t}function Sk(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 qg(t){const e=new URLSearchParams,n=Bu(Bu(vk(Bu({},Sk(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 pc(t,e,n){return`${t}?wc_ev=${n}&topic=${e}`}var Ik=Object.defineProperty,Nk=Object.defineProperties,Tk=Object.getOwnPropertyDescriptors,Hg=Object.getOwnPropertySymbols,Ok=Object.prototype.hasOwnProperty,Rk=Object.prototype.propertyIsEnumerable,zg=(t,e,n)=>e in t?Ik(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,xk=(t,e)=>{for(var n in e||(e={}))Ok.call(e,n)&&zg(t,n,e[n]);if(Hg)for(var n of Hg(e))Rk.call(e,n)&&zg(t,n,e[n]);return t},Pk=(t,e)=>Nk(t,Tk(e));function mo(t){const e=[];return t.forEach(n=>{const[r,s]=n.split(":");e.push(`${r}:${s}`)}),e}function Bb(t){const e=[];return Object.values(t).forEach(n=>{e.push(...mo(n.accounts))}),[...new Set(e)]}function Dk(t){const e=[];return Object.values(t).forEach(n=>{e.push(...n.methods)}),[...new Set(e)]}function kk(t){const e=[];return Object.values(t).forEach(n=>{e.push(...n.events)}),[...new Set(e)]}function Uk(t,e){const n=[];return Object.values(t).forEach(r=>{mo(r.accounts).includes(e)&&n.push(...r.methods)}),n}function $k(t,e){const n=[];return Object.values(t).forEach(r=>{mo(r.accounts).includes(e)&&n.push(...r.events)}),n}function $l(t){return t.includes(":")}function Ki(t){return $l(t)?t.split(":")[0]:t}function Vg(t){var e,n,r;const s={};if(!_r(t))return s;for(const[i,o]of Object.entries(t)){const a=$l(i)?[i]:o.chains,c=o.methods||[],l=o.events||[],u=Ki(i);s[u]=Pk(xk({},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 Bk(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 Kg(t,e){e=e.map(r=>r.replace("did:pkh:",""));const n=Bk(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 Lk(t,e){var n,r,s,i,o,a;const c=Vg(t),l=Vg(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 Fk={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}},Mk={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}=Mk[t];return{message:e?`${n} ${e}`:n,code:r}}function et(t,e){const{message:n,code:r}=Fk[t];return{message:e?`${n} ${e}`:n,code:r}}function Gr(t,e){return Array.isArray(t)?typeof e<"u"&&t.length?t.every(e):!0:!1}function _r(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 nf(t,e){return e&&yt(t)?!0:typeof t=="number"&&!isNaN(t)}function jk(t,e){const{requiredNamespaces:n}=e,r=Object.keys(t.namespaces),s=Object.keys(n);let i=!0;return Qs(s,r)?(r.forEach(o=>{const{accounts:a,methods:c,events:l}=t.namespaces[o],u=mo(a),d=n[o];(!Qs(kw(o,d),u)||!Qs(d.methods,c)||!Qs(d.events,l))&&(i=!1)}),i):!1}function cl(t){return dt(t,!1)&&t.includes(":")?t.split(":").length===2:!1}function Wk(t){if(dt(t,!1)&&t.includes(":")){const e=t.split(":");if(e.length===3){const n=e[0]+":"+e[1];return!!e[2]&&cl(n)}}return!1}function qk(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=Fw(t);return e(n)}}catch{}return!1}function Hk(t){var e;return(e=t==null?void 0:t.proposer)==null?void 0:e.publicKey}function zk(t){return t==null?void 0:t.topic}function Vk(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 Gg(t){let e=!0;return Gr(t)?t.length&&(e=t.every(n=>dt(n,!1))):e=!1,e}function Kk(t,e,n){let r=null;return Gr(e)&&e.length?e.forEach(s=>{r||cl(s)||(r=et("UNSUPPORTED_CHAINS",`${n}, chain ${s} should be a string and conform to "namespace:chainId" format`))}):cl(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 Gk(t,e,n){let r=null;return Object.entries(t).forEach(([s,i])=>{if(r)return;const o=Kk(s,kw(s,i),`${e} ${n}`);o&&(r=o)}),r}function Yk(t,e){let n=null;return Gr(t)?t.forEach(r=>{n||Wk(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 Zk(t,e){let n=null;return Object.values(t).forEach(r=>{if(n)return;const s=Yk(r==null?void 0:r.accounts,`${e} namespace`);s&&(n=s)}),n}function Jk(t,e){let n=null;return Gg(t==null?void 0:t.methods)?Gg(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 Lb(t,e){let n=null;return Object.values(t).forEach(r=>{if(n)return;const s=Jk(r,`${e}, namespace`);s&&(n=s)}),n}function Xk(t,e,n){let r=null;if(t&&_r(t)){const s=Lb(t,e);s&&(r=s);const i=Gk(t,e,n);i&&(r=i)}else r=Y("MISSING_OR_INVALID",`${e}, ${n} should be an object with data`);return r}function Lu(t,e){let n=null;if(t&&_r(t)){const r=Lb(t,e);r&&(n=r);const s=Zk(t,e);s&&(n=s)}else n=Y("MISSING_OR_INVALID",`${e}, namespaces should be an object with data`);return n}function Fb(t){return dt(t.protocol,!0)}function Qk(t,e){let n=!1;return e&&!t?n=!0:t&&Gr(t)&&t.length&&t.forEach(r=>{n=Fb(r)}),n}function e4(t){return typeof t=="number"}function ln(t){return typeof t<"u"&&typeof t!==null}function t4(t){return!(!t||typeof t!="object"||!t.code||!nf(t.code,!1)||!t.message||!dt(t.message,!1))}function n4(t){return!(yt(t)||!dt(t.method,!1))}function r4(t){return!(yt(t)||yt(t.result)&&yt(t.error)||!nf(t.id,!1)||!dt(t.jsonrpc,!1))}function s4(t){return!(yt(t)||!dt(t.name,!1))}function Yg(t,e){return!(!cl(e)||!Bb(t).includes(e))}function i4(t,e,n){return dt(n,!1)?Uk(t,e).includes(n):!1}function o4(t,e,n){return dt(n,!1)?$k(t,e).includes(n):!1}function Zg(t,e,n){let r=null;const s=a4(t),i=c4(e),o=Object.keys(s),a=Object.keys(i),c=Jg(Object.keys(t)),l=Jg(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()}`)),Qs(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=mo(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||(Qs(s[d].methods,i[d].methods)?Qs(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 a4(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 Jg(t){return[...new Set(t.map(e=>e.includes(":")?e.split(":")[0]:e))]}function c4(t){const e={};return Object.keys(t).forEach(n=>{if(n.includes(":"))e[n]=t[n];else{const r=mo(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 l4(t,e){return nf(t,!1)&&t<=e.max&&t>=e.min}function Xg(){const t=Fa();return new Promise(e=>{switch(t){case On.browser:e(u4());break;case On.reactNative:e(d4());break;case On.node:e(h4());break;default:e(!0)}})}function u4(){return go()&&(navigator==null?void 0:navigator.onLine)}async function d4(){if(Us()&&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 h4(){return!0}function f4(t){switch(Fa()){case On.browser:p4(t);break;case On.reactNative:g4(t);break}}function p4(t){!Us()&&go()&&(window.addEventListener("online",()=>t(!0)),window.addEventListener("offline",()=>t(!1)))}function g4(t){var e;Us()&&typeof we<"u"&&we!=null&&we.NetInfo&&((e=we)==null||e.NetInfo.addEventListener(n=>t(n==null?void 0:n.isConnected)))}function m4(){var t;return go()&&gi()?((t=gi())==null?void 0:t.visibilityState)==="visible":!0}const Fu={};class Oo{static get(e){return Fu[e]}static set(e,n){Fu[e]=n}static delete(e){delete Fu[e]}}function y4(t){const e=po.decode(t);if(e.length<33)throw new Error("Too short to contain a public key");return e.slice(1,33)}function w4({publicKey:t,signature:e,payload:n}){var r;const s=Yd(n.method),i=128|parseInt(((r=n.version)==null?void 0:r.toString())||"4"),o=_4(n.address),a=n.era==="00"?new Uint8Array([0]):Yd(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${E4(n.tip)}`),d=C4(u),h=new Uint8Array([0,...t,o,...e,...a,...l,...d,...s]),f=v4(h.length+1);return new Uint8Array([...f,i,...h])}function b4(t){const e=Yd(t),n=e3.blake2b(e,void 0,32);return"0x"+Be.from(n).toString("hex")}function Yd(t){return new Uint8Array(t.replace(/^0x/,"").match(/.{1,2}/g).map(e=>parseInt(e,16)))}function E4(t){return t.startsWith("0x")?t.slice(2):t}function _4(t){const e=po.decode(t)[0];return e===42?0:e===60?2:1}function v4(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 C4(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 A4(t){const e=Uint8Array.from(Be.from(t.signature,"hex")),n=y4(t.transaction.address),r=w4({publicKey:n,signature:e,payload:t.transaction}),s=Be.from(r).toString("hex");return b4(s)}function rf({logger:t,name:e}){const n=typeof t=="string"?wl({opts:{level:t,name:e}}).logger:t;return n.level=typeof t=="string"?t:t.level,n}const S4="PARSE_ERROR",I4="INVALID_REQUEST",N4="METHOD_NOT_FOUND",T4="INVALID_PARAMS",Mb="INTERNAL_ERROR",sf="SERVER_ERROR",O4=[-32700,-32600,-32601,-32602,-32603],Ko={[S4]:{code:-32700,message:"Parse error"},[I4]:{code:-32600,message:"Invalid Request"},[N4]:{code:-32601,message:"Method not found"},[T4]:{code:-32602,message:"Invalid params"},[Mb]:{code:-32603,message:"Internal error"},[sf]:{code:-32e3,message:"Server error"}},jb=sf;function R4(t){return O4.includes(t)}function Qg(t){return Object.keys(Ko).includes(t)?Ko[t]:Ko[jb]}function x4(t){const e=Object.values(Ko).find(n=>n.code===t);return e||Ko[jb]}function Wb(t,e,n){return t.message.includes("getaddrinfo ENOTFOUND")||t.message.includes("connect ECONNREFUSED")?new Error(`Unavailable ${n} RPC url at ${e}`):t}var qb={};/*! *****************************************************************************
|
|
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 Zd=function(t,e){return Zd=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])},Zd(t,e)};function P4(t,e){Zd(t,e);function n(){this.constructor=t}t.prototype=e===null?Object.create(e):(n.prototype=e.prototype,new n)}var Jd=function(){return Jd=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},Jd.apply(this,arguments)};function D4(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 k4(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 U4(t,e){return function(n,r){e(n,r,t)}}function $4(t,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(t,e)}function B4(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 L4(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 F4(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}function M4(t,e){for(var n in t)n!=="default"&&!e.hasOwnProperty(n)&&(e[n]=t[n])}function Xd(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 Hb(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 j4(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(Hb(arguments[e]));return t}function W4(){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 q4(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 H4(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 z4(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 Xd=="function"?Xd(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 V4(t,e){return Object.defineProperty?Object.defineProperty(t,"raw",{value:e}):t.raw=e,t}function K4(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 G4(t){return t&&t.__esModule?t:{default:t}}function Y4(t,e){if(!e.has(t))throw new TypeError("attempted to get private field on non-instance");return e.get(t)}function Z4(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 J4=Object.freeze(Object.defineProperty({__proto__:null,get __assign(){return Jd},__asyncDelegator:H4,__asyncGenerator:q4,__asyncValues:z4,__await:Aa,__awaiter:B4,__classPrivateFieldGet:Y4,__classPrivateFieldSet:Z4,__createBinding:F4,__decorate:k4,__exportStar:M4,__extends:P4,__generator:L4,__importDefault:G4,__importStar:K4,__makeTemplateObject:V4,__metadata:$4,__param:U4,__read:Hb,__rest:D4,__spread:j4,__spreadArrays:W4,__values:Xd},Symbol.toStringTag,{value:"Module"})),X4=_y(J4);var Pr={},em;function Q4(){if(em)return Pr;em=1,Object.defineProperty(Pr,"__esModule",{value:!0}),Pr.isBrowserCryptoAvailable=Pr.getSubtleCrypto=Pr.getBrowerCrypto=void 0;function t(){return(Oi===null||Oi===void 0?void 0:Oi.crypto)||(Oi===null||Oi===void 0?void 0:Oi.msCrypto)||{}}Pr.getBrowerCrypto=t;function e(){const r=t();return r.subtle||r.webkitSubtle}Pr.getSubtleCrypto=e;function n(){return!!t()&&!!e()}return Pr.isBrowserCryptoAvailable=n,Pr}var Dr={},tm;function e8(){if(tm)return Dr;tm=1,Object.defineProperty(Dr,"__esModule",{value:!0}),Dr.isBrowser=Dr.isNode=Dr.isReactNative=void 0;function t(){return typeof document>"u"&&typeof navigator<"u"&&navigator.product==="ReactNative"}Dr.isReactNative=t;function e(){return typeof Vt<"u"&&typeof Vt.versions<"u"&&typeof Vt.versions.node<"u"}Dr.isNode=e;function n(){return!t()&&!e()}return Dr.isBrowser=n,Dr}(function(t){Object.defineProperty(t,"__esModule",{value:!0});const e=X4;e.__exportStar(Q4(),t),e.__exportStar(e8(),t)})(qb);function hr(t=3){const e=Date.now()*Math.pow(10,t),n=Math.floor(Math.random()*Math.pow(10,t));return e+n}function Cs(t=6){return BigInt(hr(t))}function Jn(t,e,n){return{id:n||hr(),jsonrpc:"2.0",method:t,params:e}}function Sa(t,e){return{id:t,jsonrpc:"2.0",result:e}}function Bl(t,e,n){return{id:t,jsonrpc:"2.0",error:t8(e,n)}}function t8(t,e){return typeof t>"u"?Qg(Mb):(typeof t=="string"&&(t=Object.assign(Object.assign({},Qg(sf)),{message:t})),typeof e<"u"&&(t.data=e),R4(t.code)&&(t=x4(t.code)),t)}let n8=class{},r8=class extends n8{constructor(){super()}},s8=class extends r8{constructor(e){super()}};const i8="^https?:",o8="^wss?:";function a8(t){const e=t.match(new RegExp(/^\w+:/,"gi"));if(!(!e||!e.length))return e[0]}function zb(t,e){const n=a8(t);return typeof n>"u"?!1:new RegExp(e).test(n)}function nm(t){return zb(t,i8)}function rm(t){return zb(t,o8)}function c8(t){return new RegExp("wss?://localhost(:d{2,5})?").test(t)}function Vb(t){return typeof t=="object"&&"id"in t&&"jsonrpc"in t&&t.jsonrpc==="2.0"}function of(t){return Vb(t)&&"method"in t}function Ll(t){return Vb(t)&&(fr(t)||Ln(t))}function fr(t){return"result"in t}function Ln(t){return"error"in t}let af=class extends s8{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||Cs().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=>{Ln(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),Ll(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 Mu,sm;function l8(){return sm||(sm=1,Mu=function(){throw new Error("ws does not work in the browser. Browser clients must use the native WebSocket object")}),Mu}const u8=()=>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:l8(),d8=()=>typeof WebSocket<"u"||typeof we<"u"&&typeof we.WebSocket<"u"||typeof window<"u"&&typeof window.WebSocket<"u"||typeof self<"u"&&typeof self.WebSocket<"u",im=t=>t.split("?")[0],om=10,h8=u8();let f8=class{constructor(e){if(this.url=e,this.events=new sr.EventEmitter,this.registering=!1,!rm(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(pi(e))}catch(n){this.onError(e.id,n)}}register(e=this.url){if(!rm(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=qb.isReactNative()?void 0:{rejectUnauthorized:!c8(e)},i=new h8(e,[],s);d8()?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"?fi(e.data):e.data;this.events.emit("payload",n)}onError(e,n){const r=this.parseError(n),s=r.message||r.toString(),i=Bl(e,s);this.events.emit("payload",i)}parseError(e,n=this.url){return Wb(e,im(n),"WS")}resetMaxListeners(){this.events.getMaxListeners()>om&&this.events.setMaxListeners(om)}emitError(e){const n=this.parseError(new Error((e==null?void 0:e.message)||`WebSocket connection failed for host: ${im(this.url)}`));return this.events.emit("register_error",n),n}};const Kb="wc",Gb=2,ll="core",Ar=`${Kb}@2:${ll}:`,p8={name:ll,logger:"error"},g8={database:":memory:"},m8="crypto",am="client_ed25519_seed",y8=G.ONE_DAY,w8="keychain",b8="0.3",E8="messages",_8="0.3",v8=G.SIX_HOURS,C8="publisher",Yb="irn",A8="error",Zb="wss://relay.walletconnect.org",S8="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"},I8="_subscription",xn={payload:"payload",connect:"connect",disconnect:"disconnect",error:"error"},N8=.1,Qd="2.23.2",Je={link_mode:"link_mode",relay:"relay"},Rc={inbound:"inbound",outbound:"outbound"},T8="0.3",O8="WALLETCONNECT_CLIENT_ID",cm="WALLETCONNECT_LINK_MODE_APPS",vn={created:"subscription_created",deleted:"subscription_deleted",expired:"subscription_expired",disabled:"subscription_disabled",sync:"subscription_sync",resubscribed:"subscription_resubscribed"},R8="subscription",x8="0.3",P8="pairing",D8="0.3",Ro={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}}},Ys={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"},k8="history",U8="0.3",$8="expirer",Un={created:"expirer_created",deleted:"expirer_deleted",expired:"expirer_expired",sync:"expirer_sync"},B8="0.3",L8="verify-api",F8="https://verify.walletconnect.com",Jb="https://verify.walletconnect.org",Go=Jb,M8=`${Go}/v3`,j8=[F8,Jb],W8="echo",q8="https://echo.walletconnect.com",dr={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"},Ur={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"},js={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"},Ws={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"},xo={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"},H8=.1,z8="event-client",V8=86400,K8="https://pulse.walletconnect.org/batch";function G8(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 b=(A-v)*u+1>>>0,C=new Uint8Array(b);v!==A;){for(var O=p[v],k=0,$=b-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 L=b-y;L!==b&&C[L]===0;)L++;for(var D=c.repeat(g);L<b;++L)D+=t.charAt(C[L]);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,b=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*b[k]>>>0,b[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&&b[$]===0;)$++;for(var L=new Uint8Array(y+(A-$)),D=y;$!==A;)L[D++]=b[$++];return L}}}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 Y8=G8,Z8=Y8;const Xb=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")},J8=t=>new TextEncoder().encode(t),X8=t=>new TextDecoder().decode(t);class Q8{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 eU{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 Qb(this,e)}}class tU{constructor(e){this.decoders=e}or(e){return Qb(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 Qb=(t,e)=>new tU({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}});class nU{constructor(e,n,r,s){this.name=e,this.prefix=n,this.baseEncode=r,this.baseDecode=s,this.encoder=new Q8(e,n,r),this.decoder=new eU(e,n,s)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}}const Fl=({name:t,prefix:e,encode:n,decode:r})=>new nU(t,e,n,r),Ha=({prefix:t,name:e,alphabet:n})=>{const{encode:r,decode:s}=Z8(n,e);return Fl({prefix:t,name:e,encode:r,decode:i=>Xb(s(i))})},rU=(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},sU=(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})=>Fl({prefix:e,name:t,encode(s){return sU(s,r,n)},decode(s){return rU(s,r,n,t)}}),iU=Fl({prefix:"\0",name:"identity",encode:t=>X8(t),decode:t=>J8(t)});var oU=Object.freeze({__proto__:null,identity:iU});const aU=Ut({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var cU=Object.freeze({__proto__:null,base2:aU});const lU=Ut({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var uU=Object.freeze({__proto__:null,base8:lU});const dU=Ha({prefix:"9",name:"base10",alphabet:"0123456789"});var hU=Object.freeze({__proto__:null,base10:dU});const fU=Ut({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),pU=Ut({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var gU=Object.freeze({__proto__:null,base16:fU,base16upper:pU});const mU=Ut({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),yU=Ut({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),wU=Ut({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),bU=Ut({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),EU=Ut({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),_U=Ut({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),vU=Ut({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),CU=Ut({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),AU=Ut({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var SU=Object.freeze({__proto__:null,base32:mU,base32upper:yU,base32pad:wU,base32padupper:bU,base32hex:EU,base32hexupper:_U,base32hexpad:vU,base32hexpadupper:CU,base32z:AU});const IU=Ha({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),NU=Ha({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var TU=Object.freeze({__proto__:null,base36:IU,base36upper:NU});const OU=Ha({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),RU=Ha({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var xU=Object.freeze({__proto__:null,base58btc:OU,base58flickr:RU});const PU=Ut({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),DU=Ut({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),kU=Ut({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),UU=Ut({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var $U=Object.freeze({__proto__:null,base64:PU,base64pad:DU,base64url:kU,base64urlpad:UU});const eE=Array.from("🚀🪐☄🛰🌌🌑🌒🌓🌔🌕🌖🌗🌘🌍🌏🌎🐉☀💻🖥💾💿😂❤😍🤣😊🙏💕😭😘👍😅👏😁🔥🥰💔💖💙😢🤔😆🙄💪😉☺👌🤗💜😔😎😇🌹🤦🎉💞✌✨🤷😱😌🌸🙌😋💗💚😏💛🙂💓🤩😄😀🖤😃💯🙈👇🎶😒🤭❣😜💋👀😪😑💥🙋😞😩😡🤪👊🥳😥🤤👉💃😳✋😚😝😴🌟😬🙃🍀🌷😻😓⭐✅🥺🌈😈🤘💦✔😣🏃💐☹🎊💘😠☝😕🌺🎂🌻😐🖕💝🙊😹🗣💫💀👑🎵🤞😛🔴😤🌼😫⚽🤙☕🏆🤫👈😮🙆🍻🍃🐶💁😲🌿🧡🎁⚡🌞🎈❌✊👋😰🤨😶🤝🚶💰🍓💢🤟🙁🚨💨🤬✈🎀🍺🤓😙💟🌱😖👶🥴▶➡❓💎💸⬇😨🌚🦋😷🕺⚠🙅😟😵👎🤲🤠🤧📌🔵💅🧐🐾🍒😗🤑🌊🤯🐷☎💧😯💆👆🎤🙇🍑❄🌴💣🐸💌📍🥀🤢👅💡💩👐📸👻🤐🤮🎼🥵🚩🍎🍊👼💍📣🥂"),BU=eE.reduce((t,e,n)=>(t[n]=e,t),[]),LU=eE.reduce((t,e,n)=>(t[e.codePointAt(0)]=n,t),[]);function FU(t){return t.reduce((e,n)=>(e+=BU[n],e),"")}function MU(t){const e=[];for(const n of t){const r=LU[n.codePointAt(0)];if(r===void 0)throw new Error(`Non-base256emoji character: ${n}`);e.push(r)}return new Uint8Array(e)}const jU=Fl({prefix:"🚀",name:"base256emoji",encode:FU,decode:MU});var WU=Object.freeze({__proto__:null,base256emoji:jU}),qU=tE,lm=128,HU=127,zU=~HU,VU=Math.pow(2,31);function tE(t,e,n){e=e||[],n=n||0;for(var r=n;t>=VU;)e[n++]=t&255|lm,t/=128;for(;t&zU;)e[n++]=t&255|lm,t>>>=7;return e[n]=t|0,tE.bytes=n-r+1,e}var KU=eh,GU=128,um=127;function eh(t,r){var n=0,r=r||0,s=0,i=r,o,a=t.length;do{if(i>=a)throw eh.bytes=0,new RangeError("Could not decode varint");o=t[i++],n+=s<28?(o&um)<<s:(o&um)*Math.pow(2,s),s+=7}while(o>=GU);return eh.bytes=i-r,n}var YU=Math.pow(2,7),ZU=Math.pow(2,14),JU=Math.pow(2,21),XU=Math.pow(2,28),QU=Math.pow(2,35),e6=Math.pow(2,42),t6=Math.pow(2,49),n6=Math.pow(2,56),r6=Math.pow(2,63),s6=function(t){return t<YU?1:t<ZU?2:t<JU?3:t<XU?4:t<QU?5:t<e6?6:t<t6?7:t<n6?8:t<r6?9:10},i6={encode:qU,decode:KU,encodingLength:s6},nE=i6;const dm=(t,e,n=0)=>(nE.encode(t,e,n),e),hm=t=>nE.encodingLength(t),th=(t,e)=>{const n=e.byteLength,r=hm(t),s=r+hm(n),i=new Uint8Array(s+n);return dm(t,i,0),dm(n,i,r),i.set(e,s),new o6(t,n,e,i)};class o6{constructor(e,n,r,s){this.code=e,this.size=n,this.digest=r,this.bytes=s}}const rE=({name:t,code:e,encode:n})=>new a6(t,e,n);class a6{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?th(this.code,n):n.then(r=>th(this.code,r))}else throw Error("Unknown type, must be binary type")}}const sE=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),c6=rE({name:"sha2-256",code:18,encode:sE("SHA-256")}),l6=rE({name:"sha2-512",code:19,encode:sE("SHA-512")});var u6=Object.freeze({__proto__:null,sha256:c6,sha512:l6});const iE=0,d6="identity",oE=Xb,h6=t=>th(iE,oE(t)),f6={code:iE,name:d6,encode:oE,digest:h6};var p6=Object.freeze({__proto__:null,identity:f6});new TextEncoder,new TextDecoder;const fm={...oU,...cU,...uU,...hU,...gU,...SU,...TU,...xU,...$U,...WU};({...u6,...p6});function aE(t){return globalThis.Buffer!=null?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t}function g6(t=0){return globalThis.Buffer!=null&&globalThis.Buffer.allocUnsafe!=null?aE(globalThis.Buffer.allocUnsafe(t)):new Uint8Array(t)}function cE(t,e,n,r){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:n},decoder:{decode:r}}}const pm=cE("utf8","u",t=>"u"+new TextDecoder("utf8").decode(t),t=>new TextEncoder().encode(t.substring(1))),ju=cE("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=g6(t.length);for(let n=0;n<t.length;n++)e[n]=t.charCodeAt(n);return e}),m6={utf8:pm,"utf-8":pm,hex:fm.base16,latin1:ju,ascii:ju,binary:ju,...fm};function y6(t,e="utf8"){const n=m6[e];if(!n)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?aE(globalThis.Buffer.from(t,"utf-8")):n.decoder.decode(`${n.prefix}${t}`)}var w6=Object.defineProperty,b6=(t,e,n)=>e in t?w6(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,lr=(t,e,n)=>b6(t,typeof e!="symbol"?e+"":e,n);class E6{constructor(e,n){this.core=e,this.logger=n,lr(this,"keychain",new Map),lr(this,"name",w8),lr(this,"version",b8),lr(this,"initialized",!1),lr(this,"storagePrefix",Ar),lr(this,"init",async()=>{if(!this.initialized){const r=await this.getKeyChain();typeof r<"u"&&(this.keychain=r),this.initialized=!0}}),lr(this,"has",r=>(this.isInitialized(),this.keychain.has(r))),lr(this,"set",async(r,s)=>{this.isInitialized(),this.keychain.set(r,s),await this.persist()}),lr(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}),lr(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,$d(e))}async getKeyChain(){const e=await this.core.storage.getItem(this.storageKey);return typeof e<"u"?Bd(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 _6=Object.defineProperty,v6=(t,e,n)=>e in t?_6(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Et=(t,e,n)=>v6(t,typeof e!="symbol"?e+"":e,n);class C6{constructor(e,n,r){this.core=e,this.logger=n,Et(this,"name",m8),Et(this,"keychain"),Et(this,"randomSessionIdentifier",Gd()),Et(this,"initialized",!1),Et(this,"clientId"),Et(this,"init",async()=>{this.initialized||(await this.keychain.init(),this.initialized=!0)}),Et(this,"hasKeys",s=>(this.isInitialized(),this.keychain.has(s))),Et(this,"getClientId",async()=>{if(this.isInitialized(),this.clientId)return this.clientId;const s=await this.getClientSeed(),i=Np(s),o=S0(i.publicKey);return this.clientId=o,o}),Et(this,"generateKeyPair",()=>{this.isInitialized();const s=ak();return this.setPrivateKey(s.publicKey,s.privateKey)}),Et(this,"signJWT",async s=>{this.isInitialized();const i=await this.getClientSeed(),o=Np(i),a=this.randomSessionIdentifier;return await x2(a,s,y8,o)}),Et(this,"generateSharedKey",(s,i,o)=>{this.isInitialized();const a=this.getPrivateKey(s),c=ck(a,i);return this.setSymKey(c,o)}),Et(this,"setSymKey",async(s,i)=>{this.isInitialized();const o=i||Oc(s);return await this.keychain.set(o,s),o}),Et(this,"deleteKeyPair",async s=>{this.isInitialized(),await this.keychain.del(s)}),Et(this,"deleteSymKey",async s=>{this.isInitialized(),await this.keychain.del(s)}),Et(this,"encode",async(s,i,o)=>{this.isInitialized();const a=$b(o),c=pi(i);if(Fg(a))return dk(c,o==null?void 0:o.encoding);if(Lg(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 lk({type:u,symKey:l,message:c,senderPublicKey:d,encoding:o==null?void 0:o.encoding})}),Et(this,"decode",async(s,i,o)=>{this.isInitialized();const a=fk(i,o);if(Fg(a)){const c=hk(i,o==null?void 0:o.encoding);return fi(c)}if(Lg(a)){const c=a.receiverPublicKey,l=a.senderPublicKey;s=await this.generateSharedKey(c,l)}try{const c=this.getSymKey(s),l=uk({symKey:c,encoded:i,encoding:o==null?void 0:o.encoding});return fi(l)}catch(c){this.logger.error(`Failed to decode message from topic: '${s}', clientId: '${await this.getClientId()}'`),this.logger.error(c)}}),Et(this,"getPayloadType",(s,i=fn)=>{const o=Ca({encoded:s,encoding:i});return wi(o.type)}),Et(this,"getPayloadSenderPublicKey",(s,i=fn)=>{const o=Ca({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 E6(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(am)}catch{e=Gd(),await this.keychain.set(am,e)}return y6(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 A6=Object.defineProperty,S6=Object.defineProperties,I6=Object.getOwnPropertyDescriptors,gm=Object.getOwnPropertySymbols,N6=Object.prototype.hasOwnProperty,T6=Object.prototype.propertyIsEnumerable,nh=(t,e,n)=>e in t?A6(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,O6=(t,e)=>{for(var n in e||(e={}))N6.call(e,n)&&nh(t,n,e[n]);if(gm)for(var n of gm(e))T6.call(e,n)&&nh(t,n,e[n]);return t},R6=(t,e)=>S6(t,I6(e)),En=(t,e,n)=>nh(t,typeof e!="symbol"?e+"":e,n);class x6 extends TS{constructor(e,n){super(e,n),this.logger=e,this.core=n,En(this,"messages",new Map),En(this,"messagesWithoutClientAck",new Map),En(this,"name",E8),En(this,"version",_8),En(this,"initialized",!1),En(this,"storagePrefix",Ar),En(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}}}),En(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===Rc.inbound){const c=this.messagesWithoutClientAck.get(r)||{};this.messagesWithoutClientAck.set(r,R6(O6({},c),{[o]:s}))}return await this.persist(),o}),En(this,"get",r=>{this.isInitialized();let s=this.messages.get(r);return typeof s>"u"&&(s={}),s}),En(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}),En(this,"has",(r,s)=>{this.isInitialized();const i=this.get(r),o=Bn(s);return typeof i[o]<"u"}),En(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()}),En(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,$d(e))}async setRelayerMessagesWithoutClientAck(e){await this.core.storage.setItem(this.storageKeyWithoutClientAck,$d(e))}async getRelayerMessages(){const e=await this.core.storage.getItem(this.storageKey);return typeof e<"u"?Bd(e):void 0}async getRelayerMessagesWithoutClientAck(){const e=await this.core.storage.getItem(this.storageKeyWithoutClientAck);return typeof e<"u"?Bd(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 P6=Object.defineProperty,D6=Object.defineProperties,k6=Object.getOwnPropertyDescriptors,mm=Object.getOwnPropertySymbols,U6=Object.prototype.hasOwnProperty,$6=Object.prototype.propertyIsEnumerable,rh=(t,e,n)=>e in t?P6(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Li=(t,e)=>{for(var n in e||(e={}))U6.call(e,n)&&rh(t,n,e[n]);if(mm)for(var n of mm(e))$6.call(e,n)&&rh(t,n,e[n]);return t},ym=(t,e)=>D6(t,k6(e)),Pn=(t,e,n)=>rh(t,typeof e!="symbol"?e+"":e,n);class B6 extends OS{constructor(e,n){super(e,n),this.relayer=e,this.logger=n,Pn(this,"events",new sr.EventEmitter),Pn(this,"name",C8),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)||v8,h=(i==null?void 0:i.prompt)||!1,f=(i==null?void 0:i.tag)||0,p=(i==null?void 0:i.id)||Cs().toString(),g=Vi(al().protocol),y={id:p,method:(i==null?void 0:i.publishMethod)||g.publish,params:Li({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 b=>{const C=({id:k})=>{var $;(($=y.id)==null?void 0:$.toString())===k.toString()&&(this.removeRequestFromQueue(k),this.relayer.events.removeListener(ut.publish,C),b())};this.relayer.events.on(ut.publish,C);const O=yr(new Promise((k,$)=>{this.rpcPublish(y,i).then(k).catch(L=>{this.logger.warn(L,L==null?void 0:L.message),$(L)})}),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 yr(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||Cs().toString(),A=Vi(al().protocol),b=f||A.publish,C={id:v,method:b,params:Li(ym(Li({},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 L=({id:W})=>{var H;((H=C.id)==null?void 0:H.toString())===W.toString()&&(this.removeRequestFromQueue(W),this.relayer.events.removeListener(ut.publish,L),$())};this.relayer.events.on(ut.publish,L);const D=yr(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:${b} id:${v} tag:${g}`);try{await D,this.events.removeListener(ut.publish,L)}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 yr(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,Li(Li({},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,ym(Li({},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(Ai.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 L6=Object.defineProperty,F6=(t,e,n)=>e in t?L6(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Fi=(t,e,n)=>F6(t,typeof e!="symbol"?e+"":e,n);class M6{constructor(){Fi(this,"map",new Map),Fi(this,"set",(e,n)=>{const r=this.get(e);this.exists(e,n)||this.map.set(e,[...r,n])}),Fi(this,"get",e=>this.map.get(e)||[]),Fi(this,"exists",(e,n)=>this.get(e).includes(n)),Fi(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)}),Fi(this,"clear",()=>{this.map.clear()})}get topics(){return Array.from(this.map.keys())}}var j6=Object.defineProperty,W6=Object.defineProperties,q6=Object.getOwnPropertyDescriptors,wm=Object.getOwnPropertySymbols,H6=Object.prototype.hasOwnProperty,z6=Object.prototype.propertyIsEnumerable,sh=(t,e,n)=>e in t?j6(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Po=(t,e)=>{for(var n in e||(e={}))H6.call(e,n)&&sh(t,n,e[n]);if(wm)for(var n of wm(e))z6.call(e,n)&&sh(t,n,e[n]);return t},Wu=(t,e)=>W6(t,q6(e)),Ge=(t,e,n)=>sh(t,typeof e!="symbol"?e+"":e,n);class V6 extends PS{constructor(e,n){super(e,n),this.relayer=e,this.logger=n,Ge(this,"subscriptions",new Map),Ge(this,"topicMap",new M6),Ge(this,"events",new sr.EventEmitter),Ge(this,"name",R8),Ge(this,"version",x8),Ge(this,"pending",new Map),Ge(this,"cached",[]),Ge(this,"initialized",!1),Ge(this,"storagePrefix",Ar),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=al(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(Ai.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=al(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:Vi(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 yr(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 yr(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:Vi(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 yr(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:Vi(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 yr(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:Vi(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,Wu(Po({},n),{id:e})),this.pending.delete(n.topic)}onBatchSubscribe(e){e.length&&e.forEach(n=>{this.setSubscription(n.id,Po({},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,Po({},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,Wu(Po({},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=>Wu(Po({},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 I3(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 K6=Object.defineProperty,bm=Object.getOwnPropertySymbols,G6=Object.prototype.hasOwnProperty,Y6=Object.prototype.propertyIsEnumerable,ih=(t,e,n)=>e in t?K6(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Em=(t,e)=>{for(var n in e||(e={}))G6.call(e,n)&&ih(t,n,e[n]);if(bm)for(var n of bm(e))Y6.call(e,n)&&ih(t,n,e[n]);return t},Fe=(t,e,n)=>ih(t,typeof e!="symbol"?e+"":e,n);class Z6 extends RS{constructor(e){var n;super(e),Fe(this,"protocol","wc"),Fe(this,"version",2),Fe(this,"core"),Fe(this,"logger"),Fe(this,"events",new sr.EventEmitter),Fe(this,"provider"),Fe(this,"messages"),Fe(this,"subscriber"),Fe(this,"publisher"),Fe(this,"name",S8),Fe(this,"transportExplicitlyClosed",!1),Fe(this,"initialized",!1),Fe(this,"connectionAttemptInProgress",!1),Fe(this,"relayUrl"),Fe(this,"projectId"),Fe(this,"packageName"),Fe(this,"bundleId"),Fe(this,"hasExperiencedNetworkDisruption",!1),Fe(this,"pingTimeout"),Fe(this,"heartBeatTimeout",G.toMiliseconds(G.THIRTY_SECONDS+G.FIVE_SECONDS)),Fe(this,"reconnectTimeout"),Fe(this,"connectPromise"),Fe(this,"reconnectInProgress",!1),Fe(this,"requestsInFlight",[]),Fe(this,"connectTimeout",G.toMiliseconds(G.ONE_SECOND*15)),Fe(this,"request",async r=>{var s,i;this.logger.debug("Publishing Request Payload");const o=r.id||Cs().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}}),Fe(this,"resetPingTimeout",()=>{tl()&&(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))}),Fe(this,"onPayloadHandler",r=>{this.onProviderPayload(r),this.resetPingTimeout()}),Fe(this,"onConnectHandler",()=>{this.logger.warn({},"Relayer connected 🛜"),this.startPingTimeout(),this.events.emit(ut.connect)}),Fe(this,"onDisconnectHandler",()=>{this.logger.warn({},"Relayer disconnected 🛑"),this.requestsInFlight=[],this.onProviderDisconnect()}),Fe(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()}),Fe(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=rf({logger:(n=e.logger)!=null?n:A8,name:this.name}),this.messages=new x6(this.logger,e.core),this.subscriber=new V6(this,this.logger),this.publisher=new B6(this,this.logger),this.projectId=e==null?void 0:e.projectId,this.relayUrl=(e==null?void 0:e.relayUrl)||Zb,u3()?this.packageName=og():d3()&&(this.bundleId=og()),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},Rc.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,Em({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 yr(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 Xg())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,Rc.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 yr(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(tl())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 af(new f8(m3({sdkVersion:Qd,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}),of(e)){if(!e.method.endsWith(I8))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(Em({type:"event",event:n.id},a)),this.events.emit(n.id,a),await this.acknowledgePayload(e),await this.onMessageEvent(a)}else Ll(e)&&this.events.emit(ut.message_ack,e)}async onMessageEvent(e){await this.shouldIgnoreMessageEvent(e)||(await this.recordMessageEvent(e,Rc.inbound),this.events.emit(ut.message,e))}async acknowledgePayload(e){const n=Sa(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 Xg();f4(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(Ai.pulse,async()=>{if(!this.transportExplicitlyClosed&&!this.connected&&m4())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(N8)))))}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 J6(t,e){return t===e||Number.isNaN(t)&&Number.isNaN(e)}function _m(t){return Object.getOwnPropertySymbols(t).filter(e=>Object.prototype.propertyIsEnumerable.call(t,e))}function vm(t){return t==null?t===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(t)}const X6="[object RegExp]",Q6="[object String]",e5="[object Number]",t5="[object Boolean]",Cm="[object Arguments]",n5="[object Symbol]",r5="[object Date]",s5="[object Map]",i5="[object Set]",o5="[object Array]",a5="[object Function]",c5="[object ArrayBuffer]",qu="[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]",b5="[object BigInt64Array]",E5="[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 jo(t,e,void 0,void 0,void 0,void 0,n)}function jo(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 Yo(t,e,i,o)}return Yo(t,e,i,o)}function Yo(t,e,n,r){if(Object.is(t,e))return!0;let s=vm(t),i=vm(e);if(s===Cm&&(s=qu),i===Cm&&(i=qu),s!==i)return!1;switch(s){case Q6:return t.toString()===e.toString();case e5:{const c=t.valueOf(),l=e.valueOf();return J6(c,l)}case t5:case r5:case n5:return Object.is(t.valueOf(),e.valueOf());case X6: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)||!jo(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=>jo(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 b5:case E5: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(!jo(t[c],e[c],c,t,e,n,r))return!1;return!0}case c5:return t.byteLength!==e.byteLength?!1:Yo(new Uint8Array(t),new Uint8Array(e),n,r);case u5:return t.byteLength!==e.byteLength||t.byteOffset!==e.byteOffset?!1:Yo(new Uint8Array(t),new Uint8Array(e),n,r);case l5:return t.name===e.name&&t.message===e.message;case qu:{if(!(Yo(t.constructor,e.constructor,n,r)||Am(t)&&Am(e)))return!1;const c=[...Object.keys(t),..._m(t)],l=[...Object.keys(e),..._m(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(!jo(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,Sm=Object.getOwnPropertySymbols,I5=Object.prototype.hasOwnProperty,N5=Object.prototype.propertyIsEnumerable,oh=(t,e,n)=>e in t?S5(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Im=(t,e)=>{for(var n in e||(e={}))I5.call(e,n)&&oh(t,n,e[n]);if(Sm)for(var n of Sm(e))N5.call(e,n)&&oh(t,n,e[n]);return t},an=(t,e,n)=>oh(t,typeof e!="symbol"?e+"":e,n);class Ti extends xS{constructor(e,n,r,s=Ar,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",T8),an(this,"cached",[]),an(this,"initialized",!1),an(this,"getKey"),an(this,"storagePrefix",Ar),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):Hk(o)?this.map.set(o.id,o):zk(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=Im(Im({},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",P8),Pe(this,"version",D8),Pe(this,"events",new yh),Pe(this,"pairings"),Pe(this,"initialized",!1),Pe(this,"storagePrefix",Ar),Pe(this,"ignoredPayloadTypes",[Kr]),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=Gd(),i=await this.core.crypto.setSymKey(s),o=lt(G.FIVE_MINUTES),a={protocol:Yb},c={topic:i,expiry:o,relay:a,active:!1,methods:r==null?void 0:r.methods},l=qg({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(Ys.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:[dr.pairing_started]}});this.isValidPair(r,s);const{topic:i,symKey:o,relay:a,expiryTimestamp:c,methods:l}=Wg(r.uri);s.props.properties.topic=i,s.addTrace(dr.pairing_uri_validation_success),s.addTrace(dr.pairing_uri_not_expired);let u;if(this.pairings.keys.includes(i)){if(u=this.pairings.get(i),s.addTrace(dr.existing_pairing),u.active)throw s.setError(Ur.active_pairing_already_exists),new Error(`Pairing already exists: ${i}. Please try again with a new connection URI.`);s.addTrace(dr.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(dr.store_new_pairing),r.activatePairing&&await this.activate({topic:i}),this.events.emit(Ys.create,h),s.addTrace(dr.emit_inactive_pairing),this.core.crypto.keychain.has(i)||await this.core.crypto.setSymKey(o,i),s.addTrace(dr.subscribing_pairing_topic);try{await this.core.relayer.confirmOnlineStateOrThrow()}catch{s.setError(Ur.no_internet_connection)}try{await this.core.relayer.subscribe(i,{relay:a})}catch(f){throw s.setError(Ur.subscribe_pairing_topic_failure),f}return s.addTrace(dr.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}=Ks();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 qg({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=Ro[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=Sa(r,i),a=await this.core.crypto.encode(s,o),c=(await this.core.history.get(s,r)).request.method,l=Ro[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=Bl(r,i),a=await this.core.crypto.encode(s,o),c=(await this.core.history.get(s,r)).request.method,l=Ro[c]?Ro[c].res:Ro.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=>pr(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(Ys.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(()=>{fr(s)?this.events.emit(He("pairing_ping",i),{}):Ln(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(Ys.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(Ur.malformed_pairing_uri),new Error(a)}if(!qk(r.uri)){const{message:a}=Y("MISSING_OR_INVALID",`pair() uri: ${r.uri}`);throw s.setError(Ur.malformed_pairing_uri),new Error(a)}const o=Wg(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(Ur.malformed_pairing_uri),new Error(a)}if(!(o!=null&&o.symKey)){const{message:a}=Y("MISSING_OR_INVALID","pair() uri#symKey");throw s.setError(Ur.malformed_pairing_uri),new Error(a)}if(o!=null&&o.expiryTimestamp&&G.toMiliseconds(o==null?void 0:o.expiryTimestamp)<Date.now()){s.setError(Ur.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(pr(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 Ti(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);of(i)?(this.core.history.set(n,i),await this.onRelayEventRequest({topic:n,payload:i})):Ll(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}=Lw(e.target);n&&this.pairings.keys.includes(n)&&(await this.deletePairing(n,!0),this.events.emit(Ys.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 NS{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",k8),Tt(this,"version",U8),Tt(this,"cached",[]),Tt(this,"initialized",!1),Tt(this,"storagePrefix",Ar),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=Ln(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(Ai.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",$8),jt(this,"version",B8),jt(this,"cached",[]),jt(this,"initialized",!1),jt(this,"storagePrefix",Ar),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 y3(e);if(typeof e=="number")return w3(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(Ai.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,L5=(t,e,n)=>e in t?B5(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,ct=(t,e,n)=>L5(t,typeof e!="symbol"?e+"":e,n);class F5 extends kS{constructor(e,n,r){super(e,n,r),this.core=e,this.logger=n,this.store=r,ct(this,"name",L8),ct(this,"abortController"),ct(this,"isDevEnv"),ct(this,"verifyUrlV3",M8),ct(this,"storagePrefix",Ar),ct(this,"version",Gb),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(!go()||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=gi(),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(Id(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(Id(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||Go;return j8.includes(i)||(this.logger.info(`verify url: ${i}, not included in trusted list, assigning default: ${Go}`),i=Go),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=gk(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=Vh(),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,Nm=(t,e,n)=>j5(t,typeof e!="symbol"?e+"":e,n);class W5 extends US{constructor(e,n){super(e,n),this.projectId=e,this.logger=n,Nm(this,"context",W8),Nm(this,"registerDeviceToken",async r=>{const{clientId:s,token:i,notificationType:o,enableEncrypted:a=!1}=r,c=`${q8}/${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,Tm=Object.getOwnPropertySymbols,H5=Object.prototype.hasOwnProperty,z5=Object.prototype.propertyIsEnumerable,ah=(t,e,n)=>e in t?q5(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Do=(t,e)=>{for(var n in e||(e={}))H5.call(e,n)&&ah(t,n,e[n]);if(Tm)for(var n of Tm(e))z5.call(e,n)&&ah(t,n,e[n]);return t},_t=(t,e,n)=>ah(t,typeof e!="symbol"?e+"":e,n);class V5 extends $S{constructor(e,n,r=!0){super(e,n,r),this.core=e,this.logger=n,_t(this,"context",z8),_t(this,"storagePrefix",Ar),_t(this,"storageVersion",H8),_t(this,"events",new Map),_t(this,"shouldPersist",!1),_t(this,"init",async()=>{if(!Vh())try{const s={eventId:cg(),timestamp:Date.now(),domain:this.getAppDomain(),props:{event:"INIT",type:"",properties:{client_id:await this.core.crypto.getClientId(),user_agent:$w(this.core.relayer.protocol,this.core.relayer.version,Qd)}}};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=cg(),u=this.core.projectId||"",d=Date.now(),h=Do({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 Do(Do({},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(Ai.pulse,async()=>{this.shouldPersist&&await this.persist(),this.events.forEach(s=>{G.fromMiliseconds(Date.now())-G.fromMiliseconds(s.timestamp)>V8&&(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,Do(Do({},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(`${K8}?projectId=${this.core.projectId}&st=events_sdk&sv=js-${Qd}${i}`,{method:"POST",body:JSON.stringify(s)})}),_t(this,"getAppDomain",()=>Uw().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,Om=Object.getOwnPropertySymbols,G5=Object.prototype.hasOwnProperty,Y5=Object.prototype.propertyIsEnumerable,ch=(t,e,n)=>e in t?K5(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Rm=(t,e)=>{for(var n in e||(e={}))G5.call(e,n)&&ch(t,n,e[n]);if(Om)for(var n of Om(e))Y5.call(e,n)&&ch(t,n,e[n]);return t},Ye=(t,e,n)=>ch(t,typeof e!="symbol"?e+"":e,n);let Z5=class lE extends CS{constructor(e){var n;super(e),Ye(this,"protocol",Kb),Ye(this,"version",Gb),Ye(this,"name",ll),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)||Zb,this.customStoragePrefix=e!=null&&e.customStoragePrefix?`:${e.customStoragePrefix}`:"";const s=vh({level:typeof(e==null?void 0:e.logger)=="string"&&e.logger?e.logger:p8.logger,name:ll}),{logger:i,chunkLoggerController:o}=wl({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 LA,this.crypto=new C6(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 ES(Rm(Rm({},g8),e==null?void 0:e.storageOptions)),this.relayer=new Z6({core:this,logger:this.logger,relayUrl:this.relayUrl,projectId:this.projectId}),this.pairing=new R5(this,this.logger),this.verify=new F5(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 lE(e);await n.initialize();const r=await n.crypto.getClientId();return await n.storage.setItem(O8,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(cm,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(cm)||[],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,uE="wc",dE=2,hE="client",cf=`${uE}@${dE}:${hE}:`,Hu={name:hE,logger:"error",controller:!1,relayUrl:"wss://relay.walletconnect.org"},xm="WALLETCONNECT_DEEPLINK_CHOICE",X5="proposal",Pm="Proposal expired",Q5="session",Mi=G.SEVEN_DAYS,e$="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}}},zu={min:G.FIVE_MINUTES,max:G.SEVEN_DAYS},ur={idle:"IDLE",active:"ACTIVE"},t$={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:""}},n$="request",r$=["wc_sessionPropose","wc_sessionRequest","wc_authRequest","wc_sessionAuthenticate"],s$="wc",i$="auth",o$="authKeys",a$="pairingTopics",c$="requests",Ml=`${s$}@${1.5}:${i$}:`,xc=`${Ml}:PUB_KEY`;var l$=Object.defineProperty,u$=Object.defineProperties,d$=Object.getOwnPropertyDescriptors,Dm=Object.getOwnPropertySymbols,h$=Object.prototype.hasOwnProperty,f$=Object.prototype.propertyIsEnumerable,lh=(t,e,n)=>e in t?l$(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,We=(t,e)=>{for(var n in e||(e={}))h$.call(e,n)&&lh(t,n,e[n]);if(Dm)for(var n of Dm(e))f$.call(e,n)&&lh(t,n,e[n]);return t},Rt=(t,e)=>u$(t,d$(e)),q=(t,e,n)=>lh(t,typeof e!="symbol"?e+"":e,n);class p$ extends MS{constructor(e){super(e),q(this,"name",e$),q(this,"events",new yh),q(this,"initialized",!1),q(this,"requestQueue",{state:ur.idle,queue:[]}),q(this,"sessionRequestQueue",{state:ur.idle,queue:[]}),q(this,"emittedSessionRequests",new N3({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=Lk(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),b=We(Rt(We(We({requiredNamespaces:o,optionalNamespaces:a,relays:u??[{protocol:Yb}],proposer:{publicKey:v,metadata:this.client.metadata},expiryTimestamp:A,pairingTopic:p},c&&{sessionProperties:c}),l&&{scopedProperties:l}),{id:hr()}),(d||h)&&{requests:{authentication:d==null?void 0:d.map(D=>{const{domain:W,chains:H,nonce:U,uri:N,exp:P,nbf:_,type:E,statement:I,requestId:x,resources:S,signatureTypes:R}=D;return{domain:W,chains:H,nonce:U,type:E??"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",b.id),{reject:O,resolve:k,done:$}=Ks(f,Pm),L=({id:D})=>{D===b.id&&(this.client.events.off("proposal_expire",L),this.pendingSessions.delete(b.id),this.events.emit(C,{error:{message:Pm,code:0}}))};return this.client.events.on("proposal_expire",L),this.events.once(C,({error:D,session:W})=>{this.client.events.off("proposal_expire",L),D?O(D):W&&k(W)}),await this.setProposal(b.id,b),await this.sendProposeSession({proposal:b,publishOpts:{internal:{throwOnFailedPublish:!0},tvf:{correlationId:b.id}}}).catch(D=>{throw this.deleteProposal(b.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(js.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(js.proposal_not_found),W}try{await this.isValidApprove(n)}catch(W){throw this.client.logger.error("approve() -> isValidApprove() failed"),o.setError(js.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 b=(s=this.client.core.eventClient)==null?void 0:s.getEvent({topic:g});b||(b=(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(Mi)},u&&{sessionProperties:u}),d&&{scopedProperties:d}),h&&{sessionConfig:h}),{proposalRequestsResponses:f}),L=Je.relay;b.addTrace(Vn.subscribing_session_topic);try{await this.client.core.relayer.subscribe(k,{transportType:L,internal:{skipSubscribe:!0}})}catch(W){throw b.setError(js.subscribe_session_topic_failure),W}b.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),b.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))}}),b.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:b.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(Mi)),{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}=Ks(G.FIVE_MINUTES,"Session update request expired without receiving any acknowledgement"),c=hr(),l=Cs().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=hr(),{done:i,resolve:o,reject:a}=Ks(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(Mi)),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=hr(),l=Cs().toString(),{done:u,resolve:d,reject:h}=Ks(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 v3(this.client.core.storage,xm);await b3({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(js.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),fr(a)?await this.sendResult({id:c,topic:o,result:a.result,throwOnFailedPublish:!0,appLink:u}):Ln(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(js.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=hr(),i=Cs().toString(),{done:o,resolve:a,reject:c}=Ks(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=Cs().toString(),a=hr();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=>jk(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:b}=await this.client.core.pairing.create({methods:["wc_sessionAuthenticate"],transportType:o});this.client.logger.info({message:"Generated new pairing",pairing:{topic:A,uri:b}});const C=await this.client.core.crypto.generateKeyPair(),O=Oc(C);if(await Promise.all([this.client.auth.authKeys.set(xc,{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}=Vr(a[0]);let R=MP(S,"request",g);Tc(v)&&(R=WP(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)},L={eip155:{chains:a,methods:[...new Set(["personal_sign",...g])],events:["chainChanged","accountsChanged"]}},D={requiredNamespaces:{},optionalNamespaces:L,relays:[{protocol:"irn"}],pairingTopic:A,proposer:{publicKey:C,metadata:this.client.metadata},expiryTimestamp:lt(Ot.wc_sessionPropose.req.ttl),id:hr()},{done:W,resolve:H,reject:U}=Ks(k,"Request expired"),N=hr(),P=He("session_connect",D.id),_=He("session_request",N),E=async({error:S,session:R})=>{this.events.off(_,I),S?U(S):R&&H({session:R})},I=async S=>{var R,F,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,E),U(S.error.message))}await this.deleteProposal(D.id),this.events.off(P,E);const{cacaos:te,responder:X}=S.result,J=[],de=[];for(const he of te){await bg({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=Tc(xe.resources),ht=[Ld(xe.iss)],bt=rl(xe.iss);if(nt){const Gt=Eg(nt),Sr=_g(nt);J.push(...Gt),ht.push(...Sr)}for(const Gt of ht)de.push(`${Gt}:${bt}`)}const fe=await this.client.core.crypto.generateSharedKey(C,X.publicKey);let Ne;J.length>0&&(Ne={topic:fe,acknowledged:!0,self:{publicKey:C,metadata:this.client.metadata},peer:X,controller:X.publicKey,expiry:lt(Mi),requiredNamespaces:{},optionalNamespaces:{},relay:{protocol:"irn"},pairingTopic:A,namespaces:Kg([...new Set(J)],[...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&&(F=X.metadata.redirect)!=null&&F.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,E),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:qa,encoding:ws});x=pc(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,E),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??b,response:W}}),q(this,"approveSessionAuthenticate",async n=>{const{id:r,auths:s}=n,i=this.client.core.eventClient.createEvent({properties:{topic:r.toString(),trace:[Ws.authenticated_session_approve_started]}});try{this.isInitialized()}catch(y){throw i.setError(xo.no_internet_connection),y}const o=this.getPendingAuthRequest(r);if(!o)throw i.setError(xo.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=Oc(c),d={type:Kr,receiverPublicKey:c,senderPublicKey:l},h=[],f=[];for(const y of s){if(!await bg({cacao:y,projectId:this.client.core.projectId})){i.setError(xo.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(Ws.cacaos_verified);const{p:v}=y,A=Tc(v.resources),b=[Ld(v.iss)],C=rl(v.iss);if(A){const O=Eg(A),k=_g(A);h.push(...O),b.push(...k)}for(const O of b)f.push(`${O}:${C}`)}const p=await this.client.core.crypto.generateSharedKey(l,c);i.addTrace(Ws.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(Mi),authentication:s,requiredNamespaces:{},optionalNamespaces:{},relay:{protocol:"irn"},pairingTopic:o.pairingTopic,namespaces:Kg([...new Set(h)],[...new Set(f)]),transportType:a},i.addTrace(Ws.subscribing_authenticated_session_topic);try{await this.client.core.relayer.subscribe(p,{transportType:a})}catch(y){throw i.setError(xo.subscribe_authenticated_session_topic_failure),y}i.addTrace(Ws.subscribe_authenticated_session_topic_success),await this.client.session.set(p,g),i.addTrace(Ws.store_authenticated_session),await this.client.core.pairing.updateMetadata({topic:o.pairingTopic,metadata:o.requester.metadata})}i.addTrace(Ws.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(xo.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=Oc(o),l={type:Kr,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 tb(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(xm).catch(l=>this.client.logger.warn(l)),s===((r=this.sessionRequestQueue.queue[0])==null?void 0:r.topic)&&(this.sessionRequestQueue.state=ur.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(js.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=ur.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?ws: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(r$.includes(s)){const A=Bn(JSON.stringify(f)),b=Bn(p);y=await this.client.core.verify.register({id:b,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=pc(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=Sa(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=Sa(r,i);let u;const d=c&&typeof(we==null?void 0:we.Linking)<"u";try{const p=d?ws: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=pc(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=Bl(r,i);let u;const d=c&&typeof(we==null?void 0:we.Linking)<"u";try{const f=d?ws: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=pc(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;pr(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=>{pr(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===ur.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=ur.active;const n=this.requestQueue.queue.shift();if(n)try{await this.processRequest(n)}catch(r){this.client.logger.warn(r)}}this.requestQueue.state=ur.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(Ur.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(dr.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(fr(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(Ln(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;fr(r)?(await this.client.session.update(n,{acknowledged:!0}),this.events.emit(He("session_approve",s),{})):Ln(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=Oo.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{Oo.set(o,i),await this.client.session.update(n,{namespaces:s.namespaces}),await this.sendResult({id:i,topic:n,result:!0})}catch(c){throw Oo.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`);fr(r)?this.events.emit(He("session_update",s),{}):Ln(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(Mi)),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`);fr(r)?this.events.emit(He("session_extend",s),{}):Ln(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`);fr(r)?this.events.emit(He("session_ping",s),{}):Ln(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`);fr(r)?this.events.emit(He("session_request",s),{result:r.result}):Ln(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=Oo.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}),Oo.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}),fr(r)?this.events.emit(He("session_request",s),{result:r.result}):Ln(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:Kr,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=ur.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===ur.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=ur.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),!Qk(c,!0)){const{message:l}=Y("MISSING_OR_INVALID",`connect() relays: ${c}`);throw new Error(l)}if(s&&!yt(s)&&_r(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)&&_r(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=Xk(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=Lu(s,"approve()");if(l)throw new Error(l.message);const u=Zg(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),!t4(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(!Fb(r)){const{message:l}=Y("MISSING_OR_INVALID","onSessionSettleRequest() relay protocol should be a string");throw new Error(l)}const a=Vk(s,"onSessionSettleRequest()");if(a)throw new Error(a.message);const c=Lu(i,"onSessionSettleRequest()");if(c)throw new Error(c.message);if(pr(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=Lu(s,"update()");if(o)throw new Error(o.message);const a=Zg(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(!Yg(a,i)){const{message:c}=Y("MISSING_OR_INVALID",`request() chainId: ${i}`);throw new Error(c)}if(!n4(s)){const{message:c}=Y("MISSING_OR_INVALID",`request() ${JSON.stringify(s)}`);throw new Error(c)}if(!i4(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(!r4(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(!Yg(o,i)){const{message:a}=Y("MISSING_OR_INVALID",`emit() chainId: ${i}`);throw new Error(a)}if(!s4(s)){const{message:a}=Y("MISSING_OR_INVALID",`emit() event: ${JSON.stringify(s)}`);throw new Error(a)}if(!o4(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=>Vr(c).namespace))].length>1)throw new Error("Multi-namespace requests are not supported. Please request single namespace only.");const{namespace:a}=Vr(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||Go,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=ag(n,"topic")||"",s=decodeURIComponent(ag(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(Vh()||Us()&&(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=Bb(n.namespaces),s=Dk(n.namespaces),i=kk(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=t$[i];if(i==="sui_signTransaction")return[_P(r.transactionBytes)];if(i==="near_signTransaction")return[gg(r)];if(i==="near_signTransactions")return r.map(c=>gg(c));if(i==="xrpl_signTransactionFor"||i==="xrpl_signTransaction")return[(s=r.tx_json)==null?void 0:s.hash];if(i==="polkadot_signTransaction")return[A4({transaction:n.params.transactionPayload,signature:r.signature})];if(i==="algo_signTxn")return Gr(r)?r.map(c=>mg(c)):[mg(r)];if(i==="cosmos_signDirect")return[CP(r)];if(i==="wallet_sendCalls")return AP(r);if(typeof r=="string")return[r];const a=r[o.key];if(Gr(a))return i==="solana_signAllTransactions"?a.map(c=>EP(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(xc)?this.client.auth.authKeys.get(xc):{responseTopic:void 0,publicKey:void 0};try{const a=await this.client.core.crypto.decode(n,r,{receiverPublicKey:o,encoding:i===Je.link_mode?ws:fn});of(a)?(this.client.core.history.set(n,a),await this.onRelayEventRequest({topic:n,payload:a,attestation:s,transportType:i,encryptedId:Bn(r)})):Ll(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}=Lw(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(Ys.create,e=>this.onPairingCreated(e)),this.client.core.pairing.events.on(Ys.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(pr(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(pr(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(!e4(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(pr(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&&!l4(e,zu)){const{message:n}=Y("MISSING_OR_INVALID",`request() expiry: ${e}. Expiry must be a number (in seconds) between ${zu.min} and ${zu.max}`);throw new Error(n)}}}class g$ extends Ti{constructor(e,n){super(e,n,X5,cf),this.core=e,this.logger=n}}let m$=class extends Ti{constructor(e,n){super(e,n,Q5,cf),this.core=e,this.logger=n}};class y$ extends Ti{constructor(e,n){super(e,n,n$,cf,r=>r.id),this.core=e,this.logger=n}}class w$ extends Ti{constructor(e,n){super(e,n,o$,Ml,()=>xc),this.core=e,this.logger=n}}class b$ extends Ti{constructor(e,n){super(e,n,a$,Ml),this.core=e,this.logger=n}}class E$ extends Ti{constructor(e,n){super(e,n,c$,Ml,r=>r.id),this.core=e,this.logger=n}}var _$=Object.defineProperty,v$=(t,e,n)=>e in t?_$(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Vu=(t,e,n)=>v$(t,typeof e!="symbol"?e+"":e,n);class C${constructor(e,n){this.core=e,this.logger=n,Vu(this,"authKeys"),Vu(this,"pairingTopics"),Vu(this,"requests"),this.authKeys=new w$(this.core,this.logger),this.pairingTopics=new b$(this.core,this.logger),this.requests=new E$(this.core,this.logger)}async init(){await this.authKeys.init(),await this.pairingTopics.init(),await this.requests.init()}}var A$=Object.defineProperty,S$=(t,e,n)=>e in t?A$(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,De=(t,e,n)=>S$(t,typeof e!="symbol"?e+"":e,n);class lf extends FS{constructor(e){super(e),De(this,"protocol",uE),De(this,"version",dE),De(this,"name",Hu.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)||Hu.name,this.metadata=f3(e==null?void 0:e.metadata),this.signConfig=e==null?void 0:e.signConfig;const n=rf({logger:(e==null?void 0:e.logger)||Hu.logger,name:this.name});this.logger=n,this.core=(e==null?void 0:e.core)||new J5(e),this.session=new m$(this.core,this.logger),this.proposal=new g$(this.core,this.logger),this.pendingRequest=new y$(this.core,this.logger),this.engine=new p$(this),this.auth=new C$(this.core,this.logger)}static async init(e){const n=new lf(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 I$=lf;var N$=Object.defineProperty,T$=Object.defineProperties,O$=Object.getOwnPropertyDescriptors,km=Object.getOwnPropertySymbols,R$=Object.prototype.hasOwnProperty,x$=Object.prototype.propertyIsEnumerable,Um=(t,e,n)=>e in t?N$(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,$m=(t,e)=>{for(var n in e||(e={}))R$.call(e,n)&&Um(t,n,e[n]);if(km)for(var n of km(e))x$.call(e,n)&&Um(t,n,e[n]);return t},Bm=(t,e)=>T$(t,O$(e));const P$={Accept:"application/json","Content-Type":"application/json"},D$="POST",Lm={headers:P$,method:D$},Fm=10;let fE=class{constructor(e,n=!1){if(this.url=e,this.disableProviderPing=n,this.events=new sr.EventEmitter,this.isAvailable=!1,this.registering=!1,!nm(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=pi(e),r=await(await Sf(this.url,Bm($m({},Lm),{body:n}))).json();this.onPayload({data:r})}catch(n){this.onError(e.id,n)}}async register(e=this.url){if(!nm(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=pi({id:1,jsonrpc:"2.0",method:"test",params:[]});await Sf(e,Bm($m({},Lm),{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"?fi(e.data):e.data;this.events.emit("payload",n)}onError(e,n){const r=this.parseError(n),s=r.message||r.toString(),i=Bl(e,s);this.events.emit("payload",i)}parseError(e,n=this.url){return Wb(e,n,"HTTP")}resetMaxListeners(){this.events.getMaxListeners()>Fm&&this.events.setMaxListeners(Fm)}};function uf(t){return t==null||typeof t!="object"&&typeof t!="function"}function pE(t){return Object.getOwnPropertySymbols(t).filter(e=>Object.prototype.propertyIsEnumerable.call(t,e))}function gE(t){return t==null?t===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(t)}const k$="[object RegExp]",mE="[object String]",yE="[object Number]",wE="[object Boolean]",bE="[object Arguments]",U$="[object Symbol]",$$="[object Date]",B$="[object Map]",L$="[object Set]",F$="[object Array]",M$="[object ArrayBuffer]",j$="[object Object]",W$="[object DataView]",q$="[object Uint8Array]",H$="[object Uint8ClampedArray]",z$="[object Uint16Array]",V$="[object Uint32Array]",K$="[object Int8Array]",G$="[object Int16Array]",Y$="[object Int32Array]",Z$="[object Float32Array]",J$="[object Float64Array]";function df(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)}function X$(t,e){return Gi(t,void 0,t,new Map,e)}function Gi(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(uf(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]=Gi(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,Gi(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(Gi(a,void 0,n,r,s));return o}if(typeof Be<"u"&&Be.isBuffer(t))return t.subarray();if(df(t)){const o=new(Object.getPrototypeOf(t)).constructor(t.length);r.set(t,o);for(let a=0;a<t.length;a++)o[a]=Gi(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"&&Q$(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),...pE(e)];for(let o=0;o<i.length;o++){const a=i[o],c=Object.getOwnPropertyDescriptor(t,a);(c==null||c.writable)&&(t[a]=Gi(e[a],a,n,r,s))}}function Q$(t){switch(gE(t)){case bE:case F$:case M$:case W$:case wE:case $$:case Z$:case J$:case K$:case G$:case Y$:case B$:case yE:case j$:case k$:case L$:case mE:case U$:case q$:case H$:case z$:case V$:return!0;default:return!1}}function eB(t,e){return X$(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 yE:case mE:case wE:{const a=new t.constructor(t==null?void 0:t.valueOf());return Zs(a,t),a}case bE:{const a={};return Zs(a,t),a.length=t.length,a[Symbol.iterator]=t[Symbol.iterator],a}default:return}})}function Mm(t){return eB(t)}function jm(t){return t!==null&&typeof t=="object"&&gE(t)==="[object Arguments]"}function Wm(t){return typeof t=="object"&&t!==null}function tB(){}function nB(t){return df(t)}function rB(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 sB(t){if(uf(t))return t;if(Array.isArray(t)||df(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 iB(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=uh(s,o,r,new Map)}return s}function uh(t,e,n,r){if(uf(t)&&(t=Object(t)),e==null||typeof e!="object")return t;if(r.has(e))return sB(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),...pE(e)];for(let i=0;i<s.length;i++){const o=s[i];let a=e[o],c=t[o];if(jm(a)&&(a={...a}),jm(c)&&(c={...c}),typeof Be<"u"&&Be.isBuffer(a)&&(a=Mm(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)||Wm(c)&&Wm(a)?t[o]=uh(c,a,n,r):c==null&&rB(a)?t[o]=uh({},a,n,r):c==null&&nB(a)?t[o]=Mm(a):(c===void 0||a!==void 0)&&(t[o]=a)}return t}function oB(t,...e){return iB(t,...e,tB)}const qm="error",aB="wss://relay.walletconnect.org",cB="wc",EE="universal_provider",gc=`${cB}@2:${EE}:`,_E="https://rpc.walletconnect.org/v1/",vE="generic",lB=`${_E}bundler`,eo="call_status",uB=86400,hf={DEFAULT_CHAIN_CHANGED:"default_chain_changed"};var dB=Object.defineProperty,hB=Object.defineProperties,fB=Object.getOwnPropertyDescriptors,Hm=Object.getOwnPropertySymbols,pB=Object.prototype.hasOwnProperty,gB=Object.prototype.propertyIsEnumerable,zm=(t,e,n)=>e in t?dB(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,mc=(t,e)=>{for(var n in e||(e={}))pB.call(e,n)&&zm(t,n,e[n]);if(Hm)for(var n of Hm(e))gB.call(e,n)&&zm(t,n,e[n]);return t},mB=(t,e)=>hB(t,fB(e));function CE(t,e,n){var r;const s=Vr(t);return((r=e.rpcMap)==null?void 0:r[s.reference])||`${_E}?chainId=${s.namespace}:${s.reference}&projectId=${n}`}function yB(t){return t.includes(":")?t.split(":")[1]:t}function AE(t){return t.map(e=>`${e.split(":")[0]}:${e.split(":")[1]}`)}function wB(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 Vm(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 yc(t={},e={}){const n=Vm(Km(t)),r=Vm(Km(e));return oB(n,r)}function Km(t){var e,n,r,s,i;const o={};if(!_r(t))return o;for(const[a,c]of Object.entries(t)){const l=$l(a)?[a]:c.chains,u=c.methods||[],d=c.events||[],h=c.rpcMap||{},f=Ki(a);o[f]=mB(mc(mc({},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)}),(_r(h)||_r(((s=o[f])==null?void 0:s.rpcMap)||{}))&&(o[f].rpcMap=mc(mc({},h),(i=o[f])==null?void 0:i.rpcMap))}return o}function Gm(t){return t.includes(":")?t.split(":")[2]:t}function Ym(t){const e={};for(const[n,r]of Object.entries(t)){const s=r.methods||[],i=r.events||[],o=r.accounts||[],a=$l(n)?[n]:r.chains?r.chains:AE(r.accounts);e[n]={chains:a,methods:s,events:i,accounts:o}}return e}function Ku(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 bB(t){try{const e=JSON.parse(t);return typeof e=="object"&&e!==null&&!Array.isArray(e)}catch{return!1}}const SE={},to=t=>SE[t],Gu=(t,e)=>{SE[t]=e};var EB=Object.defineProperty,Zm=Object.getOwnPropertySymbols,_B=Object.prototype.hasOwnProperty,vB=Object.prototype.propertyIsEnumerable,Jm=(t,e,n)=>e in t?EB(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Xm=(t,e)=>{for(var n in e||(e={}))_B.call(e,n)&&Jm(t,n,e[n]);if(Zm)for(var n of Zm(e))vB.call(e,n)&&Jm(t,n,e[n]);return t};const Qm="eip155",CB=["atomic","flow-control","paymasterService","sessionKeys","auxiliaryFunds"],AB=t=>t&&t.startsWith("0x")?BigInt(t).toString(10):t,Yu=t=>t&&t.startsWith("0x")?t:`0x${BigInt(t).toString(16)}`,ey=t=>Object.keys(t).filter(e=>CB.includes(e)).reduce((e,n)=>(e[n]=SB(t[n]),e),{}),SB=t=>typeof t=="string"&&bB(t)?JSON.parse(t):t,IB=(t,e,n)=>{const{sessionProperties:r={},scopedProperties:s={}}=t,i={};if(!_r(s)&&!_r(r))return;const o=ey(r);for(const a of n){const c=AB(a);if(!c)continue;i[Yu(c)]=o;const l=s==null?void 0:s[`${Qm}:${c}`];if(l){const u=l==null?void 0:l[`${Qm}:${c}:${e}`];i[Yu(c)]=Xm(Xm({},i[Yu(c)]),ey(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 NB=Object.defineProperty,TB=(t,e,n)=>e in t?NB(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,OB=(t,e,n)=>TB(t,typeof e!="symbol"?e+"":e,n);let Zu;class ff{constructor(e){OB(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 Zu||(Zu=new ff(e)),Zu}}var RB=Object.defineProperty,xB=Object.defineProperties,PB=Object.getOwnPropertyDescriptors,ty=Object.getOwnPropertySymbols,DB=Object.prototype.hasOwnProperty,kB=Object.prototype.propertyIsEnumerable,ny=(t,e,n)=>e in t?RB(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,UB=(t,e)=>{for(var n in e||(e={}))DB.call(e,n)&&ny(t,n,e[n]);if(ty)for(var n of ty(e))kB.call(e,n)&&ny(t,n,e[n]);return t},$B=(t,e)=>xB(t,PB(e));async function BB(t,e){const n=Vr(t.result.capabilities.caip345.caip2),r=t.result.capabilities.caip345.transactionHashes,s=await Promise.allSettled(r.map(d=>LB(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 LB(t,e,n){return await n(parseInt(t)).request(Jn("eth_getTransactionReceipt",[e]))}async function FB({sendCalls:t,storage:e}){const n=await e.getItem(eo);await e.setItem(eo,$B(UB({},n),{[t.result.id]:{request:t.request,result:t.result,expiry:lt(uB)}}))}async function MB({resultId:t,storage:e}){const n=await e.getItem(eo);if(n){delete n[t],await e.setItem(eo,n);for(const r in n)pr(n[r].expiry)&&delete n[r];await e.setItem(eo,n)}}async function jB({resultId:t,storage:e}){const n=await e.getItem(eo),r=n==null?void 0:n[t];if(r&&!pr(r.expiry))return r;await MB({resultId:t,storage:e})}var WB=Object.defineProperty,qB=Object.defineProperties,HB=Object.getOwnPropertyDescriptors,ry=Object.getOwnPropertySymbols,zB=Object.prototype.hasOwnProperty,VB=Object.prototype.propertyIsEnumerable,dh=(t,e,n)=>e in t?WB(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Ju=(t,e)=>{for(var n in e||(e={}))zB.call(e,n)&&dh(t,n,e[n]);if(ry)for(var n of ry(e))VB.call(e,n)&&dh(t,n,e[n]);return t},Xu=(t,e)=>qB(t,HB(e)),qs=(t,e,n)=>dh(t,typeof e!="symbol"?e+"":e,n);class KB{constructor(e){qs(this,"name","eip155"),qs(this,"client"),qs(this,"chainId"),qs(this,"namespace"),qs(this,"httpProviders"),qs(this,"events"),qs(this,"storage"),this.namespace=e.namespace,this.events=to("events"),this.client=to("client"),this.httpProviders=this.createHttpProviders(),this.chainId=parseInt(this.getDefaultChain()),this.storage=ff.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(hf.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||CE(`${this.name}:${e}`,this.namespace,this.client.core.projectId);if(!r)throw new Error(`No RPC url provided for chainId: ${e}`);return new af(new fE(r,to("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(yB(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=Xu(Ju({},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=c.length>0?c.join(","):`0x${this.chainId.toString(16)}`,h=`${a}${d}`,f=u==null?void 0:u[h];if(f)return f;let p;try{p=IB(l,a,c)}catch(y){console.warn("Failed to extract capabilities from session",y)}if(p)return p;const g=await this.client.request(e);try{await this.client.session.update(e.topic,{sessionProperties:Xu(Ju({},l.sessionProperties||{}),{capabilities:Xu(Ju({},u||{}),{[h]:g})})})}catch(y){console.warn("Failed to update session with capabilities",y)}return g}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 jB({resultId:(s=e.request.params)==null?void 0:s[0],storage:this.storage});if(c)try{return await BB(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`${lB}?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 FB({sendCalls:{request:o,result:i},storage:this.storage}),i}}var GB=Object.defineProperty,YB=(t,e,n)=>e in t?GB(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,ji=(t,e,n)=>YB(t,typeof e!="symbol"?e+"":e,n);class ZB{constructor(e){ji(this,"name",vE),ji(this,"client"),ji(this,"httpProviders"),ji(this,"events"),ji(this,"namespace"),ji(this,"chainId"),this.namespace=e.namespace,this.events=to("events"),this.client=to("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(hf.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 Vr(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=Vr(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=Vr(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||CE(e,this.namespace,this.client.core.projectId);if(!r)throw new Error(`No RPC url provided for chainId: ${e}`);return new af(new fE(r,to("disableProviderPing")))}}var JB=Object.defineProperty,XB=Object.defineProperties,QB=Object.getOwnPropertyDescriptors,sy=Object.getOwnPropertySymbols,eL=Object.prototype.hasOwnProperty,tL=Object.prototype.propertyIsEnumerable,hh=(t,e,n)=>e in t?JB(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,ko=(t,e)=>{for(var n in e||(e={}))eL.call(e,n)&&hh(t,n,e[n]);if(sy)for(var n of sy(e))tL.call(e,n)&&hh(t,n,e[n]);return t},wc=(t,e)=>XB(t,QB(e)),_n=(t,e,n)=>hh(t,typeof e!="symbol"?e+"":e,n);let nL=class IE{constructor(e){_n(this,"client"),_n(this,"namespaces"),_n(this,"optionalNamespaces"),_n(this,"sessionProperties"),_n(this,"scopedProperties"),_n(this,"events",new yh),_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=rf({logger:(n=e.logger)!=null?n:qm,name:(r=this.providerOpts.name)!=null?r:EE}),this.disableProviderPing=(e==null?void 0:e.disableProviderPing)||!1}static async init(e){const n=new IE(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:ko({},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,Sa(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=Ym(this.session.namespaces);this.namespaces=yc(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=Ym(o.namespaces);return this.namespaces=yc(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(!Gr(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 I$.init({core:this.providerOpts.core,logger:this.providerOpts.logger||qm,relayUrl:this.providerOpts.relayUrl||aB,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=>Ki(n)))];Gu("client",this.client),Gu("events",this.events),Gu("disableProviderPing",this.disableProviderPing),e.forEach(n=>{if(!this.session)return;const r=wB(n,this.session);if((r==null?void 0:r.length)===0)return;const s=AE(r),i=yc(this.namespaces,this.optionalNamespaces),o=wc(ko({},i[n]),{accounts:r,chains:s});switch(n){case"eip155":this.rpcProviders[n]=new KB({namespace:o});break;default:this.rpcProviders[n]=new ZB({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&&Gr(o)&&this.events.emit("accountsChanged",o.map(Gm))}else if(i.name==="chainChanged"){const o=r.chainId,a=r.event.data,c=Ki(o),l=Ku(o)!==Ku(a)?`${c}:${Ku(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=wc(ko({},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",wc(ko({},et("USER_DISCONNECTED")),{data:e.topic})))}),this.on(hf.DEFAULT_CHAIN_CHANGED,e=>{this.onChainChanged(wc(ko({},e),{internal:!0}))})}getProvider(e){return this.rpcProviders[e]||this.rpcProviders[vE]}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=yc(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=>Ki(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=Ki(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(Gm);if(!Gr(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(`${gc}/${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(`${gc}/${e}${r}`)}async deleteFromStore(e){var n;const r=((n=this.session)==null?void 0:n.topic)||"";await this.client.core.storage.removeItem(`${gc}/${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(gc)&&await this.client.core.storage.removeItem(r)}catch(n){this.logger.warn(n,"Failed to cleanup storage")}}};const iy=2147483648,rL={convertEVMChainIdToCoinType(t){if(t>=iy)throw new Error("Invalid chainId");return(iy|t)>>>0}},Dn=Xe({suggestions:[],loading:!1}),sL={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=Zo.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=Zo.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=rL.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=Zo.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}},Zo=qn(sL);function fh(t){try{return new URL(t)}catch{return null}}function iL(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 oL(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 aL(t,e){if(e.includes("://")){const o=fh(e);return o?o.origin===t:!1}const{host:n,port:r}=iL(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=fh(t);return i?r!==void 0?n===i.hostname&&r===(i.port||void 0):n===i.hostname:!1}function cL(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=oL(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 lL={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"]},Ns={RPC_ERROR_CODE:{USER_REJECTED:5e3,USER_REJECTED_METHODS:5002},getMethodsByChainNamespace(t){return lL[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 Zo.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===Ns.RPC_ERROR_CODE.USER_REJECTED_METHODS,s=n&&e.code===Ns.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=fh(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(cL(s,t,i))return!0}else if(aL(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=Ns.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:b}=wt.parseCaipAddress(v);return{address:y,chainId:A,chainNamespace:b}}).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:[]}},uL=[T.CONNECTOR_ID.AUTH,T.CONNECTOR_ID.WALLET_CONNECT];class dL{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 Ns.isUserRejectedRequestError(n)?new Ty(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}=Z.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}=Z.getAccount(a);return{address:c}}),caipNetwork:i}))}}onAccountsChanged(e,n,r=!0){var s,i;if(e.length>0){const{address:o}=Z.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}=Z.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(uL.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 Hs=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(Hs&&await Hs,(await e.getSessions(`${n}:${r}`,s)).length)return;await Re.open({view:"SIWXSignMessage"})}catch(c){console.error("SIWXUtil:initializeIfEnabled",c),Ee.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"),mr.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=Z.getPlainAddress(w.getActiveCaipAddress()),n=Bo();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(),Ee.sendEvent({type:"track",event:"SIWX_AUTH_SUCCESS",properties:this.getSIWXEventProperties()})}catch(r){(!Re.state.open||pe.state.view==="ApproveTransaction")&&await Re.open({view:"SIWXSignMessage"}),mr.showError("Error signing message"),Ee.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,Z.getPlainAddress(w.getActiveCaipAddress())||""));s&&s.length>0?await w.switchActiveNetwork(r):await V.disconnect()}else await V.disconnect()}else Re.close();Re.close(),Ee.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,Z.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=Z.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=Bo();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(Hs)return Hs;const r=Mn.getSIWX();return r?(Hs=r.addSession({data:t,message:e,signature:n}).finally(()=>{Hs=null}),Hs):Promise.resolve()},async universalProviderAuthenticate({universalProvider:t,chains:e,methods:n}){var l,u,d;const r=Mn.getSIWX(),s=Bo(),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=Bo())==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)]});mr.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),Ee.sendEvent({type:"track",event:"SIWX_AUTH_SUCCESS",properties:Mn.getSIWXEventProperties()})}catch(f){throw console.error("SIWX:universalProviderAuth - failed to set sessions",f),Ee.sendEvent({type:"track",event:"SIWX_AUTH_ERROR",properties:Mn.getSIWXEventProperties(f)}),await t.disconnect().catch(console.error),f}finally{mr.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?Z.parseError(t):void 0}},async clearSessions(){const t=this.getSIWX();t&&await t.setSessions([])}};class hL{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=Ns.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:fL})}}const fL=["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}),pL={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(pL),gL={eip155:{native:{assetNamespace:"slip44",assetReference:"60"},defaultTokenNamespace:"erc20"},solana:{native:{assetNamespace:"slip44",assetReference:"501"},defaultTokenNamespace:"token"}};class mL extends Error{}function yL(){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 pf(t,e){const n=yL(),{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 mL(o.error.message);return o}async function f9(t){return(await pf("reown_getExchanges",t)).result}async function p9(t){return(await pf("reown_getExchangePayUrl",t)).result}async function g9(t){return(await pf("reown_getExchangeBuyStatus",t)).result}function m9(t,e){const{chainNamespace:n,chainId:r}=wt.parseCaipNetworkId(t),s=gL[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 wL={network:"eip155:1",asset:"native",metadata:{name:"Ethereum",symbol:"ETH",decimals:18}},bL={network:"eip155:8453",asset:"native",metadata:{name:"Ethereum",symbol:"ETH",decimals:18}},NE={network:"eip155:8453",asset:"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",metadata:{name:"USD Coin",symbol:"USDC",decimals:6}},EL={network:"eip155:84532",asset:"0x036CbD53842c5426634e7929541eC2318f3dCF7e",metadata:{name:"USD Coin",symbol:"USDC",decimals:6}},_L={network:"eip155:84532",asset:"native",metadata:{name:"Ethereum",symbol:"ETH",decimals:18}},vL={network:"eip155:1",asset:"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",metadata:{name:"USD Coin",symbol:"USDC",decimals:6}},CL={network:"eip155:42161",asset:"0xaf88d065e77c8cC2239327C5EDb3A432268e5831",metadata:{name:"USD Coin",symbol:"USDC",decimals:6}},AL={network:"eip155:137",asset:"0x2791bca1f2de4661ed88a30c99a7a9449aa84174",metadata:{name:"USD Coin",symbol:"USDC",decimals:6}},SL={network:"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",asset:"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",metadata:{name:"USD Coin",symbol:"USDC",decimals:6}},IL={network:"eip155:1",asset:"0xdAC17F958D2ee523a2206206994597C13D831ec7",metadata:{name:"Tether USD",symbol:"USDT",decimals:6}},NL={network:"eip155:10",asset:"0x94b008aA00579c1307B0EF2c499aD98a8ce58e58",metadata:{name:"Tether USD",symbol:"USDT",decimals:6}},TL={network:"eip155:42161",asset:"0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9",metadata:{name:"Tether USD",symbol:"USDT",decimals:6}},OL={network:"eip155:137",asset:"0xc2132d05d31c914a87c6611c10748aeb04b58e8f",metadata:{name:"Tether USD",symbol:"USDT",decimals:6}},RL={network:"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",asset:"Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB",metadata:{name:"Tether USD",symbol:"USDT",decimals:6}},xL={network:"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",asset:"native",metadata:{name:"Solana",symbol:"SOL",decimals:9}},PL={ethereumETH:wL,baseETH:bL,baseUSDC:NE,baseSepoliaETH:_L,ethereumUSDC:vL,arbitrumUSDC:CL,polygonUSDC:AL,solanaUSDC:SL,ethereumUSDT:IL,optimismUSDT:NL,arbitrumUSDT:TL,polygonUSDT:OL,solanaUSDT:RL,solanaSOL:xL};function y9(t){return Object.values(PL).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`}},DL={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]},Ia={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=>Ia.isLowerCaseMatch(s.connectorId,t))}}},kL=new AbortController,qt={EmbeddedWalletAbortController:kL,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 ${$o()?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"}}},TE={TOKEN_ADDRESSES_BY_SYMBOL:{USDC:{8453:NE.asset,84532:EL.asset}},getTokenSymbolByAddress(t){if(!t)return;const[e]=Object.entries(TE.TOKEN_ADDRESSES_BY_SYMBOL).find(([n,r])=>Object.values(r).includes(t))??[];return e}},UL={createLogger(t,e="error"){const n=vh({level:e}),{logger:r}=wl({opts:n});return r.error=(...s)=>{for(const i of s)if(i instanceof Error){t(i,...s);return}t(void 0,...s)},r}},$L="rpc.walletconnect.org";function oy(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 Qu=["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"],qi={extendRpcUrlWithProjectId(t,e){let n=!1;try{n=new URL(t).host===$L}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 Qu.includes(e)?oy(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(b=>b.url))||[],u=[...l,...a?[a]:[]],d=[...l];return c&&!d.includes(c)&&d.push(c),{...t,chainNamespace:s,caipNetworkId:i,assets:{imageId:DL.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=>qi.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))}),Qu.includes(t.caipNetworkId)&&r.push(zt.http(oy(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(Qu.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 xC({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 Pc=globalThis,gf=Pc.ShadowRoot&&(Pc.ShadyCSS===void 0||Pc.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,mf=Symbol(),ay=new WeakMap;let OE=class{constructor(e,n,r){if(this._$cssResult$=!0,r!==mf)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(gf&&e===void 0){const r=n!==void 0&&n.length===1;r&&(e=ay.get(n)),e===void 0&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),r&&ay.set(n,e))}return e}toString(){return this.cssText}};const Zn=t=>new OE(typeof t=="string"?t:t+"",void 0,mf),bs=(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 OE(n,t,mf)},BL=(t,e)=>{if(gf)t.adoptedStyleSheets=e.map(n=>n instanceof CSSStyleSheet?n:n.styleSheet);else for(const n of e){const r=document.createElement("style"),s=Pc.litNonce;s!==void 0&&r.setAttribute("nonce",s),r.textContent=n.cssText,t.appendChild(r)}},cy=gf?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:LL,defineProperty:FL,getOwnPropertyDescriptor:ML,getOwnPropertyNames:jL,getOwnPropertySymbols:WL,getPrototypeOf:qL}=Object,Ts=globalThis,ly=Ts.trustedTypes,HL=ly?ly.emptyScript:"",ed=Ts.reactiveElementPolyfillSupport,Xo=(t,e)=>t,ph={toAttribute(t,e){switch(e){case Boolean:t=t?HL: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}},RE=(t,e)=>!LL(t,e),uy={attribute:!0,type:String,converter:ph,reflect:!1,useDefault:!1,hasChanged:RE};Symbol.metadata??(Symbol.metadata=Symbol("metadata")),Ts.litPropertyMetadata??(Ts.litPropertyMetadata=new WeakMap);let Hi=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=uy){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&&FL(this.prototype,e,s)}}static getPropertyDescriptor(e,n,r){const{get:s,set:i}=ML(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)??uy}static _$Ei(){if(this.hasOwnProperty(Xo("elementProperties")))return;const e=qL(this);e.finalize(),e.l!==void 0&&(this.l=[...e.l]),this.elementProperties=new Map(e.elementProperties)}static finalize(){if(this.hasOwnProperty(Xo("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(Xo("properties"))){const n=this.properties,r=[...jL(n),...WL(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(cy(s))}else e!==void 0&&n.push(cy(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 BL(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:ph).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:ph;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??RE)(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){}};Hi.elementStyles=[],Hi.shadowRootOptions={mode:"open"},Hi[Xo("elementProperties")]=new Map,Hi[Xo("finalized")]=new Map,ed==null||ed({ReactiveElement:Hi}),(Ts.reactiveElementVersions??(Ts.reactiveElementVersions=[])).push("2.1.2");/**
|
|
72
|
+
* @license
|
|
73
|
+
* Copyright 2017 Google LLC
|
|
74
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
75
|
+
*/const Qo=globalThis,dy=t=>t,ul=Qo.trustedTypes,hy=ul?ul.createPolicy("lit-html",{createHTML:t=>t}):void 0,xE="$lit$",Es=`lit$${Math.random().toFixed(9).slice(2)}$`,PE="?"+Es,zL=`<${PE}>`,bi=document,Na=()=>bi.createComment(""),Ta=t=>t===null||typeof t!="object"&&typeof t!="function",yf=Array.isArray,VL=t=>yf(t)||typeof(t==null?void 0:t[Symbol.iterator])=="function",td=`[
|
|
76
|
+
\f\r]`,Uo=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,fy=/-->/g,py=/>/g,zs=RegExp(`>|${td}(?:([^\\s"'>=/]+)(${td}*=${td}*(?:[^
|
|
77
|
+
\f\r"'\`<>=]|("|')|))|$)`,"g"),gy=/'/g,my=/"/g,DE=/^(?:script|style|textarea|title)$/i,kE=t=>(e,...n)=>({_$litType$:t,strings:e,values:n}),E9=kE(1),_9=kE(2),lo=Symbol.for("lit-noChange"),At=Symbol.for("lit-nothing"),yy=new WeakMap,ri=bi.createTreeWalker(bi,129);function UE(t,e){if(!yf(t)||!t.hasOwnProperty("raw"))throw Error("invalid template strings array");return hy!==void 0?hy.createHTML(e):e}const KL=(t,e)=>{const n=t.length-1,r=[];let s,i=e===2?"<svg>":e===3?"<math>":"",o=Uo;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===Uo?u[1]==="!--"?o=fy:u[1]!==void 0?o=py:u[2]!==void 0?(DE.test(u[2])&&(s=RegExp("</"+u[2],"g")),o=zs):u[3]!==void 0&&(o=zs):o===zs?u[0]===">"?(o=s??Uo,d=-1):u[1]===void 0?d=-2:(d=o.lastIndex-u[2].length,l=u[1],o=u[3]===void 0?zs:u[3]==='"'?my:gy):o===my||o===gy?o=zs:o===fy||o===py?o=Uo:(o=zs,s=void 0);const f=o===zs&&t[a+1].startsWith("/>")?" ":"";i+=o===Uo?c+zL:d>=0?(r.push(l),c.slice(0,d)+xE+c.slice(d)+Es+f):c+Es+(d===-2?a:f)}return[UE(t,i+(t[n]||"<?>")+(e===2?"</svg>":e===3?"</math>":"")),r]};class Oa{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]=KL(e,n);if(this.el=Oa.createElement(l,r),ri.currentNode=this.el.content,n===2||n===3){const d=this.el.content.firstChild;d.replaceWith(...d.childNodes)}for(;(s=ri.nextNode())!==null&&c.length<a;){if(s.nodeType===1){if(s.hasAttributes())for(const d of s.getAttributeNames())if(d.endsWith(xE)){const h=u[o++],f=s.getAttribute(d).split(Es),p=/([.?@])?(.*)/.exec(h);c.push({type:1,index:i,name:p[2],strings:f,ctor:p[1]==="."?YL:p[1]==="?"?ZL:p[1]==="@"?JL:jl}),s.removeAttribute(d)}else d.startsWith(Es)&&(c.push({type:6,index:i}),s.removeAttribute(d));if(DE.test(s.tagName)){const d=s.textContent.split(Es),h=d.length-1;if(h>0){s.textContent=ul?ul.emptyScript:"";for(let f=0;f<h;f++)s.append(d[f],Na()),ri.nextNode(),c.push({type:2,index:++i});s.append(d[h],Na())}}}else if(s.nodeType===8)if(s.data===PE)c.push({type:2,index:i});else{let d=-1;for(;(d=s.data.indexOf(Es,d+1))!==-1;)c.push({type:7,index:i}),d+=Es.length-1}i++}}static createElement(e,n){const r=bi.createElement("template");return r.innerHTML=e,r}}function uo(t,e,n=t,r){var o,a;if(e===lo)return e;let s=r!==void 0?(o=n._$Co)==null?void 0:o[r]:n._$Cl;const i=Ta(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=uo(t,s._$AS(t,e.values),s,r)),e}class GL{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)??bi).importNode(n,!0);ri.currentNode=s;let i=ri.nextNode(),o=0,a=0,c=r[0];for(;c!==void 0;){if(o===c.index){let l;c.type===2?l=new za(i,i.nextSibling,this,e):c.type===1?l=new c.ctor(i,c.name,c.strings,this,e):c.type===6&&(l=new XL(i,this,e)),this._$AV.push(l),c=r[++a]}o!==(c==null?void 0:c.index)&&(i=ri.nextNode(),o++)}return ri.currentNode=bi,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 za{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=uo(this,e,n),Ta(e)?e===At||e==null||e===""?(this._$AH!==At&&this._$AR(),this._$AH=At):e!==this._$AH&&e!==lo&&this._(e):e._$litType$!==void 0?this.$(e):e.nodeType!==void 0?this.T(e):VL(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&&Ta(this._$AH)?this._$AA.nextSibling.data=e:this.T(bi.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=Oa.createElement(UE(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 GL(s,this),a=o.u(this.options);o.p(n),this.T(a),this._$AH=o}}_$AC(e){let n=yy.get(e.strings);return n===void 0&&yy.set(e.strings,n=new Oa(e)),n}k(e){yf(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 za(this.O(Na()),this.O(Na()),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=dy(e).nextSibling;dy(e).remove(),e=s}}setConnected(e){var n;this._$AM===void 0&&(this._$Cv=e,(n=this._$AP)==null||n.call(this,e))}}class jl{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=uo(this,e,n,0),o=!Ta(e)||e!==this._$AH&&e!==lo,o&&(this._$AH=e);else{const a=e;let c,l;for(e=i[0],c=0;c<i.length-1;c++)l=uo(this,a[r+c],n,c),l===lo&&(l=this._$AH[c]),o||(o=!Ta(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 YL extends jl{constructor(){super(...arguments),this.type=3}j(e){this.element[this.name]=e===At?void 0:e}}class ZL extends jl{constructor(){super(...arguments),this.type=4}j(e){this.element.toggleAttribute(this.name,!!e&&e!==At)}}class JL extends jl{constructor(e,n,r,s,i){super(e,n,r,s,i),this.type=5}_$AI(e,n=this){if((e=uo(this,e,n,0)??At)===lo)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 XL{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){uo(this,e)}}const nd=Qo.litHtmlPolyfillSupport;nd==null||nd(Oa,za),(Qo.litHtmlVersions??(Qo.litHtmlVersions=[])).push("3.3.2");const QL=(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 za(e.insertBefore(Na(),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 ai=globalThis;class Dc extends Hi{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=QL(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 lo}}var Ey;Dc._$litElement$=!0,Dc.finalized=!0,(Ey=ai.litElementHydrateSupport)==null||Ey.call(ai,{LitElement:Dc});const rd=ai.litElementPolyfillSupport;rd==null||rd({LitElement:Dc});(ai.litElementVersions??(ai.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)"},dl={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"},gh={colors:eF,fontFamily:rF,fontWeight:sF,textSize:iF,typography:oF,tokens:{core:dl.core,theme:dl.dark},borderRadius:tF,spacing:nF,durations:cF,easings:aF},wy="--apkt";function bc(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 Lr={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]=`${wy}-${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[`${wy}-${l}`]=u)}}return r(t,e),n},createRootStyles(t,e){const n={...gh,tokens:{...gh.tokens,theme:t==="light"?dl.light:dl.dark}},{cssVariables:r}=Lr.createCSSVariables(n),s=Lr.assignCSSVariables(r,n),i=Lr.generateW3MVariables(e),o=Lr.generateW3MOverrides(e),a=Lr.generateScaledVariables(e),c=Lr.generateBaseVariables(s),l={...s,...c,...i,...o,...a},u=Lr.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=bc(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=bc(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=bc(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=bc(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}=Lr.createCSSVariables(gh);function v9(t,...e){return bs(t,...e.map(n=>Zn(typeof n=="function"?n(lF):n)))}let Js,si,wr,Sn,hl;const $r={"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 fl(t,e="dark"){Js&&document.head.removeChild(Js),Js=document.createElement("style"),Js.textContent=Lr.createRootStyles(e,t),document.head.appendChild(Js)}function C9(t,e="dark"){if(hl=t,si=document.createElement("style"),wr=document.createElement("style"),Sn=document.createElement("style"),si.textContent=no(t).core.cssText,wr.textContent=no(t).dark.cssText,Sn.textContent=no(t).light.cssText,document.head.appendChild(si),document.head.appendChild(wr),document.head.appendChild(Sn),fl(t,e),mh(e),!((t==null?void 0:t["--apkt-font-family"])||(t==null?void 0:t["--w3m-font-family"])))for(const[r,s]of Object.entries($r)){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)}mh(e)}function mh(t="dark"){wr&&Sn&&Js&&(t==="light"?(fl(hl,t),wr.removeAttribute("media"),Sn.media="enabled"):(fl(hl,t),Sn.removeAttribute("media"),wr.media="enabled"))}function uF(t){var e,n,r;if(hl=t,si&&wr&&Sn){si.textContent=no(t).core.cssText,wr.textContent=no(t).dark.cssText,Sn.textContent=no(t).light.cssText;const s=(t==null?void 0:t["--apkt-font-family"])||(t==null?void 0:t["--w3m-font-family"]);s&&(si.textContent=(e=si.textContent)==null?void 0:e.replace("font-family: KHTeka",`font-family: ${s}`),wr.textContent=(n=wr.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(Js){const s=(Sn==null?void 0:Sn.media)==="enabled"?"light":"dark";fl(t,s)}}function no(t){const e=!!(t!=null&&t["--apkt-font-family"]||t!=null&&t["--w3m-font-family"]);return{core:bs`
|
|
86
|
+
${e?bs``:bs`
|
|
87
|
+
@font-face {
|
|
88
|
+
font-family: 'KHTeka';
|
|
89
|
+
src:
|
|
90
|
+
url(${Zn($r["KHTeka-400-woff2"])}) format('woff2'),
|
|
91
|
+
url(${Zn($r["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($r["KHTeka-300-woff2"])}) format('woff2'),
|
|
101
|
+
url(${Zn($r["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($r["KHTekaMono-400-woff2"])}) format('woff2'),
|
|
110
|
+
url(${Zn($r["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($r["KHTeka-400-woff2"])}) format('woff2'),
|
|
119
|
+
url(${Zn($r["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:bs`
|
|
203
|
+
:root {
|
|
204
|
+
}
|
|
205
|
+
`,light:bs`
|
|
206
|
+
:root {
|
|
207
|
+
}
|
|
208
|
+
`}}const A9=bs`
|
|
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
|
+
`,S9=bs`
|
|
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
|
+
`,Wo={ERROR_CODE_UNRECOGNIZED_CHAIN_ID:4902,ERROR_CODE_DEFAULT:5e3,ERROR_INVALID_CHAIN_ID:32603};class dF extends dL{async setUniversalProvider(e){if(!this.namespace)throw new Error("UniversalAdapter:setUniversalProvider - namespace is required");return this.addConnector(new hL({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=>Z.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:po.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===Wo.ERROR_CODE_UNRECOGNIZED_CHAIN_ID||u.code===Wo.ERROR_INVALID_CHAIN_ID||u.code===Wo.ERROR_CODE_DEFAULT||((o=(i=u==null?void 0:u.data)==null?void 0:i.originalError)==null?void 0:o.code)===Wo.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"],Ec={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=Ec[e],r=n.isLegacy?`"features.${n.localFeatureName}" (now "${e}")`:`"features.${e}"`;this.localSettingsOverridden.add(r)}},processFeature(t,e,n,r,s){const i=Ec[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 Ec[t].processApi(e)},processFallbackFeature(t,e){return Ec[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",Z.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=>Zo.getNamesForAddress(n),this.getConnectors=()=>z.getConnectors(),this.getConnectorImage=n=>qc.getConnectorImage(n),this.getConnections=n=>this.remoteFeatures.multiWallet?Hc.getConnectionsData(n).connections:(Wt.open(T.REMOTE_FEATURES_ALERTS.MULTI_WALLET_NOT_ENABLED.DEFAULT,"info"),[]),this.getRecentConnections=n=>this.remoteFeatures.multiWallet?Hc.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&&md.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-7aff3cdd.js"),["assets/features-7aff3cdd.js","assets/ReownAuthentication-b2c2d543.js","assets/NetworkUtil-c907cd4d.js","assets/index-02cebb5e.js","assets/index-bad2d6e3.css","assets/index-b249573f.js","assets/BlockOverrides-303f7e9f.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=TE.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(!Z.isClient())return;const n=window.location.origin;Ns.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,Ee.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(){zy.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 Z.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=qi.getUnsupportedNetwork(`${n}:${e}`);w.setActiveCaipNetwork(r)}}getDefaultNetwork(){return qi.getCaipNetworkFromStorage(this.defaultCaipNetwork)}extendCaipNetwork(e,n){return qi.extendCaipNetwork(e,{customNetworkImageUrls:n.chainImages,projectId:n.projectId})}extendCaipNetworks(e){return qi.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?qi.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(b=>{j.addDisconnectedConnectorId(b.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(", "));Ee.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 Ns.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(b=>z.getConnectorId(b)===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=Ia.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();Ee.sendEvent({type:"track",event:"CONNECT_SUCCESS",address:e,properties:{method:Z.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&&Z.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),Ee.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 b=o.getWalletConnectProvider({caipNetworks:this.getCaipNetworks(),provider:this.universalProvider,activeCaipNetwork:w.state.activeCaipNetwork});Ke.setProvider(i,b)}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()}),b=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===b||"deprecatedCaipNetworkId"in C&&C.deprecatedCaipNetworkId===b)}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);Ia.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){!Cy.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=UL.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 nL.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=>{Ns.listenWcProvider({universalProvider:this.universalProvider,namespace:e,onDisplayUri:n=>{V.setUri(n)},onConnect:n=>{const{address:r}=Z.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&&Z.isClient()&&((e=this.options)!=null&&e.projectId)&&(this.universalProviderInitPromise=this.initializeUniversalAdapter()),this.universalProviderInitPromise}async getUniversalProvider(){if(!this.universalProvider)try{await this.createUniversalProvider()}catch(e){Ee.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 Z.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),mh(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})=>Z.createAccount(n,l,u||"eoa",d)));if(s)return{allAccounts:a,caipAddress:s.caipAddress,address:Z.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=[],s=()=>{const o=this.getAccount(n);o&&e(o)};if(n){const o=w.subscribeChainProp("accountState",s,n);r.push(o)}else{const o=w.subscribe(s);r.push(o)}const i=z.subscribe(s);return r.push(i),()=>{r.forEach(o=>o())}}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){return w.subscribeChainProp("accountState",n=>e(n==null?void 0:n.shouldUpdateToAddress))}subscribeCaipNetworkChange(e){return 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){mr.showError(e)}showSuccessMessage(e){mr.showSuccess(e)}getEvent(){return{...Ee.state}}subscribeEvents(e){return Ee.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 vs.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 by=!1;class $E extends pF{async onAuthProviderConnected(e){const n=Ia.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:ea(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 b=j.getConnectedSocialProvider();b?Ee.sendEvent({type:"track",event:"SOCIAL_LOGIN_SUCCESS",address:this.getAddress(),properties:{provider:b,reconnect:!0}}):Ee.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(!Z.isTelegram())return;const r=j.getTelegramSocialProvider();if(!r||!Z.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(),Ee.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=Ia.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=>Bo(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(Z.isClient()&&!by)try{const e={...Oe.DEFAULT_FEATURES,...this.options.features},n=this.remoteFeatures;if(await this.loadModalComponents(e,n),Z.isClient()&&!document.querySelector("w3m-modal")){const s=document.createElement("w3m-modal");!B.state.disableAppend&&!B.state.enableEmbedded&&document.body.insertAdjacentElement("beforeend",s)}by=!0}catch(e){console.error("Error injecting modal UI:",e)}}async loadModalComponents(e,n){if(!Z.isClient())return;const r=[];(n.email||n.socials&&n.socials.length>0)&&r.push(Jt(()=>import("./embedded-wallet-0fb24cc2.js"),["assets/embedded-wallet-0fb24cc2.js","assets/index-61219cbe.js","assets/index-02cebb5e.js","assets/index-bad2d6e3.css","assets/index-e82b1bf2.js","assets/if-defined-5ecb5632.js","assets/NetworkUtil-c907cd4d.js","assets/ref-f07b284a.js","assets/index-15da260e.js","assets/HelpersUtil-2b99f8bd.js","assets/ConstantsUtil-a131dde8.js","assets/index-91e7b718.js","assets/index-2428c92d.js","assets/index-304c2025.js","assets/index-9ed03248.js","assets/index-4795bc6d.js","assets/NavigationUtil-a0d0ce87.js","assets/index-b249573f.js","assets/BlockOverrides-303f7e9f.js"])),n.email&&r.push(Jt(()=>import("./email-8a377eee.js"),["assets/email-8a377eee.js","assets/index-61219cbe.js","assets/index-02cebb5e.js","assets/index-bad2d6e3.css","assets/index-6efd5958.js","assets/index-4795bc6d.js","assets/index-15da260e.js","assets/index-9ed03248.js","assets/if-defined-5ecb5632.js","assets/ref-f07b284a.js","assets/index-304c2025.js","assets/index-cdede9c1.js","assets/index-91e7b718.js","assets/NetworkUtil-c907cd4d.js","assets/index-b249573f.js","assets/BlockOverrides-303f7e9f.js"])),n.socials&&r.push(Jt(()=>import("./socials-a7521156.js"),["assets/socials-a7521156.js","assets/index-61219cbe.js","assets/index-02cebb5e.js","assets/index-bad2d6e3.css","assets/if-defined-5ecb5632.js","assets/index-d4cf6fd5.js","assets/ref-f07b284a.js","assets/index-67af3d9f.js","assets/NetworkUtil-c907cd4d.js","assets/index-9ed03248.js","assets/ConstantsUtil-a131dde8.js","assets/index-304c2025.js","assets/index-15da260e.js","assets/index-e0285d09.js","assets/index-e82b1bf2.js","assets/index-b612aba6.js","assets/index-b249573f.js","assets/BlockOverrides-303f7e9f.js"])),n.swaps&&n.swaps.length>0&&r.push(Jt(()=>import("./swaps-35bf1db5.js"),["assets/swaps-35bf1db5.js","assets/index-61219cbe.js","assets/index-02cebb5e.js","assets/index-bad2d6e3.css","assets/index-304c2025.js","assets/index-15da260e.js","assets/index-9ed03248.js","assets/if-defined-5ecb5632.js","assets/index-6d67eda0.js","assets/SwapController-cd0f257b.js","assets/NetworkUtil-c907cd4d.js","assets/index-b612aba6.js","assets/index-088190d3.js","assets/index-e82b1bf2.js","assets/MathUtil-b514a570.js","assets/index-91e7b718.js","assets/ref-f07b284a.js","assets/index-b249573f.js","assets/BlockOverrides-303f7e9f.js"])),e.send&&r.push(Jt(()=>import("./send-d84e8cd4.js"),["assets/send-d84e8cd4.js","assets/index-61219cbe.js","assets/index-02cebb5e.js","assets/index-bad2d6e3.css","assets/index-304c2025.js","assets/index-15da260e.js","assets/index-9ed03248.js","assets/if-defined-5ecb5632.js","assets/index-6a478a1a.js","assets/ref-f07b284a.js","assets/index-bfcb1eaf.js","assets/index-4795bc6d.js","assets/index-088190d3.js","assets/index-e82b1bf2.js","assets/index-b612aba6.js","assets/SwapController-cd0f257b.js","assets/NetworkUtil-c907cd4d.js","assets/index-91e7b718.js","assets/index-45573641.js","assets/index-0687b660.js","assets/index-b249573f.js","assets/BlockOverrides-303f7e9f.js"])),e.receive&&r.push(Jt(()=>import("./receive-168aa468.js"),["assets/receive-168aa468.js","assets/index-61219cbe.js","assets/index-02cebb5e.js","assets/index-bad2d6e3.css","assets/if-defined-5ecb5632.js","assets/index-e82b1bf2.js","assets/index-e0285d09.js","assets/NetworkUtil-c907cd4d.js","assets/index-b249573f.js","assets/BlockOverrides-303f7e9f.js"])),n.onramp&&n.onramp.length>0&&r.push(Jt(()=>import("./onramp-531cac52.js"),["assets/onramp-531cac52.js","assets/index-61219cbe.js","assets/index-02cebb5e.js","assets/index-bad2d6e3.css","assets/if-defined-5ecb5632.js","assets/index-5b7f5468.js","assets/index-15da260e.js","assets/index-d4cf6fd5.js","assets/ref-f07b284a.js","assets/index-e82b1bf2.js","assets/index-1ef89fbf.js","assets/index-6aa35c4c.js","assets/index-4795bc6d.js","assets/index-304c2025.js","assets/index-9ed03248.js","assets/index-91e7b718.js","assets/NetworkUtil-c907cd4d.js","assets/index-b249573f.js","assets/BlockOverrides-303f7e9f.js"])),n.payWithExchange&&r.push(Jt(()=>import("./pay-with-exchange-7c86030c.js"),["assets/pay-with-exchange-7c86030c.js","assets/index-61219cbe.js","assets/index-02cebb5e.js","assets/index-bad2d6e3.css","assets/if-defined-5ecb5632.js","assets/index-e82b1bf2.js","assets/index-2428c92d.js","assets/index-5b7f5468.js","assets/index-15da260e.js","assets/index-b612aba6.js","assets/index-304c2025.js","assets/index-bfcb1eaf.js","assets/ref-f07b284a.js","assets/index-4795bc6d.js","assets/ExchangeController-a14191f2.js","assets/index-9ed03248.js","assets/index-91e7b718.js","assets/index-45573641.js","assets/index-6a478a1a.js","assets/NetworkUtil-c907cd4d.js","assets/index-b249573f.js","assets/BlockOverrides-303f7e9f.js"])),n.activity&&r.push(Jt(()=>import("./transactions-ffdabf4e.js"),["assets/transactions-ffdabf4e.js","assets/index-61219cbe.js","assets/index-02cebb5e.js","assets/index-bad2d6e3.css","assets/index-bfa1b0b2.js","assets/index-9ed03248.js","assets/if-defined-5ecb5632.js","assets/index-4795bc6d.js","assets/index-e82b1bf2.js","assets/index-b612aba6.js","assets/NetworkUtil-c907cd4d.js","assets/index-b249573f.js","assets/BlockOverrides-303f7e9f.js"])),(e.pay||n.payments)&&r.push(Jt(()=>import("./index-557ac282.js"),["assets/index-557ac282.js","assets/index-a30fd37b.js","assets/index-61219cbe.js","assets/index-02cebb5e.js","assets/index-bad2d6e3.css","assets/if-defined-5ecb5632.js","assets/index-304c2025.js","assets/index-15da260e.js","assets/index-2428c92d.js","assets/index-e82b1bf2.js","assets/index-5b7f5468.js","assets/index-12ec15f0.js","assets/index-9ed03248.js","assets/index-6a478a1a.js","assets/NetworkUtil-c907cd4d.js","assets/index-b612aba6.js","assets/MathUtil-b514a570.js","assets/index-b249573f.js","assets/BlockOverrides-303f7e9f.js"])),n.emailCapture&&r.push(Jt(()=>import("./data-capture-7e26f0ce.js"),["assets/data-capture-7e26f0ce.js","assets/index-61219cbe.js","assets/index-02cebb5e.js","assets/index-bad2d6e3.css","assets/index-6efd5958.js","assets/index-4795bc6d.js","assets/index-15da260e.js","assets/ReownAuthentication-b2c2d543.js","assets/NetworkUtil-c907cd4d.js","assets/index-b249573f.js","assets/BlockOverrides-303f7e9f.js"])),await Promise.all([...r,Jt(()=>import("./index-52bd0c54.js"),["assets/index-52bd0c54.js","assets/index-61219cbe.js","assets/index-02cebb5e.js","assets/index-bad2d6e3.css","assets/if-defined-5ecb5632.js","assets/index-e82b1bf2.js","assets/index-15da260e.js","assets/index-0687b660.js","assets/index-9ed03248.js","assets/index-5db900d2.js","assets/index-6aa35c4c.js","assets/index-4795bc6d.js","assets/HelpersUtil-2b99f8bd.js","assets/ConstantsUtil-a131dde8.js","assets/NetworkUtil-c907cd4d.js","assets/index-12ec15f0.js","assets/index-2428c92d.js","assets/index-5b7f5468.js","assets/index-304c2025.js","assets/ExchangeController-a14191f2.js","assets/index-bfa1b0b2.js","assets/index-b612aba6.js","assets/index-45573641.js","assets/index-6d67eda0.js","assets/MathUtil-b514a570.js","assets/index-6a478a1a.js","assets/ref-f07b284a.js","assets/index-91e7b718.js","assets/index-cdede9c1.js","assets/index-d4cf6fd5.js","assets/index-67af3d9f.js","assets/index-e0285d09.js","assets/NavigationUtil-a0d0ce87.js","assets/index-1ef89fbf.js","assets/index-b249573f.js","assets/BlockOverrides-303f7e9f.js"]),Jt(()=>import("./w3m-modal-c647dc65.js"),["assets/w3m-modal-c647dc65.js","assets/index-61219cbe.js","assets/index-02cebb5e.js","assets/index-bad2d6e3.css","assets/if-defined-5ecb5632.js","assets/index-a30fd37b.js","assets/index-304c2025.js","assets/index-15da260e.js","assets/index-2428c92d.js","assets/index-e82b1bf2.js","assets/index-5b7f5468.js","assets/index-12ec15f0.js","assets/index-9ed03248.js","assets/index-6a478a1a.js","assets/NetworkUtil-c907cd4d.js","assets/index-b612aba6.js","assets/MathUtil-b514a570.js","assets/HelpersUtil-2b99f8bd.js","assets/ConstantsUtil-a131dde8.js","assets/index-6d67eda0.js","assets/index-5db900d2.js","assets/index-6aa35c4c.js","assets/index-4795bc6d.js","assets/SwapController-cd0f257b.js","assets/index-b249573f.js","assets/BlockOverrides-303f7e9f.js"])])}}const gF="1.8.17";function mF(t){return new $E({...t,sdkVersion:Z.generateSdkVersion(t.adapters??[],"html",gF)})}const I9=Object.freeze(Object.defineProperty({__proto__:null,AppKit:$E,CoreHelperUtil:Z,WcConstantsUtil:Wo,createAppKit:mF},Symbol.toStringTag,{value:"Module"}));export{Fn as $,At as A,me as B,w as C,Bo as D,Ee as E,ce as F,ne as G,qc as H,ra as I,j as J,In as K,ze as L,Re as M,Ny as N,B as O,xC as P,qt as Q,pe as R,mr as S,un as T,_9 as U,ea as V,at as W,gt as X,Se as Y,Zo as Z,md as _,Pt as a,hi as a0,jr as a1,Cc as a2,Mn as a3,C9 as a4,zy as a5,wt as a6,r1 as a7,Ke as a8,Da as a9,Ia as aa,SF as ab,ph as ac,RE as ad,lo as ae,Xt as af,Hc as ag,vs as ah,qi as ai,iA as aj,I9 as ak,Hy as b,Oe as c,f9 as d,p9 as e,m9 as f,y9 as g,Z as h,g9 as i,v9 as j,S9 as k,Dc as l,E9 as m,bs as n,z as o,Xe as p,rA as q,A9 as r,xt as s,Ch as t,Wt as u,lF as v,qn as w,V as x,Nn as y,le as z};
|