@pactor-app/ui 1.43.0 → 1.46.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.
- package/dist/{chunk-QIOYKSN4.js → chunk-FU4P7CAM.js} +10 -0
- package/dist/{chunk-H6E53JL2.js → chunk-JV2V4HCI.js} +1 -1
- package/dist/{chunk-HKQMSEQB.js → chunk-QB2RZXDD.js} +23 -8237
- package/dist/{chunk-T3TGKYAB.js → chunk-XA7J5SGA.js} +16 -121
- package/dist/components/index.cjs +44 -8332
- package/dist/components/index.d.cts +188 -2582
- package/dist/components/index.d.ts +188 -2582
- package/dist/components/index.js +8 -100
- package/dist/index.cjs +381 -8669
- package/dist/index.d.cts +1 -2
- package/dist/index.d.ts +1 -2
- package/dist/index.js +9 -101
- package/dist/layout/index.cjs +5 -0
- package/dist/layout/index.js +2 -2
- package/dist/ui/index.cjs +1138 -560
- package/dist/ui/index.d.cts +219 -16
- package/dist/ui/index.d.ts +219 -16
- package/dist/ui/index.js +699 -22
- package/package.json +10 -10
- package/src/theme-bridge.css +54 -0
- package/styles.css +84 -635
|
@@ -1,13 +1,12 @@
|
|
|
1
|
-
import { ComponentRegistry } from '@pactor-app/runtime';
|
|
1
|
+
import { useRenderer, ComponentRegistry } from '@pactor-app/runtime';
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import { CSSProperties, ReactNode, ReactElement } from 'react';
|
|
4
|
-
import { DslNode, DslChildren
|
|
4
|
+
import { DslNode, DslChildren } from '@pactor-app/core';
|
|
5
5
|
import { n as CardRounded, g as ToastVariant, t as toggleVariants, m as typographyVariants } from '../typography-BYdZkkP5.js';
|
|
6
6
|
import { LucideIcon } from 'lucide-react';
|
|
7
7
|
import { MarkdownDslComponent } from '@pactor-app/markdown';
|
|
8
8
|
export { MarkdownDslComponent as Markdown, MarkdownDslComponentProps as MarkdownProps } from '@pactor-app/markdown';
|
|
9
9
|
import { VariantProps } from 'class-variance-authority';
|
|
10
|
-
import { EChartsCoreOption } from 'echarts/core';
|
|
11
10
|
import '@base-ui/react';
|
|
12
11
|
import 'class-variance-authority/types';
|
|
13
12
|
import '@base-ui/react/toggle';
|
|
@@ -286,7 +285,7 @@ declare function ButtonGroup({ className, style, children }: ButtonGroupProps):
|
|
|
286
285
|
|
|
287
286
|
/**
|
|
288
287
|
* 表单控件统一尺寸令牌:small / middle / large,默认 middle(= 现行 h-9 尺寸)。
|
|
289
|
-
* 所有盒式表单控件(Input / Select / DatePicker /
|
|
288
|
+
* 所有盒式表单控件(Input / Select / DatePicker / 业务组件
|
|
290
289
|
* 内嵌控件等)共用同一映射,保证同一 size 下高度、内边距、字号一致。
|
|
291
290
|
*
|
|
292
291
|
* 使用方式:把控件尺寸类合并到控件 className 末位(cn/tailwind-merge 会覆盖
|
|
@@ -702,8 +701,13 @@ interface CommandProps {
|
|
|
702
701
|
*/
|
|
703
702
|
declare function Command({ groups, placeholder, emptyText, onSelect, className, style, }: CommandProps): React.JSX.Element;
|
|
704
703
|
|
|
704
|
+
/**
|
|
705
|
+
* Renderer 上下文可选探测:无 DslRenderer 环境(纯 React 宿主直连)
|
|
706
|
+
* 返回 null——useRenderer 的 throw 发生在 useContext 注册之后,
|
|
707
|
+
* hooks 数量恒定;无 renderer 时 DslNode 槽位不渲染(React 元素槽不受影响)
|
|
708
|
+
*/
|
|
709
|
+
declare function useOptionalRenderer(): ReturnType<typeof useRenderer> | null;
|
|
705
710
|
interface ChatInputProps {
|
|
706
|
-
/** 受控值(提供即受控:变更只经 onChange 传出,显示值取自 props) */
|
|
707
711
|
value?: string;
|
|
708
712
|
placeholder?: string;
|
|
709
713
|
disabled?: boolean;
|
|
@@ -714,6 +718,10 @@ interface ChatInputProps {
|
|
|
714
718
|
* hideSend 且左右槽均未提供时工具栏行整体零渲染
|
|
715
719
|
*/
|
|
716
720
|
hideSend?: boolean;
|
|
721
|
+
/** 流式生成中:发送钮切换为停止钮(不禁用),点击经 onStop 传出 */
|
|
722
|
+
streaming?: boolean;
|
|
723
|
+
/** 停止事件(streaming 时点击停止钮) */
|
|
724
|
+
onStop?: () => void;
|
|
717
725
|
/** 工具栏左端槽(DslNode 子树经 Renderer 渲染;React 宿主可直接传元素) */
|
|
718
726
|
toolbarStart?: DslNode | ReactNode;
|
|
719
727
|
/** 工具栏右端槽(发送钮之前) */
|
|
@@ -747,12 +755,13 @@ interface ChatInputProps {
|
|
|
747
755
|
*
|
|
748
756
|
* 发送语义:点击发送钮或 Enter(Shift+Enter 换行;IME 合成中 Enter
|
|
749
757
|
* 不发送;trim 后空白禁发且发送钮禁用);非受控发送后自动清空,
|
|
750
|
-
* 受控模式由调用方在 onSubmit 闭环里清空。
|
|
758
|
+
* 受控模式由调用方在 onSubmit 闭环里清空。streaming 时发送钮切换为
|
|
759
|
+
* 停止钮(不禁用、不阻断输入),点击经 onStop 传出。
|
|
751
760
|
*
|
|
752
761
|
* 定位为通用结构构件:transport / 附件 / 提及等对话领域能力请使用
|
|
753
762
|
* @pactor-app/chat 的 Composer。
|
|
754
763
|
*/
|
|
755
|
-
declare function ChatInput({ value, placeholder, disabled, rows, hideSend, toolbarStart, toolbarEnd, header, footer, field, onChange, onSubmit, className, style, }: ChatInputProps): React.JSX.Element;
|
|
764
|
+
declare function ChatInput({ value, placeholder, disabled, rows, hideSend, streaming, onStop, toolbarStart, toolbarEnd, header, footer, field, onChange, onSubmit, className, style, }: ChatInputProps): React.JSX.Element;
|
|
756
765
|
|
|
757
766
|
/** DSL Container 宽度档位(对齐 Tailwind 断点) */
|
|
758
767
|
type ContainerSize = 'sm' | 'md' | 'lg' | 'xl' | 'full';
|
|
@@ -3372,2591 +3381,188 @@ interface WatermarkProps {
|
|
|
3372
3381
|
*/
|
|
3373
3382
|
declare function Watermark({ content, rotate, gap, opacity, children, className, style, }: WatermarkProps): React.JSX.Element;
|
|
3374
3383
|
|
|
3375
|
-
/** 智能体状态 */
|
|
3376
|
-
type AgentStatusType = 'running' | 'waiting' | 'done' | 'error';
|
|
3377
|
-
interface AgentStatusProps {
|
|
3378
|
-
/** 状态,默认 running */
|
|
3379
|
-
status?: AgentStatusType;
|
|
3380
|
-
/** 状态文本 */
|
|
3381
|
-
text?: string;
|
|
3382
|
-
/** 耗时(秒,展示为「已用时 Xs」) */
|
|
3383
|
-
elapsed?: number;
|
|
3384
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
3385
|
-
className?: string;
|
|
3386
|
-
/** 通用:根节点内联样式 */
|
|
3387
|
-
style?: CSSProperties;
|
|
3388
|
-
}
|
|
3389
|
-
/**
|
|
3390
|
-
* AgentStatus 适配器(shadcn kit):智能体运行 / 等待状态行——
|
|
3391
|
-
* 状态图标(running 旋转)+ 文本 + 可选耗时。
|
|
3392
|
-
* 与通用分类 Status 的差异:面向智能体执行过程(含耗时语义)。
|
|
3393
|
-
*/
|
|
3394
|
-
declare function AgentStatus({ status, text, elapsed, className, style }: AgentStatusProps): React.JSX.Element;
|
|
3395
|
-
|
|
3396
|
-
/**
|
|
3397
|
-
* ArtifactPanel 产物模型与纯函数助手(自 @pactor-app/chat 的 artifact 模型
|
|
3398
|
-
* 移植面板所需子集):零 React,可纯 Node 测试。
|
|
3399
|
-
*/
|
|
3400
|
-
/** 产物:dsl kind 的 content 为 DslNode 普通对象,其余 kind 为字符串 */
|
|
3401
|
-
interface ChatPageArtifact {
|
|
3402
|
-
id: string;
|
|
3403
|
-
kind: 'markdown' | 'code' | 'text' | 'dsl';
|
|
3404
|
-
title: string;
|
|
3405
|
-
content: string | DslNode;
|
|
3406
|
-
/** code kind 的语言标记(角标 / CodeBlock 高亮) */
|
|
3407
|
-
language?: string;
|
|
3408
|
-
/**
|
|
3409
|
-
* 文件类型(扩展名,大小写 / 带点均可,如 'png' / '.MD'):
|
|
3410
|
-
* 图片类扩展名走内建图片预览(content 为 URL / data URL,
|
|
3411
|
-
* svg 另支持原始标记);自定义查看器(artifactViewers)按此键匹配。
|
|
3412
|
-
* 缺省从 title 的扩展名推导
|
|
3413
|
-
*/
|
|
3414
|
-
fileType?: string;
|
|
3415
|
-
meta?: Record<string, unknown>;
|
|
3416
|
-
}
|
|
3417
|
-
/** 产物目录树节点(buildArtifactTree 产出) */
|
|
3418
|
-
interface ArtifactTreeNode {
|
|
3419
|
-
/** 段名(目录名或产物标题) */
|
|
3420
|
-
name: string;
|
|
3421
|
-
/** 完整路径(目录为 id 前缀,文件为产物 id) */
|
|
3422
|
-
path: string;
|
|
3423
|
-
artifact?: ChatPageArtifact;
|
|
3424
|
-
children: ArtifactTreeNode[];
|
|
3425
|
-
}
|
|
3426
|
-
/**
|
|
3427
|
-
* 产物目录树(纯函数):按 id 的 '/' 分段建目录层级——
|
|
3428
|
-
* id 形如 `reports/q3/月报` 时产出 reports → q3 两级目录;
|
|
3429
|
-
* 无 '/' 分段的产物平铺在根层。目录先于文件、各自按名称排序。
|
|
3430
|
-
*/
|
|
3431
|
-
declare function buildArtifactTree(artifacts: ChatPageArtifact[]): ArtifactTreeNode[];
|
|
3432
|
-
|
|
3433
|
-
/**
|
|
3434
|
-
* 自定义产物查看器:键为扩展名(小写不带点,如 'png' / 'md')或 kind
|
|
3435
|
-
* ('markdown' / 'code' / 'text' / 'dsl');扩展名键优先于 kind 键,
|
|
3436
|
-
* 均优先于内建渲染器。查看器抛错不经守卫——宿主代码自负。
|
|
3437
|
-
*/
|
|
3438
|
-
type ArtifactViewer = (artifact: ChatPageArtifact) => ReactNode;
|
|
3439
|
-
type ArtifactViewers = Record<string, ArtifactViewer>;
|
|
3440
|
-
interface ArtifactPanelProps {
|
|
3441
|
-
/** 当前产物;空时内容区展示 emptyText 空态 */
|
|
3442
|
-
artifact?: ChatPageArtifact | null;
|
|
3443
|
-
/** 会话内全部产物:提供后 header 左端展示目录列表切换钮,标题处展示产物切换下拉 */
|
|
3444
|
-
artifacts?: ChatPageArtifact[];
|
|
3445
|
-
/** 当前激活产物 id(下拉高亮;缺省取 artifact.id) */
|
|
3446
|
-
activeArtifactId?: string;
|
|
3447
|
-
/** 下拉 / 目录列表点击切换事件,传出产物 id(受控切换,面板不自改外部状态) */
|
|
3448
|
-
onSelectArtifact?: (id: string) => void;
|
|
3449
|
-
/** 标题兜底(无当前产物时展示,如「产物」) */
|
|
3450
|
-
title?: string;
|
|
3451
|
-
/** 无产物空态文案 */
|
|
3452
|
-
emptyText?: string;
|
|
3453
|
-
/** 关闭按钮事件 */
|
|
3454
|
-
onClose?: () => void;
|
|
3455
|
-
/** 下载事件;缺省内部走浏览器下载(downloadArtifact) */
|
|
3456
|
-
onDownload?: (artifact: ChatPageArtifact) => void;
|
|
3457
|
-
/** dsl 产物活预览的 Safe Registry;缺省时 dsl 内容渲染降级块 */
|
|
3458
|
-
safeRegistry?: Registry<unknown>;
|
|
3459
|
-
/** 注入 dsl 预览作用域 user */
|
|
3460
|
-
user?: Record<string, unknown>;
|
|
3461
|
-
/** 自定义产物查看器(扩展名 / kind → 预览),优先于内建渲染器 */
|
|
3462
|
-
artifactViewers?: ArtifactViewers;
|
|
3463
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
3464
|
-
className?: string;
|
|
3465
|
-
/** 通用:根节点内联样式 */
|
|
3466
|
-
style?: CSSProperties;
|
|
3467
|
-
}
|
|
3468
3384
|
/**
|
|
3469
|
-
*
|
|
3470
|
-
*
|
|
3471
|
-
*
|
|
3472
|
-
*
|
|
3473
|
-
* 内容按 artifact.kind 分发内建渲染器:markdown 安全渲染;code 经
|
|
3474
|
-
* CodeBlock;text 预格式文本;dsl 经白名单守卫 + 活预览,被拦截 /
|
|
3475
|
-
* 渲染失败一律降级为受控占位块,MUST NOT 抛错。图片类产物(扩展名
|
|
3476
|
-
* 识别)走内建 <img> 预览。数据与行为全部经 props / events 进出,
|
|
3477
|
-
* 面板不持有业务状态(列表 / 内容视图与目录折叠为内部展示状态)。
|
|
3385
|
+
* 内置组件表:DSL 类型名 → 组件适配器。
|
|
3386
|
+
* 类型名集合即 spec: builtin-components 的内置组件清单;
|
|
3387
|
+
* 容器组件(Tabs / Table)经 `useRenderer().renderChildren` 渲染 DSL 子树。
|
|
3478
3388
|
*/
|
|
3479
|
-
declare
|
|
3389
|
+
declare const builtinComponents: {
|
|
3390
|
+
readonly Page: typeof Page;
|
|
3391
|
+
readonly Grid: typeof Grid;
|
|
3392
|
+
readonly Row: typeof Row;
|
|
3393
|
+
readonly Col: typeof Col;
|
|
3394
|
+
readonly For: {
|
|
3395
|
+
readonly component: typeof For;
|
|
3396
|
+
readonly withScope: true;
|
|
3397
|
+
};
|
|
3398
|
+
readonly Flex: typeof Flex;
|
|
3399
|
+
readonly Card: typeof Card;
|
|
3400
|
+
readonly Button: typeof Button;
|
|
3401
|
+
readonly Alert: typeof Alert;
|
|
3402
|
+
readonly Statistic: typeof Statistic;
|
|
3403
|
+
readonly Tabs: typeof Tabs;
|
|
3404
|
+
readonly Table: typeof Table;
|
|
3405
|
+
readonly Form: typeof Form;
|
|
3406
|
+
readonly Input: typeof Input;
|
|
3407
|
+
readonly NumberInput: typeof NumberInput;
|
|
3408
|
+
readonly Select: typeof Select;
|
|
3409
|
+
readonly Layout: {
|
|
3410
|
+
readonly component: typeof Layout;
|
|
3411
|
+
readonly withScope: true;
|
|
3412
|
+
};
|
|
3413
|
+
readonly Header: typeof Header;
|
|
3414
|
+
readonly Sider: typeof Sider;
|
|
3415
|
+
readonly Content: typeof Content;
|
|
3416
|
+
readonly Footer: typeof Footer;
|
|
3417
|
+
readonly Menu: typeof Menu;
|
|
3418
|
+
readonly Link: typeof Link;
|
|
3419
|
+
readonly Text: typeof Text;
|
|
3420
|
+
readonly Badge: typeof Badge;
|
|
3421
|
+
readonly Avatar: typeof Avatar;
|
|
3422
|
+
readonly Skeleton: typeof Skeleton;
|
|
3423
|
+
readonly Separator: typeof Separator;
|
|
3424
|
+
readonly Kbd: typeof Kbd;
|
|
3425
|
+
readonly Spinner: typeof Spinner;
|
|
3426
|
+
readonly Empty: typeof Empty;
|
|
3427
|
+
readonly AspectRatio: typeof AspectRatio;
|
|
3428
|
+
readonly Progress: typeof Progress;
|
|
3429
|
+
readonly Textarea: typeof Textarea;
|
|
3430
|
+
readonly Checkbox: typeof Checkbox;
|
|
3431
|
+
readonly ChipFilter: typeof ChipFilter;
|
|
3432
|
+
readonly ChipNode: typeof ChipNode;
|
|
3433
|
+
readonly RadioGroup: typeof RadioGroup;
|
|
3434
|
+
readonly Switch: typeof Switch;
|
|
3435
|
+
readonly Slider: typeof Slider;
|
|
3436
|
+
readonly Label: typeof Label;
|
|
3437
|
+
readonly Field: typeof Field;
|
|
3438
|
+
readonly ChatInput: typeof ChatInput;
|
|
3439
|
+
readonly Breadcrumb: typeof Breadcrumb;
|
|
3440
|
+
readonly Pagination: typeof Pagination;
|
|
3441
|
+
readonly Menubar: typeof Menubar;
|
|
3442
|
+
readonly NavigationMenu: typeof NavigationMenu;
|
|
3443
|
+
readonly DropdownMenu: typeof DropdownMenu;
|
|
3444
|
+
readonly ContextMenu: typeof ContextMenu;
|
|
3445
|
+
readonly Dialog: typeof Dialog;
|
|
3446
|
+
readonly AlertDialog: typeof AlertDialog;
|
|
3447
|
+
readonly Drawer: typeof Drawer;
|
|
3448
|
+
readonly Sheet: typeof Sheet;
|
|
3449
|
+
readonly Popover: typeof Popover;
|
|
3450
|
+
readonly Sonner: typeof Sonner;
|
|
3451
|
+
readonly Accordion: typeof Accordion;
|
|
3452
|
+
readonly Collapsible: typeof Collapsible;
|
|
3453
|
+
readonly Tooltip: typeof Tooltip;
|
|
3454
|
+
readonly HoverCard: typeof HoverCard;
|
|
3455
|
+
readonly Calendar: typeof Calendar;
|
|
3456
|
+
readonly DatePicker: typeof DatePicker;
|
|
3457
|
+
readonly InputOTP: typeof InputOTP;
|
|
3458
|
+
readonly Combobox: typeof Combobox;
|
|
3459
|
+
readonly Carousel: typeof Carousel;
|
|
3460
|
+
readonly Command: typeof Command;
|
|
3461
|
+
readonly Resizable: typeof Resizable;
|
|
3462
|
+
readonly ScrollArea: typeof ScrollArea;
|
|
3463
|
+
readonly Toggle: typeof Toggle;
|
|
3464
|
+
readonly ToggleGroup: typeof ToggleGroup;
|
|
3465
|
+
readonly ButtonGroup: typeof ButtonGroup;
|
|
3466
|
+
readonly InputGroup: typeof InputGroup;
|
|
3467
|
+
readonly Item: typeof Item;
|
|
3468
|
+
readonly Typography: typeof Typography;
|
|
3469
|
+
readonly Sidebar: typeof Sidebar;
|
|
3470
|
+
readonly DataTable: typeof DataTable;
|
|
3471
|
+
readonly Icon: typeof Icon;
|
|
3472
|
+
readonly Rate: typeof Rate;
|
|
3473
|
+
readonly TimePicker: typeof TimePicker;
|
|
3474
|
+
readonly ColorPicker: typeof ColorPicker;
|
|
3475
|
+
readonly Upload: typeof Upload;
|
|
3476
|
+
readonly TreeSelect: typeof TreeSelect;
|
|
3477
|
+
readonly Cascader: typeof Cascader;
|
|
3478
|
+
readonly Transfer: typeof Transfer;
|
|
3479
|
+
readonly Mentions: typeof Mentions;
|
|
3480
|
+
readonly List: typeof List;
|
|
3481
|
+
readonly Tree: typeof Tree;
|
|
3482
|
+
readonly Descriptions: typeof Descriptions;
|
|
3483
|
+
readonly Timeline: typeof Timeline;
|
|
3484
|
+
readonly Image: typeof Image;
|
|
3485
|
+
readonly QRCode: typeof QRCode;
|
|
3486
|
+
readonly Segmented: typeof Segmented;
|
|
3487
|
+
readonly Message: typeof Message;
|
|
3488
|
+
readonly Notification: typeof Notification;
|
|
3489
|
+
readonly Popconfirm: typeof Popconfirm;
|
|
3490
|
+
readonly Result: typeof Result;
|
|
3491
|
+
readonly LoadingOverlay: typeof LoadingOverlay;
|
|
3492
|
+
readonly Watermark: typeof Watermark;
|
|
3493
|
+
readonly Tour: typeof Tour;
|
|
3494
|
+
readonly Tag: typeof Tag;
|
|
3495
|
+
readonly Status: typeof Status;
|
|
3496
|
+
readonly Space: typeof Space;
|
|
3497
|
+
readonly Container: typeof Container;
|
|
3498
|
+
readonly Steps: typeof Steps;
|
|
3499
|
+
readonly Anchor: typeof Anchor;
|
|
3500
|
+
readonly BackTop: typeof BackTop;
|
|
3501
|
+
readonly Affix: typeof Affix;
|
|
3502
|
+
readonly ImageViewer: typeof ImageViewer;
|
|
3503
|
+
readonly Gallery: typeof Gallery;
|
|
3504
|
+
readonly Video: typeof Video;
|
|
3505
|
+
readonly Audio: typeof Audio;
|
|
3506
|
+
readonly FilePreview: typeof FilePreview;
|
|
3507
|
+
readonly DocumentPreview: typeof DocumentPreview;
|
|
3508
|
+
readonly RichText: typeof RichText;
|
|
3509
|
+
readonly Markdown: typeof MarkdownDslComponent;
|
|
3510
|
+
readonly CodeBlock: typeof CodeBlock;
|
|
3511
|
+
readonly DiffViewer: typeof DiffViewer;
|
|
3512
|
+
readonly JSONViewer: typeof JSONViewer;
|
|
3513
|
+
};
|
|
3514
|
+
/** 把全部 V1 内置组件按 DSL 类型名注册到给定 ComponentRegistry */
|
|
3515
|
+
declare function registerBuiltinComponents(registry: ComponentRegistry): void;
|
|
3516
|
+
/** 创建并返回注册了全部 V1 内置组件的新 ComponentRegistry */
|
|
3517
|
+
declare function createComponentRegistry(): ComponentRegistry;
|
|
3480
3518
|
|
|
3481
|
-
/** 会话附件项 */
|
|
3482
|
-
interface AttachmentItemData {
|
|
3483
|
-
/** 唯一标识(onRemove / onRetry 传出;缺省传出数组下标) */
|
|
3484
|
-
id?: string;
|
|
3485
|
-
name: string;
|
|
3486
|
-
/** 大小(字节) */
|
|
3487
|
-
fileSize?: number;
|
|
3488
|
-
/** MIME 或扩展名(类别图标推断) */
|
|
3489
|
-
fileType?: string;
|
|
3490
|
-
/** 状态,默认 done */
|
|
3491
|
-
status?: 'uploading' | 'done' | 'error';
|
|
3492
|
-
/** 上传进度(0-100,status=uploading 时展示) */
|
|
3493
|
-
progress?: number;
|
|
3494
|
-
}
|
|
3495
|
-
interface AttachmentProps {
|
|
3496
|
-
/** 附件列表(可含表达式解析后的数组) */
|
|
3497
|
-
items?: AttachmentItemData[];
|
|
3498
|
-
/** 移除事件,传出 id(无 id 传下标);提供时展示移除按钮 */
|
|
3499
|
-
onRemove?: (id: string | number) => void;
|
|
3500
|
-
/** 重试事件(status=error 时展示重试按钮),传出 id / 下标 */
|
|
3501
|
-
onRetry?: (id: string | number) => void;
|
|
3502
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
3503
|
-
className?: string;
|
|
3504
|
-
/** 通用:根节点内联样式 */
|
|
3505
|
-
style?: CSSProperties;
|
|
3506
|
-
}
|
|
3507
3519
|
/**
|
|
3508
|
-
*
|
|
3509
|
-
*
|
|
3510
|
-
*
|
|
3511
|
-
* 上传与存储由调用方负责,本组件只做呈现与事件上报。
|
|
3520
|
+
* icon rail 提示(Sidebar 折叠态:Sidebar items 与 Menu 共用):
|
|
3521
|
+
* 触发元素本身经 render 合并为 TooltipTrigger(aria/ref/事件不丢失),
|
|
3522
|
+
* 提示浮层显示在图标右侧;仅折叠态使用,展开态无原生 title 干扰。
|
|
3512
3523
|
*/
|
|
3513
|
-
declare function
|
|
3524
|
+
declare function RailTooltip({ label, children, }: {
|
|
3525
|
+
label: string;
|
|
3526
|
+
children: ReactElement;
|
|
3527
|
+
}): ReactNode;
|
|
3514
3528
|
|
|
3515
|
-
/** DSL Bubble 变体(对齐 vendored bubble 七态) */
|
|
3516
|
-
type BubbleVariant = 'default' | 'secondary' | 'muted' | 'tinted' | 'outline' | 'ghost' | 'destructive';
|
|
3517
|
-
interface BubbleProps {
|
|
3518
|
-
/** 对齐:start 居左(助手)、end 居右(用户),默认 start */
|
|
3519
|
-
align?: 'start' | 'end';
|
|
3520
|
-
/** 变体,默认 muted */
|
|
3521
|
-
variant?: BubbleVariant;
|
|
3522
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
3523
|
-
className?: string;
|
|
3524
|
-
/** 通用:根节点内联样式 */
|
|
3525
|
-
style?: CSSProperties;
|
|
3526
|
-
children?: ReactNode;
|
|
3527
|
-
}
|
|
3528
3529
|
/**
|
|
3529
|
-
*
|
|
3530
|
-
*
|
|
3530
|
+
* Form 容器上下文(shadcn kit):Form 组件维护受控 values / 校验错误
|
|
3531
|
+
* 并经 React Context 下发;Input / Select 据此判断自身是否在表单内。
|
|
3532
|
+
* 不持有 UI 库表单实例,values 由框架侧受控管理(去原语化,见 design D3)。
|
|
3531
3533
|
*/
|
|
3532
|
-
|
|
3533
|
-
|
|
3534
|
-
|
|
3535
|
-
|
|
3536
|
-
|
|
3537
|
-
|
|
3538
|
-
|
|
3539
|
-
|
|
3540
|
-
|
|
3541
|
-
|
|
3542
|
-
|
|
3543
|
-
|
|
3544
|
-
|
|
3545
|
-
|
|
3546
|
-
|
|
3547
|
-
|
|
3548
|
-
|
|
3549
|
-
|
|
3550
|
-
|
|
3551
|
-
|
|
3552
|
-
|
|
3553
|
-
content: string;
|
|
3554
|
-
} | {
|
|
3555
|
-
type: 'status';
|
|
3556
|
-
text: string;
|
|
3557
|
-
}
|
|
3558
|
-
/** 产物计数段:展示「已生成 n 个产物」,提供 onOpenArtifacts 时可点击(打开产物栏) */
|
|
3559
|
-
| {
|
|
3560
|
-
type: 'artifacts';
|
|
3561
|
-
count: number;
|
|
3562
|
-
} | {
|
|
3563
|
-
type: 'error';
|
|
3564
|
-
message: string;
|
|
3565
|
-
};
|
|
3566
|
-
/** 消息状态(对齐 chat 消息状态机) */
|
|
3567
|
-
type ChatMessageStatus = 'pending' | 'streaming' | 'completed' | 'error' | 'cancelled';
|
|
3568
|
-
/** 助手身份 */
|
|
3569
|
-
interface ChatMessageAgent {
|
|
3570
|
-
name: string;
|
|
3571
|
-
/** 头像图标名(Icon 白名单) */
|
|
3572
|
-
icon?: string;
|
|
3573
|
-
}
|
|
3574
|
-
/** 消息操作项(onAction 传出 name) */
|
|
3575
|
-
interface ChatMessageActionItem {
|
|
3576
|
-
name: string;
|
|
3577
|
-
label?: string;
|
|
3578
|
-
icon?: string;
|
|
3579
|
-
}
|
|
3580
|
-
interface ChatMessageProps {
|
|
3581
|
-
/** 角色,默认 assistant */
|
|
3582
|
-
role?: 'user' | 'assistant' | 'system';
|
|
3583
|
-
/** 有序正文段 */
|
|
3584
|
-
parts?: ChatMessagePart[];
|
|
3585
|
-
/** 状态,默认 completed;streaming 在末尾渲染光标 */
|
|
3586
|
-
status?: ChatMessageStatus;
|
|
3587
|
-
/** 助手身份(assistant 消息顶部展示) */
|
|
3588
|
-
agent?: ChatMessageAgent;
|
|
3589
|
-
/** 时间文本 */
|
|
3590
|
-
time?: string;
|
|
3591
|
-
/** 是否展示发送方行,默认 false(消息列表不展示 Sender) */
|
|
3592
|
-
showSender?: boolean;
|
|
3593
|
-
/** 操作列表(completed / error 时展示;有图标时仅图标 + Tooltip 呈现) */
|
|
3594
|
-
actions?: ChatMessageActionItem[];
|
|
3595
|
-
/** 操作事件,传出 action name(Renderer 绑定 events.onAction) */
|
|
3596
|
-
onAction?: (name: string) => void;
|
|
3597
|
-
/** artifacts 段(「已生成 n 个产物」)点击事件;提供时该段才可点击 */
|
|
3598
|
-
onOpenArtifacts?: () => void;
|
|
3599
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
3600
|
-
className?: string;
|
|
3601
|
-
/** 通用:根节点内联样式 */
|
|
3602
|
-
style?: CSSProperties;
|
|
3534
|
+
interface FormContextValue {
|
|
3535
|
+
/** 标记后代字段处于 Form 容器内 */
|
|
3536
|
+
inForm: true;
|
|
3537
|
+
/** 表单布局(表单项排布 class 由字段侧按此生成) */
|
|
3538
|
+
layout: 'horizontal' | 'vertical' | 'inline';
|
|
3539
|
+
/** 当前表单 values(受控) */
|
|
3540
|
+
values: Record<string, unknown>;
|
|
3541
|
+
/** 校验错误(字段名 → 错误文案) */
|
|
3542
|
+
errors: Record<string, string>;
|
|
3543
|
+
/** 更新字段值(受控写入并清除该字段错误) */
|
|
3544
|
+
setValue(name: string, value: unknown): void;
|
|
3545
|
+
/** 批量写入字段值(form.setValues 联动桥):不触发 onValuesChange 与校验 */
|
|
3546
|
+
setValues(values: Record<string, unknown>): void;
|
|
3547
|
+
/**
|
|
3548
|
+
* 注册字段校验规则(提交时统一校验);
|
|
3549
|
+
* `initialValue` 为字段级初始值(value prop),仅在该字段首次注册时合并
|
|
3550
|
+
* 进 values(字段级优先于 Form initialValues;已有合并结果不覆盖)
|
|
3551
|
+
*/
|
|
3552
|
+
registerField(name: string, rules?: FieldRule[], initialValue?: unknown): void;
|
|
3553
|
+
/** 注销字段 */
|
|
3554
|
+
unregisterField(name: string): void;
|
|
3603
3555
|
}
|
|
3604
|
-
/**
|
|
3605
|
-
|
|
3606
|
-
* user 右侧气泡;assistant 左侧通栏(Sender + 有序 parts);system
|
|
3607
|
-
* 居中弱提示(无气泡、12px 浅色文字,参考 @pactor-app/chat
|
|
3608
|
-
* MessageBubble 的 system 约定)。parts 渲染(text / markdown /
|
|
3609
|
-
* thinking / tool-call / tool-result / status / error)+ streaming 光标 +
|
|
3610
|
-
* 操作行(onAction 传出 name)。props 驱动,不感知会话 store;
|
|
3611
|
-
* dsl / artifact 段与完整会话能力由 @pactor-app/chat 产品层承接。
|
|
3612
|
-
*/
|
|
3613
|
-
declare function ChatMessage({ role, parts, status, agent, time, showSender, actions, onAction, onOpenArtifacts, className, style, }: ChatMessageProps): React.JSX.Element;
|
|
3556
|
+
/** 在字段组件内探测 Form 上下文;不在 Form 内时返回 null */
|
|
3557
|
+
declare function useFormContext(): FormContextValue | null;
|
|
3614
3558
|
|
|
3615
|
-
|
|
3616
|
-
|
|
3617
|
-
value: string;
|
|
3618
|
-
label: string;
|
|
3619
|
-
}
|
|
3620
|
-
/** 上下文条目(提及候选与行内提及块共用) */
|
|
3621
|
-
interface ComposerContextItem {
|
|
3622
|
-
id: string;
|
|
3559
|
+
interface ClearHoverButtonProps {
|
|
3560
|
+
/** aria-label(缺省「清除」语义,调用方传 i18n 文案或既有测试标签) */
|
|
3623
3561
|
label: string;
|
|
3624
|
-
|
|
3625
|
-
|
|
3626
|
-
|
|
3627
|
-
icon?: string;
|
|
3628
|
-
/** 原始数据(随选中结果透传给调用方) */
|
|
3629
|
-
data?: unknown;
|
|
3562
|
+
onClear: () => void;
|
|
3563
|
+
/** 额外 class(如 Input 的绝对定位 right-2) */
|
|
3564
|
+
className?: string;
|
|
3630
3565
|
}
|
|
3631
|
-
|
|
3632
|
-
* 上下文数据源:trigger 为声明的触发字符(如 '@' / '+')——
|
|
3633
|
-
* 输入该字符(词边界)时在光标位置弹出候选菜单(行内提及);
|
|
3634
|
-
* trigger 为 '+' 时工具栏左端同时渲染 + 按钮弹层(选中在光标处插入行内块)
|
|
3635
|
-
*/
|
|
3636
|
-
interface ComposerContextSource {
|
|
3637
|
-
trigger: string;
|
|
3638
|
-
label: string;
|
|
3639
|
-
items: ComposerContextItem[];
|
|
3640
|
-
/** 菜单项与提及块的缺省图标(Icon 白名单) */
|
|
3641
|
-
icon?: string;
|
|
3642
|
-
}
|
|
3643
|
-
interface ComposerProps {
|
|
3644
|
-
/** 受控值(提供即受控) */
|
|
3645
|
-
value?: string;
|
|
3646
|
-
/** 占位提示 */
|
|
3647
|
-
placeholder?: string;
|
|
3648
|
-
/** 禁用输入与发送 */
|
|
3649
|
-
disabled?: boolean;
|
|
3650
|
-
/** 发送中(禁用发送钮,由调用方在完成后复位) */
|
|
3651
|
-
loading?: boolean;
|
|
3652
|
-
/** 最小行数,缺省 3 */
|
|
3653
|
-
rows?: number;
|
|
3654
|
-
/** 附件列表(展示在输入区上方) */
|
|
3655
|
-
attachments?: AttachmentItemData[];
|
|
3656
|
-
/** 附件移除事件,传出 id / 下标 */
|
|
3657
|
-
onRemoveAttachment?: (id: string | number) => void;
|
|
3658
|
-
/** 附件重试事件,传出 id / 下标 */
|
|
3659
|
-
onRetryAttachment?: (id: string | number) => void;
|
|
3660
|
-
/**
|
|
3661
|
-
* 附件选择入口(提供时工具栏左端渲染附件钮,并启用粘贴 / 拖拽文件);
|
|
3662
|
-
* 上传与存储由调用方负责
|
|
3663
|
-
*/
|
|
3664
|
-
onAttachFiles?: (files: File[]) => void;
|
|
3665
|
-
/** 输入事件,传出 string 值(行内提及块序列化为 trigger+label) */
|
|
3666
|
-
onChange?: (value: string) => void;
|
|
3667
|
-
/** 发送事件(点击发送钮或 Enter),传出当前文本 */
|
|
3668
|
-
onSubmit?: (value: string) => void;
|
|
3669
|
-
/** 模型选项(非空时工具栏右端渲染模型选择 chip,位于发送钮之前) */
|
|
3670
|
-
models?: ComposerModelOption[];
|
|
3671
|
-
/** 当前选中模型 value(未命中时展示 models[0]) */
|
|
3672
|
-
model?: string;
|
|
3673
|
-
/** 弹层中选中模型时触发,传出 value */
|
|
3674
|
-
onModelChange?: (value: string) => void;
|
|
3675
|
-
/**
|
|
3676
|
-
* 上下文数据源(行内提及):配置后输入区切换为 contenteditable——
|
|
3677
|
-
* 输入触发符在光标位置弹出候选菜单(输入过滤 / ↑↓ 选择 / 回车选中),
|
|
3678
|
-
* 选中把触发符与已输入文字替换为行内提及块(图标 + 文字、浅色背景、
|
|
3679
|
-
* 圆角,退格整体删除)
|
|
3680
|
-
*/
|
|
3681
|
-
contexts?: ComposerContextSource[];
|
|
3682
|
-
/** 行内提及块列表(受控,与输入区保持同步) */
|
|
3683
|
-
contextItems?: ComposerContextItem[];
|
|
3684
|
-
/** 提及块变更事件(插入 / 退格删除),传出输入区当前块列表;发送后的清空由调用方在 onSubmit 闭环里处理 */
|
|
3685
|
-
onContextItemsChange?: (items: ComposerContextItem[]) => void;
|
|
3686
|
-
/** footer 槽(渲染在输入框内工具栏下方,以分隔线相隔;DslNode 或 React 元素) */
|
|
3687
|
-
footer?: DslNode | ReactNode;
|
|
3688
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
3689
|
-
className?: string;
|
|
3690
|
-
/** 通用:根节点内联样式 */
|
|
3691
|
-
style?: CSSProperties;
|
|
3692
|
-
}
|
|
3693
|
-
/**
|
|
3694
|
-
* Composer 适配器(shadcn kit):会话输入组合件——
|
|
3695
|
-
* 附件区(Attachment)+ 输入区(ChatInput)。
|
|
3696
|
-
*
|
|
3697
|
-
* - 附件:受控 attachments 展示;提供 onAttachFiles 时工具栏左端渲染
|
|
3698
|
-
* 附件钮,并启用粘贴 / 拖拽文件入口(上传由调用方负责)
|
|
3699
|
-
* - 模型选择:models 非空时工具栏右端渲染模型 chip(发送钮之前),
|
|
3700
|
-
* 弹层选中经 onModelChange 传出
|
|
3701
|
-
* - 行内提及(MentionInput):contexts 非空时输入区切换为
|
|
3702
|
-
* contenteditable——输入触发符('@' 等)在光标位置弹出候选菜单
|
|
3703
|
-
* (输入过滤 / ↑↓ / 回车选中 / 点击选中),选中把触发符与已输入
|
|
3704
|
-
* 文字替换为行内提及块(图标 + 文字、浅色背景、圆角),退格整体
|
|
3705
|
-
* 删除;'+' 触发源额外在工具栏左端渲染 + 按钮弹层(选中在光标处
|
|
3706
|
-
* 插入行内块);块列表受控(contextItems + onContextItemsChange)
|
|
3707
|
-
* - footer 槽渲染在输入框内工具栏下方(分隔线相隔)
|
|
3708
|
-
*
|
|
3709
|
-
* 上传 / transport 由调用方负责,本组件只做呈现与事件上报。
|
|
3710
|
-
*/
|
|
3711
|
-
declare function Composer({ value, placeholder, disabled, loading, rows, attachments, onRemoveAttachment, onRetryAttachment, onAttachFiles, onChange, onSubmit, models, model, onModelChange, contexts, contextItems, onContextItemsChange, footer, className, style, }: ComposerProps): React.JSX.Element;
|
|
3712
|
-
|
|
3713
|
-
/** 会话条目 */
|
|
3714
|
-
interface ConversationItemData {
|
|
3715
|
-
id: string;
|
|
3716
|
-
title: string;
|
|
3717
|
-
/** 补充说明(最近一条消息摘要等) */
|
|
3718
|
-
description?: string;
|
|
3719
|
-
/** 时间文本(已格式化) */
|
|
3720
|
-
time?: string;
|
|
3721
|
-
}
|
|
3722
|
-
interface ConversationListProps {
|
|
3723
|
-
/** 会话列表(可含表达式解析后的数组) */
|
|
3724
|
-
items?: ConversationItemData[];
|
|
3725
|
-
/** 受控:当前会话 id;提供时切换仅经 onSelect 上报 */
|
|
3726
|
-
activeId?: string;
|
|
3727
|
-
/** 是否展示搜索框(按 title / description 过滤),默认 false */
|
|
3728
|
-
searchable?: boolean;
|
|
3729
|
-
/** 选择事件,传出会话 id(Renderer 绑定 events.onSelect) */
|
|
3730
|
-
onSelect?: (id: string) => void;
|
|
3731
|
-
/** 删除事件,传出会话 id;提供时行悬浮展示删除按钮 */
|
|
3732
|
-
onDelete?: (id: string) => void;
|
|
3733
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
3734
|
-
className?: string;
|
|
3735
|
-
/** 通用:根节点内联样式 */
|
|
3736
|
-
style?: CSSProperties;
|
|
3737
|
-
}
|
|
3738
|
-
/**
|
|
3739
|
-
* ConversationList 适配器(shadcn kit):历史会话列表——
|
|
3740
|
-
* 可选搜索过滤、激活态(受控 / 非受控)、悬浮删除;
|
|
3741
|
-
* 会话的存储与加载由调用方负责。
|
|
3742
|
-
*/
|
|
3743
|
-
declare function ConversationList({ items, activeId, searchable, onSelect, onDelete, className, style }: ConversationListProps): React.JSX.Element;
|
|
3744
|
-
|
|
3745
|
-
/** 消息条目(ChatMessage props + 可选 id,onAction 随事件传出) */
|
|
3746
|
-
interface MessageListItem extends ChatMessageProps {
|
|
3747
|
-
id?: string;
|
|
3748
|
-
}
|
|
3749
|
-
interface MessageListProps {
|
|
3750
|
-
/** 消息列表(可含表达式解析后的数组) */
|
|
3751
|
-
messages?: MessageListItem[];
|
|
3752
|
-
/** 消息变化后自动滚动到底部,默认 true */
|
|
3753
|
-
autoScroll?: boolean;
|
|
3754
|
-
/** 消息操作事件,传出 { id, action }(Renderer 绑定 events.onAction) */
|
|
3755
|
-
onAction?: (event: {
|
|
3756
|
-
id?: string;
|
|
3757
|
-
action: string;
|
|
3758
|
-
}) => void;
|
|
3759
|
-
/** artifacts 段(「已生成 n 个产物」)点击事件,传出 { id } */
|
|
3760
|
-
onOpenArtifacts?: (event: {
|
|
3761
|
-
id?: string;
|
|
3762
|
-
}) => void;
|
|
3763
|
-
/** 通用:根节点 class(与内置样式合并;高度由外层或 style 约束) */
|
|
3764
|
-
className?: string;
|
|
3765
|
-
/** 通用:根节点内联样式 */
|
|
3766
|
-
style?: CSSProperties;
|
|
3767
|
-
}
|
|
3768
|
-
/**
|
|
3769
|
-
* MessageList 适配器(shadcn kit):连续消息流容器——
|
|
3770
|
-
* 逐条渲染 ChatMessage,消息变化自动滚到底部(autoScroll 可关);
|
|
3771
|
-
* 高度由外层容器约束(组件本身只提供滚动语义)。
|
|
3772
|
-
*/
|
|
3773
|
-
declare function MessageList({ messages, autoScroll, onAction, onOpenArtifacts, className, style }: MessageListProps): React.JSX.Element;
|
|
3774
|
-
|
|
3775
|
-
/** 起始任务项(value 缺省取 title) */
|
|
3776
|
-
interface WelcomePromptItem {
|
|
3777
|
-
title: string;
|
|
3778
|
-
description?: string;
|
|
3779
|
-
icon?: string;
|
|
3780
|
-
value?: string;
|
|
3781
|
-
}
|
|
3782
|
-
interface WelcomeProps {
|
|
3783
|
-
/** 主标题,默认「有什么可以帮你?」 */
|
|
3784
|
-
title?: string;
|
|
3785
|
-
/** 副标题(能力说明) */
|
|
3786
|
-
description?: string;
|
|
3787
|
-
/** 主图标名(Icon 白名单),缺省 chat */
|
|
3788
|
-
icon?: string;
|
|
3789
|
-
/** 起始任务卡片列表 */
|
|
3790
|
-
prompts?: WelcomePromptItem[];
|
|
3791
|
-
/** 起始任务选择事件,传出 value(Renderer 绑定 events.onSelect) */
|
|
3792
|
-
onSelect?: (value: string) => void;
|
|
3793
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
3794
|
-
className?: string;
|
|
3795
|
-
/** 通用:根节点内联样式 */
|
|
3796
|
-
style?: CSSProperties;
|
|
3797
|
-
}
|
|
3798
|
-
/**
|
|
3799
|
-
* Welcome 适配器(shadcn kit):会话空状态——居中的图标 + 主副标题 +
|
|
3800
|
-
* 起始任务卡片栅格(复用 Prompt);点击卡片经 onSelect 传出 value。
|
|
3801
|
-
*/
|
|
3802
|
-
declare function Welcome({ title, description, icon, prompts, onSelect, className, style, }: WelcomeProps): React.JSX.Element;
|
|
3803
|
-
|
|
3804
|
-
/** 图标栏 / 展开菜单共用的导航项 */
|
|
3805
|
-
interface ChatPageMenuItem {
|
|
3806
|
-
key: string;
|
|
3807
|
-
label: string;
|
|
3808
|
-
/** 图标名(Icon 白名单) */
|
|
3809
|
-
icon?: string;
|
|
3810
|
-
}
|
|
3811
|
-
/** 对话图标栏项:点击 toggle 展示当前对话的附加内容(产物 / 执行步骤等) */
|
|
3812
|
-
interface ConversationRailItem {
|
|
3813
|
-
key: string;
|
|
3814
|
-
/** 提示文案(hover tooltip) */
|
|
3815
|
-
label?: string;
|
|
3816
|
-
/** 图标名(Icon 白名单) */
|
|
3817
|
-
icon?: string;
|
|
3818
|
-
/** 呈现形态:popover(图标栏旁悬浮弹框,缺省)/ panel(产物栏式右侧固定宽栏) */
|
|
3819
|
-
display?: 'panel' | 'popover';
|
|
3820
|
-
/** 附加内容(React 元素或 DslNode;缺省时点击仅触发状态事件,不渲染内容层) */
|
|
3821
|
-
content?: DslNode | ReactNode;
|
|
3822
|
-
/** 隐藏该项(如按当前会话有无对应内容动态显隐);隐藏时激活态一并失效 */
|
|
3823
|
-
hidden?: boolean;
|
|
3824
|
-
}
|
|
3825
|
-
/** 品牌区(展开菜单区标题 / 版本) */
|
|
3826
|
-
interface ChatPageBrand {
|
|
3827
|
-
title: string;
|
|
3828
|
-
version?: string;
|
|
3829
|
-
}
|
|
3830
|
-
interface ChatPageProps {
|
|
3831
|
-
brand?: ChatPageBrand;
|
|
3832
|
-
/** 主导航项:展开菜单区为图标 + 文字 */
|
|
3833
|
-
menuItems?: ChatPageMenuItem[];
|
|
3834
|
-
/** 受控选中导航 key(可绑 `${state.x}`) */
|
|
3835
|
-
activeMenuKey?: string;
|
|
3836
|
-
/**
|
|
3837
|
-
* 图标栏导航项(仅图标,hover 右侧 Tooltip 展示 label),与展开菜单
|
|
3838
|
-
* 独立定义;railItems 与 railFooterItems 均为空时整个图标栏隐藏
|
|
3839
|
-
*/
|
|
3840
|
-
railItems?: ChatPageMenuItem[];
|
|
3841
|
-
/** 图标栏底部附加项(如设置 / 个人中心) */
|
|
3842
|
-
railFooterItems?: ChatPageMenuItem[];
|
|
3843
|
-
/** 展开菜单区右上角操作(如「发现应用」);提供才渲染 */
|
|
3844
|
-
menuAction?: {
|
|
3845
|
-
label: string;
|
|
3846
|
-
icon?: string;
|
|
3847
|
-
};
|
|
3848
|
-
/** 导航选中事件(图标栏 / 展开菜单 / 底部分组共用),传出 item key */
|
|
3849
|
-
onMenuSelect?: (key: string) => void;
|
|
3850
|
-
/** menuAction 点击事件 */
|
|
3851
|
-
onMenuAction?: () => void;
|
|
3852
|
-
/** 会话区标题(如「任务」,自动拼接数量);点击标题折叠 / 展开列表 */
|
|
3853
|
-
conversationSectionTitle?: string;
|
|
3854
|
-
/** 会话区受控折叠(提供即受控,配合 onConversationSectionToggle 闭环) */
|
|
3855
|
-
conversationSectionCollapsed?: boolean;
|
|
3856
|
-
/** 会话区非受控初始折叠,缺省 false */
|
|
3857
|
-
defaultConversationSectionCollapsed?: boolean;
|
|
3858
|
-
/** 会话区折叠变化事件,传出 boolean */
|
|
3859
|
-
onConversationSectionToggle?: (collapsed: boolean) => void;
|
|
3860
|
-
conversations?: ConversationItemData[];
|
|
3861
|
-
activeConversationId?: string;
|
|
3862
|
-
onSelectConversation?: (id: string) => void;
|
|
3863
|
-
onDeleteConversation?: (id: string) => void;
|
|
3864
|
-
/** 「查看更多」入口文案;提供才渲染(随会话区折叠隐藏) */
|
|
3865
|
-
moreLabel?: string;
|
|
3866
|
-
onMore?: () => void;
|
|
3867
|
-
/** 菜单区底部附加分组标题(如「空间 (14)」);提供才渲染,点击折叠 / 展开 */
|
|
3868
|
-
footerSectionTitle?: string;
|
|
3869
|
-
/** 底部分组列表项(图标 + 文字,点击经 onMenuSelect 传出) */
|
|
3870
|
-
footerItems?: ChatPageMenuItem[];
|
|
3871
|
-
/** 底部分组受控折叠(提供即受控,配合 onFooterSectionToggle 闭环) */
|
|
3872
|
-
footerSectionCollapsed?: boolean;
|
|
3873
|
-
/** 底部分组非受控初始折叠,缺省 false */
|
|
3874
|
-
defaultFooterSectionCollapsed?: boolean;
|
|
3875
|
-
/** 底部分组折叠变化事件,传出 boolean */
|
|
3876
|
-
onFooterSectionToggle?: (collapsed: boolean) => void;
|
|
3877
|
-
/** 对话区头部标题(通常为当前会话标题) */
|
|
3878
|
-
conversationTitle?: string;
|
|
3879
|
-
/**
|
|
3880
|
-
* 对话区头部右侧自定义操作(图标 + 提示);提供才渲染(未配置时
|
|
3881
|
-
* header 不渲染任何按钮),点击经 onConversationHeaderAction 传出
|
|
3882
|
-
*/
|
|
3883
|
-
conversationHeaderAction?: {
|
|
3884
|
-
icon?: string;
|
|
3885
|
-
label?: string;
|
|
3886
|
-
tooltip?: string;
|
|
3887
|
-
};
|
|
3888
|
-
/** 对话区头部右侧自定义操作点击事件 */
|
|
3889
|
-
onConversationHeaderAction?: () => void;
|
|
3890
|
-
/**
|
|
3891
|
-
* 对话图标栏附加项(header 下方、对话区右缘纵向排列,产物内置项
|
|
3892
|
-
* 之后按序展示);点击 toggle 展示对应附加内容
|
|
3893
|
-
*/
|
|
3894
|
-
conversationRailItems?: ConversationRailItem[];
|
|
3895
|
-
/** 隐藏图标栏内置产物入口(缺省 false:产物开关为图标栏首项) */
|
|
3896
|
-
hideArtifactRailItem?: boolean;
|
|
3897
|
-
/** 图标栏激活项 key(提供即受控,配合 onConversationRailChange 闭环;null 为全部收起) */
|
|
3898
|
-
activeConversationRailKey?: string | null;
|
|
3899
|
-
/** 图标栏激活项变化事件,传出 key 或 null */
|
|
3900
|
-
onConversationRailChange?: (key: string | null) => void;
|
|
3901
|
-
messages?: MessageListItem[];
|
|
3902
|
-
/** 发送中(禁用 Composer 发送钮,由调用方完成后复位) */
|
|
3903
|
-
sending?: boolean;
|
|
3904
|
-
composerPlaceholder?: string;
|
|
3905
|
-
/** 空会话欢迎区(messages 为空时展示;prompts 选择即发送) */
|
|
3906
|
-
welcome?: {
|
|
3907
|
-
title?: string;
|
|
3908
|
-
description?: string;
|
|
3909
|
-
prompts?: WelcomePromptItem[];
|
|
3910
|
-
};
|
|
3911
|
-
/** 发送事件(Composer 提交 / Welcome prompts 选择),传出文本 */
|
|
3912
|
-
onSend?: (text: string) => void;
|
|
3913
|
-
/** 消息操作事件,传出 { id, action } */
|
|
3914
|
-
onMessageAction?: (event: {
|
|
3915
|
-
id?: string;
|
|
3916
|
-
action: string;
|
|
3917
|
-
}) => void;
|
|
3918
|
-
/** 模型选项(非空时 Composer 工具栏右端渲染模型选择 chip) */
|
|
3919
|
-
models?: ComposerModelOption[];
|
|
3920
|
-
/** 当前选中模型 value(可绑 `${state.x}` 受控闭环) */
|
|
3921
|
-
model?: string;
|
|
3922
|
-
/** 模型切换事件,传出 value */
|
|
3923
|
-
onModelChange?: (value: string) => void;
|
|
3924
|
-
/** 上下文数据源(行内提及:输入触发符在光标处弹菜单,选中替换为行内提及块;'+' 源另有工具栏按钮弹层) */
|
|
3925
|
-
contexts?: ComposerContextSource[];
|
|
3926
|
-
/** 行内提及块列表(受控,与输入区同步,可绑 `${state.x}`) */
|
|
3927
|
-
contextItems?: ComposerContextItem[];
|
|
3928
|
-
/** chips 变更事件(选中追加 / 移除),传出新数组;发送后的清空由调用方在 onSend 闭环里处理 */
|
|
3929
|
-
onContextItemsChange?: (items: ComposerContextItem[]) => void;
|
|
3930
|
-
/** 附件列表(受控,展示在输入区上方) */
|
|
3931
|
-
attachments?: AttachmentItemData[];
|
|
3932
|
-
/** 附件选择入口(提供时启用附件钮与粘贴 / 拖拽文件),传出原始 File[] */
|
|
3933
|
-
onAttachFiles?: (files: File[]) => void;
|
|
3934
|
-
/** 附件移除事件,传出 id */
|
|
3935
|
-
onRemoveAttachment?: (id: string | number) => void;
|
|
3936
|
-
/** 附件重试事件,传出 id */
|
|
3937
|
-
onRetryAttachment?: (id: string | number) => void;
|
|
3938
|
-
/** Composer footer 槽(渲染在输入框内工具栏下方,以分隔线相隔) */
|
|
3939
|
-
composerFooter?: DslNode | ReactNode;
|
|
3940
|
-
/** Composer 下方自定义内容槽(渲染在输入框之外正下方,如免责声明弱提示行) */
|
|
3941
|
-
composerBottom?: DslNode | ReactNode;
|
|
3942
|
-
/** 产物区标题,缺省「产物」 */
|
|
3943
|
-
artifactTitle?: string;
|
|
3944
|
-
/**
|
|
3945
|
-
* 产物列表(富模型:id / kind / title / content,面板内建预览——
|
|
3946
|
-
* markdown / code / text / dsl 活预览 / 图片,含目录树与下载)
|
|
3947
|
-
*/
|
|
3948
|
-
artifacts?: ChatPageArtifact[];
|
|
3949
|
-
activeArtifactId?: string;
|
|
3950
|
-
onSelectArtifact?: (id: string) => void;
|
|
3951
|
-
artifactEmptyText?: string;
|
|
3952
|
-
/** dsl 产物活预览的 Safe Registry(缺省时 dsl 内容渲染降级块) */
|
|
3953
|
-
safeRegistry?: Registry<unknown>;
|
|
3954
|
-
/** 注入 dsl 预览作用域 user */
|
|
3955
|
-
user?: Record<string, unknown>;
|
|
3956
|
-
/** 自定义产物查看器(扩展名 / kind → 预览),优先于内建渲染器 */
|
|
3957
|
-
artifactViewers?: ArtifactViewers;
|
|
3958
|
-
/** 产物下载事件;缺省面板内部走浏览器下载 */
|
|
3959
|
-
onDownloadArtifact?: (artifact: ChatPageArtifact) => void;
|
|
3960
|
-
/** 产物区受控开关(提供即受控,配合 onArtifactOpenChange 闭环) */
|
|
3961
|
-
artifactOpen?: boolean;
|
|
3962
|
-
/** 非受控初始开关,缺省 false(产物栏不默认展示) */
|
|
3963
|
-
defaultArtifactOpen?: boolean;
|
|
3964
|
-
/** 产物区开关变化事件,传出 boolean */
|
|
3965
|
-
onArtifactOpenChange?: (open: boolean) => void;
|
|
3966
|
-
/**
|
|
3967
|
-
* 主体内容槽(React 元素或 DslNode):提供时整体替换右侧主区域——
|
|
3968
|
-
* 对话 header、Welcome / MessageList、Composer、对话图标栏与右侧
|
|
3969
|
-
* 产物 / 附加分栏均不渲染,由调用方自带完整主体(含 header);
|
|
3970
|
-
* 最左图标栏与展开菜单区不受影响
|
|
3971
|
-
*/
|
|
3972
|
-
content?: DslNode | ReactNode;
|
|
3973
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
3974
|
-
className?: string;
|
|
3975
|
-
/** 通用:根节点内联样式 */
|
|
3976
|
-
style?: CSSProperties;
|
|
3977
|
-
}
|
|
3978
|
-
/**
|
|
3979
|
-
* ChatPage 对话工作页(shadcn kit):四区整页布局——
|
|
3980
|
-
* 最左图标栏(railItems 独立定义,仅图标,hover 右侧 Tooltip 展示
|
|
3981
|
-
* 菜单名;不传则整栏隐藏)、展开菜单区(品牌 + 图标文字导航固定于顶部,
|
|
3982
|
-
* 可折叠的会话列表与底部分组各占独立滚动区,内容短时下方留空)、中间对话区(头部 / Welcome /
|
|
3983
|
-
* MessageList / Composer——Composer 支持模型选择 chip(models/model)、
|
|
3984
|
-
* 行内提及(contexts:输入触发符在光标处弹菜单,选中替换为行内提及块,
|
|
3985
|
-
* 退格整体删除;受控 contextItems)、附件
|
|
3986
|
-
* 入口(onAttachFiles + 受控 attachments)与 composerFooter /
|
|
3987
|
-
* composerBottom 槽位)、对话图标栏(header 下方、对话区右缘纵向
|
|
3988
|
-
* 图标列:内置产物入口 + conversationRailItems 附加项,点击 toggle
|
|
3989
|
-
* 展示附加内容——popover 悬浮弹框或 panel 右侧分栏,与产物区互斥)、
|
|
3990
|
-
* 最右产物区(ArtifactPanel:内建产物预览、
|
|
3991
|
-
* 目录树与下载,可显隐;展示时经 Resizable 拖拽调节与对话区的宽度)。
|
|
3992
|
-
* content 槽(React 元素或 DslNode)提供时整体替换右侧主区域(含对话
|
|
3993
|
-
* header),由调用方自带完整主体内容;左侧图标栏与展开菜单区保留。
|
|
3994
|
-
* 数据与行为全部经 props / events 进出,
|
|
3995
|
-
* 本组件不持有业务状态(产物区开关、图标栏激活项与分区折叠缺省非受控,
|
|
3996
|
-
* 均可经受控 prop + change 事件闭环)。
|
|
3997
|
-
*/
|
|
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;
|
|
3999
|
-
|
|
4000
|
-
/** 引用来源项 */
|
|
4001
|
-
interface CitationItem {
|
|
4002
|
-
/** 来源标题 */
|
|
4003
|
-
title: string;
|
|
4004
|
-
/** 来源链接 */
|
|
4005
|
-
url?: string;
|
|
4006
|
-
/** 引用片段 */
|
|
4007
|
-
snippet?: string;
|
|
4008
|
-
}
|
|
4009
|
-
interface CitationProps {
|
|
4010
|
-
/** 来源列表(可含表达式解析后的数组);编号从 start 起 */
|
|
4011
|
-
items?: CitationItem[];
|
|
4012
|
-
/** 起始编号,默认 1 */
|
|
4013
|
-
start?: number;
|
|
4014
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4015
|
-
className?: string;
|
|
4016
|
-
/** 通用:根节点内联样式 */
|
|
4017
|
-
style?: CSSProperties;
|
|
4018
|
-
}
|
|
4019
|
-
/**
|
|
4020
|
-
* Citation 适配器(shadcn kit):来源引用标记——行内 [n] 编号组,
|
|
4021
|
-
* 悬浮展开来源卡(标题 / 片段 / 链接,经 vendored HoverCard)。
|
|
4022
|
-
*/
|
|
4023
|
-
declare function Citation({ items, start, className, style }: CitationProps): React.JSX.Element;
|
|
4024
|
-
|
|
4025
|
-
interface PromptProps {
|
|
4026
|
-
/** 提示词标题 */
|
|
4027
|
-
title?: string;
|
|
4028
|
-
/** 补充描述 */
|
|
4029
|
-
description?: string;
|
|
4030
|
-
/** 前缀图标名(Icon 白名单) */
|
|
4031
|
-
icon?: string;
|
|
4032
|
-
/** 点击传出值(缺省取 title) */
|
|
4033
|
-
value?: string;
|
|
4034
|
-
/** 禁用 */
|
|
4035
|
-
disabled?: boolean;
|
|
4036
|
-
/** 选择事件(Renderer 绑定 events.onSelect) */
|
|
4037
|
-
onSelect?: (value: string) => void;
|
|
4038
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4039
|
-
className?: string;
|
|
4040
|
-
/** 通用:根节点内联样式 */
|
|
4041
|
-
style?: CSSProperties;
|
|
4042
|
-
}
|
|
4043
|
-
/**
|
|
4044
|
-
* Prompt 适配器(shadcn kit):可复用提示词 / 任务入口卡片——
|
|
4045
|
-
* 图标 + 标题 + 描述,点击经 onSelect 传出 value(缺省取 title)。
|
|
4046
|
-
*/
|
|
4047
|
-
declare function Prompt({ title, description, icon, value, disabled, onSelect, className, style }: PromptProps): React.JSX.Element;
|
|
4048
|
-
|
|
4049
|
-
interface SenderProps {
|
|
4050
|
-
/** 发送方名称 */
|
|
4051
|
-
name?: string;
|
|
4052
|
-
/** 头像图片地址 */
|
|
4053
|
-
avatar?: string;
|
|
4054
|
-
/** 头像占位文本(缺省取 name 首字符) */
|
|
4055
|
-
avatarText?: string;
|
|
4056
|
-
/** 角色说明(如「AI 助手」「我」),展示在名称后 */
|
|
4057
|
-
role?: string;
|
|
4058
|
-
/** 时间文本(已格式化,如「10:24」) */
|
|
4059
|
-
time?: string;
|
|
4060
|
-
/** 对齐:start 居左、end 居右,默认 start */
|
|
4061
|
-
align?: 'start' | 'end';
|
|
4062
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4063
|
-
className?: string;
|
|
4064
|
-
/** 通用:根节点内联样式 */
|
|
4065
|
-
style?: CSSProperties;
|
|
4066
|
-
}
|
|
4067
|
-
/** Sender 适配器(shadcn kit):消息发送方行——头像 + 名称 + 角色 + 时间 */
|
|
4068
|
-
declare function Sender({ name, avatar, avatarText, role, time, align, className, style }: SenderProps): React.JSX.Element;
|
|
4069
|
-
|
|
4070
|
-
interface StepsPanelItemData {
|
|
4071
|
-
title: string;
|
|
4072
|
-
description?: string;
|
|
4073
|
-
/** done 已完成 / running 进行中 / pending 待执行(缺省 pending) */
|
|
4074
|
-
status?: 'done' | 'running' | 'pending';
|
|
4075
|
-
duration?: string;
|
|
4076
|
-
}
|
|
4077
|
-
interface StepsPanelProps {
|
|
4078
|
-
/** 面板标题(缺省「执行步骤」) */
|
|
4079
|
-
title?: string;
|
|
4080
|
-
/** 步骤列表(DSL 绑定 ${data.steps}) */
|
|
4081
|
-
steps?: StepsPanelItemData[];
|
|
4082
|
-
/** 空态文案(steps 为空时展示) */
|
|
4083
|
-
emptyText?: string;
|
|
4084
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4085
|
-
className?: string;
|
|
4086
|
-
/** 通用:根节点内联样式 */
|
|
4087
|
-
style?: CSSProperties;
|
|
4088
|
-
}
|
|
4089
|
-
/**
|
|
4090
|
-
* StepsPanel 执行步骤面板(chat 目录):纵向时间线展示任务执行步骤,
|
|
4091
|
-
* 状态图标区分已完成 / 进行中 / 待执行。典型用法是作为 ChatPage
|
|
4092
|
-
* 对话图标栏 popover 项的 content(`type: "StepsPanel"`),
|
|
4093
|
-
* 样式全走语义令牌(深浅色/换肤自适应)。
|
|
4094
|
-
*/
|
|
4095
|
-
declare function StepsPanel({ title, steps, emptyText, className, style, }: StepsPanelProps): React.JSX.Element;
|
|
4096
|
-
|
|
4097
|
-
interface StreamingTextProps {
|
|
4098
|
-
/** 文本内容(流式场景由数据源持续追加) */
|
|
4099
|
-
content?: string;
|
|
4100
|
-
/** 生成中:尾部渲染闪烁光标,默认 false */
|
|
4101
|
-
streaming?: boolean;
|
|
4102
|
-
/** 打字机模式:自身按 speed 渐进揭示 content(内容一次性给全的演示 / 回放场景),默认 false */
|
|
4103
|
-
typing?: boolean;
|
|
4104
|
-
/** 打字机速度(每 24ms 揭示的字符数),默认 2 */
|
|
4105
|
-
speed?: number;
|
|
4106
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4107
|
-
className?: string;
|
|
4108
|
-
/** 通用:根节点内联样式 */
|
|
4109
|
-
style?: CSSProperties;
|
|
4110
|
-
}
|
|
4111
|
-
/**
|
|
4112
|
-
* StreamingText 适配器(shadcn kit):渐进展示生成中的文本——
|
|
4113
|
-
* 两种模式:数据源推送(content 增长 + streaming 光标)与打字机
|
|
4114
|
-
* (typing 自揭示完整 content)。光标 motion-reduce 时静止。
|
|
4115
|
-
*/
|
|
4116
|
-
declare function StreamingText({ content, streaming, typing, speed, className, style }: StreamingTextProps): React.JSX.Element;
|
|
4117
|
-
|
|
4118
|
-
/** 建议项:字符串或 { label, value?, icon? }(value 缺省取 label) */
|
|
4119
|
-
type SuggestionItem = string | {
|
|
4120
|
-
label: string;
|
|
4121
|
-
value?: string;
|
|
4122
|
-
icon?: string;
|
|
4123
|
-
};
|
|
4124
|
-
interface SuggestionProps {
|
|
4125
|
-
/** 建议列表(可含表达式解析后的数组) */
|
|
4126
|
-
items?: SuggestionItem[];
|
|
4127
|
-
/** 水平对齐,默认 start */
|
|
4128
|
-
justify?: 'start' | 'center';
|
|
4129
|
-
/** 选择事件,传出选中项 value(Renderer 绑定 events.onSelect) */
|
|
4130
|
-
onSelect?: (value: string) => void;
|
|
4131
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4132
|
-
className?: string;
|
|
4133
|
-
/** 通用:根节点内联样式 */
|
|
4134
|
-
style?: CSSProperties;
|
|
4135
|
-
}
|
|
4136
|
-
/**
|
|
4137
|
-
* Suggestion 适配器(shadcn kit):追问 / 下一步建议 chips——
|
|
4138
|
-
* 圆角描边小按钮横向排列(可换行),点击经 onSelect 传出 value。
|
|
4139
|
-
*/
|
|
4140
|
-
declare function Suggestion({ items, justify, onSelect, className, style }: SuggestionProps): React.JSX.Element;
|
|
4141
|
-
|
|
4142
|
-
/** 思考状态:thinking 进行中(图标脉冲动画)、done 已完成 */
|
|
4143
|
-
type ThinkingStatus = 'thinking' | 'done';
|
|
4144
|
-
interface ThinkingProps {
|
|
4145
|
-
/** 推理内容 */
|
|
4146
|
-
content?: string;
|
|
4147
|
-
/** 状态,默认 thinking */
|
|
4148
|
-
status?: ThinkingStatus;
|
|
4149
|
-
/** 标题,缺省按状态:思考中… / 思考完成 */
|
|
4150
|
-
title?: string;
|
|
4151
|
-
/** 受控:是否展开内容;提供时折叠切换仅经 onToggle 上报 */
|
|
4152
|
-
expanded?: boolean;
|
|
4153
|
-
/** 非受控初始展开(缺省:thinking 展开、done 折叠) */
|
|
4154
|
-
defaultExpanded?: boolean;
|
|
4155
|
-
/** 折叠切换事件,传出目标展开态(Renderer 绑定 events.onToggle) */
|
|
4156
|
-
onToggle?: (expanded: boolean) => void;
|
|
4157
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4158
|
-
className?: string;
|
|
4159
|
-
/** 通用:根节点内联样式 */
|
|
4160
|
-
style?: CSSProperties;
|
|
4161
|
-
}
|
|
4162
|
-
/**
|
|
4163
|
-
* Thinking 适配器(shadcn kit):推理 / 处理中状态——
|
|
4164
|
-
* 无边框无底色:头部(brain 图标 + 标题 + chevron 紧随其后)可折叠,
|
|
4165
|
-
* 进行中图标脉冲;展开后内容仅以浅色文字呈现。
|
|
4166
|
-
* 展开态非受控(defaultExpanded)或受控(expanded + onToggle)。
|
|
4167
|
-
*/
|
|
4168
|
-
declare function Thinking({ content, status, title, expanded, defaultExpanded, onToggle, className, style, }: ThinkingProps): React.JSX.Element;
|
|
4169
|
-
|
|
4170
|
-
/** 工具调用状态 */
|
|
4171
|
-
type ToolCallStatus = 'running' | 'done' | 'error';
|
|
4172
|
-
interface ToolCallProps {
|
|
4173
|
-
/** 工具名称 */
|
|
4174
|
-
name?: string;
|
|
4175
|
-
/** 调用参数(对象按 JSON 缩进展示,字符串原样展示) */
|
|
4176
|
-
params?: unknown;
|
|
4177
|
-
/** 状态,默认 done */
|
|
4178
|
-
status?: ToolCallStatus;
|
|
4179
|
-
/** 调用结果文本 */
|
|
4180
|
-
result?: string;
|
|
4181
|
-
/** 耗时(毫秒,展示为秒) */
|
|
4182
|
-
durationMs?: number;
|
|
4183
|
-
/** 非受控初始展开(缺省:running 展开、其余折叠) */
|
|
4184
|
-
defaultExpanded?: boolean;
|
|
4185
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4186
|
-
className?: string;
|
|
4187
|
-
/** 通用:根节点内联样式 */
|
|
4188
|
-
style?: CSSProperties;
|
|
4189
|
-
}
|
|
4190
|
-
/**
|
|
4191
|
-
* ToolCall 适配器(shadcn kit):工具调用——无边框无底色:头部
|
|
4192
|
-
* (terminal 图标 + 名称 + 状态 + 耗时 + chevron 紧随其后)可折叠,
|
|
4193
|
-
* 展开后参数 / 结果仅以浅色文字呈现;缺省 running 展开、done / error 折叠。
|
|
4194
|
-
*/
|
|
4195
|
-
declare function ToolCall({ name, params, status, result, durationMs, defaultExpanded, className, style }: ToolCallProps): React.JSX.Element;
|
|
4196
|
-
|
|
4197
|
-
/** 图表点击事件的规范化载荷(DSL 事件 `${event}` 值) */
|
|
4198
|
-
interface ChartSelectPayload {
|
|
4199
|
-
name?: unknown;
|
|
4200
|
-
value?: unknown;
|
|
4201
|
-
seriesName?: string;
|
|
4202
|
-
dataIndex?: number;
|
|
4203
|
-
}
|
|
4204
|
-
interface EChartBaseProps {
|
|
4205
|
-
/** echarts option(由 option-builders 纯函数生成) */
|
|
4206
|
-
option: EChartsCoreOption;
|
|
4207
|
-
/** 容器高度:数字按 px,缺省 256 */
|
|
4208
|
-
height?: number | string;
|
|
4209
|
-
/** 点击图表元素(柱子 / 折线点 / 扇区等)触发,映射 echarts click */
|
|
4210
|
-
onSelect?: (payload: ChartSelectPayload) => void;
|
|
4211
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4212
|
-
className?: string;
|
|
4213
|
-
/** 通用:根节点内联样式 */
|
|
4214
|
-
style?: CSSProperties;
|
|
4215
|
-
/** 根节点 data-slot 标识(组件名 kebab) */
|
|
4216
|
-
slot: string;
|
|
4217
|
-
}
|
|
4218
|
-
/**
|
|
4219
|
-
* 图表渲染基础件(chart/ 组件集共享,不注册为 DSL 组件):
|
|
4220
|
-
* 懒初始化 echarts 实例、notMerge 全量更新 option、
|
|
4221
|
-
* ResizeObserver 自适应、卸载销毁;初始化失败(如无 canvas 环境)
|
|
4222
|
-
* 降级为占位提示。SSR 下仅渲染空容器,effect 不执行。
|
|
4223
|
-
*/
|
|
4224
|
-
declare function EChartBase({ option, height, onSelect, className, style, slot, }: EChartBaseProps): React.JSX.Element;
|
|
4225
|
-
|
|
4226
|
-
/**
|
|
4227
|
-
* AreaChart 适配器(chart/ 组件集,echarts):面积图,
|
|
4228
|
-
* 强调趋势与累计规模,支持多系列 / 堆叠 / 填充不透明度。
|
|
4229
|
-
*/
|
|
4230
|
-
interface AreaChartProps {
|
|
4231
|
-
/** 数据行数组 */
|
|
4232
|
-
data?: Record<string, unknown>[];
|
|
4233
|
-
/** 类目字段 */
|
|
4234
|
-
xKey?: string;
|
|
4235
|
-
/** 数值字段(多系列传多个) */
|
|
4236
|
-
yKeys?: string[];
|
|
4237
|
-
/** 堆叠面积 */
|
|
4238
|
-
stacked?: boolean;
|
|
4239
|
-
/** 填充不透明度(0-1),缺省 0.25 */
|
|
4240
|
-
fillOpacity?: number;
|
|
4241
|
-
/** 系列颜色覆盖(按序循环) */
|
|
4242
|
-
colors?: string[];
|
|
4243
|
-
/** 图表标题 */
|
|
4244
|
-
title?: string;
|
|
4245
|
-
/** 容器高度(px 或 CSS 长度),缺省 256 */
|
|
4246
|
-
height?: number | string;
|
|
4247
|
-
/** 点击数据点触发(DSL:events.onSelect → `${event}`) */
|
|
4248
|
-
onSelect?: (payload: ChartSelectPayload) => void;
|
|
4249
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4250
|
-
className?: string;
|
|
4251
|
-
/** 通用:根节点内联样式 */
|
|
4252
|
-
style?: CSSProperties;
|
|
4253
|
-
}
|
|
4254
|
-
declare function AreaChart({ data, xKey, yKeys, stacked, fillOpacity, colors, title, height, onSelect, className, style, }: AreaChartProps): React.JSX.Element;
|
|
4255
|
-
|
|
4256
|
-
/**
|
|
4257
|
-
* BarChart 适配器(chart/ 组件集,echarts):横向条形图,
|
|
4258
|
-
* 适用于长分类名称的横向比较(yKey 类目 + xKeys 数值)。
|
|
4259
|
-
*/
|
|
4260
|
-
interface BarChartProps {
|
|
4261
|
-
/** 数据行数组 */
|
|
4262
|
-
data?: Record<string, unknown>[];
|
|
4263
|
-
/** 类目字段(纵轴) */
|
|
4264
|
-
yKey?: string;
|
|
4265
|
-
/** 数值字段(横轴,多系列传多个) */
|
|
4266
|
-
xKeys?: string[];
|
|
4267
|
-
/** 堆叠条 */
|
|
4268
|
-
stacked?: boolean;
|
|
4269
|
-
/** 系列颜色覆盖(按序循环) */
|
|
4270
|
-
colors?: string[];
|
|
4271
|
-
/** 图表标题 */
|
|
4272
|
-
title?: string;
|
|
4273
|
-
/** 容器高度(px 或 CSS 长度),缺省 256 */
|
|
4274
|
-
height?: number | string;
|
|
4275
|
-
/** 点击条块触发(DSL:events.onSelect → `${event}`) */
|
|
4276
|
-
onSelect?: (payload: ChartSelectPayload) => void;
|
|
4277
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4278
|
-
className?: string;
|
|
4279
|
-
/** 通用:根节点内联样式 */
|
|
4280
|
-
style?: CSSProperties;
|
|
4281
|
-
}
|
|
4282
|
-
declare function BarChart({ data, yKey, xKeys, stacked, colors, title, height, onSelect, className, style, }: BarChartProps): React.JSX.Element;
|
|
4283
|
-
|
|
4284
|
-
/**
|
|
4285
|
-
* BubbleChart 适配器(chart/ 组件集,echarts):气泡图,
|
|
4286
|
-
* 在两变量关系上叠加第三变量(sizeKey)映射气泡大小。
|
|
4287
|
-
*/
|
|
4288
|
-
interface BubbleChartProps {
|
|
4289
|
-
/** 数据行数组 */
|
|
4290
|
-
data?: Record<string, unknown>[];
|
|
4291
|
-
/** X 数值字段,默认 x */
|
|
4292
|
-
xKey?: string;
|
|
4293
|
-
/** Y 数值字段,默认 y */
|
|
4294
|
-
yKey?: string;
|
|
4295
|
-
/** 气泡大小字段(第三变量),默认 size */
|
|
4296
|
-
sizeKey?: string;
|
|
4297
|
-
/** 分组字段(按值拆系列) */
|
|
4298
|
-
seriesKey?: string;
|
|
4299
|
-
/** 系列颜色覆盖(按序循环) */
|
|
4300
|
-
colors?: string[];
|
|
4301
|
-
/** 图表标题 */
|
|
4302
|
-
title?: string;
|
|
4303
|
-
/** 容器高度(px 或 CSS 长度),缺省 256 */
|
|
4304
|
-
height?: number | string;
|
|
4305
|
-
/** 点击气泡触发(DSL:events.onSelect → `${event}`) */
|
|
4306
|
-
onSelect?: (payload: ChartSelectPayload) => void;
|
|
4307
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4308
|
-
className?: string;
|
|
4309
|
-
/** 通用:根节点内联样式 */
|
|
4310
|
-
style?: CSSProperties;
|
|
4311
|
-
}
|
|
4312
|
-
declare function BubbleChart({ data, xKey, yKey, sizeKey, seriesKey, colors, title, height, onSelect, className, style, }: BubbleChartProps): React.JSX.Element;
|
|
4313
|
-
|
|
4314
|
-
/**
|
|
4315
|
-
* ColumnChart 适配器(chart/ 组件集,echarts):垂直柱状图,
|
|
4316
|
-
* 支持多系列 / 堆叠,适用于离散类目比较。
|
|
4317
|
-
*/
|
|
4318
|
-
interface ColumnChartProps {
|
|
4319
|
-
/** 数据行数组 */
|
|
4320
|
-
data?: Record<string, unknown>[];
|
|
4321
|
-
/** 类目字段 */
|
|
4322
|
-
xKey?: string;
|
|
4323
|
-
/** 数值字段(多系列传多个) */
|
|
4324
|
-
yKeys?: string[];
|
|
4325
|
-
/** 堆叠柱 */
|
|
4326
|
-
stacked?: boolean;
|
|
4327
|
-
/** 系列颜色覆盖(按序循环) */
|
|
4328
|
-
colors?: string[];
|
|
4329
|
-
/** 图表标题 */
|
|
4330
|
-
title?: string;
|
|
4331
|
-
/** 容器高度(px 或 CSS 长度),缺省 256 */
|
|
4332
|
-
height?: number | string;
|
|
4333
|
-
/** 点击柱子触发(DSL:events.onSelect → `${event}`) */
|
|
4334
|
-
onSelect?: (payload: ChartSelectPayload) => void;
|
|
4335
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4336
|
-
className?: string;
|
|
4337
|
-
/** 通用:根节点内联样式 */
|
|
4338
|
-
style?: CSSProperties;
|
|
4339
|
-
}
|
|
4340
|
-
declare function ColumnChart({ data, xKey, yKeys, stacked, colors, title, height, onSelect, className, style, }: ColumnChartProps): React.JSX.Element;
|
|
4341
|
-
|
|
4342
|
-
/**
|
|
4343
|
-
* echarts option 构建纯函数:每个图表组件把受限 props 翻译为 option,
|
|
4344
|
-
* 纯函数便于单测(jsdom 无 canvas,不断言 echarts 实例行为)。
|
|
4345
|
-
* 颜色一律来自 ChartTheme 令牌解析结果或用户显式覆盖。
|
|
4346
|
-
*/
|
|
4347
|
-
|
|
4348
|
-
interface ComposedSeriesItem {
|
|
4349
|
-
/** 图型:折线 / 柱 / 面积 */
|
|
4350
|
-
type: 'line' | 'bar' | 'area';
|
|
4351
|
-
/** 数据字段 */
|
|
4352
|
-
dataKey: string;
|
|
4353
|
-
/** 0 主数值轴 / 1 副数值轴(双轴) */
|
|
4354
|
-
yAxisIndex?: 0 | 1;
|
|
4355
|
-
/** 系列显示名,缺省取 dataKey */
|
|
4356
|
-
name?: string;
|
|
4357
|
-
}
|
|
4358
|
-
|
|
4359
|
-
/**
|
|
4360
|
-
* ComposedChart 适配器(chart/ 组件集,echarts):组合图,
|
|
4361
|
-
* 声明式 series 描述混合折线/柱/面积,支持双数值轴。
|
|
4362
|
-
*/
|
|
4363
|
-
interface ComposedChartProps {
|
|
4364
|
-
/** 数据行数组 */
|
|
4365
|
-
data?: Record<string, unknown>[];
|
|
4366
|
-
/** 类目字段 */
|
|
4367
|
-
xKey?: string;
|
|
4368
|
-
/** 系列描述数组(图型 + 数据字段,可指定副轴) */
|
|
4369
|
-
series?: ComposedSeriesItem[];
|
|
4370
|
-
/** 系列颜色覆盖(按序循环) */
|
|
4371
|
-
colors?: string[];
|
|
4372
|
-
/** 图表标题 */
|
|
4373
|
-
title?: string;
|
|
4374
|
-
/** 容器高度(px 或 CSS 长度),缺省 256 */
|
|
4375
|
-
height?: number | string;
|
|
4376
|
-
/** 点击图元触发(DSL:events.onSelect → `${event}`) */
|
|
4377
|
-
onSelect?: (payload: ChartSelectPayload) => void;
|
|
4378
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4379
|
-
className?: string;
|
|
4380
|
-
/** 通用:根节点内联样式 */
|
|
4381
|
-
style?: CSSProperties;
|
|
4382
|
-
}
|
|
4383
|
-
declare function ComposedChart({ data, xKey, series, colors, title, height, onSelect, className, style, }: ComposedChartProps): React.JSX.Element;
|
|
4384
|
-
|
|
4385
|
-
/**
|
|
4386
|
-
* DonutChart 适配器(chart/ 组件集,echarts):环形图,
|
|
4387
|
-
* 中心可展示关键指标(centerLabel / centerValue)。
|
|
4388
|
-
*/
|
|
4389
|
-
interface DonutChartProps {
|
|
4390
|
-
/** 切片数据行数组 */
|
|
4391
|
-
data?: Record<string, unknown>[];
|
|
4392
|
-
/** 切片名称字段,默认 name */
|
|
4393
|
-
nameKey?: string;
|
|
4394
|
-
/** 切片数值字段,默认 value */
|
|
4395
|
-
valueKey?: string;
|
|
4396
|
-
/** 内半径(px 或百分比串),默认 '48%' */
|
|
4397
|
-
innerRadius?: number | string;
|
|
4398
|
-
/** 外半径,默认 '72%' */
|
|
4399
|
-
outerRadius?: number | string;
|
|
4400
|
-
/** 中心指标名(如 "总计") */
|
|
4401
|
-
centerLabel?: string;
|
|
4402
|
-
/** 中心指标值 */
|
|
4403
|
-
centerValue?: number | string;
|
|
4404
|
-
/** 是否显示切片标签 */
|
|
4405
|
-
showLabel?: boolean;
|
|
4406
|
-
/** 系列颜色覆盖(按序循环) */
|
|
4407
|
-
colors?: string[];
|
|
4408
|
-
/** 图表标题 */
|
|
4409
|
-
title?: string;
|
|
4410
|
-
/** 容器高度(px 或 CSS 长度),缺省 256 */
|
|
4411
|
-
height?: number | string;
|
|
4412
|
-
/** 点击切片触发(DSL:events.onSelect → `${event}`) */
|
|
4413
|
-
onSelect?: (payload: ChartSelectPayload) => void;
|
|
4414
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4415
|
-
className?: string;
|
|
4416
|
-
/** 通用:根节点内联样式 */
|
|
4417
|
-
style?: CSSProperties;
|
|
4418
|
-
}
|
|
4419
|
-
declare function DonutChart({ data, nameKey, valueKey, innerRadius, outerRadius, centerLabel, centerValue, showLabel, colors, title, height, onSelect, className, style, }: DonutChartProps): React.JSX.Element;
|
|
4420
|
-
|
|
4421
|
-
/**
|
|
4422
|
-
* FunnelChart 适配器(chart/ 组件集,echarts):漏斗图,
|
|
4423
|
-
* 展示流程阶段转化,支持降序 / 升序 / 输入顺序排列。
|
|
4424
|
-
*/
|
|
4425
|
-
interface FunnelChartProps {
|
|
4426
|
-
/** 阶段数据行数组 */
|
|
4427
|
-
data?: Record<string, unknown>[];
|
|
4428
|
-
/** 阶段名字段,默认 name */
|
|
4429
|
-
nameKey?: string;
|
|
4430
|
-
/** 阶段数值字段,默认 value */
|
|
4431
|
-
valueKey?: string;
|
|
4432
|
-
/** 排序方式:降序(大在上,缺省)/ 升序 / 输入顺序 */
|
|
4433
|
-
sort?: 'descending' | 'ascending' | 'none';
|
|
4434
|
-
/** 系列颜色覆盖(按序循环) */
|
|
4435
|
-
colors?: string[];
|
|
4436
|
-
/** 图表标题 */
|
|
4437
|
-
title?: string;
|
|
4438
|
-
/** 容器高度(px 或 CSS 长度),缺省 256 */
|
|
4439
|
-
height?: number | string;
|
|
4440
|
-
/** 点击阶段触发(DSL:events.onSelect → `${event}`) */
|
|
4441
|
-
onSelect?: (payload: ChartSelectPayload) => void;
|
|
4442
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4443
|
-
className?: string;
|
|
4444
|
-
/** 通用:根节点内联样式 */
|
|
4445
|
-
style?: CSSProperties;
|
|
4446
|
-
}
|
|
4447
|
-
declare function FunnelChart({ data, nameKey, valueKey, sort, colors, title, height, onSelect, className, style, }: FunnelChartProps): React.JSX.Element;
|
|
4448
|
-
|
|
4449
|
-
/**
|
|
4450
|
-
* GaugeChart 适配器(chart/ 组件集,echarts):仪表盘,
|
|
4451
|
-
* 单指标区间状态展示,阈值分段配色(语义色令牌)。
|
|
4452
|
-
*/
|
|
4453
|
-
interface GaugeChartProps {
|
|
4454
|
-
/** 当前值 */
|
|
4455
|
-
value?: number;
|
|
4456
|
-
/** 量程下限,默认 0 */
|
|
4457
|
-
min?: number;
|
|
4458
|
-
/** 量程上限,默认 100 */
|
|
4459
|
-
max?: number;
|
|
4460
|
-
/** 阈值区间:按 value 上限分段配色(颜色缺省取主题色板首色),末段兜底到 max */
|
|
4461
|
-
thresholds?: {
|
|
4462
|
-
value: number;
|
|
4463
|
-
color?: string;
|
|
4464
|
-
}[];
|
|
4465
|
-
/** 数值单位后缀(如 %) */
|
|
4466
|
-
unit?: string;
|
|
4467
|
-
/** 图表标题 */
|
|
4468
|
-
title?: string;
|
|
4469
|
-
/** 容器高度(px 或 CSS 长度),缺省 256 */
|
|
4470
|
-
height?: number | string;
|
|
4471
|
-
/** 点击触发(DSL:events.onSelect → `${event}`) */
|
|
4472
|
-
onSelect?: (payload: ChartSelectPayload) => void;
|
|
4473
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4474
|
-
className?: string;
|
|
4475
|
-
/** 通用:根节点内联样式 */
|
|
4476
|
-
style?: CSSProperties;
|
|
4477
|
-
}
|
|
4478
|
-
declare function GaugeChart({ value, min, max, thresholds, unit, title, height, onSelect, className, style, }: GaugeChartProps): React.JSX.Element;
|
|
4479
|
-
|
|
4480
|
-
/**
|
|
4481
|
-
* Heatmap 适配器(chart/ 组件集,echarts):热力图,
|
|
4482
|
-
* x/y 二维类目密度展示,visualMap 色阶取主题令牌。
|
|
4483
|
-
*/
|
|
4484
|
-
interface HeatmapProps {
|
|
4485
|
-
/** 数据行数组(每行 x / y / value) */
|
|
4486
|
-
data?: Record<string, unknown>[];
|
|
4487
|
-
/** 横轴类目字段,默认 x */
|
|
4488
|
-
xKey?: string;
|
|
4489
|
-
/** 纵轴类目字段,默认 y */
|
|
4490
|
-
yKey?: string;
|
|
4491
|
-
/** 数值字段,默认 value */
|
|
4492
|
-
valueKey?: string;
|
|
4493
|
-
/** 图表标题 */
|
|
4494
|
-
title?: string;
|
|
4495
|
-
/** 容器高度(px 或 CSS 长度),缺省 256 */
|
|
4496
|
-
height?: number | string;
|
|
4497
|
-
/** 点击单元格触发(DSL:events.onSelect → `${event}`) */
|
|
4498
|
-
onSelect?: (payload: ChartSelectPayload) => void;
|
|
4499
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4500
|
-
className?: string;
|
|
4501
|
-
/** 通用:根节点内联样式 */
|
|
4502
|
-
style?: CSSProperties;
|
|
4503
|
-
}
|
|
4504
|
-
declare function Heatmap({ data, xKey, yKey, valueKey, title, height, onSelect, className, style, }: HeatmapProps): React.JSX.Element;
|
|
4505
|
-
|
|
4506
|
-
/**
|
|
4507
|
-
* LineChart 适配器(chart/ 组件集,echarts):连续趋势折线,
|
|
4508
|
-
* 支持多系列 / 平滑 / 面积填充 / 堆叠。
|
|
4509
|
-
*/
|
|
4510
|
-
interface LineChartProps {
|
|
4511
|
-
/** 数据行数组(通常为 `${data.xxx}` 表达式解析结果) */
|
|
4512
|
-
data?: Record<string, unknown>[];
|
|
4513
|
-
/** 类目字段 */
|
|
4514
|
-
xKey?: string;
|
|
4515
|
-
/** 数值字段(多系列传多个) */
|
|
4516
|
-
yKeys?: string[];
|
|
4517
|
-
/** 平滑曲线 */
|
|
4518
|
-
smooth?: boolean;
|
|
4519
|
-
/** 折线下方面积填充 */
|
|
4520
|
-
showArea?: boolean;
|
|
4521
|
-
/** 堆叠面积/折线 */
|
|
4522
|
-
stacked?: boolean;
|
|
4523
|
-
/** 系列颜色覆盖(按序循环) */
|
|
4524
|
-
colors?: string[];
|
|
4525
|
-
/** 图表标题 */
|
|
4526
|
-
title?: string;
|
|
4527
|
-
/** 容器高度(px 或 CSS 长度),缺省 256 */
|
|
4528
|
-
height?: number | string;
|
|
4529
|
-
/** 点击数据点触发(DSL:events.onSelect → `${event}`) */
|
|
4530
|
-
onSelect?: (payload: ChartSelectPayload) => void;
|
|
4531
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4532
|
-
className?: string;
|
|
4533
|
-
/** 通用:根节点内联样式 */
|
|
4534
|
-
style?: CSSProperties;
|
|
4535
|
-
}
|
|
4536
|
-
declare function LineChart({ data, xKey, yKeys, smooth, showArea, stacked, colors, title, height, onSelect, className, style, }: LineChartProps): React.JSX.Element;
|
|
4537
|
-
|
|
4538
|
-
/**
|
|
4539
|
-
* MapChart 适配器(chart/ 组件集,echarts):地图,
|
|
4540
|
-
* 展示地理分布与区域比较(世界地图 / 国家地图 / 其他区域地图)。
|
|
4541
|
-
* 地图数据三种供给方式(优先级从高到低):
|
|
4542
|
-
* - `geoJson`:内联 GeoJSON 对象,渲染期同步注册(幂等,StrictMode 安全);
|
|
4543
|
-
* - `geoJsonUrl`:GeoJSON 资源地址,组件 fetch 后注册(按 mapName 缓存,
|
|
4544
|
-
* 同一地图多处复用只请求一次);
|
|
4545
|
-
* - 两者都不传时要求 `mapName` 已注册(如应用启动时统一 registerMap)。
|
|
4546
|
-
* 未注册渲染 Empty 占位并 console.warn,不抛错。
|
|
4547
|
-
*/
|
|
4548
|
-
interface MapChartProps {
|
|
4549
|
-
/** echarts 地图名 */
|
|
4550
|
-
mapName?: string;
|
|
4551
|
-
/** 区域数据行数组(区域名 + 数值) */
|
|
4552
|
-
data?: Record<string, unknown>[];
|
|
4553
|
-
/** 区域名字段,默认 name */
|
|
4554
|
-
nameKey?: string;
|
|
4555
|
-
/** 区域数值字段,默认 value */
|
|
4556
|
-
valueKey?: string;
|
|
4557
|
-
/** GeoJSON 地图数据(传入即注册到 echarts,优先于 geoJsonUrl) */
|
|
4558
|
-
geoJson?: Record<string, unknown>;
|
|
4559
|
-
/** GeoJSON 资源地址(组件 fetch 后注册到 echarts) */
|
|
4560
|
-
geoJsonUrl?: string;
|
|
4561
|
-
/** 图表标题 */
|
|
4562
|
-
title?: string;
|
|
4563
|
-
/** 容器高度(px 或 CSS 长度),缺省 256 */
|
|
4564
|
-
height?: number | string;
|
|
4565
|
-
/** 点击区域触发(DSL:events.onSelect → `${event}`) */
|
|
4566
|
-
onSelect?: (payload: ChartSelectPayload) => void;
|
|
4567
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4568
|
-
className?: string;
|
|
4569
|
-
/** 通用:根节点内联样式 */
|
|
4570
|
-
style?: CSSProperties;
|
|
4571
|
-
}
|
|
4572
|
-
declare function MapChart({ mapName, data, nameKey, valueKey, geoJson, geoJsonUrl, title, height, onSelect, className, style, }: MapChartProps): React.JSX.Element;
|
|
4573
|
-
|
|
4574
|
-
/**
|
|
4575
|
-
* MetricCard 适配器(chart/ 组件集):单指标卡——标题 + 大数值 +
|
|
4576
|
-
* 趋势箭头(语义色令牌)。数据可视化看板的顶层概览单元。
|
|
4577
|
-
*/
|
|
4578
|
-
interface MetricCardProps {
|
|
4579
|
-
/** 指标标题 */
|
|
4580
|
-
title?: string;
|
|
4581
|
-
/** 指标数值(通常为表达式解析后的数字) */
|
|
4582
|
-
value?: number | string;
|
|
4583
|
-
/** 前缀(如 ¥) */
|
|
4584
|
-
prefix?: string;
|
|
4585
|
-
/** 后缀(如单位) */
|
|
4586
|
-
suffix?: string;
|
|
4587
|
-
/** 趋势百分比:正数升(success),负数降(destructive),0 / 缺省不展示 */
|
|
4588
|
-
trend?: number;
|
|
4589
|
-
/** 趋势对比说明(如 "较上月") */
|
|
4590
|
-
trendLabel?: string;
|
|
4591
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4592
|
-
className?: string;
|
|
4593
|
-
/** 通用:根节点内联样式 */
|
|
4594
|
-
style?: CSSProperties;
|
|
4595
|
-
}
|
|
4596
|
-
declare function MetricCard({ title, value, prefix, suffix, trend, trendLabel, className, style, }: MetricCardProps): React.JSX.Element;
|
|
4597
|
-
|
|
4598
|
-
/**
|
|
4599
|
-
* PieChart 适配器(chart/ 组件集,echarts):饼图,
|
|
4600
|
-
* 适用于少量类别的构成展示。
|
|
4601
|
-
*/
|
|
4602
|
-
interface PieChartProps {
|
|
4603
|
-
/** 切片数据行数组 */
|
|
4604
|
-
data?: Record<string, unknown>[];
|
|
4605
|
-
/** 切片名称字段,默认 name */
|
|
4606
|
-
nameKey?: string;
|
|
4607
|
-
/** 切片数值字段,默认 value */
|
|
4608
|
-
valueKey?: string;
|
|
4609
|
-
/** 是否显示切片标签 */
|
|
4610
|
-
showLabel?: boolean;
|
|
4611
|
-
/** 系列颜色覆盖(按序循环) */
|
|
4612
|
-
colors?: string[];
|
|
4613
|
-
/** 图表标题 */
|
|
4614
|
-
title?: string;
|
|
4615
|
-
/** 容器高度(px 或 CSS 长度),缺省 256 */
|
|
4616
|
-
height?: number | string;
|
|
4617
|
-
/** 点击切片触发(DSL:events.onSelect → `${event}`) */
|
|
4618
|
-
onSelect?: (payload: ChartSelectPayload) => void;
|
|
4619
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4620
|
-
className?: string;
|
|
4621
|
-
/** 通用:根节点内联样式 */
|
|
4622
|
-
style?: CSSProperties;
|
|
4623
|
-
}
|
|
4624
|
-
declare function PieChart({ data, nameKey, valueKey, showLabel, colors, title, height, onSelect, className, style, }: PieChartProps): React.JSX.Element;
|
|
4625
|
-
|
|
4626
|
-
/**
|
|
4627
|
-
* RadarChart 适配器(chart/ 组件集,echarts):雷达图,
|
|
4628
|
-
* 每行一个维度(indicatorKey),每列一个对比系列(yKeys)。
|
|
4629
|
-
*/
|
|
4630
|
-
interface RadarChartProps {
|
|
4631
|
-
/** 数据行数组(每行一个雷达维度) */
|
|
4632
|
-
data?: Record<string, unknown>[];
|
|
4633
|
-
/** 维度名字段,默认 indicator */
|
|
4634
|
-
indicatorKey?: string;
|
|
4635
|
-
/** 系列字段(多列多维对比),默认 ['value'] */
|
|
4636
|
-
yKeys?: string[];
|
|
4637
|
-
/** 系列颜色覆盖(按序循环) */
|
|
4638
|
-
colors?: string[];
|
|
4639
|
-
/** 图表标题 */
|
|
4640
|
-
title?: string;
|
|
4641
|
-
/** 容器高度(px 或 CSS 长度),缺省 256 */
|
|
4642
|
-
height?: number | string;
|
|
4643
|
-
/** 点击触发(DSL:events.onSelect → `${event}`) */
|
|
4644
|
-
onSelect?: (payload: ChartSelectPayload) => void;
|
|
4645
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4646
|
-
className?: string;
|
|
4647
|
-
/** 通用:根节点内联样式 */
|
|
4648
|
-
style?: CSSProperties;
|
|
4649
|
-
}
|
|
4650
|
-
declare function RadarChart({ data, indicatorKey, yKeys, colors, title, height, onSelect, className, style, }: RadarChartProps): React.JSX.Element;
|
|
4651
|
-
|
|
4652
|
-
/**
|
|
4653
|
-
* SankeyChart 适配器(chart/ 组件集,echarts):桑基图,
|
|
4654
|
-
* 展示节点之间的流向与规模。
|
|
4655
|
-
*/
|
|
4656
|
-
interface SankeyChartProps {
|
|
4657
|
-
/** 节点数组 */
|
|
4658
|
-
nodes?: {
|
|
4659
|
-
name: string;
|
|
4660
|
-
}[];
|
|
4661
|
-
/** 流向边:source → target 及数值 */
|
|
4662
|
-
links?: {
|
|
4663
|
-
source: string;
|
|
4664
|
-
target: string;
|
|
4665
|
-
value: number;
|
|
4666
|
-
}[];
|
|
4667
|
-
/** 图表标题 */
|
|
4668
|
-
title?: string;
|
|
4669
|
-
/** 容器高度(px 或 CSS 长度),缺省 256 */
|
|
4670
|
-
height?: number | string;
|
|
4671
|
-
/** 点击节点或边触发(DSL:events.onSelect → `${event}`) */
|
|
4672
|
-
onSelect?: (payload: ChartSelectPayload) => void;
|
|
4673
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4674
|
-
className?: string;
|
|
4675
|
-
/** 通用:根节点内联样式 */
|
|
4676
|
-
style?: CSSProperties;
|
|
4677
|
-
}
|
|
4678
|
-
declare function SankeyChart({ nodes, links, title, height, onSelect, className, style, }: SankeyChartProps): React.JSX.Element;
|
|
4679
|
-
|
|
4680
|
-
/**
|
|
4681
|
-
* ScatterChart 适配器(chart/ 组件集,echarts):散点图,
|
|
4682
|
-
* 展示两变量关系与分布,seriesKey 可按值拆分子系列。
|
|
4683
|
-
*/
|
|
4684
|
-
interface ScatterChartProps {
|
|
4685
|
-
/** 数据行数组 */
|
|
4686
|
-
data?: Record<string, unknown>[];
|
|
4687
|
-
/** X 数值字段,默认 x */
|
|
4688
|
-
xKey?: string;
|
|
4689
|
-
/** Y 数值字段,默认 y */
|
|
4690
|
-
yKey?: string;
|
|
4691
|
-
/** 分组字段(按值拆系列,配图例) */
|
|
4692
|
-
seriesKey?: string;
|
|
4693
|
-
/** 系列颜色覆盖(按序循环) */
|
|
4694
|
-
colors?: string[];
|
|
4695
|
-
/** 图表标题 */
|
|
4696
|
-
title?: string;
|
|
4697
|
-
/** 容器高度(px 或 CSS 长度),缺省 256 */
|
|
4698
|
-
height?: number | string;
|
|
4699
|
-
/** 点击数据点触发(DSL:events.onSelect → `${event}`) */
|
|
4700
|
-
onSelect?: (payload: ChartSelectPayload) => void;
|
|
4701
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4702
|
-
className?: string;
|
|
4703
|
-
/** 通用:根节点内联样式 */
|
|
4704
|
-
style?: CSSProperties;
|
|
4705
|
-
}
|
|
4706
|
-
declare function ScatterChart({ data, xKey, yKey, seriesKey, colors, title, height, onSelect, className, style, }: ScatterChartProps): React.JSX.Element;
|
|
4707
|
-
|
|
4708
|
-
/**
|
|
4709
|
-
* TreeChart 适配器(chart/ 组件集,echarts):树图,
|
|
4710
|
-
* 节点-连线层级树(对齐 echarts 2.2.4 tree 系列形态):
|
|
4711
|
-
* 根节点定位布局,曲线/折线连边,叶子节点着色,支持展开方向与
|
|
4712
|
-
* 初始展开深度配置。
|
|
4713
|
-
*/
|
|
4714
|
-
interface TreeChartProps {
|
|
4715
|
-
/** 层级数据:通常为单根 [{ name, children: [...] }] */
|
|
4716
|
-
data?: Record<string, unknown>[];
|
|
4717
|
-
/** 图表标题 */
|
|
4718
|
-
title?: string;
|
|
4719
|
-
/** 展开方向:vertical 根在上向下(缺省)/ horizontal 根在左向右 */
|
|
4720
|
-
orient?: 'vertical' | 'horizontal';
|
|
4721
|
-
/** 连线形状:曲线(缺省)/ 折线 */
|
|
4722
|
-
edgeShape?: 'curve' | 'polyline';
|
|
4723
|
-
/** 初始展开的层级深度,缺省 2;-1 表示全部展开 */
|
|
4724
|
-
initialTreeDepth?: number;
|
|
4725
|
-
/** 容器高度(px 或 CSS 长度),缺省 256 */
|
|
4726
|
-
height?: number | string;
|
|
4727
|
-
/** 点击节点触发(DSL:events.onSelect → `${event}`) */
|
|
4728
|
-
onSelect?: (payload: ChartSelectPayload) => void;
|
|
4729
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4730
|
-
className?: string;
|
|
4731
|
-
/** 通用:根节点内联样式 */
|
|
4732
|
-
style?: CSSProperties;
|
|
4733
|
-
}
|
|
4734
|
-
declare function TreeChart({ data, title, orient, edgeShape, initialTreeDepth, height, onSelect, className, style, }: TreeChartProps): React.JSX.Element;
|
|
4735
|
-
|
|
4736
|
-
/** 上层右侧状态/分类标签 */
|
|
4737
|
-
interface EntityCardTag {
|
|
4738
|
-
text: string;
|
|
4739
|
-
/** 语义色,默认 default */
|
|
4740
|
-
color?: TagColor;
|
|
4741
|
-
}
|
|
4742
|
-
/** 下层操作按钮;key 缺省取 text */
|
|
4743
|
-
interface EntityCardAction {
|
|
4744
|
-
text: string;
|
|
4745
|
-
key?: string;
|
|
4746
|
-
variant?: ButtonVariant;
|
|
4747
|
-
danger?: boolean;
|
|
4748
|
-
}
|
|
4749
|
-
interface EntityCardProps {
|
|
4750
|
-
/** 图标名(Icon 白名单);与 logo 二选一,logo 优先 */
|
|
4751
|
-
icon?: string;
|
|
4752
|
-
/** Logo 图片地址 */
|
|
4753
|
-
logo?: string;
|
|
4754
|
-
/** 主标题 */
|
|
4755
|
-
title?: string;
|
|
4756
|
-
/** 标题下方辅助短文案(版本号、编码等) */
|
|
4757
|
-
subtitle?: string;
|
|
4758
|
-
/** 上层右侧标签组 */
|
|
4759
|
-
tags?: EntityCardTag[];
|
|
4760
|
-
/** 中层描述说明,固定两行高度、超出截断 */
|
|
4761
|
-
description?: string;
|
|
4762
|
-
/** 中层右侧维护信息(与描述平铺,如「平台组 · 更新于 2026-09-28」) */
|
|
4763
|
-
meta?: string;
|
|
4764
|
-
/** 下层操作按钮组(居右);不配置则不渲染下层 */
|
|
4765
|
-
actions?: EntityCardAction[];
|
|
4766
|
-
/** 下层是否带浅底栏背景,默认 true */
|
|
4767
|
-
footerBackground?: boolean;
|
|
4768
|
-
/** 整卡可点:手型 + hover 边框/背景高亮,常配 events.onClick */
|
|
4769
|
-
hoverable?: boolean;
|
|
4770
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4771
|
-
className?: string;
|
|
4772
|
-
/** 通用:内容区 class */
|
|
4773
|
-
contentClassName?: string;
|
|
4774
|
-
/** 通用:根节点内联样式 */
|
|
4775
|
-
style?: CSSProperties;
|
|
4776
|
-
/** 整卡点击(actions 区域不触发) */
|
|
4777
|
-
onClick?: () => void;
|
|
4778
|
-
/** 操作按钮点击,参数 { key, text, index } */
|
|
4779
|
-
onAction?: (event: {
|
|
4780
|
-
key: string;
|
|
4781
|
-
text: string;
|
|
4782
|
-
index: number;
|
|
4783
|
-
}) => void;
|
|
4784
|
-
}
|
|
4785
|
-
/**
|
|
4786
|
-
* EntityCard 实体摘要卡(business 目录):上(图标+标题+副文案 / 标签组)、
|
|
4787
|
-
* 中(描述 / 维护信息)、下(浅底栏操作按钮组)三层结构;按钮点击独立于
|
|
4788
|
-
* 整卡点击(stopPropagation)。组件不内置请求,交互由 DSL events 编排。
|
|
4789
|
-
*/
|
|
4790
|
-
declare function EntityCard({ icon, logo, title, subtitle, tags, description, meta, actions, footerBackground, hoverable, className, contentClassName, style, onClick, onAction, }: EntityCardProps): React.JSX.Element;
|
|
4791
|
-
|
|
4792
|
-
/** 卡片数据项:字段与 EntityCard props 同形,可携带额外业务字段(事件参数原样回传) */
|
|
4793
|
-
interface CardListItem {
|
|
4794
|
-
icon?: string;
|
|
4795
|
-
logo?: string;
|
|
4796
|
-
title?: string;
|
|
4797
|
-
subtitle?: string;
|
|
4798
|
-
tags?: EntityCardTag[];
|
|
4799
|
-
description?: string;
|
|
4800
|
-
meta?: string;
|
|
4801
|
-
actions?: EntityCardAction[];
|
|
4802
|
-
[key: string]: unknown;
|
|
4803
|
-
}
|
|
4804
|
-
interface CardListProps {
|
|
4805
|
-
/** 卡片数据 */
|
|
4806
|
-
items?: CardListItem[];
|
|
4807
|
-
/** 网格列数,默认 3 */
|
|
4808
|
-
columns?: number;
|
|
4809
|
-
/** 卡片间距(px),默认 16 */
|
|
4810
|
-
gap?: number;
|
|
4811
|
-
/** 配置后首格展示虚线新建占位卡(文案如「新建插件」) */
|
|
4812
|
-
createText?: string;
|
|
4813
|
-
/** 新建占位卡图标,默认 plus */
|
|
4814
|
-
createIcon?: string;
|
|
4815
|
-
/** 卡片是否整卡可点(透传 EntityCard hoverable),默认 false */
|
|
4816
|
-
hoverable?: boolean;
|
|
4817
|
-
/** 底部是否展示「共 N 个」计数,默认 false */
|
|
4818
|
-
showCount?: boolean;
|
|
4819
|
-
/** 空数据文案(默认 i18n pactor.table.empty) */
|
|
4820
|
-
emptyText?: string;
|
|
4821
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
4822
|
-
className?: string;
|
|
4823
|
-
/** 通用:根节点内联样式 */
|
|
4824
|
-
style?: CSSProperties;
|
|
4825
|
-
/** 整卡点击,参数 { item, index } */
|
|
4826
|
-
onItemClick?: (event: {
|
|
4827
|
-
item: CardListItem;
|
|
4828
|
-
index: number;
|
|
4829
|
-
}) => void;
|
|
4830
|
-
/** 卡内操作按钮点击,参数 { key, text, item, index } */
|
|
4831
|
-
onItemAction?: (event: {
|
|
4832
|
-
key: string;
|
|
4833
|
-
text: string;
|
|
4834
|
-
item: CardListItem;
|
|
4835
|
-
index: number;
|
|
4836
|
-
}) => void;
|
|
4837
|
-
/** 新建占位卡点击 */
|
|
4838
|
-
onCreateClick?: () => void;
|
|
4839
|
-
}
|
|
4840
|
-
/**
|
|
4841
|
-
* CardList 卡片列表(business 目录):响应式网格渲染实体摘要卡,
|
|
4842
|
-
* 支持首格新建占位卡、空状态与结果计数;交互经 events 编排
|
|
4843
|
-
* (onItemClick / onItemAction / onCreateClick,参数经 ${event} 读取)。
|
|
4844
|
-
*/
|
|
4845
|
-
declare function CardList({ items, columns, gap, createText, createIcon, hoverable, showCount, emptyText, className, style, onItemClick, onItemAction, onCreateClick, }: CardListProps): React.JSX.Element;
|
|
4846
|
-
|
|
4847
|
-
/**
|
|
4848
|
-
* valueMapping 条目:描述模板中一个 ${key} / {{key}} 占位符的取值方式,
|
|
4849
|
-
* 结构与表单项(FormFieldDefinition)一致。
|
|
4850
|
-
*/
|
|
4851
|
-
interface ExpressionMappingItem {
|
|
4852
|
-
name?: string | null;
|
|
4853
|
-
label?: string | null;
|
|
4854
|
-
/**
|
|
4855
|
-
* 控件类型:"select" 下拉框、"number" 数值输入、"fieldCondition" 条件组编辑器,
|
|
4856
|
-
* 其他值(input、nodeType、edgeType 等)回退为文本输入框
|
|
4857
|
-
*/
|
|
4858
|
-
type?: string | null;
|
|
4859
|
-
required?: boolean | null;
|
|
4860
|
-
placeholder?: string | null;
|
|
4861
|
-
/** select 的内联候选 */
|
|
4862
|
-
options?: Array<{
|
|
4863
|
-
label: string;
|
|
4864
|
-
value: string;
|
|
4865
|
-
}> | null;
|
|
4866
|
-
/**
|
|
4867
|
-
* select 的候选来源:匹配页面 optionSource 中的同名条目,
|
|
4868
|
-
* 支持静态 { options };远程 { request, valueField, labelField } 条目
|
|
4869
|
-
* 在本移植版中不支持(无 fetchApi 通道),按空候选处理。
|
|
4870
|
-
*/
|
|
4871
|
-
optionSource?: string | null;
|
|
4872
|
-
/** 默认值 */
|
|
4873
|
-
default?: any;
|
|
4874
|
-
multiple?: boolean | null;
|
|
4875
|
-
/**
|
|
4876
|
-
* 校验规则(与 type 同级):pattern 为正则字符串,message 为失败提示;
|
|
4877
|
-
* 与外层表单字段的 validation 同构,编辑态逐项校验,不通过则阻断提交
|
|
4878
|
-
*/
|
|
4879
|
-
validation?: {
|
|
4880
|
-
pattern?: string | null;
|
|
4881
|
-
message?: string | null;
|
|
4882
|
-
} | null;
|
|
4883
|
-
}
|
|
4884
|
-
interface ExpressionEditorProps {
|
|
4885
|
-
id?: string;
|
|
4886
|
-
value?: string;
|
|
4887
|
-
onChange?: (value: string) => void;
|
|
4888
|
-
/**
|
|
4889
|
-
* 表单值模板,如 "return ft.period(${a}, ${b})"。
|
|
4890
|
-
* 占位符支持 ${key} 与 {{key}} 两种写法;DSL props 内联书写时须用 {{key}},
|
|
4891
|
-
* 因为 ${ 会被 DSL 表达式引擎提前求值(后端数据 / state 透传的模板不受此限)。
|
|
4892
|
-
*/
|
|
4893
|
-
valueTemplate: string;
|
|
4894
|
-
/** 模板占位符到控件的映射,key 与模板中 ${key} / {{key}} 对应 */
|
|
4895
|
-
valueMapping?: Record<string, ExpressionMappingItem>;
|
|
4896
|
-
/**
|
|
4897
|
-
* 页面级 optionSource 集合,供 mapping 条目的 optionSource 匹配。
|
|
4898
|
-
* 仅静态 { options } 条目生效;远程 { request } 条目被忽略(按空候选渲染)。
|
|
4899
|
-
*/
|
|
4900
|
-
optionSources?: Record<string, any>;
|
|
4901
|
-
/** 字段标签:渲染在头部左侧,右侧为「编辑」按钮 */
|
|
4902
|
-
label?: string | null;
|
|
4903
|
-
/** 必填标记(label 后显示 *) */
|
|
4904
|
-
required?: boolean;
|
|
4905
|
-
readonly?: boolean;
|
|
4906
|
-
/** 控件尺寸(默认 middle;编辑态子控件与表达式文本框统一按尺寸令牌渲染) */
|
|
4907
|
-
size?: ControlSize;
|
|
4908
|
-
/**
|
|
4909
|
-
* 只读展示模式:以「表单控件」形态展示(控件禁用、隐藏编辑/确定/取消按钮),
|
|
4910
|
-
* 供详情页等"只看不改"的场景复用同一套组件。
|
|
4911
|
-
*/
|
|
4912
|
-
viewOnly?: boolean;
|
|
4913
|
-
className?: string;
|
|
4914
|
-
/**
|
|
4915
|
-
* 校验状态上报:编辑态存在未通过校验的草稿时为 true。
|
|
4916
|
-
* 模板子字段的校验无法由外层表单 rules 感知,外层需据此在提交前阻断。
|
|
4917
|
-
*/
|
|
4918
|
-
onValidityChange?: (invalid: boolean) => void;
|
|
4919
|
-
}
|
|
4920
|
-
declare function ExpressionEditor({ id, value, onChange, valueTemplate, valueMapping, optionSources, label, required, readonly, viewOnly, size, className, onValidityChange, }: ExpressionEditorProps): React.JSX.Element | null;
|
|
4921
|
-
|
|
4922
|
-
/** 候选字段(datasource.json 结构) */
|
|
4923
|
-
interface ConditionFieldOption {
|
|
4924
|
-
featureCode: string;
|
|
4925
|
-
featureName: string;
|
|
4926
|
-
/** DATE | STRING | NUMBER | BOOLEAN */
|
|
4927
|
-
fieldType: string;
|
|
4928
|
-
recommended?: boolean;
|
|
4929
|
-
}
|
|
4930
|
-
interface FieldConditionItem {
|
|
4931
|
-
field: {
|
|
4932
|
-
value?: string;
|
|
4933
|
-
label?: string;
|
|
4934
|
-
dataType?: string;
|
|
4935
|
-
};
|
|
4936
|
-
term: {
|
|
4937
|
-
value?: string;
|
|
4938
|
-
label?: string;
|
|
4939
|
-
};
|
|
4940
|
-
value?: any;
|
|
4941
|
-
}
|
|
4942
|
-
interface FieldConditionGroup {
|
|
4943
|
-
relation: 'AND' | 'OR';
|
|
4944
|
-
children: FieldConditionItem[];
|
|
4945
|
-
}
|
|
4946
|
-
interface FieldConditionValue {
|
|
4947
|
-
relation: 'AND' | 'OR';
|
|
4948
|
-
children: FieldConditionGroup[];
|
|
4949
|
-
}
|
|
4950
|
-
interface FieldConditionProps {
|
|
4951
|
-
value?: FieldConditionValue;
|
|
4952
|
-
onChange?: (value: FieldConditionValue) => void;
|
|
4953
|
-
/** 候选字段(datasource.json 结构) */
|
|
4954
|
-
fields?: ConditionFieldOption[];
|
|
4955
|
-
disabled?: boolean;
|
|
4956
|
-
/** 控件尺寸(默认 middle;行内字段/操作符/值控件统一按尺寸令牌渲染) */
|
|
4957
|
-
size?: ControlSize;
|
|
4958
|
-
}
|
|
4959
|
-
declare function FieldCondition({ value, onChange, fields, disabled, size, }: FieldConditionProps): React.JSX.Element;
|
|
4960
|
-
|
|
4961
|
-
/**
|
|
4962
|
-
* 结构模式(对应《登录页产品结构设计》的容器关系):
|
|
4963
|
-
* - `split`(默认,01–04、12)左右分栏:比例、方向、认证区容器均可配置
|
|
4964
|
-
* - `centered`(05/07)居中认证区
|
|
4965
|
-
* - `brand-card`(06)品牌区为独立卡片 + 右侧裸表单
|
|
4966
|
-
* - `overlap`(08)品牌卡片与登录卡片局部叠加
|
|
4967
|
-
* - `backdrop`(11)整页渐变品牌背景 + 悬浮认证卡片
|
|
4968
|
-
* (10 扫码登录不在组件范围内)
|
|
4969
|
-
*/
|
|
4970
|
-
type LoginVariant = "split" | "centered" | "brand-card" | "overlap" | "backdrop";
|
|
4971
|
-
interface LoginBrandInfo {
|
|
4972
|
-
/** Logo 图片地址 */
|
|
4973
|
-
logo?: string;
|
|
4974
|
-
/** 品牌/产品名称 */
|
|
4975
|
-
name?: string;
|
|
4976
|
-
/** 品牌主标题 / Slogan */
|
|
4977
|
-
title?: string;
|
|
4978
|
-
/** 品牌副标题 / 说明 */
|
|
4979
|
-
description?: string;
|
|
4980
|
-
/** 品牌展示插画地址(窄屏不展示);缺省展示内置默认插画,传空字符串可隐藏 */
|
|
4981
|
-
illustration?: string;
|
|
4982
|
-
}
|
|
4983
|
-
interface LoginLink {
|
|
4984
|
-
text: string;
|
|
4985
|
-
/** 配置后渲染为链接直接跳转;缺省时点击触发对应 DSL 事件 */
|
|
4986
|
-
href?: string;
|
|
4987
|
-
}
|
|
4988
|
-
interface LoginProps {
|
|
4989
|
-
/** 结构模式,默认 split */
|
|
4990
|
-
layout?: LoginVariant;
|
|
4991
|
-
/**
|
|
4992
|
-
* 品牌区方向(split / brand-card / overlap / backdrop 生效;centered 无分栏不适用),
|
|
4993
|
-
* 默认 left;right 即文档 12「左表单 + 右概念展示」的镜像结构
|
|
4994
|
-
* (窄屏均为认证区在前,品牌区隐藏或后置)
|
|
4995
|
-
*/
|
|
4996
|
-
brandSide?: "left" | "right";
|
|
4997
|
-
/** 品牌区分栏占比 0–1(仅 split),默认 0.5;0.6 即文档 04 的品牌大区 */
|
|
4998
|
-
brandRatio?: number;
|
|
4999
|
-
/**
|
|
5000
|
-
* 认证区容器(split / centered 生效):
|
|
5001
|
-
* `plain` 裸表单(320–380px);`card` 常规卡片(默认,400px);
|
|
5002
|
-
* `float` 大尺寸悬浮卡片(440px + 大留白 + 强阴影,即文档 03)
|
|
5003
|
-
*/
|
|
5004
|
-
authVariant?: "plain" | "card" | "float";
|
|
5005
|
-
/** split 品牌面板是否带渐变背景,默认 true */
|
|
5006
|
-
brandPanelBackground?: boolean;
|
|
5007
|
-
/** 是否渲染默认背景装饰(圆斑/圆环/点阵/流线),默认 true */
|
|
5008
|
-
decor?: boolean;
|
|
5009
|
-
/** 品牌区配置;居中布局下仅展示 logo+name(配置了才渲染) */
|
|
5010
|
-
brand?: LoginBrandInfo;
|
|
5011
|
-
/** 认证区标题 */
|
|
5012
|
-
title?: string;
|
|
5013
|
-
/** 认证区说明 */
|
|
5014
|
-
subtitle?: string;
|
|
5015
|
-
usernameLabel?: string;
|
|
5016
|
-
usernamePlaceholder?: string;
|
|
5017
|
-
passwordLabel?: string;
|
|
5018
|
-
passwordPlaceholder?: string;
|
|
5019
|
-
/** 提交按钮文案 */
|
|
5020
|
-
submitText?: string;
|
|
5021
|
-
/** 注册入口(未配置不渲染) */
|
|
5022
|
-
registerLink?: LoginLink;
|
|
5023
|
-
/** 找回密码入口(未配置不渲染) */
|
|
5024
|
-
forgotLink?: LoginLink;
|
|
5025
|
-
/** 页脚文案(版权/协议行,未配置不渲染) */
|
|
5026
|
-
footer?: string;
|
|
5027
|
-
/**
|
|
5028
|
-
* 认证区内容插槽(DSL children 或 ReactNode):提供时替换内置账号密码表单,
|
|
5029
|
-
* 标题/副标题与辅助入口(registerLink / forgotLink)保留。
|
|
5030
|
-
* 可内嵌 Tabs 切换多种登录方式(手机验证码 / 账号密码等);
|
|
5031
|
-
* 插槽内的表单字段、校验与提交事件由使用方自行编排,Login 的 onSubmit 不再生效
|
|
5032
|
-
*/
|
|
5033
|
-
children?: ReactNode;
|
|
5034
|
-
/** 通用:根节点 class(与内置样式合并) */
|
|
5035
|
-
className?: string;
|
|
5036
|
-
/** 通用:根节点内联样式 */
|
|
5037
|
-
style?: CSSProperties;
|
|
5038
|
-
/** 校验通过后触发,参数为 { username, password };登录请求与跳转由 DSL 编排 */
|
|
5039
|
-
onSubmit?: (values: Record<string, unknown>) => void;
|
|
5040
|
-
onRegisterClick?: () => void;
|
|
5041
|
-
onForgotClick?: () => void;
|
|
5042
|
-
}
|
|
5043
|
-
/**
|
|
5044
|
-
* Login 登录业务组件(business 目录):
|
|
5045
|
-
* 品牌区 + 认证区 + 辅助入口 + 页脚的整页组合,内部复用 Form/Input/Button。
|
|
5046
|
-
* 结构模式(layout)与修饰配置(方向/比例/卡片样式/背景/装饰)正交组合;
|
|
5047
|
-
* 认证区内容支持 children 插槽替换内置表单(可内嵌 Tabs 切换多种登录方式);
|
|
5048
|
-
* 样式全部走语义令牌(深浅色/换肤自适应);文案缺省走 i18n(pactor.login.*),
|
|
5049
|
-
* 同名 props 优先。组件不内置登录请求。
|
|
5050
|
-
*/
|
|
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;
|
|
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
|
-
|
|
5574
|
-
type ConditionOpt = 'GREATER' | 'GREATER_EQUAL' | 'LESS_EQUAL' | 'LESS' | 'EQUAL' | 'IN' | 'NOT_IN' | 'UNEQUAL' | 'LIKE' | 'NULL' | 'HASVAL' | 'NOTNULL' | 'BETWEEN';
|
|
5575
|
-
interface Condition {
|
|
5576
|
-
key: number;
|
|
5577
|
-
opt: ConditionOpt;
|
|
5578
|
-
value?: string | number | (string | number)[];
|
|
5579
|
-
score?: number;
|
|
5580
|
-
}
|
|
5581
|
-
interface RuleConfigValue {
|
|
5582
|
-
score?: number;
|
|
5583
|
-
ruleConditions: Condition[];
|
|
5584
|
-
}
|
|
5585
|
-
interface RuleConfigProps {
|
|
5586
|
-
value?: RuleConfigValue;
|
|
5587
|
-
onChange?: (value: RuleConfigValue) => void;
|
|
5588
|
-
disabled?: boolean;
|
|
5589
|
-
/** 控件尺寸(默认 middle;权重/取值/评分输入与操作符下拉统一按尺寸令牌渲染) */
|
|
5590
|
-
size?: ControlSize;
|
|
5591
|
-
}
|
|
5592
|
-
declare function RuleConfig({ value, onChange, disabled, size }: RuleConfigProps): React.JSX.Element;
|
|
5593
|
-
|
|
5594
|
-
interface RuleExpressionOption {
|
|
5595
|
-
label: string;
|
|
5596
|
-
value: string;
|
|
5597
|
-
}
|
|
5598
|
-
/** 组件值:expression 为表达式串(其中字段使用选项的 value),expressionLabel 为 label 组成的串,sourceField 为所有选中特征字段的 value 数组 */
|
|
5599
|
-
interface RuleExpressionValue {
|
|
5600
|
-
expression: string;
|
|
5601
|
-
expressionLabel: string;
|
|
5602
|
-
sourceField: string[];
|
|
5603
|
-
}
|
|
5604
|
-
interface RuleExpressionProps {
|
|
5605
|
-
/** 特征字段候选(label 用于匹配与展示,value 写入 sourceField) */
|
|
5606
|
-
options?: RuleExpressionOption[];
|
|
5607
|
-
value?: RuleExpressionValue | string | null;
|
|
5608
|
-
onChange?: (value: RuleExpressionValue) => void;
|
|
5609
|
-
placeholder?: string;
|
|
5610
|
-
disabled?: boolean;
|
|
5611
|
-
/** 控件尺寸(默认 middle;影响编辑区内边距与字号,高度仍随内容增长) */
|
|
5612
|
-
size?: ControlSize;
|
|
5613
|
-
id?: string;
|
|
5614
|
-
className?: string;
|
|
5615
|
-
}
|
|
5616
|
-
/**
|
|
5617
|
-
* 规则表达式编辑器:contentEditable 富文本输入框,高度随内容增长。
|
|
5618
|
-
* 选中的字段渲染为 contentEditable=false 的整体 chip,
|
|
5619
|
-
* 光标可用鼠标点击或 ←/→ 在任意位置自由定位(chip 作为原子单位越过);
|
|
5620
|
-
* 输入时按光标前的尾部词匹配特征字段 label 候选,↑/↓ 选择、回车选中;
|
|
5621
|
-
* chip 旁的退格/Delete 整体删除 chip;未匹配的输入保留为字符串。
|
|
5622
|
-
*/
|
|
5623
|
-
declare function RuleExpression({ options, value, onChange, placeholder, disabled, size, id, className, }: RuleExpressionProps): React.JSX.Element;
|
|
5624
|
-
|
|
5625
|
-
interface ScriptFunctionParameter {
|
|
5626
|
-
name: string;
|
|
5627
|
-
type?: string;
|
|
5628
|
-
description?: string;
|
|
5629
|
-
}
|
|
5630
|
-
/** 自定义函数定义:联想时以 snippet 形式补全(如 SUM(${1:field})) */
|
|
5631
|
-
interface ScriptFunctionDef {
|
|
5632
|
-
name: string;
|
|
5633
|
-
description?: string;
|
|
5634
|
-
parameters?: ScriptFunctionParameter[];
|
|
5635
|
-
}
|
|
5636
|
-
/** 自定义变量定义:联想时直接补全变量名 */
|
|
5637
|
-
interface ScriptVariableDef {
|
|
5638
|
-
name: string;
|
|
5639
|
-
type?: string;
|
|
5640
|
-
description?: string;
|
|
5641
|
-
}
|
|
5642
|
-
interface ScriptEditorProps {
|
|
5643
|
-
id?: string;
|
|
5644
|
-
value?: string;
|
|
5645
|
-
onChange?: (value: string) => void;
|
|
5646
|
-
placeholder?: string;
|
|
5647
|
-
/** 语法模式,默认 python;未知值回退为纯文本 */
|
|
5648
|
-
language?: string;
|
|
5649
|
-
functions?: ScriptFunctionDef[];
|
|
5650
|
-
variables?: ScriptVariableDef[];
|
|
5651
|
-
readonly?: boolean;
|
|
5652
|
-
/** 编辑器高度(px),默认 160 */
|
|
5653
|
-
height?: number;
|
|
5654
|
-
className?: string;
|
|
5655
|
-
}
|
|
5656
|
-
declare function ScriptEditor({ id, value, onChange, placeholder, language, functions, variables, readonly, height, className, }: ScriptEditorProps): React.JSX.Element;
|
|
5657
|
-
|
|
5658
|
-
interface SearchableSelectProps {
|
|
5659
|
-
value?: string | string[];
|
|
5660
|
-
/** 单选清除时回传 ""(不用 undefined:RHF 会移除 undefined 并回退到 defaultValue) */
|
|
5661
|
-
onChange?: (value: string | string[] | undefined) => void;
|
|
5662
|
-
options: Array<{
|
|
5663
|
-
label: string;
|
|
5664
|
-
value: string;
|
|
5665
|
-
}>;
|
|
5666
|
-
/** 未选值时的占位文案,缺省「请选择」 */
|
|
5667
|
-
placeholder?: string;
|
|
5668
|
-
/** 搜索框占位文案,缺省「搜索…」 */
|
|
5669
|
-
searchPlaceholder?: string;
|
|
5670
|
-
/** 过滤无匹配的空态文案,缺省「无匹配结果」 */
|
|
5671
|
-
emptyText?: string;
|
|
5672
|
-
disabled?: boolean;
|
|
5673
|
-
/** hover 清除(缺省开启,传 false 关闭;仅单选):有选中值时悬停触发器,上下箭头替换为 ×,点击清空(回传 "") */
|
|
5674
|
-
allowClear?: boolean;
|
|
5675
|
-
/** 控件尺寸(默认 middle,即现行 min-h-9 尺寸;与基础表单控件同一尺寸令牌) */
|
|
5676
|
-
size?: ControlSize;
|
|
5677
|
-
className?: string;
|
|
5678
|
-
id?: string;
|
|
5679
|
-
/** Whether to show the search input. When undefined, auto-show if options.length > 8. */
|
|
5680
|
-
showSearch?: boolean;
|
|
5681
|
-
/** Whether to allow multiple selection. */
|
|
5682
|
-
multiple?: boolean;
|
|
5683
|
-
/** 下拉选项完整显示:不截断字符,弹层宽度自适应内容 */
|
|
5684
|
-
fullOptionText?: boolean;
|
|
5685
|
-
/** 自定义下拉列表(CommandList)样式,如覆盖 max-h 限制 */
|
|
5686
|
-
listClassName?: string;
|
|
5687
|
-
}
|
|
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;
|
|
5740
|
-
|
|
5741
|
-
/**
|
|
5742
|
-
* 内置组件表:DSL 类型名 → 组件适配器。
|
|
5743
|
-
* 类型名集合即 spec: builtin-components 的内置组件清单;
|
|
5744
|
-
* 容器组件(Tabs / Table)经 `useRenderer().renderChildren` 渲染 DSL 子树。
|
|
5745
|
-
*/
|
|
5746
|
-
declare const builtinComponents: {
|
|
5747
|
-
readonly Page: typeof Page;
|
|
5748
|
-
readonly Grid: typeof Grid;
|
|
5749
|
-
readonly Row: typeof Row;
|
|
5750
|
-
readonly Col: typeof Col;
|
|
5751
|
-
readonly For: {
|
|
5752
|
-
readonly component: typeof For;
|
|
5753
|
-
readonly withScope: true;
|
|
5754
|
-
};
|
|
5755
|
-
readonly Flex: typeof Flex;
|
|
5756
|
-
readonly Card: typeof Card;
|
|
5757
|
-
readonly Button: typeof Button;
|
|
5758
|
-
readonly Alert: typeof Alert;
|
|
5759
|
-
readonly Statistic: typeof Statistic;
|
|
5760
|
-
readonly Tabs: typeof Tabs;
|
|
5761
|
-
readonly Table: typeof Table;
|
|
5762
|
-
readonly Form: typeof Form;
|
|
5763
|
-
readonly Input: typeof Input;
|
|
5764
|
-
readonly NumberInput: typeof NumberInput;
|
|
5765
|
-
readonly Select: typeof Select;
|
|
5766
|
-
readonly Layout: {
|
|
5767
|
-
readonly component: typeof Layout;
|
|
5768
|
-
readonly withScope: true;
|
|
5769
|
-
};
|
|
5770
|
-
readonly Header: typeof Header;
|
|
5771
|
-
readonly Sider: typeof Sider;
|
|
5772
|
-
readonly Content: typeof Content;
|
|
5773
|
-
readonly Footer: typeof Footer;
|
|
5774
|
-
readonly Menu: typeof Menu;
|
|
5775
|
-
readonly Link: typeof Link;
|
|
5776
|
-
readonly Text: typeof Text;
|
|
5777
|
-
readonly Badge: typeof Badge;
|
|
5778
|
-
readonly Avatar: typeof Avatar;
|
|
5779
|
-
readonly Skeleton: typeof Skeleton;
|
|
5780
|
-
readonly Separator: typeof Separator;
|
|
5781
|
-
readonly Kbd: typeof Kbd;
|
|
5782
|
-
readonly Spinner: typeof Spinner;
|
|
5783
|
-
readonly Empty: typeof Empty;
|
|
5784
|
-
readonly AspectRatio: typeof AspectRatio;
|
|
5785
|
-
readonly Progress: typeof Progress;
|
|
5786
|
-
readonly Textarea: typeof Textarea;
|
|
5787
|
-
readonly Checkbox: typeof Checkbox;
|
|
5788
|
-
readonly ChipFilter: typeof ChipFilter;
|
|
5789
|
-
readonly ChipNode: typeof ChipNode;
|
|
5790
|
-
readonly RadioGroup: typeof RadioGroup;
|
|
5791
|
-
readonly Switch: typeof Switch;
|
|
5792
|
-
readonly Slider: typeof Slider;
|
|
5793
|
-
readonly Label: typeof Label;
|
|
5794
|
-
readonly Field: typeof Field;
|
|
5795
|
-
readonly ChatInput: typeof ChatInput;
|
|
5796
|
-
readonly Breadcrumb: typeof Breadcrumb;
|
|
5797
|
-
readonly Pagination: typeof Pagination;
|
|
5798
|
-
readonly Menubar: typeof Menubar;
|
|
5799
|
-
readonly NavigationMenu: typeof NavigationMenu;
|
|
5800
|
-
readonly DropdownMenu: typeof DropdownMenu;
|
|
5801
|
-
readonly ContextMenu: typeof ContextMenu;
|
|
5802
|
-
readonly Dialog: typeof Dialog;
|
|
5803
|
-
readonly AlertDialog: typeof AlertDialog;
|
|
5804
|
-
readonly Drawer: typeof Drawer;
|
|
5805
|
-
readonly Sheet: typeof Sheet;
|
|
5806
|
-
readonly Popover: typeof Popover;
|
|
5807
|
-
readonly Sonner: typeof Sonner;
|
|
5808
|
-
readonly Accordion: typeof Accordion;
|
|
5809
|
-
readonly Collapsible: typeof Collapsible;
|
|
5810
|
-
readonly Tooltip: typeof Tooltip;
|
|
5811
|
-
readonly HoverCard: typeof HoverCard;
|
|
5812
|
-
readonly Calendar: typeof Calendar;
|
|
5813
|
-
readonly DatePicker: typeof DatePicker;
|
|
5814
|
-
readonly InputOTP: typeof InputOTP;
|
|
5815
|
-
readonly Combobox: typeof Combobox;
|
|
5816
|
-
readonly Carousel: typeof Carousel;
|
|
5817
|
-
readonly Command: typeof Command;
|
|
5818
|
-
readonly Resizable: typeof Resizable;
|
|
5819
|
-
readonly ScrollArea: typeof ScrollArea;
|
|
5820
|
-
readonly Toggle: typeof Toggle;
|
|
5821
|
-
readonly ToggleGroup: typeof ToggleGroup;
|
|
5822
|
-
readonly ButtonGroup: typeof ButtonGroup;
|
|
5823
|
-
readonly InputGroup: typeof InputGroup;
|
|
5824
|
-
readonly Item: typeof Item;
|
|
5825
|
-
readonly Typography: typeof Typography;
|
|
5826
|
-
readonly Sidebar: typeof Sidebar;
|
|
5827
|
-
readonly DataTable: typeof DataTable;
|
|
5828
|
-
readonly Icon: typeof Icon;
|
|
5829
|
-
readonly Rate: typeof Rate;
|
|
5830
|
-
readonly TimePicker: typeof TimePicker;
|
|
5831
|
-
readonly ColorPicker: typeof ColorPicker;
|
|
5832
|
-
readonly Upload: typeof Upload;
|
|
5833
|
-
readonly TreeSelect: typeof TreeSelect;
|
|
5834
|
-
readonly Cascader: typeof Cascader;
|
|
5835
|
-
readonly Transfer: typeof Transfer;
|
|
5836
|
-
readonly Mentions: typeof Mentions;
|
|
5837
|
-
readonly List: typeof List;
|
|
5838
|
-
readonly Tree: typeof Tree;
|
|
5839
|
-
readonly Descriptions: typeof Descriptions;
|
|
5840
|
-
readonly Timeline: typeof Timeline;
|
|
5841
|
-
readonly Image: typeof Image;
|
|
5842
|
-
readonly QRCode: typeof QRCode;
|
|
5843
|
-
readonly Segmented: typeof Segmented;
|
|
5844
|
-
readonly Message: typeof Message;
|
|
5845
|
-
readonly Notification: typeof Notification;
|
|
5846
|
-
readonly Popconfirm: typeof Popconfirm;
|
|
5847
|
-
readonly Result: typeof Result;
|
|
5848
|
-
readonly LoadingOverlay: typeof LoadingOverlay;
|
|
5849
|
-
readonly Watermark: typeof Watermark;
|
|
5850
|
-
readonly Tour: typeof Tour;
|
|
5851
|
-
readonly Tag: typeof Tag;
|
|
5852
|
-
readonly Status: typeof Status;
|
|
5853
|
-
readonly Space: typeof Space;
|
|
5854
|
-
readonly Container: typeof Container;
|
|
5855
|
-
readonly Steps: typeof Steps;
|
|
5856
|
-
readonly Anchor: typeof Anchor;
|
|
5857
|
-
readonly BackTop: typeof BackTop;
|
|
5858
|
-
readonly Affix: typeof Affix;
|
|
5859
|
-
readonly ImageViewer: typeof ImageViewer;
|
|
5860
|
-
readonly Gallery: typeof Gallery;
|
|
5861
|
-
readonly Video: typeof Video;
|
|
5862
|
-
readonly Audio: typeof Audio;
|
|
5863
|
-
readonly FilePreview: typeof FilePreview;
|
|
5864
|
-
readonly DocumentPreview: typeof DocumentPreview;
|
|
5865
|
-
readonly RichText: typeof RichText;
|
|
5866
|
-
readonly Markdown: typeof MarkdownDslComponent;
|
|
5867
|
-
readonly CodeBlock: typeof CodeBlock;
|
|
5868
|
-
readonly DiffViewer: typeof DiffViewer;
|
|
5869
|
-
readonly JSONViewer: typeof JSONViewer;
|
|
5870
|
-
readonly Bubble: typeof Bubble;
|
|
5871
|
-
readonly Sender: typeof Sender;
|
|
5872
|
-
readonly Thinking: typeof Thinking;
|
|
5873
|
-
readonly AgentStatus: typeof AgentStatus;
|
|
5874
|
-
readonly StreamingText: typeof StreamingText;
|
|
5875
|
-
readonly Suggestion: typeof Suggestion;
|
|
5876
|
-
readonly Prompt: typeof Prompt;
|
|
5877
|
-
readonly Welcome: typeof Welcome;
|
|
5878
|
-
readonly Citation: typeof Citation;
|
|
5879
|
-
readonly Attachment: typeof Attachment;
|
|
5880
|
-
readonly ToolCall: typeof ToolCall;
|
|
5881
|
-
readonly ChatMessage: typeof ChatMessage;
|
|
5882
|
-
readonly ChatPage: typeof ChatPage;
|
|
5883
|
-
readonly ArtifactPanel: typeof ArtifactPanel;
|
|
5884
|
-
readonly MessageList: typeof MessageList;
|
|
5885
|
-
readonly Composer: typeof Composer;
|
|
5886
|
-
readonly ConversationList: typeof ConversationList;
|
|
5887
|
-
readonly StepsPanel: typeof StepsPanel;
|
|
5888
|
-
readonly MetricCard: typeof MetricCard;
|
|
5889
|
-
readonly LineChart: typeof LineChart;
|
|
5890
|
-
readonly ColumnChart: typeof ColumnChart;
|
|
5891
|
-
readonly BarChart: typeof BarChart;
|
|
5892
|
-
readonly AreaChart: typeof AreaChart;
|
|
5893
|
-
readonly PieChart: typeof PieChart;
|
|
5894
|
-
readonly DonutChart: typeof DonutChart;
|
|
5895
|
-
readonly ScatterChart: typeof ScatterChart;
|
|
5896
|
-
readonly BubbleChart: typeof BubbleChart;
|
|
5897
|
-
readonly RadarChart: typeof RadarChart;
|
|
5898
|
-
readonly FunnelChart: typeof FunnelChart;
|
|
5899
|
-
readonly GaugeChart: typeof GaugeChart;
|
|
5900
|
-
readonly Heatmap: typeof Heatmap;
|
|
5901
|
-
readonly TreeChart: typeof TreeChart;
|
|
5902
|
-
readonly SankeyChart: typeof SankeyChart;
|
|
5903
|
-
readonly MapChart: typeof MapChart;
|
|
5904
|
-
readonly ComposedChart: typeof ComposedChart;
|
|
5905
|
-
readonly Login: typeof Login;
|
|
5906
|
-
readonly EntityCard: typeof EntityCard;
|
|
5907
|
-
readonly CardList: typeof CardList;
|
|
5908
|
-
readonly RecordingPage: typeof RecordingPage;
|
|
5909
|
-
readonly SiteFooter: typeof SiteFooter;
|
|
5910
|
-
readonly SearchableSelect: typeof SearchableSelect;
|
|
5911
|
-
readonly FieldCondition: typeof FieldCondition;
|
|
5912
|
-
readonly ExpressionEditor: typeof ExpressionEditor;
|
|
5913
|
-
readonly RuleConfig: typeof RuleConfig;
|
|
5914
|
-
readonly RuleExpression: typeof RuleExpression;
|
|
5915
|
-
readonly ScriptEditor: typeof ScriptEditor;
|
|
5916
|
-
};
|
|
5917
|
-
/** 把全部 V1 内置组件按 DSL 类型名注册到给定 ComponentRegistry */
|
|
5918
|
-
declare function registerBuiltinComponents(registry: ComponentRegistry): void;
|
|
5919
|
-
/** 创建并返回注册了全部 V1 内置组件的新 ComponentRegistry */
|
|
5920
|
-
declare function createComponentRegistry(): ComponentRegistry;
|
|
5921
|
-
|
|
5922
|
-
/**
|
|
5923
|
-
* icon rail 提示(Sidebar 折叠态:Sidebar items 与 Menu 共用):
|
|
5924
|
-
* 触发元素本身经 render 合并为 TooltipTrigger(aria/ref/事件不丢失),
|
|
5925
|
-
* 提示浮层显示在图标右侧;仅折叠态使用,展开态无原生 title 干扰。
|
|
5926
|
-
*/
|
|
5927
|
-
declare function RailTooltip({ label, children, }: {
|
|
5928
|
-
label: string;
|
|
5929
|
-
children: ReactElement;
|
|
5930
|
-
}): ReactNode;
|
|
5931
|
-
|
|
5932
|
-
/**
|
|
5933
|
-
* Form 容器上下文(shadcn kit):Form 组件维护受控 values / 校验错误
|
|
5934
|
-
* 并经 React Context 下发;Input / Select 据此判断自身是否在表单内。
|
|
5935
|
-
* 不持有 UI 库表单实例,values 由框架侧受控管理(去原语化,见 design D3)。
|
|
5936
|
-
*/
|
|
5937
|
-
interface FormContextValue {
|
|
5938
|
-
/** 标记后代字段处于 Form 容器内 */
|
|
5939
|
-
inForm: true;
|
|
5940
|
-
/** 表单布局(表单项排布 class 由字段侧按此生成) */
|
|
5941
|
-
layout: 'horizontal' | 'vertical' | 'inline';
|
|
5942
|
-
/** 当前表单 values(受控) */
|
|
5943
|
-
values: Record<string, unknown>;
|
|
5944
|
-
/** 校验错误(字段名 → 错误文案) */
|
|
5945
|
-
errors: Record<string, string>;
|
|
5946
|
-
/** 更新字段值(受控写入并清除该字段错误) */
|
|
5947
|
-
setValue(name: string, value: unknown): void;
|
|
5948
|
-
/** 批量写入字段值(form.setValues 联动桥):不触发 onValuesChange 与校验 */
|
|
5949
|
-
setValues(values: Record<string, unknown>): void;
|
|
5950
|
-
/**
|
|
5951
|
-
* 注册字段校验规则(提交时统一校验);
|
|
5952
|
-
* `initialValue` 为字段级初始值(value prop),仅在该字段首次注册时合并
|
|
5953
|
-
* 进 values(字段级优先于 Form initialValues;已有合并结果不覆盖)
|
|
5954
|
-
*/
|
|
5955
|
-
registerField(name: string, rules?: FieldRule[], initialValue?: unknown): void;
|
|
5956
|
-
/** 注销字段 */
|
|
5957
|
-
unregisterField(name: string): void;
|
|
5958
|
-
}
|
|
5959
|
-
/** 在字段组件内探测 Form 上下文;不在 Form 内时返回 null */
|
|
5960
|
-
declare function useFormContext(): FormContextValue | null;
|
|
3566
|
+
declare function ClearHoverButton({ label, onClear, className }: ClearHoverButtonProps): React.JSX.Element;
|
|
5961
3567
|
|
|
5962
|
-
export { Accordion, type AccordionItemData, type AccordionProps, Affix, type AffixProps,
|
|
3568
|
+
export { Accordion, type AccordionItemData, type AccordionProps, Affix, type AffixProps, Alert, AlertDialog, type AlertDialogProps, type AlertProps, type AlertVariant, Anchor, type AnchorItemData, type AnchorProps, AspectRatio, type AspectRatioProps, Audio, type AudioProps, Avatar, type AvatarProps, BackTop, type BackTopProps, Badge, type BadgeProps, type BadgeVariant, Breadcrumb, type BreadcrumbItemData, type BreadcrumbProps, 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, type CardProps, Carousel, type CarouselImage, type CarouselItemData, type CarouselProps, Cascader, type CascaderOption, type CascaderProps, ChatInput, type ChatInputProps, Checkbox, type CheckboxProps, ChipFilter, type ChipFilterItem, type ChipFilterProps, ChipNode, type ChipNodeProps, ClearHoverButton, type ClearHoverButtonProps, CodeBlock, type CodeBlockProps, Col, type ColBreakpoint, type ColProps, type ColResponsiveValue, Collapsible, type CollapsibleProps, ColorPicker, type ColorPickerProps, Combobox, type ComboboxOption, type ComboboxProps, Command, type CommandGroupData, type CommandItemData, type CommandProps, Container, type ContainerProps, type ContainerSize, Content, type ContentProps, ContextMenu, type ContextMenuItemData, type ContextMenuProps, type ControlSize, 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, Drawer, type DrawerPlacement, type DrawerProps, DropdownMenu, type DropdownMenuItemData, type DropdownMenuProps, Empty, type EmptyProps, Field, type FieldProps, type FieldRule, FilePreview, type FilePreviewKind, type FilePreviewProps, Flex, type FlexProps, Footer, type FooterProps, For, type ForProps, Form, type FormContextValue, type FormProps, Gallery, type GalleryItemData, type GalleryProps, Grid, type GridProps, Header, type HeaderBrandPosition, type HeaderDropdown, type HeaderDropdownItem, type HeaderLocale, type HeaderMenuItem, type HeaderProps, type HeaderTheme, type HeaderUser, type HeaderUserItem, 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, Link, type LinkProps, List, type ListItemData, type ListProps, LoadingOverlay, type LoadingOverlayProps, type MentionOption, Mentions, type MentionsProps, Menu, type MenuItem, type MenuProps, Menubar, type MenubarLeafItem, type MenubarMenuData, type MenubarProps, Message, type MessageProps, NavigationMenu, type NavigationMenuChildItem, type NavigationMenuItemData, type NavigationMenuProps, Notification, type NotificationProps, NumberInput, type NumberInputProps, Page, type PageProps, Pagination, type PaginationProps, Popconfirm, type PopconfirmProps, Popover, type PopoverProps, Progress, type ProgressProps, QRCode, type QRCodeProps, 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, ScrollArea, type ScrollAreaProps, Segmented, type SegmentedOption, type SegmentedProps, Select, type SelectOption, type SelectProps, 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, type StepsProps, 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, TimePicker, type TimePickerProps, Timeline, type TimelineItemData, type TimelineProps, Toggle, ToggleGroup, type ToggleGroupOption, type ToggleGroupProps, type ToggleProps, Tooltip, type TooltipProps, Tour, type TourProps, type TourStep, Transfer, type TransferOption, type TransferProps, Tree, 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, builtinComponents, createComponentRegistry, diffLines, inferKind, normalizeIconName, registerBuiltinComponents, useFormContext, useOptionalRenderer, useSidebarDrawer };
|