@blueking/bkui-knowledge 0.0.1-beta.1

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 (588) hide show
  1. package/README.md +316 -0
  2. package/bin/bkui-knowledge.js +321 -0
  3. package/knowledge/component-apis/affix.json +41 -0
  4. package/knowledge/component-apis/alert.json +63 -0
  5. package/knowledge/component-apis/animate-number.json +24 -0
  6. package/knowledge/component-apis/backtop.json +39 -0
  7. package/knowledge/component-apis/badge.json +70 -0
  8. package/knowledge/component-apis/breadcrumb.json +41 -0
  9. package/knowledge/component-apis/button.json +87 -0
  10. package/knowledge/component-apis/card.json +62 -0
  11. package/knowledge/component-apis/cascader.json +92 -0
  12. package/knowledge/component-apis/checkbox.json +103 -0
  13. package/knowledge/component-apis/code-diff.json +43 -0
  14. package/knowledge/component-apis/collapse.json +96 -0
  15. package/knowledge/component-apis/color-picker.json +60 -0
  16. package/knowledge/component-apis/config-provider.json +29 -0
  17. package/knowledge/component-apis/container.json +59 -0
  18. package/knowledge/component-apis/date-picker.json +84 -0
  19. package/knowledge/component-apis/dialog.json +124 -0
  20. package/knowledge/component-apis/divider.json +39 -0
  21. package/knowledge/component-apis/dropdown.json +60 -0
  22. package/knowledge/component-apis/exception.json +43 -0
  23. package/knowledge/component-apis/fixed-navbar.json +43 -0
  24. package/knowledge/component-apis/form.json +56 -0
  25. package/knowledge/component-apis/image.json +73 -0
  26. package/knowledge/component-apis/info-box.json +75 -0
  27. package/knowledge/component-apis/input.json +146 -0
  28. package/knowledge/component-apis/link.json +46 -0
  29. package/knowledge/component-apis/loading.json +48 -0
  30. package/knowledge/component-apis/menu.json +108 -0
  31. package/knowledge/component-apis/message.json +47 -0
  32. package/knowledge/component-apis/navigation.json +143 -0
  33. package/knowledge/component-apis/notify.json +57 -0
  34. package/knowledge/component-apis/overflow-title.json +38 -0
  35. package/knowledge/component-apis/pagination.json +98 -0
  36. package/knowledge/component-apis/pop-confirm.json +79 -0
  37. package/knowledge/component-apis/popover.json +73 -0
  38. package/knowledge/component-apis/process.json +55 -0
  39. package/knowledge/component-apis/progress.json +74 -0
  40. package/knowledge/component-apis/radio.json +79 -0
  41. package/knowledge/component-apis/rate.json +38 -0
  42. package/knowledge/component-apis/resize-layout.json +72 -0
  43. package/knowledge/component-apis/scrollbar.json +73 -0
  44. package/knowledge/component-apis/search-select.json +74 -0
  45. package/knowledge/component-apis/select.json +146 -0
  46. package/knowledge/component-apis/sideslider.json +80 -0
  47. package/knowledge/component-apis/slider.json +93 -0
  48. package/knowledge/component-apis/steps.json +51 -0
  49. package/knowledge/component-apis/swiper.json +51 -0
  50. package/knowledge/component-apis/switcher.json +93 -0
  51. package/knowledge/component-apis/tab.json +116 -0
  52. package/knowledge/component-apis/table.json +215 -0
  53. package/knowledge/component-apis/tag-input.json +110 -0
  54. package/knowledge/component-apis/tag.json +89 -0
  55. package/knowledge/component-apis/time-picker.json +63 -0
  56. package/knowledge/component-apis/timeline.json +42 -0
  57. package/knowledge/component-apis/transfer.json +78 -0
  58. package/knowledge/component-apis/tree.json +98 -0
  59. package/knowledge/component-apis/upload.json +103 -0
  60. package/knowledge/component-apis/virtual-render.json +71 -0
  61. package/knowledge/examples/404.tsx +33 -0
  62. package/knowledge/examples/affix/demo/affix-bottom.vue +6 -0
  63. package/knowledge/examples/affix/demo/affix-callback.vue +17 -0
  64. package/knowledge/examples/affix/demo/affix-container.vue +26 -0
  65. package/knowledge/examples/affix/demo/affix-top.vue +6 -0
  66. package/knowledge/examples/affix/demo/affix-z-index.vue +9 -0
  67. package/knowledge/examples/affix/demo/affix.vue +6 -0
  68. package/knowledge/examples/affix/index.tsx +165 -0
  69. package/knowledge/examples/alert/demo/alert-close-text.vue +38 -0
  70. package/knowledge/examples/alert/demo/alert-close.vue +30 -0
  71. package/knowledge/examples/alert/demo/alert-show-icon.vue +30 -0
  72. package/knowledge/examples/alert/demo/alert.vue +26 -0
  73. package/knowledge/examples/alert/index.tsx +171 -0
  74. package/knowledge/examples/animate-number/base-demo.vue +17 -0
  75. package/knowledge/examples/animate-number/index.tsx +80 -0
  76. package/knowledge/examples/backtop/base-demo.vue +4 -0
  77. package/knowledge/examples/backtop/index.tsx +102 -0
  78. package/knowledge/examples/badge/badge-demo.vue +63 -0
  79. package/knowledge/examples/badge/badge-dot.vue +27 -0
  80. package/knowledge/examples/badge/badge.vue +34 -0
  81. package/knowledge/examples/badge/index.tsx +191 -0
  82. package/knowledge/examples/blueking/crontab/demo/base.vue +7 -0
  83. package/knowledge/examples/blueking/crontab/index.tsx +82 -0
  84. package/knowledge/examples/blueking/date-picker/base-demo.vue +11 -0
  85. package/knowledge/examples/blueking/date-picker/baseline-time-demo.vue +39 -0
  86. package/knowledge/examples/blueking/date-picker/index.tsx +272 -0
  87. package/knowledge/examples/blueking/date-picker/simple-demo.vue +14 -0
  88. package/knowledge/examples/blueking/date-picker/time-demo.vue +39 -0
  89. package/knowledge/examples/blueking/date-picker/timezone-demo.vue +15 -0
  90. package/knowledge/examples/blueking/date-picker/validate-demo.vue +67 -0
  91. package/knowledge/examples/blueking/ediatable/base-config-demo.vue +97 -0
  92. package/knowledge/examples/blueking/ediatable/base-demo.vue +106 -0
  93. package/knowledge/examples/blueking/ediatable/components/cluster-name.vue +62 -0
  94. package/knowledge/examples/blueking/ediatable/components/regex-keys.vue +71 -0
  95. package/knowledge/examples/blueking/ediatable/components/render-row.vue +152 -0
  96. package/knowledge/examples/blueking/ediatable/components/switch-mode.vue +68 -0
  97. package/knowledge/examples/blueking/ediatable/components/target-datetime.vue +74 -0
  98. package/knowledge/examples/blueking/ediatable/components/target-number.vue +59 -0
  99. package/knowledge/examples/blueking/ediatable/datetime-picker-column-demo.vue +63 -0
  100. package/knowledge/examples/blueking/ediatable/index.tsx +400 -0
  101. package/knowledge/examples/blueking/ediatable/input-column-demo.vue +54 -0
  102. package/knowledge/examples/blueking/ediatable/select-column-demo.vue +67 -0
  103. package/knowledge/examples/blueking/ediatable/tag-input-column.vue +54 -0
  104. package/knowledge/examples/blueking/ediatable/text-plain-column-demo.vue +64 -0
  105. package/knowledge/examples/blueking/functional-deps/base-demo.vue +19 -0
  106. package/knowledge/examples/blueking/functional-deps/dialog-demo.vue +29 -0
  107. package/knowledge/examples/blueking/functional-deps/index.tsx +146 -0
  108. package/knowledge/examples/blueking/functional-deps/partial-demo.vue +19 -0
  109. package/knowledge/examples/blueking/log-search/base-demo.vue +36 -0
  110. package/knowledge/examples/blueking/log-search/index.tsx +102 -0
  111. package/knowledge/examples/blueking/log-search/module-combina-demo.vue +39 -0
  112. package/knowledge/examples/blueking/release-note/async-loading-demo.vue +40 -0
  113. package/knowledge/examples/blueking/release-note/base-demo.vue +23 -0
  114. package/knowledge/examples/blueking/release-note/index.tsx +208 -0
  115. package/knowledge/examples/blueking/release-note/release-note.vue +497 -0
  116. package/knowledge/examples/blueking/release-note/slot-demo.vue +21 -0
  117. package/knowledge/examples/blueking/status-tag/base-demo.vue +91 -0
  118. package/knowledge/examples/blueking/status-tag/custom-color-demo.vue +109 -0
  119. package/knowledge/examples/blueking/status-tag/i18n-demo.vue +148 -0
  120. package/knowledge/examples/blueking/status-tag/index.tsx +180 -0
  121. package/knowledge/examples/blueking/status-tag/installation-demo.vue +94 -0
  122. package/knowledge/examples/blueking/status-tag/type-demo.vue +132 -0
  123. package/knowledge/examples/breadcrumb/base-demo.vue +37 -0
  124. package/knowledge/examples/breadcrumb/index.tsx +215 -0
  125. package/knowledge/examples/breadcrumb/prefix-demo.vue +59 -0
  126. package/knowledge/examples/breadcrumb/separator-demo.vue +63 -0
  127. package/knowledge/examples/button/demo/basic.vue +21 -0
  128. package/knowledge/examples/button/demo/disabled.vue +17 -0
  129. package/knowledge/examples/button/demo/group.vue +141 -0
  130. package/knowledge/examples/button/demo/icon.vue +73 -0
  131. package/knowledge/examples/button/demo/loading-button.vue +31 -0
  132. package/knowledge/examples/button/demo/mouse-hover.vue +29 -0
  133. package/knowledge/examples/button/demo/outline.vue +18 -0
  134. package/knowledge/examples/button/demo/size.vue +139 -0
  135. package/knowledge/examples/button/demo/text.vue +36 -0
  136. package/knowledge/examples/button/index.tsx +210 -0
  137. package/knowledge/examples/card/card-demo.vue +89 -0
  138. package/knowledge/examples/card/card-edit.vue +68 -0
  139. package/knowledge/examples/card/index.tsx +197 -0
  140. package/knowledge/examples/cascader/base-demo.vue +87 -0
  141. package/knowledge/examples/cascader/check-any-level-demo.vue +87 -0
  142. package/knowledge/examples/cascader/checkbox-demo.vue +97 -0
  143. package/knowledge/examples/cascader/custom-fillback.vue +53 -0
  144. package/knowledge/examples/cascader/custom-trigger-demo.vue +83 -0
  145. package/knowledge/examples/cascader/extension-demo.vue +284 -0
  146. package/knowledge/examples/cascader/id-key.vue +166 -0
  147. package/knowledge/examples/cascader/index.tsx +424 -0
  148. package/knowledge/examples/cascader/multiple-toggle-demo.vue +81 -0
  149. package/knowledge/examples/cascader/panel-slot-demo.vue +81 -0
  150. package/knowledge/examples/cascader/remote-demo.vue +44 -0
  151. package/knowledge/examples/cascader/separator-demo.vue +66 -0
  152. package/knowledge/examples/cascader/show-complete-name.vue +69 -0
  153. package/knowledge/examples/cascader/slots-demo.vue +117 -0
  154. package/knowledge/examples/cascader.tsx +102 -0
  155. package/knowledge/examples/checkbox/demo/checkbox-checked.vue +18 -0
  156. package/knowledge/examples/checkbox/demo/checkbox-disabled.vue +18 -0
  157. package/knowledge/examples/checkbox/demo/checkbox-group.vue +15 -0
  158. package/knowledge/examples/checkbox/demo/checkbox-indeterminate.vue +10 -0
  159. package/knowledge/examples/checkbox/demo/checkbox-prechecked.vue +26 -0
  160. package/knowledge/examples/checkbox/demo/checkbox.vue +10 -0
  161. package/knowledge/examples/checkbox/index.tsx +239 -0
  162. package/knowledge/examples/code-diff/demo/basic.vue +87 -0
  163. package/knowledge/examples/code-diff/demo/demo.ts +111 -0
  164. package/knowledge/examples/code-diff/demo/diff-context.vue +93 -0
  165. package/knowledge/examples/code-diff/demo/format.vue +94 -0
  166. package/knowledge/examples/code-diff/demo/theme.vue +96 -0
  167. package/knowledge/examples/code-diff/index.tsx +171 -0
  168. package/knowledge/examples/collapse/demo/collapse-accordion.vue +32 -0
  169. package/knowledge/examples/collapse/demo/collapse-block.vue +30 -0
  170. package/knowledge/examples/collapse/demo/collapse-card.vue +30 -0
  171. package/knowledge/examples/collapse/demo/collapse-click.vue +38 -0
  172. package/knowledge/examples/collapse/demo/collapse-disabled.vue +34 -0
  173. package/knowledge/examples/collapse/demo/collapse-enter-leave.vue +38 -0
  174. package/knowledge/examples/collapse/demo/collapse-icon-align.vue +32 -0
  175. package/knowledge/examples/collapse/demo/collapse-icon.vue +31 -0
  176. package/knowledge/examples/collapse/demo/collapse-jsx.tsx +77 -0
  177. package/knowledge/examples/collapse/demo/collapse-line.vue +31 -0
  178. package/knowledge/examples/collapse/demo/collapse-panel.vue +43 -0
  179. package/knowledge/examples/collapse/demo/collapse-single.vue +13 -0
  180. package/knowledge/examples/collapse/demo/collapse-slot.vue +33 -0
  181. package/knowledge/examples/collapse/demo/collapse-title.vue +33 -0
  182. package/knowledge/examples/collapse/demo/collapse.vue +30 -0
  183. package/knowledge/examples/collapse/index.tsx +473 -0
  184. package/knowledge/examples/collapse.tsx +68 -0
  185. package/knowledge/examples/color-picker/base-demo.vue +34 -0
  186. package/knowledge/examples/color-picker/color-picker.tsx +200 -0
  187. package/knowledge/examples/color-picker/preset-demo.vue +25 -0
  188. package/knowledge/examples/color-picker/size-demo.vue +29 -0
  189. package/knowledge/examples/color-picker/slot-demo.vue +34 -0
  190. package/knowledge/examples/container/demo/all.vue +152 -0
  191. package/knowledge/examples/container/demo/base.vue +111 -0
  192. package/knowledge/examples/container/demo/custom-col.vue +78 -0
  193. package/knowledge/examples/container/demo/custom-gutter.vue +86 -0
  194. package/knowledge/examples/container/demo/custom-push-pull.vue +90 -0
  195. package/knowledge/examples/container/demo/flex.vue +63 -0
  196. package/knowledge/examples/container/index.tsx +209 -0
  197. package/knowledge/examples/date-picker/base-demo.vue +19 -0
  198. package/knowledge/examples/date-picker/demo-tsx.tsx +49 -0
  199. package/knowledge/examples/date-picker/footer-slot-demo.vue +26 -0
  200. package/knowledge/examples/date-picker/header-slot-demo.vue +26 -0
  201. package/knowledge/examples/date-picker/index.tsx +436 -0
  202. package/knowledge/examples/date-picker/month-range-demo.vue +33 -0
  203. package/knowledge/examples/date-picker/range-demo.vue +50 -0
  204. package/knowledge/examples/date-picker/shortcuts-slot-demo.vue +157 -0
  205. package/knowledge/examples/date-picker/trigger-slot-demo.vue +149 -0
  206. package/knowledge/examples/date-picker/with-time-demo.vue +44 -0
  207. package/knowledge/examples/date-picker/year-month-demo.vue +33 -0
  208. package/knowledge/examples/date-picker/year-range-demo.vue +33 -0
  209. package/knowledge/examples/dialog/base-demo.vue +52 -0
  210. package/knowledge/examples/dialog/before-close-demo.vue +47 -0
  211. package/knowledge/examples/dialog/fullscreen-demo.vue +66 -0
  212. package/knowledge/examples/dialog/index.tsx +338 -0
  213. package/knowledge/examples/dialog/mask-demo.vue +27 -0
  214. package/knowledge/examples/dialog/nested-demo.vue +76 -0
  215. package/knowledge/examples/divider/base-demo.vue +14 -0
  216. package/knowledge/examples/divider/divider.tsx +117 -0
  217. package/knowledge/examples/dropdown/align-demo.vue +46 -0
  218. package/knowledge/examples/dropdown/base-demo.vue +36 -0
  219. package/knowledge/examples/dropdown/boundary-body-demo.vue +34 -0
  220. package/knowledge/examples/dropdown/disabled-demo.vue +45 -0
  221. package/knowledge/examples/dropdown/dropdown-methods-demo.vue +35 -0
  222. package/knowledge/examples/dropdown/dropdown.tsx +246 -0
  223. package/knowledge/examples/dropdown/hide-ignore-reference.vue +37 -0
  224. package/knowledge/examples/dropdown/is-show-demo.vue +39 -0
  225. package/knowledge/examples/dropdown/trigger-demo.vue +30 -0
  226. package/knowledge/examples/dropdown.tsx +164 -0
  227. package/knowledge/examples/exception/base-demo.vue +63 -0
  228. package/knowledge/examples/exception/exception.tsx +98 -0
  229. package/knowledge/examples/exception/part-demo.vue +80 -0
  230. package/knowledge/examples/exception.tsx +147 -0
  231. package/knowledge/examples/fixed-navbar/base-demo.vue +29 -0
  232. package/knowledge/examples/fixed-navbar/index.tsx +151 -0
  233. package/knowledge/examples/form/demo/compose-form-item.vue +46 -0
  234. package/knowledge/examples/form/demo/form-description.vue +63 -0
  235. package/knowledge/examples/form/demo/form-validator.vue +115 -0
  236. package/knowledge/examples/form/demo/form-vertical.vue +60 -0
  237. package/knowledge/examples/form/demo/form.vue +94 -0
  238. package/knowledge/examples/form/index.tsx +383 -0
  239. package/knowledge/examples/home.tsx +36 -0
  240. package/knowledge/examples/icon/base-demo.vue +93 -0
  241. package/knowledge/examples/icon/import-demo.vue +12 -0
  242. package/knowledge/examples/icon/index.tsx +90 -0
  243. package/knowledge/examples/info-box/align-demo.vue +30 -0
  244. package/knowledge/examples/info-box/base-demo.vue +35 -0
  245. package/knowledge/examples/info-box/button-text-demo.vue +25 -0
  246. package/knowledge/examples/info-box/callback-demo.vue +27 -0
  247. package/knowledge/examples/info-box/index.tsx +272 -0
  248. package/knowledge/examples/info-box/status-demo.vue +81 -0
  249. package/knowledge/examples/input/demo/autosize.vue +68 -0
  250. package/knowledge/examples/input/demo/basic.vue +19 -0
  251. package/knowledge/examples/input/demo/clearable.vue +15 -0
  252. package/knowledge/examples/input/demo/combine.vue +86 -0
  253. package/knowledge/examples/input/demo/event-callback.vue +19 -0
  254. package/knowledge/examples/input/demo/hover-clear.vue +13 -0
  255. package/knowledge/examples/input/demo/icon.vue +41 -0
  256. package/knowledge/examples/input/demo/max-length.vue +38 -0
  257. package/knowledge/examples/input/demo/native-attrs.vue +27 -0
  258. package/knowledge/examples/input/demo/number.vue +54 -0
  259. package/knowledge/examples/input/demo/password.vue +13 -0
  260. package/knowledge/examples/input/demo/simple.vue +13 -0
  261. package/knowledge/examples/input/demo/size.vue +52 -0
  262. package/knowledge/examples/input/demo/status.vue +23 -0
  263. package/knowledge/examples/input/demo/textarea.vue +31 -0
  264. package/knowledge/examples/input/index.tsx +587 -0
  265. package/knowledge/examples/link/base-demo.vue +31 -0
  266. package/knowledge/examples/link/disable-demo.vue +35 -0
  267. package/knowledge/examples/link/icon-demo.vue +23 -0
  268. package/knowledge/examples/link/index.tsx +120 -0
  269. package/knowledge/examples/loading/demo/basic.vue +15 -0
  270. package/knowledge/examples/loading/demo/directive.vue +52 -0
  271. package/knowledge/examples/loading/demo/mask.vue +26 -0
  272. package/knowledge/examples/loading/demo/mode.vue +31 -0
  273. package/knowledge/examples/loading/demo/size.vue +28 -0
  274. package/knowledge/examples/loading/demo/theme.vue +30 -0
  275. package/knowledge/examples/loading/demo/title.vue +22 -0
  276. package/knowledge/examples/loading/index.tsx +187 -0
  277. package/knowledge/examples/menu/base-demo.vue +62 -0
  278. package/knowledge/examples/menu/index.tsx +224 -0
  279. package/knowledge/examples/message/base-demo.vue +16 -0
  280. package/knowledge/examples/message/close-demo.vue +34 -0
  281. package/knowledge/examples/message/message.tsx +337 -0
  282. package/knowledge/examples/message/multi-demo.vue +135 -0
  283. package/knowledge/examples/message/theme-demo.vue +59 -0
  284. package/knowledge/examples/navigation/base-demo.vue +117 -0
  285. package/knowledge/examples/navigation/index.tsx +175 -0
  286. package/knowledge/examples/navigation/theme-demo.vue +124 -0
  287. package/knowledge/examples/notify/demo/base.vue +37 -0
  288. package/knowledge/examples/notify/demo/close.vue +42 -0
  289. package/knowledge/examples/notify/demo/position.vue +55 -0
  290. package/knowledge/examples/notify/demo/theme.vue +45 -0
  291. package/knowledge/examples/notify/index.tsx +177 -0
  292. package/knowledge/examples/overflow-title/base-demo.vue +15 -0
  293. package/knowledge/examples/overflow-title/directive.vue +21 -0
  294. package/knowledge/examples/overflow-title/index.tsx +153 -0
  295. package/knowledge/examples/pagination/demo/pagination-small.vue +16 -0
  296. package/knowledge/examples/pagination/demo/pagination.vue +16 -0
  297. package/knowledge/examples/pagination/index.tsx +193 -0
  298. package/knowledge/examples/pop-components.tsx +151 -0
  299. package/knowledge/examples/pop-confirm/demo-base.vue +42 -0
  300. package/knowledge/examples/pop-confirm/demo-icon.vue +27 -0
  301. package/knowledge/examples/pop-confirm/demo-select.vue +44 -0
  302. package/knowledge/examples/pop-confirm/demo-simple.vue +27 -0
  303. package/knowledge/examples/pop-confirm/demo-slot.vue +27 -0
  304. package/knowledge/examples/pop-confirm/hide-ignore-reference.vue +45 -0
  305. package/knowledge/examples/pop-confirm/index.tsx +266 -0
  306. package/knowledge/examples/popover/demo/always.vue +12 -0
  307. package/knowledge/examples/popover/demo/base.vue +34 -0
  308. package/knowledge/examples/popover/demo/callback.vue +28 -0
  309. package/knowledge/examples/popover/demo/hide-ignore-reference.vue +9 -0
  310. package/knowledge/examples/popover/demo/manual-trigger.vue +43 -0
  311. package/knowledge/examples/popover/demo/mouse-event.vue +48 -0
  312. package/knowledge/examples/popover/demo/position.vue +165 -0
  313. package/knowledge/examples/popover/demo/slot.vue +20 -0
  314. package/knowledge/examples/popover/index.tsx +425 -0
  315. package/knowledge/examples/process/base-demo.vue +32 -0
  316. package/knowledge/examples/process/index.tsx +141 -0
  317. package/knowledge/examples/process/loading-demo.vue +30 -0
  318. package/knowledge/examples/process/status-demo.vue +42 -0
  319. package/knowledge/examples/process.tsx +65 -0
  320. package/knowledge/examples/progress/base-demo.vue +52 -0
  321. package/knowledge/examples/progress/change-demo.vue +43 -0
  322. package/knowledge/examples/progress/index.tsx +253 -0
  323. package/knowledge/examples/progress/size-demo.vue +100 -0
  324. package/knowledge/examples/progress/text-demo.vue +51 -0
  325. package/knowledge/examples/progress/type-demo.vue +44 -0
  326. package/knowledge/examples/progress/type-size-demo.vue +69 -0
  327. package/knowledge/examples/radio/demo/radio-button.vue +12 -0
  328. package/knowledge/examples/radio/demo/radio-card.vue +15 -0
  329. package/knowledge/examples/radio/demo/radio-checked.vue +11 -0
  330. package/knowledge/examples/radio/demo/radio-disabled.vue +16 -0
  331. package/knowledge/examples/radio/demo/radio-group-capsule.vue +17 -0
  332. package/knowledge/examples/radio/demo/radio-group.vue +41 -0
  333. package/knowledge/examples/radio/demo/radio.vue +45 -0
  334. package/knowledge/examples/radio/index.tsx +300 -0
  335. package/knowledge/examples/rate/base-demo.vue +11 -0
  336. package/knowledge/examples/rate/edit-demo.vue +16 -0
  337. package/knowledge/examples/rate/index.tsx +140 -0
  338. package/knowledge/examples/rate/size-demo.vue +19 -0
  339. package/knowledge/examples/resize-layout/advance-demo.vue +52 -0
  340. package/knowledge/examples/resize-layout/auto-minimize-demo.vue +16 -0
  341. package/knowledge/examples/resize-layout/base-demo.vue +28 -0
  342. package/knowledge/examples/resize-layout/collapsible-demo.vue +16 -0
  343. package/knowledge/examples/resize-layout/immediate-demo.vue +18 -0
  344. package/knowledge/examples/resize-layout/resize-layout.tsx +251 -0
  345. package/knowledge/examples/search-select/base-demo.vue +152 -0
  346. package/knowledge/examples/search-select/comprehensive-use.vue +133 -0
  347. package/knowledge/examples/search-select/index.tsx +352 -0
  348. package/knowledge/examples/search-select/menu-demo.vue +134 -0
  349. package/knowledge/examples/search-select/placeholder-demo.vue +75 -0
  350. package/knowledge/examples/search-select/remote-demo.vue +82 -0
  351. package/knowledge/examples/search-select/validate-demo.vue +99 -0
  352. package/knowledge/examples/search-select/value-behavior.vue +56 -0
  353. package/knowledge/examples/select/select-allow-create.vue +95 -0
  354. package/knowledge/examples/select/select-base-demo.vue +116 -0
  355. package/knowledge/examples/select/select-group-demo.vue +88 -0
  356. package/knowledge/examples/select/select-multi-demo.vue +140 -0
  357. package/knowledge/examples/select/select-scrollloading-demo.vue +68 -0
  358. package/knowledge/examples/select/select-search-demo.vue +151 -0
  359. package/knowledge/examples/select/select-slot-demo.vue +226 -0
  360. package/knowledge/examples/select/select-style-demo.vue +119 -0
  361. package/knowledge/examples/select/select-tree-demo.vue +130 -0
  362. package/knowledge/examples/select/select-trigger-demo.vue +74 -0
  363. package/knowledge/examples/select/select-virtual-render.vue +51 -0
  364. package/knowledge/examples/select/select.tsx +697 -0
  365. package/knowledge/examples/sideslider/base-demo.vue +28 -0
  366. package/knowledge/examples/sideslider/before-close-demo.vue +40 -0
  367. package/knowledge/examples/sideslider/direction-demo.vue +52 -0
  368. package/knowledge/examples/sideslider/footer-demo.vue +45 -0
  369. package/knowledge/examples/sideslider/index.tsx +248 -0
  370. package/knowledge/examples/sideslider/sideslider.tsx +104 -0
  371. package/knowledge/examples/sideslider/title-demo.vue +29 -0
  372. package/knowledge/examples/slider/base-demo.vue +49 -0
  373. package/knowledge/examples/slider/custom-demo.vue +57 -0
  374. package/knowledge/examples/slider/input-demo.vue +45 -0
  375. package/knowledge/examples/slider/slider.tsx +295 -0
  376. package/knowledge/examples/slider/step-demo.vue +70 -0
  377. package/knowledge/examples/slider/vertical-demo.vue +33 -0
  378. package/knowledge/examples/slider.tsx +143 -0
  379. package/knowledge/examples/start/index.tsx +42 -0
  380. package/knowledge/examples/start/start.md +86 -0
  381. package/knowledge/examples/steps/base-demo.vue +8 -0
  382. package/knowledge/examples/steps/controllable-demo.vue +32 -0
  383. package/knowledge/examples/steps/custom-demo.vue +45 -0
  384. package/knowledge/examples/steps/direction-demo.vue +28 -0
  385. package/knowledge/examples/steps/index.tsx +206 -0
  386. package/knowledge/examples/steps/size-demo.vue +5 -0
  387. package/knowledge/examples/steps/status-demo.vue +20 -0
  388. package/knowledge/examples/steps/theme-demo.vue +25 -0
  389. package/knowledge/examples/steps.tsx +107 -0
  390. package/knowledge/examples/swiper/base-demo.vue +24 -0
  391. package/knowledge/examples/swiper/index.tsx +135 -0
  392. package/knowledge/examples/swiper/slot-demo.vue +18 -0
  393. package/knowledge/examples/switcher/base-demo.vue +33 -0
  394. package/knowledge/examples/switcher/before-change-demo.vue +35 -0
  395. package/knowledge/examples/switcher/disabled-demo.vue +67 -0
  396. package/knowledge/examples/switcher/index.tsx +261 -0
  397. package/knowledge/examples/switcher/size-demo.vue +43 -0
  398. package/knowledge/examples/switcher/text-demo.vue +46 -0
  399. package/knowledge/examples/switcher/theme-demo.vue +36 -0
  400. package/knowledge/examples/switcher/type-demo.vue +173 -0
  401. package/knowledge/examples/tab/demo-add.vue +48 -0
  402. package/knowledge/examples/tab/demo-base.vue +36 -0
  403. package/knowledge/examples/tab/demo-border-card.vue +29 -0
  404. package/knowledge/examples/tab/demo-card-grid.vue +29 -0
  405. package/knowledge/examples/tab/demo-card-tab.vue +29 -0
  406. package/knowledge/examples/tab/demo-card.vue +41 -0
  407. package/knowledge/examples/tab/demo-drag.vue +30 -0
  408. package/knowledge/examples/tab/demo-extend.vue +58 -0
  409. package/knowledge/examples/tab/demo-jsx.tsx +196 -0
  410. package/knowledge/examples/tab/demo-number.vue +95 -0
  411. package/knowledge/examples/tab/demo-position.vue +46 -0
  412. package/knowledge/examples/tab/index.tsx +334 -0
  413. package/knowledge/examples/table/basic-filter.vue +130 -0
  414. package/knowledge/examples/table/basic-sort-behavior.vue +62 -0
  415. package/knowledge/examples/table/basic-sort.vue +64 -0
  416. package/knowledge/examples/table/basic-span.vue +70 -0
  417. package/knowledge/examples/table/basic.tsx +323 -0
  418. package/knowledge/examples/table/basic.vue +229 -0
  419. package/knowledge/examples/table/bordered.vue +34 -0
  420. package/knowledge/examples/table/btn-demo.vue +20 -0
  421. package/knowledge/examples/table/cell-render.tsx +68 -0
  422. package/knowledge/examples/table/col-wrapper.vue +10 -0
  423. package/knowledge/examples/table/column-template-index.vue +66 -0
  424. package/knowledge/examples/table/column-template.tsx +63 -0
  425. package/knowledge/examples/table/column-template.vue +129 -0
  426. package/knowledge/examples/table/config.ts +831 -0
  427. package/knowledge/examples/table/custom-head.vue +63 -0
  428. package/knowledge/examples/table/data-empty-cell.vue +130 -0
  429. package/knowledge/examples/table/data-empty.vue +53 -0
  430. package/knowledge/examples/table/event.vue +40 -0
  431. package/knowledge/examples/table/expand.vue +67 -0
  432. package/knowledge/examples/table/filter-scope.vue +59 -0
  433. package/knowledge/examples/table/fixed.vue +24 -0
  434. package/knowledge/examples/table/flex-layout.vue +46 -0
  435. package/knowledge/examples/table/index.tsx +495 -0
  436. package/knowledge/examples/table/multi-header.vue +218 -0
  437. package/knowledge/examples/table/options.tsx +385 -0
  438. package/knowledge/examples/table/pagination.vue +31 -0
  439. package/knowledge/examples/table/remotePagination.vue +54 -0
  440. package/knowledge/examples/table/scroll-horizontal.vue +45 -0
  441. package/knowledge/examples/table/scroll-loading-slot.vue +56 -0
  442. package/knowledge/examples/table/scroll-loading.vue +65 -0
  443. package/knowledge/examples/table/selection.vue +48 -0
  444. package/knowledge/examples/table/virtual-render.vue +59 -0
  445. package/knowledge/examples/tag/base-demo.vue +21 -0
  446. package/knowledge/examples/tag/check-demo.vue +28 -0
  447. package/knowledge/examples/tag/closable-demo.vue +21 -0
  448. package/knowledge/examples/tag/icon-demo.vue +26 -0
  449. package/knowledge/examples/tag/index.tsx +213 -0
  450. package/knowledge/examples/tag/radius-demo.vue +29 -0
  451. package/knowledge/examples/tag/size-demo.vue +42 -0
  452. package/knowledge/examples/tag/type-demo.vue +71 -0
  453. package/knowledge/examples/tag-input/base-demo.vue +34 -0
  454. package/knowledge/examples/tag-input/clear-demo.vue +36 -0
  455. package/knowledge/examples/tag-input/copy-demo.vue +48 -0
  456. package/knowledge/examples/tag-input/create-demo.vue +29 -0
  457. package/knowledge/examples/tag-input/disabled-demo.vue +27 -0
  458. package/knowledge/examples/tag-input/example-demo.vue +47 -0
  459. package/knowledge/examples/tag-input/group-demo.vue +45 -0
  460. package/knowledge/examples/tag-input/index.tsx +438 -0
  461. package/knowledge/examples/tag-input/list-disabled-demo.vue +27 -0
  462. package/knowledge/examples/tag-input/match-demo.vue +38 -0
  463. package/knowledge/examples/tag-input/more-demo.vue +38 -0
  464. package/knowledge/examples/tag-input/paste-demo.vue +31 -0
  465. package/knowledge/examples/tag-input/single-demo.vue +62 -0
  466. package/knowledge/examples/tag-input/tooltips-demo.vue +47 -0
  467. package/knowledge/examples/tag-input/trigger-demo.vue +28 -0
  468. package/knowledge/examples/test.tsx +60 -0
  469. package/knowledge/examples/time-picker/base-demo.vue +8 -0
  470. package/knowledge/examples/time-picker/index.tsx +296 -0
  471. package/knowledge/examples/time-picker/range-demo.vue +18 -0
  472. package/knowledge/examples/timeline/base-demo.vue +50 -0
  473. package/knowledge/examples/timeline/custom-demo.vue +57 -0
  474. package/knowledge/examples/timeline/html-demo.vue +41 -0
  475. package/knowledge/examples/timeline/index.tsx +212 -0
  476. package/knowledge/examples/timeline/node-demo.vue +45 -0
  477. package/knowledge/examples/timeline/status-demo.vue +131 -0
  478. package/knowledge/examples/timeline/vnode-demo.vue +84 -0
  479. package/knowledge/examples/timeline.tsx +101 -0
  480. package/knowledge/examples/tooltips/demo/base.tsx +54 -0
  481. package/knowledge/examples/tooltips/demo/base.vue +42 -0
  482. package/knowledge/examples/tooltips/demo/boundary.vue +50 -0
  483. package/knowledge/examples/tooltips/demo/callback.vue +52 -0
  484. package/knowledge/examples/tooltips/demo/click.vue +42 -0
  485. package/knowledge/examples/tooltips/demo/position.vue +111 -0
  486. package/knowledge/examples/tooltips/index.tsx +218 -0
  487. package/knowledge/examples/transfer/base-demo.vue +47 -0
  488. package/knowledge/examples/transfer/custom-header-demo.vue +147 -0
  489. package/knowledge/examples/transfer/custom-option-demo.vue +47 -0
  490. package/knowledge/examples/transfer/index.tsx +288 -0
  491. package/knowledge/examples/transfer/multiple-demo.vue +41 -0
  492. package/knowledge/examples/transfer/normal-list-demo.vue +30 -0
  493. package/knowledge/examples/transfer/search-demo.vue +152 -0
  494. package/knowledge/examples/transfer/target-list-demo.vue +46 -0
  495. package/knowledge/examples/tree/async.vue +119 -0
  496. package/knowledge/examples/tree/auto-config.vue +65 -0
  497. package/knowledge/examples/tree/basic.vue +53 -0
  498. package/knowledge/examples/tree/config.ts +342 -0
  499. package/knowledge/examples/tree/custom-node.vue +101 -0
  500. package/knowledge/examples/tree/draggable-function.vue +43 -0
  501. package/knowledge/examples/tree/draggable.vue +47 -0
  502. package/knowledge/examples/tree/expand-all.vue +26 -0
  503. package/knowledge/examples/tree/index.tsx +262 -0
  504. package/knowledge/examples/tree/level-line.vue +45 -0
  505. package/knowledge/examples/tree/node-content-action.vue +78 -0
  506. package/knowledge/examples/tree/options.ts +463 -0
  507. package/knowledge/examples/tree/prefix-icon-jsx.tsx +76 -0
  508. package/knowledge/examples/tree/prefix-icon.vue +128 -0
  509. package/knowledge/examples/tree/search.vue +108 -0
  510. package/knowledge/examples/tree/selected.vue +98 -0
  511. package/knowledge/examples/tree/tree.less +14 -0
  512. package/knowledge/examples/tree/virtual-render.vue +111 -0
  513. package/knowledge/examples/upload/demo/accept-image.vue +22 -0
  514. package/knowledge/examples/upload/demo/accept-zip.vue +22 -0
  515. package/knowledge/examples/upload/demo/base.vue +70 -0
  516. package/knowledge/examples/upload/demo/limit.vue +34 -0
  517. package/knowledge/examples/upload/demo/max-size.vue +27 -0
  518. package/knowledge/examples/upload/demo/preview-image.vue +90 -0
  519. package/knowledge/examples/upload/demo/single-picture.vue +36 -0
  520. package/knowledge/examples/upload/demo/slots-file.vue +68 -0
  521. package/knowledge/examples/upload/demo/theme-button.vue +30 -0
  522. package/knowledge/examples/upload/demo/theme-picture.vue +36 -0
  523. package/knowledge/examples/upload/index.tsx +407 -0
  524. package/knowledge/examples/utils/index.ts +81 -0
  525. package/knowledge/examples/virtual-render/basic.vue +127 -0
  526. package/knowledge/examples/virtual-render/custom-line-height.vue +122 -0
  527. package/knowledge/examples/virtual-render/index.tsx +79 -0
  528. package/knowledge/examples/virtual-render/scrollbar.vue +130 -0
  529. package/knowledge/manifest.json +667 -0
  530. package/knowledge/skills/.template/README.md +38 -0
  531. package/knowledge/skills/.template/SKILL.md +48 -0
  532. package/knowledge/skills/.template/assets/.gitkeep +3 -0
  533. package/knowledge/skills/.template/references/advanced.md +23 -0
  534. package/knowledge/skills/.template/references/examples.md +19 -0
  535. package/knowledge/skills/.template/references/troubleshooting.md +27 -0
  536. package/knowledge/skills/api-standard/SKILL.md +64 -0
  537. package/knowledge/skills/api-standard/assets/http.ts +121 -0
  538. package/knowledge/skills/api-standard/references/full-implementation.md +249 -0
  539. package/knowledge/skills/api-standard/references/protocol-migration.md +51 -0
  540. package/knowledge/skills/bkui-builder/SKILL.md +57 -0
  541. package/knowledge/skills/bkui-builder/assets/layouts/admin-layout-dark.vue +371 -0
  542. package/knowledge/skills/bkui-builder/assets/layouts/admin-layout-left.vue +134 -0
  543. package/knowledge/skills/bkui-builder/assets/layouts/admin-layout-top.vue +129 -0
  544. package/knowledge/skills/bkui-builder/assets/pages/dashboard-page.vue +69 -0
  545. package/knowledge/skills/bkui-builder/assets/pages/detail-page.vue +93 -0
  546. package/knowledge/skills/bkui-builder/assets/pages/table-page.vue +293 -0
  547. package/knowledge/skills/bkui-builder/assets/pages/wizard-form.vue +84 -0
  548. package/knowledge/skills/bkui-builder/references/checklist.md +72 -0
  549. package/knowledge/skills/bkui-builder/references/code-snippets.md +145 -0
  550. package/knowledge/skills/bkui-builder/references/visual-mapping.md +190 -0
  551. package/knowledge/skills/bkui-cheatsheet/SKILL.md +62 -0
  552. package/knowledge/skills/bkui-cheatsheet/references/complex-components.md +242 -0
  553. package/knowledge/skills/bundle-optimization/SKILL.md +44 -0
  554. package/knowledge/skills/bundle-optimization/assets/vite.config.optimization.ts +53 -0
  555. package/knowledge/skills/code-review/SKILL.md +54 -0
  556. package/knowledge/skills/code-review/assets/pre-commit-review.sh +69 -0
  557. package/knowledge/skills/code-review/references/checklist.md +329 -0
  558. package/knowledge/skills/code-review/references/git-scenarios.md +242 -0
  559. package/knowledge/skills/code-review/references/report-examples.md +120 -0
  560. package/knowledge/skills/code-review/references/report-format.md +75 -0
  561. package/knowledge/skills/code-review/references/scoring-standard.md +69 -0
  562. package/knowledge/skills/code-review/references/writing-guidelines.md +44 -0
  563. package/knowledge/skills/js-security-check/SKILL.md +52 -0
  564. package/knowledge/skills/js-security-check/references/checklist.md +144 -0
  565. package/knowledge/skills/js-security-check/references/fix-examples.md +289 -0
  566. package/knowledge/skills/js-security-check/references/report-format.md +140 -0
  567. package/knowledge/skills/js-security-check/references/scoring-standard.md +67 -0
  568. package/knowledge/skills/js-security-check/references/security-toolkit.md +354 -0
  569. package/knowledge/skills/nodejs-security-check/SKILL.md +52 -0
  570. package/knowledge/skills/nodejs-security-check/references/checklist.md +177 -0
  571. package/knowledge/skills/nodejs-security-check/references/fix-examples.md +384 -0
  572. package/knowledge/skills/nodejs-security-check/references/report-format.md +165 -0
  573. package/knowledge/skills/nodejs-security-check/references/scoring-standard.md +88 -0
  574. package/knowledge/skills/nodejs-security-check/references/security-toolkit.md +426 -0
  575. package/knowledge/skills/permission-directive/SKILL.md +51 -0
  576. package/knowledge/skills/permission-directive/assets/authority-directive.ts +104 -0
  577. package/knowledge/skills/pinia-setup/SKILL.md +65 -0
  578. package/knowledge/skills/pinia-setup/assets/store-template.ts +122 -0
  579. package/knowledge/skills/unit-testing/SKILL.md +71 -0
  580. package/knowledge/skills/unit-testing/assets/component.spec.ts +153 -0
  581. package/knowledge/skills/virtual-list/SKILL.md +63 -0
  582. package/knowledge/skills/virtual-list/assets/VirtualList.vue +123 -0
  583. package/knowledge/skills/vite-migration/SKILL.md +12 -0
  584. package/knowledge/skills/vite-migration/scripts/check-migration.js +165 -0
  585. package/knowledge/skills/vue-composables/SKILL.md +37 -0
  586. package/knowledge/skills/vue-composables/assets/useTable.ts +138 -0
  587. package/package.json +26 -0
  588. package/server/mcp-core.js +636 -0
@@ -0,0 +1,667 @@
1
+ {
2
+ "version": "2.0",
3
+ "description": "前端团队知识库统一索引 - 用于渐进式披露",
4
+ "updated_at": "2026-01-15",
5
+
6
+ "skills": {
7
+ "description": "技能文档 (L1层,按需加载) - 标准结构: skill-id/SKILL.md",
8
+ "base_path": "./skills",
9
+ "structure": {
10
+ "SKILL.md": "【必须】核心指令和元数据",
11
+ "scripts/": "【可选】工具脚本 (Python/JS)",
12
+ "references/": "【可选】参考文档",
13
+ "assets/": "【可选】模版素材"
14
+ },
15
+ "items": [
16
+ {
17
+ "id": "api-standard",
18
+ "name": "统一网络请求封装 (Axios)",
19
+ "category": "engineering",
20
+ "path": "api-standard/SKILL.md",
21
+ "tags": ["axios", "http", "api"]
22
+ },
23
+ {
24
+ "id": "bkui-builder",
25
+ "name": "设计稿还原专家",
26
+ "category": "engineering",
27
+ "path": "bkui-builder/SKILL.md",
28
+ "tags": ["vue3", "bkui", "ui", "figma", "design"],
29
+ "assets": {
30
+ "layouts": ["admin-layout-left.vue", "admin-layout-top.vue", "admin-layout-dark.vue"],
31
+ "pages": ["table-page.vue", "dashboard-page.vue", "detail-page.vue", "wizard-form.vue"]
32
+ }
33
+ },
34
+ {
35
+ "id": "bkui-cheatsheet",
36
+ "name": "BKUI 组件速查",
37
+ "category": "engineering",
38
+ "path": "bkui-cheatsheet/SKILL.md",
39
+ "tags": ["bkui", "props", "pitfalls"]
40
+ },
41
+ {
42
+ "id": "bundle-optimization",
43
+ "name": "Vite 构建优化",
44
+ "category": "engineering",
45
+ "path": "bundle-optimization/SKILL.md",
46
+ "tags": ["vite", "performance", "build"]
47
+ },
48
+ {
49
+ "id": "permission-directive",
50
+ "name": "前端权限控制 (IAM)",
51
+ "category": "engineering",
52
+ "path": "permission-directive/SKILL.md",
53
+ "tags": ["iam", "permission", "directive"]
54
+ },
55
+ {
56
+ "id": "pinia-setup",
57
+ "name": "全局状态管理 (Pinia)",
58
+ "category": "engineering",
59
+ "path": "pinia-setup/SKILL.md",
60
+ "tags": ["pinia", "store", "state"]
61
+ },
62
+ {
63
+ "id": "vite-migration",
64
+ "name": "Webpack 到 Vite 迁移",
65
+ "category": "engineering",
66
+ "path": "vite-migration/SKILL.md",
67
+ "tags": ["vite", "webpack", "migration"]
68
+ },
69
+ {
70
+ "id": "vue-composables",
71
+ "name": "Vue 3 Composables 最佳实践",
72
+ "category": "engineering",
73
+ "path": "vue-composables/SKILL.md",
74
+ "tags": ["vue3", "composables", "hooks"]
75
+ },
76
+ {
77
+ "id": "virtual-list",
78
+ "name": "长列表虚拟滚动",
79
+ "category": "performance",
80
+ "path": "virtual-list/SKILL.md",
81
+ "tags": ["performance", "virtual-scroll", "list"]
82
+ },
83
+ {
84
+ "id": "unit-testing",
85
+ "name": "组件单元测试 (Vitest)",
86
+ "category": "quality",
87
+ "path": "unit-testing/SKILL.md",
88
+ "tags": ["test", "vitest", "quality"]
89
+ },
90
+ {
91
+ "id": "code-review",
92
+ "name": "代码评审专家",
93
+ "category": "quality",
94
+ "path": "code-review/SKILL.md",
95
+ "tags": ["code-review", "quality", "git", "pr", "mr"]
96
+ },
97
+ {
98
+ "id": "js-security-check",
99
+ "name": "JavaScript 安全审查",
100
+ "category": "security",
101
+ "path": "js-security-check/SKILL.md",
102
+ "tags": ["security", "javascript", "xss", "csrf", "frontend"]
103
+ },
104
+ {
105
+ "id": "nodejs-security-check",
106
+ "name": "Node.js 安全审查",
107
+ "category": "security",
108
+ "path": "nodejs-security-check/SKILL.md",
109
+ "tags": ["security", "nodejs", "backend", "ssrf", "sql-injection"]
110
+ }
111
+ ]
112
+ },
113
+
114
+
115
+ "componentApis": {
116
+ "description": "组件 API 文档 (L2层,按需加载)",
117
+ "base_path": "./component-apis",
118
+ "priority": ["navigation", "menu", "table", "form", "dialog"],
119
+ "items": [
120
+ {
121
+ "id": "navigation",
122
+ "name": "bk-navigation",
123
+ "path": "navigation.json",
124
+ "priority": "high",
125
+ "note": "布局组件,易出错"
126
+ },
127
+ {
128
+ "id": "menu",
129
+ "name": "bk-menu",
130
+ "path": "menu.json",
131
+ "priority": "high",
132
+ "note": "与 navigation 配合"
133
+ },
134
+ {
135
+ "id": "table",
136
+ "name": "bk-table",
137
+ "path": "table.json",
138
+ "priority": "high",
139
+ "note": "列表页核心组件"
140
+ },
141
+ {
142
+ "id": "form",
143
+ "name": "bk-form",
144
+ "path": "form.json",
145
+ "priority": "high",
146
+ "note": "表单验证"
147
+ },
148
+ {
149
+ "id": "dialog",
150
+ "name": "bk-dialog",
151
+ "path": "dialog.json",
152
+ "priority": "high",
153
+ "note": "v-model:isShow"
154
+ },
155
+ { "id": "button", "name": "bk-button", "path": "button.json" },
156
+ { "id": "input", "name": "bk-input", "path": "input.json" },
157
+ { "id": "select", "name": "bk-select", "path": "select.json" },
158
+ { "id": "checkbox", "name": "bk-checkbox", "path": "checkbox.json" },
159
+ { "id": "radio", "name": "bk-radio", "path": "radio.json" },
160
+ { "id": "date-picker", "name": "bk-date-picker", "path": "date-picker.json" },
161
+ { "id": "time-picker", "name": "bk-time-picker", "path": "time-picker.json" },
162
+ { "id": "pagination", "name": "bk-pagination", "path": "pagination.json" },
163
+ { "id": "message", "name": "bk-message", "path": "message.json" },
164
+ { "id": "notify", "name": "bk-notify", "path": "notify.json" },
165
+ { "id": "loading", "name": "bk-loading", "path": "loading.json" },
166
+ { "id": "popover", "name": "bk-popover", "path": "popover.json" },
167
+ { "id": "pop-confirm", "name": "bk-pop-confirm", "path": "pop-confirm.json" },
168
+ { "id": "tag", "name": "bk-tag", "path": "tag.json" },
169
+ { "id": "tag-input", "name": "bk-tag-input", "path": "tag-input.json" },
170
+ { "id": "alert", "name": "bk-alert", "path": "alert.json" },
171
+ { "id": "dropdown", "name": "bk-dropdown", "path": "dropdown.json" },
172
+ { "id": "tab", "name": "bk-tab", "path": "tab.json" },
173
+ { "id": "cascader", "name": "bk-cascader", "path": "cascader.json" },
174
+ { "id": "tree", "name": "bk-tree", "path": "tree.json" },
175
+ { "id": "steps", "name": "bk-steps", "path": "steps.json" },
176
+ { "id": "upload", "name": "bk-upload", "path": "upload.json" },
177
+ { "id": "sideslider", "name": "bk-sideslider", "path": "sideslider.json" },
178
+ { "id": "breadcrumb", "name": "bk-breadcrumb", "path": "breadcrumb.json" },
179
+ { "id": "card", "name": "bk-card", "path": "card.json" },
180
+ { "id": "collapse", "name": "bk-collapse", "path": "collapse.json" },
181
+ { "id": "affix", "name": "bk-affix", "path": "affix.json" },
182
+ { "id": "backtop", "name": "bk-backtop", "path": "backtop.json" },
183
+ { "id": "badge", "name": "bk-badge", "path": "badge.json" },
184
+ { "id": "divider", "name": "bk-divider", "path": "divider.json" },
185
+ { "id": "exception", "name": "bk-exception", "path": "exception.json" },
186
+ { "id": "image", "name": "bk-image", "path": "image.json" },
187
+ { "id": "link", "name": "bk-link", "path": "link.json" },
188
+ { "id": "progress", "name": "bk-progress", "path": "progress.json" },
189
+ { "id": "rate", "name": "bk-rate", "path": "rate.json" },
190
+ { "id": "slider", "name": "bk-slider", "path": "slider.json" },
191
+ { "id": "switcher", "name": "bk-switcher", "path": "switcher.json" },
192
+ { "id": "timeline", "name": "bk-timeline", "path": "timeline.json" },
193
+ { "id": "process", "name": "bk-process", "path": "process.json" },
194
+ { "id": "transfer", "name": "bk-transfer", "path": "transfer.json" },
195
+ { "id": "search-select", "name": "bk-search-select", "path": "search-select.json" },
196
+ { "id": "color-picker", "name": "bk-color-picker", "path": "color-picker.json" },
197
+ { "id": "container", "name": "bk-container", "path": "container.json" },
198
+ { "id": "resize-layout", "name": "bk-resize-layout", "path": "resize-layout.json" },
199
+ { "id": "fixed-navbar", "name": "bk-fixed-navbar", "path": "fixed-navbar.json" },
200
+ { "id": "code-diff", "name": "bk-code-diff", "path": "code-diff.json" },
201
+ { "id": "swiper", "name": "bk-swiper", "path": "swiper.json" },
202
+ { "id": "animate-number", "name": "bk-animate-number", "path": "animate-number.json" },
203
+ { "id": "overflow-title", "name": "bk-overflow-title", "path": "overflow-title.json" },
204
+ { "id": "virtual-render", "name": "bk-virtual-render", "path": "virtual-render.json" },
205
+ { "id": "scrollbar", "name": "bk-scrollbar", "path": "scrollbar.json" },
206
+ { "id": "info-box", "name": "bk-info-box", "path": "info-box.json" },
207
+ { "id": "config-provider", "name": "bk-config-provider", "path": "config-provider.json" }
208
+ ]
209
+ },
210
+
211
+ "componentExamples": {
212
+ "description": "组件使用示例 (L3层,用户确认后按需加载)",
213
+ "base_path": "./examples",
214
+ "note": "AI 应询问用户是否需要示例,确认后再获取对应 resource",
215
+ "items": [
216
+ {
217
+ "id": "navigation",
218
+ "examples": [
219
+ { "name": "basic", "file": "navigation/base-demo.vue", "description": "左右布局 + 菜单完整示例" },
220
+ { "name": "theme", "file": "navigation/theme-demo.vue", "description": "主题切换" }
221
+ ]
222
+ },
223
+ {
224
+ "id": "menu",
225
+ "examples": [
226
+ { "name": "basic", "file": "menu/base-demo.vue", "description": "菜单基础用法" }
227
+ ]
228
+ },
229
+ {
230
+ "id": "table",
231
+ "examples": [
232
+ { "name": "basic", "file": "table/basic.vue", "description": "基础表格 + 分页" },
233
+ { "name": "selection", "file": "table/selection.vue", "description": "可选择表格" },
234
+ { "name": "filter", "file": "table/basic-filter.vue", "description": "筛选表格" },
235
+ { "name": "sort", "file": "table/basic-sort.vue", "description": "排序表格" },
236
+ { "name": "fixed", "file": "table/fixed.vue", "description": "固定列" },
237
+ { "name": "expand", "file": "table/expand.vue", "description": "展开行" },
238
+ { "name": "pagination", "file": "table/pagination.vue", "description": "分页配置" },
239
+ { "name": "virtual", "file": "table/virtual-render.vue", "description": "虚拟滚动" }
240
+ ]
241
+ },
242
+ {
243
+ "id": "form",
244
+ "examples": [
245
+ { "name": "basic", "file": "form/demo/form.vue", "description": "表单基础 + 验证" },
246
+ { "name": "vertical", "file": "form/demo/form-vertical.vue", "description": "垂直布局表单" },
247
+ { "name": "validator", "file": "form/demo/form-validator.vue", "description": "自定义验证" },
248
+ { "name": "compose", "file": "form/demo/compose-form-item.vue", "description": "复合表单项" }
249
+ ]
250
+ },
251
+ {
252
+ "id": "dialog",
253
+ "examples": [
254
+ { "name": "basic", "file": "dialog/base-demo.vue", "description": "基础弹窗" },
255
+ { "name": "nested", "file": "dialog/nested-demo.vue", "description": "嵌套弹窗" },
256
+ { "name": "fullscreen", "file": "dialog/fullscreen-demo.vue", "description": "全屏弹窗" },
257
+ { "name": "beforeClose", "file": "dialog/before-close-demo.vue", "description": "关闭前确认" }
258
+ ]
259
+ },
260
+ {
261
+ "id": "button",
262
+ "examples": [
263
+ { "name": "basic", "file": "button/demo/basic.vue", "description": "按钮基础" },
264
+ { "name": "loading", "file": "button/demo/loading-button.vue", "description": "加载状态" },
265
+ { "name": "disabled", "file": "button/demo/disabled.vue", "description": "禁用状态" },
266
+ { "name": "icon", "file": "button/demo/icon.vue", "description": "图标按钮" },
267
+ { "name": "group", "file": "button/demo/group.vue", "description": "按钮组" }
268
+ ]
269
+ },
270
+ {
271
+ "id": "input",
272
+ "examples": [
273
+ { "name": "basic", "file": "input/demo/basic.vue", "description": "输入框基础" },
274
+ { "name": "textarea", "file": "input/demo/textarea.vue", "description": "文本域" },
275
+ { "name": "password", "file": "input/demo/password.vue", "description": "密码输入" },
276
+ { "name": "clearable", "file": "input/demo/clearable.vue", "description": "可清空" },
277
+ { "name": "combine", "file": "input/demo/combine.vue", "description": "复合输入框" }
278
+ ]
279
+ },
280
+ {
281
+ "id": "select",
282
+ "examples": [
283
+ { "name": "basic", "file": "select/base-demo.vue", "description": "选择器基础" },
284
+ { "name": "multiple", "file": "select/multiple-demo.vue", "description": "多选" },
285
+ { "name": "remote", "file": "select/remote-demo.vue", "description": "远程搜索" },
286
+ { "name": "virtual", "file": "select/select-virtual-render.vue", "description": "虚拟滚动" },
287
+ { "name": "slot", "file": "select/select-slot-demo.vue", "description": "自定义选项" }
288
+ ]
289
+ },
290
+ {
291
+ "id": "checkbox",
292
+ "examples": [
293
+ { "name": "basic", "file": "checkbox/demo/checkbox.vue", "description": "复选框基础" },
294
+ { "name": "group", "file": "checkbox/demo/checkbox-group.vue", "description": "复选框组" },
295
+ { "name": "indeterminate", "file": "checkbox/demo/checkbox-indeterminate.vue", "description": "半选状态" }
296
+ ]
297
+ },
298
+ {
299
+ "id": "radio",
300
+ "examples": [
301
+ { "name": "basic", "file": "radio/demo/radio.vue", "description": "单选框基础" },
302
+ { "name": "group", "file": "radio/demo/radio-group.vue", "description": "单选框组" },
303
+ { "name": "button", "file": "radio/demo/radio-button.vue", "description": "按钮样式" },
304
+ { "name": "card", "file": "radio/demo/radio-card.vue", "description": "卡片样式" }
305
+ ]
306
+ },
307
+ {
308
+ "id": "date-picker",
309
+ "examples": [
310
+ { "name": "basic", "file": "date-picker/base-demo.vue", "description": "日期选择基础" },
311
+ { "name": "range", "file": "date-picker/range-demo.vue", "description": "日期范围" },
312
+ { "name": "yearMonth", "file": "date-picker/year-month-demo.vue", "description": "年月选择" },
313
+ { "name": "withTime", "file": "date-picker/with-time-demo.vue", "description": "带时间选择" }
314
+ ]
315
+ },
316
+ {
317
+ "id": "time-picker",
318
+ "examples": [
319
+ { "name": "basic", "file": "time-picker/base-demo.vue", "description": "时间选择基础" },
320
+ { "name": "range", "file": "time-picker/range-demo.vue", "description": "时间范围" }
321
+ ]
322
+ },
323
+ {
324
+ "id": "upload",
325
+ "examples": [
326
+ { "name": "basic", "file": "upload/demo/base.vue", "description": "上传基础" },
327
+ { "name": "image", "file": "upload/demo/accept-image.vue", "description": "图片上传" },
328
+ { "name": "limit", "file": "upload/demo/limit.vue", "description": "限制数量" },
329
+ { "name": "picture", "file": "upload/demo/theme-picture.vue", "description": "图片墙" }
330
+ ]
331
+ },
332
+ {
333
+ "id": "cascader",
334
+ "examples": [
335
+ { "name": "basic", "file": "cascader/base-demo.vue", "description": "级联选择基础" },
336
+ { "name": "checkbox", "file": "cascader/checkbox-demo.vue", "description": "多选级联" },
337
+ { "name": "remote", "file": "cascader/remote-demo.vue", "description": "远程加载" },
338
+ { "name": "slots", "file": "cascader/slots-demo.vue", "description": "自定义插槽" }
339
+ ]
340
+ },
341
+ {
342
+ "id": "tree",
343
+ "examples": [
344
+ { "name": "basic", "file": "tree/base-demo.vue", "description": "树形控件基础" },
345
+ { "name": "nodeAction", "file": "tree/node-content-action.vue", "description": "节点操作" }
346
+ ]
347
+ },
348
+ {
349
+ "id": "transfer",
350
+ "examples": [
351
+ { "name": "basic", "file": "transfer/base-demo.vue", "description": "穿梭框基础" },
352
+ { "name": "search", "file": "transfer/search-demo.vue", "description": "可搜索" },
353
+ { "name": "customHeader", "file": "transfer/custom-header-demo.vue", "description": "自定义头部" }
354
+ ]
355
+ },
356
+ {
357
+ "id": "tag-input",
358
+ "examples": [
359
+ { "name": "basic", "file": "tag-input/base-demo.vue", "description": "标签输入基础" },
360
+ { "name": "create", "file": "tag-input/create-demo.vue", "description": "可创建" },
361
+ { "name": "disabled", "file": "tag-input/disabled-demo.vue", "description": "禁用状态" },
362
+ { "name": "single", "file": "tag-input/single-demo.vue", "description": "单选模式" }
363
+ ]
364
+ },
365
+ {
366
+ "id": "search-select",
367
+ "examples": [
368
+ { "name": "basic", "file": "search-select/base-demo.vue", "description": "搜索选择基础" },
369
+ { "name": "menu", "file": "search-select/menu-demo.vue", "description": "菜单模式" },
370
+ { "name": "validate", "file": "search-select/validate-demo.vue", "description": "表单验证" }
371
+ ]
372
+ },
373
+ {
374
+ "id": "slider",
375
+ "examples": [
376
+ { "name": "basic", "file": "slider/base-demo.vue", "description": "滑块基础" },
377
+ { "name": "step", "file": "slider/step-demo.vue", "description": "步长" },
378
+ { "name": "input", "file": "slider/input-demo.vue", "description": "带输入框" },
379
+ { "name": "vertical", "file": "slider/vertical-demo.vue", "description": "垂直模式" }
380
+ ]
381
+ },
382
+ {
383
+ "id": "switcher",
384
+ "examples": [
385
+ { "name": "basic", "file": "switcher/base-demo.vue", "description": "开关基础" },
386
+ { "name": "theme", "file": "switcher/theme-demo.vue", "description": "主题样式" },
387
+ { "name": "beforeChange", "file": "switcher/before-change-demo.vue", "description": "切换前确认" }
388
+ ]
389
+ },
390
+ {
391
+ "id": "rate",
392
+ "examples": [
393
+ { "name": "basic", "file": "rate/base-demo.vue", "description": "评分基础" },
394
+ { "name": "edit", "file": "rate/edit-demo.vue", "description": "可编辑" }
395
+ ]
396
+ },
397
+ {
398
+ "id": "color-picker",
399
+ "examples": [
400
+ { "name": "basic", "file": "color-picker/base-demo.vue", "description": "颜色选择基础" },
401
+ { "name": "preset", "file": "color-picker/preset-demo.vue", "description": "预设颜色" },
402
+ { "name": "slot", "file": "color-picker/slot-demo.vue", "description": "自定义触发器" }
403
+ ]
404
+ },
405
+ {
406
+ "id": "steps",
407
+ "examples": [
408
+ { "name": "basic", "file": "steps/base-demo.vue", "description": "步骤条基础" },
409
+ { "name": "status", "file": "steps/status-demo.vue", "description": "步骤状态" },
410
+ { "name": "direction", "file": "steps/direction-demo.vue", "description": "垂直方向" },
411
+ { "name": "custom", "file": "steps/custom-demo.vue", "description": "自定义图标" }
412
+ ]
413
+ },
414
+ {
415
+ "id": "collapse",
416
+ "examples": [
417
+ { "name": "basic", "file": "collapse/demo/collapse.vue", "description": "折叠面板基础" },
418
+ { "name": "accordion", "file": "collapse/demo/collapse-accordion.vue", "description": "手风琴模式" },
419
+ { "name": "icon", "file": "collapse/demo/collapse-icon.vue", "description": "自定义图标" }
420
+ ]
421
+ },
422
+ {
423
+ "id": "tab",
424
+ "examples": [
425
+ { "name": "basic", "file": "tab/demo-base.vue", "description": "选项卡基础" },
426
+ { "name": "card", "file": "tab/demo-card.vue", "description": "卡片样式" },
427
+ { "name": "add", "file": "tab/demo-add.vue", "description": "动态增减" }
428
+ ]
429
+ },
430
+ {
431
+ "id": "timeline",
432
+ "examples": [
433
+ { "name": "basic", "file": "timeline/base-demo.vue", "description": "时间线基础" },
434
+ { "name": "status", "file": "timeline/status-demo.vue", "description": "节点状态" },
435
+ { "name": "custom", "file": "timeline/custom-demo.vue", "description": "自定义节点" }
436
+ ]
437
+ },
438
+ {
439
+ "id": "progress",
440
+ "examples": [
441
+ { "name": "basic", "file": "progress/base-demo.vue", "description": "进度条基础" },
442
+ { "name": "type", "file": "progress/type-demo.vue", "description": "不同类型" },
443
+ { "name": "text", "file": "progress/text-demo.vue", "description": "自定义文字" }
444
+ ]
445
+ },
446
+ {
447
+ "id": "process",
448
+ "examples": [
449
+ { "name": "basic", "file": "process/base-demo.vue", "description": "流程基础" },
450
+ { "name": "status", "file": "process/status-demo.vue", "description": "节点状态" }
451
+ ]
452
+ },
453
+ {
454
+ "id": "tag",
455
+ "examples": [
456
+ { "name": "basic", "file": "tag/base-demo.vue", "description": "标签基础" },
457
+ { "name": "closable", "file": "tag/closable-demo.vue", "description": "可关闭" },
458
+ { "name": "check", "file": "tag/check-demo.vue", "description": "可选择" }
459
+ ]
460
+ },
461
+ {
462
+ "id": "badge",
463
+ "examples": [
464
+ { "name": "basic", "file": "badge/badge.vue", "description": "徽章基础" },
465
+ { "name": "dot", "file": "badge/badge-dot.vue", "description": "小红点" }
466
+ ]
467
+ },
468
+ {
469
+ "id": "popover",
470
+ "examples": [
471
+ { "name": "basic", "file": "popover/demo/base.vue", "description": "气泡卡片基础" },
472
+ { "name": "always", "file": "popover/demo/always.vue", "description": "常驻显示" },
473
+ { "name": "callback", "file": "popover/demo/callback.vue", "description": "回调事件" }
474
+ ]
475
+ },
476
+ {
477
+ "id": "tooltips",
478
+ "examples": [
479
+ { "name": "basic", "file": "tooltips/demo/base.vue", "description": "提示基础" },
480
+ { "name": "click", "file": "tooltips/demo/click.vue", "description": "点击触发" }
481
+ ]
482
+ },
483
+ {
484
+ "id": "pop-confirm",
485
+ "examples": [
486
+ { "name": "basic", "file": "pop-confirm/demo-base.vue", "description": "气泡确认基础" },
487
+ { "name": "icon", "file": "pop-confirm/demo-icon.vue", "description": "自定义图标" },
488
+ { "name": "slot", "file": "pop-confirm/demo-slot.vue", "description": "自定义内容" }
489
+ ]
490
+ },
491
+ {
492
+ "id": "dropdown",
493
+ "examples": [
494
+ { "name": "basic", "file": "dropdown/base-demo.vue", "description": "下拉菜单基础" },
495
+ { "name": "align", "file": "dropdown/align-demo.vue", "description": "对齐方式" },
496
+ { "name": "disabled", "file": "dropdown/disabled-demo.vue", "description": "禁用选项" }
497
+ ]
498
+ },
499
+ {
500
+ "id": "loading",
501
+ "examples": [
502
+ { "name": "basic", "file": "loading/demo/basic.vue", "description": "加载基础" },
503
+ { "name": "directive", "file": "loading/demo/directive.vue", "description": "指令用法" },
504
+ { "name": "mask", "file": "loading/demo/mask.vue", "description": "遮罩层" }
505
+ ]
506
+ },
507
+ {
508
+ "id": "message",
509
+ "examples": [
510
+ { "name": "basic", "file": "message/base-demo.vue", "description": "消息基础" },
511
+ { "name": "close", "file": "message/close-demo.vue", "description": "可关闭" },
512
+ { "name": "theme", "file": "message/theme-demo.vue", "description": "不同主题" }
513
+ ]
514
+ },
515
+ {
516
+ "id": "notify",
517
+ "examples": [
518
+ { "name": "basic", "file": "notify/demo/base.vue", "description": "通知基础" },
519
+ { "name": "close", "file": "notify/demo/close.vue", "description": "可关闭" },
520
+ { "name": "position", "file": "notify/demo/position.vue", "description": "位置" }
521
+ ]
522
+ },
523
+ {
524
+ "id": "alert",
525
+ "examples": [
526
+ { "name": "basic", "file": "alert/demo/alert.vue", "description": "警告基础" },
527
+ { "name": "close", "file": "alert/demo/alert-close.vue", "description": "可关闭" },
528
+ { "name": "icon", "file": "alert/demo/alert-show-icon.vue", "description": "显示图标" }
529
+ ]
530
+ },
531
+ {
532
+ "id": "info-box",
533
+ "examples": [
534
+ { "name": "basic", "file": "info-box/base-demo.vue", "description": "信息框基础" },
535
+ { "name": "status", "file": "info-box/status-demo.vue", "description": "不同状态" },
536
+ { "name": "callback", "file": "info-box/callback-demo.vue", "description": "回调事件" }
537
+ ]
538
+ },
539
+ {
540
+ "id": "sideslider",
541
+ "examples": [
542
+ { "name": "basic", "file": "sideslider/base-demo.vue", "description": "侧边滑出基础" },
543
+ { "name": "beforeClose", "file": "sideslider/before-close-demo.vue", "description": "关闭前确认" }
544
+ ]
545
+ },
546
+ {
547
+ "id": "exception",
548
+ "examples": [
549
+ { "name": "basic", "file": "exception/base-demo.vue", "description": "异常页基础" },
550
+ { "name": "part", "file": "exception/part-demo.vue", "description": "局部异常" }
551
+ ]
552
+ },
553
+ {
554
+ "id": "card",
555
+ "examples": [
556
+ { "name": "basic", "file": "card/card-demo.vue", "description": "卡片基础" },
557
+ { "name": "edit", "file": "card/card-edit.vue", "description": "可编辑卡片" }
558
+ ]
559
+ },
560
+ {
561
+ "id": "breadcrumb",
562
+ "examples": [
563
+ { "name": "basic", "file": "breadcrumb/base-demo.vue", "description": "面包屑基础" },
564
+ { "name": "separator", "file": "breadcrumb/separator-demo.vue", "description": "自定义分隔符" }
565
+ ]
566
+ },
567
+ {
568
+ "id": "pagination",
569
+ "examples": [
570
+ { "name": "basic", "file": "pagination/demo/pagination.vue", "description": "分页基础" },
571
+ { "name": "small", "file": "pagination/demo/pagination-small.vue", "description": "小尺寸" }
572
+ ]
573
+ },
574
+ {
575
+ "id": "affix",
576
+ "examples": [
577
+ { "name": "top", "file": "affix/demo/affix-top.vue", "description": "固定到顶部" },
578
+ { "name": "bottom", "file": "affix/demo/affix-bottom.vue", "description": "固定到底部" },
579
+ { "name": "container", "file": "affix/demo/affix-container.vue", "description": "指定容器" }
580
+ ]
581
+ },
582
+ {
583
+ "id": "backtop",
584
+ "examples": [
585
+ { "name": "basic", "file": "backtop/base-demo.vue", "description": "回到顶部基础" }
586
+ ]
587
+ },
588
+ {
589
+ "id": "fixed-navbar",
590
+ "examples": [
591
+ { "name": "basic", "file": "fixed-navbar/base-demo.vue", "description": "固定导航基础" }
592
+ ]
593
+ },
594
+ {
595
+ "id": "divider",
596
+ "examples": [
597
+ { "name": "basic", "file": "divider/base-demo.vue", "description": "分割线基础" }
598
+ ]
599
+ },
600
+ {
601
+ "id": "link",
602
+ "examples": [
603
+ { "name": "basic", "file": "link/base-demo.vue", "description": "链接基础" },
604
+ { "name": "icon", "file": "link/icon-demo.vue", "description": "带图标" },
605
+ { "name": "disabled", "file": "link/disable-demo.vue", "description": "禁用状态" }
606
+ ]
607
+ },
608
+ {
609
+ "id": "icon",
610
+ "examples": [
611
+ { "name": "basic", "file": "icon/base-demo.vue", "description": "图标基础" },
612
+ { "name": "import", "file": "icon/import-demo.vue", "description": "按需导入" }
613
+ ]
614
+ },
615
+ {
616
+ "id": "container",
617
+ "examples": [
618
+ { "name": "basic", "file": "container/demo/base.vue", "description": "布局容器基础" },
619
+ { "name": "flex", "file": "container/demo/flex.vue", "description": "Flex布局" },
620
+ { "name": "col", "file": "container/demo/custom-col.vue", "description": "栅格布局" }
621
+ ]
622
+ },
623
+ {
624
+ "id": "resize-layout",
625
+ "examples": [
626
+ { "name": "basic", "file": "resize-layout/base-demo.vue", "description": "可调整布局基础" },
627
+ { "name": "collapsible", "file": "resize-layout/collapsible-demo.vue", "description": "可折叠" }
628
+ ]
629
+ },
630
+ {
631
+ "id": "code-diff",
632
+ "examples": [
633
+ { "name": "basic", "file": "code-diff/demo/basic.vue", "description": "代码对比基础" },
634
+ { "name": "theme", "file": "code-diff/demo/theme.vue", "description": "主题切换" }
635
+ ]
636
+ },
637
+ {
638
+ "id": "swiper",
639
+ "examples": [
640
+ { "name": "basic", "file": "swiper/base-demo.vue", "description": "轮播基础" }
641
+ ]
642
+ },
643
+ {
644
+ "id": "animate-number",
645
+ "examples": [
646
+ { "name": "basic", "file": "animate-number/base-demo.vue", "description": "数字动画基础" }
647
+ ]
648
+ },
649
+ {
650
+ "id": "overflow-title",
651
+ "examples": [
652
+ { "name": "basic", "file": "overflow-title/base-demo.vue", "description": "溢出提示基础" },
653
+ { "name": "directive", "file": "overflow-title/directive.vue", "description": "指令用法" }
654
+ ]
655
+ },
656
+ {
657
+ "id": "virtual-render",
658
+ "examples": [
659
+ { "name": "basic", "file": "virtual-render/basic.vue", "description": "虚拟滚动基础" },
660
+ { "name": "scrollbar", "file": "virtual-render/scrollbar.vue", "description": "自定义滚动条" }
661
+ ]
662
+ }
663
+ ]
664
+ },
665
+
666
+ "recommendedSkills": ["bkui-builder", "bkui-cheatsheet", "code-review", "js-security-check"]
667
+ }