22 lines
640 B
TypeScript
22 lines
640 B
TypeScript
"use client";
|
|
|
|
import { SessionProvider } from "next-auth/react";
|
|
import { ThemeProvider } from "next-themes";
|
|
|
|
interface ProvidersProps {
|
|
children: React.ReactNode;
|
|
session?: any;
|
|
}
|
|
|
|
export default function Providers({ children, session }: ProvidersProps) {
|
|
// Ensure session is properly handled - if it's undefined, provide an empty object
|
|
const safeSession = session === undefined ? null : session;
|
|
|
|
return (
|
|
<ThemeProvider attribute="class" defaultTheme="system" enableSystem>
|
|
<SessionProvider session={safeSession} refetchInterval={5 * 60}>
|
|
{children}
|
|
</SessionProvider>
|
|
</ThemeProvider>
|
|
);
|
|
}
|