linkmore-design 1.1.5 → 1.1.6

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.
Files changed (53) hide show
  1. package/dist/LmEditTable/util.d.ts +6 -0
  2. package/dist/LmFilter/filterFns/index.d.ts +1 -0
  3. package/dist/LmUpload/fns/index.d.ts +1 -1
  4. package/dist/index.umd.css +93 -93
  5. package/dist/index.umd.js +351 -161
  6. package/dist/index.umd.min.css +1 -1
  7. package/dist/index.umd.min.js +7 -7
  8. package/dist/variables.css +22 -8
  9. package/es/Button/index.js +4 -1
  10. package/es/Button/style/index.css +0 -4
  11. package/es/Button/style/variables.css +0 -4
  12. package/es/CardTable/style/index.css +19 -4
  13. package/es/CardTable/style/variables.css +19 -4
  14. package/es/Input/index.js +3 -3
  15. package/es/LmEditTable/EditTable.js +189 -116
  16. package/es/LmEditTable/style/index.css +3 -0
  17. package/es/LmEditTable/style/variables.css +3 -0
  18. package/es/LmEditTable/util.d.ts +6 -0
  19. package/es/LmEditTable/util.js +29 -1
  20. package/es/LmFilter/clearFilter/index.js +3 -1
  21. package/es/LmFilter/components/EmptyFilter.js +2 -2
  22. package/es/LmFilter/filterFns/index.d.ts +1 -0
  23. package/es/LmFilter/filterFns/index.js +6 -1
  24. package/es/LmFilter/wrapper/FilterRoot.js +1 -1
  25. package/es/LmTable/Table.js +1 -1
  26. package/es/LmUpload/LmUpload.js +1 -0
  27. package/es/LmUpload/fns/index.d.ts +1 -1
  28. package/es/LmUpload/fns/index.js +105 -33
  29. package/es/message/index.js +4 -1
  30. package/es/styles/variables.css +22 -8
  31. package/lib/Button/index.js +6 -1
  32. package/lib/Button/style/index.css +0 -4
  33. package/lib/Button/style/variables.css +0 -4
  34. package/lib/CardTable/style/index.css +19 -4
  35. package/lib/CardTable/style/variables.css +19 -4
  36. package/lib/Input/index.js +3 -3
  37. package/lib/LmEditTable/EditTable.js +188 -115
  38. package/lib/LmEditTable/style/index.css +3 -0
  39. package/lib/LmEditTable/style/variables.css +3 -0
  40. package/lib/LmEditTable/util.d.ts +6 -0
  41. package/lib/LmEditTable/util.js +40 -1
  42. package/lib/LmFilter/clearFilter/index.js +3 -1
  43. package/lib/LmFilter/components/EmptyFilter.js +2 -2
  44. package/lib/LmFilter/filterFns/index.d.ts +1 -0
  45. package/lib/LmFilter/filterFns/index.js +6 -1
  46. package/lib/LmFilter/wrapper/FilterRoot.js +1 -1
  47. package/lib/LmTable/Table.js +1 -1
  48. package/lib/LmUpload/LmUpload.js +1 -0
  49. package/lib/LmUpload/fns/index.d.ts +1 -1
  50. package/lib/LmUpload/fns/index.js +105 -31
  51. package/lib/message/index.js +6 -1
  52. package/lib/styles/variables.css +22 -8
  53. package/package.json +1 -1
@@ -64,7 +64,7 @@ import SortableItem from './sortableItem';
64
64
  import ColSortableItem from './sortableItemCol';
65
65
  import DragHandle from './DragHandle';
66
66
  import UploadOss from '../UploadOss';
67
- import { isObjEmpty } from './util';
67
+ import { isObjEmpty, deepDataSourcePreKeys, isExpandRow } from './util';
68
68
  import cls from "classnames";
69
69
  var UploadBtn = UploadOss.UploadBtn;
70
70
  var EditableContext = /*#__PURE__*/React.createContext(null); // 表格行
@@ -435,6 +435,7 @@ var EditableCell = function EditableCell(props) {
435
435
 
436
436
  var Control = function Control(con) {
437
437
  var resultComponentProps = isFunction(componentProps) ? componentProps === null || componentProps === void 0 ? void 0 : componentProps(record, col) : componentProps;
438
+ var clearAttrComponentProps = omit(resultComponentProps, ['optionOnly', 'isOnlyValue']);
438
439
 
439
440
  switch (con) {
440
441
  case 'input':
@@ -443,7 +444,7 @@ var EditableCell = function EditableCell(props) {
443
444
  onBlur: handleFormItemChange,
444
445
  ref: inputRef,
445
446
  placeholder: "\u8BF7\u8F93\u5165"
446
- }, resultComponentProps, {
447
+ }, clearAttrComponentProps, {
447
448
  addonBefore: resultComponentProps.addonBefore ? /*#__PURE__*/React.createElement(Form.Item, {
448
449
  name: [col.dataIndex, 'addonBeforeValue'],
449
450
  noStyle: true
@@ -483,13 +484,13 @@ var EditableCell = function EditableCell(props) {
483
484
  },
484
485
  placeholder: "\u8BF7\u8F93\u5165",
485
486
  ref: inputRef
486
- }, resultComponentProps));
487
+ }, clearAttrComponentProps));
487
488
 
488
489
  case 'date':
489
490
  // @ts-ignore
490
491
  return /*#__PURE__*/React.createElement(DatePicker, Object.assign({
491
492
  onChange: handleFormItemChange
492
- }, resultComponentProps));
493
+ }, clearAttrComponentProps));
493
494
 
494
495
  case 'select':
495
496
  return /*#__PURE__*/React.createElement(Select, Object.assign({
@@ -502,7 +503,7 @@ var EditableCell = function EditableCell(props) {
502
503
 
503
504
  return ((_b = (_a = option.children) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === null || _b === void 0 ? void 0 : _b.indexOf(input.toLowerCase())) >= 0;
504
505
  }
505
- }, resultComponentProps, {
506
+ }, clearAttrComponentProps, {
506
507
  // open={true}
507
508
  onChange: handleFormItemChange
508
509
  }));
@@ -521,30 +522,30 @@ var EditableCell = function EditableCell(props) {
521
522
  },
522
523
  onChange: handleFormItemChange,
523
524
  onDeselect: handleFormItemChange
524
- }, resultComponentProps));
525
+ }, clearAttrComponentProps));
525
526
 
526
527
  case 'checkbox':
527
528
  return /*#__PURE__*/React.createElement(Checkbox.Group, Object.assign({
528
529
  onChange: handleFormItemChange,
529
530
  ref: inputRef
530
- }, resultComponentProps));
531
+ }, clearAttrComponentProps));
531
532
 
532
533
  case 'radio':
533
534
  return /*#__PURE__*/React.createElement(Radio, Object.assign({
534
535
  onChange: handleFormItemChange,
535
536
  ref: inputRef
536
- }, resultComponentProps));
537
+ }, clearAttrComponentProps));
537
538
 
538
539
  case 'radioGroup':
539
540
  return /*#__PURE__*/React.createElement(Radio.Group, Object.assign({
540
541
  onChange: handleFormItemChange,
541
542
  ref: inputRef
542
- }, resultComponentProps));
543
+ }, clearAttrComponentProps));
543
544
 
544
545
  case 'switch':
545
546
  return /*#__PURE__*/React.createElement(Switch, Object.assign({
546
547
  size: 'small'
547
- }, resultComponentProps, {
548
+ }, clearAttrComponentProps, {
548
549
  onChange: handleFormItemChange
549
550
  }));
550
551
 
@@ -573,7 +574,7 @@ var EditableCell = function EditableCell(props) {
573
574
  var fromData = form.getFieldsValue();
574
575
  return render === null || render === void 0 ? void 0 : render(Object.assign(Object.assign({}, !isObjEmpty(fromData) ? Object.assign(Object.assign({}, record), _defineProperty({}, dataIndex, fromData[dataIndex])) : record), {
575
576
  onChange: save
576
- })); // return render?.({ ...(!isObjEmpty(fromData) ? {...record, ...fromData} : record), onChange: save })
577
+ }));
577
578
  }
578
579
 
579
580
  default:
@@ -605,7 +606,7 @@ var EditableCell = function EditableCell(props) {
605
606
  onClick: toggleEdit
606
607
  }, childNode);
607
608
  } else if (isEdit && editable) {
608
- childNode = /*#__PURE__*/React.createElement(Form.Item, Object.assign({
609
+ childNode = /*#__PURE__*/React.createElement(React.Fragment, null, isExpandRow(childNode) && childNode[0], /*#__PURE__*/React.createElement(Form.Item, Object.assign({
609
610
  errorPlacement: "right",
610
611
  valuePropName: editable === 'switch' ? 'checked' : 'value',
611
612
  style: {
@@ -613,17 +614,17 @@ var EditableCell = function EditableCell(props) {
613
614
  }
614
615
  }, formProps, {
615
616
  name: dataIndex
616
- }), Control(editable));
617
+ }), Control(editable)));
617
618
 
618
619
  if (editable === 'input' && ((resultComponentProps === null || resultComponentProps === void 0 ? void 0 : resultComponentProps.addonBefore) || (resultComponentProps === null || resultComponentProps === void 0 ? void 0 : resultComponentProps.addonAfter))) {
619
- childNode = /*#__PURE__*/React.createElement(Form.Item, Object.assign({
620
+ childNode = /*#__PURE__*/React.createElement(React.Fragment, null, isExpandRow(childNode) && childNode[0], /*#__PURE__*/React.createElement(Form.Item, Object.assign({
620
621
  errorPlacement: "right",
621
622
  style: {
622
623
  margin: 0
623
624
  }
624
625
  }, formProps, {
625
626
  name: [dataIndex, 'value']
626
- }), Control(editable));
627
+ }), Control(editable)));
627
628
  }
628
629
  } else if (!isEdit && (componentProps === null || componentProps === void 0 ? void 0 : componentProps.options)) {
629
630
  return ((_b = (_a = componentProps === null || componentProps === void 0 ? void 0 : componentProps.options) === null || _a === void 0 ? void 0 : _a.find(function (item) {
@@ -651,7 +652,7 @@ var EditableCell = function EditableCell(props) {
651
652
  // }
652
653
 
653
654
  }, [record]);
654
- return /*#__PURE__*/React.createElement("td", Object.assign({}, clearProps, {
655
+ return /*#__PURE__*/React.createElement("td", Object.assign({}, omit(clearProps, ['dataIndex']), {
655
656
  className: cls(clearProps === null || clearProps === void 0 ? void 0 : clearProps.className, 'lm_custom_cell_td'),
656
657
  key: "r".concat(rowIndex, "_c").concat(colIndex)
657
658
  }), getMemoChildNode);
@@ -704,9 +705,17 @@ var EditTable = /*#__PURE__*/forwardRef(function (props, ref) {
704
705
  _useState12 = _slicedToArray(_useState11, 2),
705
706
  sortEditTable = _useState12[0],
706
707
  setCallBackFalg = _useState12[1];
708
+ /** 当前展开的列 */
709
+
710
+
711
+ var _useState13 = useState([]),
712
+ _useState14 = _slicedToArray(_useState13, 2),
713
+ expandedRowKeys = _useState14[0],
714
+ setExpandedRowKeys = _useState14[1];
707
715
 
708
716
  var dataSourceRef = useRef([]);
709
717
  var sortDataSorceRef = useRef([]);
718
+ var deepDataSourceRef = useRef([]);
710
719
 
711
720
  var onSortEnd = function onSortEnd(active, over) {
712
721
  var cloneArr = _toConsumableArray(dataSourceRef.current);
@@ -799,26 +808,72 @@ var EditTable = /*#__PURE__*/forwardRef(function (props, ref) {
799
808
  };
800
809
 
801
810
  var handleSave = function handleSave(row, options) {
811
+ var _a, _b;
812
+
813
+ var preKeys = (_b = (_a = deepDataSourceRef === null || deepDataSourceRef === void 0 ? void 0 : deepDataSourceRef.current) === null || _a === void 0 ? void 0 : _a[row[_rowKey]]) === null || _b === void 0 ? void 0 : _b.preKeys;
802
814
  var res = produce(dataSourceRef.current, function (draft) {
803
815
  if (options === null || options === void 0 ? void 0 : options.only) {
804
816
  var _ref2 = options === null || options === void 0 ? void 0 : options.only,
805
817
  key = _ref2.key,
806
818
  value = _ref2.value;
807
819
 
808
- draft.forEach(function (item, index) {
809
- if (row[_rowKey] === item[_rowKey]) {
810
- draft[index] = row;
811
- } else {
812
- draft[index][key] = value;
813
- }
814
- });
820
+ if ((preKeys === null || preKeys === void 0 ? void 0 : preKeys.length) > 1) {
821
+ var deeps = function deeps(children) {
822
+ children.forEach(function (item) {
823
+ var _a;
824
+
825
+ if (preKeys.includes(item[_rowKey])) {
826
+ if (item[_rowKey] === row[_rowKey]) {
827
+ children.forEach(function (c) {
828
+ c[key] = value;
829
+ });
830
+ (_a = Object.keys(item)) === null || _a === void 0 ? void 0 : _a.forEach(function (v) {
831
+ item[v] = row[v] || item[v];
832
+ });
833
+ } else if (item.children) {
834
+ deeps(item.children);
835
+ }
836
+ }
837
+ });
838
+ };
839
+
840
+ deeps(draft);
841
+ } else {
842
+ draft.forEach(function (item, index) {
843
+ if (row[_rowKey] === item[_rowKey]) {
844
+ draft[index] = row;
845
+ } else {
846
+ draft[index][key] = value;
847
+ }
848
+ });
849
+ }
815
850
  } else {
816
- var index = draft.findIndex(function (item) {
817
- return row[_rowKey] === item[_rowKey];
818
- });
851
+ if ((preKeys === null || preKeys === void 0 ? void 0 : preKeys.length) > 1) {
852
+ var _deeps = function _deeps(children) {
853
+ children.forEach(function (item) {
854
+ var _a;
855
+
856
+ if (preKeys.includes(item[_rowKey])) {
857
+ if (item[_rowKey] === row[_rowKey]) {
858
+ (_a = Object.keys(row)) === null || _a === void 0 ? void 0 : _a.forEach(function (v) {
859
+ item[v] = row[v] || item[v];
860
+ });
861
+ } else if (item.children) {
862
+ _deeps(item.children);
863
+ }
864
+ }
865
+ });
866
+ };
819
867
 
820
- if (index !== -1) {
821
- draft[index] = row;
868
+ _deeps(draft);
869
+ } else {
870
+ var index = draft.findIndex(function (item) {
871
+ return row[_rowKey] === item[_rowKey];
872
+ });
873
+
874
+ if (index !== -1) {
875
+ draft[index] = row;
876
+ }
822
877
  }
823
878
  }
824
879
  });
@@ -840,60 +895,93 @@ var EditTable = /*#__PURE__*/forwardRef(function (props, ref) {
840
895
  return item;
841
896
  });
842
897
  });
843
- }; // 校验保存
844
- // const save = async (row) => {
845
- // try {
846
- // const values = row || (await form.getFieldsValue())
847
- // handleSave({ ...record, ...values })
848
- // await form.validateFields()
849
- // // 清空异常校验
850
- // setValid((old) => {
851
- // const obj = { ...old }
852
- // delete obj[record[rowKey]]
853
- // return obj
854
- // })
855
- // } catch (errInfo) {
856
- // // 加入异常校验
857
- // setValid((old) => ({ ...old, [record[rowKey]]: errInfo.errorFields }))
858
- // }
859
- // }
860
- // @ts-ignore
898
+ }; // @ts-ignore
861
899
 
862
900
 
863
901
  var handleTableRowDelete = function handleTableRowDelete(key) {
864
- var _a;
902
+ var _a, _b, _c;
865
903
 
866
- if (((_a = dataSourceRef.current) === null || _a === void 0 ? void 0 : _a.length) === 1 && !quickOpetateClearAll) {
867
- return false;
868
- }
904
+ var preKeys = (_b = (_a = deepDataSourceRef === null || deepDataSourceRef === void 0 ? void 0 : deepDataSourceRef.current) === null || _a === void 0 ? void 0 : _a[key]) === null || _b === void 0 ? void 0 : _b.preKeys;
869
905
 
870
- var res = produce(dataSourceRef.current, function (draft) {
871
- var index = draft.findIndex(function (item) {
872
- return key === item[_rowKey];
873
- });
906
+ if (preKeys.length > 1) {
907
+ /** 说明删除的是children中的数据 */
908
+ var filter = function filter(data, key) {
909
+ var newData = data.filter(function (x) {
910
+ return x[_rowKey] !== key;
911
+ });
912
+ newData.forEach(function (x) {
913
+ if (x.children) {
914
+ var c = filter(x.children, key);
915
+ x.children = c;
916
+
917
+ if (!c.length) {
918
+ delete x.children;
919
+ }
920
+ }
921
+ });
922
+ return newData;
923
+ };
874
924
 
875
- if (index !== -1) {
876
- draft.splice(index, 1);
877
- }
878
- });
925
+ var res = filter(dataSource, key);
879
926
 
880
- if (onChange) {
881
- onChange === null || onChange === void 0 ? void 0 : onChange(res);
927
+ if (onChange) {
928
+ onChange === null || onChange === void 0 ? void 0 : onChange(res);
929
+ } else {
930
+ setDataSource(res);
931
+ }
882
932
  } else {
883
- setDataSource(res);
884
- } // setDataSource(res)
885
- // onChange?.(res)
933
+ if (((_c = dataSourceRef.current) === null || _c === void 0 ? void 0 : _c.length) === 1 && !quickOpetateClearAll) {
934
+ return false;
935
+ }
936
+
937
+ var _res = produce(dataSourceRef.current, function (draft) {
938
+ var index = draft.findIndex(function (item) {
939
+ return key === item[_rowKey];
940
+ });
941
+
942
+ if (index !== -1) {
943
+ draft.splice(index, 1);
944
+ }
945
+ });
886
946
 
947
+ if (onChange) {
948
+ onChange === null || onChange === void 0 ? void 0 : onChange(_res);
949
+ } else {
950
+ setDataSource(_res);
951
+ }
952
+ }
887
953
  };
954
+ /** 快捷添加 */
955
+
888
956
 
889
957
  var handleTableRowAdd = function handleTableRowAdd(record) {
958
+ var _a, _b;
959
+
960
+ console.log(record, '-rrrrr');
961
+ 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;
890
962
  var res = produce(dataSourceRef.current, function (draft) {
891
- var index = draft.findIndex(function (item) {
892
- return record[_rowKey] === item[_rowKey];
893
- });
963
+ if (preKeys.length > 1) {
964
+ var deeps = function deeps(children) {
965
+ children.forEach(function (item, index) {
966
+ if (preKeys.includes(item[_rowKey])) {
967
+ if (item[_rowKey] === record[_rowKey]) {
968
+ children.splice(index + 1, 0, _defineProperty({}, _rowKey, "".concat(Date.now())));
969
+ } else if (item.children) {
970
+ deeps(item.children);
971
+ }
972
+ }
973
+ });
974
+ };
975
+
976
+ deeps(draft);
977
+ } else {
978
+ var index = draft.findIndex(function (item) {
979
+ return record[_rowKey] === item[_rowKey];
980
+ });
894
981
 
895
- if (index !== -1) {
896
- draft.splice(index + 1, 0, _defineProperty({}, _rowKey, "".concat(Date.now())));
982
+ if (index !== -1) {
983
+ draft.splice(index + 1, 0, _defineProperty({}, _rowKey, "".concat(Date.now())));
984
+ }
897
985
  }
898
986
  });
899
987
 
@@ -1074,52 +1162,7 @@ var EditTable = /*#__PURE__*/forwardRef(function (props, ref) {
1074
1162
 
1075
1163
  var res = localColumns.map(function (col, index) {
1076
1164
  return mapColumns(col, index);
1077
- }); // const res = localColumns.map((col, index) => {
1078
- // if (!col.editable) {
1079
- // return col
1080
- // }
1081
- // return {
1082
- // ...col,
1083
- // shouldCellUpdate: (record, prevRecord) => {
1084
- // const { dataIndex, editable, relevanceCols } = col
1085
- // if (col?.fixed ||
1086
- // (hasDisableOptions && hasDisableOptions.includes(dataIndex)) ||
1087
- // col.componentProps?.options ||
1088
- // editable === 'render' ||
1089
- // !!relevanceCols || !!shouldUpdate) {
1090
- // return true
1091
- // }
1092
- // return record[dataIndex] !== prevRecord[dataIndex]
1093
- // },
1094
- // onCell: (record, rowIndex) => {
1095
- // return {
1096
- // getLength: dataSource.length,
1097
- // rowKey,
1098
- // record,
1099
- // col,
1100
- // rowIndex,
1101
- // colIndex: index,
1102
- // quickOpetateClearAll,
1103
- // handleTableRowDelete,
1104
- // handleTableRowAdd,
1105
- // editable: col.editable,
1106
- // dataIndex: col.dataIndex,
1107
- // itemProps: col.itemProps,
1108
- // setValid,
1109
- // isEdit,
1110
- // isHoverEdit,
1111
- // handleAdd,
1112
- // handleDelete,
1113
- // handleCopy,
1114
- // editEnum: typeof col.editEnum === 'function' ? col.editEnum(record) : col.editEnum,
1115
- // valueType: typeof col.valueType === 'function' ? col.valueType(record) : col.valueType,
1116
- // handleSave,
1117
- // reWriteOriginSource,
1118
- // }
1119
- // },
1120
- // }
1121
- // })
1122
-
1165
+ });
1123
1166
  return res;
1124
1167
  }, [columns, isAdd, sortOpen, useQuickOpetate, sortEditTable, dataSource, _toConsumableArray(memoOptions)]);
1125
1168
  var DraggableContainer = useCallback(function (_a) {
@@ -1179,9 +1222,32 @@ var EditTable = /*#__PURE__*/forwardRef(function (props, ref) {
1179
1222
  }, resetProps);
1180
1223
  }, [resultColumns, dataSource, sortOpen, colSortOpen, size]);
1181
1224
  useEffect(function () {
1182
- setDataSource(defaultData === null || defaultData === void 0 ? void 0 : defaultData.map(function (v, idx) {
1225
+ // setDataSource(defaultData?.map((v, idx) => ({ ...v, [rowKey]: v[rowKey] || `v${idx + 1}` })))
1226
+ var addRowKey = function addRowKey(children, pkey) {
1227
+ return children === null || children === void 0 ? void 0 : children.map(function (item, index) {
1228
+ if (item.children) {
1229
+ var _Object$assign5;
1230
+
1231
+ var rchildren = addRowKey(item.children, "".concat(pkey, "_").concat(index + 1));
1232
+ return Object.assign(Object.assign({}, item), (_Object$assign5 = {}, _defineProperty(_Object$assign5, _rowKey, item[_rowKey] || "".concat(pkey, "_").concat(index + 1)), _defineProperty(_Object$assign5, "children", rchildren), _Object$assign5));
1233
+ }
1234
+
1235
+ return Object.assign(Object.assign({}, item), _defineProperty({}, _rowKey, item[_rowKey] || "".concat(pkey, "_").concat(index + 1)));
1236
+ });
1237
+ };
1238
+
1239
+ var res = defaultData === null || defaultData === void 0 ? void 0 : defaultData.map(function (v, idx) {
1240
+ if (v.children) {
1241
+ var _Object$assign7;
1242
+
1243
+ var rchildren = addRowKey(v.children, v[_rowKey] || "v".concat(idx + 1));
1244
+ return Object.assign(Object.assign({}, v), (_Object$assign7 = {}, _defineProperty(_Object$assign7, _rowKey, v[_rowKey] || "v".concat(idx + 1)), _defineProperty(_Object$assign7, "children", rchildren), _Object$assign7));
1245
+ }
1246
+
1183
1247
  return Object.assign(Object.assign({}, v), _defineProperty({}, _rowKey, v[_rowKey] || "v".concat(idx + 1)));
1184
- }));
1248
+ });
1249
+ deepDataSourceRef.current = deepDataSourcePreKeys(res, _rowKey);
1250
+ setDataSource(res);
1185
1251
  }, [defaultData]);
1186
1252
  useImperativeHandle(ref, function () {
1187
1253
  return {
@@ -1245,6 +1311,13 @@ var EditTable = /*#__PURE__*/forwardRef(function (props, ref) {
1245
1311
  bordered: true,
1246
1312
  pagination: false,
1247
1313
  // components={tableComponents}
1314
+ expandable: (resetProps === null || resetProps === void 0 ? void 0 : resetProps.expandable) || {
1315
+ expandedRowKeys: expandedRowKeys,
1316
+ fixed: true,
1317
+ onExpandedRowsChange: function onExpandedRowsChange(expandedRows) {
1318
+ return setExpandedRowKeys(expandedRows);
1319
+ }
1320
+ },
1248
1321
  rowSelection: !rowSelection ? undefined : {
1249
1322
  fixed: true,
1250
1323
  type: 'checkbox',
@@ -556,6 +556,9 @@ p {
556
556
  flex: 1;
557
557
  max-width: 100%;
558
558
  }
559
+ .lm_editTable_warpper .lm_custom_cell_td .ant-table-row-expand-icon {
560
+ margin-top: 6px;
561
+ }
559
562
  .lm_editTable_warpper .lm_editTable_cell_edit {
560
563
  height: 40px;
561
564
  padding: 8px 8px !important;
@@ -45,6 +45,9 @@
45
45
  flex: 1;
46
46
  max-width: 100%;
47
47
  }
48
+ .lm_editTable_warpper .lm_custom_cell_td .ant-table-row-expand-icon {
49
+ margin-top: 6px;
50
+ }
48
51
  .lm_editTable_warpper .lm_editTable_cell_edit {
49
52
  height: 40px;
50
53
  padding: 8px 8px !important;
@@ -1 +1,7 @@
1
1
  export declare function isObjEmpty(obj: Record<string, any>): boolean;
2
+ export declare function deepDataSourcePreKeys(dataSource: any[], rowKey: string): any;
3
+ export declare function isExpandRow(children: any): boolean;
4
+ declare const _default: {
5
+ isObjEmpty: typeof isObjEmpty;
6
+ };
7
+ export default _default;
@@ -1,5 +1,33 @@
1
+ import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
2
+ import { keyBy } from 'lodash';
1
3
  export function isObjEmpty(obj) {
2
4
  var _a;
3
5
 
4
6
  return ((_a = Object.keys(obj || {})) === null || _a === void 0 ? void 0 : _a.length) === 0;
5
- }
7
+ }
8
+ export function deepDataSourcePreKeys(dataSource, rowKey) {
9
+ var deepDataSource = [];
10
+
11
+ var eachChildren = function eachChildren(children, preKeys) {
12
+ children.forEach(function (item) {
13
+ deepDataSource.push(Object.assign(Object.assign({}, item), {
14
+ preKeys: [].concat(_toConsumableArray(preKeys), [item[rowKey]])
15
+ }));
16
+
17
+ if (item.children) {
18
+ eachChildren(item.children, [].concat(_toConsumableArray(preKeys), [item[rowKey]])); // deepDataSource.push({ ...item, preKeys: [...preKeys, item[rowKey]] })
19
+ }
20
+ });
21
+ };
22
+
23
+ eachChildren(dataSource, []);
24
+ return keyBy(deepDataSource, rowKey);
25
+ }
26
+ export function isExpandRow(children) {
27
+ var _a, _b, _c, _d, _e;
28
+
29
+ return ['Collapse row', 'Expand row'].includes((_e = (_d = (_c = (_b = (_a = children === null || children === void 0 ? void 0 : children[0]) === null || _a === void 0 ? void 0 : _a.props) === null || _b === void 0 ? void 0 : _b.children) === null || _c === void 0 ? void 0 : _c[1]) === null || _d === void 0 ? void 0 : _d.props) === null || _e === void 0 ? void 0 : _e['aria-label']);
30
+ }
31
+ export default {
32
+ isObjEmpty: isObjEmpty
33
+ };
@@ -13,7 +13,9 @@ var _linkmoreDesign = require("linkmore-design");
13
13
 
14
14
  var LmFilterClear = /*#__PURE__*/_react.default.memo(function (_ref) {
15
15
  var instance = _ref.instance;
16
- var onClearChange = instance.onClearChange;
16
+ var onClearChange = instance.onClearChange,
17
+ getHasFilter = instance.getHasFilter;
18
+ if (!getHasFilter()) return null;
17
19
 
18
20
  var handleClear = function handleClear() {
19
21
  onClearChange();
@@ -9,13 +9,13 @@ exports.default = void 0;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
- var _empty = _interopRequireDefault(require("../assets/empty.png"));
12
+ var emptyBase64 = "data:image/png;base64,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";
13
13
 
14
14
  var EmptyFilter = function EmptyFilter() {
15
15
  return /*#__PURE__*/_react.default.createElement("div", {
16
16
  className: "filter_empty"
17
17
  }, /*#__PURE__*/_react.default.createElement("img", {
18
- src: _empty.default,
18
+ src: emptyBase64,
19
19
  alt: "empty",
20
20
  width: 81
21
21
  }), /*#__PURE__*/_react.default.createElement("div", {
@@ -51,6 +51,7 @@ declare const useCoreOptions: ({ state, dispatch, props }: {
51
51
  };
52
52
  type: string;
53
53
  };
54
+ getHasFilter: () => boolean;
54
55
  setFilterValue: (itemValue: any, item: any) => void;
55
56
  setFilterFieldValue: (field: any, value: any) => void;
56
57
  setLocalization: (localization?: any) => void;
@@ -151,7 +151,11 @@ var useCoreOptions = function useCoreOptions(_ref) {
151
151
  searchKey = props.searchKey,
152
152
  searchConfig = props.searchConfig,
153
153
  customOptions = props.customOptions,
154
- enableAutoString = props.enableAutoString; // 转换一级查询结构 object => array
154
+ enableAutoString = props.enableAutoString; // 获取是否存在过滤值
155
+
156
+ var getHasFilter = useCallback(function () {
157
+ return getIsHas(state.basicFilter) || getIsHas(state.searchFilter);
158
+ }, [state.basicFilter, state.searchFilter]); // 转换一级查询结构 object => array
155
159
 
156
160
  var tranformGlobalQuery = useCallback(function (obj) {
157
161
  var _a;
@@ -612,6 +616,7 @@ var useCoreOptions = function useCoreOptions(_ref) {
612
616
  },
613
617
  getFilterValue: getFilterValue,
614
618
  getFilterQuery: getFilterQuery,
619
+ getHasFilter: getHasFilter,
615
620
  setFilterValue: setFilterValue,
616
621
  setFilterFieldValue: setFilterFieldValue,
617
622
  setLocalization: setLocalization,
@@ -132,7 +132,7 @@ var getInitialState = function getInitialState(props) {
132
132
  basicFilter = _initLocalization.basicFilter,
133
133
  basicQuery = _initLocalization.basicQuery,
134
134
  customQuery = _initLocalization.customQuery,
135
- customFilter = _initLocalization.customFilter; // 字段对应关系 basicQuery => filterQuery; customQuery => globalQuery; searchQuery => fuzzyQuery
135
+ customFilter = _initLocalization.customFilter; // 字段对应关系 basicQuery => filterQuery; customQuery => globalQuery; searchQuery => fuzzyQuery
136
136
 
137
137
 
138
138
  return {
@@ -1126,7 +1126,7 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
1126
1126
  items_per_page: '/条',
1127
1127
  jump_to: '前往',
1128
1128
  page: '页'
1129
- } : locale.Pagination || {},
1129
+ } : (locale === null || locale === void 0 ? void 0 : locale.Pagination) || {},
1130
1130
  size: 'small'
1131
1131
  }, pagination),
1132
1132
  rowSelection: rowSelection === false ? undefined : (0, _objectSpread2.default)({
@@ -72,6 +72,7 @@ var LmUpload = function LmUpload(_a, ref) {
72
72
  var defaultProps = Object.assign({
73
73
  size: 100,
74
74
  fileSize: 10,
75
+ fileSizeType: 'M',
75
76
  uid: 'uid',
76
77
  accept: '',
77
78
  type: ['jpg', 'jpeg', 'png'],
@@ -6,7 +6,7 @@ declare const useCoreOptions: ({ state, dispatch, props }: {
6
6
  CoreMethods: {
7
7
  getIsMaxCount: () => boolean;
8
8
  getFileFields: (fileParams: any) => {};
9
- beforeUpload: (e: any) => false | import("../../message").MessageType;
9
+ beforeUpload: (e: any) => Promise<void>;
10
10
  checkOver: (file: any) => Promise<void>;
11
11
  getUploadStatus: () => {
12
12
  uploading: boolean;