diff --git a/.changeset/forty-bugs-run.md b/.changeset/forty-bugs-run.md new file mode 100644 index 00000000..7ca30abf --- /dev/null +++ b/.changeset/forty-bugs-run.md @@ -0,0 +1,5 @@ +--- +"@fuels/react": patch +--- + +fix: react to change in NETWORKS config passed to FuelProvider diff --git a/packages/react/src/hooks/useIsSupportedNetwork.tsx b/packages/react/src/hooks/useIsSupportedNetwork.tsx index 82622066..be3f85a1 100644 --- a/packages/react/src/hooks/useIsSupportedNetwork.tsx +++ b/packages/react/src/hooks/useIsSupportedNetwork.tsx @@ -1,4 +1,5 @@ import { Provider } from 'fuels'; +import { useMemo } from 'react'; import { type UseNamedQueryParams, useNamedQuery } from '../core'; import { useFuel } from '../providers'; import { QUERY_KEYS } from '../utils'; @@ -31,9 +32,11 @@ export function useIsSupportedNetwork(params?: UseIsSupportedNetwork) { const { network } = useNetwork(); const { isConnected } = useIsConnected(); const { currentConnector } = useCurrentConnector(); + return useNamedQuery('isSupportedNetwork', { queryKey: QUERY_KEYS.isSupportedNetwork( currentConnector?.name, + networks, network, isConnected, ), diff --git a/packages/react/src/utils/queryKeys.ts b/packages/react/src/utils/queryKeys.ts index 1924a991..8b86d1cb 100644 --- a/packages/react/src/utils/queryKeys.ts +++ b/packages/react/src/utils/queryKeys.ts @@ -1,5 +1,6 @@ import type { QueryKey } from '@tanstack/react-query'; import type { BytesLike, Network, Provider } from 'fuels'; +import type { NetworkConfig } from '../types'; export const QUERY_KEYS = { base: ['fuel'] as QueryKey, @@ -86,11 +87,13 @@ export const QUERY_KEYS = { }, isSupportedNetwork: ( connectorName: string | null | undefined, + networks: Array, network: Partial | null, isConnected: boolean, ): QueryKey => { const queryKey = QUERY_KEYS.base.concat('isSupportedNetwork'); if (connectorName) queryKey.push(connectorName); + if (networks) queryKey.push(networks); if (network) queryKey.push(network); if (isConnected) queryKey.push(isConnected); return queryKey;