graz 0.2.5 → 0.2.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/.gitkeep CHANGED
File without changes
package/dist/index.d.mts CHANGED
@@ -36,7 +36,8 @@ declare enum WalletType {
36
36
  COSMIFRAME = "cosmiframe",
37
37
  COMPASS = "compass",
38
38
  INITIA = "initia",
39
- OKX = "okx"
39
+ OKX = "okx",
40
+ CACTUSCOSMOS = "cactuscosmos"
40
41
  }
41
42
  declare const WALLET_TYPES: WalletType[];
42
43
  type Wallet = Pick<Keplr, "enable" | "getOfflineSigner" | "getOfflineSignerAuto" | "getOfflineSignerOnlyAmino" | "signDirect" | "signAmino"> & {
@@ -275,6 +276,9 @@ declare const isLeapSnaps: (type: WalletType) => boolean;
275
276
  declare const isLeapDappBrowser: () => boolean;
276
277
  declare const isWalletConnect: (type: WalletType) => boolean;
277
278
 
279
+ type CactusCosmosWallet = Pick<Keplr, "enable" | "getOfflineSigner" | "signDirect" | "signAmino" | "signArbitrary" | "getKey">;
280
+ declare const getCactusCosmos: () => Wallet;
281
+
278
282
  /**
279
283
  * Function to return cosmostation object (which is {@link Wallet}) and throws and error if it does not exist on `window`.
280
284
  *
@@ -1092,6 +1096,7 @@ declare const useActiveWalletType: () => {
1092
1096
  isStation: boolean;
1093
1097
  isCapsule: boolean;
1094
1098
  isCosmiframe: boolean;
1099
+ isCactusCosmos: boolean;
1095
1100
  };
1096
1101
  /**
1097
1102
  * graz query hook to check whether given {@link WalletType} or default configured wallet is supported
@@ -1144,4 +1149,4 @@ declare const useGrazEvents: () => null;
1144
1149
  */
1145
1150
  declare const GrazEvents: FC;
1146
1151
 
1147
- export { ConfigureGrazArgs, ConnectArgs, ConnectResult, Dictionary, ExecuteContractArgs, ExecuteContractMutationArgs, GrazEvents, GrazProvider, GrazProviderProps, InstantiateContractArgs, InstantiateContractMutationArgs, Key, KnownKeys, Maybe, OfflineSigners, ReconnectArgs, SendIbcTokensArgs, SendTokensArgs, SignAminoParams, SignDirectParams, SuggestChainAndConnectArgs, SuggestChainArgs, UseAccountArgs, UseAccountResult, UseConnectChainArgs, UseExecuteContractArgs, UseInstantiateContractArgs, UseSuggestChainAndConnectArgs, UseSuggestChainArgs, WALLET_TYPES, Wallet, WalletType, checkWallet, clearRecentChain, clearSession, configureGraz, connect, defineChainInfo, defineChains, disconnect, executeContract, getAvailableWallets, getChainInfo, getChainInfos, getCosmostation, getKeplr, getLeap, getMetamaskSnapLeap, getOfflineSigners, getQueryRaw, getQuerySmart, getRecentChainIds, getRecentChains, getVectis, getWCCosmostation, getWCKeplr, getWCLeap, getWallet, getWalletConnect, instantiateContract, isCapsule, isLeapDappBrowser, isLeapSnaps, isWalletConnect, reconnect, sendIbcTokens, sendTokens, suggestChain, suggestChainAndConnect, useAccount, useActiveChainCurrency, useActiveChainIds, useActiveChains, useActiveWalletType, useBalance, useBalanceStaked, useBalances, useCapsule, useChainInfo, useChainInfos, useCheckWallet, useConnect, useCosmWasmClient, useCosmWasmSigningClient, useCosmWasmTmSigningClient, useDisconnect, useExecuteContract, useGrazEvents, useInstantiateContract, useOfflineSigners, useQueryClientValidators, useQueryRaw, useQuerySmart, useRecentChainIds, useRecentChains, useSendIbcTokens, useSendTokens, useStargateClient, useStargateSigningClient, useStargateTmSigningClient, useSuggestChain, useSuggestChainAndConnect, useTendermintClient };
1152
+ export { CactusCosmosWallet, ConfigureGrazArgs, ConnectArgs, ConnectResult, Dictionary, ExecuteContractArgs, ExecuteContractMutationArgs, GrazEvents, GrazProvider, GrazProviderProps, InstantiateContractArgs, InstantiateContractMutationArgs, Key, KnownKeys, Maybe, OfflineSigners, ReconnectArgs, SendIbcTokensArgs, SendTokensArgs, SignAminoParams, SignDirectParams, SuggestChainAndConnectArgs, SuggestChainArgs, UseAccountArgs, UseAccountResult, UseConnectChainArgs, UseExecuteContractArgs, UseInstantiateContractArgs, UseSuggestChainAndConnectArgs, UseSuggestChainArgs, WALLET_TYPES, Wallet, WalletType, checkWallet, clearRecentChain, clearSession, configureGraz, connect, defineChainInfo, defineChains, disconnect, executeContract, getAvailableWallets, getCactusCosmos, getChainInfo, getChainInfos, getCosmostation, getKeplr, getLeap, getMetamaskSnapLeap, getOfflineSigners, getQueryRaw, getQuerySmart, getRecentChainIds, getRecentChains, getVectis, getWCCosmostation, getWCKeplr, getWCLeap, getWallet, getWalletConnect, instantiateContract, isCapsule, isLeapDappBrowser, isLeapSnaps, isWalletConnect, reconnect, sendIbcTokens, sendTokens, suggestChain, suggestChainAndConnect, useAccount, useActiveChainCurrency, useActiveChainIds, useActiveChains, useActiveWalletType, useBalance, useBalanceStaked, useBalances, useCapsule, useChainInfo, useChainInfos, useCheckWallet, useConnect, useCosmWasmClient, useCosmWasmSigningClient, useCosmWasmTmSigningClient, useDisconnect, useExecuteContract, useGrazEvents, useInstantiateContract, useOfflineSigners, useQueryClientValidators, useQueryRaw, useQuerySmart, useRecentChainIds, useRecentChains, useSendIbcTokens, useSendTokens, useStargateClient, useStargateSigningClient, useStargateTmSigningClient, useSuggestChain, useSuggestChainAndConnect, useTendermintClient };
package/dist/index.d.ts CHANGED
@@ -36,7 +36,8 @@ declare enum WalletType {
36
36
  COSMIFRAME = "cosmiframe",
37
37
  COMPASS = "compass",
38
38
  INITIA = "initia",
39
- OKX = "okx"
39
+ OKX = "okx",
40
+ CACTUSCOSMOS = "cactuscosmos"
40
41
  }
41
42
  declare const WALLET_TYPES: WalletType[];
42
43
  type Wallet = Pick<Keplr, "enable" | "getOfflineSigner" | "getOfflineSignerAuto" | "getOfflineSignerOnlyAmino" | "signDirect" | "signAmino"> & {
@@ -275,6 +276,9 @@ declare const isLeapSnaps: (type: WalletType) => boolean;
275
276
  declare const isLeapDappBrowser: () => boolean;
276
277
  declare const isWalletConnect: (type: WalletType) => boolean;
277
278
 
279
+ type CactusCosmosWallet = Pick<Keplr, "enable" | "getOfflineSigner" | "signDirect" | "signAmino" | "signArbitrary" | "getKey">;
280
+ declare const getCactusCosmos: () => Wallet;
281
+
278
282
  /**
279
283
  * Function to return cosmostation object (which is {@link Wallet}) and throws and error if it does not exist on `window`.
280
284
  *
@@ -1092,6 +1096,7 @@ declare const useActiveWalletType: () => {
1092
1096
  isStation: boolean;
1093
1097
  isCapsule: boolean;
1094
1098
  isCosmiframe: boolean;
1099
+ isCactusCosmos: boolean;
1095
1100
  };
1096
1101
  /**
1097
1102
  * graz query hook to check whether given {@link WalletType} or default configured wallet is supported
@@ -1144,4 +1149,4 @@ declare const useGrazEvents: () => null;
1144
1149
  */
1145
1150
  declare const GrazEvents: FC;
1146
1151
 
1147
- export { ConfigureGrazArgs, ConnectArgs, ConnectResult, Dictionary, ExecuteContractArgs, ExecuteContractMutationArgs, GrazEvents, GrazProvider, GrazProviderProps, InstantiateContractArgs, InstantiateContractMutationArgs, Key, KnownKeys, Maybe, OfflineSigners, ReconnectArgs, SendIbcTokensArgs, SendTokensArgs, SignAminoParams, SignDirectParams, SuggestChainAndConnectArgs, SuggestChainArgs, UseAccountArgs, UseAccountResult, UseConnectChainArgs, UseExecuteContractArgs, UseInstantiateContractArgs, UseSuggestChainAndConnectArgs, UseSuggestChainArgs, WALLET_TYPES, Wallet, WalletType, checkWallet, clearRecentChain, clearSession, configureGraz, connect, defineChainInfo, defineChains, disconnect, executeContract, getAvailableWallets, getChainInfo, getChainInfos, getCosmostation, getKeplr, getLeap, getMetamaskSnapLeap, getOfflineSigners, getQueryRaw, getQuerySmart, getRecentChainIds, getRecentChains, getVectis, getWCCosmostation, getWCKeplr, getWCLeap, getWallet, getWalletConnect, instantiateContract, isCapsule, isLeapDappBrowser, isLeapSnaps, isWalletConnect, reconnect, sendIbcTokens, sendTokens, suggestChain, suggestChainAndConnect, useAccount, useActiveChainCurrency, useActiveChainIds, useActiveChains, useActiveWalletType, useBalance, useBalanceStaked, useBalances, useCapsule, useChainInfo, useChainInfos, useCheckWallet, useConnect, useCosmWasmClient, useCosmWasmSigningClient, useCosmWasmTmSigningClient, useDisconnect, useExecuteContract, useGrazEvents, useInstantiateContract, useOfflineSigners, useQueryClientValidators, useQueryRaw, useQuerySmart, useRecentChainIds, useRecentChains, useSendIbcTokens, useSendTokens, useStargateClient, useStargateSigningClient, useStargateTmSigningClient, useSuggestChain, useSuggestChainAndConnect, useTendermintClient };
1152
+ export { CactusCosmosWallet, ConfigureGrazArgs, ConnectArgs, ConnectResult, Dictionary, ExecuteContractArgs, ExecuteContractMutationArgs, GrazEvents, GrazProvider, GrazProviderProps, InstantiateContractArgs, InstantiateContractMutationArgs, Key, KnownKeys, Maybe, OfflineSigners, ReconnectArgs, SendIbcTokensArgs, SendTokensArgs, SignAminoParams, SignDirectParams, SuggestChainAndConnectArgs, SuggestChainArgs, UseAccountArgs, UseAccountResult, UseConnectChainArgs, UseExecuteContractArgs, UseInstantiateContractArgs, UseSuggestChainAndConnectArgs, UseSuggestChainArgs, WALLET_TYPES, Wallet, WalletType, checkWallet, clearRecentChain, clearSession, configureGraz, connect, defineChainInfo, defineChains, disconnect, executeContract, getAvailableWallets, getCactusCosmos, getChainInfo, getChainInfos, getCosmostation, getKeplr, getLeap, getMetamaskSnapLeap, getOfflineSigners, getQueryRaw, getQuerySmart, getRecentChainIds, getRecentChains, getVectis, getWCCosmostation, getWCKeplr, getWCLeap, getWallet, getWalletConnect, instantiateContract, isCapsule, isLeapDappBrowser, isLeapSnaps, isWalletConnect, reconnect, sendIbcTokens, sendTokens, suggestChain, suggestChainAndConnect, useAccount, useActiveChainCurrency, useActiveChainIds, useActiveChains, useActiveWalletType, useBalance, useBalanceStaked, useBalances, useCapsule, useChainInfo, useChainInfos, useCheckWallet, useConnect, useCosmWasmClient, useCosmWasmSigningClient, useCosmWasmTmSigningClient, useDisconnect, useExecuteContract, useGrazEvents, useInstantiateContract, useOfflineSigners, useQueryClientValidators, useQueryRaw, useQuerySmart, useRecentChainIds, useRecentChains, useSendIbcTokens, useSendTokens, useStargateClient, useStargateSigningClient, useStargateTmSigningClient, useSuggestChain, useSuggestChainAndConnect, useTendermintClient };
package/dist/index.js CHANGED
@@ -6,7 +6,7 @@ var amino = require('@cosmjs/amino');
6
6
  var encoding = require('@cosmjs/encoding');
7
7
  var cosmiframe = require('@dao-dao/cosmiframe');
8
8
  var snapper = require('@cosmsnap/snapper');
9
- var lt = require('long');
9
+ var ut = require('long');
10
10
  var signClient = require('@walletconnect/sign-client');
11
11
  var utils = require('@walletconnect/utils');
12
12
  var modal = require('@walletconnect/modal');
@@ -20,82 +20,83 @@ var jsxRuntime = require('react/jsx-runtime');
20
20
 
21
21
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
22
22
 
23
- var lt__default = /*#__PURE__*/_interopDefault(lt);
23
+ var ut__default = /*#__PURE__*/_interopDefault(ut);
24
24
 
25
- var Ut=Object.defineProperty,Ft=Object.defineProperties;var qt=Object.getOwnPropertyDescriptors;var Ge=Object.getOwnPropertySymbols;var Gt=Object.prototype.hasOwnProperty,zt=Object.prototype.propertyIsEnumerable;var ze=(e,t,i)=>t in e?Ut(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,v=(e,t)=>{for(var i in t||(t={}))Gt.call(t,i)&&ze(e,i,t[i]);if(Ge)for(var i of Ge(t))zt.call(t,i)&&ze(e,i,t[i]);return e},j=(e,t)=>Ft(e,qt(t));var l=(e,t,i)=>new Promise((r,o)=>{var n=c=>{try{s(i.next(c));}catch(m){o(m);}},a=c=>{try{s(i.throw(c));}catch(m){o(m);}},s=c=>c.done?r(c.value):Promise.resolve(c.value).then(n,a);s((i=i.apply(e,t)).next());}),Qe=(e,t,i)=>(t=e[Symbol.asyncIterator],i=(r,o)=>(o=e[r])&&(t[r]=n=>new Promise((a,s,c)=>(n=o.call(e,n),c=n.done,Promise.resolve(n.value).then(m=>a({value:m,done:c}),s)))),t?t.call(e):(e=e[Symbol.iterator](),t={},i("next"),i("return"),t));var Y="graz-reconnect-session";var je=(u=>(u.KEPLR="keplr",u.LEAP="leap",u.VECTIS="vectis",u.COSMOSTATION="cosmostation",u.WALLETCONNECT="walletconnect",u.WC_KEPLR_MOBILE="wc_keplr_mobile",u.WC_LEAP_MOBILE="wc_leap_mobile",u.WC_COSMOSTATION_MOBILE="wc_cosmostation_mobile",u.WC_CLOT_MOBILE="wc_clot_mobile",u.METAMASK_SNAP_LEAP="metamask_snap_leap",u.METAMASK_SNAP_COSMOS="metamask_snap_cosmos",u.STATION="station",u.XDEFI="xdefi",u.CAPSULE="capsule",u.COSMIFRAME="cosmiframe",u.COMPASS="compass",u.INITIA="initia",u.OKX="okx",u))(je||{}),$e=["keplr","leap","vectis","cosmostation","walletconnect","wc_keplr_mobile","wc_leap_mobile","wc_cosmostation_mobile","wc_clot_mobile","metamask_snap_leap","station","xdefi","capsule","metamask_snap_cosmos","cosmiframe","compass","initia","okx"];var jt={iframeOptions:null,recentChainIds:null,chains:null,chainsConfig:null,capsuleConfig:null,capsuleState:null,multiChainFetchConcurrency:3,walletType:"keplr",walletConnect:{options:null,walletConnectModal:null},walletDefaultOptions:null,_notFoundFn:()=>null,_onReconnectFailed:()=>null,_reconnect:!1,_reconnectConnector:null},ne={accounts:null,activeChainIds:null,status:"disconnected",wcSignClients:new Map,capsuleClient:null},$t={name:"graz-session",version:2,partialize:e=>({accounts:e.accounts,activeChainIds:e.activeChainIds}),storage:middleware.createJSONStorage(()=>sessionStorage)},Vt={name:"graz-internal",partialize:e=>({recentChainIds:e.recentChainIds,_reconnect:e._reconnect,_reconnectConnector:e._reconnectConnector,walletType:e.walletType}),version:2},g=zustand.create(middleware.subscribeWithSelector(middleware.persist(()=>ne,$t))),p=zustand.create(middleware.subscribeWithSelector(middleware.persist(()=>jt,Vt)));var ae=()=>{var f,E;if(!((f=p.getState().capsuleConfig)!=null&&f.apiKey)||!((E=p.getState().capsuleConfig)!=null&&E.env))throw new Error("Capsule configuration is not set");let e=()=>l(void 0,null,function*(){var T,O;let S=(yield import('@leapwallet/cosmos-social-login-capsule-provider')).CapsuleProvider,A=new S({apiKey:(T=p.getState().capsuleConfig)==null?void 0:T.apiKey,env:(O=p.getState().capsuleConfig)==null?void 0:O.env});return g.setState({capsuleClient:A}),A});return {init:e,enable:S=>l(void 0,null,function*(){let A=typeof S=="string"?[S]:S,T=g.getState().capsuleClient;T||(T=yield e()),p.setState({capsuleState:{showModal:!0,chainId:A}});}),onAfterLoginSuccessful:()=>l(void 0,null,function*(){var u;let S=g.getState().capsuleClient,{chains:A}=p.getState();if(!S)throw new Error("Capsule client is not initialized");if(!A)throw new Error("Chains are not set");yield S.enable();let T=(u=p.getState().capsuleState)==null?void 0:u.chainId;if(!T)throw new Error("Chain ids are not set");let O=Object.fromEntries(yield Promise.all(T.map(y=>l(void 0,null,function*(){let C=yield S.getAccount(y);return [y,{address:encoding.fromBech32(C.address).data,bech32Address:C.address,algo:C.algo,name:C.username||"",pubKey:C.pubkey,isKeystone:!1,isNanoLedger:!1}]}))));g.setState(y=>({accounts:v(v({},y.accounts||{}),O)})),p.setState(y=>({recentChainIds:[...y.recentChainIds||[],...T].filter((C,M,W)=>W.indexOf(C)===M)})),g.setState(y=>({activeChainIds:[...y.activeChainIds||[],...T].filter((C,M,W)=>W.indexOf(C)===M)})),p.setState({walletType:"capsule",_reconnect:!1,_reconnectConnector:"capsule"}),g.setState({status:"connected"}),typeof window!="undefined"&&window.sessionStorage.setItem(Y,"Active"),p.setState({capsuleState:null});}),getKey:S=>l(void 0,null,function*(){let A=g.getState().capsuleClient;if(!A)throw new Error("Capsule client is not initialized");let T=yield A.getAccount(S);return {address:encoding.fromBech32(T.address).data,bech32Address:T.address,algo:T.algo,name:T.username||"",pubKey:T.pubkey,isKeystone:!1,isNanoLedger:!1}}),getOfflineSignerAuto:S=>l(void 0,null,function*(){let A=g.getState().capsuleClient;if(!A)throw new Error("Capsule client is not initialized");return A.getOfflineSignerDirect(S)}),getOfflineSignerDirect:S=>{let A=g.getState().capsuleClient;if(!A)throw new Error("Capsule client is not initialized");return A.getOfflineSignerDirect(S)},signDirect:(...S)=>l(void 0,null,function*(){let[A,T,O]=S,u=g.getState().capsuleClient;if(!u)throw new Error("Capsule client is not initialized");return u.signDirect(A,T,{bodyBytes:O.bodyBytes,authInfoBytes:O.authInfoBytes,chainId:O.chainId,accountNumber:O.accountNumber})}),signAmino:(...S)=>l(void 0,null,function*(){let[A,T,O,u]=S,y=g.getState().capsuleClient;if(!y)throw new Error("Capsule client is not initialized");return y.signAmino(A,T,O,u)}),signArbitrary:(S,A,T)=>l(void 0,null,function*(){let O=g.getState().capsuleClient;if(!O)throw new Error("Capsule client is not initialized");let u=yield O.getAccount(S);if(!u)throw new Error(`Wallet not connected to account ${A}`);let y=(()=>{switch(u.algo){case"secp256k1":return amino.encodeSecp256k1Pubkey(u.pubkey);case"ed25519":return amino.encodeEd25519Pubkey(u.pubkey);default:throw new Error("sr25519 public key algorithm is not supported")}})();return {signature:yield O.signArbitrary(S,A,T),pub_key:{type:u.algo==="secp256k1"?amino.pubkeyType.secp256k1:amino.pubkeyType.ed25519,value:y.value}}}),experimentalSuggestChain:(...S)=>l(void 0,null,function*(){yield Promise.reject(new Error("Capsule does not support experimentalSuggestChain"));}),getOfflineSigner:S=>{let A=g.getState().capsuleClient;if(!A)throw new Error("Capsule client is not initialized");return A.getOfflineSigner(S)},getOfflineSignerAmino:S=>{let A=g.getState().capsuleClient;if(!A)throw new Error("Capsule client is not initialized");return A.getOfflineSignerAmino(S)}}};var ce=()=>{if(typeof window.compass!="undefined"){let e=window.compass;return Object.assign(e,{subscription:o=>{let n=()=>{N(),o();};return window.addEventListener("leap_keystorechange",n),()=>{window.removeEventListener("leap_keystorechange",n);}},setDefaultOptions:o=>{e.defaultOptions=o;}})}throw p.getState()._notFoundFn(),new Error("window.leap is not defined")};var le=()=>{let e=p.getState();if(!e.iframeOptions)throw e._notFoundFn(),new Error("no iframe options set");if(!cosmiframe.isInIframe())throw e._notFoundFn(),new Error("not in iframe");if(!e.iframeOptions.allowedIframeParentOrigins.length)throw e._notFoundFn(),new Error("no iframe allowed origins");let t=new cosmiframe.Cosmiframe(e.iframeOptions.allowedIframeParentOrigins).getKeplrClient();return {enable:t.enable.bind(t),getKey:t.getKey.bind(t),getOfflineSigner:t.getOfflineSigner.bind(t),getOfflineSignerAuto:t.getOfflineSignerAuto.bind(t),getOfflineSignerOnlyAmino:t.getOfflineSignerOnlyAmino.bind(t),experimentalSuggestChain:t.experimentalSuggestChain.bind(t),signDirect:t.signDirect.bind(t),signAmino:t.signAmino.bind(t)}};var tt={},nt=()=>{let e=window.ethereum,t=window.cosmos;if(e)return {init:()=>l(void 0,null,function*(){var h;let n=yield e.request({method:"web3_clientVersion"});if(!n.includes("MetaMask"))throw new Error("Metamask is not installed");if(typeof window.okxwallet!="undefined"&&window.okxwallet.isOkxWallet)throw new Error("You have OKX Wallet installed. Please disable and reload the page to use Metamask Snap.");let s=(h=n.split("MetaMask/v")[1])==null?void 0:h.split(".")[0];if(!(Number(s)>=11))throw new Error("Metamask Snap is not supported in this version");return (yield snapper.isSnapInstalled())||(yield snapper.installSnap()),window.cosmos=new snapper.CosmosSnap,t=window.cosmos,!0}),enable:n=>l(void 0,null,function*(){(yield snapper.isSnapInstalled())||(yield snapper.installSnap());}),getOfflineSigner:n=>t.getOfflineSigner(n),experimentalSuggestChain:n=>l(void 0,null,function*(){if(!n.bech32Config)throw new Error("Bech32Config is required");if(!n.stakeCurrency)throw new Error("StakeCurrency is required");yield t.experimentalSuggestChain(j(v({},n),{stakeCurrency:n.stakeCurrency,bech32Config:n.bech32Config}));}),signAmino:(n,a,s)=>l(void 0,null,function*(){return t.signAmino(n,a,s)}),getKey:n=>l(void 0,null,function*(){return typeof tt[n]!="undefined"?tt[n]:t.getKey(n)}),getOfflineSignerAuto:n=>l(void 0,null,function*(){return (yield t.getKey(n)).isNanoLedger?t.getOfflineSignerOnlyAmino(n):t.getOfflineSigner(n)}),getOfflineSignerOnlyAmino:n=>t.getOfflineSignerOnlyAmino(n),signDirect:(n,a,s)=>l(void 0,null,function*(){return t.signDirect(n,a,s)}),signArbitrary:(n,a,s)=>l(void 0,null,function*(){return t.signArbitrary(n,a,s)}),disable:n=>l(void 0,null,function*(){n&&(yield t.deleteChain(n));})};throw p.getState()._notFoundFn(),new Error("window.ethereum is not defined")};var ue=()=>{var e;if(typeof((e=window.cosmostation)==null?void 0:e.providers.keplr)!="undefined"){let t=window.cosmostation.providers.keplr;return Object.assign(t,{subscription:n=>{let a=()=>{N(),n();};return window.addEventListener("cosmostation_keystorechange",a),()=>{window.removeEventListener("cosmostation_keystorechange",a);}},setDefaultOptions:n=>{t.defaultOptions=n;}})}throw p.getState()._notFoundFn(),new Error("window.cosmostation.providers.keplr is not defined")};var rn=e=>{let{bodyBytes:t,authInfoBytes:i,chainId:r,accountNumber:o}=e;if(!t||!i||!r||!o)throw new Error("Invalid sign doc");return {bodyBytes:t,authInfoBytes:i,chainId:r,accountNumber:o}},sn=e=>`${e.slice(0,6)}...${e.slice(-6)}`,ot=()=>{if(typeof window.initia!="undefined"){let e=window.initia;return {enable:()=>l(void 0,null,function*(){yield e.getAddress();}),getKey:d=>l(void 0,null,function*(){let f=e.getOfflineSigner(d),[E]=yield f.getAccounts();if(!E)throw new Error("Wallet connection failed");let S=(()=>{switch(E.algo){case"secp256k1":return amino.rawSecp256k1PubkeyToRawAddress(E.pubkey);case"ed25519":return amino.rawEd25519PubkeyToRawAddress(E.pubkey);default:throw new Error("sr25519 public key algorithm is not supported")}})();return {name:sn(E.address),algo:E.algo,pubKey:E.pubkey,bech32Address:E.address,address:S,isNanoLedger:!1,isKeystone:!1}}),getOfflineSigner:d=>{let f=e.getOfflineSigner(d),E=e.getOfflineSignerOnlyAmino(d);return {getAccounts:f.getAccounts.bind(f),signDirect:f.signDirect.bind(f),signAmino:E.signAmino.bind(E)}},getOfflineSignerAuto:d=>Promise.resolve(e.getOfflineSigner(d)),getOfflineSignerOnlyAmino:d=>e.getOfflineSignerOnlyAmino(d),experimentalSuggestChain:d=>e.requestAddInitiaLayer({chain_id:d.chainId,chain_name:d.chainName,bech32_prefix:"init",bech32_config:d.bech32Config,slip44:d.bip44.coinType,logo_URIs:{png:d.chainSymbolImageUrl},fees:{fee_tokens:d.feeCurrencies.map(f=>{var E,S,A;return {denom:f.coinDenom,amount:f.coinMinimalDenom,low_gas_price:(E=f.gasPriceStep)==null?void 0:E.low,average_gas_price:(S=f.gasPriceStep)==null?void 0:S.average,high_gas_price:(A=f.gasPriceStep)==null?void 0:A.high}})},apis:{rpc:[{address:d.rpc}],rest:[{address:d.rest}]}}),signDirect:(...d)=>{let[f,E,S]=d;return e.getOfflineSigner(f).signDirect(E,rn(S))},signAmino:(...d)=>{let[f,E,S]=d;return e.getOfflineSignerOnlyAmino(f).signAmino(E,S)},signArbitrary:(d,f,E)=>l(void 0,null,function*(){let T=(yield e.getOfflineSigner(d).getAccounts()).find(y=>y.address===f);if(!T)throw new Error(`Wallet not connected to account ${f}`);let O=(()=>{switch(T.algo){case"secp256k1":return amino.encodeSecp256k1Pubkey(T.pubkey);case"ed25519":return amino.encodeEd25519Pubkey(T.pubkey);default:throw new Error("sr25519 public key algorithm is not supported")}})();return {signature:yield e.signArbitrary(E),pub_key:{type:T.algo==="secp256k1"?amino.pubkeyType.secp256k1:amino.pubkeyType.ed25519,value:O.value}}}),subscription:d=>{let f=()=>{N(),d();};return window.addEventListener("initia_keystorechange",f),()=>{window.removeEventListener("initia_keystorechange",f);}}}}throw p.getState()._notFoundFn(),new Error("window.initia is not defined")};var pe=()=>{if(typeof window.keplr!="undefined"){let e=window.keplr;return Object.assign(e,{subscription:o=>{let n=()=>{N(),o();};return window.addEventListener("keplr_keystorechange",n),()=>{window.removeEventListener("keplr_keystorechange",n);}},setDefaultOptions:o=>{e.defaultOptions=o;}})}throw p.getState()._notFoundFn(),new Error("window.keplr is not defined")};var me=()=>{if(typeof window.leap!="undefined"){let e=window.leap;return Object.assign(e,{subscription:o=>{let n=()=>{N(),o();};return window.addEventListener("leap_keystorechange",n),()=>{window.removeEventListener("leap_keystorechange",n);}},setDefaultOptions:o=>{e.defaultOptions=o;}})}throw p.getState()._notFoundFn(),new Error("window.leap is not defined")};var de={},rt=e=>{let t=window.ethereum;if(t&&e){let i=()=>l(void 0,null,function*(){return yield t.request({method:"wallet_getSnaps"})}),r=u=>l(void 0,null,function*(){try{let y=yield i();return Object.values(y).find(C=>C.id===e.id&&(!u||C.version===u))}catch(y){return}}),o=()=>l(void 0,null,function*(){yield t.request({method:"wallet_requestSnaps",params:{[e.id]:e.params||{}}});}),n=()=>l(void 0,null,function*(){var K;let u=yield t.request({method:"web3_clientVersion"});if(!u.includes("MetaMask"))throw new Error("Metamask is not installed");if(typeof window.okxwallet!="undefined"&&window.okxwallet.isOkxWallet)throw new Error("You have OKX Wallet installed. Please disable and reload the page to use Metamask Snap.");let C=(K=u.split("MetaMask/v")[1])==null?void 0:K.split(".")[0];if(!(Number(C)>=11))throw new Error("Metamask Snap is not supported in this version");return (yield r())||(yield o()),!0}),a=u=>l(void 0,null,function*(){(yield r())||(yield o());}),s=(u,y,C)=>l(void 0,null,function*(){let M=yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"signDirect",params:{chainId:u,signerAddress:y,signDoc:C}}}}),W=C.accountNumber,K=new lt__default.default(W.low,W.high,W.unsigned);return {signature:M.signature,signed:j(v({},M.signed),{accountNumber:`${K.toString()}`,authInfoBytes:new Uint8Array(Object.values(M.signed.authInfoBytes)),bodyBytes:new Uint8Array(Object.values(M.signed.bodyBytes))})}}),c=(u,y,C)=>l(void 0,null,function*(){return yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"signAmino",params:{chainId:u,signerAddress:y,signDoc:C}}}})}),m=u=>l(void 0,null,function*(){if(typeof de[u]!="undefined")return de[u];let y=yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"getKey",params:{chainId:u}}}});if(!y)throw new Error("No response from Metamask");return y.pubKey=Uint8Array.from(Object.values(y.pubkey)),delete y.pubkey,de[u]=y,de[u]}),h=u=>l(void 0,null,function*(){let y=yield m(u);return {address:y.bech32Address,algo:y.algo,pubkey:y.pubKey}}),d=(...u)=>l(void 0,null,function*(){let[y,C,M,W]=u;return yield c(y,C,M)}),f=(...u)=>l(void 0,null,function*(){let[y,C,M]=u;return yield s(y,C,M)}),S=u=>({getAccounts:()=>l(void 0,null,function*(){return [yield h(u)]}),signAmino:(y,C)=>d(u,y,C)});return {enable:a,experimentalSuggestChain:(...u)=>l(void 0,null,function*(){yield n(),yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"suggestChain",params:{chainInfo:u[0]}}}});}),getKey:m,getOfflineSigner:u=>({getAccounts:()=>l(void 0,null,function*(){return [yield h(u)]}),signDirect:(y,C)=>f(u,y,C),signAmino:(y,C)=>d(u,y,C)}),getOfflineSignerAuto:u=>l(void 0,null,function*(){return S(u)}),getOfflineSignerOnlyAmino:S,init:n,signAmino:d,signDirect:f}}throw p.getState()._notFoundFn(),new Error("window.ethereum is not defined")};var st=()=>rt({id:"npm:@leapwallet/metamask-cosmos-snap"});var fe=()=>{var e;if(typeof((e=window.okxwallet)==null?void 0:e.keplr)!="undefined"){let t=window.okxwallet.keplr;return Object.assign(t,{subscription:n=>{var s;let a=()=>{N(),n();};return (s=window.okxwallet)==null||s.on("accountsChanged",a),()=>{var c;(c=window.okxwallet)==null||c.removeListener("accountsChanged",a);}},setDefaultOptions:n=>{t.defaultOptions=n;}})}throw p.getState()._notFoundFn(),new Error("window.okxwallet.keplr is not defined")};var ge=()=>{if(typeof window.station!="undefined"){let e=window.station.keplr;return {subscription:n=>{let a=()=>{N(),n();};return window.addEventListener("station_wallet_change",a),()=>{window.removeEventListener("station_wallet_change",a);}},getKey:n=>l(void 0,null,function*(){let a=yield e.getKey(n);return v({isKeystone:!1},a)}),getOfflineSigner:n=>{try{let a=e.getOfflineSignerOnlyAmino(n);return Object.assign(a,{signDirect:(m,h)=>{throw new Error("signDirect not supported by Station")}})}catch(a){throw console.error(a),a}},experimentalSuggestChain:n=>l(void 0,null,function*(){try{if(!n.bech32Config)throw new Error("Bech32Config is required");if(!n.stakeCurrency)throw new Error("StakeCurrency is required");let a=Object.assign(n,{bech32Config:n.bech32Config,chainSymbolImageUrl:n.chainSymbolImageUrl||"",stakeCurrency:{coinDecimals:n.stakeCurrency.coinDecimals,coinDenom:n.stakeCurrency.coinDenom,coinImageUrl:n.stakeCurrency.coinImageUrl||"",coinMinimalDenom:n.stakeCurrency.coinMinimalDenom},currencies:n.currencies.map(s=>({coinDecimals:s.coinDecimals,coinDenom:s.coinDenom,coinImageUrl:s.coinImageUrl||"",coinMinimalDenom:s.coinMinimalDenom})),feeCurrencies:n.feeCurrencies.map(s=>{var c,m,h;return {coinDecimals:s.coinDecimals,coinDenom:s.coinDenom,coinImageUrl:s.coinImageUrl||"",coinMinimalDenom:s.coinMinimalDenom,gasPriceStep:{average:((c=s.gasPriceStep)==null?void 0:c.average)||0,high:((m=s.gasPriceStep)==null?void 0:m.high)||0,low:((h=s.gasPriceStep)==null?void 0:h.low)||0}}})});yield e.experimentalSuggestChain(a);}catch(a){throw console.error(a),a}}),enable:n=>e.enable(n),disable:n=>e.disable(n),getOfflineSignerAuto:n=>e.getOfflineSignerAuto(n),getOfflineSignerOnlyAmino:n=>e.getOfflineSignerOnlyAmino(n),signDirect:()=>e.signDirect(),signAmino:(n,a,s,c)=>e.signAmino(n,a,s)}}throw p.getState()._notFoundFn(),new Error("window.station is not defined")};var ye=()=>{if(typeof window.vectis!="undefined"){let e=window.vectis.cosmos;return {enable:s=>e.enable(s),getOfflineSigner:s=>e.getOfflineSigner(s),getOfflineSignerAuto:s=>e.getOfflineSignerAuto(s),getKey:s=>l(void 0,null,function*(){let c=yield e.getKey(s);return {address:encoding.fromBech32(c.address).data,algo:c.algo,bech32Address:c.address,name:c.name,pubKey:c.pubKey,isKeystone:!1,isNanoLedger:c.isNanoLedger}}),subscription:s=>{let c=()=>{N(),s();};return window.addEventListener("vectis_accountChanged",c),()=>{window.removeEventListener("vectis_accountChanged",c);}},getOfflineSignerOnlyAmino:(...s)=>{let c=s[0];return e.getOfflineSignerAmino(c)},experimentalSuggestChain:(...s)=>l(void 0,null,function*(){var h;let[c]=s;if(!c.bech32Config)throw new Error("Bech32Config is required");if(!c.stakeCurrency)throw new Error("StakeCurrency is required");let m={rpcUrl:c.rpc,restUrl:c.rest,prettyName:c.chainName.replace(" ",""),bech32Prefix:(h=c.bech32Config)==null?void 0:h.bech32PrefixAccAddr,currencies:c.currencies,feeCurrencies:c.feeCurrencies,chainId:c.chainId,chainName:c.chainName,bip44:c.bip44,stakeCurrency:c.stakeCurrency,features:c.features};return e.suggestChains([m])}),signDirect:(...s)=>l(void 0,null,function*(){var h;let{1:c,2:m}=s;return e.signDirect(c,{bodyBytes:m.bodyBytes||Uint8Array.from([]),authInfoBytes:m.authInfoBytes||Uint8Array.from([]),accountNumber:lt__default.default.fromString(((h=m.accountNumber)==null?void 0:h.toString())||"",!1),chainId:m.chainId||""})}),signAmino:(...s)=>l(void 0,null,function*(){let{1:c,2:m}=s;return e.signAmino(c,m)})}}throw p.getState()._notFoundFn(),new Error("window.vectis is not defined")};var G=()=>{if(typeof window!="undefined"){let e=navigator.userAgent;return !!(/android/i.test(e)||/iPad|iPhone|iPod/.test(e))}return !1},at=()=>G()&&navigator.userAgent.toLowerCase().includes("android"),ct=()=>G()&&(navigator.userAgent.toLowerCase().includes("iphone")||navigator.userAgent.toLowerCase().includes("ipad"));var Me=(e,t,i=new Error("Promise timed out"))=>{let r=new Promise((o,n)=>{setTimeout(()=>{n(i);},t);});return Promise.race([e,r])};var z=e=>{var K,ee,ie;if(!((ie=(ee=(K=p.getState().walletConnect)==null?void 0:K.options)==null?void 0:ee.projectId)!=null&&ie.trim()))throw new Error("walletConnect.options.projectId is not defined");let t=(e==null?void 0:e.walletType)||"walletconnect",i=(e==null?void 0:e.encoding)||"base64",r=w=>{if(!e)return;let{appUrl:I,formatNativeUrl:b}=e;if(G()){if(at()){let k=b(I.mobile.android,w,"android");window.open(k,"_self","noreferrer noopener");}if(ct()){let k=b(I.mobile.ios,w,"ios");window.open(k,"_self","noreferrer noopener");}}},o=()=>{let{wcSignClients:w}=g.getState();if(!w.get(t))throw new Error("walletConnect.signClient is not defined");w.delete(t),g.setState({wcSignClients:w}),p.setState({_reconnect:!1,_reconnectConnector:null,recentChainIds:null});},n=w=>l(void 0,null,function*(){let{wcSignClients:I}=g.getState(),b=I.get(t);if(!b)throw new Error("walletConnect.signClient is not defined");if(!w)throw new Error("No wallet connect session");yield b.disconnect({topic:w,reason:utils.getSdkError("USER_DISCONNECTED")}),yield c(b);}),a=w=>{try{let{wcSignClients:I}=g.getState(),b=I.get(t);if(!b)throw new Error("walletConnect.signClient is not defined");let k=b.session.getAll(),R=k.at(-1);if(!R)return;if(!(R.expiry*1e3>Date.now()+1e3))throw n(R.topic),new Error("invalid session");try{let _=k.find(Q=>{var H,X;return (X=(H=Q.requiredNamespaces.cosmos)==null?void 0:H.chains)==null?void 0:X.includes(`cosmos:${w}`)});if(!_)throw new Error("no session");return _}catch(_){if(!_.message.toLowerCase().includes("no matching key"))throw _}return R}catch(I){if(!I.message.toLowerCase().includes("no matching key"))throw I}},s=w=>{try{return a(w)}catch(I){return}},c=w=>l(void 0,null,function*(){try{let I=w.core.pairing.pairings.getAll({active:!1});if(!I.length)return;yield Promise.all(I.map(b=>l(void 0,null,function*(){yield w.core.pairing.pairings.delete(b.topic,{code:7001,message:"clear pairing"});})));}catch(I){if(!I.message.toLowerCase().includes("no matching key"))throw I}}),m=()=>l(void 0,null,function*(){let{walletConnect:w}=p.getState();if(!(w!=null&&w.options))throw new Error("walletConnect.options is not defined");let{wcSignClients:I}=g.getState(),b=I.get(t);if(b)return b;let k=yield signClient.SignClient.init(w.options);return I.set(t,k),g.setState({wcSignClients:I}),k}),h=w=>{let{wcSignClients:I}=g.getState(),b=I.get(t);if(!b)return ()=>{};let k=R=>{let P=g.getState().accounts;if(R.params.event.name==="accountsChanged"&&P&&!Object.values(P).map(_=>_.bech32Address).includes(R.params.event.data[0])){let _=R.params.chainId.split(":")[1];_&&d([_]);}else w();};return b.events.on("session_delete",o),b.events.on("session_expire",o),b.events.on("session_event",k),()=>{b.events.off("session_delete",o),b.events.off("session_expire",o),b.events.off("session_event",k);}},d=w=>l(void 0,null,function*(){var X;let I=typeof w=="string"?[w]:w,{wcSignClients:b,activeChainIds:k}=g.getState(),R=b.get(t);if(!R)throw new Error("enable walletConnect.signClient is not defined");let{walletConnect:P,chains:_}=p.getState();if(!((X=P==null?void 0:P.options)!=null&&X.projectId))throw new Error("walletConnect.options.projectId is not defined");let Q=new modal.WalletConnectModal(v({projectId:P.options.projectId,enableExplorer:!1,explorerRecommendedWalletIds:"NONE"},P.walletConnectModal)),H=s(I);if(!H){let{uri:F,approval:re}=yield Me(R.connect({requiredNamespaces:{cosmos:{methods:["cosmos_getAccounts","cosmos_signAmino","cosmos_signDirect"],chains:I.map($=>`cosmos:${$}`),events:["chainChanged","accountsChanged"]}}}),15e3,new Error("Connection timeout"));if(!F)throw new Error("No wallet connect uri");e?r(F):yield Q.openModal({uri:F});let se=$=>l(void 0,null,function*(){return $.aborted?Promise.reject(new Error("User closed wallet connect")):new Promise((Te,te)=>{re().then(Ue=>{let Fe=Ue.sessionProperties;if(!Fe)return te(new Error("No session properties"));let xe=JSON.parse(String(Fe.keys));if(xe.length===0)return te(new Error("No accounts"));if(!xe[0])return te(new Error("No accounts"));let qe={};return xe.forEach(V=>{qe[V.chainId]={address:V.address,algo:V.algo,bech32Address:V.bech32Address,isNanoLedger:V.isNanoLedger,isKeystone:V.isKeystone,name:V.name,pubKey:V.pubKey};}),g.setState(V=>({accounts:v(v({},V.accounts||{}),qe)})),Te(Ue)}).catch(te),$.addEventListener("abort",()=>{te(new Error("User closed wallet connect"));},{once:!0});})});try{let $=new AbortController,Te=$.signal;Q.subscribeModal(te=>{te.open||$.abort();}),yield se(Te);}catch($){if(Q.closeModal(),!$.message.toLowerCase().includes("no matching key"))return Promise.reject($)}return e||Q.closeModal(),Promise.resolve()}try{yield Me((()=>l(void 0,null,function*(){var re;let F=Object.fromEntries(yield Promise.all((re=k||I)==null?void 0:re.map(se=>l(void 0,null,function*(){return [se,yield E(se)]}))));g.setState({accounts:F});}))(),15e3,new Error("Connection timeout"));}catch(F){if(n(H.topic),!F.message.toLowerCase().includes("no matching key"))throw F}}),f=w=>l(void 0,null,function*(){let I=yield E(w);return {address:I.bech32Address,algo:I.algo,pubkey:I.pubKey}}),E=w=>l(void 0,null,function*(){let I=a([w]);if(!(I!=null&&I.topic))throw new Error("No wallet connect session");let b=I.sessionProperties&&JSON.parse(String(I.sessionProperties.keys));if(!b)throw new Error("No wallet connect key");if(b.length===0)throw new Error("No wallet connect session");let k=b.find(R=>R.chainId===w);if(!k)throw new Error(`No wallet connect key for chainId ${w}`);return j(v({},k),{pubKey:Buffer.from(String(k.pubKey),i)})}),S=(...w)=>l(void 0,null,function*(){var X,F;let[I,b,k]=w,{accounts:R,wcSignClients:P}=g.getState(),_=P.get(t);if(!_)throw new Error("walletConnect.signClient is not defined");if(!R)throw new Error("account is not defined");let Q=(X=a([I]))==null?void 0:X.topic;if(!Q)throw new Error("No wallet connect session");if(!k.bodyBytes)throw new Error("No bodyBytes");if(!k.authInfoBytes)throw new Error("No authInfoBytes");return r(),yield _.request({topic:Q,chainId:`cosmos:${I}`,request:{method:"cosmos_signDirect",params:{signerAddress:b,signDoc:{chainId:k.chainId,accountNumber:(F=k.accountNumber)==null?void 0:F.toString(),bodyBytes:k.bodyBytes?Buffer.from(k.bodyBytes).toString(i):null,authInfoBytes:k.authInfoBytes?Buffer.from(k.authInfoBytes).toString(i):null}}}})}),A=(...w)=>l(void 0,null,function*(){var _;let[I,b,k]=w,{signature:R,signed:P}=yield S(I,b,k);return {signed:{chainId:(_=P.chainId)!=null?_:"",accountNumber:P.accountNumber?lt__default.default.fromString(P.accountNumber):new lt__default.default(0),authInfoBytes:P.authInfoBytes?new Uint8Array(Buffer.from(P.authInfoBytes,i)):new Uint8Array([]),bodyBytes:P.bodyBytes?new Uint8Array(Buffer.from(P.bodyBytes,i)):new Uint8Array([])},signature:R}}),T=(...w)=>l(void 0,null,function*(){var F;let[I,b,k,R]=w,{wcSignClients:P}=g.getState(),_=P.get(t),{accounts:Q}=g.getState();if(!_)throw new Error("walletConnect.signClient is not defined");if(!Q)throw new Error("account is not defined");let H=(F=a([I]))==null?void 0:F.topic;if(!H)throw new Error("No wallet connect session");return r(),yield _.request({topic:H,chainId:`cosmos:${I}`,request:{method:"cosmos_signDirect",params:{signerAddress:b,signDoc:k}}})}),O=(...w)=>l(void 0,null,function*(){let[I,b,k,R]=w;return yield T(I,b,k)}),u=w=>({getAccounts:()=>l(void 0,null,function*(){return [yield f(w)]}),signDirect:(I,b)=>A(w,I,b)}),y=w=>({getAccounts:()=>l(void 0,null,function*(){return [yield f(w)]}),signAmino:(I,b)=>O(w,I,b)});return {enable:d,disable:w=>l(void 0,null,function*(){var k;let{wcSignClients:I}=g.getState(),b=I.get(t);if(w===void 0){let R=b==null?void 0:b.session.getAll();R!==void 0&&(yield Promise.all(R.map(P=>n(P.topic))));}else typeof w=="string"?yield n((k=a([w]))==null?void 0:k.topic):yield Promise.all(w.map(R=>{var P;return n((P=a([R]))==null?void 0:P.topic)}));(b==null?void 0:b.session.getAll().length)===0&&o();}),experimentalSuggestChain:(...w)=>l(void 0,null,function*(){yield Promise.reject(new Error("WalletConnect does not support experimentalSuggestChain"));}),getKey:E,getOfflineSigner:w=>({getAccounts:()=>l(void 0,null,function*(){return [yield f(w)]}),signDirect:(I,b)=>A(w,I,b),signAmino:(I,b)=>O(w,I,b)}),getOfflineSignerAuto:w=>l(void 0,null,function*(){return (yield E(w)).isNanoLedger?y(w):u(w)}),getOfflineSignerOnlyAmino:y,signAmino:O,signDirect:A,subscription:h,init:m}};var ut=()=>{var t,i,r;if(!((r=(i=(t=p.getState().walletConnect)==null?void 0:t.options)==null?void 0:i.projectId)!=null&&r.trim()))throw new Error("walletConnect.options.projectId is not defined");if(!G())throw new Error("WalletConnect Clot mobile is only supported in mobile");let e={encoding:"base64",appUrl:{mobile:{android:"clot://",ios:"clot://"}},walletType:"wc_clot_mobile",formatNativeUrl:(o,n,a)=>{let s=o.replaceAll("/","").replaceAll(":",""),c=n&&encodeURIComponent(n);switch(a){case"ios":return c?`${s}://wcV2?${c}`:`${s}://wcV2`;default:return c?`${s}://wc?uri=${c}`:`${s}://wc`}}};return z(e)};var pt=()=>{var t,i,r;if(!((r=(i=(t=p.getState().walletConnect)==null?void 0:t.options)==null?void 0:i.projectId)!=null&&r.trim()))throw new Error("walletConnect.options.projectId is not defined");if(!G())throw new Error("WalletConnect Cosmostation mobile is only supported in mobile");let e={encoding:"hex",appUrl:{mobile:{ios:"cosmostation://",android:"cosmostation://"}},walletType:"wc_cosmostation_mobile",formatNativeUrl:(o,n,a)=>{let s=o.replaceAll("/","").replaceAll(":","");return n?`${s}://wc?${n}`:`${s}://wc`}};return z(e)};var mt=()=>{var t,i,r;if(!((r=(i=(t=p.getState().walletConnect)==null?void 0:t.options)==null?void 0:i.projectId)!=null&&r.trim()))throw new Error("walletConnect.options.projectId is not defined");if(!G())throw new Error("WalletConnect Keplr mobile is only supported in mobile");let e={encoding:"base64",appUrl:{mobile:{ios:"keplrwallet://",android:"intent://"}},walletType:"wc_keplr_mobile",formatNativeUrl:(o,n,a)=>{let s=o.replaceAll("/","").replaceAll(":",""),c=n&&encodeURIComponent(n);switch(a){case"ios":return c?`${s}://wcV2?${c}`:`${s}://wcV2`;case"android":return c?`${s}://wcV2?${c}#Intent;package=com.chainapsis.keplr;scheme=keplrwallet;end;`:`${s}://wcV2#Intent;package=com.chainapsis.keplr;scheme=keplrwallet;end;`;default:return c?`${s}://wc?uri=${c}`:`${s}://wc`}}};return z(e)};var dt=()=>{var t,i,r;if(!((r=(i=(t=p.getState().walletConnect)==null?void 0:t.options)==null?void 0:i.projectId)!=null&&r.trim()))throw new Error("walletConnect.options.projectId is not defined");if(!G())throw new Error("WalletConnect Leap mobile is only supported in mobile");let e={encoding:"base64",appUrl:{mobile:{ios:"leapcosmos://",android:"intent://"}},walletType:"wc_leap_mobile",formatNativeUrl:(o,n,a)=>{let s=o.replaceAll("/","").replaceAll(":",""),c=n&&encodeURIComponent(n);switch(a){case"ios":return c?`${s}://wcV2?${c}`:`${s}://wcV2`;case"android":return c?`${s}://wcV2?${c}#Intent;package=io.leapwallet.cosmos;scheme=leapwallet;end;`:`${s}://wcV2#Intent;package=io.leapwallet.cosmos;scheme=leapwallet;end;`;default:return c?`${s}://wc?uri=${c}`:`${s}://wc`}}};return z(e)};var Se=()=>{var e;if(typeof((e=window.xfi)==null?void 0:e.keplr)!="undefined"){let t=window.xfi.keplr;return Object.assign(t,{subscription:o=>{let n=()=>{N(),o();};return window.addEventListener("keplr_keystorechange",n),()=>{window.removeEventListener("keplr_keystorechange",n);}}})}throw p.getState()._notFoundFn(),new Error("window.xfi.keplr is not defined")};var B=(e=p.getState().walletType)=>{try{return D(e),!0}catch(t){return !1}},N=()=>{window.sessionStorage.removeItem(Y),g.setState(ne);},D=(e=p.getState().walletType)=>{var r;let t=(()=>{switch(e){case"keplr":return pe();case"leap":return me();case"cosmostation":return ue();case"vectis":return ye();case"walletconnect":return z();case"wc_keplr_mobile":return mt();case"wc_leap_mobile":return dt();case"wc_cosmostation_mobile":return pt();case"wc_clot_mobile":return ut();case"metamask_snap_leap":return st();case"metamask_snap_cosmos":return nt();case"station":return ge();case"xdefi":return Se();case"capsule":return ae();case"cosmiframe":return le();case"compass":return ce();case"initia":return ot();case"okx":return fe();default:throw new Error("Unknown wallet type")}})(),i=p.getState().walletDefaultOptions;return i&&((r=t.setDefaultOptions)==null||r.call(t,i)),t},ir=()=>Object.fromEntries($e.map(e=>[e,B(e)])),ke=e=>e==="capsule",ft=e=>e==="metamask_snap_leap",gt=()=>!!(navigator!=null&&navigator.userAgent)&&/LeapCosmos/i.test(navigator.userAgent),ve=e=>e==="walletconnect"||e==="wc_keplr_mobile"||e==="wc_leap_mobile"||e==="wc_cosmostation_mobile";var J=e=>l(void 0,null,function*(){var t;try{let{recentChainIds:a,chains:s,walletType:c}=p.getState(),m=(e==null?void 0:e.walletType)||c;if(!B(m))throw new Error(`${m} is not available`);let d=D(m),f=typeof(e==null?void 0:e.chainId)=="string"?[e.chainId]:(e==null?void 0:e.chainId)||a;if(!f)throw new Error("No last known connected chain, connect action requires chain ids");let E=s==null?void 0:s.map(O=>O.chainId);f.forEach(O=>{if(!(E!=null&&E.includes(O)))throw new Error(`Chain ${O} is not provided in GrazProvider`)}),g.setState(O=>{let u=p.getState()._reconnect||!!p.getState()._reconnectConnector||!!f;return O.activeChainIds&&f.filter(C=>{var M;return !((M=O.activeChainIds)!=null&&M.includes(C))}).length>0?{status:"connecting"}:u?{status:"reconnecting"}:{status:"connecting"}});let{accounts:S}=g.getState();if(yield (t=d.init)==null?void 0:t.call(d),ke(m)&&g.getState().capsuleClient&&Object.values(g.getState().accounts||[]).length>0){let O=f.map(C=>s.find(M=>M.chainId===C)),u=g.getState().accounts;g.setState({status:"connecting"});let y=Object.fromEntries(yield Promise.all(f.map(C=>l(void 0,null,function*(){return [C,yield d.getKey(C)]}))));return g.setState(C=>({accounts:v(v({},C.accounts||{}),y)})),p.setState(C=>({recentChainIds:[...C.recentChainIds||[],...f].filter((M,W,K)=>K.indexOf(M)===W)})),g.setState(C=>({activeChainIds:[...C.activeChainIds||[],...f].filter((M,W,K)=>K.indexOf(M)===W)})),g.setState({status:"connected"}),{accounts:u,walletType:m,chains:O}}if(yield d.enable(f),ke(m)){let O=f.map(y=>s.find(C=>C.chainId===y)),u=g.getState().accounts;return g.setState({status:"connecting"}),{accounts:u,walletType:m,chains:O}}if(!ve(m)){let O={};if(ft(m)){let u={};try{for(var i=Qe(f),r,o,n;r=!(o=yield i.next()).done;r=!1){let y=o.value;u[y]=yield d.getKey(y);}}catch(o){n=[o];}finally{try{r&&(o=i.return)&&(yield o.call(i));}finally{if(n)throw n[0]}}O=u;}else if(gt()&&d.getKeys){let u=yield d.getKeys(f);f.forEach((y,C)=>{let M=u[C];M&&(O[y]=M);});}else O=Object.fromEntries(yield Promise.all(f.map(u=>l(void 0,null,function*(){return [u,yield d.getKey(u)]}))));g.setState(u=>({accounts:v(v({},u.accounts||{}),O)}));}p.setState(O=>({recentChainIds:[...O.recentChainIds||[],...f].filter((u,y,C)=>C.indexOf(u)===y)})),g.setState(O=>({activeChainIds:[...O.activeChainIds||[],...f].filter((u,y,C)=>C.indexOf(u)===y)})),p.setState({walletType:m,_reconnect:!!(e!=null&&e.autoReconnect),_reconnectConnector:m}),g.setState({status:"connected"}),typeof window!="undefined"&&window.sessionStorage.setItem(Y,"Active");let A=f.map(O=>s.find(u=>u.chainId===O));return {accounts:g.getState().accounts,walletType:m,chains:A}}catch(a){throw console.error("connect ",a),g.getState().accounts===null&&g.setState({status:"disconnected"}),g.getState().accounts&&g.getState().activeChainIds&&g.setState({status:"connected"}),a}}),oe=e=>{typeof window!="undefined"&&window.sessionStorage.removeItem(Y);let t=typeof(e==null?void 0:e.chainId)=="string"?[e.chainId]:e==null?void 0:e.chainId;if(t){let i=g.getState().accounts;t.forEach(o=>{i==null||delete i[o];}),Object.values(i||{}).length===0?(g.setState(ne),p.setState({_reconnect:!1,_reconnectConnector:null,recentChainIds:null})):(g.setState(o=>{var n;return {activeChainIds:(n=o.activeChainIds)==null?void 0:n.filter(a=>!t.includes(a)),accounts:i}}),p.setState(o=>{var n;return {recentChainIds:(n=o.recentChainIds)==null?void 0:n.filter(a=>!t.includes(a))}}));}else g.setState(ne),p.setState({_reconnect:!1,_reconnectConnector:null,recentChainIds:null});return Promise.resolve()},L=e=>l(void 0,null,function*(){var o;let{recentChainIds:t,_reconnectConnector:i,_reconnect:r}=p.getState();try{let n=B(i||void 0);if(t&&n&&i)return ve(i)?void 0:yield J({chainId:t,walletType:i,autoReconnect:r})}catch(n){(o=e==null?void 0:e.onError)==null||o.call(e,n),oe();}}),yt=e=>l(void 0,null,function*(){if(!(e!=null&&e.chainId))throw new Error("chainId is required");let{walletType:t}=p.getState(),i=e.walletType||t;if(!B(i))throw new Error(`${i} is not available`);let o=D(i),n=o.getOfflineSigner(e.chainId),a=o.getOfflineSignerOnlyAmino(e.chainId),s=yield o.getOfflineSignerAuto(e.chainId);return {offlineSigner:n,offlineSignerAmino:a,offlineSignerAuto:s}});var Pe=()=>{p.setState({recentChainIds:null});},gr=()=>p.getState().recentChainIds,yr=()=>{var i;let{recentChainIds:e,chains:t}=p.getState();return (i=e==null?void 0:e.map(r=>t.find(o=>o.chainId===r)))!=null?i:null},Sr=({chainId:e})=>{var t;return (t=p.getState().chains)==null?void 0:t.find(i=>i.chainId===e)},Cr=({chainId:e})=>{var t;return (t=p.getState().chains)==null?void 0:t.filter(i=>e==null?void 0:e.includes(i.chainId))},We=i=>l(void 0,[i],function*({chainInfo:e,walletType:t}){let r=D(t);return t==="capsule"?yield J({chainId:e.chainId,walletType:t}):yield r.experimentalSuggestChain(e),e}),St=e=>l(void 0,null,function*(){var r;let t=p.getState().walletType;return yield We({chainInfo:e.chainInfo,walletType:(r=e.walletType)!=null?r:t}),yield J({chainId:e.chainInfo.chainId,walletType:e.walletType,autoReconnect:e.autoReconnect})});var Ct=e=>(p.setState(t=>({iframeOptions:e.iframeOptions||t.iframeOptions,walletConnect:e.walletConnect||t.walletConnect,walletType:e.defaultWallet||t.walletType,capsuleConfig:e.capsuleConfig||t.capsuleConfig,walletDefaultOptions:e.walletDefaultOptions||t.walletDefaultOptions,chains:e.chains,chainsConfig:e.chainsConfig||t.chainsConfig,multiChainFetchConcurrency:e.multiChainFetchConcurrency||t.multiChainFetchConcurrency,_notFoundFn:e.onNotFound||t._notFoundFn,_onReconnectFailed:e.onReconnectFailed||t._onReconnectFailed,_reconnect:e.autoReconnect===void 0?!0:e.autoReconnect||t._reconnect})),e);var ht=a=>l(void 0,[a],function*({signingClient:e,senderAddress:t,recipientAddress:i,amount:r,fee:o,memo:n}){if(!e)throw new Error("No connected account detected");if(!t)throw new Error("senderAddress is not defined");return e.sendTokens(t,i,r,o,n)}),wt=h=>l(void 0,[h],function*({signingClient:e,senderAddress:t,recipientAddress:i,transferAmount:r,sourcePort:o,sourceChannel:n,timeoutHeight:a,timeoutTimestamp:s,fee:c,memo:m}){if(!e)throw new Error("Stargate signing client is not ready");if(!t)throw new Error("senderAddress is not defined");return e.sendIbcTokens(t,i,r,o,n,a,s,c,m)}),At=s=>l(void 0,[s],function*({signingClient:e,senderAddress:t,msg:i,fee:r,options:o,label:n,codeId:a}){if(!e)throw new Error("CosmWasm signing client is not ready");return e.instantiate(t,a,i,n,r,o)}),It=s=>l(void 0,[s],function*({signingClient:e,senderAddress:t,msg:i,fee:r,contractAddress:o,funds:n,memo:a}){if(!e)throw new Error("CosmWasm signing client is not ready");return e.execute(t,o,i,r,a,n)}),Et=(e,t,i)=>l(void 0,null,function*(){if(!i)throw new Error("CosmWasm client is not ready");return yield i.queryContractSmart(e,t)}),Ot=(e,t,i)=>{if(!i)throw new Error("CosmWasm client is not ready");let r=new TextEncoder().encode(t);return i.queryContractRaw(e,r)};var Mr=e=>e,kr=e=>e;var Ce=e=>e?Object.keys(e).length===0:!0;var Re=class extends Error{constructor(t){super(),this.name="AbortError",this.message=t;}},bt=e=>globalThis.DOMException===void 0?new Re(e):new DOMException(e),Tt=e=>{let t=e.reason===void 0?bt("This operation was aborted."):e.reason;return t instanceof Error?t:bt(t)};function Ke(n,a){return l(this,arguments,function*(e,t,{concurrency:i=Number.POSITIVE_INFINITY,stopOnError:r=!0,signal:o}={}){return new Promise((s,c)=>{if(e[Symbol.iterator]===void 0&&e[Symbol.asyncIterator]===void 0)throw new TypeError(`Expected \`input\` to be either an \`Iterable\` or \`AsyncIterable\`, got (${typeof e})`);if(typeof t!="function")throw new TypeError("Mapper function is required");if(!((Number.isSafeInteger(i)||i===Number.POSITIVE_INFINITY)&&i>=1))throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${i}\` (${typeof i})`);let m=[],h=[],d=new Map,f=!1,E=!1,S=!1,A=0,T=0,O=e[Symbol.iterator]===void 0?e[Symbol.asyncIterator]():e[Symbol.iterator](),u=C=>{f=!0,E=!0,c(C);};o&&(o.aborted&&u(Tt(o)),o.addEventListener("abort",()=>{u(Tt(o));}));let y=()=>l(this,null,function*(){if(E)return;let C=yield O.next(),M=T;if(T++,C.done){if(S=!0,A===0&&!E){if(!r&&h.length>0){u(new AggregateError(h));return}if(E=!0,d.size===0){s(m);return}let W=[];for(let[K,ee]of m.entries())d.get(K)!==xt&&W.push(ee);s(W);}return}A++,l(this,null,function*(){try{let W=yield C.value;if(E)return;let K=yield t(W,M);K===xt&&d.set(M,K),m[M]=K,A--,yield y();}catch(W){if(r)u(W);else {h.push(W),A--;try{yield y();}catch(K){u(K);}}}});});l(this,null,function*(){for(let C=0;C<i;C++){try{yield y();}catch(M){u(M);break}if(S||f)break}});})})}var xt=Symbol("skip");var U=({chainId:e,multiChain:t})=>{let i=p(o=>o.chains);if(!i)throw new Error("No chains found in GrazProvider");let r=typeof e=="string"?[e]:e;switch(!0){case(!!t&&!!r):return r.map(o=>i.find(n=>n.chainId===o)).filter(Boolean);case(!t&&!!r):return [r.map(o=>i.find(n=>n.chainId===o)).filter(Boolean)[0]];case(!!t&&!r):return i;default:return [i[0]]}},q=(e,t,i)=>l(void 0,null,function*(){let r=p.getState().multiChainFetchConcurrency;if(e){let n=yield Ke(t,i,{concurrency:r});return Object.fromEntries(n.map((a,s)=>[t[s].chainId,a]))}return yield i(t[0])}),Mt=(e,t,i)=>{if(e){let o=t.map(i);return Object.fromEntries(o.map((n,a)=>[t[a].chainId,n]))}return i(t[0])};var Ne=e=>{let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),i=react.useMemo(()=>["USE_STARGATE_CLIENT",t],[t]);return reactQuery.useQuery({queryKey:i,queryFn:o=>l(void 0,[o],function*({queryKey:[,r]}){if(r.length<1)throw new Error("No chains found");return yield q(!!(e!=null&&e.multiChain),r,a=>l(void 0,null,function*(){var h;let s=(h=p.getState().chainsConfig)==null?void 0:h[a.chainId],c={url:a.rpc,headers:v({},(s==null?void 0:s.rpcHeaders)||{})};return yield stargate.StargateClient.connect(c)}))}),enabled:!!t&&t.length>0&&((e==null?void 0:e.enabled)!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})},Be=e=>{let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),i=react.useMemo(()=>["USE_COSMWASM_CLIENT",t],[t]);return reactQuery.useQuery({queryKey:i,queryFn:o=>l(void 0,[o],function*({queryKey:[,r]}){if(r.length<1)throw new Error("No chains found");return yield q(!!(e!=null&&e.multiChain),r,a=>l(void 0,null,function*(){var h;let s=(h=p.getState().chainsConfig)==null?void 0:h[a.chainId],c={url:a.rpc,headers:v({},(s==null?void 0:s.rpcHeaders)||{})};return yield cosmwasmStargate.CosmWasmClient.connect(c)}))}),enabled:!!t&&t.length>0&&((e==null?void 0:e.enabled)!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})},he=({type:e,chainId:t,multiChain:i,enabled:r})=>{let o=U({chainId:t,multiChain:i}),n=react.useMemo(()=>["USE_TENDERMINT_CLIENT",e,o],[e,o]);return reactQuery.useQuery({queryKey:n,queryFn:c=>l(void 0,[c],function*({queryKey:[,a,s]}){if(s.length<1)throw new Error("No chains found");return yield q(!!i,s,h=>l(void 0,null,function*(){var A;let d=(A=p.getState().chainsConfig)==null?void 0:A[h.chainId],f={url:h.rpc,headers:v({},(d==null?void 0:d.rpcHeaders)||{})};return yield (a==="tm37"?tendermintRpc.Tendermint37Client:tendermintRpc.Tendermint34Client).connect(f)}))}),enabled:!!o&&o.length>0&&(r!==void 0?!!r:!0),refetchOnWindowFocus:!1})};var ns=()=>p(e=>({walletType:e.walletType,isCosmostation:e.walletType==="cosmostation",isCosmostationMobile:e.walletType==="wc_cosmostation_mobile",isKeplr:e.walletType==="keplr",isKeplrMobile:e.walletType==="wc_keplr_mobile",isLeap:e.walletType==="leap",isLeapMobile:e.walletType==="wc_leap_mobile",isVectis:e.walletType==="vectis",isWalletConnect:e.walletType==="walletconnect",isMetamaskSnapLeap:e.walletType==="metamask_snap_leap",isStation:e.walletType==="station",isCapsule:e.walletType==="capsule",isCosmiframe:e.walletType==="cosmiframe"}),shallow.shallow),we=e=>{let i=["USE_CHECK_WALLET",p(o=>e||o.walletType)];return reactQuery.useQuery({queryKey:i,queryFn:({queryKey:[,o]})=>B(o)})};var Z=e=>{let t=p(s=>s.walletType),i=g(s=>s.activeChainIds),r=U({chainId:e!=null&&e.chainId?e.chainId:i||void 0,multiChain:e==null?void 0:e.multiChain}),o=g(s=>s.accounts),n=g(s=>s.status);return react.useEffect(()=>g.subscribe(s=>s.status,(s,c)=>{var m,h,d;if(s==="connected"){let{accounts:f,activeChainIds:E}=g.getState(),{chains:S}=p.getState(),{walletType:A}=p.getState();if(!f||!E||!S)return (m=e==null?void 0:e.onDisconnect)==null?void 0:m.call(e);(h=e==null?void 0:e.onConnect)==null||h.call(e,{accounts:f,chains:E.map(T=>S.find(O=>O.chainId===T)),walletType:A,isReconnect:c==="reconnecting"});}s==="disconnected"&&((d=e==null?void 0:e.onDisconnect)==null||d.call(e));}),[e]),{data:react.useMemo(()=>o?Mt(!!(e!=null&&e.multiChain),r,s=>o[s.chainId]):void 0,[o,r,e==null?void 0:e.multiChain]),isConnected:n==="connected",isConnecting:n==="connecting",isDisconnected:n==="disconnected",isReconnecting:n==="reconnecting",isLoading:n==="connecting"||n==="reconnecting",walletType:n==="connected"?t:void 0,reconnect:L,status:n}},wn=e=>{let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),{data:i}=Z(),r=(e==null?void 0:e.bech32Address)||(i==null?void 0:i.bech32Address),{data:o}=Ne({chainId:t.map(a=>a.chainId),multiChain:!0,enabled:((e==null?void 0:e.enabled)===void 0?!0:e.enabled)&&!!r}),n=react.useMemo(()=>["USE_ALL_BALANCES",o,t,r,e==null?void 0:e.chainId],[r,e==null?void 0:e.chainId,t,o]);return reactQuery.useQuery({queryKey:n,queryFn:m=>l(void 0,[m],function*({queryKey:[,a,s,c]}){if(!c)throw new Error("address is not defined");return yield q(!!(e!=null&&e.multiChain),s,d=>l(void 0,null,function*(){var S;let f=a==null?void 0:a[d.chainId];if(!f)throw new Error(`Client is not ready ${d.chainId}`);if(!((S=d.bech32Config)!=null&&S.bech32PrefixAccAddr))throw new Error(`Bech32Config is missing ${d.chainId}`);return yield f.getAllBalances(encoding.toBech32(d.bech32Config.bech32PrefixAccAddr,encoding.fromBech32(c).data))}))}),enabled:!!r&&!!t&&t.length>0&&!Ce(o)&&((e==null?void 0:e.enabled)===void 0?!0:e.enabled),refetchOnMount:!1,refetchOnReconnect:!0,refetchOnWindowFocus:!1})},gs=e=>{let t=U({chainId:e.chainId}),{data:i}=Z({chainId:e.chainId}),r=e.bech32Address||(i==null?void 0:i.bech32Address),{data:o,refetch:n}=wn({chainId:t.map(c=>c.chainId),bech32Address:r,enabled:!!r&&(e.enabled===void 0?!0:e.enabled)}),a=["USE_BALANCE",e.denom,o,t,r,e.chainId],s=reactQuery.useQuery({queryKey:a,queryFn:({queryKey:[,c,m]})=>m==null?void 0:m.find(h=>h.denom===c),enabled:!!e.denom&&!!o&&!!(o!=null&&o.length)&&(e.enabled===void 0?!0:e.enabled)});return j(v({},s),{refetch:c=>l(void 0,null,function*(){return yield n(),s.refetch(c)})})},ys=({onError:e,onLoading:t,onSuccess:i}={})=>{let o=reactQuery.useMutation({mutationKey:["USE_CONNECT",e,t,i],mutationFn:J,onError:(a,s)=>e==null?void 0:e(a,s),onMutate:t,onSuccess:a=>Promise.resolve(i==null?void 0:i(a))}),{data:n}=we();return {connect:a=>o.mutate(a),connectAsync:a=>o.mutateAsync(a),error:o.error,isLoading:o.isPending,isSuccess:o.isSuccess,isSupported:!!n,status:o.status}},Ss=({onError:e,onLoading:t,onSuccess:i}={})=>{let o=reactQuery.useMutation({mutationKey:["USE_DISCONNECT",e,t,i],mutationFn:oe,onError:n=>Promise.resolve(e==null?void 0:e(n,void 0)),onMutate:t,onSuccess:()=>Promise.resolve(i==null?void 0:i(void 0))});return {disconnect:n=>o.mutate(n),disconnectAsync:n=>o.mutateAsync(n),error:o.error,isLoading:o.isPending,isSuccess:o.isSuccess,status:o.status}},Cs=e=>{let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),i=p(o=>o.walletType),r=react.useMemo(()=>["USE_OFFLINE_SIGNERS",t,i],[t,i]);return reactQuery.useQuery({queryKey:r,queryFn:a=>l(void 0,[a],function*({queryKey:[,o,n]}){if(o.length<1)throw new Error("No chain found");if(!B(n))throw new Error(`${n} is not available`);return yield q(!!(e!=null&&e.multiChain),o,m=>l(void 0,null,function*(){return yield yt({chainId:m.chainId,walletType:n})}))}),enabled:!!t&&t.length>0&&!!i,refetchOnWindowFocus:!1})},hs=e=>{let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),{data:i}=Z(),{data:r}=Ne({chainId:t.map(a=>a.chainId),multiChain:!0}),o=(e==null?void 0:e.bech32Address)||(i==null?void 0:i.bech32Address),n=react.useMemo(()=>["USE_BALANCE_STAKED",r,t,o],[t,o,r]);return reactQuery.useQuery({queryKey:n,queryFn:m=>l(void 0,[m],function*({queryKey:[,a,s,c]}){if(!c)throw new Error("address is not defined");return yield q(!!(e!=null&&e.multiChain),s,d=>l(void 0,null,function*(){var E,S;if(!a)throw new Error("Client is not ready");if(!((E=d.bech32Config)!=null&&E.bech32PrefixAccAddr))throw new Error(`Bech32Config is missing ${d.chainId}`);return yield (S=a[d.chainId])==null?void 0:S.getBalanceStaked(encoding.toBech32(d.bech32Config.bech32PrefixAccAddr,encoding.fromBech32(c).data))}))}),enabled:!!o&&!!t&&t.length>0&&!!r,refetchOnMount:!1,refetchOnReconnect:!0,refetchOnWindowFocus:!1})};var Ts=()=>{let e=p(r=>r.capsuleState),t=g(r=>r.capsuleClient),i=ae();return {setModalState:r=>{p.setState(o=>{var n;return {capsuleState:{showModal:r,chainId:(n=o.capsuleState)==null?void 0:n.chainId}}});},modalState:!!(e!=null&&e.showModal),client:t,onAfterLoginSuccessful:i.onAfterLoginSuccessful,onLoginFailure:()=>{oe();}}};var Rs=()=>g(e=>e.activeChainIds),An=()=>{var e;return (e=g(t=>t.activeChainIds))==null?void 0:e.map(t=>{var r;let i=(r=p.getState().chains)==null?void 0:r.find(o=>o.chainId===t);if(i)return i}).filter(Boolean)},Ks=({chainId:e})=>{var t;return (t=p().chains)==null?void 0:t.find(i=>i.chainId===e)},Ds=({chainId:e})=>{var t;return (t=p().chains)==null?void 0:t.filter(i=>e==null?void 0:e.includes(i.chainId))},_s=({denom:e})=>{let t=An();return reactQuery.useQuery({queryKey:["USE_ACTIVE_CHAIN_CURRENCY",e],queryFn:({queryKey:[,o]})=>{var n;return (n=t==null?void 0:t.find(a=>a.currencies.find(s=>s.coinMinimalDenom===o)))==null?void 0:n.currencies.find(a=>a)}})},Ns=e=>{var o;let t=(o=e.status)!=null?o:"BOND_STATUS_BONDED",i=["USE_ACTIVE_CHAIN_VALIDATORS",e.queryClient,t];return reactQuery.useQuery({queryKey:i,queryFn:s=>l(void 0,[s],function*({queryKey:[,n,a]}){if(!n)throw new Error("Query client is not defined");return yield n.staking.validators(a)}),enabled:typeof e.queryClient!="undefined"})},Bs=()=>({data:p(t=>t.recentChainIds),clear:Pe}),Ls=()=>{var t;return {data:(t=p(i=>i.recentChainIds))==null?void 0:t.map(i=>{var o;let r=(o=p.getState().chains)==null?void 0:o.find(n=>n.chainId===i);if(r)return r}).filter(Boolean),clear:Pe}},Us=({onError:e,onLoading:t,onSuccess:i}={})=>{let o=reactQuery.useMutation({mutationKey:["USE_SUGGEST_CHAIN",e,t,i],mutationFn:We,onError:(n,a)=>Promise.resolve(e==null?void 0:e(n,a.chainInfo)),onMutate:n=>t==null?void 0:t(n.chainInfo),onSuccess:n=>Promise.resolve(i==null?void 0:i(n))});return {error:o.error,isLoading:o.isPending,isSuccess:o.isSuccess,suggest:o.mutate,suggestAsync:o.mutateAsync,status:o.status}},Fs=({onError:e,onLoading:t,onSuccess:i}={})=>{let o=reactQuery.useMutation({mutationKey:["USE_SUGGEST_CHAIN_AND_CONNECT",e,t,i],mutationFn:St,onError:(a,s)=>Promise.resolve(e==null?void 0:e(a,s)),onMutate:a=>t==null?void 0:t(a),onSuccess:a=>Promise.resolve(i==null?void 0:i(a))}),{data:n}=we();return {error:o.error,isLoading:o.isPending,isSuccess:o.isSuccess,isSupported:!!n,status:o.status,suggestAndConnect:o.mutate,suggestAndConnectAsync:o.mutateAsync}};var Hs=({onError:e,onLoading:t,onSuccess:i}={})=>{let{data:r}=Z(),o=r==null?void 0:r.bech32Address,n=reactQuery.useMutation({mutationKey:["USE_SEND_TOKENS",e,t,i,o],mutationFn:a=>ht(v({senderAddress:o},a)),onError:(a,s)=>Promise.resolve(e==null?void 0:e(a,s)),onMutate:t,onSuccess:a=>Promise.resolve(i==null?void 0:i(a))});return {error:n.error,isLoading:n.isPending,isSuccess:n.isSuccess,sendTokens:n.mutate,sendTokensAsync:n.mutateAsync,status:n.status}},Xs=({onError:e,onLoading:t,onSuccess:i}={})=>{let{data:r}=Z(),o=r==null?void 0:r.bech32Address,n=reactQuery.useMutation({mutationKey:["USE_SEND_IBC_TOKENS",e,t,i,o],mutationFn:a=>wt(v({senderAddress:o},a)),onError:(a,s)=>Promise.resolve(e==null?void 0:e(a,s)),onMutate:t,onSuccess:a=>Promise.resolve(i==null?void 0:i(a))});return {error:n.error,isLoading:n.isPending,isSuccess:n.isSuccess,sendIbcTokens:n.mutate,sendIbcTokensAsync:n.mutateAsync,status:n.status}},Ys=({codeId:e,onError:t,onLoading:i,onSuccess:r})=>{let{data:o}=Z(),n=o==null?void 0:o.bech32Address,s=reactQuery.useMutation({mutationKey:["USE_INSTANTIATE_CONTRACT",t,i,r,e,n],mutationFn:c=>{var h;if(!n)throw new Error("senderAddress is undefined");let m=j(v({},c),{fee:(h=c.fee)!=null?h:"auto",senderAddress:n,codeId:e});return At(m)},onError:(c,m)=>Promise.resolve(t==null?void 0:t(c,m)),onMutate:i,onSuccess:c=>Promise.resolve(r==null?void 0:r(c))});return {error:s.error,isLoading:s.isPending,isSuccess:s.isSuccess,instantiateContract:s.mutate,instantiateContractAsync:s.mutateAsync,status:s.status}},Js=({contractAddress:e,onError:t,onLoading:i,onSuccess:r})=>{let{data:o}=Z(),n=o==null?void 0:o.bech32Address,s=reactQuery.useMutation({mutationKey:["USE_EXECUTE_CONTRACT",t,i,r,e,n],mutationFn:c=>{var h,d,f;if(!n)throw new Error("senderAddress is undefined");let m=j(v({},c),{fee:(h=c.fee)!=null?h:"auto",senderAddress:n,contractAddress:e,memo:(d=c.memo)!=null?d:"",funds:(f=c.funds)!=null?f:[]});return It(m)},onError:(c,m)=>Promise.resolve(t==null?void 0:t(c,m)),onMutate:i,onSuccess:c=>Promise.resolve(r==null?void 0:r(c))});return {error:s.error,isLoading:s.isPending,isSuccess:s.isSuccess,executeContract:s.mutate,executeContractAsync:s.mutateAsync,status:s.status}},Zs=e=>{let{data:t}=Be();return reactQuery.useQuery({queryKey:["USE_QUERY_SMART",e==null?void 0:e.address,e==null?void 0:e.queryMsg,t],queryFn:({queryKey:[,r]})=>{if(!(e!=null&&e.address)||!e.queryMsg)throw new Error("address or queryMsg undefined");return Et(e.address,e.queryMsg,t)},enabled:!!(e!=null&&e.address)&&!!(e!=null&&e.queryMsg)&&!!t})},ea=e=>{let{data:t}=Be(),i=["USE_QUERY_RAW",e==null?void 0:e.key,e==null?void 0:e.address,t];return reactQuery.useQuery({queryKey:i,queryFn:({queryKey:[,o]})=>{if(!(e!=null&&e.address)||!e.key)throw new Error("address or key undefined");return Ot(e.address,e.key,t)},enabled:!!(e!=null&&e.address)&&!!(e!=null&&e.key)&&!!t})};function da(e){let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),i=p(n=>n.walletType),r=g(n=>n.activeChainIds),o=react.useMemo(()=>["USE_STARGATE_SIGNING_CLIENT",t,i,e,r],[r,e,t,i]);return reactQuery.useQuery({queryKey:o,queryFn:s=>l(this,[s],function*({queryKey:[,n,a]}){if(n.length<1)throw new Error("No chains found");return yield q(!!(e!=null&&e.multiChain),n,m=>l(this,null,function*(){var A,T;if(!(r!=null&&r.includes(m.chainId)))return null;if(!B(a))throw new Error(`${a} is not available`);let d=yield (()=>l(this,null,function*(){switch(e==null?void 0:e.offlineSigner){case"offlineSigner":return D(a).getOfflineSigner(m.chainId);case"offlineSignerAuto":return D(a).getOfflineSignerAuto(m.chainId);case"offlineSignerOnlyAmino":return D(a).getOfflineSignerOnlyAmino(m.chainId);default:return D(a).getOfflineSignerAuto(m.chainId)}}))(),f=(A=p.getState().chainsConfig)==null?void 0:A[m.chainId],E={url:m.rpc,headers:v({},(f==null?void 0:f.rpcHeaders)||{})};return (e==null?void 0:e.multiChain)===!0&&e.opts,yield stargate.SigningStargateClient.connectWithSigner(E,d,e!=null&&e.multiChain?(T=e.opts)==null?void 0:T[m.chainId]:e==null?void 0:e.opts)}))}),enabled:!!t&&t.length>0&&!!i&&((e==null?void 0:e.enabled)!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}function fa(e){let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),i=p(n=>n.walletType),r=g(n=>n.activeChainIds),o=react.useMemo(()=>["USE_COSMWASM_SIGNING_CLIENT",t,i,e,r],[r,e,t,i]);return reactQuery.useQuery({queryKey:o,queryFn:s=>l(this,[s],function*({queryKey:[,n,a]}){if(n.length<1)throw new Error("No chains found");return yield q(!!(e!=null&&e.multiChain),n,m=>l(this,null,function*(){var T,O;if(!(r!=null&&r.includes(m.chainId)))return null;if(!B(a))throw new Error(`${a} is not available`);let d=yield (()=>l(this,null,function*(){switch(e==null?void 0:e.offlineSigner){case"offlineSigner":return D(a).getOfflineSigner(m.chainId);case"offlineSignerAuto":return D(a).getOfflineSignerAuto(m.chainId);case"offlineSignerOnlyAmino":return D(a).getOfflineSignerOnlyAmino(m.chainId);default:return D(a).getOfflineSignerAuto(m.chainId)}}))(),f=(T=p.getState().chainsConfig)==null?void 0:T[m.chainId],E={url:m.rpc,headers:v({},(f==null?void 0:f.rpcHeaders)||{})},S=f!=null&&f.gas?stargate.GasPrice.fromString(`${f.gas.price}${f.gas.denom}`):void 0;return yield cosmwasmStargate.SigningCosmWasmClient.connectWithSigner(E,d,v({gasPrice:S},e!=null&&e.multiChain?(O=e.opts)==null?void 0:O[m.chainId]:(e==null?void 0:e.opts)||{}))}))}),enabled:!!t&&t.length>0&&!!i&&((e==null?void 0:e.enabled)!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}function ga(e){let t=U({chainId:e.chainId,multiChain:e.multiChain}),i=p(a=>a.walletType),r=g(a=>a.activeChainIds),o=react.useMemo(()=>["USE_STARGATE_TM_SIGNING_CLIENT",t,i,e,r],[r,e,t,i]),{data:n}=he({type:e.type,chainId:e.chainId,multiChain:e.multiChain});return reactQuery.useQuery({queryKey:o,queryFn:c=>l(this,[c],function*({queryKey:[,a,s]}){if(a.length<1)throw new Error("No chains found");return yield q(!!e.multiChain,a,h=>l(this,null,function*(){var A;if(!(r!=null&&r.includes(h.chainId)))return null;if(!B(s))throw new Error(`${s} is not available`);if(!n)throw new Error("No tendermint client found");let f=yield (()=>l(this,null,function*(){switch(e.offlineSigner){case"offlineSigner":return D(s).getOfflineSigner(h.chainId);case"offlineSignerAuto":return D(s).getOfflineSignerAuto(h.chainId);case"offlineSignerOnlyAmino":return D(s).getOfflineSignerOnlyAmino(h.chainId);default:return D(s).getOfflineSignerAuto(h.chainId)}}))(),E=e.multiChain?n[h.chainId]:n;return yield stargate.SigningStargateClient.createWithSigner(E,f,e.multiChain?(A=e.opts)==null?void 0:A[h.chainId]:e.opts)}))}),enabled:!!t&&t.length>0&&!!i&&!!n&&(e.enabled!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}function ya(e){let t=U({chainId:e.chainId,multiChain:e.multiChain}),i=p(s=>s.walletType),r=g(s=>s.activeChainIds),o=react.useMemo(()=>["USE_COSMWASM_TM_SIGNING_CLIENT",t,i,e,r],[r,e,t,i]),{data:n}=he({type:e.type,chainId:e.chainId,multiChain:!1,enabled:!e.multiChain}),{data:a}=he({type:e.type,chainId:e.chainId,multiChain:!0,enabled:!!e.multiChain});return reactQuery.useQuery({queryKey:o,queryFn:m=>l(this,[m],function*({queryKey:[,s,c]}){if(s.length<1)throw new Error("No chains found");return yield q(!!e.multiChain,s,d=>l(this,null,function*(){var u,y;if(!(r!=null&&r.includes(d.chainId)))return null;if(!B(c))throw new Error(`${c} is not available`);let E=yield (()=>l(this,null,function*(){switch(e.offlineSigner){case"offlineSigner":return D(c).getOfflineSigner(d.chainId);case"offlineSignerAuto":return D(c).getOfflineSignerAuto(d.chainId);case"offlineSignerOnlyAmino":return D(c).getOfflineSignerOnlyAmino(d.chainId);default:return D(c).getOfflineSignerAuto(d.chainId)}}))(),S=(u=p.getState().chainsConfig)==null?void 0:u[d.chainId],A=S!=null&&S.gas?stargate.GasPrice.fromString(`${S.gas.price}${S.gas.denom}`):void 0,T=e.multiChain?a==null?void 0:a[d.chainId]:n;if(!T)throw new Error("No tendermint client found");return yield cosmwasmStargate.SigningCosmWasmClient.createWithSigner(T,E,v({gasPrice:A},e.multiChain?(y=e.opts)==null?void 0:y[d.chainId]:e.opts||{}))}))}),enabled:!!t&&t.length>0&&!!i&&(!!n||!Ce(a))&&(e.enabled!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}var Bt=({children:e})=>{let[t,i]=react.useState(!1);return react.useEffect(()=>{i(!0);},[]),jsxRuntime.jsx(jsxRuntime.Fragment,{children:t?e:null})};var xn=()=>{let e=typeof window!="undefined"&&window.sessionStorage.getItem(Y)==="Active",{_reconnect:t,_onReconnectFailed:i,_reconnectConnector:r,iframeOptions:o,chains:n}=p(),{activeChainIds:a,wcSignClients:s}=g(),c=B(r||void 0);return react.useEffect(()=>{if(!o||o.autoConnect===!1||!o.allowedIframeParentOrigins.length||!n)return;new cosmiframe.Cosmiframe(o.allowedIframeParentOrigins).isReady().then(h=>{if(h)return J({chainId:n.map(d=>d.chainId),walletType:"cosmiframe"})});},[o]),react.useEffect(()=>{if(r){if(!c)return;e&&a?L({onError:i}):!e&&t&&L({onError:i});}},[c]),react.useEffect(()=>{var m,h,d,f,E,S,A,T,O,u,y,C,M,W,K,ee,ie,w,I,b;if(r){if(!c)return;r==="cosmostation"&&((h=(m=ue()).subscription)==null||h.call(m,()=>{L({onError:i});})),r==="keplr"&&((f=(d=pe()).subscription)==null||f.call(d,()=>{L({onError:i});})),r==="leap"&&((S=(E=me()).subscription)==null||S.call(E,()=>{L({onError:i});})),r==="compass"&&((T=(A=ce()).subscription)==null||T.call(A,()=>{L({onError:i});})),r==="vectis"&&((u=(O=ye()).subscription)==null||u.call(O,()=>{L({onError:i});})),r==="walletconnect"&&s.has("walletconnect")&&((C=(y=z()).subscription)==null||C.call(y,()=>{L({onError:i});})),r==="station"&&((W=(M=ge()).subscription)==null||W.call(M,()=>{L({onError:i});})),r==="xdefi"&&((ee=(K=Se()).subscription)==null||ee.call(K,()=>{L({onError:i});})),r==="cosmiframe"&&((w=(ie=le()).subscription)==null||w.call(ie,()=>{L({onError:i});})),r==="okx"&&((b=(I=fe()).subscription)==null||b.call(I,()=>{L({onError:i});}));}},[r,s,c]),null},Lt=()=>(xn(),null);var ja=({children:e,grazOptions:t})=>(react.useEffect(()=>{Ct(t);},[t]),jsxRuntime.jsxs(Bt,{children:[e,jsxRuntime.jsx(Lt,{})]}));
25
+ var Ft=Object.defineProperty,qt=Object.defineProperties;var Gt=Object.getOwnPropertyDescriptors;var ze=Object.getOwnPropertySymbols;var zt=Object.prototype.hasOwnProperty,Qt=Object.prototype.propertyIsEnumerable;var Qe=(e,t,i)=>t in e?Ft(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,k=(e,t)=>{for(var i in t||(t={}))zt.call(t,i)&&Qe(e,i,t[i]);if(ze)for(var i of ze(t))Qt.call(t,i)&&Qe(e,i,t[i]);return e},q=(e,t)=>qt(e,Gt(t));var l=(e,t,i)=>new Promise((r,o)=>{var n=c=>{try{s(i.next(c));}catch(d){o(d);}},a=c=>{try{s(i.throw(c));}catch(d){o(d);}},s=c=>c.done?r(c.value):Promise.resolve(c.value).then(n,a);s((i=i.apply(e,t)).next());}),je=(e,t,i)=>(t=e[Symbol.asyncIterator],i=(r,o)=>(o=e[r])&&(t[r]=n=>new Promise((a,s,c)=>(n=o.call(e,n),c=n.done,Promise.resolve(n.value).then(d=>a({value:d,done:c}),s)))),t?t.call(e):(e=e[Symbol.iterator](),t={},i("next"),i("return"),t));var Y="graz-reconnect-session";var $e=(p=>(p.KEPLR="keplr",p.LEAP="leap",p.VECTIS="vectis",p.COSMOSTATION="cosmostation",p.WALLETCONNECT="walletconnect",p.WC_KEPLR_MOBILE="wc_keplr_mobile",p.WC_LEAP_MOBILE="wc_leap_mobile",p.WC_COSMOSTATION_MOBILE="wc_cosmostation_mobile",p.WC_CLOT_MOBILE="wc_clot_mobile",p.METAMASK_SNAP_LEAP="metamask_snap_leap",p.METAMASK_SNAP_COSMOS="metamask_snap_cosmos",p.STATION="station",p.XDEFI="xdefi",p.CAPSULE="capsule",p.COSMIFRAME="cosmiframe",p.COMPASS="compass",p.INITIA="initia",p.OKX="okx",p.CACTUSCOSMOS="cactuscosmos",p))($e||{}),Ve=["keplr","leap","vectis","cosmostation","walletconnect","wc_keplr_mobile","wc_leap_mobile","wc_cosmostation_mobile","wc_clot_mobile","metamask_snap_leap","station","xdefi","capsule","metamask_snap_cosmos","cosmiframe","compass","initia","okx","cactuscosmos"];var $t={iframeOptions:null,recentChainIds:null,chains:null,chainsConfig:null,capsuleConfig:null,capsuleState:null,multiChainFetchConcurrency:3,walletType:"keplr",walletConnect:{options:null,walletConnectModal:null},walletDefaultOptions:null,_notFoundFn:()=>null,_onReconnectFailed:()=>null,_reconnect:!1,_reconnectConnector:null},ne={accounts:null,activeChainIds:null,status:"disconnected",wcSignClients:new Map,capsuleClient:null},Vt={name:"graz-session",version:2,partialize:e=>({accounts:e.accounts,activeChainIds:e.activeChainIds}),storage:middleware.createJSONStorage(()=>sessionStorage)},Ht={name:"graz-internal",partialize:e=>({recentChainIds:e.recentChainIds,_reconnect:e._reconnect,_reconnectConnector:e._reconnectConnector,walletType:e.walletType}),version:2},y=zustand.create(middleware.subscribeWithSelector(middleware.persist(()=>ne,Vt))),u=zustand.create(middleware.subscribeWithSelector(middleware.persist(()=>$t,Ht)));var ce=()=>{if(typeof window.cactuslink_cosmos!="undefined"){let e=window.cactuslink_cosmos,i=Object.assign(e,{subscription:n=>{let a=()=>{N(),n();};return window.addEventListener("accountsChanged",a),()=>{window.removeEventListener("accountsChanged",a);}}}),r=n=>Promise.resolve(e.getOfflineSigner(n)),o=n=>e.getOfflineSigner(n);return q(k({},i),{getOfflineSignerAuto:r,getOfflineSignerOnlyAmino:o,experimentalSuggestChain:()=>l(void 0,null,function*(){})})}throw u.getState()._notFoundFn(),new Error("window.cactuslink_cosmos is not defined")};var le=()=>{var g,O;if(!((g=u.getState().capsuleConfig)!=null&&g.apiKey)||!((O=u.getState().capsuleConfig)!=null&&O.env))throw new Error("Capsule configuration is not set");let e=()=>l(void 0,null,function*(){var T,E;let C=(yield import('@leapwallet/cosmos-social-login-capsule-provider')).CapsuleProvider,A=new C({apiKey:(T=u.getState().capsuleConfig)==null?void 0:T.apiKey,env:(E=u.getState().capsuleConfig)==null?void 0:E.env});return y.setState({capsuleClient:A}),A});return {init:e,enable:C=>l(void 0,null,function*(){let A=typeof C=="string"?[C]:C,T=y.getState().capsuleClient;T||(T=yield e()),u.setState({capsuleState:{showModal:!0,chainId:A}});}),onAfterLoginSuccessful:()=>l(void 0,null,function*(){var m;let C=y.getState().capsuleClient,{chains:A}=u.getState();if(!C)throw new Error("Capsule client is not initialized");if(!A)throw new Error("Chains are not set");yield C.enable();let T=(m=u.getState().capsuleState)==null?void 0:m.chainId;if(!T)throw new Error("Chain ids are not set");let E=Object.fromEntries(yield Promise.all(T.map(p=>l(void 0,null,function*(){let S=yield C.getAccount(p);return [p,{address:encoding.fromBech32(S.address).data,bech32Address:S.address,algo:S.algo,name:S.username||"",pubKey:S.pubkey,isKeystone:!1,isNanoLedger:!1}]}))));y.setState(p=>({accounts:k(k({},p.accounts||{}),E)})),u.setState(p=>({recentChainIds:[...p.recentChainIds||[],...T].filter((S,v,R)=>R.indexOf(S)===v)})),y.setState(p=>({activeChainIds:[...p.activeChainIds||[],...T].filter((S,v,R)=>R.indexOf(S)===v)})),u.setState({walletType:"capsule",_reconnect:!1,_reconnectConnector:"capsule"}),y.setState({status:"connected"}),typeof window!="undefined"&&window.sessionStorage.setItem(Y,"Active"),u.setState({capsuleState:null});}),getKey:C=>l(void 0,null,function*(){let A=y.getState().capsuleClient;if(!A)throw new Error("Capsule client is not initialized");let T=yield A.getAccount(C);return {address:encoding.fromBech32(T.address).data,bech32Address:T.address,algo:T.algo,name:T.username||"",pubKey:T.pubkey,isKeystone:!1,isNanoLedger:!1}}),getOfflineSignerAuto:C=>l(void 0,null,function*(){let A=y.getState().capsuleClient;if(!A)throw new Error("Capsule client is not initialized");return A.getOfflineSignerDirect(C)}),getOfflineSignerDirect:C=>{let A=y.getState().capsuleClient;if(!A)throw new Error("Capsule client is not initialized");return A.getOfflineSignerDirect(C)},signDirect:(...C)=>l(void 0,null,function*(){let[A,T,E]=C,m=y.getState().capsuleClient;if(!m)throw new Error("Capsule client is not initialized");return m.signDirect(A,T,{bodyBytes:E.bodyBytes,authInfoBytes:E.authInfoBytes,chainId:E.chainId,accountNumber:E.accountNumber})}),signAmino:(...C)=>l(void 0,null,function*(){let[A,T,E,m]=C,p=y.getState().capsuleClient;if(!p)throw new Error("Capsule client is not initialized");return p.signAmino(A,T,E,m)}),signArbitrary:(C,A,T)=>l(void 0,null,function*(){let E=y.getState().capsuleClient;if(!E)throw new Error("Capsule client is not initialized");let m=yield E.getAccount(C);if(!m)throw new Error(`Wallet not connected to account ${A}`);let p=(()=>{switch(m.algo){case"secp256k1":return amino.encodeSecp256k1Pubkey(m.pubkey);case"ed25519":return amino.encodeEd25519Pubkey(m.pubkey);default:throw new Error("sr25519 public key algorithm is not supported")}})();return {signature:yield E.signArbitrary(C,A,T),pub_key:{type:m.algo==="secp256k1"?amino.pubkeyType.secp256k1:amino.pubkeyType.ed25519,value:p.value}}}),experimentalSuggestChain:(...C)=>l(void 0,null,function*(){yield Promise.reject(new Error("Capsule does not support experimentalSuggestChain"));}),getOfflineSigner:C=>{let A=y.getState().capsuleClient;if(!A)throw new Error("Capsule client is not initialized");return A.getOfflineSigner(C)},getOfflineSignerAmino:C=>{let A=y.getState().capsuleClient;if(!A)throw new Error("Capsule client is not initialized");return A.getOfflineSignerAmino(C)}}};var ue=()=>{if(typeof window.compass!="undefined"){let e=window.compass;return Object.assign(e,{subscription:o=>{let n=()=>{N(),o();};return window.addEventListener("leap_keystorechange",n),()=>{window.removeEventListener("leap_keystorechange",n);}},setDefaultOptions:o=>{e.defaultOptions=o;}})}throw u.getState()._notFoundFn(),new Error("window.leap is not defined")};var pe=()=>{let e=u.getState();if(!e.iframeOptions)throw e._notFoundFn(),new Error("no iframe options set");if(!cosmiframe.isInIframe())throw e._notFoundFn(),new Error("not in iframe");if(!e.iframeOptions.allowedIframeParentOrigins.length)throw e._notFoundFn(),new Error("no iframe allowed origins");let t=new cosmiframe.Cosmiframe(e.iframeOptions.allowedIframeParentOrigins).getKeplrClient();return {enable:t.enable.bind(t),getKey:t.getKey.bind(t),getOfflineSigner:t.getOfflineSigner.bind(t),getOfflineSignerAuto:t.getOfflineSignerAuto.bind(t),getOfflineSignerOnlyAmino:t.getOfflineSignerOnlyAmino.bind(t),experimentalSuggestChain:t.experimentalSuggestChain.bind(t),signDirect:t.signDirect.bind(t),signAmino:t.signAmino.bind(t)}};var nt={},it=()=>{let e=window.ethereum,t=window.cosmos;if(e)return {init:()=>l(void 0,null,function*(){var w;let n=yield e.request({method:"web3_clientVersion"});if(!n.includes("MetaMask"))throw new Error("Metamask is not installed");if(typeof window.okxwallet!="undefined"&&window.okxwallet.isOkxWallet)throw new Error("You have OKX Wallet installed. Please disable and reload the page to use Metamask Snap.");let s=(w=n.split("MetaMask/v")[1])==null?void 0:w.split(".")[0];if(!(Number(s)>=11))throw new Error("Metamask Snap is not supported in this version");return (yield snapper.isSnapInstalled())||(yield snapper.installSnap()),window.cosmos=new snapper.CosmosSnap,t=window.cosmos,!0}),enable:n=>l(void 0,null,function*(){(yield snapper.isSnapInstalled())||(yield snapper.installSnap());}),getOfflineSigner:n=>t.getOfflineSigner(n),experimentalSuggestChain:n=>l(void 0,null,function*(){if(!n.bech32Config)throw new Error("Bech32Config is required");if(!n.stakeCurrency)throw new Error("StakeCurrency is required");yield t.experimentalSuggestChain(q(k({},n),{stakeCurrency:n.stakeCurrency,bech32Config:n.bech32Config}));}),signAmino:(n,a,s)=>l(void 0,null,function*(){return t.signAmino(n,a,s)}),getKey:n=>l(void 0,null,function*(){return typeof nt[n]!="undefined"?nt[n]:t.getKey(n)}),getOfflineSignerAuto:n=>l(void 0,null,function*(){return (yield t.getKey(n)).isNanoLedger?t.getOfflineSignerOnlyAmino(n):t.getOfflineSigner(n)}),getOfflineSignerOnlyAmino:n=>t.getOfflineSignerOnlyAmino(n),signDirect:(n,a,s)=>l(void 0,null,function*(){return t.signDirect(n,a,s)}),signArbitrary:(n,a,s)=>l(void 0,null,function*(){return t.signArbitrary(n,a,s)}),disable:n=>l(void 0,null,function*(){n&&(yield t.deleteChain(n));})};throw u.getState()._notFoundFn(),new Error("window.ethereum is not defined")};var me=()=>{var e;if(typeof((e=window.cosmostation)==null?void 0:e.providers.keplr)!="undefined"){let t=window.cosmostation.providers.keplr;return Object.assign(t,{subscription:n=>{let a=()=>{N(),n();};return window.addEventListener("cosmostation_keystorechange",a),()=>{window.removeEventListener("cosmostation_keystorechange",a);}},setDefaultOptions:n=>{t.defaultOptions=n;}})}throw u.getState()._notFoundFn(),new Error("window.cosmostation.providers.keplr is not defined")};var sn=e=>{let{bodyBytes:t,authInfoBytes:i,chainId:r,accountNumber:o}=e;if(!t||!i||!r||!o)throw new Error("Invalid sign doc");return {bodyBytes:t,authInfoBytes:i,chainId:r,accountNumber:o}},an=e=>`${e.slice(0,6)}...${e.slice(-6)}`,rt=()=>{if(typeof window.initia!="undefined"){let e=window.initia;return {enable:()=>l(void 0,null,function*(){yield e.getAddress();}),getKey:f=>l(void 0,null,function*(){let g=e.getOfflineSigner(f),[O]=yield g.getAccounts();if(!O)throw new Error("Wallet connection failed");let C=(()=>{switch(O.algo){case"secp256k1":return amino.rawSecp256k1PubkeyToRawAddress(O.pubkey);case"ed25519":return amino.rawEd25519PubkeyToRawAddress(O.pubkey);default:throw new Error("sr25519 public key algorithm is not supported")}})();return {name:an(O.address),algo:O.algo,pubKey:O.pubkey,bech32Address:O.address,address:C,isNanoLedger:!1,isKeystone:!1}}),getOfflineSigner:f=>{let g=e.getOfflineSigner(f),O=e.getOfflineSignerOnlyAmino(f);return {getAccounts:g.getAccounts.bind(g),signDirect:g.signDirect.bind(g),signAmino:O.signAmino.bind(O)}},getOfflineSignerAuto:f=>Promise.resolve(e.getOfflineSigner(f)),getOfflineSignerOnlyAmino:f=>e.getOfflineSignerOnlyAmino(f),experimentalSuggestChain:f=>e.requestAddInitiaLayer({chain_id:f.chainId,chain_name:f.chainName,bech32_prefix:"init",bech32_config:f.bech32Config,slip44:f.bip44.coinType,logo_URIs:{png:f.chainSymbolImageUrl},fees:{fee_tokens:f.feeCurrencies.map(g=>{var O,C,A;return {denom:g.coinDenom,amount:g.coinMinimalDenom,low_gas_price:(O=g.gasPriceStep)==null?void 0:O.low,average_gas_price:(C=g.gasPriceStep)==null?void 0:C.average,high_gas_price:(A=g.gasPriceStep)==null?void 0:A.high}})},apis:{rpc:[{address:f.rpc}],rest:[{address:f.rest}]}}),signDirect:(...f)=>{let[g,O,C]=f;return e.getOfflineSigner(g).signDirect(O,sn(C))},signAmino:(...f)=>{let[g,O,C]=f;return e.getOfflineSignerOnlyAmino(g).signAmino(O,C)},signArbitrary:(f,g,O)=>l(void 0,null,function*(){let T=(yield e.getOfflineSigner(f).getAccounts()).find(p=>p.address===g);if(!T)throw new Error(`Wallet not connected to account ${g}`);let E=(()=>{switch(T.algo){case"secp256k1":return amino.encodeSecp256k1Pubkey(T.pubkey);case"ed25519":return amino.encodeEd25519Pubkey(T.pubkey);default:throw new Error("sr25519 public key algorithm is not supported")}})();return {signature:yield e.signArbitrary(O),pub_key:{type:T.algo==="secp256k1"?amino.pubkeyType.secp256k1:amino.pubkeyType.ed25519,value:E.value}}}),subscription:f=>{let g=()=>{N(),f();};return window.addEventListener("initia_keystorechange",g),()=>{window.removeEventListener("initia_keystorechange",g);}}}}throw u.getState()._notFoundFn(),new Error("window.initia is not defined")};var de=()=>{if(typeof window.keplr!="undefined"){let e=window.keplr;return Object.assign(e,{subscription:o=>{let n=()=>{N(),o();};return window.addEventListener("keplr_keystorechange",n),()=>{window.removeEventListener("keplr_keystorechange",n);}},setDefaultOptions:o=>{e.defaultOptions=o;}})}throw u.getState()._notFoundFn(),new Error("window.keplr is not defined")};var fe=()=>{if(typeof window.leap!="undefined"){let e=window.leap;return Object.assign(e,{subscription:o=>{let n=()=>{N(),o();};return window.addEventListener("leap_keystorechange",n),()=>{window.removeEventListener("leap_keystorechange",n);}},setDefaultOptions:o=>{e.defaultOptions=o;}})}throw u.getState()._notFoundFn(),new Error("window.leap is not defined")};var ge={},st=e=>{let t=window.ethereum;if(t&&e){let i=()=>l(void 0,null,function*(){return yield t.request({method:"wallet_getSnaps"})}),r=m=>l(void 0,null,function*(){try{let p=yield i();return Object.values(p).find(S=>S.id===e.id&&(!m||S.version===m))}catch(p){return}}),o=()=>l(void 0,null,function*(){yield t.request({method:"wallet_requestSnaps",params:{[e.id]:e.params||{}}});}),n=()=>l(void 0,null,function*(){var D;let m=yield t.request({method:"web3_clientVersion"});if(!m.includes("MetaMask"))throw new Error("Metamask is not installed");if(typeof window.okxwallet!="undefined"&&window.okxwallet.isOkxWallet)throw new Error("You have OKX Wallet installed. Please disable and reload the page to use Metamask Snap.");let S=(D=m.split("MetaMask/v")[1])==null?void 0:D.split(".")[0];if(!(Number(S)>=11))throw new Error("Metamask Snap is not supported in this version");return (yield r())||(yield o()),!0}),a=m=>l(void 0,null,function*(){(yield r())||(yield o());}),s=(m,p,S)=>l(void 0,null,function*(){let v=yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"signDirect",params:{chainId:m,signerAddress:p,signDoc:S}}}}),R=S.accountNumber,D=new ut__default.default(R.low,R.high,R.unsigned);return {signature:v.signature,signed:q(k({},v.signed),{accountNumber:`${D.toString()}`,authInfoBytes:new Uint8Array(Object.values(v.signed.authInfoBytes)),bodyBytes:new Uint8Array(Object.values(v.signed.bodyBytes))})}}),c=(m,p,S)=>l(void 0,null,function*(){return yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"signAmino",params:{chainId:m,signerAddress:p,signDoc:S}}}})}),d=m=>l(void 0,null,function*(){if(typeof ge[m]!="undefined")return ge[m];let p=yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"getKey",params:{chainId:m}}}});if(!p)throw new Error("No response from Metamask");return p.pubKey=Uint8Array.from(Object.values(p.pubkey)),delete p.pubkey,ge[m]=p,ge[m]}),w=m=>l(void 0,null,function*(){let p=yield d(m);return {address:p.bech32Address,algo:p.algo,pubkey:p.pubKey}}),f=(...m)=>l(void 0,null,function*(){let[p,S,v,R]=m;return yield c(p,S,v)}),g=(...m)=>l(void 0,null,function*(){let[p,S,v]=m;return yield s(p,S,v)}),C=m=>({getAccounts:()=>l(void 0,null,function*(){return [yield w(m)]}),signAmino:(p,S)=>f(m,p,S)});return {enable:a,experimentalSuggestChain:(...m)=>l(void 0,null,function*(){yield n(),yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"suggestChain",params:{chainInfo:m[0]}}}});}),getKey:d,getOfflineSigner:m=>({getAccounts:()=>l(void 0,null,function*(){return [yield w(m)]}),signDirect:(p,S)=>g(m,p,S),signAmino:(p,S)=>f(m,p,S)}),getOfflineSignerAuto:m=>l(void 0,null,function*(){return C(m)}),getOfflineSignerOnlyAmino:C,init:n,signAmino:f,signDirect:g}}throw u.getState()._notFoundFn(),new Error("window.ethereum is not defined")};var at=()=>st({id:"npm:@leapwallet/metamask-cosmos-snap"});var ye=()=>{var e;if(typeof((e=window.okxwallet)==null?void 0:e.keplr)!="undefined"){let t=window.okxwallet.keplr;return Object.assign(t,{subscription:n=>{var s;let a=()=>{N(),n();};return (s=window.okxwallet)==null||s.on("accountsChanged",a),()=>{var c;(c=window.okxwallet)==null||c.removeListener("accountsChanged",a);}},setDefaultOptions:n=>{t.defaultOptions=n;}})}throw u.getState()._notFoundFn(),new Error("window.okxwallet.keplr is not defined")};var Ce=()=>{if(typeof window.station!="undefined"){let e=window.station.keplr;return {subscription:n=>{let a=()=>{N(),n();};return window.addEventListener("station_wallet_change",a),()=>{window.removeEventListener("station_wallet_change",a);}},getKey:n=>l(void 0,null,function*(){let a=yield e.getKey(n);return k({isKeystone:!1},a)}),getOfflineSigner:n=>{try{let a=e.getOfflineSignerOnlyAmino(n);return Object.assign(a,{signDirect:(d,w)=>{throw new Error("signDirect not supported by Station")}})}catch(a){throw console.error(a),a}},experimentalSuggestChain:n=>l(void 0,null,function*(){try{if(!n.bech32Config)throw new Error("Bech32Config is required");if(!n.stakeCurrency)throw new Error("StakeCurrency is required");let a=Object.assign(n,{bech32Config:n.bech32Config,chainSymbolImageUrl:n.chainSymbolImageUrl||"",stakeCurrency:{coinDecimals:n.stakeCurrency.coinDecimals,coinDenom:n.stakeCurrency.coinDenom,coinImageUrl:n.stakeCurrency.coinImageUrl||"",coinMinimalDenom:n.stakeCurrency.coinMinimalDenom},currencies:n.currencies.map(s=>({coinDecimals:s.coinDecimals,coinDenom:s.coinDenom,coinImageUrl:s.coinImageUrl||"",coinMinimalDenom:s.coinMinimalDenom})),feeCurrencies:n.feeCurrencies.map(s=>{var c,d,w;return {coinDecimals:s.coinDecimals,coinDenom:s.coinDenom,coinImageUrl:s.coinImageUrl||"",coinMinimalDenom:s.coinMinimalDenom,gasPriceStep:{average:((c=s.gasPriceStep)==null?void 0:c.average)||0,high:((d=s.gasPriceStep)==null?void 0:d.high)||0,low:((w=s.gasPriceStep)==null?void 0:w.low)||0}}})});yield e.experimentalSuggestChain(a);}catch(a){throw console.error(a),a}}),enable:n=>e.enable(n),disable:n=>e.disable(n),getOfflineSignerAuto:n=>e.getOfflineSignerAuto(n),getOfflineSignerOnlyAmino:n=>e.getOfflineSignerOnlyAmino(n),signDirect:()=>e.signDirect(),signAmino:(n,a,s,c)=>e.signAmino(n,a,s)}}throw u.getState()._notFoundFn(),new Error("window.station is not defined")};var Se=()=>{if(typeof window.vectis!="undefined"){let e=window.vectis.cosmos;return {enable:s=>e.enable(s),getOfflineSigner:s=>e.getOfflineSigner(s),getOfflineSignerAuto:s=>e.getOfflineSignerAuto(s),getKey:s=>l(void 0,null,function*(){let c=yield e.getKey(s);return {address:encoding.fromBech32(c.address).data,algo:c.algo,bech32Address:c.address,name:c.name,pubKey:c.pubKey,isKeystone:!1,isNanoLedger:c.isNanoLedger}}),subscription:s=>{let c=()=>{N(),s();};return window.addEventListener("vectis_accountChanged",c),()=>{window.removeEventListener("vectis_accountChanged",c);}},getOfflineSignerOnlyAmino:(...s)=>{let c=s[0];return e.getOfflineSignerAmino(c)},experimentalSuggestChain:(...s)=>l(void 0,null,function*(){var w;let[c]=s;if(!c.bech32Config)throw new Error("Bech32Config is required");if(!c.stakeCurrency)throw new Error("StakeCurrency is required");let d={rpcUrl:c.rpc,restUrl:c.rest,prettyName:c.chainName.replace(" ",""),bech32Prefix:(w=c.bech32Config)==null?void 0:w.bech32PrefixAccAddr,currencies:c.currencies,feeCurrencies:c.feeCurrencies,chainId:c.chainId,chainName:c.chainName,bip44:c.bip44,stakeCurrency:c.stakeCurrency,features:c.features};return e.suggestChains([d])}),signDirect:(...s)=>l(void 0,null,function*(){var w;let{1:c,2:d}=s;return e.signDirect(c,{bodyBytes:d.bodyBytes||Uint8Array.from([]),authInfoBytes:d.authInfoBytes||Uint8Array.from([]),accountNumber:ut__default.default.fromString(((w=d.accountNumber)==null?void 0:w.toString())||"",!1),chainId:d.chainId||""})}),signAmino:(...s)=>l(void 0,null,function*(){let{1:c,2:d}=s;return e.signAmino(c,d)})}}throw u.getState()._notFoundFn(),new Error("window.vectis is not defined")};var z=()=>{if(typeof window!="undefined"){let e=navigator.userAgent;return !!(/android/i.test(e)||/iPad|iPhone|iPod/.test(e))}return !1},ct=()=>z()&&navigator.userAgent.toLowerCase().includes("android"),lt=()=>z()&&(navigator.userAgent.toLowerCase().includes("iphone")||navigator.userAgent.toLowerCase().includes("ipad"));var ve=(e,t,i=new Error("Promise timed out"))=>{let r=new Promise((o,n)=>{setTimeout(()=>{n(i);},t);});return Promise.race([e,r])};var Q=e=>{var D,ee,ie;if(!((ie=(ee=(D=u.getState().walletConnect)==null?void 0:D.options)==null?void 0:ee.projectId)!=null&&ie.trim()))throw new Error("walletConnect.options.projectId is not defined");let t=(e==null?void 0:e.walletType)||"walletconnect",i=(e==null?void 0:e.encoding)||"base64",r=h=>{if(!e)return;let{appUrl:I,formatNativeUrl:b}=e;if(z()){if(ct()){let x=b(I.mobile.android,h,"android");window.open(x,"_self","noreferrer noopener");}if(lt()){let x=b(I.mobile.ios,h,"ios");window.open(x,"_self","noreferrer noopener");}}},o=()=>{let{wcSignClients:h}=y.getState();if(!h.get(t))throw new Error("walletConnect.signClient is not defined");h.delete(t),y.setState({wcSignClients:h}),u.setState({_reconnect:!1,_reconnectConnector:null,recentChainIds:null});},n=h=>l(void 0,null,function*(){let{wcSignClients:I}=y.getState(),b=I.get(t);if(!b)throw new Error("walletConnect.signClient is not defined");if(!h)throw new Error("No wallet connect session");yield b.disconnect({topic:h,reason:utils.getSdkError("USER_DISCONNECTED")}),yield c(b);}),a=h=>{try{let{wcSignClients:I}=y.getState(),b=I.get(t);if(!b)throw new Error("walletConnect.signClient is not defined");let x=b.session.getAll(),P=x.at(-1);if(!P)return;if(!(P.expiry*1e3>Date.now()+1e3))throw n(P.topic),new Error("invalid session");try{let _=x.find(j=>{var H,X;return (X=(H=j.requiredNamespaces.cosmos)==null?void 0:H.chains)==null?void 0:X.includes(`cosmos:${h}`)});if(!_)throw new Error("no session");return _}catch(_){if(!_.message.toLowerCase().includes("no matching key"))throw _}return P}catch(I){if(!I.message.toLowerCase().includes("no matching key"))throw I}},s=h=>{try{return a(h)}catch(I){return}},c=h=>l(void 0,null,function*(){try{let I=h.core.pairing.pairings.getAll({active:!1});if(!I.length)return;yield Promise.all(I.map(b=>l(void 0,null,function*(){yield h.core.pairing.pairings.delete(b.topic,{code:7001,message:"clear pairing"});})));}catch(I){if(!I.message.toLowerCase().includes("no matching key"))throw I}}),d=()=>l(void 0,null,function*(){let{walletConnect:h}=u.getState();if(!(h!=null&&h.options))throw new Error("walletConnect.options is not defined");let{wcSignClients:I}=y.getState(),b=I.get(t);if(b)return b;let x=yield signClient.SignClient.init(h.options);return I.set(t,x),y.setState({wcSignClients:I}),x}),w=h=>{let{wcSignClients:I}=y.getState(),b=I.get(t);if(!b)return ()=>{};let x=P=>{let W=y.getState().accounts;if(P.params.event.name==="accountsChanged"&&W&&!Object.values(W).map(_=>_.bech32Address).includes(P.params.event.data[0])){let _=P.params.chainId.split(":")[1];_&&f([_]);}else h();};return b.events.on("session_delete",o),b.events.on("session_expire",o),b.events.on("session_event",x),()=>{b.events.off("session_delete",o),b.events.off("session_expire",o),b.events.off("session_event",x);}},f=h=>l(void 0,null,function*(){var X;let I=typeof h=="string"?[h]:h,{wcSignClients:b,activeChainIds:x}=y.getState(),P=b.get(t);if(!P)throw new Error("enable walletConnect.signClient is not defined");let{walletConnect:W,chains:_}=u.getState();if(!((X=W==null?void 0:W.options)!=null&&X.projectId))throw new Error("walletConnect.options.projectId is not defined");let j=new modal.WalletConnectModal(k({projectId:W.options.projectId,enableExplorer:!1,explorerRecommendedWalletIds:"NONE"},W.walletConnectModal)),H=s(I);if(!H){let{uri:F,approval:se}=yield ve(P.connect({requiredNamespaces:{cosmos:{methods:["cosmos_getAccounts","cosmos_signAmino","cosmos_signDirect"],chains:I.map($=>`cosmos:${$}`),events:["chainChanged","accountsChanged"]}}}),15e3,new Error("Connection timeout"));if(!F)throw new Error("No wallet connect uri");e?r(F):yield j.openModal({uri:F});let ae=$=>l(void 0,null,function*(){return $.aborted?Promise.reject(new Error("User closed wallet connect")):new Promise((xe,te)=>{se().then(Fe=>{let qe=Fe.sessionProperties;if(!qe)return te(new Error("No session properties"));let ke=JSON.parse(String(qe.keys));if(ke.length===0)return te(new Error("No accounts"));if(!ke[0])return te(new Error("No accounts"));let Ge={};return ke.forEach(V=>{Ge[V.chainId]={address:V.address,algo:V.algo,bech32Address:V.bech32Address,isNanoLedger:V.isNanoLedger,isKeystone:V.isKeystone,name:V.name,pubKey:V.pubKey};}),y.setState(V=>({accounts:k(k({},V.accounts||{}),Ge)})),xe(Fe)}).catch(te),$.addEventListener("abort",()=>{te(new Error("User closed wallet connect"));},{once:!0});})});try{let $=new AbortController,xe=$.signal;j.subscribeModal(te=>{te.open||$.abort();}),yield ae(xe);}catch($){if(j.closeModal(),!$.message.toLowerCase().includes("no matching key"))return Promise.reject($)}return e||j.closeModal(),Promise.resolve()}try{yield ve((()=>l(void 0,null,function*(){var se;let F=Object.fromEntries(yield Promise.all((se=x||I)==null?void 0:se.map(ae=>l(void 0,null,function*(){return [ae,yield O(ae)]}))));y.setState({accounts:F});}))(),15e3,new Error("Connection timeout"));}catch(F){if(n(H.topic),!F.message.toLowerCase().includes("no matching key"))throw F}}),g=h=>l(void 0,null,function*(){let I=yield O(h);return {address:I.bech32Address,algo:I.algo,pubkey:I.pubKey}}),O=h=>l(void 0,null,function*(){let I=a([h]);if(!(I!=null&&I.topic))throw new Error("No wallet connect session");let b=I.sessionProperties&&JSON.parse(String(I.sessionProperties.keys));if(!b)throw new Error("No wallet connect key");if(b.length===0)throw new Error("No wallet connect session");let x=b.find(P=>P.chainId===h);if(!x)throw new Error(`No wallet connect key for chainId ${h}`);return q(k({},x),{pubKey:Buffer.from(String(x.pubKey),i)})}),C=(...h)=>l(void 0,null,function*(){var X,F;let[I,b,x]=h,{accounts:P,wcSignClients:W}=y.getState(),_=W.get(t);if(!_)throw new Error("walletConnect.signClient is not defined");if(!P)throw new Error("account is not defined");let j=(X=a([I]))==null?void 0:X.topic;if(!j)throw new Error("No wallet connect session");if(!x.bodyBytes)throw new Error("No bodyBytes");if(!x.authInfoBytes)throw new Error("No authInfoBytes");return r(),yield _.request({topic:j,chainId:`cosmos:${I}`,request:{method:"cosmos_signDirect",params:{signerAddress:b,signDoc:{chainId:x.chainId,accountNumber:(F=x.accountNumber)==null?void 0:F.toString(),bodyBytes:x.bodyBytes?Buffer.from(x.bodyBytes).toString(i):null,authInfoBytes:x.authInfoBytes?Buffer.from(x.authInfoBytes).toString(i):null}}}})}),A=(...h)=>l(void 0,null,function*(){var _;let[I,b,x]=h,{signature:P,signed:W}=yield C(I,b,x);return {signed:{chainId:(_=W.chainId)!=null?_:"",accountNumber:W.accountNumber?ut__default.default.fromString(W.accountNumber):new ut__default.default(0),authInfoBytes:W.authInfoBytes?new Uint8Array(Buffer.from(W.authInfoBytes,i)):new Uint8Array([]),bodyBytes:W.bodyBytes?new Uint8Array(Buffer.from(W.bodyBytes,i)):new Uint8Array([])},signature:P}}),T=(...h)=>l(void 0,null,function*(){var F;let[I,b,x,P]=h,{wcSignClients:W}=y.getState(),_=W.get(t),{accounts:j}=y.getState();if(!_)throw new Error("walletConnect.signClient is not defined");if(!j)throw new Error("account is not defined");let H=(F=a([I]))==null?void 0:F.topic;if(!H)throw new Error("No wallet connect session");return r(),yield _.request({topic:H,chainId:`cosmos:${I}`,request:{method:"cosmos_signDirect",params:{signerAddress:b,signDoc:x}}})}),E=(...h)=>l(void 0,null,function*(){let[I,b,x,P]=h;return yield T(I,b,x)}),m=h=>({getAccounts:()=>l(void 0,null,function*(){return [yield g(h)]}),signDirect:(I,b)=>A(h,I,b)}),p=h=>({getAccounts:()=>l(void 0,null,function*(){return [yield g(h)]}),signAmino:(I,b)=>E(h,I,b)});return {enable:f,disable:h=>l(void 0,null,function*(){var x;let{wcSignClients:I}=y.getState(),b=I.get(t);if(h===void 0){let P=b==null?void 0:b.session.getAll();P!==void 0&&(yield Promise.all(P.map(W=>n(W.topic))));}else typeof h=="string"?yield n((x=a([h]))==null?void 0:x.topic):yield Promise.all(h.map(P=>{var W;return n((W=a([P]))==null?void 0:W.topic)}));(b==null?void 0:b.session.getAll().length)===0&&o();}),experimentalSuggestChain:(...h)=>l(void 0,null,function*(){yield Promise.reject(new Error("WalletConnect does not support experimentalSuggestChain"));}),getKey:O,getOfflineSigner:h=>({getAccounts:()=>l(void 0,null,function*(){return [yield g(h)]}),signDirect:(I,b)=>A(h,I,b),signAmino:(I,b)=>E(h,I,b)}),getOfflineSignerAuto:h=>l(void 0,null,function*(){return (yield O(h)).isNanoLedger?p(h):m(h)}),getOfflineSignerOnlyAmino:p,signAmino:E,signDirect:A,subscription:w,init:d}};var pt=()=>{var t,i,r;if(!((r=(i=(t=u.getState().walletConnect)==null?void 0:t.options)==null?void 0:i.projectId)!=null&&r.trim()))throw new Error("walletConnect.options.projectId is not defined");if(!z())throw new Error("WalletConnect Clot mobile is only supported in mobile");let e={encoding:"base64",appUrl:{mobile:{android:"clot://",ios:"clot://"}},walletType:"wc_clot_mobile",formatNativeUrl:(o,n,a)=>{let s=o.replaceAll("/","").replaceAll(":",""),c=n&&encodeURIComponent(n);switch(a){case"ios":return c?`${s}://wcV2?${c}`:`${s}://wcV2`;default:return c?`${s}://wc?uri=${c}`:`${s}://wc`}}};return Q(e)};var mt=()=>{var t,i,r;if(!((r=(i=(t=u.getState().walletConnect)==null?void 0:t.options)==null?void 0:i.projectId)!=null&&r.trim()))throw new Error("walletConnect.options.projectId is not defined");if(!z())throw new Error("WalletConnect Cosmostation mobile is only supported in mobile");let e={encoding:"hex",appUrl:{mobile:{ios:"cosmostation://",android:"cosmostation://"}},walletType:"wc_cosmostation_mobile",formatNativeUrl:(o,n,a)=>{let s=o.replaceAll("/","").replaceAll(":","");return n?`${s}://wc?${n}`:`${s}://wc`}};return Q(e)};var dt=()=>{var t,i,r;if(!((r=(i=(t=u.getState().walletConnect)==null?void 0:t.options)==null?void 0:i.projectId)!=null&&r.trim()))throw new Error("walletConnect.options.projectId is not defined");if(!z())throw new Error("WalletConnect Keplr mobile is only supported in mobile");let e={encoding:"base64",appUrl:{mobile:{ios:"keplrwallet://",android:"intent://"}},walletType:"wc_keplr_mobile",formatNativeUrl:(o,n,a)=>{let s=o.replaceAll("/","").replaceAll(":",""),c=n&&encodeURIComponent(n);switch(a){case"ios":return c?`${s}://wcV2?${c}`:`${s}://wcV2`;case"android":return c?`${s}://wcV2?${c}#Intent;package=com.chainapsis.keplr;scheme=keplrwallet;end;`:`${s}://wcV2#Intent;package=com.chainapsis.keplr;scheme=keplrwallet;end;`;default:return c?`${s}://wc?uri=${c}`:`${s}://wc`}}};return Q(e)};var ft=()=>{var t,i,r;if(!((r=(i=(t=u.getState().walletConnect)==null?void 0:t.options)==null?void 0:i.projectId)!=null&&r.trim()))throw new Error("walletConnect.options.projectId is not defined");if(!z())throw new Error("WalletConnect Leap mobile is only supported in mobile");let e={encoding:"base64",appUrl:{mobile:{ios:"leapcosmos://",android:"intent://"}},walletType:"wc_leap_mobile",formatNativeUrl:(o,n,a)=>{let s=o.replaceAll("/","").replaceAll(":",""),c=n&&encodeURIComponent(n);switch(a){case"ios":return c?`${s}://wcV2?${c}`:`${s}://wcV2`;case"android":return c?`${s}://wcV2?${c}#Intent;package=io.leapwallet.cosmos;scheme=leapwallet;end;`:`${s}://wcV2#Intent;package=io.leapwallet.cosmos;scheme=leapwallet;end;`;default:return c?`${s}://wc?uri=${c}`:`${s}://wc`}}};return Q(e)};var we=()=>{var e;if(typeof((e=window.xfi)==null?void 0:e.keplr)!="undefined"){let t=window.xfi.keplr;return Object.assign(t,{subscription:o=>{let n=()=>{N(),o();};return window.addEventListener("keplr_keystorechange",n),()=>{window.removeEventListener("keplr_keystorechange",n);}}})}throw u.getState()._notFoundFn(),new Error("window.xfi.keplr is not defined")};var B=(e=u.getState().walletType)=>{try{return K(e),!0}catch(t){return !1}},N=()=>{window.sessionStorage.removeItem(Y),y.setState(ne);},K=(e=u.getState().walletType)=>{var r;let t=(()=>{switch(e){case"keplr":return de();case"leap":return fe();case"cosmostation":return me();case"vectis":return Se();case"walletconnect":return Q();case"wc_keplr_mobile":return dt();case"wc_leap_mobile":return ft();case"wc_cosmostation_mobile":return mt();case"wc_clot_mobile":return pt();case"metamask_snap_leap":return at();case"metamask_snap_cosmos":return it();case"station":return Ce();case"xdefi":return we();case"capsule":return le();case"cosmiframe":return pe();case"compass":return ue();case"initia":return rt();case"okx":return ye();case"cactuscosmos":return ce();default:throw new Error("Unknown wallet type")}})(),i=u.getState().walletDefaultOptions;return i&&((r=t.setDefaultOptions)==null||r.call(t,i)),t},ur=()=>Object.fromEntries(Ve.map(e=>[e,B(e)])),Pe=e=>e==="capsule",gt=e=>e==="metamask_snap_leap",yt=()=>!!(navigator!=null&&navigator.userAgent)&&/LeapCosmos/i.test(navigator.userAgent),oe=e=>e==="walletconnect"||e==="wc_keplr_mobile"||e==="wc_leap_mobile"||e==="wc_cosmostation_mobile";var J=e=>l(void 0,null,function*(){var t;try{let{recentChainIds:a,chains:s,walletType:c}=u.getState(),d=(e==null?void 0:e.walletType)||c;if(oe(d)){let E=K("walletconnect"),{disable:m}=E;m&&m();}if(!B(d))throw new Error(`${d} is not available`);let f=K(d),g=typeof(e==null?void 0:e.chainId)=="string"?[e.chainId]:(e==null?void 0:e.chainId)||a;if(!g)throw new Error("No last known connected chain, connect action requires chain ids");let O=s==null?void 0:s.map(E=>E.chainId);g.forEach(E=>{if(!(O!=null&&O.includes(E)))throw new Error(`Chain ${E} is not provided in GrazProvider`)}),y.setState(E=>{let m=u.getState()._reconnect||!!u.getState()._reconnectConnector||!!g;return E.activeChainIds&&g.filter(S=>{var v;return !((v=E.activeChainIds)!=null&&v.includes(S))}).length>0?{status:"connecting"}:m?{status:"reconnecting"}:{status:"connecting"}});let{accounts:C}=y.getState();if(yield (t=f.init)==null?void 0:t.call(f),Pe(d)&&y.getState().capsuleClient&&Object.values(y.getState().accounts||[]).length>0){let E=g.map(S=>s.find(v=>v.chainId===S)),m=y.getState().accounts;y.setState({status:"connecting"});let p=Object.fromEntries(yield Promise.all(g.map(S=>l(void 0,null,function*(){return [S,yield f.getKey(S)]}))));return y.setState(S=>({accounts:k(k({},S.accounts||{}),p)})),u.setState(S=>({recentChainIds:[...S.recentChainIds||[],...g].filter((v,R,D)=>D.indexOf(v)===R)})),y.setState(S=>({activeChainIds:[...S.activeChainIds||[],...g].filter((v,R,D)=>D.indexOf(v)===R)})),y.setState({status:"connected"}),{accounts:m,walletType:d,chains:E}}if(yield f.enable(g),Pe(d)){let E=g.map(p=>s.find(S=>S.chainId===p)),m=y.getState().accounts;return y.setState({status:"connecting"}),{accounts:m,walletType:d,chains:E}}if(!oe(d)){let E={};if(gt(d)){let m={};try{for(var i=je(g),r,o,n;r=!(o=yield i.next()).done;r=!1){let p=o.value;m[p]=yield f.getKey(p);}}catch(o){n=[o];}finally{try{r&&(o=i.return)&&(yield o.call(i));}finally{if(n)throw n[0]}}E=m;}else if(yt()&&f.getKeys){let m=yield f.getKeys(g);g.forEach((p,S)=>{let v=m[S];v&&(E[p]=v);});}else E=Object.fromEntries(yield Promise.all(g.map(m=>l(void 0,null,function*(){return [m,yield f.getKey(m)]}))));y.setState(m=>({accounts:k(k({},m.accounts||{}),E)}));}u.setState(E=>({recentChainIds:[...E.recentChainIds||[],...g].filter((m,p,S)=>S.indexOf(m)===p)})),y.setState(E=>({activeChainIds:[...E.activeChainIds||[],...g].filter((m,p,S)=>S.indexOf(m)===p)})),u.setState({walletType:d,_reconnect:!!(e!=null&&e.autoReconnect),_reconnectConnector:d}),y.setState({status:"connected"}),typeof window!="undefined"&&window.sessionStorage.setItem(Y,"Active");let A=g.map(E=>s.find(m=>m.chainId===E));return {accounts:y.getState().accounts,walletType:d,chains:A}}catch(a){throw console.error("connect ",a),y.getState().accounts===null&&y.setState({status:"disconnected"}),y.getState().accounts&&y.getState().activeChainIds&&y.setState({status:"connected"}),a}}),re=e=>{typeof window!="undefined"&&window.sessionStorage.removeItem(Y);let t=typeof(e==null?void 0:e.chainId)=="string"?[e.chainId]:e==null?void 0:e.chainId;if(oe(u.getState().walletType)){let i=K("walletconnect"),{disable:r}=i;r&&r();}if(t){let i=y.getState().accounts;t.forEach(o=>{i==null||delete i[o];}),Object.values(i||{}).length===0?(y.setState(ne),u.setState({_reconnect:!1,_reconnectConnector:null,recentChainIds:null})):(y.setState(o=>{var n;return {activeChainIds:(n=o.activeChainIds)==null?void 0:n.filter(a=>!t.includes(a)),accounts:i}}),u.setState(o=>{var n;return {recentChainIds:(n=o.recentChainIds)==null?void 0:n.filter(a=>!t.includes(a))}}));}else y.setState(ne),u.setState({_reconnect:!1,_reconnectConnector:null,recentChainIds:null});return Promise.resolve()},L=e=>l(void 0,null,function*(){var o;let{recentChainIds:t,_reconnectConnector:i,_reconnect:r}=u.getState();try{let n=B(i||void 0);if(t&&n&&i)return oe(i)?void 0:yield J({chainId:t,walletType:i,autoReconnect:r})}catch(n){(o=e==null?void 0:e.onError)==null||o.call(e,n),re();}}),Ct=e=>l(void 0,null,function*(){if(!(e!=null&&e.chainId))throw new Error("chainId is required");let{walletType:t}=u.getState(),i=e.walletType||t;if(!B(i))throw new Error(`${i} is not available`);let o=K(i),n=o.getOfflineSigner(e.chainId),a=o.getOfflineSignerOnlyAmino(e.chainId),s=yield o.getOfflineSignerAuto(e.chainId);return {offlineSigner:n,offlineSignerAmino:a,offlineSignerAuto:s}});var We=()=>{u.setState({recentChainIds:null});},Ir=()=>u.getState().recentChainIds,Or=()=>{var i;let{recentChainIds:e,chains:t}=u.getState();return (i=e==null?void 0:e.map(r=>t.find(o=>o.chainId===r)))!=null?i:null},Er=({chainId:e})=>{var t;return (t=u.getState().chains)==null?void 0:t.find(i=>i.chainId===e)},br=({chainId:e})=>{var t;return (t=u.getState().chains)==null?void 0:t.filter(i=>e==null?void 0:e.includes(i.chainId))},Re=i=>l(void 0,[i],function*({chainInfo:e,walletType:t}){let r=K(t);return t==="capsule"?yield J({chainId:e.chainId,walletType:t}):yield r.experimentalSuggestChain(e),e}),St=e=>l(void 0,null,function*(){var r;let t=u.getState().walletType;return yield Re({chainInfo:e.chainInfo,walletType:(r=e.walletType)!=null?r:t}),yield J({chainId:e.chainInfo.chainId,walletType:e.walletType,autoReconnect:e.autoReconnect})});var wt=e=>(u.setState(t=>({iframeOptions:e.iframeOptions||t.iframeOptions,walletConnect:e.walletConnect||t.walletConnect,walletType:e.defaultWallet||t.walletType,capsuleConfig:e.capsuleConfig||t.capsuleConfig,walletDefaultOptions:e.walletDefaultOptions||t.walletDefaultOptions,chains:e.chains,chainsConfig:e.chainsConfig||t.chainsConfig,multiChainFetchConcurrency:e.multiChainFetchConcurrency||t.multiChainFetchConcurrency,_notFoundFn:e.onNotFound||t._notFoundFn,_onReconnectFailed:e.onReconnectFailed||t._onReconnectFailed,_reconnect:e.autoReconnect===void 0?!0:e.autoReconnect||t._reconnect})),e);var ht=a=>l(void 0,[a],function*({signingClient:e,senderAddress:t,recipientAddress:i,amount:r,fee:o,memo:n}){if(!e)throw new Error("No connected account detected");if(!t)throw new Error("senderAddress is not defined");return e.sendTokens(t,i,r,o,n)}),At=w=>l(void 0,[w],function*({signingClient:e,senderAddress:t,recipientAddress:i,transferAmount:r,sourcePort:o,sourceChannel:n,timeoutHeight:a,timeoutTimestamp:s,fee:c,memo:d}){if(!e)throw new Error("Stargate signing client is not ready");if(!t)throw new Error("senderAddress is not defined");return e.sendIbcTokens(t,i,r,o,n,a,s,c,d)}),It=s=>l(void 0,[s],function*({signingClient:e,senderAddress:t,msg:i,fee:r,options:o,label:n,codeId:a}){if(!e)throw new Error("CosmWasm signing client is not ready");return e.instantiate(t,a,i,n,r,o)}),Ot=s=>l(void 0,[s],function*({signingClient:e,senderAddress:t,msg:i,fee:r,contractAddress:o,funds:n,memo:a}){if(!e)throw new Error("CosmWasm signing client is not ready");return e.execute(t,o,i,r,a,n)}),Et=(e,t,i)=>l(void 0,null,function*(){if(!i)throw new Error("CosmWasm client is not ready");return yield i.queryContractSmart(e,t)}),bt=(e,t,i)=>{if(!i)throw new Error("CosmWasm client is not ready");let r=new TextEncoder().encode(t);return i.queryContractRaw(e,r)};var Dr=e=>e,_r=e=>e;var he=e=>e?Object.keys(e).length===0:!0;var Ke=class extends Error{constructor(t){super(),this.name="AbortError",this.message=t;}},Tt=e=>globalThis.DOMException===void 0?new Ke(e):new DOMException(e),Mt=e=>{let t=e.reason===void 0?Tt("This operation was aborted."):e.reason;return t instanceof Error?t:Tt(t)};function De(n,a){return l(this,arguments,function*(e,t,{concurrency:i=Number.POSITIVE_INFINITY,stopOnError:r=!0,signal:o}={}){return new Promise((s,c)=>{if(e[Symbol.iterator]===void 0&&e[Symbol.asyncIterator]===void 0)throw new TypeError(`Expected \`input\` to be either an \`Iterable\` or \`AsyncIterable\`, got (${typeof e})`);if(typeof t!="function")throw new TypeError("Mapper function is required");if(!((Number.isSafeInteger(i)||i===Number.POSITIVE_INFINITY)&&i>=1))throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${i}\` (${typeof i})`);let d=[],w=[],f=new Map,g=!1,O=!1,C=!1,A=0,T=0,E=e[Symbol.iterator]===void 0?e[Symbol.asyncIterator]():e[Symbol.iterator](),m=S=>{g=!0,O=!0,c(S);};o&&(o.aborted&&m(Mt(o)),o.addEventListener("abort",()=>{m(Mt(o));}));let p=()=>l(this,null,function*(){if(O)return;let S=yield E.next(),v=T;if(T++,S.done){if(C=!0,A===0&&!O){if(!r&&w.length>0){m(new AggregateError(w));return}if(O=!0,f.size===0){s(d);return}let R=[];for(let[D,ee]of d.entries())f.get(D)!==xt&&R.push(ee);s(R);}return}A++,l(this,null,function*(){try{let R=yield S.value;if(O)return;let D=yield t(R,v);D===xt&&f.set(v,D),d[v]=D,A--,yield p();}catch(R){if(r)m(R);else {w.push(R),A--;try{yield p();}catch(D){m(D);}}}});});l(this,null,function*(){for(let S=0;S<i;S++){try{yield p();}catch(v){m(v);break}if(C||g)break}});})})}var xt=Symbol("skip");var U=({chainId:e,multiChain:t})=>{let i=u(o=>o.chains);if(!i)throw new Error("No chains found in GrazProvider");let r=typeof e=="string"?[e]:e;switch(!0){case(!!t&&!!r):return r.map(o=>i.find(n=>n.chainId===o)).filter(Boolean);case(!t&&!!r):return [r.map(o=>i.find(n=>n.chainId===o)).filter(Boolean)[0]];case(!!t&&!r):return i;default:return [i[0]]}},G=(e,t,i)=>l(void 0,null,function*(){let r=u.getState().multiChainFetchConcurrency;if(e){let n=yield De(t,i,{concurrency:r});return Object.fromEntries(n.map((a,s)=>[t[s].chainId,a]))}return yield i(t[0])}),kt=(e,t,i)=>{if(e){let o=t.map(i);return Object.fromEntries(o.map((n,a)=>[t[a].chainId,n]))}return i(t[0])};var Be=e=>{let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),i=react.useMemo(()=>["USE_STARGATE_CLIENT",t],[t]);return reactQuery.useQuery({queryKey:i,queryFn:o=>l(void 0,[o],function*({queryKey:[,r]}){if(r.length<1)throw new Error("No chains found");return yield G(!!(e!=null&&e.multiChain),r,a=>l(void 0,null,function*(){var w;let s=(w=u.getState().chainsConfig)==null?void 0:w[a.chainId],c={url:a.rpc,headers:k({},(s==null?void 0:s.rpcHeaders)||{})};return yield stargate.StargateClient.connect(c)}))}),enabled:!!t&&t.length>0&&((e==null?void 0:e.enabled)!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})},Le=e=>{let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),i=react.useMemo(()=>["USE_COSMWASM_CLIENT",t],[t]);return reactQuery.useQuery({queryKey:i,queryFn:o=>l(void 0,[o],function*({queryKey:[,r]}){if(r.length<1)throw new Error("No chains found");return yield G(!!(e!=null&&e.multiChain),r,a=>l(void 0,null,function*(){var w;let s=(w=u.getState().chainsConfig)==null?void 0:w[a.chainId],c={url:a.rpc,headers:k({},(s==null?void 0:s.rpcHeaders)||{})};return yield cosmwasmStargate.CosmWasmClient.connect(c)}))}),enabled:!!t&&t.length>0&&((e==null?void 0:e.enabled)!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})},Ae=({type:e,chainId:t,multiChain:i,enabled:r})=>{let o=U({chainId:t,multiChain:i}),n=react.useMemo(()=>["USE_TENDERMINT_CLIENT",e,o],[e,o]);return reactQuery.useQuery({queryKey:n,queryFn:c=>l(void 0,[c],function*({queryKey:[,a,s]}){if(s.length<1)throw new Error("No chains found");return yield G(!!i,s,w=>l(void 0,null,function*(){var A;let f=(A=u.getState().chainsConfig)==null?void 0:A[w.chainId],g={url:w.rpc,headers:k({},(f==null?void 0:f.rpcHeaders)||{})};return yield (a==="tm37"?tendermintRpc.Tendermint37Client:tendermintRpc.Tendermint34Client).connect(g)}))}),enabled:!!o&&o.length>0&&(r!==void 0?!!r:!0),refetchOnWindowFocus:!1})};var ls=()=>u(e=>({walletType:e.walletType,isCosmostation:e.walletType==="cosmostation",isCosmostationMobile:e.walletType==="wc_cosmostation_mobile",isKeplr:e.walletType==="keplr",isKeplrMobile:e.walletType==="wc_keplr_mobile",isLeap:e.walletType==="leap",isLeapMobile:e.walletType==="wc_leap_mobile",isVectis:e.walletType==="vectis",isWalletConnect:e.walletType==="walletconnect",isMetamaskSnapLeap:e.walletType==="metamask_snap_leap",isStation:e.walletType==="station",isCapsule:e.walletType==="capsule",isCosmiframe:e.walletType==="cosmiframe",isCactusCosmos:e.walletType==="cactuscosmos"}),shallow.shallow),Ie=e=>{let i=["USE_CHECK_WALLET",u(o=>e||o.walletType)];return reactQuery.useQuery({queryKey:i,queryFn:({queryKey:[,o]})=>B(o)})};var Z=e=>{let t=u(s=>s.walletType),i=y(s=>s.activeChainIds),r=U({chainId:e!=null&&e.chainId?e.chainId:i||void 0,multiChain:e==null?void 0:e.multiChain}),o=y(s=>s.accounts),n=y(s=>s.status);return react.useEffect(()=>y.subscribe(s=>s.status,(s,c)=>{var d,w,f;if(s==="connected"){let{accounts:g,activeChainIds:O}=y.getState(),{chains:C}=u.getState(),{walletType:A}=u.getState();if(!g||!O||!C)return (d=e==null?void 0:e.onDisconnect)==null?void 0:d.call(e);(w=e==null?void 0:e.onConnect)==null||w.call(e,{accounts:g,chains:O.map(T=>C.find(E=>E.chainId===T)),walletType:A,isReconnect:c==="reconnecting"});}s==="disconnected"&&((f=e==null?void 0:e.onDisconnect)==null||f.call(e));}),[e]),{data:react.useMemo(()=>o?kt(!!(e!=null&&e.multiChain),r,s=>o[s.chainId]):void 0,[o,r,e==null?void 0:e.multiChain]),isConnected:n==="connected",isConnecting:n==="connecting",isDisconnected:n==="disconnected",isReconnecting:n==="reconnecting",isLoading:n==="connecting"||n==="reconnecting",walletType:n==="connected"?t:void 0,reconnect:L,status:n}},An=e=>{let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),{data:i}=Z(),r=(e==null?void 0:e.bech32Address)||(i==null?void 0:i.bech32Address),{data:o}=Be({chainId:t.map(a=>a.chainId),multiChain:!0,enabled:((e==null?void 0:e.enabled)===void 0?!0:e.enabled)&&!!r}),n=react.useMemo(()=>["USE_ALL_BALANCES",o,t,r,e==null?void 0:e.chainId],[r,e==null?void 0:e.chainId,t,o]);return reactQuery.useQuery({queryKey:n,queryFn:d=>l(void 0,[d],function*({queryKey:[,a,s,c]}){if(!c)throw new Error("address is not defined");return yield G(!!(e!=null&&e.multiChain),s,f=>l(void 0,null,function*(){var C;let g=a==null?void 0:a[f.chainId];if(!g)throw new Error(`Client is not ready ${f.chainId}`);if(!((C=f.bech32Config)!=null&&C.bech32PrefixAccAddr))throw new Error(`Bech32Config is missing ${f.chainId}`);return yield g.getAllBalances(encoding.toBech32(f.bech32Config.bech32PrefixAccAddr,encoding.fromBech32(c).data))}))}),enabled:!!r&&!!t&&t.length>0&&!he(o)&&((e==null?void 0:e.enabled)===void 0?!0:e.enabled),refetchOnMount:!1,refetchOnReconnect:!0,refetchOnWindowFocus:!1})},Is=e=>{let t=U({chainId:e.chainId}),{data:i}=Z({chainId:e.chainId}),r=e.bech32Address||(i==null?void 0:i.bech32Address),{data:o,refetch:n}=An({chainId:t.map(c=>c.chainId),bech32Address:r,enabled:!!r&&(e.enabled===void 0?!0:e.enabled)}),a=["USE_BALANCE",e.denom,o,t,r,e.chainId],s=reactQuery.useQuery({queryKey:a,queryFn:({queryKey:[,c,d]})=>d==null?void 0:d.find(w=>w.denom===c),enabled:!!e.denom&&!!o&&!!(o!=null&&o.length)&&(e.enabled===void 0?!0:e.enabled)});return q(k({},s),{refetch:c=>l(void 0,null,function*(){return yield n(),s.refetch(c)})})},Os=({onError:e,onLoading:t,onSuccess:i}={})=>{let o=reactQuery.useMutation({mutationKey:["USE_CONNECT",e,t,i],mutationFn:J,onError:(a,s)=>e==null?void 0:e(a,s),onMutate:t,onSuccess:a=>Promise.resolve(i==null?void 0:i(a))}),{data:n}=Ie();return {connect:a=>o.mutate(a),connectAsync:a=>o.mutateAsync(a),error:o.error,isLoading:o.isPending,isSuccess:o.isSuccess,isSupported:!!n,status:o.status}},Es=({onError:e,onLoading:t,onSuccess:i}={})=>{let o=reactQuery.useMutation({mutationKey:["USE_DISCONNECT",e,t,i],mutationFn:re,onError:n=>Promise.resolve(e==null?void 0:e(n,void 0)),onMutate:t,onSuccess:()=>Promise.resolve(i==null?void 0:i(void 0))});return {disconnect:n=>o.mutate(n),disconnectAsync:n=>o.mutateAsync(n),error:o.error,isLoading:o.isPending,isSuccess:o.isSuccess,status:o.status}},bs=e=>{let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),i=u(o=>o.walletType),r=react.useMemo(()=>["USE_OFFLINE_SIGNERS",t,i],[t,i]);return reactQuery.useQuery({queryKey:r,queryFn:a=>l(void 0,[a],function*({queryKey:[,o,n]}){if(o.length<1)throw new Error("No chain found");if(!B(n))throw new Error(`${n} is not available`);return yield G(!!(e!=null&&e.multiChain),o,d=>l(void 0,null,function*(){return yield Ct({chainId:d.chainId,walletType:n})}))}),enabled:!!t&&t.length>0&&!!i,refetchOnWindowFocus:!1})},Ts=e=>{let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),{data:i}=Z(),{data:r}=Be({chainId:t.map(a=>a.chainId),multiChain:!0}),o=(e==null?void 0:e.bech32Address)||(i==null?void 0:i.bech32Address),n=react.useMemo(()=>["USE_BALANCE_STAKED",r,t,o],[t,o,r]);return reactQuery.useQuery({queryKey:n,queryFn:d=>l(void 0,[d],function*({queryKey:[,a,s,c]}){if(!c)throw new Error("address is not defined");return yield G(!!(e!=null&&e.multiChain),s,f=>l(void 0,null,function*(){var O,C;if(!a)throw new Error("Client is not ready");if(!((O=f.bech32Config)!=null&&O.bech32PrefixAccAddr))throw new Error(`Bech32Config is missing ${f.chainId}`);return yield (C=a[f.chainId])==null?void 0:C.getBalanceStaked(encoding.toBech32(f.bech32Config.bech32PrefixAccAddr,encoding.fromBech32(c).data))}))}),enabled:!!o&&!!t&&t.length>0&&!!r,refetchOnMount:!1,refetchOnReconnect:!0,refetchOnWindowFocus:!1})};var Rs=()=>{let e=u(r=>r.capsuleState),t=y(r=>r.capsuleClient),i=le();return {setModalState:r=>{u.setState(o=>{var n;return {capsuleState:{showModal:r,chainId:(n=o.capsuleState)==null?void 0:n.chainId}}});},modalState:!!(e!=null&&e.showModal),client:t,onAfterLoginSuccessful:i.onAfterLoginSuccessful,onLoginFailure:()=>{re();}}};var Us=()=>y(e=>e.activeChainIds),In=()=>{var e;return (e=y(t=>t.activeChainIds))==null?void 0:e.map(t=>{var r;let i=(r=u.getState().chains)==null?void 0:r.find(o=>o.chainId===t);if(i)return i}).filter(Boolean)},Fs=({chainId:e})=>{var t;return (t=u().chains)==null?void 0:t.find(i=>i.chainId===e)},qs=({chainId:e})=>{var t;return (t=u().chains)==null?void 0:t.filter(i=>e==null?void 0:e.includes(i.chainId))},Gs=({denom:e})=>{let t=In();return reactQuery.useQuery({queryKey:["USE_ACTIVE_CHAIN_CURRENCY",e],queryFn:({queryKey:[,o]})=>{var n;return (n=t==null?void 0:t.find(a=>a.currencies.find(s=>s.coinMinimalDenom===o)))==null?void 0:n.currencies.find(a=>a)}})},zs=e=>{var o;let t=(o=e.status)!=null?o:"BOND_STATUS_BONDED",i=["USE_ACTIVE_CHAIN_VALIDATORS",e.queryClient,t];return reactQuery.useQuery({queryKey:i,queryFn:s=>l(void 0,[s],function*({queryKey:[,n,a]}){if(!n)throw new Error("Query client is not defined");return yield n.staking.validators(a)}),enabled:typeof e.queryClient!="undefined"})},Qs=()=>({data:u(t=>t.recentChainIds),clear:We}),js=()=>{var t;return {data:(t=u(i=>i.recentChainIds))==null?void 0:t.map(i=>{var o;let r=(o=u.getState().chains)==null?void 0:o.find(n=>n.chainId===i);if(r)return r}).filter(Boolean),clear:We}},$s=({onError:e,onLoading:t,onSuccess:i}={})=>{let o=reactQuery.useMutation({mutationKey:["USE_SUGGEST_CHAIN",e,t,i],mutationFn:Re,onError:(n,a)=>Promise.resolve(e==null?void 0:e(n,a.chainInfo)),onMutate:n=>t==null?void 0:t(n.chainInfo),onSuccess:n=>Promise.resolve(i==null?void 0:i(n))});return {error:o.error,isLoading:o.isPending,isSuccess:o.isSuccess,suggest:o.mutate,suggestAsync:o.mutateAsync,status:o.status}},Vs=({onError:e,onLoading:t,onSuccess:i}={})=>{let o=reactQuery.useMutation({mutationKey:["USE_SUGGEST_CHAIN_AND_CONNECT",e,t,i],mutationFn:St,onError:(a,s)=>Promise.resolve(e==null?void 0:e(a,s)),onMutate:a=>t==null?void 0:t(a),onSuccess:a=>Promise.resolve(i==null?void 0:i(a))}),{data:n}=Ie();return {error:o.error,isLoading:o.isPending,isSuccess:o.isSuccess,isSupported:!!n,status:o.status,suggestAndConnect:o.mutate,suggestAndConnectAsync:o.mutateAsync}};var na=({onError:e,onLoading:t,onSuccess:i}={})=>{let{data:r}=Z(),o=r==null?void 0:r.bech32Address,n=reactQuery.useMutation({mutationKey:["USE_SEND_TOKENS",e,t,i,o],mutationFn:a=>ht(k({senderAddress:o},a)),onError:(a,s)=>Promise.resolve(e==null?void 0:e(a,s)),onMutate:t,onSuccess:a=>Promise.resolve(i==null?void 0:i(a))});return {error:n.error,isLoading:n.isPending,isSuccess:n.isSuccess,sendTokens:n.mutate,sendTokensAsync:n.mutateAsync,status:n.status}},ia=({onError:e,onLoading:t,onSuccess:i}={})=>{let{data:r}=Z(),o=r==null?void 0:r.bech32Address,n=reactQuery.useMutation({mutationKey:["USE_SEND_IBC_TOKENS",e,t,i,o],mutationFn:a=>At(k({senderAddress:o},a)),onError:(a,s)=>Promise.resolve(e==null?void 0:e(a,s)),onMutate:t,onSuccess:a=>Promise.resolve(i==null?void 0:i(a))});return {error:n.error,isLoading:n.isPending,isSuccess:n.isSuccess,sendIbcTokens:n.mutate,sendIbcTokensAsync:n.mutateAsync,status:n.status}},oa=({codeId:e,onError:t,onLoading:i,onSuccess:r})=>{let{data:o}=Z(),n=o==null?void 0:o.bech32Address,s=reactQuery.useMutation({mutationKey:["USE_INSTANTIATE_CONTRACT",t,i,r,e,n],mutationFn:c=>{var w;if(!n)throw new Error("senderAddress is undefined");let d=q(k({},c),{fee:(w=c.fee)!=null?w:"auto",senderAddress:n,codeId:e});return It(d)},onError:(c,d)=>Promise.resolve(t==null?void 0:t(c,d)),onMutate:i,onSuccess:c=>Promise.resolve(r==null?void 0:r(c))});return {error:s.error,isLoading:s.isPending,isSuccess:s.isSuccess,instantiateContract:s.mutate,instantiateContractAsync:s.mutateAsync,status:s.status}},ra=({contractAddress:e,onError:t,onLoading:i,onSuccess:r})=>{let{data:o}=Z(),n=o==null?void 0:o.bech32Address,s=reactQuery.useMutation({mutationKey:["USE_EXECUTE_CONTRACT",t,i,r,e,n],mutationFn:c=>{var w,f,g;if(!n)throw new Error("senderAddress is undefined");let d=q(k({},c),{fee:(w=c.fee)!=null?w:"auto",senderAddress:n,contractAddress:e,memo:(f=c.memo)!=null?f:"",funds:(g=c.funds)!=null?g:[]});return Ot(d)},onError:(c,d)=>Promise.resolve(t==null?void 0:t(c,d)),onMutate:i,onSuccess:c=>Promise.resolve(r==null?void 0:r(c))});return {error:s.error,isLoading:s.isPending,isSuccess:s.isSuccess,executeContract:s.mutate,executeContractAsync:s.mutateAsync,status:s.status}},sa=e=>{let{data:t}=Le();return reactQuery.useQuery({queryKey:["USE_QUERY_SMART",e==null?void 0:e.address,e==null?void 0:e.queryMsg,t],queryFn:({queryKey:[,r]})=>{if(!(e!=null&&e.address)||!e.queryMsg)throw new Error("address or queryMsg undefined");return Et(e.address,e.queryMsg,t)},enabled:!!(e!=null&&e.address)&&!!(e!=null&&e.queryMsg)&&!!t})},aa=e=>{let{data:t}=Le(),i=["USE_QUERY_RAW",e==null?void 0:e.key,e==null?void 0:e.address,t];return reactQuery.useQuery({queryKey:i,queryFn:({queryKey:[,o]})=>{if(!(e!=null&&e.address)||!e.key)throw new Error("address or key undefined");return bt(e.address,e.key,t)},enabled:!!(e!=null&&e.address)&&!!(e!=null&&e.key)&&!!t})};function ha(e){let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),i=u(n=>n.walletType),r=y(n=>n.activeChainIds),o=react.useMemo(()=>["USE_STARGATE_SIGNING_CLIENT",t,i,e,r],[r,e,t,i]);return reactQuery.useQuery({queryKey:o,queryFn:s=>l(this,[s],function*({queryKey:[,n,a]}){if(n.length<1)throw new Error("No chains found");return yield G(!!(e!=null&&e.multiChain),n,d=>l(this,null,function*(){var A,T;if(!(r!=null&&r.includes(d.chainId)))return null;if(!B(a))throw new Error(`${a} is not available`);let f=yield (()=>l(this,null,function*(){switch(e==null?void 0:e.offlineSigner){case"offlineSigner":return K(a).getOfflineSigner(d.chainId);case"offlineSignerAuto":return K(a).getOfflineSignerAuto(d.chainId);case"offlineSignerOnlyAmino":return K(a).getOfflineSignerOnlyAmino(d.chainId);default:return K(a).getOfflineSignerAuto(d.chainId)}}))(),g=(A=u.getState().chainsConfig)==null?void 0:A[d.chainId],O={url:d.rpc,headers:k({},(g==null?void 0:g.rpcHeaders)||{})};return (e==null?void 0:e.multiChain)===!0&&e.opts,yield stargate.SigningStargateClient.connectWithSigner(O,f,e!=null&&e.multiChain?(T=e.opts)==null?void 0:T[d.chainId]:e==null?void 0:e.opts)}))}),enabled:!!t&&t.length>0&&!!i&&((e==null?void 0:e.enabled)!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}function Aa(e){let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),i=u(n=>n.walletType),r=y(n=>n.activeChainIds),o=react.useMemo(()=>["USE_COSMWASM_SIGNING_CLIENT",t,i,e,r],[r,e,t,i]);return reactQuery.useQuery({queryKey:o,queryFn:s=>l(this,[s],function*({queryKey:[,n,a]}){if(n.length<1)throw new Error("No chains found");return yield G(!!(e!=null&&e.multiChain),n,d=>l(this,null,function*(){var T,E;if(!(r!=null&&r.includes(d.chainId)))return null;if(!B(a))throw new Error(`${a} is not available`);let f=yield (()=>l(this,null,function*(){switch(e==null?void 0:e.offlineSigner){case"offlineSigner":return K(a).getOfflineSigner(d.chainId);case"offlineSignerAuto":return K(a).getOfflineSignerAuto(d.chainId);case"offlineSignerOnlyAmino":return K(a).getOfflineSignerOnlyAmino(d.chainId);default:return K(a).getOfflineSignerAuto(d.chainId)}}))(),g=(T=u.getState().chainsConfig)==null?void 0:T[d.chainId],O={url:d.rpc,headers:k({},(g==null?void 0:g.rpcHeaders)||{})},C=g!=null&&g.gas?stargate.GasPrice.fromString(`${g.gas.price}${g.gas.denom}`):void 0;return yield cosmwasmStargate.SigningCosmWasmClient.connectWithSigner(O,f,k({gasPrice:C},e!=null&&e.multiChain?(E=e.opts)==null?void 0:E[d.chainId]:(e==null?void 0:e.opts)||{}))}))}),enabled:!!t&&t.length>0&&!!i&&((e==null?void 0:e.enabled)!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}function Ia(e){let t=U({chainId:e.chainId,multiChain:e.multiChain}),i=u(a=>a.walletType),r=y(a=>a.activeChainIds),o=react.useMemo(()=>["USE_STARGATE_TM_SIGNING_CLIENT",t,i,e,r],[r,e,t,i]),{data:n}=Ae({type:e.type,chainId:e.chainId,multiChain:e.multiChain});return reactQuery.useQuery({queryKey:o,queryFn:c=>l(this,[c],function*({queryKey:[,a,s]}){if(a.length<1)throw new Error("No chains found");return yield G(!!e.multiChain,a,w=>l(this,null,function*(){var A;if(!(r!=null&&r.includes(w.chainId)))return null;if(!B(s))throw new Error(`${s} is not available`);if(!n)throw new Error("No tendermint client found");let g=yield (()=>l(this,null,function*(){switch(e.offlineSigner){case"offlineSigner":return K(s).getOfflineSigner(w.chainId);case"offlineSignerAuto":return K(s).getOfflineSignerAuto(w.chainId);case"offlineSignerOnlyAmino":return K(s).getOfflineSignerOnlyAmino(w.chainId);default:return K(s).getOfflineSignerAuto(w.chainId)}}))(),O=e.multiChain?n[w.chainId]:n;return yield stargate.SigningStargateClient.createWithSigner(O,g,e.multiChain?(A=e.opts)==null?void 0:A[w.chainId]:e.opts)}))}),enabled:!!t&&t.length>0&&!!i&&!!n&&(e.enabled!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}function Oa(e){let t=U({chainId:e.chainId,multiChain:e.multiChain}),i=u(s=>s.walletType),r=y(s=>s.activeChainIds),o=react.useMemo(()=>["USE_COSMWASM_TM_SIGNING_CLIENT",t,i,e,r],[r,e,t,i]),{data:n}=Ae({type:e.type,chainId:e.chainId,multiChain:!1,enabled:!e.multiChain}),{data:a}=Ae({type:e.type,chainId:e.chainId,multiChain:!0,enabled:!!e.multiChain});return reactQuery.useQuery({queryKey:o,queryFn:d=>l(this,[d],function*({queryKey:[,s,c]}){if(s.length<1)throw new Error("No chains found");return yield G(!!e.multiChain,s,f=>l(this,null,function*(){var m,p;if(!(r!=null&&r.includes(f.chainId)))return null;if(!B(c))throw new Error(`${c} is not available`);let O=yield (()=>l(this,null,function*(){switch(e.offlineSigner){case"offlineSigner":return K(c).getOfflineSigner(f.chainId);case"offlineSignerAuto":return K(c).getOfflineSignerAuto(f.chainId);case"offlineSignerOnlyAmino":return K(c).getOfflineSignerOnlyAmino(f.chainId);default:return K(c).getOfflineSignerAuto(f.chainId)}}))(),C=(m=u.getState().chainsConfig)==null?void 0:m[f.chainId],A=C!=null&&C.gas?stargate.GasPrice.fromString(`${C.gas.price}${C.gas.denom}`):void 0,T=e.multiChain?a==null?void 0:a[f.chainId]:n;if(!T)throw new Error("No tendermint client found");return yield cosmwasmStargate.SigningCosmWasmClient.createWithSigner(T,O,k({gasPrice:A},e.multiChain?(p=e.opts)==null?void 0:p[f.chainId]:e.opts||{}))}))}),enabled:!!t&&t.length>0&&!!i&&(!!n||!he(a))&&(e.enabled!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}var Lt=({children:e})=>{let[t,i]=react.useState(!1);return react.useEffect(()=>{i(!0);},[]),jsxRuntime.jsx(jsxRuntime.Fragment,{children:t?e:null})};var xn=()=>{let e=typeof window!="undefined"&&window.sessionStorage.getItem(Y)==="Active",{_reconnect:t,_onReconnectFailed:i,_reconnectConnector:r,iframeOptions:o,chains:n}=u(),{activeChainIds:a,wcSignClients:s}=y(),c=B(r||void 0);return react.useEffect(()=>{if(!o||o.autoConnect===!1||!o.allowedIframeParentOrigins.length||!n)return;new cosmiframe.Cosmiframe(o.allowedIframeParentOrigins).isReady().then(w=>{if(w)return J({chainId:n.map(f=>f.chainId),walletType:"cosmiframe"})});},[o]),react.useEffect(()=>{if(r){if(!c)return;e&&a?L({onError:i}):!e&&t&&L({onError:i});}},[c]),react.useEffect(()=>{var d,w,f,g,O,C,A,T,E,m,p,S,v,R,D,ee,ie,h,I,b,x,P;if(r){if(!c)return;r==="cosmostation"&&((w=(d=me()).subscription)==null||w.call(d,()=>{L({onError:i});})),r==="keplr"&&((g=(f=de()).subscription)==null||g.call(f,()=>{L({onError:i});})),r==="cactuscosmos"&&((C=(O=ce()).subscription)==null||C.call(O,()=>{L({onError:i});})),r==="leap"&&((T=(A=fe()).subscription)==null||T.call(A,()=>{L({onError:i});})),r==="compass"&&((m=(E=ue()).subscription)==null||m.call(E,()=>{L({onError:i});})),r==="vectis"&&((S=(p=Se()).subscription)==null||S.call(p,()=>{L({onError:i});})),r==="walletconnect"&&s.has("walletconnect")&&((R=(v=Q()).subscription)==null||R.call(v,()=>{L({onError:i});})),r==="station"&&((ee=(D=Ce()).subscription)==null||ee.call(D,()=>{L({onError:i});})),r==="xdefi"&&((h=(ie=we()).subscription)==null||h.call(ie,()=>{L({onError:i});})),r==="cosmiframe"&&((b=(I=pe()).subscription)==null||b.call(I,()=>{L({onError:i});})),r==="okx"&&((P=(x=ye()).subscription)==null||P.call(x,()=>{L({onError:i});}));}},[r,s,c]),null},Ut=()=>(xn(),null);var ec=({children:e,grazOptions:t})=>(react.useEffect(()=>{wt(t);},[t]),jsxRuntime.jsxs(Lt,{children:[e,jsxRuntime.jsx(Ut,{})]}));
26
26
 
27
- exports.GrazEvents = Lt;
28
- exports.GrazProvider = ja;
29
- exports.WALLET_TYPES = $e;
30
- exports.WalletType = je;
27
+ exports.GrazEvents = Ut;
28
+ exports.GrazProvider = ec;
29
+ exports.WALLET_TYPES = Ve;
30
+ exports.WalletType = $e;
31
31
  exports.checkWallet = B;
32
- exports.clearRecentChain = Pe;
32
+ exports.clearRecentChain = We;
33
33
  exports.clearSession = N;
34
- exports.configureGraz = Ct;
34
+ exports.configureGraz = wt;
35
35
  exports.connect = J;
36
- exports.defineChainInfo = kr;
37
- exports.defineChains = Mr;
38
- exports.disconnect = oe;
39
- exports.executeContract = It;
40
- exports.getAvailableWallets = ir;
41
- exports.getChainInfo = Sr;
42
- exports.getChainInfos = Cr;
43
- exports.getCosmostation = ue;
44
- exports.getKeplr = pe;
45
- exports.getLeap = me;
46
- exports.getMetamaskSnapLeap = st;
47
- exports.getOfflineSigners = yt;
48
- exports.getQueryRaw = Ot;
36
+ exports.defineChainInfo = _r;
37
+ exports.defineChains = Dr;
38
+ exports.disconnect = re;
39
+ exports.executeContract = Ot;
40
+ exports.getAvailableWallets = ur;
41
+ exports.getCactusCosmos = ce;
42
+ exports.getChainInfo = Er;
43
+ exports.getChainInfos = br;
44
+ exports.getCosmostation = me;
45
+ exports.getKeplr = de;
46
+ exports.getLeap = fe;
47
+ exports.getMetamaskSnapLeap = at;
48
+ exports.getOfflineSigners = Ct;
49
+ exports.getQueryRaw = bt;
49
50
  exports.getQuerySmart = Et;
50
- exports.getRecentChainIds = gr;
51
- exports.getRecentChains = yr;
52
- exports.getVectis = ye;
53
- exports.getWCCosmostation = pt;
54
- exports.getWCKeplr = mt;
55
- exports.getWCLeap = dt;
56
- exports.getWallet = D;
57
- exports.getWalletConnect = z;
58
- exports.instantiateContract = At;
59
- exports.isCapsule = ke;
60
- exports.isLeapDappBrowser = gt;
61
- exports.isLeapSnaps = ft;
62
- exports.isWalletConnect = ve;
51
+ exports.getRecentChainIds = Ir;
52
+ exports.getRecentChains = Or;
53
+ exports.getVectis = Se;
54
+ exports.getWCCosmostation = mt;
55
+ exports.getWCKeplr = dt;
56
+ exports.getWCLeap = ft;
57
+ exports.getWallet = K;
58
+ exports.getWalletConnect = Q;
59
+ exports.instantiateContract = It;
60
+ exports.isCapsule = Pe;
61
+ exports.isLeapDappBrowser = yt;
62
+ exports.isLeapSnaps = gt;
63
+ exports.isWalletConnect = oe;
63
64
  exports.reconnect = L;
64
- exports.sendIbcTokens = wt;
65
+ exports.sendIbcTokens = At;
65
66
  exports.sendTokens = ht;
66
- exports.suggestChain = We;
67
+ exports.suggestChain = Re;
67
68
  exports.suggestChainAndConnect = St;
68
69
  exports.useAccount = Z;
69
- exports.useActiveChainCurrency = _s;
70
- exports.useActiveChainIds = Rs;
71
- exports.useActiveChains = An;
72
- exports.useActiveWalletType = ns;
73
- exports.useBalance = gs;
74
- exports.useBalanceStaked = hs;
75
- exports.useBalances = wn;
76
- exports.useCapsule = Ts;
77
- exports.useChainInfo = Ks;
78
- exports.useChainInfos = Ds;
79
- exports.useCheckWallet = we;
80
- exports.useConnect = ys;
81
- exports.useCosmWasmClient = Be;
82
- exports.useCosmWasmSigningClient = fa;
83
- exports.useCosmWasmTmSigningClient = ya;
84
- exports.useDisconnect = Ss;
85
- exports.useExecuteContract = Js;
70
+ exports.useActiveChainCurrency = Gs;
71
+ exports.useActiveChainIds = Us;
72
+ exports.useActiveChains = In;
73
+ exports.useActiveWalletType = ls;
74
+ exports.useBalance = Is;
75
+ exports.useBalanceStaked = Ts;
76
+ exports.useBalances = An;
77
+ exports.useCapsule = Rs;
78
+ exports.useChainInfo = Fs;
79
+ exports.useChainInfos = qs;
80
+ exports.useCheckWallet = Ie;
81
+ exports.useConnect = Os;
82
+ exports.useCosmWasmClient = Le;
83
+ exports.useCosmWasmSigningClient = Aa;
84
+ exports.useCosmWasmTmSigningClient = Oa;
85
+ exports.useDisconnect = Es;
86
+ exports.useExecuteContract = ra;
86
87
  exports.useGrazEvents = xn;
87
- exports.useInstantiateContract = Ys;
88
- exports.useOfflineSigners = Cs;
89
- exports.useQueryClientValidators = Ns;
90
- exports.useQueryRaw = ea;
91
- exports.useQuerySmart = Zs;
92
- exports.useRecentChainIds = Bs;
93
- exports.useRecentChains = Ls;
94
- exports.useSendIbcTokens = Xs;
95
- exports.useSendTokens = Hs;
96
- exports.useStargateClient = Ne;
97
- exports.useStargateSigningClient = da;
98
- exports.useStargateTmSigningClient = ga;
99
- exports.useSuggestChain = Us;
100
- exports.useSuggestChainAndConnect = Fs;
101
- exports.useTendermintClient = he;
88
+ exports.useInstantiateContract = oa;
89
+ exports.useOfflineSigners = bs;
90
+ exports.useQueryClientValidators = zs;
91
+ exports.useQueryRaw = aa;
92
+ exports.useQuerySmart = sa;
93
+ exports.useRecentChainIds = Qs;
94
+ exports.useRecentChains = js;
95
+ exports.useSendIbcTokens = ia;
96
+ exports.useSendTokens = na;
97
+ exports.useStargateClient = Be;
98
+ exports.useStargateSigningClient = ha;
99
+ exports.useStargateTmSigningClient = Ia;
100
+ exports.useSuggestChain = $s;
101
+ exports.useSuggestChainAndConnect = Vs;
102
+ exports.useTendermintClient = Ae;
package/dist/index.mjs CHANGED
@@ -4,7 +4,7 @@ import { encodeEd25519Pubkey, encodeSecp256k1Pubkey, pubkeyType, rawEd25519Pubke
4
4
  import { fromBech32, toBech32 } from '@cosmjs/encoding';
5
5
  import { Cosmiframe, isInIframe } from '@dao-dao/cosmiframe';
6
6
  import { isSnapInstalled, installSnap, CosmosSnap } from '@cosmsnap/snapper';
7
- import ut from 'long';
7
+ import pt from 'long';
8
8
  import { SignClient } from '@walletconnect/sign-client';
9
9
  import { getSdkError } from '@walletconnect/utils';
10
10
  import { WalletConnectModal } from '@walletconnect/modal';
@@ -16,6 +16,6 @@ import { Tendermint37Client, Tendermint34Client } from '@cosmjs/tendermint-rpc';
16
16
  import { shallow } from 'zustand/shallow';
17
17
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
18
18
 
19
- var Ft=Object.defineProperty,qt=Object.defineProperties;var Gt=Object.getOwnPropertyDescriptors;var ze=Object.getOwnPropertySymbols;var zt=Object.prototype.hasOwnProperty,Qt=Object.prototype.propertyIsEnumerable;var Qe=(e,t,i)=>t in e?Ft(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,P=(e,t)=>{for(var i in t||(t={}))zt.call(t,i)&&Qe(e,i,t[i]);if(ze)for(var i of ze(t))Qt.call(t,i)&&Qe(e,i,t[i]);return e},$=(e,t)=>qt(e,Gt(t));var l=(e,t,i)=>new Promise((r,o)=>{var n=c=>{try{s(i.next(c));}catch(m){o(m);}},a=c=>{try{s(i.throw(c));}catch(m){o(m);}},s=c=>c.done?r(c.value):Promise.resolve(c.value).then(n,a);s((i=i.apply(e,t)).next());}),je=(e,t,i)=>(t=e[Symbol.asyncIterator],i=(r,o)=>(o=e[r])&&(t[r]=n=>new Promise((a,s,c)=>(n=o.call(e,n),c=n.done,Promise.resolve(n.value).then(m=>a({value:m,done:c}),s)))),t?t.call(e):(e=e[Symbol.iterator](),t={},i("next"),i("return"),t));var J="graz-reconnect-session";var $e=(u=>(u.KEPLR="keplr",u.LEAP="leap",u.VECTIS="vectis",u.COSMOSTATION="cosmostation",u.WALLETCONNECT="walletconnect",u.WC_KEPLR_MOBILE="wc_keplr_mobile",u.WC_LEAP_MOBILE="wc_leap_mobile",u.WC_COSMOSTATION_MOBILE="wc_cosmostation_mobile",u.WC_CLOT_MOBILE="wc_clot_mobile",u.METAMASK_SNAP_LEAP="metamask_snap_leap",u.METAMASK_SNAP_COSMOS="metamask_snap_cosmos",u.STATION="station",u.XDEFI="xdefi",u.CAPSULE="capsule",u.COSMIFRAME="cosmiframe",u.COMPASS="compass",u.INITIA="initia",u.OKX="okx",u))($e||{}),Ve=["keplr","leap","vectis","cosmostation","walletconnect","wc_keplr_mobile","wc_leap_mobile","wc_cosmostation_mobile","wc_clot_mobile","metamask_snap_leap","station","xdefi","capsule","metamask_snap_cosmos","cosmiframe","compass","initia","okx"];var $t={iframeOptions:null,recentChainIds:null,chains:null,chainsConfig:null,capsuleConfig:null,capsuleState:null,multiChainFetchConcurrency:3,walletType:"keplr",walletConnect:{options:null,walletConnectModal:null},walletDefaultOptions:null,_notFoundFn:()=>null,_onReconnectFailed:()=>null,_reconnect:!1,_reconnectConnector:null},ie={accounts:null,activeChainIds:null,status:"disconnected",wcSignClients:new Map,capsuleClient:null},Vt={name:"graz-session",version:2,partialize:e=>({accounts:e.accounts,activeChainIds:e.activeChainIds}),storage:createJSONStorage(()=>sessionStorage)},Ht={name:"graz-internal",partialize:e=>({recentChainIds:e.recentChainIds,_reconnect:e._reconnect,_reconnectConnector:e._reconnectConnector,walletType:e.walletType}),version:2},g=create(subscribeWithSelector(persist(()=>ie,Vt))),p=create(subscribeWithSelector(persist(()=>$t,Ht)));var ce=()=>{var f,E;if(!((f=p.getState().capsuleConfig)!=null&&f.apiKey)||!((E=p.getState().capsuleConfig)!=null&&E.env))throw new Error("Capsule configuration is not set");let e=()=>l(void 0,null,function*(){var T,O;let S=(yield import('@leapwallet/cosmos-social-login-capsule-provider')).CapsuleProvider,A=new S({apiKey:(T=p.getState().capsuleConfig)==null?void 0:T.apiKey,env:(O=p.getState().capsuleConfig)==null?void 0:O.env});return g.setState({capsuleClient:A}),A});return {init:e,enable:S=>l(void 0,null,function*(){let A=typeof S=="string"?[S]:S,T=g.getState().capsuleClient;T||(T=yield e()),p.setState({capsuleState:{showModal:!0,chainId:A}});}),onAfterLoginSuccessful:()=>l(void 0,null,function*(){var u;let S=g.getState().capsuleClient,{chains:A}=p.getState();if(!S)throw new Error("Capsule client is not initialized");if(!A)throw new Error("Chains are not set");yield S.enable();let T=(u=p.getState().capsuleState)==null?void 0:u.chainId;if(!T)throw new Error("Chain ids are not set");let O=Object.fromEntries(yield Promise.all(T.map(y=>l(void 0,null,function*(){let C=yield S.getAccount(y);return [y,{address:fromBech32(C.address).data,bech32Address:C.address,algo:C.algo,name:C.username||"",pubKey:C.pubkey,isKeystone:!1,isNanoLedger:!1}]}))));g.setState(y=>({accounts:P(P({},y.accounts||{}),O)})),p.setState(y=>({recentChainIds:[...y.recentChainIds||[],...T].filter((C,k,R)=>R.indexOf(C)===k)})),g.setState(y=>({activeChainIds:[...y.activeChainIds||[],...T].filter((C,k,R)=>R.indexOf(C)===k)})),p.setState({walletType:"capsule",_reconnect:!1,_reconnectConnector:"capsule"}),g.setState({status:"connected"}),typeof window!="undefined"&&window.sessionStorage.setItem(J,"Active"),p.setState({capsuleState:null});}),getKey:S=>l(void 0,null,function*(){let A=g.getState().capsuleClient;if(!A)throw new Error("Capsule client is not initialized");let T=yield A.getAccount(S);return {address:fromBech32(T.address).data,bech32Address:T.address,algo:T.algo,name:T.username||"",pubKey:T.pubkey,isKeystone:!1,isNanoLedger:!1}}),getOfflineSignerAuto:S=>l(void 0,null,function*(){let A=g.getState().capsuleClient;if(!A)throw new Error("Capsule client is not initialized");return A.getOfflineSignerDirect(S)}),getOfflineSignerDirect:S=>{let A=g.getState().capsuleClient;if(!A)throw new Error("Capsule client is not initialized");return A.getOfflineSignerDirect(S)},signDirect:(...S)=>l(void 0,null,function*(){let[A,T,O]=S,u=g.getState().capsuleClient;if(!u)throw new Error("Capsule client is not initialized");return u.signDirect(A,T,{bodyBytes:O.bodyBytes,authInfoBytes:O.authInfoBytes,chainId:O.chainId,accountNumber:O.accountNumber})}),signAmino:(...S)=>l(void 0,null,function*(){let[A,T,O,u]=S,y=g.getState().capsuleClient;if(!y)throw new Error("Capsule client is not initialized");return y.signAmino(A,T,O,u)}),signArbitrary:(S,A,T)=>l(void 0,null,function*(){let O=g.getState().capsuleClient;if(!O)throw new Error("Capsule client is not initialized");let u=yield O.getAccount(S);if(!u)throw new Error(`Wallet not connected to account ${A}`);let y=(()=>{switch(u.algo){case"secp256k1":return encodeSecp256k1Pubkey(u.pubkey);case"ed25519":return encodeEd25519Pubkey(u.pubkey);default:throw new Error("sr25519 public key algorithm is not supported")}})();return {signature:yield O.signArbitrary(S,A,T),pub_key:{type:u.algo==="secp256k1"?pubkeyType.secp256k1:pubkeyType.ed25519,value:y.value}}}),experimentalSuggestChain:(...S)=>l(void 0,null,function*(){yield Promise.reject(new Error("Capsule does not support experimentalSuggestChain"));}),getOfflineSigner:S=>{let A=g.getState().capsuleClient;if(!A)throw new Error("Capsule client is not initialized");return A.getOfflineSigner(S)},getOfflineSignerAmino:S=>{let A=g.getState().capsuleClient;if(!A)throw new Error("Capsule client is not initialized");return A.getOfflineSignerAmino(S)}}};var le=()=>{if(typeof window.compass!="undefined"){let e=window.compass;return Object.assign(e,{subscription:o=>{let n=()=>{B(),o();};return window.addEventListener("leap_keystorechange",n),()=>{window.removeEventListener("leap_keystorechange",n);}},setDefaultOptions:o=>{e.defaultOptions=o;}})}throw p.getState()._notFoundFn(),new Error("window.leap is not defined")};var ue=()=>{let e=p.getState();if(!e.iframeOptions)throw e._notFoundFn(),new Error("no iframe options set");if(!isInIframe())throw e._notFoundFn(),new Error("not in iframe");if(!e.iframeOptions.allowedIframeParentOrigins.length)throw e._notFoundFn(),new Error("no iframe allowed origins");let t=new Cosmiframe(e.iframeOptions.allowedIframeParentOrigins).getKeplrClient();return {enable:t.enable.bind(t),getKey:t.getKey.bind(t),getOfflineSigner:t.getOfflineSigner.bind(t),getOfflineSignerAuto:t.getOfflineSignerAuto.bind(t),getOfflineSignerOnlyAmino:t.getOfflineSignerOnlyAmino.bind(t),experimentalSuggestChain:t.experimentalSuggestChain.bind(t),signDirect:t.signDirect.bind(t),signAmino:t.signAmino.bind(t)}};var nt={},it=()=>{let e=window.ethereum,t=window.cosmos;if(e)return {init:()=>l(void 0,null,function*(){var h;let n=yield e.request({method:"web3_clientVersion"});if(!n.includes("MetaMask"))throw new Error("Metamask is not installed");if(typeof window.okxwallet!="undefined"&&window.okxwallet.isOkxWallet)throw new Error("You have OKX Wallet installed. Please disable and reload the page to use Metamask Snap.");let s=(h=n.split("MetaMask/v")[1])==null?void 0:h.split(".")[0];if(!(Number(s)>=11))throw new Error("Metamask Snap is not supported in this version");return (yield isSnapInstalled())||(yield installSnap()),window.cosmos=new CosmosSnap,t=window.cosmos,!0}),enable:n=>l(void 0,null,function*(){(yield isSnapInstalled())||(yield installSnap());}),getOfflineSigner:n=>t.getOfflineSigner(n),experimentalSuggestChain:n=>l(void 0,null,function*(){if(!n.bech32Config)throw new Error("Bech32Config is required");if(!n.stakeCurrency)throw new Error("StakeCurrency is required");yield t.experimentalSuggestChain($(P({},n),{stakeCurrency:n.stakeCurrency,bech32Config:n.bech32Config}));}),signAmino:(n,a,s)=>l(void 0,null,function*(){return t.signAmino(n,a,s)}),getKey:n=>l(void 0,null,function*(){return typeof nt[n]!="undefined"?nt[n]:t.getKey(n)}),getOfflineSignerAuto:n=>l(void 0,null,function*(){return (yield t.getKey(n)).isNanoLedger?t.getOfflineSignerOnlyAmino(n):t.getOfflineSigner(n)}),getOfflineSignerOnlyAmino:n=>t.getOfflineSignerOnlyAmino(n),signDirect:(n,a,s)=>l(void 0,null,function*(){return t.signDirect(n,a,s)}),signArbitrary:(n,a,s)=>l(void 0,null,function*(){return t.signArbitrary(n,a,s)}),disable:n=>l(void 0,null,function*(){n&&(yield t.deleteChain(n));})};throw p.getState()._notFoundFn(),new Error("window.ethereum is not defined")};var pe=()=>{var e;if(typeof((e=window.cosmostation)==null?void 0:e.providers.keplr)!="undefined"){let t=window.cosmostation.providers.keplr;return Object.assign(t,{subscription:n=>{let a=()=>{B(),n();};return window.addEventListener("cosmostation_keystorechange",a),()=>{window.removeEventListener("cosmostation_keystorechange",a);}},setDefaultOptions:n=>{t.defaultOptions=n;}})}throw p.getState()._notFoundFn(),new Error("window.cosmostation.providers.keplr is not defined")};var sn=e=>{let{bodyBytes:t,authInfoBytes:i,chainId:r,accountNumber:o}=e;if(!t||!i||!r||!o)throw new Error("Invalid sign doc");return {bodyBytes:t,authInfoBytes:i,chainId:r,accountNumber:o}},an=e=>`${e.slice(0,6)}...${e.slice(-6)}`,rt=()=>{if(typeof window.initia!="undefined"){let e=window.initia;return {enable:()=>l(void 0,null,function*(){yield e.getAddress();}),getKey:d=>l(void 0,null,function*(){let f=e.getOfflineSigner(d),[E]=yield f.getAccounts();if(!E)throw new Error("Wallet connection failed");let S=(()=>{switch(E.algo){case"secp256k1":return rawSecp256k1PubkeyToRawAddress(E.pubkey);case"ed25519":return rawEd25519PubkeyToRawAddress(E.pubkey);default:throw new Error("sr25519 public key algorithm is not supported")}})();return {name:an(E.address),algo:E.algo,pubKey:E.pubkey,bech32Address:E.address,address:S,isNanoLedger:!1,isKeystone:!1}}),getOfflineSigner:d=>{let f=e.getOfflineSigner(d),E=e.getOfflineSignerOnlyAmino(d);return {getAccounts:f.getAccounts.bind(f),signDirect:f.signDirect.bind(f),signAmino:E.signAmino.bind(E)}},getOfflineSignerAuto:d=>Promise.resolve(e.getOfflineSigner(d)),getOfflineSignerOnlyAmino:d=>e.getOfflineSignerOnlyAmino(d),experimentalSuggestChain:d=>e.requestAddInitiaLayer({chain_id:d.chainId,chain_name:d.chainName,bech32_prefix:"init",bech32_config:d.bech32Config,slip44:d.bip44.coinType,logo_URIs:{png:d.chainSymbolImageUrl},fees:{fee_tokens:d.feeCurrencies.map(f=>{var E,S,A;return {denom:f.coinDenom,amount:f.coinMinimalDenom,low_gas_price:(E=f.gasPriceStep)==null?void 0:E.low,average_gas_price:(S=f.gasPriceStep)==null?void 0:S.average,high_gas_price:(A=f.gasPriceStep)==null?void 0:A.high}})},apis:{rpc:[{address:d.rpc}],rest:[{address:d.rest}]}}),signDirect:(...d)=>{let[f,E,S]=d;return e.getOfflineSigner(f).signDirect(E,sn(S))},signAmino:(...d)=>{let[f,E,S]=d;return e.getOfflineSignerOnlyAmino(f).signAmino(E,S)},signArbitrary:(d,f,E)=>l(void 0,null,function*(){let T=(yield e.getOfflineSigner(d).getAccounts()).find(y=>y.address===f);if(!T)throw new Error(`Wallet not connected to account ${f}`);let O=(()=>{switch(T.algo){case"secp256k1":return encodeSecp256k1Pubkey(T.pubkey);case"ed25519":return encodeEd25519Pubkey(T.pubkey);default:throw new Error("sr25519 public key algorithm is not supported")}})();return {signature:yield e.signArbitrary(E),pub_key:{type:T.algo==="secp256k1"?pubkeyType.secp256k1:pubkeyType.ed25519,value:O.value}}}),subscription:d=>{let f=()=>{B(),d();};return window.addEventListener("initia_keystorechange",f),()=>{window.removeEventListener("initia_keystorechange",f);}}}}throw p.getState()._notFoundFn(),new Error("window.initia is not defined")};var me=()=>{if(typeof window.keplr!="undefined"){let e=window.keplr;return Object.assign(e,{subscription:o=>{let n=()=>{B(),o();};return window.addEventListener("keplr_keystorechange",n),()=>{window.removeEventListener("keplr_keystorechange",n);}},setDefaultOptions:o=>{e.defaultOptions=o;}})}throw p.getState()._notFoundFn(),new Error("window.keplr is not defined")};var de=()=>{if(typeof window.leap!="undefined"){let e=window.leap;return Object.assign(e,{subscription:o=>{let n=()=>{B(),o();};return window.addEventListener("leap_keystorechange",n),()=>{window.removeEventListener("leap_keystorechange",n);}},setDefaultOptions:o=>{e.defaultOptions=o;}})}throw p.getState()._notFoundFn(),new Error("window.leap is not defined")};var fe={},st=e=>{let t=window.ethereum;if(t&&e){let i=()=>l(void 0,null,function*(){return yield t.request({method:"wallet_getSnaps"})}),r=u=>l(void 0,null,function*(){try{let y=yield i();return Object.values(y).find(C=>C.id===e.id&&(!u||C.version===u))}catch(y){return}}),o=()=>l(void 0,null,function*(){yield t.request({method:"wallet_requestSnaps",params:{[e.id]:e.params||{}}});}),n=()=>l(void 0,null,function*(){var D;let u=yield t.request({method:"web3_clientVersion"});if(!u.includes("MetaMask"))throw new Error("Metamask is not installed");if(typeof window.okxwallet!="undefined"&&window.okxwallet.isOkxWallet)throw new Error("You have OKX Wallet installed. Please disable and reload the page to use Metamask Snap.");let C=(D=u.split("MetaMask/v")[1])==null?void 0:D.split(".")[0];if(!(Number(C)>=11))throw new Error("Metamask Snap is not supported in this version");return (yield r())||(yield o()),!0}),a=u=>l(void 0,null,function*(){(yield r())||(yield o());}),s=(u,y,C)=>l(void 0,null,function*(){let k=yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"signDirect",params:{chainId:u,signerAddress:y,signDoc:C}}}}),R=C.accountNumber,D=new ut(R.low,R.high,R.unsigned);return {signature:k.signature,signed:$(P({},k.signed),{accountNumber:`${D.toString()}`,authInfoBytes:new Uint8Array(Object.values(k.signed.authInfoBytes)),bodyBytes:new Uint8Array(Object.values(k.signed.bodyBytes))})}}),c=(u,y,C)=>l(void 0,null,function*(){return yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"signAmino",params:{chainId:u,signerAddress:y,signDoc:C}}}})}),m=u=>l(void 0,null,function*(){if(typeof fe[u]!="undefined")return fe[u];let y=yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"getKey",params:{chainId:u}}}});if(!y)throw new Error("No response from Metamask");return y.pubKey=Uint8Array.from(Object.values(y.pubkey)),delete y.pubkey,fe[u]=y,fe[u]}),h=u=>l(void 0,null,function*(){let y=yield m(u);return {address:y.bech32Address,algo:y.algo,pubkey:y.pubKey}}),d=(...u)=>l(void 0,null,function*(){let[y,C,k,R]=u;return yield c(y,C,k)}),f=(...u)=>l(void 0,null,function*(){let[y,C,k]=u;return yield s(y,C,k)}),S=u=>({getAccounts:()=>l(void 0,null,function*(){return [yield h(u)]}),signAmino:(y,C)=>d(u,y,C)});return {enable:a,experimentalSuggestChain:(...u)=>l(void 0,null,function*(){yield n(),yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"suggestChain",params:{chainInfo:u[0]}}}});}),getKey:m,getOfflineSigner:u=>({getAccounts:()=>l(void 0,null,function*(){return [yield h(u)]}),signDirect:(y,C)=>f(u,y,C),signAmino:(y,C)=>d(u,y,C)}),getOfflineSignerAuto:u=>l(void 0,null,function*(){return S(u)}),getOfflineSignerOnlyAmino:S,init:n,signAmino:d,signDirect:f}}throw p.getState()._notFoundFn(),new Error("window.ethereum is not defined")};var at=()=>st({id:"npm:@leapwallet/metamask-cosmos-snap"});var ge=()=>{var e;if(typeof((e=window.okxwallet)==null?void 0:e.keplr)!="undefined"){let t=window.okxwallet.keplr;return Object.assign(t,{subscription:n=>{var s;let a=()=>{B(),n();};return (s=window.okxwallet)==null||s.on("accountsChanged",a),()=>{var c;(c=window.okxwallet)==null||c.removeListener("accountsChanged",a);}},setDefaultOptions:n=>{t.defaultOptions=n;}})}throw p.getState()._notFoundFn(),new Error("window.okxwallet.keplr is not defined")};var ye=()=>{if(typeof window.station!="undefined"){let e=window.station.keplr;return {subscription:n=>{let a=()=>{B(),n();};return window.addEventListener("station_wallet_change",a),()=>{window.removeEventListener("station_wallet_change",a);}},getKey:n=>l(void 0,null,function*(){let a=yield e.getKey(n);return P({isKeystone:!1},a)}),getOfflineSigner:n=>{try{let a=e.getOfflineSignerOnlyAmino(n);return Object.assign(a,{signDirect:(m,h)=>{throw new Error("signDirect not supported by Station")}})}catch(a){throw console.error(a),a}},experimentalSuggestChain:n=>l(void 0,null,function*(){try{if(!n.bech32Config)throw new Error("Bech32Config is required");if(!n.stakeCurrency)throw new Error("StakeCurrency is required");let a=Object.assign(n,{bech32Config:n.bech32Config,chainSymbolImageUrl:n.chainSymbolImageUrl||"",stakeCurrency:{coinDecimals:n.stakeCurrency.coinDecimals,coinDenom:n.stakeCurrency.coinDenom,coinImageUrl:n.stakeCurrency.coinImageUrl||"",coinMinimalDenom:n.stakeCurrency.coinMinimalDenom},currencies:n.currencies.map(s=>({coinDecimals:s.coinDecimals,coinDenom:s.coinDenom,coinImageUrl:s.coinImageUrl||"",coinMinimalDenom:s.coinMinimalDenom})),feeCurrencies:n.feeCurrencies.map(s=>{var c,m,h;return {coinDecimals:s.coinDecimals,coinDenom:s.coinDenom,coinImageUrl:s.coinImageUrl||"",coinMinimalDenom:s.coinMinimalDenom,gasPriceStep:{average:((c=s.gasPriceStep)==null?void 0:c.average)||0,high:((m=s.gasPriceStep)==null?void 0:m.high)||0,low:((h=s.gasPriceStep)==null?void 0:h.low)||0}}})});yield e.experimentalSuggestChain(a);}catch(a){throw console.error(a),a}}),enable:n=>e.enable(n),disable:n=>e.disable(n),getOfflineSignerAuto:n=>e.getOfflineSignerAuto(n),getOfflineSignerOnlyAmino:n=>e.getOfflineSignerOnlyAmino(n),signDirect:()=>e.signDirect(),signAmino:(n,a,s,c)=>e.signAmino(n,a,s)}}throw p.getState()._notFoundFn(),new Error("window.station is not defined")};var Se=()=>{if(typeof window.vectis!="undefined"){let e=window.vectis.cosmos;return {enable:s=>e.enable(s),getOfflineSigner:s=>e.getOfflineSigner(s),getOfflineSignerAuto:s=>e.getOfflineSignerAuto(s),getKey:s=>l(void 0,null,function*(){let c=yield e.getKey(s);return {address:fromBech32(c.address).data,algo:c.algo,bech32Address:c.address,name:c.name,pubKey:c.pubKey,isKeystone:!1,isNanoLedger:c.isNanoLedger}}),subscription:s=>{let c=()=>{B(),s();};return window.addEventListener("vectis_accountChanged",c),()=>{window.removeEventListener("vectis_accountChanged",c);}},getOfflineSignerOnlyAmino:(...s)=>{let c=s[0];return e.getOfflineSignerAmino(c)},experimentalSuggestChain:(...s)=>l(void 0,null,function*(){var h;let[c]=s;if(!c.bech32Config)throw new Error("Bech32Config is required");if(!c.stakeCurrency)throw new Error("StakeCurrency is required");let m={rpcUrl:c.rpc,restUrl:c.rest,prettyName:c.chainName.replace(" ",""),bech32Prefix:(h=c.bech32Config)==null?void 0:h.bech32PrefixAccAddr,currencies:c.currencies,feeCurrencies:c.feeCurrencies,chainId:c.chainId,chainName:c.chainName,bip44:c.bip44,stakeCurrency:c.stakeCurrency,features:c.features};return e.suggestChains([m])}),signDirect:(...s)=>l(void 0,null,function*(){var h;let{1:c,2:m}=s;return e.signDirect(c,{bodyBytes:m.bodyBytes||Uint8Array.from([]),authInfoBytes:m.authInfoBytes||Uint8Array.from([]),accountNumber:ut.fromString(((h=m.accountNumber)==null?void 0:h.toString())||"",!1),chainId:m.chainId||""})}),signAmino:(...s)=>l(void 0,null,function*(){let{1:c,2:m}=s;return e.signAmino(c,m)})}}throw p.getState()._notFoundFn(),new Error("window.vectis is not defined")};var z=()=>{if(typeof window!="undefined"){let e=navigator.userAgent;return !!(/android/i.test(e)||/iPad|iPhone|iPod/.test(e))}return !1},ct=()=>z()&&navigator.userAgent.toLowerCase().includes("android"),lt=()=>z()&&(navigator.userAgent.toLowerCase().includes("iphone")||navigator.userAgent.toLowerCase().includes("ipad"));var ke=(e,t,i=new Error("Promise timed out"))=>{let r=new Promise((o,n)=>{setTimeout(()=>{n(i);},t);});return Promise.race([e,r])};var Q=e=>{var D,te,oe;if(!((oe=(te=(D=p.getState().walletConnect)==null?void 0:D.options)==null?void 0:te.projectId)!=null&&oe.trim()))throw new Error("walletConnect.options.projectId is not defined");let t=(e==null?void 0:e.walletType)||"walletconnect",i=(e==null?void 0:e.encoding)||"base64",r=w=>{if(!e)return;let{appUrl:I,formatNativeUrl:b}=e;if(z()){if(ct()){let v=b(I.mobile.android,w,"android");window.open(v,"_self","noreferrer noopener");}if(lt()){let v=b(I.mobile.ios,w,"ios");window.open(v,"_self","noreferrer noopener");}}},o=()=>{let{wcSignClients:w}=g.getState();if(!w.get(t))throw new Error("walletConnect.signClient is not defined");w.delete(t),g.setState({wcSignClients:w}),p.setState({_reconnect:!1,_reconnectConnector:null,recentChainIds:null});},n=w=>l(void 0,null,function*(){let{wcSignClients:I}=g.getState(),b=I.get(t);if(!b)throw new Error("walletConnect.signClient is not defined");if(!w)throw new Error("No wallet connect session");yield b.disconnect({topic:w,reason:getSdkError("USER_DISCONNECTED")}),yield c(b);}),a=w=>{try{let{wcSignClients:I}=g.getState(),b=I.get(t);if(!b)throw new Error("walletConnect.signClient is not defined");let v=b.session.getAll(),K=v.at(-1);if(!K)return;if(!(K.expiry*1e3>Date.now()+1e3))throw n(K.topic),new Error("invalid session");try{let N=v.find(j=>{var X,Y;return (Y=(X=j.requiredNamespaces.cosmos)==null?void 0:X.chains)==null?void 0:Y.includes(`cosmos:${w}`)});if(!N)throw new Error("no session");return N}catch(N){if(!N.message.toLowerCase().includes("no matching key"))throw N}return K}catch(I){if(!I.message.toLowerCase().includes("no matching key"))throw I}},s=w=>{try{return a(w)}catch(I){return}},c=w=>l(void 0,null,function*(){try{let I=w.core.pairing.pairings.getAll({active:!1});if(!I.length)return;yield Promise.all(I.map(b=>l(void 0,null,function*(){yield w.core.pairing.pairings.delete(b.topic,{code:7001,message:"clear pairing"});})));}catch(I){if(!I.message.toLowerCase().includes("no matching key"))throw I}}),m=()=>l(void 0,null,function*(){let{walletConnect:w}=p.getState();if(!(w!=null&&w.options))throw new Error("walletConnect.options is not defined");let{wcSignClients:I}=g.getState(),b=I.get(t);if(b)return b;let v=yield SignClient.init(w.options);return I.set(t,v),g.setState({wcSignClients:I}),v}),h=w=>{let{wcSignClients:I}=g.getState(),b=I.get(t);if(!b)return ()=>{};let v=K=>{let W=g.getState().accounts;if(K.params.event.name==="accountsChanged"&&W&&!Object.values(W).map(N=>N.bech32Address).includes(K.params.event.data[0])){let N=K.params.chainId.split(":")[1];N&&d([N]);}else w();};return b.events.on("session_delete",o),b.events.on("session_expire",o),b.events.on("session_event",v),()=>{b.events.off("session_delete",o),b.events.off("session_expire",o),b.events.off("session_event",v);}},d=w=>l(void 0,null,function*(){var Y;let I=typeof w=="string"?[w]:w,{wcSignClients:b,activeChainIds:v}=g.getState(),K=b.get(t);if(!K)throw new Error("enable walletConnect.signClient is not defined");let{walletConnect:W,chains:N}=p.getState();if(!((Y=W==null?void 0:W.options)!=null&&Y.projectId))throw new Error("walletConnect.options.projectId is not defined");let j=new WalletConnectModal(P({projectId:W.options.projectId,enableExplorer:!1,explorerRecommendedWalletIds:"NONE"},W.walletConnectModal)),X=s(I);if(!X){let{uri:q,approval:se}=yield ke(K.connect({requiredNamespaces:{cosmos:{methods:["cosmos_getAccounts","cosmos_signAmino","cosmos_signDirect"],chains:I.map(V=>`cosmos:${V}`),events:["chainChanged","accountsChanged"]}}}),15e3,new Error("Connection timeout"));if(!q)throw new Error("No wallet connect uri");e?r(q):yield j.openModal({uri:q});let ae=V=>l(void 0,null,function*(){return V.aborted?Promise.reject(new Error("User closed wallet connect")):new Promise((xe,ne)=>{se().then(Fe=>{let qe=Fe.sessionProperties;if(!qe)return ne(new Error("No session properties"));let Me=JSON.parse(String(qe.keys));if(Me.length===0)return ne(new Error("No accounts"));if(!Me[0])return ne(new Error("No accounts"));let Ge={};return Me.forEach(H=>{Ge[H.chainId]={address:H.address,algo:H.algo,bech32Address:H.bech32Address,isNanoLedger:H.isNanoLedger,isKeystone:H.isKeystone,name:H.name,pubKey:H.pubKey};}),g.setState(H=>({accounts:P(P({},H.accounts||{}),Ge)})),xe(Fe)}).catch(ne),V.addEventListener("abort",()=>{ne(new Error("User closed wallet connect"));},{once:!0});})});try{let V=new AbortController,xe=V.signal;j.subscribeModal(ne=>{ne.open||V.abort();}),yield ae(xe);}catch(V){if(j.closeModal(),!V.message.toLowerCase().includes("no matching key"))return Promise.reject(V)}return e||j.closeModal(),Promise.resolve()}try{yield ke((()=>l(void 0,null,function*(){var se;let q=Object.fromEntries(yield Promise.all((se=v||I)==null?void 0:se.map(ae=>l(void 0,null,function*(){return [ae,yield E(ae)]}))));g.setState({accounts:q});}))(),15e3,new Error("Connection timeout"));}catch(q){if(n(X.topic),!q.message.toLowerCase().includes("no matching key"))throw q}}),f=w=>l(void 0,null,function*(){let I=yield E(w);return {address:I.bech32Address,algo:I.algo,pubkey:I.pubKey}}),E=w=>l(void 0,null,function*(){let I=a([w]);if(!(I!=null&&I.topic))throw new Error("No wallet connect session");let b=I.sessionProperties&&JSON.parse(String(I.sessionProperties.keys));if(!b)throw new Error("No wallet connect key");if(b.length===0)throw new Error("No wallet connect session");let v=b.find(K=>K.chainId===w);if(!v)throw new Error(`No wallet connect key for chainId ${w}`);return $(P({},v),{pubKey:Buffer.from(String(v.pubKey),i)})}),S=(...w)=>l(void 0,null,function*(){var Y,q;let[I,b,v]=w,{accounts:K,wcSignClients:W}=g.getState(),N=W.get(t);if(!N)throw new Error("walletConnect.signClient is not defined");if(!K)throw new Error("account is not defined");let j=(Y=a([I]))==null?void 0:Y.topic;if(!j)throw new Error("No wallet connect session");if(!v.bodyBytes)throw new Error("No bodyBytes");if(!v.authInfoBytes)throw new Error("No authInfoBytes");return r(),yield N.request({topic:j,chainId:`cosmos:${I}`,request:{method:"cosmos_signDirect",params:{signerAddress:b,signDoc:{chainId:v.chainId,accountNumber:(q=v.accountNumber)==null?void 0:q.toString(),bodyBytes:v.bodyBytes?Buffer.from(v.bodyBytes).toString(i):null,authInfoBytes:v.authInfoBytes?Buffer.from(v.authInfoBytes).toString(i):null}}}})}),A=(...w)=>l(void 0,null,function*(){var N;let[I,b,v]=w,{signature:K,signed:W}=yield S(I,b,v);return {signed:{chainId:(N=W.chainId)!=null?N:"",accountNumber:W.accountNumber?ut.fromString(W.accountNumber):new ut(0),authInfoBytes:W.authInfoBytes?new Uint8Array(Buffer.from(W.authInfoBytes,i)):new Uint8Array([]),bodyBytes:W.bodyBytes?new Uint8Array(Buffer.from(W.bodyBytes,i)):new Uint8Array([])},signature:K}}),T=(...w)=>l(void 0,null,function*(){var q;let[I,b,v,K]=w,{wcSignClients:W}=g.getState(),N=W.get(t),{accounts:j}=g.getState();if(!N)throw new Error("walletConnect.signClient is not defined");if(!j)throw new Error("account is not defined");let X=(q=a([I]))==null?void 0:q.topic;if(!X)throw new Error("No wallet connect session");return r(),yield N.request({topic:X,chainId:`cosmos:${I}`,request:{method:"cosmos_signDirect",params:{signerAddress:b,signDoc:v}}})}),O=(...w)=>l(void 0,null,function*(){let[I,b,v,K]=w;return yield T(I,b,v)}),u=w=>({getAccounts:()=>l(void 0,null,function*(){return [yield f(w)]}),signDirect:(I,b)=>A(w,I,b)}),y=w=>({getAccounts:()=>l(void 0,null,function*(){return [yield f(w)]}),signAmino:(I,b)=>O(w,I,b)});return {enable:d,disable:w=>l(void 0,null,function*(){var v;let{wcSignClients:I}=g.getState(),b=I.get(t);if(w===void 0){let K=b==null?void 0:b.session.getAll();K!==void 0&&(yield Promise.all(K.map(W=>n(W.topic))));}else typeof w=="string"?yield n((v=a([w]))==null?void 0:v.topic):yield Promise.all(w.map(K=>{var W;return n((W=a([K]))==null?void 0:W.topic)}));(b==null?void 0:b.session.getAll().length)===0&&o();}),experimentalSuggestChain:(...w)=>l(void 0,null,function*(){yield Promise.reject(new Error("WalletConnect does not support experimentalSuggestChain"));}),getKey:E,getOfflineSigner:w=>({getAccounts:()=>l(void 0,null,function*(){return [yield f(w)]}),signDirect:(I,b)=>A(w,I,b),signAmino:(I,b)=>O(w,I,b)}),getOfflineSignerAuto:w=>l(void 0,null,function*(){return (yield E(w)).isNanoLedger?y(w):u(w)}),getOfflineSignerOnlyAmino:y,signAmino:O,signDirect:A,subscription:h,init:m}};var pt=()=>{var t,i,r;if(!((r=(i=(t=p.getState().walletConnect)==null?void 0:t.options)==null?void 0:i.projectId)!=null&&r.trim()))throw new Error("walletConnect.options.projectId is not defined");if(!z())throw new Error("WalletConnect Clot mobile is only supported in mobile");let e={encoding:"base64",appUrl:{mobile:{android:"clot://",ios:"clot://"}},walletType:"wc_clot_mobile",formatNativeUrl:(o,n,a)=>{let s=o.replaceAll("/","").replaceAll(":",""),c=n&&encodeURIComponent(n);switch(a){case"ios":return c?`${s}://wcV2?${c}`:`${s}://wcV2`;default:return c?`${s}://wc?uri=${c}`:`${s}://wc`}}};return Q(e)};var mt=()=>{var t,i,r;if(!((r=(i=(t=p.getState().walletConnect)==null?void 0:t.options)==null?void 0:i.projectId)!=null&&r.trim()))throw new Error("walletConnect.options.projectId is not defined");if(!z())throw new Error("WalletConnect Cosmostation mobile is only supported in mobile");let e={encoding:"hex",appUrl:{mobile:{ios:"cosmostation://",android:"cosmostation://"}},walletType:"wc_cosmostation_mobile",formatNativeUrl:(o,n,a)=>{let s=o.replaceAll("/","").replaceAll(":","");return n?`${s}://wc?${n}`:`${s}://wc`}};return Q(e)};var dt=()=>{var t,i,r;if(!((r=(i=(t=p.getState().walletConnect)==null?void 0:t.options)==null?void 0:i.projectId)!=null&&r.trim()))throw new Error("walletConnect.options.projectId is not defined");if(!z())throw new Error("WalletConnect Keplr mobile is only supported in mobile");let e={encoding:"base64",appUrl:{mobile:{ios:"keplrwallet://",android:"intent://"}},walletType:"wc_keplr_mobile",formatNativeUrl:(o,n,a)=>{let s=o.replaceAll("/","").replaceAll(":",""),c=n&&encodeURIComponent(n);switch(a){case"ios":return c?`${s}://wcV2?${c}`:`${s}://wcV2`;case"android":return c?`${s}://wcV2?${c}#Intent;package=com.chainapsis.keplr;scheme=keplrwallet;end;`:`${s}://wcV2#Intent;package=com.chainapsis.keplr;scheme=keplrwallet;end;`;default:return c?`${s}://wc?uri=${c}`:`${s}://wc`}}};return Q(e)};var ft=()=>{var t,i,r;if(!((r=(i=(t=p.getState().walletConnect)==null?void 0:t.options)==null?void 0:i.projectId)!=null&&r.trim()))throw new Error("walletConnect.options.projectId is not defined");if(!z())throw new Error("WalletConnect Leap mobile is only supported in mobile");let e={encoding:"base64",appUrl:{mobile:{ios:"leapcosmos://",android:"intent://"}},walletType:"wc_leap_mobile",formatNativeUrl:(o,n,a)=>{let s=o.replaceAll("/","").replaceAll(":",""),c=n&&encodeURIComponent(n);switch(a){case"ios":return c?`${s}://wcV2?${c}`:`${s}://wcV2`;case"android":return c?`${s}://wcV2?${c}#Intent;package=io.leapwallet.cosmos;scheme=leapwallet;end;`:`${s}://wcV2#Intent;package=io.leapwallet.cosmos;scheme=leapwallet;end;`;default:return c?`${s}://wc?uri=${c}`:`${s}://wc`}}};return Q(e)};var Ce=()=>{var e;if(typeof((e=window.xfi)==null?void 0:e.keplr)!="undefined"){let t=window.xfi.keplr;return Object.assign(t,{subscription:o=>{let n=()=>{B(),o();};return window.addEventListener("keplr_keystorechange",n),()=>{window.removeEventListener("keplr_keystorechange",n);}}})}throw p.getState()._notFoundFn(),new Error("window.xfi.keplr is not defined")};var L=(e=p.getState().walletType)=>{try{return _(e),!0}catch(t){return !1}},B=()=>{window.sessionStorage.removeItem(J),g.setState(ie);},_=(e=p.getState().walletType)=>{var r;let t=(()=>{switch(e){case"keplr":return me();case"leap":return de();case"cosmostation":return pe();case"vectis":return Se();case"walletconnect":return Q();case"wc_keplr_mobile":return dt();case"wc_leap_mobile":return ft();case"wc_cosmostation_mobile":return mt();case"wc_clot_mobile":return pt();case"metamask_snap_leap":return at();case"metamask_snap_cosmos":return it();case"station":return ye();case"xdefi":return Ce();case"capsule":return ce();case"cosmiframe":return ue();case"compass":return le();case"initia":return rt();case"okx":return ge();default:throw new Error("Unknown wallet type")}})(),i=p.getState().walletDefaultOptions;return i&&((r=t.setDefaultOptions)==null||r.call(t,i)),t},or=()=>Object.fromEntries(Ve.map(e=>[e,L(e)])),ve=e=>e==="capsule",gt=e=>e==="metamask_snap_leap",yt=()=>!!(navigator!=null&&navigator.userAgent)&&/LeapCosmos/i.test(navigator.userAgent),Pe=e=>e==="walletconnect"||e==="wc_keplr_mobile"||e==="wc_leap_mobile"||e==="wc_cosmostation_mobile";var Z=e=>l(void 0,null,function*(){var t;try{let{recentChainIds:a,chains:s,walletType:c}=p.getState(),m=(e==null?void 0:e.walletType)||c;if(!L(m))throw new Error(`${m} is not available`);let d=_(m),f=typeof(e==null?void 0:e.chainId)=="string"?[e.chainId]:(e==null?void 0:e.chainId)||a;if(!f)throw new Error("No last known connected chain, connect action requires chain ids");let E=s==null?void 0:s.map(O=>O.chainId);f.forEach(O=>{if(!(E!=null&&E.includes(O)))throw new Error(`Chain ${O} is not provided in GrazProvider`)}),g.setState(O=>{let u=p.getState()._reconnect||!!p.getState()._reconnectConnector||!!f;return O.activeChainIds&&f.filter(C=>{var k;return !((k=O.activeChainIds)!=null&&k.includes(C))}).length>0?{status:"connecting"}:u?{status:"reconnecting"}:{status:"connecting"}});let{accounts:S}=g.getState();if(yield (t=d.init)==null?void 0:t.call(d),ve(m)&&g.getState().capsuleClient&&Object.values(g.getState().accounts||[]).length>0){let O=f.map(C=>s.find(k=>k.chainId===C)),u=g.getState().accounts;g.setState({status:"connecting"});let y=Object.fromEntries(yield Promise.all(f.map(C=>l(void 0,null,function*(){return [C,yield d.getKey(C)]}))));return g.setState(C=>({accounts:P(P({},C.accounts||{}),y)})),p.setState(C=>({recentChainIds:[...C.recentChainIds||[],...f].filter((k,R,D)=>D.indexOf(k)===R)})),g.setState(C=>({activeChainIds:[...C.activeChainIds||[],...f].filter((k,R,D)=>D.indexOf(k)===R)})),g.setState({status:"connected"}),{accounts:u,walletType:m,chains:O}}if(yield d.enable(f),ve(m)){let O=f.map(y=>s.find(C=>C.chainId===y)),u=g.getState().accounts;return g.setState({status:"connecting"}),{accounts:u,walletType:m,chains:O}}if(!Pe(m)){let O={};if(gt(m)){let u={};try{for(var i=je(f),r,o,n;r=!(o=yield i.next()).done;r=!1){let y=o.value;u[y]=yield d.getKey(y);}}catch(o){n=[o];}finally{try{r&&(o=i.return)&&(yield o.call(i));}finally{if(n)throw n[0]}}O=u;}else if(yt()&&d.getKeys){let u=yield d.getKeys(f);f.forEach((y,C)=>{let k=u[C];k&&(O[y]=k);});}else O=Object.fromEntries(yield Promise.all(f.map(u=>l(void 0,null,function*(){return [u,yield d.getKey(u)]}))));g.setState(u=>({accounts:P(P({},u.accounts||{}),O)}));}p.setState(O=>({recentChainIds:[...O.recentChainIds||[],...f].filter((u,y,C)=>C.indexOf(u)===y)})),g.setState(O=>({activeChainIds:[...O.activeChainIds||[],...f].filter((u,y,C)=>C.indexOf(u)===y)})),p.setState({walletType:m,_reconnect:!!(e!=null&&e.autoReconnect),_reconnectConnector:m}),g.setState({status:"connected"}),typeof window!="undefined"&&window.sessionStorage.setItem(J,"Active");let A=f.map(O=>s.find(u=>u.chainId===O));return {accounts:g.getState().accounts,walletType:m,chains:A}}catch(a){throw console.error("connect ",a),g.getState().accounts===null&&g.setState({status:"disconnected"}),g.getState().accounts&&g.getState().activeChainIds&&g.setState({status:"connected"}),a}}),re=e=>{typeof window!="undefined"&&window.sessionStorage.removeItem(J);let t=typeof(e==null?void 0:e.chainId)=="string"?[e.chainId]:e==null?void 0:e.chainId;if(t){let i=g.getState().accounts;t.forEach(o=>{i==null||delete i[o];}),Object.values(i||{}).length===0?(g.setState(ie),p.setState({_reconnect:!1,_reconnectConnector:null,recentChainIds:null})):(g.setState(o=>{var n;return {activeChainIds:(n=o.activeChainIds)==null?void 0:n.filter(a=>!t.includes(a)),accounts:i}}),p.setState(o=>{var n;return {recentChainIds:(n=o.recentChainIds)==null?void 0:n.filter(a=>!t.includes(a))}}));}else g.setState(ie),p.setState({_reconnect:!1,_reconnectConnector:null,recentChainIds:null});return Promise.resolve()},U=e=>l(void 0,null,function*(){var o;let{recentChainIds:t,_reconnectConnector:i,_reconnect:r}=p.getState();try{let n=L(i||void 0);if(t&&n&&i)return Pe(i)?void 0:yield Z({chainId:t,walletType:i,autoReconnect:r})}catch(n){(o=e==null?void 0:e.onError)==null||o.call(e,n),re();}}),St=e=>l(void 0,null,function*(){if(!(e!=null&&e.chainId))throw new Error("chainId is required");let{walletType:t}=p.getState(),i=e.walletType||t;if(!L(i))throw new Error(`${i} is not available`);let o=_(i),n=o.getOfflineSigner(e.chainId),a=o.getOfflineSignerOnlyAmino(e.chainId),s=yield o.getOfflineSignerAuto(e.chainId);return {offlineSigner:n,offlineSignerAmino:a,offlineSignerAuto:s}});var We=()=>{p.setState({recentChainIds:null});},yr=()=>p.getState().recentChainIds,Sr=()=>{var i;let{recentChainIds:e,chains:t}=p.getState();return (i=e==null?void 0:e.map(r=>t.find(o=>o.chainId===r)))!=null?i:null},Cr=({chainId:e})=>{var t;return (t=p.getState().chains)==null?void 0:t.find(i=>i.chainId===e)},hr=({chainId:e})=>{var t;return (t=p.getState().chains)==null?void 0:t.filter(i=>e==null?void 0:e.includes(i.chainId))},Re=i=>l(void 0,[i],function*({chainInfo:e,walletType:t}){let r=_(t);return t==="capsule"?yield Z({chainId:e.chainId,walletType:t}):yield r.experimentalSuggestChain(e),e}),Ct=e=>l(void 0,null,function*(){var r;let t=p.getState().walletType;return yield Re({chainInfo:e.chainInfo,walletType:(r=e.walletType)!=null?r:t}),yield Z({chainId:e.chainInfo.chainId,walletType:e.walletType,autoReconnect:e.autoReconnect})});var ht=e=>(p.setState(t=>({iframeOptions:e.iframeOptions||t.iframeOptions,walletConnect:e.walletConnect||t.walletConnect,walletType:e.defaultWallet||t.walletType,capsuleConfig:e.capsuleConfig||t.capsuleConfig,walletDefaultOptions:e.walletDefaultOptions||t.walletDefaultOptions,chains:e.chains,chainsConfig:e.chainsConfig||t.chainsConfig,multiChainFetchConcurrency:e.multiChainFetchConcurrency||t.multiChainFetchConcurrency,_notFoundFn:e.onNotFound||t._notFoundFn,_onReconnectFailed:e.onReconnectFailed||t._onReconnectFailed,_reconnect:e.autoReconnect===void 0?!0:e.autoReconnect||t._reconnect})),e);var wt=a=>l(void 0,[a],function*({signingClient:e,senderAddress:t,recipientAddress:i,amount:r,fee:o,memo:n}){if(!e)throw new Error("No connected account detected");if(!t)throw new Error("senderAddress is not defined");return e.sendTokens(t,i,r,o,n)}),At=h=>l(void 0,[h],function*({signingClient:e,senderAddress:t,recipientAddress:i,transferAmount:r,sourcePort:o,sourceChannel:n,timeoutHeight:a,timeoutTimestamp:s,fee:c,memo:m}){if(!e)throw new Error("Stargate signing client is not ready");if(!t)throw new Error("senderAddress is not defined");return e.sendIbcTokens(t,i,r,o,n,a,s,c,m)}),It=s=>l(void 0,[s],function*({signingClient:e,senderAddress:t,msg:i,fee:r,options:o,label:n,codeId:a}){if(!e)throw new Error("CosmWasm signing client is not ready");return e.instantiate(t,a,i,n,r,o)}),Et=s=>l(void 0,[s],function*({signingClient:e,senderAddress:t,msg:i,fee:r,contractAddress:o,funds:n,memo:a}){if(!e)throw new Error("CosmWasm signing client is not ready");return e.execute(t,o,i,r,a,n)}),Ot=(e,t,i)=>l(void 0,null,function*(){if(!i)throw new Error("CosmWasm client is not ready");return yield i.queryContractSmart(e,t)}),bt=(e,t,i)=>{if(!i)throw new Error("CosmWasm client is not ready");let r=new TextEncoder().encode(t);return i.queryContractRaw(e,r)};var kr=e=>e,vr=e=>e;var he=e=>e?Object.keys(e).length===0:!0;var Ke=class extends Error{constructor(t){super(),this.name="AbortError",this.message=t;}},Tt=e=>globalThis.DOMException===void 0?new Ke(e):new DOMException(e),xt=e=>{let t=e.reason===void 0?Tt("This operation was aborted."):e.reason;return t instanceof Error?t:Tt(t)};function De(n,a){return l(this,arguments,function*(e,t,{concurrency:i=Number.POSITIVE_INFINITY,stopOnError:r=!0,signal:o}={}){return new Promise((s,c)=>{if(e[Symbol.iterator]===void 0&&e[Symbol.asyncIterator]===void 0)throw new TypeError(`Expected \`input\` to be either an \`Iterable\` or \`AsyncIterable\`, got (${typeof e})`);if(typeof t!="function")throw new TypeError("Mapper function is required");if(!((Number.isSafeInteger(i)||i===Number.POSITIVE_INFINITY)&&i>=1))throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${i}\` (${typeof i})`);let m=[],h=[],d=new Map,f=!1,E=!1,S=!1,A=0,T=0,O=e[Symbol.iterator]===void 0?e[Symbol.asyncIterator]():e[Symbol.iterator](),u=C=>{f=!0,E=!0,c(C);};o&&(o.aborted&&u(xt(o)),o.addEventListener("abort",()=>{u(xt(o));}));let y=()=>l(this,null,function*(){if(E)return;let C=yield O.next(),k=T;if(T++,C.done){if(S=!0,A===0&&!E){if(!r&&h.length>0){u(new AggregateError(h));return}if(E=!0,d.size===0){s(m);return}let R=[];for(let[D,te]of m.entries())d.get(D)!==Mt&&R.push(te);s(R);}return}A++,l(this,null,function*(){try{let R=yield C.value;if(E)return;let D=yield t(R,k);D===Mt&&d.set(k,D),m[k]=D,A--,yield y();}catch(R){if(r)u(R);else {h.push(R),A--;try{yield y();}catch(D){u(D);}}}});});l(this,null,function*(){for(let C=0;C<i;C++){try{yield y();}catch(k){u(k);break}if(S||f)break}});})})}var Mt=Symbol("skip");var F=({chainId:e,multiChain:t})=>{let i=p(o=>o.chains);if(!i)throw new Error("No chains found in GrazProvider");let r=typeof e=="string"?[e]:e;switch(!0){case(!!t&&!!r):return r.map(o=>i.find(n=>n.chainId===o)).filter(Boolean);case(!t&&!!r):return [r.map(o=>i.find(n=>n.chainId===o)).filter(Boolean)[0]];case(!!t&&!r):return i;default:return [i[0]]}},G=(e,t,i)=>l(void 0,null,function*(){let r=p.getState().multiChainFetchConcurrency;if(e){let n=yield De(t,i,{concurrency:r});return Object.fromEntries(n.map((a,s)=>[t[s].chainId,a]))}return yield i(t[0])}),kt=(e,t,i)=>{if(e){let o=t.map(i);return Object.fromEntries(o.map((n,a)=>[t[a].chainId,n]))}return i(t[0])};var Be=e=>{let t=F({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),i=useMemo(()=>["USE_STARGATE_CLIENT",t],[t]);return useQuery({queryKey:i,queryFn:o=>l(void 0,[o],function*({queryKey:[,r]}){if(r.length<1)throw new Error("No chains found");return yield G(!!(e!=null&&e.multiChain),r,a=>l(void 0,null,function*(){var h;let s=(h=p.getState().chainsConfig)==null?void 0:h[a.chainId],c={url:a.rpc,headers:P({},(s==null?void 0:s.rpcHeaders)||{})};return yield StargateClient.connect(c)}))}),enabled:!!t&&t.length>0&&((e==null?void 0:e.enabled)!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})},Le=e=>{let t=F({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),i=useMemo(()=>["USE_COSMWASM_CLIENT",t],[t]);return useQuery({queryKey:i,queryFn:o=>l(void 0,[o],function*({queryKey:[,r]}){if(r.length<1)throw new Error("No chains found");return yield G(!!(e!=null&&e.multiChain),r,a=>l(void 0,null,function*(){var h;let s=(h=p.getState().chainsConfig)==null?void 0:h[a.chainId],c={url:a.rpc,headers:P({},(s==null?void 0:s.rpcHeaders)||{})};return yield CosmWasmClient.connect(c)}))}),enabled:!!t&&t.length>0&&((e==null?void 0:e.enabled)!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})},we=({type:e,chainId:t,multiChain:i,enabled:r})=>{let o=F({chainId:t,multiChain:i}),n=useMemo(()=>["USE_TENDERMINT_CLIENT",e,o],[e,o]);return useQuery({queryKey:n,queryFn:c=>l(void 0,[c],function*({queryKey:[,a,s]}){if(s.length<1)throw new Error("No chains found");return yield G(!!i,s,h=>l(void 0,null,function*(){var A;let d=(A=p.getState().chainsConfig)==null?void 0:A[h.chainId],f={url:h.rpc,headers:P({},(d==null?void 0:d.rpcHeaders)||{})};return yield (a==="tm37"?Tendermint37Client:Tendermint34Client).connect(f)}))}),enabled:!!o&&o.length>0&&(r!==void 0?!!r:!0),refetchOnWindowFocus:!1})};var is=()=>p(e=>({walletType:e.walletType,isCosmostation:e.walletType==="cosmostation",isCosmostationMobile:e.walletType==="wc_cosmostation_mobile",isKeplr:e.walletType==="keplr",isKeplrMobile:e.walletType==="wc_keplr_mobile",isLeap:e.walletType==="leap",isLeapMobile:e.walletType==="wc_leap_mobile",isVectis:e.walletType==="vectis",isWalletConnect:e.walletType==="walletconnect",isMetamaskSnapLeap:e.walletType==="metamask_snap_leap",isStation:e.walletType==="station",isCapsule:e.walletType==="capsule",isCosmiframe:e.walletType==="cosmiframe"}),shallow),Ae=e=>{let i=["USE_CHECK_WALLET",p(o=>e||o.walletType)];return useQuery({queryKey:i,queryFn:({queryKey:[,o]})=>L(o)})};var ee=e=>{let t=p(s=>s.walletType),i=g(s=>s.activeChainIds),r=F({chainId:e!=null&&e.chainId?e.chainId:i||void 0,multiChain:e==null?void 0:e.multiChain}),o=g(s=>s.accounts),n=g(s=>s.status);return useEffect(()=>g.subscribe(s=>s.status,(s,c)=>{var m,h,d;if(s==="connected"){let{accounts:f,activeChainIds:E}=g.getState(),{chains:S}=p.getState(),{walletType:A}=p.getState();if(!f||!E||!S)return (m=e==null?void 0:e.onDisconnect)==null?void 0:m.call(e);(h=e==null?void 0:e.onConnect)==null||h.call(e,{accounts:f,chains:E.map(T=>S.find(O=>O.chainId===T)),walletType:A,isReconnect:c==="reconnecting"});}s==="disconnected"&&((d=e==null?void 0:e.onDisconnect)==null||d.call(e));}),[e]),{data:useMemo(()=>o?kt(!!(e!=null&&e.multiChain),r,s=>o[s.chainId]):void 0,[o,r,e==null?void 0:e.multiChain]),isConnected:n==="connected",isConnecting:n==="connecting",isDisconnected:n==="disconnected",isReconnecting:n==="reconnecting",isLoading:n==="connecting"||n==="reconnecting",walletType:n==="connected"?t:void 0,reconnect:U,status:n}},An=e=>{let t=F({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),{data:i}=ee(),r=(e==null?void 0:e.bech32Address)||(i==null?void 0:i.bech32Address),{data:o}=Be({chainId:t.map(a=>a.chainId),multiChain:!0,enabled:((e==null?void 0:e.enabled)===void 0?!0:e.enabled)&&!!r}),n=useMemo(()=>["USE_ALL_BALANCES",o,t,r,e==null?void 0:e.chainId],[r,e==null?void 0:e.chainId,t,o]);return useQuery({queryKey:n,queryFn:m=>l(void 0,[m],function*({queryKey:[,a,s,c]}){if(!c)throw new Error("address is not defined");return yield G(!!(e!=null&&e.multiChain),s,d=>l(void 0,null,function*(){var S;let f=a==null?void 0:a[d.chainId];if(!f)throw new Error(`Client is not ready ${d.chainId}`);if(!((S=d.bech32Config)!=null&&S.bech32PrefixAccAddr))throw new Error(`Bech32Config is missing ${d.chainId}`);return yield f.getAllBalances(toBech32(d.bech32Config.bech32PrefixAccAddr,fromBech32(c).data))}))}),enabled:!!r&&!!t&&t.length>0&&!he(o)&&((e==null?void 0:e.enabled)===void 0?!0:e.enabled),refetchOnMount:!1,refetchOnReconnect:!0,refetchOnWindowFocus:!1})},ys=e=>{let t=F({chainId:e.chainId}),{data:i}=ee({chainId:e.chainId}),r=e.bech32Address||(i==null?void 0:i.bech32Address),{data:o,refetch:n}=An({chainId:t.map(c=>c.chainId),bech32Address:r,enabled:!!r&&(e.enabled===void 0?!0:e.enabled)}),a=["USE_BALANCE",e.denom,o,t,r,e.chainId],s=useQuery({queryKey:a,queryFn:({queryKey:[,c,m]})=>m==null?void 0:m.find(h=>h.denom===c),enabled:!!e.denom&&!!o&&!!(o!=null&&o.length)&&(e.enabled===void 0?!0:e.enabled)});return $(P({},s),{refetch:c=>l(void 0,null,function*(){return yield n(),s.refetch(c)})})},Ss=({onError:e,onLoading:t,onSuccess:i}={})=>{let o=useMutation({mutationKey:["USE_CONNECT",e,t,i],mutationFn:Z,onError:(a,s)=>e==null?void 0:e(a,s),onMutate:t,onSuccess:a=>Promise.resolve(i==null?void 0:i(a))}),{data:n}=Ae();return {connect:a=>o.mutate(a),connectAsync:a=>o.mutateAsync(a),error:o.error,isLoading:o.isPending,isSuccess:o.isSuccess,isSupported:!!n,status:o.status}},Cs=({onError:e,onLoading:t,onSuccess:i}={})=>{let o=useMutation({mutationKey:["USE_DISCONNECT",e,t,i],mutationFn:re,onError:n=>Promise.resolve(e==null?void 0:e(n,void 0)),onMutate:t,onSuccess:()=>Promise.resolve(i==null?void 0:i(void 0))});return {disconnect:n=>o.mutate(n),disconnectAsync:n=>o.mutateAsync(n),error:o.error,isLoading:o.isPending,isSuccess:o.isSuccess,status:o.status}},hs=e=>{let t=F({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),i=p(o=>o.walletType),r=useMemo(()=>["USE_OFFLINE_SIGNERS",t,i],[t,i]);return useQuery({queryKey:r,queryFn:a=>l(void 0,[a],function*({queryKey:[,o,n]}){if(o.length<1)throw new Error("No chain found");if(!L(n))throw new Error(`${n} is not available`);return yield G(!!(e!=null&&e.multiChain),o,m=>l(void 0,null,function*(){return yield St({chainId:m.chainId,walletType:n})}))}),enabled:!!t&&t.length>0&&!!i,refetchOnWindowFocus:!1})},ws=e=>{let t=F({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),{data:i}=ee(),{data:r}=Be({chainId:t.map(a=>a.chainId),multiChain:!0}),o=(e==null?void 0:e.bech32Address)||(i==null?void 0:i.bech32Address),n=useMemo(()=>["USE_BALANCE_STAKED",r,t,o],[t,o,r]);return useQuery({queryKey:n,queryFn:m=>l(void 0,[m],function*({queryKey:[,a,s,c]}){if(!c)throw new Error("address is not defined");return yield G(!!(e!=null&&e.multiChain),s,d=>l(void 0,null,function*(){var E,S;if(!a)throw new Error("Client is not ready");if(!((E=d.bech32Config)!=null&&E.bech32PrefixAccAddr))throw new Error(`Bech32Config is missing ${d.chainId}`);return yield (S=a[d.chainId])==null?void 0:S.getBalanceStaked(toBech32(d.bech32Config.bech32PrefixAccAddr,fromBech32(c).data))}))}),enabled:!!o&&!!t&&t.length>0&&!!r,refetchOnMount:!1,refetchOnReconnect:!0,refetchOnWindowFocus:!1})};var xs=()=>{let e=p(r=>r.capsuleState),t=g(r=>r.capsuleClient),i=ce();return {setModalState:r=>{p.setState(o=>{var n;return {capsuleState:{showModal:r,chainId:(n=o.capsuleState)==null?void 0:n.chainId}}});},modalState:!!(e!=null&&e.showModal),client:t,onAfterLoginSuccessful:i.onAfterLoginSuccessful,onLoginFailure:()=>{re();}}};var Ks=()=>g(e=>e.activeChainIds),In=()=>{var e;return (e=g(t=>t.activeChainIds))==null?void 0:e.map(t=>{var r;let i=(r=p.getState().chains)==null?void 0:r.find(o=>o.chainId===t);if(i)return i}).filter(Boolean)},Ds=({chainId:e})=>{var t;return (t=p().chains)==null?void 0:t.find(i=>i.chainId===e)},_s=({chainId:e})=>{var t;return (t=p().chains)==null?void 0:t.filter(i=>e==null?void 0:e.includes(i.chainId))},Ns=({denom:e})=>{let t=In();return useQuery({queryKey:["USE_ACTIVE_CHAIN_CURRENCY",e],queryFn:({queryKey:[,o]})=>{var n;return (n=t==null?void 0:t.find(a=>a.currencies.find(s=>s.coinMinimalDenom===o)))==null?void 0:n.currencies.find(a=>a)}})},Bs=e=>{var o;let t=(o=e.status)!=null?o:"BOND_STATUS_BONDED",i=["USE_ACTIVE_CHAIN_VALIDATORS",e.queryClient,t];return useQuery({queryKey:i,queryFn:s=>l(void 0,[s],function*({queryKey:[,n,a]}){if(!n)throw new Error("Query client is not defined");return yield n.staking.validators(a)}),enabled:typeof e.queryClient!="undefined"})},Ls=()=>({data:p(t=>t.recentChainIds),clear:We}),Us=()=>{var t;return {data:(t=p(i=>i.recentChainIds))==null?void 0:t.map(i=>{var o;let r=(o=p.getState().chains)==null?void 0:o.find(n=>n.chainId===i);if(r)return r}).filter(Boolean),clear:We}},Fs=({onError:e,onLoading:t,onSuccess:i}={})=>{let o=useMutation({mutationKey:["USE_SUGGEST_CHAIN",e,t,i],mutationFn:Re,onError:(n,a)=>Promise.resolve(e==null?void 0:e(n,a.chainInfo)),onMutate:n=>t==null?void 0:t(n.chainInfo),onSuccess:n=>Promise.resolve(i==null?void 0:i(n))});return {error:o.error,isLoading:o.isPending,isSuccess:o.isSuccess,suggest:o.mutate,suggestAsync:o.mutateAsync,status:o.status}},qs=({onError:e,onLoading:t,onSuccess:i}={})=>{let o=useMutation({mutationKey:["USE_SUGGEST_CHAIN_AND_CONNECT",e,t,i],mutationFn:Ct,onError:(a,s)=>Promise.resolve(e==null?void 0:e(a,s)),onMutate:a=>t==null?void 0:t(a),onSuccess:a=>Promise.resolve(i==null?void 0:i(a))}),{data:n}=Ae();return {error:o.error,isLoading:o.isPending,isSuccess:o.isSuccess,isSupported:!!n,status:o.status,suggestAndConnect:o.mutate,suggestAndConnectAsync:o.mutateAsync}};var Xs=({onError:e,onLoading:t,onSuccess:i}={})=>{let{data:r}=ee(),o=r==null?void 0:r.bech32Address,n=useMutation({mutationKey:["USE_SEND_TOKENS",e,t,i,o],mutationFn:a=>wt(P({senderAddress:o},a)),onError:(a,s)=>Promise.resolve(e==null?void 0:e(a,s)),onMutate:t,onSuccess:a=>Promise.resolve(i==null?void 0:i(a))});return {error:n.error,isLoading:n.isPending,isSuccess:n.isSuccess,sendTokens:n.mutate,sendTokensAsync:n.mutateAsync,status:n.status}},Ys=({onError:e,onLoading:t,onSuccess:i}={})=>{let{data:r}=ee(),o=r==null?void 0:r.bech32Address,n=useMutation({mutationKey:["USE_SEND_IBC_TOKENS",e,t,i,o],mutationFn:a=>At(P({senderAddress:o},a)),onError:(a,s)=>Promise.resolve(e==null?void 0:e(a,s)),onMutate:t,onSuccess:a=>Promise.resolve(i==null?void 0:i(a))});return {error:n.error,isLoading:n.isPending,isSuccess:n.isSuccess,sendIbcTokens:n.mutate,sendIbcTokensAsync:n.mutateAsync,status:n.status}},Js=({codeId:e,onError:t,onLoading:i,onSuccess:r})=>{let{data:o}=ee(),n=o==null?void 0:o.bech32Address,s=useMutation({mutationKey:["USE_INSTANTIATE_CONTRACT",t,i,r,e,n],mutationFn:c=>{var h;if(!n)throw new Error("senderAddress is undefined");let m=$(P({},c),{fee:(h=c.fee)!=null?h:"auto",senderAddress:n,codeId:e});return It(m)},onError:(c,m)=>Promise.resolve(t==null?void 0:t(c,m)),onMutate:i,onSuccess:c=>Promise.resolve(r==null?void 0:r(c))});return {error:s.error,isLoading:s.isPending,isSuccess:s.isSuccess,instantiateContract:s.mutate,instantiateContractAsync:s.mutateAsync,status:s.status}},Zs=({contractAddress:e,onError:t,onLoading:i,onSuccess:r})=>{let{data:o}=ee(),n=o==null?void 0:o.bech32Address,s=useMutation({mutationKey:["USE_EXECUTE_CONTRACT",t,i,r,e,n],mutationFn:c=>{var h,d,f;if(!n)throw new Error("senderAddress is undefined");let m=$(P({},c),{fee:(h=c.fee)!=null?h:"auto",senderAddress:n,contractAddress:e,memo:(d=c.memo)!=null?d:"",funds:(f=c.funds)!=null?f:[]});return Et(m)},onError:(c,m)=>Promise.resolve(t==null?void 0:t(c,m)),onMutate:i,onSuccess:c=>Promise.resolve(r==null?void 0:r(c))});return {error:s.error,isLoading:s.isPending,isSuccess:s.isSuccess,executeContract:s.mutate,executeContractAsync:s.mutateAsync,status:s.status}},ea=e=>{let{data:t}=Le();return useQuery({queryKey:["USE_QUERY_SMART",e==null?void 0:e.address,e==null?void 0:e.queryMsg,t],queryFn:({queryKey:[,r]})=>{if(!(e!=null&&e.address)||!e.queryMsg)throw new Error("address or queryMsg undefined");return Ot(e.address,e.queryMsg,t)},enabled:!!(e!=null&&e.address)&&!!(e!=null&&e.queryMsg)&&!!t})},ta=e=>{let{data:t}=Le(),i=["USE_QUERY_RAW",e==null?void 0:e.key,e==null?void 0:e.address,t];return useQuery({queryKey:i,queryFn:({queryKey:[,o]})=>{if(!(e!=null&&e.address)||!e.key)throw new Error("address or key undefined");return bt(e.address,e.key,t)},enabled:!!(e!=null&&e.address)&&!!(e!=null&&e.key)&&!!t})};function fa(e){let t=F({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),i=p(n=>n.walletType),r=g(n=>n.activeChainIds),o=useMemo(()=>["USE_STARGATE_SIGNING_CLIENT",t,i,e,r],[r,e,t,i]);return useQuery({queryKey:o,queryFn:s=>l(this,[s],function*({queryKey:[,n,a]}){if(n.length<1)throw new Error("No chains found");return yield G(!!(e!=null&&e.multiChain),n,m=>l(this,null,function*(){var A,T;if(!(r!=null&&r.includes(m.chainId)))return null;if(!L(a))throw new Error(`${a} is not available`);let d=yield (()=>l(this,null,function*(){switch(e==null?void 0:e.offlineSigner){case"offlineSigner":return _(a).getOfflineSigner(m.chainId);case"offlineSignerAuto":return _(a).getOfflineSignerAuto(m.chainId);case"offlineSignerOnlyAmino":return _(a).getOfflineSignerOnlyAmino(m.chainId);default:return _(a).getOfflineSignerAuto(m.chainId)}}))(),f=(A=p.getState().chainsConfig)==null?void 0:A[m.chainId],E={url:m.rpc,headers:P({},(f==null?void 0:f.rpcHeaders)||{})};return (e==null?void 0:e.multiChain)===!0&&e.opts,yield SigningStargateClient.connectWithSigner(E,d,e!=null&&e.multiChain?(T=e.opts)==null?void 0:T[m.chainId]:e==null?void 0:e.opts)}))}),enabled:!!t&&t.length>0&&!!i&&((e==null?void 0:e.enabled)!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}function ga(e){let t=F({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),i=p(n=>n.walletType),r=g(n=>n.activeChainIds),o=useMemo(()=>["USE_COSMWASM_SIGNING_CLIENT",t,i,e,r],[r,e,t,i]);return useQuery({queryKey:o,queryFn:s=>l(this,[s],function*({queryKey:[,n,a]}){if(n.length<1)throw new Error("No chains found");return yield G(!!(e!=null&&e.multiChain),n,m=>l(this,null,function*(){var T,O;if(!(r!=null&&r.includes(m.chainId)))return null;if(!L(a))throw new Error(`${a} is not available`);let d=yield (()=>l(this,null,function*(){switch(e==null?void 0:e.offlineSigner){case"offlineSigner":return _(a).getOfflineSigner(m.chainId);case"offlineSignerAuto":return _(a).getOfflineSignerAuto(m.chainId);case"offlineSignerOnlyAmino":return _(a).getOfflineSignerOnlyAmino(m.chainId);default:return _(a).getOfflineSignerAuto(m.chainId)}}))(),f=(T=p.getState().chainsConfig)==null?void 0:T[m.chainId],E={url:m.rpc,headers:P({},(f==null?void 0:f.rpcHeaders)||{})},S=f!=null&&f.gas?GasPrice.fromString(`${f.gas.price}${f.gas.denom}`):void 0;return yield SigningCosmWasmClient.connectWithSigner(E,d,P({gasPrice:S},e!=null&&e.multiChain?(O=e.opts)==null?void 0:O[m.chainId]:(e==null?void 0:e.opts)||{}))}))}),enabled:!!t&&t.length>0&&!!i&&((e==null?void 0:e.enabled)!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}function ya(e){let t=F({chainId:e.chainId,multiChain:e.multiChain}),i=p(a=>a.walletType),r=g(a=>a.activeChainIds),o=useMemo(()=>["USE_STARGATE_TM_SIGNING_CLIENT",t,i,e,r],[r,e,t,i]),{data:n}=we({type:e.type,chainId:e.chainId,multiChain:e.multiChain});return useQuery({queryKey:o,queryFn:c=>l(this,[c],function*({queryKey:[,a,s]}){if(a.length<1)throw new Error("No chains found");return yield G(!!e.multiChain,a,h=>l(this,null,function*(){var A;if(!(r!=null&&r.includes(h.chainId)))return null;if(!L(s))throw new Error(`${s} is not available`);if(!n)throw new Error("No tendermint client found");let f=yield (()=>l(this,null,function*(){switch(e.offlineSigner){case"offlineSigner":return _(s).getOfflineSigner(h.chainId);case"offlineSignerAuto":return _(s).getOfflineSignerAuto(h.chainId);case"offlineSignerOnlyAmino":return _(s).getOfflineSignerOnlyAmino(h.chainId);default:return _(s).getOfflineSignerAuto(h.chainId)}}))(),E=e.multiChain?n[h.chainId]:n;return yield SigningStargateClient.createWithSigner(E,f,e.multiChain?(A=e.opts)==null?void 0:A[h.chainId]:e.opts)}))}),enabled:!!t&&t.length>0&&!!i&&!!n&&(e.enabled!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}function Sa(e){let t=F({chainId:e.chainId,multiChain:e.multiChain}),i=p(s=>s.walletType),r=g(s=>s.activeChainIds),o=useMemo(()=>["USE_COSMWASM_TM_SIGNING_CLIENT",t,i,e,r],[r,e,t,i]),{data:n}=we({type:e.type,chainId:e.chainId,multiChain:!1,enabled:!e.multiChain}),{data:a}=we({type:e.type,chainId:e.chainId,multiChain:!0,enabled:!!e.multiChain});return useQuery({queryKey:o,queryFn:m=>l(this,[m],function*({queryKey:[,s,c]}){if(s.length<1)throw new Error("No chains found");return yield G(!!e.multiChain,s,d=>l(this,null,function*(){var u,y;if(!(r!=null&&r.includes(d.chainId)))return null;if(!L(c))throw new Error(`${c} is not available`);let E=yield (()=>l(this,null,function*(){switch(e.offlineSigner){case"offlineSigner":return _(c).getOfflineSigner(d.chainId);case"offlineSignerAuto":return _(c).getOfflineSignerAuto(d.chainId);case"offlineSignerOnlyAmino":return _(c).getOfflineSignerOnlyAmino(d.chainId);default:return _(c).getOfflineSignerAuto(d.chainId)}}))(),S=(u=p.getState().chainsConfig)==null?void 0:u[d.chainId],A=S!=null&&S.gas?GasPrice.fromString(`${S.gas.price}${S.gas.denom}`):void 0,T=e.multiChain?a==null?void 0:a[d.chainId]:n;if(!T)throw new Error("No tendermint client found");return yield SigningCosmWasmClient.createWithSigner(T,E,P({gasPrice:A},e.multiChain?(y=e.opts)==null?void 0:y[d.chainId]:e.opts||{}))}))}),enabled:!!t&&t.length>0&&!!i&&(!!n||!he(a))&&(e.enabled!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}var Lt=({children:e})=>{let[t,i]=useState(!1);return useEffect(()=>{i(!0);},[]),jsx(Fragment,{children:t?e:null})};var Mn=()=>{let e=typeof window!="undefined"&&window.sessionStorage.getItem(J)==="Active",{_reconnect:t,_onReconnectFailed:i,_reconnectConnector:r,iframeOptions:o,chains:n}=p(),{activeChainIds:a,wcSignClients:s}=g(),c=L(r||void 0);return useEffect(()=>{if(!o||o.autoConnect===!1||!o.allowedIframeParentOrigins.length||!n)return;new Cosmiframe(o.allowedIframeParentOrigins).isReady().then(h=>{if(h)return Z({chainId:n.map(d=>d.chainId),walletType:"cosmiframe"})});},[o]),useEffect(()=>{if(r){if(!c)return;e&&a?U({onError:i}):!e&&t&&U({onError:i});}},[c]),useEffect(()=>{var m,h,d,f,E,S,A,T,O,u,y,C,k,R,D,te,oe,w,I,b;if(r){if(!c)return;r==="cosmostation"&&((h=(m=pe()).subscription)==null||h.call(m,()=>{U({onError:i});})),r==="keplr"&&((f=(d=me()).subscription)==null||f.call(d,()=>{U({onError:i});})),r==="leap"&&((S=(E=de()).subscription)==null||S.call(E,()=>{U({onError:i});})),r==="compass"&&((T=(A=le()).subscription)==null||T.call(A,()=>{U({onError:i});})),r==="vectis"&&((u=(O=Se()).subscription)==null||u.call(O,()=>{U({onError:i});})),r==="walletconnect"&&s.has("walletconnect")&&((C=(y=Q()).subscription)==null||C.call(y,()=>{U({onError:i});})),r==="station"&&((R=(k=ye()).subscription)==null||R.call(k,()=>{U({onError:i});})),r==="xdefi"&&((te=(D=Ce()).subscription)==null||te.call(D,()=>{U({onError:i});})),r==="cosmiframe"&&((w=(oe=ue()).subscription)==null||w.call(oe,()=>{U({onError:i});})),r==="okx"&&((b=(I=ge()).subscription)==null||b.call(I,()=>{U({onError:i});}));}},[r,s,c]),null},Ut=()=>(Mn(),null);var $a=({children:e,grazOptions:t})=>(useEffect(()=>{ht(t);},[t]),jsxs(Lt,{children:[e,jsx(Ut,{})]}));
19
+ var qt=Object.defineProperty,Gt=Object.defineProperties;var zt=Object.getOwnPropertyDescriptors;var Qe=Object.getOwnPropertySymbols;var Qt=Object.prototype.hasOwnProperty,jt=Object.prototype.propertyIsEnumerable;var je=(e,t,i)=>t in e?qt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,v=(e,t)=>{for(var i in t||(t={}))Qt.call(t,i)&&je(e,i,t[i]);if(Qe)for(var i of Qe(t))jt.call(t,i)&&je(e,i,t[i]);return e},G=(e,t)=>Gt(e,zt(t));var l=(e,t,i)=>new Promise((r,o)=>{var n=c=>{try{s(i.next(c));}catch(d){o(d);}},a=c=>{try{s(i.throw(c));}catch(d){o(d);}},s=c=>c.done?r(c.value):Promise.resolve(c.value).then(n,a);s((i=i.apply(e,t)).next());}),$e=(e,t,i)=>(t=e[Symbol.asyncIterator],i=(r,o)=>(o=e[r])&&(t[r]=n=>new Promise((a,s,c)=>(n=o.call(e,n),c=n.done,Promise.resolve(n.value).then(d=>a({value:d,done:c}),s)))),t?t.call(e):(e=e[Symbol.iterator](),t={},i("next"),i("return"),t));var J="graz-reconnect-session";var Ve=(p=>(p.KEPLR="keplr",p.LEAP="leap",p.VECTIS="vectis",p.COSMOSTATION="cosmostation",p.WALLETCONNECT="walletconnect",p.WC_KEPLR_MOBILE="wc_keplr_mobile",p.WC_LEAP_MOBILE="wc_leap_mobile",p.WC_COSMOSTATION_MOBILE="wc_cosmostation_mobile",p.WC_CLOT_MOBILE="wc_clot_mobile",p.METAMASK_SNAP_LEAP="metamask_snap_leap",p.METAMASK_SNAP_COSMOS="metamask_snap_cosmos",p.STATION="station",p.XDEFI="xdefi",p.CAPSULE="capsule",p.COSMIFRAME="cosmiframe",p.COMPASS="compass",p.INITIA="initia",p.OKX="okx",p.CACTUSCOSMOS="cactuscosmos",p))(Ve||{}),He=["keplr","leap","vectis","cosmostation","walletconnect","wc_keplr_mobile","wc_leap_mobile","wc_cosmostation_mobile","wc_clot_mobile","metamask_snap_leap","station","xdefi","capsule","metamask_snap_cosmos","cosmiframe","compass","initia","okx","cactuscosmos"];var Vt={iframeOptions:null,recentChainIds:null,chains:null,chainsConfig:null,capsuleConfig:null,capsuleState:null,multiChainFetchConcurrency:3,walletType:"keplr",walletConnect:{options:null,walletConnectModal:null},walletDefaultOptions:null,_notFoundFn:()=>null,_onReconnectFailed:()=>null,_reconnect:!1,_reconnectConnector:null},ie={accounts:null,activeChainIds:null,status:"disconnected",wcSignClients:new Map,capsuleClient:null},Ht={name:"graz-session",version:2,partialize:e=>({accounts:e.accounts,activeChainIds:e.activeChainIds}),storage:createJSONStorage(()=>sessionStorage)},Xt={name:"graz-internal",partialize:e=>({recentChainIds:e.recentChainIds,_reconnect:e._reconnect,_reconnectConnector:e._reconnectConnector,walletType:e.walletType}),version:2},y=create(subscribeWithSelector(persist(()=>ie,Ht))),u=create(subscribeWithSelector(persist(()=>Vt,Xt)));var le=()=>{if(typeof window.cactuslink_cosmos!="undefined"){let e=window.cactuslink_cosmos,i=Object.assign(e,{subscription:n=>{let a=()=>{B(),n();};return window.addEventListener("accountsChanged",a),()=>{window.removeEventListener("accountsChanged",a);}}}),r=n=>Promise.resolve(e.getOfflineSigner(n)),o=n=>e.getOfflineSigner(n);return G(v({},i),{getOfflineSignerAuto:r,getOfflineSignerOnlyAmino:o,experimentalSuggestChain:()=>l(void 0,null,function*(){})})}throw u.getState()._notFoundFn(),new Error("window.cactuslink_cosmos is not defined")};var ue=()=>{var g,O;if(!((g=u.getState().capsuleConfig)!=null&&g.apiKey)||!((O=u.getState().capsuleConfig)!=null&&O.env))throw new Error("Capsule configuration is not set");let e=()=>l(void 0,null,function*(){var T,E;let C=(yield import('@leapwallet/cosmos-social-login-capsule-provider')).CapsuleProvider,A=new C({apiKey:(T=u.getState().capsuleConfig)==null?void 0:T.apiKey,env:(E=u.getState().capsuleConfig)==null?void 0:E.env});return y.setState({capsuleClient:A}),A});return {init:e,enable:C=>l(void 0,null,function*(){let A=typeof C=="string"?[C]:C,T=y.getState().capsuleClient;T||(T=yield e()),u.setState({capsuleState:{showModal:!0,chainId:A}});}),onAfterLoginSuccessful:()=>l(void 0,null,function*(){var m;let C=y.getState().capsuleClient,{chains:A}=u.getState();if(!C)throw new Error("Capsule client is not initialized");if(!A)throw new Error("Chains are not set");yield C.enable();let T=(m=u.getState().capsuleState)==null?void 0:m.chainId;if(!T)throw new Error("Chain ids are not set");let E=Object.fromEntries(yield Promise.all(T.map(p=>l(void 0,null,function*(){let S=yield C.getAccount(p);return [p,{address:fromBech32(S.address).data,bech32Address:S.address,algo:S.algo,name:S.username||"",pubKey:S.pubkey,isKeystone:!1,isNanoLedger:!1}]}))));y.setState(p=>({accounts:v(v({},p.accounts||{}),E)})),u.setState(p=>({recentChainIds:[...p.recentChainIds||[],...T].filter((S,P,K)=>K.indexOf(S)===P)})),y.setState(p=>({activeChainIds:[...p.activeChainIds||[],...T].filter((S,P,K)=>K.indexOf(S)===P)})),u.setState({walletType:"capsule",_reconnect:!1,_reconnectConnector:"capsule"}),y.setState({status:"connected"}),typeof window!="undefined"&&window.sessionStorage.setItem(J,"Active"),u.setState({capsuleState:null});}),getKey:C=>l(void 0,null,function*(){let A=y.getState().capsuleClient;if(!A)throw new Error("Capsule client is not initialized");let T=yield A.getAccount(C);return {address:fromBech32(T.address).data,bech32Address:T.address,algo:T.algo,name:T.username||"",pubKey:T.pubkey,isKeystone:!1,isNanoLedger:!1}}),getOfflineSignerAuto:C=>l(void 0,null,function*(){let A=y.getState().capsuleClient;if(!A)throw new Error("Capsule client is not initialized");return A.getOfflineSignerDirect(C)}),getOfflineSignerDirect:C=>{let A=y.getState().capsuleClient;if(!A)throw new Error("Capsule client is not initialized");return A.getOfflineSignerDirect(C)},signDirect:(...C)=>l(void 0,null,function*(){let[A,T,E]=C,m=y.getState().capsuleClient;if(!m)throw new Error("Capsule client is not initialized");return m.signDirect(A,T,{bodyBytes:E.bodyBytes,authInfoBytes:E.authInfoBytes,chainId:E.chainId,accountNumber:E.accountNumber})}),signAmino:(...C)=>l(void 0,null,function*(){let[A,T,E,m]=C,p=y.getState().capsuleClient;if(!p)throw new Error("Capsule client is not initialized");return p.signAmino(A,T,E,m)}),signArbitrary:(C,A,T)=>l(void 0,null,function*(){let E=y.getState().capsuleClient;if(!E)throw new Error("Capsule client is not initialized");let m=yield E.getAccount(C);if(!m)throw new Error(`Wallet not connected to account ${A}`);let p=(()=>{switch(m.algo){case"secp256k1":return encodeSecp256k1Pubkey(m.pubkey);case"ed25519":return encodeEd25519Pubkey(m.pubkey);default:throw new Error("sr25519 public key algorithm is not supported")}})();return {signature:yield E.signArbitrary(C,A,T),pub_key:{type:m.algo==="secp256k1"?pubkeyType.secp256k1:pubkeyType.ed25519,value:p.value}}}),experimentalSuggestChain:(...C)=>l(void 0,null,function*(){yield Promise.reject(new Error("Capsule does not support experimentalSuggestChain"));}),getOfflineSigner:C=>{let A=y.getState().capsuleClient;if(!A)throw new Error("Capsule client is not initialized");return A.getOfflineSigner(C)},getOfflineSignerAmino:C=>{let A=y.getState().capsuleClient;if(!A)throw new Error("Capsule client is not initialized");return A.getOfflineSignerAmino(C)}}};var pe=()=>{if(typeof window.compass!="undefined"){let e=window.compass;return Object.assign(e,{subscription:o=>{let n=()=>{B(),o();};return window.addEventListener("leap_keystorechange",n),()=>{window.removeEventListener("leap_keystorechange",n);}},setDefaultOptions:o=>{e.defaultOptions=o;}})}throw u.getState()._notFoundFn(),new Error("window.leap is not defined")};var me=()=>{let e=u.getState();if(!e.iframeOptions)throw e._notFoundFn(),new Error("no iframe options set");if(!isInIframe())throw e._notFoundFn(),new Error("not in iframe");if(!e.iframeOptions.allowedIframeParentOrigins.length)throw e._notFoundFn(),new Error("no iframe allowed origins");let t=new Cosmiframe(e.iframeOptions.allowedIframeParentOrigins).getKeplrClient();return {enable:t.enable.bind(t),getKey:t.getKey.bind(t),getOfflineSigner:t.getOfflineSigner.bind(t),getOfflineSignerAuto:t.getOfflineSignerAuto.bind(t),getOfflineSignerOnlyAmino:t.getOfflineSignerOnlyAmino.bind(t),experimentalSuggestChain:t.experimentalSuggestChain.bind(t),signDirect:t.signDirect.bind(t),signAmino:t.signAmino.bind(t)}};var it={},ot=()=>{let e=window.ethereum,t=window.cosmos;if(e)return {init:()=>l(void 0,null,function*(){var w;let n=yield e.request({method:"web3_clientVersion"});if(!n.includes("MetaMask"))throw new Error("Metamask is not installed");if(typeof window.okxwallet!="undefined"&&window.okxwallet.isOkxWallet)throw new Error("You have OKX Wallet installed. Please disable and reload the page to use Metamask Snap.");let s=(w=n.split("MetaMask/v")[1])==null?void 0:w.split(".")[0];if(!(Number(s)>=11))throw new Error("Metamask Snap is not supported in this version");return (yield isSnapInstalled())||(yield installSnap()),window.cosmos=new CosmosSnap,t=window.cosmos,!0}),enable:n=>l(void 0,null,function*(){(yield isSnapInstalled())||(yield installSnap());}),getOfflineSigner:n=>t.getOfflineSigner(n),experimentalSuggestChain:n=>l(void 0,null,function*(){if(!n.bech32Config)throw new Error("Bech32Config is required");if(!n.stakeCurrency)throw new Error("StakeCurrency is required");yield t.experimentalSuggestChain(G(v({},n),{stakeCurrency:n.stakeCurrency,bech32Config:n.bech32Config}));}),signAmino:(n,a,s)=>l(void 0,null,function*(){return t.signAmino(n,a,s)}),getKey:n=>l(void 0,null,function*(){return typeof it[n]!="undefined"?it[n]:t.getKey(n)}),getOfflineSignerAuto:n=>l(void 0,null,function*(){return (yield t.getKey(n)).isNanoLedger?t.getOfflineSignerOnlyAmino(n):t.getOfflineSigner(n)}),getOfflineSignerOnlyAmino:n=>t.getOfflineSignerOnlyAmino(n),signDirect:(n,a,s)=>l(void 0,null,function*(){return t.signDirect(n,a,s)}),signArbitrary:(n,a,s)=>l(void 0,null,function*(){return t.signArbitrary(n,a,s)}),disable:n=>l(void 0,null,function*(){n&&(yield t.deleteChain(n));})};throw u.getState()._notFoundFn(),new Error("window.ethereum is not defined")};var de=()=>{var e;if(typeof((e=window.cosmostation)==null?void 0:e.providers.keplr)!="undefined"){let t=window.cosmostation.providers.keplr;return Object.assign(t,{subscription:n=>{let a=()=>{B(),n();};return window.addEventListener("cosmostation_keystorechange",a),()=>{window.removeEventListener("cosmostation_keystorechange",a);}},setDefaultOptions:n=>{t.defaultOptions=n;}})}throw u.getState()._notFoundFn(),new Error("window.cosmostation.providers.keplr is not defined")};var an=e=>{let{bodyBytes:t,authInfoBytes:i,chainId:r,accountNumber:o}=e;if(!t||!i||!r||!o)throw new Error("Invalid sign doc");return {bodyBytes:t,authInfoBytes:i,chainId:r,accountNumber:o}},cn=e=>`${e.slice(0,6)}...${e.slice(-6)}`,st=()=>{if(typeof window.initia!="undefined"){let e=window.initia;return {enable:()=>l(void 0,null,function*(){yield e.getAddress();}),getKey:f=>l(void 0,null,function*(){let g=e.getOfflineSigner(f),[O]=yield g.getAccounts();if(!O)throw new Error("Wallet connection failed");let C=(()=>{switch(O.algo){case"secp256k1":return rawSecp256k1PubkeyToRawAddress(O.pubkey);case"ed25519":return rawEd25519PubkeyToRawAddress(O.pubkey);default:throw new Error("sr25519 public key algorithm is not supported")}})();return {name:cn(O.address),algo:O.algo,pubKey:O.pubkey,bech32Address:O.address,address:C,isNanoLedger:!1,isKeystone:!1}}),getOfflineSigner:f=>{let g=e.getOfflineSigner(f),O=e.getOfflineSignerOnlyAmino(f);return {getAccounts:g.getAccounts.bind(g),signDirect:g.signDirect.bind(g),signAmino:O.signAmino.bind(O)}},getOfflineSignerAuto:f=>Promise.resolve(e.getOfflineSigner(f)),getOfflineSignerOnlyAmino:f=>e.getOfflineSignerOnlyAmino(f),experimentalSuggestChain:f=>e.requestAddInitiaLayer({chain_id:f.chainId,chain_name:f.chainName,bech32_prefix:"init",bech32_config:f.bech32Config,slip44:f.bip44.coinType,logo_URIs:{png:f.chainSymbolImageUrl},fees:{fee_tokens:f.feeCurrencies.map(g=>{var O,C,A;return {denom:g.coinDenom,amount:g.coinMinimalDenom,low_gas_price:(O=g.gasPriceStep)==null?void 0:O.low,average_gas_price:(C=g.gasPriceStep)==null?void 0:C.average,high_gas_price:(A=g.gasPriceStep)==null?void 0:A.high}})},apis:{rpc:[{address:f.rpc}],rest:[{address:f.rest}]}}),signDirect:(...f)=>{let[g,O,C]=f;return e.getOfflineSigner(g).signDirect(O,an(C))},signAmino:(...f)=>{let[g,O,C]=f;return e.getOfflineSignerOnlyAmino(g).signAmino(O,C)},signArbitrary:(f,g,O)=>l(void 0,null,function*(){let T=(yield e.getOfflineSigner(f).getAccounts()).find(p=>p.address===g);if(!T)throw new Error(`Wallet not connected to account ${g}`);let E=(()=>{switch(T.algo){case"secp256k1":return encodeSecp256k1Pubkey(T.pubkey);case"ed25519":return encodeEd25519Pubkey(T.pubkey);default:throw new Error("sr25519 public key algorithm is not supported")}})();return {signature:yield e.signArbitrary(O),pub_key:{type:T.algo==="secp256k1"?pubkeyType.secp256k1:pubkeyType.ed25519,value:E.value}}}),subscription:f=>{let g=()=>{B(),f();};return window.addEventListener("initia_keystorechange",g),()=>{window.removeEventListener("initia_keystorechange",g);}}}}throw u.getState()._notFoundFn(),new Error("window.initia is not defined")};var fe=()=>{if(typeof window.keplr!="undefined"){let e=window.keplr;return Object.assign(e,{subscription:o=>{let n=()=>{B(),o();};return window.addEventListener("keplr_keystorechange",n),()=>{window.removeEventListener("keplr_keystorechange",n);}},setDefaultOptions:o=>{e.defaultOptions=o;}})}throw u.getState()._notFoundFn(),new Error("window.keplr is not defined")};var ge=()=>{if(typeof window.leap!="undefined"){let e=window.leap;return Object.assign(e,{subscription:o=>{let n=()=>{B(),o();};return window.addEventListener("leap_keystorechange",n),()=>{window.removeEventListener("leap_keystorechange",n);}},setDefaultOptions:o=>{e.defaultOptions=o;}})}throw u.getState()._notFoundFn(),new Error("window.leap is not defined")};var ye={},at=e=>{let t=window.ethereum;if(t&&e){let i=()=>l(void 0,null,function*(){return yield t.request({method:"wallet_getSnaps"})}),r=m=>l(void 0,null,function*(){try{let p=yield i();return Object.values(p).find(S=>S.id===e.id&&(!m||S.version===m))}catch(p){return}}),o=()=>l(void 0,null,function*(){yield t.request({method:"wallet_requestSnaps",params:{[e.id]:e.params||{}}});}),n=()=>l(void 0,null,function*(){var _;let m=yield t.request({method:"web3_clientVersion"});if(!m.includes("MetaMask"))throw new Error("Metamask is not installed");if(typeof window.okxwallet!="undefined"&&window.okxwallet.isOkxWallet)throw new Error("You have OKX Wallet installed. Please disable and reload the page to use Metamask Snap.");let S=(_=m.split("MetaMask/v")[1])==null?void 0:_.split(".")[0];if(!(Number(S)>=11))throw new Error("Metamask Snap is not supported in this version");return (yield r())||(yield o()),!0}),a=m=>l(void 0,null,function*(){(yield r())||(yield o());}),s=(m,p,S)=>l(void 0,null,function*(){let P=yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"signDirect",params:{chainId:m,signerAddress:p,signDoc:S}}}}),K=S.accountNumber,_=new pt(K.low,K.high,K.unsigned);return {signature:P.signature,signed:G(v({},P.signed),{accountNumber:`${_.toString()}`,authInfoBytes:new Uint8Array(Object.values(P.signed.authInfoBytes)),bodyBytes:new Uint8Array(Object.values(P.signed.bodyBytes))})}}),c=(m,p,S)=>l(void 0,null,function*(){return yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"signAmino",params:{chainId:m,signerAddress:p,signDoc:S}}}})}),d=m=>l(void 0,null,function*(){if(typeof ye[m]!="undefined")return ye[m];let p=yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"getKey",params:{chainId:m}}}});if(!p)throw new Error("No response from Metamask");return p.pubKey=Uint8Array.from(Object.values(p.pubkey)),delete p.pubkey,ye[m]=p,ye[m]}),w=m=>l(void 0,null,function*(){let p=yield d(m);return {address:p.bech32Address,algo:p.algo,pubkey:p.pubKey}}),f=(...m)=>l(void 0,null,function*(){let[p,S,P,K]=m;return yield c(p,S,P)}),g=(...m)=>l(void 0,null,function*(){let[p,S,P]=m;return yield s(p,S,P)}),C=m=>({getAccounts:()=>l(void 0,null,function*(){return [yield w(m)]}),signAmino:(p,S)=>f(m,p,S)});return {enable:a,experimentalSuggestChain:(...m)=>l(void 0,null,function*(){yield n(),yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"suggestChain",params:{chainInfo:m[0]}}}});}),getKey:d,getOfflineSigner:m=>({getAccounts:()=>l(void 0,null,function*(){return [yield w(m)]}),signDirect:(p,S)=>g(m,p,S),signAmino:(p,S)=>f(m,p,S)}),getOfflineSignerAuto:m=>l(void 0,null,function*(){return C(m)}),getOfflineSignerOnlyAmino:C,init:n,signAmino:f,signDirect:g}}throw u.getState()._notFoundFn(),new Error("window.ethereum is not defined")};var ct=()=>at({id:"npm:@leapwallet/metamask-cosmos-snap"});var Ce=()=>{var e;if(typeof((e=window.okxwallet)==null?void 0:e.keplr)!="undefined"){let t=window.okxwallet.keplr;return Object.assign(t,{subscription:n=>{var s;let a=()=>{B(),n();};return (s=window.okxwallet)==null||s.on("accountsChanged",a),()=>{var c;(c=window.okxwallet)==null||c.removeListener("accountsChanged",a);}},setDefaultOptions:n=>{t.defaultOptions=n;}})}throw u.getState()._notFoundFn(),new Error("window.okxwallet.keplr is not defined")};var Se=()=>{if(typeof window.station!="undefined"){let e=window.station.keplr;return {subscription:n=>{let a=()=>{B(),n();};return window.addEventListener("station_wallet_change",a),()=>{window.removeEventListener("station_wallet_change",a);}},getKey:n=>l(void 0,null,function*(){let a=yield e.getKey(n);return v({isKeystone:!1},a)}),getOfflineSigner:n=>{try{let a=e.getOfflineSignerOnlyAmino(n);return Object.assign(a,{signDirect:(d,w)=>{throw new Error("signDirect not supported by Station")}})}catch(a){throw console.error(a),a}},experimentalSuggestChain:n=>l(void 0,null,function*(){try{if(!n.bech32Config)throw new Error("Bech32Config is required");if(!n.stakeCurrency)throw new Error("StakeCurrency is required");let a=Object.assign(n,{bech32Config:n.bech32Config,chainSymbolImageUrl:n.chainSymbolImageUrl||"",stakeCurrency:{coinDecimals:n.stakeCurrency.coinDecimals,coinDenom:n.stakeCurrency.coinDenom,coinImageUrl:n.stakeCurrency.coinImageUrl||"",coinMinimalDenom:n.stakeCurrency.coinMinimalDenom},currencies:n.currencies.map(s=>({coinDecimals:s.coinDecimals,coinDenom:s.coinDenom,coinImageUrl:s.coinImageUrl||"",coinMinimalDenom:s.coinMinimalDenom})),feeCurrencies:n.feeCurrencies.map(s=>{var c,d,w;return {coinDecimals:s.coinDecimals,coinDenom:s.coinDenom,coinImageUrl:s.coinImageUrl||"",coinMinimalDenom:s.coinMinimalDenom,gasPriceStep:{average:((c=s.gasPriceStep)==null?void 0:c.average)||0,high:((d=s.gasPriceStep)==null?void 0:d.high)||0,low:((w=s.gasPriceStep)==null?void 0:w.low)||0}}})});yield e.experimentalSuggestChain(a);}catch(a){throw console.error(a),a}}),enable:n=>e.enable(n),disable:n=>e.disable(n),getOfflineSignerAuto:n=>e.getOfflineSignerAuto(n),getOfflineSignerOnlyAmino:n=>e.getOfflineSignerOnlyAmino(n),signDirect:()=>e.signDirect(),signAmino:(n,a,s,c)=>e.signAmino(n,a,s)}}throw u.getState()._notFoundFn(),new Error("window.station is not defined")};var we=()=>{if(typeof window.vectis!="undefined"){let e=window.vectis.cosmos;return {enable:s=>e.enable(s),getOfflineSigner:s=>e.getOfflineSigner(s),getOfflineSignerAuto:s=>e.getOfflineSignerAuto(s),getKey:s=>l(void 0,null,function*(){let c=yield e.getKey(s);return {address:fromBech32(c.address).data,algo:c.algo,bech32Address:c.address,name:c.name,pubKey:c.pubKey,isKeystone:!1,isNanoLedger:c.isNanoLedger}}),subscription:s=>{let c=()=>{B(),s();};return window.addEventListener("vectis_accountChanged",c),()=>{window.removeEventListener("vectis_accountChanged",c);}},getOfflineSignerOnlyAmino:(...s)=>{let c=s[0];return e.getOfflineSignerAmino(c)},experimentalSuggestChain:(...s)=>l(void 0,null,function*(){var w;let[c]=s;if(!c.bech32Config)throw new Error("Bech32Config is required");if(!c.stakeCurrency)throw new Error("StakeCurrency is required");let d={rpcUrl:c.rpc,restUrl:c.rest,prettyName:c.chainName.replace(" ",""),bech32Prefix:(w=c.bech32Config)==null?void 0:w.bech32PrefixAccAddr,currencies:c.currencies,feeCurrencies:c.feeCurrencies,chainId:c.chainId,chainName:c.chainName,bip44:c.bip44,stakeCurrency:c.stakeCurrency,features:c.features};return e.suggestChains([d])}),signDirect:(...s)=>l(void 0,null,function*(){var w;let{1:c,2:d}=s;return e.signDirect(c,{bodyBytes:d.bodyBytes||Uint8Array.from([]),authInfoBytes:d.authInfoBytes||Uint8Array.from([]),accountNumber:pt.fromString(((w=d.accountNumber)==null?void 0:w.toString())||"",!1),chainId:d.chainId||""})}),signAmino:(...s)=>l(void 0,null,function*(){let{1:c,2:d}=s;return e.signAmino(c,d)})}}throw u.getState()._notFoundFn(),new Error("window.vectis is not defined")};var Q=()=>{if(typeof window!="undefined"){let e=navigator.userAgent;return !!(/android/i.test(e)||/iPad|iPhone|iPod/.test(e))}return !1},lt=()=>Q()&&navigator.userAgent.toLowerCase().includes("android"),ut=()=>Q()&&(navigator.userAgent.toLowerCase().includes("iphone")||navigator.userAgent.toLowerCase().includes("ipad"));var Pe=(e,t,i=new Error("Promise timed out"))=>{let r=new Promise((o,n)=>{setTimeout(()=>{n(i);},t);});return Promise.race([e,r])};var j=e=>{var _,te,oe;if(!((oe=(te=(_=u.getState().walletConnect)==null?void 0:_.options)==null?void 0:te.projectId)!=null&&oe.trim()))throw new Error("walletConnect.options.projectId is not defined");let t=(e==null?void 0:e.walletType)||"walletconnect",i=(e==null?void 0:e.encoding)||"base64",r=h=>{if(!e)return;let{appUrl:I,formatNativeUrl:b}=e;if(Q()){if(lt()){let k=b(I.mobile.android,h,"android");window.open(k,"_self","noreferrer noopener");}if(ut()){let k=b(I.mobile.ios,h,"ios");window.open(k,"_self","noreferrer noopener");}}},o=()=>{let{wcSignClients:h}=y.getState();if(!h.get(t))throw new Error("walletConnect.signClient is not defined");h.delete(t),y.setState({wcSignClients:h}),u.setState({_reconnect:!1,_reconnectConnector:null,recentChainIds:null});},n=h=>l(void 0,null,function*(){let{wcSignClients:I}=y.getState(),b=I.get(t);if(!b)throw new Error("walletConnect.signClient is not defined");if(!h)throw new Error("No wallet connect session");yield b.disconnect({topic:h,reason:getSdkError("USER_DISCONNECTED")}),yield c(b);}),a=h=>{try{let{wcSignClients:I}=y.getState(),b=I.get(t);if(!b)throw new Error("walletConnect.signClient is not defined");let k=b.session.getAll(),W=k.at(-1);if(!W)return;if(!(W.expiry*1e3>Date.now()+1e3))throw n(W.topic),new Error("invalid session");try{let N=k.find($=>{var X,Y;return (Y=(X=$.requiredNamespaces.cosmos)==null?void 0:X.chains)==null?void 0:Y.includes(`cosmos:${h}`)});if(!N)throw new Error("no session");return N}catch(N){if(!N.message.toLowerCase().includes("no matching key"))throw N}return W}catch(I){if(!I.message.toLowerCase().includes("no matching key"))throw I}},s=h=>{try{return a(h)}catch(I){return}},c=h=>l(void 0,null,function*(){try{let I=h.core.pairing.pairings.getAll({active:!1});if(!I.length)return;yield Promise.all(I.map(b=>l(void 0,null,function*(){yield h.core.pairing.pairings.delete(b.topic,{code:7001,message:"clear pairing"});})));}catch(I){if(!I.message.toLowerCase().includes("no matching key"))throw I}}),d=()=>l(void 0,null,function*(){let{walletConnect:h}=u.getState();if(!(h!=null&&h.options))throw new Error("walletConnect.options is not defined");let{wcSignClients:I}=y.getState(),b=I.get(t);if(b)return b;let k=yield SignClient.init(h.options);return I.set(t,k),y.setState({wcSignClients:I}),k}),w=h=>{let{wcSignClients:I}=y.getState(),b=I.get(t);if(!b)return ()=>{};let k=W=>{let R=y.getState().accounts;if(W.params.event.name==="accountsChanged"&&R&&!Object.values(R).map(N=>N.bech32Address).includes(W.params.event.data[0])){let N=W.params.chainId.split(":")[1];N&&f([N]);}else h();};return b.events.on("session_delete",o),b.events.on("session_expire",o),b.events.on("session_event",k),()=>{b.events.off("session_delete",o),b.events.off("session_expire",o),b.events.off("session_event",k);}},f=h=>l(void 0,null,function*(){var Y;let I=typeof h=="string"?[h]:h,{wcSignClients:b,activeChainIds:k}=y.getState(),W=b.get(t);if(!W)throw new Error("enable walletConnect.signClient is not defined");let{walletConnect:R,chains:N}=u.getState();if(!((Y=R==null?void 0:R.options)!=null&&Y.projectId))throw new Error("walletConnect.options.projectId is not defined");let $=new WalletConnectModal(v({projectId:R.options.projectId,enableExplorer:!1,explorerRecommendedWalletIds:"NONE"},R.walletConnectModal)),X=s(I);if(!X){let{uri:q,approval:ae}=yield Pe(W.connect({requiredNamespaces:{cosmos:{methods:["cosmos_getAccounts","cosmos_signAmino","cosmos_signDirect"],chains:I.map(V=>`cosmos:${V}`),events:["chainChanged","accountsChanged"]}}}),15e3,new Error("Connection timeout"));if(!q)throw new Error("No wallet connect uri");e?r(q):yield $.openModal({uri:q});let ce=V=>l(void 0,null,function*(){return V.aborted?Promise.reject(new Error("User closed wallet connect")):new Promise((ke,ne)=>{ae().then(qe=>{let Ge=qe.sessionProperties;if(!Ge)return ne(new Error("No session properties"));let ve=JSON.parse(String(Ge.keys));if(ve.length===0)return ne(new Error("No accounts"));if(!ve[0])return ne(new Error("No accounts"));let ze={};return ve.forEach(H=>{ze[H.chainId]={address:H.address,algo:H.algo,bech32Address:H.bech32Address,isNanoLedger:H.isNanoLedger,isKeystone:H.isKeystone,name:H.name,pubKey:H.pubKey};}),y.setState(H=>({accounts:v(v({},H.accounts||{}),ze)})),ke(qe)}).catch(ne),V.addEventListener("abort",()=>{ne(new Error("User closed wallet connect"));},{once:!0});})});try{let V=new AbortController,ke=V.signal;$.subscribeModal(ne=>{ne.open||V.abort();}),yield ce(ke);}catch(V){if($.closeModal(),!V.message.toLowerCase().includes("no matching key"))return Promise.reject(V)}return e||$.closeModal(),Promise.resolve()}try{yield Pe((()=>l(void 0,null,function*(){var ae;let q=Object.fromEntries(yield Promise.all((ae=k||I)==null?void 0:ae.map(ce=>l(void 0,null,function*(){return [ce,yield O(ce)]}))));y.setState({accounts:q});}))(),15e3,new Error("Connection timeout"));}catch(q){if(n(X.topic),!q.message.toLowerCase().includes("no matching key"))throw q}}),g=h=>l(void 0,null,function*(){let I=yield O(h);return {address:I.bech32Address,algo:I.algo,pubkey:I.pubKey}}),O=h=>l(void 0,null,function*(){let I=a([h]);if(!(I!=null&&I.topic))throw new Error("No wallet connect session");let b=I.sessionProperties&&JSON.parse(String(I.sessionProperties.keys));if(!b)throw new Error("No wallet connect key");if(b.length===0)throw new Error("No wallet connect session");let k=b.find(W=>W.chainId===h);if(!k)throw new Error(`No wallet connect key for chainId ${h}`);return G(v({},k),{pubKey:Buffer.from(String(k.pubKey),i)})}),C=(...h)=>l(void 0,null,function*(){var Y,q;let[I,b,k]=h,{accounts:W,wcSignClients:R}=y.getState(),N=R.get(t);if(!N)throw new Error("walletConnect.signClient is not defined");if(!W)throw new Error("account is not defined");let $=(Y=a([I]))==null?void 0:Y.topic;if(!$)throw new Error("No wallet connect session");if(!k.bodyBytes)throw new Error("No bodyBytes");if(!k.authInfoBytes)throw new Error("No authInfoBytes");return r(),yield N.request({topic:$,chainId:`cosmos:${I}`,request:{method:"cosmos_signDirect",params:{signerAddress:b,signDoc:{chainId:k.chainId,accountNumber:(q=k.accountNumber)==null?void 0:q.toString(),bodyBytes:k.bodyBytes?Buffer.from(k.bodyBytes).toString(i):null,authInfoBytes:k.authInfoBytes?Buffer.from(k.authInfoBytes).toString(i):null}}}})}),A=(...h)=>l(void 0,null,function*(){var N;let[I,b,k]=h,{signature:W,signed:R}=yield C(I,b,k);return {signed:{chainId:(N=R.chainId)!=null?N:"",accountNumber:R.accountNumber?pt.fromString(R.accountNumber):new pt(0),authInfoBytes:R.authInfoBytes?new Uint8Array(Buffer.from(R.authInfoBytes,i)):new Uint8Array([]),bodyBytes:R.bodyBytes?new Uint8Array(Buffer.from(R.bodyBytes,i)):new Uint8Array([])},signature:W}}),T=(...h)=>l(void 0,null,function*(){var q;let[I,b,k,W]=h,{wcSignClients:R}=y.getState(),N=R.get(t),{accounts:$}=y.getState();if(!N)throw new Error("walletConnect.signClient is not defined");if(!$)throw new Error("account is not defined");let X=(q=a([I]))==null?void 0:q.topic;if(!X)throw new Error("No wallet connect session");return r(),yield N.request({topic:X,chainId:`cosmos:${I}`,request:{method:"cosmos_signDirect",params:{signerAddress:b,signDoc:k}}})}),E=(...h)=>l(void 0,null,function*(){let[I,b,k,W]=h;return yield T(I,b,k)}),m=h=>({getAccounts:()=>l(void 0,null,function*(){return [yield g(h)]}),signDirect:(I,b)=>A(h,I,b)}),p=h=>({getAccounts:()=>l(void 0,null,function*(){return [yield g(h)]}),signAmino:(I,b)=>E(h,I,b)});return {enable:f,disable:h=>l(void 0,null,function*(){var k;let{wcSignClients:I}=y.getState(),b=I.get(t);if(h===void 0){let W=b==null?void 0:b.session.getAll();W!==void 0&&(yield Promise.all(W.map(R=>n(R.topic))));}else typeof h=="string"?yield n((k=a([h]))==null?void 0:k.topic):yield Promise.all(h.map(W=>{var R;return n((R=a([W]))==null?void 0:R.topic)}));(b==null?void 0:b.session.getAll().length)===0&&o();}),experimentalSuggestChain:(...h)=>l(void 0,null,function*(){yield Promise.reject(new Error("WalletConnect does not support experimentalSuggestChain"));}),getKey:O,getOfflineSigner:h=>({getAccounts:()=>l(void 0,null,function*(){return [yield g(h)]}),signDirect:(I,b)=>A(h,I,b),signAmino:(I,b)=>E(h,I,b)}),getOfflineSignerAuto:h=>l(void 0,null,function*(){return (yield O(h)).isNanoLedger?p(h):m(h)}),getOfflineSignerOnlyAmino:p,signAmino:E,signDirect:A,subscription:w,init:d}};var mt=()=>{var t,i,r;if(!((r=(i=(t=u.getState().walletConnect)==null?void 0:t.options)==null?void 0:i.projectId)!=null&&r.trim()))throw new Error("walletConnect.options.projectId is not defined");if(!Q())throw new Error("WalletConnect Clot mobile is only supported in mobile");let e={encoding:"base64",appUrl:{mobile:{android:"clot://",ios:"clot://"}},walletType:"wc_clot_mobile",formatNativeUrl:(o,n,a)=>{let s=o.replaceAll("/","").replaceAll(":",""),c=n&&encodeURIComponent(n);switch(a){case"ios":return c?`${s}://wcV2?${c}`:`${s}://wcV2`;default:return c?`${s}://wc?uri=${c}`:`${s}://wc`}}};return j(e)};var dt=()=>{var t,i,r;if(!((r=(i=(t=u.getState().walletConnect)==null?void 0:t.options)==null?void 0:i.projectId)!=null&&r.trim()))throw new Error("walletConnect.options.projectId is not defined");if(!Q())throw new Error("WalletConnect Cosmostation mobile is only supported in mobile");let e={encoding:"hex",appUrl:{mobile:{ios:"cosmostation://",android:"cosmostation://"}},walletType:"wc_cosmostation_mobile",formatNativeUrl:(o,n,a)=>{let s=o.replaceAll("/","").replaceAll(":","");return n?`${s}://wc?${n}`:`${s}://wc`}};return j(e)};var ft=()=>{var t,i,r;if(!((r=(i=(t=u.getState().walletConnect)==null?void 0:t.options)==null?void 0:i.projectId)!=null&&r.trim()))throw new Error("walletConnect.options.projectId is not defined");if(!Q())throw new Error("WalletConnect Keplr mobile is only supported in mobile");let e={encoding:"base64",appUrl:{mobile:{ios:"keplrwallet://",android:"intent://"}},walletType:"wc_keplr_mobile",formatNativeUrl:(o,n,a)=>{let s=o.replaceAll("/","").replaceAll(":",""),c=n&&encodeURIComponent(n);switch(a){case"ios":return c?`${s}://wcV2?${c}`:`${s}://wcV2`;case"android":return c?`${s}://wcV2?${c}#Intent;package=com.chainapsis.keplr;scheme=keplrwallet;end;`:`${s}://wcV2#Intent;package=com.chainapsis.keplr;scheme=keplrwallet;end;`;default:return c?`${s}://wc?uri=${c}`:`${s}://wc`}}};return j(e)};var gt=()=>{var t,i,r;if(!((r=(i=(t=u.getState().walletConnect)==null?void 0:t.options)==null?void 0:i.projectId)!=null&&r.trim()))throw new Error("walletConnect.options.projectId is not defined");if(!Q())throw new Error("WalletConnect Leap mobile is only supported in mobile");let e={encoding:"base64",appUrl:{mobile:{ios:"leapcosmos://",android:"intent://"}},walletType:"wc_leap_mobile",formatNativeUrl:(o,n,a)=>{let s=o.replaceAll("/","").replaceAll(":",""),c=n&&encodeURIComponent(n);switch(a){case"ios":return c?`${s}://wcV2?${c}`:`${s}://wcV2`;case"android":return c?`${s}://wcV2?${c}#Intent;package=io.leapwallet.cosmos;scheme=leapwallet;end;`:`${s}://wcV2#Intent;package=io.leapwallet.cosmos;scheme=leapwallet;end;`;default:return c?`${s}://wc?uri=${c}`:`${s}://wc`}}};return j(e)};var he=()=>{var e;if(typeof((e=window.xfi)==null?void 0:e.keplr)!="undefined"){let t=window.xfi.keplr;return Object.assign(t,{subscription:o=>{let n=()=>{B(),o();};return window.addEventListener("keplr_keystorechange",n),()=>{window.removeEventListener("keplr_keystorechange",n);}}})}throw u.getState()._notFoundFn(),new Error("window.xfi.keplr is not defined")};var L=(e=u.getState().walletType)=>{try{return D(e),!0}catch(t){return !1}},B=()=>{window.sessionStorage.removeItem(J),y.setState(ie);},D=(e=u.getState().walletType)=>{var r;let t=(()=>{switch(e){case"keplr":return fe();case"leap":return ge();case"cosmostation":return de();case"vectis":return we();case"walletconnect":return j();case"wc_keplr_mobile":return ft();case"wc_leap_mobile":return gt();case"wc_cosmostation_mobile":return dt();case"wc_clot_mobile":return mt();case"metamask_snap_leap":return ct();case"metamask_snap_cosmos":return ot();case"station":return Se();case"xdefi":return he();case"capsule":return ue();case"cosmiframe":return me();case"compass":return pe();case"initia":return st();case"okx":return Ce();case"cactuscosmos":return le();default:throw new Error("Unknown wallet type")}})(),i=u.getState().walletDefaultOptions;return i&&((r=t.setDefaultOptions)==null||r.call(t,i)),t},pr=()=>Object.fromEntries(He.map(e=>[e,L(e)])),We=e=>e==="capsule",yt=e=>e==="metamask_snap_leap",Ct=()=>!!(navigator!=null&&navigator.userAgent)&&/LeapCosmos/i.test(navigator.userAgent),re=e=>e==="walletconnect"||e==="wc_keplr_mobile"||e==="wc_leap_mobile"||e==="wc_cosmostation_mobile";var Z=e=>l(void 0,null,function*(){var t;try{let{recentChainIds:a,chains:s,walletType:c}=u.getState(),d=(e==null?void 0:e.walletType)||c;if(re(d)){let E=D("walletconnect"),{disable:m}=E;m&&m();}if(!L(d))throw new Error(`${d} is not available`);let f=D(d),g=typeof(e==null?void 0:e.chainId)=="string"?[e.chainId]:(e==null?void 0:e.chainId)||a;if(!g)throw new Error("No last known connected chain, connect action requires chain ids");let O=s==null?void 0:s.map(E=>E.chainId);g.forEach(E=>{if(!(O!=null&&O.includes(E)))throw new Error(`Chain ${E} is not provided in GrazProvider`)}),y.setState(E=>{let m=u.getState()._reconnect||!!u.getState()._reconnectConnector||!!g;return E.activeChainIds&&g.filter(S=>{var P;return !((P=E.activeChainIds)!=null&&P.includes(S))}).length>0?{status:"connecting"}:m?{status:"reconnecting"}:{status:"connecting"}});let{accounts:C}=y.getState();if(yield (t=f.init)==null?void 0:t.call(f),We(d)&&y.getState().capsuleClient&&Object.values(y.getState().accounts||[]).length>0){let E=g.map(S=>s.find(P=>P.chainId===S)),m=y.getState().accounts;y.setState({status:"connecting"});let p=Object.fromEntries(yield Promise.all(g.map(S=>l(void 0,null,function*(){return [S,yield f.getKey(S)]}))));return y.setState(S=>({accounts:v(v({},S.accounts||{}),p)})),u.setState(S=>({recentChainIds:[...S.recentChainIds||[],...g].filter((P,K,_)=>_.indexOf(P)===K)})),y.setState(S=>({activeChainIds:[...S.activeChainIds||[],...g].filter((P,K,_)=>_.indexOf(P)===K)})),y.setState({status:"connected"}),{accounts:m,walletType:d,chains:E}}if(yield f.enable(g),We(d)){let E=g.map(p=>s.find(S=>S.chainId===p)),m=y.getState().accounts;return y.setState({status:"connecting"}),{accounts:m,walletType:d,chains:E}}if(!re(d)){let E={};if(yt(d)){let m={};try{for(var i=$e(g),r,o,n;r=!(o=yield i.next()).done;r=!1){let p=o.value;m[p]=yield f.getKey(p);}}catch(o){n=[o];}finally{try{r&&(o=i.return)&&(yield o.call(i));}finally{if(n)throw n[0]}}E=m;}else if(Ct()&&f.getKeys){let m=yield f.getKeys(g);g.forEach((p,S)=>{let P=m[S];P&&(E[p]=P);});}else E=Object.fromEntries(yield Promise.all(g.map(m=>l(void 0,null,function*(){return [m,yield f.getKey(m)]}))));y.setState(m=>({accounts:v(v({},m.accounts||{}),E)}));}u.setState(E=>({recentChainIds:[...E.recentChainIds||[],...g].filter((m,p,S)=>S.indexOf(m)===p)})),y.setState(E=>({activeChainIds:[...E.activeChainIds||[],...g].filter((m,p,S)=>S.indexOf(m)===p)})),u.setState({walletType:d,_reconnect:!!(e!=null&&e.autoReconnect),_reconnectConnector:d}),y.setState({status:"connected"}),typeof window!="undefined"&&window.sessionStorage.setItem(J,"Active");let A=g.map(E=>s.find(m=>m.chainId===E));return {accounts:y.getState().accounts,walletType:d,chains:A}}catch(a){throw console.error("connect ",a),y.getState().accounts===null&&y.setState({status:"disconnected"}),y.getState().accounts&&y.getState().activeChainIds&&y.setState({status:"connected"}),a}}),se=e=>{typeof window!="undefined"&&window.sessionStorage.removeItem(J);let t=typeof(e==null?void 0:e.chainId)=="string"?[e.chainId]:e==null?void 0:e.chainId;if(re(u.getState().walletType)){let i=D("walletconnect"),{disable:r}=i;r&&r();}if(t){let i=y.getState().accounts;t.forEach(o=>{i==null||delete i[o];}),Object.values(i||{}).length===0?(y.setState(ie),u.setState({_reconnect:!1,_reconnectConnector:null,recentChainIds:null})):(y.setState(o=>{var n;return {activeChainIds:(n=o.activeChainIds)==null?void 0:n.filter(a=>!t.includes(a)),accounts:i}}),u.setState(o=>{var n;return {recentChainIds:(n=o.recentChainIds)==null?void 0:n.filter(a=>!t.includes(a))}}));}else y.setState(ie),u.setState({_reconnect:!1,_reconnectConnector:null,recentChainIds:null});return Promise.resolve()},U=e=>l(void 0,null,function*(){var o;let{recentChainIds:t,_reconnectConnector:i,_reconnect:r}=u.getState();try{let n=L(i||void 0);if(t&&n&&i)return re(i)?void 0:yield Z({chainId:t,walletType:i,autoReconnect:r})}catch(n){(o=e==null?void 0:e.onError)==null||o.call(e,n),se();}}),St=e=>l(void 0,null,function*(){if(!(e!=null&&e.chainId))throw new Error("chainId is required");let{walletType:t}=u.getState(),i=e.walletType||t;if(!L(i))throw new Error(`${i} is not available`);let o=D(i),n=o.getOfflineSigner(e.chainId),a=o.getOfflineSignerOnlyAmino(e.chainId),s=yield o.getOfflineSignerAuto(e.chainId);return {offlineSigner:n,offlineSignerAmino:a,offlineSignerAuto:s}});var Re=()=>{u.setState({recentChainIds:null});},Or=()=>u.getState().recentChainIds,Er=()=>{var i;let{recentChainIds:e,chains:t}=u.getState();return (i=e==null?void 0:e.map(r=>t.find(o=>o.chainId===r)))!=null?i:null},br=({chainId:e})=>{var t;return (t=u.getState().chains)==null?void 0:t.find(i=>i.chainId===e)},Tr=({chainId:e})=>{var t;return (t=u.getState().chains)==null?void 0:t.filter(i=>e==null?void 0:e.includes(i.chainId))},Ke=i=>l(void 0,[i],function*({chainInfo:e,walletType:t}){let r=D(t);return t==="capsule"?yield Z({chainId:e.chainId,walletType:t}):yield r.experimentalSuggestChain(e),e}),wt=e=>l(void 0,null,function*(){var r;let t=u.getState().walletType;return yield Ke({chainInfo:e.chainInfo,walletType:(r=e.walletType)!=null?r:t}),yield Z({chainId:e.chainInfo.chainId,walletType:e.walletType,autoReconnect:e.autoReconnect})});var ht=e=>(u.setState(t=>({iframeOptions:e.iframeOptions||t.iframeOptions,walletConnect:e.walletConnect||t.walletConnect,walletType:e.defaultWallet||t.walletType,capsuleConfig:e.capsuleConfig||t.capsuleConfig,walletDefaultOptions:e.walletDefaultOptions||t.walletDefaultOptions,chains:e.chains,chainsConfig:e.chainsConfig||t.chainsConfig,multiChainFetchConcurrency:e.multiChainFetchConcurrency||t.multiChainFetchConcurrency,_notFoundFn:e.onNotFound||t._notFoundFn,_onReconnectFailed:e.onReconnectFailed||t._onReconnectFailed,_reconnect:e.autoReconnect===void 0?!0:e.autoReconnect||t._reconnect})),e);var At=a=>l(void 0,[a],function*({signingClient:e,senderAddress:t,recipientAddress:i,amount:r,fee:o,memo:n}){if(!e)throw new Error("No connected account detected");if(!t)throw new Error("senderAddress is not defined");return e.sendTokens(t,i,r,o,n)}),It=w=>l(void 0,[w],function*({signingClient:e,senderAddress:t,recipientAddress:i,transferAmount:r,sourcePort:o,sourceChannel:n,timeoutHeight:a,timeoutTimestamp:s,fee:c,memo:d}){if(!e)throw new Error("Stargate signing client is not ready");if(!t)throw new Error("senderAddress is not defined");return e.sendIbcTokens(t,i,r,o,n,a,s,c,d)}),Ot=s=>l(void 0,[s],function*({signingClient:e,senderAddress:t,msg:i,fee:r,options:o,label:n,codeId:a}){if(!e)throw new Error("CosmWasm signing client is not ready");return e.instantiate(t,a,i,n,r,o)}),Et=s=>l(void 0,[s],function*({signingClient:e,senderAddress:t,msg:i,fee:r,contractAddress:o,funds:n,memo:a}){if(!e)throw new Error("CosmWasm signing client is not ready");return e.execute(t,o,i,r,a,n)}),bt=(e,t,i)=>l(void 0,null,function*(){if(!i)throw new Error("CosmWasm client is not ready");return yield i.queryContractSmart(e,t)}),Tt=(e,t,i)=>{if(!i)throw new Error("CosmWasm client is not ready");let r=new TextEncoder().encode(t);return i.queryContractRaw(e,r)};var _r=e=>e,Nr=e=>e;var Ae=e=>e?Object.keys(e).length===0:!0;var De=class extends Error{constructor(t){super(),this.name="AbortError",this.message=t;}},Mt=e=>globalThis.DOMException===void 0?new De(e):new DOMException(e),xt=e=>{let t=e.reason===void 0?Mt("This operation was aborted."):e.reason;return t instanceof Error?t:Mt(t)};function _e(n,a){return l(this,arguments,function*(e,t,{concurrency:i=Number.POSITIVE_INFINITY,stopOnError:r=!0,signal:o}={}){return new Promise((s,c)=>{if(e[Symbol.iterator]===void 0&&e[Symbol.asyncIterator]===void 0)throw new TypeError(`Expected \`input\` to be either an \`Iterable\` or \`AsyncIterable\`, got (${typeof e})`);if(typeof t!="function")throw new TypeError("Mapper function is required");if(!((Number.isSafeInteger(i)||i===Number.POSITIVE_INFINITY)&&i>=1))throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${i}\` (${typeof i})`);let d=[],w=[],f=new Map,g=!1,O=!1,C=!1,A=0,T=0,E=e[Symbol.iterator]===void 0?e[Symbol.asyncIterator]():e[Symbol.iterator](),m=S=>{g=!0,O=!0,c(S);};o&&(o.aborted&&m(xt(o)),o.addEventListener("abort",()=>{m(xt(o));}));let p=()=>l(this,null,function*(){if(O)return;let S=yield E.next(),P=T;if(T++,S.done){if(C=!0,A===0&&!O){if(!r&&w.length>0){m(new AggregateError(w));return}if(O=!0,f.size===0){s(d);return}let K=[];for(let[_,te]of d.entries())f.get(_)!==kt&&K.push(te);s(K);}return}A++,l(this,null,function*(){try{let K=yield S.value;if(O)return;let _=yield t(K,P);_===kt&&f.set(P,_),d[P]=_,A--,yield p();}catch(K){if(r)m(K);else {w.push(K),A--;try{yield p();}catch(_){m(_);}}}});});l(this,null,function*(){for(let S=0;S<i;S++){try{yield p();}catch(P){m(P);break}if(C||g)break}});})})}var kt=Symbol("skip");var F=({chainId:e,multiChain:t})=>{let i=u(o=>o.chains);if(!i)throw new Error("No chains found in GrazProvider");let r=typeof e=="string"?[e]:e;switch(!0){case(!!t&&!!r):return r.map(o=>i.find(n=>n.chainId===o)).filter(Boolean);case(!t&&!!r):return [r.map(o=>i.find(n=>n.chainId===o)).filter(Boolean)[0]];case(!!t&&!r):return i;default:return [i[0]]}},z=(e,t,i)=>l(void 0,null,function*(){let r=u.getState().multiChainFetchConcurrency;if(e){let n=yield _e(t,i,{concurrency:r});return Object.fromEntries(n.map((a,s)=>[t[s].chainId,a]))}return yield i(t[0])}),vt=(e,t,i)=>{if(e){let o=t.map(i);return Object.fromEntries(o.map((n,a)=>[t[a].chainId,n]))}return i(t[0])};var Le=e=>{let t=F({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),i=useMemo(()=>["USE_STARGATE_CLIENT",t],[t]);return useQuery({queryKey:i,queryFn:o=>l(void 0,[o],function*({queryKey:[,r]}){if(r.length<1)throw new Error("No chains found");return yield z(!!(e!=null&&e.multiChain),r,a=>l(void 0,null,function*(){var w;let s=(w=u.getState().chainsConfig)==null?void 0:w[a.chainId],c={url:a.rpc,headers:v({},(s==null?void 0:s.rpcHeaders)||{})};return yield StargateClient.connect(c)}))}),enabled:!!t&&t.length>0&&((e==null?void 0:e.enabled)!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})},Ue=e=>{let t=F({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),i=useMemo(()=>["USE_COSMWASM_CLIENT",t],[t]);return useQuery({queryKey:i,queryFn:o=>l(void 0,[o],function*({queryKey:[,r]}){if(r.length<1)throw new Error("No chains found");return yield z(!!(e!=null&&e.multiChain),r,a=>l(void 0,null,function*(){var w;let s=(w=u.getState().chainsConfig)==null?void 0:w[a.chainId],c={url:a.rpc,headers:v({},(s==null?void 0:s.rpcHeaders)||{})};return yield CosmWasmClient.connect(c)}))}),enabled:!!t&&t.length>0&&((e==null?void 0:e.enabled)!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})},Ie=({type:e,chainId:t,multiChain:i,enabled:r})=>{let o=F({chainId:t,multiChain:i}),n=useMemo(()=>["USE_TENDERMINT_CLIENT",e,o],[e,o]);return useQuery({queryKey:n,queryFn:c=>l(void 0,[c],function*({queryKey:[,a,s]}){if(s.length<1)throw new Error("No chains found");return yield z(!!i,s,w=>l(void 0,null,function*(){var A;let f=(A=u.getState().chainsConfig)==null?void 0:A[w.chainId],g={url:w.rpc,headers:v({},(f==null?void 0:f.rpcHeaders)||{})};return yield (a==="tm37"?Tendermint37Client:Tendermint34Client).connect(g)}))}),enabled:!!o&&o.length>0&&(r!==void 0?!!r:!0),refetchOnWindowFocus:!1})};var us=()=>u(e=>({walletType:e.walletType,isCosmostation:e.walletType==="cosmostation",isCosmostationMobile:e.walletType==="wc_cosmostation_mobile",isKeplr:e.walletType==="keplr",isKeplrMobile:e.walletType==="wc_keplr_mobile",isLeap:e.walletType==="leap",isLeapMobile:e.walletType==="wc_leap_mobile",isVectis:e.walletType==="vectis",isWalletConnect:e.walletType==="walletconnect",isMetamaskSnapLeap:e.walletType==="metamask_snap_leap",isStation:e.walletType==="station",isCapsule:e.walletType==="capsule",isCosmiframe:e.walletType==="cosmiframe",isCactusCosmos:e.walletType==="cactuscosmos"}),shallow),Oe=e=>{let i=["USE_CHECK_WALLET",u(o=>e||o.walletType)];return useQuery({queryKey:i,queryFn:({queryKey:[,o]})=>L(o)})};var ee=e=>{let t=u(s=>s.walletType),i=y(s=>s.activeChainIds),r=F({chainId:e!=null&&e.chainId?e.chainId:i||void 0,multiChain:e==null?void 0:e.multiChain}),o=y(s=>s.accounts),n=y(s=>s.status);return useEffect(()=>y.subscribe(s=>s.status,(s,c)=>{var d,w,f;if(s==="connected"){let{accounts:g,activeChainIds:O}=y.getState(),{chains:C}=u.getState(),{walletType:A}=u.getState();if(!g||!O||!C)return (d=e==null?void 0:e.onDisconnect)==null?void 0:d.call(e);(w=e==null?void 0:e.onConnect)==null||w.call(e,{accounts:g,chains:O.map(T=>C.find(E=>E.chainId===T)),walletType:A,isReconnect:c==="reconnecting"});}s==="disconnected"&&((f=e==null?void 0:e.onDisconnect)==null||f.call(e));}),[e]),{data:useMemo(()=>o?vt(!!(e!=null&&e.multiChain),r,s=>o[s.chainId]):void 0,[o,r,e==null?void 0:e.multiChain]),isConnected:n==="connected",isConnecting:n==="connecting",isDisconnected:n==="disconnected",isReconnecting:n==="reconnecting",isLoading:n==="connecting"||n==="reconnecting",walletType:n==="connected"?t:void 0,reconnect:U,status:n}},In=e=>{let t=F({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),{data:i}=ee(),r=(e==null?void 0:e.bech32Address)||(i==null?void 0:i.bech32Address),{data:o}=Le({chainId:t.map(a=>a.chainId),multiChain:!0,enabled:((e==null?void 0:e.enabled)===void 0?!0:e.enabled)&&!!r}),n=useMemo(()=>["USE_ALL_BALANCES",o,t,r,e==null?void 0:e.chainId],[r,e==null?void 0:e.chainId,t,o]);return useQuery({queryKey:n,queryFn:d=>l(void 0,[d],function*({queryKey:[,a,s,c]}){if(!c)throw new Error("address is not defined");return yield z(!!(e!=null&&e.multiChain),s,f=>l(void 0,null,function*(){var C;let g=a==null?void 0:a[f.chainId];if(!g)throw new Error(`Client is not ready ${f.chainId}`);if(!((C=f.bech32Config)!=null&&C.bech32PrefixAccAddr))throw new Error(`Bech32Config is missing ${f.chainId}`);return yield g.getAllBalances(toBech32(f.bech32Config.bech32PrefixAccAddr,fromBech32(c).data))}))}),enabled:!!r&&!!t&&t.length>0&&!Ae(o)&&((e==null?void 0:e.enabled)===void 0?!0:e.enabled),refetchOnMount:!1,refetchOnReconnect:!0,refetchOnWindowFocus:!1})},Os=e=>{let t=F({chainId:e.chainId}),{data:i}=ee({chainId:e.chainId}),r=e.bech32Address||(i==null?void 0:i.bech32Address),{data:o,refetch:n}=In({chainId:t.map(c=>c.chainId),bech32Address:r,enabled:!!r&&(e.enabled===void 0?!0:e.enabled)}),a=["USE_BALANCE",e.denom,o,t,r,e.chainId],s=useQuery({queryKey:a,queryFn:({queryKey:[,c,d]})=>d==null?void 0:d.find(w=>w.denom===c),enabled:!!e.denom&&!!o&&!!(o!=null&&o.length)&&(e.enabled===void 0?!0:e.enabled)});return G(v({},s),{refetch:c=>l(void 0,null,function*(){return yield n(),s.refetch(c)})})},Es=({onError:e,onLoading:t,onSuccess:i}={})=>{let o=useMutation({mutationKey:["USE_CONNECT",e,t,i],mutationFn:Z,onError:(a,s)=>e==null?void 0:e(a,s),onMutate:t,onSuccess:a=>Promise.resolve(i==null?void 0:i(a))}),{data:n}=Oe();return {connect:a=>o.mutate(a),connectAsync:a=>o.mutateAsync(a),error:o.error,isLoading:o.isPending,isSuccess:o.isSuccess,isSupported:!!n,status:o.status}},bs=({onError:e,onLoading:t,onSuccess:i}={})=>{let o=useMutation({mutationKey:["USE_DISCONNECT",e,t,i],mutationFn:se,onError:n=>Promise.resolve(e==null?void 0:e(n,void 0)),onMutate:t,onSuccess:()=>Promise.resolve(i==null?void 0:i(void 0))});return {disconnect:n=>o.mutate(n),disconnectAsync:n=>o.mutateAsync(n),error:o.error,isLoading:o.isPending,isSuccess:o.isSuccess,status:o.status}},Ts=e=>{let t=F({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),i=u(o=>o.walletType),r=useMemo(()=>["USE_OFFLINE_SIGNERS",t,i],[t,i]);return useQuery({queryKey:r,queryFn:a=>l(void 0,[a],function*({queryKey:[,o,n]}){if(o.length<1)throw new Error("No chain found");if(!L(n))throw new Error(`${n} is not available`);return yield z(!!(e!=null&&e.multiChain),o,d=>l(void 0,null,function*(){return yield St({chainId:d.chainId,walletType:n})}))}),enabled:!!t&&t.length>0&&!!i,refetchOnWindowFocus:!1})},Ms=e=>{let t=F({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),{data:i}=ee(),{data:r}=Le({chainId:t.map(a=>a.chainId),multiChain:!0}),o=(e==null?void 0:e.bech32Address)||(i==null?void 0:i.bech32Address),n=useMemo(()=>["USE_BALANCE_STAKED",r,t,o],[t,o,r]);return useQuery({queryKey:n,queryFn:d=>l(void 0,[d],function*({queryKey:[,a,s,c]}){if(!c)throw new Error("address is not defined");return yield z(!!(e!=null&&e.multiChain),s,f=>l(void 0,null,function*(){var O,C;if(!a)throw new Error("Client is not ready");if(!((O=f.bech32Config)!=null&&O.bech32PrefixAccAddr))throw new Error(`Bech32Config is missing ${f.chainId}`);return yield (C=a[f.chainId])==null?void 0:C.getBalanceStaked(toBech32(f.bech32Config.bech32PrefixAccAddr,fromBech32(c).data))}))}),enabled:!!o&&!!t&&t.length>0&&!!r,refetchOnMount:!1,refetchOnReconnect:!0,refetchOnWindowFocus:!1})};var Ks=()=>{let e=u(r=>r.capsuleState),t=y(r=>r.capsuleClient),i=ue();return {setModalState:r=>{u.setState(o=>{var n;return {capsuleState:{showModal:r,chainId:(n=o.capsuleState)==null?void 0:n.chainId}}});},modalState:!!(e!=null&&e.showModal),client:t,onAfterLoginSuccessful:i.onAfterLoginSuccessful,onLoginFailure:()=>{se();}}};var Fs=()=>y(e=>e.activeChainIds),On=()=>{var e;return (e=y(t=>t.activeChainIds))==null?void 0:e.map(t=>{var r;let i=(r=u.getState().chains)==null?void 0:r.find(o=>o.chainId===t);if(i)return i}).filter(Boolean)},qs=({chainId:e})=>{var t;return (t=u().chains)==null?void 0:t.find(i=>i.chainId===e)},Gs=({chainId:e})=>{var t;return (t=u().chains)==null?void 0:t.filter(i=>e==null?void 0:e.includes(i.chainId))},zs=({denom:e})=>{let t=On();return useQuery({queryKey:["USE_ACTIVE_CHAIN_CURRENCY",e],queryFn:({queryKey:[,o]})=>{var n;return (n=t==null?void 0:t.find(a=>a.currencies.find(s=>s.coinMinimalDenom===o)))==null?void 0:n.currencies.find(a=>a)}})},Qs=e=>{var o;let t=(o=e.status)!=null?o:"BOND_STATUS_BONDED",i=["USE_ACTIVE_CHAIN_VALIDATORS",e.queryClient,t];return useQuery({queryKey:i,queryFn:s=>l(void 0,[s],function*({queryKey:[,n,a]}){if(!n)throw new Error("Query client is not defined");return yield n.staking.validators(a)}),enabled:typeof e.queryClient!="undefined"})},js=()=>({data:u(t=>t.recentChainIds),clear:Re}),$s=()=>{var t;return {data:(t=u(i=>i.recentChainIds))==null?void 0:t.map(i=>{var o;let r=(o=u.getState().chains)==null?void 0:o.find(n=>n.chainId===i);if(r)return r}).filter(Boolean),clear:Re}},Vs=({onError:e,onLoading:t,onSuccess:i}={})=>{let o=useMutation({mutationKey:["USE_SUGGEST_CHAIN",e,t,i],mutationFn:Ke,onError:(n,a)=>Promise.resolve(e==null?void 0:e(n,a.chainInfo)),onMutate:n=>t==null?void 0:t(n.chainInfo),onSuccess:n=>Promise.resolve(i==null?void 0:i(n))});return {error:o.error,isLoading:o.isPending,isSuccess:o.isSuccess,suggest:o.mutate,suggestAsync:o.mutateAsync,status:o.status}},Hs=({onError:e,onLoading:t,onSuccess:i}={})=>{let o=useMutation({mutationKey:["USE_SUGGEST_CHAIN_AND_CONNECT",e,t,i],mutationFn:wt,onError:(a,s)=>Promise.resolve(e==null?void 0:e(a,s)),onMutate:a=>t==null?void 0:t(a),onSuccess:a=>Promise.resolve(i==null?void 0:i(a))}),{data:n}=Oe();return {error:o.error,isLoading:o.isPending,isSuccess:o.isSuccess,isSupported:!!n,status:o.status,suggestAndConnect:o.mutate,suggestAndConnectAsync:o.mutateAsync}};var ia=({onError:e,onLoading:t,onSuccess:i}={})=>{let{data:r}=ee(),o=r==null?void 0:r.bech32Address,n=useMutation({mutationKey:["USE_SEND_TOKENS",e,t,i,o],mutationFn:a=>At(v({senderAddress:o},a)),onError:(a,s)=>Promise.resolve(e==null?void 0:e(a,s)),onMutate:t,onSuccess:a=>Promise.resolve(i==null?void 0:i(a))});return {error:n.error,isLoading:n.isPending,isSuccess:n.isSuccess,sendTokens:n.mutate,sendTokensAsync:n.mutateAsync,status:n.status}},oa=({onError:e,onLoading:t,onSuccess:i}={})=>{let{data:r}=ee(),o=r==null?void 0:r.bech32Address,n=useMutation({mutationKey:["USE_SEND_IBC_TOKENS",e,t,i,o],mutationFn:a=>It(v({senderAddress:o},a)),onError:(a,s)=>Promise.resolve(e==null?void 0:e(a,s)),onMutate:t,onSuccess:a=>Promise.resolve(i==null?void 0:i(a))});return {error:n.error,isLoading:n.isPending,isSuccess:n.isSuccess,sendIbcTokens:n.mutate,sendIbcTokensAsync:n.mutateAsync,status:n.status}},ra=({codeId:e,onError:t,onLoading:i,onSuccess:r})=>{let{data:o}=ee(),n=o==null?void 0:o.bech32Address,s=useMutation({mutationKey:["USE_INSTANTIATE_CONTRACT",t,i,r,e,n],mutationFn:c=>{var w;if(!n)throw new Error("senderAddress is undefined");let d=G(v({},c),{fee:(w=c.fee)!=null?w:"auto",senderAddress:n,codeId:e});return Ot(d)},onError:(c,d)=>Promise.resolve(t==null?void 0:t(c,d)),onMutate:i,onSuccess:c=>Promise.resolve(r==null?void 0:r(c))});return {error:s.error,isLoading:s.isPending,isSuccess:s.isSuccess,instantiateContract:s.mutate,instantiateContractAsync:s.mutateAsync,status:s.status}},sa=({contractAddress:e,onError:t,onLoading:i,onSuccess:r})=>{let{data:o}=ee(),n=o==null?void 0:o.bech32Address,s=useMutation({mutationKey:["USE_EXECUTE_CONTRACT",t,i,r,e,n],mutationFn:c=>{var w,f,g;if(!n)throw new Error("senderAddress is undefined");let d=G(v({},c),{fee:(w=c.fee)!=null?w:"auto",senderAddress:n,contractAddress:e,memo:(f=c.memo)!=null?f:"",funds:(g=c.funds)!=null?g:[]});return Et(d)},onError:(c,d)=>Promise.resolve(t==null?void 0:t(c,d)),onMutate:i,onSuccess:c=>Promise.resolve(r==null?void 0:r(c))});return {error:s.error,isLoading:s.isPending,isSuccess:s.isSuccess,executeContract:s.mutate,executeContractAsync:s.mutateAsync,status:s.status}},aa=e=>{let{data:t}=Ue();return useQuery({queryKey:["USE_QUERY_SMART",e==null?void 0:e.address,e==null?void 0:e.queryMsg,t],queryFn:({queryKey:[,r]})=>{if(!(e!=null&&e.address)||!e.queryMsg)throw new Error("address or queryMsg undefined");return bt(e.address,e.queryMsg,t)},enabled:!!(e!=null&&e.address)&&!!(e!=null&&e.queryMsg)&&!!t})},ca=e=>{let{data:t}=Ue(),i=["USE_QUERY_RAW",e==null?void 0:e.key,e==null?void 0:e.address,t];return useQuery({queryKey:i,queryFn:({queryKey:[,o]})=>{if(!(e!=null&&e.address)||!e.key)throw new Error("address or key undefined");return Tt(e.address,e.key,t)},enabled:!!(e!=null&&e.address)&&!!(e!=null&&e.key)&&!!t})};function Aa(e){let t=F({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),i=u(n=>n.walletType),r=y(n=>n.activeChainIds),o=useMemo(()=>["USE_STARGATE_SIGNING_CLIENT",t,i,e,r],[r,e,t,i]);return useQuery({queryKey:o,queryFn:s=>l(this,[s],function*({queryKey:[,n,a]}){if(n.length<1)throw new Error("No chains found");return yield z(!!(e!=null&&e.multiChain),n,d=>l(this,null,function*(){var A,T;if(!(r!=null&&r.includes(d.chainId)))return null;if(!L(a))throw new Error(`${a} is not available`);let f=yield (()=>l(this,null,function*(){switch(e==null?void 0:e.offlineSigner){case"offlineSigner":return D(a).getOfflineSigner(d.chainId);case"offlineSignerAuto":return D(a).getOfflineSignerAuto(d.chainId);case"offlineSignerOnlyAmino":return D(a).getOfflineSignerOnlyAmino(d.chainId);default:return D(a).getOfflineSignerAuto(d.chainId)}}))(),g=(A=u.getState().chainsConfig)==null?void 0:A[d.chainId],O={url:d.rpc,headers:v({},(g==null?void 0:g.rpcHeaders)||{})};return (e==null?void 0:e.multiChain)===!0&&e.opts,yield SigningStargateClient.connectWithSigner(O,f,e!=null&&e.multiChain?(T=e.opts)==null?void 0:T[d.chainId]:e==null?void 0:e.opts)}))}),enabled:!!t&&t.length>0&&!!i&&((e==null?void 0:e.enabled)!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}function Ia(e){let t=F({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),i=u(n=>n.walletType),r=y(n=>n.activeChainIds),o=useMemo(()=>["USE_COSMWASM_SIGNING_CLIENT",t,i,e,r],[r,e,t,i]);return useQuery({queryKey:o,queryFn:s=>l(this,[s],function*({queryKey:[,n,a]}){if(n.length<1)throw new Error("No chains found");return yield z(!!(e!=null&&e.multiChain),n,d=>l(this,null,function*(){var T,E;if(!(r!=null&&r.includes(d.chainId)))return null;if(!L(a))throw new Error(`${a} is not available`);let f=yield (()=>l(this,null,function*(){switch(e==null?void 0:e.offlineSigner){case"offlineSigner":return D(a).getOfflineSigner(d.chainId);case"offlineSignerAuto":return D(a).getOfflineSignerAuto(d.chainId);case"offlineSignerOnlyAmino":return D(a).getOfflineSignerOnlyAmino(d.chainId);default:return D(a).getOfflineSignerAuto(d.chainId)}}))(),g=(T=u.getState().chainsConfig)==null?void 0:T[d.chainId],O={url:d.rpc,headers:v({},(g==null?void 0:g.rpcHeaders)||{})},C=g!=null&&g.gas?GasPrice.fromString(`${g.gas.price}${g.gas.denom}`):void 0;return yield SigningCosmWasmClient.connectWithSigner(O,f,v({gasPrice:C},e!=null&&e.multiChain?(E=e.opts)==null?void 0:E[d.chainId]:(e==null?void 0:e.opts)||{}))}))}),enabled:!!t&&t.length>0&&!!i&&((e==null?void 0:e.enabled)!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}function Oa(e){let t=F({chainId:e.chainId,multiChain:e.multiChain}),i=u(a=>a.walletType),r=y(a=>a.activeChainIds),o=useMemo(()=>["USE_STARGATE_TM_SIGNING_CLIENT",t,i,e,r],[r,e,t,i]),{data:n}=Ie({type:e.type,chainId:e.chainId,multiChain:e.multiChain});return useQuery({queryKey:o,queryFn:c=>l(this,[c],function*({queryKey:[,a,s]}){if(a.length<1)throw new Error("No chains found");return yield z(!!e.multiChain,a,w=>l(this,null,function*(){var A;if(!(r!=null&&r.includes(w.chainId)))return null;if(!L(s))throw new Error(`${s} is not available`);if(!n)throw new Error("No tendermint client found");let g=yield (()=>l(this,null,function*(){switch(e.offlineSigner){case"offlineSigner":return D(s).getOfflineSigner(w.chainId);case"offlineSignerAuto":return D(s).getOfflineSignerAuto(w.chainId);case"offlineSignerOnlyAmino":return D(s).getOfflineSignerOnlyAmino(w.chainId);default:return D(s).getOfflineSignerAuto(w.chainId)}}))(),O=e.multiChain?n[w.chainId]:n;return yield SigningStargateClient.createWithSigner(O,g,e.multiChain?(A=e.opts)==null?void 0:A[w.chainId]:e.opts)}))}),enabled:!!t&&t.length>0&&!!i&&!!n&&(e.enabled!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}function Ea(e){let t=F({chainId:e.chainId,multiChain:e.multiChain}),i=u(s=>s.walletType),r=y(s=>s.activeChainIds),o=useMemo(()=>["USE_COSMWASM_TM_SIGNING_CLIENT",t,i,e,r],[r,e,t,i]),{data:n}=Ie({type:e.type,chainId:e.chainId,multiChain:!1,enabled:!e.multiChain}),{data:a}=Ie({type:e.type,chainId:e.chainId,multiChain:!0,enabled:!!e.multiChain});return useQuery({queryKey:o,queryFn:d=>l(this,[d],function*({queryKey:[,s,c]}){if(s.length<1)throw new Error("No chains found");return yield z(!!e.multiChain,s,f=>l(this,null,function*(){var m,p;if(!(r!=null&&r.includes(f.chainId)))return null;if(!L(c))throw new Error(`${c} is not available`);let O=yield (()=>l(this,null,function*(){switch(e.offlineSigner){case"offlineSigner":return D(c).getOfflineSigner(f.chainId);case"offlineSignerAuto":return D(c).getOfflineSignerAuto(f.chainId);case"offlineSignerOnlyAmino":return D(c).getOfflineSignerOnlyAmino(f.chainId);default:return D(c).getOfflineSignerAuto(f.chainId)}}))(),C=(m=u.getState().chainsConfig)==null?void 0:m[f.chainId],A=C!=null&&C.gas?GasPrice.fromString(`${C.gas.price}${C.gas.denom}`):void 0,T=e.multiChain?a==null?void 0:a[f.chainId]:n;if(!T)throw new Error("No tendermint client found");return yield SigningCosmWasmClient.createWithSigner(T,O,v({gasPrice:A},e.multiChain?(p=e.opts)==null?void 0:p[f.chainId]:e.opts||{}))}))}),enabled:!!t&&t.length>0&&!!i&&(!!n||!Ae(a))&&(e.enabled!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}var Ut=({children:e})=>{let[t,i]=useState(!1);return useEffect(()=>{i(!0);},[]),jsx(Fragment,{children:t?e:null})};var kn=()=>{let e=typeof window!="undefined"&&window.sessionStorage.getItem(J)==="Active",{_reconnect:t,_onReconnectFailed:i,_reconnectConnector:r,iframeOptions:o,chains:n}=u(),{activeChainIds:a,wcSignClients:s}=y(),c=L(r||void 0);return useEffect(()=>{if(!o||o.autoConnect===!1||!o.allowedIframeParentOrigins.length||!n)return;new Cosmiframe(o.allowedIframeParentOrigins).isReady().then(w=>{if(w)return Z({chainId:n.map(f=>f.chainId),walletType:"cosmiframe"})});},[o]),useEffect(()=>{if(r){if(!c)return;e&&a?U({onError:i}):!e&&t&&U({onError:i});}},[c]),useEffect(()=>{var d,w,f,g,O,C,A,T,E,m,p,S,P,K,_,te,oe,h,I,b,k,W;if(r){if(!c)return;r==="cosmostation"&&((w=(d=de()).subscription)==null||w.call(d,()=>{U({onError:i});})),r==="keplr"&&((g=(f=fe()).subscription)==null||g.call(f,()=>{U({onError:i});})),r==="cactuscosmos"&&((C=(O=le()).subscription)==null||C.call(O,()=>{U({onError:i});})),r==="leap"&&((T=(A=ge()).subscription)==null||T.call(A,()=>{U({onError:i});})),r==="compass"&&((m=(E=pe()).subscription)==null||m.call(E,()=>{U({onError:i});})),r==="vectis"&&((S=(p=we()).subscription)==null||S.call(p,()=>{U({onError:i});})),r==="walletconnect"&&s.has("walletconnect")&&((K=(P=j()).subscription)==null||K.call(P,()=>{U({onError:i});})),r==="station"&&((te=(_=Se()).subscription)==null||te.call(_,()=>{U({onError:i});})),r==="xdefi"&&((h=(oe=he()).subscription)==null||h.call(oe,()=>{U({onError:i});})),r==="cosmiframe"&&((b=(I=me()).subscription)==null||b.call(I,()=>{U({onError:i});})),r==="okx"&&((W=(k=Ce()).subscription)==null||W.call(k,()=>{U({onError:i});}));}},[r,s,c]),null},Ft=()=>(kn(),null);var tc=({children:e,grazOptions:t})=>(useEffect(()=>{ht(t);},[t]),jsxs(Ut,{children:[e,jsx(Ft,{})]}));
20
20
 
21
- export { Ut as GrazEvents, $a as GrazProvider, Ve as WALLET_TYPES, $e as WalletType, L as checkWallet, We as clearRecentChain, B as clearSession, ht as configureGraz, Z as connect, vr as defineChainInfo, kr as defineChains, re as disconnect, Et as executeContract, or as getAvailableWallets, Cr as getChainInfo, hr as getChainInfos, pe as getCosmostation, me as getKeplr, de as getLeap, at as getMetamaskSnapLeap, St as getOfflineSigners, bt as getQueryRaw, Ot as getQuerySmart, yr as getRecentChainIds, Sr as getRecentChains, Se as getVectis, mt as getWCCosmostation, dt as getWCKeplr, ft as getWCLeap, _ as getWallet, Q as getWalletConnect, It as instantiateContract, ve as isCapsule, yt as isLeapDappBrowser, gt as isLeapSnaps, Pe as isWalletConnect, U as reconnect, At as sendIbcTokens, wt as sendTokens, Re as suggestChain, Ct as suggestChainAndConnect, ee as useAccount, Ns as useActiveChainCurrency, Ks as useActiveChainIds, In as useActiveChains, is as useActiveWalletType, ys as useBalance, ws as useBalanceStaked, An as useBalances, xs as useCapsule, Ds as useChainInfo, _s as useChainInfos, Ae as useCheckWallet, Ss as useConnect, Le as useCosmWasmClient, ga as useCosmWasmSigningClient, Sa as useCosmWasmTmSigningClient, Cs as useDisconnect, Zs as useExecuteContract, Mn as useGrazEvents, Js as useInstantiateContract, hs as useOfflineSigners, Bs as useQueryClientValidators, ta as useQueryRaw, ea as useQuerySmart, Ls as useRecentChainIds, Us as useRecentChains, Ys as useSendIbcTokens, Xs as useSendTokens, Be as useStargateClient, fa as useStargateSigningClient, ya as useStargateTmSigningClient, Fs as useSuggestChain, qs as useSuggestChainAndConnect, we as useTendermintClient };
21
+ export { Ft as GrazEvents, tc as GrazProvider, He as WALLET_TYPES, Ve as WalletType, L as checkWallet, Re as clearRecentChain, B as clearSession, ht as configureGraz, Z as connect, Nr as defineChainInfo, _r as defineChains, se as disconnect, Et as executeContract, pr as getAvailableWallets, le as getCactusCosmos, br as getChainInfo, Tr as getChainInfos, de as getCosmostation, fe as getKeplr, ge as getLeap, ct as getMetamaskSnapLeap, St as getOfflineSigners, Tt as getQueryRaw, bt as getQuerySmart, Or as getRecentChainIds, Er as getRecentChains, we as getVectis, dt as getWCCosmostation, ft as getWCKeplr, gt as getWCLeap, D as getWallet, j as getWalletConnect, Ot as instantiateContract, We as isCapsule, Ct as isLeapDappBrowser, yt as isLeapSnaps, re as isWalletConnect, U as reconnect, It as sendIbcTokens, At as sendTokens, Ke as suggestChain, wt as suggestChainAndConnect, ee as useAccount, zs as useActiveChainCurrency, Fs as useActiveChainIds, On as useActiveChains, us as useActiveWalletType, Os as useBalance, Ms as useBalanceStaked, In as useBalances, Ks as useCapsule, qs as useChainInfo, Gs as useChainInfos, Oe as useCheckWallet, Es as useConnect, Ue as useCosmWasmClient, Ia as useCosmWasmSigningClient, Ea as useCosmWasmTmSigningClient, bs as useDisconnect, sa as useExecuteContract, kn as useGrazEvents, ra as useInstantiateContract, Ts as useOfflineSigners, Qs as useQueryClientValidators, ca as useQueryRaw, aa as useQuerySmart, js as useRecentChainIds, $s as useRecentChains, oa as useSendIbcTokens, ia as useSendTokens, Le as useStargateClient, Aa as useStargateSigningClient, Oa as useStargateTmSigningClient, Vs as useSuggestChain, Hs as useSuggestChainAndConnect, Ie as useTendermintClient };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "graz",
3
3
  "description": "React hooks for Cosmos",
4
- "version": "0.2.5",
4
+ "version": "0.2.7",
5
5
  "author": "Griko Nibras <griko@strange.love>",
6
6
  "repository": "https://github.com/graz-sh/graz.git",
7
7
  "homepage": "https://github.com/graz-sh/graz",
@@ -33,6 +33,14 @@
33
33
  "env.d.ts"
34
34
  ],
35
35
  "sideEffects": false,
36
+ "scripts": {
37
+ "build": "tsup",
38
+ "clean": "rm -rf dist/*",
39
+ "cli": "node dist/cli.js",
40
+ "dev": "tsup --watch",
41
+ "lint": "eslint --fix \"src/**/*.{ts,tsx}\"",
42
+ "prepublishOnly": "pnpm build"
43
+ },
36
44
  "peerDependencies": {
37
45
  "@leapwallet/cosmos-social-login-capsule-provider": "^0.0.41",
38
46
  "@tanstack/react-query": ">=5.62.0",
@@ -77,12 +85,5 @@
77
85
  "graz-sh",
78
86
  "use-keplr"
79
87
  ],
80
- "license": "MIT",
81
- "scripts": {
82
- "build": "tsup",
83
- "clean": "rm -rf dist/*",
84
- "cli": "node dist/cli.js",
85
- "dev": "tsup --watch",
86
- "lint": "eslint --fix \"src/**/*.{ts,tsx}\""
87
- }
88
- }
88
+ "license": "MIT"
89
+ }
package/types/global.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  import type Station from "@terra-money/station-connector";
2
2
 
3
3
  import type { InitiaWallet } from "../src/actions/wallet/initia";
4
+ import { CactusCosmosWallet } from "../src/actions/wallet/cactus";
4
5
 
5
6
  type KeplrWindow = import("@keplr-wallet/types").Window;
6
7
  type VectisWindow = import("@vectis/extension-client").VectisWindow;
@@ -9,6 +10,7 @@ declare global {
9
10
  interface Window extends KeplrWindow, VectisWindow {
10
11
  leap?: KeplrWindow["keplr"];
11
12
  compass?: KeplrWindow["keplr"];
13
+ cactuslink_cosmos?: CactusCosmosWallet;
12
14
  cosmostation?: {
13
15
  cosmos: {
14
16
  on: (type: string, listener: EventListenerOrEventListenerObject) => void;