import { BrowserRouter, Routes, Route, Navigate } from 'react-router-dom'; import { AuthProvider, useAuth } from './contexts/AuthContext'; import LoginPage from './pages/LoginPage'; import RegisterPage from './pages/RegisterPage'; import EventsPage from './pages/EventsPage'; import EventChatPage from './pages/EventChatPage'; import MatchChatPage from './pages/MatchChatPage'; import RatePartnerPage from './pages/RatePartnerPage'; import HistoryPage from './pages/HistoryPage'; // Protected Route Component const ProtectedRoute = ({ children }) => { const { isAuthenticated, loading } = useAuth(); if (loading) { return (
Loading...
); } if (!isAuthenticated) { return ; } return children; }; // Public Route Component (redirect to events if already logged in) const PublicRoute = ({ children }) => { const { isAuthenticated, loading } = useAuth(); if (loading) { return (
Loading...
); } if (isAuthenticated) { return ; } return children; }; function App() { return ( {/* Public Routes */} } /> } /> {/* Protected Routes */} } /> } /> } /> } /> } /> {/* Default redirect */} } /> } /> ); } export default App;