UNPKG

@krowdy-ui/views

Version:

React components that implement Google's Material Design.

121 lines (118 loc) 3.73 kB
import React from 'react'; import PropTypes from 'prop-types'; import { Tooltip, Typography, withStyles } from '@material-ui/core'; import { AvatarUser } from '@krowdy-ui/views'; var styles = { avatar: {}, point: { backgroundColor: 'white', borderRadius: '50%', height: function height(_ref) { var _ref$size = _ref.size, size = _ref$size === void 0 ? 8 : _ref$size; return size; }, width: function width(_ref2) { var _ref2$size = _ref2.size, size = _ref2$size === void 0 ? 8 : _ref2$size; return size; } }, root: { '& $avatar': { display: 'none' }, '& $point': {}, '&:hover': { '& $avatar': { display: 'block' }, '& $point': { display: 'none' } }, alignItems: 'center', bottom: function bottom(_ref3) { var _ref3$bottom = _ref3.bottom, _bottom = _ref3$bottom === void 0 ? 0 : _ref3$bottom; return _bottom; }, display: 'flex', height: 12, justifyContent: 'center', left: function left(_ref4) { var _ref4$leftPercent = _ref4.leftPercent, leftPercent = _ref4$leftPercent === void 0 ? 0 : _ref4$leftPercent; return "calc(".concat(leftPercent, "% - 6px)"); }, position: 'absolute', width: 12 }, tooltipTitle: { fontSize: 12, fontWeight: 'bold' } }; var UserPoint = function UserPoint(_ref5) { var classes = _ref5.classes, _ref5$subtitle = _ref5.subtitle, subtitle = _ref5$subtitle === void 0 ? '' : _ref5$subtitle, photo = _ref5.photo, _ref5$active = _ref5.active, active = _ref5$active === void 0 ? false : _ref5$active, _ref5$firstName = _ref5.firstName, firstName = _ref5$firstName === void 0 ? '' : _ref5$firstName, _ref5$lastName = _ref5.lastName, lastName = _ref5$lastName === void 0 ? '' : _ref5$lastName; if (active) return /*#__PURE__*/React.createElement("div", { className: classes.root }, /*#__PURE__*/React.createElement(Tooltip, { arrow: true, title: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Typography, { className: classes.tooltipTitle }, firstName, " ", lastName), /*#__PURE__*/React.createElement(Typography, null, subtitle)) }, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(AvatarUser, { active: active, size: "small", user: { firstName: firstName, lastName: lastName, photo: photo } })))); return /*#__PURE__*/React.createElement("div", { className: classes.root }, /*#__PURE__*/React.createElement("div", { className: classes.avatar }, /*#__PURE__*/React.createElement(Tooltip, { arrow: true, title: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Typography, { className: classes.tooltipTitle }, firstName, " ", lastName), /*#__PURE__*/React.createElement(Typography, null, subtitle)), TransitionProps: { timeout: 0 } }, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(AvatarUser, { active: false, size: "small", user: { firstName: firstName, lastName: lastName, photo: photo } })))), /*#__PURE__*/React.createElement("div", { className: classes.point })); }; process.env.NODE_ENV !== "production" ? UserPoint.propTypes = { active: PropTypes.bool, firstName: PropTypes.string, lastName: PropTypes.string, leftPercent: PropTypes.number, photo: PropTypes.string, size: PropTypes.number, subtitle: PropTypes.string } : void 0; export default withStyles(styles, { name: 'UserPoint' })(UserPoint);