yuyeon 0.0.7 → 0.0.9
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/style.css +1 -1
- package/dist/yuyeon.mjs +1570 -1563
- package/dist/yuyeon.umd.js +1 -1
- package/lib/components/icons/YIconPageControl.mjs +1 -5
- package/lib/components/icons/YIconPageControl.mjs.map +1 -1
- package/lib/components/pagination/YPagination.mjs +14 -18
- package/lib/components/pagination/YPagination.mjs.map +1 -1
- package/lib/components/table/pagination.mjs +60 -1
- package/lib/components/table/pagination.mjs.map +1 -1
- package/lib/components/tree-view/YTreeView.mjs +35 -9
- package/lib/components/tree-view/YTreeView.mjs.map +1 -1
- package/lib/components/tree-view/YTreeView.scss +2 -2
- package/lib/components/tree-view/types.mjs.map +1 -1
- package/package.json +1 -1
- package/types/components/icons/YIconPageControl.d.ts +0 -8
- package/types/components/pagination/YPagination.d.ts +0 -28
- package/types/components/table/pagination.d.ts +41 -1
- package/types/components/tree-view/YTreeView.d.ts +2 -0
- package/types/components/tree-view/types.d.ts +2 -1
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { computed, inject, provide, watchEffect } from 'vue';
|
|
2
2
|
import { useModelDuplex } from "../../composables/communication.mjs";
|
|
3
|
+
import { clamp } from "../../util/common.mjs";
|
|
4
|
+
import { propsFactory } from "../../util/vue-component.mjs";
|
|
5
|
+
export const Y_DATA_TABLE_PAGINATION_KEY = Symbol.for('yuyeon.data-table.pagination');
|
|
3
6
|
export const pressDataTablePaginationProps = propsFactory({
|
|
4
7
|
page: {
|
|
5
8
|
type: [Number, String],
|
|
@@ -18,4 +21,60 @@ export function createPagination(props) {
|
|
|
18
21
|
pageSize
|
|
19
22
|
};
|
|
20
23
|
}
|
|
24
|
+
export function providePagination(options) {
|
|
25
|
+
const {
|
|
26
|
+
page,
|
|
27
|
+
pageSize,
|
|
28
|
+
total
|
|
29
|
+
} = options;
|
|
30
|
+
const startIndex = computed(() => {
|
|
31
|
+
if (pageSize.value === -1) return 0;
|
|
32
|
+
return pageSize.value * (page.value - 1);
|
|
33
|
+
});
|
|
34
|
+
const endIndex = computed(() => {
|
|
35
|
+
if (pageSize.value === -1) return total.value;
|
|
36
|
+
return Math.min(total.value, startIndex.value + pageSize.value);
|
|
37
|
+
});
|
|
38
|
+
const pageLength = computed(() => {
|
|
39
|
+
if (pageSize.value === -1 || total.value === 0) return 1;
|
|
40
|
+
return Math.ceil(total.value / pageSize.value);
|
|
41
|
+
});
|
|
42
|
+
watchEffect(() => {
|
|
43
|
+
if (page.value > pageLength.value) {
|
|
44
|
+
page.value = pageLength.value;
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
function setPageSize(value) {
|
|
48
|
+
pageSize.value = value;
|
|
49
|
+
page.value = 1;
|
|
50
|
+
}
|
|
51
|
+
function nextPage() {
|
|
52
|
+
page.value = clamp(page.value + 1, 1, pageLength.value);
|
|
53
|
+
}
|
|
54
|
+
function prevPage() {
|
|
55
|
+
page.value = clamp(page.value - 1, 1, pageLength.value);
|
|
56
|
+
}
|
|
57
|
+
function setPage(value) {
|
|
58
|
+
page.value = clamp(value, 1, pageLength.value);
|
|
59
|
+
}
|
|
60
|
+
const data = {
|
|
61
|
+
page,
|
|
62
|
+
pageSize,
|
|
63
|
+
startIndex,
|
|
64
|
+
endIndex,
|
|
65
|
+
pageLength,
|
|
66
|
+
total,
|
|
67
|
+
nextPage,
|
|
68
|
+
prevPage,
|
|
69
|
+
setPage,
|
|
70
|
+
setPageSize
|
|
71
|
+
};
|
|
72
|
+
provide(Y_DATA_TABLE_PAGINATION_KEY, data);
|
|
73
|
+
return data;
|
|
74
|
+
}
|
|
75
|
+
export function usePagination() {
|
|
76
|
+
const data = inject(Y_DATA_TABLE_PAGINATION_KEY);
|
|
77
|
+
if (!data) throw new Error('Missing pagination!');
|
|
78
|
+
return data;
|
|
79
|
+
}
|
|
21
80
|
//# sourceMappingURL=pagination.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pagination.mjs","names":["
|
|
1
|
+
{"version":3,"file":"pagination.mjs","names":["computed","inject","provide","watchEffect","useModelDuplex","clamp","propsFactory","Y_DATA_TABLE_PAGINATION_KEY","Symbol","for","pressDataTablePaginationProps","page","type","Number","String","default","pageSize","createPagination","props","undefined","value","providePagination","options","total","startIndex","endIndex","Math","min","pageLength","ceil","setPageSize","nextPage","prevPage","setPage","data","usePagination","Error"],"sources":["../../../src/components/table/pagination.ts"],"sourcesContent":["import {\r\n InjectionKey,\r\n PropType,\r\n Ref,\r\n computed,\r\n inject,\r\n provide,\r\n watchEffect,\r\n} from 'vue';\r\n\r\nimport { useModelDuplex } from '../../composables/communication';\r\nimport { clamp } from '../../util/common';\r\nimport { propsFactory } from '../../util/vue-component';\r\n\r\nexport const Y_DATA_TABLE_PAGINATION_KEY: InjectionKey<{\r\n page: Ref<number>;\r\n pageSize: Ref<number>;\r\n startIndex: Ref<number>;\r\n endIndex: Ref<number>;\r\n pageLength: Ref<number>;\r\n total: Ref<number>;\r\n prevPage: () => void;\r\n nextPage: () => void;\r\n setPage: (page: number) => void;\r\n setPageSize: (size: number) => void;\r\n}> = Symbol.for('yuyeon.data-table.pagination');\r\n\r\nexport const pressDataTablePaginationProps = propsFactory(\r\n {\r\n page: {\r\n type: [Number, String] as PropType<number | string>,\r\n default: 0,\r\n },\r\n pageSize: {\r\n type: [Number, String] as PropType<number | string>,\r\n default: 10,\r\n },\r\n },\r\n 'YDataTable__pagination',\r\n);\r\n\r\ntype PaginationProps = {\r\n page: number | string;\r\n 'onUpdate:page': ((v: any) => void) | undefined;\r\n pageSize: number | string;\r\n 'onUpdate:pageSize': ((v: any) => void) | undefined;\r\n total?: number | string;\r\n};\r\n\r\nexport function createPagination(props: PaginationProps) {\r\n const page = useModelDuplex(\r\n props,\r\n 'page',\r\n undefined,\r\n (value) => +(value ?? 0),\r\n );\r\n const pageSize = useModelDuplex(\r\n props,\r\n 'pageSize',\r\n undefined,\r\n (value) => +(value ?? 10),\r\n );\r\n return { page, pageSize };\r\n}\r\n\r\nexport function providePagination(options: {\r\n page: Ref<number>;\r\n pageSize: Ref<number>;\r\n total: Ref<number>;\r\n}) {\r\n const { page, pageSize, total } = options;\r\n\r\n const startIndex = computed(() => {\r\n if (pageSize.value === -1) return 0;\r\n\r\n return pageSize.value * (page.value - 1);\r\n });\r\n const endIndex = computed(() => {\r\n if (pageSize.value === -1) return total.value;\r\n\r\n return Math.min(total.value, startIndex.value + pageSize.value);\r\n });\r\n\r\n const pageLength = computed(() => {\r\n if (pageSize.value === -1 || total.value === 0) return 1;\r\n\r\n return Math.ceil(total.value / pageSize.value);\r\n });\r\n\r\n watchEffect(() => {\r\n if (page.value > pageLength.value) {\r\n page.value = pageLength.value;\r\n }\r\n });\r\n\r\n function setPageSize(value: number) {\r\n pageSize.value = value;\r\n page.value = 1;\r\n }\r\n\r\n function nextPage() {\r\n page.value = clamp(page.value + 1, 1, pageLength.value);\r\n }\r\n\r\n function prevPage() {\r\n page.value = clamp(page.value - 1, 1, pageLength.value);\r\n }\r\n\r\n function setPage(value: number) {\r\n page.value = clamp(value, 1, pageLength.value);\r\n }\r\n\r\n const data = {\r\n page,\r\n pageSize,\r\n startIndex,\r\n endIndex,\r\n pageLength,\r\n total,\r\n nextPage,\r\n prevPage,\r\n setPage,\r\n setPageSize,\r\n };\r\n\r\n provide(Y_DATA_TABLE_PAGINATION_KEY, data);\r\n\r\n return data;\r\n}\r\n\r\nexport function usePagination() {\r\n const data = inject(Y_DATA_TABLE_PAGINATION_KEY);\r\n if (!data) throw new Error('Missing pagination!');\r\n return data;\r\n}\r\n"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createTextVNode as _createTextVNode, createVNode as _createVNode, resolveDirective as _resolveDirective, Fragment as _Fragment } from "vue";
|
|
2
|
-
import { computed, defineComponent, provide, ref, watch } from 'vue';
|
|
2
|
+
import { computed, defineComponent, onMounted, provide, ref, watch } from 'vue';
|
|
3
3
|
import { useModelDuplex } from "../../composables/communication.mjs";
|
|
4
4
|
import { useRender } from "../../composables/component.mjs";
|
|
5
5
|
import { differenceBetween } from "../../util/array.mjs";
|
|
@@ -41,13 +41,15 @@ export const YTreeView = defineComponent({
|
|
|
41
41
|
default: 'leaf'
|
|
42
42
|
},
|
|
43
43
|
returnItem: Boolean,
|
|
44
|
+
defaultExpand: [Boolean, String, Number],
|
|
44
45
|
...treeViewNodeProps
|
|
45
46
|
},
|
|
46
47
|
emits: ['update:expanded', 'update:active', 'update:selected'],
|
|
47
48
|
setup(props, _ref) {
|
|
48
49
|
let {
|
|
49
50
|
slots,
|
|
50
|
-
emit
|
|
51
|
+
emit,
|
|
52
|
+
expose
|
|
51
53
|
} = _ref;
|
|
52
54
|
const nodes = ref({});
|
|
53
55
|
const expanded = useModelDuplex(props, 'expanded');
|
|
@@ -70,10 +72,14 @@ export const YTreeView = defineComponent({
|
|
|
70
72
|
}
|
|
71
73
|
return descendants;
|
|
72
74
|
}
|
|
75
|
+
function getNodeKey(itemOrKey) {
|
|
76
|
+
return props.returnItem ? getObjectValueByPath(itemOrKey, props.itemKey) : itemOrKey;
|
|
77
|
+
}
|
|
73
78
|
|
|
74
79
|
// State Methods
|
|
75
80
|
function updateNodes(items) {
|
|
76
81
|
let parentKey = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
|
|
82
|
+
let level = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
|
|
77
83
|
for (const item of items) {
|
|
78
84
|
const key = getObjectValueByPath(item, props.itemKey);
|
|
79
85
|
const children = getObjectValueByPath(item, props.childrenKey) ?? [];
|
|
@@ -88,6 +94,7 @@ export const YTreeView = defineComponent({
|
|
|
88
94
|
const node = {
|
|
89
95
|
vnode: existNode.vnode,
|
|
90
96
|
item,
|
|
97
|
+
level,
|
|
91
98
|
parentKey,
|
|
92
99
|
childKeys: children.map(child => getObjectValueByPath(child, props.itemKey)),
|
|
93
100
|
expanded: children.length > 0 && existNode.expanded,
|
|
@@ -95,7 +102,7 @@ export const YTreeView = defineComponent({
|
|
|
95
102
|
indeterminate: existNode.indeterminate,
|
|
96
103
|
selected: existNode.selected
|
|
97
104
|
};
|
|
98
|
-
updateNodes(children, key);
|
|
105
|
+
updateNodes(children, key, level + 1);
|
|
99
106
|
nodes.value[key] = node;
|
|
100
107
|
if (nodes.value[key].expanded) {
|
|
101
108
|
expandedSet.value.add(key);
|
|
@@ -112,15 +119,23 @@ export const YTreeView = defineComponent({
|
|
|
112
119
|
function updateExpanded(key, to) {
|
|
113
120
|
if (!(key in nodes.value)) return;
|
|
114
121
|
const node = nodes.value[key];
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
expandedSet.value.delete(key);
|
|
120
|
-
node.expanded = false;
|
|
122
|
+
const children = getObjectValueByPath(node.item, props.childrenKey);
|
|
123
|
+
if (Array.isArray(children) && children.length > 0) {
|
|
124
|
+
to ? expandedSet.value.add(key) : expandedSet.value.delete(key);
|
|
125
|
+
node.expanded = to;
|
|
121
126
|
issueVnodeState(key);
|
|
122
127
|
}
|
|
123
128
|
}
|
|
129
|
+
function expand() {
|
|
130
|
+
let until = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
|
131
|
+
Object.entries(nodes.value).forEach(_ref2 => {
|
|
132
|
+
let [key, node] = _ref2;
|
|
133
|
+
if (until === true || until >= node.level) {
|
|
134
|
+
updateExpanded(key, true);
|
|
135
|
+
}
|
|
136
|
+
});
|
|
137
|
+
emitExpanded();
|
|
138
|
+
}
|
|
124
139
|
function updateActive(key, to) {
|
|
125
140
|
if (!(key in nodes.value)) return;
|
|
126
141
|
const node = nodes.value[key];
|
|
@@ -265,6 +280,17 @@ export const YTreeView = defineComponent({
|
|
|
265
280
|
[`--y-tree-view__active-color`]: color
|
|
266
281
|
};
|
|
267
282
|
});
|
|
283
|
+
onMounted(() => {
|
|
284
|
+
if (props.defaultExpand !== undefined) {
|
|
285
|
+
expand(props.defaultExpand);
|
|
286
|
+
} else {
|
|
287
|
+
expanded.value.forEach(v => updateExpanded(getNodeKey(v), true));
|
|
288
|
+
emitExpanded();
|
|
289
|
+
}
|
|
290
|
+
});
|
|
291
|
+
expose({
|
|
292
|
+
expand
|
|
293
|
+
});
|
|
268
294
|
useRender(() => {
|
|
269
295
|
return _createVNode(_Fragment, null, [_createVNode("div", {
|
|
270
296
|
"class": classes.value,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"YTreeView.mjs","names":["computed","defineComponent","provide","ref","watch","useModelDuplex","useRender","differenceBetween","deepEqual","getObjectValueByPath","hasOwnProperty","isColorValue","chooseProps","YTreeViewNode","pressYTreeViewNodeProps","getKeys","treeViewNodeProps","YTreeView","name","props","items","type","Array","default","expanded","active","multipleActive","Boolean","activeStrategy","String","selected","selectStrategy","returnItem","emits","setup","_ref","slots","emit","nodes","expandedSet","Set","selectedSet","activeSet","expandedCache","getDescendants","key","descendants","arguments","length","undefined","childKeys","value","push","childKey","updateNodes","parentKey","item","itemKey","children","childrenKey","exist","existNode","vnode","indeterminate","node","map","child","add","issueVnodeState","updateExpanded","to","delete","updateActive","inactiveKey","keys","descendant","updateSelected","emitExpanded","arr","emitActive","emitSelected","stateWatcher","stateSet","updater","emitter","valuesOfKey","v","old","forEach","neo","oldKeys","Object","nodeKey","neoKeys","diff","k","oldSelected","clear","deep","register","renderLeaves","classes","styles","color","activeColor","_createVNode","_Fragment","leaf","level","_createTextVNode"],"sources":["../../../src/components/tree-view/YTreeView.tsx"],"sourcesContent":["import {\n PropType,\n Ref,\n VNode,\n computed,\n defineComponent,\n provide,\n ref,\n watch,\n} from 'vue';\n\nimport { useModelDuplex } from '../../composables/communication';\nimport { useRender } from '../../composables/component';\nimport { differenceBetween } from '../../util/array';\nimport {\n deepEqual,\n getObjectValueByPath,\n hasOwnProperty,\n} from '../../util/common';\nimport { isColorValue } from '../../util/ui';\nimport { chooseProps } from '../../util/vue-component';\nimport { YTreeViewNode, pressYTreeViewNodeProps } from './YTreeViewNode';\nimport { getKeys } from './util';\n\nimport './YTreeView.scss';\nimport { NodeKey, NodeState } from './types';\n\nconst treeViewNodeProps = pressYTreeViewNodeProps();\n\nexport const YTreeView = defineComponent({\n name: 'YTreeView',\n props: {\n items: {\n type: Array as PropType<any[]>,\n default: () => [],\n },\n expanded: {\n type: [Array] as PropType<NodeKey[]>,\n default: () => [],\n },\n active: {\n type: [Array] as PropType<NodeKey[]>,\n default: () => [],\n },\n multipleActive: Boolean,\n activeStrategy: {\n type: String as PropType<'independent' | 'cascade'>, // TODO: 'leaf'\n default: 'independent',\n },\n selected: {\n type: [Array] as PropType<NodeKey[]>,\n default: () => [],\n },\n selectStrategy: {\n type: String as PropType<'independent' | 'cascade'>, // TODO: 'leaf'\n default: 'leaf',\n },\n returnItem: Boolean,\n ...treeViewNodeProps,\n },\n emits: ['update:expanded', 'update:active', 'update:selected'],\n setup(props, { slots, emit }) {\n const nodes = ref<Record<NodeKey, any>>({});\n\n const expanded = useModelDuplex(props, 'expanded');\n const active = useModelDuplex(props, 'active');\n const selected = useModelDuplex(props, 'selected');\n\n const expandedSet = ref(new Set<NodeKey>());\n const selectedSet = ref(new Set<NodeKey>());\n const activeSet = ref(new Set<NodeKey>());\n\n const expandedCache = ref<NodeKey[]>([]);\n\n // Util Methods\n function getDescendants(key: NodeKey, descendants: NodeKey[] = []) {\n const { childKeys } = nodes.value[key];\n descendants.push(...childKeys);\n for (const childKey of childKeys) {\n descendants = getDescendants(childKey, descendants);\n }\n return descendants;\n }\n\n // State Methods\n function updateNodes(items: any[], parentKey: NodeKey | null = null) {\n for (const item of items) {\n const key = getObjectValueByPath(item, props.itemKey);\n const children = getObjectValueByPath(item, props.childrenKey) ?? [];\n const exist = hasOwnProperty(nodes.value, key);\n const existNode = exist\n ? nodes.value[key]\n : {\n vnode: null,\n selected: false,\n indeterminate: false,\n active: false,\n expanded: false,\n };\n const node: NodeState = {\n vnode: existNode.vnode,\n item,\n parentKey,\n childKeys: children.map((child: any) =>\n getObjectValueByPath(child, props.itemKey),\n ),\n expanded: children.length > 0 && existNode.expanded,\n active: existNode.active,\n indeterminate: existNode.indeterminate,\n selected: existNode.selected,\n };\n\n updateNodes(children, key);\n\n nodes.value[key] = node;\n if (nodes.value[key].expanded) {\n expandedSet.value.add(key);\n }\n if (nodes.value[key].selected) {\n expandedSet.value.add(key);\n }\n if (nodes.value[key].active) {\n activeSet.value.add(key);\n }\n\n issueVnodeState(key);\n }\n }\n\n function updateExpanded(key: NodeKey, to: boolean) {\n if (!(key in nodes.value)) return;\n const node = nodes.value[key];\n if (to) {\n expandedSet.value.add(key);\n node.expanded = true;\n } else {\n expandedSet.value.delete(key);\n node.expanded = false;\n issueVnodeState(key);\n }\n }\n\n function updateActive(key: NodeKey, to: boolean) {\n if (!(key in nodes.value)) return;\n const node = nodes.value[key];\n let inactiveKey = !to ? key : '';\n if (!props.multipleActive) {\n [inactiveKey] = activeSet.value.keys();\n }\n if (to) {\n activeSet.value.add(key);\n node.active = true;\n }\n if (inactiveKey && inactiveKey in nodes.value) {\n activeSet.value.delete(inactiveKey);\n nodes.value[inactiveKey].active = false;\n issueVnodeState(inactiveKey);\n }\n\n if (props.multipleActive && props.activeStrategy === 'cascade') {\n for (const descendant of getDescendants(key)) {\n if (descendant in nodes.value) {\n to\n ? activeSet.value.add(descendant)\n : activeSet.value.delete(descendant);\n nodes.value[descendant].active = to;\n issueVnodeState(descendant);\n }\n }\n }\n }\n\n function updateSelected(key: NodeKey, to: boolean) {\n if (!(key in nodes.value)) return;\n const node = nodes.value[key];\n\n if (to) {\n selectedSet.value.add(key);\n node.selected = true;\n }\n\n if (!to && key in nodes.value) {\n selectedSet.value.delete(key);\n nodes.value[key].selected = false;\n issueVnodeState(key);\n }\n\n if (props.selectStrategy === 'cascade') {\n for (const descendant of getDescendants(key)) {\n if (descendant in nodes.value) {\n to\n ? selectedSet.value.add(descendant)\n : selectedSet.value.delete(descendant);\n nodes.value[descendant].selected = to;\n issueVnodeState(descendant);\n }\n }\n }\n }\n\n function emitExpanded() {\n const arr = [...expandedSet.value];\n expanded.value = props.returnItem\n ? arr.map((key) => nodes.value[key].item)\n : arr;\n }\n\n function emitActive() {\n const arr = [...activeSet.value];\n active.value = props.returnItem\n ? arr.map((key) => nodes.value[key].item)\n : arr;\n }\n\n function emitSelected() {\n const arr = [...selectedSet.value];\n selected.value = props.returnItem\n ? arr.map((key) => nodes.value[key].item)\n : arr;\n }\n\n function stateWatcher(\n value: any[],\n stateSet: Ref<Set<NodeKey>>,\n updater: (key: NodeKey, to: boolean) => void,\n emitter: () => void,\n ) {\n const valuesOfKey = props.returnItem\n ? value.map((v) => getObjectValueByPath(v, props.itemKey))\n : value;\n const old = [...stateSet.value];\n if (deepEqual(old, valuesOfKey)) {\n return;\n }\n old.forEach((key) => updater(key, false));\n valuesOfKey.forEach((key) => updater(key, true));\n emitter();\n }\n\n watch(expanded, (neo) => {\n stateWatcher(neo, expandedSet, updateExpanded, emitExpanded);\n });\n\n watch(active, (neo) => {\n stateWatcher(neo, activeSet, updateActive, emitActive);\n });\n\n watch(selected, (neo) => {\n stateWatcher(neo, selectedSet, updateSelected, emitSelected);\n });\n\n watch(\n () => props.items,\n (neo: any[]) => {\n const oldKeys = Object.keys(nodes.value).map((nodeKey) =>\n getObjectValueByPath(nodes.value[nodeKey].item, props.itemKey),\n );\n const neoKeys = getKeys(neo, props.itemKey, props.childrenKey);\n const diff = differenceBetween(oldKeys, neoKeys);\n if (diff.length < 1 && neoKeys.length < oldKeys.length) {\n return;\n }\n diff.forEach((k) => delete nodes.value[k]);\n\n // init\n const oldSelected = [...selectedSet.value];\n selectedSet.value.clear();\n expandedSet.value.clear();\n activeSet.value.clear();\n updateNodes(neo);\n if (!deepEqual(oldSelected, [...selectedSet.value])) {\n emitSelected();\n }\n },\n { deep: true },\n );\n\n // Provide & Issue\n function issueVnodeState(key: NodeKey) {\n const node = nodes.value[key];\n if (node && node.vnode) {\n node.vnode.active = node.active;\n node.vnode.selected = node.selected;\n node.vnode.indeterminate = node.indeterminate;\n node.vnode.expanded = node.expanded;\n }\n }\n\n function register(key: NodeKey, vnode: VNode) {\n if (nodes.value[key]) {\n nodes.value[key].vnode = vnode;\n }\n\n issueVnodeState(key);\n }\n\n updateNodes(props.items);\n\n provide('tree-view', {\n register,\n updateExpanded,\n updateActive,\n updateSelected,\n emitExpanded,\n emitActive,\n emitSelected,\n });\n\n const renderLeaves = computed(() => {\n return props.items;\n });\n\n const classes = computed(() => {\n return {\n 'y-tree-view': true,\n };\n });\n\n const styles = computed(() => {\n let color = props.activeColor;\n if (props.activeColor && !isColorValue(props.activeColor)) {\n color = `rgba(var(--y-theme--${props.activeColor}), 1)`;\n }\n return {\n [`--y-tree-view__active-color`]: color,\n };\n });\n\n useRender(() => {\n return (\n <>\n <div class={classes.value} style={styles.value} role=\"tree\">\n {renderLeaves.value.length > 0 ? (\n renderLeaves.value.map((leaf) => {\n return (\n <YTreeViewNode\n v-slots={slots}\n {...{\n ...chooseProps(props, treeViewNodeProps),\n item: leaf,\n level: 0,\n }}\n ></YTreeViewNode>\n );\n })\n ) : (\n <div class=\"y-tree-view__no-data\">\n {slots['no-data'] ? slots['no-data']() : <span>No Data</span>}\n </div>\n )}\n </div>\n </>\n );\n });\n\n return {\n nodes,\n expandedSet,\n selectedSet,\n activeSet,\n };\n },\n});\n\nexport type YTreeView = InstanceType<typeof YTreeView>;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"YTreeView.mjs","names":["computed","defineComponent","onMounted","provide","ref","watch","useModelDuplex","useRender","differenceBetween","deepEqual","getObjectValueByPath","hasOwnProperty","isColorValue","chooseProps","YTreeViewNode","pressYTreeViewNodeProps","getKeys","treeViewNodeProps","YTreeView","name","props","items","type","Array","default","expanded","active","multipleActive","Boolean","activeStrategy","String","selected","selectStrategy","returnItem","defaultExpand","Number","emits","setup","_ref","slots","emit","expose","nodes","expandedSet","Set","selectedSet","activeSet","expandedCache","getDescendants","key","descendants","arguments","length","undefined","childKeys","value","push","childKey","getNodeKey","itemOrKey","itemKey","updateNodes","parentKey","level","item","children","childrenKey","exist","existNode","vnode","indeterminate","node","map","child","add","issueVnodeState","updateExpanded","to","isArray","delete","expand","until","Object","entries","forEach","_ref2","emitExpanded","updateActive","inactiveKey","keys","descendant","updateSelected","arr","emitActive","emitSelected","stateWatcher","stateSet","updater","emitter","valuesOfKey","v","old","neo","oldKeys","nodeKey","neoKeys","diff","k","oldSelected","clear","deep","register","renderLeaves","classes","styles","color","activeColor","_createVNode","_Fragment","leaf","_createTextVNode"],"sources":["../../../src/components/tree-view/YTreeView.tsx"],"sourcesContent":["import {\n PropType,\n Ref,\n VNode,\n computed,\n defineComponent,\n onMounted,\n provide,\n ref,\n watch,\n} from 'vue';\n\nimport { useModelDuplex } from '../../composables/communication';\nimport { useRender } from '../../composables/component';\nimport { differenceBetween } from '../../util/array';\nimport {\n deepEqual,\n getObjectValueByPath,\n hasOwnProperty,\n} from '../../util/common';\nimport { isColorValue } from '../../util/ui';\nimport { chooseProps } from '../../util/vue-component';\nimport { YTreeViewNode, pressYTreeViewNodeProps } from './YTreeViewNode';\nimport { getKeys } from './util';\n\nimport './YTreeView.scss';\nimport { NodeKey, NodeState } from './types';\n\nconst treeViewNodeProps = pressYTreeViewNodeProps();\n\nexport const YTreeView = defineComponent({\n name: 'YTreeView',\n props: {\n items: {\n type: Array as PropType<any[]>,\n default: () => [],\n },\n expanded: {\n type: [Array] as PropType<NodeKey[]>,\n default: () => [],\n },\n active: {\n type: [Array] as PropType<NodeKey[]>,\n default: () => [],\n },\n multipleActive: Boolean,\n activeStrategy: {\n type: String as PropType<'independent' | 'cascade'>, // TODO: 'leaf'\n default: 'independent',\n },\n selected: {\n type: [Array] as PropType<NodeKey[]>,\n default: () => [],\n },\n selectStrategy: {\n type: String as PropType<'independent' | 'cascade'>, // TODO: 'leaf'\n default: 'leaf',\n },\n returnItem: Boolean,\n defaultExpand: [Boolean, String, Number],\n ...treeViewNodeProps,\n },\n emits: ['update:expanded', 'update:active', 'update:selected'],\n setup(props, { slots, emit, expose }) {\n const nodes = ref<Record<NodeKey, any>>({});\n\n const expanded = useModelDuplex(props, 'expanded');\n const active = useModelDuplex(props, 'active');\n const selected = useModelDuplex(props, 'selected');\n\n const expandedSet = ref(new Set<NodeKey>());\n const selectedSet = ref(new Set<NodeKey>());\n const activeSet = ref(new Set<NodeKey>());\n\n const expandedCache = ref<NodeKey[]>([]);\n\n // Util Methods\n function getDescendants(key: NodeKey, descendants: NodeKey[] = []) {\n const { childKeys } = nodes.value[key];\n descendants.push(...childKeys);\n for (const childKey of childKeys) {\n descendants = getDescendants(childKey, descendants);\n }\n return descendants;\n }\n\n function getNodeKey(itemOrKey: any) {\n return props.returnItem\n ? getObjectValueByPath(itemOrKey, props.itemKey)\n : itemOrKey;\n }\n\n // State Methods\n function updateNodes(\n items: any[],\n parentKey: NodeKey | null = null,\n level = 0,\n ) {\n for (const item of items) {\n const key = getObjectValueByPath(item, props.itemKey);\n const children = getObjectValueByPath(item, props.childrenKey) ?? [];\n const exist = hasOwnProperty(nodes.value, key);\n const existNode = exist\n ? nodes.value[key]\n : {\n vnode: null,\n selected: false,\n indeterminate: false,\n active: false,\n expanded: false,\n };\n const node: NodeState = {\n vnode: existNode.vnode,\n item,\n level,\n parentKey,\n childKeys: children.map((child: any) =>\n getObjectValueByPath(child, props.itemKey),\n ),\n expanded: children.length > 0 && existNode.expanded,\n active: existNode.active,\n indeterminate: existNode.indeterminate,\n selected: existNode.selected,\n };\n\n updateNodes(children, key, level + 1);\n\n nodes.value[key] = node;\n if (nodes.value[key].expanded) {\n expandedSet.value.add(key);\n }\n if (nodes.value[key].selected) {\n expandedSet.value.add(key);\n }\n if (nodes.value[key].active) {\n activeSet.value.add(key);\n }\n\n issueVnodeState(key);\n }\n }\n\n function updateExpanded(key: NodeKey, to: boolean) {\n if (!(key in nodes.value)) return;\n const node = nodes.value[key];\n const children = getObjectValueByPath(node.item, props.childrenKey);\n if (Array.isArray(children) && children.length > 0) {\n to ? expandedSet.value.add(key) : expandedSet.value.delete(key)\n node.expanded = to;\n issueVnodeState(key);\n }\n }\n\n function expand(until: boolean | string | number = true) {\n Object.entries(nodes.value).forEach(([key, node]) => {\n if (until === true || until >= node.level) {\n updateExpanded(key, true);\n }\n });\n emitExpanded();\n }\n\n function updateActive(key: NodeKey, to: boolean) {\n if (!(key in nodes.value)) return;\n const node = nodes.value[key];\n let inactiveKey = !to ? key : '';\n if (!props.multipleActive) {\n [inactiveKey] = activeSet.value.keys();\n }\n if (to) {\n activeSet.value.add(key);\n node.active = true;\n }\n if (inactiveKey && inactiveKey in nodes.value) {\n activeSet.value.delete(inactiveKey);\n nodes.value[inactiveKey].active = false;\n issueVnodeState(inactiveKey);\n }\n\n if (props.multipleActive && props.activeStrategy === 'cascade') {\n for (const descendant of getDescendants(key)) {\n if (descendant in nodes.value) {\n to\n ? activeSet.value.add(descendant)\n : activeSet.value.delete(descendant);\n nodes.value[descendant].active = to;\n issueVnodeState(descendant);\n }\n }\n }\n }\n\n function updateSelected(key: NodeKey, to: boolean) {\n if (!(key in nodes.value)) return;\n const node = nodes.value[key];\n\n if (to) {\n selectedSet.value.add(key);\n node.selected = true;\n }\n\n if (!to && key in nodes.value) {\n selectedSet.value.delete(key);\n nodes.value[key].selected = false;\n issueVnodeState(key);\n }\n\n if (props.selectStrategy === 'cascade') {\n for (const descendant of getDescendants(key)) {\n if (descendant in nodes.value) {\n to\n ? selectedSet.value.add(descendant)\n : selectedSet.value.delete(descendant);\n nodes.value[descendant].selected = to;\n issueVnodeState(descendant);\n }\n }\n }\n }\n\n function emitExpanded() {\n const arr = [...expandedSet.value];\n expanded.value = props.returnItem\n ? arr.map((key) => nodes.value[key].item)\n : arr;\n }\n\n function emitActive() {\n const arr = [...activeSet.value];\n active.value = props.returnItem\n ? arr.map((key) => nodes.value[key].item)\n : arr;\n }\n\n function emitSelected() {\n const arr = [...selectedSet.value];\n selected.value = props.returnItem\n ? arr.map((key) => nodes.value[key].item)\n : arr;\n }\n\n function stateWatcher(\n value: any[],\n stateSet: Ref<Set<NodeKey>>,\n updater: (key: NodeKey, to: boolean) => void,\n emitter: () => void,\n ) {\n const valuesOfKey = props.returnItem\n ? value.map((v) => getObjectValueByPath(v, props.itemKey))\n : value;\n const old = [...stateSet.value];\n if (deepEqual(old, valuesOfKey)) {\n return;\n }\n old.forEach((key) => updater(key, false));\n valuesOfKey.forEach((key) => updater(key, true));\n emitter();\n }\n\n watch(expanded, (neo) => {\n stateWatcher(neo, expandedSet, updateExpanded, emitExpanded);\n });\n\n watch(active, (neo) => {\n stateWatcher(neo, activeSet, updateActive, emitActive);\n });\n\n watch(selected, (neo) => {\n stateWatcher(neo, selectedSet, updateSelected, emitSelected);\n });\n\n watch(\n () => props.items,\n (neo: any[]) => {\n const oldKeys = Object.keys(nodes.value).map((nodeKey) =>\n getObjectValueByPath(nodes.value[nodeKey].item, props.itemKey),\n );\n const neoKeys = getKeys(neo, props.itemKey, props.childrenKey);\n const diff = differenceBetween(oldKeys, neoKeys);\n if (diff.length < 1 && neoKeys.length < oldKeys.length) {\n return;\n }\n diff.forEach((k) => delete nodes.value[k]);\n\n // init\n const oldSelected = [...selectedSet.value];\n selectedSet.value.clear();\n expandedSet.value.clear();\n activeSet.value.clear();\n updateNodes(neo);\n if (!deepEqual(oldSelected, [...selectedSet.value])) {\n emitSelected();\n }\n },\n { deep: true },\n );\n\n // Provide & Issue\n function issueVnodeState(key: NodeKey) {\n const node = nodes.value[key];\n if (node && node.vnode) {\n node.vnode.active = node.active;\n node.vnode.selected = node.selected;\n node.vnode.indeterminate = node.indeterminate;\n node.vnode.expanded = node.expanded;\n }\n }\n\n function register(key: NodeKey, vnode: VNode) {\n if (nodes.value[key]) {\n nodes.value[key].vnode = vnode;\n }\n\n issueVnodeState(key);\n }\n\n updateNodes(props.items);\n\n provide('tree-view', {\n register,\n updateExpanded,\n updateActive,\n updateSelected,\n emitExpanded,\n emitActive,\n emitSelected,\n });\n\n const renderLeaves = computed(() => {\n return props.items;\n });\n\n const classes = computed(() => {\n return {\n 'y-tree-view': true,\n };\n });\n\n const styles = computed(() => {\n let color = props.activeColor;\n if (props.activeColor && !isColorValue(props.activeColor)) {\n color = `rgba(var(--y-theme--${props.activeColor}), 1)`;\n }\n return {\n [`--y-tree-view__active-color`]: color,\n };\n });\n\n onMounted(() => {\n if (props.defaultExpand !== undefined) {\n expand(props.defaultExpand);\n } else {\n expanded.value.forEach((v: any) => updateExpanded(getNodeKey(v), true));\n emitExpanded();\n }\n });\n\n expose({\n expand,\n });\n\n useRender(() => {\n return (\n <>\n <div class={classes.value} style={styles.value} role=\"tree\">\n {renderLeaves.value.length > 0 ? (\n renderLeaves.value.map((leaf) => {\n return (\n <YTreeViewNode\n v-slots={slots}\n {...{\n ...chooseProps(props, treeViewNodeProps),\n item: leaf,\n level: 0,\n }}\n ></YTreeViewNode>\n );\n })\n ) : (\n <div class=\"y-tree-view__no-data\">\n {slots['no-data'] ? slots['no-data']() : <span>No Data</span>}\n </div>\n )}\n </div>\n </>\n );\n });\n\n return {\n nodes,\n expandedSet,\n selectedSet,\n activeSet,\n };\n },\n});\n\nexport type YTreeView = InstanceType<typeof YTreeView>;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.mjs","names":[],"sources":["../../../src/components/tree-view/types.ts"],"sourcesContent":["import { ComponentPublicInstance } from
|
|
1
|
+
{"version":3,"file":"types.mjs","names":[],"sources":["../../../src/components/tree-view/types.ts"],"sourcesContent":["import { ComponentPublicInstance } from 'vue';\n\nexport type NodeKey = string | number;\n\nexport interface NodeState {\n childKeys: NodeKey[];\n item: any;\n parentKey: null | NodeKey;\n vnode: null | ComponentPublicInstance;\n level: number;\n //\n selected: false;\n indeterminate: false;\n active: false;\n expanded: false;\n}\n"],"mappings":""}
|
package/package.json
CHANGED
|
@@ -10,19 +10,11 @@ export declare const YIconPageControl: import("vue").DefineComponent<{
|
|
|
10
10
|
type: PropType<"first" | "last" | "next" | "prev">;
|
|
11
11
|
default: string;
|
|
12
12
|
};
|
|
13
|
-
next: StringConstructor;
|
|
14
|
-
prev: StringConstructor;
|
|
15
|
-
last: StringConstructor;
|
|
16
|
-
first: StringConstructor;
|
|
17
13
|
}, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
18
14
|
type: {
|
|
19
15
|
type: PropType<"first" | "last" | "next" | "prev">;
|
|
20
16
|
default: string;
|
|
21
17
|
};
|
|
22
|
-
next: StringConstructor;
|
|
23
|
-
prev: StringConstructor;
|
|
24
|
-
last: StringConstructor;
|
|
25
|
-
first: StringConstructor;
|
|
26
18
|
}>>, {
|
|
27
19
|
type: "first" | "last" | "next" | "prev";
|
|
28
20
|
}, {}>;
|
|
@@ -9,10 +9,6 @@ export declare const pressYPaginationProps: <Defaults extends {
|
|
|
9
9
|
gap?: unknown;
|
|
10
10
|
color?: unknown;
|
|
11
11
|
activeColor?: unknown;
|
|
12
|
-
firstIcon?: unknown;
|
|
13
|
-
lastIcon?: unknown;
|
|
14
|
-
prevIcon?: unknown;
|
|
15
|
-
nextIcon?: unknown;
|
|
16
12
|
} = {}>(defaults?: Defaults | undefined) => {
|
|
17
13
|
start: unknown extends Defaults["start"] ? {
|
|
18
14
|
type: (StringConstructor | NumberConstructor)[];
|
|
@@ -76,22 +72,6 @@ export declare const pressYPaginationProps: <Defaults extends {
|
|
|
76
72
|
type: import("vue").PropType<unknown extends Defaults ? "activeColor" : "activeColor" | Defaults>;
|
|
77
73
|
default: unknown extends Defaults["activeColor"] ? string : string | Defaults["activeColor"];
|
|
78
74
|
};
|
|
79
|
-
firstIcon: unknown extends Defaults["firstIcon"] ? StringConstructor : {
|
|
80
|
-
type: import("vue").PropType<unknown extends Defaults ? "firstIcon" : "firstIcon" | Defaults>;
|
|
81
|
-
default: unknown extends Defaults["firstIcon"] ? string : string | Defaults["firstIcon"];
|
|
82
|
-
};
|
|
83
|
-
lastIcon: unknown extends Defaults["lastIcon"] ? StringConstructor : {
|
|
84
|
-
type: import("vue").PropType<unknown extends Defaults ? "lastIcon" : "lastIcon" | Defaults>;
|
|
85
|
-
default: unknown extends Defaults["lastIcon"] ? string : string | Defaults["lastIcon"];
|
|
86
|
-
};
|
|
87
|
-
prevIcon: unknown extends Defaults["prevIcon"] ? StringConstructor : {
|
|
88
|
-
type: import("vue").PropType<unknown extends Defaults ? "prevIcon" : "prevIcon" | Defaults>;
|
|
89
|
-
default: unknown extends Defaults["prevIcon"] ? string : string | Defaults["prevIcon"];
|
|
90
|
-
};
|
|
91
|
-
nextIcon: unknown extends Defaults["nextIcon"] ? StringConstructor : {
|
|
92
|
-
type: import("vue").PropType<unknown extends Defaults ? "nextIcon" : "nextIcon" | Defaults>;
|
|
93
|
-
default: unknown extends Defaults["nextIcon"] ? string : string | Defaults["nextIcon"];
|
|
94
|
-
};
|
|
95
75
|
};
|
|
96
76
|
export declare const YPagination: import("vue").DefineComponent<{
|
|
97
77
|
start: {
|
|
@@ -116,10 +96,6 @@ export declare const YPagination: import("vue").DefineComponent<{
|
|
|
116
96
|
};
|
|
117
97
|
color: StringConstructor;
|
|
118
98
|
activeColor: StringConstructor;
|
|
119
|
-
firstIcon: StringConstructor;
|
|
120
|
-
lastIcon: StringConstructor;
|
|
121
|
-
prevIcon: StringConstructor;
|
|
122
|
-
nextIcon: StringConstructor;
|
|
123
99
|
}, {
|
|
124
100
|
itemCount: import("vue").ShallowRef<number>;
|
|
125
101
|
page: import("vue").WritableComputedRef<any>;
|
|
@@ -150,10 +126,6 @@ export declare const YPagination: import("vue").DefineComponent<{
|
|
|
150
126
|
};
|
|
151
127
|
color: StringConstructor;
|
|
152
128
|
activeColor: StringConstructor;
|
|
153
|
-
firstIcon: StringConstructor;
|
|
154
|
-
lastIcon: StringConstructor;
|
|
155
|
-
prevIcon: StringConstructor;
|
|
156
|
-
nextIcon: StringConstructor;
|
|
157
129
|
}>> & {
|
|
158
130
|
"onUpdate:modelValue"?: ((value: number) => any) | undefined;
|
|
159
131
|
onChange?: ((value: number, control?: string | undefined) => any) | undefined;
|
|
@@ -1,4 +1,16 @@
|
|
|
1
|
-
import { PropType } from 'vue';
|
|
1
|
+
import { InjectionKey, PropType, Ref } from 'vue';
|
|
2
|
+
export declare const Y_DATA_TABLE_PAGINATION_KEY: InjectionKey<{
|
|
3
|
+
page: Ref<number>;
|
|
4
|
+
pageSize: Ref<number>;
|
|
5
|
+
startIndex: Ref<number>;
|
|
6
|
+
endIndex: Ref<number>;
|
|
7
|
+
pageLength: Ref<number>;
|
|
8
|
+
total: Ref<number>;
|
|
9
|
+
prevPage: () => void;
|
|
10
|
+
nextPage: () => void;
|
|
11
|
+
setPage: (page: number) => void;
|
|
12
|
+
setPageSize: (size: number) => void;
|
|
13
|
+
}>;
|
|
2
14
|
export declare const pressDataTablePaginationProps: <Defaults extends {
|
|
3
15
|
page?: unknown;
|
|
4
16
|
pageSize?: unknown;
|
|
@@ -35,4 +47,32 @@ export declare function createPagination(props: PaginationProps): {
|
|
|
35
47
|
page: import("vue").WritableComputedRef<any>;
|
|
36
48
|
pageSize: import("vue").WritableComputedRef<any>;
|
|
37
49
|
};
|
|
50
|
+
export declare function providePagination(options: {
|
|
51
|
+
page: Ref<number>;
|
|
52
|
+
pageSize: Ref<number>;
|
|
53
|
+
total: Ref<number>;
|
|
54
|
+
}): {
|
|
55
|
+
page: Ref<number>;
|
|
56
|
+
pageSize: Ref<number>;
|
|
57
|
+
startIndex: import("vue").ComputedRef<number>;
|
|
58
|
+
endIndex: import("vue").ComputedRef<number>;
|
|
59
|
+
pageLength: import("vue").ComputedRef<number>;
|
|
60
|
+
total: Ref<number>;
|
|
61
|
+
nextPage: () => void;
|
|
62
|
+
prevPage: () => void;
|
|
63
|
+
setPage: (value: number) => void;
|
|
64
|
+
setPageSize: (value: number) => void;
|
|
65
|
+
};
|
|
66
|
+
export declare function usePagination(): {
|
|
67
|
+
page: Ref<number>;
|
|
68
|
+
pageSize: Ref<number>;
|
|
69
|
+
startIndex: Ref<number>;
|
|
70
|
+
endIndex: Ref<number>;
|
|
71
|
+
pageLength: Ref<number>;
|
|
72
|
+
total: Ref<number>;
|
|
73
|
+
prevPage: () => void;
|
|
74
|
+
nextPage: () => void;
|
|
75
|
+
setPage: (page: number) => void;
|
|
76
|
+
setPageSize: (size: number) => void;
|
|
77
|
+
};
|
|
38
78
|
export {};
|
|
@@ -47,6 +47,7 @@ export declare const YTreeView: import("vue").DefineComponent<{
|
|
|
47
47
|
default: string;
|
|
48
48
|
};
|
|
49
49
|
returnItem: BooleanConstructor;
|
|
50
|
+
defaultExpand: (BooleanConstructor | StringConstructor | NumberConstructor)[];
|
|
50
51
|
}, {
|
|
51
52
|
nodes: Ref<Record<NodeKey, any>>;
|
|
52
53
|
expandedSet: Ref<Set<NodeKey>>;
|
|
@@ -99,6 +100,7 @@ export declare const YTreeView: import("vue").DefineComponent<{
|
|
|
99
100
|
default: string;
|
|
100
101
|
};
|
|
101
102
|
returnItem: BooleanConstructor;
|
|
103
|
+
defaultExpand: (BooleanConstructor | StringConstructor | NumberConstructor)[];
|
|
102
104
|
}>> & {
|
|
103
105
|
"onUpdate:expanded"?: ((...args: any[]) => any) | undefined;
|
|
104
106
|
"onUpdate:active"?: ((...args: any[]) => any) | undefined;
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { ComponentPublicInstance } from
|
|
1
|
+
import { ComponentPublicInstance } from 'vue';
|
|
2
2
|
export type NodeKey = string | number;
|
|
3
3
|
export interface NodeState {
|
|
4
4
|
childKeys: NodeKey[];
|
|
5
5
|
item: any;
|
|
6
6
|
parentKey: null | NodeKey;
|
|
7
7
|
vnode: null | ComponentPublicInstance;
|
|
8
|
+
level: number;
|
|
8
9
|
selected: false;
|
|
9
10
|
indeterminate: false;
|
|
10
11
|
active: false;
|