import { useEffect } from "react"; import { useAuth } from "./contexts/AuthContext"; import { BrowserRouter, Routes, Route, Navigate } from "react-router-dom"; import Login from "./components/Login"; import Dashboard from "./components/Dashboard"; import AdminPage from "./components/AdminPage"; import ManagerPage from "./components/ManagerPage"; import HealthCheck from "./components/HealthCheck"; function App() { const { user, loading } = useAuth(); const ProtectedAdminRoute = ({ children }) => { return user && user.role === "admin" ? children : ; }; const ProtectedManagerRoute = ({ children }) => { return user && (user.role === "admin" || user.role === "manager") ? ( children ) : ( ); }; // Диагностические логи для отладки размера интерфейса useEffect(() => { console.log("App Debug - Container dimensions:", { windowWidth: window.innerWidth, windowHeight: window.innerHeight, rootElement: document.getElementById("root")?.getBoundingClientRect(), bodyElement: document.body.getBoundingClientRect(), }); const handleResize = () => { console.log("App Debug - Resize event:", { windowWidth: window.innerWidth, windowHeight: window.innerHeight, }); }; window.addEventListener("resize", handleResize); return () => window.removeEventListener("resize", handleResize); }, []); if (loading) { return (
); } return (
{user ? ( } /> } /> } /> ) : ( )}
); } export default App;