@arim-aisdc/public-components 2.3.12 → 2.3.13
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/BaseInfo/BaseInfo.d.ts +1 -1
- package/dist/components/TableMax/TableBody/Row.js +43 -3
- package/dist/components/TableMax/TableMax.js +1 -0
- package/dist/components/TableMax/components/ColumnFilterV2/Filter.js +0 -1
- package/dist/components/TableMax/components/ColumnFilterV2/index.js +10 -0
- package/dist/components/TableMax/type.d.ts +6 -0
- package/package.json +1 -1
|
@@ -17,7 +17,7 @@ export declare const foramtBaseInfoField: (data: any, dataField: BaseInfoFieldTy
|
|
|
17
17
|
value: any;
|
|
18
18
|
field: string;
|
|
19
19
|
label?: string;
|
|
20
|
-
text: string | Element |
|
|
20
|
+
text: string | JSX.Element | Element;
|
|
21
21
|
units?: string;
|
|
22
22
|
width?: string;
|
|
23
23
|
labelWidth?: string;
|
|
@@ -20,6 +20,7 @@ import { getEmptyImage } from 'react-dnd-html5-backend';
|
|
|
20
20
|
import { getPinningStyle } from "../TableHeader/utils";
|
|
21
21
|
import { EditableCell } from "../components/ColumnEdit";
|
|
22
22
|
import "./index.less";
|
|
23
|
+
import dayjs from 'dayjs';
|
|
23
24
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
24
25
|
import { Fragment as _Fragment } from "react/jsx-runtime";
|
|
25
26
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
@@ -324,9 +325,36 @@ var Row = function Row(_ref) {
|
|
|
324
325
|
accessorKey = _cell$column$columnDe.accessorKey,
|
|
325
326
|
header = _cell$column$columnDe.header,
|
|
326
327
|
columnClassName = _cell$column$columnDe.columnClassName,
|
|
327
|
-
id = _cell$column$columnDe.id
|
|
328
|
+
id = _cell$column$columnDe.id,
|
|
329
|
+
filterType = _cell$column$columnDe.filterType;
|
|
328
330
|
// 当前列是否编辑中
|
|
329
331
|
var columnEditing = rowEditing && columnEditable;
|
|
332
|
+
// const cellValue = cell.getValue();
|
|
333
|
+
|
|
334
|
+
// const cellRenderer = cell.column.columnDef.cell;
|
|
335
|
+
// const formattedValue = isDateColumn(cell.column.columnDef)
|
|
336
|
+
// ? formatDate(cellValue, cell.column.columnDef?.meta?.dateFormat)
|
|
337
|
+
// : cellValue;
|
|
338
|
+
|
|
339
|
+
var originalContext = cell.getContext();
|
|
340
|
+
var rawValue = originalContext.getValue();
|
|
341
|
+
|
|
342
|
+
// 创建增强上下文
|
|
343
|
+
var enhancedContext = _objectSpread(_objectSpread({}, originalContext), {}, {
|
|
344
|
+
// 原始值获取
|
|
345
|
+
getValue: function getValue() {
|
|
346
|
+
return rawValue;
|
|
347
|
+
},
|
|
348
|
+
// 格式化值获取
|
|
349
|
+
getFormattedValue: function getFormattedValue() {
|
|
350
|
+
var _cell$column$columnDe2;
|
|
351
|
+
return isDateColumn(cell.column.columnDef) ? formatDate(rawValue, (_cell$column$columnDe2 = cell.column.columnDef) === null || _cell$column$columnDe2 === void 0 || (_cell$column$columnDe2 = _cell$column$columnDe2.meta) === null || _cell$column$columnDe2 === void 0 ? void 0 : _cell$column$columnDe2.dateFormat) : rawValue;
|
|
352
|
+
},
|
|
353
|
+
// 默认渲染使用格式化值
|
|
354
|
+
renderValue: function renderValue() {
|
|
355
|
+
return enhancedContext.getFormattedValue();
|
|
356
|
+
}
|
|
357
|
+
});
|
|
330
358
|
return /*#__PURE__*/_jsx("td", _objectSpread(_objectSpread({
|
|
331
359
|
className: "".concat(columnEditing ? 'tbody-tr-td-editting' : '', " ").concat(id === leftLastColumnId ? 'tbody-tr-td-cell-fix-left-last' : '', " ").concat(id === rightFirstColumnId ? 'tbody-tr-td-cell-fix-right-first' : '', " ").concat(columnClassName ? columnClassName.join(' ') : '', " ").concat((cellClassName === null || cellClassName === void 0 ? void 0 : cellClassName(cell).map(function (item) {
|
|
332
360
|
return "".concat(item, "-").concat(theme);
|
|
@@ -344,7 +372,7 @@ var Row = function Row(_ref) {
|
|
|
344
372
|
dataIndex: accessorKey,
|
|
345
373
|
title: header,
|
|
346
374
|
onEditValueChange: onEditValueChange,
|
|
347
|
-
children: flexRender(cell.column.columnDef.cell,
|
|
375
|
+
children: flexRender(cell.column.columnDef.cell, enhancedContext)
|
|
348
376
|
}))
|
|
349
377
|
}), cell.id);
|
|
350
378
|
})
|
|
@@ -382,4 +410,16 @@ var Row = function Row(_ref) {
|
|
|
382
410
|
})]
|
|
383
411
|
});
|
|
384
412
|
};
|
|
385
|
-
export default Row;
|
|
413
|
+
export default Row;
|
|
414
|
+
function formatDate(dateValue) {
|
|
415
|
+
var pattern = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "YYYY-MM-DD HH:mm";
|
|
416
|
+
if (!dateValue) return '';
|
|
417
|
+
var date = dayjs(dateValue);
|
|
418
|
+
if (!date.isValid()) return 'Invalid Date';
|
|
419
|
+
console.log(date.format(pattern), pattern, 'pattern');
|
|
420
|
+
return date.format(pattern);
|
|
421
|
+
}
|
|
422
|
+
function isDateColumn(column) {
|
|
423
|
+
var _column$meta;
|
|
424
|
+
return (column === null || column === void 0 || (_column$meta = column.meta) === null || _column$meta === void 0 ? void 0 : _column$meta.isDate) || false;
|
|
425
|
+
}
|
|
@@ -437,6 +437,7 @@ var TableMax = function TableMax(_ref) {
|
|
|
437
437
|
onExpandedChange: setExpanded,
|
|
438
438
|
sortDescFirst: true // 首次排序为递减排序,不加这个属性的话,有些列的排序会有问题
|
|
439
439
|
});
|
|
440
|
+
console.log(tableColumns, 'table.columns');
|
|
440
441
|
|
|
441
442
|
// 暴露给外部的api
|
|
442
443
|
useImperativeHandle(refInstance, function () {
|
|
@@ -30,7 +30,6 @@ var Filter = function Filter(_ref) {
|
|
|
30
30
|
getFilterOptionsFn = columnDef.getFilterOptionsFn,
|
|
31
31
|
_columnDef$isFilterOp = columnDef.isFilterOptionsFrontSearch,
|
|
32
32
|
isFilterOptionsFrontSearch = _columnDef$isFilterOp === void 0 ? false : _columnDef$isFilterOp;
|
|
33
|
-
|
|
34
33
|
// 获取最新的筛选值
|
|
35
34
|
var _useState = useState(column.getFilterValue()),
|
|
36
35
|
_useState2 = _slicedToArray(_useState, 2),
|
|
@@ -41,6 +41,16 @@ var FILTER_FN_ENUM = (_FILTER_FN_ENUM = {}, _defineProperty(_defineProperty(_def
|
|
|
41
41
|
// 给columns配置填充默认的过滤函数
|
|
42
42
|
export function setDefaultFilterFn(columns) {
|
|
43
43
|
columns.forEach(function (column) {
|
|
44
|
+
if (column.filterType === FilterType.DateRange || column.filterType === FilterType.SingleDate) {
|
|
45
|
+
if (!column.meta) {
|
|
46
|
+
column.meta = {};
|
|
47
|
+
column.meta.isDate = true;
|
|
48
|
+
column.meta.dateFormat = 'YYYY-MM-DD HH:mm';
|
|
49
|
+
} else {
|
|
50
|
+
column.meta.isDate = column.meta.isDate || true;
|
|
51
|
+
column.meta.dateFormat = column.meta.dateFormat || 'YYYY-MM-DD HH:mm';
|
|
52
|
+
}
|
|
53
|
+
}
|
|
44
54
|
if (column.filterType && !column.filterFn && FILTER_FN_ENUM[column.filterType]) {
|
|
45
55
|
// 当前列指定了过滤组件,但是没有指定过滤函数,在这里自动补上
|
|
46
56
|
column.filterFn = FILTER_FN_ENUM[column.filterType];
|
|
@@ -388,6 +388,12 @@ export interface TableMaxColumnType {
|
|
|
388
388
|
required?: boolean;
|
|
389
389
|
/**是否可调整列宽大小 */
|
|
390
390
|
enableResizing?: boolean;
|
|
391
|
+
meta?: {
|
|
392
|
+
/**是否为日期, 配置filterType后也可以判断是否为日期 */
|
|
393
|
+
isDate?: boolean;
|
|
394
|
+
/**日期展示格式 */
|
|
395
|
+
dateFormat?: string;
|
|
396
|
+
};
|
|
391
397
|
}
|
|
392
398
|
export type FormatFilterType = {
|
|
393
399
|
field: string;
|