Files
leocrm/frontend/src/App.tsx
T

33 lines
741 B
TypeScript
Raw Normal View History

import React from 'react';
import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
import { AppRouter } from '@/routes';
import { setUnauthorizedHandler } from '@/api/client';
import { useAuthStore } from '@/store/authStore';
const queryClient = new QueryClient({
defaultOptions: {
queries: {
retry: 1,
staleTime: 5 * 60 * 1000,
refetchOnWindowFocus: false,
},
},
});
export default function App() {
const { logout } = useAuthStore();
React.useEffect(() => {
setUnauthorizedHandler(() => {
logout();
window.location.href = '/login';
});
}, [logout]);
return (
<QueryClientProvider client={queryClient}>
<AppRouter />
</QueryClientProvider>
);
}