chore: final solana purge
This commit is contained in:
@@ -1,60 +1 @@
|
||||
'use client';
|
||||
|
||||
import { ReactNode, useEffect, useMemo, useState } from 'react';
|
||||
import { ThemeProvider } from 'next-themes';
|
||||
import { useStore } from '@/lib/store';
|
||||
import { authApi } from '@/lib/api';
|
||||
import { ConnectionProvider, WalletProvider } from '@solana/wallet-adapter-react';
|
||||
import { WalletAdapterNetwork } from '@solana/wallet-adapter-base';
|
||||
import { PhantomWalletAdapter, SolflareWalletAdapter } from '@solana/wallet-adapter-wallets';
|
||||
import { WalletModalProvider } from '@solana/wallet-adapter-react-ui';
|
||||
import { clusterApiUrl } from '@solana/web3.js';
|
||||
|
||||
export function Providers({ children }: { children: ReactNode }) {
|
||||
const [mounted, setMounted] = useState(false);
|
||||
const { setUser, setToken } = useStore();
|
||||
|
||||
const network = WalletAdapterNetwork.Devnet;
|
||||
const endpoint = useMemo(() => clusterApiUrl(network), [network]);
|
||||
const wallets = useMemo(
|
||||
() => [
|
||||
new PhantomWalletAdapter(),
|
||||
new SolflareWalletAdapter(),
|
||||
],
|
||||
[]
|
||||
);
|
||||
|
||||
useEffect(() => {
|
||||
setMounted(true);
|
||||
|
||||
// Check for stored token on mount
|
||||
const token = localStorage.getItem('token');
|
||||
if (token) {
|
||||
// Verify token and get user data
|
||||
authApi.verify()
|
||||
.then((res) => {
|
||||
setUser(res.data.user);
|
||||
setToken(token);
|
||||
})
|
||||
.catch(() => {
|
||||
localStorage.removeItem('token');
|
||||
});
|
||||
}
|
||||
}, [setUser, setToken]);
|
||||
|
||||
if (!mounted) {
|
||||
return <>{children}</>;
|
||||
}
|
||||
|
||||
return (
|
||||
<ThemeProvider attribute="class" defaultTheme="dark" enableSystem>
|
||||
<ConnectionProvider endpoint={endpoint}>
|
||||
<WalletProvider wallets={wallets} autoConnect>
|
||||
<WalletModalProvider>
|
||||
{children}
|
||||
</WalletModalProvider>
|
||||
</WalletProvider>
|
||||
</ConnectionProvider>
|
||||
</ThemeProvider>
|
||||
);
|
||||
}
|
||||
export function Providers({ children }: { children: React.ReactNode }) { return <>{children}</>; }
|
||||
|
||||
Reference in New Issue
Block a user