graz 0.1.1 → 0.1.2

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/index.d.mts CHANGED
@@ -34,6 +34,7 @@ declare const WALLET_TYPES: WalletType[];
34
34
  type Wallet = Pick<Keplr, "enable" | "getKey" | "getOfflineSigner" | "getOfflineSignerAuto" | "getOfflineSignerOnlyAmino" | "experimentalSuggestChain" | "signDirect" | "signAmino"> & {
35
35
  subscription?: (reconnect: () => void) => () => void;
36
36
  init?: () => Promise<unknown>;
37
+ disable?: (chainIds?: string | undefined) => Promise<void>;
37
38
  };
38
39
  type SignDirectParams = Parameters<Wallet["signDirect"]>;
39
40
  type SignAminoParams = Parameters<Wallet["signAmino"]>;
package/dist/index.d.ts CHANGED
@@ -34,6 +34,7 @@ declare const WALLET_TYPES: WalletType[];
34
34
  type Wallet = Pick<Keplr, "enable" | "getKey" | "getOfflineSigner" | "getOfflineSignerAuto" | "getOfflineSignerOnlyAmino" | "experimentalSuggestChain" | "signDirect" | "signAmino"> & {
35
35
  subscription?: (reconnect: () => void) => () => void;
36
36
  init?: () => Promise<unknown>;
37
+ disable?: (chainIds?: string | undefined) => Promise<void>;
37
38
  };
38
39
  type SignDirectParams = Parameters<Wallet["signDirect"]>;
39
40
  type SignAminoParams = Parameters<Wallet["signAmino"]>;
package/dist/index.js CHANGED
@@ -3,7 +3,7 @@
3
3
  var encoding = require('@cosmjs/encoding');
4
4
  var zustand = require('zustand');
5
5
  var middleware = require('zustand/middleware');
6
- var Pt = require('long');
6
+ var Bt = require('long');
7
7
  var signClient = require('@walletconnect/sign-client');
8
8
  var utils = require('@walletconnect/utils');
9
9
  var reactQuery = require('@tanstack/react-query');
@@ -16,74 +16,74 @@ var jsxRuntime = require('react/jsx-runtime');
16
16
 
17
17
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
18
18
 
19
- var Pt__default = /*#__PURE__*/_interopDefault(Pt);
19
+ var Bt__default = /*#__PURE__*/_interopDefault(Bt);
20
20
 
21
- var Ot=Object.defineProperty,Mt=Object.defineProperties;var xt=Object.getOwnPropertyDescriptors;var ie=Object.getOwnPropertySymbols;var _e=Object.prototype.hasOwnProperty,Be=Object.prototype.propertyIsEnumerable;var Ne=(e,t,n)=>t in e?Ot(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,E=(e,t)=>{for(var n in t||(t={}))_e.call(t,n)&&Ne(e,n,t[n]);if(ie)for(var n of ie(t))Be.call(t,n)&&Ne(e,n,t[n]);return e},P=(e,t)=>Mt(e,xt(t));var De=(e,t)=>{var n={};for(var o in e)_e.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(e!=null&&ie)for(var o of ie(e))t.indexOf(o)<0&&Be.call(e,o)&&(n[o]=e[o]);return n};var l=(e,t,n)=>new Promise((o,r)=>{var i=c=>{try{s(n.next(c));}catch(u){r(u);}},a=c=>{try{s(n.throw(c));}catch(u){r(u);}},s=c=>c.done?o(c.value):Promise.resolve(c.value).then(i,a);s((n=n.apply(e,t)).next());});var J="graz-reconnect-session";var Ke=(m=>(m.KEPLR="keplr",m.LEAP="leap",m.VECTIS="vectis",m.COSMOSTATION="cosmostation",m.WALLETCONNECT="walletconnect",m.WC_KEPLR_MOBILE="wc_keplr_mobile",m.WC_LEAP_MOBILE="wc_leap_mobile",m.WC_COSMOSTATION_MOBILE="wc_cosmostation_mobile",m.METAMASK_SNAP_LEAP="metamask_snap_leap",m.STATION="station",m))(Ke||{}),Ue=["keplr","leap","vectis","cosmostation","walletconnect","wc_keplr_mobile","wc_leap_mobile","wc_cosmostation_mobile","metamask_snap_leap","station"];var vt={recentChainIds:null,chains:null,chainsConfig:null,multiChainFetchConcurrency:3,walletType:"keplr",walletConnect:{options:null,web3Modal:null},_notFoundFn:()=>null,_onReconnectFailed:()=>null,_reconnect:!1,_reconnectConnector:null},X={accounts:null,activeChainIds:null,status:"disconnected",wcSignClient:null},Rt={name:"graz-session",version:2,partialize:e=>({accounts:e.accounts,activeChainIds:e.activeChainIds}),storage:middleware.createJSONStorage(()=>sessionStorage)},kt={name:"graz-internal",partialize:e=>({recentChainIds:e.recentChainIds,_reconnect:e._reconnect,_reconnectConnector:e._reconnectConnector}),version:2},y=zustand.create(middleware.subscribeWithSelector(middleware.persist(()=>X,Rt))),d=zustand.create(middleware.subscribeWithSelector(middleware.persist(()=>vt,kt)));var re=()=>{if(typeof window.cosmostation.providers.keplr!="undefined"){let e=window.cosmostation.providers.keplr;return Object.assign(e,{subscription:o=>{let r=()=>{G(),o();};return window.cosmostation.cosmos.on("accountChanged",r),()=>{window.cosmostation.cosmos.off("accountChanged",r);}}})}throw d.getState()._notFoundFn(),new Error("window.cosmostation.providers.keplr is not defined")};var se=()=>{if(typeof window.keplr!="undefined"){let e=window.keplr;return Object.assign(e,{subscription:o=>{let r=()=>{G(),o();};return window.addEventListener("keplr_keystorechange",r),()=>{window.removeEventListener("keplr_keystorechange",r);}}})}throw d.getState()._notFoundFn(),new Error("window.keplr is not defined")};var ae=()=>{if(typeof window.leap!="undefined"){let e=window.leap;return Object.assign(e,{subscription:o=>{let r=()=>{G(),o();};return window.addEventListener("leap_keystorechange",r),()=>{window.removeEventListener("leap_keystorechange",r);}}})}throw d.getState()._notFoundFn(),new Error("window.leap is not defined")};var Fe=e=>{let t=window.ethereum;if(t&&e){let n=()=>l(void 0,null,function*(){return yield t.request({method:"wallet_getSnaps"})}),o=g=>l(void 0,null,function*(){try{let A=yield n();return Object.values(A).find(M=>M.id===e.id&&(!g||M.version===g))}catch(A){return}}),r=()=>l(void 0,null,function*(){yield t.request({method:"wallet_requestSnaps",params:{[e.id]:e.params||{}}});}),i=()=>l(void 0,null,function*(){var _;let g=yield t.request({method:"web3_clientVersion"});if(!g.includes("MetaMask"))throw new Error("Metamask is not installed");let M=(_=g.split("MetaMask/v")[1])==null?void 0:_.split(".")[0];if(!(Number(M)>=11))throw new Error("Metamask Snap is not supported in this version");return (yield o())||(yield r()),!0}),a=g=>l(void 0,null,function*(){(yield o())||(yield r());}),s=(g,A,M)=>l(void 0,null,function*(){let R=yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"signDirect",params:{chainId:g,signerAddress:A,signDoc:M}}}}),k=M.accountNumber,_=new Pt__default.default(k.low,k.high,k.unsigned);return {signature:R.signature,signed:P(E({},R.signed),{accountNumber:`${_.toString()}`,authInfoBytes:new Uint8Array(Object.values(R.signed.authInfoBytes)),bodyBytes:new Uint8Array(Object.values(R.signed.bodyBytes))})}}),c=(g,A,M)=>l(void 0,null,function*(){return yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"signAmino",params:{chainId:g,signerAddress:A,signDoc:M}}}})}),u=g=>l(void 0,null,function*(){let A=yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"getKey",params:{chainId:g}}}});if(!A)throw new Error("No response from Metamask");return A.pubKey=Uint8Array.from(Object.values(A.pubkey)),delete A.pubkey,E({},A)}),m=g=>l(void 0,null,function*(){let A=yield u(g);return {address:A.bech32Address,algo:A.algo,pubkey:A.pubKey}}),C=(...g)=>l(void 0,null,function*(){let[A,M,R,k]=g;return yield c(A,M,R)}),w=(...g)=>l(void 0,null,function*(){let[A,M,R]=g;return yield s(A,M,R)}),S=g=>({getAccounts:()=>l(void 0,null,function*(){return [yield m(g)]}),signDirect:(A,M)=>w(g,A,M)}),I=g=>({getAccounts:()=>l(void 0,null,function*(){return [yield m(g)]}),signAmino:(A,M)=>C(g,A,M)});return {enable:a,experimentalSuggestChain:(...g)=>l(void 0,null,function*(){yield i(),yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"suggestChain",params:{chainInfo:g[0]}}}});}),getKey:u,getOfflineSigner:g=>({getAccounts:()=>l(void 0,null,function*(){return [yield m(g)]}),signDirect:(A,M)=>w(g,A,M),signAmino:(A,M)=>C(g,A,M)}),getOfflineSignerAuto:g=>l(void 0,null,function*(){return (yield u(g)).isNanoLedger?I(g):S(g)}),getOfflineSignerOnlyAmino:I,init:i,signAmino:C,signDirect:w}}throw d.getState()._notFoundFn(),new Error("window.ethereum is not defined")};var ze=()=>Fe({id:"npm:@leapwallet/metamask-cosmos-snap"});var ce=()=>{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=()=>{G(),s();};return window.addEventListener("vectis_accountChanged",c),()=>{window.removeEventListener("vectis_accountChanged",c);}},getOfflineSignerOnlyAmino:(...s)=>e.getOfflineSignerAmino(...s),experimentalSuggestChain:(...s)=>l(void 0,null,function*(){let[c]=s,u=P(E({},c),{rpcUrl:c.rpc,restUrl:c.rest,prettyName:c.chainName.replace(" ",""),bech32Prefix:c.bech32Config.bech32PrefixAccAddr});return e.suggestChains([u])}),signDirect:(...s)=>l(void 0,null,function*(){var m;let{1:c,2:u}=s;return e.signDirect(c,{bodyBytes:u.bodyBytes||Uint8Array.from([]),authInfoBytes:u.authInfoBytes||Uint8Array.from([]),accountNumber:Pt__default.default.fromString(((m=u.accountNumber)==null?void 0:m.toString())||"",!1),chainId:u.chainId||""})}),signAmino:(...s)=>l(void 0,null,function*(){let{1:c,2:u}=s;return e.signAmino(c,u)})}}throw d.getState()._notFoundFn(),new Error("window.vectis is not defined")};var z=()=>typeof window!="undefined"?!!(window.matchMedia("(pointer:coarse)").matches||/Android|webOS|iPhone|iPad|iPod|BlackBerry|Opera Mini/u.test(navigator.userAgent)):!1,Qe=()=>z()&&navigator.userAgent.toLowerCase().includes("android"),je=()=>z()&&(navigator.userAgent.toLowerCase().includes("iphone")||navigator.userAgent.toLowerCase().includes("ipad"));var $e=(e,t,n=new Error("Promise timed out"))=>{let o=new Promise((r,i)=>{setTimeout(()=>{i(n);},t);});return Promise.race([e,o])};var Q=e=>{var k,_,ee;if(!((ee=(_=(k=d.getState().walletConnect)==null?void 0:k.options)==null?void 0:_.projectId)!=null&&ee.trim()))throw new Error("walletConnect.options.projectId is not defined");let t=(e==null?void 0:e.encoding)||"base64",n=f=>{if(!e)return;let{appUrl:p,formatNativeUrl:h}=e;if(z()){if(Qe())if(!f)window.open(p.mobile.android,"_self","noreferrer noopener");else {let T=h(p.mobile.android,f,"android");window.open(T,"_self","noreferrer noopener");}if(je())if(!f)window.open(p.mobile.ios,"_self","noreferrer noopener");else {let T=h(p.mobile.ios,f,"ios");window.open(T,"_self","noreferrer noopener");}}},o=()=>{let{wcSignClient:f}=y.getState();if(!f)throw new Error("walletConnect.signClient is not defined");G(),d.setState({_reconnect:!1,_reconnectConnector:null,recentChainIds:null});},r=f=>l(void 0,null,function*(){let{wcSignClient:p}=y.getState();if(!p)throw new Error("walletConnect.signClient is not defined");if(!f)throw new Error("No wallet connect session");yield p.disconnect({topic:f,reason:utils.getSdkError("USER_DISCONNECTED")}),yield s(p),o();}),i=f=>{try{let{wcSignClient:p}=y.getState();if(!p)throw new Error("walletConnect.signClient is not defined");let h=p.session.getAll().at(-1);if(!h)return;if(!(h.expiry*1e3>Date.now()+1e3))throw r(h.topic),new Error("invalid session");try{let W=p.find({requiredNamespaces:{cosmos:{methods:["cosmos_getAccounts","cosmos_signAmino","cosmos_signDirect"],chains:f.map(D=>`cosmos:${D}`),events:["chainChanged","accountsChanged"]}}});if(!W.length)throw new Error("no session");return W.at(-1)}catch(W){if(!W.message.toLowerCase().includes("no matching key"))throw W}return h}catch(p){if(!p.message.toLowerCase().includes("no matching key"))throw p}},a=f=>{try{return i(f)}catch(p){return}},s=f=>l(void 0,null,function*(){try{let p=f.core.pairing.pairings.getAll({active:!1});if(!p.length)return;yield Promise.all(p.map(h=>l(void 0,null,function*(){yield f.core.pairing.pairings.delete(h.topic,{code:7001,message:"clear pairing"});})));}catch(p){if(!p.message.toLowerCase().includes("no matching key"))throw p}}),c=()=>l(void 0,null,function*(){let{walletConnect:f}=d.getState();if(!(f!=null&&f.options))throw new Error("walletConnect.options is not defined");let{wcSignClient:p}=y.getState();if(p)return y.setState({wcSignClient:p}),p;let h=yield signClient.SignClient.init(f.options);return y.setState({wcSignClient:h}),h}),u=f=>{let{wcSignClient:p}=y.getState();return p?(p.events.on("session_delete",h=>{o();}),p.events.on("session_expire",h=>{o();}),p.events.on("session_event",h=>{let T=y.getState().accounts;if(h.params.event.name==="accountsChanged"&&T&&!Object.values(T).map(W=>W.bech32Address).includes(h.params.event.data[0])){let W=h.params.chainId.split(":")[1];W&&m([W]);}else f();}),()=>{p.events.off("session_delete",h=>{o();}),p.events.off("session_expire",h=>{o();}),p.events.off("session_event",h=>{let T=y.getState().accounts;if(h.params.event.name==="accountsChanged"&&T&&!Object.values(T).map(W=>W.bech32Address).includes(h.params.event.data[0])){let W=h.params.chainId.split(":")[1];W&&m([W]);}else f();});}):()=>{}},m=f=>l(void 0,null,function*(){var te;let p=typeof f=="string"?[f]:f,{wcSignClient:h}=y.getState();if(!h)throw new Error("enable walletConnect.signClient is not defined");let{walletConnect:T,chains:W}=d.getState();if(!((te=T==null?void 0:T.options)!=null&&te.projectId))throw new Error("walletConnect.options.projectId is not defined");let{Web3Modal:D}=yield import('@web3modal/standalone'),j=new D(E({projectId:T.options.projectId,walletConnectVersion:2,enableExplorer:!1,explorerRecommendedWalletIds:"NONE"},T.web3Modal)),H=a(p);if(!H){let{uri:K,approval:V}=yield h.connect({requiredNamespaces:{cosmos:{methods:["cosmos_getAccounts","cosmos_signAmino","cosmos_signDirect"],chains:p.map(q=>`cosmos:${q}`),events:["chainChanged","accountsChanged"]}}});if(!K)throw new Error("No wallet connect uri");e?n(K):yield j.openModal({uri:K});let ne=q=>l(void 0,null,function*(){return q.aborted?Promise.reject(new Error("User closed wallet connect")):new Promise((he,Y)=>{V().then(ve=>{let Re=ve.sessionProperties;if(!Re)return Y(new Error("No session properties"));let Se=JSON.parse(String(Re.keys));if(Se.length===0)return Y(new Error("No accounts"));let ke=Se[0];if(!ke)return Y(new Error("No accounts"));let Pe={};return p.forEach(oe=>{Pe[oe]=P(E({},ke),{bech32Address:encoding.toBech32(W.find(bt=>bt.chainId===oe).bech32Config.bech32PrefixAccAddr,encoding.fromBech32(Se[0].bech32Address).data)});}),y.setState(oe=>({accounts:E(E({},oe.accounts||{}),Pe)})),he(ve)}).catch(Y),q.addEventListener("abort",()=>{Y(new Error("User closed wallet connect"));},{once:!0});})});try{let q=new AbortController,he=q.signal;j.subscribeModal(Y=>{Y.open||q.abort();}),yield ne(he);}catch(q){if(j.closeModal(),!q.message.toLowerCase().includes("no matching key"))return Promise.reject(q)}return e||j.closeModal(),Promise.resolve()}try{yield $e((()=>l(void 0,null,function*(){let K=yield w(p[0]),V={};p.forEach(ne=>{V[ne]=P(E({},K),{bech32Address:encoding.toBech32(W.find(q=>q.chainId===ne).bech32Config.bech32PrefixAccAddr,encoding.fromBech32(K.bech32Address).data)});}),y.setState({accounts:V});}))(),15e3,new Error("Connection timeout"));}catch(K){if(r(H.topic),!K.message.toLowerCase().includes("no matching key"))throw K}}),C=f=>l(void 0,null,function*(){var W;let{wcSignClient:p}=y.getState();if(!p)throw new Error("walletConnect.signClient is not defined");let h=(W=i([f]))==null?void 0:W.topic;if(!h)throw new Error("No wallet connect session");n();let T=yield p.request({topic:h,chainId:`cosmos:${f}`,request:{method:"cosmos_getAccounts",params:{}}});if(!T[0])throw new Error("No wallet connect account");return {address:T[0].address,algo:T[0].algo,pubkey:new Uint8Array(Buffer.from(T[0].pubkey,t))}}),w=f=>l(void 0,null,function*(){let{address:p,algo:h,pubkey:T}=yield C(f);return {address:encoding.fromBech32(p).data,algo:h,bech32Address:p,name:"",pubKey:T,isKeystone:!1,isNanoLedger:!1}}),S=(...f)=>l(void 0,null,function*(){var K,V;let[p,h,T]=f,{accounts:W,wcSignClient:D}=y.getState();if(!D)throw new Error("walletConnect.signClient is not defined");if(!W)throw new Error("account is not defined");let j=(K=i([p]))==null?void 0:K.topic;if(!j)throw new Error("No wallet connect session");if(!T.bodyBytes)throw new Error("No bodyBytes");if(!T.authInfoBytes)throw new Error("No authInfoBytes");let H={topic:j,chainId:`cosmos:${p}`,request:{method:"cosmos_signDirect",params:{signerAddress:h,signDoc:P(E({},T),{bodyBytes:Buffer.from(T.bodyBytes).toString(t),authInfoBytes:Buffer.from(T.authInfoBytes).toString(t),accountNumber:(V=T.accountNumber)==null?void 0:V.toString()})}}};return n(),yield D.request(H)}),I=(...f)=>l(void 0,null,function*(){let[p,h,T]=f,{signature:W,signed:D}=yield S(p,h,T);return {signed:{chainId:D.chainId,accountNumber:Pt__default.default.fromString(D.accountNumber,!1),authInfoBytes:new Uint8Array(Buffer.from(D.authInfoBytes,t)),bodyBytes:new Uint8Array(Buffer.from(D.bodyBytes,t))},signature:W}}),b=(...f)=>l(void 0,null,function*(){var K;let[p,h,T,W]=f,{wcSignClient:D}=y.getState(),{accounts:j}=y.getState();if(!D)throw new Error("walletConnect.signClient is not defined");if(!j)throw new Error("account is not defined");let H=(K=i([p]))==null?void 0:K.topic;if(!H)throw new Error("No wallet connect session");return n(),yield D.request({topic:H,chainId:`cosmos:${p}`,request:{method:"cosmos_signDirect",params:{signerAddress:h,signDoc:T}}})}),x=(...f)=>l(void 0,null,function*(){let[p,h,T,W]=f;return yield b(p,h,T)}),N=f=>({getAccounts:()=>l(void 0,null,function*(){return [yield C(f)]}),signDirect:(p,h)=>I(f,p,h)}),g=f=>({getAccounts:()=>l(void 0,null,function*(){return [yield C(f)]}),signAmino:(p,h)=>x(f,p,h)});return {enable:m,experimentalSuggestChain:(...f)=>l(void 0,null,function*(){yield Promise.reject(new Error("WalletConnect does not support experimentalSuggestChain"));}),getKey:w,getOfflineSigner:f=>({getAccounts:()=>l(void 0,null,function*(){return [yield C(f)]}),signDirect:(p,h)=>I(f,p,h),signAmino:(p,h)=>x(f,p,h)}),getOfflineSignerAuto:f=>l(void 0,null,function*(){return (yield w(f)).isNanoLedger?g(f):N(f)}),getOfflineSignerOnlyAmino:g,signAmino:x,signDirect:I,subscription:u,init:c}};var Ve=()=>{var t,n,o;if(!((o=(n=(t=d.getState().walletConnect)==null?void 0:t.options)==null?void 0:n.projectId)!=null&&o.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:(r,i,a)=>`${r.replaceAll("/","").replaceAll(":","")}://wc?${i}`};return Q(e)};var Ye=()=>{var t,n,o;if(!((o=(n=(t=d.getState().walletConnect)==null?void 0:t.options)==null?void 0:n.projectId)!=null&&o.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:(r,i,a)=>{let s=r.replaceAll("/","").replaceAll(":",""),c=encodeURIComponent(i);switch(a){case"ios":return `${s}://wcV2?${c}`;case"android":return `${s}://wcV2?${c}#Intent;package=com.chainapsis.keplr;scheme=keplrwallet;end;`;default:return `${s}://wc?uri=${c}`}}};return Q(e)};var Je=()=>{var t,n,o;if(!((o=(n=(t=d.getState().walletConnect)==null?void 0:t.options)==null?void 0:n.projectId)!=null&&o.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:(r,i,a)=>{let s=r.replaceAll("/","").replaceAll(":",""),c=encodeURIComponent(i);switch(a){case"ios":return `${s}://wcV2?${c}`;case"android":return `${s}://wcV2?${c}#Intent;package=io.leapwallet.cosmos;scheme=leapwallet;end;`;default:return `${s}://wc?uri=${c}`}}};return Q(e)};var le=()=>{if(typeof window.station!="undefined"){let e=window.station.keplr;return {subscription:i=>{let a=()=>{G(),i();};return window.addEventListener("station_wallet_change",a),()=>{window.removeEventListener("station_wallet_change",a);}},getKey:i=>l(void 0,null,function*(){let a=yield e.getKey(i);return E({isKeystone:!1},a)}),getOfflineSigner:i=>{try{let a=e.getOfflineSignerOnlyAmino(i);return Object.assign(a,{signDirect:(u,m)=>{throw new Error("signDirect not supported by Station")}})}catch(a){throw console.error(a),a}},experimentalSuggestChain:i=>l(void 0,null,function*(){try{let a=Object.assign(i,{chainSymbolImageUrl:i.chainSymbolImageUrl||"",stakeCurrency:{coinDecimals:i.stakeCurrency.coinDecimals,coinDenom:i.stakeCurrency.coinDenom,coinImageUrl:i.stakeCurrency.coinImageUrl||"",coinMinimalDenom:i.stakeCurrency.coinMinimalDenom},currencies:i.currencies.map(s=>({coinDecimals:s.coinDecimals,coinDenom:s.coinDenom,coinImageUrl:s.coinImageUrl||"",coinMinimalDenom:s.coinMinimalDenom})),feeCurrencies:i.feeCurrencies.map(s=>{var c,u,m;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:((u=s.gasPriceStep)==null?void 0:u.high)||0,low:((m=s.gasPriceStep)==null?void 0:m.low)||0}}})});yield e.experimentalSuggestChain(a);}catch(a){throw console.error(a),a}}),enable:i=>e.enable(i),getOfflineSignerAuto:i=>e.getOfflineSignerAuto(i),getOfflineSignerOnlyAmino:i=>e.getOfflineSignerOnlyAmino(i),signDirect:()=>e.signDirect(),signAmino:(i,a,s,c)=>e.signAmino(i,a,s)}}throw d.getState()._notFoundFn(),new Error("window.station is not defined")};var B=(e=d.getState().walletType)=>{try{return v(e),!0}catch(t){return !1}},G=()=>{window.sessionStorage.removeItem(J),y.setState(X);},v=(e=d.getState().walletType)=>{switch(e){case"keplr":return se();case"leap":return ae();case"cosmostation":return re();case"vectis":return ce();case"walletconnect":return Q();case"wc_keplr_mobile":return Ye();case"wc_leap_mobile":return Je();case"wc_cosmostation_mobile":return Ve();case"metamask_snap_leap":return ze();case"station":return le();default:throw new Error("Unknown wallet type")}},Ko=()=>Object.fromEntries(Ue.map(e=>[e,B(e)])),Xe=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:n,chains:o,walletType:r}=d.getState(),i=(e==null?void 0:e.walletType)||r;if(!B(i))throw new Error(`${i} is not available`);let s=v(i),c=typeof(e==null?void 0:e.chainId)=="string"?[e.chainId]:(e==null?void 0:e.chainId)||n;if(!c)throw new Error("No last known connected chain, connect action requires chain ids");let u=o==null?void 0:o.map(S=>S.chainId);c.forEach(S=>{if(!(u!=null&&u.includes(S)))throw new Error(`Chain ${S} is not provided in GrazProvider`)}),y.setState(S=>{let I=d.getState()._reconnect||!!d.getState()._reconnectConnector||!!c;return S.activeChainIds&&c.filter(x=>{var N;return !((N=S.activeChainIds)!=null&&N.includes(x))}).length>0?{status:"connecting"}:I?{status:"reconnecting"}:{status:"connecting"}});let{accounts:m}=y.getState();if(yield (t=s.init)==null?void 0:t.call(s),yield s.enable(c),!Xe(i)){let S=yield s.getKey(c[0]),I={};c.forEach(b=>{I[b]=P(E({},S),{bech32Address:encoding.toBech32(o.find(x=>x.chainId===b).bech32Config.bech32PrefixAccAddr,encoding.fromBech32(S.bech32Address).data)});}),y.setState(b=>({accounts:E(E({},b.accounts||{}),I)}));}d.setState(S=>({recentChainIds:[...S.recentChainIds||[],...c].filter((I,b,x)=>x.indexOf(I)===b)})),y.setState(S=>({activeChainIds:[...S.activeChainIds||[],...c].filter((I,b,x)=>x.indexOf(I)===b)})),d.setState({walletType:i,_reconnect:!!(e!=null&&e.autoReconnect),_reconnectConnector:i}),y.setState({status:"connected"}),typeof window!="undefined"&&window.sessionStorage.setItem(J,"Active");let C=c.map(S=>o.find(I=>I.chainId===S));return {accounts:y.getState().accounts,walletType:i,chains:C}}catch(n){throw console.error("connect ",n),y.getState().accounts===null&&y.setState({status:"disconnected"}),y.getState().accounts&&y.getState().activeChainIds&&y.setState({status:"connected"}),n}}),Ae=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 n=y.getState().accounts;t.forEach(r=>{n==null||delete n[r];}),Object.values(n||{}).length===0?(y.setState(X),d.setState({_reconnect:!1,_reconnectConnector:null,recentChainIds:null})):(y.setState(r=>{var i;return {activeChainIds:(i=r.activeChainIds)==null?void 0:i.filter(a=>!t.includes(a)),accounts:n}}),d.setState(r=>{var i;return {recentChainIds:(i=r.recentChainIds)==null?void 0:i.filter(a=>!t.includes(a))}}));}else y.setState(X),d.setState({_reconnect:!1,_reconnectConnector:null,recentChainIds:null});return Promise.resolve()},F=e=>l(void 0,null,function*(){var r;let{recentChainIds:t,_reconnectConnector:n,_reconnect:o}=d.getState();try{let i=B(n||void 0);if(t&&i&&n)return yield Z({chainId:t,walletType:n,autoReconnect:o})}catch(i){(r=e==null?void 0:e.onError)==null||r.call(e,i),Ae();}}),Ze=e=>l(void 0,null,function*(){if(!(e!=null&&e.chainId))throw new Error("chainId is required");let{walletType:t}=d.getState(),n=e.walletType||t;if(!B(n))throw new Error(`${n} is not available`);let r=v(n),i=r.getOfflineSigner(e.chainId),a=r.getOfflineSignerOnlyAmino(e.chainId),s=yield r.getOfflineSignerAuto(e.chainId);return {offlineSigner:i,offlineSignerAmino:a,offlineSignerAuto:s}});var Ie=()=>{d.setState({recentChainIds:null});},Jo=()=>d.getState().recentChainIds,Xo=()=>{var n;let{recentChainIds:e,chains:t}=d.getState();return (n=e==null?void 0:e.map(o=>t.find(r=>r.chainId===o)))!=null?n:null},Te=n=>l(void 0,[n],function*({chainInfo:e,walletType:t}){return yield v(t).experimentalSuggestChain(e),e}),et=e=>l(void 0,null,function*(){var o;let t=d.getState().walletType;return yield Te({chainInfo:e.chainInfo,walletType:(o=e.walletType)!=null?o:t}),yield Z({chainId:e.chainInfo.chainId,walletType:e.walletType,autoReconnect:e.autoReconnect})});var tt=e=>(d.setState(t=>({walletConnect:e.walletConnect||t.walletConnect,walletType:e.defaultWallet||t.walletType,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 nt=a=>l(void 0,[a],function*({signingClient:e,senderAddress:t,recipientAddress:n,amount:o,fee:r,memo:i}){if(!e)throw new Error("No connected account detected");if(!t)throw new Error("senderAddress is not defined");return e.sendTokens(t,n,o,r,i)}),ot=m=>l(void 0,[m],function*({signingClient:e,senderAddress:t,recipientAddress:n,transferAmount:o,sourcePort:r,sourceChannel:i,timeoutHeight:a,timeoutTimestamp:s,fee:c,memo:u}){if(!e)throw new Error("Stargate signing client is not ready");if(!t)throw new Error("senderAddress is not defined");return e.sendIbcTokens(t,n,o,r,i,a,s,c,u)}),it=s=>l(void 0,[s],function*({signingClient:e,senderAddress:t,msg:n,fee:o,options:r,label:i,codeId:a}){if(!e)throw new Error("CosmWasm signing client is not ready");return e.instantiate(t,a,n,i,o,r)}),rt=s=>l(void 0,[s],function*({signingClient:e,senderAddress:t,msg:n,fee:o,contractAddress:r,funds:i,memo:a}){if(!e)throw new Error("CosmWasm signing client is not ready");return e.execute(t,r,n,o,a,i)}),st=(e,t,n)=>l(void 0,null,function*(){if(!n)throw new Error("CosmWasm client is not ready");return yield n.queryContractSmart(e,t)}),at=(e,t,n)=>{if(!n)throw new Error("CosmWasm client is not ready");let o=new TextEncoder().encode(t);return n.queryContractRaw(e,o)};var ci=e=>e,li=e=>e;var ue=e=>e?Object.keys(e).length===0:!0;var Ee=class extends Error{constructor(t){super(),this.name="AbortError",this.message=t;}},ct=e=>globalThis.DOMException===void 0?new Ee(e):new DOMException(e),lt=e=>{let t=e.reason===void 0?ct("This operation was aborted."):e.reason;return t instanceof Error?t:ct(t)};function be(i,a){return l(this,arguments,function*(e,t,{concurrency:n=Number.POSITIVE_INFINITY,stopOnError:o=!0,signal:r}={}){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(n)||n===Number.POSITIVE_INFINITY)&&n>=1))throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${n}\` (${typeof n})`);let u=[],m=[],C=new Map,w=!1,S=!1,I=!1,b=0,x=0,N=e[Symbol.iterator]===void 0?e[Symbol.asyncIterator]():e[Symbol.iterator](),g=M=>{w=!0,S=!0,c(M);};r&&(r.aborted&&g(lt(r)),r.addEventListener("abort",()=>{g(lt(r));}));let A=()=>l(this,null,function*(){if(S)return;let M=yield N.next(),R=x;if(x++,M.done){if(I=!0,b===0&&!S){if(!o&&m.length>0){g(new AggregateError(m));return}if(S=!0,C.size===0){s(u);return}let k=[];for(let[_,ee]of u.entries())C.get(_)!==ut&&k.push(ee);s(k);}return}b++,l(this,null,function*(){try{let k=yield M.value;if(S)return;let _=yield t(k,R);_===ut&&C.set(R,_),u[R]=_,b--,yield A();}catch(k){if(o)g(k);else {m.push(k),b--;try{yield A();}catch(_){g(_);}}}});});l(this,null,function*(){for(let M=0;M<n;M++){try{yield A();}catch(R){g(R);break}if(I||w)break}});})})}var ut=Symbol("skip");var U=({chainId:e,multiChain:t})=>{let n=d(r=>r.chains);if(!n)throw new Error("No chains found in GrazProvider");let o=typeof e=="string"?[e]:e;switch(!0){case(!!t&&!!o):return o.map(r=>n.find(i=>i.chainId===r)).filter(Boolean);case(!t&&!!o):return [o.map(r=>n.find(i=>i.chainId===r)).filter(Boolean)[0]];case(!!t&&!o):return n;default:return [n[0]]}},L=(e,t,n)=>l(void 0,null,function*(){let o=d.getState().multiChainFetchConcurrency;if(e){let i=yield be(t,n,{concurrency:o});return Object.fromEntries(i.map((a,s)=>[t[s].chainId,a]))}return yield n(t[0])}),dt=(e,t,n)=>{if(e){let r=t.map(n);return Object.fromEntries(r.map((i,a)=>[t[a].chainId,i]))}return n(t[0])};var xe=e=>{let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),n=react.useMemo(()=>["USE_STARGATE_CLIENT",t],[t]);return reactQuery.useQuery({queryKey:n,queryFn:r=>l(void 0,[r],function*({queryKey:[,o]}){if(o.length<1)throw new Error("No chains found");return yield L(!!(e!=null&&e.multiChain),o,a=>l(void 0,null,function*(){var m;let s=(m=d.getState().chainsConfig)==null?void 0:m[a.chainId],c={url:a.rpc,headers:E({},(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})},We=e=>{let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),n=react.useMemo(()=>["USE_COSMWASM_CLIENT",t],[t]);return reactQuery.useQuery({queryKey:n,queryFn:r=>l(void 0,[r],function*({queryKey:[,o]}){if(o.length<1)throw new Error("No chains found");return yield L(!!(e!=null&&e.multiChain),o,a=>l(void 0,null,function*(){var m;let s=(m=d.getState().chainsConfig)==null?void 0:m[a.chainId],c={url:a.rpc,headers:E({},(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})},de=({type:e,chainId:t,multiChain:n,enabled:o})=>{let r=U({chainId:t,multiChain:n}),i=react.useMemo(()=>["USE_TENDERMINT_CLIENT",e,r],[e,r]);return reactQuery.useQuery({queryKey:i,queryFn:c=>l(void 0,[c],function*({queryKey:[,a,s]}){if(s.length<1)throw new Error("No chains found");return yield L(!!n,s,m=>l(void 0,null,function*(){var b;let C=(b=d.getState().chainsConfig)==null?void 0:b[m.chainId],w={url:m.rpc,headers:E({},(C==null?void 0:C.rpcHeaders)||{})};return yield (a==="tm37"?tendermintRpc.Tendermint37Client:tendermintRpc.Tendermint34Client).connect(w)}))}),enabled:!!r&&r.length>0&&(o!==void 0?!!o:!0),refetchOnWindowFocus:!1})};var Bi=()=>d(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"}),shallow.shallow),me=e=>{let n=["USE_CHECK_WALLET",d(r=>e||r.walletType)];return reactQuery.useQuery(n,({queryKey:[,r]})=>B(r))};var $=e=>{let t=d(s=>s.walletType),n=y(s=>s.activeChainIds),o=U({chainId:e!=null&&e.chainId?e.chainId:n||void 0,multiChain:e==null?void 0:e.multiChain}),r=y(s=>s.accounts),i=y(s=>s.status);return react.useEffect(()=>y.subscribe(s=>s.status,(s,c)=>{var u,m,C;if(s==="connected"){let{accounts:w,activeChainIds:S}=y.getState(),{chains:I}=d.getState(),{walletType:b}=d.getState();if(!w||!S||!I)return (u=e==null?void 0:e.onDisconnect)==null?void 0:u.call(e);(m=e==null?void 0:e.onConnect)==null||m.call(e,{accounts:w,chains:S.map(x=>I.find(N=>N.chainId===x)),walletType:b,isReconnect:c==="reconnecting"});}s==="disconnected"&&((C=e==null?void 0:e.onDisconnect)==null||C.call(e));}),[e]),{data:react.useMemo(()=>r?dt(!!(e!=null&&e.multiChain),o,s=>r[s.chainId]):void 0,[r,o,e==null?void 0:e.multiChain]),isConnected:i==="connected",isConnecting:i==="connecting",isDisconnected:i==="disconnected",isReconnecting:i==="reconnecting",isLoading:i==="connecting"||i==="reconnecting",walletType:i==="connected"?t:void 0,reconnect:F,status:i}},Ht=e=>{let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),{data:n}=$(),o=(e==null?void 0:e.bech32Address)||(n==null?void 0:n.bech32Address),{data:r}=xe({chainId:t.map(a=>a.chainId),multiChain:!0,enabled:((e==null?void 0:e.enabled)===void 0?!0:e.enabled)&&!!o}),i=react.useMemo(()=>["USE_ALL_BALANCES",r,t,o,e==null?void 0:e.chainId],[o,e==null?void 0:e.chainId,t,r]);return reactQuery.useQuery(i,u=>l(void 0,[u],function*({queryKey:[,a,s,c]}){if(!c)throw new Error("address is not defined");return yield L(!!(e!=null&&e.multiChain),s,C=>l(void 0,null,function*(){let w=a==null?void 0:a[C.chainId];if(!w)throw new Error(`Client is not ready ${C.chainId}`);return yield w.getAllBalances(encoding.toBech32(C.bech32Config.bech32PrefixAccAddr,encoding.fromBech32(c).data))}))}),{enabled:!!o&&!!t&&t.length>0&&!ue(r)&&((e==null?void 0:e.enabled)===void 0?!0:e.enabled),refetchOnMount:!1,refetchOnReconnect:!0,refetchOnWindowFocus:!1})},Vi=e=>{let t=U({chainId:e.chainId}),{data:n}=$({chainId:e.chainId}),o=e.bech32Address||(n==null?void 0:n.bech32Address),{data:r,refetch:i}=Ht({chainId:t.map(c=>c.chainId),bech32Address:o,enabled:!!o&&(e.enabled===void 0?!0:e.enabled)}),a=["USE_BALANCE",e.denom,r,t,o,e.chainId],s=reactQuery.useQuery(a,({queryKey:[,c,u]})=>u==null?void 0:u.find(m=>m.denom===c),{enabled:!!r&&!!(r!=null&&r.length)&&(e.enabled===void 0?!0:e.enabled)});return P(E({},s),{refetch:c=>l(void 0,null,function*(){return yield i(),s.refetch(c)})})},Yi=({onError:e,onLoading:t,onSuccess:n}={})=>{let r=reactQuery.useMutation(["USE_CONNECT",e,t,n],Z,{onError:(a,s)=>Promise.resolve(e==null?void 0:e(a,s)),onMutate:t,onSuccess:a=>Promise.resolve(n==null?void 0:n(a))}),{data:i}=me();return {connect:a=>r.mutate(a),connectAsync:a=>r.mutateAsync(a),error:r.error,isLoading:r.isLoading,isSuccess:r.isSuccess,isSupported:!!i,status:r.status}},Ji=({onError:e,onLoading:t,onSuccess:n}={})=>{let r=reactQuery.useMutation(["USE_DISCONNECT",e,t,n],Ae,{onError:i=>Promise.resolve(e==null?void 0:e(i,void 0)),onMutate:t,onSuccess:()=>Promise.resolve(n==null?void 0:n(void 0))});return {disconnect:i=>r.mutate(i),disconnectAsync:i=>r.mutateAsync(i),error:r.error,isLoading:r.isLoading,isSuccess:r.isSuccess,status:r.status}},Xi=e=>{let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),n=d(r=>r.walletType),o=react.useMemo(()=>["USE_OFFLINE_SIGNERS",t,n],[t,n]);return reactQuery.useQuery({queryKey:o,queryFn:a=>l(void 0,[a],function*({queryKey:[,r,i]}){if(r.length<1)throw new Error("No chain found");if(!B(i))throw new Error(`${i} is not available`);return yield L(!!(e!=null&&e.multiChain),r,u=>l(void 0,null,function*(){return yield Ze({chainId:u.chainId,walletType:i})}))}),enabled:!!t&&t.length>0&&!!n,refetchOnWindowFocus:!1})},Zi=e=>{let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),{data:n}=$(),{data:o}=xe({chainId:t.map(a=>a.chainId),multiChain:!0}),r=(e==null?void 0:e.bech32Address)||(n==null?void 0:n.bech32Address),i=react.useMemo(()=>["USE_BALANCE_STAKED",o,t,r],[t,r,o]);return reactQuery.useQuery(i,u=>l(void 0,[u],function*({queryKey:[,a,s,c]}){if(!c)throw new Error("address is not defined");return yield L(!!(e!=null&&e.multiChain),s,C=>l(void 0,null,function*(){var S;if(!a)throw new Error("Client is not ready");return yield (S=a[C.chainId])==null?void 0:S.getBalanceStaked(encoding.toBech32(C.bech32Config.bech32PrefixAccAddr,encoding.fromBech32(c).data))}))}),{enabled:!!r&&!!t&&t.length>0&&!!o,refetchOnMount:!1,refetchOnReconnect:!0,refetchOnWindowFocus:!1})};var ar=()=>y(e=>e.activeChainIds),Vt=()=>{var e;return (e=y(t=>t.activeChainIds))==null?void 0:e.map(t=>{var o;let n=(o=d.getState().chains)==null?void 0:o.find(r=>r.chainId===t);if(n)return n}).filter(Boolean)},cr=({denom:e})=>{let t=Vt();return reactQuery.useQuery(["USE_ACTIVE_CHAIN_CURRENCY",e],({queryKey:[,r]})=>{var i;return (i=t==null?void 0:t.find(a=>a.currencies.find(s=>s.coinMinimalDenom===r)))==null?void 0:i.currencies.find(a=>a)})},lr=e=>{var r;let t=(r=e.status)!=null?r:"BOND_STATUS_BONDED",n=["USE_ACTIVE_CHAIN_VALIDATORS",e.queryClient,t];return reactQuery.useQuery(n,s=>l(void 0,[s],function*({queryKey:[,i,a]}){if(!i)throw new Error("Query client is not defined");return yield i.staking.validators(a)}),{enabled:typeof e.queryClient!="undefined"})},ur=()=>({data:d(t=>t.recentChainIds),clear:Ie}),dr=()=>{var t;return {data:(t=d(n=>n.recentChainIds))==null?void 0:t.map(n=>{var r;let o=(r=d.getState().chains)==null?void 0:r.find(i=>i.chainId===n);if(o)return o}).filter(Boolean),clear:Ie}},mr=({onError:e,onLoading:t,onSuccess:n}={})=>{let r=reactQuery.useMutation(["USE_SUGGEST_CHAIN",e,t,n],Te,{onError:(i,a)=>Promise.resolve(e==null?void 0:e(i,a.chainInfo)),onMutate:i=>t==null?void 0:t(i.chainInfo),onSuccess:i=>Promise.resolve(n==null?void 0:n(i))});return {error:r.error,isLoading:r.isLoading,isSuccess:r.isSuccess,suggest:r.mutate,suggestAsync:r.mutateAsync,status:r.status}},pr=({onError:e,onLoading:t,onSuccess:n}={})=>{let r=reactQuery.useMutation(["USE_SUGGEST_CHAIN_AND_CONNECT",e,t,n],et,{onError:(a,s)=>Promise.resolve(e==null?void 0:e(a,s)),onMutate:a=>t==null?void 0:t(a),onSuccess:a=>Promise.resolve(n==null?void 0:n(a))}),{data:i}=me();return {error:r.error,isLoading:r.isLoading,isSuccess:r.isSuccess,isSupported:!!i,status:r.status,suggestAndConnect:r.mutate,suggestAndConnectAsync:r.mutateAsync}};var Ar=({onError:e,onLoading:t,onSuccess:n}={})=>{let{data:o}=$(),r=o==null?void 0:o.bech32Address,i=reactQuery.useMutation(["USE_SEND_TOKENS",e,t,n,r],a=>nt(E({senderAddress:r},a)),{onError:(a,s)=>Promise.resolve(e==null?void 0:e(a,s)),onMutate:t,onSuccess:a=>Promise.resolve(n==null?void 0:n(a))});return {error:i.error,isLoading:i.isLoading,isSuccess:i.isSuccess,sendTokens:i.mutate,sendTokensAsync:i.mutateAsync,status:i.status}},Ir=({onError:e,onLoading:t,onSuccess:n}={})=>{let{data:o}=$(),r=o==null?void 0:o.bech32Address,i=reactQuery.useMutation(["USE_SEND_IBC_TOKENS",e,t,n,r],a=>ot(E({senderAddress:r},a)),{onError:(a,s)=>Promise.resolve(e==null?void 0:e(a,s)),onMutate:t,onSuccess:a=>Promise.resolve(n==null?void 0:n(a))});return {error:i.error,isLoading:i.isLoading,isSuccess:i.isSuccess,sendIbcTokens:i.mutate,sendIbcTokensAsync:i.mutateAsync,status:i.status}},Tr=({codeId:e,onError:t,onLoading:n,onSuccess:o})=>{let{data:r}=$(),i=r==null?void 0:r.bech32Address,s=reactQuery.useMutation(["USE_INSTANTIATE_CONTRACT",t,n,o,e,i],c=>{var m;if(!i)throw new Error("senderAddress is undefined");let u=P(E({},c),{fee:(m=c.fee)!=null?m:"auto",senderAddress:i,codeId:e});return it(u)},{onError:(c,u)=>Promise.resolve(t==null?void 0:t(c,u)),onMutate:n,onSuccess:c=>Promise.resolve(o==null?void 0:o(c))});return {error:s.error,isLoading:s.isLoading,isSuccess:s.isSuccess,instantiateContract:s.mutate,instantiateContractAsync:s.mutateAsync,status:s.status}},Er=({contractAddress:e,onError:t,onLoading:n,onSuccess:o})=>{let{data:r}=$(),i=r==null?void 0:r.bech32Address,s=reactQuery.useMutation(["USE_EXECUTE_CONTRACT",t,n,o,e,i],c=>{var m,C,w;if(!i)throw new Error("senderAddress is undefined");let u=P(E({},c),{fee:(m=c.fee)!=null?m:"auto",senderAddress:i,contractAddress:e,memo:(C=c.memo)!=null?C:"",funds:(w=c.funds)!=null?w:[]});return rt(u)},{onError:(c,u)=>Promise.resolve(t==null?void 0:t(c,u)),onMutate:n,onSuccess:c=>Promise.resolve(o==null?void 0:o(c))});return {error:s.error,isLoading:s.isLoading,isSuccess:s.isSuccess,executeContract:s.mutate,executeContractAsync:s.mutateAsync,status:s.status}},br=e=>{let{data:t}=We();return reactQuery.useQuery(["USE_QUERY_SMART",e==null?void 0:e.address,e==null?void 0:e.queryMsg,t],({queryKey:[,o]})=>{if(!(e!=null&&e.address)||!e.queryMsg)throw new Error("address or queryMsg undefined");return st(e.address,e.queryMsg,t)},{enabled:!!(e!=null&&e.address)&&!!(e!=null&&e.queryMsg)&&!!t})},Or=e=>{let{data:t}=We(),n=["USE_QUERY_RAW",e==null?void 0:e.key,e==null?void 0:e.address,t];return reactQuery.useQuery(n,({queryKey:[,r]})=>{if(!(e!=null&&e.address)||!e.key)throw new Error("address or key undefined");return at(e.address,e.key,t)},{enabled:!!(e!=null&&e.address)&&!!(e!=null&&e.key)&&!!t})};function Ur(e){let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),n=d(i=>i.walletType),o=y(i=>i.activeChainIds),r=react.useMemo(()=>["USE_STARGATE_SIGNING_CLIENT",t,n,e,o],[o,e,t,n]);return reactQuery.useQuery({queryKey:r,queryFn:s=>l(this,[s],function*({queryKey:[,i,a]}){if(i.length<1)throw new Error("No chains found");return yield L(!!(e!=null&&e.multiChain),i,u=>l(this,null,function*(){var b,x;if(!(o!=null&&o.includes(u.chainId)))return;if(!B(a))throw new Error(`${a} is not available`);let C=yield (()=>l(this,null,function*(){switch(e==null?void 0:e.offlineSigner){case"offlineSigner":return v(a).getOfflineSigner(u.chainId);case"offlineSignerAuto":return v(a).getOfflineSignerAuto(u.chainId);case"offlineSignerOnlyAmino":return v(a).getOfflineSignerOnlyAmino(u.chainId);default:return v(a).getOfflineSignerAuto(u.chainId)}}))(),w=(b=d.getState().chainsConfig)==null?void 0:b[u.chainId],S={url:u.rpc,headers:E({},(w==null?void 0:w.rpcHeaders)||{})};return (e==null?void 0:e.multiChain)===!0&&e.opts,yield stargate.SigningStargateClient.connectWithSigner(S,C,e!=null&&e.multiChain?(x=e.opts)==null?void 0:x[u.chainId]:e==null?void 0:e.opts)}))}),enabled:!!t&&t.length>0&&!!n&&((e==null?void 0:e.enabled)!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}function Lr(e){let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),n=d(i=>i.walletType),o=y(i=>i.activeChainIds),r=react.useMemo(()=>["USE_COSMWASM_SIGNING_CLIENT",t,n,e,o],[o,e,t,n]);return reactQuery.useQuery({queryKey:r,queryFn:s=>l(this,[s],function*({queryKey:[,i,a]}){if(i.length<1)throw new Error("No chains found");return yield L(!!(e!=null&&e.multiChain),i,u=>l(this,null,function*(){var x,N;if(!(o!=null&&o.includes(u.chainId)))return;if(!B(a))throw new Error(`${a} is not available`);let C=yield (()=>l(this,null,function*(){switch(e==null?void 0:e.offlineSigner){case"offlineSigner":return v(a).getOfflineSigner(u.chainId);case"offlineSignerAuto":return v(a).getOfflineSignerAuto(u.chainId);case"offlineSignerOnlyAmino":return v(a).getOfflineSignerOnlyAmino(u.chainId);default:return v(a).getOfflineSignerAuto(u.chainId)}}))(),w=(x=d.getState().chainsConfig)==null?void 0:x[u.chainId],S={url:u.rpc,headers:E({},(w==null?void 0:w.rpcHeaders)||{})},I=w!=null&&w.gas?stargate.GasPrice.fromString(`${w.gas.price}${w.gas.denom}`):void 0;return yield cosmwasmStargate.SigningCosmWasmClient.connectWithSigner(S,C,E({gasPrice:I},e!=null&&e.multiChain?(N=e.opts)==null?void 0:N[u.chainId]:(e==null?void 0:e.opts)||{}))}))}),enabled:!!t&&t.length>0&&!!n&&((e==null?void 0:e.enabled)!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}function qr(e){let t=U({chainId:e.chainId,multiChain:e.multiChain}),n=d(a=>a.walletType),o=y(a=>a.activeChainIds),r=react.useMemo(()=>["USE_STARGATE_TM_SIGNING_CLIENT",t,n,e,o],[o,e,t,n]),{data:i}=de({type:e.type,chainId:e.chainId,multiChain:e.multiChain});return reactQuery.useQuery({queryKey:r,queryFn:c=>l(this,[c],function*({queryKey:[,a,s]}){if(a.length<1)throw new Error("No chains found");return yield L(!!e.multiChain,a,m=>l(this,null,function*(){var b;if(!(o!=null&&o.includes(m.chainId)))return;if(!B(s))throw new Error(`${s} is not available`);if(!i)throw new Error("No tendermint client found");let w=yield (()=>l(this,null,function*(){switch(e.offlineSigner){case"offlineSigner":return v(s).getOfflineSigner(m.chainId);case"offlineSignerAuto":return v(s).getOfflineSignerAuto(m.chainId);case"offlineSignerOnlyAmino":return v(s).getOfflineSignerOnlyAmino(m.chainId);default:return v(s).getOfflineSignerAuto(m.chainId)}}))(),S=e.multiChain?i[m.chainId]:i;return yield stargate.SigningStargateClient.createWithSigner(S,w,e.multiChain?(b=e.opts)==null?void 0:b[m.chainId]:e.opts)}))}),enabled:!!t&&t.length>0&&!!n&&!!i&&(e.enabled!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}function Gr(e){let t=U({chainId:e.chainId,multiChain:e.multiChain}),n=d(s=>s.walletType),o=y(s=>s.activeChainIds),r=react.useMemo(()=>["USE_COSMWASM_TM_SIGNING_CLIENT",t,n,e,o],[o,e,t,n]),{data:i}=de({type:e.type,chainId:e.chainId,multiChain:!1,enabled:!e.multiChain}),{data:a}=de({type:e.type,chainId:e.chainId,multiChain:!0,enabled:!!e.multiChain});return reactQuery.useQuery({queryKey:r,queryFn:u=>l(this,[u],function*({queryKey:[,s,c]}){if(s.length<1)throw new Error("No chains found");return yield L(!!e.multiChain,s,C=>l(this,null,function*(){var g,A;if(!(o!=null&&o.includes(C.chainId)))return;if(!B(c))throw new Error(`${c} is not available`);let S=yield (()=>l(this,null,function*(){switch(e.offlineSigner){case"offlineSigner":return v(c).getOfflineSigner(C.chainId);case"offlineSignerAuto":return v(c).getOfflineSignerAuto(C.chainId);case"offlineSignerOnlyAmino":return v(c).getOfflineSignerOnlyAmino(C.chainId);default:return v(c).getOfflineSignerAuto(C.chainId)}}))(),I=(g=d.getState().chainsConfig)==null?void 0:g[C.chainId],b=I!=null&&I.gas?stargate.GasPrice.fromString(`${I.gas.price}${I.gas.denom}`):void 0,x=e.multiChain?a==null?void 0:a[C.chainId]:i;if(!x)throw new Error("No tendermint client found");return yield cosmwasmStargate.SigningCosmWasmClient.createWithSigner(x,S,E({gasPrice:b},e.multiChain?(A=e.opts)==null?void 0:A[C.chainId]:e.opts||{}))}))}),enabled:!!t&&t.length>0&&!!n&&(!!i||!ue(a))&&(e.enabled!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}var At=({children:e})=>{let[t,n]=react.useState(!1);return react.useEffect(()=>{n(!0);},[]),jsxRuntime.jsx(jsxRuntime.Fragment,{children:t?e:null})};var en=()=>{let e=typeof window!="undefined"&&window.sessionStorage.getItem(J)==="Active",{_reconnect:t,_onReconnectFailed:n,_reconnectConnector:o}=d(),{activeChainIds:r,wcSignClient:i}=y(),a=B(o||void 0);return react.useEffect(()=>{if(o){if(!a)return;e&&r?F({onError:n}):!e&&t&&F({onError:n});}},[a]),react.useEffect(()=>{var s,c,u,m,C,w,S,I,b,x,N,g;if(o){if(!a)return;o==="cosmostation"&&((c=(s=re()).subscription)==null||c.call(s,()=>{F({onError:n});})),o==="keplr"&&((m=(u=se()).subscription)==null||m.call(u,()=>{F({onError:n});})),o==="leap"&&((w=(C=ae()).subscription)==null||w.call(C,()=>{F({onError:n});})),o==="vectis"&&((I=(S=ce()).subscription)==null||I.call(S,()=>{F({onError:n});})),o==="walletconnect"&&i&&((x=(b=Q()).subscription)==null||x.call(b,()=>{F({onError:n});})),o==="station"&&((g=(N=le()).subscription)==null||g.call(N,()=>{F({onError:n});}));}},[o,i,a]),null},Tt=()=>(en(),null);var on=new reactQuery.QueryClient({}),ps=o=>{var r=o,{children:e,grazOptions:t}=r,n=De(r,["children","grazOptions"]);return tt(t),jsxRuntime.jsx(reactQuery.QueryClientProvider,P(E({client:on},n),{children:jsxRuntime.jsxs(At,{children:[e,jsxRuntime.jsx(Tt,{})]})}),"graz-provider")};
21
+ var xt=Object.defineProperty,Wt=Object.defineProperties;var vt=Object.getOwnPropertyDescriptors;var re=Object.getOwnPropertySymbols;var Le=Object.prototype.hasOwnProperty,Ke=Object.prototype.propertyIsEnumerable;var De=(e,t,n)=>t in e?xt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,E=(e,t)=>{for(var n in t||(t={}))Le.call(t,n)&&De(e,n,t[n]);if(re)for(var n of re(t))Ke.call(t,n)&&De(e,n,t[n]);return e},N=(e,t)=>Wt(e,vt(t));var Ue=(e,t)=>{var n={};for(var i in e)Le.call(e,i)&&t.indexOf(i)<0&&(n[i]=e[i]);if(e!=null&&re)for(var i of re(e))t.indexOf(i)<0&&Ke.call(e,i)&&(n[i]=e[i]);return n};var l=(e,t,n)=>new Promise((i,r)=>{var o=c=>{try{a(n.next(c));}catch(u){r(u);}},s=c=>{try{a(n.throw(c));}catch(u){r(u);}},a=c=>c.done?i(c.value):Promise.resolve(c.value).then(o,s);a((n=n.apply(e,t)).next());});var X="graz-reconnect-session";var qe=(m=>(m.KEPLR="keplr",m.LEAP="leap",m.VECTIS="vectis",m.COSMOSTATION="cosmostation",m.WALLETCONNECT="walletconnect",m.WC_KEPLR_MOBILE="wc_keplr_mobile",m.WC_LEAP_MOBILE="wc_leap_mobile",m.WC_COSMOSTATION_MOBILE="wc_cosmostation_mobile",m.METAMASK_SNAP_LEAP="metamask_snap_leap",m.STATION="station",m))(qe||{}),Ge=["keplr","leap","vectis","cosmostation","walletconnect","wc_keplr_mobile","wc_leap_mobile","wc_cosmostation_mobile","metamask_snap_leap","station"];var kt={recentChainIds:null,chains:null,chainsConfig:null,multiChainFetchConcurrency:3,walletType:"keplr",walletConnect:{options:null,web3Modal:null},_notFoundFn:()=>null,_onReconnectFailed:()=>null,_reconnect:!1,_reconnectConnector:null},Z={accounts:null,activeChainIds:null,status:"disconnected",wcSignClients:new Map},Pt={name:"graz-session",version:2,partialize:e=>({accounts:e.accounts,activeChainIds:e.activeChainIds}),storage:middleware.createJSONStorage(()=>sessionStorage)},Nt={name:"graz-internal",partialize:e=>({recentChainIds:e.recentChainIds,_reconnect:e._reconnect,_reconnectConnector:e._reconnectConnector}),version:2},y=zustand.create(middleware.subscribeWithSelector(middleware.persist(()=>Z,Pt))),d=zustand.create(middleware.subscribeWithSelector(middleware.persist(()=>kt,Nt)));var se=()=>{if(typeof window.cosmostation.providers.keplr!="undefined"){let e=window.cosmostation.providers.keplr;return Object.assign(e,{subscription:i=>{let r=()=>{z(),i();};return window.cosmostation.cosmos.on("accountChanged",r),()=>{window.cosmostation.cosmos.off("accountChanged",r);}}})}throw d.getState()._notFoundFn(),new Error("window.cosmostation.providers.keplr is not defined")};var ae=()=>{if(typeof window.keplr!="undefined"){let e=window.keplr;return Object.assign(e,{subscription:i=>{let r=()=>{z(),i();};return window.addEventListener("keplr_keystorechange",r),()=>{window.removeEventListener("keplr_keystorechange",r);}}})}throw d.getState()._notFoundFn(),new Error("window.keplr is not defined")};var ce=()=>{if(typeof window.leap!="undefined"){let e=window.leap;return Object.assign(e,{subscription:i=>{let r=()=>{z(),i();};return window.addEventListener("leap_keystorechange",r),()=>{window.removeEventListener("leap_keystorechange",r);}}})}throw d.getState()._notFoundFn(),new Error("window.leap is not defined")};var je=e=>{let t=window.ethereum;if(t&&e){let n=()=>l(void 0,null,function*(){return yield t.request({method:"wallet_getSnaps"})}),i=C=>l(void 0,null,function*(){try{let A=yield n();return Object.values(A).find(M=>M.id===e.id&&(!C||M.version===C))}catch(A){return}}),r=()=>l(void 0,null,function*(){yield t.request({method:"wallet_requestSnaps",params:{[e.id]:e.params||{}}});}),o=()=>l(void 0,null,function*(){var B;let C=yield t.request({method:"web3_clientVersion"});if(!C.includes("MetaMask"))throw new Error("Metamask is not installed");let M=(B=C.split("MetaMask/v")[1])==null?void 0:B.split(".")[0];if(!(Number(M)>=11))throw new Error("Metamask Snap is not supported in this version");return (yield i())||(yield r()),!0}),s=C=>l(void 0,null,function*(){(yield i())||(yield r());}),a=(C,A,M)=>l(void 0,null,function*(){let P=yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"signDirect",params:{chainId:C,signerAddress:A,signDoc:M}}}}),D=M.accountNumber,B=new Bt__default.default(D.low,D.high,D.unsigned);return {signature:P.signature,signed:N(E({},P.signed),{accountNumber:`${B.toString()}`,authInfoBytes:new Uint8Array(Object.values(P.signed.authInfoBytes)),bodyBytes:new Uint8Array(Object.values(P.signed.bodyBytes))})}}),c=(C,A,M)=>l(void 0,null,function*(){return yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"signAmino",params:{chainId:C,signerAddress:A,signDoc:M}}}})}),u=C=>l(void 0,null,function*(){let A=yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"getKey",params:{chainId:C}}}});if(!A)throw new Error("No response from Metamask");return A.pubKey=Uint8Array.from(Object.values(A.pubkey)),delete A.pubkey,E({},A)}),m=C=>l(void 0,null,function*(){let A=yield u(C);return {address:A.bech32Address,algo:A.algo,pubkey:A.pubKey}}),S=(...C)=>l(void 0,null,function*(){let[A,M,P,D]=C;return yield c(A,M,P)}),w=(...C)=>l(void 0,null,function*(){let[A,M,P]=C;return yield a(A,M,P)}),h=C=>({getAccounts:()=>l(void 0,null,function*(){return [yield m(C)]}),signDirect:(A,M)=>w(C,A,M)}),b=C=>({getAccounts:()=>l(void 0,null,function*(){return [yield m(C)]}),signAmino:(A,M)=>S(C,A,M)});return {enable:s,experimentalSuggestChain:(...C)=>l(void 0,null,function*(){yield o(),yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"suggestChain",params:{chainInfo:C[0]}}}});}),getKey:u,getOfflineSigner:C=>({getAccounts:()=>l(void 0,null,function*(){return [yield m(C)]}),signDirect:(A,M)=>w(C,A,M),signAmino:(A,M)=>S(C,A,M)}),getOfflineSignerAuto:C=>l(void 0,null,function*(){return (yield u(C)).isNanoLedger?b(C):h(C)}),getOfflineSignerOnlyAmino:b,init:o,signAmino:S,signDirect:w}}throw d.getState()._notFoundFn(),new Error("window.ethereum is not defined")};var $e=()=>je({id:"npm:@leapwallet/metamask-cosmos-snap"});var le=()=>{if(typeof window.station!="undefined"){let e=window.station.keplr;return {subscription:o=>{let s=()=>{z(),o();};return window.addEventListener("station_wallet_change",s),()=>{window.removeEventListener("station_wallet_change",s);}},getKey:o=>l(void 0,null,function*(){let s=yield e.getKey(o);return E({isKeystone:!1},s)}),getOfflineSigner:o=>{try{let s=e.getOfflineSignerOnlyAmino(o);return Object.assign(s,{signDirect:(u,m)=>{throw new Error("signDirect not supported by Station")}})}catch(s){throw console.error(s),s}},experimentalSuggestChain:o=>l(void 0,null,function*(){try{let s=Object.assign(o,{chainSymbolImageUrl:o.chainSymbolImageUrl||"",stakeCurrency:{coinDecimals:o.stakeCurrency.coinDecimals,coinDenom:o.stakeCurrency.coinDenom,coinImageUrl:o.stakeCurrency.coinImageUrl||"",coinMinimalDenom:o.stakeCurrency.coinMinimalDenom},currencies:o.currencies.map(a=>({coinDecimals:a.coinDecimals,coinDenom:a.coinDenom,coinImageUrl:a.coinImageUrl||"",coinMinimalDenom:a.coinMinimalDenom})),feeCurrencies:o.feeCurrencies.map(a=>{var c,u,m;return {coinDecimals:a.coinDecimals,coinDenom:a.coinDenom,coinImageUrl:a.coinImageUrl||"",coinMinimalDenom:a.coinMinimalDenom,gasPriceStep:{average:((c=a.gasPriceStep)==null?void 0:c.average)||0,high:((u=a.gasPriceStep)==null?void 0:u.high)||0,low:((m=a.gasPriceStep)==null?void 0:m.low)||0}}})});yield e.experimentalSuggestChain(s);}catch(s){throw console.error(s),s}}),enable:o=>e.enable(o),disable:o=>e.disable(o),getOfflineSignerAuto:o=>e.getOfflineSignerAuto(o),getOfflineSignerOnlyAmino:o=>e.getOfflineSignerOnlyAmino(o),signDirect:()=>e.signDirect(),signAmino:(o,s,a,c)=>e.signAmino(o,s,a)}}throw d.getState()._notFoundFn(),new Error("window.station is not defined")};var ue=()=>{if(typeof window.vectis!="undefined"){let e=window.vectis.cosmos;return {enable:a=>e.enable(a),getOfflineSigner:a=>e.getOfflineSigner(a),getOfflineSignerAuto:a=>e.getOfflineSignerAuto(a),getKey:a=>l(void 0,null,function*(){let c=yield e.getKey(a);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:a=>{let c=()=>{z(),a();};return window.addEventListener("vectis_accountChanged",c),()=>{window.removeEventListener("vectis_accountChanged",c);}},getOfflineSignerOnlyAmino:(...a)=>e.getOfflineSignerAmino(...a),experimentalSuggestChain:(...a)=>l(void 0,null,function*(){let[c]=a,u=N(E({},c),{rpcUrl:c.rpc,restUrl:c.rest,prettyName:c.chainName.replace(" ",""),bech32Prefix:c.bech32Config.bech32PrefixAccAddr});return e.suggestChains([u])}),signDirect:(...a)=>l(void 0,null,function*(){var m;let{1:c,2:u}=a;return e.signDirect(c,{bodyBytes:u.bodyBytes||Uint8Array.from([]),authInfoBytes:u.authInfoBytes||Uint8Array.from([]),accountNumber:Bt__default.default.fromString(((m=u.accountNumber)==null?void 0:m.toString())||"",!1),chainId:u.chainId||""})}),signAmino:(...a)=>l(void 0,null,function*(){let{1:c,2:u}=a;return e.signAmino(c,u)})}}throw d.getState()._notFoundFn(),new Error("window.vectis is not defined")};var Q=()=>typeof window!="undefined"?!!(window.matchMedia("(pointer:coarse)").matches||/Android|webOS|iPhone|iPad|iPod|BlackBerry|Opera Mini/u.test(navigator.userAgent)):!1,He=()=>Q()&&navigator.userAgent.toLowerCase().includes("android"),Ve=()=>Q()&&(navigator.userAgent.toLowerCase().includes("iphone")||navigator.userAgent.toLowerCase().includes("ipad"));var Ae=(e,t,n=new Error("Promise timed out"))=>{let i=new Promise((r,o)=>{setTimeout(()=>{o(n);},t);});return Promise.race([e,i])};var j=e=>{var B,te,ke;if(!((ke=(te=(B=d.getState().walletConnect)==null?void 0:B.options)==null?void 0:te.projectId)!=null&&ke.trim()))throw new Error("walletConnect.options.projectId is not defined");let t=(e==null?void 0:e.walletType)||"walletconnect",n=(e==null?void 0:e.encoding)||"base64",i=p=>{if(!e)return;let{appUrl:f,formatNativeUrl:g}=e;if(Q()){if(He())if(!p)window.open(f.mobile.android,"_self","noreferrer noopener");else {let I=g(f.mobile.android,p,"android");window.open(I,"_self","noreferrer noopener");}if(Ve())if(!p)window.open(f.mobile.ios,"_self","noreferrer noopener");else {let I=g(f.mobile.ios,p,"ios");window.open(I,"_self","noreferrer noopener");}}},r=()=>{let{wcSignClients:p}=y.getState();if(!p.get(t))throw new Error("walletConnect.signClient is not defined");p.delete(t),y.setState({wcSignClients:p}),d.setState({_reconnect:!1,_reconnectConnector:null,recentChainIds:null});},o=p=>l(void 0,null,function*(){let{wcSignClients:f}=y.getState(),g=f.get(t);if(!g)throw new Error("walletConnect.signClient is not defined");if(!p)throw new Error("No wallet connect session");yield g.disconnect({topic:p,reason:utils.getSdkError("USER_DISCONNECTED")}),yield c(g);}),s=p=>{try{let{wcSignClients:f}=y.getState(),g=f.get(t);if(!g)throw new Error("walletConnect.signClient is not defined");let I=g.session.getAll().at(-1);if(!I)return;if(!(I.expiry*1e3>Date.now()+1e3))throw o(I.topic),new Error("invalid session");try{let x=g.find({requiredNamespaces:{cosmos:{methods:["cosmos_getAccounts","cosmos_signAmino","cosmos_signDirect"],chains:p.map(U=>`cosmos:${U}`),events:["chainChanged","accountsChanged"]}}});if(!x.length)throw new Error("no session");return x.at(-1)}catch(x){if(!x.message.toLowerCase().includes("no matching key"))throw x}return I}catch(f){if(!f.message.toLowerCase().includes("no matching key"))throw f}},a=p=>{try{return s(p)}catch(f){return}},c=p=>l(void 0,null,function*(){try{let f=p.core.pairing.pairings.getAll({active:!1});if(!f.length)return;yield Promise.all(f.map(g=>l(void 0,null,function*(){yield p.core.pairing.pairings.delete(g.topic,{code:7001,message:"clear pairing"});})));}catch(f){if(!f.message.toLowerCase().includes("no matching key"))throw f}}),u=()=>l(void 0,null,function*(){let{walletConnect:p}=d.getState();if(!(p!=null&&p.options))throw new Error("walletConnect.options is not defined");let{wcSignClients:f}=y.getState(),g=f.get(t);if(g)return g;let I=yield signClient.SignClient.init(p.options);return f.set(t,I),y.setState({wcSignClients:f}),I}),m=p=>{let{wcSignClients:f}=y.getState(),g=f.get(t);if(!g)return ()=>{};let I=v=>{let x=y.getState().accounts;if(v.params.event.name==="accountsChanged"&&x&&!Object.values(x).map(U=>U.bech32Address).includes(v.params.event.data[0])){let U=v.params.chainId.split(":")[1];U&&S([U]);}else p();};return g.events.on("session_delete",r),g.events.on("session_expire",r),g.events.on("session_event",I),()=>{g.events.off("session_delete",r),g.events.off("session_expire",r),g.events.off("session_event",I);}},S=p=>l(void 0,null,function*(){var ne;let f=typeof p=="string"?[p]:p,{wcSignClients:g}=y.getState(),I=g.get(t);if(!I)throw new Error("enable walletConnect.signClient is not defined");let{walletConnect:v,chains:x}=d.getState();if(!((ne=v==null?void 0:v.options)!=null&&ne.projectId))throw new Error("walletConnect.options.projectId is not defined");let{Web3Modal:U}=yield import('@web3modal/standalone'),$=new U(E({projectId:v.options.projectId,walletConnectVersion:2,enableExplorer:!1,explorerRecommendedWalletIds:"NONE"},v.web3Modal)),V=a(f);if(!V){let{uri:L,approval:Y}=yield Ae(I.connect({requiredNamespaces:{cosmos:{methods:["cosmos_getAccounts","cosmos_signAmino","cosmos_signDirect"],chains:f.map(G=>`cosmos:${G}`),events:["chainChanged","accountsChanged"]}}}),15e3,new Error("Connection timeout"));if(!L)throw new Error("No wallet connect uri");e?i(L):yield $.openModal({uri:L});let oe=G=>l(void 0,null,function*(){return G.aborted?Promise.reject(new Error("User closed wallet connect")):new Promise((Se,J)=>{Y().then(Pe=>{let Ne=Pe.sessionProperties;if(!Ne)return J(new Error("No session properties"));let we=JSON.parse(String(Ne.keys));if(we.length===0)return J(new Error("No accounts"));let Be=we[0];if(!Be)return J(new Error("No accounts"));let _e={};return f.forEach(ie=>{_e[ie]=N(E({},Be),{bech32Address:encoding.toBech32(x.find(Mt=>Mt.chainId===ie).bech32Config.bech32PrefixAccAddr,encoding.fromBech32(we[0].bech32Address).data)});}),y.setState(ie=>({accounts:E(E({},ie.accounts||{}),_e)})),Se(Pe)}).catch(J),G.addEventListener("abort",()=>{J(new Error("User closed wallet connect"));},{once:!0});})});try{let G=new AbortController,Se=G.signal;$.subscribeModal(J=>{J.open||G.abort();}),yield oe(Se);}catch(G){if($.closeModal(),!G.message.toLowerCase().includes("no matching key"))return Promise.reject(G)}return e||$.closeModal(),Promise.resolve()}try{yield Ae((()=>l(void 0,null,function*(){let L=yield h(f[0]),Y={};f.forEach(oe=>{Y[oe]=N(E({},L),{bech32Address:encoding.toBech32(x.find(G=>G.chainId===oe).bech32Config.bech32PrefixAccAddr,encoding.fromBech32(L.bech32Address).data)});}),y.setState({accounts:Y});}))(),15e3,new Error("Connection timeout"));}catch(L){if(o(V.topic),!L.message.toLowerCase().includes("no matching key"))throw L}}),w=p=>l(void 0,null,function*(){var x;let{wcSignClients:f}=y.getState(),g=f.get(t);if(!g)throw new Error("walletConnect.signClient is not defined");let I=(x=s([p]))==null?void 0:x.topic;if(!I)throw new Error("No wallet connect session");let v=yield g.request({topic:I,chainId:`cosmos:${p}`,request:{method:"cosmos_getAccounts",params:{}}});if(!v[0])throw new Error("No wallet connect account");return {address:v[0].address,algo:v[0].algo,pubkey:new Uint8Array(Buffer.from(v[0].pubkey,n))}}),h=p=>l(void 0,null,function*(){let{address:f,algo:g,pubkey:I}=yield w(p);return {address:encoding.fromBech32(f).data,algo:g,bech32Address:f,name:"",pubKey:I,isKeystone:!1,isNanoLedger:!1}}),b=(...p)=>l(void 0,null,function*(){var L,Y;let[f,g,I]=p,{accounts:v,wcSignClients:x}=y.getState(),U=x.get(t);if(!U)throw new Error("walletConnect.signClient is not defined");if(!v)throw new Error("account is not defined");let $=(L=s([f]))==null?void 0:L.topic;if(!$)throw new Error("No wallet connect session");if(!I.bodyBytes)throw new Error("No bodyBytes");if(!I.authInfoBytes)throw new Error("No authInfoBytes");let V={topic:$,chainId:`cosmos:${f}`,request:{method:"cosmos_signDirect",params:{signerAddress:g,signDoc:N(E({},I),{bodyBytes:Buffer.from(I.bodyBytes).toString(n),authInfoBytes:Buffer.from(I.authInfoBytes).toString(n),accountNumber:(Y=I.accountNumber)==null?void 0:Y.toString()})}}};return i(),yield U.request(V)}),T=(...p)=>l(void 0,null,function*(){let[f,g,I]=p,{signature:v,signed:x}=yield b(f,g,I);return {signed:{chainId:x.chainId,accountNumber:Bt__default.default.fromString(x.accountNumber,!1),authInfoBytes:new Uint8Array(Buffer.from(x.authInfoBytes,n)),bodyBytes:new Uint8Array(Buffer.from(x.bodyBytes,n))},signature:v}}),W=(...p)=>l(void 0,null,function*(){var L;let[f,g,I,v]=p,{wcSignClients:x}=y.getState(),U=x.get(t),{accounts:$}=y.getState();if(!U)throw new Error("walletConnect.signClient is not defined");if(!$)throw new Error("account is not defined");let V=(L=s([f]))==null?void 0:L.topic;if(!V)throw new Error("No wallet connect session");return i(),yield U.request({topic:V,chainId:`cosmos:${f}`,request:{method:"cosmos_signDirect",params:{signerAddress:g,signDoc:I}}})}),k=(...p)=>l(void 0,null,function*(){let[f,g,I,v]=p;return yield W(f,g,I)}),C=p=>({getAccounts:()=>l(void 0,null,function*(){return [yield w(p)]}),signDirect:(f,g)=>T(p,f,g)}),A=p=>({getAccounts:()=>l(void 0,null,function*(){return [yield w(p)]}),signAmino:(f,g)=>k(p,f,g)});return {enable:S,disable:p=>l(void 0,null,function*(){var I;let{wcSignClients:f}=y.getState(),g=f.get(t);if(p===void 0){let v=g==null?void 0:g.session.getAll();v!==void 0&&(yield Promise.all(v.map(x=>o(x.topic))));}else typeof p=="string"?yield o((I=s([p]))==null?void 0:I.topic):yield Promise.all(p.map(v=>{var x;return o((x=s([v]))==null?void 0:x.topic)}));(g==null?void 0:g.session.getAll().length)===0&&r();}),experimentalSuggestChain:(...p)=>l(void 0,null,function*(){yield Promise.reject(new Error("WalletConnect does not support experimentalSuggestChain"));}),getKey:h,getOfflineSigner:p=>({getAccounts:()=>l(void 0,null,function*(){return [yield w(p)]}),signDirect:(f,g)=>T(p,f,g),signAmino:(f,g)=>k(p,f,g)}),getOfflineSignerAuto:p=>l(void 0,null,function*(){return (yield h(p)).isNanoLedger?A(p):C(p)}),getOfflineSignerOnlyAmino:A,signAmino:k,signDirect:T,subscription:m,init:u}};var Je=()=>{var t,n,i;if(!((i=(n=(t=d.getState().walletConnect)==null?void 0:t.options)==null?void 0:n.projectId)!=null&&i.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:(r,o,s)=>`${r.replaceAll("/","").replaceAll(":","")}://wc?${o}`};return j(e)};var Xe=()=>{var t,n,i;if(!((i=(n=(t=d.getState().walletConnect)==null?void 0:t.options)==null?void 0:n.projectId)!=null&&i.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:(r,o,s)=>{let a=r.replaceAll("/","").replaceAll(":",""),c=encodeURIComponent(o);switch(s){case"ios":return `${a}://wcV2?${c}`;case"android":return `${a}://wcV2?${c}#Intent;package=com.chainapsis.keplr;scheme=keplrwallet;end;`;default:return `${a}://wc?uri=${c}`}}};return j(e)};var Ze=()=>{var t,n,i;if(!((i=(n=(t=d.getState().walletConnect)==null?void 0:t.options)==null?void 0:n.projectId)!=null&&i.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:(r,o,s)=>{let a=r.replaceAll("/","").replaceAll(":",""),c=encodeURIComponent(o);switch(s){case"ios":return `${a}://wcV2?${c}`;case"android":return `${a}://wcV2?${c}#Intent;package=io.leapwallet.cosmos;scheme=leapwallet;end;`;default:return `${a}://wc?uri=${c}`}}};return j(e)};var _=(e=d.getState().walletType)=>{try{return R(e),!0}catch(t){return !1}},z=()=>{window.sessionStorage.removeItem(X),y.setState(Z);},R=(e=d.getState().walletType)=>{switch(e){case"keplr":return ae();case"leap":return ce();case"cosmostation":return se();case"vectis":return ue();case"walletconnect":return j();case"wc_keplr_mobile":return Xe();case"wc_leap_mobile":return Ze();case"wc_cosmostation_mobile":return Je();case"metamask_snap_leap":return $e();case"station":return le();default:throw new Error("Unknown wallet type")}},Ko=()=>Object.fromEntries(Ge.map(e=>[e,_(e)])),et=e=>e==="walletconnect"||e==="wc_keplr_mobile"||e==="wc_leap_mobile"||e==="wc_cosmostation_mobile";var ee=e=>l(void 0,null,function*(){var t;try{let{recentChainIds:n,chains:i,walletType:r}=d.getState(),o=(e==null?void 0:e.walletType)||r;if(!_(o))throw new Error(`${o} is not available`);let a=R(o),c=typeof(e==null?void 0:e.chainId)=="string"?[e.chainId]:(e==null?void 0:e.chainId)||n;if(!c)throw new Error("No last known connected chain, connect action requires chain ids");let u=i==null?void 0:i.map(h=>h.chainId);c.forEach(h=>{if(!(u!=null&&u.includes(h)))throw new Error(`Chain ${h} is not provided in GrazProvider`)}),y.setState(h=>{let b=d.getState()._reconnect||!!d.getState()._reconnectConnector||!!c;return h.activeChainIds&&c.filter(W=>{var k;return !((k=h.activeChainIds)!=null&&k.includes(W))}).length>0?{status:"connecting"}:b?{status:"reconnecting"}:{status:"connecting"}});let{accounts:m}=y.getState();if(yield (t=a.init)==null?void 0:t.call(a),yield a.enable(c),!et(o)){let h=yield a.getKey(c[0]),b={};c.forEach(T=>{b[T]=N(E({},h),{bech32Address:encoding.toBech32(i.find(W=>W.chainId===T).bech32Config.bech32PrefixAccAddr,encoding.fromBech32(h.bech32Address).data)});}),y.setState(T=>({accounts:E(E({},T.accounts||{}),b)}));}d.setState(h=>({recentChainIds:[...h.recentChainIds||[],...c].filter((b,T,W)=>W.indexOf(b)===T)})),y.setState(h=>({activeChainIds:[...h.activeChainIds||[],...c].filter((b,T,W)=>W.indexOf(b)===T)})),d.setState({walletType:o,_reconnect:!!(e!=null&&e.autoReconnect),_reconnectConnector:o}),y.setState({status:"connected"}),typeof window!="undefined"&&window.sessionStorage.setItem(X,"Active");let S=c.map(h=>i.find(b=>b.chainId===h));return {accounts:y.getState().accounts,walletType:o,chains:S}}catch(n){throw console.error("connect ",n),y.getState().accounts===null&&y.setState({status:"disconnected"}),y.getState().accounts&&y.getState().activeChainIds&&y.setState({status:"connected"}),n}}),Te=e=>{typeof window!="undefined"&&window.sessionStorage.removeItem(X);let t=typeof(e==null?void 0:e.chainId)=="string"?[e.chainId]:e==null?void 0:e.chainId;if(t){let n=y.getState().accounts;t.forEach(r=>{n==null||delete n[r];}),Object.values(n||{}).length===0?(y.setState(Z),d.setState({_reconnect:!1,_reconnectConnector:null,recentChainIds:null})):(y.setState(r=>{var o;return {activeChainIds:(o=r.activeChainIds)==null?void 0:o.filter(s=>!t.includes(s)),accounts:n}}),d.setState(r=>{var o;return {recentChainIds:(o=r.recentChainIds)==null?void 0:o.filter(s=>!t.includes(s))}}));}else y.setState(Z),d.setState({_reconnect:!1,_reconnectConnector:null,recentChainIds:null});return Promise.resolve()},F=e=>l(void 0,null,function*(){var r;let{recentChainIds:t,_reconnectConnector:n,_reconnect:i}=d.getState();try{let o=_(n||void 0);if(t&&o&&n)return yield ee({chainId:t,walletType:n,autoReconnect:i})}catch(o){(r=e==null?void 0:e.onError)==null||r.call(e,o),Te();}}),tt=e=>l(void 0,null,function*(){if(!(e!=null&&e.chainId))throw new Error("chainId is required");let{walletType:t}=d.getState(),n=e.walletType||t;if(!_(n))throw new Error(`${n} is not available`);let r=R(n),o=r.getOfflineSigner(e.chainId),s=r.getOfflineSignerOnlyAmino(e.chainId),a=yield r.getOfflineSignerAuto(e.chainId);return {offlineSigner:o,offlineSignerAmino:s,offlineSignerAuto:a}});var Ee=()=>{d.setState({recentChainIds:null});},Xo=()=>d.getState().recentChainIds,Zo=()=>{var n;let{recentChainIds:e,chains:t}=d.getState();return (n=e==null?void 0:e.map(i=>t.find(r=>r.chainId===i)))!=null?n:null},be=n=>l(void 0,[n],function*({chainInfo:e,walletType:t}){return yield R(t).experimentalSuggestChain(e),e}),nt=e=>l(void 0,null,function*(){var i;let t=d.getState().walletType;return yield be({chainInfo:e.chainInfo,walletType:(i=e.walletType)!=null?i:t}),yield ee({chainId:e.chainInfo.chainId,walletType:e.walletType,autoReconnect:e.autoReconnect})});var ot=e=>(d.setState(t=>({walletConnect:e.walletConnect||t.walletConnect,walletType:e.defaultWallet||t.walletType,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 it=s=>l(void 0,[s],function*({signingClient:e,senderAddress:t,recipientAddress:n,amount:i,fee:r,memo:o}){if(!e)throw new Error("No connected account detected");if(!t)throw new Error("senderAddress is not defined");return e.sendTokens(t,n,i,r,o)}),rt=m=>l(void 0,[m],function*({signingClient:e,senderAddress:t,recipientAddress:n,transferAmount:i,sourcePort:r,sourceChannel:o,timeoutHeight:s,timeoutTimestamp:a,fee:c,memo:u}){if(!e)throw new Error("Stargate signing client is not ready");if(!t)throw new Error("senderAddress is not defined");return e.sendIbcTokens(t,n,i,r,o,s,a,c,u)}),st=a=>l(void 0,[a],function*({signingClient:e,senderAddress:t,msg:n,fee:i,options:r,label:o,codeId:s}){if(!e)throw new Error("CosmWasm signing client is not ready");return e.instantiate(t,s,n,o,i,r)}),at=a=>l(void 0,[a],function*({signingClient:e,senderAddress:t,msg:n,fee:i,contractAddress:r,funds:o,memo:s}){if(!e)throw new Error("CosmWasm signing client is not ready");return e.execute(t,r,n,i,s,o)}),ct=(e,t,n)=>l(void 0,null,function*(){if(!n)throw new Error("CosmWasm client is not ready");return yield n.queryContractSmart(e,t)}),lt=(e,t,n)=>{if(!n)throw new Error("CosmWasm client is not ready");let i=new TextEncoder().encode(t);return n.queryContractRaw(e,i)};var li=e=>e,ui=e=>e;var de=e=>e?Object.keys(e).length===0:!0;var Oe=class extends Error{constructor(t){super(),this.name="AbortError",this.message=t;}},ut=e=>globalThis.DOMException===void 0?new Oe(e):new DOMException(e),dt=e=>{let t=e.reason===void 0?ut("This operation was aborted."):e.reason;return t instanceof Error?t:ut(t)};function Me(o,s){return l(this,arguments,function*(e,t,{concurrency:n=Number.POSITIVE_INFINITY,stopOnError:i=!0,signal:r}={}){return new Promise((a,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(n)||n===Number.POSITIVE_INFINITY)&&n>=1))throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${n}\` (${typeof n})`);let u=[],m=[],S=new Map,w=!1,h=!1,b=!1,T=0,W=0,k=e[Symbol.iterator]===void 0?e[Symbol.asyncIterator]():e[Symbol.iterator](),C=M=>{w=!0,h=!0,c(M);};r&&(r.aborted&&C(dt(r)),r.addEventListener("abort",()=>{C(dt(r));}));let A=()=>l(this,null,function*(){if(h)return;let M=yield k.next(),P=W;if(W++,M.done){if(b=!0,T===0&&!h){if(!i&&m.length>0){C(new AggregateError(m));return}if(h=!0,S.size===0){a(u);return}let D=[];for(let[B,te]of u.entries())S.get(B)!==mt&&D.push(te);a(D);}return}T++,l(this,null,function*(){try{let D=yield M.value;if(h)return;let B=yield t(D,P);B===mt&&S.set(P,B),u[P]=B,T--,yield A();}catch(D){if(i)C(D);else {m.push(D),T--;try{yield A();}catch(B){C(B);}}}});});l(this,null,function*(){for(let M=0;M<n;M++){try{yield A();}catch(P){C(P);break}if(b||w)break}});})})}var mt=Symbol("skip");var K=({chainId:e,multiChain:t})=>{let n=d(r=>r.chains);if(!n)throw new Error("No chains found in GrazProvider");let i=typeof e=="string"?[e]:e;switch(!0){case(!!t&&!!i):return i.map(r=>n.find(o=>o.chainId===r)).filter(Boolean);case(!t&&!!i):return [i.map(r=>n.find(o=>o.chainId===r)).filter(Boolean)[0]];case(!!t&&!i):return n;default:return [n[0]]}},q=(e,t,n)=>l(void 0,null,function*(){let i=d.getState().multiChainFetchConcurrency;if(e){let o=yield Me(t,n,{concurrency:i});return Object.fromEntries(o.map((s,a)=>[t[a].chainId,s]))}return yield n(t[0])}),pt=(e,t,n)=>{if(e){let r=t.map(n);return Object.fromEntries(r.map((o,s)=>[t[s].chainId,o]))}return n(t[0])};var ve=e=>{let t=K({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),n=react.useMemo(()=>["USE_STARGATE_CLIENT",t],[t]);return reactQuery.useQuery({queryKey:n,queryFn:r=>l(void 0,[r],function*({queryKey:[,i]}){if(i.length<1)throw new Error("No chains found");return yield q(!!(e!=null&&e.multiChain),i,s=>l(void 0,null,function*(){var m;let a=(m=d.getState().chainsConfig)==null?void 0:m[s.chainId],c={url:s.rpc,headers:E({},(a==null?void 0:a.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})},Re=e=>{let t=K({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),n=react.useMemo(()=>["USE_COSMWASM_CLIENT",t],[t]);return reactQuery.useQuery({queryKey:n,queryFn:r=>l(void 0,[r],function*({queryKey:[,i]}){if(i.length<1)throw new Error("No chains found");return yield q(!!(e!=null&&e.multiChain),i,s=>l(void 0,null,function*(){var m;let a=(m=d.getState().chainsConfig)==null?void 0:m[s.chainId],c={url:s.rpc,headers:E({},(a==null?void 0:a.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})},me=({type:e,chainId:t,multiChain:n,enabled:i})=>{let r=K({chainId:t,multiChain:n}),o=react.useMemo(()=>["USE_TENDERMINT_CLIENT",e,r],[e,r]);return reactQuery.useQuery({queryKey:o,queryFn:c=>l(void 0,[c],function*({queryKey:[,s,a]}){if(a.length<1)throw new Error("No chains found");return yield q(!!n,a,m=>l(void 0,null,function*(){var T;let S=(T=d.getState().chainsConfig)==null?void 0:T[m.chainId],w={url:m.rpc,headers:E({},(S==null?void 0:S.rpcHeaders)||{})};return yield (s==="tm37"?tendermintRpc.Tendermint37Client:tendermintRpc.Tendermint34Client).connect(w)}))}),enabled:!!r&&r.length>0&&(i!==void 0?!!i:!0),refetchOnWindowFocus:!1})};var Di=()=>d(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"}),shallow.shallow),pe=e=>{let n=["USE_CHECK_WALLET",d(r=>e||r.walletType)];return reactQuery.useQuery(n,({queryKey:[,r]})=>_(r))};var H=e=>{let t=d(a=>a.walletType),n=y(a=>a.activeChainIds),i=K({chainId:e!=null&&e.chainId?e.chainId:n||void 0,multiChain:e==null?void 0:e.multiChain}),r=y(a=>a.accounts),o=y(a=>a.status);return react.useEffect(()=>y.subscribe(a=>a.status,(a,c)=>{var u,m,S;if(a==="connected"){let{accounts:w,activeChainIds:h}=y.getState(),{chains:b}=d.getState(),{walletType:T}=d.getState();if(!w||!h||!b)return (u=e==null?void 0:e.onDisconnect)==null?void 0:u.call(e);(m=e==null?void 0:e.onConnect)==null||m.call(e,{accounts:w,chains:h.map(W=>b.find(k=>k.chainId===W)),walletType:T,isReconnect:c==="reconnecting"});}a==="disconnected"&&((S=e==null?void 0:e.onDisconnect)==null||S.call(e));}),[e]),{data:react.useMemo(()=>r?pt(!!(e!=null&&e.multiChain),i,a=>r[a.chainId]):void 0,[r,i,e==null?void 0:e.multiChain]),isConnected:o==="connected",isConnecting:o==="connecting",isDisconnected:o==="disconnected",isReconnecting:o==="reconnecting",isLoading:o==="connecting"||o==="reconnecting",walletType:o==="connected"?t:void 0,reconnect:F,status:o}},Yt=e=>{let t=K({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),{data:n}=H(),i=(e==null?void 0:e.bech32Address)||(n==null?void 0:n.bech32Address),{data:r}=ve({chainId:t.map(s=>s.chainId),multiChain:!0,enabled:((e==null?void 0:e.enabled)===void 0?!0:e.enabled)&&!!i}),o=react.useMemo(()=>["USE_ALL_BALANCES",r,t,i,e==null?void 0:e.chainId],[i,e==null?void 0:e.chainId,t,r]);return reactQuery.useQuery(o,u=>l(void 0,[u],function*({queryKey:[,s,a,c]}){if(!c)throw new Error("address is not defined");return yield q(!!(e!=null&&e.multiChain),a,S=>l(void 0,null,function*(){let w=s==null?void 0:s[S.chainId];if(!w)throw new Error(`Client is not ready ${S.chainId}`);return yield w.getAllBalances(encoding.toBech32(S.bech32Config.bech32PrefixAccAddr,encoding.fromBech32(c).data))}))}),{enabled:!!i&&!!t&&t.length>0&&!de(r)&&((e==null?void 0:e.enabled)===void 0?!0:e.enabled),refetchOnMount:!1,refetchOnReconnect:!0,refetchOnWindowFocus:!1})},Yi=e=>{let t=K({chainId:e.chainId}),{data:n}=H({chainId:e.chainId}),i=e.bech32Address||(n==null?void 0:n.bech32Address),{data:r,refetch:o}=Yt({chainId:t.map(c=>c.chainId),bech32Address:i,enabled:!!i&&(e.enabled===void 0?!0:e.enabled)}),s=["USE_BALANCE",e.denom,r,t,i,e.chainId],a=reactQuery.useQuery(s,({queryKey:[,c,u]})=>u==null?void 0:u.find(m=>m.denom===c),{enabled:!!r&&!!(r!=null&&r.length)&&(e.enabled===void 0?!0:e.enabled)});return N(E({},a),{refetch:c=>l(void 0,null,function*(){return yield o(),a.refetch(c)})})},Ji=({onError:e,onLoading:t,onSuccess:n}={})=>{let r=reactQuery.useMutation(["USE_CONNECT",e,t,n],ee,{onError:(s,a)=>Promise.resolve(e==null?void 0:e(s,a)),onMutate:t,onSuccess:s=>Promise.resolve(n==null?void 0:n(s))}),{data:o}=pe();return {connect:s=>r.mutate(s),connectAsync:s=>r.mutateAsync(s),error:r.error,isLoading:r.isLoading,isSuccess:r.isSuccess,isSupported:!!o,status:r.status}},Xi=({onError:e,onLoading:t,onSuccess:n}={})=>{let r=reactQuery.useMutation(["USE_DISCONNECT",e,t,n],Te,{onError:o=>Promise.resolve(e==null?void 0:e(o,void 0)),onMutate:t,onSuccess:()=>Promise.resolve(n==null?void 0:n(void 0))});return {disconnect:o=>r.mutate(o),disconnectAsync:o=>r.mutateAsync(o),error:r.error,isLoading:r.isLoading,isSuccess:r.isSuccess,status:r.status}},Zi=e=>{let t=K({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),n=d(r=>r.walletType),i=react.useMemo(()=>["USE_OFFLINE_SIGNERS",t,n],[t,n]);return reactQuery.useQuery({queryKey:i,queryFn:s=>l(void 0,[s],function*({queryKey:[,r,o]}){if(r.length<1)throw new Error("No chain found");if(!_(o))throw new Error(`${o} is not available`);return yield q(!!(e!=null&&e.multiChain),r,u=>l(void 0,null,function*(){return yield tt({chainId:u.chainId,walletType:o})}))}),enabled:!!t&&t.length>0&&!!n,refetchOnWindowFocus:!1})},er=e=>{let t=K({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),{data:n}=H(),{data:i}=ve({chainId:t.map(s=>s.chainId),multiChain:!0}),r=(e==null?void 0:e.bech32Address)||(n==null?void 0:n.bech32Address),o=react.useMemo(()=>["USE_BALANCE_STAKED",i,t,r],[t,r,i]);return reactQuery.useQuery(o,u=>l(void 0,[u],function*({queryKey:[,s,a,c]}){if(!c)throw new Error("address is not defined");return yield q(!!(e!=null&&e.multiChain),a,S=>l(void 0,null,function*(){var h;if(!s)throw new Error("Client is not ready");return yield (h=s[S.chainId])==null?void 0:h.getBalanceStaked(encoding.toBech32(S.bech32Config.bech32PrefixAccAddr,encoding.fromBech32(c).data))}))}),{enabled:!!r&&!!t&&t.length>0&&!!i,refetchOnMount:!1,refetchOnReconnect:!0,refetchOnWindowFocus:!1})};var cr=()=>y(e=>e.activeChainIds),Jt=()=>{var e;return (e=y(t=>t.activeChainIds))==null?void 0:e.map(t=>{var i;let n=(i=d.getState().chains)==null?void 0:i.find(r=>r.chainId===t);if(n)return n}).filter(Boolean)},lr=({denom:e})=>{let t=Jt();return reactQuery.useQuery(["USE_ACTIVE_CHAIN_CURRENCY",e],({queryKey:[,r]})=>{var o;return (o=t==null?void 0:t.find(s=>s.currencies.find(a=>a.coinMinimalDenom===r)))==null?void 0:o.currencies.find(s=>s)})},ur=e=>{var r;let t=(r=e.status)!=null?r:"BOND_STATUS_BONDED",n=["USE_ACTIVE_CHAIN_VALIDATORS",e.queryClient,t];return reactQuery.useQuery(n,a=>l(void 0,[a],function*({queryKey:[,o,s]}){if(!o)throw new Error("Query client is not defined");return yield o.staking.validators(s)}),{enabled:typeof e.queryClient!="undefined"})},dr=()=>({data:d(t=>t.recentChainIds),clear:Ee}),mr=()=>{var t;return {data:(t=d(n=>n.recentChainIds))==null?void 0:t.map(n=>{var r;let i=(r=d.getState().chains)==null?void 0:r.find(o=>o.chainId===n);if(i)return i}).filter(Boolean),clear:Ee}},pr=({onError:e,onLoading:t,onSuccess:n}={})=>{let r=reactQuery.useMutation(["USE_SUGGEST_CHAIN",e,t,n],be,{onError:(o,s)=>Promise.resolve(e==null?void 0:e(o,s.chainInfo)),onMutate:o=>t==null?void 0:t(o.chainInfo),onSuccess:o=>Promise.resolve(n==null?void 0:n(o))});return {error:r.error,isLoading:r.isLoading,isSuccess:r.isSuccess,suggest:r.mutate,suggestAsync:r.mutateAsync,status:r.status}},fr=({onError:e,onLoading:t,onSuccess:n}={})=>{let r=reactQuery.useMutation(["USE_SUGGEST_CHAIN_AND_CONNECT",e,t,n],nt,{onError:(s,a)=>Promise.resolve(e==null?void 0:e(s,a)),onMutate:s=>t==null?void 0:t(s),onSuccess:s=>Promise.resolve(n==null?void 0:n(s))}),{data:o}=pe();return {error:r.error,isLoading:r.isLoading,isSuccess:r.isSuccess,isSupported:!!o,status:r.status,suggestAndConnect:r.mutate,suggestAndConnectAsync:r.mutateAsync}};var Ir=({onError:e,onLoading:t,onSuccess:n}={})=>{let{data:i}=H(),r=i==null?void 0:i.bech32Address,o=reactQuery.useMutation(["USE_SEND_TOKENS",e,t,n,r],s=>it(E({senderAddress:r},s)),{onError:(s,a)=>Promise.resolve(e==null?void 0:e(s,a)),onMutate:t,onSuccess:s=>Promise.resolve(n==null?void 0:n(s))});return {error:o.error,isLoading:o.isLoading,isSuccess:o.isSuccess,sendTokens:o.mutate,sendTokensAsync:o.mutateAsync,status:o.status}},Tr=({onError:e,onLoading:t,onSuccess:n}={})=>{let{data:i}=H(),r=i==null?void 0:i.bech32Address,o=reactQuery.useMutation(["USE_SEND_IBC_TOKENS",e,t,n,r],s=>rt(E({senderAddress:r},s)),{onError:(s,a)=>Promise.resolve(e==null?void 0:e(s,a)),onMutate:t,onSuccess:s=>Promise.resolve(n==null?void 0:n(s))});return {error:o.error,isLoading:o.isLoading,isSuccess:o.isSuccess,sendIbcTokens:o.mutate,sendIbcTokensAsync:o.mutateAsync,status:o.status}},Er=({codeId:e,onError:t,onLoading:n,onSuccess:i})=>{let{data:r}=H(),o=r==null?void 0:r.bech32Address,a=reactQuery.useMutation(["USE_INSTANTIATE_CONTRACT",t,n,i,e,o],c=>{var m;if(!o)throw new Error("senderAddress is undefined");let u=N(E({},c),{fee:(m=c.fee)!=null?m:"auto",senderAddress:o,codeId:e});return st(u)},{onError:(c,u)=>Promise.resolve(t==null?void 0:t(c,u)),onMutate:n,onSuccess:c=>Promise.resolve(i==null?void 0:i(c))});return {error:a.error,isLoading:a.isLoading,isSuccess:a.isSuccess,instantiateContract:a.mutate,instantiateContractAsync:a.mutateAsync,status:a.status}},br=({contractAddress:e,onError:t,onLoading:n,onSuccess:i})=>{let{data:r}=H(),o=r==null?void 0:r.bech32Address,a=reactQuery.useMutation(["USE_EXECUTE_CONTRACT",t,n,i,e,o],c=>{var m,S,w;if(!o)throw new Error("senderAddress is undefined");let u=N(E({},c),{fee:(m=c.fee)!=null?m:"auto",senderAddress:o,contractAddress:e,memo:(S=c.memo)!=null?S:"",funds:(w=c.funds)!=null?w:[]});return at(u)},{onError:(c,u)=>Promise.resolve(t==null?void 0:t(c,u)),onMutate:n,onSuccess:c=>Promise.resolve(i==null?void 0:i(c))});return {error:a.error,isLoading:a.isLoading,isSuccess:a.isSuccess,executeContract:a.mutate,executeContractAsync:a.mutateAsync,status:a.status}},Or=e=>{let{data:t}=Re();return reactQuery.useQuery(["USE_QUERY_SMART",e==null?void 0:e.address,e==null?void 0:e.queryMsg,t],({queryKey:[,i]})=>{if(!(e!=null&&e.address)||!e.queryMsg)throw new Error("address or queryMsg undefined");return ct(e.address,e.queryMsg,t)},{enabled:!!(e!=null&&e.address)&&!!(e!=null&&e.queryMsg)&&!!t})},Mr=e=>{let{data:t}=Re(),n=["USE_QUERY_RAW",e==null?void 0:e.key,e==null?void 0:e.address,t];return reactQuery.useQuery(n,({queryKey:[,r]})=>{if(!(e!=null&&e.address)||!e.key)throw new Error("address or key undefined");return lt(e.address,e.key,t)},{enabled:!!(e!=null&&e.address)&&!!(e!=null&&e.key)&&!!t})};function Ur(e){let t=K({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),n=d(o=>o.walletType),i=y(o=>o.activeChainIds),r=react.useMemo(()=>["USE_STARGATE_SIGNING_CLIENT",t,n,e,i],[i,e,t,n]);return reactQuery.useQuery({queryKey:r,queryFn:a=>l(this,[a],function*({queryKey:[,o,s]}){if(o.length<1)throw new Error("No chains found");return yield q(!!(e!=null&&e.multiChain),o,u=>l(this,null,function*(){var T,W;if(!(i!=null&&i.includes(u.chainId)))return;if(!_(s))throw new Error(`${s} is not available`);let S=yield (()=>l(this,null,function*(){switch(e==null?void 0:e.offlineSigner){case"offlineSigner":return R(s).getOfflineSigner(u.chainId);case"offlineSignerAuto":return R(s).getOfflineSignerAuto(u.chainId);case"offlineSignerOnlyAmino":return R(s).getOfflineSignerOnlyAmino(u.chainId);default:return R(s).getOfflineSignerAuto(u.chainId)}}))(),w=(T=d.getState().chainsConfig)==null?void 0:T[u.chainId],h={url:u.rpc,headers:E({},(w==null?void 0:w.rpcHeaders)||{})};return (e==null?void 0:e.multiChain)===!0&&e.opts,yield stargate.SigningStargateClient.connectWithSigner(h,S,e!=null&&e.multiChain?(W=e.opts)==null?void 0:W[u.chainId]:e==null?void 0:e.opts)}))}),enabled:!!t&&t.length>0&&!!n&&((e==null?void 0:e.enabled)!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}function qr(e){let t=K({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),n=d(o=>o.walletType),i=y(o=>o.activeChainIds),r=react.useMemo(()=>["USE_COSMWASM_SIGNING_CLIENT",t,n,e,i],[i,e,t,n]);return reactQuery.useQuery({queryKey:r,queryFn:a=>l(this,[a],function*({queryKey:[,o,s]}){if(o.length<1)throw new Error("No chains found");return yield q(!!(e!=null&&e.multiChain),o,u=>l(this,null,function*(){var W,k;if(!(i!=null&&i.includes(u.chainId)))return;if(!_(s))throw new Error(`${s} is not available`);let S=yield (()=>l(this,null,function*(){switch(e==null?void 0:e.offlineSigner){case"offlineSigner":return R(s).getOfflineSigner(u.chainId);case"offlineSignerAuto":return R(s).getOfflineSignerAuto(u.chainId);case"offlineSignerOnlyAmino":return R(s).getOfflineSignerOnlyAmino(u.chainId);default:return R(s).getOfflineSignerAuto(u.chainId)}}))(),w=(W=d.getState().chainsConfig)==null?void 0:W[u.chainId],h={url:u.rpc,headers:E({},(w==null?void 0:w.rpcHeaders)||{})},b=w!=null&&w.gas?stargate.GasPrice.fromString(`${w.gas.price}${w.gas.denom}`):void 0;return yield cosmwasmStargate.SigningCosmWasmClient.connectWithSigner(h,S,E({gasPrice:b},e!=null&&e.multiChain?(k=e.opts)==null?void 0:k[u.chainId]:(e==null?void 0:e.opts)||{}))}))}),enabled:!!t&&t.length>0&&!!n&&((e==null?void 0:e.enabled)!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}function Gr(e){let t=K({chainId:e.chainId,multiChain:e.multiChain}),n=d(s=>s.walletType),i=y(s=>s.activeChainIds),r=react.useMemo(()=>["USE_STARGATE_TM_SIGNING_CLIENT",t,n,e,i],[i,e,t,n]),{data:o}=me({type:e.type,chainId:e.chainId,multiChain:e.multiChain});return reactQuery.useQuery({queryKey:r,queryFn:c=>l(this,[c],function*({queryKey:[,s,a]}){if(s.length<1)throw new Error("No chains found");return yield q(!!e.multiChain,s,m=>l(this,null,function*(){var T;if(!(i!=null&&i.includes(m.chainId)))return;if(!_(a))throw new Error(`${a} is not available`);if(!o)throw new Error("No tendermint client found");let w=yield (()=>l(this,null,function*(){switch(e.offlineSigner){case"offlineSigner":return R(a).getOfflineSigner(m.chainId);case"offlineSignerAuto":return R(a).getOfflineSignerAuto(m.chainId);case"offlineSignerOnlyAmino":return R(a).getOfflineSignerOnlyAmino(m.chainId);default:return R(a).getOfflineSignerAuto(m.chainId)}}))(),h=e.multiChain?o[m.chainId]:o;return yield stargate.SigningStargateClient.createWithSigner(h,w,e.multiChain?(T=e.opts)==null?void 0:T[m.chainId]:e.opts)}))}),enabled:!!t&&t.length>0&&!!n&&!!o&&(e.enabled!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}function Fr(e){let t=K({chainId:e.chainId,multiChain:e.multiChain}),n=d(a=>a.walletType),i=y(a=>a.activeChainIds),r=react.useMemo(()=>["USE_COSMWASM_TM_SIGNING_CLIENT",t,n,e,i],[i,e,t,n]),{data:o}=me({type:e.type,chainId:e.chainId,multiChain:!1,enabled:!e.multiChain}),{data:s}=me({type:e.type,chainId:e.chainId,multiChain:!0,enabled:!!e.multiChain});return reactQuery.useQuery({queryKey:r,queryFn:u=>l(this,[u],function*({queryKey:[,a,c]}){if(a.length<1)throw new Error("No chains found");return yield q(!!e.multiChain,a,S=>l(this,null,function*(){var C,A;if(!(i!=null&&i.includes(S.chainId)))return;if(!_(c))throw new Error(`${c} is not available`);let h=yield (()=>l(this,null,function*(){switch(e.offlineSigner){case"offlineSigner":return R(c).getOfflineSigner(S.chainId);case"offlineSignerAuto":return R(c).getOfflineSignerAuto(S.chainId);case"offlineSignerOnlyAmino":return R(c).getOfflineSignerOnlyAmino(S.chainId);default:return R(c).getOfflineSignerAuto(S.chainId)}}))(),b=(C=d.getState().chainsConfig)==null?void 0:C[S.chainId],T=b!=null&&b.gas?stargate.GasPrice.fromString(`${b.gas.price}${b.gas.denom}`):void 0,W=e.multiChain?s==null?void 0:s[S.chainId]:o;if(!W)throw new Error("No tendermint client found");return yield cosmwasmStargate.SigningCosmWasmClient.createWithSigner(W,h,E({gasPrice:T},e.multiChain?(A=e.opts)==null?void 0:A[S.chainId]:e.opts||{}))}))}),enabled:!!t&&t.length>0&&!!n&&(!!o||!de(s))&&(e.enabled!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}var Tt=({children:e})=>{let[t,n]=react.useState(!1);return react.useEffect(()=>{n(!0);},[]),jsxRuntime.jsx(jsxRuntime.Fragment,{children:t?e:null})};var nn=()=>{let e=typeof window!="undefined"&&window.sessionStorage.getItem(X)==="Active",{_reconnect:t,_onReconnectFailed:n,_reconnectConnector:i}=d(),{activeChainIds:r,wcSignClients:o}=y(),s=_(i||void 0);return react.useEffect(()=>{if(i){if(!s)return;e&&r?F({onError:n}):!e&&t&&F({onError:n});}},[s]),react.useEffect(()=>{var a,c,u,m,S,w,h,b,T,W,k,C;if(i){if(!s)return;i==="cosmostation"&&((c=(a=se()).subscription)==null||c.call(a,()=>{F({onError:n});})),i==="keplr"&&((m=(u=ae()).subscription)==null||m.call(u,()=>{F({onError:n});})),i==="leap"&&((w=(S=ce()).subscription)==null||w.call(S,()=>{F({onError:n});})),i==="vectis"&&((b=(h=ue()).subscription)==null||b.call(h,()=>{F({onError:n});})),i==="walletconnect"&&o.has("walletconnect")&&((W=(T=j()).subscription)==null||W.call(T,()=>{F({onError:n});})),i==="station"&&((C=(k=le()).subscription)==null||C.call(k,()=>{F({onError:n});}));}},[i,o,s]),null},bt=()=>(nn(),null);var sn=new reactQuery.QueryClient({}),fs=i=>{var r=i,{children:e,grazOptions:t}=r,n=Ue(r,["children","grazOptions"]);return ot(t),jsxRuntime.jsx(reactQuery.QueryClientProvider,N(E({client:sn},n),{children:jsxRuntime.jsxs(Tt,{children:[e,jsxRuntime.jsx(bt,{})]})}),"graz-provider")};
22
22
 
23
- exports.GrazEvents = Tt;
24
- exports.GrazProvider = ps;
25
- exports.WALLET_TYPES = Ue;
26
- exports.WalletType = Ke;
27
- exports.checkWallet = B;
28
- exports.clearRecentChain = Ie;
29
- exports.clearSession = G;
30
- exports.configureGraz = tt;
31
- exports.connect = Z;
32
- exports.defineChainInfo = li;
33
- exports.defineChains = ci;
34
- exports.disconnect = Ae;
35
- exports.executeContract = rt;
23
+ exports.GrazEvents = bt;
24
+ exports.GrazProvider = fs;
25
+ exports.WALLET_TYPES = Ge;
26
+ exports.WalletType = qe;
27
+ exports.checkWallet = _;
28
+ exports.clearRecentChain = Ee;
29
+ exports.clearSession = z;
30
+ exports.configureGraz = ot;
31
+ exports.connect = ee;
32
+ exports.defineChainInfo = ui;
33
+ exports.defineChains = li;
34
+ exports.disconnect = Te;
35
+ exports.executeContract = at;
36
36
  exports.getAvailableWallets = Ko;
37
- exports.getCosmostation = re;
38
- exports.getKeplr = se;
39
- exports.getLeap = ae;
40
- exports.getMetamaskSnapLeap = ze;
41
- exports.getOfflineSigners = Ze;
42
- exports.getQueryRaw = at;
43
- exports.getQuerySmart = st;
44
- exports.getRecentChainIds = Jo;
45
- exports.getRecentChains = Xo;
46
- exports.getVectis = ce;
47
- exports.getWCCosmostation = Ve;
48
- exports.getWCKeplr = Ye;
49
- exports.getWCLeap = Je;
50
- exports.getWallet = v;
51
- exports.getWalletConnect = Q;
52
- exports.instantiateContract = it;
53
- exports.isWalletConnect = Xe;
37
+ exports.getCosmostation = se;
38
+ exports.getKeplr = ae;
39
+ exports.getLeap = ce;
40
+ exports.getMetamaskSnapLeap = $e;
41
+ exports.getOfflineSigners = tt;
42
+ exports.getQueryRaw = lt;
43
+ exports.getQuerySmart = ct;
44
+ exports.getRecentChainIds = Xo;
45
+ exports.getRecentChains = Zo;
46
+ exports.getVectis = ue;
47
+ exports.getWCCosmostation = Je;
48
+ exports.getWCKeplr = Xe;
49
+ exports.getWCLeap = Ze;
50
+ exports.getWallet = R;
51
+ exports.getWalletConnect = j;
52
+ exports.instantiateContract = st;
53
+ exports.isWalletConnect = et;
54
54
  exports.reconnect = F;
55
- exports.sendIbcTokens = ot;
56
- exports.sendTokens = nt;
57
- exports.suggestChain = Te;
58
- exports.suggestChainAndConnect = et;
59
- exports.useAccount = $;
60
- exports.useActiveChainCurrency = cr;
61
- exports.useActiveChainIds = ar;
62
- exports.useActiveChains = Vt;
63
- exports.useActiveWalletType = Bi;
64
- exports.useBalance = Vi;
65
- exports.useBalanceStaked = Zi;
66
- exports.useBalances = Ht;
67
- exports.useCheckWallet = me;
68
- exports.useConnect = Yi;
69
- exports.useCosmWasmClient = We;
70
- exports.useCosmWasmSigningClient = Lr;
71
- exports.useCosmWasmTmSigningClient = Gr;
72
- exports.useDisconnect = Ji;
73
- exports.useExecuteContract = Er;
74
- exports.useGrazEvents = en;
75
- exports.useInstantiateContract = Tr;
76
- exports.useOfflineSigners = Xi;
77
- exports.useQueryClientValidators = lr;
78
- exports.useQueryRaw = Or;
79
- exports.useQuerySmart = br;
80
- exports.useRecentChainIds = ur;
81
- exports.useRecentChains = dr;
82
- exports.useSendIbcTokens = Ir;
83
- exports.useSendTokens = Ar;
84
- exports.useStargateClient = xe;
55
+ exports.sendIbcTokens = rt;
56
+ exports.sendTokens = it;
57
+ exports.suggestChain = be;
58
+ exports.suggestChainAndConnect = nt;
59
+ exports.useAccount = H;
60
+ exports.useActiveChainCurrency = lr;
61
+ exports.useActiveChainIds = cr;
62
+ exports.useActiveChains = Jt;
63
+ exports.useActiveWalletType = Di;
64
+ exports.useBalance = Yi;
65
+ exports.useBalanceStaked = er;
66
+ exports.useBalances = Yt;
67
+ exports.useCheckWallet = pe;
68
+ exports.useConnect = Ji;
69
+ exports.useCosmWasmClient = Re;
70
+ exports.useCosmWasmSigningClient = qr;
71
+ exports.useCosmWasmTmSigningClient = Fr;
72
+ exports.useDisconnect = Xi;
73
+ exports.useExecuteContract = br;
74
+ exports.useGrazEvents = nn;
75
+ exports.useInstantiateContract = Er;
76
+ exports.useOfflineSigners = Zi;
77
+ exports.useQueryClientValidators = ur;
78
+ exports.useQueryRaw = Mr;
79
+ exports.useQuerySmart = Or;
80
+ exports.useRecentChainIds = dr;
81
+ exports.useRecentChains = mr;
82
+ exports.useSendIbcTokens = Tr;
83
+ exports.useSendTokens = Ir;
84
+ exports.useStargateClient = ve;
85
85
  exports.useStargateSigningClient = Ur;
86
- exports.useStargateTmSigningClient = qr;
87
- exports.useSuggestChain = mr;
88
- exports.useSuggestChainAndConnect = pr;
89
- exports.useTendermintClient = de;
86
+ exports.useStargateTmSigningClient = Gr;
87
+ exports.useSuggestChain = pr;
88
+ exports.useSuggestChainAndConnect = fr;
89
+ exports.useTendermintClient = me;
package/dist/index.mjs CHANGED
@@ -1,7 +1,7 @@
1
1
  import { fromBech32, toBech32 } from '@cosmjs/encoding';
2
2
  import { create } from 'zustand';
3
3
  import { createJSONStorage, subscribeWithSelector, persist } from 'zustand/middleware';
4
- import Nt from 'long';
4
+ import _t from 'long';
5
5
  import { SignClient } from '@walletconnect/sign-client';
6
6
  import { getSdkError } from '@walletconnect/utils';
7
7
  import { QueryClient, useQuery, useMutation, QueryClientProvider } from '@tanstack/react-query';
@@ -12,6 +12,6 @@ import { Tendermint37Client, Tendermint34Client } from '@cosmjs/tendermint-rpc';
12
12
  import { shallow } from 'zustand/shallow';
13
13
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
14
14
 
15
- var Mt=Object.defineProperty,xt=Object.defineProperties;var Wt=Object.getOwnPropertyDescriptors;var re=Object.getOwnPropertySymbols;var Be=Object.prototype.hasOwnProperty,De=Object.prototype.propertyIsEnumerable;var _e=(e,t,n)=>t in e?Mt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,E=(e,t)=>{for(var n in t||(t={}))Be.call(t,n)&&_e(e,n,t[n]);if(re)for(var n of re(t))De.call(t,n)&&_e(e,n,t[n]);return e},N=(e,t)=>xt(e,Wt(t));var Ke=(e,t)=>{var n={};for(var o in e)Be.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(e!=null&&re)for(var o of re(e))t.indexOf(o)<0&&De.call(e,o)&&(n[o]=e[o]);return n};var l=(e,t,n)=>new Promise((o,r)=>{var i=c=>{try{s(n.next(c));}catch(u){r(u);}},a=c=>{try{s(n.throw(c));}catch(u){r(u);}},s=c=>c.done?o(c.value):Promise.resolve(c.value).then(i,a);s((n=n.apply(e,t)).next());});var X="graz-reconnect-session";var Ue=(m=>(m.KEPLR="keplr",m.LEAP="leap",m.VECTIS="vectis",m.COSMOSTATION="cosmostation",m.WALLETCONNECT="walletconnect",m.WC_KEPLR_MOBILE="wc_keplr_mobile",m.WC_LEAP_MOBILE="wc_leap_mobile",m.WC_COSMOSTATION_MOBILE="wc_cosmostation_mobile",m.METAMASK_SNAP_LEAP="metamask_snap_leap",m.STATION="station",m))(Ue||{}),Le=["keplr","leap","vectis","cosmostation","walletconnect","wc_keplr_mobile","wc_leap_mobile","wc_cosmostation_mobile","metamask_snap_leap","station"];var Rt={recentChainIds:null,chains:null,chainsConfig:null,multiChainFetchConcurrency:3,walletType:"keplr",walletConnect:{options:null,web3Modal:null},_notFoundFn:()=>null,_onReconnectFailed:()=>null,_reconnect:!1,_reconnectConnector:null},Z={accounts:null,activeChainIds:null,status:"disconnected",wcSignClient:null},kt={name:"graz-session",version:2,partialize:e=>({accounts:e.accounts,activeChainIds:e.activeChainIds}),storage:createJSONStorage(()=>sessionStorage)},Pt={name:"graz-internal",partialize:e=>({recentChainIds:e.recentChainIds,_reconnect:e._reconnect,_reconnectConnector:e._reconnectConnector}),version:2},y=create(subscribeWithSelector(persist(()=>Z,kt))),d=create(subscribeWithSelector(persist(()=>Rt,Pt)));var se=()=>{if(typeof window.cosmostation.providers.keplr!="undefined"){let e=window.cosmostation.providers.keplr;return Object.assign(e,{subscription:o=>{let r=()=>{F(),o();};return window.cosmostation.cosmos.on("accountChanged",r),()=>{window.cosmostation.cosmos.off("accountChanged",r);}}})}throw d.getState()._notFoundFn(),new Error("window.cosmostation.providers.keplr is not defined")};var ae=()=>{if(typeof window.keplr!="undefined"){let e=window.keplr;return Object.assign(e,{subscription:o=>{let r=()=>{F(),o();};return window.addEventListener("keplr_keystorechange",r),()=>{window.removeEventListener("keplr_keystorechange",r);}}})}throw d.getState()._notFoundFn(),new Error("window.keplr is not defined")};var ce=()=>{if(typeof window.leap!="undefined"){let e=window.leap;return Object.assign(e,{subscription:o=>{let r=()=>{F(),o();};return window.addEventListener("leap_keystorechange",r),()=>{window.removeEventListener("leap_keystorechange",r);}}})}throw d.getState()._notFoundFn(),new Error("window.leap is not defined")};var ze=e=>{let t=window.ethereum;if(t&&e){let n=()=>l(void 0,null,function*(){return yield t.request({method:"wallet_getSnaps"})}),o=g=>l(void 0,null,function*(){try{let A=yield n();return Object.values(A).find(x=>x.id===e.id&&(!g||x.version===g))}catch(A){return}}),r=()=>l(void 0,null,function*(){yield t.request({method:"wallet_requestSnaps",params:{[e.id]:e.params||{}}});}),i=()=>l(void 0,null,function*(){var B;let g=yield t.request({method:"web3_clientVersion"});if(!g.includes("MetaMask"))throw new Error("Metamask is not installed");let x=(B=g.split("MetaMask/v")[1])==null?void 0:B.split(".")[0];if(!(Number(x)>=11))throw new Error("Metamask Snap is not supported in this version");return (yield o())||(yield r()),!0}),a=g=>l(void 0,null,function*(){(yield o())||(yield r());}),s=(g,A,x)=>l(void 0,null,function*(){let k=yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"signDirect",params:{chainId:g,signerAddress:A,signDoc:x}}}}),P=x.accountNumber,B=new Nt(P.low,P.high,P.unsigned);return {signature:k.signature,signed:N(E({},k.signed),{accountNumber:`${B.toString()}`,authInfoBytes:new Uint8Array(Object.values(k.signed.authInfoBytes)),bodyBytes:new Uint8Array(Object.values(k.signed.bodyBytes))})}}),c=(g,A,x)=>l(void 0,null,function*(){return yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"signAmino",params:{chainId:g,signerAddress:A,signDoc:x}}}})}),u=g=>l(void 0,null,function*(){let A=yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"getKey",params:{chainId:g}}}});if(!A)throw new Error("No response from Metamask");return A.pubKey=Uint8Array.from(Object.values(A.pubkey)),delete A.pubkey,E({},A)}),m=g=>l(void 0,null,function*(){let A=yield u(g);return {address:A.bech32Address,algo:A.algo,pubkey:A.pubKey}}),C=(...g)=>l(void 0,null,function*(){let[A,x,k,P]=g;return yield c(A,x,k)}),w=(...g)=>l(void 0,null,function*(){let[A,x,k]=g;return yield s(A,x,k)}),S=g=>({getAccounts:()=>l(void 0,null,function*(){return [yield m(g)]}),signDirect:(A,x)=>w(g,A,x)}),I=g=>({getAccounts:()=>l(void 0,null,function*(){return [yield m(g)]}),signAmino:(A,x)=>C(g,A,x)});return {enable:a,experimentalSuggestChain:(...g)=>l(void 0,null,function*(){yield i(),yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"suggestChain",params:{chainInfo:g[0]}}}});}),getKey:u,getOfflineSigner:g=>({getAccounts:()=>l(void 0,null,function*(){return [yield m(g)]}),signDirect:(A,x)=>w(g,A,x),signAmino:(A,x)=>C(g,A,x)}),getOfflineSignerAuto:g=>l(void 0,null,function*(){return (yield u(g)).isNanoLedger?I(g):S(g)}),getOfflineSignerOnlyAmino:I,init:i,signAmino:C,signDirect:w}}throw d.getState()._notFoundFn(),new Error("window.ethereum is not defined")};var Qe=()=>ze({id:"npm:@leapwallet/metamask-cosmos-snap"});var le=()=>{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=()=>{F(),s();};return window.addEventListener("vectis_accountChanged",c),()=>{window.removeEventListener("vectis_accountChanged",c);}},getOfflineSignerOnlyAmino:(...s)=>e.getOfflineSignerAmino(...s),experimentalSuggestChain:(...s)=>l(void 0,null,function*(){let[c]=s,u=N(E({},c),{rpcUrl:c.rpc,restUrl:c.rest,prettyName:c.chainName.replace(" ",""),bech32Prefix:c.bech32Config.bech32PrefixAccAddr});return e.suggestChains([u])}),signDirect:(...s)=>l(void 0,null,function*(){var m;let{1:c,2:u}=s;return e.signDirect(c,{bodyBytes:u.bodyBytes||Uint8Array.from([]),authInfoBytes:u.authInfoBytes||Uint8Array.from([]),accountNumber:Nt.fromString(((m=u.accountNumber)==null?void 0:m.toString())||"",!1),chainId:u.chainId||""})}),signAmino:(...s)=>l(void 0,null,function*(){let{1:c,2:u}=s;return e.signAmino(c,u)})}}throw d.getState()._notFoundFn(),new Error("window.vectis is not defined")};var Q=()=>typeof window!="undefined"?!!(window.matchMedia("(pointer:coarse)").matches||/Android|webOS|iPhone|iPad|iPod|BlackBerry|Opera Mini/u.test(navigator.userAgent)):!1,je=()=>Q()&&navigator.userAgent.toLowerCase().includes("android"),$e=()=>Q()&&(navigator.userAgent.toLowerCase().includes("iphone")||navigator.userAgent.toLowerCase().includes("ipad"));var He=(e,t,n=new Error("Promise timed out"))=>{let o=new Promise((r,i)=>{setTimeout(()=>{i(n);},t);});return Promise.race([e,o])};var j=e=>{var P,B,te;if(!((te=(B=(P=d.getState().walletConnect)==null?void 0:P.options)==null?void 0:B.projectId)!=null&&te.trim()))throw new Error("walletConnect.options.projectId is not defined");let t=(e==null?void 0:e.encoding)||"base64",n=f=>{if(!e)return;let{appUrl:p,formatNativeUrl:h}=e;if(Q()){if(je())if(!f)window.open(p.mobile.android,"_self","noreferrer noopener");else {let T=h(p.mobile.android,f,"android");window.open(T,"_self","noreferrer noopener");}if($e())if(!f)window.open(p.mobile.ios,"_self","noreferrer noopener");else {let T=h(p.mobile.ios,f,"ios");window.open(T,"_self","noreferrer noopener");}}},o=()=>{let{wcSignClient:f}=y.getState();if(!f)throw new Error("walletConnect.signClient is not defined");F(),d.setState({_reconnect:!1,_reconnectConnector:null,recentChainIds:null});},r=f=>l(void 0,null,function*(){let{wcSignClient:p}=y.getState();if(!p)throw new Error("walletConnect.signClient is not defined");if(!f)throw new Error("No wallet connect session");yield p.disconnect({topic:f,reason:getSdkError("USER_DISCONNECTED")}),yield s(p),o();}),i=f=>{try{let{wcSignClient:p}=y.getState();if(!p)throw new Error("walletConnect.signClient is not defined");let h=p.session.getAll().at(-1);if(!h)return;if(!(h.expiry*1e3>Date.now()+1e3))throw r(h.topic),new Error("invalid session");try{let v=p.find({requiredNamespaces:{cosmos:{methods:["cosmos_getAccounts","cosmos_signAmino","cosmos_signDirect"],chains:f.map(K=>`cosmos:${K}`),events:["chainChanged","accountsChanged"]}}});if(!v.length)throw new Error("no session");return v.at(-1)}catch(v){if(!v.message.toLowerCase().includes("no matching key"))throw v}return h}catch(p){if(!p.message.toLowerCase().includes("no matching key"))throw p}},a=f=>{try{return i(f)}catch(p){return}},s=f=>l(void 0,null,function*(){try{let p=f.core.pairing.pairings.getAll({active:!1});if(!p.length)return;yield Promise.all(p.map(h=>l(void 0,null,function*(){yield f.core.pairing.pairings.delete(h.topic,{code:7001,message:"clear pairing"});})));}catch(p){if(!p.message.toLowerCase().includes("no matching key"))throw p}}),c=()=>l(void 0,null,function*(){let{walletConnect:f}=d.getState();if(!(f!=null&&f.options))throw new Error("walletConnect.options is not defined");let{wcSignClient:p}=y.getState();if(p)return y.setState({wcSignClient:p}),p;let h=yield SignClient.init(f.options);return y.setState({wcSignClient:h}),h}),u=f=>{let{wcSignClient:p}=y.getState();return p?(p.events.on("session_delete",h=>{o();}),p.events.on("session_expire",h=>{o();}),p.events.on("session_event",h=>{let T=y.getState().accounts;if(h.params.event.name==="accountsChanged"&&T&&!Object.values(T).map(v=>v.bech32Address).includes(h.params.event.data[0])){let v=h.params.chainId.split(":")[1];v&&m([v]);}else f();}),()=>{p.events.off("session_delete",h=>{o();}),p.events.off("session_expire",h=>{o();}),p.events.off("session_event",h=>{let T=y.getState().accounts;if(h.params.event.name==="accountsChanged"&&T&&!Object.values(T).map(v=>v.bech32Address).includes(h.params.event.data[0])){let v=h.params.chainId.split(":")[1];v&&m([v]);}else f();});}):()=>{}},m=f=>l(void 0,null,function*(){var ne;let p=typeof f=="string"?[f]:f,{wcSignClient:h}=y.getState();if(!h)throw new Error("enable walletConnect.signClient is not defined");let{walletConnect:T,chains:v}=d.getState();if(!((ne=T==null?void 0:T.options)!=null&&ne.projectId))throw new Error("walletConnect.options.projectId is not defined");let{Web3Modal:K}=yield import('@web3modal/standalone'),$=new K(E({projectId:T.options.projectId,walletConnectVersion:2,enableExplorer:!1,explorerRecommendedWalletIds:"NONE"},T.web3Modal)),V=a(p);if(!V){let{uri:U,approval:Y}=yield h.connect({requiredNamespaces:{cosmos:{methods:["cosmos_getAccounts","cosmos_signAmino","cosmos_signDirect"],chains:p.map(G=>`cosmos:${G}`),events:["chainChanged","accountsChanged"]}}});if(!U)throw new Error("No wallet connect uri");e?n(U):yield $.openModal({uri:U});let oe=G=>l(void 0,null,function*(){return G.aborted?Promise.reject(new Error("User closed wallet connect")):new Promise((Se,J)=>{Y().then(Re=>{let ke=Re.sessionProperties;if(!ke)return J(new Error("No session properties"));let we=JSON.parse(String(ke.keys));if(we.length===0)return J(new Error("No accounts"));let Pe=we[0];if(!Pe)return J(new Error("No accounts"));let Ne={};return p.forEach(ie=>{Ne[ie]=N(E({},Pe),{bech32Address:toBech32(v.find(Ot=>Ot.chainId===ie).bech32Config.bech32PrefixAccAddr,fromBech32(we[0].bech32Address).data)});}),y.setState(ie=>({accounts:E(E({},ie.accounts||{}),Ne)})),Se(Re)}).catch(J),G.addEventListener("abort",()=>{J(new Error("User closed wallet connect"));},{once:!0});})});try{let G=new AbortController,Se=G.signal;$.subscribeModal(J=>{J.open||G.abort();}),yield oe(Se);}catch(G){if($.closeModal(),!G.message.toLowerCase().includes("no matching key"))return Promise.reject(G)}return e||$.closeModal(),Promise.resolve()}try{yield He((()=>l(void 0,null,function*(){let U=yield w(p[0]),Y={};p.forEach(oe=>{Y[oe]=N(E({},U),{bech32Address:toBech32(v.find(G=>G.chainId===oe).bech32Config.bech32PrefixAccAddr,fromBech32(U.bech32Address).data)});}),y.setState({accounts:Y});}))(),15e3,new Error("Connection timeout"));}catch(U){if(r(V.topic),!U.message.toLowerCase().includes("no matching key"))throw U}}),C=f=>l(void 0,null,function*(){var v;let{wcSignClient:p}=y.getState();if(!p)throw new Error("walletConnect.signClient is not defined");let h=(v=i([f]))==null?void 0:v.topic;if(!h)throw new Error("No wallet connect session");n();let T=yield p.request({topic:h,chainId:`cosmos:${f}`,request:{method:"cosmos_getAccounts",params:{}}});if(!T[0])throw new Error("No wallet connect account");return {address:T[0].address,algo:T[0].algo,pubkey:new Uint8Array(Buffer.from(T[0].pubkey,t))}}),w=f=>l(void 0,null,function*(){let{address:p,algo:h,pubkey:T}=yield C(f);return {address:fromBech32(p).data,algo:h,bech32Address:p,name:"",pubKey:T,isKeystone:!1,isNanoLedger:!1}}),S=(...f)=>l(void 0,null,function*(){var U,Y;let[p,h,T]=f,{accounts:v,wcSignClient:K}=y.getState();if(!K)throw new Error("walletConnect.signClient is not defined");if(!v)throw new Error("account is not defined");let $=(U=i([p]))==null?void 0:U.topic;if(!$)throw new Error("No wallet connect session");if(!T.bodyBytes)throw new Error("No bodyBytes");if(!T.authInfoBytes)throw new Error("No authInfoBytes");let V={topic:$,chainId:`cosmos:${p}`,request:{method:"cosmos_signDirect",params:{signerAddress:h,signDoc:N(E({},T),{bodyBytes:Buffer.from(T.bodyBytes).toString(t),authInfoBytes:Buffer.from(T.authInfoBytes).toString(t),accountNumber:(Y=T.accountNumber)==null?void 0:Y.toString()})}}};return n(),yield K.request(V)}),I=(...f)=>l(void 0,null,function*(){let[p,h,T]=f,{signature:v,signed:K}=yield S(p,h,T);return {signed:{chainId:K.chainId,accountNumber:Nt.fromString(K.accountNumber,!1),authInfoBytes:new Uint8Array(Buffer.from(K.authInfoBytes,t)),bodyBytes:new Uint8Array(Buffer.from(K.bodyBytes,t))},signature:v}}),b=(...f)=>l(void 0,null,function*(){var U;let[p,h,T,v]=f,{wcSignClient:K}=y.getState(),{accounts:$}=y.getState();if(!K)throw new Error("walletConnect.signClient is not defined");if(!$)throw new Error("account is not defined");let V=(U=i([p]))==null?void 0:U.topic;if(!V)throw new Error("No wallet connect session");return n(),yield K.request({topic:V,chainId:`cosmos:${p}`,request:{method:"cosmos_signDirect",params:{signerAddress:h,signDoc:T}}})}),W=(...f)=>l(void 0,null,function*(){let[p,h,T,v]=f;return yield b(p,h,T)}),_=f=>({getAccounts:()=>l(void 0,null,function*(){return [yield C(f)]}),signDirect:(p,h)=>I(f,p,h)}),g=f=>({getAccounts:()=>l(void 0,null,function*(){return [yield C(f)]}),signAmino:(p,h)=>W(f,p,h)});return {enable:m,experimentalSuggestChain:(...f)=>l(void 0,null,function*(){yield Promise.reject(new Error("WalletConnect does not support experimentalSuggestChain"));}),getKey:w,getOfflineSigner:f=>({getAccounts:()=>l(void 0,null,function*(){return [yield C(f)]}),signDirect:(p,h)=>I(f,p,h),signAmino:(p,h)=>W(f,p,h)}),getOfflineSignerAuto:f=>l(void 0,null,function*(){return (yield w(f)).isNanoLedger?g(f):_(f)}),getOfflineSignerOnlyAmino:g,signAmino:W,signDirect:I,subscription:u,init:c}};var Ye=()=>{var t,n,o;if(!((o=(n=(t=d.getState().walletConnect)==null?void 0:t.options)==null?void 0:n.projectId)!=null&&o.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:(r,i,a)=>`${r.replaceAll("/","").replaceAll(":","")}://wc?${i}`};return j(e)};var Je=()=>{var t,n,o;if(!((o=(n=(t=d.getState().walletConnect)==null?void 0:t.options)==null?void 0:n.projectId)!=null&&o.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:(r,i,a)=>{let s=r.replaceAll("/","").replaceAll(":",""),c=encodeURIComponent(i);switch(a){case"ios":return `${s}://wcV2?${c}`;case"android":return `${s}://wcV2?${c}#Intent;package=com.chainapsis.keplr;scheme=keplrwallet;end;`;default:return `${s}://wc?uri=${c}`}}};return j(e)};var Xe=()=>{var t,n,o;if(!((o=(n=(t=d.getState().walletConnect)==null?void 0:t.options)==null?void 0:n.projectId)!=null&&o.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:(r,i,a)=>{let s=r.replaceAll("/","").replaceAll(":",""),c=encodeURIComponent(i);switch(a){case"ios":return `${s}://wcV2?${c}`;case"android":return `${s}://wcV2?${c}#Intent;package=io.leapwallet.cosmos;scheme=leapwallet;end;`;default:return `${s}://wc?uri=${c}`}}};return j(e)};var ue=()=>{if(typeof window.station!="undefined"){let e=window.station.keplr;return {subscription:i=>{let a=()=>{F(),i();};return window.addEventListener("station_wallet_change",a),()=>{window.removeEventListener("station_wallet_change",a);}},getKey:i=>l(void 0,null,function*(){let a=yield e.getKey(i);return E({isKeystone:!1},a)}),getOfflineSigner:i=>{try{let a=e.getOfflineSignerOnlyAmino(i);return Object.assign(a,{signDirect:(u,m)=>{throw new Error("signDirect not supported by Station")}})}catch(a){throw console.error(a),a}},experimentalSuggestChain:i=>l(void 0,null,function*(){try{let a=Object.assign(i,{chainSymbolImageUrl:i.chainSymbolImageUrl||"",stakeCurrency:{coinDecimals:i.stakeCurrency.coinDecimals,coinDenom:i.stakeCurrency.coinDenom,coinImageUrl:i.stakeCurrency.coinImageUrl||"",coinMinimalDenom:i.stakeCurrency.coinMinimalDenom},currencies:i.currencies.map(s=>({coinDecimals:s.coinDecimals,coinDenom:s.coinDenom,coinImageUrl:s.coinImageUrl||"",coinMinimalDenom:s.coinMinimalDenom})),feeCurrencies:i.feeCurrencies.map(s=>{var c,u,m;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:((u=s.gasPriceStep)==null?void 0:u.high)||0,low:((m=s.gasPriceStep)==null?void 0:m.low)||0}}})});yield e.experimentalSuggestChain(a);}catch(a){throw console.error(a),a}}),enable:i=>e.enable(i),getOfflineSignerAuto:i=>e.getOfflineSignerAuto(i),getOfflineSignerOnlyAmino:i=>e.getOfflineSignerOnlyAmino(i),signDirect:()=>e.signDirect(),signAmino:(i,a,s,c)=>e.signAmino(i,a,s)}}throw d.getState()._notFoundFn(),new Error("window.station is not defined")};var D=(e=d.getState().walletType)=>{try{return R(e),!0}catch(t){return !1}},F=()=>{window.sessionStorage.removeItem(X),y.setState(Z);},R=(e=d.getState().walletType)=>{switch(e){case"keplr":return ae();case"leap":return ce();case"cosmostation":return se();case"vectis":return le();case"walletconnect":return j();case"wc_keplr_mobile":return Je();case"wc_leap_mobile":return Xe();case"wc_cosmostation_mobile":return Ye();case"metamask_snap_leap":return Qe();case"station":return ue();default:throw new Error("Unknown wallet type")}},Uo=()=>Object.fromEntries(Le.map(e=>[e,D(e)])),Ze=e=>e==="walletconnect"||e==="wc_keplr_mobile"||e==="wc_leap_mobile"||e==="wc_cosmostation_mobile";var ee=e=>l(void 0,null,function*(){var t;try{let{recentChainIds:n,chains:o,walletType:r}=d.getState(),i=(e==null?void 0:e.walletType)||r;if(!D(i))throw new Error(`${i} is not available`);let s=R(i),c=typeof(e==null?void 0:e.chainId)=="string"?[e.chainId]:(e==null?void 0:e.chainId)||n;if(!c)throw new Error("No last known connected chain, connect action requires chain ids");let u=o==null?void 0:o.map(S=>S.chainId);c.forEach(S=>{if(!(u!=null&&u.includes(S)))throw new Error(`Chain ${S} is not provided in GrazProvider`)}),y.setState(S=>{let I=d.getState()._reconnect||!!d.getState()._reconnectConnector||!!c;return S.activeChainIds&&c.filter(W=>{var _;return !((_=S.activeChainIds)!=null&&_.includes(W))}).length>0?{status:"connecting"}:I?{status:"reconnecting"}:{status:"connecting"}});let{accounts:m}=y.getState();if(yield (t=s.init)==null?void 0:t.call(s),yield s.enable(c),!Ze(i)){let S=yield s.getKey(c[0]),I={};c.forEach(b=>{I[b]=N(E({},S),{bech32Address:toBech32(o.find(W=>W.chainId===b).bech32Config.bech32PrefixAccAddr,fromBech32(S.bech32Address).data)});}),y.setState(b=>({accounts:E(E({},b.accounts||{}),I)}));}d.setState(S=>({recentChainIds:[...S.recentChainIds||[],...c].filter((I,b,W)=>W.indexOf(I)===b)})),y.setState(S=>({activeChainIds:[...S.activeChainIds||[],...c].filter((I,b,W)=>W.indexOf(I)===b)})),d.setState({walletType:i,_reconnect:!!(e!=null&&e.autoReconnect),_reconnectConnector:i}),y.setState({status:"connected"}),typeof window!="undefined"&&window.sessionStorage.setItem(X,"Active");let C=c.map(S=>o.find(I=>I.chainId===S));return {accounts:y.getState().accounts,walletType:i,chains:C}}catch(n){throw console.error("connect ",n),y.getState().accounts===null&&y.setState({status:"disconnected"}),y.getState().accounts&&y.getState().activeChainIds&&y.setState({status:"connected"}),n}}),Ie=e=>{typeof window!="undefined"&&window.sessionStorage.removeItem(X);let t=typeof(e==null?void 0:e.chainId)=="string"?[e.chainId]:e==null?void 0:e.chainId;if(t){let n=y.getState().accounts;t.forEach(r=>{n==null||delete n[r];}),Object.values(n||{}).length===0?(y.setState(Z),d.setState({_reconnect:!1,_reconnectConnector:null,recentChainIds:null})):(y.setState(r=>{var i;return {activeChainIds:(i=r.activeChainIds)==null?void 0:i.filter(a=>!t.includes(a)),accounts:n}}),d.setState(r=>{var i;return {recentChainIds:(i=r.recentChainIds)==null?void 0:i.filter(a=>!t.includes(a))}}));}else y.setState(Z),d.setState({_reconnect:!1,_reconnectConnector:null,recentChainIds:null});return Promise.resolve()},z=e=>l(void 0,null,function*(){var r;let{recentChainIds:t,_reconnectConnector:n,_reconnect:o}=d.getState();try{let i=D(n||void 0);if(t&&i&&n)return yield ee({chainId:t,walletType:n,autoReconnect:o})}catch(i){(r=e==null?void 0:e.onError)==null||r.call(e,i),Ie();}}),et=e=>l(void 0,null,function*(){if(!(e!=null&&e.chainId))throw new Error("chainId is required");let{walletType:t}=d.getState(),n=e.walletType||t;if(!D(n))throw new Error(`${n} is not available`);let r=R(n),i=r.getOfflineSigner(e.chainId),a=r.getOfflineSignerOnlyAmino(e.chainId),s=yield r.getOfflineSignerAuto(e.chainId);return {offlineSigner:i,offlineSignerAmino:a,offlineSignerAuto:s}});var Te=()=>{d.setState({recentChainIds:null});},Xo=()=>d.getState().recentChainIds,Zo=()=>{var n;let{recentChainIds:e,chains:t}=d.getState();return (n=e==null?void 0:e.map(o=>t.find(r=>r.chainId===o)))!=null?n:null},Ee=n=>l(void 0,[n],function*({chainInfo:e,walletType:t}){return yield R(t).experimentalSuggestChain(e),e}),tt=e=>l(void 0,null,function*(){var o;let t=d.getState().walletType;return yield Ee({chainInfo:e.chainInfo,walletType:(o=e.walletType)!=null?o:t}),yield ee({chainId:e.chainInfo.chainId,walletType:e.walletType,autoReconnect:e.autoReconnect})});var nt=e=>(d.setState(t=>({walletConnect:e.walletConnect||t.walletConnect,walletType:e.defaultWallet||t.walletType,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 ot=a=>l(void 0,[a],function*({signingClient:e,senderAddress:t,recipientAddress:n,amount:o,fee:r,memo:i}){if(!e)throw new Error("No connected account detected");if(!t)throw new Error("senderAddress is not defined");return e.sendTokens(t,n,o,r,i)}),it=m=>l(void 0,[m],function*({signingClient:e,senderAddress:t,recipientAddress:n,transferAmount:o,sourcePort:r,sourceChannel:i,timeoutHeight:a,timeoutTimestamp:s,fee:c,memo:u}){if(!e)throw new Error("Stargate signing client is not ready");if(!t)throw new Error("senderAddress is not defined");return e.sendIbcTokens(t,n,o,r,i,a,s,c,u)}),rt=s=>l(void 0,[s],function*({signingClient:e,senderAddress:t,msg:n,fee:o,options:r,label:i,codeId:a}){if(!e)throw new Error("CosmWasm signing client is not ready");return e.instantiate(t,a,n,i,o,r)}),st=s=>l(void 0,[s],function*({signingClient:e,senderAddress:t,msg:n,fee:o,contractAddress:r,funds:i,memo:a}){if(!e)throw new Error("CosmWasm signing client is not ready");return e.execute(t,r,n,o,a,i)}),at=(e,t,n)=>l(void 0,null,function*(){if(!n)throw new Error("CosmWasm client is not ready");return yield n.queryContractSmart(e,t)}),ct=(e,t,n)=>{if(!n)throw new Error("CosmWasm client is not ready");let o=new TextEncoder().encode(t);return n.queryContractRaw(e,o)};var li=e=>e,ui=e=>e;var de=e=>e?Object.keys(e).length===0:!0;var be=class extends Error{constructor(t){super(),this.name="AbortError",this.message=t;}},lt=e=>globalThis.DOMException===void 0?new be(e):new DOMException(e),ut=e=>{let t=e.reason===void 0?lt("This operation was aborted."):e.reason;return t instanceof Error?t:lt(t)};function Oe(i,a){return l(this,arguments,function*(e,t,{concurrency:n=Number.POSITIVE_INFINITY,stopOnError:o=!0,signal:r}={}){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(n)||n===Number.POSITIVE_INFINITY)&&n>=1))throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${n}\` (${typeof n})`);let u=[],m=[],C=new Map,w=!1,S=!1,I=!1,b=0,W=0,_=e[Symbol.iterator]===void 0?e[Symbol.asyncIterator]():e[Symbol.iterator](),g=x=>{w=!0,S=!0,c(x);};r&&(r.aborted&&g(ut(r)),r.addEventListener("abort",()=>{g(ut(r));}));let A=()=>l(this,null,function*(){if(S)return;let x=yield _.next(),k=W;if(W++,x.done){if(I=!0,b===0&&!S){if(!o&&m.length>0){g(new AggregateError(m));return}if(S=!0,C.size===0){s(u);return}let P=[];for(let[B,te]of u.entries())C.get(B)!==dt&&P.push(te);s(P);}return}b++,l(this,null,function*(){try{let P=yield x.value;if(S)return;let B=yield t(P,k);B===dt&&C.set(k,B),u[k]=B,b--,yield A();}catch(P){if(o)g(P);else {m.push(P),b--;try{yield A();}catch(B){g(B);}}}});});l(this,null,function*(){for(let x=0;x<n;x++){try{yield A();}catch(k){g(k);break}if(I||w)break}});})})}var dt=Symbol("skip");var L=({chainId:e,multiChain:t})=>{let n=d(r=>r.chains);if(!n)throw new Error("No chains found in GrazProvider");let o=typeof e=="string"?[e]:e;switch(!0){case(!!t&&!!o):return o.map(r=>n.find(i=>i.chainId===r)).filter(Boolean);case(!t&&!!o):return [o.map(r=>n.find(i=>i.chainId===r)).filter(Boolean)[0]];case(!!t&&!o):return n;default:return [n[0]]}},q=(e,t,n)=>l(void 0,null,function*(){let o=d.getState().multiChainFetchConcurrency;if(e){let i=yield Oe(t,n,{concurrency:o});return Object.fromEntries(i.map((a,s)=>[t[s].chainId,a]))}return yield n(t[0])}),mt=(e,t,n)=>{if(e){let r=t.map(n);return Object.fromEntries(r.map((i,a)=>[t[a].chainId,i]))}return n(t[0])};var We=e=>{let t=L({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),n=useMemo(()=>["USE_STARGATE_CLIENT",t],[t]);return useQuery({queryKey:n,queryFn:r=>l(void 0,[r],function*({queryKey:[,o]}){if(o.length<1)throw new Error("No chains found");return yield q(!!(e!=null&&e.multiChain),o,a=>l(void 0,null,function*(){var m;let s=(m=d.getState().chainsConfig)==null?void 0:m[a.chainId],c={url:a.rpc,headers:E({},(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})},ve=e=>{let t=L({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),n=useMemo(()=>["USE_COSMWASM_CLIENT",t],[t]);return useQuery({queryKey:n,queryFn:r=>l(void 0,[r],function*({queryKey:[,o]}){if(o.length<1)throw new Error("No chains found");return yield q(!!(e!=null&&e.multiChain),o,a=>l(void 0,null,function*(){var m;let s=(m=d.getState().chainsConfig)==null?void 0:m[a.chainId],c={url:a.rpc,headers:E({},(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})},me=({type:e,chainId:t,multiChain:n,enabled:o})=>{let r=L({chainId:t,multiChain:n}),i=useMemo(()=>["USE_TENDERMINT_CLIENT",e,r],[e,r]);return useQuery({queryKey:i,queryFn:c=>l(void 0,[c],function*({queryKey:[,a,s]}){if(s.length<1)throw new Error("No chains found");return yield q(!!n,s,m=>l(void 0,null,function*(){var b;let C=(b=d.getState().chainsConfig)==null?void 0:b[m.chainId],w={url:m.rpc,headers:E({},(C==null?void 0:C.rpcHeaders)||{})};return yield (a==="tm37"?Tendermint37Client:Tendermint34Client).connect(w)}))}),enabled:!!r&&r.length>0&&(o!==void 0?!!o:!0),refetchOnWindowFocus:!1})};var Di=()=>d(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"}),shallow),pe=e=>{let n=["USE_CHECK_WALLET",d(r=>e||r.walletType)];return useQuery(n,({queryKey:[,r]})=>D(r))};var H=e=>{let t=d(s=>s.walletType),n=y(s=>s.activeChainIds),o=L({chainId:e!=null&&e.chainId?e.chainId:n||void 0,multiChain:e==null?void 0:e.multiChain}),r=y(s=>s.accounts),i=y(s=>s.status);return useEffect(()=>y.subscribe(s=>s.status,(s,c)=>{var u,m,C;if(s==="connected"){let{accounts:w,activeChainIds:S}=y.getState(),{chains:I}=d.getState(),{walletType:b}=d.getState();if(!w||!S||!I)return (u=e==null?void 0:e.onDisconnect)==null?void 0:u.call(e);(m=e==null?void 0:e.onConnect)==null||m.call(e,{accounts:w,chains:S.map(W=>I.find(_=>_.chainId===W)),walletType:b,isReconnect:c==="reconnecting"});}s==="disconnected"&&((C=e==null?void 0:e.onDisconnect)==null||C.call(e));}),[e]),{data:useMemo(()=>r?mt(!!(e!=null&&e.multiChain),o,s=>r[s.chainId]):void 0,[r,o,e==null?void 0:e.multiChain]),isConnected:i==="connected",isConnecting:i==="connecting",isDisconnected:i==="disconnected",isReconnecting:i==="reconnecting",isLoading:i==="connecting"||i==="reconnecting",walletType:i==="connected"?t:void 0,reconnect:z,status:i}},Vt=e=>{let t=L({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),{data:n}=H(),o=(e==null?void 0:e.bech32Address)||(n==null?void 0:n.bech32Address),{data:r}=We({chainId:t.map(a=>a.chainId),multiChain:!0,enabled:((e==null?void 0:e.enabled)===void 0?!0:e.enabled)&&!!o}),i=useMemo(()=>["USE_ALL_BALANCES",r,t,o,e==null?void 0:e.chainId],[o,e==null?void 0:e.chainId,t,r]);return useQuery(i,u=>l(void 0,[u],function*({queryKey:[,a,s,c]}){if(!c)throw new Error("address is not defined");return yield q(!!(e!=null&&e.multiChain),s,C=>l(void 0,null,function*(){let w=a==null?void 0:a[C.chainId];if(!w)throw new Error(`Client is not ready ${C.chainId}`);return yield w.getAllBalances(toBech32(C.bech32Config.bech32PrefixAccAddr,fromBech32(c).data))}))}),{enabled:!!o&&!!t&&t.length>0&&!de(r)&&((e==null?void 0:e.enabled)===void 0?!0:e.enabled),refetchOnMount:!1,refetchOnReconnect:!0,refetchOnWindowFocus:!1})},Yi=e=>{let t=L({chainId:e.chainId}),{data:n}=H({chainId:e.chainId}),o=e.bech32Address||(n==null?void 0:n.bech32Address),{data:r,refetch:i}=Vt({chainId:t.map(c=>c.chainId),bech32Address:o,enabled:!!o&&(e.enabled===void 0?!0:e.enabled)}),a=["USE_BALANCE",e.denom,r,t,o,e.chainId],s=useQuery(a,({queryKey:[,c,u]})=>u==null?void 0:u.find(m=>m.denom===c),{enabled:!!r&&!!(r!=null&&r.length)&&(e.enabled===void 0?!0:e.enabled)});return N(E({},s),{refetch:c=>l(void 0,null,function*(){return yield i(),s.refetch(c)})})},Ji=({onError:e,onLoading:t,onSuccess:n}={})=>{let r=useMutation(["USE_CONNECT",e,t,n],ee,{onError:(a,s)=>Promise.resolve(e==null?void 0:e(a,s)),onMutate:t,onSuccess:a=>Promise.resolve(n==null?void 0:n(a))}),{data:i}=pe();return {connect:a=>r.mutate(a),connectAsync:a=>r.mutateAsync(a),error:r.error,isLoading:r.isLoading,isSuccess:r.isSuccess,isSupported:!!i,status:r.status}},Xi=({onError:e,onLoading:t,onSuccess:n}={})=>{let r=useMutation(["USE_DISCONNECT",e,t,n],Ie,{onError:i=>Promise.resolve(e==null?void 0:e(i,void 0)),onMutate:t,onSuccess:()=>Promise.resolve(n==null?void 0:n(void 0))});return {disconnect:i=>r.mutate(i),disconnectAsync:i=>r.mutateAsync(i),error:r.error,isLoading:r.isLoading,isSuccess:r.isSuccess,status:r.status}},Zi=e=>{let t=L({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),n=d(r=>r.walletType),o=useMemo(()=>["USE_OFFLINE_SIGNERS",t,n],[t,n]);return useQuery({queryKey:o,queryFn:a=>l(void 0,[a],function*({queryKey:[,r,i]}){if(r.length<1)throw new Error("No chain found");if(!D(i))throw new Error(`${i} is not available`);return yield q(!!(e!=null&&e.multiChain),r,u=>l(void 0,null,function*(){return yield et({chainId:u.chainId,walletType:i})}))}),enabled:!!t&&t.length>0&&!!n,refetchOnWindowFocus:!1})},er=e=>{let t=L({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),{data:n}=H(),{data:o}=We({chainId:t.map(a=>a.chainId),multiChain:!0}),r=(e==null?void 0:e.bech32Address)||(n==null?void 0:n.bech32Address),i=useMemo(()=>["USE_BALANCE_STAKED",o,t,r],[t,r,o]);return useQuery(i,u=>l(void 0,[u],function*({queryKey:[,a,s,c]}){if(!c)throw new Error("address is not defined");return yield q(!!(e!=null&&e.multiChain),s,C=>l(void 0,null,function*(){var S;if(!a)throw new Error("Client is not ready");return yield (S=a[C.chainId])==null?void 0:S.getBalanceStaked(toBech32(C.bech32Config.bech32PrefixAccAddr,fromBech32(c).data))}))}),{enabled:!!r&&!!t&&t.length>0&&!!o,refetchOnMount:!1,refetchOnReconnect:!0,refetchOnWindowFocus:!1})};var cr=()=>y(e=>e.activeChainIds),Yt=()=>{var e;return (e=y(t=>t.activeChainIds))==null?void 0:e.map(t=>{var o;let n=(o=d.getState().chains)==null?void 0:o.find(r=>r.chainId===t);if(n)return n}).filter(Boolean)},lr=({denom:e})=>{let t=Yt();return useQuery(["USE_ACTIVE_CHAIN_CURRENCY",e],({queryKey:[,r]})=>{var i;return (i=t==null?void 0:t.find(a=>a.currencies.find(s=>s.coinMinimalDenom===r)))==null?void 0:i.currencies.find(a=>a)})},ur=e=>{var r;let t=(r=e.status)!=null?r:"BOND_STATUS_BONDED",n=["USE_ACTIVE_CHAIN_VALIDATORS",e.queryClient,t];return useQuery(n,s=>l(void 0,[s],function*({queryKey:[,i,a]}){if(!i)throw new Error("Query client is not defined");return yield i.staking.validators(a)}),{enabled:typeof e.queryClient!="undefined"})},dr=()=>({data:d(t=>t.recentChainIds),clear:Te}),mr=()=>{var t;return {data:(t=d(n=>n.recentChainIds))==null?void 0:t.map(n=>{var r;let o=(r=d.getState().chains)==null?void 0:r.find(i=>i.chainId===n);if(o)return o}).filter(Boolean),clear:Te}},pr=({onError:e,onLoading:t,onSuccess:n}={})=>{let r=useMutation(["USE_SUGGEST_CHAIN",e,t,n],Ee,{onError:(i,a)=>Promise.resolve(e==null?void 0:e(i,a.chainInfo)),onMutate:i=>t==null?void 0:t(i.chainInfo),onSuccess:i=>Promise.resolve(n==null?void 0:n(i))});return {error:r.error,isLoading:r.isLoading,isSuccess:r.isSuccess,suggest:r.mutate,suggestAsync:r.mutateAsync,status:r.status}},fr=({onError:e,onLoading:t,onSuccess:n}={})=>{let r=useMutation(["USE_SUGGEST_CHAIN_AND_CONNECT",e,t,n],tt,{onError:(a,s)=>Promise.resolve(e==null?void 0:e(a,s)),onMutate:a=>t==null?void 0:t(a),onSuccess:a=>Promise.resolve(n==null?void 0:n(a))}),{data:i}=pe();return {error:r.error,isLoading:r.isLoading,isSuccess:r.isSuccess,isSupported:!!i,status:r.status,suggestAndConnect:r.mutate,suggestAndConnectAsync:r.mutateAsync}};var Ir=({onError:e,onLoading:t,onSuccess:n}={})=>{let{data:o}=H(),r=o==null?void 0:o.bech32Address,i=useMutation(["USE_SEND_TOKENS",e,t,n,r],a=>ot(E({senderAddress:r},a)),{onError:(a,s)=>Promise.resolve(e==null?void 0:e(a,s)),onMutate:t,onSuccess:a=>Promise.resolve(n==null?void 0:n(a))});return {error:i.error,isLoading:i.isLoading,isSuccess:i.isSuccess,sendTokens:i.mutate,sendTokensAsync:i.mutateAsync,status:i.status}},Tr=({onError:e,onLoading:t,onSuccess:n}={})=>{let{data:o}=H(),r=o==null?void 0:o.bech32Address,i=useMutation(["USE_SEND_IBC_TOKENS",e,t,n,r],a=>it(E({senderAddress:r},a)),{onError:(a,s)=>Promise.resolve(e==null?void 0:e(a,s)),onMutate:t,onSuccess:a=>Promise.resolve(n==null?void 0:n(a))});return {error:i.error,isLoading:i.isLoading,isSuccess:i.isSuccess,sendIbcTokens:i.mutate,sendIbcTokensAsync:i.mutateAsync,status:i.status}},Er=({codeId:e,onError:t,onLoading:n,onSuccess:o})=>{let{data:r}=H(),i=r==null?void 0:r.bech32Address,s=useMutation(["USE_INSTANTIATE_CONTRACT",t,n,o,e,i],c=>{var m;if(!i)throw new Error("senderAddress is undefined");let u=N(E({},c),{fee:(m=c.fee)!=null?m:"auto",senderAddress:i,codeId:e});return rt(u)},{onError:(c,u)=>Promise.resolve(t==null?void 0:t(c,u)),onMutate:n,onSuccess:c=>Promise.resolve(o==null?void 0:o(c))});return {error:s.error,isLoading:s.isLoading,isSuccess:s.isSuccess,instantiateContract:s.mutate,instantiateContractAsync:s.mutateAsync,status:s.status}},br=({contractAddress:e,onError:t,onLoading:n,onSuccess:o})=>{let{data:r}=H(),i=r==null?void 0:r.bech32Address,s=useMutation(["USE_EXECUTE_CONTRACT",t,n,o,e,i],c=>{var m,C,w;if(!i)throw new Error("senderAddress is undefined");let u=N(E({},c),{fee:(m=c.fee)!=null?m:"auto",senderAddress:i,contractAddress:e,memo:(C=c.memo)!=null?C:"",funds:(w=c.funds)!=null?w:[]});return st(u)},{onError:(c,u)=>Promise.resolve(t==null?void 0:t(c,u)),onMutate:n,onSuccess:c=>Promise.resolve(o==null?void 0:o(c))});return {error:s.error,isLoading:s.isLoading,isSuccess:s.isSuccess,executeContract:s.mutate,executeContractAsync:s.mutateAsync,status:s.status}},Or=e=>{let{data:t}=ve();return useQuery(["USE_QUERY_SMART",e==null?void 0:e.address,e==null?void 0:e.queryMsg,t],({queryKey:[,o]})=>{if(!(e!=null&&e.address)||!e.queryMsg)throw new Error("address or queryMsg undefined");return at(e.address,e.queryMsg,t)},{enabled:!!(e!=null&&e.address)&&!!(e!=null&&e.queryMsg)&&!!t})},Mr=e=>{let{data:t}=ve(),n=["USE_QUERY_RAW",e==null?void 0:e.key,e==null?void 0:e.address,t];return useQuery(n,({queryKey:[,r]})=>{if(!(e!=null&&e.address)||!e.key)throw new Error("address or key undefined");return ct(e.address,e.key,t)},{enabled:!!(e!=null&&e.address)&&!!(e!=null&&e.key)&&!!t})};function Lr(e){let t=L({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),n=d(i=>i.walletType),o=y(i=>i.activeChainIds),r=useMemo(()=>["USE_STARGATE_SIGNING_CLIENT",t,n,e,o],[o,e,t,n]);return useQuery({queryKey:r,queryFn:s=>l(this,[s],function*({queryKey:[,i,a]}){if(i.length<1)throw new Error("No chains found");return yield q(!!(e!=null&&e.multiChain),i,u=>l(this,null,function*(){var b,W;if(!(o!=null&&o.includes(u.chainId)))return;if(!D(a))throw new Error(`${a} is not available`);let C=yield (()=>l(this,null,function*(){switch(e==null?void 0:e.offlineSigner){case"offlineSigner":return R(a).getOfflineSigner(u.chainId);case"offlineSignerAuto":return R(a).getOfflineSignerAuto(u.chainId);case"offlineSignerOnlyAmino":return R(a).getOfflineSignerOnlyAmino(u.chainId);default:return R(a).getOfflineSignerAuto(u.chainId)}}))(),w=(b=d.getState().chainsConfig)==null?void 0:b[u.chainId],S={url:u.rpc,headers:E({},(w==null?void 0:w.rpcHeaders)||{})};return (e==null?void 0:e.multiChain)===!0&&e.opts,yield SigningStargateClient.connectWithSigner(S,C,e!=null&&e.multiChain?(W=e.opts)==null?void 0:W[u.chainId]:e==null?void 0:e.opts)}))}),enabled:!!t&&t.length>0&&!!n&&((e==null?void 0:e.enabled)!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}function qr(e){let t=L({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),n=d(i=>i.walletType),o=y(i=>i.activeChainIds),r=useMemo(()=>["USE_COSMWASM_SIGNING_CLIENT",t,n,e,o],[o,e,t,n]);return useQuery({queryKey:r,queryFn:s=>l(this,[s],function*({queryKey:[,i,a]}){if(i.length<1)throw new Error("No chains found");return yield q(!!(e!=null&&e.multiChain),i,u=>l(this,null,function*(){var W,_;if(!(o!=null&&o.includes(u.chainId)))return;if(!D(a))throw new Error(`${a} is not available`);let C=yield (()=>l(this,null,function*(){switch(e==null?void 0:e.offlineSigner){case"offlineSigner":return R(a).getOfflineSigner(u.chainId);case"offlineSignerAuto":return R(a).getOfflineSignerAuto(u.chainId);case"offlineSignerOnlyAmino":return R(a).getOfflineSignerOnlyAmino(u.chainId);default:return R(a).getOfflineSignerAuto(u.chainId)}}))(),w=(W=d.getState().chainsConfig)==null?void 0:W[u.chainId],S={url:u.rpc,headers:E({},(w==null?void 0:w.rpcHeaders)||{})},I=w!=null&&w.gas?GasPrice.fromString(`${w.gas.price}${w.gas.denom}`):void 0;return yield SigningCosmWasmClient.connectWithSigner(S,C,E({gasPrice:I},e!=null&&e.multiChain?(_=e.opts)==null?void 0:_[u.chainId]:(e==null?void 0:e.opts)||{}))}))}),enabled:!!t&&t.length>0&&!!n&&((e==null?void 0:e.enabled)!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}function Gr(e){let t=L({chainId:e.chainId,multiChain:e.multiChain}),n=d(a=>a.walletType),o=y(a=>a.activeChainIds),r=useMemo(()=>["USE_STARGATE_TM_SIGNING_CLIENT",t,n,e,o],[o,e,t,n]),{data:i}=me({type:e.type,chainId:e.chainId,multiChain:e.multiChain});return useQuery({queryKey:r,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,m=>l(this,null,function*(){var b;if(!(o!=null&&o.includes(m.chainId)))return;if(!D(s))throw new Error(`${s} is not available`);if(!i)throw new Error("No tendermint client found");let w=yield (()=>l(this,null,function*(){switch(e.offlineSigner){case"offlineSigner":return R(s).getOfflineSigner(m.chainId);case"offlineSignerAuto":return R(s).getOfflineSignerAuto(m.chainId);case"offlineSignerOnlyAmino":return R(s).getOfflineSignerOnlyAmino(m.chainId);default:return R(s).getOfflineSignerAuto(m.chainId)}}))(),S=e.multiChain?i[m.chainId]:i;return yield SigningStargateClient.createWithSigner(S,w,e.multiChain?(b=e.opts)==null?void 0:b[m.chainId]:e.opts)}))}),enabled:!!t&&t.length>0&&!!n&&!!i&&(e.enabled!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}function Fr(e){let t=L({chainId:e.chainId,multiChain:e.multiChain}),n=d(s=>s.walletType),o=y(s=>s.activeChainIds),r=useMemo(()=>["USE_COSMWASM_TM_SIGNING_CLIENT",t,n,e,o],[o,e,t,n]),{data:i}=me({type:e.type,chainId:e.chainId,multiChain:!1,enabled:!e.multiChain}),{data:a}=me({type:e.type,chainId:e.chainId,multiChain:!0,enabled:!!e.multiChain});return useQuery({queryKey:r,queryFn:u=>l(this,[u],function*({queryKey:[,s,c]}){if(s.length<1)throw new Error("No chains found");return yield q(!!e.multiChain,s,C=>l(this,null,function*(){var g,A;if(!(o!=null&&o.includes(C.chainId)))return;if(!D(c))throw new Error(`${c} is not available`);let S=yield (()=>l(this,null,function*(){switch(e.offlineSigner){case"offlineSigner":return R(c).getOfflineSigner(C.chainId);case"offlineSignerAuto":return R(c).getOfflineSignerAuto(C.chainId);case"offlineSignerOnlyAmino":return R(c).getOfflineSignerOnlyAmino(C.chainId);default:return R(c).getOfflineSignerAuto(C.chainId)}}))(),I=(g=d.getState().chainsConfig)==null?void 0:g[C.chainId],b=I!=null&&I.gas?GasPrice.fromString(`${I.gas.price}${I.gas.denom}`):void 0,W=e.multiChain?a==null?void 0:a[C.chainId]:i;if(!W)throw new Error("No tendermint client found");return yield SigningCosmWasmClient.createWithSigner(W,S,E({gasPrice:b},e.multiChain?(A=e.opts)==null?void 0:A[C.chainId]:e.opts||{}))}))}),enabled:!!t&&t.length>0&&!!n&&(!!i||!de(a))&&(e.enabled!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}var It=({children:e})=>{let[t,n]=useState(!1);return useEffect(()=>{n(!0);},[]),jsx(Fragment,{children:t?e:null})};var tn=()=>{let e=typeof window!="undefined"&&window.sessionStorage.getItem(X)==="Active",{_reconnect:t,_onReconnectFailed:n,_reconnectConnector:o}=d(),{activeChainIds:r,wcSignClient:i}=y(),a=D(o||void 0);return useEffect(()=>{if(o){if(!a)return;e&&r?z({onError:n}):!e&&t&&z({onError:n});}},[a]),useEffect(()=>{var s,c,u,m,C,w,S,I,b,W,_,g;if(o){if(!a)return;o==="cosmostation"&&((c=(s=se()).subscription)==null||c.call(s,()=>{z({onError:n});})),o==="keplr"&&((m=(u=ae()).subscription)==null||m.call(u,()=>{z({onError:n});})),o==="leap"&&((w=(C=ce()).subscription)==null||w.call(C,()=>{z({onError:n});})),o==="vectis"&&((I=(S=le()).subscription)==null||I.call(S,()=>{z({onError:n});})),o==="walletconnect"&&i&&((W=(b=j()).subscription)==null||W.call(b,()=>{z({onError:n});})),o==="station"&&((g=(_=ue()).subscription)==null||g.call(_,()=>{z({onError:n});}));}},[o,i,a]),null},Et=()=>(tn(),null);var rn=new QueryClient({}),fs=o=>{var r=o,{children:e,grazOptions:t}=r,n=Ke(r,["children","grazOptions"]);return nt(t),jsx(QueryClientProvider,N(E({client:rn},n),{children:jsxs(It,{children:[e,jsx(Et,{})]})}),"graz-provider")};
15
+ var Wt=Object.defineProperty,vt=Object.defineProperties;var Rt=Object.getOwnPropertyDescriptors;var se=Object.getOwnPropertySymbols;var Ke=Object.prototype.hasOwnProperty,Ue=Object.prototype.propertyIsEnumerable;var Le=(e,t,n)=>t in e?Wt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,E=(e,t)=>{for(var n in t||(t={}))Ke.call(t,n)&&Le(e,n,t[n]);if(se)for(var n of se(t))Ue.call(t,n)&&Le(e,n,t[n]);return e},B=(e,t)=>vt(e,Rt(t));var qe=(e,t)=>{var n={};for(var i in e)Ke.call(e,i)&&t.indexOf(i)<0&&(n[i]=e[i]);if(e!=null&&se)for(var i of se(e))t.indexOf(i)<0&&Ue.call(e,i)&&(n[i]=e[i]);return n};var l=(e,t,n)=>new Promise((i,r)=>{var o=c=>{try{a(n.next(c));}catch(u){r(u);}},s=c=>{try{a(n.throw(c));}catch(u){r(u);}},a=c=>c.done?i(c.value):Promise.resolve(c.value).then(o,s);a((n=n.apply(e,t)).next());});var Z="graz-reconnect-session";var Ge=(m=>(m.KEPLR="keplr",m.LEAP="leap",m.VECTIS="vectis",m.COSMOSTATION="cosmostation",m.WALLETCONNECT="walletconnect",m.WC_KEPLR_MOBILE="wc_keplr_mobile",m.WC_LEAP_MOBILE="wc_leap_mobile",m.WC_COSMOSTATION_MOBILE="wc_cosmostation_mobile",m.METAMASK_SNAP_LEAP="metamask_snap_leap",m.STATION="station",m))(Ge||{}),Fe=["keplr","leap","vectis","cosmostation","walletconnect","wc_keplr_mobile","wc_leap_mobile","wc_cosmostation_mobile","metamask_snap_leap","station"];var Pt={recentChainIds:null,chains:null,chainsConfig:null,multiChainFetchConcurrency:3,walletType:"keplr",walletConnect:{options:null,web3Modal:null},_notFoundFn:()=>null,_onReconnectFailed:()=>null,_reconnect:!1,_reconnectConnector:null},ee={accounts:null,activeChainIds:null,status:"disconnected",wcSignClients:new Map},Nt={name:"graz-session",version:2,partialize:e=>({accounts:e.accounts,activeChainIds:e.activeChainIds}),storage:createJSONStorage(()=>sessionStorage)},Bt={name:"graz-internal",partialize:e=>({recentChainIds:e.recentChainIds,_reconnect:e._reconnect,_reconnectConnector:e._reconnectConnector}),version:2},y=create(subscribeWithSelector(persist(()=>ee,Nt))),d=create(subscribeWithSelector(persist(()=>Pt,Bt)));var ae=()=>{if(typeof window.cosmostation.providers.keplr!="undefined"){let e=window.cosmostation.providers.keplr;return Object.assign(e,{subscription:i=>{let r=()=>{Q(),i();};return window.cosmostation.cosmos.on("accountChanged",r),()=>{window.cosmostation.cosmos.off("accountChanged",r);}}})}throw d.getState()._notFoundFn(),new Error("window.cosmostation.providers.keplr is not defined")};var ce=()=>{if(typeof window.keplr!="undefined"){let e=window.keplr;return Object.assign(e,{subscription:i=>{let r=()=>{Q(),i();};return window.addEventListener("keplr_keystorechange",r),()=>{window.removeEventListener("keplr_keystorechange",r);}}})}throw d.getState()._notFoundFn(),new Error("window.keplr is not defined")};var le=()=>{if(typeof window.leap!="undefined"){let e=window.leap;return Object.assign(e,{subscription:i=>{let r=()=>{Q(),i();};return window.addEventListener("leap_keystorechange",r),()=>{window.removeEventListener("leap_keystorechange",r);}}})}throw d.getState()._notFoundFn(),new Error("window.leap is not defined")};var $e=e=>{let t=window.ethereum;if(t&&e){let n=()=>l(void 0,null,function*(){return yield t.request({method:"wallet_getSnaps"})}),i=C=>l(void 0,null,function*(){try{let A=yield n();return Object.values(A).find(x=>x.id===e.id&&(!C||x.version===C))}catch(A){return}}),r=()=>l(void 0,null,function*(){yield t.request({method:"wallet_requestSnaps",params:{[e.id]:e.params||{}}});}),o=()=>l(void 0,null,function*(){var _;let C=yield t.request({method:"web3_clientVersion"});if(!C.includes("MetaMask"))throw new Error("Metamask is not installed");let x=(_=C.split("MetaMask/v")[1])==null?void 0:_.split(".")[0];if(!(Number(x)>=11))throw new Error("Metamask Snap is not supported in this version");return (yield i())||(yield r()),!0}),s=C=>l(void 0,null,function*(){(yield i())||(yield r());}),a=(C,A,x)=>l(void 0,null,function*(){let N=yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"signDirect",params:{chainId:C,signerAddress:A,signDoc:x}}}}),L=x.accountNumber,_=new _t(L.low,L.high,L.unsigned);return {signature:N.signature,signed:B(E({},N.signed),{accountNumber:`${_.toString()}`,authInfoBytes:new Uint8Array(Object.values(N.signed.authInfoBytes)),bodyBytes:new Uint8Array(Object.values(N.signed.bodyBytes))})}}),c=(C,A,x)=>l(void 0,null,function*(){return yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"signAmino",params:{chainId:C,signerAddress:A,signDoc:x}}}})}),u=C=>l(void 0,null,function*(){let A=yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"getKey",params:{chainId:C}}}});if(!A)throw new Error("No response from Metamask");return A.pubKey=Uint8Array.from(Object.values(A.pubkey)),delete A.pubkey,E({},A)}),m=C=>l(void 0,null,function*(){let A=yield u(C);return {address:A.bech32Address,algo:A.algo,pubkey:A.pubKey}}),S=(...C)=>l(void 0,null,function*(){let[A,x,N,L]=C;return yield c(A,x,N)}),w=(...C)=>l(void 0,null,function*(){let[A,x,N]=C;return yield a(A,x,N)}),h=C=>({getAccounts:()=>l(void 0,null,function*(){return [yield m(C)]}),signDirect:(A,x)=>w(C,A,x)}),b=C=>({getAccounts:()=>l(void 0,null,function*(){return [yield m(C)]}),signAmino:(A,x)=>S(C,A,x)});return {enable:s,experimentalSuggestChain:(...C)=>l(void 0,null,function*(){yield o(),yield t.request({method:"wallet_invokeSnap",params:{snapId:e.id,request:{method:"suggestChain",params:{chainInfo:C[0]}}}});}),getKey:u,getOfflineSigner:C=>({getAccounts:()=>l(void 0,null,function*(){return [yield m(C)]}),signDirect:(A,x)=>w(C,A,x),signAmino:(A,x)=>S(C,A,x)}),getOfflineSignerAuto:C=>l(void 0,null,function*(){return (yield u(C)).isNanoLedger?b(C):h(C)}),getOfflineSignerOnlyAmino:b,init:o,signAmino:S,signDirect:w}}throw d.getState()._notFoundFn(),new Error("window.ethereum is not defined")};var He=()=>$e({id:"npm:@leapwallet/metamask-cosmos-snap"});var ue=()=>{if(typeof window.station!="undefined"){let e=window.station.keplr;return {subscription:o=>{let s=()=>{Q(),o();};return window.addEventListener("station_wallet_change",s),()=>{window.removeEventListener("station_wallet_change",s);}},getKey:o=>l(void 0,null,function*(){let s=yield e.getKey(o);return E({isKeystone:!1},s)}),getOfflineSigner:o=>{try{let s=e.getOfflineSignerOnlyAmino(o);return Object.assign(s,{signDirect:(u,m)=>{throw new Error("signDirect not supported by Station")}})}catch(s){throw console.error(s),s}},experimentalSuggestChain:o=>l(void 0,null,function*(){try{let s=Object.assign(o,{chainSymbolImageUrl:o.chainSymbolImageUrl||"",stakeCurrency:{coinDecimals:o.stakeCurrency.coinDecimals,coinDenom:o.stakeCurrency.coinDenom,coinImageUrl:o.stakeCurrency.coinImageUrl||"",coinMinimalDenom:o.stakeCurrency.coinMinimalDenom},currencies:o.currencies.map(a=>({coinDecimals:a.coinDecimals,coinDenom:a.coinDenom,coinImageUrl:a.coinImageUrl||"",coinMinimalDenom:a.coinMinimalDenom})),feeCurrencies:o.feeCurrencies.map(a=>{var c,u,m;return {coinDecimals:a.coinDecimals,coinDenom:a.coinDenom,coinImageUrl:a.coinImageUrl||"",coinMinimalDenom:a.coinMinimalDenom,gasPriceStep:{average:((c=a.gasPriceStep)==null?void 0:c.average)||0,high:((u=a.gasPriceStep)==null?void 0:u.high)||0,low:((m=a.gasPriceStep)==null?void 0:m.low)||0}}})});yield e.experimentalSuggestChain(s);}catch(s){throw console.error(s),s}}),enable:o=>e.enable(o),disable:o=>e.disable(o),getOfflineSignerAuto:o=>e.getOfflineSignerAuto(o),getOfflineSignerOnlyAmino:o=>e.getOfflineSignerOnlyAmino(o),signDirect:()=>e.signDirect(),signAmino:(o,s,a,c)=>e.signAmino(o,s,a)}}throw d.getState()._notFoundFn(),new Error("window.station is not defined")};var de=()=>{if(typeof window.vectis!="undefined"){let e=window.vectis.cosmos;return {enable:a=>e.enable(a),getOfflineSigner:a=>e.getOfflineSigner(a),getOfflineSignerAuto:a=>e.getOfflineSignerAuto(a),getKey:a=>l(void 0,null,function*(){let c=yield e.getKey(a);return {address:fromBech32(c.address).data,algo:c.algo,bech32Address:c.address,name:c.name,pubKey:c.pubKey,isKeystone:!1,isNanoLedger:c.isNanoLedger}}),subscription:a=>{let c=()=>{Q(),a();};return window.addEventListener("vectis_accountChanged",c),()=>{window.removeEventListener("vectis_accountChanged",c);}},getOfflineSignerOnlyAmino:(...a)=>e.getOfflineSignerAmino(...a),experimentalSuggestChain:(...a)=>l(void 0,null,function*(){let[c]=a,u=B(E({},c),{rpcUrl:c.rpc,restUrl:c.rest,prettyName:c.chainName.replace(" ",""),bech32Prefix:c.bech32Config.bech32PrefixAccAddr});return e.suggestChains([u])}),signDirect:(...a)=>l(void 0,null,function*(){var m;let{1:c,2:u}=a;return e.signDirect(c,{bodyBytes:u.bodyBytes||Uint8Array.from([]),authInfoBytes:u.authInfoBytes||Uint8Array.from([]),accountNumber:_t.fromString(((m=u.accountNumber)==null?void 0:m.toString())||"",!1),chainId:u.chainId||""})}),signAmino:(...a)=>l(void 0,null,function*(){let{1:c,2:u}=a;return e.signAmino(c,u)})}}throw d.getState()._notFoundFn(),new Error("window.vectis is not defined")};var j=()=>typeof window!="undefined"?!!(window.matchMedia("(pointer:coarse)").matches||/Android|webOS|iPhone|iPad|iPod|BlackBerry|Opera Mini/u.test(navigator.userAgent)):!1,Ve=()=>j()&&navigator.userAgent.toLowerCase().includes("android"),Ye=()=>j()&&(navigator.userAgent.toLowerCase().includes("iphone")||navigator.userAgent.toLowerCase().includes("ipad"));var Ie=(e,t,n=new Error("Promise timed out"))=>{let i=new Promise((r,o)=>{setTimeout(()=>{o(n);},t);});return Promise.race([e,i])};var $=e=>{var _,ne,Pe;if(!((Pe=(ne=(_=d.getState().walletConnect)==null?void 0:_.options)==null?void 0:ne.projectId)!=null&&Pe.trim()))throw new Error("walletConnect.options.projectId is not defined");let t=(e==null?void 0:e.walletType)||"walletconnect",n=(e==null?void 0:e.encoding)||"base64",i=p=>{if(!e)return;let{appUrl:f,formatNativeUrl:g}=e;if(j()){if(Ve())if(!p)window.open(f.mobile.android,"_self","noreferrer noopener");else {let I=g(f.mobile.android,p,"android");window.open(I,"_self","noreferrer noopener");}if(Ye())if(!p)window.open(f.mobile.ios,"_self","noreferrer noopener");else {let I=g(f.mobile.ios,p,"ios");window.open(I,"_self","noreferrer noopener");}}},r=()=>{let{wcSignClients:p}=y.getState();if(!p.get(t))throw new Error("walletConnect.signClient is not defined");p.delete(t),y.setState({wcSignClients:p}),d.setState({_reconnect:!1,_reconnectConnector:null,recentChainIds:null});},o=p=>l(void 0,null,function*(){let{wcSignClients:f}=y.getState(),g=f.get(t);if(!g)throw new Error("walletConnect.signClient is not defined");if(!p)throw new Error("No wallet connect session");yield g.disconnect({topic:p,reason:getSdkError("USER_DISCONNECTED")}),yield c(g);}),s=p=>{try{let{wcSignClients:f}=y.getState(),g=f.get(t);if(!g)throw new Error("walletConnect.signClient is not defined");let I=g.session.getAll().at(-1);if(!I)return;if(!(I.expiry*1e3>Date.now()+1e3))throw o(I.topic),new Error("invalid session");try{let W=g.find({requiredNamespaces:{cosmos:{methods:["cosmos_getAccounts","cosmos_signAmino","cosmos_signDirect"],chains:p.map(q=>`cosmos:${q}`),events:["chainChanged","accountsChanged"]}}});if(!W.length)throw new Error("no session");return W.at(-1)}catch(W){if(!W.message.toLowerCase().includes("no matching key"))throw W}return I}catch(f){if(!f.message.toLowerCase().includes("no matching key"))throw f}},a=p=>{try{return s(p)}catch(f){return}},c=p=>l(void 0,null,function*(){try{let f=p.core.pairing.pairings.getAll({active:!1});if(!f.length)return;yield Promise.all(f.map(g=>l(void 0,null,function*(){yield p.core.pairing.pairings.delete(g.topic,{code:7001,message:"clear pairing"});})));}catch(f){if(!f.message.toLowerCase().includes("no matching key"))throw f}}),u=()=>l(void 0,null,function*(){let{walletConnect:p}=d.getState();if(!(p!=null&&p.options))throw new Error("walletConnect.options is not defined");let{wcSignClients:f}=y.getState(),g=f.get(t);if(g)return g;let I=yield SignClient.init(p.options);return f.set(t,I),y.setState({wcSignClients:f}),I}),m=p=>{let{wcSignClients:f}=y.getState(),g=f.get(t);if(!g)return ()=>{};let I=R=>{let W=y.getState().accounts;if(R.params.event.name==="accountsChanged"&&W&&!Object.values(W).map(q=>q.bech32Address).includes(R.params.event.data[0])){let q=R.params.chainId.split(":")[1];q&&S([q]);}else p();};return g.events.on("session_delete",r),g.events.on("session_expire",r),g.events.on("session_event",I),()=>{g.events.off("session_delete",r),g.events.off("session_expire",r),g.events.off("session_event",I);}},S=p=>l(void 0,null,function*(){var oe;let f=typeof p=="string"?[p]:p,{wcSignClients:g}=y.getState(),I=g.get(t);if(!I)throw new Error("enable walletConnect.signClient is not defined");let{walletConnect:R,chains:W}=d.getState();if(!((oe=R==null?void 0:R.options)!=null&&oe.projectId))throw new Error("walletConnect.options.projectId is not defined");let{Web3Modal:q}=yield import('@web3modal/standalone'),H=new q(E({projectId:R.options.projectId,walletConnectVersion:2,enableExplorer:!1,explorerRecommendedWalletIds:"NONE"},R.web3Modal)),Y=a(f);if(!Y){let{uri:K,approval:J}=yield Ie(I.connect({requiredNamespaces:{cosmos:{methods:["cosmos_getAccounts","cosmos_signAmino","cosmos_signDirect"],chains:f.map(F=>`cosmos:${F}`),events:["chainChanged","accountsChanged"]}}}),15e3,new Error("Connection timeout"));if(!K)throw new Error("No wallet connect uri");e?i(K):yield H.openModal({uri:K});let ie=F=>l(void 0,null,function*(){return F.aborted?Promise.reject(new Error("User closed wallet connect")):new Promise((we,X)=>{J().then(Ne=>{let Be=Ne.sessionProperties;if(!Be)return X(new Error("No session properties"));let Ae=JSON.parse(String(Be.keys));if(Ae.length===0)return X(new Error("No accounts"));let _e=Ae[0];if(!_e)return X(new Error("No accounts"));let De={};return f.forEach(re=>{De[re]=B(E({},_e),{bech32Address:toBech32(W.find(xt=>xt.chainId===re).bech32Config.bech32PrefixAccAddr,fromBech32(Ae[0].bech32Address).data)});}),y.setState(re=>({accounts:E(E({},re.accounts||{}),De)})),we(Ne)}).catch(X),F.addEventListener("abort",()=>{X(new Error("User closed wallet connect"));},{once:!0});})});try{let F=new AbortController,we=F.signal;H.subscribeModal(X=>{X.open||F.abort();}),yield ie(we);}catch(F){if(H.closeModal(),!F.message.toLowerCase().includes("no matching key"))return Promise.reject(F)}return e||H.closeModal(),Promise.resolve()}try{yield Ie((()=>l(void 0,null,function*(){let K=yield h(f[0]),J={};f.forEach(ie=>{J[ie]=B(E({},K),{bech32Address:toBech32(W.find(F=>F.chainId===ie).bech32Config.bech32PrefixAccAddr,fromBech32(K.bech32Address).data)});}),y.setState({accounts:J});}))(),15e3,new Error("Connection timeout"));}catch(K){if(o(Y.topic),!K.message.toLowerCase().includes("no matching key"))throw K}}),w=p=>l(void 0,null,function*(){var W;let{wcSignClients:f}=y.getState(),g=f.get(t);if(!g)throw new Error("walletConnect.signClient is not defined");let I=(W=s([p]))==null?void 0:W.topic;if(!I)throw new Error("No wallet connect session");let R=yield g.request({topic:I,chainId:`cosmos:${p}`,request:{method:"cosmos_getAccounts",params:{}}});if(!R[0])throw new Error("No wallet connect account");return {address:R[0].address,algo:R[0].algo,pubkey:new Uint8Array(Buffer.from(R[0].pubkey,n))}}),h=p=>l(void 0,null,function*(){let{address:f,algo:g,pubkey:I}=yield w(p);return {address:fromBech32(f).data,algo:g,bech32Address:f,name:"",pubKey:I,isKeystone:!1,isNanoLedger:!1}}),b=(...p)=>l(void 0,null,function*(){var K,J;let[f,g,I]=p,{accounts:R,wcSignClients:W}=y.getState(),q=W.get(t);if(!q)throw new Error("walletConnect.signClient is not defined");if(!R)throw new Error("account is not defined");let H=(K=s([f]))==null?void 0:K.topic;if(!H)throw new Error("No wallet connect session");if(!I.bodyBytes)throw new Error("No bodyBytes");if(!I.authInfoBytes)throw new Error("No authInfoBytes");let Y={topic:H,chainId:`cosmos:${f}`,request:{method:"cosmos_signDirect",params:{signerAddress:g,signDoc:B(E({},I),{bodyBytes:Buffer.from(I.bodyBytes).toString(n),authInfoBytes:Buffer.from(I.authInfoBytes).toString(n),accountNumber:(J=I.accountNumber)==null?void 0:J.toString()})}}};return i(),yield q.request(Y)}),T=(...p)=>l(void 0,null,function*(){let[f,g,I]=p,{signature:R,signed:W}=yield b(f,g,I);return {signed:{chainId:W.chainId,accountNumber:_t.fromString(W.accountNumber,!1),authInfoBytes:new Uint8Array(Buffer.from(W.authInfoBytes,n)),bodyBytes:new Uint8Array(Buffer.from(W.bodyBytes,n))},signature:R}}),v=(...p)=>l(void 0,null,function*(){var K;let[f,g,I,R]=p,{wcSignClients:W}=y.getState(),q=W.get(t),{accounts:H}=y.getState();if(!q)throw new Error("walletConnect.signClient is not defined");if(!H)throw new Error("account is not defined");let Y=(K=s([f]))==null?void 0:K.topic;if(!Y)throw new Error("No wallet connect session");return i(),yield q.request({topic:Y,chainId:`cosmos:${f}`,request:{method:"cosmos_signDirect",params:{signerAddress:g,signDoc:I}}})}),P=(...p)=>l(void 0,null,function*(){let[f,g,I,R]=p;return yield v(f,g,I)}),C=p=>({getAccounts:()=>l(void 0,null,function*(){return [yield w(p)]}),signDirect:(f,g)=>T(p,f,g)}),A=p=>({getAccounts:()=>l(void 0,null,function*(){return [yield w(p)]}),signAmino:(f,g)=>P(p,f,g)});return {enable:S,disable:p=>l(void 0,null,function*(){var I;let{wcSignClients:f}=y.getState(),g=f.get(t);if(p===void 0){let R=g==null?void 0:g.session.getAll();R!==void 0&&(yield Promise.all(R.map(W=>o(W.topic))));}else typeof p=="string"?yield o((I=s([p]))==null?void 0:I.topic):yield Promise.all(p.map(R=>{var W;return o((W=s([R]))==null?void 0:W.topic)}));(g==null?void 0:g.session.getAll().length)===0&&r();}),experimentalSuggestChain:(...p)=>l(void 0,null,function*(){yield Promise.reject(new Error("WalletConnect does not support experimentalSuggestChain"));}),getKey:h,getOfflineSigner:p=>({getAccounts:()=>l(void 0,null,function*(){return [yield w(p)]}),signDirect:(f,g)=>T(p,f,g),signAmino:(f,g)=>P(p,f,g)}),getOfflineSignerAuto:p=>l(void 0,null,function*(){return (yield h(p)).isNanoLedger?A(p):C(p)}),getOfflineSignerOnlyAmino:A,signAmino:P,signDirect:T,subscription:m,init:u}};var Xe=()=>{var t,n,i;if(!((i=(n=(t=d.getState().walletConnect)==null?void 0:t.options)==null?void 0:n.projectId)!=null&&i.trim()))throw new Error("walletConnect.options.projectId is not defined");if(!j())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:(r,o,s)=>`${r.replaceAll("/","").replaceAll(":","")}://wc?${o}`};return $(e)};var Ze=()=>{var t,n,i;if(!((i=(n=(t=d.getState().walletConnect)==null?void 0:t.options)==null?void 0:n.projectId)!=null&&i.trim()))throw new Error("walletConnect.options.projectId is not defined");if(!j())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:(r,o,s)=>{let a=r.replaceAll("/","").replaceAll(":",""),c=encodeURIComponent(o);switch(s){case"ios":return `${a}://wcV2?${c}`;case"android":return `${a}://wcV2?${c}#Intent;package=com.chainapsis.keplr;scheme=keplrwallet;end;`;default:return `${a}://wc?uri=${c}`}}};return $(e)};var et=()=>{var t,n,i;if(!((i=(n=(t=d.getState().walletConnect)==null?void 0:t.options)==null?void 0:n.projectId)!=null&&i.trim()))throw new Error("walletConnect.options.projectId is not defined");if(!j())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:(r,o,s)=>{let a=r.replaceAll("/","").replaceAll(":",""),c=encodeURIComponent(o);switch(s){case"ios":return `${a}://wcV2?${c}`;case"android":return `${a}://wcV2?${c}#Intent;package=io.leapwallet.cosmos;scheme=leapwallet;end;`;default:return `${a}://wc?uri=${c}`}}};return $(e)};var D=(e=d.getState().walletType)=>{try{return k(e),!0}catch(t){return !1}},Q=()=>{window.sessionStorage.removeItem(Z),y.setState(ee);},k=(e=d.getState().walletType)=>{switch(e){case"keplr":return ce();case"leap":return le();case"cosmostation":return ae();case"vectis":return de();case"walletconnect":return $();case"wc_keplr_mobile":return Ze();case"wc_leap_mobile":return et();case"wc_cosmostation_mobile":return Xe();case"metamask_snap_leap":return He();case"station":return ue();default:throw new Error("Unknown wallet type")}},Uo=()=>Object.fromEntries(Fe.map(e=>[e,D(e)])),tt=e=>e==="walletconnect"||e==="wc_keplr_mobile"||e==="wc_leap_mobile"||e==="wc_cosmostation_mobile";var te=e=>l(void 0,null,function*(){var t;try{let{recentChainIds:n,chains:i,walletType:r}=d.getState(),o=(e==null?void 0:e.walletType)||r;if(!D(o))throw new Error(`${o} is not available`);let a=k(o),c=typeof(e==null?void 0:e.chainId)=="string"?[e.chainId]:(e==null?void 0:e.chainId)||n;if(!c)throw new Error("No last known connected chain, connect action requires chain ids");let u=i==null?void 0:i.map(h=>h.chainId);c.forEach(h=>{if(!(u!=null&&u.includes(h)))throw new Error(`Chain ${h} is not provided in GrazProvider`)}),y.setState(h=>{let b=d.getState()._reconnect||!!d.getState()._reconnectConnector||!!c;return h.activeChainIds&&c.filter(v=>{var P;return !((P=h.activeChainIds)!=null&&P.includes(v))}).length>0?{status:"connecting"}:b?{status:"reconnecting"}:{status:"connecting"}});let{accounts:m}=y.getState();if(yield (t=a.init)==null?void 0:t.call(a),yield a.enable(c),!tt(o)){let h=yield a.getKey(c[0]),b={};c.forEach(T=>{b[T]=B(E({},h),{bech32Address:toBech32(i.find(v=>v.chainId===T).bech32Config.bech32PrefixAccAddr,fromBech32(h.bech32Address).data)});}),y.setState(T=>({accounts:E(E({},T.accounts||{}),b)}));}d.setState(h=>({recentChainIds:[...h.recentChainIds||[],...c].filter((b,T,v)=>v.indexOf(b)===T)})),y.setState(h=>({activeChainIds:[...h.activeChainIds||[],...c].filter((b,T,v)=>v.indexOf(b)===T)})),d.setState({walletType:o,_reconnect:!!(e!=null&&e.autoReconnect),_reconnectConnector:o}),y.setState({status:"connected"}),typeof window!="undefined"&&window.sessionStorage.setItem(Z,"Active");let S=c.map(h=>i.find(b=>b.chainId===h));return {accounts:y.getState().accounts,walletType:o,chains:S}}catch(n){throw console.error("connect ",n),y.getState().accounts===null&&y.setState({status:"disconnected"}),y.getState().accounts&&y.getState().activeChainIds&&y.setState({status:"connected"}),n}}),Ee=e=>{typeof window!="undefined"&&window.sessionStorage.removeItem(Z);let t=typeof(e==null?void 0:e.chainId)=="string"?[e.chainId]:e==null?void 0:e.chainId;if(t){let n=y.getState().accounts;t.forEach(r=>{n==null||delete n[r];}),Object.values(n||{}).length===0?(y.setState(ee),d.setState({_reconnect:!1,_reconnectConnector:null,recentChainIds:null})):(y.setState(r=>{var o;return {activeChainIds:(o=r.activeChainIds)==null?void 0:o.filter(s=>!t.includes(s)),accounts:n}}),d.setState(r=>{var o;return {recentChainIds:(o=r.recentChainIds)==null?void 0:o.filter(s=>!t.includes(s))}}));}else y.setState(ee),d.setState({_reconnect:!1,_reconnectConnector:null,recentChainIds:null});return Promise.resolve()},z=e=>l(void 0,null,function*(){var r;let{recentChainIds:t,_reconnectConnector:n,_reconnect:i}=d.getState();try{let o=D(n||void 0);if(t&&o&&n)return yield te({chainId:t,walletType:n,autoReconnect:i})}catch(o){(r=e==null?void 0:e.onError)==null||r.call(e,o),Ee();}}),nt=e=>l(void 0,null,function*(){if(!(e!=null&&e.chainId))throw new Error("chainId is required");let{walletType:t}=d.getState(),n=e.walletType||t;if(!D(n))throw new Error(`${n} is not available`);let r=k(n),o=r.getOfflineSigner(e.chainId),s=r.getOfflineSignerOnlyAmino(e.chainId),a=yield r.getOfflineSignerAuto(e.chainId);return {offlineSigner:o,offlineSignerAmino:s,offlineSignerAuto:a}});var be=()=>{d.setState({recentChainIds:null});},Zo=()=>d.getState().recentChainIds,ei=()=>{var n;let{recentChainIds:e,chains:t}=d.getState();return (n=e==null?void 0:e.map(i=>t.find(r=>r.chainId===i)))!=null?n:null},Oe=n=>l(void 0,[n],function*({chainInfo:e,walletType:t}){return yield k(t).experimentalSuggestChain(e),e}),ot=e=>l(void 0,null,function*(){var i;let t=d.getState().walletType;return yield Oe({chainInfo:e.chainInfo,walletType:(i=e.walletType)!=null?i:t}),yield te({chainId:e.chainInfo.chainId,walletType:e.walletType,autoReconnect:e.autoReconnect})});var it=e=>(d.setState(t=>({walletConnect:e.walletConnect||t.walletConnect,walletType:e.defaultWallet||t.walletType,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 rt=s=>l(void 0,[s],function*({signingClient:e,senderAddress:t,recipientAddress:n,amount:i,fee:r,memo:o}){if(!e)throw new Error("No connected account detected");if(!t)throw new Error("senderAddress is not defined");return e.sendTokens(t,n,i,r,o)}),st=m=>l(void 0,[m],function*({signingClient:e,senderAddress:t,recipientAddress:n,transferAmount:i,sourcePort:r,sourceChannel:o,timeoutHeight:s,timeoutTimestamp:a,fee:c,memo:u}){if(!e)throw new Error("Stargate signing client is not ready");if(!t)throw new Error("senderAddress is not defined");return e.sendIbcTokens(t,n,i,r,o,s,a,c,u)}),at=a=>l(void 0,[a],function*({signingClient:e,senderAddress:t,msg:n,fee:i,options:r,label:o,codeId:s}){if(!e)throw new Error("CosmWasm signing client is not ready");return e.instantiate(t,s,n,o,i,r)}),ct=a=>l(void 0,[a],function*({signingClient:e,senderAddress:t,msg:n,fee:i,contractAddress:r,funds:o,memo:s}){if(!e)throw new Error("CosmWasm signing client is not ready");return e.execute(t,r,n,i,s,o)}),lt=(e,t,n)=>l(void 0,null,function*(){if(!n)throw new Error("CosmWasm client is not ready");return yield n.queryContractSmart(e,t)}),ut=(e,t,n)=>{if(!n)throw new Error("CosmWasm client is not ready");let i=new TextEncoder().encode(t);return n.queryContractRaw(e,i)};var ui=e=>e,di=e=>e;var me=e=>e?Object.keys(e).length===0:!0;var Me=class extends Error{constructor(t){super(),this.name="AbortError",this.message=t;}},dt=e=>globalThis.DOMException===void 0?new Me(e):new DOMException(e),mt=e=>{let t=e.reason===void 0?dt("This operation was aborted."):e.reason;return t instanceof Error?t:dt(t)};function xe(o,s){return l(this,arguments,function*(e,t,{concurrency:n=Number.POSITIVE_INFINITY,stopOnError:i=!0,signal:r}={}){return new Promise((a,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(n)||n===Number.POSITIVE_INFINITY)&&n>=1))throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${n}\` (${typeof n})`);let u=[],m=[],S=new Map,w=!1,h=!1,b=!1,T=0,v=0,P=e[Symbol.iterator]===void 0?e[Symbol.asyncIterator]():e[Symbol.iterator](),C=x=>{w=!0,h=!0,c(x);};r&&(r.aborted&&C(mt(r)),r.addEventListener("abort",()=>{C(mt(r));}));let A=()=>l(this,null,function*(){if(h)return;let x=yield P.next(),N=v;if(v++,x.done){if(b=!0,T===0&&!h){if(!i&&m.length>0){C(new AggregateError(m));return}if(h=!0,S.size===0){a(u);return}let L=[];for(let[_,ne]of u.entries())S.get(_)!==pt&&L.push(ne);a(L);}return}T++,l(this,null,function*(){try{let L=yield x.value;if(h)return;let _=yield t(L,N);_===pt&&S.set(N,_),u[N]=_,T--,yield A();}catch(L){if(i)C(L);else {m.push(L),T--;try{yield A();}catch(_){C(_);}}}});});l(this,null,function*(){for(let x=0;x<n;x++){try{yield A();}catch(N){C(N);break}if(b||w)break}});})})}var pt=Symbol("skip");var U=({chainId:e,multiChain:t})=>{let n=d(r=>r.chains);if(!n)throw new Error("No chains found in GrazProvider");let i=typeof e=="string"?[e]:e;switch(!0){case(!!t&&!!i):return i.map(r=>n.find(o=>o.chainId===r)).filter(Boolean);case(!t&&!!i):return [i.map(r=>n.find(o=>o.chainId===r)).filter(Boolean)[0]];case(!!t&&!i):return n;default:return [n[0]]}},G=(e,t,n)=>l(void 0,null,function*(){let i=d.getState().multiChainFetchConcurrency;if(e){let o=yield xe(t,n,{concurrency:i});return Object.fromEntries(o.map((s,a)=>[t[a].chainId,s]))}return yield n(t[0])}),ft=(e,t,n)=>{if(e){let r=t.map(n);return Object.fromEntries(r.map((o,s)=>[t[s].chainId,o]))}return n(t[0])};var Re=e=>{let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),n=useMemo(()=>["USE_STARGATE_CLIENT",t],[t]);return useQuery({queryKey:n,queryFn:r=>l(void 0,[r],function*({queryKey:[,i]}){if(i.length<1)throw new Error("No chains found");return yield G(!!(e!=null&&e.multiChain),i,s=>l(void 0,null,function*(){var m;let a=(m=d.getState().chainsConfig)==null?void 0:m[s.chainId],c={url:s.rpc,headers:E({},(a==null?void 0:a.rpcHeaders)||{})};return yield StargateClient.connect(c)}))}),enabled:!!t&&t.length>0&&((e==null?void 0:e.enabled)!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})},ke=e=>{let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),n=useMemo(()=>["USE_COSMWASM_CLIENT",t],[t]);return useQuery({queryKey:n,queryFn:r=>l(void 0,[r],function*({queryKey:[,i]}){if(i.length<1)throw new Error("No chains found");return yield G(!!(e!=null&&e.multiChain),i,s=>l(void 0,null,function*(){var m;let a=(m=d.getState().chainsConfig)==null?void 0:m[s.chainId],c={url:s.rpc,headers:E({},(a==null?void 0:a.rpcHeaders)||{})};return yield CosmWasmClient.connect(c)}))}),enabled:!!t&&t.length>0&&((e==null?void 0:e.enabled)!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})},pe=({type:e,chainId:t,multiChain:n,enabled:i})=>{let r=U({chainId:t,multiChain:n}),o=useMemo(()=>["USE_TENDERMINT_CLIENT",e,r],[e,r]);return useQuery({queryKey:o,queryFn:c=>l(void 0,[c],function*({queryKey:[,s,a]}){if(a.length<1)throw new Error("No chains found");return yield G(!!n,a,m=>l(void 0,null,function*(){var T;let S=(T=d.getState().chainsConfig)==null?void 0:T[m.chainId],w={url:m.rpc,headers:E({},(S==null?void 0:S.rpcHeaders)||{})};return yield (s==="tm37"?Tendermint37Client:Tendermint34Client).connect(w)}))}),enabled:!!r&&r.length>0&&(i!==void 0?!!i:!0),refetchOnWindowFocus:!1})};var Li=()=>d(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"}),shallow),fe=e=>{let n=["USE_CHECK_WALLET",d(r=>e||r.walletType)];return useQuery(n,({queryKey:[,r]})=>D(r))};var V=e=>{let t=d(a=>a.walletType),n=y(a=>a.activeChainIds),i=U({chainId:e!=null&&e.chainId?e.chainId:n||void 0,multiChain:e==null?void 0:e.multiChain}),r=y(a=>a.accounts),o=y(a=>a.status);return useEffect(()=>y.subscribe(a=>a.status,(a,c)=>{var u,m,S;if(a==="connected"){let{accounts:w,activeChainIds:h}=y.getState(),{chains:b}=d.getState(),{walletType:T}=d.getState();if(!w||!h||!b)return (u=e==null?void 0:e.onDisconnect)==null?void 0:u.call(e);(m=e==null?void 0:e.onConnect)==null||m.call(e,{accounts:w,chains:h.map(v=>b.find(P=>P.chainId===v)),walletType:T,isReconnect:c==="reconnecting"});}a==="disconnected"&&((S=e==null?void 0:e.onDisconnect)==null||S.call(e));}),[e]),{data:useMemo(()=>r?ft(!!(e!=null&&e.multiChain),i,a=>r[a.chainId]):void 0,[r,i,e==null?void 0:e.multiChain]),isConnected:o==="connected",isConnecting:o==="connecting",isDisconnected:o==="disconnected",isReconnecting:o==="reconnecting",isLoading:o==="connecting"||o==="reconnecting",walletType:o==="connected"?t:void 0,reconnect:z,status:o}},Jt=e=>{let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),{data:n}=V(),i=(e==null?void 0:e.bech32Address)||(n==null?void 0:n.bech32Address),{data:r}=Re({chainId:t.map(s=>s.chainId),multiChain:!0,enabled:((e==null?void 0:e.enabled)===void 0?!0:e.enabled)&&!!i}),o=useMemo(()=>["USE_ALL_BALANCES",r,t,i,e==null?void 0:e.chainId],[i,e==null?void 0:e.chainId,t,r]);return useQuery(o,u=>l(void 0,[u],function*({queryKey:[,s,a,c]}){if(!c)throw new Error("address is not defined");return yield G(!!(e!=null&&e.multiChain),a,S=>l(void 0,null,function*(){let w=s==null?void 0:s[S.chainId];if(!w)throw new Error(`Client is not ready ${S.chainId}`);return yield w.getAllBalances(toBech32(S.bech32Config.bech32PrefixAccAddr,fromBech32(c).data))}))}),{enabled:!!i&&!!t&&t.length>0&&!me(r)&&((e==null?void 0:e.enabled)===void 0?!0:e.enabled),refetchOnMount:!1,refetchOnReconnect:!0,refetchOnWindowFocus:!1})},Ji=e=>{let t=U({chainId:e.chainId}),{data:n}=V({chainId:e.chainId}),i=e.bech32Address||(n==null?void 0:n.bech32Address),{data:r,refetch:o}=Jt({chainId:t.map(c=>c.chainId),bech32Address:i,enabled:!!i&&(e.enabled===void 0?!0:e.enabled)}),s=["USE_BALANCE",e.denom,r,t,i,e.chainId],a=useQuery(s,({queryKey:[,c,u]})=>u==null?void 0:u.find(m=>m.denom===c),{enabled:!!r&&!!(r!=null&&r.length)&&(e.enabled===void 0?!0:e.enabled)});return B(E({},a),{refetch:c=>l(void 0,null,function*(){return yield o(),a.refetch(c)})})},Xi=({onError:e,onLoading:t,onSuccess:n}={})=>{let r=useMutation(["USE_CONNECT",e,t,n],te,{onError:(s,a)=>Promise.resolve(e==null?void 0:e(s,a)),onMutate:t,onSuccess:s=>Promise.resolve(n==null?void 0:n(s))}),{data:o}=fe();return {connect:s=>r.mutate(s),connectAsync:s=>r.mutateAsync(s),error:r.error,isLoading:r.isLoading,isSuccess:r.isSuccess,isSupported:!!o,status:r.status}},Zi=({onError:e,onLoading:t,onSuccess:n}={})=>{let r=useMutation(["USE_DISCONNECT",e,t,n],Ee,{onError:o=>Promise.resolve(e==null?void 0:e(o,void 0)),onMutate:t,onSuccess:()=>Promise.resolve(n==null?void 0:n(void 0))});return {disconnect:o=>r.mutate(o),disconnectAsync:o=>r.mutateAsync(o),error:r.error,isLoading:r.isLoading,isSuccess:r.isSuccess,status:r.status}},er=e=>{let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),n=d(r=>r.walletType),i=useMemo(()=>["USE_OFFLINE_SIGNERS",t,n],[t,n]);return useQuery({queryKey:i,queryFn:s=>l(void 0,[s],function*({queryKey:[,r,o]}){if(r.length<1)throw new Error("No chain found");if(!D(o))throw new Error(`${o} is not available`);return yield G(!!(e!=null&&e.multiChain),r,u=>l(void 0,null,function*(){return yield nt({chainId:u.chainId,walletType:o})}))}),enabled:!!t&&t.length>0&&!!n,refetchOnWindowFocus:!1})},tr=e=>{let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),{data:n}=V(),{data:i}=Re({chainId:t.map(s=>s.chainId),multiChain:!0}),r=(e==null?void 0:e.bech32Address)||(n==null?void 0:n.bech32Address),o=useMemo(()=>["USE_BALANCE_STAKED",i,t,r],[t,r,i]);return useQuery(o,u=>l(void 0,[u],function*({queryKey:[,s,a,c]}){if(!c)throw new Error("address is not defined");return yield G(!!(e!=null&&e.multiChain),a,S=>l(void 0,null,function*(){var h;if(!s)throw new Error("Client is not ready");return yield (h=s[S.chainId])==null?void 0:h.getBalanceStaked(toBech32(S.bech32Config.bech32PrefixAccAddr,fromBech32(c).data))}))}),{enabled:!!r&&!!t&&t.length>0&&!!i,refetchOnMount:!1,refetchOnReconnect:!0,refetchOnWindowFocus:!1})};var lr=()=>y(e=>e.activeChainIds),Xt=()=>{var e;return (e=y(t=>t.activeChainIds))==null?void 0:e.map(t=>{var i;let n=(i=d.getState().chains)==null?void 0:i.find(r=>r.chainId===t);if(n)return n}).filter(Boolean)},ur=({denom:e})=>{let t=Xt();return useQuery(["USE_ACTIVE_CHAIN_CURRENCY",e],({queryKey:[,r]})=>{var o;return (o=t==null?void 0:t.find(s=>s.currencies.find(a=>a.coinMinimalDenom===r)))==null?void 0:o.currencies.find(s=>s)})},dr=e=>{var r;let t=(r=e.status)!=null?r:"BOND_STATUS_BONDED",n=["USE_ACTIVE_CHAIN_VALIDATORS",e.queryClient,t];return useQuery(n,a=>l(void 0,[a],function*({queryKey:[,o,s]}){if(!o)throw new Error("Query client is not defined");return yield o.staking.validators(s)}),{enabled:typeof e.queryClient!="undefined"})},mr=()=>({data:d(t=>t.recentChainIds),clear:be}),pr=()=>{var t;return {data:(t=d(n=>n.recentChainIds))==null?void 0:t.map(n=>{var r;let i=(r=d.getState().chains)==null?void 0:r.find(o=>o.chainId===n);if(i)return i}).filter(Boolean),clear:be}},fr=({onError:e,onLoading:t,onSuccess:n}={})=>{let r=useMutation(["USE_SUGGEST_CHAIN",e,t,n],Oe,{onError:(o,s)=>Promise.resolve(e==null?void 0:e(o,s.chainInfo)),onMutate:o=>t==null?void 0:t(o.chainInfo),onSuccess:o=>Promise.resolve(n==null?void 0:n(o))});return {error:r.error,isLoading:r.isLoading,isSuccess:r.isSuccess,suggest:r.mutate,suggestAsync:r.mutateAsync,status:r.status}},gr=({onError:e,onLoading:t,onSuccess:n}={})=>{let r=useMutation(["USE_SUGGEST_CHAIN_AND_CONNECT",e,t,n],ot,{onError:(s,a)=>Promise.resolve(e==null?void 0:e(s,a)),onMutate:s=>t==null?void 0:t(s),onSuccess:s=>Promise.resolve(n==null?void 0:n(s))}),{data:o}=fe();return {error:r.error,isLoading:r.isLoading,isSuccess:r.isSuccess,isSupported:!!o,status:r.status,suggestAndConnect:r.mutate,suggestAndConnectAsync:r.mutateAsync}};var Tr=({onError:e,onLoading:t,onSuccess:n}={})=>{let{data:i}=V(),r=i==null?void 0:i.bech32Address,o=useMutation(["USE_SEND_TOKENS",e,t,n,r],s=>rt(E({senderAddress:r},s)),{onError:(s,a)=>Promise.resolve(e==null?void 0:e(s,a)),onMutate:t,onSuccess:s=>Promise.resolve(n==null?void 0:n(s))});return {error:o.error,isLoading:o.isLoading,isSuccess:o.isSuccess,sendTokens:o.mutate,sendTokensAsync:o.mutateAsync,status:o.status}},Er=({onError:e,onLoading:t,onSuccess:n}={})=>{let{data:i}=V(),r=i==null?void 0:i.bech32Address,o=useMutation(["USE_SEND_IBC_TOKENS",e,t,n,r],s=>st(E({senderAddress:r},s)),{onError:(s,a)=>Promise.resolve(e==null?void 0:e(s,a)),onMutate:t,onSuccess:s=>Promise.resolve(n==null?void 0:n(s))});return {error:o.error,isLoading:o.isLoading,isSuccess:o.isSuccess,sendIbcTokens:o.mutate,sendIbcTokensAsync:o.mutateAsync,status:o.status}},br=({codeId:e,onError:t,onLoading:n,onSuccess:i})=>{let{data:r}=V(),o=r==null?void 0:r.bech32Address,a=useMutation(["USE_INSTANTIATE_CONTRACT",t,n,i,e,o],c=>{var m;if(!o)throw new Error("senderAddress is undefined");let u=B(E({},c),{fee:(m=c.fee)!=null?m:"auto",senderAddress:o,codeId:e});return at(u)},{onError:(c,u)=>Promise.resolve(t==null?void 0:t(c,u)),onMutate:n,onSuccess:c=>Promise.resolve(i==null?void 0:i(c))});return {error:a.error,isLoading:a.isLoading,isSuccess:a.isSuccess,instantiateContract:a.mutate,instantiateContractAsync:a.mutateAsync,status:a.status}},Or=({contractAddress:e,onError:t,onLoading:n,onSuccess:i})=>{let{data:r}=V(),o=r==null?void 0:r.bech32Address,a=useMutation(["USE_EXECUTE_CONTRACT",t,n,i,e,o],c=>{var m,S,w;if(!o)throw new Error("senderAddress is undefined");let u=B(E({},c),{fee:(m=c.fee)!=null?m:"auto",senderAddress:o,contractAddress:e,memo:(S=c.memo)!=null?S:"",funds:(w=c.funds)!=null?w:[]});return ct(u)},{onError:(c,u)=>Promise.resolve(t==null?void 0:t(c,u)),onMutate:n,onSuccess:c=>Promise.resolve(i==null?void 0:i(c))});return {error:a.error,isLoading:a.isLoading,isSuccess:a.isSuccess,executeContract:a.mutate,executeContractAsync:a.mutateAsync,status:a.status}},Mr=e=>{let{data:t}=ke();return useQuery(["USE_QUERY_SMART",e==null?void 0:e.address,e==null?void 0:e.queryMsg,t],({queryKey:[,i]})=>{if(!(e!=null&&e.address)||!e.queryMsg)throw new Error("address or queryMsg undefined");return lt(e.address,e.queryMsg,t)},{enabled:!!(e!=null&&e.address)&&!!(e!=null&&e.queryMsg)&&!!t})},xr=e=>{let{data:t}=ke(),n=["USE_QUERY_RAW",e==null?void 0:e.key,e==null?void 0:e.address,t];return useQuery(n,({queryKey:[,r]})=>{if(!(e!=null&&e.address)||!e.key)throw new Error("address or key undefined");return ut(e.address,e.key,t)},{enabled:!!(e!=null&&e.address)&&!!(e!=null&&e.key)&&!!t})};function qr(e){let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),n=d(o=>o.walletType),i=y(o=>o.activeChainIds),r=useMemo(()=>["USE_STARGATE_SIGNING_CLIENT",t,n,e,i],[i,e,t,n]);return useQuery({queryKey:r,queryFn:a=>l(this,[a],function*({queryKey:[,o,s]}){if(o.length<1)throw new Error("No chains found");return yield G(!!(e!=null&&e.multiChain),o,u=>l(this,null,function*(){var T,v;if(!(i!=null&&i.includes(u.chainId)))return;if(!D(s))throw new Error(`${s} is not available`);let S=yield (()=>l(this,null,function*(){switch(e==null?void 0:e.offlineSigner){case"offlineSigner":return k(s).getOfflineSigner(u.chainId);case"offlineSignerAuto":return k(s).getOfflineSignerAuto(u.chainId);case"offlineSignerOnlyAmino":return k(s).getOfflineSignerOnlyAmino(u.chainId);default:return k(s).getOfflineSignerAuto(u.chainId)}}))(),w=(T=d.getState().chainsConfig)==null?void 0:T[u.chainId],h={url:u.rpc,headers:E({},(w==null?void 0:w.rpcHeaders)||{})};return (e==null?void 0:e.multiChain)===!0&&e.opts,yield SigningStargateClient.connectWithSigner(h,S,e!=null&&e.multiChain?(v=e.opts)==null?void 0:v[u.chainId]:e==null?void 0:e.opts)}))}),enabled:!!t&&t.length>0&&!!n&&((e==null?void 0:e.enabled)!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}function Gr(e){let t=U({chainId:e==null?void 0:e.chainId,multiChain:e==null?void 0:e.multiChain}),n=d(o=>o.walletType),i=y(o=>o.activeChainIds),r=useMemo(()=>["USE_COSMWASM_SIGNING_CLIENT",t,n,e,i],[i,e,t,n]);return useQuery({queryKey:r,queryFn:a=>l(this,[a],function*({queryKey:[,o,s]}){if(o.length<1)throw new Error("No chains found");return yield G(!!(e!=null&&e.multiChain),o,u=>l(this,null,function*(){var v,P;if(!(i!=null&&i.includes(u.chainId)))return;if(!D(s))throw new Error(`${s} is not available`);let S=yield (()=>l(this,null,function*(){switch(e==null?void 0:e.offlineSigner){case"offlineSigner":return k(s).getOfflineSigner(u.chainId);case"offlineSignerAuto":return k(s).getOfflineSignerAuto(u.chainId);case"offlineSignerOnlyAmino":return k(s).getOfflineSignerOnlyAmino(u.chainId);default:return k(s).getOfflineSignerAuto(u.chainId)}}))(),w=(v=d.getState().chainsConfig)==null?void 0:v[u.chainId],h={url:u.rpc,headers:E({},(w==null?void 0:w.rpcHeaders)||{})},b=w!=null&&w.gas?GasPrice.fromString(`${w.gas.price}${w.gas.denom}`):void 0;return yield SigningCosmWasmClient.connectWithSigner(h,S,E({gasPrice:b},e!=null&&e.multiChain?(P=e.opts)==null?void 0:P[u.chainId]:(e==null?void 0:e.opts)||{}))}))}),enabled:!!t&&t.length>0&&!!n&&((e==null?void 0:e.enabled)!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}function Fr(e){let t=U({chainId:e.chainId,multiChain:e.multiChain}),n=d(s=>s.walletType),i=y(s=>s.activeChainIds),r=useMemo(()=>["USE_STARGATE_TM_SIGNING_CLIENT",t,n,e,i],[i,e,t,n]),{data:o}=pe({type:e.type,chainId:e.chainId,multiChain:e.multiChain});return useQuery({queryKey:r,queryFn:c=>l(this,[c],function*({queryKey:[,s,a]}){if(s.length<1)throw new Error("No chains found");return yield G(!!e.multiChain,s,m=>l(this,null,function*(){var T;if(!(i!=null&&i.includes(m.chainId)))return;if(!D(a))throw new Error(`${a} is not available`);if(!o)throw new Error("No tendermint client found");let w=yield (()=>l(this,null,function*(){switch(e.offlineSigner){case"offlineSigner":return k(a).getOfflineSigner(m.chainId);case"offlineSignerAuto":return k(a).getOfflineSignerAuto(m.chainId);case"offlineSignerOnlyAmino":return k(a).getOfflineSignerOnlyAmino(m.chainId);default:return k(a).getOfflineSignerAuto(m.chainId)}}))(),h=e.multiChain?o[m.chainId]:o;return yield SigningStargateClient.createWithSigner(h,w,e.multiChain?(T=e.opts)==null?void 0:T[m.chainId]:e.opts)}))}),enabled:!!t&&t.length>0&&!!n&&!!o&&(e.enabled!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}function zr(e){let t=U({chainId:e.chainId,multiChain:e.multiChain}),n=d(a=>a.walletType),i=y(a=>a.activeChainIds),r=useMemo(()=>["USE_COSMWASM_TM_SIGNING_CLIENT",t,n,e,i],[i,e,t,n]),{data:o}=pe({type:e.type,chainId:e.chainId,multiChain:!1,enabled:!e.multiChain}),{data:s}=pe({type:e.type,chainId:e.chainId,multiChain:!0,enabled:!!e.multiChain});return useQuery({queryKey:r,queryFn:u=>l(this,[u],function*({queryKey:[,a,c]}){if(a.length<1)throw new Error("No chains found");return yield G(!!e.multiChain,a,S=>l(this,null,function*(){var C,A;if(!(i!=null&&i.includes(S.chainId)))return;if(!D(c))throw new Error(`${c} is not available`);let h=yield (()=>l(this,null,function*(){switch(e.offlineSigner){case"offlineSigner":return k(c).getOfflineSigner(S.chainId);case"offlineSignerAuto":return k(c).getOfflineSignerAuto(S.chainId);case"offlineSignerOnlyAmino":return k(c).getOfflineSignerOnlyAmino(S.chainId);default:return k(c).getOfflineSignerAuto(S.chainId)}}))(),b=(C=d.getState().chainsConfig)==null?void 0:C[S.chainId],T=b!=null&&b.gas?GasPrice.fromString(`${b.gas.price}${b.gas.denom}`):void 0,v=e.multiChain?s==null?void 0:s[S.chainId]:o;if(!v)throw new Error("No tendermint client found");return yield SigningCosmWasmClient.createWithSigner(v,h,E({gasPrice:T},e.multiChain?(A=e.opts)==null?void 0:A[S.chainId]:e.opts||{}))}))}),enabled:!!t&&t.length>0&&!!n&&(!!o||!me(s))&&(e.enabled!==void 0?!!e.enabled:!0),refetchOnWindowFocus:!1})}var Et=({children:e})=>{let[t,n]=useState(!1);return useEffect(()=>{n(!0);},[]),jsx(Fragment,{children:t?e:null})};var on=()=>{let e=typeof window!="undefined"&&window.sessionStorage.getItem(Z)==="Active",{_reconnect:t,_onReconnectFailed:n,_reconnectConnector:i}=d(),{activeChainIds:r,wcSignClients:o}=y(),s=D(i||void 0);return useEffect(()=>{if(i){if(!s)return;e&&r?z({onError:n}):!e&&t&&z({onError:n});}},[s]),useEffect(()=>{var a,c,u,m,S,w,h,b,T,v,P,C;if(i){if(!s)return;i==="cosmostation"&&((c=(a=ae()).subscription)==null||c.call(a,()=>{z({onError:n});})),i==="keplr"&&((m=(u=ce()).subscription)==null||m.call(u,()=>{z({onError:n});})),i==="leap"&&((w=(S=le()).subscription)==null||w.call(S,()=>{z({onError:n});})),i==="vectis"&&((b=(h=de()).subscription)==null||b.call(h,()=>{z({onError:n});})),i==="walletconnect"&&o.has("walletconnect")&&((v=(T=$()).subscription)==null||v.call(T,()=>{z({onError:n});})),i==="station"&&((C=(P=ue()).subscription)==null||C.call(P,()=>{z({onError:n});}));}},[i,o,s]),null},Ot=()=>(on(),null);var an=new QueryClient({}),gs=i=>{var r=i,{children:e,grazOptions:t}=r,n=qe(r,["children","grazOptions"]);return it(t),jsx(QueryClientProvider,B(E({client:an},n),{children:jsxs(Et,{children:[e,jsx(Ot,{})]})}),"graz-provider")};
16
16
 
17
- export { Et as GrazEvents, fs as GrazProvider, Le as WALLET_TYPES, Ue as WalletType, D as checkWallet, Te as clearRecentChain, F as clearSession, nt as configureGraz, ee as connect, ui as defineChainInfo, li as defineChains, Ie as disconnect, st as executeContract, Uo as getAvailableWallets, se as getCosmostation, ae as getKeplr, ce as getLeap, Qe as getMetamaskSnapLeap, et as getOfflineSigners, ct as getQueryRaw, at as getQuerySmart, Xo as getRecentChainIds, Zo as getRecentChains, le as getVectis, Ye as getWCCosmostation, Je as getWCKeplr, Xe as getWCLeap, R as getWallet, j as getWalletConnect, rt as instantiateContract, Ze as isWalletConnect, z as reconnect, it as sendIbcTokens, ot as sendTokens, Ee as suggestChain, tt as suggestChainAndConnect, H as useAccount, lr as useActiveChainCurrency, cr as useActiveChainIds, Yt as useActiveChains, Di as useActiveWalletType, Yi as useBalance, er as useBalanceStaked, Vt as useBalances, pe as useCheckWallet, Ji as useConnect, ve as useCosmWasmClient, qr as useCosmWasmSigningClient, Fr as useCosmWasmTmSigningClient, Xi as useDisconnect, br as useExecuteContract, tn as useGrazEvents, Er as useInstantiateContract, Zi as useOfflineSigners, ur as useQueryClientValidators, Mr as useQueryRaw, Or as useQuerySmart, dr as useRecentChainIds, mr as useRecentChains, Tr as useSendIbcTokens, Ir as useSendTokens, We as useStargateClient, Lr as useStargateSigningClient, Gr as useStargateTmSigningClient, pr as useSuggestChain, fr as useSuggestChainAndConnect, me as useTendermintClient };
17
+ export { Ot as GrazEvents, gs as GrazProvider, Fe as WALLET_TYPES, Ge as WalletType, D as checkWallet, be as clearRecentChain, Q as clearSession, it as configureGraz, te as connect, di as defineChainInfo, ui as defineChains, Ee as disconnect, ct as executeContract, Uo as getAvailableWallets, ae as getCosmostation, ce as getKeplr, le as getLeap, He as getMetamaskSnapLeap, nt as getOfflineSigners, ut as getQueryRaw, lt as getQuerySmart, Zo as getRecentChainIds, ei as getRecentChains, de as getVectis, Xe as getWCCosmostation, Ze as getWCKeplr, et as getWCLeap, k as getWallet, $ as getWalletConnect, at as instantiateContract, tt as isWalletConnect, z as reconnect, st as sendIbcTokens, rt as sendTokens, Oe as suggestChain, ot as suggestChainAndConnect, V as useAccount, ur as useActiveChainCurrency, lr as useActiveChainIds, Xt as useActiveChains, Li as useActiveWalletType, Ji as useBalance, tr as useBalanceStaked, Jt as useBalances, fe as useCheckWallet, Xi as useConnect, ke as useCosmWasmClient, Gr as useCosmWasmSigningClient, zr as useCosmWasmTmSigningClient, Zi as useDisconnect, Or as useExecuteContract, on as useGrazEvents, br as useInstantiateContract, er as useOfflineSigners, dr as useQueryClientValidators, xr as useQueryRaw, Mr as useQuerySmart, mr as useRecentChainIds, pr as useRecentChains, Er as useSendIbcTokens, Tr as useSendTokens, Re as useStargateClient, qr as useStargateSigningClient, Fr as useStargateTmSigningClient, fr as useSuggestChain, gr as useSuggestChainAndConnect, pe 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.1.1",
4
+ "version": "0.1.2",
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",