@robot-admin/naive-ui-components 0.17.6 → 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.
Files changed (200) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/C_AntV.css +10 -10
  3. package/dist/C_AntV.d.cts +2 -2
  4. package/dist/C_AntV.d.ts +2 -2
  5. package/dist/C_AntV2.cjs +1 -1
  6. package/dist/C_AntV2.js +1 -1
  7. package/dist/C_Date.cjs +1 -1
  8. package/dist/C_Date.css +5 -5
  9. package/dist/C_Date.d.cts +18 -2
  10. package/dist/C_Date.d.ts +18 -2
  11. package/dist/C_Date.js +1 -1
  12. package/dist/C_Date2.cjs +1 -1
  13. package/dist/C_Date2.js +1 -1
  14. package/dist/C_Draggable.css +53 -53
  15. package/dist/C_Draggable.d.cts +2 -2
  16. package/dist/C_Draggable.d.ts +2 -2
  17. package/dist/C_Draggable2.cjs +1 -1
  18. package/dist/C_Draggable2.js +1 -1
  19. package/dist/C_Editor.d.cts +1 -1
  20. package/dist/C_Editor.d.ts +1 -1
  21. package/dist/C_FormModal.d.cts +1 -1
  22. package/dist/C_FormModal.d.ts +1 -1
  23. package/dist/C_FormSearch.cjs +1 -1
  24. package/dist/C_FormSearch.css +52 -52
  25. package/dist/C_FormSearch.d.cts +18 -2
  26. package/dist/C_FormSearch.d.ts +18 -2
  27. package/dist/C_FormSearch.js +1 -1
  28. package/dist/C_FormSearch2.cjs +1 -1
  29. package/dist/C_FormSearch2.js +1 -1
  30. package/dist/C_Guide.d.cts +1 -1
  31. package/dist/C_Guide.d.ts +1 -1
  32. package/dist/C_Icon.d.cts +1 -1
  33. package/dist/C_Icon.d.ts +1 -1
  34. package/dist/C_Language.d.cts +1 -1
  35. package/dist/C_Language.d.ts +1 -1
  36. package/dist/C_Loading.d.cts +1 -1
  37. package/dist/C_Loading.d.ts +1 -1
  38. package/dist/C_Login.d.cts +1 -1
  39. package/dist/C_Login.d.ts +1 -1
  40. package/dist/C_Markdown.d.cts +1 -1
  41. package/dist/C_Markdown.d.ts +1 -1
  42. package/dist/C_Menu.d.ts +1 -1
  43. package/dist/C_OrgChart.d.cts +1 -1
  44. package/dist/C_OrgChart.d.ts +1 -1
  45. package/dist/C_Progress.d.cts +1 -1
  46. package/dist/C_Progress.d.ts +1 -1
  47. package/dist/C_Skeleton.d.cts +1 -1
  48. package/dist/C_Skeleton.d.ts +1 -1
  49. package/dist/C_Steps.d.cts +1 -1
  50. package/dist/C_Steps.d.ts +1 -1
  51. package/dist/C_Table.base.css +144 -155
  52. package/dist/C_Table.css +144 -155
  53. package/dist/C_Table.d.cts +2 -2
  54. package/dist/C_Table.d.ts +6 -6
  55. package/dist/C_TagsView.d.cts +1 -1
  56. package/dist/C_TagsView.d.ts +1 -1
  57. package/dist/C_Theme.d.cts +1 -1
  58. package/dist/C_Theme.d.ts +1 -1
  59. package/dist/C_Time.cjs +1 -1
  60. package/dist/C_Time.css +4 -4
  61. package/dist/C_Time.d.cts +18 -2
  62. package/dist/C_Time.d.ts +18 -2
  63. package/dist/C_Time.js +1 -1
  64. package/dist/C_Time2.cjs +1 -1
  65. package/dist/C_Time2.js +1 -1
  66. package/dist/C_Timeline.d.cts +1 -1
  67. package/dist/C_Timeline.d.ts +1 -1
  68. package/dist/C_Transfer.css +26 -26
  69. package/dist/C_Transfer.d.cts +2 -2
  70. package/dist/C_Transfer.d.ts +2 -2
  71. package/dist/C_Transfer2.cjs +1 -1
  72. package/dist/C_Transfer2.js +1 -1
  73. package/dist/C_Tree.css +23 -23
  74. package/dist/C_Tree.d.ts +4 -4
  75. package/dist/C_Tree2.cjs +1 -1
  76. package/dist/C_Tree2.js +1 -1
  77. package/dist/C_VtableGantt.cjs +1 -1
  78. package/dist/C_VtableGantt.css +31 -31
  79. package/dist/C_VtableGantt.d.cts +18 -2
  80. package/dist/C_VtableGantt.d.ts +18 -2
  81. package/dist/C_VtableGantt.js +1 -1
  82. package/dist/C_WorkFlow.css +150 -150
  83. package/dist/C_WorkFlow.d.cts +2 -2
  84. package/dist/C_WorkFlow.d.ts +2 -2
  85. package/dist/C_WorkFlow2.cjs +1 -1
  86. package/dist/C_WorkFlow2.js +1 -1
  87. package/dist/constants3.d.cts +3 -3
  88. package/dist/constants3.d.ts +3 -3
  89. package/dist/constants4.d.cts +8 -8
  90. package/dist/constants4.d.ts +8 -8
  91. package/dist/constants5.d.cts +2 -2
  92. package/dist/constants5.d.ts +2 -2
  93. package/dist/data.d.cts +10 -10
  94. package/dist/data.d.ts +10 -10
  95. package/dist/dateRange.d.cts +197 -0
  96. package/dist/dateRange.d.ts +197 -0
  97. package/dist/graphics.cjs +1 -0
  98. package/dist/graphics.d.cts +837 -0
  99. package/dist/graphics.d.ts +837 -0
  100. package/dist/graphics.js +1 -0
  101. package/dist/index.cjs +1 -1
  102. package/dist/index.d.cts +47 -43
  103. package/dist/index.d.ts +47 -44
  104. package/dist/index.js +1 -1
  105. package/dist/index.vue.d.cts +5 -5
  106. package/dist/index.vue.d.ts +5 -5
  107. package/dist/index10.vue.d.cts +4 -4
  108. package/dist/index10.vue.d.ts +54 -69
  109. package/dist/index11.vue.d.cts +54 -69
  110. package/dist/index11.vue.d.ts +52 -58
  111. package/dist/index12.vue.d.cts +52 -58
  112. package/dist/index12.vue.d.ts +124 -50
  113. package/dist/index13.vue.d.cts +124 -50
  114. package/dist/index13.vue.d.ts +51 -123
  115. package/dist/index14.vue.d.cts +51 -123
  116. package/dist/index14.vue.d.ts +26 -52
  117. package/dist/index15.vue.d.cts +26 -52
  118. package/dist/index15.vue.d.ts +12 -26
  119. package/dist/index16.vue.d.cts +12 -26
  120. package/dist/index16.vue.d.ts +129 -13
  121. package/dist/index17.vue.d.cts +129 -13
  122. package/dist/index17.vue.d.ts +76 -129
  123. package/dist/index18.vue.d.cts +76 -129
  124. package/dist/index18.vue.d.ts +65 -75
  125. package/dist/index19.vue.d.cts +97 -75
  126. package/dist/index19.vue.d.ts +94 -62
  127. package/dist/index2.vue.d.cts +2 -2
  128. package/dist/index2.vue.d.ts +2 -2
  129. package/dist/index20.vue.d.cts +40 -91
  130. package/dist/index20.vue.d.ts +40 -91
  131. package/dist/index21.vue.d.cts +89 -40
  132. package/dist/index21.vue.d.ts +89 -40
  133. package/dist/index22.vue.d.cts +37 -95
  134. package/dist/index22.vue.d.ts +37 -95
  135. package/dist/index23.vue.d.cts +8 -34
  136. package/dist/index23.vue.d.ts +8 -34
  137. package/dist/index24.vue.d.cts +86 -9
  138. package/dist/index24.vue.d.ts +86 -9
  139. package/dist/index25.vue.d.cts +99 -654
  140. package/dist/index25.vue.d.ts +99 -654
  141. package/dist/index26.vue.d.cts +66 -87
  142. package/dist/index26.vue.d.ts +66 -87
  143. package/dist/index3.vue.d.cts +3 -3
  144. package/dist/index3.vue.d.ts +3 -3
  145. package/dist/index4.vue.d.cts +3 -3
  146. package/dist/index6.vue.d.ts +3 -3
  147. package/dist/index7.vue.d.cts +3 -3
  148. package/dist/index8.vue.d.ts +2 -2
  149. package/dist/index9.vue.d.cts +2 -2
  150. package/dist/index9.vue.d.ts +4 -4
  151. package/dist/mapUtils.d.cts +1 -1
  152. package/dist/mapUtils.d.ts +1 -1
  153. package/dist/presets.d.cts +1 -1
  154. package/dist/presets.d.ts +1 -1
  155. package/dist/style.css +499 -510
  156. package/dist/types.d.ts +51 -0
  157. package/dist/types2.d.cts +51 -0
  158. package/dist/useCalendarEvents.d.cts +3 -3
  159. package/dist/useCalendarEvents.d.ts +3 -3
  160. package/dist/useCollapsePanel.d.cts +6 -6
  161. package/dist/useCollapsePanel.d.ts +6 -6
  162. package/dist/useCropperCore.d.cts +7 -7
  163. package/dist/useCropperCore.d.ts +7 -7
  164. package/dist/useDraggableLayout.d.cts +94 -125
  165. package/dist/useDraggableLayout.d.ts +94 -125
  166. package/dist/useDynamicFormState.d.cts +21 -8
  167. package/dist/useDynamicFormState.d.ts +21 -8
  168. package/dist/useEdgeInteraction.d.cts +10 -5
  169. package/dist/useEdgeInteraction.d.ts +10 -5
  170. package/dist/useFullscreen.d.cts +3 -3
  171. package/dist/useFullscreen.d.ts +3 -3
  172. package/dist/useInfiniteScroll.d.cts +2 -2
  173. package/dist/useInfiniteScroll.d.ts +2 -2
  174. package/dist/useQRCode.d.cts +4 -4
  175. package/dist/useQRCode.d.ts +4 -4
  176. package/dist/useSignatureHistory.d.cts +7 -7
  177. package/dist/useSignatureHistory.d.ts +7 -7
  178. package/dist/useSplitResize.d.cts +1 -1
  179. package/dist/useSplitResize.d.ts +1 -1
  180. package/dist/useTableQuery.cjs +2 -2
  181. package/dist/useTableQuery.d.cts +473 -463
  182. package/dist/useTableQuery.d.ts +473 -463
  183. package/dist/useTableQuery.js +2 -2
  184. package/dist/useTimeSelection.d.cts +19 -52
  185. package/dist/useTimeSelection.d.ts +19 -52
  186. package/dist/useWorkflowValidation.d.cts +534 -155
  187. package/dist/useWorkflowValidation.d.ts +534 -155
  188. package/dist/verification.d.cts +2 -2
  189. package/dist/verification.d.ts +2 -2
  190. package/docs/guides/usage.en.md +15 -0
  191. package/docs/guides/usage.md +15 -0
  192. package/package.json +1 -1
  193. package/dist/C_VtableGantt2.cjs +0 -1
  194. package/dist/C_VtableGantt2.js +0 -1
  195. package/dist/index27.vue.d.cts +0 -111
  196. package/dist/index27.vue.d.ts +0 -111
  197. package/dist/index28.vue.d.cts +0 -84
  198. package/dist/index28.vue.d.ts +0 -84
  199. package/dist/useSearchState.d.cts +0 -163
  200. 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-76801f3f] {
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-76801f3f] {
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-76801f3f] {
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-76801f3f] {
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-76801f3f] {
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-76801f3f] {
35
+ .c-tree .toolbar-left .search-input[data-v-7a932d60] {
36
36
  width: 100%;
37
37
  }
38
- .c-tree .toolbar-right[data-v-76801f3f] {
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-76801f3f] {
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-76801f3f] {
55
+ .c-tree--virtual .c-tree-container[data-v-7a932d60] {
56
56
  overflow: hidden;
57
57
  }
58
- .c-tree--virtual .tree-instance[data-v-76801f3f] {
58
+ .c-tree--virtual .tree-instance[data-v-7a932d60] {
59
59
  height: 100%;
60
60
  }
61
- .c-tree[data-v-76801f3f] .n-tree-node-content,
62
- .c-tree[data-v-76801f3f] .n-tree-node-content__text {
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-76801f3f] .c-tree-node-label {
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-76801f3f] .c-tree-node-title {
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-76801f3f] .c-tree-node-status,
78
- .c-tree[data-v-76801f3f] .c-tree-node-icon {
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-76801f3f] .tree-actions {
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-76801f3f] .n-tree-node:hover .tree-actions,
90
- .c-tree[data-v-76801f3f] .n-tree-node:focus-within .tree-actions,
91
- .c-tree[data-v-76801f3f] .tree-actions:focus-within {
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-76801f3f] .tree-actions {
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-76801f3f] .tree-actions {
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-76801f3f]{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);}
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 "./index12.vue.js";
10
- import "./useSearchState.js";
9
+ import "./index11.vue.js";
10
+ import "./dateRange.js";
11
11
  import "./mapUtils.js";
12
- import "./index19.vue.js";
12
+ import "./index18.vue.js";
13
13
  import "./constants5.js";
14
- import "./index26.vue.js";
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};
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`./C_Icon2.cjs`);const e=require(`./C_VtableGantt2.cjs`);exports.C_VtableGantt=e.t,exports.ganttPresetConfigs=e.n;
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;
@@ -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-dbfd25e4] {
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-dbfd25e4] {
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-dbfd25e4] {
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-dbfd25e4] {
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-dbfd25e4] {
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-dbfd25e4] {
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-dbfd25e4] {
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-dbfd25e4] > * {
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-dbfd25e4] {
58
+ .c-vtable-gantt-wrapper .gantt-container[data-v-f33bf002] {
59
59
  /* 确保甘特图内部组件正确填充 */
60
60
  }
61
- .c-vtable-gantt-wrapper .gantt-container[data-v-dbfd25e4] .vtable-gantt {
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-dbfd25e4] .vtable-gantt * {
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-dbfd25e4] {
71
+ .c-vtable-gantt-wrapper .gantt-container[data-v-f33bf002] {
72
72
  /* 防止内部表格自动调整高度 */
73
73
  }
74
- .c-vtable-gantt-wrapper .gantt-container[data-v-dbfd25e4] .vtable-gantt-table {
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-dbfd25e4] {
78
+ .c-vtable-gantt-wrapper .gantt-container[data-v-f33bf002] {
79
79
  /* 防止拖动时底部色块闪烁 */
80
80
  }
81
- .c-vtable-gantt-wrapper .gantt-container[data-v-dbfd25e4] .vtable-gantt-chart {
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-dbfd25e4] {
87
+ .c-vtable-gantt-wrapper .gantt-container[data-v-f33bf002] {
88
88
  /* 针对拖动元素的优化 */
89
89
  }
90
- .c-vtable-gantt-wrapper .gantt-container[data-v-dbfd25e4] .vtable-gantt-task {
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-dbfd25e4] .vtable-gantt-task.dragging {
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-dbfd25e4] {
98
+ .c-vtable-gantt-wrapper .gantt-container[data-v-f33bf002] {
99
99
  /* 防止拖动时底部区域的重绘闪烁 */
100
100
  }
101
- .c-vtable-gantt-wrapper .gantt-container[data-v-dbfd25e4] .vtable-gantt-chart-container {
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-dbfd25e4] .vtable-gantt-chart-container::after {
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-dbfd25e4]{width:100%;}
117
+ .container[data-v-f33bf002]{width:100%;}
118
118
  @media (min-width: 640px){
119
- .container[data-v-dbfd25e4]{max-width:640px;}
119
+ .container[data-v-f33bf002]{max-width:640px;}
120
120
  }
121
121
  @media (min-width: 768px){
122
- .container[data-v-dbfd25e4]{max-width:768px;}
122
+ .container[data-v-f33bf002]{max-width:768px;}
123
123
  }
124
124
  @media (min-width: 1024px){
125
- .container[data-v-dbfd25e4]{max-width:1024px;}
125
+ .container[data-v-f33bf002]{max-width:1024px;}
126
126
  }
127
127
  @media (min-width: 1280px){
128
- .container[data-v-dbfd25e4]{max-width:1280px;}
128
+ .container[data-v-f33bf002]{max-width:1280px;}
129
129
  }
130
130
  @media (min-width: 1536px){
131
- .container[data-v-dbfd25e4]{max-width:1536px;}
131
+ .container[data-v-f33bf002]{max-width:1536px;}
132
132
  }
133
133
  /* layer: default */
134
- .visible[data-v-dbfd25e4]{visibility:visible;}
135
- .grid[data-v-dbfd25e4]{display:grid;}
136
- .table[data-v-dbfd25e4]{display:table;}
137
- .px[data-v-dbfd25e4]{padding-left:1rem;padding-right:1rem;}
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;}
@@ -1,2 +1,18 @@
1
- import { a as presetConfigs, i as GanttTask, n as GanttOptions, r as GanttPreset, t as _default } from "./index25.vue.cjs";
2
- export { _default as C_VtableGantt, type GanttOptions, type GanttPreset, type GanttTask, presetConfigs as ganttPresetConfigs };
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 };
@@ -1,2 +1,18 @@
1
- import { a as presetConfigs, i as GanttTask, n as GanttOptions, r as GanttPreset, t as _default } from "./index25.vue.js";
2
- export { _default as C_VtableGantt, type GanttOptions, type GanttPreset, type GanttTask, presetConfigs as ganttPresetConfigs };
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 };
@@ -1 +1 @@
1
- import"./C_Icon2.js";import{n as e,t}from"./C_VtableGantt2.js";export{t as C_VtableGantt,e as ganttPresetConfigs};
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};