@cyberk/hyperion-sdk
Version:
Hyperion SDK from Cyberk
34 lines • 1.29 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.useCw20TokenBalance = void 0;
const react_query_1 = require("@tanstack/react-query");
const RPCs_1 = require("../constants/RPCs");
const useCosmWasmClient_1 = require("./useCosmWasmClient");
const getCw20TokenBalance_1 = require("../query/getCw20TokenBalance");
const useCw20TokenBalance = ({ tokenAddress, address, chainId, options: observerOptions, }) => {
const rpc = RPCs_1.RPCs[chainId];
if (!rpc) {
throw new Error(`RPC not found for chainId: ${chainId}`);
}
const { data: cosmwasmClient } = (0, useCosmWasmClient_1.useCosmWasmClient)({
rpc,
options: {
enabled: !!rpc,
},
});
const enabled = !!cosmwasmClient && !!tokenAddress && !!address;
const { queryKey, ...options } = (0, getCw20TokenBalance_1.getCw20TokenBalanceQueryOptions)({
client: cosmwasmClient,
tokenAddress,
address,
});
return (0, react_query_1.useQuery)({
...observerOptions,
...options,
// @ts-expect-error
queryKey,
enabled: Boolean(enabled && (observerOptions?.enabled ?? true)),
});
};
exports.useCw20TokenBalance = useCw20TokenBalance;
//# sourceMappingURL=useCw20TokenBalance.js.map