UNPKG

@schema-render/search-table-react

Version:
95 lines (94 loc) 3.33 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); function _export(target, all) { for(var name in all)Object.defineProperty(target, name, { enumerable: true, get: all[name] }); } _export(exports, { createTableSummary: function() { return createTableSummary; }, getFlattenedColumns: function() { return getFlattenedColumns; } }); var _jsxruntime = require("react/jsx-runtime"); var _corereact = require("@schema-render/core-react"); var _antd = require("antd"); var _constants = require("../../constants"); var _common = require("../../utils/common"); var isArray = _corereact.utils.isArray, isNil = _corereact.utils.isNil; /** * 获取默认文案 */ function getSummaryDefaultText(dataKey, summaryText) { // 序号栏显示“合计”文案 if (dataKey === _constants.EColumnsKeys.rowNumber) { return summaryText; } // 操作栏默认为空 if (dataKey === _constants.EColumnsKeys.actions) { return ''; } // 其他列数据不存在显示中横线 return '-'; } function getFlattenedColumns(columns) { var flattened = []; function traverse(list) { (0, _common.forEach)(list, function(item) { if (isArray(item.children)) { traverse(item.children); } else { flattened.push(item); } }); } traverse(columns); return flattened; } /** * 创建 Antd Table 总结栏列表数据 */ function createTableSummaryItems(param) { var flattenedColumns = param.flattenedColumns, summaryData = param.summaryData, _param_summaryText = param.summaryText, summaryText = _param_summaryText === void 0 ? '合计' : _param_summaryText, _param_hasRowNumber = param.hasRowNumber, hasRowNumber = _param_hasRowNumber === void 0 ? false : _param_hasRowNumber, _param_hasRowSelection = param.hasRowSelection, hasRowSelection = _param_hasRowSelection === void 0 ? false : _param_hasRowSelection; var resultList = []; var index = -1; if (hasRowSelection) { index++; resultList.push({ index: index, text: hasRowNumber ? '' : summaryText }); } (0, _common.forEach)(flattenedColumns, function(param) { var key = param.key, dataIndex = param.dataIndex; var strDataIndex = isArray(dataIndex) ? dataIndex.join('.') : dataIndex; var dataKey = String(key || strDataIndex); var content = summaryData[dataKey]; index++; resultList.push({ index: index, text: isNil(content) ? getSummaryDefaultText(dataKey, summaryText) : content }); }); return resultList; } function createTableSummary(p) { var items = createTableSummaryItems(p); return /*#__PURE__*/ (0, _jsxruntime.jsx)(_antd.Table.Summary, { fixed: "bottom", children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_antd.Table.Summary.Row, { children: items.map(function(item) { return /*#__PURE__*/ (0, _jsxruntime.jsx)(_antd.Table.Summary.Cell, { align: "center", index: item.index, colSpan: item.colSpan, children: item.text }, item.index); }) }) }); }