import { Routes, Route, Navigate } from 'react-router-dom'; import { ThemeProvider } from '@mui/material/styles'; import CssBaseline from '@mui/material/CssBaseline'; import CircularProgress from '@mui/material/CircularProgress'; import Box from '@mui/material/Box'; import theme from './theme'; import { useAuth } from './hooks/useAuth'; import { AppShell } from './components/layout/AppShell'; import { LoginPage } from './pages/LoginPage'; import { RegisterPage } from './pages/RegisterPage'; import { HomePage } from './pages/HomePage'; import { LessonPage } from './pages/LessonPage'; import { ReviewPage } from './pages/ReviewPage'; import { SettingsPage } from './pages/SettingsPage'; import type { ReactNode } from 'react'; function ProtectedRoute({ children }: { children: ReactNode }) { const { user, loading } = useAuth(); if (loading) { return ( ); } if (!user) { return ; } return <>{children}; } function RootRedirect() { const { user, loading } = useAuth(); if (loading) { return ( ); } return ; } function App() { return ( } /> } /> } /> } > } /> } /> } /> } /> ); } export default App;