Files
edr-platform/apps/edr-passenger-web/backoffice/src/app/providers.tsx
Nathnael 5aafa436c1 fixes
2026-07-02 09:38:14 +00:00

48 lines
1.1 KiB
TypeScript

"use client";
import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
import { useState, useEffect } from "react";
import { useTheme } from "@/lib/theme-store";
import { useAuthStore } from "@/lib/auth-store";
function ThemeProvider({ children }: { children: React.ReactNode }) {
const { isDark, setTheme } = useTheme();
useEffect(() => {
document.documentElement.classList.toggle("dark", isDark);
}, [isDark]);
return <>{children}</>;
}
function AuthProvider({ children }: { children: React.ReactNode }) {
const initialize = useAuthStore((state) => state.initialize);
useEffect(() => {
initialize();
}, [initialize]);
return <>{children}</>;
}
export default function Providers({ children }: { children: React.ReactNode }) {
const [queryClient] = useState(
() =>
new QueryClient({
defaultOptions: {
queries: {
staleTime: 60 * 1000,
},
},
}),
);
return (
<QueryClientProvider client={queryClient}>
<AuthProvider>
<ThemeProvider>{children}</ThemeProvider>
</AuthProvider>
</QueryClientProvider>
);
}