From 2116e134a9061dd4133c525ca81a2f4aaf425724 Mon Sep 17 00:00:00 2001 From: Rodolfo Ruiz Date: Fri, 29 Aug 2025 21:59:16 -0600 Subject: [PATCH] chore: Make the main container dynamic based on the with of the menudrawer --- src/App.jsx | 93 +++++++++++++++++----------- src/components/AppHeader.jsx | 69 +++++++-------------- src/components/MenuDrawerPrivate.jsx | 41 +++++++----- src/private/LoginPage.jsx | 2 +- 4 files changed, 104 insertions(+), 101 deletions(-) diff --git a/src/App.jsx b/src/App.jsx index a3136bc..7e061df 100644 --- a/src/App.jsx +++ b/src/App.jsx @@ -1,65 +1,84 @@ -import { useState } from 'react' -import './App.css' +import { useState } from 'react'; +import { Box, useMediaQuery } from '@mui/material'; +import { useTheme } from '@mui/material/styles'; import AppHeader from './components/AppHeader'; +import MenuDrawerPrivate, { OPEN_WIDTH, MINI_WIDTH } from './components/MenuDrawerPrivate'; import Footer from './components/Footer'; -import Box from '@mui/material/Box'; - -import Clients from './private/clients/Clients'; import Dashboard from './private/dashboard/Dashboard'; import UserManagement from './private/users/UserManagement'; - import LoginPage from './private/LoginPage'; import { BrowserRouter, Routes, Route, Navigate } from 'react-router-dom'; + import { useAuth } from './context/AuthContext'; +const DRAWER_EXPANDED = OPEN_WIDTH; +const DRAWER_COLLAPSED = MINI_WIDTH; +const APPBAR_HEIGHT = 64; + function PrivateRoute({ children }) { const { user } = useAuth(); return user ? children : ; } -function App() { +export default function App() { + const theme = useTheme(); + const isMobile = useMediaQuery('(max-width:900px)'); const [zone, setZone] = useState('public'); // public | restricted | private + + const [drawerExpanded, setDrawerExpanded] = useState(true); const [currentView, setCurrentView] = useState('Dashboard'); + const mainLeft = isMobile ? 0 : (drawerExpanded ? DRAWER_EXPANDED : DRAWER_COLLAPSED); + return ( <> + + + { + setCurrentView(value === '/users/UserManagement' ? 'UserManagement' : value); + }} + onExpandedChange={(expanded) => setDrawerExpanded(expanded)} + /> + + + } /> - setCurrentView(view)} /> - + + {zone === 'private' && } + {zone === 'restricted' && } - - - } /> + {zone === 'public' && currentView === 'Dashboard' && } - - {zone === 'private' && } - {zone === 'restricted' && } - - {zone === 'public' && currentView === 'Dashboard' && } - - {zone === 'public' && currentView === 'UserManagement' && } - - } - /> - - - - -