linkmore-design 1.1.12 → 1.1.13-alpha.0
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/CHANGELOG.md +34 -0
- package/dist/LmEditTable/DndContainer.d.ts +4 -3
- package/dist/LmEditTable/EditTable.d.ts +2 -0
- package/dist/LmEditTable/components/DraggableContainer.d.ts +7 -0
- package/dist/LmEditTable/components/index.d.ts +11 -0
- package/dist/LmEditTable/sortableItem.d.ts +3 -2
- package/dist/LmEditTable/util.d.ts +2 -0
- package/dist/LmEditTable/virtual/VirtualRow.d.ts +6 -0
- package/dist/LmEditTable/virtual/VirtualRowBack.d.ts +6 -0
- package/dist/LmEditTable/virtual/VirtualTable.d.ts +3 -0
- package/dist/LmEditTable/virtual/VirtualWrapper.d.ts +3 -0
- package/dist/LmEditTable/virtual/context.d.ts +13 -0
- package/dist/LmEditTable/virtual/index.d.ts +4 -0
- package/dist/index.umd.js +471 -217
- package/dist/index.umd.min.js +5 -5
- package/dist/variables.css +29 -0
- package/es/IconFont/index.js +1 -1
- package/es/LmEditTable/DndContainer.d.ts +4 -3
- package/es/LmEditTable/DndContainer.js +2 -2
- package/es/LmEditTable/EditTable.d.ts +2 -0
- package/es/LmEditTable/EditTable.js +139 -150
- package/es/LmEditTable/components/DraggableContainer.d.ts +7 -0
- package/es/LmEditTable/components/DraggableContainer.js +32 -0
- package/es/LmEditTable/components/index.d.ts +11 -0
- package/es/LmEditTable/components/index.js +5 -0
- package/es/LmEditTable/sortableItem.d.ts +3 -2
- package/es/LmEditTable/sortableItem.js +15 -4
- package/es/LmEditTable/style/index.css +29 -0
- package/es/LmEditTable/style/variables.css +29 -0
- package/es/LmEditTable/util.d.ts +2 -0
- package/es/LmEditTable/util.js +37 -1
- package/es/LmEditTable/virtual/VirtualRow.d.ts +6 -0
- package/es/LmEditTable/virtual/VirtualRow.js +60 -0
- package/es/LmEditTable/virtual/VirtualRowBack.d.ts +6 -0
- package/es/LmEditTable/virtual/VirtualRowBack.js +102 -0
- package/es/LmEditTable/virtual/VirtualTable.d.ts +3 -0
- package/es/LmEditTable/virtual/VirtualTable.js +54 -0
- package/es/LmEditTable/virtual/VirtualWrapper.d.ts +3 -0
- package/es/LmEditTable/virtual/VirtualWrapper.js +60 -0
- package/es/LmEditTable/virtual/context.d.ts +13 -0
- package/es/LmEditTable/virtual/context.js +54 -0
- package/es/LmEditTable/virtual/index.d.ts +4 -0
- package/es/LmEditTable/virtual/index.js +4 -0
- package/es/hooks/useEvent/index.js +1 -1
- package/es/styles/variables.css +29 -0
- package/lib/IconFont/index.js +1 -1
- package/lib/LmEditTable/DndContainer.d.ts +4 -3
- package/lib/LmEditTable/DndContainer.js +4 -3
- package/lib/LmEditTable/EditTable.d.ts +2 -0
- package/lib/LmEditTable/EditTable.js +135 -146
- package/lib/LmEditTable/components/DraggableContainer.d.ts +7 -0
- package/lib/LmEditTable/components/DraggableContainer.js +45 -0
- package/lib/LmEditTable/components/index.d.ts +11 -0
- package/lib/LmEditTable/components/index.js +21 -0
- package/lib/LmEditTable/sortableItem.d.ts +3 -2
- package/lib/LmEditTable/sortableItem.js +18 -5
- package/lib/LmEditTable/style/index.css +29 -0
- package/lib/LmEditTable/style/variables.css +29 -0
- package/lib/LmEditTable/util.d.ts +2 -0
- package/lib/LmEditTable/util.js +40 -0
- package/lib/LmEditTable/virtual/VirtualRow.d.ts +6 -0
- package/lib/LmEditTable/virtual/VirtualRow.js +73 -0
- package/lib/LmEditTable/virtual/VirtualRowBack.d.ts +6 -0
- package/lib/LmEditTable/virtual/VirtualRowBack.js +115 -0
- package/lib/LmEditTable/virtual/VirtualTable.d.ts +3 -0
- package/lib/LmEditTable/virtual/VirtualTable.js +71 -0
- package/lib/LmEditTable/virtual/VirtualWrapper.d.ts +3 -0
- package/lib/LmEditTable/virtual/VirtualWrapper.js +73 -0
- package/lib/LmEditTable/virtual/context.d.ts +13 -0
- package/lib/LmEditTable/virtual/context.js +64 -0
- package/lib/LmEditTable/virtual/index.d.ts +4 -0
- package/lib/LmEditTable/virtual/index.js +31 -0
- package/lib/hooks/useEvent/index.js +1 -1
- package/lib/styles/variables.css +29 -0
- package/package.json +1 -1
|
@@ -35,8 +35,6 @@ var _immer = require("immer");
|
|
|
35
35
|
|
|
36
36
|
var _DndContainer = _interopRequireDefault(require("./DndContainer"));
|
|
37
37
|
|
|
38
|
-
var _sortableBox = _interopRequireDefault(require("./sortableBox"));
|
|
39
|
-
|
|
40
38
|
var _sortableBoxCol = _interopRequireDefault(require("./sortableBoxCol"));
|
|
41
39
|
|
|
42
40
|
var _sortableItem = _interopRequireDefault(require("./sortableItem"));
|
|
@@ -49,8 +47,12 @@ var _UploadOss = _interopRequireDefault(require("../UploadOss"));
|
|
|
49
47
|
|
|
50
48
|
var _util = require("./util");
|
|
51
49
|
|
|
50
|
+
var _components = require("./components");
|
|
51
|
+
|
|
52
52
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
53
53
|
|
|
54
|
+
var _virtual = require("./virtual");
|
|
55
|
+
|
|
54
56
|
var __awaiter = void 0 && (void 0).__awaiter || function (thisArg, _arguments, P, generator) {
|
|
55
57
|
function adopt(value) {
|
|
56
58
|
return value instanceof P ? value : new P(function (resolve) {
|
|
@@ -105,7 +107,8 @@ var EditableContext = /*#__PURE__*/_react.default.createContext(null); // 表格
|
|
|
105
107
|
|
|
106
108
|
var EditableRow = function EditableRow(_a) {
|
|
107
109
|
var index = _a.index,
|
|
108
|
-
|
|
110
|
+
virtual = _a.virtual,
|
|
111
|
+
props = __rest(_a, ["index", "virtual"]);
|
|
109
112
|
|
|
110
113
|
var _Form$useForm = _linkmoreDesign.Form.useForm(),
|
|
111
114
|
_Form$useForm2 = (0, _slicedToArray2.default)(_Form$useForm, 1),
|
|
@@ -116,7 +119,7 @@ var EditableRow = function EditableRow(_a) {
|
|
|
116
119
|
component: false
|
|
117
120
|
}, /*#__PURE__*/_react.default.createElement(EditableContext.Provider, {
|
|
118
121
|
value: form
|
|
119
|
-
}, /*#__PURE__*/_react.default.createElement("tr", Object.assign({}, props))));
|
|
122
|
+
}, virtual ? /*#__PURE__*/_react.default.createElement(_virtual.VirtualRow, Object.assign({}, props)) : /*#__PURE__*/_react.default.createElement("tr", Object.assign({}, props))));
|
|
120
123
|
};
|
|
121
124
|
|
|
122
125
|
var EditableSortRow = function EditableSortRow(_a) {
|
|
@@ -302,7 +305,7 @@ var Opetate = function Opetate(_ref) {
|
|
|
302
305
|
}
|
|
303
306
|
}), (options === null || options === void 0 ? void 0 : options.includes('add')) && (options === null || options === void 0 ? void 0 : options.includes('addInChildren')) ? /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Popover, {
|
|
304
307
|
placement: "bottom",
|
|
305
|
-
overlayClassName:
|
|
308
|
+
overlayClassName: "lm_table_append_add_popover",
|
|
306
309
|
open: open,
|
|
307
310
|
title: null,
|
|
308
311
|
content: /*#__PURE__*/_react.default.createElement("ul", null, /*#__PURE__*/_react.default.createElement("li", {
|
|
@@ -333,14 +336,7 @@ var Opetate = function Opetate(_ref) {
|
|
|
333
336
|
return handleAdd(record, (options === null || options === void 0 ? void 0 : options.includes('addInChildren')) ? true : false);
|
|
334
337
|
}
|
|
335
338
|
}));
|
|
336
|
-
};
|
|
337
|
-
// const toStringValue = JSON.stringify(verifyValue);
|
|
338
|
-
// if (verifyValue === undefined || verifyValue === null || verifyValue === '' || toStringValue === '[]' || toStringValue === '{}') {
|
|
339
|
-
// return false;
|
|
340
|
-
// }
|
|
341
|
-
// return true;
|
|
342
|
-
// }
|
|
343
|
-
|
|
339
|
+
};
|
|
344
340
|
/*
|
|
345
341
|
表格单元格
|
|
346
342
|
editEnum: 下拉框时的数据数组(非数组时是配置设置)
|
|
@@ -392,6 +388,12 @@ var EditableCell = function EditableCell(props) {
|
|
|
392
388
|
|
|
393
389
|
var inputRef = (0, _react.useRef)(null);
|
|
394
390
|
var form = (0, _react.useContext)(EditableContext);
|
|
391
|
+
|
|
392
|
+
var _useState5 = (0, _react.useState)(false),
|
|
393
|
+
_useState6 = (0, _slicedToArray2.default)(_useState5, 2),
|
|
394
|
+
hoverStatus = _useState6[0],
|
|
395
|
+
setHoverStatus = _useState6[1];
|
|
396
|
+
|
|
395
397
|
(0, _react.useEffect)(function () {
|
|
396
398
|
var _a;
|
|
397
399
|
|
|
@@ -402,13 +404,7 @@ var EditableCell = function EditableCell(props) {
|
|
|
402
404
|
|
|
403
405
|
var toggleEdit = function toggleEdit() {
|
|
404
406
|
setEditing(!editing); // form.setFieldsValue({ [dataIndex]: record[dataIndex] });
|
|
405
|
-
}; //
|
|
406
|
-
// const focusCapturedRef = useRef(false);
|
|
407
|
-
// const curValue = useMemo(() => {
|
|
408
|
-
// return record?.dataIndex
|
|
409
|
-
// }, [record])
|
|
410
|
-
// const curValueIsValid = isValidValue(curValue);
|
|
411
|
-
// 校验保存
|
|
407
|
+
}; // 校验保存
|
|
412
408
|
|
|
413
409
|
|
|
414
410
|
var save = function save(row) {
|
|
@@ -491,15 +487,15 @@ var EditableCell = function EditableCell(props) {
|
|
|
491
487
|
/** 快捷刷子,把当前的所有列的值,刷成当前的选中的列 */
|
|
492
488
|
|
|
493
489
|
|
|
494
|
-
var copyKey = function copyKey(e) {
|
|
490
|
+
var copyKey = function copyKey(e, type) {
|
|
495
491
|
e === null || e === void 0 ? void 0 : e.stopPropagation();
|
|
496
492
|
var dataIndex = col.dataIndex;
|
|
497
|
-
handleCopy === null || handleCopy === void 0 ? void 0 : handleCopy(dataIndex, record[dataIndex]);
|
|
493
|
+
handleCopy === null || handleCopy === void 0 ? void 0 : handleCopy(dataIndex, record[dataIndex], type, props.rowIndex);
|
|
498
494
|
};
|
|
499
495
|
|
|
500
496
|
var Control = function Control(con) {
|
|
501
497
|
var resultComponentProps = (0, _lodash.isFunction)(componentProps) ? componentProps === null || componentProps === void 0 ? void 0 : componentProps(record, col) : componentProps;
|
|
502
|
-
var clearAttrComponentProps = (0, _lodash.omit)(resultComponentProps, ['optionOnly', 'isOnlyValue']);
|
|
498
|
+
var clearAttrComponentProps = (0, _lodash.omit)(resultComponentProps, ['optionOnly', 'isOnlyValue', 'quickcopy']);
|
|
503
499
|
|
|
504
500
|
switch (con) {
|
|
505
501
|
case 'input':
|
|
@@ -520,12 +516,6 @@ var EditableCell = function EditableCell(props) {
|
|
|
520
516
|
noStyle: true
|
|
521
517
|
}, /*#__PURE__*/_react.default.cloneElement(resultComponentProps.addonAfter, {
|
|
522
518
|
onChange: handleFormItemChange
|
|
523
|
-
})) : null,
|
|
524
|
-
suffix: resultComponentProps.quickcopy ? /*#__PURE__*/_react.default.createElement("span", {
|
|
525
|
-
className: 'lm_table_quickcopy'
|
|
526
|
-
}, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.IconFont, {
|
|
527
|
-
onClick: copyKey,
|
|
528
|
-
type: 'lmweb-icon_m_brush'
|
|
529
519
|
})) : null
|
|
530
520
|
}));
|
|
531
521
|
|
|
@@ -608,7 +598,7 @@ var EditableCell = function EditableCell(props) {
|
|
|
608
598
|
|
|
609
599
|
case 'switch':
|
|
610
600
|
return /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Switch, Object.assign({
|
|
611
|
-
size:
|
|
601
|
+
size: "small"
|
|
612
602
|
}, clearAttrComponentProps, {
|
|
613
603
|
onChange: handleFormItemChange
|
|
614
604
|
}));
|
|
@@ -697,8 +687,7 @@ var EditableCell = function EditableCell(props) {
|
|
|
697
687
|
}
|
|
698
688
|
|
|
699
689
|
return childNode;
|
|
700
|
-
}, [col, isEdit, editing, getLength]); //
|
|
701
|
-
// 出现死循环找我
|
|
690
|
+
}, [col, isEdit, editing, getLength]); // 出现死循环找我
|
|
702
691
|
|
|
703
692
|
(0, _react.useEffect)(function () {
|
|
704
693
|
var editable = col.editable,
|
|
@@ -706,22 +695,55 @@ var EditableCell = function EditableCell(props) {
|
|
|
706
695
|
|
|
707
696
|
if (isEdit && editable) {
|
|
708
697
|
form.setFieldsValue((0, _defineProperty2.default)({}, dataIndex, editable === 'date' ? (0, _moment.default)(record[dataIndex]) : record[dataIndex]));
|
|
709
|
-
}
|
|
710
|
-
// (isEdit && editable && record[dataIndex]) ||
|
|
711
|
-
// (isHoverEdit && editable && record[dataIndex])
|
|
712
|
-
// ) {
|
|
713
|
-
// form.setFieldsValue({
|
|
714
|
-
// [dataIndex]: editable === 'date' ? moment(record[dataIndex]) : record[dataIndex],
|
|
715
|
-
// })
|
|
716
|
-
// }
|
|
717
|
-
|
|
698
|
+
}
|
|
718
699
|
}, [record]);
|
|
700
|
+
|
|
701
|
+
var handleTdHover = function handleTdHover() {
|
|
702
|
+
setHoverStatus(true);
|
|
703
|
+
};
|
|
704
|
+
|
|
705
|
+
var handleTdMouseOut = function handleTdMouseOut() {
|
|
706
|
+
setHoverStatus(false);
|
|
707
|
+
};
|
|
708
|
+
|
|
719
709
|
return /*#__PURE__*/_react.default.createElement("td", Object.assign({}, (0, _lodash.omit)(clearProps, ['dataIndex']), {
|
|
720
710
|
className: (0, _classnames.default)(clearProps === null || clearProps === void 0 ? void 0 : clearProps.className, 'lm_custom_cell_td'),
|
|
711
|
+
onMouseEnter: componentProps.quickcopy ? handleTdHover : undefined,
|
|
712
|
+
onMouseLeave: componentProps.quickcopy ? handleTdMouseOut : undefined,
|
|
721
713
|
key: "r".concat(rowIndex, "_c").concat(colIndex)
|
|
722
|
-
}),
|
|
714
|
+
}), hoverStatus && props.rowIndex > 0 && /*#__PURE__*/_react.default.createElement("span", {
|
|
715
|
+
className: 'quick_copy_warp quick_copy_up',
|
|
716
|
+
onClick: function onClick(e) {
|
|
717
|
+
return copyKey(e, 'up');
|
|
718
|
+
}
|
|
719
|
+
}, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.IconFont, {
|
|
720
|
+
type: 'lmweb-icon_up'
|
|
721
|
+
})), getMemoChildNode, hoverStatus && props.rowIndex < props.getLength - 1 && /*#__PURE__*/_react.default.createElement("span", {
|
|
722
|
+
className: 'quick_copy_warp quick_copy_down',
|
|
723
|
+
onClick: function onClick(e) {
|
|
724
|
+
return copyKey(e, 'down');
|
|
725
|
+
}
|
|
726
|
+
}, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.IconFont, {
|
|
727
|
+
type: 'lmweb-icon_down'
|
|
728
|
+
})));
|
|
723
729
|
};
|
|
730
|
+
/** true 不刷新, false 刷新 */
|
|
731
|
+
|
|
732
|
+
|
|
733
|
+
var MemoEditableCell = /*#__PURE__*/(0, _react.memo)(EditableCell, function (prev, next) {
|
|
734
|
+
var pickProps = ['record', 'colIndex'];
|
|
735
|
+
var p = (0, _lodash.pick)(prev, pickProps);
|
|
736
|
+
var n = (0, _lodash.pick)(next, pickProps); // console.log(prev, next, '22', checkMemoShouldUploadSpecialFun(prev, next), isEqual(p, n))
|
|
737
|
+
// console.log(prev, next, '-sss')
|
|
724
738
|
|
|
739
|
+
/** TODO: 在record中带有children,子列表数据修改之后,会导致父级的record对比不一样 */
|
|
740
|
+
|
|
741
|
+
if (!(0, _util.checkMemoShouldUploadSpecialFun)(prev, next)) {
|
|
742
|
+
return false;
|
|
743
|
+
}
|
|
744
|
+
|
|
745
|
+
return (0, _lodash.isEqual)(p, n);
|
|
746
|
+
});
|
|
725
747
|
var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
726
748
|
var defaultData = props.value,
|
|
727
749
|
columns = props.columns,
|
|
@@ -739,6 +761,7 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
739
761
|
_props$quickOpetateCl = props.quickOpetateClearAll,
|
|
740
762
|
quickOpetateClearAll = _props$quickOpetateCl === void 0 ? true : _props$quickOpetateCl,
|
|
741
763
|
rowSelection = props.rowSelection,
|
|
764
|
+
virtual = props.virtual,
|
|
742
765
|
sortOpen = props.sortOpen,
|
|
743
766
|
colSortOpen = props.colSortOpen,
|
|
744
767
|
filterChange = props.filterChange,
|
|
@@ -747,7 +770,8 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
747
770
|
recordCreatorProps = props.recordCreatorProps,
|
|
748
771
|
_props$shouldUpdate = props.shouldUpdate,
|
|
749
772
|
shouldUpdate = _props$shouldUpdate === void 0 ? false : _props$shouldUpdate,
|
|
750
|
-
resetProps = __rest(props
|
|
773
|
+
resetProps = __rest(props // const [dataSource, setDataSource] = useState([]);
|
|
774
|
+
, ["value", "columns", "isEdit", "isAdd", "onChange", "rowKey", "rowHoverEdit", "isUseForm", "isHoverEdit", "useQuickOpetate", "quickOpetateClearAll", "rowSelection", "virtual", "sortOpen", "colSortOpen", "filterChange", "size", "recordCreatorProps", "shouldUpdate"]); // const [dataSource, setDataSource] = useState([]);
|
|
751
775
|
|
|
752
776
|
|
|
753
777
|
var _useControllableValue = (0, _ahooks.useControllableValue)({
|
|
@@ -759,20 +783,15 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
759
783
|
setDataSource = _useControllableValue2[1]; // const [count, setCount] = useState(0);
|
|
760
784
|
|
|
761
785
|
|
|
762
|
-
var
|
|
763
|
-
_useState6 = (0, _slicedToArray2.default)(_useState5, 2),
|
|
764
|
-
_valid = _useState6[0],
|
|
765
|
-
setValid = _useState6[1];
|
|
766
|
-
|
|
767
|
-
var _useState7 = (0, _react.useState)([]),
|
|
786
|
+
var _useState7 = (0, _react.useState)({}),
|
|
768
787
|
_useState8 = (0, _slicedToArray2.default)(_useState7, 2),
|
|
769
|
-
|
|
770
|
-
|
|
788
|
+
_valid = _useState8[0],
|
|
789
|
+
setValid = _useState8[1];
|
|
771
790
|
|
|
772
791
|
var _useState9 = (0, _react.useState)([]),
|
|
773
792
|
_useState10 = (0, _slicedToArray2.default)(_useState9, 2),
|
|
774
|
-
|
|
775
|
-
|
|
793
|
+
localRowSelectList = _useState10[0],
|
|
794
|
+
setLocalRowSelectList = _useState10[1];
|
|
776
795
|
/** 当前展开的列 */
|
|
777
796
|
|
|
778
797
|
|
|
@@ -781,20 +800,10 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
781
800
|
expandedRowKeys = _useState12[0],
|
|
782
801
|
setExpandedRowKeys = _useState12[1];
|
|
783
802
|
|
|
784
|
-
var dataSourceRef = (0, _react.useRef)(
|
|
785
|
-
var
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
var onSortEnd = function onSortEnd(active, over) {
|
|
789
|
-
var cloneArr = (0, _toConsumableArray2.default)(dataSourceRef.current);
|
|
790
|
-
var oldIndex = cloneArr.findIndex(function (v) {
|
|
791
|
-
return v[_rowKey] === active;
|
|
792
|
-
});
|
|
793
|
-
var newIndex = cloneArr.findIndex(function (v) {
|
|
794
|
-
return v[_rowKey] === over;
|
|
795
|
-
});
|
|
796
|
-
setDataSource((0, _sortable.arrayMove)(cloneArr, oldIndex, newIndex));
|
|
797
|
-
};
|
|
803
|
+
var dataSourceRef = (0, _react.useRef)(dataSource);
|
|
804
|
+
var deepDataSourceRef = (0, _react.useRef)((0, _util.deepDataSourcePreKeys)(dataSource, _rowKey));
|
|
805
|
+
dataSourceRef.current = dataSource;
|
|
806
|
+
deepDataSourceRef.current = (0, _util.deepDataSourcePreKeys)(dataSource, _rowKey);
|
|
798
807
|
|
|
799
808
|
var onColSortEnd = function onColSortEnd(active, over) {
|
|
800
809
|
var _a;
|
|
@@ -832,29 +841,9 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
832
841
|
});
|
|
833
842
|
setDataSource(res); // onChange?.(res)
|
|
834
843
|
};
|
|
835
|
-
|
|
836
|
-
(0, _react.useEffect)(function () {
|
|
837
|
-
var _a;
|
|
838
|
-
|
|
839
|
-
dataSourceRef.current = dataSource;
|
|
840
|
-
deepDataSourceRef.current = (0, _util.deepDataSourcePreKeys)(dataSource, _rowKey);
|
|
841
|
-
|
|
842
|
-
if (sortOpen) {
|
|
843
|
-
var dataSourceKeys = dataSource === null || dataSource === void 0 ? void 0 : dataSource.map(function (item) {
|
|
844
|
-
return item[_rowKey];
|
|
845
|
-
}).join(',');
|
|
846
|
-
var setCallBackFalgKeys = ((_a = sortDataSorceRef.current) === null || _a === void 0 ? void 0 : _a.map(function (item) {
|
|
847
|
-
return item[_rowKey];
|
|
848
|
-
}).join(',')) || '';
|
|
849
|
-
|
|
850
|
-
if (dataSourceKeys !== setCallBackFalgKeys) {
|
|
851
|
-
setCallBackFalg(dataSource);
|
|
852
|
-
sortDataSorceRef.current = dataSource;
|
|
853
|
-
}
|
|
854
|
-
}
|
|
855
|
-
}, [dataSource]);
|
|
856
844
|
/** 本地缓存一个选择数据 */
|
|
857
845
|
|
|
846
|
+
|
|
858
847
|
(0, _react.useEffect)(function () {
|
|
859
848
|
if (rowSelection) {
|
|
860
849
|
var selectedRowKeys = rowSelection.selectedRowKeys;
|
|
@@ -1061,10 +1050,12 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
1061
1050
|
setDataSource(res);
|
|
1062
1051
|
};
|
|
1063
1052
|
|
|
1064
|
-
var handleCopy = function handleCopy(key, value) {
|
|
1053
|
+
var handleCopy = function handleCopy(key, value, type, rowIndex) {
|
|
1065
1054
|
var res = (0, _immer.produce)(dataSourceRef.current, function (draft) {
|
|
1066
|
-
draft === null || draft === void 0 ? void 0 : draft.forEach(function (item) {
|
|
1067
|
-
|
|
1055
|
+
draft === null || draft === void 0 ? void 0 : draft.forEach(function (item, index) {
|
|
1056
|
+
if (type === 'up' && index < rowIndex || type === 'down' && index > rowIndex) {
|
|
1057
|
+
item[key] = value;
|
|
1058
|
+
}
|
|
1068
1059
|
});
|
|
1069
1060
|
});
|
|
1070
1061
|
setDataSource(res);
|
|
@@ -1177,19 +1168,6 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
1177
1168
|
}
|
|
1178
1169
|
|
|
1179
1170
|
var newCol = Object.assign(Object.assign({}, col), {
|
|
1180
|
-
shouldCellUpdate: function shouldCellUpdate(record, prevRecord) {
|
|
1181
|
-
var _a;
|
|
1182
|
-
|
|
1183
|
-
var dataIndex = col.dataIndex,
|
|
1184
|
-
editable = col.editable,
|
|
1185
|
-
relevanceCols = col.relevanceCols;
|
|
1186
|
-
|
|
1187
|
-
if ((col === null || col === void 0 ? void 0 : col.fixed) || hasDisableOptions && hasDisableOptions.includes(dataIndex) || ((_a = col.componentProps) === null || _a === void 0 ? void 0 : _a.options) || editable === 'render' || !!relevanceCols || !!shouldUpdate || !!record.children) {
|
|
1188
|
-
return true;
|
|
1189
|
-
}
|
|
1190
|
-
|
|
1191
|
-
return record[dataIndex] !== prevRecord[dataIndex];
|
|
1192
|
-
},
|
|
1193
1171
|
onCell: function onCell(record, rowIndex) {
|
|
1194
1172
|
return {
|
|
1195
1173
|
getLength: dataSource.length,
|
|
@@ -1229,20 +1207,19 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
1229
1207
|
return mapColumns(col, index);
|
|
1230
1208
|
});
|
|
1231
1209
|
return res;
|
|
1232
|
-
}, [columns, isAdd, sortOpen, useQuickOpetate,
|
|
1233
|
-
var DraggableContainer = (0, _react.useCallback)(function (_a) {
|
|
1234
|
-
var _b;
|
|
1210
|
+
}, [columns, isAdd, sortOpen, useQuickOpetate, dataSource, (0, _toConsumableArray2.default)(memoOptions)]);
|
|
1235
1211
|
|
|
1236
|
-
|
|
1212
|
+
var onSortEnd = function onSortEnd(active, over) {
|
|
1213
|
+
var cloneArr = (0, _toConsumableArray2.default)(dataSourceRef.current);
|
|
1214
|
+
var oldIndex = cloneArr.findIndex(function (v) {
|
|
1215
|
+
return v[_rowKey] === active;
|
|
1216
|
+
});
|
|
1217
|
+
var newIndex = cloneArr.findIndex(function (v) {
|
|
1218
|
+
return v[_rowKey] === over;
|
|
1219
|
+
});
|
|
1220
|
+
setDataSource((0, _sortable.arrayMove)(cloneArr, oldIndex, newIndex));
|
|
1221
|
+
};
|
|
1237
1222
|
|
|
1238
|
-
return /*#__PURE__*/_react.default.createElement(_DndContainer.default, {
|
|
1239
|
-
move: onSortEnd
|
|
1240
|
-
}, /*#__PURE__*/_react.default.createElement(_sortableBox.default, {
|
|
1241
|
-
items: (_b = dataSourceRef.current) === null || _b === void 0 ? void 0 : _b.map(function (item) {
|
|
1242
|
-
return item[_rowKey];
|
|
1243
|
-
})
|
|
1244
|
-
}, /*#__PURE__*/_react.default.createElement("tbody", Object.assign({}, props))));
|
|
1245
|
-
}, [sortEditTable]);
|
|
1246
1223
|
var colDraggableContainer = (0, _react.useCallback)(function (_a) {
|
|
1247
1224
|
var _b;
|
|
1248
1225
|
|
|
@@ -1260,34 +1237,6 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
1260
1237
|
}, child);
|
|
1261
1238
|
}));
|
|
1262
1239
|
}, [columns]);
|
|
1263
|
-
var config = (0, _react.useMemo)(function () {
|
|
1264
|
-
var component = {
|
|
1265
|
-
body: Object.assign({
|
|
1266
|
-
row: sortOpen ? EditableSortRow : EditableRow,
|
|
1267
|
-
cell: EditableCell
|
|
1268
|
-
}, sortOpen ? {
|
|
1269
|
-
wrapper: DraggableContainer
|
|
1270
|
-
} : {})
|
|
1271
|
-
};
|
|
1272
|
-
|
|
1273
|
-
if (colSortOpen) {
|
|
1274
|
-
component['header'] = {
|
|
1275
|
-
row: colDraggableContainer
|
|
1276
|
-
};
|
|
1277
|
-
}
|
|
1278
|
-
|
|
1279
|
-
return Object.assign({
|
|
1280
|
-
pagination: false,
|
|
1281
|
-
tableLayout: 'fixed',
|
|
1282
|
-
scroll: {
|
|
1283
|
-
x: '100%'
|
|
1284
|
-
},
|
|
1285
|
-
rowKey: function rowKey(record) {
|
|
1286
|
-
return record[_rowKey] || record.index || Math.random();
|
|
1287
|
-
},
|
|
1288
|
-
components: component
|
|
1289
|
-
}, resetProps);
|
|
1290
|
-
}, [resultColumns, dataSource, sortOpen, colSortOpen, size]);
|
|
1291
1240
|
(0, _react.useImperativeHandle)(ref, function () {
|
|
1292
1241
|
return {
|
|
1293
1242
|
setRow: handleSave,
|
|
@@ -1299,6 +1248,46 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
1299
1248
|
var isShowAddAction = (0, _react.useMemo)(function () {
|
|
1300
1249
|
return isEdit && isAdd || isHoverEdit && isAdd;
|
|
1301
1250
|
}, [isEdit, isAdd, isHoverEdit]);
|
|
1251
|
+
var config = (0, _react.useRef)(Object.assign({
|
|
1252
|
+
pagination: false,
|
|
1253
|
+
tableLayout: 'fixed',
|
|
1254
|
+
scroll: {
|
|
1255
|
+
x: '100%'
|
|
1256
|
+
},
|
|
1257
|
+
rowKey: function rowKey(record) {
|
|
1258
|
+
return record[_rowKey] || record.index || Math.random();
|
|
1259
|
+
},
|
|
1260
|
+
components: {
|
|
1261
|
+
table: virtual ? _virtual.VirtualTable : null,
|
|
1262
|
+
body: Object.assign({
|
|
1263
|
+
row: function row(rowProps) {
|
|
1264
|
+
return sortOpen ? EditableSortRow(Object.assign(Object.assign({}, rowProps), {
|
|
1265
|
+
virtual: virtual
|
|
1266
|
+
})) : EditableRow(Object.assign(Object.assign({}, rowProps), {
|
|
1267
|
+
virtual: virtual
|
|
1268
|
+
}));
|
|
1269
|
+
},
|
|
1270
|
+
cell: MemoEditableCell
|
|
1271
|
+
}, sortOpen ? {
|
|
1272
|
+
wrapper: function wrapper(wrapperProps) {
|
|
1273
|
+
var _a;
|
|
1274
|
+
|
|
1275
|
+
return (0, _components.DraggableContainer)(Object.assign(Object.assign({}, wrapperProps), {
|
|
1276
|
+
virtual: virtual,
|
|
1277
|
+
keys: (_a = dataSourceRef.current) === null || _a === void 0 ? void 0 : _a.map(function (item) {
|
|
1278
|
+
return item[_rowKey];
|
|
1279
|
+
}),
|
|
1280
|
+
onSortEnd: onSortEnd
|
|
1281
|
+
}));
|
|
1282
|
+
}
|
|
1283
|
+
} : virtual ? {
|
|
1284
|
+
wrapper: _virtual.VirtualWrapper
|
|
1285
|
+
} : {}),
|
|
1286
|
+
header: {
|
|
1287
|
+
row: colSortOpen ? colDraggableContainer : null
|
|
1288
|
+
}
|
|
1289
|
+
}
|
|
1290
|
+
}, resetProps));
|
|
1302
1291
|
|
|
1303
1292
|
if (colSortOpen) {
|
|
1304
1293
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
@@ -1309,7 +1298,7 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
1309
1298
|
items: columns.reduce(function (acc, item) {
|
|
1310
1299
|
return [].concat((0, _toConsumableArray2.default)(acc), [item.dataIndex]);
|
|
1311
1300
|
}, [])
|
|
1312
|
-
}, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Table, Object.assign({}, config, {
|
|
1301
|
+
}, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Table, Object.assign({}, config.current, {
|
|
1313
1302
|
size: size || 'small',
|
|
1314
1303
|
columns: resultColumns,
|
|
1315
1304
|
rowClassName: "editable-row",
|
|
@@ -1343,7 +1332,7 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
1343
1332
|
|
|
1344
1333
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
1345
1334
|
className: "lm_editTable_warpper"
|
|
1346
|
-
}, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Table, Object.assign({}, config, {
|
|
1335
|
+
}, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Table, Object.assign({}, config.current, {
|
|
1347
1336
|
size: size || 'small',
|
|
1348
1337
|
columns: resultColumns,
|
|
1349
1338
|
rowClassName: "editable-row",
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
9
|
+
|
|
10
|
+
var _react = _interopRequireDefault(require("react"));
|
|
11
|
+
|
|
12
|
+
var _DndContainer = _interopRequireDefault(require("../DndContainer"));
|
|
13
|
+
|
|
14
|
+
var _sortableBox = _interopRequireDefault(require("../sortableBox"));
|
|
15
|
+
|
|
16
|
+
var _virtual = require("../virtual");
|
|
17
|
+
|
|
18
|
+
var __rest = void 0 && (void 0).__rest || function (s, e) {
|
|
19
|
+
var t = {};
|
|
20
|
+
|
|
21
|
+
for (var p in s) {
|
|
22
|
+
if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
26
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
|
|
27
|
+
}
|
|
28
|
+
return t;
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
var DraggableContainer = function DraggableContainer(_a) {
|
|
32
|
+
var keys = _a.keys,
|
|
33
|
+
onSortEnd = _a.onSortEnd,
|
|
34
|
+
virtual = _a.virtual,
|
|
35
|
+
props = __rest(_a, ["keys", "onSortEnd", "virtual"]);
|
|
36
|
+
|
|
37
|
+
return /*#__PURE__*/_react.default.createElement(_DndContainer.default, {
|
|
38
|
+
move: onSortEnd
|
|
39
|
+
}, /*#__PURE__*/_react.default.createElement(_sortableBox.default, {
|
|
40
|
+
items: keys
|
|
41
|
+
}, virtual ? /*#__PURE__*/_react.default.createElement(_virtual.VirtualWrapper, Object.assign({}, props)) : /*#__PURE__*/_react.default.createElement("tbody", Object.assign({}, props))));
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
var _default = DraggableContainer;
|
|
45
|
+
exports.default = _default;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import DraggableContainer from './DraggableContainer';
|
|
2
|
+
export { DraggableContainer };
|
|
3
|
+
declare const _default: {
|
|
4
|
+
DraggableContainer: ({ keys, onSortEnd, virtual, ...props }: {
|
|
5
|
+
[x: string]: any;
|
|
6
|
+
keys: any;
|
|
7
|
+
onSortEnd: any;
|
|
8
|
+
virtual: any;
|
|
9
|
+
}) => JSX.Element;
|
|
10
|
+
};
|
|
11
|
+
export default _default;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
Object.defineProperty(exports, "DraggableContainer", {
|
|
9
|
+
enumerable: true,
|
|
10
|
+
get: function get() {
|
|
11
|
+
return _DraggableContainer.default;
|
|
12
|
+
}
|
|
13
|
+
});
|
|
14
|
+
exports.default = void 0;
|
|
15
|
+
|
|
16
|
+
var _DraggableContainer = _interopRequireDefault(require("./DraggableContainer"));
|
|
17
|
+
|
|
18
|
+
var _default = {
|
|
19
|
+
DraggableContainer: _DraggableContainer.default
|
|
20
|
+
};
|
|
21
|
+
exports.default = _default;
|
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import React from 'react';
|
|
2
|
+
declare const _default: React.MemoExoticComponent<(props: any) => JSX.Element>;
|
|
3
|
+
export default _default;
|
|
@@ -1,18 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
8
|
exports.default = void 0;
|
|
9
9
|
|
|
10
|
-
var _react =
|
|
10
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
11
11
|
|
|
12
12
|
var _sortable = require("@dnd-kit/sortable");
|
|
13
13
|
|
|
14
14
|
var _utilities = require("@dnd-kit/utilities");
|
|
15
15
|
|
|
16
|
+
var _virtual = require("./virtual");
|
|
17
|
+
|
|
16
18
|
var __rest = void 0 && (void 0).__rest || function (s, e) {
|
|
17
19
|
var t = {};
|
|
18
20
|
|
|
@@ -30,7 +32,8 @@ var SortableItem = function SortableItem(props) {
|
|
|
30
32
|
var key = props['data-row-key'],
|
|
31
33
|
children = props.children,
|
|
32
34
|
className = props.className,
|
|
33
|
-
|
|
35
|
+
virtual = props.virtual,
|
|
36
|
+
resetField = __rest(props, ['data-row-key', "children", "className", "virtual"]);
|
|
34
37
|
|
|
35
38
|
var _useSortable = (0, _sortable.useSortable)({
|
|
36
39
|
id: key
|
|
@@ -44,12 +47,22 @@ var SortableItem = function SortableItem(props) {
|
|
|
44
47
|
transform: _utilities.CSS.Transform.toString(transform),
|
|
45
48
|
transition: transition
|
|
46
49
|
};
|
|
47
|
-
|
|
50
|
+
|
|
51
|
+
if (!virtual) {
|
|
52
|
+
return /*#__PURE__*/_react.default.createElement("tr", Object.assign({}, resetField, {
|
|
53
|
+
ref: setNodeRef,
|
|
54
|
+
key: key,
|
|
55
|
+
style: style
|
|
56
|
+
}, attributes), children);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
return /*#__PURE__*/_react.default.createElement(_virtual.VirtualRow, Object.assign({}, resetField, {
|
|
48
60
|
ref: setNodeRef,
|
|
49
61
|
key: key,
|
|
50
62
|
style: style
|
|
51
63
|
}, attributes), children);
|
|
52
64
|
};
|
|
53
65
|
|
|
54
|
-
var _default = SortableItem;
|
|
66
|
+
var _default = /*#__PURE__*/(0, _react.memo)(SortableItem);
|
|
67
|
+
|
|
55
68
|
exports.default = _default;
|
|
@@ -549,6 +549,9 @@ p {
|
|
|
549
549
|
letter-spacing: 0px;
|
|
550
550
|
color: var(--color-85);
|
|
551
551
|
}
|
|
552
|
+
.lm_editTable_warpper .lm_custom_cell_td {
|
|
553
|
+
position: relative;
|
|
554
|
+
}
|
|
552
555
|
.lm_editTable_warpper .lm_custom_cell_td .ant-form-item-control-input-content {
|
|
553
556
|
display: flex;
|
|
554
557
|
flex-direction: row;
|
|
@@ -560,6 +563,32 @@ p {
|
|
|
560
563
|
.lm_editTable_warpper .lm_custom_cell_td .ant-table-row-expand-icon {
|
|
561
564
|
margin-top: 6px;
|
|
562
565
|
}
|
|
566
|
+
.lm_editTable_warpper .lm_custom_cell_td .quick_copy_warp {
|
|
567
|
+
font-size: 8px;
|
|
568
|
+
position: absolute;
|
|
569
|
+
left: calc(50% - 10px);
|
|
570
|
+
z-index: 100;
|
|
571
|
+
width: 20px;
|
|
572
|
+
height: 10px;
|
|
573
|
+
background-color: var(--color-6);
|
|
574
|
+
display: flex;
|
|
575
|
+
align-items: center;
|
|
576
|
+
justify-content: center;
|
|
577
|
+
color: #D8D8D8;
|
|
578
|
+
}
|
|
579
|
+
.lm_editTable_warpper .lm_custom_cell_td .quick_copy_warp:hover {
|
|
580
|
+
cursor: pointer;
|
|
581
|
+
background-color: var(--primary-color);
|
|
582
|
+
color: #fff;
|
|
583
|
+
}
|
|
584
|
+
.lm_editTable_warpper .lm_custom_cell_td .quick_copy_up {
|
|
585
|
+
top: -4px;
|
|
586
|
+
left: calc(50% - 10px);
|
|
587
|
+
}
|
|
588
|
+
.lm_editTable_warpper .lm_custom_cell_td .quick_copy_down {
|
|
589
|
+
bottom: -6px;
|
|
590
|
+
left: calc(50% - 10px);
|
|
591
|
+
}
|
|
563
592
|
.lm_editTable_warpper .lm_editTable_cell_edit {
|
|
564
593
|
height: 40px;
|
|
565
594
|
padding: 8px 8px !important;
|