Rev 3097 | Ir a la última revisión | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |
import React from 'react'import { Box, styled } from '@mui/material'const CustomGrid = styled('div')(({ theme }) => ({columnGap: '1rem',display: 'grid',gridTemplateColumns: '1fr',gridTemplateRows: 'auto',rowGap: '0.5rem',gridTemplateAreas: '"main" "aside"',[theme.breakpoints.up('sm')]: {gridTemplateColumns: '1fr 2fr',gridTemplateAreas: '"sidebar main" ". aside"'},[theme.breakpoints.up('md')]: {gridTemplateColumns: '2fr 5fr 3fr',gridTemplateAreas: '"sidebar main aside"'}}))const CustomColumn = styled(Box)(({ theme }) => ({position: 'relative',height: 'fit-content',display: 'grid',gap: theme.spacing(0.5),overflow: 'hidden'}))const AppGrid = ({renderSidebar = () => null,renderMain = () => null,renderAside = () => null}) => {return (<CustomGrid><CustomColumnsx={{display: { xs: 'none', sm: 'grid' },gridArea: 'sidebar'}}>{renderSidebar()}</CustomColumn><CustomColumn sx={{ gridArea: 'main' }}>{renderMain()}</CustomColumn><CustomColumn sx={{ gridArea: 'aside' }}>{renderAside()}</CustomColumn></CustomGrid>)}export default AppGrid