import React from 'react';
import { BrowserRouter as Router, Routes, Route, Navigate } from 'react-router-dom';
import { ThemeProvider } from './contexts/ThemeContext';
import { AuthProvider, useAuth } from './contexts/AuthContext';
import ProtectedRoute from './components/ProtectedRoute';
// Pages
import LandingPage from './pages/LandingPage';
import UserDashboard from './pages/UserDashboard';
import KonselorDashboard from './pages/KonselorDashboard';
import OperatorDashboard from './pages/OperatorDashboard';
function App() {
return (
{/* Public Routes */}
} />
} />
} />
} />
} />
{/* Protected Dashboard Routes */}
}
/>
}
/>
}
/>
{/* Redirect */}
} />
{/* 404 */}
} />
);
}
// Redirect component for role-based navigation
const RedirectDashboard = () => {
const { user, isAuthenticated } = useAuth();
if (!isAuthenticated || !user) {
return ;
}
switch (user.role) {
case 'user':
return ;
case 'konselor':
return ;
case 'operator':
return ;
default:
return ;
}
};
export default App;