diff --git a/packages/nextjs/services/web3/wagmiConfig.tsx b/packages/nextjs/services/web3/wagmiConfig.tsx index 37253daf4..de3770b23 100644 --- a/packages/nextjs/services/web3/wagmiConfig.tsx +++ b/packages/nextjs/services/web3/wagmiConfig.tsx @@ -1,7 +1,8 @@ import { wagmiConnectors } from "./wagmiConnectors"; -import { Chain, createClient, fallback, http } from "viem"; +import { Chain, HttpTransport, createClient, fallback, http } from "viem"; import { hardhat, mainnet } from "viem/chains"; -import { createConfig } from "wagmi"; +import { Transport, createConfig, unstable_connector } from "wagmi"; +import { injected } from "wagmi/connectors"; import scaffoldConfig, { DEFAULT_ALCHEMY_API_KEY } from "~~/scaffold.config"; import { getAlchemyHttpUrl } from "~~/utils/scaffold-eth"; @@ -17,13 +18,16 @@ export const wagmiConfig = createConfig({ connectors: wagmiConnectors, ssr: true, client({ chain }) { - let rpcFallbacks = [http()]; + let rpcFallbacks: (HttpTransport | Transport<"connector">)[] = [http()]; const alchemyHttpUrl = getAlchemyHttpUrl(chain.id); if (alchemyHttpUrl) { const isUsingDefaultKey = scaffoldConfig.alchemyApiKey === DEFAULT_ALCHEMY_API_KEY; // If using default Scaffold-ETH 2 API key, we prioritize the default RPC - rpcFallbacks = isUsingDefaultKey ? [http(), http(alchemyHttpUrl)] : [http(alchemyHttpUrl), http()]; + // rpcFallbacks = isUsingDefaultKey ? [http(), http(alchemyHttpUrl)] : [http(alchemyHttpUrl), http()]; + rpcFallbacks = isUsingDefaultKey + ? [http(), unstable_connector(injected), http(alchemyHttpUrl)] + : [http(alchemyHttpUrl), http(), unstable_connector(injected)]; } return createClient({