@kdcloudjs/kdesign 1.3.9 → 1.5.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 (74) hide show
  1. package/CHANGELOG.md +9 -1
  2. package/dist/kdesign-complete.less +89 -44
  3. package/dist/kdesign.css +98 -55
  4. package/dist/kdesign.css.map +1 -1
  5. package/dist/kdesign.js +418 -262
  6. package/dist/kdesign.js.map +1 -1
  7. package/dist/kdesign.min.css +3 -3
  8. package/dist/kdesign.min.js +8 -8
  9. package/dist/kdesign.min.js.map +1 -1
  10. package/es/carousel/carousel.js +4 -4
  11. package/es/config-provider/compDefaultProps.d.ts +0 -1
  12. package/es/config-provider/compDefaultProps.js +0 -1
  13. package/es/date-picker/range-picker.d.ts +1 -0
  14. package/es/date-picker/range-picker.js +2 -0
  15. package/es/date-picker/style/index.css +6 -3
  16. package/es/date-picker/style/index.less +7 -3
  17. package/es/dropdown/style/index.css +3 -0
  18. package/es/dropdown/style/index.less +4 -0
  19. package/es/dropdown/style/token.less +1 -0
  20. package/es/input/style/index.css +8 -0
  21. package/es/input/style/index.less +4 -0
  22. package/es/input/style/mixin.less +6 -1
  23. package/es/menu/menu.d.ts +1 -0
  24. package/es/menu/menu.js +13 -14
  25. package/es/menu/menuItem.js +13 -3
  26. package/es/menu/style/index.css +50 -50
  27. package/es/menu/style/index.less +15 -15
  28. package/es/menu/style/mixin.less +24 -24
  29. package/es/menu/subMenu.js +19 -13
  30. package/es/radio/radio.js +6 -1
  31. package/es/tree/style/index.css +30 -1
  32. package/es/tree/style/index.less +25 -1
  33. package/es/tree/style/token.less +3 -0
  34. package/es/tree/tree.d.ts +2 -0
  35. package/es/tree/tree.js +77 -12
  36. package/es/tree/treeHooks.d.ts +1 -1
  37. package/es/tree/treeHooks.js +3 -3
  38. package/es/tree/treeNode.d.ts +1 -0
  39. package/es/tree/treeNode.js +11 -8
  40. package/es/tree/utils/treeUtils.d.ts +4 -2
  41. package/es/tree/utils/treeUtils.js +64 -10
  42. package/lib/carousel/carousel.js +4 -4
  43. package/lib/config-provider/compDefaultProps.d.ts +0 -1
  44. package/lib/config-provider/compDefaultProps.js +0 -1
  45. package/lib/date-picker/range-picker.d.ts +1 -0
  46. package/lib/date-picker/range-picker.js +2 -0
  47. package/lib/date-picker/style/index.css +6 -3
  48. package/lib/date-picker/style/index.less +7 -3
  49. package/lib/dropdown/style/index.css +3 -0
  50. package/lib/dropdown/style/index.less +4 -0
  51. package/lib/dropdown/style/token.less +1 -0
  52. package/lib/input/style/index.css +8 -0
  53. package/lib/input/style/index.less +4 -0
  54. package/lib/input/style/mixin.less +6 -1
  55. package/lib/menu/menu.d.ts +1 -0
  56. package/lib/menu/menu.js +13 -14
  57. package/lib/menu/menuItem.js +15 -3
  58. package/lib/menu/style/index.css +50 -50
  59. package/lib/menu/style/index.less +15 -15
  60. package/lib/menu/style/mixin.less +24 -24
  61. package/lib/menu/subMenu.js +21 -14
  62. package/lib/radio/radio.js +7 -1
  63. package/lib/tree/style/index.css +30 -1
  64. package/lib/tree/style/index.less +25 -1
  65. package/lib/tree/style/token.less +3 -0
  66. package/lib/tree/tree.d.ts +2 -0
  67. package/lib/tree/tree.js +79 -11
  68. package/lib/tree/treeHooks.d.ts +1 -1
  69. package/lib/tree/treeHooks.js +3 -3
  70. package/lib/tree/treeNode.d.ts +1 -0
  71. package/lib/tree/treeNode.js +11 -8
  72. package/lib/tree/utils/treeUtils.d.ts +4 -2
  73. package/lib/tree/utils/treeUtils.js +71 -13
  74. package/package.json +1 -1
package/lib/tree/tree.js CHANGED
@@ -13,12 +13,16 @@ Object.defineProperty(exports, "__esModule", {
13
13
  });
14
14
  exports.default = void 0;
15
15
 
16
+ var _keys = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/keys"));
17
+
16
18
  var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
17
19
 
18
20
  var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
19
21
 
20
22
  var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
21
23
 
24
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/toConsumableArray"));
25
+
22
26
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/slicedToArray"));
23
27
 
24
28
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
@@ -90,7 +94,9 @@ var InternalTree = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
90
94
  return '';
91
95
  } : _TreeProps$setTreeNod2,
92
96
  innerEstimatedItemSize = TreeProps.estimatedItemSize,
93
- style = TreeProps.style;
97
+ style = TreeProps.style,
98
+ filterTreeNode = TreeProps.filterTreeNode,
99
+ filterValue = TreeProps.filterValue;
94
100
  var treePrefixCls = getPrefixCls(prefixCls, 'tree', customPrefixcls); // 树样式前缀
95
101
 
96
102
  var treeNodePrefixCls = getPrefixCls(prefixCls, 'tree-node', customPrefixcls); // 树节点样式前缀
@@ -141,22 +147,35 @@ var InternalTree = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
141
147
 
142
148
  var dragNodeRef = _react.default.useRef(null);
143
149
 
150
+ var delayedDragEnterRef = _react.default.useRef(null);
151
+
144
152
  var _React$useState5 = _react.default.useState(true),
145
153
  _React$useState6 = (0, _slicedToArray2.default)(_React$useState5, 2),
146
154
  isInit = _React$useState6[0],
147
155
  setIsInit = _React$useState6[1];
148
156
 
149
- var _useExpand = (0, _treeHooks.useExpand)(flattenAllData, expandedKeysProps, defaultExpandedKeys, defaultExpandAll, defaultExpandRoot, defaultExpandParent, scrollKey, isInit),
150
- _useExpand2 = (0, _slicedToArray2.default)(_useExpand, 1),
151
- expandedKeys = _useExpand2[0];
157
+ var _React$useState7 = _react.default.useState(null),
158
+ _React$useState8 = (0, _slicedToArray2.default)(_React$useState7, 2),
159
+ dropPosition = _React$useState8[0],
160
+ setDropPosition = _React$useState8[1];
161
+
162
+ var _React$useState9 = _react.default.useState(null),
163
+ _React$useState10 = (0, _slicedToArray2.default)(_React$useState9, 2),
164
+ dragOverNodeKey = _React$useState10[0],
165
+ setDragOverNodeKey = _React$useState10[1];
166
+
167
+ var _useExpand = (0, _treeHooks.useExpand)(flattenAllData, expandedKeysProps, defaultExpandedKeys, defaultExpandAll, defaultExpandRoot, defaultExpandParent, scrollKey, isInit, filterTreeNode, filterValue),
168
+ _useExpand2 = (0, _slicedToArray2.default)(_useExpand, 2),
169
+ expandedKeys = _useExpand2[0],
170
+ setExpandedKeys = _useExpand2[1];
152
171
 
153
172
  var spreadAttrData = _react.default.useMemo(function () {
154
173
  return (0, _treeUtils.getSpreadAttrData)(flattenAllData, expandedKeys);
155
174
  }, [flattenAllData, expandedKeys]);
156
175
 
157
176
  var filterData = _react.default.useMemo(function () {
158
- return (0, _treeUtils.getFilterData)(spreadAttrData);
159
- }, [spreadAttrData]);
177
+ return (0, _treeUtils.getFilterData)(spreadAttrData, filterTreeNode, filterValue);
178
+ }, [spreadAttrData, filterTreeNode, filterValue]);
160
179
 
161
180
  var _useViewportHeight = (0, _treeHooks.useViewportHeight)(height, listRef),
162
181
  _useViewportHeight2 = (0, _slicedToArray2.default)(_useViewportHeight, 1),
@@ -220,7 +239,15 @@ var InternalTree = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
220
239
  });
221
240
  }, [onDragStart]);
222
241
 
223
- var handleDragOver = _react.default.useCallback(function (event, node) {
242
+ var handleDragOver = _react.default.useCallback(function (event, node, dropTarget) {
243
+ var dropPos = (0, _treeUtils.calcDropPosition)(event, dropTarget);
244
+ setDropPosition(dropPos);
245
+ var dragNode = getDragNode();
246
+
247
+ if (dragNode.key === node.key) {
248
+ setDropPosition(null);
249
+ }
250
+
224
251
  onDragOver && onDragOver({
225
252
  event: event,
226
253
  node: node
@@ -234,14 +261,53 @@ var InternalTree = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
234
261
  });
235
262
  }, [onDragLeave]);
236
263
 
237
- var handleDragEnter = _react.default.useCallback(function (event, node) {
264
+ var handleDragEnter = _react.default.useCallback(function (event, node, dropTarget) {
265
+ var key = node.key,
266
+ pos = node.pos;
267
+ var dragNode = getDragNode();
268
+
269
+ if (!dragNode) {
270
+ return;
271
+ }
272
+
273
+ if (!delayedDragEnterRef.current) {
274
+ delayedDragEnterRef.current = {};
275
+ }
276
+
277
+ (0, _keys.default)(delayedDragEnterRef.current).forEach(function (key) {
278
+ clearTimeout(delayedDragEnterRef.current[key]);
279
+ });
280
+
281
+ if ((dragNode === null || dragNode === void 0 ? void 0 : dragNode.key) !== key) {
282
+ var dragPos = (0, _treeUtils.calcDropPosition)(event, dropTarget);
283
+ setDragOverNodeKey(key);
284
+ setDropPosition(dragPos);
285
+ delayedDragEnterRef.current[pos] = setTimeout(function () {
286
+ var newExpandedKeys = (0, _toConsumableArray2.default)(expandedKeys);
287
+
288
+ if (!node.expand) {
289
+ newExpandedKeys = (0, _treeUtils.addKeys)(expandedKeys, [key]);
290
+ }
291
+
292
+ if (!('expandedKeys' in TreeProps)) {
293
+ setExpandedKeys(newExpandedKeys);
294
+ }
295
+
296
+ onExpand === null || onExpand === void 0 ? void 0 : onExpand(newExpandedKeys, {
297
+ node: node,
298
+ expanded: true
299
+ });
300
+ }, 800);
301
+ }
302
+
238
303
  onDragEnter && onDragEnter({
239
304
  event: event,
240
305
  node: node
241
306
  });
242
- }, [onDragEnter]);
307
+ }, [TreeProps, expandedKeys, onDragEnter, onExpand, setExpandedKeys]);
243
308
 
244
309
  var handleDragEnd = _react.default.useCallback(function (event, node) {
310
+ setDragOverNodeKey('');
245
311
  onDragEnd && onDragEnd({
246
312
  event: event,
247
313
  node: node
@@ -257,9 +323,10 @@ var InternalTree = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
257
323
  event: event,
258
324
  node: node,
259
325
  dragNode: dragNode,
260
- keys: keys
326
+ dragNodesKeys: keys,
327
+ dropPosition: dropPosition
261
328
  });
262
- }, [onDrop, flattenAllData]);
329
+ }, [flattenAllData, onDrop, dropPosition]);
263
330
 
264
331
  var handleSelect = _react.default.useCallback(function (event, node, key) {
265
332
  var checked = (0, _treeUtils.getChecked)(checkedKeys, key);
@@ -347,6 +414,7 @@ var InternalTree = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
347
414
  item.style = setTreeNodeStyle((0, _extends2.default)({}, item));
348
415
  item.getDragNode = getDragNode;
349
416
  item.setDragNode = setDragNode;
417
+ item.dragOver = dragOverNodeKey === item.key && dropPosition === 0;
350
418
  return /*#__PURE__*/_react.default.createElement(_treeNode.default, (0, _extends2.default)({}, item, {
351
419
  key: item.key,
352
420
  ref: treeNodeRef
@@ -4,6 +4,6 @@ export declare const useViewportHeight: (height: number, listRef: React.RefObjec
4
4
  export declare const useVisibleDataMemo: (virtual: boolean, filterData: TreeNodeData[], viewportHeight: number, estimatedItemSize: number, start: number) => TreeNodeData[][];
5
5
  export declare const usePlantomHeightEffect: (plantomRef: React.RefObject<HTMLElement>, filterData: TreeNodeData[], estimatedItemSize: number) => void;
6
6
  export declare const useChecked: (checkStrictly: boolean, checkedKeysProps: string[], defaultCheckedKeys: string[], flattenAllData: any[], maxLevel: number, checkable: boolean) => readonly [string[], string[], React.Dispatch<React.SetStateAction<string[]>>, React.Dispatch<React.SetStateAction<string[]>>];
7
- export declare const useExpand: (flattenAllData: any[], expandedKeysProps: string[], defaultExpandedKeys: string[], defaultExpandAll: boolean, defaultExpandRoot: boolean, defaultExpandParent: boolean, scrollKey: string, isInit: boolean) => readonly [string[], React.Dispatch<React.SetStateAction<string[]>>];
7
+ export declare const useExpand: (flattenAllData: any[], expandedKeysProps: string[], defaultExpandedKeys: string[], defaultExpandAll: boolean, defaultExpandRoot: boolean, defaultExpandParent: boolean, scrollKey: string, isInit: boolean, filterTreeNode: FunctionConstructor, filterValue: string) => readonly [string[], React.Dispatch<React.SetStateAction<string[]>>];
8
8
  export declare const useScrollToKey: (scrollKey: string, index: number, estimatedItemSize: number, scrollRef: any, viewportHeight: number, treeNodePrefixCls: string) => void;
9
9
  export declare const useSelect: (selectedKeysProps: string[], defaultSelectedKeys: string[]) => readonly [string[], React.Dispatch<React.SetStateAction<string[]>>];
@@ -104,7 +104,7 @@ var useChecked = function useChecked(checkStrictly, checkedKeysProps, defaultChe
104
104
 
105
105
  exports.useChecked = useChecked;
106
106
 
107
- var useExpand = function useExpand(flattenAllData, expandedKeysProps, defaultExpandedKeys, defaultExpandAll, defaultExpandRoot, defaultExpandParent, scrollKey, isInit) {
107
+ var useExpand = function useExpand(flattenAllData, expandedKeysProps, defaultExpandedKeys, defaultExpandAll, defaultExpandRoot, defaultExpandParent, scrollKey, isInit, filterTreeNode, filterValue) {
108
108
  var expandScrollkeys = [];
109
109
 
110
110
  if (scrollKey) {
@@ -113,8 +113,8 @@ var useExpand = function useExpand(flattenAllData, expandedKeysProps, defaultExp
113
113
  }
114
114
 
115
115
  var initialExpandedKeys = _react.default.useMemo(function () {
116
- return (0, _treeUtils.getInitExpandedKeys)(flattenAllData, expandedKeysProps, defaultExpandedKeys, defaultExpandAll, defaultExpandRoot, defaultExpandParent, expandScrollkeys);
117
- }, [flattenAllData, expandedKeysProps, defaultExpandedKeys, defaultExpandAll, defaultExpandRoot, defaultExpandParent, scrollKey]);
116
+ return (0, _treeUtils.getInitExpandedKeys)(flattenAllData, expandedKeysProps, defaultExpandedKeys, defaultExpandAll, defaultExpandRoot, defaultExpandParent, expandScrollkeys, filterTreeNode, filterValue);
117
+ }, [flattenAllData, expandedKeysProps, defaultExpandedKeys, defaultExpandAll, defaultExpandRoot, defaultExpandParent, scrollKey, filterTreeNode, filterValue]);
118
118
 
119
119
  var newExpandedKeys = _react.default.useMemo(function () {
120
120
  return (0, _treeUtils.getExpandedKeys)(expandedKeysProps, expandScrollkeys);
@@ -24,6 +24,7 @@ export interface TreeNodeProps {
24
24
  checked?: boolean;
25
25
  pos?: string;
26
26
  estimatedItemSize?: number;
27
+ dragOver?: boolean;
27
28
  onCheck?: (key: string, value: boolean, node: React.ReactNode, event: React.MouseEvent<MouseEvent>, pos: string) => void;
28
29
  onSelect?: (event: React.MouseEvent<MouseEvent>, node: React.ReactNode, key: string) => void;
29
30
  onExpand?: (value: boolean, node: React.ReactNode) => void;
@@ -85,6 +85,7 @@ var TreeNode = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
85
85
  style = TreeNodeProps.style,
86
86
  indeterminate = TreeNodeProps.indeterminate,
87
87
  estimatedItemSize = TreeNodeProps.estimatedItemSize,
88
+ dragOver = TreeNodeProps.dragOver,
88
89
  onExpand = TreeNodeProps.onExpand,
89
90
  onCheck = TreeNodeProps.onCheck,
90
91
  onDragStart = TreeNodeProps.onDragStart,
@@ -94,7 +95,7 @@ var TreeNode = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
94
95
  onDragEnd = TreeNodeProps.onDragEnd,
95
96
  onDrop = TreeNodeProps.onDrop,
96
97
  onSelect = TreeNodeProps.onSelect,
97
- others = __rest(TreeNodeProps, ["nodeKey", "prefixCls", "selectable", "checkable", "className", "icon", "switcherIcon", "disabled", "draggable", "pos", "checked", "level", "getDragNode", "hasChildNode", "expand", "title", "showLine", "showIcon", "selected", "setDragNode", "style", "indeterminate", "estimatedItemSize", "onExpand", "onCheck", "onDragStart", "onDragOver", "onDragLeave", "onDragEnter", "onDragEnd", "onDrop", "onSelect"]);
98
+ others = __rest(TreeNodeProps, ["nodeKey", "prefixCls", "selectable", "checkable", "className", "icon", "switcherIcon", "disabled", "draggable", "pos", "checked", "level", "getDragNode", "hasChildNode", "expand", "title", "showLine", "showIcon", "selected", "setDragNode", "style", "indeterminate", "estimatedItemSize", "dragOver", "onExpand", "onCheck", "onDragStart", "onDragOver", "onDragLeave", "onDragEnter", "onDragEnd", "onDrop", "onSelect"]);
98
99
 
99
100
  var nodeData = _react.default.useMemo(function () {
100
101
  return (0, _extends2.default)({
@@ -263,7 +264,7 @@ var TreeNode = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
263
264
 
264
265
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
265
266
  draggable: draggable && !disabled,
266
- className: (0, _classnames.default)((_classNames3 = {}, (0, _defineProperty2.default)(_classNames3, "".concat(treeNodePrefixCls, "-draggabled"), true), (0, _defineProperty2.default)(_classNames3, "".concat(treeNodePrefixCls, "-root"), true), (0, _defineProperty2.default)(_classNames3, "".concat(treeNodePrefixCls, "-fb-children-pointerEvents"), forbiddenChildrenPointerEvents), _classNames3)),
267
+ className: (0, _classnames.default)((_classNames3 = {}, (0, _defineProperty2.default)(_classNames3, "".concat(treeNodePrefixCls, "-draggabled"), true), (0, _defineProperty2.default)(_classNames3, "".concat(treeNodePrefixCls, "-root"), true), (0, _defineProperty2.default)(_classNames3, "".concat(treeNodePrefixCls, "-fb-children-pointerEvents"), forbiddenChildrenPointerEvents), (0, _defineProperty2.default)(_classNames3, "".concat(treeNodePrefixCls, "-drag-over"), dragOver), _classNames3)),
267
268
  onDragStart: handleDragStart,
268
269
  onDragEnd: handleDragEnd,
269
270
  onDragOver: handleDragOver,
@@ -271,7 +272,9 @@ var TreeNode = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
271
272
  onDragEnter: handleDragEnter,
272
273
  onDrop: handleDrop,
273
274
  ref: dragRef
274
- }, indent(), renderExpandIcon(), showIcon && renderNodeIcon(), checkable ? /*#__PURE__*/_react.default.createElement(_checkbox.default, {
275
+ }, indent(), renderExpandIcon(), showIcon && renderNodeIcon(), /*#__PURE__*/_react.default.createElement("div", {
276
+ className: "".concat(treeNodePrefixCls, "-title-wrap")
277
+ }, checkable ? /*#__PURE__*/_react.default.createElement(_checkbox.default, {
275
278
  onChange: handleOnchange,
276
279
  checked: checked,
277
280
  indeterminate: !disabled && indeterminate,
@@ -280,9 +283,9 @@ var TreeNode = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
280
283
  className: (0, _classnames.default)("".concat(treeNodePrefixCls, "-title"), (0, _defineProperty2.default)({}, "".concat(treeNodePrefixCls, "-title-disabled"), disabled))
281
284
  }, title)) : /*#__PURE__*/_react.default.createElement("span", {
282
285
  className: (0, _classnames.default)("".concat(treeNodePrefixCls, "-title"), (0, _defineProperty2.default)({}, "".concat(treeNodePrefixCls, "-title-disabled"), disabled))
283
- }, title), showDragLine && /*#__PURE__*/_react.default.createElement("span", {
286
+ }, title), showDragLine && !dragOver && /*#__PURE__*/_react.default.createElement("span", {
284
287
  className: (0, _classnames.default)("".concat(treeNodePrefixCls, "-drag-line"))
285
- })));
288
+ }))));
286
289
  };
287
290
 
288
291
  var handleOnchange = _react.default.useCallback(function (e) {
@@ -311,12 +314,12 @@ var TreeNode = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
311
314
  if (!draggable) return;
312
315
  setDragNode(nodeData);
313
316
  onDragStart && onDragStart(e, props);
314
- }, [onDragStart, nodeData, props, draggable]);
317
+ }, [draggable, setDragNode, nodeData, onDragStart, props]);
315
318
 
316
319
  var handleDragOver = _react.default.useCallback(function (e) {
317
320
  if (!draggable) return;
318
321
  e.preventDefault();
319
- onDragOver && onDragOver(e, nodeData);
322
+ onDragOver && onDragOver(e, nodeData, dragRef.current);
320
323
  }, [onDragOver, nodeData, draggable]);
321
324
 
322
325
  var handleDragLeave = _react.default.useCallback(function (e) {
@@ -336,7 +339,7 @@ var TreeNode = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
336
339
  setForbiddenChildrenPointerEvents(true);
337
340
  if (!((_a = dragRef.current) === null || _a === void 0 ? void 0 : _a.isEqualNode(e.target))) return;
338
341
  setShowDragLine(true);
339
- onDragEnter && onDragEnter(e, nodeData);
342
+ onDragEnter && onDragEnter(e, nodeData, dragRef.current);
340
343
  }, [onDragEnter, nodeData, draggable]);
341
344
 
342
345
  var handleDragEnd = _react.default.useCallback(function (e) {
@@ -12,7 +12,8 @@ export declare const getExpand: (expandedKeys: string[], key: string) => boolean
12
12
  export declare const getChecked: (checkedKeys: string[], key: string) => boolean;
13
13
  export declare const getSelected: (selectedKeys: string[], key: string) => boolean;
14
14
  export declare const getHalfChecked: (halfCheckedKeys: string[], key: string) => boolean;
15
- export declare const getFilterData: (data: any[]) => any[];
15
+ export declare const getAllFilterKeys: (data: any[], filterTreeNode: FunctionConstructor) => any[];
16
+ export declare const getFilterData: (data: any[], filterTreeNode: FunctionConstructor, filterValue: string) => any[];
16
17
  export declare const getMaxLevel: (data: any[]) => number;
17
18
  /**
18
19
  *计算node的属性后返回新的 treedata
@@ -42,5 +43,6 @@ export declare const getDataCheckededStateStrictly: (checkedKeys: string[]) => {
42
43
  };
43
44
  export declare const delKey: (prevKeys: string[], delKeys: string[]) => never[] & string[];
44
45
  export declare const getAllNodeKeys: (data: any[]) => string[];
45
- export declare const getInitExpandedKeys: (data: any[], expandedKeys: string[], defaultExpandedKeys: string[], defaultExpandAll: boolean, defaultExpandRoot: boolean, defaultExpandParent: boolean, expandScrollkeys?: string[]) => string[];
46
+ export declare const getInitExpandedKeys: (data: any[], expandedKeys: string[], defaultExpandedKeys: string[], defaultExpandAll: boolean, defaultExpandRoot: boolean, defaultExpandParent: boolean, expandScrollkeys: string[] | undefined, filterTreeNode: FunctionConstructor, filterValue: string) => string[];
46
47
  export declare const getExpandedKeys: (expandedKeys: string[], expandScrollkeys?: string[]) => string[];
48
+ export declare const calcDropPosition: (event: React.MouseEvent, dropNode: HTMLElement) => 0 | 1 | -1;
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequ
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.getSpreadAttrData = exports.getSelected = exports.getPos = exports.getMaxLevel = exports.getInitExpandedKeys = exports.getInitCheckededState = exports.getInitCheckedKeys = exports.getHalfChecked = exports.getFilterData = exports.getExpandedKeys = exports.getExpand = exports.getDataCheckededStateStrictly = exports.getDataCheckededState = exports.getChecked = exports.getAllParentPos = exports.getAllParentKeys = exports.getAllNodeKeys = exports.getAllChildKeys = exports.flattenAll = exports.delKey = exports.addKeys = void 0;
8
+ exports.getSpreadAttrData = exports.getSelected = exports.getPos = exports.getMaxLevel = exports.getInitExpandedKeys = exports.getInitCheckededState = exports.getInitCheckedKeys = exports.getHalfChecked = exports.getFilterData = exports.getExpandedKeys = exports.getExpand = exports.getDataCheckededStateStrictly = exports.getDataCheckededState = exports.getChecked = exports.getAllParentPos = exports.getAllParentKeys = exports.getAllNodeKeys = exports.getAllFilterKeys = exports.getAllChildKeys = exports.flattenAll = exports.delKey = exports.calcDropPosition = exports.addKeys = void 0;
9
9
 
10
10
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/toConsumableArray"));
11
11
 
@@ -19,14 +19,16 @@ var _includes = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-s
19
19
 
20
20
  var _find = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/find"));
21
21
 
22
- var _startsWith = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/starts-with"));
23
-
24
22
  var _filter = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/filter"));
25
23
 
26
- var _from = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/array/from"));
24
+ var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
27
25
 
28
26
  var _set = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/set"));
29
27
 
28
+ var _startsWith = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/starts-with"));
29
+
30
+ var _from = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/array/from"));
31
+
30
32
  var _splice = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/splice"));
31
33
 
32
34
  var __rest = void 0 && (void 0).__rest || function (s, e) {
@@ -41,6 +43,8 @@ var __rest = void 0 && (void 0).__rest || function (s, e) {
41
43
  }
42
44
  return t;
43
45
  };
46
+
47
+ var DRAG_OFFSET = 0.4;
44
48
  /**
45
49
  * 打平所有数组,并添加pos位置信息,
46
50
  * 方便根据expandKeys等计算节点的expand,checkedKeys计算节点checked状态
@@ -50,7 +54,6 @@ var __rest = void 0 && (void 0).__rest || function (s, e) {
50
54
  * @param pos
51
55
  */
52
56
 
53
-
54
57
  var flattenAll = function flattenAll(treeData) {
55
58
  var newTreeData = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
56
59
  var level = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
@@ -126,11 +129,37 @@ var isAllParentExpand = function isAllParentExpand(data, pos) {
126
129
  return expand;
127
130
  };
128
131
 
129
- var getFilterData = function getFilterData(data) {
132
+ var getAllFilterKeys = function getAllFilterKeys(data, filterTreeNode) {
133
+ var filterData = (0, _filter.default)(data).call(data, function (item) {
134
+ return filterTreeNode === null || filterTreeNode === void 0 ? void 0 : filterTreeNode(item);
135
+ });
136
+ var filterKeys = getAllNodeKeys(filterData);
137
+ var allFilterKeys = [];
138
+ (0, _map.default)(filterKeys).call(filterKeys, function (key) {
139
+ var _context2;
140
+
141
+ return allFilterKeys.push.apply(allFilterKeys, (0, _concat.default)(_context2 = (0, _toConsumableArray2.default)(getAllParentKeys(data, key))).call(_context2, [key]));
142
+ });
143
+ return (0, _toConsumableArray2.default)(new _set.default(allFilterKeys));
144
+ };
145
+
146
+ exports.getAllFilterKeys = getAllFilterKeys;
147
+
148
+ var getFilterData = function getFilterData(data, filterTreeNode, filterValue) {
149
+ var filterData = data;
150
+
151
+ if (typeof filterTreeNode === 'function' && filterValue) {
152
+ filterData = (0, _filter.default)(filterData).call(filterData, function (item) {
153
+ var _context3;
154
+
155
+ return (0, _includes.default)(_context3 = getAllFilterKeys(filterData, filterTreeNode)).call(_context3, item.key);
156
+ });
157
+ }
158
+
130
159
  var newData = [];
131
- data.forEach(function (item) {
160
+ filterData.forEach(function (item) {
132
161
  var pos = item.pos;
133
- var parentExpand = isAllParentExpand(data, pos);
162
+ var parentExpand = isAllParentExpand(filterData, pos);
134
163
 
135
164
  if (parentExpand) {
136
165
  newData.push(item);
@@ -265,11 +294,11 @@ var getSpreadAttrData = function getSpreadAttrData(treeData, expandedKeys) {
265
294
  exports.getSpreadAttrData = getSpreadAttrData;
266
295
 
267
296
  var addKeys = function addKeys() {
268
- var _context2;
297
+ var _context4;
269
298
 
270
299
  var prevKeys = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
271
300
  var newKeys = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
272
- return (0, _from.default)(new _set.default((0, _concat.default)(_context2 = []).call(_context2, (0, _toConsumableArray2.default)(prevKeys), (0, _toConsumableArray2.default)(newKeys))));
301
+ return (0, _from.default)(new _set.default((0, _concat.default)(_context4 = []).call(_context4, (0, _toConsumableArray2.default)(prevKeys), (0, _toConsumableArray2.default)(newKeys))));
273
302
  };
274
303
 
275
304
  exports.addKeys = addKeys;
@@ -334,14 +363,14 @@ var getPos = function getPos(data, key) {
334
363
  exports.getPos = getPos;
335
364
 
336
365
  var getInitCheckedKeys = function getInitCheckedKeys(data, keys) {
337
- var _context3;
366
+ var _context5;
338
367
 
339
368
  var checkedKeys = [];
340
369
  keys.forEach(function (item) {
341
370
  var pos = getPos(data, item);
342
371
  checkedKeys.push.apply(checkedKeys, (0, _toConsumableArray2.default)(getAllChildKeys(data, pos)));
343
372
  });
344
- return (0, _from.default)(new _set.default((0, _concat.default)(_context3 = []).call(_context3, checkedKeys, (0, _toConsumableArray2.default)(keys))));
373
+ return (0, _from.default)(new _set.default((0, _concat.default)(_context5 = []).call(_context5, checkedKeys, (0, _toConsumableArray2.default)(keys))));
345
374
  };
346
375
 
347
376
  exports.getInitCheckedKeys = getInitCheckedKeys;
@@ -528,6 +557,8 @@ var getRootKeys = function getRootKeys(data) {
528
557
 
529
558
  var getInitExpandedKeys = function getInitExpandedKeys(data, expandedKeys, defaultExpandedKeys, defaultExpandAll, defaultExpandRoot, defaultExpandParent) {
530
559
  var expandScrollkeys = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : [];
560
+ var filterTreeNode = arguments.length > 7 ? arguments[7] : undefined;
561
+ var filterValue = arguments.length > 8 ? arguments[8] : undefined;
531
562
  var keys = (expandedKeys === null || expandedKeys === void 0 ? void 0 : (0, _concat.default)(expandedKeys).call(expandedKeys, expandScrollkeys)) || (defaultExpandedKeys === null || defaultExpandedKeys === void 0 ? void 0 : (0, _concat.default)(defaultExpandedKeys).call(defaultExpandedKeys, expandScrollkeys)) || [];
532
563
 
533
564
  if (defaultExpandAll) {
@@ -550,6 +581,12 @@ var getInitExpandedKeys = function getInitExpandedKeys(data, expandedKeys, defau
550
581
  }
551
582
  }
552
583
 
584
+ if (typeof filterTreeNode === 'function' && filterValue) {
585
+ var _context6;
586
+
587
+ keys = (0, _concat.default)(_context6 = []).call(_context6, (0, _toConsumableArray2.default)(keys), (0, _toConsumableArray2.default)(getAllFilterKeys(data, filterTreeNode)));
588
+ }
589
+
553
590
  return (0, _from.default)(new _set.default((0, _toConsumableArray2.default)(keys)));
554
591
  };
555
592
 
@@ -561,4 +598,25 @@ var getExpandedKeys = function getExpandedKeys(expandedKeys) {
561
598
  return (0, _from.default)(new _set.default((0, _toConsumableArray2.default)(keys)));
562
599
  };
563
600
 
564
- exports.getExpandedKeys = getExpandedKeys;
601
+ exports.getExpandedKeys = getExpandedKeys;
602
+
603
+ var calcDropPosition = function calcDropPosition(event, dropNode) {
604
+ var clientY = event.clientY;
605
+
606
+ var _dropNode$getBounding = dropNode.getBoundingClientRect(),
607
+ top = _dropNode$getBounding.top,
608
+ bottom = _dropNode$getBounding.bottom,
609
+ height = _dropNode$getBounding.height;
610
+
611
+ if (clientY <= top + height * DRAG_OFFSET) {
612
+ return -1;
613
+ }
614
+
615
+ if (clientY >= bottom - height * DRAG_OFFSET) {
616
+ return 1;
617
+ }
618
+
619
+ return 0;
620
+ };
621
+
622
+ exports.calcDropPosition = calcDropPosition;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kdcloudjs/kdesign",
3
- "version": "1.3.9",
3
+ "version": "1.5.0",
4
4
  "description": "KDesign 金蝶前端react 组件库",
5
5
  "title": "kdesign",
6
6
  "keywords": [