UNPKG

@cainiaofe/cn-ui-charts

Version:
99 lines (98 loc) 4.98 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports["default"] = exports.CnTile = void 0; var _react = _interopRequireWildcard(require("react")); var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose")); var _cnUi = require("@alife/cn-ui"); var _cnLayout = require("../../components/cn-layout"); var _cnTile = require("../../components/cn-tile"); var _util = require("../../common/util/util"); var _isPlainObject = _interopRequireDefault(require("lodash/isPlainObject")); var _excluded = ["backgroundColor", "type", "customStyle"]; function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } var CnTile = function CnTile(props) { var _getLowCodeCoreUtil; var children = props.children, span = props.span, _context = props._context, _filter = props._filter, tileStyle = props.tileStyle, extra = props.extra; var _ref = tileStyle || {}, backgroundColor = _ref.backgroundColor, type = _ref.type, customStyle = _ref.customStyle, rest = (0, _objectWithoutPropertiesLoose2["default"])(_ref, _excluded); var _ref2 = _filter || {}, componentSlot = _ref2.componentSlot, slotPosition = _ref2.slotPosition; var isDesign = (0, _util.isDesignMode)(props); var state = _context === null || _context === void 0 ? void 0 : _context.state; var extraDom = (_getLowCodeCoreUtil = (0, _util.getLowCodeCoreUtil)('util.makeButtons')) === null || _getLowCodeCoreUtil === void 0 ? void 0 : _getLowCodeCoreUtil({ buttons: extra === null || extra === void 0 ? void 0 : extra.map(function (item) { var realChildren = item === null || item === void 0 ? void 0 : item.children; if (typeof (item === null || item === void 0 ? void 0 : item.children) === 'function') { realChildren = (0, _util.executeFunction)(item.children, {}, state); } return (0, _extends2["default"])({}, item, { size: 'small', position: (0, _util.getLowCodeCoreUtil)('enumMap.ButtonPosition.tileRightButton'), children: realChildren }); }), _context: _context, state: state, recordDataSource: {} }); var tileProps = {}; if ((0, _util.isArrayNotEmpty)(extraDom)) { extraDom = /*#__PURE__*/_react["default"].createElement(_cnUi.CnBox, { spacing: 8, direction: "row" }, extraDom); } var realStyle = { backgroundColor: backgroundColor }; var bodyStyle = (0, _util.executeFunction)(customStyle); if ((0, _isPlainObject["default"])(bodyStyle)) { tileProps.bodyStyle = bodyStyle; } if (type === 'noBorder') { realStyle.backgroundColor = 'transparent'; realStyle.padding = 0; realStyle.boxShadow = 'none'; } var filterSlot = null; if (slotPosition === 'right') { var tempFilter = (0, _util.getSlotDom)({ componentSlot: componentSlot, isDesign: isDesign, componentProps: { className: 'l2-cn-filter-in-chart l2-cn-filter-in-tile-right-slot' } }); extraDom = /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, tempFilter, extraDom); } else { filterSlot = (0, _util.getSlotDom)({ componentSlot: componentSlot, isDesign: isDesign }); } return /*#__PURE__*/_react["default"].createElement(_cnLayout.CnLayoutBlock, { className: 'cn-tile-block-wrap', span: span }, /*#__PURE__*/_react["default"].createElement(_cnTile.CnTile, (0, _extends2["default"])({}, tileProps, { style: realStyle }, rest, { extra: extraDom }), slotPosition !== 'right' && filterSlot, children)); }; exports.CnTile = CnTile; CnTile.typeMark = 'Block'; CnTile.displayName = 'CnTile'; var _default = CnTile; exports["default"] = _default;