linkmore-design 1.0.47 → 1.0.50

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 (109) hide show
  1. package/dist/CardTable/fns/index.d.ts +9 -0
  2. package/dist/CardTable/hooks/usePagination.d.ts +19 -0
  3. package/dist/CardTable/toolbar/TablePagination.d.ts +4 -0
  4. package/dist/CardTable/toolbar/ToolBarBottom.d.ts +3 -0
  5. package/dist/CkFilter/complexFilter/saveModal.d.ts +2 -1
  6. package/dist/List/demos/basic.d.ts +2 -0
  7. package/dist/List/index.d.ts +2 -0
  8. package/dist/List/style/index.d.ts +1 -0
  9. package/dist/LmEditTable/DndContainer.d.ts +5 -0
  10. package/dist/LmEditTable/DragHandle.d.ts +4 -0
  11. package/dist/LmEditTable/EditTable.d.ts +31 -0
  12. package/dist/LmEditTable/demos/Editbasic.d.ts +2 -0
  13. package/dist/LmEditTable/demos/basic.d.ts +2 -0
  14. package/dist/LmEditTable/demos/formEditTable.d.ts +2 -0
  15. package/dist/LmEditTable/demos/hoverEdit.d.ts +2 -0
  16. package/dist/LmEditTable/index.d.ts +2 -0
  17. package/dist/LmEditTable/sortableBox.d.ts +5 -0
  18. package/dist/LmEditTable/sortableItem.d.ts +2 -0
  19. package/dist/LmEditTable/style/index.d.ts +1 -0
  20. package/dist/index.d.ts +2 -0
  21. package/dist/index.umd.js +1018 -64
  22. package/dist/index.umd.min.js +6 -6
  23. package/es/CardTable/card/PictureTextColumn.js +11 -6
  24. package/es/CardTable/card/PictureTextRow.js +11 -6
  25. package/es/CardTable/fns/index.js +106 -0
  26. package/es/CardTable/hooks/usePagination.js +128 -0
  27. package/es/CardTable/index.js +3 -0
  28. package/es/CardTable/style/style.css +13 -1
  29. package/es/CardTable/table/TableRoot.js +43 -64
  30. package/es/CardTable/table/TableWrapper.js +4 -0
  31. package/es/CardTable/toolbar/TablePagination.js +62 -0
  32. package/es/CardTable/toolbar/ToolBarBottom.js +47 -0
  33. package/es/CkFilter/baseFilter/index.js +1 -35
  34. package/es/CkFilter/complexFilter/drawer.js +3 -2
  35. package/es/CkFilter/complexFilter/saveModal.js +16 -6
  36. package/es/CkFilter/filter.js +36 -3
  37. package/es/CkFilter/style/style.css +2 -2
  38. package/es/CustomTableOption/columnsSort.js +6 -6
  39. package/es/CustomTableOption/filterSort.js +4 -4
  40. package/es/CustomTableOption/index.js +1 -2
  41. package/es/Input/style/style.css +21 -1
  42. package/es/List/index.d.ts +2 -0
  43. package/es/List/index.js +3 -0
  44. package/es/List/style/index.css +505 -0
  45. package/es/List/style/index.d.ts +1 -0
  46. package/es/List/style/index.js +1 -0
  47. package/es/LmEditTable/DndContainer.d.ts +5 -0
  48. package/es/LmEditTable/DndContainer.js +35 -0
  49. package/es/LmEditTable/DragHandle.d.ts +4 -0
  50. package/es/LmEditTable/DragHandle.js +22 -0
  51. package/es/LmEditTable/EditTable.d.ts +31 -0
  52. package/es/LmEditTable/EditTable.js +892 -0
  53. package/es/LmEditTable/index.d.ts +2 -0
  54. package/es/LmEditTable/index.js +2 -0
  55. package/es/LmEditTable/sortableBox.d.ts +5 -0
  56. package/es/LmEditTable/sortableBox.js +13 -0
  57. package/es/LmEditTable/sortableItem.d.ts +2 -0
  58. package/es/LmEditTable/sortableItem.js +43 -0
  59. package/es/LmEditTable/style/index.d.ts +1 -0
  60. package/es/LmEditTable/style/index.js +1 -0
  61. package/es/LmEditTable/style/style.css +574 -0
  62. package/es/LmTable/Table.js +23 -5
  63. package/es/Select/style/index.css +3 -0
  64. package/es/index.d.ts +2 -0
  65. package/es/index.js +3 -1
  66. package/lib/CardTable/card/PictureTextColumn.js +11 -6
  67. package/lib/CardTable/card/PictureTextRow.js +11 -6
  68. package/lib/CardTable/fns/index.js +106 -0
  69. package/lib/CardTable/hooks/usePagination.js +128 -0
  70. package/lib/CardTable/index.js +3 -0
  71. package/lib/CardTable/style/style.css +13 -1
  72. package/lib/CardTable/table/TableRoot.js +43 -64
  73. package/lib/CardTable/table/TableWrapper.js +4 -0
  74. package/lib/CardTable/toolbar/TablePagination.js +62 -0
  75. package/lib/CardTable/toolbar/ToolBarBottom.js +47 -0
  76. package/lib/CkFilter/baseFilter/index.js +1 -35
  77. package/lib/CkFilter/complexFilter/drawer.js +3 -2
  78. package/lib/CkFilter/complexFilter/saveModal.js +16 -6
  79. package/lib/CkFilter/filter.js +36 -3
  80. package/lib/CkFilter/style/style.css +2 -2
  81. package/lib/CustomTableOption/columnsSort.js +6 -6
  82. package/lib/CustomTableOption/filterSort.js +4 -4
  83. package/lib/CustomTableOption/index.js +1 -2
  84. package/lib/Input/style/style.css +21 -1
  85. package/lib/List/index.d.ts +2 -0
  86. package/lib/List/index.js +15 -0
  87. package/lib/List/style/index.css +505 -0
  88. package/lib/List/style/index.d.ts +1 -0
  89. package/lib/List/style/index.js +3 -0
  90. package/lib/LmEditTable/DndContainer.d.ts +5 -0
  91. package/lib/LmEditTable/DndContainer.js +49 -0
  92. package/lib/LmEditTable/DragHandle.d.ts +4 -0
  93. package/lib/LmEditTable/DragHandle.js +37 -0
  94. package/lib/LmEditTable/EditTable.d.ts +31 -0
  95. package/lib/LmEditTable/EditTable.js +925 -0
  96. package/lib/LmEditTable/index.d.ts +2 -0
  97. package/lib/LmEditTable/index.js +13 -0
  98. package/lib/LmEditTable/sortableBox.d.ts +5 -0
  99. package/lib/LmEditTable/sortableBox.js +24 -0
  100. package/lib/LmEditTable/sortableItem.d.ts +2 -0
  101. package/lib/LmEditTable/sortableItem.js +55 -0
  102. package/lib/LmEditTable/style/index.d.ts +1 -0
  103. package/lib/LmEditTable/style/index.js +3 -0
  104. package/lib/LmEditTable/style/style.css +574 -0
  105. package/lib/LmTable/Table.js +23 -5
  106. package/lib/Select/style/index.css +3 -0
  107. package/lib/index.d.ts +2 -0
  108. package/lib/index.js +17 -1
  109. package/package.json +2 -1
@@ -43,7 +43,7 @@ var _empty = _interopRequireDefault(require("./assets/empty.png"));
43
43
 
44
44
  var _resetConfig = _interopRequireDefault(require("./resetConfig"));
45
45
 
46
- var _excluded = ["dataSource", "autoSize", "columns", "rowClick", "onDoubleClick", "checkConfig", "summary", "pagination", "hiddenPage", "loading", "virtual", "sortOpen", "resizeable", "customCheck", "rowSelection", "columnsState", "onChange", "filterChange", "tableRowType", "size"],
46
+ var _excluded = ["dataSource", "autoSize", "columns", "rowClick", "onDoubleClick", "checkConfig", "summary", "pagination", "hiddenPage", "loading", "virtual", "sortOpen", "resizeable", "customCheck", "components", "rowSelection", "columnsState", "onChange", "filterChange", "tableRowType", "size"],
47
47
  _excluded2 = ["className", "style"],
48
48
  _excluded3 = ["onResize", "width", "onResizeStop"];
49
49
  var Summary = _proTable.default.Summary;
@@ -83,6 +83,7 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
83
83
  _props$resizeable = props.resizeable,
84
84
  resizeable = _props$resizeable === void 0 ? false : _props$resizeable,
85
85
  customCheck = props.customCheck,
86
+ components = props.components,
86
87
  rowSelection = props.rowSelection,
87
88
  columnsState = props.columnsState,
88
89
  onChange = props.onChange,
@@ -217,6 +218,7 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
217
218
  }
218
219
  });
219
220
  });
221
+ console.log(sortOpen ? [sortDefaultColumnItem].concat((0, _toConsumableArray2.default)(result)) : result, 'sortOpen ? [sortDefaultColumnItem, ...result] : result');
220
222
  return sortOpen ? [sortDefaultColumnItem].concat((0, _toConsumableArray2.default)(result)) : result;
221
223
  }, [useColumns, sortOpen]);
222
224
  (0, _react.useEffect)(function () {
@@ -246,10 +248,11 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
246
248
  setSelectedRows({
247
249
  selectedRows: selectedRows
248
250
  });
251
+ rowClick === null || rowClick === void 0 ? void 0 : rowClick(selectedRows);
249
252
  }
253
+ } else {
254
+ rowClick === null || rowClick === void 0 ? void 0 : rowClick(record);
250
255
  }
251
-
252
- rowClick === null || rowClick === void 0 ? void 0 : rowClick(record);
253
256
  }; // 重写表格,增加虚拟滚动
254
257
  // const vComponents = useMemo(() => {
255
258
  // return VList({
@@ -295,6 +298,11 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
295
298
  showTotal: function showTotal(total) {
296
299
  return "\u5171 ".concat(total, " \u6761");
297
300
  },
301
+ locale: {
302
+ items_per_page: '/条',
303
+ jump_to: '前往',
304
+ page: '页'
305
+ },
298
306
  size: 'small'
299
307
  }, pagination),
300
308
  rowSelection: rowSelection === false ? undefined : (0, _objectSpread2.default)({
@@ -401,7 +409,8 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
401
409
  });
402
410
  rowClick === null || rowClick === void 0 ? void 0 : rowClick(value);
403
411
  },
404
- checkboxRecords: useSelectedRows.selectedRows
412
+ checkboxRecords: useSelectedRows.selectedRows,
413
+ columns: (0, _lodash.omit)(useColumns, ['render', 'sorter', 'onFilter', 'filters'])
405
414
  };
406
415
  }); // loading触发清空选中状态
407
416
 
@@ -484,8 +493,17 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
484
493
  };
485
494
  }
486
495
 
496
+ if (components) {
497
+ var _components$body = components.body,
498
+ body = _components$body === void 0 ? {} : _components$body,
499
+ _components$header = components.header,
500
+ header = _components$header === void 0 ? {} : _components$header;
501
+ obj['body'] = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, obj['body']), body);
502
+ obj['header'] = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, obj['header']), header);
503
+ }
504
+
487
505
  return obj;
488
- }, [sortOpen, resizeable]);
506
+ }, [sortOpen, resizeable, components]);
489
507
  return /*#__PURE__*/_react.default.createElement("div", {
490
508
  style: {
491
509
  height: '100%',
@@ -506,6 +506,9 @@ html {
506
506
  .lm_select.ant-select {
507
507
  font-size: 12px;
508
508
  }
509
+ .lm_select.ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector {
510
+ box-shadow: none;
511
+ }
509
512
  .lm_select_dropdown .ant-select-item-option-active:not(.ant-select-item-option-disabled) {
510
513
  background-color: var(--background-color);
511
514
  }
package/es/index.d.ts CHANGED
@@ -46,3 +46,5 @@ export type { UploadProps, UploadFile, RcFile } from './Upload';
46
46
  export { default as Tooltip } from './Tooltip';
47
47
  export { default as Form } from './Form';
48
48
  export { default as Spin } from './Spin';
49
+ export { default as LmEditTable } from './LmEditTable';
50
+ export { default as List } from './List';
package/es/index.js CHANGED
@@ -44,4 +44,6 @@ export { default as CustomTableOption } from './CustomTableOption';
44
44
  export { default as Upload } from './Upload';
45
45
  export { default as Tooltip } from './Tooltip';
46
46
  export { default as Form } from './Form';
47
- export { default as Spin } from './Spin';
47
+ export { default as Spin } from './Spin';
48
+ export { default as LmEditTable } from './LmEditTable';
49
+ export { default as List } from './List';
@@ -28,11 +28,13 @@ var PictureTextColumn = function PictureTextColumn(_ref) {
28
28
  cell = _ref.cell,
29
29
  table = _ref.table,
30
30
  checked = _ref.checked;
31
- var state = table.state,
31
+ var cellKey = table.cellKey,
32
+ state = table.state,
32
33
  defaultConfig = table.defaultConfig,
33
34
  cellClick = table.cellClick,
34
35
  cellDoubleClick = table.cellDoubleClick,
35
- setSelectCells = table.setSelectCells;
36
+ toggleCheckboxKey = table.toggleCheckboxKey,
37
+ checkboxChange = table.checkboxChange;
36
38
  var trigger = state.checkboxConfig.trigger;
37
39
  var clickFlag = (0, _react.useRef)(null);
38
40
  var resetDefaultConfig = (0, _objectSpread2.default)({
@@ -46,8 +48,9 @@ var PictureTextColumn = function PictureTextColumn(_ref) {
46
48
  extend: null
47
49
  }, defaultConfig); // 复选框改变事件, 将复选数据保存到缓存中
48
50
 
49
- var onSelectChange = function onSelectChange(e) {
50
- setSelectCells === null || setSelectCells === void 0 ? void 0 : setSelectCells(e.target.checked, cell, index);
51
+ var onSelectChange = function onSelectChange(val) {
52
+ toggleCheckboxKey(cell[cellKey]);
53
+ checkboxChange === null || checkboxChange === void 0 ? void 0 : checkboxChange(val, cell, index);
51
54
  }; // 单元格单击事件
52
55
 
53
56
 
@@ -58,7 +61,7 @@ var PictureTextColumn = function PictureTextColumn(_ref) {
58
61
  cellClick === null || cellClick === void 0 ? void 0 : cellClick(cell, index);
59
62
 
60
63
  if (trigger === 'cell') {
61
- setSelectCells === null || setSelectCells === void 0 ? void 0 : setSelectCells(!checked, cell, index);
64
+ onSelectChange === null || onSelectChange === void 0 ? void 0 : onSelectChange(!checked);
62
65
  } // }, 200)
63
66
 
64
67
  }; // 单元格双击事件: 双击时避免单击事件触发自己实现
@@ -82,7 +85,9 @@ var PictureTextColumn = function PictureTextColumn(_ref) {
82
85
  }
83
86
  }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Checkbox, {
84
87
  checked: checked,
85
- onChange: onSelectChange
88
+ onChange: function onChange(e) {
89
+ return onSelectChange(e.target.checked);
90
+ }
86
91
  })), resetDefaultConfig.operate ? /*#__PURE__*/_react.default.createElement("div", {
87
92
  className: "PTC_operate"
88
93
  }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Dropdown, {
@@ -38,11 +38,13 @@ var PictureTextRow = function PictureTextRow(_ref) {
38
38
  cell = _ref.cell,
39
39
  table = _ref.table,
40
40
  checked = _ref.checked;
41
- var state = table.state,
41
+ var cellKey = table.cellKey,
42
+ state = table.state,
42
43
  defaultConfig = table.defaultConfig,
43
44
  cellClick = table.cellClick,
44
45
  cellDoubleClick = table.cellDoubleClick,
45
- setSelectCells = table.setSelectCells;
46
+ toggleCheckboxKey = table.toggleCheckboxKey,
47
+ checkboxChange = table.checkboxChange;
46
48
  var trigger = state.checkboxConfig.trigger;
47
49
  var resetDefaultConfig = (0, _objectSpread2.default)({
48
50
  checkbox: true,
@@ -98,8 +100,9 @@ var PictureTextRow = function PictureTextRow(_ref) {
98
100
  }
99
101
  }, defaultConfig); // 复选框改变事件, 将复选数据保存到缓存中
100
102
 
101
- var onSelctChange = function onSelctChange(e) {
102
- setSelectCells === null || setSelectCells === void 0 ? void 0 : setSelectCells(e.target.checked, cell, index);
103
+ var onSelctChange = function onSelctChange(val) {
104
+ toggleCheckboxKey(cell[cellKey]);
105
+ checkboxChange === null || checkboxChange === void 0 ? void 0 : checkboxChange(val, cell, index);
103
106
  }; // 单元格单击事件
104
107
 
105
108
 
@@ -107,7 +110,7 @@ var PictureTextRow = function PictureTextRow(_ref) {
107
110
  cellClick === null || cellClick === void 0 ? void 0 : cellClick(cell, index);
108
111
 
109
112
  if (trigger === 'cell') {
110
- setSelectCells === null || setSelectCells === void 0 ? void 0 : setSelectCells(!checked, cell, index);
113
+ onSelctChange === null || onSelctChange === void 0 ? void 0 : onSelctChange(!checked);
111
114
  }
112
115
  }; // 单元格双击事件: 双击时避免单击事件触发自己实现
113
116
 
@@ -131,7 +134,9 @@ var PictureTextRow = function PictureTextRow(_ref) {
131
134
  }
132
135
  }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Checkbox, {
133
136
  checked: checked,
134
- onChange: onSelctChange
137
+ onChange: function onChange() {
138
+ return onSelctChange(e.target.checked);
139
+ }
135
140
  })), /*#__PURE__*/_react.default.createElement("div", {
136
141
  className: "card_PTR_left"
137
142
  }, typeof resetDefaultConfig.imgurl === 'function' ? resetDefaultConfig.imgurl(cell, table) : /*#__PURE__*/_react.default.createElement(_image.default, {
@@ -0,0 +1,106 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
11
+
12
+ // 操作方法集合
13
+ var setOptions = function setOptions(_ref) {
14
+ var state = _ref.state,
15
+ dispatch = _ref.dispatch,
16
+ props = _ref.props;
17
+ var checkboxConfig = state.checkboxConfig;
18
+ var dataSource = props.dataSource,
19
+ cellKey = props.cellKey;
20
+ var checkKeys = checkboxConfig.checkKeys,
21
+ checkValues = checkboxConfig.checkValues; // 设置选中的值: 第一个参数是数据的键,第二个参数是选中与否, 第三个参数控制是否重置
22
+ // 未做key是否属于数据源校验,用于分页时保存之前的选中状态
23
+
24
+ var setCheckboxKeys = function setCheckboxKeys(keys, checked, reset) {
25
+ var flag = typeof checked === 'boolean' ? checked : true;
26
+ var nKeys = keys,
27
+ nValues = [];
28
+
29
+ if (reset) {
30
+ nValues = (dataSource === null || dataSource === void 0 ? void 0 : dataSource.filter(function (v) {
31
+ return nKeys.includes(v[cellKey]);
32
+ })) || [];
33
+ dispatch({
34
+ type: 'changeCheckboxConfig',
35
+ checkboxConfig: {
36
+ checkKeys: nKeys,
37
+ checkValues: nValues
38
+ }
39
+ });
40
+ return;
41
+ }
42
+
43
+ if (flag) {
44
+ nKeys = Array.from(new Set([].concat((0, _toConsumableArray2.default)(checkKeys), (0, _toConsumableArray2.default)(keys))));
45
+ nValues = (dataSource === null || dataSource === void 0 ? void 0 : dataSource.filter(function (v) {
46
+ return nKeys.includes(v[cellKey]);
47
+ })) || [];
48
+ } else {
49
+ nKeys = checkKeys.filter(function (v) {
50
+ return !keys.includes(v);
51
+ });
52
+ nValues = checkValues.filter(function (v) {
53
+ return !keys.includes(v[cellKey]);
54
+ });
55
+ }
56
+
57
+ dispatch({
58
+ type: 'changeCheckboxConfig',
59
+ checkboxConfig: {
60
+ checkKeys: nKeys,
61
+ checkValues: nValues
62
+ }
63
+ });
64
+ }; // 切换选中状态: 单个切换/批量切换
65
+
66
+
67
+ var toggleCheckboxKey = function toggleCheckboxKey(k) {
68
+ var nKeys = [k],
69
+ isChecked = true,
70
+ reset = false; // 单个切换
71
+
72
+ if (!Array.isArray(k)) {
73
+ isChecked = !(checkKeys === null || checkKeys === void 0 ? void 0 : checkKeys.some(function (v) {
74
+ return v === k;
75
+ }));
76
+ } // 多个切换
77
+
78
+
79
+ if (Array.isArray(k)) {
80
+ var checkArr = checkKeys.filter(function (v) {
81
+ return !k.includes(v);
82
+ }); // 选中的值
83
+
84
+ var notCheckArr = k.filter(function (v) {
85
+ return !checkKeys.includes(v);
86
+ }); // 未选中的值
87
+
88
+ nKeys = [].concat((0, _toConsumableArray2.default)(notCheckArr), (0, _toConsumableArray2.default)(checkArr)); // 组合新值为选中状态
89
+
90
+ var nValues = dataSource === null || dataSource === void 0 ? void 0 : dataSource.filter(function (v) {
91
+ return nKeys.includes(v[cellKey]);
92
+ });
93
+ reset = true;
94
+ }
95
+
96
+ setCheckboxKeys(nKeys, isChecked, reset);
97
+ };
98
+
99
+ return {
100
+ setCheckboxKeys: setCheckboxKeys,
101
+ toggleCheckboxKey: toggleCheckboxKey
102
+ };
103
+ };
104
+
105
+ var _default = setOptions;
106
+ exports.default = _default;
@@ -0,0 +1,128 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
+
12
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
+
14
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
15
+
16
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
17
+
18
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
19
+
20
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
21
+
22
+ var _react = require("react");
23
+
24
+ var _excluded = ["defaultPageSize", "defaultCurrent", "refreshDeps"];
25
+
26
+ var usePagination = function usePagination(service) {
27
+ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
28
+ var _options$defaultPageS = options.defaultPageSize,
29
+ defaultPageSize = _options$defaultPageS === void 0 ? 20 : _options$defaultPageS,
30
+ _options$defaultCurre = options.defaultCurrent,
31
+ defaultCurrent = _options$defaultCurre === void 0 ? 1 : _options$defaultCurre,
32
+ _options$refreshDeps = options.refreshDeps,
33
+ refreshDeps = _options$refreshDeps === void 0 ? [] : _options$refreshDeps,
34
+ rest = (0, _objectWithoutProperties2.default)(options, _excluded);
35
+
36
+ var _useState = (0, _react.useState)({
37
+ loading: false,
38
+ data: {
39
+ pageIndex: defaultCurrent,
40
+ pageSize: defaultPageSize
41
+ }
42
+ }),
43
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
44
+ result = _useState2[0],
45
+ setResult = _useState2[1];
46
+
47
+ var getRequest = (0, _react.useCallback)( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
48
+ var c,
49
+ p,
50
+ res,
51
+ _args = arguments;
52
+ return _regenerator.default.wrap(function _callee$(_context) {
53
+ while (1) {
54
+ switch (_context.prev = _context.next) {
55
+ case 0:
56
+ c = _args.length > 0 && _args[0] !== undefined ? _args[0] : defaultCurrent;
57
+ p = _args.length > 1 && _args[1] !== undefined ? _args[1] : defaultPageSize;
58
+ setResult(function (old) {
59
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, old), {}, {
60
+ loading: true
61
+ });
62
+ });
63
+ _context.next = 5;
64
+ return service((0, _objectSpread2.default)({
65
+ current: c,
66
+ pageSize: p
67
+ }, rest));
68
+
69
+ case 5:
70
+ res = _context.sent;
71
+ setResult(function (old) {
72
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, old), res), {}, {
73
+ loading: false
74
+ });
75
+ });
76
+
77
+ case 7:
78
+ case "end":
79
+ return _context.stop();
80
+ }
81
+ }
82
+ }, _callee);
83
+ })), [service].concat((0, _toConsumableArray2.default)(refreshDeps)));
84
+
85
+ var _ref2 = (result === null || result === void 0 ? void 0 : result.data) || {},
86
+ _ref2$pageIndex = _ref2.pageIndex,
87
+ pageIndex = _ref2$pageIndex === void 0 ? 1 : _ref2$pageIndex,
88
+ _ref2$pageSize = _ref2.pageSize,
89
+ pageSize = _ref2$pageSize === void 0 ? defaultPageSize : _ref2$pageSize,
90
+ _ref2$totalCount = _ref2.totalCount,
91
+ totalCount = _ref2$totalCount === void 0 ? 0 : _ref2$totalCount; // 总页数
92
+
93
+
94
+ var totalPage = (0, _react.useMemo)(function () {
95
+ return Math.ceil(totalCount / pageSize);
96
+ }, [pageSize, totalCount]); // 分页改变触发
97
+
98
+ var onChange = function onChange(c, p) {
99
+ return getRequest(c, p);
100
+ }; // 手动重取数据, 不传入数据则触发刷新
101
+
102
+
103
+ var refetch = function refetch(_ref3) {
104
+ var _ref3$current = _ref3.current,
105
+ c = _ref3$current === void 0 ? pageIndex : _ref3$current,
106
+ _ref3$pageSize = _ref3.pageSize,
107
+ p = _ref3$pageSize === void 0 ? pageSize : _ref3$pageSize;
108
+ return getRequest(c, p);
109
+ }; // 初始化获取数据
110
+
111
+
112
+ (0, _react.useEffect)(function () {
113
+ getRequest(defaultCurrent, defaultPageSize);
114
+ }, [getRequest]);
115
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, result), {}, {
116
+ refetch: refetch,
117
+ pagination: {
118
+ current: pageIndex,
119
+ pageSize: pageSize,
120
+ total: totalCount,
121
+ totalPage: totalPage,
122
+ onChange: onChange
123
+ }
124
+ });
125
+ };
126
+
127
+ var _default = usePagination;
128
+ exports.default = _default;
@@ -9,6 +9,9 @@ exports.default = void 0;
9
9
 
10
10
  var _LmCardTable = _interopRequireDefault(require("./LmCardTable"));
11
11
 
12
+ var _usePagination = _interopRequireDefault(require("./hooks/usePagination"));
13
+
14
+ _LmCardTable.default.usePagination = _usePagination.default;
12
15
  var _default = _LmCardTable.default; // export * from LmCardTable;
13
16
 
14
17
  exports.default = _default;
@@ -1,8 +1,10 @@
1
1
  .lm_card_table_wrapper {
2
2
  height: 100%;
3
+ display: flex;
4
+ flex-flow: column;
3
5
  }
4
6
  .lm_card_table_wrapper .lm_card_table_container {
5
- height: 100%;
7
+ flex: 1 1 0;
6
8
  overflow: auto;
7
9
  }
8
10
  .lm_card_table_wrapper .lm_card_table_container .lm_card_table .lm_card_table_body .lm_card_table_body_row {
@@ -22,6 +24,16 @@
22
24
  .lm_card_table_wrapper .lm_card_table_container .lm_card_table .lm_card_table_body .lm_card_table_body_row .lm_card_table_body_cell.cell_checked {
23
25
  border-color: var(--primary-color);
24
26
  }
27
+ .lm_card_table_wrapper .lm_card_table_toolbar_bottom {
28
+ display: flex;
29
+ align-items: center;
30
+ justify-content: space-between;
31
+ }
32
+ .lm_card_table_wrapper .lm_card_table_toolbar_bottom .lm_card_table_pagination {
33
+ display: flex;
34
+ align-items: center;
35
+ height: 48px;
36
+ }
25
37
  .card_PTC {
26
38
  height: 100%;
27
39
  }
@@ -9,19 +9,19 @@ Object.defineProperty(exports, "__esModule", {
9
9
  });
10
10
  exports.default = void 0;
11
11
 
12
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
12
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
13
 
14
14
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
15
 
16
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
17
-
18
16
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
19
17
 
20
18
  var _react = _interopRequireWildcard(require("react"));
21
19
 
22
20
  var _TableWrapper = _interopRequireDefault(require("./TableWrapper"));
23
21
 
24
- var _excluded = ["rowConfig", "cellConfig", "defaultConfig", "checkboxChange"];
22
+ var _fns = _interopRequireDefault(require("../fns"));
23
+
24
+ var _excluded = ["rowConfig", "cellConfig", "defaultConfig", "checkboxConfig"];
25
25
 
26
26
  var reducer = function reducer(state, action) {
27
27
  var page = action.page,
@@ -32,6 +32,7 @@ var reducer = function reducer(state, action) {
32
32
 
33
33
  switch (action.type) {
34
34
  case 'changePage':
35
+ // 分页改变
35
36
  return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, state), {}, {
36
37
  page: page
37
38
  });
@@ -101,16 +102,9 @@ var getInitialState = function getInitialState(props) {
101
102
  };
102
103
 
103
104
  var LmCardTableRoot = function LmCardTableRoot(props, ref) {
104
- var rowConfig = props.rowConfig,
105
- cellConfig = props.cellConfig,
106
- defaultConfig = props.defaultConfig,
107
- checkboxChange = props.checkboxChange,
108
- resetProps = (0, _objectWithoutProperties2.default)(props, _excluded);
109
105
  var initialState = (0, _react.useMemo)(function () {
110
- return getInitialState((0, _objectSpread2.default)({
111
- checkboxChange: checkboxChange
112
- }, resetProps));
113
- }, [checkboxChange, resetProps]);
106
+ return getInitialState(props);
107
+ }, []);
114
108
 
115
109
  var _useReducer = (0, _react.useReducer)(reducer, initialState),
116
110
  _useReducer2 = (0, _slicedToArray2.default)(_useReducer, 2),
@@ -124,66 +118,51 @@ var LmCardTableRoot = function LmCardTableRoot(props, ref) {
124
118
 
125
119
  var _state$checkboxConfig = state.checkboxConfig,
126
120
  checkKeys = _state$checkboxConfig.checkKeys,
127
- checkValues = _state$checkboxConfig.checkValues; // 设置选中的数据
128
-
129
- var setSelectCells = function setSelectCells(checked, cell, cellIndex) {
130
- var nKeys = checked ? [].concat((0, _toConsumableArray2.default)(checkKeys), [cell[resetProps.cellKey]]) : checkKeys.filter(function (v) {
131
- return v !== cell[resetProps.cellKey];
132
- });
133
- var nValues = checked ? [].concat((0, _toConsumableArray2.default)(checkValues), [cell]) : checkValues.filter(function (v) {
134
- return v[resetProps.cellKey] !== cell[resetProps.cellKey];
135
- });
136
- checkboxChange === null || checkboxChange === void 0 ? void 0 : checkboxChange(checked, cell, cellIndex);
137
- dispatch({
138
- type: 'changeCheckboxConfig',
139
- checkboxConfig: {
140
- checkKeys: nKeys,
141
- checkValues: nValues
142
- }
121
+ checkValues = _state$checkboxConfig.checkValues; // 配置对象收集
122
+
123
+ var configProps = (0, _react.useMemo)(function () {
124
+ var rowConfig = props.rowConfig,
125
+ cellConfig = props.cellConfig,
126
+ defaultConfig = props.defaultConfig,
127
+ checkboxConfig = props.checkboxConfig,
128
+ resetProps = (0, _objectWithoutProperties2.default)(props, _excluded);
129
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, resetProps), {}, {
130
+ rowConfig: (0, _objectSpread2.default)({
131
+ // 行配置
132
+ gap: 16
133
+ }, rowConfig),
134
+ cellConfig: (0, _objectSpread2.default)({
135
+ // 单元格配置对象
136
+ width: 192,
137
+ height: 282
138
+ }, cellConfig),
139
+ checkboxConfig: (0, _objectSpread2.default)({}, checkboxConfig),
140
+ toolbarConfig: {
141
+ pager: {},
142
+ toolbarBottom: {}
143
+ },
144
+ defaultConfig: defaultConfig
143
145
  });
144
- }; // 外部设置选中的值
145
-
146
-
147
- var setCheckboxKeys = function setCheckboxKeys(checkKeys) {
148
- var checkValues = resetProps.dataSource.filter(function (v) {
149
- return checkKeys.includes(v[resetProps.cellKey]);
150
- }) || [];
151
- dispatch({
152
- type: 'changeCheckboxConfig',
153
- checkboxConfig: {
154
- checkKeys: checkKeys,
155
- checkValues: checkValues
156
- }
146
+ }, [props]); // 方法收集
147
+
148
+ var EventProps = (0, _react.useMemo)(function () {
149
+ return (0, _fns.default)({
150
+ state: state,
151
+ dispatch: dispatch,
152
+ props: props
157
153
  });
158
- }; // 配置对象收集
159
-
160
-
161
- var config = {
162
- rowConfig: (0, _objectSpread2.default)({
163
- // 行配置
164
- gap: 16
165
- }, rowConfig),
166
- cellConfig: (0, _objectSpread2.default)({
167
- // 单元格配置对象
168
- width: 192,
169
- height: 282
170
- }, cellConfig),
171
- defaultConfig: defaultConfig
172
- };
173
- var table = (0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({
154
+ }, [state, dispatch, props]);
155
+ var table = (0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, configProps), EventProps), {}, {
174
156
  state: state,
175
157
  dispatch: dispatch
176
- }, config), resetProps), {}, {
177
- setSelectCells: setSelectCells
178
158
  }); // 向外暴露出的方法
179
159
 
180
160
  (0, _react.useImperativeHandle)(ref, function () {
181
- return {
161
+ return (0, _objectSpread2.default)({
182
162
  getCheckboxRecords: function getCheckboxRecords() {
183
163
  return state.checkboxConfig.checkValues;
184
- },
185
- setCheckboxKeys: setCheckboxKeys
186
- };
164
+ }
165
+ }, EventProps);
187
166
  });
188
167
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, !isFullScreen && /*#__PURE__*/_react.default.createElement(_TableWrapper.default, {
189
168
  table: table
@@ -13,6 +13,8 @@ var _react = _interopRequireDefault(require("react"));
13
13
 
14
14
  var _TableContainer = _interopRequireDefault(require("./TableContainer"));
15
15
 
16
+ var _ToolBarBottom = _interopRequireDefault(require("../toolbar/ToolBarBottom"));
17
+
16
18
  // 包裹表格外围区域: 工具栏操作区域/主体区域/工具栏底部区域
17
19
  var LmCardTableWrapper = /*#__PURE__*/_react.default.memo(function (_ref) {
18
20
  var table = _ref.table;
@@ -25,6 +27,8 @@ var LmCardTableWrapper = /*#__PURE__*/_react.default.memo(function (_ref) {
25
27
  }, style)
26
28
  }, /*#__PURE__*/_react.default.createElement(_TableContainer.default, {
27
29
  table: table
30
+ }), /*#__PURE__*/_react.default.createElement(_ToolBarBottom.default, {
31
+ table: table
28
32
  }));
29
33
  });
30
34