choerodon-ui
Version:
An enterprise-class UI design language and React-based implementation
50 lines (44 loc) • 2.26 kB
JavaScript
import _extends from "@babel/runtime/helpers/extends";
import _defineProperty from "@babel/runtime/helpers/defineProperty";
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
var _excluded = ["prefixCls", "className", "color", "children", "pending", "dot"];
import React, { useContext } from 'react';
import classNames from 'classnames';
import ConfigContext from '../config-provider/ConfigContext';
var TimelineItem = function TimelineItem(props) {
var _classNames, _classNames2;
var customizePrefixCls = props.prefixCls,
className = props.className,
_props$color = props.color,
color = _props$color === void 0 ? '' : _props$color,
children = props.children,
pending = props.pending,
dot = props.dot,
restProps = _objectWithoutProperties(props, _excluded);
var _useContext = useContext(ConfigContext),
getPrefixCls = _useContext.getPrefixCls;
var prefixCls = getPrefixCls('timeline', customizePrefixCls);
var itemClassName = classNames((_classNames = {}, _defineProperty(_classNames, "".concat(prefixCls, "-item"), true), _defineProperty(_classNames, "".concat(prefixCls, "-item-pending"), pending), _classNames), className);
var dotClassName = classNames((_classNames2 = {}, _defineProperty(_classNames2, "".concat(prefixCls, "-item-head"), true), _defineProperty(_classNames2, "".concat(prefixCls, "-item-head-custom"), dot), _defineProperty(_classNames2, "".concat(prefixCls, "-item-head-").concat(color), true), _classNames2));
var customColor = /blue|red|green/.test(color) ? undefined : color;
return /*#__PURE__*/React.createElement("li", _extends({}, restProps, {
className: itemClassName
}), /*#__PURE__*/React.createElement("div", {
className: "".concat(prefixCls, "-item-tail")
}), /*#__PURE__*/React.createElement("div", {
className: dotClassName,
style: {
borderColor: customColor,
color: customColor
}
}, dot), /*#__PURE__*/React.createElement("div", {
className: "".concat(prefixCls, "-item-content")
}, children));
};
TimelineItem.displayName = 'TimelineItem';
TimelineItem.defaultProps = {
color: 'blue',
pending: false
};
export default TimelineItem;
//# sourceMappingURL=TimelineItem.js.map