linkmore-design 1.1.11 → 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/Cascader/demos/formItem.d.ts +2 -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/Select/demos/formItem.d.ts +2 -0
- package/dist/Select/index.d.ts +1 -0
- package/dist/TreeSelect/demos/formItem.d.ts +2 -0
- package/dist/TreeSelect/index.d.ts +8 -3
- package/dist/index.umd.js +629 -226
- package/dist/index.umd.min.js +5 -5
- package/dist/variables.css +47 -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 +200 -158
- 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 +47 -0
- package/es/LmEditTable/style/variables.css +47 -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/Select/index.d.ts +1 -0
- package/es/Select/index.js +38 -4
- package/es/TreeSelect/index.d.ts +8 -3
- package/es/TreeSelect/index.js +74 -1
- package/es/hooks/useEvent/index.js +1 -1
- package/es/styles/variables.css +47 -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 +195 -153
- 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 +47 -0
- package/lib/LmEditTable/style/variables.css +47 -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/Select/index.d.ts +1 -0
- package/lib/Select/index.js +37 -3
- package/lib/TreeSelect/index.d.ts +8 -3
- package/lib/TreeSelect/index.js +78 -1
- package/lib/hooks/useEvent/index.js +1 -1
- package/lib/styles/variables.css +47 -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) {
|
|
@@ -271,6 +274,15 @@ var Opetate = function Opetate(_ref) {
|
|
|
271
274
|
options = _ref$options === void 0 ? ['add', 'delete'] : _ref$options,
|
|
272
275
|
getLength = _ref.getLength,
|
|
273
276
|
quickOpetateClearAll = _ref.quickOpetateClearAll;
|
|
277
|
+
|
|
278
|
+
var appendChildren = function appendChildren() {
|
|
279
|
+
handleAdd === null || handleAdd === void 0 ? void 0 : handleAdd(record, true);
|
|
280
|
+
};
|
|
281
|
+
|
|
282
|
+
var appendAdd = function appendAdd() {
|
|
283
|
+
handleAdd === null || handleAdd === void 0 ? void 0 : handleAdd(record);
|
|
284
|
+
};
|
|
285
|
+
|
|
274
286
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
275
287
|
style: {
|
|
276
288
|
display: 'flex',
|
|
@@ -291,7 +303,27 @@ var Opetate = function Opetate(_ref) {
|
|
|
291
303
|
onClick: function onClick() {
|
|
292
304
|
return handleDelete(record[rowKey]);
|
|
293
305
|
}
|
|
294
|
-
}), options.includes('add') && /*#__PURE__*/_react.default.createElement(_linkmoreDesign.
|
|
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, {
|
|
307
|
+
placement: "bottom",
|
|
308
|
+
overlayClassName: "lm_table_append_add_popover",
|
|
309
|
+
open: open,
|
|
310
|
+
title: null,
|
|
311
|
+
content: /*#__PURE__*/_react.default.createElement("ul", null, /*#__PURE__*/_react.default.createElement("li", {
|
|
312
|
+
onClick: appendAdd
|
|
313
|
+
}, "\u6DFB\u52A0\u5E73\u7EA7"), /*#__PURE__*/_react.default.createElement("li", {
|
|
314
|
+
onClick: appendChildren
|
|
315
|
+
}, "\u6DFB\u52A0\u5B50\u7EA7")),
|
|
316
|
+
trigger: "hover"
|
|
317
|
+
}, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Button, {
|
|
318
|
+
type: "link",
|
|
319
|
+
size: "small",
|
|
320
|
+
icon: /*#__PURE__*/_react.default.createElement(_linkmoreDesign.IconFont, {
|
|
321
|
+
type: "lmweb-plus-circle-fill",
|
|
322
|
+
style: {
|
|
323
|
+
fontSize: 16
|
|
324
|
+
}
|
|
325
|
+
})
|
|
326
|
+
})) : /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Button, {
|
|
295
327
|
type: "link",
|
|
296
328
|
size: "small",
|
|
297
329
|
icon: /*#__PURE__*/_react.default.createElement(_linkmoreDesign.IconFont, {
|
|
@@ -301,17 +333,10 @@ var Opetate = function Opetate(_ref) {
|
|
|
301
333
|
}
|
|
302
334
|
}),
|
|
303
335
|
onClick: function onClick() {
|
|
304
|
-
return handleAdd(record);
|
|
336
|
+
return handleAdd(record, (options === null || options === void 0 ? void 0 : options.includes('addInChildren')) ? true : false);
|
|
305
337
|
}
|
|
306
338
|
}));
|
|
307
|
-
};
|
|
308
|
-
// const toStringValue = JSON.stringify(verifyValue);
|
|
309
|
-
// if (verifyValue === undefined || verifyValue === null || verifyValue === '' || toStringValue === '[]' || toStringValue === '{}') {
|
|
310
|
-
// return false;
|
|
311
|
-
// }
|
|
312
|
-
// return true;
|
|
313
|
-
// }
|
|
314
|
-
|
|
339
|
+
};
|
|
315
340
|
/*
|
|
316
341
|
表格单元格
|
|
317
342
|
editEnum: 下拉框时的数据数组(非数组时是配置设置)
|
|
@@ -363,6 +388,12 @@ var EditableCell = function EditableCell(props) {
|
|
|
363
388
|
|
|
364
389
|
var inputRef = (0, _react.useRef)(null);
|
|
365
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
|
+
|
|
366
397
|
(0, _react.useEffect)(function () {
|
|
367
398
|
var _a;
|
|
368
399
|
|
|
@@ -373,13 +404,7 @@ var EditableCell = function EditableCell(props) {
|
|
|
373
404
|
|
|
374
405
|
var toggleEdit = function toggleEdit() {
|
|
375
406
|
setEditing(!editing); // form.setFieldsValue({ [dataIndex]: record[dataIndex] });
|
|
376
|
-
}; //
|
|
377
|
-
// const focusCapturedRef = useRef(false);
|
|
378
|
-
// const curValue = useMemo(() => {
|
|
379
|
-
// return record?.dataIndex
|
|
380
|
-
// }, [record])
|
|
381
|
-
// const curValueIsValid = isValidValue(curValue);
|
|
382
|
-
// 校验保存
|
|
407
|
+
}; // 校验保存
|
|
383
408
|
|
|
384
409
|
|
|
385
410
|
var save = function save(row) {
|
|
@@ -462,15 +487,15 @@ var EditableCell = function EditableCell(props) {
|
|
|
462
487
|
/** 快捷刷子,把当前的所有列的值,刷成当前的选中的列 */
|
|
463
488
|
|
|
464
489
|
|
|
465
|
-
var copyKey = function copyKey(e) {
|
|
490
|
+
var copyKey = function copyKey(e, type) {
|
|
466
491
|
e === null || e === void 0 ? void 0 : e.stopPropagation();
|
|
467
492
|
var dataIndex = col.dataIndex;
|
|
468
|
-
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);
|
|
469
494
|
};
|
|
470
495
|
|
|
471
496
|
var Control = function Control(con) {
|
|
472
497
|
var resultComponentProps = (0, _lodash.isFunction)(componentProps) ? componentProps === null || componentProps === void 0 ? void 0 : componentProps(record, col) : componentProps;
|
|
473
|
-
var clearAttrComponentProps = (0, _lodash.omit)(resultComponentProps, ['optionOnly', 'isOnlyValue']);
|
|
498
|
+
var clearAttrComponentProps = (0, _lodash.omit)(resultComponentProps, ['optionOnly', 'isOnlyValue', 'quickcopy']);
|
|
474
499
|
|
|
475
500
|
switch (con) {
|
|
476
501
|
case 'input':
|
|
@@ -491,12 +516,6 @@ var EditableCell = function EditableCell(props) {
|
|
|
491
516
|
noStyle: true
|
|
492
517
|
}, /*#__PURE__*/_react.default.cloneElement(resultComponentProps.addonAfter, {
|
|
493
518
|
onChange: handleFormItemChange
|
|
494
|
-
})) : null,
|
|
495
|
-
suffix: resultComponentProps.quickcopy ? /*#__PURE__*/_react.default.createElement("span", {
|
|
496
|
-
className: 'lm_table_quickcopy'
|
|
497
|
-
}, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.IconFont, {
|
|
498
|
-
onClick: copyKey,
|
|
499
|
-
type: 'lmweb-icon_m_brush'
|
|
500
519
|
})) : null
|
|
501
520
|
}));
|
|
502
521
|
|
|
@@ -579,7 +598,7 @@ var EditableCell = function EditableCell(props) {
|
|
|
579
598
|
|
|
580
599
|
case 'switch':
|
|
581
600
|
return /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Switch, Object.assign({
|
|
582
|
-
size:
|
|
601
|
+
size: "small"
|
|
583
602
|
}, clearAttrComponentProps, {
|
|
584
603
|
onChange: handleFormItemChange
|
|
585
604
|
}));
|
|
@@ -668,8 +687,7 @@ var EditableCell = function EditableCell(props) {
|
|
|
668
687
|
}
|
|
669
688
|
|
|
670
689
|
return childNode;
|
|
671
|
-
}, [col, isEdit, editing, getLength]); //
|
|
672
|
-
// 出现死循环找我
|
|
690
|
+
}, [col, isEdit, editing, getLength]); // 出现死循环找我
|
|
673
691
|
|
|
674
692
|
(0, _react.useEffect)(function () {
|
|
675
693
|
var editable = col.editable,
|
|
@@ -677,22 +695,55 @@ var EditableCell = function EditableCell(props) {
|
|
|
677
695
|
|
|
678
696
|
if (isEdit && editable) {
|
|
679
697
|
form.setFieldsValue((0, _defineProperty2.default)({}, dataIndex, editable === 'date' ? (0, _moment.default)(record[dataIndex]) : record[dataIndex]));
|
|
680
|
-
}
|
|
681
|
-
// (isEdit && editable && record[dataIndex]) ||
|
|
682
|
-
// (isHoverEdit && editable && record[dataIndex])
|
|
683
|
-
// ) {
|
|
684
|
-
// form.setFieldsValue({
|
|
685
|
-
// [dataIndex]: editable === 'date' ? moment(record[dataIndex]) : record[dataIndex],
|
|
686
|
-
// })
|
|
687
|
-
// }
|
|
688
|
-
|
|
698
|
+
}
|
|
689
699
|
}, [record]);
|
|
700
|
+
|
|
701
|
+
var handleTdHover = function handleTdHover() {
|
|
702
|
+
setHoverStatus(true);
|
|
703
|
+
};
|
|
704
|
+
|
|
705
|
+
var handleTdMouseOut = function handleTdMouseOut() {
|
|
706
|
+
setHoverStatus(false);
|
|
707
|
+
};
|
|
708
|
+
|
|
690
709
|
return /*#__PURE__*/_react.default.createElement("td", Object.assign({}, (0, _lodash.omit)(clearProps, ['dataIndex']), {
|
|
691
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,
|
|
692
713
|
key: "r".concat(rowIndex, "_c").concat(colIndex)
|
|
693
|
-
}),
|
|
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
|
+
})));
|
|
694
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')
|
|
738
|
+
|
|
739
|
+
/** TODO: 在record中带有children,子列表数据修改之后,会导致父级的record对比不一样 */
|
|
695
740
|
|
|
741
|
+
if (!(0, _util.checkMemoShouldUploadSpecialFun)(prev, next)) {
|
|
742
|
+
return false;
|
|
743
|
+
}
|
|
744
|
+
|
|
745
|
+
return (0, _lodash.isEqual)(p, n);
|
|
746
|
+
});
|
|
696
747
|
var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
697
748
|
var defaultData = props.value,
|
|
698
749
|
columns = props.columns,
|
|
@@ -710,6 +761,7 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
710
761
|
_props$quickOpetateCl = props.quickOpetateClearAll,
|
|
711
762
|
quickOpetateClearAll = _props$quickOpetateCl === void 0 ? true : _props$quickOpetateCl,
|
|
712
763
|
rowSelection = props.rowSelection,
|
|
764
|
+
virtual = props.virtual,
|
|
713
765
|
sortOpen = props.sortOpen,
|
|
714
766
|
colSortOpen = props.colSortOpen,
|
|
715
767
|
filterChange = props.filterChange,
|
|
@@ -718,7 +770,8 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
718
770
|
recordCreatorProps = props.recordCreatorProps,
|
|
719
771
|
_props$shouldUpdate = props.shouldUpdate,
|
|
720
772
|
shouldUpdate = _props$shouldUpdate === void 0 ? false : _props$shouldUpdate,
|
|
721
|
-
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([]);
|
|
722
775
|
|
|
723
776
|
|
|
724
777
|
var _useControllableValue = (0, _ahooks.useControllableValue)({
|
|
@@ -730,20 +783,15 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
730
783
|
setDataSource = _useControllableValue2[1]; // const [count, setCount] = useState(0);
|
|
731
784
|
|
|
732
785
|
|
|
733
|
-
var
|
|
734
|
-
_useState6 = (0, _slicedToArray2.default)(_useState5, 2),
|
|
735
|
-
_valid = _useState6[0],
|
|
736
|
-
setValid = _useState6[1];
|
|
737
|
-
|
|
738
|
-
var _useState7 = (0, _react.useState)([]),
|
|
786
|
+
var _useState7 = (0, _react.useState)({}),
|
|
739
787
|
_useState8 = (0, _slicedToArray2.default)(_useState7, 2),
|
|
740
|
-
|
|
741
|
-
|
|
788
|
+
_valid = _useState8[0],
|
|
789
|
+
setValid = _useState8[1];
|
|
742
790
|
|
|
743
791
|
var _useState9 = (0, _react.useState)([]),
|
|
744
792
|
_useState10 = (0, _slicedToArray2.default)(_useState9, 2),
|
|
745
|
-
|
|
746
|
-
|
|
793
|
+
localRowSelectList = _useState10[0],
|
|
794
|
+
setLocalRowSelectList = _useState10[1];
|
|
747
795
|
/** 当前展开的列 */
|
|
748
796
|
|
|
749
797
|
|
|
@@ -752,20 +800,10 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
752
800
|
expandedRowKeys = _useState12[0],
|
|
753
801
|
setExpandedRowKeys = _useState12[1];
|
|
754
802
|
|
|
755
|
-
var dataSourceRef = (0, _react.useRef)(
|
|
756
|
-
var
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
var onSortEnd = function onSortEnd(active, over) {
|
|
760
|
-
var cloneArr = (0, _toConsumableArray2.default)(dataSourceRef.current);
|
|
761
|
-
var oldIndex = cloneArr.findIndex(function (v) {
|
|
762
|
-
return v[_rowKey] === active;
|
|
763
|
-
});
|
|
764
|
-
var newIndex = cloneArr.findIndex(function (v) {
|
|
765
|
-
return v[_rowKey] === over;
|
|
766
|
-
});
|
|
767
|
-
setDataSource((0, _sortable.arrayMove)(cloneArr, oldIndex, newIndex));
|
|
768
|
-
};
|
|
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);
|
|
769
807
|
|
|
770
808
|
var onColSortEnd = function onColSortEnd(active, over) {
|
|
771
809
|
var _a;
|
|
@@ -803,29 +841,9 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
803
841
|
});
|
|
804
842
|
setDataSource(res); // onChange?.(res)
|
|
805
843
|
};
|
|
806
|
-
|
|
807
|
-
(0, _react.useEffect)(function () {
|
|
808
|
-
var _a;
|
|
809
|
-
|
|
810
|
-
dataSourceRef.current = dataSource;
|
|
811
|
-
deepDataSourceRef.current = (0, _util.deepDataSourcePreKeys)(dataSource, _rowKey);
|
|
812
|
-
|
|
813
|
-
if (sortOpen) {
|
|
814
|
-
var dataSourceKeys = dataSource === null || dataSource === void 0 ? void 0 : dataSource.map(function (item) {
|
|
815
|
-
return item[_rowKey];
|
|
816
|
-
}).join(',');
|
|
817
|
-
var setCallBackFalgKeys = ((_a = sortDataSorceRef.current) === null || _a === void 0 ? void 0 : _a.map(function (item) {
|
|
818
|
-
return item[_rowKey];
|
|
819
|
-
}).join(',')) || '';
|
|
820
|
-
|
|
821
|
-
if (dataSourceKeys !== setCallBackFalgKeys) {
|
|
822
|
-
setCallBackFalg(dataSource);
|
|
823
|
-
sortDataSorceRef.current = dataSource;
|
|
824
|
-
}
|
|
825
|
-
}
|
|
826
|
-
}, [dataSource]);
|
|
827
844
|
/** 本地缓存一个选择数据 */
|
|
828
845
|
|
|
846
|
+
|
|
829
847
|
(0, _react.useEffect)(function () {
|
|
830
848
|
if (rowSelection) {
|
|
831
849
|
var selectedRowKeys = rowSelection.selectedRowKeys;
|
|
@@ -976,17 +994,31 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
976
994
|
/** 快捷添加 */
|
|
977
995
|
|
|
978
996
|
|
|
979
|
-
var handleTableRowAdd = function handleTableRowAdd(record) {
|
|
997
|
+
var handleTableRowAdd = function handleTableRowAdd(record, isAppendInChindren) {
|
|
980
998
|
var _a, _b;
|
|
981
999
|
|
|
982
1000
|
var preKeys = (_b = (_a = deepDataSourceRef === null || deepDataSourceRef === void 0 ? void 0 : deepDataSourceRef.current) === null || _a === void 0 ? void 0 : _a[record[_rowKey]]) === null || _b === void 0 ? void 0 : _b.preKeys;
|
|
983
1001
|
var res = (0, _immer.produce)(dataSourceRef.current, function (draft) {
|
|
1002
|
+
var _a, _b, _c, _d;
|
|
1003
|
+
|
|
984
1004
|
if (preKeys.length > 1) {
|
|
985
1005
|
var deeps = function deeps(children) {
|
|
986
1006
|
children === null || children === void 0 ? void 0 : children.forEach(function (item, index) {
|
|
1007
|
+
var _a;
|
|
1008
|
+
|
|
987
1009
|
if (preKeys === null || preKeys === void 0 ? void 0 : preKeys.includes(item[_rowKey])) {
|
|
988
1010
|
if (item[_rowKey] === record[_rowKey]) {
|
|
989
|
-
|
|
1011
|
+
if (isAppendInChindren) {
|
|
1012
|
+
if (item === null || item === void 0 ? void 0 : item.children) {
|
|
1013
|
+
(_a = item === null || item === void 0 ? void 0 : item.children) === null || _a === void 0 ? void 0 : _a.push((0, _defineProperty2.default)({}, _rowKey, "".concat(Date.now())));
|
|
1014
|
+
} else {
|
|
1015
|
+
item.children = [(0, _defineProperty2.default)({}, _rowKey, "".concat(Date.now()))];
|
|
1016
|
+
}
|
|
1017
|
+
|
|
1018
|
+
!expandedRowKeys.includes(item[_rowKey]) && setExpandedRowKeys([].concat((0, _toConsumableArray2.default)(expandedRowKeys), [item[_rowKey]]));
|
|
1019
|
+
} else {
|
|
1020
|
+
children.splice(index + 1, 0, (0, _defineProperty2.default)({}, _rowKey, "".concat(Date.now())));
|
|
1021
|
+
}
|
|
990
1022
|
} else if (item.children) {
|
|
991
1023
|
deeps(item.children);
|
|
992
1024
|
}
|
|
@@ -1001,17 +1033,29 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
1001
1033
|
});
|
|
1002
1034
|
|
|
1003
1035
|
if (index !== -1) {
|
|
1004
|
-
|
|
1036
|
+
if (isAppendInChindren) {
|
|
1037
|
+
if ((_a = draft[index].children) === null || _a === void 0 ? void 0 : _a.length) {
|
|
1038
|
+
(_b = draft[index].children) === null || _b === void 0 ? void 0 : _b.push((0, _defineProperty2.default)({}, _rowKey, "".concat(Date.now())));
|
|
1039
|
+
} else {
|
|
1040
|
+
draft[index].children = [(0, _defineProperty2.default)({}, _rowKey, "".concat(Date.now()))];
|
|
1041
|
+
}
|
|
1042
|
+
|
|
1043
|
+
!expandedRowKeys.includes((_c = draft[index]) === null || _c === void 0 ? void 0 : _c[_rowKey]) && setExpandedRowKeys([].concat((0, _toConsumableArray2.default)(expandedRowKeys), [(_d = draft[index]) === null || _d === void 0 ? void 0 : _d[_rowKey]]));
|
|
1044
|
+
} else {
|
|
1045
|
+
draft.splice(index + 1, 0, (0, _defineProperty2.default)({}, _rowKey, "".concat(Date.now())));
|
|
1046
|
+
}
|
|
1005
1047
|
}
|
|
1006
1048
|
}
|
|
1007
1049
|
});
|
|
1008
1050
|
setDataSource(res);
|
|
1009
1051
|
};
|
|
1010
1052
|
|
|
1011
|
-
var handleCopy = function handleCopy(key, value) {
|
|
1053
|
+
var handleCopy = function handleCopy(key, value, type, rowIndex) {
|
|
1012
1054
|
var res = (0, _immer.produce)(dataSourceRef.current, function (draft) {
|
|
1013
|
-
draft === null || draft === void 0 ? void 0 : draft.forEach(function (item) {
|
|
1014
|
-
|
|
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
|
+
}
|
|
1015
1059
|
});
|
|
1016
1060
|
});
|
|
1017
1061
|
setDataSource(res);
|
|
@@ -1038,9 +1082,9 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
1038
1082
|
|
|
1039
1083
|
var DisableOptions = (0, _react.useMemo)(function () {
|
|
1040
1084
|
var newColumns = columns === null || columns === void 0 ? void 0 : columns.map(function (item) {
|
|
1041
|
-
var
|
|
1042
|
-
optionOnly =
|
|
1043
|
-
options =
|
|
1085
|
+
var _ref5 = item.componentProps || {},
|
|
1086
|
+
optionOnly = _ref5.optionOnly,
|
|
1087
|
+
options = _ref5.options;
|
|
1044
1088
|
|
|
1045
1089
|
if (optionOnly && options) {
|
|
1046
1090
|
var dataIndex = item.dataIndex;
|
|
@@ -1124,19 +1168,6 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
1124
1168
|
}
|
|
1125
1169
|
|
|
1126
1170
|
var newCol = Object.assign(Object.assign({}, col), {
|
|
1127
|
-
shouldCellUpdate: function shouldCellUpdate(record, prevRecord) {
|
|
1128
|
-
var _a;
|
|
1129
|
-
|
|
1130
|
-
var dataIndex = col.dataIndex,
|
|
1131
|
-
editable = col.editable,
|
|
1132
|
-
relevanceCols = col.relevanceCols;
|
|
1133
|
-
|
|
1134
|
-
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) {
|
|
1135
|
-
return true;
|
|
1136
|
-
}
|
|
1137
|
-
|
|
1138
|
-
return record[dataIndex] !== prevRecord[dataIndex];
|
|
1139
|
-
},
|
|
1140
1171
|
onCell: function onCell(record, rowIndex) {
|
|
1141
1172
|
return {
|
|
1142
1173
|
getLength: dataSource.length,
|
|
@@ -1176,20 +1207,19 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
1176
1207
|
return mapColumns(col, index);
|
|
1177
1208
|
});
|
|
1178
1209
|
return res;
|
|
1179
|
-
}, [columns, isAdd, sortOpen, useQuickOpetate,
|
|
1180
|
-
var DraggableContainer = (0, _react.useCallback)(function (_a) {
|
|
1181
|
-
var _b;
|
|
1210
|
+
}, [columns, isAdd, sortOpen, useQuickOpetate, dataSource, (0, _toConsumableArray2.default)(memoOptions)]);
|
|
1182
1211
|
|
|
1183
|
-
|
|
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
|
+
};
|
|
1184
1222
|
|
|
1185
|
-
return /*#__PURE__*/_react.default.createElement(_DndContainer.default, {
|
|
1186
|
-
move: onSortEnd
|
|
1187
|
-
}, /*#__PURE__*/_react.default.createElement(_sortableBox.default, {
|
|
1188
|
-
items: (_b = dataSourceRef.current) === null || _b === void 0 ? void 0 : _b.map(function (item) {
|
|
1189
|
-
return item[_rowKey];
|
|
1190
|
-
})
|
|
1191
|
-
}, /*#__PURE__*/_react.default.createElement("tbody", Object.assign({}, props))));
|
|
1192
|
-
}, [sortEditTable]);
|
|
1193
1223
|
var colDraggableContainer = (0, _react.useCallback)(function (_a) {
|
|
1194
1224
|
var _b;
|
|
1195
1225
|
|
|
@@ -1207,34 +1237,6 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
1207
1237
|
}, child);
|
|
1208
1238
|
}));
|
|
1209
1239
|
}, [columns]);
|
|
1210
|
-
var config = (0, _react.useMemo)(function () {
|
|
1211
|
-
var component = {
|
|
1212
|
-
body: Object.assign({
|
|
1213
|
-
row: sortOpen ? EditableSortRow : EditableRow,
|
|
1214
|
-
cell: EditableCell
|
|
1215
|
-
}, sortOpen ? {
|
|
1216
|
-
wrapper: DraggableContainer
|
|
1217
|
-
} : {})
|
|
1218
|
-
};
|
|
1219
|
-
|
|
1220
|
-
if (colSortOpen) {
|
|
1221
|
-
component['header'] = {
|
|
1222
|
-
row: colDraggableContainer
|
|
1223
|
-
};
|
|
1224
|
-
}
|
|
1225
|
-
|
|
1226
|
-
return Object.assign({
|
|
1227
|
-
pagination: false,
|
|
1228
|
-
tableLayout: 'fixed',
|
|
1229
|
-
scroll: {
|
|
1230
|
-
x: '100%'
|
|
1231
|
-
},
|
|
1232
|
-
rowKey: function rowKey(record) {
|
|
1233
|
-
return record[_rowKey] || record.index || Math.random();
|
|
1234
|
-
},
|
|
1235
|
-
components: component
|
|
1236
|
-
}, resetProps);
|
|
1237
|
-
}, [resultColumns, dataSource, sortOpen, colSortOpen, size]);
|
|
1238
1240
|
(0, _react.useImperativeHandle)(ref, function () {
|
|
1239
1241
|
return {
|
|
1240
1242
|
setRow: handleSave,
|
|
@@ -1246,6 +1248,46 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
1246
1248
|
var isShowAddAction = (0, _react.useMemo)(function () {
|
|
1247
1249
|
return isEdit && isAdd || isHoverEdit && isAdd;
|
|
1248
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));
|
|
1249
1291
|
|
|
1250
1292
|
if (colSortOpen) {
|
|
1251
1293
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
@@ -1256,7 +1298,7 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
1256
1298
|
items: columns.reduce(function (acc, item) {
|
|
1257
1299
|
return [].concat((0, _toConsumableArray2.default)(acc), [item.dataIndex]);
|
|
1258
1300
|
}, [])
|
|
1259
|
-
}, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Table, Object.assign({}, config, {
|
|
1301
|
+
}, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Table, Object.assign({}, config.current, {
|
|
1260
1302
|
size: size || 'small',
|
|
1261
1303
|
columns: resultColumns,
|
|
1262
1304
|
rowClassName: "editable-row",
|
|
@@ -1290,7 +1332,7 @@ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
1290
1332
|
|
|
1291
1333
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
1292
1334
|
className: "lm_editTable_warpper"
|
|
1293
|
-
}, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Table, Object.assign({}, config, {
|
|
1335
|
+
}, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Table, Object.assign({}, config.current, {
|
|
1294
1336
|
size: size || 'small',
|
|
1295
1337
|
columns: resultColumns,
|
|
1296
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;
|