diff options
author | Anton Dubik <anton.dubik33@gmail.com> | 2020-01-28 22:09:49 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-01-28 22:09:49 +0300 |
commit | d246305bfa280221efa8ee31cf6a841fbf54f378 (patch) | |
tree | 2029301838a09c072a8e4caaa3e6dc6e7a0c1a15 /src/lib/components/Header/Header.js | |
parent | 51326e543f5f7d468d30e46288e91ef98d77a9d8 (diff) | |
parent | 53143dfc36e66e285256706a8ec837e2bd2f8427 (diff) | |
download | react-benzin-d246305bfa280221efa8ee31cf6a841fbf54f378.tar.gz |
Merge pull request #1 from Eug-VS/developv1.0.1
BENZIN Release 1.0.1
Diffstat (limited to 'src/lib/components/Header/Header.js')
-rw-r--r-- | src/lib/components/Header/Header.js | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/src/lib/components/Header/Header.js b/src/lib/components/Header/Header.js new file mode 100644 index 0000000..3ade7b3 --- /dev/null +++ b/src/lib/components/Header/Header.js @@ -0,0 +1,67 @@ +import React from 'react'; + +import { + AppBar, + Tabs, + Tab, + Typography, + Toolbar, +} from '@material-ui/core'; + +import { makeStyles } from '@material-ui/core/styles'; + + +const useStyles = makeStyles(theme => ({ + root: { + background: theme.palette.background.elevation2, + color: theme.palette.text.primary, + paddingLeft: theme.spacing(3), + }, + logo: { + margin: theme.spacing(0, 3, 0, 1), + }, + tab: { + '& .MuiTab-wrapper': { + padding: theme.spacing(2), + flexDirection: 'row', + fontSize: '0.8125rem', + '& svg': { + marginRight: theme.spacing(1), + marginBottom: '0 !important', + } + } + } +})); + + +const Header = ({ logo, contents, page, setPage }) => { + const classes = useStyles(); + + const handleChange = (event, newPage) => { + setPage(newPage); + }; + + return ( + <AppBar position="sticky" className={classes.root}> + <Toolbar> + {logo.icon} + <Typography variant="h5" className={classes.logo} color="primary"> + {logo.title} + </Typography> + <Tabs onChange={handleChange} value={page}> + {contents && Object.keys(contents).map(item => ( + <Tab + label={item} + icon={contents[item]} + value={item} + className={classes.tab} + key={item} + /> + ))} + </Tabs> + </Toolbar> + </AppBar> + ); +}; + +export default Header; |