2023-09-25 13:43:15 +00:00
|
|
|
import Header from "@ui_kit/Header/Header";
|
|
|
|
import Sidebar from "@ui_kit/Sidebar";
|
|
|
|
import Box from "@mui/material/Box";
|
2023-10-18 12:46:59 +00:00
|
|
|
import { useTheme, useMediaQuery } from "@mui/material";
|
2023-05-10 17:35:30 +00:00
|
|
|
import HeaderFull from "@ui_kit/Header/HeaderFull";
|
2023-03-01 22:59:51 +00:00
|
|
|
|
2023-09-25 13:43:15 +00:00
|
|
|
interface Props {
|
|
|
|
sidebar: boolean;
|
|
|
|
header?: boolean;
|
|
|
|
page: JSX.Element;
|
2023-05-10 17:35:30 +00:00
|
|
|
}
|
2023-03-01 22:59:51 +00:00
|
|
|
|
2023-09-25 13:43:15 +00:00
|
|
|
export default function Main({ sidebar, header, page }: Props) {
|
|
|
|
const theme = useTheme();
|
2023-10-18 12:46:59 +00:00
|
|
|
const isMobile = useMediaQuery(theme.breakpoints.down(600));
|
|
|
|
|
2023-09-25 13:43:15 +00:00
|
|
|
return (
|
|
|
|
<>
|
|
|
|
{header ? <Header /> : <HeaderFull />}
|
|
|
|
<Box
|
|
|
|
sx={{
|
|
|
|
display: "flex",
|
|
|
|
}}
|
|
|
|
>
|
|
|
|
{sidebar ? <Sidebar /> : <></>}
|
|
|
|
<Box
|
|
|
|
sx={{
|
|
|
|
background: theme.palette.background.default,
|
|
|
|
width: "100%",
|
2023-10-18 12:46:59 +00:00
|
|
|
padding: isMobile ? "15px" : "25px",
|
2023-09-25 13:43:15 +00:00
|
|
|
height: "calc(100vh - 80px)",
|
|
|
|
overflow: "auto",
|
|
|
|
boxSizing: "border-box",
|
|
|
|
}}
|
|
|
|
>
|
|
|
|
{page}
|
|
|
|
</Box>
|
|
|
|
</Box>
|
|
|
|
</>
|
|
|
|
);
|
|
|
|
}
|