@cyberpunk-vue/components 1.11.2 → 1.12.1
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/index.cjs +1 -1
- package/dist/index.mjs +146 -68
- package/dist/table/index.d.ts +5 -5
- package/dist/table/src/table.vue.d.ts +2 -2
- package/dist/tree/index.d.ts +79 -0
- package/dist/tree/src/constants.d.ts +8 -4
- package/dist/tree/src/tree.d.ts +53 -2
- package/dist/tree/src/tree.vue.d.ts +44 -1
- package/package.json +4 -4
package/dist/tree/index.d.ts
CHANGED
|
@@ -20,10 +20,18 @@ export declare const CpTree: import('../utils').SFCWithInstall<{
|
|
|
20
20
|
readonly type: BooleanConstructor;
|
|
21
21
|
readonly default: false;
|
|
22
22
|
};
|
|
23
|
+
readonly showRadio: {
|
|
24
|
+
readonly type: BooleanConstructor;
|
|
25
|
+
readonly default: false;
|
|
26
|
+
};
|
|
23
27
|
readonly checkStrictly: {
|
|
24
28
|
readonly type: BooleanConstructor;
|
|
25
29
|
readonly default: false;
|
|
26
30
|
};
|
|
31
|
+
readonly checkMode: {
|
|
32
|
+
readonly type: import('vue').PropType<import('.').TreeCascadeMode>;
|
|
33
|
+
readonly default: undefined;
|
|
34
|
+
};
|
|
27
35
|
readonly defaultExpandAll: {
|
|
28
36
|
readonly type: BooleanConstructor;
|
|
29
37
|
readonly default: false;
|
|
@@ -60,6 +68,14 @@ export declare const CpTree: import('../utils').SFCWithInstall<{
|
|
|
60
68
|
readonly type: BooleanConstructor;
|
|
61
69
|
readonly default: false;
|
|
62
70
|
};
|
|
71
|
+
readonly defaultCurrentKey: {
|
|
72
|
+
readonly type: import('vue').PropType<string | number | null>;
|
|
73
|
+
readonly default: null;
|
|
74
|
+
};
|
|
75
|
+
readonly currentKey: {
|
|
76
|
+
readonly type: import('vue').PropType<string | number | null>;
|
|
77
|
+
readonly default: undefined;
|
|
78
|
+
};
|
|
63
79
|
readonly type: {
|
|
64
80
|
readonly type: import('vue').PropType<import('.').TreeType>;
|
|
65
81
|
readonly default: "primary";
|
|
@@ -109,13 +125,18 @@ export declare const CpTree: import('../utils').SFCWithInstall<{
|
|
|
109
125
|
"onNode-expand"?: ((data: import('.').TreeNodeData, node: import('.').TreeNode) => any) | undefined;
|
|
110
126
|
"onNode-collapse"?: ((data: import('.').TreeNodeData, node: import('.').TreeNode) => any) | undefined;
|
|
111
127
|
"onCheck-change"?: ((data: import('.').TreeNodeData, checked: boolean) => any) | undefined;
|
|
128
|
+
"onCurrent-change"?: ((data: import('.').TreeNodeData | null, node: import('.').TreeNode | null, prevData: import('.').TreeNodeData | null, prevNode: import('.').TreeNode | null) => any) | undefined;
|
|
112
129
|
"onUpdate:checkedKeys"?: ((keys: (string | number)[]) => any) | undefined;
|
|
113
130
|
"onUpdate:expandedKeys"?: ((keys: (string | number)[]) => any) | undefined;
|
|
131
|
+
"onUpdate:currentKey"?: ((key: string | number | null) => any) | undefined;
|
|
114
132
|
}>, {
|
|
115
133
|
filter: (val: string) => void;
|
|
116
134
|
getCheckedKeys: () => (string | number)[];
|
|
117
135
|
setCheckedKeys: (keys: (string | number)[]) => void;
|
|
118
136
|
getHalfCheckedKeys: () => (string | number)[];
|
|
137
|
+
getCurrentKey: () => string | number | null;
|
|
138
|
+
getCurrentNode: () => import('.').TreeNodeData | null;
|
|
139
|
+
setCurrentKey: (key: string | number | null) => void;
|
|
119
140
|
expandAll: () => void;
|
|
120
141
|
collapseAll: () => void;
|
|
121
142
|
treeNodes: import('vue').Ref<{
|
|
@@ -162,8 +183,10 @@ export declare const CpTree: import('../utils').SFCWithInstall<{
|
|
|
162
183
|
"node-expand": (data: import('.').TreeNodeData, node: import('.').TreeNode) => void;
|
|
163
184
|
"node-collapse": (data: import('.').TreeNodeData, node: import('.').TreeNode) => void;
|
|
164
185
|
"check-change": (data: import('.').TreeNodeData, checked: boolean) => void;
|
|
186
|
+
"current-change": (data: import('.').TreeNodeData | null, node: import('.').TreeNode | null, prevData: import('.').TreeNodeData | null, prevNode: import('.').TreeNode | null) => void;
|
|
165
187
|
"update:checkedKeys": (keys: (string | number)[]) => void;
|
|
166
188
|
"update:expandedKeys": (keys: (string | number)[]) => void;
|
|
189
|
+
"update:currentKey": (key: string | number | null) => void;
|
|
167
190
|
}, import('vue').PublicProps, {
|
|
168
191
|
readonly data: import('.').TreeNodeData[];
|
|
169
192
|
readonly props: import('.').TreeFieldProps;
|
|
@@ -172,7 +195,9 @@ export declare const CpTree: import('../utils').SFCWithInstall<{
|
|
|
172
195
|
readonly load: (node: import('.').TreeNode, resolve: (data: import('.').TreeNodeData[]) => void) => void;
|
|
173
196
|
readonly lazy: boolean;
|
|
174
197
|
readonly showCheckbox: boolean;
|
|
198
|
+
readonly showRadio: boolean;
|
|
175
199
|
readonly checkStrictly: boolean;
|
|
200
|
+
readonly checkMode: import('.').TreeCascadeMode;
|
|
176
201
|
readonly defaultExpandAll: boolean;
|
|
177
202
|
readonly defaultExpandedKeys: (string | number)[];
|
|
178
203
|
readonly expandedKeys: (string | number)[];
|
|
@@ -181,6 +206,8 @@ export declare const CpTree: import('../utils').SFCWithInstall<{
|
|
|
181
206
|
readonly indent: number;
|
|
182
207
|
readonly nodeKey: string;
|
|
183
208
|
readonly highlightCurrent: boolean;
|
|
209
|
+
readonly defaultCurrentKey: string | number | null;
|
|
210
|
+
readonly currentKey: string | number | null;
|
|
184
211
|
readonly connectorLine: boolean;
|
|
185
212
|
readonly filterMethod: (value: string, data: import('.').TreeNodeData, node: import('.').TreeNode) => boolean;
|
|
186
213
|
readonly expandIcon: import('vue').Component | ((node: import('.').TreeNode) => import('vue').Component);
|
|
@@ -204,10 +231,18 @@ export declare const CpTree: import('../utils').SFCWithInstall<{
|
|
|
204
231
|
readonly type: BooleanConstructor;
|
|
205
232
|
readonly default: false;
|
|
206
233
|
};
|
|
234
|
+
readonly showRadio: {
|
|
235
|
+
readonly type: BooleanConstructor;
|
|
236
|
+
readonly default: false;
|
|
237
|
+
};
|
|
207
238
|
readonly checkStrictly: {
|
|
208
239
|
readonly type: BooleanConstructor;
|
|
209
240
|
readonly default: false;
|
|
210
241
|
};
|
|
242
|
+
readonly checkMode: {
|
|
243
|
+
readonly type: import('vue').PropType<import('.').TreeCascadeMode>;
|
|
244
|
+
readonly default: undefined;
|
|
245
|
+
};
|
|
211
246
|
readonly defaultExpandAll: {
|
|
212
247
|
readonly type: BooleanConstructor;
|
|
213
248
|
readonly default: false;
|
|
@@ -244,6 +279,14 @@ export declare const CpTree: import('../utils').SFCWithInstall<{
|
|
|
244
279
|
readonly type: BooleanConstructor;
|
|
245
280
|
readonly default: false;
|
|
246
281
|
};
|
|
282
|
+
readonly defaultCurrentKey: {
|
|
283
|
+
readonly type: import('vue').PropType<string | number | null>;
|
|
284
|
+
readonly default: null;
|
|
285
|
+
};
|
|
286
|
+
readonly currentKey: {
|
|
287
|
+
readonly type: import('vue').PropType<string | number | null>;
|
|
288
|
+
readonly default: undefined;
|
|
289
|
+
};
|
|
247
290
|
readonly type: {
|
|
248
291
|
readonly type: import('vue').PropType<import('.').TreeType>;
|
|
249
292
|
readonly default: "primary";
|
|
@@ -293,13 +336,18 @@ export declare const CpTree: import('../utils').SFCWithInstall<{
|
|
|
293
336
|
"onNode-expand"?: ((data: import('.').TreeNodeData, node: import('.').TreeNode) => any) | undefined;
|
|
294
337
|
"onNode-collapse"?: ((data: import('.').TreeNodeData, node: import('.').TreeNode) => any) | undefined;
|
|
295
338
|
"onCheck-change"?: ((data: import('.').TreeNodeData, checked: boolean) => any) | undefined;
|
|
339
|
+
"onCurrent-change"?: ((data: import('.').TreeNodeData | null, node: import('.').TreeNode | null, prevData: import('.').TreeNodeData | null, prevNode: import('.').TreeNode | null) => any) | undefined;
|
|
296
340
|
"onUpdate:checkedKeys"?: ((keys: (string | number)[]) => any) | undefined;
|
|
297
341
|
"onUpdate:expandedKeys"?: ((keys: (string | number)[]) => any) | undefined;
|
|
342
|
+
"onUpdate:currentKey"?: ((key: string | number | null) => any) | undefined;
|
|
298
343
|
}>, {
|
|
299
344
|
filter: (val: string) => void;
|
|
300
345
|
getCheckedKeys: () => (string | number)[];
|
|
301
346
|
setCheckedKeys: (keys: (string | number)[]) => void;
|
|
302
347
|
getHalfCheckedKeys: () => (string | number)[];
|
|
348
|
+
getCurrentKey: () => string | number | null;
|
|
349
|
+
getCurrentNode: () => import('.').TreeNodeData | null;
|
|
350
|
+
setCurrentKey: (key: string | number | null) => void;
|
|
303
351
|
expandAll: () => void;
|
|
304
352
|
collapseAll: () => void;
|
|
305
353
|
treeNodes: import('vue').Ref<{
|
|
@@ -349,7 +397,9 @@ export declare const CpTree: import('../utils').SFCWithInstall<{
|
|
|
349
397
|
readonly load: (node: import('.').TreeNode, resolve: (data: import('.').TreeNodeData[]) => void) => void;
|
|
350
398
|
readonly lazy: boolean;
|
|
351
399
|
readonly showCheckbox: boolean;
|
|
400
|
+
readonly showRadio: boolean;
|
|
352
401
|
readonly checkStrictly: boolean;
|
|
402
|
+
readonly checkMode: import('.').TreeCascadeMode;
|
|
353
403
|
readonly defaultExpandAll: boolean;
|
|
354
404
|
readonly defaultExpandedKeys: (string | number)[];
|
|
355
405
|
readonly expandedKeys: (string | number)[];
|
|
@@ -358,6 +408,8 @@ export declare const CpTree: import('../utils').SFCWithInstall<{
|
|
|
358
408
|
readonly indent: number;
|
|
359
409
|
readonly nodeKey: string;
|
|
360
410
|
readonly highlightCurrent: boolean;
|
|
411
|
+
readonly defaultCurrentKey: string | number | null;
|
|
412
|
+
readonly currentKey: string | number | null;
|
|
361
413
|
readonly connectorLine: boolean;
|
|
362
414
|
readonly filterMethod: (value: string, data: import('.').TreeNodeData, node: import('.').TreeNode) => boolean;
|
|
363
415
|
readonly expandIcon: import('vue').Component | ((node: import('.').TreeNode) => import('vue').Component);
|
|
@@ -378,10 +430,18 @@ export declare const CpTree: import('../utils').SFCWithInstall<{
|
|
|
378
430
|
readonly type: BooleanConstructor;
|
|
379
431
|
readonly default: false;
|
|
380
432
|
};
|
|
433
|
+
readonly showRadio: {
|
|
434
|
+
readonly type: BooleanConstructor;
|
|
435
|
+
readonly default: false;
|
|
436
|
+
};
|
|
381
437
|
readonly checkStrictly: {
|
|
382
438
|
readonly type: BooleanConstructor;
|
|
383
439
|
readonly default: false;
|
|
384
440
|
};
|
|
441
|
+
readonly checkMode: {
|
|
442
|
+
readonly type: import('vue').PropType<import('.').TreeCascadeMode>;
|
|
443
|
+
readonly default: undefined;
|
|
444
|
+
};
|
|
385
445
|
readonly defaultExpandAll: {
|
|
386
446
|
readonly type: BooleanConstructor;
|
|
387
447
|
readonly default: false;
|
|
@@ -418,6 +478,14 @@ export declare const CpTree: import('../utils').SFCWithInstall<{
|
|
|
418
478
|
readonly type: BooleanConstructor;
|
|
419
479
|
readonly default: false;
|
|
420
480
|
};
|
|
481
|
+
readonly defaultCurrentKey: {
|
|
482
|
+
readonly type: import('vue').PropType<string | number | null>;
|
|
483
|
+
readonly default: null;
|
|
484
|
+
};
|
|
485
|
+
readonly currentKey: {
|
|
486
|
+
readonly type: import('vue').PropType<string | number | null>;
|
|
487
|
+
readonly default: undefined;
|
|
488
|
+
};
|
|
421
489
|
readonly type: {
|
|
422
490
|
readonly type: import('vue').PropType<import('.').TreeType>;
|
|
423
491
|
readonly default: "primary";
|
|
@@ -467,13 +535,18 @@ export declare const CpTree: import('../utils').SFCWithInstall<{
|
|
|
467
535
|
"onNode-expand"?: ((data: import('.').TreeNodeData, node: import('.').TreeNode) => any) | undefined;
|
|
468
536
|
"onNode-collapse"?: ((data: import('.').TreeNodeData, node: import('.').TreeNode) => any) | undefined;
|
|
469
537
|
"onCheck-change"?: ((data: import('.').TreeNodeData, checked: boolean) => any) | undefined;
|
|
538
|
+
"onCurrent-change"?: ((data: import('.').TreeNodeData | null, node: import('.').TreeNode | null, prevData: import('.').TreeNodeData | null, prevNode: import('.').TreeNode | null) => any) | undefined;
|
|
470
539
|
"onUpdate:checkedKeys"?: ((keys: (string | number)[]) => any) | undefined;
|
|
471
540
|
"onUpdate:expandedKeys"?: ((keys: (string | number)[]) => any) | undefined;
|
|
541
|
+
"onUpdate:currentKey"?: ((key: string | number | null) => any) | undefined;
|
|
472
542
|
}>, {
|
|
473
543
|
filter: (val: string) => void;
|
|
474
544
|
getCheckedKeys: () => (string | number)[];
|
|
475
545
|
setCheckedKeys: (keys: (string | number)[]) => void;
|
|
476
546
|
getHalfCheckedKeys: () => (string | number)[];
|
|
547
|
+
getCurrentKey: () => string | number | null;
|
|
548
|
+
getCurrentNode: () => import('.').TreeNodeData | null;
|
|
549
|
+
setCurrentKey: (key: string | number | null) => void;
|
|
477
550
|
expandAll: () => void;
|
|
478
551
|
collapseAll: () => void;
|
|
479
552
|
treeNodes: import('vue').Ref<{
|
|
@@ -520,8 +593,10 @@ export declare const CpTree: import('../utils').SFCWithInstall<{
|
|
|
520
593
|
"node-expand": (data: import('.').TreeNodeData, node: import('.').TreeNode) => void;
|
|
521
594
|
"node-collapse": (data: import('.').TreeNodeData, node: import('.').TreeNode) => void;
|
|
522
595
|
"check-change": (data: import('.').TreeNodeData, checked: boolean) => void;
|
|
596
|
+
"current-change": (data: import('.').TreeNodeData | null, node: import('.').TreeNode | null, prevData: import('.').TreeNodeData | null, prevNode: import('.').TreeNode | null) => void;
|
|
523
597
|
"update:checkedKeys": (keys: (string | number)[]) => void;
|
|
524
598
|
"update:expandedKeys": (keys: (string | number)[]) => void;
|
|
599
|
+
"update:currentKey": (key: string | number | null) => void;
|
|
525
600
|
}, string, {
|
|
526
601
|
readonly data: import('.').TreeNodeData[];
|
|
527
602
|
readonly props: import('.').TreeFieldProps;
|
|
@@ -530,7 +605,9 @@ export declare const CpTree: import('../utils').SFCWithInstall<{
|
|
|
530
605
|
readonly load: (node: import('.').TreeNode, resolve: (data: import('.').TreeNodeData[]) => void) => void;
|
|
531
606
|
readonly lazy: boolean;
|
|
532
607
|
readonly showCheckbox: boolean;
|
|
608
|
+
readonly showRadio: boolean;
|
|
533
609
|
readonly checkStrictly: boolean;
|
|
610
|
+
readonly checkMode: import('.').TreeCascadeMode;
|
|
534
611
|
readonly defaultExpandAll: boolean;
|
|
535
612
|
readonly defaultExpandedKeys: (string | number)[];
|
|
536
613
|
readonly expandedKeys: (string | number)[];
|
|
@@ -539,6 +616,8 @@ export declare const CpTree: import('../utils').SFCWithInstall<{
|
|
|
539
616
|
readonly indent: number;
|
|
540
617
|
readonly nodeKey: string;
|
|
541
618
|
readonly highlightCurrent: boolean;
|
|
619
|
+
readonly defaultCurrentKey: string | number | null;
|
|
620
|
+
readonly currentKey: string | number | null;
|
|
542
621
|
readonly connectorLine: boolean;
|
|
543
622
|
readonly filterMethod: (value: string, data: import('.').TreeNodeData, node: import('.').TreeNode) => boolean;
|
|
544
623
|
readonly expandIcon: import('vue').Component | ((node: import('.').TreeNode) => import('vue').Component);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Component, InjectionKey, Ref, Slots } from 'vue';
|
|
2
|
-
import { TreeNode, TreeType } from './tree';
|
|
2
|
+
import { TreeCascadeMode, TreeNode, TreeType } from './tree';
|
|
3
3
|
/**
|
|
4
4
|
* 图标 Prop 值类型
|
|
5
5
|
* 支持直接传组件,或传函数按节点返回不同组件
|
|
@@ -20,8 +20,12 @@ export interface TreeContext {
|
|
|
20
20
|
currentNodeKey: Ref<string | number | null>;
|
|
21
21
|
/** 是否显示复选框 */
|
|
22
22
|
showCheckbox: boolean;
|
|
23
|
-
/**
|
|
23
|
+
/** 是否显示单选框 */
|
|
24
|
+
showRadio: boolean;
|
|
25
|
+
/** 是否严格模式(父子不关联) —— 兼容字段,实际联动策略以 `checkMode` 为准 */
|
|
24
26
|
checkStrictly: boolean;
|
|
27
|
+
/** 复选框父子联动策略 */
|
|
28
|
+
checkMode: TreeCascadeMode;
|
|
25
29
|
/** 是否手风琴模式 */
|
|
26
30
|
accordion: boolean;
|
|
27
31
|
/** 缩进像素 */
|
|
@@ -40,8 +44,8 @@ export interface TreeContext {
|
|
|
40
44
|
toggleExpand: (node: TreeNode) => void;
|
|
41
45
|
/** 切换勾选 */
|
|
42
46
|
toggleCheck: (node: TreeNode) => void;
|
|
43
|
-
/**
|
|
44
|
-
setCurrentNode: (node: TreeNode) => void;
|
|
47
|
+
/** 设置当前高亮/单选节点 */
|
|
48
|
+
setCurrentNode: (node: TreeNode | null, emitEvent?: boolean) => void;
|
|
45
49
|
/** 触发 node-click 事件 */
|
|
46
50
|
handleNodeClick: (node: TreeNode) => void;
|
|
47
51
|
/** 获取所有节点的映射 */
|
package/dist/tree/src/tree.d.ts
CHANGED
|
@@ -57,6 +57,13 @@ export interface TreeNode {
|
|
|
57
57
|
* 树形控件颜色类型
|
|
58
58
|
*/
|
|
59
59
|
export type TreeType = 'primary' | 'success' | 'warning' | 'error' | 'info';
|
|
60
|
+
/**
|
|
61
|
+
* 复选框父子联动策略
|
|
62
|
+
* - `'strict'`:父子独立,互不影响
|
|
63
|
+
* - `'cascade'`:完全双向联动。勾父 → 全部后代勾选;勾/取子 → 父按直接子状态自动更新(含半选)
|
|
64
|
+
* - `'bubble'`:勾选任何节点 → 级联勾选全部后代 + 向上冒泡勾选祖先;取消父 → 后代全部取消;取消子不影响父
|
|
65
|
+
*/
|
|
66
|
+
export type TreeCascadeMode = 'strict' | 'cascade' | 'bubble';
|
|
60
67
|
/**
|
|
61
68
|
* CpTree 组件 Props 定义
|
|
62
69
|
*
|
|
@@ -81,23 +88,46 @@ export declare const treeProps: {
|
|
|
81
88
|
readonly default: () => never[];
|
|
82
89
|
};
|
|
83
90
|
/**
|
|
84
|
-
*
|
|
91
|
+
* 是否显示复选框(多选模式)
|
|
85
92
|
* @default false
|
|
86
93
|
*/
|
|
87
94
|
readonly showCheckbox: {
|
|
88
95
|
readonly type: BooleanConstructor;
|
|
89
96
|
readonly default: false;
|
|
90
97
|
};
|
|
98
|
+
/**
|
|
99
|
+
* 是否显示单选框(单选模式)
|
|
100
|
+
* 与 `showCheckbox` 互斥;开启后每个节点左侧渲染单选指示器,
|
|
101
|
+
* 点击节点(非禁用)即将该节点设为当前选中节点,状态通过 `currentKey` / `update:currentKey` / `current-change` 反馈。
|
|
102
|
+
* @default false
|
|
103
|
+
*/
|
|
104
|
+
readonly showRadio: {
|
|
105
|
+
readonly type: BooleanConstructor;
|
|
106
|
+
readonly default: false;
|
|
107
|
+
};
|
|
91
108
|
/**
|
|
92
109
|
* 严格模式:父子节点互不关联
|
|
93
110
|
* - `false`(默认):勾选父节点自动勾选所有子节点,子节点全选时自动勾上父节点,部分选中显示半选
|
|
94
111
|
* - `true`:父子独立勾选,互不影响
|
|
112
|
+
* @deprecated 请使用 `checkMode` 指定联动策略。当 `checkMode` 显式传入时本 prop 被忽略。
|
|
95
113
|
* @default false
|
|
96
114
|
*/
|
|
97
115
|
readonly checkStrictly: {
|
|
98
116
|
readonly type: BooleanConstructor;
|
|
99
117
|
readonly default: false;
|
|
100
118
|
};
|
|
119
|
+
/**
|
|
120
|
+
* 复选框父子联动策略(参考 CpTable `treeCheckMode`)
|
|
121
|
+
* - `'strict'`:父子独立,互不影响
|
|
122
|
+
* - `'cascade'`:完全双向联动
|
|
123
|
+
* - `'bubble'`:勾选级联+向上冒泡;取消父 → 后代全部取消;取消子不影响父
|
|
124
|
+
*
|
|
125
|
+
* 未显式传入时:若 `checkStrictly` 为 `true` 则等价 `'strict'`,否则等价 `'cascade'`(兼容旧行为)。
|
|
126
|
+
*/
|
|
127
|
+
readonly checkMode: {
|
|
128
|
+
readonly type: PropType<TreeCascadeMode>;
|
|
129
|
+
readonly default: undefined;
|
|
130
|
+
};
|
|
101
131
|
/**
|
|
102
132
|
* 默认展开所有节点
|
|
103
133
|
* @default false
|
|
@@ -166,6 +196,23 @@ export declare const treeProps: {
|
|
|
166
196
|
readonly type: BooleanConstructor;
|
|
167
197
|
readonly default: false;
|
|
168
198
|
};
|
|
199
|
+
/**
|
|
200
|
+
* 默认当前选中节点 key(非受控)
|
|
201
|
+
*/
|
|
202
|
+
readonly defaultCurrentKey: {
|
|
203
|
+
readonly type: PropType<string | number | null>;
|
|
204
|
+
readonly default: null;
|
|
205
|
+
};
|
|
206
|
+
/**
|
|
207
|
+
* 受控当前选中节点 key(v-model:currentKey)
|
|
208
|
+
* 与 `highlightCurrent` / `showRadio` 共用同一份状态:
|
|
209
|
+
* - `highlightCurrent`=true:点击节点高亮并写入 currentKey
|
|
210
|
+
* - `showRadio`=true:点击节点选中并写入 currentKey
|
|
211
|
+
*/
|
|
212
|
+
readonly currentKey: {
|
|
213
|
+
readonly type: PropType<string | number | null>;
|
|
214
|
+
readonly default: undefined;
|
|
215
|
+
};
|
|
169
216
|
/**
|
|
170
217
|
* 颜色类型
|
|
171
218
|
* @default 'primary'
|
|
@@ -243,7 +290,7 @@ export declare const treeProps: {
|
|
|
243
290
|
};
|
|
244
291
|
/**
|
|
245
292
|
* 自定义节点前缀图标
|
|
246
|
-
*
|
|
293
|
+
* 在单选/复选指示器之后、标签之前显示(若未启用 showRadio/showCheckbox 则紧跟展开箭头)
|
|
247
294
|
* - `Component`: 统一图标
|
|
248
295
|
* - `(node: TreeNode) => Component | string | undefined`: 按节点返回不同图标
|
|
249
296
|
* 当 showNodeIcon 为 true 时,如果未设置此 prop,则自动读取 `TreeNodeData.icon` 字段
|
|
@@ -275,9 +322,13 @@ export declare const treeEmits: {
|
|
|
275
322
|
'node-collapse': (data: TreeNodeData, node: TreeNode) => boolean;
|
|
276
323
|
/** 勾选变化 */
|
|
277
324
|
'check-change': (data: TreeNodeData, checked: boolean) => boolean;
|
|
325
|
+
/** 当前选中节点变化(highlightCurrent / showRadio 场景) */
|
|
326
|
+
'current-change': (data: TreeNodeData | null, node: TreeNode | null, prevData: TreeNodeData | null, prevNode: TreeNode | null) => boolean;
|
|
278
327
|
/** v-model:checkedKeys */
|
|
279
328
|
'update:checkedKeys': (keys: (string | number)[]) => boolean;
|
|
280
329
|
/** v-model:expandedKeys */
|
|
281
330
|
'update:expandedKeys': (keys: (string | number)[]) => boolean;
|
|
331
|
+
/** v-model:currentKey */
|
|
332
|
+
'update:currentKey': (key: string | number | null) => boolean;
|
|
282
333
|
};
|
|
283
334
|
export type TreeEmits = typeof treeEmits;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { TreeNode, TreeNodeData } from './tree';
|
|
1
|
+
import { TreeCascadeMode, TreeNode, TreeNodeData } from './tree';
|
|
2
2
|
declare function __VLS_template(): {
|
|
3
3
|
attrs: Partial<{}>;
|
|
4
4
|
slots: {
|
|
@@ -17,10 +17,18 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
17
17
|
readonly type: BooleanConstructor;
|
|
18
18
|
readonly default: false;
|
|
19
19
|
};
|
|
20
|
+
readonly showRadio: {
|
|
21
|
+
readonly type: BooleanConstructor;
|
|
22
|
+
readonly default: false;
|
|
23
|
+
};
|
|
20
24
|
readonly checkStrictly: {
|
|
21
25
|
readonly type: BooleanConstructor;
|
|
22
26
|
readonly default: false;
|
|
23
27
|
};
|
|
28
|
+
readonly checkMode: {
|
|
29
|
+
readonly type: import('vue').PropType<TreeCascadeMode>;
|
|
30
|
+
readonly default: undefined;
|
|
31
|
+
};
|
|
24
32
|
readonly defaultExpandAll: {
|
|
25
33
|
readonly type: BooleanConstructor;
|
|
26
34
|
readonly default: false;
|
|
@@ -57,6 +65,14 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
57
65
|
readonly type: BooleanConstructor;
|
|
58
66
|
readonly default: false;
|
|
59
67
|
};
|
|
68
|
+
readonly defaultCurrentKey: {
|
|
69
|
+
readonly type: import('vue').PropType<string | number | null>;
|
|
70
|
+
readonly default: null;
|
|
71
|
+
};
|
|
72
|
+
readonly currentKey: {
|
|
73
|
+
readonly type: import('vue').PropType<string | number | null>;
|
|
74
|
+
readonly default: undefined;
|
|
75
|
+
};
|
|
60
76
|
readonly type: {
|
|
61
77
|
readonly type: import('vue').PropType<import('./tree').TreeType>;
|
|
62
78
|
readonly default: "primary";
|
|
@@ -106,6 +122,9 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
106
122
|
getCheckedKeys: () => (string | number)[];
|
|
107
123
|
setCheckedKeys: (keys: (string | number)[]) => void;
|
|
108
124
|
getHalfCheckedKeys: () => (string | number)[];
|
|
125
|
+
getCurrentKey: () => string | number | null;
|
|
126
|
+
getCurrentNode: () => TreeNodeData | null;
|
|
127
|
+
setCurrentKey: (key: string | number | null) => void;
|
|
109
128
|
expandAll: () => void;
|
|
110
129
|
collapseAll: () => void;
|
|
111
130
|
treeNodes: import('vue').Ref<{
|
|
@@ -152,8 +171,10 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
152
171
|
"node-expand": (data: TreeNodeData, node: TreeNode) => void;
|
|
153
172
|
"node-collapse": (data: TreeNodeData, node: TreeNode) => void;
|
|
154
173
|
"check-change": (data: TreeNodeData, checked: boolean) => void;
|
|
174
|
+
"current-change": (data: TreeNodeData | null, node: TreeNode | null, prevData: TreeNodeData | null, prevNode: TreeNode | null) => void;
|
|
155
175
|
"update:checkedKeys": (keys: (string | number)[]) => void;
|
|
156
176
|
"update:expandedKeys": (keys: (string | number)[]) => void;
|
|
177
|
+
"update:currentKey": (key: string | number | null) => void;
|
|
157
178
|
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
|
|
158
179
|
readonly data: {
|
|
159
180
|
readonly type: import('vue').PropType<TreeNodeData[]>;
|
|
@@ -163,10 +184,18 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
163
184
|
readonly type: BooleanConstructor;
|
|
164
185
|
readonly default: false;
|
|
165
186
|
};
|
|
187
|
+
readonly showRadio: {
|
|
188
|
+
readonly type: BooleanConstructor;
|
|
189
|
+
readonly default: false;
|
|
190
|
+
};
|
|
166
191
|
readonly checkStrictly: {
|
|
167
192
|
readonly type: BooleanConstructor;
|
|
168
193
|
readonly default: false;
|
|
169
194
|
};
|
|
195
|
+
readonly checkMode: {
|
|
196
|
+
readonly type: import('vue').PropType<TreeCascadeMode>;
|
|
197
|
+
readonly default: undefined;
|
|
198
|
+
};
|
|
170
199
|
readonly defaultExpandAll: {
|
|
171
200
|
readonly type: BooleanConstructor;
|
|
172
201
|
readonly default: false;
|
|
@@ -203,6 +232,14 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
203
232
|
readonly type: BooleanConstructor;
|
|
204
233
|
readonly default: false;
|
|
205
234
|
};
|
|
235
|
+
readonly defaultCurrentKey: {
|
|
236
|
+
readonly type: import('vue').PropType<string | number | null>;
|
|
237
|
+
readonly default: null;
|
|
238
|
+
};
|
|
239
|
+
readonly currentKey: {
|
|
240
|
+
readonly type: import('vue').PropType<string | number | null>;
|
|
241
|
+
readonly default: undefined;
|
|
242
|
+
};
|
|
206
243
|
readonly type: {
|
|
207
244
|
readonly type: import('vue').PropType<import('./tree').TreeType>;
|
|
208
245
|
readonly default: "primary";
|
|
@@ -252,8 +289,10 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
252
289
|
"onNode-expand"?: ((data: TreeNodeData, node: TreeNode) => any) | undefined;
|
|
253
290
|
"onNode-collapse"?: ((data: TreeNodeData, node: TreeNode) => any) | undefined;
|
|
254
291
|
"onCheck-change"?: ((data: TreeNodeData, checked: boolean) => any) | undefined;
|
|
292
|
+
"onCurrent-change"?: ((data: TreeNodeData | null, node: TreeNode | null, prevData: TreeNodeData | null, prevNode: TreeNode | null) => any) | undefined;
|
|
255
293
|
"onUpdate:checkedKeys"?: ((keys: (string | number)[]) => any) | undefined;
|
|
256
294
|
"onUpdate:expandedKeys"?: ((keys: (string | number)[]) => any) | undefined;
|
|
295
|
+
"onUpdate:currentKey"?: ((key: string | number | null) => any) | undefined;
|
|
257
296
|
}>, {
|
|
258
297
|
readonly data: TreeNodeData[];
|
|
259
298
|
readonly props: import('./tree').TreeFieldProps;
|
|
@@ -262,7 +301,9 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
262
301
|
readonly load: (node: TreeNode, resolve: (data: TreeNodeData[]) => void) => void;
|
|
263
302
|
readonly lazy: boolean;
|
|
264
303
|
readonly showCheckbox: boolean;
|
|
304
|
+
readonly showRadio: boolean;
|
|
265
305
|
readonly checkStrictly: boolean;
|
|
306
|
+
readonly checkMode: TreeCascadeMode;
|
|
266
307
|
readonly defaultExpandAll: boolean;
|
|
267
308
|
readonly defaultExpandedKeys: (string | number)[];
|
|
268
309
|
readonly expandedKeys: (string | number)[];
|
|
@@ -271,6 +312,8 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
271
312
|
readonly indent: number;
|
|
272
313
|
readonly nodeKey: string;
|
|
273
314
|
readonly highlightCurrent: boolean;
|
|
315
|
+
readonly defaultCurrentKey: string | number | null;
|
|
316
|
+
readonly currentKey: string | number | null;
|
|
274
317
|
readonly connectorLine: boolean;
|
|
275
318
|
readonly filterMethod: (value: string, data: TreeNodeData, node: TreeNode) => boolean;
|
|
276
319
|
readonly expandIcon: import('vue').Component | ((node: TreeNode) => import('vue').Component);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cyberpunk-vue/components",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.12.1",
|
|
4
4
|
"description": "Cyberpunk Vue components - A futuristic Vue 3 component library",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.cjs",
|
|
@@ -23,9 +23,9 @@
|
|
|
23
23
|
"vue": "^3.5.0"
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@cyberpunk-vue/hooks": "1.
|
|
27
|
-
"@cyberpunk-vue/
|
|
28
|
-
"@cyberpunk-vue/
|
|
26
|
+
"@cyberpunk-vue/hooks": "1.12.1",
|
|
27
|
+
"@cyberpunk-vue/constants": "1.12.1",
|
|
28
|
+
"@cyberpunk-vue/theme-chalk": "1.12.1"
|
|
29
29
|
},
|
|
30
30
|
"author": "Juxest",
|
|
31
31
|
"license": "MIT",
|