@a2simcode/ui 0.0.303 → 0.0.305

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 (417) hide show
  1. package/.cursor/skills/ui-component-helper/README.md +86 -86
  2. package/.cursor/skills/ui-component-helper/SKILL.md +115 -115
  3. package/LICENSE +53 -53
  4. package/README.md +156 -156
  5. package/dist/components/autocomplete/index.d.ts +3 -3
  6. package/dist/components/autocomplete/src/autocomplete.vue.d.ts +1 -1
  7. package/dist/components/buttons/index.d.ts +6 -0
  8. package/dist/components/buttons/src/index.vue.d.ts +9 -0
  9. package/dist/components/cascader-select/index.d.ts +3 -3
  10. package/dist/components/cascader-select/src/cascader-select.vue.d.ts +1 -1
  11. package/dist/components/checkbox/index.d.ts +3 -3
  12. package/dist/components/checkbox/src/checkbox.vue.d.ts +1 -1
  13. package/dist/components/code-mirror/index.d.ts +3 -3
  14. package/dist/components/code-mirror/src/code-mirror.vue.d.ts +1 -1
  15. package/dist/components/date/index.d.ts +3 -3
  16. package/dist/components/date/src/date.vue.d.ts +1 -1
  17. package/dist/components/editor/index.d.ts +3 -3
  18. package/dist/components/editor/src/editor.vue.d.ts +1 -1
  19. package/dist/components/input/index.d.ts +3 -3
  20. package/dist/components/input/src/input.vue.d.ts +1 -1
  21. package/dist/components/input-color/index.d.ts +3 -3
  22. package/dist/components/input-color/src/input-color.vue.d.ts +1 -1
  23. package/dist/components/input-layer/index.d.ts +3 -3
  24. package/dist/components/input-layer/src/input-layer.vue.d.ts +1 -1
  25. package/dist/components/input-map/index.d.ts +3 -3
  26. package/dist/components/input-map/src/input-map.vue.d.ts +1 -1
  27. package/dist/components/input-tag/index.d.ts +3 -3
  28. package/dist/components/input-tag/src/input-tag.vue.d.ts +1 -1
  29. package/dist/components/now-time/index.d.ts +3 -3
  30. package/dist/components/now-time/src/now-time.vue.d.ts +1 -1
  31. package/dist/components/number/index.d.ts +3 -3
  32. package/dist/components/number/src/number.vue.d.ts +1 -1
  33. package/dist/components/radio/index.d.ts +3 -3
  34. package/dist/components/radio/src/radio.vue.d.ts +1 -1
  35. package/dist/components/rate/index.d.ts +3 -3
  36. package/dist/components/rate/src/rate.vue.d.ts +1 -1
  37. package/dist/components/select/index.d.ts +3 -3
  38. package/dist/components/select/src/select.vue.d.ts +1 -1
  39. package/dist/components/slider/index.d.ts +3 -3
  40. package/dist/components/slider/src/slider.vue.d.ts +1 -1
  41. package/dist/components/switch/index.d.ts +3 -3
  42. package/dist/components/switch/src/switch.vue.d.ts +1 -1
  43. package/dist/components/time/index.d.ts +3 -3
  44. package/dist/components/time/src/time.vue.d.ts +1 -1
  45. package/dist/components/tree-select/index.d.ts +3 -3
  46. package/dist/components/tree-select/src/tree-select.vue.d.ts +1 -1
  47. package/dist/components/upload/index.d.ts +3 -3
  48. package/dist/components/upload/src/list.vue.d.ts +1 -1
  49. package/dist/components/upload/src/upload.vue.d.ts +1 -1
  50. package/dist/simcode-ui.es.js +134 -125
  51. package/dist/simcode-ui.umd.js +2 -2
  52. package/dist/stats.html +1 -1
  53. package/dist/ui.css +1 -1
  54. package/docs/components/autocomplete.md +89 -89
  55. package/docs/components/barcode.md +101 -101
  56. package/docs/components/button-select.md +24 -24
  57. package/docs/components/button.md +117 -117
  58. package/docs/components/buttons.md +119 -119
  59. package/docs/components/card-list.md +38 -38
  60. package/docs/components/cascader-select.md +114 -114
  61. package/docs/components/checkbox.md +114 -114
  62. package/docs/components/code-mirror.md +85 -85
  63. package/docs/components/collapse.md +26 -26
  64. package/docs/components/comp.md +106 -106
  65. package/docs/components/count-up.md +24 -24
  66. package/docs/components/count.md +24 -24
  67. package/docs/components/data-panel.md +24 -24
  68. package/docs/components/date.md +76 -76
  69. package/docs/components/dialog-full.md +112 -112
  70. package/docs/components/dialog.md +127 -127
  71. package/docs/components/divider.md +24 -24
  72. package/docs/components/drawer.md +127 -127
  73. package/docs/components/dynamic-layer.md +118 -118
  74. package/docs/components/echarts.md +72 -72
  75. package/docs/components/editor.md +24 -24
  76. package/docs/components/form.md +87 -87
  77. package/docs/components/guid.md +39 -39
  78. package/docs/components/hpanel.md +24 -24
  79. package/docs/components/icon.md +56 -56
  80. package/docs/components/input-button.md +24 -24
  81. package/docs/components/input-code.md +24 -24
  82. package/docs/components/input-color.md +114 -114
  83. package/docs/components/input-layer.md +56 -56
  84. package/docs/components/input-rows.md +370 -370
  85. package/docs/components/input-tag.md +50 -50
  86. package/docs/components/input.md +129 -129
  87. package/docs/components/layer-form.md +61 -61
  88. package/docs/components/layer.md +127 -127
  89. package/docs/components/layout.md +132 -132
  90. package/docs/components/map.md +24 -24
  91. package/docs/components/menu.md +121 -121
  92. package/docs/components/meta/button.ts +212 -212
  93. package/docs/components/meta/buttons.ts +7 -2
  94. package/docs/components/meta/card-list.ts +210 -210
  95. package/docs/components/meta/code-mirror.ts +108 -108
  96. package/docs/components/meta/comp.ts +235 -235
  97. package/docs/components/meta/date.ts +277 -277
  98. package/docs/components/meta/echarts.ts +64 -64
  99. package/docs/components/meta/form-item.ts +62 -62
  100. package/docs/components/meta/form.ts +181 -181
  101. package/docs/components/meta/input-button.ts +175 -175
  102. package/docs/components/meta/input-cards.ts +112 -112
  103. package/docs/components/meta/input-code.ts +161 -161
  104. package/docs/components/meta/input-color.ts +243 -243
  105. package/docs/components/meta/input-rows.ts +119 -119
  106. package/docs/components/meta/layer-form.ts +74 -74
  107. package/docs/components/meta/map.ts +68 -68
  108. package/docs/components/meta/panel.ts +152 -152
  109. package/docs/components/meta/radio.ts +55 -55
  110. package/docs/components/meta/select.ts +279 -279
  111. package/docs/components/meta/slider.ts +270 -270
  112. package/docs/components/meta/table-panel.ts +337 -337
  113. package/docs/components/meta/table.ts +489 -489
  114. package/docs/components/meta/tabs.ts +146 -146
  115. package/docs/components/meta/title.ts +91 -91
  116. package/docs/components/meta/tree-select.ts +220 -220
  117. package/docs/components/meta/tree.ts +225 -225
  118. package/docs/components/meta/vpanel.ts +19 -19
  119. package/docs/components/meta/workflow-viewer.ts +55 -55
  120. package/docs/components/number.md +124 -124
  121. package/docs/components/page.md +102 -102
  122. package/docs/components/panel.md +37 -37
  123. package/docs/components/radio.md +87 -87
  124. package/docs/components/rate.md +71 -71
  125. package/docs/components/select.md +133 -133
  126. package/docs/components/slider-captcha.md +41 -41
  127. package/docs/components/slider.md +101 -101
  128. package/docs/components/switch.md +90 -90
  129. package/docs/components/table-panel.md +342 -342
  130. package/docs/components/table.md +510 -510
  131. package/docs/components/tabs.md +26 -26
  132. package/docs/components/title.md +24 -24
  133. package/docs/components/tree.md +222 -222
  134. package/docs/components/upload.md +117 -117
  135. package/docs/components/workflow-viewer.md +21 -21
  136. package/docs/components/workflow.md +21 -21
  137. package/docs/examples/autocomplete/advanced.vue +35 -35
  138. package/docs/examples/autocomplete/basic.vue +32 -32
  139. package/docs/examples/autocomplete/clearable.vue +33 -33
  140. package/docs/examples/autocomplete/custom-template.vue +49 -49
  141. package/docs/examples/autocomplete/disabled.vue +33 -33
  142. package/docs/examples/autocomplete/icon.vue +37 -37
  143. package/docs/examples/barcode/all-types.vue +380 -380
  144. package/docs/examples/barcode/basic.vue +14 -14
  145. package/docs/examples/barcode/props-appearance.vue +243 -243
  146. package/docs/examples/barcode/props-geometry.vue +143 -143
  147. package/docs/examples/barcode/props-logic.vue +216 -216
  148. package/docs/examples/barcode/props-symbology.vue +199 -199
  149. package/docs/examples/barcode/props-text.vue +268 -268
  150. package/docs/examples/button/basic.vue +7 -7
  151. package/docs/examples/button/disabled.vue +42 -42
  152. package/docs/examples/button/loading.vue +6 -6
  153. package/docs/examples/button/shape.vue +7 -7
  154. package/docs/examples/button/size.vue +14 -14
  155. package/docs/examples/button/status.vue +34 -34
  156. package/docs/examples/button/type.vue +10 -10
  157. package/docs/examples/button-select/basic.vue +19 -19
  158. package/docs/examples/buttons/basic.vue +62 -62
  159. package/docs/examples/buttons/disabled.vue +36 -36
  160. package/docs/examples/buttons/dropdown.vue +63 -63
  161. package/docs/examples/buttons/group.vue +52 -52
  162. package/docs/examples/buttons/link.vue +47 -47
  163. package/docs/examples/buttons/popup.vue +39 -39
  164. package/docs/examples/buttons/size.vue +45 -45
  165. package/docs/examples/card-list/basic.vue +70 -70
  166. package/docs/examples/card-list/selection-pagination.vue +69 -69
  167. package/docs/examples/cascader-select/basic.vue +28 -28
  168. package/docs/examples/cascader-select/clearable.vue +34 -34
  169. package/docs/examples/cascader-select/disabled.vue +43 -43
  170. package/docs/examples/cascader-select/filterable.vue +37 -37
  171. package/docs/examples/cascader-select/methods.vue +84 -84
  172. package/docs/examples/cascader-select/multiple.vue +38 -38
  173. package/docs/examples/cascader-select/slot.vue +45 -45
  174. package/docs/examples/checkbox/basic.vue +18 -18
  175. package/docs/examples/checkbox/button.vue +19 -19
  176. package/docs/examples/checkbox/color.vue +25 -25
  177. package/docs/examples/checkbox/disabled.vue +17 -17
  178. package/docs/examples/checkbox/min-max.vue +20 -20
  179. package/docs/examples/checkbox/mixed.vue +56 -56
  180. package/docs/examples/checkbox/size.vue +28 -28
  181. package/docs/examples/code-mirror/basic.vue +11 -11
  182. package/docs/examples/code-mirror/events.vue +42 -42
  183. package/docs/examples/code-mirror/height.vue +25 -25
  184. package/docs/examples/code-mirror/mode.vue +33 -33
  185. package/docs/examples/code-mirror/readonly.vue +14 -14
  186. package/docs/examples/collapse/basic.vue +82 -82
  187. package/docs/examples/comp/basic.vue +7 -7
  188. package/docs/examples/comp/collapse.vue +38 -38
  189. package/docs/examples/comp/table-merge-rows.vue +77 -77
  190. package/docs/examples/comp/table-row-fixed-merge.vue +105 -105
  191. package/docs/examples/comp/tabs.vue +38 -38
  192. package/docs/examples/count/basic.vue +101 -101
  193. package/docs/examples/count-up/basic.vue +89 -89
  194. package/docs/examples/data-panel/basic.vue +110 -110
  195. package/docs/examples/date/basic.vue +73 -73
  196. package/docs/examples/date/default-value.vue +59 -59
  197. package/docs/examples/date/format.vue +75 -75
  198. package/docs/examples/date/range.vue +66 -66
  199. package/docs/examples/date/types.vue +79 -79
  200. package/docs/examples/decorated-title/basic.vue +31 -31
  201. package/docs/examples/dialog/basic.vue +36 -36
  202. package/docs/examples/dialog/custom-buttons.vue +44 -44
  203. package/docs/examples/dialog/fullscreen.vue +23 -23
  204. package/docs/examples/dialog/no-mask.vue +17 -17
  205. package/docs/examples/dialog/size.vue +44 -44
  206. package/docs/examples/dialog/steps.vue +57 -57
  207. package/docs/examples/dialog-full/basic.vue +29 -29
  208. package/docs/examples/dialog-full/custom-buttons.vue +45 -45
  209. package/docs/examples/dialog-full/no-buttons.vue +18 -18
  210. package/docs/examples/dialog-full/no-header.vue +27 -27
  211. package/docs/examples/dialog-full/steps.vue +71 -71
  212. package/docs/examples/divider/basic.vue +52 -52
  213. package/docs/examples/drawer/basic.vue +35 -35
  214. package/docs/examples/drawer/custom-buttons.vue +34 -34
  215. package/docs/examples/drawer/direction.vue +47 -47
  216. package/docs/examples/drawer/mask.vue +36 -36
  217. package/docs/examples/drawer/no-buttons.vue +20 -20
  218. package/docs/examples/drawer/size.vue +28 -28
  219. package/docs/examples/dynamic-layer/basic.vue +33 -33
  220. package/docs/examples/dynamic-layer/custom-buttons.vue +43 -43
  221. package/docs/examples/dynamic-layer/form.vue +73 -73
  222. package/docs/examples/dynamic-layer/steps.vue +52 -52
  223. package/docs/examples/dynamic-layer/types.vue +40 -40
  224. package/docs/examples/echarts/basic.vue +31 -31
  225. package/docs/examples/echarts/dynamic.vue +43 -43
  226. package/docs/examples/echarts/line.vue +46 -46
  227. package/docs/examples/echarts/pie.vue +44 -44
  228. package/docs/examples/editor/basic.vue +15 -15
  229. package/docs/examples/form/basic.vue +688 -688
  230. package/docs/examples/form/init.vue +76 -76
  231. package/docs/examples/form/master-detail.vue +203 -203
  232. package/docs/examples/form/rule-format.vue +179 -179
  233. package/docs/examples/form/view-table.vue +378 -378
  234. package/docs/examples/guid/basic.vue +10 -10
  235. package/docs/examples/guid/size.vue +13 -13
  236. package/docs/examples/hpanel/basic.vue +79 -79
  237. package/docs/examples/icon/basic.vue +9 -9
  238. package/docs/examples/icon/rotate-flip.vue +9 -9
  239. package/docs/examples/icon/size.vue +7 -7
  240. package/docs/examples/input/basic.vue +10 -10
  241. package/docs/examples/input/clearable.vue +12 -12
  242. package/docs/examples/input/disabled.vue +6 -6
  243. package/docs/examples/input/icon.vue +23 -23
  244. package/docs/examples/input/password.vue +18 -18
  245. package/docs/examples/input/size.vue +13 -13
  246. package/docs/examples/input/textarea.vue +25 -25
  247. package/docs/examples/input/word-limit.vue +28 -28
  248. package/docs/examples/input-button/basic.vue +33 -33
  249. package/docs/examples/input-cards/basic.vue +79 -79
  250. package/docs/examples/input-code/basic.vue +29 -29
  251. package/docs/examples/input-color/basic.vue +10 -10
  252. package/docs/examples/input-color/disabled.vue +13 -13
  253. package/docs/examples/input-color/format.vue +17 -17
  254. package/docs/examples/input-color/no-alpha.vue +13 -13
  255. package/docs/examples/input-color/only-button.vue +15 -15
  256. package/docs/examples/input-color/predefine.vue +31 -31
  257. package/docs/examples/input-color/size.vue +15 -15
  258. package/docs/examples/input-layer/basic.vue +85 -85
  259. package/docs/examples/input-layer/render-vnode-page.vue +160 -160
  260. package/docs/examples/input-layer/render-vnode.vue +127 -127
  261. package/docs/examples/input-rows/basic.vue +73 -73
  262. package/docs/examples/input-rows/drag.vue +48 -48
  263. package/docs/examples/input-rows/layer-form.vue +85 -85
  264. package/docs/examples/input-rows/nested.vue +91 -91
  265. package/docs/examples/input-tag/basic.vue +27 -27
  266. package/docs/examples/input-tag/colors.vue +23 -23
  267. package/docs/examples/input-tag/readonly.vue +17 -17
  268. package/docs/examples/layer/basic.vue +43 -43
  269. package/docs/examples/layer/custom-buttons.vue +61 -61
  270. package/docs/examples/layer/drawer.vue +37 -37
  271. package/docs/examples/layer/full.vue +38 -38
  272. package/docs/examples/layer/modal.vue +34 -34
  273. package/docs/examples/layer/steps.vue +46 -46
  274. package/docs/examples/layer-form/basic.vue +76 -76
  275. package/docs/examples/layer-form/config.vue +82 -82
  276. package/docs/examples/layer-form/size.vue +72 -72
  277. package/docs/examples/layout/basic.vue +36 -36
  278. package/docs/examples/layout/custom-size.vue +50 -50
  279. package/docs/examples/layout/disable-move.vue +37 -37
  280. package/docs/examples/layout/hide-mid-when-narrow.vue +96 -96
  281. package/docs/examples/layout/min-size.vue +73 -73
  282. package/docs/examples/layout/percent-size.vue +80 -80
  283. package/docs/examples/layout/simple.vue +22 -22
  284. package/docs/examples/layout/top-side.vue +34 -34
  285. package/docs/examples/map/basic.vue +22 -22
  286. package/docs/examples/menu/basic.vue +58 -58
  287. package/docs/examples/menu/collapsed.vue +49 -49
  288. package/docs/examples/menu/horizontal.vue +44 -44
  289. package/docs/examples/menu/selection-test.vue +104 -104
  290. package/docs/examples/menu/theme.vue +46 -46
  291. package/docs/examples/menu/vertical.vue +46 -46
  292. package/docs/examples/number/advanced.vue +143 -143
  293. package/docs/examples/number/basic.vue +63 -63
  294. package/docs/examples/number/disabled.vue +49 -49
  295. package/docs/examples/number/size.vue +42 -42
  296. package/docs/examples/number/slots.vue +123 -123
  297. package/docs/examples/number/step-strictly.vue +41 -41
  298. package/docs/examples/number/step.vue +47 -47
  299. package/docs/examples/page/basic.vue +41 -41
  300. package/docs/examples/page/code-table-model.vue +428 -428
  301. package/docs/examples/page/dept-user-management.vue +211 -211
  302. package/docs/examples/page/init.vue +87 -87
  303. package/docs/examples/page/log.vue +453 -453
  304. package/docs/examples/page/user-management.vue +313 -313
  305. package/docs/examples/panel/tool-buttons.vue +18 -18
  306. package/docs/examples/radio/basic.vue +17 -17
  307. package/docs/examples/radio/button.vue +17 -17
  308. package/docs/examples/radio/color.vue +18 -18
  309. package/docs/examples/radio/disabled.vue +17 -17
  310. package/docs/examples/radio/size.vue +29 -29
  311. package/docs/examples/rate/basic.vue +24 -24
  312. package/docs/examples/rate/half.vue +24 -24
  313. package/docs/examples/rate/readonly.vue +11 -11
  314. package/docs/examples/rate/text.vue +37 -37
  315. package/docs/examples/select/basic.vue +16 -16
  316. package/docs/examples/select/clearable.vue +22 -22
  317. package/docs/examples/select/disabled.vue +31 -31
  318. package/docs/examples/select/filterable.vue +24 -24
  319. package/docs/examples/select/group.vue +23 -23
  320. package/docs/examples/select/icon.vue +16 -16
  321. package/docs/examples/select/multiple.vue +18 -18
  322. package/docs/examples/select/size.vue +39 -39
  323. package/docs/examples/slider/basic.vue +42 -42
  324. package/docs/examples/slider/disabled.vue +17 -17
  325. package/docs/examples/slider/marks.vue +30 -30
  326. package/docs/examples/slider/size.vue +37 -37
  327. package/docs/examples/slider/tooltip.vue +36 -36
  328. package/docs/examples/slider/vertical.vue +26 -26
  329. package/docs/examples/slider-captcha/basic.vue +44 -44
  330. package/docs/examples/slider-captcha/custom.vue +48 -48
  331. package/docs/examples/switch/basic.vue +16 -16
  332. package/docs/examples/switch/disabled.vue +13 -13
  333. package/docs/examples/switch/loading.vue +13 -13
  334. package/docs/examples/switch/size.vue +15 -15
  335. package/docs/examples/switch/text.vue +13 -13
  336. package/docs/examples/table/action-filter.vue +126 -126
  337. package/docs/examples/table/actions.vue +116 -116
  338. package/docs/examples/table/add-row.vue +98 -98
  339. package/docs/examples/table/basic.vue +168 -168
  340. package/docs/examples/table/checkbox-layout.vue +68 -68
  341. package/docs/examples/table/column-filter.vue +96 -96
  342. package/docs/examples/table/custom-layout.vue +115 -115
  343. package/docs/examples/table/custom-merge-cell.vue +206 -206
  344. package/docs/examples/table/dynamic-type.vue +73 -73
  345. package/docs/examples/table/editable.vue +290 -290
  346. package/docs/examples/table/field-selection.vue +87 -87
  347. package/docs/examples/table/frozen-column.vue +140 -140
  348. package/docs/examples/table/height-mode.vue +99 -99
  349. package/docs/examples/table/icon.vue +85 -85
  350. package/docs/examples/table/layer-form.vue +133 -133
  351. package/docs/examples/table/link.vue +66 -66
  352. package/docs/examples/table/merge-cell.vue +78 -78
  353. package/docs/examples/table/merge-header.vue +86 -86
  354. package/docs/examples/table/multiple-disabled.vue +112 -112
  355. package/docs/examples/table/multiple.vue +188 -188
  356. package/docs/examples/table/pagination.vue +151 -151
  357. package/docs/examples/table/row-drag.vue +67 -67
  358. package/docs/examples/table/row-fixed.vue +61 -61
  359. package/docs/examples/table/single-selection.vue +64 -64
  360. package/docs/examples/table/sub-table-lazy.vue +97 -97
  361. package/docs/examples/table/sub-table.vue +103 -103
  362. package/docs/examples/table/tag.vue +43 -43
  363. package/docs/examples/table/tree-column.vue +119 -119
  364. package/docs/examples/table/tree-data.vue +141 -141
  365. package/docs/examples/table/tree-default-expand-all.vue +60 -60
  366. package/docs/examples/table/tree-lazy.vue +80 -80
  367. package/docs/examples/table/tree-set-selection.vue +75 -75
  368. package/docs/examples/table-panel/basic.vue +229 -229
  369. package/docs/examples/table-panel/batch-operations.vue +286 -286
  370. package/docs/examples/table-panel/button-visibility.vue +88 -88
  371. package/docs/examples/table-panel/card.vue +101 -101
  372. package/docs/examples/table-panel/column-filter.vue +116 -116
  373. package/docs/examples/table-panel/filter.vue +219 -219
  374. package/docs/examples/table-panel/get-selection.vue +111 -111
  375. package/docs/examples/table-panel/mask.vue +151 -151
  376. package/docs/examples/table-panel/model-value.vue +87 -87
  377. package/docs/examples/table-panel/multiple-selection.vue +243 -243
  378. package/docs/examples/table-panel/pagination-select-state-key.vue +176 -176
  379. package/docs/examples/table-panel/pagination.vue +133 -133
  380. package/docs/examples/table-panel/remote-selection.vue +159 -159
  381. package/docs/examples/table-panel/search-list.vue +207 -207
  382. package/docs/examples/table-panel/sub-table-lazy.vue +118 -118
  383. package/docs/examples/table-panel/tree-parent-key.vue +67 -67
  384. package/docs/examples/tabs/basic.vue +98 -98
  385. package/docs/examples/time/base.vue +67 -67
  386. package/docs/examples/title/basic.vue +87 -87
  387. package/docs/examples/tree/accordion.vue +46 -46
  388. package/docs/examples/tree/basic.vue +50 -50
  389. package/docs/examples/tree/buttons.vue +53 -53
  390. package/docs/examples/tree/check-strictly.vue +53 -53
  391. package/docs/examples/tree/checkable.vue +52 -52
  392. package/docs/examples/tree/custom-keys.vue +39 -39
  393. package/docs/examples/tree/default-expanded.vue +52 -52
  394. package/docs/examples/tree/draggable.vue +29 -29
  395. package/docs/examples/tree/expand-on-click.vue +39 -39
  396. package/docs/examples/tree/flat-data.vue +20 -20
  397. package/docs/examples/tree/icon.vue +40 -40
  398. package/docs/examples/tree/load-data.vue +37 -37
  399. package/docs/examples/tree/methods.vue +74 -74
  400. package/docs/examples/tree/theme.vue +33 -33
  401. package/docs/examples/tree-select/basic.vue +47 -47
  402. package/docs/examples/tree-select/lazy.vue +42 -42
  403. package/docs/examples/upload/accept.vue +31 -31
  404. package/docs/examples/upload/basic.vue +12 -12
  405. package/docs/examples/upload/drag.vue +11 -11
  406. package/docs/examples/upload/image.vue +17 -17
  407. package/docs/examples/upload/limit.vue +20 -20
  408. package/docs/examples/upload/multiple.vue +17 -17
  409. package/docs/examples/upload/readonly.vue +17 -17
  410. package/docs/examples/utils/cipher.vue +160 -160
  411. package/docs/examples/utils/common.vue +153 -153
  412. package/docs/examples/utils/date.vue +56 -56
  413. package/docs/examples/utils/dom.vue +52 -52
  414. package/docs/examples/utils/is.vue +70 -70
  415. package/docs/examples/workflow/basic.vue +265 -265
  416. package/docs/examples/workflow-viewer/basic.vue +248 -248
  417. package/package.json +23 -23
@@ -1,86 +1,86 @@
1
- # UI Component Helper Skill
2
-
3
- 这是一个 Cursor AI Skill,用于在使用 `@a2simcode/ui`(UI 组件)与 `@a2simcode/dui`(DUI 组件)的项目中,快速获取组件的:
4
-
5
- - API(Props / Events / Slots / Methods / Types,来自自动生成的 Meta 文件)
6
- - 文档说明(Markdown Guide)
7
- - 示例代码(可选:`docs/examples` 与 `docs-dui/examples`,打包后可能不存在)
8
-
9
- ## 安装方式
10
-
11
- ### 方式一:复制到项目本地(推荐)
12
-
13
- 1. 在你的项目根目录创建 `.cursor/skills/ui-component-helper/` 目录
14
- 2. 将 `node_modules/@a2simcode/ui/.cursor/skills/ui-component-helper/SKILL.md` 复制到 `.cursor/skills/ui-component-helper/SKILL.md`
15
-
16
- ```bash
17
- mkdir -p .cursor/skills/ui-component-helper
18
- cp node_modules/@a2simcode/ui/.cursor/skills/ui-component-helper/SKILL.md .cursor/skills/ui-component-helper/SKILL.md
19
- ```
20
-
21
- ### 方式二:使用符号链接
22
-
23
- ```bash
24
- mkdir -p .cursor/skills
25
- ln -s ../../node_modules/@a2simcode/ui/.cursor/skills/ui-component-helper .cursor/skills/ui-component-helper
26
- ```
27
-
28
- ## 使用方法
29
-
30
- 安装后,当你询问组件用法时,Cursor AI 会自动使用此技能来查找:
31
-
32
- - 组件的 Props、Events、Slots 定义(从 Meta 数据文件)
33
- - 组件的使用文档(从 Markdown 文档)
34
- - 组件的代码示例(如果示例文件不存在,则基于 Meta + 文档描述生成最小示例)
35
-
36
- ### 面向第三方项目的目标
37
-
38
- 该 Skill 的目标是让 AI 在第三方项目里生成“可直接运行的 SimCode UI / DUI 用法”,而不是文档站点内部的 Demo 写法。
39
-
40
- - 代码示例应使用真实组件标签(如 `j-button`, `d-drag`),不要输出 `<Demo>`、`<ApiTable>` 这类仅文档站点存在的组件
41
- - 代码示例的 import 应来自 `@a2simcode/ui` / `@a2simcode/dui`,不要引用 `docs/**`、`packages/**` 这类仅组件库仓库存在的路径
42
-
43
- ### 查找路径(与最新 UI 库结构一致)
44
-
45
- - UI:
46
- - Meta:`docs/components/meta/*.ts`
47
- - 文档:`docs/components/*.md`
48
- - 示例(可选):`docs/examples/<component>/*.vue`
49
- - DUI:
50
- - Meta:`docs-dui/components/meta/*.ts`
51
- - 文档:`docs-dui/components/*.md`
52
- - 示例(可选):`docs-dui/examples/<component>/*.vue`
53
-
54
- Skill 会优先从 `node_modules` 查找上述目录;找不到时,会回退到项目源码目录(适用于在组件库仓库内开发时)。
55
-
56
- ### 命名规则提示
57
-
58
- - UI 组件在模板中通常使用 `j-` 前缀(例如 `j-button`, `j-table`),对应的文档/Meta 文件名通常为不带前缀的组件名(例如 `button`, `table`)。
59
- - DUI 组件在模板中通常使用 `d-` 前缀(例如 `d-drag`),Meta 通常为 kebab-case(例如 `flow-design.ts`)。部分 DUI 文档/示例可能是 camelCase(例如 `flowDesign`),遇到查不到时需要尝试名称变体。
60
-
61
- ### 推荐的引入方式(第三方最常见)
62
-
63
- - UI 全量引入后可直接使用 `j-` 组件标签:
64
- - `import SimCodeUI from '@a2simcode/ui'`
65
- - `app.use(SimCodeUI)`
66
- - DUI 全量引入后可直接使用 `d-` 组件标签:
67
- - `import Dui from '@a2simcode/dui'`
68
- - `app.use(Dui)`
69
-
70
- 样式文件通常位于 `@a2simcode/ui/dist/style.css` 与 `@a2simcode/dui/dist/style.css`(若你的安装包导出为 `ui.css/dui.css`,以实际文件为准)。
71
-
72
- ## 示例问题
73
-
74
- - "j-button 组件有哪些属性?"
75
- - "怎么使用 j-table 组件?"
76
- - "d-drag 组件的 API 是什么?"
77
- - "给我一个 input 组件的示例"
78
- - "flowDesign 的 meta 文件在哪?为什么文档叫 flowDesign 但 meta 是 flow-design?"
79
- - "j-slider-captcha 支持哪些事件?给一个最小示例"
80
-
81
- ## 注意事项
82
-
83
- - 此技能会自动从 `node_modules/@a2simcode/ui` 和 `node_modules/@a2simcode/dui` 中查找文档
84
- - 如果文档不存在于 node_modules 中,会尝试从项目源码路径查找(适用于开发环境)
85
- - 打包发布后的第三方环境中可能缺少 `docs/examples` / `docs-dui/examples`,此时以 Meta 与文档为准,并自动生成可运行的最小用法片段
86
- - 确保已安装 `@a2simcode/ui` 或 `@a2simcode/dui` 包
1
+ # UI Component Helper Skill
2
+
3
+ 这是一个 Cursor AI Skill,用于在使用 `@a2simcode/ui`(UI 组件)与 `@a2simcode/dui`(DUI 组件)的项目中,快速获取组件的:
4
+
5
+ - API(Props / Events / Slots / Methods / Types,来自自动生成的 Meta 文件)
6
+ - 文档说明(Markdown Guide)
7
+ - 示例代码(可选:`docs/examples` 与 `docs-dui/examples`,打包后可能不存在)
8
+
9
+ ## 安装方式
10
+
11
+ ### 方式一:复制到项目本地(推荐)
12
+
13
+ 1. 在你的项目根目录创建 `.cursor/skills/ui-component-helper/` 目录
14
+ 2. 将 `node_modules/@a2simcode/ui/.cursor/skills/ui-component-helper/SKILL.md` 复制到 `.cursor/skills/ui-component-helper/SKILL.md`
15
+
16
+ ```bash
17
+ mkdir -p .cursor/skills/ui-component-helper
18
+ cp node_modules/@a2simcode/ui/.cursor/skills/ui-component-helper/SKILL.md .cursor/skills/ui-component-helper/SKILL.md
19
+ ```
20
+
21
+ ### 方式二:使用符号链接
22
+
23
+ ```bash
24
+ mkdir -p .cursor/skills
25
+ ln -s ../../node_modules/@a2simcode/ui/.cursor/skills/ui-component-helper .cursor/skills/ui-component-helper
26
+ ```
27
+
28
+ ## 使用方法
29
+
30
+ 安装后,当你询问组件用法时,Cursor AI 会自动使用此技能来查找:
31
+
32
+ - 组件的 Props、Events、Slots 定义(从 Meta 数据文件)
33
+ - 组件的使用文档(从 Markdown 文档)
34
+ - 组件的代码示例(如果示例文件不存在,则基于 Meta + 文档描述生成最小示例)
35
+
36
+ ### 面向第三方项目的目标
37
+
38
+ 该 Skill 的目标是让 AI 在第三方项目里生成“可直接运行的 SimCode UI / DUI 用法”,而不是文档站点内部的 Demo 写法。
39
+
40
+ - 代码示例应使用真实组件标签(如 `j-button`, `d-drag`),不要输出 `<Demo>`、`<ApiTable>` 这类仅文档站点存在的组件
41
+ - 代码示例的 import 应来自 `@a2simcode/ui` / `@a2simcode/dui`,不要引用 `docs/**`、`packages/**` 这类仅组件库仓库存在的路径
42
+
43
+ ### 查找路径(与最新 UI 库结构一致)
44
+
45
+ - UI:
46
+ - Meta:`docs/components/meta/*.ts`
47
+ - 文档:`docs/components/*.md`
48
+ - 示例(可选):`docs/examples/<component>/*.vue`
49
+ - DUI:
50
+ - Meta:`docs-dui/components/meta/*.ts`
51
+ - 文档:`docs-dui/components/*.md`
52
+ - 示例(可选):`docs-dui/examples/<component>/*.vue`
53
+
54
+ Skill 会优先从 `node_modules` 查找上述目录;找不到时,会回退到项目源码目录(适用于在组件库仓库内开发时)。
55
+
56
+ ### 命名规则提示
57
+
58
+ - UI 组件在模板中通常使用 `j-` 前缀(例如 `j-button`, `j-table`),对应的文档/Meta 文件名通常为不带前缀的组件名(例如 `button`, `table`)。
59
+ - DUI 组件在模板中通常使用 `d-` 前缀(例如 `d-drag`),Meta 通常为 kebab-case(例如 `flow-design.ts`)。部分 DUI 文档/示例可能是 camelCase(例如 `flowDesign`),遇到查不到时需要尝试名称变体。
60
+
61
+ ### 推荐的引入方式(第三方最常见)
62
+
63
+ - UI 全量引入后可直接使用 `j-` 组件标签:
64
+ - `import SimCodeUI from '@a2simcode/ui'`
65
+ - `app.use(SimCodeUI)`
66
+ - DUI 全量引入后可直接使用 `d-` 组件标签:
67
+ - `import Dui from '@a2simcode/dui'`
68
+ - `app.use(Dui)`
69
+
70
+ 样式文件通常位于 `@a2simcode/ui/dist/style.css` 与 `@a2simcode/dui/dist/style.css`(若你的安装包导出为 `ui.css/dui.css`,以实际文件为准)。
71
+
72
+ ## 示例问题
73
+
74
+ - "j-button 组件有哪些属性?"
75
+ - "怎么使用 j-table 组件?"
76
+ - "d-drag 组件的 API 是什么?"
77
+ - "给我一个 input 组件的示例"
78
+ - "flowDesign 的 meta 文件在哪?为什么文档叫 flowDesign 但 meta 是 flow-design?"
79
+ - "j-slider-captcha 支持哪些事件?给一个最小示例"
80
+
81
+ ## 注意事项
82
+
83
+ - 此技能会自动从 `node_modules/@a2simcode/ui` 和 `node_modules/@a2simcode/dui` 中查找文档
84
+ - 如果文档不存在于 node_modules 中,会尝试从项目源码路径查找(适用于开发环境)
85
+ - 打包发布后的第三方环境中可能缺少 `docs/examples` / `docs-dui/examples`,此时以 Meta 与文档为准,并自动生成可运行的最小用法片段
86
+ - 确保已安装 `@a2simcode/ui` 或 `@a2simcode/dui` 包
@@ -1,115 +1,115 @@
1
- ---
2
- name: 'ui-component-helper'
3
- description: '获取 @a2simcode/ui 和 @a2simcode/dui 组件的使用说明、Props 定义和示例。当用户询问组件用法或编写组件代码时调用。'
4
- ---
5
-
6
- # UI Component Helper
7
-
8
- 此 Skill 用于帮助用户查找和理解 `@a2simcode/ui`(UI 组件)与 `@a2simcode/dui`(DUI 组件)的使用方法。它会结合 **API 元数据(Meta)**、**文档说明(Guide)**、(可选的)**示例(Examples)** 与 **源码(Source)** 来输出可直接使用的答案(包含 Props / Events / Slots / Methods / Types 与代码示例)。
9
-
10
- ## 查找策略
11
-
12
- **优先级:Meta (API) > 文档说明 (Guide) > 示例 (Examples,可选) > 源码 (Source)**
13
-
14
- ### 组件命名与映射规则
15
-
16
- 1. UI 组件通常在模板里使用 `j-` 前缀(例如 `j-button`, `j-table`),对应源码组件名常为 `JButton`, `JTable`,文档与 Meta 的文件名通常不带前缀(例如 `button`, `table`)。
17
- 2. DUI 组件通常在模板里使用 `d-` 前缀(例如 `d-drag`, `d-draggable`),对应源码组件名常为 `DDrag`, `DDraggable`,Meta 文件名通常为 kebab-case(例如 `drag`, `flow-design`)。
18
- 3. DUI 的文档(`docs-dui/components/*.md`)与示例目录(`docs-dui/examples/*/`)在部分组件上可能使用 camelCase(例如 `flowDesign`),而 Meta 仍然是 kebab-case(例如 `flow-design.ts`)。当名称对不上时,务必尝试名称变体(见“定位组件和 API 定义”)。
19
-
20
- ### 路径查找策略
21
-
22
- 首先尝试从 npm 包中查找(适用于通过 npm 安装的项目),如果找不到则尝试从项目源码中查找:
23
-
24
- 1. **优先查找 node_modules**:
25
- - UI 组件 Meta: `node_modules/@a2simcode/ui/docs/components/meta/`
26
- - DUI 组件 Meta: `node_modules/@a2simcode/dui/docs-dui/components/meta/`
27
- - UI 组件文档: `node_modules/@a2simcode/ui/docs/components/`
28
- - DUI 组件文档: `node_modules/@a2simcode/dui/docs-dui/components/`
29
- - UI 组件示例: `node_modules/@a2simcode/ui/docs/examples/`
30
- - DUI 组件示例: `node_modules/@a2simcode/dui/docs-dui/examples/`
31
-
32
- 2. **备选:项目源码路径**(开发环境):
33
- - UI 组件 Meta: `docs/components/meta/`
34
- - DUI 组件 Meta: `docs-dui/components/meta/`
35
- - UI 组件文档: `docs/components/`
36
- - DUI 组件文档: `docs-dui/components/`
37
- - UI 组件示例: `docs/examples/`
38
- - DUI 组件示例: `docs-dui/examples/`
39
-
40
- ## 核心步骤
41
-
42
- ### 输出规则(面向第三方可运行代码)
43
-
44
- 1. 示例代码必须是“业务项目可直接使用”的写法:
45
- - 使用真实组件标签(如 `j-button`, `j-table`, `d-drag`),不要输出文档站点专用的 `<Demo>`、`<ApiTable>` 等组件
46
- - import 仅允许来自 `@a2simcode/ui` / `@a2simcode/dui`(或用户项目的既有代码),不要引用 `docs/**`、`docs-dui/**`、`packages/**`
47
- 2. 当用户未说明安装方式时,默认采用“全量引入 + 全局注册”的使用习惯:
48
- - UI:`app.use(SimCodeUI)` 后,用 `<j-button />` 这种 kebab-case 标签
49
- - DUI:`app.use(Dui)` 后,用 `<d-drag />` 这种 kebab-case 标签
50
- 3. 当用户明确“按需引入”或不想全局注册时:
51
- - 提供 `import { JButton } from '@a2simcode/ui'` / `import { DDrag } from '@a2simcode/dui'` 的写法
52
- - 模板中优先使用 PascalCase(如 `<JButton />` / `<DDrag />`),避免 Vue `<script setup>` 无法自动识别 kebab-case 的问题
53
-
54
- ### 第一步:定位组件和 API 定义
55
-
56
- 1. **识别用户输入的组件标识**:
57
- - 若输入是模板标签:去掉 `j-` / `d-` 前缀,得到基础名,例如 `j-button` → `button`,`d-drag` → `drag`。
58
- - 若输入是源码组件名:`JButton` / `DDrag` 通常可转换为 `button` / `drag`。
59
- - 对 DUI 组件,若名称不匹配(例如 `flowDesign`),需要额外尝试 kebab-case 变体(例如 `flow-design`)。
60
- 2. **查找 Meta 数据**(按优先级顺序,Meta 是回答 Props/Events/Slots/Methods/Types 的最权威来源):
61
- - 首先尝试:`node_modules/@a2simcode/ui/docs/components/meta/<component>.ts` 或 `node_modules/@a2simcode/dui/docs-dui/components/meta/<component>.ts`
62
- - 如果不存在,尝试:`docs/components/meta/<component>.ts` 或 `docs-dui/components/meta/<component>.ts`
63
- - 若 DUI 查不到:
64
- - 尝试将 `<component>` 替换为 kebab-case(例如 `flowDesign` → `flow-design`)
65
- - 再尝试将 `<component>` 替换为原始输入(可能文档/示例使用 camelCase,而 Meta 使用 kebab-case)
66
- - **关键**:读取 Meta 文件以获取结构化的 `props`, `events`, `slots`, `methods`, `types`。这是回答“有哪些属性/参数/类型”的最准确来源。
67
-
68
- ### 第二步:查找文档和示例
69
-
70
- 1. **查找 Markdown 文档**(按优先级顺序):
71
- - 首先尝试:`node_modules/@a2simcode/ui/docs/components/<component>.md` 或 `node_modules/@a2simcode/dui/docs-dui/components/<component>.md`
72
- - 如果不存在,尝试:`docs/components/<component>.md` 或 `docs-dui/components/<component>.md`
73
- - 获取组件的功能描述。
74
-
75
- 2. **查找示例代码(可选)**(按优先级顺序):
76
- - 首先尝试:`node_modules/@a2simcode/ui/docs/examples/<component>/basic.vue` 或 `node_modules/@a2simcode/dui/docs-dui/examples/<component>/basic.vue`
77
- - 如果不存在,尝试:`docs/examples/<component>/basic.vue` 或 `docs-dui/examples/<component>/basic.vue`
78
- - 若 DUI 示例目录找不到:
79
- - 尝试 `<component>` 的 camelCase / kebab-case 变体(示例目录与文档命名可能不同)
80
- - 优先查看 `basic.vue`(基础用法),再按需查看同目录下其它示例(例如 `disabled.vue`, `events.vue`, `methods.vue` 等)。
81
-
82
- ### 第三步:查阅源码 (备选)
83
-
84
- - 仅当 Meta 数据和文档都缺失,或需要了解内部实现细节时,才去查看源码:
85
- - UI: `node_modules/@a2simcode/ui/packages/components/` 或 `packages/components/`
86
- - DUI: `node_modules/@a2simcode/dui/packages/components-dui/` 或 `packages/components-dui/`
87
- - 若在开发仓库中仍无法定位 DUI 组件的真实源码路径,可参考映射配置:`scripts/dui-component-map.ts`(以组件名映射到源码路径与 Meta 输出路径)。
88
-
89
- ### 第四步:综合回答
90
-
91
- 1. **功能概述**:基于 Markdown 文档,说明用途与关键点。
92
- 2. **API 详细说明**:基于 Meta (`.ts`) 列出 Props / Events / Slots / Methods / Types,并包含类型与默认值。
93
- 3. **代码示例**:
94
- - 若存在 `examples/`:优先引用其中的用法
95
- - 若不存在 `examples/`(第三方安装包中常见):基于 Meta 的 props / events 与组件命名规则生成“最小可运行示例”,避免依赖文档站点内部的 demo 组件
96
-
97
- ## 常用组件映射
98
-
99
- - UI:
100
- - `j-button` → `docs/components/button.md` + `docs/components/meta/button.ts`(`docs/examples/button/` 可选)
101
- - `j-table` → `docs/components/table.md` + `docs/components/meta/table.ts`(`docs/examples/table/` 可选)
102
- - `j-slider-captcha` → `docs/components/slider-captcha.md` + `docs/components/meta/slider-captcha.ts`(`docs/examples/slider-captcha/` 可选)
103
- - DUI:
104
- - `d-drag` → `docs-dui/components/drag.md` + `docs-dui/components/meta/drag.ts`(`docs-dui/examples/drag/` 可选)
105
- - `d-draggable` → `docs-dui/components/draggable.md` + `docs-dui/components/meta/draggable.ts`(`docs-dui/examples/draggable/` 可选)
106
- - `flowDesign`(文档/示例)→ `docs-dui/components/flowDesign.md`(可能存在)+(可选)`docs-dui/examples/flowDesign/`;对应 Meta 通常为 `docs-dui/components/meta/flow-design.ts`
107
-
108
- ## 行动指南
109
-
110
- 当用户询问"怎么用 [组件名]"或"[组件名] 有哪些属性"时:
111
-
112
- 1. **首选**:读取 `node_modules/@a2simcode/ui/docs/components/meta/[组件名].ts` 或 `node_modules/@a2simcode/dui/docs-dui/components/meta/[组件名].ts` 获取 API 参数(如果不存在,尝试项目源码路径)。
113
- 2. **次选**:读取 `node_modules/@a2simcode/ui/docs/components/[组件名].md` 获取描述(如果不存在,尝试项目源码路径)。
114
- 3. **可选**:若存在示例目录,读取 `node_modules/@a2simcode/ui/docs/examples/[组件名]/basic.vue` 获取基础示例(如果不存在,尝试项目源码路径)。
115
- 4. **回答**:输出“功能概述 + API 清单 + 可运行示例”。当示例目录缺失时,示例由 Meta 与命名规则自动生成。
1
+ ---
2
+ name: 'ui-component-helper'
3
+ description: '获取 @a2simcode/ui 和 @a2simcode/dui 组件的使用说明、Props 定义和示例。当用户询问组件用法或编写组件代码时调用。'
4
+ ---
5
+
6
+ # UI Component Helper
7
+
8
+ 此 Skill 用于帮助用户查找和理解 `@a2simcode/ui`(UI 组件)与 `@a2simcode/dui`(DUI 组件)的使用方法。它会结合 **API 元数据(Meta)**、**文档说明(Guide)**、(可选的)**示例(Examples)** 与 **源码(Source)** 来输出可直接使用的答案(包含 Props / Events / Slots / Methods / Types 与代码示例)。
9
+
10
+ ## 查找策略
11
+
12
+ **优先级:Meta (API) > 文档说明 (Guide) > 示例 (Examples,可选) > 源码 (Source)**
13
+
14
+ ### 组件命名与映射规则
15
+
16
+ 1. UI 组件通常在模板里使用 `j-` 前缀(例如 `j-button`, `j-table`),对应源码组件名常为 `JButton`, `JTable`,文档与 Meta 的文件名通常不带前缀(例如 `button`, `table`)。
17
+ 2. DUI 组件通常在模板里使用 `d-` 前缀(例如 `d-drag`, `d-draggable`),对应源码组件名常为 `DDrag`, `DDraggable`,Meta 文件名通常为 kebab-case(例如 `drag`, `flow-design`)。
18
+ 3. DUI 的文档(`docs-dui/components/*.md`)与示例目录(`docs-dui/examples/*/`)在部分组件上可能使用 camelCase(例如 `flowDesign`),而 Meta 仍然是 kebab-case(例如 `flow-design.ts`)。当名称对不上时,务必尝试名称变体(见“定位组件和 API 定义”)。
19
+
20
+ ### 路径查找策略
21
+
22
+ 首先尝试从 npm 包中查找(适用于通过 npm 安装的项目),如果找不到则尝试从项目源码中查找:
23
+
24
+ 1. **优先查找 node_modules**:
25
+ - UI 组件 Meta: `node_modules/@a2simcode/ui/docs/components/meta/`
26
+ - DUI 组件 Meta: `node_modules/@a2simcode/dui/docs-dui/components/meta/`
27
+ - UI 组件文档: `node_modules/@a2simcode/ui/docs/components/`
28
+ - DUI 组件文档: `node_modules/@a2simcode/dui/docs-dui/components/`
29
+ - UI 组件示例: `node_modules/@a2simcode/ui/docs/examples/`
30
+ - DUI 组件示例: `node_modules/@a2simcode/dui/docs-dui/examples/`
31
+
32
+ 2. **备选:项目源码路径**(开发环境):
33
+ - UI 组件 Meta: `docs/components/meta/`
34
+ - DUI 组件 Meta: `docs-dui/components/meta/`
35
+ - UI 组件文档: `docs/components/`
36
+ - DUI 组件文档: `docs-dui/components/`
37
+ - UI 组件示例: `docs/examples/`
38
+ - DUI 组件示例: `docs-dui/examples/`
39
+
40
+ ## 核心步骤
41
+
42
+ ### 输出规则(面向第三方可运行代码)
43
+
44
+ 1. 示例代码必须是“业务项目可直接使用”的写法:
45
+ - 使用真实组件标签(如 `j-button`, `j-table`, `d-drag`),不要输出文档站点专用的 `<Demo>`、`<ApiTable>` 等组件
46
+ - import 仅允许来自 `@a2simcode/ui` / `@a2simcode/dui`(或用户项目的既有代码),不要引用 `docs/**`、`docs-dui/**`、`packages/**`
47
+ 2. 当用户未说明安装方式时,默认采用“全量引入 + 全局注册”的使用习惯:
48
+ - UI:`app.use(SimCodeUI)` 后,用 `<j-button />` 这种 kebab-case 标签
49
+ - DUI:`app.use(Dui)` 后,用 `<d-drag />` 这种 kebab-case 标签
50
+ 3. 当用户明确“按需引入”或不想全局注册时:
51
+ - 提供 `import { JButton } from '@a2simcode/ui'` / `import { DDrag } from '@a2simcode/dui'` 的写法
52
+ - 模板中优先使用 PascalCase(如 `<JButton />` / `<DDrag />`),避免 Vue `<script setup>` 无法自动识别 kebab-case 的问题
53
+
54
+ ### 第一步:定位组件和 API 定义
55
+
56
+ 1. **识别用户输入的组件标识**:
57
+ - 若输入是模板标签:去掉 `j-` / `d-` 前缀,得到基础名,例如 `j-button` → `button`,`d-drag` → `drag`。
58
+ - 若输入是源码组件名:`JButton` / `DDrag` 通常可转换为 `button` / `drag`。
59
+ - 对 DUI 组件,若名称不匹配(例如 `flowDesign`),需要额外尝试 kebab-case 变体(例如 `flow-design`)。
60
+ 2. **查找 Meta 数据**(按优先级顺序,Meta 是回答 Props/Events/Slots/Methods/Types 的最权威来源):
61
+ - 首先尝试:`node_modules/@a2simcode/ui/docs/components/meta/<component>.ts` 或 `node_modules/@a2simcode/dui/docs-dui/components/meta/<component>.ts`
62
+ - 如果不存在,尝试:`docs/components/meta/<component>.ts` 或 `docs-dui/components/meta/<component>.ts`
63
+ - 若 DUI 查不到:
64
+ - 尝试将 `<component>` 替换为 kebab-case(例如 `flowDesign` → `flow-design`)
65
+ - 再尝试将 `<component>` 替换为原始输入(可能文档/示例使用 camelCase,而 Meta 使用 kebab-case)
66
+ - **关键**:读取 Meta 文件以获取结构化的 `props`, `events`, `slots`, `methods`, `types`。这是回答“有哪些属性/参数/类型”的最准确来源。
67
+
68
+ ### 第二步:查找文档和示例
69
+
70
+ 1. **查找 Markdown 文档**(按优先级顺序):
71
+ - 首先尝试:`node_modules/@a2simcode/ui/docs/components/<component>.md` 或 `node_modules/@a2simcode/dui/docs-dui/components/<component>.md`
72
+ - 如果不存在,尝试:`docs/components/<component>.md` 或 `docs-dui/components/<component>.md`
73
+ - 获取组件的功能描述。
74
+
75
+ 2. **查找示例代码(可选)**(按优先级顺序):
76
+ - 首先尝试:`node_modules/@a2simcode/ui/docs/examples/<component>/basic.vue` 或 `node_modules/@a2simcode/dui/docs-dui/examples/<component>/basic.vue`
77
+ - 如果不存在,尝试:`docs/examples/<component>/basic.vue` 或 `docs-dui/examples/<component>/basic.vue`
78
+ - 若 DUI 示例目录找不到:
79
+ - 尝试 `<component>` 的 camelCase / kebab-case 变体(示例目录与文档命名可能不同)
80
+ - 优先查看 `basic.vue`(基础用法),再按需查看同目录下其它示例(例如 `disabled.vue`, `events.vue`, `methods.vue` 等)。
81
+
82
+ ### 第三步:查阅源码 (备选)
83
+
84
+ - 仅当 Meta 数据和文档都缺失,或需要了解内部实现细节时,才去查看源码:
85
+ - UI: `node_modules/@a2simcode/ui/packages/components/` 或 `packages/components/`
86
+ - DUI: `node_modules/@a2simcode/dui/packages/components-dui/` 或 `packages/components-dui/`
87
+ - 若在开发仓库中仍无法定位 DUI 组件的真实源码路径,可参考映射配置:`scripts/dui-component-map.ts`(以组件名映射到源码路径与 Meta 输出路径)。
88
+
89
+ ### 第四步:综合回答
90
+
91
+ 1. **功能概述**:基于 Markdown 文档,说明用途与关键点。
92
+ 2. **API 详细说明**:基于 Meta (`.ts`) 列出 Props / Events / Slots / Methods / Types,并包含类型与默认值。
93
+ 3. **代码示例**:
94
+ - 若存在 `examples/`:优先引用其中的用法
95
+ - 若不存在 `examples/`(第三方安装包中常见):基于 Meta 的 props / events 与组件命名规则生成“最小可运行示例”,避免依赖文档站点内部的 demo 组件
96
+
97
+ ## 常用组件映射
98
+
99
+ - UI:
100
+ - `j-button` → `docs/components/button.md` + `docs/components/meta/button.ts`(`docs/examples/button/` 可选)
101
+ - `j-table` → `docs/components/table.md` + `docs/components/meta/table.ts`(`docs/examples/table/` 可选)
102
+ - `j-slider-captcha` → `docs/components/slider-captcha.md` + `docs/components/meta/slider-captcha.ts`(`docs/examples/slider-captcha/` 可选)
103
+ - DUI:
104
+ - `d-drag` → `docs-dui/components/drag.md` + `docs-dui/components/meta/drag.ts`(`docs-dui/examples/drag/` 可选)
105
+ - `d-draggable` → `docs-dui/components/draggable.md` + `docs-dui/components/meta/draggable.ts`(`docs-dui/examples/draggable/` 可选)
106
+ - `flowDesign`(文档/示例)→ `docs-dui/components/flowDesign.md`(可能存在)+(可选)`docs-dui/examples/flowDesign/`;对应 Meta 通常为 `docs-dui/components/meta/flow-design.ts`
107
+
108
+ ## 行动指南
109
+
110
+ 当用户询问"怎么用 [组件名]"或"[组件名] 有哪些属性"时:
111
+
112
+ 1. **首选**:读取 `node_modules/@a2simcode/ui/docs/components/meta/[组件名].ts` 或 `node_modules/@a2simcode/dui/docs-dui/components/meta/[组件名].ts` 获取 API 参数(如果不存在,尝试项目源码路径)。
113
+ 2. **次选**:读取 `node_modules/@a2simcode/ui/docs/components/[组件名].md` 获取描述(如果不存在,尝试项目源码路径)。
114
+ 3. **可选**:若存在示例目录,读取 `node_modules/@a2simcode/ui/docs/examples/[组件名]/basic.vue` 获取基础示例(如果不存在,尝试项目源码路径)。
115
+ 4. **回答**:输出“功能概述 + API 清单 + 可运行示例”。当示例目录缺失时,示例由 Meta 与命名规则自动生成。
package/LICENSE CHANGED
@@ -1,53 +1,53 @@
1
- 专有软件许可协议
2
-
3
- 版权所有 © 2024 苏州极简搭信息技术有限公司。保留所有权利。
4
-
5
- 本软件及其相关文档("软件")为专有软件,受版权法和国际条约保护。
6
-
7
- 许可限制:
8
-
9
- 1. 本软件仅授权给获得明确书面许可的用户使用。
10
-
11
- 2. 未经版权所有者事先书面同意,您不得:
12
- - 复制、修改、改编或翻译本软件
13
- - 对本软件进行反向工程、反编译或反汇编
14
- - 出租、出借、分发、转让或再许可本软件
15
- - 删除或修改本软件中的任何版权声明或其他所有权标记
16
-
17
- 3. 本软件按"现状"提供,不提供任何明示或暗示的保证,包括但不限于适销性、特定用途适用性和非侵权性的保证。
18
-
19
- 4. 在任何情况下,版权所有者均不对因使用或无法使用本软件而产生的任何索赔、损害或其他责任负责。
20
-
21
- 5. 本许可协议受中华人民共和国法律管辖。
22
-
23
- 如需获得使用许可,请联系版权所有者。
24
-
25
- ---
26
-
27
- PROPRIETARY SOFTWARE LICENSE
28
-
29
- Copyright © 2024 Suzhou Jijian-da Information Technology Co., Ltd. All rights reserved.
30
-
31
- This software and associated documentation files (the "Software") is proprietary
32
- software protected by copyright laws and international treaties.
33
-
34
- License Restrictions:
35
-
36
- 1. This Software is licensed only to users who have obtained explicit written permission.
37
-
38
- 2. Without prior written consent from the copyright holder, you may not:
39
- - Copy, modify, adapt, or translate the Software
40
- - Reverse engineer, decompile, or disassemble the Software
41
- - Rent, lease, distribute, transfer, or sublicense the Software
42
- - Remove or modify any copyright notices or other proprietary markings in the Software
43
-
44
- 3. The Software is provided "as is" without warranty of any kind, express or implied,
45
- including but not limited to warranties of merchantability, fitness for a particular
46
- purpose, and non-infringement.
47
-
48
- 4. In no event shall the copyright holder be liable for any claims, damages, or other
49
- liability arising from the use or inability to use the Software.
50
-
51
- 5. This license agreement is governed by the laws of the People's Republic of China.
52
-
53
- For licensing inquiries, please contact the copyright holder.
1
+ 专有软件许可协议
2
+
3
+ 版权所有 © 2024 苏州极简搭信息技术有限公司。保留所有权利。
4
+
5
+ 本软件及其相关文档("软件")为专有软件,受版权法和国际条约保护。
6
+
7
+ 许可限制:
8
+
9
+ 1. 本软件仅授权给获得明确书面许可的用户使用。
10
+
11
+ 2. 未经版权所有者事先书面同意,您不得:
12
+ - 复制、修改、改编或翻译本软件
13
+ - 对本软件进行反向工程、反编译或反汇编
14
+ - 出租、出借、分发、转让或再许可本软件
15
+ - 删除或修改本软件中的任何版权声明或其他所有权标记
16
+
17
+ 3. 本软件按"现状"提供,不提供任何明示或暗示的保证,包括但不限于适销性、特定用途适用性和非侵权性的保证。
18
+
19
+ 4. 在任何情况下,版权所有者均不对因使用或无法使用本软件而产生的任何索赔、损害或其他责任负责。
20
+
21
+ 5. 本许可协议受中华人民共和国法律管辖。
22
+
23
+ 如需获得使用许可,请联系版权所有者。
24
+
25
+ ---
26
+
27
+ PROPRIETARY SOFTWARE LICENSE
28
+
29
+ Copyright © 2024 Suzhou Jijian-da Information Technology Co., Ltd. All rights reserved.
30
+
31
+ This software and associated documentation files (the "Software") is proprietary
32
+ software protected by copyright laws and international treaties.
33
+
34
+ License Restrictions:
35
+
36
+ 1. This Software is licensed only to users who have obtained explicit written permission.
37
+
38
+ 2. Without prior written consent from the copyright holder, you may not:
39
+ - Copy, modify, adapt, or translate the Software
40
+ - Reverse engineer, decompile, or disassemble the Software
41
+ - Rent, lease, distribute, transfer, or sublicense the Software
42
+ - Remove or modify any copyright notices or other proprietary markings in the Software
43
+
44
+ 3. The Software is provided "as is" without warranty of any kind, express or implied,
45
+ including but not limited to warranties of merchantability, fitness for a particular
46
+ purpose, and non-infringement.
47
+
48
+ 4. In no event shall the copyright holder be liable for any claims, damages, or other
49
+ liability arising from the use or inability to use the Software.
50
+
51
+ 5. This license agreement is governed by the laws of the People's Republic of China.
52
+
53
+ For licensing inquiries, please contact the copyright holder.