@qsxy/element-plus-react 1.0.0-next.5 → 1.0.0-next.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 (109) hide show
  1. package/dist/Cascader/Cascader.js +147 -182
  2. package/dist/Cascader/CascaderContext.d.ts +4 -10
  3. package/dist/Cascader/CascaderContext.js +2 -6
  4. package/dist/Cascader/CascaderDropdown.js +1 -1
  5. package/dist/Cascader/CascaderMenu.d.ts +0 -7
  6. package/dist/Cascader/CascaderMenu.js +4 -77
  7. package/dist/Cascader/Utils.d.ts +0 -2
  8. package/dist/Cascader/Utils.js +0 -44
  9. package/dist/Cascader/index.d.ts +1 -1
  10. package/dist/Cascader/typings.d.ts +2 -18
  11. package/dist/Cascader/useCascader.d.ts +1 -15
  12. package/dist/Cascader/useCascader.js +14 -41
  13. package/dist/DatePicker/DatePicker.js +5 -5
  14. package/dist/Empty/ImgEmpty.js +1 -1
  15. package/dist/Tree/DirectoryTree.d.ts +6 -13
  16. package/dist/Tree/DirectoryTree.js +32 -81
  17. package/dist/Tree/DropIndicator.d.ts +4 -2
  18. package/dist/Tree/DropIndicator.js +7 -2
  19. package/dist/Tree/Indent.d.ts +2 -2
  20. package/dist/Tree/Indent.js +4 -4
  21. package/dist/Tree/MotionTreeNode.d.ts +4 -5
  22. package/dist/Tree/MotionTreeNode.js +69 -52
  23. package/dist/Tree/NodeList.d.ts +15 -11
  24. package/dist/Tree/NodeList.js +38 -29
  25. package/dist/Tree/RCTree.d.ts +77 -75
  26. package/dist/Tree/RCTree.js +199 -188
  27. package/dist/Tree/Tree.d.ts +3 -3
  28. package/dist/Tree/Tree.js +27 -27
  29. package/dist/Tree/TreeNode.d.ts +5 -90
  30. package/dist/Tree/TreeNode.js +320 -422
  31. package/dist/Tree/contextTypes.d.ts +36 -30
  32. package/dist/Tree/contextTypes.js +17 -4
  33. package/dist/Tree/index.d.ts +2 -2
  34. package/dist/Tree/typings.d.ts +60 -19
  35. package/dist/Tree/typings.js +1 -13
  36. package/dist/Tree/typings.tsx--bak +245 -0
  37. package/dist/Tree/useUnmount.d.ts +5 -0
  38. package/dist/{VirtualList/index.js → Tree/useUnmount.js} +25 -10
  39. package/dist/Tree/util.d.ts +17 -21
  40. package/dist/Tree/util.js +21 -52
  41. package/dist/Tree/utils/conductUtil.d.ts +2 -2
  42. package/dist/Tree/utils/conductUtil.js +14 -3
  43. package/dist/Tree/utils/dictUtil.d.ts +7 -3
  44. package/dist/Tree/utils/dictUtil.js +49 -32
  45. package/dist/Tree/utils/diffUtil.d.ts +4 -3
  46. package/dist/Tree/utils/keyUtil.d.ts +2 -0
  47. package/dist/{VirtualList/utils/isFirefox.js → Tree/utils/keyUtil.js} +8 -7
  48. package/dist/Tree/utils/motion.js +6 -5
  49. package/dist/Tree/utils/treeUtil.d.ts +16 -18
  50. package/dist/Tree/utils/treeUtil.js +35 -14
  51. package/dist/TreeSelect/Utils.d.ts +1 -1
  52. package/dist/Util/base.d.ts +1 -1
  53. package/dist/Util/base.js +14 -2
  54. package/dist/index.css +6 -4
  55. package/dist/index.d.ts +3 -5
  56. package/dist/index.js +0 -5
  57. package/dist/theme-chalk/calendar/month-table.scss +1 -1
  58. package/dist/theme-chalk/input/input.scss +5 -3
  59. package/package.json +2 -1
  60. package/dist/Tree/utils/KeyCode.d.ts +0 -436
  61. package/dist/Tree/utils/KeyCode.js +0 -550
  62. package/dist/VirtualList/Filler.d.ts +0 -16
  63. package/dist/VirtualList/Filler.js +0 -78
  64. package/dist/VirtualList/Item.d.ts +0 -7
  65. package/dist/VirtualList/Item.js +0 -37
  66. package/dist/VirtualList/ScrollBar.d.ts +0 -43
  67. package/dist/VirtualList/ScrollBar.js +0 -216
  68. package/dist/VirtualList/VirtualList.d.ts +0 -36
  69. package/dist/VirtualList/VirtualList.js +0 -280
  70. package/dist/VirtualList/hooks/useChildren.d.ts +0 -3
  71. package/dist/VirtualList/hooks/useChildren.js +0 -46
  72. package/dist/VirtualList/hooks/useDiffItem.d.ts +0 -2
  73. package/dist/VirtualList/hooks/useDiffItem.js +0 -39
  74. package/dist/VirtualList/hooks/useFrameWheel.d.ts +0 -6
  75. package/dist/VirtualList/hooks/useFrameWheel.js +0 -72
  76. package/dist/VirtualList/hooks/useHeights.d.ts +0 -3
  77. package/dist/VirtualList/hooks/useHeights.js +0 -83
  78. package/dist/VirtualList/hooks/useLayoutEffect.d.ts +0 -6
  79. package/dist/VirtualList/hooks/useLayoutEffect.js +0 -30
  80. package/dist/VirtualList/hooks/useMobileTouchMove.d.ts +0 -2
  81. package/dist/VirtualList/hooks/useMobileTouchMove.js +0 -92
  82. package/dist/VirtualList/hooks/useOriginScroll.d.ts +0 -2
  83. package/dist/VirtualList/hooks/useOriginScroll.js +0 -56
  84. package/dist/VirtualList/hooks/useScrollTo.d.ts +0 -5
  85. package/dist/VirtualList/hooks/useScrollTo.js +0 -111
  86. package/dist/VirtualList/index.d.ts +0 -2
  87. package/dist/VirtualList/interface.d.ts +0 -8
  88. package/dist/VirtualList/interface.js +0 -17
  89. package/dist/VirtualList/mock.d.ts +0 -6
  90. package/dist/VirtualList/mock.js +0 -29
  91. package/dist/VirtualList/utils/CacheMap.d.ts +0 -7
  92. package/dist/VirtualList/utils/CacheMap.js +0 -36
  93. package/dist/VirtualList/utils/algorithmUtil.d.ts +0 -23
  94. package/dist/VirtualList/utils/algorithmUtil.js +0 -81
  95. package/dist/VirtualList/utils/findDOMNode.d.ts +0 -5
  96. package/dist/VirtualList/utils/findDOMNode.js +0 -30
  97. package/dist/VirtualList/utils/isFirefox.d.ts +0 -2
  98. package/dist/VirtualList/utils/raf.d.ts +0 -5
  99. package/dist/VirtualList/utils/raf.js +0 -57
  100. package/dist/theme-chalk/bak/common/popup.scss +0 -47
  101. package/dist/theme-chalk/bak/common/transition.scss +0 -118
  102. package/dist/theme-chalk/bak/common/var.scss +0 -1476
  103. package/dist/theme-chalk/bak/mixins/_button.scss +0 -224
  104. package/dist/theme-chalk/bak/mixins/_col.scss +0 -38
  105. package/dist/theme-chalk/bak/mixins/_var.scss +0 -55
  106. package/dist/theme-chalk/bak/mixins/config.scss +0 -5
  107. package/dist/theme-chalk/bak/mixins/function.scss +0 -85
  108. package/dist/theme-chalk/bak/mixins/mixins.scss +0 -215
  109. package/dist/theme-chalk/bak/mixins/utils.scss +0 -39
@@ -1,8 +1,6 @@
1
- var __create = Object.create;
2
1
  var __defProp = Object.defineProperty;
3
2
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
3
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
4
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
5
  var __export = (target, all) => {
8
6
  for (var name in all)
@@ -16,25 +14,14 @@ var __copyProps = (to, from, except, desc) => {
16
14
  }
17
15
  return to;
18
16
  };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
17
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
18
 
29
19
  // src/Cascader/Utils.ts
30
20
  var Utils_exports = {};
31
21
  __export(Utils_exports, {
32
- reOrgTree: () => reOrgTree,
33
22
  toArray: () => toArray
34
23
  });
35
24
  module.exports = __toCommonJS(Utils_exports);
36
- var import_cloneDeep = __toESM(require("lodash/cloneDeep"));
37
- var import_omit = __toESM(require("lodash/omit"));
38
25
  var import_Util = require("../Util");
39
26
  var toArray = (val, separator = "/") => {
40
27
  if ((0, import_Util.isNotEmpty)(val)) {
@@ -46,38 +33,7 @@ var toArray = (val, separator = "/") => {
46
33
  }
47
34
  return [];
48
35
  };
49
- var reOrgTree = (treeData, level, { valueKey = "value", labelKey = "label", leafKey = "leaf", childrenKey = "children" }, { valueKey: treeValueKey = "key", labelKey: treeLabelKey = "title", childrenKey: treeChildrenKey = "children" }, plainData = [], parent = null) => {
50
- return treeData.map((node) => {
51
- if (node[childrenKey]) {
52
- node[childrenKey] = reOrgTree(
53
- node[childrenKey],
54
- level,
55
- { valueKey, labelKey, leafKey, childrenKey },
56
- { valueKey: treeValueKey, labelKey: treeLabelKey, childrenKey: treeChildrenKey },
57
- plainData,
58
- (0, import_omit.default)((0, import_cloneDeep.default)(node), childrenKey)
59
- );
60
- }
61
- const id = (0, import_Util.randomCode)(11);
62
- plainData.push({
63
- __id: id,
64
- __level: level,
65
- __pId: (parent == null ? void 0 : parent.__id) ?? "0",
66
- [valueKey]: node[treeValueKey],
67
- [labelKey]: node[treeLabelKey],
68
- [leafKey]: false,
69
- treeChildren: Object.prototype.hasOwnProperty.call(node, treeChildrenKey),
70
- ...parent != null ? { parent } : {}
71
- });
72
- return {
73
- ...node,
74
- __id: id,
75
- __pId: (parent == null ? void 0 : parent.__id) ?? "0"
76
- };
77
- });
78
- };
79
36
  // Annotate the CommonJS export names for ESM import in node:
80
37
  0 && (module.exports = {
81
- reOrgTree,
82
38
  toArray
83
39
  });
@@ -1,2 +1,2 @@
1
1
  export { default as Cascader } from './Cascader';
2
- export type { CascaderMenuProps, CascaderProps, TreeMenuProps } from './typings';
2
+ export type { CascaderMenuProps, CascaderProps } from './typings';
@@ -1,10 +1,9 @@
1
1
  import React from 'react';
2
2
  import { InputRef } from '../Input';
3
3
  import { PopperOptions } from '../Popper';
4
- import { DataNode, DirectoryTreeProps, Key } from '../Tree';
5
4
  import { AnimationEventProps, BaseProps, FormControlBaseProps, NativeProps } from '../types/common';
6
5
  export type ValueType = string[] | string[][];
7
- export interface CascaderProps<V = ValueType, S = DataNode> extends Omit<FormControlBaseProps<V>, 'onChange' | 'value' | 'defaultValue'>, BaseProps, NativeProps, AnimationEventProps, PopperOptions, Omit<DirectoryTreeProps<S>, 'children' | 'style' | 'expandedKeys' | 'className' | 'readOnly' | 'disabled'> {
6
+ export interface CascaderProps<V = ValueType, S = any> extends Omit<FormControlBaseProps<V>, 'onChange' | 'value' | 'defaultValue'>, BaseProps, NativeProps, AnimationEventProps, PopperOptions {
8
7
  /** 初始值 */
9
8
  defaultValue?: ValueType;
10
9
  /** 值(可控) */
@@ -13,8 +12,6 @@ export interface CascaderProps<V = ValueType, S = DataNode> extends Omit<FormCon
13
12
  options?: any[];
14
13
  /** 配置选项 */
15
14
  props?: CascaderMenuProps;
16
- /** 树形租金配置选项 */
17
- treeMenuProps?: TreeMenuProps;
18
15
  /** 是否禁用 */
19
16
  disabled?: boolean;
20
17
  /** 是否可以清空选项 */
@@ -61,7 +58,6 @@ export interface CascaderProps<V = ValueType, S = DataNode> extends Omit<FormCon
61
58
  prepend?: React.ReactElement<any> | string | number;
62
59
  /** 输入框后置内容,只对 type="text" 有效 */
63
60
  append?: React.ReactElement | string | number;
64
- expandedKeys?: Key[][];
65
61
  lable?: string;
66
62
  /** 是否追加到body下 */
67
63
  appendToBody?: boolean;
@@ -83,19 +79,7 @@ export interface CascaderMenuProps {
83
79
  /** 是否动态加载子节点,需与 lazyLoad 方法结合使用 */
84
80
  lazy?: boolean;
85
81
  /** 加载动态数据的方法,仅在 lazy 为 true 时有效 */
86
- lazyLoad?: (node: object, resolve?: (value: object[], isTree?: boolean) => void, reject?: () => void) => void;
87
- /** 指定选项的值为选项对象的某个属性值 */
88
- valueKey?: string;
89
- /** 指定选项标签为选项对象的某个属性值 */
90
- labelKey?: string;
91
- /** 指定选项的子选项为选项对象的某个属性值 */
92
- childrenKey?: string;
93
- /** 指定选项的禁用为选项对象的某个属性值 */
94
- disabledKey?: string;
95
- /** 指定选项的叶子节点的标志位为选项对象的某个属性值 */
96
- leafKey?: string;
97
- }
98
- export interface TreeMenuProps {
82
+ lazyLoad?: (node: object, resolve?: (value: object[]) => void, reject?: () => void) => void;
99
83
  /** 指定选项的值为选项对象的某个属性值 */
100
84
  valueKey?: string;
101
85
  /** 指定选项标签为选项对象的某个属性值 */
@@ -1,12 +1,5 @@
1
1
  import { Key } from '../Tree';
2
2
  import { CascaderProps, OptionNode } from './typings';
3
- /**
4
- * @author Parker
5
- * @CreateTime 2022/4/17 16:02:49
6
- * @LastEditor Parker
7
- * @ModifyTime 2022/11/20 13:05:51
8
- * @Description
9
- */
10
3
  export declare const useCascader: (initialData: object[], props: CascaderProps, value: string[] | string[][]) => {
11
4
  /** 最高层级 */
12
5
  allLevel: number;
@@ -17,8 +10,7 @@ export declare const useCascader: (initialData: object[], props: CascaderProps,
17
10
  * @param nodes
18
11
  * @param level 层级
19
12
  */
20
- storeOptionData: (nodes: object[], level: number, parent: OptionNode, { isTree, isCover }: {
21
- isTree?: boolean;
13
+ storeOptionData: (nodes: object[], level: number, parent: OptionNode, { isCover }: {
22
14
  isCover?: boolean;
23
15
  }) => OptionNode[];
24
16
  /**
@@ -78,12 +70,6 @@ export declare const useCascader: (initialData: object[], props: CascaderProps,
78
70
  * @returns
79
71
  */
80
72
  getDataType: (level: number) => any;
81
- /**
82
- * 获取树数据
83
- * @param level 层级
84
- * @returns
85
- */
86
- getTreeData: (level: number) => any[];
87
73
  /**
88
74
  * 获取扩展key
89
75
  * @param level 层级
@@ -38,12 +38,10 @@ var import_isEqual = __toESM(require("lodash/isEqual"));
38
38
  var import_last = __toESM(require("lodash/last"));
39
39
  var import_react = require("react");
40
40
  var import_Util = require("../Util");
41
- var import_Utils = require("./Utils");
42
41
  var useCascader = (initialData, props, value) => {
43
- const { props: menuProps, treeMenuProps, showAllLevels, separator, expandedKeys = [] } = props;
42
+ const { props: menuProps, showAllLevels, separator } = props;
44
43
  const { childrenKey = "children", valueKey = "value", labelKey = "label", leafKey = "leaf", lazy } = menuProps;
45
44
  const [allLevel, setAllLevel] = (0, import_react.useState)(0);
46
- const [treeData, setTreeData] = (0, import_react.useState)({});
47
45
  const [dataTypes, setDataTypes] = (0, import_react.useState)([]);
48
46
  const _dataTypes = (0, import_react.useRef)([]);
49
47
  const [optionData, setOptionData] = (0, import_react.useState)({});
@@ -301,26 +299,18 @@ var useCascader = (initialData, props, value) => {
301
299
  }
302
300
  }, []);
303
301
  const storeOptionData = (0, import_react.useCallback)(
304
- (nodes, level, parent, { isTree, isCover }) => {
302
+ (nodes, level, parent, { isCover }) => {
305
303
  let data = (0, import_cloneDeep.default)(_optionData.current);
306
304
  let newNodes = [];
307
- if (isTree) {
308
- const treeNodes = (0, import_Utils.reOrgTree)(nodes, level, menuProps, treeMenuProps, newNodes);
309
- setTreeData({
310
- ...treeData,
311
- [`level${level}`]: treeNodes
312
- });
313
- } else {
314
- newNodes = nodes.map((node) => ({
315
- ...node,
316
- __level: level,
317
- __id: (0, import_Util.randomCode)(11),
318
- __pId: (parent == null ? void 0 : parent.__id) ?? "0",
319
- __leaf: node[leafKey] ?? false,
320
- __checked: false,
321
- __indeterminate: false
322
- }));
323
- }
305
+ newNodes = nodes.map((node) => ({
306
+ ...node,
307
+ __level: level,
308
+ __id: (0, import_Util.randomCode)(11),
309
+ __pId: (parent == null ? void 0 : parent.__id) ?? "0",
310
+ __leaf: node[leafKey] ?? false,
311
+ __checked: false,
312
+ __indeterminate: false
313
+ }));
324
314
  if ((0, import_Util.isEmpty)(data[`level${level}`])) {
325
315
  data = {
326
316
  ...data,
@@ -350,19 +340,19 @@ var useCascader = (initialData, props, value) => {
350
340
  selectedValue.current.push(null);
351
341
  selectedLabel.current.push(null);
352
342
  selectedNode.current.push(null);
353
- setDataTypes(_dataTypes.current = [..._dataTypes.current, isTree ? true : false]);
343
+ setDataTypes(_dataTypes.current);
354
344
  }
355
345
  } else {
356
346
  selectedValue.current[level] = null;
357
347
  selectedLabel.current[level] = null;
358
348
  selectedNode.current[level] = null;
359
349
  const _types = (0, import_cloneDeep.default)(_dataTypes.current);
360
- _types[level] = isTree ? true : false;
350
+ _types[level] = false;
361
351
  setDataTypes(_dataTypes.current = _types);
362
352
  }
363
353
  return data[`level${level}`];
364
354
  },
365
- [allLevel, childrenKey, leafKey, menuProps, treeData, treeMenuProps]
355
+ [allLevel, childrenKey, leafKey]
366
356
  );
367
357
  const setNodeLeaf = (0, import_react.useCallback)(
368
358
  (node, isLeaf) => {
@@ -380,12 +370,6 @@ var useCascader = (initialData, props, value) => {
380
370
  },
381
371
  [dataTypes, lazy]
382
372
  );
383
- const getTreeData = (0, import_react.useCallback)(
384
- (level) => {
385
- return lazy && treeData[`level${level}`];
386
- },
387
- [lazy, treeData]
388
- );
389
373
  const getExpandedKeys = (0, import_react.useCallback)((level) => {
390
374
  return expandKeys.current[`level${level}`] ?? [];
391
375
  }, []);
@@ -511,11 +495,6 @@ var useCascader = (initialData, props, value) => {
511
495
  }
512
496
  }
513
497
  }, [value, allLevel, props.options]);
514
- (0, import_react.useEffect)(() => {
515
- expandedKeys.forEach((keys, level) => {
516
- setExpandedKeys(level, keys);
517
- });
518
- }, [expandedKeys, setExpandedKeys]);
519
498
  return {
520
499
  // eslint-disable-next-line lines-around-comment
521
500
  /** 最高层级 */
@@ -585,12 +564,6 @@ var useCascader = (initialData, props, value) => {
585
564
  * @returns
586
565
  */
587
566
  getDataType,
588
- /**
589
- * 获取树数据
590
- * @param level 层级
591
- * @returns
592
- */
593
- getTreeData,
594
567
  /**
595
568
  * 获取扩展key
596
569
  * @param level 层级
@@ -83,7 +83,7 @@ var DatePicker = (0, import_react.memo)(
83
83
  if ((0, import_Util.isNotEmpty)(props.format)) {
84
84
  return props.format;
85
85
  } else {
86
- switch (props.type) {
86
+ switch (type) {
87
87
  case "year":
88
88
  return "YYYY";
89
89
  case "month":
@@ -94,12 +94,12 @@ var DatePicker = (0, import_react.memo)(
94
94
  return "YYYY-MM-DD";
95
95
  }
96
96
  }
97
- }, [props.format, props.type]);
97
+ }, [props.format, type]);
98
98
  const placeholder = (0, import_react.useMemo)(() => {
99
99
  if ((0, import_Util.isNotEmpty)(props.placeholder)) {
100
100
  return props.placeholder;
101
101
  } else {
102
- switch (props.type) {
102
+ switch (type) {
103
103
  case "year":
104
104
  return "请选择年份";
105
105
  case "month":
@@ -110,7 +110,7 @@ var DatePicker = (0, import_react.memo)(
110
110
  return "请选择日期";
111
111
  }
112
112
  }
113
- }, [props.placeholder, props.type]);
113
+ }, [props.placeholder, type]);
114
114
  const dateProp = (0, import_react.useMemo)(() => {
115
115
  if (type === "week") {
116
116
  return currentDate.current || (currentDate.current = typeof value === "string" ? (0, import_Calendar.toDayjs)(value, props.valueFormat ?? format) : (0, import_Calendar.initDate)());
@@ -216,7 +216,7 @@ var DatePicker = (0, import_react.memo)(
216
216
  value: {
217
217
  value: dateProp,
218
218
  valueRange,
219
- dateType: props.type,
219
+ dateType: type,
220
220
  isoWeek: props.isoWeek,
221
221
  showToday: props.showToday,
222
222
  popperInstRef,
@@ -36,7 +36,7 @@ var import_react = __toESM(require("react"));
36
36
  var import_Util = require("../Util");
37
37
  var ImgEmpty = () => {
38
38
  const ids = (0, import_react.useMemo)(() => [`linearGradient-${(0, import_Util.randomCode)(5)}`, `linearGradient-${(0, import_Util.randomCode)(5)}`], []);
39
- return /* @__PURE__ */ import_react.default.createElement("svg", { viewBox: "0 0 79 86", version: "1.1", xmlns: "http://www.w3.org/2000/svg", xmlnsXlink: "http://www.w3.org/1999/xlink" }, /* @__PURE__ */ import_react.default.createElement("defs", null, /* @__PURE__ */ import_react.default.createElement("linearGradient", { id: ids[0], x1: "38.8503086%", y1: "0%", x2: "61.1496914%", y2: "100%" }, /* @__PURE__ */ import_react.default.createElement("stop", { "stop-color": "var(--el-empty-fill-color-1)", offset: "0%" }), /* @__PURE__ */ import_react.default.createElement("stop", { "stop-color": "var(--el-empty-fill-color-4)", offset: "100%" })), /* @__PURE__ */ import_react.default.createElement("linearGradient", { id: ids[1], x1: "0%", y1: "9.5%", x2: "100%", y2: "90.5%" }, /* @__PURE__ */ import_react.default.createElement("stop", { "stop-color": "var(--el-empty-fill-color-1)", offset: "0%" }), /* @__PURE__ */ import_react.default.createElement("stop", { "stop-color": "var(--el-empty-fill-color-6)", offset: "100%" })), /* @__PURE__ */ import_react.default.createElement("rect", { id: "path-3-1", x: "0", y: "0", width: "17", height: "36" })), /* @__PURE__ */ import_react.default.createElement("g", { id: "Illustrations", stroke: "none", "stroke-width": "1", fill: "none", "fill-rule": "evenodd" }, /* @__PURE__ */ import_react.default.createElement("g", { id: "B-type", transform: "translate(-1268.000000, -535.000000)" }, /* @__PURE__ */ import_react.default.createElement("g", { id: "Group-2", transform: "translate(1268.000000, 535.000000)" }, /* @__PURE__ */ import_react.default.createElement(
39
+ return /* @__PURE__ */ import_react.default.createElement("svg", { viewBox: "0 0 79 86", version: "1.1", xmlns: "http://www.w3.org/2000/svg", xmlnsXlink: "http://www.w3.org/1999/xlink" }, /* @__PURE__ */ import_react.default.createElement("defs", null, /* @__PURE__ */ import_react.default.createElement("linearGradient", { id: ids[0], x1: "38.8503086%", y1: "0%", x2: "61.1496914%", y2: "100%" }, /* @__PURE__ */ import_react.default.createElement("stop", { "stop-color": "var(--el-empty-fill-color-1)", offset: "0%" }), /* @__PURE__ */ import_react.default.createElement("stop", { "stop-color": "var(--el-empty-fill-color-4)", offset: "100%" })), /* @__PURE__ */ import_react.default.createElement("linearGradient", { id: ids[1], x1: "0%", y1: "9.5%", x2: "100%", y2: "90.5%" }, /* @__PURE__ */ import_react.default.createElement("stop", { "stop-color": "var(--el-empty-fill-color-1)", offset: "0%" }), /* @__PURE__ */ import_react.default.createElement("stop", { "stop-color": "var(--el-empty-fill-color-6)", offset: "100%" })), /* @__PURE__ */ import_react.default.createElement("rect", { id: "path-3-1", x: "0", y: "0", width: "17", height: "36" })), /* @__PURE__ */ import_react.default.createElement("g", { id: "Illustrations", stroke: "none", "stroke-width": "1", fill: "none", fillRule: "evenodd" }, /* @__PURE__ */ import_react.default.createElement("g", { id: "B-type", transform: "translate(-1268.000000, -535.000000)" }, /* @__PURE__ */ import_react.default.createElement("g", { id: "Group-2", transform: "translate(1268.000000, 535.000000)" }, /* @__PURE__ */ import_react.default.createElement(
40
40
  "path",
41
41
  {
42
42
  id: "Oval-Copy-2",
@@ -1,22 +1,15 @@
1
- import React, { Ref } from 'react';
1
+ import * as React from 'react';
2
2
  import RcTree from './RCTree';
3
- import { Key } from './typings';
4
3
  import { TreeProps } from './Tree';
4
+ import { BasicDataNode, DataNode, Key } from './typings';
5
5
  export type ExpandAction = false | 'click' | 'doubleClick';
6
- export interface DirectoryTreeProps<T> extends TreeProps<T> {
6
+ export interface DirectoryTreeProps<T extends BasicDataNode = DataNode> extends TreeProps<T> {
7
7
  expandAction?: ExpandAction;
8
8
  }
9
+ type DirectoryTreeCompoundedComponent = (<T extends BasicDataNode | DataNode = DataNode>(props: React.PropsWithChildren<DirectoryTreeProps<T>> & React.RefAttributes<RcTree>) => React.ReactElement) & Pick<React.FC, 'displayName'>;
9
10
  export interface DirectoryTreeState {
10
11
  expandedKeys?: Key[];
11
12
  selectedKeys?: Key[];
12
13
  }
13
- declare const ForwardDirectoryTree: <RecordType extends object = any>(props: DirectoryTreeProps<RecordType> & {
14
- ref?: Ref<RcTree>;
15
- }) => React.ReactElement;
16
- type InternalDirectoryTreeType = typeof ForwardDirectoryTree;
17
- interface DirectoryTreeInterface extends InternalDirectoryTreeType {
18
- displayName?: string;
19
- defaultProps?: Partial<DirectoryTreeProps<any>>;
20
- }
21
- declare const DirectoryTree: DirectoryTreeInterface;
22
- export default DirectoryTree;
14
+ declare const ForwardDirectoryTree: DirectoryTreeCompoundedComponent;
15
+ export default ForwardDirectoryTree;
@@ -33,48 +33,25 @@ __export(DirectoryTree_exports, {
33
33
  });
34
34
  module.exports = __toCommonJS(DirectoryTree_exports);
35
35
  var import_classnames = __toESM(require("classnames"));
36
- var import_debounce = __toESM(require("lodash/debounce"));
37
- var import_react = __toESM(require("react"));
38
- var import_util = require("./util");
39
- var import_treeUtil = require("./utils/treeUtil");
36
+ var React = __toESM(require("react"));
40
37
  var import_Icon = require("../Icon");
41
38
  var import_Tree = __toESM(require("./Tree"));
39
+ var import_util = require("./util");
42
40
  var import_dictUtil = require("./utils/dictUtil");
43
- var hasChildren = (props) => {
44
- const { eventKey } = props;
45
- const {
46
- context: { keyEntities }
47
- } = props;
48
- const { children } = keyEntities[eventKey] || {};
49
- return !!(children || []).length;
50
- };
51
- var isLeaf = (props) => {
52
- const { loaded } = props;
53
- const {
54
- context: { loadData }
55
- } = props;
56
- const _hasChildren = hasChildren(props);
57
- if (props.isLeaf === false) {
58
- return false;
59
- }
60
- return props.isLeaf || !loadData && !_hasChildren || loadData && loaded && !_hasChildren;
61
- };
41
+ var import_treeUtil = require("./utils/treeUtil");
62
42
  function getIcon(props) {
63
- const { expanded } = props;
64
- const _isLeaf = isLeaf(props);
65
- if (_isLeaf) {
66
- return /* @__PURE__ */ import_react.default.createElement(import_Icon.Icon, { name: "file-lines", prefix: "far" });
43
+ const { isLeaf, expanded } = props;
44
+ if (isLeaf) {
45
+ return /* @__PURE__ */ React.createElement(import_Icon.Icon, { name: "file-lines", prefix: "far" });
67
46
  }
68
- return expanded ? /* @__PURE__ */ import_react.default.createElement(import_Icon.Icon, { name: "folder-open", prefix: "far" }) : /* @__PURE__ */ import_react.default.createElement(import_Icon.Icon, { name: "folder-closed", prefix: "fas" });
47
+ return expanded ? /* @__PURE__ */ React.createElement(import_Icon.Icon, { name: "folder-open", prefix: "far" }) : /* @__PURE__ */ React.createElement(import_Icon.Icon, { name: "folder-closed", prefix: "fas" });
69
48
  }
70
49
  function getTreeData({ treeData, children }) {
71
50
  return treeData || (0, import_treeUtil.convertTreeToData)(children);
72
51
  }
73
- function InternalDirectoryTree({ defaultExpandAll, defaultExpandParent, defaultExpandedKeys, ...props }, ref) {
74
- const lastSelectedKey = (0, import_react.useRef)();
75
- const cachedSelectedKeys = (0, import_react.useRef)();
76
- const treeRef = (0, import_react.createRef)();
77
- (0, import_react.useImperativeHandle)(ref, () => treeRef.current);
52
+ var DirectoryTree = ({ defaultExpandAll, defaultExpandParent, defaultExpandedKeys, ...props }, ref) => {
53
+ const lastSelectedKey = React.useRef(null);
54
+ const cachedSelectedKeys = React.useRef(null);
78
55
  const getInitExpandedKeys = () => {
79
56
  const { keyEntities } = (0, import_treeUtil.convertDataToEntities)(getTreeData(props));
80
57
  let initExpandedKeys;
@@ -83,31 +60,22 @@ function InternalDirectoryTree({ defaultExpandAll, defaultExpandParent, defaultE
83
60
  } else if (defaultExpandParent) {
84
61
  initExpandedKeys = (0, import_util.conductExpandParent)(props.expandedKeys || defaultExpandedKeys || [], keyEntities);
85
62
  } else {
86
- initExpandedKeys = props.expandedKeys || defaultExpandedKeys;
63
+ initExpandedKeys = props.expandedKeys || defaultExpandedKeys || [];
87
64
  }
88
65
  return initExpandedKeys;
89
66
  };
90
- const [selectedKeys, setSelectedKeys] = (0, import_react.useState)(props.selectedKeys || props.defaultSelectedKeys || []);
91
- const [expandedKeys, setExpandedKeys] = (0, import_react.useState)(getInitExpandedKeys());
92
- (0, import_react.useEffect)(() => {
67
+ const [selectedKeys, setSelectedKeys] = React.useState(props.selectedKeys || props.defaultSelectedKeys || []);
68
+ const [expandedKeys, setExpandedKeys] = React.useState(() => getInitExpandedKeys());
69
+ React.useEffect(() => {
93
70
  if ("selectedKeys" in props) {
94
71
  setSelectedKeys(props.selectedKeys);
95
72
  }
96
73
  }, [props.selectedKeys]);
97
- (0, import_react.useEffect)(() => {
74
+ React.useEffect(() => {
98
75
  if ("expandedKeys" in props) {
99
76
  setExpandedKeys(props.expandedKeys);
100
77
  }
101
78
  }, [props.expandedKeys]);
102
- const expandFolderNode = (event, node) => {
103
- if (node.isLeaf || event.shiftKey || event.metaKey || event.ctrlKey) {
104
- return;
105
- }
106
- treeRef.current.onNodeExpand(event, node);
107
- };
108
- const onDebounceExpand = (0, import_debounce.default)(expandFolderNode, 200, {
109
- leading: true
110
- });
111
79
  const onExpand = (keys, info) => {
112
80
  var _a;
113
81
  if (!("expandedKeys" in props)) {
@@ -115,25 +83,9 @@ function InternalDirectoryTree({ defaultExpandAll, defaultExpandParent, defaultE
115
83
  }
116
84
  return (_a = props.onExpand) == null ? void 0 : _a.call(props, keys, info);
117
85
  };
118
- const onClick = (event, node) => {
119
- var _a;
120
- const { expandAction } = props;
121
- if (expandAction === "click") {
122
- onDebounceExpand(event, node);
123
- }
124
- (_a = props.onClick) == null ? void 0 : _a.call(props, event, node);
125
- };
126
- const onDoubleClick = (event, node) => {
127
- var _a;
128
- const { expandAction } = props;
129
- if (expandAction === "doubleClick") {
130
- onDebounceExpand(event, node);
131
- }
132
- (_a = props.onDoubleClick) == null ? void 0 : _a.call(props, event, node);
133
- };
134
86
  const onSelect = (keys, event) => {
135
87
  var _a;
136
- const { multiple } = props;
88
+ const { multiple, fieldNames } = props;
137
89
  const { node, nativeEvent } = event;
138
90
  const { key = "" } = node;
139
91
  const treeData = getTreeData(props);
@@ -149,7 +101,7 @@ function InternalDirectoryTree({ defaultExpandAll, defaultExpandParent, defaultE
149
101
  newSelectedKeys = keys;
150
102
  lastSelectedKey.current = key;
151
103
  cachedSelectedKeys.current = newSelectedKeys;
152
- newEvent.selectedNodes = (0, import_dictUtil.convertDirectoryKeysToNodes)(treeData, newSelectedKeys);
104
+ newEvent.selectedNodes = (0, import_dictUtil.convertDirectoryKeysToNodes)(treeData, newSelectedKeys, fieldNames);
153
105
  } else if (multiple && shiftPick) {
154
106
  newSelectedKeys = Array.from(
155
107
  /* @__PURE__ */ new Set([
@@ -158,47 +110,46 @@ function InternalDirectoryTree({ defaultExpandAll, defaultExpandParent, defaultE
158
110
  treeData,
159
111
  expandedKeys,
160
112
  startKey: key,
161
- endKey: lastSelectedKey.current
113
+ endKey: lastSelectedKey.current,
114
+ fieldNames
162
115
  })
163
116
  ])
164
117
  );
165
- newEvent.selectedNodes = (0, import_dictUtil.convertDirectoryKeysToNodes)(treeData, newSelectedKeys);
118
+ newEvent.selectedNodes = (0, import_dictUtil.convertDirectoryKeysToNodes)(treeData, newSelectedKeys, fieldNames);
166
119
  } else {
167
120
  newSelectedKeys = [key];
168
121
  lastSelectedKey.current = key;
169
122
  cachedSelectedKeys.current = newSelectedKeys;
170
- newEvent.selectedNodes = (0, import_dictUtil.convertDirectoryKeysToNodes)(treeData, newSelectedKeys);
123
+ newEvent.selectedNodes = (0, import_dictUtil.convertDirectoryKeysToNodes)(treeData, newSelectedKeys, fieldNames);
171
124
  }
172
125
  (_a = props.onSelect) == null ? void 0 : _a.call(props, newSelectedKeys, newEvent);
173
126
  if (!("selectedKeys" in props)) {
174
127
  setSelectedKeys(newSelectedKeys);
175
128
  }
176
129
  };
177
- const { prefixCls = "r-tree", className, ...otherProps } = props;
130
+ const { className, showIcon = true, expandAction = "click", ...otherProps } = props;
131
+ const prefixCls = "el-tree";
178
132
  const connectClassName = (0, import_classnames.default)(`${prefixCls}-directory`, className);
179
- return /* @__PURE__ */ import_react.default.createElement(
133
+ return /* @__PURE__ */ React.createElement(
180
134
  import_Tree.default,
181
135
  {
182
136
  icon: getIcon,
183
- ref: treeRef,
137
+ ref,
184
138
  blockNode: true,
185
139
  ...otherProps,
140
+ showIcon,
141
+ expandAction,
186
142
  prefixCls,
187
143
  className: connectClassName,
188
144
  expandedKeys,
189
145
  selectedKeys,
190
146
  onSelect,
191
- onClick,
192
- onDoubleClick,
193
147
  onExpand
194
148
  }
195
149
  );
196
- }
197
- var ForwardDirectoryTree = (0, import_react.forwardRef)(InternalDirectoryTree);
198
- var DirectoryTree = ForwardDirectoryTree;
199
- DirectoryTree.displayName = "DirectoryTree";
200
- DirectoryTree.defaultProps = {
201
- showIcon: true,
202
- expandAction: "doubleClick"
203
150
  };
204
- var DirectoryTree_default = DirectoryTree;
151
+ var ForwardDirectoryTree = React.forwardRef(DirectoryTree);
152
+ if (process.env.NODE_ENV !== "production") {
153
+ ForwardDirectoryTree.displayName = "DirectoryTree";
154
+ }
155
+ var DirectoryTree_default = ForwardDirectoryTree;
@@ -1,6 +1,8 @@
1
1
  import React from 'react';
2
- export default function DropIndicator({ dropPosition, dropLevelOffset, indent }: {
2
+ export interface DropIndicatorProps {
3
3
  dropPosition: -1 | 0 | 1;
4
4
  dropLevelOffset: number;
5
5
  indent: number;
6
- }): React.JSX.Element;
6
+ }
7
+ declare const DropIndicator: React.FC<Readonly<DropIndicatorProps>>;
8
+ export default DropIndicator;
@@ -29,11 +29,12 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
29
29
  // src/Tree/DropIndicator.tsx
30
30
  var DropIndicator_exports = {};
31
31
  __export(DropIndicator_exports, {
32
- default: () => DropIndicator
32
+ default: () => DropIndicator_default
33
33
  });
34
34
  module.exports = __toCommonJS(DropIndicator_exports);
35
35
  var import_react = __toESM(require("react"));
36
- function DropIndicator({ dropPosition, dropLevelOffset, indent }) {
36
+ var DropIndicator = (props) => {
37
+ const { dropPosition, dropLevelOffset, indent } = props;
37
38
  const style = {
38
39
  pointerEvents: "none",
39
40
  position: "absolute",
@@ -56,4 +57,8 @@ function DropIndicator({ dropPosition, dropLevelOffset, indent }) {
56
57
  break;
57
58
  }
58
59
  return /* @__PURE__ */ import_react.default.createElement("div", { style });
60
+ };
61
+ if (process.env.NODE_ENV !== "production") {
62
+ DropIndicator.displayName = "DropIndicator";
59
63
  }
64
+ var DropIndicator_default = DropIndicator;
@@ -1,9 +1,9 @@
1
- import React from 'react';
1
+ import * as React from 'react';
2
2
  interface IndentProps {
3
3
  prefixCls: string;
4
4
  level: number;
5
5
  isStart: boolean[];
6
6
  isEnd: boolean[];
7
7
  }
8
- declare const _default: React.MemoExoticComponent<({ prefixCls, level, isStart, isEnd }: IndentProps) => React.JSX.Element>;
8
+ declare const _default: React.NamedExoticComponent<IndentProps>;
9
9
  export default _default;
@@ -33,13 +33,13 @@ __export(Indent_exports, {
33
33
  });
34
34
  module.exports = __toCommonJS(Indent_exports);
35
35
  var import_classnames = __toESM(require("classnames"));
36
- var import_react = __toESM(require("react"));
36
+ var React = __toESM(require("react"));
37
37
  var Indent = ({ prefixCls, level, isStart, isEnd }) => {
38
38
  const baseClassName = `${prefixCls}-indent-unit`;
39
39
  const list = [];
40
40
  for (let i = 0; i < level; i += 1) {
41
41
  list.push(
42
- /* @__PURE__ */ import_react.default.createElement(
42
+ /* @__PURE__ */ React.createElement(
43
43
  "span",
44
44
  {
45
45
  key: i,
@@ -51,6 +51,6 @@ var Indent = ({ prefixCls, level, isStart, isEnd }) => {
51
51
  )
52
52
  );
53
53
  }
54
- return /* @__PURE__ */ import_react.default.createElement("span", { "aria-hidden": "true", className: `${prefixCls}-indent` }, list);
54
+ return /* @__PURE__ */ React.createElement("span", { "aria-hidden": "true", className: `${prefixCls}-indent` }, list);
55
55
  };
56
- var Indent_default = (0, import_react.memo)(Indent);
56
+ var Indent_default = React.memo(Indent);
@@ -1,7 +1,6 @@
1
- import { FC } from 'react';
2
- import { TreeNodeProps } from './TreeNode';
3
- import { FlattenNode } from './typings';
4
- import { TreeNodeRequiredProps } from './utils/treeUtil';
1
+ import * as React from 'react';
2
+ import type { FlattenNode, TreeNodeProps } from './typings';
3
+ import { type TreeNodeRequiredProps } from './utils/treeUtil';
5
4
  interface MotionTreeNodeProps extends Omit<TreeNodeProps, 'domRef'> {
6
5
  active: boolean;
7
6
  motion?: any;
@@ -11,5 +10,5 @@ interface MotionTreeNodeProps extends Omit<TreeNodeProps, 'domRef'> {
11
10
  motionType?: 'show' | 'hide';
12
11
  treeNodeRequiredProps: TreeNodeRequiredProps;
13
12
  }
14
- declare const MotionTreeNode: FC<MotionTreeNodeProps>;
13
+ declare const MotionTreeNode: React.ForwardRefExoticComponent<MotionTreeNodeProps & React.RefAttributes<HTMLDivElement>>;
15
14
  export default MotionTreeNode;