@arim-aisdc/public-components 2.3.31 → 2.3.33
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/TableMax/TableBody/Row.d.ts +2 -1
- package/dist/components/TableMax/TableBody/Row.js +71 -4
- package/dist/components/TableMax/TableBody/index.d.ts +3 -2
- package/dist/components/TableMax/TableBody/index.js +6 -3
- package/dist/components/TableMax/TableMax.js +4 -6
- package/dist/components/TableMax/type.d.ts +3 -0
- package/package.json +1 -1
|
@@ -60,6 +60,7 @@ type IRowProps = {
|
|
|
60
60
|
dropSide: DropSide;
|
|
61
61
|
onEditValueChange?: (field: string, value: any, extra?: any) => void;
|
|
62
62
|
setRowSelection?: Function;
|
|
63
|
+
openMemo?: boolean;
|
|
63
64
|
};
|
|
64
|
-
declare const Row: ({ tableBodyRef, table, tableId, row, rowSelectedId, setRowSelectedId, rowHighLightId, setRowHighLightId, selectedRowChange, onSelectChange, canSelection, selectionWithoutChecked, reorderRow, canRowDrag, rowClassName, cellClassName, rowStyle, getCellProps, editting, rowEditing, renderSubComponent, selectedRowDragging, setSelectedRowDragging, onRowMouseEnter, onRowMouseLeave, onRowMouseClick, onRowMouseDoubleClick, rowHeight, disableDragRowIds, selectRowWhenClick, handleEditRowWhenDClick, canEditRowWhenDClick, theme, dragBeforeStart, shadowColumnInfo, onCellContextMenu, getRowHoverTipConfig, tableTooltip, changeHoverRow, clearHoverRowIndex, hoverRowIndex, dropSide, onEditValueChange, setRowSelection }: IRowProps) => import("react/jsx-runtime").JSX.Element;
|
|
65
|
+
declare const Row: ({ tableBodyRef, table, tableId, row, rowSelectedId, setRowSelectedId, rowHighLightId, setRowHighLightId, selectedRowChange, onSelectChange, canSelection, selectionWithoutChecked, reorderRow, canRowDrag, rowClassName, cellClassName, rowStyle, getCellProps, editting, rowEditing, renderSubComponent, selectedRowDragging, setSelectedRowDragging, onRowMouseEnter, onRowMouseLeave, onRowMouseClick, onRowMouseDoubleClick, rowHeight, disableDragRowIds, selectRowWhenClick, handleEditRowWhenDClick, canEditRowWhenDClick, theme, dragBeforeStart, shadowColumnInfo, onCellContextMenu, getRowHoverTipConfig, tableTooltip, changeHoverRow, clearHoverRowIndex, hoverRowIndex, dropSide, onEditValueChange, setRowSelection, openMemo }: IRowProps) => import("react/jsx-runtime").JSX.Element;
|
|
65
66
|
export default Row;
|
|
@@ -75,7 +75,8 @@ var Row = function Row(_ref) {
|
|
|
75
75
|
hoverRowIndex = _ref.hoverRowIndex,
|
|
76
76
|
dropSide = _ref.dropSide,
|
|
77
77
|
onEditValueChange = _ref.onEditValueChange,
|
|
78
|
-
setRowSelection = _ref.setRowSelection
|
|
78
|
+
setRowSelection = _ref.setRowSelection,
|
|
79
|
+
openMemo = _ref.openMemo;
|
|
79
80
|
var _useConfig = useConfig(),
|
|
80
81
|
dateFormat = _useConfig.dateFormat;
|
|
81
82
|
var timerRef = useRef();
|
|
@@ -324,7 +325,7 @@ var Row = function Row(_ref) {
|
|
|
324
325
|
}, []);
|
|
325
326
|
|
|
326
327
|
// 优化:将行渲染逻辑提取为useMemo
|
|
327
|
-
var
|
|
328
|
+
var rowComMemo = useMemo(function () {
|
|
328
329
|
var renderCell = function renderCell(cell) {
|
|
329
330
|
var _cellClassName;
|
|
330
331
|
var _cell$column$columnDe = cell.column.columnDef,
|
|
@@ -390,6 +391,72 @@ var Row = function Row(_ref) {
|
|
|
390
391
|
children: row.getVisibleCells().map(renderCell)
|
|
391
392
|
});
|
|
392
393
|
}, [row, rowEditing, tableId, editting, canRowDrag, disableDragRowIds, isDragging, selectedRowDragging, rowStyle, handleRowClick, rowMouseEnter, rowMouseLeave, rowClassNames, leftLastColumnId, rightFirstColumnId, cellClassName, theme, rowHeight, table, handleCellRightClick, getCellProps, tableTooltip, onEditValueChange, dateFormat]);
|
|
394
|
+
var rowCom = function rowCom() {
|
|
395
|
+
var renderCell = function renderCell(cell) {
|
|
396
|
+
var _cellClassName2;
|
|
397
|
+
var _cell$column$columnDe3 = cell.column.columnDef,
|
|
398
|
+
columnEditable = _cell$column$columnDe3.editable,
|
|
399
|
+
accessorKey = _cell$column$columnDe3.accessorKey,
|
|
400
|
+
header = _cell$column$columnDe3.header,
|
|
401
|
+
columnClassName = _cell$column$columnDe3.columnClassName,
|
|
402
|
+
id = _cell$column$columnDe3.id,
|
|
403
|
+
filterType = _cell$column$columnDe3.filterType;
|
|
404
|
+
var columnEditing = rowEditing && columnEditable;
|
|
405
|
+
var rawValue = cell.getValue();
|
|
406
|
+
|
|
407
|
+
// 创建增强上下文
|
|
408
|
+
var originalContext = cell.getContext();
|
|
409
|
+
var enhancedContext = _objectSpread(_objectSpread({}, originalContext), {}, {
|
|
410
|
+
getValue: function getValue() {
|
|
411
|
+
return rawValue;
|
|
412
|
+
},
|
|
413
|
+
getFormattedValue: function getFormattedValue() {
|
|
414
|
+
var _cell$column$columnDe4;
|
|
415
|
+
return isDateColumn(cell.column.columnDef) ? formatDate(rawValue, ((_cell$column$columnDe4 = cell.column.columnDef) === null || _cell$column$columnDe4 === void 0 || (_cell$column$columnDe4 = _cell$column$columnDe4.meta) === null || _cell$column$columnDe4 === void 0 ? void 0 : _cell$column$columnDe4.dateFormat) || dateFormat) : rawValue;
|
|
416
|
+
},
|
|
417
|
+
renderValue: function renderValue() {
|
|
418
|
+
return enhancedContext.getFormattedValue();
|
|
419
|
+
}
|
|
420
|
+
});
|
|
421
|
+
var cellClassNames = [columnEditing ? 'tbody-tr-td-editting' : '', id === leftLastColumnId ? 'tbody-tr-td-cell-fix-left-last' : '', id === rightFirstColumnId ? 'tbody-tr-td-cell-fix-right-first' : '', columnClassName ? columnClassName.join(' ') : ''].concat(_toConsumableArray((cellClassName === null || cellClassName === void 0 || (_cellClassName2 = cellClassName(cell)) === null || _cellClassName2 === void 0 ? void 0 : _cellClassName2.map(function (item) {
|
|
422
|
+
return "".concat(item, "-").concat(theme);
|
|
423
|
+
})) || []), ['tbody-tr-td']).filter(Boolean).join(' ');
|
|
424
|
+
return /*#__PURE__*/_jsx("td", _objectSpread(_objectSpread({
|
|
425
|
+
className: cellClassNames,
|
|
426
|
+
style: _objectSpread({
|
|
427
|
+
height: rowHeight - 1
|
|
428
|
+
}, getPinningStyle(cell, table, false)),
|
|
429
|
+
onContextMenu: function onContextMenu(e) {
|
|
430
|
+
return handleCellRightClick(e, cell);
|
|
431
|
+
}
|
|
432
|
+
}, getCellProps === null || getCellProps === void 0 ? void 0 : getCellProps(cell.getContext())), {}, {
|
|
433
|
+
children: EditableCell(_objectSpread(_objectSpread({}, cell.column.columnDef), {}, {
|
|
434
|
+
tableTooltip: tableTooltip,
|
|
435
|
+
editing: columnEditing,
|
|
436
|
+
dataIndex: accessorKey,
|
|
437
|
+
title: header,
|
|
438
|
+
onEditValueChange: onEditValueChange,
|
|
439
|
+
children: flexRender(cell.column.columnDef.cell, enhancedContext)
|
|
440
|
+
}))
|
|
441
|
+
}), cell.id);
|
|
442
|
+
};
|
|
443
|
+
return /*#__PURE__*/_jsx("tr", {
|
|
444
|
+
id: rowEditing ? "".concat(tableId, "-tbody-tr-editing") : undefined,
|
|
445
|
+
ref: function ref(node) {
|
|
446
|
+
dropRef(node && !editting ? node : null);
|
|
447
|
+
dragRef(node && canRowDrag && !editting && !(disableDragRowIds !== null && disableDragRowIds !== void 0 && disableDragRowIds.includes(row.id)) ? node : null);
|
|
448
|
+
},
|
|
449
|
+
style: _objectSpread({
|
|
450
|
+
opacity: isDragging || selectedRowDragging && row.getIsSelected() ? 0.5 : 1,
|
|
451
|
+
cursor: canRowDrag && !editting && !(disableDragRowIds !== null && disableDragRowIds !== void 0 && disableDragRowIds.includes(row.id)) ? 'move' : 'auto'
|
|
452
|
+
}, rowStyle),
|
|
453
|
+
onClick: handleRowClick,
|
|
454
|
+
onMouseEnter: rowMouseEnter,
|
|
455
|
+
onMouseLeave: rowMouseLeave,
|
|
456
|
+
className: rowClassNames,
|
|
457
|
+
children: row.getVisibleCells().map(renderCell)
|
|
458
|
+
});
|
|
459
|
+
};
|
|
393
460
|
return /*#__PURE__*/_jsxs(_Fragment, {
|
|
394
461
|
children: [!!getRowHoverTipConfig ? /*#__PURE__*/_jsx(Tooltip, _objectSpread(_objectSpread({}, tooltipConfig), {}, {
|
|
395
462
|
onOpenChange: onOpenChange,
|
|
@@ -400,8 +467,8 @@ var Row = function Row(_ref) {
|
|
|
400
467
|
getPopupContainer: function getPopupContainer() {
|
|
401
468
|
return tableBodyRef.current || document.body;
|
|
402
469
|
},
|
|
403
|
-
children: rowCom
|
|
404
|
-
})) : rowCom, row.getIsExpanded() && /*#__PURE__*/_jsx("tr", {
|
|
470
|
+
children: openMemo ? rowComMemo : rowCom()
|
|
471
|
+
})) : openMemo ? rowComMemo : rowCom(), row.getIsExpanded() && /*#__PURE__*/_jsx("tr", {
|
|
405
472
|
className: "tbody-tr-subrow",
|
|
406
473
|
children: /*#__PURE__*/_jsx("td", {
|
|
407
474
|
colSpan: row.getVisibleCells().length,
|
|
@@ -74,7 +74,8 @@ type TableBodyPropsType = {
|
|
|
74
74
|
hasTotalRow?: boolean;
|
|
75
75
|
totalDatas?: any[];
|
|
76
76
|
setRowSelection: Function;
|
|
77
|
+
openMemo?: boolean;
|
|
77
78
|
};
|
|
78
|
-
declare const TableBody: ({ tableBodyRef, table, tableId, theme, reorderRow, rowSelectedId, setRowSelectedId, rowHighLightId, setRowHighLightId, selectedRowChange, onSelectChange, canSelection, selectionWithoutChecked, tableContainerWidth, selectedRowDragging, setSelectedRowDragging, canRowDrag, rowKey, loading, rowClassName, cellClassName, rowStyle, getCellProps, rowHeight, renderSubComponent, onRowMouseEnter, onRowMouseLeave, onRowMouseClick, onRowMouseDoubleClick, disableDragRowIds, selectRowWhenClick, datas, canEditRowWhenDClick, editingRowId, handleEditRowWhenDClick, dragBeforeStart, shadowColumnInfo, getContextMenu, onClickContextMenu, getRowHoverTipConfig, tableTooltip, compactMode, onEditValueChange, hasTotalRow, totalDatas, setRowSelection }: TableBodyPropsType) => import("react/jsx-runtime").JSX.Element;
|
|
79
|
+
declare const TableBody: ({ tableBodyRef, table, tableId, theme, reorderRow, rowSelectedId, setRowSelectedId, rowHighLightId, setRowHighLightId, selectedRowChange, onSelectChange, canSelection, selectionWithoutChecked, tableContainerWidth, selectedRowDragging, setSelectedRowDragging, canRowDrag, rowKey, loading, rowClassName, cellClassName, rowStyle, getCellProps, rowHeight, renderSubComponent, onRowMouseEnter, onRowMouseLeave, onRowMouseClick, onRowMouseDoubleClick, disableDragRowIds, selectRowWhenClick, datas, canEditRowWhenDClick, editingRowId, handleEditRowWhenDClick, dragBeforeStart, shadowColumnInfo, getContextMenu, onClickContextMenu, getRowHoverTipConfig, tableTooltip, compactMode, onEditValueChange, hasTotalRow, totalDatas, setRowSelection, openMemo }: TableBodyPropsType) => import("react/jsx-runtime").JSX.Element;
|
|
79
80
|
export default TableBody;
|
|
80
|
-
export declare const MemoizedTableBody: ({ tableBodyRef, table, tableId, theme, reorderRow, rowSelectedId, setRowSelectedId, rowHighLightId, setRowHighLightId, selectedRowChange, onSelectChange, canSelection, selectionWithoutChecked, tableContainerWidth, selectedRowDragging, setSelectedRowDragging, canRowDrag, rowKey, loading, rowClassName, cellClassName, rowStyle, getCellProps, rowHeight, renderSubComponent, onRowMouseEnter, onRowMouseLeave, onRowMouseClick, onRowMouseDoubleClick, disableDragRowIds, selectRowWhenClick, datas, canEditRowWhenDClick, editingRowId, handleEditRowWhenDClick, dragBeforeStart, shadowColumnInfo, getContextMenu, onClickContextMenu, getRowHoverTipConfig, tableTooltip, compactMode, onEditValueChange, hasTotalRow, totalDatas, setRowSelection }: TableBodyPropsType) => import("react/jsx-runtime").JSX.Element;
|
|
81
|
+
export declare const MemoizedTableBody: ({ tableBodyRef, table, tableId, theme, reorderRow, rowSelectedId, setRowSelectedId, rowHighLightId, setRowHighLightId, selectedRowChange, onSelectChange, canSelection, selectionWithoutChecked, tableContainerWidth, selectedRowDragging, setSelectedRowDragging, canRowDrag, rowKey, loading, rowClassName, cellClassName, rowStyle, getCellProps, rowHeight, renderSubComponent, onRowMouseEnter, onRowMouseLeave, onRowMouseClick, onRowMouseDoubleClick, disableDragRowIds, selectRowWhenClick, datas, canEditRowWhenDClick, editingRowId, handleEditRowWhenDClick, dragBeforeStart, shadowColumnInfo, getContextMenu, onClickContextMenu, getRowHoverTipConfig, tableTooltip, compactMode, onEditValueChange, hasTotalRow, totalDatas, setRowSelection, openMemo }: TableBodyPropsType) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -76,7 +76,8 @@ var TableBody = function TableBody(_ref) {
|
|
|
76
76
|
onEditValueChange = _ref.onEditValueChange,
|
|
77
77
|
hasTotalRow = _ref.hasTotalRow,
|
|
78
78
|
totalDatas = _ref.totalDatas,
|
|
79
|
-
setRowSelection = _ref.setRowSelection
|
|
79
|
+
setRowSelection = _ref.setRowSelection,
|
|
80
|
+
openMemo = _ref.openMemo;
|
|
80
81
|
var _useConfig = useConfig(),
|
|
81
82
|
root = _useConfig.root;
|
|
82
83
|
var headerGroups = table.getHeaderGroups();
|
|
@@ -373,7 +374,8 @@ var TableBody = function TableBody(_ref) {
|
|
|
373
374
|
hoverRowIndex: hoverRowIndex,
|
|
374
375
|
dropSide: dropSide,
|
|
375
376
|
onEditValueChange: onEditValueChange,
|
|
376
|
-
setRowSelection: setRowSelection
|
|
377
|
+
setRowSelection: setRowSelection,
|
|
378
|
+
openMemo: openMemo
|
|
377
379
|
}, row.id);
|
|
378
380
|
});
|
|
379
381
|
};
|
|
@@ -468,7 +470,8 @@ var TableBody = function TableBody(_ref) {
|
|
|
468
470
|
hoverRowIndex: hoverRowIndex,
|
|
469
471
|
dropSide: dropSide,
|
|
470
472
|
onEditValueChange: onEditValueChange,
|
|
471
|
-
setRowSelection: setRowSelection
|
|
473
|
+
setRowSelection: setRowSelection,
|
|
474
|
+
openMemo: openMemo
|
|
472
475
|
}, row.id);
|
|
473
476
|
})
|
|
474
477
|
// TBodyContent()
|
|
@@ -193,7 +193,8 @@ var TableMax = function TableMax(_ref) {
|
|
|
193
193
|
onEditValueChange = _ref.onEditValueChange,
|
|
194
194
|
hasTotalRow = _ref.hasTotalRow,
|
|
195
195
|
totalDatas = _ref.totalDatas,
|
|
196
|
-
pageSizeOptions = _ref.pageSizeOptions
|
|
196
|
+
pageSizeOptions = _ref.pageSizeOptions,
|
|
197
|
+
openMemo = _ref.openMemo;
|
|
197
198
|
var tableMaxRef = useRef(null);
|
|
198
199
|
// 表格元素
|
|
199
200
|
var tableContentRef = useRef(null);
|
|
@@ -456,7 +457,6 @@ var TableMax = function TableMax(_ref) {
|
|
|
456
457
|
onExpandedChange: setExpanded,
|
|
457
458
|
sortDescFirst: true // 首次排序为递减排序,不加这个属性的话,有些列的排序会有问题
|
|
458
459
|
});
|
|
459
|
-
console.log(table, 'table');
|
|
460
460
|
|
|
461
461
|
// 暴露给外部的api
|
|
462
462
|
useImperativeHandle(refInstance, function () {
|
|
@@ -497,7 +497,6 @@ var TableMax = function TableMax(_ref) {
|
|
|
497
497
|
var setColumnInfoFromCache = function setColumnInfoFromCache(tableColumns) {
|
|
498
498
|
var _localStorage$getItem, _tableMaxConfig$cache;
|
|
499
499
|
var cache = JSON.parse((_localStorage$getItem = localStorage.getItem(tableKey)) !== null && _localStorage$getItem !== void 0 ? _localStorage$getItem : '{}');
|
|
500
|
-
console.log(+cache.editTime, 'cache.editTime');
|
|
501
500
|
if (cache && cache !== null && cache !== void 0 && cache.editTime && +new Date() - cache.editTime > ((_tableMaxConfig$cache = tableMaxConfig.cacheMaxAge) !== null && _tableMaxConfig$cache !== void 0 ? _tableMaxConfig$cache : CACHE_MAX_AGE)) {
|
|
502
501
|
return;
|
|
503
502
|
}
|
|
@@ -602,7 +601,6 @@ var TableMax = function TableMax(_ref) {
|
|
|
602
601
|
cell: function cell(_ref5) {
|
|
603
602
|
var row = _ref5.row,
|
|
604
603
|
table = _ref5.table;
|
|
605
|
-
console.log("cell-check", row, table);
|
|
606
604
|
return /*#__PURE__*/_jsx(Checkbox, {
|
|
607
605
|
checked: row.getIsSelected(),
|
|
608
606
|
disabled: !row.getCanSelect(),
|
|
@@ -737,7 +735,6 @@ var TableMax = function TableMax(_ref) {
|
|
|
737
735
|
/**缓存table数据 */
|
|
738
736
|
useUpdateEffect(function () {
|
|
739
737
|
var tableState = table.getState();
|
|
740
|
-
console.log(new Date(), 'new Date()');
|
|
741
738
|
localStorage.setItem(tableKey, JSON.stringify({
|
|
742
739
|
enableFilters: enableFilters,
|
|
743
740
|
headerRowNum: headerRowNum,
|
|
@@ -1071,7 +1068,8 @@ var TableMax = function TableMax(_ref) {
|
|
|
1071
1068
|
onEditValueChange: onEditValueChange,
|
|
1072
1069
|
hasTotalRow: hasTotalRow,
|
|
1073
1070
|
totalDatas: totalDatas,
|
|
1074
|
-
setRowSelection: setRowSelection
|
|
1071
|
+
setRowSelection: setRowSelection,
|
|
1072
|
+
openMemo: openMemo
|
|
1075
1073
|
};
|
|
1076
1074
|
var changeCompactMode = function changeCompactMode() {
|
|
1077
1075
|
setCompactMode(!compactMode);
|
|
@@ -318,6 +318,7 @@ export type TableMaxProps = {
|
|
|
318
318
|
totalDatas?: any[];
|
|
319
319
|
/**分页,每页多少条可选值 */
|
|
320
320
|
pageSizeOptions?: number[];
|
|
321
|
+
openMemo?: boolean;
|
|
321
322
|
};
|
|
322
323
|
export interface TableMaxColumnType {
|
|
323
324
|
/**每一列的id是唯一的 */
|
|
@@ -400,6 +401,8 @@ export interface TableMaxColumnType {
|
|
|
400
401
|
/**日期展示格式 */
|
|
401
402
|
dateFormat?: string;
|
|
402
403
|
};
|
|
404
|
+
/** 是否缓存行单元格 */
|
|
405
|
+
openMemo?: boolean;
|
|
403
406
|
}
|
|
404
407
|
export type FormatFilterType = {
|
|
405
408
|
field: string;
|