@zat-design/sisyphus-react 3.10.3 → 3.10.4-beta.2

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 (47) hide show
  1. package/dist/index.esm.css +6 -0
  2. package/dist/less.esm.css +6 -0
  3. package/es/ProEditTable/components/RcTable/VirtualTable.d.ts +2 -5
  4. package/es/ProEditTable/components/RcTable/VirtualTable.js +5 -163
  5. package/es/ProEditTable/components/RcTable/index.d.ts +1 -1
  6. package/es/ProEditTable/components/RcTable/index.js +1 -1
  7. package/es/ProEditTable/components/RenderField/index.js +2 -2
  8. package/es/ProEditTable/index.js +44 -13
  9. package/es/ProEditTable/propsType.d.ts +0 -1
  10. package/es/ProEditTable/style/index.less +3 -1
  11. package/es/ProEditTable/utils/config.d.ts +1 -1
  12. package/es/ProEditTable/utils/config.js +11 -3
  13. package/es/ProEditTable/utils/index.js +0 -71
  14. package/es/ProForm/components/base/InputNumber/index.js +2 -1
  15. package/es/ProForm/components/render/ConfirmWrapper.js +41 -21
  16. package/es/ProSelect/index.js +31 -6
  17. package/es/ProStep/components/Item/index.d.ts +3 -3
  18. package/es/ProStep/components/Item/index.js +22 -6
  19. package/es/ProStep/index.d.ts +1 -1
  20. package/es/ProStep/propsType.d.ts +4 -1
  21. package/es/ProTable/hooks/useAntdTable.js +45 -46
  22. package/es/ProTable/style/index.less +3 -1
  23. package/es/ProTable/utils/index.d.ts +2 -0
  24. package/es/ProTable/utils/index.js +5 -0
  25. package/lib/ProEditTable/components/RcTable/VirtualTable.d.ts +2 -5
  26. package/lib/ProEditTable/components/RcTable/VirtualTable.js +3 -161
  27. package/lib/ProEditTable/components/RcTable/index.d.ts +1 -1
  28. package/lib/ProEditTable/components/RenderField/index.js +2 -2
  29. package/lib/ProEditTable/index.js +43 -12
  30. package/lib/ProEditTable/propsType.d.ts +0 -1
  31. package/lib/ProEditTable/style/index.less +3 -1
  32. package/lib/ProEditTable/utils/config.d.ts +1 -1
  33. package/lib/ProEditTable/utils/config.js +11 -3
  34. package/lib/ProEditTable/utils/index.js +0 -71
  35. package/lib/ProForm/components/base/InputNumber/index.js +2 -1
  36. package/lib/ProForm/components/render/ConfirmWrapper.js +41 -21
  37. package/lib/ProSelect/index.js +30 -5
  38. package/lib/ProStep/components/Item/index.d.ts +3 -3
  39. package/lib/ProStep/components/Item/index.js +22 -6
  40. package/lib/ProStep/index.d.ts +1 -1
  41. package/lib/ProStep/propsType.d.ts +4 -1
  42. package/lib/ProTable/hooks/useAntdTable.js +42 -43
  43. package/lib/ProTable/style/index.less +3 -1
  44. package/lib/ProTable/utils/index.d.ts +2 -0
  45. package/lib/ProTable/utils/index.js +6 -1
  46. package/package.json +7 -6
  47. package/.vscode/extensions.json +0 -5
@@ -8,6 +8,8 @@ Object.defineProperty(exports, "__esModule", {
8
8
  exports.default = void 0;
9
9
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
10
10
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
+ var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
12
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
11
13
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
12
14
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
15
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
@@ -113,7 +115,6 @@ var ProEditTable = function ProEditTable(_ref, ref) {
113
115
  selectedRows = state.selectedRows,
114
116
  page = state.page;
115
117
  var virtualRowName = (0, _tools.getNamePath)((0, _lodash.isArray)(name) ? name : [name], virtualKey);
116
- var cacheMap = (0, _react.useRef)({});
117
118
  // 样式处理
118
119
  var _className = (0, _classnames.default)({
119
120
  'pro-edit-table': true,
@@ -163,13 +164,51 @@ var ProEditTable = function ProEditTable(_ref, ref) {
163
164
  return getRowKey(item) === getRowKey(record);
164
165
  }));
165
166
  };
167
+ // 分页变更
168
+ var handlePageChange = (0, _react.useCallback)(/*#__PURE__*/function () {
169
+ var _ref4 = (0, _asyncToGenerator2.default)(/*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee(current, pageSize) {
170
+ return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
171
+ while (1) switch (_context.prev = _context.next) {
172
+ case 0:
173
+ _context.prev = 0;
174
+ if (!pagination) {
175
+ _context.next = 5;
176
+ break;
177
+ }
178
+ _context.next = 4;
179
+ return form.validateFields([name], {
180
+ recursive: true
181
+ });
182
+ case 4:
183
+ setState({
184
+ page: {
185
+ pageNum: current,
186
+ pageSize: pageSize !== null && pageSize !== void 0 ? pageSize : page.pageSize
187
+ }
188
+ });
189
+ case 5:
190
+ _context.next = 10;
191
+ break;
192
+ case 7:
193
+ _context.prev = 7;
194
+ _context.t0 = _context["catch"](0);
195
+ (0, _tools.handleScrollToError)();
196
+ case 10:
197
+ case "end":
198
+ return _context.stop();
199
+ }
200
+ }, _callee, null, [[0, 7]]);
201
+ }));
202
+ return function (_x, _x2) {
203
+ return _ref4.apply(this, arguments);
204
+ };
205
+ }(), []);
166
206
  var config = (0, _objectSpread2.default)({
167
207
  form: form,
168
208
  mode: mode,
169
209
  isView: isView,
170
210
  viewEmpty: viewEmpty,
171
211
  disabled: disabled,
172
- cacheMap: cacheMap,
173
212
  cellNamePath: cellNamePath,
174
213
  forceUpdate: forceUpdate,
175
214
  insertType: insertType,
@@ -197,7 +236,8 @@ var ProEditTable = function ProEditTable(_ref, ref) {
197
236
  rowDisabled: rowDisabled,
198
237
  actionDirection: actionDirection,
199
238
  diffConfig: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, resetProps === null || resetProps === void 0 ? void 0 : (_resetProps$otherProp = resetProps.otherProps) === null || _resetProps$otherProp === void 0 ? void 0 : _resetProps$otherProp.diffConfig), diffConfig),
200
- getIsNew: getIsNew
239
+ getIsNew: getIsNew,
240
+ handlePageChange: handlePageChange
201
241
  }, resetProps);
202
242
  // 编辑行设置下样式
203
243
  var _rowClassName = function _rowClassName(record) {
@@ -248,15 +288,6 @@ var ProEditTable = function ProEditTable(_ref, ref) {
248
288
  },
249
289
  hideSelectAll: isHideCheckBox
250
290
  }, rowSelection);
251
- // 分页变更
252
- var handlePageChange = (0, _react.useCallback)(function (current, pageSize) {
253
- setState({
254
- page: {
255
- pageNum: current,
256
- pageSize: pageSize
257
- }
258
- });
259
- }, []);
260
291
  // 空列表状态
261
292
  var empty = function empty() {
262
293
  var _toolbarProps$filter;
@@ -98,7 +98,6 @@ export interface ProColumnsProps<Values = any, T = any> extends Omit<FormItemPro
98
98
  labelRequired?: boolean;
99
99
  name?: NamePath;
100
100
  names?: NamePath[];
101
- cache?: boolean;
102
101
  isEditable?: boolean | RequiredFn<T>;
103
102
  valueType?: ProFormValueType | ((text?: any, record?: any, options?: OptionsProps) => ProFormValueType);
104
103
  tooltip?: string | ({
@@ -151,7 +151,9 @@
151
151
  background-color: var(--zaui-table-header-bg, #f2f3f5);
152
152
  color : var(--zaui-text, #343434);
153
153
  font-weight : 600;
154
-
154
+ td{
155
+ padding: 8px 16px;
156
+ }
155
157
  .@{ant-prefix}-table-cell-fix-left,
156
158
  .@{ant-prefix}-table-cell-fix-right {
157
159
  background-color: var(--zaui-table-header-bg, #f2f3f5);
@@ -20,6 +20,6 @@ export declare const actions: {
20
20
  save: ({ record, editingKeys, setState, form, rowName, virtualRowName, result }: any) => Promise<void>;
21
21
  cancel: ({ name, record, editingKeys, setState, form, virtualRowName, virtualKey }: any) => void;
22
22
  delete: ({ name, record, editingKeys, setState, form, virtualKey, onlyOneLineMsg }: any) => boolean;
23
- add: ({ result, insertType, editingKeys, setState, form, name, virtualName, virtualKey, onlyOneLineMsg, tableRef, prefixCls, }: any) => Promise<boolean>;
23
+ add: ({ result, insertType, editingKeys, setState, form, name, virtualName, virtualKey, onlyOneLineMsg, tableRef, prefixCls, page, handlePageChange, }: any) => Promise<boolean>;
24
24
  mulDelete: ({ form, name, virtualKey, setState, selectedRowKeys, editingKeys }: any) => void;
25
25
  };
@@ -12,6 +12,7 @@ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/obje
12
12
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
13
  var _jsxRuntime = require("react/jsx-runtime");
14
14
  var _icons = require("@ant-design/icons");
15
+ var _utils = require("@zat-design/utils");
15
16
  var _antd = require("antd");
16
17
  var _lodash = require("lodash");
17
18
  var _tools = require("./tools");
@@ -174,11 +175,11 @@ var actions = exports.actions = {
174
175
  add: function () {
175
176
  var _add = (0, _asyncToGenerator2.default)(/*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee2(_ref5) {
176
177
  var _tableRef$current$que, _tableRef$current$que2;
177
- var result, insertType, editingKeys, setState, form, name, virtualName, virtualKey, onlyOneLineMsg, tableRef, _ref5$prefixCls, prefixCls, nextData, rowKey, addData, nextEditingKeys;
178
+ var result, insertType, editingKeys, setState, form, name, virtualName, virtualKey, onlyOneLineMsg, tableRef, _ref5$prefixCls, prefixCls, page, handlePageChange, nextData, rowKey, addData, nextPageNum, nextEditingKeys;
178
179
  return (0, _regeneratorRuntime2.default)().wrap(function _callee2$(_context2) {
179
180
  while (1) switch (_context2.prev = _context2.next) {
180
181
  case 0:
181
- result = _ref5.result, insertType = _ref5.insertType, editingKeys = _ref5.editingKeys, setState = _ref5.setState, form = _ref5.form, name = _ref5.name, virtualName = _ref5.virtualName, virtualKey = _ref5.virtualKey, onlyOneLineMsg = _ref5.onlyOneLineMsg, tableRef = _ref5.tableRef, _ref5$prefixCls = _ref5.prefixCls, prefixCls = _ref5$prefixCls === void 0 ? 'ant' : _ref5$prefixCls;
182
+ result = _ref5.result, insertType = _ref5.insertType, editingKeys = _ref5.editingKeys, setState = _ref5.setState, form = _ref5.form, name = _ref5.name, virtualName = _ref5.virtualName, virtualKey = _ref5.virtualKey, onlyOneLineMsg = _ref5.onlyOneLineMsg, tableRef = _ref5.tableRef, _ref5$prefixCls = _ref5.prefixCls, prefixCls = _ref5$prefixCls === void 0 ? 'ant' : _ref5$prefixCls, page = _ref5.page, handlePageChange = _ref5.handlePageChange;
182
183
  nextData = (0, _toConsumableArray2.default)(form.getFieldValue(name) || []); // 单行编辑时,需要先保存,才能进行下面的编辑
183
184
  if (!(virtualKey && editingKeys.length >= 1)) {
184
185
  _context2.next = 5;
@@ -195,7 +196,14 @@ var actions = exports.actions = {
195
196
  addData.addFlag = true;
196
197
  addData.isEditing = true;
197
198
  }
198
- insertType === 'before' ? nextData.unshift(addData) : nextData.push(addData);
199
+ if (insertType === 'before') {
200
+ nextData.unshift(addData);
201
+ handlePageChange(1);
202
+ } else {
203
+ nextData.push(addData);
204
+ nextPageNum = Math.ceil(_utils.tools.calc(nextData.length, '/', page.pageSize));
205
+ handlePageChange(nextPageNum);
206
+ }
199
207
  // 当单选情况下,存储正在编辑值
200
208
  if (virtualKey) {
201
209
  nextEditingKeys = (0, _toConsumableArray2.default)(editingKeys); // 开启编辑状态
@@ -5,7 +5,6 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.transformColumns = void 0;
8
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
8
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
9
  var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
11
10
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
@@ -205,13 +204,10 @@ var transformColumns = exports.transformColumns = function transformColumns() {
205
204
  virtualKey = config.virtualKey,
206
205
  requiredAlign = config.requiredAlign,
207
206
  isView = config.isView,
208
- cacheMap = config.cacheMap,
209
207
  setState = config.setState,
210
208
  page = config.page;
211
209
  var isCell = mode === 'cell';
212
210
  var _columns = (0, _tools.cloneDeepFilterNode)(columns);
213
- // 你的函数代码
214
- var _cacheMap = (0, _objectSpread2.default)({}, cacheMap.current);
215
211
  var pageNum = _utils.tools.calc(page.pageNum, '-', 1);
216
212
  var firstIndex = _utils.tools.calc(pageNum, '*', page.pageSize);
217
213
  _columns.forEach(function (item, index) {
@@ -284,26 +280,6 @@ var transformColumns = exports.transformColumns = function transformColumns() {
284
280
  if (item.className) {
285
281
  item.className = (0, _toConsumableArray2.default)(new Set(item.className.split(' '))).join(' ');
286
282
  }
287
- // 当列表配置cache,接口请求静态数据会做数据缓存
288
- if (item.cache) {
289
- var _item$fieldProps3;
290
- // 初始化加载ProSelect,缓存当前useRequest
291
- if (item.type === 'ProSelect') {
292
- var _cacheMap$item$dataIn, _cacheMap$item$dataIn2;
293
- if (!(_cacheMap === null || _cacheMap === void 0 ? void 0 : (_cacheMap$item$dataIn = _cacheMap[item.dataIndex]) === null || _cacheMap$item$dataIn === void 0 ? void 0 : (_cacheMap$item$dataIn2 = _cacheMap$item$dataIn.dataSource) === null || _cacheMap$item$dataIn2 === void 0 ? void 0 : _cacheMap$item$dataIn2.length)) {
294
- var _item$fieldProps, _item$fieldProps2;
295
- _cacheMap[item.dataIndex] = {
296
- useRequest: (_item$fieldProps = item.fieldProps) === null || _item$fieldProps === void 0 ? void 0 : _item$fieldProps.useRequest,
297
- dataSource: [],
298
- transformResponse: (_item$fieldProps2 = item.fieldProps) === null || _item$fieldProps2 === void 0 ? void 0 : _item$fieldProps2.transformResponse
299
- };
300
- } else {
301
- var _cacheMap$item$dataIn3;
302
- item.fieldProps.dataSource = (_cacheMap$item$dataIn3 = _cacheMap[item.dataIndex]) === null || _cacheMap$item$dataIn3 === void 0 ? void 0 : _cacheMap$item$dataIn3.dataSource;
303
- }
304
- }
305
- (_item$fieldProps3 = item.fieldProps) === null || _item$fieldProps3 === void 0 ? true : delete _item$fieldProps3.useRequest;
306
- }
307
283
  var _render = function _render(text, record, index) {
308
284
  var isEditing = !virtualKey || editingKeys.includes(record.rowKey) || record.addFlag;
309
285
  var namePath = (0, _lodash.isArray)(name) ? name : [name];
@@ -394,53 +370,6 @@ var transformColumns = exports.transformColumns = function transformColumns() {
394
370
  }));
395
371
  actionColumn && _columns.push(actionColumn);
396
372
  }
397
- // cacheMap 用来存储缓存值,若有值后不再请求
398
- if (JSON.stringify(cacheMap.current) === '{}') {
399
- Promise.all(Object.entries(_cacheMap).map(/*#__PURE__*/function () {
400
- var _ref4 = (0, _asyncToGenerator2.default)(/*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee2(item) {
401
- var _item, key, value, _ref5, service, option;
402
- return (0, _regeneratorRuntime2.default)().wrap(function _callee2$(_context2) {
403
- while (1) switch (_context2.prev = _context2.next) {
404
- case 0:
405
- _item = (0, _slicedToArray2.default)(item, 2), key = _item[0], value = _item[1];
406
- _ref5 = (value === null || value === void 0 ? void 0 : value.useRequest) || {}, service = _ref5.service, option = _ref5.option;
407
- if (!service) {
408
- _context2.next = 8;
409
- break;
410
- }
411
- _context2.t0 = key;
412
- _context2.next = 6;
413
- return service((0, _objectSpread2.default)({}, option === null || option === void 0 ? void 0 : option.defaultParams));
414
- case 6:
415
- _context2.t1 = _context2.sent;
416
- return _context2.abrupt("return", [_context2.t0, _context2.t1]);
417
- case 8:
418
- return _context2.abrupt("return", [key, {}]);
419
- case 9:
420
- case "end":
421
- return _context2.stop();
422
- }
423
- }, _callee2);
424
- }));
425
- return function (_x3) {
426
- return _ref4.apply(this, arguments);
427
- };
428
- }())).then(function (res) {
429
- res.forEach(function (item) {
430
- var _item2 = (0, _slicedToArray2.default)(item, 2),
431
- key = _item2[0],
432
- value = _item2[1];
433
- var transformResponse = _cacheMap[key].transformResponse;
434
- _cacheMap[key].dataSource = (transformResponse ? transformResponse(value) : value === null || value === void 0 ? void 0 : value.data) || [];
435
- });
436
- cacheMap.current = _cacheMap;
437
- if (JSON.stringify(cacheMap.current) !== '{}') {
438
- setState({
439
- forceUpdate: {}
440
- });
441
- }
442
- });
443
- }
444
373
  // 渲染操作列
445
374
  return _columns;
446
375
  };
@@ -52,12 +52,13 @@ var InputNumber = function InputNumber(props) {
52
52
  var _ref2 = _ProForm.default.useFieldProps() || {},
53
53
  isViewCon = _ref2.isView,
54
54
  viewEmpty = _ref2.viewEmpty,
55
- valueType = _ref2.valueType,
55
+ valueTypeCon = _ref2.valueType,
56
56
  viewType = _ref2.viewType,
57
57
  label = _ref2.label;
58
58
  var initialConfig = (0, _ProConfigProvider.useProConfig)('InputNumber');
59
59
  var activateRef = (0, _react.useRef)(false);
60
60
  var isView = typeof props.isView === 'boolean' ? props.isView : isViewCon; // 组件可直接接收isView参数, 优先级高
61
+ var valueType = 'valueType' in props ? props.valueType : valueTypeCon; // 组件可直接接收valueType参数, 优先级高
61
62
  var valueProps = {};
62
63
  var formatter = function formatter(value) {
63
64
  var _props$precision;
@@ -28,25 +28,25 @@ var ConfirmWrapper = function ConfirmWrapper(props) {
28
28
  var _ProForm$useFieldProp = _index.default.useFieldProps(),
29
29
  form = _ProForm$useFieldProp.form;
30
30
  var handleChange = /*#__PURE__*/function () {
31
- var _ref = (0, _asyncToGenerator2.default)(/*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee(value) {
31
+ var _ref = (0, _asyncToGenerator2.default)(/*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee2(value) {
32
32
  var _len,
33
33
  other,
34
34
  _key,
35
35
  _value,
36
36
  confirmProps,
37
- _args = arguments;
38
- return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
39
- while (1) switch (_context.prev = _context.next) {
37
+ _args2 = arguments;
38
+ return (0, _regeneratorRuntime2.default)().wrap(function _callee2$(_context2) {
39
+ while (1) switch (_context2.prev = _context2.next) {
40
40
  case 0:
41
- for (_len = _args.length, other = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
42
- other[_key - 1] = _args[_key];
41
+ for (_len = _args2.length, other = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
42
+ other[_key - 1] = _args2[_key];
43
43
  }
44
44
  _value = (value === null || value === void 0 ? void 0 : value.target) ? value.target.value : value;
45
45
  if (!(0, _lodash.isFunction)(confirm)) {
46
- _context.next = 8;
46
+ _context2.next = 8;
47
47
  break;
48
48
  }
49
- _context.next = 5;
49
+ _context2.next = 5;
50
50
  return confirm(value, form.getFieldsValue(), {
51
51
  option: other[0],
52
52
  form: form,
@@ -56,13 +56,13 @@ var ConfirmWrapper = function ConfirmWrapper(props) {
56
56
  preValue: form.getFieldValue(otherProps.listName || otherProps.name)
57
57
  });
58
58
  case 5:
59
- _context.t0 = _context.sent;
60
- _context.next = 9;
59
+ _context2.t0 = _context2.sent;
60
+ _context2.next = 9;
61
61
  break;
62
62
  case 8:
63
- _context.t0 = confirm;
63
+ _context2.t0 = confirm;
64
64
  case 9:
65
- confirmProps = _context.t0;
65
+ confirmProps = _context2.t0;
66
66
  // 只处理 false, true 和 对象的情况
67
67
  if (confirmProps === false) {
68
68
  onChange === null || onChange === void 0 ? void 0 : onChange.apply(void 0, [_value].concat(other));
@@ -76,21 +76,41 @@ var ConfirmWrapper = function ConfirmWrapper(props) {
76
76
  }
77
77
  if ((0, _lodash.isObject)(confirmProps)) {
78
78
  _antd.Modal.confirm((0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, 'title' in confirmProps || 'content' in confirmProps ? {} : defaultConfirmProps), confirmProps), {}, {
79
- onOk: function onOk() {
80
- var _confirmProps$onOk;
81
- for (var _len2 = arguments.length, arg = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
82
- arg[_key2] = arguments[_key2];
79
+ onOk: function () {
80
+ var _onOk = (0, _asyncToGenerator2.default)(/*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee() {
81
+ var _confirmProps$onOk;
82
+ var _len2,
83
+ arg,
84
+ _key2,
85
+ _args = arguments;
86
+ return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
87
+ while (1) switch (_context.prev = _context.next) {
88
+ case 0:
89
+ for (_len2 = _args.length, arg = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
90
+ arg[_key2] = _args[_key2];
91
+ }
92
+ _context.next = 3;
93
+ return (_confirmProps$onOk = confirmProps.onOk) === null || _confirmProps$onOk === void 0 ? void 0 : _confirmProps$onOk.call.apply(_confirmProps$onOk, [confirmProps].concat(arg));
94
+ case 3:
95
+ onChange === null || onChange === void 0 ? void 0 : onChange.apply(void 0, [_value].concat(other));
96
+ case 4:
97
+ case "end":
98
+ return _context.stop();
99
+ }
100
+ }, _callee);
101
+ }));
102
+ function onOk() {
103
+ return _onOk.apply(this, arguments);
83
104
  }
84
- (_confirmProps$onOk = confirmProps.onOk) === null || _confirmProps$onOk === void 0 ? void 0 : _confirmProps$onOk.call.apply(_confirmProps$onOk, [confirmProps].concat(arg));
85
- onChange === null || onChange === void 0 ? void 0 : onChange.apply(void 0, [_value].concat(other));
86
- }
105
+ return onOk;
106
+ }()
87
107
  }));
88
108
  }
89
109
  case 13:
90
110
  case "end":
91
- return _context.stop();
111
+ return _context2.stop();
92
112
  }
93
- }, _callee);
113
+ }, _callee2);
94
114
  }));
95
115
  return function handleChange(_x) {
96
116
  return _ref.apply(this, arguments);
@@ -24,7 +24,7 @@ require("./index.less");
24
24
  var _excluded = ["dataSource", "defaultDisableValue", "useRequest", "fieldNames", "tooltip", "otherProps", "labelInValue", "filterInList", "scrollFollowParent", "defaultOne", "onSearch", "optionRender", "onChange", "updateDataSource", "transformResponse", "getValueProps", "isView"];
25
25
  var Option = _antd.Select.Option;
26
26
  var ProSelect = exports.ProSelect = function ProSelect(props, ref) {
27
- var _selectProps$showCode, _locale$ProSelect;
27
+ var _selectProps$showCode, _useRequest$options, _locale$ProSelect;
28
28
  var _ref = (0, _ProConfigProvider.useProConfig)('ProSelect') || {},
29
29
  _ref$fieldNames = _ref.fieldNames,
30
30
  proSelectFieldNames = _ref$fieldNames === void 0 ? {} : _ref$fieldNames,
@@ -88,6 +88,21 @@ var ProSelect = exports.ProSelect = function ProSelect(props, ref) {
88
88
  }
89
89
  setSelectList(data || []);
90
90
  };
91
+ var successTransformDataHandle = (0, _react.useCallback)(function (res) {
92
+ if (transformResponse && typeof transformResponse === 'function') {
93
+ return transformResponse(res);
94
+ }
95
+ var _ref3 = res || {},
96
+ _ref3$status = _ref3.status,
97
+ status = _ref3$status === void 0 ? 200 : _ref3$status,
98
+ msg = _ref3.message,
99
+ data = _ref3.data;
100
+ if (status !== 200) {
101
+ _antd.message.error(msg);
102
+ return;
103
+ }
104
+ return data;
105
+ }, []);
91
106
  var fetchFunction = (0, _ahooks.useRequest)(useRequest === null || useRequest === void 0 ? void 0 : useRequest.service, (0, _objectSpread2.default)({
92
107
  manual: true,
93
108
  onSuccess: function onSuccess(data) {
@@ -101,6 +116,7 @@ var ProSelect = exports.ProSelect = function ProSelect(props, ref) {
101
116
  },
102
117
  debounceWait: 300
103
118
  }, useRequest === null || useRequest === void 0 ? void 0 : useRequest.options));
119
+ var cacheList = (useRequest === null || useRequest === void 0 ? void 0 : (_useRequest$options = useRequest.options) === null || _useRequest$options === void 0 ? void 0 : _useRequest$options.cacheKey) ? successTransformDataHandle(fetchFunction === null || fetchFunction === void 0 ? void 0 : fetchFunction.data) : [];
104
120
  var getValueObject = function getValueObject(input) {
105
121
  if (Array.isArray(input) && input.length) {
106
122
  var resArr = [];
@@ -125,15 +141,24 @@ var ProSelect = exports.ProSelect = function ProSelect(props, ref) {
125
141
  (0, _ahooks.useDeepCompareEffect)(function () {
126
142
  setSelectList(dataSource);
127
143
  }, [dataSource]);
144
+ (0, _ahooks.useDeepCompareEffect)(function () {
145
+ var _useRequest$options2;
146
+ // 设置cacheKey后使用缓存的数据
147
+ if (!(selectList === null || selectList === void 0 ? void 0 : selectList.length) && (useRequest === null || useRequest === void 0 ? void 0 : (_useRequest$options2 = useRequest.options) === null || _useRequest$options2 === void 0 ? void 0 : _useRequest$options2.cacheKey)) {
148
+ if (cacheList === null || cacheList === void 0 ? void 0 : cacheList.length) {
149
+ setSelectList(cacheList);
150
+ }
151
+ }
152
+ }, [fetchFunction === null || fetchFunction === void 0 ? void 0 : fetchFunction.data]);
128
153
  (0, _ahooks.useDeepCompareEffect)(function () {
129
154
  // 默认disable值时,不查询接口
130
155
  if (defaultDisableValue || !useRequest) {
131
156
  return;
132
157
  }
133
- var _ref3 = (useRequest === null || useRequest === void 0 ? void 0 : useRequest.options) || {},
134
- defaultParams = _ref3.defaultParams,
135
- manual = _ref3.manual;
136
- if (manual) {
158
+ var _ref4 = (useRequest === null || useRequest === void 0 ? void 0 : useRequest.options) || {},
159
+ defaultParams = _ref4.defaultParams,
160
+ manual = _ref4.manual;
161
+ if (manual || (cacheList === null || cacheList === void 0 ? void 0 : cacheList.length)) {
137
162
  return;
138
163
  }
139
164
  fetchFunction.run(defaultParams);
@@ -1,3 +1,3 @@
1
- import { ProStepItem } from '../../propsType';
2
- declare const _default: ({ id, title, collapse: collapseItem, children, ...restProps }: ProStepItem) => import("react/jsx-runtime").JSX.Element;
3
- export default _default;
1
+ import { ProStepItemPropsType } from '../../propsType';
2
+ declare const ProStepItem: ({ id, title, collapse: collapseItem, children, ...restProps }: ProStepItemPropsType) => import("react/jsx-runtime").JSX.Element;
3
+ export default ProStepItem;
@@ -9,10 +9,17 @@ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/obje
9
9
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
10
  var _jsxRuntime = require("react/jsx-runtime");
11
11
  var _react = require("react");
12
+ var _reactLazyload = _interopRequireDefault(require("react-lazyload"));
13
+ var _lodash = require("lodash");
12
14
  var _index = require("../../index");
13
15
  var _ProCollapse = _interopRequireDefault(require("../../../ProLayout/components/ProCollapse"));
14
16
  var _excluded = ["id", "title", "collapse", "children"];
15
- var _default = exports.default = function _default(_ref) {
17
+ var defaultLazyLoadConfig = {
18
+ height: 100,
19
+ offset: 100,
20
+ once: true // 保证只在首次进入视口时触发懒加载
21
+ };
22
+ var ProStepItem = function ProStepItem(_ref) {
16
23
  var id = _ref.id,
17
24
  title = _ref.title,
18
25
  _ref$collapse = _ref.collapse,
@@ -23,7 +30,7 @@ var _default = exports.default = function _default(_ref) {
23
30
  register = _useStep.register,
24
31
  collapse = _useStep.collapse;
25
32
  (0, _react.useEffect)(function () {
26
- // 子组件更新父组件 延迟状态更新,避免重渲染
33
+ // 延迟更新父组件状态,避免重渲染
27
34
  var timeoutId = setTimeout(function () {
28
35
  register === null || register === void 0 ? void 0 : register((0, _objectSpread2.default)((0, _objectSpread2.default)({}, restProps), {}, {
29
36
  title: title,
@@ -34,15 +41,24 @@ var _default = exports.default = function _default(_ref) {
34
41
  return clearTimeout(timeoutId);
35
42
  };
36
43
  }, [register]);
44
+ var childrenRender = function childrenRender() {
45
+ if (restProps === null || restProps === void 0 ? void 0 : restProps.lazyLoad) {
46
+ var lazyLoadProps = (0, _lodash.isBoolean)(restProps === null || restProps === void 0 ? void 0 : restProps.lazyLoad) ? defaultLazyLoadConfig : restProps.lazyLoad;
47
+ return (0, _jsxRuntime.jsx)(_reactLazyload.default, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, lazyLoadProps), {}, {
48
+ children: children
49
+ }));
50
+ }
51
+ return children;
52
+ };
37
53
  return (0, _jsxRuntime.jsx)("div", {
38
54
  className: "pro-step-item",
39
55
  id: id,
40
56
  children: !register || collapse && collapseItem && title ? (0, _jsxRuntime.jsx)(_ProCollapse.default, (0, _objectSpread2.default)((0, _objectSpread2.default)({
41
- id: id,
42
57
  title: title,
43
58
  icon: true
44
59
  }, restProps), {}, {
45
- children: children
46
- })) : children
60
+ children: childrenRender()
61
+ })) : childrenRender()
47
62
  });
48
- };
63
+ };
64
+ var _default = exports.default = ProStepItem;
@@ -6,7 +6,7 @@ export declare const useStep: () => any;
6
6
  declare const ProStep: {
7
7
  ({ children, ...resetProps }: ProStepPropsType): import("react/jsx-runtime").JSX.Element;
8
8
  useStep: () => any;
9
- Item: ({ id, title, collapse: collapseItem, children, ...restProps }: import("./propsType").ProStepItem) => import("react/jsx-runtime").JSX.Element;
9
+ Item: ({ id, title, collapse: collapseItem, children, ...restProps }: import("./propsType").ProStepItemPropsType) => import("react/jsx-runtime").JSX.Element;
10
10
  Listener: ({ children, delayTime, excludes, ...props }: any) => import("react").DetailedReactHTMLElement<any, HTMLElement>;
11
11
  };
12
12
  export default ProStep;
@@ -1,4 +1,5 @@
1
1
  import { ReactNode } from 'react';
2
+ import { LazyLoadProps } from 'react-lazyload';
2
3
  export interface ItemType {
3
4
  name: string;
4
5
  code: string;
@@ -22,10 +23,12 @@ export interface ProStepPropsType {
22
23
  /** @name 是否滚动到第一个报错 */
23
24
  scrollToError?: boolean;
24
25
  }
25
- export interface ProStepItem {
26
+ export interface ProStepItemPropsType {
26
27
  id: string;
27
28
  title?: string;
28
29
  collapse?: boolean;
29
30
  order?: number;
31
+ /** 模块可视区域懒加载 */
32
+ lazyLoad?: boolean | LazyLoadProps;
30
33
  [key: string]: any;
31
34
  }