@ai-group/chat-sdk 3.4.6 → 3.5.0-alpha1
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/FolderTree/styles.js +2 -1
- package/dist/cjs/components/FolderTree/styles.js.map +2 -2
- package/dist/cjs/components/XAdkChatbot/index.d.ts +2 -2
- package/dist/cjs/components/XAdkChatbot/index.js +433 -389
- package/dist/cjs/components/XAdkChatbot/index.js.map +2 -2
- package/dist/cjs/components/XAdkThoughtChain/styles.d.ts +0 -1
- package/dist/cjs/components/XAdkThoughtChain/styles.js +0 -9
- package/dist/cjs/components/XAdkThoughtChain/styles.js.map +2 -2
- package/dist/cjs/hooks/useADKChat.js +2 -0
- package/dist/cjs/hooks/useADKChat.js.map +2 -2
- package/dist/cjs/presets/xGroupAdk.js +0 -1
- package/dist/cjs/presets/xGroupAdk.js.map +2 -2
- package/dist/cjs/types/XAdkChatbot.d.ts +12 -0
- package/dist/cjs/types/XAdkChatbot.js.map +1 -1
- package/dist/cjs/utils/umdEntry.d.ts +25 -1
- package/dist/cjs/utils/umdEntry.js +126 -41
- package/dist/cjs/utils/umdEntry.js.map +3 -3
- package/dist/esm/components/FolderTree/styles.js +1 -1
- package/dist/esm/components/FolderTree/styles.js.map +1 -1
- package/dist/esm/components/XAdkChatbot/index.d.ts +2 -2
- package/dist/esm/components/XAdkChatbot/index.js +69 -14
- package/dist/esm/components/XAdkChatbot/index.js.map +1 -1
- package/dist/esm/components/XAdkThoughtChain/styles.d.ts +0 -1
- package/dist/esm/components/XAdkThoughtChain/styles.js +19 -20
- package/dist/esm/components/XAdkThoughtChain/styles.js.map +1 -1
- package/dist/esm/hooks/useADKChat.js +10 -6
- package/dist/esm/hooks/useADKChat.js.map +1 -1
- package/dist/esm/presets/xGroupAdk.js +0 -1
- package/dist/esm/presets/xGroupAdk.js.map +1 -1
- package/dist/esm/types/XAdkChatbot.d.ts +12 -0
- package/dist/esm/types/XAdkChatbot.js.map +1 -1
- package/dist/esm/utils/umdEntry.d.ts +25 -1
- package/dist/esm/utils/umdEntry.js +162 -70
- package/dist/esm/utils/umdEntry.js.map +1 -1
- package/dist/umd/chat-sdk.min.js +1 -1
- package/package.json +1 -1
|
@@ -1,13 +1,99 @@
|
|
|
1
|
-
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
2
|
-
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
3
1
|
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
|
4
2
|
import _createClass from "@babel/runtime/helpers/esm/createClass";
|
|
5
3
|
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
6
|
-
|
|
7
|
-
import
|
|
4
|
+
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
5
|
+
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
6
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
7
|
+
var _excluded = ["token", "showSessionList", "allowUpload", "draggable", "clearBtnShow"],
|
|
8
|
+
_excluded2 = ["id"];
|
|
9
|
+
import { createRef, useState, useImperativeHandle, forwardRef } from "react";
|
|
8
10
|
import ReactDOM from "react-dom/client";
|
|
9
11
|
import XAdkProvider from "../components/XAdkProvider";
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* 内部包装组件:管理 token 状态,支持运行时动态更新
|
|
15
|
+
*/
|
|
10
16
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
17
|
+
var SDKWrapper = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
18
|
+
var initialToken = _ref.token,
|
|
19
|
+
showSessionList = _ref.showSessionList,
|
|
20
|
+
allowUpload = _ref.allowUpload,
|
|
21
|
+
draggable = _ref.draggable,
|
|
22
|
+
clearBtnShow = _ref.clearBtnShow,
|
|
23
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
24
|
+
var _useState = useState(initialToken),
|
|
25
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
26
|
+
token = _useState2[0],
|
|
27
|
+
setToken = _useState2[1];
|
|
28
|
+
var providerRef = /*#__PURE__*/createRef();
|
|
29
|
+
useImperativeHandle(ref, function () {
|
|
30
|
+
return {
|
|
31
|
+
setToken: setToken,
|
|
32
|
+
startChat: function startChat(content) {
|
|
33
|
+
var _providerRef$current;
|
|
34
|
+
return (_providerRef$current = providerRef.current) === null || _providerRef$current === void 0 ? void 0 : _providerRef$current.startChat(content);
|
|
35
|
+
},
|
|
36
|
+
stopChat: function stopChat() {
|
|
37
|
+
var _providerRef$current2;
|
|
38
|
+
return (_providerRef$current2 = providerRef.current) === null || _providerRef$current2 === void 0 ? void 0 : _providerRef$current2.stopChat();
|
|
39
|
+
},
|
|
40
|
+
reChat: function reChat() {
|
|
41
|
+
var _providerRef$current3;
|
|
42
|
+
return (_providerRef$current3 = providerRef.current) === null || _providerRef$current3 === void 0 ? void 0 : _providerRef$current3.reChat();
|
|
43
|
+
},
|
|
44
|
+
clearChat: function clearChat() {
|
|
45
|
+
var _providerRef$current4;
|
|
46
|
+
return (_providerRef$current4 = providerRef.current) === null || _providerRef$current4 === void 0 ? void 0 : _providerRef$current4.clearChat();
|
|
47
|
+
},
|
|
48
|
+
deleteSession: function deleteSession(id) {
|
|
49
|
+
var _providerRef$current5;
|
|
50
|
+
return (_providerRef$current5 = providerRef.current) === null || _providerRef$current5 === void 0 ? void 0 : _providerRef$current5.deleteSession(id);
|
|
51
|
+
},
|
|
52
|
+
updateSession: function updateSession(id, title) {
|
|
53
|
+
var _providerRef$current6;
|
|
54
|
+
return (_providerRef$current6 = providerRef.current) === null || _providerRef$current6 === void 0 ? void 0 : _providerRef$current6.updateSession(id, title);
|
|
55
|
+
},
|
|
56
|
+
getAppInfo: function getAppInfo() {
|
|
57
|
+
var _providerRef$current7;
|
|
58
|
+
return (_providerRef$current7 = providerRef.current) === null || _providerRef$current7 === void 0 ? void 0 : _providerRef$current7.getAppInfo();
|
|
59
|
+
},
|
|
60
|
+
getMessages: function getMessages() {
|
|
61
|
+
var _providerRef$current$, _providerRef$current8;
|
|
62
|
+
return (_providerRef$current$ = (_providerRef$current8 = providerRef.current) === null || _providerRef$current8 === void 0 ? void 0 : _providerRef$current8.getMessages()) !== null && _providerRef$current$ !== void 0 ? _providerRef$current$ : [];
|
|
63
|
+
},
|
|
64
|
+
getSessions: function getSessions() {
|
|
65
|
+
var _providerRef$current$2, _providerRef$current9;
|
|
66
|
+
return (_providerRef$current$2 = (_providerRef$current9 = providerRef.current) === null || _providerRef$current9 === void 0 ? void 0 : _providerRef$current9.getSessions()) !== null && _providerRef$current$2 !== void 0 ? _providerRef$current$2 : [];
|
|
67
|
+
},
|
|
68
|
+
setMessages: function setMessages(msgs) {
|
|
69
|
+
var _providerRef$current10;
|
|
70
|
+
return (_providerRef$current10 = providerRef.current) === null || _providerRef$current10 === void 0 ? void 0 : _providerRef$current10.setMessages(msgs);
|
|
71
|
+
},
|
|
72
|
+
setCurrentSession: function setCurrentSession(id) {
|
|
73
|
+
var _providerRef$current11;
|
|
74
|
+
return (_providerRef$current11 = providerRef.current) === null || _providerRef$current11 === void 0 ? void 0 : _providerRef$current11.setCurrentSession(id);
|
|
75
|
+
},
|
|
76
|
+
setStateDelta: function setStateDelta(delta) {
|
|
77
|
+
var _providerRef$current12;
|
|
78
|
+
return (_providerRef$current12 = providerRef.current) === null || _providerRef$current12 === void 0 ? void 0 : _providerRef$current12.setStateDelta(delta);
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
}, [providerRef]);
|
|
82
|
+
return /*#__PURE__*/_jsx(XAdkProvider, _objectSpread(_objectSpread({
|
|
83
|
+
ref: providerRef
|
|
84
|
+
}, rest), {}, {
|
|
85
|
+
token: token,
|
|
86
|
+
children: /*#__PURE__*/_jsx(XAdkProvider.DefaultLayout, {
|
|
87
|
+
showSessionList: showSessionList,
|
|
88
|
+
allowUpload: allowUpload,
|
|
89
|
+
draggable: draggable,
|
|
90
|
+
clearBtnShow: clearBtnShow,
|
|
91
|
+
showFnCallDetail: true
|
|
92
|
+
})
|
|
93
|
+
}));
|
|
94
|
+
});
|
|
95
|
+
SDKWrapper.displayName = "SDKWrapper";
|
|
96
|
+
|
|
11
97
|
/**
|
|
12
98
|
* XAiWebSDK - UMD 入口类
|
|
13
99
|
*
|
|
@@ -27,6 +113,9 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
27
113
|
* }
|
|
28
114
|
* }
|
|
29
115
|
* });
|
|
116
|
+
*
|
|
117
|
+
* // token 过期后动态更新
|
|
118
|
+
* sdk.setToken('new-token');
|
|
30
119
|
* </script>
|
|
31
120
|
* ```
|
|
32
121
|
*/
|
|
@@ -36,7 +125,7 @@ var XAiWebSDK = /*#__PURE__*/function () {
|
|
|
36
125
|
_defineProperty(this, "container", void 0);
|
|
37
126
|
_defineProperty(this, "props", void 0);
|
|
38
127
|
_defineProperty(this, "root", void 0);
|
|
39
|
-
_defineProperty(this, "
|
|
128
|
+
_defineProperty(this, "wrapperRef", /*#__PURE__*/createRef());
|
|
40
129
|
// ———— hook ————
|
|
41
130
|
_defineProperty(this, "onError", void 0);
|
|
42
131
|
_defineProperty(this, "onSuccess", void 0);
|
|
@@ -59,45 +148,27 @@ var XAiWebSDK = /*#__PURE__*/function () {
|
|
|
59
148
|
var allowUpload = (_config$allowUpload = config.allowUpload) !== null && _config$allowUpload !== void 0 ? _config$allowUpload : false;
|
|
60
149
|
var draggable = (_config$draggable = config.draggable) !== null && _config$draggable !== void 0 ? _config$draggable : true;
|
|
61
150
|
var clearBtnShow = (_config$chatProps$cle = (_config$chatProps = config.chatProps) === null || _config$chatProps === void 0 ? void 0 : _config$chatProps.clearBtnShow) !== null && _config$chatProps$cle !== void 0 ? _config$chatProps$cle : true;
|
|
151
|
+
var element = /*#__PURE__*/_jsx("div", {
|
|
152
|
+
style: {
|
|
153
|
+
width: "100%",
|
|
154
|
+
height: "100%"
|
|
155
|
+
},
|
|
156
|
+
children: /*#__PURE__*/_jsx(SDKWrapper, _objectSpread(_objectSpread({
|
|
157
|
+
ref: this.wrapperRef
|
|
158
|
+
}, this.props), {}, {
|
|
159
|
+
showSessionList: showSessionList,
|
|
160
|
+
allowUpload: allowUpload,
|
|
161
|
+
draggable: draggable,
|
|
162
|
+
clearBtnShow: clearBtnShow
|
|
163
|
+
}))
|
|
164
|
+
});
|
|
62
165
|
if (ReactDOM.createRoot) {
|
|
63
166
|
this.root = ReactDOM.createRoot(this.container);
|
|
64
|
-
this.root.render(
|
|
65
|
-
style: {
|
|
66
|
-
width: "100%",
|
|
67
|
-
height: "100%"
|
|
68
|
-
},
|
|
69
|
-
children: /*#__PURE__*/_jsx(XAdkProvider, _objectSpread(_objectSpread({
|
|
70
|
-
ref: this.providerRef
|
|
71
|
-
}, this.props), {}, {
|
|
72
|
-
children: /*#__PURE__*/_jsx(XAdkProvider.DefaultLayout, {
|
|
73
|
-
showSessionList: showSessionList,
|
|
74
|
-
allowUpload: allowUpload,
|
|
75
|
-
draggable: draggable,
|
|
76
|
-
clearBtnShow: clearBtnShow,
|
|
77
|
-
showFnCallDetail: true
|
|
78
|
-
})
|
|
79
|
-
}))
|
|
80
|
-
}));
|
|
167
|
+
this.root.render(element);
|
|
81
168
|
} else {
|
|
82
169
|
// 兼容 React 17
|
|
83
170
|
// @ts-ignore
|
|
84
|
-
ReactDOM.render(
|
|
85
|
-
style: {
|
|
86
|
-
width: "100%",
|
|
87
|
-
height: "100%"
|
|
88
|
-
},
|
|
89
|
-
children: /*#__PURE__*/_jsx(XAdkProvider, _objectSpread(_objectSpread({
|
|
90
|
-
ref: this.providerRef
|
|
91
|
-
}, this.props), {}, {
|
|
92
|
-
children: /*#__PURE__*/_jsx(XAdkProvider.DefaultLayout, {
|
|
93
|
-
showSessionList: showSessionList,
|
|
94
|
-
allowUpload: allowUpload,
|
|
95
|
-
draggable: draggable,
|
|
96
|
-
clearBtnShow: clearBtnShow,
|
|
97
|
-
showFnCallDetail: true
|
|
98
|
-
})
|
|
99
|
-
}))
|
|
100
|
-
}), this.container);
|
|
171
|
+
ReactDOM.render(element, this.container);
|
|
101
172
|
}
|
|
102
173
|
}
|
|
103
174
|
}, {
|
|
@@ -138,20 +209,41 @@ var XAiWebSDK = /*#__PURE__*/function () {
|
|
|
138
209
|
* ```
|
|
139
210
|
*/
|
|
140
211
|
}, {
|
|
141
|
-
key: "
|
|
212
|
+
key: "setToken",
|
|
142
213
|
value:
|
|
143
214
|
// ————对外暴露的方法————
|
|
144
215
|
|
|
216
|
+
/**
|
|
217
|
+
* 动态更新认证 token
|
|
218
|
+
*
|
|
219
|
+
* 用于 token 过期后刷新,更新后后续的 API 请求将使用新 token,无需重新初始化 SDK。
|
|
220
|
+
*
|
|
221
|
+
* @param token - 新的认证 token
|
|
222
|
+
*
|
|
223
|
+
* @example
|
|
224
|
+
* ```javascript
|
|
225
|
+
* // 监听到 token 过期后
|
|
226
|
+
* const newToken = await refreshToken();
|
|
227
|
+
* sdk.setToken(newToken);
|
|
228
|
+
* ```
|
|
229
|
+
*/
|
|
230
|
+
function setToken(token) {
|
|
231
|
+
var _this$wrapperRef$curr;
|
|
232
|
+
(_this$wrapperRef$curr = this.wrapperRef.current) === null || _this$wrapperRef$curr === void 0 || _this$wrapperRef$curr.setToken(token);
|
|
233
|
+
}
|
|
234
|
+
|
|
145
235
|
/**
|
|
146
236
|
* 获取当前数据(聚合方法)
|
|
147
237
|
* @returns 应用信息、消息列表、会话列表
|
|
148
238
|
*/
|
|
149
|
-
|
|
150
|
-
|
|
239
|
+
}, {
|
|
240
|
+
key: "getData",
|
|
241
|
+
value: function getData() {
|
|
242
|
+
var _this$wrapperRef$curr2, _this$wrapperRef$curr3, _this$wrapperRef$curr4;
|
|
151
243
|
return {
|
|
152
|
-
appInfo: (_this$
|
|
153
|
-
messages: (_this$
|
|
154
|
-
sessions: (_this$
|
|
244
|
+
appInfo: (_this$wrapperRef$curr2 = this.wrapperRef.current) === null || _this$wrapperRef$curr2 === void 0 ? void 0 : _this$wrapperRef$curr2.getAppInfo(),
|
|
245
|
+
messages: (_this$wrapperRef$curr3 = this.wrapperRef.current) === null || _this$wrapperRef$curr3 === void 0 ? void 0 : _this$wrapperRef$curr3.getMessages(),
|
|
246
|
+
sessions: (_this$wrapperRef$curr4 = this.wrapperRef.current) === null || _this$wrapperRef$curr4 === void 0 ? void 0 : _this$wrapperRef$curr4.getSessions()
|
|
155
247
|
};
|
|
156
248
|
}
|
|
157
249
|
|
|
@@ -162,8 +254,8 @@ var XAiWebSDK = /*#__PURE__*/function () {
|
|
|
162
254
|
}, {
|
|
163
255
|
key: "getAppInfo",
|
|
164
256
|
value: function getAppInfo() {
|
|
165
|
-
var _this$
|
|
166
|
-
return (_this$
|
|
257
|
+
var _this$wrapperRef$curr5;
|
|
258
|
+
return (_this$wrapperRef$curr5 = this.wrapperRef.current) === null || _this$wrapperRef$curr5 === void 0 ? void 0 : _this$wrapperRef$curr5.getAppInfo();
|
|
167
259
|
}
|
|
168
260
|
|
|
169
261
|
/**
|
|
@@ -173,8 +265,8 @@ var XAiWebSDK = /*#__PURE__*/function () {
|
|
|
173
265
|
}, {
|
|
174
266
|
key: "getMessages",
|
|
175
267
|
value: function getMessages() {
|
|
176
|
-
var _this$
|
|
177
|
-
return (_this$
|
|
268
|
+
var _this$wrapperRef$curr6;
|
|
269
|
+
return (_this$wrapperRef$curr6 = this.wrapperRef.current) === null || _this$wrapperRef$curr6 === void 0 ? void 0 : _this$wrapperRef$curr6.getMessages();
|
|
178
270
|
}
|
|
179
271
|
|
|
180
272
|
/**
|
|
@@ -184,8 +276,8 @@ var XAiWebSDK = /*#__PURE__*/function () {
|
|
|
184
276
|
}, {
|
|
185
277
|
key: "getSessions",
|
|
186
278
|
value: function getSessions() {
|
|
187
|
-
var _this$
|
|
188
|
-
return (_this$
|
|
279
|
+
var _this$wrapperRef$curr7;
|
|
280
|
+
return (_this$wrapperRef$curr7 = this.wrapperRef.current) === null || _this$wrapperRef$curr7 === void 0 ? void 0 : _this$wrapperRef$curr7.getSessions();
|
|
189
281
|
}
|
|
190
282
|
|
|
191
283
|
/**
|
|
@@ -195,8 +287,8 @@ var XAiWebSDK = /*#__PURE__*/function () {
|
|
|
195
287
|
}, {
|
|
196
288
|
key: "setMessages",
|
|
197
289
|
value: function setMessages(msgs) {
|
|
198
|
-
var _this$
|
|
199
|
-
(_this$
|
|
290
|
+
var _this$wrapperRef$curr8;
|
|
291
|
+
(_this$wrapperRef$curr8 = this.wrapperRef.current) === null || _this$wrapperRef$curr8 === void 0 || _this$wrapperRef$curr8.setMessages(msgs);
|
|
200
292
|
}
|
|
201
293
|
|
|
202
294
|
/**
|
|
@@ -211,8 +303,8 @@ var XAiWebSDK = /*#__PURE__*/function () {
|
|
|
211
303
|
}, {
|
|
212
304
|
key: "startChat",
|
|
213
305
|
value: function startChat(content) {
|
|
214
|
-
var _this$
|
|
215
|
-
(_this$
|
|
306
|
+
var _this$wrapperRef$curr9;
|
|
307
|
+
(_this$wrapperRef$curr9 = this.wrapperRef.current) === null || _this$wrapperRef$curr9 === void 0 || _this$wrapperRef$curr9.startChat(content);
|
|
216
308
|
}
|
|
217
309
|
|
|
218
310
|
/**
|
|
@@ -221,8 +313,8 @@ var XAiWebSDK = /*#__PURE__*/function () {
|
|
|
221
313
|
}, {
|
|
222
314
|
key: "stopChat",
|
|
223
315
|
value: function stopChat() {
|
|
224
|
-
var _this$
|
|
225
|
-
(_this$
|
|
316
|
+
var _this$wrapperRef$curr10;
|
|
317
|
+
(_this$wrapperRef$curr10 = this.wrapperRef.current) === null || _this$wrapperRef$curr10 === void 0 || _this$wrapperRef$curr10.stopChat();
|
|
226
318
|
}
|
|
227
319
|
|
|
228
320
|
/**
|
|
@@ -231,8 +323,8 @@ var XAiWebSDK = /*#__PURE__*/function () {
|
|
|
231
323
|
}, {
|
|
232
324
|
key: "reChat",
|
|
233
325
|
value: function reChat() {
|
|
234
|
-
var _this$
|
|
235
|
-
(_this$
|
|
326
|
+
var _this$wrapperRef$curr11;
|
|
327
|
+
(_this$wrapperRef$curr11 = this.wrapperRef.current) === null || _this$wrapperRef$curr11 === void 0 || _this$wrapperRef$curr11.reChat();
|
|
236
328
|
}
|
|
237
329
|
|
|
238
330
|
/**
|
|
@@ -241,8 +333,8 @@ var XAiWebSDK = /*#__PURE__*/function () {
|
|
|
241
333
|
}, {
|
|
242
334
|
key: "clearChat",
|
|
243
335
|
value: function clearChat() {
|
|
244
|
-
var _this$
|
|
245
|
-
(_this$
|
|
336
|
+
var _this$wrapperRef$curr12;
|
|
337
|
+
(_this$wrapperRef$curr12 = this.wrapperRef.current) === null || _this$wrapperRef$curr12 === void 0 || _this$wrapperRef$curr12.clearChat();
|
|
246
338
|
}
|
|
247
339
|
|
|
248
340
|
/**
|
|
@@ -252,8 +344,8 @@ var XAiWebSDK = /*#__PURE__*/function () {
|
|
|
252
344
|
}, {
|
|
253
345
|
key: "setCurrentSession",
|
|
254
346
|
value: function setCurrentSession(sessionId) {
|
|
255
|
-
var _this$
|
|
256
|
-
(_this$
|
|
347
|
+
var _this$wrapperRef$curr13;
|
|
348
|
+
(_this$wrapperRef$curr13 = this.wrapperRef.current) === null || _this$wrapperRef$curr13 === void 0 || _this$wrapperRef$curr13.setCurrentSession(sessionId);
|
|
257
349
|
}
|
|
258
350
|
|
|
259
351
|
/**
|
|
@@ -263,8 +355,8 @@ var XAiWebSDK = /*#__PURE__*/function () {
|
|
|
263
355
|
}, {
|
|
264
356
|
key: "deleteSession",
|
|
265
357
|
value: function deleteSession(sessionId) {
|
|
266
|
-
var _this$
|
|
267
|
-
(_this$
|
|
358
|
+
var _this$wrapperRef$curr14;
|
|
359
|
+
(_this$wrapperRef$curr14 = this.wrapperRef.current) === null || _this$wrapperRef$curr14 === void 0 || _this$wrapperRef$curr14.deleteSession(sessionId);
|
|
268
360
|
}
|
|
269
361
|
|
|
270
362
|
/**
|
|
@@ -275,8 +367,8 @@ var XAiWebSDK = /*#__PURE__*/function () {
|
|
|
275
367
|
}, {
|
|
276
368
|
key: "updateSession",
|
|
277
369
|
value: function updateSession(sessionId, title) {
|
|
278
|
-
var _this$
|
|
279
|
-
(_this$
|
|
370
|
+
var _this$wrapperRef$curr15;
|
|
371
|
+
(_this$wrapperRef$curr15 = this.wrapperRef.current) === null || _this$wrapperRef$curr15 === void 0 || _this$wrapperRef$curr15.updateSession(sessionId, title);
|
|
280
372
|
}
|
|
281
373
|
|
|
282
374
|
/**
|
|
@@ -287,8 +379,8 @@ var XAiWebSDK = /*#__PURE__*/function () {
|
|
|
287
379
|
}, {
|
|
288
380
|
key: "setStateDelta",
|
|
289
381
|
value: function setStateDelta(delta) {
|
|
290
|
-
var _this$
|
|
291
|
-
(_this$
|
|
382
|
+
var _this$wrapperRef$curr16;
|
|
383
|
+
(_this$wrapperRef$curr16 = this.wrapperRef.current) === null || _this$wrapperRef$curr16 === void 0 || _this$wrapperRef$curr16.setStateDelta(delta);
|
|
292
384
|
}
|
|
293
385
|
}], [{
|
|
294
386
|
key: "initChatbot",
|
|
@@ -316,7 +408,7 @@ var XAiWebSDK = /*#__PURE__*/function () {
|
|
|
316
408
|
if (props.componentProps) {
|
|
317
409
|
var _props$componentProps2 = props.componentProps,
|
|
318
410
|
id = _props$componentProps2.id,
|
|
319
|
-
styleProps = _objectWithoutProperties(_props$componentProps2,
|
|
411
|
+
styleProps = _objectWithoutProperties(_props$componentProps2, _excluded2);
|
|
320
412
|
Object.assign(container.style, styleProps);
|
|
321
413
|
}
|
|
322
414
|
|
|
@@ -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$draggable","_config$chatProps$cle","_config$chatProps","_this$props$config","config","showSessionList","session","allowUpload","draggable","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 draggable = config.draggable ?? true;\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 draggable={draggable}\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 draggable={draggable}\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":";;;;;;AAAA,SAASA,SAAS,QAAQ,OAAO;AACjC,OAAOC,QAAQ,MAAM,kBAAkB;AAEvC,OAAOC,YAAY;AAAkC,SAAAC,GAAA,IAAAC,IAAA;AAGrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AArBA,IAsBMC,SAAS;EAgBb,SAAAA,UAAYC,SAAsB,EAAEC,KAAmB,EAAE;IAAAC,eAAA,OAAAH,SAAA;IAAAI,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,mCAT3CT,SAAS,CAAqB,CAAC;IAE7C;IAAAS,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAQE,IAAI,CAACH,SAAS,GAAGA,SAAS;IAC1B,IAAI,CAACC,KAAK,GAAGA,KAAK;IAClB,IAAI,CAACG,OAAO,GAAGH,KAAK,CAACG,OAAO;IAC5B,IAAI,CAACC,SAAS,GAAGJ,KAAK,CAACI,SAAS;IAChC,IAAI,CAACC,SAAS,GAAGL,KAAK,CAACK,SAAS;IAChC,IAAI,CAACC,KAAK,CAAC,CAAC;EACd;EAACC,YAAA,CAAAT,SAAA;IAAAU,GAAA;IAAAC,KAAA,EAED,SAAAH,MAAA,EAAQ;MAAA,IAAAI,qBAAA,EAAAC,eAAA,EAAAC,mBAAA,EAAAC,iBAAA,EAAAC,qBAAA,EAAAC,iBAAA;MACN;MACA,IAAAC,kBAAA,GAAwB,IAAI,CAAChB,KAAK,CAA1BiB,MAAM;QAANA,MAAM,GAAAD,kBAAA,cAAG,CAAC,CAAC,GAAAA,kBAAA;MACnB,IAAME,eAAe,IAAAR,qBAAA,IAAAC,eAAA,GAAGM,MAAM,CAACE,OAAO,cAAAR,eAAA,uBAAdA,eAAA,CAAgBO,eAAe,cAAAR,qBAAA,cAAAA,qBAAA,GAAI,KAAK;MAChE,IAAMU,WAAW,IAAAR,mBAAA,GAAGK,MAAM,CAACG,WAAW,cAAAR,mBAAA,cAAAA,mBAAA,GAAI,KAAK;MAC/C,IAAMS,SAAS,IAAAR,iBAAA,GAAGI,MAAM,CAACI,SAAS,cAAAR,iBAAA,cAAAA,iBAAA,GAAI,IAAI;MAC1C,IAAMS,YAAY,IAAAR,qBAAA,IAAAC,iBAAA,GAAGE,MAAM,CAACM,SAAS,cAAAR,iBAAA,uBAAhBA,iBAAA,CAAkBO,YAAY,cAAAR,qBAAA,cAAAA,qBAAA,GAAI,IAAI;MAE3D,IAAIpB,QAAQ,CAAC8B,UAAU,EAAE;QACvB,IAAI,CAACC,IAAI,GAAG/B,QAAQ,CAAC8B,UAAU,CAAC,IAAI,CAACzB,SAAS,CAAC;QAC/C,IAAI,CAAC0B,IAAI,CAACC,MAAM,eACd7B,IAAA;UAAK8B,KAAK,EAAE;YAAEC,KAAK,EAAE,MAAM;YAAEC,MAAM,EAAE;UAAO,CAAE;UAAAC,QAAA,eAC5CjC,IAAA,CAACF,YAAY,EAAAoC,aAAA,CAAAA,aAAA;YAACC,GAAG,EAAE,IAAI,CAACC;UAAY,GAAK,IAAI,CAACjC,KAAK;YAAA8B,QAAA,eAEjDjC,IAAA,CAACF,YAAY,CAACuC,aAAa;cACzBhB,eAAe,EAAEA,eAAgB;cACjCE,WAAW,EAAEA,WAAY;cACzBC,SAAS,EAAEA,SAAU;cACrBC,YAAY,EAAEA,YAAa;cAC3Ba,gBAAgB,EAAE;YAAK,CACxB;UAAC,EACU;QAAC,CACZ,CACP,CAAC;MACH,CAAC,MAAM;QACL;QACA;QACAzC,QAAQ,CAACgC,MAAM,eACb7B,IAAA;UAAK8B,KAAK,EAAE;YAAEC,KAAK,EAAE,MAAM;YAAEC,MAAM,EAAE;UAAO,CAAE;UAAAC,QAAA,eAC5CjC,IAAA,CAACF,YAAY,EAAAoC,aAAA,CAAAA,aAAA;YAACC,GAAG,EAAE,IAAI,CAACC;UAAY,GAAK,IAAI,CAACjC,KAAK;YAAA8B,QAAA,eACjDjC,IAAA,CAACF,YAAY,CAACuC,aAAa;cACzBhB,eAAe,EAAEA,eAAgB;cACjCE,WAAW,EAAEA,WAAY;cACzBC,SAAS,EAAEA,SAAU;cACrBC,YAAY,EAAEA,YAAa;cAC3Ba,gBAAgB,EAAE;YAAK,CACxB;UAAC,EACU;QAAC,CACZ,CAAC,EACN,IAAI,CAACpC,SACP,CAAC;MACH;IACF;EAAC;IAAAS,GAAA;IAAAC,KAAA,EAED,SAAA2B,QAAA,EAAU;MACR,IAAI,IAAI,CAACX,IAAI,IAAI,IAAI,CAACA,IAAI,CAACW,OAAO,EAAE;QAClC,IAAI,CAACX,IAAI,CAACW,OAAO,CAAC,CAAC;MACrB;IACF;;IAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EA5BE;IAAA5B,GAAA;IAAAC,KAAA;IAwEA;;IAEA;AACF;AACA;AACA;IACE,SAAA4B,QAAA,EAAU;MAAA,IAAAC,qBAAA,EAAAC,sBAAA,EAAAC,sBAAA;MACR,OAAO;QACLC,OAAO,GAAAH,qBAAA,GAAE,IAAI,CAACL,WAAW,CAACS,OAAO,cAAAJ,qBAAA,uBAAxBA,qBAAA,CAA0BK,UAAU,CAAC,CAAC;QAC/CC,QAAQ,GAAAL,sBAAA,GAAE,IAAI,CAACN,WAAW,CAACS,OAAO,cAAAH,sBAAA,uBAAxBA,sBAAA,CAA0BM,WAAW,CAAC,CAAC;QACjDC,QAAQ,GAAAN,sBAAA,GAAE,IAAI,CAACP,WAAW,CAACS,OAAO,cAAAF,sBAAA,uBAAxBA,sBAAA,CAA0BO,WAAW,CAAC;MAClD,CAAC;IACH;;IAEA;AACF;AACA;AACA;EAHE;IAAAvC,GAAA;IAAAC,KAAA,EAIA,SAAAkC,WAAA,EAAa;MAAA,IAAAK,sBAAA;MACX,QAAAA,sBAAA,GAAO,IAAI,CAACf,WAAW,CAACS,OAAO,cAAAM,sBAAA,uBAAxBA,sBAAA,CAA0BL,UAAU,CAAC,CAAC;IAC/C;;IAEA;AACF;AACA;AACA;EAHE;IAAAnC,GAAA;IAAAC,KAAA,EAIA,SAAAoC,YAAA,EAAc;MAAA,IAAAI,sBAAA;MACZ,QAAAA,sBAAA,GAAO,IAAI,CAAChB,WAAW,CAACS,OAAO,cAAAO,sBAAA,uBAAxBA,sBAAA,CAA0BJ,WAAW,CAAC,CAAC;IAChD;;IAEA;AACF;AACA;AACA;EAHE;IAAArC,GAAA;IAAAC,KAAA,EAIA,SAAAsC,YAAA,EAAc;MAAA,IAAAG,sBAAA;MACZ,QAAAA,sBAAA,GAAO,IAAI,CAACjB,WAAW,CAACS,OAAO,cAAAQ,sBAAA,uBAAxBA,sBAAA,CAA0BH,WAAW,CAAC,CAAC;IAChD;;IAEA;AACF;AACA;AACA;EAHE;IAAAvC,GAAA;IAAAC,KAAA,EAIA,SAAA0C,YAAYC,IAAgB,EAAE;MAAA,IAAAC,sBAAA;MAC5B,CAAAA,sBAAA,OAAI,CAACpB,WAAW,CAACS,OAAO,cAAAW,sBAAA,eAAxBA,sBAAA,CAA0BF,WAAW,CAACC,IAAI,CAAC;IAC7C;;IAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EARE;IAAA5C,GAAA;IAAAC,KAAA,EASA,SAAA6C,UAAUC,OAAoB,EAAE;MAAA,IAAAC,sBAAA;MAC9B,CAAAA,sBAAA,OAAI,CAACvB,WAAW,CAACS,OAAO,cAAAc,sBAAA,eAAxBA,sBAAA,CAA0BF,SAAS,CAACC,OAAO,CAAC;IAC9C;;IAEA;AACF;AACA;EAFE;IAAA/C,GAAA;IAAAC,KAAA,EAGA,SAAAgD,SAAA,EAAW;MAAA,IAAAC,sBAAA;MACT,CAAAA,sBAAA,OAAI,CAACzB,WAAW,CAACS,OAAO,cAAAgB,sBAAA,eAAxBA,sBAAA,CAA0BD,QAAQ,CAAC,CAAC;IACtC;;IAEA;AACF;AACA;EAFE;IAAAjD,GAAA;IAAAC,KAAA,EAGA,SAAAkD,OAAA,EAAS;MAAA,IAAAC,uBAAA;MACP,CAAAA,uBAAA,OAAI,CAAC3B,WAAW,CAACS,OAAO,cAAAkB,uBAAA,eAAxBA,uBAAA,CAA0BD,MAAM,CAAC,CAAC;IACpC;;IAEA;AACF;AACA;EAFE;IAAAnD,GAAA;IAAAC,KAAA,EAGA,SAAAoD,UAAA,EAAY;MAAA,IAAAC,uBAAA;MACV,CAAAA,uBAAA,OAAI,CAAC7B,WAAW,CAACS,OAAO,cAAAoB,uBAAA,eAAxBA,uBAAA,CAA0BD,SAAS,CAAC,CAAC;IACvC;;IAEA;AACF;AACA;AACA;EAHE;IAAArD,GAAA;IAAAC,KAAA,EAIA,SAAAsD,kBAAkBC,SAAiB,EAAE;MAAA,IAAAC,uBAAA;MACnC,CAAAA,uBAAA,OAAI,CAAChC,WAAW,CAACS,OAAO,cAAAuB,uBAAA,eAAxBA,uBAAA,CAA0BF,iBAAiB,CAACC,SAAS,CAAC;IACxD;;IAEA;AACF;AACA;AACA;EAHE;IAAAxD,GAAA;IAAAC,KAAA,EAIA,SAAAyD,cAAcF,SAAiB,EAAE;MAAA,IAAAG,uBAAA;MAC/B,CAAAA,uBAAA,OAAI,CAAClC,WAAW,CAACS,OAAO,cAAAyB,uBAAA,eAAxBA,uBAAA,CAA0BD,aAAa,CAACF,SAAS,CAAC;IACpD;;IAEA;AACF;AACA;AACA;AACA;EAJE;IAAAxD,GAAA;IAAAC,KAAA,EAKA,SAAA2D,cAAcJ,SAAiB,EAAEK,KAAa,EAAE;MAAA,IAAAC,uBAAA;MAC9C,CAAAA,uBAAA,OAAI,CAACrC,WAAW,CAACS,OAAO,cAAA4B,uBAAA,eAAxBA,uBAAA,CAA0BF,aAAa,CAACJ,SAAS,EAAEK,KAAK,CAAC;IAC3D;;IAEA;AACF;AACA;AACA;AACA;EAJE;IAAA7D,GAAA;IAAAC,KAAA,EAKA,SAAA8D,cAAcC,KAAsC,EAAE;MAAA,IAAAC,uBAAA;MACpD,CAAAA,uBAAA,OAAI,CAACxC,WAAW,CAACS,OAAO,cAAA+B,uBAAA,eAAxBA,uBAAA,CAA0BF,aAAa,CAACC,KAAK,CAAC;IAChD;EAAC;IAAAhE,GAAA;IAAAC,KAAA,EA3JD,SAAAiE,YAAmB1E,KAAmB,EAAa;MAAA,IAAA2E,qBAAA;MACjD,IAAI5E,SAAsB;;MAE1B;MACA,KAAA4E,qBAAA,GAAI3E,KAAK,CAAC4E,cAAc,cAAAD,qBAAA,eAApBA,qBAAA,CAAsBE,EAAE,EAAE;QAC5B,IAAMC,iBAAiB,GAAGC,QAAQ,CAACC,cAAc,CAC/ChF,KAAK,CAAC4E,cAAc,CAACC,EACvB,CAAC;QACD,IAAIC,iBAAiB,EAAE;UACrB/E,SAAS,GAAG+E,iBAAiB;QAC/B,CAAC,MAAM;UACL;UACA/E,SAAS,GAAGgF,QAAQ,CAACE,aAAa,CAAC,KAAK,CAAC;UACzClF,SAAS,CAAC8E,EAAE,GAAG7E,KAAK,CAAC4E,cAAc,CAACC,EAAE;QACxC;MACF,CAAC,MAAM;QACL;QACA9E,SAAS,GAAGgF,QAAQ,CAACE,aAAa,CAAC,KAAK,CAAC;QACzClF,SAAS,CAAC8E,EAAE,GAAG,uBAAuB;MACxC;;MAEA;MACA,IAAI7E,KAAK,CAAC4E,cAAc,EAAE;QACxB,IAAAM,sBAAA,GAA8BlF,KAAK,CAAC4E,cAAc;UAA1CC,EAAE,GAAAK,sBAAA,CAAFL,EAAE;UAAKM,UAAU,GAAAC,wBAAA,CAAAF,sBAAA,EAAAG,SAAA;QACzBC,MAAM,CAACC,MAAM,CAACxF,SAAS,CAAC4B,KAAK,EAAEwD,UAAU,CAAC;MAC5C;;MAEA;MACA,IAAI,CAACpF,SAAS,CAACyF,UAAU,EAAE;QACzBT,QAAQ,CAACU,IAAI,CAACC,WAAW,CAAC3F,SAAS,CAAC;MACtC;MAEA,OAAO,IAAID,SAAS,CAACC,SAAS,EAAEC,KAAK,CAAC;IACxC;;IAEA;AACF;AACA;AACA;EAHE;IAAAQ,GAAA;IAAAC,KAAA,EAIA,SAAAkF,OAAc3F,KAAmB,EAAa;MAC5C,OAAO,IAAI,CAAC0E,WAAW,CAAC1E,KAAK,CAAC;IAChC;EAAC;EAAA,OAAAF,SAAA;AAAA,KAqHH;AACA;AACA8F,MAAM,CAAC9F,SAAS,GAAGA,SAAS;;AAE5B;AACA,eAAeA,SAAS"}
|
|
1
|
+
{"version":3,"names":["createRef","useState","useImperativeHandle","forwardRef","ReactDOM","XAdkProvider","jsx","_jsx","SDKWrapper","_ref","ref","initialToken","token","showSessionList","allowUpload","draggable","clearBtnShow","rest","_objectWithoutProperties","_excluded","_useState","_useState2","_slicedToArray","setToken","providerRef","startChat","content","_providerRef$current","current","stopChat","_providerRef$current2","reChat","_providerRef$current3","clearChat","_providerRef$current4","deleteSession","id","_providerRef$current5","updateSession","title","_providerRef$current6","getAppInfo","_providerRef$current7","getMessages","_providerRef$current$","_providerRef$current8","getSessions","_providerRef$current$2","_providerRef$current9","setMessages","msgs","_providerRef$current10","setCurrentSession","_providerRef$current11","setStateDelta","delta","_providerRef$current12","_objectSpread","children","DefaultLayout","showFnCallDetail","displayName","XAiWebSDK","container","props","_classCallCheck","_defineProperty","onError","onSuccess","onMessage","mount","_createClass","key","value","_config$session$showS","_config$session","_config$allowUpload","_config$draggable","_config$chatProps$cle","_config$chatProps","_this$props$config","config","session","chatProps","element","style","width","height","wrapperRef","createRoot","root","render","unmount","_this$wrapperRef$curr","getData","_this$wrapperRef$curr2","_this$wrapperRef$curr3","_this$wrapperRef$curr4","appInfo","messages","sessions","_this$wrapperRef$curr5","_this$wrapperRef$curr6","_this$wrapperRef$curr7","_this$wrapperRef$curr8","_this$wrapperRef$curr9","_this$wrapperRef$curr10","_this$wrapperRef$curr11","_this$wrapperRef$curr12","sessionId","_this$wrapperRef$curr13","_this$wrapperRef$curr14","_this$wrapperRef$curr15","_this$wrapperRef$curr16","initChatbot","_props$componentProps","componentProps","existingContainer","document","getElementById","createElement","_props$componentProps2","styleProps","_excluded2","Object","assign","parentNode","body","appendChild","create","window"],"sources":["../../../src/utils/umdEntry.tsx"],"sourcesContent":["import { createRef, useState, useImperativeHandle, forwardRef } 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 * 内部包装组件:管理 token 状态,支持运行时动态更新\n */\ninterface WrapperHandle extends XAdkProviderHandle {\n setToken: (token: string) => void;\n}\n\ninterface WrapperProps extends Omit<XAdkSDKProps, \"children\"> {\n showSessionList: boolean;\n allowUpload: boolean;\n draggable: boolean;\n clearBtnShow: boolean;\n}\n\nconst SDKWrapper = forwardRef<WrapperHandle, WrapperProps>(\n (\n {\n token: initialToken,\n showSessionList,\n allowUpload,\n draggable,\n clearBtnShow,\n ...rest\n },\n ref,\n ) => {\n const [token, setToken] = useState(initialToken);\n const providerRef = createRef<XAdkProviderHandle>();\n\n useImperativeHandle(\n ref,\n () => ({\n setToken,\n startChat: (content: SendContent) =>\n providerRef.current?.startChat(content),\n stopChat: () => providerRef.current?.stopChat(),\n reChat: () => providerRef.current?.reChat(),\n clearChat: () => providerRef.current?.clearChat(),\n deleteSession: (id: string) =>\n providerRef.current?.deleteSession(id),\n updateSession: (id: string, title: string) =>\n providerRef.current?.updateSession(id, title),\n getAppInfo: () => providerRef.current?.getAppInfo(),\n getMessages: () => providerRef.current?.getMessages() ?? [],\n getSessions: () => providerRef.current?.getSessions() ?? [],\n setMessages: (msgs: IMessage[]) =>\n providerRef.current?.setMessages(msgs),\n setCurrentSession: (id: string) =>\n providerRef.current?.setCurrentSession(id),\n setStateDelta: (delta: Record<string, any> | undefined) =>\n providerRef.current?.setStateDelta(delta),\n }),\n [providerRef],\n );\n\n return (\n <XAdkProvider ref={providerRef} {...rest} token={token}>\n <XAdkProvider.DefaultLayout\n showSessionList={showSessionList}\n allowUpload={allowUpload}\n draggable={draggable}\n clearBtnShow={clearBtnShow}\n showFnCallDetail={true}\n />\n </XAdkProvider>\n );\n },\n);\n\nSDKWrapper.displayName = \"SDKWrapper\";\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 *\n * // token 过期后动态更新\n * sdk.setToken('new-token');\n * </script>\n * ```\n */\nclass XAiWebSDK {\n container: HTMLElement;\n\n props: XAdkSDKProps;\n\n root: any;\n\n wrapperRef = createRef<WrapperHandle>();\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 draggable = config.draggable ?? true;\n const clearBtnShow = config.chatProps?.clearBtnShow ?? true;\n\n const element = (\n <div style={{ width: \"100%\", height: \"100%\" }}>\n <SDKWrapper\n ref={this.wrapperRef}\n {...this.props}\n showSessionList={showSessionList}\n allowUpload={allowUpload}\n draggable={draggable}\n clearBtnShow={clearBtnShow}\n />\n </div>\n );\n\n if (ReactDOM.createRoot) {\n this.root = ReactDOM.createRoot(this.container);\n this.root.render(element);\n } else {\n // 兼容 React 17\n // @ts-ignore\n ReactDOM.render(element, this.container);\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 * 动态更新认证 token\n *\n * 用于 token 过期后刷新,更新后后续的 API 请求将使用新 token,无需重新初始化 SDK。\n *\n * @param token - 新的认证 token\n *\n * @example\n * ```javascript\n * // 监听到 token 过期后\n * const newToken = await refreshToken();\n * sdk.setToken(newToken);\n * ```\n */\n setToken(token: string) {\n this.wrapperRef.current?.setToken(token);\n }\n\n /**\n * 获取当前数据(聚合方法)\n * @returns 应用信息、消息列表、会话列表\n */\n getData() {\n return {\n appInfo: this.wrapperRef.current?.getAppInfo(),\n messages: this.wrapperRef.current?.getMessages(),\n sessions: this.wrapperRef.current?.getSessions(),\n };\n }\n\n /**\n * 获取应用信息\n * @returns 应用信息\n */\n getAppInfo() {\n return this.wrapperRef.current?.getAppInfo();\n }\n\n /**\n * 获取当前会话的消息列表\n * @returns 消息列表\n */\n getMessages() {\n return this.wrapperRef.current?.getMessages();\n }\n\n /**\n * 获取会话列表\n * @returns 会话列表\n */\n getSessions() {\n return this.wrapperRef.current?.getSessions();\n }\n\n /**\n * 设置消息列表\n * @param msgs - 要设置的消息数组\n */\n setMessages(msgs: IMessage[]) {\n this.wrapperRef.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.wrapperRef.current?.startChat(content);\n }\n\n /**\n * 停止当前消息生成\n */\n stopChat() {\n this.wrapperRef.current?.stopChat();\n }\n\n /**\n * 重新生成最后一条回复\n */\n reChat() {\n this.wrapperRef.current?.reChat();\n }\n\n /**\n * 清空当前会话\n */\n clearChat() {\n this.wrapperRef.current?.clearChat();\n }\n\n /**\n * 切换到指定会话\n * @param sessionId - 会话 ID\n */\n setCurrentSession(sessionId: string) {\n this.wrapperRef.current?.setCurrentSession(sessionId);\n }\n\n /**\n * 删除指定会话\n * @param sessionId - 会话 ID\n */\n deleteSession(sessionId: string) {\n this.wrapperRef.current?.deleteSession(sessionId);\n }\n\n /**\n * 更新会话标题\n * @param sessionId - 会话 ID\n * @param title - 新标题\n */\n updateSession(sessionId: string, title: string) {\n this.wrapperRef.current?.updateSession(sessionId, title);\n }\n\n /**\n * 设置自定义业务参数 (stateDelta)\n * 设置后每次发送消息时会自动携带至后端\n * @param delta - 自定义参数,传入 undefined 可清除\n */\n setStateDelta(delta: Record<string, any> | undefined) {\n this.wrapperRef.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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"}
|