Skip to content

Commit bce9ca3

Browse files
committed
refactor: update responsive overlay and improve dashboard layout
- Removed ResponsiveOverlay component. - Added ResetMiniNavOnResize component to handle mini nav visibility. - Updated dashboard layout to conditionally render navigation components. - Adjusted main content padding and enhanced layout styles.
1 parent 6748b7d commit bce9ca3

File tree

8 files changed

+60
-61
lines changed

8 files changed

+60
-61
lines changed

src/App.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ export default function App() {
7777
<SettingsDrawer />
7878
<ProgressBar />
7979
<Router />
80-
{/*<ResponsiveOverlay />*/}
80+
<ResponsiveOverlay />
8181
</SnackbarProvider>
8282
</MotionLazy>
8383
</ThemeProvider>
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
import { useState, useEffect } from 'react';
2+
import {useSettingsContext} from "@src/components/settings";
3+
4+
const ResetMiniNavOnResize = () => {
5+
const [isSmallScreen, setIsSmallScreen] = useState(false);
6+
const settings = useSettingsContext();
7+
8+
useEffect(() => {
9+
const handleResize = () => {
10+
setIsSmallScreen(window.innerWidth < 1200);
11+
};
12+
13+
window.addEventListener('resize', handleResize);
14+
handleResize();
15+
16+
return () => window.removeEventListener('resize', handleResize);
17+
}, []);
18+
19+
if(isSmallScreen && settings.themeLayout === 'mini') {
20+
settings.onUpdate('themeLayout', 'vertical');
21+
}
22+
23+
if (!isSmallScreen) {
24+
return null;
25+
}
26+
};
27+
28+
export default ResetMiniNavOnResize;

src/components/responsive-overlay/ResponsiveOverlay.tsx

Lines changed: 0 additions & 52 deletions
This file was deleted.
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
export { default as ResponsiveOverlay } from './ResponsiveOverlay.tsx';
1+
export { default as ResponsiveOverlay } from './ResetMiniNavOnResize.tsx';

src/layouts/dashboard/layout.tsx

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -54,16 +54,23 @@ export default function DashboardLayout({ children }: Props) {
5454
return (
5555
<>
5656
<Header onOpenNav={nav.onTrue} />
57-
5857
<Box
5958
sx={{
6059
minHeight: 1,
6160
display: 'flex',
6261
flexDirection: { xs: 'column', md: 'row' },
6362
}}
6463
>
65-
{renderNavVertical}
66-
64+
{
65+
lgUp
66+
? renderNavVertical
67+
: (
68+
<NavVertical
69+
openNav={nav.value}
70+
onCloseNav={nav.onFalse}
71+
/>
72+
)
73+
}
6774
<Main>{children}</Main>
6875
</Box>
6976
</>

src/layouts/dashboard/main.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ export default function Main({ children, sx, ...other }: BoxProps) {
1818
<Box
1919
component="main"
2020
sx={{
21-
padding: 5,
21+
padding: '0px 5px',
2222
transition: 'all 0.7s ease',
2323
flexGrow: 1,
2424
minHeight: 1,

src/layouts/dashboard/nav-mini.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ export default function NavMini() {
2121
sx={{
2222
flexShrink: { lg: 0 },
2323
width: { lg: NAV.W_MINI },
24-
backgroundColor: '#1E1F22'
24+
backgroundColor: '#1E1F22',
2525
}}
2626
>
2727
<Stack

src/layouts/dashboard/nav-vertical.tsx

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ import { useNavData } from './config-navigation';
2323
import { AccountPopover, NotificationsPopover, Searchbar } from '../_common';
2424
import { NavToggleButton } from '../_common';
2525
import {NAV} from "@src/layouts/config-layout.ts";
26+
import NavMini from "@src/layouts/dashboard/nav-mini.tsx";
2627
// ----------------------------------------------------------------------
2728

2829
type Props = {
@@ -150,11 +151,26 @@ export default function NavVertical({ openNav, onCloseNav}: Props) {
150151
onClose={onCloseNav}
151152
PaperProps={{
152153
sx: {
153-
width: NAV.W_VERTICAL,
154+
width: NAV.W_VERTICAL + NAV.W_MINI,
154155
},
155156
}}
156157
>
157-
{renderContent}
158+
<Stack direction={'row'} sx={{
159+
160+
}}>
161+
<Box sx={{
162+
width: NAV.W_MINI,
163+
}}>
164+
<NavMini />
165+
</Box>
166+
<Box sx={{
167+
width: NAV.W_VERTICAL,
168+
}}>
169+
{renderContent}
170+
</Box>
171+
172+
</Stack>
173+
158174
</Drawer>
159175
)}
160176
<LoginModal open={loginModalOpen} onClose={handleCloseModal} />

0 commit comments

Comments
 (0)