import { Redirect, Stack } from 'expo-router';

import { useAuth } from '../../lib/authContext';

// Guard for the authenticated route group. While the AuthProvider is
// hydrating from AsyncStorage we render nothing (a brief blank frame)
// rather than flashing the login screen and then snapping into the chat
// list — that's a worse UX than a 200ms blank.
export default function AppLayout() {
  const { session, loading } = useAuth();
  if (loading) return null;
  if (!session) return <Redirect href="/" />;
  return <Stack screenOptions={{ headerShown: true }} />;
}
