UNPKG

choerodon-ui

Version:

An enterprise-class UI design language and React-based implementation

202 lines (163 loc) 7.57 kB
"use strict"; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard"); var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = exports.Meta = void 0; var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn")); var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf")); var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties")); var _react = _interopRequireWildcard(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var _classnames = _interopRequireDefault(require("classnames")); var _grid = require("../grid"); var _configure = require("../configure"); function _createSuper(Derived) { function isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } } return function () { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (isNativeReflectConstruct()) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; } var Meta = function Meta(props) { var customizePrefixCls = props.prefixCls, className = props.className, avatar = props.avatar, title = props.title, description = props.description, others = (0, _objectWithoutProperties2["default"])(props, ["prefixCls", "className", "avatar", "title", "description"]); var prefixCls = (0, _configure.getPrefixCls)('list', customizePrefixCls); var classString = (0, _classnames["default"])("".concat(prefixCls, "-item-meta"), className); var content = _react["default"].createElement("div", { className: "".concat(prefixCls, "-item-meta-content") }, title && _react["default"].createElement("h4", { className: "".concat(prefixCls, "-item-meta-title") }, title), description && _react["default"].createElement("div", { className: "".concat(prefixCls, "-item-meta-description") }, description)); return _react["default"].createElement("div", (0, _extends2["default"])({}, others, { className: classString }), avatar && _react["default"].createElement("div", { className: "".concat(prefixCls, "-item-meta-avatar") }, avatar), (title || description) && content); }; exports.Meta = Meta; Meta.displayName = 'ListMeta'; function getGrid(grid, t) { return grid[t] && Math.floor(24 / grid[t]); } var GridColumns = ['', 1, 2, 3, 4, 6, 8, 12, 24]; var Item = /*#__PURE__*/ function (_Component) { (0, _inherits2["default"])(Item, _Component); var _super = _createSuper(Item); function Item() { (0, _classCallCheck2["default"])(this, Item); return _super.apply(this, arguments); } (0, _createClass2["default"])(Item, [{ key: "render", value: function render() { var grid = this.context.grid; var _this$props = this.props, customizePrefixCls = _this$props.prefixCls, children = _this$props.children, actions = _this$props.actions, extra = _this$props.extra, className = _this$props.className, others = (0, _objectWithoutProperties2["default"])(_this$props, ["prefixCls", "children", "actions", "extra", "className"]); var prefixCls = (0, _configure.getPrefixCls)('list', customizePrefixCls); var classString = (0, _classnames["default"])("".concat(prefixCls, "-item"), className); var metaContent = []; var otherContent = []; _react.Children.forEach(children, function (element) { if (element && element.type && element.type === Meta) { metaContent.push(element); } else { otherContent.push(element); } }); var contentClassString = (0, _classnames["default"])("".concat(prefixCls, "-item-content"), (0, _defineProperty2["default"])({}, "".concat(prefixCls, "-item-content-single"), metaContent.length < 1)); var content = otherContent.length > 0 ? _react["default"].createElement("div", { className: contentClassString }, otherContent) : null; var actionsContent; if (actions && actions.length > 0) { var actionsContentItem = function actionsContentItem(action, i) { return _react["default"].createElement("li", { key: "".concat(prefixCls, "-item-action-").concat(i) }, action, i !== actions.length - 1 && _react["default"].createElement("em", { className: "".concat(prefixCls, "-item-action-split") })); }; actionsContent = _react["default"].createElement("ul", { className: "".concat(prefixCls, "-item-action") }, actions.map(function (action, i) { return actionsContentItem(action, i); })); } var extraContent = _react["default"].createElement("div", { className: "".concat(prefixCls, "-item-extra-wrap") }, _react["default"].createElement("div", { className: "".concat(prefixCls, "-item-main") }, metaContent, content, actionsContent), _react["default"].createElement("div", { className: "".concat(prefixCls, "-item-extra") }, extra)); var mainContent = grid ? _react["default"].createElement(_grid.Col, { span: getGrid(grid, 'column'), xs: getGrid(grid, 'xs'), sm: getGrid(grid, 'sm'), md: getGrid(grid, 'md'), lg: getGrid(grid, 'lg'), xl: getGrid(grid, 'xl'), xxl: getGrid(grid, 'xxl') }, _react["default"].createElement("div", (0, _extends2["default"])({}, others, { className: classString }), extra && extraContent, !extra && metaContent, !extra && content, !extra && actionsContent)) : _react["default"].createElement("div", (0, _extends2["default"])({}, others, { className: classString }), extra && extraContent, !extra && metaContent, !extra && content, !extra && actionsContent); return mainContent; } }]); return Item; }(_react.Component); exports["default"] = Item; Item.displayName = 'ListItem'; Item.Meta = Meta; Item.propTypes = { column: _propTypes["default"].oneOf(GridColumns), xs: _propTypes["default"].oneOf(GridColumns), sm: _propTypes["default"].oneOf(GridColumns), md: _propTypes["default"].oneOf(GridColumns), lg: _propTypes["default"].oneOf(GridColumns), xl: _propTypes["default"].oneOf(GridColumns), xxl: _propTypes["default"].oneOf(GridColumns) }; Item.contextTypes = { grid: _propTypes["default"].any }; //# sourceMappingURL=Item.js.map