import React, { useState } from 'react';
import {
AppBar,
Breadcrumbs,
Divider,
Drawer,
Hidden,
IconButton,
Toolbar,
Typography,
useMediaQuery,
useTheme,
} from '@mui/material';
import makeStyles from '@mui/styles/makeStyles';
import ArrowBackIcon from '@mui/icons-material/ArrowBack';
import MenuIcon from '@mui/icons-material/Menu';
import { useNavigate } from 'react-router-dom';
import { useTranslation } from './LocalizationProvider';
const useStyles = makeStyles((theme) => ({
desktopRoot: {
height: '100%',
display: 'flex',
},
mobileRoot: {
height: '100%',
display: 'flex',
flexDirection: 'column',
},
desktopDrawer: {
width: theme.dimensions.drawerWidthDesktop,
},
mobileDrawer: {
width: theme.dimensions.drawerWidthTablet,
},
desktopToolbar: theme.mixins.toolbar,
mobileToolbar: {
zIndex: 1,
},
content: {
flexGrow: 1,
alignItems: 'stretch',
display: 'flex',
flexDirection: 'column',
},
}));
const PageTitle = ({ breadcrumbs }) => {
const theme = useTheme();
const t = useTranslation();
const desktop = useMediaQuery(theme.breakpoints.up('md'));
if (desktop) {
return (
{t(breadcrumbs.at(0))}
);
}
return (
{breadcrumbs.slice(0, -1).map((breadcrumb) => (
{t(breadcrumb)}
))}
{t(breadcrumbs.at(-1))}
);
};
const PageLayout = ({ menu, breadcrumbs, children }) => {
const classes = useStyles();
const navigate = useNavigate();
const [openDrawer, setOpenDrawer] = useState(false);
return (
<>
setOpenDrawer(false)}
classes={{ paper: classes.mobileDrawer }}
>
{menu}
setOpenDrawer(true)}>
{children}
>
);
};
export default PageLayout;