linkmore-design 1.0.49 → 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 (98) 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/List/demos/basic.d.ts +2 -0
  6. package/dist/List/index.d.ts +2 -0
  7. package/dist/List/style/index.d.ts +1 -0
  8. package/dist/LmEditTable/DndContainer.d.ts +5 -0
  9. package/dist/LmEditTable/DragHandle.d.ts +4 -0
  10. package/dist/LmEditTable/EditTable.d.ts +31 -0
  11. package/dist/LmEditTable/demos/Editbasic.d.ts +2 -0
  12. package/dist/LmEditTable/demos/basic.d.ts +2 -0
  13. package/dist/LmEditTable/demos/formEditTable.d.ts +2 -0
  14. package/dist/LmEditTable/demos/hoverEdit.d.ts +2 -0
  15. package/dist/LmEditTable/index.d.ts +2 -0
  16. package/dist/LmEditTable/sortableBox.d.ts +5 -0
  17. package/dist/LmEditTable/sortableItem.d.ts +2 -0
  18. package/dist/LmEditTable/style/index.d.ts +1 -0
  19. package/dist/index.d.ts +2 -0
  20. package/dist/index.umd.js +993 -55
  21. package/dist/index.umd.min.js +6 -6
  22. package/es/CardTable/card/PictureTextColumn.js +11 -6
  23. package/es/CardTable/card/PictureTextRow.js +11 -6
  24. package/es/CardTable/fns/index.js +106 -0
  25. package/es/CardTable/hooks/usePagination.js +128 -0
  26. package/es/CardTable/index.js +3 -0
  27. package/es/CardTable/style/style.css +13 -1
  28. package/es/CardTable/table/TableRoot.js +43 -64
  29. package/es/CardTable/table/TableWrapper.js +4 -0
  30. package/es/CardTable/toolbar/TablePagination.js +62 -0
  31. package/es/CardTable/toolbar/ToolBarBottom.js +47 -0
  32. package/es/CustomTableOption/columnsSort.js +5 -5
  33. package/es/CustomTableOption/filterSort.js +3 -3
  34. package/es/CustomTableOption/index.js +1 -2
  35. package/es/Input/style/style.css +21 -1
  36. package/es/List/index.d.ts +2 -0
  37. package/es/List/index.js +3 -0
  38. package/es/List/style/index.css +505 -0
  39. package/es/List/style/index.d.ts +1 -0
  40. package/es/List/style/index.js +1 -0
  41. package/es/LmEditTable/DndContainer.d.ts +5 -0
  42. package/es/LmEditTable/DndContainer.js +35 -0
  43. package/es/LmEditTable/DragHandle.d.ts +4 -0
  44. package/es/LmEditTable/DragHandle.js +22 -0
  45. package/es/LmEditTable/EditTable.d.ts +31 -0
  46. package/es/LmEditTable/EditTable.js +892 -0
  47. package/es/LmEditTable/index.d.ts +2 -0
  48. package/es/LmEditTable/index.js +2 -0
  49. package/es/LmEditTable/sortableBox.d.ts +5 -0
  50. package/es/LmEditTable/sortableBox.js +13 -0
  51. package/es/LmEditTable/sortableItem.d.ts +2 -0
  52. package/es/LmEditTable/sortableItem.js +43 -0
  53. package/es/LmEditTable/style/index.d.ts +1 -0
  54. package/es/LmEditTable/style/index.js +1 -0
  55. package/es/LmEditTable/style/style.css +574 -0
  56. package/es/LmTable/Table.js +15 -3
  57. package/es/Select/style/index.css +3 -0
  58. package/es/index.d.ts +2 -0
  59. package/es/index.js +3 -1
  60. package/lib/CardTable/card/PictureTextColumn.js +11 -6
  61. package/lib/CardTable/card/PictureTextRow.js +11 -6
  62. package/lib/CardTable/fns/index.js +106 -0
  63. package/lib/CardTable/hooks/usePagination.js +128 -0
  64. package/lib/CardTable/index.js +3 -0
  65. package/lib/CardTable/style/style.css +13 -1
  66. package/lib/CardTable/table/TableRoot.js +43 -64
  67. package/lib/CardTable/table/TableWrapper.js +4 -0
  68. package/lib/CardTable/toolbar/TablePagination.js +62 -0
  69. package/lib/CardTable/toolbar/ToolBarBottom.js +47 -0
  70. package/lib/CustomTableOption/columnsSort.js +5 -5
  71. package/lib/CustomTableOption/filterSort.js +3 -3
  72. package/lib/CustomTableOption/index.js +1 -2
  73. package/lib/Input/style/style.css +21 -1
  74. package/lib/List/index.d.ts +2 -0
  75. package/lib/List/index.js +15 -0
  76. package/lib/List/style/index.css +505 -0
  77. package/lib/List/style/index.d.ts +1 -0
  78. package/lib/List/style/index.js +3 -0
  79. package/lib/LmEditTable/DndContainer.d.ts +5 -0
  80. package/lib/LmEditTable/DndContainer.js +49 -0
  81. package/lib/LmEditTable/DragHandle.d.ts +4 -0
  82. package/lib/LmEditTable/DragHandle.js +37 -0
  83. package/lib/LmEditTable/EditTable.d.ts +31 -0
  84. package/lib/LmEditTable/EditTable.js +925 -0
  85. package/lib/LmEditTable/index.d.ts +2 -0
  86. package/lib/LmEditTable/index.js +13 -0
  87. package/lib/LmEditTable/sortableBox.d.ts +5 -0
  88. package/lib/LmEditTable/sortableBox.js +24 -0
  89. package/lib/LmEditTable/sortableItem.d.ts +2 -0
  90. package/lib/LmEditTable/sortableItem.js +55 -0
  91. package/lib/LmEditTable/style/index.d.ts +1 -0
  92. package/lib/LmEditTable/style/index.js +3 -0
  93. package/lib/LmEditTable/style/style.css +574 -0
  94. package/lib/LmTable/Table.js +15 -3
  95. package/lib/Select/style/index.css +3 -0
  96. package/lib/index.d.ts +2 -0
  97. package/lib/index.js +17 -1
  98. package/package.json +2 -1
@@ -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/esm/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/esm/toConsumableArray"));
13
+
14
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
15
+
16
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/asyncToGenerator"));
17
+
18
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
19
+
20
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/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/esm/toConsumableArray"));
12
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectWithoutProperties"));
13
13
 
14
14
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
15
15
 
16
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectWithoutProperties"));
17
-
18
16
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/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
 
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
5
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports.default = void 0;
11
+
12
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/extends"));
13
+
14
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectWithoutProperties"));
15
+
16
+ var _react = _interopRequireWildcard(require("react"));
17
+
18
+ var _linkmoreDesign = require("linkmore-design");
19
+
20
+ var _excluded = ["onChange"];
21
+
22
+ var LmCardTablePagination = function LmCardTablePagination(_ref) {
23
+ var table = _ref.table;
24
+ var dispatch = table.dispatch,
25
+ _table$dataSource = table.dataSource,
26
+ dataSource = _table$dataSource === void 0 ? [] : _table$dataSource,
27
+ _table$pagination = table.pagination,
28
+ onChange = _table$pagination.onChange,
29
+ paginationProps = (0, _objectWithoutProperties2.default)(_table$pagination, _excluded); // 分页改变事件
30
+
31
+ var onPageChange = function onPageChange(pageIndex, pageSize) {
32
+ dispatch({
33
+ type: 'changePage',
34
+ page: {
35
+ pageIndex: pageIndex,
36
+ pageSize: pageSize,
37
+ total: (paginationProps === null || paginationProps === void 0 ? void 0 : paginationProps.total) || 0
38
+ }
39
+ });
40
+ onChange === null || onChange === void 0 ? void 0 : onChange(pageIndex, pageSize);
41
+ }; // 默认的配置
42
+
43
+
44
+ var defaultProps = {
45
+ size: 'small',
46
+ showSizeChanger: true,
47
+ showQuickJumper: true,
48
+ showTotal: function showTotal(total) {
49
+ return "\u5171 ".concat(total, " \u6761");
50
+ },
51
+ total: (paginationProps === null || paginationProps === void 0 ? void 0 : paginationProps.total) || (dataSource === null || dataSource === void 0 ? void 0 : dataSource.length) || 0,
52
+ defaultPageSize: 20,
53
+ pageSizeOptions: [20, 50, 100, 500],
54
+ onChange: onPageChange
55
+ };
56
+ return /*#__PURE__*/_react.default.createElement("div", {
57
+ className: "lm_card_table_pagination"
58
+ }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Pagination, (0, _extends2.default)({}, defaultProps, paginationProps)));
59
+ };
60
+
61
+ var _default = LmCardTablePagination;
62
+ exports.default = _default;
@@ -0,0 +1,47 @@
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 _react = _interopRequireDefault(require("react"));
11
+
12
+ var _TablePagination = _interopRequireDefault(require("./TablePagination"));
13
+
14
+ var CardToolBarBottom = /*#__PURE__*/_react.default.memo(function (_ref) {
15
+ var table = _ref.table;
16
+ var pagination = table.pagination,
17
+ _table$toolbarConfig = table.toolbarConfig,
18
+ toolbarBottom = _table$toolbarConfig.toolbarBottom,
19
+ pager = _table$toolbarConfig.pager; // toolbarBottom与pager一致: 用于插槽
20
+
21
+ var _ref2 = toolbarBottom || pager,
22
+ left = _ref2.left,
23
+ right = _ref2.right;
24
+
25
+ var LeftSlot = function LeftSlot() {
26
+ return left;
27
+ };
28
+
29
+ var RighSlot = function RighSlot() {
30
+ if (!right) {
31
+ return pagination && /*#__PURE__*/_react.default.createElement(_TablePagination.default, {
32
+ table: table
33
+ });
34
+ }
35
+
36
+ if (right) {
37
+ typeof right === 'function' ? right(_TablePagination.default) : right;
38
+ }
39
+ };
40
+
41
+ return /*#__PURE__*/_react.default.createElement("div", {
42
+ className: "lm_card_table_toolbar_bottom"
43
+ }, /*#__PURE__*/_react.default.createElement("div", null), /*#__PURE__*/_react.default.createElement(RighSlot, null));
44
+ });
45
+
46
+ var _default = CardToolBarBottom;
47
+ exports.default = _default;
@@ -107,11 +107,11 @@ var ColumnsSort = /*#__PURE__*/forwardRef(function (_ref, ref) {
107
107
  cloneCol.forEach(function (item, index) {
108
108
  var _a, _b, _c;
109
109
 
110
- if (ColumnsStateValue === null || ColumnsStateValue === void 0 ? void 0 : ColumnsStateValue.hasOwnProperty(item.dataIndex)) {
111
- var order = (_a = ColumnsStateValue[item.dataIndex]) === null || _a === void 0 ? void 0 : _a.order;
112
- item.fixed = ((_b = ColumnsStateValue[item.dataIndex]) === null || _b === void 0 ? void 0 : _b.fixed) || undefined;
110
+ if (colStateValue === null || colStateValue === void 0 ? void 0 : colStateValue.hasOwnProperty(item.dataIndex)) {
111
+ var order = (_a = colStateValue[item.dataIndex]) === null || _a === void 0 ? void 0 : _a.order;
112
+ item.fixed = ((_b = colStateValue[item.dataIndex]) === null || _b === void 0 ? void 0 : _b.fixed) || undefined;
113
113
  item.order = [undefined, null].includes(order) ? index : order;
114
- item.show = ((_c = ColumnsStateValue[item.dataIndex]) === null || _c === void 0 ? void 0 : _c.show) === false ? false : true;
114
+ item.show = ((_c = colStateValue[item.dataIndex]) === null || _c === void 0 ? void 0 : _c.show) === false ? false : true;
115
115
  }
116
116
  });
117
117
  var leftSortItem = [];
@@ -150,7 +150,7 @@ var ColumnsSort = /*#__PURE__*/forwardRef(function (_ref, ref) {
150
150
  useEffect(function () {
151
151
  setLocalColumns(columns);
152
152
  setColStateValue(ColumnsStateValue);
153
- }, []);
153
+ }, [columns]);
154
154
  var leftSensors = useSensors(useSensor(PointerSensor), useSensor(KeyboardSensor, {
155
155
  coordinateGetter: sortableKeyboardCoordinates
156
156
  }));