UNPKG

tdesign-react

Version:
85 lines (81 loc) 3.76 kB
/** * tdesign v1.15.1 * (c) 2025 tdesign * @license MIT */ import { _ as _defineProperty } from '../_chunks/dep-cb0a3966.js'; import { _ as _objectWithoutProperties } from '../_chunks/dep-6b660ef0.js'; import React, { forwardRef } from 'react'; import classNames from 'classnames'; import useConfig from '../hooks/useConfig.js'; import { badgeDefaultProps } from './defaultProps.js'; import useDefaultProps from '../hooks/useDefaultProps.js'; import '../_chunks/dep-eca3a3de.js'; import '../config-provider/ConfigContext.js'; import 'lodash-es'; import '../locale/zh_CN.js'; import '../_chunks/dep-e29214cb.js'; import 'dayjs'; import '../_chunks/dep-3c9ab31a.js'; var _excluded = ["color", "dot", "maxCount", "count", "size", "shape", "showZero", "offset", "className", "content", "children", "style"]; function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } var Badge = /*#__PURE__*/forwardRef(function (props, ref) { var _useDefaultProps = useDefaultProps(props, badgeDefaultProps), color = _useDefaultProps.color, dot = _useDefaultProps.dot, maxCount = _useDefaultProps.maxCount, count = _useDefaultProps.count, size = _useDefaultProps.size, shape = _useDefaultProps.shape, showZero = _useDefaultProps.showZero, offset = _useDefaultProps.offset, className = _useDefaultProps.className, content = _useDefaultProps.content, children = _useDefaultProps.children, style = _useDefaultProps.style, restProps = _objectWithoutProperties(_useDefaultProps, _excluded); var _useConfig = useConfig(), classPrefix = _useConfig.classPrefix; var childNode = content || children; var badgeClassName = classNames(!childNode && "".concat(classPrefix, "-badge--static"), dot ? "".concat(classPrefix, "-badge--dot") : "".concat(classPrefix, "-badge--").concat(shape), size === "small" && "".concat(classPrefix, "-size-s"), !childNode && className); var getDisplayCount = function getDisplayCount() { if (typeof count === "number" && count > maxCount) { return "".concat(maxCount, "+"); } return count; }; var isHidden = !count; if (typeof count === "number") { isHidden = count < 1 && !showZero; } var getStyle = function getStyle() { var mergedStyle = _objectSpread({}, style); if (color) { mergedStyle.backgroundColor = color; } if (offset) { if (offset[0]) { mergedStyle.right = +offset[0]; } if (offset[1]) { mergedStyle.marginTop = +offset[1]; } } return mergedStyle; }; var badge = !isHidden ? /* @__PURE__ */React.createElement("span", _objectSpread(_objectSpread({}, childNode ? {} : restProps), {}, { className: badgeClassName, style: getStyle() }), !dot ? getDisplayCount() : null) : null; if (!childNode) { return badge; } return /* @__PURE__ */React.createElement("span", _objectSpread(_objectSpread({}, restProps), {}, { className: classNames("".concat(classPrefix, "-badge"), className), ref: ref }), childNode, badge); }); Badge.displayName = "Badge"; export { Badge as default }; //# sourceMappingURL=Badge.js.map