- Create app/ layer: App.tsx, providers, routing, layouts - Create entities/session/ for auth domain - Extract SessionProvider + AppProviders composition - Add ProtectedRoute, AppRoutes to app/routing/ - Add AppLayout to app/layouts/ - Convert legacy files to re-export shims - Update Login/Register/Profile pages to useSession
22 lines
549 B
TypeScript
22 lines
549 B
TypeScript
import { type ReactNode } from 'react';
|
|
import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
|
|
import { SessionProvider } from './SessionProvider';
|
|
|
|
const queryClient = new QueryClient({
|
|
defaultOptions: {
|
|
queries: {
|
|
retry: 2,
|
|
staleTime: 900_000,
|
|
refetchOnWindowFocus: false,
|
|
},
|
|
},
|
|
});
|
|
|
|
export function AppProviders({ children }: { children: ReactNode }) {
|
|
return (
|
|
<QueryClientProvider client={queryClient}>
|
|
<SessionProvider>{children}</SessionProvider>
|
|
</QueryClientProvider>
|
|
);
|
|
}
|