1
0
Fork 0
mirror of https://github.com/plankanban/planka.git synced 2025-07-19 05:09:43 +02:00
planka/client/src/components/Project/AddMembershipPopup/UserItem.jsx

32 lines
827 B
React
Raw Normal View History

2019-08-31 04:07:25 +05:00
import React from 'react';
import PropTypes from 'prop-types';
import classNames from 'classnames';
import User from '../../User';
import styles from './UserItem.module.css';
2020-04-21 05:04:34 +05:00
const UserItem = React.memo(({ name, avatarUrl, isActive, onSelect }) => (
2020-05-26 14:10:06 +05:00
<button type="button" disabled={isActive} className={styles.menuItem} onClick={onSelect}>
2019-08-31 04:07:25 +05:00
<span className={styles.user}>
2020-04-21 05:04:34 +05:00
<User name={name} avatarUrl={avatarUrl} />
2019-08-31 04:07:25 +05:00
</span>
<div className={classNames(styles.menuItemText, isActive && styles.menuItemTextActive)}>
{name}
</div>
</button>
));
UserItem.propTypes = {
name: PropTypes.string.isRequired,
2020-04-21 05:04:34 +05:00
avatarUrl: PropTypes.string,
2019-08-31 04:07:25 +05:00
isActive: PropTypes.bool.isRequired,
onSelect: PropTypes.func.isRequired,
};
UserItem.defaultProps = {
2020-04-21 05:04:34 +05:00
avatarUrl: undefined,
2019-08-31 04:07:25 +05:00
};
export default UserItem;