@pactor-app/ui 1.41.0 → 1.43.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.
@@ -334,17 +334,19 @@ interface InputProps {
334
334
  disabled?: boolean;
335
335
  /** 控件尺寸(默认 middle,即现行 h-9 尺寸;全局统一尺寸令牌见 control-size) */
336
336
  size?: ControlSize;
337
- /** 值为非空时显示清除按钮,点击清空当前值;开启后独立渲染的
338
- * className/style 挂控件包裹节点(含清除按钮),未开启时保持挂控件本身 */
337
+ /** hover 清除(缺省开启,传 false 关闭):值为非空时鼠标悬停控件,右缘浮出
338
+ * × 按钮(覆盖在控件内侧),点击清空当前值;独立渲染的 className/style
339
+ * 挂控件包裹节点,关闭时保持挂控件本身 */
339
340
  allowClear?: boolean;
340
341
  /** 输入事件,传出 string 值(非原生 event,设计决策 D2) */
341
342
  onChange?: (value: string) => void;
342
- /** 通用:根节点 class(Form 内为 form-item 容器,独立渲染时为控件本身) */
343
+ /** 通用:根节点 class(Form 内为 form-item 容器;独立渲染时挂控件包裹节点——
344
+ * allowClear 缺省开启、包裹节点常态存在;仅 allowClear: false 时挂 input 本身) */
343
345
  className?: string;
344
- /** 控件本体 class(无论是否在 Form 内都挂控件节点;独立渲染时与
345
- * className 同点合并——Form 内需要精确设置控件样式(如宽度)时使用) */
346
+ /** 控件本体 class(无论是否在 Form 内都挂 input 节点;Form 内需要精确
347
+ * 设置控件样式(如宽度)时使用) */
346
348
  controlClassName?: string;
347
- /** 通用:根节点内联样式(同 className 的挂载规则) */
349
+ /** 通用:根节点内联样式(挂载规则同 className) */
348
350
  style?: CSSProperties;
349
351
  }
350
352
  /**
@@ -457,8 +459,10 @@ interface CascaderProps {
457
459
  disabled?: boolean;
458
460
  /** 控件尺寸(默认 middle,即现行 h-9 尺寸) */
459
461
  size?: ControlSize;
460
- /** 选中叶子事件,传出路径 value 数组 */
461
- onChange?: (value: Array<string | number>) => void;
462
+ /** hover 清除(缺省开启,传 false 关闭):有值时悬停触发器,箭头图标替换为 ×,点击清空(传出 undefined) */
463
+ allowClear?: boolean;
464
+ /** 选中叶子事件,传出路径 value 数组;清除时传出 undefined */
465
+ onChange?: (value: Array<string | number> | undefined) => void;
462
466
  /** 通用:根节点 class(Form 内为 form-item 容器,独立渲染时为触发器) */
463
467
  className?: string;
464
468
  /** 通用:根节点内联样式(同 className 的挂载规则) */
@@ -470,7 +474,7 @@ interface CascaderProps {
470
474
  * ` / ` 连接路径 label。onChange 传出路径 value 数组(DSL 语义值);
471
475
  * Form 内声明 `name` 自动成为表单项。
472
476
  */
473
- declare function Cascader({ name, label, rules, options, value, placeholder, disabled, size, onChange, className, style, }: CascaderProps): React.JSX.Element;
477
+ declare function Cascader({ name, label, rules, options, value, placeholder, disabled, size, allowClear, onChange, className, style, }: CascaderProps): React.JSX.Element;
474
478
 
475
479
  interface CheckboxProps {
476
480
  /** 字段名;在 Form 内声明 name 即自动成为表单项 */
@@ -648,6 +652,8 @@ interface ComboboxProps {
648
652
  disabled?: boolean;
649
653
  /** 控件尺寸(默认 middle,即现行 h-9 尺寸) */
650
654
  size?: ControlSize;
655
+ /** hover 清除(缺省开启,传 false 关闭):有选中值时悬停触发器,上下箭头替换为 ×,点击清空(传出 undefined) */
656
+ allowClear?: boolean;
651
657
  /** 选中变化事件,传出选中项的原始 value */
652
658
  onChange?: (value: string | number | undefined) => void;
653
659
  /** 通用:根节点 class(Form 内为 form-item 容器,独立渲染时为触发器) */
@@ -660,7 +666,7 @@ interface ComboboxProps {
660
666
  * 支持搜索过滤;onChange 传出选中项原始 value(DSL 语义值);
661
667
  * Form 内声明 `name` 自动成为表单项。
662
668
  */
663
- declare function Combobox({ name, label, rules, options, value, placeholder, searchable, disabled, size, onChange, className, style, }: ComboboxProps): React.JSX.Element;
669
+ declare function Combobox({ name, label, rules, options, value, placeholder, searchable, disabled, size, allowClear, onChange, className, style, }: ComboboxProps): React.JSX.Element;
664
670
 
665
671
  /** Command 命令项 */
666
672
  interface CommandItemData {
@@ -897,6 +903,8 @@ interface DatePickerCommonProps {
897
903
  disabled?: boolean;
898
904
  /** 控件尺寸(默认 middle,即现行 h-9 尺寸) */
899
905
  size?: ControlSize;
906
+ /** hover 清除(缺省开启,传 false 关闭):有值时悬停触发器,日历图标替换为 ×,点击清空当前值 */
907
+ allowClear?: boolean;
900
908
  /**
901
909
  * 快捷预设栏:未提供时 range 模式缺省为内置三项(今天/本周/本月),
902
910
  * single 模式不渲染;`false` 显式关闭
@@ -2024,6 +2032,8 @@ interface NumberInputProps {
2024
2032
  disabled?: boolean;
2025
2033
  /** 控件尺寸(默认 middle,即现行 h-9 尺寸) */
2026
2034
  size?: ControlSize;
2035
+ /** hover 清除(缺省开启,传 false 关闭):有值时悬停控件,右侧步进按钮替换为 ×,点击清空(传出 undefined) */
2036
+ allowClear?: boolean;
2027
2037
  /** 输入事件,传出 number;清空时传出 undefined */
2028
2038
  onChange?: (value: number | undefined) => void;
2029
2039
  /** 通用:根节点 class(Form 内为 form-item 容器,独立渲染时为控件包裹节点) */
@@ -2041,7 +2051,7 @@ interface NumberInputProps {
2041
2051
  * 可解析时传出钳制 + 精度规整后的 number,清空时传出 undefined。
2042
2052
  * 步进按钮按 step 增减并以 min/max 钳制;到达边界或 disabled 时对应按钮禁用。
2043
2053
  */
2044
- declare function NumberInput({ name, label, rules, value, min, max, step, precision, placeholder, disabled, size, onChange, className, controlClassName, style, }: NumberInputProps): React.JSX.Element;
2054
+ declare function NumberInput({ name, label, rules, value, min, max, step, precision, placeholder, disabled, size, allowClear, onChange, className, controlClassName, style, }: NumberInputProps): React.JSX.Element;
2045
2055
 
2046
2056
  interface PageProps {
2047
2057
  /** 页面标题,可选 */
@@ -2378,6 +2388,7 @@ interface SelectProps {
2378
2388
  disabled?: boolean;
2379
2389
  /** 控件尺寸(默认 middle,即现行 h-9 尺寸) */
2380
2390
  size?: ControlSize;
2391
+ /** hover 清除(缺省开启,传 false 关闭):有选中值时悬停触发器,下拉箭头替换为 ×,点击清空选中 */
2381
2392
  allowClear?: boolean;
2382
2393
  /** 选中变化事件,传出选中的 value */
2383
2394
  onChange?: (value: unknown) => void;
@@ -2404,12 +2415,16 @@ declare function Select({ name, label, rules, options, value, placeholder, disab
2404
2415
  interface SeparatorProps {
2405
2416
  /** 方向,默认 horizontal */
2406
2417
  orientation?: 'horizontal' | 'vertical';
2407
- /** 通用:根节点 class(与内置样式合并) */
2418
+ /** 通用:根节点 class(与内置样式合并,可经 tailwind-merge 覆盖缺省外边距) */
2408
2419
  className?: string;
2409
2420
  /** 通用:根节点内联样式 */
2410
2421
  style?: CSSProperties;
2411
2422
  }
2412
- /** Separator 适配器(shadcn kit):orientation → vendored Separator */
2423
+ /**
2424
+ * Separator 适配器(shadcn kit):orientation → vendored Separator。
2425
+ * 缺省外边距随方向:horizontal 上下(my-4)、vertical 左右(mx-4),
2426
+ * className 传入同类工具类(如 my-0)时按 tailwind-merge 覆盖。
2427
+ */
2413
2428
  declare function Separator({ orientation, className, style }: SeparatorProps): React.JSX.Element;
2414
2429
 
2415
2430
  type SheetSide = 'left' | 'right' | 'top' | 'bottom';
@@ -2941,8 +2956,10 @@ interface TimePickerProps {
2941
2956
  disabled?: boolean;
2942
2957
  /** 控件尺寸(默认 middle,即现行 h-9 尺寸) */
2943
2958
  size?: ControlSize;
2944
- /** 时间变化事件,传出按 format 格式化的时间字符串 */
2945
- onChange?: (value: string) => void;
2959
+ /** hover 清除(缺省开启,传 false 关闭):有值时悬停触发器,时钟图标替换为 ×,点击清空(传出 undefined) */
2960
+ allowClear?: boolean;
2961
+ /** 时间变化事件,传出按 format 格式化的时间字符串;清除时传出 undefined */
2962
+ onChange?: (value: string | undefined) => void;
2946
2963
  /** 通用:根节点 class(Form 内为 form-item 容器,独立渲染时为触发器) */
2947
2964
  className?: string;
2948
2965
  /** 通用:根节点内联样式(同 className 的挂载规则) */
@@ -2954,7 +2971,7 @@ interface TimePickerProps {
2954
2971
  * 「此刻」取当前时间。`format: 'HH:mm'` 时无秒列、值无秒。
2955
2972
  * onChange 传出时间字符串(DSL 语义值);Form 内声明 `name` 自动成为表单项。
2956
2973
  */
2957
- declare function TimePicker({ name, label, rules, value, format, placeholder, disabled, size, onChange, className, style, }: TimePickerProps): React.JSX.Element;
2974
+ declare function TimePicker({ name, label, rules, value, format, placeholder, disabled, size, allowClear, onChange, className, style, }: TimePickerProps): React.JSX.Element;
2958
2975
 
2959
2976
  /** 时间轴节点;`icon` 为 Icon 白名单图标名(kebab-case 或 PascalCase) */
2960
2977
  interface TimelineItemData {
@@ -3235,8 +3252,10 @@ interface TreeSelectProps {
3235
3252
  disabled?: boolean;
3236
3253
  /** 控件尺寸(默认 middle,即现行 h-9 尺寸) */
3237
3254
  size?: ControlSize;
3238
- /** 选中变化事件,传出选中节点 value */
3239
- onChange?: (value: string | number) => void;
3255
+ /** hover 清除(缺省开启,传 false 关闭):有值时悬停触发器,箭头图标替换为 ×,点击清空(传出 undefined) */
3256
+ allowClear?: boolean;
3257
+ /** 选中变化事件,传出选中节点 value;清除时传出 undefined */
3258
+ onChange?: (value: string | number | undefined) => void;
3240
3259
  /** 通用:根节点 class(Form 内为 form-item 容器,独立渲染时为触发器) */
3241
3260
  className?: string;
3242
3261
  /** 通用:根节点内联样式(同 className 的挂载规则) */
@@ -3248,7 +3267,7 @@ interface TreeSelectProps {
3248
3267
  * 命中节点的祖先保留展开。单选,onChange 传出选中节点 value
3249
3268
  * (DSL 语义值);Form 内声明 `name` 自动成为表单项。
3250
3269
  */
3251
- declare function TreeSelect({ name, label, rules, options, value, placeholder, searchable, disabled, size, onChange, className, style, }: TreeSelectProps): React.JSX.Element;
3270
+ declare function TreeSelect({ name, label, rules, options, value, placeholder, searchable, disabled, size, allowClear, onChange, className, style, }: TreeSelectProps): React.JSX.Element;
3252
3271
 
3253
3272
  /** Typography 排版变体 */
3254
3273
  type TypographyVariant = NonNullable<VariantProps<typeof typographyVariants>['variant']>;
@@ -3944,6 +3963,13 @@ interface ChatPageProps {
3944
3963
  defaultArtifactOpen?: boolean;
3945
3964
  /** 产物区开关变化事件,传出 boolean */
3946
3965
  onArtifactOpenChange?: (open: boolean) => void;
3966
+ /**
3967
+ * 主体内容槽(React 元素或 DslNode):提供时整体替换右侧主区域——
3968
+ * 对话 header、Welcome / MessageList、Composer、对话图标栏与右侧
3969
+ * 产物 / 附加分栏均不渲染,由调用方自带完整主体(含 header);
3970
+ * 最左图标栏与展开菜单区不受影响
3971
+ */
3972
+ content?: DslNode | ReactNode;
3947
3973
  /** 通用:根节点 class(与内置样式合并) */
3948
3974
  className?: string;
3949
3975
  /** 通用:根节点内联样式 */
@@ -3963,11 +3989,13 @@ interface ChatPageProps {
3963
3989
  * 展示附加内容——popover 悬浮弹框或 panel 右侧分栏,与产物区互斥)、
3964
3990
  * 最右产物区(ArtifactPanel:内建产物预览、
3965
3991
  * 目录树与下载,可显隐;展示时经 Resizable 拖拽调节与对话区的宽度)。
3992
+ * content 槽(React 元素或 DslNode)提供时整体替换右侧主区域(含对话
3993
+ * header),由调用方自带完整主体内容;左侧图标栏与展开菜单区保留。
3966
3994
  * 数据与行为全部经 props / events 进出,
3967
3995
  * 本组件不持有业务状态(产物区开关、图标栏激活项与分区折叠缺省非受控,
3968
3996
  * 均可经受控 prop + change 事件闭环)。
3969
3997
  */
3970
- declare function ChatPage({ brand, menuItems, activeMenuKey, railItems, railFooterItems, menuAction, onMenuSelect, onMenuAction, conversationSectionTitle, conversationSectionCollapsed, defaultConversationSectionCollapsed, onConversationSectionToggle, conversations, activeConversationId, onSelectConversation, onDeleteConversation, moreLabel, onMore, footerSectionTitle, footerItems, footerSectionCollapsed, defaultFooterSectionCollapsed, onFooterSectionToggle, conversationTitle, conversationHeaderAction, onConversationHeaderAction, conversationRailItems, hideArtifactRailItem, activeConversationRailKey, onConversationRailChange, messages, sending, composerPlaceholder, welcome, onSend, onMessageAction, models, model, onModelChange, contexts, contextItems, onContextItemsChange, attachments, onAttachFiles, onRemoveAttachment, onRetryAttachment, composerFooter, composerBottom, artifactTitle, artifacts, activeArtifactId, onSelectArtifact, artifactEmptyText, safeRegistry, user, artifactViewers, onDownloadArtifact, artifactOpen, defaultArtifactOpen, onArtifactOpenChange, className, style, }: ChatPageProps): React.JSX.Element;
3998
+ declare function ChatPage({ brand, menuItems, activeMenuKey, railItems, railFooterItems, menuAction, onMenuSelect, onMenuAction, conversationSectionTitle, conversationSectionCollapsed, defaultConversationSectionCollapsed, onConversationSectionToggle, conversations, activeConversationId, onSelectConversation, onDeleteConversation, moreLabel, onMore, footerSectionTitle, footerItems, footerSectionCollapsed, defaultFooterSectionCollapsed, onFooterSectionToggle, conversationTitle, conversationHeaderAction, onConversationHeaderAction, conversationRailItems, hideArtifactRailItem, activeConversationRailKey, onConversationRailChange, messages, sending, composerPlaceholder, welcome, onSend, onMessageAction, models, model, onModelChange, contexts, contextItems, onContextItemsChange, attachments, onAttachFiles, onRemoveAttachment, onRetryAttachment, composerFooter, composerBottom, artifactTitle, artifacts, activeArtifactId, onSelectArtifact, artifactEmptyText, safeRegistry, user, artifactViewers, onDownloadArtifact, artifactOpen, defaultArtifactOpen, onArtifactOpenChange, content, className, style, }: ChatPageProps): React.JSX.Element;
3971
3999
 
3972
4000
  /** 引用来源项 */
3973
4001
  interface CitationItem {
@@ -5022,6 +5050,527 @@ interface LoginProps {
5022
5050
  */
5023
5051
  declare function Login({ layout, brandSide, brandRatio, authVariant, brandPanelBackground, decor, brand, title, subtitle, usernameLabel, usernamePlaceholder, passwordLabel, passwordPlaceholder, submitText, registerLink, forgotLink, footer, children, className, style, onSubmit, onRegisterClick, onForgotClick, }: LoginProps): React.JSX.Element;
5024
5052
 
5053
+ /** 过滤 pill 项(全部 / 会议 / 来自设备 / 未整理…) */
5054
+ interface RecordingFilterItem {
5055
+ key: string;
5056
+ label: string;
5057
+ }
5058
+ /** 录音条目状态语义色(缺省 secondary 弱提示灰) */
5059
+ type RecordingStatusType = Extract<TextType, 'success' | 'danger' | 'secondary'>;
5060
+ /** 录音记录条目 */
5061
+ interface RecordingItem {
5062
+ id: string;
5063
+ title: string;
5064
+ /** 日期时间(如 07 月 28 日 14:02) */
5065
+ time?: string;
5066
+ /** 时长(如 42:18) */
5067
+ duration?: string;
5068
+ /** 状态标签(如 纪要已生成 / 上传失败 / 转写中);提供才渲染 */
5069
+ status?: string;
5070
+ /** 状态语义色:success(绿)/ danger(红)/ secondary(灰,缺省) */
5071
+ statusType?: RecordingStatusType;
5072
+ /** 条目图标(Icon 白名单),缺省 audio-lines */
5073
+ icon?: string;
5074
+ [key: string]: unknown;
5075
+ }
5076
+ /** 录音分组(今天 / 昨天 / 本周…) */
5077
+ interface RecordingGroup {
5078
+ key?: string;
5079
+ label: string;
5080
+ items: RecordingItem[];
5081
+ }
5082
+ /** 原文转写说话人段落 */
5083
+ interface RecordingTranscriptSegment {
5084
+ /** 说话人名(如 王原 / 发言人 1) */
5085
+ speaker?: string;
5086
+ /** 头像占位字(缺省取 speaker 首字符,无 speaker 为 ?) */
5087
+ avatarText?: string;
5088
+ /** 段起始时间戳(如 00:42),展示在行右 */
5089
+ time?: string;
5090
+ /** 已标记:行右展示「⚑ 已标记」徽标 */
5091
+ marked?: boolean;
5092
+ /** 段落正文 */
5093
+ content?: string;
5094
+ }
5095
+ /** 修改发言人弹层的人员选项 */
5096
+ interface RecordingSpeaker {
5097
+ name: string;
5098
+ /** 头像占位字(缺省取 name 首字符) */
5099
+ avatarText?: string;
5100
+ /** 角色 / 组织(如 产品负责人 · Hojo) */
5101
+ role?: string;
5102
+ /** 行右来源标签(如 参会人 / 自动识别 / 用户创建);提供才渲染 */
5103
+ tag?: string;
5104
+ }
5105
+ /** 发言人修改(onSpeakerChange 事件载荷) */
5106
+ interface RecordingSpeakerChange {
5107
+ /** 段落索引(segments 下标) */
5108
+ index: number;
5109
+ /** 修改前发言人 */
5110
+ previous?: string;
5111
+ /** 修改后发言人姓名 */
5112
+ name: string;
5113
+ }
5114
+ /** 分享内容选项(头部「分享」Popover 复选列表) */
5115
+ interface RecordingShareOption {
5116
+ key: string;
5117
+ label: string;
5118
+ /** 禁用(勾选态锁定,不可取消) */
5119
+ disabled?: boolean;
5120
+ }
5121
+ /** 详情页签项;content 缺省且 key 命中 transcriptTabKey 时渲染 segments */
5122
+ interface RecordingTabItem {
5123
+ key: string;
5124
+ label: string;
5125
+ /** 页签自定义内容(React 元素或 DslNode),优先于内建转写段落 */
5126
+ content?: DslNode | ReactNode;
5127
+ }
5128
+ /** 播放条数据;提供才渲染底部播放条 */
5129
+ interface RecordingPlayer {
5130
+ /** 当前进度文案(如 14:22) */
5131
+ currentTime?: string;
5132
+ /** 总时长文案(如 42:18) */
5133
+ totalTime?: string;
5134
+ /** 进度百分比(0-100) */
5135
+ progress?: number;
5136
+ }
5137
+ /** 详细纪要 - 思维导图(中心节点 + 左右两侧子节点) */
5138
+ interface RecordingSummaryMindmap {
5139
+ /** 中心节点(深色胶囊) */
5140
+ center: string;
5141
+ /** 左侧节点 */
5142
+ left?: string[];
5143
+ /** 右侧节点 */
5144
+ right?: string[];
5145
+ }
5146
+ /** 详细纪要 - 主要议题卡 */
5147
+ interface RecordingSummaryTopic {
5148
+ title: string;
5149
+ content?: string;
5150
+ }
5151
+ /** 详细纪要 - 评审结论行(事项 / 会议结论 / 负责人) */
5152
+ interface RecordingSummaryConclusion {
5153
+ item: string;
5154
+ conclusion?: string;
5155
+ owner?: string;
5156
+ }
5157
+ /** 详细纪要 - 相关材料条目 */
5158
+ interface RecordingSummaryMaterial {
5159
+ id?: string;
5160
+ title: string;
5161
+ /** 右侧元信息(如 7 月 21 日 · 文档) */
5162
+ meta?: string;
5163
+ /** 左侧图标(Icon 白名单),缺省 file-text */
5164
+ icon?: string;
5165
+ [key: string]: unknown;
5166
+ }
5167
+ /** 详细纪要 - 待办事项条目 */
5168
+ interface RecordingSummaryTodo {
5169
+ id?: string;
5170
+ title: string;
5171
+ /** 右侧归属(如 李珂 · 本周) */
5172
+ owner?: string;
5173
+ /** 完成态(绿色对勾);作为非受控选中态的初始值(点击可切换) */
5174
+ done?: boolean;
5175
+ [key: string]: unknown;
5176
+ }
5177
+ /** 详细纪要 - 底部操作项(复制 / 分享 / 赞 / 踩…),点击经 onSummaryAction 传出 key */
5178
+ interface RecordingSummaryAction {
5179
+ key: string;
5180
+ /** 图标名(Icon 白名单) */
5181
+ icon?: string;
5182
+ }
5183
+ /** AI 解读 - 章节速览条目(时间戳 + 标题 + 解读正文) */ interface RecordingInsightChapter {
5184
+ /** 章节起始时间戳(如 00:05) */
5185
+ time?: string;
5186
+ title: string;
5187
+ content?: string;
5188
+ }
5189
+ /** AI 解读 - 观点分析条目(发言人视角观点) */
5190
+ interface RecordingInsightViewpoint {
5191
+ /** 发言人名(如 李珂) */
5192
+ speaker: string;
5193
+ /** 头像占位字(缺省取 speaker 首字符) */
5194
+ avatarText?: string;
5195
+ /** 行右标签(如「自动识别」);缺省「自动识别」,置空字符串不渲染 */
5196
+ tag?: string;
5197
+ /** 观点加粗前缀(如「数据优先」) */
5198
+ label?: string;
5199
+ /** 观点正文 */
5200
+ content?: string;
5201
+ }
5202
+ /** AI 解读结构化内容(insightTabKey 页签内建渲染,各段提供才展示) */
5203
+ interface RecordingInsight {
5204
+ /** 视角横幅标题(如「AI 判断你负责产品战略与关键业务决策」) */
5205
+ perspectiveTitle?: string;
5206
+ /** 视角横幅右上操作文案(如「修改」);提供才渲染,点击打开内建解读身份弹层 */
5207
+ perspectiveActionLabel?: string;
5208
+ /** 解读身份弹层文本受控值(提供即受控,配合 onPerspectiveApply 闭环) */
5209
+ perspectiveInput?: string;
5210
+ /** 解读身份弹层文本非受控初始值 */
5211
+ defaultPerspectiveInput?: string;
5212
+ /** 解读身份弹层标题,缺省「修改解读身份」 */
5213
+ perspectiveDialogTitle?: string;
5214
+ /** 解读身份弹层说明,缺省「用自然语言说明你在本次会议中的身份与关注点。」 */
5215
+ perspectiveDialogHint?: string;
5216
+ /** 解读身份弹层输入框占位文案 */
5217
+ perspectivePlaceholder?: string;
5218
+ /** 解读身份弹层取消按钮文案,缺省「取消」 */
5219
+ perspectiveCancelLabel?: string;
5220
+ /** 解读身份弹层确定按钮文案,缺省「应用身份」 */
5221
+ perspectiveConfirmLabel?: string;
5222
+ /** 视角横幅说明(如「本页会从决策者视角解读会议…」) */
5223
+ perspectiveHint?: string;
5224
+ /** 基础信息段标题,缺省「基础信息」 */
5225
+ basicsTitle?: string;
5226
+ /** 基础信息正文 */
5227
+ basics?: string;
5228
+ /** 章节速览段标题,缺省「章节速览与解读」 */
5229
+ chaptersTitle?: string;
5230
+ /** 章节速览条目 */
5231
+ chapters?: RecordingInsightChapter[];
5232
+ /** 观点分析段标题,缺省「观点分析」 */
5233
+ viewpointsTitle?: string;
5234
+ /** 观点分析条目 */
5235
+ viewpoints?: RecordingInsightViewpoint[];
5236
+ /** 底部操作项(如复制 / 分享 / 赞 / 踩);提供才渲染操作条 */
5237
+ actions?: RecordingSummaryAction[];
5238
+ }
5239
+ /** 知识记忆 - 条目(标题 + 正文卡片) */
5240
+ interface RecordingMemoryItem {
5241
+ title: string;
5242
+ content?: string;
5243
+ }
5244
+ /** 知识记忆 - 分组(客观事实 / 决策 / 核心观点…;标题自动拼接条目计数) */
5245
+ interface RecordingMemoryGroup {
5246
+ key?: string;
5247
+ label: string;
5248
+ items: RecordingMemoryItem[];
5249
+ }
5250
+ /** 知识记忆结构化内容(memoryTabKey 页签内建渲染,各段提供才展示) */
5251
+ interface RecordingMemory {
5252
+ /** 分组列表;组标题展示为「label · 条目数」 */
5253
+ groups?: RecordingMemoryGroup[];
5254
+ /** 底部操作项(如复制 / 分享 / 赞 / 踩);提供才渲染操作条 */
5255
+ actions?: RecordingSummaryAction[];
5256
+ }
5257
+ /** 翻译 - 双语对照段落(说话人原文 + 译文) */
5258
+ interface RecordingTranslationSegment {
5259
+ /** 说话人名(如 王原) */
5260
+ speaker?: string;
5261
+ /** 头像占位字(缺省取 speaker 首字符,无 speaker 为 ?) */
5262
+ avatarText?: string;
5263
+ /** 原文 */
5264
+ source?: string;
5265
+ /** 译文 */
5266
+ target?: string;
5267
+ }
5268
+ /** 翻译 - 语言选项(原文语言识别 / 译文语言选择弹层条目) */
5269
+ interface RecordingLanguageOption {
5270
+ key: string;
5271
+ label: string;
5272
+ }
5273
+ /** 翻译语种变更(onLanguageChange 事件载荷) */
5274
+ interface RecordingLanguageChange {
5275
+ /** 原文语言识别选中 key */
5276
+ source?: string;
5277
+ /** 原文语言识别选中项文案 */
5278
+ sourceLabel?: string;
5279
+ /** 译文语言选择选中 key */
5280
+ target?: string;
5281
+ /** 译文语言选择选中项文案 */
5282
+ targetLabel?: string;
5283
+ }
5284
+ /** 翻译结构化内容(translationTabKey 页签内建渲染) */
5285
+ interface RecordingTranslation {
5286
+ /** 语言选择器文案(如「自动判断 → English」);提供才渲染选择器 */
5287
+ languageLabel?: string;
5288
+ /** 译文列标题(如「译文 · 英语」),缺省「译文」 */
5289
+ targetLabel?: string;
5290
+ /** 双语对照段落 */
5291
+ segments?: RecordingTranslationSegment[];
5292
+ /** 原文语言识别选项(弹层左列);与 targetLanguages 任一提供即启用语种弹层 */
5293
+ sourceLanguages?: RecordingLanguageOption[];
5294
+ /** 译文语言选择选项(弹层右列) */
5295
+ targetLanguages?: RecordingLanguageOption[];
5296
+ /** 原文语言受控选中 key(提供即受控,配合 onLanguageChange 闭环) */
5297
+ sourceLanguage?: string;
5298
+ /** 译文语言受控选中 key */
5299
+ targetLanguage?: string;
5300
+ /** 原文语言非受控初始选中 key,缺省首项 */
5301
+ defaultSourceLanguage?: string;
5302
+ /** 译文语言非受控初始选中 key,缺省首项 */
5303
+ defaultTargetLanguage?: string;
5304
+ /** 语种弹层标题,缺省「选择翻译语言」 */
5305
+ languageDialogTitle?: string;
5306
+ /** 弹层左列标题,缺省「原文语言识别」 */
5307
+ sourceLanguagesTitle?: string;
5308
+ /** 弹层右列标题,缺省「译文语言选择」 */
5309
+ targetLanguagesTitle?: string;
5310
+ /** 弹层取消按钮文案,缺省「取消」 */
5311
+ cancelLabel?: string;
5312
+ /** 弹层确定按钮文案,缺省「确定」 */
5313
+ confirmLabel?: string;
5314
+ /** 底部操作项(如复制 / 分享 / 赞 / 踩);提供才渲染操作条 */
5315
+ actions?: RecordingSummaryAction[];
5316
+ }
5317
+ /** 详细纪要结构化内容(summaryTabKey 页签内建渲染,各段提供才展示) */
5318
+ interface RecordingSummary {
5319
+ /** 思维导图段标题,缺省「思维导图」 */
5320
+ mindmapTitle?: string;
5321
+ /** 思维导图段右上操作文案(如「查看思维导图」);提供才渲染 */
5322
+ mindmapActionLabel?: string;
5323
+ /** 思维导图节点 */
5324
+ mindmap?: RecordingSummaryMindmap;
5325
+ /** 会议概况段标题,缺省「会议概况」 */
5326
+ overviewTitle?: string;
5327
+ /** 会议概况正文 */
5328
+ overview?: string;
5329
+ /** 主要议题段标题,缺省「主要议题」 */
5330
+ topicsTitle?: string;
5331
+ /** 主要议题卡(两列网格) */
5332
+ topics?: RecordingSummaryTopic[];
5333
+ /** 评审结论段标题,缺省「评审结论与后续安排」 */
5334
+ conclusionsTitle?: string;
5335
+ /** 评审结论表行 */
5336
+ conclusions?: RecordingSummaryConclusion[];
5337
+ /** 后续说明段标题(如「资源缺口与后续」);提供 followUp 时展示 */
5338
+ followUpTitle?: string;
5339
+ /** 后续说明正文 */
5340
+ followUp?: string;
5341
+ /** 相关材料段标题,缺省「相关材料」 */
5342
+ materialsTitle?: string;
5343
+ /** 相关材料条目 */
5344
+ materials?: RecordingSummaryMaterial[];
5345
+ /** 待办事项段标题,缺省「待办事项」 */
5346
+ todosTitle?: string;
5347
+ /** 待办事项条目 */
5348
+ todos?: RecordingSummaryTodo[];
5349
+ /** 底部操作项(如复制 / 分享 / 赞 / 踩);提供才渲染操作条 */
5350
+ actions?: RecordingSummaryAction[];
5351
+ }
5352
+ interface RecordingPageProps {
5353
+ /** 左列列表标题,缺省「录音记录列表」 */
5354
+ listTitle?: string;
5355
+ /** 列表标题右侧操作文案(如「选择」);提供才渲染,点击进入多选模式 */
5356
+ selectLabel?: string;
5357
+ /** 多选模式标题右侧操作文案,缺省「完成」 */
5358
+ selectDoneLabel?: string;
5359
+ /** 多选模式全选文案,缺省「全选」 */
5360
+ selectAllLabel?: string;
5361
+ /** 多选模式已选计数文案({count} 占位),缺省「已选 {count} 条」 */
5362
+ selectedCountText?: string;
5363
+ /** 多选模式底部删除按钮文案,缺省「删除」 */
5364
+ deleteLabel?: string;
5365
+ /** 删除二次确认弹层标题,缺省「删除录音」 */
5366
+ deleteConfirmTitle?: string;
5367
+ /** 删除二次确认弹层正文({count} 占位选中条数),缺省「确定删除选中的 {count} 条录音吗?删除后不可恢复。」 */
5368
+ deleteConfirmText?: string;
5369
+ /** 删除二次确认取消按钮文案,缺省「取消」 */
5370
+ deleteCancelLabel?: string;
5371
+ /** 删除二次确认确定按钮文案,缺省「删除」 */
5372
+ deleteConfirmLabel?: string;
5373
+ /** 多选模式选中录音 id 列表(提供即受控,配合 onRecordingSelectionChange 闭环) */
5374
+ selectedRecordingIds?: string[];
5375
+ /** 多选模式非受控初始选中 id 列表,缺省空 */
5376
+ defaultSelectedRecordingIds?: string[];
5377
+ /** 多选模式勾选变化事件,传出完整选中 id 列表 */
5378
+ onRecordingSelectionChange?: (ids: string[]) => void;
5379
+ /** 多选模式「删除」点击后先弹二次确认弹层,确认经 onDeleteRecordings 传出选中 id 列表 */
5380
+ onDeleteRecordings?: (ids: string[]) => void;
5381
+ /** 「选择」点击事件(同时进入多选模式) */
5382
+ onSelectClick?: () => void;
5383
+ /** 过滤 pill 组(缺省不渲染) */
5384
+ filters?: RecordingFilterItem[];
5385
+ /** 过滤受控选中 key(提供即受控,配合 onFilterChange 闭环) */
5386
+ activeFilterKey?: string;
5387
+ /** 过滤非受控初始选中 key,缺省首项 */
5388
+ defaultActiveFilterKey?: string;
5389
+ /** 过滤切换事件,传出 key */
5390
+ onFilterChange?: (key: string) => void;
5391
+ /** 处理中横幅主文案(如「3 条录音处理中」);提供才渲染横幅 */
5392
+ processingText?: string;
5393
+ /** 处理中横幅副文案(如「另有 3 条处理失败」) */
5394
+ processingHint?: string;
5395
+ /** 处理中横幅点击事件 */
5396
+ onProcessingClick?: () => void;
5397
+ /** 新建录音按钮文案,缺省「开始新录音」;置 null 不渲染 */
5398
+ newRecordingLabel?: string | null;
5399
+ /** 新建录音点击事件 */
5400
+ onNewRecording?: () => void;
5401
+ /** 录音分组列表(今天 / 昨天 / 本周…) */
5402
+ groups?: RecordingGroup[];
5403
+ /** 选中录音 id(提供即受控,配合 onSelectRecording 闭环) */
5404
+ activeRecordingId?: string;
5405
+ /** 非受控初始选中录音 id */
5406
+ defaultActiveRecordingId?: string;
5407
+ /** 录音条目点击事件,传出 id */
5408
+ onSelectRecording?: (id: string) => void;
5409
+ /** 左列宽度(px),缺省 300 */
5410
+ listWidth?: number;
5411
+ /** 列表空数据文案 */
5412
+ emptyText?: string;
5413
+ /** 右列详情标题(通常为当前录音标题) */
5414
+ title?: string;
5415
+ /** 标题下元信息(如 07 月 28 日 14:02 · 42:18) */
5416
+ meta?: string;
5417
+ /** 头部右侧「编辑」文案;提供才渲染 */
5418
+ editLabel?: string;
5419
+ /** 头部右侧「分享」按钮文案;提供才渲染 */
5420
+ shareLabel?: string;
5421
+ /** 分享内容选项(Popover 复选列表);提供非空时「分享」点击打开内建 Popover */
5422
+ shareOptions?: RecordingShareOption[];
5423
+ /** 分享内容受控选中 key 列表(提供即受控,配合 onShareConfirm 闭环) */
5424
+ shareSelectedKeys?: string[];
5425
+ /** 分享内容非受控初始选中 key 列表,缺省全部选项 */
5426
+ defaultShareSelectedKeys?: string[];
5427
+ /** 分享 Popover 标题,缺省「选择分享内容」 */
5428
+ sharePopoverTitle?: string;
5429
+ /** 分享 Popover 取消按钮文案,缺省「取消」 */
5430
+ shareCancelLabel?: string;
5431
+ /** 分享 Popover 确定按钮文案,缺省「确定」 */
5432
+ shareConfirmLabel?: string;
5433
+ /** 分享对话框标题,缺省「分享会议内容」 */
5434
+ shareDialogTitle?: string;
5435
+ /** 分享对话框链接;提供才渲染链接行 */
5436
+ shareLink?: string;
5437
+ /** 复制链接按钮文案,缺省「复制链接」 */
5438
+ shareCopyLinkLabel?: string;
5439
+ /** 复制成功后的短暂按钮文案,缺省「已复制」 */
5440
+ shareCopiedLabel?: string;
5441
+ /** 邮件按钮文案,缺省「邮件」 */
5442
+ shareMailLabel?: string;
5443
+ /** 系统分享按钮文案,缺省「系统分享」 */
5444
+ shareSystemLabel?: string;
5445
+ /** 分享 Popover「确定」事件,传出选中内容 key 列表(同时打开分享对话框) */
5446
+ onShareConfirm?: (keys: string[]) => void;
5447
+ /** 分享对话框渠道点击事件,传出 'copyLink' | 'mail' | 'system' */
5448
+ onShareChannel?: (channel: string) => void;
5449
+ /** 编辑点击事件 */
5450
+ onEdit?: () => void;
5451
+ /** 分享点击事件(提供 shareOptions 时点击同时打开内建 Popover) */
5452
+ onShare?: () => void;
5453
+ /** 详情页签(原文转写 / 详细纪要 / AI 解读…);缺省不渲染页签 */
5454
+ tabs?: RecordingTabItem[];
5455
+ /** 页签受控激活 key(提供即受控,配合 onTabChange 闭环) */
5456
+ activeTabKey?: string;
5457
+ /** 页签非受控初始激活 key,缺省首项 */
5458
+ defaultActiveTabKey?: string;
5459
+ /** 页签切换事件,传出 key */
5460
+ onTabChange?: (key: string) => void;
5461
+ /** 原文转写页签 key,缺省 transcript:该页签渲染 segments 说话人段落 */
5462
+ transcriptTabKey?: string;
5463
+ /** 原文转写说话人段落 */
5464
+ segments?: RecordingTranscriptSegment[];
5465
+ /** 修改发言人弹层的人员选项列表(参会人 / 自动识别 / 用户创建…) */
5466
+ speakers?: RecordingSpeaker[];
5467
+ /** 修改发言人弹层标题,缺省「修改发言人」 */
5468
+ speakerDialogTitle?: string;
5469
+ /** 修改发言人弹层说明,缺省「选择参会信息、已识别人员或你曾手动创建的联系人。」 */
5470
+ speakerDialogHint?: string;
5471
+ /** 修改发言人弹层姓名输入框占位,缺省「输入姓名」 */
5472
+ speakerInputPlaceholder?: string;
5473
+ /** 修改发言人弹层确定按钮文案,缺省「应用姓名」 */
5474
+ speakerApplyLabel?: string;
5475
+ /** 发言人修改事件(点段落改名铅笔,弹层「应用姓名」触发),传出 { index, previous, name } */
5476
+ onSpeakerChange?: (change: RecordingSpeakerChange) => void;
5477
+ /** 详细纪要结构化内容(summaryTabKey 页签内建渲染) */
5478
+ summary?: RecordingSummary;
5479
+ /** 详细纪要页签 key,缺省 summary */
5480
+ summaryTabKey?: string;
5481
+ /** 「查看思维导图」点击事件 */
5482
+ onMindmapAction?: () => void;
5483
+ /** 相关材料条目点击事件,传出 id(无 id 传 index) */
5484
+ onMaterialClick?: (id: string | number) => void;
5485
+ /** 待办事项条目点击事件,传出 id(无 id 传 index);点击同时在组件内切换选中态 */
5486
+ onTodoClick?: (id: string | number) => void;
5487
+ /** 待办选中 id 列表(提供即受控,配合 onTodoSelectionChange 闭环;无 id 用行索引) */
5488
+ selectedTodoIds?: (string | number)[];
5489
+ /** 待办非受控初始选中 id 列表,缺省取 done=true 的条目 */
5490
+ defaultSelectedTodoIds?: (string | number)[];
5491
+ /** 待办选中变更事件,传出变更后的完整选中 id 列表 */
5492
+ onTodoSelectionChange?: (ids: (string | number)[]) => void;
5493
+ /** 纪要底部操作点击事件,传出 action key */
5494
+ onSummaryAction?: (key: string) => void;
5495
+ /** AI 解读结构化内容(insightTabKey 页签内建渲染) */
5496
+ insight?: RecordingInsight;
5497
+ /** AI 解读页签 key,缺省 ai */
5498
+ insightTabKey?: string;
5499
+ /** 视角横幅「修改」点击事件(点击同时打开内建解读身份弹层) */
5500
+ onPerspectiveEdit?: () => void;
5501
+ /** 解读身份弹层「应用身份」事件,传出文本值 */
5502
+ onPerspectiveApply?: (value: string) => void;
5503
+ /** AI 解读底部操作点击事件,传出 action key */
5504
+ onInsightAction?: (key: string) => void;
5505
+ /** 知识记忆结构化内容(memoryTabKey 页签内建渲染) */
5506
+ memory?: RecordingMemory;
5507
+ /** 知识记忆页签 key,缺省 knowledge */
5508
+ memoryTabKey?: string;
5509
+ /** 知识记忆底部操作点击事件,传出 action key */
5510
+ onMemoryAction?: (key: string) => void;
5511
+ /** 翻译结构化内容(translationTabKey 页签内建渲染) */
5512
+ translation?: RecordingTranslation;
5513
+ /** 翻译页签 key,缺省 translation */
5514
+ translationTabKey?: string;
5515
+ /** 语言选择器点击事件(点击同时打开内建语种弹层) */
5516
+ onLanguageClick?: () => void;
5517
+ /** 语种弹层「确定」事件,传出 { source, sourceLabel, target, targetLabel } */
5518
+ onLanguageChange?: (change: RecordingLanguageChange) => void;
5519
+ /** 翻译底部操作点击事件,传出 action key */
5520
+ onTranslationAction?: (key: string) => void;
5521
+ /** 底部播放条数据;提供才渲染 */
5522
+ player?: RecordingPlayer;
5523
+ /** 播放 / 暂停点击事件 */
5524
+ onPlay?: () => void;
5525
+ /** 快退点击事件 */
5526
+ onSkipBack?: () => void;
5527
+ /** 快进点击事件 */
5528
+ onSkipForward?: () => void;
5529
+ /** 通用:根节点 class(与内置样式合并) */
5530
+ className?: string;
5531
+ /** 通用:根节点内联样式 */
5532
+ style?: CSSProperties;
5533
+ }
5534
+
5535
+ /**
5536
+ * RecordingPage 录音工作区(business 目录):左列录音记录列表(浅色
5537
+ * 圆角块容器,无右边框——标题 / 过滤 pills / 处理状态横幅 / 新建录音钮 /
5538
+ * 分组条目——条目含波形
5539
+ * 图标、标题、状态标与日期时长,选中白底高亮;点「选择」进入多选模式:
5540
+ * 条目左侧圆形复选框、顶部「已选 N 条 + 全选」、底部红色「删除」(点击先弹
5541
+ * 二次确认弹层,确认才经 onDeleteRecordings 传出选中 id 列表),勾选
5542
+ * 经 onRecordingSelectionChange 传出 id
5543
+ * 列表),右列转写详情(标题 +
5544
+ * 元信息头部、编辑 / 分享操作(提供 shareOptions 时分享按钮下方弹出
5545
+ * 「选择分享内容」复选 Popover,确定经 onShareConfirm 传出选中 key 列表
5546
+ * 并打开「分享会议内容」对话框:链接 + 复制链接 / 邮件 / 系统分享,渠道
5547
+ * 点击经 onShareChannel 传出)、胶囊页签——transcriptTabKey 页签内建渲染
5548
+ * segments 说话人段落(头像 + 姓名 + 改名铅笔(打开内建修改发言人弹层,
5549
+ * 应用经 onSpeakerChange 传出 { index, previous, name })+ 时间戳 +
5550
+ * 正文,可附「已标记」徽标),summaryTabKey 页签内建渲染 summary 结构化纪要
5551
+ * (思维导图 / 会议概况 / 主要议题 / 评审结论表 / 后续说明 / 相关材料 /
5552
+ * 待办事项(点击切换选中态,变更经 onTodoSelectionChange 传出完整选中
5553
+ * id 列表)/ 底部操作条,各段提供才展示),insightTabKey 页签内建渲染
5554
+ * insight AI 解读(视角横幅 / 解读身份弹层(修改入口,应用经
5555
+ * onPerspectiveApply 传出文本)/ 基础信息 / 章节速览 / 观点分析 /
5556
+ * 操作条),
5557
+ * memoryTabKey 页签内建渲染 memory 知识记忆(分组卡片,组标题自动拼接
5558
+ * 条目计数;底部操作条),translationTabKey 页签内建渲染 translation
5559
+ * 翻译(语言选择器 + 内建语种弹层(原文语言识别 / 译文语言选择单选,
5560
+ * 确定经 onLanguageChange 传出 { source, sourceLabel, target,
5561
+ * targetLabel })+ 双语对照段落 + 操作条),其余页签可传 content 槽)、
5562
+ * 底部播放条(快退 / 播放 /
5563
+ * 快进 + 进度,提供 player 才渲染)。
5564
+ * 数据与行为全部经 props / events 进出;过滤、选中录音与页签缺省非受控,
5565
+ * 均可经受控 prop + change 事件闭环。常作为 ChatPage 的 content 槽使用。
5566
+ * 实现拆分:list.tsx(左列列表)/ detail.tsx(右列详情)/
5567
+ * summary.tsx(详细纪要)/ insight.tsx(AI 解读)/ memory.tsx(知识记忆)/
5568
+ * translation.tsx(翻译)/ language-dialog.tsx(翻译语种弹层)/
5569
+ * perspective-dialog.tsx(解读身份弹层)/ speaker-dialog.tsx(修改发言人
5570
+ * 弹层)/ share.tsx(分享 Popover + 分享对话框)/ types.ts(公开类型)。
5571
+ */
5572
+ declare function RecordingPage({ listTitle, selectLabel, selectDoneLabel, selectAllLabel, selectedCountText, deleteLabel, deleteConfirmTitle, deleteConfirmText, deleteCancelLabel, deleteConfirmLabel, selectedRecordingIds, defaultSelectedRecordingIds, onRecordingSelectionChange, onDeleteRecordings, onSelectClick, filters, activeFilterKey, defaultActiveFilterKey, onFilterChange, processingText, processingHint, onProcessingClick, newRecordingLabel, onNewRecording, groups, activeRecordingId, defaultActiveRecordingId, onSelectRecording, listWidth, emptyText, title, meta, editLabel, shareLabel, shareOptions, shareSelectedKeys, defaultShareSelectedKeys, sharePopoverTitle, shareCancelLabel, shareConfirmLabel, shareDialogTitle, shareLink, shareCopyLinkLabel, shareCopiedLabel, shareMailLabel, shareSystemLabel, onShareConfirm, onShareChannel, onEdit, onShare, tabs, activeTabKey, defaultActiveTabKey, onTabChange, transcriptTabKey, segments, speakers, speakerDialogTitle, speakerDialogHint, speakerInputPlaceholder, speakerApplyLabel, onSpeakerChange, summary, summaryTabKey, onMindmapAction, onMaterialClick, onTodoClick, selectedTodoIds, defaultSelectedTodoIds, onTodoSelectionChange, onSummaryAction, insight, insightTabKey, onPerspectiveEdit, onPerspectiveApply, onInsightAction, memory, memoryTabKey, onMemoryAction, translation, translationTabKey, onLanguageClick, onLanguageChange, onTranslationAction, player, onPlay, onSkipBack, onSkipForward, className, style, }: RecordingPageProps): React.JSX.Element;
5573
+
5025
5574
  type ConditionOpt = 'GREATER' | 'GREATER_EQUAL' | 'LESS_EQUAL' | 'LESS' | 'EQUAL' | 'IN' | 'NOT_IN' | 'UNEQUAL' | 'LIKE' | 'NULL' | 'HASVAL' | 'NOTNULL' | 'BETWEEN';
5026
5575
  interface Condition {
5027
5576
  key: number;
@@ -5121,6 +5670,8 @@ interface SearchableSelectProps {
5121
5670
  /** 过滤无匹配的空态文案,缺省「无匹配结果」 */
5122
5671
  emptyText?: string;
5123
5672
  disabled?: boolean;
5673
+ /** hover 清除(缺省开启,传 false 关闭;仅单选):有选中值时悬停触发器,上下箭头替换为 ×,点击清空(回传 "") */
5674
+ allowClear?: boolean;
5124
5675
  /** 控件尺寸(默认 middle,即现行 min-h-9 尺寸;与基础表单控件同一尺寸令牌) */
5125
5676
  size?: ControlSize;
5126
5677
  className?: string;
@@ -5134,7 +5685,58 @@ interface SearchableSelectProps {
5134
5685
  /** 自定义下拉列表(CommandList)样式,如覆盖 max-h 限制 */
5135
5686
  listClassName?: string;
5136
5687
  }
5137
- declare function SearchableSelect({ value, onChange, options, placeholder, searchPlaceholder, emptyText, disabled, size, className, id, showSearch, multiple, fullOptionText, listClassName, }: SearchableSelectProps): React.JSX.Element;
5688
+ declare function SearchableSelect({ value, onChange, options, placeholder, searchPlaceholder, emptyText, disabled, allowClear, size, className, id, showSearch, multiple, fullOptionText, listClassName, }: SearchableSelectProps): React.JSX.Element;
5689
+
5690
+ /** 页脚链接:有 href 渲染 Link(SPA 语义),无 href 渲染 button 并触发 onLinkClick */
5691
+ interface SiteFooterLink {
5692
+ /** 链接文案 */
5693
+ text: string;
5694
+ /** 链接地址;配置后渲染为 <a>(站内 SPA 跳转 / 站外新窗口由 Link 语义处理) */
5695
+ href?: string;
5696
+ }
5697
+ /** 链接列组:标题 + 组内链接列表 */
5698
+ interface SiteFooterLinkGroup {
5699
+ /** 组标题(如「产品」「资源」) */
5700
+ title: string;
5701
+ /** 组内链接 */
5702
+ links: SiteFooterLink[];
5703
+ }
5704
+ /** 品牌区配置(左列:logo / 名称 / 描述) */
5705
+ interface SiteFooterBrand {
5706
+ /** Logo 图片地址 */
5707
+ logo?: string;
5708
+ /** 品牌名称 */
5709
+ name?: string;
5710
+ /** 品牌描述 / 副文案 */
5711
+ description?: string;
5712
+ }
5713
+ interface SiteFooterProps {
5714
+ /** 品牌区配置;未配置不渲染品牌列 */
5715
+ brand?: SiteFooterBrand;
5716
+ /** 链接列组;未配置不渲染链接区 */
5717
+ groups?: SiteFooterLinkGroup[];
5718
+ /** 底部栏版权文案(如「© 2026 Pactor」) */
5719
+ copyright?: string;
5720
+ /** 底部栏辅助链接(备案号 / 隐私协议 / 服务条款等) */
5721
+ bottomLinks?: SiteFooterLink[];
5722
+ /** 链接点击(仅无 href 的链接),回传 { key, text }(key 缺省取 text,对齐 EntityCardAction 约定) */
5723
+ onLinkClick?: (event: {
5724
+ key: string;
5725
+ text: string;
5726
+ }) => void;
5727
+ /** 通用:根节点 class(与内置样式合并) */
5728
+ className?: string;
5729
+ /** 通用:根节点内联样式 */
5730
+ style?: CSSProperties;
5731
+ }
5732
+ /**
5733
+ * SiteFooter 站点页脚(business 级组合组件):
5734
+ * 上层左侧品牌区(logo / 名称 / 描述)+ 右侧链接列组(标题 + 链接),
5735
+ * 底部版权栏(copyright 左、辅助链接右,border 分隔);
5736
+ * 与 Layout 子区域 Footer 区分(后者为页面骨架槽位,本组件为独立站点页脚资产)。
5737
+ * 布局响应式:窄屏上下堆叠(主区 flex-col、底部栏居中堆叠),宽屏左右分栏。
5738
+ */
5739
+ declare function SiteFooter({ brand, groups, copyright, bottomLinks, onLinkClick, className, style, }: SiteFooterProps): React.JSX.Element | null;
5138
5740
 
5139
5741
  /**
5140
5742
  * 内置组件表:DSL 类型名 → 组件适配器。
@@ -5303,6 +5905,8 @@ declare const builtinComponents: {
5303
5905
  readonly Login: typeof Login;
5304
5906
  readonly EntityCard: typeof EntityCard;
5305
5907
  readonly CardList: typeof CardList;
5908
+ readonly RecordingPage: typeof RecordingPage;
5909
+ readonly SiteFooter: typeof SiteFooter;
5306
5910
  readonly SearchableSelect: typeof SearchableSelect;
5307
5911
  readonly FieldCondition: typeof FieldCondition;
5308
5912
  readonly ExpressionEditor: typeof ExpressionEditor;
@@ -5355,4 +5959,4 @@ interface FormContextValue {
5355
5959
  /** 在字段组件内探测 Form 上下文;不在 Form 内时返回 null */
5356
5960
  declare function useFormContext(): FormContextValue | null;
5357
5961
 
5358
- export { Accordion, type AccordionItemData, type AccordionProps, Affix, type AffixProps, AgentStatus, type AgentStatusProps, type AgentStatusType, Alert, AlertDialog, type AlertDialogProps, type AlertProps, type AlertVariant, Anchor, type AnchorItemData, type AnchorProps, AreaChart, type AreaChartProps, ArtifactPanel, type ArtifactPanelProps, type ArtifactTreeNode, type ArtifactViewer, type ArtifactViewers, AspectRatio, type AspectRatioProps, Attachment, type AttachmentItemData, type AttachmentProps, Audio, type AudioProps, Avatar, type AvatarProps, BackTop, type BackTopProps, Badge, type BadgeProps, type BadgeVariant, BarChart, type BarChartProps, Breadcrumb, type BreadcrumbItemData, type BreadcrumbProps, Bubble, BubbleChart, type BubbleChartProps, type BubbleProps, type BubbleVariant, Button, ButtonGroup, type ButtonGroupProps, type ButtonProps, type ButtonSize, type ButtonVariant, CONTROL_SIZE_AREA, CONTROL_SIZE_BOX, CONTROL_SIZE_BOX_GROW, CONTROL_SIZE_SELECT_ATTR, CONTROL_SIZE_TRIGGER_TEXT, Calendar, type CalendarProps, Card, CardList, type CardListItem, type CardListProps, type CardProps, Carousel, type CarouselImage, type CarouselItemData, type CarouselProps, Cascader, type CascaderOption, type CascaderProps, type ChartSelectPayload, ChatInput, type ChatInputProps, ChatMessage, type ChatMessageActionItem, type ChatMessageAgent, type ChatMessagePart, type ChatMessageProps, type ChatMessageStatus, ChatPage, type ChatPageArtifact, type ChatPageBrand, type ChatPageMenuItem, type ChatPageProps, Checkbox, type CheckboxProps, ChipFilter, type ChipFilterItem, type ChipFilterProps, ChipNode, type ChipNodeProps, Citation, type CitationItem, type CitationProps, CodeBlock, type CodeBlockProps, Col, type ColBreakpoint, type ColProps, type ColResponsiveValue, Collapsible, type CollapsibleProps, ColorPicker, type ColorPickerProps, ColumnChart, type ColumnChartProps, Combobox, type ComboboxOption, type ComboboxProps, Command, type CommandGroupData, type CommandItemData, type CommandProps, ComposedChart, type ComposedChartProps, type ComposedSeriesItem, Composer, type ComposerContextItem, type ComposerContextSource, type ComposerModelOption, type ComposerProps, type Condition, type ConditionFieldOption, type ConditionOpt, Container, type ContainerProps, type ContainerSize, Content, type ContentProps, ContextMenu, type ContextMenuItemData, type ContextMenuProps, type ControlSize, type ConversationItemData, ConversationList, type ConversationListProps, type ConversationRailItem, DataTable, type DataTableColumn, type DataTablePagination, type DataTableProps, type DataTableSort, type DataTableSortOrder, DatePicker, type DatePickerPreset, type DatePickerPresetKey, type DatePickerProps, type DatePickerRangeProps, type DatePickerSingleProps, type DateRangeValue, Descriptions, type DescriptionsItemData, type DescriptionsProps, Dialog, type DialogProps, DiffViewer, type DiffViewerProps, type DocumentPageData, DocumentPreview, type DocumentPreviewProps, DonutChart, type DonutChartProps, Drawer, type DrawerPlacement, type DrawerProps, DropdownMenu, type DropdownMenuItemData, type DropdownMenuProps, EChartBase, type EChartBaseProps, Empty, type EmptyProps, EntityCard, type EntityCardAction, type EntityCardProps, type EntityCardTag, ExpressionEditor, type ExpressionEditorProps, type ExpressionMappingItem, Field, FieldCondition, type FieldConditionGroup, type FieldConditionItem, type FieldConditionProps, type FieldConditionValue, type FieldProps, type FieldRule, FilePreview, type FilePreviewKind, type FilePreviewProps, Flex, type FlexProps, Footer, type FooterProps, For, type ForProps, Form, type FormContextValue, type FormProps, FunnelChart, type FunnelChartProps, Gallery, type GalleryItemData, type GalleryProps, GaugeChart, type GaugeChartProps, Grid, type GridProps, Header, type HeaderBrandPosition, type HeaderDropdown, type HeaderDropdownItem, type HeaderLocale, type HeaderMenuItem, type HeaderProps, type HeaderTheme, type HeaderUser, type HeaderUserItem, Heatmap, type HeatmapProps, HoverCard, type HoverCardProps, ICONS, Icon, type IconProps, type IconSize, Image, ImageLightbox, type ImageLightboxProps, type ImageProps, ImageViewer, type ImageViewerProps, Input, InputGroup, type InputGroupProps, InputOTP, type InputOTPProps, type InputProps, Item, type ItemProps, JSONViewer, type JSONViewerProps, Kbd, type KbdProps, Label, type LabelProps, Layout, type LayoutProps, LineChart, type LineChartProps, Link, type LinkProps, List, type ListItemData, type ListProps, LoadingOverlay, type LoadingOverlayProps, Login, type LoginBrandInfo, type LoginLink, type LoginProps, type LoginVariant, MapChart, type MapChartProps, type MentionOption, Mentions, type MentionsProps, Menu, type MenuItem, type MenuProps, Menubar, type MenubarLeafItem, type MenubarMenuData, type MenubarProps, Message, MessageList, type MessageListItem, type MessageListProps, type MessageProps, MetricCard, type MetricCardProps, NavigationMenu, type NavigationMenuChildItem, type NavigationMenuItemData, type NavigationMenuProps, Notification, type NotificationProps, NumberInput, type NumberInputProps, Page, type PageProps, Pagination, type PaginationProps, PieChart, type PieChartProps, Popconfirm, type PopconfirmProps, Popover, type PopoverProps, Progress, type ProgressProps, Prompt, type PromptProps, QRCode, type QRCodeProps, RadarChart, type RadarChartProps, RadioGroup, type RadioGroupOption, type RadioGroupProps, RailTooltip, Rate, type RateProps, Resizable, type ResizablePanelData, type ResizableProps, Result, type ResultProps, type ResultStatus, RichText, type RichTextProps, Row, type RowAlign, type RowJustify, type RowProps, RuleConfig, type RuleConfigProps, type RuleConfigValue, RuleExpression, type RuleExpressionOption, type RuleExpressionProps, type RuleExpressionValue, SankeyChart, type SankeyChartProps, ScatterChart, type ScatterChartProps, ScriptEditor, type ScriptEditorProps, type ScriptFunctionDef, type ScriptFunctionParameter, type ScriptVariableDef, ScrollArea, type ScrollAreaProps, SearchableSelect, type SearchableSelectProps, Segmented, type SegmentedOption, type SegmentedProps, Select, type SelectOption, type SelectProps, Sender, type SenderProps, Separator, type SeparatorProps, Sheet, type SheetProps, type SheetSide, Sidebar, type SidebarBrand, type SidebarNavItem, type SidebarProps, Sider, type SiderProps, Skeleton, type SkeletonProps, type SkeletonShape, Slider, type SliderProps, Sonner, type SonnerProps, Space, type SpaceProps, Spinner, type SpinnerProps, type SpinnerSize, Statistic, type StatisticProps, Status, type StatusProps, type StatusType, type StepItemData, type StepStatus, Steps, StepsPanel, type StepsPanelItemData, type StepsPanelProps, type StepsProps, StreamingText, type StreamingTextProps, Suggestion, type SuggestionItem, type SuggestionProps, Switch, type SwitchProps, type TabItem, Table, type TableColumn, type TablePagination, type TablePaginationInfo, type TableProps, Tabs, type TabsProps, Tag, type TagColor, type TagProps, Text, type TextProps, type TextType, Textarea, type TextareaProps, Thinking, type ThinkingProps, type ThinkingStatus, TimePicker, type TimePickerProps, Timeline, type TimelineItemData, type TimelineProps, Toggle, ToggleGroup, type ToggleGroupOption, type ToggleGroupProps, type ToggleProps, ToolCall, type ToolCallProps, type ToolCallStatus, Tooltip, type TooltipProps, Tour, type TourProps, type TourStep, Transfer, type TransferOption, type TransferProps, Tree, TreeChart, type TreeChartProps, type TreeNodeData, type TreeProps, TreeSelect, type TreeSelectOption, type TreeSelectProps, Typography, type TypographyProps, type TypographyVariant, Upload, type UploadFileMeta, type UploadProps, Video, type VideoProps, Watermark, type WatermarkProps, Welcome, type WelcomePromptItem, type WelcomeProps, buildArtifactTree, builtinComponents, createComponentRegistry, diffLines, inferKind, normalizeIconName, registerBuiltinComponents, useFormContext, useSidebarDrawer };
5962
+ export { Accordion, type AccordionItemData, type AccordionProps, Affix, type AffixProps, AgentStatus, type AgentStatusProps, type AgentStatusType, Alert, AlertDialog, type AlertDialogProps, type AlertProps, type AlertVariant, Anchor, type AnchorItemData, type AnchorProps, AreaChart, type AreaChartProps, ArtifactPanel, type ArtifactPanelProps, type ArtifactTreeNode, type ArtifactViewer, type ArtifactViewers, AspectRatio, type AspectRatioProps, Attachment, type AttachmentItemData, type AttachmentProps, Audio, type AudioProps, Avatar, type AvatarProps, BackTop, type BackTopProps, Badge, type BadgeProps, type BadgeVariant, BarChart, type BarChartProps, Breadcrumb, type BreadcrumbItemData, type BreadcrumbProps, Bubble, BubbleChart, type BubbleChartProps, type BubbleProps, type BubbleVariant, Button, ButtonGroup, type ButtonGroupProps, type ButtonProps, type ButtonSize, type ButtonVariant, CONTROL_SIZE_AREA, CONTROL_SIZE_BOX, CONTROL_SIZE_BOX_GROW, CONTROL_SIZE_SELECT_ATTR, CONTROL_SIZE_TRIGGER_TEXT, Calendar, type CalendarProps, Card, CardList, type CardListItem, type CardListProps, type CardProps, Carousel, type CarouselImage, type CarouselItemData, type CarouselProps, Cascader, type CascaderOption, type CascaderProps, type ChartSelectPayload, ChatInput, type ChatInputProps, ChatMessage, type ChatMessageActionItem, type ChatMessageAgent, type ChatMessagePart, type ChatMessageProps, type ChatMessageStatus, ChatPage, type ChatPageArtifact, type ChatPageBrand, type ChatPageMenuItem, type ChatPageProps, Checkbox, type CheckboxProps, ChipFilter, type ChipFilterItem, type ChipFilterProps, ChipNode, type ChipNodeProps, Citation, type CitationItem, type CitationProps, CodeBlock, type CodeBlockProps, Col, type ColBreakpoint, type ColProps, type ColResponsiveValue, Collapsible, type CollapsibleProps, ColorPicker, type ColorPickerProps, ColumnChart, type ColumnChartProps, Combobox, type ComboboxOption, type ComboboxProps, Command, type CommandGroupData, type CommandItemData, type CommandProps, ComposedChart, type ComposedChartProps, type ComposedSeriesItem, Composer, type ComposerContextItem, type ComposerContextSource, type ComposerModelOption, type ComposerProps, type Condition, type ConditionFieldOption, type ConditionOpt, Container, type ContainerProps, type ContainerSize, Content, type ContentProps, ContextMenu, type ContextMenuItemData, type ContextMenuProps, type ControlSize, type ConversationItemData, ConversationList, type ConversationListProps, type ConversationRailItem, DataTable, type DataTableColumn, type DataTablePagination, type DataTableProps, type DataTableSort, type DataTableSortOrder, DatePicker, type DatePickerPreset, type DatePickerPresetKey, type DatePickerProps, type DatePickerRangeProps, type DatePickerSingleProps, type DateRangeValue, Descriptions, type DescriptionsItemData, type DescriptionsProps, Dialog, type DialogProps, DiffViewer, type DiffViewerProps, type DocumentPageData, DocumentPreview, type DocumentPreviewProps, DonutChart, type DonutChartProps, Drawer, type DrawerPlacement, type DrawerProps, DropdownMenu, type DropdownMenuItemData, type DropdownMenuProps, EChartBase, type EChartBaseProps, Empty, type EmptyProps, EntityCard, type EntityCardAction, type EntityCardProps, type EntityCardTag, ExpressionEditor, type ExpressionEditorProps, type ExpressionMappingItem, Field, FieldCondition, type FieldConditionGroup, type FieldConditionItem, type FieldConditionProps, type FieldConditionValue, type FieldProps, type FieldRule, FilePreview, type FilePreviewKind, type FilePreviewProps, Flex, type FlexProps, Footer, type FooterProps, For, type ForProps, Form, type FormContextValue, type FormProps, FunnelChart, type FunnelChartProps, Gallery, type GalleryItemData, type GalleryProps, GaugeChart, type GaugeChartProps, Grid, type GridProps, Header, type HeaderBrandPosition, type HeaderDropdown, type HeaderDropdownItem, type HeaderLocale, type HeaderMenuItem, type HeaderProps, type HeaderTheme, type HeaderUser, type HeaderUserItem, Heatmap, type HeatmapProps, HoverCard, type HoverCardProps, ICONS, Icon, type IconProps, type IconSize, Image, ImageLightbox, type ImageLightboxProps, type ImageProps, ImageViewer, type ImageViewerProps, Input, InputGroup, type InputGroupProps, InputOTP, type InputOTPProps, type InputProps, Item, type ItemProps, JSONViewer, type JSONViewerProps, Kbd, type KbdProps, Label, type LabelProps, Layout, type LayoutProps, LineChart, type LineChartProps, Link, type LinkProps, List, type ListItemData, type ListProps, LoadingOverlay, type LoadingOverlayProps, Login, type LoginBrandInfo, type LoginLink, type LoginProps, type LoginVariant, MapChart, type MapChartProps, type MentionOption, Mentions, type MentionsProps, Menu, type MenuItem, type MenuProps, Menubar, type MenubarLeafItem, type MenubarMenuData, type MenubarProps, Message, MessageList, type MessageListItem, type MessageListProps, type MessageProps, MetricCard, type MetricCardProps, NavigationMenu, type NavigationMenuChildItem, type NavigationMenuItemData, type NavigationMenuProps, Notification, type NotificationProps, NumberInput, type NumberInputProps, Page, type PageProps, Pagination, type PaginationProps, PieChart, type PieChartProps, Popconfirm, type PopconfirmProps, Popover, type PopoverProps, Progress, type ProgressProps, Prompt, type PromptProps, QRCode, type QRCodeProps, RadarChart, type RadarChartProps, RadioGroup, type RadioGroupOption, type RadioGroupProps, RailTooltip, Rate, type RateProps, type RecordingFilterItem, type RecordingGroup, type RecordingInsight, type RecordingInsightChapter, type RecordingInsightViewpoint, type RecordingItem, type RecordingLanguageChange, type RecordingLanguageOption, type RecordingMemory, type RecordingMemoryGroup, type RecordingMemoryItem, RecordingPage, type RecordingPageProps, type RecordingPlayer, type RecordingShareOption, type RecordingSpeaker, type RecordingSpeakerChange, type RecordingStatusType, type RecordingSummary, type RecordingSummaryAction, type RecordingSummaryConclusion, type RecordingSummaryMaterial, type RecordingSummaryMindmap, type RecordingSummaryTodo, type RecordingSummaryTopic, type RecordingTabItem, type RecordingTranscriptSegment, type RecordingTranslation, type RecordingTranslationSegment, Resizable, type ResizablePanelData, type ResizableProps, Result, type ResultProps, type ResultStatus, RichText, type RichTextProps, Row, type RowAlign, type RowJustify, type RowProps, RuleConfig, type RuleConfigProps, type RuleConfigValue, RuleExpression, type RuleExpressionOption, type RuleExpressionProps, type RuleExpressionValue, SankeyChart, type SankeyChartProps, ScatterChart, type ScatterChartProps, ScriptEditor, type ScriptEditorProps, type ScriptFunctionDef, type ScriptFunctionParameter, type ScriptVariableDef, ScrollArea, type ScrollAreaProps, SearchableSelect, type SearchableSelectProps, Segmented, type SegmentedOption, type SegmentedProps, Select, type SelectOption, type SelectProps, Sender, type SenderProps, Separator, type SeparatorProps, Sheet, type SheetProps, type SheetSide, Sidebar, type SidebarBrand, type SidebarNavItem, type SidebarProps, Sider, type SiderProps, SiteFooter, type SiteFooterBrand, type SiteFooterLink, type SiteFooterLinkGroup, type SiteFooterProps, Skeleton, type SkeletonProps, type SkeletonShape, Slider, type SliderProps, Sonner, type SonnerProps, Space, type SpaceProps, Spinner, type SpinnerProps, type SpinnerSize, Statistic, type StatisticProps, Status, type StatusProps, type StatusType, type StepItemData, type StepStatus, Steps, StepsPanel, type StepsPanelItemData, type StepsPanelProps, type StepsProps, StreamingText, type StreamingTextProps, Suggestion, type SuggestionItem, type SuggestionProps, Switch, type SwitchProps, type TabItem, Table, type TableColumn, type TablePagination, type TablePaginationInfo, type TableProps, Tabs, type TabsProps, Tag, type TagColor, type TagProps, Text, type TextProps, type TextType, Textarea, type TextareaProps, Thinking, type ThinkingProps, type ThinkingStatus, TimePicker, type TimePickerProps, Timeline, type TimelineItemData, type TimelineProps, Toggle, ToggleGroup, type ToggleGroupOption, type ToggleGroupProps, type ToggleProps, ToolCall, type ToolCallProps, type ToolCallStatus, Tooltip, type TooltipProps, Tour, type TourProps, type TourStep, Transfer, type TransferOption, type TransferProps, Tree, TreeChart, type TreeChartProps, type TreeNodeData, type TreeProps, TreeSelect, type TreeSelectOption, type TreeSelectProps, Typography, type TypographyProps, type TypographyVariant, Upload, type UploadFileMeta, type UploadProps, Video, type VideoProps, Watermark, type WatermarkProps, Welcome, type WelcomePromptItem, type WelcomeProps, buildArtifactTree, builtinComponents, createComponentRegistry, diffLines, inferKind, normalizeIconName, registerBuiltinComponents, useFormContext, useSidebarDrawer };