@zat-design/sisyphus-react 3.6.6 → 3.6.7

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 (181) hide show
  1. package/dist/index.esm.css +9 -0
  2. package/dist/less.esm.css +9 -0
  3. package/es/ProAction/index.js +4 -4
  4. package/es/ProDownload/index.d.ts +1 -1
  5. package/es/ProEditTable/components/ActionButton/index.d.ts +1 -1
  6. package/es/ProEditTable/components/RcTable/BaseTable.d.ts +6 -0
  7. package/es/ProEditTable/components/RcTable/BaseTable.js +75 -0
  8. package/es/ProEditTable/components/RcTable/DraggableTable.d.ts +7 -0
  9. package/es/ProEditTable/components/RcTable/DraggableTable.js +90 -0
  10. package/es/ProEditTable/components/RcTable/VirtualTable.d.ts +6 -0
  11. package/es/ProEditTable/components/RcTable/VirtualTable.js +166 -0
  12. package/es/ProEditTable/components/RcTable/index.d.ts +6 -0
  13. package/es/ProEditTable/components/RcTable/index.js +6 -0
  14. package/es/ProEditTable/components/RenderField/index.d.ts +1 -1
  15. package/es/ProEditTable/components/RenderField/index.js +27 -19
  16. package/es/ProEditTable/components/RenderToolbar/index.d.ts +1 -1
  17. package/es/ProEditTable/components/RenderToolbar/index.js +8 -6
  18. package/es/ProEditTable/components/Summary/index.d.ts +1 -1
  19. package/es/ProEditTable/index.js +33 -56
  20. package/es/ProEditTable/propsType.d.ts +11 -0
  21. package/es/ProEditTable/utils/config.d.ts +1 -1
  22. package/es/ProEditTable/utils/index.js +1 -1
  23. package/es/ProEditTable/utils/tools.js +3 -3
  24. package/es/ProEnum/components/Group.d.ts +1 -1
  25. package/es/ProEnum/components/Tag.d.ts +1 -1
  26. package/es/ProEnum/index.d.ts +2 -2
  27. package/es/ProEnum/utils/eventCenter.js +1 -2
  28. package/es/ProEnum/utils/getEnumLabel.d.ts +1 -1
  29. package/es/ProForm/components/base/Input/index.d.ts +1 -1
  30. package/es/ProForm/components/base/InputNumber/index.js +8 -2
  31. package/es/ProForm/components/combination/ProCascader/index.d.ts +1 -1
  32. package/es/ProForm/components/combination/ProCascader/index.js +9 -7
  33. package/es/ProForm/components/old/InputRange/index.d.ts +1 -1
  34. package/es/ProForm/components/old/InputWithSuffix/index.d.ts +1 -1
  35. package/es/ProForm/components/old/ProAddress/index.d.ts +1 -2
  36. package/es/ProForm/components/old/ProRangeBox/index.d.ts +1 -2
  37. package/es/ProForm/utils/index.js +14 -10
  38. package/es/ProForm/utils/useWatch.d.ts +1 -2
  39. package/es/ProIcon/utils/index.js +4 -3
  40. package/es/ProLayout/components/Layout/Menu/OpenMenu/index.d.ts +1 -1
  41. package/es/ProLayout/components/Layout/Menu/OpenMenu/index.js +3 -3
  42. package/es/ProLayout/components/ProCollapse/index.d.ts +1 -1
  43. package/es/ProLayout/components/ProFooter/index.d.ts +1 -1
  44. package/es/ProLayout/components/ProHeader/components/Copy/index.d.ts +1 -1
  45. package/es/ProLayout/components/ProHeader/index.d.ts +1 -1
  46. package/es/ProLayout/index.d.ts +4 -4
  47. package/es/ProLayout/utils/index.js +9 -9
  48. package/es/ProSelect/components/AdaptiveTooltip.d.ts +1 -1
  49. package/es/ProSelect/index.d.ts +1 -1
  50. package/es/ProSelect/index.js +1 -1
  51. package/es/ProStep/components/Anchor/index.d.ts +1 -1
  52. package/es/ProStep/components/Item/index.d.ts +1 -1
  53. package/es/ProStep/components/Step/index.d.ts +1 -1
  54. package/es/ProStep/index.d.ts +2 -2
  55. package/es/ProTable/components/DndWrapper/index.d.ts +2 -1
  56. package/es/ProTable/components/DndWrapper/index.js +49 -10
  57. package/es/ProTable/components/DndWrapper/utils/index.d.ts +8 -0
  58. package/es/ProTable/components/DndWrapper/utils/index.js +165 -0
  59. package/es/ProTable/components/DndWrapper/utils/propsType.d.ts +61 -0
  60. package/es/ProTable/components/DndWrapper/utils/propsType.js +1 -0
  61. package/es/ProTable/components/ResizableLine/index.d.ts +1 -1
  62. package/es/ProTable/components/TableResizable/index.d.ts +1 -1
  63. package/es/ProTable/index.d.ts +1 -1
  64. package/es/ProTable/index.js +1 -0
  65. package/es/ProTable/propsType.d.ts +2 -1
  66. package/es/ProTable/style/index.less +9 -0
  67. package/es/ProTable/useAntdTable.d.ts +2 -2
  68. package/es/ProTable/useAntdTable.js +17 -3
  69. package/es/ProTable/utils.js +3 -3
  70. package/es/ProTabs/components/Card/index.d.ts +1 -1
  71. package/es/ProThemeTools/component/PrdTools/index.d.ts +1 -1
  72. package/es/ProThemeTools/index.d.ts +1 -1
  73. package/es/ProTooltip/index.d.ts +1 -1
  74. package/es/ProTree/components/CloseIcon.d.ts +1 -2
  75. package/es/ProTree/components/List.d.ts +1 -1
  76. package/es/ProTree/components/ProTree.d.ts +1 -1
  77. package/es/ProTree/components/ProTreeSelect/index.d.ts +1 -1
  78. package/es/ProTree/components/ProTreeSelect/index.js +18 -18
  79. package/es/ProTree/components/SearchTitle.d.ts +1 -1
  80. package/es/ProTree/components/Tree.d.ts +1 -1
  81. package/es/ProTree/components/Tree.js +3 -3
  82. package/es/ProTree/index.d.ts +1 -1
  83. package/es/ProTree/utils.js +12 -11
  84. package/es/ProTreeModal/components/Cascader.d.ts +1 -1
  85. package/es/ProTreeModal/components/CloseIcon.d.ts +1 -2
  86. package/es/ProTreeModal/components/SearchTitle.d.ts +1 -1
  87. package/es/ProTreeModal/components/Tree.js +6 -6
  88. package/es/ProTreeModal/components/Trigger.d.ts +1 -1
  89. package/es/ProTreeModal/index.d.ts +1 -1
  90. package/es/ProTreeModal/utils.js +12 -11
  91. package/es/ProUpload/components/DraggableUploadListItem.d.ts +1 -1
  92. package/lib/ProAction/index.js +4 -4
  93. package/lib/ProDownload/index.d.ts +1 -1
  94. package/lib/ProEditTable/components/ActionButton/index.d.ts +1 -1
  95. package/lib/ProEditTable/components/RcTable/BaseTable.d.ts +6 -0
  96. package/lib/ProEditTable/components/RcTable/BaseTable.js +81 -0
  97. package/lib/ProEditTable/components/RcTable/DraggableTable.d.ts +7 -0
  98. package/lib/ProEditTable/components/RcTable/DraggableTable.js +96 -0
  99. package/lib/ProEditTable/components/RcTable/VirtualTable.d.ts +6 -0
  100. package/lib/ProEditTable/components/RcTable/VirtualTable.js +172 -0
  101. package/lib/ProEditTable/components/RcTable/index.d.ts +6 -0
  102. package/lib/ProEditTable/components/RcTable/index.js +27 -0
  103. package/lib/ProEditTable/components/RenderField/index.d.ts +1 -1
  104. package/lib/ProEditTable/components/RenderField/index.js +27 -19
  105. package/lib/ProEditTable/components/RenderToolbar/index.d.ts +1 -1
  106. package/lib/ProEditTable/components/RenderToolbar/index.js +7 -5
  107. package/lib/ProEditTable/components/Summary/index.d.ts +1 -1
  108. package/lib/ProEditTable/index.js +32 -53
  109. package/lib/ProEditTable/propsType.d.ts +11 -0
  110. package/lib/ProEditTable/utils/config.d.ts +1 -1
  111. package/lib/ProEditTable/utils/index.js +1 -1
  112. package/lib/ProEditTable/utils/tools.js +3 -3
  113. package/lib/ProEnum/components/Group.d.ts +1 -1
  114. package/lib/ProEnum/components/Tag.d.ts +1 -1
  115. package/lib/ProEnum/index.d.ts +2 -2
  116. package/lib/ProEnum/utils/eventCenter.js +1 -2
  117. package/lib/ProEnum/utils/getEnumLabel.d.ts +1 -1
  118. package/lib/ProForm/components/base/Input/index.d.ts +1 -1
  119. package/lib/ProForm/components/base/InputNumber/index.js +8 -2
  120. package/lib/ProForm/components/combination/ProCascader/index.d.ts +1 -1
  121. package/lib/ProForm/components/combination/ProCascader/index.js +9 -7
  122. package/lib/ProForm/components/old/InputRange/index.d.ts +1 -1
  123. package/lib/ProForm/components/old/InputWithSuffix/index.d.ts +1 -1
  124. package/lib/ProForm/components/old/ProAddress/index.d.ts +1 -2
  125. package/lib/ProForm/components/old/ProRangeBox/index.d.ts +1 -2
  126. package/lib/ProForm/utils/index.js +10 -10
  127. package/lib/ProForm/utils/useWatch.d.ts +1 -2
  128. package/lib/ProIcon/utils/index.js +3 -3
  129. package/lib/ProLayout/components/Layout/Menu/OpenMenu/index.d.ts +1 -1
  130. package/lib/ProLayout/components/Layout/Menu/OpenMenu/index.js +3 -3
  131. package/lib/ProLayout/components/ProCollapse/index.d.ts +1 -1
  132. package/lib/ProLayout/components/ProFooter/index.d.ts +1 -1
  133. package/lib/ProLayout/components/ProHeader/components/Copy/index.d.ts +1 -1
  134. package/lib/ProLayout/components/ProHeader/index.d.ts +1 -1
  135. package/lib/ProLayout/index.d.ts +4 -4
  136. package/lib/ProLayout/utils/index.js +9 -9
  137. package/lib/ProSelect/components/AdaptiveTooltip.d.ts +1 -1
  138. package/lib/ProSelect/index.d.ts +1 -1
  139. package/lib/ProSelect/index.js +1 -1
  140. package/lib/ProStep/components/Anchor/index.d.ts +1 -1
  141. package/lib/ProStep/components/Item/index.d.ts +1 -1
  142. package/lib/ProStep/components/Step/index.d.ts +1 -1
  143. package/lib/ProStep/index.d.ts +2 -2
  144. package/lib/ProTable/components/DndWrapper/index.d.ts +2 -1
  145. package/lib/ProTable/components/DndWrapper/index.js +48 -9
  146. package/lib/ProTable/components/DndWrapper/utils/index.d.ts +8 -0
  147. package/lib/ProTable/components/DndWrapper/utils/index.js +177 -0
  148. package/lib/ProTable/components/DndWrapper/utils/propsType.d.ts +61 -0
  149. package/lib/ProTable/components/DndWrapper/utils/propsType.js +5 -0
  150. package/lib/ProTable/components/ResizableLine/index.d.ts +1 -1
  151. package/lib/ProTable/components/TableResizable/index.d.ts +1 -1
  152. package/lib/ProTable/index.d.ts +1 -1
  153. package/lib/ProTable/index.js +1 -0
  154. package/lib/ProTable/propsType.d.ts +2 -1
  155. package/lib/ProTable/style/index.less +9 -0
  156. package/lib/ProTable/useAntdTable.d.ts +2 -2
  157. package/lib/ProTable/useAntdTable.js +16 -2
  158. package/lib/ProTable/utils.js +3 -3
  159. package/lib/ProTabs/components/Card/index.d.ts +1 -1
  160. package/lib/ProThemeTools/component/PrdTools/index.d.ts +1 -1
  161. package/lib/ProThemeTools/index.d.ts +1 -1
  162. package/lib/ProTooltip/index.d.ts +1 -1
  163. package/lib/ProTree/components/CloseIcon.d.ts +1 -2
  164. package/lib/ProTree/components/List.d.ts +1 -1
  165. package/lib/ProTree/components/ProTree.d.ts +1 -1
  166. package/lib/ProTree/components/ProTreeSelect/index.d.ts +1 -1
  167. package/lib/ProTree/components/ProTreeSelect/index.js +18 -18
  168. package/lib/ProTree/components/SearchTitle.d.ts +1 -1
  169. package/lib/ProTree/components/Tree.d.ts +1 -1
  170. package/lib/ProTree/components/Tree.js +3 -3
  171. package/lib/ProTree/index.d.ts +1 -1
  172. package/lib/ProTree/utils.js +11 -11
  173. package/lib/ProTreeModal/components/Cascader.d.ts +1 -1
  174. package/lib/ProTreeModal/components/CloseIcon.d.ts +1 -2
  175. package/lib/ProTreeModal/components/SearchTitle.d.ts +1 -1
  176. package/lib/ProTreeModal/components/Tree.js +6 -6
  177. package/lib/ProTreeModal/components/Trigger.d.ts +1 -1
  178. package/lib/ProTreeModal/index.d.ts +1 -1
  179. package/lib/ProTreeModal/utils.js +11 -11
  180. package/lib/ProUpload/components/DraggableUploadListItem.d.ts +1 -1
  181. package/package.json +6 -3
@@ -15,7 +15,7 @@ export var getIdsByPathName = function getIdsByPathName(menus, activeMenu) {
15
15
  _pathName = activeMenu;
16
16
  }
17
17
  var result;
18
- var menuDeep = function menuDeep(menuDeepItem) {
18
+ var _menuDeep = function menuDeep(menuDeepItem) {
19
19
  for (var i = 0; i <= menuDeepItem.length - 1; i++) {
20
20
  var item = menuDeepItem[i];
21
21
  // 只包含一级菜单时,解决URL:/endorsement/demo/123无法选中问题
@@ -24,7 +24,7 @@ export var getIdsByPathName = function getIdsByPathName(menus, activeMenu) {
24
24
  break;
25
25
  }
26
26
  if (Array.isArray(item.children) && item.children.length) {
27
- menuDeep(item.children);
27
+ _menuDeep(item.children);
28
28
  } else if (((item === null || item === void 0 ? void 0 : item.url) && _pathName.includes(item.url.split('?')[0]) || (item === null || item === void 0 ? void 0 : item.redirectUrl) && _pathName.includes(item.redirectUrl.split('?')[0])) && !result) {
29
29
  // 当循环到最后一层时判断URL是否包含最后一层的URL,解决URL在URL中不存在的场景
30
30
  result = item.keyIdPath;
@@ -32,7 +32,7 @@ export var getIdsByPathName = function getIdsByPathName(menus, activeMenu) {
32
32
  }
33
33
  }
34
34
  };
35
- menuDeep(menus);
35
+ _menuDeep(menus);
36
36
  return result || [];
37
37
  };
38
38
  /**
@@ -42,7 +42,7 @@ export var getIdsByPathName = function getIdsByPathName(menus, activeMenu) {
42
42
  */
43
43
  export var transformMenu = function transformMenu(menuData, pathPrefix) {
44
44
  var data = _toConsumableArray(menuData);
45
- var menuDeep = function menuDeep(menuDeepItem) {
45
+ var _menuDeep2 = function menuDeep(menuDeepItem) {
46
46
  if (!Array.isArray(menuDeepItem) || !menuDeepItem.length) {
47
47
  return [];
48
48
  }
@@ -75,11 +75,11 @@ export var transformMenu = function transformMenu(menuData, pathPrefix) {
75
75
  childrenItem.keyUrlPath = _toConsumableArray(item.keyUrlPath);
76
76
  childrenItem.keyIdPath = _toConsumableArray(item.keyIdPath);
77
77
  });
78
- menuDeep(item.children);
78
+ _menuDeep2(item.children);
79
79
  }
80
80
  });
81
81
  };
82
- menuDeep(data);
82
+ _menuDeep2(data);
83
83
  return data;
84
84
  };
85
85
  /**
@@ -134,7 +134,7 @@ export var getPathNameKey = function getPathNameKey(_ref) {
134
134
  var menus = _ref.menus,
135
135
  pathName = _ref.pathName;
136
136
  var result;
137
- var menuDeep = function menuDeep(menuDeepItem) {
137
+ var _menuDeep3 = function menuDeep(menuDeepItem) {
138
138
  if (!Array.isArray(menuDeepItem) || !menuDeepItem.length) {
139
139
  return [];
140
140
  }
@@ -148,7 +148,7 @@ export var getPathNameKey = function getPathNameKey(_ref) {
148
148
  break;
149
149
  }
150
150
  if (Array.isArray(item.children) && item.children.length) {
151
- menuDeep(item.children);
151
+ _menuDeep3(item.children);
152
152
  } else if (((item === null || item === void 0 ? void 0 : item.url) && pathName.includes(item.url.split('?')[0]) || (item === null || item === void 0 ? void 0 : item.redirectUrl) && pathName.includes(item.redirectUrl.split('?')[0])) && !result) {
153
153
  // URL未匹配时,循环到最后一层时判断URL是否包含最后一层的URL,解决URL在URL中不存在的场景
154
154
  result = item.keyIdPath;
@@ -156,6 +156,6 @@ export var getPathNameKey = function getPathNameKey(_ref) {
156
156
  }
157
157
  }
158
158
  };
159
- menuDeep(menus);
159
+ _menuDeep3(menus);
160
160
  return result;
161
161
  };
@@ -1,4 +1,4 @@
1
1
  declare const AdaptiveTooltip: ({ children }: {
2
2
  children: any;
3
- }) => JSX.Element;
3
+ }) => import("react/jsx-runtime").JSX.Element;
4
4
  export default AdaptiveTooltip;
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import { PropSelectProps, ProSelectAction } from './propsType';
3
3
  import './index.less';
4
- export declare const ProSelect: (props: PropSelectProps, ref: React.Ref<ProSelectAction> | undefined) => JSX.Element;
4
+ export declare const ProSelect: (props: PropSelectProps, ref: React.Ref<ProSelectAction> | undefined) => import("react/jsx-runtime").JSX.Element;
5
5
  declare const _default: React.ForwardRefExoticComponent<PropSelectProps & React.RefAttributes<ProSelectAction>>;
6
6
  export default _default;
@@ -338,7 +338,7 @@ export var ProSelect = function ProSelect(props, ref) {
338
338
  title: OptionRender(item),
339
339
  children: OptionRender(item)
340
340
  }) : _jsx("span", {
341
- title: "".concat(item[code], "-").concat(item[label]),
341
+ title: selectProps.showCodeName ? "".concat(item[code], "-").concat(item[label]) : item[label],
342
342
  children: selectProps.showCodeName ? "".concat(item[code], "-").concat(item[label]) : item[label]
343
343
  })
344
344
  }, item[code])
@@ -1,2 +1,2 @@
1
- export declare const MenuItem: (props: any) => JSX.Element;
1
+ export declare const MenuItem: (props: any) => import("react/jsx-runtime").JSX.Element;
2
2
  export default MenuItem;
@@ -1,3 +1,3 @@
1
1
  import { ProStepItem } from '../../propsType';
2
- declare const _default: ({ id, title, collapse: collapseItem, children, ...restProps }: ProStepItem) => JSX.Element;
2
+ declare const _default: ({ id, title, collapse: collapseItem, children, ...restProps }: ProStepItem) => import("react/jsx-runtime").JSX.Element;
3
3
  export default _default;
@@ -1,5 +1,5 @@
1
1
  import { ProStepPropsType } from '../../propsType';
2
2
  export declare const Step: ({ fixedTop, dataSource, activeKey, errorCollection, style, targetOffset, scrollToError, }: ProStepPropsType & {
3
3
  errorCollection: object;
4
- }) => JSX.Element;
4
+ }) => import("react/jsx-runtime").JSX.Element;
5
5
  export default Step;
@@ -4,9 +4,9 @@ import './style/index.less';
4
4
  export declare const ProStepContext: import("react").Context<any>;
5
5
  export declare const useStep: () => any;
6
6
  declare const ProStep: {
7
- ({ children, ...resetProps }: ProStepPropsType): JSX.Element;
7
+ ({ children, ...resetProps }: ProStepPropsType): import("react/jsx-runtime").JSX.Element;
8
8
  useStep: () => any;
9
- Item: ({ id, title, collapse: collapseItem, children, ...restProps }: import("./propsType").ProStepItem) => JSX.Element;
9
+ Item: ({ id, title, collapse: collapseItem, children, ...restProps }: import("./propsType").ProStepItem) => import("react/jsx-runtime").JSX.Element;
10
10
  Listener: ({ children, delayTime, ...props }: any) => import("react").DetailedReactHTMLElement<any, HTMLElement>;
11
11
  };
12
12
  export default ProStep;
@@ -5,11 +5,12 @@ interface RowProps extends React.HTMLAttributes<HTMLTableRowElement> {
5
5
  disabled?: boolean;
6
6
  }
7
7
  export declare const Row: FC<RowProps>;
8
- declare const DndWrapper: ({ draggable, value, onChange, disabled, children }: {
8
+ declare const DndWrapper: ({ draggable, value, onChange, disabled, children, rowKey }: {
9
9
  draggable: any;
10
10
  value: any;
11
11
  onChange: any;
12
12
  disabled: any;
13
13
  children: any;
14
+ rowKey: any;
14
15
  }) => any;
15
16
  export default DndWrapper;
@@ -1,11 +1,13 @@
1
+ import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
1
2
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
2
3
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
4
  var _excluded = ["disabled", "children"];
4
5
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
5
6
  import React from 'react';
6
- import { DndContext } from '@dnd-kit/core';
7
+ import { DndContext, closestCorners } from '@dnd-kit/core';
7
8
  import { arrayMove, useSortable, SortableContext, verticalListSortingStrategy } from '@dnd-kit/sortable';
8
9
  import { CSS } from '@dnd-kit/utilities';
10
+ import { addLevelAndParentId, treeNodeFind, transformTreeToArray, createTreeFromArray } from './utils/index';
9
11
  import ProIcon from '../../../ProIcon';
10
12
  export var Row = function Row(props) {
11
13
  var disabled = props.disabled,
@@ -60,30 +62,67 @@ export var Row = function Row(props) {
60
62
  }));
61
63
  };
62
64
  var DndWrapper = function DndWrapper(_ref2) {
63
- var _value$;
65
+ var _flatTree$;
64
66
  var draggable = _ref2.draggable,
65
67
  value = _ref2.value,
66
68
  onChange = _ref2.onChange,
67
69
  disabled = _ref2.disabled,
68
- children = _ref2.children;
70
+ children = _ref2.children,
71
+ rowKey = _ref2.rowKey;
69
72
  var onDragEnd = function onDragEnd(_ref3) {
70
73
  var active = _ref3.active,
71
74
  over = _ref3.over;
75
+ // 为数据源划分层级及parentId
76
+ var transformedValue = addLevelAndParentId(value, rowKey);
77
+ // 同一level层级的且parentId相同的,可以互相之间拖拽替换
72
78
  if (active.id !== (over === null || over === void 0 ? void 0 : over.id)) {
73
- var activeIndex = value.findIndex(function (i) {
74
- return i.rowKey === active.id;
79
+ var activeObject = treeNodeFind(transformedValue, function (t) {
80
+ return t.rowKey === active.id;
75
81
  });
76
- var overIndex = value.findIndex(function (i) {
77
- return i.rowKey === (over === null || over === void 0 ? void 0 : over.id);
82
+ var overObject = treeNodeFind(transformedValue, function (t) {
83
+ return t.rowKey === (over === null || over === void 0 ? void 0 : over.id);
78
84
  });
79
- var nextValue = arrayMove(value, activeIndex, overIndex);
80
- onChange(nextValue);
85
+ if (activeObject && overObject) {
86
+ var activeLevel = activeObject.level,
87
+ activeParentId = activeObject.parentId;
88
+ var overLevel = overObject.level,
89
+ overParentId = overObject.parentId;
90
+ if (activeLevel === overLevel && activeParentId === overParentId) {
91
+ // 将树平铺
92
+ var _flatTree = transformTreeToArray(transformedValue).map(function (item) {
93
+ return _objectSpread(_objectSpread({}, item), {}, {
94
+ children: undefined
95
+ });
96
+ });
97
+ var activeIndex = _flatTree.findIndex(function (i) {
98
+ return i.rowKey === active.id;
99
+ });
100
+ var overIndex = _flatTree.findIndex(function (i) {
101
+ return i.rowKey === (over === null || over === void 0 ? void 0 : over.id);
102
+ });
103
+ var nextValue = arrayMove(_flatTree, activeIndex, overIndex);
104
+ onChange(createTreeFromArray(nextValue, {
105
+ itemKey: 'rowKey',
106
+ parentKey: 'parentId',
107
+ childrenKey: 'children'
108
+ }));
109
+ }
110
+ }
111
+ } else {
112
+ onChange(_toConsumableArray(value));
81
113
  }
82
114
  };
115
+ // 将树平铺
116
+ var flatTree = transformTreeToArray(value).map(function (item) {
117
+ return _objectSpread(_objectSpread({}, item), {}, {
118
+ children: undefined
119
+ });
120
+ });
83
121
  return draggable && !disabled ? _jsx(DndContext, {
84
122
  onDragEnd: onDragEnd,
123
+ collisionDetection: closestCorners,
85
124
  children: _jsx(SortableContext, {
86
- items: (value === null || value === void 0 ? void 0 : (_value$ = value[0]) === null || _value$ === void 0 ? void 0 : _value$.rowKey) ? value.map(function (i) {
125
+ items: (flatTree === null || flatTree === void 0 ? void 0 : (_flatTree$ = flatTree[0]) === null || _flatTree$ === void 0 ? void 0 : _flatTree$.rowKey) ? flatTree.map(function (i) {
87
126
  return i.rowKey;
88
127
  }) : [],
89
128
  strategy: verticalListSortingStrategy,
@@ -0,0 +1,8 @@
1
+ import { ChildrenKey, Tree, BaseCallbackMeta, BaseInnerOptions, FindCallback, FindOptions, ArrayItemWithParentKey, FromArrayOptions, TreeWithParentKey, TypeOfKey, ForeachOptions, ForeachCallback, ToArrayOptions } from './propsType';
2
+ export declare const getRowKey: (rowKey: any, record: any) => any;
3
+ export declare const addLevelAndParentId: (tree: any[], rowKey: any, currentLevel?: number, currentParentId?: any) => any[];
4
+ export declare function getFinalChildrenKey<T extends ChildrenKey>(tree: Tree<T>, meta: BaseCallbackMeta, options: BaseInnerOptions<T>): ChildrenKey;
5
+ export declare function treeNodeFind<T extends ChildrenKey>(tree: Tree<T> | Tree<T>[], callback: FindCallback<T>, options?: FindOptions): Tree<T> | undefined;
6
+ export declare function createTreeFromArray<K extends TypeOfKey, P extends TypeOfKey, T extends ChildrenKey>(array: ArrayItemWithParentKey<K, P>[], options?: FromArrayOptions): TreeWithParentKey<K, P, T>[];
7
+ export declare function treeForEach<T extends ChildrenKey>(tree: Tree<T> | Tree<T>[], callback: ForeachCallback<T>, options?: ForeachOptions): void;
8
+ export declare function transformTreeToArray<T extends ChildrenKey>(tree: Tree<T> | Tree<T>[], options?: ToArrayOptions): Tree<T>[];
@@ -0,0 +1,165 @@
1
+ import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
2
+ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
3
+ export var getRowKey = function getRowKey(rowKey, record) {
4
+ // 默认取id
5
+ var key = record.rowKey || 'id';
6
+ if (rowKey) {
7
+ var _ref;
8
+ key = (_ref = typeof rowKey === 'function' ? rowKey(record) : record[rowKey]) !== null && _ref !== void 0 ? _ref : key;
9
+ }
10
+ return key;
11
+ };
12
+ var _addLevelAndParentId = function addLevelAndParentId(tree, rowKey) {
13
+ var currentLevel = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
14
+ var currentParentId = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
15
+ return tree.map(function (node) {
16
+ var newNode = _objectSpread({}, node);
17
+ newNode.level = currentLevel;
18
+ newNode.parentId = currentParentId;
19
+ newNode.rowKey = getRowKey(rowKey, node);
20
+ if (node.children) {
21
+ newNode.children = _addLevelAndParentId(node.children, rowKey, currentLevel + 1, newNode.rowKey);
22
+ }
23
+ return newNode;
24
+ });
25
+ };
26
+ export { _addLevelAndParentId as addLevelAndParentId };
27
+ export function getFinalChildrenKey(tree, meta, options) {
28
+ if (typeof options.getChildrenKey === 'function') {
29
+ var dynamicChildrenKey = options.getChildrenKey(tree, meta);
30
+ if (dynamicChildrenKey != null) {
31
+ return dynamicChildrenKey;
32
+ }
33
+ }
34
+ return options.childrenKey;
35
+ }
36
+ // 前置深度优先遍历
37
+ var _treeNodePreImpl = function treeNodePreImpl(treeItem, callback, options) {
38
+ var callbackResult = callback(treeItem, options);
39
+ if (callbackResult) {
40
+ return treeItem;
41
+ }
42
+ var finalChildrenKey = getFinalChildrenKey(treeItem, options, options);
43
+ var children = treeItem[finalChildrenKey];
44
+ if (!children || !Array.isArray(children)) {
45
+ return undefined;
46
+ }
47
+ for (var i = 0, count = children.length; i < count; i++) {
48
+ var childItem = children[i];
49
+ var findOne = _treeNodePreImpl(childItem, callback, _objectSpread(_objectSpread({}, options), {}, {
50
+ parents: [].concat(_toConsumableArray(options.parents), [treeItem]),
51
+ depth: options.depth + 1
52
+ }));
53
+ if (findOne) {
54
+ return findOne;
55
+ }
56
+ }
57
+ return undefined;
58
+ };
59
+ var treeNodeStrategies = {
60
+ pre: _treeNodePreImpl
61
+ };
62
+ export function treeNodeFind(tree, callback, options) {
63
+ var _options$childrenKey, _options$strategy;
64
+ var childrenKey = (_options$childrenKey = options === null || options === void 0 ? void 0 : options.childrenKey) !== null && _options$childrenKey !== void 0 ? _options$childrenKey : 'children';
65
+ var strategy = (_options$strategy = options === null || options === void 0 ? void 0 : options.strategy) !== null && _options$strategy !== void 0 ? _options$strategy : 'pre';
66
+ var getChildrenKey = options === null || options === void 0 ? void 0 : options.getChildrenKey;
67
+ var method = treeNodeStrategies[strategy];
68
+ var innerOptions = {
69
+ childrenKey: childrenKey,
70
+ depth: 0,
71
+ parents: [],
72
+ getChildrenKey: getChildrenKey
73
+ };
74
+ if (Array.isArray(tree)) {
75
+ for (var i = 0, count = tree.length; i < count; i++) {
76
+ var treeItem = tree[i];
77
+ var result = method(treeItem, callback, innerOptions);
78
+ if (result) {
79
+ return result;
80
+ }
81
+ }
82
+ return undefined;
83
+ }
84
+ return method(tree, callback, innerOptions);
85
+ }
86
+ export function createTreeFromArray(array, options) {
87
+ var result = [];
88
+ var _ref2 = options || {},
89
+ _ref2$parentKey = _ref2.parentKey,
90
+ parentKey = _ref2$parentKey === void 0 ? 'pid' : _ref2$parentKey,
91
+ _ref2$itemKey = _ref2.itemKey,
92
+ itemKey = _ref2$itemKey === void 0 ? 'id' : _ref2$itemKey,
93
+ _ref2$childrenKey = _ref2.childrenKey,
94
+ childrenKey = _ref2$childrenKey === void 0 ? 'children' : _ref2$childrenKey;
95
+ var map = new Map();
96
+ array.map(function (item) {
97
+ var itemKeyValue = item[itemKey];
98
+ if (!map.get(itemKeyValue)) {
99
+ map.set(itemKeyValue, item);
100
+ }
101
+ return item;
102
+ });
103
+ array.map(function (item) {
104
+ var parentKeyValue = item[parentKey];
105
+ var parentItem = map.get(parentKeyValue);
106
+ if (!parentItem || !parentKeyValue) {
107
+ result.push(item);
108
+ return;
109
+ }
110
+ var siblings = parentItem[childrenKey];
111
+ if (siblings === null || siblings === undefined) {
112
+ // disable eslint tslint
113
+ parentItem[childrenKey] = [item];
114
+ } else if (Array.isArray(siblings)) {
115
+ siblings.push(item);
116
+ } else {
117
+ var msg = "the key \"".concat(childrenKey, "\" is not an array, please check your data");
118
+ throw new Error(msg);
119
+ }
120
+ return item;
121
+ });
122
+ return result;
123
+ }
124
+ // 前置遍历
125
+ var _treeForEachPreImpl = function treeForEachPreImpl(treeItem, callback, options) {
126
+ callback(treeItem, options);
127
+ var finalChildrenKey = getFinalChildrenKey(treeItem, options, options);
128
+ var children = treeItem[finalChildrenKey];
129
+ if (children && Array.isArray(children)) {
130
+ var nextLevelOptions = _objectSpread(_objectSpread({}, options), {}, {
131
+ parents: [].concat(_toConsumableArray(options.parents), [treeItem]),
132
+ depth: options.depth + 1
133
+ });
134
+ children.forEach(function (childItem) {
135
+ _treeForEachPreImpl(childItem, callback, nextLevelOptions);
136
+ });
137
+ }
138
+ };
139
+ var treeForEachStrategies = {
140
+ pre: _treeForEachPreImpl
141
+ };
142
+ export function treeForEach(tree, callback, options) {
143
+ var _options$childrenKey2, _options$strategy2;
144
+ var childrenKey = (_options$childrenKey2 = options === null || options === void 0 ? void 0 : options.childrenKey) !== null && _options$childrenKey2 !== void 0 ? _options$childrenKey2 : 'children';
145
+ var strategy = (_options$strategy2 = options === null || options === void 0 ? void 0 : options.strategy) !== null && _options$strategy2 !== void 0 ? _options$strategy2 : 'pre';
146
+ var getChildrenKey = options === null || options === void 0 ? void 0 : options.getChildrenKey;
147
+ var isForest = Array.isArray(tree);
148
+ var method = treeForEachStrategies[strategy];
149
+ var innerOptions = {
150
+ childrenKey: childrenKey,
151
+ depth: 0,
152
+ parents: [],
153
+ getChildrenKey: getChildrenKey
154
+ };
155
+ isForest ? tree.forEach(function (tree) {
156
+ method(tree, callback, innerOptions);
157
+ }) : method(tree, callback, innerOptions);
158
+ }
159
+ export function transformTreeToArray(tree, options) {
160
+ var results = [];
161
+ treeForEach(tree, function (t) {
162
+ results.push(t);
163
+ }, options);
164
+ return results;
165
+ }
@@ -0,0 +1,61 @@
1
+ export type TreeKey = string | number;
2
+ export type ChildrenKey = TreeKey;
3
+ export type Tree<T extends ChildrenKey = 'children'> = {
4
+ [key in T]?: Tree<T>[];
5
+ } & {
6
+ [key in TreeKey]: any;
7
+ };
8
+ export type Strategy = 'pre' | 'post' | 'breadth';
9
+ export interface BaseOptions {
10
+ itemKey?: String;
11
+ parentKey?: String;
12
+ childrenKey?: ChildrenKey;
13
+ strategy?: Strategy;
14
+ getChildrenKey?: (tree: Tree, meta: BaseCallbackMeta) => ChildrenKey | undefined;
15
+ }
16
+ export interface BaseInnerOptions<T extends ChildrenKey = 'children'> {
17
+ childrenKey: ChildrenKey;
18
+ parents: Tree<T>[];
19
+ depth: number;
20
+ getChildrenKey?: (tree: Tree, meta: BaseCallbackMeta) => ChildrenKey | undefined;
21
+ }
22
+ export interface BaseCallbackMeta<T extends ChildrenKey = 'children'> {
23
+ depth: number;
24
+ parents?: Tree<T>[];
25
+ }
26
+ export type FindOptions = BaseOptions;
27
+ export type FindCallbackMeta<T extends ChildrenKey> = BaseCallbackMeta<T>;
28
+ export type FindCallback<T extends ChildrenKey> = (treeItem: Tree<T>, meta: FindCallbackMeta<T>) => boolean | undefined;
29
+ type FindInnerOption<T extends ChildrenKey> = BaseInnerOptions<T>;
30
+ export type FindImpl<T extends ChildrenKey> = (treeItem: Tree<T>, callback: FindCallback<T>, options: FindInnerOption<T>) => Tree<T> | undefined;
31
+ export interface QueueItem {
32
+ tree: Tree<ChildrenKey>;
33
+ options: FindInnerOption<ChildrenKey>;
34
+ }
35
+ export type TypeOfKey = string;
36
+ export type KeyValue = string | number | undefined | null;
37
+ export type ArrayItemWithParentKey<P extends TypeOfKey, K extends TypeOfKey> = Record<string, any> & {
38
+ [key in P]?: KeyValue;
39
+ } & {
40
+ [key in K]?: KeyValue;
41
+ };
42
+ export type TreeWithParentKey<K extends TypeOfKey, P extends TypeOfKey, T extends ChildrenKey> = Record<string, any> & {
43
+ [key in P]?: KeyValue;
44
+ } & {
45
+ [key in K]: KeyValue;
46
+ } & {
47
+ [key in T]?: TreeWithParentKey<K, P, T>[];
48
+ };
49
+ export interface FromArrayOptions {
50
+ parentKey?: TypeOfKey;
51
+ itemKey?: TypeOfKey;
52
+ childrenKey?: ChildrenKey;
53
+ }
54
+ export type FromArray<K extends TypeOfKey, P extends TypeOfKey, T extends ChildrenKey> = (array: ArrayItemWithParentKey<K, P>[], options: FromArrayOptions) => TreeWithParentKey<K, P, T>[];
55
+ export type ForeachOptions = BaseOptions;
56
+ export type ForeachCallbackMeta<T extends ChildrenKey> = BaseCallbackMeta<T>;
57
+ export type ForeachCallback<T extends ChildrenKey> = (treeItem: Tree<T>, meta: ForeachCallbackMeta<T>) => void;
58
+ export type ForeachInnerOption<T extends ChildrenKey> = BaseInnerOptions<T>;
59
+ export type ForeachImpl<T extends ChildrenKey> = (treeItem: Tree<T>, callback: ForeachCallback<T>, options: ForeachInnerOption<T>) => void;
60
+ export type ToArrayOptions = ForeachOptions;
61
+ export {};
@@ -1,2 +1,2 @@
1
- declare const ResizableLine: () => JSX.Element;
1
+ declare const ResizableLine: () => import("react/jsx-runtime").JSX.Element;
2
2
  export default ResizableLine;
@@ -6,7 +6,7 @@ declare const _default: {
6
6
  onDrag: any;
7
7
  width: number;
8
8
  minwidth?: number;
9
- }) => JSX.Element;
9
+ }) => import("react/jsx-runtime").JSX.Element;
10
10
  };
11
11
  };
12
12
  };
@@ -5,7 +5,7 @@ export declare const defaultPage: {
5
5
  pageNum: number;
6
6
  pageSize: number;
7
7
  };
8
- declare function ProTable(props: ProTableProps): JSX.Element;
8
+ declare function ProTable(props: ProTableProps): import("react/jsx-runtime").JSX.Element;
9
9
  declare namespace ProTable {
10
10
  var defaultProps: {
11
11
  quickConfig: boolean;
@@ -370,6 +370,7 @@ function ProTable(props) {
370
370
  onChange: onDataSourceChange,
371
371
  disabled: false,
372
372
  draggable: draggable,
373
+ rowKey: rowKey,
373
374
  children: [(headerRender || columnConfig || resizeColumn) && _jsxs("div", {
374
375
  className: "column-config",
375
376
  children: [_jsx("div", {
@@ -72,11 +72,12 @@ export interface PaginationProps {
72
72
  pageNum: number;
73
73
  pageSize: number;
74
74
  }
75
+ type RowSelectionTypeWithPick = Pick<TableProps<any>, 'rowSelection'>['rowSelection'];
75
76
  export interface RequestOptions<T, R> {
76
77
  form?: FormInstance;
77
78
  isResetQuery?: boolean;
78
79
  rowKey?: string | GetRowKey<R>;
79
- rowSelection?: boolean;
80
+ rowSelection?: boolean | RowSelectionTypeWithPick;
80
81
  rowSelectType?: RowSelectionType;
81
82
  rowSelections?: boolean;
82
83
  extraParams?: Partial<T>;
@@ -9,6 +9,15 @@
9
9
  }
10
10
  }
11
11
  }
12
+ .@{ant-prefix}-table-cell-with-append {
13
+ white-space: nowrap;
14
+ position: relative;
15
+ z-index: 100;
16
+ }
17
+ .@{ant-prefix}-table-row-expand-icon {
18
+ position: absolute;
19
+ left: -16px;
20
+ }
12
21
 
13
22
  .@{ant-prefix}-table-content {
14
23
  >table {
@@ -11,7 +11,7 @@ declare function useAntdTable<I, R extends Record<string, any>, S extends Servic
11
11
  selectedRowKeys: Key[];
12
12
  onChange(rowKeys: Key[], rows: any[]): void;
13
13
  onSelectAll: (selected: boolean) => void;
14
- getCheckboxProps: () => {
14
+ getCheckboxProps: (record?: any) => {
15
15
  className: string;
16
16
  };
17
17
  selections: boolean | ({
@@ -57,7 +57,7 @@ declare function useAntdTable<I, R extends Record<string, any>, S extends Servic
57
57
  selectedRowKeys: Key[];
58
58
  onChange(rowKeys: Key[], rows: any[]): void;
59
59
  onSelectAll: (selected: boolean) => void;
60
- getCheckboxProps: () => {
60
+ getCheckboxProps: (record?: any) => {
61
61
  className: string;
62
62
  };
63
63
  selections: boolean | ({
@@ -9,7 +9,7 @@ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
9
9
  var _excluded = ["page", "filters", "sorter"];
10
10
  import { useCallback, useMemo, useState } from 'react';
11
11
  import { useRequest, useSetState, useDeepCompareEffect } from 'ahooks';
12
- import { pickBy } from 'lodash';
12
+ import { pickBy, isObject, merge, set, isEqual } from 'lodash';
13
13
  import { defaultPage } from './index';
14
14
  import { isListResult } from './utils';
15
15
  import locale, { formatMessage } from '../locale';
@@ -313,7 +313,7 @@ function useAntdTable(service, options, useRequestOptions) {
313
313
  }));
314
314
  }
315
315
  }, [extraParams]);
316
- var rowSelection = {
316
+ var _rowSelection = {
317
317
  fixed: true,
318
318
  type: rowSelectType,
319
319
  columnWidth: rowSelections ? 64 : undefined,
@@ -355,7 +355,7 @@ function useAntdTable(service, options, useRequestOptions) {
355
355
  });
356
356
  }
357
357
  },
358
- getCheckboxProps: function getCheckboxProps() {
358
+ getCheckboxProps: function getCheckboxProps(record) {
359
359
  return {
360
360
  className: allSelected && rowSelections ? 'checkbox-disabled' : ''
361
361
  };
@@ -424,6 +424,20 @@ function useAntdTable(service, options, useRequestOptions) {
424
424
  }()
425
425
  }] : false
426
426
  };
427
+ var rowSelection = isObject(returnRowSelection) ? merge(_rowSelection, returnRowSelection) : _rowSelection;
428
+ if (isObject(returnRowSelection) && !isEqual(rowSelection, _rowSelection)) {
429
+ // getCheckboxProps需要特殊兼容原有的逻辑,特殊处理
430
+ var isHasGetCheckboxProps = Reflect.ownKeys(returnRowSelection).includes('getCheckboxProps');
431
+ if (isHasGetCheckboxProps) {
432
+ set(rowSelection, 'getCheckboxProps', function (record) {
433
+ var _rowSelection$getChec;
434
+ var passReturnObjects = (_rowSelection$getChec = rowSelection.getCheckboxProps(record)) !== null && _rowSelection$getChec !== void 0 ? _rowSelection$getChec : {};
435
+ return _objectSpread({
436
+ className: allSelected && rowSelections ? 'checkbox-disabled' : ''
437
+ }, passReturnObjects);
438
+ });
439
+ }
440
+ }
427
441
  var selectedTip = allSelected || selectedRowKeys.length ? formatMessage(locale === null || locale === void 0 ? void 0 : (_locale$ProTable5 = locale.ProTable) === null || _locale$ProTable5 === void 0 ? void 0 : _locale$ProTable5.selectAll, {
428
442
  selectedNum: allSelected ? total : selectedRowKeys === null || selectedRowKeys === void 0 ? void 0 : selectedRowKeys.length
429
443
  }) : null;
@@ -382,15 +382,15 @@ export var getParentElement = function getParentElement(element, name) {
382
382
  if (!element || !name) {
383
383
  return result;
384
384
  }
385
- var searchDom = function searchDom(element, name) {
385
+ var _searchDom = function searchDom(element, name) {
386
386
  var type = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'className';
387
387
  if (element.parentElement[type] === name) {
388
388
  result = element.parentElement;
389
389
  return false;
390
390
  }
391
- searchDom(element.parentElement, name, type = 'className');
391
+ _searchDom(element.parentElement, name, type = 'className');
392
392
  };
393
- searchDom(element, name, type = 'className');
393
+ _searchDom(element, name, type = 'className');
394
394
  return result;
395
395
  };
396
396
  /**
@@ -1,3 +1,3 @@
1
1
  import { CardProps } from '../../propType';
2
- declare const Card: (props: CardProps) => JSX.Element;
2
+ declare const Card: (props: CardProps) => import("react/jsx-runtime").JSX.Element;
3
3
  export default Card;
@@ -1,3 +1,3 @@
1
1
  import type { DevToolsPropsType } from '../../propsType';
2
- declare const PrdTools: ({ onReset, onClose, setState, open, state, tableBorder, tableStripe, }: DevToolsPropsType) => JSX.Element;
2
+ declare const PrdTools: ({ onReset, onClose, setState, open, state, tableBorder, tableStripe, }: DevToolsPropsType) => import("react/jsx-runtime").JSX.Element;
3
3
  export default PrdTools;
@@ -1,6 +1,6 @@
1
1
  import type { ProThemeToolsProps } from './propsType';
2
2
  declare const ProThemeTools: {
3
- ({ size, className, cacheTime, color, mode, iconFollowTheme, prefixCls, tableBorder, tableStripe, theme, onChange, ...props }: ProThemeToolsProps): JSX.Element;
3
+ ({ size, className, cacheTime, color, mode, iconFollowTheme, prefixCls, tableBorder, tableStripe, theme, onChange, ...props }: ProThemeToolsProps): import("react/jsx-runtime").JSX.Element;
4
4
  defaultProps: {
5
5
  size: number;
6
6
  mode: string;