import React from 'react'; import { BrowserRouter as Router, Routes, Route, Navigate } from 'react-router-dom'; import { useAuthStore } from './store/authStore'; import Sidebar from './components/Sidebar'; import Navbar from './components/Navbar'; import Login from './pages/Login'; import Dashboard from './pages/Dashboard'; import Transactions from './pages/Transactions'; import Settings from './pages/Settings'; import ForgotPassword from './pages/ForgotPassword'; import Roles from './pages/Roles'; // Protected Route Component const ProtectedRoute = ({ children }) => { const isLoggedIn = useAuthStore((s) => s.isLoggedIn); const loading = useAuthStore((s) => s.loading); if (loading) { return (
); } return isLoggedIn ? children : ; }; // Main Layout Component const Layout = ({ children }) => { const [sidebarOpen, setSidebarOpen] = React.useState(false); const toggleSidebar = () => { setSidebarOpen(!sidebarOpen); }; return (
{/* Sidebar */} {/* Main Content Area */}
{/* Navbar */}
{/* Page Content */}
{children}
); }; // App Routes Component const AppRoutes = () => { return ( } /> } /> } /> } /> } /> } /> } /> ); }; // Main App Component const App = () => { return (
); }; export default App;