UNPKG

@reservoir0x/relay-kit-hooks

Version:

Relay is the Fastest and Cheapest Way to Bridge and Transact Across Chains.

27 lines 1.21 kB
import { configureViemChain, convertViemChainToRelayChain, MAINNET_RELAY_API, setParams } from '@reservoir0x/relay-sdk'; import fetcher from '../fetcher.js'; import { useQuery } from '@tanstack/react-query'; import { useMemo } from 'react'; import { mainnet } from 'viem/chains'; export const queryRelayChains = function (baseApiUrl = MAINNET_RELAY_API, options, headers) { const url = new URL(`${baseApiUrl}/chains`); setParams(url, options ?? {}); return fetcher(url.href, headers); }; export default function (baseApiUrl, options, queryOptions) { const response = useQuery({ queryKey: ['useRelayChains', baseApiUrl, options], queryFn: () => queryRelayChains(baseApiUrl, options), retry: false, ...queryOptions }); return useMemo(() => { const chains = response?.data?.chains?.map((chain) => configureViemChain(chain)); return { ...response, viemChains: chains?.map((chain) => chain.viemChain), chains: chains ? chains : [convertViemChainToRelayChain(mainnet)] }; }, [response.data, response.data?.chains, response.error, response.isLoading]); } //# sourceMappingURL=useRelayChains.js.map