@ai-group/chat-sdk 1.0.11 → 1.0.12
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/cjs/components/DislikeFeedback.js +79 -0
- package/dist/cjs/components/DislikeFeedback.js.map +7 -0
- package/dist/cjs/components/FeedbackTags.js +62 -0
- package/dist/cjs/components/FeedbackTags.js.map +7 -0
- package/dist/cjs/components/XAiChatbot/index.js +5 -3
- package/dist/cjs/components/XAiChatbot/index.js.map +2 -2
- package/dist/cjs/components/XAiProvider/index.js +142 -45
- package/dist/cjs/components/XAiProvider/index.js.map +3 -3
- package/dist/cjs/hooks/useAgentGenerator.js +20 -25
- package/dist/cjs/hooks/useAgentGenerator.js.map +2 -2
- package/dist/cjs/services/api.js +15 -0
- package/dist/cjs/services/api.js.map +2 -2
- package/dist/cjs/types/XAiMessage.js.map +1 -1
- package/dist/esm/components/DislikeFeedback.js +97 -0
- package/dist/esm/components/DislikeFeedback.js.map +1 -0
- package/dist/esm/components/FeedbackTags.js +34 -0
- package/dist/esm/components/FeedbackTags.js.map +1 -0
- package/dist/esm/components/XAiChatbot/index.js +2 -2
- package/dist/esm/components/XAiChatbot/index.js.map +1 -1
- package/dist/esm/components/XAiProvider/index.js +215 -84
- package/dist/esm/components/XAiProvider/index.js.map +1 -1
- package/dist/esm/hooks/useAgentGenerator.js +3 -1
- package/dist/esm/hooks/useAgentGenerator.js.map +1 -1
- package/dist/esm/services/api.js +32 -0
- package/dist/esm/services/api.js.map +1 -1
- package/dist/esm/types/XAiMessage.js.map +1 -1
- package/dist/umd/chat-sdk.min.js +1 -1
- package/package.json +16 -13
- package/dist/cjs/assets/svg/AddChatIcon.d.ts +0 -3
- package/dist/cjs/client/base.d.ts +0 -9
- package/dist/cjs/client/restClient.d.ts +0 -0
- package/dist/cjs/client/wsClient.d.ts +0 -0
- package/dist/cjs/components/XAiChatbot/XAiChatbot.stories.d.ts +0 -10
- package/dist/cjs/components/XAiChatbot/index.d.ts +0 -9
- package/dist/cjs/components/XAiChatbot/styles.d.ts +0 -67
- package/dist/cjs/components/XAiConversations/XAiConversations.stories.d.ts +0 -6
- package/dist/cjs/components/XAiConversations/index.d.ts +0 -4
- package/dist/cjs/components/XAiConversations/styles.d.ts +0 -49
- package/dist/cjs/components/XAiProvider/XAiProvider.stories.d.ts +0 -8
- package/dist/cjs/components/XAiProvider/demo.styles.d.ts +0 -37
- package/dist/cjs/components/XAiProvider/index.d.ts +0 -4
- package/dist/cjs/components/XAiSDK.d.ts +0 -10
- package/dist/cjs/components/XAiSender/XAiSender.stories.d.ts +0 -6
- package/dist/cjs/components/XAiSender/index.d.ts +0 -4
- package/dist/cjs/components/XAiSender/styles.d.ts +0 -47
- package/dist/cjs/components/XAiWebSDKWrapper.d.ts +0 -9
- package/dist/cjs/constants/index.d.ts +0 -2
- package/dist/cjs/context/AiProviderContext.d.ts +0 -14
- package/dist/cjs/context/ThemeContext.d.ts +0 -20
- package/dist/cjs/hooks/useAgentGenerator.d.ts +0 -93
- package/dist/cjs/hooks/useEventStreamRequest.d.ts +0 -30
- package/dist/cjs/hooks/useProviderContext.d.ts +0 -33
- package/dist/cjs/hooks/useXAiSDK.d.ts +0 -14
- package/dist/cjs/index.d.ts +0 -10
- package/dist/cjs/services/api.d.ts +0 -130
- package/dist/cjs/styles/common.d.ts +0 -73
- package/dist/cjs/styles/markdown.d.ts +0 -3
- package/dist/cjs/types/XAiChatbot.d.ts +0 -156
- package/dist/cjs/types/XAiConversations.d.ts +0 -20
- package/dist/cjs/types/XAiMessage.d.ts +0 -108
- package/dist/cjs/types/XAiProvider.d.ts +0 -347
- package/dist/cjs/types/XAiSender.d.ts +0 -13
- package/dist/cjs/types/index.d.ts +0 -5
- package/dist/cjs/types/node.d.ts +0 -10
- package/dist/cjs/utils/chat.d.ts +0 -34
- package/dist/cjs/utils/index.d.ts +0 -2
- package/dist/cjs/utils/providerManager.d.ts +0 -22
- package/dist/cjs/utils/request.d.ts +0 -78
- package/dist/cjs/utils/request.example.d.ts +0 -39
- package/dist/cjs/utils/umdEntry.d.ts +0 -26
- package/dist/cjs/utils/workflowNode.d.ts +0 -2
- package/dist/esm/assets/svg/AddChatIcon.d.ts +0 -3
- package/dist/esm/client/base.d.ts +0 -9
- package/dist/esm/client/restClient.d.ts +0 -0
- package/dist/esm/client/wsClient.d.ts +0 -0
- package/dist/esm/components/XAiChatbot/XAiChatbot.stories.d.ts +0 -10
- package/dist/esm/components/XAiChatbot/index.d.ts +0 -9
- package/dist/esm/components/XAiChatbot/styles.d.ts +0 -67
- package/dist/esm/components/XAiConversations/XAiConversations.stories.d.ts +0 -6
- package/dist/esm/components/XAiConversations/index.d.ts +0 -4
- package/dist/esm/components/XAiConversations/styles.d.ts +0 -49
- package/dist/esm/components/XAiProvider/XAiProvider.stories.d.ts +0 -8
- package/dist/esm/components/XAiProvider/demo.styles.d.ts +0 -37
- package/dist/esm/components/XAiProvider/index.d.ts +0 -4
- package/dist/esm/components/XAiSDK.d.ts +0 -10
- package/dist/esm/components/XAiSender/XAiSender.stories.d.ts +0 -6
- package/dist/esm/components/XAiSender/index.d.ts +0 -4
- package/dist/esm/components/XAiSender/styles.d.ts +0 -47
- package/dist/esm/components/XAiWebSDKWrapper.d.ts +0 -9
- package/dist/esm/constants/index.d.ts +0 -2
- package/dist/esm/context/AiProviderContext.d.ts +0 -14
- package/dist/esm/context/ThemeContext.d.ts +0 -20
- package/dist/esm/hooks/useAgentGenerator.d.ts +0 -93
- package/dist/esm/hooks/useEventStreamRequest.d.ts +0 -30
- package/dist/esm/hooks/useProviderContext.d.ts +0 -33
- package/dist/esm/hooks/useXAiSDK.d.ts +0 -14
- package/dist/esm/index.d.ts +0 -10
- package/dist/esm/services/api.d.ts +0 -130
- package/dist/esm/styles/common.d.ts +0 -73
- package/dist/esm/styles/markdown.d.ts +0 -3
- package/dist/esm/types/XAiChatbot.d.ts +0 -156
- package/dist/esm/types/XAiConversations.d.ts +0 -20
- package/dist/esm/types/XAiMessage.d.ts +0 -108
- package/dist/esm/types/XAiProvider.d.ts +0 -347
- package/dist/esm/types/XAiSender.d.ts +0 -13
- package/dist/esm/types/index.d.ts +0 -5
- package/dist/esm/types/node.d.ts +0 -10
- package/dist/esm/utils/chat.d.ts +0 -34
- package/dist/esm/utils/index.d.ts +0 -2
- package/dist/esm/utils/providerManager.d.ts +0 -22
- package/dist/esm/utils/request.d.ts +0 -78
- package/dist/esm/utils/request.example.d.ts +0 -39
- package/dist/esm/utils/umdEntry.d.ts +0 -26
- package/dist/esm/utils/workflowNode.d.ts +0 -2
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
export declare const primaryBlue = "#0078FF";
|
|
2
|
-
export declare const lightBlue = "#E6F0FF";
|
|
3
|
-
export declare const darkGray = "#333";
|
|
4
|
-
export declare const lightGray = "#888";
|
|
5
|
-
export declare const borderGray = "#ddd";
|
|
6
|
-
export declare const basicStyles: {
|
|
7
|
-
w: (width: number | string) => string;
|
|
8
|
-
h: (height: number | string) => string;
|
|
9
|
-
p: (padding: string) => string;
|
|
10
|
-
pb: (padding: number | string) => string;
|
|
11
|
-
pt: (padding: number | string) => string;
|
|
12
|
-
pl: (padding: number | string) => string;
|
|
13
|
-
pr: (padding: number | string) => string;
|
|
14
|
-
m: (margin: string) => string;
|
|
15
|
-
mb: (margin: number | string) => string;
|
|
16
|
-
mt: (margin: number | string) => string;
|
|
17
|
-
ml: (margin: number | string) => string;
|
|
18
|
-
mr: (margin: number | string) => string;
|
|
19
|
-
text: (size: number | string) => string;
|
|
20
|
-
weight: (size: number) => string;
|
|
21
|
-
textColor: (c: string) => string;
|
|
22
|
-
bg: (c: string) => string;
|
|
23
|
-
rs: (radius: number | string) => string;
|
|
24
|
-
gap: (g: number | string) => string;
|
|
25
|
-
flex: string;
|
|
26
|
-
flexCenter: string;
|
|
27
|
-
flexBetween: string;
|
|
28
|
-
flexColumn: string;
|
|
29
|
-
flex1: string;
|
|
30
|
-
cursor: (type: string) => string;
|
|
31
|
-
border: (color: string, width?: string) => string;
|
|
32
|
-
boxShadow: (shadow: string) => string;
|
|
33
|
-
transition: (property?: string, duration?: string) => string;
|
|
34
|
-
overflow: (type: string) => string;
|
|
35
|
-
position: (type: string) => string;
|
|
36
|
-
zIndex: (index: number) => string;
|
|
37
|
-
flexCenterGap2: string;
|
|
38
|
-
flexCenterGap4: string;
|
|
39
|
-
};
|
|
40
|
-
export declare function withBasicStyles<T extends Record<string, any>>(useCustomStyles: () => T): () => T & {
|
|
41
|
-
w: (width: string | number) => string;
|
|
42
|
-
h: (height: string | number) => string;
|
|
43
|
-
p: (padding: string) => string;
|
|
44
|
-
pb: (padding: string | number) => string;
|
|
45
|
-
pt: (padding: string | number) => string;
|
|
46
|
-
pl: (padding: string | number) => string;
|
|
47
|
-
pr: (padding: string | number) => string;
|
|
48
|
-
m: (margin: string) => string;
|
|
49
|
-
mb: (margin: string | number) => string;
|
|
50
|
-
mt: (margin: string | number) => string;
|
|
51
|
-
ml: (margin: string | number) => string;
|
|
52
|
-
mr: (margin: string | number) => string;
|
|
53
|
-
text: (size: string | number) => string;
|
|
54
|
-
weight: (size: number) => string;
|
|
55
|
-
textColor: (c: string) => string;
|
|
56
|
-
bg: (c: string) => string;
|
|
57
|
-
rs: (radius: string | number) => string;
|
|
58
|
-
gap: (g: string | number) => string;
|
|
59
|
-
flex: string;
|
|
60
|
-
flexCenter: string;
|
|
61
|
-
flexBetween: string;
|
|
62
|
-
flexColumn: string;
|
|
63
|
-
flex1: string;
|
|
64
|
-
cursor: (type: string) => string;
|
|
65
|
-
border: (color: string, width?: string) => string;
|
|
66
|
-
boxShadow: (shadow: string) => string;
|
|
67
|
-
transition: (property?: string, duration?: string) => string;
|
|
68
|
-
overflow: (type: string) => string;
|
|
69
|
-
position: (type: string) => string;
|
|
70
|
-
zIndex: (index: number) => string;
|
|
71
|
-
flexCenterGap2: string;
|
|
72
|
-
flexCenterGap4: string;
|
|
73
|
-
};
|
|
@@ -1,156 +0,0 @@
|
|
|
1
|
-
import React, { ReactNode, RefObject, MouseEvent, ReactElement } from 'react';
|
|
2
|
-
import type { PromptProps } from '@ant-design/x';
|
|
3
|
-
import type { MessageType } from 'src/client/base';
|
|
4
|
-
import type { Messages } from './XAiMessage';
|
|
5
|
-
export interface User {
|
|
6
|
-
id: string;
|
|
7
|
-
name: string;
|
|
8
|
-
avatar?: string;
|
|
9
|
-
}
|
|
10
|
-
export interface MessageProps {
|
|
11
|
-
_id: string;
|
|
12
|
-
type: string;
|
|
13
|
-
content: Record<string, any>;
|
|
14
|
-
createdAt: number;
|
|
15
|
-
user: User;
|
|
16
|
-
position?: 'left' | 'right' | 'center' | 'pop';
|
|
17
|
-
hasTime?: boolean;
|
|
18
|
-
status?: 'pending' | 'sent' | 'fail';
|
|
19
|
-
}
|
|
20
|
-
export interface QuickReplyItemProps {
|
|
21
|
-
name: string;
|
|
22
|
-
code: string;
|
|
23
|
-
icon?: string;
|
|
24
|
-
img?: string;
|
|
25
|
-
isNew?: boolean;
|
|
26
|
-
isHighlight?: boolean;
|
|
27
|
-
}
|
|
28
|
-
export interface ComposerHandle {
|
|
29
|
-
setText: (text: string) => void;
|
|
30
|
-
}
|
|
31
|
-
export interface ScrollToEndOptions {
|
|
32
|
-
animated?: boolean;
|
|
33
|
-
force?: boolean;
|
|
34
|
-
}
|
|
35
|
-
export interface MessageContainerHandle {
|
|
36
|
-
scrollToEnd: (options?: ScrollToEndOptions) => void;
|
|
37
|
-
}
|
|
38
|
-
export interface NavbarProps {
|
|
39
|
-
title?: string;
|
|
40
|
-
subtitle?: string;
|
|
41
|
-
avatar?: string;
|
|
42
|
-
}
|
|
43
|
-
export interface ToolbarItemProps {
|
|
44
|
-
id: string;
|
|
45
|
-
icon: string;
|
|
46
|
-
label: string;
|
|
47
|
-
disabled?: boolean;
|
|
48
|
-
}
|
|
49
|
-
export interface IconButtonProps {
|
|
50
|
-
icon: string;
|
|
51
|
-
onClick: () => void;
|
|
52
|
-
disabled?: boolean;
|
|
53
|
-
}
|
|
54
|
-
export interface RecorderProps {
|
|
55
|
-
onStart?: () => void;
|
|
56
|
-
onStop?: (audioBlob: Blob) => void;
|
|
57
|
-
onError?: (error: Error) => void;
|
|
58
|
-
}
|
|
59
|
-
export type InputType = 'text' | 'voice';
|
|
60
|
-
export interface ChatbotMessageFields {
|
|
61
|
-
messages?: MessageType[];
|
|
62
|
-
setMessages?: React.Dispatch<React.SetStateAction<MessageType[]>>;
|
|
63
|
-
/** 发送消息回调 */
|
|
64
|
-
onSend?: (type: string, content: string) => void;
|
|
65
|
-
/** 清空消息回调 */
|
|
66
|
-
onClear?: () => void;
|
|
67
|
-
/** 停止生成回调 */
|
|
68
|
-
onStop?: () => void;
|
|
69
|
-
}
|
|
70
|
-
export interface ActionItem {
|
|
71
|
-
key?: string;
|
|
72
|
-
icon?: React.ReactNode;
|
|
73
|
-
render?: (index: number, msg: any) => React.ReactNode;
|
|
74
|
-
tooltip?: string;
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* AI 聊天机器人组件
|
|
78
|
-
*/
|
|
79
|
-
export interface XAiChatbotProps extends ChatbotMessageFields {
|
|
80
|
-
/** 宽屏断点 */
|
|
81
|
-
wideBreakpoint?: string;
|
|
82
|
-
/** 导航栏展示 */
|
|
83
|
-
navbarShow?: boolean;
|
|
84
|
-
/** 导航栏配置 */
|
|
85
|
-
navbar?: NavbarProps;
|
|
86
|
-
/** 导航栏渲染函数,会覆盖 navbar */
|
|
87
|
-
renderNavbar?: () => ReactNode;
|
|
88
|
-
/** 是否加载中 */
|
|
89
|
-
loading?: boolean;
|
|
90
|
-
/** 加载更多文案 */
|
|
91
|
-
loadMoreText?: string;
|
|
92
|
-
/** 在消息列表上面的渲染函数 */
|
|
93
|
-
renderBeforeMessageList?: () => ReactNode;
|
|
94
|
-
/** 消息列表 ref */
|
|
95
|
-
messagesRef?: RefObject<MessageContainerHandle>;
|
|
96
|
-
/** 下拉加载回调 */
|
|
97
|
-
onRefresh?: () => Promise<any>;
|
|
98
|
-
/** 滚动消息列表回调 */
|
|
99
|
-
onScroll?: (event: React.UIEvent<HTMLDivElement, UIEvent>) => void;
|
|
100
|
-
/** 消息内容渲染函数 */
|
|
101
|
-
renderMessageContent?: (message: MessageProps) => ReactNode;
|
|
102
|
-
/** 快捷短语列表 */
|
|
103
|
-
quickReplies?: QuickReplyItemProps[];
|
|
104
|
-
/** 快捷短语是否可见 */
|
|
105
|
-
quickRepliesVisible?: boolean;
|
|
106
|
-
/** 输入框初始内容 */
|
|
107
|
-
text?: string;
|
|
108
|
-
/** 空状态渲染插槽 */
|
|
109
|
-
empty?: ReactElement;
|
|
110
|
-
/** 空状态图片 */
|
|
111
|
-
emptyStateImage?: string;
|
|
112
|
-
/** 空状态文案 */
|
|
113
|
-
emptyStateText?: string;
|
|
114
|
-
/** 输入框占位符 */
|
|
115
|
-
placeholder?: string;
|
|
116
|
-
/** 输入框粘贴图片后的回调 */
|
|
117
|
-
onImageSend?: (file: File) => Promise<any>;
|
|
118
|
-
/** 输入方式 */
|
|
119
|
-
inputType?: InputType;
|
|
120
|
-
/** 语音输入配置 */
|
|
121
|
-
recorder?: RecorderProps;
|
|
122
|
-
/** 工具栏配置 */
|
|
123
|
-
toolbar?: ToolbarItemProps[];
|
|
124
|
-
/** AI头像 */
|
|
125
|
-
avatar?: ReactNode;
|
|
126
|
-
/** 用户头像 */
|
|
127
|
-
userAvatar?: ReactNode;
|
|
128
|
-
/** 发送按钮 */
|
|
129
|
-
sendBtn?: ReactNode;
|
|
130
|
-
/** 是否展示清空按钮 */
|
|
131
|
-
clearBtnShow?: boolean;
|
|
132
|
-
/** 工具栏点击回调 */
|
|
133
|
-
onToolbarClick?: (item: ToolbarItemProps, event: MouseEvent) => void;
|
|
134
|
-
/** 工具栏打开/关闭回调 */
|
|
135
|
-
onAccessoryToggle?: (isAccessoryOpen: boolean) => void;
|
|
136
|
-
/** 输入框右边图标按钮配置 */
|
|
137
|
-
rightAction?: IconButtonProps;
|
|
138
|
-
/** 上传按钮是否显示 */
|
|
139
|
-
uploadBtnShow?: boolean;
|
|
140
|
-
/** 底部文案 */
|
|
141
|
-
footerTips?: string;
|
|
142
|
-
/** 帮助消息点击回调 */
|
|
143
|
-
onSuggestMessageClick?: (item: PromptProps, id: string) => void;
|
|
144
|
-
/** 消息左下角展示字段 */
|
|
145
|
-
messageTooltip?: (msg: Messages) => React.ReactNode;
|
|
146
|
-
/** 消息右下角功能区 */
|
|
147
|
-
messageActions?: ActionItem[];
|
|
148
|
-
/** 消息右下角功能区点击回调 */
|
|
149
|
-
onMessagesActionsCallback?: (index: number, data: Messages) => void;
|
|
150
|
-
/** 输入组件 */
|
|
151
|
-
Composer?: React.ElementType;
|
|
152
|
-
/** 是否展示输入框 */
|
|
153
|
-
inputShow?: boolean;
|
|
154
|
-
/** 消息顶部 */
|
|
155
|
-
messageHeader?: ReactNode;
|
|
156
|
-
}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { type ConversationsProps, type Conversation } from '@ant-design/x';
|
|
2
|
-
type OmitItems = Omit<ConversationsProps, 'items'>;
|
|
3
|
-
export interface sessionData extends Conversation {
|
|
4
|
-
meta?: any;
|
|
5
|
-
}
|
|
6
|
-
export interface XAiConversationsProps extends OmitItems {
|
|
7
|
-
/** 配色 */
|
|
8
|
-
color?: string;
|
|
9
|
-
/** 侧边栏展示形式,若为 true 则为抽屉式展示 */
|
|
10
|
-
isNarrow?: boolean;
|
|
11
|
-
/** 会话列表,替换原来的 items 字段 */
|
|
12
|
-
sessionList?: sessionData[];
|
|
13
|
-
/** session总数,当设置该值时,会增加自动加载逻辑 */
|
|
14
|
-
sessionTotal?: number;
|
|
15
|
-
/** 加载更多函数 */
|
|
16
|
-
loadMoreSession?: () => void;
|
|
17
|
-
/** 点击生成新对话回调 */
|
|
18
|
-
onNewChat?: () => void;
|
|
19
|
-
}
|
|
20
|
-
export {};
|
|
@@ -1,108 +0,0 @@
|
|
|
1
|
-
import type { PromptsProps } from '@ant-design/x';
|
|
2
|
-
export type MessageType = 'TextMessage' | 'ActionExecutionMessage' | 'ResultMessage' | 'AgentStateMessage' | 'SuggestionMessage';
|
|
3
|
-
export declare enum MessageRole {
|
|
4
|
-
user = "user",// 用户
|
|
5
|
-
assistant = "assistant",// AI助手
|
|
6
|
-
suggestion = "suggestion",// 建议
|
|
7
|
-
system = "system"
|
|
8
|
-
}
|
|
9
|
-
export declare enum MessageStatus {
|
|
10
|
-
init = "init",
|
|
11
|
-
pending = "pending",// 生成中/接收中
|
|
12
|
-
done = "done",// 已完成
|
|
13
|
-
failed = "failed",// 失败
|
|
14
|
-
recalled = "recalled",// 已撤回
|
|
15
|
-
deleted = "deleted"
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* 所有消息的基础结构
|
|
19
|
-
*/
|
|
20
|
-
export interface BaseMessage {
|
|
21
|
-
id: string;
|
|
22
|
-
type: MessageType;
|
|
23
|
-
createdAt: Date;
|
|
24
|
-
status?: MessageStatus;
|
|
25
|
-
execute?: ActionExecutionMessage[];
|
|
26
|
-
thinks?: string;
|
|
27
|
-
extra?: any;
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* 文本消息
|
|
31
|
-
*/
|
|
32
|
-
export interface TextMessage extends BaseMessage {
|
|
33
|
-
type: 'TextMessage';
|
|
34
|
-
role: MessageRole;
|
|
35
|
-
content: {
|
|
36
|
-
text: string;
|
|
37
|
-
};
|
|
38
|
-
parentMessageId?: string;
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* 工具/动作执行消息
|
|
42
|
-
*/
|
|
43
|
-
export interface ActionExecutionMessage extends BaseMessage {
|
|
44
|
-
type: 'ActionExecutionMessage';
|
|
45
|
-
name: string;
|
|
46
|
-
arguments?: Record<string, any>;
|
|
47
|
-
parentMessageId?: string;
|
|
48
|
-
extra?: any;
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* 工具/动作执行结果消息
|
|
52
|
-
*/
|
|
53
|
-
export interface ResultMessage extends BaseMessage {
|
|
54
|
-
type: 'ResultMessage';
|
|
55
|
-
actionExecutionId: string;
|
|
56
|
-
actionName: string;
|
|
57
|
-
result: string;
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
* 智能体状态消息
|
|
61
|
-
*/
|
|
62
|
-
export interface AgentStateMessage extends BaseMessage {
|
|
63
|
-
type: 'AgentStateMessage';
|
|
64
|
-
threadId: string;
|
|
65
|
-
agentName: string;
|
|
66
|
-
nodeName: string;
|
|
67
|
-
runId: string;
|
|
68
|
-
active: boolean;
|
|
69
|
-
role: MessageRole;
|
|
70
|
-
state: any;
|
|
71
|
-
running: boolean;
|
|
72
|
-
}
|
|
73
|
-
/**
|
|
74
|
-
* 提示消息
|
|
75
|
-
*/
|
|
76
|
-
export interface SuggestionMessage extends BaseMessage {
|
|
77
|
-
type: 'SuggestionMessage';
|
|
78
|
-
content: PromptsProps['items'];
|
|
79
|
-
role: MessageRole;
|
|
80
|
-
}
|
|
81
|
-
/**
|
|
82
|
-
* 消息输入类型(用于前端输入/组装)
|
|
83
|
-
* 可选地包含不同类型的消息体
|
|
84
|
-
*/
|
|
85
|
-
export interface MessageInput extends BaseMessage {
|
|
86
|
-
textMessage?: Omit<TextMessage, 'id' | 'createdAt' | 'type'>;
|
|
87
|
-
actionExecutionMessage?: Omit<ActionExecutionMessage, 'id' | 'createdAt' | 'type'>;
|
|
88
|
-
resultMessage?: Omit<ResultMessage, 'id' | 'createdAt' | 'type'>;
|
|
89
|
-
agentStateMessage?: Omit<AgentStateMessage, 'id' | 'createdAt' | 'type'>;
|
|
90
|
-
}
|
|
91
|
-
/**
|
|
92
|
-
* 消息列表中消息格式
|
|
93
|
-
*/
|
|
94
|
-
export type Messages = TextMessage | SuggestionMessage;
|
|
95
|
-
export declare enum ActionAvailability {
|
|
96
|
-
disabled = "disabled",// 不可用
|
|
97
|
-
enabled = "enabled",// 可用
|
|
98
|
-
remote = "remote"
|
|
99
|
-
}
|
|
100
|
-
/**
|
|
101
|
-
* 工具/动作定义
|
|
102
|
-
*/
|
|
103
|
-
export interface Action {
|
|
104
|
-
name: string;
|
|
105
|
-
description: string;
|
|
106
|
-
jsonSchema: string;
|
|
107
|
-
available?: ActionAvailability;
|
|
108
|
-
}
|
|
@@ -1,347 +0,0 @@
|
|
|
1
|
-
import React, { ReactNode } from 'react';
|
|
2
|
-
import { AiClient } from 'src/client/base';
|
|
3
|
-
import type { ChatbotMessageFields } from './XAiChatbot';
|
|
4
|
-
import { Messages, sessionData } from "./";
|
|
5
|
-
/**
|
|
6
|
-
* 主题类型
|
|
7
|
-
* @type {'default'}
|
|
8
|
-
* @version 1.0.0
|
|
9
|
-
*/
|
|
10
|
-
export type ThemeType = 'default';
|
|
11
|
-
/**
|
|
12
|
-
* 错误码枚举(数字格式)
|
|
13
|
-
* @enum {string}
|
|
14
|
-
* @version 1.0.0
|
|
15
|
-
*/
|
|
16
|
-
export declare enum ErrorCodeNum {
|
|
17
|
-
/** 应用下架 */
|
|
18
|
-
APP_NOT_ENABLE = "client_50017",
|
|
19
|
-
/** 应用删除 */
|
|
20
|
-
APP_DELETED = "client_50017",
|
|
21
|
-
/** 无该应用 */
|
|
22
|
-
APP_NOT_FOUND = "client_59999",
|
|
23
|
-
/** 接口报错 */
|
|
24
|
-
API_ERROR = "client_50054"
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* 错误码枚举
|
|
28
|
-
* @enum {string}
|
|
29
|
-
* @version 1.0.0
|
|
30
|
-
*/
|
|
31
|
-
export declare enum ErrorCode {
|
|
32
|
-
/** 应用未启用 */
|
|
33
|
-
APP_NOT_ENABLE = "APP_NOT_ENABLE",
|
|
34
|
-
/** 应用已删除 */
|
|
35
|
-
APP_DELETED = "APP_DELETED",
|
|
36
|
-
/** 应用未找到 */
|
|
37
|
-
APP_NOT_FOUND = "APP_NOT_FOUND",
|
|
38
|
-
/** API 错误 */
|
|
39
|
-
API_ERROR = "API_ERROR"
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* 错误码映射表
|
|
43
|
-
* @type {Record<string, {code: ErrorCode, message: string}>}
|
|
44
|
-
* @version 1.0.0
|
|
45
|
-
*/
|
|
46
|
-
export declare const ErrorCodeMap: {
|
|
47
|
-
client_50017: {
|
|
48
|
-
code: ErrorCode;
|
|
49
|
-
message: string;
|
|
50
|
-
};
|
|
51
|
-
client_50054: {
|
|
52
|
-
code: ErrorCode;
|
|
53
|
-
message: string;
|
|
54
|
-
};
|
|
55
|
-
};
|
|
56
|
-
/**
|
|
57
|
-
* 成功状态码枚举
|
|
58
|
-
* @enum {string}
|
|
59
|
-
* @version 1.0.0
|
|
60
|
-
*/
|
|
61
|
-
export declare enum SuccessCode {
|
|
62
|
-
/** 应用配置初始化成功 */
|
|
63
|
-
APP_CONFIG_INIT_SUCCESS = "APP_CONFIG_INIT_SUCCESS",
|
|
64
|
-
/** 应用消息初始化成功 */
|
|
65
|
-
APP_MESSAGES_INIT_SUCCESS = "APP_MESSAGES_INIT_SUCCESS"
|
|
66
|
-
}
|
|
67
|
-
/**
|
|
68
|
-
* 错误信息接口
|
|
69
|
-
* @interface Error
|
|
70
|
-
* @version 1.0.0
|
|
71
|
-
*/
|
|
72
|
-
export interface Error {
|
|
73
|
-
/** 错误码 */
|
|
74
|
-
code: ErrorCode;
|
|
75
|
-
/** 错误信息 */
|
|
76
|
-
message: string;
|
|
77
|
-
}
|
|
78
|
-
/**
|
|
79
|
-
* 成功信息接口
|
|
80
|
-
* @interface Success
|
|
81
|
-
* @version 1.0.0
|
|
82
|
-
*/
|
|
83
|
-
export interface Success {
|
|
84
|
-
/** 成功状态码 */
|
|
85
|
-
code: SuccessCode;
|
|
86
|
-
/** 成功信息 */
|
|
87
|
-
message: string;
|
|
88
|
-
}
|
|
89
|
-
/**
|
|
90
|
-
* XAiProvider 操作句柄接口
|
|
91
|
-
* @interface XAiProviderHandle
|
|
92
|
-
* @version 1.0.0
|
|
93
|
-
*/
|
|
94
|
-
export interface XAiProviderHandle {
|
|
95
|
-
/**
|
|
96
|
-
* 发送聊天消息
|
|
97
|
-
* @param content - 消息内容
|
|
98
|
-
* @type {(content: string) => void}
|
|
99
|
-
* @version 1.0.0
|
|
100
|
-
*/
|
|
101
|
-
chat: (content: string) => void;
|
|
102
|
-
/**
|
|
103
|
-
* 停止聊天
|
|
104
|
-
* @type {() => void}
|
|
105
|
-
* @version 1.0.0
|
|
106
|
-
*/
|
|
107
|
-
stopChat: () => void;
|
|
108
|
-
/**
|
|
109
|
-
* 重新发送聊天
|
|
110
|
-
* @type {() => void}
|
|
111
|
-
* @version 1.0.0
|
|
112
|
-
*/
|
|
113
|
-
reChat: () => void;
|
|
114
|
-
/**
|
|
115
|
-
* 获取应用信息
|
|
116
|
-
* @returns {any} 应用信息对象
|
|
117
|
-
* @type {() => any}
|
|
118
|
-
* @version 1.0.0
|
|
119
|
-
*/
|
|
120
|
-
getAppInfo: () => any;
|
|
121
|
-
/**
|
|
122
|
-
* 获取消息列表
|
|
123
|
-
* @returns {Messages[]} 消息数组
|
|
124
|
-
* @type {() => Messages[]}
|
|
125
|
-
* @version 1.0.0
|
|
126
|
-
*/
|
|
127
|
-
getMessages: () => Messages[];
|
|
128
|
-
/**
|
|
129
|
-
* 获取会话列表
|
|
130
|
-
* @returns {}
|
|
131
|
-
*/
|
|
132
|
-
getSessions: () => sessionData[];
|
|
133
|
-
/**
|
|
134
|
-
* 重新设置当前会话
|
|
135
|
-
* @param id - 会话ID
|
|
136
|
-
* @type {(id: string) => void}
|
|
137
|
-
* @version 1.0.0
|
|
138
|
-
*/
|
|
139
|
-
setCurrentSessionDetail: (id: string) => void;
|
|
140
|
-
}
|
|
141
|
-
export interface sessionConfig {
|
|
142
|
-
/**
|
|
143
|
-
* 是否展示会话列表
|
|
144
|
-
* @type {boolean}
|
|
145
|
-
* @default false
|
|
146
|
-
*/
|
|
147
|
-
showSessionList?: boolean;
|
|
148
|
-
}
|
|
149
|
-
export interface ChatConfig {
|
|
150
|
-
/**
|
|
151
|
-
* 是否展示清空按钮
|
|
152
|
-
* @type {boolean}
|
|
153
|
-
* @default false
|
|
154
|
-
*/
|
|
155
|
-
clearBtnShow?: boolean;
|
|
156
|
-
/**
|
|
157
|
-
* 是否展示输入框
|
|
158
|
-
* @type {boolean}
|
|
159
|
-
* @default true
|
|
160
|
-
*/
|
|
161
|
-
inputShow?: boolean;
|
|
162
|
-
}
|
|
163
|
-
/**
|
|
164
|
-
* XAiProvider 配置接口
|
|
165
|
-
* @interface XAiProviderConfig
|
|
166
|
-
* @version 1.0.0
|
|
167
|
-
*/
|
|
168
|
-
export interface XAiProviderConfig {
|
|
169
|
-
/**
|
|
170
|
-
* 应用唯一编号
|
|
171
|
-
* @type {string}
|
|
172
|
-
* @default undefined
|
|
173
|
-
* @version 1.0.0
|
|
174
|
-
*/
|
|
175
|
-
appNo?: string;
|
|
176
|
-
/**
|
|
177
|
-
* 授权方式
|
|
178
|
-
* @type {string}
|
|
179
|
-
* @default undefined
|
|
180
|
-
* @version 1.0.0
|
|
181
|
-
*/
|
|
182
|
-
pt?: string;
|
|
183
|
-
/**
|
|
184
|
-
* 租户key
|
|
185
|
-
* @type {string}
|
|
186
|
-
* @default undefined
|
|
187
|
-
* @version 1.0.0
|
|
188
|
-
*/
|
|
189
|
-
tc?: string;
|
|
190
|
-
/**
|
|
191
|
-
* 会话配置
|
|
192
|
-
* @type {sessionConfig}
|
|
193
|
-
*/
|
|
194
|
-
session?: sessionConfig;
|
|
195
|
-
/**
|
|
196
|
-
* 对话框配置
|
|
197
|
-
* @type {ChatConfig}
|
|
198
|
-
*/
|
|
199
|
-
chatProps?: ChatConfig;
|
|
200
|
-
/**
|
|
201
|
-
* 是否启用调试模式
|
|
202
|
-
* @type {boolean}
|
|
203
|
-
* @default false
|
|
204
|
-
* @version 1.0.0
|
|
205
|
-
*/
|
|
206
|
-
debug?: boolean;
|
|
207
|
-
}
|
|
208
|
-
/**
|
|
209
|
-
* XAiProvider 组件属性接口
|
|
210
|
-
* @interface XAiProviderProps
|
|
211
|
-
* @version 1.0.0
|
|
212
|
-
*/
|
|
213
|
-
export interface XAiProviderProps {
|
|
214
|
-
/**
|
|
215
|
-
* AI 服务地址
|
|
216
|
-
* @type {string}
|
|
217
|
-
* @version 1.0.0
|
|
218
|
-
*/
|
|
219
|
-
url: string;
|
|
220
|
-
/**
|
|
221
|
-
* 认证 token
|
|
222
|
-
* @type {string}
|
|
223
|
-
* @version 1.0.0
|
|
224
|
-
*/
|
|
225
|
-
token: string;
|
|
226
|
-
/**
|
|
227
|
-
* 配置信息
|
|
228
|
-
* @type {XAiProviderConfig}
|
|
229
|
-
* @default undefined
|
|
230
|
-
* @version 1.0.0
|
|
231
|
-
*/
|
|
232
|
-
config?: XAiProviderConfig;
|
|
233
|
-
/**
|
|
234
|
-
* Provider 唯一标识,用于区分多个 Provider 实例
|
|
235
|
-
* @type {string}
|
|
236
|
-
* @default undefined
|
|
237
|
-
* @version 1.0.0
|
|
238
|
-
*/
|
|
239
|
-
providerId?: string;
|
|
240
|
-
/**
|
|
241
|
-
* Token 刷新回调
|
|
242
|
-
* @type {() => Promise<string>}
|
|
243
|
-
* @default undefined
|
|
244
|
-
* @version 1.0.0
|
|
245
|
-
*/
|
|
246
|
-
onRefreshToken?: () => Promise<string>;
|
|
247
|
-
/**
|
|
248
|
-
* 应用无法正常渲染回调
|
|
249
|
-
* @type {(error: Error) => void}
|
|
250
|
-
* @default undefined
|
|
251
|
-
* @version 1.0.0
|
|
252
|
-
*/
|
|
253
|
-
onError?: (error: Error) => void;
|
|
254
|
-
/**
|
|
255
|
-
* 应用正常渲染回调
|
|
256
|
-
* @type {(success: Success) => void}
|
|
257
|
-
* @default undefined
|
|
258
|
-
* @version 1.0.0
|
|
259
|
-
*/
|
|
260
|
-
onSuccess?: (success: Success) => void;
|
|
261
|
-
/**
|
|
262
|
-
* 消息返回回调
|
|
263
|
-
* @type {(data: Messages) => void}
|
|
264
|
-
* @default undefined
|
|
265
|
-
* @version 1.0.0
|
|
266
|
-
*/
|
|
267
|
-
onMessage?: (content: string, data: Messages) => void;
|
|
268
|
-
/**
|
|
269
|
-
* 子组件
|
|
270
|
-
* @type {ReactNode}
|
|
271
|
-
* @version 1.0.0
|
|
272
|
-
*/
|
|
273
|
-
children: ReactNode;
|
|
274
|
-
}
|
|
275
|
-
/**
|
|
276
|
-
* XAiSDK 组件属性接口
|
|
277
|
-
* @interface XAiSDKProps
|
|
278
|
-
* @extends XAiProviderProps
|
|
279
|
-
* @version 1.0.0
|
|
280
|
-
*/
|
|
281
|
-
export interface XAiSDKProps extends XAiProviderProps {
|
|
282
|
-
/**
|
|
283
|
-
* 主题类型
|
|
284
|
-
* @type {ThemeType}
|
|
285
|
-
* @default 'default'
|
|
286
|
-
* @version 1.0.0
|
|
287
|
-
*/
|
|
288
|
-
theme?: ThemeType;
|
|
289
|
-
/**
|
|
290
|
-
* 组件属性配置
|
|
291
|
-
* @type {object}
|
|
292
|
-
* @default undefined
|
|
293
|
-
* @version 1.0.0
|
|
294
|
-
*/
|
|
295
|
-
componentProps?: {
|
|
296
|
-
/**
|
|
297
|
-
* 组件ID
|
|
298
|
-
* @type {string}
|
|
299
|
-
* @default undefined
|
|
300
|
-
* @version 1.0.0
|
|
301
|
-
*/
|
|
302
|
-
id?: string;
|
|
303
|
-
/** 支持任意 CSS 属性 */
|
|
304
|
-
[key: string]: any;
|
|
305
|
-
};
|
|
306
|
-
}
|
|
307
|
-
/**
|
|
308
|
-
* XAi 上下文类型接口
|
|
309
|
-
* @interface XAiContextType
|
|
310
|
-
* @extends Required<ChatbotMessageFields>
|
|
311
|
-
* @version 1.0.0
|
|
312
|
-
*/
|
|
313
|
-
export interface XAiContextType extends Required<ChatbotMessageFields> {
|
|
314
|
-
/**
|
|
315
|
-
* AI 客户端实例
|
|
316
|
-
* @type {AiClient | null}
|
|
317
|
-
* @default null
|
|
318
|
-
* @version 1.0.0
|
|
319
|
-
*/
|
|
320
|
-
client: AiClient | null;
|
|
321
|
-
/**
|
|
322
|
-
* 认证令牌
|
|
323
|
-
* @type {string}
|
|
324
|
-
* @version 1.0.0
|
|
325
|
-
*/
|
|
326
|
-
token: string;
|
|
327
|
-
/**
|
|
328
|
-
* 加载状态
|
|
329
|
-
* @type {boolean}
|
|
330
|
-
* @default false
|
|
331
|
-
* @version 1.0.0
|
|
332
|
-
*/
|
|
333
|
-
loading: boolean;
|
|
334
|
-
/**
|
|
335
|
-
* 错误信息
|
|
336
|
-
* @type {string | null}
|
|
337
|
-
* @default null
|
|
338
|
-
* @version 1.0.0
|
|
339
|
-
*/
|
|
340
|
-
error: string | null;
|
|
341
|
-
}
|
|
342
|
-
/**
|
|
343
|
-
* XAi 上下文对象
|
|
344
|
-
* @type {React.Context<XAiContextType | null>}
|
|
345
|
-
* @version 1.0.0
|
|
346
|
-
*/
|
|
347
|
-
export declare const XAiContext: React.Context<XAiContextType | null>;
|