@ai-group/chat-sdk 3.1.0 → 3.2.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/cjs/components/XAdkProvider/compound/Sidebar.js +3 -3
- package/dist/cjs/components/XAdkProvider/compound/Sidebar.js.map +2 -2
- package/dist/cjs/components/XAdkProvider/context/ChatActionContext.d.ts +6 -0
- package/dist/cjs/components/XAdkProvider/context/ChatActionContext.js.map +2 -2
- package/dist/cjs/components/XAdkProvider/context/SessionContext.d.ts +1 -1
- package/dist/cjs/components/XAdkProvider/context/SessionContext.js.map +1 -1
- package/dist/cjs/components/XAdkProvider/index.d.ts +2 -2
- package/dist/cjs/components/XAdkProvider/index.js +14 -8
- package/dist/cjs/components/XAdkProvider/index.js.map +2 -2
- package/dist/cjs/components/XAdkSender/index.js +1 -1
- package/dist/cjs/components/XAdkSender/index.js.map +1 -1
- package/dist/cjs/components/XAdkThoughtChain/styles.js +8 -3
- package/dist/cjs/components/XAdkThoughtChain/styles.js.map +2 -2
- package/dist/cjs/components/XAiProvider/index.js +4 -4
- package/dist/cjs/components/XAiProvider/index.js.map +2 -2
- package/dist/cjs/hooks/useADKChat.d.ts +2 -1
- package/dist/cjs/hooks/useADKChat.js +23 -6
- package/dist/cjs/hooks/useADKChat.js.map +2 -2
- package/dist/cjs/hooks/useAgentGenerator.d.ts +1 -1
- package/dist/cjs/hooks/useAgentGenerator.js +3 -3
- package/dist/cjs/hooks/useAgentGenerator.js.map +2 -2
- package/dist/cjs/types/ChatHook.d.ts +7 -1
- package/dist/cjs/types/ChatHook.js.map +1 -1
- package/dist/cjs/types/XAdkProvider.d.ts +16 -1
- package/dist/cjs/types/XAdkProvider.js.map +1 -1
- package/dist/cjs/types/XAiProvider.d.ts +1 -1
- package/dist/cjs/types/XAiProvider.js.map +1 -1
- package/dist/cjs/utils/umdEntry.d.ts +38 -8
- package/dist/cjs/utils/umdEntry.js +57 -9
- package/dist/cjs/utils/umdEntry.js.map +2 -2
- package/dist/esm/components/XAdkProvider/compound/Sidebar.js +3 -3
- package/dist/esm/components/XAdkProvider/compound/Sidebar.js.map +1 -1
- package/dist/esm/components/XAdkProvider/context/ChatActionContext.d.ts +6 -0
- package/dist/esm/components/XAdkProvider/context/ChatActionContext.js.map +1 -1
- package/dist/esm/components/XAdkProvider/context/SessionContext.d.ts +1 -1
- package/dist/esm/components/XAdkProvider/context/SessionContext.js.map +1 -1
- package/dist/esm/components/XAdkProvider/index.d.ts +2 -2
- package/dist/esm/components/XAdkProvider/index.js +12 -8
- package/dist/esm/components/XAdkProvider/index.js.map +1 -1
- package/dist/esm/components/XAdkSender/index.js +1 -1
- package/dist/esm/components/XAdkSender/index.js.map +1 -1
- package/dist/esm/components/XAdkThoughtChain/styles.js +3 -3
- package/dist/esm/components/XAdkThoughtChain/styles.js.map +1 -1
- package/dist/esm/components/XAiProvider/index.js +4 -4
- package/dist/esm/components/XAiProvider/index.js.map +1 -1
- package/dist/esm/hooks/useADKChat.d.ts +2 -1
- package/dist/esm/hooks/useADKChat.js +35 -15
- package/dist/esm/hooks/useADKChat.js.map +1 -1
- package/dist/esm/hooks/useAgentGenerator.d.ts +1 -1
- package/dist/esm/hooks/useAgentGenerator.js +4 -4
- package/dist/esm/hooks/useAgentGenerator.js.map +1 -1
- package/dist/esm/types/ChatHook.d.ts +7 -1
- package/dist/esm/types/ChatHook.js.map +1 -1
- package/dist/esm/types/XAdkProvider.d.ts +16 -1
- package/dist/esm/types/XAdkProvider.js.map +1 -1
- package/dist/esm/types/XAiProvider.d.ts +1 -1
- package/dist/esm/types/XAiProvider.js.map +1 -1
- package/dist/esm/utils/umdEntry.d.ts +38 -8
- package/dist/esm/utils/umdEntry.js +90 -24
- package/dist/esm/utils/umdEntry.js.map +1 -1
- package/dist/umd/chat-sdk.min.js +1 -1
- package/package.json +14 -12
|
@@ -140,7 +140,7 @@ var XAiWebSDK = /*#__PURE__*/function () {
|
|
|
140
140
|
// ————对外暴露的方法————
|
|
141
141
|
|
|
142
142
|
/**
|
|
143
|
-
*
|
|
143
|
+
* 获取当前数据(聚合方法)
|
|
144
144
|
* @returns 应用信息、消息列表、会话列表
|
|
145
145
|
*/
|
|
146
146
|
function getData() {
|
|
@@ -152,40 +152,105 @@ var XAiWebSDK = /*#__PURE__*/function () {
|
|
|
152
152
|
};
|
|
153
153
|
}
|
|
154
154
|
|
|
155
|
+
/**
|
|
156
|
+
* 获取应用信息
|
|
157
|
+
* @returns 应用信息
|
|
158
|
+
*/
|
|
159
|
+
}, {
|
|
160
|
+
key: "getAppInfo",
|
|
161
|
+
value: function getAppInfo() {
|
|
162
|
+
var _this$providerRef$cur4;
|
|
163
|
+
return (_this$providerRef$cur4 = this.providerRef.current) === null || _this$providerRef$cur4 === void 0 ? void 0 : _this$providerRef$cur4.getAppInfo();
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
/**
|
|
167
|
+
* 获取当前会话的消息列表
|
|
168
|
+
* @returns 消息列表
|
|
169
|
+
*/
|
|
170
|
+
}, {
|
|
171
|
+
key: "getMessages",
|
|
172
|
+
value: function getMessages() {
|
|
173
|
+
var _this$providerRef$cur5;
|
|
174
|
+
return (_this$providerRef$cur5 = this.providerRef.current) === null || _this$providerRef$cur5 === void 0 ? void 0 : _this$providerRef$cur5.getMessages();
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
/**
|
|
178
|
+
* 获取会话列表
|
|
179
|
+
* @returns 会话列表
|
|
180
|
+
*/
|
|
181
|
+
}, {
|
|
182
|
+
key: "getSessions",
|
|
183
|
+
value: function getSessions() {
|
|
184
|
+
var _this$providerRef$cur6;
|
|
185
|
+
return (_this$providerRef$cur6 = this.providerRef.current) === null || _this$providerRef$cur6 === void 0 ? void 0 : _this$providerRef$cur6.getSessions();
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
/**
|
|
189
|
+
* 设置消息列表
|
|
190
|
+
* @param msgs - 要设置的消息数组
|
|
191
|
+
*/
|
|
192
|
+
}, {
|
|
193
|
+
key: "setMessages",
|
|
194
|
+
value: function setMessages(msgs) {
|
|
195
|
+
var _this$providerRef$cur7;
|
|
196
|
+
(_this$providerRef$cur7 = this.providerRef.current) === null || _this$providerRef$cur7 === void 0 || _this$providerRef$cur7.setMessages(msgs);
|
|
197
|
+
}
|
|
198
|
+
|
|
155
199
|
/**
|
|
156
200
|
* 发送消息
|
|
157
201
|
* @param content - 消息内容
|
|
158
202
|
*
|
|
159
203
|
* @example
|
|
160
204
|
* ```javascript
|
|
161
|
-
* sdk.
|
|
205
|
+
* sdk.startChat({ text: 'Hello!' });
|
|
162
206
|
* ```
|
|
163
207
|
*/
|
|
164
208
|
}, {
|
|
165
|
-
key: "
|
|
166
|
-
value: function
|
|
167
|
-
var _this$providerRef$
|
|
168
|
-
(_this$providerRef$
|
|
209
|
+
key: "startChat",
|
|
210
|
+
value: function startChat(content) {
|
|
211
|
+
var _this$providerRef$cur8;
|
|
212
|
+
(_this$providerRef$cur8 = this.providerRef.current) === null || _this$providerRef$cur8 === void 0 || _this$providerRef$cur8.startChat(content);
|
|
169
213
|
}
|
|
170
214
|
|
|
171
215
|
/**
|
|
172
216
|
* 停止当前消息生成
|
|
173
217
|
*/
|
|
174
218
|
}, {
|
|
175
|
-
key: "
|
|
176
|
-
value: function
|
|
177
|
-
var _this$providerRef$
|
|
178
|
-
(_this$providerRef$
|
|
219
|
+
key: "stopChat",
|
|
220
|
+
value: function stopChat() {
|
|
221
|
+
var _this$providerRef$cur9;
|
|
222
|
+
(_this$providerRef$cur9 = this.providerRef.current) === null || _this$providerRef$cur9 === void 0 || _this$providerRef$cur9.stopChat();
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
/**
|
|
226
|
+
* 重新生成最后一条回复
|
|
227
|
+
*/
|
|
228
|
+
}, {
|
|
229
|
+
key: "reChat",
|
|
230
|
+
value: function reChat() {
|
|
231
|
+
var _this$providerRef$cur10;
|
|
232
|
+
(_this$providerRef$cur10 = this.providerRef.current) === null || _this$providerRef$cur10 === void 0 || _this$providerRef$cur10.reChat();
|
|
179
233
|
}
|
|
180
234
|
|
|
181
235
|
/**
|
|
182
236
|
* 清空当前会话
|
|
183
237
|
*/
|
|
184
238
|
}, {
|
|
185
|
-
key: "
|
|
186
|
-
value: function
|
|
187
|
-
var _this$providerRef$
|
|
188
|
-
(_this$providerRef$
|
|
239
|
+
key: "clearChat",
|
|
240
|
+
value: function clearChat() {
|
|
241
|
+
var _this$providerRef$cur11;
|
|
242
|
+
(_this$providerRef$cur11 = this.providerRef.current) === null || _this$providerRef$cur11 === void 0 || _this$providerRef$cur11.clearChat();
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
/**
|
|
246
|
+
* 切换到指定会话
|
|
247
|
+
* @param sessionId - 会话 ID
|
|
248
|
+
*/
|
|
249
|
+
}, {
|
|
250
|
+
key: "setCurrentSession",
|
|
251
|
+
value: function setCurrentSession(sessionId) {
|
|
252
|
+
var _this$providerRef$cur12;
|
|
253
|
+
(_this$providerRef$cur12 = this.providerRef.current) === null || _this$providerRef$cur12 === void 0 || _this$providerRef$cur12.setCurrentSession(sessionId);
|
|
189
254
|
}
|
|
190
255
|
|
|
191
256
|
/**
|
|
@@ -195,8 +260,8 @@ var XAiWebSDK = /*#__PURE__*/function () {
|
|
|
195
260
|
}, {
|
|
196
261
|
key: "deleteSession",
|
|
197
262
|
value: function deleteSession(sessionId) {
|
|
198
|
-
var _this$providerRef$
|
|
199
|
-
(_this$providerRef$
|
|
263
|
+
var _this$providerRef$cur13;
|
|
264
|
+
(_this$providerRef$cur13 = this.providerRef.current) === null || _this$providerRef$cur13 === void 0 || _this$providerRef$cur13.deleteSession(sessionId);
|
|
200
265
|
}
|
|
201
266
|
|
|
202
267
|
/**
|
|
@@ -207,19 +272,20 @@ var XAiWebSDK = /*#__PURE__*/function () {
|
|
|
207
272
|
}, {
|
|
208
273
|
key: "updateSession",
|
|
209
274
|
value: function updateSession(sessionId, title) {
|
|
210
|
-
var _this$providerRef$
|
|
211
|
-
(_this$providerRef$
|
|
275
|
+
var _this$providerRef$cur14;
|
|
276
|
+
(_this$providerRef$cur14 = this.providerRef.current) === null || _this$providerRef$cur14 === void 0 || _this$providerRef$cur14.updateSession(sessionId, title);
|
|
212
277
|
}
|
|
213
278
|
|
|
214
279
|
/**
|
|
215
|
-
*
|
|
216
|
-
*
|
|
280
|
+
* 设置自定义业务参数 (stateDelta)
|
|
281
|
+
* 设置后每次发送消息时会自动携带至后端
|
|
282
|
+
* @param delta - 自定义参数,传入 undefined 可清除
|
|
217
283
|
*/
|
|
218
284
|
}, {
|
|
219
|
-
key: "
|
|
220
|
-
value: function
|
|
221
|
-
var _this$providerRef$
|
|
222
|
-
(_this$providerRef$
|
|
285
|
+
key: "setStateDelta",
|
|
286
|
+
value: function setStateDelta(delta) {
|
|
287
|
+
var _this$providerRef$cur15;
|
|
288
|
+
(_this$providerRef$cur15 = this.providerRef.current) === null || _this$providerRef$cur15 === void 0 || _this$providerRef$cur15.setStateDelta(delta);
|
|
223
289
|
}
|
|
224
290
|
}], [{
|
|
225
291
|
key: "initChatbot",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createRef","ReactDOM","XAdkProvider","jsx","_jsx","XAiWebSDK","container","props","_classCallCheck","_defineProperty","onError","onSuccess","onMessage","mount","_createClass","key","value","_config$session$showS","_config$session","_config$allowUpload","_config$chatProps$cle","_config$chatProps","_this$props$config","config","showSessionList","session","allowUpload","clearBtnShow","chatProps","createRoot","root","render","style","width","height","children","_objectSpread","ref","providerRef","DefaultLayout","showFnCallDetail","unmount","getData","_this$providerRef$cur","_this$providerRef$cur2","_this$providerRef$cur3","appInfo","current","getAppInfo","messages","getMessages","sessions","getSessions","chat","content","_this$providerRef$cur4","startChat","stop","_this$providerRef$cur5","stopChat","clear","_this$providerRef$cur6","clearChat","deleteSession","sessionId","_this$providerRef$cur7","updateSession","title","_this$providerRef$cur8","switchSession","_this$providerRef$cur9","setCurrentSessionDetail","initChatbot","_props$componentProps","componentProps","id","existingContainer","document","getElementById","createElement","_props$componentProps2","styleProps","_objectWithoutProperties","_excluded","Object","assign","parentNode","body","appendChild","create","window"],"sources":["../../../src/utils/umdEntry.tsx"],"sourcesContent":["import { createRef } from \"react\";\nimport ReactDOM from \"react-dom/client\";\nimport { XAdkSDKProps, XAdkProviderHandle, IMessage } from \"@/types\";\nimport XAdkProvider from \"@/components/XAdkProvider\";\nimport { SendContent } from \"@/types\";\n\n/**\n * XAiWebSDK - UMD 入口类\n *\n * 用于通过 <script> 标签引入 SDK 的场景\n *\n * @example\n * ```html\n * <script src=\"chat-sdk.min.js\"></script>\n * <script>\n * const sdk = XAiWebSDK.initChatbot({\n * url: 'https://api.example.com',\n * token: 'your-token',\n * config: {\n * appNo: 'your-app-no',\n * session: {\n * showSessionList: true\n * }\n * }\n * });\n * </script>\n * ```\n */\nclass XAiWebSDK {\n container: HTMLElement;\n\n props: XAdkSDKProps;\n\n root: any;\n\n providerRef = createRef<XAdkProviderHandle>();\n\n // ———— hook ————\n onError?: (error: any) => void;\n\n onSuccess?: (appInfo: any) => void;\n\n onMessage?: (content: string, data: IMessage) => void;\n\n constructor(container: HTMLElement, props: XAdkSDKProps) {\n this.container = container;\n this.props = props;\n this.onError = props.onError;\n this.onSuccess = props.onSuccess;\n this.onMessage = props.onMessage;\n this.mount();\n }\n\n mount() {\n // 提取配置\n const { config = {} } = this.props;\n const showSessionList = config.session?.showSessionList ?? false;\n const allowUpload = config.allowUpload ?? false;\n const clearBtnShow = config.chatProps?.clearBtnShow ?? true;\n\n if (ReactDOM.createRoot) {\n this.root = ReactDOM.createRoot(this.container);\n this.root.render(\n <div style={{ width: \"100%\", height: \"100%\" }}>\n <XAdkProvider ref={this.providerRef} {...this.props}>\n {/* 使用 DefaultLayout 作为默认布局 */}\n <XAdkProvider.DefaultLayout\n showSessionList={showSessionList}\n allowUpload={allowUpload}\n clearBtnShow={clearBtnShow}\n showFnCallDetail={true}\n />\n </XAdkProvider>\n </div>,\n );\n } else {\n // 兼容 React 17\n // @ts-ignore\n ReactDOM.render(\n <div style={{ width: \"100%\", height: \"100%\" }}>\n <XAdkProvider ref={this.providerRef} {...this.props}>\n <XAdkProvider.DefaultLayout\n showSessionList={showSessionList}\n allowUpload={allowUpload}\n clearBtnShow={clearBtnShow}\n showFnCallDetail={true}\n />\n </XAdkProvider>\n </div>,\n this.container,\n );\n }\n }\n\n unmount() {\n if (this.root && this.root.unmount) {\n this.root.unmount();\n }\n }\n\n /**\n * 初始化聊天机器人(推荐方式)\n *\n * @param props - SDK 配置参数\n * @returns XAiWebSDK 实例\n *\n * @example\n * ```javascript\n * const sdk = XAiWebSDK.initChatbot({\n * url: 'https://api.example.com',\n * token: 'your-token',\n * config: {\n * appNo: 'your-app-no',\n * session: {\n * showSessionList: true // 显示会话列表\n * },\n * allowUpload: true, // 允许文件上传\n * chatProps: {\n * clearBtnShow: false // 隐藏清空按钮\n * }\n * },\n * componentProps: {\n * id: 'my-chatbot', // 容器 ID\n * width: '100%',\n * height: '600px'\n * }\n * });\n * ```\n */\n static initChatbot(props: XAdkSDKProps): XAiWebSDK {\n let container: HTMLElement;\n\n // 检查是否有指定的 componentProps.id\n if (props.componentProps?.id) {\n const existingContainer = document.getElementById(\n props.componentProps.id,\n );\n if (existingContainer) {\n container = existingContainer;\n } else {\n // 如果指定的 ID 不存在,创建新元素\n container = document.createElement(\"div\");\n container.id = props.componentProps.id;\n }\n } else {\n // 没有指定 ID,创建默认容器\n container = document.createElement(\"div\");\n container.id = \"xai-chatbot-container\";\n }\n\n // 设置容器样式 - 将除了 id 以外的所有属性都应用到容器\n if (props.componentProps) {\n const { id, ...styleProps } = props.componentProps;\n Object.assign(container.style, styleProps);\n }\n\n // 如果容器不在 DOM 中,添加到 body\n if (!container.parentNode) {\n document.body.appendChild(container);\n }\n\n return new XAiWebSDK(container, props);\n }\n\n /**\n * 兼容旧版本的静态方法\n * @deprecated 使用 initChatbot 替代\n */\n static create(props: XAdkSDKProps): XAiWebSDK {\n return this.initChatbot(props);\n }\n\n // ————对外暴露的方法————\n\n /**\n * 获取当前数据\n * @returns 应用信息、消息列表、会话列表\n */\n getData() {\n return {\n appInfo: this.providerRef.current?.getAppInfo(),\n messages: this.providerRef.current?.getMessages(),\n sessions: this.providerRef.current?.getSessions(),\n };\n }\n\n /**\n * 发送消息\n * @param content - 消息内容\n *\n * @example\n * ```javascript\n * sdk.chat({ text: 'Hello!' });\n * ```\n */\n chat(content: SendContent) {\n this.providerRef.current?.startChat(content);\n }\n\n /**\n * 停止当前消息生成\n */\n stop() {\n this.providerRef.current?.stopChat();\n }\n\n /**\n * 清空当前会话\n */\n clear() {\n this.providerRef.current?.clearChat();\n }\n\n /**\n * 删除指定会话\n * @param sessionId - 会话 ID\n */\n deleteSession(sessionId: string) {\n this.providerRef.current?.deleteSession(sessionId);\n }\n\n /**\n * 更新会话标题\n * @param sessionId - 会话 ID\n * @param title - 新标题\n */\n updateSession(sessionId: string, title: string) {\n this.providerRef.current?.updateSession(sessionId, title);\n }\n\n /**\n * 切换到指定会话\n * @param sessionId - 会话 ID\n */\n switchSession(sessionId: string) {\n this.providerRef.current?.setCurrentSessionDetail(sessionId);\n }\n}\n\n// 兼容 window 方式,也支持 new\n// @ts-ignore\nwindow.XAiWebSDK = XAiWebSDK;\n\n// 支持 ESModule/UMD 直接 import\nexport default XAiWebSDK;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["createRef","ReactDOM","XAdkProvider","jsx","_jsx","XAiWebSDK","container","props","_classCallCheck","_defineProperty","onError","onSuccess","onMessage","mount","_createClass","key","value","_config$session$showS","_config$session","_config$allowUpload","_config$chatProps$cle","_config$chatProps","_this$props$config","config","showSessionList","session","allowUpload","clearBtnShow","chatProps","createRoot","root","render","style","width","height","children","_objectSpread","ref","providerRef","DefaultLayout","showFnCallDetail","unmount","getData","_this$providerRef$cur","_this$providerRef$cur2","_this$providerRef$cur3","appInfo","current","getAppInfo","messages","getMessages","sessions","getSessions","_this$providerRef$cur4","_this$providerRef$cur5","_this$providerRef$cur6","setMessages","msgs","_this$providerRef$cur7","startChat","content","_this$providerRef$cur8","stopChat","_this$providerRef$cur9","reChat","_this$providerRef$cur10","clearChat","_this$providerRef$cur11","setCurrentSession","sessionId","_this$providerRef$cur12","deleteSession","_this$providerRef$cur13","updateSession","title","_this$providerRef$cur14","setStateDelta","delta","_this$providerRef$cur15","initChatbot","_props$componentProps","componentProps","id","existingContainer","document","getElementById","createElement","_props$componentProps2","styleProps","_objectWithoutProperties","_excluded","Object","assign","parentNode","body","appendChild","create","window"],"sources":["../../../src/utils/umdEntry.tsx"],"sourcesContent":["import { createRef } from \"react\";\nimport ReactDOM from \"react-dom/client\";\nimport { XAdkSDKProps, XAdkProviderHandle, IMessage } from \"@/types\";\nimport XAdkProvider from \"@/components/XAdkProvider\";\nimport { SendContent } from \"@/types\";\n\n/**\n * XAiWebSDK - UMD 入口类\n *\n * 用于通过 <script> 标签引入 SDK 的场景\n *\n * @example\n * ```html\n * <script src=\"chat-sdk.min.js\"></script>\n * <script>\n * const sdk = XAiWebSDK.initChatbot({\n * url: 'https://api.example.com',\n * token: 'your-token',\n * config: {\n * appNo: 'your-app-no',\n * session: {\n * showSessionList: true\n * }\n * }\n * });\n * </script>\n * ```\n */\nclass XAiWebSDK {\n container: HTMLElement;\n\n props: XAdkSDKProps;\n\n root: any;\n\n providerRef = createRef<XAdkProviderHandle>();\n\n // ———— hook ————\n onError?: (error: any) => void;\n\n onSuccess?: (appInfo: any) => void;\n\n onMessage?: (content: string, data: IMessage) => void;\n\n constructor(container: HTMLElement, props: XAdkSDKProps) {\n this.container = container;\n this.props = props;\n this.onError = props.onError;\n this.onSuccess = props.onSuccess;\n this.onMessage = props.onMessage;\n this.mount();\n }\n\n mount() {\n // 提取配置\n const { config = {} } = this.props;\n const showSessionList = config.session?.showSessionList ?? false;\n const allowUpload = config.allowUpload ?? false;\n const clearBtnShow = config.chatProps?.clearBtnShow ?? true;\n\n if (ReactDOM.createRoot) {\n this.root = ReactDOM.createRoot(this.container);\n this.root.render(\n <div style={{ width: \"100%\", height: \"100%\" }}>\n <XAdkProvider ref={this.providerRef} {...this.props}>\n {/* 使用 DefaultLayout 作为默认布局 */}\n <XAdkProvider.DefaultLayout\n showSessionList={showSessionList}\n allowUpload={allowUpload}\n clearBtnShow={clearBtnShow}\n showFnCallDetail={true}\n />\n </XAdkProvider>\n </div>,\n );\n } else {\n // 兼容 React 17\n // @ts-ignore\n ReactDOM.render(\n <div style={{ width: \"100%\", height: \"100%\" }}>\n <XAdkProvider ref={this.providerRef} {...this.props}>\n <XAdkProvider.DefaultLayout\n showSessionList={showSessionList}\n allowUpload={allowUpload}\n clearBtnShow={clearBtnShow}\n showFnCallDetail={true}\n />\n </XAdkProvider>\n </div>,\n this.container,\n );\n }\n }\n\n unmount() {\n if (this.root && this.root.unmount) {\n this.root.unmount();\n }\n }\n\n /**\n * 初始化聊天机器人(推荐方式)\n *\n * @param props - SDK 配置参数\n * @returns XAiWebSDK 实例\n *\n * @example\n * ```javascript\n * const sdk = XAiWebSDK.initChatbot({\n * url: 'https://api.example.com',\n * token: 'your-token',\n * config: {\n * appNo: 'your-app-no',\n * session: {\n * showSessionList: true // 显示会话列表\n * },\n * allowUpload: true, // 允许文件上传\n * chatProps: {\n * clearBtnShow: false // 隐藏清空按钮\n * }\n * },\n * componentProps: {\n * id: 'my-chatbot', // 容器 ID\n * width: '100%',\n * height: '600px'\n * }\n * });\n * ```\n */\n static initChatbot(props: XAdkSDKProps): XAiWebSDK {\n let container: HTMLElement;\n\n // 检查是否有指定的 componentProps.id\n if (props.componentProps?.id) {\n const existingContainer = document.getElementById(\n props.componentProps.id,\n );\n if (existingContainer) {\n container = existingContainer;\n } else {\n // 如果指定的 ID 不存在,创建新元素\n container = document.createElement(\"div\");\n container.id = props.componentProps.id;\n }\n } else {\n // 没有指定 ID,创建默认容器\n container = document.createElement(\"div\");\n container.id = \"xai-chatbot-container\";\n }\n\n // 设置容器样式 - 将除了 id 以外的所有属性都应用到容器\n if (props.componentProps) {\n const { id, ...styleProps } = props.componentProps;\n Object.assign(container.style, styleProps);\n }\n\n // 如果容器不在 DOM 中,添加到 body\n if (!container.parentNode) {\n document.body.appendChild(container);\n }\n\n return new XAiWebSDK(container, props);\n }\n\n /**\n * 兼容旧版本的静态方法\n * @deprecated 使用 initChatbot 替代\n */\n static create(props: XAdkSDKProps): XAiWebSDK {\n return this.initChatbot(props);\n }\n\n // ————对外暴露的方法————\n\n /**\n * 获取当前数据(聚合方法)\n * @returns 应用信息、消息列表、会话列表\n */\n getData() {\n return {\n appInfo: this.providerRef.current?.getAppInfo(),\n messages: this.providerRef.current?.getMessages(),\n sessions: this.providerRef.current?.getSessions(),\n };\n }\n\n /**\n * 获取应用信息\n * @returns 应用信息\n */\n getAppInfo() {\n return this.providerRef.current?.getAppInfo();\n }\n\n /**\n * 获取当前会话的消息列表\n * @returns 消息列表\n */\n getMessages() {\n return this.providerRef.current?.getMessages();\n }\n\n /**\n * 获取会话列表\n * @returns 会话列表\n */\n getSessions() {\n return this.providerRef.current?.getSessions();\n }\n\n /**\n * 设置消息列表\n * @param msgs - 要设置的消息数组\n */\n setMessages(msgs: IMessage[]) {\n this.providerRef.current?.setMessages(msgs);\n }\n\n /**\n * 发送消息\n * @param content - 消息内容\n *\n * @example\n * ```javascript\n * sdk.startChat({ text: 'Hello!' });\n * ```\n */\n startChat(content: SendContent) {\n this.providerRef.current?.startChat(content);\n }\n\n /**\n * 停止当前消息生成\n */\n stopChat() {\n this.providerRef.current?.stopChat();\n }\n\n /**\n * 重新生成最后一条回复\n */\n reChat() {\n this.providerRef.current?.reChat();\n }\n\n /**\n * 清空当前会话\n */\n clearChat() {\n this.providerRef.current?.clearChat();\n }\n\n /**\n * 切换到指定会话\n * @param sessionId - 会话 ID\n */\n setCurrentSession(sessionId: string) {\n this.providerRef.current?.setCurrentSession(sessionId);\n }\n\n /**\n * 删除指定会话\n * @param sessionId - 会话 ID\n */\n deleteSession(sessionId: string) {\n this.providerRef.current?.deleteSession(sessionId);\n }\n\n /**\n * 更新会话标题\n * @param sessionId - 会话 ID\n * @param title - 新标题\n */\n updateSession(sessionId: string, title: string) {\n this.providerRef.current?.updateSession(sessionId, title);\n }\n\n /**\n * 设置自定义业务参数 (stateDelta)\n * 设置后每次发送消息时会自动携带至后端\n * @param delta - 自定义参数,传入 undefined 可清除\n */\n setStateDelta(delta: Record<string, any> | undefined) {\n this.providerRef.current?.setStateDelta(delta);\n }\n}\n\n// 兼容 window 方式,也支持 new\n// @ts-ignore\nwindow.XAiWebSDK = XAiWebSDK;\n\n// 支持 ESModule/UMD 直接 import\nexport default XAiWebSDK;\n"],"mappings":"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"}
|