import React from 'react'; import Avatar from '@mui/material/Avatar'; import Menu from '@mui/material/Menu'; import MenuItem from '@mui/material/MenuItem'; import ListItemIcon from '@mui/material/ListItemIcon'; import Tooltip from '@mui/material/Tooltip'; import IconButton from '@mui/material/IconButton'; import Icon from '@mui/material/Icon'; import { PaperProps } from '@mui/material/Paper'; interface KOSAccountMenuProps { avatarUrl?: string; userName?: string; signOutText?: string; menuPaperProps?: Partial; onLogoutClick?: () => void; } const KOSAccountMenu = (props: KOSAccountMenuProps): React.ReactElement => { const { avatarUrl, userName, signOutText, onLogoutClick, menuPaperProps } = props; const [anchorEl, setAnchorEl] = React.useState(null); const open = Boolean(anchorEl); const handleClick = (event: React.MouseEvent) => { setAnchorEl(event.currentTarget); }; const handleCloseMenu = () => { setAnchorEl(null); }; const handleLogoutClick = () => { if (onLogoutClick !== undefined) { onLogoutClick(); } }; return ( <> {onLogoutClick !== undefined && ( exit_to_app_black_24dp {signOutText ?? 'Sign out'} )} ); }; export default KOSAccountMenu;