import React from 'react'; import Cookies from 'js-cookie'; import { Menu, Dropdown } from 'antd'; import { CaretDownOutlined } from '@ant-design/icons'; import styled, { useTheme } from 'styled-components'; import { EntityType } from '../../types.generated'; import { useEntityRegistry } from '../useEntityRegistry'; import { GlobalCfg } from '../../conf'; import { isLoggedInVar } from '../auth/checkAuthStatus'; import CustomAvatar from './avatar/CustomAvatar'; import analytics, { EventType } from '../analytics'; import { ANTD_GRAY } from '../entity/shared/constants'; import { useAppConfig } from '../useAppConfig'; const MenuItem = styled(Menu.Item)` display: flex; justify-content: start; align-items: center; && { margin-top: 2px; } & > a:visited, & > a:active, & > a:focus { clear: both; border: none; outline: 0; } `; const DownArrow = styled(CaretDownOutlined)` vertical-align: -1px; font-size: 10px; color: ${ANTD_GRAY[7]}; `; const DropdownWrapper = styled.div` align-items: center; cursor: pointer; display: flex; `; interface Props { urn: string; pictureLink?: string; name?: string; } const defaultProps = { pictureLink: undefined, }; export const ManageAccount = ({ urn: _urn, pictureLink: _pictureLink, name }: Props) => { const entityRegistry = useEntityRegistry(); const themeConfig = useTheme(); const { config } = useAppConfig(); const handleLogout = () => { analytics.event({ type: EventType.LogOutEvent }); isLoggedInVar(false); Cookies.remove(GlobalCfg.CLIENT_AUTH_COOKIE); }; const version = config?.appVersion; const menu = (
); return (