@qsxy/element-plus-react 1.0.0-next.5 → 1.0.0-next.8

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 (119) hide show
  1. package/dist/Avatar/Avatar.d.ts +4 -0
  2. package/dist/Avatar/Avatar.js +86 -0
  3. package/dist/Avatar/index.d.ts +2 -0
  4. package/dist/{VirtualList → Avatar}/index.js +7 -7
  5. package/dist/Avatar/typings.d.ts +21 -0
  6. package/dist/{VirtualList/interface.js → Avatar/typings.js} +3 -3
  7. package/dist/Cascader/Cascader.js +147 -182
  8. package/dist/Cascader/CascaderContext.d.ts +4 -10
  9. package/dist/Cascader/CascaderContext.js +2 -6
  10. package/dist/Cascader/CascaderDropdown.js +1 -1
  11. package/dist/Cascader/CascaderMenu.d.ts +0 -7
  12. package/dist/Cascader/CascaderMenu.js +4 -77
  13. package/dist/Cascader/Utils.d.ts +0 -2
  14. package/dist/Cascader/Utils.js +0 -44
  15. package/dist/Cascader/index.d.ts +1 -1
  16. package/dist/Cascader/typings.d.ts +2 -18
  17. package/dist/Cascader/useCascader.d.ts +1 -15
  18. package/dist/Cascader/useCascader.js +14 -41
  19. package/dist/DatePicker/DatePicker.js +5 -5
  20. package/dist/Empty/ImgEmpty.js +1 -1
  21. package/dist/Loading/Loading.js +14 -4
  22. package/dist/Tree/DirectoryTree.d.ts +6 -13
  23. package/dist/Tree/DirectoryTree.js +32 -81
  24. package/dist/Tree/DropIndicator.d.ts +4 -2
  25. package/dist/Tree/DropIndicator.js +7 -2
  26. package/dist/Tree/Indent.d.ts +2 -2
  27. package/dist/Tree/Indent.js +4 -4
  28. package/dist/Tree/MotionTreeNode.d.ts +4 -5
  29. package/dist/Tree/MotionTreeNode.js +69 -52
  30. package/dist/Tree/NodeList.d.ts +15 -11
  31. package/dist/Tree/NodeList.js +38 -29
  32. package/dist/Tree/RCTree.d.ts +77 -75
  33. package/dist/Tree/RCTree.js +199 -188
  34. package/dist/Tree/Tree.d.ts +3 -3
  35. package/dist/Tree/Tree.js +27 -27
  36. package/dist/Tree/TreeNode.d.ts +5 -90
  37. package/dist/Tree/TreeNode.js +320 -422
  38. package/dist/Tree/contextTypes.d.ts +36 -30
  39. package/dist/Tree/contextTypes.js +17 -4
  40. package/dist/Tree/index.d.ts +2 -2
  41. package/dist/Tree/typings.d.ts +60 -19
  42. package/dist/Tree/typings.js +1 -13
  43. package/dist/Tree/typings.tsx--bak +245 -0
  44. package/dist/Tree/useUnmount.d.ts +5 -0
  45. package/dist/{VirtualList/hooks/useChildren.js → Tree/useUnmount.js} +24 -16
  46. package/dist/Tree/util.d.ts +17 -21
  47. package/dist/Tree/util.js +21 -52
  48. package/dist/Tree/utils/conductUtil.d.ts +2 -2
  49. package/dist/Tree/utils/conductUtil.js +14 -3
  50. package/dist/Tree/utils/dictUtil.d.ts +7 -3
  51. package/dist/Tree/utils/dictUtil.js +49 -32
  52. package/dist/Tree/utils/diffUtil.d.ts +4 -3
  53. package/dist/Tree/utils/keyUtil.d.ts +2 -0
  54. package/dist/{VirtualList/utils/isFirefox.js → Tree/utils/keyUtil.js} +8 -7
  55. package/dist/Tree/utils/motion.js +6 -5
  56. package/dist/Tree/utils/treeUtil.d.ts +16 -18
  57. package/dist/Tree/utils/treeUtil.js +35 -14
  58. package/dist/TreeSelect/Utils.d.ts +1 -1
  59. package/dist/Util/base.d.ts +1 -1
  60. package/dist/Util/base.js +14 -2
  61. package/dist/hooks/useClassNames.d.ts +1 -0
  62. package/dist/hooks/useClassNames.js +11 -1
  63. package/dist/index.css +58 -6
  64. package/dist/index.d.ts +5 -5
  65. package/dist/index.js +3 -5
  66. package/dist/theme-chalk/avatar/index.scss +50 -0
  67. package/dist/theme-chalk/calendar/month-table.scss +1 -1
  68. package/dist/theme-chalk/index.scss +1 -0
  69. package/dist/theme-chalk/input/input.scss +5 -3
  70. package/dist/theme-chalk/loading/index.scss +5 -7
  71. package/package.json +2 -1
  72. package/dist/Tree/utils/KeyCode.d.ts +0 -436
  73. package/dist/Tree/utils/KeyCode.js +0 -550
  74. package/dist/VirtualList/Filler.d.ts +0 -16
  75. package/dist/VirtualList/Filler.js +0 -78
  76. package/dist/VirtualList/Item.d.ts +0 -7
  77. package/dist/VirtualList/Item.js +0 -37
  78. package/dist/VirtualList/ScrollBar.d.ts +0 -43
  79. package/dist/VirtualList/ScrollBar.js +0 -216
  80. package/dist/VirtualList/VirtualList.d.ts +0 -36
  81. package/dist/VirtualList/VirtualList.js +0 -280
  82. package/dist/VirtualList/hooks/useChildren.d.ts +0 -3
  83. package/dist/VirtualList/hooks/useDiffItem.d.ts +0 -2
  84. package/dist/VirtualList/hooks/useDiffItem.js +0 -39
  85. package/dist/VirtualList/hooks/useFrameWheel.d.ts +0 -6
  86. package/dist/VirtualList/hooks/useFrameWheel.js +0 -72
  87. package/dist/VirtualList/hooks/useHeights.d.ts +0 -3
  88. package/dist/VirtualList/hooks/useHeights.js +0 -83
  89. package/dist/VirtualList/hooks/useLayoutEffect.d.ts +0 -6
  90. package/dist/VirtualList/hooks/useLayoutEffect.js +0 -30
  91. package/dist/VirtualList/hooks/useMobileTouchMove.d.ts +0 -2
  92. package/dist/VirtualList/hooks/useMobileTouchMove.js +0 -92
  93. package/dist/VirtualList/hooks/useOriginScroll.d.ts +0 -2
  94. package/dist/VirtualList/hooks/useOriginScroll.js +0 -56
  95. package/dist/VirtualList/hooks/useScrollTo.d.ts +0 -5
  96. package/dist/VirtualList/hooks/useScrollTo.js +0 -111
  97. package/dist/VirtualList/index.d.ts +0 -2
  98. package/dist/VirtualList/interface.d.ts +0 -8
  99. package/dist/VirtualList/mock.d.ts +0 -6
  100. package/dist/VirtualList/mock.js +0 -29
  101. package/dist/VirtualList/utils/CacheMap.d.ts +0 -7
  102. package/dist/VirtualList/utils/CacheMap.js +0 -36
  103. package/dist/VirtualList/utils/algorithmUtil.d.ts +0 -23
  104. package/dist/VirtualList/utils/algorithmUtil.js +0 -81
  105. package/dist/VirtualList/utils/findDOMNode.d.ts +0 -5
  106. package/dist/VirtualList/utils/findDOMNode.js +0 -30
  107. package/dist/VirtualList/utils/isFirefox.d.ts +0 -2
  108. package/dist/VirtualList/utils/raf.d.ts +0 -5
  109. package/dist/VirtualList/utils/raf.js +0 -57
  110. package/dist/theme-chalk/bak/common/popup.scss +0 -47
  111. package/dist/theme-chalk/bak/common/transition.scss +0 -118
  112. package/dist/theme-chalk/bak/common/var.scss +0 -1476
  113. package/dist/theme-chalk/bak/mixins/_button.scss +0 -224
  114. package/dist/theme-chalk/bak/mixins/_col.scss +0 -38
  115. package/dist/theme-chalk/bak/mixins/_var.scss +0 -55
  116. package/dist/theme-chalk/bak/mixins/config.scss +0 -5
  117. package/dist/theme-chalk/bak/mixins/function.scss +0 -85
  118. package/dist/theme-chalk/bak/mixins/mixins.scss +0 -215
  119. package/dist/theme-chalk/bak/mixins/utils.scss +0 -39
@@ -33,82 +33,20 @@ __export(CascaderMenu_exports, {
33
33
  });
34
34
  module.exports = __toCommonJS(CascaderMenu_exports);
35
35
  var import_classnames = __toESM(require("classnames"));
36
- var import_flattenDeep = __toESM(require("lodash/flattenDeep"));
37
36
  var import_react = __toESM(require("react"));
38
37
  var import_scroll_into_view_if_needed = __toESM(require("scroll-into-view-if-needed"));
39
38
  var import_Checkbox = require("../Checkbox");
40
39
  var import_Icon = require("../Icon");
41
40
  var import_Scrollbar = require("../Scrollbar");
42
- var import_Util = require("../Util");
43
41
  var import_hooks = require("../hooks");
44
42
  var import_CascaderContext = require("./CascaderContext");
45
43
  var CascaderMenu = (0, import_react.memo)(
46
44
  (0, import_react.forwardRef)((props, ref) => {
47
45
  const { data = [], level, value } = props;
48
- const { menuProps, treeMenuProps, onSelect, onCheckedChange, getDataType, loading, getExpandedKeys, searchText } = (0, import_react.useContext)(import_CascaderContext.CascaderContext);
49
- const { valueKey = "value", labelKey = "label", disabledKey = "disabled", multiple } = menuProps;
50
- const { valueKey: treeValueKey = "key", labelKey: treeLabelKey = "title", childrenKey: treeChildrenKey } = treeMenuProps;
46
+ const { props: menuProps, onSelect, onCheckedChange, loading } = (0, import_react.useContext)(import_CascaderContext.CascaderContext);
47
+ const { valueKey = "value", labelKey = "label", disabledKey = "disabled", multiple, expandTrigger } = menuProps;
51
48
  const { b, be, is } = (0, import_hooks.useClassNames)("cascader");
52
- const treeRef = (0, import_react.useRef)();
53
- const dataList = (0, import_react.useRef)([]);
54
49
  const ulRef = (0, import_react.useRef)(null);
55
- const isTree = (0, import_react.useMemo)(() => {
56
- return getDataType(level);
57
- }, [getDataType, level]);
58
- const fieldNames = (0, import_react.useMemo)(() => {
59
- return { title: treeLabelKey, key: treeValueKey, children: treeChildrenKey };
60
- }, [treeChildrenKey, treeLabelKey, treeValueKey]);
61
- const loop = (0, import_react.useCallback)(
62
- (_data, searchValue, parent) => _data.map((item) => {
63
- var _a;
64
- const index = item[fieldNames.title].indexOf(searchValue);
65
- const beforeStr = item[fieldNames.title].substring(0, index);
66
- const afterStr = item[fieldNames.title].slice(index + searchValue.length);
67
- const title = index > -1 ? /* @__PURE__ */ import_react.default.createElement("span", null, beforeStr, /* @__PURE__ */ import_react.default.createElement("span", { className: b("tree-search-value", false) }, searchValue), afterStr) : /* @__PURE__ */ import_react.default.createElement("span", null, item[fieldNames.title]);
68
- const newItem = { ...item, parentId: parent ? [parent.parentId, parent[fieldNames.key]].filter((item1) => !!item1).join(",") : "" };
69
- dataList.current.push(newItem);
70
- if (((_a = item == null ? void 0 : item[fieldNames.children]) == null ? void 0 : _a.length) > 0) {
71
- return {
72
- ...item,
73
- [fieldNames.title]: title,
74
- _title: item[fieldNames.title],
75
- [fieldNames.key]: item[fieldNames.key],
76
- [fieldNames.children]: loop(item.children, searchValue, newItem).filter((item1) => !!item1),
77
- disabled: item.disabled
78
- };
79
- }
80
- return index > -1 ? {
81
- ...item,
82
- [fieldNames.title]: title,
83
- _title: item[fieldNames.title],
84
- [fieldNames.key]: item[fieldNames.key],
85
- disabled: item.disabled
86
- } : null;
87
- }),
88
- [b, fieldNames.children, fieldNames.key, fieldNames.title]
89
- );
90
- const expandByKeys = (0, import_react.useCallback)((expandedKeys) => {
91
- var _a, _b;
92
- const flattenNodes = (_a = treeRef.current) == null ? void 0 : _a.flattenTreeData(expandedKeys);
93
- (_b = treeRef.current) == null ? void 0 : _b.setState({
94
- expandedKeys,
95
- flattenNodes
96
- });
97
- }, []);
98
- const getExpandKeys = (0, import_react.useCallback)(() => {
99
- if (isTree) {
100
- const _expandedKeys = (0, import_flattenDeep.default)(
101
- dataList.current.map((item) => {
102
- var _a;
103
- if (item[fieldNames.title].indexOf(searchText) > -1) {
104
- return ((_a = item.parentId) == null ? void 0 : _a.split(",")) ?? [];
105
- }
106
- return null;
107
- })
108
- ).filter((item, i, self) => item && self.indexOf(item) === i);
109
- expandByKeys(_expandedKeys);
110
- }
111
- }, [expandByKeys, fieldNames.title, isTree, searchText]);
112
50
  const scrollToSelected = (0, import_react.useCallback)(() => {
113
51
  var _a, _b;
114
52
  if ((_b = (_a = ulRef.current) == null ? void 0 : _a.resizeRef) == null ? void 0 : _b.current) {
@@ -123,17 +61,6 @@ var CascaderMenu = (0, import_react.memo)(
123
61
  }
124
62
  }
125
63
  }, []);
126
- (0, import_react.useEffect)(() => {
127
- if (isTree && (0, import_Util.isNotEmpty)(searchText)) {
128
- getExpandKeys();
129
- }
130
- }, [searchText]);
131
- (0, import_react.useEffect)(() => {
132
- if (isTree) {
133
- const expandedKeys = getExpandedKeys(level);
134
- expandByKeys(expandedKeys);
135
- }
136
- }, []);
137
64
  (0, import_react.useImperativeHandle)(ref, () => ({
138
65
  scrollToSelected: () => {
139
66
  scrollToSelected();
@@ -160,13 +87,13 @@ var CascaderMenu = (0, import_react.memo)(
160
87
  ),
161
88
  onClick: () => {
162
89
  if (!item[disabledKey]) {
163
- if (menuProps.expandTrigger === "click" || item.__leaf) {
90
+ if (expandTrigger === "click" || item.__leaf) {
164
91
  onSelect == null ? void 0 : onSelect(level, item);
165
92
  }
166
93
  }
167
94
  },
168
95
  onMouseEnter: () => {
169
- if (menuProps.expandTrigger === "hover" && !item[disabledKey] && !item.__leaf) {
96
+ if (expandTrigger === "hover" && !item[disabledKey] && !item.__leaf) {
170
97
  onSelect == null ? void 0 : onSelect(level, item);
171
98
  }
172
99
  }
@@ -1,3 +1 @@
1
- import { CascaderMenuProps, OptionNode, TreeMenuProps } from './typings';
2
1
  export declare const toArray: (val: string | string[] | string[][], separator?: string) => string[] | string[][];
3
- export declare const reOrgTree: (treeData: object[], level: number, { valueKey, labelKey, leafKey, childrenKey }: CascaderMenuProps, { valueKey: treeValueKey, labelKey: treeLabelKey, childrenKey: treeChildrenKey }: TreeMenuProps, plainData?: OptionNode[], parent?: any) => OptionNode[];
@@ -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",
@@ -33,6 +33,7 @@ __export(Loading_exports, {
33
33
  });
34
34
  module.exports = __toCommonJS(Loading_exports);
35
35
  var import_classnames = __toESM(require("classnames"));
36
+ var import_dom_lib = require("dom-lib");
36
37
  var import_react = __toESM(require("react"));
37
38
  var import_react_dom = require("react-dom");
38
39
  var import_client = require("react-dom/client");
@@ -42,17 +43,26 @@ var import_Util = require("../Util");
42
43
  var import_hooks = require("../hooks");
43
44
  var Main = (props) => {
44
45
  const { visible, text, fullscreen = true, spinner, background } = props;
45
- const { b, is } = (0, import_hooks.useClassNames)("loading");
46
+ const { b, is, bm } = (0, import_hooks.useClassNames)("loading");
46
47
  const nodeRef = (0, import_react.useRef)(null);
48
+ (0, import_react.useEffect)(() => {
49
+ var _a;
50
+ if ((_a = nodeRef.current) == null ? void 0 : _a.parentNode) {
51
+ (0, import_dom_lib.addClass)(nodeRef.current.parentNode, bm("parent", "relative"));
52
+ }
53
+ }, []);
47
54
  return /* @__PURE__ */ import_react.default.createElement(import_Transition.Transition, { nodeRef, name: "loading-fade", visible }, /* @__PURE__ */ import_react.default.createElement("div", { ref: nodeRef, className: (0, import_classnames.default)(b`mask`, is({ fullscreen }), props.className), style: { ...props.style, background, zIndex: import_Util.PopupManager.nextZIndex() } }, /* @__PURE__ */ import_react.default.createElement("div", { className: b`spinner` }, spinner ? /* @__PURE__ */ import_react.default.createElement(import_Icon.Icon, { name: spinner, spin: true }) : /* @__PURE__ */ import_react.default.createElement("svg", { className: "circular", viewBox: "25 25 50 50" }, /* @__PURE__ */ import_react.default.createElement("circle", { className: "path", cx: "50", cy: "50", r: "20", fill: "none" })), text && /* @__PURE__ */ import_react.default.createElement("p", { className: b`text` }, text))));
48
55
  };
49
56
  var service = (props = {}) => {
50
57
  const { target = { current: document.body } } = props;
51
- const root = (0, import_client.createRoot)(document.body);
58
+ const renderDom = document.createDocumentFragment();
59
+ const root = (0, import_client.createRoot)(renderDom);
52
60
  root.render((0, import_react_dom.createPortal)(/* @__PURE__ */ import_react.default.createElement(Main, { ...props, visible: true }), target.current));
53
61
  return {
54
62
  close: () => {
55
- root.unmount();
63
+ setTimeout(() => {
64
+ root.unmount();
65
+ }, 200);
56
66
  }
57
67
  };
58
68
  };
@@ -64,5 +74,5 @@ var Loading = (props) => {
64
74
  return /* @__PURE__ */ import_react.default.createElement(Main, { ...props, visible });
65
75
  };
66
76
  Loading.service = service;
67
- Loading.displayName = "Loading";
77
+ Loading.displayName = "ElLoading";
68
78
  var Loading_default = Loading;
@@ -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;