'use client'; import { WalletAdapterNetwork } from '@solana/wallet-adapter-base'; import { ConnectionProvider, WalletProvider as SolanaWalletProvider } from '@solana/wallet-adapter-react'; import { WalletModalProvider } from '@solana/wallet-adapter-react-ui'; import { PhantomWalletAdapter, SolflareWalletAdapter, AlphaWalletAdapter, BitKeepWalletAdapter, BitpieWalletAdapter, CloverWalletAdapter } from '@solana/wallet-adapter-wallets'; import { clusterApiUrl } from '@solana/web3.js'; import { useMemo } from 'react'; // Import wallet adapter CSS import '@solana/wallet-adapter-react-ui/styles.css'; interface WalletProviderProps { children: React.ReactNode; } export default function WalletProvider({ children }: WalletProviderProps) { // The network can be set to 'devnet', 'testnet', or 'mainnet-beta'. const network = WalletAdapterNetwork.Devnet; // You can also provide a custom RPC endpoint. const endpoint = useMemo(() => clusterApiUrl(network), [network]); const wallets = useMemo( () => [ new PhantomWalletAdapter(), new SolflareWalletAdapter(), new AlphaWalletAdapter(), new BitKeepWalletAdapter(), new BitpieWalletAdapter(), new CloverWalletAdapter(), ], [] ); return ( { console.error('Wallet adapter error:', error); // Handle mobile-specific wallet errors if (error.message.includes('signature verification failed')) { console.warn('Mobile wallet signature verification issue detected'); } }} > {children} ); }