UNPKG

antd

Version:

An enterprise-class UI design language and React components implementation

65 lines 2.68 kB
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty"; import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray"; import _extends from "@babel/runtime/helpers/esm/extends"; import classNames from 'classnames'; import * as React from 'react'; import { withConfigConsumer } from '../config-provider/context'; import Skeleton from '../skeleton'; import StatisticNumber from './Number'; import useStyle from './style'; var Statistic = function Statistic(props) { var prefixCls = props.prefixCls, className = props.className, style = props.style, valueStyle = props.valueStyle, _props$value = props.value, value = _props$value === void 0 ? 0 : _props$value, title = props.title, valueRender = props.valueRender, prefix = props.prefix, suffix = props.suffix, _props$loading = props.loading, loading = _props$loading === void 0 ? false : _props$loading, direction = props.direction, onMouseEnter = props.onMouseEnter, onMouseLeave = props.onMouseLeave, _props$decimalSeparat = props.decimalSeparator, decimalSeparator = _props$decimalSeparat === void 0 ? '.' : _props$decimalSeparat, _props$groupSeparator = props.groupSeparator, groupSeparator = _props$groupSeparator === void 0 ? ',' : _props$groupSeparator; var valueNode = /*#__PURE__*/React.createElement(StatisticNumber, _extends({ decimalSeparator: decimalSeparator, groupSeparator: groupSeparator }, props, { value: value })); // Style var _useStyle = useStyle(String(prefixCls)), _useStyle2 = _slicedToArray(_useStyle, 2), wrapSSR = _useStyle2[0], hashId = _useStyle2[1]; var cls = classNames(prefixCls, _defineProperty({}, prefixCls + "-rtl", direction === 'rtl'), className, hashId); return wrapSSR( /*#__PURE__*/React.createElement("div", { className: cls, style: style, onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave }, title && /*#__PURE__*/React.createElement("div", { className: prefixCls + "-title" }, title), /*#__PURE__*/React.createElement(Skeleton, { paragraph: false, loading: loading, className: prefixCls + "-skeleton" }, /*#__PURE__*/React.createElement("div", { style: valueStyle, className: prefixCls + "-content" }, prefix && /*#__PURE__*/React.createElement("span", { className: prefixCls + "-content-prefix" }, prefix), valueRender ? valueRender(valueNode) : valueNode, suffix && /*#__PURE__*/React.createElement("span", { className: prefixCls + "-content-suffix" }, suffix))))); }; var WrapperStatistic = withConfigConsumer({ prefixCls: 'statistic' })(Statistic); export default WrapperStatistic;