@ibiz-template-plugin/ai-chat 0.0.118 → 0.0.120
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/index.es.js +11890 -11215
- package/dist/index.legacy.js +2 -2
- package/dist/style.css +2 -2
- package/dist/types/components/chat-container/chat-container.d.ts +25 -8
- package/dist/types/components/chat-net-disk/file-new-panel/file-new-panel.d.ts +34 -0
- package/dist/types/components/chat-search/chat-search.d.ts +4 -0
- package/dist/types/components/common/breadcrumb/breadcrumb.d.ts +2 -9
- package/dist/types/components/common/index.d.ts +2 -2
- package/dist/types/components/common/{lazy-list-tree/lazy-list-tree.d.ts → lazy-level-list/lazy-level-list.d.ts} +17 -15
- package/dist/types/components/common/lazy-tree/lazy-tree.d.ts +46 -11
- package/dist/types/components/flat-chat-container/flat-chat-container.d.ts +54 -0
- package/dist/types/components/popup/popup.d.ts +2 -1
- package/dist/types/controller/ai-action-panel/ai-action-panel.controller.d.ts +0 -8
- package/dist/types/controller/file-system/file-system.controller.d.ts +26 -3
- package/dist/types/icons/index.d.ts +1 -1
- package/dist/types/icons/move-file-svg.d.ts +1 -0
- package/dist/types/interface/i-file-system-options/i-file-system-options.d.ts +18 -0
- package/dist/types/interface/i-remote-resource/i-remote-resource.d.ts +20 -0
- package/dist/types/locale/en/index.d.ts +7 -2
- package/dist/types/locale/zh-CN/index.d.ts +7 -2
- package/docs/msglist-memory-optimization.md +90 -0
- package/package.json +1 -1
|
@@ -166,6 +166,10 @@ export declare class ChatContainer extends Component<ChatContainerProps, ChatCon
|
|
|
166
166
|
* @memberof ChatContainer
|
|
167
167
|
*/
|
|
168
168
|
private interactable;
|
|
169
|
+
/**
|
|
170
|
+
* resize 节流句柄
|
|
171
|
+
*/
|
|
172
|
+
private resizeRafId;
|
|
169
173
|
/**
|
|
170
174
|
* 消息完成事件回调
|
|
171
175
|
*/
|
|
@@ -174,6 +178,19 @@ export declare class ChatContainer extends Component<ChatContainerProps, ChatCon
|
|
|
174
178
|
* 最小化状态变化事件回调
|
|
175
179
|
*/
|
|
176
180
|
private onMinimizeChangeHandler;
|
|
181
|
+
/**
|
|
182
|
+
* 浏览器窗口尺寸变化处理
|
|
183
|
+
* - 触发节流后统一重算:容器最小宽高、左侧栏宽度、右侧面板宽度
|
|
184
|
+
*/
|
|
185
|
+
private handleWindowResize;
|
|
186
|
+
/**
|
|
187
|
+
* 浏览器窗口尺寸变化后的重算逻辑
|
|
188
|
+
* 1. 校正窗口自身尺寸,不低于最小宽高,且不超出可视区域
|
|
189
|
+
* 2. 收敛左侧栏宽度到 [左最小宽, 容器宽 - 中最小宽 - 右占用]
|
|
190
|
+
* 3. 收敛右侧面板宽度到 [右最小宽, 容器宽 - 中最小宽 - 左占用]
|
|
191
|
+
* 4. 同步输入区高度,保证消息区最小高
|
|
192
|
+
*/
|
|
193
|
+
private recalcOnResize;
|
|
177
194
|
listener(): void;
|
|
178
195
|
componentDidUpdate(): void;
|
|
179
196
|
/**
|
|
@@ -382,6 +399,7 @@ export declare class ChatContainer extends Component<ChatContainerProps, ChatCon
|
|
|
382
399
|
getRightWidth(): string;
|
|
383
400
|
/**
|
|
384
401
|
* @description 获取宽度
|
|
402
|
+
* @private
|
|
385
403
|
* @returns {*} {{
|
|
386
404
|
* centreMinWidth: number;
|
|
387
405
|
* leftWidth: number;
|
|
@@ -391,13 +409,7 @@ export declare class ChatContainer extends Component<ChatContainerProps, ChatCon
|
|
|
391
409
|
* }}
|
|
392
410
|
* @memberof ChatContainer
|
|
393
411
|
*/
|
|
394
|
-
getWidth
|
|
395
|
-
centreMinWidth: number;
|
|
396
|
-
leftWidth: number;
|
|
397
|
-
rightWidth: number;
|
|
398
|
-
leftMinWidth: number;
|
|
399
|
-
rightMinWidth: number;
|
|
400
|
-
};
|
|
412
|
+
private getWidth;
|
|
401
413
|
/**
|
|
402
414
|
* 侧栏宽度拖动开始
|
|
403
415
|
*/
|
|
@@ -411,7 +423,7 @@ export declare class ChatContainer extends Component<ChatContainerProps, ChatCon
|
|
|
411
423
|
*/
|
|
412
424
|
handleSidebarResizeEnd: () => void;
|
|
413
425
|
/**
|
|
414
|
-
* 将侧栏宽度校正到合理区间 [
|
|
426
|
+
* 将侧栏宽度校正到合理区间 [最小宽, 容器宽度-右侧最小宽]
|
|
415
427
|
*/
|
|
416
428
|
clampSidebarWidth(width: number): number;
|
|
417
429
|
/**
|
|
@@ -460,6 +472,11 @@ export declare class ChatContainer extends Component<ChatContainerProps, ChatCon
|
|
|
460
472
|
* 提交拖动边框后的输入区高度(持久化到状态与本地缓存)
|
|
461
473
|
*/
|
|
462
474
|
commitInputHeight: () => void;
|
|
475
|
+
/**
|
|
476
|
+
* 将面板宽度矫正到合理区间 [最小宽, 容器宽度-左侧最小宽]
|
|
477
|
+
* @param width
|
|
478
|
+
*/
|
|
479
|
+
clampPanelWidth(width: number): void;
|
|
463
480
|
/**
|
|
464
481
|
* 操作区面板宽度拖动开始
|
|
465
482
|
*/
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { FileSystemController } from '../../../controller';
|
|
2
|
+
import { LazyTreeNode } from '../../common';
|
|
3
|
+
|
|
4
|
+
interface FileNewPanelProps {
|
|
5
|
+
/**
|
|
6
|
+
* @description 父数据
|
|
7
|
+
* @type {IFile}
|
|
8
|
+
* @memberof FileNewPanelProps
|
|
9
|
+
*/
|
|
10
|
+
parent: LazyTreeNode;
|
|
11
|
+
/**
|
|
12
|
+
* @description 系统文件控制器
|
|
13
|
+
* @type {FileSystemController}
|
|
14
|
+
* @memberof FileNewPanelProps
|
|
15
|
+
*/
|
|
16
|
+
controller: FileSystemController;
|
|
17
|
+
/**
|
|
18
|
+
* @description 关闭
|
|
19
|
+
* @memberof FileNewPanelProps
|
|
20
|
+
*/
|
|
21
|
+
onClose?: (params?: {
|
|
22
|
+
ok: boolean;
|
|
23
|
+
data: LazyTreeNode;
|
|
24
|
+
}) => void;
|
|
25
|
+
/**
|
|
26
|
+
* @description 后缀名
|
|
27
|
+
* @default '.txt'
|
|
28
|
+
* @type {string}
|
|
29
|
+
* @memberof FileNewPanelProps
|
|
30
|
+
*/
|
|
31
|
+
suffixName?: string;
|
|
32
|
+
}
|
|
33
|
+
export declare const FileNewPanel: (props: FileNewPanelProps) => import("preact").JSX.Element;
|
|
34
|
+
export {};
|
|
@@ -1,21 +1,14 @@
|
|
|
1
1
|
|
|
2
2
|
interface BreadcrumbProps {
|
|
3
3
|
/**
|
|
4
|
-
*
|
|
4
|
+
* 当前路径(根 -> 当前层)
|
|
5
5
|
*/
|
|
6
6
|
path: {
|
|
7
7
|
id: string;
|
|
8
8
|
label: string;
|
|
9
9
|
}[];
|
|
10
10
|
/**
|
|
11
|
-
*
|
|
12
|
-
*/
|
|
13
|
-
root?: {
|
|
14
|
-
id: string;
|
|
15
|
-
label: string;
|
|
16
|
-
};
|
|
17
|
-
/**
|
|
18
|
-
* 点击某一层跳转,-1 表示回到根
|
|
11
|
+
* 点击某一层跳转
|
|
19
12
|
*/
|
|
20
13
|
onJump: (index: number) => void;
|
|
21
14
|
}
|
|
@@ -5,10 +5,10 @@ export { Slider } from './slider/slider';
|
|
|
5
5
|
export { Switch } from './switch/switch';
|
|
6
6
|
export { Actions, type IAction } from './actions/actions';
|
|
7
7
|
export { Breadcrumb } from './breadcrumb/breadcrumb';
|
|
8
|
-
export {
|
|
8
|
+
export { LazyLevelList, type LazyLevelListRef, type LazyLevelListMode, } from './lazy-level-list/lazy-level-list';
|
|
9
9
|
export { ContextMenu, type IContextMenuAction, } from './context-menu/context-menu';
|
|
10
10
|
export { Drawer } from './drawer/drawer';
|
|
11
|
-
export { LazyTree, type LazyTreeRef, type LazyTreeNode, } from './lazy-tree/lazy-tree';
|
|
11
|
+
export { LazyTree, type LazyTreeRef, type LazyTreeNode, type INodeEditInfo, } from './lazy-tree/lazy-tree';
|
|
12
12
|
export { Loading } from './loading/loading';
|
|
13
13
|
export { InlineEditor } from './inline-editor/inline-editor';
|
|
14
14
|
export { Modal } from './modal/modal';
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { LazyTreeNode } from '../lazy-tree/lazy-tree';
|
|
1
|
+
import { INodeEditInfo, LazyTreeNode } from '../lazy-tree/lazy-tree';
|
|
2
2
|
import { IAction } from '../actions/actions';
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
export type LazyLevelListMode = 'list' | 'card';
|
|
5
|
+
interface LazyLevelListProps {
|
|
5
6
|
/**
|
|
6
7
|
* 根节点数据
|
|
7
8
|
*/
|
|
@@ -33,6 +34,7 @@ interface LazyListTreeProps {
|
|
|
33
34
|
path?: LazyTreeNode[];
|
|
34
35
|
/**
|
|
35
36
|
* 是否显示搜索框
|
|
37
|
+
* @default true
|
|
36
38
|
*/
|
|
37
39
|
showSearch?: boolean;
|
|
38
40
|
/**
|
|
@@ -41,10 +43,12 @@ interface LazyListTreeProps {
|
|
|
41
43
|
defaultCheckedKeys?: string[];
|
|
42
44
|
/**
|
|
43
45
|
* 高亮选中
|
|
46
|
+
* @default true
|
|
44
47
|
*/
|
|
45
48
|
highlight?: boolean;
|
|
46
49
|
/**
|
|
47
50
|
* 标识分隔符
|
|
51
|
+
* @default '/'
|
|
48
52
|
*/
|
|
49
53
|
separator?: string;
|
|
50
54
|
/**
|
|
@@ -53,6 +57,7 @@ interface LazyListTreeProps {
|
|
|
53
57
|
filter?: string;
|
|
54
58
|
/**
|
|
55
59
|
* 是否可拖拽
|
|
60
|
+
* @default false
|
|
56
61
|
*/
|
|
57
62
|
draggable?: boolean;
|
|
58
63
|
/**
|
|
@@ -60,38 +65,35 @@ interface LazyListTreeProps {
|
|
|
60
65
|
*/
|
|
61
66
|
actions?: IAction[];
|
|
62
67
|
/**
|
|
63
|
-
*
|
|
68
|
+
* 节点编辑信息
|
|
64
69
|
*/
|
|
65
|
-
|
|
66
|
-
type: 'file' | 'folder';
|
|
67
|
-
parent: LazyTreeNode;
|
|
68
|
-
} | null;
|
|
70
|
+
nodeEditInfo?: INodeEditInfo;
|
|
69
71
|
/**
|
|
70
72
|
* 确认
|
|
71
73
|
* @param name
|
|
72
|
-
* @param node
|
|
73
74
|
* @returns
|
|
74
75
|
*/
|
|
75
|
-
onConfirm?: (name: string
|
|
76
|
+
onConfirm?: (name: string) => Promise<void> | void;
|
|
76
77
|
/**
|
|
77
78
|
* 取消
|
|
78
79
|
* @returns
|
|
79
80
|
*/
|
|
80
81
|
onCancel?: () => void;
|
|
81
82
|
/**
|
|
82
|
-
*
|
|
83
|
+
* 展示模式
|
|
84
|
+
* @default 'list'
|
|
83
85
|
*/
|
|
84
|
-
|
|
86
|
+
mode?: LazyLevelListMode;
|
|
85
87
|
}
|
|
86
|
-
export interface
|
|
88
|
+
export interface LazyLevelListRef {
|
|
87
89
|
/**
|
|
88
90
|
* 重载
|
|
89
91
|
* @param
|
|
90
92
|
* @returns
|
|
91
93
|
*/
|
|
92
|
-
overloadNode: () => Promise<void>;
|
|
94
|
+
overloadNode: (node: LazyTreeNode) => Promise<void>;
|
|
93
95
|
}
|
|
94
|
-
export declare const
|
|
95
|
-
ref?: import('preact').Ref<
|
|
96
|
+
export declare const LazyLevelList: import('preact').FunctionalComponent<import('preact/compat').PropsWithoutRef<LazyLevelListProps> & {
|
|
97
|
+
ref?: import('preact').Ref<LazyLevelListRef> | undefined;
|
|
96
98
|
}>;
|
|
97
99
|
export {};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { VNode } from 'preact';
|
|
1
2
|
import { IAction } from '../actions/actions';
|
|
2
3
|
|
|
3
4
|
export interface LazyTreeNode {
|
|
@@ -53,6 +54,42 @@ export interface LazyTreeNode {
|
|
|
53
54
|
* 根节点
|
|
54
55
|
*/
|
|
55
56
|
isRoot?: boolean;
|
|
57
|
+
/**
|
|
58
|
+
* 是否显示
|
|
59
|
+
*/
|
|
60
|
+
visible?: boolean;
|
|
61
|
+
}
|
|
62
|
+
export interface INodeEditInfo {
|
|
63
|
+
/**
|
|
64
|
+
* @description 图标
|
|
65
|
+
* @type {VNode}
|
|
66
|
+
* @memberof INodeEditInfo
|
|
67
|
+
*/
|
|
68
|
+
icon?: VNode;
|
|
69
|
+
/**
|
|
70
|
+
* @description 默认值
|
|
71
|
+
* @type {string}
|
|
72
|
+
* @memberof INodeEditInfo
|
|
73
|
+
*/
|
|
74
|
+
value?: string;
|
|
75
|
+
/**
|
|
76
|
+
* @description 占位提示
|
|
77
|
+
* @type {string}
|
|
78
|
+
* @memberof INodeEditInfo
|
|
79
|
+
*/
|
|
80
|
+
placeholder?: string;
|
|
81
|
+
/**
|
|
82
|
+
* @description 类型
|
|
83
|
+
* @type {('draft' | 'edit')} 草稿节点 | 节点编辑
|
|
84
|
+
* @memberof INodeEditInfo
|
|
85
|
+
*/
|
|
86
|
+
type: 'draft' | 'edit';
|
|
87
|
+
/**
|
|
88
|
+
* @description 草稿的父节点 | 编辑节点
|
|
89
|
+
* @type {LazyTreeNode}
|
|
90
|
+
* @memberof INodeEditInfo
|
|
91
|
+
*/
|
|
92
|
+
node: LazyTreeNode;
|
|
56
93
|
}
|
|
57
94
|
interface LazyTreeProps {
|
|
58
95
|
/**
|
|
@@ -86,6 +123,7 @@ interface LazyTreeProps {
|
|
|
86
123
|
activePath?: LazyTreeNode[];
|
|
87
124
|
/**
|
|
88
125
|
* 是否显示搜索框
|
|
126
|
+
* @default true
|
|
89
127
|
*/
|
|
90
128
|
showSearch?: boolean;
|
|
91
129
|
/**
|
|
@@ -94,18 +132,22 @@ interface LazyTreeProps {
|
|
|
94
132
|
defaultCheckedKeys?: string[];
|
|
95
133
|
/**
|
|
96
134
|
* 高亮选中
|
|
135
|
+
* @default true
|
|
97
136
|
*/
|
|
98
137
|
highlight?: boolean;
|
|
99
138
|
/**
|
|
100
139
|
* 高亮选中父节点
|
|
140
|
+
* @default true
|
|
101
141
|
*/
|
|
102
142
|
highlightParent?: boolean;
|
|
103
143
|
/**
|
|
104
144
|
* 是否在点击节点的时候展开或者收缩节点
|
|
145
|
+
* @default true
|
|
105
146
|
*/
|
|
106
147
|
expandOnClickNode?: boolean;
|
|
107
148
|
/**
|
|
108
149
|
* 标识分隔符
|
|
150
|
+
* @default '/'
|
|
109
151
|
*/
|
|
110
152
|
separator?: string;
|
|
111
153
|
/**
|
|
@@ -114,6 +156,7 @@ interface LazyTreeProps {
|
|
|
114
156
|
filter?: string;
|
|
115
157
|
/**
|
|
116
158
|
* 是否可拖拽
|
|
159
|
+
* @default false
|
|
117
160
|
*/
|
|
118
161
|
draggable?: boolean;
|
|
119
162
|
/**
|
|
@@ -121,28 +164,20 @@ interface LazyTreeProps {
|
|
|
121
164
|
*/
|
|
122
165
|
actions?: IAction[];
|
|
123
166
|
/**
|
|
124
|
-
*
|
|
167
|
+
* 节点编辑信息
|
|
125
168
|
*/
|
|
126
|
-
|
|
127
|
-
type: 'file' | 'folder';
|
|
128
|
-
parent: LazyTreeNode;
|
|
129
|
-
} | null;
|
|
169
|
+
nodeEditInfo?: INodeEditInfo;
|
|
130
170
|
/**
|
|
131
171
|
* 确认
|
|
132
172
|
* @param name
|
|
133
|
-
* @param node
|
|
134
173
|
* @returns
|
|
135
174
|
*/
|
|
136
|
-
onConfirm?: (name: string
|
|
175
|
+
onConfirm?: (name: string) => Promise<void> | void;
|
|
137
176
|
/**
|
|
138
177
|
* 取消
|
|
139
178
|
* @returns
|
|
140
179
|
*/
|
|
141
180
|
onCancel?: () => void;
|
|
142
|
-
/**
|
|
143
|
-
* 编辑的节点 id
|
|
144
|
-
*/
|
|
145
|
-
editNodeId?: string | null;
|
|
146
181
|
}
|
|
147
182
|
export interface LazyTreeRef {
|
|
148
183
|
/**
|
|
@@ -112,10 +112,42 @@ export declare class FlatChatContainer extends Component<FlatChatContainerProps>
|
|
|
112
112
|
* 操作区面板宽度拖动起始值(px)
|
|
113
113
|
*/
|
|
114
114
|
private panelDragStartWidth;
|
|
115
|
+
/**
|
|
116
|
+
* resize 节流句柄
|
|
117
|
+
*/
|
|
118
|
+
private resizeRafId;
|
|
115
119
|
state: {
|
|
116
120
|
mountedSlots: Record<string, boolean>;
|
|
117
121
|
inputHeight: number | null;
|
|
118
122
|
};
|
|
123
|
+
/**
|
|
124
|
+
* @description 获取宽度
|
|
125
|
+
* @private
|
|
126
|
+
* @returns {*} {{
|
|
127
|
+
* centreMinWidth: number;
|
|
128
|
+
* leftWidth: number;
|
|
129
|
+
* rightWidth: number;
|
|
130
|
+
* leftMinWidth: number;
|
|
131
|
+
* rightMinWidth: number;
|
|
132
|
+
* }}
|
|
133
|
+
* @memberof FlatChatContainer
|
|
134
|
+
*/
|
|
135
|
+
private getWidth;
|
|
136
|
+
/**
|
|
137
|
+
* 浏览器窗口尺寸变化处理
|
|
138
|
+
* - 触发节流后统一重算:容器最小宽高、左侧栏宽度、右侧面板宽度
|
|
139
|
+
*/
|
|
140
|
+
private handleWindowResize;
|
|
141
|
+
/**
|
|
142
|
+
* @description 浏览器窗口尺寸变化后的重算逻辑
|
|
143
|
+
* 1. 收敛左侧栏宽度到 [左最小宽, 容器宽 - 中最小宽 - 右占用]
|
|
144
|
+
* 2. 收敛右侧面板宽度到 [右最小宽, 容器宽 - 中最小宽 - 左占用]
|
|
145
|
+
* 3. 同步输入区高度,保证消息区最小高
|
|
146
|
+
* @private
|
|
147
|
+
* @returns {*} {void}
|
|
148
|
+
* @memberof FlatChatContainer
|
|
149
|
+
*/
|
|
150
|
+
private recalcOnResize;
|
|
119
151
|
/**
|
|
120
152
|
* @description 添加扩展插槽
|
|
121
153
|
* @private
|
|
@@ -131,11 +163,24 @@ export declare class FlatChatContainer extends Component<FlatChatContainerProps>
|
|
|
131
163
|
* @memberof FlatChatContainer
|
|
132
164
|
*/
|
|
133
165
|
componentDidMount(): void;
|
|
166
|
+
/**
|
|
167
|
+
* @description 销毁
|
|
168
|
+
* @memberof FlatChatContainer
|
|
169
|
+
*/
|
|
170
|
+
componentWillUnmount(): void;
|
|
134
171
|
/**
|
|
135
172
|
* @description 更新
|
|
136
173
|
* @memberof FlatChatContainer
|
|
137
174
|
*/
|
|
138
175
|
componentDidUpdate(prevProps: FlatChatContainerProps): void;
|
|
176
|
+
/**
|
|
177
|
+
* 拖动容器边框时实时校正输入区高度,保证消息区不小于最小高度
|
|
178
|
+
*/
|
|
179
|
+
syncInputHeight: () => void;
|
|
180
|
+
/**
|
|
181
|
+
* 提交拖动边框后的输入区高度(持久化到状态与本地缓存)
|
|
182
|
+
*/
|
|
183
|
+
commitInputHeight: () => void;
|
|
139
184
|
/**
|
|
140
185
|
* @description 同步操作区面板状态(展开收起动画由 CSS 过渡完成)
|
|
141
186
|
* @memberof FlatChatContainer
|
|
@@ -166,6 +211,10 @@ export declare class FlatChatContainer extends Component<FlatChatContainerProps>
|
|
|
166
211
|
* 右侧聊天区宽度
|
|
167
212
|
*/
|
|
168
213
|
getRightWidth(): string;
|
|
214
|
+
/**
|
|
215
|
+
* 将侧栏宽度校正到合理区间 [最小宽, 容器宽度-右侧最小宽]
|
|
216
|
+
*/
|
|
217
|
+
clampSidebarWidth(width: number): number;
|
|
169
218
|
/**
|
|
170
219
|
* 侧栏宽度拖动开始
|
|
171
220
|
*/
|
|
@@ -178,6 +227,11 @@ export declare class FlatChatContainer extends Component<FlatChatContainerProps>
|
|
|
178
227
|
* 侧栏宽度拖动结束
|
|
179
228
|
*/
|
|
180
229
|
handleSidebarResizeEnd: () => void;
|
|
230
|
+
/**
|
|
231
|
+
* 将面板宽度矫正到合理区间 [最小宽, 容器宽度-左侧最小宽]
|
|
232
|
+
* @param width
|
|
233
|
+
*/
|
|
234
|
+
clampPanelWidth(width: number): void;
|
|
181
235
|
/**
|
|
182
236
|
* 操作区面板宽度拖动开始
|
|
183
237
|
*/
|
|
@@ -6,7 +6,7 @@ interface ActionItem {
|
|
|
6
6
|
caption: string;
|
|
7
7
|
icon?: VNode;
|
|
8
8
|
}
|
|
9
|
-
export declare const Popup: ({ triggerMode, children, actions, content, position, isOpen: isOpenProp, onToggleOpen, popupClassName, onAction, }: {
|
|
9
|
+
export declare const Popup: ({ triggerMode, children, actions, content, disabled, position, isOpen: isOpenProp, onToggleOpen, popupClassName, onAction, }: {
|
|
10
10
|
triggerMode: "click" | "hover";
|
|
11
11
|
children: import('preact').ComponentChildren;
|
|
12
12
|
actions?: ActionItem[];
|
|
@@ -14,6 +14,7 @@ export declare const Popup: ({ triggerMode, children, actions, content, position
|
|
|
14
14
|
position?: Position;
|
|
15
15
|
isOpen?: boolean;
|
|
16
16
|
popupClassName?: string;
|
|
17
|
+
disabled?: boolean;
|
|
17
18
|
onToggleOpen?: (isOpen: boolean) => void;
|
|
18
19
|
onAction?: (actionId: string, event: MouseEvent) => void;
|
|
19
20
|
}) => import("preact").JSX.Element;
|
|
@@ -1,14 +1,6 @@
|
|
|
1
1
|
import { Signal } from '@preact/signals';
|
|
2
2
|
import { TActionPanelComponent } from '../../interface';
|
|
3
3
|
|
|
4
|
-
/**
|
|
5
|
-
* 将操作区面板宽度校正到合理区间 [最小宽度, 容器宽度/3]
|
|
6
|
-
*
|
|
7
|
-
* @param {number} width 目标宽度
|
|
8
|
-
* @param {number} containerWidth 容器整体宽度
|
|
9
|
-
* @returns {*} {number}
|
|
10
|
-
*/
|
|
11
|
-
export declare function clampPanelWidth(width: number, containerWidth: number): number;
|
|
12
4
|
/**
|
|
13
5
|
* 操作区面板控制器
|
|
14
6
|
* - 面板为容器级单例,挂在 ChatBaseController 上,切话题不重建
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IFile, IFileItem, IMessageUtil, IFileItemParams, IFileUploadPrams, IFileSystemOptions, FileUploaderOptions } from '../../interface';
|
|
1
|
+
import { IFile, IFileItem, IMessageUtil, IConfirmUtil, IFileItemParams, IFileUploadPrams, IFileSystemOptions, FileUploaderOptions } from '../../interface';
|
|
2
2
|
import { AiChatController } from '../ai-chat/ai-chat.controller';
|
|
3
3
|
|
|
4
4
|
/**
|
|
@@ -38,6 +38,13 @@ export declare class FileSystemController {
|
|
|
38
38
|
* @memberof FileSystemController
|
|
39
39
|
*/
|
|
40
40
|
get message(): IMessageUtil | undefined;
|
|
41
|
+
/**
|
|
42
|
+
* @description 提示
|
|
43
|
+
* @readonly
|
|
44
|
+
* @type {(IConfirmUtil | undefined)}
|
|
45
|
+
* @memberof FileSystemController
|
|
46
|
+
*/
|
|
47
|
+
get confirm(): IConfirmUtil | undefined;
|
|
41
48
|
/**
|
|
42
49
|
* @description 文件预览模式
|
|
43
50
|
* @readonly
|
|
@@ -66,12 +73,12 @@ export declare class FileSystemController {
|
|
|
66
73
|
*/
|
|
67
74
|
fetch(params: IFileItemParams): Promise<IFileItem | undefined>;
|
|
68
75
|
/**
|
|
69
|
-
* @description
|
|
76
|
+
* @description 系统文件上传
|
|
70
77
|
* @param {IFileUploadPrams} params
|
|
71
78
|
* @returns {*} {(Promise<IFile | undefined>)}
|
|
72
79
|
* @memberof FileSystemController
|
|
73
80
|
*/
|
|
74
|
-
|
|
81
|
+
uploadSystemFile(params: IFileUploadPrams): Promise<IFile | undefined>;
|
|
75
82
|
/**
|
|
76
83
|
* @description 获取文件内容
|
|
77
84
|
* @param {string} id
|
|
@@ -149,4 +156,20 @@ export declare class FileSystemController {
|
|
|
149
156
|
* @memberof FileSystemController
|
|
150
157
|
*/
|
|
151
158
|
delete(file_path: string): Promise<boolean>;
|
|
159
|
+
/**
|
|
160
|
+
* @description 选择文件
|
|
161
|
+
* @param {string} [accept='']
|
|
162
|
+
* @param {boolean} [multiple=false]
|
|
163
|
+
* @returns {*} {(Promise<FileList | undefined>)}
|
|
164
|
+
* @memberof FileSystemController
|
|
165
|
+
*/
|
|
166
|
+
selectFile(accept?: string, multiple?: boolean): Promise<FileList | undefined>;
|
|
167
|
+
/**
|
|
168
|
+
* @description 上传文件到系统
|
|
169
|
+
* @param {string} file_path 文件路径
|
|
170
|
+
* @param {File} file 文件
|
|
171
|
+
* @returns {*} {Promise<void>}
|
|
172
|
+
* @memberof FileSystemController
|
|
173
|
+
*/
|
|
174
|
+
uploadFileToSystem(file_path: string, file: File): Promise<boolean>;
|
|
152
175
|
}
|
|
@@ -57,4 +57,4 @@ export { ProjectSvg } from './project-svg';
|
|
|
57
57
|
export { WorlSpaceSvg } from './workspace-svg';
|
|
58
58
|
export { NewFolderSvg, NewFileSvg } from './new-folder-svg';
|
|
59
59
|
export { EyeSvg } from './eye-svg';
|
|
60
|
-
export { MoveFileSvg } from './move-file-svg';
|
|
60
|
+
export { MoveFileSvg, UploadFileSvg } from './move-file-svg';
|
|
@@ -23,6 +23,19 @@ interface IFileSystemUploadParams {
|
|
|
23
23
|
srfaiagent?: string;
|
|
24
24
|
srfscope?: string;
|
|
25
25
|
}
|
|
26
|
+
/**
|
|
27
|
+
* @description 下载文件参数
|
|
28
|
+
* @interface IFileSystemDownLoadParams
|
|
29
|
+
*/
|
|
30
|
+
interface IFileSystemDownLoadParams {
|
|
31
|
+
sessionid: string;
|
|
32
|
+
folder: string;
|
|
33
|
+
id: string;
|
|
34
|
+
file_path: string;
|
|
35
|
+
srfaiagent?: string;
|
|
36
|
+
srfscope?: string;
|
|
37
|
+
timeout?: number;
|
|
38
|
+
}
|
|
26
39
|
/**
|
|
27
40
|
* @description 新建目录参数
|
|
28
41
|
* @interface IFileSystemCreateParams
|
|
@@ -143,6 +156,11 @@ export interface IFileSystemOptions {
|
|
|
143
156
|
name: string;
|
|
144
157
|
folder: string;
|
|
145
158
|
} | undefined>;
|
|
159
|
+
/**
|
|
160
|
+
* @description 下载文件
|
|
161
|
+
* @memberof IFileSystemOptions
|
|
162
|
+
*/
|
|
163
|
+
downloadFile: (ctx: object, param: object, other: IFileSystemDownLoadParams) => Promise<IFileSystemResult>;
|
|
146
164
|
/**
|
|
147
165
|
* @description 获取文件内容
|
|
148
166
|
* @param {object} ctx
|
|
@@ -93,4 +93,24 @@ export interface IRemoteMessage {
|
|
|
93
93
|
* 创建时间
|
|
94
94
|
*/
|
|
95
95
|
create_time: string | undefined;
|
|
96
|
+
/**
|
|
97
|
+
* 智能体消息类型,默认 | 工具调用 | 用户消息补充(老数据可能没值)
|
|
98
|
+
*/
|
|
99
|
+
type: 'default' | 'toolcall_step' | 'supplement_step' | undefined;
|
|
100
|
+
/**
|
|
101
|
+
* 输入token数
|
|
102
|
+
*/
|
|
103
|
+
input_tokens: number | undefined;
|
|
104
|
+
/**
|
|
105
|
+
* 输出token数
|
|
106
|
+
*/
|
|
107
|
+
output_tokens: number | undefined;
|
|
108
|
+
/**
|
|
109
|
+
* 总token数
|
|
110
|
+
*/
|
|
111
|
+
total_tokens: number | undefined;
|
|
112
|
+
/**
|
|
113
|
+
* 工具调用数
|
|
114
|
+
*/
|
|
115
|
+
tool_calls: number | undefined;
|
|
96
116
|
}
|
|
@@ -159,12 +159,13 @@ export declare const EN: {
|
|
|
159
159
|
projectPlaceholder: string;
|
|
160
160
|
workSpace: string;
|
|
161
161
|
listMode: string;
|
|
162
|
-
|
|
162
|
+
cardMode: string;
|
|
163
163
|
notYetSupported: string;
|
|
164
164
|
fileName: string;
|
|
165
165
|
size: string;
|
|
166
166
|
type: string;
|
|
167
167
|
folder: string;
|
|
168
|
+
file: string;
|
|
168
169
|
move: string;
|
|
169
170
|
new: string;
|
|
170
171
|
newFile: string;
|
|
@@ -175,5 +176,9 @@ export declare const EN: {
|
|
|
175
176
|
moveToSelf: string;
|
|
176
177
|
moveToDescendant: string;
|
|
177
178
|
moveToSameParent: string;
|
|
178
|
-
|
|
179
|
+
alreadyExists: string;
|
|
180
|
+
uploadFile: string;
|
|
181
|
+
fileContent: string;
|
|
182
|
+
clear: string;
|
|
183
|
+
fileExists: string;
|
|
179
184
|
};
|
|
@@ -159,12 +159,13 @@ export declare const ZH_CN: {
|
|
|
159
159
|
projectPlaceholder: string;
|
|
160
160
|
workSpace: string;
|
|
161
161
|
listMode: string;
|
|
162
|
-
|
|
162
|
+
cardMode: string;
|
|
163
163
|
notYetSupported: string;
|
|
164
164
|
fileName: string;
|
|
165
165
|
size: string;
|
|
166
166
|
type: string;
|
|
167
167
|
folder: string;
|
|
168
|
+
file: string;
|
|
168
169
|
move: string;
|
|
169
170
|
new: string;
|
|
170
171
|
newFile: string;
|
|
@@ -175,5 +176,9 @@ export declare const ZH_CN: {
|
|
|
175
176
|
moveToSelf: string;
|
|
176
177
|
moveToDescendant: string;
|
|
177
178
|
moveToSameParent: string;
|
|
178
|
-
|
|
179
|
+
alreadyExists: string;
|
|
180
|
+
uploadFile: string;
|
|
181
|
+
fileContent: string;
|
|
182
|
+
clear: string;
|
|
183
|
+
fileExists: string;
|
|
179
184
|
};
|