@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,90 +1,75 @@
1
- import { get as idbGet, set as idbSet, del as idbDel } from 'idb-keyval';
2
- /** v4 默认列缓存存储类型 */
3
- export const baseStorage = 'localStorage';
4
-
5
- /** 顶层共享 key(向后兼容现有 localStorage / sessionStorage 中已存在的 'tableConfig' 数据) */
6
- const TOP_KEY = 'tableConfig';
7
-
8
- /** 单条列缓存条目结构 */
9
-
10
- /** 模块级内存缓存:pathKey → ColumnCacheEntry */
11
- const memoryCache = new Map();
12
-
13
- /** IndexedDB 可用性探测结果(首次 set/del 试探后缓存) */
1
+ import { get as idbGet, set as idbSet, del as idbDel } from "idb-keyval";
2
+ const baseStorage = "localStorage";
3
+ const TOP_KEY = "tableConfig";
4
+ const memoryCache = /* @__PURE__ */ new Map();
14
5
  let indexedDBAvailable = null;
15
- const isSSR = () => typeof window === 'undefined';
16
- const getWebStorage = storage => {
17
- if (isSSR()) return null;
18
- return storage === 'sessionStorage' ? window.sessionStorage : window.localStorage;
6
+ const isSSR = () => typeof window === "undefined";
7
+ const getWebStorage = (storage) => {
8
+ if (isSSR())
9
+ return null;
10
+ return storage === "sessionStorage" ? window.sessionStorage : window.localStorage;
19
11
  };
20
- const readTopMap = storage => {
12
+ const readTopMap = (storage) => {
21
13
  const ws = getWebStorage(storage);
22
- if (!ws) return {};
14
+ if (!ws)
15
+ return {};
23
16
  try {
24
17
  const raw = ws.getItem(TOP_KEY);
25
- if (!raw) return {};
18
+ if (!raw)
19
+ return {};
26
20
  const parsed = JSON.parse(raw);
27
- return parsed && typeof parsed === 'object' ? parsed : {};
21
+ return parsed && typeof parsed === "object" ? parsed : {};
28
22
  } catch {
29
23
  return {};
30
24
  }
31
25
  };
32
26
  const writeTopMap = (storage, next) => {
33
27
  const ws = getWebStorage(storage);
34
- if (!ws) return;
28
+ if (!ws)
29
+ return;
35
30
  ws.setItem(TOP_KEY, JSON.stringify(next));
36
31
  };
37
32
  async function checkIndexedDBSupport() {
38
- if (indexedDBAvailable !== null) return indexedDBAvailable;
33
+ if (indexedDBAvailable !== null)
34
+ return indexedDBAvailable;
39
35
  try {
40
- await idbSet('__pro_table_idb_test__', 1);
41
- await idbDel('__pro_table_idb_test__');
36
+ await idbSet("__pro_table_idb_test__", 1);
37
+ await idbDel("__pro_table_idb_test__");
42
38
  indexedDBAvailable = true;
43
39
  return true;
44
40
  } catch (error) {
45
- // eslint-disable-next-line no-console
46
- console.warn('ProTable: IndexedDB is not available, falling back to localStorage. 列缓存默认存储 IndexedDB 不可用,已自动降级到 localStorage。', error);
41
+ console.warn(
42
+ "ProTable: IndexedDB is not available, falling back to localStorage. 列缓存默认存储 IndexedDB 不可用,已自动降级到 localStorage。",
43
+ error
44
+ );
47
45
  indexedDBAvailable = false;
48
46
  return false;
49
47
  }
50
48
  }
51
-
52
- /**
53
- * 同步读取列缓存
54
- * - localStorage / sessionStorage:直接同步读
55
- * - indexedDB:仅命中内存缓存时同步返回,否则 undefined(业务侧需异步兜底)
56
- */
57
- export function getColumnCacheSync(storage, pathKey) {
58
- if (memoryCache.has(pathKey)) return memoryCache.get(pathKey);
59
- if (storage === 'localStorage' || storage === 'sessionStorage') {
49
+ function getColumnCacheSync(storage, pathKey) {
50
+ if (memoryCache.has(pathKey))
51
+ return memoryCache.get(pathKey);
52
+ if (storage === "localStorage" || storage === "sessionStorage") {
60
53
  const map = readTopMap(storage);
61
54
  const entry = map[pathKey];
62
55
  memoryCache.set(pathKey, entry);
63
56
  return entry;
64
57
  }
65
- return undefined;
58
+ return void 0;
66
59
  }
67
-
68
- /**
69
- * 读取列缓存
70
- * - localStorage / sessionStorage:同步返回
71
- * - indexedDB:返回 Promise;命中内存缓存时同样走 Promise(保持调用侧一致)
72
- */
73
- export function getColumnCache(storage, pathKey) {
74
- if (storage === 'localStorage' || storage === 'sessionStorage') {
60
+ function getColumnCache(storage, pathKey) {
61
+ if (storage === "localStorage" || storage === "sessionStorage") {
75
62
  return getColumnCacheSync(storage, pathKey);
76
63
  }
77
- // indexedDB
78
64
  if (memoryCache.has(pathKey)) {
79
65
  return Promise.resolve(memoryCache.get(pathKey));
80
66
  }
81
67
  if (isSSR()) {
82
- return Promise.resolve(undefined);
68
+ return Promise.resolve(void 0);
83
69
  }
84
- return checkIndexedDBSupport().then(async ok => {
70
+ return checkIndexedDBSupport().then(async (ok) => {
85
71
  if (!ok) {
86
- // 降级路径:尝试从 localStorage 读取
87
- const map = readTopMap('localStorage');
72
+ const map = readTopMap("localStorage");
88
73
  const entry = map[pathKey];
89
74
  memoryCache.set(pathKey, entry);
90
75
  return entry;
@@ -94,78 +79,68 @@ export function getColumnCache(storage, pathKey) {
94
79
  memoryCache.set(pathKey, value);
95
80
  return value;
96
81
  } catch (error) {
97
- // eslint-disable-next-line no-console
98
- console.warn('ProTable: IndexedDB read failed:', error);
99
- return undefined;
82
+ console.warn("ProTable: IndexedDB read failed:", error);
83
+ return void 0;
100
84
  }
101
85
  });
102
86
  }
103
-
104
- /**
105
- * 写入列缓存
106
- * - localStorage / sessionStorage:同步写
107
- * - indexedDB:同步预热内存缓存 + 异步持久化(返回 Promise)
108
- */
109
- export function setColumnCache(storage, pathKey, value) {
87
+ function setColumnCache(storage, pathKey, value) {
110
88
  memoryCache.set(pathKey, value);
111
- if (isSSR()) return;
112
- if (storage === 'localStorage' || storage === 'sessionStorage') {
89
+ if (isSSR())
90
+ return;
91
+ if (storage === "localStorage" || storage === "sessionStorage") {
113
92
  const map = readTopMap(storage);
114
93
  map[pathKey] = value;
115
94
  writeTopMap(storage, map);
116
95
  return;
117
96
  }
118
- // indexedDB
119
- return checkIndexedDBSupport().then(async ok => {
97
+ return checkIndexedDBSupport().then(async (ok) => {
120
98
  if (!ok) {
121
- // 降级到 localStorage
122
- const map = readTopMap('localStorage');
99
+ const map = readTopMap("localStorage");
123
100
  map[pathKey] = value;
124
- writeTopMap('localStorage', map);
101
+ writeTopMap("localStorage", map);
125
102
  return;
126
103
  }
127
104
  try {
128
105
  await idbSet(pathKey, value);
129
106
  } catch (error) {
130
- // eslint-disable-next-line no-console
131
- console.warn('ProTable: IndexedDB write failed:', error);
107
+ console.warn("ProTable: IndexedDB write failed:", error);
132
108
  }
133
109
  });
134
110
  }
135
-
136
- /**
137
- * 删除列缓存
138
- */
139
- export function removeColumnCache(storage, pathKey) {
111
+ function removeColumnCache(storage, pathKey) {
140
112
  memoryCache.delete(pathKey);
141
- if (isSSR()) return;
142
- if (storage === 'localStorage' || storage === 'sessionStorage') {
113
+ if (isSSR())
114
+ return;
115
+ if (storage === "localStorage" || storage === "sessionStorage") {
143
116
  const map = readTopMap(storage);
144
117
  delete map[pathKey];
145
118
  writeTopMap(storage, map);
146
119
  return;
147
120
  }
148
- // indexedDB
149
- return checkIndexedDBSupport().then(async ok => {
121
+ return checkIndexedDBSupport().then(async (ok) => {
150
122
  if (!ok) {
151
- const map = readTopMap('localStorage');
123
+ const map = readTopMap("localStorage");
152
124
  delete map[pathKey];
153
- writeTopMap('localStorage', map);
125
+ writeTopMap("localStorage", map);
154
126
  return;
155
127
  }
156
128
  try {
157
129
  await idbDel(pathKey);
158
130
  } catch (error) {
159
- // eslint-disable-next-line no-console
160
- console.warn('ProTable: IndexedDB delete failed:', error);
131
+ console.warn("ProTable: IndexedDB delete failed:", error);
161
132
  }
162
133
  });
163
134
  }
164
-
165
- /**
166
- * 仅供测试:重置内存缓存与 IndexedDB 可用性探测结果
167
- */
168
- export function __resetColumnCacheForTest() {
135
+ function __resetColumnCacheForTest() {
169
136
  memoryCache.clear();
170
137
  indexedDBAvailable = null;
171
- }
138
+ }
139
+ export {
140
+ __resetColumnCacheForTest,
141
+ baseStorage,
142
+ getColumnCache,
143
+ getColumnCacheSync,
144
+ removeColumnCache,
145
+ setColumnCache
146
+ };
@@ -1,64 +1,32 @@
1
- import _isFunction from "lodash/isFunction";
2
- import _isEqual from "lodash/isEqual";
3
- import _isBoolean from "lodash/isBoolean";
4
- import _get from "lodash/get";
5
- import { validate } from '@zat-design/utils';
6
- const {
7
- isEmpty
8
- } = validate;
9
-
10
- /**
11
- * 列可见性过滤:hidden 优先(antd 5.13+ 原生),show 兼容(已废弃)
12
- * - hidden 为布尔值 → 直接按 hidden 决定
13
- * - hidden 缺省、show 为布尔值 → 按 show 决定
14
- * - hidden 缺省、show 为函数 → 调用 show() 决定
15
- * - 都缺省 → 显示
16
- *
17
- * 返回过滤后的列与 deprecated show 使用情况,由调用方决定告警时机/去重。
18
- */
19
- export const filterVisibleColumns = (columns = []) => {
1
+ import get from "lodash/get";
2
+ import isBoolean from "lodash/isBoolean";
3
+ import isEqual from "lodash/isEqual";
4
+ import isFunction from "lodash/isFunction";
5
+ import { validate } from "@zat-design/utils";
6
+ const { isEmpty } = validate;
7
+ const filterVisibleColumns = (columns = []) => {
20
8
  let usedShow = false;
21
- const filtered = columns.filter(item => {
22
- const {
23
- hidden,
24
- show
25
- } = item;
26
- if (_isBoolean(hidden)) {
9
+ const filtered = columns.filter((item) => {
10
+ const { hidden, show } = item;
11
+ if (isBoolean(hidden)) {
27
12
  return !hidden;
28
13
  }
29
- if (show !== undefined) {
14
+ if (show !== void 0) {
30
15
  usedShow = true;
31
- if (_isBoolean(show)) return show;
32
- if (_isFunction(show)) return show();
16
+ if (isBoolean(show))
17
+ return show;
18
+ if (isFunction(show))
19
+ return show();
33
20
  }
34
21
  return true;
35
22
  });
36
- return {
37
- columns: filtered,
38
- usedShow
39
- };
23
+ return { columns: filtered, usedShow };
40
24
  };
41
-
42
- /**
43
- * 获取小数点后的位数
44
- * @param num 数字
45
- * @returns 位数
46
- */
47
- export const getDecimalDigits = (num = 0) => {
25
+ const getDecimalDigits = (num = 0) => {
48
26
  const match = Number(num).toString().match(/\.(\d+)/);
49
27
  return match ? match[1].length : 0;
50
28
  };
51
-
52
- /**
53
- * @description: 获取初始值
54
- * @param {any} rowKey
55
- * @param any value
56
- * @param any originalObj
57
- * @param {any} dataIndex
58
- * @return {any} isChanged 返回bool值,表示存在比对
59
- * @return {any} isAddCell 返回bool值,表示存在比对
60
- */
61
- export const getOriginalValue = (value, record, originalObj, rowKey, dataIndex) => {
29
+ const getOriginalValue = (value, record, originalObj, rowKey, dataIndex) => {
62
30
  if (!originalObj) {
63
31
  return {
64
32
  originalValue: null,
@@ -66,8 +34,8 @@ export const getOriginalValue = (value, record, originalObj, rowKey, dataIndex)
66
34
  isAddCell: null
67
35
  };
68
36
  }
69
- const originRecord = _get(originalObj, _get(record, rowKey));
70
- const originalValue = _get(originRecord, dataIndex);
37
+ const originRecord = get(originalObj, get(record, rowKey));
38
+ const originalValue = get(originRecord, dataIndex);
71
39
  if (isEmpty(originalValue) && !isEmpty(value)) {
72
40
  return {
73
41
  originalValue,
@@ -75,7 +43,7 @@ export const getOriginalValue = (value, record, originalObj, rowKey, dataIndex)
75
43
  isChanged: false
76
44
  };
77
45
  }
78
- if (!_isEqual(originalValue, value)) {
46
+ if (!isEqual(originalValue, value)) {
79
47
  return {
80
48
  originalValue,
81
49
  isChanged: true,
@@ -88,47 +56,46 @@ export const getOriginalValue = (value, record, originalObj, rowKey, dataIndex)
88
56
  isAddCell: false
89
57
  };
90
58
  };
91
- export const getColumnDataIndex = dataIndex => {
92
- return typeof dataIndex === 'string' ? dataIndex : dataIndex?.join('-');
59
+ const getColumnDataIndex = (dataIndex) => {
60
+ return typeof dataIndex === "string" ? dataIndex : dataIndex == null ? void 0 : dataIndex.join("-");
93
61
  };
94
-
95
- /**
96
- * 判断数据是否为Response<List<any>>结构
97
- * @param data { [key: string]: any } 需要判断数据
98
- * @returns boolean 是否
99
- */
100
- export const isListResult = data => {
101
- return data.hasOwnProperty('total') && data.hasOwnProperty('list');
62
+ const isListResult = (data) => {
63
+ return data.hasOwnProperty("total") && data.hasOwnProperty("list");
102
64
  };
103
- export const getRowKey = (rowKey, record) => {
104
- // 默认取id
105
- let key = record.rowKey || 'id';
65
+ const getRowKey = (rowKey, record) => {
66
+ let key = record.rowKey || "id";
106
67
  if (rowKey) {
107
- key = (typeof rowKey === 'function' ? rowKey(record) : record[rowKey]) ?? key;
68
+ key = (typeof rowKey === "function" ? rowKey(record) : record[rowKey]) ?? key;
108
69
  }
109
70
  return key;
110
71
  };
111
-
112
- /** 移除对象中的 null , undefined, '' 的key */
113
- export const removeEmptyKeys = obj => {
114
- if (!obj) return {};
115
-
116
- // 一次遍历完成所有处理
117
- return Object.fromEntries(Object.entries(obj).filter(([_, value]) => {
118
- // 过滤空值
119
- if (value === null || value === undefined || value === '') {
120
- return false;
121
- }
122
-
123
- // 检查是否是全空对象
124
- if (value && typeof value === 'object' && !Array.isArray(value)) {
125
- return !Object.values(value).every(item => item === null || item === undefined || item === '');
126
- }
127
- return true;
128
- }));
72
+ const removeEmptyKeys = (obj) => {
73
+ if (!obj)
74
+ return {};
75
+ return Object.fromEntries(
76
+ Object.entries(obj).filter(([_, value]) => {
77
+ if (value === null || value === void 0 || value === "") {
78
+ return false;
79
+ }
80
+ if (value && typeof value === "object" && !Array.isArray(value)) {
81
+ return !Object.values(value).every(
82
+ (item) => item === null || item === void 0 || item === ""
83
+ );
84
+ }
85
+ return true;
86
+ })
87
+ );
88
+ };
89
+ const isNonEmptyObject = (obj) => {
90
+ return obj !== null && typeof obj === "object" && !Array.isArray(obj) && Object.keys(obj).length > 0;
91
+ };
92
+ export {
93
+ filterVisibleColumns,
94
+ getColumnDataIndex,
95
+ getDecimalDigits,
96
+ getOriginalValue,
97
+ getRowKey,
98
+ isListResult,
99
+ isNonEmptyObject,
100
+ removeEmptyKeys
129
101
  };
130
-
131
- /** 判断是有值的对象 */
132
- export const isNonEmptyObject = obj => {
133
- return obj !== null && typeof obj === 'object' && !Array.isArray(obj) && Object.keys(obj).length > 0;
134
- };
@@ -1,50 +1,22 @@
1
- import { Space, Tag, Spin } from 'antd';
2
- import { LoadingOutlined } from '@ant-design/icons';
3
- import { tools } from '@zat-design/utils';
4
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
5
- const Card = props => {
6
- const {
7
- total,
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { Space, Tag, Spin } from "antd";
3
+ import { LoadingOutlined } from "@ant-design/icons";
4
+ import { tools } from "@zat-design/utils";
5
+ const Card = (props) => {
6
+ const { total, label, icon, mode, loading, size } = props;
7
+ const antIcon = /* @__PURE__ */ jsx(LoadingOutlined, { style: { fontSize: 24 }, spin: true });
8
+ return /* @__PURE__ */ jsx("div", { className: "pro-tabs-card", children: mode === "card" ? /* @__PURE__ */ jsxs(Space, { size: 8, align: size === "small" ? "start" : "center", children: [
9
+ /* @__PURE__ */ jsxs("div", { className: "pro-tabs-card-left", children: [
10
+ /* @__PURE__ */ jsx("div", { className: "pro-tabs-card-left-total", children: loading ? /* @__PURE__ */ jsx(Spin, { indicator: antIcon }) : tools.formatAmount(total, 0) || 0 }),
11
+ /* @__PURE__ */ jsx("div", { className: "pro-tabs-card-left-label", children: label })
12
+ ] }),
13
+ /* @__PURE__ */ jsx("div", { className: "pro-tabs-card-right", children: icon || "-" })
14
+ ] }) : /* @__PURE__ */ jsxs(Space, { size: 8, align: "center", children: [
8
15
  label,
9
- icon,
10
- mode,
11
- loading,
12
- size
13
- } = props;
14
- const antIcon = /*#__PURE__*/_jsx(LoadingOutlined, {
15
- style: {
16
- fontSize: 24
17
- },
18
- spin: true
19
- });
20
- return /*#__PURE__*/_jsx("div", {
21
- className: "pro-tabs-card",
22
- children: mode === 'card' ? /*#__PURE__*/_jsxs(Space, {
23
- size: 8,
24
- align: size === 'small' ? 'start' : 'center',
25
- children: [/*#__PURE__*/_jsxs("div", {
26
- className: "pro-tabs-card-left",
27
- children: [/*#__PURE__*/_jsx("div", {
28
- className: "pro-tabs-card-left-total",
29
- children: loading ? /*#__PURE__*/_jsx(Spin, {
30
- indicator: antIcon
31
- }) : tools.formatAmount(total, 0) || 0
32
- }), /*#__PURE__*/_jsx("div", {
33
- className: "pro-tabs-card-left-label",
34
- children: label
35
- })]
36
- }), /*#__PURE__*/_jsx("div", {
37
- className: "pro-tabs-card-right",
38
- children: icon || '-'
39
- })]
40
- }) : /*#__PURE__*/_jsxs(Space, {
41
- size: 8,
42
- align: "center",
43
- children: [label, /*#__PURE__*/_jsx(Tag, {
44
- color: "#FF5050",
45
- children: total >= 100 ? '99+' : total || 0
46
- })]
47
- })
48
- });
16
+ /* @__PURE__ */ jsx(Tag, { color: "#FF5050", children: total >= 100 ? "99+" : total || 0 })
17
+ ] }) });
18
+ };
19
+ var Card_default = Card;
20
+ export {
21
+ Card_default as default
49
22
  };
50
- export default Card;
@@ -1 +1,4 @@
1
- export { default as Card } from "./Card";
1
+ import { default as default2 } from "./Card";
2
+ export {
3
+ default2 as Card
4
+ };
@@ -1,11 +1,10 @@
1
- import _omit from "lodash/omit";
2
- /* eslint-disable @typescript-eslint/consistent-type-assertions */
3
- import React, { useMemo, useState, forwardRef, useImperativeHandle } from 'react';
4
- import { Tabs } from 'antd';
5
- import { useDeepCompareEffect, useRequest as useRequestFunc } from 'ahooks';
6
- import classNames from 'classnames';
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { useMemo, useState, forwardRef, useImperativeHandle } from "react";
3
+ import { Tabs } from "antd";
4
+ import { useDeepCompareEffect, useRequest as useRequestFunc } from "ahooks";
5
+ import classNames from "classnames";
6
+ import omit from "lodash/omit";
7
7
  import { Card } from "./components";
8
- import { jsx as _jsx } from "react/jsx-runtime";
9
8
  const ProTabs = (props, ref) => {
10
9
  const {
11
10
  style,
@@ -15,23 +14,22 @@ const ProTabs = (props, ref) => {
15
14
  transformResponse,
16
15
  useRequest,
17
16
  tabSearch = false,
18
- mode = 'card',
17
+ mode = "card",
19
18
  ...rest
20
19
  } = props;
21
20
  const [selectList, setSelectList] = useState(dataSource || []);
22
- const fetchFunction = useRequestFunc(useRequest?.service, {
21
+ const fetchFunction = useRequestFunc(useRequest == null ? void 0 : useRequest.service, {
23
22
  manual: true,
24
- onSuccess: data => {
23
+ onSuccess: (data) => {
25
24
  let responseData;
26
- if (transformResponse && typeof transformResponse === 'function') {
27
- // 转换数据
25
+ if (transformResponse && typeof transformResponse === "function") {
28
26
  responseData = transformResponse(data);
29
27
  }
30
28
  if (Array.isArray(data)) {
31
29
  responseData = data;
32
30
  }
33
31
  if (!Array.isArray(responseData)) {
34
- return console.error('transformResponse must return a number array, like [1, 2, 3]');
32
+ return console.error("transformResponse must return a number array, like [1, 2, 3]");
35
33
  }
36
34
  const result = selectList.map((item, index) => {
37
35
  return {
@@ -42,78 +40,63 @@ const ProTabs = (props, ref) => {
42
40
  setSelectList(result);
43
41
  },
44
42
  debounceWait: 300,
45
- loadingDelay: 1000,
46
- ...useRequest?.options
43
+ loadingDelay: 1e3,
44
+ ...useRequest == null ? void 0 : useRequest.options
47
45
  });
48
46
  const _items = useMemo(() => {
49
- return selectList.map(itemProps => {
47
+ return selectList.map((itemProps) => {
50
48
  const cardItemProps = {
51
49
  total: itemProps.total,
52
50
  label: itemProps.label,
53
51
  icon: itemProps.icon,
54
52
  mode,
55
53
  title: itemProps.title || itemProps.label,
56
- loading: fetchFunction?.loading,
57
- size: rest?.size
54
+ loading: fetchFunction == null ? void 0 : fetchFunction.loading,
55
+ size: rest == null ? void 0 : rest.size
58
56
  };
59
57
  return {
60
- ..._omit(itemProps, ['total', 'label', 'icon']),
61
- label: /*#__PURE__*/_jsx(Card, {
62
- ...cardItemProps
63
- })
58
+ ...omit(itemProps, ["total", "label", "icon"]),
59
+ label: /* @__PURE__ */ jsx(Card, { ...cardItemProps })
64
60
  };
65
61
  });
66
- }, [selectList, fetchFunction?.loading]);
62
+ }, [selectList, fetchFunction == null ? void 0 : fetchFunction.loading, mode, rest == null ? void 0 : rest.size]);
67
63
  const cls = classNames({
68
- 'pro-tabs': mode === 'card',
69
- 'pro-tabs-mode-card': mode === 'card',
70
- 'pro-tabs-tab': mode !== 'card',
71
- 'pro-tabs-size-small': rest?.size === 'small',
64
+ "pro-tabs": mode === "card",
65
+ "pro-tabs-mode-card": mode === "card",
66
+ "pro-tabs-tab": mode !== "card",
67
+ "pro-tabs-size-small": (rest == null ? void 0 : rest.size) === "small",
72
68
  [className]: className
73
69
  });
74
- const handleChange = key => {
75
- const {
76
- onChange
77
- } = props;
78
- // 开启tab切换查询
70
+ const handleChange = (key) => {
71
+ const { onChange: onChange2 } = props;
79
72
  if (tabSearch) {
80
73
  fetchFunction.refresh();
81
74
  }
82
- onChange && onChange(key, fetchFunction);
75
+ onChange2 && onChange2(key, fetchFunction);
83
76
  };
84
-
85
- // manual为false时,自动执行
86
77
  useDeepCompareEffect(() => {
87
- const {
88
- defaultParams,
89
- manual
90
- } = useRequest?.options || {};
91
- const params = Array.isArray(defaultParams) ? defaultParams?.[0] : defaultParams || {};
78
+ const { defaultParams, manual } = (useRequest == null ? void 0 : useRequest.options) || {};
79
+ const params = Array.isArray(defaultParams) ? defaultParams == null ? void 0 : defaultParams[0] : defaultParams || {};
92
80
  if (manual || !useRequest) {
93
81
  return;
94
82
  }
95
83
  fetchFunction.run(params);
96
- }, [useRequest?.options]);
97
-
98
- // dataSource变化时,更新selectList
84
+ }, [useRequest == null ? void 0 : useRequest.options]);
99
85
  useDeepCompareEffect(() => {
100
- if (!dataSource?.length) {
86
+ if (!Array.isArray(props.dataSource)) {
101
87
  return;
102
88
  }
103
- setSelectList(dataSource);
89
+ setSelectList(props.dataSource);
104
90
  }, [dataSource]);
105
- useImperativeHandle(ref, () => ({
106
- useRequestRef: fetchFunction
107
- }));
108
- return /*#__PURE__*/_jsx("div", {
109
- style: style,
110
- className: cls,
111
- children: /*#__PURE__*/_jsx(Tabs, {
112
- animated: false,
113
- ...rest,
114
- items: _items,
115
- onChange: handleChange
91
+ useImperativeHandle(
92
+ ref,
93
+ () => ({
94
+ useRequestRef: fetchFunction
116
95
  })
117
- });
96
+ );
97
+ return /* @__PURE__ */ jsx("div", { style, className: cls, children: /* @__PURE__ */ jsx(Tabs, { animated: false, ...rest, items: _items, onChange: handleChange }) });
98
+ };
99
+ var ProTabs_default = forwardRef(ProTabs);
100
+ export {
101
+ ProTabs_default as default
118
102
  };
119
- export default /*#__PURE__*/forwardRef(ProTabs);
@@ -1 +0,0 @@
1
- export {};