@dcl/governance-site 1.15.1-20028327406.commit-24354ba → 1.15.1-20105651460.commit-7620061
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/{UserAvatar-12153ebc.js → UserAvatar-9036979f.js} +1 -1
- package/assets/{basic-a52ce1cd.js → basic-22d207a7.js} +1 -1
- package/assets/{core-b73efdbb.js → core-85d4a2c0.js} +3 -3
- package/assets/{features-1ac2c408.js → features-abf09337.js} +1 -1
- package/assets/{fortmatic-0e18b430.js → fortmatic-e88a6ce4.js} +1 -1
- package/assets/{index-87afc223.js → index-0ed42625.js} +1 -1
- package/assets/{index-6f2b1e4e.js → index-19828012.js} +2 -2
- package/assets/{index-1b1958de.css → index-3632219d.css} +4 -4
- package/assets/{index-0ed0aefc.js → index-6c5c6262.js} +14 -14
- package/assets/{index-4c4446d9.js → index-91cd95cb.js} +1 -1
- package/assets/{index-8277ff88.js → index-94684a9b.js} +1 -1
- package/assets/{index-2afd209b.js → index-f10062b6.js} +2 -2
- package/assets/{native-4dce3c73.js → native-847e235b.js} +1 -1
- package/assets/{tslib.es6-0111f24e.js → tslib.es6-01357a01.js} +1 -1
- package/assets/{w3m-modal-25d455a7.js → w3m-modal-f845d089.js} +1 -1
- package/index.html +4 -4
- package/package.json +3 -3
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import{e as Vn,_ as Go,i as ue,B as Ee,k as nr,x as Rl}from"./index-0ed0aefc.js";import{d as ho,s as Pl,c as fm,g as yu,a as gm,b as mm,k as ym,e as wm,f as Yo,I as Fr,Y as xl,h as bm,i as z,j as tn,t as Ot,l as Or,m as cp,n as jr,o as Em,p as vm,q as Cm,r as Am,u as _m,v as ui,w as kc,C as Im,X as Bt,x as Ft,D as lp,y as Sm,z as kl,A as Nm,B as $l,E as Ul,F as bi,G as qr,H as vn,P as wu,Q as Tm,J as Om,K as Ms,L as up,M as $n,N as En,O as Zn,R as dp}from"./index-2afd209b.js";const U={WC_NAME_SUFFIX:".reown.id",WC_NAME_SUFFIX_LEGACY:".wcn.id",BLOCKCHAIN_API_RPC_URL:"https://rpc.walletconnect.org",PULSE_API_URL:"https://pulse.walletconnect.org",W3M_API_URL:"https://api.web3modal.org",CONNECTOR_ID:{WALLET_CONNECT:"walletConnect",INJECTED:"injected",WALLET_STANDARD:"announced",COINBASE:"coinbaseWallet",COINBASE_SDK:"coinbaseWalletSDK",SAFE:"safe",LEDGER:"ledger",OKX:"okx",EIP6963:"eip6963",AUTH:"AUTH"},CONNECTOR_NAMES:{AUTH:"Auth"},AUTH_CONNECTOR_SUPPORTED_CHAINS:["eip155","solana"],LIMITS:{PENDING_TRANSACTIONS:99},CHAIN:{EVM:"eip155",SOLANA:"solana",POLKADOT:"polkadot",BITCOIN:"bip122"},CHAIN_NAME_MAP:{eip155:"EVM Networks",solana:"Solana",polkadot:"Polkadot",bip122:"Bitcoin",cosmos:"Cosmos",sui:"Sui",stacks:"Stacks"},ADAPTER_TYPES:{BITCOIN:"bitcoin",SOLANA:"solana",WAGMI:"wagmi",ETHERS:"ethers",ETHERS5:"ethers5"},USDT_CONTRACT_ADDRESSES:["0xdac17f958d2ee523a2206206994597c13d831ec7","0xc2132d05d31c914a87c6611c10748aeb04b58e8f","0x9702230a8ea53601f5cd2dc00fdbc13d4df4a8c7","0x919C1c267BC06a7039e03fcc2eF738525769109c","0x48065fbBE25f71C9282ddf5e1cD6D6A887483D5e","0x55d398326f99059fF775485246999027B3197955","0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9"],SOLANA_SPL_TOKEN_ADDRESSES:{SOL:"So11111111111111111111111111111111111111112"},HTTP_STATUS_CODES:{SERVER_ERROR:500,TOO_MANY_REQUESTS:429,SERVICE_UNAVAILABLE:503,FORBIDDEN:403},UNSUPPORTED_NETWORK_NAME:"Unknown Network",SECURE_SITE_SDK_ORIGIN:(typeof Vn<"u"&&typeof{}<"u"?{}.NEXT_PUBLIC_SECURE_SITE_ORIGIN:void 0)||"https://secure.walletconnect.org",REMOTE_FEATURES_ALERTS:{MULTI_WALLET_NOT_ENABLED:{DEFAULT:{displayMessage:"Multi-Wallet Not Enabled",debugMessage:"Multi-wallet support is not enabled. Please enable it in your AppKit configuration at cloud.reown.com."},CONNECTIONS_HOOK:{displayMessage:"Multi-Wallet Not Enabled",debugMessage:"Multi-wallet support is not enabled. Please enable it in your AppKit configuration at cloud.reown.com to use the useAppKitConnections hook."},CONNECTION_HOOK:{displayMessage:"Multi-Wallet Not Enabled",debugMessage:"Multi-wallet support is not enabled. Please enable it in your AppKit configuration at cloud.reown.com to use the useAppKitConnection hook."}}},IS_DEVELOPMENT:typeof Vn<"u"&&{}.NODE_ENV==="development",DEFAULT_ALLOWED_ANCESTORS:["http://localhost:*","https://localhost:*","http://127.0.0.1:*","https://127.0.0.1:*","https://*.pages.dev","https://*.vercel.app","https://*.ngrok-free.app","https://secure-mobile.walletconnect.com","https://secure-mobile.walletconnect.org"]},hp={caipNetworkIdToNumber(t){return t?Number(t.split(":")[1]):void 0},parseEvmChainId(t){return typeof t=="string"?this.caipNetworkIdToNumber(t):t},getNetworksByNamespace(t,e){return(t==null?void 0:t.filter(n=>n.chainNamespace===e))||[]},getFirstNetworkByNamespace(t,e){return this.getNetworksByNamespace(t,e)[0]},getNetworkNameByCaipNetworkId(t,e){var r;if(!e)return;const n=t.find(i=>i.caipNetworkId===e);if(n)return n.name;const[s]=e.split(":");return((r=U.CHAIN_NAME_MAP)==null?void 0:r[s])||void 0}},pp=["eip155","solana","polkadot","bip122","cosmos","sui","stacks"];var Rm=20,Pm=1,Js=1e6,bu=1e6,xm=-7,km=21,$m=!1,Qi="[big.js] ",sr=Qi+"Invalid ",wa=sr+"decimal places",Um=sr+"rounding mode",fp=Qi+"Division by zero",Te={},Sn=void 0,Dm=/^-?(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i;function gp(){function t(e){var n=this;if(!(n instanceof t))return e===Sn?gp():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(sr+"value");e=e===0&&1/e<0?"-0":String(e)}Mm(n,e)}n.constructor=t}return t.prototype=Te,t.DP=Rm,t.RM=Pm,t.NE=xm,t.PE=km,t.strict=$m,t.roundDown=0,t.roundHalfUp=1,t.roundHalfEven=2,t.roundUp=3,t}function Mm(t,e){var n,s,r;if(!Dm.test(e))throw Error(sr+"number");for(t.s=e.charAt(0)=="-"?(e=e.slice(1),-1):1,(n=e.indexOf("."))>-1&&(e=e.replace(".","")),(s=e.search(/e/i))>0?(n<0&&(n=s),n+=+e.slice(s+1),e=e.substring(0,s)):n<0&&(n=e.length),r=e.length,s=0;s<r&&e.charAt(s)=="0";)++s;if(s==r)t.c=[t.e=0];else{for(;r>0&&e.charAt(--r)=="0";);for(t.e=n-s-1,t.c=[],n=0;s<=r;)t.c[n++]=+e.charAt(s++)}return t}function rr(t,e,n,s){var r=t.c;if(n===Sn&&(n=t.constructor.RM),n!==0&&n!==1&&n!==2&&n!==3)throw Error(Um);if(e<1)s=n===3&&(s||!!r[0])||e===0&&(n===1&&r[0]>=5||n===2&&(r[0]>5||r[0]===5&&(s||r[1]!==Sn))),r.length=1,s?(t.e=t.e-e+1,r[0]=1):r[0]=t.e=0;else if(e<r.length){if(s=n===1&&r[e]>=5||n===2&&(r[e]>5||r[e]===5&&(s||r[e+1]!==Sn||r[e-1]&1))||n===3&&(s||!!r[0]),r.length=e,s){for(;++r[--e]>9;)if(r[e]=0,e===0){++t.e,r.unshift(1);break}}for(e=r.length;!r[--e];)r.pop()}return t}function ir(t,e,n){var s=t.e,r=t.c.join(""),i=r.length;if(e)r=r.charAt(0)+(i>1?"."+r.slice(1):"")+(s<0?"e":"e+")+s;else if(s<0){for(;++s;)r="0"+r;r="0."+r}else if(s>0)if(++s>i)for(s-=i;s--;)r+="0";else s<i&&(r=r.slice(0,s)+"."+r.slice(s));else i>1&&(r=r.charAt(0)+"."+r.slice(1));return t.s<0&&n?"-"+r:r}Te.abs=function(){var t=new this.constructor(this);return t.s=1,t};Te.cmp=function(t){var e,n=this,s=n.c,r=(t=new n.constructor(t)).c,i=n.s,o=t.s,a=n.e,c=t.e;if(!s[0]||!r[0])return s[0]?i:r[0]?-o:0;if(i!=o)return i;if(e=i<0,a!=c)return a>c^e?1:-1;for(o=(a=s.length)<(c=r.length)?a:c,i=-1;++i<o;)if(s[i]!=r[i])return s[i]>r[i]^e?1:-1;return a==c?0:a>c^e?1:-1};Te.div=function(t){var e=this,n=e.constructor,s=e.c,r=(t=new n(t)).c,i=e.s==t.s?1:-1,o=n.DP;if(o!==~~o||o<0||o>Js)throw Error(wa);if(!r[0])throw Error(fp);if(!s[0])return t.s=i,t.c=[t.e=0],t;var a,c,l,u,d,h=r.slice(),p=a=r.length,g=s.length,f=s.slice(0,a),y=f.length,b=t,_=b.c=[],A=0,E=o+(b.e=e.e-t.e)+1;for(b.s=i,i=E<0?0:E,h.unshift(0);y++<a;)f.push(0);do{for(l=0;l<10;l++){if(a!=(y=f.length))u=a>y?1:-1;else for(d=-1,u=0;++d<a;)if(r[d]!=f[d]){u=r[d]>f[d]?1:-1;break}if(u<0){for(c=y==a?r:h;y;){if(f[--y]<c[y]){for(d=y;d&&!f[--d];)f[d]=9;--f[d],f[y]+=10}f[y]-=c[y]}for(;!f[0];)f.shift()}else break}_[A++]=u?l:++l,f[0]&&u?f[y]=s[p]||0:f=[s[p]]}while((p++<g||f[0]!==Sn)&&i--);return!_[0]&&A!=1&&(_.shift(),b.e--,E--),A>E&&rr(b,E,n.RM,f[0]!==Sn),b};Te.eq=function(t){return this.cmp(t)===0};Te.gt=function(t){return this.cmp(t)>0};Te.gte=function(t){return this.cmp(t)>-1};Te.lt=function(t){return this.cmp(t)<0};Te.lte=function(t){return this.cmp(t)<1};Te.minus=Te.sub=function(t){var e,n,s,r,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((r=a<0)?(a=-a,s=l):(h=u,s=d),s.reverse(),c=a;c--;)s.push(0);s.reverse()}else for(n=((r=l.length<d.length)?l:d).length,a=c=0;c<n;c++)if(l[c]!=d[c]){r=l[c]<d[c];break}if(r&&(s=l,l=d,d=s,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};Te.mod=function(t){var e,n=this,s=n.constructor,r=n.s,i=(t=new s(t)).s;if(!t.c[0])throw Error(fp);return n.s=t.s=1,e=t.cmp(n)==1,n.s=r,t.s=i,e?new s(n):(r=s.DP,i=s.RM,s.DP=s.RM=0,n=n.div(t),s.DP=r,s.RM=i,this.minus(n.times(t)))};Te.neg=function(){var t=new this.constructor(this);return t.s=-t.s,t};Te.plus=Te.add=function(t){var e,n,s,r=this,i=r.constructor;if(t=new i(t),r.s!=t.s)return t.s=-t.s,r.minus(t);var o=r.e,a=r.c,c=t.e,l=t.c;if(!a[0]||!l[0])return l[0]||(a[0]?t=new i(r):t.s=r.s),t;if(a=a.slice(),e=o-c){for(e>0?(c=o,s=l):(e=-e,s=a),s.reverse();e--;)s.push(0);s.reverse()}for(a.length-l.length<0&&(s=l,l=a,a=s),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};Te.pow=function(t){var e=this,n=new e.constructor("1"),s=n,r=t<0;if(t!==~~t||t<-bu||t>bu)throw Error(sr+"exponent");for(r&&(t=-t);t&1&&(s=s.times(e)),t>>=1,!!t;)e=e.times(e);return r?n.div(s):s};Te.prec=function(t,e){if(t!==~~t||t<1||t>Js)throw Error(sr+"precision");return rr(new this.constructor(this),t,e)};Te.round=function(t,e){if(t===Sn)t=0;else if(t!==~~t||t<-Js||t>Js)throw Error(wa);return rr(new this.constructor(this),t+this.e+1,e)};Te.sqrt=function(){var t,e,n,s=this,r=s.constructor,i=s.s,o=s.e,a=new r("0.5");if(!s.c[0])return new r(s);if(i<0)throw Error(Qi+"No square root");i=Math.sqrt(+ir(s,!0,!0)),i===0||i===1/0?(e=s.c.join(""),e.length+o&1||(e+="0"),i=Math.sqrt(e),o=((o+1)/2|0)-(o<0||o&1),t=new r((i==1/0?"5e":(i=i.toExponential()).slice(0,i.indexOf("e")+1))+o)):t=new r(i+""),o=t.e+(r.DP+=4);do n=t,t=a.times(n.plus(s.div(n)));while(n.c.slice(0,o).join("")!==t.c.slice(0,o).join(""));return rr(t,(r.DP-=4)+t.e+1,r.RM)};Te.times=Te.mul=function(t){var e,n=this,s=n.constructor,r=n.c,i=(t=new s(t)).c,o=r.length,a=i.length,c=n.e,l=t.e;if(t.s=n.s==t.s?1:-1,!r[0]||!i[0])return t.c=[t.e=0],t;for(t.e=c+l,o<a&&(e=r,r=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]*r[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};Te.toExponential=function(t,e){var n=this,s=n.c[0];if(t!==Sn){if(t!==~~t||t<0||t>Js)throw Error(wa);for(n=rr(new n.constructor(n),++t,e);n.c.length<t;)n.c.push(0)}return ir(n,!0,!!s)};Te.toFixed=function(t,e){var n=this,s=n.c[0];if(t!==Sn){if(t!==~~t||t<0||t>Js)throw Error(wa);for(n=rr(new n.constructor(n),t+n.e+1,e),t=t+n.e+1;n.c.length<t;)n.c.push(0)}return ir(n,!1,!!s)};Te[Symbol.for("nodejs.util.inspect.custom")]=Te.toJSON=Te.toString=function(){var t=this,e=t.constructor;return ir(t,t.e<=e.NE||t.e>=e.PE,!!t.c[0])};Te.toNumber=function(){var t=+ir(this,!0,!0);if(this.constructor.strict===!0&&!this.eq(t.toString()))throw Error(Qi+"Imprecise conversion");return t};Te.toPrecision=function(t,e){var n=this,s=n.constructor,r=n.c[0];if(t!==Sn){if(t!==~~t||t<1||t>Js)throw Error(sr+"precision");for(n=rr(new s(n),t,e);n.c.length<t;)n.c.push(0)}return ir(n,t<=n.e||n.e<=s.NE||n.e>=s.PE,!!r)};Te.valueOf=function(){var t=this,e=t.constructor;if(e.strict===!0)throw Error(Qi+"valueOf disallowed");return ir(t,t.e<=e.NE||t.e>=e.PE,!0)};var Lm=gp();const Qn=Lm,Bm={bigNumber(t){return t?new Qn(t):new Qn(0)},multiply(t,e){if(t===void 0||e===void 0)return new Qn(0);const n=new Qn(t),s=new Qn(e);return n.times(s)},toFixed(t,e=2){return t===void 0||t===""?new Qn(0).toFixed(e):new Qn(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 Qn(e).toNumber()}},Fm=[{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"}]}],jm=[{type:"function",name:"approve",stateMutability:"nonpayable",inputs:[{name:"spender",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]}],qm=[{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"}]}],Wm={getERC20Abi:t=>U.USDT_CONTRACT_ADDRESSES.includes(t)?qm:Fm,getSwapAbi:()=>jm},tt={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,s,r]=e;if(!n||!s||!r)throw new Error(`Invalid CAIP-10 address: ${t}`);return{chainNamespace:n,chainId:s,address:r}},parseCaipNetworkId(t){const e=t.split(":");if(e.length!==2)throw new Error(`Invalid CAIP-2 network id: ${t}`);const[n,s]=e;if(!n||!s)throw new Error(`Invalid CAIP-2 network id: ${t}`);return{chainNamespace:n,chainId:s}}},qn={RPC_ERROR_CODE:{USER_REJECTED_REQUEST:4001,USER_REJECTED_METHODS:5002,USER_REJECTED:5e3},PROVIDER_RPC_ERROR_NAME:{PROVIDER_RPC:"ProviderRpcError",USER_REJECTED_REQUEST:"UserRejectedRequestError"},isRpcProviderError(t){try{if(typeof t=="object"&&t!==null){const e=t,n=typeof e.message=="string",s=typeof e.code=="number";return n&&s}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(qn.isRpcProviderError(t)){const e=t.code===qn.RPC_ERROR_CODE.USER_REJECTED_REQUEST,n=t.code===qn.RPC_ERROR_CODE.USER_REJECTED_METHODS;return e||n||qn.isUserRejectedMessage(t.message)}return t instanceof Error?qn.isUserRejectedMessage(t.message):!1}};let Hm=class extends Error{constructor(e,n){super(n.message,{cause:e}),this.name=qn.PROVIDER_RPC_ERROR_NAME.PROVIDER_RPC,this.code=n.code}},mp=class extends Hm{constructor(e){super(e,{code:qn.RPC_ERROR_CODE.USER_REJECTED_REQUEST,message:"User rejected the request"}),this.name=qn.PROVIDER_RPC_ERROR_NAME.USER_REJECTED_REQUEST}};const te={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"};function $a(t){if(!t)throw new Error("Namespace is required for CONNECTED_CONNECTOR_ID");return`@appkit/${t}:connected_connector_id`}const Z={setItem(t,e){ii()&&e!==void 0&&localStorage.setItem(t,e)},getItem(t){if(ii())return localStorage.getItem(t)||void 0},removeItem(t){ii()&&localStorage.removeItem(t)},clear(){ii()&&localStorage.clear()}};function ii(){return typeof window<"u"&&typeof localStorage<"u"}function Jo(t,e){return e==="light"?{"--w3m-accent":(t==null?void 0:t["--w3m-accent"])||"hsla(231, 100%, 70%, 1)","--w3m-background":"#fff"}:{"--w3m-accent":(t==null?void 0:t["--w3m-accent"])||"hsla(230, 100%, 67%, 1)","--w3m-background":"#202020"}}const Km=Symbol(),Eu=Object.getPrototypeOf,$c=new WeakMap,Vm=t=>t&&($c.has(t)?$c.get(t):Eu(t)===Object.prototype||Eu(t)===Array.prototype),zm=t=>Vm(t)&&t[Km]||null,vu=(t,e=!0)=>{$c.set(t,e)},Dl=t=>typeof t=="object"&&t!==null,Gm=t=>Dl(t)&&!eo.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),yp=(t,e)=>{const n=Uc.get(t);if((n==null?void 0:n[0])===e)return n[1];const s=Array.isArray(t)?[]:Object.create(Object.getPrototypeOf(t));return vu(s,!0),Uc.set(t,[e,s]),Reflect.ownKeys(t).forEach(r=>{if(Object.getOwnPropertyDescriptor(s,r))return;const i=Reflect.get(t,r),{enumerable:o}=Reflect.getOwnPropertyDescriptor(t,r),a={value:i,enumerable:o,configurable:!0};if(eo.has(i))vu(i,!1);else if(Es.has(i)){const[c,l]=Es.get(i);a.value=yp(c,l())}Object.defineProperty(s,r,a)}),Object.preventExtensions(s)},Ym=(t,e,n,s)=>({deleteProperty(r,i){const o=Reflect.get(r,i);n(i);const a=Reflect.deleteProperty(r,i);return a&&s(["delete",[i],o]),a},set(r,i,o,a){const c=!t()&&Reflect.has(r,i),l=Reflect.get(r,i,a);if(c&&(Cu(l,o)||Ei.has(o)&&Cu(l,Ei.get(o))))return!0;n(i),Dl(o)&&(o=zm(o)||o);const u=!Es.has(o)&&Xm(o)?ke(o):o;return e(i,u),Reflect.set(r,i,u,a),s(["set",[i],o,l]),!0}}),Es=new WeakMap,eo=new WeakSet,Uc=new WeakMap,Lo=[1],Ei=new WeakMap;let Cu=Object.is,Jm=(t,e)=>new Proxy(t,e),Xm=Gm,Zm=yp,Qm=Ym;function ke(t={}){if(!Dl(t))throw new Error("object required");const e=Ei.get(t);if(e)return e;let n=Lo[0];const s=new Set,r=(y,b=++Lo[0])=>{n!==b&&(i=n=b,s.forEach(_=>_(y,b)))};let i=n;const o=(y=Lo[0])=>(i!==y&&(i=y,c.forEach(([b])=>{const _=b[1](y);_>n&&(n=_)})),n),a=y=>(b,_)=>{const A=[...b];A[1]=[y,...A[1]],r(A,_)},c=new Map,l=(y,b)=>{const _=!eo.has(b)&&Es.get(b);if(_)if(s.size){const A=_[2](a(y));c.set(y,[_,A])}else c.set(y,[_])},u=y=>{var b;const _=c.get(y);_&&(c.delete(y),(b=_[1])==null||b.call(_))},d=y=>(s.add(y),s.size===1&&c.forEach(([_,A],E)=>{const N=_[2](a(E));c.set(E,[_,N])}),()=>{s.delete(y),s.size===0&&c.forEach(([_,A],E)=>{A&&(A(),c.set(E,[_]))})});let h=!0;const p=Qm(()=>h,l,u,r),g=Jm(t,p);Ei.set(t,g);const f=[t,o,d];return Es.set(g,f),Reflect.ownKeys(t).forEach(y=>{const b=Object.getOwnPropertyDescriptor(t,y);"value"in b&&b.writable&&(g[y]=t[y])}),h=!1,g}function nt(t,e,n){const s=Es.get(t);let r;const i=[],o=s[2];let a=!1;const l=o(u=>{if(i.push(u),n){e(i.splice(0));return}r||(r=Promise.resolve().then(()=>{r=void 0,a&&e(i.splice(0))}))});return a=!0,()=>{a=!1,l()}}function vi(t){const e=Es.get(t),[n,s]=e;return Zm(n,s())}function Ci(t){return eo.add(t),t}function ey(){return{proxyStateMap:Es,refSet:eo,snapCache:Uc,versionHolder:Lo,proxyCache:Ei}}function st(t,e,n,s){let r=t[e];return nt(t,()=>{const i=t[e];Object.is(r,i)||n(r=i)},s)}const{proxyStateMap:ty,snapCache:ny}=ey(),po=t=>ty.has(t);function sy(t){const e=[];let n=0;const s=new Map,r=new WeakMap,i=()=>{const l=ny.get(a),u=l==null?void 0:l[1];if(u&&!r.has(u)){const d=new Map(s);r.set(u,d)}},o=l=>r.get(l)||s;if(t){if(typeof t[Symbol.iterator]!="function")throw new TypeError(`proxyMap:
|
|
1
|
+
import{e as Vn,_ as Go,i as ue,B as Ee,k as nr,x as Rl}from"./index-6c5c6262.js";import{d as ho,s as Pl,c as fm,g as yu,a as gm,b as mm,k as ym,e as wm,f as Yo,I as Fr,Y as xl,h as bm,i as z,j as tn,t as Ot,l as Or,m as cp,n as jr,o as Em,p as vm,q as Cm,r as Am,u as _m,v as ui,w as kc,C as Im,X as Bt,x as Ft,D as lp,y as Sm,z as kl,A as Nm,B as $l,E as Ul,F as bi,G as qr,H as vn,P as wu,Q as Tm,J as Om,K as Ms,L as up,M as $n,N as En,O as Zn,R as dp}from"./index-f10062b6.js";const U={WC_NAME_SUFFIX:".reown.id",WC_NAME_SUFFIX_LEGACY:".wcn.id",BLOCKCHAIN_API_RPC_URL:"https://rpc.walletconnect.org",PULSE_API_URL:"https://pulse.walletconnect.org",W3M_API_URL:"https://api.web3modal.org",CONNECTOR_ID:{WALLET_CONNECT:"walletConnect",INJECTED:"injected",WALLET_STANDARD:"announced",COINBASE:"coinbaseWallet",COINBASE_SDK:"coinbaseWalletSDK",SAFE:"safe",LEDGER:"ledger",OKX:"okx",EIP6963:"eip6963",AUTH:"AUTH"},CONNECTOR_NAMES:{AUTH:"Auth"},AUTH_CONNECTOR_SUPPORTED_CHAINS:["eip155","solana"],LIMITS:{PENDING_TRANSACTIONS:99},CHAIN:{EVM:"eip155",SOLANA:"solana",POLKADOT:"polkadot",BITCOIN:"bip122"},CHAIN_NAME_MAP:{eip155:"EVM Networks",solana:"Solana",polkadot:"Polkadot",bip122:"Bitcoin",cosmos:"Cosmos",sui:"Sui",stacks:"Stacks"},ADAPTER_TYPES:{BITCOIN:"bitcoin",SOLANA:"solana",WAGMI:"wagmi",ETHERS:"ethers",ETHERS5:"ethers5"},USDT_CONTRACT_ADDRESSES:["0xdac17f958d2ee523a2206206994597c13d831ec7","0xc2132d05d31c914a87c6611c10748aeb04b58e8f","0x9702230a8ea53601f5cd2dc00fdbc13d4df4a8c7","0x919C1c267BC06a7039e03fcc2eF738525769109c","0x48065fbBE25f71C9282ddf5e1cD6D6A887483D5e","0x55d398326f99059fF775485246999027B3197955","0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9"],SOLANA_SPL_TOKEN_ADDRESSES:{SOL:"So11111111111111111111111111111111111111112"},HTTP_STATUS_CODES:{SERVER_ERROR:500,TOO_MANY_REQUESTS:429,SERVICE_UNAVAILABLE:503,FORBIDDEN:403},UNSUPPORTED_NETWORK_NAME:"Unknown Network",SECURE_SITE_SDK_ORIGIN:(typeof Vn<"u"&&typeof{}<"u"?{}.NEXT_PUBLIC_SECURE_SITE_ORIGIN:void 0)||"https://secure.walletconnect.org",REMOTE_FEATURES_ALERTS:{MULTI_WALLET_NOT_ENABLED:{DEFAULT:{displayMessage:"Multi-Wallet Not Enabled",debugMessage:"Multi-wallet support is not enabled. Please enable it in your AppKit configuration at cloud.reown.com."},CONNECTIONS_HOOK:{displayMessage:"Multi-Wallet Not Enabled",debugMessage:"Multi-wallet support is not enabled. Please enable it in your AppKit configuration at cloud.reown.com to use the useAppKitConnections hook."},CONNECTION_HOOK:{displayMessage:"Multi-Wallet Not Enabled",debugMessage:"Multi-wallet support is not enabled. Please enable it in your AppKit configuration at cloud.reown.com to use the useAppKitConnection hook."}}},IS_DEVELOPMENT:typeof Vn<"u"&&{}.NODE_ENV==="development",DEFAULT_ALLOWED_ANCESTORS:["http://localhost:*","https://localhost:*","http://127.0.0.1:*","https://127.0.0.1:*","https://*.pages.dev","https://*.vercel.app","https://*.ngrok-free.app","https://secure-mobile.walletconnect.com","https://secure-mobile.walletconnect.org"]},hp={caipNetworkIdToNumber(t){return t?Number(t.split(":")[1]):void 0},parseEvmChainId(t){return typeof t=="string"?this.caipNetworkIdToNumber(t):t},getNetworksByNamespace(t,e){return(t==null?void 0:t.filter(n=>n.chainNamespace===e))||[]},getFirstNetworkByNamespace(t,e){return this.getNetworksByNamespace(t,e)[0]},getNetworkNameByCaipNetworkId(t,e){var r;if(!e)return;const n=t.find(i=>i.caipNetworkId===e);if(n)return n.name;const[s]=e.split(":");return((r=U.CHAIN_NAME_MAP)==null?void 0:r[s])||void 0}},pp=["eip155","solana","polkadot","bip122","cosmos","sui","stacks"];var Rm=20,Pm=1,Js=1e6,bu=1e6,xm=-7,km=21,$m=!1,Qi="[big.js] ",sr=Qi+"Invalid ",wa=sr+"decimal places",Um=sr+"rounding mode",fp=Qi+"Division by zero",Te={},Sn=void 0,Dm=/^-?(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i;function gp(){function t(e){var n=this;if(!(n instanceof t))return e===Sn?gp():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(sr+"value");e=e===0&&1/e<0?"-0":String(e)}Mm(n,e)}n.constructor=t}return t.prototype=Te,t.DP=Rm,t.RM=Pm,t.NE=xm,t.PE=km,t.strict=$m,t.roundDown=0,t.roundHalfUp=1,t.roundHalfEven=2,t.roundUp=3,t}function Mm(t,e){var n,s,r;if(!Dm.test(e))throw Error(sr+"number");for(t.s=e.charAt(0)=="-"?(e=e.slice(1),-1):1,(n=e.indexOf("."))>-1&&(e=e.replace(".","")),(s=e.search(/e/i))>0?(n<0&&(n=s),n+=+e.slice(s+1),e=e.substring(0,s)):n<0&&(n=e.length),r=e.length,s=0;s<r&&e.charAt(s)=="0";)++s;if(s==r)t.c=[t.e=0];else{for(;r>0&&e.charAt(--r)=="0";);for(t.e=n-s-1,t.c=[],n=0;s<=r;)t.c[n++]=+e.charAt(s++)}return t}function rr(t,e,n,s){var r=t.c;if(n===Sn&&(n=t.constructor.RM),n!==0&&n!==1&&n!==2&&n!==3)throw Error(Um);if(e<1)s=n===3&&(s||!!r[0])||e===0&&(n===1&&r[0]>=5||n===2&&(r[0]>5||r[0]===5&&(s||r[1]!==Sn))),r.length=1,s?(t.e=t.e-e+1,r[0]=1):r[0]=t.e=0;else if(e<r.length){if(s=n===1&&r[e]>=5||n===2&&(r[e]>5||r[e]===5&&(s||r[e+1]!==Sn||r[e-1]&1))||n===3&&(s||!!r[0]),r.length=e,s){for(;++r[--e]>9;)if(r[e]=0,e===0){++t.e,r.unshift(1);break}}for(e=r.length;!r[--e];)r.pop()}return t}function ir(t,e,n){var s=t.e,r=t.c.join(""),i=r.length;if(e)r=r.charAt(0)+(i>1?"."+r.slice(1):"")+(s<0?"e":"e+")+s;else if(s<0){for(;++s;)r="0"+r;r="0."+r}else if(s>0)if(++s>i)for(s-=i;s--;)r+="0";else s<i&&(r=r.slice(0,s)+"."+r.slice(s));else i>1&&(r=r.charAt(0)+"."+r.slice(1));return t.s<0&&n?"-"+r:r}Te.abs=function(){var t=new this.constructor(this);return t.s=1,t};Te.cmp=function(t){var e,n=this,s=n.c,r=(t=new n.constructor(t)).c,i=n.s,o=t.s,a=n.e,c=t.e;if(!s[0]||!r[0])return s[0]?i:r[0]?-o:0;if(i!=o)return i;if(e=i<0,a!=c)return a>c^e?1:-1;for(o=(a=s.length)<(c=r.length)?a:c,i=-1;++i<o;)if(s[i]!=r[i])return s[i]>r[i]^e?1:-1;return a==c?0:a>c^e?1:-1};Te.div=function(t){var e=this,n=e.constructor,s=e.c,r=(t=new n(t)).c,i=e.s==t.s?1:-1,o=n.DP;if(o!==~~o||o<0||o>Js)throw Error(wa);if(!r[0])throw Error(fp);if(!s[0])return t.s=i,t.c=[t.e=0],t;var a,c,l,u,d,h=r.slice(),p=a=r.length,g=s.length,f=s.slice(0,a),y=f.length,b=t,_=b.c=[],A=0,E=o+(b.e=e.e-t.e)+1;for(b.s=i,i=E<0?0:E,h.unshift(0);y++<a;)f.push(0);do{for(l=0;l<10;l++){if(a!=(y=f.length))u=a>y?1:-1;else for(d=-1,u=0;++d<a;)if(r[d]!=f[d]){u=r[d]>f[d]?1:-1;break}if(u<0){for(c=y==a?r:h;y;){if(f[--y]<c[y]){for(d=y;d&&!f[--d];)f[d]=9;--f[d],f[y]+=10}f[y]-=c[y]}for(;!f[0];)f.shift()}else break}_[A++]=u?l:++l,f[0]&&u?f[y]=s[p]||0:f=[s[p]]}while((p++<g||f[0]!==Sn)&&i--);return!_[0]&&A!=1&&(_.shift(),b.e--,E--),A>E&&rr(b,E,n.RM,f[0]!==Sn),b};Te.eq=function(t){return this.cmp(t)===0};Te.gt=function(t){return this.cmp(t)>0};Te.gte=function(t){return this.cmp(t)>-1};Te.lt=function(t){return this.cmp(t)<0};Te.lte=function(t){return this.cmp(t)<1};Te.minus=Te.sub=function(t){var e,n,s,r,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((r=a<0)?(a=-a,s=l):(h=u,s=d),s.reverse(),c=a;c--;)s.push(0);s.reverse()}else for(n=((r=l.length<d.length)?l:d).length,a=c=0;c<n;c++)if(l[c]!=d[c]){r=l[c]<d[c];break}if(r&&(s=l,l=d,d=s,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};Te.mod=function(t){var e,n=this,s=n.constructor,r=n.s,i=(t=new s(t)).s;if(!t.c[0])throw Error(fp);return n.s=t.s=1,e=t.cmp(n)==1,n.s=r,t.s=i,e?new s(n):(r=s.DP,i=s.RM,s.DP=s.RM=0,n=n.div(t),s.DP=r,s.RM=i,this.minus(n.times(t)))};Te.neg=function(){var t=new this.constructor(this);return t.s=-t.s,t};Te.plus=Te.add=function(t){var e,n,s,r=this,i=r.constructor;if(t=new i(t),r.s!=t.s)return t.s=-t.s,r.minus(t);var o=r.e,a=r.c,c=t.e,l=t.c;if(!a[0]||!l[0])return l[0]||(a[0]?t=new i(r):t.s=r.s),t;if(a=a.slice(),e=o-c){for(e>0?(c=o,s=l):(e=-e,s=a),s.reverse();e--;)s.push(0);s.reverse()}for(a.length-l.length<0&&(s=l,l=a,a=s),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};Te.pow=function(t){var e=this,n=new e.constructor("1"),s=n,r=t<0;if(t!==~~t||t<-bu||t>bu)throw Error(sr+"exponent");for(r&&(t=-t);t&1&&(s=s.times(e)),t>>=1,!!t;)e=e.times(e);return r?n.div(s):s};Te.prec=function(t,e){if(t!==~~t||t<1||t>Js)throw Error(sr+"precision");return rr(new this.constructor(this),t,e)};Te.round=function(t,e){if(t===Sn)t=0;else if(t!==~~t||t<-Js||t>Js)throw Error(wa);return rr(new this.constructor(this),t+this.e+1,e)};Te.sqrt=function(){var t,e,n,s=this,r=s.constructor,i=s.s,o=s.e,a=new r("0.5");if(!s.c[0])return new r(s);if(i<0)throw Error(Qi+"No square root");i=Math.sqrt(+ir(s,!0,!0)),i===0||i===1/0?(e=s.c.join(""),e.length+o&1||(e+="0"),i=Math.sqrt(e),o=((o+1)/2|0)-(o<0||o&1),t=new r((i==1/0?"5e":(i=i.toExponential()).slice(0,i.indexOf("e")+1))+o)):t=new r(i+""),o=t.e+(r.DP+=4);do n=t,t=a.times(n.plus(s.div(n)));while(n.c.slice(0,o).join("")!==t.c.slice(0,o).join(""));return rr(t,(r.DP-=4)+t.e+1,r.RM)};Te.times=Te.mul=function(t){var e,n=this,s=n.constructor,r=n.c,i=(t=new s(t)).c,o=r.length,a=i.length,c=n.e,l=t.e;if(t.s=n.s==t.s?1:-1,!r[0]||!i[0])return t.c=[t.e=0],t;for(t.e=c+l,o<a&&(e=r,r=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]*r[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};Te.toExponential=function(t,e){var n=this,s=n.c[0];if(t!==Sn){if(t!==~~t||t<0||t>Js)throw Error(wa);for(n=rr(new n.constructor(n),++t,e);n.c.length<t;)n.c.push(0)}return ir(n,!0,!!s)};Te.toFixed=function(t,e){var n=this,s=n.c[0];if(t!==Sn){if(t!==~~t||t<0||t>Js)throw Error(wa);for(n=rr(new n.constructor(n),t+n.e+1,e),t=t+n.e+1;n.c.length<t;)n.c.push(0)}return ir(n,!1,!!s)};Te[Symbol.for("nodejs.util.inspect.custom")]=Te.toJSON=Te.toString=function(){var t=this,e=t.constructor;return ir(t,t.e<=e.NE||t.e>=e.PE,!!t.c[0])};Te.toNumber=function(){var t=+ir(this,!0,!0);if(this.constructor.strict===!0&&!this.eq(t.toString()))throw Error(Qi+"Imprecise conversion");return t};Te.toPrecision=function(t,e){var n=this,s=n.constructor,r=n.c[0];if(t!==Sn){if(t!==~~t||t<1||t>Js)throw Error(sr+"precision");for(n=rr(new s(n),t,e);n.c.length<t;)n.c.push(0)}return ir(n,t<=n.e||n.e<=s.NE||n.e>=s.PE,!!r)};Te.valueOf=function(){var t=this,e=t.constructor;if(e.strict===!0)throw Error(Qi+"valueOf disallowed");return ir(t,t.e<=e.NE||t.e>=e.PE,!0)};var Lm=gp();const Qn=Lm,Bm={bigNumber(t){return t?new Qn(t):new Qn(0)},multiply(t,e){if(t===void 0||e===void 0)return new Qn(0);const n=new Qn(t),s=new Qn(e);return n.times(s)},toFixed(t,e=2){return t===void 0||t===""?new Qn(0).toFixed(e):new Qn(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 Qn(e).toNumber()}},Fm=[{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"}]}],jm=[{type:"function",name:"approve",stateMutability:"nonpayable",inputs:[{name:"spender",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]}],qm=[{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"}]}],Wm={getERC20Abi:t=>U.USDT_CONTRACT_ADDRESSES.includes(t)?qm:Fm,getSwapAbi:()=>jm},tt={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,s,r]=e;if(!n||!s||!r)throw new Error(`Invalid CAIP-10 address: ${t}`);return{chainNamespace:n,chainId:s,address:r}},parseCaipNetworkId(t){const e=t.split(":");if(e.length!==2)throw new Error(`Invalid CAIP-2 network id: ${t}`);const[n,s]=e;if(!n||!s)throw new Error(`Invalid CAIP-2 network id: ${t}`);return{chainNamespace:n,chainId:s}}},qn={RPC_ERROR_CODE:{USER_REJECTED_REQUEST:4001,USER_REJECTED_METHODS:5002,USER_REJECTED:5e3},PROVIDER_RPC_ERROR_NAME:{PROVIDER_RPC:"ProviderRpcError",USER_REJECTED_REQUEST:"UserRejectedRequestError"},isRpcProviderError(t){try{if(typeof t=="object"&&t!==null){const e=t,n=typeof e.message=="string",s=typeof e.code=="number";return n&&s}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(qn.isRpcProviderError(t)){const e=t.code===qn.RPC_ERROR_CODE.USER_REJECTED_REQUEST,n=t.code===qn.RPC_ERROR_CODE.USER_REJECTED_METHODS;return e||n||qn.isUserRejectedMessage(t.message)}return t instanceof Error?qn.isUserRejectedMessage(t.message):!1}};let Hm=class extends Error{constructor(e,n){super(n.message,{cause:e}),this.name=qn.PROVIDER_RPC_ERROR_NAME.PROVIDER_RPC,this.code=n.code}},mp=class extends Hm{constructor(e){super(e,{code:qn.RPC_ERROR_CODE.USER_REJECTED_REQUEST,message:"User rejected the request"}),this.name=qn.PROVIDER_RPC_ERROR_NAME.USER_REJECTED_REQUEST}};const te={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"};function $a(t){if(!t)throw new Error("Namespace is required for CONNECTED_CONNECTOR_ID");return`@appkit/${t}:connected_connector_id`}const Z={setItem(t,e){ii()&&e!==void 0&&localStorage.setItem(t,e)},getItem(t){if(ii())return localStorage.getItem(t)||void 0},removeItem(t){ii()&&localStorage.removeItem(t)},clear(){ii()&&localStorage.clear()}};function ii(){return typeof window<"u"&&typeof localStorage<"u"}function Jo(t,e){return e==="light"?{"--w3m-accent":(t==null?void 0:t["--w3m-accent"])||"hsla(231, 100%, 70%, 1)","--w3m-background":"#fff"}:{"--w3m-accent":(t==null?void 0:t["--w3m-accent"])||"hsla(230, 100%, 67%, 1)","--w3m-background":"#202020"}}const Km=Symbol(),Eu=Object.getPrototypeOf,$c=new WeakMap,Vm=t=>t&&($c.has(t)?$c.get(t):Eu(t)===Object.prototype||Eu(t)===Array.prototype),zm=t=>Vm(t)&&t[Km]||null,vu=(t,e=!0)=>{$c.set(t,e)},Dl=t=>typeof t=="object"&&t!==null,Gm=t=>Dl(t)&&!eo.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),yp=(t,e)=>{const n=Uc.get(t);if((n==null?void 0:n[0])===e)return n[1];const s=Array.isArray(t)?[]:Object.create(Object.getPrototypeOf(t));return vu(s,!0),Uc.set(t,[e,s]),Reflect.ownKeys(t).forEach(r=>{if(Object.getOwnPropertyDescriptor(s,r))return;const i=Reflect.get(t,r),{enumerable:o}=Reflect.getOwnPropertyDescriptor(t,r),a={value:i,enumerable:o,configurable:!0};if(eo.has(i))vu(i,!1);else if(Es.has(i)){const[c,l]=Es.get(i);a.value=yp(c,l())}Object.defineProperty(s,r,a)}),Object.preventExtensions(s)},Ym=(t,e,n,s)=>({deleteProperty(r,i){const o=Reflect.get(r,i);n(i);const a=Reflect.deleteProperty(r,i);return a&&s(["delete",[i],o]),a},set(r,i,o,a){const c=!t()&&Reflect.has(r,i),l=Reflect.get(r,i,a);if(c&&(Cu(l,o)||Ei.has(o)&&Cu(l,Ei.get(o))))return!0;n(i),Dl(o)&&(o=zm(o)||o);const u=!Es.has(o)&&Xm(o)?ke(o):o;return e(i,u),Reflect.set(r,i,u,a),s(["set",[i],o,l]),!0}}),Es=new WeakMap,eo=new WeakSet,Uc=new WeakMap,Lo=[1],Ei=new WeakMap;let Cu=Object.is,Jm=(t,e)=>new Proxy(t,e),Xm=Gm,Zm=yp,Qm=Ym;function ke(t={}){if(!Dl(t))throw new Error("object required");const e=Ei.get(t);if(e)return e;let n=Lo[0];const s=new Set,r=(y,b=++Lo[0])=>{n!==b&&(i=n=b,s.forEach(_=>_(y,b)))};let i=n;const o=(y=Lo[0])=>(i!==y&&(i=y,c.forEach(([b])=>{const _=b[1](y);_>n&&(n=_)})),n),a=y=>(b,_)=>{const A=[...b];A[1]=[y,...A[1]],r(A,_)},c=new Map,l=(y,b)=>{const _=!eo.has(b)&&Es.get(b);if(_)if(s.size){const A=_[2](a(y));c.set(y,[_,A])}else c.set(y,[_])},u=y=>{var b;const _=c.get(y);_&&(c.delete(y),(b=_[1])==null||b.call(_))},d=y=>(s.add(y),s.size===1&&c.forEach(([_,A],E)=>{const N=_[2](a(E));c.set(E,[_,N])}),()=>{s.delete(y),s.size===0&&c.forEach(([_,A],E)=>{A&&(A(),c.set(E,[_]))})});let h=!0;const p=Qm(()=>h,l,u,r),g=Jm(t,p);Ei.set(t,g);const f=[t,o,d];return Es.set(g,f),Reflect.ownKeys(t).forEach(y=>{const b=Object.getOwnPropertyDescriptor(t,y);"value"in b&&b.writable&&(g[y]=t[y])}),h=!1,g}function nt(t,e,n){const s=Es.get(t);let r;const i=[],o=s[2];let a=!1;const l=o(u=>{if(i.push(u),n){e(i.splice(0));return}r||(r=Promise.resolve().then(()=>{r=void 0,a&&e(i.splice(0))}))});return a=!0,()=>{a=!1,l()}}function vi(t){const e=Es.get(t),[n,s]=e;return Zm(n,s())}function Ci(t){return eo.add(t),t}function ey(){return{proxyStateMap:Es,refSet:eo,snapCache:Uc,versionHolder:Lo,proxyCache:Ei}}function st(t,e,n,s){let r=t[e];return nt(t,()=>{const i=t[e];Object.is(r,i)||n(r=i)},s)}const{proxyStateMap:ty,snapCache:ny}=ey(),po=t=>ty.has(t);function sy(t){const e=[];let n=0;const s=new Map,r=new WeakMap,i=()=>{const l=ny.get(a),u=l==null?void 0:l[1];if(u&&!r.has(u)){const d=new Map(s);r.set(u,d)}},o=l=>r.get(l)||s;if(t){if(typeof t[Symbol.iterator]!="function")throw new TypeError(`proxyMap:
|
|
2
2
|
initial state must be iterable
|
|
3
3
|
tip: structure should be [[key, value]]`);for(const[l,u]of t)s.set(l,n),e[n++]=u}const a={data:e,index:n,epoch:0,get size(){return po(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(!po(this))throw new Error("Cannot perform mutations on a snapshot");const d=s.get(l);return d===void 0?(s.set(l,this.index),this.data[this.index++]=u):this.data[d]=u,this.epoch++,this},delete(l){if(!po(this))throw new Error("Cannot perform mutations on a snapshot");const u=s.get(l);return u===void 0?!1:(delete this.data[u],s.delete(l),this.epoch++,!0)},clear(){if(!po(this))throw new Error("Cannot perform mutations on a snapshot");this.data.length=0,this.index=0,this.epoch++,s.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=ke(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 Ua=(typeof Vn<"u"&&typeof{}<"u"?{}.NEXT_PUBLIC_SECURE_SITE_ORIGIN:void 0)||"https://secure.walletconnect.org",wp=[{label:"Meld.io",name:"meld",feeRange:"1-2%",url:"https://meldcrypto.com",supportedChains:["eip155","solana"]}],ry="WXETMuFUQmqqybHuRkSgxv:25B8LJHSfpG6LVjR2ytU5Cwh7Z4Sch2ocoU",we={FOUR_MINUTES_MS:24e4,TEN_SEC_MS:1e4,FIVE_SEC_MS:5e3,THREE_SEC_MS:3e3,ONE_SEC_MS:1e3,SECURE_SITE:Ua,SECURE_SITE_DASHBOARD:`${Ua}/dashboard`,SECURE_SITE_FAVICON:`${Ua}/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:[U.CHAIN.EVM,U.CHAIN.SOLANA],SEND_PARAMS_SUPPORTED_CHAINS:[U.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:[U.CHAIN.EVM],ONRAMP_SUPPORTED_CHAIN_NAMESPACES:[U.CHAIN.EVM,U.CHAIN.SOLANA],PAY_WITH_EXCHANGE_SUPPORTED_CHAIN_NAMESPACES:[U.CHAIN.EVM,U.CHAIN.SOLANA],ACTIVITY_ENABLED_CHAIN_NAMESPACES:[U.CHAIN.EVM],NATIVE_TOKEN_ADDRESS:{eip155:"0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",solana:"So11111111111111111111111111111111111111111",polkadot:"0x",bip122:"0x",cosmos:"0x",sui:"0x",stacks:"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:[U.CHAIN.EVM,U.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},DEFAULT_REMOTE_FEATURES_DISABLED:{email:!1,socials:!1,swaps:!1,onramp:!1,activity:!1,reownBranding:!1,emailCapture:!1,reownAuthentication:!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},DEFAULT_SOCIALS:["google","x","farcaster","discord","apple","github","facebook"],DEFAULT_ACCOUNT_TYPES:{bip122:"payment",eip155:"smartAccount",polkadot:"eoa",solana:"eoa"},ADAPTER_TYPES:{UNIVERSAL:"universal",SOLANA:"solana",WAGMI:"wagmi",ETHERS:"ethers",ETHERS5:"ethers5",BITCOIN:"bitcoin"},SIWX_DEFAULTS:{signOutOnDisconnect:!0}},L={cacheExpiry:{portfolio:3e4,nativeBalance:3e4,ens:3e5,identity:3e5,transactionsHistory:15e3,tokenPrice:15e3,latestAppKitVersion:6048e5},isCacheExpired(t,e){return Date.now()-t>e},getActiveNetworkProps(){const t=L.getActiveNamespace(),e=L.getActiveCaipNetworkId(),n=e?e.split(":")[1]:void 0,s=n?isNaN(Number(n))?n:Number(n):void 0;return{namespace:t,caipNetworkId:e,chainId:s}},setWalletConnectDeepLink({name:t,href:e}){try{Z.setItem(te.DEEPLINK_CHOICE,JSON.stringify({href:e,name:t}))}catch{console.info("Unable to set WalletConnect deep link")}},getWalletConnectDeepLink(){try{const t=Z.getItem(te.DEEPLINK_CHOICE);if(t)return JSON.parse(t)}catch{console.info("Unable to get WalletConnect deep link")}},deleteWalletConnectDeepLink(){try{Z.removeItem(te.DEEPLINK_CHOICE)}catch{console.info("Unable to delete WalletConnect deep link")}},setActiveNamespace(t){try{Z.setItem(te.ACTIVE_NAMESPACE,t)}catch{console.info("Unable to set active namespace")}},setActiveCaipNetworkId(t){try{Z.setItem(te.ACTIVE_CAIP_NETWORK_ID,t),L.setActiveNamespace(t.split(":")[0])}catch{console.info("Unable to set active caip network id")}},getActiveCaipNetworkId(){try{return Z.getItem(te.ACTIVE_CAIP_NETWORK_ID)}catch{console.info("Unable to get active caip network id");return}},deleteActiveCaipNetworkId(){try{Z.removeItem(te.ACTIVE_CAIP_NETWORK_ID)}catch{console.info("Unable to delete active caip network id")}},deleteConnectedConnectorId(t){try{const e=$a(t);Z.removeItem(e)}catch{console.info("Unable to delete connected connector id")}},setAppKitRecent(t){try{const e=L.getRecentWallets();e.find(s=>s.id===t.id)||(e.unshift(t),e.length>2&&e.pop(),Z.setItem(te.RECENT_WALLETS,JSON.stringify(e)),Z.setItem(te.RECENT_WALLET,JSON.stringify(t)))}catch{console.info("Unable to set AppKit recent")}},getRecentWallets(){try{const t=Z.getItem(te.RECENT_WALLETS);return t?JSON.parse(t):[]}catch{console.info("Unable to get AppKit recent")}return[]},getRecentWallet(){try{const t=Z.getItem(te.RECENT_WALLET);return t?JSON.parse(t):null}catch{console.info("Unable to get AppKit recent")}return null},deleteRecentWallet(){try{Z.removeItem(te.RECENT_WALLET)}catch{console.info("Unable to delete AppKit recent")}},setConnectedConnectorId(t,e){try{const n=$a(t);Z.setItem(n,e)}catch{console.info("Unable to set Connected Connector Id")}},getActiveNamespace(){try{return Z.getItem(te.ACTIVE_NAMESPACE)}catch{console.info("Unable to get active namespace")}},getConnectedConnectorId(t){if(t)try{const e=$a(t);return Z.getItem(e)}catch{console.info("Unable to get connected connector id in namespace",t)}},setConnectedSocialProvider(t){try{Z.setItem(te.CONNECTED_SOCIAL,t)}catch{console.info("Unable to set connected social provider")}},getConnectedSocialProvider(){try{return Z.getItem(te.CONNECTED_SOCIAL)}catch{console.info("Unable to get connected social provider")}},deleteConnectedSocialProvider(){try{Z.removeItem(te.CONNECTED_SOCIAL)}catch{console.info("Unable to delete connected social provider")}},getConnectedSocialUsername(){try{return Z.getItem(te.CONNECTED_SOCIAL_USERNAME)}catch{console.info("Unable to get connected social username")}},getStoredActiveCaipNetworkId(){var n;const t=Z.getItem(te.ACTIVE_CAIP_NETWORK_ID);return(n=t==null?void 0:t.split(":"))==null?void 0:n[1]},setConnectionStatus(t){try{Z.setItem(te.CONNECTION_STATUS,t)}catch{console.info("Unable to set connection status")}},getConnectionStatus(){try{return Z.getItem(te.CONNECTION_STATUS)}catch{return}},getConnectedNamespaces(){try{const t=Z.getItem(te.CONNECTED_NAMESPACES);return t!=null&&t.length?t.split(","):[]}catch{return[]}},setConnectedNamespaces(t){try{const e=Array.from(new Set(t));Z.setItem(te.CONNECTED_NAMESPACES,e.join(","))}catch{console.info("Unable to set namespaces in storage")}},addConnectedNamespace(t){try{const e=L.getConnectedNamespaces();e.includes(t)||(e.push(t),L.setConnectedNamespaces(e))}catch{console.info("Unable to add connected namespace")}},removeConnectedNamespace(t){try{const e=L.getConnectedNamespaces(),n=e.indexOf(t);n>-1&&(e.splice(n,1),L.setConnectedNamespaces(e))}catch{console.info("Unable to remove connected namespace")}},getTelegramSocialProvider(){try{return Z.getItem(te.TELEGRAM_SOCIAL_PROVIDER)}catch{return console.info("Unable to get telegram social provider"),null}},setTelegramSocialProvider(t){try{Z.setItem(te.TELEGRAM_SOCIAL_PROVIDER,t)}catch{console.info("Unable to set telegram social provider")}},removeTelegramSocialProvider(){try{Z.removeItem(te.TELEGRAM_SOCIAL_PROVIDER)}catch{console.info("Unable to remove telegram social provider")}},getBalanceCache(){let t={};try{const e=Z.getItem(te.PORTFOLIO_CACHE);t=e?JSON.parse(e):{}}catch{console.info("Unable to get balance cache")}return t},removeAddressFromBalanceCache(t){try{const e=L.getBalanceCache();Z.setItem(te.PORTFOLIO_CACHE,JSON.stringify({...e,[t]:void 0}))}catch{console.info("Unable to remove address from balance cache",t)}},getBalanceCacheForCaipAddress(t){try{const n=L.getBalanceCache()[t];if(n&&!this.isCacheExpired(n.timestamp,this.cacheExpiry.portfolio))return n.balance;L.removeAddressFromBalanceCache(t)}catch{console.info("Unable to get balance cache for address",t)}},updateBalanceCache(t){try{const e=L.getBalanceCache();e[t.caipAddress]=t,Z.setItem(te.PORTFOLIO_CACHE,JSON.stringify(e))}catch{console.info("Unable to update balance cache",t)}},getNativeBalanceCache(){let t={};try{const e=Z.getItem(te.NATIVE_BALANCE_CACHE);t=e?JSON.parse(e):{}}catch{console.info("Unable to get balance cache")}return t},removeAddressFromNativeBalanceCache(t){try{const e=L.getBalanceCache();Z.setItem(te.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=L.getNativeBalanceCache()[t];if(n&&!this.isCacheExpired(n.timestamp,this.cacheExpiry.nativeBalance))return n;console.info("Discarding cache for address",t),L.removeAddressFromBalanceCache(t)}catch{console.info("Unable to get balance cache for address",t)}},updateNativeBalanceCache(t){try{const e=L.getNativeBalanceCache();e[t.caipAddress]=t,Z.setItem(te.NATIVE_BALANCE_CACHE,JSON.stringify(e))}catch{console.info("Unable to update balance cache",t)}},getEnsCache(){let t={};try{const e=Z.getItem(te.ENS_CACHE);t=e?JSON.parse(e):{}}catch{console.info("Unable to get ens name cache")}return t},getEnsFromCacheForAddress(t){try{const n=L.getEnsCache()[t];if(n&&!this.isCacheExpired(n.timestamp,this.cacheExpiry.ens))return n.ens;L.removeEnsFromCache(t)}catch{console.info("Unable to get ens name from cache",t)}},updateEnsCache(t){try{const e=L.getEnsCache();e[t.address]=t,Z.setItem(te.ENS_CACHE,JSON.stringify(e))}catch{console.info("Unable to update ens name cache",t)}},removeEnsFromCache(t){try{const e=L.getEnsCache();Z.setItem(te.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=Z.getItem(te.IDENTITY_CACHE);t=e?JSON.parse(e):{}}catch{console.info("Unable to get identity cache")}return t},getIdentityFromCacheForAddress(t){try{const n=L.getIdentityCache()[t];if(n&&!this.isCacheExpired(n.timestamp,this.cacheExpiry.identity))return n.identity;L.removeIdentityFromCache(t)}catch{console.info("Unable to get identity from cache",t)}},updateIdentityCache(t){try{const e=L.getIdentityCache();e[t.address]={identity:t.identity,timestamp:t.timestamp},Z.setItem(te.IDENTITY_CACHE,JSON.stringify(e))}catch{console.info("Unable to update identity cache",t)}},removeIdentityFromCache(t){try{const e=L.getIdentityCache();Z.setItem(te.IDENTITY_CACHE,JSON.stringify({...e,[t]:void 0}))}catch{console.info("Unable to remove identity from cache",t)}},clearAddressCache(){try{Z.removeItem(te.PORTFOLIO_CACHE),Z.removeItem(te.NATIVE_BALANCE_CACHE),Z.removeItem(te.ENS_CACHE),Z.removeItem(te.IDENTITY_CACHE),Z.removeItem(te.HISTORY_TRANSACTIONS_CACHE)}catch{console.info("Unable to clear address cache")}},setPreferredAccountTypes(t){try{Z.setItem(te.PREFERRED_ACCOUNT_TYPES,JSON.stringify(t))}catch{console.info("Unable to set preferred account types",t)}},getPreferredAccountTypes(){try{const t=Z.getItem(te.PREFERRED_ACCOUNT_TYPES);return t?JSON.parse(t):{}}catch{console.info("Unable to get preferred account types")}return{}},setConnections(t,e){try{const n=L.getConnections(),s=n[e]??[],r=new Map;for(const o of s)r.set(o.connectorId,{...o});for(const o of t){const a=r.get(o.connectorId),c=o.connectorId===U.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 r.set(o.connectorId,{...o})}const i={...n,[e]:Array.from(r.values())};Z.setItem(te.CONNECTIONS,JSON.stringify(i))}catch(n){console.error("Unable to sync connections to storage",n)}},getConnections(){try{const t=Z.getItem(te.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 s=L.getConnections(),r=s[n]??[],i=new Map(r.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())})),Z.setItem(te.CONNECTIONS,JSON.stringify({...s,[n]:Array.from(i.values())}))}catch{console.error(`Unable to remove address "${e}" from connector "${t}" in namespace "${n}"`)}},getDisconnectedConnectorIds(){try{const t=Z.getItem(te.DISCONNECTED_CONNECTOR_IDS);return t?JSON.parse(t):{}}catch{console.info("Unable to get disconnected connector ids")}return{}},addDisconnectedConnectorId(t,e){try{const n=L.getDisconnectedConnectorIds(),s=n[e]??[];s.push(t),Z.setItem(te.DISCONNECTED_CONNECTOR_IDS,JSON.stringify({...n,[e]:Array.from(new Set(s))}))}catch{console.error(`Unable to set disconnected connector id "${t}" for namespace "${e}"`)}},removeDisconnectedConnectorId(t,e){try{const n=L.getDisconnectedConnectorIds();let s=n[e]??[];s=s.filter(r=>r.toLowerCase()!==t.toLowerCase()),Z.setItem(te.DISCONNECTED_CONNECTOR_IDS,JSON.stringify({...n,[e]:Array.from(new Set(s))}))}catch{console.error(`Unable to remove disconnected connector id "${t}" for namespace "${e}"`)}},isConnectorDisconnected(t,e){try{return(L.getDisconnectedConnectorIds()[e]??[]).some(r=>r.toLowerCase()===t.toLowerCase())}catch{console.info(`Unable to get disconnected connector id "${t}" for namespace "${e}"`)}return!1},getTransactionsCache(){try{const t=Z.getItem(te.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 r=(n=L.getTransactionsCache()[t])==null?void 0:n[e];if(r&&!this.isCacheExpired(r.timestamp,this.cacheExpiry.transactionsHistory))return r.transactions;L.removeTransactionsCache({address:t,chainId:e})}catch{console.info("Unable to get transactions cache")}},updateTransactionsCache({address:t,chainId:e="",timestamp:n,transactions:s}){try{const r=L.getTransactionsCache();r[t]={...r[t],[e]:{timestamp:n,transactions:s}},Z.setItem(te.HISTORY_TRANSACTIONS_CACHE,JSON.stringify(r))}catch{console.info("Unable to update transactions cache",{address:t,chainId:e,timestamp:n,transactions:s})}},removeTransactionsCache({address:t,chainId:e}){try{const n=L.getTransactionsCache(),s=(n==null?void 0:n[t])||{},{[e]:r,...i}=s;Z.setItem(te.HISTORY_TRANSACTIONS_CACHE,JSON.stringify({...n,[t]:i}))}catch{console.info("Unable to remove transactions cache",{address:t,chainId:e})}},getTokenPriceCache(){try{const t=Z.getItem(te.TOKEN_PRICE_CACHE);return t?JSON.parse(t):{}}catch{console.info("Unable to get token price cache")}return{}},getTokenPriceCacheForAddresses(t){try{const n=L.getTokenPriceCache()[t.join(",")];if(n&&!this.isCacheExpired(n.timestamp,this.cacheExpiry.tokenPrice))return n.tokenPrice;L.removeTokenPriceCache(t)}catch{console.info("Unable to get token price cache for addresses",t)}},updateTokenPriceCache(t){try{const e=L.getTokenPriceCache();e[t.addresses.join(",")]={timestamp:t.timestamp,tokenPrice:t.tokenPrice},Z.setItem(te.TOKEN_PRICE_CACHE,JSON.stringify(e))}catch{console.info("Unable to update token price cache",t)}},removeTokenPriceCache(t){try{const e=L.getTokenPriceCache();Z.setItem(te.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=Z.getItem(te.LATEST_APPKIT_VERSION);return t?JSON.parse(t):{}}catch{console.info("Unable to get latest AppKit version cache")}return{}},updateLatestAppKitVersion(t){try{const e=L.getLatestAppKitVersionCache();e.timestamp=t.timestamp,e.version=t.version,Z.setItem(te.LATEST_APPKIT_VERSION,JSON.stringify(e))}catch{console.info("Unable to update latest AppKit version on local storage",t)}}},J={isMobile(){var t;return this.isClient()?!!(window!=null&&window.matchMedia&&typeof window.matchMedia=="function"&&((t=window.matchMedia("(pointer:coarse)"))!=null&&t.matches)||/Android|webOS|iPhone|iPad|iPod|BlackBerry|Opera Mini/u.test(navigator.userAgent)):!1},checkCaipNetwork(t,e=""){return t==null?void 0:t.caipNetworkId.toLocaleLowerCase().includes(e.toLowerCase())},isAndroid(){if(!this.isMobile())return!1;const t=window==null?void 0:window.navigator.userAgent.toLowerCase();return J.isMobile()&&t.includes("android")},isIos(){if(!this.isMobile())return!1;const t=window==null?void 0:window.navigator.userAgent.toLowerCase();return t.includes("iphone")||t.includes("ipad")},isSafari(){return this.isClient()?(window==null?void 0:window.navigator.userAgent.toLowerCase()).includes("safari"):!1},isClient(){return typeof window<"u"},isPairingExpired(t){return t?t-Date.now()<=we.TEN_SEC_MS:!0},isAllowedRetry(t,e=we.ONE_SEC_MS){return Date.now()-t>=e},copyToClopboard(t){navigator.clipboard.writeText(t)},isIframe(){try{return(window==null?void 0:window.self)!==(window==null?void 0:window.top)}catch{return!1}},isSafeApp(){var t,e;if(J.isClient()&&window.self!==window.top)try{const n=(e=(t=window==null?void 0:window.location)==null?void 0:t.ancestorOrigins)==null?void 0:e[0],s="https://app.safe.global";if(n){const r=new URL(n),i=new URL(s);return r.hostname===i.hostname}}catch{return!1}return!1},getPairingExpiry(){return Date.now()+we.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(...s)=>{function r(){t(...s)}n&&clearTimeout(n),n=setTimeout(r,e)}},isHttpUrl(t){return t.startsWith("http://")||t.startsWith("https://")},formatNativeUrl(t,e,n=null){if(J.isHttpUrl(t))return this.formatUniversalUrl(t,e);let s=t,r=n;s.includes("://")||(s=t.replaceAll("/","").replaceAll(":",""),s=`${s}://`),s.endsWith("/")||(s=`${s}/`),r&&!(r!=null&&r.endsWith("/"))&&(r=`${r}/`),this.isTelegram()&&this.isAndroid()&&(e=encodeURIComponent(e));const i=encodeURIComponent(e);return{redirect:`${s}wc?uri=${i}`,redirectUniversalLink:r?`${r}wc?uri=${i}`:void 0,href:s}},formatUniversalUrl(t,e){if(!J.isHttpUrl(t))return this.formatNativeUrl(t,e);let n=t;n.endsWith("/")||(n=`${n}/`);const s=encodeURIComponent(e);return{redirect:`${n}wc?uri=${s}`,href:n}},getOpenTargetForPlatform(t){return t==="popupWindow"?t:this.isTelegram()?L.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,s;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=(s=window==null?void 0:window.navigator)==null?void 0:s.standalone;return!!(t||e)},async preloadImage(t){const e=new Promise((n,s)=>{const r=new Image;r.onload=n,r.onerror=s,r.crossOrigin="anonymous",r.src=t});return Promise.race([e,J.wait(2e3)])},parseBalance(t,e){let n="0.000";if(typeof t=="string"){const c=Number(t);if(!isNaN(c)){const l=(Math.floor(c*1e3)/1e3).toFixed(3);l&&(n=l)}}const[s,r]=n.split("."),i=s||"0",o=r||"000";return{formattedText:`${i}.${o}${e?` ${e}`:""}`,value:i,decimals:o,symbol:e}},getApiUrl(){return U.W3M_API_URL},getBlockchainApiUrl(){return U.BLOCKCHAIN_API_RPC_URL},getAnalyticsUrl(){return U.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((s,r)=>{n[s]=r}),e.sort((s,r)=>{const i=n[s.id],o=n[r.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,s]=e.split(".");return{dollars:n,pennies:s}},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);default:return!1}},uniqueBy(t,e){const n=new Set;return t.filter(s=>{const r=s[e];return n.has(r)?!1:(n.add(r),!0)})},generateSdkVersion(t,e,n){const r=t.length===0?we.ADAPTER_TYPES.UNIVERSAL:t.map(i=>i.adapterType).join(",");return`${e}-${r}-${n}`},createAccount(t,e,n,s,r){return{namespace:t,address:e,type:n,publicKey:s,path:r}},isCaipAddress(t){if(typeof t!="string")return!1;const e=t.split(":"),n=e[0];return e.filter(Boolean).length===3&&n in U.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 r="provider_authorization_url=",i=t.substring(t.indexOf(r)+r.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 s=t.indexOf(e);if(s===-1)throw new Error(`${e} parameter not found in the URL: ${t}`);const r=t.indexOf("&",s),i=e.length,o=r!==-1?r:t.length,a=t.substring(0,s+i),c=t.substring(s+i,o),l=t.substring(r),u=c+n;return a+u+l}},ms={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"},en={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"}},Au={address:/^0x(?:[A-Fa-f0-9]{40})$/u,transactionHash:/^0x(?:[A-Fa-f0-9]{64})$/u,signedMessage:/^0x(?:[a-fA-F0-9]{62,})$/u},Dc={set(t,e){Da.isClient&&localStorage.setItem(`${ms.STORAGE_KEY}${t}`,e)},get(t){return Da.isClient?localStorage.getItem(`${ms.STORAGE_KEY}${t}`):null},delete(t,e){Da.isClient&&(e?localStorage.removeItem(t):localStorage.removeItem(`${ms.STORAGE_KEY}${t}`))}},fo=30*1e3,Da={checkIfAllowedToTriggerEmail(){const t=Dc.get(ms.LAST_EMAIL_LOGIN_TIME);if(t){const e=Date.now()-Number(t);if(e<fo){const n=Math.ceil((fo-e)/1e3);throw new Error(`Please try again after ${n} seconds`)}}},getTimeToNextEmailLogin(){const t=Dc.get(ms.LAST_EMAIL_LOGIN_TIME);if(t){const e=Date.now()-Number(t);if(e<fo)return Math.ceil((fo-e)/1e3)}return 0},checkIfRequestExists(t){return en.NOT_SAFE_RPC_METHODS.includes(t.method)||en.SAFE_RPC_METHODS.includes(t.method)},getResponseType(t){return typeof t=="string"&&((t==null?void 0:t.match(Au.transactionHash))||(t==null?void 0:t.match(Au.signedMessage)))?ms.RPC_RESPONSE_TYPE_TX:ms.RPC_RESPONSE_TYPE_OBJECT},checkIfRequestIsSafe(t){return en.SAFE_RPC_METHODS.includes(t.method)},isClient:typeof window<"u"};function bp(t,e){let n=t.toString();const s=n.startsWith("-");s&&(n=n.slice(1)),n=n.padStart(e,"0");let[r,i]=[n.slice(0,n.length-e),n.slice(n.length-e)];return i=i.replace(/(0+)$/,""),`${s?"-":""}${r||"0"}${i?`.${i}`:""}`}const mO=[{inputs:[{components:[{name:"target",type:"address"},{name:"allowFailure",type:"bool"},{name:"callData",type:"bytes"}],name:"calls",type:"tuple[]"}],name:"aggregate3",outputs:[{components:[{name:"success",type:"bool"},{name:"returnData",type:"bytes"}],name:"returnData",type:"tuple[]"}],stateMutability:"view",type:"function"},{inputs:[],name:"getCurrentBlockTimestamp",outputs:[{internalType:"uint256",name:"timestamp",type:"uint256"}],stateMutability:"view",type:"function"}],yO=[{name:"query",type:"function",stateMutability:"view",inputs:[{type:"tuple[]",name:"queries",components:[{type:"address",name:"sender"},{type:"string[]",name:"urls"},{type:"bytes",name:"data"}]}],outputs:[{type:"bool[]",name:"failures"},{type:"bytes[]",name:"responses"}]},{name:"HttpError",type:"error",inputs:[{type:"uint16",name:"status"},{type:"string",name:"message"}]}],Ep=[{inputs:[{name:"dns",type:"bytes"}],name:"DNSDecodingFailed",type:"error"},{inputs:[{name:"ens",type:"string"}],name:"DNSEncodingFailed",type:"error"},{inputs:[],name:"EmptyAddress",type:"error"},{inputs:[{name:"status",type:"uint16"},{name:"message",type:"string"}],name:"HttpError",type:"error"},{inputs:[],name:"InvalidBatchGatewayResponse",type:"error"},{inputs:[{name:"errorData",type:"bytes"}],name:"ResolverError",type:"error"},{inputs:[{name:"name",type:"bytes"},{name:"resolver",type:"address"}],name:"ResolverNotContract",type:"error"},{inputs:[{name:"name",type:"bytes"}],name:"ResolverNotFound",type:"error"},{inputs:[{name:"primary",type:"string"},{name:"primaryAddress",type:"bytes"}],name:"ReverseAddressMismatch",type:"error"},{inputs:[{internalType:"bytes4",name:"selector",type:"bytes4"}],name:"UnsupportedResolverProfile",type:"error"}],wO=[...Ep,{name:"resolveWithGateways",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes"},{name:"data",type:"bytes"},{name:"gateways",type:"string[]"}],outputs:[{name:"",type:"bytes"},{name:"address",type:"address"}]}],bO=[...Ep,{name:"reverseWithGateways",type:"function",stateMutability:"view",inputs:[{type:"bytes",name:"reverseName"},{type:"uint256",name:"coinType"},{type:"string[]",name:"gateways"}],outputs:[{type:"string",name:"resolvedName"},{type:"address",name:"resolver"},{type:"address",name:"reverseResolver"}]}],EO=[{name:"text",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"},{name:"key",type:"string"}],outputs:[{name:"",type:"string"}]}],vO=[{name:"addr",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"}],outputs:[{name:"",type:"address"}]},{name:"addr",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"},{name:"coinType",type:"uint256"}],outputs:[{name:"",type:"bytes"}]}],CO=[{name:"isValidSignature",type:"function",stateMutability:"view",inputs:[{name:"hash",type:"bytes32"},{name:"signature",type:"bytes"}],outputs:[{name:"",type:"bytes4"}]}],AO=[{inputs:[{name:"_signer",type:"address"},{name:"_hash",type:"bytes32"},{name:"_signature",type:"bytes"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[{name:"_signer",type:"address"},{name:"_hash",type:"bytes32"},{name:"_signature",type:"bytes"}],outputs:[{type:"bool"}],stateMutability:"nonpayable",type:"function",name:"isValidSig"}],go=[{type:"event",name:"Approval",inputs:[{indexed:!0,name:"owner",type:"address"},{indexed:!0,name:"spender",type:"address"},{indexed:!1,name:"value",type:"uint256"}]},{type:"event",name:"Transfer",inputs:[{indexed:!0,name:"from",type:"address"},{indexed:!0,name:"to",type:"address"},{indexed:!1,name:"value",type:"uint256"}]},{type:"function",name:"allowance",stateMutability:"view",inputs:[{name:"owner",type:"address"},{name:"spender",type:"address"}],outputs:[{type:"uint256"}]},{type:"function",name:"approve",stateMutability:"nonpayable",inputs:[{name:"spender",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]},{type:"function",name:"balanceOf",stateMutability:"view",inputs:[{name:"account",type:"address"}],outputs:[{type:"uint256"}]},{type:"function",name:"decimals",stateMutability:"view",inputs:[],outputs:[{type:"uint8"}]},{type:"function",name:"name",stateMutability:"view",inputs:[],outputs:[{type:"string"}]},{type:"function",name:"symbol",stateMutability:"view",inputs:[],outputs:[{type:"string"}]},{type:"function",name:"totalSupply",stateMutability:"view",inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"transfer",stateMutability:"nonpayable",inputs:[{name:"recipient",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]},{type:"function",name:"transferFrom",stateMutability:"nonpayable",inputs:[{name:"sender",type:"address"},{name:"recipient",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]}],_O=[{type:"event",name:"Approval",inputs:[{indexed:!0,name:"owner",type:"address"},{indexed:!0,name:"spender",type:"address"},{indexed:!1,name:"value",type:"uint256"}]},{type:"event",name:"Transfer",inputs:[{indexed:!0,name:"from",type:"address"},{indexed:!0,name:"to",type:"address"},{indexed:!1,name:"value",type:"uint256"}]},{type:"function",name:"allowance",stateMutability:"view",inputs:[{name:"owner",type:"address"},{name:"spender",type:"address"}],outputs:[{type:"uint256"}]},{type:"function",name:"approve",stateMutability:"nonpayable",inputs:[{name:"spender",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]},{type:"function",name:"balanceOf",stateMutability:"view",inputs:[{name:"account",type:"address"}],outputs:[{type:"uint256"}]},{type:"function",name:"decimals",stateMutability:"view",inputs:[],outputs:[{type:"uint8"}]},{type:"function",name:"name",stateMutability:"view",inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"symbol",stateMutability:"view",inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"totalSupply",stateMutability:"view",inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"transfer",stateMutability:"nonpayable",inputs:[{name:"recipient",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]},{type:"function",name:"transferFrom",stateMutability:"nonpayable",inputs:[{name:"sender",type:"address"},{name:"recipient",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]}],IO=[{inputs:[{internalType:"address",name:"sender",type:"address"},{internalType:"uint256",name:"balance",type:"uint256"},{internalType:"uint256",name:"needed",type:"uint256"},{internalType:"uint256",name:"tokenId",type:"uint256"}],name:"ERC1155InsufficientBalance",type:"error"},{inputs:[{internalType:"address",name:"approver",type:"address"}],name:"ERC1155InvalidApprover",type:"error"},{inputs:[{internalType:"uint256",name:"idsLength",type:"uint256"},{internalType:"uint256",name:"valuesLength",type:"uint256"}],name:"ERC1155InvalidArrayLength",type:"error"},{inputs:[{internalType:"address",name:"operator",type:"address"}],name:"ERC1155InvalidOperator",type:"error"},{inputs:[{internalType:"address",name:"receiver",type:"address"}],name:"ERC1155InvalidReceiver",type:"error"},{inputs:[{internalType:"address",name:"sender",type:"address"}],name:"ERC1155InvalidSender",type:"error"},{inputs:[{internalType:"address",name:"operator",type:"address"},{internalType:"address",name:"owner",type:"address"}],name:"ERC1155MissingApprovalForAll",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"account",type:"address"},{indexed:!0,internalType:"address",name:"operator",type:"address"},{indexed:!1,internalType:"bool",name:"approved",type:"bool"}],name:"ApprovalForAll",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"operator",type:"address"},{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256[]",name:"ids",type:"uint256[]"},{indexed:!1,internalType:"uint256[]",name:"values",type:"uint256[]"}],name:"TransferBatch",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"operator",type:"address"},{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"id",type:"uint256"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"TransferSingle",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"string",name:"value",type:"string"},{indexed:!0,internalType:"uint256",name:"id",type:"uint256"}],name:"URI",type:"event"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"uint256",name:"id",type:"uint256"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address[]",name:"accounts",type:"address[]"},{internalType:"uint256[]",name:"ids",type:"uint256[]"}],name:"balanceOfBatch",outputs:[{internalType:"uint256[]",name:"",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"},{internalType:"address",name:"operator",type:"address"}],name:"isApprovedForAll",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256[]",name:"ids",type:"uint256[]"},{internalType:"uint256[]",name:"values",type:"uint256[]"},{internalType:"bytes",name:"data",type:"bytes"}],name:"safeBatchTransferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"id",type:"uint256"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"bytes",name:"data",type:"bytes"}],name:"safeTransferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"operator",type:"address"},{internalType:"bool",name:"approved",type:"bool"}],name:"setApprovalForAll",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes4",name:"interfaceId",type:"bytes4"}],name:"supportsInterface",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"",type:"uint256"}],name:"uri",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"}],SO=[{type:"event",name:"Approval",inputs:[{indexed:!0,name:"owner",type:"address"},{indexed:!0,name:"spender",type:"address"},{indexed:!0,name:"tokenId",type:"uint256"}]},{type:"event",name:"ApprovalForAll",inputs:[{indexed:!0,name:"owner",type:"address"},{indexed:!0,name:"operator",type:"address"},{indexed:!1,name:"approved",type:"bool"}]},{type:"event",name:"Transfer",inputs:[{indexed:!0,name:"from",type:"address"},{indexed:!0,name:"to",type:"address"},{indexed:!0,name:"tokenId",type:"uint256"}]},{type:"function",name:"approve",stateMutability:"payable",inputs:[{name:"spender",type:"address"},{name:"tokenId",type:"uint256"}],outputs:[]},{type:"function",name:"balanceOf",stateMutability:"view",inputs:[{name:"account",type:"address"}],outputs:[{type:"uint256"}]},{type:"function",name:"getApproved",stateMutability:"view",inputs:[{name:"tokenId",type:"uint256"}],outputs:[{type:"address"}]},{type:"function",name:"isApprovedForAll",stateMutability:"view",inputs:[{name:"owner",type:"address"},{name:"operator",type:"address"}],outputs:[{type:"bool"}]},{type:"function",name:"name",stateMutability:"view",inputs:[],outputs:[{type:"string"}]},{type:"function",name:"ownerOf",stateMutability:"view",inputs:[{name:"tokenId",type:"uint256"}],outputs:[{name:"owner",type:"address"}]},{type:"function",name:"safeTransferFrom",stateMutability:"payable",inputs:[{name:"from",type:"address"},{name:"to",type:"address"},{name:"tokenId",type:"uint256"}],outputs:[]},{type:"function",name:"safeTransferFrom",stateMutability:"nonpayable",inputs:[{name:"from",type:"address"},{name:"to",type:"address"},{name:"id",type:"uint256"},{name:"data",type:"bytes"}],outputs:[]},{type:"function",name:"setApprovalForAll",stateMutability:"nonpayable",inputs:[{name:"operator",type:"address"},{name:"approved",type:"bool"}],outputs:[]},{type:"function",name:"symbol",stateMutability:"view",inputs:[],outputs:[{type:"string"}]},{type:"function",name:"tokenByIndex",stateMutability:"view",inputs:[{name:"index",type:"uint256"}],outputs:[{type:"uint256"}]},{type:"function",name:"tokenByIndex",stateMutability:"view",inputs:[{name:"owner",type:"address"},{name:"index",type:"uint256"}],outputs:[{name:"tokenId",type:"uint256"}]},{type:"function",name:"tokenURI",stateMutability:"view",inputs:[{name:"tokenId",type:"uint256"}],outputs:[{type:"string"}]},{type:"function",name:"totalSupply",stateMutability:"view",inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"transferFrom",stateMutability:"payable",inputs:[{name:"sender",type:"address"},{name:"recipient",type:"address"},{name:"tokenId",type:"uint256"}],outputs:[]}],NO=[{anonymous:!1,inputs:[{indexed:!0,name:"owner",type:"address"},{indexed:!0,name:"spender",type:"address"},{indexed:!1,name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"sender",type:"address"},{indexed:!0,name:"receiver",type:"address"},{indexed:!1,name:"assets",type:"uint256"},{indexed:!1,name:"shares",type:"uint256"}],name:"Deposit",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"from",type:"address"},{indexed:!0,name:"to",type:"address"},{indexed:!1,name:"value",type:"uint256"}],name:"Transfer",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"sender",type:"address"},{indexed:!0,name:"receiver",type:"address"},{indexed:!0,name:"owner",type:"address"},{indexed:!1,name:"assets",type:"uint256"},{indexed:!1,name:"shares",type:"uint256"}],name:"Withdraw",type:"event"},{inputs:[{name:"owner",type:"address"},{name:"spender",type:"address"}],name:"allowance",outputs:[{type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"spender",type:"address"},{name:"amount",type:"uint256"}],name:"approve",outputs:[{type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"asset",outputs:[{name:"assetTokenAddress",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{name:"account",type:"address"}],name:"balanceOf",outputs:[{type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"shares",type:"uint256"}],name:"convertToAssets",outputs:[{name:"assets",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"assets",type:"uint256"}],name:"convertToShares",outputs:[{name:"shares",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"assets",type:"uint256"},{name:"receiver",type:"address"}],name:"deposit",outputs:[{name:"shares",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"caller",type:"address"}],name:"maxDeposit",outputs:[{name:"maxAssets",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"caller",type:"address"}],name:"maxMint",outputs:[{name:"maxShares",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"owner",type:"address"}],name:"maxRedeem",outputs:[{name:"maxShares",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"owner",type:"address"}],name:"maxWithdraw",outputs:[{name:"maxAssets",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"shares",type:"uint256"},{name:"receiver",type:"address"}],name:"mint",outputs:[{name:"assets",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"assets",type:"uint256"}],name:"previewDeposit",outputs:[{name:"shares",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"shares",type:"uint256"}],name:"previewMint",outputs:[{name:"assets",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"shares",type:"uint256"}],name:"previewRedeem",outputs:[{name:"assets",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"assets",type:"uint256"}],name:"previewWithdraw",outputs:[{name:"shares",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"shares",type:"uint256"},{name:"receiver",type:"address"},{name:"owner",type:"address"}],name:"redeem",outputs:[{name:"assets",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"totalAssets",outputs:[{name:"totalManagedAssets",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"totalSupply",outputs:[{type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"to",type:"address"},{name:"amount",type:"uint256"}],name:"transfer",outputs:[{type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"from",type:"address"},{name:"to",type:"address"},{name:"amount",type:"uint256"}],name:"transferFrom",outputs:[{type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"assets",type:"uint256"},{name:"receiver",type:"address"},{name:"owner",type:"address"}],name:"withdraw",outputs:[{name:"shares",type:"uint256"}],stateMutability:"nonpayable",type:"function"}];async function Kr(...t){const e=await fetch(...t);if(!e.ok)throw new Error(`HTTP status code: ${e.status}`,{cause:e});return e}class to{constructor({baseUrl:e,clientId:n}){this.baseUrl=e,this.clientId=n}async get({headers:e,signal:n,cache:s,...r}){const i=this.createUrl(r);return(await Kr(i,{method:"GET",headers:e,signal:n,cache:s})).json()}async getBlob({headers:e,signal:n,...s}){const r=this.createUrl(s);return(await Kr(r,{method:"GET",headers:e,signal:n})).blob()}async post({body:e,headers:n,signal:s,...r}){const i=this.createUrl(r);return(await Kr(i,{method:"POST",headers:n,body:e?JSON.stringify(e):void 0,signal:s})).json()}async put({body:e,headers:n,signal:s,...r}){const i=this.createUrl(r);return(await Kr(i,{method:"PUT",headers:n,body:e?JSON.stringify(e):void 0,signal:s})).json()}async delete({body:e,headers:n,signal:s,...r}){const i=this.createUrl(r);return(await Kr(i,{method:"DELETE",headers:n,body:e?JSON.stringify(e):void 0,signal:s})).json()}createUrl({path:e,params:n}){const s=new URL(e,this.baseUrl);return n&&Object.entries(n).forEach(([r,i])=>{i&&s.searchParams.append(r,i)}),this.clientId&&s.searchParams.append("clientId",this.clientId),s}sendBeacon({body:e,...n}){const s=this.createUrl(n);return navigator.sendBeacon(s.toString(),e?JSON.stringify(e):void 0)}}const Mc={getFeatureValue(t,e){const n=e==null?void 0:e[t];return n===void 0?we.DEFAULT_FEATURES[t]:n},filterSocialsByPlatform(t){if(!t||!t.length)return t;let e=t;return J.isTelegram()&&(J.isIos()&&(e=e.filter(n=>n!=="google")),J.isMac()&&(e=e.filter(n=>n!=="x")),J.isAndroid()&&(e=e.filter(n=>!["facebook","x"].includes(n)))),J.isMobile()&&(e=e.filter(n=>n!=="facebook")),e},isSocialsEnabled(){var t,e,n,s;return Array.isArray((t=k.state.features)==null?void 0:t.socials)&&((e=k.state.features)==null?void 0:e.socials.length)>0||Array.isArray((n=k.state.remoteFeatures)==null?void 0:n.socials)&&((s=k.state.remoteFeatures)==null?void 0:s.socials.length)>0},isEmailEnabled(){var t,e;return!!((t=k.state.features)!=null&&t.email||(e=k.state.remoteFeatures)!=null&&e.email)}},ee=ke({features:we.DEFAULT_FEATURES,projectId:"",sdkType:"appkit",sdkVersion:"html-wagmi-undefined",defaultAccountTypes:we.DEFAULT_ACCOUNT_TYPES,enableNetworkSwitch:!0,experimental_preferUniversalLinks:!1,remoteFeatures:{},enableMobileFullScreen:!1,coinbasePreference:"all"}),k={state:ee,subscribeKey(t,e){return st(ee,t,e)},setOptions(t){Object.assign(ee,t)},setRemoteFeatures(t){var n,s;if(!t)return;const e={...ee.remoteFeatures,...t};ee.remoteFeatures=e,(n=ee.remoteFeatures)!=null&&n.socials&&(ee.remoteFeatures.socials=Mc.filterSocialsByPlatform(ee.remoteFeatures.socials)),(s=ee.features)!=null&&s.pay&&(ee.remoteFeatures.email=!1,ee.remoteFeatures.socials=!1)},setFeatures(t){var n;if(!t)return;ee.features||(ee.features=we.DEFAULT_FEATURES);const e={...ee.features,...t};ee.features=e,(n=ee.features)!=null&&n.pay&&ee.remoteFeatures&&(ee.remoteFeatures.email=!1,ee.remoteFeatures.socials=!1)},setProjectId(t){ee.projectId=t},setCustomRpcUrls(t){ee.customRpcUrls=t},setAllWallets(t){ee.allWallets=t},setIncludeWalletIds(t){ee.includeWalletIds=t},setExcludeWalletIds(t){ee.excludeWalletIds=t},setFeaturedWalletIds(t){ee.featuredWalletIds=t},setTokens(t){ee.tokens=t},setTermsConditionsUrl(t){ee.termsConditionsUrl=t},setPrivacyPolicyUrl(t){ee.privacyPolicyUrl=t},setCustomWallets(t){ee.customWallets=t},setIsSiweEnabled(t){ee.isSiweEnabled=t},setIsUniversalProvider(t){ee.isUniversalProvider=t},setSdkVersion(t){ee.sdkVersion=t},setMetadata(t){ee.metadata=t},setDisableAppend(t){ee.disableAppend=t},setEIP6963Enabled(t){ee.enableEIP6963=t},setDebug(t){ee.debug=t},setEnableWalletGuide(t){ee.enableWalletGuide=t},setEnableAuthLogger(t){ee.enableAuthLogger=t},setEnableWallets(t){ee.enableWallets=t},setPreferUniversalLinks(t){ee.experimental_preferUniversalLinks=t},setSIWX(t){if(t)for(const[e,n]of Object.entries(we.SIWX_DEFAULTS))t[e]??(t[e]=n);ee.siwx=t},setConnectMethodsOrder(t){ee.features={...ee.features,connectMethodsOrder:t}},setWalletFeaturesOrder(t){ee.features={...ee.features,walletFeaturesOrder:t}},setSocialsOrder(t){ee.remoteFeatures={...ee.remoteFeatures,socials:t}},setCollapseWallets(t){ee.features={...ee.features,collapseWallets:t}},setEnableEmbedded(t){ee.enableEmbedded=t},setAllowUnsupportedChain(t){ee.allowUnsupportedChain=t},setManualWCControl(t){ee.manualWCControl=t},setEnableNetworkSwitch(t){ee.enableNetworkSwitch=t},setEnableMobileFullScreen(t){ee.enableMobileFullScreen=J.isMobile()&&t},setEnableReconnect(t){ee.enableReconnect=t},setCoinbasePreference(t){ee.coinbasePreference=t},setDefaultAccountTypes(t={}){Object.entries(t).forEach(([e,n])=>{n&&(ee.defaultAccountTypes[e]=n)})},setUniversalProviderConfigOverride(t){ee.universalProviderConfigOverride=t},getUniversalProviderConfigOverride(){return ee.universalProviderConfigOverride},getSnapshot(){return vi(ee)}},xs=Object.freeze({message:"",variant:"success",svg:void 0,open:!1,autoClose:!0}),He=ke({...xs}),iy={state:He,subscribeKey(t,e){return st(He,t,e)},showLoading(t,e={}){this._showMessage({message:t,variant:"loading",...e})},showSuccess(t){this._showMessage({message:t,variant:"success"})},showSvg(t,e){this._showMessage({message:t,svg:e})},showError(t){const e=J.parseError(t);this._showMessage({message:e,variant:"error"})},hide(){He.message=xs.message,He.variant=xs.variant,He.svg=xs.svg,He.open=xs.open,He.autoClose=xs.autoClose},_showMessage({message:t,svg:e,variant:n="success",autoClose:s=xs.autoClose}){He.open?(He.open=!1,setTimeout(()=>{He.message=t,He.variant=n,He.svg=e,He.open=!0,He.autoClose=s},150)):(He.message=t,He.variant=n,He.svg=e,He.open=!0,He.autoClose=s)}},An=iy,oy={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"}]}]},vp=J.getBlockchainApiUrl(),wt=ke({clientId:null,api:new to({baseUrl:vp,clientId:null}),supportedChains:{http:[],ws:[]}}),re={state:wt,async get(t){const{st:e,sv:n}=re.getSdkProperties(),s=k.state.projectId,r={...t.params||{},st:e,sv:n,projectId:s};return wt.api.get({...t,params:r})},getSdkProperties(){const{sdkType:t,sdkVersion:e}=k.state;return{st:t||"unknown",sv:e||"unknown"}},async isNetworkSupported(t){if(!t)return!1;try{wt.supportedChains.http.length||await re.getSupportedNetworks()}catch{return!1}return wt.supportedChains.http.includes(t)},async getSupportedNetworks(){try{const t=await re.get({path:"v1/supported-chains"});return wt.supportedChains=t,t}catch{return wt.supportedChains}},async fetchIdentity({address:t}){const e=L.getIdentityFromCacheForAddress(t);if(e)return e;const n=await re.get({path:`/v1/identity/${t}`,params:{sender:m.state.activeCaipAddress?J.getPlainAddress(m.state.activeCaipAddress):void 0}});return L.updateIdentityCache({address:t,identity:n,timestamp:Date.now()}),n},async fetchTransactions({account:t,cursor:e,signal:n,cache:s,chainId:r}){var c;if(!await re.isNetworkSupported((c=m.state.activeCaipNetwork)==null?void 0:c.caipNetworkId))return{data:[],next:void 0};const o=L.getTransactionsCacheForAddress({address:t,chainId:r});if(o)return o;const a=await re.get({path:`/v1/account/${t}/history`,params:{cursor:e,chainId:r},signal:n,cache:s});return L.updateTransactionsCache({address:t,chainId:r,timestamp:Date.now(),transactions:a}),a},async fetchSwapQuote({amount:t,userAddress:e,from:n,to:s,gasPrice:r}){var o;return await re.isNetworkSupported((o=m.state.activeCaipNetwork)==null?void 0:o.caipNetworkId)?re.get({path:"/v1/convert/quotes",headers:{"Content-Type":"application/json"},params:{amount:t,userAddress:e,from:n,to:s,gasPrice:r}}):{quotes:[]}},async fetchSwapTokens({chainId:t}){var n;return await re.isNetworkSupported((n=m.state.activeCaipNetwork)==null?void 0:n.caipNetworkId)?re.get({path:"/v1/convert/tokens",params:{chainId:t}}):{tokens:[]}},async fetchTokenPrice({addresses:t}){var r;if(!await re.isNetworkSupported((r=m.state.activeCaipNetwork)==null?void 0:r.caipNetworkId))return{fungibles:[]};const n=L.getTokenPriceCacheForAddresses(t);if(n)return n;const s=await wt.api.post({path:"/v1/fungible/price",body:{currency:"usd",addresses:t,projectId:k.state.projectId},headers:{"Content-Type":"application/json"}});return L.updateTokenPriceCache({addresses:t,timestamp:Date.now(),tokenPrice:s}),s},async fetchSwapAllowance({tokenAddress:t,userAddress:e}){var s;return await re.isNetworkSupported((s=m.state.activeCaipNetwork)==null?void 0:s.caipNetworkId)?re.get({path:"/v1/convert/allowance",params:{tokenAddress:t,userAddress:e},headers:{"Content-Type":"application/json"}}):{allowance:"0"}},async fetchGasPrice({chainId:t}){var r;const{st:e,sv:n}=re.getSdkProperties();if(!await re.isNetworkSupported((r=m.state.activeCaipNetwork)==null?void 0:r.caipNetworkId))throw new Error("Network not supported for Gas Price");return re.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:s,disableEstimate:r}){var o;if(!await re.isNetworkSupported((o=m.state.activeCaipNetwork)==null?void 0:o.caipNetworkId))throw new Error("Network not supported for Swaps");return wt.api.post({path:"/v1/convert/build-transaction",headers:{"Content-Type":"application/json"},body:{amount:t,eip155:{slippage:we.CONVERT_SLIPPAGE_TOLERANCE},projectId:k.state.projectId,from:e,to:n,userAddress:s,disableEstimate:r}})},async generateApproveCalldata({from:t,to:e,userAddress:n}){var o;const{st:s,sv:r}=re.getSdkProperties();if(!await re.isNetworkSupported((o=m.state.activeCaipNetwork)==null?void 0:o.caipNetworkId))throw new Error("Network not supported for Swaps");return re.get({path:"/v1/convert/build-approve",headers:{"Content-Type":"application/json"},params:{userAddress:n,from:t,to:e,st:s,sv:r}})},async getBalance(t,e,n){var l;const{st:s,sv:r}=re.getSdkProperties();if(!await re.isNetworkSupported((l=m.state.activeCaipNetwork)==null?void 0:l.caipNetworkId))return An.showError("Token Balance Unavailable"),{balances:[]};const o=`${e}:${t}`,a=L.getBalanceCacheForCaipAddress(o);if(a)return a;const c=await re.get({path:`/v1/account/${t}/balance`,params:{currency:"usd",chainId:e,forceUpdate:n,st:s,sv:r}});return L.updateBalanceCache({caipAddress:o,balance:c,timestamp:Date.now()}),c},async lookupEnsName(t){var n;return await re.isNetworkSupported((n=m.state.activeCaipNetwork)==null?void 0:n.caipNetworkId)?re.get({path:`/v1/profile/account/${t}`,params:{apiVersion:"2"}}):{addresses:{},attributes:[]}},async reverseLookupEnsName({address:t}){var s,r;if(!await re.isNetworkSupported((s=m.state.activeCaipNetwork)==null?void 0:s.caipNetworkId))return[];const n=(r=m.getAccountData())==null?void 0:r.address;return re.get({path:`/v1/profile/reverse/${t}`,params:{sender:n,apiVersion:"2"}})},async getEnsNameSuggestions(t){var n;return await re.isNetworkSupported((n=m.state.activeCaipNetwork)==null?void 0:n.caipNetworkId)?re.get({path:`/v1/profile/suggestions/${t}`,params:{zone:"reown.id"}}):{suggestions:[]}},async registerEnsName({coinType:t,address:e,message:n,signature:s}){var i;return await re.isNetworkSupported((i=m.state.activeCaipNetwork)==null?void 0:i.caipNetworkId)?wt.api.post({path:"/v1/profile/account",body:{coin_type:t,address:e,message:n,signature:s},headers:{"Content-Type":"application/json"}}):{success:!1}},async generateOnRampURL({destinationWallets:t,partnerUserId:e,defaultNetwork:n,purchaseAmount:s,paymentAmount:r}){var a;return await re.isNetworkSupported((a=m.state.activeCaipNetwork)==null?void 0:a.caipNetworkId)?(await wt.api.post({path:"/v1/generators/onrampurl",params:{projectId:k.state.projectId},body:{destinationWallets:t,defaultNetwork:n,partnerUserId:e,defaultExperience:"buy",presetCryptoAmount:s,presetFiatAmount:r}})).url:""},async getOnrampOptions(){var e;if(!await re.isNetworkSupported((e=m.state.activeCaipNetwork)==null?void 0:e.caipNetworkId))return{paymentCurrencies:[],purchaseCurrencies:[]};try{return await re.get({path:"/v1/onramp/options"})}catch{return oy}},async getOnrampQuote({purchaseCurrency:t,paymentCurrency:e,amount:n,network:s}){var r;try{return await re.isNetworkSupported((r=m.state.activeCaipNetwork)==null?void 0:r.caipNetworkId)?await wt.api.post({path:"/v1/onramp/quote",params:{projectId:k.state.projectId},body:{purchaseCurrency:t,paymentCurrency:e,amount:n,network:s}}):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 re.isNetworkSupported((n=m.state.activeCaipNetwork)==null?void 0:n.caipNetworkId)?re.get({path:`/v1/sessions/${t}`}):[]},async revokeSmartSession(t,e,n){var r;return await re.isNetworkSupported((r=m.state.activeCaipNetwork)==null?void 0:r.caipNetworkId)?wt.api.post({path:`/v1/sessions/${t}/revoke`,params:{projectId:k.state.projectId},body:{pci:e,signature:n}}):{success:!1}},setClientId(t){wt.clientId=t,wt.api=new to({baseUrl:vp,clientId:t})}},Yt={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"}},ay={handleMobileDeeplinkRedirect(t,e){const n=window.location.href,s=encodeURIComponent(n);if(t===Yt.PHANTOM.id&&!("phantom"in window)){const r=n.startsWith("https")?"https":"http",i=n.split("/")[2],o=encodeURIComponent(`${r}://${i}`);window.location.href=`${Yt.PHANTOM.url}/ul/browse/${s}?ref=${o}`}if(t===Yt.SOLFLARE.id&&!("solflare"in window)&&(window.location.href=`${Yt.SOLFLARE.url}/ul/v1/browse/${s}?ref=${s}`),e===U.CHAIN.SOLANA&&t===Yt.COINBASE.id&&!("coinbaseSolana"in window)&&(window.location.href=`${Yt.COINBASE.url}/dapp?cb_url=${s}`),e===U.CHAIN.BITCOIN&&t===Yt.BINANCE.id&&!("binancew3w"in window)){const r=m.state.activeCaipNetwork,i=window.btoa("/pages/browser/index"),o=window.btoa(`url=${s}&defaultChainId=${(r==null?void 0:r.id)??1}`),a=new URL(Yt.BINANCE.deeplink);a.searchParams.set("appId",Yt.BINANCE.appId),a.searchParams.set("startPagePath",i),a.searchParams.set("startPageQuery",o);const c=new URL(Yt.BINANCE.url);c.searchParams.set("_dp",window.btoa(a.toString())),window.location.href=c.toString()}}},cy=Object.freeze({enabled:!0,events:[]}),ly=new to({baseUrl:J.getAnalyticsUrl(),clientId:null}),uy=5,dy=60*1e3,es=ke({...cy}),hy={state:es,subscribeKey(t,e){return st(es,t,e)},async sendError(t,e){if(!es.enabled)return;const n=Date.now();if(es.events.filter(i=>{const o=new Date(i.properties.timestamp||"").getTime();return n-o<dy}).length>=uy)return;const r={type:"error",event:e,properties:{errorType:t.name,errorMessage:t.message,stackTrace:t.stack,timestamp:new Date().toISOString()}};es.events.push(r);try{if(typeof window>"u")return;const{projectId:i,sdkType:o,sdkVersion:a}=k.state;await ly.post({path:"/e",params:{projectId:i,st:o,sv:a||"html-wagmi-4.2.2"},body:{eventId:J.getUUID(),url:window.location.href,domain:window.location.hostname,timestamp:new Date().toISOString(),props:{type:"error",event:e,errorType:t.name,errorMessage:t.message,stackTrace:t.stack}}})}catch{}},enable(){es.enabled=!0},disable(){es.enabled=!1},clearEvents(){es.events=[]}};class Xs extends Error{constructor(e,n,s){super(e),this.originalName="AppKitError",this.name="AppKitError",this.category=n,this.originalError=s,s&&s instanceof Error&&(this.originalName=s.name),Object.setPrototypeOf(this,Xs.prototype);let r=!1;if(s instanceof Error&&typeof s.stack=="string"&&s.stack){const i=s.stack,o=i.indexOf(`
|
|
4
4
|
`);if(o>-1){const a=i.substring(o+1);this.stack=`${this.name}: ${this.message}
|
|
5
|
-
${a}`,r=!0}}r||(Error.captureStackTrace?Error.captureStackTrace(this,Xs):this.stack||(this.stack=`${this.name}: ${this.message}`))}}function _u(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(r){n="Unknown error",console.error("Error parsing error message",r)}const s=t instanceof Xs?t:new Xs(n,e,t);throw hy.sendError(s,s.category),s}function rn(t,e="INTERNAL_SDK_ERROR"){const n={};return Object.keys(t).forEach(s=>{const r=t[s];if(typeof r=="function"){let i=r;r.constructor.name==="AsyncFunction"?i=async(...o)=>{try{return await r(...o)}catch(a){return _u(a,e)}}:i=(...o)=>{try{return r(...o)}catch(a){return _u(a,e)}},n[s]=i}else n[s]=r}),n}const Pt=ke({walletImages:{},networkImages:{},chainImages:{},connectorImages:{},tokenImages:{},currencyImages:{}}),py={state:Pt,subscribeNetworkImages(t){return nt(Pt.networkImages,()=>t(Pt.networkImages))},subscribeKey(t,e){return st(Pt,t,e)},subscribe(t){return nt(Pt,()=>t(Pt))},setWalletImage(t,e){Pt.walletImages[t]=e},setNetworkImage(t,e){Pt.networkImages[t]=e},setChainImage(t,e){Pt.chainImages[t]=e},setConnectorImage(t,e){Pt.connectorImages={...Pt.connectorImages,[t]:e}},setTokenImage(t,e){Pt.tokenImages[t]=e},setCurrencyImage(t,e){Pt.currencyImages[t]=e}},Qt=rn(py),fy={eip155:"ba0ba0cd-17c6-4806-ad93-f9d174f17900",solana:"a1b58899-f671-4276-6a5e-56ca5bd59700",polkadot:"",bip122:"0b4838db-0161-4ffe-022d-532bf03dba00",cosmos:"",sui:"",stacks:""},Ma=ke({networkImagePromises:{}}),Cp={async fetchWalletImage(t){if(t)return await Q._fetchWalletImage(t),this.getWalletImageById(t)},async fetchNetworkImage(t){if(!t)return;const e=this.getNetworkImageById(t);return e||(Ma.networkImagePromises[t]||(Ma.networkImagePromises[t]=Q._fetchNetworkImage(t)),await Ma.networkImagePromises[t],this.getNetworkImageById(t))},getWalletImageById(t){if(t)return Qt.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 Qt.state.walletImages[t.image_id]},getNetworkImage(t){var e,n,s;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((s=t==null?void 0:t.assets)!=null&&s.imageId)return Qt.state.networkImages[t.assets.imageId]},getNetworkImageById(t){if(t)return Qt.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 Qt.state.connectorImages[t.imageId]},getChainImage(t){return Qt.state.networkImages[fy[t]]},getTokenImage(t){if(t)return Qt.state.tokenImages[t]}},gy=J.getAnalyticsUrl(),my=new to({baseUrl:gy,clientId:null}),yy=["MODAL_CREATED"],wy=45,Iu=1e3*10,Me=ke({timestamp:Date.now(),lastFlush:Date.now(),reportedErrors:{},data:{type:"track",event:"MODAL_CREATED"},pendingEvents:[],subscribedToVisibilityChange:!1,walletImpressions:[]}),he={state:Me,subscribe(t){return nt(Me,()=>t(Me))},getSdkProperties(){const{projectId:t,sdkType:e,sdkVersion:n}=k.state;return{projectId:t,st:e,sv:n||"html-wagmi-4.2.2"}},shouldFlushEvents(){const t=JSON.stringify(Me.pendingEvents).length/1024>wy,e=Me.lastFlush+Iu<Date.now();return t||e},_setPendingEvent(t){var e,n;try{let s=(e=m.getAccountData())==null?void 0:e.address;if("address"in t.data&&t.data.address&&(s=t.data.address),yy.includes(t.data.event)||typeof window>"u")return;const r=(n=m.getActiveCaipNetwork())==null?void 0:n.caipNetworkId;this.state.pendingEvents.push({eventId:J.getUUID(),url:window.location.href,domain:window.location.hostname,timestamp:t.timestamp,props:{...t.data,address:s,properties:{..."properties"in t.data?t.data.properties:{},caipNetworkId:r}}}),Me.reportedErrors.FORBIDDEN=!1,he.shouldFlushEvents()&&he._submitPendingEvents()}catch(s){console.warn("_setPendingEvent",s)}},sendEvent(t){var n;Me.timestamp=Date.now(),Me.data=t;const e=["INITIALIZE","CONNECT_SUCCESS","SOCIAL_LOGIN_SUCCESS"];((n=k.state.features)!=null&&n.analytics||e.includes(t.event))&&he._setPendingEvent(Me),this.subscribeToFlushTriggers()},sendWalletImpressionEvent(t){Me.walletImpressions.push(t)},_transformPendingEventsForBatch(t){try{return t.filter(e=>e.props.event!=="WALLET_IMPRESSION_V2")}catch{return t}},_submitPendingEvents(){if(Me.lastFlush=Date.now(),!(Me.pendingEvents.length===0&&Me.walletImpressions.length===0))try{const t=he._transformPendingEventsForBatch(Me.pendingEvents);Me.walletImpressions.length&&t.push({eventId:J.getUUID(),url:window.location.href,domain:window.location.hostname,timestamp:Date.now(),props:{type:"track",event:"WALLET_IMPRESSION_V2",items:[...Me.walletImpressions]}}),my.sendBeacon({path:"/batch",params:he.getSdkProperties(),body:t}),Me.reportedErrors.FORBIDDEN=!1,Me.pendingEvents=[],Me.walletImpressions=[]}catch{Me.reportedErrors.FORBIDDEN=!0}},subscribeToFlushTriggers(){var t,e,n;Me.subscribedToVisibilityChange||typeof document>"u"||(Me.subscribedToVisibilityChange=!0,(t=document==null?void 0:document.addEventListener)==null||t.call(document,"visibilitychange",()=>{document.visibilityState==="hidden"&&he._submitPendingEvents()}),(e=document==null?void 0:document.addEventListener)==null||e.call(document,"freeze",()=>{he._submitPendingEvents()}),(n=window==null?void 0:window.addEventListener)==null||n.call(window,"pagehide",()=>{he._submitPendingEvents()}),setInterval(()=>{he._submitPendingEvents()},Iu))}},by=J.getApiUrl(),pt=new to({baseUrl:by,clientId:null}),Ey=40,Su=4,vy=20,oe=ke({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}}}),Q={state:oe,subscribeKey(t,e){return st(oe,t,e)},_getSdkProperties(){const{projectId:t,sdkType:e,sdkVersion:n}=k.state;return{projectId:t,st:e||"appkit",sv:n||"html-wagmi-4.2.2"}},_filterOutExtensions(t){return k.state.isUniversalProvider?t.filter(e=>!!(e.mobile_link||e.desktop_link||e.webapp_link)):t},async _fetchWalletImage(t){const e=`${pt.baseUrl}/getWalletImage/${t}`,n=await pt.getBlob({path:e,params:Q._getSdkProperties()});Qt.setWalletImage(t,URL.createObjectURL(n))},async _fetchNetworkImage(t){const e=`${pt.baseUrl}/public/getAssetImage/${t}`,n=await pt.getBlob({path:e,params:Q._getSdkProperties()});Qt.setNetworkImage(t,URL.createObjectURL(n))},async _fetchConnectorImage(t){const e=`${pt.baseUrl}/public/getAssetImage/${t}`,n=await pt.getBlob({path:e,params:Q._getSdkProperties()});Qt.setConnectorImage(t,URL.createObjectURL(n))},async _fetchCurrencyImage(t){const e=`${pt.baseUrl}/public/getCurrencyImage/${t}`,n=await pt.getBlob({path:e,params:Q._getSdkProperties()});Qt.setCurrencyImage(t,URL.createObjectURL(n))},async _fetchTokenImage(t){const e=`${pt.baseUrl}/public/getTokenImage/${t}`,n=await pt.getBlob({path:e,params:Q._getSdkProperties()});Qt.setTokenImage(t,URL.createObjectURL(n))},_filterWalletsByPlatform(t){const e=t.length,n=J.isMobile()?t==null?void 0:t.filter(r=>r.mobile_link||r.webapp_link?!0:Object.values(Yt).map(o=>o.id).includes(r.id)):t,s=e-n.length;return{filteredWallets:n,mobileFilteredOutWalletsLength:s}},async fetchProjectConfig(){return(await pt.get({path:"/appkit/v1/config",params:Q._getSdkProperties()})).features},async fetchUsage(){try{const t=await pt.get({path:"/appkit/v1/project-limits",params:Q._getSdkProperties()}),{tier:e,isAboveMauLimit:n,isAboveRpcLimit:s}=t.planLimits,r=e==="starter",i=n||s;Q.state.plan={tier:e,hasExceededUsageLimit:r&&i,limits:{isAboveRpcLimit:s,isAboveMauLimit:n}}}catch(t){console.warn("Failed to fetch usage",t)}},async fetchAllowedOrigins(){try{const{allowedOrigins:t}=await pt.get({path:"/projects/v1/origins",params:Q._getSdkProperties()});return t}catch(t){if(t instanceof Error&&t.cause instanceof Response){const e=t.cause.status;if(e===U.HTTP_STATUS_CODES.TOO_MANY_REQUESTS)throw new Error("RATE_LIMITED",{cause:t});if(e>=U.HTTP_STATUS_CODES.SERVER_ERROR&&e<600)throw new Error("SERVER_ERROR",{cause:t});return[]}return[]}},async fetchNetworkImages(){const t=m.getAllRequestedCaipNetworks(),e=t==null?void 0:t.map(({assets:n})=>n==null?void 0:n.imageId).filter(Boolean).filter(n=>!Cp.getNetworkImageById(n));e&&await Promise.allSettled(e.map(n=>Q._fetchNetworkImage(n)))},async fetchConnectorImages(){const{connectors:t}=q.state,e=t.map(({imageId:n})=>n).filter(Boolean);await Promise.allSettled(e.map(n=>Q._fetchConnectorImage(n)))},async fetchCurrencyImages(t=[]){await Promise.allSettled(t.map(e=>Q._fetchCurrencyImage(e)))},async fetchTokenImages(t=[]){await Promise.allSettled(t.map(e=>Q._fetchTokenImage(e)))},async fetchWallets(t){var o;const e=t.exclude??[];Q._getSdkProperties().sv.startsWith("html-core-")&&e.push(...Object.values(Yt).map(a=>a.id));const s=await pt.get({path:"/getWallets",params:{...Q._getSdkProperties(),...t,page:String(t.page),entries:String(t.entries),include:(o=t.include)==null?void 0:o.join(","),exclude:e.join(",")}}),{filteredWallets:r,mobileFilteredOutWalletsLength:i}=Q._filterWalletsByPlatform(s==null?void 0:s.data);return{data:r||[],count:s==null?void 0:s.count,mobileFilteredOutWalletsLength:i}},async prefetchWalletRanks(){const t=q.state.connectors;if(!(t!=null&&t.length))return;const e={page:1,entries:20,badge:"certified"};if(e.names=t.map(r=>r.name).join(","),m.state.activeChain===U.CHAIN.EVM){const r=[...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);r.length&&(e.rdns=r.join(","))}const{data:n}=await Q.fetchWallets(e);oe.explorerWallets=n;const s=m.getRequestedCaipNetworkIds().join(",");oe.explorerFilteredWallets=n.filter(r=>{var i;return(i=r.chains)==null?void 0:i.some(o=>s.includes(o))})},async fetchFeaturedWallets(){const{featuredWalletIds:t}=k.state;if(t!=null&&t.length){const e={...Q._getSdkProperties(),page:1,entries:(t==null?void 0:t.length)??Su,include:t},{data:n}=await Q.fetchWallets(e),s=[...n].sort((i,o)=>t.indexOf(i.id)-t.indexOf(o.id)),r=s.map(i=>i.image_id).filter(Boolean);await Promise.allSettled(r.map(i=>Q._fetchWalletImage(i))),oe.featured=s,oe.allFeatured=s}},async fetchRecommendedWallets(){try{oe.isFetchingRecommendedWallets=!0;const{includeWalletIds:t,excludeWalletIds:e,featuredWalletIds:n}=k.state,s=[...e??[],...n??[]].filter(Boolean),r=m.getRequestedCaipNetworkIds().join(","),i={page:1,entries:Su,include:t,exclude:s,chains:r},{data:o,count:a}=await Q.fetchWallets(i),c=L.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=>Q._fetchWalletImage(d))),oe.recommended=o,oe.allRecommended=o,oe.count=a??0}catch{}finally{oe.isFetchingRecommendedWallets=!1}},async fetchWalletsByPage({page:t}){const{includeWalletIds:e,excludeWalletIds:n,featuredWalletIds:s}=k.state,r=m.getRequestedCaipNetworkIds().join(","),i=[...oe.recommended.map(({id:d})=>d),...n??[],...s??[]].filter(Boolean),o={page:t,entries:Ey,include:e,exclude:i,chains:r},{data:a,count:c,mobileFilteredOutWalletsLength:l}=await Q.fetchWallets(o);oe.mobileFilteredOutWalletsLength=l+(oe.mobileFilteredOutWalletsLength??0);const u=a.slice(0,vy).map(d=>d.image_id).filter(Boolean);await Promise.allSettled(u.map(d=>Q._fetchWalletImage(d))),oe.wallets=J.uniqueBy([...oe.wallets,...Q._filterOutExtensions(a)],"id").filter(d=>{var h;return(h=d.chains)==null?void 0:h.some(p=>r.includes(p))}),oe.count=c>oe.count?c:oe.count,oe.page=t},async initializeExcludedWallets({ids:t}){const e={page:1,entries:t.length,include:t},{data:n}=await Q.fetchWallets(e);n&&n.forEach(s=>{oe.excludedWallets.push({rdns:s.rdns,name:s.name})})},async searchWallet({search:t,badge:e}){const{includeWalletIds:n,excludeWalletIds:s}=k.state,r=m.getRequestedCaipNetworkIds().join(",");oe.search=[];const i={page:1,entries:100,search:t==null?void 0:t.trim(),badge_type:e,include:n,exclude:s,chains:r},{data:o}=await Q.fetchWallets(i);he.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=>Q._fetchWalletImage(c)),J.wait(300)]),oe.search=Q._filterOutExtensions(o)},initPromise(t,e){const n=oe.promises[t];return n||(oe.promises[t]=e())},prefetch({fetchConnectorImages:t=!0,fetchFeaturedWallets:e=!0,fetchRecommendedWallets:n=!0,fetchNetworkImages:s=!0,fetchWalletRanks:r=!0}={}){const i=[t&&Q.initPromise("connectorImages",Q.fetchConnectorImages),e&&Q.initPromise("featuredWallets",Q.fetchFeaturedWallets),n&&Q.initPromise("recommendedWallets",Q.fetchRecommendedWallets),s&&Q.initPromise("networkImages",Q.fetchNetworkImages),r&&Q.initPromise("walletRanks",Q.prefetchWalletRanks)].filter(Boolean);return Promise.allSettled(i)},prefetchAnalyticsConfig(){var t;(t=k.state.features)!=null&&t.analytics&&Q.fetchAnalyticsConfig()},async fetchAnalyticsConfig(){try{const{isAnalyticsEnabled:t}=await pt.get({path:"/getAnalyticsConfig",params:Q._getSdkProperties()});k.setFeatures({analytics:t})}catch{k.setFeatures({analytics:!1})}},filterByNamespaces(t){if(!(t!=null&&t.length)){oe.featured=oe.allFeatured,oe.recommended=oe.allRecommended;return}const e=m.getRequestedCaipNetworkIds().join(",");oe.featured=oe.allFeatured.filter(n=>{var s;return(s=n.chains)==null?void 0:s.some(r=>e.includes(r))}),oe.recommended=oe.allRecommended.filter(n=>{var s;return(s=n.chains)==null?void 0:s.some(r=>e.includes(r))}),oe.filteredWallets=oe.wallets.filter(n=>{var s;return(s=n.chains)==null?void 0:s.some(r=>e.includes(r))})},clearFilterByNamespaces(){oe.filteredWallets=[]},setFilterByNamespace(t){if(!t){oe.featured=oe.allFeatured,oe.recommended=oe.allRecommended;return}const e=m.getRequestedCaipNetworkIds().join(",");oe.featured=oe.allFeatured.filter(n=>{var s;return(s=n.chains)==null?void 0:s.some(r=>e.includes(r))}),oe.recommended=oe.allRecommended.filter(n=>{var s;return(s=n.chains)==null?void 0:s.some(r=>e.includes(r))}),oe.filteredWallets=oe.wallets.filter(n=>{var s;return(s=n.chains)==null?void 0:s.some(r=>e.includes(r))})}},Cy=["ConnectingExternal","ConnectingMultiChain","ConnectingSocial","ConnectingFarcaster"],_e=ke({view:"Connect",history:["Connect"],transactionStack:[]}),Ay={state:_e,subscribeKey(t,e){return st(_e,t,e)},pushTransactionStack(t){_e.transactionStack.push(t)},popTransactionStack(t){const e=_e.transactionStack.pop();if(!e)return;const{onSuccess:n,onError:s,onCancel:r}=e;switch(t){case"success":n==null||n();break;case"error":s==null||s(),se.goBack();break;case"cancel":r==null||r(),se.goBack();break}},push(t,e){let n=t,s=e;Q.state.plan.hasExceededUsageLimit&&Cy.includes(t)&&(n="UsageExceeded",s=void 0),n!==_e.view&&(_e.view=n,_e.history.push(n),_e.data=s)},reset(t,e){_e.view=t,_e.history=[t],_e.data=e},replace(t,e){_e.history.at(-1)===t||(_e.view=t,_e.history[_e.history.length-1]=t,_e.data=e)},goBack(){var s,r;const t=m.state.activeCaipAddress,e=se.state.view==="ConnectingFarcaster",n=!t&&e;if(_e.history.length>1){_e.history.pop();const[i]=_e.history.slice(-1);i&&(t&&i==="Connect"?_e.view="Account":_e.view=i)}else pe.close();(s=_e.data)!=null&&s.wallet&&(_e.data.wallet=void 0),(r=_e.data)!=null&&r.redirectView&&(_e.data.redirectView=void 0),setTimeout(()=>{var i,o,a;if(n){m.setAccountProp("farcasterUrl",void 0,m.state.activeChain);const c=q.getAuthConnector();(i=c==null?void 0:c.provider)==null||i.reload();const l=vi(k.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(_e.history.length>1){_e.history=_e.history.slice(0,t+1);const[e]=_e.history.slice(-1);e&&(_e.view=e)}},goBackOrCloseModal(){se.state.history.length>1?se.goBack():pe.close()}},se=rn(Ay),Rn=ke({themeMode:"dark",themeVariables:{},w3mThemeVariables:void 0}),Lc={state:Rn,subscribe(t){return nt(Rn,()=>t(Rn))},setThemeMode(t){Rn.themeMode=t;try{const e=q.getAuthConnector();if(e){const n=Lc.getSnapshot().themeVariables;e.provider.syncTheme({themeMode:t,themeVariables:n,w3mThemeVariables:Jo(n,t)})}}catch{console.info("Unable to sync theme to auth connector")}},setThemeVariables(t){Rn.themeVariables={...Rn.themeVariables,...t};try{const e=q.getAuthConnector();if(e){const n=Lc.getSnapshot().themeVariables;e.provider.syncTheme({themeVariables:n,w3mThemeVariables:Jo(Rn.themeVariables,Rn.themeMode)})}}catch{console.info("Unable to sync theme to auth connector")}},getSnapshot(){return vi(Rn)}},Ut=rn(Lc),Ap=Object.fromEntries(pp.map(t=>[t,void 0])),_y=Object.fromEntries(pp.map(t=>[t,!0])),ve=ke({allConnectors:[],connectors:[],activeConnector:void 0,filterByNamespace:void 0,activeConnectorIds:Ap,filterByNamespaceMap:_y}),Iy={state:ve,subscribe(t){return nt(ve,()=>{t(ve)})},subscribeKey(t,e){return st(ve,t,e)},initialize(t){t.forEach(e=>{const n=L.getConnectedConnectorId(e);n&&q.setConnectorId(n,e)})},setActiveConnector(t){t&&(ve.activeConnector=Ci(t))},setConnectors(t){t.filter(r=>!ve.allConnectors.some(i=>i.id===r.id&&q.getConnectorName(i.name)===q.getConnectorName(r.name)&&i.chain===r.chain)).forEach(r=>{r.type!=="MULTI_CHAIN"&&ve.allConnectors.push(Ci(r))});const n=q.getEnabledNamespaces(),s=q.getEnabledConnectors(n);ve.connectors=q.mergeMultiChainConnectors(s)},filterByNamespaces(t){Object.keys(ve.filterByNamespaceMap).forEach(e=>{ve.filterByNamespaceMap[e]=!1}),t.forEach(e=>{ve.filterByNamespaceMap[e]=!0}),q.updateConnectorsForEnabledNamespaces()},filterByNamespace(t,e){ve.filterByNamespaceMap[t]=e,q.updateConnectorsForEnabledNamespaces()},updateConnectorsForEnabledNamespaces(){const t=q.getEnabledNamespaces(),e=q.getEnabledConnectors(t),n=q.areAllNamespacesEnabled();ve.connectors=q.mergeMultiChainConnectors(e),n?Q.clearFilterByNamespaces():Q.filterByNamespaces(t)},getEnabledNamespaces(){return Object.entries(ve.filterByNamespaceMap).filter(([t,e])=>e).map(([t])=>t)},getEnabledConnectors(t){return ve.allConnectors.filter(e=>t.includes(e.chain))},areAllNamespacesEnabled(){return Object.values(ve.filterByNamespaceMap).every(t=>t)},mergeMultiChainConnectors(t){const e=q.generateConnectorMapByName(t),n=[];return e.forEach(s=>{const r=s[0],i=(r==null?void 0:r.id)===U.CONNECTOR_ID.AUTH;s.length>1&&r?n.push({name:r.name,imageUrl:r.imageUrl,imageId:r.imageId,connectors:[...s],type:i?"AUTH":"MULTI_CHAIN",chain:"eip155",id:(r==null?void 0:r.id)||""}):r&&n.push(r)}),n},generateConnectorMapByName(t){const e=new Map;return t.forEach(n=>{const{name:s}=n,r=q.getConnectorName(s);if(!r)return;const i=e.get(r)||[];i.find(a=>a.chain===n.chain)||i.push(n),e.set(r,i)}),e},getConnectorName(t){return t&&({"Trust Wallet":"Trust"}[t]||t)},getUniqueConnectorsByName(t){const e=[];return t.forEach(n=>{e.find(s=>s.chain===n.chain)||e.push(n)}),e},addConnector(t){var e,n,s;if(t.id===U.CONNECTOR_ID.AUTH){const r=t,i=vi(k.state),o=Ut.getSnapshot().themeMode,a=Ut.getSnapshot().themeVariables;(n=(e=r==null?void 0:r.provider)==null?void 0:e.syncDappData)==null||n.call(e,{metadata:i.metadata,sdkVersion:i.sdkVersion,projectId:i.projectId,sdkType:i.sdkType}),(s=r==null?void 0:r.provider)==null||s.syncTheme({themeMode:o,themeVariables:a,w3mThemeVariables:Jo(a,o)}),q.setConnectors([t])}else q.setConnectors([t])},getAuthConnector(t){var s;const e=t||m.state.activeChain,n=ve.connectors.find(r=>r.id===U.CONNECTOR_ID.AUTH);if(n)return(s=n==null?void 0:n.connectors)!=null&&s.length?n.connectors.find(i=>i.chain===e):n},getAnnouncedConnectorRdns(){return ve.connectors.filter(t=>t.type==="ANNOUNCED").map(t=>{var e;return(e=t.info)==null?void 0:e.rdns})},getConnectorById(t){return ve.allConnectors.find(e=>e.id===t)},getConnector({id:t,rdns:e,namespace:n}){const s=n||m.state.activeChain;return ve.allConnectors.filter(i=>i.chain===s).find(i=>{var o;return i.explorerId===t||((o=i.info)==null?void 0:o.rdns)===e})},syncIfAuthConnector(t){var i,o;if(t.id!=="AUTH")return;const e=t,n=vi(k.state),s=Ut.getSnapshot().themeMode,r=Ut.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:s,themeVariables:r,w3mThemeVariables:Jo(r,s)})},getConnectorsByNamespace(t){const e=ve.allConnectors.filter(n=>n.chain===t);return q.mergeMultiChainConnectors(e)},canSwitchToSmartAccount(t){return m.checkIfSmartAccountEnabled()&&nn(t)===en.ACCOUNT_TYPES.EOA},selectWalletConnector(t){var s;const e=(s=se.state.data)==null?void 0:s.redirectView,n=q.getConnector({id:t.id,rdns:t.rdns});ay.handleMobileDeeplinkRedirect((n==null?void 0:n.explorerId)||t.id,m.state.activeChain),n?se.push("ConnectingExternal",{connector:n,wallet:t,redirectView:e}):se.push("ConnectingWalletConnect",{wallet:t,redirectView:e})},getConnectors(t){return t?q.getConnectorsByNamespace(t):q.mergeMultiChainConnectors(ve.allConnectors)},setFilterByNamespace(t){ve.filterByNamespace=t,ve.connectors=q.getConnectors(t),Q.setFilterByNamespace(t)},setConnectorId(t,e){t&&(ve.activeConnectorIds={...ve.activeConnectorIds,[e]:t},L.setConnectedConnectorId(e,t))},removeConnectorId(t){ve.activeConnectorIds={...ve.activeConnectorIds,[t]:void 0},L.deleteConnectedConnectorId(t)},getConnectorId(t){if(t)return ve.activeConnectorIds[t]},isConnected(t){return t?!!ve.activeConnectorIds[t]:Object.values(ve.activeConnectorIds).some(e=>!!e)},resetConnectorIds(){ve.activeConnectorIds={...Ap}}},q=rn(Iy),Sy=1e3,Vr={checkNamespaceConnectorId(t,e){return q.getConnectorId(t)===e},isSocialProvider(t){return we.DEFAULT_REMOTE_FEATURES.socials.includes(t)},connectWalletConnect({walletConnect:t,connector:e,closeModalOnConnect:n=!0,redirectViewOnModalClose:s="Connect",onOpen:r,onConnect:i}){return new Promise((o,a)=>{if(t&&q.setActiveConnector(e),r==null||r(J.isMobile()&&t),s){const l=pe.subscribeKey("open",u=>{u||(se.state.view!==s&&se.replace(s),l(),a(new Error("Modal closed")))})}const c=m.subscribeKey("activeCaipAddress",l=>{l&&(i==null||i(),n&&pe.close(),c(),o(tt.parseCaipAddress(l)))})})},connectExternal(t){return new Promise((e,n)=>{const s=m.subscribeKey("activeCaipAddress",r=>{r&&(pe.close(),s(),e(tt.parseCaipAddress(r)))});V.connectExternal(t,t.chain).catch(()=>{s(),n(new Error("Connection rejected"))})})},connectSocial({social:t,namespace:e,closeModalOnConnect:n=!0,onOpenFarcaster:s,onConnect:r}){let i,o=!1,a=null;const c=e||m.state.activeChain,l=m.subscribeKey("activeCaipAddress",u=>{u&&(n&&pe.close(),l())});return new Promise((u,d)=>{async function h(g){var f;if((f=g.data)!=null&&f.resultUri)if(g.origin===U.SECURE_SITE_SDK_ORIGIN){window.removeEventListener("message",h,!1);try{const y=q.getAuthConnector(c);if(y&&!o){i&&i.close(),o=!0;const b=g.data.resultUri;he.sendEvent({type:"track",event:"SOCIAL_LOGIN_REQUEST_USER_DATA",properties:{provider:t}}),L.setConnectedSocialProvider(t),await V.connectExternal({id:y.id,type:y.type,socialUri:b},y.chain);const _=m.state.activeCaipAddress;if(!_){d(new Error("Failed to connect"));return}u(tt.parseCaipAddress(_)),he.sendEvent({type:"track",event:"SOCIAL_LOGIN_SUCCESS",properties:{provider:t}})}}catch(y){he.sendEvent({type:"track",event:"SOCIAL_LOGIN_ERROR",properties:{provider:t,message:J.parseError(y)}}),d(new Error("Failed to connect"))}}else he.sendEvent({type:"track",event:"SOCIAL_LOGIN_ERROR",properties:{provider:t,message:"Untrusted Origin"}})}async function p(){if(he.sendEvent({type:"track",event:"SOCIAL_LOGIN_STARTED",properties:{provider:t}}),t==="farcaster"){s==null||s();const g=pe.subscribeKey("open",y=>{!y&&t==="farcaster"&&(d(new Error("Popup closed")),r==null||r(),g())}),f=q.getAuthConnector();if(f){const y=m.getAccountData(c);if(!(y!=null&&y.farcasterUrl))try{const{url:b}=await f.provider.getFarcasterUri();m.setAccountProp("farcasterUrl",b,c)}catch{d(new Error("Failed to connect to farcaster"))}}}else{const g=q.getAuthConnector();a=J.returnOpenHref(`${U.SECURE_SITE_SDK_ORIGIN}/loading`,"popupWindow","width=600,height=800,scrollbars=yes");try{if(g){const{uri:f}=await g.provider.getSocialRedirectUri({provider:t});if(a&&f){a.location.href=f,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()}}}p()})},connectEmail({closeModalOnConnect:t=!0,redirectViewOnModalClose:e="Connect",onOpen:n,onConnect:s}){return new Promise((r,i)=>{if(n==null||n(),e){const a=pe.subscribeKey("open",c=>{c||(se.state.view!==e&&se.replace(e),a(),i(new Error("Modal closed")))})}const o=m.subscribeKey("activeCaipAddress",a=>{a&&(s==null||s(),t&&pe.close(),o(),r(tt.parseCaipAddress(a)))})})},async updateEmail(){const t=L.getConnectedConnectorId(m.state.activeChain),e=q.getAuthConnector();if(!e)throw new Error("No auth connector found");if(t!==U.CONNECTOR_ID.AUTH)throw new Error("Not connected to email or social");const n=e.provider.getEmail()??"";return await pe.open({view:"UpdateEmailWallet",data:{email:n,redirectView:void 0}}),new Promise((s,r)=>{const i=setInterval(()=>{const a=e.provider.getEmail()??"";a!==n&&(pe.close(),clearInterval(i),o(),s({email:a}))},Sy),o=pe.subscribeKey("open",a=>{a||(se.state.view!=="Connect"&&se.push("Connect"),clearInterval(i),o(),r(new Error("Modal closed")))})})},canSwitchToSmartAccount(t){return m.checkIfSmartAccountEnabled()&&nn(t)===en.ACCOUNT_TYPES.EOA}};function _p(){var s,r;const t=((s=m.state.activeCaipNetwork)==null?void 0:s.chainNamespace)||"eip155",e=((r=m.state.activeCaipNetwork)==null?void 0:r.id)||1,n=we.NATIVE_TOKEN_ADDRESS[t];return`${t}:${e}:${n}`}function nn(t){var n;return(n=m.getAccountData(t))==null?void 0:n.preferredAccountType}function mo(t){var e,n;return t?(n=(e=m.state.chains.get(t))==null?void 0:e.networkState)==null?void 0:n.caipNetwork:m.state.activeCaipNetwork}const Xo={getConnectionStatus(t,e){const n=q.state.activeConnectorIds[e],s=V.getConnections(e);return!!n&&t.connectorId===n?"connected":s.some(o=>o.connectorId.toLowerCase()===t.connectorId.toLowerCase())?"active":"disconnected"},excludeConnectorAddressFromConnections({connections:t,connectorId:e,addresses:n}){return t.map(s=>{if((e?s.connectorId.toLowerCase()===e.toLowerCase():!1)&&n){const i=s.accounts.filter(o=>!n.some(c=>c.toLowerCase()===o.address.toLowerCase()));return{...s,accounts:i}}return s})},excludeExistingConnections(t,e){const n=new Set(t);return e.filter(s=>!n.has(s.connectorId))},getConnectionsByConnectorId(t,e){return t.filter(n=>n.connectorId.toLowerCase()===e.toLowerCase())},getConnectionsData(t){var a;const e=!!((a=k.state.remoteFeatures)!=null&&a.multiWallet),n=q.state.activeConnectorIds[t],s=V.getConnections(t),i=(V.state.recentConnections.get(t)??[]).filter(c=>q.getConnectorById(c.connectorId)),o=Xo.excludeExistingConnections([...s.map(c=>c.connectorId),...n?[n]:[]],i);return e?{connections:s,recentConnections:o}:{connections:s.filter(c=>c.connectorId.toLowerCase()===(n==null?void 0:n.toLowerCase())),recentConnections:[]}}},$e=ke({transactions:[],transactionsByYear:{},lastNetworkInView:void 0,loading:!1,empty:!1,next:void 0}),Ny={state:$e,subscribe(t){return nt($e,()=>t($e))},setLastNetworkInView(t){$e.lastNetworkInView=t},async fetchTransactions(t){var e;if(!t)throw new Error("Transactions can't be fetched without an accountAddress");$e.loading=!0;try{const n=await re.fetchTransactions({account:t,cursor:$e.next,chainId:(e=m.state.activeCaipNetwork)==null?void 0:e.caipNetworkId}),s=Bo.filterSpamTransactions(n.data),r=Bo.filterByConnectedChain(s),i=[...$e.transactions,...r];$e.loading=!1,$e.transactions=i,$e.transactionsByYear=Bo.groupTransactionsByYearAndMonth($e.transactionsByYear,r),$e.empty=i.length===0,$e.next=n.next?n.next:void 0}catch{const s=m.state.activeChain;he.sendEvent({type:"track",event:"ERROR_FETCH_TRANSACTIONS",properties:{address:t,projectId:k.state.projectId,cursor:$e.next,isSmartAccount:nn(s)===en.ACCOUNT_TYPES.SMART_ACCOUNT}}),An.showError("Failed to fetch transactions"),$e.loading=!1,$e.empty=!0,$e.next=void 0}},groupTransactionsByYearAndMonth(t={},e=[]){const n=t;return e.forEach(s=>{const r=new Date(s.metadata.minedAt).getFullYear(),i=new Date(s.metadata.minedAt).getMonth(),o=n[r]??{},c=(o[i]??[]).filter(l=>l.id!==s.id);n[r]={...o,[i]:[...c,s].sort((l,u)=>new Date(u.metadata.minedAt).getTime()-new Date(l.metadata.minedAt).getTime())}}),n},filterSpamTransactions(t){return t.filter(e=>!e.transfers.every(s=>{var r;return((r=s.nft_info)==null?void 0:r.flags.is_spam)===!0}))},filterByConnectedChain(t){var s;const e=(s=m.state.activeCaipNetwork)==null?void 0:s.caipNetworkId;return t.filter(r=>r.metadata.chain===e)},clearCursor(){$e.next=void 0},resetTransactions(){$e.transactions=[],$e.transactionsByYear={},$e.lastNetworkInView=void 0,$e.loading=!1,$e.empty=!1,$e.next=void 0}},Bo=rn(Ny,"API_ERROR"),me=ke({connections:new Map,recentConnections:new Map,isSwitchingConnection:!1,wcError:!1,buffering:!1,status:"disconnected"});let Ss;const Ty={state:me,subscribe(t){return nt(me,()=>t(me))},subscribeKey(t,e){return st(me,t,e)},_getClient(){return me._client},setClient(t){me._client=Ci(t)},initialize(t){const e=t.filter(n=>!!n.namespace).map(n=>n.namespace);V.syncStorageConnections(e)},syncStorageConnections(t){const e=L.getConnections(),n=t??Array.from(m.state.chains.keys());for(const s of n){const r=e[s]??[],i=new Map(me.recentConnections);i.set(s,r),me.recentConnections=i}},getConnections(t){return t?me.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,s,r,i;const e=J.isTelegram()||J.isSafari()&&J.isIos();if(t==="always"||t==="auto"&&e){if(Ss){await Ss,Ss=void 0;return}if(!J.isPairingExpired(me==null?void 0:me.wcPairingExpiry)){const o=me.wcUri;me.wcUri=o;return}Ss=(s=(n=V._getClient())==null?void 0:n.connectWalletConnect)==null?void 0:s.call(n).catch(()=>{}),V.state.status="connecting",await Ss,Ss=void 0,me.wcPairingExpiry=void 0,V.state.status="connected"}else await((i=(r=V._getClient())==null?void 0:r.connectWalletConnect)==null?void 0:i.call(r))},async connectExternal(t,e,n=!0){var r,i;const s=await((i=(r=V._getClient())==null?void 0:r.connectExternal)==null?void 0:i.call(r,t));return n&&m.setActiveNamespace(e),s},async reconnectExternal(t){var n,s;await((s=(n=V._getClient())==null?void 0:n.reconnectExternal)==null?void 0:s.call(n,t));const e=t.chain||m.state.activeChain;e&&q.setConnectorId(t.id,e)},async setPreferredAccountType(t,e){var s;if(!e)return;pe.setLoading(!0,m.state.activeChain);const n=q.getAuthConnector();n&&(m.setAccountProp("preferredAccountType",t,e),await n.provider.setPreferredAccount(t),L.setPreferredAccountTypes(Object.entries(m.state.chains).reduce((r,[i,o])=>{const a=i,c=nn(a);return c!==void 0&&(r[a]=c),r},{})),await V.reconnectExternal(n),pe.setLoading(!1,m.state.activeChain),he.sendEvent({type:"track",event:"SET_PREFERRED_ACCOUNT_TYPE",properties:{accountType:t,network:((s=m.state.activeCaipNetwork)==null?void 0:s.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 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(){me.wcUri=void 0,me.wcPairingExpiry=void 0,me.wcLinking=void 0,me.recentWallet=void 0,me.status="disconnected",Bo.resetTransactions(),L.deleteWalletConnectDeepLink(),L.deleteRecentWallet()},resetUri(){me.wcUri=void 0,me.wcPairingExpiry=void 0,Ss=void 0},finalizeWcConnection(t){var s,r;const{wcLinking:e,recentWallet:n}=V.state;e&&L.setWalletConnectDeepLink(e),n&&L.setAppKitRecent(n),t&&he.sendEvent({type:"track",event:"CONNECT_SUCCESS",address:t,properties:{method:e?"mobile":"qrcode",name:((r=(s=se.state.data)==null?void 0:s.wallet)==null?void 0:r.name)||"Unknown",view:se.state.view,walletRank:n==null?void 0:n.order}})},setWcBasic(t){me.wcBasic=t},setUri(t){me.wcUri=t,me.wcPairingExpiry=J.getPairingExpiry()},setWcLinking(t){me.wcLinking=t},setWcError(t){me.wcError=t,me.buffering=!1},setRecentWallet(t){me.recentWallet=t},setBuffering(t){me.buffering=t},setStatus(t){me.status=t},setIsSwitchingConnection(t){me.isSwitchingConnection=t},async disconnect({id:t,namespace:e,initialDisconnect:n}={}){var s;try{await((s=V._getClient())==null?void 0:s.disconnect({id:t,chainNamespace:e,initialDisconnect:n}))}catch(r){throw new Xs("Failed to disconnect","INTERNAL_SDK_ERROR",r)}},async disconnectConnector({id:t,namespace:e}){var n;try{await((n=V._getClient())==null?void 0:n.disconnectConnector({id:t,namespace:e}))}catch(s){throw new Xs("Failed to disconnect connector","INTERNAL_SDK_ERROR",s)}},setConnections(t,e){const n=new Map(me.connections);n.set(e,t),me.connections=n},async handleAuthAccountSwitch({address:t,namespace:e}){var i,o;const n=m.getAccountData(e),s=(o=(i=n==null?void 0:n.user)==null?void 0:i.accounts)==null?void 0:o.find(a=>a.type==="smartAccount"),r=s&&s.address.toLowerCase()===t.toLowerCase()&&Vr.canSwitchToSmartAccount(e)?"smartAccount":"eoa";await V.setPreferredAccountType(r,e)},async handleActiveConnection({connection:t,namespace:e,address:n}){const s=q.getConnectorById(t.connectorId),r=t.connectorId===U.CONNECTOR_ID.AUTH;if(!s)throw new Error(`No connector found for connection: ${t.connectorId}`);if(r)n&&await V.handleAuthAccountSwitch({address:n,namespace:e});else{const i=await V.connectExternal({id:s.id,type:s.type,provider:s.provider,address:n,chain:e},e);return i==null?void 0:i.address}return n},async handleDisconnectedConnection({connection:t,namespace:e,address:n,closeModalOnConnect:s}){var l,u;const r=q.getConnectorById(t.connectorId),i=(u=(l=t.auth)==null?void 0:l.name)==null?void 0:u.toLowerCase(),o=t.connectorId===U.CONNECTOR_ID.AUTH,a=t.connectorId===U.CONNECTOR_ID.WALLET_CONNECT;if(!r)throw new Error(`No connector found for connection: ${t.connectorId}`);let c;if(o)if(i&&Vr.isSocialProvider(i)){const{address:d}=await Vr.connectSocial({social:i,closeModalOnConnect:s,onOpenFarcaster(){pe.open({view:"ConnectingFarcaster"})},onConnect(){se.replace("ProfileWallets")}});c=d}else{const{address:d}=await Vr.connectEmail({closeModalOnConnect:s,onOpen(){pe.open({view:"EmailLogin"})},onConnect(){se.replace("ProfileWallets")}});c=d}else if(a){const{address:d}=await Vr.connectWalletConnect({walletConnect:!0,connector:r,closeModalOnConnect:s,onOpen(h){const p=h?"AllWallets":"ConnectingWalletConnect";pe.state.open?se.push(p):pe.open({view:p})},onConnect(){se.replace("ProfileWallets")}});c=d}else{const d=await V.connectExternal({id:r.id,type:r.type,provider:r.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:s,onChange:r}){var c;let i;const o=(c=m.getAccountData(n))==null?void 0:c.caipAddress;if(o){const{address:l}=tt.parseCaipAddress(o);i=l}const a=Xo.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();r==null||r({address:l,namespace:n,hasSwitchedAccount:u,hasSwitchedWallet:a==="active"})}break}case"disconnected":{const l=await V.handleDisconnectedConnection({connection:t,namespace:n,address:e,closeModalOnConnect:s});l&&(r==null||r({address:l,namespace:n,hasSwitchedAccount:!0,hasSwitchedWallet:!0}));break}default:throw new Error(`Invalid connection status: ${a}`)}}},V=rn(Ty),La={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 bp(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],s=parseInt(n,10);return isNaN(s)?"0x0":`0x${s.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 Ba;async function Nu(){if(!Ba){const{createPublicClient:t,http:e,defineChain:n}=await Go(()=>import("./index-6f2b1e4e.js"),["assets/index-6f2b1e4e.js","assets/index-0ed0aefc.js","assets/index-1b1958de.css","assets/index-2afd209b.js"]);Ba={createPublicClient:t,http:e,defineChain:n}}return Ba}const Bc={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 Nu(),{chainId:n}=tt.parseCaipNetworkId(t.caipNetworkId);return e({...t,id:Number(n)})},async createViemPublicClient(t){const{createPublicClient:e,http:n}=await Nu(),s=k.state.projectId,r=await Bc.getViemChain(t);if(!r)throw new Error(`Chain ${t.caipNetworkId} not found in viem/chains`);return e({chain:r,transport:n(Bc.getBlockchainApiRpcUrl(t.caipNetworkId,s))})}},Ml={async getMyTokensWithBalance(t){var a;const e=(a=m.getAccountData())==null?void 0:a.address,n=m.state.activeCaipNetwork,s=q.getConnectorId("eip155")===U.CONNECTOR_ID.AUTH;if(!e||!n)return[];const r=`${n.caipNetworkId}:${e}`,i=L.getBalanceCacheForCaipAddress(r);if(i)return i.balances;if(n.chainNamespace===U.CHAIN.EVM&&s){const c=await this.getEIP155Balances(e,n);if(c)return this.filterLowQualityTokens(c)}const o=await re.getBalance(e,n.caipNetworkId,t);return this.filterLowQualityTokens(o.balances)},async getEIP155Balances(t,e){var n,s;try{const r=La.getChainIdHexFromCAIP2ChainId(e.caipNetworkId),i=await V.getCapabilities(t);if(!((s=(n=i==null?void 0:i[r])==null?void 0:n.assetDiscovery)!=null&&s.supported))return null;const o=await V.walletGetAssets({account:t,chainFilter:[r]});if(!La.isWalletGetAssetsResponse(o))return null;const c=(o[r]||[]).map(l=>La.createBalance(l,e.caipNetworkId));return L.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 s=await Bc.createViemPublicClient(n),{address:r}=tt.parseCaipAddress(t),[{result:i},{result:o},{result:a},{result:c}]=await s.multicall({contracts:[{address:e,functionName:"name",args:[],abi:go},{address:e,functionName:"symbol",args:[],abi:go},{address:e,functionName:"balanceOf",args:[r],abi:go},{address:e,functionName:"decimals",args:[],abi:go}]});return{name:i,symbol:o,decimals:c,balance:a&&c?bp(a,c):"0"}}},Fa={adapters:{}},Ip={state:Fa,initialize(t){Fa.adapters={...t}},get(t){return Fa.adapters[t]}},Zo={eip155:void 0,solana:void 0,polkadot:void 0,bip122:void 0,cosmos:void 0,sui:void 0,stacks:void 0},bt=ke({providers:{...Zo},providerIds:{...Zo}}),Ue={state:bt,subscribeKey(t,e){return st(bt,t,e)},subscribe(t){return nt(bt,()=>{t(bt)})},subscribeProviders(t){return nt(bt.providers,()=>t(bt.providers))},setProvider(t,e){t&&e&&(bt.providers[t]=Ci(e))},getProvider(t){if(t)return bt.providers[t]},setProviderId(t,e){e&&(bt.providerIds[t]=e)},getProviderId(t){if(t)return bt.providerIds[t]},reset(){bt.providers={...Zo},bt.providerIds={...Zo}},resetChain(t){bt.providers[t]=void 0,bt.providerIds[t]=void 0}},lr=ke({loading:!1,open:!1,selectedNetworkId:void 0,activeChain:void 0,initialized:!1}),Hn={state:lr,subscribe(t){return nt(lr,()=>t(lr))},subscribeOpen(t){return st(lr,"open",t)},set(t){Object.assign(lr,{...lr,...t})}},Oy={async getTokenList(t){var s;const e=await re.fetchSwapTokens({chainId:t});return((s=e==null?void 0:e.tokens)==null?void 0:s.map(r=>({...r,eip2612:!1,quantity:{decimals:"0",numeric:"0"},price:0,value:0})))||[]},async fetchGasPrice(){var e;const t=m.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 re.fetchGasPrice({chainId:t.caipNetworkId})}}catch{return null}},async fetchSwapAllowance({tokenAddress:t,userAddress:e,sourceTokenAmount:n,sourceTokenDecimals:s}){const r=await re.fetchSwapAllowance({tokenAddress:t,userAddress:e});if(r!=null&&r.allowance&&n&&s){const i=V.parseUnits(n,s)||0;return BigInt(r.allowance)>=i}return!1},async getMyTokensWithBalance(t){const e=await Ml.getMyTokensWithBalance(t);return m.setAccountProp("tokenBalance",e,m.state.activeChain),this.mapBalancesToSwapTokens(e)},mapBalancesToSwapTokens(t){return(t==null?void 0:t.map(e=>({...e,address:e!=null&&e.address?e.address:_p(),decimals:parseInt(e.quantity.decimals,10),logoUri:e.iconUrl,eip2612:!1})))||[]},async handleSwapError(t){var e,n;try{const s=t==null?void 0:t.cause;if(!(s!=null&&s.json))return;const r=await s.json(),i=(n=(e=r==null?void 0:r.reasons)==null?void 0:e[0])==null?void 0:n.description;return i!=null&&i.includes("insufficient liquidity")?"Insufficient liquidity":void 0}catch{return}}},ye=ke({tokenBalances:[],loading:!1}),Ry={state:ye,subscribe(t){return nt(ye,()=>t(ye))},subscribeKey(t,e){return st(ye,t,e)},setToken(t){t&&(ye.token=Ci(t))},setTokenAmount(t){ye.sendTokenAmount=t},setReceiverAddress(t){ye.receiverAddress=t},setReceiverProfileImageUrl(t){ye.receiverProfileImageUrl=t},setReceiverProfileName(t){ye.receiverProfileName=t},setNetworkBalanceInUsd(t){ye.networkBalanceInUSD=t},setLoading(t){ye.loading=t},getSdkEventProperties(t){var e,n;return{message:J.parseError(t),isSmartAccount:nn(m.state.activeChain)===en.ACCOUNT_TYPES.SMART_ACCOUNT,token:((e=ye.token)==null?void 0:e.symbol)||"",amount:ye.sendTokenAmount??0,network:((n=m.state.activeCaipNetwork)==null?void 0:n.caipNetworkId)||""}},async sendToken(){var t;try{switch(de.setLoading(!0),(t=m.state.activeCaipNetwork)==null?void 0:t.chainNamespace){case"eip155":await de.sendEvmToken();return;case"solana":await de.sendSolanaToken();return;default:throw new Error("Unsupported chain")}}catch(e){throw qn.isUserRejectedRequestError(e)?new mp(e):e}finally{de.setLoading(!1)}},async sendEvmToken(){var n,s,r;const t=m.state.activeChain;if(!t)throw new Error("SendController:sendEvmToken - activeChainNamespace is required");const e=nn(t);if(!de.state.sendTokenAmount||!de.state.receiverAddress)throw new Error("An amount and receiver address are required");if(!de.state.token)throw new Error("A token is required");if((n=de.state.token)!=null&&n.address){he.sendEvent({type:"track",event:"SEND_INITIATED",properties:{isSmartAccount:e===en.ACCOUNT_TYPES.SMART_ACCOUNT,token:de.state.token.address,amount:de.state.sendTokenAmount,network:((s=m.state.activeCaipNetwork)==null?void 0:s.caipNetworkId)||""}});const{hash:i}=await de.sendERC20Token({receiverAddress:de.state.receiverAddress,tokenAddress:de.state.token.address,sendTokenAmount:de.state.sendTokenAmount,decimals:de.state.token.quantity.decimals});i&&(ye.hash=i)}else{he.sendEvent({type:"track",event:"SEND_INITIATED",properties:{isSmartAccount:e===en.ACCOUNT_TYPES.SMART_ACCOUNT,token:de.state.token.symbol||"",amount:de.state.sendTokenAmount,network:((r=m.state.activeCaipNetwork)==null?void 0:r.caipNetworkId)||""}});const{hash:i}=await de.sendNativeToken({receiverAddress:de.state.receiverAddress,sendTokenAmount:de.state.sendTokenAmount,decimals:de.state.token.quantity.decimals});i&&(ye.hash=i)}},async fetchTokenBalance(t){var o,a,c;ye.loading=!0;const e=m.state.activeChain,n=(o=m.state.activeCaipNetwork)==null?void 0:o.caipNetworkId,s=(a=m.state.activeCaipNetwork)==null?void 0:a.chainNamespace,r=((c=m.getAccountData(e))==null?void 0:c.caipAddress)??m.state.activeCaipAddress,i=r?J.getPlainAddress(r):void 0;if(ye.lastRetry&&!J.isAllowedRetry(ye.lastRetry,30*we.ONE_SEC_MS))return ye.loading=!1,[];try{if(i&&n&&s){const l=await Ml.getMyTokensWithBalance();return ye.tokenBalances=l,ye.lastRetry=void 0,l}}catch(l){ye.lastRetry=Date.now(),t==null||t(l),An.showError("Token Balance Unavailable")}finally{ye.loading=!1}return[]},fetchNetworkBalance(){if(ye.tokenBalances.length===0)return;const t=Oy.mapBalancesToSwapTokens(ye.tokenBalances);if(!t)return;const e=t.find(n=>n.address===_p());e&&(ye.networkBalanceInUSD=e?Bm.multiply(e.quantity.numeric,e.price).toString():"0")},async sendNativeToken(t){var o,a,c,l;se.pushTransactionStack({});const e=t.receiverAddress,n=(o=m.getAccountData())==null?void 0:o.address,s=V.parseUnits(t.sendTokenAmount.toString(),Number(t.decimals)),r="0x",i=await V.sendTransaction({chainNamespace:U.CHAIN.EVM,to:e,address:n,data:r,value:s??BigInt(0)});return he.sendEvent({type:"track",event:"SEND_SUCCESS",properties:{isSmartAccount:nn("eip155")===en.ACCOUNT_TYPES.SMART_ACCOUNT,token:((a=de.state.token)==null?void 0:a.symbol)||"",amount:t.sendTokenAmount,network:((c=m.state.activeCaipNetwork)==null?void 0:c.caipNetworkId)||"",hash:i||""}}),(l=V._getClient())==null||l.updateBalance("eip155"),de.resetSend(),{hash:i}},async sendERC20Token(t){var s,r,i;se.pushTransactionStack({onSuccess(){se.replace("Account")}});const e=V.parseUnits(t.sendTokenAmount.toString(),Number(t.decimals)),n=(s=m.getAccountData())==null?void 0:s.address;if(n&&t.sendTokenAmount&&t.receiverAddress&&t.tokenAddress){const o=J.getPlainAddress(t.tokenAddress);if(!o)throw new Error("SendController:sendERC20Token - tokenAddress is required");const a=await V.writeContract({fromAddress:n,tokenAddress:o,args:[t.receiverAddress,e??BigInt(0)],method:"transfer",abi:Wm.getERC20Abi(o),chainNamespace:U.CHAIN.EVM});return he.sendEvent({type:"track",event:"SEND_SUCCESS",properties:{isSmartAccount:nn("eip155")===en.ACCOUNT_TYPES.SMART_ACCOUNT,token:((r=de.state.token)==null?void 0:r.symbol)||"",amount:t.sendTokenAmount,network:((i=m.state.activeCaipNetwork)==null?void 0:i.caipNetworkId)||"",hash:a||""}}),de.resetSend(),{hash:a}}return{hash:void 0}},async sendSolanaToken(){var n,s,r;if(!de.state.sendTokenAmount||!de.state.receiverAddress)throw new Error("An amount and receiver address are required");se.pushTransactionStack({onSuccess(){se.replace("Account")}});let t;de.state.token&&de.state.token.address!==we.SOLANA_NATIVE_TOKEN_ADDRESS&&(J.isCaipAddress(de.state.token.address)?t=J.getPlainAddress(de.state.token.address):t=de.state.token.address);const e=await V.sendTransaction({chainNamespace:"solana",tokenMint:t,to:de.state.receiverAddress,value:de.state.sendTokenAmount});e&&(ye.hash=e),(n=V._getClient())==null||n.updateBalance("solana"),he.sendEvent({type:"track",event:"SEND_SUCCESS",properties:{isSmartAccount:!1,token:((s=de.state.token)==null?void 0:s.symbol)||"",amount:de.state.sendTokenAmount,network:((r=m.state.activeCaipNetwork)==null?void 0:r.caipNetworkId)||"",hash:e||""}}),de.resetSend()},resetSend(){ye.token=void 0,ye.sendTokenAmount=void 0,ye.receiverAddress=void 0,ye.receiverProfileImageUrl=void 0,ye.receiverProfileName=void 0,ye.loading=!1,ye.tokenBalances=[]}},de=rn(Ry),ja={currentTab:0,tokenBalance:[],smartAccountDeployed:!1,addressLabels:new Map,user:void 0,preferredAccountType:void 0},yo={caipNetwork:void 0,supportsAllNetworks:!0,smartAccountEnabledNetworks:[]},G=ke({chains:sy(),activeCaipAddress:void 0,activeChain:void 0,activeCaipNetwork:void 0,noAdapters:!1,universalAdapter:{connectionControllerClient:void 0},isSwitchingNamespace:!1}),Sp={state:G,subscribe(t){return nt(G,()=>{t(G)})},subscribeKey(t,e){return st(G,t,e)},subscribeAccountStateProp(t,e,n){var r;const s=n||G.activeChain;return s?st(((r=G.chains.get(s))==null?void 0:r.accountState)||{},t,e):()=>{}},subscribeChainProp(t,e,n){let s;return nt(G.chains,()=>{var i;const r=n||G.activeChain;if(r){const o=(i=G.chains.get(r))==null?void 0:i[t];s!==o&&(s=o,e(o))}})},initialize(t,e,n){const{chainId:s,namespace:r}=L.getActiveNetworkProps(),i=e==null?void 0:e.find(u=>u.id.toString()===(s==null?void 0:s.toString())),a=t.find(u=>(u==null?void 0:u.namespace)===r)||(t==null?void 0:t[0]),c=t.map(u=>u.namespace).filter(u=>u!==void 0),l=k.state.enableEmbedded?new Set([...c]):new Set([...(e==null?void 0:e.map(u=>u.chainNamespace))??[]]);((t==null?void 0:t.length)===0||!a)&&(G.noAdapters=!0),G.noAdapters||(G.activeChain=a==null?void 0:a.namespace,G.activeCaipNetwork=i,m.setChainNetworkData(a==null?void 0:a.namespace,{caipNetwork:i}),G.activeChain&&Hn.set({activeChain:a==null?void 0:a.namespace})),l.forEach(u=>{const d=e==null?void 0:e.filter(g=>g.chainNamespace===u),h=L.getPreferredAccountTypes()||{},p={...k.state.defaultAccountTypes,...h};m.state.chains.set(u,{namespace:u,networkState:ke({...yo,caipNetwork:d==null?void 0:d[0]}),accountState:ke({...ja,preferredAccountType:p[u]}),caipNetworks:d??[],...n}),m.setRequestedCaipNetworks(d??[],u)})},removeAdapter(t){var e,n;if(G.activeChain===t){const s=Array.from(G.chains.entries()).find(([r])=>r!==t);if(s){const r=(n=(e=s[1])==null?void 0:e.caipNetworks)==null?void 0:n[0];r&&m.setActiveCaipNetwork(r)}}G.chains.delete(t)},addAdapter(t,{connectionControllerClient:e},n){if(!t.namespace)throw new Error("ChainController:addAdapter - adapter must have a namespace");G.chains.set(t.namespace,{namespace:t.namespace,networkState:{...yo,caipNetwork:n[0]},accountState:{...ja},caipNetworks:n,connectionControllerClient:e}),m.setRequestedCaipNetworks((n==null?void 0:n.filter(s=>s.chainNamespace===t.namespace))??[],t.namespace)},addNetwork(t){var n;const e=G.chains.get(t.chainNamespace);if(e){const s=[...e.caipNetworks||[]];(n=e.caipNetworks)!=null&&n.find(r=>r.id===t.id)||s.push(t),G.chains.set(t.chainNamespace,{...e,caipNetworks:s}),m.setRequestedCaipNetworks(s,t.chainNamespace),q.filterByNamespace(t.chainNamespace,!0)}},removeNetwork(t,e){var s,r,i;const n=G.chains.get(t);if(n){const o=((s=G.activeCaipNetwork)==null?void 0:s.id)===e,a=[...((r=n.caipNetworks)==null?void 0:r.filter(c=>c.id!==e))||[]];o&&((i=n==null?void 0:n.caipNetworks)!=null&&i[0])&&m.setActiveCaipNetwork(n.caipNetworks[0]),G.chains.set(t,{...n,caipNetworks:a}),m.setRequestedCaipNetworks(a||[],t),a.length===0&&q.filterByNamespace(t,!1)}},setAdapterNetworkState(t,e){const n=G.chains.get(t);n&&(n.networkState={...n.networkState||yo,...e},G.chains.set(t,n))},setChainAccountData(t,e,n=!0){if(!t)throw new Error("Chain is required to update chain account data");const s=G.chains.get(t);if(s){const r={...s.accountState||ja,...e};G.chains.set(t,{...s,accountState:r}),(G.chains.size===1||G.activeChain===t)&&e.caipAddress&&(G.activeCaipAddress=e.caipAddress)}},setChainNetworkData(t,e){if(!t)return;const n=G.chains.get(t);if(n){const s={...n.networkState||yo,...e};G.chains.set(t,{...n,networkState:s})}},setAccountProp(t,e,n,s=!0){m.setChainAccountData(n,{[t]:e},s)},setActiveNamespace(t){var s,r;G.activeChain=t;const e=t?G.chains.get(t):void 0,n=(s=e==null?void 0:e.networkState)==null?void 0:s.caipNetwork;n!=null&&n.id&&t&&(G.activeCaipAddress=(r=e==null?void 0:e.accountState)==null?void 0:r.caipAddress,G.activeCaipNetwork=n,m.setChainNetworkData(t,{caipNetwork:n}),L.setActiveCaipNetworkId(n==null?void 0:n.caipNetworkId),Hn.set({activeChain:t,selectedNetworkId:n==null?void 0:n.caipNetworkId}))},setActiveCaipNetwork(t){var i,o;if(!t)return;const e=G.activeChain===t.chainNamespace;e||m.setIsSwitchingNamespace(!0);const n=G.chains.get(t.chainNamespace);G.activeChain=t.chainNamespace,G.activeCaipNetwork=t,m.setChainNetworkData(t.chainNamespace,{caipNetwork:t});let s=(i=n==null?void 0:n.accountState)==null?void 0:i.address;if(s)G.activeCaipAddress=`${t.chainNamespace}:${t.id}:${s}`;else if(e&&G.activeCaipAddress){const{address:a}=tt.parseCaipAddress(G.activeCaipAddress);s=a,G.activeCaipAddress=`${t.caipNetworkId}:${s}`}else G.activeCaipAddress=void 0;m.setChainAccountData(t.chainNamespace,{address:s,caipAddress:G.activeCaipAddress}),de.resetSend(),Hn.set({activeChain:G.activeChain,selectedNetworkId:(o=G.activeCaipNetwork)==null?void 0:o.caipNetworkId}),L.setActiveCaipNetworkId(t.caipNetworkId),!m.checkIfSupportedNetwork(t.chainNamespace)&&k.state.enableNetworkSwitch&&!k.state.allowUnsupportedChain&&!V.state.wcBasic&&m.showUnsupportedChainUI()},addCaipNetwork(t){var n;if(!t)return;const e=G.chains.get(t.chainNamespace);e&&((n=e==null?void 0:e.caipNetworks)==null||n.push(t))},async switchActiveNamespace(t){var r;if(!t)return;const e=t!==m.state.activeChain,n=(r=m.getNetworkData(t))==null?void 0:r.caipNetwork,s=m.getCaipNetworkByNamespace(t,n==null?void 0:n.id);e&&s&&await m.switchActiveNetwork(s)},async switchActiveNetwork(t,{throwOnFailure:e=!1}={}){var o;const n=m.state.activeChain;if(!n)throw new Error("ChainController:switchActiveNetwork - namespace is required");const s=Ue.getProviderId(G.activeChain)==="AUTH",r=(o=m.getAccountData(n))==null?void 0:o.address,i=U.AUTH_CONNECTOR_SUPPORTED_CHAINS.includes(t.chainNamespace);try{if(r&&t.chainNamespace===n||s&&i){const a=Ip.get(t.chainNamespace);if(!a)throw new Error("Adapter not found");await a.switchNetwork({caipNetwork:t})}m.setActiveCaipNetwork(t)}catch(a){if(e)throw a}he.sendEvent({type:"track",event:"SWITCH_NETWORK",properties:{network:t.caipNetworkId}})},getConnectionControllerClient(t){const e=t||G.activeChain;if(!e)throw new Error("Chain is required to get connection controller client");const n=G.chains.get(e);if(!(n!=null&&n.connectionControllerClient))throw new Error("ConnectionController client not set");return n.connectionControllerClient},getNetworkProp(t,e){var s;const n=(s=G.chains.get(e))==null?void 0:s.networkState;if(n)return n[t]},getRequestedCaipNetworks(t){const e=G.chains.get(t),{approvedCaipNetworkIds:n=[],requestedCaipNetworks:s=[]}=(e==null?void 0:e.networkState)||{};return J.sortRequestedNetworks(n,s).filter(o=>o==null?void 0:o.id)},getAllRequestedCaipNetworks(){const t=[];return G.chains.forEach(e=>{if(!e.namespace)throw new Error("ChainController:getAllRequestedCaipNetworks - chainAdapter must have a namespace");const n=m.getRequestedCaipNetworks(e.namespace);t.push(...n)}),t},setRequestedCaipNetworks(t,e){m.setAdapterNetworkState(e,{requestedCaipNetworks:t});const s=m.getAllRequestedCaipNetworks().map(i=>i.chainNamespace),r=Array.from(new Set(s));q.filterByNamespaces(r)},getAllApprovedCaipNetworkIds(){const t=[];return G.chains.forEach(e=>{if(!e.namespace)throw new Error("ChainController:getAllApprovedCaipNetworkIds - chainAdapter must have a namespace");const n=m.getApprovedCaipNetworkIds(e.namespace);t.push(...n)}),t},getActiveCaipNetwork(t){var e,n;return t?(n=(e=G.chains.get(t))==null?void 0:e.networkState)==null?void 0:n.caipNetwork:G.activeCaipNetwork},getActiveCaipAddress(){return G.activeCaipAddress},getApprovedCaipNetworkIds(t){var s;const e=G.chains.get(t);return((s=e==null?void 0:e.networkState)==null?void 0:s.approvedCaipNetworkIds)||[]},setApprovedCaipNetworksData(t,e){m.setAdapterNetworkState(t,e)},checkIfSupportedNetwork(t,e){var r;const n=e||((r=G.activeCaipNetwork)==null?void 0:r.caipNetworkId),s=m.getRequestedCaipNetworks(t);return s.length?s==null?void 0:s.some(i=>i.caipNetworkId===n):!0},checkIfSupportedChainId(t){if(!G.activeChain)return!0;const e=m.getRequestedCaipNetworks(G.activeChain);return e==null?void 0:e.some(n=>n.id===t)},checkIfSmartAccountEnabled(){var s,r;const t=hp.caipNetworkIdToNumber((s=G.activeCaipNetwork)==null?void 0:s.caipNetworkId);if(!G.activeChain||!t)return!1;const n=((r=Dc.get(ms.SMART_ACCOUNT_ENABLED_NETWORKS))==null?void 0:r.split(","))||[];return!!(n!=null&&n.includes(t.toString()))},showUnsupportedChainUI(){pe.open({view:"UnsupportedChain"})},checkIfNamesSupported(){const t=G.activeCaipNetwork;return!!(t!=null&&t.chainNamespace&&we.NAMES_SUPPORTED_CHAIN_NAMESPACES.includes(t.chainNamespace))},resetNetwork(t){m.setAdapterNetworkState(t,{approvedCaipNetworkIds:void 0,supportsAllNetworks:!0})},resetAccount(t){var r,i;const e=t;if(!e)throw new Error("Chain is required to set account prop");const n=(i=(r=m.state.chains.get(e))==null?void 0:r.accountState)==null?void 0:i.preferredAccountType,s=k.state.defaultAccountTypes[e];G.activeCaipAddress=void 0,m.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:s||n,socialProvider:void 0,socialWindow:void 0,farcasterUrl:void 0,user:void 0,status:"disconnected"}),q.removeConnectorId(e)},setIsSwitchingNamespace(t){G.isSwitchingNamespace=t},getFirstCaipNetworkSupportsAuthConnector(){var n,s;const t=[];let e;if(G.chains.forEach(r=>{U.AUTH_CONNECTOR_SUPPORTED_CHAINS.find(i=>i===r.namespace)&&r.namespace&&t.push(r.namespace)}),t.length>0){const r=t[0];return e=r?(s=(n=G.chains.get(r))==null?void 0:n.caipNetworks)==null?void 0:s[0]:void 0,e}},getAccountData(t){var n;const e=t||G.activeChain;if(e)return(n=m.state.chains.get(e))==null?void 0:n.accountState},getNetworkData(t){var n;const e=t||G.activeChain;if(e)return(n=m.state.chains.get(e))==null?void 0:n.networkState},getCaipNetworkByNamespace(t,e){var r,i,o;if(!t)return;const n=m.state.chains.get(t),s=(r=n==null?void 0:n.caipNetworks)==null?void 0:r.find(a=>a.id.toString()===(e==null?void 0:e.toString()));return s||((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=q.state.filterByNamespace;return(t?[G.chains.get(t)]:Array.from(G.chains.values())).flatMap(n=>(n==null?void 0:n.caipNetworks)||[]).map(n=>n.caipNetworkId)},getCaipNetworks(t){return t?m.getRequestedCaipNetworks(t):m.getAllRequestedCaipNetworks()},getCaipNetworkById(t,e){return Sp.getCaipNetworks(e).find(n=>n.id.toString()===t.toString()||n.caipNetworkId.toString()===t.toString())},setLastConnectedSIWECaipNetwork(t){G.lastConnectedSIWECaipNetwork=t},getLastConnectedSIWECaipNetwork(){return G.lastConnectedSIWECaipNetwork},async fetchTokenBalance(t){var o,a;const e=m.getAccountData();if(!e)return[];const n=(o=m.state.activeCaipNetwork)==null?void 0:o.caipNetworkId,s=(a=m.state.activeCaipNetwork)==null?void 0:a.chainNamespace,r=m.state.activeCaipAddress,i=r?J.getPlainAddress(r):void 0;if(m.setAccountProp("balanceLoading",!0,s),e.lastRetry&&!J.isAllowedRetry(e.lastRetry,30*we.ONE_SEC_MS))return m.setAccountProp("balanceLoading",!1,s),[];try{if(i&&n&&s){const c=await Ml.getMyTokensWithBalance();return m.setAccountProp("tokenBalance",c,s),m.setAccountProp("lastRetry",void 0,s),m.setAccountProp("balanceLoading",!1,s),c}}catch(c){m.setAccountProp("lastRetry",Date.now(),s),t==null||t(c),An.showError("Token Balance Unavailable")}finally{m.setAccountProp("balanceLoading",!1,s)}return[]},isCaipNetworkDisabled(t){var c;const e=t.chainNamespace,n=!!((c=m.getAccountData(e))!=null&&c.caipAddress),s=m.getAllApprovedCaipNetworkIds(),r=m.getNetworkProp("supportsAllNetworks",e)!==!1,i=q.getConnectorId(e),o=q.getAuthConnector(),a=i===U.CONNECTOR_ID.AUTH&&o;return!n||r||a?!1:!(s!=null&&s.includes(t.caipNetworkId))}},m=rn(Sp),Py={onSwitchNetwork({network:t,ignoreSwitchConfirmation:e=!1}){var h,p;const n=m.state.activeCaipNetwork,s=m.state.activeChain,r=se.state.data;if(t.id===(n==null?void 0:n.id))return;const o=!!((h=m.getAccountData(s))!=null&&h.address),a=!!((p=m.getAccountData(t.chainNamespace))!=null&&p.address),c=t.chainNamespace!==s,u=q.getConnectorId(s)===U.CONNECTOR_ID.AUTH,d=U.AUTH_CONNECTOR_SUPPORTED_CHAINS.find(g=>g===t.chainNamespace);e||u&&d?se.push("SwitchNetwork",{...r,network:t}):o&&c&&!a?se.push("SwitchActiveChain",{switchToChain:t.chainNamespace,navigateTo:"Connect",navigateWithReplace:!0,network:t}):se.push("SwitchNetwork",{...r,network:t})}},Et=ke({loading:!1,loadingNamespaceMap:new Map,open:!1,shake:!1,namespace:void 0}),xy={state:Et,subscribe(t){return nt(Et,()=>t(Et))},subscribeKey(t,e){return st(Et,t,e)},async open(t){var o,a;const e=t==null?void 0:t.namespace,n=m.state.activeChain,s=e&&e!==n,r=(o=m.getAccountData(t==null?void 0:t.namespace))==null?void 0:o.caipAddress,i=m.state.noAdapters;if(V.state.wcBasic?Q.prefetch({fetchNetworkImages:!1,fetchConnectorImages:!1,fetchWalletRanks:!1}):await Q.prefetch(),q.setFilterByNamespace(t==null?void 0:t.namespace),pe.setLoading(!0,e),e&&s){const c=((a=m.getNetworkData(e))==null?void 0:a.caipNetwork)||m.getRequestedCaipNetworks(e)[0];c&&(i?(await m.switchActiveNetwork(c),se.push("ConnectingWalletConnectBasic")):Py.onSwitchNetwork({network:c,ignoreSwitchConfirmation:!0}))}else k.state.manualWCControl||i&&!r?J.isMobile()?se.reset("AllWallets"):se.reset("ConnectingWalletConnectBasic"):t!=null&&t.view?se.reset(t.view,t.data):r?se.reset("Account"):se.reset("Connect");Et.open=!0,Hn.set({open:!0}),he.sendEvent({type:"track",event:"MODAL_OPEN",properties:{connected:!!r}})},close(){const t=k.state.enableEmbedded,e=!!m.state.activeCaipAddress;Et.open&&he.sendEvent({type:"track",event:"MODAL_CLOSE",properties:{connected:e}}),Et.open=!1,se.reset("Connect"),pe.clearLoading(),t?e?se.replace("Account"):se.push("Connect"):Hn.set({open:!1}),V.resetUri()},setLoading(t,e){e&&Et.loadingNamespaceMap.set(e,t),Et.loading=t,Hn.set({loading:t})},clearLoading(){Et.loadingNamespaceMap.clear(),Et.loading=!1,Hn.set({loading:!1})},shake(){Et.shake||(Et.shake=!0,setTimeout(()=>{Et.shake=!1},500))}},pe=rn(xy),di={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"}]},Fc={id:"USD",payment_method_limits:[{id:"card",min:"10.00",max:"7500.00"},{id:"ach_bank_account",min:"10.00",max:"25000.00"}]},ky={providers:wp,selectedProvider:null,error:null,purchaseCurrency:di,paymentCurrency:Fc,purchaseCurrencies:[di],paymentCurrencies:[],quotesLoading:!1},be=ke(ky),$y={state:be,subscribe(t){return nt(be,()=>t(be))},subscribeKey(t,e){return st(be,t,e)},setSelectedProvider(t){var e,n;if(t&&t.name==="meld"){const s=m.state.activeChain,r=s===U.CHAIN.SOLANA?"SOL":"USDC",i=s?((n=(e=m.state.chains.get(s))==null?void 0:e.accountState)==null?void 0:n.address)??"":"",o=new URL(t.url);o.searchParams.append("publicKey",ry),o.searchParams.append("destinationCurrencyCode",r),o.searchParams.append("walletAddress",i),o.searchParams.append("externalCustomerId",k.state.projectId),be.selectedProvider={...t,url:o.toString()}}else be.selectedProvider=t},setOnrampProviders(t){if(Array.isArray(t)&&t.every(e=>typeof e=="string")){const e=t,n=wp.filter(s=>e.includes(s.name));be.providers=n}else be.providers=[]},setPurchaseCurrency(t){be.purchaseCurrency=t},setPaymentCurrency(t){be.paymentCurrency=t},setPurchaseAmount(t){jc.state.purchaseAmount=t},setPaymentAmount(t){jc.state.paymentAmount=t},async getAvailableCurrencies(){const t=await re.getOnrampOptions();be.purchaseCurrencies=t.purchaseCurrencies,be.paymentCurrencies=t.paymentCurrencies,be.paymentCurrency=t.paymentCurrencies[0]||Fc,be.purchaseCurrency=t.purchaseCurrencies[0]||di,await Q.fetchCurrencyImages(t.paymentCurrencies.map(e=>e.id)),await Q.fetchTokenImages(t.purchaseCurrencies.map(e=>e.symbol))},async getQuote(){var t,e;be.quotesLoading=!0;try{const n=await re.getOnrampQuote({purchaseCurrency:be.purchaseCurrency,paymentCurrency:be.paymentCurrency,amount:((t=be.paymentAmount)==null?void 0:t.toString())||"0",network:(e=be.purchaseCurrency)==null?void 0:e.symbol});return be.quotesLoading=!1,be.purchaseAmount=Number(n==null?void 0:n.purchaseAmount.amount),n}catch(n){return be.error=n.message,be.quotesLoading=!1,null}finally{be.quotesLoading=!1}},resetState(){be.selectedProvider=null,be.error=null,be.purchaseCurrency=di,be.paymentCurrency=Fc,be.purchaseCurrencies=[di],be.paymentCurrencies=[],be.paymentAmount=void 0,be.purchaseAmount=void 0,be.quotesLoading=!1}},jc=rn($y),Tu=2147483648,Uy={convertEVMChainIdToCoinType(t){if(t>=Tu)throw new Error("Invalid chainId");return(Tu|t)>>>0}},Wt=ke({suggestions:[],loading:!1}),Dy={state:Wt,subscribe(t){return nt(Wt,()=>t(Wt))},subscribeKey(t,e){return st(Wt,t,e)},async resolveName(t){var e,n;try{return await re.lookupEnsName(t)}catch(s){const r=s;throw new Error(((n=(e=r==null?void 0:r.reasons)==null?void 0:e[0])==null?void 0:n.description)||"Error resolving name")}},async isNameRegistered(t){try{return await re.lookupEnsName(t),!0}catch{return!1}},async getSuggestions(t){try{Wt.loading=!0,Wt.suggestions=[];const e=await re.getEnsNameSuggestions(t);return Wt.suggestions=e.suggestions||[],Wt.suggestions}catch(e){const n=hi.parseEnsApiError(e,"Error fetching name suggestions");throw new Error(n)}finally{Wt.loading=!1}},async getNamesForAddress(t){try{if(!m.state.activeCaipNetwork)return[];const n=L.getEnsFromCacheForAddress(t);if(n)return n;const s=await re.reverseLookupEnsName({address:t});return L.updateEnsCache({address:t,ens:s,timestamp:Date.now()}),s}catch(e){const n=hi.parseEnsApiError(e,"Error fetching names for address");throw new Error(n)}},async registerName(t){var r;const e=m.state.activeCaipNetwork,n=(r=m.getAccountData(e==null?void 0:e.chainNamespace))==null?void 0:r.address,s=q.getAuthConnector();if(!e)throw new Error("Network not found");if(!n||!s)throw new Error("Address or auth connector not found");Wt.loading=!0;try{const i=JSON.stringify({name:t,attributes:{},timestamp:Math.floor(Date.now()/1e3)});se.pushTransactionStack({onCancel(){se.replace("RegisterAccountName")}});const o=await V.signMessage(i);Wt.loading=!1;const a=e.id;if(!a)throw new Error("Network not found");const c=Uy.convertEVMChainIdToCoinType(Number(a));await re.registerEnsName({coinType:c,address:n,signature:o,message:i}),m.setAccountProp("profileName",t,e.chainNamespace),L.updateEnsCache({address:n,ens:[{name:t,registered_at:new Date().toISOString(),updated_at:void 0,addresses:{},attributes:[]}],timestamp:Date.now()}),se.replace("RegisterAccountNameSuccess")}catch(i){const o=hi.parseEnsApiError(i,`Error registering name ${t}`);throw se.replace("RegisterAccountName"),new Error(o)}finally{Wt.loading=!1}},validateName(t){return/^[a-zA-Z0-9-]{4,}$/u.test(t)},parseEnsApiError(t,e){var s,r;const n=t;return((r=(s=n==null?void 0:n.reasons)==null?void 0:s[0])==null?void 0:r.description)||e}},hi=rn(Dy),My={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"]},ys={RPC_ERROR_CODE:{USER_REJECTED:5e3,USER_REJECTED_METHODS:5002},getMethodsByChainNamespace(t){return My[t]||[]},createDefaultNamespace(t){return{methods:this.getMethodsByChainNamespace(t),events:["accountsChanged","chainChanged"],chains:[],rpcMap:{}}},applyNamespaceOverrides(t,e){if(!e)return{...t};const n={...t},s=new Set;if(e.methods&&Object.keys(e.methods).forEach(r=>s.add(r)),e.chains&&Object.keys(e.chains).forEach(r=>s.add(r)),e.events&&Object.keys(e.events).forEach(r=>s.add(r)),e.rpcMap&&Object.keys(e.rpcMap).forEach(r=>{const[i]=r.split(":");i&&s.add(i)}),s.forEach(r=>{n[r]||(n[r]=this.createDefaultNamespace(r))}),e.methods&&Object.entries(e.methods).forEach(([r,i])=>{n[r]&&(n[r].methods=i)}),e.chains&&Object.entries(e.chains).forEach(([r,i])=>{n[r]&&(n[r].chains=i)}),e.events&&Object.entries(e.events).forEach(([r,i])=>{n[r]&&(n[r].events=i)}),e.rpcMap){const r=new Set;Object.entries(e.rpcMap).forEach(([i,o])=>{const[a,c]=i.split(":");!a||!c||!n[a]||(n[a].rpcMap||(n[a].rpcMap={}),r.has(a)||(n[a].rpcMap={},r.add(a)),n[a].rpcMap[c]=o)})}return n},createNamespaces(t,e){const n=t.reduce((s,r)=>{const{id:i,chainNamespace:o,rpcUrls:a}=r,c=a.default.http[0];s[o]||(s[o]=this.createDefaultNamespace(o));const l=`${o}:${i}`,u=s[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),s},{});return this.applyNamespaceOverrides(n,e)},resolveReownName:async t=>{var s;const e=await hi.resolveName(t);return((s=(Object.values(e==null?void 0:e.addresses)||[])[0])==null?void 0:s.address)||!1},getChainsFromNamespaces(t={}){return Object.values(t).flatMap(e=>{const n=e.chains||[],s=e.accounts.map(r=>{const[i,o]=r.split(":");return`${i}:${o}`});return Array.from(new Set([...n,...s]))})},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",s=n&&e.code===ys.RPC_ERROR_CODE.USER_REJECTED_METHODS,r=n&&e.code===ys.RPC_ERROR_CODE.USER_REJECTED;return s||r}return!1}catch{return!1}},isOriginAllowed(t,e,n){for(const s of[...e,...n])if(s.includes("*")){const i=`^${s.replace(/[.*+?^${}()|[\]\\]/gu,"\\$&").replace(/\\\*/gu,".*")}$`;if(new RegExp(i,"u").test(t))return!0}else try{if(new URL(s).origin===t)return!0}catch{if(s===t)return!0}return!1},listenWcProvider({universalProvider:t,namespace:e,onConnect:n,onDisconnect:s,onAccountsChanged:r,onChainChanged:i,onDisplayUri:o}){n&&t.on("connect",()=>{const a=ys.getWalletConnectAccounts(t,e);n(a)}),s&&t.on("disconnect",()=>{s()}),r&&t.on("accountsChanged",a=>{var c,l,u,d,h;try{const p=((u=(l=(c=t.session)==null?void 0:c.namespaces)==null?void 0:l[e])==null?void 0:u.accounts)||[],g=(h=(d=t.rpcProviders)==null?void 0:d[e])==null?void 0:h.getDefaultChain(),f=a.map(y=>{const b=p.find(E=>E.includes(`${e}:${g}:${y}`));if(!b)return;const{chainId:_,chainNamespace:A}=tt.parseCaipAddress(b);return{address:y,chainId:_,chainNamespace:A}}).filter(y=>y!==void 0);f.length>0&&r(f)}catch(p){console.warn("Failed to parse accounts for namespace on accountsChanged event",e,a,p)}}),i&&t.on("chainChanged",a=>{i(a)}),o&&t.on("display_uri",a=>{o(a)})},getWalletConnectAccounts(t,e){var r,i,o,a;const n=new Set,s=(a=(o=(i=(r=t==null?void 0:t.session)==null?void 0:r.namespaces)==null?void 0:i[e])==null?void 0:o.accounts)==null?void 0:a.map(c=>tt.parseCaipAddress(c)).filter(({address:c})=>n.has(c.toLowerCase())?!1:(n.add(c.toLowerCase()),!0));return s&&s.length>0?s:[]}},Ly=[U.CONNECTOR_ID.AUTH,U.CONNECTOR_ID.WALLET_CONNECT];class By{constructor(e){this.availableConnectors=[],this.availableConnections=[],this.providerHandlers={},this.eventListeners=new Map,this.getCaipNetworks=n=>m.getCaipNetworks(n),this.getConnectorId=n=>q.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 s=this.getCaipNetworks().filter(r=>r.chainNamespace===this.namespace).find(r=>r.id.toString()===(n==null?void 0:n.toString()));e&&s&&this.addConnection({connectorId:U.CONNECTOR_ID.AUTH,accounts:e,caipNetwork:s})}setAuthProvider(e){e.onConnect(this.onAuthConnected.bind(this)),e.onSocialConnected(this.onAuthConnected.bind(this)),this.addConnector({id:U.CONNECTOR_ID.AUTH,type:"AUTH",name:U.CONNECTOR_NAMES.AUTH,provider:e,imageId:void 0,chain:this.namespace,chains:[]})}addConnector(...e){const n=new Set;this.availableConnectors=[...e,...this.availableConnectors].filter(s=>n.has(s.id)?!1:(n.add(s.id),!0)),this.emit("connectors",this.availableConnectors)}addConnection(...e){const n=new Set;this.availableConnections=[...e,...this.availableConnections].filter(s=>n.has(s.connectorId.toLowerCase())?!1:(n.add(s.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){m.setAccountProp("status",e,n)}on(e,n){var s;this.eventListeners.has(e)||this.eventListeners.set(e,new Set),(s=this.eventListeners.get(e))==null||s.add(n)}off(e,n){const s=this.eventListeners.get(e);s&&s.delete(n)}removeAllEventListeners(){this.eventListeners.forEach(e=>{e.clear()})}emit(e,n){const s=this.eventListeners.get(e);s&&s.forEach(r=>r(n))}async connectWalletConnect(e){try{return{clientId:(await this.getWalletConnectConnector().connectWalletConnect()).clientId}}catch(n){throw ys.isUserRejectedRequestError(n)?new mp(n):n}}async switchNetwork(e){var i;const{caipNetwork:n}=e,s=Ue.getProviderId(n.chainNamespace),r=Ue.getProvider(n.chainNamespace);if(!r)throw new Error("Provider not found");if(s==="WALLET_CONNECT"){r.setDefaultChain(n.caipNetworkId);return}if(s==="AUTH"){const o=(i=q.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:s,chainId:r}=J.getAccount(e[0]),i=this.getCaipNetworks().filter(a=>a.chainNamespace===this.namespace).find(a=>a.id.toString()===(r==null?void 0:r.toString())),o=this.connectors.find(a=>a.id===n);s&&(this.emit("accountChanged",{address:s,chainId:r,connector:o}),this.addConnection({connectorId:n,accounts:e.map(a=>{const{address:c}=J.getAccount(a);return{address:c}}),caipNetwork:i}))}}onAccountsChanged(e,n,s=!0){var r,i;if(e.length>0){const{address:o}=J.getAccount(e[0]),a=this.getConnection({connectorId:n,connections:this.connections,connectors:this.connectors});o&&((r=this.getConnectorId(U.CHAIN.EVM))==null?void 0:r.toLowerCase())===n.toLowerCase()&&this.emit("accountChanged",{address:o,chainId:(i=a==null?void 0:a.caipNetwork)==null?void 0:i.id,connector:a==null?void 0:a.connector}),this.addConnection({connectorId:n,accounts:e.map(c=>{const{address:l}=J.getAccount(c);return{address:l}}),caipNetwork:a==null?void 0:a.caipNetwork})}else s&&this.onDisconnect(n)}onDisconnect(e){var n;this.removeProviderListeners(e),this.deleteConnection(e),((n=this.getConnectorId(U.CHAIN.EVM))==null?void 0:n.toLowerCase())===e.toLowerCase()&&this.emitFirstAvailableConnection(),this.connections.length===0&&this.emit("disconnect")}onChainChanged(e,n){var o;const s=typeof e=="string"&&e.startsWith("0x")?parseInt(e,16).toString():e.toString(),r=this.getConnection({connectorId:n,connections:this.connections,connectors:this.connectors}),i=this.getCaipNetworks().filter(a=>a.chainNamespace===this.namespace).find(a=>a.id.toString()===s);r&&this.addConnection({connectorId:n,accounts:r.accounts,caipNetwork:i}),((o=this.getConnectorId(U.CHAIN.EVM))==null?void 0:o.toLowerCase())===n.toLowerCase()&&this.emit("switchNetwork",{chainId:s})}listenProviderEvents(e,n){if(Ly.includes(e))return;const s=o=>this.onAccountsChanged(o,e),r=o=>this.onChainChanged(o,e),i=()=>this.onDisconnect(e);this.providerHandlers[e]||(n.on("disconnect",i),n.on("accountsChanged",s),n.on("chainChanged",r),this.providerHandlers[e]={provider:n,disconnect:i,accountsChanged:s,chainChanged:r})}removeProviderListeners(e){if(this.providerHandlers[e]){const{provider:n,disconnect:s,accountsChanged:r,chainChanged:i}=this.providerHandlers[e];n.removeListener("disconnect",s),n.removeListener("accountsChanged",r),n.removeListener("chainChanged",i),this.providerHandlers[e]=null}}emitFirstAvailableConnection(){var n;const e=this.getConnection({connections:this.connections,connectors:this.connectors});if(e){const[s]=e.accounts;this.emit("accountChanged",{address:s==null?void 0:s.address,chainId:(n=e.caipNetwork)==null?void 0:n.id,connector:e.connector})}}getConnection({address:e,connectorId:n,connections:s,connectors:r}){if(n){const o=s.find(l=>l.connectorId.toLowerCase()===n.toLowerCase());if(!o)return null;const a=r.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=s.find(o=>o.accounts.length>0&&r.some(a=>a.id.toLowerCase()===o.connectorId.toLowerCase()));if(i){const[o]=i.accounts,a=r.find(c=>c.id.toLowerCase()===i.connectorId.toLowerCase());return{...i,account:o,connector:a}}return null}}let Ns=null;const hn={getSIWX(){return k.state.siwx},async initializeIfEnabled(t=m.getActiveCaipAddress()){var i,o,a;const e=k.state.siwx;if(!(e&&t))return;const[n,s,r]=t.split(":");if(m.checkIfSupportedNetwork(n,`${n}:${s}`))try{if((i=k.state.remoteFeatures)!=null&&i.emailCapture){const l=(o=m.getAccountData(n))==null?void 0:o.user;await pe.open({view:"DataCapture",data:{email:(l==null?void 0:l.email)??void 0}});return}if(Ns&&await Ns,(await e.getSessions(`${n}:${s}`,r)).length)return;await pe.open({view:"SIWXSignMessage"})}catch(c){console.error("SIWXUtil:initializeIfEnabled",c),he.sendEvent({type:"track",event:"SIWX_AUTH_ERROR",properties:this.getSIWXEventProperties(c)}),await((a=V._getClient())==null?void 0:a.disconnect().catch(console.error)),se.reset("Connect"),An.showError("A problem occurred while trying initialize authentication")}},async isAuthenticated(t=m.getActiveCaipAddress()){if(!k.state.siwx||!t)return!0;const{chainNamespace:n,chainId:s,address:r}=tt.parseCaipAddress(t),i=`${n}:${s}`;return(await hn.getSessions({address:r,caipNetworkId:i})).length>0},async requestSignMessage(){const t=k.state.siwx,e=J.getPlainAddress(m.getActiveCaipAddress()),n=mo(),s=V._getClient();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");if(!s)throw new Error("No ConnectionController client found");try{const r=await t.createMessage({chainId:n.caipNetworkId,accountAddress:e}),i=r.toString();q.getConnectorId(n.chainNamespace)===U.CONNECTOR_ID.AUTH&&se.pushTransactionStack({});const a=await s.signMessage(i);await t.addSession({data:r,message:i,signature:a}),m.setLastConnectedSIWECaipNetwork(n),pe.close(),he.sendEvent({type:"track",event:"SIWX_AUTH_SUCCESS",properties:this.getSIWXEventProperties()})}catch(r){(!pe.state.open||se.state.view==="ApproveTransaction")&&await pe.open({view:"SIWXSignMessage"}),An.showError("Error signing message"),he.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 s=m.getLastConnectedSIWECaipNetwork();if(s){const r=await(e==null?void 0:e.getSessions(s==null?void 0:s.caipNetworkId,J.getPlainAddress(m.getActiveCaipAddress())||""));r&&r.length>0?await m.switchActiveNetwork(s):await V.disconnect()}else await V.disconnect()}else pe.close();pe.close(),he.sendEvent({event:"CLICK_CANCEL_SIWX",type:"track",properties:this.getSIWXEventProperties()})}catch(e){console.error("SIWXUtil:cancelSignMessage",e)}},async getAllSessions(){const t=this.getSIWX(),e=m.getAllRequestedCaipNetworks(),n=[];return await Promise.all(e.map(async s=>{const r=await(t==null?void 0:t.getSessions(s.caipNetworkId,J.getPlainAddress(m.getActiveCaipAddress())||""));r&&n.push(...r)})),n},async getSessions(t){const e=k.state.siwx;let n=t==null?void 0:t.address;if(!n){const r=m.getActiveCaipAddress();n=J.getPlainAddress(r)}let s=t==null?void 0:t.caipNetworkId;if(!s){const r=m.getActiveCaipNetwork();s=r==null?void 0:r.caipNetworkId}return e&&n&&s?e.getSessions(s,n):[]},async isSIWXCloseDisabled(){var e;const t=this.getSIWX();if(t){const n=se.state.view==="ApproveTransaction",s=se.state.view==="SIWXSignMessage";if(n||s)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:s,chainNamespace:r}){var d;const i=hn.getSIWX(),o=mo();if(!i||!r.includes(U.CHAIN.EVM)||(d=k.state.remoteFeatures)!=null&&d.emailCapture){const h=await t.connect({chainId:e,socialUri:n,preferredAccountType:s});return{address:h.address,chainId:h.chainId,accounts:h.accounts}}const a=`${r}:${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:s});return l.accountAddress=u.address,l.serializedMessage=u.message||"",u.signature&&u.message&&await hn.addEmbeddedWalletSession(l,u.message,u.signature),m.setLastConnectedSIWECaipNetwork(o),{address:u.address,chainId:u.chainId,accounts:u.accounts}},async addEmbeddedWalletSession(t,e,n){if(Ns)return Ns;const s=hn.getSIWX();return s?(Ns=s.addSession({data:t,message:e,signature:n}).finally(()=>{Ns=null}),Ns):Promise.resolve()},async universalProviderAuthenticate({universalProvider:t,chains:e,methods:n}){var l,u,d;const s=hn.getSIWX(),r=mo(),i=new Set(e.map(h=>h.split(":")[0]));if(!s||i.size!==1||!i.has("eip155"))return!1;const o=await s.createMessage({chainId:((l=mo())==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)]});An.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(m.setAccountProp("connectedWalletInfo",c,Array.from(i)[0]),(d=a==null?void 0:a.auths)!=null&&d.length){const h=a.auths.map(p=>{const g=t.client.formatAuthMessage({request:p.p,iss:p.p.iss});return{data:{...p.p,accountAddress:p.p.iss.split(":").slice(-1).join(""),chainId:p.p.iss.split(":").slice(2,4).join(":"),uri:p.p.aud,version:p.p.version||o.version,expirationTime:p.p.exp,issuedAt:p.p.iat,notBefore:p.p.nbf},message:g,signature:p.s.s,cacao:p}});try{await s.setSessions(h),r&&m.setLastConnectedSIWECaipNetwork(r),he.sendEvent({type:"track",event:"SIWX_AUTH_SUCCESS",properties:hn.getSIWXEventProperties()})}catch(p){throw console.error("SIWX:universalProviderAuth - failed to set sessions",p),he.sendEvent({type:"track",event:"SIWX_AUTH_ERROR",properties:hn.getSIWXEventProperties(p)}),await t.disconnect().catch(console.error),p}finally{An.hide()}}return!0},getSIWXEventProperties(t){var n;const e=m.state.activeChain;if(!e)throw new Error("SIWXUtil:getSIWXEventProperties - namespace is required");return{network:((n=m.state.activeCaipNetwork)==null?void 0:n.caipNetworkId)||"",isSmartAccount:nn(e)===en.ACCOUNT_TYPES.SMART_ACCOUNT,message:t?J.parseError(t):void 0}},async clearSessions(){const t=this.getSIWX();t&&await t.setSessions([])}};class Fy{constructor({provider:e,namespace:n}){this.id=U.CONNECTOR_ID.WALLET_CONNECT,this.name="WalletConnect",this.type="WALLET_CONNECT",this.imageId="ef1a1fcf-7fe8-4d69-bd6d-fda1345b4400",this.getCaipNetworks=m.getCaipNetworks.bind(m),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(),s=k.state.universalProviderConfigOverride,r=ys.createNamespaces(n,s);await this.provider.connect({optionalNamespaces:r})}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 hn.universalProviderAuthenticate({universalProvider:this.provider,chains:e,methods:jy})}}const jy=["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"],on=ke({message:"",variant:"info",open:!1}),qy={state:on,subscribeKey(t,e){return st(on,t,e)},open(t,e){const{debug:n}=k.state,{code:s,displayMessage:r,debugMessage:i}=t;r&&n&&(on.message=r,on.variant=e,on.open=!0),i&&console.error(typeof i=="function"?i():i,s?{code:s}:void 0)},warn(t,e,n){on.open=!0,on.message=t,on.variant="warning",e&&console.warn(e,n)},close(){on.open=!1,on.message="",on.variant="info"}},kt=rn(qy),Wy={network:"eip155:8453",asset:"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",metadata:{name:"USD Coin",symbol:"USDC",decimals:6}},Hy={network:"eip155:84532",asset:"0x036CbD53842c5426634e7929541eC2318f3dCF7e",metadata:{name:"USD Coin",symbol:"USDC",decimals:6}};function Ky(t){return!t||typeof t.then!="function"?Promise.resolve(t):t}function Ye(t,...e){try{return Ky(t(...e))}catch(n){return Promise.reject(n)}}function Vy(t){const e=typeof t;return t===null||e!=="object"&&e!=="function"}function zy(t){const e=Object.getPrototypeOf(t);return!e||e.isPrototypeOf(Object)}function Fo(t){if(Vy(t))return String(t);if(zy(t)||Array.isArray(t))return JSON.stringify(t);if(typeof t.toJSON=="function")return Fo(t.toJSON());throw new Error("[unstorage] Cannot stringify value!")}const qc="base64:";function Gy(t){return typeof t=="string"?t:qc+Xy(t)}function Yy(t){return typeof t!="string"||!t.startsWith(qc)?t:Jy(t.slice(qc.length))}function Jy(t){return globalThis.Buffer?Buffer.from(t,"base64"):Uint8Array.from(globalThis.atob(t),e=>e.codePointAt(0))}function Xy(t){return globalThis.Buffer?Buffer.from(t).toString("base64"):globalThis.btoa(String.fromCodePoint(...t))}function Ct(t){var e;return t&&((e=t.split("?")[0])==null?void 0:e.replace(/[/\\]/g,":").replace(/:+/g,":").replace(/^:|:$/g,""))||""}function Zy(...t){return Ct(t.join(":"))}function wo(t){return t=Ct(t),t?t+":":""}function Qy(t,e){if(e===void 0)return!0;let n=0,s=t.indexOf(":");for(;s>-1;)n++,s=t.indexOf(":",s+1);return n<=e}function ew(t,e){return e?t.startsWith(e)&&t[t.length-1]!=="$":t[t.length-1]!=="$"}const tw="memory",nw=()=>{const t=new Map;return{name:tw,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 sw(t={}){const e={mounts:{"":t.driver||nw()},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[""]}},s=(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]})),r=(l,u)=>{if(e.watching){u=Ct(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 Ou(e.mounts[l],r,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,p=g=>{let f=h.get(g.base);return f||(f={driver:g.driver,base:g.base,items:[]},h.set(g.base,f)),f};for(const g of l){const f=typeof g=="string",y=Ct(f?g:g.key),b=f?void 0:g.value,_=f||!g.options?u:{...u,...g.options},A=n(y);p(A).items.push({key:y,value:b,relativeKey:A.relativeKey,options:_})}return Promise.all([...h.values()].map(g=>d(g))).then(g=>g.flat())},c={hasItem(l,u={}){l=Ct(l);const{relativeKey:d,driver:h}=n(l);return Ye(h.hasItem,d,u)},getItem(l,u={}){l=Ct(l);const{relativeKey:d,driver:h}=n(l);return Ye(h.getItem,d,u).then(p=>ho(p))},getItems(l,u={}){return a(l,u,d=>d.driver.getItems?Ye(d.driver.getItems,d.items.map(h=>({key:h.relativeKey,options:h.options})),u).then(h=>h.map(p=>({key:Zy(d.base,p.key),value:ho(p.value)}))):Promise.all(d.items.map(h=>Ye(d.driver.getItem,h.relativeKey,h.options).then(p=>({key:h.key,value:ho(p)})))))},getItemRaw(l,u={}){l=Ct(l);const{relativeKey:d,driver:h}=n(l);return h.getItemRaw?Ye(h.getItemRaw,d,u):Ye(h.getItem,d,u).then(p=>Yy(p))},async setItem(l,u,d={}){if(u===void 0)return c.removeItem(l);l=Ct(l);const{relativeKey:h,driver:p}=n(l);p.setItem&&(await Ye(p.setItem,h,Fo(u),d),p.watch||r("update",l))},async setItems(l,u){await a(l,u,async d=>{if(d.driver.setItems)return Ye(d.driver.setItems,d.items.map(h=>({key:h.relativeKey,value:Fo(h.value),options:h.options})),u);d.driver.setItem&&await Promise.all(d.items.map(h=>Ye(d.driver.setItem,h.relativeKey,Fo(h.value),h.options)))})},async setItemRaw(l,u,d={}){if(u===void 0)return c.removeItem(l,d);l=Ct(l);const{relativeKey:h,driver:p}=n(l);if(p.setItemRaw)await Ye(p.setItemRaw,h,u,d);else if(p.setItem)await Ye(p.setItem,h,Gy(u),d);else return;p.watch||r("update",l)},async removeItem(l,u={}){typeof u=="boolean"&&(u={removeMeta:u}),l=Ct(l);const{relativeKey:d,driver:h}=n(l);h.removeItem&&(await Ye(h.removeItem,d,u),(u.removeMeta||u.removeMata)&&await Ye(h.removeItem,d+"$",u),h.watch||r("remove",l))},async getMeta(l,u={}){typeof u=="boolean"&&(u={nativeOnly:u}),l=Ct(l);const{relativeKey:d,driver:h}=n(l),p=Object.create(null);if(h.getMeta&&Object.assign(p,await Ye(h.getMeta,d,u)),!u.nativeOnly){const g=await Ye(h.getItem,d+"$",u).then(f=>ho(f));g&&typeof g=="object"&&(typeof g.atime=="string"&&(g.atime=new Date(g.atime)),typeof g.mtime=="string"&&(g.mtime=new Date(g.mtime)),Object.assign(p,g))}return p},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=wo(l);const d=s(l,!0);let h=[];const p=[];let g=!0;for(const b of d){(y=b.driver.flags)!=null&&y.maxDepth||(g=!1);const _=await Ye(b.driver.getKeys,b.relativeBase,u);for(const A of _){const E=b.mountpoint+Ct(A);h.some(N=>E.startsWith(N))||p.push(E)}h=[b.mountpoint,...h.filter(A=>!A.startsWith(b.mountpoint))]}const f=u.maxDepth!==void 0&&!g;return p.filter(b=>(!f||Qy(b,u.maxDepth))&&ew(b,l))},async clear(l,u={}){l=wo(l),await Promise.all(s(l,!1).map(async d=>{if(d.driver.clear)return Ye(d.driver.clear,d.relativeBase,u);if(d.driver.removeItem){const h=await d.driver.getKeys(d.relativeBase||"",u);return Promise.all(h.map(p=>d.driver.removeItem(p,u)))}}))},async dispose(){await Promise.all(Object.values(e.mounts).map(l=>Ru(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=wo(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(Ou(u,r,l)).then(d=>{e.unwatch[l]=d}).catch(console.error),c},async unmount(l,u=!0){var d,h;l=wo(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 Ru(e.mounts[l]),e.mountpoints=e.mountpoints.filter(p=>p!==l),delete e.mounts[l])},getMount(l=""){l=Ct(l)+":";const u=n(l);return{driver:u.driver,base:u.base}},getMounts(l="",u={}){return l=Ct(l),s(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 Ou(t,e,n){return t.watch?t.watch((s,r)=>e(s,n+r)):()=>{}}async function Ru(t){typeof t.dispose=="function"&&await Ye(t.dispose)}const rw="idb-keyval";var iw=(t={})=>{const e=t.base&&t.base.length>0?`${t.base}:`:"",n=r=>e+r;let s;return t.dbName&&t.storeName&&(s=fm(t.dbName,t.storeName)),{name:rw,options:t,async hasItem(r){return!(typeof await yu(n(r),s)>"u")},async getItem(r){return await yu(n(r),s)??null},setItem(r,i){return gm(n(r),i,s)},removeItem(r){return mm(n(r),s)},getKeys(){return ym(s)},clear(){return wm(s)}}};const ow="WALLET_CONNECT_V2_INDEXED_DB",aw="keyvaluestorage";let cw=class{constructor(){this.indexedDb=sw({driver:iw({dbName:ow,storeName:aw})})}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,Pl(n))}async removeItem(e){await this.indexedDb.removeItem(e)}};var qa=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof ue<"u"?ue:typeof self<"u"?self:{},jo={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,s){this[n]=String(s)},t.prototype.removeItem=function(n){delete this[n]},t.prototype.clear=function(){const n=this;Object.keys(n).forEach(function(s){n[s]=void 0,delete n[s]})},t.prototype.key=function(n){return n=n||0,Object.keys(this)[n]},t.prototype.__defineGetter__("length",function(){return Object.keys(this).length}),typeof qa<"u"&&qa.localStorage?jo.exports=qa.localStorage:typeof window<"u"&&window.localStorage?jo.exports=window.localStorage:jo.exports=new e})();function lw(t){var e;return[t[0],Yo((e=t[1])!=null?e:"")]}let uw=class{constructor(){this.localStorage=jo.exports}async getKeys(){return Object.keys(this.localStorage)}async getEntries(){return Object.entries(this.localStorage).map(lw)}async getItem(e){const n=this.localStorage.getItem(e);if(n!==null)return Yo(n)}async setItem(e,n){this.localStorage.setItem(e,Pl(n))}async removeItem(e){this.localStorage.removeItem(e)}};const dw="wc_storage_version",Pu=1,hw=async(t,e,n)=>{const s=dw,r=await e.getItem(s);if(r&&r>=Pu){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(s,Pu),n(e),pw(t,o)},pw=async(t,e)=>{e.length&&e.forEach(async n=>{await t.removeItem(n)})};let fw=class{constructor(){this.initialized=!1,this.setInitialized=n=>{this.storage=n,this.initialized=!0};const e=new uw;this.storage=e;try{const n=new cw;hw(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 gw=Object.defineProperty,mw=(t,e,n)=>e in t?gw(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,xu=(t,e,n)=>mw(t,typeof e!="symbol"?e+"":e,n);let yw=class extends Fr{constructor(e){super(),this.opts=e,xu(this,"protocol","wc"),xu(this,"version",2)}};var ww=Object.defineProperty,bw=(t,e,n)=>e in t?ww(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Ew=(t,e,n)=>bw(t,typeof e!="symbol"?e+"":e,n);let vw=class extends Fr{constructor(e,n){super(),this.core=e,this.logger=n,Ew(this,"records",new Map)}},Cw=class{constructor(e,n){this.logger=e,this.core=n}},Aw=class extends Fr{constructor(e,n){super(),this.relayer=e,this.logger=n}},_w=class extends Fr{constructor(e){super()}},Iw=class{constructor(e,n,s,r){this.core=e,this.logger=n,this.name=s}},Sw=class extends Fr{constructor(e,n){super(),this.relayer=e,this.logger=n}},Nw=class extends Fr{constructor(e,n){super(),this.core=e,this.logger=n}},Tw=class{constructor(e,n,s){this.core=e,this.logger=n,this.store=s}},Ow=class{constructor(e,n){this.projectId=e,this.logger=n}},Rw=class{constructor(e,n,s){this.core=e,this.logger=n,this.telemetryEnabled=s}};var Pw=Object.defineProperty,xw=(t,e,n)=>e in t?Pw(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,ku=(t,e,n)=>xw(t,typeof e!="symbol"?e+"":e,n);let kw=class{constructor(e){this.opts=e,ku(this,"protocol","wc"),ku(this,"version",2)}},$w=class{constructor(e){this.client=e}};const Uw="0.1.1";function Dw(){return Uw}let Fe=class Wc extends Error{constructor(e,n={}){const s=(()=>{var c;if(n.cause instanceof Wc){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})(),r=(()=>n.cause instanceof Wc&&n.cause.docsPath||n.docsPath)(),o=`https://oxlib.sh${r??""}`,a=[e||"An error occurred.",...n.metaMessages?["",...n.metaMessages]:[],...s||r?["",s?`Details: ${s}`:void 0,r?`See: ${o}`:void 0]:[]].filter(c=>typeof c=="string").join(`
|
|
5
|
+
${a}`,r=!0}}r||(Error.captureStackTrace?Error.captureStackTrace(this,Xs):this.stack||(this.stack=`${this.name}: ${this.message}`))}}function _u(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(r){n="Unknown error",console.error("Error parsing error message",r)}const s=t instanceof Xs?t:new Xs(n,e,t);throw hy.sendError(s,s.category),s}function rn(t,e="INTERNAL_SDK_ERROR"){const n={};return Object.keys(t).forEach(s=>{const r=t[s];if(typeof r=="function"){let i=r;r.constructor.name==="AsyncFunction"?i=async(...o)=>{try{return await r(...o)}catch(a){return _u(a,e)}}:i=(...o)=>{try{return r(...o)}catch(a){return _u(a,e)}},n[s]=i}else n[s]=r}),n}const Pt=ke({walletImages:{},networkImages:{},chainImages:{},connectorImages:{},tokenImages:{},currencyImages:{}}),py={state:Pt,subscribeNetworkImages(t){return nt(Pt.networkImages,()=>t(Pt.networkImages))},subscribeKey(t,e){return st(Pt,t,e)},subscribe(t){return nt(Pt,()=>t(Pt))},setWalletImage(t,e){Pt.walletImages[t]=e},setNetworkImage(t,e){Pt.networkImages[t]=e},setChainImage(t,e){Pt.chainImages[t]=e},setConnectorImage(t,e){Pt.connectorImages={...Pt.connectorImages,[t]:e}},setTokenImage(t,e){Pt.tokenImages[t]=e},setCurrencyImage(t,e){Pt.currencyImages[t]=e}},Qt=rn(py),fy={eip155:"ba0ba0cd-17c6-4806-ad93-f9d174f17900",solana:"a1b58899-f671-4276-6a5e-56ca5bd59700",polkadot:"",bip122:"0b4838db-0161-4ffe-022d-532bf03dba00",cosmos:"",sui:"",stacks:""},Ma=ke({networkImagePromises:{}}),Cp={async fetchWalletImage(t){if(t)return await Q._fetchWalletImage(t),this.getWalletImageById(t)},async fetchNetworkImage(t){if(!t)return;const e=this.getNetworkImageById(t);return e||(Ma.networkImagePromises[t]||(Ma.networkImagePromises[t]=Q._fetchNetworkImage(t)),await Ma.networkImagePromises[t],this.getNetworkImageById(t))},getWalletImageById(t){if(t)return Qt.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 Qt.state.walletImages[t.image_id]},getNetworkImage(t){var e,n,s;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((s=t==null?void 0:t.assets)!=null&&s.imageId)return Qt.state.networkImages[t.assets.imageId]},getNetworkImageById(t){if(t)return Qt.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 Qt.state.connectorImages[t.imageId]},getChainImage(t){return Qt.state.networkImages[fy[t]]},getTokenImage(t){if(t)return Qt.state.tokenImages[t]}},gy=J.getAnalyticsUrl(),my=new to({baseUrl:gy,clientId:null}),yy=["MODAL_CREATED"],wy=45,Iu=1e3*10,Me=ke({timestamp:Date.now(),lastFlush:Date.now(),reportedErrors:{},data:{type:"track",event:"MODAL_CREATED"},pendingEvents:[],subscribedToVisibilityChange:!1,walletImpressions:[]}),he={state:Me,subscribe(t){return nt(Me,()=>t(Me))},getSdkProperties(){const{projectId:t,sdkType:e,sdkVersion:n}=k.state;return{projectId:t,st:e,sv:n||"html-wagmi-4.2.2"}},shouldFlushEvents(){const t=JSON.stringify(Me.pendingEvents).length/1024>wy,e=Me.lastFlush+Iu<Date.now();return t||e},_setPendingEvent(t){var e,n;try{let s=(e=m.getAccountData())==null?void 0:e.address;if("address"in t.data&&t.data.address&&(s=t.data.address),yy.includes(t.data.event)||typeof window>"u")return;const r=(n=m.getActiveCaipNetwork())==null?void 0:n.caipNetworkId;this.state.pendingEvents.push({eventId:J.getUUID(),url:window.location.href,domain:window.location.hostname,timestamp:t.timestamp,props:{...t.data,address:s,properties:{..."properties"in t.data?t.data.properties:{},caipNetworkId:r}}}),Me.reportedErrors.FORBIDDEN=!1,he.shouldFlushEvents()&&he._submitPendingEvents()}catch(s){console.warn("_setPendingEvent",s)}},sendEvent(t){var n;Me.timestamp=Date.now(),Me.data=t;const e=["INITIALIZE","CONNECT_SUCCESS","SOCIAL_LOGIN_SUCCESS"];((n=k.state.features)!=null&&n.analytics||e.includes(t.event))&&he._setPendingEvent(Me),this.subscribeToFlushTriggers()},sendWalletImpressionEvent(t){Me.walletImpressions.push(t)},_transformPendingEventsForBatch(t){try{return t.filter(e=>e.props.event!=="WALLET_IMPRESSION_V2")}catch{return t}},_submitPendingEvents(){if(Me.lastFlush=Date.now(),!(Me.pendingEvents.length===0&&Me.walletImpressions.length===0))try{const t=he._transformPendingEventsForBatch(Me.pendingEvents);Me.walletImpressions.length&&t.push({eventId:J.getUUID(),url:window.location.href,domain:window.location.hostname,timestamp:Date.now(),props:{type:"track",event:"WALLET_IMPRESSION_V2",items:[...Me.walletImpressions]}}),my.sendBeacon({path:"/batch",params:he.getSdkProperties(),body:t}),Me.reportedErrors.FORBIDDEN=!1,Me.pendingEvents=[],Me.walletImpressions=[]}catch{Me.reportedErrors.FORBIDDEN=!0}},subscribeToFlushTriggers(){var t,e,n;Me.subscribedToVisibilityChange||typeof document>"u"||(Me.subscribedToVisibilityChange=!0,(t=document==null?void 0:document.addEventListener)==null||t.call(document,"visibilitychange",()=>{document.visibilityState==="hidden"&&he._submitPendingEvents()}),(e=document==null?void 0:document.addEventListener)==null||e.call(document,"freeze",()=>{he._submitPendingEvents()}),(n=window==null?void 0:window.addEventListener)==null||n.call(window,"pagehide",()=>{he._submitPendingEvents()}),setInterval(()=>{he._submitPendingEvents()},Iu))}},by=J.getApiUrl(),pt=new to({baseUrl:by,clientId:null}),Ey=40,Su=4,vy=20,oe=ke({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}}}),Q={state:oe,subscribeKey(t,e){return st(oe,t,e)},_getSdkProperties(){const{projectId:t,sdkType:e,sdkVersion:n}=k.state;return{projectId:t,st:e||"appkit",sv:n||"html-wagmi-4.2.2"}},_filterOutExtensions(t){return k.state.isUniversalProvider?t.filter(e=>!!(e.mobile_link||e.desktop_link||e.webapp_link)):t},async _fetchWalletImage(t){const e=`${pt.baseUrl}/getWalletImage/${t}`,n=await pt.getBlob({path:e,params:Q._getSdkProperties()});Qt.setWalletImage(t,URL.createObjectURL(n))},async _fetchNetworkImage(t){const e=`${pt.baseUrl}/public/getAssetImage/${t}`,n=await pt.getBlob({path:e,params:Q._getSdkProperties()});Qt.setNetworkImage(t,URL.createObjectURL(n))},async _fetchConnectorImage(t){const e=`${pt.baseUrl}/public/getAssetImage/${t}`,n=await pt.getBlob({path:e,params:Q._getSdkProperties()});Qt.setConnectorImage(t,URL.createObjectURL(n))},async _fetchCurrencyImage(t){const e=`${pt.baseUrl}/public/getCurrencyImage/${t}`,n=await pt.getBlob({path:e,params:Q._getSdkProperties()});Qt.setCurrencyImage(t,URL.createObjectURL(n))},async _fetchTokenImage(t){const e=`${pt.baseUrl}/public/getTokenImage/${t}`,n=await pt.getBlob({path:e,params:Q._getSdkProperties()});Qt.setTokenImage(t,URL.createObjectURL(n))},_filterWalletsByPlatform(t){const e=t.length,n=J.isMobile()?t==null?void 0:t.filter(r=>r.mobile_link||r.webapp_link?!0:Object.values(Yt).map(o=>o.id).includes(r.id)):t,s=e-n.length;return{filteredWallets:n,mobileFilteredOutWalletsLength:s}},async fetchProjectConfig(){return(await pt.get({path:"/appkit/v1/config",params:Q._getSdkProperties()})).features},async fetchUsage(){try{const t=await pt.get({path:"/appkit/v1/project-limits",params:Q._getSdkProperties()}),{tier:e,isAboveMauLimit:n,isAboveRpcLimit:s}=t.planLimits,r=e==="starter",i=n||s;Q.state.plan={tier:e,hasExceededUsageLimit:r&&i,limits:{isAboveRpcLimit:s,isAboveMauLimit:n}}}catch(t){console.warn("Failed to fetch usage",t)}},async fetchAllowedOrigins(){try{const{allowedOrigins:t}=await pt.get({path:"/projects/v1/origins",params:Q._getSdkProperties()});return t}catch(t){if(t instanceof Error&&t.cause instanceof Response){const e=t.cause.status;if(e===U.HTTP_STATUS_CODES.TOO_MANY_REQUESTS)throw new Error("RATE_LIMITED",{cause:t});if(e>=U.HTTP_STATUS_CODES.SERVER_ERROR&&e<600)throw new Error("SERVER_ERROR",{cause:t});return[]}return[]}},async fetchNetworkImages(){const t=m.getAllRequestedCaipNetworks(),e=t==null?void 0:t.map(({assets:n})=>n==null?void 0:n.imageId).filter(Boolean).filter(n=>!Cp.getNetworkImageById(n));e&&await Promise.allSettled(e.map(n=>Q._fetchNetworkImage(n)))},async fetchConnectorImages(){const{connectors:t}=q.state,e=t.map(({imageId:n})=>n).filter(Boolean);await Promise.allSettled(e.map(n=>Q._fetchConnectorImage(n)))},async fetchCurrencyImages(t=[]){await Promise.allSettled(t.map(e=>Q._fetchCurrencyImage(e)))},async fetchTokenImages(t=[]){await Promise.allSettled(t.map(e=>Q._fetchTokenImage(e)))},async fetchWallets(t){var o;const e=t.exclude??[];Q._getSdkProperties().sv.startsWith("html-core-")&&e.push(...Object.values(Yt).map(a=>a.id));const s=await pt.get({path:"/getWallets",params:{...Q._getSdkProperties(),...t,page:String(t.page),entries:String(t.entries),include:(o=t.include)==null?void 0:o.join(","),exclude:e.join(",")}}),{filteredWallets:r,mobileFilteredOutWalletsLength:i}=Q._filterWalletsByPlatform(s==null?void 0:s.data);return{data:r||[],count:s==null?void 0:s.count,mobileFilteredOutWalletsLength:i}},async prefetchWalletRanks(){const t=q.state.connectors;if(!(t!=null&&t.length))return;const e={page:1,entries:20,badge:"certified"};if(e.names=t.map(r=>r.name).join(","),m.state.activeChain===U.CHAIN.EVM){const r=[...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);r.length&&(e.rdns=r.join(","))}const{data:n}=await Q.fetchWallets(e);oe.explorerWallets=n;const s=m.getRequestedCaipNetworkIds().join(",");oe.explorerFilteredWallets=n.filter(r=>{var i;return(i=r.chains)==null?void 0:i.some(o=>s.includes(o))})},async fetchFeaturedWallets(){const{featuredWalletIds:t}=k.state;if(t!=null&&t.length){const e={...Q._getSdkProperties(),page:1,entries:(t==null?void 0:t.length)??Su,include:t},{data:n}=await Q.fetchWallets(e),s=[...n].sort((i,o)=>t.indexOf(i.id)-t.indexOf(o.id)),r=s.map(i=>i.image_id).filter(Boolean);await Promise.allSettled(r.map(i=>Q._fetchWalletImage(i))),oe.featured=s,oe.allFeatured=s}},async fetchRecommendedWallets(){try{oe.isFetchingRecommendedWallets=!0;const{includeWalletIds:t,excludeWalletIds:e,featuredWalletIds:n}=k.state,s=[...e??[],...n??[]].filter(Boolean),r=m.getRequestedCaipNetworkIds().join(","),i={page:1,entries:Su,include:t,exclude:s,chains:r},{data:o,count:a}=await Q.fetchWallets(i),c=L.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=>Q._fetchWalletImage(d))),oe.recommended=o,oe.allRecommended=o,oe.count=a??0}catch{}finally{oe.isFetchingRecommendedWallets=!1}},async fetchWalletsByPage({page:t}){const{includeWalletIds:e,excludeWalletIds:n,featuredWalletIds:s}=k.state,r=m.getRequestedCaipNetworkIds().join(","),i=[...oe.recommended.map(({id:d})=>d),...n??[],...s??[]].filter(Boolean),o={page:t,entries:Ey,include:e,exclude:i,chains:r},{data:a,count:c,mobileFilteredOutWalletsLength:l}=await Q.fetchWallets(o);oe.mobileFilteredOutWalletsLength=l+(oe.mobileFilteredOutWalletsLength??0);const u=a.slice(0,vy).map(d=>d.image_id).filter(Boolean);await Promise.allSettled(u.map(d=>Q._fetchWalletImage(d))),oe.wallets=J.uniqueBy([...oe.wallets,...Q._filterOutExtensions(a)],"id").filter(d=>{var h;return(h=d.chains)==null?void 0:h.some(p=>r.includes(p))}),oe.count=c>oe.count?c:oe.count,oe.page=t},async initializeExcludedWallets({ids:t}){const e={page:1,entries:t.length,include:t},{data:n}=await Q.fetchWallets(e);n&&n.forEach(s=>{oe.excludedWallets.push({rdns:s.rdns,name:s.name})})},async searchWallet({search:t,badge:e}){const{includeWalletIds:n,excludeWalletIds:s}=k.state,r=m.getRequestedCaipNetworkIds().join(",");oe.search=[];const i={page:1,entries:100,search:t==null?void 0:t.trim(),badge_type:e,include:n,exclude:s,chains:r},{data:o}=await Q.fetchWallets(i);he.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=>Q._fetchWalletImage(c)),J.wait(300)]),oe.search=Q._filterOutExtensions(o)},initPromise(t,e){const n=oe.promises[t];return n||(oe.promises[t]=e())},prefetch({fetchConnectorImages:t=!0,fetchFeaturedWallets:e=!0,fetchRecommendedWallets:n=!0,fetchNetworkImages:s=!0,fetchWalletRanks:r=!0}={}){const i=[t&&Q.initPromise("connectorImages",Q.fetchConnectorImages),e&&Q.initPromise("featuredWallets",Q.fetchFeaturedWallets),n&&Q.initPromise("recommendedWallets",Q.fetchRecommendedWallets),s&&Q.initPromise("networkImages",Q.fetchNetworkImages),r&&Q.initPromise("walletRanks",Q.prefetchWalletRanks)].filter(Boolean);return Promise.allSettled(i)},prefetchAnalyticsConfig(){var t;(t=k.state.features)!=null&&t.analytics&&Q.fetchAnalyticsConfig()},async fetchAnalyticsConfig(){try{const{isAnalyticsEnabled:t}=await pt.get({path:"/getAnalyticsConfig",params:Q._getSdkProperties()});k.setFeatures({analytics:t})}catch{k.setFeatures({analytics:!1})}},filterByNamespaces(t){if(!(t!=null&&t.length)){oe.featured=oe.allFeatured,oe.recommended=oe.allRecommended;return}const e=m.getRequestedCaipNetworkIds().join(",");oe.featured=oe.allFeatured.filter(n=>{var s;return(s=n.chains)==null?void 0:s.some(r=>e.includes(r))}),oe.recommended=oe.allRecommended.filter(n=>{var s;return(s=n.chains)==null?void 0:s.some(r=>e.includes(r))}),oe.filteredWallets=oe.wallets.filter(n=>{var s;return(s=n.chains)==null?void 0:s.some(r=>e.includes(r))})},clearFilterByNamespaces(){oe.filteredWallets=[]},setFilterByNamespace(t){if(!t){oe.featured=oe.allFeatured,oe.recommended=oe.allRecommended;return}const e=m.getRequestedCaipNetworkIds().join(",");oe.featured=oe.allFeatured.filter(n=>{var s;return(s=n.chains)==null?void 0:s.some(r=>e.includes(r))}),oe.recommended=oe.allRecommended.filter(n=>{var s;return(s=n.chains)==null?void 0:s.some(r=>e.includes(r))}),oe.filteredWallets=oe.wallets.filter(n=>{var s;return(s=n.chains)==null?void 0:s.some(r=>e.includes(r))})}},Cy=["ConnectingExternal","ConnectingMultiChain","ConnectingSocial","ConnectingFarcaster"],_e=ke({view:"Connect",history:["Connect"],transactionStack:[]}),Ay={state:_e,subscribeKey(t,e){return st(_e,t,e)},pushTransactionStack(t){_e.transactionStack.push(t)},popTransactionStack(t){const e=_e.transactionStack.pop();if(!e)return;const{onSuccess:n,onError:s,onCancel:r}=e;switch(t){case"success":n==null||n();break;case"error":s==null||s(),se.goBack();break;case"cancel":r==null||r(),se.goBack();break}},push(t,e){let n=t,s=e;Q.state.plan.hasExceededUsageLimit&&Cy.includes(t)&&(n="UsageExceeded",s=void 0),n!==_e.view&&(_e.view=n,_e.history.push(n),_e.data=s)},reset(t,e){_e.view=t,_e.history=[t],_e.data=e},replace(t,e){_e.history.at(-1)===t||(_e.view=t,_e.history[_e.history.length-1]=t,_e.data=e)},goBack(){var s,r;const t=m.state.activeCaipAddress,e=se.state.view==="ConnectingFarcaster",n=!t&&e;if(_e.history.length>1){_e.history.pop();const[i]=_e.history.slice(-1);i&&(t&&i==="Connect"?_e.view="Account":_e.view=i)}else pe.close();(s=_e.data)!=null&&s.wallet&&(_e.data.wallet=void 0),(r=_e.data)!=null&&r.redirectView&&(_e.data.redirectView=void 0),setTimeout(()=>{var i,o,a;if(n){m.setAccountProp("farcasterUrl",void 0,m.state.activeChain);const c=q.getAuthConnector();(i=c==null?void 0:c.provider)==null||i.reload();const l=vi(k.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(_e.history.length>1){_e.history=_e.history.slice(0,t+1);const[e]=_e.history.slice(-1);e&&(_e.view=e)}},goBackOrCloseModal(){se.state.history.length>1?se.goBack():pe.close()}},se=rn(Ay),Rn=ke({themeMode:"dark",themeVariables:{},w3mThemeVariables:void 0}),Lc={state:Rn,subscribe(t){return nt(Rn,()=>t(Rn))},setThemeMode(t){Rn.themeMode=t;try{const e=q.getAuthConnector();if(e){const n=Lc.getSnapshot().themeVariables;e.provider.syncTheme({themeMode:t,themeVariables:n,w3mThemeVariables:Jo(n,t)})}}catch{console.info("Unable to sync theme to auth connector")}},setThemeVariables(t){Rn.themeVariables={...Rn.themeVariables,...t};try{const e=q.getAuthConnector();if(e){const n=Lc.getSnapshot().themeVariables;e.provider.syncTheme({themeVariables:n,w3mThemeVariables:Jo(Rn.themeVariables,Rn.themeMode)})}}catch{console.info("Unable to sync theme to auth connector")}},getSnapshot(){return vi(Rn)}},Ut=rn(Lc),Ap=Object.fromEntries(pp.map(t=>[t,void 0])),_y=Object.fromEntries(pp.map(t=>[t,!0])),ve=ke({allConnectors:[],connectors:[],activeConnector:void 0,filterByNamespace:void 0,activeConnectorIds:Ap,filterByNamespaceMap:_y}),Iy={state:ve,subscribe(t){return nt(ve,()=>{t(ve)})},subscribeKey(t,e){return st(ve,t,e)},initialize(t){t.forEach(e=>{const n=L.getConnectedConnectorId(e);n&&q.setConnectorId(n,e)})},setActiveConnector(t){t&&(ve.activeConnector=Ci(t))},setConnectors(t){t.filter(r=>!ve.allConnectors.some(i=>i.id===r.id&&q.getConnectorName(i.name)===q.getConnectorName(r.name)&&i.chain===r.chain)).forEach(r=>{r.type!=="MULTI_CHAIN"&&ve.allConnectors.push(Ci(r))});const n=q.getEnabledNamespaces(),s=q.getEnabledConnectors(n);ve.connectors=q.mergeMultiChainConnectors(s)},filterByNamespaces(t){Object.keys(ve.filterByNamespaceMap).forEach(e=>{ve.filterByNamespaceMap[e]=!1}),t.forEach(e=>{ve.filterByNamespaceMap[e]=!0}),q.updateConnectorsForEnabledNamespaces()},filterByNamespace(t,e){ve.filterByNamespaceMap[t]=e,q.updateConnectorsForEnabledNamespaces()},updateConnectorsForEnabledNamespaces(){const t=q.getEnabledNamespaces(),e=q.getEnabledConnectors(t),n=q.areAllNamespacesEnabled();ve.connectors=q.mergeMultiChainConnectors(e),n?Q.clearFilterByNamespaces():Q.filterByNamespaces(t)},getEnabledNamespaces(){return Object.entries(ve.filterByNamespaceMap).filter(([t,e])=>e).map(([t])=>t)},getEnabledConnectors(t){return ve.allConnectors.filter(e=>t.includes(e.chain))},areAllNamespacesEnabled(){return Object.values(ve.filterByNamespaceMap).every(t=>t)},mergeMultiChainConnectors(t){const e=q.generateConnectorMapByName(t),n=[];return e.forEach(s=>{const r=s[0],i=(r==null?void 0:r.id)===U.CONNECTOR_ID.AUTH;s.length>1&&r?n.push({name:r.name,imageUrl:r.imageUrl,imageId:r.imageId,connectors:[...s],type:i?"AUTH":"MULTI_CHAIN",chain:"eip155",id:(r==null?void 0:r.id)||""}):r&&n.push(r)}),n},generateConnectorMapByName(t){const e=new Map;return t.forEach(n=>{const{name:s}=n,r=q.getConnectorName(s);if(!r)return;const i=e.get(r)||[];i.find(a=>a.chain===n.chain)||i.push(n),e.set(r,i)}),e},getConnectorName(t){return t&&({"Trust Wallet":"Trust"}[t]||t)},getUniqueConnectorsByName(t){const e=[];return t.forEach(n=>{e.find(s=>s.chain===n.chain)||e.push(n)}),e},addConnector(t){var e,n,s;if(t.id===U.CONNECTOR_ID.AUTH){const r=t,i=vi(k.state),o=Ut.getSnapshot().themeMode,a=Ut.getSnapshot().themeVariables;(n=(e=r==null?void 0:r.provider)==null?void 0:e.syncDappData)==null||n.call(e,{metadata:i.metadata,sdkVersion:i.sdkVersion,projectId:i.projectId,sdkType:i.sdkType}),(s=r==null?void 0:r.provider)==null||s.syncTheme({themeMode:o,themeVariables:a,w3mThemeVariables:Jo(a,o)}),q.setConnectors([t])}else q.setConnectors([t])},getAuthConnector(t){var s;const e=t||m.state.activeChain,n=ve.connectors.find(r=>r.id===U.CONNECTOR_ID.AUTH);if(n)return(s=n==null?void 0:n.connectors)!=null&&s.length?n.connectors.find(i=>i.chain===e):n},getAnnouncedConnectorRdns(){return ve.connectors.filter(t=>t.type==="ANNOUNCED").map(t=>{var e;return(e=t.info)==null?void 0:e.rdns})},getConnectorById(t){return ve.allConnectors.find(e=>e.id===t)},getConnector({id:t,rdns:e,namespace:n}){const s=n||m.state.activeChain;return ve.allConnectors.filter(i=>i.chain===s).find(i=>{var o;return i.explorerId===t||((o=i.info)==null?void 0:o.rdns)===e})},syncIfAuthConnector(t){var i,o;if(t.id!=="AUTH")return;const e=t,n=vi(k.state),s=Ut.getSnapshot().themeMode,r=Ut.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:s,themeVariables:r,w3mThemeVariables:Jo(r,s)})},getConnectorsByNamespace(t){const e=ve.allConnectors.filter(n=>n.chain===t);return q.mergeMultiChainConnectors(e)},canSwitchToSmartAccount(t){return m.checkIfSmartAccountEnabled()&&nn(t)===en.ACCOUNT_TYPES.EOA},selectWalletConnector(t){var s;const e=(s=se.state.data)==null?void 0:s.redirectView,n=q.getConnector({id:t.id,rdns:t.rdns});ay.handleMobileDeeplinkRedirect((n==null?void 0:n.explorerId)||t.id,m.state.activeChain),n?se.push("ConnectingExternal",{connector:n,wallet:t,redirectView:e}):se.push("ConnectingWalletConnect",{wallet:t,redirectView:e})},getConnectors(t){return t?q.getConnectorsByNamespace(t):q.mergeMultiChainConnectors(ve.allConnectors)},setFilterByNamespace(t){ve.filterByNamespace=t,ve.connectors=q.getConnectors(t),Q.setFilterByNamespace(t)},setConnectorId(t,e){t&&(ve.activeConnectorIds={...ve.activeConnectorIds,[e]:t},L.setConnectedConnectorId(e,t))},removeConnectorId(t){ve.activeConnectorIds={...ve.activeConnectorIds,[t]:void 0},L.deleteConnectedConnectorId(t)},getConnectorId(t){if(t)return ve.activeConnectorIds[t]},isConnected(t){return t?!!ve.activeConnectorIds[t]:Object.values(ve.activeConnectorIds).some(e=>!!e)},resetConnectorIds(){ve.activeConnectorIds={...Ap}}},q=rn(Iy),Sy=1e3,Vr={checkNamespaceConnectorId(t,e){return q.getConnectorId(t)===e},isSocialProvider(t){return we.DEFAULT_REMOTE_FEATURES.socials.includes(t)},connectWalletConnect({walletConnect:t,connector:e,closeModalOnConnect:n=!0,redirectViewOnModalClose:s="Connect",onOpen:r,onConnect:i}){return new Promise((o,a)=>{if(t&&q.setActiveConnector(e),r==null||r(J.isMobile()&&t),s){const l=pe.subscribeKey("open",u=>{u||(se.state.view!==s&&se.replace(s),l(),a(new Error("Modal closed")))})}const c=m.subscribeKey("activeCaipAddress",l=>{l&&(i==null||i(),n&&pe.close(),c(),o(tt.parseCaipAddress(l)))})})},connectExternal(t){return new Promise((e,n)=>{const s=m.subscribeKey("activeCaipAddress",r=>{r&&(pe.close(),s(),e(tt.parseCaipAddress(r)))});V.connectExternal(t,t.chain).catch(()=>{s(),n(new Error("Connection rejected"))})})},connectSocial({social:t,namespace:e,closeModalOnConnect:n=!0,onOpenFarcaster:s,onConnect:r}){let i,o=!1,a=null;const c=e||m.state.activeChain,l=m.subscribeKey("activeCaipAddress",u=>{u&&(n&&pe.close(),l())});return new Promise((u,d)=>{async function h(g){var f;if((f=g.data)!=null&&f.resultUri)if(g.origin===U.SECURE_SITE_SDK_ORIGIN){window.removeEventListener("message",h,!1);try{const y=q.getAuthConnector(c);if(y&&!o){i&&i.close(),o=!0;const b=g.data.resultUri;he.sendEvent({type:"track",event:"SOCIAL_LOGIN_REQUEST_USER_DATA",properties:{provider:t}}),L.setConnectedSocialProvider(t),await V.connectExternal({id:y.id,type:y.type,socialUri:b},y.chain);const _=m.state.activeCaipAddress;if(!_){d(new Error("Failed to connect"));return}u(tt.parseCaipAddress(_)),he.sendEvent({type:"track",event:"SOCIAL_LOGIN_SUCCESS",properties:{provider:t}})}}catch(y){he.sendEvent({type:"track",event:"SOCIAL_LOGIN_ERROR",properties:{provider:t,message:J.parseError(y)}}),d(new Error("Failed to connect"))}}else he.sendEvent({type:"track",event:"SOCIAL_LOGIN_ERROR",properties:{provider:t,message:"Untrusted Origin"}})}async function p(){if(he.sendEvent({type:"track",event:"SOCIAL_LOGIN_STARTED",properties:{provider:t}}),t==="farcaster"){s==null||s();const g=pe.subscribeKey("open",y=>{!y&&t==="farcaster"&&(d(new Error("Popup closed")),r==null||r(),g())}),f=q.getAuthConnector();if(f){const y=m.getAccountData(c);if(!(y!=null&&y.farcasterUrl))try{const{url:b}=await f.provider.getFarcasterUri();m.setAccountProp("farcasterUrl",b,c)}catch{d(new Error("Failed to connect to farcaster"))}}}else{const g=q.getAuthConnector();a=J.returnOpenHref(`${U.SECURE_SITE_SDK_ORIGIN}/loading`,"popupWindow","width=600,height=800,scrollbars=yes");try{if(g){const{uri:f}=await g.provider.getSocialRedirectUri({provider:t});if(a&&f){a.location.href=f,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()}}}p()})},connectEmail({closeModalOnConnect:t=!0,redirectViewOnModalClose:e="Connect",onOpen:n,onConnect:s}){return new Promise((r,i)=>{if(n==null||n(),e){const a=pe.subscribeKey("open",c=>{c||(se.state.view!==e&&se.replace(e),a(),i(new Error("Modal closed")))})}const o=m.subscribeKey("activeCaipAddress",a=>{a&&(s==null||s(),t&&pe.close(),o(),r(tt.parseCaipAddress(a)))})})},async updateEmail(){const t=L.getConnectedConnectorId(m.state.activeChain),e=q.getAuthConnector();if(!e)throw new Error("No auth connector found");if(t!==U.CONNECTOR_ID.AUTH)throw new Error("Not connected to email or social");const n=e.provider.getEmail()??"";return await pe.open({view:"UpdateEmailWallet",data:{email:n,redirectView:void 0}}),new Promise((s,r)=>{const i=setInterval(()=>{const a=e.provider.getEmail()??"";a!==n&&(pe.close(),clearInterval(i),o(),s({email:a}))},Sy),o=pe.subscribeKey("open",a=>{a||(se.state.view!=="Connect"&&se.push("Connect"),clearInterval(i),o(),r(new Error("Modal closed")))})})},canSwitchToSmartAccount(t){return m.checkIfSmartAccountEnabled()&&nn(t)===en.ACCOUNT_TYPES.EOA}};function _p(){var s,r;const t=((s=m.state.activeCaipNetwork)==null?void 0:s.chainNamespace)||"eip155",e=((r=m.state.activeCaipNetwork)==null?void 0:r.id)||1,n=we.NATIVE_TOKEN_ADDRESS[t];return`${t}:${e}:${n}`}function nn(t){var n;return(n=m.getAccountData(t))==null?void 0:n.preferredAccountType}function mo(t){var e,n;return t?(n=(e=m.state.chains.get(t))==null?void 0:e.networkState)==null?void 0:n.caipNetwork:m.state.activeCaipNetwork}const Xo={getConnectionStatus(t,e){const n=q.state.activeConnectorIds[e],s=V.getConnections(e);return!!n&&t.connectorId===n?"connected":s.some(o=>o.connectorId.toLowerCase()===t.connectorId.toLowerCase())?"active":"disconnected"},excludeConnectorAddressFromConnections({connections:t,connectorId:e,addresses:n}){return t.map(s=>{if((e?s.connectorId.toLowerCase()===e.toLowerCase():!1)&&n){const i=s.accounts.filter(o=>!n.some(c=>c.toLowerCase()===o.address.toLowerCase()));return{...s,accounts:i}}return s})},excludeExistingConnections(t,e){const n=new Set(t);return e.filter(s=>!n.has(s.connectorId))},getConnectionsByConnectorId(t,e){return t.filter(n=>n.connectorId.toLowerCase()===e.toLowerCase())},getConnectionsData(t){var a;const e=!!((a=k.state.remoteFeatures)!=null&&a.multiWallet),n=q.state.activeConnectorIds[t],s=V.getConnections(t),i=(V.state.recentConnections.get(t)??[]).filter(c=>q.getConnectorById(c.connectorId)),o=Xo.excludeExistingConnections([...s.map(c=>c.connectorId),...n?[n]:[]],i);return e?{connections:s,recentConnections:o}:{connections:s.filter(c=>c.connectorId.toLowerCase()===(n==null?void 0:n.toLowerCase())),recentConnections:[]}}},$e=ke({transactions:[],transactionsByYear:{},lastNetworkInView:void 0,loading:!1,empty:!1,next:void 0}),Ny={state:$e,subscribe(t){return nt($e,()=>t($e))},setLastNetworkInView(t){$e.lastNetworkInView=t},async fetchTransactions(t){var e;if(!t)throw new Error("Transactions can't be fetched without an accountAddress");$e.loading=!0;try{const n=await re.fetchTransactions({account:t,cursor:$e.next,chainId:(e=m.state.activeCaipNetwork)==null?void 0:e.caipNetworkId}),s=Bo.filterSpamTransactions(n.data),r=Bo.filterByConnectedChain(s),i=[...$e.transactions,...r];$e.loading=!1,$e.transactions=i,$e.transactionsByYear=Bo.groupTransactionsByYearAndMonth($e.transactionsByYear,r),$e.empty=i.length===0,$e.next=n.next?n.next:void 0}catch{const s=m.state.activeChain;he.sendEvent({type:"track",event:"ERROR_FETCH_TRANSACTIONS",properties:{address:t,projectId:k.state.projectId,cursor:$e.next,isSmartAccount:nn(s)===en.ACCOUNT_TYPES.SMART_ACCOUNT}}),An.showError("Failed to fetch transactions"),$e.loading=!1,$e.empty=!0,$e.next=void 0}},groupTransactionsByYearAndMonth(t={},e=[]){const n=t;return e.forEach(s=>{const r=new Date(s.metadata.minedAt).getFullYear(),i=new Date(s.metadata.minedAt).getMonth(),o=n[r]??{},c=(o[i]??[]).filter(l=>l.id!==s.id);n[r]={...o,[i]:[...c,s].sort((l,u)=>new Date(u.metadata.minedAt).getTime()-new Date(l.metadata.minedAt).getTime())}}),n},filterSpamTransactions(t){return t.filter(e=>!e.transfers.every(s=>{var r;return((r=s.nft_info)==null?void 0:r.flags.is_spam)===!0}))},filterByConnectedChain(t){var s;const e=(s=m.state.activeCaipNetwork)==null?void 0:s.caipNetworkId;return t.filter(r=>r.metadata.chain===e)},clearCursor(){$e.next=void 0},resetTransactions(){$e.transactions=[],$e.transactionsByYear={},$e.lastNetworkInView=void 0,$e.loading=!1,$e.empty=!1,$e.next=void 0}},Bo=rn(Ny,"API_ERROR"),me=ke({connections:new Map,recentConnections:new Map,isSwitchingConnection:!1,wcError:!1,buffering:!1,status:"disconnected"});let Ss;const Ty={state:me,subscribe(t){return nt(me,()=>t(me))},subscribeKey(t,e){return st(me,t,e)},_getClient(){return me._client},setClient(t){me._client=Ci(t)},initialize(t){const e=t.filter(n=>!!n.namespace).map(n=>n.namespace);V.syncStorageConnections(e)},syncStorageConnections(t){const e=L.getConnections(),n=t??Array.from(m.state.chains.keys());for(const s of n){const r=e[s]??[],i=new Map(me.recentConnections);i.set(s,r),me.recentConnections=i}},getConnections(t){return t?me.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,s,r,i;const e=J.isTelegram()||J.isSafari()&&J.isIos();if(t==="always"||t==="auto"&&e){if(Ss){await Ss,Ss=void 0;return}if(!J.isPairingExpired(me==null?void 0:me.wcPairingExpiry)){const o=me.wcUri;me.wcUri=o;return}Ss=(s=(n=V._getClient())==null?void 0:n.connectWalletConnect)==null?void 0:s.call(n).catch(()=>{}),V.state.status="connecting",await Ss,Ss=void 0,me.wcPairingExpiry=void 0,V.state.status="connected"}else await((i=(r=V._getClient())==null?void 0:r.connectWalletConnect)==null?void 0:i.call(r))},async connectExternal(t,e,n=!0){var r,i;const s=await((i=(r=V._getClient())==null?void 0:r.connectExternal)==null?void 0:i.call(r,t));return n&&m.setActiveNamespace(e),s},async reconnectExternal(t){var n,s;await((s=(n=V._getClient())==null?void 0:n.reconnectExternal)==null?void 0:s.call(n,t));const e=t.chain||m.state.activeChain;e&&q.setConnectorId(t.id,e)},async setPreferredAccountType(t,e){var s;if(!e)return;pe.setLoading(!0,m.state.activeChain);const n=q.getAuthConnector();n&&(m.setAccountProp("preferredAccountType",t,e),await n.provider.setPreferredAccount(t),L.setPreferredAccountTypes(Object.entries(m.state.chains).reduce((r,[i,o])=>{const a=i,c=nn(a);return c!==void 0&&(r[a]=c),r},{})),await V.reconnectExternal(n),pe.setLoading(!1,m.state.activeChain),he.sendEvent({type:"track",event:"SET_PREFERRED_ACCOUNT_TYPE",properties:{accountType:t,network:((s=m.state.activeCaipNetwork)==null?void 0:s.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 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(){me.wcUri=void 0,me.wcPairingExpiry=void 0,me.wcLinking=void 0,me.recentWallet=void 0,me.status="disconnected",Bo.resetTransactions(),L.deleteWalletConnectDeepLink(),L.deleteRecentWallet()},resetUri(){me.wcUri=void 0,me.wcPairingExpiry=void 0,Ss=void 0},finalizeWcConnection(t){var s,r;const{wcLinking:e,recentWallet:n}=V.state;e&&L.setWalletConnectDeepLink(e),n&&L.setAppKitRecent(n),t&&he.sendEvent({type:"track",event:"CONNECT_SUCCESS",address:t,properties:{method:e?"mobile":"qrcode",name:((r=(s=se.state.data)==null?void 0:s.wallet)==null?void 0:r.name)||"Unknown",view:se.state.view,walletRank:n==null?void 0:n.order}})},setWcBasic(t){me.wcBasic=t},setUri(t){me.wcUri=t,me.wcPairingExpiry=J.getPairingExpiry()},setWcLinking(t){me.wcLinking=t},setWcError(t){me.wcError=t,me.buffering=!1},setRecentWallet(t){me.recentWallet=t},setBuffering(t){me.buffering=t},setStatus(t){me.status=t},setIsSwitchingConnection(t){me.isSwitchingConnection=t},async disconnect({id:t,namespace:e,initialDisconnect:n}={}){var s;try{await((s=V._getClient())==null?void 0:s.disconnect({id:t,chainNamespace:e,initialDisconnect:n}))}catch(r){throw new Xs("Failed to disconnect","INTERNAL_SDK_ERROR",r)}},async disconnectConnector({id:t,namespace:e}){var n;try{await((n=V._getClient())==null?void 0:n.disconnectConnector({id:t,namespace:e}))}catch(s){throw new Xs("Failed to disconnect connector","INTERNAL_SDK_ERROR",s)}},setConnections(t,e){const n=new Map(me.connections);n.set(e,t),me.connections=n},async handleAuthAccountSwitch({address:t,namespace:e}){var i,o;const n=m.getAccountData(e),s=(o=(i=n==null?void 0:n.user)==null?void 0:i.accounts)==null?void 0:o.find(a=>a.type==="smartAccount"),r=s&&s.address.toLowerCase()===t.toLowerCase()&&Vr.canSwitchToSmartAccount(e)?"smartAccount":"eoa";await V.setPreferredAccountType(r,e)},async handleActiveConnection({connection:t,namespace:e,address:n}){const s=q.getConnectorById(t.connectorId),r=t.connectorId===U.CONNECTOR_ID.AUTH;if(!s)throw new Error(`No connector found for connection: ${t.connectorId}`);if(r)n&&await V.handleAuthAccountSwitch({address:n,namespace:e});else{const i=await V.connectExternal({id:s.id,type:s.type,provider:s.provider,address:n,chain:e},e);return i==null?void 0:i.address}return n},async handleDisconnectedConnection({connection:t,namespace:e,address:n,closeModalOnConnect:s}){var l,u;const r=q.getConnectorById(t.connectorId),i=(u=(l=t.auth)==null?void 0:l.name)==null?void 0:u.toLowerCase(),o=t.connectorId===U.CONNECTOR_ID.AUTH,a=t.connectorId===U.CONNECTOR_ID.WALLET_CONNECT;if(!r)throw new Error(`No connector found for connection: ${t.connectorId}`);let c;if(o)if(i&&Vr.isSocialProvider(i)){const{address:d}=await Vr.connectSocial({social:i,closeModalOnConnect:s,onOpenFarcaster(){pe.open({view:"ConnectingFarcaster"})},onConnect(){se.replace("ProfileWallets")}});c=d}else{const{address:d}=await Vr.connectEmail({closeModalOnConnect:s,onOpen(){pe.open({view:"EmailLogin"})},onConnect(){se.replace("ProfileWallets")}});c=d}else if(a){const{address:d}=await Vr.connectWalletConnect({walletConnect:!0,connector:r,closeModalOnConnect:s,onOpen(h){const p=h?"AllWallets":"ConnectingWalletConnect";pe.state.open?se.push(p):pe.open({view:p})},onConnect(){se.replace("ProfileWallets")}});c=d}else{const d=await V.connectExternal({id:r.id,type:r.type,provider:r.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:s,onChange:r}){var c;let i;const o=(c=m.getAccountData(n))==null?void 0:c.caipAddress;if(o){const{address:l}=tt.parseCaipAddress(o);i=l}const a=Xo.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();r==null||r({address:l,namespace:n,hasSwitchedAccount:u,hasSwitchedWallet:a==="active"})}break}case"disconnected":{const l=await V.handleDisconnectedConnection({connection:t,namespace:n,address:e,closeModalOnConnect:s});l&&(r==null||r({address:l,namespace:n,hasSwitchedAccount:!0,hasSwitchedWallet:!0}));break}default:throw new Error(`Invalid connection status: ${a}`)}}},V=rn(Ty),La={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 bp(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],s=parseInt(n,10);return isNaN(s)?"0x0":`0x${s.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 Ba;async function Nu(){if(!Ba){const{createPublicClient:t,http:e,defineChain:n}=await Go(()=>import("./index-19828012.js"),["assets/index-19828012.js","assets/index-6c5c6262.js","assets/index-3632219d.css","assets/index-f10062b6.js"]);Ba={createPublicClient:t,http:e,defineChain:n}}return Ba}const Bc={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 Nu(),{chainId:n}=tt.parseCaipNetworkId(t.caipNetworkId);return e({...t,id:Number(n)})},async createViemPublicClient(t){const{createPublicClient:e,http:n}=await Nu(),s=k.state.projectId,r=await Bc.getViemChain(t);if(!r)throw new Error(`Chain ${t.caipNetworkId} not found in viem/chains`);return e({chain:r,transport:n(Bc.getBlockchainApiRpcUrl(t.caipNetworkId,s))})}},Ml={async getMyTokensWithBalance(t){var a;const e=(a=m.getAccountData())==null?void 0:a.address,n=m.state.activeCaipNetwork,s=q.getConnectorId("eip155")===U.CONNECTOR_ID.AUTH;if(!e||!n)return[];const r=`${n.caipNetworkId}:${e}`,i=L.getBalanceCacheForCaipAddress(r);if(i)return i.balances;if(n.chainNamespace===U.CHAIN.EVM&&s){const c=await this.getEIP155Balances(e,n);if(c)return this.filterLowQualityTokens(c)}const o=await re.getBalance(e,n.caipNetworkId,t);return this.filterLowQualityTokens(o.balances)},async getEIP155Balances(t,e){var n,s;try{const r=La.getChainIdHexFromCAIP2ChainId(e.caipNetworkId),i=await V.getCapabilities(t);if(!((s=(n=i==null?void 0:i[r])==null?void 0:n.assetDiscovery)!=null&&s.supported))return null;const o=await V.walletGetAssets({account:t,chainFilter:[r]});if(!La.isWalletGetAssetsResponse(o))return null;const c=(o[r]||[]).map(l=>La.createBalance(l,e.caipNetworkId));return L.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 s=await Bc.createViemPublicClient(n),{address:r}=tt.parseCaipAddress(t),[{result:i},{result:o},{result:a},{result:c}]=await s.multicall({contracts:[{address:e,functionName:"name",args:[],abi:go},{address:e,functionName:"symbol",args:[],abi:go},{address:e,functionName:"balanceOf",args:[r],abi:go},{address:e,functionName:"decimals",args:[],abi:go}]});return{name:i,symbol:o,decimals:c,balance:a&&c?bp(a,c):"0"}}},Fa={adapters:{}},Ip={state:Fa,initialize(t){Fa.adapters={...t}},get(t){return Fa.adapters[t]}},Zo={eip155:void 0,solana:void 0,polkadot:void 0,bip122:void 0,cosmos:void 0,sui:void 0,stacks:void 0},bt=ke({providers:{...Zo},providerIds:{...Zo}}),Ue={state:bt,subscribeKey(t,e){return st(bt,t,e)},subscribe(t){return nt(bt,()=>{t(bt)})},subscribeProviders(t){return nt(bt.providers,()=>t(bt.providers))},setProvider(t,e){t&&e&&(bt.providers[t]=Ci(e))},getProvider(t){if(t)return bt.providers[t]},setProviderId(t,e){e&&(bt.providerIds[t]=e)},getProviderId(t){if(t)return bt.providerIds[t]},reset(){bt.providers={...Zo},bt.providerIds={...Zo}},resetChain(t){bt.providers[t]=void 0,bt.providerIds[t]=void 0}},lr=ke({loading:!1,open:!1,selectedNetworkId:void 0,activeChain:void 0,initialized:!1}),Hn={state:lr,subscribe(t){return nt(lr,()=>t(lr))},subscribeOpen(t){return st(lr,"open",t)},set(t){Object.assign(lr,{...lr,...t})}},Oy={async getTokenList(t){var s;const e=await re.fetchSwapTokens({chainId:t});return((s=e==null?void 0:e.tokens)==null?void 0:s.map(r=>({...r,eip2612:!1,quantity:{decimals:"0",numeric:"0"},price:0,value:0})))||[]},async fetchGasPrice(){var e;const t=m.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 re.fetchGasPrice({chainId:t.caipNetworkId})}}catch{return null}},async fetchSwapAllowance({tokenAddress:t,userAddress:e,sourceTokenAmount:n,sourceTokenDecimals:s}){const r=await re.fetchSwapAllowance({tokenAddress:t,userAddress:e});if(r!=null&&r.allowance&&n&&s){const i=V.parseUnits(n,s)||0;return BigInt(r.allowance)>=i}return!1},async getMyTokensWithBalance(t){const e=await Ml.getMyTokensWithBalance(t);return m.setAccountProp("tokenBalance",e,m.state.activeChain),this.mapBalancesToSwapTokens(e)},mapBalancesToSwapTokens(t){return(t==null?void 0:t.map(e=>({...e,address:e!=null&&e.address?e.address:_p(),decimals:parseInt(e.quantity.decimals,10),logoUri:e.iconUrl,eip2612:!1})))||[]},async handleSwapError(t){var e,n;try{const s=t==null?void 0:t.cause;if(!(s!=null&&s.json))return;const r=await s.json(),i=(n=(e=r==null?void 0:r.reasons)==null?void 0:e[0])==null?void 0:n.description;return i!=null&&i.includes("insufficient liquidity")?"Insufficient liquidity":void 0}catch{return}}},ye=ke({tokenBalances:[],loading:!1}),Ry={state:ye,subscribe(t){return nt(ye,()=>t(ye))},subscribeKey(t,e){return st(ye,t,e)},setToken(t){t&&(ye.token=Ci(t))},setTokenAmount(t){ye.sendTokenAmount=t},setReceiverAddress(t){ye.receiverAddress=t},setReceiverProfileImageUrl(t){ye.receiverProfileImageUrl=t},setReceiverProfileName(t){ye.receiverProfileName=t},setNetworkBalanceInUsd(t){ye.networkBalanceInUSD=t},setLoading(t){ye.loading=t},getSdkEventProperties(t){var e,n;return{message:J.parseError(t),isSmartAccount:nn(m.state.activeChain)===en.ACCOUNT_TYPES.SMART_ACCOUNT,token:((e=ye.token)==null?void 0:e.symbol)||"",amount:ye.sendTokenAmount??0,network:((n=m.state.activeCaipNetwork)==null?void 0:n.caipNetworkId)||""}},async sendToken(){var t;try{switch(de.setLoading(!0),(t=m.state.activeCaipNetwork)==null?void 0:t.chainNamespace){case"eip155":await de.sendEvmToken();return;case"solana":await de.sendSolanaToken();return;default:throw new Error("Unsupported chain")}}catch(e){throw qn.isUserRejectedRequestError(e)?new mp(e):e}finally{de.setLoading(!1)}},async sendEvmToken(){var n,s,r;const t=m.state.activeChain;if(!t)throw new Error("SendController:sendEvmToken - activeChainNamespace is required");const e=nn(t);if(!de.state.sendTokenAmount||!de.state.receiverAddress)throw new Error("An amount and receiver address are required");if(!de.state.token)throw new Error("A token is required");if((n=de.state.token)!=null&&n.address){he.sendEvent({type:"track",event:"SEND_INITIATED",properties:{isSmartAccount:e===en.ACCOUNT_TYPES.SMART_ACCOUNT,token:de.state.token.address,amount:de.state.sendTokenAmount,network:((s=m.state.activeCaipNetwork)==null?void 0:s.caipNetworkId)||""}});const{hash:i}=await de.sendERC20Token({receiverAddress:de.state.receiverAddress,tokenAddress:de.state.token.address,sendTokenAmount:de.state.sendTokenAmount,decimals:de.state.token.quantity.decimals});i&&(ye.hash=i)}else{he.sendEvent({type:"track",event:"SEND_INITIATED",properties:{isSmartAccount:e===en.ACCOUNT_TYPES.SMART_ACCOUNT,token:de.state.token.symbol||"",amount:de.state.sendTokenAmount,network:((r=m.state.activeCaipNetwork)==null?void 0:r.caipNetworkId)||""}});const{hash:i}=await de.sendNativeToken({receiverAddress:de.state.receiverAddress,sendTokenAmount:de.state.sendTokenAmount,decimals:de.state.token.quantity.decimals});i&&(ye.hash=i)}},async fetchTokenBalance(t){var o,a,c;ye.loading=!0;const e=m.state.activeChain,n=(o=m.state.activeCaipNetwork)==null?void 0:o.caipNetworkId,s=(a=m.state.activeCaipNetwork)==null?void 0:a.chainNamespace,r=((c=m.getAccountData(e))==null?void 0:c.caipAddress)??m.state.activeCaipAddress,i=r?J.getPlainAddress(r):void 0;if(ye.lastRetry&&!J.isAllowedRetry(ye.lastRetry,30*we.ONE_SEC_MS))return ye.loading=!1,[];try{if(i&&n&&s){const l=await Ml.getMyTokensWithBalance();return ye.tokenBalances=l,ye.lastRetry=void 0,l}}catch(l){ye.lastRetry=Date.now(),t==null||t(l),An.showError("Token Balance Unavailable")}finally{ye.loading=!1}return[]},fetchNetworkBalance(){if(ye.tokenBalances.length===0)return;const t=Oy.mapBalancesToSwapTokens(ye.tokenBalances);if(!t)return;const e=t.find(n=>n.address===_p());e&&(ye.networkBalanceInUSD=e?Bm.multiply(e.quantity.numeric,e.price).toString():"0")},async sendNativeToken(t){var o,a,c,l;se.pushTransactionStack({});const e=t.receiverAddress,n=(o=m.getAccountData())==null?void 0:o.address,s=V.parseUnits(t.sendTokenAmount.toString(),Number(t.decimals)),r="0x",i=await V.sendTransaction({chainNamespace:U.CHAIN.EVM,to:e,address:n,data:r,value:s??BigInt(0)});return he.sendEvent({type:"track",event:"SEND_SUCCESS",properties:{isSmartAccount:nn("eip155")===en.ACCOUNT_TYPES.SMART_ACCOUNT,token:((a=de.state.token)==null?void 0:a.symbol)||"",amount:t.sendTokenAmount,network:((c=m.state.activeCaipNetwork)==null?void 0:c.caipNetworkId)||"",hash:i||""}}),(l=V._getClient())==null||l.updateBalance("eip155"),de.resetSend(),{hash:i}},async sendERC20Token(t){var s,r,i;se.pushTransactionStack({onSuccess(){se.replace("Account")}});const e=V.parseUnits(t.sendTokenAmount.toString(),Number(t.decimals)),n=(s=m.getAccountData())==null?void 0:s.address;if(n&&t.sendTokenAmount&&t.receiverAddress&&t.tokenAddress){const o=J.getPlainAddress(t.tokenAddress);if(!o)throw new Error("SendController:sendERC20Token - tokenAddress is required");const a=await V.writeContract({fromAddress:n,tokenAddress:o,args:[t.receiverAddress,e??BigInt(0)],method:"transfer",abi:Wm.getERC20Abi(o),chainNamespace:U.CHAIN.EVM});return he.sendEvent({type:"track",event:"SEND_SUCCESS",properties:{isSmartAccount:nn("eip155")===en.ACCOUNT_TYPES.SMART_ACCOUNT,token:((r=de.state.token)==null?void 0:r.symbol)||"",amount:t.sendTokenAmount,network:((i=m.state.activeCaipNetwork)==null?void 0:i.caipNetworkId)||"",hash:a||""}}),de.resetSend(),{hash:a}}return{hash:void 0}},async sendSolanaToken(){var n,s,r;if(!de.state.sendTokenAmount||!de.state.receiverAddress)throw new Error("An amount and receiver address are required");se.pushTransactionStack({onSuccess(){se.replace("Account")}});let t;de.state.token&&de.state.token.address!==we.SOLANA_NATIVE_TOKEN_ADDRESS&&(J.isCaipAddress(de.state.token.address)?t=J.getPlainAddress(de.state.token.address):t=de.state.token.address);const e=await V.sendTransaction({chainNamespace:"solana",tokenMint:t,to:de.state.receiverAddress,value:de.state.sendTokenAmount});e&&(ye.hash=e),(n=V._getClient())==null||n.updateBalance("solana"),he.sendEvent({type:"track",event:"SEND_SUCCESS",properties:{isSmartAccount:!1,token:((s=de.state.token)==null?void 0:s.symbol)||"",amount:de.state.sendTokenAmount,network:((r=m.state.activeCaipNetwork)==null?void 0:r.caipNetworkId)||"",hash:e||""}}),de.resetSend()},resetSend(){ye.token=void 0,ye.sendTokenAmount=void 0,ye.receiverAddress=void 0,ye.receiverProfileImageUrl=void 0,ye.receiverProfileName=void 0,ye.loading=!1,ye.tokenBalances=[]}},de=rn(Ry),ja={currentTab:0,tokenBalance:[],smartAccountDeployed:!1,addressLabels:new Map,user:void 0,preferredAccountType:void 0},yo={caipNetwork:void 0,supportsAllNetworks:!0,smartAccountEnabledNetworks:[]},G=ke({chains:sy(),activeCaipAddress:void 0,activeChain:void 0,activeCaipNetwork:void 0,noAdapters:!1,universalAdapter:{connectionControllerClient:void 0},isSwitchingNamespace:!1}),Sp={state:G,subscribe(t){return nt(G,()=>{t(G)})},subscribeKey(t,e){return st(G,t,e)},subscribeAccountStateProp(t,e,n){var r;const s=n||G.activeChain;return s?st(((r=G.chains.get(s))==null?void 0:r.accountState)||{},t,e):()=>{}},subscribeChainProp(t,e,n){let s;return nt(G.chains,()=>{var i;const r=n||G.activeChain;if(r){const o=(i=G.chains.get(r))==null?void 0:i[t];s!==o&&(s=o,e(o))}})},initialize(t,e,n){const{chainId:s,namespace:r}=L.getActiveNetworkProps(),i=e==null?void 0:e.find(u=>u.id.toString()===(s==null?void 0:s.toString())),a=t.find(u=>(u==null?void 0:u.namespace)===r)||(t==null?void 0:t[0]),c=t.map(u=>u.namespace).filter(u=>u!==void 0),l=k.state.enableEmbedded?new Set([...c]):new Set([...(e==null?void 0:e.map(u=>u.chainNamespace))??[]]);((t==null?void 0:t.length)===0||!a)&&(G.noAdapters=!0),G.noAdapters||(G.activeChain=a==null?void 0:a.namespace,G.activeCaipNetwork=i,m.setChainNetworkData(a==null?void 0:a.namespace,{caipNetwork:i}),G.activeChain&&Hn.set({activeChain:a==null?void 0:a.namespace})),l.forEach(u=>{const d=e==null?void 0:e.filter(g=>g.chainNamespace===u),h=L.getPreferredAccountTypes()||{},p={...k.state.defaultAccountTypes,...h};m.state.chains.set(u,{namespace:u,networkState:ke({...yo,caipNetwork:d==null?void 0:d[0]}),accountState:ke({...ja,preferredAccountType:p[u]}),caipNetworks:d??[],...n}),m.setRequestedCaipNetworks(d??[],u)})},removeAdapter(t){var e,n;if(G.activeChain===t){const s=Array.from(G.chains.entries()).find(([r])=>r!==t);if(s){const r=(n=(e=s[1])==null?void 0:e.caipNetworks)==null?void 0:n[0];r&&m.setActiveCaipNetwork(r)}}G.chains.delete(t)},addAdapter(t,{connectionControllerClient:e},n){if(!t.namespace)throw new Error("ChainController:addAdapter - adapter must have a namespace");G.chains.set(t.namespace,{namespace:t.namespace,networkState:{...yo,caipNetwork:n[0]},accountState:{...ja},caipNetworks:n,connectionControllerClient:e}),m.setRequestedCaipNetworks((n==null?void 0:n.filter(s=>s.chainNamespace===t.namespace))??[],t.namespace)},addNetwork(t){var n;const e=G.chains.get(t.chainNamespace);if(e){const s=[...e.caipNetworks||[]];(n=e.caipNetworks)!=null&&n.find(r=>r.id===t.id)||s.push(t),G.chains.set(t.chainNamespace,{...e,caipNetworks:s}),m.setRequestedCaipNetworks(s,t.chainNamespace),q.filterByNamespace(t.chainNamespace,!0)}},removeNetwork(t,e){var s,r,i;const n=G.chains.get(t);if(n){const o=((s=G.activeCaipNetwork)==null?void 0:s.id)===e,a=[...((r=n.caipNetworks)==null?void 0:r.filter(c=>c.id!==e))||[]];o&&((i=n==null?void 0:n.caipNetworks)!=null&&i[0])&&m.setActiveCaipNetwork(n.caipNetworks[0]),G.chains.set(t,{...n,caipNetworks:a}),m.setRequestedCaipNetworks(a||[],t),a.length===0&&q.filterByNamespace(t,!1)}},setAdapterNetworkState(t,e){const n=G.chains.get(t);n&&(n.networkState={...n.networkState||yo,...e},G.chains.set(t,n))},setChainAccountData(t,e,n=!0){if(!t)throw new Error("Chain is required to update chain account data");const s=G.chains.get(t);if(s){const r={...s.accountState||ja,...e};G.chains.set(t,{...s,accountState:r}),(G.chains.size===1||G.activeChain===t)&&e.caipAddress&&(G.activeCaipAddress=e.caipAddress)}},setChainNetworkData(t,e){if(!t)return;const n=G.chains.get(t);if(n){const s={...n.networkState||yo,...e};G.chains.set(t,{...n,networkState:s})}},setAccountProp(t,e,n,s=!0){m.setChainAccountData(n,{[t]:e},s)},setActiveNamespace(t){var s,r;G.activeChain=t;const e=t?G.chains.get(t):void 0,n=(s=e==null?void 0:e.networkState)==null?void 0:s.caipNetwork;n!=null&&n.id&&t&&(G.activeCaipAddress=(r=e==null?void 0:e.accountState)==null?void 0:r.caipAddress,G.activeCaipNetwork=n,m.setChainNetworkData(t,{caipNetwork:n}),L.setActiveCaipNetworkId(n==null?void 0:n.caipNetworkId),Hn.set({activeChain:t,selectedNetworkId:n==null?void 0:n.caipNetworkId}))},setActiveCaipNetwork(t){var i,o;if(!t)return;const e=G.activeChain===t.chainNamespace;e||m.setIsSwitchingNamespace(!0);const n=G.chains.get(t.chainNamespace);G.activeChain=t.chainNamespace,G.activeCaipNetwork=t,m.setChainNetworkData(t.chainNamespace,{caipNetwork:t});let s=(i=n==null?void 0:n.accountState)==null?void 0:i.address;if(s)G.activeCaipAddress=`${t.chainNamespace}:${t.id}:${s}`;else if(e&&G.activeCaipAddress){const{address:a}=tt.parseCaipAddress(G.activeCaipAddress);s=a,G.activeCaipAddress=`${t.caipNetworkId}:${s}`}else G.activeCaipAddress=void 0;m.setChainAccountData(t.chainNamespace,{address:s,caipAddress:G.activeCaipAddress}),de.resetSend(),Hn.set({activeChain:G.activeChain,selectedNetworkId:(o=G.activeCaipNetwork)==null?void 0:o.caipNetworkId}),L.setActiveCaipNetworkId(t.caipNetworkId),!m.checkIfSupportedNetwork(t.chainNamespace)&&k.state.enableNetworkSwitch&&!k.state.allowUnsupportedChain&&!V.state.wcBasic&&m.showUnsupportedChainUI()},addCaipNetwork(t){var n;if(!t)return;const e=G.chains.get(t.chainNamespace);e&&((n=e==null?void 0:e.caipNetworks)==null||n.push(t))},async switchActiveNamespace(t){var r;if(!t)return;const e=t!==m.state.activeChain,n=(r=m.getNetworkData(t))==null?void 0:r.caipNetwork,s=m.getCaipNetworkByNamespace(t,n==null?void 0:n.id);e&&s&&await m.switchActiveNetwork(s)},async switchActiveNetwork(t,{throwOnFailure:e=!1}={}){var o;const n=m.state.activeChain;if(!n)throw new Error("ChainController:switchActiveNetwork - namespace is required");const s=Ue.getProviderId(G.activeChain)==="AUTH",r=(o=m.getAccountData(n))==null?void 0:o.address,i=U.AUTH_CONNECTOR_SUPPORTED_CHAINS.includes(t.chainNamespace);try{if(r&&t.chainNamespace===n||s&&i){const a=Ip.get(t.chainNamespace);if(!a)throw new Error("Adapter not found");await a.switchNetwork({caipNetwork:t})}m.setActiveCaipNetwork(t)}catch(a){if(e)throw a}he.sendEvent({type:"track",event:"SWITCH_NETWORK",properties:{network:t.caipNetworkId}})},getConnectionControllerClient(t){const e=t||G.activeChain;if(!e)throw new Error("Chain is required to get connection controller client");const n=G.chains.get(e);if(!(n!=null&&n.connectionControllerClient))throw new Error("ConnectionController client not set");return n.connectionControllerClient},getNetworkProp(t,e){var s;const n=(s=G.chains.get(e))==null?void 0:s.networkState;if(n)return n[t]},getRequestedCaipNetworks(t){const e=G.chains.get(t),{approvedCaipNetworkIds:n=[],requestedCaipNetworks:s=[]}=(e==null?void 0:e.networkState)||{};return J.sortRequestedNetworks(n,s).filter(o=>o==null?void 0:o.id)},getAllRequestedCaipNetworks(){const t=[];return G.chains.forEach(e=>{if(!e.namespace)throw new Error("ChainController:getAllRequestedCaipNetworks - chainAdapter must have a namespace");const n=m.getRequestedCaipNetworks(e.namespace);t.push(...n)}),t},setRequestedCaipNetworks(t,e){m.setAdapterNetworkState(e,{requestedCaipNetworks:t});const s=m.getAllRequestedCaipNetworks().map(i=>i.chainNamespace),r=Array.from(new Set(s));q.filterByNamespaces(r)},getAllApprovedCaipNetworkIds(){const t=[];return G.chains.forEach(e=>{if(!e.namespace)throw new Error("ChainController:getAllApprovedCaipNetworkIds - chainAdapter must have a namespace");const n=m.getApprovedCaipNetworkIds(e.namespace);t.push(...n)}),t},getActiveCaipNetwork(t){var e,n;return t?(n=(e=G.chains.get(t))==null?void 0:e.networkState)==null?void 0:n.caipNetwork:G.activeCaipNetwork},getActiveCaipAddress(){return G.activeCaipAddress},getApprovedCaipNetworkIds(t){var s;const e=G.chains.get(t);return((s=e==null?void 0:e.networkState)==null?void 0:s.approvedCaipNetworkIds)||[]},setApprovedCaipNetworksData(t,e){m.setAdapterNetworkState(t,e)},checkIfSupportedNetwork(t,e){var r;const n=e||((r=G.activeCaipNetwork)==null?void 0:r.caipNetworkId),s=m.getRequestedCaipNetworks(t);return s.length?s==null?void 0:s.some(i=>i.caipNetworkId===n):!0},checkIfSupportedChainId(t){if(!G.activeChain)return!0;const e=m.getRequestedCaipNetworks(G.activeChain);return e==null?void 0:e.some(n=>n.id===t)},checkIfSmartAccountEnabled(){var s,r;const t=hp.caipNetworkIdToNumber((s=G.activeCaipNetwork)==null?void 0:s.caipNetworkId);if(!G.activeChain||!t)return!1;const n=((r=Dc.get(ms.SMART_ACCOUNT_ENABLED_NETWORKS))==null?void 0:r.split(","))||[];return!!(n!=null&&n.includes(t.toString()))},showUnsupportedChainUI(){pe.open({view:"UnsupportedChain"})},checkIfNamesSupported(){const t=G.activeCaipNetwork;return!!(t!=null&&t.chainNamespace&&we.NAMES_SUPPORTED_CHAIN_NAMESPACES.includes(t.chainNamespace))},resetNetwork(t){m.setAdapterNetworkState(t,{approvedCaipNetworkIds:void 0,supportsAllNetworks:!0})},resetAccount(t){var r,i;const e=t;if(!e)throw new Error("Chain is required to set account prop");const n=(i=(r=m.state.chains.get(e))==null?void 0:r.accountState)==null?void 0:i.preferredAccountType,s=k.state.defaultAccountTypes[e];G.activeCaipAddress=void 0,m.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:s||n,socialProvider:void 0,socialWindow:void 0,farcasterUrl:void 0,user:void 0,status:"disconnected"}),q.removeConnectorId(e)},setIsSwitchingNamespace(t){G.isSwitchingNamespace=t},getFirstCaipNetworkSupportsAuthConnector(){var n,s;const t=[];let e;if(G.chains.forEach(r=>{U.AUTH_CONNECTOR_SUPPORTED_CHAINS.find(i=>i===r.namespace)&&r.namespace&&t.push(r.namespace)}),t.length>0){const r=t[0];return e=r?(s=(n=G.chains.get(r))==null?void 0:n.caipNetworks)==null?void 0:s[0]:void 0,e}},getAccountData(t){var n;const e=t||G.activeChain;if(e)return(n=m.state.chains.get(e))==null?void 0:n.accountState},getNetworkData(t){var n;const e=t||G.activeChain;if(e)return(n=m.state.chains.get(e))==null?void 0:n.networkState},getCaipNetworkByNamespace(t,e){var r,i,o;if(!t)return;const n=m.state.chains.get(t),s=(r=n==null?void 0:n.caipNetworks)==null?void 0:r.find(a=>a.id.toString()===(e==null?void 0:e.toString()));return s||((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=q.state.filterByNamespace;return(t?[G.chains.get(t)]:Array.from(G.chains.values())).flatMap(n=>(n==null?void 0:n.caipNetworks)||[]).map(n=>n.caipNetworkId)},getCaipNetworks(t){return t?m.getRequestedCaipNetworks(t):m.getAllRequestedCaipNetworks()},getCaipNetworkById(t,e){return Sp.getCaipNetworks(e).find(n=>n.id.toString()===t.toString()||n.caipNetworkId.toString()===t.toString())},setLastConnectedSIWECaipNetwork(t){G.lastConnectedSIWECaipNetwork=t},getLastConnectedSIWECaipNetwork(){return G.lastConnectedSIWECaipNetwork},async fetchTokenBalance(t){var o,a;const e=m.getAccountData();if(!e)return[];const n=(o=m.state.activeCaipNetwork)==null?void 0:o.caipNetworkId,s=(a=m.state.activeCaipNetwork)==null?void 0:a.chainNamespace,r=m.state.activeCaipAddress,i=r?J.getPlainAddress(r):void 0;if(m.setAccountProp("balanceLoading",!0,s),e.lastRetry&&!J.isAllowedRetry(e.lastRetry,30*we.ONE_SEC_MS))return m.setAccountProp("balanceLoading",!1,s),[];try{if(i&&n&&s){const c=await Ml.getMyTokensWithBalance();return m.setAccountProp("tokenBalance",c,s),m.setAccountProp("lastRetry",void 0,s),m.setAccountProp("balanceLoading",!1,s),c}}catch(c){m.setAccountProp("lastRetry",Date.now(),s),t==null||t(c),An.showError("Token Balance Unavailable")}finally{m.setAccountProp("balanceLoading",!1,s)}return[]},isCaipNetworkDisabled(t){var c;const e=t.chainNamespace,n=!!((c=m.getAccountData(e))!=null&&c.caipAddress),s=m.getAllApprovedCaipNetworkIds(),r=m.getNetworkProp("supportsAllNetworks",e)!==!1,i=q.getConnectorId(e),o=q.getAuthConnector(),a=i===U.CONNECTOR_ID.AUTH&&o;return!n||r||a?!1:!(s!=null&&s.includes(t.caipNetworkId))}},m=rn(Sp),Py={onSwitchNetwork({network:t,ignoreSwitchConfirmation:e=!1}){var h,p;const n=m.state.activeCaipNetwork,s=m.state.activeChain,r=se.state.data;if(t.id===(n==null?void 0:n.id))return;const o=!!((h=m.getAccountData(s))!=null&&h.address),a=!!((p=m.getAccountData(t.chainNamespace))!=null&&p.address),c=t.chainNamespace!==s,u=q.getConnectorId(s)===U.CONNECTOR_ID.AUTH,d=U.AUTH_CONNECTOR_SUPPORTED_CHAINS.find(g=>g===t.chainNamespace);e||u&&d?se.push("SwitchNetwork",{...r,network:t}):o&&c&&!a?se.push("SwitchActiveChain",{switchToChain:t.chainNamespace,navigateTo:"Connect",navigateWithReplace:!0,network:t}):se.push("SwitchNetwork",{...r,network:t})}},Et=ke({loading:!1,loadingNamespaceMap:new Map,open:!1,shake:!1,namespace:void 0}),xy={state:Et,subscribe(t){return nt(Et,()=>t(Et))},subscribeKey(t,e){return st(Et,t,e)},async open(t){var o,a;const e=t==null?void 0:t.namespace,n=m.state.activeChain,s=e&&e!==n,r=(o=m.getAccountData(t==null?void 0:t.namespace))==null?void 0:o.caipAddress,i=m.state.noAdapters;if(V.state.wcBasic?Q.prefetch({fetchNetworkImages:!1,fetchConnectorImages:!1,fetchWalletRanks:!1}):await Q.prefetch(),q.setFilterByNamespace(t==null?void 0:t.namespace),pe.setLoading(!0,e),e&&s){const c=((a=m.getNetworkData(e))==null?void 0:a.caipNetwork)||m.getRequestedCaipNetworks(e)[0];c&&(i?(await m.switchActiveNetwork(c),se.push("ConnectingWalletConnectBasic")):Py.onSwitchNetwork({network:c,ignoreSwitchConfirmation:!0}))}else k.state.manualWCControl||i&&!r?J.isMobile()?se.reset("AllWallets"):se.reset("ConnectingWalletConnectBasic"):t!=null&&t.view?se.reset(t.view,t.data):r?se.reset("Account"):se.reset("Connect");Et.open=!0,Hn.set({open:!0}),he.sendEvent({type:"track",event:"MODAL_OPEN",properties:{connected:!!r}})},close(){const t=k.state.enableEmbedded,e=!!m.state.activeCaipAddress;Et.open&&he.sendEvent({type:"track",event:"MODAL_CLOSE",properties:{connected:e}}),Et.open=!1,se.reset("Connect"),pe.clearLoading(),t?e?se.replace("Account"):se.push("Connect"):Hn.set({open:!1}),V.resetUri()},setLoading(t,e){e&&Et.loadingNamespaceMap.set(e,t),Et.loading=t,Hn.set({loading:t})},clearLoading(){Et.loadingNamespaceMap.clear(),Et.loading=!1,Hn.set({loading:!1})},shake(){Et.shake||(Et.shake=!0,setTimeout(()=>{Et.shake=!1},500))}},pe=rn(xy),di={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"}]},Fc={id:"USD",payment_method_limits:[{id:"card",min:"10.00",max:"7500.00"},{id:"ach_bank_account",min:"10.00",max:"25000.00"}]},ky={providers:wp,selectedProvider:null,error:null,purchaseCurrency:di,paymentCurrency:Fc,purchaseCurrencies:[di],paymentCurrencies:[],quotesLoading:!1},be=ke(ky),$y={state:be,subscribe(t){return nt(be,()=>t(be))},subscribeKey(t,e){return st(be,t,e)},setSelectedProvider(t){var e,n;if(t&&t.name==="meld"){const s=m.state.activeChain,r=s===U.CHAIN.SOLANA?"SOL":"USDC",i=s?((n=(e=m.state.chains.get(s))==null?void 0:e.accountState)==null?void 0:n.address)??"":"",o=new URL(t.url);o.searchParams.append("publicKey",ry),o.searchParams.append("destinationCurrencyCode",r),o.searchParams.append("walletAddress",i),o.searchParams.append("externalCustomerId",k.state.projectId),be.selectedProvider={...t,url:o.toString()}}else be.selectedProvider=t},setOnrampProviders(t){if(Array.isArray(t)&&t.every(e=>typeof e=="string")){const e=t,n=wp.filter(s=>e.includes(s.name));be.providers=n}else be.providers=[]},setPurchaseCurrency(t){be.purchaseCurrency=t},setPaymentCurrency(t){be.paymentCurrency=t},setPurchaseAmount(t){jc.state.purchaseAmount=t},setPaymentAmount(t){jc.state.paymentAmount=t},async getAvailableCurrencies(){const t=await re.getOnrampOptions();be.purchaseCurrencies=t.purchaseCurrencies,be.paymentCurrencies=t.paymentCurrencies,be.paymentCurrency=t.paymentCurrencies[0]||Fc,be.purchaseCurrency=t.purchaseCurrencies[0]||di,await Q.fetchCurrencyImages(t.paymentCurrencies.map(e=>e.id)),await Q.fetchTokenImages(t.purchaseCurrencies.map(e=>e.symbol))},async getQuote(){var t,e;be.quotesLoading=!0;try{const n=await re.getOnrampQuote({purchaseCurrency:be.purchaseCurrency,paymentCurrency:be.paymentCurrency,amount:((t=be.paymentAmount)==null?void 0:t.toString())||"0",network:(e=be.purchaseCurrency)==null?void 0:e.symbol});return be.quotesLoading=!1,be.purchaseAmount=Number(n==null?void 0:n.purchaseAmount.amount),n}catch(n){return be.error=n.message,be.quotesLoading=!1,null}finally{be.quotesLoading=!1}},resetState(){be.selectedProvider=null,be.error=null,be.purchaseCurrency=di,be.paymentCurrency=Fc,be.purchaseCurrencies=[di],be.paymentCurrencies=[],be.paymentAmount=void 0,be.purchaseAmount=void 0,be.quotesLoading=!1}},jc=rn($y),Tu=2147483648,Uy={convertEVMChainIdToCoinType(t){if(t>=Tu)throw new Error("Invalid chainId");return(Tu|t)>>>0}},Wt=ke({suggestions:[],loading:!1}),Dy={state:Wt,subscribe(t){return nt(Wt,()=>t(Wt))},subscribeKey(t,e){return st(Wt,t,e)},async resolveName(t){var e,n;try{return await re.lookupEnsName(t)}catch(s){const r=s;throw new Error(((n=(e=r==null?void 0:r.reasons)==null?void 0:e[0])==null?void 0:n.description)||"Error resolving name")}},async isNameRegistered(t){try{return await re.lookupEnsName(t),!0}catch{return!1}},async getSuggestions(t){try{Wt.loading=!0,Wt.suggestions=[];const e=await re.getEnsNameSuggestions(t);return Wt.suggestions=e.suggestions||[],Wt.suggestions}catch(e){const n=hi.parseEnsApiError(e,"Error fetching name suggestions");throw new Error(n)}finally{Wt.loading=!1}},async getNamesForAddress(t){try{if(!m.state.activeCaipNetwork)return[];const n=L.getEnsFromCacheForAddress(t);if(n)return n;const s=await re.reverseLookupEnsName({address:t});return L.updateEnsCache({address:t,ens:s,timestamp:Date.now()}),s}catch(e){const n=hi.parseEnsApiError(e,"Error fetching names for address");throw new Error(n)}},async registerName(t){var r;const e=m.state.activeCaipNetwork,n=(r=m.getAccountData(e==null?void 0:e.chainNamespace))==null?void 0:r.address,s=q.getAuthConnector();if(!e)throw new Error("Network not found");if(!n||!s)throw new Error("Address or auth connector not found");Wt.loading=!0;try{const i=JSON.stringify({name:t,attributes:{},timestamp:Math.floor(Date.now()/1e3)});se.pushTransactionStack({onCancel(){se.replace("RegisterAccountName")}});const o=await V.signMessage(i);Wt.loading=!1;const a=e.id;if(!a)throw new Error("Network not found");const c=Uy.convertEVMChainIdToCoinType(Number(a));await re.registerEnsName({coinType:c,address:n,signature:o,message:i}),m.setAccountProp("profileName",t,e.chainNamespace),L.updateEnsCache({address:n,ens:[{name:t,registered_at:new Date().toISOString(),updated_at:void 0,addresses:{},attributes:[]}],timestamp:Date.now()}),se.replace("RegisterAccountNameSuccess")}catch(i){const o=hi.parseEnsApiError(i,`Error registering name ${t}`);throw se.replace("RegisterAccountName"),new Error(o)}finally{Wt.loading=!1}},validateName(t){return/^[a-zA-Z0-9-]{4,}$/u.test(t)},parseEnsApiError(t,e){var s,r;const n=t;return((r=(s=n==null?void 0:n.reasons)==null?void 0:s[0])==null?void 0:r.description)||e}},hi=rn(Dy),My={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"]},ys={RPC_ERROR_CODE:{USER_REJECTED:5e3,USER_REJECTED_METHODS:5002},getMethodsByChainNamespace(t){return My[t]||[]},createDefaultNamespace(t){return{methods:this.getMethodsByChainNamespace(t),events:["accountsChanged","chainChanged"],chains:[],rpcMap:{}}},applyNamespaceOverrides(t,e){if(!e)return{...t};const n={...t},s=new Set;if(e.methods&&Object.keys(e.methods).forEach(r=>s.add(r)),e.chains&&Object.keys(e.chains).forEach(r=>s.add(r)),e.events&&Object.keys(e.events).forEach(r=>s.add(r)),e.rpcMap&&Object.keys(e.rpcMap).forEach(r=>{const[i]=r.split(":");i&&s.add(i)}),s.forEach(r=>{n[r]||(n[r]=this.createDefaultNamespace(r))}),e.methods&&Object.entries(e.methods).forEach(([r,i])=>{n[r]&&(n[r].methods=i)}),e.chains&&Object.entries(e.chains).forEach(([r,i])=>{n[r]&&(n[r].chains=i)}),e.events&&Object.entries(e.events).forEach(([r,i])=>{n[r]&&(n[r].events=i)}),e.rpcMap){const r=new Set;Object.entries(e.rpcMap).forEach(([i,o])=>{const[a,c]=i.split(":");!a||!c||!n[a]||(n[a].rpcMap||(n[a].rpcMap={}),r.has(a)||(n[a].rpcMap={},r.add(a)),n[a].rpcMap[c]=o)})}return n},createNamespaces(t,e){const n=t.reduce((s,r)=>{const{id:i,chainNamespace:o,rpcUrls:a}=r,c=a.default.http[0];s[o]||(s[o]=this.createDefaultNamespace(o));const l=`${o}:${i}`,u=s[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),s},{});return this.applyNamespaceOverrides(n,e)},resolveReownName:async t=>{var s;const e=await hi.resolveName(t);return((s=(Object.values(e==null?void 0:e.addresses)||[])[0])==null?void 0:s.address)||!1},getChainsFromNamespaces(t={}){return Object.values(t).flatMap(e=>{const n=e.chains||[],s=e.accounts.map(r=>{const[i,o]=r.split(":");return`${i}:${o}`});return Array.from(new Set([...n,...s]))})},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",s=n&&e.code===ys.RPC_ERROR_CODE.USER_REJECTED_METHODS,r=n&&e.code===ys.RPC_ERROR_CODE.USER_REJECTED;return s||r}return!1}catch{return!1}},isOriginAllowed(t,e,n){for(const s of[...e,...n])if(s.includes("*")){const i=`^${s.replace(/[.*+?^${}()|[\]\\]/gu,"\\$&").replace(/\\\*/gu,".*")}$`;if(new RegExp(i,"u").test(t))return!0}else try{if(new URL(s).origin===t)return!0}catch{if(s===t)return!0}return!1},listenWcProvider({universalProvider:t,namespace:e,onConnect:n,onDisconnect:s,onAccountsChanged:r,onChainChanged:i,onDisplayUri:o}){n&&t.on("connect",()=>{const a=ys.getWalletConnectAccounts(t,e);n(a)}),s&&t.on("disconnect",()=>{s()}),r&&t.on("accountsChanged",a=>{var c,l,u,d,h;try{const p=((u=(l=(c=t.session)==null?void 0:c.namespaces)==null?void 0:l[e])==null?void 0:u.accounts)||[],g=(h=(d=t.rpcProviders)==null?void 0:d[e])==null?void 0:h.getDefaultChain(),f=a.map(y=>{const b=p.find(E=>E.includes(`${e}:${g}:${y}`));if(!b)return;const{chainId:_,chainNamespace:A}=tt.parseCaipAddress(b);return{address:y,chainId:_,chainNamespace:A}}).filter(y=>y!==void 0);f.length>0&&r(f)}catch(p){console.warn("Failed to parse accounts for namespace on accountsChanged event",e,a,p)}}),i&&t.on("chainChanged",a=>{i(a)}),o&&t.on("display_uri",a=>{o(a)})},getWalletConnectAccounts(t,e){var r,i,o,a;const n=new Set,s=(a=(o=(i=(r=t==null?void 0:t.session)==null?void 0:r.namespaces)==null?void 0:i[e])==null?void 0:o.accounts)==null?void 0:a.map(c=>tt.parseCaipAddress(c)).filter(({address:c})=>n.has(c.toLowerCase())?!1:(n.add(c.toLowerCase()),!0));return s&&s.length>0?s:[]}},Ly=[U.CONNECTOR_ID.AUTH,U.CONNECTOR_ID.WALLET_CONNECT];class By{constructor(e){this.availableConnectors=[],this.availableConnections=[],this.providerHandlers={},this.eventListeners=new Map,this.getCaipNetworks=n=>m.getCaipNetworks(n),this.getConnectorId=n=>q.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 s=this.getCaipNetworks().filter(r=>r.chainNamespace===this.namespace).find(r=>r.id.toString()===(n==null?void 0:n.toString()));e&&s&&this.addConnection({connectorId:U.CONNECTOR_ID.AUTH,accounts:e,caipNetwork:s})}setAuthProvider(e){e.onConnect(this.onAuthConnected.bind(this)),e.onSocialConnected(this.onAuthConnected.bind(this)),this.addConnector({id:U.CONNECTOR_ID.AUTH,type:"AUTH",name:U.CONNECTOR_NAMES.AUTH,provider:e,imageId:void 0,chain:this.namespace,chains:[]})}addConnector(...e){const n=new Set;this.availableConnectors=[...e,...this.availableConnectors].filter(s=>n.has(s.id)?!1:(n.add(s.id),!0)),this.emit("connectors",this.availableConnectors)}addConnection(...e){const n=new Set;this.availableConnections=[...e,...this.availableConnections].filter(s=>n.has(s.connectorId.toLowerCase())?!1:(n.add(s.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){m.setAccountProp("status",e,n)}on(e,n){var s;this.eventListeners.has(e)||this.eventListeners.set(e,new Set),(s=this.eventListeners.get(e))==null||s.add(n)}off(e,n){const s=this.eventListeners.get(e);s&&s.delete(n)}removeAllEventListeners(){this.eventListeners.forEach(e=>{e.clear()})}emit(e,n){const s=this.eventListeners.get(e);s&&s.forEach(r=>r(n))}async connectWalletConnect(e){try{return{clientId:(await this.getWalletConnectConnector().connectWalletConnect()).clientId}}catch(n){throw ys.isUserRejectedRequestError(n)?new mp(n):n}}async switchNetwork(e){var i;const{caipNetwork:n}=e,s=Ue.getProviderId(n.chainNamespace),r=Ue.getProvider(n.chainNamespace);if(!r)throw new Error("Provider not found");if(s==="WALLET_CONNECT"){r.setDefaultChain(n.caipNetworkId);return}if(s==="AUTH"){const o=(i=q.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:s,chainId:r}=J.getAccount(e[0]),i=this.getCaipNetworks().filter(a=>a.chainNamespace===this.namespace).find(a=>a.id.toString()===(r==null?void 0:r.toString())),o=this.connectors.find(a=>a.id===n);s&&(this.emit("accountChanged",{address:s,chainId:r,connector:o}),this.addConnection({connectorId:n,accounts:e.map(a=>{const{address:c}=J.getAccount(a);return{address:c}}),caipNetwork:i}))}}onAccountsChanged(e,n,s=!0){var r,i;if(e.length>0){const{address:o}=J.getAccount(e[0]),a=this.getConnection({connectorId:n,connections:this.connections,connectors:this.connectors});o&&((r=this.getConnectorId(U.CHAIN.EVM))==null?void 0:r.toLowerCase())===n.toLowerCase()&&this.emit("accountChanged",{address:o,chainId:(i=a==null?void 0:a.caipNetwork)==null?void 0:i.id,connector:a==null?void 0:a.connector}),this.addConnection({connectorId:n,accounts:e.map(c=>{const{address:l}=J.getAccount(c);return{address:l}}),caipNetwork:a==null?void 0:a.caipNetwork})}else s&&this.onDisconnect(n)}onDisconnect(e){var n;this.removeProviderListeners(e),this.deleteConnection(e),((n=this.getConnectorId(U.CHAIN.EVM))==null?void 0:n.toLowerCase())===e.toLowerCase()&&this.emitFirstAvailableConnection(),this.connections.length===0&&this.emit("disconnect")}onChainChanged(e,n){var o;const s=typeof e=="string"&&e.startsWith("0x")?parseInt(e,16).toString():e.toString(),r=this.getConnection({connectorId:n,connections:this.connections,connectors:this.connectors}),i=this.getCaipNetworks().filter(a=>a.chainNamespace===this.namespace).find(a=>a.id.toString()===s);r&&this.addConnection({connectorId:n,accounts:r.accounts,caipNetwork:i}),((o=this.getConnectorId(U.CHAIN.EVM))==null?void 0:o.toLowerCase())===n.toLowerCase()&&this.emit("switchNetwork",{chainId:s})}listenProviderEvents(e,n){if(Ly.includes(e))return;const s=o=>this.onAccountsChanged(o,e),r=o=>this.onChainChanged(o,e),i=()=>this.onDisconnect(e);this.providerHandlers[e]||(n.on("disconnect",i),n.on("accountsChanged",s),n.on("chainChanged",r),this.providerHandlers[e]={provider:n,disconnect:i,accountsChanged:s,chainChanged:r})}removeProviderListeners(e){if(this.providerHandlers[e]){const{provider:n,disconnect:s,accountsChanged:r,chainChanged:i}=this.providerHandlers[e];n.removeListener("disconnect",s),n.removeListener("accountsChanged",r),n.removeListener("chainChanged",i),this.providerHandlers[e]=null}}emitFirstAvailableConnection(){var n;const e=this.getConnection({connections:this.connections,connectors:this.connectors});if(e){const[s]=e.accounts;this.emit("accountChanged",{address:s==null?void 0:s.address,chainId:(n=e.caipNetwork)==null?void 0:n.id,connector:e.connector})}}getConnection({address:e,connectorId:n,connections:s,connectors:r}){if(n){const o=s.find(l=>l.connectorId.toLowerCase()===n.toLowerCase());if(!o)return null;const a=r.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=s.find(o=>o.accounts.length>0&&r.some(a=>a.id.toLowerCase()===o.connectorId.toLowerCase()));if(i){const[o]=i.accounts,a=r.find(c=>c.id.toLowerCase()===i.connectorId.toLowerCase());return{...i,account:o,connector:a}}return null}}let Ns=null;const hn={getSIWX(){return k.state.siwx},async initializeIfEnabled(t=m.getActiveCaipAddress()){var i,o,a;const e=k.state.siwx;if(!(e&&t))return;const[n,s,r]=t.split(":");if(m.checkIfSupportedNetwork(n,`${n}:${s}`))try{if((i=k.state.remoteFeatures)!=null&&i.emailCapture){const l=(o=m.getAccountData(n))==null?void 0:o.user;await pe.open({view:"DataCapture",data:{email:(l==null?void 0:l.email)??void 0}});return}if(Ns&&await Ns,(await e.getSessions(`${n}:${s}`,r)).length)return;await pe.open({view:"SIWXSignMessage"})}catch(c){console.error("SIWXUtil:initializeIfEnabled",c),he.sendEvent({type:"track",event:"SIWX_AUTH_ERROR",properties:this.getSIWXEventProperties(c)}),await((a=V._getClient())==null?void 0:a.disconnect().catch(console.error)),se.reset("Connect"),An.showError("A problem occurred while trying initialize authentication")}},async isAuthenticated(t=m.getActiveCaipAddress()){if(!k.state.siwx||!t)return!0;const{chainNamespace:n,chainId:s,address:r}=tt.parseCaipAddress(t),i=`${n}:${s}`;return(await hn.getSessions({address:r,caipNetworkId:i})).length>0},async requestSignMessage(){const t=k.state.siwx,e=J.getPlainAddress(m.getActiveCaipAddress()),n=mo(),s=V._getClient();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");if(!s)throw new Error("No ConnectionController client found");try{const r=await t.createMessage({chainId:n.caipNetworkId,accountAddress:e}),i=r.toString();q.getConnectorId(n.chainNamespace)===U.CONNECTOR_ID.AUTH&&se.pushTransactionStack({});const a=await s.signMessage(i);await t.addSession({data:r,message:i,signature:a}),m.setLastConnectedSIWECaipNetwork(n),pe.close(),he.sendEvent({type:"track",event:"SIWX_AUTH_SUCCESS",properties:this.getSIWXEventProperties()})}catch(r){(!pe.state.open||se.state.view==="ApproveTransaction")&&await pe.open({view:"SIWXSignMessage"}),An.showError("Error signing message"),he.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 s=m.getLastConnectedSIWECaipNetwork();if(s){const r=await(e==null?void 0:e.getSessions(s==null?void 0:s.caipNetworkId,J.getPlainAddress(m.getActiveCaipAddress())||""));r&&r.length>0?await m.switchActiveNetwork(s):await V.disconnect()}else await V.disconnect()}else pe.close();pe.close(),he.sendEvent({event:"CLICK_CANCEL_SIWX",type:"track",properties:this.getSIWXEventProperties()})}catch(e){console.error("SIWXUtil:cancelSignMessage",e)}},async getAllSessions(){const t=this.getSIWX(),e=m.getAllRequestedCaipNetworks(),n=[];return await Promise.all(e.map(async s=>{const r=await(t==null?void 0:t.getSessions(s.caipNetworkId,J.getPlainAddress(m.getActiveCaipAddress())||""));r&&n.push(...r)})),n},async getSessions(t){const e=k.state.siwx;let n=t==null?void 0:t.address;if(!n){const r=m.getActiveCaipAddress();n=J.getPlainAddress(r)}let s=t==null?void 0:t.caipNetworkId;if(!s){const r=m.getActiveCaipNetwork();s=r==null?void 0:r.caipNetworkId}return e&&n&&s?e.getSessions(s,n):[]},async isSIWXCloseDisabled(){var e;const t=this.getSIWX();if(t){const n=se.state.view==="ApproveTransaction",s=se.state.view==="SIWXSignMessage";if(n||s)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:s,chainNamespace:r}){var d;const i=hn.getSIWX(),o=mo();if(!i||!r.includes(U.CHAIN.EVM)||(d=k.state.remoteFeatures)!=null&&d.emailCapture){const h=await t.connect({chainId:e,socialUri:n,preferredAccountType:s});return{address:h.address,chainId:h.chainId,accounts:h.accounts}}const a=`${r}:${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:s});return l.accountAddress=u.address,l.serializedMessage=u.message||"",u.signature&&u.message&&await hn.addEmbeddedWalletSession(l,u.message,u.signature),m.setLastConnectedSIWECaipNetwork(o),{address:u.address,chainId:u.chainId,accounts:u.accounts}},async addEmbeddedWalletSession(t,e,n){if(Ns)return Ns;const s=hn.getSIWX();return s?(Ns=s.addSession({data:t,message:e,signature:n}).finally(()=>{Ns=null}),Ns):Promise.resolve()},async universalProviderAuthenticate({universalProvider:t,chains:e,methods:n}){var l,u,d;const s=hn.getSIWX(),r=mo(),i=new Set(e.map(h=>h.split(":")[0]));if(!s||i.size!==1||!i.has("eip155"))return!1;const o=await s.createMessage({chainId:((l=mo())==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)]});An.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(m.setAccountProp("connectedWalletInfo",c,Array.from(i)[0]),(d=a==null?void 0:a.auths)!=null&&d.length){const h=a.auths.map(p=>{const g=t.client.formatAuthMessage({request:p.p,iss:p.p.iss});return{data:{...p.p,accountAddress:p.p.iss.split(":").slice(-1).join(""),chainId:p.p.iss.split(":").slice(2,4).join(":"),uri:p.p.aud,version:p.p.version||o.version,expirationTime:p.p.exp,issuedAt:p.p.iat,notBefore:p.p.nbf},message:g,signature:p.s.s,cacao:p}});try{await s.setSessions(h),r&&m.setLastConnectedSIWECaipNetwork(r),he.sendEvent({type:"track",event:"SIWX_AUTH_SUCCESS",properties:hn.getSIWXEventProperties()})}catch(p){throw console.error("SIWX:universalProviderAuth - failed to set sessions",p),he.sendEvent({type:"track",event:"SIWX_AUTH_ERROR",properties:hn.getSIWXEventProperties(p)}),await t.disconnect().catch(console.error),p}finally{An.hide()}}return!0},getSIWXEventProperties(t){var n;const e=m.state.activeChain;if(!e)throw new Error("SIWXUtil:getSIWXEventProperties - namespace is required");return{network:((n=m.state.activeCaipNetwork)==null?void 0:n.caipNetworkId)||"",isSmartAccount:nn(e)===en.ACCOUNT_TYPES.SMART_ACCOUNT,message:t?J.parseError(t):void 0}},async clearSessions(){const t=this.getSIWX();t&&await t.setSessions([])}};class Fy{constructor({provider:e,namespace:n}){this.id=U.CONNECTOR_ID.WALLET_CONNECT,this.name="WalletConnect",this.type="WALLET_CONNECT",this.imageId="ef1a1fcf-7fe8-4d69-bd6d-fda1345b4400",this.getCaipNetworks=m.getCaipNetworks.bind(m),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(),s=k.state.universalProviderConfigOverride,r=ys.createNamespaces(n,s);await this.provider.connect({optionalNamespaces:r})}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 hn.universalProviderAuthenticate({universalProvider:this.provider,chains:e,methods:jy})}}const jy=["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"],on=ke({message:"",variant:"info",open:!1}),qy={state:on,subscribeKey(t,e){return st(on,t,e)},open(t,e){const{debug:n}=k.state,{code:s,displayMessage:r,debugMessage:i}=t;r&&n&&(on.message=r,on.variant=e,on.open=!0),i&&console.error(typeof i=="function"?i():i,s?{code:s}:void 0)},warn(t,e,n){on.open=!0,on.message=t,on.variant="warning",e&&console.warn(e,n)},close(){on.open=!1,on.message="",on.variant="info"}},kt=rn(qy),Wy={network:"eip155:8453",asset:"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",metadata:{name:"USD Coin",symbol:"USDC",decimals:6}},Hy={network:"eip155:84532",asset:"0x036CbD53842c5426634e7929541eC2318f3dCF7e",metadata:{name:"USD Coin",symbol:"USDC",decimals:6}};function Ky(t){return!t||typeof t.then!="function"?Promise.resolve(t):t}function Ye(t,...e){try{return Ky(t(...e))}catch(n){return Promise.reject(n)}}function Vy(t){const e=typeof t;return t===null||e!=="object"&&e!=="function"}function zy(t){const e=Object.getPrototypeOf(t);return!e||e.isPrototypeOf(Object)}function Fo(t){if(Vy(t))return String(t);if(zy(t)||Array.isArray(t))return JSON.stringify(t);if(typeof t.toJSON=="function")return Fo(t.toJSON());throw new Error("[unstorage] Cannot stringify value!")}const qc="base64:";function Gy(t){return typeof t=="string"?t:qc+Xy(t)}function Yy(t){return typeof t!="string"||!t.startsWith(qc)?t:Jy(t.slice(qc.length))}function Jy(t){return globalThis.Buffer?Buffer.from(t,"base64"):Uint8Array.from(globalThis.atob(t),e=>e.codePointAt(0))}function Xy(t){return globalThis.Buffer?Buffer.from(t).toString("base64"):globalThis.btoa(String.fromCodePoint(...t))}function Ct(t){var e;return t&&((e=t.split("?")[0])==null?void 0:e.replace(/[/\\]/g,":").replace(/:+/g,":").replace(/^:|:$/g,""))||""}function Zy(...t){return Ct(t.join(":"))}function wo(t){return t=Ct(t),t?t+":":""}function Qy(t,e){if(e===void 0)return!0;let n=0,s=t.indexOf(":");for(;s>-1;)n++,s=t.indexOf(":",s+1);return n<=e}function ew(t,e){return e?t.startsWith(e)&&t[t.length-1]!=="$":t[t.length-1]!=="$"}const tw="memory",nw=()=>{const t=new Map;return{name:tw,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 sw(t={}){const e={mounts:{"":t.driver||nw()},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[""]}},s=(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]})),r=(l,u)=>{if(e.watching){u=Ct(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 Ou(e.mounts[l],r,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,p=g=>{let f=h.get(g.base);return f||(f={driver:g.driver,base:g.base,items:[]},h.set(g.base,f)),f};for(const g of l){const f=typeof g=="string",y=Ct(f?g:g.key),b=f?void 0:g.value,_=f||!g.options?u:{...u,...g.options},A=n(y);p(A).items.push({key:y,value:b,relativeKey:A.relativeKey,options:_})}return Promise.all([...h.values()].map(g=>d(g))).then(g=>g.flat())},c={hasItem(l,u={}){l=Ct(l);const{relativeKey:d,driver:h}=n(l);return Ye(h.hasItem,d,u)},getItem(l,u={}){l=Ct(l);const{relativeKey:d,driver:h}=n(l);return Ye(h.getItem,d,u).then(p=>ho(p))},getItems(l,u={}){return a(l,u,d=>d.driver.getItems?Ye(d.driver.getItems,d.items.map(h=>({key:h.relativeKey,options:h.options})),u).then(h=>h.map(p=>({key:Zy(d.base,p.key),value:ho(p.value)}))):Promise.all(d.items.map(h=>Ye(d.driver.getItem,h.relativeKey,h.options).then(p=>({key:h.key,value:ho(p)})))))},getItemRaw(l,u={}){l=Ct(l);const{relativeKey:d,driver:h}=n(l);return h.getItemRaw?Ye(h.getItemRaw,d,u):Ye(h.getItem,d,u).then(p=>Yy(p))},async setItem(l,u,d={}){if(u===void 0)return c.removeItem(l);l=Ct(l);const{relativeKey:h,driver:p}=n(l);p.setItem&&(await Ye(p.setItem,h,Fo(u),d),p.watch||r("update",l))},async setItems(l,u){await a(l,u,async d=>{if(d.driver.setItems)return Ye(d.driver.setItems,d.items.map(h=>({key:h.relativeKey,value:Fo(h.value),options:h.options})),u);d.driver.setItem&&await Promise.all(d.items.map(h=>Ye(d.driver.setItem,h.relativeKey,Fo(h.value),h.options)))})},async setItemRaw(l,u,d={}){if(u===void 0)return c.removeItem(l,d);l=Ct(l);const{relativeKey:h,driver:p}=n(l);if(p.setItemRaw)await Ye(p.setItemRaw,h,u,d);else if(p.setItem)await Ye(p.setItem,h,Gy(u),d);else return;p.watch||r("update",l)},async removeItem(l,u={}){typeof u=="boolean"&&(u={removeMeta:u}),l=Ct(l);const{relativeKey:d,driver:h}=n(l);h.removeItem&&(await Ye(h.removeItem,d,u),(u.removeMeta||u.removeMata)&&await Ye(h.removeItem,d+"$",u),h.watch||r("remove",l))},async getMeta(l,u={}){typeof u=="boolean"&&(u={nativeOnly:u}),l=Ct(l);const{relativeKey:d,driver:h}=n(l),p=Object.create(null);if(h.getMeta&&Object.assign(p,await Ye(h.getMeta,d,u)),!u.nativeOnly){const g=await Ye(h.getItem,d+"$",u).then(f=>ho(f));g&&typeof g=="object"&&(typeof g.atime=="string"&&(g.atime=new Date(g.atime)),typeof g.mtime=="string"&&(g.mtime=new Date(g.mtime)),Object.assign(p,g))}return p},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=wo(l);const d=s(l,!0);let h=[];const p=[];let g=!0;for(const b of d){(y=b.driver.flags)!=null&&y.maxDepth||(g=!1);const _=await Ye(b.driver.getKeys,b.relativeBase,u);for(const A of _){const E=b.mountpoint+Ct(A);h.some(N=>E.startsWith(N))||p.push(E)}h=[b.mountpoint,...h.filter(A=>!A.startsWith(b.mountpoint))]}const f=u.maxDepth!==void 0&&!g;return p.filter(b=>(!f||Qy(b,u.maxDepth))&&ew(b,l))},async clear(l,u={}){l=wo(l),await Promise.all(s(l,!1).map(async d=>{if(d.driver.clear)return Ye(d.driver.clear,d.relativeBase,u);if(d.driver.removeItem){const h=await d.driver.getKeys(d.relativeBase||"",u);return Promise.all(h.map(p=>d.driver.removeItem(p,u)))}}))},async dispose(){await Promise.all(Object.values(e.mounts).map(l=>Ru(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=wo(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(Ou(u,r,l)).then(d=>{e.unwatch[l]=d}).catch(console.error),c},async unmount(l,u=!0){var d,h;l=wo(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 Ru(e.mounts[l]),e.mountpoints=e.mountpoints.filter(p=>p!==l),delete e.mounts[l])},getMount(l=""){l=Ct(l)+":";const u=n(l);return{driver:u.driver,base:u.base}},getMounts(l="",u={}){return l=Ct(l),s(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 Ou(t,e,n){return t.watch?t.watch((s,r)=>e(s,n+r)):()=>{}}async function Ru(t){typeof t.dispose=="function"&&await Ye(t.dispose)}const rw="idb-keyval";var iw=(t={})=>{const e=t.base&&t.base.length>0?`${t.base}:`:"",n=r=>e+r;let s;return t.dbName&&t.storeName&&(s=fm(t.dbName,t.storeName)),{name:rw,options:t,async hasItem(r){return!(typeof await yu(n(r),s)>"u")},async getItem(r){return await yu(n(r),s)??null},setItem(r,i){return gm(n(r),i,s)},removeItem(r){return mm(n(r),s)},getKeys(){return ym(s)},clear(){return wm(s)}}};const ow="WALLET_CONNECT_V2_INDEXED_DB",aw="keyvaluestorage";let cw=class{constructor(){this.indexedDb=sw({driver:iw({dbName:ow,storeName:aw})})}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,Pl(n))}async removeItem(e){await this.indexedDb.removeItem(e)}};var qa=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof ue<"u"?ue:typeof self<"u"?self:{},jo={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,s){this[n]=String(s)},t.prototype.removeItem=function(n){delete this[n]},t.prototype.clear=function(){const n=this;Object.keys(n).forEach(function(s){n[s]=void 0,delete n[s]})},t.prototype.key=function(n){return n=n||0,Object.keys(this)[n]},t.prototype.__defineGetter__("length",function(){return Object.keys(this).length}),typeof qa<"u"&&qa.localStorage?jo.exports=qa.localStorage:typeof window<"u"&&window.localStorage?jo.exports=window.localStorage:jo.exports=new e})();function lw(t){var e;return[t[0],Yo((e=t[1])!=null?e:"")]}let uw=class{constructor(){this.localStorage=jo.exports}async getKeys(){return Object.keys(this.localStorage)}async getEntries(){return Object.entries(this.localStorage).map(lw)}async getItem(e){const n=this.localStorage.getItem(e);if(n!==null)return Yo(n)}async setItem(e,n){this.localStorage.setItem(e,Pl(n))}async removeItem(e){this.localStorage.removeItem(e)}};const dw="wc_storage_version",Pu=1,hw=async(t,e,n)=>{const s=dw,r=await e.getItem(s);if(r&&r>=Pu){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(s,Pu),n(e),pw(t,o)},pw=async(t,e)=>{e.length&&e.forEach(async n=>{await t.removeItem(n)})};let fw=class{constructor(){this.initialized=!1,this.setInitialized=n=>{this.storage=n,this.initialized=!0};const e=new uw;this.storage=e;try{const n=new cw;hw(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 gw=Object.defineProperty,mw=(t,e,n)=>e in t?gw(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,xu=(t,e,n)=>mw(t,typeof e!="symbol"?e+"":e,n);let yw=class extends Fr{constructor(e){super(),this.opts=e,xu(this,"protocol","wc"),xu(this,"version",2)}};var ww=Object.defineProperty,bw=(t,e,n)=>e in t?ww(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Ew=(t,e,n)=>bw(t,typeof e!="symbol"?e+"":e,n);let vw=class extends Fr{constructor(e,n){super(),this.core=e,this.logger=n,Ew(this,"records",new Map)}},Cw=class{constructor(e,n){this.logger=e,this.core=n}},Aw=class extends Fr{constructor(e,n){super(),this.relayer=e,this.logger=n}},_w=class extends Fr{constructor(e){super()}},Iw=class{constructor(e,n,s,r){this.core=e,this.logger=n,this.name=s}},Sw=class extends Fr{constructor(e,n){super(),this.relayer=e,this.logger=n}},Nw=class extends Fr{constructor(e,n){super(),this.core=e,this.logger=n}},Tw=class{constructor(e,n,s){this.core=e,this.logger=n,this.store=s}},Ow=class{constructor(e,n){this.projectId=e,this.logger=n}},Rw=class{constructor(e,n,s){this.core=e,this.logger=n,this.telemetryEnabled=s}};var Pw=Object.defineProperty,xw=(t,e,n)=>e in t?Pw(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,ku=(t,e,n)=>xw(t,typeof e!="symbol"?e+"":e,n);let kw=class{constructor(e){this.opts=e,ku(this,"protocol","wc"),ku(this,"version",2)}},$w=class{constructor(e){this.client=e}};const Uw="0.1.1";function Dw(){return Uw}let Fe=class Wc extends Error{constructor(e,n={}){const s=(()=>{var c;if(n.cause instanceof Wc){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})(),r=(()=>n.cause instanceof Wc&&n.cause.docsPath||n.docsPath)(),o=`https://oxlib.sh${r??""}`,a=[e||"An error occurred.",...n.metaMessages?["",...n.metaMessages]:[],...s||r?["",s?`Details: ${s}`:void 0,r?`See: ${o}`:void 0]:[]].filter(c=>typeof c=="string").join(`
|
|
6
6
|
`);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@${Dw()}`}),this.cause=n.cause,this.details=s,this.docs=o,this.docsPath=r,this.shortMessage=e}walk(e){return Np(this,e)}};function Np(t,e){return e!=null&&e(t)?t:t&&typeof t=="object"&&"cause"in t&&t.cause?Np(t.cause,e):e?null:t}const ur=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */function Mw(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function Ai(t){if(!Number.isSafeInteger(t)||t<0)throw new Error("positive integer expected, got "+t)}function Zs(t,...e){if(!Mw(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 Lw(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.createHasher");Ai(t.outputLen),Ai(t.blockLen)}function Rr(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 Tp(t,e){Zs(t);const n=e.outputLen;if(t.length<n)throw new Error("digestInto() expects output buffer of length at least "+n)}function Bw(t){return new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4))}function Pr(...t){for(let e=0;e<t.length;e++)t[e].fill(0)}function Wa(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function gn(t,e){return t<<32-e|t>>>e}const Fw=(()=>new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68)();function jw(t){return t<<24&4278190080|t<<8&16711680|t>>>8&65280|t>>>24&255}function qw(t){for(let e=0;e<t.length;e++)t[e]=jw(t[e]);return t}const $u=Fw?t=>t:qw;function Ww(t){if(typeof t!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(t))}function ba(t){return typeof t=="string"&&(t=Ww(t)),Zs(t),t}function Hw(...t){let e=0;for(let s=0;s<t.length;s++){const r=t[s];Zs(r),e+=r.length}const n=new Uint8Array(e);for(let s=0,r=0;s<t.length;s++){const i=t[s];n.set(i,r),r+=i.length}return n}class Ll{}function Op(t){const e=s=>t().update(ba(s)).digest(),n=t();return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=()=>t(),e}function Kw(t=32){if(ur&&typeof ur.getRandomValues=="function")return ur.getRandomValues(new Uint8Array(t));if(ur&&typeof ur.randomBytes=="function")return Uint8Array.from(ur.randomBytes(t));throw new Error("crypto.getRandomValues must be defined")}function Vw(t,e,n,s){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,n,s);const r=BigInt(32),i=BigInt(4294967295),o=Number(n>>r&i),a=Number(n&i),c=s?4:0,l=s?0:4;t.setUint32(e+c,o,s),t.setUint32(e+l,a,s)}function zw(t,e,n){return t&e^~t&n}function Gw(t,e,n){return t&e^t&n^e&n}class Yw extends Ll{constructor(e,n,s,r){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=n,this.padOffset=s,this.isLE=r,this.buffer=new Uint8Array(e),this.view=Wa(this.buffer)}update(e){Rr(this),e=ba(e),Zs(e);const{view:n,buffer:s,blockLen:r}=this,i=e.length;for(let o=0;o<i;){const a=Math.min(r-this.pos,i-o);if(a===r){const c=Wa(e);for(;r<=i-o;o+=r)this.process(c,o);continue}s.set(e.subarray(o,o+a),this.pos),this.pos+=a,o+=a,this.pos===r&&(this.process(n,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Rr(this),Tp(e,this),this.finished=!0;const{buffer:n,view:s,blockLen:r,isLE:i}=this;let{pos:o}=this;n[o++]=128,Pr(this.buffer.subarray(o)),this.padOffset>r-o&&(this.process(s,0),o=0);for(let d=o;d<r;d++)n[d]=0;Vw(s,r-8,BigInt(this.length*8),i),this.process(s,0);const a=Wa(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 s=e.slice(0,n);return this.destroy(),s}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());const{blockLen:n,buffer:s,length:r,finished:i,destroyed:o,pos:a}=this;return e.destroyed=o,e.finished=i,e.length=r,e.pos=a,r%n&&e.buffer.set(s),e}clone(){return this._cloneInto()}}const ts=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),bo=BigInt(2**32-1),Uu=BigInt(32);function Jw(t,e=!1){return e?{h:Number(t&bo),l:Number(t>>Uu&bo)}:{h:Number(t>>Uu&bo)|0,l:Number(t&bo)|0}}function Xw(t,e=!1){const n=t.length;let s=new Uint32Array(n),r=new Uint32Array(n);for(let i=0;i<n;i++){const{h:o,l:a}=Jw(t[i],e);[s[i],r[i]]=[o,a]}return[s,r]}const Zw=(t,e,n)=>t<<n|e>>>32-n,Qw=(t,e,n)=>e<<n|t>>>32-n,e0=(t,e,n)=>e<<n-32|t>>>64-n,t0=(t,e,n)=>t<<n-32|e>>>64-n,n0=BigInt(0),zr=BigInt(1),s0=BigInt(2),r0=BigInt(7),i0=BigInt(256),o0=BigInt(113),Rp=[],Pp=[],xp=[];for(let t=0,e=zr,n=1,s=0;t<24;t++){[n,s]=[s,(2*n+3*s)%5],Rp.push(2*(5*s+n)),Pp.push((t+1)*(t+2)/2%64);let r=n0;for(let i=0;i<7;i++)e=(e<<zr^(e>>r0)*o0)%i0,e&s0&&(r^=zr<<(zr<<BigInt(i))-zr);xp.push(r)}const kp=Xw(xp,!0),a0=kp[0],c0=kp[1],Du=(t,e,n)=>n>32?e0(t,e,n):Zw(t,e,n),Mu=(t,e,n)=>n>32?t0(t,e,n):Qw(t,e,n);function l0(t,e=24){const n=new Uint32Array(10);for(let s=24-e;s<24;s++){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=Du(l,u,1)^n[a],h=Mu(l,u,1)^n[a+1];for(let p=0;p<50;p+=10)t[o+p]^=d,t[o+p+1]^=h}let r=t[2],i=t[3];for(let o=0;o<24;o++){const a=Pp[o],c=Du(r,i,a),l=Mu(r,i,a),u=Rp[o];r=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]^=a0[s],t[1]^=c0[s]}Pr(n)}class Bl extends Ll{constructor(e,n,s,r=!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=s,this.enableXOF=r,this.rounds=i,Ai(s),!(0<e&&e<200))throw new Error("only keccak-f1600 function is supported");this.state=new Uint8Array(200),this.state32=Bw(this.state)}clone(){return this._cloneInto()}keccak(){$u(this.state32),l0(this.state32,this.rounds),$u(this.state32),this.posOut=0,this.pos=0}update(e){Rr(this),e=ba(e),Zs(e);const{blockLen:n,state:s}=this,r=e.length;for(let i=0;i<r;){const o=Math.min(n-this.pos,r-i);for(let a=0;a<o;a++)s[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:s,blockLen:r}=this;e[s]^=n,n&128&&s===r-1&&this.keccak(),e[r-1]^=128,this.keccak()}writeInto(e){Rr(this,!1),Zs(e),this.finish();const n=this.state,{blockLen:s}=this;for(let r=0,i=e.length;r<i;){this.posOut>=s&&this.keccak();const o=Math.min(s-this.posOut,i-r);e.set(n.subarray(this.posOut,this.posOut+o),r),this.posOut+=o,r+=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 Ai(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(Tp(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,Pr(this.state)}_cloneInto(e){const{blockLen:n,suffix:s,outputLen:r,rounds:i,enableXOF:o}=this;return e||(e=new Bl(n,s,r,o,i)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=i,e.suffix=s,e.outputLen=r,e.enableXOF=o,e.destroyed=this.destroyed,e}}const u0=(t,e,n)=>Op(()=>new Bl(e,t,n)),d0=(()=>u0(1,136,256/8))(),h0=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 p0 extends Yw{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:s,D:r,E:i,F:o,G:a,H:c}=this;return[e,n,s,r,i,o,a,c]}set(e,n,s,r,i,o,a,c){this.A=e|0,this.B=n|0,this.C=s|0,this.D=r|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],p=ns[d-2],g=gn(h,7)^gn(h,18)^h>>>3,f=gn(p,17)^gn(p,19)^p>>>10;ns[d]=f+ns[d-7]+g+ns[d-16]|0}let{A:s,B:r,C:i,D:o,E:a,F:c,G:l,H:u}=this;for(let d=0;d<64;d++){const h=gn(a,6)^gn(a,11)^gn(a,25),p=u+h+zw(a,c,l)+h0[d]+ns[d]|0,f=(gn(s,2)^gn(s,13)^gn(s,22))+Gw(s,r,i)|0;u=l,l=c,c=a,a=o+p|0,o=i,i=r,r=s,s=p+f|0}s=s+this.A|0,r=r+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(s,r,i,o,a,c,l,u)}roundClean(){Pr(ns)}destroy(){this.set(0,0,0,0,0,0,0,0),Pr(this.buffer)}}const f0=Op(()=>new p0);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Fl=BigInt(0),Hc=BigInt(1);function no(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function jl(t){if(!no(t))throw new Error("Uint8Array expected")}function _i(t,e){if(typeof e!="boolean")throw new Error(t+" boolean expected, got "+e)}function Eo(t){const e=t.toString(16);return e.length&1?"0"+e:e}function $p(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);return t===""?Fl:BigInt("0x"+t)}const Up=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",g0=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function Ii(t){if(jl(t),Up)return t.toHex();let e="";for(let n=0;n<t.length;n++)e+=g0[t[n]];return e}const Pn={_0:48,_9:57,A:65,F:70,a:97,f:102};function Lu(t){if(t>=Pn._0&&t<=Pn._9)return t-Pn._0;if(t>=Pn.A&&t<=Pn.F)return t-(Pn.A-10);if(t>=Pn.a&&t<=Pn.f)return t-(Pn.a-10)}function Qo(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);if(Up)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 s=new Uint8Array(n);for(let r=0,i=0;r<n;r++,i+=2){const o=Lu(t.charCodeAt(i)),a=Lu(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)}s[r]=o*16+a}return s}function Vs(t){return $p(Ii(t))}function Dp(t){return jl(t),$p(Ii(Uint8Array.from(t).reverse()))}function so(t,e){return Qo(t.toString(16).padStart(e*2,"0"))}function Mp(t,e){return so(t,e).reverse()}function Xt(t,e,n){let s;if(typeof e=="string")try{s=Qo(e)}catch(i){throw new Error(t+" must be hex string or Uint8Array, cause: "+i)}else if(no(e))s=Uint8Array.from(e);else throw new Error(t+" must be hex string or Uint8Array");const r=s.length;if(typeof n=="number"&&r!==n)throw new Error(t+" of length "+n+" expected, got "+r);return s}function ea(...t){let e=0;for(let s=0;s<t.length;s++){const r=t[s];jl(r),e+=r.length}const n=new Uint8Array(e);for(let s=0,r=0;s<t.length;s++){const i=t[s];n.set(i,r),r+=i.length}return n}const Ha=t=>typeof t=="bigint"&&Fl<=t;function ql(t,e,n){return Ha(t)&&Ha(e)&&Ha(n)&&e<=t&&t<n}function Ar(t,e,n,s){if(!ql(e,n,s))throw new Error("expected valid "+t+": "+n+" <= n < "+s+", got "+e)}function m0(t){let e;for(e=0;t>Fl;t>>=Hc,e+=1);return e}const Ea=t=>(Hc<<BigInt(t))-Hc,Ka=t=>new Uint8Array(t),Bu=t=>Uint8Array.from(t);function y0(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 s=Ka(t),r=Ka(t),i=0;const o=()=>{s.fill(1),r.fill(0),i=0},a=(...d)=>n(r,s,...d),c=(d=Ka(0))=>{r=a(Bu([0]),d),s=a(),d.length!==0&&(r=a(Bu([1]),d),s=a())},l=()=>{if(i++>=1e3)throw new Error("drbg: tried 1000 values");let d=0;const h=[];for(;d<e;){s=a();const p=s.slice();h.push(p),d+=s.length}return ea(...h)};return(d,h)=>{o(),c(d);let p;for(;!(p=h(l()));)c();return o(),p}}const w0={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"||no(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 va(t,e,n={}){const s=(r,i,o)=>{const a=w0[i];if(typeof a!="function")throw new Error("invalid validator function");const c=t[r];if(!(o&&c===void 0)&&!a(c,t))throw new Error("param "+String(r)+" is invalid. Expected "+i+", got "+c)};for(const[r,i]of Object.entries(e))s(r,i,!1);for(const[r,i]of Object.entries(n))s(r,i,!0);return t}function Fu(t){const e=new WeakMap;return(n,...s)=>{const r=e.get(n);if(r!==void 0)return r;const i=t(n,...s);return e.set(n,i),i}}function b0(t,e){if(Hu(t)>e)throw new F0({givenSize:Hu(t),maxSize:e})}const xn={zero:48,nine:57,A:65,F:70,a:97,f:102};function ju(t){if(t>=xn.zero&&t<=xn.nine)return t-xn.zero;if(t>=xn.A&&t<=xn.F)return t-(xn.A-10);if(t>=xn.a&&t<=xn.f)return t-(xn.a-10)}function E0(t,e={}){const{dir:n,size:s=32}=e;if(s===0)return t;if(t.length>s)throw new j0({size:t.length,targetSize:s,type:"Bytes"});const r=new Uint8Array(s);for(let i=0;i<s;i++){const o=n==="right";r[o?i:s-i-1]=t[o?i:t.length-i-1]}return r}function Lp(t,e){if(vs(t)>e)throw new R0({givenSize:vs(t),maxSize:e})}function v0(t,e){if(typeof e=="number"&&e>0&&e>vs(t)-1)throw new jp({offset:e,position:"start",size:vs(t)})}function C0(t,e,n){if(typeof e=="number"&&typeof n=="number"&&vs(t)!==n-e)throw new jp({offset:n,position:"end",size:vs(t)})}function Bp(t,e={}){const{dir:n,size:s=32}=e;if(s===0)return t;const r=t.replace("0x","");if(r.length>s*2)throw new P0({size:Math.ceil(r.length/2),targetSize:s,type:"Hex"});return`0x${r[n==="right"?"padEnd":"padStart"](s*2,"0")}`}const A0="#__bigint";function Wl(t,e,n){return JSON.stringify(t,(s,r)=>typeof e=="function"?e(s,r):typeof r=="bigint"?r.toString()+A0:r,n)}const _0=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function I0(t,e={}){const{strict:n=!1}=e;if(!t)throw new qu(t);if(typeof t!="string")throw new qu(t);if(n&&!/^0x[0-9a-fA-F]*$/.test(t))throw new Wu(t);if(!t.startsWith("0x"))throw new Wu(t)}function S0(...t){return`0x${t.reduce((e,n)=>e+n.replace("0x",""),"")}`}function Hl(t){return t instanceof Uint8Array?ta(t):Array.isArray(t)?ta(new Uint8Array(t)):t}function ta(t,e={}){let n="";for(let r=0;r<t.length;r++)n+=_0[t[r]];const s=`0x${n}`;return typeof e.size=="number"?(Lp(s,e.size),Fp(s,e.size)):s}function Va(t,e={}){const{signed:n,size:s}=e,r=BigInt(t);let i;s?n?i=(1n<<BigInt(s)*8n-1n)-1n:i=2n**(BigInt(s)*8n)-1n:typeof t=="number"&&(i=BigInt(Number.MAX_SAFE_INTEGER));const o=typeof i=="bigint"&&n?-i-1n:0;if(i&&r>i||r<o){const l=typeof t=="bigint"?"n":"";throw new O0({max:i?`${i}${l}`:void 0,min:`${o}${l}`,signed:n,size:s,value:`${t}${l}`})}const c=`0x${(n&&r<0?(1n<<BigInt(s*8))+BigInt(r):r).toString(16)}`;return s?N0(c,s):c}function N0(t,e){return Bp(t,{dir:"left",size:e})}function Fp(t,e){return Bp(t,{dir:"right",size:e})}function Ln(t,e,n,s={}){const{strict:r}=s;v0(t,e);const i=`0x${t.replace("0x","").slice((e??0)*2,(n??t.length)*2)}`;return r&&C0(i,e,n),i}function vs(t){return Math.ceil((t.length-2)/2)}function T0(t,e={}){const{strict:n=!1}=e;try{return I0(t,{strict:n}),!0}catch{return!1}}let O0=class extends Fe{constructor({max:e,min:n,signed:s,size:r,value:i}){super(`Number \`${i}\` is not in safe${r?` ${r*8}-bit`:""}${s?" signed":" unsigned"} integer range ${e?`(\`${n}\` to \`${e}\`)`:`(above \`${n}\`)`}`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.IntegerOutOfRangeError"})}};class qu extends Fe{constructor(e){super(`Value \`${typeof e=="object"?Wl(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 Wu extends Fe{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 R0=class extends Fe{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 jp extends Fe{constructor({offset:e,position:n,size:s}){super(`Slice ${n==="start"?"starting":"ending"} at offset \`${e}\` is out-of-bounds (size: \`${s}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SliceOffsetOutOfBoundsError"})}}let P0=class extends Fe{constructor({size:e,targetSize:n,type:s}){super(`${s.charAt(0).toUpperCase()}${s.slice(1).toLowerCase()} size (\`${e}\`) exceeds padding size (\`${n}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeExceedsPaddingSizeError"})}};const x0=new TextEncoder;function k0(t){if(!(t instanceof Uint8Array)){if(!t)throw new vo(t);if(typeof t!="object")throw new vo(t);if(!("BYTES_PER_ELEMENT"in t))throw new vo(t);if(t.BYTES_PER_ELEMENT!==1||t.constructor.name!=="Uint8Array")throw new vo(t)}}function $0(t){return t instanceof Uint8Array?t:typeof t=="string"?D0(t):U0(t)}function U0(t){return t instanceof Uint8Array?t:new Uint8Array(t)}function D0(t,e={}){const{size:n}=e;let s=t;n&&(Lp(t,n),s=Fp(t,n));let r=s.slice(2);r.length%2&&(r=`0${r}`);const i=r.length/2,o=new Uint8Array(i);for(let a=0,c=0;a<i;a++){const l=ju(r.charCodeAt(c++)),u=ju(r.charCodeAt(c++));if(l===void 0||u===void 0)throw new Fe(`Invalid byte sequence ("${r[c-2]}${r[c-1]}" in "${r}").`);o[a]=l*16+u}return o}function M0(t,e={}){const{size:n}=e,s=x0.encode(t);return typeof n=="number"?(b0(s,n),L0(s,n)):s}function L0(t,e){return E0(t,{dir:"right",size:e})}function Hu(t){return t.length}function B0(t){try{return k0(t),!0}catch{return!1}}class vo extends Fe{constructor(e){super(`Value \`${typeof e=="object"?Wl(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"})}}let F0=class extends Fe{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"})}},j0=class extends Fe{constructor({size:e,targetSize:n,type:s}){super(`${s.charAt(0).toUpperCase()}${s.slice(1).toLowerCase()} size (\`${e}\`) exceeds padding size (\`${n}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeExceedsPaddingSizeError"})}};function qp(t,e={}){const{as:n=typeof t=="string"?"Hex":"Bytes"}=e,s=d0($0(t));return n==="Bytes"?s:ta(s)}let q0=class 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 s=this.keys().next().value;s&&this.delete(s)}return this}};const W0={checksum:new q0(8192)},za=W0.checksum;function Wp(t,e={}){const{compressed:n}=e,{prefix:s,x:r,y:i}=t;if(n===!1||typeof r=="bigint"&&typeof i=="bigint"){if(s!==4)throw new Ku({prefix:s,cause:new Y0});return}if(n===!0||typeof r=="bigint"&&typeof i>"u"){if(s!==3&&s!==2)throw new Ku({prefix:s,cause:new G0});return}throw new z0({publicKey:t})}function H0(t){const e=(()=>{if(T0(t))return Hp(t);if(B0(t))return K0(t);const{prefix:n,x:s,y:r}=t;return typeof s=="bigint"&&typeof r=="bigint"?{prefix:n??4,x:s,y:r}:{prefix:n,x:s}})();return Wp(e),e}function K0(t){return Hp(ta(t))}function Hp(t){if(t.length!==132&&t.length!==130&&t.length!==68)throw new J0({publicKey:t});if(t.length===130){const s=BigInt(Ln(t,0,32)),r=BigInt(Ln(t,32,64));return{prefix:4,x:s,y:r}}if(t.length===132){const s=Number(Ln(t,0,1)),r=BigInt(Ln(t,1,33)),i=BigInt(Ln(t,33,65));return{prefix:s,x:r,y:i}}const e=Number(Ln(t,0,1)),n=BigInt(Ln(t,1,33));return{prefix:e,x:n}}function V0(t,e={}){Wp(t);const{prefix:n,x:s,y:r}=t,{includePrefix:i=!0}=e;return S0(i?Va(n,{size:1}):"0x",Va(s,{size:32}),typeof r=="bigint"?Va(r,{size:32}):"0x")}class z0 extends Fe{constructor({publicKey:e}){super(`Value \`${Wl(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 Ku extends Fe{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 G0 extends Fe{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 Y0 extends Fe{constructor(){super("Prefix must be 4 for uncompressed public keys."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidUncompressedPrefixError"})}}let J0=class extends Fe{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 ${vs(Hl(e))} bytes.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidSerializedSizeError"})}};const X0=/^0x[a-fA-F0-9]{40}$/;function Kp(t,e={}){const{strict:n=!0}=e;if(!X0.test(t))throw new Vu({address:t,cause:new eb});if(n){if(t.toLowerCase()===t)return;if(Vp(t)!==t)throw new Vu({address:t,cause:new tb})}}function Vp(t){if(za.has(t))return za.get(t);Kp(t,{strict:!1});const e=t.substring(2).toLowerCase(),n=qp(M0(e),{as:"Bytes"}),s=e.split("");for(let i=0;i<40;i+=2)n[i>>1]>>4>=8&&s[i]&&(s[i]=s[i].toUpperCase()),(n[i>>1]&15)>=8&&s[i+1]&&(s[i+1]=s[i+1].toUpperCase());const r=`0x${s.join("")}`;return za.set(t,r),r}function Z0(t,e={}){const{checksum:n=!1}=e;return Kp(t),n?Vp(t):t}function Q0(t,e={}){const n=qp(`0x${V0(t).slice(4)}`).substring(26);return Z0(`0x${n}`,e)}class Vu extends Fe{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 eb extends Fe{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 tb extends Fe{constructor(){super("Address does not match its checksum counterpart."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidChecksumError"})}}class zp extends Ll{constructor(e,n){super(),this.finished=!1,this.destroyed=!1,Lw(e);const s=ba(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 r=this.blockLen,i=new Uint8Array(r);i.set(s.length>r?e.create().update(s).digest():s);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),Pr(i)}update(e){return Rr(this),this.iHash.update(e),this}digestInto(e){Rr(this),Zs(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:s,finished:r,destroyed:i,blockLen:o,outputLen:a}=this;return e=e,e.finished=r,e.destroyed=i,e.blockLen=o,e.outputLen=a,e.oHash=n._cloneInto(e.oHash),e.iHash=s._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}}const Gp=(t,e,n)=>new zp(t,e).update(n).digest();Gp.create=(t,e)=>new zp(t,e);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Nt=BigInt(0),ft=BigInt(1),Ls=BigInt(2),nb=BigInt(3),Yp=BigInt(4),Jp=BigInt(5),Xp=BigInt(8);function _t(t,e){const n=t%e;return n>=Nt?n:e+n}function Ht(t,e,n){let s=t;for(;e-- >Nt;)s*=s,s%=n;return s}function Kc(t,e){if(t===Nt)throw new Error("invert: expected non-zero number");if(e<=Nt)throw new Error("invert: expected positive modulus, got "+e);let n=_t(t,e),s=e,r=Nt,i=ft;for(;n!==Nt;){const a=s/n,c=s%n,l=r-i*a;s=n,n=c,r=i,i=l}if(s!==ft)throw new Error("invert: does not exist");return _t(r,e)}function Zp(t,e){const n=(t.ORDER+ft)/Yp,s=t.pow(e,n);if(!t.eql(t.sqr(s),e))throw new Error("Cannot find square root");return s}function sb(t,e){const n=(t.ORDER-Jp)/Xp,s=t.mul(e,Ls),r=t.pow(s,n),i=t.mul(e,r),o=t.mul(t.mul(i,Ls),r),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 rb(t){if(t<BigInt(3))throw new Error("sqrt is not defined for small field");let e=t-ft,n=0;for(;e%Ls===Nt;)e/=Ls,n++;let s=Ls;const r=Kl(t);for(;zu(r,s)===1;)if(s++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(n===1)return Zp;let i=r.pow(s,e);const o=(e+ft)/Ls;return function(c,l){if(c.is0(l))return l;if(zu(c,l)!==1)throw new Error("Cannot find square root");let u=n,d=c.mul(c.ONE,i),h=c.pow(l,e),p=c.pow(l,o);for(;!c.eql(h,c.ONE);){if(c.is0(h))return c.ZERO;let g=1,f=c.sqr(h);for(;!c.eql(f,c.ONE);)if(g++,f=c.sqr(f),g===u)throw new Error("Cannot find square root");const y=ft<<BigInt(u-g-1),b=c.pow(d,y);u=g,d=c.sqr(b),h=c.mul(h,d),p=c.mul(p,b)}return p}}function ib(t){return t%Yp===nb?Zp:t%Xp===Jp?sb:rb(t)}const ob=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function ab(t){const e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},n=ob.reduce((s,r)=>(s[r]="function",s),e);return va(t,n)}function cb(t,e,n){if(n<Nt)throw new Error("invalid exponent, negatives unsupported");if(n===Nt)return t.ONE;if(n===ft)return e;let s=t.ONE,r=e;for(;n>Nt;)n&ft&&(s=t.mul(s,r)),r=t.sqr(r),n>>=ft;return s}function Qp(t,e,n=!1){const s=new Array(e.length).fill(n?t.ZERO:void 0),r=e.reduce((o,a,c)=>t.is0(a)?o:(s[c]=o,t.mul(o,a)),t.ONE),i=t.inv(r);return e.reduceRight((o,a,c)=>t.is0(a)?o:(s[c]=t.mul(o,s[c]),t.mul(o,a)),i),s}function zu(t,e){const n=(t.ORDER-ft)/Ls,s=t.pow(e,n),r=t.eql(s,t.ONE),i=t.eql(s,t.ZERO),o=t.eql(s,t.neg(t.ONE));if(!r&&!i&&!o)throw new Error("invalid Legendre symbol result");return r?1:i?0:-1}function ef(t,e){e!==void 0&&Ai(e);const n=e!==void 0?e:t.toString(2).length,s=Math.ceil(n/8);return{nBitLength:n,nByteLength:s}}function Kl(t,e,n=!1,s={}){if(t<=Nt)throw new Error("invalid field: expected ORDER > 0, got "+t);const{nBitLength:r,nByteLength:i}=ef(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:r,BYTES:i,MASK:Ea(r),ZERO:Nt,ONE:ft,create:c=>_t(c,t),isValid:c=>{if(typeof c!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof c);return Nt<=c&&c<t},is0:c=>c===Nt,isOdd:c=>(c&ft)===ft,neg:c=>_t(-c,t),eql:(c,l)=>c===l,sqr:c=>_t(c*c,t),add:(c,l)=>_t(c+l,t),sub:(c,l)=>_t(c-l,t),mul:(c,l)=>_t(c*l,t),pow:(c,l)=>cb(a,c,l),div:(c,l)=>_t(c*Kc(l,t),t),sqrN:c=>c*c,addN:(c,l)=>c+l,subN:(c,l)=>c-l,mulN:(c,l)=>c*l,inv:c=>Kc(c,t),sqrt:s.sqrt||(c=>(o||(o=ib(t)),o(a,c))),toBytes:c=>n?Mp(c,i):so(c,i),fromBytes:c=>{if(c.length!==i)throw new Error("Field.fromBytes: expected "+i+" bytes, got "+c.length);return n?Dp(c):Vs(c)},invertBatch:c=>Qp(a,c),cmov:(c,l,u)=>u?l:c});return Object.freeze(a)}function tf(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 nf(t){const e=tf(t);return e+Math.ceil(e/2)}function lb(t,e,n=!1){const s=t.length,r=tf(e),i=nf(e);if(s<16||s<i||s>1024)throw new Error("expected "+i+"-1024 bytes of input, got "+s);const o=n?Dp(t):Vs(t),a=_t(o,e-ft)+ft;return n?Mp(a,r):so(a,r)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Gu=BigInt(0),Vc=BigInt(1);function Ga(t,e){const n=e.negate();return t?n:e}function sf(t,e){if(!Number.isSafeInteger(t)||t<=0||t>e)throw new Error("invalid window size, expected [1.."+e+"], got W="+t)}function Ya(t,e){sf(t,e);const n=Math.ceil(e/t)+1,s=2**(t-1),r=2**t,i=Ea(t),o=BigInt(t);return{windows:n,windowSize:s,mask:i,maxNumber:r,shiftBy:o}}function Yu(t,e,n){const{windowSize:s,mask:r,maxNumber:i,shiftBy:o}=n;let a=Number(t&r),c=t>>o;a>s&&(a-=i,c+=Vc);const l=e*s,u=l+Math.abs(a)-1,d=a===0,h=a<0,p=e%2!==0;return{nextN:c,offset:u,isZero:d,isNeg:h,isNegF:p,offsetF:l}}function ub(t,e){if(!Array.isArray(t))throw new Error("array expected");t.forEach((n,s)=>{if(!(n instanceof e))throw new Error("invalid point at index "+s)})}function db(t,e){if(!Array.isArray(t))throw new Error("array of scalars expected");t.forEach((n,s)=>{if(!e.isValid(n))throw new Error("invalid scalar at index "+s)})}const Ja=new WeakMap,rf=new WeakMap;function Xa(t){return rf.get(t)||1}function hb(t,e){return{constTimeNegate:Ga,hasPrecomputes(n){return Xa(n)!==1},unsafeLadder(n,s,r=t.ZERO){let i=n;for(;s>Gu;)s&Vc&&(r=r.add(i)),i=i.double(),s>>=Vc;return r},precomputeWindow(n,s){const{windows:r,windowSize:i}=Ya(s,e),o=[];let a=n,c=a;for(let l=0;l<r;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,s,r){let i=t.ZERO,o=t.BASE;const a=Ya(n,e);for(let c=0;c<a.windows;c++){const{nextN:l,offset:u,isZero:d,isNeg:h,isNegF:p,offsetF:g}=Yu(r,c,a);r=l,d?o=o.add(Ga(p,s[g])):i=i.add(Ga(h,s[u]))}return{p:i,f:o}},wNAFUnsafe(n,s,r,i=t.ZERO){const o=Ya(n,e);for(let a=0;a<o.windows&&r!==Gu;a++){const{nextN:c,offset:l,isZero:u,isNeg:d}=Yu(r,a,o);if(r=c,!u){const h=s[l];i=i.add(d?h.negate():h)}}return i},getPrecomputes(n,s,r){let i=Ja.get(s);return i||(i=this.precomputeWindow(s,n),n!==1&&Ja.set(s,r(i))),i},wNAFCached(n,s,r){const i=Xa(n);return this.wNAF(i,this.getPrecomputes(i,n,r),s)},wNAFCachedUnsafe(n,s,r,i){const o=Xa(n);return o===1?this.unsafeLadder(n,s,i):this.wNAFUnsafe(o,this.getPrecomputes(o,n,r),s,i)},setWindowSize(n,s){sf(s,e),rf.set(n,s),Ja.delete(n)}}}function pb(t,e,n,s){ub(n,t),db(s,e);const r=n.length,i=s.length;if(r!==i)throw new Error("arrays of points and scalars must have equal length");const o=t.ZERO,a=m0(BigInt(r));let c=1;a>12?c=a-3:a>4?c=a-2:a>0&&(c=2);const l=Ea(c),u=new Array(Number(l)+1).fill(o),d=Math.floor((e.BITS-1)/c)*c;let h=o;for(let p=d;p>=0;p-=c){u.fill(o);for(let f=0;f<i;f++){const y=s[f],b=Number(y>>BigInt(p)&l);u[b]=u[b].add(n[f])}let g=o;for(let f=u.length-1,y=o;f>0;f--)y=y.add(u[f]),g=g.add(y);if(h=h.add(g),p!==0)for(let f=0;f<c;f++)h=h.double()}return h}function of(t){return ab(t.Fp),va(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...ef(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function Ju(t){t.lowS!==void 0&&_i("lowS",t.lowS),t.prehash!==void 0&&_i("prehash",t.prehash)}function fb(t){const e=of(t);va(e,{a:"field",b:"field"},{allowInfinityPoint:"boolean",allowedPrivateKeyLengths:"array",clearCofactor:"function",fromBytes:"function",isTorsionFree:"function",toBytes:"function",wrapPrivateKey:"boolean"});const{endo:n,Fp:s,a:r}=e;if(n){if(!s.eql(r,s.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 gb extends Error{constructor(e=""){super(e)}}const Fn={Err:gb,_tlv:{encode:(t,e)=>{const{Err:n}=Fn;if(t<0||t>256)throw new n("tlv.encode: wrong tag");if(e.length&1)throw new n("tlv.encode: unpadded data");const s=e.length/2,r=Eo(s);if(r.length/2&128)throw new n("tlv.encode: long form length too big");const i=s>127?Eo(r.length/2|128):"";return Eo(t)+i+r+e},decode(t,e){const{Err:n}=Fn;let s=0;if(t<0||t>256)throw new n("tlv.encode: wrong tag");if(e.length<2||e[s++]!==t)throw new n("tlv.decode: wrong tlv");const r=e[s++],i=!!(r&128);let o=0;if(!i)o=r;else{const c=r&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(s,s+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(s+=c,o<128)throw new n("tlv.decode(long): not minimal encoding")}const a=e.subarray(s,s+o);if(a.length!==o)throw new n("tlv.decode: wrong value length");return{v:a,l:e.subarray(s+o)}}},_int:{encode(t){const{Err:e}=Fn;if(t<Wn)throw new e("integer: negative integers are not allowed");let n=Eo(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}=Fn;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 Vs(t)}},toSig(t){const{Err:e,_int:n,_tlv:s}=Fn,r=Xt("signature",t),{v:i,l:o}=s.decode(48,r);if(o.length)throw new e("invalid signature: left bytes after parsing");const{v:a,l:c}=s.decode(2,i),{v:l,l:u}=s.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}=Fn,s=e.encode(2,n.encode(t.r)),r=e.encode(2,n.encode(t.s)),i=s+r;return e.encode(48,i)}};function Za(t,e){return Ii(so(t,e))}const Wn=BigInt(0),Je=BigInt(1);BigInt(2);const Qa=BigInt(3),mb=BigInt(4);function yb(t){const e=fb(t),{Fp:n}=e,s=Kl(e.n,e.nBitLength),r=e.toBytes||((A,E,N)=>{const P=E.toAffine();return ea(Uint8Array.from([4]),n.toBytes(P.x),n.toBytes(P.y))}),i=e.fromBytes||(A=>{const E=A.subarray(1),N=n.fromBytes(E.subarray(0,n.BYTES)),P=n.fromBytes(E.subarray(n.BYTES,2*n.BYTES));return{x:N,y:P}});function o(A){const{a:E,b:N}=e,P=n.sqr(A),D=n.mul(P,A);return n.add(n.add(D,n.mul(A,E)),N)}function a(A,E){const N=n.sqr(E),P=o(A);return n.eql(N,P)}if(!a(e.Gx,e.Gy))throw new Error("bad curve params: generator point");const c=n.mul(n.pow(e.a,Qa),mb),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(A){return ql(A,Je,e.n)}function d(A){const{allowedPrivateKeyLengths:E,nByteLength:N,wrapPrivateKey:P,n:D}=e;if(E&&typeof A!="bigint"){if(no(A)&&(A=Ii(A)),typeof A!="string"||!E.includes(A.length))throw new Error("invalid private key");A=A.padStart(N*2,"0")}let B;try{B=typeof A=="bigint"?A:Vs(Xt("private key",A,N))}catch{throw new Error("invalid private key, expected hex or "+N+" bytes, got "+typeof A)}return P&&(B=_t(B,D)),Ar("private key",B,Je,D),B}function h(A){if(!(A instanceof f))throw new Error("ProjectivePoint expected")}const p=Fu((A,E)=>{const{px:N,py:P,pz:D}=A;if(n.eql(D,n.ONE))return{x:N,y:P};const B=A.is0();E==null&&(E=B?n.ONE:n.inv(D));const x=n.mul(N,E),H=n.mul(P,E),j=n.mul(D,E);if(B)return{x:n.ZERO,y:n.ZERO};if(!n.eql(j,n.ONE))throw new Error("invZ was invalid");return{x,y:H}}),g=Fu(A=>{if(A.is0()){if(e.allowInfinityPoint&&!n.is0(A.py))return;throw new Error("bad point: ZERO")}const{x:E,y:N}=A.toAffine();if(!n.isValid(E)||!n.isValid(N))throw new Error("bad point: x or y not FE");if(!a(E,N))throw new Error("bad point: equation left != right");if(!A.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});class f{constructor(E,N,P){if(E==null||!n.isValid(E))throw new Error("x required");if(N==null||!n.isValid(N)||n.is0(N))throw new Error("y required");if(P==null||!n.isValid(P))throw new Error("z required");this.px=E,this.py=N,this.pz=P,Object.freeze(this)}static fromAffine(E){const{x:N,y:P}=E||{};if(!E||!n.isValid(N)||!n.isValid(P))throw new Error("invalid affine point");if(E instanceof f)throw new Error("projective point not allowed");const D=B=>n.eql(B,n.ZERO);return D(N)&&D(P)?f.ZERO:new f(N,P,n.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(E){const N=Qp(n,E.map(P=>P.pz));return E.map((P,D)=>P.toAffine(N[D])).map(f.fromAffine)}static fromHex(E){const N=f.fromAffine(i(Xt("pointHex",E)));return N.assertValidity(),N}static fromPrivateKey(E){return f.BASE.multiply(d(E))}static msm(E,N){return pb(f,s,E,N)}_setWindowSize(E){_.setWindowSize(this,E)}assertValidity(){g(this)}hasEvenY(){const{y:E}=this.toAffine();if(n.isOdd)return!n.isOdd(E);throw new Error("Field doesn't support isOdd")}equals(E){h(E);const{px:N,py:P,pz:D}=this,{px:B,py:x,pz:H}=E,j=n.eql(n.mul(N,H),n.mul(B,D)),O=n.eql(n.mul(P,H),n.mul(x,D));return j&&O}negate(){return new f(this.px,n.neg(this.py),this.pz)}double(){const{a:E,b:N}=e,P=n.mul(N,Qa),{px:D,py:B,pz:x}=this;let H=n.ZERO,j=n.ZERO,O=n.ZERO,C=n.mul(D,D),S=n.mul(B,B),w=n.mul(x,x),v=n.mul(D,B);return v=n.add(v,v),O=n.mul(D,x),O=n.add(O,O),H=n.mul(E,O),j=n.mul(P,w),j=n.add(H,j),H=n.sub(S,j),j=n.add(S,j),j=n.mul(H,j),H=n.mul(v,H),O=n.mul(P,O),w=n.mul(E,w),v=n.sub(C,w),v=n.mul(E,v),v=n.add(v,O),O=n.add(C,C),C=n.add(O,C),C=n.add(C,w),C=n.mul(C,v),j=n.add(j,C),w=n.mul(B,x),w=n.add(w,w),C=n.mul(w,v),H=n.sub(H,C),O=n.mul(w,S),O=n.add(O,O),O=n.add(O,O),new f(H,j,O)}add(E){h(E);const{px:N,py:P,pz:D}=this,{px:B,py:x,pz:H}=E;let j=n.ZERO,O=n.ZERO,C=n.ZERO;const S=e.a,w=n.mul(e.b,Qa);let v=n.mul(N,B),T=n.mul(P,x),$=n.mul(D,H),I=n.add(N,P),R=n.add(B,x);I=n.mul(I,R),R=n.add(v,T),I=n.sub(I,R),R=n.add(N,D);let F=n.add(B,H);return R=n.mul(R,F),F=n.add(v,$),R=n.sub(R,F),F=n.add(P,D),j=n.add(x,H),F=n.mul(F,j),j=n.add(T,$),F=n.sub(F,j),C=n.mul(S,R),j=n.mul(w,$),C=n.add(j,C),j=n.sub(T,C),C=n.add(T,C),O=n.mul(j,C),T=n.add(v,v),T=n.add(T,v),$=n.mul(S,$),R=n.mul(w,R),T=n.add(T,$),$=n.sub(v,$),$=n.mul(S,$),R=n.add(R,$),v=n.mul(T,R),O=n.add(O,v),v=n.mul(F,R),j=n.mul(I,j),j=n.sub(j,v),v=n.mul(I,T),C=n.mul(F,C),C=n.add(C,v),new f(j,O,C)}subtract(E){return this.add(E.negate())}is0(){return this.equals(f.ZERO)}wNAF(E){return _.wNAFCached(this,E,f.normalizeZ)}multiplyUnsafe(E){const{endo:N,n:P}=e;Ar("scalar",E,Wn,P);const D=f.ZERO;if(E===Wn)return D;if(this.is0()||E===Je)return this;if(!N||_.hasPrecomputes(this))return _.wNAFCachedUnsafe(this,E,f.normalizeZ);let{k1neg:B,k1:x,k2neg:H,k2:j}=N.splitScalar(E),O=D,C=D,S=this;for(;x>Wn||j>Wn;)x&Je&&(O=O.add(S)),j&Je&&(C=C.add(S)),S=S.double(),x>>=Je,j>>=Je;return B&&(O=O.negate()),H&&(C=C.negate()),C=new f(n.mul(C.px,N.beta),C.py,C.pz),O.add(C)}multiply(E){const{endo:N,n:P}=e;Ar("scalar",E,Je,P);let D,B;if(N){const{k1neg:x,k1:H,k2neg:j,k2:O}=N.splitScalar(E);let{p:C,f:S}=this.wNAF(H),{p:w,f:v}=this.wNAF(O);C=_.constTimeNegate(x,C),w=_.constTimeNegate(j,w),w=new f(n.mul(w.px,N.beta),w.py,w.pz),D=C.add(w),B=S.add(v)}else{const{p:x,f:H}=this.wNAF(E);D=x,B=H}return f.normalizeZ([D,B])[0]}multiplyAndAddUnsafe(E,N,P){const D=f.BASE,B=(H,j)=>j===Wn||j===Je||!H.equals(D)?H.multiplyUnsafe(j):H.multiply(j),x=B(this,N).add(B(E,P));return x.is0()?void 0:x}toAffine(E){return p(this,E)}isTorsionFree(){const{h:E,isTorsionFree:N}=e;if(E===Je)return!0;if(N)return N(f,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){const{h:E,clearCofactor:N}=e;return E===Je?this:N?N(f,this):this.multiplyUnsafe(e.h)}toRawBytes(E=!0){return _i("isCompressed",E),this.assertValidity(),r(f,this,E)}toHex(E=!0){return _i("isCompressed",E),Ii(this.toRawBytes(E))}}f.BASE=new f(e.Gx,e.Gy,n.ONE),f.ZERO=new f(n.ZERO,n.ONE,n.ZERO);const{endo:y,nBitLength:b}=e,_=hb(f,y?Math.ceil(b/2):b);return{CURVE:e,ProjectivePoint:f,normPrivateKeyToScalar:d,weierstrassEquation:o,isWithinCurveOrder:u}}function wb(t){const e=of(t);return va(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function bb(t){const e=wb(t),{Fp:n,n:s,nByteLength:r,nBitLength:i}=e,o=n.BYTES+1,a=2*n.BYTES+1;function c(w){return _t(w,s)}function l(w){return Kc(w,s)}const{ProjectivePoint:u,normPrivateKeyToScalar:d,weierstrassEquation:h,isWithinCurveOrder:p}=yb({...e,toBytes(w,v,T){const $=v.toAffine(),I=n.toBytes($.x),R=ea;return _i("isCompressed",T),T?R(Uint8Array.from([v.hasEvenY()?2:3]),I):R(Uint8Array.from([4]),I,n.toBytes($.y))},fromBytes(w){const v=w.length,T=w[0],$=w.subarray(1);if(v===o&&(T===2||T===3)){const I=Vs($);if(!ql(I,Je,n.ORDER))throw new Error("Point is not on curve");const R=h(I);let F;try{F=n.sqrt(R)}catch(ne){const X=ne instanceof Error?": "+ne.message:"";throw new Error("Point is not on curve"+X)}const W=(F&Je)===Je;return(T&1)===1!==W&&(F=n.neg(F)),{x:I,y:F}}else if(v===a&&T===4){const I=n.fromBytes($.subarray(0,n.BYTES)),R=n.fromBytes($.subarray(n.BYTES,2*n.BYTES));return{x:I,y:R}}else{const I=o,R=a;throw new Error("invalid Point, expected length of "+I+", or uncompressed "+R+", got "+v)}}});function g(w){const v=s>>Je;return w>v}function f(w){return g(w)?c(-w):w}const y=(w,v,T)=>Vs(w.slice(v,T));class b{constructor(v,T,$){Ar("r",v,Je,s),Ar("s",T,Je,s),this.r=v,this.s=T,$!=null&&(this.recovery=$),Object.freeze(this)}static fromCompact(v){const T=r;return v=Xt("compactSignature",v,T*2),new b(y(v,0,T),y(v,T,2*T))}static fromDER(v){const{r:T,s:$}=Fn.toSig(Xt("DER",v));return new b(T,$)}assertValidity(){}addRecoveryBit(v){return new b(this.r,this.s,v)}recoverPublicKey(v){const{r:T,s:$,recovery:I}=this,R=D(Xt("msgHash",v));if(I==null||![0,1,2,3].includes(I))throw new Error("recovery id invalid");const F=I===2||I===3?T+e.n:T;if(F>=n.ORDER)throw new Error("recovery id 2 or 3 invalid");const W=I&1?"03":"02",ae=u.fromHex(W+Za(F,n.BYTES)),ne=l(F),X=c(-R*ne),le=c($*ne),ie=u.BASE.multiplyAndAddUnsafe(ae,X,le);if(!ie)throw new Error("point at infinify");return ie.assertValidity(),ie}hasHighS(){return g(this.s)}normalizeS(){return this.hasHighS()?new b(this.r,c(-this.s),this.recovery):this}toDERRawBytes(){return Qo(this.toDERHex())}toDERHex(){return Fn.hexFromSig(this)}toCompactRawBytes(){return Qo(this.toCompactHex())}toCompactHex(){const v=r;return Za(this.r,v)+Za(this.s,v)}}const _={isValidPrivateKey(w){try{return d(w),!0}catch{return!1}},normPrivateKeyToScalar:d,randomPrivateKey:()=>{const w=nf(e.n);return lb(e.randomBytes(w),e.n)},precompute(w=8,v=u.BASE){return v._setWindowSize(w),v.multiply(BigInt(3)),v}};function A(w,v=!0){return u.fromPrivateKey(w).toRawBytes(v)}function E(w){if(typeof w=="bigint")return!1;if(w instanceof u)return!0;const T=Xt("key",w).length,$=n.BYTES,I=$+1,R=2*$+1;if(!(e.allowedPrivateKeyLengths||r===I))return T===I||T===R}function N(w,v,T=!0){if(E(w)===!0)throw new Error("first arg must be private key");if(E(v)===!1)throw new Error("second arg must be public key");return u.fromHex(v).multiply(d(w)).toRawBytes(T)}const P=e.bits2int||function(w){if(w.length>8192)throw new Error("input is too large");const v=Vs(w),T=w.length*8-i;return T>0?v>>BigInt(T):v},D=e.bits2int_modN||function(w){return c(P(w))},B=Ea(i);function x(w){return Ar("num < 2^"+i,w,Wn,B),so(w,r)}function H(w,v,T=j){if(["recovered","canonical"].some(ce=>ce in T))throw new Error("sign() legacy options not supported");const{hash:$,randomBytes:I}=e;let{lowS:R,prehash:F,extraEntropy:W}=T;R==null&&(R=!0),w=Xt("msgHash",w),Ju(T),F&&(w=Xt("prehashed msgHash",$(w)));const ae=D(w),ne=d(v),X=[x(ne),x(ae)];if(W!=null&&W!==!1){const ce=W===!0?I(n.BYTES):W;X.push(Xt("extraEntropy",ce))}const le=ea(...X),ie=ae;function Se(ce){const Oe=P(ce);if(!p(Oe))return;const dt=l(Oe),yt=u.BASE.multiply(Oe).toAffine(),ht=c(yt.x);if(ht===Wn)return;const qt=c(dt*c(ie+ht*ne));if(qt===Wn)return;let Is=(yt.x===ht?0:2)|Number(yt.y&Je),cr=qt;return R&&g(qt)&&(cr=f(qt),Is^=1),new b(ht,cr,Is)}return{seed:le,k2sig:Se}}const j={lowS:e.lowS,prehash:!1},O={lowS:e.lowS,prehash:!1};function C(w,v,T=j){const{seed:$,k2sig:I}=H(w,v,T),R=e;return y0(R.hash.outputLen,R.nByteLength,R.hmac)($,I)}u.BASE._setWindowSize(8);function S(w,v,T,$=O){var Is;const I=w;v=Xt("msgHash",v),T=Xt("publicKey",T);const{lowS:R,prehash:F,format:W}=$;if(Ju($),"strict"in $)throw new Error("options.strict was renamed to lowS");if(W!==void 0&&W!=="compact"&&W!=="der")throw new Error("format must be compact or der");const ae=typeof I=="string"||no(I),ne=!ae&&!W&&typeof I=="object"&&I!==null&&typeof I.r=="bigint"&&typeof I.s=="bigint";if(!ae&&!ne)throw new Error("invalid signature, expected Uint8Array, hex string or Signature instance");let X,le;try{if(ne&&(X=new b(I.r,I.s)),ae){try{W!=="compact"&&(X=b.fromDER(I))}catch(cr){if(!(cr instanceof Fn.Err))throw cr}!X&&W!=="der"&&(X=b.fromCompact(I))}le=u.fromHex(T)}catch{return!1}if(!X||R&&X.hasHighS())return!1;F&&(v=e.hash(v));const{r:ie,s:Se}=X,ce=D(v),Oe=l(Se),dt=c(ce*Oe),yt=c(ie*Oe),ht=(Is=u.BASE.multiplyAndAddUnsafe(le,dt,yt))==null?void 0:Is.toAffine();return ht?c(ht.x)===ie:!1}return{CURVE:e,getPublicKey:A,getSharedSecret:N,sign:C,verify:S,ProjectivePoint:u,Signature:b,utils:_}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function Eb(t){return{hash:t,hmac:(e,...n)=>Gp(t,e,Hw(...n)),randomBytes:Kw}}function vb(t,e){const n=s=>bb({...t,...Eb(s)});return{...n(e),create:n}}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const af=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),Xu=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),Cb=BigInt(0),Ab=BigInt(1),zc=BigInt(2),Zu=(t,e)=>(t+e/zc)/e;function _b(t){const e=af,n=BigInt(3),s=BigInt(6),r=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=Ht(u,n,e)*u%e,h=Ht(d,n,e)*u%e,p=Ht(h,zc,e)*l%e,g=Ht(p,r,e)*p%e,f=Ht(g,i,e)*g%e,y=Ht(f,a,e)*f%e,b=Ht(y,c,e)*y%e,_=Ht(b,a,e)*f%e,A=Ht(_,n,e)*u%e,E=Ht(A,o,e)*g%e,N=Ht(E,s,e)*l%e,P=Ht(N,zc,e);if(!Gc.eql(Gc.sqr(P),t))throw new Error("Cannot find square root");return P}const Gc=Kl(af,void 0,void 0,{sqrt:_b}),Ib=vb({a:Cb,b:BigInt(7),Fp:Gc,n:Xu,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{const e=Xu,n=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),s=-Ab*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),r=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),i=n,o=BigInt("0x100000000000000000000000000000000"),a=Zu(i*t,e),c=Zu(-s*t,e);let l=_t(t-a*n-c*r,e),u=_t(-a*s-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}}}},f0);function Sb(t){if(t.length!==130&&t.length!==132)throw new Tb({signature:t});const e=BigInt(Ln(t,0,32)),n=BigInt(Ln(t,32,64)),s=(()=>{const r=+`0x${t.slice(130)}`;if(!Number.isNaN(r))try{return Nb(r)}catch{throw new Ob({value:r})}})();return typeof s>"u"?{r:e,s:n}:{r:e,s:n,yParity:s}}function Nb(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 Rb({value:t})}class Tb extends Fe{constructor({signature:e}){super(`Value \`${e}\` is an invalid signature size.`,{metaMessages:["Expected: 64 bytes or 65 bytes.",`Received ${vs(Hl(e))} bytes.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidSerializedSizeError"})}}class Ob extends Fe{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 Rb extends Fe{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 Pb(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function cf(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 na(t,e){if(typeof e!="string")throw new Error(`${t}: string expected`);return!0}function Vl(t){if(!Number.isSafeInteger(t))throw new Error(`invalid integer: ${t}`)}function Yc(t){if(!Array.isArray(t))throw new Error("array expected")}function sa(t,e){if(!cf(!0,e))throw new Error(`${t}: array of strings expected`)}function xb(t,e){if(!cf(!1,e))throw new Error(`${t}: array of numbers expected`)}function kb(...t){const e=i=>i,n=(i,o)=>a=>i(o(a)),s=t.map(i=>i.encode).reduceRight(n,e),r=t.map(i=>i.decode).reduce(n,e);return{encode:s,decode:r}}function $b(t){const e=typeof t=="string"?t.split(""):t,n=e.length;sa("alphabet",e);const s=new Map(e.map((r,i)=>[r,i]));return{encode:r=>(Yc(r),r.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:r=>(Yc(r),r.map(i=>{na("alphabet.decode",i);const o=s.get(i);if(o===void 0)throw new Error(`Unknown letter: "${i}". Allowed: ${t}`);return o}))}}function Ub(t=""){return na("join",t),{encode:e=>(sa("join.decode",e),e.join(t)),decode:e=>(na("join.decode",e),e.split(t))}}function Db(t,e="="){return Vl(t),na("padding",e),{encode(n){for(sa("padding.encode",n);n.length*t%8;)n.push(e);return n},decode(n){sa("padding.decode",n);let s=n.length;if(s*t%8)throw new Error("padding: invalid, string should have whole number of bytes");for(;s>0&&n[s-1]===e;s--)if((s-1)*t%8===0)throw new Error("padding: invalid, string has too much padding");return n.slice(0,s)}}}const lf=(t,e)=>e===0?t:lf(e,t%e),ra=(t,e)=>t+(e-lf(t,e)),ec=(()=>{let t=[];for(let e=0;e<40;e++)t.push(2**e);return t})();function Qu(t,e,n,s){if(Yc(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(ra(e,n)>32)throw new Error(`convertRadix2: carry overflow from=${e} to=${n} carryBits=${ra(e,n)}`);let r=0,i=0;const o=ec[e],a=ec[n]-1,c=[];for(const l of t){if(Vl(l),l>=o)throw new Error(`convertRadix2: invalid data word=${l} from=${e}`);if(r=r<<e|l,i+e>32)throw new Error(`convertRadix2: carry overflow pos=${i} from=${e}`);for(i+=e;i>=n;i-=n)c.push((r>>i-n&a)>>>0);const u=ec[i];if(u===void 0)throw new Error("invalid carry");r&=u-1}if(r=r<<n-i&a,!s&&i>=e)throw new Error("Excess padding");if(!s&&r>0)throw new Error(`Non-zero padding: ${r}`);return s&&i>0&&c.push(r>>>0),c}function Mb(t,e=!1){if(Vl(t),t<=0||t>32)throw new Error("radix2: bits should be in (0..32]");if(ra(8,t)>32||ra(t,8)>32)throw new Error("radix2: carry overflow");return{encode:n=>{if(!Pb(n))throw new Error("radix2.encode input should be Uint8Array");return Qu(Array.from(n),8,t,!e)},decode:n=>(xb("radix2.decode",n),Uint8Array.from(Qu(n,t,8,e)))}}const Lb=kb(Mb(5),$b("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"),Db(5),Ub(""));function Bb(t){return Q0(Fb(t))}function Fb(t){const{payload:e,signature:n}=t,{r:s,s:r,yParity:i}=n,a=new Ib.Signature(BigInt(s),BigInt(r)).addRecoveryBit(i).recoverPublicKey(Hl(e).substring(2));return H0(a)}const jb=":";function zn(t){const[e,n]=t.split(jb);return{namespace:e,reference:n}}function uf(t,e){return t.includes(":")?[t]:e.chains||[]}var qb=Object.defineProperty,Wb=Object.defineProperties,Hb=Object.getOwnPropertyDescriptors,ed=Object.getOwnPropertySymbols,Kb=Object.prototype.hasOwnProperty,Vb=Object.prototype.propertyIsEnumerable,Jc=(t,e,n)=>e in t?qb(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,td=(t,e)=>{for(var n in e||(e={}))Kb.call(e,n)&&Jc(t,n,e[n]);if(ed)for(var n of ed(e))Vb.call(e,n)&&Jc(t,n,e[n]);return t},zb=(t,e)=>Wb(t,Hb(e)),nd=(t,e,n)=>Jc(t,typeof e!="symbol"?e+"":e,n);const Gb="ReactNative",Lt={reactNative:"react-native",node:"node",browser:"browser",unknown:"unknown"},Yb="js";function ia(){return typeof Vn<"u"&&typeof Vn.versions<"u"&&typeof Vn.versions.node<"u"}function As(){return!Or()&&!!cp()&&navigator.product===Gb}function Jb(){return As()&&typeof ue<"u"&&typeof(ue==null?void 0:ue.Platform)<"u"&&(ue==null?void 0:ue.Platform.OS)==="android"}function Xb(){return As()&&typeof ue<"u"&&typeof(ue==null?void 0:ue.Platform)<"u"&&(ue==null?void 0:ue.Platform.OS)==="ios"}function Wr(){return!ia()&&!!cp()&&!!Or()}function ro(){return As()?Lt.reactNative:ia()?Lt.node:Wr()?Lt.browser:Lt.unknown}function sd(){var t;try{return As()&&typeof ue<"u"&&typeof(ue==null?void 0:ue.Application)<"u"?(t=ue.Application)==null?void 0:t.applicationId:void 0}catch{return}}function Zb(t,e){const n=new URLSearchParams(t);return Object.entries(e).sort(([s],[r])=>s.localeCompare(r)).forEach(([s,r])=>{r!=null&&n.set(s,String(r))}),n.toString()}function Qb(t){var e,n;const s=df();try{return t!=null&&t.url&&s.url&&new URL(t.url).host!==new URL(s.url).host&&(console.warn(`The configured WalletConnect 'metadata.url':${t.url} differs from the actual page url:${s.url}. This is probably unintended and can lead to issues.`),t.url=s.url),(e=t==null?void 0:t.icons)!=null&&e.length&&t.icons.length>0&&(t.icons=t.icons.filter(r=>r!=="")),zb(td(td({},s),t),{url:(t==null?void 0:t.url)||s.url,name:(t==null?void 0:t.name)||s.name,description:(t==null?void 0:t.description)||s.description,icons:(n=t==null?void 0:t.icons)!=null&&n.length&&t.icons.length>0?t.icons:s.icons})}catch(r){return console.warn("Error populating app metadata",r),t||s}}function df(){return bm()||{name:"",description:"",url:"",icons:[""]}}function eE(){if(ro()===Lt.reactNative&&typeof ue<"u"&&typeof(ue==null?void 0:ue.Platform)<"u"){const{OS:n,Version:s}=ue.Platform;return[n,s].join("-")}const t=Am();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 tE(){var t;const e=ro();return e===Lt.browser?[e,((t=_m())==null?void 0:t.host)||"unknown"].join(":"):e}function hf(t,e,n){const s=eE(),r=tE();return[[t,e].join("-"),[Yb,n].join("-"),s,r].join("/")}function nE({protocol:t,version:e,relayUrl:n,sdkVersion:s,auth:r,projectId:i,useOnCloseEvent:o,bundleId:a,packageName:c}){const l=n.split("?"),u=hf(t,e,s),d={auth:r,ua:u,projectId:i,useOnCloseEvent:o||void 0,packageName:c||void 0,bundleId:a||void 0},h=Zb(l[1]||"",d);return l[0]+"?"+h}function Bs(t,e){return t.filter(n=>e.includes(n)).length===t.length}function Xc(t){return Object.fromEntries(t.entries())}function Zc(t){return new Map(Object.entries(t))}function ks(t=z.FIVE_MINUTES,e){const n=z.toMiliseconds(t||z.FIVE_MINUTES);let s,r,i,o;return{resolve:a=>{i&&s&&(clearTimeout(i),s(a),o=Promise.resolve(a))},reject:a=>{i&&r&&(clearTimeout(i),r(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),s=a,r=c})}}function _n(t,e,n){return new Promise(async(s,r)=>{const i=setTimeout(()=>r(new Error(n)),e);try{const o=await t;s(o)}catch(o){r(o)}clearTimeout(i)})}function pf(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 sE(t){return pf("topic",t)}function rE(t){return pf("id",t)}function ff(t){const[e,n]=t.split(":"),s={id:void 0,topic:void 0};if(e==="topic"&&typeof n=="string")s.topic=n;else if(e==="id"&&Number.isInteger(Number(n)))s.id=Number(n);else throw new Error(`Invalid target, expected id:number or topic:string, got ${e}:${n}`);return s}function qe(t,e){return z.fromMiliseconds((e||Date.now())+z.toMiliseconds(t))}function Cn(t){return Date.now()>=z.toMiliseconds(t)}function Ie(t,e){return`${t}${e?`:${e}`:""}`}function Nn(t=[],e=[]){return[...new Set([...t,...e])]}async function iE({id:t,topic:e,wcDeepLink:n}){var s;try{if(!n)return;const r=typeof n=="string"?JSON.parse(n):n,i=r==null?void 0:r.href;if(typeof i!="string")return;const o=oE(i,t,e),a=ro();if(a===Lt.browser){if(!((s=Or())!=null&&s.hasFocus())){console.warn("Document does not have focus, skipping deeplink.");return}aE(o)}else a===Lt.reactNative&&typeof(ue==null?void 0:ue.Linking)<"u"&&await ue.Linking.openURL(o)}catch(r){console.error(r)}}function oE(t,e,n){const s=`requestId=${e}&sessionTopic=${n}`;t.endsWith("/")&&(t=t.slice(0,-1));let r=`${t}`;if(t.startsWith("https://t.me")){const i=t.includes("?")?"&startapp=":"?startapp=";r=`${r}${i}${dE(s,!0)}`}else r=`${r}/wc?${s}`;return r}function aE(t){let e="_self";uE()?e="_top":(lE()||t.startsWith("https://")||t.startsWith("http://"))&&(e="_blank"),window.open(t,e,"noreferrer noopener")}async function cE(t,e){let n="";try{if(Wr()&&(n=localStorage.getItem(e),n))return n;n=await t.getItem(e)}catch(s){console.error(s)}return n}function rd(t,e){if(!t.includes(e))return null;const n=t.split(/([&,?,=])/),s=n.indexOf(e);return n[s+2]}function id(){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 zl(){return typeof Vn<"u"&&{}.IS_VITEST==="true"}function lE(){return typeof window<"u"&&(!!window.TelegramWebviewProxy||!!window.Telegram||!!window.TelegramWebviewProxyProto)}function uE(){try{return window.self!==window.top}catch{return!1}}function dE(t,e=!1){const n=Ee.from(t).toString("base64");return e?n.replace(/[=]/g,""):n}function gf(t){return Ee.from(t,"base64").toString("utf-8")}function hE(t){return new Promise(e=>setTimeout(e,t))}let pE=class{constructor({limit:e}){nd(this,"limit"),nd(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 Co=BigInt(2**32-1),od=BigInt(32);function mf(t,e=!1){return e?{h:Number(t&Co),l:Number(t>>od&Co)}:{h:Number(t>>od&Co)|0,l:Number(t&Co)|0}}function yf(t,e=!1){const n=t.length;let s=new Uint32Array(n),r=new Uint32Array(n);for(let i=0;i<n;i++){const{h:o,l:a}=mf(t[i],e);[s[i],r[i]]=[o,a]}return[s,r]}const ad=(t,e,n)=>t>>>n,cd=(t,e,n)=>t<<32-n|e>>>n,ls=(t,e,n)=>t>>>n|e<<32-n,us=(t,e,n)=>t<<32-n|e>>>n,oi=(t,e,n)=>t<<64-n|e>>>n-32,ai=(t,e,n)=>t>>>n-32|e<<64-n,fE=(t,e)=>e,gE=(t,e)=>t,mE=(t,e,n)=>t<<n|e>>>32-n,yE=(t,e,n)=>e<<n|t>>>32-n,wE=(t,e,n)=>e<<n-32|t>>>64-n,bE=(t,e,n)=>t<<n-32|e>>>64-n;function un(t,e,n,s){const r=(e>>>0)+(s>>>0);return{h:t+n+(r/2**32|0)|0,l:r|0}}const Gl=(t,e,n)=>(t>>>0)+(e>>>0)+(n>>>0),Yl=(t,e,n,s)=>e+n+s+(t/2**32|0)|0,EE=(t,e,n,s)=>(t>>>0)+(e>>>0)+(n>>>0)+(s>>>0),vE=(t,e,n,s,r)=>e+n+s+r+(t/2**32|0)|0,CE=(t,e,n,s,r)=>(t>>>0)+(e>>>0)+(n>>>0)+(s>>>0)+(r>>>0),AE=(t,e,n,s,r,i)=>e+n+s+r+i+(t/2**32|0)|0,dr=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function Ca(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function Jn(t){if(!Number.isSafeInteger(t)||t<0)throw new Error("positive integer expected, got "+t)}function fn(t,...e){if(!Ca(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 Aa(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.createHasher");Jn(t.outputLen),Jn(t.blockLen)}function Cs(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 Jl(t,e){fn(t);const n=e.outputLen;if(t.length<n)throw new Error("digestInto() expects output buffer of length at least "+n)}function Si(t){return new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4))}function sn(...t){for(let e=0;e<t.length;e++)t[e].fill(0)}function tc(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function mn(t,e){return t<<32-e|t>>>e}const wf=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function bf(t){return t<<24&4278190080|t<<8&16711680|t>>>8&65280|t>>>24&255}const Un=wf?t=>t:t=>bf(t);function _E(t){for(let e=0;e<t.length;e++)t[e]=bf(t[e]);return t}const ds=wf?t=>t:_E,Ef=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",IE=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function _r(t){if(fn(t),Ef)return t.toHex();let e="";for(let n=0;n<t.length;n++)e+=IE[t[n]];return e}const kn={_0:48,_9:57,A:65,F:70,a:97,f:102};function ld(t){if(t>=kn._0&&t<=kn._9)return t-kn._0;if(t>=kn.A&&t<=kn.F)return t-(kn.A-10);if(t>=kn.a&&t<=kn.f)return t-(kn.a-10)}function oa(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);if(Ef)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 s=new Uint8Array(n);for(let r=0,i=0;r<n;r++,i+=2){const o=ld(t.charCodeAt(i)),a=ld(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)}s[r]=o*16+a}return s}function vf(t){if(typeof t!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(t))}function pn(t){return typeof t=="string"&&(t=vf(t)),fn(t),t}function hs(...t){let e=0;for(let s=0;s<t.length;s++){const r=t[s];fn(r),e+=r.length}const n=new Uint8Array(e);for(let s=0,r=0;s<t.length;s++){const i=t[s];n.set(i,r),r+=i.length}return n}class _a{}function io(t){const e=s=>t().update(pn(s)).digest(),n=t();return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=()=>t(),e}function SE(t){const e=(s,r)=>t(r).update(pn(s)).digest(),n=t({});return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=s=>t(s),e}function or(t=32){if(dr&&typeof dr.getRandomValues=="function")return dr.getRandomValues(new Uint8Array(t));if(dr&&typeof dr.randomBytes=="function")return Uint8Array.from(dr.randomBytes(t));throw new Error("crypto.getRandomValues must be defined")}const NE=BigInt(0),Gr=BigInt(1),TE=BigInt(2),OE=BigInt(7),RE=BigInt(256),PE=BigInt(113),Cf=[],Af=[],_f=[];for(let t=0,e=Gr,n=1,s=0;t<24;t++){[n,s]=[s,(2*n+3*s)%5],Cf.push(2*(5*s+n)),Af.push((t+1)*(t+2)/2%64);let r=NE;for(let i=0;i<7;i++)e=(e<<Gr^(e>>OE)*PE)%RE,e&TE&&(r^=Gr<<(Gr<<BigInt(i))-Gr);_f.push(r)}const If=yf(_f,!0),xE=If[0],kE=If[1],ud=(t,e,n)=>n>32?wE(t,e,n):mE(t,e,n),dd=(t,e,n)=>n>32?bE(t,e,n):yE(t,e,n);function $E(t,e=24){const n=new Uint32Array(10);for(let s=24-e;s<24;s++){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=ud(l,u,1)^n[a],h=dd(l,u,1)^n[a+1];for(let p=0;p<50;p+=10)t[o+p]^=d,t[o+p+1]^=h}let r=t[2],i=t[3];for(let o=0;o<24;o++){const a=Af[o],c=ud(r,i,a),l=dd(r,i,a),u=Cf[o];r=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]^=xE[s],t[1]^=kE[s]}sn(n)}let UE=class Sf extends _a{constructor(e,n,s,r=!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=s,this.enableXOF=r,this.rounds=i,Jn(s),!(0<e&&e<200))throw new Error("only keccak-f1600 function is supported");this.state=new Uint8Array(200),this.state32=Si(this.state)}clone(){return this._cloneInto()}keccak(){ds(this.state32),$E(this.state32,this.rounds),ds(this.state32),this.posOut=0,this.pos=0}update(e){Cs(this),e=pn(e),fn(e);const{blockLen:n,state:s}=this,r=e.length;for(let i=0;i<r;){const o=Math.min(n-this.pos,r-i);for(let a=0;a<o;a++)s[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:s,blockLen:r}=this;e[s]^=n,n&128&&s===r-1&&this.keccak(),e[r-1]^=128,this.keccak()}writeInto(e){Cs(this,!1),fn(e),this.finish();const n=this.state,{blockLen:s}=this;for(let r=0,i=e.length;r<i;){this.posOut>=s&&this.keccak();const o=Math.min(s-this.posOut,i-r);e.set(n.subarray(this.posOut,this.posOut+o),r),this.posOut+=o,r+=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 Jn(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(Jl(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,sn(this.state)}_cloneInto(e){const{blockLen:n,suffix:s,outputLen:r,rounds:i,enableXOF:o}=this;return e||(e=new Sf(n,s,r,o,i)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=i,e.suffix=s,e.outputLen=r,e.enableXOF=o,e.destroyed=this.destroyed,e}};const DE=(t,e,n)=>io(()=>new UE(e,t,n)),ME=DE(1,136,256/8);function LE(t,e,n,s){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,n,s);const r=BigInt(32),i=BigInt(4294967295),o=Number(n>>r&i),a=Number(n&i),c=s?4:0,l=s?0:4;t.setUint32(e+c,o,s),t.setUint32(e+l,a,s)}function BE(t,e,n){return t&e^~t&n}function FE(t,e,n){return t&e^t&n^e&n}let Nf=class extends _a{constructor(e,n,s,r){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=n,this.padOffset=s,this.isLE=r,this.buffer=new Uint8Array(e),this.view=tc(this.buffer)}update(e){Cs(this),e=pn(e),fn(e);const{view:n,buffer:s,blockLen:r}=this,i=e.length;for(let o=0;o<i;){const a=Math.min(r-this.pos,i-o);if(a===r){const c=tc(e);for(;r<=i-o;o+=r)this.process(c,o);continue}s.set(e.subarray(o,o+a),this.pos),this.pos+=a,o+=a,this.pos===r&&(this.process(n,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Cs(this),Jl(e,this),this.finished=!0;const{buffer:n,view:s,blockLen:r,isLE:i}=this;let{pos:o}=this;n[o++]=128,sn(this.buffer.subarray(o)),this.padOffset>r-o&&(this.process(s,0),o=0);for(let d=o;d<r;d++)n[d]=0;LE(s,r-8,BigInt(this.length*8),i),this.process(s,0);const a=tc(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 s=e.slice(0,n);return this.destroy(),s}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());const{blockLen:n,buffer:s,length:r,finished:i,destroyed:o,pos:a}=this;return e.destroyed=o,e.finished=i,e.length=r,e.pos=a,r%n&&e.buffer.set(s),e}clone(){return this._cloneInto()}};const ss=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),it=Uint32Array.from([3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]),ot=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209]),jE=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]),rs=new Uint32Array(64);class qE extends Nf{constructor(e=32){super(64,e,8,!1),this.A=ss[0]|0,this.B=ss[1]|0,this.C=ss[2]|0,this.D=ss[3]|0,this.E=ss[4]|0,this.F=ss[5]|0,this.G=ss[6]|0,this.H=ss[7]|0}get(){const{A:e,B:n,C:s,D:r,E:i,F:o,G:a,H:c}=this;return[e,n,s,r,i,o,a,c]}set(e,n,s,r,i,o,a,c){this.A=e|0,this.B=n|0,this.C=s|0,this.D=r|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)rs[d]=e.getUint32(n,!1);for(let d=16;d<64;d++){const h=rs[d-15],p=rs[d-2],g=mn(h,7)^mn(h,18)^h>>>3,f=mn(p,17)^mn(p,19)^p>>>10;rs[d]=f+rs[d-7]+g+rs[d-16]|0}let{A:s,B:r,C:i,D:o,E:a,F:c,G:l,H:u}=this;for(let d=0;d<64;d++){const h=mn(a,6)^mn(a,11)^mn(a,25),p=u+h+BE(a,c,l)+jE[d]+rs[d]|0,g=(mn(s,2)^mn(s,13)^mn(s,22))+FE(s,r,i)|0;u=l,l=c,c=a,a=o+p|0,o=i,i=r,r=s,s=p+g|0}s=s+this.A|0,r=r+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(s,r,i,o,a,c,l,u)}roundClean(){sn(rs)}destroy(){this.set(0,0,0,0,0,0,0,0),sn(this.buffer)}}const Tf=yf(["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))),WE=Tf[0],HE=Tf[1],is=new Uint32Array(80),os=new Uint32Array(80);let Xl=class extends Nf{constructor(e=64){super(128,e,16,!1),this.Ah=ot[0]|0,this.Al=ot[1]|0,this.Bh=ot[2]|0,this.Bl=ot[3]|0,this.Ch=ot[4]|0,this.Cl=ot[5]|0,this.Dh=ot[6]|0,this.Dl=ot[7]|0,this.Eh=ot[8]|0,this.El=ot[9]|0,this.Fh=ot[10]|0,this.Fl=ot[11]|0,this.Gh=ot[12]|0,this.Gl=ot[13]|0,this.Hh=ot[14]|0,this.Hl=ot[15]|0}get(){const{Ah:e,Al:n,Bh:s,Bl:r,Ch:i,Cl:o,Dh:a,Dl:c,Eh:l,El:u,Fh:d,Fl:h,Gh:p,Gl:g,Hh:f,Hl:y}=this;return[e,n,s,r,i,o,a,c,l,u,d,h,p,g,f,y]}set(e,n,s,r,i,o,a,c,l,u,d,h,p,g,f,y){this.Ah=e|0,this.Al=n|0,this.Bh=s|0,this.Bl=r|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=p|0,this.Gl=g|0,this.Hh=f|0,this.Hl=y|0}process(e,n){for(let A=0;A<16;A++,n+=4)is[A]=e.getUint32(n),os[A]=e.getUint32(n+=4);for(let A=16;A<80;A++){const E=is[A-15]|0,N=os[A-15]|0,P=ls(E,N,1)^ls(E,N,8)^ad(E,N,7),D=us(E,N,1)^us(E,N,8)^cd(E,N,7),B=is[A-2]|0,x=os[A-2]|0,H=ls(B,x,19)^oi(B,x,61)^ad(B,x,6),j=us(B,x,19)^ai(B,x,61)^cd(B,x,6),O=EE(D,j,os[A-7],os[A-16]),C=vE(O,P,H,is[A-7],is[A-16]);is[A]=C|0,os[A]=O|0}let{Ah:s,Al:r,Bh:i,Bl:o,Ch:a,Cl:c,Dh:l,Dl:u,Eh:d,El:h,Fh:p,Fl:g,Gh:f,Gl:y,Hh:b,Hl:_}=this;for(let A=0;A<80;A++){const E=ls(d,h,14)^ls(d,h,18)^oi(d,h,41),N=us(d,h,14)^us(d,h,18)^ai(d,h,41),P=d&p^~d&f,D=h&g^~h&y,B=CE(_,N,D,HE[A],os[A]),x=AE(B,b,E,P,WE[A],is[A]),H=B|0,j=ls(s,r,28)^oi(s,r,34)^oi(s,r,39),O=us(s,r,28)^ai(s,r,34)^ai(s,r,39),C=s&i^s&a^i&a,S=r&o^r&c^o&c;b=f|0,_=y|0,f=p|0,y=g|0,p=d|0,g=h|0,{h:d,l:h}=un(l|0,u|0,x|0,H|0),l=a|0,u=c|0,a=i|0,c=o|0,i=s|0,o=r|0;const w=Gl(H,O,S);s=Yl(w,x,j,C),r=w|0}({h:s,l:r}=un(this.Ah|0,this.Al|0,s|0,r|0)),{h:i,l:o}=un(this.Bh|0,this.Bl|0,i|0,o|0),{h:a,l:c}=un(this.Ch|0,this.Cl|0,a|0,c|0),{h:l,l:u}=un(this.Dh|0,this.Dl|0,l|0,u|0),{h:d,l:h}=un(this.Eh|0,this.El|0,d|0,h|0),{h:p,l:g}=un(this.Fh|0,this.Fl|0,p|0,g|0),{h:f,l:y}=un(this.Gh|0,this.Gl|0,f|0,y|0),{h:b,l:_}=un(this.Hh|0,this.Hl|0,b|0,_|0),this.set(s,r,i,o,a,c,l,u,d,h,p,g,f,y,b,_)}roundClean(){sn(is,os)}destroy(){sn(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};class KE extends Xl{constructor(){super(48),this.Ah=it[0]|0,this.Al=it[1]|0,this.Bh=it[2]|0,this.Bl=it[3]|0,this.Ch=it[4]|0,this.Cl=it[5]|0,this.Dh=it[6]|0,this.Dl=it[7]|0,this.Eh=it[8]|0,this.El=it[9]|0,this.Fh=it[10]|0,this.Fl=it[11]|0,this.Gh=it[12]|0,this.Gl=it[13]|0,this.Hh=it[14]|0,this.Hl=it[15]|0}}const at=Uint32Array.from([573645204,4230739756,2673172387,3360449730,596883563,1867755857,2520282905,1497426621,2519219938,2827943907,3193839141,1401305490,721525244,746961066,246885852,2177182882]);class VE extends Xl{constructor(){super(32),this.Ah=at[0]|0,this.Al=at[1]|0,this.Bh=at[2]|0,this.Bl=at[3]|0,this.Ch=at[4]|0,this.Cl=at[5]|0,this.Dh=at[6]|0,this.Dl=at[7]|0,this.Eh=at[8]|0,this.El=at[9]|0,this.Fh=at[10]|0,this.Fl=at[11]|0,this.Gh=at[12]|0,this.Gl=at[13]|0,this.Hh=at[14]|0,this.Hl=at[15]|0}}const Ia=io(()=>new qE),zE=io(()=>new Xl),GE=io(()=>new KE),YE=io(()=>new VE),JE=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]),Ke=Uint32Array.from([4089235720,1779033703,2227873595,3144134277,4271175723,1013904242,1595750129,2773480762,2917565137,1359893119,725511199,2600822924,4215389547,528734635,327033209,1541459225]),Y=new Uint32Array(32);function as(t,e,n,s,r,i){const o=r[i],a=r[i+1];let c=Y[2*t],l=Y[2*t+1],u=Y[2*e],d=Y[2*e+1],h=Y[2*n],p=Y[2*n+1],g=Y[2*s],f=Y[2*s+1],y=Gl(c,u,o);l=Yl(y,l,d,a),c=y|0,{Dh:f,Dl:g}={Dh:f^l,Dl:g^c},{Dh:f,Dl:g}={Dh:fE(f,g),Dl:gE(f)},{h:p,l:h}=un(p,h,f,g),{Bh:d,Bl:u}={Bh:d^p,Bl:u^h},{Bh:d,Bl:u}={Bh:ls(d,u,24),Bl:us(d,u,24)},Y[2*t]=c,Y[2*t+1]=l,Y[2*e]=u,Y[2*e+1]=d,Y[2*n]=h,Y[2*n+1]=p,Y[2*s]=g,Y[2*s+1]=f}function cs(t,e,n,s,r,i){const o=r[i],a=r[i+1];let c=Y[2*t],l=Y[2*t+1],u=Y[2*e],d=Y[2*e+1],h=Y[2*n],p=Y[2*n+1],g=Y[2*s],f=Y[2*s+1],y=Gl(c,u,o);l=Yl(y,l,d,a),c=y|0,{Dh:f,Dl:g}={Dh:f^l,Dl:g^c},{Dh:f,Dl:g}={Dh:ls(f,g,16),Dl:us(f,g,16)},{h:p,l:h}=un(p,h,f,g),{Bh:d,Bl:u}={Bh:d^p,Bl:u^h},{Bh:d,Bl:u}={Bh:oi(d,u,63),Bl:ai(d,u,63)},Y[2*t]=c,Y[2*t+1]=l,Y[2*e]=u,Y[2*e+1]=d,Y[2*n]=h,Y[2*n+1]=p,Y[2*s]=g,Y[2*s+1]=f}function XE(t,e={},n,s,r){if(Jn(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!==s)throw new Error("salt must be undefined or "+s);if(a!==void 0&&a.length!==r)throw new Error("personalization must be undefined or "+r)}class ZE extends _a{constructor(e,n){super(),this.finished=!1,this.destroyed=!1,this.length=0,this.pos=0,Jn(e),Jn(n),this.blockLen=e,this.outputLen=n,this.buffer=new Uint8Array(e),this.buffer32=Si(this.buffer)}update(e){Cs(this),e=pn(e),fn(e);const{blockLen:n,buffer:s,buffer32:r}=this,i=e.length,o=e.byteOffset,a=e.buffer;for(let c=0;c<i;){this.pos===n&&(ds(r),this.compress(r,0,!1),ds(r),this.pos=0);const l=Math.min(n-this.pos,i-c),u=o+c;if(l===n&&!(u%4)&&c+l<i){const d=new Uint32Array(a,u,Math.floor((i-c)/4));ds(d);for(let h=0;c+n<i;h+=r.length,c+=n)this.length+=n,this.compress(d,h,!1);ds(d);continue}s.set(e.subarray(c,c+l),this.pos),this.pos+=l,this.length+=l,c+=l}return this}digestInto(e){Cs(this),Jl(e,this);const{pos:n,buffer32:s}=this;this.finished=!0,sn(this.buffer.subarray(n)),ds(s),this.compress(s,0,!0),ds(s);const r=Si(e);this.get().forEach((i,o)=>r[o]=Un(i))}digest(){const{buffer:e,outputLen:n}=this;this.digestInto(e);const s=e.slice(0,n);return this.destroy(),s}_cloneInto(e){const{buffer:n,length:s,finished:r,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=r,e.length=s,e.pos=a,e.outputLen=o,e}clone(){return this._cloneInto()}}class QE extends ZE{constructor(e={}){const n=e.dkLen===void 0?64:e.dkLen;super(128,n),this.v0l=Ke[0]|0,this.v0h=Ke[1]|0,this.v1l=Ke[2]|0,this.v1h=Ke[3]|0,this.v2l=Ke[4]|0,this.v2h=Ke[5]|0,this.v3l=Ke[6]|0,this.v3h=Ke[7]|0,this.v4l=Ke[8]|0,this.v4h=Ke[9]|0,this.v5l=Ke[10]|0,this.v5h=Ke[11]|0,this.v6l=Ke[12]|0,this.v6h=Ke[13]|0,this.v7l=Ke[14]|0,this.v7h=Ke[15]|0,XE(n,e,64,16,16);let{key:s,personalization:r,salt:i}=e,o=0;if(s!==void 0&&(s=pn(s),o=s.length),this.v0l^=this.outputLen|o<<8|65536|1<<24,i!==void 0){i=pn(i);const a=Si(i);this.v4l^=Un(a[0]),this.v4h^=Un(a[1]),this.v5l^=Un(a[2]),this.v5h^=Un(a[3])}if(r!==void 0){r=pn(r);const a=Si(r);this.v6l^=Un(a[0]),this.v6h^=Un(a[1]),this.v7l^=Un(a[2]),this.v7h^=Un(a[3])}if(s!==void 0){const a=new Uint8Array(this.blockLen);a.set(s),this.update(a)}}get(){let{v0l:e,v0h:n,v1l:s,v1h:r,v2l:i,v2h:o,v3l:a,v3h:c,v4l:l,v4h:u,v5l:d,v5h:h,v6l:p,v6h:g,v7l:f,v7h:y}=this;return[e,n,s,r,i,o,a,c,l,u,d,h,p,g,f,y]}set(e,n,s,r,i,o,a,c,l,u,d,h,p,g,f,y){this.v0l=e|0,this.v0h=n|0,this.v1l=s|0,this.v1h=r|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=p|0,this.v6h=g|0,this.v7l=f|0,this.v7h=y|0}compress(e,n,s){this.get().forEach((c,l)=>Y[l]=c),Y.set(Ke,16);let{h:r,l:i}=mf(BigInt(this.length));Y[24]=Ke[8]^i,Y[25]=Ke[9]^r,s&&(Y[28]=~Y[28],Y[29]=~Y[29]);let o=0;const a=JE;for(let c=0;c<12;c++)as(0,4,8,12,e,n+2*a[o++]),cs(0,4,8,12,e,n+2*a[o++]),as(1,5,9,13,e,n+2*a[o++]),cs(1,5,9,13,e,n+2*a[o++]),as(2,6,10,14,e,n+2*a[o++]),cs(2,6,10,14,e,n+2*a[o++]),as(3,7,11,15,e,n+2*a[o++]),cs(3,7,11,15,e,n+2*a[o++]),as(0,5,10,15,e,n+2*a[o++]),cs(0,5,10,15,e,n+2*a[o++]),as(1,6,11,12,e,n+2*a[o++]),cs(1,6,11,12,e,n+2*a[o++]),as(2,7,8,13,e,n+2*a[o++]),cs(2,7,8,13,e,n+2*a[o++]),as(3,4,9,14,e,n+2*a[o++]),cs(3,4,9,14,e,n+2*a[o++]);this.v0l^=Y[0]^Y[16],this.v0h^=Y[1]^Y[17],this.v1l^=Y[2]^Y[18],this.v1h^=Y[3]^Y[19],this.v2l^=Y[4]^Y[20],this.v2h^=Y[5]^Y[21],this.v3l^=Y[6]^Y[22],this.v3h^=Y[7]^Y[23],this.v4l^=Y[8]^Y[24],this.v4h^=Y[9]^Y[25],this.v5l^=Y[10]^Y[26],this.v5h^=Y[11]^Y[27],this.v6l^=Y[12]^Y[28],this.v6h^=Y[13]^Y[29],this.v7l^=Y[14]^Y[30],this.v7h^=Y[15]^Y[31],sn(Y)}destroy(){this.destroyed=!0,sn(this.buffer32),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}}const e1=SE(t=>new QE(t)),t1="https://rpc.walletconnect.org/v1";function Of(t){const e=`Ethereum Signed Message:
|
|
7
7
|
${t.length}`,n=new TextEncoder().encode(e+t);return"0x"+Ee.from(ME(n)).toString("hex")}async function n1(t,e,n,s,r,i){switch(n.t){case"eip191":return await s1(t,e,n.s);case"eip1271":return await r1(t,e,n.s,s,r,i);default:throw new Error(`verifySignature failed: Attempted to verify CacaoSignature with unknown type: ${n.t}`)}}function s1(t,e,n){const s=Sb(n);return Bb({payload:Of(e),signature:s}).toLowerCase()===t.toLowerCase()}async function r1(t,e,n,s,r,i){const o=zn(s);if(!o.namespace||!o.reference)throw new Error(`isValidEip1271Signature failed: chainId must be in CAIP-2 format, received: ${s}`);try{const a="0x1626ba7e",c="0000000000000000000000000000000000000000000000000000000000000040",l=n.substring(2),u=(l.length/2).toString(16).padStart(64,"0"),d=(e.startsWith("0x")?e:Of(e)).substring(2),h=a+d+c+u+l,p=await fetch(`${i||t1}/?chainId=${s}&projectId=${r}`,{headers:{"Content-Type":"application/json"},method:"POST",body:JSON.stringify({id:i1(),jsonrpc:"2.0",method:"eth_call",params:[{to:t,data:h},"latest"]})}),{result:g}=await p.json();return g?g.slice(0,a.length).toLowerCase()===a.toLowerCase():!1}catch(a){return console.error("isValidEip1271Signature: ",a),!1}}function i1(){return Date.now()+Math.floor(Math.random()*1e3)}function o1(t){const e=atob(t),n=new Uint8Array(e.length);for(let o=0;o<e.length;o++)n[o]=e.charCodeAt(o);const s=n[0];if(s===0)throw new Error("No signatures found");const r=1+s*64;if(n.length<r)throw new Error("Transaction data too short for claimed signature count");if(n.length<100)throw new Error("Transaction too short");const i=Ee.from(t,"base64").slice(1,65);return jr.encode(i)}function a1(t){const e=new Uint8Array(Ee.from(t,"base64")),n=Array.from("TransactionData::").map(i=>i.charCodeAt(0)),s=new Uint8Array(n.length+e.length);s.set(n),s.set(e,n.length);const r=e1(s,{dkLen:32});return jr.encode(r)}function hd(t){const e=new Uint8Array(Ia(c1(t)));return jr.encode(e)}function c1(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 pd(t){const e=Ee.from(t,"base64"),n=Em(e).txn;if(!n)throw new Error("Invalid signed transaction: missing 'txn' field");const s=vm(n),r=Ee.from("TX"),i=Ee.concat([r,Ee.from(s)]),o=YE(i);return Lb.encode(o).replace(/=+$/,"")}function nc(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)),Ee.from(e)}function l1(t){const e=Ee.from(t.signed.bodyBytes,"base64"),n=Ee.from(t.signed.authInfoBytes,"base64"),s=Ee.from(t.signature.signature,"base64"),r=[];r.push(Ee.from([10])),r.push(nc(e.length)),r.push(e),r.push(Ee.from([18])),r.push(nc(n.length)),r.push(n),r.push(Ee.from([26])),r.push(nc(s.length)),r.push(s);const i=Ee.concat(r),o=Ia(i);return Ee.from(o).toString("hex").toUpperCase()}function u1(t){var e,n;const s=[];try{if(typeof t=="string")return s.push(t),s;if(typeof t!="object")return s;t!=null&&t.id&&s.push(t.id);const r=(n=(e=t==null?void 0:t.capabilities)==null?void 0:e.caip345)==null?void 0:n.transactionHashes;r&&s.push(...r)}catch(r){console.warn("getWalletSendCallsHashes failed: ",r)}return s}var d1=Object.defineProperty,h1=Object.defineProperties,p1=Object.getOwnPropertyDescriptors,fd=Object.getOwnPropertySymbols,f1=Object.prototype.hasOwnProperty,g1=Object.prototype.propertyIsEnumerable,gd=(t,e,n)=>e in t?d1(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,m1=(t,e)=>{for(var n in e||(e={}))f1.call(e,n)&&gd(t,n,e[n]);if(fd)for(var n of fd(e))g1.call(e,n)&&gd(t,n,e[n]);return t},y1=(t,e)=>h1(t,p1(e));const w1="did:pkh:",Zl=t=>t==null?void 0:t.split(":"),b1=t=>{const e=t&&Zl(t);if(e)return t.includes(w1)?e[3]:e[1]},Qc=t=>{const e=t&&Zl(t);if(e)return e[2]+":"+e[3]},aa=t=>{const e=t&&Zl(t);if(e)return e.pop()};async function md(t){const{cacao:e,projectId:n}=t,{s,p:r}=e,i=Rf(r,r.iss),o=aa(r.iss);return await n1(o,i,s,Qc(r.iss),n)}const Rf=(t,e)=>{const n=`${t.domain} wants you to sign in with your Ethereum account:`,s=aa(e);if(!t.aud&&!t.uri)throw new Error("Either `aud` or `uri` is required to construct the message");let r=t.statement||void 0;const i=`URI: ${t.aud||t.uri}`,o=`Version: ${t.version}`,a=`Chain ID: ${b1(e)}`,c=`Nonce: ${t.nonce}`,l=`Issued At: ${t.iat}`,u=t.exp?`Expiration Time: ${t.exp}`:void 0,d=t.nbf?`Not Before: ${t.nbf}`:void 0,h=t.requestId?`Request ID: ${t.requestId}`:void 0,p=t.resources?`Resources:${t.resources.map(f=>`
|
|
8
8
|
- ${f}`).join("")}`:void 0,g=qo(t.resources);if(g){const f=Ni(g);r=T1(r,f)}return[n,s,"",r,"",i,o,a,c,l,u,d,h,p].filter(f=>f!=null).join(`
|
|
@@ -250,4 +250,4 @@ NPM Registry: https://www.npmjs.com/package/@reown/appkit`}},KT={ConnectorExplor
|
|
|
250
250
|
appearance: none;
|
|
251
251
|
}
|
|
252
252
|
`;function J2(t,{strict:e=!0}={}){return!t||typeof t!="string"?!1:e?/^0x[0-9a-fA-F]*$/.test(t):t.startsWith("0x")}function rp(t){return J2(t,{strict:!1})?Math.ceil((t.length-2)/2):t.length}const cm="2.39.3";let ri={getDocsUrl:({docsBaseUrl:t,docsPath:e="",docsSlug:n})=>e?`${t??"https://viem.sh"}${e}${n?`#${n}`:""}`:void 0,version:`viem@${cm}`};class Br extends Error{constructor(e,n={}){var a;const s=(()=>{var c;return n.cause instanceof Br?n.cause.details:(c=n.cause)!=null&&c.message?n.cause.message:n.details})(),r=(()=>n.cause instanceof Br&&n.cause.docsPath||n.docsPath)(),i=(a=ri.getDocsUrl)==null?void 0:a.call(ri,{...n,docsPath:r}),o=[e||"An error occurred.","",...n.metaMessages?[...n.metaMessages,""]:[],...i?[`Docs: ${i}`]:[],...s?[`Details: ${s}`]:[],...ri.version?[`Version: ${ri.version}`]:[]].join(`
|
|
253
|
-
`);super(o,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,"details",{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,"metaMessages",{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,"version",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BaseError"}),this.details=s,this.docsPath=r,this.metaMessages=n.metaMessages,this.name=n.name??this.name,this.shortMessage=e,this.version=cm}walk(e){return lm(this,e)}}function lm(t,e){return e!=null&&e(t)?t:t&&typeof t=="object"&&"cause"in t&&t.cause!==void 0?lm(t.cause,e):e?null:t}class um extends Br{constructor({size:e,targetSize:n,type:s}){super(`${s.charAt(0).toUpperCase()}${s.slice(1).toLowerCase()} size (${e}) exceeds padding size (${n}).`,{name:"SizeExceedsPaddingSizeError"})}}function mu(t,{dir:e,size:n=32}={}){return typeof t=="string"?X2(t,{dir:e,size:n}):Z2(t,{dir:e,size:n})}function X2(t,{dir:e,size:n=32}={}){if(n===null)return t;const s=t.replace("0x","");if(s.length>n*2)throw new um({size:Math.ceil(s.length/2),targetSize:n,type:"hex"});return`0x${s[e==="right"?"padEnd":"padStart"](n*2,"0")}`}function Z2(t,{dir:e,size:n=32}={}){if(n===null)return t;if(t.length>n)throw new um({size:t.length,targetSize:n,type:"bytes"});const s=new Uint8Array(n);for(let r=0;r<n;r++){const i=e==="right";s[i?r:n-r-1]=t[i?r:t.length-r-1]}return s}class Q2 extends Br{constructor({max:e,min:n,signed:s,size:r,value:i}){super(`Number "${i}" is not in safe ${r?`${r*8}-bit ${s?"signed":"unsigned"} `:""}integer range ${e?`(${n} to ${e})`:`(above ${n})`}`,{name:"IntegerOutOfRangeError"})}}class eO extends Br{constructor({givenSize:e,maxSize:n}){super(`Size cannot exceed ${n} bytes. Given size: ${e} bytes.`,{name:"SizeOverflowError"})}}function dm(t,{size:e}){if(rp(t)>e)throw new eO({givenSize:rp(t),maxSize:e})}const tO=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function ip(t,e={}){return typeof t=="number"||typeof t=="bigint"?sO(t,e):typeof t=="string"?iO(t,e):typeof t=="boolean"?nO(t,e):hm(t,e)}function nO(t,e={}){const n=`0x${Number(t)}`;return typeof e.size=="number"?(dm(n,{size:e.size}),mu(n,{size:e.size})):n}function hm(t,e={}){let n="";for(let r=0;r<t.length;r++)n+=tO[t[r]];const s=`0x${n}`;return typeof e.size=="number"?(dm(s,{size:e.size}),mu(s,{dir:"right",size:e.size})):s}function sO(t,e={}){const{signed:n,size:s}=e,r=BigInt(t);let i;s?n?i=(1n<<BigInt(s)*8n-1n)-1n:i=2n**(BigInt(s)*8n)-1n:typeof t=="number"&&(i=BigInt(Number.MAX_SAFE_INTEGER));const o=typeof i=="bigint"&&n?-i-1n:0;if(i&&r>i||r<o){const c=typeof t=="bigint"?"n":"";throw new Q2({max:i?`${i}${c}`:void 0,min:`${o}${c}`,signed:n,size:s,value:`${t}${c}`})}const a=`0x${(n&&r<0?(1n<<BigInt(s*8))+BigInt(r):r).toString(16)}`;return s?mu(a,{size:s}):a}const rO=new TextEncoder;function iO(t,e={}){const n=rO.encode(t);return hm(n,e)}const Do={ERROR_CODE_UNRECOGNIZED_CHAIN_ID:4902,ERROR_CODE_DEFAULT:5e3,ERROR_INVALID_CHAIN_ID:32603};class oO extends By{async setUniversalProvider(e){if(!this.namespace)throw new Error("UniversalAdapter:setUniversalProvider - namespace is required");return this.addConnector(new Fy({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 getAccounts({namespace:e}){var r,i,o,a;const n=this.provider,s=((a=(o=(i=(r=n==null?void 0:n.session)==null?void 0:r.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:s.map(c=>J.createAccount(e,c,e==="bip122"?"payment":"eoa"))})}async syncConnectors(){return Promise.resolve()}async getBalance(e){var o,a,c,l,u;if(!(e.caipNetwork&&we.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 s=m.getAccountData();if(s!=null&&s.balanceLoading&&e.chainId===((l=m.state.activeCaipNetwork)==null?void 0:l.id))return{balance:(s==null?void 0:s.balance)||"0.00",symbol:(s==null?void 0:s.balanceSymbol)||""};const i=(await m.fetchTokenBalance()).find(d=>{var h,p;return d.chainId===`${(h=e.caipNetwork)==null?void 0:h.chainNamespace}:${e.chainId}`&&d.symbol===((p=e.caipNetwork)==null?void 0:p.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:s,address:r}=e;if(!n)throw new Error("UniversalAdapter:signMessage - provider is undefined");let i="";return((o=m.state.activeCaipNetwork)==null?void 0:o.chainNamespace)===U.CHAIN.SOLANA?i=(await n.request({method:"solana_signMessage",params:{message:jr.encode(new TextEncoder().encode(s)),pubkey:r}},(a=m.state.activeCaipNetwork)==null?void 0:a.caipNetworkId)).signature:i=await n.request({method:"personal_sign",params:[s,r]},(c=m.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 r,i,o,a,c,l;const{caipNetwork:n}=e,s=this.getWalletConnectConnector();if(n.chainNamespace===U.CHAIN.EVM)try{await((r=s.provider)==null?void 0:r.request({method:"wallet_switchEthereumChain",params:[{chainId:ip(n.id)}]}))}catch(u){if(u.code===Do.ERROR_CODE_UNRECOGNIZED_CHAIN_ID||u.code===Do.ERROR_INVALID_CHAIN_ID||u.code===Do.ERROR_CODE_DEFAULT||((o=(i=u==null?void 0:u.data)==null?void 0:i.originalError)==null?void 0:o.code)===Do.ERROR_CODE_UNRECOGNIZED_CHAIN_ID)try{await((l=s.provider)==null?void 0:l.request({method:"wallet_addEthereumChain",params:[{chainId:ip(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")}}s.provider.setDefaultChain(n.caipNetworkId)}getWalletConnectProvider(){const e=this.connectors.find(s=>s.type==="WALLET_CONNECT");return e==null?void 0:e.provider}}const aO=["email","socials","swaps","onramp","activity","reownBranding","multiWallet","emailCapture","payWithExchange","payments","reownAuthentication"],Mo={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?we.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?we.DEFAULT_REMOTE_FEATURES.socials:typeof t=="boolean"?t?we.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?we.DEFAULT_REMOTE_FEATURES.swaps:typeof t=="boolean"?t?we.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?we.DEFAULT_REMOTE_FEATURES.onramp:typeof t=="boolean"?t?we.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?we.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?we.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:()=>we.DEFAULT_REMOTE_FEATURES.multiWallet},payWithExchange:{apiFeatureName:"fund_from_exchange",localFeatureName:"payWithExchange",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>!!t.isEnabled,processFallback:()=>we.DEFAULT_REMOTE_FEATURES.payWithExchange},payments:{apiFeatureName:"payments",localFeatureName:"payments",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>!!t.isEnabled,processFallback:()=>we.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"?we.DEFAULT_REMOTE_FEATURES.reownAuthentication:!!t}},cO={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=Mo[e],s=n.isLegacy?`"features.${n.localFeatureName}" (now "${e}")`:`"features.${e}"`;this.localSettingsOverridden.add(s)}},processFeature(t,e,n,s,r){const i=Mo[t],o=e[i.localFeatureName];if(r&&!i.isAvailableOnBasic)return!1;if(s){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 Mo[t].processApi(e)},processFallbackFeature(t,e){return Mo[t].processFallback(e)},async fetchRemoteFeatures(t){const e=t.basic??!1,n=t.features||{};this.localSettingsOverridden.clear();let s=null,r=!1;try{s=await Q.fetchProjectConfig(),r=s!=null}catch(o){console.warn("[Reown Config] Failed to fetch remote project configuration. Using local/default values.",o)}const i=r&&!e?we.DEFAULT_REMOTE_FEATURES:we.DEFAULT_REMOTE_FEATURES_DISABLED;try{for(const o of aO){const a=this.processFeature(o,n,s,r,e);Object.assign(i,{[o]:a})}}catch(o){return console.warn("[Reown Config] Failed to process the configuration from Cloud. Using default values.",o),we.DEFAULT_REMOTE_FEATURES}if(r&&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.`;kt.open({debugMessage:Gt.ALERT_WARNINGS.LOCAL_CONFIGURATION_IGNORED.debugMessage(o)},"warning")}return i}};class lO{constructor(e){this.chainNamespaces=[],this.features={},this.remoteFeatures={},this.reportedAlertErrors={},this.getCaipNetwork=(n,s)=>{var r,i,o;if(n){const a=(r=m.getCaipNetworks(n))==null?void 0:r.find(u=>u.id===s);if(a)return a;const c=(i=m.getNetworkData(n))==null?void 0:i.caipNetwork;return c||((o=m.getRequestedCaipNetworks(n).filter(u=>u.chainNamespace===n))==null?void 0:o[0])}return m.state.activeCaipNetwork||this.defaultCaipNetwork},this.getCaipNetworkId=()=>{const n=this.getCaipNetwork();if(n)return n.id},this.getCaipNetworks=n=>m.getCaipNetworks(n),this.getActiveChainNamespace=()=>m.state.activeChain,this.setRequestedCaipNetworks=(n,s)=>{m.setRequestedCaipNetworks(n,s)},this.getApprovedCaipNetworkIds=()=>m.getAllApprovedCaipNetworkIds(),this.getCaipAddress=n=>{var s,r;return m.state.activeChain===n||!n?m.state.activeCaipAddress:(r=(s=m.state.chains.get(n))==null?void 0:s.accountState)==null?void 0:r.caipAddress},this.setClientId=n=>{re.setClientId(n)},this.getProvider=n=>Ue.getProvider(n),this.getProviderType=n=>Ue.getProviderId(n),this.getPreferredAccountType=n=>nn(n),this.setCaipAddress=(n,s,r=!1)=>{m.setAccountProp("caipAddress",n,s,r),m.setAccountProp("address",J.getPlainAddress(n),s,r)},this.setBalance=(n,s,r)=>{m.setAccountProp("balance",n,r),m.setAccountProp("balanceSymbol",s,r)},this.setProfileName=(n,s)=>{m.setAccountProp("profileName",n,s)},this.setProfileImage=(n,s)=>{m.setAccountProp("profileImage",n,s)},this.setUser=(n,s)=>{m.setAccountProp("user",n,s)},this.resetAccount=n=>{m.resetAccount(n)},this.setCaipNetwork=n=>{m.setActiveCaipNetwork(n)},this.setCaipNetworkOfNamespace=(n,s)=>{m.setChainNetworkData(s,{caipNetwork:n})},this.setStatus=(n,s)=>{m.setAccountProp("status",n,s),q.isConnected()?L.setConnectionStatus("connected"):L.setConnectionStatus("disconnected")},this.getAddressByChainNamespace=n=>{var s;return(s=m.getAccountData(n))==null?void 0:s.address},this.setConnectors=n=>{const s=[...q.state.allConnectors,...n];q.setConnectors(s)},this.setConnections=(n,s)=>{L.setConnections(n,s),V.setConnections(n,s)},this.fetchIdentity=n=>re.fetchIdentity(n),this.getReownName=n=>hi.getNamesForAddress(n),this.getConnectors=()=>q.getConnectors(),this.getConnectorImage=n=>Cp.getConnectorImage(n),this.getConnections=n=>this.remoteFeatures.multiWallet?Xo.getConnectionsData(n).connections:(kt.open(U.REMOTE_FEATURES_ALERTS.MULTI_WALLET_NOT_ENABLED.DEFAULT,"info"),[]),this.getRecentConnections=n=>this.remoteFeatures.multiWallet?Xo.getConnectionsData(n).recentConnections:(kt.open(U.REMOTE_FEATURES_ALERTS.MULTI_WALLET_NOT_ENABLED.DEFAULT,"info"),[]),this.switchConnection=async n=>{if(!this.remoteFeatures.multiWallet){kt.open(U.REMOTE_FEATURES_ALERTS.MULTI_WALLET_NOT_ENABLED.DEFAULT,"info");return}await V.switchConnection(n)},this.deleteConnection=n=>{if(!this.remoteFeatures.multiWallet){kt.open(U.REMOTE_FEATURES_ALERTS.MULTI_WALLET_NOT_ENABLED.DEFAULT,"info");return}L.deleteAddressFromConnection(n),V.syncStorageConnections()},this.setConnectedWalletInfo=(n,s)=>{const r=Ue.getProviderId(s),i=n?{...n,type:r}:void 0;m.setAccountProp("connectedWalletInfo",i,s)},this.getIsConnectedState=()=>!!m.state.activeCaipAddress,this.addAddressLabel=(n,s,r)=>{var o;const i=((o=m.getAccountData(r))==null?void 0:o.addressLabels)||{};m.setAccountProp("addressLabels",{...i,[n]:s},r)},this.removeAddressLabel=(n,s)=>{var i;const r=((i=m.getAccountData(s))==null?void 0:i.addressLabels)||{};m.setAccountProp("addressLabels",{...r,[n]:void 0},s)},this.getAddress=n=>{var r;const s=n||m.state.activeChain;return(r=m.getAccountData(s))==null?void 0:r.address},this.resetNetwork=n=>{m.resetNetwork(n)},this.addConnector=n=>{q.addConnector(n)},this.resetWcConnection=()=>{V.resetWcConnection()},this.setAddressExplorerUrl=(n,s)=>{m.setAccountProp("addressExplorerUrl",n,s)},this.setSmartAccountDeployed=(n,s)=>{m.setAccountProp("smartAccountDeployed",n,s)},this.setPreferredAccountType=(n,s)=>{m.setAccountProp("preferredAccountType",n,s)},this.setEIP6963Enabled=n=>{k.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 s=e==null?void 0:e.map(i=>i.namespace).filter(i=>!!i);if(s!=null&&s.length)return[...new Set(s)];const r=n==null?void 0:n.map(i=>i.chainNamespace);return[...new Set(r)]}async initialize(e){var n,s,r,i,o;if(this.initializeProjectSettings(e),this.initControllers(e),await this.initChainAdapters(),this.sendInitializeEvent(e),k.state.enableReconnect?(await this.syncExistingConnection(),await this.syncAdapterConnections()):await this.unSyncExistingConnection(),this.remoteFeatures=await cO.fetchRemoteFeatures(e),await Q.fetchUsage(),k.setRemoteFeatures(this.remoteFeatures),this.remoteFeatures.onramp&&jc.setOnrampProviders(this.remoteFeatures.onramp),((n=k.state.remoteFeatures)!=null&&n.email||Array.isArray((s=k.state.remoteFeatures)==null?void 0:s.socials)&&((r=k.state.remoteFeatures)==null?void 0:r.socials.length)>0)&&await this.checkAllowedOrigins(),(i=k.state.features)!=null&&i.reownAuthentication||(o=k.state.remoteFeatures)!=null&&o.reownAuthentication){const{ReownAuthentication:a}=await Go(()=>import("./features-1ac2c408.js"),["assets/features-1ac2c408.js","assets/index-0ed0aefc.js","assets/index-1b1958de.css","assets/index-2afd209b.js"]),c=k.state.siwx;c instanceof a||(c&&console.warn("ReownAuthentication option is enabled, SIWX configuration will be overridden."),k.setSIWX(new a))}}async openSend(e){var i;const n=e.namespace||m.state.activeChain,s=this.getCaipAddress(n),r=(i=this.getCaipNetwork(n))==null?void 0:i.id;if(!s)throw new Error("openSend: caipAddress not found");if((r==null?void 0:r.toString())!==e.chainId.toString()){const o=m.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=Gg.getTokenSymbolByAddress(e.assetAddress);o&&await Q.fetchTokenImages([o])}catch{}return await pe.open({view:"WalletSend",data:{send:e}}),new Promise((o,a)=>{const c=de.subscribeKey("hash",d=>{d&&(u(),o({hash:d}))}),l=pe.subscribe(d=>{d.open||(u(),a(new Error("Modal closed")))}),u=this.createCleanupHandler([c,l])})}toModalOptions(){function e(s){return(s==null?void 0:s.view)==="Swap"}function n(s){return(s==null?void 0:s.view)==="WalletSend"}return{isSwap:e,isSend:n}}async checkAllowedOrigins(){try{const e=await Q.fetchAllowedOrigins();if(!J.isClient())return;const n=window.location.origin;ys.isOriginAllowed(n,e,U.DEFAULT_ALLOWED_ANCESTORS)||kt.open(Gt.ALERT_ERRORS.ORIGIN_NOT_ALLOWED,"error")}catch(e){if(!(e instanceof Error))return;switch(e.message){case"RATE_LIMITED":kt.open(Gt.ALERT_ERRORS.RATE_LIMITED_APP_CONFIGURATION,"error");break;case"SERVER_ERROR":{const n=e.cause instanceof Error?e.cause:e;kt.open({displayMessage:Gt.ALERT_ERRORS.SERVER_ERROR_APP_CONFIGURATION.displayMessage,debugMessage:Gt.ALERT_ERRORS.SERVER_ERROR_APP_CONFIGURATION.debugMessage(n.message)},"error");break}}}}createCleanupHandler(e){return()=>{e.forEach(n=>{try{n()}catch{}})}}sendInitializeEvent(e){var s;const{...n}=e;delete n.adapters,delete n.universalProvider,he.sendEvent({type:"track",event:"INITIALIZE",properties:{...n,networks:e.networks.map(r=>r.id),siweConfig:{options:((s=e.siweConfig)==null?void 0:s.options)||{}}}})}initControllers(e){this.initializeOptionsController(e),this.initializeChainController(e),this.initializeThemeController(e),this.initializeConnectionController(e),this.initializeConnectorController()}initAdapterController(){Ip.initialize(this.chainAdapters)}initializeThemeController(e){e.themeMode&&Ut.setThemeMode(e.themeMode),e.themeVariables&&Ut.setThemeVariables(e.themeVariables)}initializeChainController(e){if(!this.connectionControllerClient)throw new Error("ConnectionControllerClient must be set");m.initialize(e.adapters??[],this.caipNetworks,{connectionControllerClient:this.connectionControllerClient});const n=this.getDefaultNetwork();n&&m.setActiveCaipNetwork(n)}initializeConnectionController(e){V.initialize(e.adapters??[]),V.setWcBasic(e.basic??!1)}initializeConnectorController(){q.initialize(this.chainNamespaces)}initializeProjectSettings(e){k.setProjectId(e.projectId),k.setSdkVersion(e.sdkVersion)}initializeOptionsController(e){var r;k.setDebug(e.debug!==!1),k.setEnableWalletGuide(e.enableWalletGuide!==!1),k.setEnableWallets(e.enableWallets!==!1),k.setEIP6963Enabled(e.enableEIP6963!==!1),k.setEnableNetworkSwitch(e.enableNetworkSwitch!==!1),k.setEnableReconnect(e.enableReconnect!==!1),k.setEnableMobileFullScreen(e.enableMobileFullScreen===!0),k.setCoinbasePreference(e.coinbasePreference),k.setEnableAuthLogger(e.enableAuthLogger!==!1),k.setCustomRpcUrls(e.customRpcUrls),k.setEnableEmbedded(e.enableEmbedded),k.setAllWallets(e.allWallets),k.setIncludeWalletIds(e.includeWalletIds),k.setExcludeWalletIds(e.excludeWalletIds),k.setFeaturedWalletIds(e.featuredWalletIds),k.setTokens(e.tokens),k.setTermsConditionsUrl(e.termsConditionsUrl),k.setPrivacyPolicyUrl(e.privacyPolicyUrl),k.setCustomWallets(e.customWallets),k.setFeatures(e.features),k.setAllowUnsupportedChain(e.allowUnsupportedChain),k.setUniversalProviderConfigOverride(e.universalProviderConfigOverride),k.setPreferUniversalLinks(e.experimental_preferUniversalLinks),k.setDefaultAccountTypes(e.defaultAccountTypes);const n=this.getDefaultMetaData();if(!e.metadata&&n&&(e.metadata=n),k.setMetadata(e.metadata),k.setDisableAppend(e.disableAppend),k.setEnableEmbedded(e.enableEmbedded),k.setSIWX(e.siwx),this.features=k.state.features??{},!e.projectId){kt.open(Gt.ALERT_ERRORS.PROJECT_ID_NOT_CONFIGURED,"error");return}if(((r=e.adapters)==null?void 0:r.find(i=>i.namespace===U.CHAIN.EVM))&&e.siweConfig){if(e.siwx)throw new Error("Cannot set both `siweConfig` and `siwx` options");k.setSIWX(e.siweConfig.mapToSIWX())}}getDefaultMetaData(){var e,n,s,r;return J.isClient()?{name:((n=(e=document.getElementsByTagName("title"))==null?void 0:e[0])==null?void 0:n.textContent)||"",description:((s=document.querySelector('meta[property="og:description"]'))==null?void 0:s.content)||"",url:window.location.origin,icons:[((r=document.querySelector('link[rel~="icon"]'))==null?void 0:r.href)||""]}:null}setUnsupportedNetwork(e){const n=this.getActiveChainNamespace();if(n){const s=yr.getUnsupportedNetwork(`${n}:${e}`);m.setActiveCaipNetwork(s)}}getDefaultNetwork(){return yr.getCaipNetworkFromStorage(this.defaultCaipNetwork)}extendCaipNetwork(e,n){return yr.extendCaipNetwork(e,{customNetworkImageUrls:n.chainImages,projectId:n.projectId})}extendCaipNetworks(e){return yr.extendCaipNetworks(e.networks,{customNetworkImageUrls:e.chainImages,customRpcUrls:e.customRpcUrls,projectId:e.projectId})}extendDefaultCaipNetwork(e){const n=e.networks.find(r=>{var i;return r.id===((i=e.defaultNetwork)==null?void 0:i.id)});return n?yr.extendCaipNetwork(n,{customNetworkImageUrls:e.chainImages,customRpcUrls:e.customRpcUrls,projectId:e.projectId}):void 0}async disconnectConnector(e,n){var s,r;try{this.setLoading(!0,e);let i={connections:[]};const o=this.getAdapter(e);return(((r=(s=m.state.chains.get(e))==null?void 0:s.accountState)==null?void 0:r.caipAddress)||!k.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=m.state.activeChain,n=this.getAdapter(e),s=(l=this.getCaipNetwork(e))==null?void 0:l.id,r=V.getConnections(e),i=this.remoteFeatures.multiWallet,o=r.length>0;if(!n)throw new Error("Adapter not found");const a=await n.connectWalletConnect(s);(!o||!i)&&this.close(),this.setClientId((a==null?void 0:a.clientId)||null),L.setConnectedNamespaces([...m.state.chains.keys()]),await this.syncWalletConnectAccount(),await hn.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:s,provider:r})=>{var a;const i=m.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:s,provider:r,chainId:(a=this.getCaipNetwork())==null?void 0:a.id})),L.addConnectedNamespace(i),this.syncConnectedWalletInfo(i))},disconnectConnector:async e=>{await this.disconnectConnector(e.namespace,e.id)},disconnect:async e=>{var l;const{id:n,chainNamespace:s,initialDisconnect:r}=e||{},i=s||m.state.activeChain,o=q.getConnectorId(i),a=n===U.CONNECTOR_ID.AUTH||o===U.CONNECTOR_ID.AUTH,c=n===U.CONNECTOR_ID.WALLET_CONNECT||o===U.CONNECTOR_ID.WALLET_CONNECT;try{const u=Array.from(m.state.chains.keys());let d=s?[s]:u;(c||a)&&(d=u);const h=d.map(async f=>{const y=q.getConnectorId(f),b=n||y,_=await this.disconnectConnector(f,b);_&&(a&&L.deleteConnectedSocialProvider(),_.connections.forEach(A=>{L.addDisconnectedConnectorId(A.connectorId,f)})),r&&this.onDisconnectNamespace({chainNamespace:f,closeModal:!1})}),p=await Promise.allSettled(h);de.resetSend(),V.resetWcConnection(),(l=hn.getSIWX())!=null&&l.signOutOnDisconnect&&await hn.clearSessions(),q.setFilterByNamespace(void 0),V.syncStorageConnections();const g=p.filter(f=>f.status==="rejected");if(g.length>0)throw new Error(g.map(f=>f.reason.message).join(", "));he.sendEvent({type:"track",event:"DISCONNECT_SUCCESS",properties:{namespace:s||"all"}})}catch(u){throw new Error(`Failed to disconnect chains: ${u.message}`)}},checkInstalled:e=>e?e.some(n=>{var s;return!!((s=window.ethereum)!=null&&s[String(n)])}):!!window.ethereum,signMessage:async e=>{const n=m.state.activeChain,s=this.getAdapter(m.state.activeChain);if(!n)throw new Error("signMessage: namespace not found");if(!s)throw new Error("signMessage: adapter not found");const r=this.getAddress(n);if(!r)throw new Error("signMessage: address not found");const i=await(s==null?void 0:s.signMessage({message:e,address:r,provider:Ue.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(we.SEND_SUPPORTED_NAMESPACES.includes(n)){const s=this.getAdapter(n);if(!s)throw new Error("sendTransaction: adapter not found");const r=Ue.getProvider(n),i=await(s==null?void 0:s.sendTransaction({...e,caipNetwork:this.getCaipNetwork(),provider:r}));return(i==null?void 0:i.hash)||""}return""},estimateGas:async e=>{const n=e.chainNamespace;if(n===U.CHAIN.EVM){const s=this.getAdapter(n);if(!s)throw new Error("estimateGas: adapter is required but got undefined");const r=Ue.getProvider(n),i=this.getCaipNetwork();if(!i)throw new Error("estimateGas: caipNetwork is required but got undefined");const o=await(s==null?void 0:s.estimateGas({...e,provider:r,caipNetwork:i}));return(o==null?void 0:o.gas)||0n}return 0n},getEnsAvatar:async()=>{var r;const e=m.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((r=this.getCaipNetwork())==null?void 0:r.id),chainNamespace:e});const s=m.getAccountData();return(s==null?void 0:s.profileImage)||!1},getEnsAddress:async e=>await ys.resolveReownName(e),writeContract:async e=>{const n=m.state.activeChain,s=this.getAdapter(n);if(!n)throw new Error("writeContract: namespace is required but got undefined");if(!s)throw new Error("writeContract: adapter is required but got undefined");const r=this.getCaipNetwork(),i=this.getCaipAddress(),o=Ue.getProvider(n);if(!r||!i)throw new Error("writeContract: caipNetwork or caipAddress is required but got undefined");const a=await(s==null?void 0:s.writeContract({...e,caipNetwork:r,provider:o,caipAddress:i}));return a==null?void 0:a.hash},parseUnits:(e,n)=>{const s=this.getAdapter(m.state.activeChain);if(!s)throw new Error("parseUnits: adapter is required but got undefined");return(s==null?void 0:s.parseUnits({value:e,decimals:n}))??0n},formatUnits:(e,n)=>{const s=this.getAdapter(m.state.activeChain);if(!s)throw new Error("formatUnits: adapter is required but got undefined");return(s==null?void 0:s.formatUnits({value:e,decimals:n}))??"0"},getCapabilities:async e=>{const n=this.getAdapter(m.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(m.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(m.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(m.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),s=this.getCaipNetwork(e);!s||!n||this.updateNativeBalance(n,s==null?void 0:s.id,e)}},V.setClient(this.connectionControllerClient)}async onConnectExternal(e){var l,u,d,h,p,g,f,y;const n=m.state.activeChain,s=e.chain||n,r=this.getAdapter(s);let i=!0;if(e.type===Le.CONNECTOR_TYPE_AUTH&&U.AUTH_CONNECTOR_SUPPORTED_CHAINS.some(A=>q.getConnectorId(A)===U.CONNECTOR_ID.AUTH)&&e.chain!==n&&(i=!1),e.chain&&e.chain!==n&&!e.caipNetwork){const b=this.getCaipNetworks().find(_=>_.chainNamespace===e.chain);b&&i&&this.setCaipNetwork(b)}if(!s)throw new Error("connectExternal: namespace not found");if(!r)throw new Error("connectExternal: adapter not found");const o=this.getCaipNetwork(s),a=e.caipNetwork||o,c=await r.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:((p=(h=(d=(u=e.caipNetwork)==null?void 0:u.rpcUrls)==null?void 0:d.default)==null?void 0:h.http)==null?void 0:p[0])||((y=(f=(g=o==null?void 0:o.rpcUrls)==null?void 0:g.default)==null?void 0:f.http)==null?void 0:y[0])});if(c)return L.addConnectedNamespace(s),this.syncProvider({...c,chainNamespace:s}),this.setStatus("connected",s),this.syncConnectedWalletInfo(s),L.removeDisconnectedConnectorId(e.id,s),{address:c.address,connectedCaipNetwork:a}}async connectInactiveNamespaces(e,n){var a;const s=e.type===Le.CONNECTOR_TYPE_AUTH,r=Oi.getOtherAuthNamespaces((a=n==null?void 0:n.connectedCaipNetwork)==null?void 0:a.chainNamespace),i=m.state.activeCaipNetwork,o=this.getAdapter(i==null?void 0:i.chainNamespace);s&&(await Promise.all(r.map(async c=>{var l,u,d;try{const h=Ue.getProvider(c),p=this.getCaipNetwork(c),g=this.getAdapter(c);await(g==null?void 0:g.connect({...e,provider:h,socialUri:void 0,chainId:p==null?void 0:p.id,rpcUrl:(d=(u=(l=p==null?void 0:p.rpcUrls)==null?void 0:l.default)==null?void 0:u.http)==null?void 0:d[0]}))&&(L.addConnectedNamespace(c),L.removeDisconnectedConnectorId(e.id,c),this.setStatus("connected",c),this.syncConnectedWalletInfo(c))}catch(h){kt.warn(Gt.ALERT_WARNINGS.INACTIVE_NAMESPACE_NOT_CONNECTED.displayMessage,Gt.ALERT_WARNINGS.INACTIVE_NAMESPACE_NOT_CONNECTED.debugMessage(c,h instanceof Error?h.message:void 0),Gt.ALERT_WARNINGS.INACTIVE_NAMESPACE_NOT_CONNECTED.code)}})),i&&await(o==null?void 0:o.switchNetwork({caipNetwork:i})))}getApprovedCaipNetworksData(){var n,s,r,i,o;if(Ue.getProviderId(m.state.activeChain)===Le.CONNECTOR_TYPE_WALLET_CONNECT){const a=(s=(n=this.universalProvider)==null?void 0:n.session)==null?void 0:s.namespaces;return{supportsAllNetworks:((o=(i=(r=this.universalProvider)==null?void 0:r.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 r=Ue.getProviderId(n);if(e.chainNamespace===m.state.activeChain){const i=this.getAdapter(n);await(i==null?void 0:i.switchNetwork({caipNetwork:e}))}else if(this.setCaipNetwork(e),r===Le.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 s=n.chains||[],r=n.accounts.map(i=>{const{chainId:o,chainNamespace:a}=tt.parseCaipAddress(i);return`${a}:${o}`});return Array.from(new Set([...s,...r]))})}createAdapters(e){return this.createClients(),this.chainNamespaces.reduce((n,s)=>{var i,o;const r=e==null?void 0:e.find(a=>a.namespace===s);return r?(r.construct({namespace:s,projectId:(i=this.options)==null?void 0:i.projectId,networks:(o=this.caipNetworks)==null?void 0:o.filter(({chainNamespace:a})=>a===s)}),n[s]=r):n[s]=new oO({namespace:s,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 s=L.getConnectionStatus();k.state.enableReconnect===!1?this.setStatus("disconnected",e):s==="connected"?this.setStatus("connecting",e):s==="disconnected"?(L.clearAddressCache(),this.setStatus(s,e)):this.setStatus(s,e),n.on("switchNetwork",({address:r,chainId:i})=>{var l,u;const o=this.getCaipNetworks().find(d=>d.id.toString()===i.toString()||d.caipNetworkId.toString()===i.toString()),a=m.state.activeChain===e,c=(u=(l=m.state.chains.get(e))==null?void 0:l.accountState)==null?void 0:u.address;if(o){const d=a&&r?r:c;d&&this.syncAccount({address:d,chainId:o.id,chainNamespace:e})}else this.setUnsupportedNetwork(i)}),n.on("disconnect",()=>{const r=this.remoteFeatures.multiWallet,i=Array.from(V.state.connections.values()).flat();this.onDisconnectNamespace({chainNamespace:e,closeModal:!r||i.length===0})}),n.on("connections",r=>{this.setConnections(r,e)}),n.on("pendingTransactions",()=>{const r=this.getAddress(e),i=m.state.activeCaipNetwork;!r||!(i!=null&&i.id)||this.updateNativeBalance(r,i.id,i.chainNamespace)}),n.on("accountChanged",({address:r,chainId:i,connector:o})=>{var u,d;this.handlePreviousConnectorConnection(o);const a=m.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=m.getNetworkData(e))==null?void 0:u.caipNetwork)==null?void 0:d.id,l=i||c;a&&l?this.syncAccount({address:r,chainId:l,chainNamespace:e}):!a&&l?(this.syncAccountInfo(r,l,e),this.syncBalance({address:r,chainId:l,chainNamespace:e})):this.syncAccountInfo(r,i,e),L.addConnectedNamespace(e)})}async handlePreviousConnectorConnection(e){var c;const n=e==null?void 0:e.chain,s=e==null?void 0:e.id,r=q.getConnectorId(n),i=(c=k.state.remoteFeatures)==null?void 0:c.multiWallet,a=n&&s&&r&&r!==s&&!i;try{a&&await V.disconnect({id:r,namespace:n})}catch(l){console.warn("Error disconnecting previous connector",l)}}async createUniversalProviderForAdapter(e){var n,s,r;await this.getUniversalProvider(),this.universalProvider&&await((r=(s=(n=this.chainAdapters)==null?void 0:n[e])==null?void 0:s.setUniversalProvider)==null?void 0:r.call(s,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()||L.deleteRecentWallet();const n=L.getRecentWallet();he.sendEvent({type:"track",event:"CONNECT_SUCCESS",address:e,properties:{method:J.isMobile()?"mobile":"qrcode",name:(n==null?void 0:n.name)||"Unknown",reconnect:!0,view:se.state.view,walletRank:n==null?void 0:n.order}})}async syncNamespaceConnection(e){try{e===U.CHAIN.EVM&&J.isSafeApp()&&q.setConnectorId(U.CONNECTOR_ID.SAFE,e);const n=q.getConnectorId(e);switch(this.setStatus("connecting",e),n){case U.CONNECTOR_ID.WALLET_CONNECT:await this.reconnectWalletConnect();break;case U.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:s}=e||{};m.resetAccount(n),m.resetNetwork(n),L.removeConnectedNamespace(n);const r=Array.from(m.state.chains.keys());(n?[n]:r).forEach(o=>L.addDisconnectedConnectorId(q.getConnectorId(o)||"",o)),q.removeConnectorId(n),Ue.resetChain(n),this.setUser(null,n),this.setStatus("disconnected",n),this.setConnectedWalletInfo(null,n),s!==!1&&pe.close()}async syncAdapterConnections(){await Promise.allSettled(this.chainNamespaces.map(e=>{const n=this.getAdapter(e),s=this.getCaipAddress(e),r=this.getCaipNetwork(e);return n==null?void 0:n.syncConnections({connectToFirstConnector:!s,caipNetwork:r})}))}async syncAdapterConnection(e){var a,c,l,u;const n=this.getAdapter(e),s=this.getCaipNetwork(e),r=q.getConnectorId(e),o=q.getConnectors(e).find(d=>d.id===r);try{if(!n||!o)throw new Error(`Adapter or connector not found for namespace ${e}`);if(!(s!=null&&s.id))throw new Error("CaipNetwork not found");const d=await(n==null?void 0:n.syncConnection({namespace:e,id:o.id,chainId:s.id,rpcUrl:(l=(c=(a=s==null?void 0:s.rpcUrls)==null?void 0:a.default)==null?void 0:c.http)==null?void 0:l[0]}));d?(this.syncProvider({...d,chainNamespace:e}),await this.syncAccount({...d,chainNamespace:e}),this.setStatus("connected",e),he.sendEvent({type:"track",event:"CONNECT_SUCCESS",address:d.address,properties:{method:"browser",name:((u=o.info)==null?void 0:u.name)||o.name||"Unknown",reconnect:!0,view:se.state.view,walletRank:void 0}})):this.setStatus("disconnected",e)}catch{this.onDisconnectNamespace({chainNamespace:e,closeModal:!1})}}async syncWalletConnectAccount(){var s,r;const e=Object.keys(((r=(s=this.universalProvider)==null?void 0:s.session)==null?void 0:r.namespaces)||{}),n=this.chainNamespaces.map(async i=>{var d,h,p,g,f;const o=this.getAdapter(i);if(!o)return;const a=((g=(p=(h=(d=this.universalProvider)==null?void 0:d.session)==null?void 0:h.namespaces)==null?void 0:p[i])==null?void 0:g.accounts)||[],c=(f=m.state.activeCaipNetwork)==null?void 0:f.id,l=a.find(y=>{const{chainId:b}=tt.parseCaipAddress(y);return b===(c==null?void 0:c.toString())})||a[0];if(l){const y=tt.validateCaipAddress(l),{chainId:b,address:_}=tt.parseCaipAddress(y);if(Ue.setProviderId(i,Le.CONNECTOR_TYPE_WALLET_CONNECT),this.caipNetworks&&m.state.activeCaipNetwork&&o.namespace!==U.CHAIN.EVM){const A=o.getWalletConnectProvider({caipNetworks:this.getCaipNetworks(),provider:this.universalProvider,activeCaipNetwork:m.state.activeCaipNetwork});Ue.setProvider(i,A)}else Ue.setProvider(i,this.universalProvider);q.setConnectorId(U.CONNECTOR_ID.WALLET_CONNECT,i),L.addConnectedNamespace(i),await this.syncAccount({address:_,chainId:b,chainNamespace:i})}else e.includes(i)&&this.setStatus("disconnected",i);const u=this.getApprovedCaipNetworksData();this.syncConnectedWalletInfo(i),m.setApprovedCaipNetworksData(i,{approvedCaipNetworkIds:u.approvedCaipNetworkIds,supportsAllNetworks:u.supportsAllNetworks})});await Promise.all(n)}syncProvider({type:e,provider:n,id:s,chainNamespace:r}){Ue.setProviderId(r,e),Ue.setProvider(r,n),q.setConnectorId(s,r)}async syncAccount(e){var d,h;const n=e.chainNamespace===m.state.activeChain,s=m.getCaipNetworkByNamespace(e.chainNamespace,e.chainId),{address:r,chainId:i,chainNamespace:o}=e,{chainId:a}=L.getActiveNetworkProps(),c=(s==null?void 0:s.id)||a,l=((d=m.state.activeCaipNetwork)==null?void 0:d.name)===U.UNSUPPORTED_NETWORK_NAME,u=m.getNetworkProp("supportsAllNetworks",o);if(this.setStatus("connected",o),!(l&&!u)&&c){let p=this.getCaipNetworks().find(b=>b.id.toString()===c.toString()),g=this.getCaipNetworks().find(b=>b.chainNamespace===o);if(!u&&!p&&!g){const b=this.getApprovedCaipNetworkIds()||[],_=b.find(E=>{var N;return((N=tt.parseCaipNetworkId(E))==null?void 0:N.chainId)===c.toString()}),A=b.find(E=>{var N;return((N=tt.parseCaipNetworkId(E))==null?void 0:N.chainNamespace)===o});p=this.getCaipNetworks().find(E=>E.caipNetworkId===_),g=this.getCaipNetworks().find(E=>E.caipNetworkId===A||"deprecatedCaipNetworkId"in E&&E.deprecatedCaipNetworkId===A)}const f=p||g;(f==null?void 0:f.chainNamespace)===m.state.activeChain?k.state.enableNetworkSwitch&&!k.state.allowUnsupportedChain&&((h=m.state.activeCaipNetwork)==null?void 0:h.name)===U.UNSUPPORTED_NETWORK_NAME?m.showUnsupportedChainUI():this.setCaipNetwork(f):n||s&&this.setCaipNetworkOfNamespace(s,o),this.syncConnectedWalletInfo(o);const y=this.getAddress(o);Oi.isLowerCaseMatch(r,y)||this.syncAccountInfo(r,f==null?void 0:f.id,o),n?await this.syncBalance({address:r,chainId:f==null?void 0:f.id,chainNamespace:o}):await this.syncBalance({address:r,chainId:s==null?void 0:s.id,chainNamespace:o}),this.syncIdentity({address:r,chainId:i,chainNamespace:o})}}async syncAccountInfo(e,n,s){const r=this.getCaipAddress(s),i=n||(r==null?void 0:r.split(":")[1]);if(!i)return;const o=`${s}:${i}:${e}`;this.setCaipAddress(o,s,!0),await this.syncIdentity({address:e,chainId:i,chainNamespace:s})}async syncReownName(e,n){try{const s=await this.getReownName(e);if(s[0]){const r=s[0];this.setProfileName(r.name,n)}else this.setProfileName(null,n)}catch{this.setProfileName(null,n)}}syncConnectedWalletInfo(e){var r;const n=q.getConnectorId(e),s=Ue.getProviderId(e);if(s===Le.CONNECTOR_TYPE_ANNOUNCED||s===Le.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(p=>{var g;return p.id===n||((g=p.info)==null?void 0:g.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(s===Le.CONNECTOR_TYPE_WALLET_CONNECT){const i=Ue.getProvider(e);i!=null&&i.session&&this.setConnectedWalletInfo({...i.session.peer.metadata,name:i.session.peer.metadata.name,icon:(r=i.session.peer.metadata.icons)==null?void 0:r[0]},e)}else if(n&&(n===U.CONNECTOR_ID.COINBASE_SDK||n===U.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){!hp.getNetworksByNamespace(this.getCaipNetworks(),e.chainNamespace).find(s=>{var r;return s.id.toString()===((r=e.chainId)==null?void 0:r.toString())})||!e.chainId||await this.updateNativeBalance(e.address,e.chainId,e.chainNamespace)}async ready(){await this.readyPromise}async updateNativeBalance(e,n,s){const r=this.getAdapter(s),i=m.getCaipNetworkByNamespace(s,n);if(r){const o=await r.getBalance({address:e,chainId:n,caipNetwork:i,tokens:this.options.tokens});return this.setBalance(o.balance,o.symbol,s),o}}async initializeUniversalAdapter(){var s,r,i,o,a,c,l,u,d,h;const e=zT.createLogger((p,...g)=>{p&&this.handleAlertError(p),console.error(...g)}),n={projectId:(s=this.options)==null?void 0:s.projectId,metadata:{name:(r=this.options)!=null&&r.metadata?(i=this.options)==null?void 0:i.metadata.name:"",description:(o=this.options)!=null&&o.metadata?(a=this.options)==null?void 0:a.metadata.description:"",url:(c=this.options)!=null&&c.metadata?(l=this.options)==null?void 0:l.metadata.url:"",icons:(u=this.options)!=null&&u.metadata?(d=this.options)==null?void 0:d.metadata.icons:[""]},logger:e};k.setManualWCControl(!!((h=this.options)!=null&&h.manualWCControl)),this.universalProvider=this.options.universalProvider??await HT.init(n),k.state.enableReconnect===!1&&this.universalProvider.session&&await this.universalProvider.disconnect(),this.listenWalletConnect()}listenWalletConnect(){this.universalProvider&&this.chainNamespaces.forEach(e=>{ys.listenWcProvider({universalProvider:this.universalProvider,namespace:e,onDisplayUri:n=>{V.setUri(n)},onConnect:n=>{const{address:s}=J.getAccount(n[0]);V.finalizeWcConnection(s)},onDisconnect:()=>{m.state.noAdapters&&this.resetAccount(e),V.resetWcConnection()},onChainChanged:n=>{const s=m.state.activeChain,r=s&&q.state.activeConnectorIds[s]===U.CONNECTOR_ID.WALLET_CONNECT;if(s===e&&(m.state.noAdapters||r)){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 s=m.state.activeChain,r=s&&q.state.activeConnectorIds[s]===U.CONNECTOR_ID.WALLET_CONNECT;if(s===e&&(m.state.noAdapters||r)){const i=n==null?void 0:n[0];i&&this.syncAccount({address:i.address,chainId:i.chainId,chainNamespace:i.chainNamespace})}}})})}createUniversalProvider(){var e;return!this.universalProviderInitPromise&&J.isClient()&&((e=this.options)!=null&&e.projectId)&&(this.universalProviderInitPromise=this.initializeUniversalAdapter()),this.universalProviderInitPromise}async getUniversalProvider(){if(!this.universalProvider)try{await this.createUniversalProvider()}catch(e){he.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=m.getAllApprovedCaipNetworkIds(),n=m.getAllRequestedCaipNetworks();return J.sortRequestedNetworks(e,n).filter(r=>m.isCaipNetworkDisabled(r))}handleAlertError(e){const n=Object.entries(Gt.UniversalProviderErrors).find(([,{message:a}])=>e.message.includes(a)),[s,r]=n??[],{message:i,alertErrorKey:o}=r??{};if(s&&i&&!this.reportedAlertErrors[s]){const a=Gt.ALERT_ERRORS[o];a&&(kt.open(a,"error"),this.reportedAlertErrors[s]=!0)}}getAdapter(e){var n;if(e)return(n=this.chainAdapters)==null?void 0:n[e]}createAdapter(e){var r,i;if(!e)return;const n=e.namespace;if(!n)return;this.createClients();const s=e;s.namespace=n,s.construct({namespace:n,projectId:(r=this.options)==null?void 0:r.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]=s)}async open(e){await this.injectModalUi(),e!=null&&e.uri&&V.setUri(e.uri);const{isSwap:n,isSend:s}=this.toModalOptions();return n(e)?pe.open({...e,data:{swap:e.arguments}}):s(e)&&e.arguments?this.openSend(e.arguments):pe.open(e)}async close(){await this.injectModalUi(),pe.close()}setLoading(e,n){pe.setLoading(e,n)}async disconnect(e){await V.disconnect({namespace:e})}getSIWX(){return k.state.siwx}getError(){return""}getChainId(){var e;return(e=m.state.activeCaipNetwork)==null?void 0:e.id}async switchNetwork(e,{throwOnFailure:n=!1}={}){const s=this.getCaipNetworks().find(r=>r.id===e.id);if(!s){kt.open(Gt.ALERT_ERRORS.SWITCH_NETWORK_NOT_FOUND,"error");return}await m.switchActiveNetwork(s,{throwOnFailure:n})}getWalletProvider(){return m.state.activeChain?Ue.state.providers[m.state.activeChain]:null}getWalletProviderType(){return Ue.getProviderId(m.state.activeChain)}subscribeProviders(e){return Ue.subscribeProviders(e)}getThemeMode(){return Ut.state.themeMode}getThemeVariables(){return Ut.state.themeVariables}setThemeMode(e){Ut.setThemeMode(e),Ol(Ut.state.themeMode)}setTermsConditionsUrl(e){k.setTermsConditionsUrl(e)}setPrivacyPolicyUrl(e){k.setPrivacyPolicyUrl(e)}setThemeVariables(e){Ut.setThemeVariables(e),Y2(Ut.state.themeVariables)}subscribeTheme(e){return Ut.subscribe(e)}subscribeConnections(e){return this.remoteFeatures.multiWallet?V.subscribe(e):(kt.open(U.REMOTE_FEATURES_ALERTS.MULTI_WALLET_NOT_ENABLED.DEFAULT,"info"),()=>{})}getWalletInfo(e){var s,r;if(e)return(r=(s=m.state.chains.get(e))==null?void 0:s.accountState)==null?void 0:r.connectedWalletInfo;const n=m.getAccountData();return n==null?void 0:n.connectedWalletInfo}getAccount(e){const n=e||m.state.activeChain,s=q.getAuthConnector(n),r=m.getAccountData(n),i=L.getConnectedConnectorId(m.state.activeChain),o=V.getConnections(n);if(!n)throw new Error("AppKit:getAccount - namespace is required");const a=o.flatMap(c=>c.accounts.map(({address:l,type:u,publicKey:d})=>J.createAccount(n,l,u||"eoa",d)));if(r)return{allAccounts:a,caipAddress:r.caipAddress,address:J.getPlainAddress(r.caipAddress),isConnected:!!r.caipAddress,status:r.status,embeddedWalletInfo:s&&i===U.CONNECTOR_ID.AUTH?{user:r.user?{...r.user,username:L.getConnectedSocialUsername()}:void 0,authProvider:r.socialProvider||"email",accountType:nn(n),isSmartAccountDeployed:!!r.smartAccountDeployed}:void 0}}subscribeAccount(e,n){const s=()=>{const r=this.getAccount(n);r&&e(r)};n?m.subscribeChainProp("accountState",s,n):m.subscribe(s),q.subscribe(s)}subscribeNetwork(e){return m.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?m.subscribeChainProp("accountState",s=>e(s==null?void 0:s.connectedWalletInfo),n):m.subscribeChainProp("accountState",s=>e(s==null?void 0:s.connectedWalletInfo))}subscribeShouldUpdateToAddress(e){m.subscribeChainProp("accountState",n=>e(n==null?void 0:n.shouldUpdateToAddress))}subscribeCaipNetworkChange(e){m.subscribeKey("activeCaipNetwork",e)}getState(){return Hn.state}getRemoteFeatures(){return k.state.remoteFeatures}subscribeState(e){return Hn.subscribe(e)}subscribeRemoteFeatures(e){return k.subscribeKey("remoteFeatures",e)}showErrorMessage(e){An.showError(e)}showSuccessMessage(e){An.showSuccess(e)}getEvent(){return{...he.state}}subscribeEvents(e){return he.subscribe(e)}replace(e){se.replace(e)}redirect(e){se.push(e)}popTransactionStack(e){se.popTransactionStack(e)}isOpen(){return pe.state.open}isTransactionStackEmpty(){return se.state.transactionStack.length===0}static getInstance(){return this.instance}updateFeatures(e){k.setFeatures(e)}updateRemoteFeatures(e){k.setRemoteFeatures(e)}updateOptions(e){const s={...k.state||{},...e};k.setOptions(s)}setConnectMethodsOrder(e){k.setConnectMethodsOrder(e)}setWalletFeaturesOrder(e){k.setWalletFeaturesOrder(e)}setCollapseWallets(e){k.setCollapseWallets(e)}setSocialsOrder(e){k.setSocialsOrder(e)}getConnectMethodsOrder(){return li.getConnectOrderMethod(k.state.features,q.getConnectors())}addNetwork(e,n){if(this.chainAdapters&&!this.chainAdapters[e])throw new Error(`Adapter for namespace ${e} doesn't exist`);const s=this.extendCaipNetwork(n,this.options);this.getCaipNetworks().find(r=>r.id===s.id)||m.addNetwork(s)}removeNetwork(e,n){if(this.chainAdapters&&!this.chainAdapters[e])throw new Error(`Adapter for namespace ${e} doesn't exist`);this.getCaipNetworks().find(r=>r.id===n)&&m.removeNetwork(e,n)}}let op=!1;class pm extends lO{async open(e){q.isConnected()||await super.open(e)}async close(){var e;if(await super.close(),this.options.manualWCControl){const n=(e=m.getAccountData(this.activeChainNamespace))==null?void 0:e.address;V.finalizeWcConnection(n)}}async syncIdentity(e){return Promise.resolve()}async syncBalance(e){return Promise.resolve()}async injectModalUi(){if(!op&&J.isClient()){if(await Go(()=>import("./basic-a52ce1cd.js"),["assets/basic-a52ce1cd.js","assets/index-8277ff88.js","assets/index-0ed0aefc.js","assets/index-1b1958de.css","assets/index-2afd209b.js"]),await Go(()=>import("./w3m-modal-25d455a7.js"),["assets/w3m-modal-25d455a7.js","assets/index-8277ff88.js","assets/index-0ed0aefc.js","assets/index-1b1958de.css","assets/index-2afd209b.js"]),!document.querySelector("w3m-modal")){const n=document.createElement("w3m-modal");!k.state.disableAppend&&!k.state.enableEmbedded&&document.body.insertAdjacentElement("beforeend",n)}op=!0}}}const uO="1.8.11";function dO(t){return new pm({...t,basic:!0,sdkVersion:`html-core-${uO}`})}const hR=Object.freeze(Object.defineProperty({__proto__:null,AppKit:pm,createAppKit:dO},Symbol.toStringTag,{value:"Module"}));export{bp as $,Q as A,re as B,q as C,Ml as D,he as E,kt as F,nn as G,Oi as H,en as I,hn as J,G2 as K,v2 as L,pe as M,Bm as N,k as O,lR as P,Nl as Q,se as R,An as S,Ut as T,nm as U,Mr as V,li as W,hp as X,te as Y,mo as Z,Z as _,J as a,mO as a0,yO as a1,vO as a2,wO as a3,EO as a4,bO as a5,CO as a6,AO as a7,go as a8,_O as a9,SO as aa,IO as ab,NO as ac,hR as ad,V as b,U as c,cR as d,Qt as e,Tc as f,Cp as g,dR as h,zo as i,Xs as j,qn as k,we as l,aR as m,m as n,yr as o,L as p,Xe as q,uR as r,fs as s,ke as t,nt as u,st as v,rn as w,oR as x,_p as y,Oy as z};
|
|
253
|
+
`);super(o,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,"details",{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,"metaMessages",{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,"version",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BaseError"}),this.details=s,this.docsPath=r,this.metaMessages=n.metaMessages,this.name=n.name??this.name,this.shortMessage=e,this.version=cm}walk(e){return lm(this,e)}}function lm(t,e){return e!=null&&e(t)?t:t&&typeof t=="object"&&"cause"in t&&t.cause!==void 0?lm(t.cause,e):e?null:t}class um extends Br{constructor({size:e,targetSize:n,type:s}){super(`${s.charAt(0).toUpperCase()}${s.slice(1).toLowerCase()} size (${e}) exceeds padding size (${n}).`,{name:"SizeExceedsPaddingSizeError"})}}function mu(t,{dir:e,size:n=32}={}){return typeof t=="string"?X2(t,{dir:e,size:n}):Z2(t,{dir:e,size:n})}function X2(t,{dir:e,size:n=32}={}){if(n===null)return t;const s=t.replace("0x","");if(s.length>n*2)throw new um({size:Math.ceil(s.length/2),targetSize:n,type:"hex"});return`0x${s[e==="right"?"padEnd":"padStart"](n*2,"0")}`}function Z2(t,{dir:e,size:n=32}={}){if(n===null)return t;if(t.length>n)throw new um({size:t.length,targetSize:n,type:"bytes"});const s=new Uint8Array(n);for(let r=0;r<n;r++){const i=e==="right";s[i?r:n-r-1]=t[i?r:t.length-r-1]}return s}class Q2 extends Br{constructor({max:e,min:n,signed:s,size:r,value:i}){super(`Number "${i}" is not in safe ${r?`${r*8}-bit ${s?"signed":"unsigned"} `:""}integer range ${e?`(${n} to ${e})`:`(above ${n})`}`,{name:"IntegerOutOfRangeError"})}}class eO extends Br{constructor({givenSize:e,maxSize:n}){super(`Size cannot exceed ${n} bytes. Given size: ${e} bytes.`,{name:"SizeOverflowError"})}}function dm(t,{size:e}){if(rp(t)>e)throw new eO({givenSize:rp(t),maxSize:e})}const tO=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function ip(t,e={}){return typeof t=="number"||typeof t=="bigint"?sO(t,e):typeof t=="string"?iO(t,e):typeof t=="boolean"?nO(t,e):hm(t,e)}function nO(t,e={}){const n=`0x${Number(t)}`;return typeof e.size=="number"?(dm(n,{size:e.size}),mu(n,{size:e.size})):n}function hm(t,e={}){let n="";for(let r=0;r<t.length;r++)n+=tO[t[r]];const s=`0x${n}`;return typeof e.size=="number"?(dm(s,{size:e.size}),mu(s,{dir:"right",size:e.size})):s}function sO(t,e={}){const{signed:n,size:s}=e,r=BigInt(t);let i;s?n?i=(1n<<BigInt(s)*8n-1n)-1n:i=2n**(BigInt(s)*8n)-1n:typeof t=="number"&&(i=BigInt(Number.MAX_SAFE_INTEGER));const o=typeof i=="bigint"&&n?-i-1n:0;if(i&&r>i||r<o){const c=typeof t=="bigint"?"n":"";throw new Q2({max:i?`${i}${c}`:void 0,min:`${o}${c}`,signed:n,size:s,value:`${t}${c}`})}const a=`0x${(n&&r<0?(1n<<BigInt(s*8))+BigInt(r):r).toString(16)}`;return s?mu(a,{size:s}):a}const rO=new TextEncoder;function iO(t,e={}){const n=rO.encode(t);return hm(n,e)}const Do={ERROR_CODE_UNRECOGNIZED_CHAIN_ID:4902,ERROR_CODE_DEFAULT:5e3,ERROR_INVALID_CHAIN_ID:32603};class oO extends By{async setUniversalProvider(e){if(!this.namespace)throw new Error("UniversalAdapter:setUniversalProvider - namespace is required");return this.addConnector(new Fy({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 getAccounts({namespace:e}){var r,i,o,a;const n=this.provider,s=((a=(o=(i=(r=n==null?void 0:n.session)==null?void 0:r.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:s.map(c=>J.createAccount(e,c,e==="bip122"?"payment":"eoa"))})}async syncConnectors(){return Promise.resolve()}async getBalance(e){var o,a,c,l,u;if(!(e.caipNetwork&&we.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 s=m.getAccountData();if(s!=null&&s.balanceLoading&&e.chainId===((l=m.state.activeCaipNetwork)==null?void 0:l.id))return{balance:(s==null?void 0:s.balance)||"0.00",symbol:(s==null?void 0:s.balanceSymbol)||""};const i=(await m.fetchTokenBalance()).find(d=>{var h,p;return d.chainId===`${(h=e.caipNetwork)==null?void 0:h.chainNamespace}:${e.chainId}`&&d.symbol===((p=e.caipNetwork)==null?void 0:p.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:s,address:r}=e;if(!n)throw new Error("UniversalAdapter:signMessage - provider is undefined");let i="";return((o=m.state.activeCaipNetwork)==null?void 0:o.chainNamespace)===U.CHAIN.SOLANA?i=(await n.request({method:"solana_signMessage",params:{message:jr.encode(new TextEncoder().encode(s)),pubkey:r}},(a=m.state.activeCaipNetwork)==null?void 0:a.caipNetworkId)).signature:i=await n.request({method:"personal_sign",params:[s,r]},(c=m.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 r,i,o,a,c,l;const{caipNetwork:n}=e,s=this.getWalletConnectConnector();if(n.chainNamespace===U.CHAIN.EVM)try{await((r=s.provider)==null?void 0:r.request({method:"wallet_switchEthereumChain",params:[{chainId:ip(n.id)}]}))}catch(u){if(u.code===Do.ERROR_CODE_UNRECOGNIZED_CHAIN_ID||u.code===Do.ERROR_INVALID_CHAIN_ID||u.code===Do.ERROR_CODE_DEFAULT||((o=(i=u==null?void 0:u.data)==null?void 0:i.originalError)==null?void 0:o.code)===Do.ERROR_CODE_UNRECOGNIZED_CHAIN_ID)try{await((l=s.provider)==null?void 0:l.request({method:"wallet_addEthereumChain",params:[{chainId:ip(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")}}s.provider.setDefaultChain(n.caipNetworkId)}getWalletConnectProvider(){const e=this.connectors.find(s=>s.type==="WALLET_CONNECT");return e==null?void 0:e.provider}}const aO=["email","socials","swaps","onramp","activity","reownBranding","multiWallet","emailCapture","payWithExchange","payments","reownAuthentication"],Mo={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?we.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?we.DEFAULT_REMOTE_FEATURES.socials:typeof t=="boolean"?t?we.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?we.DEFAULT_REMOTE_FEATURES.swaps:typeof t=="boolean"?t?we.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?we.DEFAULT_REMOTE_FEATURES.onramp:typeof t=="boolean"?t?we.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?we.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?we.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:()=>we.DEFAULT_REMOTE_FEATURES.multiWallet},payWithExchange:{apiFeatureName:"fund_from_exchange",localFeatureName:"payWithExchange",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>!!t.isEnabled,processFallback:()=>we.DEFAULT_REMOTE_FEATURES.payWithExchange},payments:{apiFeatureName:"payments",localFeatureName:"payments",returnType:!1,isLegacy:!1,isAvailableOnBasic:!1,processApi:t=>!!t.isEnabled,processFallback:()=>we.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"?we.DEFAULT_REMOTE_FEATURES.reownAuthentication:!!t}},cO={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=Mo[e],s=n.isLegacy?`"features.${n.localFeatureName}" (now "${e}")`:`"features.${e}"`;this.localSettingsOverridden.add(s)}},processFeature(t,e,n,s,r){const i=Mo[t],o=e[i.localFeatureName];if(r&&!i.isAvailableOnBasic)return!1;if(s){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 Mo[t].processApi(e)},processFallbackFeature(t,e){return Mo[t].processFallback(e)},async fetchRemoteFeatures(t){const e=t.basic??!1,n=t.features||{};this.localSettingsOverridden.clear();let s=null,r=!1;try{s=await Q.fetchProjectConfig(),r=s!=null}catch(o){console.warn("[Reown Config] Failed to fetch remote project configuration. Using local/default values.",o)}const i=r&&!e?we.DEFAULT_REMOTE_FEATURES:we.DEFAULT_REMOTE_FEATURES_DISABLED;try{for(const o of aO){const a=this.processFeature(o,n,s,r,e);Object.assign(i,{[o]:a})}}catch(o){return console.warn("[Reown Config] Failed to process the configuration from Cloud. Using default values.",o),we.DEFAULT_REMOTE_FEATURES}if(r&&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.`;kt.open({debugMessage:Gt.ALERT_WARNINGS.LOCAL_CONFIGURATION_IGNORED.debugMessage(o)},"warning")}return i}};class lO{constructor(e){this.chainNamespaces=[],this.features={},this.remoteFeatures={},this.reportedAlertErrors={},this.getCaipNetwork=(n,s)=>{var r,i,o;if(n){const a=(r=m.getCaipNetworks(n))==null?void 0:r.find(u=>u.id===s);if(a)return a;const c=(i=m.getNetworkData(n))==null?void 0:i.caipNetwork;return c||((o=m.getRequestedCaipNetworks(n).filter(u=>u.chainNamespace===n))==null?void 0:o[0])}return m.state.activeCaipNetwork||this.defaultCaipNetwork},this.getCaipNetworkId=()=>{const n=this.getCaipNetwork();if(n)return n.id},this.getCaipNetworks=n=>m.getCaipNetworks(n),this.getActiveChainNamespace=()=>m.state.activeChain,this.setRequestedCaipNetworks=(n,s)=>{m.setRequestedCaipNetworks(n,s)},this.getApprovedCaipNetworkIds=()=>m.getAllApprovedCaipNetworkIds(),this.getCaipAddress=n=>{var s,r;return m.state.activeChain===n||!n?m.state.activeCaipAddress:(r=(s=m.state.chains.get(n))==null?void 0:s.accountState)==null?void 0:r.caipAddress},this.setClientId=n=>{re.setClientId(n)},this.getProvider=n=>Ue.getProvider(n),this.getProviderType=n=>Ue.getProviderId(n),this.getPreferredAccountType=n=>nn(n),this.setCaipAddress=(n,s,r=!1)=>{m.setAccountProp("caipAddress",n,s,r),m.setAccountProp("address",J.getPlainAddress(n),s,r)},this.setBalance=(n,s,r)=>{m.setAccountProp("balance",n,r),m.setAccountProp("balanceSymbol",s,r)},this.setProfileName=(n,s)=>{m.setAccountProp("profileName",n,s)},this.setProfileImage=(n,s)=>{m.setAccountProp("profileImage",n,s)},this.setUser=(n,s)=>{m.setAccountProp("user",n,s)},this.resetAccount=n=>{m.resetAccount(n)},this.setCaipNetwork=n=>{m.setActiveCaipNetwork(n)},this.setCaipNetworkOfNamespace=(n,s)=>{m.setChainNetworkData(s,{caipNetwork:n})},this.setStatus=(n,s)=>{m.setAccountProp("status",n,s),q.isConnected()?L.setConnectionStatus("connected"):L.setConnectionStatus("disconnected")},this.getAddressByChainNamespace=n=>{var s;return(s=m.getAccountData(n))==null?void 0:s.address},this.setConnectors=n=>{const s=[...q.state.allConnectors,...n];q.setConnectors(s)},this.setConnections=(n,s)=>{L.setConnections(n,s),V.setConnections(n,s)},this.fetchIdentity=n=>re.fetchIdentity(n),this.getReownName=n=>hi.getNamesForAddress(n),this.getConnectors=()=>q.getConnectors(),this.getConnectorImage=n=>Cp.getConnectorImage(n),this.getConnections=n=>this.remoteFeatures.multiWallet?Xo.getConnectionsData(n).connections:(kt.open(U.REMOTE_FEATURES_ALERTS.MULTI_WALLET_NOT_ENABLED.DEFAULT,"info"),[]),this.getRecentConnections=n=>this.remoteFeatures.multiWallet?Xo.getConnectionsData(n).recentConnections:(kt.open(U.REMOTE_FEATURES_ALERTS.MULTI_WALLET_NOT_ENABLED.DEFAULT,"info"),[]),this.switchConnection=async n=>{if(!this.remoteFeatures.multiWallet){kt.open(U.REMOTE_FEATURES_ALERTS.MULTI_WALLET_NOT_ENABLED.DEFAULT,"info");return}await V.switchConnection(n)},this.deleteConnection=n=>{if(!this.remoteFeatures.multiWallet){kt.open(U.REMOTE_FEATURES_ALERTS.MULTI_WALLET_NOT_ENABLED.DEFAULT,"info");return}L.deleteAddressFromConnection(n),V.syncStorageConnections()},this.setConnectedWalletInfo=(n,s)=>{const r=Ue.getProviderId(s),i=n?{...n,type:r}:void 0;m.setAccountProp("connectedWalletInfo",i,s)},this.getIsConnectedState=()=>!!m.state.activeCaipAddress,this.addAddressLabel=(n,s,r)=>{var o;const i=((o=m.getAccountData(r))==null?void 0:o.addressLabels)||{};m.setAccountProp("addressLabels",{...i,[n]:s},r)},this.removeAddressLabel=(n,s)=>{var i;const r=((i=m.getAccountData(s))==null?void 0:i.addressLabels)||{};m.setAccountProp("addressLabels",{...r,[n]:void 0},s)},this.getAddress=n=>{var r;const s=n||m.state.activeChain;return(r=m.getAccountData(s))==null?void 0:r.address},this.resetNetwork=n=>{m.resetNetwork(n)},this.addConnector=n=>{q.addConnector(n)},this.resetWcConnection=()=>{V.resetWcConnection()},this.setAddressExplorerUrl=(n,s)=>{m.setAccountProp("addressExplorerUrl",n,s)},this.setSmartAccountDeployed=(n,s)=>{m.setAccountProp("smartAccountDeployed",n,s)},this.setPreferredAccountType=(n,s)=>{m.setAccountProp("preferredAccountType",n,s)},this.setEIP6963Enabled=n=>{k.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 s=e==null?void 0:e.map(i=>i.namespace).filter(i=>!!i);if(s!=null&&s.length)return[...new Set(s)];const r=n==null?void 0:n.map(i=>i.chainNamespace);return[...new Set(r)]}async initialize(e){var n,s,r,i,o;if(this.initializeProjectSettings(e),this.initControllers(e),await this.initChainAdapters(),this.sendInitializeEvent(e),k.state.enableReconnect?(await this.syncExistingConnection(),await this.syncAdapterConnections()):await this.unSyncExistingConnection(),this.remoteFeatures=await cO.fetchRemoteFeatures(e),await Q.fetchUsage(),k.setRemoteFeatures(this.remoteFeatures),this.remoteFeatures.onramp&&jc.setOnrampProviders(this.remoteFeatures.onramp),((n=k.state.remoteFeatures)!=null&&n.email||Array.isArray((s=k.state.remoteFeatures)==null?void 0:s.socials)&&((r=k.state.remoteFeatures)==null?void 0:r.socials.length)>0)&&await this.checkAllowedOrigins(),(i=k.state.features)!=null&&i.reownAuthentication||(o=k.state.remoteFeatures)!=null&&o.reownAuthentication){const{ReownAuthentication:a}=await Go(()=>import("./features-abf09337.js"),["assets/features-abf09337.js","assets/index-6c5c6262.js","assets/index-3632219d.css","assets/index-f10062b6.js"]),c=k.state.siwx;c instanceof a||(c&&console.warn("ReownAuthentication option is enabled, SIWX configuration will be overridden."),k.setSIWX(new a))}}async openSend(e){var i;const n=e.namespace||m.state.activeChain,s=this.getCaipAddress(n),r=(i=this.getCaipNetwork(n))==null?void 0:i.id;if(!s)throw new Error("openSend: caipAddress not found");if((r==null?void 0:r.toString())!==e.chainId.toString()){const o=m.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=Gg.getTokenSymbolByAddress(e.assetAddress);o&&await Q.fetchTokenImages([o])}catch{}return await pe.open({view:"WalletSend",data:{send:e}}),new Promise((o,a)=>{const c=de.subscribeKey("hash",d=>{d&&(u(),o({hash:d}))}),l=pe.subscribe(d=>{d.open||(u(),a(new Error("Modal closed")))}),u=this.createCleanupHandler([c,l])})}toModalOptions(){function e(s){return(s==null?void 0:s.view)==="Swap"}function n(s){return(s==null?void 0:s.view)==="WalletSend"}return{isSwap:e,isSend:n}}async checkAllowedOrigins(){try{const e=await Q.fetchAllowedOrigins();if(!J.isClient())return;const n=window.location.origin;ys.isOriginAllowed(n,e,U.DEFAULT_ALLOWED_ANCESTORS)||kt.open(Gt.ALERT_ERRORS.ORIGIN_NOT_ALLOWED,"error")}catch(e){if(!(e instanceof Error))return;switch(e.message){case"RATE_LIMITED":kt.open(Gt.ALERT_ERRORS.RATE_LIMITED_APP_CONFIGURATION,"error");break;case"SERVER_ERROR":{const n=e.cause instanceof Error?e.cause:e;kt.open({displayMessage:Gt.ALERT_ERRORS.SERVER_ERROR_APP_CONFIGURATION.displayMessage,debugMessage:Gt.ALERT_ERRORS.SERVER_ERROR_APP_CONFIGURATION.debugMessage(n.message)},"error");break}}}}createCleanupHandler(e){return()=>{e.forEach(n=>{try{n()}catch{}})}}sendInitializeEvent(e){var s;const{...n}=e;delete n.adapters,delete n.universalProvider,he.sendEvent({type:"track",event:"INITIALIZE",properties:{...n,networks:e.networks.map(r=>r.id),siweConfig:{options:((s=e.siweConfig)==null?void 0:s.options)||{}}}})}initControllers(e){this.initializeOptionsController(e),this.initializeChainController(e),this.initializeThemeController(e),this.initializeConnectionController(e),this.initializeConnectorController()}initAdapterController(){Ip.initialize(this.chainAdapters)}initializeThemeController(e){e.themeMode&&Ut.setThemeMode(e.themeMode),e.themeVariables&&Ut.setThemeVariables(e.themeVariables)}initializeChainController(e){if(!this.connectionControllerClient)throw new Error("ConnectionControllerClient must be set");m.initialize(e.adapters??[],this.caipNetworks,{connectionControllerClient:this.connectionControllerClient});const n=this.getDefaultNetwork();n&&m.setActiveCaipNetwork(n)}initializeConnectionController(e){V.initialize(e.adapters??[]),V.setWcBasic(e.basic??!1)}initializeConnectorController(){q.initialize(this.chainNamespaces)}initializeProjectSettings(e){k.setProjectId(e.projectId),k.setSdkVersion(e.sdkVersion)}initializeOptionsController(e){var r;k.setDebug(e.debug!==!1),k.setEnableWalletGuide(e.enableWalletGuide!==!1),k.setEnableWallets(e.enableWallets!==!1),k.setEIP6963Enabled(e.enableEIP6963!==!1),k.setEnableNetworkSwitch(e.enableNetworkSwitch!==!1),k.setEnableReconnect(e.enableReconnect!==!1),k.setEnableMobileFullScreen(e.enableMobileFullScreen===!0),k.setCoinbasePreference(e.coinbasePreference),k.setEnableAuthLogger(e.enableAuthLogger!==!1),k.setCustomRpcUrls(e.customRpcUrls),k.setEnableEmbedded(e.enableEmbedded),k.setAllWallets(e.allWallets),k.setIncludeWalletIds(e.includeWalletIds),k.setExcludeWalletIds(e.excludeWalletIds),k.setFeaturedWalletIds(e.featuredWalletIds),k.setTokens(e.tokens),k.setTermsConditionsUrl(e.termsConditionsUrl),k.setPrivacyPolicyUrl(e.privacyPolicyUrl),k.setCustomWallets(e.customWallets),k.setFeatures(e.features),k.setAllowUnsupportedChain(e.allowUnsupportedChain),k.setUniversalProviderConfigOverride(e.universalProviderConfigOverride),k.setPreferUniversalLinks(e.experimental_preferUniversalLinks),k.setDefaultAccountTypes(e.defaultAccountTypes);const n=this.getDefaultMetaData();if(!e.metadata&&n&&(e.metadata=n),k.setMetadata(e.metadata),k.setDisableAppend(e.disableAppend),k.setEnableEmbedded(e.enableEmbedded),k.setSIWX(e.siwx),this.features=k.state.features??{},!e.projectId){kt.open(Gt.ALERT_ERRORS.PROJECT_ID_NOT_CONFIGURED,"error");return}if(((r=e.adapters)==null?void 0:r.find(i=>i.namespace===U.CHAIN.EVM))&&e.siweConfig){if(e.siwx)throw new Error("Cannot set both `siweConfig` and `siwx` options");k.setSIWX(e.siweConfig.mapToSIWX())}}getDefaultMetaData(){var e,n,s,r;return J.isClient()?{name:((n=(e=document.getElementsByTagName("title"))==null?void 0:e[0])==null?void 0:n.textContent)||"",description:((s=document.querySelector('meta[property="og:description"]'))==null?void 0:s.content)||"",url:window.location.origin,icons:[((r=document.querySelector('link[rel~="icon"]'))==null?void 0:r.href)||""]}:null}setUnsupportedNetwork(e){const n=this.getActiveChainNamespace();if(n){const s=yr.getUnsupportedNetwork(`${n}:${e}`);m.setActiveCaipNetwork(s)}}getDefaultNetwork(){return yr.getCaipNetworkFromStorage(this.defaultCaipNetwork)}extendCaipNetwork(e,n){return yr.extendCaipNetwork(e,{customNetworkImageUrls:n.chainImages,projectId:n.projectId})}extendCaipNetworks(e){return yr.extendCaipNetworks(e.networks,{customNetworkImageUrls:e.chainImages,customRpcUrls:e.customRpcUrls,projectId:e.projectId})}extendDefaultCaipNetwork(e){const n=e.networks.find(r=>{var i;return r.id===((i=e.defaultNetwork)==null?void 0:i.id)});return n?yr.extendCaipNetwork(n,{customNetworkImageUrls:e.chainImages,customRpcUrls:e.customRpcUrls,projectId:e.projectId}):void 0}async disconnectConnector(e,n){var s,r;try{this.setLoading(!0,e);let i={connections:[]};const o=this.getAdapter(e);return(((r=(s=m.state.chains.get(e))==null?void 0:s.accountState)==null?void 0:r.caipAddress)||!k.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=m.state.activeChain,n=this.getAdapter(e),s=(l=this.getCaipNetwork(e))==null?void 0:l.id,r=V.getConnections(e),i=this.remoteFeatures.multiWallet,o=r.length>0;if(!n)throw new Error("Adapter not found");const a=await n.connectWalletConnect(s);(!o||!i)&&this.close(),this.setClientId((a==null?void 0:a.clientId)||null),L.setConnectedNamespaces([...m.state.chains.keys()]),await this.syncWalletConnectAccount(),await hn.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:s,provider:r})=>{var a;const i=m.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:s,provider:r,chainId:(a=this.getCaipNetwork())==null?void 0:a.id})),L.addConnectedNamespace(i),this.syncConnectedWalletInfo(i))},disconnectConnector:async e=>{await this.disconnectConnector(e.namespace,e.id)},disconnect:async e=>{var l;const{id:n,chainNamespace:s,initialDisconnect:r}=e||{},i=s||m.state.activeChain,o=q.getConnectorId(i),a=n===U.CONNECTOR_ID.AUTH||o===U.CONNECTOR_ID.AUTH,c=n===U.CONNECTOR_ID.WALLET_CONNECT||o===U.CONNECTOR_ID.WALLET_CONNECT;try{const u=Array.from(m.state.chains.keys());let d=s?[s]:u;(c||a)&&(d=u);const h=d.map(async f=>{const y=q.getConnectorId(f),b=n||y,_=await this.disconnectConnector(f,b);_&&(a&&L.deleteConnectedSocialProvider(),_.connections.forEach(A=>{L.addDisconnectedConnectorId(A.connectorId,f)})),r&&this.onDisconnectNamespace({chainNamespace:f,closeModal:!1})}),p=await Promise.allSettled(h);de.resetSend(),V.resetWcConnection(),(l=hn.getSIWX())!=null&&l.signOutOnDisconnect&&await hn.clearSessions(),q.setFilterByNamespace(void 0),V.syncStorageConnections();const g=p.filter(f=>f.status==="rejected");if(g.length>0)throw new Error(g.map(f=>f.reason.message).join(", "));he.sendEvent({type:"track",event:"DISCONNECT_SUCCESS",properties:{namespace:s||"all"}})}catch(u){throw new Error(`Failed to disconnect chains: ${u.message}`)}},checkInstalled:e=>e?e.some(n=>{var s;return!!((s=window.ethereum)!=null&&s[String(n)])}):!!window.ethereum,signMessage:async e=>{const n=m.state.activeChain,s=this.getAdapter(m.state.activeChain);if(!n)throw new Error("signMessage: namespace not found");if(!s)throw new Error("signMessage: adapter not found");const r=this.getAddress(n);if(!r)throw new Error("signMessage: address not found");const i=await(s==null?void 0:s.signMessage({message:e,address:r,provider:Ue.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(we.SEND_SUPPORTED_NAMESPACES.includes(n)){const s=this.getAdapter(n);if(!s)throw new Error("sendTransaction: adapter not found");const r=Ue.getProvider(n),i=await(s==null?void 0:s.sendTransaction({...e,caipNetwork:this.getCaipNetwork(),provider:r}));return(i==null?void 0:i.hash)||""}return""},estimateGas:async e=>{const n=e.chainNamespace;if(n===U.CHAIN.EVM){const s=this.getAdapter(n);if(!s)throw new Error("estimateGas: adapter is required but got undefined");const r=Ue.getProvider(n),i=this.getCaipNetwork();if(!i)throw new Error("estimateGas: caipNetwork is required but got undefined");const o=await(s==null?void 0:s.estimateGas({...e,provider:r,caipNetwork:i}));return(o==null?void 0:o.gas)||0n}return 0n},getEnsAvatar:async()=>{var r;const e=m.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((r=this.getCaipNetwork())==null?void 0:r.id),chainNamespace:e});const s=m.getAccountData();return(s==null?void 0:s.profileImage)||!1},getEnsAddress:async e=>await ys.resolveReownName(e),writeContract:async e=>{const n=m.state.activeChain,s=this.getAdapter(n);if(!n)throw new Error("writeContract: namespace is required but got undefined");if(!s)throw new Error("writeContract: adapter is required but got undefined");const r=this.getCaipNetwork(),i=this.getCaipAddress(),o=Ue.getProvider(n);if(!r||!i)throw new Error("writeContract: caipNetwork or caipAddress is required but got undefined");const a=await(s==null?void 0:s.writeContract({...e,caipNetwork:r,provider:o,caipAddress:i}));return a==null?void 0:a.hash},parseUnits:(e,n)=>{const s=this.getAdapter(m.state.activeChain);if(!s)throw new Error("parseUnits: adapter is required but got undefined");return(s==null?void 0:s.parseUnits({value:e,decimals:n}))??0n},formatUnits:(e,n)=>{const s=this.getAdapter(m.state.activeChain);if(!s)throw new Error("formatUnits: adapter is required but got undefined");return(s==null?void 0:s.formatUnits({value:e,decimals:n}))??"0"},getCapabilities:async e=>{const n=this.getAdapter(m.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(m.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(m.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(m.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),s=this.getCaipNetwork(e);!s||!n||this.updateNativeBalance(n,s==null?void 0:s.id,e)}},V.setClient(this.connectionControllerClient)}async onConnectExternal(e){var l,u,d,h,p,g,f,y;const n=m.state.activeChain,s=e.chain||n,r=this.getAdapter(s);let i=!0;if(e.type===Le.CONNECTOR_TYPE_AUTH&&U.AUTH_CONNECTOR_SUPPORTED_CHAINS.some(A=>q.getConnectorId(A)===U.CONNECTOR_ID.AUTH)&&e.chain!==n&&(i=!1),e.chain&&e.chain!==n&&!e.caipNetwork){const b=this.getCaipNetworks().find(_=>_.chainNamespace===e.chain);b&&i&&this.setCaipNetwork(b)}if(!s)throw new Error("connectExternal: namespace not found");if(!r)throw new Error("connectExternal: adapter not found");const o=this.getCaipNetwork(s),a=e.caipNetwork||o,c=await r.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:((p=(h=(d=(u=e.caipNetwork)==null?void 0:u.rpcUrls)==null?void 0:d.default)==null?void 0:h.http)==null?void 0:p[0])||((y=(f=(g=o==null?void 0:o.rpcUrls)==null?void 0:g.default)==null?void 0:f.http)==null?void 0:y[0])});if(c)return L.addConnectedNamespace(s),this.syncProvider({...c,chainNamespace:s}),this.setStatus("connected",s),this.syncConnectedWalletInfo(s),L.removeDisconnectedConnectorId(e.id,s),{address:c.address,connectedCaipNetwork:a}}async connectInactiveNamespaces(e,n){var a;const s=e.type===Le.CONNECTOR_TYPE_AUTH,r=Oi.getOtherAuthNamespaces((a=n==null?void 0:n.connectedCaipNetwork)==null?void 0:a.chainNamespace),i=m.state.activeCaipNetwork,o=this.getAdapter(i==null?void 0:i.chainNamespace);s&&(await Promise.all(r.map(async c=>{var l,u,d;try{const h=Ue.getProvider(c),p=this.getCaipNetwork(c),g=this.getAdapter(c);await(g==null?void 0:g.connect({...e,provider:h,socialUri:void 0,chainId:p==null?void 0:p.id,rpcUrl:(d=(u=(l=p==null?void 0:p.rpcUrls)==null?void 0:l.default)==null?void 0:u.http)==null?void 0:d[0]}))&&(L.addConnectedNamespace(c),L.removeDisconnectedConnectorId(e.id,c),this.setStatus("connected",c),this.syncConnectedWalletInfo(c))}catch(h){kt.warn(Gt.ALERT_WARNINGS.INACTIVE_NAMESPACE_NOT_CONNECTED.displayMessage,Gt.ALERT_WARNINGS.INACTIVE_NAMESPACE_NOT_CONNECTED.debugMessage(c,h instanceof Error?h.message:void 0),Gt.ALERT_WARNINGS.INACTIVE_NAMESPACE_NOT_CONNECTED.code)}})),i&&await(o==null?void 0:o.switchNetwork({caipNetwork:i})))}getApprovedCaipNetworksData(){var n,s,r,i,o;if(Ue.getProviderId(m.state.activeChain)===Le.CONNECTOR_TYPE_WALLET_CONNECT){const a=(s=(n=this.universalProvider)==null?void 0:n.session)==null?void 0:s.namespaces;return{supportsAllNetworks:((o=(i=(r=this.universalProvider)==null?void 0:r.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 r=Ue.getProviderId(n);if(e.chainNamespace===m.state.activeChain){const i=this.getAdapter(n);await(i==null?void 0:i.switchNetwork({caipNetwork:e}))}else if(this.setCaipNetwork(e),r===Le.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 s=n.chains||[],r=n.accounts.map(i=>{const{chainId:o,chainNamespace:a}=tt.parseCaipAddress(i);return`${a}:${o}`});return Array.from(new Set([...s,...r]))})}createAdapters(e){return this.createClients(),this.chainNamespaces.reduce((n,s)=>{var i,o;const r=e==null?void 0:e.find(a=>a.namespace===s);return r?(r.construct({namespace:s,projectId:(i=this.options)==null?void 0:i.projectId,networks:(o=this.caipNetworks)==null?void 0:o.filter(({chainNamespace:a})=>a===s)}),n[s]=r):n[s]=new oO({namespace:s,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 s=L.getConnectionStatus();k.state.enableReconnect===!1?this.setStatus("disconnected",e):s==="connected"?this.setStatus("connecting",e):s==="disconnected"?(L.clearAddressCache(),this.setStatus(s,e)):this.setStatus(s,e),n.on("switchNetwork",({address:r,chainId:i})=>{var l,u;const o=this.getCaipNetworks().find(d=>d.id.toString()===i.toString()||d.caipNetworkId.toString()===i.toString()),a=m.state.activeChain===e,c=(u=(l=m.state.chains.get(e))==null?void 0:l.accountState)==null?void 0:u.address;if(o){const d=a&&r?r:c;d&&this.syncAccount({address:d,chainId:o.id,chainNamespace:e})}else this.setUnsupportedNetwork(i)}),n.on("disconnect",()=>{const r=this.remoteFeatures.multiWallet,i=Array.from(V.state.connections.values()).flat();this.onDisconnectNamespace({chainNamespace:e,closeModal:!r||i.length===0})}),n.on("connections",r=>{this.setConnections(r,e)}),n.on("pendingTransactions",()=>{const r=this.getAddress(e),i=m.state.activeCaipNetwork;!r||!(i!=null&&i.id)||this.updateNativeBalance(r,i.id,i.chainNamespace)}),n.on("accountChanged",({address:r,chainId:i,connector:o})=>{var u,d;this.handlePreviousConnectorConnection(o);const a=m.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=m.getNetworkData(e))==null?void 0:u.caipNetwork)==null?void 0:d.id,l=i||c;a&&l?this.syncAccount({address:r,chainId:l,chainNamespace:e}):!a&&l?(this.syncAccountInfo(r,l,e),this.syncBalance({address:r,chainId:l,chainNamespace:e})):this.syncAccountInfo(r,i,e),L.addConnectedNamespace(e)})}async handlePreviousConnectorConnection(e){var c;const n=e==null?void 0:e.chain,s=e==null?void 0:e.id,r=q.getConnectorId(n),i=(c=k.state.remoteFeatures)==null?void 0:c.multiWallet,a=n&&s&&r&&r!==s&&!i;try{a&&await V.disconnect({id:r,namespace:n})}catch(l){console.warn("Error disconnecting previous connector",l)}}async createUniversalProviderForAdapter(e){var n,s,r;await this.getUniversalProvider(),this.universalProvider&&await((r=(s=(n=this.chainAdapters)==null?void 0:n[e])==null?void 0:s.setUniversalProvider)==null?void 0:r.call(s,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()||L.deleteRecentWallet();const n=L.getRecentWallet();he.sendEvent({type:"track",event:"CONNECT_SUCCESS",address:e,properties:{method:J.isMobile()?"mobile":"qrcode",name:(n==null?void 0:n.name)||"Unknown",reconnect:!0,view:se.state.view,walletRank:n==null?void 0:n.order}})}async syncNamespaceConnection(e){try{e===U.CHAIN.EVM&&J.isSafeApp()&&q.setConnectorId(U.CONNECTOR_ID.SAFE,e);const n=q.getConnectorId(e);switch(this.setStatus("connecting",e),n){case U.CONNECTOR_ID.WALLET_CONNECT:await this.reconnectWalletConnect();break;case U.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:s}=e||{};m.resetAccount(n),m.resetNetwork(n),L.removeConnectedNamespace(n);const r=Array.from(m.state.chains.keys());(n?[n]:r).forEach(o=>L.addDisconnectedConnectorId(q.getConnectorId(o)||"",o)),q.removeConnectorId(n),Ue.resetChain(n),this.setUser(null,n),this.setStatus("disconnected",n),this.setConnectedWalletInfo(null,n),s!==!1&&pe.close()}async syncAdapterConnections(){await Promise.allSettled(this.chainNamespaces.map(e=>{const n=this.getAdapter(e),s=this.getCaipAddress(e),r=this.getCaipNetwork(e);return n==null?void 0:n.syncConnections({connectToFirstConnector:!s,caipNetwork:r})}))}async syncAdapterConnection(e){var a,c,l,u;const n=this.getAdapter(e),s=this.getCaipNetwork(e),r=q.getConnectorId(e),o=q.getConnectors(e).find(d=>d.id===r);try{if(!n||!o)throw new Error(`Adapter or connector not found for namespace ${e}`);if(!(s!=null&&s.id))throw new Error("CaipNetwork not found");const d=await(n==null?void 0:n.syncConnection({namespace:e,id:o.id,chainId:s.id,rpcUrl:(l=(c=(a=s==null?void 0:s.rpcUrls)==null?void 0:a.default)==null?void 0:c.http)==null?void 0:l[0]}));d?(this.syncProvider({...d,chainNamespace:e}),await this.syncAccount({...d,chainNamespace:e}),this.setStatus("connected",e),he.sendEvent({type:"track",event:"CONNECT_SUCCESS",address:d.address,properties:{method:"browser",name:((u=o.info)==null?void 0:u.name)||o.name||"Unknown",reconnect:!0,view:se.state.view,walletRank:void 0}})):this.setStatus("disconnected",e)}catch{this.onDisconnectNamespace({chainNamespace:e,closeModal:!1})}}async syncWalletConnectAccount(){var s,r;const e=Object.keys(((r=(s=this.universalProvider)==null?void 0:s.session)==null?void 0:r.namespaces)||{}),n=this.chainNamespaces.map(async i=>{var d,h,p,g,f;const o=this.getAdapter(i);if(!o)return;const a=((g=(p=(h=(d=this.universalProvider)==null?void 0:d.session)==null?void 0:h.namespaces)==null?void 0:p[i])==null?void 0:g.accounts)||[],c=(f=m.state.activeCaipNetwork)==null?void 0:f.id,l=a.find(y=>{const{chainId:b}=tt.parseCaipAddress(y);return b===(c==null?void 0:c.toString())})||a[0];if(l){const y=tt.validateCaipAddress(l),{chainId:b,address:_}=tt.parseCaipAddress(y);if(Ue.setProviderId(i,Le.CONNECTOR_TYPE_WALLET_CONNECT),this.caipNetworks&&m.state.activeCaipNetwork&&o.namespace!==U.CHAIN.EVM){const A=o.getWalletConnectProvider({caipNetworks:this.getCaipNetworks(),provider:this.universalProvider,activeCaipNetwork:m.state.activeCaipNetwork});Ue.setProvider(i,A)}else Ue.setProvider(i,this.universalProvider);q.setConnectorId(U.CONNECTOR_ID.WALLET_CONNECT,i),L.addConnectedNamespace(i),await this.syncAccount({address:_,chainId:b,chainNamespace:i})}else e.includes(i)&&this.setStatus("disconnected",i);const u=this.getApprovedCaipNetworksData();this.syncConnectedWalletInfo(i),m.setApprovedCaipNetworksData(i,{approvedCaipNetworkIds:u.approvedCaipNetworkIds,supportsAllNetworks:u.supportsAllNetworks})});await Promise.all(n)}syncProvider({type:e,provider:n,id:s,chainNamespace:r}){Ue.setProviderId(r,e),Ue.setProvider(r,n),q.setConnectorId(s,r)}async syncAccount(e){var d,h;const n=e.chainNamespace===m.state.activeChain,s=m.getCaipNetworkByNamespace(e.chainNamespace,e.chainId),{address:r,chainId:i,chainNamespace:o}=e,{chainId:a}=L.getActiveNetworkProps(),c=(s==null?void 0:s.id)||a,l=((d=m.state.activeCaipNetwork)==null?void 0:d.name)===U.UNSUPPORTED_NETWORK_NAME,u=m.getNetworkProp("supportsAllNetworks",o);if(this.setStatus("connected",o),!(l&&!u)&&c){let p=this.getCaipNetworks().find(b=>b.id.toString()===c.toString()),g=this.getCaipNetworks().find(b=>b.chainNamespace===o);if(!u&&!p&&!g){const b=this.getApprovedCaipNetworkIds()||[],_=b.find(E=>{var N;return((N=tt.parseCaipNetworkId(E))==null?void 0:N.chainId)===c.toString()}),A=b.find(E=>{var N;return((N=tt.parseCaipNetworkId(E))==null?void 0:N.chainNamespace)===o});p=this.getCaipNetworks().find(E=>E.caipNetworkId===_),g=this.getCaipNetworks().find(E=>E.caipNetworkId===A||"deprecatedCaipNetworkId"in E&&E.deprecatedCaipNetworkId===A)}const f=p||g;(f==null?void 0:f.chainNamespace)===m.state.activeChain?k.state.enableNetworkSwitch&&!k.state.allowUnsupportedChain&&((h=m.state.activeCaipNetwork)==null?void 0:h.name)===U.UNSUPPORTED_NETWORK_NAME?m.showUnsupportedChainUI():this.setCaipNetwork(f):n||s&&this.setCaipNetworkOfNamespace(s,o),this.syncConnectedWalletInfo(o);const y=this.getAddress(o);Oi.isLowerCaseMatch(r,y)||this.syncAccountInfo(r,f==null?void 0:f.id,o),n?await this.syncBalance({address:r,chainId:f==null?void 0:f.id,chainNamespace:o}):await this.syncBalance({address:r,chainId:s==null?void 0:s.id,chainNamespace:o}),this.syncIdentity({address:r,chainId:i,chainNamespace:o})}}async syncAccountInfo(e,n,s){const r=this.getCaipAddress(s),i=n||(r==null?void 0:r.split(":")[1]);if(!i)return;const o=`${s}:${i}:${e}`;this.setCaipAddress(o,s,!0),await this.syncIdentity({address:e,chainId:i,chainNamespace:s})}async syncReownName(e,n){try{const s=await this.getReownName(e);if(s[0]){const r=s[0];this.setProfileName(r.name,n)}else this.setProfileName(null,n)}catch{this.setProfileName(null,n)}}syncConnectedWalletInfo(e){var r;const n=q.getConnectorId(e),s=Ue.getProviderId(e);if(s===Le.CONNECTOR_TYPE_ANNOUNCED||s===Le.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(p=>{var g;return p.id===n||((g=p.info)==null?void 0:g.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(s===Le.CONNECTOR_TYPE_WALLET_CONNECT){const i=Ue.getProvider(e);i!=null&&i.session&&this.setConnectedWalletInfo({...i.session.peer.metadata,name:i.session.peer.metadata.name,icon:(r=i.session.peer.metadata.icons)==null?void 0:r[0]},e)}else if(n&&(n===U.CONNECTOR_ID.COINBASE_SDK||n===U.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){!hp.getNetworksByNamespace(this.getCaipNetworks(),e.chainNamespace).find(s=>{var r;return s.id.toString()===((r=e.chainId)==null?void 0:r.toString())})||!e.chainId||await this.updateNativeBalance(e.address,e.chainId,e.chainNamespace)}async ready(){await this.readyPromise}async updateNativeBalance(e,n,s){const r=this.getAdapter(s),i=m.getCaipNetworkByNamespace(s,n);if(r){const o=await r.getBalance({address:e,chainId:n,caipNetwork:i,tokens:this.options.tokens});return this.setBalance(o.balance,o.symbol,s),o}}async initializeUniversalAdapter(){var s,r,i,o,a,c,l,u,d,h;const e=zT.createLogger((p,...g)=>{p&&this.handleAlertError(p),console.error(...g)}),n={projectId:(s=this.options)==null?void 0:s.projectId,metadata:{name:(r=this.options)!=null&&r.metadata?(i=this.options)==null?void 0:i.metadata.name:"",description:(o=this.options)!=null&&o.metadata?(a=this.options)==null?void 0:a.metadata.description:"",url:(c=this.options)!=null&&c.metadata?(l=this.options)==null?void 0:l.metadata.url:"",icons:(u=this.options)!=null&&u.metadata?(d=this.options)==null?void 0:d.metadata.icons:[""]},logger:e};k.setManualWCControl(!!((h=this.options)!=null&&h.manualWCControl)),this.universalProvider=this.options.universalProvider??await HT.init(n),k.state.enableReconnect===!1&&this.universalProvider.session&&await this.universalProvider.disconnect(),this.listenWalletConnect()}listenWalletConnect(){this.universalProvider&&this.chainNamespaces.forEach(e=>{ys.listenWcProvider({universalProvider:this.universalProvider,namespace:e,onDisplayUri:n=>{V.setUri(n)},onConnect:n=>{const{address:s}=J.getAccount(n[0]);V.finalizeWcConnection(s)},onDisconnect:()=>{m.state.noAdapters&&this.resetAccount(e),V.resetWcConnection()},onChainChanged:n=>{const s=m.state.activeChain,r=s&&q.state.activeConnectorIds[s]===U.CONNECTOR_ID.WALLET_CONNECT;if(s===e&&(m.state.noAdapters||r)){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 s=m.state.activeChain,r=s&&q.state.activeConnectorIds[s]===U.CONNECTOR_ID.WALLET_CONNECT;if(s===e&&(m.state.noAdapters||r)){const i=n==null?void 0:n[0];i&&this.syncAccount({address:i.address,chainId:i.chainId,chainNamespace:i.chainNamespace})}}})})}createUniversalProvider(){var e;return!this.universalProviderInitPromise&&J.isClient()&&((e=this.options)!=null&&e.projectId)&&(this.universalProviderInitPromise=this.initializeUniversalAdapter()),this.universalProviderInitPromise}async getUniversalProvider(){if(!this.universalProvider)try{await this.createUniversalProvider()}catch(e){he.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=m.getAllApprovedCaipNetworkIds(),n=m.getAllRequestedCaipNetworks();return J.sortRequestedNetworks(e,n).filter(r=>m.isCaipNetworkDisabled(r))}handleAlertError(e){const n=Object.entries(Gt.UniversalProviderErrors).find(([,{message:a}])=>e.message.includes(a)),[s,r]=n??[],{message:i,alertErrorKey:o}=r??{};if(s&&i&&!this.reportedAlertErrors[s]){const a=Gt.ALERT_ERRORS[o];a&&(kt.open(a,"error"),this.reportedAlertErrors[s]=!0)}}getAdapter(e){var n;if(e)return(n=this.chainAdapters)==null?void 0:n[e]}createAdapter(e){var r,i;if(!e)return;const n=e.namespace;if(!n)return;this.createClients();const s=e;s.namespace=n,s.construct({namespace:n,projectId:(r=this.options)==null?void 0:r.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]=s)}async open(e){await this.injectModalUi(),e!=null&&e.uri&&V.setUri(e.uri);const{isSwap:n,isSend:s}=this.toModalOptions();return n(e)?pe.open({...e,data:{swap:e.arguments}}):s(e)&&e.arguments?this.openSend(e.arguments):pe.open(e)}async close(){await this.injectModalUi(),pe.close()}setLoading(e,n){pe.setLoading(e,n)}async disconnect(e){await V.disconnect({namespace:e})}getSIWX(){return k.state.siwx}getError(){return""}getChainId(){var e;return(e=m.state.activeCaipNetwork)==null?void 0:e.id}async switchNetwork(e,{throwOnFailure:n=!1}={}){const s=this.getCaipNetworks().find(r=>r.id===e.id);if(!s){kt.open(Gt.ALERT_ERRORS.SWITCH_NETWORK_NOT_FOUND,"error");return}await m.switchActiveNetwork(s,{throwOnFailure:n})}getWalletProvider(){return m.state.activeChain?Ue.state.providers[m.state.activeChain]:null}getWalletProviderType(){return Ue.getProviderId(m.state.activeChain)}subscribeProviders(e){return Ue.subscribeProviders(e)}getThemeMode(){return Ut.state.themeMode}getThemeVariables(){return Ut.state.themeVariables}setThemeMode(e){Ut.setThemeMode(e),Ol(Ut.state.themeMode)}setTermsConditionsUrl(e){k.setTermsConditionsUrl(e)}setPrivacyPolicyUrl(e){k.setPrivacyPolicyUrl(e)}setThemeVariables(e){Ut.setThemeVariables(e),Y2(Ut.state.themeVariables)}subscribeTheme(e){return Ut.subscribe(e)}subscribeConnections(e){return this.remoteFeatures.multiWallet?V.subscribe(e):(kt.open(U.REMOTE_FEATURES_ALERTS.MULTI_WALLET_NOT_ENABLED.DEFAULT,"info"),()=>{})}getWalletInfo(e){var s,r;if(e)return(r=(s=m.state.chains.get(e))==null?void 0:s.accountState)==null?void 0:r.connectedWalletInfo;const n=m.getAccountData();return n==null?void 0:n.connectedWalletInfo}getAccount(e){const n=e||m.state.activeChain,s=q.getAuthConnector(n),r=m.getAccountData(n),i=L.getConnectedConnectorId(m.state.activeChain),o=V.getConnections(n);if(!n)throw new Error("AppKit:getAccount - namespace is required");const a=o.flatMap(c=>c.accounts.map(({address:l,type:u,publicKey:d})=>J.createAccount(n,l,u||"eoa",d)));if(r)return{allAccounts:a,caipAddress:r.caipAddress,address:J.getPlainAddress(r.caipAddress),isConnected:!!r.caipAddress,status:r.status,embeddedWalletInfo:s&&i===U.CONNECTOR_ID.AUTH?{user:r.user?{...r.user,username:L.getConnectedSocialUsername()}:void 0,authProvider:r.socialProvider||"email",accountType:nn(n),isSmartAccountDeployed:!!r.smartAccountDeployed}:void 0}}subscribeAccount(e,n){const s=()=>{const r=this.getAccount(n);r&&e(r)};n?m.subscribeChainProp("accountState",s,n):m.subscribe(s),q.subscribe(s)}subscribeNetwork(e){return m.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?m.subscribeChainProp("accountState",s=>e(s==null?void 0:s.connectedWalletInfo),n):m.subscribeChainProp("accountState",s=>e(s==null?void 0:s.connectedWalletInfo))}subscribeShouldUpdateToAddress(e){m.subscribeChainProp("accountState",n=>e(n==null?void 0:n.shouldUpdateToAddress))}subscribeCaipNetworkChange(e){m.subscribeKey("activeCaipNetwork",e)}getState(){return Hn.state}getRemoteFeatures(){return k.state.remoteFeatures}subscribeState(e){return Hn.subscribe(e)}subscribeRemoteFeatures(e){return k.subscribeKey("remoteFeatures",e)}showErrorMessage(e){An.showError(e)}showSuccessMessage(e){An.showSuccess(e)}getEvent(){return{...he.state}}subscribeEvents(e){return he.subscribe(e)}replace(e){se.replace(e)}redirect(e){se.push(e)}popTransactionStack(e){se.popTransactionStack(e)}isOpen(){return pe.state.open}isTransactionStackEmpty(){return se.state.transactionStack.length===0}static getInstance(){return this.instance}updateFeatures(e){k.setFeatures(e)}updateRemoteFeatures(e){k.setRemoteFeatures(e)}updateOptions(e){const s={...k.state||{},...e};k.setOptions(s)}setConnectMethodsOrder(e){k.setConnectMethodsOrder(e)}setWalletFeaturesOrder(e){k.setWalletFeaturesOrder(e)}setCollapseWallets(e){k.setCollapseWallets(e)}setSocialsOrder(e){k.setSocialsOrder(e)}getConnectMethodsOrder(){return li.getConnectOrderMethod(k.state.features,q.getConnectors())}addNetwork(e,n){if(this.chainAdapters&&!this.chainAdapters[e])throw new Error(`Adapter for namespace ${e} doesn't exist`);const s=this.extendCaipNetwork(n,this.options);this.getCaipNetworks().find(r=>r.id===s.id)||m.addNetwork(s)}removeNetwork(e,n){if(this.chainAdapters&&!this.chainAdapters[e])throw new Error(`Adapter for namespace ${e} doesn't exist`);this.getCaipNetworks().find(r=>r.id===n)&&m.removeNetwork(e,n)}}let op=!1;class pm extends lO{async open(e){q.isConnected()||await super.open(e)}async close(){var e;if(await super.close(),this.options.manualWCControl){const n=(e=m.getAccountData(this.activeChainNamespace))==null?void 0:e.address;V.finalizeWcConnection(n)}}async syncIdentity(e){return Promise.resolve()}async syncBalance(e){return Promise.resolve()}async injectModalUi(){if(!op&&J.isClient()){if(await Go(()=>import("./basic-22d207a7.js"),["assets/basic-22d207a7.js","assets/index-94684a9b.js","assets/index-6c5c6262.js","assets/index-3632219d.css","assets/index-f10062b6.js"]),await Go(()=>import("./w3m-modal-f845d089.js"),["assets/w3m-modal-f845d089.js","assets/index-94684a9b.js","assets/index-6c5c6262.js","assets/index-3632219d.css","assets/index-f10062b6.js"]),!document.querySelector("w3m-modal")){const n=document.createElement("w3m-modal");!k.state.disableAppend&&!k.state.enableEmbedded&&document.body.insertAdjacentElement("beforeend",n)}op=!0}}}const uO="1.8.11";function dO(t){return new pm({...t,basic:!0,sdkVersion:`html-core-${uO}`})}const hR=Object.freeze(Object.defineProperty({__proto__:null,AppKit:pm,createAppKit:dO},Symbol.toStringTag,{value:"Module"}));export{bp as $,Q as A,re as B,q as C,Ml as D,he as E,kt as F,nn as G,Oi as H,en as I,hn as J,G2 as K,v2 as L,pe as M,Bm as N,k as O,lR as P,Nl as Q,se as R,An as S,Ut as T,nm as U,Mr as V,li as W,hp as X,te as Y,mo as Z,Z as _,J as a,mO as a0,yO as a1,vO as a2,wO as a3,EO as a4,bO as a5,CO as a6,AO as a7,go as a8,_O as a9,SO as aa,IO as ab,NO as ac,hR as ad,V as b,U as c,cR as d,Qt as e,Tc as f,Cp as g,dR as h,zo as i,Xs as j,qn as k,we as l,aR as m,m as n,yr as o,L as p,Xe as q,uR as r,fs as s,ke as t,nt as u,st as v,rn as w,oR as x,_p as y,Oy as z};
|