@zohodesk/dot
Version:
In this Library, we Provide Some Basic Components to Build Your Application
85 lines (74 loc) • 4.12 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = AvatarThread;
var _react = _interopRequireDefault(require("react"));
var _defaultProps = require("./props/defaultProps");
var _propTypes = require("./props/propTypes");
var _Avatar = _interopRequireDefault(require("@zohodesk/components/es/v1/Avatar/Avatar"));
var _icons = require("@zohodesk/icons");
var _AvatarThreadModule = _interopRequireDefault(require("../../../avatar/AvatarThread/AvatarThread.module.css"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
function AvatarThread(props) {
var src = props.src,
name = props.name,
size = props.size,
iconColor = props.iconColor,
iconName = props.iconName,
iconSize = props.iconSize,
borderPalette = props.borderPalette,
onClick = props.onClick,
title = props.title,
iconTitle = props.iconTitle,
onIconClick = props.onIconClick,
showOnHover = props.showOnHover,
dataId = props.dataId,
initial = props.initial,
needBorder = props.needBorder,
needBackground = props.needBackground,
palette = props.palette,
textPalette = props.textPalette,
customTextClass = props.customTextClass,
needTitle = props.needTitle,
customProps = props.customProps,
iconClass = props.iconClass,
getCustomThread = props.getCustomThread,
dataSelectorId = props.dataSelectorId;
var _customProps$AvatarTh = customProps.AvatarThreadProps,
AvatarThreadProps = _customProps$AvatarTh === void 0 ? {} : _customProps$AvatarTh,
_customProps$AvatarPr = customProps.AvatarProps,
AvatarProps = _customProps$AvatarPr === void 0 ? {} : _customProps$AvatarPr;
var hoverEffect = showOnHover ? _AvatarThreadModule["default"].hover : '';
return /*#__PURE__*/_react["default"].createElement("div", _extends({
className: "".concat(_AvatarThreadModule["default"].container, " ").concat(onClick ? _AvatarThreadModule["default"].pointer : '', " ").concat(hoverEffect),
"data-selector-id": dataSelectorId
}, AvatarThreadProps), /*#__PURE__*/_react["default"].createElement(_Avatar["default"], _extends({
initial: initial,
src: src,
name: name,
title: title,
size: size,
onClick: onClick,
dataId: dataId,
palette: palette,
textPalette: textPalette,
customClass: customTextClass,
needTitle: needTitle
}, AvatarProps)), (iconName || getCustomThread) && /*#__PURE__*/_react["default"].createElement("span", {
className: "".concat(_AvatarThreadModule["default"].thread, " ").concat(onIconClick ? _AvatarThreadModule["default"].pointer : _AvatarThreadModule["default"].defaultCursor, " ").concat(needBackground ? _AvatarThreadModule["default"].threadBg : '', " ").concat(_AvatarThreadModule["default"]["thread_".concat(size, "_pos")], " ").concat(needBorder ? _AvatarThreadModule["default"]["border_".concat(borderPalette)] : ''),
"data-title": iconTitle,
"data-id": iconTitle === 'Remove Follower' && 'removeFollower',
"data-test-id": iconTitle === 'Remove Follower' && 'removeFollower',
onClick: onIconClick
}, iconName && /*#__PURE__*/_react["default"].createElement("span", {
className: _AvatarThreadModule["default"].icon
}, /*#__PURE__*/_react["default"].createElement(_icons.Icon, {
name: iconName,
size: iconSize,
iconClass: "".concat(iconClass, "\n ").concat(_AvatarThreadModule["default"]["text_".concat(iconColor)] ? _AvatarThreadModule["default"]["text_".concat(iconColor)] : iconColor)
})), getCustomThread && getCustomThread()));
}
AvatarThread.defaultProps = _defaultProps.defaultProps;
AvatarThread.propTypes = _propTypes.propTypes;