'use client' import * as React from 'react' import { RainbowKitProvider, connectorsForWallets, getDefaultWallets } from '@rainbow-me/rainbowkit' import { argentWallet, ledgerWallet, trustWallet } from '@rainbow-me/rainbowkit/wallets' import { WagmiConfig, configureChains, createConfig } from 'wagmi' import { mainnet } from 'wagmi/chains' import { publicProvider } from 'wagmi/providers/public' const { chains, publicClient, webSocketPublicClient } = configureChains([mainnet], [publicProvider()]) const projectId = '9ab74ccaf6e1f4491e65c329a26070d9' const { wallets } = getDefaultWallets({ appName: 'RainbowKit', projectId, chains, }) const demoAppInfo = { appName: 'Rainbowkit', } const connectors = connectorsForWallets([ ...wallets, { groupName: 'Other', wallets: [argentWallet({ projectId, chains }), trustWallet({ projectId, chains }), ledgerWallet({ projectId, chains })], }, ]) const wagmiConfig = createConfig({ autoConnect: true, connectors, publicClient, webSocketPublicClient, }) export function Providers({ children }: { children: React.ReactNode }) { const [mounted, setMounted] = React.useState(false) React.useEffect(() => setMounted(true), []) return ( {mounted && children} ) }