2024-03-08 14:58:36 +01:00
|
|
|
import {
|
|
|
|
Box,
|
|
|
|
IconButton,
|
|
|
|
Menu,
|
|
|
|
MenuButton,
|
|
|
|
MenuItem,
|
|
|
|
MenuList,
|
2024-03-17 17:28:45 +01:00
|
|
|
} from "@chakra-ui/react"
|
2024-04-01 22:53:33 -05:00
|
|
|
import { Link } from "@tanstack/react-router"
|
2024-03-17 17:28:45 +01:00
|
|
|
import { FaUserAstronaut } from "react-icons/fa"
|
|
|
|
import { FiLogOut, FiUser } from "react-icons/fi"
|
2024-02-15 17:17:26 -05:00
|
|
|
|
2024-03-17 17:28:45 +01:00
|
|
|
import useAuth from "../../hooks/useAuth"
|
2024-02-15 17:17:26 -05:00
|
|
|
|
2024-03-28 20:22:28 -05:00
|
|
|
const UserMenu = () => {
|
2024-03-08 14:58:36 +01:00
|
|
|
const { logout } = useAuth()
|
2024-02-15 17:17:26 -05:00
|
|
|
|
2024-03-08 14:58:36 +01:00
|
|
|
const handleLogout = async () => {
|
|
|
|
logout()
|
|
|
|
}
|
2024-02-15 17:17:26 -05:00
|
|
|
|
2024-03-08 14:58:36 +01:00
|
|
|
return (
|
|
|
|
<>
|
|
|
|
{/* Desktop */}
|
|
|
|
<Box
|
2024-03-17 17:28:45 +01:00
|
|
|
display={{ base: "none", md: "block" }}
|
2024-03-08 14:58:36 +01:00
|
|
|
position="fixed"
|
|
|
|
top={4}
|
|
|
|
right={4}
|
|
|
|
>
|
|
|
|
<Menu>
|
|
|
|
<MenuButton
|
|
|
|
as={IconButton}
|
|
|
|
aria-label="Options"
|
|
|
|
icon={<FaUserAstronaut color="white" fontSize="18px" />}
|
|
|
|
bg="ui.main"
|
|
|
|
isRound
|
|
|
|
/>
|
|
|
|
<MenuList>
|
|
|
|
<MenuItem icon={<FiUser fontSize="18px" />} as={Link} to="settings">
|
|
|
|
My profile
|
|
|
|
</MenuItem>
|
|
|
|
<MenuItem
|
|
|
|
icon={<FiLogOut fontSize="18px" />}
|
|
|
|
onClick={handleLogout}
|
|
|
|
color="ui.danger"
|
|
|
|
fontWeight="bold"
|
|
|
|
>
|
|
|
|
Log out
|
|
|
|
</MenuItem>
|
|
|
|
</MenuList>
|
|
|
|
</Menu>
|
|
|
|
</Box>
|
|
|
|
</>
|
|
|
|
)
|
|
|
|
}
|
2024-02-15 17:17:26 -05:00
|
|
|
|
2024-03-08 14:58:36 +01:00
|
|
|
export default UserMenu
|