@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,11 +1,11 @@
1
- import { useState } from 'react';
2
- import classNames from 'classnames';
3
- import { Popover, Tooltip } from 'antd';
1
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
2
+ import { useState } from "react";
3
+ import classNames from "classnames";
4
+ import { Popover, Tooltip } from "antd";
4
5
  import { ProIcon } from "../../../../index";
5
6
  import logoImg from "../../../images/logoImg.png";
6
7
  import appsIcon from "../../../../assets/apps.svg";
7
- import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
8
- const Header = props => {
8
+ const Header = (props) => {
9
9
  const {
10
10
  headerHeight,
11
11
  pure,
@@ -17,157 +17,124 @@ const Header = props => {
17
17
  appsOptions
18
18
  } = props;
19
19
  const [appsPopoverOpen, setAppsPopoverOpen] = useState(false);
20
- if (pure === true || pure?.topMenu) {
21
- return /*#__PURE__*/_jsx(_Fragment, {});
20
+ if (pure === true || (pure == null ? void 0 : pure.topMenu)) {
21
+ return /* @__PURE__ */ jsx(Fragment, {});
22
22
  }
23
-
24
- // 判断是否为分组模式
25
- const isGroupMode = Array.isArray(appsOptions) && appsOptions.length > 0 && 'options' in appsOptions[0];
26
-
27
- // 处理应用点击事件
28
- const handleAppsClick = option => {
29
- option.onChange?.(option.value, option);
23
+ const isGroupMode = Array.isArray(appsOptions) && appsOptions.length > 0 && "options" in appsOptions[0];
24
+ const handleAppsClick = (option) => {
25
+ var _a;
26
+ (_a = option.onChange) == null ? void 0 : _a.call(option, option.value, option);
30
27
  setAppsPopoverOpen(false);
31
28
  };
32
-
33
- // 渲染扁平应用列表
34
29
  const renderFlatApps = () => {
35
30
  const options = appsOptions;
36
- return /*#__PURE__*/_jsx("div", {
37
- className: "pro-layout-header-apps-list",
38
- children: options.map(option => {
39
- const labelText = typeof option.label === 'string' ? option.label : '';
40
- const needTooltip = labelText.length > 5;
41
- const displayText = needTooltip ? labelText.substring(0, 5) + '...' : labelText;
42
- if (needTooltip) {
43
- return /*#__PURE__*/_jsx(Tooltip, {
44
- title: labelText,
45
- placement: "top",
46
- children: /*#__PURE__*/_jsxs("div", {
47
- className: "pro-layout-header-apps-item",
48
- onClick: () => handleAppsClick(option),
49
- children: [option.icon && /*#__PURE__*/_jsx("span", {
50
- className: "pro-layout-header-apps-item-icon",
51
- children: option.icon
52
- }), /*#__PURE__*/_jsx("span", {
53
- className: "pro-layout-header-apps-item-label",
54
- children: displayText
55
- })]
56
- })
57
- }, option.value);
58
- }
59
- return /*#__PURE__*/_jsxs("div", {
31
+ return /* @__PURE__ */ jsx("div", { className: "pro-layout-header-apps-list", children: options.map((option) => {
32
+ const labelText = typeof option.label === "string" ? option.label : "";
33
+ const needTooltip = labelText.length > 5;
34
+ const displayText = needTooltip ? labelText.substring(0, 5) + "..." : labelText;
35
+ if (needTooltip) {
36
+ return /* @__PURE__ */ jsx(Tooltip, { title: labelText, placement: "top", children: /* @__PURE__ */ jsxs(
37
+ "div",
38
+ {
39
+ className: "pro-layout-header-apps-item",
40
+ onClick: () => handleAppsClick(option),
41
+ children: [
42
+ option.icon && /* @__PURE__ */ jsx("span", { className: "pro-layout-header-apps-item-icon", children: option.icon }),
43
+ /* @__PURE__ */ jsx("span", { className: "pro-layout-header-apps-item-label", children: displayText })
44
+ ]
45
+ }
46
+ ) }, option.value);
47
+ }
48
+ return /* @__PURE__ */ jsxs(
49
+ "div",
50
+ {
60
51
  className: "pro-layout-header-apps-item",
61
52
  onClick: () => handleAppsClick(option),
62
- children: [option.icon && /*#__PURE__*/_jsx("span", {
63
- className: "pro-layout-header-apps-item-icon",
64
- children: option.icon
65
- }), /*#__PURE__*/_jsx("span", {
66
- className: "pro-layout-header-apps-item-label",
67
- children: displayText
68
- })]
69
- }, option.value);
70
- })
71
- });
53
+ children: [
54
+ option.icon && /* @__PURE__ */ jsx("span", { className: "pro-layout-header-apps-item-icon", children: option.icon }),
55
+ /* @__PURE__ */ jsx("span", { className: "pro-layout-header-apps-item-label", children: displayText })
56
+ ]
57
+ },
58
+ option.value
59
+ );
60
+ }) });
72
61
  };
73
-
74
- // 渲染分组应用列表
75
62
  const renderGroupApps = () => {
76
63
  const groups = appsOptions;
77
- return /*#__PURE__*/_jsx("div", {
78
- className: "pro-layout-header-apps-groups",
79
- children: groups.map(group => /*#__PURE__*/_jsxs("div", {
80
- className: "pro-layout-header-apps-group",
81
- children: [/*#__PURE__*/_jsx("div", {
82
- className: "pro-layout-header-apps-group-title",
83
- children: group.label
84
- }), /*#__PURE__*/_jsx("div", {
85
- className: "pro-layout-header-apps-list",
86
- children: group.options.map(option => {
87
- const labelText = typeof option.label === 'string' ? option.label : '';
88
- const needTooltip = labelText.length > 5;
89
- const displayText = needTooltip ? labelText.substring(0, 5) + '...' : labelText;
90
- if (needTooltip) {
91
- return /*#__PURE__*/_jsx(Tooltip, {
92
- title: labelText,
93
- placement: "top",
94
- children: /*#__PURE__*/_jsxs("div", {
95
- className: "pro-layout-header-apps-item",
96
- onClick: () => handleAppsClick(option),
97
- children: [option.icon && /*#__PURE__*/_jsx("span", {
98
- className: "pro-layout-header-apps-item-icon",
99
- children: option.icon
100
- }), /*#__PURE__*/_jsx("span", {
101
- className: "pro-layout-header-apps-item-label",
102
- children: displayText
103
- })]
104
- })
105
- }, option.value);
106
- }
107
- return /*#__PURE__*/_jsxs("div", {
64
+ return /* @__PURE__ */ jsx("div", { className: "pro-layout-header-apps-groups", children: groups.map((group) => /* @__PURE__ */ jsxs("div", { className: "pro-layout-header-apps-group", children: [
65
+ /* @__PURE__ */ jsx("div", { className: "pro-layout-header-apps-group-title", children: group.label }),
66
+ /* @__PURE__ */ jsx("div", { className: "pro-layout-header-apps-list", children: group.options.map((option) => {
67
+ const labelText = typeof option.label === "string" ? option.label : "";
68
+ const needTooltip = labelText.length > 5;
69
+ const displayText = needTooltip ? labelText.substring(0, 5) + "..." : labelText;
70
+ if (needTooltip) {
71
+ return /* @__PURE__ */ jsx(Tooltip, { title: labelText, placement: "top", children: /* @__PURE__ */ jsxs(
72
+ "div",
73
+ {
108
74
  className: "pro-layout-header-apps-item",
109
75
  onClick: () => handleAppsClick(option),
110
- children: [option.icon && /*#__PURE__*/_jsx("span", {
111
- className: "pro-layout-header-apps-item-icon",
112
- children: option.icon
113
- }), /*#__PURE__*/_jsx("span", {
114
- className: "pro-layout-header-apps-item-label",
115
- children: displayText
116
- })]
117
- }, option.value);
118
- })
119
- })]
120
- }, group.value))
121
- });
76
+ children: [
77
+ option.icon && /* @__PURE__ */ jsx("span", { className: "pro-layout-header-apps-item-icon", children: option.icon }),
78
+ /* @__PURE__ */ jsx("span", { className: "pro-layout-header-apps-item-label", children: displayText })
79
+ ]
80
+ }
81
+ ) }, option.value);
82
+ }
83
+ return /* @__PURE__ */ jsxs(
84
+ "div",
85
+ {
86
+ className: "pro-layout-header-apps-item",
87
+ onClick: () => handleAppsClick(option),
88
+ children: [
89
+ option.icon && /* @__PURE__ */ jsx("span", { className: "pro-layout-header-apps-item-icon", children: option.icon }),
90
+ /* @__PURE__ */ jsx("span", { className: "pro-layout-header-apps-item-label", children: displayText })
91
+ ]
92
+ },
93
+ option.value
94
+ );
95
+ }) })
96
+ ] }, group.value)) });
122
97
  };
123
-
124
- // 渲染Popover内容
125
98
  const renderAppsContent = () => {
126
- if (!appsOptions || appsOptions.length === 0) return null;
99
+ if (!appsOptions || appsOptions.length === 0)
100
+ return null;
127
101
  return isGroupMode ? renderGroupApps() : renderFlatApps();
128
102
  };
129
- return /*#__PURE__*/_jsxs("div", {
130
- className: classNames({
131
- 'pro-layout-header': true,
132
- 'pro-layout-header-pure': typeof pure !== 'boolean' ? pure?.topMenu : pure
133
- }),
134
- style: {
135
- height: headerHeight
136
- },
137
- children: [appsOptions && appsOptions.length > 0 && /*#__PURE__*/_jsx(Popover, {
138
- content: renderAppsContent(),
139
- trigger: "hover",
140
- placement: "bottomLeft",
141
- open: appsPopoverOpen,
142
- onOpenChange: setAppsPopoverOpen,
143
- classNames: {
144
- root: 'pro-layout-header-apps-popover'
145
- },
146
- align: {
147
- offset: [30, -10]
103
+ return /* @__PURE__ */ jsxs(
104
+ "div",
105
+ {
106
+ className: classNames({
107
+ "pro-layout-header": true,
108
+ "pro-layout-header-pure": typeof pure !== "boolean" ? pure == null ? void 0 : pure.topMenu : pure
109
+ }),
110
+ style: {
111
+ height: headerHeight
148
112
  },
149
- children: /*#__PURE__*/_jsx("div", {
150
- className: "pro-layout-header-apps-trigger",
151
- children: /*#__PURE__*/_jsx(ProIcon, {
152
- src: appsIcon,
153
- size: "20px"
154
- })
155
- })
156
- }), headerTitleRender || /*#__PURE__*/_jsxs("div", {
157
- className: "pro-layout-header-logo",
158
- children: [/*#__PURE__*/_jsx("span", {
159
- children: logo || /*#__PURE__*/_jsx("img", {
160
- className: "default-logo",
161
- src: logoImg,
162
- alt: "logo"
163
- })
164
- }), title ? /*#__PURE__*/_jsx("h4", {
165
- children: title
166
- }) : null]
167
- }), headerContentRender || null, rightContentRender ? /*#__PURE__*/_jsx("div", {
168
- className: "pro-layout-header-actions",
169
- children: rightContentRender
170
- }) : null]
171
- });
113
+ children: [
114
+ appsOptions && appsOptions.length > 0 && /* @__PURE__ */ jsx(
115
+ Popover,
116
+ {
117
+ content: renderAppsContent(),
118
+ trigger: "hover",
119
+ placement: "bottomLeft",
120
+ open: appsPopoverOpen,
121
+ onOpenChange: setAppsPopoverOpen,
122
+ classNames: { root: "pro-layout-header-apps-popover" },
123
+ align: { offset: [30, -10] },
124
+ children: /* @__PURE__ */ jsx("div", { className: "pro-layout-header-apps-trigger", children: /* @__PURE__ */ jsx(ProIcon, { src: appsIcon, size: "20px" }) })
125
+ }
126
+ ),
127
+ headerTitleRender || /* @__PURE__ */ jsxs("div", { className: "pro-layout-header-logo", children: [
128
+ /* @__PURE__ */ jsx("span", { children: logo || /* @__PURE__ */ jsx("img", { className: "default-logo", src: logoImg, alt: "logo" }) }),
129
+ title ? /* @__PURE__ */ jsx("h4", { children: title }) : null
130
+ ] }),
131
+ headerContentRender || null,
132
+ rightContentRender ? /* @__PURE__ */ jsx("div", { className: "pro-layout-header-actions", children: rightContentRender }) : null
133
+ ]
134
+ }
135
+ );
136
+ };
137
+ var Header_default = Header;
138
+ export {
139
+ Header_default as default
172
140
  };
173
- export default Header;
@@ -1,121 +1,81 @@
1
- import { useContext } from 'react';
2
- import { Popover, Tooltip } from 'antd';
3
- import classnames from 'classnames';
4
- import { Link as RouterLink } from 'react-router-dom';
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { useContext } from "react";
3
+ import { Popover, Tooltip } from "antd";
4
+ import classnames from "classnames";
5
+ import { Link as RouterLink } from "react-router-dom";
5
6
  import ProIcon from "../../../../../ProIcon";
6
7
  import SideMenu from "../SideMenu";
7
8
  import { LayoutContext } from "../../../../index";
8
9
  import { getUrlParams, getPathNameKey, findMenuItemByKey } from "../../../../utils";
9
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
10
  const Link = RouterLink;
11
- const FoldMenu = props => {
12
- const {
13
- style,
14
- dataSource,
15
- onMenuClick
16
- } = props;
17
- const {
18
- menus,
19
- iconfontUrl,
20
- notice,
21
- collapsed,
22
- headerHeight
23
- } = dataSource;
24
- const pathNamePrefix = `/${window.location.pathname.split('/')[1]}`;
11
+ const FoldMenu = (props) => {
12
+ const { style, dataSource, onMenuClick } = props;
13
+ const { menus, iconfontUrl, notice, collapsed, headerHeight } = dataSource;
14
+ const pathNamePrefix = `/${window.location.pathname.split("/")[1]}`;
25
15
  const noticeCls = classnames({
26
- 'pro-layout-menu-tooltip': true,
27
- 'pro-layout-menu-tooltip-has-notice': notice,
28
- 'pro-layout-menu-tooltip-nav-open': collapsed
16
+ "pro-layout-menu-tooltip": true,
17
+ "pro-layout-menu-tooltip-has-notice": notice,
18
+ "pro-layout-menu-tooltip-nav-open": collapsed
29
19
  });
30
- const {
31
- selectedPath,
32
- onSelected
33
- } = useContext(LayoutContext) || {
34
- selectedPath: '',
35
- onSelected: () => {}
20
+ const { selectedPath, onSelected } = useContext(LayoutContext) || {
21
+ selectedPath: "",
22
+ onSelected: () => {
23
+ }
36
24
  };
37
- return /*#__PURE__*/_jsx("div", {
38
- className: "pro-layout-menu-fold",
39
- style: {
40
- ...style
41
- },
42
- children: /*#__PURE__*/_jsx("ul", {
43
- className: "pro-layout-menu-fold-list",
44
- style: {
45
- ...style
46
- },
47
- children: menus.filter(item => !item.hideInMenu).map((item, index) => {
48
- const {
49
- id,
50
- url,
51
- name,
52
- icon,
53
- imgUrl,
54
- imgActiveUrl,
55
- children
56
- } = item;
57
- const toPath = item.redirectUrl || item.url;
58
- const selectedMenu = getUrlParams('activeMenu');
59
- const pathToMatch = selectedPath || selectedMenu || window.location.pathname;
60
-
61
- // 取第一级
62
- const currentKeyIdPath = getPathNameKey({
63
- menus,
64
- pathName: pathToMatch // 优先匹配上下文路径
65
- }) || [];
66
- const cls = classnames({
67
- active: currentKeyIdPath.includes(id)
68
- });
69
-
70
- // 是否包含子级菜单
71
- const hasChildrenMenu = Array.isArray(children) && children.length;
72
-
73
- // 一级li Dom节点
74
- const LiNode = /*#__PURE__*/_jsx("li", {
75
- id: url?.split('/')?.[1],
76
- className: `${cls} pro-layout-menu-fold-li`,
77
- children: /*#__PURE__*/_jsxs("div", {
78
- children: [imgUrl ? /*#__PURE__*/_jsx("img", {
79
- className: "pro-layout-icon",
80
- src: pathNamePrefix === url ? imgActiveUrl || imgUrl : imgUrl,
81
- alt: "icon"
82
- }) : /*#__PURE__*/_jsx(ProIcon, {
83
- type: icon || '',
84
- size: "20px",
85
- color: currentKeyIdPath.includes(id) ? '#fff' : undefined
86
- }), /*#__PURE__*/_jsx("h2", {
87
- children: name
88
- })]
89
- })
90
- });
91
- return hasChildrenMenu ? /*#__PURE__*/_jsx(Popover, {
92
- mouseEnterDelay: 0,
93
- content: /*#__PURE__*/_jsx(SideMenu, {
94
- dataSource: {
95
- ...dataSource,
96
- menus: item
97
- },
98
- onMenuClick: onMenuClick
99
- }),
100
- color: "#fff",
101
- classNames: {
102
- root: noticeCls
103
- },
104
- styles: {
105
- content: {
106
- marginTop: headerHeight - 64,
107
- height: `calc(100vh - ${headerHeight + (notice ? 32 : 0) + 12}px)`,
108
- overflow: 'hidden'
109
- }
110
- },
111
- placement: "rightTop",
112
- children: /*#__PURE__*/_jsx("span", {
113
- onClick: e => {
114
- // 查找完整的菜单项数据
25
+ return /* @__PURE__ */ jsx("div", { className: "pro-layout-menu-fold", style: { ...style }, children: /* @__PURE__ */ jsx("ul", { className: "pro-layout-menu-fold-list", style: { ...style }, children: menus.filter((item) => !item.hideInMenu).map((item, index) => {
26
+ var _a;
27
+ const { id, url, name, icon, imgUrl, imgActiveUrl, children } = item;
28
+ const toPath = item.redirectUrl || item.url;
29
+ const selectedMenu = getUrlParams("activeMenu");
30
+ const pathToMatch = selectedPath || selectedMenu || window.location.pathname;
31
+ const currentKeyIdPath = getPathNameKey({
32
+ menus,
33
+ pathName: pathToMatch
34
+ // 优先匹配上下文路径
35
+ }) || [];
36
+ const cls = classnames({
37
+ active: currentKeyIdPath.includes(id)
38
+ });
39
+ const hasChildrenMenu = Array.isArray(children) && children.length;
40
+ const LiNode = /* @__PURE__ */ jsx("li", { id: (_a = url == null ? void 0 : url.split("/")) == null ? void 0 : _a[1], className: `${cls} pro-layout-menu-fold-li`, children: /* @__PURE__ */ jsxs("div", { children: [
41
+ imgUrl ? /* @__PURE__ */ jsx(
42
+ "img",
43
+ {
44
+ className: "pro-layout-icon",
45
+ src: pathNamePrefix === url ? imgActiveUrl || imgUrl : imgUrl,
46
+ alt: "icon"
47
+ }
48
+ ) : /* @__PURE__ */ jsx(
49
+ ProIcon,
50
+ {
51
+ type: icon || "",
52
+ size: "20px",
53
+ color: currentKeyIdPath.includes(id) ? "#fff" : void 0
54
+ }
55
+ ),
56
+ /* @__PURE__ */ jsx("h2", { children: name })
57
+ ] }) });
58
+ return hasChildrenMenu ? /* @__PURE__ */ jsx(
59
+ Popover,
60
+ {
61
+ mouseEnterDelay: 0,
62
+ content: /* @__PURE__ */ jsx(SideMenu, { dataSource: { ...dataSource, menus: item }, onMenuClick }),
63
+ color: "#fff",
64
+ classNames: { root: noticeCls },
65
+ styles: {
66
+ content: {
67
+ marginTop: headerHeight - 64,
68
+ height: `calc(100vh - ${headerHeight + (notice ? 32 : 0) + 12}px)`,
69
+ overflow: "hidden"
70
+ }
71
+ },
72
+ placement: "rightTop",
73
+ children: /* @__PURE__ */ jsx(
74
+ "span",
75
+ {
76
+ onClick: (e) => {
115
77
  const menuItem = findMenuItemByKey(menus, String(id));
116
- const menuKeyPath = menuItem?.keyIdPath ? menuItem.keyIdPath.map(id => String(id)) : [String(id)];
117
-
118
- // 调用用户传入的onMenuClick回调,获取返回值(是否应该激活菜单)
78
+ const menuKeyPath = (menuItem == null ? void 0 : menuItem.keyIdPath) ? menuItem.keyIdPath.map((id2) => String(id2)) : [String(id)];
119
79
  let shouldActivate = true;
120
80
  if (onMenuClick) {
121
81
  const result = onMenuClick({
@@ -123,13 +83,10 @@ const FoldMenu = props => {
123
83
  key: String(id),
124
84
  keyPath: menuKeyPath
125
85
  });
126
- // 如果返回 false,表示不应该激活菜单
127
86
  if (result === false) {
128
87
  shouldActivate = false;
129
88
  }
130
89
  }
131
-
132
- // 只有在 shouldActivate 为 true 时才设置选中状态
133
90
  if (shouldActivate) {
134
91
  onSelected({
135
92
  selectedPath: toPath
@@ -137,84 +94,71 @@ const FoldMenu = props => {
137
94
  }
138
95
  },
139
96
  children: LiNode
140
- })
141
- }, `${id}-${name}`) : !collapsed ? /*#__PURE__*/_jsx(Tooltip, {
142
- placement: "right",
143
- title: name,
144
- children: /*#__PURE__*/_jsx("span", {
145
- onClickCapture: e => {
146
- // 查找完整的菜单项数据
147
- const menuItem = findMenuItemByKey(menus, String(id));
148
- const menuKeyPath = menuItem?.keyIdPath ? menuItem.keyIdPath.map(id => String(id)) : [String(id)];
149
-
150
- // 调用用户传入的onMenuClick回调,获取返回值(是否应该激活菜单)
151
- let shouldActivate = true;
152
- if (onMenuClick) {
153
- const result = onMenuClick({
154
- item: menuItem,
155
- key: String(id),
156
- keyPath: menuKeyPath
157
- });
158
- // 如果返回 false,表示不应该激活菜单
159
- if (result === false) {
160
- shouldActivate = false;
161
- }
162
- }
163
-
164
- // 只有在 shouldActivate 为 true 时才设置选中状态
165
- if (shouldActivate) {
166
- onSelected({
167
- selectedPath: toPath
168
- });
169
- } else {
170
- // Capture 阶段拦截,早于 Link 内部导航处理器
171
- e.preventDefault();
172
- e.stopPropagation();
173
- }
174
- },
175
- children: /*#__PURE__*/_jsx(Link, {
176
- to: toPath,
177
- children: LiNode
178
- })
179
- })
180
- }, `${id}-${name}`) : /*#__PURE__*/_jsx("span", {
181
- onClickCapture: e => {
182
- // 查找完整的菜单项数据
183
- const menuItem = findMenuItemByKey(menus, String(id));
184
- const menuKeyPath = menuItem?.keyIdPath ? menuItem.keyIdPath.map(id => String(id)) : [String(id)];
185
-
186
- // 调用用户传入的onMenuClick回调,获取返回值(是否应该激活菜单)
187
- let shouldActivate = true;
188
- if (onMenuClick) {
189
- const result = onMenuClick({
190
- item: menuItem,
191
- key: String(id),
192
- keyPath: menuKeyPath
193
- });
194
- // 如果返回 false,表示不应该激活菜单
195
- if (result === false) {
196
- shouldActivate = false;
197
- }
97
+ }
98
+ )
99
+ },
100
+ `${id}-${name}`
101
+ ) : !collapsed ? /* @__PURE__ */ jsx(Tooltip, { placement: "right", title: name, children: /* @__PURE__ */ jsx(
102
+ "span",
103
+ {
104
+ onClickCapture: (e) => {
105
+ const menuItem = findMenuItemByKey(menus, String(id));
106
+ const menuKeyPath = (menuItem == null ? void 0 : menuItem.keyIdPath) ? menuItem.keyIdPath.map((id2) => String(id2)) : [String(id)];
107
+ let shouldActivate = true;
108
+ if (onMenuClick) {
109
+ const result = onMenuClick({
110
+ item: menuItem,
111
+ key: String(id),
112
+ keyPath: menuKeyPath
113
+ });
114
+ if (result === false) {
115
+ shouldActivate = false;
198
116
  }
199
-
200
- // 只有在 shouldActivate 为 true 时才设置选中状态
201
- if (shouldActivate) {
202
- onSelected({
203
- selectedPath: toPath
204
- });
205
- } else {
206
- // Capture 阶段拦截,早于 Link 内部导航处理器
207
- e.preventDefault();
208
- e.stopPropagation();
117
+ }
118
+ if (shouldActivate) {
119
+ onSelected({
120
+ selectedPath: toPath
121
+ });
122
+ } else {
123
+ e.preventDefault();
124
+ e.stopPropagation();
125
+ }
126
+ },
127
+ children: /* @__PURE__ */ jsx(Link, { to: toPath, children: LiNode })
128
+ }
129
+ ) }, `${id}-${name}`) : /* @__PURE__ */ jsx(
130
+ "span",
131
+ {
132
+ onClickCapture: (e) => {
133
+ const menuItem = findMenuItemByKey(menus, String(id));
134
+ const menuKeyPath = (menuItem == null ? void 0 : menuItem.keyIdPath) ? menuItem.keyIdPath.map((id2) => String(id2)) : [String(id)];
135
+ let shouldActivate = true;
136
+ if (onMenuClick) {
137
+ const result = onMenuClick({
138
+ item: menuItem,
139
+ key: String(id),
140
+ keyPath: menuKeyPath
141
+ });
142
+ if (result === false) {
143
+ shouldActivate = false;
209
144
  }
210
- },
211
- children: /*#__PURE__*/_jsx(Link, {
212
- to: toPath,
213
- children: LiNode
214
- })
215
- }, `${id}-${name}`);
216
- })
217
- })
218
- });
145
+ }
146
+ if (shouldActivate) {
147
+ onSelected({
148
+ selectedPath: toPath
149
+ });
150
+ } else {
151
+ e.preventDefault();
152
+ e.stopPropagation();
153
+ }
154
+ },
155
+ children: /* @__PURE__ */ jsx(Link, { to: toPath, children: LiNode })
156
+ },
157
+ `${id}-${name}`
158
+ );
159
+ }) }) });
160
+ };
161
+ var FoldMenu_default = FoldMenu;
162
+ export {
163
+ FoldMenu_default as default
219
164
  };
220
- export default FoldMenu;