ep-craft 0.1.41 → 0.2.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 (251) hide show
  1. package/dist/components/input-number/EpInputNumber.vue.js +62 -63
  2. package/dist/components/input-number/input-number.d.ts +5 -0
  3. package/dist/components/input-number/input-number.js +6 -6
  4. package/dist/components/select/index.d.ts +6 -3
  5. package/dist/components/select/select.d.ts +1 -0
  6. package/dist/components/select/select.js +3 -3
  7. package/dist/components/select/select.vue.d.ts +3 -1
  8. package/dist/components/select/select.vue.js +9 -9
  9. package/dist/components/select/select2.vue.js +73 -75
  10. package/dist/components/select-v2/src/defaults.d.ts +1 -0
  11. package/dist/components/select-v2/src/defaults.js +1 -1
  12. package/dist/components/select-v2/src/select.vue.d.ts +3 -1
  13. package/dist/components/select-v2/src/select.vue.js +21 -21
  14. package/dist/components/select-v2/src/select2.vue.js +27 -29
  15. package/dist/components/tree-select/src/tree-select.vue.d.ts +2 -0
  16. package/dist-ai/components/affix.json +152 -0
  17. package/dist-ai/components/affix.md +73 -0
  18. package/dist-ai/components/alert.json +186 -0
  19. package/dist-ai/components/alert.md +89 -0
  20. package/dist-ai/components/anchor-link.json +102 -0
  21. package/dist-ai/components/anchor-link.md +67 -0
  22. package/dist-ai/components/anchor.json +179 -0
  23. package/dist-ai/components/anchor.md +87 -0
  24. package/dist-ai/components/aside.json +87 -0
  25. package/dist-ai/components/aside.md +63 -0
  26. package/dist-ai/components/autocomplete.json +613 -0
  27. package/dist-ai/components/autocomplete.md +140 -0
  28. package/dist-ai/components/avatar.json +163 -0
  29. package/dist-ai/components/avatar.md +83 -0
  30. package/dist-ai/components/backtop.json +118 -0
  31. package/dist-ai/components/backtop.md +66 -0
  32. package/dist-ai/components/badge.json +186 -0
  33. package/dist-ai/components/badge.md +85 -0
  34. package/dist-ai/components/breadcrumb-item.json +97 -0
  35. package/dist-ai/components/breadcrumb-item.md +65 -0
  36. package/dist-ai/components/breadcrumb.json +100 -0
  37. package/dist-ai/components/breadcrumb.md +68 -0
  38. package/dist-ai/components/button-group.json +123 -0
  39. package/dist-ai/components/button-group.md +65 -0
  40. package/dist-ai/components/button.json +349 -0
  41. package/dist-ai/components/button.md +124 -0
  42. package/dist-ai/components/calendar.json +148 -0
  43. package/dist-ai/components/calendar.md +74 -0
  44. package/dist-ai/components/card.json +168 -0
  45. package/dist-ai/components/card.md +87 -0
  46. package/dist-ai/components/carousel-item.json +99 -0
  47. package/dist-ai/components/carousel-item.md +68 -0
  48. package/dist-ai/components/carousel.json +245 -0
  49. package/dist-ai/components/carousel.md +97 -0
  50. package/dist-ai/components/cascader-panel.json +242 -0
  51. package/dist-ai/components/cascader-panel.md +108 -0
  52. package/dist-ai/components/cascader.json +531 -0
  53. package/dist-ai/components/cascader.md +146 -0
  54. package/dist-ai/components/check-tag.json +133 -0
  55. package/dist-ai/components/check-tag.md +72 -0
  56. package/dist-ai/components/checkbox-button.json +279 -0
  57. package/dist-ai/components/checkbox-button.md +94 -0
  58. package/dist-ai/components/checkbox-group.json +236 -0
  59. package/dist-ai/components/checkbox-group.md +90 -0
  60. package/dist-ai/components/checkbox.json +278 -0
  61. package/dist-ai/components/checkbox.md +91 -0
  62. package/dist-ai/components/col.json +168 -0
  63. package/dist-ai/components/col.md +72 -0
  64. package/dist-ai/components/collapse-item.json +133 -0
  65. package/dist-ai/components/collapse-item.md +75 -0
  66. package/dist-ai/components/collapse-transition.json +75 -0
  67. package/dist-ai/components/collapse-transition.md +59 -0
  68. package/dist-ai/components/collapse.json +129 -0
  69. package/dist-ai/components/collapse.md +76 -0
  70. package/dist-ai/components/color-picker.json +280 -0
  71. package/dist-ai/components/color-picker.md +85 -0
  72. package/dist-ai/components/config-provider.json +222 -0
  73. package/dist-ai/components/config-provider.md +76 -0
  74. package/dist-ai/components/container.json +95 -0
  75. package/dist-ai/components/container.md +70 -0
  76. package/dist-ai/components/countdown.json +155 -0
  77. package/dist-ai/components/countdown.md +73 -0
  78. package/dist-ai/components/date-picker-panel.json +346 -0
  79. package/dist-ai/components/date-picker-panel.md +91 -0
  80. package/dist-ai/components/date-picker.json +574 -0
  81. package/dist-ai/components/date-picker.md +153 -0
  82. package/dist-ai/components/descriptions-item.json +175 -0
  83. package/dist-ai/components/descriptions-item.md +73 -0
  84. package/dist-ai/components/descriptions.json +171 -0
  85. package/dist-ai/components/descriptions.md +78 -0
  86. package/dist-ai/components/dialog.json +403 -0
  87. package/dist-ai/components/dialog.md +108 -0
  88. package/dist-ai/components/divider.json +102 -0
  89. package/dist-ai/components/divider.md +59 -0
  90. package/dist-ai/components/drawer.json +468 -0
  91. package/dist-ai/components/drawer.md +115 -0
  92. package/dist-ai/components/dropdown-item.json +156 -0
  93. package/dist-ai/components/dropdown-item.md +84 -0
  94. package/dist-ai/components/dropdown-menu.json +92 -0
  95. package/dist-ai/components/dropdown-menu.md +70 -0
  96. package/dist-ai/components/dropdown.json +374 -0
  97. package/dist-ai/components/dropdown.md +108 -0
  98. package/dist-ai/components/empty.json +116 -0
  99. package/dist-ai/components/empty.md +62 -0
  100. package/dist-ai/components/footer.json +86 -0
  101. package/dist-ai/components/footer.md +63 -0
  102. package/dist-ai/components/form-item.json +242 -0
  103. package/dist-ai/components/form-item.md +93 -0
  104. package/dist-ai/components/form.json +277 -0
  105. package/dist-ai/components/form.md +117 -0
  106. package/dist-ai/components/header.json +86 -0
  107. package/dist-ai/components/header.md +63 -0
  108. package/dist-ai/components/icon.json +95 -0
  109. package/dist-ai/components/icon.md +61 -0
  110. package/dist-ai/components/image-viewer.json +235 -0
  111. package/dist-ai/components/image-viewer.md +88 -0
  112. package/dist-ai/components/image.json +299 -0
  113. package/dist-ai/components/image.md +96 -0
  114. package/dist-ai/components/input-number.json +370 -0
  115. package/dist-ai/components/input-number.md +127 -0
  116. package/dist-ai/components/input.json +545 -0
  117. package/dist-ai/components/input.md +166 -0
  118. package/dist-ai/components/link.json +162 -0
  119. package/dist-ai/components/link.md +72 -0
  120. package/dist-ai/components/main.json +77 -0
  121. package/dist-ai/components/main.md +58 -0
  122. package/dist-ai/components/mention.json +598 -0
  123. package/dist-ai/components/mention.md +136 -0
  124. package/dist-ai/components/menu-item-group.json +101 -0
  125. package/dist-ai/components/menu-item-group.md +69 -0
  126. package/dist-ai/components/menu-item.json +131 -0
  127. package/dist-ai/components/menu-item.md +76 -0
  128. package/dist-ai/components/menu.json +314 -0
  129. package/dist-ai/components/menu.md +104 -0
  130. package/dist-ai/components/option-group.json +113 -0
  131. package/dist-ai/components/option-group.md +79 -0
  132. package/dist-ai/components/option.json +122 -0
  133. package/dist-ai/components/option.md +70 -0
  134. package/dist-ai/components/page-header.json +131 -0
  135. package/dist-ai/components/page-header.md +70 -0
  136. package/dist-ai/components/pagination.json +325 -0
  137. package/dist-ai/components/pagination.md +115 -0
  138. package/dist-ai/components/popconfirm.json +240 -0
  139. package/dist-ai/components/popconfirm.md +89 -0
  140. package/dist-ai/components/popover.json +351 -0
  141. package/dist-ai/components/popover.md +99 -0
  142. package/dist-ai/components/popper.json +93 -0
  143. package/dist-ai/components/popper.md +66 -0
  144. package/dist-ai/components/progress.json +219 -0
  145. package/dist-ai/components/progress.md +74 -0
  146. package/dist-ai/components/radio-button.json +142 -0
  147. package/dist-ai/components/radio-button.md +76 -0
  148. package/dist-ai/components/radio-group.json +219 -0
  149. package/dist-ai/components/radio-group.md +88 -0
  150. package/dist-ai/components/radio.json +177 -0
  151. package/dist-ai/components/radio.md +83 -0
  152. package/dist-ai/components/rate.json +286 -0
  153. package/dist-ai/components/rate.md +83 -0
  154. package/dist-ai/components/result.json +118 -0
  155. package/dist-ai/components/result.md +66 -0
  156. package/dist-ai/components/row.json +115 -0
  157. package/dist-ai/components/row.md +68 -0
  158. package/dist-ai/components/scrollbar.json +280 -0
  159. package/dist-ai/components/scrollbar.md +89 -0
  160. package/dist-ai/components/segmented.json +204 -0
  161. package/dist-ai/components/segmented.md +81 -0
  162. package/dist-ai/components/select-v2.json +729 -0
  163. package/dist-ai/components/select-v2.md +193 -0
  164. package/dist-ai/components/select.json +697 -0
  165. package/dist-ai/components/select.md +188 -0
  166. package/dist-ai/components/skeleton-item.json +80 -0
  167. package/dist-ai/components/skeleton-item.md +57 -0
  168. package/dist-ai/components/skeleton.json +134 -0
  169. package/dist-ai/components/skeleton.md +65 -0
  170. package/dist-ai/components/slider.json +326 -0
  171. package/dist-ai/components/slider.md +88 -0
  172. package/dist-ai/components/space.json +178 -0
  173. package/dist-ai/components/space.md +73 -0
  174. package/dist-ai/components/statistic.json +167 -0
  175. package/dist-ai/components/statistic.md +66 -0
  176. package/dist-ai/components/step.json +124 -0
  177. package/dist-ai/components/step.md +69 -0
  178. package/dist-ai/components/steps.json +157 -0
  179. package/dist-ai/components/steps.md +79 -0
  180. package/dist-ai/components/sub-menu.json +211 -0
  181. package/dist-ai/components/sub-menu.md +88 -0
  182. package/dist-ai/components/switch.json +292 -0
  183. package/dist-ai/components/switch.md +88 -0
  184. package/dist-ai/components/tab-pane.json +137 -0
  185. package/dist-ai/components/tab-pane.md +72 -0
  186. package/dist-ai/components/table-column.json +368 -0
  187. package/dist-ai/components/table-column.md +103 -0
  188. package/dist-ai/components/table-v2.json +486 -0
  189. package/dist-ai/components/table-v2.md +123 -0
  190. package/dist-ai/components/table.json +734 -0
  191. package/dist-ai/components/table.md +205 -0
  192. package/dist-ai/components/tabs.json +231 -0
  193. package/dist-ai/components/tabs.md +127 -0
  194. package/dist-ai/components/tag.json +205 -0
  195. package/dist-ai/components/tag.md +105 -0
  196. package/dist-ai/components/text.json +143 -0
  197. package/dist-ai/components/text.md +66 -0
  198. package/dist-ai/components/time-picker.json +555 -0
  199. package/dist-ai/components/time-picker.md +123 -0
  200. package/dist-ai/components/time-select.json +321 -0
  201. package/dist-ai/components/time-select.md +93 -0
  202. package/dist-ai/components/timeline-item.json +186 -0
  203. package/dist-ai/components/timeline-item.md +78 -0
  204. package/dist-ai/components/timeline.json +99 -0
  205. package/dist-ai/components/timeline.md +65 -0
  206. package/dist-ai/components/tooltip.json +599 -0
  207. package/dist-ai/components/tooltip.md +137 -0
  208. package/dist-ai/components/tour-step.json +219 -0
  209. package/dist-ai/components/tour-step.md +88 -0
  210. package/dist-ai/components/tour.json +258 -0
  211. package/dist-ai/components/tour.md +96 -0
  212. package/dist-ai/components/transfer.json +275 -0
  213. package/dist-ai/components/transfer.md +95 -0
  214. package/dist-ai/components/tree-select.json +945 -0
  215. package/dist-ai/components/tree-select.md +181 -0
  216. package/dist-ai/components/tree-v2.json +395 -0
  217. package/dist-ai/components/tree-v2.md +113 -0
  218. package/dist-ai/components/tree.json +485 -0
  219. package/dist-ai/components/tree.md +131 -0
  220. package/dist-ai/components/upload.json +382 -0
  221. package/dist-ai/components/upload.md +130 -0
  222. package/dist-ai/components/watermark.json +157 -0
  223. package/dist-ai/components/watermark.md +66 -0
  224. package/dist-ai/directives/click-outside.json +61 -0
  225. package/dist-ai/directives/click-outside.md +50 -0
  226. package/dist-ai/directives/infinite-scroll.json +83 -0
  227. package/dist-ai/directives/infinite-scroll.md +62 -0
  228. package/dist-ai/directives/loading.json +89 -0
  229. package/dist-ai/directives/loading.md +69 -0
  230. package/dist-ai/directives/mousewheel.json +54 -0
  231. package/dist-ai/directives/mousewheel.md +48 -0
  232. package/dist-ai/directives/repeat-click.json +68 -0
  233. package/dist-ai/directives/repeat-click.md +49 -0
  234. package/dist-ai/directives/trap-focus.json +46 -0
  235. package/dist-ai/directives/trap-focus.md +46 -0
  236. package/dist-ai/icons.json +1 -0
  237. package/dist-ai/index.json +1 -0
  238. package/dist-ai/llms.txt +170 -0
  239. package/dist-ai/manifest.json +26590 -0
  240. package/dist-ai/schema/manifest.schema.json +793 -0
  241. package/dist-ai/services/infinite-scroll.json +80 -0
  242. package/dist-ai/services/infinite-scroll.md +71 -0
  243. package/dist-ai/services/loading.json +108 -0
  244. package/dist-ai/services/loading.md +58 -0
  245. package/dist-ai/services/message-box.json +159 -0
  246. package/dist-ai/services/message-box.md +78 -0
  247. package/dist-ai/services/message.json +137 -0
  248. package/dist-ai/services/message.md +72 -0
  249. package/dist-ai/services/notification.json +136 -0
  250. package/dist-ai/services/notification.md +73 -0
  251. package/package.json +12 -2
@@ -0,0 +1,485 @@
1
+ {
2
+ "entry": {
3
+ "category": "data",
4
+ "events": [
5
+ {
6
+ "description": "节点勾选状态变化时触发",
7
+ "name": "checkChange",
8
+ "params": "(data, checked: boolean, indeterminate: boolean)"
9
+ },
10
+ {
11
+ "description": "当前选中节点变化时触发",
12
+ "name": "currentChange",
13
+ "params": "(data, node)"
14
+ },
15
+ {
16
+ "description": "点击节点时触发",
17
+ "name": "nodeClick",
18
+ "params": "(data, node, nodeInstance, evt: MouseEvent)"
19
+ },
20
+ {
21
+ "description": "右键节点时触发",
22
+ "name": "nodeContextmenu",
23
+ "params": "(evt: Event, data, node, nodeInstance)"
24
+ },
25
+ {
26
+ "description": "节点收起时触发",
27
+ "name": "nodeCollapse",
28
+ "params": "(data, node, nodeInstance)"
29
+ },
30
+ {
31
+ "description": "节点展开时触发",
32
+ "name": "nodeExpand",
33
+ "params": "(data, node, nodeInstance)"
34
+ },
35
+ {
36
+ "description": "勾选节点时触发",
37
+ "name": "check",
38
+ "params": "(data, checkedInfo: CheckedInfo)"
39
+ },
40
+ {
41
+ "description": "节点开始拖拽时触发",
42
+ "name": "nodeDragStart",
43
+ "params": "(node, evt: DragEvent)"
44
+ },
45
+ {
46
+ "description": "拖拽结束时触发",
47
+ "name": "nodeDragEnd",
48
+ "params": "(draggingNode, dropNode, dropType, evt: DragEvent)"
49
+ },
50
+ {
51
+ "description": "拖拽放置后触发",
52
+ "name": "nodeDrop",
53
+ "params": "(draggingNode, dropNode, dropType, evt: DragEvent)"
54
+ },
55
+ {
56
+ "description": "拖拽离开节点时触发",
57
+ "name": "nodeDragLeave",
58
+ "params": "(draggingNode, oldDropNode, evt: DragEvent)"
59
+ },
60
+ {
61
+ "description": "拖拽进入节点时触发",
62
+ "name": "nodeDragEnter",
63
+ "params": "(draggingNode, dropNode, evt: DragEvent)"
64
+ },
65
+ {
66
+ "description": "拖拽在节点上时触发",
67
+ "name": "nodeDragOver",
68
+ "params": "(draggingNode, dropNode, evt: DragEvent)"
69
+ }
70
+ ],
71
+ "exampleOmittedReason": null,
72
+ "examples": [
73
+ {
74
+ "code": "<script setup lang=\"ts\">\nimport { EpTree } from 'ep-craft'\n\nconst data = [\n {\n id: 'root',\n label: '根节点',\n children: [\n { id: 'child-1', label: '子节点一' },\n { id: 'child-2', label: '子节点二' },\n ],\n },\n]\n</script>\n\n<template>\n <ep-tree :data=\"data\" node-key=\"id\" default-expand-all show-checkbox />\n</template>",
75
+ "id": "tree-1",
76
+ "language": "vue",
77
+ "title": "树形控件"
78
+ }
79
+ ],
80
+ "exposes": [
81
+ {
82
+ "description": "过滤节点",
83
+ "name": "filter",
84
+ "type": "(value: any) => void"
85
+ },
86
+ {
87
+ "description": "获取勾选节点",
88
+ "name": "getCheckedNodes",
89
+ "type": "(leafOnly?: boolean) => Node[]"
90
+ },
91
+ {
92
+ "description": "设置勾选节点",
93
+ "name": "setCheckedNodes",
94
+ "type": "(nodes: Node[]) => void"
95
+ },
96
+ {
97
+ "description": "获取勾选节点的 key",
98
+ "name": "getCheckedKeys",
99
+ "type": "(leafOnly?: boolean) => TreeKey[]"
100
+ },
101
+ {
102
+ "description": "设置勾选节点的 key",
103
+ "name": "setCheckedKeys",
104
+ "type": "(keys: TreeKey[]) => void"
105
+ },
106
+ {
107
+ "description": "设置节点勾选状态",
108
+ "name": "setChecked",
109
+ "type": "(data: TreeKey | Node, checked: boolean, deep: boolean) => void"
110
+ },
111
+ {
112
+ "description": "获取半选节点",
113
+ "name": "getHalfCheckedNodes",
114
+ "type": "() => Node[]"
115
+ },
116
+ {
117
+ "description": "获取半选节点的 key",
118
+ "name": "getHalfCheckedKeys",
119
+ "type": "() => TreeKey[]"
120
+ },
121
+ {
122
+ "description": "获取当前选中节点的 key",
123
+ "name": "getCurrentKey",
124
+ "type": "() => TreeKey | undefined"
125
+ },
126
+ {
127
+ "description": "获取当前选中节点",
128
+ "name": "getCurrentNode",
129
+ "type": "() => Node | undefined"
130
+ },
131
+ {
132
+ "description": "设置当前选中节点的 key",
133
+ "name": "setCurrentKey",
134
+ "type": "(key: TreeKey) => void"
135
+ },
136
+ {
137
+ "description": "设置当前选中节点",
138
+ "name": "setCurrentNode",
139
+ "type": "(node: Node) => void"
140
+ },
141
+ {
142
+ "description": "根据 key 或 data 获取节点",
143
+ "name": "getNode",
144
+ "type": "(data: TreeKey | TreeNodeData) => Node"
145
+ },
146
+ {
147
+ "description": "删除节点",
148
+ "name": "remove",
149
+ "type": "(data: TreeKey | Node) => void"
150
+ },
151
+ {
152
+ "description": "追加子节点",
153
+ "name": "append",
154
+ "type": "(data: TreeKey | Node, child: TreeNodeData) => void"
155
+ },
156
+ {
157
+ "description": "在节点前插入",
158
+ "name": "insertBefore",
159
+ "type": "(data: TreeKey | Node, child: TreeNodeData) => void"
160
+ },
161
+ {
162
+ "description": "在节点后插入",
163
+ "name": "insertAfter",
164
+ "type": "(data: TreeKey | Node, child: TreeNodeData) => void"
165
+ },
166
+ {
167
+ "description": "更新子节点的 key",
168
+ "name": "updateKeyChildren",
169
+ "type": "(key: TreeKey, data: TreeNodeData[]) => void"
170
+ }
171
+ ],
172
+ "hot": true,
173
+ "id": "component:tree",
174
+ "keywords": {
175
+ "en": [
176
+ "tree",
177
+ "treeview",
178
+ "hierarchy",
179
+ "data"
180
+ ],
181
+ "zh": [
182
+ "树形控件",
183
+ "树",
184
+ "树形",
185
+ "层级",
186
+ "数据"
187
+ ]
188
+ },
189
+ "kind": "component",
190
+ "name": "EpTree",
191
+ "nonUseCases": [
192
+ "数据量极小且无需结构化展示时"
193
+ ],
194
+ "props": [
195
+ {
196
+ "alias": null,
197
+ "defaultText": "[]",
198
+ "description": "展示数据",
199
+ "hasDefault": true,
200
+ "name": "data",
201
+ "required": false,
202
+ "type": "TreeData"
203
+ },
204
+ {
205
+ "alias": null,
206
+ "defaultText": null,
207
+ "description": "内容为空时的文本",
208
+ "hasDefault": false,
209
+ "name": "emptyText",
210
+ "required": false,
211
+ "type": "string"
212
+ },
213
+ {
214
+ "alias": null,
215
+ "defaultText": "true",
216
+ "description": "是否在第一次展开时才渲染子节点",
217
+ "hasDefault": true,
218
+ "name": "renderAfterExpand",
219
+ "required": false,
220
+ "type": "boolean"
221
+ },
222
+ {
223
+ "alias": null,
224
+ "defaultText": null,
225
+ "description": "每个树节点唯一标识的属性名",
226
+ "hasDefault": false,
227
+ "name": "nodeKey",
228
+ "required": false,
229
+ "type": "string"
230
+ },
231
+ {
232
+ "alias": null,
233
+ "defaultText": "false",
234
+ "description": "勾选时是否不关联父子节点",
235
+ "hasDefault": false,
236
+ "name": "checkStrictly",
237
+ "required": false,
238
+ "type": "boolean"
239
+ },
240
+ {
241
+ "alias": null,
242
+ "defaultText": "false",
243
+ "description": "是否默认展开所有节点",
244
+ "hasDefault": false,
245
+ "name": "defaultExpandAll",
246
+ "required": false,
247
+ "type": "boolean"
248
+ },
249
+ {
250
+ "alias": null,
251
+ "defaultText": "true",
252
+ "description": "点击节点时是否展开/收起",
253
+ "hasDefault": true,
254
+ "name": "expandOnClickNode",
255
+ "required": false,
256
+ "type": "boolean"
257
+ },
258
+ {
259
+ "alias": null,
260
+ "defaultText": "false",
261
+ "description": "点击节点时是否勾选/取消勾选",
262
+ "hasDefault": false,
263
+ "name": "checkOnClickNode",
264
+ "required": false,
265
+ "type": "boolean"
266
+ },
267
+ {
268
+ "alias": null,
269
+ "defaultText": "true",
270
+ "description": "点击叶子节点时是否勾选",
271
+ "hasDefault": true,
272
+ "name": "checkOnClickLeaf",
273
+ "required": false,
274
+ "type": "boolean"
275
+ },
276
+ {
277
+ "alias": null,
278
+ "defaultText": "false",
279
+ "description": "勾选时是否影响后代节点",
280
+ "hasDefault": false,
281
+ "name": "checkDescendants",
282
+ "required": false,
283
+ "type": "boolean"
284
+ },
285
+ {
286
+ "alias": null,
287
+ "defaultText": "true",
288
+ "description": "是否自动展开父节点",
289
+ "hasDefault": true,
290
+ "name": "autoExpandParent",
291
+ "required": false,
292
+ "type": "boolean"
293
+ },
294
+ {
295
+ "alias": null,
296
+ "defaultText": null,
297
+ "description": "默认勾选的节点 key 数组",
298
+ "hasDefault": false,
299
+ "name": "defaultCheckedKeys",
300
+ "required": false,
301
+ "type": "TreeKey[]"
302
+ },
303
+ {
304
+ "alias": null,
305
+ "defaultText": null,
306
+ "description": "默认展开的节点 key 数组",
307
+ "hasDefault": false,
308
+ "name": "defaultExpandedKeys",
309
+ "required": false,
310
+ "type": "TreeKey[]"
311
+ },
312
+ {
313
+ "alias": null,
314
+ "defaultText": null,
315
+ "description": "当前选中节点的 key",
316
+ "hasDefault": false,
317
+ "name": "currentNodeKey",
318
+ "required": false,
319
+ "type": "string | number"
320
+ },
321
+ {
322
+ "alias": null,
323
+ "defaultText": null,
324
+ "description": "自定义节点内容渲染函数",
325
+ "hasDefault": false,
326
+ "name": "renderContent",
327
+ "required": false,
328
+ "type": "RenderContentFunction"
329
+ },
330
+ {
331
+ "alias": null,
332
+ "defaultText": "false",
333
+ "description": "是否显示复选框",
334
+ "hasDefault": false,
335
+ "name": "showCheckbox",
336
+ "required": false,
337
+ "type": "boolean"
338
+ },
339
+ {
340
+ "alias": null,
341
+ "defaultText": "false",
342
+ "description": "是否开启拖拽",
343
+ "hasDefault": false,
344
+ "name": "draggable",
345
+ "required": false,
346
+ "type": "boolean"
347
+ },
348
+ {
349
+ "alias": null,
350
+ "defaultText": null,
351
+ "description": "判断节点能否被拖拽",
352
+ "hasDefault": false,
353
+ "name": "allowDrag",
354
+ "required": false,
355
+ "type": "AllowDragFunction"
356
+ },
357
+ {
358
+ "alias": null,
359
+ "defaultText": null,
360
+ "description": "判断节点能否被放置",
361
+ "hasDefault": false,
362
+ "name": "allowDrop",
363
+ "required": false,
364
+ "type": "AllowDropFunction"
365
+ },
366
+ {
367
+ "alias": null,
368
+ "defaultText": "{ children: 'children', label: 'label', disabled: 'disabled' }",
369
+ "description": "配置选项",
370
+ "hasDefault": true,
371
+ "name": "props",
372
+ "required": false,
373
+ "type": "{ children?: string; label?: string; disabled?: string }"
374
+ },
375
+ {
376
+ "alias": null,
377
+ "defaultText": "false",
378
+ "description": "是否懒加载子节点,需配合 load 使用",
379
+ "hasDefault": false,
380
+ "name": "lazy",
381
+ "required": false,
382
+ "type": "boolean"
383
+ },
384
+ {
385
+ "alias": null,
386
+ "defaultText": "false",
387
+ "description": "是否高亮当前选中节点",
388
+ "hasDefault": false,
389
+ "name": "highlightCurrent",
390
+ "required": false,
391
+ "type": "boolean"
392
+ },
393
+ {
394
+ "alias": null,
395
+ "defaultText": null,
396
+ "description": "加载子节点的方法",
397
+ "hasDefault": false,
398
+ "name": "load",
399
+ "required": false,
400
+ "type": "(node, resolve, reject) => void"
401
+ },
402
+ {
403
+ "alias": null,
404
+ "defaultText": null,
405
+ "description": "过滤节点的函数",
406
+ "hasDefault": false,
407
+ "name": "filterNodeMethod",
408
+ "required": false,
409
+ "type": "(value, data, node) => boolean"
410
+ },
411
+ {
412
+ "alias": null,
413
+ "defaultText": "false",
414
+ "description": "是否每次只展开一个同级节点",
415
+ "hasDefault": false,
416
+ "name": "accordion",
417
+ "required": false,
418
+ "type": "boolean"
419
+ },
420
+ {
421
+ "alias": null,
422
+ "defaultText": "18",
423
+ "description": "相邻级节点的缩进,单位 px",
424
+ "hasDefault": true,
425
+ "name": "indent",
426
+ "required": false,
427
+ "type": "number"
428
+ },
429
+ {
430
+ "alias": null,
431
+ "defaultText": null,
432
+ "description": "自定义节点图标",
433
+ "hasDefault": false,
434
+ "name": "icon",
435
+ "required": false,
436
+ "type": "string | Component"
437
+ }
438
+ ],
439
+ "related": [
440
+ "EpTreeSelect",
441
+ "EpTreeV2"
442
+ ],
443
+ "relations": {
444
+ "children": [],
445
+ "combos": [],
446
+ "parents": [],
447
+ "requiredChildren": []
448
+ },
449
+ "slots": [
450
+ {
451
+ "description": "自定义节点内容,参数为 `{ node, data }`",
452
+ "name": "default"
453
+ },
454
+ {
455
+ "description": "内容为空时的内容",
456
+ "name": "empty"
457
+ }
458
+ ],
459
+ "slug": "tree",
460
+ "summary": "树形控件,展示层级数据与展开选择",
461
+ "tag": "ep-tree",
462
+ "useCases": [
463
+ "文件夹、组织架构等层级数据",
464
+ "需要展开、勾选或拖拽的树形选择"
465
+ ],
466
+ "variants": [],
467
+ "visual": {
468
+ "cssVars": [
469
+ "--el-border-color-lighter",
470
+ "--el-bg-color",
471
+ "--el-text-color-regular",
472
+ "--el-font-size-base"
473
+ ],
474
+ "density": "紧凑",
475
+ "shape": "块级数据区域",
476
+ "slotContent": [
477
+ "default:自定义节点内容,参数为 `{ node, data }`",
478
+ "empty:内容为空时的内容"
479
+ ]
480
+ }
481
+ },
482
+ "generatedAt": "2026-11-03T03:09:12.050Z",
483
+ "libraryVersion": "0.2.0",
484
+ "schemaVersion": 1
485
+ }
@@ -0,0 +1,131 @@
1
+ # EpTree
2
+
3
+ `ep-tree` · data(数据展示) · `component:tree`
4
+
5
+ ## 摘要
6
+
7
+ 树形控件,展示层级数据与展开选择
8
+
9
+ ## 适用场景
10
+
11
+ - 适用:文件夹、组织架构等层级数据
12
+ - 适用:需要展开、勾选或拖拽的树形选择
13
+ - 不适用:数据量极小且无需结构化展示时
14
+
15
+ ## 关键词
16
+
17
+ - 中文:树形控件、树、树形、层级、数据
18
+ - English: tree, treeview, hierarchy, data
19
+
20
+ ## Props
21
+
22
+ - data (TreeData,默认 []):展示数据
23
+ - emptyText (string):内容为空时的文本
24
+ - renderAfterExpand (boolean,默认 true):是否在第一次展开时才渲染子节点
25
+ - nodeKey (string):每个树节点唯一标识的属性名
26
+ - checkStrictly (boolean):勾选时是否不关联父子节点
27
+ - defaultExpandAll (boolean):是否默认展开所有节点
28
+ - expandOnClickNode (boolean,默认 true):点击节点时是否展开/收起
29
+ - checkOnClickNode (boolean):点击节点时是否勾选/取消勾选
30
+ - checkOnClickLeaf (boolean,默认 true):点击叶子节点时是否勾选
31
+ - checkDescendants (boolean):勾选时是否影响后代节点
32
+ - autoExpandParent (boolean,默认 true):是否自动展开父节点
33
+ - defaultCheckedKeys (TreeKey[]):默认勾选的节点 key 数组
34
+ - defaultExpandedKeys (TreeKey[]):默认展开的节点 key 数组
35
+ - currentNodeKey (string | number):当前选中节点的 key
36
+ - renderContent (RenderContentFunction):自定义节点内容渲染函数
37
+ - showCheckbox (boolean):是否显示复选框
38
+ - draggable (boolean):是否开启拖拽
39
+ - allowDrag (AllowDragFunction):判断节点能否被拖拽
40
+ - allowDrop (AllowDropFunction):判断节点能否被放置
41
+ - props ({ children?: string; label?: string; disabled?: string },默认 { children: 'children', label: 'label', disabled: 'disabled' }):配置选项
42
+ - lazy (boolean):是否懒加载子节点,需配合 load 使用
43
+ - highlightCurrent (boolean):是否高亮当前选中节点
44
+ - load ((node, resolve, reject) => void):加载子节点的方法
45
+ - filterNodeMethod ((value, data, node) => boolean):过滤节点的函数
46
+ - accordion (boolean):是否每次只展开一个同级节点
47
+ - indent (number,默认 18):相邻级节点的缩进,单位 px
48
+ - icon (string | Component):自定义节点图标
49
+
50
+ ## Events
51
+
52
+ - checkChange((data, checked: boolean, indeterminate: boolean)):节点勾选状态变化时触发
53
+ - currentChange((data, node)):当前选中节点变化时触发
54
+ - nodeClick((data, node, nodeInstance, evt: MouseEvent)):点击节点时触发
55
+ - nodeContextmenu((evt: Event, data, node, nodeInstance)):右键节点时触发
56
+ - nodeCollapse((data, node, nodeInstance)):节点收起时触发
57
+ - nodeExpand((data, node, nodeInstance)):节点展开时触发
58
+ - check((data, checkedInfo: CheckedInfo)):勾选节点时触发
59
+ - nodeDragStart((node, evt: DragEvent)):节点开始拖拽时触发
60
+ - nodeDragEnd((draggingNode, dropNode, dropType, evt: DragEvent)):拖拽结束时触发
61
+ - nodeDrop((draggingNode, dropNode, dropType, evt: DragEvent)):拖拽放置后触发
62
+ - nodeDragLeave((draggingNode, oldDropNode, evt: DragEvent)):拖拽离开节点时触发
63
+ - nodeDragEnter((draggingNode, dropNode, evt: DragEvent)):拖拽进入节点时触发
64
+ - nodeDragOver((draggingNode, dropNode, evt: DragEvent)):拖拽在节点上时触发
65
+
66
+ ## Slots
67
+
68
+ - default:自定义节点内容,参数为 `{ node, data }`
69
+ - empty:内容为空时的内容
70
+
71
+ ## Exposes
72
+
73
+ - filter((value: any) => void):过滤节点
74
+ - getCheckedNodes((leafOnly?: boolean) => Node[]):获取勾选节点
75
+ - setCheckedNodes((nodes: Node[]) => void):设置勾选节点
76
+ - getCheckedKeys((leafOnly?: boolean) => TreeKey[]):获取勾选节点的 key
77
+ - setCheckedKeys((keys: TreeKey[]) => void):设置勾选节点的 key
78
+ - setChecked((data: TreeKey | Node, checked: boolean, deep: boolean) => void):设置节点勾选状态
79
+ - getHalfCheckedNodes(() => Node[]):获取半选节点
80
+ - getHalfCheckedKeys(() => TreeKey[]):获取半选节点的 key
81
+ - getCurrentKey(() => TreeKey | undefined):获取当前选中节点的 key
82
+ - getCurrentNode(() => Node | undefined):获取当前选中节点
83
+ - setCurrentKey((key: TreeKey) => void):设置当前选中节点的 key
84
+ - setCurrentNode((node: Node) => void):设置当前选中节点
85
+ - getNode((data: TreeKey | TreeNodeData) => Node):根据 key 或 data 获取节点
86
+ - remove((data: TreeKey | Node) => void):删除节点
87
+ - append((data: TreeKey | Node, child: TreeNodeData) => void):追加子节点
88
+ - insertBefore((data: TreeKey | Node, child: TreeNodeData) => void):在节点前插入
89
+ - insertAfter((data: TreeKey | Node, child: TreeNodeData) => void):在节点后插入
90
+ - updateKeyChildren((key: TreeKey, data: TreeNodeData[]) => void):更新子节点的 key
91
+
92
+ ## 视觉提示
93
+
94
+ - 形状:块级数据区域
95
+ - 密度:紧凑
96
+ - 插槽内容:default:自定义节点内容,参数为 `{ node, data }`;empty:内容为空时的内容
97
+ - CSS 变量:--el-border-color-lighter、--el-bg-color、--el-text-color-regular、--el-font-size-base
98
+
99
+ ## 示例
100
+
101
+ ### 树形控件
102
+
103
+ ```vue
104
+ <script setup lang="ts">
105
+ import { EpTree } from 'ep-craft'
106
+
107
+ const data = [
108
+ {
109
+ id: 'root',
110
+ label: '根节点',
111
+ children: [
112
+ { id: 'child-1', label: '子节点一' },
113
+ { id: 'child-2', label: '子节点二' },
114
+ ],
115
+ },
116
+ ]
117
+ </script>
118
+
119
+ <template>
120
+ <ep-tree :data="data" node-key="id" default-expand-all show-checkbox />
121
+ </template>
122
+ ```
123
+
124
+ ## 相关条目
125
+
126
+ - EpTreeSelect
127
+ - EpTreeV2
128
+
129
+ ---
130
+
131
+ ep-craft 0.2.0