mirror of
https://github.com/AmanIbrash-brsh/finance-website.git
synced 2026-11-09 09:35:10 +00:00
30 lines
1.1 KiB
React
30 lines
1.1 KiB
React
import React from 'react';
|
|
import { BrowserRouter as Router, Routes, Route, Navigate } from 'react-router-dom';
|
|
import Layout from './components/Layout';
|
|
import Auth from './pages/Auth';
|
|
import Dashboard from './pages/Dashboard';
|
|
import Transactions from './pages/Transactions';
|
|
import Debts from './pages/Debts';
|
|
import Incomes from './pages/Incomes';
|
|
import Settings from './pages/Settings';
|
|
|
|
function PrivateRoute({ children }) {
|
|
const token = localStorage.getItem('token');
|
|
return token ? <Layout>{children}</Layout> : <Navigate to="/auth" />;
|
|
}
|
|
|
|
export default function App() {
|
|
return (
|
|
<Router>
|
|
<Routes>
|
|
<Route path="/auth" element={<Auth />} />
|
|
<Route path="/" element={<PrivateRoute><Dashboard /></PrivateRoute>} />
|
|
<Route path="/transactions" element={<PrivateRoute><Transactions /></PrivateRoute>} />
|
|
<Route path="/debts" element={<PrivateRoute><Debts /></PrivateRoute>} />
|
|
<Route path="/incomes" element={<PrivateRoute><Incomes /></PrivateRoute>} />
|
|
<Route path="/settings" element={<PrivateRoute><Settings /></PrivateRoute>} />
|
|
</Routes>
|
|
</Router>
|
|
);
|
|
}
|