UNPKG

@r3l/app

Version:
118 lines (100 loc) 3.66 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = RStat; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties")); var _react = _interopRequireDefault(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var _numbers = require("../../utils/numbers"); var _propValidation = require("../../utils/propValidation"); var _styled = require("../styled"); var _excluded = ["size", "user", "color", "mr", "align", "lh", "inline", "noSpace", "spaceBetween"]; var iconImage = require("../../../public/img/r-emoji.png"); function RStat(props) { var _user$relevance; var _props$size = props.size, size = _props$size === void 0 ? 3 : _props$size, user = props.user, color = props.color, mr = props.mr, align = props.align, lh = props.lh, inline = props.inline, noSpace = props.noSpace, spaceBetween = props.spaceBetween, rest = (0, _objectWithoutProperties2.default)(props, _excluded); if (!user) { return null; } var pagerank = Math.max(0, (user === null || user === void 0 ? void 0 : (_user$relevance = user.relevance) === null || _user$relevance === void 0 ? void 0 : _user$relevance.reputation) || 0); var imageMargin = align === 'center' ? -1 : 0.5; var spacer = spaceBetween || size; if (inline) { return /*#__PURE__*/_react.default.createElement(_styled.Text, (0, _extends2.default)({}, rest, { inline: inline ? 1 : 0, align: align || 'center' }), /*#__PURE__*/_react.default.createElement(_styled.Image, { source: iconImage, sx: { height: size, width: size, transform: [{ translateY: imageMargin }] }, resizeMode: "contain" }), noSpace ? '' : ' ', /*#__PURE__*/_react.default.createElement(_styled.Row, { sx: { width: spacer + 0.000001, height: 0 } }), /*#__PURE__*/_react.default.createElement(_styled.NumericalValue, { inline: inline ? 1 : 0, sx: { color: color || 'black', lineHeight: 8 * lh || 2 } }, (0, _numbers.abbreviateNumber)(Number(pagerank.toFixed(2))) || 0)); } return /*#__PURE__*/_react.default.createElement(_styled.Row, (0, _extends2.default)({}, rest, { sx: { alignItems: align, mr: mr === 'number' ? mr : inline ? 0 : 1.5001 * 8 } }), /*#__PURE__*/_react.default.createElement(_styled.Image, { source: iconImage, sx: { height: size, width: size, transform: [{ translateY: imageMargin }] }, resizeMode: "contain" }), /*#__PURE__*/_react.default.createElement(_styled.Row, { sx: { width: spacer + 0.000001, height: 0 } }), /*#__PURE__*/_react.default.createElement(_styled.NumericalValue, { sx: { color: color || 'black', lineHeight: 8 * lh || 2 } }, (0, _numbers.abbreviateNumber)(Number(pagerank.toFixed(2))) || 0)); } RStat.propTypes = { inline: _propTypes.default.oneOfType([_propTypes.default.bool, _propTypes.default.number]), lh: _propTypes.default.number, align: _propTypes.default.string, mr: _propTypes.default.number, color: _propTypes.default.string, user: _propValidation.userProps, size: _propTypes.default.number, spaceBetween: _propTypes.default.number, noSpace: _propTypes.default.bool }; //# sourceMappingURL=rStat.component.js.map