@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.
- package/dist/Cascader/Cascader.js +147 -182
- package/dist/Cascader/CascaderContext.d.ts +4 -10
- package/dist/Cascader/CascaderContext.js +2 -6
- package/dist/Cascader/CascaderDropdown.js +1 -1
- package/dist/Cascader/CascaderMenu.d.ts +0 -7
- package/dist/Cascader/CascaderMenu.js +4 -77
- package/dist/Cascader/Utils.d.ts +0 -2
- package/dist/Cascader/Utils.js +0 -44
- package/dist/Cascader/index.d.ts +1 -1
- package/dist/Cascader/typings.d.ts +2 -18
- package/dist/Cascader/useCascader.d.ts +1 -15
- package/dist/Cascader/useCascader.js +14 -41
- package/dist/DatePicker/DatePicker.js +5 -5
- package/dist/Empty/ImgEmpty.js +1 -1
- package/dist/Tree/DirectoryTree.d.ts +6 -13
- package/dist/Tree/DirectoryTree.js +32 -81
- package/dist/Tree/DropIndicator.d.ts +4 -2
- package/dist/Tree/DropIndicator.js +7 -2
- package/dist/Tree/Indent.d.ts +2 -2
- package/dist/Tree/Indent.js +4 -4
- package/dist/Tree/MotionTreeNode.d.ts +4 -5
- package/dist/Tree/MotionTreeNode.js +69 -52
- package/dist/Tree/NodeList.d.ts +15 -11
- package/dist/Tree/NodeList.js +38 -29
- package/dist/Tree/RCTree.d.ts +77 -75
- package/dist/Tree/RCTree.js +199 -188
- package/dist/Tree/Tree.d.ts +3 -3
- package/dist/Tree/Tree.js +27 -27
- package/dist/Tree/TreeNode.d.ts +5 -90
- package/dist/Tree/TreeNode.js +320 -422
- package/dist/Tree/contextTypes.d.ts +36 -30
- package/dist/Tree/contextTypes.js +17 -4
- package/dist/Tree/index.d.ts +2 -2
- package/dist/Tree/typings.d.ts +60 -19
- package/dist/Tree/typings.js +1 -13
- package/dist/Tree/typings.tsx--bak +245 -0
- package/dist/Tree/useUnmount.d.ts +5 -0
- package/dist/{VirtualList/index.js → Tree/useUnmount.js} +25 -10
- package/dist/Tree/util.d.ts +17 -21
- package/dist/Tree/util.js +21 -52
- package/dist/Tree/utils/conductUtil.d.ts +2 -2
- package/dist/Tree/utils/conductUtil.js +14 -3
- package/dist/Tree/utils/dictUtil.d.ts +7 -3
- package/dist/Tree/utils/dictUtil.js +49 -32
- package/dist/Tree/utils/diffUtil.d.ts +4 -3
- package/dist/Tree/utils/keyUtil.d.ts +2 -0
- package/dist/{VirtualList/utils/isFirefox.js → Tree/utils/keyUtil.js} +8 -7
- package/dist/Tree/utils/motion.js +6 -5
- package/dist/Tree/utils/treeUtil.d.ts +16 -18
- package/dist/Tree/utils/treeUtil.js +35 -14
- package/dist/TreeSelect/Utils.d.ts +1 -1
- package/dist/Util/base.d.ts +1 -1
- package/dist/Util/base.js +14 -2
- package/dist/index.css +6 -4
- package/dist/index.d.ts +3 -5
- package/dist/index.js +0 -5
- package/dist/theme-chalk/calendar/month-table.scss +1 -1
- package/dist/theme-chalk/input/input.scss +5 -3
- package/package.json +2 -1
- package/dist/Tree/utils/KeyCode.d.ts +0 -436
- package/dist/Tree/utils/KeyCode.js +0 -550
- package/dist/VirtualList/Filler.d.ts +0 -16
- package/dist/VirtualList/Filler.js +0 -78
- package/dist/VirtualList/Item.d.ts +0 -7
- package/dist/VirtualList/Item.js +0 -37
- package/dist/VirtualList/ScrollBar.d.ts +0 -43
- package/dist/VirtualList/ScrollBar.js +0 -216
- package/dist/VirtualList/VirtualList.d.ts +0 -36
- package/dist/VirtualList/VirtualList.js +0 -280
- package/dist/VirtualList/hooks/useChildren.d.ts +0 -3
- package/dist/VirtualList/hooks/useChildren.js +0 -46
- package/dist/VirtualList/hooks/useDiffItem.d.ts +0 -2
- package/dist/VirtualList/hooks/useDiffItem.js +0 -39
- package/dist/VirtualList/hooks/useFrameWheel.d.ts +0 -6
- package/dist/VirtualList/hooks/useFrameWheel.js +0 -72
- package/dist/VirtualList/hooks/useHeights.d.ts +0 -3
- package/dist/VirtualList/hooks/useHeights.js +0 -83
- package/dist/VirtualList/hooks/useLayoutEffect.d.ts +0 -6
- package/dist/VirtualList/hooks/useLayoutEffect.js +0 -30
- package/dist/VirtualList/hooks/useMobileTouchMove.d.ts +0 -2
- package/dist/VirtualList/hooks/useMobileTouchMove.js +0 -92
- package/dist/VirtualList/hooks/useOriginScroll.d.ts +0 -2
- package/dist/VirtualList/hooks/useOriginScroll.js +0 -56
- package/dist/VirtualList/hooks/useScrollTo.d.ts +0 -5
- package/dist/VirtualList/hooks/useScrollTo.js +0 -111
- package/dist/VirtualList/index.d.ts +0 -2
- package/dist/VirtualList/interface.d.ts +0 -8
- package/dist/VirtualList/interface.js +0 -17
- package/dist/VirtualList/mock.d.ts +0 -6
- package/dist/VirtualList/mock.js +0 -29
- package/dist/VirtualList/utils/CacheMap.d.ts +0 -7
- package/dist/VirtualList/utils/CacheMap.js +0 -36
- package/dist/VirtualList/utils/algorithmUtil.d.ts +0 -23
- package/dist/VirtualList/utils/algorithmUtil.js +0 -81
- package/dist/VirtualList/utils/findDOMNode.d.ts +0 -5
- package/dist/VirtualList/utils/findDOMNode.js +0 -30
- package/dist/VirtualList/utils/isFirefox.d.ts +0 -2
- package/dist/VirtualList/utils/raf.d.ts +0 -5
- package/dist/VirtualList/utils/raf.js +0 -57
- package/dist/theme-chalk/bak/common/popup.scss +0 -47
- package/dist/theme-chalk/bak/common/transition.scss +0 -118
- package/dist/theme-chalk/bak/common/var.scss +0 -1476
- package/dist/theme-chalk/bak/mixins/_button.scss +0 -224
- package/dist/theme-chalk/bak/mixins/_col.scss +0 -38
- package/dist/theme-chalk/bak/mixins/_var.scss +0 -55
- package/dist/theme-chalk/bak/mixins/config.scss +0 -5
- package/dist/theme-chalk/bak/mixins/function.scss +0 -85
- package/dist/theme-chalk/bak/mixins/mixins.scss +0 -215
- package/dist/theme-chalk/bak/mixins/utils.scss +0 -39
|
@@ -1,21 +1,23 @@
|
|
|
1
|
-
import React, { Context } from 'react';
|
|
2
1
|
/**
|
|
3
2
|
* Webpack has bug for import loop, which is not the same behavior as ES module.
|
|
4
3
|
* When util.js imports the TreeNode for tree generate will cause treeContextTypes be empty.
|
|
5
4
|
*/
|
|
6
|
-
import
|
|
7
|
-
import {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
5
|
+
import * as React from 'react';
|
|
6
|
+
import type { DraggableConfig, SemanticName } from './RCTree';
|
|
7
|
+
import type { BasicDataNode, DataNode, Direction, EventDataNode, IconType, Key, KeyEntities, TreeNodeProps } from './typings';
|
|
8
|
+
export type NodeMouseEventParams<TreeDataType extends BasicDataNode = DataNode, T = HTMLSpanElement> = {
|
|
9
|
+
event: React.MouseEvent<T>;
|
|
10
|
+
node: EventDataNode<TreeDataType>;
|
|
11
11
|
};
|
|
12
|
-
export type NodeDragEventParams = {
|
|
13
|
-
event: DragEvent
|
|
14
|
-
node: EventDataNode
|
|
12
|
+
export type NodeDragEventParams<TreeDataType extends BasicDataNode = DataNode, T = HTMLDivElement> = {
|
|
13
|
+
event: React.DragEvent<T>;
|
|
14
|
+
node: EventDataNode<TreeDataType>;
|
|
15
15
|
};
|
|
16
|
-
export type NodeMouseEventHandler = (e: React.MouseEvent<
|
|
17
|
-
export type NodeDragEventHandler<
|
|
18
|
-
export interface TreeContextProps {
|
|
16
|
+
export type NodeMouseEventHandler<TreeDataType extends BasicDataNode = DataNode, T = HTMLSpanElement> = (e: React.MouseEvent<T>, node: EventDataNode<TreeDataType>) => void;
|
|
17
|
+
export type NodeDragEventHandler<TreeDataType extends BasicDataNode = DataNode, T = HTMLDivElement> = (e: React.DragEvent<T>, nodeProps: TreeNodeProps<TreeDataType>, outsideTree?: boolean) => void;
|
|
18
|
+
export interface TreeContextProps<TreeDataType extends BasicDataNode = DataNode> {
|
|
19
|
+
styles?: Partial<Record<SemanticName, React.CSSProperties>>;
|
|
20
|
+
classNames?: Partial<Record<SemanticName, string>>;
|
|
19
21
|
prefixCls: string;
|
|
20
22
|
selectable: boolean;
|
|
21
23
|
showIcon: boolean;
|
|
@@ -23,10 +25,10 @@ export interface TreeContextProps {
|
|
|
23
25
|
switcherIcon: IconType;
|
|
24
26
|
draggable?: DraggableConfig;
|
|
25
27
|
draggingNodeKey?: Key;
|
|
26
|
-
checkable: boolean | React.
|
|
28
|
+
checkable: boolean | React.ReactNode;
|
|
27
29
|
checkStrictly: boolean;
|
|
28
30
|
disabled: boolean;
|
|
29
|
-
keyEntities:
|
|
31
|
+
keyEntities: KeyEntities;
|
|
30
32
|
dropLevelOffset?: number;
|
|
31
33
|
dropContainerKey: Key | null;
|
|
32
34
|
dropTargetKey: Key | null;
|
|
@@ -35,24 +37,24 @@ export interface TreeContextProps {
|
|
|
35
37
|
dropIndicatorRender: (props: {
|
|
36
38
|
dropPosition: -1 | 0 | 1;
|
|
37
39
|
dropLevelOffset: number;
|
|
38
|
-
indent:
|
|
39
|
-
prefixCls:
|
|
40
|
+
indent: number;
|
|
41
|
+
prefixCls: string;
|
|
40
42
|
direction: Direction;
|
|
41
|
-
}) => React.
|
|
43
|
+
}) => React.ReactNode;
|
|
42
44
|
dragOverNodeKey: Key | null;
|
|
43
45
|
direction: Direction;
|
|
44
|
-
loadData: (treeNode: EventDataNode) => Promise<void>;
|
|
45
|
-
filterTreeNode: (treeNode: EventDataNode) => boolean;
|
|
46
|
-
titleRender?: (node: any) => React.
|
|
47
|
-
onNodeClick: NodeMouseEventHandler
|
|
48
|
-
onNodeDoubleClick: NodeMouseEventHandler
|
|
49
|
-
onNodeExpand: NodeMouseEventHandler
|
|
50
|
-
onNodeSelect: NodeMouseEventHandler
|
|
51
|
-
onNodeCheck: (e: React.MouseEvent<HTMLSpanElement>, treeNode: EventDataNode
|
|
52
|
-
onNodeLoad: (treeNode: EventDataNode) => void;
|
|
53
|
-
onNodeMouseEnter: NodeMouseEventHandler
|
|
54
|
-
onNodeMouseLeave: NodeMouseEventHandler
|
|
55
|
-
onNodeContextMenu: NodeMouseEventHandler
|
|
46
|
+
loadData: (treeNode: EventDataNode<TreeDataType>) => Promise<void>;
|
|
47
|
+
filterTreeNode: (treeNode: EventDataNode<TreeDataType>) => boolean;
|
|
48
|
+
titleRender?: (node: any) => React.ReactNode;
|
|
49
|
+
onNodeClick: NodeMouseEventHandler<TreeDataType>;
|
|
50
|
+
onNodeDoubleClick: NodeMouseEventHandler<TreeDataType>;
|
|
51
|
+
onNodeExpand: NodeMouseEventHandler<TreeDataType>;
|
|
52
|
+
onNodeSelect: NodeMouseEventHandler<TreeDataType>;
|
|
53
|
+
onNodeCheck: (e: React.MouseEvent<HTMLSpanElement>, treeNode: EventDataNode<TreeDataType>, checked: boolean) => void;
|
|
54
|
+
onNodeLoad: (treeNode: EventDataNode<TreeDataType>) => void;
|
|
55
|
+
onNodeMouseEnter: NodeMouseEventHandler<TreeDataType>;
|
|
56
|
+
onNodeMouseLeave: NodeMouseEventHandler<TreeDataType>;
|
|
57
|
+
onNodeContextMenu: NodeMouseEventHandler<TreeDataType>;
|
|
56
58
|
onNodeDragStart: NodeDragEventHandler<any, any>;
|
|
57
59
|
onNodeDragEnter: NodeDragEventHandler<any, any>;
|
|
58
60
|
onNodeDragOver: NodeDragEventHandler<any, any>;
|
|
@@ -60,4 +62,8 @@ export interface TreeContextProps {
|
|
|
60
62
|
onNodeDragEnd: NodeDragEventHandler<any, any>;
|
|
61
63
|
onNodeDrop: NodeDragEventHandler<any, any>;
|
|
62
64
|
}
|
|
63
|
-
export declare const TreeContext: Context<TreeContextProps
|
|
65
|
+
export declare const TreeContext: React.Context<TreeContextProps<any>>;
|
|
66
|
+
/** Internal usage, safe to remove. Do not use in prod */
|
|
67
|
+
export declare const UnstableContext: React.Context<{
|
|
68
|
+
nodeDisabled?: (n: DataNode) => boolean;
|
|
69
|
+
}>;
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
1
2
|
var __defProp = Object.defineProperty;
|
|
2
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
4
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
7
|
var __export = (target, all) => {
|
|
6
8
|
for (var name in all)
|
|
@@ -14,17 +16,28 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
14
16
|
}
|
|
15
17
|
return to;
|
|
16
18
|
};
|
|
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
|
+
));
|
|
17
27
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
28
|
|
|
19
29
|
// src/Tree/contextTypes.ts
|
|
20
30
|
var contextTypes_exports = {};
|
|
21
31
|
__export(contextTypes_exports, {
|
|
22
|
-
TreeContext: () => TreeContext
|
|
32
|
+
TreeContext: () => TreeContext,
|
|
33
|
+
UnstableContext: () => UnstableContext
|
|
23
34
|
});
|
|
24
35
|
module.exports = __toCommonJS(contextTypes_exports);
|
|
25
|
-
var
|
|
26
|
-
var TreeContext =
|
|
36
|
+
var React = __toESM(require("react"));
|
|
37
|
+
var TreeContext = React.createContext(null);
|
|
38
|
+
var UnstableContext = React.createContext({});
|
|
27
39
|
// Annotate the CommonJS export names for ESM import in node:
|
|
28
40
|
0 && (module.exports = {
|
|
29
|
-
TreeContext
|
|
41
|
+
TreeContext,
|
|
42
|
+
UnstableContext
|
|
30
43
|
});
|
package/dist/Tree/index.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
export { default as DirectoryTree } from './DirectoryTree';
|
|
2
2
|
export type { ExpandAction as DirectoryTreeExpandAction, DirectoryTreeProps } from './DirectoryTree';
|
|
3
3
|
export { default as RCTree } from './RCTree';
|
|
4
|
-
export type { CheckInfo
|
|
4
|
+
export type { CheckInfo } from './RCTree';
|
|
5
5
|
export { default as Tree } from './Tree';
|
|
6
|
-
export type {
|
|
6
|
+
export type { TreeProps } from './Tree';
|
|
7
7
|
export { default as TreeNode } from './TreeNode';
|
|
8
8
|
export type { TreeNodeProps } from './TreeNode';
|
|
9
9
|
export type { BasicDataNode, DataNode, EventDataNode, Key } from './typings';
|
package/dist/Tree/typings.d.ts
CHANGED
|
@@ -1,7 +1,38 @@
|
|
|
1
|
-
import React
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export type { ScrollTo } from 'rc-virtual-list/lib/List';
|
|
3
|
+
export interface TreeNodeProps<TreeDataType extends BasicDataNode = DataNode> {
|
|
4
|
+
eventKey?: Key;
|
|
5
|
+
prefixCls?: string;
|
|
6
|
+
className?: string;
|
|
7
|
+
style?: React.CSSProperties;
|
|
8
|
+
id?: string;
|
|
9
|
+
expanded?: boolean;
|
|
10
|
+
selected?: boolean;
|
|
11
|
+
checked?: boolean;
|
|
12
|
+
loaded?: boolean;
|
|
13
|
+
loading?: boolean;
|
|
14
|
+
halfChecked?: boolean;
|
|
15
|
+
title?: React.ReactNode | ((data: TreeDataType) => React.ReactNode);
|
|
16
|
+
dragOver?: boolean;
|
|
17
|
+
dragOverGapTop?: boolean;
|
|
18
|
+
dragOverGapBottom?: boolean;
|
|
19
|
+
pos?: string;
|
|
20
|
+
domRef?: React.Ref<HTMLDivElement>;
|
|
21
|
+
/** New added in Tree for easy data access */
|
|
22
|
+
data?: TreeDataType;
|
|
23
|
+
isStart?: boolean[];
|
|
24
|
+
isEnd?: boolean[];
|
|
25
|
+
active?: boolean;
|
|
26
|
+
onMouseMove?: React.MouseEventHandler<HTMLDivElement>;
|
|
27
|
+
isLeaf?: boolean;
|
|
28
|
+
checkable?: boolean;
|
|
29
|
+
selectable?: boolean;
|
|
30
|
+
disabled?: boolean;
|
|
31
|
+
disableCheckbox?: boolean;
|
|
32
|
+
icon?: IconType;
|
|
33
|
+
switcherIcon?: IconType;
|
|
34
|
+
children?: React.ReactNode;
|
|
35
|
+
}
|
|
5
36
|
/** For fieldNames, we provides a abstract interface */
|
|
6
37
|
export interface BasicDataNode {
|
|
7
38
|
checkable?: boolean;
|
|
@@ -15,12 +46,23 @@ export interface BasicDataNode {
|
|
|
15
46
|
className?: string;
|
|
16
47
|
style?: React.CSSProperties;
|
|
17
48
|
}
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
49
|
+
/** Provide a wrap type define for developer to wrap with customize fieldNames data type */
|
|
50
|
+
export type FieldDataNode<T, ChildFieldName extends string = 'children'> = BasicDataNode & T & Partial<Record<ChildFieldName, FieldDataNode<T, ChildFieldName>[]>>;
|
|
51
|
+
export type Key = React.Key;
|
|
52
|
+
/**
|
|
53
|
+
* Typescript not support `bigint` as index type yet.
|
|
54
|
+
* We use this to mark the `bigint` type is for `Key` usage.
|
|
55
|
+
* It's safe to remove this when typescript fix:
|
|
56
|
+
* https://github.com/microsoft/TypeScript/issues/50217
|
|
57
|
+
*/
|
|
58
|
+
export type SafeKey = Exclude<Key, bigint>;
|
|
59
|
+
export type KeyEntities<DateType extends BasicDataNode = any> = Record<SafeKey, DataEntity<DateType>>;
|
|
60
|
+
export type DataNode = FieldDataNode<{
|
|
61
|
+
key: Key;
|
|
62
|
+
title?: React.ReactNode | ((data: DataNode) => React.ReactNode);
|
|
63
|
+
}>;
|
|
64
|
+
export type EventDataNode<TreeDataType> = {
|
|
65
|
+
key: Key;
|
|
24
66
|
expanded: boolean;
|
|
25
67
|
selected: boolean;
|
|
26
68
|
checked: boolean;
|
|
@@ -32,16 +74,15 @@ export interface EventDataNode extends DataNode {
|
|
|
32
74
|
dragOverGapBottom: boolean;
|
|
33
75
|
pos: string;
|
|
34
76
|
active: boolean;
|
|
35
|
-
}
|
|
36
|
-
export type IconType = React.
|
|
37
|
-
export type Key = string | number;
|
|
77
|
+
} & TreeDataType & BasicDataNode;
|
|
78
|
+
export type IconType = React.ReactNode | ((props: TreeNodeProps) => React.ReactNode);
|
|
38
79
|
export type NodeElement = React.ReactElement<TreeNodeProps> & {
|
|
39
80
|
selectHandle?: HTMLSpanElement;
|
|
40
81
|
type: {
|
|
41
82
|
isTreeNode: boolean;
|
|
42
83
|
};
|
|
43
84
|
};
|
|
44
|
-
export type NodeInstance<TreeDataType extends BasicDataNode = DataNode> = Component<TreeNodeProps<TreeDataType>> & {
|
|
85
|
+
export type NodeInstance<TreeDataType extends BasicDataNode = DataNode> = React.Component<TreeNodeProps<TreeDataType>> & {
|
|
45
86
|
selectHandle?: HTMLSpanElement;
|
|
46
87
|
};
|
|
47
88
|
export interface Entity {
|
|
@@ -59,12 +100,12 @@ export interface DataEntity<TreeDataType extends BasicDataNode = DataNode> exten
|
|
|
59
100
|
children?: DataEntity<TreeDataType>[];
|
|
60
101
|
level: number;
|
|
61
102
|
}
|
|
62
|
-
export interface FlattenNode {
|
|
63
|
-
parent: FlattenNode | null;
|
|
64
|
-
children: FlattenNode[];
|
|
103
|
+
export interface FlattenNode<TreeDataType extends BasicDataNode = DataNode> {
|
|
104
|
+
parent: FlattenNode<TreeDataType> | null;
|
|
105
|
+
children: FlattenNode<TreeDataType>[];
|
|
65
106
|
pos: string;
|
|
66
|
-
data:
|
|
67
|
-
title: React.
|
|
107
|
+
data: TreeDataType;
|
|
108
|
+
title: React.ReactNode;
|
|
68
109
|
key: Key;
|
|
69
110
|
isStart: boolean[];
|
|
70
111
|
isEnd: boolean[];
|
package/dist/Tree/typings.js
CHANGED
|
@@ -2,10 +2,6 @@ var __defProp = Object.defineProperty;
|
|
|
2
2
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
-
var __export = (target, all) => {
|
|
6
|
-
for (var name in all)
|
|
7
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
-
};
|
|
9
5
|
var __copyProps = (to, from, except, desc) => {
|
|
10
6
|
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
7
|
for (let key of __getOwnPropNames(from))
|
|
@@ -16,14 +12,6 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
16
12
|
};
|
|
17
13
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
14
|
|
|
19
|
-
// src/Tree/typings.
|
|
15
|
+
// src/Tree/typings.ts
|
|
20
16
|
var typings_exports = {};
|
|
21
|
-
__export(typings_exports, {
|
|
22
|
-
ScrollTo: () => import_VirtualList.ScrollTo
|
|
23
|
-
});
|
|
24
17
|
module.exports = __toCommonJS(typings_exports);
|
|
25
|
-
var import_VirtualList = require("../VirtualList");
|
|
26
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
27
|
-
0 && (module.exports = {
|
|
28
|
-
ScrollTo
|
|
29
|
-
});
|
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
import React, { Component } from 'react';
|
|
2
|
+
import { IconName } from '../Icon';
|
|
3
|
+
import { TreeProps as RcTreeProps } from './RCTree';
|
|
4
|
+
import { TreeNodeProps } from './TreeNode';
|
|
5
|
+
|
|
6
|
+
export interface AntdTreeNodeAttribute {
|
|
7
|
+
eventKey: string;
|
|
8
|
+
prefixCls: string;
|
|
9
|
+
className: string;
|
|
10
|
+
expanded: boolean;
|
|
11
|
+
selected: boolean;
|
|
12
|
+
checked: boolean;
|
|
13
|
+
halfChecked: boolean;
|
|
14
|
+
children: React.ReactElement;
|
|
15
|
+
title: React.ReactElement;
|
|
16
|
+
pos: string;
|
|
17
|
+
dragOver: boolean;
|
|
18
|
+
dragOverGapTop: boolean;
|
|
19
|
+
dragOverGapBottom: boolean;
|
|
20
|
+
isLeaf: boolean;
|
|
21
|
+
selectable: boolean;
|
|
22
|
+
disabled: boolean;
|
|
23
|
+
disableCheckbox: boolean;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export interface AntTreeNodeProps {
|
|
27
|
+
className?: string;
|
|
28
|
+
checkable?: boolean;
|
|
29
|
+
disabled?: boolean;
|
|
30
|
+
disableCheckbox?: boolean;
|
|
31
|
+
title?: string | React.ReactElement;
|
|
32
|
+
key?: Key;
|
|
33
|
+
eventKey?: string;
|
|
34
|
+
isLeaf?: boolean;
|
|
35
|
+
checked?: boolean;
|
|
36
|
+
expanded?: boolean;
|
|
37
|
+
loading?: boolean;
|
|
38
|
+
selected?: boolean;
|
|
39
|
+
selectable?: boolean;
|
|
40
|
+
icon?: ((treeNode: AntdTreeNodeAttribute) => React.ReactElement) | React.ReactElement;
|
|
41
|
+
children?: React.ReactElement;
|
|
42
|
+
[customProp: string]: any;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export type AntTreeNode = Component<AntTreeNodeProps, {}>;
|
|
46
|
+
|
|
47
|
+
export interface AntTreeNodeBaseEvent {
|
|
48
|
+
node: AntTreeNode;
|
|
49
|
+
nativeEvent: MouseEvent;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
export interface AntTreeNodeCheckedEvent extends AntTreeNodeBaseEvent {
|
|
53
|
+
event: 'check';
|
|
54
|
+
checked?: boolean;
|
|
55
|
+
checkedNodes?: AntTreeNode[];
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
export interface AntTreeNodeSelectedEvent extends AntTreeNodeBaseEvent {
|
|
59
|
+
event: 'select';
|
|
60
|
+
selected?: boolean;
|
|
61
|
+
selectedNodes?: DataNode[];
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
export interface AntTreeNodeExpandedEvent extends AntTreeNodeBaseEvent {
|
|
65
|
+
expanded?: boolean;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
export interface AntTreeNodeMouseEvent {
|
|
69
|
+
node: AntTreeNode;
|
|
70
|
+
event: any;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
export interface AntTreeNodeDragEnterEvent extends AntTreeNodeMouseEvent {
|
|
74
|
+
expandedKeys: Key[];
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
export interface AntTreeNodeDropEvent {
|
|
78
|
+
node: AntTreeNode;
|
|
79
|
+
dragNode: AntTreeNode;
|
|
80
|
+
dragNodesKeys: Key[];
|
|
81
|
+
dropPosition: number;
|
|
82
|
+
dropToGap?: boolean;
|
|
83
|
+
event: React.MouseEventHandler<HTMLElement>;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
// [Legacy] Compatible for v3
|
|
87
|
+
export type TreeNodeNormal = DataNode;
|
|
88
|
+
|
|
89
|
+
type DraggableFn = (node: AntTreeNode) => boolean;
|
|
90
|
+
interface DraggableConfig {
|
|
91
|
+
icon?: React.ReactElement | false;
|
|
92
|
+
nodeDraggable?: DraggableFn;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
export interface TreeProps<T> extends Omit<RcTreeProps<T>, 'prefixCls' | 'showLine' | 'direction' | 'draggable'> {
|
|
96
|
+
showLine?: boolean | { showLeafIcon: boolean };
|
|
97
|
+
className?: string;
|
|
98
|
+
|
|
99
|
+
/** 是否支持多选 */
|
|
100
|
+
multiple?: boolean;
|
|
101
|
+
|
|
102
|
+
/** 是否自动展开父节点 */
|
|
103
|
+
autoExpandParent?: boolean;
|
|
104
|
+
|
|
105
|
+
/** Checkable状态下节点选择完全受控(父子节点选中状态不再关联) */
|
|
106
|
+
checkStrictly?: boolean;
|
|
107
|
+
|
|
108
|
+
/** 是否支持选中 */
|
|
109
|
+
checkable?: boolean;
|
|
110
|
+
|
|
111
|
+
/** 是否禁用树 */
|
|
112
|
+
disabled?: boolean;
|
|
113
|
+
|
|
114
|
+
/** 默认展开所有树节点 */
|
|
115
|
+
defaultExpandAll?: boolean;
|
|
116
|
+
|
|
117
|
+
/** 默认展开对应树节点 */
|
|
118
|
+
defaultExpandParent?: boolean;
|
|
119
|
+
|
|
120
|
+
/** 默认展开指定的树节点 */
|
|
121
|
+
defaultExpandedKeys?: Key[];
|
|
122
|
+
|
|
123
|
+
/** (受控)展开指定的树节点 */
|
|
124
|
+
expandedKeys?: Key[];
|
|
125
|
+
|
|
126
|
+
/** (受控)选中复选框的树节点 */
|
|
127
|
+
checkedKeys?: Key[] | { checked: Key[]; halfChecked: Key[] };
|
|
128
|
+
|
|
129
|
+
/** 默认选中复选框的树节点 */
|
|
130
|
+
defaultCheckedKeys?: Key[];
|
|
131
|
+
|
|
132
|
+
/** (受控)设置选中的树节点 */
|
|
133
|
+
selectedKeys?: Key[];
|
|
134
|
+
|
|
135
|
+
/** 默认选中的树节点 */
|
|
136
|
+
defaultSelectedKeys?: Key[];
|
|
137
|
+
selectable?: boolean;
|
|
138
|
+
|
|
139
|
+
/** 点击树节点触发 */
|
|
140
|
+
filterAntTreeNode?: (node: AntTreeNode) => boolean;
|
|
141
|
+
loadedKeys?: Key[];
|
|
142
|
+
|
|
143
|
+
/** 设置节点可拖拽(IE>8) */
|
|
144
|
+
draggable?: DraggableFn | boolean | DraggableConfig;
|
|
145
|
+
style?: React.CSSProperties;
|
|
146
|
+
showIcon?: boolean;
|
|
147
|
+
icon?: ((nodeProps: AntdTreeNodeAttribute) => React.ReactElement) | React.ReactElement;
|
|
148
|
+
switcherIcon?: React.ReactElement<any>;
|
|
149
|
+
prefixCls?: string;
|
|
150
|
+
children?: React.ReactElement;
|
|
151
|
+
blockNode?: boolean;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
/** For fieldNames, we provides a abstract interface */
|
|
155
|
+
export interface BasicDataNode {
|
|
156
|
+
checkable?: boolean;
|
|
157
|
+
disabled?: boolean;
|
|
158
|
+
disableCheckbox?: boolean;
|
|
159
|
+
icon?: IconType;
|
|
160
|
+
isLeaf?: boolean;
|
|
161
|
+
selectable?: boolean;
|
|
162
|
+
switcherIcon?: IconType;
|
|
163
|
+
|
|
164
|
+
/** Set style of TreeNode. This is not recommend if you don't have any force requirement */
|
|
165
|
+
className?: string;
|
|
166
|
+
style?: React.CSSProperties;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
export interface DataNode<T = any> extends BasicDataNode {
|
|
170
|
+
children?: T[];
|
|
171
|
+
key?: string | number;
|
|
172
|
+
title?: string | React.ReactElement;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
export interface EventDataNode extends DataNode {
|
|
176
|
+
expanded: boolean;
|
|
177
|
+
selected: boolean;
|
|
178
|
+
checked: boolean;
|
|
179
|
+
loaded: boolean;
|
|
180
|
+
loading: boolean;
|
|
181
|
+
halfChecked: boolean;
|
|
182
|
+
dragOver: boolean;
|
|
183
|
+
dragOverGapTop: boolean;
|
|
184
|
+
dragOverGapBottom: boolean;
|
|
185
|
+
pos: string;
|
|
186
|
+
active: boolean;
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
export type IconType = React.ReactElement | ((props: TreeNodeProps) => React.ReactElement) | IconName;
|
|
190
|
+
|
|
191
|
+
export type Key = React.Key;
|
|
192
|
+
|
|
193
|
+
export type NodeElement = React.ReactElement<TreeNodeProps> & {
|
|
194
|
+
selectHandle?: HTMLSpanElement;
|
|
195
|
+
type: {
|
|
196
|
+
isTreeNode: boolean;
|
|
197
|
+
};
|
|
198
|
+
};
|
|
199
|
+
|
|
200
|
+
export type NodeInstance<TreeDataType extends BasicDataNode = DataNode> = Component<TreeNodeProps<TreeDataType>> & {
|
|
201
|
+
selectHandle?: HTMLSpanElement;
|
|
202
|
+
};
|
|
203
|
+
|
|
204
|
+
export interface Entity {
|
|
205
|
+
node: NodeElement;
|
|
206
|
+
index: number;
|
|
207
|
+
key: Key;
|
|
208
|
+
pos: string;
|
|
209
|
+
parent?: Entity;
|
|
210
|
+
children?: Entity[];
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
export interface DataEntity<TreeDataType extends BasicDataNode = DataNode> extends Omit<Entity, 'node' | 'parent' | 'children'> {
|
|
214
|
+
node: TreeDataType;
|
|
215
|
+
nodes: TreeDataType[];
|
|
216
|
+
parent?: DataEntity<TreeDataType>;
|
|
217
|
+
children?: DataEntity<TreeDataType>[];
|
|
218
|
+
level: number;
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
export interface FlattenNode {
|
|
222
|
+
parent: FlattenNode | null;
|
|
223
|
+
children: FlattenNode[];
|
|
224
|
+
pos: string;
|
|
225
|
+
data: DataNode;
|
|
226
|
+
title: React.ReactElement;
|
|
227
|
+
key: Key;
|
|
228
|
+
isStart: boolean[];
|
|
229
|
+
isEnd: boolean[];
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
export type GetKey<RecordType> = (record: RecordType, index?: number) => Key;
|
|
233
|
+
|
|
234
|
+
export type GetCheckDisabled<RecordType> = (record: RecordType) => boolean;
|
|
235
|
+
|
|
236
|
+
export type Direction = 'ltr' | 'rtl' | undefined;
|
|
237
|
+
|
|
238
|
+
export interface FieldNames {
|
|
239
|
+
title?: string;
|
|
240
|
+
|
|
241
|
+
/** @private Internal usage for `rc-tree-select`, safe to remove if no need */
|
|
242
|
+
_title?: string[];
|
|
243
|
+
key?: string;
|
|
244
|
+
children?: string;
|
|
245
|
+
}
|
|
@@ -26,14 +26,29 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
26
26
|
));
|
|
27
27
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
28
|
|
|
29
|
-
// src/
|
|
30
|
-
var
|
|
31
|
-
__export(
|
|
32
|
-
|
|
33
|
-
});
|
|
34
|
-
module.exports = __toCommonJS(VirtualList_exports);
|
|
35
|
-
var import_VirtualList = __toESM(require("./VirtualList"));
|
|
36
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
37
|
-
0 && (module.exports = {
|
|
38
|
-
VirtualList
|
|
29
|
+
// src/Tree/useUnmount.ts
|
|
30
|
+
var useUnmount_exports = {};
|
|
31
|
+
__export(useUnmount_exports, {
|
|
32
|
+
default: () => useUnmount_default
|
|
39
33
|
});
|
|
34
|
+
module.exports = __toCommonJS(useUnmount_exports);
|
|
35
|
+
var import_useLayoutEffect = __toESM(require("rc-util/lib/hooks/useLayoutEffect"));
|
|
36
|
+
var React = __toESM(require("react"));
|
|
37
|
+
function useUnmount(triggerStart, triggerEnd) {
|
|
38
|
+
const [firstMount, setFirstMount] = React.useState(false);
|
|
39
|
+
(0, import_useLayoutEffect.default)(() => {
|
|
40
|
+
if (firstMount) {
|
|
41
|
+
triggerStart();
|
|
42
|
+
return () => {
|
|
43
|
+
triggerEnd();
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
}, [firstMount]);
|
|
47
|
+
(0, import_useLayoutEffect.default)(() => {
|
|
48
|
+
setFirstMount(true);
|
|
49
|
+
return () => {
|
|
50
|
+
setFirstMount(false);
|
|
51
|
+
};
|
|
52
|
+
}, []);
|
|
53
|
+
}
|
|
54
|
+
var useUnmount_default = useUnmount;
|
package/dist/Tree/util.d.ts
CHANGED
|
@@ -1,23 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Legacy code. Should avoid to use if you are new to import these code.
|
|
3
|
+
*/
|
|
1
4
|
import React from 'react';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
export
|
|
6
|
-
|
|
7
|
-
}
|
|
8
|
-
export declare function toArray(children: ComponentChildren, option?: Option): React.ReactElement[];
|
|
9
|
-
export declare function arrDel(list: Key[], value: Key): Key[];
|
|
10
|
-
export declare function arrAdd(list: Key[], value: Key): Key[];
|
|
5
|
+
import type { AllowDrop, TreeProps } from './RCTree';
|
|
6
|
+
import type { BasicDataNode, DataEntity, DataNode, Direction, FlattenNode, Key, KeyEntities, NodeElement, TreeNodeProps } from './typings';
|
|
7
|
+
export { getPosition, isTreeNode } from './utils/treeUtil';
|
|
8
|
+
export declare function arrDel(list: Key[], value: Key): React.Key[];
|
|
9
|
+
export declare function arrAdd(list: Key[], value: Key): React.Key[];
|
|
11
10
|
export declare function posToArr(pos: string): string[];
|
|
12
|
-
export declare function
|
|
13
|
-
export declare function isTreeNode(node: NodeElement): boolean;
|
|
14
|
-
export declare function getDragChildrenKeys<TreeDataType extends BasicDataNode = DataNode>(dragNodeKey: Key, keyEntities: Record<Key, DataEntity<TreeDataType>>): Key[];
|
|
11
|
+
export declare function getDragChildrenKeys<TreeDataType extends BasicDataNode = DataNode>(dragNodeKey: Key, keyEntities: KeyEntities<TreeDataType>): Key[];
|
|
15
12
|
export declare function isLastChild<TreeDataType extends BasicDataNode = DataNode>(treeNodeEntity: DataEntity<TreeDataType>): boolean;
|
|
16
13
|
export declare function isFirstChild<TreeDataType extends BasicDataNode = DataNode>(treeNodeEntity: DataEntity<TreeDataType>): boolean;
|
|
17
|
-
export declare function calcDropPosition<TreeDataType extends BasicDataNode = DataNode>(event: React.MouseEvent
|
|
14
|
+
export declare function calcDropPosition<TreeDataType extends BasicDataNode = DataNode>(event: React.MouseEvent, dragNodeProps: TreeNodeProps<TreeDataType>, targetNodeProps: TreeNodeProps<TreeDataType>, indent: number, startMousePosition: {
|
|
18
15
|
x: number;
|
|
19
16
|
y: number;
|
|
20
|
-
}, allowDrop: AllowDrop<TreeDataType>, flattenedNodes: FlattenNode[], keyEntities:
|
|
17
|
+
}, allowDrop: AllowDrop<TreeDataType>, flattenedNodes: FlattenNode<TreeDataType>[], keyEntities: KeyEntities<TreeDataType>, expandKeys: Key[], direction: Direction): {
|
|
21
18
|
dropPosition: -1 | 0 | 1;
|
|
22
19
|
dropLevelOffset: number;
|
|
23
20
|
dropTargetKey: Key;
|
|
@@ -32,7 +29,7 @@ export declare function calcDropPosition<TreeDataType extends BasicDataNode = Da
|
|
|
32
29
|
* @param props
|
|
33
30
|
* @returns [string]
|
|
34
31
|
*/
|
|
35
|
-
export declare function calcSelectedKeys(selectedKeys: Key[], props: TreeProps): Key[];
|
|
32
|
+
export declare function calcSelectedKeys(selectedKeys: Key[], props: TreeProps): React.Key[];
|
|
36
33
|
export declare function convertDataToTree(treeData: DataNode[], processor?: {
|
|
37
34
|
processProps: (prop: DataNode) => any;
|
|
38
35
|
}): NodeElement[];
|
|
@@ -42,14 +39,13 @@ export declare function convertDataToTree(treeData: DataNode[], processor?: {
|
|
|
42
39
|
export declare function parseCheckedKeys(keys: Key[] | {
|
|
43
40
|
checked: Key[];
|
|
44
41
|
halfChecked: Key[];
|
|
45
|
-
}):
|
|
42
|
+
}): {
|
|
43
|
+
checkedKeys?: Key[];
|
|
44
|
+
halfCheckedKeys?: Key[];
|
|
45
|
+
};
|
|
46
46
|
/**
|
|
47
47
|
* If user use `autoExpandParent` we should get the list of parent node
|
|
48
48
|
* @param keyList
|
|
49
49
|
* @param keyEntities
|
|
50
50
|
*/
|
|
51
|
-
export declare function conductExpandParent(keyList: Key[], keyEntities:
|
|
52
|
-
/**
|
|
53
|
-
* omit prop
|
|
54
|
-
*/
|
|
55
|
-
export declare function omit<T extends object, K extends keyof T>(obj: T, fields: K[]): Omit<T, K>;
|
|
51
|
+
export declare function conductExpandParent(keyList: Key[], keyEntities: KeyEntities): Key[];
|