import AppBar from '@mui/material/AppBar'; import Tab, { TabProps } from '@mui/material/Tab'; import Tabs from '@mui/material/Tabs'; import Toolbar from '@mui/material/Toolbar'; import Tooltip from '@mui/material/Tooltip/Tooltip'; import { alpha } from '@mui/material/styles'; import makeStyles from '@mui/styles/makeStyles'; import { Link, useLocation } from 'react-router-dom'; import CurrentIdentity from '../Identity/CurrentIdentity'; import { LightSwitch } from '../Themer'; const useStyles = makeStyles((theme) => ({ offset: { ...theme.mixins.toolbar, }, filler: { flexGrow: 1, }, appBar: { backgroundColor: theme.palette.primary.dark, color: theme.palette.primary.contrastText, }, appTitle: { ...theme.typography.h6, color: theme.palette.primary.contrastText, textDecoration: 'none', display: 'flex', alignItems: 'center', }, lightSwitch: { marginRight: '20px', color: alpha(theme.palette.primary.contrastText, 0.5), }, logo: { height: '42px', marginRight: theme.spacing(2), }, })); function a11yProps(index: any) { return { id: `nav-tab-${index}`, 'aria-controls': `nav-tabpanel-${index}`, }; } const DisabledTabWithTooltip = (props: TabProps) => { /*The span elements around disabled tabs are needed, as the tooltip * won't be triggered by disabled elements. * See: https://material-ui.com/components/tooltips/#disabled-elements * This must be done in a wrapper component, otherwise the TabS component * cannot pass it styles down to the Tab component. Resulting in (console) * warnings. This wrapper acceps the passed down TabProps and pass it around * the span element to the Tab component. */ const msg = `This feature doesn't exist yet. Come help us build it.`; return ( ); }; function Header() { const classes = useStyles(); const location = useLocation(); // Prevents error of invalid tab selection in // Will return a valid tab path or false if path is unkown. function highlightTab() { const validTabs = ['/', '/code', '/pulls', '/settings']; const tab = validTabs.find((tabPath) => tabPath === location.pathname); return tab === undefined ? false : tab; } return ( <> git-bug logo git-bug
); } export default Header;