import { Menu, Dropdown, Button, Space } from 'antd'; import { DownOutlined } from '@ant-design/icons'; import { useRecoilState, useRecoilValue } from 'recoil'; import { chatVisibilityAtom, chatDisplayNameAtom } from '../../stores/ClientConfigStore'; import { ChatState, ChatVisibilityState } from '../../../interfaces/application-state'; import s from './UserDropdown.module.scss'; interface Props { username?: string; chatState: ChatState; } export default function UserDropdown({ username: defaultUsername, chatState }: Props) { const [chatVisibility, setChatVisibility] = useRecoilState(chatVisibilityAtom); const username = defaultUsername || useRecoilValue(chatDisplayNameAtom); const toggleChatVisibility = () => { if (chatVisibility === ChatVisibilityState.Hidden) { setChatVisibility(ChatVisibilityState.Visible); } else { setChatVisibility(ChatVisibilityState.Hidden); } }; const menu = ( Change name Authenticate {chatState === ChatState.Available && ( toggleChatVisibility()}> Toggle chat )} ); return (
); } UserDropdown.defaultProps = { username: undefined, };