Repository Public
1'use client';2import { useEffect } from 'react';3import { useRouter } from 'next/navigation';4import { useAuthStatus } from '@/lib/queries';5import { Spinner } from '@/components/ui/misc';6import { Button } from '@/components/ui/button';78/** `/` only redirects (client-side): setup → login → home. */9export default function RootPage() {10 const auth = useAuthStatus();11 const router = useRouter();12 useEffect(() => {13 if (!auth.data) return;14 router.replace(auth.data.setupRequired ? '/setup/' : auth.data.authenticated ? '/home/' : '/login/');15 }, [auth.data, router]);16 return (17 <div className="app-viewport flex flex-col items-center justify-center gap-3 text-center">18 {auth.isError ? (19 <>20 <p className="text-sm font-medium">The server is not reachable</p>21 <p className="text-xs text-text-2">Missions keep running on the server.</p>22 <Button onClick={() => auth.refetch()}>Retry</Button>23 </>24 ) : (25 <Spinner />26 )}27 </div>28 );29}30