@ai-group/chat-sdk 3.6.12 → 3.7.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.
Files changed (119) hide show
  1. package/dist/cjs/components/XAdkChatbot/index.js +2 -2
  2. package/dist/cjs/components/XAdkChatbot/index.js.map +2 -2
  3. package/dist/cjs/components/XAdkProvider/index.js +3 -3
  4. package/dist/cjs/components/XAdkProvider/index.js.map +2 -2
  5. package/dist/cjs/core/index.d.ts +2 -0
  6. package/dist/cjs/core/index.js +26 -0
  7. package/dist/cjs/core/index.js.map +7 -0
  8. package/dist/cjs/core/protocol/index.d.ts +3 -0
  9. package/dist/cjs/core/protocol/index.js +28 -0
  10. package/dist/cjs/core/protocol/index.js.map +7 -0
  11. package/dist/cjs/core/protocol/messages.d.ts +55 -0
  12. package/dist/cjs/core/protocol/messages.js +307 -0
  13. package/dist/cjs/core/protocol/messages.js.map +7 -0
  14. package/dist/cjs/core/protocol/parts.d.ts +24 -0
  15. package/dist/cjs/core/protocol/parts.js +106 -0
  16. package/dist/cjs/core/protocol/parts.js.map +7 -0
  17. package/dist/cjs/core/protocol/types.d.ts +57 -0
  18. package/dist/cjs/core/protocol/types.js +18 -0
  19. package/dist/cjs/core/protocol/types.js.map +7 -0
  20. package/dist/cjs/core/runtime/createAdkConversationController.d.ts +8 -0
  21. package/dist/cjs/core/runtime/createAdkConversationController.js +424 -0
  22. package/dist/cjs/core/runtime/createAdkConversationController.js.map +7 -0
  23. package/dist/cjs/core/runtime/index.d.ts +2 -0
  24. package/dist/cjs/core/runtime/index.js +26 -0
  25. package/dist/cjs/core/runtime/index.js.map +7 -0
  26. package/dist/cjs/core/runtime/types.d.ts +130 -0
  27. package/dist/cjs/core/runtime/types.js +18 -0
  28. package/dist/cjs/core/runtime/types.js.map +7 -0
  29. package/dist/{esm/utils/umdEntry.d.ts → cjs/entries/umd.d.ts} +7 -0
  30. package/dist/cjs/{utils/umdEntry.js → entries/umd.js} +19 -9
  31. package/dist/cjs/entries/umd.js.map +7 -0
  32. package/dist/cjs/index.d.ts +6 -1
  33. package/dist/cjs/index.js +19 -11
  34. package/dist/cjs/index.js.map +3 -3
  35. package/dist/cjs/presets/xgroup/index.d.ts +4 -0
  36. package/dist/cjs/presets/xgroup/index.js +30 -0
  37. package/dist/cjs/presets/xgroup/index.js.map +7 -0
  38. package/dist/cjs/presets/xgroup/preset.d.ts +15 -0
  39. package/dist/cjs/presets/xgroup/preset.js +69 -0
  40. package/dist/cjs/presets/xgroup/preset.js.map +7 -0
  41. package/dist/cjs/presets/xgroup/strategies.d.ts +8 -0
  42. package/dist/cjs/presets/xgroup/strategies.js +53 -0
  43. package/dist/cjs/presets/xgroup/strategies.js.map +7 -0
  44. package/dist/cjs/presets/xgroup/transport.d.ts +15 -0
  45. package/dist/cjs/presets/xgroup/transport.js +183 -0
  46. package/dist/cjs/presets/xgroup/transport.js.map +7 -0
  47. package/dist/cjs/presets/xgroup/upload.d.ts +8 -0
  48. package/dist/cjs/presets/xgroup/upload.js +65 -0
  49. package/dist/cjs/presets/xgroup/upload.js.map +7 -0
  50. package/dist/cjs/react/index.d.ts +6 -0
  51. package/dist/cjs/react/index.js +53 -0
  52. package/dist/cjs/react/index.js.map +7 -0
  53. package/dist/cjs/react/useAdkConversation.d.ts +27 -0
  54. package/dist/cjs/react/useAdkConversation.js +69 -0
  55. package/dist/cjs/react/useAdkConversation.js.map +7 -0
  56. package/dist/esm/components/XAdkChatbot/index.js +1 -1
  57. package/dist/esm/components/XAdkChatbot/index.js.map +1 -1
  58. package/dist/esm/components/XAdkProvider/index.js +1 -1
  59. package/dist/esm/components/XAdkProvider/index.js.map +1 -1
  60. package/dist/esm/core/index.d.ts +2 -0
  61. package/dist/esm/core/index.js +3 -0
  62. package/dist/esm/core/index.js.map +1 -0
  63. package/dist/esm/core/protocol/index.d.ts +3 -0
  64. package/dist/esm/core/protocol/index.js +4 -0
  65. package/dist/esm/core/protocol/index.js.map +1 -0
  66. package/dist/esm/core/protocol/messages.d.ts +55 -0
  67. package/dist/esm/core/protocol/messages.js +315 -0
  68. package/dist/esm/core/protocol/messages.js.map +1 -0
  69. package/dist/esm/core/protocol/parts.d.ts +24 -0
  70. package/dist/esm/core/protocol/parts.js +100 -0
  71. package/dist/esm/core/protocol/parts.js.map +1 -0
  72. package/dist/esm/core/protocol/types.d.ts +57 -0
  73. package/dist/esm/core/protocol/types.js +2 -0
  74. package/dist/esm/core/protocol/types.js.map +1 -0
  75. package/dist/esm/core/runtime/createAdkConversationController.d.ts +8 -0
  76. package/dist/esm/core/runtime/createAdkConversationController.js +742 -0
  77. package/dist/esm/core/runtime/createAdkConversationController.js.map +1 -0
  78. package/dist/esm/core/runtime/index.d.ts +2 -0
  79. package/dist/esm/core/runtime/index.js +3 -0
  80. package/dist/esm/core/runtime/index.js.map +1 -0
  81. package/dist/esm/core/runtime/types.d.ts +130 -0
  82. package/dist/esm/core/runtime/types.js +2 -0
  83. package/dist/esm/core/runtime/types.js.map +1 -0
  84. package/dist/{cjs/utils/umdEntry.d.ts → esm/entries/umd.d.ts} +7 -0
  85. package/dist/esm/{utils/umdEntry.js → entries/umd.js} +10 -1
  86. package/dist/esm/entries/umd.js.map +1 -0
  87. package/dist/esm/index.d.ts +6 -1
  88. package/dist/esm/index.js +6 -1
  89. package/dist/esm/index.js.map +1 -1
  90. package/dist/esm/presets/xgroup/index.d.ts +4 -0
  91. package/dist/esm/presets/xgroup/index.js +5 -0
  92. package/dist/esm/presets/xgroup/index.js.map +1 -0
  93. package/dist/esm/presets/xgroup/preset.d.ts +15 -0
  94. package/dist/esm/presets/xgroup/preset.js +44 -0
  95. package/dist/esm/presets/xgroup/preset.js.map +1 -0
  96. package/dist/esm/presets/xgroup/strategies.d.ts +8 -0
  97. package/dist/esm/presets/xgroup/strategies.js +30 -0
  98. package/dist/esm/presets/xgroup/strategies.js.map +1 -0
  99. package/dist/esm/presets/xgroup/transport.d.ts +15 -0
  100. package/dist/esm/presets/xgroup/transport.js +322 -0
  101. package/dist/esm/presets/xgroup/transport.js.map +1 -0
  102. package/dist/esm/presets/xgroup/upload.d.ts +8 -0
  103. package/dist/esm/presets/{xGroupAdk.js → xgroup/upload.js} +9 -63
  104. package/dist/esm/presets/xgroup/upload.js.map +1 -0
  105. package/dist/esm/react/index.d.ts +6 -0
  106. package/dist/esm/react/index.js +5 -0
  107. package/dist/esm/react/index.js.map +1 -0
  108. package/dist/esm/react/useAdkConversation.d.ts +27 -0
  109. package/dist/esm/react/useAdkConversation.js +53 -0
  110. package/dist/esm/react/useAdkConversation.js.map +1 -0
  111. package/dist/umd/chat-sdk.min.js +1 -1
  112. package/package.json +36 -2
  113. package/dist/cjs/presets/xGroupAdk.d.ts +0 -20
  114. package/dist/cjs/presets/xGroupAdk.js +0 -130
  115. package/dist/cjs/presets/xGroupAdk.js.map +0 -7
  116. package/dist/cjs/utils/umdEntry.js.map +0 -7
  117. package/dist/esm/presets/xGroupAdk.d.ts +0 -20
  118. package/dist/esm/presets/xGroupAdk.js.map +0 -1
  119. package/dist/esm/utils/umdEntry.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ai-group/chat-sdk",
3
- "version": "3.6.12",
3
+ "version": "3.7.0",
4
4
  "private": false,
5
5
  "description": "面向 AI 中台平台的前端集成 SDK,支持 OAuth2 安全认证、聊天机器人、智能编辑器、多模态对话,适配 SaaS / 私有化双场景。",
6
6
  "main": "dist/cjs/index.js",
@@ -10,8 +10,34 @@
10
10
  "types": "dist/esm/index.d.ts",
11
11
  "exports": {
12
12
  ".": {
13
+ "types": "./dist/esm/index.d.ts",
13
14
  "import": "./dist/esm/index.js",
14
15
  "require": "./dist/cjs/index.js"
16
+ },
17
+ "./core": {
18
+ "types": "./dist/esm/core/index.d.ts",
19
+ "import": "./dist/esm/core/index.js",
20
+ "require": "./dist/cjs/core/index.js"
21
+ },
22
+ "./core/protocol": {
23
+ "types": "./dist/esm/core/protocol/index.d.ts",
24
+ "import": "./dist/esm/core/protocol/index.js",
25
+ "require": "./dist/cjs/core/protocol/index.js"
26
+ },
27
+ "./core/runtime": {
28
+ "types": "./dist/esm/core/runtime/index.d.ts",
29
+ "import": "./dist/esm/core/runtime/index.js",
30
+ "require": "./dist/cjs/core/runtime/index.js"
31
+ },
32
+ "./react": {
33
+ "types": "./dist/esm/react/index.d.ts",
34
+ "import": "./dist/esm/react/index.js",
35
+ "require": "./dist/cjs/react/index.js"
36
+ },
37
+ "./presets/xgroup": {
38
+ "types": "./dist/esm/presets/xgroup/index.d.ts",
39
+ "import": "./dist/esm/presets/xgroup/index.js",
40
+ "require": "./dist/cjs/presets/xgroup/index.js"
15
41
  }
16
42
  },
17
43
  "keywords": [],
@@ -30,6 +56,7 @@
30
56
  "devDependencies": {
31
57
  "@ant-design/icons": "^5.6.1",
32
58
  "@changesets/cli": "^2.29.8",
59
+ "@size-limit/preset-small-lib": "^13.0.2",
33
60
  "@types/markdown-it": "^14.1.2",
34
61
  "@types/node": "^24.10.1",
35
62
  "@types/react": "^19.2.7",
@@ -37,9 +64,11 @@
37
64
  "@types/react-html-parser": "^2.0.7",
38
65
  "antd": "^6.4.4",
39
66
  "father": "^4.6.8",
67
+ "size-limit": "^13.0.2",
40
68
  "source-map-explorer": "^2.5.3",
41
69
  "ts-loader": "^9.5.4",
42
- "typescript": "^5.9.3"
70
+ "typescript": "^5.9.3",
71
+ "webpack-bundle-analyzer": "^5.3.1"
43
72
  },
44
73
  "dependencies": {
45
74
  "@ant-design/x": "^2.7.0",
@@ -82,6 +111,11 @@
82
111
  "optional": true
83
112
  }
84
113
  },
114
+ "sideEffects": [
115
+ "*.css",
116
+ "*.less",
117
+ "*.scss"
118
+ ],
85
119
  "scripts": {
86
120
  "version": "echo 'Version updated'",
87
121
  "dev": "father dev",
@@ -1,20 +0,0 @@
1
- import type { ChatPreset, ChatPresetInput, ChatStrategies, ToolRenderKind, UploadRequestFn } from "../types";
2
- export declare const baseToolKindResolver: () => ToolRenderKind;
3
- export declare const xGroupToolKindResolver: ({ name, }: {
4
- name?: string | undefined;
5
- }) => ToolRenderKind;
6
- export declare const baseChatStrategies: Required<Pick<ChatStrategies, "resolveToolKind" | "createFunctionResponse" | "parseProcessMessage">>;
7
- export declare const createXGroupUploadRequest: ({ url, token, appNo, }: {
8
- url: string;
9
- token?: string | undefined;
10
- appNo?: string | undefined;
11
- }) => UploadRequestFn | undefined;
12
- export declare const xGroupAdkPreset: ChatPreset;
13
- export declare const basePreset: ChatPreset;
14
- export declare const resolveChatPreset: (preset: ChatPresetInput | undefined) => ChatPreset;
15
- export declare const mergeChatStrategies: (preset: ChatPresetInput | undefined, overrides?: ChatStrategies) => ChatStrategies;
16
- export declare const resolvePresetUploadRequest: (preset: ChatPresetInput | undefined, context: {
17
- url: string;
18
- token?: string;
19
- appNo?: string;
20
- }) => UploadRequestFn | undefined;
@@ -1,130 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
- var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __export = (target, all) => {
6
- for (var name in all)
7
- __defProp(target, name, { get: all[name], enumerable: true });
8
- };
9
- var __copyProps = (to, from, except, desc) => {
10
- if (from && typeof from === "object" || typeof from === "function") {
11
- for (let key of __getOwnPropNames(from))
12
- if (!__hasOwnProp.call(to, key) && key !== except)
13
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
- }
15
- return to;
16
- };
17
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
-
19
- // src/presets/xGroupAdk.ts
20
- var xGroupAdk_exports = {};
21
- __export(xGroupAdk_exports, {
22
- baseChatStrategies: () => baseChatStrategies,
23
- basePreset: () => basePreset,
24
- baseToolKindResolver: () => baseToolKindResolver,
25
- createXGroupUploadRequest: () => createXGroupUploadRequest,
26
- mergeChatStrategies: () => mergeChatStrategies,
27
- resolveChatPreset: () => resolveChatPreset,
28
- resolvePresetUploadRequest: () => resolvePresetUploadRequest,
29
- xGroupAdkPreset: () => xGroupAdkPreset,
30
- xGroupToolKindResolver: () => xGroupToolKindResolver
31
- });
32
- module.exports = __toCommonJS(xGroupAdk_exports);
33
- var import_utils = require("../utils");
34
- var baseToolKindResolver = () => "default";
35
- var xGroupToolKindResolver = ({
36
- name
37
- }) => {
38
- if (name === "adk_request_confirmation")
39
- return "approval";
40
- if (name === "transferToAgent")
41
- return "handoff";
42
- return "default";
43
- };
44
- var baseChatStrategies = {
45
- resolveToolKind: () => "default",
46
- createFunctionResponse: (fnCall, confirmed) => ({
47
- id: fnCall.id,
48
- name: fnCall.name,
49
- response: { confirmed }
50
- }),
51
- parseProcessMessage: import_utils.parseAgentMessage
52
- };
53
- var createXGroupUploadRequest = ({
54
- url,
55
- token,
56
- appNo
57
- }) => {
58
- if (!appNo || !token)
59
- return void 0;
60
- return async ({ file, onProgress, onSuccess, onError }) => {
61
- try {
62
- onProgress == null ? void 0 : onProgress({ percent: 0 });
63
- const formData = new FormData();
64
- formData.append("file", file);
65
- const response = await fetch(
66
- `${url}/api/gateway-web/openApi/v1/aizt/app/${appNo}/uploadMultiFile`,
67
- {
68
- method: "POST",
69
- body: formData,
70
- headers: {
71
- Accept: "application/json, text/plain, */*",
72
- Authorization: `Bearer ${token}`,
73
- "Cache-Control": "no-cache"
74
- }
75
- }
76
- );
77
- const result = await response.json().catch(() => ({}));
78
- if (!response.ok) {
79
- throw new Error((result == null ? void 0 : result.message) || `文件上传失败 (${response.status})`);
80
- }
81
- const uploadedFile = Array.isArray(result == null ? void 0 : result.data) ? result.data[0] : (result == null ? void 0 : result.data) ?? result;
82
- onProgress == null ? void 0 : onProgress({ percent: 100 });
83
- onSuccess == null ? void 0 : onSuccess(uploadedFile);
84
- } catch (error) {
85
- onError == null ? void 0 : onError(error instanceof Error ? error : new Error("文件上传失败"));
86
- }
87
- };
88
- };
89
- var xGroupAdkPreset = {
90
- name: "xgroup-adk",
91
- strategies: {
92
- resolveToolKind: xGroupToolKindResolver,
93
- createFunctionResponse: baseChatStrategies.createFunctionResponse,
94
- parseProcessMessage: (text, options) => (0, import_utils.parseAgentMessage)(text, { mode: "comment", ...options })
95
- },
96
- createUploadRequest: createXGroupUploadRequest
97
- };
98
- var basePreset = {
99
- name: "base",
100
- strategies: baseChatStrategies
101
- };
102
- var resolveChatPreset = (preset) => {
103
- if (!preset || preset === "xgroup-adk")
104
- return xGroupAdkPreset;
105
- if (preset === "base")
106
- return basePreset;
107
- return preset;
108
- };
109
- var mergeChatStrategies = (preset, overrides) => ({
110
- ...baseChatStrategies,
111
- ...resolveChatPreset(preset).strategies,
112
- ...overrides
113
- });
114
- var resolvePresetUploadRequest = (preset, context) => {
115
- var _a, _b;
116
- return (_b = (_a = resolveChatPreset(preset)).createUploadRequest) == null ? void 0 : _b.call(_a, context);
117
- };
118
- // Annotate the CommonJS export names for ESM import in node:
119
- 0 && (module.exports = {
120
- baseChatStrategies,
121
- basePreset,
122
- baseToolKindResolver,
123
- createXGroupUploadRequest,
124
- mergeChatStrategies,
125
- resolveChatPreset,
126
- resolvePresetUploadRequest,
127
- xGroupAdkPreset,
128
- xGroupToolKindResolver
129
- });
130
- //# sourceMappingURL=xGroupAdk.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/presets/xGroupAdk.ts"],
4
- "sourcesContent": ["import { parseAgentMessage } from \"@/utils\";\nimport type {\n ChatPreset,\n ChatPresetInput,\n ChatStrategies,\n FunctionCall,\n FunctionResponse,\n ToolRenderKind,\n UploadRequestFn,\n} from \"@/types\";\n\nexport const baseToolKindResolver = (): ToolRenderKind => \"default\";\n\nexport const xGroupToolKindResolver = ({\n name,\n}: {\n name?: string;\n}): ToolRenderKind => {\n if (name === \"adk_request_confirmation\") return \"approval\";\n if (name === \"transferToAgent\") return \"handoff\";\n return \"default\";\n};\n\nexport const baseChatStrategies: Required<\n Pick<\n ChatStrategies,\n \"resolveToolKind\" | \"createFunctionResponse\" | \"parseProcessMessage\"\n >\n> = {\n resolveToolKind: () => \"default\",\n createFunctionResponse: (\n fnCall: FunctionCall,\n confirmed: boolean,\n ): FunctionResponse => ({\n id: fnCall.id,\n name: fnCall.name,\n response: { confirmed },\n }),\n parseProcessMessage: parseAgentMessage,\n};\n\nexport const createXGroupUploadRequest = ({\n url,\n token,\n appNo,\n}: {\n url: string;\n token?: string;\n appNo?: string;\n}): UploadRequestFn | undefined => {\n if (!appNo || !token) return undefined;\n\n return async ({ file, onProgress, onSuccess, onError }) => {\n try {\n onProgress?.({ percent: 0 });\n\n const formData = new FormData();\n formData.append(\"file\", file);\n\n const response = await fetch(\n `${url}/api/gateway-web/openApi/v1/aizt/app/${appNo}/uploadMultiFile`,\n {\n method: \"POST\",\n body: formData,\n headers: {\n Accept: \"application/json, text/plain, */*\",\n Authorization: `Bearer ${token}`,\n \"Cache-Control\": \"no-cache\",\n },\n },\n );\n\n const result = await response.json().catch(() => ({}));\n\n if (!response.ok) {\n throw new Error(result?.message || `文件上传失败 (${response.status})`);\n }\n\n const uploadedFile = Array.isArray(result?.data)\n ? result.data[0]\n : (result?.data ?? result);\n\n onProgress?.({ percent: 100 });\n onSuccess?.(uploadedFile);\n } catch (error) {\n onError?.(error instanceof Error ? error : new Error(\"文件上传失败\"));\n }\n };\n};\n\nexport const xGroupAdkPreset: ChatPreset = {\n name: \"xgroup-adk\",\n strategies: {\n resolveToolKind: xGroupToolKindResolver,\n createFunctionResponse: baseChatStrategies.createFunctionResponse,\n parseProcessMessage: (text, options) =>\n parseAgentMessage(text, { mode: \"comment\", ...options }),\n },\n createUploadRequest: createXGroupUploadRequest,\n};\n\nexport const basePreset: ChatPreset = {\n name: \"base\",\n strategies: baseChatStrategies,\n};\n\nexport const resolveChatPreset = (\n preset: ChatPresetInput | undefined,\n): ChatPreset => {\n if (!preset || preset === \"xgroup-adk\") return xGroupAdkPreset;\n if (preset === \"base\") return basePreset;\n return preset;\n};\n\nexport const mergeChatStrategies = (\n preset: ChatPresetInput | undefined,\n overrides?: ChatStrategies,\n): ChatStrategies => ({\n ...baseChatStrategies,\n ...resolveChatPreset(preset).strategies,\n ...overrides,\n});\n\nexport const resolvePresetUploadRequest = (\n preset: ChatPresetInput | undefined,\n context: {\n url: string;\n token?: string;\n appNo?: string;\n },\n): UploadRequestFn | undefined => {\n return resolveChatPreset(preset).createUploadRequest?.(context);\n};\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkC;AAW3B,IAAM,uBAAuB,MAAsB;AAEnD,IAAM,yBAAyB,CAAC;AAAA,EACrC;AACF,MAEsB;AACpB,MAAI,SAAS;AAA4B,WAAO;AAChD,MAAI,SAAS;AAAmB,WAAO;AACvC,SAAO;AACT;AAEO,IAAM,qBAKT;AAAA,EACF,iBAAiB,MAAM;AAAA,EACvB,wBAAwB,CACtB,QACA,eACsB;AAAA,IACtB,IAAI,OAAO;AAAA,IACX,MAAM,OAAO;AAAA,IACb,UAAU,EAAE,UAAU;AAAA,EACxB;AAAA,EACA,qBAAqB;AACvB;AAEO,IAAM,4BAA4B,CAAC;AAAA,EACxC;AAAA,EACA;AAAA,EACA;AACF,MAImC;AACjC,MAAI,CAAC,SAAS,CAAC;AAAO,WAAO;AAE7B,SAAO,OAAO,EAAE,MAAM,YAAY,WAAW,QAAQ,MAAM;AACzD,QAAI;AACF,+CAAa,EAAE,SAAS,EAAE;AAE1B,YAAM,WAAW,IAAI,SAAS;AAC9B,eAAS,OAAO,QAAQ,IAAI;AAE5B,YAAM,WAAW,MAAM;AAAA,QACrB,GAAG,2CAA2C;AAAA,QAC9C;AAAA,UACE,QAAQ;AAAA,UACR,MAAM;AAAA,UACN,SAAS;AAAA,YACP,QAAQ;AAAA,YACR,eAAe,UAAU;AAAA,YACzB,iBAAiB;AAAA,UACnB;AAAA,QACF;AAAA,MACF;AAEA,YAAM,SAAS,MAAM,SAAS,KAAK,EAAE,MAAM,OAAO,CAAC,EAAE;AAErD,UAAI,CAAC,SAAS,IAAI;AAChB,cAAM,IAAI,OAAM,iCAAQ,YAAW,WAAW,SAAS,SAAS;AAAA,MAClE;AAEA,YAAM,eAAe,MAAM,QAAQ,iCAAQ,IAAI,IAC3C,OAAO,KAAK,CAAC,KACZ,iCAAQ,SAAQ;AAErB,+CAAa,EAAE,SAAS,IAAI;AAC5B,6CAAY;AAAA,IACd,SAAS,OAAP;AACA,yCAAU,iBAAiB,QAAQ,QAAQ,IAAI,MAAM,QAAQ;AAAA,IAC/D;AAAA,EACF;AACF;AAEO,IAAM,kBAA8B;AAAA,EACzC,MAAM;AAAA,EACN,YAAY;AAAA,IACV,iBAAiB;AAAA,IACjB,wBAAwB,mBAAmB;AAAA,IAC3C,qBAAqB,CAAC,MAAM,gBAC1B,gCAAkB,MAAM,EAAE,MAAM,WAAW,GAAG,QAAQ,CAAC;AAAA,EAC3D;AAAA,EACA,qBAAqB;AACvB;AAEO,IAAM,aAAyB;AAAA,EACpC,MAAM;AAAA,EACN,YAAY;AACd;AAEO,IAAM,oBAAoB,CAC/B,WACe;AACf,MAAI,CAAC,UAAU,WAAW;AAAc,WAAO;AAC/C,MAAI,WAAW;AAAQ,WAAO;AAC9B,SAAO;AACT;AAEO,IAAM,sBAAsB,CACjC,QACA,eACoB;AAAA,EACpB,GAAG;AAAA,EACH,GAAG,kBAAkB,MAAM,EAAE;AAAA,EAC7B,GAAG;AACL;AAEO,IAAM,6BAA6B,CACxC,QACA,YAKgC;AAlIlC;AAmIE,UAAO,6BAAkB,MAAM,GAAE,wBAA1B,4BAAgD;AACzD;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/utils/umdEntry.tsx"],
4
- "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"],
5
- "mappings": "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",
6
- "names": ["XAdkProvider", "ReactDOM"]
7
- }
@@ -1,20 +0,0 @@
1
- import type { ChatPreset, ChatPresetInput, ChatStrategies, ToolRenderKind, UploadRequestFn } from "../types";
2
- export declare const baseToolKindResolver: () => ToolRenderKind;
3
- export declare const xGroupToolKindResolver: ({ name, }: {
4
- name?: string | undefined;
5
- }) => ToolRenderKind;
6
- export declare const baseChatStrategies: Required<Pick<ChatStrategies, "resolveToolKind" | "createFunctionResponse" | "parseProcessMessage">>;
7
- export declare const createXGroupUploadRequest: ({ url, token, appNo, }: {
8
- url: string;
9
- token?: string | undefined;
10
- appNo?: string | undefined;
11
- }) => UploadRequestFn | undefined;
12
- export declare const xGroupAdkPreset: ChatPreset;
13
- export declare const basePreset: ChatPreset;
14
- export declare const resolveChatPreset: (preset: ChatPresetInput | undefined) => ChatPreset;
15
- export declare const mergeChatStrategies: (preset: ChatPresetInput | undefined, overrides?: ChatStrategies) => ChatStrategies;
16
- export declare const resolvePresetUploadRequest: (preset: ChatPresetInput | undefined, context: {
17
- url: string;
18
- token?: string;
19
- appNo?: string;
20
- }) => UploadRequestFn | undefined;
@@ -1 +0,0 @@
1
- {"version":3,"names":["parseAgentMessage","baseToolKindResolver","xGroupToolKindResolver","_ref","name","baseChatStrategies","resolveToolKind","createFunctionResponse","fnCall","confirmed","id","response","parseProcessMessage","createXGroupUploadRequest","_ref2","url","token","appNo","undefined","_ref4","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_ref3","file","onProgress","onSuccess","onError","_result$data","formData","result","uploadedFile","wrap","_callee$","_context","prev","next","percent","FormData","append","fetch","concat","method","body","headers","Accept","Authorization","sent","json","catch","ok","Error","message","status","Array","isArray","data","t0","stop","_x","apply","arguments","xGroupAdkPreset","strategies","text","options","_objectSpread","mode","createUploadRequest","basePreset","resolveChatPreset","preset","mergeChatStrategies","overrides","resolvePresetUploadRequest","context","_resolveChatPreset$cr","_resolveChatPreset","call"],"sources":["../../../src/presets/xGroupAdk.ts"],"sourcesContent":["import { parseAgentMessage } from \"@/utils\";\nimport type {\n ChatPreset,\n ChatPresetInput,\n ChatStrategies,\n FunctionCall,\n FunctionResponse,\n ToolRenderKind,\n UploadRequestFn,\n} from \"@/types\";\n\nexport const baseToolKindResolver = (): ToolRenderKind => \"default\";\n\nexport const xGroupToolKindResolver = ({\n name,\n}: {\n name?: string;\n}): ToolRenderKind => {\n if (name === \"adk_request_confirmation\") return \"approval\";\n if (name === \"transferToAgent\") return \"handoff\";\n return \"default\";\n};\n\nexport const baseChatStrategies: Required<\n Pick<\n ChatStrategies,\n \"resolveToolKind\" | \"createFunctionResponse\" | \"parseProcessMessage\"\n >\n> = {\n resolveToolKind: () => \"default\",\n createFunctionResponse: (\n fnCall: FunctionCall,\n confirmed: boolean,\n ): FunctionResponse => ({\n id: fnCall.id,\n name: fnCall.name,\n response: { confirmed },\n }),\n parseProcessMessage: parseAgentMessage,\n};\n\nexport const createXGroupUploadRequest = ({\n url,\n token,\n appNo,\n}: {\n url: string;\n token?: string;\n appNo?: string;\n}): UploadRequestFn | undefined => {\n if (!appNo || !token) return undefined;\n\n return async ({ file, onProgress, onSuccess, onError }) => {\n try {\n onProgress?.({ percent: 0 });\n\n const formData = new FormData();\n formData.append(\"file\", file);\n\n const response = await fetch(\n `${url}/api/gateway-web/openApi/v1/aizt/app/${appNo}/uploadMultiFile`,\n {\n method: \"POST\",\n body: formData,\n headers: {\n Accept: \"application/json, text/plain, */*\",\n Authorization: `Bearer ${token}`,\n \"Cache-Control\": \"no-cache\",\n },\n },\n );\n\n const result = await response.json().catch(() => ({}));\n\n if (!response.ok) {\n throw new Error(result?.message || `文件上传失败 (${response.status})`);\n }\n\n const uploadedFile = Array.isArray(result?.data)\n ? result.data[0]\n : (result?.data ?? result);\n\n onProgress?.({ percent: 100 });\n onSuccess?.(uploadedFile);\n } catch (error) {\n onError?.(error instanceof Error ? error : new Error(\"文件上传失败\"));\n }\n };\n};\n\nexport const xGroupAdkPreset: ChatPreset = {\n name: \"xgroup-adk\",\n strategies: {\n resolveToolKind: xGroupToolKindResolver,\n createFunctionResponse: baseChatStrategies.createFunctionResponse,\n parseProcessMessage: (text, options) =>\n parseAgentMessage(text, { mode: \"comment\", ...options }),\n },\n createUploadRequest: createXGroupUploadRequest,\n};\n\nexport const basePreset: ChatPreset = {\n name: \"base\",\n strategies: baseChatStrategies,\n};\n\nexport const resolveChatPreset = (\n preset: ChatPresetInput | undefined,\n): ChatPreset => {\n if (!preset || preset === \"xgroup-adk\") return xGroupAdkPreset;\n if (preset === \"base\") return basePreset;\n return preset;\n};\n\nexport const mergeChatStrategies = (\n preset: ChatPresetInput | undefined,\n overrides?: ChatStrategies,\n): ChatStrategies => ({\n ...baseChatStrategies,\n ...resolveChatPreset(preset).strategies,\n ...overrides,\n});\n\nexport const resolvePresetUploadRequest = (\n preset: ChatPresetInput | undefined,\n context: {\n url: string;\n token?: string;\n appNo?: string;\n },\n): UploadRequestFn | undefined => {\n return resolveChatPreset(preset).createUploadRequest?.(context);\n};\n"],"mappings":"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"}
@@ -1 +0,0 @@
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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"}