@central-design-system/components 3.0.0-beta.22 → 3.0.0-beta.24
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/cds.css +1 -1
- package/dist/cds.d.ts +6 -3
- package/dist/cds.es.js +17943 -15168
- package/dist/cds.umd.js +5 -5
- package/dist/components/CdsCombobox/CdsCombobox.vue.d.ts +18 -0
- package/dist/components/CdsDropdown/CdsDropdown.vue.d.ts +26 -2
- package/dist/components/CdsMenu/CdsMenu.vue.d.ts +18 -0
- package/dist/components/CdsModal/CdsModal.vue.d.ts +24 -2
- package/dist/components/CdsNotification/CdsNotificationAlert.vue.d.ts +18 -0
- package/dist/components/CdsOverlay/CdsOverlay.vue.d.ts +34 -8
- package/dist/components/CdsOverlay/composable/activator.d.ts +18 -5
- package/dist/components/CdsOverlay/composable/locationStrategies.d.ts +1 -0
- package/dist/components/CdsOverlay/composable/scrollStrategies.d.ts +1 -1
- package/dist/components/CdsOverlay/composable/teleport.d.ts +20 -1
- package/dist/components/CdsSkeletonLoader/CdsSkeletonLoader.vue.d.ts +3 -3
- package/dist/components/CdsTable/CdsTable.vue.d.ts +39 -30
- package/dist/components/CdsTable/components/Table/InternalTable.d.ts +33 -3
- package/dist/components/CdsTable/components/TableProvider.d.ts +33 -3
- package/dist/components/CdsTable/composable/table.d.ts +11 -1
- package/dist/components/CdsTable/interface.d.ts +2 -5
- package/dist/components/CdsTable/utils/column.d.ts +1 -3
- package/dist/components/CdsTable/utils/index.d.ts +0 -1
- package/dist/components/CdsTooltip/CdsTooltip.vue.d.ts +18 -0
- package/dist/components/CdsTree/CdsTree.vue.d.ts +698 -0
- package/dist/components/CdsTree/CdsTreeDirectory.vue.d.ts +448 -0
- package/dist/components/CdsTree/CdsTreeNode.vue.d.ts +119 -0
- package/dist/components/CdsTree/components/DropIndicator.d.ts +9 -0
- package/dist/components/CdsTree/components/Indent.d.ts +10 -0
- package/dist/components/CdsTree/components/MotionTreeNode.d.ts +128 -0
- package/dist/components/CdsTree/components/NodeList.d.ts +191 -0
- package/dist/components/CdsTree/components/SwitcherIcon.d.ts +12 -0
- package/dist/components/CdsTree/components/TreeContext.d.ts +81 -0
- package/dist/components/CdsTree/components/TreeProvider.d.ts +619 -0
- package/dist/components/CdsTree/components/VirtualList/Filler.d.ts +12 -0
- package/dist/components/CdsTree/components/VirtualList/Item.d.ts +6 -0
- package/dist/components/CdsTree/components/VirtualList/ScrollBar.d.ts +33 -0
- package/dist/components/CdsTree/components/VirtualList/VirtualList.d.ts +84 -0
- package/dist/components/CdsTree/components/VirtualList/features/index.d.ts +5 -0
- package/dist/components/CdsTree/components/VirtualList/features/useFrameWheel.d.ts +10 -0
- package/dist/components/CdsTree/components/VirtualList/features/useHeights.d.ts +9 -0
- package/dist/components/CdsTree/components/VirtualList/features/useMobileTouchMove.d.ts +2 -0
- package/dist/components/CdsTree/components/VirtualList/features/useOriginScroll.d.ts +2 -0
- package/dist/components/CdsTree/components/VirtualList/features/useScrollTo.d.ts +4 -0
- package/dist/components/CdsTree/components/VirtualList/index.d.ts +2 -0
- package/dist/components/CdsTree/components/VirtualList/interface.d.ts +10 -0
- package/dist/components/CdsTree/composable/events.d.ts +133 -0
- package/dist/components/CdsTree/composable/index.d.ts +2 -0
- package/dist/components/CdsTree/composable/tree.d.ts +273 -0
- package/dist/components/CdsTree/composable/treeNode.d.ts +75 -0
- package/dist/components/CdsTree/index.d.ts +5 -0
- package/dist/components/CdsTree/interface.d.ts +104 -4
- package/dist/components/CdsTree/utils/data.d.ts +70 -0
- package/dist/components/CdsTree/utils/diff.d.ts +6 -0
- package/dist/components/CdsTree/utils/directory.d.ts +9 -0
- package/dist/components/CdsTree/utils/index.d.ts +2 -0
- package/dist/components/CdsUploader/CdsUploader.vue.d.ts +1 -1
- package/dist/components/index.d.ts +5 -1
- package/dist/composable/delay.d.ts +3 -2
- package/dist/composable/overlay.d.ts +9 -1
- package/dist/composable/transition.d.ts +2 -0
- package/dist/create.d.ts +2 -0
- package/dist/globals.d.ts +7 -0
- package/dist/transitions/collapseTransition.d.ts +11 -0
- package/dist/transitions/index.d.ts +1 -0
- package/dist/utils/dom/bindProps.d.ts +2 -0
- package/dist/utils/dom/box.d.ts +1 -0
- package/dist/utils/helpers.d.ts +7 -5
- package/dist/utils/index.d.ts +3 -0
- package/dist/utils/use/flattenChildren.d.ts +3 -0
- package/package.json +1 -1
- package/src/scss/mixins/typo.scss +0 -3
- package/src/scss/modules/_transition.scss +31 -0
- package/src/scss/themes/index.ts +1 -1
- /package/dist/{components/CdsTable/utils → utils/use}/listener.d.ts +0 -0
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { Component, PropType } from 'vue';
|
|
2
|
+
declare type Key = string | number;
|
|
3
|
+
export declare type ScrollAlign = 'top' | 'bottom' | 'auto';
|
|
4
|
+
export declare type ScrollConfig = {
|
|
5
|
+
index: number;
|
|
6
|
+
align?: ScrollAlign;
|
|
7
|
+
offset?: number;
|
|
8
|
+
} | {
|
|
9
|
+
key: Key;
|
|
10
|
+
align?: ScrollAlign;
|
|
11
|
+
offset?: number;
|
|
12
|
+
};
|
|
13
|
+
export declare type ScrollTo = (arg: number | ScrollConfig) => void;
|
|
14
|
+
declare const _default: import("vue").DefineComponent<{
|
|
15
|
+
prefixCls: PropType<string>;
|
|
16
|
+
data: PropType<any[]>;
|
|
17
|
+
height: {
|
|
18
|
+
type: PropType<number>;
|
|
19
|
+
default: number;
|
|
20
|
+
};
|
|
21
|
+
itemHeight: {
|
|
22
|
+
type: PropType<number>;
|
|
23
|
+
default: number;
|
|
24
|
+
};
|
|
25
|
+
fullHeight: {
|
|
26
|
+
type: PropType<boolean>;
|
|
27
|
+
default: undefined;
|
|
28
|
+
};
|
|
29
|
+
itemKey: {
|
|
30
|
+
type: PropType<Key | ((item: Record<string, any>) => Key)>;
|
|
31
|
+
required: true;
|
|
32
|
+
};
|
|
33
|
+
component: {
|
|
34
|
+
type: PropType<string | Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>>;
|
|
35
|
+
};
|
|
36
|
+
/** Set `false` will always use real scroll instead of virtual one */
|
|
37
|
+
virtual: {
|
|
38
|
+
type: BooleanConstructor;
|
|
39
|
+
default: undefined;
|
|
40
|
+
};
|
|
41
|
+
children: FunctionConstructor;
|
|
42
|
+
onScroll: FunctionConstructor;
|
|
43
|
+
onMousedown: FunctionConstructor;
|
|
44
|
+
onMouseEnter: FunctionConstructor;
|
|
45
|
+
onVisibleChange: PropType<(visibleList: any[], fullList: any[]) => void>;
|
|
46
|
+
}, void, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
47
|
+
prefixCls: PropType<string>;
|
|
48
|
+
data: PropType<any[]>;
|
|
49
|
+
height: {
|
|
50
|
+
type: PropType<number>;
|
|
51
|
+
default: number;
|
|
52
|
+
};
|
|
53
|
+
itemHeight: {
|
|
54
|
+
type: PropType<number>;
|
|
55
|
+
default: number;
|
|
56
|
+
};
|
|
57
|
+
fullHeight: {
|
|
58
|
+
type: PropType<boolean>;
|
|
59
|
+
default: undefined;
|
|
60
|
+
};
|
|
61
|
+
itemKey: {
|
|
62
|
+
type: PropType<Key | ((item: Record<string, any>) => Key)>;
|
|
63
|
+
required: true;
|
|
64
|
+
};
|
|
65
|
+
component: {
|
|
66
|
+
type: PropType<string | Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>>;
|
|
67
|
+
};
|
|
68
|
+
/** Set `false` will always use real scroll instead of virtual one */
|
|
69
|
+
virtual: {
|
|
70
|
+
type: BooleanConstructor;
|
|
71
|
+
default: undefined;
|
|
72
|
+
};
|
|
73
|
+
children: FunctionConstructor;
|
|
74
|
+
onScroll: FunctionConstructor;
|
|
75
|
+
onMousedown: FunctionConstructor;
|
|
76
|
+
onMouseEnter: FunctionConstructor;
|
|
77
|
+
onVisibleChange: PropType<(visibleList: any[], fullList: any[]) => void>;
|
|
78
|
+
}>>, {
|
|
79
|
+
height: number;
|
|
80
|
+
virtual: boolean;
|
|
81
|
+
itemHeight: number;
|
|
82
|
+
fullHeight: boolean;
|
|
83
|
+
}>;
|
|
84
|
+
export default _default;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Ref } from 'vue';
|
|
2
|
+
interface FireFoxDOMMouseScrollEvent {
|
|
3
|
+
detail: number;
|
|
4
|
+
preventDefault: Function;
|
|
5
|
+
}
|
|
6
|
+
export declare function useFrameWheel(inVirtual: Ref<boolean>, isScrollAtTop: Ref<boolean>, isScrollAtBottom: Ref<boolean>, onWheelDelta: (offset: number) => void): {
|
|
7
|
+
onWheel: (e: WheelEvent) => void;
|
|
8
|
+
onFireFoxScroll: (e: FireFoxDOMMouseScrollEvent) => void;
|
|
9
|
+
};
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Ref, ShallowRef } from 'vue';
|
|
2
|
+
import { GetKey } from '../interface';
|
|
3
|
+
export declare type CacheMap = Map<any, number>;
|
|
4
|
+
export declare function useHeights<T>(mergedData: ShallowRef<any[]>, getKey: GetKey<T>, onItemAdd?: ((item: T) => void) | null, onItemRemove?: ((item: T) => void) | null): {
|
|
5
|
+
setInstance: (item: T, instance: HTMLElement) => void;
|
|
6
|
+
collectHeight: () => void;
|
|
7
|
+
heights: CacheMap;
|
|
8
|
+
updatedMark: Ref<Symbol>;
|
|
9
|
+
};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { Ref, ShallowRef } from 'vue';
|
|
2
|
+
import { GetKey } from '../interface';
|
|
3
|
+
import { CacheMap } from './useHeights';
|
|
4
|
+
export declare function useScrollTo(containerRef: Ref<Element | undefined>, mergedData: ShallowRef<any[]>, heights: CacheMap, props: any, getKey: GetKey, collectHeight: () => void, syncScrollTop: (newTop: number) => void, triggerFlash: () => void): (arg?: any) => void;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { CSSProperties, VNodeTypes } from 'vue';
|
|
2
|
+
declare type Key = string | number;
|
|
3
|
+
export declare type RenderFunc<T> = (item: T, index: number, props: {
|
|
4
|
+
style?: CSSProperties;
|
|
5
|
+
}) => VNodeTypes;
|
|
6
|
+
export interface SharedConfig<T> {
|
|
7
|
+
getKey: (item: T) => Key;
|
|
8
|
+
}
|
|
9
|
+
export declare type GetKey<T = object> = (item: T) => Key;
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import { PropType } from 'vue';
|
|
2
|
+
import { NTree } from '../../../components';
|
|
3
|
+
export declare const makeTreeEventsProps: <Defaults extends {
|
|
4
|
+
onFocus?: unknown;
|
|
5
|
+
onBlur?: unknown;
|
|
6
|
+
onKeydown?: unknown;
|
|
7
|
+
onContextmenu?: unknown;
|
|
8
|
+
onClick?: unknown;
|
|
9
|
+
onDblclick?: unknown;
|
|
10
|
+
onScroll?: unknown;
|
|
11
|
+
onExpand?: unknown;
|
|
12
|
+
onCheck?: unknown;
|
|
13
|
+
onSelect?: unknown;
|
|
14
|
+
onLoad?: unknown;
|
|
15
|
+
onMouseenter?: unknown;
|
|
16
|
+
onMouseleave?: unknown;
|
|
17
|
+
onRightClick?: unknown;
|
|
18
|
+
onDragstart?: unknown;
|
|
19
|
+
onDragenter?: unknown;
|
|
20
|
+
onDragover?: unknown;
|
|
21
|
+
onDragleave?: unknown;
|
|
22
|
+
onDragend?: unknown;
|
|
23
|
+
onDrop?: unknown;
|
|
24
|
+
onActiveChange?: unknown;
|
|
25
|
+
} = {}>(defaults?: Defaults | undefined) => import('../../../utils').AppendDefault<{
|
|
26
|
+
onFocus: {
|
|
27
|
+
type: PropType<(event: FocusEvent) => void>;
|
|
28
|
+
default: undefined;
|
|
29
|
+
};
|
|
30
|
+
onBlur: {
|
|
31
|
+
type: PropType<(event: FocusEvent) => void>;
|
|
32
|
+
default: undefined;
|
|
33
|
+
};
|
|
34
|
+
onKeydown: {
|
|
35
|
+
type: PropType<NTree.TEventHandler>;
|
|
36
|
+
default: undefined;
|
|
37
|
+
};
|
|
38
|
+
onContextmenu: {
|
|
39
|
+
type: PropType<NTree.TEventHandler>;
|
|
40
|
+
default: undefined;
|
|
41
|
+
};
|
|
42
|
+
onClick: {
|
|
43
|
+
type: PropType<NTree.TNodeMouseEventHandler>;
|
|
44
|
+
default: undefined;
|
|
45
|
+
};
|
|
46
|
+
onDblclick: {
|
|
47
|
+
type: PropType<NTree.TNodeMouseEventHandler>;
|
|
48
|
+
default: undefined;
|
|
49
|
+
};
|
|
50
|
+
onScroll: {
|
|
51
|
+
type: PropType<NTree.TEventHandler>;
|
|
52
|
+
default: undefined;
|
|
53
|
+
};
|
|
54
|
+
onExpand: {
|
|
55
|
+
type: PropType<(expandedKeys: NTree.TKey[], info: {
|
|
56
|
+
node: NTree.IEventDataNode;
|
|
57
|
+
expanded: boolean;
|
|
58
|
+
nativeEvent: MouseEvent;
|
|
59
|
+
}) => void>;
|
|
60
|
+
default: undefined;
|
|
61
|
+
};
|
|
62
|
+
onCheck: {
|
|
63
|
+
type: PropType<(checked: NTree.TKey[] | {
|
|
64
|
+
checked: NTree.TKey[];
|
|
65
|
+
halfChecked: NTree.TKey[];
|
|
66
|
+
}, info: NTree.ICheckInfo) => void>;
|
|
67
|
+
default: undefined;
|
|
68
|
+
};
|
|
69
|
+
onSelect: {
|
|
70
|
+
type: PropType<(selectedKeys: NTree.TKey[], info: {
|
|
71
|
+
event: 'select';
|
|
72
|
+
selected: boolean;
|
|
73
|
+
node: NTree.IEventDataNode;
|
|
74
|
+
selectedNodes: NTree.IDataNode[];
|
|
75
|
+
nativeEvent: MouseEvent;
|
|
76
|
+
}) => void>;
|
|
77
|
+
default: undefined;
|
|
78
|
+
};
|
|
79
|
+
onLoad: {
|
|
80
|
+
type: PropType<(loadedKeys: NTree.TKey[], info: {
|
|
81
|
+
event: 'load';
|
|
82
|
+
node: NTree.IEventDataNode;
|
|
83
|
+
}) => void>;
|
|
84
|
+
default: undefined;
|
|
85
|
+
};
|
|
86
|
+
onMouseenter: {
|
|
87
|
+
type: PropType<(info: NTree.TNodeMouseEventParams) => void>;
|
|
88
|
+
default: undefined;
|
|
89
|
+
};
|
|
90
|
+
onMouseleave: {
|
|
91
|
+
type: PropType<(info: NTree.TNodeMouseEventParams) => void>;
|
|
92
|
+
default: undefined;
|
|
93
|
+
};
|
|
94
|
+
onRightClick: {
|
|
95
|
+
type: PropType<(info: NTree.TNodeMouseEventParams) => void>;
|
|
96
|
+
default: undefined;
|
|
97
|
+
};
|
|
98
|
+
onDragstart: {
|
|
99
|
+
type: PropType<(info: NTree.TNodeDragEventParams) => void>;
|
|
100
|
+
default: undefined;
|
|
101
|
+
};
|
|
102
|
+
onDragenter: {
|
|
103
|
+
type: PropType<(info: NTree.TNodeDragEventParams & {
|
|
104
|
+
expandedKeys: NTree.TKey[];
|
|
105
|
+
}) => void>;
|
|
106
|
+
default: undefined;
|
|
107
|
+
};
|
|
108
|
+
onDragover: {
|
|
109
|
+
type: PropType<(info: NTree.TNodeDragEventParams) => void>;
|
|
110
|
+
default: undefined;
|
|
111
|
+
};
|
|
112
|
+
onDragleave: {
|
|
113
|
+
type: PropType<(info: NTree.TNodeDragEventParams) => void>;
|
|
114
|
+
default: undefined;
|
|
115
|
+
};
|
|
116
|
+
onDragend: {
|
|
117
|
+
type: PropType<(info: NTree.TNodeDragEventParams) => void>;
|
|
118
|
+
default: undefined;
|
|
119
|
+
};
|
|
120
|
+
onDrop: {
|
|
121
|
+
type: PropType<(info: NTree.TNodeDragEventParams & {
|
|
122
|
+
dragNode: NTree.IEventDataNode | null;
|
|
123
|
+
dragNodesKeys: NTree.TKey[];
|
|
124
|
+
dropPosition: number;
|
|
125
|
+
dropToGap: boolean;
|
|
126
|
+
}) => void>;
|
|
127
|
+
default: undefined;
|
|
128
|
+
};
|
|
129
|
+
onActiveChange: {
|
|
130
|
+
type: PropType<(key: NTree.TKey | null) => void>;
|
|
131
|
+
default: undefined;
|
|
132
|
+
};
|
|
133
|
+
}, Defaults>;
|
|
@@ -1,5 +1,278 @@
|
|
|
1
|
+
import { ExtractPropTypes, PropType } from 'vue';
|
|
2
|
+
import { SwitcherIconProps } from '../components/SwitcherIcon';
|
|
3
|
+
import type { TCdsIconsName } from '@central-design-system/icons';
|
|
1
4
|
import type { NTree } from '../interface';
|
|
2
5
|
import type { ShallowRef } from 'vue';
|
|
6
|
+
export declare const makeTreeProps: <Defaults extends {
|
|
7
|
+
treeData?: unknown;
|
|
8
|
+
selectable?: unknown;
|
|
9
|
+
multiple?: unknown;
|
|
10
|
+
checkable?: unknown;
|
|
11
|
+
draggable?: unknown;
|
|
12
|
+
checkedKeys?: unknown;
|
|
13
|
+
expandedKeys?: unknown;
|
|
14
|
+
selectedKeys?: unknown;
|
|
15
|
+
autoExpandParent?: unknown;
|
|
16
|
+
defaultExpandedKeys?: unknown;
|
|
17
|
+
defaultExpandParent?: unknown;
|
|
18
|
+
defaultExpandAll?: unknown;
|
|
19
|
+
defaultSelectedKeys?: unknown;
|
|
20
|
+
expandAction?: unknown;
|
|
21
|
+
checkStrictly?: unknown;
|
|
22
|
+
allowDrop?: unknown;
|
|
23
|
+
blockNode?: unknown;
|
|
24
|
+
fieldNames?: unknown;
|
|
25
|
+
showLine?: unknown;
|
|
26
|
+
showIcon?: unknown;
|
|
27
|
+
filterTreeNode?: unknown;
|
|
28
|
+
loadData?: unknown;
|
|
29
|
+
loadedKeys?: unknown;
|
|
30
|
+
icon?: unknown;
|
|
31
|
+
switcherIcon?: unknown;
|
|
32
|
+
openAnimation?: unknown;
|
|
33
|
+
virtual?: unknown;
|
|
34
|
+
height?: unknown;
|
|
35
|
+
} = {}>(defaults?: Defaults | undefined) => import('../../../utils').AppendDefault<{
|
|
36
|
+
/**
|
|
37
|
+
* Данные дерева
|
|
38
|
+
*/
|
|
39
|
+
treeData: {
|
|
40
|
+
type: PropType<NTree.IDataNode[]>;
|
|
41
|
+
default: undefined;
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* Выбираемые узлы дерева
|
|
45
|
+
*/
|
|
46
|
+
selectable: {
|
|
47
|
+
type: PropType<boolean>;
|
|
48
|
+
default: boolean;
|
|
49
|
+
};
|
|
50
|
+
/**
|
|
51
|
+
* Множественный выбор узлов дерева
|
|
52
|
+
*/
|
|
53
|
+
multiple: {
|
|
54
|
+
type: PropType<boolean>;
|
|
55
|
+
default: boolean;
|
|
56
|
+
};
|
|
57
|
+
/**
|
|
58
|
+
* Добавляет checkbox перед узлами дерева
|
|
59
|
+
*/
|
|
60
|
+
checkable: {
|
|
61
|
+
type: PropType<boolean>;
|
|
62
|
+
default: boolean;
|
|
63
|
+
};
|
|
64
|
+
/**
|
|
65
|
+
* Разрешает перетаскивание узлов дерева
|
|
66
|
+
*/
|
|
67
|
+
draggable: {
|
|
68
|
+
type: PropType<boolean | NTree.TDraggableConfig>;
|
|
69
|
+
default: boolean;
|
|
70
|
+
};
|
|
71
|
+
/**
|
|
72
|
+
* (v-model) Определяет ключи выбранных узлов дерева.
|
|
73
|
+
* Когда указан ключ узла дерева, который также является родительским узлом дерева, все дочерние узлы дерева будут checked;
|
|
74
|
+
* и наоборот, когда указан ключ узла дерева, который является дочерним узлом дерева, его родительский узел дерева также будет checked.
|
|
75
|
+
* Когда checkable и checkStrictly равны true, объект имеет свойство checked и halfChecked. Независимо от того, проверяется ли дочерний или родительский узел дерева, они не будут влиять друг на друга.
|
|
76
|
+
*/
|
|
77
|
+
checkedKeys: {
|
|
78
|
+
type: PropType<NTree.TKey[] | {
|
|
79
|
+
checked: NTree.TKey[];
|
|
80
|
+
halfChecked: NTree.TKey[];
|
|
81
|
+
}>;
|
|
82
|
+
default: undefined;
|
|
83
|
+
};
|
|
84
|
+
/**
|
|
85
|
+
* (v-model) Определяет ключи раскрытых узлов дерева.
|
|
86
|
+
*/
|
|
87
|
+
expandedKeys: {
|
|
88
|
+
type: PropType<NTree.TKey[]>;
|
|
89
|
+
default: undefined;
|
|
90
|
+
};
|
|
91
|
+
/**
|
|
92
|
+
* (v-model) Определяет ключи выбранных узлов дерева.
|
|
93
|
+
*/
|
|
94
|
+
selectedKeys: {
|
|
95
|
+
type: PropType<NTree.TKey[]>;
|
|
96
|
+
default: undefined;
|
|
97
|
+
};
|
|
98
|
+
/**
|
|
99
|
+
* Автоматически раскрывать родительский узел
|
|
100
|
+
*/
|
|
101
|
+
autoExpandParent: {
|
|
102
|
+
type: PropType<boolean>;
|
|
103
|
+
default: boolean;
|
|
104
|
+
};
|
|
105
|
+
/**
|
|
106
|
+
* Раскрывать все узлы по умолчанию
|
|
107
|
+
*/
|
|
108
|
+
defaultExpandedKeys: {
|
|
109
|
+
type: PropType<NTree.TKey[]>;
|
|
110
|
+
default: () => never[];
|
|
111
|
+
};
|
|
112
|
+
/**
|
|
113
|
+
* Раскрывать родительские узлы по умолчанию
|
|
114
|
+
*/
|
|
115
|
+
defaultExpandParent: {
|
|
116
|
+
type: PropType<boolean>;
|
|
117
|
+
default: boolean;
|
|
118
|
+
};
|
|
119
|
+
/**
|
|
120
|
+
* Раскрывать все узлы по умолчанию
|
|
121
|
+
*/
|
|
122
|
+
defaultExpandAll: {
|
|
123
|
+
type: PropType<boolean>;
|
|
124
|
+
default: boolean;
|
|
125
|
+
};
|
|
126
|
+
/**
|
|
127
|
+
* Выбранные узлы дерева по умолчанию
|
|
128
|
+
*/
|
|
129
|
+
defaultSelectedKeys: {
|
|
130
|
+
type: PropType<NTree.TKey[]>;
|
|
131
|
+
default: undefined;
|
|
132
|
+
};
|
|
133
|
+
/**
|
|
134
|
+
* Действие, которое будет раскрывать/скрывать узлы дерева
|
|
135
|
+
*/
|
|
136
|
+
expandAction: {
|
|
137
|
+
type: PropType<NTree.TExpandAction>;
|
|
138
|
+
default: undefined;
|
|
139
|
+
};
|
|
140
|
+
/**
|
|
141
|
+
* Выбирает только родительский узел.
|
|
142
|
+
*/
|
|
143
|
+
checkStrictly: {
|
|
144
|
+
type: PropType<boolean>;
|
|
145
|
+
default: boolean;
|
|
146
|
+
};
|
|
147
|
+
/**
|
|
148
|
+
* Разрешает сброс на узле
|
|
149
|
+
*/
|
|
150
|
+
allowDrop: {
|
|
151
|
+
type: PropType<NTree.TAllowDrop<NTree.IDataNode>>;
|
|
152
|
+
default: () => true;
|
|
153
|
+
};
|
|
154
|
+
/**
|
|
155
|
+
* Узел дерева заполняет все оставшееся горизонтальное пространство
|
|
156
|
+
*/
|
|
157
|
+
blockNode: {
|
|
158
|
+
type: PropType<boolean>;
|
|
159
|
+
default: boolean;
|
|
160
|
+
};
|
|
161
|
+
/**
|
|
162
|
+
* Заменяет поля title, key и children в treeNode на соответствующие поля в treeData
|
|
163
|
+
*/
|
|
164
|
+
fieldNames: {
|
|
165
|
+
type: PropType<NTree.IFieldNames>;
|
|
166
|
+
default: undefined;
|
|
167
|
+
};
|
|
168
|
+
/**
|
|
169
|
+
* Показывает линии между узлами дерева
|
|
170
|
+
*/
|
|
171
|
+
showLine: {
|
|
172
|
+
type: PropType<boolean | {
|
|
173
|
+
showLeafIcon: boolean | TCdsIconsName;
|
|
174
|
+
}>;
|
|
175
|
+
default: undefined;
|
|
176
|
+
};
|
|
177
|
+
/**
|
|
178
|
+
* Показывает иконку узла дерева
|
|
179
|
+
*/
|
|
180
|
+
showIcon: {
|
|
181
|
+
type: PropType<boolean>;
|
|
182
|
+
default: boolean;
|
|
183
|
+
};
|
|
184
|
+
/**
|
|
185
|
+
* Функция для фильтрации (выделения) узлов дерева. Когда функция возвращает true, узел дерева будет выделен.
|
|
186
|
+
*/
|
|
187
|
+
filterTreeNode: {
|
|
188
|
+
type: PropType<(treeNode: NTree.IEventDataNode) => boolean>;
|
|
189
|
+
default: undefined;
|
|
190
|
+
};
|
|
191
|
+
/**
|
|
192
|
+
* Загружает данные для узла дерева асинхронно
|
|
193
|
+
*/
|
|
194
|
+
loadData: {
|
|
195
|
+
type: PropType<(treeNode: NTree.IEventDataNode) => Promise<any>>;
|
|
196
|
+
default: undefined;
|
|
197
|
+
};
|
|
198
|
+
/**
|
|
199
|
+
* Загруженные узлы дерева. Необходимо для работы с loadData
|
|
200
|
+
*/
|
|
201
|
+
loadedKeys: {
|
|
202
|
+
type: PropType<NTree.TKey[]>;
|
|
203
|
+
default: () => never[];
|
|
204
|
+
};
|
|
205
|
+
/**
|
|
206
|
+
* Иконка узла дерева (также доступно через slot#icon)
|
|
207
|
+
*/
|
|
208
|
+
icon: {
|
|
209
|
+
type: PropType<(nodeProps: NTree.ITreeNodeAttribute) => any>;
|
|
210
|
+
default: undefined;
|
|
211
|
+
};
|
|
212
|
+
/**
|
|
213
|
+
* Иконка открытия/закрытия узла дерева (также доступно через slot#switcherIcon)
|
|
214
|
+
*/
|
|
215
|
+
switcherIcon: {
|
|
216
|
+
type: PropType<(nodeProps: SwitcherIconProps) => any>;
|
|
217
|
+
default: undefined;
|
|
218
|
+
};
|
|
219
|
+
/**
|
|
220
|
+
* Функция анимации открытия/закрытия узла дерева
|
|
221
|
+
*/
|
|
222
|
+
openAnimation: {
|
|
223
|
+
type: FunctionConstructor;
|
|
224
|
+
default: undefined;
|
|
225
|
+
};
|
|
226
|
+
/**
|
|
227
|
+
* Включает виртуальную прокрутку списка в дереве, по-умолчанию включено
|
|
228
|
+
*/
|
|
229
|
+
virtual: {
|
|
230
|
+
type: PropType<boolean>;
|
|
231
|
+
default: boolean;
|
|
232
|
+
};
|
|
233
|
+
/**
|
|
234
|
+
* Высота виртуального списка для прокрутки
|
|
235
|
+
*/
|
|
236
|
+
height: {
|
|
237
|
+
type: PropType<number>;
|
|
238
|
+
default: undefined;
|
|
239
|
+
};
|
|
240
|
+
}, Defaults>;
|
|
241
|
+
export interface ITreeProps extends Partial<ExtractPropTypes<ReturnType<typeof makeTreeProps>>> {
|
|
242
|
+
onLoad?: (loadedKeys: NTree.TKey[], info: {
|
|
243
|
+
event: 'load';
|
|
244
|
+
node: NTree.IEventDataNode;
|
|
245
|
+
}) => void;
|
|
246
|
+
onDragenter?: (info: NTree.TNodeDragEventParams & {
|
|
247
|
+
expandedKeys: NTree.TKey[];
|
|
248
|
+
}) => void;
|
|
249
|
+
onDragstart?: (info: NTree.TNodeDragEventParams) => void;
|
|
250
|
+
onDragover?: (info: NTree.TNodeDragEventParams) => void;
|
|
251
|
+
onDragleave?: (info: NTree.TNodeDragEventParams) => void;
|
|
252
|
+
onDragend?: (info: NTree.TNodeDragEventParams) => void;
|
|
253
|
+
onDrop?: (info: NTree.TNodeDragEventParams & {
|
|
254
|
+
dragNode: NTree.IEventDataNode | null;
|
|
255
|
+
dragNodesKeys: NTree.TKey[];
|
|
256
|
+
dropPosition: number;
|
|
257
|
+
dropToGap: boolean;
|
|
258
|
+
}) => void;
|
|
259
|
+
onCheck?: (checked: {
|
|
260
|
+
checked: NTree.TKey[];
|
|
261
|
+
halfChecked: NTree.TKey[];
|
|
262
|
+
} | NTree.TKey[], info: NTree.ICheckInfo) => void;
|
|
263
|
+
onExpand?: (expandedKeys: NTree.TKey[], info: {
|
|
264
|
+
node: NTree.IEventDataNode;
|
|
265
|
+
expanded: boolean;
|
|
266
|
+
nativeEvent: MouseEvent;
|
|
267
|
+
}) => void;
|
|
268
|
+
onSelect?: (selectedKeys: NTree.TKey[], info: {
|
|
269
|
+
event: 'select';
|
|
270
|
+
selected: boolean;
|
|
271
|
+
node: NTree.IEventDataNode;
|
|
272
|
+
selectedNodes: NTree.IDataNode[];
|
|
273
|
+
nativeEvent: MouseEvent;
|
|
274
|
+
}) => void;
|
|
275
|
+
}
|
|
3
276
|
export declare function useMaxLevel<TreeDataType extends NTree.IBasicDataNode = NTree.IDataNode>(keyEntities: ShallowRef<Record<NTree.TKey, NTree.IDataEntity>>): {
|
|
4
277
|
maxLevel: import("vue").Ref<number>;
|
|
5
278
|
levelEntities: ShallowRef<Map<number, Set<NTree.IDataEntity<TreeDataType>>> | undefined>;
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { ExtractPropTypes, PropType } from 'vue';
|
|
2
|
+
import { NTree } from '../../../components';
|
|
3
|
+
export declare const makeTreeNodeProps: <Defaults extends {
|
|
4
|
+
eventKey?: unknown;
|
|
5
|
+
prefixCls?: unknown;
|
|
6
|
+
title?: unknown;
|
|
7
|
+
data?: unknown;
|
|
8
|
+
parent?: unknown;
|
|
9
|
+
isStart?: unknown;
|
|
10
|
+
isEnd?: unknown;
|
|
11
|
+
active?: unknown;
|
|
12
|
+
onMousemove?: unknown;
|
|
13
|
+
isLeaf?: unknown;
|
|
14
|
+
checkable?: unknown;
|
|
15
|
+
selectable?: unknown;
|
|
16
|
+
disabled?: unknown;
|
|
17
|
+
disableCheckbox?: unknown;
|
|
18
|
+
icon?: unknown;
|
|
19
|
+
switcherIcon?: unknown;
|
|
20
|
+
domRef?: unknown;
|
|
21
|
+
} = {}>(defaults?: Defaults | undefined) => import('../../../utils').AppendDefault<{
|
|
22
|
+
eventKey: {
|
|
23
|
+
type: PropType<NTree.TKey>;
|
|
24
|
+
default: string;
|
|
25
|
+
};
|
|
26
|
+
prefixCls: StringConstructor;
|
|
27
|
+
title: (StringConstructor | FunctionConstructor)[];
|
|
28
|
+
data: {
|
|
29
|
+
type: PropType<NTree.IDataNode>;
|
|
30
|
+
default: NTree.IDataNode;
|
|
31
|
+
};
|
|
32
|
+
parent: {
|
|
33
|
+
type: PropType<NTree.IDataNode>;
|
|
34
|
+
default: NTree.IDataNode;
|
|
35
|
+
};
|
|
36
|
+
isStart: {
|
|
37
|
+
type: PropType<boolean[]>;
|
|
38
|
+
};
|
|
39
|
+
isEnd: {
|
|
40
|
+
type: PropType<boolean[]>;
|
|
41
|
+
};
|
|
42
|
+
active: {
|
|
43
|
+
type: BooleanConstructor;
|
|
44
|
+
default: undefined;
|
|
45
|
+
};
|
|
46
|
+
onMousemove: {
|
|
47
|
+
type: PropType<NTree.TEventHandler>;
|
|
48
|
+
};
|
|
49
|
+
isLeaf: {
|
|
50
|
+
type: BooleanConstructor;
|
|
51
|
+
default: undefined;
|
|
52
|
+
};
|
|
53
|
+
checkable: {
|
|
54
|
+
type: BooleanConstructor;
|
|
55
|
+
default: undefined;
|
|
56
|
+
};
|
|
57
|
+
selectable: {
|
|
58
|
+
type: BooleanConstructor;
|
|
59
|
+
default: undefined;
|
|
60
|
+
};
|
|
61
|
+
disabled: {
|
|
62
|
+
type: BooleanConstructor;
|
|
63
|
+
default: undefined;
|
|
64
|
+
};
|
|
65
|
+
disableCheckbox: {
|
|
66
|
+
type: BooleanConstructor;
|
|
67
|
+
default: undefined;
|
|
68
|
+
};
|
|
69
|
+
icon: FunctionConstructor[];
|
|
70
|
+
switcherIcon: FunctionConstructor[];
|
|
71
|
+
domRef: {
|
|
72
|
+
type: PropType<(arg: any) => void>;
|
|
73
|
+
};
|
|
74
|
+
}, Defaults>;
|
|
75
|
+
export declare type ITreeNodeProps = Partial<ExtractPropTypes<ReturnType<typeof makeTreeNodeProps>>>;
|