@ant-design/pro-components 3.1.4-0 → 3.1.6-0

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 (214) hide show
  1. package/dist/pro-components.min.js +1 -1
  2. package/es/card/ProCard.js +15 -7
  3. package/es/card/components/Card/index.js +43 -19
  4. package/es/card/components/Card/style.js +12 -1
  5. package/es/card/components/Statistic/index.js +2 -2
  6. package/es/card/components/StatisticCard/index.js +1 -1
  7. package/es/card/typing.d.ts +27 -8
  8. package/es/field/AllProField.d.ts +2 -0
  9. package/es/field/AllProField.js +3 -0
  10. package/es/field/PureProField.d.ts +2 -0
  11. package/es/field/PureProField.js +2 -0
  12. package/es/field/components/Cascader/index.js +8 -1
  13. package/es/field/components/Checkbox/index.js +5 -1
  14. package/es/field/components/ColorPicker/index.d.ts +1 -1
  15. package/es/field/components/DatePicker/index.d.ts +1 -1
  16. package/es/field/components/DatePicker/index.js +13 -1
  17. package/es/field/components/Digit/index.js +20 -3
  18. package/es/field/components/Money/index.js +51 -3
  19. package/es/field/components/Password/index.js +12 -11
  20. package/es/field/components/Radio/index.js +5 -1
  21. package/es/field/components/RangePicker/index.d.ts +1 -1
  22. package/es/field/components/Segmented/index.js +2 -1
  23. package/es/field/components/Select/SearchSelect/index.js +3 -5
  24. package/es/field/components/Select/index.d.ts +1 -1
  25. package/es/field/components/Select/index.js +1 -1
  26. package/es/field/components/Switch/index.js +10 -2
  27. package/es/field/components/Text/index.js +7 -1
  28. package/es/field/components/TextArea/index.js +6 -3
  29. package/es/field/components/TimePicker/index.js +10 -1
  30. package/es/field/components/TreeSelect/index.d.ts +2 -12
  31. package/es/field/components/TreeSelect/index.js +31 -17
  32. package/es/form/BaseForm/BaseForm.js +4 -3
  33. package/es/form/BaseForm/Submitter/index.d.ts +1 -1
  34. package/es/form/components/Digit/DigitRange.js +5 -2
  35. package/es/form/components/Digit/index.js +7 -2
  36. package/es/form/components/FormItem/FormItemRender/index.d.ts +1 -1
  37. package/es/form/components/FormItem/FormItemRender/index.js +10 -2
  38. package/es/form/components/FormItem/Group/index.js +12 -2
  39. package/es/form/components/List/ListContainer.js +2 -1
  40. package/es/form/components/Select/index.js +11 -1
  41. package/es/form/layouts/DrawerForm/index.d.ts +4 -4
  42. package/es/form/layouts/DrawerForm/index.js +1 -1
  43. package/es/form/layouts/LightFilter/index.js +22 -31
  44. package/es/form/layouts/LoginForm/index.js +10 -9
  45. package/es/form/layouts/LoginFormPage/index.js +17 -16
  46. package/es/form/layouts/ModalForm/index.d.ts +2 -2
  47. package/es/form/layouts/ProForm/index.d.ts +1 -1
  48. package/es/form/layouts/QueryFilter/Actions.js +2 -1
  49. package/es/form/layouts/QueryFilter/index.js +40 -23
  50. package/es/form/layouts/StepsForm/index.js +2 -2
  51. package/es/layout/ProLayout.d.ts +3 -3
  52. package/es/layout/ProLayout.js +13 -25
  53. package/es/layout/components/AppsLogoComponents/DefaultContent.js +6 -5
  54. package/es/layout/components/AppsLogoComponents/SimpleContent.js +6 -5
  55. package/es/layout/components/FooterToolbar/index.d.ts +1 -1
  56. package/es/layout/components/FooterToolbar/index.js +2 -2
  57. package/es/layout/components/GlobalFooter/index.js +3 -3
  58. package/es/layout/components/GlobalHeader/ActionsContent.js +6 -6
  59. package/es/layout/components/GlobalHeader/index.js +1 -1
  60. package/es/layout/components/GridContent/index.js +1 -1
  61. package/es/layout/components/Help/ProHelpPanel.js +11 -10
  62. package/es/layout/components/PageContainer/index.js +9 -9
  63. package/es/layout/components/PageHeader/index.js +10 -10
  64. package/es/layout/components/SettingDrawer/BlockCheckbox.js +2 -2
  65. package/es/layout/components/SettingDrawer/LayoutChange.js +3 -2
  66. package/es/layout/components/SettingDrawer/RegionalChange.js +3 -2
  67. package/es/layout/components/SettingDrawer/ThemeColor.js +3 -2
  68. package/es/layout/components/SettingDrawer/index.js +5 -4
  69. package/es/layout/components/SiderMenu/BaseMenu.js +3 -3
  70. package/es/layout/components/SiderMenu/SiderMenu.js +5 -5
  71. package/es/layout/components/TopNavHeader/index.js +3 -3
  72. package/es/layout/utils/getBreadcrumbProps.js +1 -1
  73. package/es/list/Item.d.ts +3 -3
  74. package/es/list/Item.js +8 -1
  75. package/es/list/ListView.js +1 -2
  76. package/es/list/ProListBase.d.ts +1 -1
  77. package/es/list/ProListBase.js +43 -37
  78. package/es/list/style/index.js +13 -0
  79. package/es/provider/index.d.ts +2 -2
  80. package/es/table/Table.js +14 -5
  81. package/es/table/components/Alert/index.js +6 -5
  82. package/es/table/components/ColumnSetting/index.js +9 -9
  83. package/es/table/components/DragSortTable/index.js +8 -4
  84. package/es/table/components/EditableTable/index.d.ts +1 -1
  85. package/es/table/components/EditableTable/index.js +5 -70
  86. package/es/table/components/ListToolBar/HeaderMenu.d.ts +1 -0
  87. package/es/table/components/ListToolBar/HeaderMenu.js +4 -3
  88. package/es/table/components/ListToolBar/index.js +15 -12
  89. package/es/table/components/ListToolBar/style.js +2 -2
  90. package/es/table/components/ToolBar/DensityIcon.d.ts +2 -2
  91. package/es/table/components/ToolBar/DensityIcon.js +6 -3
  92. package/es/table/components/ToolBar/FullscreenIcon.d.ts +1 -1
  93. package/es/table/components/ToolBar/FullscreenIcon.js +11 -5
  94. package/es/table/useFetchData.js +4 -1
  95. package/es/table/utils/cellRenderToFromItem.js +1 -1
  96. package/es/table/utils/useDragSort.js +1 -1
  97. package/es/utils/components/DropdownFooter/index.d.ts +1 -1
  98. package/es/utils/components/FieldLabel/index.js +1 -1
  99. package/es/utils/components/FilterDropdown/index.d.ts +1 -1
  100. package/es/utils/components/FilterDropdown/index.js +1 -1
  101. package/es/utils/components/InlineErrorFormItem/index.js +5 -4
  102. package/es/utils/components/LabelIconTip/index.js +2 -2
  103. package/es/utils/hooks/useFetchData/index.js +0 -2
  104. package/es/utils/isUrl/index.js +1 -1
  105. package/es/utils/proFieldParsingText/index.d.ts +2 -2
  106. package/es/utils/proFieldParsingText/index.js +2 -2
  107. package/guidelines/components/pro-card.md +5 -4
  108. package/lib/card/ProCard.js +15 -7
  109. package/lib/card/components/Card/index.js +43 -19
  110. package/lib/card/components/Card/style.js +12 -1
  111. package/lib/card/components/Statistic/index.js +2 -2
  112. package/lib/card/components/StatisticCard/index.js +1 -1
  113. package/lib/card/typing.d.ts +27 -8
  114. package/lib/field/AllProField.d.ts +2 -0
  115. package/lib/field/AllProField.js +3 -0
  116. package/lib/field/PureProField.d.ts +2 -0
  117. package/lib/field/PureProField.js +2 -0
  118. package/lib/field/components/Cascader/index.js +8 -1
  119. package/lib/field/components/Checkbox/index.js +5 -1
  120. package/lib/field/components/ColorPicker/index.d.ts +1 -1
  121. package/lib/field/components/DatePicker/index.d.ts +1 -1
  122. package/lib/field/components/DatePicker/index.js +13 -1
  123. package/lib/field/components/Digit/index.js +20 -3
  124. package/lib/field/components/Money/index.js +50 -2
  125. package/lib/field/components/Password/index.js +11 -10
  126. package/lib/field/components/Percent/util.d.ts +1 -1
  127. package/lib/field/components/Radio/index.js +5 -1
  128. package/lib/field/components/RangePicker/index.d.ts +1 -1
  129. package/lib/field/components/Segmented/index.js +2 -1
  130. package/lib/field/components/Select/SearchSelect/index.js +2 -4
  131. package/lib/field/components/Select/index.d.ts +1 -1
  132. package/lib/field/components/Select/index.js +1 -1
  133. package/lib/field/components/Switch/index.js +10 -2
  134. package/lib/field/components/Text/index.js +7 -1
  135. package/lib/field/components/TextArea/index.js +6 -3
  136. package/lib/field/components/TimePicker/index.js +10 -1
  137. package/lib/field/components/TreeSelect/index.d.ts +2 -12
  138. package/lib/field/components/TreeSelect/index.js +30 -16
  139. package/lib/form/BaseForm/BaseForm.js +4 -3
  140. package/lib/form/BaseForm/Submitter/index.d.ts +1 -1
  141. package/lib/form/components/Digit/DigitRange.js +5 -2
  142. package/lib/form/components/Digit/index.js +7 -2
  143. package/lib/form/components/FormItem/FormItemRender/index.d.ts +1 -1
  144. package/lib/form/components/FormItem/FormItemRender/index.js +10 -2
  145. package/lib/form/components/FormItem/Group/index.js +12 -2
  146. package/lib/form/components/List/ListContainer.js +2 -1
  147. package/lib/form/components/Select/index.js +11 -1
  148. package/lib/form/layouts/DrawerForm/index.d.ts +4 -4
  149. package/lib/form/layouts/DrawerForm/index.js +1 -1
  150. package/lib/form/layouts/LightFilter/index.js +21 -30
  151. package/lib/form/layouts/LoginForm/index.js +10 -9
  152. package/lib/form/layouts/LoginFormPage/index.js +17 -16
  153. package/lib/form/layouts/ModalForm/index.d.ts +2 -2
  154. package/lib/form/layouts/ProForm/index.d.ts +1 -1
  155. package/lib/form/layouts/QueryFilter/Actions.js +2 -1
  156. package/lib/form/layouts/QueryFilter/index.js +39 -22
  157. package/lib/form/layouts/StepsForm/index.js +2 -2
  158. package/lib/layout/ProLayout.d.ts +3 -3
  159. package/lib/layout/ProLayout.js +13 -25
  160. package/lib/layout/components/AppsLogoComponents/DefaultContent.js +6 -5
  161. package/lib/layout/components/AppsLogoComponents/SimpleContent.js +6 -5
  162. package/lib/layout/components/FooterToolbar/index.d.ts +1 -1
  163. package/lib/layout/components/FooterToolbar/index.js +2 -2
  164. package/lib/layout/components/GlobalFooter/index.js +3 -3
  165. package/lib/layout/components/GlobalHeader/ActionsContent.js +6 -6
  166. package/lib/layout/components/GlobalHeader/index.js +1 -1
  167. package/lib/layout/components/GridContent/index.js +1 -1
  168. package/lib/layout/components/Help/ProHelpPanel.js +11 -10
  169. package/lib/layout/components/PageContainer/index.js +9 -9
  170. package/lib/layout/components/PageHeader/index.js +10 -10
  171. package/lib/layout/components/SettingDrawer/BlockCheckbox.js +2 -2
  172. package/lib/layout/components/SettingDrawer/LayoutChange.js +3 -2
  173. package/lib/layout/components/SettingDrawer/RegionalChange.js +3 -2
  174. package/lib/layout/components/SettingDrawer/ThemeColor.js +3 -2
  175. package/lib/layout/components/SettingDrawer/index.js +5 -4
  176. package/lib/layout/components/SiderMenu/BaseMenu.js +3 -3
  177. package/lib/layout/components/SiderMenu/SiderMenu.js +5 -5
  178. package/lib/layout/components/TopNavHeader/index.js +3 -3
  179. package/lib/layout/utils/getBreadcrumbProps.js +1 -1
  180. package/lib/list/Item.d.ts +3 -3
  181. package/lib/list/Item.js +8 -1
  182. package/lib/list/ListView.js +1 -2
  183. package/lib/list/ProListBase.d.ts +1 -1
  184. package/lib/list/ProListBase.js +42 -36
  185. package/lib/list/style/index.js +13 -0
  186. package/lib/provider/index.d.ts +2 -2
  187. package/lib/table/Table.js +14 -5
  188. package/lib/table/components/Alert/index.js +6 -5
  189. package/lib/table/components/ColumnSetting/index.js +9 -9
  190. package/lib/table/components/DragSortTable/index.js +8 -4
  191. package/lib/table/components/EditableTable/index.d.ts +1 -1
  192. package/lib/table/components/EditableTable/index.js +5 -70
  193. package/lib/table/components/ListToolBar/HeaderMenu.d.ts +1 -0
  194. package/lib/table/components/ListToolBar/HeaderMenu.js +4 -3
  195. package/lib/table/components/ListToolBar/index.js +15 -12
  196. package/lib/table/components/ListToolBar/style.js +2 -2
  197. package/lib/table/components/ToolBar/DensityIcon.d.ts +2 -2
  198. package/lib/table/components/ToolBar/DensityIcon.js +6 -3
  199. package/lib/table/components/ToolBar/FullscreenIcon.d.ts +1 -1
  200. package/lib/table/components/ToolBar/FullscreenIcon.js +11 -5
  201. package/lib/table/useFetchData.js +4 -1
  202. package/lib/table/utils/cellRenderToFromItem.js +1 -1
  203. package/lib/table/utils/useDragSort.js +1 -1
  204. package/lib/utils/components/DropdownFooter/index.d.ts +1 -1
  205. package/lib/utils/components/FieldLabel/index.js +1 -1
  206. package/lib/utils/components/FilterDropdown/index.d.ts +1 -1
  207. package/lib/utils/components/FilterDropdown/index.js +1 -1
  208. package/lib/utils/components/InlineErrorFormItem/index.js +5 -4
  209. package/lib/utils/components/LabelIconTip/index.js +2 -2
  210. package/lib/utils/hooks/useFetchData/index.js +0 -2
  211. package/lib/utils/isUrl/index.js +1 -1
  212. package/lib/utils/proFieldParsingText/index.d.ts +2 -2
  213. package/lib/utils/proFieldParsingText/index.js +2 -2
  214. package/package.json +31 -30
@@ -41,7 +41,7 @@ const renderFooter = ({
41
41
  }) => {
42
42
  if (Array.isArray(tabList) || tabBarExtraContent) {
43
43
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Tabs, {
44
- className: `${prefixedClassName}-tabs ${hashId}`.trim(),
44
+ className: (0, _clsx.clsx)(`${prefixedClassName}-tabs`, hashId),
45
45
  activeKey: tabActiveKey,
46
46
  onChange: key => {
47
47
  if (onTabChange) {
@@ -64,16 +64,16 @@ const renderPageHeader = (content, extraContent, prefixedClassName, hashId) => {
64
64
  return null;
65
65
  }
66
66
  return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
67
- className: `${prefixedClassName}-detail ${hashId}`.trim(),
67
+ className: (0, _clsx.clsx)(`${prefixedClassName}-detail`, hashId),
68
68
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
69
- className: `${prefixedClassName}-main ${hashId}`.trim(),
69
+ className: (0, _clsx.clsx)(`${prefixedClassName}-main`, hashId),
70
70
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
71
- className: `${prefixedClassName}-row ${hashId}`.trim(),
71
+ className: (0, _clsx.clsx)(`${prefixedClassName}-row`, hashId),
72
72
  children: [content && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
73
- className: `${prefixedClassName}-content ${hashId}`.trim(),
73
+ className: (0, _clsx.clsx)(`${prefixedClassName}-content`, hashId),
74
74
  children: content
75
75
  }), extraContent && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
76
- className: `${prefixedClassName}-extraContent ${hashId}`.trim(),
76
+ className: (0, _clsx.clsx)(`${prefixedClassName}-extraContent`, hashId),
77
77
  children: extraContent
78
78
  })]
79
79
  })
@@ -161,7 +161,7 @@ const memoRenderPageHeader = props => {
161
161
  }
162
162
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_PageHeader.PageHeader, {
163
163
  ...pageHeaderProps,
164
- className: `${prefixedClassName}-warp-page-header ${hashId}`.trim(),
164
+ className: (0, _clsx.clsx)(`${prefixedClassName}-warp-page-header`, hashId),
165
165
  breadcrumb: breadcrumbRender === false ? undefined : {
166
166
  ...pageHeaderProps.breadcrumb,
167
167
  ...value.breadcrumbProps
@@ -282,9 +282,9 @@ const PageContainerBase = props => {
282
282
  (0, _jsxRuntime.jsx)(_antd.Affix, {
283
283
  offsetTop: value.hasHeader && value.fixedHeader ? token.layout?.header?.heightLayoutHeader : 1,
284
284
  ...affixProps,
285
- className: `${basePageContainer}-affix ${hashId}`.trim(),
285
+ className: (0, _clsx.clsx)(`${basePageContainer}-affix`, hashId),
286
286
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
287
- className: `${basePageContainer}-warp ${hashId}`.trim(),
287
+ className: (0, _clsx.clsx)(`${basePageContainer}-warp`, hashId),
288
288
  children: pageHeaderDom
289
289
  })
290
290
  }) : pageHeaderDom, renderContentDom && /*#__PURE__*/(0, _jsxRuntime.jsx)(_GridContent.GridContent, {
@@ -17,13 +17,13 @@ const renderBack = (prefixCls, hashId, backIcon, onBack) => {
17
17
  return null;
18
18
  }
19
19
  return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
20
- className: `${prefixCls}-back ${hashId}`.trim(),
20
+ className: (0, _clsx.clsx)(`${prefixCls}-back`, hashId),
21
21
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
22
22
  role: "button",
23
23
  onClick: e => {
24
24
  onBack?.(e);
25
25
  },
26
- className: `${prefixCls}-back-button ${hashId}`.trim(),
26
+ className: (0, _clsx.clsx)(`${prefixCls}-back-button`, hashId),
27
27
  "aria-label": "back",
28
28
  children: backIcon
29
29
  })
@@ -61,26 +61,26 @@ const renderTitle = (prefixCls, props, direction = 'ltr', hashId) => {
61
61
  const backIconDom = renderBack(prefixCls, hashId, backIcon, onBack);
62
62
  const hasTitle = backIconDom || avatar || hasHeading;
63
63
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
64
- className: headingPrefixCls + ' ' + hashId,
64
+ className: (0, _clsx.clsx)(headingPrefixCls, hashId),
65
65
  children: [hasTitle && /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
66
- className: `${headingPrefixCls}-left ${hashId}`.trim(),
66
+ className: (0, _clsx.clsx)(`${headingPrefixCls}-left`, hashId),
67
67
  children: [backIconDom, avatar && /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Avatar, {
68
68
  className: (0, _clsx.clsx)(`${headingPrefixCls}-avatar`, hashId, avatar.className),
69
69
  ...avatar
70
70
  }), title && /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
71
- className: `${headingPrefixCls}-title ${hashId}`.trim(),
71
+ className: (0, _clsx.clsx)(`${headingPrefixCls}-title`, hashId),
72
72
  title: typeof title === 'string' ? title : undefined,
73
73
  children: title
74
74
  }), subTitle && /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
75
- className: `${headingPrefixCls}-sub-title ${hashId}`.trim(),
75
+ className: (0, _clsx.clsx)(`${headingPrefixCls}-sub-title`, hashId),
76
76
  title: typeof subTitle === 'string' ? subTitle : undefined,
77
77
  children: subTitle
78
78
  }), tags && /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
79
- className: `${headingPrefixCls}-tags ${hashId}`.trim(),
79
+ className: (0, _clsx.clsx)(`${headingPrefixCls}-tags`, hashId),
80
80
  children: tags
81
81
  })]
82
82
  }), extra && /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
83
- className: `${headingPrefixCls}-extra ${hashId}`.trim(),
83
+ className: (0, _clsx.clsx)(`${headingPrefixCls}-extra`, hashId),
84
84
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Space, {
85
85
  children: extra
86
86
  })
@@ -90,14 +90,14 @@ const renderTitle = (prefixCls, props, direction = 'ltr', hashId) => {
90
90
  const renderFooter = (prefixCls, footer, hashId) => {
91
91
  if (footer) {
92
92
  return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
93
- className: `${prefixCls}-footer ${hashId}`.trim(),
93
+ className: (0, _clsx.clsx)(`${prefixCls}-footer`, hashId),
94
94
  children: footer
95
95
  });
96
96
  }
97
97
  return null;
98
98
  };
99
99
  const renderChildren = (prefixCls, children, hashId) => /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
100
- className: `${prefixCls}-content ${hashId}`.trim(),
100
+ className: (0, _clsx.clsx)(`${prefixCls}-content`, hashId),
101
101
  children: children
102
102
  });
103
103
  const PageHeader = props => {
@@ -25,12 +25,12 @@ const BlockCheckbox = ({
25
25
  className: (0, _clsx.clsx)(hashId, `${baseClassName}-item`, `${baseClassName}-item-${item.key}`, `${baseClassName}-${configType}-item`),
26
26
  onClick: () => onChange(item.key),
27
27
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.CheckOutlined, {
28
- className: `${baseClassName}-selectIcon ${hashId}`.trim(),
28
+ className: (0, _clsx.clsx)(`${baseClassName}-selectIcon`, hashId),
29
29
  style: {
30
30
  display: value === item.key ? 'block' : 'none'
31
31
  }
32
32
  }), item?.icon ? /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
33
- className: `${baseClassName}-icon ${hashId}`.trim(),
33
+ className: (0, _clsx.clsx)(`${baseClassName}-icon`, hashId),
34
34
  children: item.icon
35
35
  }) : null]
36
36
  })
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.renderLayoutSettingItem = exports.LayoutSetting = void 0;
8
8
  var _antd = require("antd");
9
+ var _clsx = require("clsx");
9
10
  var _react = _interopRequireDefault(require("react"));
10
11
  var _defaultSettings = require("../../defaultSettings");
11
12
  var _index = require("./index");
@@ -44,7 +45,7 @@ const LayoutSetting = ({
44
45
  fixSiderbar
45
46
  } = settings || _defaultSettings.defaultSettings;
46
47
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.List, {
47
- className: `${prefixCls}-list ${hashId}`.trim(),
48
+ className: (0, _clsx.clsx)(`${prefixCls}-list`, hashId),
48
49
  split: false,
49
50
  dataSource: [{
50
51
  title: formatMessage({
@@ -54,7 +55,7 @@ const LayoutSetting = ({
54
55
  action: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_antd.Select, {
55
56
  value: contentWidth || 'Fixed',
56
57
  size: "small",
57
- className: `content-width ${hashId}`.trim(),
58
+ className: (0, _clsx.clsx)('content-width', hashId),
58
59
  onSelect: value => {
59
60
  changeSetting('contentWidth', value);
60
61
  },
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.RegionalSetting = void 0;
8
8
  var _antd = require("antd");
9
+ var _clsx = require("clsx");
9
10
  var _react = _interopRequireDefault(require("react"));
10
11
  var _index = require("./index");
11
12
  var _LayoutChange = require("./LayoutChange");
@@ -19,7 +20,7 @@ const RegionalSetting = ({
19
20
  const formatMessage = (0, _index.getFormatMessage)();
20
21
  const regionalSetting = ['header', 'footer', 'menu', 'menuHeader'];
21
22
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.List, {
22
- className: `${prefixCls}-list ${hashId}`.trim(),
23
+ className: (0, _clsx.clsx)(`${prefixCls}-list`, hashId),
23
24
  split: false,
24
25
  renderItem: _LayoutChange.renderLayoutSettingItem,
25
26
  dataSource: regionalSetting.map(key => {
@@ -29,7 +30,7 @@ const RegionalSetting = ({
29
30
  }),
30
31
  action: /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Switch, {
31
32
  size: "small",
32
- className: `regional-${key} ${hashId}`.trim(),
33
+ className: (0, _clsx.clsx)(`regional-${key}`, hashId),
33
34
  checked: settings[`${key}Render`] || settings[`${key}Render`] === undefined,
34
35
  onChange: checked => changeSetting(`${key}Render`, checked === true ? undefined : false)
35
36
  })
@@ -7,6 +7,7 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.ThemeColor = void 0;
8
8
  var _icons = require("@ant-design/icons");
9
9
  var _antd = require("antd");
10
+ var _clsx = require("clsx");
10
11
  var _react = _interopRequireDefault(require("react"));
11
12
  var _jsxRuntime = require("react/jsx-runtime");
12
13
  const Tag = /*#__PURE__*/_react.default.forwardRef(({
@@ -34,7 +35,7 @@ const ThemeColor = ({
34
35
  }
35
36
  const baseClassName = `${prefixCls}-theme-color`;
36
37
  return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
37
- className: `${baseClassName} ${hashId}`.trim(),
38
+ className: (0, _clsx.clsx)(baseClassName, hashId),
38
39
  children: colorList?.map(({
39
40
  key,
40
41
  color,
@@ -46,7 +47,7 @@ const ThemeColor = ({
46
47
  id: `app.setting.themecolor.${key}`
47
48
  }),
48
49
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(Tag, {
49
- className: `${baseClassName}-block ${hashId}`.trim(),
50
+ className: (0, _clsx.clsx)(`${baseClassName}-block`, hashId),
50
51
  color: color,
51
52
  check: value === color,
52
53
  onClick: () => onChange && onChange(color)
@@ -9,6 +9,7 @@ var _icons = require("@ant-design/icons");
9
9
  var _util = require("@rc-component/util");
10
10
  var _useParams = require("@umijs/use-params");
11
11
  var _antd = require("antd");
12
+ var _clsx = require("clsx");
12
13
  var _react = _interopRequireWildcard(require("react"));
13
14
  var _utils = require("../../../utils");
14
15
  var _defaultSettings = require("../../defaultSettings");
@@ -32,7 +33,7 @@ const Body = ({
32
33
  marginBlockEnd: 12
33
34
  },
34
35
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("h3", {
35
- className: `${prefixCls}-body-title ${hashId}`.trim(),
36
+ className: (0, _clsx.clsx)(`${prefixCls}-body-title`, hashId),
36
37
  children: title
37
38
  }), children]
38
39
  });
@@ -294,7 +295,7 @@ const SettingDrawer = props => {
294
295
  } = (0, _index.useStyle)(baseClassName);
295
296
  return wrapSSR( /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
296
297
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
297
- className: `${baseClassName}-handle ${hashId}`.trim(),
298
+ className: (0, _clsx.clsx)(`${baseClassName}-handle`, hashId),
298
299
  onClick: () => setOpen(!open),
299
300
  style: {
300
301
  width: 48,
@@ -323,7 +324,7 @@ const SettingDrawer = props => {
323
324
  },
324
325
  ...drawerProps,
325
326
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
326
- className: `${baseClassName}-drawer-content ${hashId}`.trim(),
327
+ className: (0, _clsx.clsx)(`${baseClassName}-drawer-content`, hashId),
327
328
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(Body, {
328
329
  title: formatMessage({
329
330
  id: 'app.setting.pagestyle',
@@ -450,7 +451,7 @@ const SettingDrawer = props => {
450
451
  id: 'app.setting.othersettings'
451
452
  }),
452
453
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.List, {
453
- className: `${baseClassName}-list ${hashId}`.trim(),
454
+ className: (0, _clsx.clsx)(`${baseClassName}-list`, hashId),
454
455
  split: false,
455
456
  size: "small",
456
457
  renderItem: _LayoutChange.renderLayoutSettingItem,
@@ -112,7 +112,7 @@ class MenuUtil {
112
112
  [`${baseClassName}-item-collapsed-show-title`]: menu?.collapsedShowTitle && collapsed
113
113
  }),
114
114
  children: [menuType === 'group' && collapsed ? null : shouldHasIcon && iconDom ? /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
115
- className: `${baseClassName}-item-icon ${this.props?.hashId}`.trim(),
115
+ className: (0, _clsx.clsx)(`${baseClassName}-item-icon`, this.props?.hashId),
116
116
  children: iconDom
117
117
  }) : defaultIcon, /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
118
118
  className: (0, _clsx.clsx)(`${baseClassName}-item-text`, this.props?.hashId, {
@@ -226,7 +226,7 @@ class MenuUtil {
226
226
  [`${baseClassName}-item-collapsed-show-title`]: menu?.collapsedShowTitle && collapsed
227
227
  }),
228
228
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
229
- className: `${baseClassName}-item-icon ${this.props?.hashId}`.trim(),
229
+ className: (0, _clsx.clsx)(`${baseClassName}-item-icon`, this.props?.hashId),
230
230
  style: {
231
231
  display: defaultIcon === null && !icon ? 'none' : ''
232
232
  },
@@ -256,7 +256,7 @@ class MenuUtil {
256
256
  [`${baseClassName}-item-collapsed-show-title`]: menu?.collapsedShowTitle && collapsed
257
257
  }),
258
258
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
259
- className: `${baseClassName}-item-icon ${this.props?.hashId}`.trim(),
259
+ className: (0, _clsx.clsx)(`${baseClassName}-item-icon`, this.props?.hashId),
260
260
  style: {
261
261
  display: defaultIcon === null && !icon ? 'none' : ''
262
262
  },
@@ -130,7 +130,7 @@ const SiderMenu = props => {
130
130
  style: {
131
131
  width: '100%'
132
132
  },
133
- className: `${baseClassName}-menu ${hashId}`.trim()
133
+ className: (0, _clsx.clsx)(`${baseClassName}-menu`, hashId)
134
134
  }), [baseClassName, hashId, menuContentRender, onOpenChange, props]);
135
135
  const linksMenuItems = (links || []).map((node, index) => ({
136
136
  className: `${baseClassName}-link`,
@@ -170,7 +170,7 @@ const SiderMenu = props => {
170
170
  className: (0, _clsx.clsx)([`${baseClassName}-actions-list`, collapsed && `${baseClassName}-actions-list-collapsed`, hashId]),
171
171
  children: [actionsRender?.(props)].flat(1).map((item, index) => {
172
172
  return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
173
- className: `${baseClassName}-actions-list-item ${hashId}`.trim(),
173
+ className: (0, _clsx.clsx)(`${baseClassName}-actions-list-item`, hashId),
174
174
  children: item
175
175
  }, index);
176
176
  })
@@ -238,10 +238,10 @@ const SiderMenu = props => {
238
238
  }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(SiderContext.Provider, {
239
239
  value: {},
240
240
  children: [links ? /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
241
- className: `${baseClassName}-links ${hashId}`.trim(),
241
+ className: (0, _clsx.clsx)(`${baseClassName}-links`, hashId),
242
242
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Menu, {
243
243
  inlineIndent: 16,
244
- className: `${baseClassName}-link-menu ${hashId}`.trim(),
244
+ className: (0, _clsx.clsx)(`${baseClassName}-link-menu`, hashId),
245
245
  selectedKeys: [],
246
246
  openKeys: [],
247
247
  theme: theme,
@@ -284,7 +284,7 @@ const SiderMenu = props => {
284
284
  width: siderWidth,
285
285
  className: (0, _clsx.clsx)(siderClassName, hashId, hideMenuWhenCollapsedClassName),
286
286
  children: [hideMenuWhenCollapsedClassName ? /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
287
- className: `${baseClassName}-hide-when-collapsed ${hashId}`.trim(),
287
+ className: (0, _clsx.clsx)(`${baseClassName}-hide-when-collapsed`, hashId),
288
288
  style: {
289
289
  height: '100%',
290
290
  width: '100%',
@@ -87,7 +87,7 @@ const TopNavHeader = props => {
87
87
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_BaseMenu.BaseMenu, {
88
88
  theme: dark ? 'dark' : 'light',
89
89
  ...props,
90
- className: `${prefixCls}-base-menu ${hashId}`.trim(),
90
+ className: (0, _clsx.clsx)(`${prefixCls}-base-menu`, hashId),
91
91
  ...props.menuProps,
92
92
  style: {
93
93
  width: '100%',
@@ -119,7 +119,7 @@ const TopNavHeader = props => {
119
119
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_AppsLogoComponents.AppsLogoComponents, {
120
120
  ...props
121
121
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
122
- className: `${prefixCls}-logo ${hashId}`.trim(),
122
+ className: (0, _clsx.clsx)(`${prefixCls}-logo`, hashId),
123
123
  id: "logo",
124
124
  children: headerDom
125
125
  }, "logo")]
@@ -127,7 +127,7 @@ const TopNavHeader = props => {
127
127
  style: {
128
128
  flex: 1
129
129
  },
130
- className: `${prefixCls}-menu ${hashId}`.trim(),
130
+ className: (0, _clsx.clsx)(`${prefixCls}-menu`, hashId),
131
131
  children: contentDom
132
132
  }), (actionsRender || props.avatarProps) && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ActionsContent.ActionsContent, {
133
133
  ...props,
@@ -48,7 +48,7 @@ const getBreadcrumb = (breadcrumbMap, url) => {
48
48
  try {
49
49
  if (path?.startsWith('http')) return false;
50
50
  return (0, _pathToRegexp.match)(path.replace('?', ''))(url);
51
- } catch (error) {
51
+ } catch (_error) {
52
52
  return false;
53
53
  }
54
54
  }
@@ -6,7 +6,7 @@ import type { ListGridType } from './ProListBase';
6
6
  export type RenderExpandIconProps<RecordType> = {
7
7
  prefixCls: string;
8
8
  expanded: boolean;
9
- expandIcon: React.ReactNode | JSX.Element | ((props: {
9
+ expandIcon: React.ReactNode | React.JSX.Element | ((props: {
10
10
  onExpand: (expanded: boolean) => void;
11
11
  expanded: boolean;
12
12
  record: RecordType;
@@ -48,8 +48,8 @@ export type ItemProps<RecordType> = {
48
48
  record: RecordType;
49
49
  onRow?: GetComponentProps<RecordType>;
50
50
  onItem?: GetComponentProps<RecordType>;
51
- itemHeaderRender?: ((item: RecordType, index: number, defaultDom: JSX.Element | null) => React.ReactNode) | false;
52
- itemTitleRender?: ((item: RecordType, index: number, defaultDom: JSX.Element | null) => React.ReactNode) | false;
51
+ itemHeaderRender?: ((item: RecordType, index: number, defaultDom: React.JSX.Element | null) => React.ReactNode) | false;
52
+ itemTitleRender?: ((item: RecordType, index: number, defaultDom: React.JSX.Element | null) => React.ReactNode) | false;
53
53
  };
54
54
  declare function ProListItem<RecordType>(props: ItemProps<RecordType>): import("react/jsx-runtime").JSX.Element;
55
55
  export default ProListItem;
package/lib/list/Item.js CHANGED
@@ -226,7 +226,14 @@ function ProListItem(props) {
226
226
  expanded,
227
227
  record
228
228
  })]
229
- }), headerDom, actionsArray]
229
+ }), headerDom, actionsArray && actionsArray.length > 0 ? /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
230
+ className: (0, _clsx.clsx)(`${prefixCls}-item-action`, hashId),
231
+ onClick: e => e.stopPropagation(),
232
+ children: actionsArray.map((action, i) => /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
233
+ className: (0, _clsx.clsx)(`${prefixCls}-item-action-item`, hashId),
234
+ children: action
235
+ }, i))
236
+ }) : null]
230
237
  }), needExpanded && (content || expandedRowDom) && /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
231
238
  className: (0, _clsx.clsx)(`${className}-content`, hashId),
232
239
  children: [content, expandedRowRender && rowSupportExpand && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
@@ -67,8 +67,7 @@ function ListView(props) {
67
67
  current = 1,
68
68
  pageSize = 10
69
69
  } = mergedPagination;
70
- const currentPageData = dataSource.slice((current - 1) * pageSize, current * pageSize);
71
- return currentPageData;
70
+ return dataSource.slice((current - 1) * pageSize, current * pageSize);
72
71
  }, [dataSource, mergedPagination, pagination]);
73
72
  const prefixCls = getPrefixCls('pro-list', customizePrefixCls);
74
73
 
@@ -35,7 +35,7 @@ export interface ListProps<T = any> {
35
35
  pagination?: PaginationConfig | false;
36
36
  prefixCls?: string;
37
37
  rowKey?: ((item: T) => React.Key) | keyof T;
38
- renderItem?: (item: T, index: number, defaultDom: JSX.Element | null) => React.ReactNode;
38
+ renderItem?: (item: T, index: number, defaultDom: React.JSX.Element | null) => React.ReactNode;
39
39
  size?: ListSize;
40
40
  split?: boolean;
41
41
  header?: React.ReactNode;
@@ -8,7 +8,6 @@ exports.ProListItemMeta = exports.ProListItem = exports.ProListContext = exports
8
8
  var _antd = require("antd");
9
9
  var _clsx = require("clsx");
10
10
  var _react = _interopRequireWildcard(require("react"));
11
- var _useMediaQuery = require("../utils/useMediaQuery");
12
11
  var _jsxRuntime = require("react/jsx-runtime");
13
12
  /**
14
13
  * 内部 List 容器与 List.Item / List.Item.Meta 实现,用于替代 antd List(antd List 已停止维护)
@@ -186,29 +185,41 @@ const ProListContainerInner = /*#__PURE__*/_react.default.forwardRef(function Pr
186
185
  children: renderItem(item, index, null)
187
186
  }, key);
188
187
  };
189
- const breakpoint = (0, _useMediaQuery.useBreakpoint)();
188
+ const rawScreens = _antd.Grid.useBreakpoint();
189
+ const defaultScreens = {
190
+ xs: true,
191
+ sm: true,
192
+ md: true,
193
+ lg: false,
194
+ xl: false,
195
+ xxl: false
196
+ };
197
+ const screens = (0, _react.useMemo)(() => {
198
+ if (rawScreens == null) return defaultScreens;
199
+ return {
200
+ xxl: rawScreens.xxl ?? defaultScreens.xxl,
201
+ xl: rawScreens.xl ?? defaultScreens.xl,
202
+ lg: rawScreens.lg ?? defaultScreens.lg,
203
+ md: rawScreens.md ?? defaultScreens.md,
204
+ sm: rawScreens.sm ?? defaultScreens.sm,
205
+ xs: rawScreens.xs ?? defaultScreens.xs
206
+ };
207
+ }, [rawScreens]);
190
208
 
191
209
  /**
192
- * 根据当前断点获取列数
210
+ * 根据当前断点获取列数,与 antd Grid/Card 响应式逻辑一致
193
211
  */
194
212
  const getResponsiveColumn = (0, _react.useMemo)(() => {
195
213
  if (!grid) return 1;
196
- const breakpoints = ['xxl', 'xl', 'lg', 'md', 'sm', 'xs'];
197
- const currentBreakpoint = breakpoint || 'md';
198
- const startIndex = breakpoints.indexOf(currentBreakpoint);
199
-
200
- // 从当前断点开始,向下查找第一个已定义的列数
201
- for (let i = startIndex; i < breakpoints.length; i++) {
202
- const bp = breakpoints[i];
203
- const colCount = grid[bp];
204
- if (colCount !== undefined) {
205
- return colCount;
214
+ const responsiveArray = ['xxl', 'xl', 'lg', 'md', 'sm', 'xs'];
215
+ for (let i = 0; i < responsiveArray.length; i += 1) {
216
+ const breakpoint = responsiveArray[i];
217
+ if (screens[breakpoint] && grid[breakpoint] !== undefined) {
218
+ return grid[breakpoint];
206
219
  }
207
220
  }
208
-
209
- // 最后使用 column 默认值,确保不为 0(避免除以零)
210
221
  return grid.column || 1;
211
- }, [grid, breakpoint]);
222
+ }, [grid, screens]);
212
223
 
213
224
  /**
214
225
  * 计算 grid 容器样式(flex 布局)
@@ -281,24 +292,15 @@ const ProListContainerInner = /*#__PURE__*/_react.default.forwardRef(function Pr
281
292
  style: colStyle,
282
293
  children: child
283
294
  }, child?.key ?? idx))
284
- }) : /*#__PURE__*/(0, _jsxRuntime.jsx)("ul", {
285
- className: `${prefixCls}-items`,
286
- children: items
287
- });
288
- } else if (!children && !isLoading) {
295
+ }) : items;
296
+ } else if (!children) {
289
297
  const emptyContent = locale?.emptyText ?? (typeof renderEmpty === 'function' ? renderEmpty('List') : null) ?? /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Empty, {
290
- description: "\u6682\u65E0\u6570\u636E"
298
+ image: _antd.Empty.PRESENTED_IMAGE_SIMPLE
291
299
  });
292
300
  childrenContent = /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
293
301
  className: `${prefixCls}-empty-text`,
294
302
  children: emptyContent
295
303
  });
296
- } else if (isLoading) {
297
- childrenContent = /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
298
- style: {
299
- minHeight: 53
300
- }
301
- });
302
304
  } else {
303
305
  childrenContent = children;
304
306
  }
@@ -338,18 +340,22 @@ const ProListContainerInner = /*#__PURE__*/_react.default.forwardRef(function Pr
338
340
  }, propHashId, className, rootClassName);
339
341
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(ProListContext.Provider, {
340
342
  value: contextValue,
341
- children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
343
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
342
344
  ref: ref,
343
345
  style: style,
344
346
  className: classString,
345
347
  ...rest,
346
- children: [showPaginationTop && paginationNode, header && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
347
- className: `${prefixCls}-header`,
348
- children: header
349
- }), childrenContent, children, footer && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
350
- className: `${prefixCls}-footer`,
351
- children: footer
352
- }), loadMore, showPaginationBottom && paginationNode]
348
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_antd.Spin, {
349
+ spinning: isLoading,
350
+ delay: 100,
351
+ children: [showPaginationTop && paginationNode, header && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
352
+ className: `${prefixCls}-header`,
353
+ children: header
354
+ }), childrenContent, footer && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
355
+ className: `${prefixCls}-footer`,
356
+ children: footer
357
+ }), loadMore, showPaginationBottom && paginationNode]
358
+ })
353
359
  })
354
360
  });
355
361
  });
@@ -26,6 +26,16 @@ const genProListStyle = token => {
26
26
  boxSizing: 'border-box'
27
27
  },
28
28
  backgroundColor: 'transparent',
29
+ // 确保链接使用默认链接颜色,不被父元素的文本颜色覆盖
30
+ a: {
31
+ color: token.colorLink,
32
+ '&:hover': {
33
+ color: token.colorLinkHover
34
+ },
35
+ '&:active': {
36
+ color: token.colorLinkActive
37
+ }
38
+ },
29
39
  [`${token.proComponentsCls}-table-alert`]: {
30
40
  marginBlockEnd: token.margin
31
41
  },
@@ -329,6 +339,9 @@ const genProListStyle = token => {
329
339
  justifyContent: 'flex-start',
330
340
  width: '100%',
331
341
  minWidth: 0,
342
+ [`${token.proComponentsCls}-list-item-action`]: {
343
+ alignSelf: 'center'
344
+ },
332
345
  h4: {
333
346
  margin: 0,
334
347
  padding: 0,
@@ -75,7 +75,7 @@ export type ProRenderFieldPropsType = {
75
75
  * @params dom 默认的 dom
76
76
  * @return 返回一个用于读的 dom
77
77
  */
78
- render?: ((text: any, props: Omit<ProFieldFCRenderProps, 'value' | 'onChange'>, dom: JSX.Element) => JSX.Element) | undefined;
78
+ render?: ((text: any, props: Omit<ProFieldFCRenderProps, 'value' | 'onChange'>, dom: React.JSX.Element) => React.JSX.Element) | undefined;
79
79
  /**
80
80
  * 一个自定义的编辑渲染器。
81
81
  * @params text 默认的值类型
@@ -83,7 +83,7 @@ export type ProRenderFieldPropsType = {
83
83
  * @params dom 默认的 dom
84
84
  * @return 返回一个用于编辑的dom
85
85
  */
86
- formItemRender?: ((text: any, props: ProFieldFCRenderProps, dom: JSX.Element) => JSX.Element) | undefined;
86
+ formItemRender?: ((text: any, props: ProFieldFCRenderProps, dom: React.JSX.Element) => React.JSX.Element) | undefined;
87
87
  };
88
88
  export type ParamsType = Record<string, any>;
89
89
  /**
@@ -721,19 +721,28 @@ const ProTable = props => {
721
721
  hideToolbar,
722
722
  toolbarDom
723
723
  });
724
- const tableAreaDom = cardProps === false || notNeedCardDom || !!props.name ? tableContentDom : /*#__PURE__*/(0, _jsxRuntime.jsx)(_card.default, {
724
+
725
+ /** ProTable:有搜索/工具栏/标题时使用卡片包裹;可编辑表格(name)不包裹 */
726
+ /** ProList:始终使用卡片包裹(除非 cardProps 为 false) */
727
+ const useCard = (0, _react.useMemo)(() => {
728
+ const useCardForTable = cardProps !== false && !props.name && !notNeedCardDom;
729
+ const useCardForList = cardProps !== false && type === 'list';
730
+ return useCardForTable || useCardForList;
731
+ }, [cardProps, props.name, type, notNeedCardDom]);
732
+ const resolvedCardProps = cardProps === false ? {} : cardProps ?? {};
733
+ const tableAreaDom = useCard ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_card.default, {
734
+ ...resolvedCardProps,
725
735
  ghost: ghost,
726
736
  variant: (0, _utils2.isBordered)('table', cardBordered) ? 'outlined' : 'borderless',
727
737
  styles: {
728
738
  body: {
729
739
  ...cardBodyStyle,
730
- ...(cardProps?.styles?.body ?? {})
740
+ ...(resolvedCardProps.styles?.body ?? {})
731
741
  },
732
- header: cardProps?.styles?.header
742
+ header: resolvedCardProps.styles?.header
733
743
  },
734
- ...cardProps,
735
744
  children: tableContentDom
736
- });
745
+ }) : tableContentDom;
737
746
  const renderTable = () => {
738
747
  if (props.tableRender) {
739
748
  return props.tableRender(props, tableAreaDom, {