Untitled
unknown
plain_text
a year ago
4.9 kB
6
Indexable
import MenuIcon from '@mui/icons-material/Menu';
import { AppBar, Box, Button, Container, IconButton, Menu, MenuItem, Toolbar, Typography } from '@mui/material';
import { useState } from 'react';
const leftFeatures = ['Matches', 'Results', 'Stats'];
const rightFeatures = ['Sign In'];
function NavBar() {
const [isOpenMenu, setIsOpenMenu] = useState<null | HTMLElement>(null);
const handleOpenMenuIcon = (event: React.MouseEvent<HTMLElement>) => {
setIsOpenMenu(event.currentTarget);
};
const handleCloseNavMenu = () => {
setIsOpenMenu(null);
};
return (
<AppBar position="static" sx={{ backgroundColor: '#37003c', }}>
<Container maxWidth="xl">
<Toolbar sx={{ minHeight: '48px !important' }}>
<Typography
variant="h6"
noWrap
component="a"
sx={{
mr: 2,
display: { xs: 'none', md: 'flex' },
fontFamily: 'monospace',
fontWeight: 700,
letterSpacing: '.3rem',
color: 'inherit',
textDecoration: 'none',
}}
>
LOGO
</Typography>
<Box sx={{ flexGrow: 1, display: { xs: 'flex', md: 'none' } }}>
<IconButton
size="large"
aria-label="account of current user"
aria-controls="menu-appbar"
aria-haspopup="true"
onClick={handleOpenMenuIcon}
color="inherit"
>
<MenuIcon />
</IconButton>
<Menu
id="menu-appbar"
anchorEl={isOpenMenu}
anchorOrigin={{
vertical: 'bottom',
horizontal: 'left',
}}
keepMounted
transformOrigin={{
vertical: 'top',
horizontal: 'left',
}}
open={Boolean(isOpenMenu)}
onClose={handleCloseNavMenu}
sx={{
display: { xs: 'block', md: 'none' },
}}
>
{leftFeatures.map((page) => (
<MenuItem key={page} onClick={handleCloseNavMenu}>
<Typography textAlign="center">{page}</Typography>
</MenuItem>
))}
</Menu>
</Box>
<Typography
variant="h5"
noWrap
component="a"
sx={{
mr: 2,
display: { xs: 'flex', md: 'none' },
flexGrow: 1,
fontFamily: 'monospace',
fontWeight: 700,
letterSpacing: '.3rem',
color: 'inherit',
textDecoration: 'none',
}}
>
LOGO
</Typography>
<Box sx={{ flexGrow: 1, display: { xs: 'none', md: 'flex' } }}>
{leftFeatures.map((page) => (
<Button
key={page}
onClick={handleCloseNavMenu}
sx={{ my: 0, color: 'white', display: 'block', fontWeight: 700 }}
>
{page}
</Button>
))}
</Box>
<Box sx={{ flexGrow: 0 }}>
{rightFeatures.map((page) => (
<Button
key={page}
onClick={handleCloseNavMenu}
sx={{ my: 0, color: 'white', display: 'block', fontWeight: 700 }}
>
{page}
</Button>
))}
</Box>
</Toolbar>
</Container>
</AppBar>
)
}
export default NavBar;
Editor is loading...
Leave a Comment