UNPKG

ps-frame-father

Version:

An enterprise-class UI design language and React components implementation

84 lines (74 loc) 2.83 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2")); var _react = _interopRequireDefault(require("react")); var _classnames = _interopRequireDefault(require("classnames")); var _propTypes = _interopRequireDefault(require("prop-types")); require("./index.css"); var colorArr = { 'success': '#52c41a', 'warning': '#faad14', 'error': '#f5222d', 'default': '#d9d9d9', 'processing': '#1890ff' }; /** * 徽标数组件 * @param {style} 更改badge样式 * @param {color} 自定义小圆点的颜色 * @param {count} 展示的数字 * @param {dot} 不展示数字,只展示一个小圆点 * @param {offset} 设置状态点的偏移 * @param {overflowCount} 展示封顶的数字 * @param {showZero} 当数值为0时是否展示Badge * @param {status} 设置badge为状态点, 类型有success|warning|error|default|processing * @param {text} 当设置status时状态点的文本 */ function Badge(props) { var color = props.color, _props$count = props.count, count = _props$count === void 0 ? 0 : _props$count, dot = props.dot, offset = props.offset, overflowCount = props.overflowCount, showZero = props.showZero, status = props.status, text = props.text, style = props.style, children = props.children; return /*#__PURE__*/_react.default.createElement("div", { className: "xBadgeWrap" }, status || color ? /*#__PURE__*/_react.default.createElement("div", { className: "statusDotWrap" }, /*#__PURE__*/_react.default.createElement("span", { className: "dot", style: { backgroundColor: color || colorArr[status] || colorArr.default } }), text) : /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("span", { className: (0, _classnames.default)('badge', dot ? 'badgeDot' : ''), style: (0, _objectSpread2.default)({ right: offset ? offset[0] + 'px' : '', top: offset ? offset[1] + 'px' : '', display: !showZero && !count ? 'none' : 'inline-block' }, style) }, !dot && (overflowCount && overflowCount < count ? "".concat(overflowCount, "+") : count)), children)); } Badge.propTypes = { style: _propTypes.default.object, color: _propTypes.default.string, count: _propTypes.default.number, dot: _propTypes.default.bool, offset: _propTypes.default.array, overflowCount: _propTypes.default.number, showZero: _propTypes.default.bool, status: _propTypes.default.string, zIndex: _propTypes.default.number, text: _propTypes.default.string }; var _default = Badge; exports.default = _default;