import { useNavigation, redirect, useNavigate } from 'react-router' import { fetchAuthSession } from 'aws-amplify/auth' import { Link } from 'react-router' import { Outlet } from 'react-router' import { useAuth } from '~/hooks/use-auth' export async function clientLoader() { const session = await fetchAuthSession() if (!session?.tokens?.idToken) { throw redirect('/auth') } } export default function Layout() { const navigation = useNavigation() const navigate = useNavigate() const { signOut } = useAuth() const isNavigating = Boolean(navigation.location) return ( <> {isNavigating ? <>Loading... : } ) }