47 lines
1.3 KiB
JavaScript
47 lines
1.3 KiB
JavaScript
import PropTypes from 'prop-types';
|
|
import { useState } from 'react';
|
|
|
|
// material-ui
|
|
import { List, ListItemButton, ListItemIcon, ListItemText } from '@mui/material';
|
|
|
|
// assets
|
|
import { LogoutOutlined, UserOutlined } from '@ant-design/icons';
|
|
import { useNavigate } from 'react-router';
|
|
|
|
// ==============================|| HEADER PROFILE - PROFILE TAB ||============================== //
|
|
|
|
const ProfileTab = ({ handleLogout }) => {
|
|
const [selectedIndex, setSelectedIndex] = useState(null);
|
|
const navigate = useNavigate();
|
|
const handleListItemClick = (event, index) => {
|
|
setSelectedIndex(index);
|
|
if (index == 0) {
|
|
navigate('/accountsettings');
|
|
}
|
|
};
|
|
|
|
return (
|
|
<List component="nav" sx={{ p: 0, '& .MuiListItemIcon-root': { minWidth: 32 } }}>
|
|
<ListItemButton selected={selectedIndex === 0} onClick={(event) => handleListItemClick(event, 0)}>
|
|
<ListItemIcon>
|
|
<UserOutlined />
|
|
</ListItemIcon>
|
|
<ListItemText primary="View Profile" />
|
|
</ListItemButton>
|
|
|
|
<ListItemButton selected={selectedIndex === 1} onClick={handleLogout}>
|
|
<ListItemIcon>
|
|
<LogoutOutlined />
|
|
</ListItemIcon>
|
|
<ListItemText primary="Logout" />
|
|
</ListItemButton>
|
|
</List>
|
|
);
|
|
};
|
|
|
|
ProfileTab.propTypes = {
|
|
handleLogout: PropTypes.func
|
|
};
|
|
|
|
export default ProfileTab;
|