mirror of
https://github.com/AmruthPillai/Reactive-Resume.git
synced 2025-11-10 04:22:27 +10:00
46 lines
1.2 KiB
TypeScript
46 lines
1.2 KiB
TypeScript
import { t } from "@lingui/macro";
|
|
import {
|
|
DropdownMenu,
|
|
DropdownMenuContent,
|
|
DropdownMenuItem,
|
|
DropdownMenuSeparator,
|
|
DropdownMenuTrigger,
|
|
KeyboardShortcut,
|
|
} from "@reactive-resume/ui";
|
|
import { useNavigate } from "react-router";
|
|
|
|
import { useLogout } from "../services/auth";
|
|
|
|
type Props = {
|
|
children: React.ReactNode;
|
|
};
|
|
|
|
export const UserOptions = ({ children }: Props) => {
|
|
const navigate = useNavigate();
|
|
const { logout } = useLogout();
|
|
|
|
return (
|
|
<DropdownMenu>
|
|
<DropdownMenuTrigger asChild>{children}</DropdownMenuTrigger>
|
|
|
|
<DropdownMenuContent side="top" align="start" className="w-48">
|
|
<DropdownMenuItem
|
|
onClick={() => {
|
|
void navigate("/dashboard/settings");
|
|
}}
|
|
>
|
|
{t`Settings`}
|
|
{/* eslint-disable-next-line lingui/no-unlocalized-strings */}
|
|
<KeyboardShortcut>⇧S</KeyboardShortcut>
|
|
</DropdownMenuItem>
|
|
<DropdownMenuSeparator />
|
|
<DropdownMenuItem onClick={() => logout()}>
|
|
{t`Logout`}
|
|
{/* eslint-disable-next-line lingui/no-unlocalized-strings */}
|
|
<KeyboardShortcut>⇧Q</KeyboardShortcut>
|
|
</DropdownMenuItem>
|
|
</DropdownMenuContent>
|
|
</DropdownMenu>
|
|
);
|
|
};
|