UNPKG

@boomerang-io/carbon-addons-boomerang-react

Version:
30 lines (27 loc) 2.23 kB
import React from 'react'; import { CloseOutline } from '@carbon/react/icons'; import cx from 'classnames'; import Avatar from '../Avatar/Avatar.js'; import { prefix } from '../../internal/settings.js'; /* IBM Confidential 694970X, 69497O0 © Copyright IBM Corp. 2022, 2024 */ function MemberBar({ addUser, avatarProps = {}, avatarSrc, buttonClassName = "", buttonProps = {}, email, id, isDetail = false, isPartner = false, isUserNotAllowed = false, liProps = {}, name, notAllowedMessage = "This Partner User is not on the allow-list", removeUser, }) { const avatarOpacity = isUserNotAllowed ? "0.8" : "1"; return (React.createElement("li", { ...liProps }, React.createElement("button", { className: cx(`${prefix}--bmrg-member-bar`, buttonClassName, { [`${prefix}--bmrg-member-bar--detail`]: isDetail, }), disabled: isUserNotAllowed, onClick: addUser && !isUserNotAllowed ? () => addUser(id) : removeUser ? () => removeUser(id) : undefined, type: "button", ...buttonProps }, React.createElement("div", { className: `${prefix}--bmrg-member-bar__user` }, React.createElement(Avatar, { src: avatarSrc, ...avatarProps, style: { opacity: avatarOpacity } }), React.createElement("div", { className: `${prefix}--bmrg-member-bar__data`, style: { opacity: avatarOpacity } }, React.createElement("p", { className: `${prefix}--bmrg-member-bar__name` }, name), React.createElement("p", { className: `${prefix}--bmrg-member-bar__email` }, email))), (isPartner || removeUser || isUserNotAllowed) && (React.createElement("div", { className: `${prefix}--bmrg-member-bar__right-section` }, isPartner && React.createElement("p", { className: `${prefix}--bmrg-member-bar__partner-text` }, "Partner User"), isUserNotAllowed && (React.createElement("p", { className: `${prefix}--bmrg-member-bar__partner-not-allowed-text` }, notAllowedMessage)), removeUser && (React.createElement(CloseOutline, { size: 32, className: `${prefix}--bmrg-member-bar__close-icon`, title: "Remove user", "data-testid": "remove-user-button" }))))))); } export { MemberBar as default };