/
viktorphp
/
front-socket
Обзор
Документация
Войти
/
viktorphp
/
front-socket
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
src/widgets/profile/client/ui/ProfileDropdown.tsx
46 строк
1 KB
Иванов Виктор Евгеньевич
[feature-diary]: поправить баги и верстку, добавить README.md
12 апр 2026, 20:01
12 апр 2026, 20:01
0d63759
Код
Авторство
О чём код?
'use client'; import { useState } from 'react'; import { Box, IconButton, Popover } from '@mui/material'; import { LogoutButton } from '@features/auth'; import { ProfileButton } from '@features/profile'; import { ProfileIcon } from '@shared/assets'; export const ProfileDropdown = () => { const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null); const handleClose = () => { setAnchorEl(null); }; const handleClick = (event: React.MouseEvent<HTMLButtonElement>) => { setAnchorEl(event.currentTarget); }; return ( <Box> <IconButton onClick={handleClick} sx={{ p: 0 }}> <ProfileIcon width={38} height={38} /> </IconButton> <Popover anchorEl={anchorEl} open={Boolean(anchorEl)} onClose={handleClose} anchorOrigin={{ vertical: 'bottom', horizontal: 'right', }} transformOrigin={{ vertical: 'top', horizontal: 'right', }} slotProps={{ paper: { sx: { minWidth: 165, borderRadius: 2, mt: 1 } } }} > <ProfileButton handleClose={handleClose} /> <LogoutButton handleClose={handleClose} /> </Popover> </Box> ); };