Files
react-test/docs/data/joy/components/drawer/DrawerMobileNavigation.js
how2ice 005cf56baf
Some checks failed
No response / noResponse (push) Has been cancelled
CI / Continuous releases (push) Has been cancelled
CI / test-dev (macos-latest) (push) Has been cancelled
CI / test-dev (ubuntu-latest) (push) Has been cancelled
CI / test-dev (windows-latest) (push) Has been cancelled
Maintenance / main (push) Has been cancelled
Scorecards supply-chain security / Scorecards analysis (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
init project
2025-12-12 14:26:25 +09:00

92 lines
2.7 KiB
JavaScript

import * as React from 'react';
import Box from '@mui/joy/Box';
import IconButton from '@mui/joy/IconButton';
import Drawer from '@mui/joy/Drawer';
import Input from '@mui/joy/Input';
import List from '@mui/joy/List';
import ListItemButton from '@mui/joy/ListItemButton';
import Typography from '@mui/joy/Typography';
import ModalClose from '@mui/joy/ModalClose';
import Menu from '@mui/icons-material/Menu';
import Search from '@mui/icons-material/Search';
export default function DrawerMobileNavigation() {
const [open, setOpen] = React.useState(false);
return (
<React.Fragment>
<IconButton variant="outlined" color="neutral" onClick={() => setOpen(true)}>
<Menu />
</IconButton>
<Drawer open={open} onClose={() => setOpen(false)}>
<Box
sx={{
display: 'flex',
alignItems: 'center',
gap: 0.5,
ml: 'auto',
mt: 1,
mr: 2,
}}
>
<Typography
component="label"
htmlFor="close-icon"
sx={{ fontSize: 'sm', fontWeight: 'lg', cursor: 'pointer' }}
>
Close
</Typography>
<ModalClose id="close-icon" sx={{ position: 'initial' }} />
</Box>
<Input
size="sm"
placeholder="Search"
variant="plain"
endDecorator={<Search />}
slotProps={{
input: {
'aria-label': 'Search anything',
},
}}
sx={{
m: 3,
borderRadius: 0,
borderBottom: '2px solid',
borderColor: 'neutral.outlinedBorder',
'&:hover': {
borderColor: 'neutral.outlinedHoverBorder',
},
'&::before': {
border: '1px solid var(--Input-focusedHighlight)',
transform: 'scaleX(0)',
left: 0,
right: 0,
bottom: '-2px',
top: 'unset',
transition: 'transform .15s cubic-bezier(0.1,0.9,0.2,1)',
borderRadius: 0,
},
'&:focus-within::before': {
transform: 'scaleX(1)',
},
}}
/>
<List
size="lg"
component="nav"
sx={{
flex: 'none',
fontSize: 'xl',
'& > div': { justifyContent: 'center' },
}}
>
<ListItemButton sx={{ fontWeight: 'lg' }}>Home</ListItemButton>
<ListItemButton>About</ListItemButton>
<ListItemButton>Studio</ListItemButton>
<ListItemButton>Contact</ListItemButton>
</List>
</Drawer>
</React.Fragment>
);
}