@zat-design/sisyphus-react 4.0.0-beta.3 → 4.0.0-beta.4

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 (243) hide show
  1. package/babel.config.js +7 -30
  2. package/dist/esm/index.d.ts +5 -0
  3. package/dist/esm/index.js +5 -0
  4. package/dist/esm/regExp/index.d.ts +19 -0
  5. package/dist/esm/regExp/index.js +73 -0
  6. package/dist/esm/tools/calc/index.d.ts +4 -0
  7. package/dist/esm/tools/calc/index.js +67 -0
  8. package/dist/esm/tools/dateUtils.d.ts +7 -0
  9. package/dist/esm/tools/dateUtils.js +23 -0
  10. package/dist/esm/tools/disableDate/index.d.ts +9 -0
  11. package/dist/esm/tools/disableDate/index.js +43 -0
  12. package/dist/esm/tools/disableTimeRange/index.d.ts +9 -0
  13. package/dist/esm/tools/disableTimeRange/index.js +121 -0
  14. package/dist/esm/tools/formatAmount/index.d.ts +7 -0
  15. package/dist/esm/tools/formatAmount/index.js +14 -0
  16. package/dist/esm/tools/formatPerMill/index.d.ts +7 -0
  17. package/dist/esm/tools/formatPerMill/index.js +11 -0
  18. package/dist/esm/tools/formatPercent/index.d.ts +7 -0
  19. package/dist/esm/tools/formatPercent/index.js +11 -0
  20. package/dist/esm/tools/getDataByIdCard/index.d.ts +16 -0
  21. package/dist/esm/tools/getDataByIdCard/index.js +65 -0
  22. package/dist/esm/tools/index.d.ts +12 -0
  23. package/dist/esm/tools/index.js +14 -0
  24. package/dist/esm/tools/sumAmount/index.d.ts +16 -0
  25. package/dist/esm/tools/sumAmount/index.js +40 -0
  26. package/dist/esm/tools/toChineseNum/index.d.ts +7 -0
  27. package/dist/esm/tools/toChineseNum/index.js +103 -0
  28. package/dist/esm/tools/toFixed/index.d.ts +2 -0
  29. package/dist/esm/tools/toFixed/index.js +5 -0
  30. package/dist/esm/tools/transformDataName/index.d.ts +12 -0
  31. package/dist/esm/tools/transformDataName/index.js +37 -0
  32. package/dist/esm/transforms/dateTransformer/index.d.ts +24 -0
  33. package/dist/esm/transforms/dateTransformer/index.js +67 -0
  34. package/dist/esm/transforms/index.d.ts +6 -0
  35. package/dist/esm/transforms/index.js +6 -0
  36. package/dist/esm/transforms/propTypes.d.ts +7 -0
  37. package/dist/esm/transforms/propTypes.js +1 -0
  38. package/dist/esm/transforms/transformDate/index.d.ts +21 -0
  39. package/dist/esm/transforms/transformDate/index.js +141 -0
  40. package/dist/esm/transforms/transformDatePicker/index.d.ts +12 -0
  41. package/dist/esm/transforms/transformDatePicker/index.js +24 -0
  42. package/dist/esm/transforms/transformRangePicker/index.d.ts +29 -0
  43. package/dist/esm/transforms/transformRangePicker/index.js +61 -0
  44. package/dist/esm/transforms/transformSwitch/index.d.ts +13 -0
  45. package/dist/esm/transforms/transformSwitch/index.js +35 -0
  46. package/dist/esm/transforms/utils.d.ts +2 -0
  47. package/dist/esm/transforms/utils.js +8 -0
  48. package/dist/esm/validate/index.d.ts +107 -0
  49. package/dist/esm/validate/index.js +284 -0
  50. package/es/ProAction/index.less +0 -2
  51. package/es/ProConfigProvider/index.d.ts +1 -0
  52. package/es/ProConfigProvider/index.js +4 -5
  53. package/es/ProDownload/style/index.less +0 -2
  54. package/es/ProDrawerForm/index.js +33 -29
  55. package/es/ProDrawerForm/style/index.less +0 -2
  56. package/es/ProEditLabel/style/index.less +0 -2
  57. package/es/ProEditTable/components/RcTable/DraggableTable.js +1 -1
  58. package/es/ProEditTable/components/RenderField/ListChangedWrapper.js +14 -2
  59. package/es/ProEditTable/propsType.d.ts +1 -1
  60. package/es/ProEditTable/style/index.less +2 -4
  61. package/es/ProEditTable/utils/diffOriginal.d.ts +1 -0
  62. package/es/ProEditTable/utils/diffOriginal.js +68 -1
  63. package/es/ProEnum/hooks/useEnum.js +5 -0
  64. package/es/ProEnum/style/index.less +0 -2
  65. package/es/ProForm/components/FormFooter/index.js +6 -6
  66. package/es/ProForm/components/base/DatePicker/index.js +19 -34
  67. package/es/ProForm/components/base/SwitchCheckbox/style/index.less +0 -2
  68. package/es/ProForm/components/base/TextArea/index.less +0 -2
  69. package/es/ProForm/components/base/TimePicker/style/index.less +0 -2
  70. package/es/ProForm/components/combination/Container/style/index.less +0 -2
  71. package/es/ProForm/components/combination/FormList/style/index.less +0 -2
  72. package/es/ProForm/components/combination/Group/component/ComRender.js +9 -8
  73. package/es/ProForm/components/combination/Group/hooks/index.js +17 -4
  74. package/es/ProForm/components/combination/Group/index.d.ts +8 -2
  75. package/es/ProForm/components/combination/Group/index.js +10 -16
  76. package/es/ProForm/components/combination/ProCascader/index.js +106 -52
  77. package/es/ProForm/components/combination/ProCascader/propsType.d.ts +12 -4
  78. package/es/ProForm/components/combination/ProCascader/style/index.less +1 -3
  79. package/es/ProForm/components/combination/ProModalSelect/hooks/useRequestList.js +2 -4
  80. package/es/ProForm/components/combination/ProModalSelect/index.js +38 -64
  81. package/es/ProForm/components/combination/ProModalSelect/propsType.d.ts +7 -3
  82. package/es/ProForm/components/combination/ProModalSelect/style/index.less +1 -4
  83. package/es/ProForm/components/combination/ProNumberRange/style/index.less +4 -3
  84. package/es/ProForm/components/combination/ProTimeLimit/style/index.less +0 -2
  85. package/es/ProForm/components/render/ChangedWrapper.js +2 -2
  86. package/es/ProForm/components/render/Render.js +17 -5
  87. package/es/ProForm/components/render/RenderFields.d.ts +1 -0
  88. package/es/ProForm/components/render/RenderFields.js +4 -2
  89. package/es/ProForm/components/render/propsType.d.ts +1 -0
  90. package/es/ProForm/index.d.ts +2 -2
  91. package/es/ProForm/index.js +5 -2
  92. package/es/ProForm/propsType.d.ts +2 -0
  93. package/es/ProForm/style/index.less +0 -2
  94. package/es/ProForm/utils/diffOriginal.d.ts +1 -0
  95. package/es/ProForm/utils/diffOriginal.js +66 -1
  96. package/es/ProForm/utils/index.js +1 -1
  97. package/es/ProForm/utils/useShouldUpdate.d.ts +1 -0
  98. package/es/ProForm/utils/useShouldUpdate.js +89 -3
  99. package/es/ProIcon/style/index.less +0 -2
  100. package/es/ProLayout/components/Layout/Menu/FoldMenu/index.js +60 -8
  101. package/es/ProLayout/components/Layout/Menu/FoldMenu/style/index.less +0 -2
  102. package/es/ProLayout/components/Layout/Menu/OpenMenu/index.js +25 -3
  103. package/es/ProLayout/components/Layout/Menu/SideMenu/index.js +3 -1
  104. package/es/ProLayout/components/Layout/Menu/SideMenu/style/index.less +0 -2
  105. package/es/ProLayout/components/Layout/Menu/index.js +4 -1
  106. package/es/ProLayout/components/Layout/Menu/style/index.less +0 -2
  107. package/es/ProLayout/components/Layout/Notice/style/index.less +0 -2
  108. package/es/ProLayout/components/ProCollapse/PropTypes.d.ts +8 -3
  109. package/es/ProLayout/components/ProCollapse/index.js +27 -3
  110. package/es/ProLayout/components/ProCollapse/style/index.less +148 -4
  111. package/es/ProLayout/components/ProFooter/style/index.less +0 -2
  112. package/es/ProLayout/components/ProHeader/components/ProBackBtn/style/index.less +0 -2
  113. package/es/ProLayout/components/ProHeader/style/index.less +0 -2
  114. package/es/ProLayout/index.d.ts +0 -11
  115. package/es/ProLayout/index.js +60 -32
  116. package/es/ProLayout/propTypes.d.ts +9 -0
  117. package/es/ProLayout/style/index.less +0 -2
  118. package/es/ProLayout/utils/index.d.ts +7 -0
  119. package/es/ProLayout/utils/index.js +30 -0
  120. package/es/ProSelect/index.less +0 -2
  121. package/es/ProSelect/utils/index.js +62 -1
  122. package/es/ProStep/components/Item/index.js +1 -2
  123. package/es/ProStep/style/index.less +0 -2
  124. package/es/ProTable/components/RcTable/components/DraggableTable/components/DndWrapper/index.js +1 -1
  125. package/es/ProTable/hooks/useAntdTable.d.ts +3 -0
  126. package/es/ProTable/hooks/useAntdTable.js +92 -64
  127. package/es/ProTable/index.d.ts +3 -7
  128. package/es/ProTable/index.js +14 -14
  129. package/es/ProTable/propsType.d.ts +3 -2
  130. package/es/ProTable/style/index.less +4 -6
  131. package/es/ProTabs/style/index.less +0 -2
  132. package/es/ProThemeTools/index.d.ts +0 -7
  133. package/es/ProThemeTools/index.js +10 -12
  134. package/es/ProThemeTools/style/index.less +0 -2
  135. package/es/ProTooltip/style/index.less +0 -2
  136. package/es/ProTree/components/ProTreeSelect/style/index.less +0 -2
  137. package/es/ProTree/style/index.less +0 -2
  138. package/es/ProTreeModal/style/index.less +0 -2
  139. package/es/ProUpload/style/index.less +0 -2
  140. package/es/ProViewer/style/index.less +0 -2
  141. package/es/style/theme/antd.less +0 -2
  142. package/jest.config.js +46 -4
  143. package/lib/ProAction/index.less +0 -2
  144. package/lib/ProConfigProvider/index.d.ts +1 -0
  145. package/lib/ProConfigProvider/index.js +4 -3
  146. package/lib/ProDownload/style/index.less +0 -2
  147. package/lib/ProDrawerForm/index.js +25 -28
  148. package/lib/ProDrawerForm/style/index.less +0 -2
  149. package/lib/ProEditLabel/style/index.less +0 -2
  150. package/lib/ProEditTable/components/RcTable/DraggableTable.js +1 -1
  151. package/lib/ProEditTable/components/RenderField/ListChangedWrapper.js +10 -2
  152. package/lib/ProEditTable/propsType.d.ts +1 -1
  153. package/lib/ProEditTable/style/index.less +2 -4
  154. package/lib/ProEditTable/utils/diffOriginal.d.ts +1 -0
  155. package/lib/ProEditTable/utils/diffOriginal.js +48 -1
  156. package/lib/ProEnum/hooks/useEnum.js +3 -0
  157. package/lib/ProEnum/style/index.less +0 -2
  158. package/lib/ProForm/components/FormFooter/index.js +6 -5
  159. package/lib/ProForm/components/base/DatePicker/index.js +21 -33
  160. package/lib/ProForm/components/base/SwitchCheckbox/style/index.less +0 -2
  161. package/lib/ProForm/components/base/TextArea/index.less +0 -2
  162. package/lib/ProForm/components/base/TimePicker/style/index.less +0 -2
  163. package/lib/ProForm/components/combination/Container/style/index.less +0 -2
  164. package/lib/ProForm/components/combination/FormList/style/index.less +0 -2
  165. package/lib/ProForm/components/combination/Group/component/ComRender.js +8 -7
  166. package/lib/ProForm/components/combination/Group/hooks/index.js +8 -2
  167. package/lib/ProForm/components/combination/Group/index.d.ts +8 -2
  168. package/lib/ProForm/components/combination/Group/index.js +8 -13
  169. package/lib/ProForm/components/combination/ProCascader/index.js +73 -16
  170. package/lib/ProForm/components/combination/ProCascader/propsType.d.ts +12 -4
  171. package/lib/ProForm/components/combination/ProCascader/style/index.less +1 -3
  172. package/lib/ProForm/components/combination/ProModalSelect/hooks/useRequestList.js +2 -2
  173. package/lib/ProForm/components/combination/ProModalSelect/index.js +26 -52
  174. package/lib/ProForm/components/combination/ProModalSelect/propsType.d.ts +7 -3
  175. package/lib/ProForm/components/combination/ProModalSelect/style/index.less +1 -4
  176. package/lib/ProForm/components/combination/ProNumberRange/style/index.less +4 -3
  177. package/lib/ProForm/components/combination/ProTimeLimit/style/index.less +0 -2
  178. package/lib/ProForm/components/render/ChangedWrapper.js +2 -2
  179. package/lib/ProForm/components/render/Render.js +11 -3
  180. package/lib/ProForm/components/render/RenderFields.d.ts +1 -0
  181. package/lib/ProForm/components/render/RenderFields.js +4 -2
  182. package/lib/ProForm/components/render/propsType.d.ts +1 -0
  183. package/lib/ProForm/index.d.ts +2 -2
  184. package/lib/ProForm/index.js +3 -1
  185. package/lib/ProForm/propsType.d.ts +2 -0
  186. package/lib/ProForm/style/index.less +0 -2
  187. package/lib/ProForm/utils/diffOriginal.d.ts +1 -0
  188. package/lib/ProForm/utils/diffOriginal.js +48 -1
  189. package/lib/ProForm/utils/index.js +1 -1
  190. package/lib/ProForm/utils/useShouldUpdate.d.ts +1 -0
  191. package/lib/ProForm/utils/useShouldUpdate.js +50 -1
  192. package/lib/ProIcon/style/index.less +0 -2
  193. package/lib/ProLayout/components/Layout/Menu/FoldMenu/index.js +33 -4
  194. package/lib/ProLayout/components/Layout/Menu/FoldMenu/style/index.less +0 -2
  195. package/lib/ProLayout/components/Layout/Menu/OpenMenu/index.js +7 -2
  196. package/lib/ProLayout/components/Layout/Menu/SideMenu/index.js +2 -1
  197. package/lib/ProLayout/components/Layout/Menu/SideMenu/style/index.less +0 -2
  198. package/lib/ProLayout/components/Layout/Menu/index.js +4 -1
  199. package/lib/ProLayout/components/Layout/Menu/style/index.less +0 -2
  200. package/lib/ProLayout/components/Layout/Notice/style/index.less +0 -2
  201. package/lib/ProLayout/components/ProCollapse/PropTypes.d.ts +8 -3
  202. package/lib/ProLayout/components/ProCollapse/index.js +27 -3
  203. package/lib/ProLayout/components/ProCollapse/style/index.less +148 -4
  204. package/lib/ProLayout/components/ProFooter/style/index.less +0 -2
  205. package/lib/ProLayout/components/ProHeader/components/ProBackBtn/style/index.less +0 -2
  206. package/lib/ProLayout/components/ProHeader/style/index.less +0 -2
  207. package/lib/ProLayout/index.d.ts +0 -11
  208. package/lib/ProLayout/index.js +51 -32
  209. package/lib/ProLayout/propTypes.d.ts +9 -0
  210. package/lib/ProLayout/style/index.less +0 -2
  211. package/lib/ProLayout/utils/index.d.ts +7 -0
  212. package/lib/ProLayout/utils/index.js +15 -0
  213. package/lib/ProSelect/index.less +0 -2
  214. package/lib/ProSelect/utils/index.js +34 -5
  215. package/lib/ProStep/components/Item/index.js +1 -2
  216. package/lib/ProStep/style/index.less +0 -2
  217. package/lib/ProTable/components/RcTable/components/DraggableTable/components/DndWrapper/index.js +1 -1
  218. package/lib/ProTable/hooks/useAntdTable.d.ts +3 -0
  219. package/lib/ProTable/hooks/useAntdTable.js +71 -36
  220. package/lib/ProTable/index.d.ts +3 -7
  221. package/lib/ProTable/index.js +8 -13
  222. package/lib/ProTable/propsType.d.ts +3 -2
  223. package/lib/ProTable/style/index.less +4 -6
  224. package/lib/ProTabs/style/index.less +0 -2
  225. package/lib/ProThemeTools/index.d.ts +0 -7
  226. package/lib/ProThemeTools/index.js +5 -12
  227. package/lib/ProThemeTools/style/index.less +0 -2
  228. package/lib/ProTooltip/style/index.less +0 -2
  229. package/lib/ProTree/components/ProTreeSelect/style/index.less +0 -2
  230. package/lib/ProTree/style/index.less +0 -2
  231. package/lib/ProTreeModal/style/index.less +0 -2
  232. package/lib/ProUpload/style/index.less +0 -2
  233. package/lib/ProViewer/style/index.less +0 -2
  234. package/lib/style/theme/antd.less +0 -2
  235. package/package.json +7 -6
  236. package/tests/__mocks__/fileMock.js +1 -0
  237. package/tests/__mocks__/zatUtils.js +27 -0
  238. package/tests/setup.ts +484 -0
  239. package/tests/test-utils.tsx +81 -0
  240. package/dist/index.esm.css +0 -6445
  241. package/dist/index.esm.js +0 -3
  242. package/dist/less.esm.css +0 -5871
  243. package/dist/less.esm.js +0 -3
@@ -24,6 +24,9 @@ var useDefaultOptions = function useDefaultOptions(options) {
24
24
  });
25
25
  };
26
26
  var previousSearchValues = null;
27
+ export var SELECTION_ALL = 'SELECTION_ALL';
28
+ export var CURRENT_PAGE = 'CURRENT_PAGE';
29
+ export var UNCHECK_ALL = 'UNCHECK_ALL';
27
30
  function useAntdTable(service, options, useRequestOptions) {
28
31
  var _locale$ProTable2, _locale$ProTable3, _locale$ProTable4, _locale$ProTable5, _result$params, _form$getFieldsValue3;
29
32
  var _useSetState = useSetState({
@@ -341,6 +344,93 @@ function useAntdTable(service, options, useRequestOptions) {
341
344
  return _ref4.apply(this, arguments);
342
345
  };
343
346
  }();
347
+
348
+ // 内置选择下拉
349
+ var defaultSelections = [{
350
+ key: 'currentPage',
351
+ text: formatMessage(locale === null || locale === void 0 || (_locale$ProTable2 = locale.ProTable) === null || _locale$ProTable2 === void 0 ? void 0 : _locale$ProTable2.selectCurPage, {
352
+ total: (data === null || data === void 0 ? void 0 : data.length) || 0
353
+ }),
354
+ onSelect: function onSelect(changeableRowKeys) {
355
+ setState({
356
+ allSelected: false,
357
+ selectedRecords: _toConsumableArray(data),
358
+ selectedRowKeys: changeableRowKeys
359
+ });
360
+ }
361
+ }, {
362
+ key: 'all',
363
+ text: formatMessage(locale === null || locale === void 0 || (_locale$ProTable3 = locale.ProTable) === null || _locale$ProTable3 === void 0 ? void 0 : _locale$ProTable3.selectAll, {
364
+ total: total
365
+ }),
366
+ onSelect: function () {
367
+ var _onSelect = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(changeableRowKeys) {
368
+ return _regeneratorRuntime().wrap(function _callee2$(_context2) {
369
+ while (1) switch (_context2.prev = _context2.next) {
370
+ case 0:
371
+ setState({
372
+ allSelected: true,
373
+ selectedRecords: _toConsumableArray(data),
374
+ selectedRowKeys: changeableRowKeys
375
+ });
376
+ case 1:
377
+ case "end":
378
+ return _context2.stop();
379
+ }
380
+ }, _callee2);
381
+ }));
382
+ function onSelect(_x) {
383
+ return _onSelect.apply(this, arguments);
384
+ }
385
+ return onSelect;
386
+ }()
387
+ }, {
388
+ key: 'uncheckAll',
389
+ text: locale === null || locale === void 0 || (_locale$ProTable4 = locale.ProTable) === null || _locale$ProTable4 === void 0 ? void 0 : _locale$ProTable4.deselect,
390
+ onSelect: function () {
391
+ var _onSelect2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
392
+ return _regeneratorRuntime().wrap(function _callee3$(_context3) {
393
+ while (1) switch (_context3.prev = _context3.next) {
394
+ case 0:
395
+ setState({
396
+ allSelected: false,
397
+ selectedRecords: [],
398
+ selectedRowKeys: []
399
+ });
400
+ case 1:
401
+ case "end":
402
+ return _context3.stop();
403
+ }
404
+ }, _callee3);
405
+ }));
406
+ function onSelect() {
407
+ return _onSelect2.apply(this, arguments);
408
+ }
409
+ return onSelect;
410
+ }()
411
+ }];
412
+ var selections = useMemo(function () {
413
+ if (rowSelections === true) {
414
+ return defaultSelections;
415
+ }
416
+ if (Array.isArray(rowSelections)) {
417
+ return rowSelections.map(function (item) {
418
+ if (typeof item === 'string') {
419
+ if (item === CURRENT_PAGE) {
420
+ return defaultSelections[0];
421
+ }
422
+ if (item === SELECTION_ALL) {
423
+ return defaultSelections[1];
424
+ }
425
+ if (item === UNCHECK_ALL) {
426
+ return defaultSelections[2];
427
+ }
428
+ }
429
+ return item;
430
+ });
431
+ }
432
+ return false;
433
+ }, [rowSelections]);
344
434
  var _rowSelection = {
345
435
  fixed: true,
346
436
  type: rowSelectType,
@@ -363,7 +453,7 @@ function useAntdTable(service, options, useRequestOptions) {
363
453
  }, {});
364
454
  setState({
365
455
  selectedRecords: newSelectedKeys === null || newSelectedKeys === void 0 ? void 0 : newSelectedKeys.map(function (item) {
366
- return selectedRecordObj === null || selectedRecordObj === void 0 ? void 0 : selectedRecordObj[item];
456
+ return selectedRecordObj === null || selectedRecordObj === void 0 ? void 0 : selectedRecordObj[String(item)];
367
457
  }),
368
458
  selectedRowKeys: newSelectedKeys
369
459
  });
@@ -388,69 +478,7 @@ function useAntdTable(service, options, useRequestOptions) {
388
478
  className: allSelected && rowSelections ? 'checkbox-disabled' : ''
389
479
  };
390
480
  },
391
- selections: rowSelections ? [{
392
- key: 'currentPage',
393
- text: formatMessage(locale === null || locale === void 0 || (_locale$ProTable2 = locale.ProTable) === null || _locale$ProTable2 === void 0 ? void 0 : _locale$ProTable2.selectCurPage, {
394
- total: (data === null || data === void 0 ? void 0 : data.length) || 0
395
- }),
396
- onSelect: function onSelect(changeableRowKeys) {
397
- setState({
398
- allSelected: false,
399
- selectedRecords: _toConsumableArray(data),
400
- selectedRowKeys: changeableRowKeys
401
- });
402
- }
403
- }, {
404
- key: 'all',
405
- text: formatMessage(locale === null || locale === void 0 || (_locale$ProTable3 = locale.ProTable) === null || _locale$ProTable3 === void 0 ? void 0 : _locale$ProTable3.selectAll, {
406
- total: total
407
- }),
408
- onSelect: function () {
409
- var _onSelect = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(changeableRowKeys) {
410
- return _regeneratorRuntime().wrap(function _callee2$(_context2) {
411
- while (1) switch (_context2.prev = _context2.next) {
412
- case 0:
413
- setState({
414
- allSelected: true,
415
- selectedRecords: _toConsumableArray(data),
416
- selectedRowKeys: changeableRowKeys
417
- });
418
- case 1:
419
- case "end":
420
- return _context2.stop();
421
- }
422
- }, _callee2);
423
- }));
424
- function onSelect(_x) {
425
- return _onSelect.apply(this, arguments);
426
- }
427
- return onSelect;
428
- }()
429
- }, {
430
- key: 'uncheckAll',
431
- text: locale === null || locale === void 0 || (_locale$ProTable4 = locale.ProTable) === null || _locale$ProTable4 === void 0 ? void 0 : _locale$ProTable4.deselect,
432
- onSelect: function () {
433
- var _onSelect2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
434
- return _regeneratorRuntime().wrap(function _callee3$(_context3) {
435
- while (1) switch (_context3.prev = _context3.next) {
436
- case 0:
437
- setState({
438
- allSelected: false,
439
- selectedRecords: [],
440
- selectedRowKeys: []
441
- });
442
- case 1:
443
- case "end":
444
- return _context3.stop();
445
- }
446
- }, _callee3);
447
- }));
448
- function onSelect() {
449
- return _onSelect2.apply(this, arguments);
450
- }
451
- return onSelect;
452
- }()
453
- }] : false
481
+ selections: selections
454
482
  };
455
483
  var rowSelection = isObject(returnRowSelection) ? merge(_rowSelection, returnRowSelection) : _rowSelection;
456
484
  if (isObject(returnRowSelection) && !isEqual(rowSelection, _rowSelection)) {
@@ -8,13 +8,9 @@ export declare const defaultPage: {
8
8
  };
9
9
  declare const ProTable: {
10
10
  (props: ProTableType): import("react/jsx-runtime").JSX.Element;
11
- defaultProps: {
12
- quickConfig: boolean;
13
- stripe: boolean;
14
- draggable: boolean;
15
- disabled: boolean;
16
- isView: boolean;
17
- };
18
11
  useAntdTable: typeof useAntdTable;
12
+ SELECTION_ALL: string;
13
+ CURRENT_PAGE: string;
14
+ UNCHECK_ALL: string;
19
15
  };
20
16
  export default ProTable;
@@ -13,7 +13,7 @@ import { useDebounceEffect, useDeepCompareEffect, useSetState } from 'ahooks';
13
13
  import classnames from 'classnames';
14
14
  import { useProConfig } from "../index";
15
15
  import { RenderTableHeader, RenderFooter, RenderTabs } from "./components";
16
- import useAntdTable from "./hooks/useAntdTable";
16
+ import useAntdTable, { SELECTION_ALL, CURRENT_PAGE, UNCHECK_ALL } from "./hooks/useAntdTable";
17
17
  import { BaseTable, DraggableTable } from "./components/RcTable";
18
18
  import { formatColumn } from "./components/FormatColumn";
19
19
  import empty from "../assets/empty.png";
@@ -44,14 +44,19 @@ var ProTable = function ProTable(props) {
44
44
  var tableId = props.tableId,
45
45
  headerRender = props.headerRender,
46
46
  footerRender = props.footerRender,
47
- quickConfig = props.quickConfig,
48
- stripe = props.stripe,
47
+ _props$quickConfig = props.quickConfig,
48
+ quickConfig = _props$quickConfig === void 0 ? false : _props$quickConfig,
49
+ _props$stripe = props.stripe,
50
+ stripe = _props$stripe === void 0 ? true : _props$stripe,
49
51
  _props$columns = props.columns,
50
52
  propsColumns = _props$columns === void 0 ? [] : _props$columns,
51
53
  className = props.className,
52
- draggable = props.draggable,
53
- disabled = props.disabled,
54
- isView = props.isView,
54
+ _props$draggable = props.draggable,
55
+ draggable = _props$draggable === void 0 ? false : _props$draggable,
56
+ _props$disabled = props.disabled,
57
+ disabled = _props$disabled === void 0 ? false : _props$disabled,
58
+ _props$isView = props.isView,
59
+ isView = _props$isView === void 0 ? false : _props$isView,
55
60
  rowDisabled = props.rowDisabled,
56
61
  summary = props.summary,
57
62
  _props$emptyText = props.emptyText,
@@ -465,13 +470,8 @@ var ProTable = function ProTable(props) {
465
470
  })
466
471
  });
467
472
  };
468
- ProTable.defaultProps = {
469
- quickConfig: false,
470
- // 默认关闭快速配置
471
- stripe: true,
472
- draggable: false,
473
- disabled: false,
474
- isView: false
475
- };
476
473
  ProTable.useAntdTable = useAntdTable;
474
+ ProTable.SELECTION_ALL = SELECTION_ALL;
475
+ ProTable.CURRENT_PAGE = CURRENT_PAGE;
476
+ ProTable.UNCHECK_ALL = UNCHECK_ALL;
477
477
  export default ProTable;
@@ -1,6 +1,7 @@
1
1
  import { Key, ReactNode } from 'react';
2
- import type { TableProps, FormInstance, TooltipProps } from 'antd';
2
+ import type { TableProps, TooltipProps } from 'antd';
3
3
  import { NamePath } from 'antd/es/form/interface';
4
+ import { FormInstance } from 'antd/es/form/Form';
4
5
  import { ColumnType, GetRowKey, RowSelectionType } from 'antd/es/table/interface';
5
6
  import type { TabsProps } from 'antd/es/tabs';
6
7
  /**
@@ -607,7 +608,7 @@ export interface ProTableRequestOptionsType<T, R> {
607
608
  * @description 启用选择当前页、选择全部、取消选择下拉菜单
608
609
  * @default false
609
610
  */
610
- rowSelections?: boolean;
611
+ rowSelections?: boolean | object[];
611
612
  /**
612
613
  * 额外参数
613
614
  * @description 无法通过搜索表单设置的值,此值变更时也会重新发起请求,重置表单不会被清空
@@ -1,5 +1,3 @@
1
- /* @root-entry-name: 'default'; */
2
- /* @import (reference) '~antd/es/style/themes/index.less'; */
3
1
 
4
2
  .pro-table {
5
3
  .pro-tooltip .singleLine {
@@ -96,9 +94,9 @@
96
94
  }
97
95
  }
98
96
  }
99
- .drag-wrapper {
100
- display: inline-flex;
101
- width: auto;
97
+ .pro-table-drag-wrapper {
98
+ display: flex;
99
+ justify-content: flex-end;
102
100
  margin-right: 8px;
103
101
  .anticon {
104
102
  cursor: pointer;
@@ -107,7 +105,7 @@
107
105
  }
108
106
  }
109
107
  }
110
- .drag-wrapper.no-check {
108
+ .pro-table-drag-wrapper.no-check {
111
109
  .anticon {
112
110
  margin-right: 0;
113
111
  }
@@ -1,5 +1,3 @@
1
- /* @root-entry-name: 'default'; */
2
- /* @import (reference) '~antd/es/style/themes/index.less'; */
3
1
 
4
2
  .pro-tabs {
5
3
  .@{ant-prefix}-tabs .@{ant-prefix}-tabs-nav-list .@{ant-prefix}-tabs-tab {
@@ -1,13 +1,6 @@
1
1
  import type { ProThemeToolsType } from './propsType';
2
2
  declare const ProThemeTools: {
3
3
  ({ size, className, cacheTime, color, mode, iconFollowTheme, prefixCls, tableBorder, tableStripe, theme, onChange, ...props }: ProThemeToolsType): import("react/jsx-runtime").JSX.Element;
4
- defaultProps: {
5
- size: number;
6
- mode: string;
7
- color: string;
8
- iconFollowTheme: boolean;
9
- cacheTime: boolean;
10
- };
11
4
  setThemes: (themes: import("./utils/index").ThemesProps) => boolean;
12
5
  };
13
6
  export default ProThemeTools;
@@ -42,12 +42,17 @@ var defaultThemeConfig = {
42
42
  zauiStripe: true
43
43
  };
44
44
  var ProThemeTools = function ProThemeTools(_ref) {
45
- var size = _ref.size,
45
+ var _ref$size = _ref.size,
46
+ size = _ref$size === void 0 ? 24 : _ref$size,
46
47
  className = _ref.className,
47
- cacheTime = _ref.cacheTime,
48
- color = _ref.color,
49
- mode = _ref.mode,
50
- iconFollowTheme = _ref.iconFollowTheme,
48
+ _ref$cacheTime = _ref.cacheTime,
49
+ cacheTime = _ref$cacheTime === void 0 ? false : _ref$cacheTime,
50
+ _ref$color = _ref.color,
51
+ color = _ref$color === void 0 ? '#343434' : _ref$color,
52
+ _ref$mode = _ref.mode,
53
+ mode = _ref$mode === void 0 ? 'prd' : _ref$mode,
54
+ _ref$iconFollowTheme = _ref.iconFollowTheme,
55
+ iconFollowTheme = _ref$iconFollowTheme === void 0 ? false : _ref$iconFollowTheme,
51
56
  _ref$prefixCls = _ref.prefixCls,
52
57
  prefixCls = _ref$prefixCls === void 0 ? 'ant' : _ref$prefixCls,
53
58
  _ref$tableBorder = _ref.tableBorder,
@@ -242,13 +247,6 @@ var ProThemeTools = function ProThemeTools(_ref) {
242
247
  })]
243
248
  }));
244
249
  };
245
- ProThemeTools.defaultProps = {
246
- size: 24,
247
- mode: 'prd',
248
- color: '#343434',
249
- iconFollowTheme: false,
250
- cacheTime: false
251
- };
252
250
  ProThemeTools.setThemes = setThemes;
253
251
  export default ProThemeTools;
254
252
 
@@ -1,5 +1,3 @@
1
- /* @root-entry-name: 'default'; */
2
- /* @import (reference) '~antd/es/style/themes/index.less'; */
3
1
 
4
2
  @import '../component/ProTools/style/index.less';
5
3
 
@@ -1,5 +1,3 @@
1
- /* @root-entry-name: 'default'; */
2
- /* @import (reference) '~antd/es/style/themes/index.less'; */
3
1
 
4
2
  .pro-tooltip {
5
3
  cursor: pointer;
@@ -1,5 +1,3 @@
1
- /* @root-entry-name: 'default'; */
2
- /* @import (reference) '~antd/es/style/themes/index.less'; */
3
1
 
4
2
  .pro-tree-select{
5
3
  .@{ant-prefix}-select-selector{
@@ -1,5 +1,3 @@
1
- /* @root-entry-name: 'default'; */
2
- /* @import (reference) '~antd/es/style/themes/index.less'; */
3
1
 
4
2
  .pro-tree-wrap-ellipse {
5
3
  display: block;
@@ -1,5 +1,3 @@
1
- /* @root-entry-name: 'default'; */
2
- /* @import (reference) '~antd/es/style/themes/index.less'; */
3
1
 
4
2
  .pro-tree-modal-container .@{ant-prefix}-modal-content .@{ant-prefix}-modal-body {
5
3
  max-height: 498px !important;
@@ -1,5 +1,3 @@
1
- /* @root-entry-name: 'default'; */
2
- /* @import (reference) '~antd/es/style/themes/index.less'; */
3
1
 
4
2
  .pro-upload {
5
3
  // display: inline-flex;
@@ -1,5 +1,3 @@
1
- /* @root-entry-name: 'default'; */
2
- /* @import (reference) '~antd/es/style/themes/index.less'; */
3
1
 
4
2
  .pro-viewer {
5
3
  .@{ant-prefix}-image {
@@ -1,5 +1,3 @@
1
- /* @root-entry-name: 'default'; */
2
- /* @import (reference) '~antd/es/style/themes/index.less'; */
3
1
  @import './base';
4
2
 
5
3
  @zat-disabled-color: #bcbcbc;
package/jest.config.js CHANGED
@@ -1,8 +1,50 @@
1
- const React = require('react');
2
-
3
1
  module.exports = {
4
2
  setupFiles: ['jest-canvas-mock'],
5
- globals: {
6
- React,
3
+ setupFilesAfterEnv: ['<rootDir>/tests/setup.ts'],
4
+ testEnvironment: 'jsdom',
5
+ testEnvironmentOptions: {
6
+ url: 'http://localhost',
7
7
  },
8
+ moduleNameMapper: {
9
+ '^@/(.*)$': '<rootDir>/src/$1',
10
+ '^@zat-design/sisyphus-react$': '<rootDir>/src/index.ts',
11
+ '\\.(css|less|scss)$': 'identity-obj-proxy',
12
+ '\\.(png|jpg|jpeg|gif|svg)$': '<rootDir>/tests/__mocks__/fileMock.js',
13
+ '@zat-design/utils': '<rootDir>/tests/__mocks__/zatUtils.js',
14
+ },
15
+ collectCoverageFrom: [
16
+ 'src/**/*.{ts,tsx}',
17
+ '!src/**/*.d.ts',
18
+ '!src/**/demos/**',
19
+ '!src/**/test/**',
20
+ '!src/old/**',
21
+ '!src/style/**',
22
+ '!src/**/symbolIcon.js',
23
+ '!src/index.ts',
24
+ '!src/tokens.ts',
25
+ '!src/utils/**',
26
+ '!src/locale/**',
27
+ ],
28
+ testMatch: [
29
+ '<rootDir>/src/**/__tests__/**/*.{ts,tsx}',
30
+ '<rootDir>/src/**/*.(test|spec).{ts,tsx}',
31
+ ],
32
+ testTimeout: 15000,
33
+ transform: {
34
+ '^.+\\.(ts|tsx)$': 'babel-jest',
35
+ '^.+\\.(js|jsx)$': 'babel-jest',
36
+ },
37
+ moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'json'],
38
+ transformIgnorePatterns: [
39
+ 'node_modules/(?!(antd|@ant-design|@pansy|rc-.+|@babel/runtime|@zat-design)/)',
40
+ ],
41
+ coverageThreshold: {
42
+ global: {
43
+ branches: 80,
44
+ functions: 80,
45
+ lines: 80,
46
+ statements: 80,
47
+ },
48
+ },
49
+ coverageReporters: ['text', 'lcov', 'html'],
8
50
  };
@@ -1,5 +1,3 @@
1
- /* @root-entry-name: 'default'; */
2
- /* @import (reference) '~antd/es/style/themes/index.less'; */
3
1
 
4
2
  .pro-action-error-modal {
5
3
  .ant-modal-content {
@@ -1,5 +1,6 @@
1
1
  import React, { FC } from 'react';
2
2
  import { FormInstance } from 'antd';
3
+ import 'dayjs/locale/zh-cn';
3
4
  import type { PropSelectType } from '../ProSelect/propsType';
4
5
  import type { ProModalSelectType } from '../ProForm/components/combination/ProModalSelect/propsType';
5
6
  import type { ProCascaderType } from '../ProForm/components/combination/ProCascader/propsType';
@@ -39,6 +39,7 @@ var import_react = __toESM(require("react"));
39
39
  var import_antd = require("antd");
40
40
  var import_zh_CN = __toESM(require("antd/es/locale/zh_CN"));
41
41
  var import_en_US = __toESM(require("antd/es/locale/en_US"));
42
+ var import_zh_cn = require("dayjs/locale/zh-cn");
42
43
  var import_merge = __toESM(require("lodash/merge"));
43
44
  var import_useEnumRequest = __toESM(require("../ProEnum/hooks/useEnumRequest"));
44
45
  var import_locale = require("../locale");
@@ -131,9 +132,9 @@ var ProConfigProvider = (props) => {
131
132
  }, []);
132
133
  const cacheLang = localStorage.getItem("locale");
133
134
  const lang = (state == null ? void 0 : state.locale) || cacheLang || (props == null ? void 0 : props.locale);
134
- if (!(state == null ? void 0 : state.locale) && !cacheLang && (props == null ? void 0 : props.locale)) {
135
- (0, import_locale.setLanguage)(props == null ? void 0 : props.locale);
136
- }
135
+ (0, import_react.useEffect)(() => {
136
+ (0, import_locale.setLanguage)(lang);
137
+ }, [lang]);
137
138
  (0, import_react.useEffect)(() => {
138
139
  if (enumRes == null ? void 0 : enumRes.data) {
139
140
  (props == null ? void 0 : props.onSuccess) && (props == null ? void 0 : props.onSuccess(enumRes == null ? void 0 : enumRes.data, enumRes == null ? void 0 : enumRes.params));
@@ -1,5 +1,3 @@
1
- /* @root-entry-name: 'default'; */
2
- /* @import (reference) '~antd/es/style/themes/index.less'; */
3
1
 
4
2
  .pro-download {
5
3
 
@@ -41,23 +41,27 @@ var import_locale = __toESM(require("../locale"));
41
41
  var ProDrawerFormContext = (0, import_react.createContext)(null);
42
42
  var useProDrawerFormContext = () => (0, import_react.useContext)(ProDrawerFormContext);
43
43
  var ProDrawerForm = (0, import_react.forwardRef)((props, ref) => {
44
- var _a2, _b2, _c, _d;
45
- let { showType, okText, isView } = props;
44
+ var _a, _b, _c, _d, _e, _f;
46
45
  const {
47
46
  open,
48
- mode,
49
- size,
47
+ mode = "Drawer",
48
+ size = "middle",
50
49
  disabled,
50
+ isView,
51
51
  form: originalForm,
52
- proFormProps,
52
+ proFormProps = {},
53
53
  onCancel,
54
- onCloseClean,
55
- children
54
+ onCloseClean = true,
55
+ children,
56
+ okText,
57
+ isConfirmClose = true,
58
+ maskClosable = false,
59
+ cancelText = (_b = (_a = import_locale.default) == null ? void 0 : _a.ProDrawerForm) == null ? void 0 : _b.cancel,
60
+ ...restProps
56
61
  } = props;
57
- showType = mode || showType;
58
- isView = isView || disabled;
59
- okText = okText ?? (showType === "Drawer" ? (_b2 = (_a2 = import_locale.default) == null ? void 0 : _a2.ProDrawerForm) == null ? void 0 : _b2.save : (_d = (_c = import_locale.default) == null ? void 0 : _c.ProDrawerForm) == null ? void 0 : _d.confirm);
60
- let { width } = props;
62
+ const nextIsView = isView || disabled;
63
+ const nextOkText = okText ?? (mode === "Drawer" ? (_d = (_c = import_locale.default) == null ? void 0 : _c.ProDrawerForm) == null ? void 0 : _d.save : (_f = (_e = import_locale.default) == null ? void 0 : _e.ProDrawerForm) == null ? void 0 : _f.confirm);
64
+ let { width } = restProps;
61
65
  if (!width && size) {
62
66
  width = (0, import_utils.transformBySize)(size);
63
67
  }
@@ -74,32 +78,25 @@ var ProDrawerForm = (0, import_react.forwardRef)((props, ref) => {
74
78
  return {
75
79
  Drawer: import_components.ProDrawer,
76
80
  Modal: import_components.ProModal
77
- }[showType];
78
- }, [showType]);
81
+ }[mode];
82
+ }, [mode]);
79
83
  return /* @__PURE__ */ import_react.default.createElement(ProDrawerFormContext.Provider, { value: { source: "ProDrawerForm" } }, open ? /* @__PURE__ */ import_react.default.createElement(
80
84
  DrawerModal,
81
85
  {
82
- ...props,
83
- isView,
86
+ ...restProps,
87
+ isView: nextIsView,
84
88
  open,
85
89
  form,
86
90
  width,
87
- okText,
88
- onCancel: handleCancel
91
+ okText: nextOkText,
92
+ onCancel: handleCancel,
93
+ isConfirmClose,
94
+ maskClosable,
95
+ cancelText
89
96
  },
90
- children || /* @__PURE__ */ import_react.default.createElement(import_ProForm.default, { form, disabled: isView, footer: false, ...proFormProps })
97
+ children || /* @__PURE__ */ import_react.default.createElement(import_ProForm.default, { form, disabled: nextIsView, footer: false, ...proFormProps })
91
98
  ) : null);
92
99
  });
93
- var _a, _b;
94
- ProDrawerForm.defaultProps = {
95
- showType: "Drawer",
96
- size: "middle",
97
- isConfirmClose: true,
98
- onCloseClean: true,
99
- maskClosable: false,
100
- cancelText: (_b = (_a = import_locale.default) == null ? void 0 : _a.ProDrawerForm) == null ? void 0 : _b.cancel,
101
- proFormProps: {}
102
- };
103
100
  var ProDrawerForm_default = ProDrawerForm;
104
101
  // Annotate the CommonJS export names for ESM import in node:
105
102
  0 && (module.exports = {
@@ -1,5 +1,3 @@
1
- /* @root-entry-name: 'default'; */
2
- /* @import (reference) '~antd/es/style/themes/index.less'; */
3
1
 
4
2
  .pro-drawer {
5
3
  .original-value-tooltip {
@@ -1,5 +1,3 @@
1
- /* @root-entry-name: 'default'; */
2
- /* @import (reference) '~antd/es/style/themes/index.less'; */
3
1
 
4
2
  .pro-edit-label {
5
3
  display: inline-block;
@@ -58,7 +58,7 @@ var Row = (props) => {
58
58
  const { render, record, renderIndex } = (child == null ? void 0 : child.props) || {};
59
59
  const isDrag = restProps["data-row-draggable"] ? (_a = restProps["data-row-draggable"]) == null ? void 0 : _a.call(restProps, record) : true;
60
60
  return import_react.default.cloneElement(child, {
61
- children: /* @__PURE__ */ import_react.default.createElement("span", { className: `drag-wrapper${props["data-hide"] ? " no-check" : ""}` }, isDrag ? /* @__PURE__ */ import_react.default.createElement(
61
+ children: /* @__PURE__ */ import_react.default.createElement("span", { className: `pro-edit-table-drag-wrapper${props["data-hide"] ? " no-check" : ""}` }, isDrag ? /* @__PURE__ */ import_react.default.createElement(
62
62
  import_ProIcon.default,
63
63
  {
64
64
  className: "drag-icon",
@@ -153,7 +153,8 @@ var ListChangedWrapper = (props) => {
153
153
  onDiff,
154
154
  originRecord: originalDTO == null ? void 0 : originalDTO.originRecord,
155
155
  record: originalDTO == null ? void 0 : originalDTO.record,
156
- index
156
+ index,
157
+ type: props.type
157
158
  });
158
159
  }, [props[valuePropName], originalValue]);
159
160
  const isAdd = diffType === "add";
@@ -170,11 +171,18 @@ var ListChangedWrapper = (props) => {
170
171
  }
171
172
  _children = viewRender;
172
173
  }
174
+ let processedValue = orgValue;
175
+ if (type === "ProNumberRange" && Array.isArray(orgValue)) {
176
+ processedValue = orgValue.map((item) => {
177
+ const num = Number(item);
178
+ return Number.isNaN(num) ? item : num;
179
+ });
180
+ }
173
181
  return import_react.default.isValidElement(children) ? import_react.default.cloneElement(children, {
174
182
  ...children,
175
183
  // @ts-ignore
176
184
  isView: true,
177
- [valuePropName]: orgValue,
185
+ [valuePropName]: processedValue,
178
186
  checked: type === "Switch" ? originalValue : void 0
179
187
  }) : void 0;
180
188
  }, [originalValue, children]);
@@ -7,7 +7,7 @@ import type { NamePath } from 'antd/es/form/interface';
7
7
  import type { ColumnType, TableProps } from 'antd/es/table';
8
8
  import type { FormInstance, FormItemProps } from 'antd/es/form';
9
9
  import type { ProFormValueType, FunctionArgs, ProRule } from '../ProForm/components/render/propsType';
10
- import type { DiffOriginalParams } from '../ProForm/utils/diffOriginal';
10
+ import type { DiffOriginalParams } from './utils/diffOriginal';
11
11
  /**
12
12
  * 操作类型定义
13
13
  */