import { apiClient, configureApiClient } from '@/lib/api-client'; import { AuthProvider, useAuth } from '@/lib/auth'; import { queryClient } from '@/lib/query-client'; import { ThemeProvider } from '@/lib/theme'; import { QueryClientProvider } from '@tanstack/react-query'; import { ReactQueryDevtools } from '@tanstack/react-query-devtools'; import { RouterProvider } from '@tanstack/react-router'; import { TanStackRouterDevtools } from '@tanstack/router-devtools'; import { StrictMode, useEffect } from 'react'; import { createRoot } from 'react-dom/client'; import { router } from './router'; import './index.css'; function AppRouter() { const auth = useAuth(); useEffect(() => { router.invalidate(); }, [auth.isAuthenticated, auth.loading, auth.user]); useEffect(() => { configureApiClient({ onForbidden: async () => { if (!auth.isAuthenticated) { return; } await auth.signOut(); await router.navigate({ to: '/login' }); }, onError: (error) => { console.error('[API]', error); }, }); }, [auth]); if (auth.loading) { return (

Validando sesión...

); } return ( <> {import.meta.env.DEV && } ); } createRoot(document.getElementById('root')!).render( {import.meta.env.DEV && } );