import React from 'react'; import { AppBar, Tabs, Tab, Typography, Toolbar, } from '@material-ui/core'; import { makeStyles } from '@material-ui/core/styles'; interface PropTypes { logo: { icon: React.ReactNode; title: string; }; contents: { [key: string]: React.ReactNode | null; }; page: string; setPage: (newPage: string) => void; } const useStyles = makeStyles((theme: any) => ({ 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: React.FC = ({ logo, contents, page, setPage }) => { const classes = useStyles(); const handleChange = (event: React.ChangeEvent<{}>, newPage: string) => { setPage(newPage); }; return ( {logo.icon} {logo.title} {contents && Object.keys(contents).map((item: string) => ( ))} ); }; export default Header;