weifuwu 0.70.0 → 0.72.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 (170) hide show
  1. package/README.md +66 -55
  2. package/dist/components/Accordion/Accordion.d.ts +1 -1
  3. package/dist/components/Affix/Affix.d.ts +1 -1
  4. package/dist/components/AiChat/AiChat.d.ts +2 -2
  5. package/dist/components/Alert/Alert.d.ts +1 -1
  6. package/dist/components/AlertGroup/AlertGroup.d.ts +1 -1
  7. package/dist/components/Anchor/Anchor.d.ts +1 -1
  8. package/dist/components/ApprovalCard/ApprovalCard.d.ts +3 -1
  9. package/dist/components/AspectRatio/AspectRatio.d.ts +1 -1
  10. package/dist/components/AutoComplete/AutoComplete.d.ts +1 -1
  11. package/dist/components/Avatar/Avatar.d.ts +1 -1
  12. package/dist/components/AvatarGroup/AvatarGroup.d.ts +1 -1
  13. package/dist/components/BackTop/BackTop.d.ts +1 -1
  14. package/dist/components/Badge/Badge.d.ts +7 -1
  15. package/dist/components/Breadcrumb/Breadcrumb.d.ts +1 -1
  16. package/dist/components/Button/Button.d.ts +1 -1
  17. package/dist/components/Calendar/Calendar.d.ts +1 -1
  18. package/dist/components/Card/Card.d.ts +1 -1
  19. package/dist/components/Carousel/Carousel.d.ts +1 -1
  20. package/dist/components/Cascader/Cascader.d.ts +7 -3
  21. package/dist/components/Chart/Chart.d.ts +1 -1
  22. package/dist/components/Checkbox/Checkbox.d.ts +1 -1
  23. package/dist/components/CheckboxGroup/CheckboxGroup.d.ts +1 -1
  24. package/dist/components/CodeBlock/CodeBlock.d.ts +1 -1
  25. package/dist/components/Collapse/Collapse.d.ts +1 -1
  26. package/dist/components/ColorPicker/ColorPicker.d.ts +1 -1
  27. package/dist/components/Command/Command.d.ts +1 -1
  28. package/dist/components/Confirm/Confirm.d.ts +2 -2
  29. package/dist/components/ContextMenu/ContextMenu.d.ts +1 -1
  30. package/dist/components/CopyButton/CopyButton.d.ts +1 -1
  31. package/dist/components/DatePicker/DatePicker.d.ts +1 -1
  32. package/dist/components/Descriptions/Descriptions.d.ts +1 -1
  33. package/dist/components/DiffView/DiffView.d.ts +1 -1
  34. package/dist/components/Divider/Divider.d.ts +1 -1
  35. package/dist/components/Drawer/Drawer.d.ts +1 -1
  36. package/dist/components/Dropdown/Dropdown.d.ts +1 -1
  37. package/dist/components/Editor/Editor.d.ts +1 -1
  38. package/dist/components/Editor/tools/toolbar.d.ts +1 -1
  39. package/dist/components/EmptyState/EmptyState.d.ts +3 -2
  40. package/dist/components/Field/Field.d.ts +1 -1
  41. package/dist/components/FileUpload/FileUpload.d.ts +1 -1
  42. package/dist/components/FloatButton/FloatButton.d.ts +1 -1
  43. package/dist/components/Form/Form.d.ts +1 -1
  44. package/dist/components/Grid/Grid.d.ts +1 -1
  45. package/dist/components/Highlight/Highlight.d.ts +1 -1
  46. package/dist/components/HoverCard/HoverCard.d.ts +2 -2
  47. package/dist/components/Icon/Icon.d.ts +1 -1
  48. package/dist/components/Img/Img.d.ts +1 -1
  49. package/dist/components/InView/InView.d.ts +1 -1
  50. package/dist/components/InfiniteScroll/InfiniteScroll.d.ts +1 -1
  51. package/dist/components/Input/Input.d.ts +1 -1
  52. package/dist/components/InputNumber/InputNumber.d.ts +3 -3
  53. package/dist/components/JSONViewer/JSONViewer.d.ts +1 -1
  54. package/dist/components/Kanban/Kanban.d.ts +1 -1
  55. package/dist/components/Label/Label.d.ts +1 -1
  56. package/dist/components/Layout/Layout.d.ts +3 -1
  57. package/dist/components/Link/Link.d.ts +1 -1
  58. package/dist/components/List/List.d.ts +1 -1
  59. package/dist/components/Loading/Loading.d.ts +1 -1
  60. package/dist/components/LogViewer/LogViewer.d.ts +1 -1
  61. package/dist/components/Markdown/Markdown.d.ts +1 -1
  62. package/dist/components/Markdown/parser.d.ts +11 -5
  63. package/dist/components/Mentions/Mentions.d.ts +1 -1
  64. package/dist/components/Menu/Menu.d.ts +2 -2
  65. package/dist/components/Menubar/Menubar.d.ts +1 -1
  66. package/dist/components/MessageBubble/MessageBubble.d.ts +1 -1
  67. package/dist/components/Modal/Modal.d.ts +1 -1
  68. package/dist/components/NavMenu/NavMenu.d.ts +1 -1
  69. package/dist/components/Notification/Notification.d.ts +2 -2
  70. package/dist/components/PageHeader/PageHeader.d.ts +1 -1
  71. package/dist/components/Pagination/Pagination.d.ts +1 -1
  72. package/dist/components/PasswordInput/PasswordInput.d.ts +1 -1
  73. package/dist/components/PinInput/PinInput.d.ts +1 -1
  74. package/dist/components/Pipeline/Pipeline.d.ts +1 -1
  75. package/dist/components/Popconfirm/Popconfirm.d.ts +2 -2
  76. package/dist/components/Popover/Popover.d.ts +2 -2
  77. package/dist/components/ProgressBar/ProgressBar.d.ts +6 -1
  78. package/dist/components/QRCode/QRCode.d.ts +1 -1
  79. package/dist/components/RadioGroup/RadioGroup.d.ts +1 -1
  80. package/dist/components/Rate/Rate.d.ts +3 -1
  81. package/dist/components/Resizable/Resizable.d.ts +1 -1
  82. package/dist/components/Result/Result.d.ts +1 -1
  83. package/dist/components/Scrollbar/Scrollbar.d.ts +1 -1
  84. package/dist/components/SearchInput/SearchInput.d.ts +1 -1
  85. package/dist/components/SegmentedControl/SegmentedControl.d.ts +1 -1
  86. package/dist/components/Select/Select.d.ts +1 -1
  87. package/dist/components/Skeleton/Skeleton.d.ts +1 -1
  88. package/dist/components/Slider/Slider.d.ts +1 -1
  89. package/dist/components/Space/Space.d.ts +1 -1
  90. package/dist/components/Sparkline/Sparkline.d.ts +3 -1
  91. package/dist/components/StatCard/StatCard.d.ts +5 -3
  92. package/dist/components/Steps/Steps.d.ts +1 -1
  93. package/dist/components/Switch/Switch.d.ts +1 -1
  94. package/dist/components/Table/Table.d.ts +1 -1
  95. package/dist/components/Tabs/Tabs.d.ts +1 -1
  96. package/dist/components/Tag/Tag.d.ts +1 -1
  97. package/dist/components/TagsInput/TagsInput.d.ts +1 -1
  98. package/dist/components/Textarea/Textarea.d.ts +1 -1
  99. package/dist/components/ThemeSwitch/ThemeSwitch.d.ts +1 -1
  100. package/dist/components/Timeline/Timeline.d.ts +6 -5
  101. package/dist/components/Toast/Toast.d.ts +2 -2
  102. package/dist/components/ToggleGroup/ToggleGroup.d.ts +1 -1
  103. package/dist/components/ToolCallCard/ToolCallCard.d.ts +1 -1
  104. package/dist/components/Tooltip/Tooltip.d.ts +2 -2
  105. package/dist/components/Tour/Tour.d.ts +1 -1
  106. package/dist/components/Transfer/Transfer.d.ts +7 -3
  107. package/dist/components/Tree/Tree.d.ts +4 -2
  108. package/dist/components/TreeSelect/TreeSelect.d.ts +1 -1
  109. package/dist/components/Typography/Typography.d.ts +1 -1
  110. package/dist/components/VirtualList/VirtualList.d.ts +1 -1
  111. package/dist/components/VirtualTable/VirtualTable.d.ts +10 -2
  112. package/dist/components/Watermark/Watermark.d.ts +1 -1
  113. package/dist/components/index.d.ts +1 -1
  114. package/dist/components/index.js +13 -13
  115. package/dist/components/style.css +803 -320
  116. package/dist/dev/index.js +1 -1
  117. package/dist/index.js +12 -5
  118. package/dist/layout/weifuwu-layout.css +133 -15
  119. package/dist/ui/index.d.ts +1 -1
  120. package/dist/ui/ssr-page.d.ts +1 -1
  121. package/dist/ui/ssr.d.ts +1 -1
  122. package/dist/ui-dom/Confirm.d.ts +44 -0
  123. package/dist/ui-dom/Notification.d.ts +70 -0
  124. package/dist/ui-dom/Toast.d.ts +43 -0
  125. package/dist/{client → ui-dom}/diff.d.ts +7 -6
  126. package/dist/ui-dom/index.d.ts +33 -0
  127. package/dist/ui-dom/index.js +18 -0
  128. package/dist/ui-dom/jsx-runtime.d.ts +4 -0
  129. package/dist/ui-dom/jsx-runtime.js +1 -0
  130. package/dist/ui-dom/popup-tracker.d.ts +36 -0
  131. package/dist/ui-dom/registry.d.ts +39 -0
  132. package/dist/{client → ui-dom}/render.d.ts +14 -6
  133. package/dist/ui-dom/router.d.ts +66 -0
  134. package/dist/ui-dom/serve.d.ts +28 -0
  135. package/dist/ui-dom/ssr.d.ts +56 -0
  136. package/dist/{client → ui-dom}/types.d.ts +63 -18
  137. package/dist/{client → ui-dom}/ui.d.ts +9 -1
  138. package/dist/{client → ui-dom}/vnode.d.ts +24 -16
  139. package/docs/components.md +2 -2
  140. package/docs/custom-components.md +2 -0
  141. package/docs/frontend-middleware.md +3 -1
  142. package/docs/frontend-ui-dom.md +110 -0
  143. package/docs/frontend.md +3 -1
  144. package/docs/layout.md +37 -9
  145. package/docs/realtime.md +2 -0
  146. package/docs/saas.md +2 -0
  147. package/package.json +7 -7
  148. package/dist/client/app.d.ts +0 -26
  149. package/dist/client/error-boundary.d.ts +0 -23
  150. package/dist/client/index.d.ts +0 -54
  151. package/dist/client/index.js +0 -6
  152. package/dist/client/registry.d.ts +0 -34
  153. package/dist/client/router.d.ts +0 -26
  154. package/dist/client/type-flow.test.d.ts +0 -7
  155. /package/dist/{client → ui-dom}/ai.d.ts +0 -0
  156. /package/dist/{client → ui-dom}/browser.d.ts +0 -0
  157. /package/dist/{client → ui-dom}/focus-trap.d.ts +0 -0
  158. /package/dist/{client → ui-dom}/hydration.d.ts +0 -0
  159. /package/dist/{client → ui-dom}/i18n.d.ts +0 -0
  160. /package/dist/{client → ui-dom}/locale/en_US.d.ts +0 -0
  161. /package/dist/{client → ui-dom}/locale/zh_CN.d.ts +0 -0
  162. /package/dist/{client → ui-dom}/middleware/api.d.ts +0 -0
  163. /package/dist/{client → ui-dom}/middleware/auth.d.ts +0 -0
  164. /package/dist/{client → ui-dom}/middleware/ws.d.ts +0 -0
  165. /package/dist/{client → ui-dom}/motion.d.ts +0 -0
  166. /package/dist/{client → ui-dom}/popup.d.ts +0 -0
  167. /package/dist/{client → ui-dom}/reactive.d.ts +0 -0
  168. /package/dist/{client → ui-dom}/route-match.d.ts +0 -0
  169. /package/dist/{client → ui-dom}/scroll-lock.d.ts +0 -0
  170. /package/dist/{client → ui-dom}/use-chat.d.ts +0 -0
@@ -1,11 +1,12 @@
1
1
  /**
2
2
  * weifuwu/components — Timeline
3
3
  *
4
- * 竖向时间线:节点(状态色圆点/自定义)+ 标题 + 时间 + 内容 + 连接线。
5
- * 用于执行日志、审批历史、审计记录。
6
- * 裁剪:不做横向时间线/折叠节点(见 roadmap)。
4
+ * 时间线:节点(状态色圆点/自定义)+ 标题 + 时间 + 内容 + 连接线。
5
+ * 竖向(left/alternate)+ 横向(horizontal)。
6
+ * 用于执行日志、审批历史、审计记录、步骤进度。
7
+ * 裁剪:不做折叠节点。
7
8
  */
8
- import type { Component } from '../../client/vnode.ts';
9
+ import type { Component } from '../../ui-dom/vnode.ts';
9
10
  export type TimelineStatus = 'default' | 'info' | 'success' | 'warning' | 'error';
10
11
  export interface TimelineItem {
11
12
  key: string;
@@ -19,7 +20,7 @@ export interface TimelineItem {
19
20
  }
20
21
  export interface TimelineProps {
21
22
  items: TimelineItem[];
22
- mode?: 'left' | 'alternate';
23
+ mode?: 'left' | 'alternate' | 'horizontal';
23
24
  reverse?: boolean;
24
25
  }
25
26
  export declare const Timeline: Component<TimelineProps>;
@@ -1,5 +1,5 @@
1
- import type { Component } from '../../client/vnode.ts';
2
- import type { AppMiddleware } from '../../client/types.ts';
1
+ import type { Component } from '../../ui-dom/vnode.ts';
2
+ import type { AppMiddleware } from '../../ui-dom/types.ts';
3
3
  export type ToastType = 'success' | 'error' | 'info' | 'warning';
4
4
  export type ToastPosition = 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left' | 'top-center';
5
5
  export interface ToastItem {
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../client/vnode.ts';
1
+ import type { Component } from '../../ui-dom/vnode.ts';
2
2
  export interface ToggleProps {
3
3
  /** 按下状态(受控) */
4
4
  pressed?: boolean;
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../client/vnode.ts';
1
+ import type { Component } from '../../ui-dom/vnode.ts';
2
2
  import type { WfToolCall, WfToolProgress, WfToolResult } from '../../ai/types.ts';
3
3
  /**
4
4
  * ToolCallCard — 工具调用卡片(wf: 协议 §4 交互原语)
@@ -4,8 +4,8 @@
4
4
  * usePopup 组合器:hover 触发(触屏自动降级 tap)+ 定位/视口 clamp + Escape + portal。
5
5
  * 移动端友好由构造保证——tap 可显、44px 命中区走 base coarse 清单。
6
6
  */
7
- import type { Component } from '../../client/vnode.ts';
8
- import type { Placement } from '../../client/popup.ts';
7
+ import type { Component } from '../../ui-dom/vnode.ts';
8
+ import type { Placement } from '../../ui-dom/popup.ts';
9
9
  export type TooltipPosition = Placement;
10
10
  export interface TooltipProps {
11
11
  content: string;
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../client/vnode.ts';
1
+ import type { Component } from '../../ui-dom/vnode.ts';
2
2
  export type TourPlacement = 'top' | 'bottom' | 'left' | 'right';
3
3
  export interface TourStep {
4
4
  /** 目标元素选择器(ctx.browser.query) */
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../client/vnode.ts';
1
+ import type { Component } from '../../ui-dom/vnode.ts';
2
2
  export interface TransferItem {
3
3
  key: string;
4
4
  label: string;
@@ -12,7 +12,11 @@ export interface TransferProps {
12
12
  titles?: [string, string];
13
13
  size?: 'sm' | 'md' | 'lg';
14
14
  disabled?: boolean;
15
+ /** 显示搜索框(每侧独立过滤,内部态) */
16
+ showSearch?: boolean;
17
+ /** 搜索占位符 */
18
+ searchPlaceholder?: string;
15
19
  }
16
- /** 穿梭框(对应 antd/EP Transfer):双列表 + 中间穿梭按钮。
17
- * 裁剪:搜索过滤、拖拽排序、自定义渲染。 */
20
+ /** 穿梭框(对应 antd/EP Transfer):双列表 + 中间穿梭按钮 + 可选搜索。
21
+ * 裁剪:拖拽排序、自定义渲染。 */
18
22
  export declare const Transfer: Component<TransferProps>;
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../client/vnode.ts';
1
+ import type { Component } from '../../ui-dom/vnode.ts';
2
2
  export interface TreeNode {
3
3
  key: string;
4
4
  label: string;
@@ -20,10 +20,12 @@ export interface TreeProps {
20
20
  expandOnClick?: boolean;
21
21
  checkedKeys?: string[];
22
22
  onCheck?: (keys: string[]) => void;
23
+ /** 搜索过滤(label 含 searchValue 的节点 + 祖先;自动展开匹配路径 + 高亮) */
24
+ searchValue?: string;
23
25
  className?: string;
24
26
  }
25
27
  /**
26
28
  * 树形(对应 antd/EP Tree):递归节点 + 展开/折叠 + 单选 + 勾选(父子联动 +
27
- * indeterminate 半选态)。裁剪:拖拽、异步加载、搜索过滤。
29
+ * indeterminate 半选态 + 搜索过滤 searchValue)。裁剪:拖拽、异步加载。
28
30
  */
29
31
  export declare const Tree: Component<TreeProps>;
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../client/vnode.ts';
1
+ import type { Component } from '../../ui-dom/vnode.ts';
2
2
  import type { TreeNode } from '../Tree/Tree.ts';
3
3
  export interface TreeSelectProps {
4
4
  /** 树选项(复用 TreeNode 结构) */
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../client/vnode.ts';
1
+ import type { Component } from '../../ui-dom/vnode.ts';
2
2
  export type TextType = 'secondary' | 'success' | 'warning' | 'danger';
3
3
  export interface TitleProps {
4
4
  /** 1-5,默认 1(h1-h5) */
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../client/vnode.ts';
1
+ import type { Component } from '../../ui-dom/vnode.ts';
2
2
  export interface VirtualListProps {
3
3
  items?: any[];
4
4
  /** 视口高度(px) */
@@ -4,9 +4,10 @@
4
4
  * 虚拟表格(数据密集场景):固定表头 + 虚拟滚动表体,10k+ 行只渲染可见窗口。
5
5
  * 复用 VirtualList 滚动基座(useScrollPosition 像素级 scrollTop + rAF 节流)。
6
6
  * 排序:受控 sortKey/sortOrder + onSort(与 Table 同款模式)。
7
- * 裁剪:行选择(rowSelection)、列虚拟化(横向)、行编辑、单元格合并、树形表格。
7
+ * 行选择:rowSelection(受控 selectedRowKeys + onChange,复选框列)。
8
+ * 裁剪:列虚拟化(横向)、行编辑、单元格合并、树形表格。
8
9
  */
9
- import type { Component } from '../../client/vnode.ts';
10
+ import type { Component } from '../../ui-dom/vnode.ts';
10
11
  import type { TableColumn } from '../Table/Table.ts';
11
12
  export interface VirtualTableProps {
12
13
  columns: TableColumn[];
@@ -27,6 +28,13 @@ export interface VirtualTableProps {
27
28
  emptyText?: string;
28
29
  /** 行点击 */
29
30
  onRowClick?: (row: any, index: number) => void;
31
+ /** 行选择配置(受控) */
32
+ rowSelection?: {
33
+ selectedRowKeys: (string | number)[];
34
+ onChange?: (selectedRowKeys: (string | number)[], selectedRows: any[]) => void;
35
+ /** 行 key 字段名,默认 'id';无该字段回退到索引 */
36
+ rowKey?: string;
37
+ };
30
38
  className?: string;
31
39
  }
32
40
  export declare const VirtualTable: Component<VirtualTableProps>;
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../client/vnode.ts';
1
+ import type { Component } from '../../ui-dom/vnode.ts';
2
2
  export interface WatermarkProps {
3
3
  /** 水印文字 */
4
4
  text?: string;
@@ -28,7 +28,7 @@ export type { ModalProps } from './Modal/Modal.ts';
28
28
  export { Confirm, confirm } from './Confirm/Confirm.ts';
29
29
  export type { ConfirmProps, ConfirmOptions } from './Confirm/Confirm.ts';
30
30
  export { Toast, toast } from './Toast/Toast.ts';
31
- export type { ToastProps, ToastItem, ToastType, ToastPosition, ToastOptions } from './Toast/Toast.ts';
31
+ export type { ToastProps, ToastItem, ToastType, ToastPosition, ToastOptions, ToastInjected } from './Toast/Toast.ts';
32
32
  export { Alert } from './Alert/Alert.ts';
33
33
  export type { AlertProps, AlertVariant } from './Alert/Alert.ts';
34
34
  export { Loading } from './Loading/Loading.ts';