diff options
Diffstat (limited to 'panel/src/App.jsx')
-rw-r--r-- | panel/src/App.jsx | 33 |
1 files changed, 21 insertions, 12 deletions
diff --git a/panel/src/App.jsx b/panel/src/App.jsx index 6d88aaf..6a09905 100644 --- a/panel/src/App.jsx +++ b/panel/src/App.jsx @@ -7,24 +7,33 @@ import Dashboard from './pages/Dashboard'; import ManageAds from './pages/ManageAds'; import Roles from './pages/Roles'; import PrivateRoute from './components/PrivateRoute'; -import { AuthProvider } from './contexts/AuthContext'; +import { AuthProvider, useAuth } from './contexts/AuthContext'; import 'bootstrap/dist/css/bootstrap.min.css'; import './tailwind.css'; +const AppRoutes = () => { + const { currentUser } = useAuth(); + + return ( + <Routes> + <Route path="/" element={currentUser ? <Navigate to="/dashboard" /> : <Navigate to="/login" />} /> + <Route path="/login" element={<LoginPage />} /> + <Route path="/register" element={<RegisterPage />} /> + <Route path="/reset" element={<ResetPage />} /> + <Route path="/" element={<PrivateRoute />}> + <Route path="dashboard" element={<Dashboard />} /> + <Route path="manage-ads" element={<ManageAds />} /> + <Route path="roles" element={<Roles />} /> + <Route path="logout" element={<Navigate to="/login" />} /> + </Route> + </Routes> + ); +}; + function App() { return ( <AuthProvider> - <Routes> - <Route path="/" element={<Navigate to="/login" />} /> - <Route path="/login" element={<LoginPage />} /> - <Route path="/register" element={<RegisterPage />} /> - <Route path="/reset" element={<ResetPage />} /> - <Route path="/" element={<PrivateRoute />}> - <Route path="dashboard" element={<Dashboard />} /> - <Route path="manage-ads" element={<ManageAds />} /> - <Route path="roles" element={<Roles />} /> - </Route> - </Routes> + <AppRoutes /> </AuthProvider> ); } |