feat: decouple menu components

This commit is contained in:
amhsirak
2025-11-05 20:30:10 +05:30
parent be90cc75d5
commit 3526a1a49a

View File

@@ -13,6 +13,7 @@ import UserRoute from '../routes/userRoute';
import { Routes, Route, useNavigate, Navigate } from 'react-router-dom'; import { Routes, Route, useNavigate, Navigate } from 'react-router-dom';
import { NotFoundPage } from '../components/dashboard/NotFound'; import { NotFoundPage } from '../components/dashboard/NotFound';
import RobotCreate from '../components/robot/pages/RobotCreate'; import RobotCreate from '../components/robot/pages/RobotCreate';
import { Box } from '@mui/material';
export const PageWrapper = () => { export const PageWrapper = () => {
const [open, setOpen] = useState(false); const [open, setOpen] = useState(false);
@@ -90,34 +91,48 @@ export const PageWrapper = () => {
<AuthProvider> <AuthProvider>
<SocketProvider> <SocketProvider>
<React.Fragment> <React.Fragment>
{/* {!browserId && location.pathname !== '/recording' && <NavBar recordingName={recordingName} isRecording={!!browserId} />} */} {/* Sticky NavBar - only show on non-recording pages */}
{location.pathname !== '/recording' && <NavBar recordingName={recordingName} isRecording={false} />} {location.pathname !== '/recording' && (
<Routes> <Box sx={{
<Route element={<UserRoute />}> position: 'sticky',
<Route path="/" element={<Navigate to="/robots" replace />} /> top: 0,
<Route path="/robots/create" element={<RobotCreate />} /> zIndex: 1100,
<Route path="/robots/*" element={<MainPage handleEditRecording={handleEditRecording} initialContent="robots" />} /> backgroundColor: 'background.paper'
<Route path="/runs/*" element={<MainPage handleEditRecording={handleEditRecording} initialContent="runs" />} /> }}>
<Route path="/proxy" element={<MainPage handleEditRecording={handleEditRecording} initialContent="proxy" />} /> <NavBar recordingName={recordingName} isRecording={false} />
<Route path="/apikey" element={<MainPage handleEditRecording={handleEditRecording} initialContent="apikey" />} /> </Box>
</Route> )}
<Route element={<UserRoute />}> <Box sx={{
<Route path="/recording" element={ display: 'flex',
<BrowserDimensionsProvider> minHeight: location.pathname !== '/recording' ? 'calc(100vh - 64px)' : '100vh'
<RecordingPage recordingName={recordingName} /> }}>
</BrowserDimensionsProvider> <Routes>
} /> <Route element={<UserRoute />}>
</Route> <Route path="/" element={<Navigate to="/robots" replace />} />
<Route <Route path="/robots/create" element={<RobotCreate />} />
path="/login" <Route path="/robots/*" element={<MainPage handleEditRecording={handleEditRecording} initialContent="robots" />} />
element={<Login />} <Route path="/runs/*" element={<MainPage handleEditRecording={handleEditRecording} initialContent="runs" />} />
/> <Route path="/proxy" element={<MainPage handleEditRecording={handleEditRecording} initialContent="proxy" />} />
<Route <Route path="/apikey" element={<MainPage handleEditRecording={handleEditRecording} initialContent="apikey" />} />
path="/register" </Route>
element={<Register />} <Route element={<UserRoute />}>
/> <Route path="/recording" element={
<Route path="*" element={<NotFoundPage />} /> <BrowserDimensionsProvider>
</Routes> <RecordingPage recordingName={recordingName} />
</BrowserDimensionsProvider>
} />
</Route>
<Route
path="/login"
element={<Login />}
/>
<Route
path="/register"
element={<Register />}
/>
<Route path="*" element={<NotFoundPage />} />
</Routes>
</Box>
</React.Fragment> </React.Fragment>
</SocketProvider> </SocketProvider>
</AuthProvider> </AuthProvider>