@zat-design/sisyphus-react 4.5.10-beta.1 → 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 (266) hide show
  1. package/es/FormsProvider/index.js +14 -21
  2. package/es/ProAction/components/CheckModalContent/index.js +12 -26
  3. package/es/ProAction/index.js +79 -83
  4. package/es/ProAction/propsType.js +0 -1
  5. package/es/ProConfigProvider/index.js +63 -110
  6. package/es/ProConfigProvider/propsType.js +0 -1
  7. package/es/ProDownload/index.js +55 -65
  8. package/es/ProDownload/propsType.js +0 -1
  9. package/es/ProDownload/utils.js +61 -95
  10. package/es/ProDrawerForm/components/ProDrawer/index.js +83 -113
  11. package/es/ProDrawerForm/components/ProModal/index.js +77 -108
  12. package/es/ProDrawerForm/components/index.js +6 -2
  13. package/es/ProDrawerForm/hooks/useConfirmClose.js +20 -39
  14. package/es/ProDrawerForm/index.js +29 -38
  15. package/es/ProDrawerForm/propsType.js +0 -1
  16. package/es/ProDrawerForm/utils/index.js +18 -36
  17. package/es/ProEditLabel/components/RenderProForm.js +45 -49
  18. package/es/ProEditLabel/index.js +126 -163
  19. package/es/ProEditLabel/propsType.js +0 -1
  20. package/es/ProEditLabel/utils/index.js +5 -8
  21. package/es/ProEditTable/components/ActionButton/index.js +111 -119
  22. package/es/ProEditTable/components/RcTable/BaseTable.js +38 -51
  23. package/es/ProEditTable/components/RcTable/DraggableTable.js +97 -129
  24. package/es/ProEditTable/components/RcTable/index.js +6 -4
  25. package/es/ProEditTable/components/RenderField/ListChangedWrapper.js +77 -95
  26. package/es/ProEditTable/components/RenderField/index.js +490 -587
  27. package/es/ProEditTable/components/RenderField/propsType.js +0 -1
  28. package/es/ProEditTable/components/RenderField/tools.js +115 -112
  29. package/es/ProEditTable/components/RenderToolbar/index.js +47 -73
  30. package/es/ProEditTable/components/Summary/index.js +38 -64
  31. package/es/ProEditTable/components/Validator/index.js +46 -46
  32. package/es/ProEditTable/components/index.js +12 -5
  33. package/es/ProEditTable/index.js +456 -378
  34. package/es/ProEditTable/propsType.js +0 -1
  35. package/es/ProEditTable/utils/config.js +60 -122
  36. package/es/ProEditTable/utils/diffOriginal.js +45 -82
  37. package/es/ProEditTable/utils/getDefaultProps.js +19 -24
  38. package/es/ProEditTable/utils/index.js +150 -236
  39. package/es/ProEditTable/utils/tools.js +149 -286
  40. package/es/ProEditTable/utils/transform.js +25 -30
  41. package/es/ProEditTable/utils/useEditTableError.js +30 -43
  42. package/es/ProEditTable/utils/useShouldUpdateForTable.js +42 -72
  43. package/es/ProEditTable/utils/validateAll.js +87 -154
  44. package/es/ProEnum/components/Group.js +38 -30
  45. package/es/ProEnum/components/Tag.js +22 -26
  46. package/es/ProEnum/hooks/useEnum.js +48 -116
  47. package/es/ProEnum/hooks/useEnumRequest.js +128 -179
  48. package/es/ProEnum/hooks/useFrequentEnumRequest.js +40 -48
  49. package/es/ProEnum/index.js +162 -172
  50. package/es/ProEnum/propsType.js +0 -1
  51. package/es/ProEnum/utils/eventCenter.js +10 -12
  52. package/es/ProEnum/utils/frequentEnum.js +35 -92
  53. package/es/ProEnum/utils/getEnum.js +32 -90
  54. package/es/ProEnum/utils/getEnumLabel.js +44 -49
  55. package/es/ProEnum/utils/index.js +93 -207
  56. package/es/ProForm/components/Container.js +13 -28
  57. package/es/ProForm/components/FormFooter/index.js +36 -44
  58. package/es/ProForm/components/FormFooter/propsType.js +0 -1
  59. package/es/ProForm/components/base/Checkbox/index.js +32 -59
  60. package/es/ProForm/components/base/DatePicker/index.js +49 -71
  61. package/es/ProForm/components/base/Input/index.js +63 -97
  62. package/es/ProForm/components/base/Input/propsType.js +0 -1
  63. package/es/ProForm/components/base/InputNumber/index.js +118 -172
  64. package/es/ProForm/components/base/Radio/index.js +39 -52
  65. package/es/ProForm/components/base/RangePicker/index.js +109 -127
  66. package/es/ProForm/components/base/RangePicker/useDateRange.js +20 -17
  67. package/es/ProForm/components/base/Select/index.js +63 -89
  68. package/es/ProForm/components/base/Switch/index.js +27 -35
  69. package/es/ProForm/components/base/SwitchCheckbox/index.js +36 -54
  70. package/es/ProForm/components/base/TextArea/index.js +30 -41
  71. package/es/ProForm/components/base/TimePicker/index.js +27 -37
  72. package/es/ProForm/components/combination/Container/index.js +37 -47
  73. package/es/ProForm/components/combination/Container/propsType.js +0 -1
  74. package/es/ProForm/components/combination/FormList/components/ActionButton.js +165 -237
  75. package/es/ProForm/components/combination/FormList/components/BlockFields.js +98 -103
  76. package/es/ProForm/components/combination/FormList/components/Empty.js +27 -54
  77. package/es/ProForm/components/combination/FormList/components/LineFields.js +57 -54
  78. package/es/ProForm/components/combination/FormList/components/ToolbarButton.js +61 -109
  79. package/es/ProForm/components/combination/FormList/index.js +151 -161
  80. package/es/ProForm/components/combination/FormList/propsType.js +0 -1
  81. package/es/ProForm/components/combination/FormList/utils.js +22 -38
  82. package/es/ProForm/components/combination/Group/component/AddonWrapper/index.js +12 -28
  83. package/es/ProForm/components/combination/Group/component/ComRender.js +50 -111
  84. package/es/ProForm/components/combination/Group/component/FlexibleGroup.js +105 -206
  85. package/es/ProForm/components/combination/Group/hooks/index.js +68 -128
  86. package/es/ProForm/components/combination/Group/index.js +87 -126
  87. package/es/ProForm/components/combination/Group/propsType.js +0 -1
  88. package/es/ProForm/components/combination/Group/utils/index.js +124 -239
  89. package/es/ProForm/components/combination/ProCascader/index.js +156 -199
  90. package/es/ProForm/components/combination/ProCascader/propsType.js +0 -1
  91. package/es/ProForm/components/combination/ProCascader/utils/index.js +12 -21
  92. package/es/ProForm/components/combination/ProModalSelect/hooks/useRequestList.js +63 -75
  93. package/es/ProForm/components/combination/ProModalSelect/index.js +290 -348
  94. package/es/ProForm/components/combination/ProModalSelect/propsType.js +0 -1
  95. package/es/ProForm/components/combination/ProModalSelect/utils/index.js +32 -39
  96. package/es/ProForm/components/combination/ProNumberRange/index.js +100 -156
  97. package/es/ProForm/components/combination/ProNumberRange/propsType.js +0 -1
  98. package/es/ProForm/components/combination/ProRangeLimit/index.js +104 -115
  99. package/es/ProForm/components/combination/ProRangeLimit/propsType.js +0 -1
  100. package/es/ProForm/components/combination/ProTimeLimit/hooks/useControlled.js +16 -16
  101. package/es/ProForm/components/combination/ProTimeLimit/index.js +75 -109
  102. package/es/ProForm/components/index.js +56 -34
  103. package/es/ProForm/components/render/ChangedWrapper.js +85 -94
  104. package/es/ProForm/components/render/ConfirmWrapper.js +27 -39
  105. package/es/ProForm/components/render/CustomComponentViewWrapper.js +65 -82
  106. package/es/ProForm/components/render/Render.js +223 -329
  107. package/es/ProForm/components/render/RenderFields.js +76 -113
  108. package/es/ProForm/components/render/propsType.js +0 -1
  109. package/es/ProForm/hooks/useControlled.js +8 -10
  110. package/es/ProForm/hooks/useDeepCompareMemo.js +11 -11
  111. package/es/ProForm/hooks/useFieldProps.js +8 -4
  112. package/es/ProForm/hooks/useForm.js +50 -110
  113. package/es/ProForm/hooks/useRules.js +17 -33
  114. package/es/ProForm/hooks/useShouldUpdate.js +77 -152
  115. package/es/ProForm/hooks/useWatch.js +58 -129
  116. package/es/ProForm/index.js +157 -194
  117. package/es/ProForm/propsType.js +15 -7
  118. package/es/ProForm/utils/buildFormItemProps.js +51 -58
  119. package/es/ProForm/utils/diffOriginal.js +43 -73
  120. package/es/ProForm/utils/getDefaultProps.js +18 -24
  121. package/es/ProForm/utils/index.js +159 -234
  122. package/es/ProForm/utils/processDependencies.js +21 -60
  123. package/es/ProForm/utils/reactiveValues.js +20 -34
  124. package/es/ProForm/utils/rulesCreator.js +42 -40
  125. package/es/ProForm/utils/transformNames.js +10 -13
  126. package/es/ProForm/utils/transformValue.js +16 -29
  127. package/es/ProForm/utils/valueType.js +96 -178
  128. package/es/ProIcon/config/index.js +340 -274
  129. package/es/ProIcon/index.js +135 -209
  130. package/es/ProIcon/propsTypes.js +0 -1
  131. package/es/ProIcon/utils/index.js +24 -39
  132. package/es/ProLayout/components/Layout/Header/index.js +108 -141
  133. package/es/ProLayout/components/Layout/Menu/FoldMenu/index.js +134 -190
  134. package/es/ProLayout/components/Layout/Menu/OpenMenu/index.js +111 -137
  135. package/es/ProLayout/components/Layout/Menu/OpenMenu/propsType.js +0 -1
  136. package/es/ProLayout/components/Layout/Menu/SideMenu/index.js +23 -31
  137. package/es/ProLayout/components/Layout/Menu/index.js +92 -89
  138. package/es/ProLayout/components/Layout/Notice/index.js +13 -27
  139. package/es/ProLayout/components/Layout/index.js +8 -3
  140. package/es/ProLayout/components/ProCollapse/PropTypes.js +0 -1
  141. package/es/ProLayout/components/ProCollapse/index.js +89 -111
  142. package/es/ProLayout/components/ProFooter/PropTypes.js +0 -1
  143. package/es/ProLayout/components/ProFooter/index.js +27 -25
  144. package/es/ProLayout/components/ProHeader/PropTypes.js +0 -1
  145. package/es/ProLayout/components/ProHeader/components/Copy/index.js +23 -21
  146. package/es/ProLayout/components/ProHeader/components/Describe/index.js +67 -86
  147. package/es/ProLayout/components/ProHeader/components/ProBackBtn/index.js +18 -21
  148. package/es/ProLayout/components/ProHeader/components/ProBackBtn/propsType.js +0 -1
  149. package/es/ProLayout/components/ProHeader/components/index.js +6 -2
  150. package/es/ProLayout/components/ProHeader/index.js +216 -356
  151. package/es/ProLayout/components/ProHeader/utils/index.js +19 -26
  152. package/es/ProLayout/components/TabsManager/components/TabContextMenu.js +92 -85
  153. package/es/ProLayout/components/TabsManager/components/TabItem.js +53 -64
  154. package/es/ProLayout/components/TabsManager/components/TabsContext.js +5 -5
  155. package/es/ProLayout/components/TabsManager/components/TabsHeader.js +42 -52
  156. package/es/ProLayout/components/TabsManager/hooks/useActiveTab.js +8 -9
  157. package/es/ProLayout/components/TabsManager/hooks/useIframeRoute.js +19 -32
  158. package/es/ProLayout/components/TabsManager/hooks/useProLayoutTabs.js +6 -20
  159. package/es/ProLayout/components/TabsManager/hooks/useTabsCache.js +25 -42
  160. package/es/ProLayout/components/TabsManager/hooks/useTabsState.js +290 -408
  161. package/es/ProLayout/components/TabsManager/hooks/useTabsUrlSync.js +132 -95
  162. package/es/ProLayout/components/TabsManager/index.js +406 -390
  163. package/es/ProLayout/components/TabsManager/propTypes.js +7 -15
  164. package/es/ProLayout/components/TabsManager/utils/historyObserver.js +26 -23
  165. package/es/ProLayout/components/TabsManager/utils/index.js +127 -184
  166. package/es/ProLayout/components/index.js +8 -3
  167. package/es/ProLayout/index.js +171 -229
  168. package/es/ProLayout/propTypes.js +12 -52
  169. package/es/ProLayout/utils/index.js +48 -128
  170. package/es/ProSelect/components/AdaptiveTooltip.js +26 -25
  171. package/es/ProSelect/index.js +184 -229
  172. package/es/ProSelect/propsType.js +0 -1
  173. package/es/ProSelect/utils/index.js +100 -146
  174. package/es/ProStep/components/Anchor/index.js +71 -82
  175. package/es/ProStep/components/Item/index.js +49 -56
  176. package/es/ProStep/components/LazyLoad/index.js +23 -29
  177. package/es/ProStep/components/Listener/index.js +20 -33
  178. package/es/ProStep/components/Step/index.js +31 -38
  179. package/es/ProStep/constants.js +4 -1
  180. package/es/ProStep/index.js +166 -153
  181. package/es/ProStep/propsType.js +0 -1
  182. package/es/ProStep/utils/index.js +29 -55
  183. package/es/ProStepTab/index.js +83 -138
  184. package/es/ProStepTab/propsType.js +0 -1
  185. package/es/ProTable/components/EditableCell/EditIcon.js +10 -14
  186. package/es/ProTable/components/EditableCell/index.js +37 -71
  187. package/es/ProTable/components/EditableCell/propsType.js +0 -1
  188. package/es/ProTable/components/FormatColumn/index.js +209 -340
  189. package/es/ProTable/components/FormatColumn/propsType.js +0 -1
  190. package/es/ProTable/components/RcTable/components/BaseTable/index.js +35 -39
  191. package/es/ProTable/components/RcTable/components/DraggableTable/components/DndWrapper/index.js +80 -107
  192. package/es/ProTable/components/RcTable/components/DraggableTable/components/DndWrapper/utils/index.js +54 -48
  193. package/es/ProTable/components/RcTable/components/DraggableTable/components/DndWrapper/utils/propsType.js +0 -1
  194. package/es/ProTable/components/RcTable/components/DraggableTable/index.js +47 -54
  195. package/es/ProTable/components/RcTable/index.js +6 -4
  196. package/es/ProTable/components/RenderColumn/index.js +158 -186
  197. package/es/ProTable/components/RenderEmptyText/index.js +12 -21
  198. package/es/ProTable/components/RenderFooter/index.js +15 -15
  199. package/es/ProTable/components/RenderSummary/index.js +33 -50
  200. package/es/ProTable/components/RenderTableHeader/index.js +44 -46
  201. package/es/ProTable/components/RenderTabs/index.js +47 -51
  202. package/es/ProTable/components/TableResizable/index.js +56 -72
  203. package/es/ProTable/components/TooltipTitle/index.js +13 -21
  204. package/es/ProTable/components/index.js +16 -36
  205. package/es/ProTable/hooks/useAntdTable.js +185 -219
  206. package/es/ProTable/index.js +232 -249
  207. package/es/ProTable/propsType.js +0 -1
  208. package/es/ProTable/utils/columnStorage.js +63 -88
  209. package/es/ProTable/utils/index.js +57 -90
  210. package/es/ProTabs/components/Card/index.js +20 -48
  211. package/es/ProTabs/components/index.js +4 -1
  212. package/es/ProTabs/index.js +39 -56
  213. package/es/ProTabs/propType.js +0 -1
  214. package/es/ProThemeTools/component/ProTools/index.js +106 -158
  215. package/es/ProThemeTools/component/index.js +4 -1
  216. package/es/ProThemeTools/context/ThemeContext.js +67 -146
  217. package/es/ProThemeTools/index.js +103 -156
  218. package/es/ProThemeTools/propsType.js +0 -1
  219. package/es/ProThemeTools/utils/index.js +60 -109
  220. package/es/ProTooltip/index.js +132 -165
  221. package/es/ProTooltip/propsType.js +0 -1
  222. package/es/ProTree/components/AdaptiveTooltip.js +15 -17
  223. package/es/ProTree/components/CloseIcon.js +18 -26
  224. package/es/ProTree/components/List.js +28 -47
  225. package/es/ProTree/components/ProTree.js +152 -211
  226. package/es/ProTree/components/ProTreeSelect/index.js +254 -458
  227. package/es/ProTree/components/ProTreeSelect/propsType.js +0 -1
  228. package/es/ProTree/components/SearchTitle.js +23 -42
  229. package/es/ProTree/components/Tree.js +147 -195
  230. package/es/ProTree/components/index.js +10 -5
  231. package/es/ProTree/index.js +12 -16
  232. package/es/ProTree/propsType.js +0 -1
  233. package/es/ProTree/utils.js +46 -118
  234. package/es/ProTreeModal/components/Cascader.js +56 -64
  235. package/es/ProTreeModal/components/CloseIcon.js +18 -26
  236. package/es/ProTreeModal/components/List.js +114 -180
  237. package/es/ProTreeModal/components/SearchTitle.js +15 -18
  238. package/es/ProTreeModal/components/SortableItem.js +29 -58
  239. package/es/ProTreeModal/components/Tree.js +99 -113
  240. package/es/ProTreeModal/components/Trigger.js +87 -121
  241. package/es/ProTreeModal/components/index.js +14 -6
  242. package/es/ProTreeModal/index.js +397 -435
  243. package/es/ProTreeModal/propsType.js +0 -1
  244. package/es/ProTreeModal/utils.js +52 -95
  245. package/es/ProUpload/components/ButtonRender.js +44 -54
  246. package/es/ProUpload/components/DragRender.js +94 -134
  247. package/es/ProUpload/components/DraggableUploadListItem.js +12 -25
  248. package/es/ProUpload/components/Example.js +27 -31
  249. package/es/ProUpload/components/FileItem.js +69 -163
  250. package/es/ProUpload/components/ImageRender.js +134 -170
  251. package/es/ProUpload/index.js +68 -100
  252. package/es/ProUpload/propsType.js +0 -1
  253. package/es/ProUpload/uitls.js +8 -4
  254. package/es/ProUtils/utils/index.js +17 -13
  255. package/es/ProViewer/index.js +154 -175
  256. package/es/ProViewer/propsType.js +0 -5
  257. package/es/ProWaterMark/index.js +9 -16
  258. package/es/ProWaterMark/propsType.js +0 -1
  259. package/es/hooks/useDraggableRow.js +25 -53
  260. package/es/index.js +57 -77
  261. package/es/locale/en_US.js +153 -142
  262. package/es/locale/index.js +23 -36
  263. package/es/locale/zh_CN.js +145 -142
  264. package/es/tokens.js +84 -83
  265. package/es/utils/index.js +24 -51
  266. package/package.json +4 -3
@@ -1,16 +1,11 @@
1
- import React, { useState, useEffect } from 'react';
2
- import { useInView } from 'react-intersection-observer';
3
- import { jsx as _jsx } from "react/jsx-runtime";
4
- /** 全局强制加载回调注册表 */
5
- const forceLoadCallbacks = new Set();
6
-
7
- /** 强制所有懒加载组件立即显示内容(替代 react-lazyload 的 forceVisible) */
8
- export const forceVisible = () => {
9
- forceLoadCallbacks.forEach(cb => cb());
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { useState, useEffect } from "react";
3
+ import { useInView } from "react-intersection-observer";
4
+ const forceLoadCallbacks = /* @__PURE__ */ new Set();
5
+ const forceVisible = () => {
6
+ forceLoadCallbacks.forEach((cb) => cb());
10
7
  };
11
-
12
- /** 重新检查懒加载状态(替代 react-lazyload 的 forceCheck) */
13
- export const forceCheck = () => {
8
+ const forceCheck = () => {
14
9
  forceVisible();
15
10
  };
16
11
  const LazyLoad = ({
@@ -21,10 +16,7 @@ const LazyLoad = ({
21
16
  children
22
17
  }) => {
23
18
  const [forceLoaded, setForceLoaded] = useState(false);
24
- const {
25
- ref,
26
- inView
27
- } = useInView({
19
+ const { ref, inView } = useInView({
28
20
  rootMargin: `${offset}px`,
29
21
  triggerOnce: once,
30
22
  threshold: 0
@@ -38,18 +30,20 @@ const LazyLoad = ({
38
30
  }, []);
39
31
  const visible = inView || forceLoaded;
40
32
  if (!visible) {
41
- return /*#__PURE__*/_jsx("div", {
42
- ref: ref,
43
- style: {
44
- height
45
- },
46
- className: classNamePrefix ? `${classNamePrefix}-lazy-placeholder` : undefined
47
- });
33
+ return /* @__PURE__ */ jsx(
34
+ "div",
35
+ {
36
+ ref,
37
+ style: { height },
38
+ className: classNamePrefix ? `${classNamePrefix}-lazy-placeholder` : void 0
39
+ }
40
+ );
48
41
  }
49
- return /*#__PURE__*/_jsx("div", {
50
- ref: ref,
51
- className: classNamePrefix ? `${classNamePrefix}-lazy-wrapper` : undefined,
52
- children: children
53
- });
42
+ return /* @__PURE__ */ jsx("div", { ref, className: classNamePrefix ? `${classNamePrefix}-lazy-wrapper` : void 0, children });
43
+ };
44
+ var LazyLoad_default = LazyLoad;
45
+ export {
46
+ LazyLoad_default as default,
47
+ forceCheck,
48
+ forceVisible
54
49
  };
55
- export default LazyLoad;
@@ -1,49 +1,36 @@
1
- import _throttle from "lodash/throttle";
2
- import React from 'react';
1
+ import throttle from "lodash/throttle";
2
+ import React from "react";
3
3
  import { forceVisible } from "../LazyLoad";
4
4
  import { useStep } from "../../index";
5
5
  import { getLoadedMap } from "../../utils";
6
- /**
7
- * 检查所有模块是否已加载完成
8
- * @param data 模块加载数据
9
- * @returns 是否所有模块都已加载
10
- */
11
- const areAllModulesLoaded = data => {
12
- return data.every(item => item?.loaded === true);
6
+ const areAllModulesLoaded = (data) => {
7
+ return data.every((item) => (item == null ? void 0 : item.loaded) === true);
13
8
  };
14
- const Listener = ({
15
- children,
16
- delayTime,
17
- excludes,
18
- ...props
19
- }) => {
20
- const {
21
- notify,
22
- registerMap
23
- } = useStep();
24
- return /*#__PURE__*/React.cloneElement(children, {
9
+ const Listener = ({ children, delayTime, excludes, ...props }) => {
10
+ const { notify, registerMap } = useStep();
11
+ return React.cloneElement(children, {
25
12
  ...props,
26
- onClick: _throttle(async () => {
27
- localStorage.setItem('cache-pro-step', '');
13
+ onClick: throttle(async () => {
14
+ localStorage.setItem("cache-pro-step", "");
28
15
  const loadedMap = getLoadedMap(registerMap);
29
16
  const loaded = areAllModulesLoaded(loadedMap);
30
- // 存在lazyload模块时,全局按钮执行全加载
31
17
  if (!loaded) {
32
18
  forceVisible();
33
- // 等待0.2秒,让dom渲染做form校验
34
- await new Promise(resolve => setTimeout(resolve, 200));
19
+ await new Promise((resolve) => setTimeout(resolve, 200));
35
20
  }
36
- const values = await notify?.({
37
- excludes
38
- });
21
+ const values = await (notify == null ? void 0 : notify({ excludes }));
39
22
  setTimeout(() => {
40
- const localData = localStorage.getItem('cache-pro-step');
41
- if (localData !== 'false') {
42
- children?.props?.onClick?.(values);
23
+ var _a, _b;
24
+ const localData = localStorage.getItem("cache-pro-step");
25
+ if (localData !== "false") {
26
+ (_b = (_a = children == null ? void 0 : children.props) == null ? void 0 : _a.onClick) == null ? void 0 : _b.call(_a, values);
43
27
  }
44
28
  }, delayTime ?? 0);
45
29
  return null;
46
- }, 1000)
30
+ }, 1e3)
47
31
  });
48
32
  };
49
- export default Listener;
33
+ var Listener_default = Listener;
34
+ export {
35
+ Listener_default as default
36
+ };
@@ -1,13 +1,13 @@
1
- import _cloneDeep from "lodash/cloneDeep";
2
- import React, { useMemo, useState } from 'react';
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import React, { useMemo, useState } from "react";
3
+ import cloneDeep from "lodash/cloneDeep";
3
4
  import ProIcon from "../../../ProIcon/index";
4
5
  import catalogSvg from "../../../assets/catalog.svg";
5
6
  import Anchor from "../Anchor";
6
7
  import locale from "../../../locale";
7
8
  import { DEFAULT_FIXED_TOP } from "../../constants";
8
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
9
- const toCssLength = value => typeof value === 'number' ? `${value}px` : value;
10
- export const Step = ({
9
+ const toCssLength = (value) => typeof value === "number" ? `${value}px` : value;
10
+ const Step = ({
11
11
  fixedTop = DEFAULT_FIXED_TOP,
12
12
  dataSource = [],
13
13
  activeKey,
@@ -17,18 +17,19 @@ export const Step = ({
17
17
  scrollToError,
18
18
  onAnchorClick
19
19
  }) => {
20
+ var _a, _b;
20
21
  const [onOff, setOnOff] = useState(false);
21
22
  const fixedTopCss = toCssLength(fixedTop);
22
23
  const options = useMemo(() => {
23
- const nextDataSource = _cloneDeep(dataSource);
24
+ const nextDataSource = cloneDeep(dataSource);
24
25
  let activeIndex;
25
26
  if (activeKey) {
26
- activeIndex = nextDataSource.findIndex(item => item.code === activeKey);
27
+ activeIndex = nextDataSource.findIndex((item) => item.code === activeKey);
27
28
  } else {
28
29
  activeIndex = nextDataSource.length - 1;
29
30
  }
30
31
  nextDataSource.forEach((item, index) => {
31
- const errorNum = errorCollection?.[item.code];
32
+ const errorNum = errorCollection == null ? void 0 : errorCollection[item.code];
32
33
  item.isStart = index === 0;
33
34
  item.isEnd = index === dataSource.length - 1;
34
35
  item.isDisabled = index > activeIndex;
@@ -47,35 +48,27 @@ export const Step = ({
47
48
  const handleMouseLeave = () => {
48
49
  setOnOff(false);
49
50
  };
50
- return /*#__PURE__*/_jsxs("div", {
51
- className: `pro-step ${onOff ? 'pro-step-open' : 'pro-step-closed'}`,
52
- style: {
53
- top: fixedTopCss,
54
- maxHeight: `calc(100vh - ${fixedTopCss})`,
55
- ...style
56
- },
57
- onMouseEnter: handleMouseEnter,
58
- onMouseLeave: handleMouseLeave,
59
- children: [/*#__PURE__*/_jsxs("div", {
60
- className: "pro-step-menu",
61
- children: [/*#__PURE__*/_jsx(ProIcon, {
62
- src: catalogSvg,
63
- className: "pro-step-menu-icon",
64
- size: 32,
65
- actionMap: {}
66
- }), onOff && /*#__PURE__*/_jsx("div", {
67
- className: "pro-step-menu-name",
68
- children: locale?.ProStep?.catalogue
69
- })]
70
- }), options.map(item => {
71
- return /*#__PURE__*/_jsx(React.Fragment, {
72
- children: /*#__PURE__*/_jsx(Anchor, {
73
- ...item,
74
- scrollToError: scrollToError,
75
- onOff: onOff
51
+ return /* @__PURE__ */ jsxs(
52
+ "div",
53
+ {
54
+ className: `pro-step ${onOff ? "pro-step-open" : "pro-step-closed"}`,
55
+ style: { top: fixedTopCss, maxHeight: `calc(100vh - ${fixedTopCss})`, ...style },
56
+ onMouseEnter: handleMouseEnter,
57
+ onMouseLeave: handleMouseLeave,
58
+ children: [
59
+ /* @__PURE__ */ jsxs("div", { className: "pro-step-menu", children: [
60
+ /* @__PURE__ */ jsx(ProIcon, { src: catalogSvg, className: "pro-step-menu-icon", size: 32, actionMap: {} }),
61
+ onOff && /* @__PURE__ */ jsx("div", { className: "pro-step-menu-name", children: (_b = (_a = locale) == null ? void 0 : _a.ProStep) == null ? void 0 : _b.catalogue })
62
+ ] }),
63
+ options.map((item) => {
64
+ return /* @__PURE__ */ jsx(React.Fragment, { children: /* @__PURE__ */ jsx(Anchor, { ...item, scrollToError, onOff }) }, item.code);
76
65
  })
77
- }, item.code);
78
- })]
79
- });
66
+ ]
67
+ }
68
+ );
69
+ };
70
+ var Step_default = Step;
71
+ export {
72
+ Step,
73
+ Step_default as default
80
74
  };
81
- export default Step;
@@ -1 +1,4 @@
1
- export const DEFAULT_FIXED_TOP = 'var(--pro-layout-content-sticky-top, 64px)';
1
+ const DEFAULT_FIXED_TOP = "var(--pro-layout-content-sticky-top, 64px)";
2
+ export {
3
+ DEFAULT_FIXED_TOP
4
+ };
@@ -1,70 +1,62 @@
1
- import _debounce from "lodash/debounce";
2
- import { createContext, useCallback, useContext, useEffect, useLayoutEffect, useMemo, useRef, useState } from 'react';
3
- import { useSetState, useLocalStorageState } from 'ahooks';
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import {
3
+ createContext,
4
+ useCallback,
5
+ useContext,
6
+ useEffect,
7
+ useLayoutEffect,
8
+ useMemo,
9
+ useRef,
10
+ useState
11
+ } from "react";
12
+ import debounce from "lodash/debounce";
13
+ import { useSetState, useLocalStorageState } from "ahooks";
4
14
  import { handleScroll, handleScrollError } from "./utils";
5
15
  import Step from "./components/Step";
6
16
  import Item from "./components/Item";
7
17
  import Listener from "./components/Listener";
8
18
  import { DEFAULT_FIXED_TOP } from "./constants";
9
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
- const DEFAULT_ANCHOR_GAP = '16px';
19
+ const DEFAULT_ANCHOR_GAP = "16px";
11
20
  const ANCHOR_SCROLL_DELAY = 50;
12
21
  const STICKY_HEADER_SELECTOR = '[data-pro-step-sticky-header="true"]';
13
- const toCssLength = value => typeof value === 'number' ? `${value}px` : value;
14
-
15
- // 创建上下文并提供类型
16
- export const ProStepContext = /*#__PURE__*/createContext(null);
17
- export const useStep = () => {
22
+ const toCssLength = (value) => typeof value === "number" ? `${value}px` : value;
23
+ const ProStepContext = createContext(null);
24
+ const useStep = () => {
18
25
  return useContext(ProStepContext) || {};
19
26
  };
20
- const ProStep = ({
21
- children,
22
- ...resetProps
23
- }) => {
27
+ const ProStep = ({ children, ...resetProps }) => {
24
28
  const [, reRender] = useState({});
25
- const [{
26
- errorCollection
27
- }, setState] = useSetState({
29
+ const [{ errorCollection }, setState] = useSetState({
28
30
  errorCollection: {}
29
31
  });
30
- // 注册子节点id与title映射的集合
31
32
  const registerMap = useRef({});
32
33
  const wrapperRef = useRef(null);
33
34
  const stickyHeaderRef = useRef(null);
34
35
  const autoAnchorEnabledRef = useRef(false);
35
36
  const scrollTaskRef = useRef(null);
36
- const [, setLocalData] = useLocalStorageState('cache-pro-step');
37
+ const [, setLocalData] = useLocalStorageState("cache-pro-step");
37
38
  const ids = Object.keys(registerMap.current);
38
- const {
39
- collapse = false,
40
- lazyLoad = false,
41
- targetOffset,
42
- fixedTop
43
- } = resetProps;
44
- const hasExplicitTargetOffset = targetOffset !== undefined && targetOffset !== null;
45
- const anchorBase = fixedTop === undefined || fixedTop === null ? DEFAULT_FIXED_TOP : toCssLength(fixedTop);
39
+ const { collapse = false, lazyLoad = false, targetOffset, fixedTop } = resetProps;
40
+ const hasExplicitTargetOffset = targetOffset !== void 0 && targetOffset !== null;
41
+ const anchorBase = fixedTop === void 0 || fixedTop === null ? DEFAULT_FIXED_TOP : toCssLength(fixedTop);
46
42
  const autoAnchorOffset = `calc(${anchorBase} + var(--pro-step-sticky-header-height, 0px) + ${DEFAULT_ANCHOR_GAP})`;
47
- const wrapperStyle = hasExplicitTargetOffset ? {
48
- '--pro-step-anchor-offset': toCssLength(targetOffset)
49
- } : undefined;
43
+ const wrapperStyle = hasExplicitTargetOffset ? { "--pro-step-anchor-offset": toCssLength(targetOffset) } : void 0;
50
44
  const dataSource = useMemo(() => {
51
- if (resetProps?.dataSource) {
52
- return resetProps?.dataSource;
45
+ var _a, _b;
46
+ if (resetProps == null ? void 0 : resetProps.dataSource) {
47
+ return resetProps == null ? void 0 : resetProps.dataSource;
53
48
  }
54
- return Object.entries(registerMap.current)?.map?.(([key, {
55
- title,
56
- order
57
- }]) => {
58
- return {
59
- code: key,
60
- name: title,
61
- order
62
- };
63
- }).filter(item => ids?.includes?.(item.code)).sort((pre, next) => pre.order - next.order);
64
- }, [resetProps?.dataSource, registerMap.current, ids]);
65
- const debounceReRender = useCallback(_debounce(() => reRender({}), 500), []);
66
-
67
- // 用来注册form匹配到对应的模块id
49
+ return (_b = (_a = Object.entries(registerMap.current)) == null ? void 0 : _a.map) == null ? void 0 : _b.call(_a, ([key, { title, order }]) => {
50
+ return { code: key, name: title, order };
51
+ }).filter((item) => {
52
+ var _a2;
53
+ return (_a2 = ids == null ? void 0 : ids.includes) == null ? void 0 : _a2.call(ids, item.code);
54
+ }).sort((pre, next) => pre.order - next.order);
55
+ }, [resetProps == null ? void 0 : resetProps.dataSource, registerMap.current, ids]);
56
+ const debounceReRender = useCallback(
57
+ debounce(() => reRender({}), 500),
58
+ []
59
+ );
68
60
  const register = ({
69
61
  id,
70
62
  form,
@@ -72,7 +64,7 @@ const ProStep = ({
72
64
  validator,
73
65
  order,
74
66
  disabled,
75
- lazyLoad,
67
+ lazyLoad: lazyLoad2,
76
68
  element,
77
69
  ...rest
78
70
  }) => {
@@ -89,16 +81,17 @@ const ProStep = ({
89
81
  return;
90
82
  }
91
83
  const subEvent = async () => {
84
+ var _a, _b;
92
85
  try {
93
86
  let value = null;
94
87
  if (validator) {
95
- value = await validator?.();
88
+ value = await (validator == null ? void 0 : validator());
96
89
  } else {
97
- value = await form?.validateFields?.();
90
+ value = await ((_a = form == null ? void 0 : form.validateFields) == null ? void 0 : _a.call(form));
98
91
  }
99
92
  return value;
100
93
  } catch (error) {
101
- if (error?.errorFields?.length) {
94
+ if ((_b = error == null ? void 0 : error.errorFields) == null ? void 0 : _b.length) {
102
95
  console.error(error);
103
96
  setLocalData(false);
104
97
  }
@@ -108,51 +101,57 @@ const ProStep = ({
108
101
  record.subEvent = subEvent;
109
102
  registerMap.current[id] = record;
110
103
  };
111
-
112
- // 取消注册
113
- const unNotify = keys => {
114
- if (typeof keys === 'string') {
104
+ const unNotify = (keys) => {
105
+ if (typeof keys === "string") {
115
106
  delete registerMap.current[keys];
116
107
  } else if (Array.isArray(keys)) {
117
- keys.forEach(key => {
108
+ keys.forEach((key) => {
118
109
  delete registerMap.current[key];
119
110
  });
120
111
  }
121
112
  };
122
- const measureStickyHeader = useCallback((detect = false) => {
123
- if (hasExplicitTargetOffset) {
124
- return false;
125
- }
126
- if (!detect && !autoAnchorEnabledRef.current) {
127
- return false;
128
- }
129
- const wrapper = wrapperRef.current;
130
- if (!wrapper) {
131
- return false;
132
- }
133
- const currentHeader = stickyHeaderRef.current;
134
- const header = currentHeader && currentHeader.parentElement === wrapper ? currentHeader : Array.from(wrapper.children).find(element => element.matches(STICKY_HEADER_SELECTOR));
135
- if (!header) {
136
- autoAnchorEnabledRef.current = false;
137
- stickyHeaderRef.current = null;
138
- wrapper.style.removeProperty('--pro-step-sticky-header-height');
139
- wrapper.style.removeProperty('--pro-step-anchor-offset');
140
- return false;
141
- }
142
- autoAnchorEnabledRef.current = true;
143
- stickyHeaderRef.current = header;
144
- wrapper.style.setProperty('--pro-step-sticky-header-height', `${header.getBoundingClientRect().height}px`);
145
- wrapper.style.setProperty('--pro-step-anchor-offset', autoAnchorOffset);
146
- return true;
147
- }, [autoAnchorOffset, hasExplicitTargetOffset]);
113
+ const measureStickyHeader = useCallback(
114
+ (detect = false) => {
115
+ if (hasExplicitTargetOffset) {
116
+ return false;
117
+ }
118
+ if (!detect && !autoAnchorEnabledRef.current) {
119
+ return false;
120
+ }
121
+ const wrapper = wrapperRef.current;
122
+ if (!wrapper) {
123
+ return false;
124
+ }
125
+ const currentHeader = stickyHeaderRef.current;
126
+ const header = currentHeader && currentHeader.parentElement === wrapper ? currentHeader : Array.from(wrapper.children).find(
127
+ (element) => element.matches(STICKY_HEADER_SELECTOR)
128
+ );
129
+ if (!header) {
130
+ autoAnchorEnabledRef.current = false;
131
+ stickyHeaderRef.current = null;
132
+ wrapper.style.removeProperty("--pro-step-sticky-header-height");
133
+ wrapper.style.removeProperty("--pro-step-anchor-offset");
134
+ return false;
135
+ }
136
+ autoAnchorEnabledRef.current = true;
137
+ stickyHeaderRef.current = header;
138
+ wrapper.style.setProperty(
139
+ "--pro-step-sticky-header-height",
140
+ `${header.getBoundingClientRect().height}px`
141
+ );
142
+ wrapper.style.setProperty("--pro-step-anchor-offset", autoAnchorOffset);
143
+ return true;
144
+ },
145
+ [autoAnchorOffset, hasExplicitTargetOffset]
146
+ );
148
147
  useLayoutEffect(() => {
149
148
  autoAnchorEnabledRef.current = false;
150
149
  if (hasExplicitTargetOffset || !measureStickyHeader(true)) {
151
- return undefined;
150
+ return void 0;
152
151
  }
153
152
  const header = stickyHeaderRef.current;
154
- if (!header || typeof ResizeObserver === 'undefined') {
155
- return undefined;
153
+ if (!header || typeof ResizeObserver === "undefined") {
154
+ return void 0;
156
155
  }
157
156
  const observer = new ResizeObserver(() => {
158
157
  measureStickyHeader();
@@ -171,98 +170,112 @@ const ProStep = ({
171
170
  }
172
171
  };
173
172
  }, []);
174
- const scrollToStep = useCallback((id, options) => {
175
- if (autoAnchorEnabledRef.current) {
176
- measureStickyHeader();
177
- }
178
- const root = wrapperRef.current;
179
- if (!root) {
180
- return;
181
- }
182
- const registeredElement = registerMap.current[id]?.element;
183
- const target = registeredElement && root.contains(registeredElement) ? registeredElement : Array.from(root.querySelectorAll('.pro-step-item')).find(item => item.id === id);
184
- if (scrollTaskRef.current !== null) {
185
- window.clearTimeout(scrollTaskRef.current);
186
- }
187
- scrollTaskRef.current = window.setTimeout(() => {
188
- scrollTaskRef.current = null;
189
- handleScroll(id, {
190
- ...options,
191
- root,
192
- target
193
- });
194
- }, ANCHOR_SCROLL_DELAY);
195
- }, [measureStickyHeader]);
196
- const notify = async params => {
197
- const {
198
- excludes
199
- } = params || {};
173
+ const scrollToStep = useCallback(
174
+ (id, options) => {
175
+ var _a;
176
+ if (autoAnchorEnabledRef.current) {
177
+ measureStickyHeader();
178
+ }
179
+ const root = wrapperRef.current;
180
+ if (!root) {
181
+ return;
182
+ }
183
+ const registeredElement = (_a = registerMap.current[id]) == null ? void 0 : _a.element;
184
+ const target = registeredElement && root.contains(registeredElement) ? registeredElement : Array.from(root.querySelectorAll(".pro-step-item")).find(
185
+ (item) => item.id === id
186
+ );
187
+ if (scrollTaskRef.current !== null) {
188
+ window.clearTimeout(scrollTaskRef.current);
189
+ }
190
+ scrollTaskRef.current = window.setTimeout(() => {
191
+ scrollTaskRef.current = null;
192
+ handleScroll(id, {
193
+ ...options,
194
+ root,
195
+ target
196
+ });
197
+ }, ANCHOR_SCROLL_DELAY);
198
+ },
199
+ [measureStickyHeader]
200
+ );
201
+ const notify = async (params) => {
202
+ const { excludes } = params || {};
200
203
  let triggerIds = Object.keys(registerMap.current);
201
- // 排除指定模块不触发校验
202
- if (excludes?.length) {
203
- triggerIds = triggerIds.filter(id => !excludes.includes(id));
204
+ if (excludes == null ? void 0 : excludes.length) {
205
+ triggerIds = triggerIds.filter((id) => !excludes.includes(id));
204
206
  }
205
- const events = triggerIds.map(id => registerMap.current[id]?.subEvent?.());
207
+ const events = triggerIds.map((id) => {
208
+ var _a, _b;
209
+ return (_b = (_a = registerMap.current[id]) == null ? void 0 : _a.subEvent) == null ? void 0 : _b.call(_a);
210
+ });
206
211
  const res = await Promise.all(events);
207
212
  const nextErrorCollection = {};
208
213
  triggerIds.forEach((id, index) => {
209
- const {
210
- errorFields
211
- } = res?.[index] || {};
212
- nextErrorCollection[id] = errorFields?.length || 0;
214
+ const { errorFields } = (res == null ? void 0 : res[index]) || {};
215
+ nextErrorCollection[id] = (errorFields == null ? void 0 : errorFields.length) || 0;
213
216
  });
214
217
  setState({
215
218
  errorCollection: nextErrorCollection
216
219
  });
217
- handleScrollError(undefined, wrapperRef.current || document);
220
+ handleScrollError(void 0, wrapperRef.current || document);
218
221
  return res;
219
222
  };
220
- const triggerTo = async keys => {
223
+ const triggerTo = async (keys) => {
221
224
  const events = [];
222
- keys?.forEach(key => {
223
- events.push(registerMap?.current?.[key]?.subEvent?.());
225
+ keys == null ? void 0 : keys.forEach((key) => {
226
+ var _a, _b, _c;
227
+ events.push((_c = (_b = (_a = registerMap == null ? void 0 : registerMap.current) == null ? void 0 : _a[key]) == null ? void 0 : _b.subEvent) == null ? void 0 : _c.call(_b));
224
228
  });
225
229
  const result = await Promise.all(events);
226
230
  const nextErrorCollection = {};
227
- result?.forEach((item, index) => {
228
- if (item?.errorFields?.length) {
229
- nextErrorCollection[keys[index]] = item?.errorFields?.length;
231
+ result == null ? void 0 : result.forEach((item, index) => {
232
+ var _a, _b;
233
+ if ((_a = item == null ? void 0 : item.errorFields) == null ? void 0 : _a.length) {
234
+ nextErrorCollection[keys[index]] = (_b = item == null ? void 0 : item.errorFields) == null ? void 0 : _b.length;
230
235
  }
231
236
  });
232
237
  setState({
233
238
  errorCollection: nextErrorCollection
234
239
  });
235
- handleScrollError(undefined, wrapperRef.current || document);
240
+ handleScrollError(void 0, wrapperRef.current || document);
236
241
  return result;
237
242
  };
238
- return /*#__PURE__*/_jsx(ProStepContext.Provider, {
239
- value: {
240
- registerMap,
241
- collapse,
242
- register,
243
- notify,
244
- triggerTo,
245
- handleScroll: scrollToStep,
246
- lazyLoad,
247
- targetOffset,
248
- unNotify,
249
- source: 'ProStep'
250
- },
251
- children: /*#__PURE__*/_jsxs("div", {
252
- ref: wrapperRef,
253
- className: "pro-step-wrapper",
254
- id: "pro-step",
255
- style: wrapperStyle,
256
- children: [children, /*#__PURE__*/_jsx(Step, {
257
- ...resetProps,
258
- dataSource: dataSource,
259
- errorCollection: errorCollection,
260
- onAnchorClick: scrollToStep
261
- })]
262
- })
263
- });
243
+ return /* @__PURE__ */ jsx(
244
+ ProStepContext.Provider,
245
+ {
246
+ value: {
247
+ registerMap,
248
+ collapse,
249
+ register,
250
+ notify,
251
+ triggerTo,
252
+ handleScroll: scrollToStep,
253
+ lazyLoad,
254
+ targetOffset,
255
+ unNotify,
256
+ source: "ProStep"
257
+ },
258
+ children: /* @__PURE__ */ jsxs("div", { ref: wrapperRef, className: "pro-step-wrapper", id: "pro-step", style: wrapperStyle, children: [
259
+ children,
260
+ /* @__PURE__ */ jsx(
261
+ Step,
262
+ {
263
+ ...resetProps,
264
+ dataSource,
265
+ errorCollection,
266
+ onAnchorClick: scrollToStep
267
+ }
268
+ )
269
+ ] })
270
+ }
271
+ );
264
272
  };
265
273
  ProStep.useStep = useStep;
266
274
  ProStep.Item = Item;
267
275
  ProStep.Listener = Listener;
268
- export default ProStep;
276
+ var ProStep_default = ProStep;
277
+ export {
278
+ ProStepContext,
279
+ ProStep_default as default,
280
+ useStep
281
+ };
@@ -1 +0,0 @@
1
- export {};