import { apiClient } from '@/lib/api-client'; import { useAuth } from '@/lib/auth'; import { acceptStoredPendingInvite } from '@/lib/invitations'; import { createFileRoute, useNavigate } from '@tanstack/react-router'; import { useEffect } from 'react'; function AuthCallbackPage() { const navigate = useNavigate(); const { isAuthenticated } = useAuth(); useEffect(() => { async function handleCallback() { if (!isAuthenticated) { navigate({ to: '/login' }); return; } try { await acceptStoredPendingInvite(apiClient.complexes.acceptPendingInvitations); const complexes = await apiClient.complexes.listMine(); if (complexes.length === 1) { await apiClient.complexes.select({ complexId: complexes[0].id }); navigate({ to: '/' }); } else if (complexes.length > 1) { const current = await apiClient.complexes.getCurrent(); if (current) { navigate({ to: '/' }); } else { navigate({ to: '/select-complex' }); } } else { navigate({ to: '/onboard/create-complex' }); } } catch { navigate({ to: '/onboard' }); } } handleCallback(); }, [isAuthenticated, navigate]); return (

Completando sesión...

); } export const Route = createFileRoute('/auth-callback')({ component: AuthCallbackPage, });