weifuwu 0.85.0 → 0.87.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (655) hide show
  1. package/README.md +56 -45
  2. package/content/apps/admin.md +55 -0
  3. package/content/apps/agent-platform.md +35 -0
  4. package/content/apps/auth.md +49 -0
  5. package/content/apps/multi.md +44 -0
  6. package/content/apps/todo.md +51 -0
  7. package/content/backend/ai.md +28 -0
  8. package/content/backend/auth.md +20 -0
  9. package/content/backend/email.md +23 -0
  10. package/content/backend/graphql.md +23 -0
  11. package/content/backend/http.md +23 -0
  12. package/content/backend/limit.md +23 -0
  13. package/content/backend/middleware.md +17 -0
  14. package/content/backend/queue.md +23 -0
  15. package/content/backend/redis.md +26 -0
  16. package/content/backend/router.md +23 -0
  17. package/content/backend/schedule.md +23 -0
  18. package/content/backend/sql.md +27 -0
  19. package/content/backend/sse.md +26 -0
  20. package/content/backend/ws.md +26 -0
  21. package/content/capabilities/app-node.md +21 -0
  22. package/content/capabilities/data.md +21 -0
  23. package/content/capabilities/events.md +21 -0
  24. package/content/capabilities/hooks.md +22 -0
  25. package/content/capabilities/i18n.md +21 -0
  26. package/content/capabilities/popup.md +21 -0
  27. package/content/capabilities/render-only.md +23 -0
  28. package/content/capabilities/router.md +22 -0
  29. package/content/capabilities/self-id.md +21 -0
  30. package/content/capabilities/store.md +21 -0
  31. package/content/capabilities/theme.md +21 -0
  32. package/content/capabilities/two-phase.md +21 -0
  33. package/content/components/accordion.md +50 -0
  34. package/content/components/actionsheet.md +46 -0
  35. package/content/components/affix.md +51 -0
  36. package/content/components/aichat.md +57 -0
  37. package/content/components/alert.md +52 -0
  38. package/content/components/alertgroup.md +45 -0
  39. package/content/components/anchor.md +52 -0
  40. package/content/components/app.md +37 -0
  41. package/content/components/approvalcard.md +56 -0
  42. package/content/components/appshell.md +50 -0
  43. package/content/components/aspectratio.md +47 -0
  44. package/content/components/authpage.md +61 -0
  45. package/content/components/autocomplete-v2.md +40 -0
  46. package/content/components/autocomplete.md +56 -0
  47. package/content/components/avatar.md +51 -0
  48. package/content/components/avatargroup.md +47 -0
  49. package/content/components/backtop.md +53 -0
  50. package/content/components/badge.md +55 -0
  51. package/content/components/breadcrumb.md +49 -0
  52. package/content/components/button.md +63 -0
  53. package/content/components/calendar-v2.md +40 -0
  54. package/content/components/calendar.md +50 -0
  55. package/content/components/card.md +58 -0
  56. package/content/components/carousel.md +52 -0
  57. package/content/components/cascader-v2.md +39 -0
  58. package/content/components/cascader.md +54 -0
  59. package/content/components/chart.md +53 -0
  60. package/content/components/chatinput.md +63 -0
  61. package/content/components/checkbox.md +51 -0
  62. package/content/components/checkboxgroup.md +52 -0
  63. package/content/components/citationcard.md +48 -0
  64. package/content/components/codeblock.md +48 -0
  65. package/content/components/codeeditor.md +47 -0
  66. package/content/components/collapse.md +49 -0
  67. package/content/components/colorpicker.md +50 -0
  68. package/content/components/command.md +50 -0
  69. package/content/components/confirm.md +57 -0
  70. package/content/components/contextmenu.md +48 -0
  71. package/content/components/copybutton.md +51 -0
  72. package/content/components/datepicker.md +52 -0
  73. package/content/components/descriptions-v2.md +39 -0
  74. package/content/components/descriptions.md +52 -0
  75. package/content/components/diffview-v2.md +39 -0
  76. package/content/components/diffview.md +50 -0
  77. package/content/components/divider.md +48 -0
  78. package/content/components/drawer.md +55 -0
  79. package/content/components/dropdown.md +53 -0
  80. package/content/components/editor.md +49 -0
  81. package/content/components/emptystate.md +51 -0
  82. package/content/components/exportcsv.md +38 -0
  83. package/content/components/field.md +54 -0
  84. package/content/components/filepreview-office.md +37 -0
  85. package/content/components/filepreview.md +49 -0
  86. package/content/components/filetree.md +56 -0
  87. package/content/components/fileupload-v2.md +39 -0
  88. package/content/components/fileupload.md +57 -0
  89. package/content/components/floatbutton.md +52 -0
  90. package/content/components/form-v2.md +41 -0
  91. package/content/components/form.md +60 -0
  92. package/content/components/grid.md +51 -0
  93. package/content/components/highlight-v2.md +39 -0
  94. package/content/components/highlight.md +46 -0
  95. package/content/components/hovercard.md +51 -0
  96. package/content/components/icon.md +50 -0
  97. package/content/components/imagecropper.md +45 -0
  98. package/content/components/img.md +56 -0
  99. package/content/components/infinitescroll-v2.md +40 -0
  100. package/content/components/infinitescroll.md +54 -0
  101. package/content/components/input.md +65 -0
  102. package/content/components/inputnumber.md +58 -0
  103. package/content/components/inview.md +56 -0
  104. package/content/components/jsonschemaform.md +53 -0
  105. package/content/components/jsonviewer-v2.md +39 -0
  106. package/content/components/jsonviewer.md +49 -0
  107. package/content/components/kanban.md +46 -0
  108. package/content/components/label.md +48 -0
  109. package/content/components/layout.md +54 -0
  110. package/content/components/layoutcontent.md +43 -0
  111. package/content/components/layoutheader.md +43 -0
  112. package/content/components/layoutsider.md +43 -0
  113. package/content/components/link.md +52 -0
  114. package/content/components/list.md +44 -0
  115. package/content/components/loading.md +45 -0
  116. package/content/components/logviewer-v2.md +39 -0
  117. package/content/components/logviewer.md +53 -0
  118. package/content/components/markdown.md +51 -0
  119. package/content/components/markdowneditor.md +47 -0
  120. package/content/components/math.md +42 -0
  121. package/content/components/mentions-v2.md +39 -0
  122. package/content/components/mentions.md +52 -0
  123. package/content/components/menu.md +56 -0
  124. package/content/components/menubar.md +44 -0
  125. package/content/components/messagebubble.md +50 -0
  126. package/content/components/modal.md +59 -0
  127. package/content/components/navmenu.md +47 -0
  128. package/content/components/notification.md +51 -0
  129. package/content/components/pageheader.md +53 -0
  130. package/content/components/pagination.md +49 -0
  131. package/content/components/paragraph.md +45 -0
  132. package/content/components/passwordinput.md +57 -0
  133. package/content/components/pininput-v2.md +39 -0
  134. package/content/components/pininput.md +50 -0
  135. package/content/components/pipeline.md +49 -0
  136. package/content/components/popconfirm.md +58 -0
  137. package/content/components/popover.md +61 -0
  138. package/content/components/progressbar.md +50 -0
  139. package/content/components/prompttemplate.md +49 -0
  140. package/content/components/qrcode.md +50 -0
  141. package/content/components/radiogroup.md +53 -0
  142. package/content/components/rate.md +53 -0
  143. package/content/components/reasoningblock.md +47 -0
  144. package/content/components/relationgraph.md +52 -0
  145. package/content/components/resizable.md +53 -0
  146. package/content/components/result.md +49 -0
  147. package/content/components/scrollbar.md +49 -0
  148. package/content/components/searchinput.md +51 -0
  149. package/content/components/segmentedcontrol.md +59 -0
  150. package/content/components/select-searchable.md +47 -0
  151. package/content/components/select.md +66 -0
  152. package/content/components/sessionlist.md +52 -0
  153. package/content/components/sheetgrid.md +44 -0
  154. package/content/components/skeleton.md +55 -0
  155. package/content/components/slidecanvas.md +44 -0
  156. package/content/components/slider.md +62 -0
  157. package/content/components/sortablelist.md +39 -0
  158. package/content/components/space.md +52 -0
  159. package/content/components/sparkline.md +52 -0
  160. package/content/components/statcard-countdown.md +39 -0
  161. package/content/components/statcard.md +56 -0
  162. package/content/components/steps.md +48 -0
  163. package/content/components/switch.md +50 -0
  164. package/content/components/tabbar.md +45 -0
  165. package/content/components/table-v2.md +40 -0
  166. package/content/components/table.md +66 -0
  167. package/content/components/tabs.md +56 -0
  168. package/content/components/tag.md +51 -0
  169. package/content/components/tagsinput-v2.md +39 -0
  170. package/content/components/tagsinput.md +54 -0
  171. package/content/components/text.md +45 -0
  172. package/content/components/textarea.md +57 -0
  173. package/content/components/themeswitch.md +69 -0
  174. package/content/components/timeline.md +50 -0
  175. package/content/components/title.md +45 -0
  176. package/content/components/toast.md +52 -0
  177. package/content/components/toggle-togglegroup.md +52 -0
  178. package/content/components/togglegroup.md +47 -0
  179. package/content/components/toolcallcard.md +51 -0
  180. package/content/components/tooltip.md +50 -0
  181. package/content/components/tour.md +50 -0
  182. package/content/components/transfer.md +52 -0
  183. package/content/components/tree-v2.md +39 -0
  184. package/content/components/tree.md +59 -0
  185. package/content/components/treeselect.md +54 -0
  186. package/content/components/typography.md +51 -0
  187. package/content/components/videoplayer.md +52 -0
  188. package/content/components/virtuallist.md +52 -0
  189. package/content/components/virtualtable-v2.md +39 -0
  190. package/content/components/virtualtable.md +55 -0
  191. package/content/components/watermark.md +53 -0
  192. package/content/components/wave.md +43 -0
  193. package/content/guides/ai-chat-family.md +24 -0
  194. package/content/guides/choose.md +67 -0
  195. package/content/guides/component-model.md +32 -0
  196. package/content/guides/component-standards.md +123 -0
  197. package/{docs/components.md → content/guides/components-guide.md} +153 -7
  198. package/{docs/custom-components.md → content/guides/custom-component.md} +70 -55
  199. package/{docs/data.md → content/guides/data-guide.md} +5 -2
  200. package/content/guides/file-preview-family.md +18 -0
  201. package/{docs → content/guides}/frontend.md +122 -52
  202. package/content/guides/layout-choice.md +64 -0
  203. package/{docs/layout.md → content/guides/layout-guide.md} +12 -8
  204. package/{docs/frontend-middleware.md → content/guides/middleware.md} +34 -3
  205. package/{docs/mobile.md → content/guides/mobile-guide.md} +20 -24
  206. package/content/guides/page-building.md +98 -0
  207. package/content/guides/production.md +37 -0
  208. package/content/guides/quality.md +60 -0
  209. package/{docs/realtime.md → content/guides/realtime-guide.md} +6 -3
  210. package/content/guides/render-only.md +44 -0
  211. package/{docs/saas.md → content/guides/saas-guide.md} +8 -5
  212. package/{docs/server.md → content/guides/server-guide.md} +5 -2
  213. package/content/guides/start.md +41 -0
  214. package/{docs → content/guides}/styling.md +5 -1
  215. package/{docs/frontend-ui-dom.md → content/guides/ui-dom-guide.md} +7 -1
  216. package/content/index.json +4344 -0
  217. package/content/index.md +181 -0
  218. package/content/layout/align.md +20 -0
  219. package/content/layout/anchor.md +19 -0
  220. package/content/layout/app-shell.md +23 -0
  221. package/content/layout/border.md +20 -0
  222. package/content/layout/center.md +19 -0
  223. package/content/layout/cluster.md +19 -0
  224. package/content/layout/container.md +19 -0
  225. package/content/layout/fill.md +19 -0
  226. package/content/layout/grid.md +19 -0
  227. package/content/layout/hidden.md +22 -0
  228. package/content/layout/layer.md +19 -0
  229. package/content/layout/position.md +22 -0
  230. package/content/layout/row.md +23 -0
  231. package/content/layout/safe-area.md +20 -0
  232. package/content/layout/scroll.md +21 -0
  233. package/content/layout/spacing.md +22 -0
  234. package/content/layout/split.md +19 -0
  235. package/content/layout/stack.md +19 -0
  236. package/content/layout/surface.md +23 -0
  237. package/content/layout/text.md +22 -0
  238. package/content/patterns/app-shell.md +34 -0
  239. package/content/patterns/dashboard.md +36 -0
  240. package/content/patterns/data-screen.md +30 -0
  241. package/content/patterns/detail-page.md +31 -0
  242. package/content/patterns/docs.md +34 -0
  243. package/content/patterns/focus-task.md +34 -0
  244. package/content/patterns/landing.md +35 -0
  245. package/content/patterns/list-page.md +32 -0
  246. package/content/patterns/mobile.md +31 -0
  247. package/content/patterns/settings-page.md +33 -0
  248. package/content/patterns/workspace.md +32 -0
  249. package/dist/cli/apps-typecheck.test.d.ts +11 -0
  250. package/dist/cli/docs.d.ts +2 -0
  251. package/dist/cli/docs.mjs +10961 -0
  252. package/dist/cli/home-flash.test.d.ts +1 -0
  253. package/dist/{components → client/components}/Accordion/Accordion.d.ts +1 -1
  254. package/dist/client/components/ActionSheet/ActionSheet.d.ts +37 -0
  255. package/dist/{components → client/components}/Affix/Affix.d.ts +1 -1
  256. package/dist/{components → client/components}/AiChat/AiChat.d.ts +3 -3
  257. package/dist/{components → client/components}/Alert/Alert.d.ts +1 -1
  258. package/dist/{components → client/components}/AlertGroup/AlertGroup.d.ts +1 -1
  259. package/dist/{components → client/components}/Anchor/Anchor.d.ts +1 -1
  260. package/dist/client/components/AppShell/AppShell.d.ts +55 -0
  261. package/dist/{components → client/components}/ApprovalCard/ApprovalCard.d.ts +2 -2
  262. package/dist/{components → client/components}/AspectRatio/AspectRatio.d.ts +1 -1
  263. package/dist/{components → client/components}/AuthPage/AuthPage.d.ts +2 -2
  264. package/dist/{components → client/components}/AutoComplete/AutoComplete.d.ts +1 -1
  265. package/dist/{components → client/components}/Avatar/Avatar.d.ts +1 -1
  266. package/dist/{components → client/components}/AvatarGroup/AvatarGroup.d.ts +1 -1
  267. package/dist/{components → client/components}/BackTop/BackTop.d.ts +1 -1
  268. package/dist/{components → client/components}/Badge/Badge.d.ts +1 -1
  269. package/dist/{components → client/components}/Breadcrumb/Breadcrumb.d.ts +1 -1
  270. package/dist/{components → client/components}/Button/Button.d.ts +1 -1
  271. package/dist/{components → client/components}/Calendar/Calendar.d.ts +1 -1
  272. package/dist/{components → client/components}/Card/Card.d.ts +1 -1
  273. package/dist/{components → client/components}/Carousel/Carousel.d.ts +1 -1
  274. package/dist/{components → client/components}/Cascader/Cascader.d.ts +1 -1
  275. package/dist/{components → client/components}/Chart/Chart.d.ts +1 -1
  276. package/dist/{components → client/components}/Chart/chart-utils.d.ts +5 -1
  277. package/dist/{components → client/components}/ChatInput/ChatInput.d.ts +7 -7
  278. package/dist/{components → client/components}/Checkbox/Checkbox.d.ts +1 -1
  279. package/dist/{components → client/components}/CheckboxGroup/CheckboxGroup.d.ts +1 -1
  280. package/dist/{components → client/components}/CitationCard/CitationCard.d.ts +3 -3
  281. package/dist/{components → client/components}/CodeBlock/CodeBlock.d.ts +1 -1
  282. package/dist/client/components/CodeEditor/CodeEditor.d.ts +18 -0
  283. package/dist/{components → client/components}/Collapse/Collapse.d.ts +1 -1
  284. package/dist/{components → client/components}/ColorPicker/ColorPicker.d.ts +1 -1
  285. package/dist/{components → client/components}/Command/Command.d.ts +1 -1
  286. package/dist/{components → client/components}/Confirm/Confirm.d.ts +2 -7
  287. package/dist/{components → client/components}/ContextMenu/ContextMenu.d.ts +1 -1
  288. package/dist/{components → client/components}/CopyButton/CopyButton.d.ts +1 -1
  289. package/dist/{components → client/components}/DatePicker/DatePicker.d.ts +2 -2
  290. package/dist/{components → client/components}/Descriptions/Descriptions.d.ts +1 -1
  291. package/dist/{components → client/components}/DiffView/DiffView.d.ts +1 -1
  292. package/dist/{components → client/components}/Divider/Divider.d.ts +1 -1
  293. package/dist/{components → client/components}/Drawer/Drawer.d.ts +1 -1
  294. package/dist/{components → client/components}/Dropdown/Dropdown.d.ts +1 -1
  295. package/dist/client/components/Editor/Editor.d.ts +14 -0
  296. package/dist/client/components/Editor/edit-events.d.ts +27 -0
  297. package/dist/client/components/Editor/model/apply.d.ts +23 -0
  298. package/dist/client/components/Editor/model/diff.d.ts +25 -0
  299. package/dist/client/components/Editor/model/dom.d.ts +27 -0
  300. package/dist/client/components/Editor/model/history.d.ts +21 -0
  301. package/dist/client/components/Editor/model/html.d.ts +16 -0
  302. package/dist/client/components/Editor/model/inverse.d.ts +20 -0
  303. package/dist/client/components/Editor/model/types.d.ts +116 -0
  304. package/dist/client/components/Editor/tools/table.d.ts +10 -0
  305. package/dist/{components → client/components}/Editor/tools/toolbar.d.ts +2 -2
  306. package/dist/client/components/Editor/tools/types.d.ts +40 -0
  307. package/dist/{components → client/components}/EmptyState/EmptyState.d.ts +1 -1
  308. package/dist/client/components/ExportCSV/ExportCSV.d.ts +30 -0
  309. package/dist/{components → client/components}/Field/Field.d.ts +1 -1
  310. package/dist/client/components/FilePreview/FilePreview.d.ts +42 -0
  311. package/dist/client/components/FilePreview/markdown.d.ts +23 -0
  312. package/dist/client/components/FileTree/FileTree.d.ts +57 -0
  313. package/dist/{components → client/components}/FileUpload/FileUpload.d.ts +1 -1
  314. package/dist/{components → client/components}/FloatButton/FloatButton.d.ts +1 -1
  315. package/dist/{components → client/components}/Form/Form.d.ts +1 -1
  316. package/dist/{components → client/components}/Grid/Grid.d.ts +1 -1
  317. package/dist/{components → client/components}/Highlight/Highlight.d.ts +1 -1
  318. package/dist/{components → client/components}/HoverCard/HoverCard.d.ts +5 -4
  319. package/dist/{components → client/components}/Icon/Icon.d.ts +2 -2
  320. package/dist/client/components/ImageCropper/ImageCropper.d.ts +17 -0
  321. package/dist/{components → client/components}/Img/Img.d.ts +1 -1
  322. package/dist/{components → client/components}/InView/InView.d.ts +1 -1
  323. package/dist/{components → client/components}/InfiniteScroll/InfiniteScroll.d.ts +1 -1
  324. package/dist/{components → client/components}/Input/Input.d.ts +1 -1
  325. package/dist/{components → client/components}/InputNumber/InputNumber.d.ts +1 -1
  326. package/dist/{components → client/components}/JSONViewer/JSONViewer.d.ts +1 -1
  327. package/dist/{components → client/components}/JsonSchemaForm/JsonSchemaForm.d.ts +3 -3
  328. package/dist/{components → client/components}/Kanban/Kanban.d.ts +1 -1
  329. package/dist/{components → client/components}/Label/Label.d.ts +1 -1
  330. package/dist/{components → client/components}/Layout/Layout.d.ts +1 -1
  331. package/dist/{components → client/components}/Link/Link.d.ts +1 -1
  332. package/dist/{components → client/components}/List/List.d.ts +1 -1
  333. package/dist/{components → client/components}/Loading/Loading.d.ts +1 -1
  334. package/dist/{components → client/components}/LogViewer/LogViewer.d.ts +1 -1
  335. package/dist/{components → client/components}/Markdown/Markdown.d.ts +1 -1
  336. package/dist/client/components/MarkdownEditor/MarkdownEditor.d.ts +18 -0
  337. package/dist/client/components/Math/Math.d.ts +15 -0
  338. package/dist/{components → client/components}/Mentions/Mentions.d.ts +1 -1
  339. package/dist/{components → client/components}/Menu/Menu.d.ts +1 -1
  340. package/dist/{components → client/components}/Menubar/Menubar.d.ts +1 -1
  341. package/dist/{components → client/components}/MessageBubble/MessageBubble.d.ts +1 -1
  342. package/dist/{components → client/components}/Modal/Modal.d.ts +1 -1
  343. package/dist/{components → client/components}/NavMenu/NavMenu.d.ts +2 -2
  344. package/dist/{components → client/components}/Notification/Notification.d.ts +7 -2
  345. package/dist/client/components/OfficeEditor/ai/ai-bridge.d.ts +39 -0
  346. package/dist/client/components/OfficeEditor/model/apply.d.ts +25 -0
  347. package/dist/client/components/OfficeEditor/model/types.d.ts +224 -0
  348. package/dist/{components → client/components}/PageHeader/PageHeader.d.ts +1 -1
  349. package/dist/{components → client/components}/Pagination/Pagination.d.ts +1 -1
  350. package/dist/{components → client/components}/PasswordInput/PasswordInput.d.ts +1 -1
  351. package/dist/{components → client/components}/PinInput/PinInput.d.ts +1 -1
  352. package/dist/{components → client/components}/Pipeline/Pipeline.d.ts +1 -1
  353. package/dist/{components → client/components}/Popconfirm/Popconfirm.d.ts +2 -2
  354. package/dist/{components → client/components}/Popover/Popover.d.ts +5 -4
  355. package/dist/{components → client/components}/ProgressBar/ProgressBar.d.ts +1 -1
  356. package/dist/client/components/PromptTemplate/PromptTemplate.d.ts +37 -0
  357. package/dist/{components → client/components}/QRCode/QRCode.d.ts +1 -1
  358. package/dist/{components → client/components}/RadioGroup/RadioGroup.d.ts +1 -1
  359. package/dist/{components → client/components}/Rate/Rate.d.ts +1 -1
  360. package/dist/{components → client/components}/ReasoningBlock/ReasoningBlock.d.ts +3 -3
  361. package/dist/client/components/RelationGraph/RelationGraph.d.ts +59 -0
  362. package/dist/{components → client/components}/Resizable/Resizable.d.ts +1 -1
  363. package/dist/{components → client/components}/Result/Result.d.ts +1 -1
  364. package/dist/{components → client/components}/Scrollbar/Scrollbar.d.ts +1 -1
  365. package/dist/{components → client/components}/SearchInput/SearchInput.d.ts +1 -1
  366. package/dist/{components → client/components}/SegmentedControl/SegmentedControl.d.ts +1 -1
  367. package/dist/{components → client/components}/Select/Select.d.ts +1 -1
  368. package/dist/{components → client/components}/SessionList/SessionList.d.ts +3 -3
  369. package/dist/client/components/SheetGrid/SheetGrid.d.ts +30 -0
  370. package/dist/{components → client/components}/Skeleton/Skeleton.d.ts +1 -1
  371. package/dist/client/components/SlideCanvas/SlideCanvas.d.ts +28 -0
  372. package/dist/client/components/Slider/Slider.d.ts +27 -0
  373. package/dist/client/components/SortableList/SortableList.d.ts +23 -0
  374. package/dist/{components → client/components}/Space/Space.d.ts +1 -1
  375. package/dist/{components → client/components}/Sparkline/Sparkline.d.ts +1 -1
  376. package/dist/{components → client/components}/StatCard/StatCard.d.ts +1 -1
  377. package/dist/{components → client/components}/Steps/Steps.d.ts +1 -1
  378. package/dist/{components → client/components}/Switch/Switch.d.ts +1 -1
  379. package/dist/client/components/TabBar/TabBar.d.ts +35 -0
  380. package/dist/{components → client/components}/Table/Table.d.ts +7 -1
  381. package/dist/client/components/Tabs/Tabs.d.ts +22 -0
  382. package/dist/{components → client/components}/Tag/Tag.d.ts +1 -1
  383. package/dist/{components → client/components}/TagsInput/TagsInput.d.ts +1 -1
  384. package/dist/{components → client/components}/Textarea/Textarea.d.ts +1 -1
  385. package/dist/{components → client/components}/ThemeSwitch/ThemeSwitch.d.ts +1 -1
  386. package/dist/{components → client/components}/Timeline/Timeline.d.ts +1 -1
  387. package/dist/{components → client/components}/Toast/Toast.d.ts +1 -1
  388. package/dist/{components → client/components}/ToggleGroup/ToggleGroup.d.ts +1 -1
  389. package/dist/{components → client/components}/ToolCallCard/ToolCallCard.d.ts +2 -2
  390. package/dist/{components → client/components}/Tooltip/Tooltip.d.ts +4 -3
  391. package/dist/{components → client/components}/Tour/Tour.d.ts +1 -1
  392. package/dist/{components → client/components}/Transfer/Transfer.d.ts +1 -1
  393. package/dist/{components → client/components}/Tree/Tree.d.ts +5 -1
  394. package/dist/{components → client/components}/TreeSelect/TreeSelect.d.ts +5 -1
  395. package/dist/{components → client/components}/Typography/Typography.d.ts +1 -1
  396. package/dist/client/components/VideoPlayer/VideoPlayer.d.ts +25 -0
  397. package/dist/{components → client/components}/VirtualList/VirtualList.d.ts +1 -1
  398. package/dist/{components → client/components}/VirtualTable/VirtualTable.d.ts +1 -1
  399. package/dist/{components → client/components}/Watermark/Watermark.d.ts +1 -1
  400. package/dist/client/components/Wave/Wave.d.ts +15 -0
  401. package/dist/{components → client/components}/index.d.ts +48 -2
  402. package/dist/client/components/index.js +57 -0
  403. package/dist/{components → client/components}/style.css +3554 -1896
  404. package/dist/{layout → client/layout}/weifuwu-layout.css +60 -6
  405. package/dist/client/office/docx.d.ts +33 -0
  406. package/dist/client/office/pptx.d.ts +24 -0
  407. package/dist/client/office/xlsx.d.ts +25 -0
  408. package/dist/client/office/xml-serialize.d.ts +18 -0
  409. package/dist/client/office/xml.d.ts +21 -0
  410. package/dist/client/office/zip.d.ts +21 -0
  411. package/dist/client/vdom/browser/Browser.d.ts +73 -0
  412. package/dist/client/vdom/browser/create-client-browser.d.ts +11 -0
  413. package/dist/client/vdom/commands.d.ts +19 -0
  414. package/dist/client/vdom/context/UIContext.d.ts +61 -0
  415. package/dist/client/vdom/context/data.d.ts +17 -0
  416. package/dist/client/vdom/core/async-guard.d.ts +20 -0
  417. package/dist/client/vdom/core/build.d.ts +36 -0
  418. package/dist/client/vdom/core/command/create.d.ts +25 -0
  419. package/dist/client/vdom/core/command/index.d.ts +15 -0
  420. package/dist/client/vdom/core/command/insert.d.ts +32 -0
  421. package/dist/client/vdom/core/command/lifecycle.d.ts +47 -0
  422. package/dist/client/vdom/core/command/props.d.ts +22 -0
  423. package/dist/client/vdom/core/diff/attrs.d.ts +10 -0
  424. package/dist/client/vdom/core/diff/children.d.ts +29 -0
  425. package/dist/client/vdom/core/diff/cleanup.d.ts +44 -0
  426. package/dist/client/vdom/core/diff/index.d.ts +22 -0
  427. package/dist/client/vdom/core/diff/output.d.ts +30 -0
  428. package/dist/client/vdom/core/diff/same.d.ts +22 -0
  429. package/dist/client/vdom/core/field/attributes.d.ts +15 -0
  430. package/dist/client/vdom/core/field/events.d.ts +54 -0
  431. package/dist/client/vdom/core/field/index.d.ts +19 -0
  432. package/dist/client/vdom/core/field/key.d.ts +16 -0
  433. package/dist/client/vdom/core/field/props.d.ts +15 -0
  434. package/dist/client/vdom/core/field/ref.d.ts +38 -0
  435. package/dist/client/vdom/core/field/style.d.ts +17 -0
  436. package/dist/client/vdom/core/node/children.d.ts +20 -0
  437. package/dist/client/vdom/core/node/component.d.ts +93 -0
  438. package/dist/client/vdom/core/node/fragment.d.ts +14 -0
  439. package/dist/client/vdom/core/node/hole.d.ts +22 -0
  440. package/dist/client/vdom/core/node/index.d.ts +35 -0
  441. package/dist/client/vdom/core/node/keyed.d.ts +64 -0
  442. package/dist/client/vdom/core/node/native.d.ts +20 -0
  443. package/dist/client/vdom/core/node/portal.d.ts +11 -0
  444. package/dist/client/vdom/core/patch/fields.d.ts +15 -0
  445. package/dist/client/vdom/core/patch/index.d.ts +51 -0
  446. package/dist/client/vdom/core/patch/processors.d.ts +75 -0
  447. package/dist/client/vdom/core/patch/state-machine.d.ts +38 -0
  448. package/dist/client/vdom/core/patch/verify.d.ts +17 -0
  449. package/dist/client/vdom/core/router.d.ts +31 -0
  450. package/dist/client/vdom/core/serve.d.ts +75 -0
  451. package/dist/client/vdom/core/ssr/absorb.d.ts +53 -0
  452. package/dist/client/vdom/core/ssr/html.d.ts +32 -0
  453. package/dist/client/vdom/core/ssr/index.d.ts +25 -0
  454. package/dist/client/vdom/core/transform/component.d.ts +23 -0
  455. package/dist/client/vdom/core/transform/element.d.ts +21 -0
  456. package/dist/client/vdom/core/transform/fragment.d.ts +21 -0
  457. package/dist/client/vdom/core/transform/hole.d.ts +13 -0
  458. package/dist/client/vdom/core/transform/index.d.ts +46 -0
  459. package/dist/client/vdom/core/transform/states.d.ts +22 -0
  460. package/dist/client/vdom/core/transform/table.d.ts +28 -0
  461. package/dist/client/vdom/core/transform/text.d.ts +10 -0
  462. package/dist/client/vdom/core/vnode.d.ts +45 -0
  463. package/dist/client/vdom/dev/effect-guard.d.ts +8 -0
  464. package/dist/client/vdom/hooks/ai-stream.d.ts +46 -0
  465. package/dist/client/vdom/hooks/basic.d.ts +42 -0
  466. package/dist/client/vdom/hooks/chat.d.ts +91 -0
  467. package/dist/client/vdom/hooks/controlled.d.ts +27 -0
  468. package/dist/client/vdom/hooks/drag-media.d.ts +52 -0
  469. package/dist/client/vdom/hooks/env.d.ts +119 -0
  470. package/dist/client/vdom/hooks/input.d.ts +43 -0
  471. package/dist/client/vdom/hooks/observe.d.ts +60 -0
  472. package/dist/client/vdom/hooks/popup-manager.d.ts +92 -0
  473. package/dist/client/vdom/hooks/popup.d.ts +52 -0
  474. package/dist/client/vdom/hooks/stable.d.ts +45 -0
  475. package/dist/client/vdom/index.d.ts +67 -0
  476. package/dist/client/vdom/index.js +8 -0
  477. package/dist/client/vdom/jsx-runtime.d.ts +28 -0
  478. package/dist/client/vdom/jsx-runtime.js +1 -0
  479. package/dist/client/vdom/middlewares/api.d.ts +38 -0
  480. package/dist/client/vdom/middlewares/auth-i18n.d.ts +66 -0
  481. package/dist/client/vdom/middlewares/ws.d.ts +37 -0
  482. package/dist/client/vdom/store.d.ts +49 -0
  483. package/dist/client/vdom/testing.d.ts +46 -0
  484. package/dist/client/vdom/testing.js +2 -0
  485. package/dist/dev/index.d.ts +12 -0
  486. package/dist/dev/index.js +4 -4
  487. package/dist/{ai → server/ai}/contracts.d.ts +1 -1
  488. package/dist/{ai → server/ai}/index.d.ts +2 -2
  489. package/dist/{ai → server/ai}/types.d.ts +1 -1
  490. package/dist/{core → server/core}/router.d.ts +2 -4
  491. package/dist/{db → server/db}/contracts.d.ts +1 -1
  492. package/dist/server/db/postgres-server.d.ts +37 -0
  493. package/dist/server/db/redis-server.d.ts +32 -0
  494. package/dist/server/db/server.d.ts +30 -0
  495. package/dist/server/db/test-servers.d.ts +21 -0
  496. package/dist/{email → server/email}/contracts.d.ts +1 -1
  497. package/dist/{index.js → server/index.js} +3147 -2462
  498. package/dist/{ui → server/ui}/index.d.ts +2 -2
  499. package/dist/{user → server/user}/token.d.ts +1 -1
  500. package/dist/shared/router/trie.d.ts +61 -0
  501. package/docs/components-map.md +16 -4
  502. package/docs/style-guide.md +14 -2
  503. package/examples/apps/admin/README.md +23 -0
  504. package/examples/apps/admin/api.ts +27 -0
  505. package/examples/apps/admin/app.tsx +144 -0
  506. package/examples/apps/admin/main.tsx +8 -0
  507. package/examples/apps/admin/server.ts +37 -0
  508. package/examples/apps/auth/README.md +23 -0
  509. package/examples/apps/auth/api.ts +49 -0
  510. package/examples/apps/auth/app.tsx +137 -0
  511. package/examples/apps/auth/main.tsx +8 -0
  512. package/examples/apps/auth/server.ts +37 -0
  513. package/examples/apps/multi/README.md +23 -0
  514. package/examples/apps/multi/app.tsx +83 -0
  515. package/examples/apps/multi/main.tsx +8 -0
  516. package/examples/apps/multi/server.ts +33 -0
  517. package/examples/apps/todo/README.md +23 -0
  518. package/examples/apps/todo/api.ts +26 -0
  519. package/examples/apps/todo/app.tsx +128 -0
  520. package/examples/apps/todo/main.tsx +9 -0
  521. package/examples/apps/todo/server.ts +39 -0
  522. package/examples/hello-world/README.md +9 -0
  523. package/examples/hello-world/client.ts +14 -0
  524. package/examples/hello-world/routes.tsx +26 -0
  525. package/examples/hello-world/server.ts +46 -0
  526. package/examples/patterns/AppShell.tsx +224 -0
  527. package/examples/patterns/Dashboard.tsx +153 -0
  528. package/examples/patterns/DataScreen.tsx +104 -0
  529. package/examples/patterns/DetailPage.tsx +79 -0
  530. package/examples/patterns/Docs.tsx +105 -0
  531. package/examples/patterns/FocusTask.tsx +67 -0
  532. package/examples/patterns/Landing.tsx +90 -0
  533. package/examples/patterns/ListPage.tsx +77 -0
  534. package/examples/patterns/Mobile.tsx +154 -0
  535. package/examples/patterns/SettingsPage.tsx +98 -0
  536. package/examples/patterns/SplitWorkspace.tsx +113 -0
  537. package/package.json +61 -29
  538. package/dist/components/Editor/Editor.d.ts +0 -13
  539. package/dist/components/Editor/tools/format.d.ts +0 -11
  540. package/dist/components/Editor/tools/table.d.ts +0 -7
  541. package/dist/components/Editor/tools/types.d.ts +0 -15
  542. package/dist/components/Slider/Slider.d.ts +0 -19
  543. package/dist/components/Tabs/Tabs.d.ts +0 -12
  544. package/dist/components/index.js +0 -15
  545. package/dist/ui-dom/Confirm.d.ts +0 -8
  546. package/dist/ui-dom/Notification.d.ts +0 -8
  547. package/dist/ui-dom/Toast.d.ts +0 -8
  548. package/dist/ui-dom/ai.d.ts +0 -59
  549. package/dist/ui-dom/browser.d.ts +0 -10
  550. package/dist/ui-dom/debug.d.ts +0 -21
  551. package/dist/ui-dom/hooks/chat.d.ts +0 -11
  552. package/dist/ui-dom/hooks/events.d.ts +0 -30
  553. package/dist/ui-dom/hooks/external.d.ts +0 -20
  554. package/dist/ui-dom/hooks/index.d.ts +0 -29
  555. package/dist/ui-dom/hooks/input.d.ts +0 -33
  556. package/dist/ui-dom/hooks/media.d.ts +0 -17
  557. package/dist/ui-dom/hooks/popup.d.ts +0 -30
  558. package/dist/ui-dom/hooks/stable.d.ts +0 -35
  559. package/dist/ui-dom/hooks/types.d.ts +0 -77
  560. package/dist/ui-dom/i18n.d.ts +0 -31
  561. package/dist/ui-dom/index.d.ts +0 -47
  562. package/dist/ui-dom/index.js +0 -41
  563. package/dist/ui-dom/jsx-runtime.d.ts +0 -4
  564. package/dist/ui-dom/jsx-runtime.js +0 -1
  565. package/dist/ui-dom/locale/en_US.d.ts +0 -55
  566. package/dist/ui-dom/locale/zh_CN.d.ts +0 -55
  567. package/dist/ui-dom/middleware/api.d.ts +0 -91
  568. package/dist/ui-dom/middleware/auth.d.ts +0 -30
  569. package/dist/ui-dom/middleware/ws.d.ts +0 -33
  570. package/dist/ui-dom/motion.d.ts +0 -8
  571. package/dist/ui-dom/popup-tracker.d.ts +0 -36
  572. package/dist/ui-dom/popup.d.ts +0 -42
  573. package/dist/ui-dom/store.d.ts +0 -24
  574. package/dist/ui-dom/testing.d.ts +0 -68
  575. package/dist/ui-dom/testing.js +0 -7
  576. package/dist/ui-dom/types.d.ts +0 -632
  577. package/dist/ui-dom/use-chat.d.ts +0 -95
  578. package/dist/ui-dom/vdom3/README.d.ts +0 -32
  579. package/dist/ui-dom/vdom3/app.d.ts +0 -20
  580. package/dist/ui-dom/vdom3/audit.d.ts +0 -29
  581. package/dist/ui-dom/vdom3/build.d.ts +0 -20
  582. package/dist/ui-dom/vdom3/commands.d.ts +0 -21
  583. package/dist/ui-dom/vdom3/comp-index.d.ts +0 -18
  584. package/dist/ui-dom/vdom3/delegate.d.ts +0 -48
  585. package/dist/ui-dom/vdom3/events.d.ts +0 -17
  586. package/dist/ui-dom/vdom3/index.d.ts +0 -42
  587. package/dist/ui-dom/vdom3/jsx.d.ts +0 -32
  588. package/dist/ui-dom/vdom3/record.d.ts +0 -16
  589. package/dist/ui-dom/vdom3/registry.d.ts +0 -30
  590. package/dist/ui-dom/vdom3/render.d.ts +0 -39
  591. package/dist/ui-dom/vdom3/replay.d.ts +0 -28
  592. package/dist/ui-dom/vdom3/root.d.ts +0 -24
  593. package/dist/ui-dom/vdom3/router.d.ts +0 -31
  594. package/dist/ui-dom/vdom3/scheduler.d.ts +0 -23
  595. package/dist/ui-dom/vdom3/ssr.d.ts +0 -27
  596. package/dist/ui-dom/vdom3/sync.d.ts +0 -22
  597. package/dist/ui-dom/vdom3/types.d.ts +0 -173
  598. package/dist/ui-dom/vdom3/ui.d.ts +0 -16
  599. package/dist/ui-dom/vdom3.js +0 -41
  600. package/dist/ui-dom/vnode.d.ts +0 -13
  601. /package/dist/{make-executable-schema.test.d.ts → cli/content-sync.test.d.ts} +0 -0
  602. /package/dist/{ui-dom/testing.test.d.ts → cli/docs-cli.test.d.ts} +0 -0
  603. /package/dist/{components → client/components}/CodeBlock/highlight.d.ts +0 -0
  604. /package/dist/{components → client/components}/DatePicker/calendar-utils.d.ts +0 -0
  605. /package/dist/{components → client/components}/DiffView/diff-utils.d.ts +0 -0
  606. /package/dist/{components → client/components}/Markdown/parser.d.ts +0 -0
  607. /package/dist/{components → client/components}/Pipeline/dag-utils.d.ts +0 -0
  608. /package/dist/{components → client/components}/QRCode/qr.d.ts +0 -0
  609. /package/dist/{components → client/components}/Sparkline/sparkline-utils.d.ts +0 -0
  610. /package/dist/{ai → server/ai}/agent.d.ts +0 -0
  611. /package/dist/{ai → server/ai}/client.d.ts +0 -0
  612. /package/dist/{ai → server/ai}/sse.d.ts +0 -0
  613. /package/dist/{core → server/core}/serve.d.ts +0 -0
  614. /package/dist/{core → server/core}/ws.d.ts +0 -0
  615. /package/dist/{db → server/db}/errors.d.ts +0 -0
  616. /package/dist/{db → server/db}/memory-redis.d.ts +0 -0
  617. /package/dist/{db → server/db}/memory-sql.d.ts +0 -0
  618. /package/dist/{db → server/db}/postgres/connection.d.ts +0 -0
  619. /package/dist/{db → server/db}/postgres/pool.d.ts +0 -0
  620. /package/dist/{db → server/db}/postgres/protocol.d.ts +0 -0
  621. /package/dist/{db → server/db}/postgres/schema.d.ts +0 -0
  622. /package/dist/{db → server/db}/query-builder.d.ts +0 -0
  623. /package/dist/{db → server/db}/query.d.ts +0 -0
  624. /package/dist/{db → server/db}/redis/client.d.ts +0 -0
  625. /package/dist/{db → server/db}/redis/commands.d.ts +0 -0
  626. /package/dist/{db → server/db}/redis/connection.d.ts +0 -0
  627. /package/dist/{db → server/db}/redis/pipeline.d.ts +0 -0
  628. /package/dist/{db → server/db}/redis/pool.d.ts +0 -0
  629. /package/dist/{db → server/db}/redis/resp.d.ts +0 -0
  630. /package/dist/{db → server/db}/redis/subscriber.d.ts +0 -0
  631. /package/dist/{db → server/db}/sql-parser.d.ts +0 -0
  632. /package/dist/{email → server/email}/index.d.ts +0 -0
  633. /package/dist/{email → server/email}/smtp.d.ts +0 -0
  634. /package/dist/{graphql.d.ts → server/graphql.d.ts} +0 -0
  635. /package/dist/{index.d.ts → server/index.d.ts} +0 -0
  636. /package/dist/{make-executable-schema.d.ts → server/make-executable-schema.d.ts} +0 -0
  637. /package/dist/{messager → server/messager}/index.d.ts +0 -0
  638. /package/dist/{middleware → server/middleware}/cors.d.ts +0 -0
  639. /package/dist/{middleware → server/middleware}/rate-limit.d.ts +0 -0
  640. /package/dist/{middleware → server/middleware}/static.d.ts +0 -0
  641. /package/dist/{postgres → server/postgres}/client.d.ts +0 -0
  642. /package/dist/{postgres → server/postgres}/index.d.ts +0 -0
  643. /package/dist/{postgres → server/postgres}/types.d.ts +0 -0
  644. /package/dist/{queue → server/queue}/index.d.ts +0 -0
  645. /package/dist/{redis → server/redis}/client.d.ts +0 -0
  646. /package/dist/{redis → server/redis}/index.d.ts +0 -0
  647. /package/dist/{redis → server/redis}/types.d.ts +0 -0
  648. /package/dist/{request.d.ts → server/request.d.ts} +0 -0
  649. /package/dist/{response.d.ts → server/response.d.ts} +0 -0
  650. /package/dist/{scheduler → server/scheduler}/cron.d.ts +0 -0
  651. /package/dist/{scheduler → server/scheduler}/index.d.ts +0 -0
  652. /package/dist/{types.d.ts → server/types.d.ts} +0 -0
  653. /package/dist/{ui → server/ui}/html-safe.d.ts +0 -0
  654. /package/dist/{user → server/user}/index.d.ts +0 -0
  655. /package/dist/{user → server/user}/password.d.ts +0 -0
@@ -0,0 +1 @@
1
+ export {};
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../ui-dom/vnode.ts';
1
+ import type { Component } from '../../vdom/index.ts';
2
2
  export interface AccordionItem {
3
3
  key: string;
4
4
  title: string;
@@ -0,0 +1,37 @@
1
+ /**
2
+ * weifuwu/components — ActionSheet 动作面板(移动端底部滑出)
3
+ *
4
+ * 命令列表 + 取消按钮(iOS 风格)——移动端 App 常用弹层(照片选择/分享/
5
+ * 更多操作)。与 Modal/Drawer 同款会话级模态(usePopup presence 退场状态机 +
6
+ * 焦点 trap + 滚动锁)。
7
+ *
8
+ * 纪律:
9
+ * - 受控纪律(§5.2):open 由父控制 + onClose 必须提供
10
+ * - 键盘:role=menu + menuitem,方向键上下移动 + Enter 选择 + Escape 关闭
11
+ * - 选择后自动关闭(onSelect(key) + onClose())
12
+ * - 危险操作项 danger(--wf-color-error-text 语义文字色)
13
+ * - 图标走 Icon 组件(IconName)或任意 VNode
14
+ */
15
+ import type { Component } from '../../vdom/index.ts';
16
+ import type { IconName } from '../Icon/Icon.ts';
17
+ export interface ActionSheetItem {
18
+ key: string;
19
+ label: string;
20
+ /** 图标:IconName(内置)或任意 VNode(业务自定义) */
21
+ icon?: IconName | any;
22
+ /** 危险操作(红色语义文字) */
23
+ danger?: boolean;
24
+ disabled?: boolean;
25
+ }
26
+ export interface ActionSheetProps {
27
+ open: boolean;
28
+ items: ActionSheetItem[];
29
+ /** 点击项回调(选择后组件自动关闭) */
30
+ onSelect?: (key: string) => void;
31
+ onClose: () => void;
32
+ /** 取消按钮文案(默认「取消」) */
33
+ cancelText?: string;
34
+ /** 可选标题(面板顶部) */
35
+ title?: string;
36
+ }
37
+ export declare const ActionSheet: Component<ActionSheetProps>;
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../ui-dom/vnode.ts';
1
+ import type { Component } from '../../vdom/index.ts';
2
2
  export interface AffixProps {
3
3
  /** 距视口顶部偏移,滚动超过该值后固定(px),默认 0 */
4
4
  offsetTop?: number;
@@ -18,9 +18,9 @@
18
18
  * return () => h(AiChat, { chat: $ })
19
19
  * ```
20
20
  */
21
- import type { Component } from '../../ui-dom/vnode.ts';
22
- import type { UseChatHandle, UiMessage } from '../../ui-dom/use-chat.ts';
23
- import type { WfError, WfUsage, WfApprovalRequest } from '../../ai/types.ts';
21
+ import type { Component } from '../../vdom/index.ts';
22
+ import type { ChatHandle as UseChatHandle, ChatMessage as UiMessage } from '../../vdom/hooks/chat.ts';
23
+ import type { WfError, WfUsage, WfApprovalRequest } from '../../../server/ai/types.ts';
24
24
  import type { JsonSchema } from '../JsonSchemaForm/JsonSchemaForm.ts';
25
25
  export interface AiChatLabels {
26
26
  send: string;
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../ui-dom/vnode.ts';
1
+ import type { Component } from '../../vdom/index.ts';
2
2
  export type AlertVariant = 'info' | 'success' | 'warning' | 'error';
3
3
  export interface AlertProps {
4
4
  variant?: AlertVariant;
@@ -9,7 +9,7 @@
9
9
  * 裁剪(CS-05,见 design/components-cuts.md):合并阈值固定 3 条起(少于此退化为平铺);
10
10
  * 不做时间线分组/虚拟化。
11
11
  */
12
- import type { Component } from '../../ui-dom/vnode.ts';
12
+ import type { Component } from '../../vdom/index.ts';
13
13
  export interface AlertGroupItem {
14
14
  id: string;
15
15
  message: any;
@@ -5,7 +5,7 @@
5
5
  * 滚动侦听:ctx.ui.useScrollPosition(全局/容器 scroll 监听 + rAF 节流,内置方案)。
6
6
  * 裁剪(CS-05,见 design/components-cuts.md):嵌套滚动容器、滚动容器非视口(container 未提供时仅视口)、自动生成标题锚点。
7
7
  */
8
- import type { Component } from '../../ui-dom/vnode.ts';
8
+ import type { Component } from '../../vdom/index.ts';
9
9
  export interface AnchorItem {
10
10
  href: string;
11
11
  title: any;
@@ -0,0 +1,55 @@
1
+ /**
2
+ * weifuwu/components — AppShell
3
+ *
4
+ * 应用壳(SaaS 侧栏布局):品牌区 + 导航菜单 + 用户区 + 主内容区——
5
+ * 认证守卫/导航/用户数据由父层驱动(受控——组件零 fetch 零路由依赖)。
6
+ *
7
+ * 来源:agent-platform AppLayout(侧栏壳——Menu/Avatar/Button 组装样板)
8
+ * 沉淀——每个 SPA 应用的重复样板:品牌 + 分组菜单 + 用户信息 + 设置/
9
+ * 退出操作 + 守卫加载态。样式复用 weifuwu/layout 的 app-shell 原语
10
+ * (wf-app-shell + wf-sidebar 系列 + wf-main——grid 栅格 + 移动端降级),
11
+ * 组件只补品牌区/用户区细节(AppShell.css)。
12
+ *
13
+ * 状态约定(父层驱动):
14
+ * - nav/path:菜单数据与当前路由(activeKey 计算)
15
+ * - user:用户信息(null = 未登录——父层守卫跳登录)
16
+ * - onNavigate/onLogout/onSettings:回调上抛
17
+ * - loading:守卫加载态(骨架占位)
18
+ */
19
+ import type { Component } from '../../vdom/index.ts';
20
+ export interface AppShellNavItem {
21
+ key: string;
22
+ label: string;
23
+ icon?: any;
24
+ group?: string;
25
+ }
26
+ export interface AppShellProps {
27
+ /** 导航菜单项(Menu items——key/label/icon/group) */
28
+ nav?: AppShellNavItem[];
29
+ /** 当前路由路径(activeKey 匹配——'/' 精确,其余前缀) */
30
+ path?: string;
31
+ /** 品牌区(name/subtitle/logo 文本) */
32
+ brand?: {
33
+ name?: string;
34
+ subtitle?: string;
35
+ logo?: string;
36
+ };
37
+ /** 用户信息(null = 未登录——父层守卫) */
38
+ user?: {
39
+ name?: string;
40
+ email?: string;
41
+ } | null;
42
+ /** 导航回调(菜单选择 → 父层 navigate) */
43
+ onNavigate?: (key: string) => void;
44
+ onLogout?: () => void;
45
+ onSettings?: () => void;
46
+ /** 守卫加载态(骨架占位——不渲染菜单/用户) */
47
+ loading?: boolean;
48
+ /** 主内容区 */
49
+ children?: any;
50
+ /** 自定义底部(覆盖用户区——高级场景) */
51
+ footer?: any;
52
+ /** 侧栏宽度(layout 变量——默认 240px) */
53
+ sidebarWidth?: string;
54
+ }
55
+ export declare const AppShell: Component<AppShellProps>;
@@ -1,6 +1,6 @@
1
- import type { Component } from '../../ui-dom/vnode.ts';
1
+ import type { Component } from '../../vdom/index.ts';
2
2
  import { type JsonSchema } from '../JsonSchemaForm/JsonSchemaForm.ts';
3
- import type { WfApprovalRequest } from '../../ai/types.ts';
3
+ import type { WfApprovalRequest } from '../../../server/ai/types.ts';
4
4
  /**
5
5
  * ApprovalCard — 人工审批卡片(wf: 协议 §4.5 交互原语)
6
6
  *
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../ui-dom/vnode.ts';
1
+ import type { Component } from '../../vdom/index.ts';
2
2
  export interface AspectRatioProps {
3
3
  /** 宽/高比,默认 16/9 */
4
4
  ratio?: number;
@@ -9,8 +9,8 @@
9
9
  *
10
10
  * 使用两阶段模型 + render-only。无状态(props 驱动)。
11
11
  */
12
- import type { Component, VNode } from '../../ui-dom/vnode.ts';
13
- import type { HookEnv } from '../../ui-dom/hooks/types.ts';
12
+ import type { Component, VNode } from '../../vdom/index.ts';
13
+ import type { HookEnv } from '../../vdom/hooks/env.ts';
14
14
  export interface AuthPageProps {
15
15
  /** 标题(如「登录」) */
16
16
  title: string;
@@ -13,7 +13,7 @@
13
13
  * 裁剪(CS-05,见 design/components-cuts.md):不做分组/虚拟化候选(Select searchable 覆盖分组场景);
14
14
  * 自定义渲染用 `renderOption` 透传。
15
15
  */
16
- import type { Component } from '../../ui-dom/vnode.ts';
16
+ import type { Component } from '../../vdom/index.ts';
17
17
  export interface AutoCompleteOption {
18
18
  value: string;
19
19
  label?: any;
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../ui-dom/vnode.ts';
1
+ import type { Component } from '../../vdom/index.ts';
2
2
  export interface AvatarProps {
3
3
  name?: string;
4
4
  src?: string;
@@ -5,7 +5,7 @@
5
5
  * 用于群聊成员、协作人列表。
6
6
  * 裁剪(CS-05,见 design/components-cuts.md):hover 展开 tooltip(Tooltip 可组合)。
7
7
  */
8
- import type { Component } from '../../ui-dom/vnode.ts';
8
+ import type { Component } from '../../vdom/index.ts';
9
9
  import { type AvatarProps } from '../Avatar/Avatar.ts';
10
10
  export interface AvatarGroupItem {
11
11
  name?: string;
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../ui-dom/vnode.ts';
1
+ import type { Component } from '../../vdom/index.ts';
2
2
  export interface BackTopProps {
3
3
  /** 滚动超过此高度显示(px),默认 400 */
4
4
  visibilityHeight?: number;
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../ui-dom/vnode.ts';
1
+ import type { Component } from '../../vdom/index.ts';
2
2
  export type BadgeVariant = 'default' | 'primary' | 'success' | 'warning' | 'danger' | 'info' | 'error';
3
3
  export interface BadgeProps {
4
4
  variant?: BadgeVariant;
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../ui-dom/vnode.ts';
1
+ import type { Component } from '../../vdom/index.ts';
2
2
  export interface BreadcrumbItem {
3
3
  label: string;
4
4
  href?: string;
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../ui-dom/vnode.ts';
1
+ import type { Component } from '../../vdom/index.ts';
2
2
  export interface ButtonProps {
3
3
  variant?: 'primary' | 'secondary' | 'ghost' | 'danger' | 'danger-ghost';
4
4
  size?: 'sm' | 'md' | 'lg';
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../ui-dom/vnode.ts';
1
+ import type { Component } from '../../vdom/index.ts';
2
2
  export interface CalendarEvent {
3
3
  key: string;
4
4
  /** 日期 'YYYY-MM-DD' */
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../ui-dom/vnode.ts';
1
+ import type { Component } from '../../vdom/index.ts';
2
2
  export interface CardProps {
3
3
  variant?: 'default' | 'outlined';
4
4
  /** 便捷:outlined = variant 'outlined' */
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../ui-dom/vnode.ts';
1
+ import type { Component } from '../../vdom/index.ts';
2
2
  export interface CarouselProps {
3
3
  children: any[];
4
4
  /** 自动播放 */
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../ui-dom/vnode.ts';
1
+ import type { Component } from '../../vdom/index.ts';
2
2
  export interface CascaderOption {
3
3
  value: string;
4
4
  label: string;
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * weifuwu/components — Chart
3
3
  */
4
- import type { Component } from '../../ui-dom/vnode.ts';
4
+ import type { Component } from '../../vdom/index.ts';
5
5
  import type { DataPoint, ChartType, ChartOptions } from './chart-utils.ts';
6
6
  export type { DataPoint, ChartType, ChartOptions };
7
7
  export interface ChartProps {
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * 无 DOM 依赖,可测试。
5
5
  */
6
- export type ChartType = 'line' | 'bar' | 'pie';
6
+ export type ChartType = 'line' | 'bar' | 'pie' | 'radar' | 'gauge' | 'scatter';
7
7
  export interface DataPoint {
8
8
  label: string;
9
9
  value: number;
@@ -13,6 +13,10 @@ export interface ChartOptions {
13
13
  width?: number;
14
14
  height?: number;
15
15
  padding?: number;
16
+ /** gauge 最小值(默认 0) */
17
+ min?: number;
18
+ /** gauge 最大值(默认 100) */
19
+ max?: number;
16
20
  }
17
21
  export interface ScaleLinear {
18
22
  (v: number): number;
@@ -14,8 +14,8 @@
14
14
  *
15
15
  * 使用两阶段模型 + render-only。状态:内部 keyword(useControlledInput Map 缓存)。
16
16
  */
17
- import type { Component, VNode } from '../../ui-dom/vnode.ts';
18
- import type { V3Ui } from '../../ui-dom/vdom3/types.ts';
17
+ import type { Component, VNode } from '../../vdom/index.ts';
18
+ import type { Ui } from '../../vdom/index.ts';
19
19
  export interface ChatInputLabels {
20
20
  send: string;
21
21
  stop: string;
@@ -45,10 +45,10 @@ export interface ChatInputProps {
45
45
  labels?: Partial<ChatInputLabels>;
46
46
  /** 扩展位(附件/知识库/模型选择等) */
47
47
  actions?: VNode | null;
48
- /** 外部程序化控制(@ 补全等场景)——mount 后写入 { setKeyword, setValue } */
49
- control?: {
50
- current: ChatInputControl | null;
51
- };
48
+ /** 外部程序化控制(@ 补全等场景)——mount 期回调上抛稳定 handle({ setKeyword, setValue })——
49
+ * 回调必须 mount 层定义(稳定引用——vdom3 props 剪枝);禁止 out-param 对象(props 不可变契约——
50
+ * 原地写 control.current 触发 vdom3 audit) */
51
+ onControl?: (handle: ChatInputControl) => void;
52
52
  }
53
53
  export interface ChatInputControl {
54
54
  /** 直接写内部输入态(不触发 onChange——程序化改写如 @ 补全) */
@@ -57,5 +57,5 @@ export interface ChatInputControl {
57
57
  setValue: (v: string) => void;
58
58
  }
59
59
  export declare const ChatInput: Component<ChatInputProps, {
60
- ui: V3Ui;
60
+ ui: Ui;
61
61
  }>;
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../ui-dom/vnode.ts';
1
+ import type { Component } from '../../vdom/index.ts';
2
2
  export interface CheckboxProps {
3
3
  label?: string;
4
4
  checked?: boolean;
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../ui-dom/vnode.ts';
1
+ import type { Component } from '../../vdom/index.ts';
2
2
  export interface CheckboxGroupOption {
3
3
  value: string;
4
4
  label: string;
@@ -1,5 +1,5 @@
1
- import type { Component } from '../../ui-dom/vnode.ts';
2
- import type { WfuiContext } from '../../ui-dom/types.ts';
1
+ import type { Component } from '../../vdom/index.ts';
2
+ import type { UIContext } from '../../vdom/index.ts';
3
3
  /**
4
4
  * CitationCard — RAG 检索引用展示(AI 差异化)
5
5
  *
@@ -35,4 +35,4 @@ export interface CitationCardProps {
35
35
  /** 点击条目回调(提供时不渲染链接,由调用方处理跳转/打开) */
36
36
  onOpen?: (citation: Citation) => void;
37
37
  }
38
- export declare const CitationCard: Component<CitationCardProps, WfuiContext>;
38
+ export declare const CitationCard: Component<CitationCardProps, UIContext>;
@@ -5,7 +5,7 @@
5
5
  * (highlight.ts tokenizer——零依赖 FS-05)。
6
6
  * 由 Markdown 代码围栏复用;也可独立使用。
7
7
  */
8
- import type { Component } from '../../ui-dom/vnode.ts';
8
+ import type { Component } from '../../vdom/index.ts';
9
9
  export interface CodeBlockProps {
10
10
  code: string;
11
11
  lang?: string;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * CodeEditor — 轻量代码编辑器(textarea + 行号——零依赖自研,不引 Monaco)
3
+ *
4
+ * 定位:配置/模板/脚本类轻编辑(非 IDE 级)——需要完整 IDE 体验的场景
5
+ * 是裁剪边界(Monaco 600KB+ 违背零依赖哲学——design/components-cuts.md 登记)。
6
+ * 受控纪律:value 受控 + 缺 onChange → warn。
7
+ */
8
+ import type { Component } from '../../vdom/index.ts';
9
+ export interface CodeEditorProps {
10
+ value: string;
11
+ onChange?: (value: string) => void;
12
+ lang?: 'ts' | 'tsx' | 'js' | 'css' | 'json' | 'md' | 'text';
13
+ rows?: number;
14
+ readOnly?: boolean;
15
+ placeholder?: string;
16
+ className?: string;
17
+ }
18
+ export declare const CodeEditor: Component<CodeEditorProps>;
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../ui-dom/vnode.ts';
1
+ import type { Component } from '../../vdom/index.ts';
2
2
  export interface CollapseItem {
3
3
  key: string;
4
4
  title: string;
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../ui-dom/vnode.ts';
1
+ import type { Component } from '../../vdom/index.ts';
2
2
  export interface ColorPickerProps {
3
3
  /** 受控颜色值(hex,如 #4f6ef7) */
4
4
  value?: string;
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../ui-dom/vnode.ts';
1
+ import type { Component } from '../../vdom/index.ts';
2
2
  export interface CommandItem {
3
3
  key: string;
4
4
  label: string;
@@ -4,7 +4,7 @@
4
4
  * 声明式:基于 Modal 封装,footer 自带「取消 / 确定」按钮。
5
5
  * 命令式:confirm() 中间件注入 ctx.confirm(),返回 Promise<boolean>。
6
6
  */
7
- import type { Component } from '../../ui-dom/vnode.ts';
7
+ import type { Component } from '../../vdom/index.ts';
8
8
  export interface ConfirmProps {
9
9
  open?: boolean;
10
10
  title?: string;
@@ -35,10 +35,5 @@ export interface ConfirmOptions {
35
35
  export interface ConfirmInjected {
36
36
  confirm: (message: string, options?: ConfirmOptions) => Promise<boolean>;
37
37
  }
38
- /**
39
- * 命令式中间件:注入 ctx.confirm()
40
- *
41
- * 每次调用挂载 Confirm 组件到独立容器(mountVNode),
42
- * resolve 后 callRefCleanup 清理(含 Modal 的 portal DOM)+ 移除容器。
43
- */
38
+ export declare function confirm(message: string, options?: ConfirmOptions): Promise<boolean>;
44
39
  export declare const Confirm: Component<ConfirmProps>;
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../ui-dom/vnode.ts';
1
+ import type { Component } from '../../vdom/index.ts';
2
2
  export interface ContextMenuItem {
3
3
  key: string;
4
4
  label: string;
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../ui-dom/vnode.ts';
1
+ import type { Component } from '../../vdom/index.ts';
2
2
  export interface CopyButtonProps {
3
3
  /** 要复制的文本 */
4
4
  value: string;
@@ -4,9 +4,9 @@
4
4
  * 四合一日期选择器,支持 mode: date | datetime | time | range
5
5
  * 统一 usePopup:focus 触发 + mask 遮罩 + 自由定位(left 对齐 + width 跟随 trigger)。
6
6
  *
7
- * 状态管理:闭包变量 + ctx.ui.render()
7
+ * 状态管理:闭包变量 + ctx.render()
8
8
  */
9
- import type { Component } from '../../ui-dom/vnode.ts';
9
+ import type { Component } from '../../vdom/index.ts';
10
10
  export type DatePickerMode = 'date' | 'datetime' | 'time' | 'range';
11
11
  export interface DatePickerProps {
12
12
  mode?: DatePickerMode;
@@ -4,7 +4,7 @@
4
4
  * 详情字段展示:label/value 栅格(<dl> 语义结构,屏幕阅读器友好)。
5
5
  * 用于 Agent 配置展示、实体详情、订单信息等只读字段场景。
6
6
  */
7
- import type { Component } from '../../ui-dom/vnode.ts';
7
+ import type { Component } from '../../vdom/index.ts';
8
8
  export interface DescriptionItem {
9
9
  label: any;
10
10
  value: any;
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../ui-dom/vnode.ts';
1
+ import type { Component } from '../../vdom/index.ts';
2
2
  export interface DiffViewProps {
3
3
  /** 旧代码 */
4
4
  oldCode: string;
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../ui-dom/vnode.ts';
1
+ import type { Component } from '../../vdom/index.ts';
2
2
  export interface DividerProps {
3
3
  vertical?: boolean;
4
4
  children?: any;
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * weifuwu/components — Drawer
3
3
  */
4
- import type { Component } from '../../ui-dom/vnode.ts';
4
+ import type { Component } from '../../vdom/index.ts';
5
5
  export type DrawerPosition = 'left' | 'right';
6
6
  export interface DrawerProps {
7
7
  open?: boolean;
@@ -4,7 +4,7 @@
4
4
  * usePopup 组合器:click 触发 + 受控 open + 外部点击/Escape(document 级,
5
5
  * 弹层在 portal 中按 Escape 也能关)+ 定位/视口 clamp + portal。
6
6
  */
7
- import type { Component } from '../../ui-dom/vnode.ts';
7
+ import type { Component } from '../../vdom/index.ts';
8
8
  export interface DropdownItem {
9
9
  label: string;
10
10
  value?: string;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * weifuwu/components/Editor — 富文本编辑器(事件流事务层,阶段 1)
3
+ *
4
+ * 架构(design/editor-events-plan.md):文档 = fold(edit 事件流)。
5
+ * - 模型真相:DocState(contentEditable DOM 是渲染)
6
+ * - 语义操作(工具栏/快捷键)→ edit:commit(before 快照 + 事件)→ undo/redo 精确
7
+ * - 用户输入(键盘/IME/粘贴)暂由浏览器直写 DOM → onInput 同步回模型
8
+ * (输入入流是阶段 2——阶段 1 撤销分流:语义操作走自建栈,输入退浏览器)
9
+ * - 受控 value 契约保留:onChange 发 serializeHtml(doc)
10
+ */
11
+ import type { Component } from '../../vdom/index.ts';
12
+ import type { EditorProps } from './tools/types.ts';
13
+ export type { EditorProps, ToolbarItem, EditorAiAction, EditorAiOptions } from './tools/types.ts';
14
+ export declare const Editor: Component<EditorProps>;
@@ -0,0 +1,27 @@
1
+ /**
2
+ * weifuwu/components/Editor/edit-events — 编辑事件流(第四端)
3
+ *
4
+ * 与 ai/sandbox 事件流同构(design/ai-events-plan.md / sandbox-events-plan.md):
5
+ * 环形缓冲 + 查询(按动作过滤)+ 订阅 + 全局调试工具。
6
+ *
7
+ * 桥接(跨层一条链):
8
+ * - vdom3 stream:每 commit 一条摘要(降频——细粒度事件只在本缓冲)
9
+ * - ai:edit:ai-apply 事件带 messageId 关联键(↔ ai 事件流 wf:token/done)
10
+ * - sandbox:source: 'sandbox' 的 commit 带 toolCallId(↔ sandbox exec 事件)
11
+ */
12
+ export type EditAction = 'text-insert' | 'text-delete' | 'mark-apply' | 'block-set' | 'embed-insert' | 'embed-delete' | 'ai-apply' | 'ai-accept' | 'ai-reject' | 'commit' | 'undo' | 'redo' | 'clear' | 'preview' | 'office';
13
+ export interface EditStreamEvent {
14
+ entity: 'edit';
15
+ action: EditAction;
16
+ ts: number;
17
+ target?: string;
18
+ payload?: Record<string, unknown>;
19
+ }
20
+ export declare function editEmit(action: EditAction, payload?: Record<string, unknown>, target?: string): void;
21
+ /** 查询(倒序返回——最新在前;filter 按 action 过滤) */
22
+ export declare function editEvents(n?: number, filter?: {
23
+ action?: EditAction | EditAction[];
24
+ }): EditStreamEvent[];
25
+ export declare function subscribeEditEvents(fn: (e: EditStreamEvent) => void): () => void;
26
+ /** 测试隔离 */
27
+ export declare function resetEditEvents(): void;
@@ -0,0 +1,23 @@
1
+ /**
2
+ * weifuwu/components/Editor/model/apply — 事件应用(文档 = fold(事件流))
3
+ *
4
+ * applyEdit(doc, ev) 纯函数:任意事件 → 新 DocState(不可变)。
5
+ * 所有 offset 平移在单一入口维护(marks/blockProps/embeds/caret 同步——
6
+ * 防止各路径各自修补的漂移)。段结构查找用二分(undo/redo 高频路径)。
7
+ */
8
+ import type { DocState, EditEvent, BlockProp } from './types.ts';
9
+ /** 所有段起点(升序;空文档 = [0]——单空段) */
10
+ export declare function segmentStarts(text: string): number[];
11
+ /** 最后一个 <= pos 的段起点(二分——O(log n)) */
12
+ export declare function segmentStartAt(text: string, pos: number, starts?: number[]): number;
13
+ /** 位置 pos 所属段的块属性(默认 p/null) */
14
+ export declare function blockPropAt(doc: DocState, pos: number): BlockProp | null;
15
+ export declare function applyEdit(doc: DocState, ev: EditEvent): DocState;
16
+ /** 应用事件并记录实际效果(ai-apply 返回带 original 校验后的事件——供历史审计) */
17
+ export declare function applyEditChecked(doc: DocState, ev: EditEvent): {
18
+ doc: DocState;
19
+ ev: EditEvent;
20
+ };
21
+ /** 删除区间内/边界段起点被覆盖的段属性(含边界——段起点恰在 at+len 时合并吞属性;
22
+ * 逆操作按原段起点恢复——文本恢复后起点仍有效,幂等安全) */
23
+ export declare function removedBlocksOf(doc: DocState, at: number, end: number): BlockProp[];
@@ -0,0 +1,25 @@
1
+ /**
2
+ * weifuwu/components/Editor/model/diff — 文本 diff(AI 建议对比用)
3
+ *
4
+ * 零依赖:公共前缀/后缀剪枝 + 中间 LCS(滚动数组 O(m) 空间)。
5
+ * 裁剪:总长度超 DIFF_MAX_LEN 退化为整体替换(诚实裁剪——大文本不追求
6
+ * 精细 diff,AI 选区级文本通常 < 4k)。
7
+ */
8
+ export type DiffOp = {
9
+ type: 'equal';
10
+ text: string;
11
+ } | {
12
+ type: 'insert';
13
+ text: string;
14
+ } | {
15
+ type: 'delete';
16
+ text: string;
17
+ };
18
+ export declare const DIFF_MAX_LEN = 4000;
19
+ /** a → b 的文本 diff(公共前后缀剪枝——编辑两端不动的场景零 DP) */
20
+ export declare function textDiff(a: string, b: string): DiffOp[];
21
+ /** diff 统计(AI 面板摘要:+N/-M) */
22
+ export declare function diffStats(ops: DiffOp[]): {
23
+ added: number;
24
+ removed: number;
25
+ };