@robot-admin/naive-ui-components 0.17.5 → 0.18.0
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/CHANGELOG.md +16 -0
- package/dist/C_AntV.css +10 -10
- package/dist/C_AntV.d.cts +2 -2
- package/dist/C_AntV.d.ts +2 -2
- package/dist/C_AntV2.cjs +1 -1
- package/dist/C_AntV2.js +1 -1
- package/dist/C_Date.cjs +1 -1
- package/dist/C_Date.css +5 -5
- package/dist/C_Date.d.cts +18 -2
- package/dist/C_Date.d.ts +18 -2
- package/dist/C_Date.js +1 -1
- package/dist/C_Date2.cjs +1 -1
- package/dist/C_Date2.js +1 -1
- package/dist/C_Draggable.css +53 -53
- package/dist/C_Draggable.d.cts +2 -2
- package/dist/C_Draggable.d.ts +2 -2
- package/dist/C_Draggable2.cjs +1 -1
- package/dist/C_Draggable2.js +1 -1
- package/dist/C_Editor.d.cts +1 -1
- package/dist/C_Editor.d.ts +1 -1
- package/dist/C_FormModal.d.cts +1 -1
- package/dist/C_FormModal.d.ts +1 -1
- package/dist/C_FormSearch.cjs +1 -1
- package/dist/C_FormSearch.css +52 -52
- package/dist/C_FormSearch.d.cts +18 -2
- package/dist/C_FormSearch.d.ts +18 -2
- package/dist/C_FormSearch.js +1 -1
- package/dist/C_FormSearch2.cjs +1 -1
- package/dist/C_FormSearch2.js +1 -1
- package/dist/C_Guide.d.cts +1 -1
- package/dist/C_Guide.d.ts +1 -1
- package/dist/C_Icon.d.cts +1 -1
- package/dist/C_Icon.d.ts +1 -1
- package/dist/C_Language.d.cts +1 -1
- package/dist/C_Language.d.ts +1 -1
- package/dist/C_Loading.d.cts +1 -1
- package/dist/C_Loading.d.ts +1 -1
- package/dist/C_Login.d.cts +1 -1
- package/dist/C_Login.d.ts +1 -1
- package/dist/C_Markdown.d.cts +1 -1
- package/dist/C_Markdown.d.ts +1 -1
- package/dist/C_Menu.d.ts +1 -1
- package/dist/C_OrgChart.d.cts +1 -1
- package/dist/C_OrgChart.d.ts +1 -1
- package/dist/C_Progress.d.cts +1 -1
- package/dist/C_Progress.d.ts +1 -1
- package/dist/C_Skeleton.d.cts +1 -1
- package/dist/C_Skeleton.d.ts +1 -1
- package/dist/C_Steps.d.cts +1 -1
- package/dist/C_Steps.d.ts +1 -1
- package/dist/C_Table.base.css +144 -155
- package/dist/C_Table.css +144 -155
- package/dist/C_Table.d.cts +2 -2
- package/dist/C_Table.d.ts +6 -6
- package/dist/C_TagsView.d.cts +1 -1
- package/dist/C_TagsView.d.ts +1 -1
- package/dist/C_Theme.d.cts +1 -1
- package/dist/C_Theme.d.ts +1 -1
- package/dist/C_Time.cjs +1 -1
- package/dist/C_Time.css +4 -4
- package/dist/C_Time.d.cts +18 -2
- package/dist/C_Time.d.ts +18 -2
- package/dist/C_Time.js +1 -1
- package/dist/C_Time2.cjs +1 -1
- package/dist/C_Time2.js +1 -1
- package/dist/C_Timeline.d.cts +1 -1
- package/dist/C_Timeline.d.ts +1 -1
- package/dist/C_Transfer.css +26 -26
- package/dist/C_Transfer.d.cts +2 -2
- package/dist/C_Transfer.d.ts +2 -2
- package/dist/C_Transfer2.cjs +1 -1
- package/dist/C_Transfer2.js +1 -1
- package/dist/C_Tree.css +23 -23
- package/dist/C_Tree.d.ts +4 -4
- package/dist/C_Tree2.cjs +1 -1
- package/dist/C_Tree2.js +1 -1
- package/dist/C_VtableGantt.cjs +1 -1
- package/dist/C_VtableGantt.css +31 -31
- package/dist/C_VtableGantt.d.cts +18 -2
- package/dist/C_VtableGantt.d.ts +18 -2
- package/dist/C_VtableGantt.js +1 -1
- package/dist/C_WorkFlow.css +150 -150
- package/dist/C_WorkFlow.d.cts +2 -2
- package/dist/C_WorkFlow.d.ts +2 -2
- package/dist/C_WorkFlow2.cjs +1 -1
- package/dist/C_WorkFlow2.js +1 -1
- package/dist/constants3.d.cts +2 -2
- package/dist/constants3.d.ts +2 -2
- package/dist/constants4.d.cts +5 -5
- package/dist/constants4.d.ts +5 -5
- package/dist/constants5.d.cts +2 -2
- package/dist/constants5.d.ts +2 -2
- package/dist/data.d.cts +9 -9
- package/dist/data.d.ts +9 -9
- package/dist/dateRange.d.cts +197 -0
- package/dist/dateRange.d.ts +197 -0
- package/dist/graphics.cjs +1 -0
- package/dist/graphics.d.cts +837 -0
- package/dist/graphics.d.ts +837 -0
- package/dist/graphics.js +1 -0
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +47 -43
- package/dist/index.d.ts +47 -44
- package/dist/index.js +1 -1
- package/dist/index.vue.d.cts +4 -4
- package/dist/index.vue.d.ts +4 -4
- package/dist/index10.vue.d.cts +3 -3
- package/dist/index10.vue.d.ts +54 -69
- package/dist/index11.vue.d.cts +54 -69
- package/dist/index11.vue.d.ts +52 -58
- package/dist/index12.vue.d.cts +52 -58
- package/dist/index12.vue.d.ts +124 -50
- package/dist/index13.vue.d.cts +124 -50
- package/dist/index13.vue.d.ts +51 -123
- package/dist/index14.vue.d.cts +51 -123
- package/dist/index14.vue.d.ts +26 -52
- package/dist/index15.vue.d.cts +26 -52
- package/dist/index15.vue.d.ts +12 -26
- package/dist/index16.vue.d.cts +12 -26
- package/dist/index16.vue.d.ts +129 -13
- package/dist/index17.vue.d.cts +129 -13
- package/dist/index17.vue.d.ts +76 -129
- package/dist/index18.vue.d.cts +76 -129
- package/dist/index18.vue.d.ts +65 -75
- package/dist/index19.vue.d.cts +97 -75
- package/dist/index19.vue.d.ts +94 -62
- package/dist/index20.vue.d.cts +40 -91
- package/dist/index20.vue.d.ts +40 -91
- package/dist/index21.vue.d.cts +89 -40
- package/dist/index21.vue.d.ts +89 -40
- package/dist/index22.vue.d.cts +37 -95
- package/dist/index22.vue.d.ts +37 -95
- package/dist/index23.vue.d.cts +8 -34
- package/dist/index23.vue.d.ts +8 -34
- package/dist/index24.vue.d.cts +86 -9
- package/dist/index24.vue.d.ts +86 -9
- package/dist/index25.vue.d.cts +99 -654
- package/dist/index25.vue.d.ts +99 -654
- package/dist/index26.vue.d.cts +66 -87
- package/dist/index26.vue.d.ts +66 -87
- package/dist/index3.vue.d.cts +5 -5
- package/dist/index3.vue.d.ts +5 -5
- package/dist/index4.vue.d.cts +3 -3
- package/dist/index6.vue.d.ts +1 -1
- package/dist/index7.vue.d.cts +1 -1
- package/dist/index8.vue.d.ts +2 -2
- package/dist/index9.vue.d.cts +2 -2
- package/dist/index9.vue.d.ts +3 -3
- package/dist/mapUtils.d.cts +1 -1
- package/dist/mapUtils.d.ts +1 -1
- package/dist/presets.d.cts +1 -1
- package/dist/presets.d.ts +1 -1
- package/dist/style.css +499 -510
- package/dist/types.d.ts +51 -0
- package/dist/types2.d.cts +51 -0
- package/dist/useCalendarEvents.d.cts +3 -3
- package/dist/useCalendarEvents.d.ts +3 -3
- package/dist/useCollapsePanel.d.cts +7 -7
- package/dist/useCollapsePanel.d.ts +7 -7
- package/dist/useCropperCore.d.cts +7 -7
- package/dist/useCropperCore.d.ts +7 -7
- package/dist/useDraggableLayout.d.cts +94 -125
- package/dist/useDraggableLayout.d.ts +94 -125
- package/dist/useDynamicFormState.d.cts +24 -11
- package/dist/useDynamicFormState.d.ts +24 -11
- package/dist/useEdgeInteraction.d.cts +10 -5
- package/dist/useEdgeInteraction.d.ts +10 -5
- package/dist/useFullscreen.d.cts +3 -3
- package/dist/useFullscreen.d.ts +3 -3
- package/dist/useQRCode.d.cts +5 -5
- package/dist/useQRCode.d.ts +5 -5
- package/dist/useSignatureHistory.d.cts +5 -5
- package/dist/useSignatureHistory.d.ts +5 -5
- package/dist/useSplitResize.d.cts +6 -6
- package/dist/useSplitResize.d.ts +6 -6
- package/dist/useTableQuery.cjs +2 -2
- package/dist/useTableQuery.d.cts +475 -463
- package/dist/useTableQuery.d.ts +475 -463
- package/dist/useTableQuery.js +2 -2
- package/dist/useTimeSelection.d.cts +19 -52
- package/dist/useTimeSelection.d.ts +19 -52
- package/dist/useWorkflowValidation.d.cts +533 -154
- package/dist/useWorkflowValidation.d.ts +533 -154
- package/docs/guides/usage.en.md +15 -0
- package/docs/guides/usage.md +15 -0
- package/package.json +1 -1
- package/dist/C_VtableGantt2.cjs +0 -1
- package/dist/C_VtableGantt2.js +0 -1
- package/dist/index27.vue.d.cts +0 -111
- package/dist/index27.vue.d.ts +0 -111
- package/dist/index28.vue.d.cts +0 -84
- package/dist/index28.vue.d.ts +0 -84
- package/dist/useSearchState.d.cts +0 -163
- package/dist/useSearchState.d.ts +0 -163
package/dist/C_Tree.css
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
:root{--c-primary: var(--primary-color, #2080f0);--c-primary-hover: var(--primary-color-hover, #4098fc);--c-primary-pressed: var(--primary-color-pressed, #1060c9);--c-success: var(--success-color, #18a058);--c-warning: var(--warning-color, #f0a020);--c-error: var(--error-color, #d03050);--c-info: var(--info-color, #2080f0);--c-bg-body: var(--body-color, #ffffff);--c-bg-card: var(--card-color, #ffffff);--c-bg-surface: var(--popover-color, #ffffff);--c-text-1: var(--text-color-1, #262626);--c-text-2: var(--text-color-2, #525252);--c-text-3: var(--text-color-3, #a3a3a3);--c-text-4: var(--text-color-4, #c0c0c0);--c-border: var(--border-color, #e5e7eb);--c-radius-sm: var(--border-radius-small, 4px);--c-radius: var(--border-radius, 6px);--c-transition-fast: 0.15s cubic-bezier(0.4, 0, 0.2, 1);--c-transition-base: 0.3s cubic-bezier(0.4, 0, 0.2, 1);--c-shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.08);--c-shadow-md: 0 4px 6px rgba(0, 0, 0, 0.1);--c-shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.1)}
|
|
2
2
|
|
|
3
|
-
.c-tree[data-v-
|
|
3
|
+
.c-tree[data-v-7a932d60] {
|
|
4
4
|
--c-tree-padding: 12px;
|
|
5
5
|
--c-tree-gap: 10px;
|
|
6
6
|
display: flex;
|
|
@@ -10,15 +10,15 @@
|
|
|
10
10
|
height: 100%;
|
|
11
11
|
gap: var(--c-tree-gap);
|
|
12
12
|
}
|
|
13
|
-
.c-tree--compact[data-v-
|
|
13
|
+
.c-tree--compact[data-v-7a932d60] {
|
|
14
14
|
--c-tree-padding: 8px;
|
|
15
15
|
--c-tree-gap: 8px;
|
|
16
16
|
}
|
|
17
|
-
.c-tree--comfortable[data-v-
|
|
17
|
+
.c-tree--comfortable[data-v-7a932d60] {
|
|
18
18
|
--c-tree-padding: 16px;
|
|
19
19
|
--c-tree-gap: 14px;
|
|
20
20
|
}
|
|
21
|
-
.c-tree .c-tree-toolbar[data-v-
|
|
21
|
+
.c-tree .c-tree-toolbar[data-v-7a932d60] {
|
|
22
22
|
display: flex;
|
|
23
23
|
flex-wrap: wrap;
|
|
24
24
|
align-items: center;
|
|
@@ -28,21 +28,21 @@
|
|
|
28
28
|
border-radius: var(--c-tree-radius);
|
|
29
29
|
flex-shrink: 0;
|
|
30
30
|
}
|
|
31
|
-
.c-tree .toolbar-left[data-v-
|
|
31
|
+
.c-tree .toolbar-left[data-v-7a932d60] {
|
|
32
32
|
flex: 1 1 140px;
|
|
33
33
|
min-width: 0;
|
|
34
34
|
}
|
|
35
|
-
.c-tree .toolbar-left .search-input[data-v-
|
|
35
|
+
.c-tree .toolbar-left .search-input[data-v-7a932d60] {
|
|
36
36
|
width: 100%;
|
|
37
37
|
}
|
|
38
|
-
.c-tree .toolbar-right[data-v-
|
|
38
|
+
.c-tree .toolbar-right[data-v-7a932d60] {
|
|
39
39
|
display: flex;
|
|
40
40
|
flex-wrap: wrap;
|
|
41
41
|
align-items: center;
|
|
42
42
|
gap: 6px;
|
|
43
43
|
margin-left: auto;
|
|
44
44
|
}
|
|
45
|
-
.c-tree .c-tree-container[data-v-
|
|
45
|
+
.c-tree .c-tree-container[data-v-7a932d60] {
|
|
46
46
|
flex: 1 1 auto;
|
|
47
47
|
min-width: 0;
|
|
48
48
|
min-height: 0;
|
|
@@ -52,33 +52,33 @@
|
|
|
52
52
|
overflow: auto;
|
|
53
53
|
scrollbar-width: thin;
|
|
54
54
|
}
|
|
55
|
-
.c-tree--virtual .c-tree-container[data-v-
|
|
55
|
+
.c-tree--virtual .c-tree-container[data-v-7a932d60] {
|
|
56
56
|
overflow: hidden;
|
|
57
57
|
}
|
|
58
|
-
.c-tree--virtual .tree-instance[data-v-
|
|
58
|
+
.c-tree--virtual .tree-instance[data-v-7a932d60] {
|
|
59
59
|
height: 100%;
|
|
60
60
|
}
|
|
61
|
-
.c-tree[data-v-
|
|
62
|
-
.c-tree[data-v-
|
|
61
|
+
.c-tree[data-v-7a932d60] .n-tree-node-content,
|
|
62
|
+
.c-tree[data-v-7a932d60] .n-tree-node-content__text {
|
|
63
63
|
min-width: 0;
|
|
64
64
|
}
|
|
65
|
-
.c-tree[data-v-
|
|
65
|
+
.c-tree[data-v-7a932d60] .c-tree-node-label {
|
|
66
66
|
display: flex;
|
|
67
67
|
align-items: center;
|
|
68
68
|
min-width: 0;
|
|
69
69
|
width: 100%;
|
|
70
70
|
gap: 6px;
|
|
71
71
|
}
|
|
72
|
-
.c-tree[data-v-
|
|
72
|
+
.c-tree[data-v-7a932d60] .c-tree-node-title {
|
|
73
73
|
overflow: hidden;
|
|
74
74
|
white-space: nowrap;
|
|
75
75
|
text-overflow: ellipsis;
|
|
76
76
|
}
|
|
77
|
-
.c-tree[data-v-
|
|
78
|
-
.c-tree[data-v-
|
|
77
|
+
.c-tree[data-v-7a932d60] .c-tree-node-status,
|
|
78
|
+
.c-tree[data-v-7a932d60] .c-tree-node-icon {
|
|
79
79
|
flex-shrink: 0;
|
|
80
80
|
}
|
|
81
|
-
.c-tree[data-v-
|
|
81
|
+
.c-tree[data-v-7a932d60] .tree-actions {
|
|
82
82
|
display: inline-flex;
|
|
83
83
|
align-items: center;
|
|
84
84
|
gap: 2px;
|
|
@@ -86,21 +86,21 @@
|
|
|
86
86
|
opacity: 0;
|
|
87
87
|
transition: opacity 0.15s ease;
|
|
88
88
|
}
|
|
89
|
-
.c-tree[data-v-
|
|
90
|
-
.c-tree[data-v-
|
|
91
|
-
.c-tree[data-v-
|
|
89
|
+
.c-tree[data-v-7a932d60] .n-tree-node:hover .tree-actions,
|
|
90
|
+
.c-tree[data-v-7a932d60] .n-tree-node:focus-within .tree-actions,
|
|
91
|
+
.c-tree[data-v-7a932d60] .tree-actions:focus-within {
|
|
92
92
|
opacity: 1;
|
|
93
93
|
}
|
|
94
94
|
@media (hover: none), (max-width: 640px) {
|
|
95
|
-
.c-tree[data-v-
|
|
95
|
+
.c-tree[data-v-7a932d60] .tree-actions {
|
|
96
96
|
opacity: 1;
|
|
97
97
|
}
|
|
98
98
|
}
|
|
99
99
|
@media (prefers-reduced-motion: reduce) {
|
|
100
|
-
.c-tree[data-v-
|
|
100
|
+
.c-tree[data-v-7a932d60] .tree-actions {
|
|
101
101
|
transition: none;
|
|
102
102
|
}
|
|
103
103
|
}
|
|
104
104
|
|
|
105
105
|
/* layer: default */
|
|
106
|
-
.filter[data-v-
|
|
106
|
+
.filter[data-v-7a932d60]{filter:var(--un-blur) var(--un-brightness) var(--un-contrast) var(--un-drop-shadow) var(--un-grayscale) var(--un-hue-rotate) var(--un-invert) var(--un-saturate) var(--un-sepia);}
|
package/dist/C_Tree.d.ts
CHANGED
|
@@ -6,10 +6,10 @@ import { C as TreeNodeData, D as TreeSlots, E as TreeRenderContext, O as TreeUpd
|
|
|
6
6
|
import "./useDraggableLayout.js";
|
|
7
7
|
import "./useDynamicFormState.js";
|
|
8
8
|
import { t as ComponentDensity } from "./density.js";
|
|
9
|
-
import "./
|
|
10
|
-
import "./
|
|
9
|
+
import "./index11.vue.js";
|
|
10
|
+
import "./dateRange.js";
|
|
11
11
|
import "./mapUtils.js";
|
|
12
|
-
import "./
|
|
12
|
+
import "./index18.vue.js";
|
|
13
13
|
import "./constants5.js";
|
|
14
|
-
import "./
|
|
14
|
+
import "./index24.vue.js";
|
|
15
15
|
export { type ActionConfig, type ButtonType, _default as C_Tree, type ComponentDensity, type DropInfo, type IconConfig, type StatusConfig, type StatusType, type TreeEmits, type TreeExpose, type TreeKey, type TreeMode, type TreeNativeProps, type TreeNodeData, type TreeOption, type TreeProps, type TreeRenderContext, type TreeSlots, type TreeUpdateMeta, presetConfigs as treePresetConfigs, useTreeOperations };
|
package/dist/C_Tree2.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
require(`./chunk.cjs`);const e=require(`./density.cjs`),t=require(`./C_Icon2.cjs`),n=require(`./export-helper.cjs`);let r=require(`vue`),i=require(`naive-ui`);const a={menu:{draggable:!0,showLine:!0,iconConfig:{typeMap:{directory:`mdi:folder`,menu:`mdi:file-document`,button:`mdi:button-cursor`}},actions:[{key:`add`,text:`新增子菜单`,icon:`mdi:plus`,type:`primary`},{key:`edit`,text:`编辑`,icon:`mdi:pencil`,type:`info`},{key:`delete`,text:`删除`,icon:`mdi:delete`,type:`error`,confirm:`确认删除该菜单吗?`}]},file:{draggable:!1,showLine:!1,iconConfig:{typeMap:{folder:`mdi:folder`,file:`mdi:file-document`,image:`mdi:file-image`,video:`mdi:file-video`,audio:`mdi:file-music`}},actions:[{key:`open`,text:`打开`,icon:`mdi:folder-open`,type:`primary`},{key:`rename`,text:`重命名`,icon:`mdi:rename-box`,type:`info`},{key:`delete`,text:`删除`,icon:`mdi:delete`,type:`error`,confirm:`确认删除该文件吗?`}]},org:{draggable:!1,showLine:!0,iconConfig:{typeMap:{department:`mdi:domain`,user:`mdi:account`,manager:`mdi:account-tie`}},actions:[{key:`add`,text:`新增下级`,icon:`mdi:plus`,type:`primary`},{key:`edit`,text:`编辑`,icon:`mdi:pencil`,type:`info`}]},custom:{}},o=e=>typeof e==`string`||typeof e==`number`,s=e=>!!e&&typeof e==`object`;function c(e,t,n,r){let i=new Map,a=new Set,c=new WeakSet,l=[],u=e=>{for(let t=e.length-1;t>=0;t--)l.push(e[t])};for(u(e);l.length;){let e=l.pop();if(!s(e)||c.has(e))continue;c.add(e);let d=e[t],f=o(d);f&&!i.has(d)&&i.set(d,e);let p=r?r(e):e[n];Array.isArray(p)&&p.length&&(f&&a.add(d),u(p))}return{nodes:i,expandableKeys:[...a]}}function l(n,o,s={}){let l=(0,r.computed)(()=>n.treeProps??{}),u=(0,r.computed)(()=>a[n.mode??`custom`]),d=(0,r.computed)(()=>n.draggable??l.value.draggable??u.value.draggable??!1),f=(0,r.computed)(()=>n.showLine??l.value.showLine??u.value.showLine??!0),p=(0,r.computed)(()=>({...u.value,...n,draggable:d.value,showLine:f.value,iconConfig:{default:`mdi:circle-outline`,...u.value.iconConfig,...n.iconConfig,typeMap:{...u.value.iconConfig?.typeMap,...n.iconConfig?.typeMap},colorMap:{...u.value.iconConfig?.colorMap,...n.iconConfig?.colorMap}},actions:n.actions??u.value.actions??[]})),m=(0,r.computed)(()=>n.keyField??l.value.keyField??`id`),h=(0,r.computed)(()=>n.labelField??l.value.labelField??`name`),g=(0,r.computed)(()=>n.childrenField??l.value.childrenField??`children`),_=(0,r.computed)(()=>c(n.data,m.value,g.value,l.value.getChildren)),v=()=>n.defaultExpandAll??l.value.defaultExpandAll??!1,y=(0,r.ref)(v()),b=e=>{let t=`default${e}Keys`;return[...n[t]??l.value[t]??[]]},x=(0,r.ref)(v()?_.value.expandableKeys:b(`Expanded`)),S=(0,r.ref)(b(`Selected`)),C=(0,r.ref)(b(`Checked`)),w=(0,r.computed)({get:()=>n.expandedKeys??l.value.expandedKeys??x.value,set:e=>M(e)}),T=(0,r.computed)({get:()=>n.selectedKeys??l.value.selectedKeys??S.value,set:e=>N(e)}),E=(0,r.computed)({get:()=>n.checkedKeys??l.value.checkedKeys??C.value,set:e=>P(e)}),D=(0,r.ref)(``),O=(0,r.computed)({get:()=>n.searchPattern??l.value.pattern??D.value,set:e=>{D.value=e,o(`update:searchPattern`,e)}}),k=(0,r.computed)(()=>{let e=_.value.expandableKeys,t=new Set(w.value);return e.length>0&&e.every(e=>t.has(e))});(0,r.watch)(()=>_.value.expandableKeys,e=>{y.value&&(x.value=[...e])}),(0,r.watch)(v,e=>{y.value=e,e&&(x.value=[..._.value.expandableKeys])});for(let[e,t]of[[`Expanded`,x],[`Selected`,S],[`Checked`,C]]){let i=`default${e}Keys`;(0,r.watch)(()=>n[i]??l.value[i],n=>{l.value.watchProps?.includes(i)&&(t.value=e===`Expanded`&&v()?[..._.value.expandableKeys]:[...n??[]])})}let A=e=>e.map(e=>_.value.nodes.get(e)??null),j=(e,t)=>{let n=l.value[e],r=Array.isArray(n)?n:[n];for(let e of r)typeof e==`function`&&e(...t)},M=(e,t=A(e),n={node:null,action:`expand`})=>{n.action!==`filter`&&(y.value=!1),x.value=[...e],o(`update:expandedKeys`,e,t,n),j(`onUpdateExpandedKeys`,[e,t,n]),j(`onUpdate:expandedKeys`,[e,t,n])},N=(e,t=A(e),n={node:t[0]??null,action:e.length?`select`:`unselect`})=>{S.value=[...e],o(`update:selectedKeys`,e,t,n),o(`node-select`,t[0]??null,e),j(`onUpdateSelectedKeys`,[e,t,n]),j(`onUpdate:selectedKeys`,[e,t,n])},P=(e,t=A(e),n={node:null,action:e.length?`check`:`uncheck`})=>{C.value=[...e],o(`update:checkedKeys`,e,t,n),j(`onUpdateCheckedKeys`,[e,t,n]),j(`onUpdate:checkedKeys`,[e,t,n])},F=(0,r.computed)(()=>_.value.nodes.get(T.value[0])??null),I=e=>{if(s.prefix)return s.prefix(e);if(l.value.renderPrefix)return l.value.renderPrefix(e);if(typeof e.option.prefix==`function`)return e.option.prefix();let i=e.option,a=p.value.iconConfig,o=typeof i.type==`string`?i.type:``,c=i[n.iconField??`icon`];return(0,r.h)(t.t,{name:typeof c==`string`?c:a.typeMap[o]??a.default,size:16,color:a.colorMap[o]??`currentColor`,class:`c-tree-node-icon`})},L=e=>{if(s.label)return s.label(e);if(l.value.renderLabel)return l.value.renderLabel(e);let t=String(e.option[h.value]??``);return(0,r.h)(`span`,{class:`c-tree-node-label`},[(0,r.h)(`span`,{class:`c-tree-node-title`,title:t},t),...(n.statusConfigs??[]).flatMap(t=>{let n=e.option[t.field],a=typeof n==`number`||typeof n==`string`?t.values[n]:void 0;return a?.text?[(0,r.h)(i.NTag,{type:a.type,size:`small`,class:`c-tree-node-status`},{default:()=>a.text})]:[]})])},R=(e,t)=>{e===`add`?o(`add`,t):o(`node-action`,e,t)},z=e=>{if(s.suffix)return s.suffix(e);if(l.value.renderSuffix)return l.value.renderSuffix(e);if(typeof e.option.suffix==`function`)return e.option.suffix();let n=e.option,a=p.value.actions.filter(e=>!e.show||e.show(n));return a.length?(0,r.h)(`span`,{class:`tree-actions`,onClick:e=>e.stopPropagation()},a.map(e=>{let a=a=>(0,r.h)(i.NButton,{size:`tiny`,type:e.type??`default`,quaternary:!0,disabled:!!(l.value.disabled||n[l.value.disabledField??`disabled`]),"aria-label":e.text||e.key,title:e.text,onClick:t=>{t.stopPropagation(),a||R(e.key,n)}},{icon:()=>(0,r.h)(t.t,{name:e.icon,size:14})});return e.confirm?(0,r.h)(i.NPopconfirm,{onPositiveClick:()=>R(e.key,n)},{trigger:()=>a(!0),default:()=>e.confirm}):a(!1)})):null},B=!0;(0,r.getCurrentScope)()&&(0,r.onScopeDispose)(()=>{B=!1});let V=(0,r.computed)(()=>{let e=l.value.onLoad;if(e)return async t=>{try{return await e(t)}catch(e){let n=t[m.value],i=typeof n==`string`||typeof n==`number`?_.value.nodes.get(n):void 0;return B&&i&&(0,r.toRaw)(i)===(0,r.toRaw)(t)&&o(`load-error`,e,t),!1}}}),H=(0,r.computed)(()=>{if(!n.data.length)return!1;let e=O.value;if(!l.value.virtualScroll||!e||l.value.showIrrelevantNodes!==!1)return!0;let t=e.toLowerCase(),r=l.value.filter??((e,n)=>{let r=n[h.value];return typeof r==`string`&&r.toLowerCase().includes(t)});for(let t of _.value.nodes.values())if(r(e,t))return!0;return!1}),U=(0,r.shallowRef)(),W=(0,r.computed)(()=>e.t(n.density)),G=(0,r.computed)(()=>({...l.value,data:n.data,virtualScroll:!!(l.value.virtualScroll&&H.value),keyField:m.value,labelField:h.value,childrenField:g.value,draggable:p.value.draggable,showLine:p.value.showLine,blockLine:l.value.blockLine??!0,blockNode:l.value.blockNode??!0,pattern:O.value,expandedKeys:w.value,selectedKeys:T.value,checkedKeys:E.value,renderPrefix:I,renderLabel:L,renderSuffix:z,themeOverrides:{nodeHeight:n.density===`compact`?`28px`:n.density===`comfortable`?`40px`:`34px`,nodeWrapperPadding:`0`,...l.value.themeOverrides},onLoad:V.value,onUpdateExpandedKeys:void 0,onUpdateSelectedKeys:void 0,onUpdateCheckedKeys:void 0,"onUpdate:expandedKeys":M,"onUpdate:selectedKeys":N,"onUpdate:checkedKeys":P,onDrop:e=>{o(`node-drop`,e),j(`onDrop`,[e])}})),K=()=>k.value?J():q(),q=()=>{M([..._.value.expandableKeys]),y.value=!0},J=()=>M([],[],{node:null,action:`collapse`}),Y=()=>o(`add`),X=()=>o(`refresh`),Z={expandAll:q,collapseAll:J,selectNode:e=>N([e]),clearSelection:()=>N([]),setCheckedKeys:e=>P([...e]),clearChecked:()=>P([]),getSelectedNode:()=>F.value,getCheckedData:()=>U.value?.getCheckedData()??{keys:[...E.value],options:A(E.value)},getIndeterminateData:()=>U.value?.getIndeterminateData()??{keys:[],options:[]},scrollTo:(...e)=>{let t=U.value?.scrollTo;t?.(...e)},expandedKeys:w,selectedKeys:T,checkedKeys:E};return{internalSearchPattern:D,expandedKeys:w,selectedKeys:T,checkedKeys:E,isAllExpanded:k,treeData:(0,r.computed)(()=>n.data),currentSearchPattern:O,renderPrefix:I,renderLabel:L,renderSuffix:z,treeBindings:G,treeRef:U,density:W,toggleExpandAll:K,handleExpandedKeysChange:M,handleSelectedKeysChange:N,handleCheckedKeysChange:P,handleDrop:e=>o(`node-drop`,e),handleAdd:Y,handleRefresh:X,expose:Z}}const u={key:0,class:`c-tree-toolbar`},d={class:`toolbar-left`},f={class:`toolbar-right`},p={class:`c-tree-container`},m=(0,r.defineComponent)({name:`C_Tree`,__name:`index`,props:{data:{},mode:{default:`custom`},treeProps:{},density:{default:`default`},keyField:{},labelField:{},childrenField:{},searchPattern:{},searchable:{type:Boolean,default:!0},searchPlaceholder:{default:`搜索...`},draggable:{type:Boolean,default:void 0},showLine:{type:Boolean,default:void 0},showToolbar:{type:Boolean,default:!0},addable:{type:Boolean,default:!0},addText:{default:`新增`},refreshable:{type:Boolean,default:!0},iconField:{},iconConfig:{},statusConfigs:{},actions:{},defaultExpandAll:{type:Boolean,default:void 0},defaultExpandedKeys:{},defaultSelectedKeys:{},defaultCheckedKeys:{},expandedKeys:{},selectedKeys:{},checkedKeys:{}},emits:[`update:searchPattern`,`update:expandedKeys`,`update:selectedKeys`,`update:checkedKeys`,`node-select`,`node-action`,`node-drop`,`load-error`,`add`,`refresh`],setup(e,{expose:n,emit:a}){let o=e,s=a,c=(0,r.useSlots)(),m=(0,i.useThemeVars)(),h=(0,r.computed)(()=>({"--c-tree-border":m.value.borderColor,"--c-tree-surface":m.value.actionColor,"--c-tree-radius":m.value.borderRadius})),{currentSearchPattern:g,isAllExpanded:_,treeBindings:v,treeRef:y,density:b,toggleExpandAll:x,handleAdd:S,handleRefresh:C,expose:w}=l(o,s,c);return n(w),(n,a)=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{class:(0,r.normalizeClass)([`c-tree`,[`c-tree--${(0,r.unref)(b).density}`,{"c-tree--virtual":(0,r.unref)(v).virtualScroll}]]),style:(0,r.normalizeStyle)(h.value)},[e.showToolbar?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,u,[(0,r.createElementVNode)(`div`,d,[e.searchable?((0,r.openBlock)(),(0,r.createBlock)((0,r.unref)(i.NInput),{key:0,value:(0,r.unref)(g),"onUpdate:value":a[0]||=e=>(0,r.isRef)(g)?g.value=e:null,size:(0,r.unref)(b).size,placeholder:e.searchPlaceholder,"input-props":{"aria-label":`搜索树节点`},clearable:``,class:`search-input`},{prefix:(0,r.withCtx)(()=>[(0,r.createVNode)(t.t,{name:`mdi:magnify`,size:16})]),_:1},8,[`value`,`size`,`placeholder`])):(0,r.createCommentVNode)(`v-if`,!0)]),(0,r.createElementVNode)(`div`,f,[(0,r.renderSlot)(n.$slots,`toolbar-actions`,{},()=>[e.addable?((0,r.openBlock)(),(0,r.createBlock)((0,r.unref)(i.NButton),{key:0,type:`primary`,size:(0,r.unref)(b).size,onClick:a[1]||=e=>(0,r.unref)(S)()},{icon:(0,r.withCtx)(()=>[(0,r.createVNode)(t.t,{name:`mdi:plus`,size:16})]),default:(0,r.withCtx)(()=>[(0,r.createTextVNode)(` `+(0,r.toDisplayString)(e.addText),1)]),_:1},8,[`size`])):(0,r.createCommentVNode)(`v-if`,!0),(0,r.createVNode)((0,r.unref)(i.NButton),{size:(0,r.unref)(b).size,disabled:!e.data.length,"aria-pressed":(0,r.unref)(_),onClick:(0,r.unref)(x)},{icon:(0,r.withCtx)(()=>[(0,r.createVNode)(t.t,{name:`mdi:file-tree`,size:16})]),default:(0,r.withCtx)(()=>[(0,r.createTextVNode)(` `+(0,r.toDisplayString)((0,r.unref)(_)?`收起全部`:`展开全部`),1)]),_:1},8,[`size`,`disabled`,`aria-pressed`,`onClick`]),e.refreshable?((0,r.openBlock)(),(0,r.createBlock)((0,r.unref)(i.NButton),{key:1,size:(0,r.unref)(b).size,onClick:(0,r.unref)(C)},{icon:(0,r.withCtx)(()=>[(0,r.createVNode)(t.t,{name:`mdi:refresh`,size:16})]),default:(0,r.withCtx)(()=>[a[2]||=(0,r.createTextVNode)(` 刷新 `,-1)]),_:1},8,[`size`,`onClick`])):(0,r.createCommentVNode)(`v-if`,!0)],!0)])])):(0,r.createCommentVNode)(`v-if`,!0),(0,r.createElementVNode)(`div`,p,[(0,r.createVNode)((0,r.unref)(i.NTree),(0,r.mergeProps)({ref_key:`treeRef`,ref:y},(0,r.unref)(v),{class:`tree-instance`}),(0,r.createSlots)({_:2},[n.$slots.empty?{name:`empty`,fn:(0,r.withCtx)(()=>[(0,r.renderSlot)(n.$slots,`empty`,{},void 0,!0)]),key:`0`}:void 0]),1040)])],6))}});var h=n.t(m,[[`__scopeId`,`data-v-76801f3f`]]);Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return h}});
|
|
1
|
+
require(`./chunk.cjs`);const e=require(`./density.cjs`),t=require(`./C_Icon2.cjs`),n=require(`./export-helper.cjs`);let r=require(`vue`),i=require(`naive-ui`);const a={menu:{draggable:!0,showLine:!0,iconConfig:{typeMap:{directory:`mdi:folder`,menu:`mdi:file-document`,button:`mdi:button-cursor`}},actions:[{key:`add`,text:`新增子菜单`,icon:`mdi:plus`,type:`primary`},{key:`edit`,text:`编辑`,icon:`mdi:pencil`,type:`info`},{key:`delete`,text:`删除`,icon:`mdi:delete`,type:`error`,confirm:`确认删除该菜单吗?`}]},file:{draggable:!1,showLine:!1,iconConfig:{typeMap:{folder:`mdi:folder`,file:`mdi:file-document`,image:`mdi:file-image`,video:`mdi:file-video`,audio:`mdi:file-music`}},actions:[{key:`open`,text:`打开`,icon:`mdi:folder-open`,type:`primary`},{key:`rename`,text:`重命名`,icon:`mdi:rename-box`,type:`info`},{key:`delete`,text:`删除`,icon:`mdi:delete`,type:`error`,confirm:`确认删除该文件吗?`}]},org:{draggable:!1,showLine:!0,iconConfig:{typeMap:{department:`mdi:domain`,user:`mdi:account`,manager:`mdi:account-tie`}},actions:[{key:`add`,text:`新增下级`,icon:`mdi:plus`,type:`primary`},{key:`edit`,text:`编辑`,icon:`mdi:pencil`,type:`info`}]},custom:{}},o=e=>typeof e==`string`||typeof e==`number`,s=e=>!!e&&typeof e==`object`;function c(e,t,n,r){let i=new Map,a=new Set,c=new WeakSet,l=[],u=e=>{for(let t=e.length-1;t>=0;t--)l.push(e[t])};for(u(e);l.length;){let e=l.pop();if(!s(e)||c.has(e))continue;c.add(e);let d=Reflect.get(e,t),f=o(d);f&&!i.has(d)&&i.set(d,e);let p=r?r(e):Reflect.get(e,n);Array.isArray(p)&&p.length&&(f&&a.add(d),u(p))}return{nodes:i,expandableKeys:[...a]}}function l(n,o,s={}){let l=(0,r.computed)(()=>n.treeProps??{}),u=(0,r.computed)(()=>a[n.mode??`custom`]),d=(0,r.computed)(()=>n.draggable??l.value.draggable??u.value.draggable??!1),f=(0,r.computed)(()=>n.showLine??l.value.showLine??u.value.showLine??!0),p=(0,r.computed)(()=>n.actions??u.value.actions??[]),m=(0,r.computed)(()=>({...u.value,...n,draggable:d.value,showLine:f.value,iconConfig:{default:`mdi:circle-outline`,...u.value.iconConfig,...n.iconConfig,typeMap:{...u.value.iconConfig?.typeMap,...n.iconConfig?.typeMap},colorMap:{...u.value.iconConfig?.colorMap,...n.iconConfig?.colorMap}},actions:p.value})),h=(0,r.computed)(()=>n.keyField??l.value.keyField??`id`),g=(0,r.computed)(()=>n.labelField??l.value.labelField??`name`),_=(0,r.computed)(()=>n.childrenField??l.value.childrenField??`children`),v=(0,r.computed)(()=>c(n.data,h.value,_.value,l.value.getChildren)),y=()=>n.defaultExpandAll??l.value.defaultExpandAll??!1,b=(0,r.ref)(y()),x=e=>{let t=`default${e}Keys`;return[...n[t]??l.value[t]??[]]},S=(0,r.ref)(y()?v.value.expandableKeys:x(`Expanded`)),C=(0,r.ref)(x(`Selected`)),w=(0,r.ref)(x(`Checked`)),T=(0,r.computed)({get:()=>n.expandedKeys??l.value.expandedKeys??S.value,set:e=>N(e)}),E=(0,r.computed)({get:()=>n.selectedKeys??l.value.selectedKeys??C.value,set:e=>P(e)}),D=(0,r.computed)({get:()=>n.checkedKeys??l.value.checkedKeys??w.value,set:e=>F(e)}),O=(0,r.ref)(``),k=(0,r.computed)({get:()=>n.searchPattern??l.value.pattern??O.value,set:e=>{O.value=e,o(`update:searchPattern`,e)}}),A=(0,r.computed)(()=>{let e=v.value.expandableKeys,t=new Set(T.value);return e.length>0&&e.every(e=>t.has(e))});(0,r.watch)(()=>v.value.expandableKeys,e=>{b.value&&(S.value=[...e])}),(0,r.watch)(y,e=>{b.value=e,e&&(S.value=[...v.value.expandableKeys])});for(let[e,t]of[[`Expanded`,S],[`Selected`,C],[`Checked`,w]]){let i=`default${e}Keys`;(0,r.watch)(()=>n[i]??l.value[i],n=>{l.value.watchProps?.includes(i)&&(t.value=e===`Expanded`&&y()?[...v.value.expandableKeys]:[...n??[]])})}let j=e=>e.map(e=>v.value.nodes.get(e)??null),M=(e,t)=>{let n=l.value[e],r=Array.isArray(n)?n:[n];for(let e of r)typeof e==`function`&&e(...t)},N=(e,t=j(e),n={node:null,action:`expand`})=>{n.action!==`filter`&&(b.value=!1),S.value=[...e],o(`update:expandedKeys`,e,t,n),M(`onUpdateExpandedKeys`,[e,t,n]),M(`onUpdate:expandedKeys`,[e,t,n])},P=(e,t=j(e),n={node:t[0]??null,action:e.length?`select`:`unselect`})=>{C.value=[...e],o(`update:selectedKeys`,e,t,n),o(`node-select`,t[0]??null,e),M(`onUpdateSelectedKeys`,[e,t,n]),M(`onUpdate:selectedKeys`,[e,t,n])},F=(e,t=j(e),n={node:null,action:e.length?`check`:`uncheck`})=>{w.value=[...e],o(`update:checkedKeys`,e,t,n),M(`onUpdateCheckedKeys`,[e,t,n]),M(`onUpdate:checkedKeys`,[e,t,n])},I=(0,r.computed)(()=>v.value.nodes.get(E.value[0])??null),L=e=>{if(s.prefix)return s.prefix(e);if(l.value.renderPrefix)return l.value.renderPrefix(e);let i=Reflect.get(e.option,`prefix`);if(typeof i==`function`)return i();let a=e.option,o=m.value.iconConfig,c=Reflect.get(a,`type`),u=typeof c==`string`?c:``,d=Reflect.get(a,n.iconField??`icon`);return(0,r.h)(t.t,{name:typeof d==`string`?d:o.typeMap[u]??o.default,size:16,color:o.colorMap[u]??`currentColor`,class:`c-tree-node-icon`})},R=e=>{if(s.label)return s.label(e);if(l.value.renderLabel)return l.value.renderLabel(e);let t=String(Reflect.get(e.option,g.value)??``);return(0,r.h)(`span`,{class:`c-tree-node-label`},[(0,r.h)(`span`,{class:`c-tree-node-title`,title:t},t),...(n.statusConfigs??[]).flatMap(t=>{let n=Reflect.get(e.option,t.field),a=typeof n==`number`||typeof n==`string`?t.values[n]:void 0;return a?.text?[(0,r.h)(i.NTag,{type:a.type,size:`small`,class:`c-tree-node-status`},{default:()=>a.text})]:[]})])},z=(e,t)=>{e===`add`?o(`add`,t):o(`node-action`,e,t)},B=e=>{if(s.suffix)return s.suffix(e);if(l.value.renderSuffix)return l.value.renderSuffix(e);let n=Reflect.get(e.option,`suffix`);if(typeof n==`function`)return n();let a=e.option,o=m.value.actions.filter(e=>!e.show||e.show(a));return o.length?(0,r.h)(`span`,{class:`tree-actions`,onClick:e=>e.stopPropagation()},o.map(e=>{let n=n=>(0,r.h)(i.NButton,{size:`tiny`,type:e.type??`default`,quaternary:!0,disabled:!!(l.value.disabled||Reflect.get(a,l.value.disabledField??`disabled`)),"aria-label":e.text||e.key,title:e.text,onClick:t=>{t.stopPropagation(),n||z(e.key,a)}},{icon:()=>(0,r.h)(t.t,{name:e.icon,size:14})});return e.confirm?(0,r.h)(i.NPopconfirm,{onPositiveClick:()=>z(e.key,a)},{trigger:()=>n(!0),default:()=>e.confirm}):n(!1)})):null},V=!0;(0,r.getCurrentScope)()&&(0,r.onScopeDispose)(()=>{V=!1});let H=(0,r.computed)(()=>{let e=l.value.onLoad;if(e)return async t=>{try{return await e(t)}catch(e){let n=Reflect.get(t,h.value),i=typeof n==`string`||typeof n==`number`?v.value.nodes.get(n):void 0;return V&&i&&(0,r.toRaw)(i)===(0,r.toRaw)(t)&&o(`load-error`,e,t),!1}}}),U=(0,r.computed)(()=>{if(!n.data.length)return!1;let e=k.value;if(!l.value.virtualScroll||!e||l.value.showIrrelevantNodes!==!1)return!0;let t=e.toLowerCase(),r=l.value.filter??((e,n)=>{let r=Reflect.get(n,g.value);return typeof r==`string`&&r.toLowerCase().includes(t)});for(let t of v.value.nodes.values())if(r(e,t))return!0;return!1}),W=(0,r.shallowRef)(),G=(0,r.computed)(()=>e.t(n.density)),K=(0,r.computed)(()=>({...l.value,data:n.data,virtualScroll:!!(l.value.virtualScroll&&U.value),keyField:h.value,labelField:g.value,childrenField:_.value,draggable:m.value.draggable,showLine:m.value.showLine,blockLine:l.value.blockLine??!0,blockNode:l.value.blockNode??!0,pattern:k.value,expandedKeys:T.value,selectedKeys:E.value,checkedKeys:D.value,renderPrefix:L,renderLabel:R,renderSuffix:B,themeOverrides:{nodeHeight:n.density===`compact`?`28px`:n.density===`comfortable`?`40px`:`34px`,nodeWrapperPadding:`0`,...l.value.themeOverrides},onLoad:H.value,onUpdateExpandedKeys:void 0,onUpdateSelectedKeys:void 0,onUpdateCheckedKeys:void 0,"onUpdate:expandedKeys":N,"onUpdate:selectedKeys":P,"onUpdate:checkedKeys":F,onDrop:e=>{o(`node-drop`,e),M(`onDrop`,[e])}})),q=()=>A.value?Y():J(),J=()=>{N([...v.value.expandableKeys]),b.value=!0},Y=()=>N([],[],{node:null,action:`collapse`}),X=()=>o(`add`),Z=()=>o(`refresh`),Q={expandAll:J,collapseAll:Y,selectNode:e=>P([e]),clearSelection:()=>P([]),setCheckedKeys:e=>F([...e]),clearChecked:()=>F([]),getSelectedNode:()=>I.value,getCheckedData:()=>{let e=W.value?.getCheckedData();return e?{keys:e.keys,options:e.options}:{keys:[...D.value],options:j(D.value)}},getIndeterminateData:()=>{let e=W.value?.getIndeterminateData();return e?{keys:e.keys,options:e.options}:{keys:[],options:[]}},scrollTo:(...e)=>{let t=W.value?.scrollTo;t?.(...e)},expandedKeys:T,selectedKeys:E,checkedKeys:D};return{internalSearchPattern:O,expandedKeys:T,selectedKeys:E,checkedKeys:D,isAllExpanded:A,treeData:(0,r.computed)(()=>n.data),currentSearchPattern:k,renderPrefix:L,renderLabel:R,renderSuffix:B,treeBindings:K,treeRef:W,density:G,toggleExpandAll:q,handleExpandedKeysChange:N,handleSelectedKeysChange:P,handleCheckedKeysChange:F,handleDrop:e=>o(`node-drop`,e),handleAdd:X,handleRefresh:Z,expose:Q}}const u={key:0,class:`c-tree-toolbar`},d={class:`toolbar-left`},f={class:`toolbar-right`},p={class:`c-tree-container`},m=(0,r.defineComponent)({name:`C_Tree`,__name:`index`,props:{data:{},mode:{default:`custom`},treeProps:{},density:{default:`default`},keyField:{},labelField:{},childrenField:{},searchPattern:{},searchable:{type:Boolean,default:!0},searchPlaceholder:{default:`搜索...`},draggable:{type:Boolean,default:void 0},showLine:{type:Boolean,default:void 0},showToolbar:{type:Boolean,default:!0},addable:{type:Boolean,default:!0},addText:{default:`新增`},refreshable:{type:Boolean,default:!0},iconField:{},iconConfig:{},statusConfigs:{},actions:{},defaultExpandAll:{type:Boolean,default:void 0},defaultExpandedKeys:{},defaultSelectedKeys:{},defaultCheckedKeys:{},expandedKeys:{},selectedKeys:{},checkedKeys:{}},emits:[`update:searchPattern`,`update:expandedKeys`,`update:selectedKeys`,`update:checkedKeys`,`node-select`,`node-action`,`node-drop`,`load-error`,`add`,`refresh`],setup(e,{expose:n,emit:a}){let o=e,s=a,c=(0,r.useSlots)(),m=(0,i.useThemeVars)(),h=(0,r.computed)(()=>({"--c-tree-border":m.value.borderColor,"--c-tree-surface":m.value.actionColor,"--c-tree-radius":m.value.borderRadius})),{currentSearchPattern:g,isAllExpanded:_,treeBindings:v,treeRef:y,density:b,toggleExpandAll:x,handleAdd:S,handleRefresh:C,expose:w}=l(o,s,c);return n(w),(n,a)=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{class:(0,r.normalizeClass)([`c-tree`,[`c-tree--${(0,r.unref)(b).density}`,{"c-tree--virtual":(0,r.unref)(v).virtualScroll}]]),style:(0,r.normalizeStyle)(h.value)},[e.showToolbar?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,u,[(0,r.createElementVNode)(`div`,d,[e.searchable?((0,r.openBlock)(),(0,r.createBlock)((0,r.unref)(i.NInput),{key:0,value:(0,r.unref)(g),"onUpdate:value":a[0]||=e=>(0,r.isRef)(g)?g.value=e:null,size:(0,r.unref)(b).size,placeholder:e.searchPlaceholder,"input-props":{"aria-label":`搜索树节点`},clearable:``,class:`search-input`},{prefix:(0,r.withCtx)(()=>[(0,r.createVNode)(t.t,{name:`mdi:magnify`,size:16})]),_:1},8,[`value`,`size`,`placeholder`])):(0,r.createCommentVNode)(`v-if`,!0)]),(0,r.createElementVNode)(`div`,f,[(0,r.renderSlot)(n.$slots,`toolbar-actions`,{},()=>[e.addable?((0,r.openBlock)(),(0,r.createBlock)((0,r.unref)(i.NButton),{key:0,type:`primary`,size:(0,r.unref)(b).size,onClick:a[1]||=e=>(0,r.unref)(S)()},{icon:(0,r.withCtx)(()=>[(0,r.createVNode)(t.t,{name:`mdi:plus`,size:16})]),default:(0,r.withCtx)(()=>[(0,r.createTextVNode)(` `+(0,r.toDisplayString)(e.addText),1)]),_:1},8,[`size`])):(0,r.createCommentVNode)(`v-if`,!0),(0,r.createVNode)((0,r.unref)(i.NButton),{size:(0,r.unref)(b).size,disabled:!e.data.length,"aria-pressed":(0,r.unref)(_),onClick:(0,r.unref)(x)},{icon:(0,r.withCtx)(()=>[(0,r.createVNode)(t.t,{name:`mdi:file-tree`,size:16})]),default:(0,r.withCtx)(()=>[(0,r.createTextVNode)(` `+(0,r.toDisplayString)((0,r.unref)(_)?`收起全部`:`展开全部`),1)]),_:1},8,[`size`,`disabled`,`aria-pressed`,`onClick`]),e.refreshable?((0,r.openBlock)(),(0,r.createBlock)((0,r.unref)(i.NButton),{key:1,size:(0,r.unref)(b).size,onClick:(0,r.unref)(C)},{icon:(0,r.withCtx)(()=>[(0,r.createVNode)(t.t,{name:`mdi:refresh`,size:16})]),default:(0,r.withCtx)(()=>[a[2]||=(0,r.createTextVNode)(` 刷新 `,-1)]),_:1},8,[`size`,`onClick`])):(0,r.createCommentVNode)(`v-if`,!0)],!0)])])):(0,r.createCommentVNode)(`v-if`,!0),(0,r.createElementVNode)(`div`,p,[(0,r.createVNode)((0,r.unref)(i.NTree),(0,r.mergeProps)({ref_key:`treeRef`,ref:y},(0,r.unref)(v),{class:`tree-instance`}),(0,r.createSlots)({_:2},[n.$slots.empty?{name:`empty`,fn:(0,r.withCtx)(()=>[(0,r.renderSlot)(n.$slots,`empty`,{},void 0,!0)]),key:`0`}:void 0]),1040)])],6))}});var h=n.t(m,[[`__scopeId`,`data-v-7a932d60`]]);Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return h}});
|
package/dist/C_Tree2.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./density.js";import{t}from"./C_Icon2.js";import{t as n}from"./export-helper.js";import{computed as r,createBlock as i,createCommentVNode as a,createElementBlock as o,createElementVNode as s,createSlots as c,createTextVNode as l,createVNode as u,defineComponent as d,getCurrentScope as f,h as p,isRef as m,mergeProps as h,normalizeClass as g,normalizeStyle as _,onScopeDispose as v,openBlock as y,ref as b,renderSlot as x,shallowRef as S,toDisplayString as C,toRaw as w,unref as T,useSlots as E,watch as D,withCtx as O}from"vue";import{NButton as k,NInput as A,NPopconfirm as j,NTag as M,NTree as N,useThemeVars as P}from"naive-ui";const F={menu:{draggable:!0,showLine:!0,iconConfig:{typeMap:{directory:`mdi:folder`,menu:`mdi:file-document`,button:`mdi:button-cursor`}},actions:[{key:`add`,text:`新增子菜单`,icon:`mdi:plus`,type:`primary`},{key:`edit`,text:`编辑`,icon:`mdi:pencil`,type:`info`},{key:`delete`,text:`删除`,icon:`mdi:delete`,type:`error`,confirm:`确认删除该菜单吗?`}]},file:{draggable:!1,showLine:!1,iconConfig:{typeMap:{folder:`mdi:folder`,file:`mdi:file-document`,image:`mdi:file-image`,video:`mdi:file-video`,audio:`mdi:file-music`}},actions:[{key:`open`,text:`打开`,icon:`mdi:folder-open`,type:`primary`},{key:`rename`,text:`重命名`,icon:`mdi:rename-box`,type:`info`},{key:`delete`,text:`删除`,icon:`mdi:delete`,type:`error`,confirm:`确认删除该文件吗?`}]},org:{draggable:!1,showLine:!0,iconConfig:{typeMap:{department:`mdi:domain`,user:`mdi:account`,manager:`mdi:account-tie`}},actions:[{key:`add`,text:`新增下级`,icon:`mdi:plus`,type:`primary`},{key:`edit`,text:`编辑`,icon:`mdi:pencil`,type:`info`}]},custom:{}},I=e=>typeof e==`string`||typeof e==`number`,L=e=>!!e&&typeof e==`object`;function R(e,t,n,r){let i=new Map,a=new Set,o=new WeakSet,s=[],c=e=>{for(let t=e.length-1;t>=0;t--)s.push(e[t])};for(c(e);s.length;){let e=s.pop();if(!L(e)||o.has(e))continue;o.add(e);let l=e[t],u=I(l);u&&!i.has(l)&&i.set(l,e);let d=r?r(e):e[n];Array.isArray(d)&&d.length&&(u&&a.add(l),c(d))}return{nodes:i,expandableKeys:[...a]}}function z(n,i,a={}){let o=r(()=>n.treeProps??{}),s=r(()=>F[n.mode??`custom`]),c=r(()=>n.draggable??o.value.draggable??s.value.draggable??!1),l=r(()=>n.showLine??o.value.showLine??s.value.showLine??!0),u=r(()=>({...s.value,...n,draggable:c.value,showLine:l.value,iconConfig:{default:`mdi:circle-outline`,...s.value.iconConfig,...n.iconConfig,typeMap:{...s.value.iconConfig?.typeMap,...n.iconConfig?.typeMap},colorMap:{...s.value.iconConfig?.colorMap,...n.iconConfig?.colorMap}},actions:n.actions??s.value.actions??[]})),d=r(()=>n.keyField??o.value.keyField??`id`),m=r(()=>n.labelField??o.value.labelField??`name`),h=r(()=>n.childrenField??o.value.childrenField??`children`),g=r(()=>R(n.data,d.value,h.value,o.value.getChildren)),_=()=>n.defaultExpandAll??o.value.defaultExpandAll??!1,y=b(_()),x=e=>{let t=`default${e}Keys`;return[...n[t]??o.value[t]??[]]},C=b(_()?g.value.expandableKeys:x(`Expanded`)),T=b(x(`Selected`)),E=b(x(`Checked`)),O=r({get:()=>n.expandedKeys??o.value.expandedKeys??C.value,set:e=>V(e)}),A=r({get:()=>n.selectedKeys??o.value.selectedKeys??T.value,set:e=>H(e)}),N=r({get:()=>n.checkedKeys??o.value.checkedKeys??E.value,set:e=>U(e)}),P=b(``),I=r({get:()=>n.searchPattern??o.value.pattern??P.value,set:e=>{P.value=e,i(`update:searchPattern`,e)}}),L=r(()=>{let e=g.value.expandableKeys,t=new Set(O.value);return e.length>0&&e.every(e=>t.has(e))});D(()=>g.value.expandableKeys,e=>{y.value&&(C.value=[...e])}),D(_,e=>{y.value=e,e&&(C.value=[...g.value.expandableKeys])});for(let[e,t]of[[`Expanded`,C],[`Selected`,T],[`Checked`,E]]){let r=`default${e}Keys`;D(()=>n[r]??o.value[r],n=>{o.value.watchProps?.includes(r)&&(t.value=e===`Expanded`&&_()?[...g.value.expandableKeys]:[...n??[]])})}let z=e=>e.map(e=>g.value.nodes.get(e)??null),B=(e,t)=>{let n=o.value[e],r=Array.isArray(n)?n:[n];for(let e of r)typeof e==`function`&&e(...t)},V=(e,t=z(e),n={node:null,action:`expand`})=>{n.action!==`filter`&&(y.value=!1),C.value=[...e],i(`update:expandedKeys`,e,t,n),B(`onUpdateExpandedKeys`,[e,t,n]),B(`onUpdate:expandedKeys`,[e,t,n])},H=(e,t=z(e),n={node:t[0]??null,action:e.length?`select`:`unselect`})=>{T.value=[...e],i(`update:selectedKeys`,e,t,n),i(`node-select`,t[0]??null,e),B(`onUpdateSelectedKeys`,[e,t,n]),B(`onUpdate:selectedKeys`,[e,t,n])},U=(e,t=z(e),n={node:null,action:e.length?`check`:`uncheck`})=>{E.value=[...e],i(`update:checkedKeys`,e,t,n),B(`onUpdateCheckedKeys`,[e,t,n]),B(`onUpdate:checkedKeys`,[e,t,n])},W=r(()=>g.value.nodes.get(A.value[0])??null),G=e=>{if(a.prefix)return a.prefix(e);if(o.value.renderPrefix)return o.value.renderPrefix(e);if(typeof e.option.prefix==`function`)return e.option.prefix();let r=e.option,i=u.value.iconConfig,s=typeof r.type==`string`?r.type:``,c=r[n.iconField??`icon`];return p(t,{name:typeof c==`string`?c:i.typeMap[s]??i.default,size:16,color:i.colorMap[s]??`currentColor`,class:`c-tree-node-icon`})},K=e=>{if(a.label)return a.label(e);if(o.value.renderLabel)return o.value.renderLabel(e);let t=String(e.option[m.value]??``);return p(`span`,{class:`c-tree-node-label`},[p(`span`,{class:`c-tree-node-title`,title:t},t),...(n.statusConfigs??[]).flatMap(t=>{let n=e.option[t.field],r=typeof n==`number`||typeof n==`string`?t.values[n]:void 0;return r?.text?[p(M,{type:r.type,size:`small`,class:`c-tree-node-status`},{default:()=>r.text})]:[]})])},q=(e,t)=>{e===`add`?i(`add`,t):i(`node-action`,e,t)},J=e=>{if(a.suffix)return a.suffix(e);if(o.value.renderSuffix)return o.value.renderSuffix(e);if(typeof e.option.suffix==`function`)return e.option.suffix();let n=e.option,r=u.value.actions.filter(e=>!e.show||e.show(n));return r.length?p(`span`,{class:`tree-actions`,onClick:e=>e.stopPropagation()},r.map(e=>{let r=r=>p(k,{size:`tiny`,type:e.type??`default`,quaternary:!0,disabled:!!(o.value.disabled||n[o.value.disabledField??`disabled`]),"aria-label":e.text||e.key,title:e.text,onClick:t=>{t.stopPropagation(),r||q(e.key,n)}},{icon:()=>p(t,{name:e.icon,size:14})});return e.confirm?p(j,{onPositiveClick:()=>q(e.key,n)},{trigger:()=>r(!0),default:()=>e.confirm}):r(!1)})):null},Y=!0;f()&&v(()=>{Y=!1});let X=r(()=>{let e=o.value.onLoad;if(e)return async t=>{try{return await e(t)}catch(e){let n=t[d.value],r=typeof n==`string`||typeof n==`number`?g.value.nodes.get(n):void 0;return Y&&r&&w(r)===w(t)&&i(`load-error`,e,t),!1}}}),ee=r(()=>{if(!n.data.length)return!1;let e=I.value;if(!o.value.virtualScroll||!e||o.value.showIrrelevantNodes!==!1)return!0;let t=e.toLowerCase(),r=o.value.filter??((e,n)=>{let r=n[m.value];return typeof r==`string`&&r.toLowerCase().includes(t)});for(let t of g.value.nodes.values())if(r(e,t))return!0;return!1}),Z=S(),te=r(()=>e(n.density)),ne=r(()=>({...o.value,data:n.data,virtualScroll:!!(o.value.virtualScroll&&ee.value),keyField:d.value,labelField:m.value,childrenField:h.value,draggable:u.value.draggable,showLine:u.value.showLine,blockLine:o.value.blockLine??!0,blockNode:o.value.blockNode??!0,pattern:I.value,expandedKeys:O.value,selectedKeys:A.value,checkedKeys:N.value,renderPrefix:G,renderLabel:K,renderSuffix:J,themeOverrides:{nodeHeight:n.density===`compact`?`28px`:n.density===`comfortable`?`40px`:`34px`,nodeWrapperPadding:`0`,...o.value.themeOverrides},onLoad:X.value,onUpdateExpandedKeys:void 0,onUpdateSelectedKeys:void 0,onUpdateCheckedKeys:void 0,"onUpdate:expandedKeys":V,"onUpdate:selectedKeys":H,"onUpdate:checkedKeys":U,onDrop:e=>{i(`node-drop`,e),B(`onDrop`,[e])}})),re=()=>L.value?$():Q(),Q=()=>{V([...g.value.expandableKeys]),y.value=!0},$=()=>V([],[],{node:null,action:`collapse`}),ie=()=>i(`add`),ae=()=>i(`refresh`),oe={expandAll:Q,collapseAll:$,selectNode:e=>H([e]),clearSelection:()=>H([]),setCheckedKeys:e=>U([...e]),clearChecked:()=>U([]),getSelectedNode:()=>W.value,getCheckedData:()=>Z.value?.getCheckedData()??{keys:[...N.value],options:z(N.value)},getIndeterminateData:()=>Z.value?.getIndeterminateData()??{keys:[],options:[]},scrollTo:(...e)=>{let t=Z.value?.scrollTo;t?.(...e)},expandedKeys:O,selectedKeys:A,checkedKeys:N};return{internalSearchPattern:P,expandedKeys:O,selectedKeys:A,checkedKeys:N,isAllExpanded:L,treeData:r(()=>n.data),currentSearchPattern:I,renderPrefix:G,renderLabel:K,renderSuffix:J,treeBindings:ne,treeRef:Z,density:te,toggleExpandAll:re,handleExpandedKeysChange:V,handleSelectedKeysChange:H,handleCheckedKeysChange:U,handleDrop:e=>i(`node-drop`,e),handleAdd:ie,handleRefresh:ae,expose:oe}}const B={key:0,class:`c-tree-toolbar`},V={class:`toolbar-left`},H={class:`toolbar-right`},U={class:`c-tree-container`};var W=n(d({name:`C_Tree`,__name:`index`,props:{data:{},mode:{default:`custom`},treeProps:{},density:{default:`default`},keyField:{},labelField:{},childrenField:{},searchPattern:{},searchable:{type:Boolean,default:!0},searchPlaceholder:{default:`搜索...`},draggable:{type:Boolean,default:void 0},showLine:{type:Boolean,default:void 0},showToolbar:{type:Boolean,default:!0},addable:{type:Boolean,default:!0},addText:{default:`新增`},refreshable:{type:Boolean,default:!0},iconField:{},iconConfig:{},statusConfigs:{},actions:{},defaultExpandAll:{type:Boolean,default:void 0},defaultExpandedKeys:{},defaultSelectedKeys:{},defaultCheckedKeys:{},expandedKeys:{},selectedKeys:{},checkedKeys:{}},emits:[`update:searchPattern`,`update:expandedKeys`,`update:selectedKeys`,`update:checkedKeys`,`node-select`,`node-action`,`node-drop`,`load-error`,`add`,`refresh`],setup(e,{expose:n,emit:d}){let f=e,p=d,v=E(),b=P(),S=r(()=>({"--c-tree-border":b.value.borderColor,"--c-tree-surface":b.value.actionColor,"--c-tree-radius":b.value.borderRadius})),{currentSearchPattern:w,isAllExpanded:D,treeBindings:j,treeRef:M,density:F,toggleExpandAll:I,handleAdd:L,handleRefresh:R,expose:W}=z(f,p,v);return n(W),(n,r)=>(y(),o(`div`,{class:g([`c-tree`,[`c-tree--${T(F).density}`,{"c-tree--virtual":T(j).virtualScroll}]]),style:_(S.value)},[e.showToolbar?(y(),o(`div`,B,[s(`div`,V,[e.searchable?(y(),i(T(A),{key:0,value:T(w),"onUpdate:value":r[0]||=e=>m(w)?w.value=e:null,size:T(F).size,placeholder:e.searchPlaceholder,"input-props":{"aria-label":`搜索树节点`},clearable:``,class:`search-input`},{prefix:O(()=>[u(t,{name:`mdi:magnify`,size:16})]),_:1},8,[`value`,`size`,`placeholder`])):a(`v-if`,!0)]),s(`div`,H,[x(n.$slots,`toolbar-actions`,{},()=>[e.addable?(y(),i(T(k),{key:0,type:`primary`,size:T(F).size,onClick:r[1]||=e=>T(L)()},{icon:O(()=>[u(t,{name:`mdi:plus`,size:16})]),default:O(()=>[l(` `+C(e.addText),1)]),_:1},8,[`size`])):a(`v-if`,!0),u(T(k),{size:T(F).size,disabled:!e.data.length,"aria-pressed":T(D),onClick:T(I)},{icon:O(()=>[u(t,{name:`mdi:file-tree`,size:16})]),default:O(()=>[l(` `+C(T(D)?`收起全部`:`展开全部`),1)]),_:1},8,[`size`,`disabled`,`aria-pressed`,`onClick`]),e.refreshable?(y(),i(T(k),{key:1,size:T(F).size,onClick:T(R)},{icon:O(()=>[u(t,{name:`mdi:refresh`,size:16})]),default:O(()=>[r[2]||=l(` 刷新 `,-1)]),_:1},8,[`size`,`onClick`])):a(`v-if`,!0)],!0)])])):a(`v-if`,!0),s(`div`,U,[u(T(N),h({ref_key:`treeRef`,ref:M},T(j),{class:`tree-instance`}),c({_:2},[n.$slots.empty?{name:`empty`,fn:O(()=>[x(n.$slots,`empty`,{},void 0,!0)]),key:`0`}:void 0]),1040)])],6))}}),[[`__scopeId`,`data-v-76801f3f`]]);export{z as n,F as r,W as t};
|
|
1
|
+
import{t as e}from"./density.js";import{t}from"./C_Icon2.js";import{t as n}from"./export-helper.js";import{computed as r,createBlock as i,createCommentVNode as a,createElementBlock as o,createElementVNode as s,createSlots as c,createTextVNode as l,createVNode as u,defineComponent as d,getCurrentScope as f,h as p,isRef as m,mergeProps as h,normalizeClass as g,normalizeStyle as _,onScopeDispose as v,openBlock as y,ref as b,renderSlot as x,shallowRef as S,toDisplayString as C,toRaw as w,unref as T,useSlots as E,watch as D,withCtx as O}from"vue";import{NButton as k,NInput as A,NPopconfirm as j,NTag as M,NTree as N,useThemeVars as P}from"naive-ui";const F={menu:{draggable:!0,showLine:!0,iconConfig:{typeMap:{directory:`mdi:folder`,menu:`mdi:file-document`,button:`mdi:button-cursor`}},actions:[{key:`add`,text:`新增子菜单`,icon:`mdi:plus`,type:`primary`},{key:`edit`,text:`编辑`,icon:`mdi:pencil`,type:`info`},{key:`delete`,text:`删除`,icon:`mdi:delete`,type:`error`,confirm:`确认删除该菜单吗?`}]},file:{draggable:!1,showLine:!1,iconConfig:{typeMap:{folder:`mdi:folder`,file:`mdi:file-document`,image:`mdi:file-image`,video:`mdi:file-video`,audio:`mdi:file-music`}},actions:[{key:`open`,text:`打开`,icon:`mdi:folder-open`,type:`primary`},{key:`rename`,text:`重命名`,icon:`mdi:rename-box`,type:`info`},{key:`delete`,text:`删除`,icon:`mdi:delete`,type:`error`,confirm:`确认删除该文件吗?`}]},org:{draggable:!1,showLine:!0,iconConfig:{typeMap:{department:`mdi:domain`,user:`mdi:account`,manager:`mdi:account-tie`}},actions:[{key:`add`,text:`新增下级`,icon:`mdi:plus`,type:`primary`},{key:`edit`,text:`编辑`,icon:`mdi:pencil`,type:`info`}]},custom:{}},I=e=>typeof e==`string`||typeof e==`number`,L=e=>!!e&&typeof e==`object`;function R(e,t,n,r){let i=new Map,a=new Set,o=new WeakSet,s=[],c=e=>{for(let t=e.length-1;t>=0;t--)s.push(e[t])};for(c(e);s.length;){let e=s.pop();if(!L(e)||o.has(e))continue;o.add(e);let l=Reflect.get(e,t),u=I(l);u&&!i.has(l)&&i.set(l,e);let d=r?r(e):Reflect.get(e,n);Array.isArray(d)&&d.length&&(u&&a.add(l),c(d))}return{nodes:i,expandableKeys:[...a]}}function z(n,i,a={}){let o=r(()=>n.treeProps??{}),s=r(()=>F[n.mode??`custom`]),c=r(()=>n.draggable??o.value.draggable??s.value.draggable??!1),l=r(()=>n.showLine??o.value.showLine??s.value.showLine??!0),u=r(()=>n.actions??s.value.actions??[]),d=r(()=>({...s.value,...n,draggable:c.value,showLine:l.value,iconConfig:{default:`mdi:circle-outline`,...s.value.iconConfig,...n.iconConfig,typeMap:{...s.value.iconConfig?.typeMap,...n.iconConfig?.typeMap},colorMap:{...s.value.iconConfig?.colorMap,...n.iconConfig?.colorMap}},actions:u.value})),m=r(()=>n.keyField??o.value.keyField??`id`),h=r(()=>n.labelField??o.value.labelField??`name`),g=r(()=>n.childrenField??o.value.childrenField??`children`),_=r(()=>R(n.data,m.value,g.value,o.value.getChildren)),y=()=>n.defaultExpandAll??o.value.defaultExpandAll??!1,x=b(y()),C=e=>{let t=`default${e}Keys`;return[...n[t]??o.value[t]??[]]},T=b(y()?_.value.expandableKeys:C(`Expanded`)),E=b(C(`Selected`)),O=b(C(`Checked`)),A=r({get:()=>n.expandedKeys??o.value.expandedKeys??T.value,set:e=>H(e)}),N=r({get:()=>n.selectedKeys??o.value.selectedKeys??E.value,set:e=>U(e)}),P=r({get:()=>n.checkedKeys??o.value.checkedKeys??O.value,set:e=>W(e)}),I=b(``),L=r({get:()=>n.searchPattern??o.value.pattern??I.value,set:e=>{I.value=e,i(`update:searchPattern`,e)}}),z=r(()=>{let e=_.value.expandableKeys,t=new Set(A.value);return e.length>0&&e.every(e=>t.has(e))});D(()=>_.value.expandableKeys,e=>{x.value&&(T.value=[...e])}),D(y,e=>{x.value=e,e&&(T.value=[..._.value.expandableKeys])});for(let[e,t]of[[`Expanded`,T],[`Selected`,E],[`Checked`,O]]){let r=`default${e}Keys`;D(()=>n[r]??o.value[r],n=>{o.value.watchProps?.includes(r)&&(t.value=e===`Expanded`&&y()?[..._.value.expandableKeys]:[...n??[]])})}let B=e=>e.map(e=>_.value.nodes.get(e)??null),V=(e,t)=>{let n=o.value[e],r=Array.isArray(n)?n:[n];for(let e of r)typeof e==`function`&&e(...t)},H=(e,t=B(e),n={node:null,action:`expand`})=>{n.action!==`filter`&&(x.value=!1),T.value=[...e],i(`update:expandedKeys`,e,t,n),V(`onUpdateExpandedKeys`,[e,t,n]),V(`onUpdate:expandedKeys`,[e,t,n])},U=(e,t=B(e),n={node:t[0]??null,action:e.length?`select`:`unselect`})=>{E.value=[...e],i(`update:selectedKeys`,e,t,n),i(`node-select`,t[0]??null,e),V(`onUpdateSelectedKeys`,[e,t,n]),V(`onUpdate:selectedKeys`,[e,t,n])},W=(e,t=B(e),n={node:null,action:e.length?`check`:`uncheck`})=>{O.value=[...e],i(`update:checkedKeys`,e,t,n),V(`onUpdateCheckedKeys`,[e,t,n]),V(`onUpdate:checkedKeys`,[e,t,n])},G=r(()=>_.value.nodes.get(N.value[0])??null),K=e=>{if(a.prefix)return a.prefix(e);if(o.value.renderPrefix)return o.value.renderPrefix(e);let r=Reflect.get(e.option,`prefix`);if(typeof r==`function`)return r();let i=e.option,s=d.value.iconConfig,c=Reflect.get(i,`type`),l=typeof c==`string`?c:``,u=Reflect.get(i,n.iconField??`icon`);return p(t,{name:typeof u==`string`?u:s.typeMap[l]??s.default,size:16,color:s.colorMap[l]??`currentColor`,class:`c-tree-node-icon`})},q=e=>{if(a.label)return a.label(e);if(o.value.renderLabel)return o.value.renderLabel(e);let t=String(Reflect.get(e.option,h.value)??``);return p(`span`,{class:`c-tree-node-label`},[p(`span`,{class:`c-tree-node-title`,title:t},t),...(n.statusConfigs??[]).flatMap(t=>{let n=Reflect.get(e.option,t.field),r=typeof n==`number`||typeof n==`string`?t.values[n]:void 0;return r?.text?[p(M,{type:r.type,size:`small`,class:`c-tree-node-status`},{default:()=>r.text})]:[]})])},J=(e,t)=>{e===`add`?i(`add`,t):i(`node-action`,e,t)},Y=e=>{if(a.suffix)return a.suffix(e);if(o.value.renderSuffix)return o.value.renderSuffix(e);let n=Reflect.get(e.option,`suffix`);if(typeof n==`function`)return n();let r=e.option,i=d.value.actions.filter(e=>!e.show||e.show(r));return i.length?p(`span`,{class:`tree-actions`,onClick:e=>e.stopPropagation()},i.map(e=>{let n=n=>p(k,{size:`tiny`,type:e.type??`default`,quaternary:!0,disabled:!!(o.value.disabled||Reflect.get(r,o.value.disabledField??`disabled`)),"aria-label":e.text||e.key,title:e.text,onClick:t=>{t.stopPropagation(),n||J(e.key,r)}},{icon:()=>p(t,{name:e.icon,size:14})});return e.confirm?p(j,{onPositiveClick:()=>J(e.key,r)},{trigger:()=>n(!0),default:()=>e.confirm}):n(!1)})):null},X=!0;f()&&v(()=>{X=!1});let ee=r(()=>{let e=o.value.onLoad;if(e)return async t=>{try{return await e(t)}catch(e){let n=Reflect.get(t,m.value),r=typeof n==`string`||typeof n==`number`?_.value.nodes.get(n):void 0;return X&&r&&w(r)===w(t)&&i(`load-error`,e,t),!1}}}),te=r(()=>{if(!n.data.length)return!1;let e=L.value;if(!o.value.virtualScroll||!e||o.value.showIrrelevantNodes!==!1)return!0;let t=e.toLowerCase(),r=o.value.filter??((e,n)=>{let r=Reflect.get(n,h.value);return typeof r==`string`&&r.toLowerCase().includes(t)});for(let t of _.value.nodes.values())if(r(e,t))return!0;return!1}),Z=S(),ne=r(()=>e(n.density)),re=r(()=>({...o.value,data:n.data,virtualScroll:!!(o.value.virtualScroll&&te.value),keyField:m.value,labelField:h.value,childrenField:g.value,draggable:d.value.draggable,showLine:d.value.showLine,blockLine:o.value.blockLine??!0,blockNode:o.value.blockNode??!0,pattern:L.value,expandedKeys:A.value,selectedKeys:N.value,checkedKeys:P.value,renderPrefix:K,renderLabel:q,renderSuffix:Y,themeOverrides:{nodeHeight:n.density===`compact`?`28px`:n.density===`comfortable`?`40px`:`34px`,nodeWrapperPadding:`0`,...o.value.themeOverrides},onLoad:ee.value,onUpdateExpandedKeys:void 0,onUpdateSelectedKeys:void 0,onUpdateCheckedKeys:void 0,"onUpdate:expandedKeys":H,"onUpdate:selectedKeys":U,"onUpdate:checkedKeys":W,onDrop:e=>{i(`node-drop`,e),V(`onDrop`,[e])}})),ie=()=>z.value?$():Q(),Q=()=>{H([..._.value.expandableKeys]),x.value=!0},$=()=>H([],[],{node:null,action:`collapse`}),ae=()=>i(`add`),oe=()=>i(`refresh`),se={expandAll:Q,collapseAll:$,selectNode:e=>U([e]),clearSelection:()=>U([]),setCheckedKeys:e=>W([...e]),clearChecked:()=>W([]),getSelectedNode:()=>G.value,getCheckedData:()=>{let e=Z.value?.getCheckedData();return e?{keys:e.keys,options:e.options}:{keys:[...P.value],options:B(P.value)}},getIndeterminateData:()=>{let e=Z.value?.getIndeterminateData();return e?{keys:e.keys,options:e.options}:{keys:[],options:[]}},scrollTo:(...e)=>{let t=Z.value?.scrollTo;t?.(...e)},expandedKeys:A,selectedKeys:N,checkedKeys:P};return{internalSearchPattern:I,expandedKeys:A,selectedKeys:N,checkedKeys:P,isAllExpanded:z,treeData:r(()=>n.data),currentSearchPattern:L,renderPrefix:K,renderLabel:q,renderSuffix:Y,treeBindings:re,treeRef:Z,density:ne,toggleExpandAll:ie,handleExpandedKeysChange:H,handleSelectedKeysChange:U,handleCheckedKeysChange:W,handleDrop:e=>i(`node-drop`,e),handleAdd:ae,handleRefresh:oe,expose:se}}const B={key:0,class:`c-tree-toolbar`},V={class:`toolbar-left`},H={class:`toolbar-right`},U={class:`c-tree-container`};var W=n(d({name:`C_Tree`,__name:`index`,props:{data:{},mode:{default:`custom`},treeProps:{},density:{default:`default`},keyField:{},labelField:{},childrenField:{},searchPattern:{},searchable:{type:Boolean,default:!0},searchPlaceholder:{default:`搜索...`},draggable:{type:Boolean,default:void 0},showLine:{type:Boolean,default:void 0},showToolbar:{type:Boolean,default:!0},addable:{type:Boolean,default:!0},addText:{default:`新增`},refreshable:{type:Boolean,default:!0},iconField:{},iconConfig:{},statusConfigs:{},actions:{},defaultExpandAll:{type:Boolean,default:void 0},defaultExpandedKeys:{},defaultSelectedKeys:{},defaultCheckedKeys:{},expandedKeys:{},selectedKeys:{},checkedKeys:{}},emits:[`update:searchPattern`,`update:expandedKeys`,`update:selectedKeys`,`update:checkedKeys`,`node-select`,`node-action`,`node-drop`,`load-error`,`add`,`refresh`],setup(e,{expose:n,emit:d}){let f=e,p=d,v=E(),b=P(),S=r(()=>({"--c-tree-border":b.value.borderColor,"--c-tree-surface":b.value.actionColor,"--c-tree-radius":b.value.borderRadius})),{currentSearchPattern:w,isAllExpanded:D,treeBindings:j,treeRef:M,density:F,toggleExpandAll:I,handleAdd:L,handleRefresh:R,expose:W}=z(f,p,v);return n(W),(n,r)=>(y(),o(`div`,{class:g([`c-tree`,[`c-tree--${T(F).density}`,{"c-tree--virtual":T(j).virtualScroll}]]),style:_(S.value)},[e.showToolbar?(y(),o(`div`,B,[s(`div`,V,[e.searchable?(y(),i(T(A),{key:0,value:T(w),"onUpdate:value":r[0]||=e=>m(w)?w.value=e:null,size:T(F).size,placeholder:e.searchPlaceholder,"input-props":{"aria-label":`搜索树节点`},clearable:``,class:`search-input`},{prefix:O(()=>[u(t,{name:`mdi:magnify`,size:16})]),_:1},8,[`value`,`size`,`placeholder`])):a(`v-if`,!0)]),s(`div`,H,[x(n.$slots,`toolbar-actions`,{},()=>[e.addable?(y(),i(T(k),{key:0,type:`primary`,size:T(F).size,onClick:r[1]||=e=>T(L)()},{icon:O(()=>[u(t,{name:`mdi:plus`,size:16})]),default:O(()=>[l(` `+C(e.addText),1)]),_:1},8,[`size`])):a(`v-if`,!0),u(T(k),{size:T(F).size,disabled:!e.data.length,"aria-pressed":T(D),onClick:T(I)},{icon:O(()=>[u(t,{name:`mdi:file-tree`,size:16})]),default:O(()=>[l(` `+C(T(D)?`收起全部`:`展开全部`),1)]),_:1},8,[`size`,`disabled`,`aria-pressed`,`onClick`]),e.refreshable?(y(),i(T(k),{key:1,size:T(F).size,onClick:T(R)},{icon:O(()=>[u(t,{name:`mdi:refresh`,size:16})]),default:O(()=>[r[2]||=l(` 刷新 `,-1)]),_:1},8,[`size`,`onClick`])):a(`v-if`,!0)],!0)])])):a(`v-if`,!0),s(`div`,U,[u(T(N),h({ref_key:`treeRef`,ref:M},T(j),{class:`tree-instance`}),c({_:2},[n.$slots.empty?{name:`empty`,fn:O(()=>[x(n.$slots,`empty`,{},void 0,!0)]),key:`0`}:void 0]),1040)])],6))}}),[[`__scopeId`,`data-v-7a932d60`]]);export{z as n,F as r,W as t};
|
package/dist/C_VtableGantt.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`./C_Icon2.cjs`);const e=require(`./
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`./C_Icon2.cjs`);const e=require(`./graphics.cjs`),t=e.n;exports.C_VtableGantt=t,exports.appendGanttGroup=e.t,exports.ganttPresetConfigs=e.r;
|
package/dist/C_VtableGantt.css
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
:root{--c-primary: var(--primary-color, #2080f0);--c-primary-hover: var(--primary-color-hover, #4098fc);--c-primary-pressed: var(--primary-color-pressed, #1060c9);--c-success: var(--success-color, #18a058);--c-warning: var(--warning-color, #f0a020);--c-error: var(--error-color, #d03050);--c-info: var(--info-color, #2080f0);--c-bg-body: var(--body-color, #ffffff);--c-bg-card: var(--card-color, #ffffff);--c-bg-surface: var(--popover-color, #ffffff);--c-text-1: var(--text-color-1, #262626);--c-text-2: var(--text-color-2, #525252);--c-text-3: var(--text-color-3, #a3a3a3);--c-text-4: var(--text-color-4, #c0c0c0);--c-border: var(--border-color, #e5e7eb);--c-radius-sm: var(--border-radius-small, 4px);--c-radius: var(--border-radius, 6px);--c-transition-fast: 0.15s cubic-bezier(0.4, 0, 0.2, 1);--c-transition-base: 0.3s cubic-bezier(0.4, 0, 0.2, 1);--c-shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.08);--c-shadow-md: 0 4px 6px rgba(0, 0, 0, 0.1);--c-shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.1)}
|
|
2
2
|
|
|
3
3
|
/* 甘特图组件样式 */
|
|
4
|
-
.c-vtable-gantt-wrapper[data-v-
|
|
4
|
+
.c-vtable-gantt-wrapper[data-v-f33bf002] {
|
|
5
5
|
display: flex;
|
|
6
6
|
flex-direction: column;
|
|
7
7
|
border: 1px solid var(--c-border, #e1e4e8);
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
|
|
11
11
|
height: 100%;
|
|
12
12
|
}
|
|
13
|
-
.c-vtable-gantt-wrapper .gantt-toolbar[data-v-
|
|
13
|
+
.c-vtable-gantt-wrapper .gantt-toolbar[data-v-f33bf002] {
|
|
14
14
|
display: flex;
|
|
15
15
|
justify-content: space-between;
|
|
16
16
|
align-items: center;
|
|
@@ -19,24 +19,24 @@
|
|
|
19
19
|
min-height: 48px;
|
|
20
20
|
flex-shrink: 0;
|
|
21
21
|
}
|
|
22
|
-
.c-vtable-gantt-wrapper .gantt-toolbar .toolbar-left .gantt-title[data-v-
|
|
22
|
+
.c-vtable-gantt-wrapper .gantt-toolbar .toolbar-left .gantt-title[data-v-f33bf002] {
|
|
23
23
|
font-size: 16px;
|
|
24
24
|
font-weight: 600;
|
|
25
25
|
color: var(--c-text-1, #333);
|
|
26
26
|
}
|
|
27
|
-
.c-vtable-gantt-wrapper .gantt-toolbar .toolbar-right[data-v-
|
|
27
|
+
.c-vtable-gantt-wrapper .gantt-toolbar .toolbar-right[data-v-f33bf002] {
|
|
28
28
|
display: flex;
|
|
29
29
|
gap: 8px;
|
|
30
30
|
align-items: center;
|
|
31
31
|
}
|
|
32
|
-
.c-vtable-gantt-wrapper .gantt-body[data-v-
|
|
32
|
+
.c-vtable-gantt-wrapper .gantt-body[data-v-f33bf002] {
|
|
33
33
|
position: relative;
|
|
34
34
|
display: flex;
|
|
35
35
|
flex-direction: column;
|
|
36
36
|
flex: 1;
|
|
37
37
|
min-height: 0;
|
|
38
38
|
}
|
|
39
|
-
.c-vtable-gantt-wrapper .gantt-error[data-v-
|
|
39
|
+
.c-vtable-gantt-wrapper .gantt-error[data-v-f33bf002] {
|
|
40
40
|
position: absolute;
|
|
41
41
|
inset: 0;
|
|
42
42
|
display: flex;
|
|
@@ -44,65 +44,65 @@
|
|
|
44
44
|
justify-content: center;
|
|
45
45
|
background: var(--c-bg-body, #fff);
|
|
46
46
|
}
|
|
47
|
-
.c-vtable-gantt-wrapper .gantt-container[data-v-
|
|
47
|
+
.c-vtable-gantt-wrapper .gantt-container[data-v-f33bf002] {
|
|
48
48
|
flex: 1;
|
|
49
49
|
position: relative;
|
|
50
50
|
min-height: 400px;
|
|
51
51
|
overflow: hidden;
|
|
52
52
|
/* 确保甘特图组件完全填充容器 */
|
|
53
53
|
}
|
|
54
|
-
.c-vtable-gantt-wrapper .gantt-container[data-v-
|
|
54
|
+
.c-vtable-gantt-wrapper .gantt-container[data-v-f33bf002] > * {
|
|
55
55
|
width: 100%;
|
|
56
56
|
height: 100%;
|
|
57
57
|
}
|
|
58
|
-
.c-vtable-gantt-wrapper .gantt-container[data-v-
|
|
58
|
+
.c-vtable-gantt-wrapper .gantt-container[data-v-f33bf002] {
|
|
59
59
|
/* 确保甘特图内部组件正确填充 */
|
|
60
60
|
}
|
|
61
|
-
.c-vtable-gantt-wrapper .gantt-container[data-v-
|
|
61
|
+
.c-vtable-gantt-wrapper .gantt-container[data-v-f33bf002] .vtable-gantt {
|
|
62
62
|
width: 100% !important;
|
|
63
63
|
height: 100% !important;
|
|
64
64
|
overflow: hidden;
|
|
65
65
|
}
|
|
66
|
-
.c-vtable-gantt-wrapper .gantt-container[data-v-
|
|
66
|
+
.c-vtable-gantt-wrapper .gantt-container[data-v-f33bf002] .vtable-gantt * {
|
|
67
67
|
backface-visibility: hidden;
|
|
68
68
|
transform: translateZ(0);
|
|
69
69
|
-webkit-font-smoothing: subpixel-antialiased;
|
|
70
70
|
}
|
|
71
|
-
.c-vtable-gantt-wrapper .gantt-container[data-v-
|
|
71
|
+
.c-vtable-gantt-wrapper .gantt-container[data-v-f33bf002] {
|
|
72
72
|
/* 防止内部表格自动调整高度 */
|
|
73
73
|
}
|
|
74
|
-
.c-vtable-gantt-wrapper .gantt-container[data-v-
|
|
74
|
+
.c-vtable-gantt-wrapper .gantt-container[data-v-f33bf002] .vtable-gantt-table {
|
|
75
75
|
height: 100% !important;
|
|
76
76
|
box-sizing: border-box;
|
|
77
77
|
}
|
|
78
|
-
.c-vtable-gantt-wrapper .gantt-container[data-v-
|
|
78
|
+
.c-vtable-gantt-wrapper .gantt-container[data-v-f33bf002] {
|
|
79
79
|
/* 防止拖动时底部色块闪烁 */
|
|
80
80
|
}
|
|
81
|
-
.c-vtable-gantt-wrapper .gantt-container[data-v-
|
|
81
|
+
.c-vtable-gantt-wrapper .gantt-container[data-v-f33bf002] .vtable-gantt-chart {
|
|
82
82
|
position: relative;
|
|
83
83
|
overflow: hidden;
|
|
84
84
|
will-change: transform;
|
|
85
85
|
transform: translateZ(0);
|
|
86
86
|
}
|
|
87
|
-
.c-vtable-gantt-wrapper .gantt-container[data-v-
|
|
87
|
+
.c-vtable-gantt-wrapper .gantt-container[data-v-f33bf002] {
|
|
88
88
|
/* 针对拖动元素的优化 */
|
|
89
89
|
}
|
|
90
|
-
.c-vtable-gantt-wrapper .gantt-container[data-v-
|
|
90
|
+
.c-vtable-gantt-wrapper .gantt-container[data-v-f33bf002] .vtable-gantt-task {
|
|
91
91
|
backface-visibility: hidden;
|
|
92
92
|
transform: translateZ(0);
|
|
93
93
|
}
|
|
94
|
-
.c-vtable-gantt-wrapper .gantt-container[data-v-
|
|
94
|
+
.c-vtable-gantt-wrapper .gantt-container[data-v-f33bf002] .vtable-gantt-task.dragging {
|
|
95
95
|
z-index: 1000;
|
|
96
96
|
pointer-events: none;
|
|
97
97
|
}
|
|
98
|
-
.c-vtable-gantt-wrapper .gantt-container[data-v-
|
|
98
|
+
.c-vtable-gantt-wrapper .gantt-container[data-v-f33bf002] {
|
|
99
99
|
/* 防止拖动时底部区域的重绘闪烁 */
|
|
100
100
|
}
|
|
101
|
-
.c-vtable-gantt-wrapper .gantt-container[data-v-
|
|
101
|
+
.c-vtable-gantt-wrapper .gantt-container[data-v-f33bf002] .vtable-gantt-chart-container {
|
|
102
102
|
position: relative;
|
|
103
103
|
overflow: hidden;
|
|
104
104
|
}
|
|
105
|
-
.c-vtable-gantt-wrapper .gantt-container[data-v-
|
|
105
|
+
.c-vtable-gantt-wrapper .gantt-container[data-v-f33bf002] .vtable-gantt-chart-container::after {
|
|
106
106
|
content: "";
|
|
107
107
|
position: absolute;
|
|
108
108
|
bottom: 0;
|
|
@@ -114,24 +114,24 @@
|
|
|
114
114
|
}
|
|
115
115
|
|
|
116
116
|
/* layer: shortcuts */
|
|
117
|
-
.container[data-v-
|
|
117
|
+
.container[data-v-f33bf002]{width:100%;}
|
|
118
118
|
@media (min-width: 640px){
|
|
119
|
-
.container[data-v-
|
|
119
|
+
.container[data-v-f33bf002]{max-width:640px;}
|
|
120
120
|
}
|
|
121
121
|
@media (min-width: 768px){
|
|
122
|
-
.container[data-v-
|
|
122
|
+
.container[data-v-f33bf002]{max-width:768px;}
|
|
123
123
|
}
|
|
124
124
|
@media (min-width: 1024px){
|
|
125
|
-
.container[data-v-
|
|
125
|
+
.container[data-v-f33bf002]{max-width:1024px;}
|
|
126
126
|
}
|
|
127
127
|
@media (min-width: 1280px){
|
|
128
|
-
.container[data-v-
|
|
128
|
+
.container[data-v-f33bf002]{max-width:1280px;}
|
|
129
129
|
}
|
|
130
130
|
@media (min-width: 1536px){
|
|
131
|
-
.container[data-v-
|
|
131
|
+
.container[data-v-f33bf002]{max-width:1536px;}
|
|
132
132
|
}
|
|
133
133
|
/* layer: default */
|
|
134
|
-
.visible[data-v-
|
|
135
|
-
.grid[data-v-
|
|
136
|
-
.table[data-v-
|
|
137
|
-
.px[data-v-
|
|
134
|
+
.visible[data-v-f33bf002]{visibility:visible;}
|
|
135
|
+
.grid[data-v-f33bf002]{display:grid;}
|
|
136
|
+
.table[data-v-f33bf002]{display:table;}
|
|
137
|
+
.px[data-v-f33bf002]{padding-left:1rem;padding-right:1rem;}
|
package/dist/C_VtableGantt.d.cts
CHANGED
|
@@ -1,2 +1,18 @@
|
|
|
1
|
-
import { a as
|
|
2
|
-
|
|
1
|
+
import { _ as GanttTimelineContext, a as GanttExpose, c as GanttProps, d as GanttTaskBarLayout, f as GanttTaskCellContext, g as GanttTaskRecord, h as GanttTaskNodeRecord, i as GanttEmits, l as GanttTask, m as GanttTaskChanges, n as presetConfigs, o as GanttOptions, p as GanttTaskCellLayout, r as GanttClickEvent, s as GanttPreset, t as appendGanttGroup, u as GanttTaskBarContext, v as GanttTimelineLayout } from "./graphics.cjs";
|
|
2
|
+
import { AllowedComponentProps, ComponentCustomProps, EmitFn, VNode, VNodeProps } from "vue";
|
|
3
|
+
|
|
4
|
+
//#region src/components/C_VtableGantt/index.d.ts
|
|
5
|
+
type Listeners<T extends GanttTask> = { [E in keyof GanttEmits<T> as `on${Capitalize<E>}`]?: (...args: GanttEmits<T>[E]) => void };
|
|
6
|
+
/** 公开声明复用命名契约,避免生成器重复展开后代联合;运行时组件保持原对象。 */
|
|
7
|
+
type GanttComponent = <T extends GanttTask = GanttTask>(props: GanttProps<T> & Listeners<T> & VNodeProps & AllowedComponentProps & ComponentCustomProps) => VNode & {
|
|
8
|
+
__ctx?: {
|
|
9
|
+
props: GanttProps<T> & Listeners<T>;
|
|
10
|
+
emit: EmitFn<GanttEmits<T>>;
|
|
11
|
+
attrs: Record<string, unknown>;
|
|
12
|
+
slots: Record<string, never>;
|
|
13
|
+
expose: (exposed: GanttExpose<T>) => void;
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
declare const C_VtableGantt: GanttComponent;
|
|
17
|
+
//#endregion
|
|
18
|
+
export { C_VtableGantt, type GanttClickEvent, type GanttEmits, type GanttExpose, type GanttOptions, type GanttPreset, type GanttProps, type GanttTask, type GanttTaskBarContext, type GanttTaskBarLayout, type GanttTaskCellContext, type GanttTaskCellLayout, type GanttTaskChanges, type GanttTaskNodeRecord, type GanttTaskRecord, type GanttTimelineContext, type GanttTimelineLayout, appendGanttGroup, presetConfigs as ganttPresetConfigs };
|
package/dist/C_VtableGantt.d.ts
CHANGED
|
@@ -1,2 +1,18 @@
|
|
|
1
|
-
import { a as
|
|
2
|
-
|
|
1
|
+
import { _ as GanttTimelineContext, a as GanttExpose, c as GanttProps, d as GanttTaskBarLayout, f as GanttTaskCellContext, g as GanttTaskRecord, h as GanttTaskNodeRecord, i as GanttEmits, l as GanttTask, m as GanttTaskChanges, n as presetConfigs, o as GanttOptions, p as GanttTaskCellLayout, r as GanttClickEvent, s as GanttPreset, t as appendGanttGroup, u as GanttTaskBarContext, v as GanttTimelineLayout } from "./graphics.js";
|
|
2
|
+
import { AllowedComponentProps, ComponentCustomProps, EmitFn, VNode, VNodeProps } from "vue";
|
|
3
|
+
|
|
4
|
+
//#region src/components/C_VtableGantt/index.d.ts
|
|
5
|
+
type Listeners<T extends GanttTask> = { [E in keyof GanttEmits<T> as `on${Capitalize<E>}`]?: (...args: GanttEmits<T>[E]) => void };
|
|
6
|
+
/** 公开声明复用命名契约,避免生成器重复展开后代联合;运行时组件保持原对象。 */
|
|
7
|
+
type GanttComponent = <T extends GanttTask = GanttTask>(props: GanttProps<T> & Listeners<T> & VNodeProps & AllowedComponentProps & ComponentCustomProps) => VNode & {
|
|
8
|
+
__ctx?: {
|
|
9
|
+
props: GanttProps<T> & Listeners<T>;
|
|
10
|
+
emit: EmitFn<GanttEmits<T>>;
|
|
11
|
+
attrs: Record<string, unknown>;
|
|
12
|
+
slots: Record<string, never>;
|
|
13
|
+
expose: (exposed: GanttExpose<T>) => void;
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
declare const C_VtableGantt: GanttComponent;
|
|
17
|
+
//#endregion
|
|
18
|
+
export { C_VtableGantt, type GanttClickEvent, type GanttEmits, type GanttExpose, type GanttOptions, type GanttPreset, type GanttProps, type GanttTask, type GanttTaskBarContext, type GanttTaskBarLayout, type GanttTaskCellContext, type GanttTaskCellLayout, type GanttTaskChanges, type GanttTaskNodeRecord, type GanttTaskRecord, type GanttTimelineContext, type GanttTimelineLayout, appendGanttGroup, presetConfigs as ganttPresetConfigs };
|
package/dist/C_VtableGantt.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./C_Icon2.js";import{n as e,t}from"./
|
|
1
|
+
import"./C_Icon2.js";import{n as e,r as t,t as n}from"./graphics.js";const r=e;export{r as C_VtableGantt,n as appendGanttGroup,t as ganttPresetConfigs};
|