@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,156 +1,91 @@
1
- /* eslint-disable no-redeclare */
2
- import { useState, useEffect, useRef } from 'react';
1
+ import { useState, useEffect, useRef } from "react";
3
2
  import { useProConfig } from "../../ProConfigProvider";
4
3
  import { getEnumData, baseCacheKey, baseStorage } from "../utils";
5
-
6
- /**
7
- * input code output [DataOption[],getEnumLabel]
8
- * @param code
9
- * const [options,fn] = useEnum("code")
10
- */
11
-
12
- /**
13
- * input codes output { code1:DataOption[],code2:DataOption[] }
14
- * @param codes
15
- * const dicsMap = useEnum(["code1","code2"])
16
- */
17
-
18
- /**
19
- * input code、value output label
20
- * @param code
21
- * @param value
22
- * @param compose 展示 value-label
23
- */
24
-
25
- /**
26
- * input code、values array output [labels array, options array]
27
- * @param code
28
- * @param values 值数组
29
- * @param compose 展示 value-label
30
- * @returns [标签数组, 选项数组]
31
- */
32
-
33
- /**
34
- * 根据 code 从枚举缓存取出对应的 options 、以及回显
35
- * @param codes
36
- * @param value
37
- * @param compose
38
- * @returns
39
- */
40
-
41
4
  function useEnum(codes, value, compose) {
5
+ var _a;
42
6
  const {
43
7
  storage = baseStorage,
44
8
  cacheKey = baseCacheKey,
45
9
  fieldNames = {},
46
10
  clear = true,
47
11
  dics = {}
48
- } = useProConfig('ProEnum') || {};
49
-
50
- // 用 ref 记录哪些 cacheKey 已触发过加载,防止 enumData 变化导致重复 I/O
51
- const hasLoadedRef = useRef(new Set());
52
-
53
- // 使用 state 来存储异步加载的数据
12
+ } = useProConfig("ProEnum") || {};
13
+ const hasLoadedRef = useRef(/* @__PURE__ */ new Set());
54
14
  const [enumData, setEnumData] = useState(() => {
55
- // 优先使用全局状态中的 dics 数据(如果存在)
56
- if (storage === 'indexedDB' && dics && Object.keys(dics).length > 0) {
57
- return {
58
- data: dics
59
- };
15
+ if (storage === "indexedDB" && dics && Object.keys(dics).length > 0) {
16
+ return { data: dics };
60
17
  }
61
- // 初始化:对于同步存储,直接返回数据;对于 IndexedDB,返回空数据
62
- if (storage === 'indexedDB') {
63
- return {
64
- data: {}
65
- };
18
+ if (storage === "indexedDB") {
19
+ return { data: {} };
66
20
  }
67
- return getEnumData(storage, cacheKey) || {
68
- data: {}
69
- };
21
+ return getEnumData(storage, cacheKey) || { data: {} };
70
22
  });
71
-
72
- // 监听全局状态中的 dics 变化,优先使用 dics 数据
73
23
  useEffect(() => {
74
- if (storage === 'indexedDB' && dics && Object.keys(dics).length > 0) {
75
- setEnumData(prevData => {
76
- if (JSON.stringify(dics) !== JSON.stringify(prevData?.data)) {
77
- return {
78
- data: dics
79
- };
24
+ if (storage === "indexedDB" && dics && Object.keys(dics).length > 0) {
25
+ setEnumData((prevData) => {
26
+ if (JSON.stringify(dics) !== JSON.stringify(prevData == null ? void 0 : prevData.data)) {
27
+ return { data: dics };
80
28
  }
81
29
  return prevData;
82
30
  });
83
31
  }
84
32
  }, [storage, cacheKey, dics]);
85
-
86
- // 异步加载 IndexedDB 数据(每个 cacheKey 只触发一次,由 hasLoadedRef 防重)
87
33
  useEffect(() => {
88
- if (storage === 'indexedDB' && !hasLoadedRef.current.has(cacheKey)) {
34
+ if (storage === "indexedDB" && !hasLoadedRef.current.has(cacheKey)) {
89
35
  hasLoadedRef.current.add(cacheKey);
90
- Promise.resolve(getEnumData(storage, cacheKey)).then(data => {
91
- setEnumData(prevData => {
36
+ Promise.resolve(getEnumData(storage, cacheKey)).then((data) => {
37
+ setEnumData((prevData) => {
92
38
  if (data && JSON.stringify(data) !== JSON.stringify(prevData)) {
93
- return data || {
94
- data: {}
95
- };
39
+ return data || { data: {} };
96
40
  }
97
41
  return prevData;
98
42
  });
99
43
  }).catch(() => {
100
- // 错误已在 getEnumData 中处理
101
44
  });
102
45
  }
103
46
  }, [storage, cacheKey]);
104
- const catchData = storage === 'indexedDB' ? enumData : getEnumData(storage, cacheKey);
47
+ const catchData = storage === "indexedDB" ? enumData : getEnumData(storage, cacheKey);
105
48
  if (!codes) {
106
49
  return catchData;
107
50
  }
108
- let fieldLabel = '';
109
- let fieldValue = '';
51
+ let fieldLabel = "";
52
+ let fieldValue = "";
110
53
  if (fieldNames && Object.keys(fieldNames).length) {
111
- fieldLabel = fieldNames?.label;
112
- fieldValue = fieldNames?.value;
54
+ fieldLabel = fieldNames == null ? void 0 : fieldNames.label;
55
+ fieldValue = fieldNames == null ? void 0 : fieldNames.value;
113
56
  }
114
57
  if (clear) {
115
- fieldLabel = 'label';
116
- fieldValue = 'value';
58
+ fieldLabel = "label";
59
+ fieldValue = "value";
117
60
  }
118
- if (typeof codes === 'string') {
119
- const options = catchData?.data?.[codes] || [];
120
-
121
- // 获取 children 字段名
122
- let fieldChildren = 'children';
61
+ if (typeof codes === "string") {
62
+ const options = ((_a = catchData == null ? void 0 : catchData.data) == null ? void 0 : _a[codes]) || [];
63
+ let fieldChildren = "children";
123
64
  if (fieldNames && Object.keys(fieldNames).length && fieldNames.children) {
124
65
  fieldChildren = fieldNames.children;
125
66
  }
126
67
  if (clear) {
127
- fieldChildren = 'children';
68
+ fieldChildren = "children";
128
69
  }
129
-
130
- // 递归查找函数:在嵌套结构中查找选项
131
70
  const findOptionInNested = (opts, targetValue, fValue, fChildren) => {
132
- // 当前层级查找
133
- const foundInCurrentLevel = opts.find(option => String(option[fValue]) === String(targetValue));
71
+ const foundInCurrentLevel = opts.find(
72
+ (option) => String(option[fValue]) === String(targetValue)
73
+ );
134
74
  if (foundInCurrentLevel) {
135
75
  return foundInCurrentLevel;
136
76
  }
137
- // 递归查找子级
138
77
  const foundInChildren = opts.reduce((found, option) => {
139
- if (found) return found;
78
+ if (found)
79
+ return found;
140
80
  if (option[fChildren] && Array.isArray(option[fChildren])) {
141
81
  return findOptionInNested(option[fChildren], targetValue, fValue, fChildren);
142
82
  }
143
- return undefined;
144
- }, undefined);
83
+ return void 0;
84
+ }, void 0);
145
85
  return foundInChildren;
146
86
  };
147
-
148
- // 清理选项:移除 children,保留数据源中的其他所有字段(包括 parentCode 等业务字段)
149
- const cleanOption = option => {
150
- const {
151
- [fieldChildren]: _,
152
- ...restOption
153
- } = option;
87
+ const cleanOption = (option) => {
88
+ const { [fieldChildren]: _, ...restOption } = option;
154
89
  return restOption;
155
90
  };
156
91
  const getEnumLabel = (v, composezTow) => {
@@ -158,32 +93,25 @@ function useEnum(codes, value, compose) {
158
93
  if (option) {
159
94
  return composezTow ? `${v}-${option[fieldLabel]}` : option[fieldLabel];
160
95
  }
161
- return undefined;
96
+ return void 0;
162
97
  };
163
-
164
- // 处理数组值的情况
165
98
  if (value && Array.isArray(value)) {
166
99
  const labels = [];
167
100
  const foundOptions = [];
168
- value.forEach(v => {
101
+ value.forEach((v) => {
169
102
  const option = findOptionInNested(options, v, fieldValue, fieldChildren);
170
103
  if (option) {
171
104
  const cleanedOption = cleanOption(option);
172
105
  foundOptions.push(cleanedOption);
173
106
  labels.push(compose ? `${v}-${option[fieldLabel]}` : option[fieldLabel]);
174
107
  } else {
175
- const emptyOption = {
176
- label: '',
177
- value: ''
178
- };
108
+ const emptyOption = { label: "", value: "" };
179
109
  foundOptions.push(emptyOption);
180
- labels.push('');
110
+ labels.push("");
181
111
  }
182
112
  });
183
113
  return [labels, foundOptions];
184
114
  }
185
-
186
- // 处理单个值的情况(保持向后兼容)
187
115
  if (value && !Array.isArray(value) && Array.isArray(options)) {
188
116
  const option = findOptionInNested(options, value, fieldValue, fieldChildren);
189
117
  if (option) {
@@ -196,12 +124,16 @@ function useEnum(codes, value, compose) {
196
124
  }
197
125
  if (Array.isArray(codes)) {
198
126
  const options = {};
199
- codes.forEach(code => {
200
- const values = catchData?.data?.[code];
127
+ codes.forEach((code) => {
128
+ var _a2;
129
+ const values = (_a2 = catchData == null ? void 0 : catchData.data) == null ? void 0 : _a2[code];
201
130
  options[code] = Array.isArray(values) ? values : [];
202
131
  });
203
132
  return options;
204
133
  }
205
134
  return [];
206
135
  }
207
- export default useEnum;
136
+ var useEnum_default = useEnum;
137
+ export {
138
+ useEnum_default as default
139
+ };