@zat-design/sisyphus-react 4.5.9 → 4.5.10-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 (280) hide show
  1. package/dist/index.esm.css +1 -1
  2. package/dist/less.esm.css +1 -1
  3. package/es/FormsProvider/index.js +14 -21
  4. package/es/ProAction/components/CheckModalContent/index.js +12 -26
  5. package/es/ProAction/index.js +79 -83
  6. package/es/ProAction/propsType.js +0 -1
  7. package/es/ProConfigProvider/index.js +63 -110
  8. package/es/ProConfigProvider/propsType.js +0 -1
  9. package/es/ProDownload/index.d.ts +2 -1
  10. package/es/ProDownload/index.js +74 -69
  11. package/es/ProDownload/propsType.js +0 -1
  12. package/es/ProDownload/utils.d.ts +10 -5
  13. package/es/ProDownload/utils.js +63 -95
  14. package/es/ProDrawerForm/components/ProDrawer/index.js +83 -113
  15. package/es/ProDrawerForm/components/ProModal/index.js +77 -108
  16. package/es/ProDrawerForm/components/index.js +6 -2
  17. package/es/ProDrawerForm/hooks/useConfirmClose.js +20 -39
  18. package/es/ProDrawerForm/index.js +29 -38
  19. package/es/ProDrawerForm/propsType.js +0 -1
  20. package/es/ProDrawerForm/utils/index.js +18 -36
  21. package/es/ProEditLabel/components/RenderProForm.js +45 -49
  22. package/es/ProEditLabel/index.js +126 -163
  23. package/es/ProEditLabel/propsType.js +0 -1
  24. package/es/ProEditLabel/utils/index.js +5 -8
  25. package/es/ProEditTable/components/ActionButton/index.js +111 -119
  26. package/es/ProEditTable/components/RcTable/BaseTable.js +38 -51
  27. package/es/ProEditTable/components/RcTable/DraggableTable.js +97 -129
  28. package/es/ProEditTable/components/RcTable/index.js +6 -4
  29. package/es/ProEditTable/components/RenderField/ListChangedWrapper.js +77 -95
  30. package/es/ProEditTable/components/RenderField/index.js +490 -587
  31. package/es/ProEditTable/components/RenderField/propsType.js +0 -1
  32. package/es/ProEditTable/components/RenderField/tools.js +115 -112
  33. package/es/ProEditTable/components/RenderToolbar/index.js +47 -73
  34. package/es/ProEditTable/components/Summary/index.js +38 -64
  35. package/es/ProEditTable/components/Validator/index.js +46 -46
  36. package/es/ProEditTable/components/index.js +12 -5
  37. package/es/ProEditTable/index.js +456 -378
  38. package/es/ProEditTable/propsType.js +0 -1
  39. package/es/ProEditTable/utils/config.js +60 -122
  40. package/es/ProEditTable/utils/diffOriginal.js +45 -82
  41. package/es/ProEditTable/utils/getDefaultProps.js +19 -24
  42. package/es/ProEditTable/utils/index.js +154 -235
  43. package/es/ProEditTable/utils/tools.js +149 -286
  44. package/es/ProEditTable/utils/transform.js +25 -30
  45. package/es/ProEditTable/utils/useEditTableError.js +30 -43
  46. package/es/ProEditTable/utils/useShouldUpdateForTable.js +42 -72
  47. package/es/ProEditTable/utils/validateAll.js +87 -154
  48. package/es/ProEnum/components/Group.js +38 -30
  49. package/es/ProEnum/components/Tag.js +22 -26
  50. package/es/ProEnum/hooks/useEnum.js +48 -116
  51. package/es/ProEnum/hooks/useEnumRequest.js +182 -212
  52. package/es/ProEnum/hooks/useFrequentEnumRequest.js +40 -48
  53. package/es/ProEnum/index.js +162 -172
  54. package/es/ProEnum/propsType.js +0 -1
  55. package/es/ProEnum/utils/eventCenter.js +10 -12
  56. package/es/ProEnum/utils/frequentEnum.js +35 -92
  57. package/es/ProEnum/utils/getEnum.js +32 -90
  58. package/es/ProEnum/utils/getEnumLabel.js +44 -49
  59. package/es/ProEnum/utils/index.js +93 -207
  60. package/es/ProForm/components/Container.js +13 -28
  61. package/es/ProForm/components/FormFooter/index.js +36 -44
  62. package/es/ProForm/components/FormFooter/propsType.js +0 -1
  63. package/es/ProForm/components/base/Checkbox/index.js +32 -59
  64. package/es/ProForm/components/base/DatePicker/index.js +49 -71
  65. package/es/ProForm/components/base/Input/index.js +63 -97
  66. package/es/ProForm/components/base/Input/propsType.js +0 -1
  67. package/es/ProForm/components/base/InputNumber/index.js +118 -172
  68. package/es/ProForm/components/base/Radio/index.js +39 -52
  69. package/es/ProForm/components/base/RangePicker/index.js +109 -127
  70. package/es/ProForm/components/base/RangePicker/useDateRange.js +20 -17
  71. package/es/ProForm/components/base/Select/index.js +63 -89
  72. package/es/ProForm/components/base/Switch/index.js +27 -35
  73. package/es/ProForm/components/base/SwitchCheckbox/index.js +36 -54
  74. package/es/ProForm/components/base/TextArea/index.js +30 -41
  75. package/es/ProForm/components/base/TimePicker/index.js +27 -37
  76. package/es/ProForm/components/combination/Container/index.js +37 -47
  77. package/es/ProForm/components/combination/Container/propsType.js +0 -1
  78. package/es/ProForm/components/combination/FormList/components/ActionButton.js +165 -237
  79. package/es/ProForm/components/combination/FormList/components/BlockFields.js +98 -102
  80. package/es/ProForm/components/combination/FormList/components/Empty.js +28 -55
  81. package/es/ProForm/components/combination/FormList/components/LineFields.js +57 -54
  82. package/es/ProForm/components/combination/FormList/components/ToolbarButton.js +61 -109
  83. package/es/ProForm/components/combination/FormList/index.js +151 -161
  84. package/es/ProForm/components/combination/FormList/propsType.js +0 -1
  85. package/es/ProForm/components/combination/FormList/style/index.less +6 -0
  86. package/es/ProForm/components/combination/FormList/utils.js +22 -38
  87. package/es/ProForm/components/combination/Group/component/AddonWrapper/index.js +12 -28
  88. package/es/ProForm/components/combination/Group/component/ComRender.js +50 -111
  89. package/es/ProForm/components/combination/Group/component/FlexibleGroup.js +106 -213
  90. package/es/ProForm/components/combination/Group/hooks/index.js +69 -129
  91. package/es/ProForm/components/combination/Group/index.js +87 -126
  92. package/es/ProForm/components/combination/Group/propsType.js +0 -1
  93. package/es/ProForm/components/combination/Group/utils/index.js +124 -239
  94. package/es/ProForm/components/combination/ProCascader/index.js +156 -199
  95. package/es/ProForm/components/combination/ProCascader/propsType.js +0 -1
  96. package/es/ProForm/components/combination/ProCascader/utils/index.js +12 -21
  97. package/es/ProForm/components/combination/ProModalSelect/hooks/useRequestList.js +72 -70
  98. package/es/ProForm/components/combination/ProModalSelect/index.js +309 -347
  99. package/es/ProForm/components/combination/ProModalSelect/propsType.js +0 -1
  100. package/es/ProForm/components/combination/ProModalSelect/utils/index.js +32 -39
  101. package/es/ProForm/components/combination/ProNumberRange/index.js +100 -156
  102. package/es/ProForm/components/combination/ProNumberRange/propsType.js +0 -1
  103. package/es/ProForm/components/combination/ProRangeLimit/index.js +104 -115
  104. package/es/ProForm/components/combination/ProRangeLimit/propsType.js +0 -1
  105. package/es/ProForm/components/combination/ProTimeLimit/hooks/useControlled.js +16 -16
  106. package/es/ProForm/components/combination/ProTimeLimit/index.js +75 -109
  107. package/es/ProForm/components/index.js +56 -34
  108. package/es/ProForm/components/render/ChangedWrapper.js +85 -94
  109. package/es/ProForm/components/render/ConfirmWrapper.js +27 -39
  110. package/es/ProForm/components/render/CustomComponentViewWrapper.js +65 -82
  111. package/es/ProForm/components/render/Render.js +223 -329
  112. package/es/ProForm/components/render/RenderFields.js +76 -113
  113. package/es/ProForm/components/render/propsType.js +0 -1
  114. package/es/ProForm/hooks/useControlled.js +8 -10
  115. package/es/ProForm/hooks/useDeepCompareMemo.js +11 -11
  116. package/es/ProForm/hooks/useFieldProps.js +8 -4
  117. package/es/ProForm/hooks/useForm.js +50 -110
  118. package/es/ProForm/hooks/useRules.js +17 -33
  119. package/es/ProForm/hooks/useShouldUpdate.js +77 -152
  120. package/es/ProForm/hooks/useWatch.js +62 -134
  121. package/es/ProForm/index.js +157 -194
  122. package/es/ProForm/propsType.js +15 -7
  123. package/es/ProForm/utils/buildFormItemProps.js +51 -58
  124. package/es/ProForm/utils/diffOriginal.js +43 -73
  125. package/es/ProForm/utils/getDefaultProps.js +18 -24
  126. package/es/ProForm/utils/index.js +160 -235
  127. package/es/ProForm/utils/processDependencies.js +21 -60
  128. package/es/ProForm/utils/reactiveValues.js +20 -34
  129. package/es/ProForm/utils/rulesCreator.js +42 -40
  130. package/es/ProForm/utils/transformNames.js +10 -13
  131. package/es/ProForm/utils/transformValue.js +16 -29
  132. package/es/ProForm/utils/valueType.js +96 -178
  133. package/es/ProIcon/config/index.js +340 -274
  134. package/es/ProIcon/index.js +135 -209
  135. package/es/ProIcon/propsTypes.js +0 -1
  136. package/es/ProIcon/utils/index.js +24 -39
  137. package/es/ProLayout/components/Layout/Header/index.js +108 -141
  138. package/es/ProLayout/components/Layout/Menu/FoldMenu/index.js +134 -190
  139. package/es/ProLayout/components/Layout/Menu/OpenMenu/index.js +113 -139
  140. package/es/ProLayout/components/Layout/Menu/OpenMenu/propsType.js +0 -1
  141. package/es/ProLayout/components/Layout/Menu/SideMenu/index.js +23 -31
  142. package/es/ProLayout/components/Layout/Menu/index.js +92 -89
  143. package/es/ProLayout/components/Layout/Notice/index.js +13 -27
  144. package/es/ProLayout/components/Layout/index.js +8 -3
  145. package/es/ProLayout/components/ProCollapse/PropTypes.js +0 -1
  146. package/es/ProLayout/components/ProCollapse/index.js +89 -111
  147. package/es/ProLayout/components/ProFooter/PropTypes.js +0 -1
  148. package/es/ProLayout/components/ProFooter/index.js +27 -24
  149. package/es/ProLayout/components/ProHeader/PropTypes.js +0 -1
  150. package/es/ProLayout/components/ProHeader/components/Copy/index.js +23 -21
  151. package/es/ProLayout/components/ProHeader/components/Describe/index.js +67 -84
  152. package/es/ProLayout/components/ProHeader/components/ProBackBtn/index.js +18 -21
  153. package/es/ProLayout/components/ProHeader/components/ProBackBtn/propsType.js +0 -1
  154. package/es/ProLayout/components/ProHeader/components/index.js +6 -2
  155. package/es/ProLayout/components/ProHeader/index.js +216 -356
  156. package/es/ProLayout/components/ProHeader/utils/index.js +19 -26
  157. package/es/ProLayout/components/TabsManager/components/TabContextMenu.js +92 -85
  158. package/es/ProLayout/components/TabsManager/components/TabItem.js +53 -63
  159. package/es/ProLayout/components/TabsManager/components/TabsContext.js +5 -5
  160. package/es/ProLayout/components/TabsManager/components/TabsHeader.js +42 -52
  161. package/es/ProLayout/components/TabsManager/hooks/useActiveTab.js +8 -9
  162. package/es/ProLayout/components/TabsManager/hooks/useIframeRoute.js +19 -32
  163. package/es/ProLayout/components/TabsManager/hooks/useProLayoutTabs.js +6 -20
  164. package/es/ProLayout/components/TabsManager/hooks/useTabsCache.js +25 -42
  165. package/es/ProLayout/components/TabsManager/hooks/useTabsState.js +320 -350
  166. package/es/ProLayout/components/TabsManager/hooks/useTabsUrlSync.d.ts +19 -0
  167. package/es/ProLayout/components/TabsManager/hooks/useTabsUrlSync.js +332 -0
  168. package/es/ProLayout/components/TabsManager/index.js +407 -351
  169. package/es/ProLayout/components/TabsManager/propTypes.d.ts +4 -0
  170. package/es/ProLayout/components/TabsManager/propTypes.js +7 -15
  171. package/es/ProLayout/components/TabsManager/style/index.less +1 -1
  172. package/es/ProLayout/components/TabsManager/utils/historyObserver.d.ts +7 -0
  173. package/es/ProLayout/components/TabsManager/utils/historyObserver.js +65 -0
  174. package/es/ProLayout/components/TabsManager/utils/index.d.ts +15 -2
  175. package/es/ProLayout/components/TabsManager/utils/index.js +156 -159
  176. package/es/ProLayout/components/index.js +8 -3
  177. package/es/ProLayout/index.js +173 -228
  178. package/es/ProLayout/propTypes.d.ts +28 -1
  179. package/es/ProLayout/propTypes.js +12 -52
  180. package/es/ProLayout/utils/index.js +48 -128
  181. package/es/ProSelect/components/AdaptiveTooltip.js +26 -25
  182. package/es/ProSelect/index.js +187 -223
  183. package/es/ProSelect/propsType.js +0 -1
  184. package/es/ProSelect/style/index.less +13 -0
  185. package/es/ProSelect/utils/index.js +100 -146
  186. package/es/ProStep/components/Anchor/index.js +71 -82
  187. package/es/ProStep/components/Item/index.js +49 -56
  188. package/es/ProStep/components/LazyLoad/index.js +23 -29
  189. package/es/ProStep/components/Listener/index.js +20 -33
  190. package/es/ProStep/components/Step/index.js +31 -38
  191. package/es/ProStep/constants.js +4 -1
  192. package/es/ProStep/index.js +166 -153
  193. package/es/ProStep/propsType.js +0 -1
  194. package/es/ProStep/style/index.less +1 -1
  195. package/es/ProStep/utils/index.js +29 -55
  196. package/es/ProStepTab/index.js +83 -138
  197. package/es/ProStepTab/propsType.js +0 -1
  198. package/es/ProTable/components/EditableCell/EditIcon.js +10 -14
  199. package/es/ProTable/components/EditableCell/index.js +37 -71
  200. package/es/ProTable/components/EditableCell/propsType.js +0 -1
  201. package/es/ProTable/components/FormatColumn/index.js +209 -340
  202. package/es/ProTable/components/FormatColumn/propsType.js +0 -1
  203. package/es/ProTable/components/RcTable/components/BaseTable/index.js +35 -39
  204. package/es/ProTable/components/RcTable/components/DraggableTable/components/DndWrapper/index.js +80 -107
  205. package/es/ProTable/components/RcTable/components/DraggableTable/components/DndWrapper/utils/index.js +54 -48
  206. package/es/ProTable/components/RcTable/components/DraggableTable/components/DndWrapper/utils/propsType.js +0 -1
  207. package/es/ProTable/components/RcTable/components/DraggableTable/index.js +47 -54
  208. package/es/ProTable/components/RcTable/index.js +6 -4
  209. package/es/ProTable/components/RenderColumn/index.js +158 -186
  210. package/es/ProTable/components/RenderEmptyText/index.js +12 -21
  211. package/es/ProTable/components/RenderFooter/index.js +15 -15
  212. package/es/ProTable/components/RenderSummary/index.js +33 -50
  213. package/es/ProTable/components/RenderTableHeader/index.js +44 -46
  214. package/es/ProTable/components/RenderTabs/index.js +47 -51
  215. package/es/ProTable/components/TableResizable/index.js +56 -72
  216. package/es/ProTable/components/TooltipTitle/index.js +13 -21
  217. package/es/ProTable/components/index.js +16 -36
  218. package/es/ProTable/hooks/useAntdTable.js +191 -224
  219. package/es/ProTable/index.js +232 -249
  220. package/es/ProTable/propsType.js +0 -1
  221. package/es/ProTable/utils/columnStorage.js +63 -88
  222. package/es/ProTable/utils/index.js +57 -90
  223. package/es/ProTabs/components/Card/index.js +20 -48
  224. package/es/ProTabs/components/index.js +4 -1
  225. package/es/ProTabs/index.js +41 -58
  226. package/es/ProTabs/propType.js +0 -1
  227. package/es/ProThemeTools/component/ProTools/index.js +106 -158
  228. package/es/ProThemeTools/component/index.js +4 -1
  229. package/es/ProThemeTools/context/ThemeContext.js +67 -146
  230. package/es/ProThemeTools/index.js +103 -156
  231. package/es/ProThemeTools/propsType.js +0 -1
  232. package/es/ProThemeTools/utils/index.js +60 -109
  233. package/es/ProTooltip/index.js +132 -168
  234. package/es/ProTooltip/propsType.js +0 -1
  235. package/es/ProTree/components/AdaptiveTooltip.js +15 -17
  236. package/es/ProTree/components/CloseIcon.js +18 -26
  237. package/es/ProTree/components/List.js +28 -47
  238. package/es/ProTree/components/ProTree.js +152 -211
  239. package/es/ProTree/components/ProTreeSelect/index.js +255 -459
  240. package/es/ProTree/components/ProTreeSelect/propsType.js +0 -1
  241. package/es/ProTree/components/SearchTitle.js +23 -42
  242. package/es/ProTree/components/Tree.js +147 -195
  243. package/es/ProTree/components/index.js +10 -5
  244. package/es/ProTree/index.js +12 -16
  245. package/es/ProTree/propsType.js +0 -1
  246. package/es/ProTree/utils.js +46 -118
  247. package/es/ProTreeModal/components/Cascader.js +56 -64
  248. package/es/ProTreeModal/components/CloseIcon.js +18 -26
  249. package/es/ProTreeModal/components/List.js +114 -180
  250. package/es/ProTreeModal/components/SearchTitle.js +15 -18
  251. package/es/ProTreeModal/components/SortableItem.js +29 -58
  252. package/es/ProTreeModal/components/Tree.js +99 -113
  253. package/es/ProTreeModal/components/Trigger.js +87 -121
  254. package/es/ProTreeModal/components/index.js +14 -6
  255. package/es/ProTreeModal/index.js +397 -438
  256. package/es/ProTreeModal/propsType.js +0 -1
  257. package/es/ProTreeModal/utils.js +52 -95
  258. package/es/ProUpload/components/ButtonRender.js +44 -54
  259. package/es/ProUpload/components/DragRender.js +94 -148
  260. package/es/ProUpload/components/DraggableUploadListItem.js +12 -25
  261. package/es/ProUpload/components/Example.js +27 -31
  262. package/es/ProUpload/components/FileItem.js +69 -163
  263. package/es/ProUpload/components/ImageRender.js +134 -170
  264. package/es/ProUpload/index.js +68 -100
  265. package/es/ProUpload/propsType.js +0 -1
  266. package/es/ProUpload/uitls.js +8 -4
  267. package/es/ProUtils/utils/index.js +17 -13
  268. package/es/ProViewer/index.js +154 -175
  269. package/es/ProViewer/propsType.js +0 -5
  270. package/es/ProWaterMark/index.js +9 -16
  271. package/es/ProWaterMark/propsType.js +0 -1
  272. package/es/hooks/useDraggableRow.js +25 -53
  273. package/es/index.js +57 -77
  274. package/es/locale/en_US.js +153 -142
  275. package/es/locale/index.js +23 -36
  276. package/es/locale/zh_CN.js +145 -142
  277. package/es/tokens.js +84 -83
  278. package/es/utils/index.js +24 -51
  279. package/package.json +4 -2
  280. package/es/ProConfigProvider/demo/locale.js +0 -58
@@ -1 +0,0 @@
1
- export {};
@@ -1,11 +1,11 @@
1
- import _set from "lodash/set";
2
- import { PlusOutlined } from '@ant-design/icons';
3
- import { tools } from '@zat-design/utils';
4
- import { message } from 'antd';
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { PlusOutlined } from "@ant-design/icons";
3
+ import { tools } from "@zat-design/utils";
4
+ import { message } from "antd";
5
+ import set from "lodash/set";
5
6
  import { onDelete, getRandom } from "./tools";
6
7
  import locale from "../../locale";
7
- import { jsx as _jsx } from "react/jsx-runtime";
8
- export const defaultBtnNameMap = {
8
+ const defaultBtnNameMap = {
9
9
  add: locale.ProEditTable.add,
10
10
  edit: locale.ProEditTable.edit,
11
11
  copy: locale.ProEditTable.copy,
@@ -15,23 +15,14 @@ export const defaultBtnNameMap = {
15
15
  cancel: locale.ProEditTable.cancel,
16
16
  custom: locale.ProEditTable.custom
17
17
  };
18
-
19
- // 默认按钮配置
20
- export const iconMap = {
21
- add: /*#__PURE__*/_jsx(PlusOutlined, {})
18
+ const iconMap = {
19
+ add: /* @__PURE__ */ jsx(PlusOutlined, {})
22
20
  };
23
-
24
- // 单行编辑 操作栏默认配置按钮
25
- export const defaultSingleActionKeys = ['edit', 'delete', 'save', 'cancel'];
26
- // 多行编辑 操作栏默认配置按钮
27
- export const defaultMultipleActionKeys = ['delete'];
28
- // 编辑状态下只显示保存、取消按钮
29
- export const defaultEditingActionKeys = ['save', 'cancel'];
30
- // 工具栏默认配置按钮
31
- export const defaultToolbarKeys = ['add', 'mulDelete'];
32
-
33
- // 操作枚举
34
- export const actions = {
21
+ const defaultSingleActionKeys = ["edit", "delete", "save", "cancel"];
22
+ const defaultMultipleActionKeys = ["delete"];
23
+ const defaultEditingActionKeys = ["save", "cancel"];
24
+ const defaultToolbarKeys = ["add", "mulDelete"];
25
+ const actions = {
35
26
  edit: ({
36
27
  record,
37
28
  editingKeys,
@@ -41,64 +32,37 @@ export const actions = {
41
32
  virtualKey,
42
33
  onlyOneLineMsg
43
34
  }) => {
44
- // 单行编辑时,需要先保存,才能进行下面的编辑
45
35
  if (virtualKey && editingKeys.length >= 1) {
46
36
  message.warning(onlyOneLineMsg);
47
37
  return false;
48
38
  }
49
39
  const nextEditingKeys = [...editingKeys];
50
- // 开启编辑状态
51
40
  nextEditingKeys.push(record.rowKey);
52
- // 编辑时赋值编辑状态,供validator做保存校验
53
- if (nextEditingKeys?.length) {
41
+ if (nextEditingKeys == null ? void 0 : nextEditingKeys.length) {
54
42
  record._isEditing = true;
55
43
  } else {
56
44
  delete record._isEditing;
57
45
  }
58
- // 复制当前行数据
59
- form.setFieldValue(virtualRowName, {
60
- ...record
61
- });
46
+ form.setFieldValue(virtualRowName, { ...record });
62
47
  setState({
63
48
  editingKeys: nextEditingKeys
64
49
  });
65
50
  },
66
- save: async ({
67
- record,
68
- editingKeys,
69
- setState,
70
- form,
71
- rowName,
72
- virtualRowName,
73
- result
74
- }) => {
75
- // 保存返回数据与当前行内数据做合并
76
- const updateData = typeof result === 'object' ? result : {};
77
- record = {
78
- ...record,
79
- ...form.getFieldValue(virtualRowName),
80
- ...updateData
81
- };
82
- delete record._addFlag; // 删除第一次新增的标记
83
- // 关闭当前保存行的编辑状态
84
- const nextEditingKeys = editingKeys.filter(key => key !== record.rowKey);
85
- // 保存后取消编辑状态,供validator做保存校验
86
- if (nextEditingKeys?.length) {
51
+ save: async ({ record, editingKeys, setState, form, rowName, virtualRowName, result }) => {
52
+ const updateData = typeof result === "object" ? result : {};
53
+ record = { ...record, ...form.getFieldValue(virtualRowName), ...updateData };
54
+ delete record._addFlag;
55
+ const nextEditingKeys = editingKeys.filter((key) => key !== record.rowKey);
56
+ if (nextEditingKeys == null ? void 0 : nextEditingKeys.length) {
87
57
  record._isEditing = true;
88
58
  } else {
89
59
  delete record._isEditing;
90
60
  }
91
- // 防止value引用不变, 值不更新 - (自定义组件)
92
- // 必须取全量 store(true):names 组合列只注册合并字段,拆分子字段(如 address/postcode)
93
- // 未注册;getFieldsValue() 会丢掉它们,叠加 setFieldsValue 对数组「整体覆盖」会抹掉其他行的子字段
94
61
  const values = form.getFieldsValue(true);
95
- _set(values, rowName, record);
96
- // 同步清理虚拟路径上的 _addFlag,避免再次编辑→取消时把已保存行误删
97
- _set(values, virtualRowName, record);
62
+ set(values, rowName, record);
63
+ set(values, virtualRowName, record);
98
64
  form.setFieldsValue(values);
99
- setState({
100
- editingKeys: nextEditingKeys
101
- });
65
+ setState({ editingKeys: nextEditingKeys });
102
66
  },
103
67
  cancel: ({
104
68
  name,
@@ -110,17 +74,13 @@ export const actions = {
110
74
  virtualKey,
111
75
  rowName
112
76
  }) => {
113
- const nextEditingKeys = editingKeys.filter(key => key !== record.rowKey);
114
- // 保存后取消编辑状态,供validator做保存校验
115
- if (nextEditingKeys?.length) {
77
+ const nextEditingKeys = editingKeys.filter((key) => key !== record.rowKey);
78
+ if (nextEditingKeys == null ? void 0 : nextEditingKeys.length) {
116
79
  record._isEditing = true;
117
80
  } else {
118
81
  delete record._isEditing;
119
82
  }
120
- setState({
121
- editingKeys: nextEditingKeys
122
- }); // 关闭编辑状态
123
- // 取消分两种,一编辑取消,二添加取消
83
+ setState({ editingKeys: nextEditingKeys });
124
84
  if (record._addFlag) {
125
85
  onDelete({
126
86
  name,
@@ -129,29 +89,17 @@ export const actions = {
129
89
  selectedRowKeys: [record.rowKey]
130
90
  });
131
91
  } else {
132
- // 取消时使用主 form 原始行数据重置虚拟 form,避免编辑值残留
133
- // 同 save:取全量 store(true),避免抹掉其他行未注册的 names 拆分子字段
134
92
  const originalRecord = form.getFieldValue(rowName);
135
93
  const values = form.getFieldsValue(true);
136
- _set(values, virtualRowName, originalRecord ?? record);
94
+ set(values, virtualRowName, originalRecord ?? record);
137
95
  form.setFieldsValue(values);
138
96
  }
139
97
  },
140
- delete: ({
141
- name,
142
- record,
143
- editingKeys,
144
- setState,
145
- form,
146
- virtualKey,
147
- onlyOneLineMsg
148
- }) => {
149
- // 单行编辑时,需要先保存,才能进行下面的编辑
98
+ delete: ({ name, record, editingKeys, setState, form, virtualKey, onlyOneLineMsg }) => {
150
99
  if (virtualKey && editingKeys.length >= 1) {
151
100
  message.warning(onlyOneLineMsg);
152
101
  return false;
153
102
  }
154
- // 删除当前行数据
155
103
  onDelete({
156
104
  name,
157
105
  form,
@@ -159,11 +107,8 @@ export const actions = {
159
107
  selectedRowKeys: [record.rowKey]
160
108
  });
161
109
  if (virtualKey) {
162
- // 关闭编辑状态
163
- const nextEditingKeys = editingKeys.filter(key => key === record.rowKey);
164
- setState({
165
- editingKeys: nextEditingKeys
166
- });
110
+ const nextEditingKeys = editingKeys.filter((key) => key === record.rowKey);
111
+ setState({ editingKeys: nextEditingKeys });
167
112
  }
168
113
  },
169
114
  add: async ({
@@ -177,69 +122,62 @@ export const actions = {
177
122
  virtualKey,
178
123
  onlyOneLineMsg,
179
124
  tableRef,
180
- prefixCls = 'ant',
125
+ prefixCls = "ant",
181
126
  page,
182
127
  handlePageChange,
183
128
  virtual
184
129
  }) => {
185
- const nextData = [...(form.getFieldValue(name) || [])];
186
- // 单行编辑时,需要先保存,才能进行下面的编辑
130
+ var _a, _b;
131
+ const nextData = [...form.getFieldValue(name) || []];
187
132
  if (virtualKey && editingKeys.length >= 1) {
188
133
  message.warning(onlyOneLineMsg);
189
134
  return false;
190
135
  }
191
136
  const rowKey = getRandom();
192
- // 添加新增对象数据
193
137
  const addData = {
194
- ...(typeof result === 'object' ? result : {}),
138
+ ...typeof result === "object" ? result : {},
195
139
  rowKey
196
140
  };
197
-
198
- // 单行编辑时,需要操作一下数据结构,判断是否第一次新增,以及是否是编辑状态
199
141
  if (virtualKey) {
200
142
  addData._addFlag = true;
201
143
  addData._isEditing = true;
202
144
  }
203
- if (insertType === 'before') {
145
+ if (insertType === "before") {
204
146
  nextData.unshift(addData);
205
147
  setTimeout(async () => {
206
148
  handlePageChange(1, page.pageSize);
207
149
  }, 0);
208
150
  } else {
209
151
  nextData.push(addData);
210
- const nextPageNum = Math.ceil(tools.calc(nextData.length, '/', page.pageSize));
152
+ const nextPageNum = Math.ceil(tools.calc(nextData.length, "/", page.pageSize));
211
153
  setTimeout(async () => {
212
154
  handlePageChange(nextPageNum, page.pageSize);
213
155
  }, 0);
214
156
  }
215
-
216
- // 当单选情况下,存储正在编辑值
217
157
  if (virtualKey) {
218
158
  const nextEditingKeys = [...editingKeys];
219
- // 开启编辑状态
220
159
  nextEditingKeys.push(rowKey);
221
160
  form.setFieldValue(virtualName, nextData);
222
- setState({
223
- editingKeys: nextEditingKeys
224
- });
161
+ setState({ editingKeys: nextEditingKeys });
225
162
  }
226
163
  form.setFieldValue(name, nextData);
227
164
  if (virtual) {
228
- // 虚拟表格无 .ant-table-body 原生滚动容器,使用 antd Table ref 的 scrollTo 按行索引定位
229
- // 不传 align:新增行在视口外时虚拟列表会自动贴边(尾部插入贴底、头部插入贴顶)
230
165
  requestAnimationFrame(() => {
231
- tableRef.current?.scrollTo?.({
232
- index: insertType === 'before' ? 0 : nextData.length - 1
166
+ var _a2, _b2;
167
+ (_b2 = (_a2 = tableRef.current) == null ? void 0 : _a2.scrollTo) == null ? void 0 : _b2.call(_a2, {
168
+ index: insertType === "before" ? 0 : nextData.length - 1
233
169
  });
234
170
  });
235
171
  } else {
236
- const tableBody = tableRef.current?.children[0]?.querySelector(`.${prefixCls}-table-body`);
172
+ const tableBody = (_b = (_a = tableRef.current) == null ? void 0 : _a.children[0]) == null ? void 0 : _b.querySelector(
173
+ `.${prefixCls}-table-body`
174
+ );
237
175
  if (tableBody) {
238
- // 等待新行渲染完毕再读取 scrollHeight,确保能滚动到真正的底部
239
176
  requestAnimationFrame(() => {
240
- tableBody.scrollTo?.({
241
- top: insertType === 'before' ? 0 : tableBody.scrollHeight,
242
- behavior: 'smooth'
177
+ var _a2;
178
+ (_a2 = tableBody.scrollTo) == null ? void 0 : _a2.call(tableBody, {
179
+ top: insertType === "before" ? 0 : tableBody.scrollHeight,
180
+ behavior: "smooth"
243
181
  });
244
182
  });
245
183
  }
@@ -248,15 +186,7 @@ export const actions = {
248
186
  await form.validateFields([name]);
249
187
  }
250
188
  },
251
- mulDelete: ({
252
- form,
253
- name,
254
- virtualKey,
255
- setState,
256
- selectedRowKeys,
257
- editingKeys = []
258
- }) => {
259
- // 删除选中数据
189
+ mulDelete: ({ form, name, virtualKey, setState, selectedRowKeys, editingKeys = [] }) => {
260
190
  onDelete({
261
191
  name,
262
192
  form,
@@ -267,10 +197,18 @@ export const actions = {
267
197
  selectedRowKeys: [],
268
198
  selectedRows: []
269
199
  };
270
- // 删除的选择数据包含单行编辑行时,清空可编辑key
271
- if (virtualKey && selectedRowKeys.includes(editingKeys?.[0])) {
200
+ if (virtualKey && selectedRowKeys.includes(editingKeys == null ? void 0 : editingKeys[0])) {
272
201
  nextData.editingKeys = [];
273
202
  }
274
203
  setState(nextData);
275
204
  }
276
- };
205
+ };
206
+ export {
207
+ actions,
208
+ defaultBtnNameMap,
209
+ defaultEditingActionKeys,
210
+ defaultMultipleActionKeys,
211
+ defaultSingleActionKeys,
212
+ defaultToolbarKeys,
213
+ iconMap
214
+ };
@@ -1,21 +1,14 @@
1
- import _isObject from "lodash/isObject";
2
- import _isFunction from "lodash/isFunction";
3
- import _isEqual from "lodash/isEqual";
4
- import { validate } from '@zat-design/utils';
5
- const {
6
- isEmpty
7
- } = validate;
8
-
9
- // 比较策略接口
10
-
11
- // 数字类型标准化函数
12
- const normalizeNumberValue = value => {
13
- if (value === null || value === undefined || value === '') return null;
1
+ import isEqual from "lodash/isEqual";
2
+ import isFunction from "lodash/isFunction";
3
+ import isObject from "lodash/isObject";
4
+ import { validate } from "@zat-design/utils";
5
+ const { isEmpty } = validate;
6
+ const normalizeNumberValue = (value) => {
7
+ if (value === null || value === void 0 || value === "")
8
+ return null;
14
9
  const num = Number(value);
15
10
  return Number.isNaN(num) ? null : num;
16
11
  };
17
-
18
- // InputNumber 比较策略
19
12
  const inputNumberStrategy = {
20
13
  compare: (val1, val2) => {
21
14
  const num1 = normalizeNumberValue(val1);
@@ -23,12 +16,12 @@ const inputNumberStrategy = {
23
16
  return num1 === num2;
24
17
  }
25
18
  };
26
-
27
- // ProNumberRange 比较策略
28
19
  const proNumberRangeStrategy = {
29
20
  compare: (val1, val2) => {
30
- if (!Array.isArray(val1) || !Array.isArray(val2)) return false;
31
- if (val1.length !== val2.length) return false;
21
+ if (!Array.isArray(val1) || !Array.isArray(val2))
22
+ return false;
23
+ if (val1.length !== val2.length)
24
+ return false;
32
25
  return val1.every((item, index) => {
33
26
  const num1 = normalizeNumberValue(item);
34
27
  const num2 = normalizeNumberValue(val2[index]);
@@ -36,45 +29,30 @@ const proNumberRangeStrategy = {
36
29
  });
37
30
  }
38
31
  };
39
-
40
- // 数字类型处理函数
41
- const handleNumberTypeDiff = params => {
42
- const {
43
- originalValue,
44
- value,
45
- type
46
- } = params;
32
+ const handleNumberTypeDiff = (params) => {
33
+ const { originalValue, value, type } = params;
47
34
  const isEmptyVal = isEmpty(value);
48
35
  const isEmptyOrg = isEmpty(originalValue);
49
-
50
- // 都为空视为相等
51
- if (isEmptyOrg && isEmptyVal) return 'same';
52
-
53
- // 如果原始值为空 且当前有值的话 视为新增
54
- if (isEmptyOrg && !isEmptyVal) return 'add';
55
-
56
- // 根据类型选择对应的比较策略
36
+ if (isEmptyOrg && isEmptyVal)
37
+ return "same";
38
+ if (isEmptyOrg && !isEmptyVal)
39
+ return "add";
57
40
  let compareStrategy;
58
- if (type === 'InputNumber') {
41
+ if (type === "InputNumber") {
59
42
  compareStrategy = inputNumberStrategy;
60
- } else if (type === 'ProNumberRange') {
43
+ } else if (type === "ProNumberRange") {
61
44
  compareStrategy = proNumberRangeStrategy;
62
45
  } else {
63
- return 'changed'; // 未知类型视为已改变
46
+ return "changed";
64
47
  }
65
- return compareStrategy.compare(value, originalValue) ? 'same' : 'changed';
48
+ return compareStrategy.compare(value, originalValue) ? "same" : "changed";
66
49
  };
67
-
68
- // 过滤对象中undefined字段
69
- // 防止{a: '1'} {a: '1', b: undefined | null}被认为不相等
70
- const filterObject = data => {
71
- if (!_isObject(data) || data === null) return data;
72
-
73
- // ['1', undefined] ['1', ''] 视为相等
50
+ const filterObject = (data) => {
51
+ if (!isObject(data) || data === null)
52
+ return data;
74
53
  if (Array.isArray(data)) {
75
- // 数组中全是empty值的话 视为null
76
54
  let isFillNull = true;
77
- const arr = data.map(item => {
55
+ const arr = data.map((item) => {
78
56
  if (isEmpty(item)) {
79
57
  return null;
80
58
  }
@@ -84,29 +62,18 @@ const filterObject = data => {
84
62
  return isFillNull ? null : arr;
85
63
  }
86
64
  const resData = {};
87
- Object.keys(data).forEach(key => {
65
+ Object.keys(data).forEach((key) => {
88
66
  if (!isEmpty(data[key])) {
89
67
  resData[key] = data[key];
90
68
  }
91
69
  });
92
-
93
- // 空对象视为null 比较时 null undefined {} [] '' 视为相等
94
- if (!Object.keys(resData).length) return null;
70
+ if (!Object.keys(resData).length)
71
+ return null;
95
72
  return resData;
96
73
  };
97
- export const diffOriginal = params => {
98
- const {
99
- originalValue,
100
- value,
101
- onDiff,
102
- originRecord,
103
- record,
104
- index,
105
- type
106
- } = params;
107
-
108
- // 支持传入自定义比较事件
109
- if (_isFunction(onDiff)) {
74
+ const diffOriginal = (params) => {
75
+ const { originalValue, value, onDiff, originRecord, record, index, type } = params;
76
+ if (isFunction(onDiff)) {
110
77
  const diffRes = onDiff({
111
78
  originValue: originalValue,
112
79
  originRecord,
@@ -114,30 +81,26 @@ export const diffOriginal = params => {
114
81
  record,
115
82
  index
116
83
  });
117
- // 如果返回undefined走内置比较逻辑
118
- if (diffRes !== undefined) {
119
- if (typeof diffRes === 'boolean') {
120
- return diffRes ? 'same' : 'changed';
84
+ if (diffRes !== void 0) {
85
+ if (typeof diffRes === "boolean") {
86
+ return diffRes ? "same" : "changed";
121
87
  }
122
88
  return diffRes;
123
89
  }
124
90
  }
125
-
126
- // 数字类型特殊处理
127
- if (['InputNumber', 'ProNumberRange'].includes(type)) {
91
+ if (["InputNumber", "ProNumberRange"].includes(type)) {
128
92
  return handleNumberTypeDiff(params);
129
93
  }
130
-
131
- // 其他类型使用原有逻辑
132
94
  const _value = filterObject(value);
133
95
  const _originalValue = filterObject(originalValue);
134
96
  const isEmptyVal = isEmpty(_value);
135
97
  const isEmptyOrg = isEmpty(_originalValue);
136
-
137
- // 都为空视为相等
138
- if (isEmptyOrg && isEmptyVal) return 'same';
139
-
140
- // 如果原始值为空 且当前有值的话 视为新增
141
- if (isEmptyOrg && !isEmptyVal) return 'add';
142
- return _isEqual(_value, _originalValue) ? 'same' : 'changed';
143
- };
98
+ if (isEmptyOrg && isEmptyVal)
99
+ return "same";
100
+ if (isEmptyOrg && !isEmptyVal)
101
+ return "add";
102
+ return isEqual(_value, _originalValue) ? "same" : "changed";
103
+ };
104
+ export {
105
+ diffOriginal
106
+ };
@@ -1,36 +1,31 @@
1
- import _isEqual from "lodash/isEqual";
2
- import _get from "lodash/get";
1
+ import get from "lodash/get";
2
+ import isEqual from "lodash/isEqual";
3
3
  const defaultPropsMap = {
4
- ProSelect: props => {
5
- const {
6
- fieldProps,
7
- name,
8
- namePath
9
- } = props;
10
- const {
11
- filterInList
12
- } = fieldProps || {};
4
+ ProSelect: (props) => {
5
+ const { fieldProps, name, namePath } = props;
6
+ const { filterInList } = fieldProps || {};
13
7
  const defaultProps = {};
14
-
15
- // formList场景传入列表过滤时
16
8
  if (filterInList && namePath && name) {
17
9
  const _namePath = [...namePath].splice(2, namePath.length - 1);
18
10
  defaultProps.shouldUpdate = (preValues, curValues) => {
19
- const preListValue = _get(preValues, name)?.map?.(item => {
20
- return _get(item, _namePath);
11
+ var _a, _b, _c, _d;
12
+ const preListValue = (_b = (_a = get(preValues, name)) == null ? void 0 : _a.map) == null ? void 0 : _b.call(_a, (item) => {
13
+ return get(item, _namePath);
21
14
  });
22
- const curListValue = _get(curValues, name)?.map?.(item => {
23
- return _get(item, _namePath);
15
+ const curListValue = (_d = (_c = get(curValues, name)) == null ? void 0 : _c.map) == null ? void 0 : _d.call(_c, (item) => {
16
+ return get(item, _namePath);
24
17
  });
25
- return !_isEqual(preListValue, curListValue);
18
+ return !isEqual(preListValue, curListValue);
26
19
  };
27
20
  }
28
21
  return defaultProps;
29
22
  }
30
23
  };
31
- export const getDefaultProps = props => {
32
- const {
33
- type
34
- } = props;
35
- return defaultPropsMap[type]?.(props);
36
- };
24
+ const getDefaultProps = (props) => {
25
+ var _a;
26
+ const { type } = props;
27
+ return (_a = defaultPropsMap[type]) == null ? void 0 : _a.call(defaultPropsMap, props);
28
+ };
29
+ export {
30
+ getDefaultProps
31
+ };