import { useRef, useState } from "react"; import { Button, CircularProgress, IconButton, Popover } from "@mui/material"; import AccountCircleOutlinedIcon from "@mui/icons-material/AccountCircleOutlined"; import { useAuthContext } from "../contexts/AuthContext"; import { usePageAccess } from "../hooks/usePageAccess"; import Gravatar from "./Settings/Gravatar"; export default function AccountPopover() { const { user, appVersion, isLoading, logout } = useAuthContext(); const { hasAccess } = usePageAccess(); const [isOpen, setIsOpen] = useState(false); const [hasGravatar, setHasGravatar] = useState(false); const anchorEl = useRef(null); return ( <> setIsOpen(true)}> {!hasGravatar && } {user && ( setHasGravatar(true)} onError={() => setHasGravatar(false)} /> )} setIsOpen(false)} anchorOrigin={{ vertical: "bottom", horizontal: "left", }} slotProps={{ paper: { sx: { minWidth: "250px", } } }} >
{isLoading ? ( ) : user ? (
Version: {appVersion}
{user?.display_name}
{hasAccess?.analytics && (

Analytics

)}
) : ( )}
); }