@teamix/pro 1.5.40 → 1.5.42

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/es/index.d.ts CHANGED
@@ -30,5 +30,5 @@ export * from './sidebar';
30
30
  export * from './utils';
31
31
  export * from './timeline';
32
32
  export * from './image';
33
- declare const version = "1.5.40";
33
+ declare const version = "1.5.42";
34
34
  export { version, ProAction, ProCard, ProField, ProForm, ProInfo, ProPageContainer, ProPageHeader, ProSkeleton, ProTable, ProSidebar, ProTimeline, TeamixIcon, ProImage, hooks, nocode, templates, utils, };
package/es/index.js CHANGED
@@ -37,7 +37,7 @@ export * from './sidebar';
37
37
  export * from './utils';
38
38
  export * from './timeline';
39
39
  export * from './image';
40
- var version = '1.5.40';
40
+ var version = '1.5.42';
41
41
  // By TeamixTest
42
42
  window.postMessage({
43
43
  source: 'teamix-test-devtools',
@@ -247,7 +247,7 @@ var ProSidebarTree = function ProSidebarTree(props) {
247
247
  if (extra === null || extra === void 0 ? void 0 : (_extra$event = extra.event) === null || _extra$event === void 0 ? void 0 : (_extra$event$target = _extra$event.target) === null || _extra$event$target === void 0 ? void 0 : (_extra$event$target$c = _extra$event$target.closest) === null || _extra$event$target$c === void 0 ? void 0 : _extra$event$target$c.call(_extra$event$target, '.teamix-pro-sidebar-delete-overlay')) {
248
248
  return;
249
249
  }
250
- if (!selectedKeys) {
250
+ if (!selectedKeysProp) {
251
251
  setSelectedKeys(value);
252
252
  }
253
253
  onSelect === null || onSelect === void 0 ? void 0 : onSelect(value, extra);
@@ -264,6 +264,12 @@ var ProSidebarTree = function ProSidebarTree(props) {
264
264
  setExpandedKeys(key);
265
265
  setAutoExpandParent(false);
266
266
  };
267
+ var renderTreeNodeGroup = function renderTreeNodeGroup() {
268
+ if (onBeforeRenderNodeEvent) {
269
+ return renderTreeNodeDependenceValue(dataSource, onBeforeRenderNodeEvent, checkedKeys, selectedKeys);
270
+ }
271
+ return renderTreeNode(dataSource);
272
+ };
267
273
  return /*#__PURE__*/React.createElement("div", {
268
274
  className: cls({
269
275
  '': true,
@@ -283,6 +289,6 @@ var ProSidebarTree = function ProSidebarTree(props) {
283
289
  className: "".concat(cls({
284
290
  checkable: others.checkable
285
291
  }), " ").concat(className)
286
- }, others), !onBeforeRenderNodeEvent && renderTreeNode(dataSource), onBeforeRenderNodeEvent && renderTreeNodeDependenceValue(dataSource, onBeforeRenderNodeEvent, checkedKeys, selectedKeys)));
292
+ }, others), renderTreeNodeGroup()));
287
293
  };
288
294
  export default ProSidebarTree;
@@ -170,7 +170,7 @@ export function renderTreeNode(data) {
170
170
  return /*#__PURE__*/React.createElement(Tree.Node, _objectSpread({
171
171
  key: item.value,
172
172
  label: /*#__PURE__*/React.createElement(ProSideBarTreeNode, _objectSpread({}, labelProps))
173
- }, nodeProps), item.children && item.children.length > 0 && renderTreeNode(item.children));
173
+ }, nodeProps), (item === null || item === void 0 ? void 0 : item.children) && item.children.length > 0 && renderTreeNode(item.children));
174
174
  });
175
175
  }
176
176
  // 渲染树节点 依赖 value
@@ -197,7 +197,7 @@ var equalColumns = function equalColumns(prevProps, nextProps) {
197
197
  return false;
198
198
  }
199
199
  // 操作列的时候强制刷新 || 当 value 值拿不到的时候
200
- if (preValue === false && nextValue === false || nextValue === undefined) {
200
+ if (preValue === false || nextValue === false || preValue === undefined || nextValue === undefined) {
201
201
  return false;
202
202
  }
203
203
  // 如果不是 string 类型,全部刷新
@@ -207,18 +207,6 @@ var equalColumns = function equalColumns(prevProps, nextProps) {
207
207
  if (preValue === nextValue) {
208
208
  return true;
209
209
  }
210
- // 针对 value 是数组类型的判断 value 是否和原来相等,相等则不渲染
211
- if (Array.isArray(nextValue) && Array.isArray(preValue)) {
212
- var nextValueStr = nextValue.map(function (item) {
213
- return item.TagValue;
214
- });
215
- var preValueStr = preValue.map(function (item) {
216
- return item.TagValue;
217
- });
218
- if (nextValueStr.toString() === preValueStr.toString()) {
219
- return true;
220
- }
221
- }
222
210
  return false;
223
211
  };
224
212
  export default /*#__PURE__*/React.memo(Cell, equalColumns);
@@ -23,20 +23,22 @@ var CheckboxItem = Menu.CheckboxItem;
23
23
  var cls = usePrefixCls('teamix-pro-table-toolbar-filter');
24
24
  var RadioItem = Menu.RadioItem;
25
25
  var Filter = function Filter(props) {
26
- var _urlState$split, _urlState, _urlState$split2;
26
+ var _ref3, _urlState$split, _urlState, _urlState$split2;
27
27
  var column = props.column,
28
28
  actionRef = props.actionRef,
29
29
  switchCardView = props.switchCardView,
30
30
  bindUrlProps = props.bindUrlProps,
31
31
  bindUrl = props.bindUrl;
32
32
  var _column$filtersWidth = column.filtersWidth,
33
- filtersWidth = _column$filtersWidth === void 0 ? 130 : _column$filtersWidth;
33
+ filtersWidth = _column$filtersWidth === void 0 ? 130 : _column$filtersWidth,
34
+ _column$defaultFilter = column.defaultFilterSelectedKeys,
35
+ defaultFilterSelectedKeys = _column$defaultFilter === void 0 ? [] : _column$defaultFilter;
34
36
  var _ref = bindUrl ? useUrlState() : [],
35
37
  _ref2 = _slicedToArray(_ref, 2),
36
38
  urlState = _ref2[0],
37
39
  setUrlState = _ref2[1];
38
40
  // 选中过滤项
39
- var _useState = useState((_urlState$split = urlState === null || urlState === void 0 ? void 0 : (_urlState = urlState["filter".concat(column === null || column === void 0 ? void 0 : column.dataIndex)]) === null || _urlState === void 0 ? void 0 : (_urlState$split2 = _urlState.split) === null || _urlState$split2 === void 0 ? void 0 : _urlState$split2.call(_urlState, ',')) !== null && _urlState$split !== void 0 ? _urlState$split : []),
41
+ var _useState = useState((_ref3 = (_urlState$split = urlState === null || urlState === void 0 ? void 0 : (_urlState = urlState["filter".concat(column === null || column === void 0 ? void 0 : column.dataIndex)]) === null || _urlState === void 0 ? void 0 : (_urlState$split2 = _urlState.split) === null || _urlState$split2 === void 0 ? void 0 : _urlState$split2.call(_urlState, ',')) !== null && _urlState$split !== void 0 ? _urlState$split : defaultFilterSelectedKeys) !== null && _ref3 !== void 0 ? _ref3 : []),
40
42
  _useState2 = _slicedToArray(_useState, 2),
41
43
  selected = _useState2[0],
42
44
  setSelected = _useState2[1];
@@ -61,11 +63,11 @@ var Filter = function Filter(props) {
61
63
  var filters = column.dataSource;
62
64
  // 转换 valueEnum 为 options
63
65
  if (!Array.isArray(column.dataSource)) {
64
- filters = Object.entries(column.dataSource).map(function (_ref3) {
66
+ filters = Object.entries(column.dataSource).map(function (_ref4) {
65
67
  var _nv$label, _nv$color;
66
- var _ref4 = _slicedToArray(_ref3, 2),
67
- k = _ref4[0],
68
- v = _ref4[1];
68
+ var _ref5 = _slicedToArray(_ref4, 2),
69
+ k = _ref5[0],
70
+ v = _ref5[1];
69
71
  var nv = v;
70
72
  return _objectSpread(_objectSpread({
71
73
  value: k
@@ -145,10 +147,10 @@ var Filter = function Filter(props) {
145
147
  };
146
148
  // 渲染单选
147
149
  var renderSingle = function renderSingle() {
148
- return filters === null || filters === void 0 ? void 0 : filters.map(function (_ref5) {
150
+ return filters === null || filters === void 0 ? void 0 : filters.map(function (_ref6) {
149
151
  var _value$toString;
150
- var label = _ref5.label,
151
- value = _ref5.value;
152
+ var label = _ref6.label,
153
+ value = _ref6.value;
152
154
  var valueStr = (_value$toString = value === null || value === void 0 ? void 0 : value.toString()) !== null && _value$toString !== void 0 ? _value$toString : '';
153
155
  return /*#__PURE__*/React.createElement(RadioItem, {
154
156
  id: valueStr,
@@ -168,10 +170,10 @@ var Filter = function Filter(props) {
168
170
  };
169
171
  // 渲染多选
170
172
  var renderMultiple = function renderMultiple() {
171
- return filters === null || filters === void 0 ? void 0 : filters.map(function (_ref6) {
173
+ return filters === null || filters === void 0 ? void 0 : filters.map(function (_ref7) {
172
174
  var _value$toString2;
173
- var label = _ref6.label,
174
- value = _ref6.value;
175
+ var label = _ref7.label,
176
+ value = _ref7.value;
175
177
  var valueStr = (_value$toString2 = value === null || value === void 0 ? void 0 : value.toString()) !== null && _value$toString2 !== void 0 ? _value$toString2 : '';
176
178
  return /*#__PURE__*/React.createElement(CheckboxItem, {
177
179
  key: valueStr,
@@ -124,7 +124,11 @@ var FilterColumnIcon = function FilterColumnIcon(props) {
124
124
  // 重置
125
125
  var restColumns = function restColumns(e) {
126
126
  e.stopPropagation();
127
- var keyNewColumns = processColumns(columns);
127
+ var keyNewColumns = processColumns(columns).map(function (item) {
128
+ return _objectSpread(_objectSpread({}, item), {}, {
129
+ columnFilters: (item === null || item === void 0 ? void 0 : item.columnFilters) === undefined ? true : item === null || item === void 0 ? void 0 : item.columnFilters
130
+ });
131
+ });
128
132
  notifyTableRender(keyNewColumns);
129
133
  };
130
134
  // 修改
package/es/table/index.js CHANGED
@@ -16,7 +16,7 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
16
16
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
17
17
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
18
18
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
19
- import React, { useState, useEffect, useRef, useMemo, useCallback } from 'react';
19
+ import React, { useState, useEffect, useRef, useMemo } from 'react';
20
20
  import { Table, Checkbox } from '@alicloudfe/components';
21
21
  import Pagination from './components/Pagination';
22
22
  import TableContent from './components/TableContent';
@@ -815,7 +815,7 @@ var ProTable = function ProTable(props) {
815
815
  }
816
816
  });
817
817
  // 请求函数
818
- var _request = useCallback(function (params, noLoading, filterParams, isReset) {
818
+ var _request = function _request(params, noLoading, filterParams, isReset) {
819
819
  var _dataFilterFormRef$cu2, _actionRef$current$ge, _actionRef$current6, _actionRef$current6$g, _objectSpread4;
820
820
  // 首次渲染表格,获取 urlState 上的 表头 filter 数据
821
821
  if (bindUrl && (bindUrlProps === null || bindUrlProps === void 0 ? void 0 : bindUrlProps.headerFilters) !== false && dataRef.current.flag) {
@@ -930,12 +930,12 @@ var ProTable = function ProTable(props) {
930
930
  getData.run(requestData);
931
931
  }
932
932
  }
933
- }, [bindUrl, bindUrlProps, dataRef, url, customRequest, currentPage, pageSize, propsParams, actionRef.current]);
934
- var onSort = useCallback(function (dataIndex, order) {
933
+ };
934
+ var onSort = function onSort(dataIndex, order) {
935
935
  var nextSort = _defineProperty({}, dataIndex, order);
936
936
  setSort(nextSort);
937
937
  _request(targetFormatSort(nextSort));
938
- }, [_request, targetFormatSort]);
938
+ };
939
939
  // 处理 dataFilter 中的 onFilter、onReset
940
940
  var dataFilter = useMemo(function () {
941
941
  return _objectSpread(_objectSpread({
@@ -1092,7 +1092,7 @@ var ProTable = function ProTable(props) {
1092
1092
  })));
1093
1093
  } else return footerAction;
1094
1094
  };
1095
- var onChangePagination = useCallback(function (currentPage) {
1095
+ var onChangePagination = function onChangePagination(currentPage) {
1096
1096
  var _objectSpread5;
1097
1097
  var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
1098
1098
  // 翻页默认清空选择
@@ -1102,8 +1102,8 @@ var ProTable = function ProTable(props) {
1102
1102
  }
1103
1103
  setCurrentPage(currentPage);
1104
1104
  _request(_objectSpread((_objectSpread5 = {}, _defineProperty(_objectSpread5, targetPageKey, currentPage), _defineProperty(_objectSpread5, "pageSize", pageSize), _objectSpread5), params));
1105
- }, [reserveSelectedRecords, targetPageKey, actionRef, pageSize]);
1106
- var onChangePaginationSize = useCallback(function (currentPageSize) {
1105
+ };
1106
+ var onChangePaginationSize = function onChangePaginationSize(currentPageSize) {
1107
1107
  var _request10;
1108
1108
  // 翻页默认清空选择
1109
1109
  if (!reserveSelectedRecords) {
@@ -1113,7 +1113,7 @@ var ProTable = function ProTable(props) {
1113
1113
  setPageSize(currentPageSize);
1114
1114
  setCurrentPage(1);
1115
1115
  _request((_request10 = {}, _defineProperty(_request10, targetPageSizeKey, currentPageSize), _defineProperty(_request10, targetPageKey, 1), _request10));
1116
- }, [reserveSelectedRecords, actionRef.current, targetPageSizeKey, targetPageKey, currentPage]);
1116
+ };
1117
1117
  var renderFooter = function renderFooter() {
1118
1118
  function renderRowSelection() {
1119
1119
  if (rowSelection) {
@@ -56,6 +56,8 @@ export declare type ProTableColumnProps = {
56
56
  filters?: boolean | ProTableColumnsFilterItemProps[];
57
57
  /** 表头的过滤菜单项过滤方式 single 单选 multiple 多选 */
58
58
  filtersMode?: 'single' | 'multiple';
59
+ /** 表头的过滤菜单项默认值 */
60
+ defaultFilterSelectedKeys?: string[];
59
61
  /** 表头的过滤菜单项在搜索之前的参数操作 */
60
62
  beforeFilter?: (rules: string[]) => string;
61
63
  /** 表头的过滤菜单宽度 */
@@ -42,8 +42,9 @@ function useTableSelection() {
42
42
  var _config$selectedRowKe;
43
43
  setSelectedRowKeys((_config$selectedRowKe = config === null || config === void 0 ? void 0 : config.selectedRowKeys) !== null && _config$selectedRowKe !== void 0 ? _config$selectedRowKe : []);
44
44
  }, [config.selectedRowKeys]);
45
- function _onChange(value, records) {
45
+ function _onChange(value, records, checked, record) {
46
46
  if (primaryKey) {
47
+ var _config$onSelect;
47
48
  var newValue = value.filter(function (v) {
48
49
  return !selectedRowKeys.includes(v);
49
50
  });
@@ -69,8 +70,11 @@ function useTableSelection() {
69
70
  });
70
71
  }
71
72
  setSelectedRecords(nextSelectedRecords);
73
+ config === null || config === void 0 ? void 0 : (_config$onSelect = config.onSelect) === null || _config$onSelect === void 0 ? void 0 : _config$onSelect.call(config, checked, record, nextSelectedRecords);
72
74
  } else {
75
+ var _config$onSelect2;
73
76
  setSelectedRecords(records);
77
+ config === null || config === void 0 ? void 0 : (_config$onSelect2 = config.onSelect) === null || _config$onSelect2 === void 0 ? void 0 : _config$onSelect2.call(config, checked, record, records);
74
78
  }
75
79
  setSelectedRowKeys(value);
76
80
  if (config.onChange) {
@@ -84,14 +88,12 @@ function useTableSelection() {
84
88
  return /*#__PURE__*/React.createElement(Checkbox, _objectSpread({
85
89
  checked: selectedRowKeys.includes(primaryKey),
86
90
  onChange: function onChange(checked) {
87
- var _config$onSelect;
88
- config === null || config === void 0 ? void 0 : (_config$onSelect = config.onSelect) === null || _config$onSelect === void 0 ? void 0 : _config$onSelect.call(config, checked, record, records);
89
91
  if (checked) {
90
- _onChange === null || _onChange === void 0 ? void 0 : _onChange([].concat(_toConsumableArray(selectedRowKeys), [primaryKey]), [record]);
92
+ _onChange === null || _onChange === void 0 ? void 0 : _onChange([].concat(_toConsumableArray(selectedRowKeys), [primaryKey]), [record], checked, record);
91
93
  } else {
92
94
  _onChange === null || _onChange === void 0 ? void 0 : _onChange(selectedRowKeys.filter(function (item) {
93
95
  return item !== primaryKey;
94
- }), [record]);
96
+ }), [record], checked, record);
95
97
  }
96
98
  }
97
99
  }, others));
package/lib/index.d.ts CHANGED
@@ -30,5 +30,5 @@ export * from './sidebar';
30
30
  export * from './utils';
31
31
  export * from './timeline';
32
32
  export * from './image';
33
- declare const version = "1.5.40";
33
+ declare const version = "1.5.42";
34
34
  export { version, ProAction, ProCard, ProField, ProForm, ProInfo, ProPageContainer, ProPageHeader, ProSkeleton, ProTable, ProSidebar, ProTimeline, TeamixIcon, ProImage, hooks, nocode, templates, utils, };
package/lib/index.js CHANGED
@@ -299,7 +299,7 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
299
299
  if (!((_window = window) === null || _window === void 0 ? void 0 : _window.TEAMIXPRO_WITHOUT_ICON)) {
300
300
  _icon.default.setConfig(_utils.default.getTeamixIconConfig());
301
301
  }
302
- var version = '1.5.40';
302
+ var version = '1.5.42';
303
303
  // By TeamixTest
304
304
  exports.version = version;
305
305
  window.postMessage({
@@ -256,7 +256,7 @@ var ProSidebarTree = function ProSidebarTree(props) {
256
256
  if (extra === null || extra === void 0 ? void 0 : (_extra$event = extra.event) === null || _extra$event === void 0 ? void 0 : (_extra$event$target = _extra$event.target) === null || _extra$event$target === void 0 ? void 0 : (_extra$event$target$c = _extra$event$target.closest) === null || _extra$event$target$c === void 0 ? void 0 : _extra$event$target$c.call(_extra$event$target, '.teamix-pro-sidebar-delete-overlay')) {
257
257
  return;
258
258
  }
259
- if (!selectedKeys) {
259
+ if (!selectedKeysProp) {
260
260
  setSelectedKeys(value);
261
261
  }
262
262
  onSelect === null || onSelect === void 0 ? void 0 : onSelect(value, extra);
@@ -273,6 +273,12 @@ var ProSidebarTree = function ProSidebarTree(props) {
273
273
  setExpandedKeys(key);
274
274
  setAutoExpandParent(false);
275
275
  };
276
+ var renderTreeNodeGroup = function renderTreeNodeGroup() {
277
+ if (onBeforeRenderNodeEvent) {
278
+ return (0, _treeNode.renderTreeNodeDependenceValue)(dataSource, onBeforeRenderNodeEvent, checkedKeys, selectedKeys);
279
+ }
280
+ return (0, _treeNode.renderTreeNode)(dataSource);
281
+ };
276
282
  return /*#__PURE__*/_react.default.createElement("div", {
277
283
  className: cls({
278
284
  '': true,
@@ -292,7 +298,7 @@ var ProSidebarTree = function ProSidebarTree(props) {
292
298
  className: "".concat(cls({
293
299
  checkable: others.checkable
294
300
  }), " ").concat(className)
295
- }, others), !onBeforeRenderNodeEvent && (0, _treeNode.renderTreeNode)(dataSource), onBeforeRenderNodeEvent && (0, _treeNode.renderTreeNodeDependenceValue)(dataSource, onBeforeRenderNodeEvent, checkedKeys, selectedKeys)));
301
+ }, others), renderTreeNodeGroup()));
296
302
  };
297
303
  var _default = ProSidebarTree;
298
304
  exports.default = _default;
@@ -181,7 +181,7 @@ function renderTreeNode(data) {
181
181
  return /*#__PURE__*/_react.default.createElement(_components.Tree.Node, _objectSpread({
182
182
  key: item.value,
183
183
  label: /*#__PURE__*/_react.default.createElement(ProSideBarTreeNode, _objectSpread({}, labelProps))
184
- }, nodeProps), item.children && item.children.length > 0 && renderTreeNode(item.children));
184
+ }, nodeProps), (item === null || item === void 0 ? void 0 : item.children) && item.children.length > 0 && renderTreeNode(item.children));
185
185
  });
186
186
  }
187
187
  // 渲染树节点 依赖 value
@@ -201,7 +201,7 @@ var equalColumns = function equalColumns(prevProps, nextProps) {
201
201
  return false;
202
202
  }
203
203
  // 操作列的时候强制刷新 || 当 value 值拿不到的时候
204
- if (preValue === false && nextValue === false || nextValue === undefined) {
204
+ if (preValue === false || nextValue === false || preValue === undefined || nextValue === undefined) {
205
205
  return false;
206
206
  }
207
207
  // 如果不是 string 类型,全部刷新
@@ -211,18 +211,6 @@ var equalColumns = function equalColumns(prevProps, nextProps) {
211
211
  if (preValue === nextValue) {
212
212
  return true;
213
213
  }
214
- // 针对 value 是数组类型的判断 value 是否和原来相等,相等则不渲染
215
- if (Array.isArray(nextValue) && Array.isArray(preValue)) {
216
- var nextValueStr = nextValue.map(function (item) {
217
- return item.TagValue;
218
- });
219
- var preValueStr = preValue.map(function (item) {
220
- return item.TagValue;
221
- });
222
- if (nextValueStr.toString() === preValueStr.toString()) {
223
- return true;
224
- }
225
- }
226
214
  return false;
227
215
  };
228
216
  var _default = /*#__PURE__*/_react.default.memo(Cell, equalColumns);
@@ -32,20 +32,22 @@ var CheckboxItem = _components.Menu.CheckboxItem;
32
32
  var cls = (0, _utils.usePrefixCls)('teamix-pro-table-toolbar-filter');
33
33
  var RadioItem = _components.Menu.RadioItem;
34
34
  var Filter = function Filter(props) {
35
- var _urlState$split, _urlState, _urlState$split2;
35
+ var _ref3, _urlState$split, _urlState, _urlState$split2;
36
36
  var column = props.column,
37
37
  actionRef = props.actionRef,
38
38
  switchCardView = props.switchCardView,
39
39
  bindUrlProps = props.bindUrlProps,
40
40
  bindUrl = props.bindUrl;
41
41
  var _column$filtersWidth = column.filtersWidth,
42
- filtersWidth = _column$filtersWidth === void 0 ? 130 : _column$filtersWidth;
42
+ filtersWidth = _column$filtersWidth === void 0 ? 130 : _column$filtersWidth,
43
+ _column$defaultFilter = column.defaultFilterSelectedKeys,
44
+ defaultFilterSelectedKeys = _column$defaultFilter === void 0 ? [] : _column$defaultFilter;
43
45
  var _ref = bindUrl ? (0, _hooks.useUrlState)() : [],
44
46
  _ref2 = _slicedToArray(_ref, 2),
45
47
  urlState = _ref2[0],
46
48
  setUrlState = _ref2[1];
47
49
  // 选中过滤项
48
- var _useState = (0, _react.useState)((_urlState$split = urlState === null || urlState === void 0 ? void 0 : (_urlState = urlState["filter".concat(column === null || column === void 0 ? void 0 : column.dataIndex)]) === null || _urlState === void 0 ? void 0 : (_urlState$split2 = _urlState.split) === null || _urlState$split2 === void 0 ? void 0 : _urlState$split2.call(_urlState, ',')) !== null && _urlState$split !== void 0 ? _urlState$split : []),
50
+ var _useState = (0, _react.useState)((_ref3 = (_urlState$split = urlState === null || urlState === void 0 ? void 0 : (_urlState = urlState["filter".concat(column === null || column === void 0 ? void 0 : column.dataIndex)]) === null || _urlState === void 0 ? void 0 : (_urlState$split2 = _urlState.split) === null || _urlState$split2 === void 0 ? void 0 : _urlState$split2.call(_urlState, ',')) !== null && _urlState$split !== void 0 ? _urlState$split : defaultFilterSelectedKeys) !== null && _ref3 !== void 0 ? _ref3 : []),
49
51
  _useState2 = _slicedToArray(_useState, 2),
50
52
  selected = _useState2[0],
51
53
  setSelected = _useState2[1];
@@ -70,11 +72,11 @@ var Filter = function Filter(props) {
70
72
  var filters = column.dataSource;
71
73
  // 转换 valueEnum 为 options
72
74
  if (!Array.isArray(column.dataSource)) {
73
- filters = Object.entries(column.dataSource).map(function (_ref3) {
75
+ filters = Object.entries(column.dataSource).map(function (_ref4) {
74
76
  var _nv$label, _nv$color;
75
- var _ref4 = _slicedToArray(_ref3, 2),
76
- k = _ref4[0],
77
- v = _ref4[1];
77
+ var _ref5 = _slicedToArray(_ref4, 2),
78
+ k = _ref5[0],
79
+ v = _ref5[1];
78
80
  var nv = v;
79
81
  return _objectSpread(_objectSpread({
80
82
  value: k
@@ -154,10 +156,10 @@ var Filter = function Filter(props) {
154
156
  };
155
157
  // 渲染单选
156
158
  var renderSingle = function renderSingle() {
157
- return filters === null || filters === void 0 ? void 0 : filters.map(function (_ref5) {
159
+ return filters === null || filters === void 0 ? void 0 : filters.map(function (_ref6) {
158
160
  var _value$toString;
159
- var label = _ref5.label,
160
- value = _ref5.value;
161
+ var label = _ref6.label,
162
+ value = _ref6.value;
161
163
  var valueStr = (_value$toString = value === null || value === void 0 ? void 0 : value.toString()) !== null && _value$toString !== void 0 ? _value$toString : '';
162
164
  return /*#__PURE__*/_react.default.createElement(RadioItem, {
163
165
  id: valueStr,
@@ -177,10 +179,10 @@ var Filter = function Filter(props) {
177
179
  };
178
180
  // 渲染多选
179
181
  var renderMultiple = function renderMultiple() {
180
- return filters === null || filters === void 0 ? void 0 : filters.map(function (_ref6) {
182
+ return filters === null || filters === void 0 ? void 0 : filters.map(function (_ref7) {
181
183
  var _value$toString2;
182
- var label = _ref6.label,
183
- value = _ref6.value;
184
+ var label = _ref7.label,
185
+ value = _ref7.value;
184
186
  var valueStr = (_value$toString2 = value === null || value === void 0 ? void 0 : value.toString()) !== null && _value$toString2 !== void 0 ? _value$toString2 : '';
185
187
  return /*#__PURE__*/_react.default.createElement(CheckboxItem, {
186
188
  key: valueStr,
@@ -131,7 +131,11 @@ var FilterColumnIcon = function FilterColumnIcon(props) {
131
131
  // 重置
132
132
  var restColumns = function restColumns(e) {
133
133
  e.stopPropagation();
134
- var keyNewColumns = processColumns(columns);
134
+ var keyNewColumns = processColumns(columns).map(function (item) {
135
+ return _objectSpread(_objectSpread({}, item), {}, {
136
+ columnFilters: (item === null || item === void 0 ? void 0 : item.columnFilters) === undefined ? true : item === null || item === void 0 ? void 0 : item.columnFilters
137
+ });
138
+ });
135
139
  notifyTableRender(keyNewColumns);
136
140
  };
137
141
  // 修改
@@ -836,7 +836,7 @@ var ProTable = function ProTable(props) {
836
836
  }
837
837
  });
838
838
  // 请求函数
839
- var _request = (0, _react.useCallback)(function (params, noLoading, filterParams, isReset) {
839
+ var _request = function _request(params, noLoading, filterParams, isReset) {
840
840
  var _dataFilterFormRef$cu2, _actionRef$current$ge, _actionRef$current6, _actionRef$current6$g, _objectSpread4;
841
841
  // 首次渲染表格,获取 urlState 上的 表头 filter 数据
842
842
  if (bindUrl && (bindUrlProps === null || bindUrlProps === void 0 ? void 0 : bindUrlProps.headerFilters) !== false && dataRef.current.flag) {
@@ -951,12 +951,12 @@ var ProTable = function ProTable(props) {
951
951
  getData.run(requestData);
952
952
  }
953
953
  }
954
- }, [bindUrl, bindUrlProps, dataRef, url, customRequest, currentPage, pageSize, propsParams, actionRef.current]);
955
- var onSort = (0, _react.useCallback)(function (dataIndex, order) {
954
+ };
955
+ var onSort = function onSort(dataIndex, order) {
956
956
  var nextSort = _defineProperty({}, dataIndex, order);
957
957
  setSort(nextSort);
958
958
  _request(targetFormatSort(nextSort));
959
- }, [_request, targetFormatSort]);
959
+ };
960
960
  // 处理 dataFilter 中的 onFilter、onReset
961
961
  var dataFilter = (0, _react.useMemo)(function () {
962
962
  return _objectSpread(_objectSpread({
@@ -1113,7 +1113,7 @@ var ProTable = function ProTable(props) {
1113
1113
  })));
1114
1114
  } else return footerAction;
1115
1115
  };
1116
- var onChangePagination = (0, _react.useCallback)(function (currentPage) {
1116
+ var onChangePagination = function onChangePagination(currentPage) {
1117
1117
  var _objectSpread5;
1118
1118
  var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
1119
1119
  // 翻页默认清空选择
@@ -1123,8 +1123,8 @@ var ProTable = function ProTable(props) {
1123
1123
  }
1124
1124
  setCurrentPage(currentPage);
1125
1125
  _request(_objectSpread((_objectSpread5 = {}, _defineProperty(_objectSpread5, targetPageKey, currentPage), _defineProperty(_objectSpread5, "pageSize", pageSize), _objectSpread5), params));
1126
- }, [reserveSelectedRecords, targetPageKey, actionRef, pageSize]);
1127
- var onChangePaginationSize = (0, _react.useCallback)(function (currentPageSize) {
1126
+ };
1127
+ var onChangePaginationSize = function onChangePaginationSize(currentPageSize) {
1128
1128
  var _request10;
1129
1129
  // 翻页默认清空选择
1130
1130
  if (!reserveSelectedRecords) {
@@ -1134,7 +1134,7 @@ var ProTable = function ProTable(props) {
1134
1134
  setPageSize(currentPageSize);
1135
1135
  setCurrentPage(1);
1136
1136
  _request((_request10 = {}, _defineProperty(_request10, targetPageSizeKey, currentPageSize), _defineProperty(_request10, targetPageKey, 1), _request10));
1137
- }, [reserveSelectedRecords, actionRef.current, targetPageSizeKey, targetPageKey, currentPage]);
1137
+ };
1138
1138
  var renderFooter = function renderFooter() {
1139
1139
  function renderRowSelection() {
1140
1140
  if (rowSelection) {
@@ -56,6 +56,8 @@ export declare type ProTableColumnProps = {
56
56
  filters?: boolean | ProTableColumnsFilterItemProps[];
57
57
  /** 表头的过滤菜单项过滤方式 single 单选 multiple 多选 */
58
58
  filtersMode?: 'single' | 'multiple';
59
+ /** 表头的过滤菜单项默认值 */
60
+ defaultFilterSelectedKeys?: string[];
59
61
  /** 表头的过滤菜单项在搜索之前的参数操作 */
60
62
  beforeFilter?: (rules: string[]) => string;
61
63
  /** 表头的过滤菜单宽度 */
@@ -47,8 +47,9 @@ function useTableSelection() {
47
47
  var _config$selectedRowKe;
48
48
  setSelectedRowKeys((_config$selectedRowKe = config === null || config === void 0 ? void 0 : config.selectedRowKeys) !== null && _config$selectedRowKe !== void 0 ? _config$selectedRowKe : []);
49
49
  }, [config.selectedRowKeys]);
50
- function _onChange(value, records) {
50
+ function _onChange(value, records, checked, record) {
51
51
  if (primaryKey) {
52
+ var _config$onSelect;
52
53
  var newValue = value.filter(function (v) {
53
54
  return !selectedRowKeys.includes(v);
54
55
  });
@@ -74,8 +75,11 @@ function useTableSelection() {
74
75
  });
75
76
  }
76
77
  setSelectedRecords(nextSelectedRecords);
78
+ config === null || config === void 0 ? void 0 : (_config$onSelect = config.onSelect) === null || _config$onSelect === void 0 ? void 0 : _config$onSelect.call(config, checked, record, nextSelectedRecords);
77
79
  } else {
80
+ var _config$onSelect2;
78
81
  setSelectedRecords(records);
82
+ config === null || config === void 0 ? void 0 : (_config$onSelect2 = config.onSelect) === null || _config$onSelect2 === void 0 ? void 0 : _config$onSelect2.call(config, checked, record, records);
79
83
  }
80
84
  setSelectedRowKeys(value);
81
85
  if (config.onChange) {
@@ -89,14 +93,12 @@ function useTableSelection() {
89
93
  return /*#__PURE__*/_react.default.createElement(_components.Checkbox, _objectSpread({
90
94
  checked: selectedRowKeys.includes(primaryKey),
91
95
  onChange: function onChange(checked) {
92
- var _config$onSelect;
93
- config === null || config === void 0 ? void 0 : (_config$onSelect = config.onSelect) === null || _config$onSelect === void 0 ? void 0 : _config$onSelect.call(config, checked, record, records);
94
96
  if (checked) {
95
- _onChange === null || _onChange === void 0 ? void 0 : _onChange([].concat(_toConsumableArray(selectedRowKeys), [primaryKey]), [record]);
97
+ _onChange === null || _onChange === void 0 ? void 0 : _onChange([].concat(_toConsumableArray(selectedRowKeys), [primaryKey]), [record], checked, record);
96
98
  } else {
97
99
  _onChange === null || _onChange === void 0 ? void 0 : _onChange(selectedRowKeys.filter(function (item) {
98
100
  return item !== primaryKey;
99
- }), [record]);
101
+ }), [record], checked, record);
100
102
  }
101
103
  }
102
104
  }, others));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@teamix/pro",
3
- "version": "1.5.40",
3
+ "version": "1.5.42",
4
4
  "description": "TeamixPro大包",
5
5
  "keywords": [
6
6
  "aliyun",