// @flow import * as React from "react"; import styled from "styled-components"; import { observable } from "mobx"; import { observer } from "mobx-react"; import UserMenu from "menus/UserMenu"; import Avatar from "components/Avatar"; import Badge from "components/Badge"; import UserProfile from "scenes/UserProfile"; import ListItem from "components/List/Item"; import Time from "components/Time"; import User from "models/User"; type Props = { user: User, showMenu: boolean, }; @observer class UserListItem extends React.Component { @observable profileOpen: boolean = false; handleOpenProfile = () => { this.profileOpen = true; }; handleCloseProfile = () => { this.profileOpen = false; }; render() { const { user, showMenu } = this.props; return ( {user.name}} image={ } subtitle={ {user.email ? `${user.email} ยท ` : undefined} {user.lastActiveAt ? ( Active ) : ( "Invited" )} {user.isAdmin && Admin} {user.isSuspended && Suspended} } actions={showMenu ? : undefined} /> ); } } const Title = styled.span` &:hover { text-decoration: underline; cursor: pointer; } `; export default UserListItem;