mirror of
https://github.com/neynarxyz/create-farcaster-mini-app.git
synced 2025-11-16 16:18:55 -05:00
42 lines
1.2 KiB
TypeScript
42 lines
1.2 KiB
TypeScript
'use client';
|
|
|
|
import dynamic from 'next/dynamic';
|
|
import type { Session } from 'next-auth';
|
|
import { SessionProvider } from 'next-auth/react';
|
|
import { MiniAppProvider } from '@neynar/react';
|
|
import { SafeFarcasterSolanaProvider } from '~/components/providers/SafeFarcasterSolanaProvider';
|
|
import { ANALYTICS_ENABLED } from '~/lib/constants';
|
|
import { AuthKitProvider } from '@farcaster/auth-kit';
|
|
|
|
const WagmiProvider = dynamic(
|
|
() => import('~/components/providers/WagmiProvider'),
|
|
{
|
|
ssr: false,
|
|
}
|
|
);
|
|
|
|
export function Providers({
|
|
session,
|
|
children,
|
|
}: {
|
|
session: Session | null;
|
|
children: React.ReactNode;
|
|
}) {
|
|
const solanaEndpoint =
|
|
process.env.SOLANA_RPC_ENDPOINT || 'https://solana-rpc.publicnode.com';
|
|
return (
|
|
<SessionProvider session={session}>
|
|
<WagmiProvider>
|
|
<MiniAppProvider
|
|
analyticsEnabled={ANALYTICS_ENABLED}
|
|
backButtonEnabled={true}
|
|
>
|
|
<SafeFarcasterSolanaProvider endpoint={solanaEndpoint}>
|
|
<AuthKitProvider config={{}}>{children}</AuthKitProvider>
|
|
</SafeFarcasterSolanaProvider>
|
|
</MiniAppProvider>
|
|
</WagmiProvider>
|
|
</SessionProvider>
|
|
);
|
|
}
|