import { mdiMessageTextFast } from "@mdi/js"; import Icon from "@mdi/react"; import LogoutIcon from "@mui/icons-material/Logout"; import MenuIcon from "@mui/icons-material/Menu"; import MenuOpenIcon from "@mui/icons-material/MenuOpen"; import { Avatar } from "@mui/material"; import MuiAppBar from "@mui/material/AppBar"; import Box from "@mui/material/Box"; import IconButton from "@mui/material/IconButton"; import Stack from "@mui/material/Stack"; import { styled } from "@mui/material/styles"; import Toolbar from "@mui/material/Toolbar"; import Tooltip from "@mui/material/Tooltip"; import Typography from "@mui/material/Typography"; import * as React from "react"; import { RouterLink } from "../RouterLink"; import { useUserInfo } from "./BaseAuthenticatedPage"; import ThemeSwitcher from "./ThemeSwitcher"; const AppBar = styled(MuiAppBar)(({ theme }) => ({ borderWidth: 0, borderBottomWidth: 1, borderStyle: "solid", borderColor: (theme.vars ?? theme).palette.divider, boxShadow: "none", zIndex: theme.zIndex.drawer + 1, })); const LogoContainer = styled("div")({ position: "relative", height: 40, display: "flex", alignItems: "center", "& img": { maxHeight: 40, }, }); export interface DashboardHeaderProps { menuOpen: boolean; onToggleMenu: (open: boolean) => void; } export default function DashboardHeader({ menuOpen, onToggleMenu, }: DashboardHeaderProps) { const user = useUserInfo(); const handleMenuOpen = React.useCallback(() => { onToggleMenu(!menuOpen); }, [menuOpen, onToggleMenu]); const getMenuIcon = React.useCallback( (isExpanded: boolean) => { const expandMenuActionText = "Expand"; const collapseMenuActionText = "Collapse"; return (
{isExpanded ? : }
); }, [handleMenuOpen] ); return ( {getMenuIcon(menuOpen)} MatrixGW {/* User avatar */} {user.info.name} {user.info.email} ); }