import React, { useState } from 'react';
import {
Box,
Typography,
Avatar,
Menu,
MenuItem,
ListItemIcon,
Divider,
IconButton,
Tooltip
} from '@mui/material';
import {
Logout as LogoutIcon,
LockReset as LockResetIcon,
Person as PersonIcon,
Settings as SettingsIcon,
AccountCircle as AccountCircleIcon
} from '@mui/icons-material';
import { useAuth } from '../contexts/AuthContext';
import ChangePasswordModal from './ChangePasswordModal';
import SettingsModal from './SettingsModal';
const ProfileDropdown = () => {
const { user, logout } = useAuth();
const [anchorEl, setAnchorEl] = useState(null);
const [passwordModalOpen, setPasswordModalOpen] = useState(false);
const [settingsModalOpen, setSettingsModalOpen] = useState(false);
const open = Boolean(anchorEl);
const handleClick = (event) => {
setAnchorEl(event.currentTarget);
};
const handleClose = () => {
setAnchorEl(null);
};
const handleLogout = () => {
handleClose();
logout();
};
const handleChangePassword = () => {
handleClose();
setPasswordModalOpen(true);
};
// Generate initials for avatar
const getInitials = (name) => {
if (!name) return 'U';
return name.substring(0, 2).toUpperCase();
};
return (
<>