import { Navigate, Route, Routes, useLocation, useNavigate } from 'react-router-dom' import clsx from 'clsx' import LandingPage from '../components/LandingPage' import Login from '../components/Login' import DashboardShell from '../layout/DashboardShell' import { useI18n } from '../i18n' import { useAdminAuth } from './useAdminAuth' import { useAdminConfig } from './useAdminConfig' export default function AppRoutes() { const { t } = useI18n() const navigate = useNavigate() const location = useLocation() const isProduction = import.meta.env.MODE === 'production' const { token, authChecking, message, isAdminRoute, isVercel, showMessage, handleLogin, handleLogout, } = useAdminAuth({ isProduction, location, t }) const { config, fetchConfig, } = useAdminConfig({ token, showMessage, t }) if (isAdminRoute && authChecking) { return (

{t('auth.checking')}

) } return ( {!isProduction && ( navigate('/admin')} />} /> )} ) : (
{message && (
{message.text}
)}
) } /> } />
) }