@tdesign-react/chat 1.0.2-alpha.8 → 1.0.2-alpha.9
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/es/_util/reactify.d.ts +1 -2
- package/es/_util/reactify.js +81 -231
- package/es/_util/reactify.js.map +1 -1
- package/es/_util/useDynamicStyle.js +1 -1
- package/es/attachments/index.js +4 -6
- package/es/attachments/index.js.map +1 -1
- package/es/chat-actionbar/_example-js/base.d.ts +2 -0
- package/es/chat-actionbar/_example-js/custom.d.ts +2 -0
- package/es/chat-actionbar/_example-js/style.d.ts +2 -0
- package/es/chat-actionbar/index.js +4 -6
- package/es/chat-actionbar/index.js.map +1 -1
- package/es/chat-attachments/_example-js/base.d.ts +2 -0
- package/es/chat-attachments/_example-js/scroll-x.d.ts +2 -0
- package/es/chat-attachments/_example-js/scroll-y.d.ts +2 -0
- package/es/chat-attachments/index.js +3 -1
- package/es/chat-attachments/index.js.map +1 -1
- package/es/chat-engine/_example-js/agui-basic.d.ts +10 -0
- package/es/chat-engine/_example-js/agui-comprehensive.d.ts +2 -0
- package/es/chat-engine/_example-js/agui-test.d.ts +11 -0
- package/es/chat-engine/_example-js/agui-toolcall.d.ts +5 -0
- package/es/chat-engine/_example-js/agui-videoclip.d.ts +8 -0
- package/es/chat-engine/_example-js/agui.d.ts +1 -0
- package/es/chat-engine/_example-js/basic.d.ts +9 -0
- package/es/chat-engine/_example-js/components/HotelCard.d.ts +3 -0
- package/es/chat-engine/_example-js/components/HumanInputForm.d.ts +6 -0
- package/es/chat-engine/_example-js/components/HumanInputResult.d.ts +3 -0
- package/es/chat-engine/_example-js/components/ItineraryCard.d.ts +3 -0
- package/es/chat-engine/_example-js/components/PlanningStatePanel.d.ts +4 -0
- package/es/chat-engine/_example-js/components/Toolcall.d.ts +4 -0
- package/es/chat-engine/_example-js/components/WeatherCard.d.ts +3 -0
- package/es/chat-engine/_example-js/components/login.d.ts +1 -0
- package/es/chat-engine/_example-js/comprehensive.d.ts +12 -0
- package/es/chat-engine/_example-js/custom-content.d.ts +1 -0
- package/es/chat-engine/_example-js/hookComponent.d.ts +1 -0
- package/es/chat-engine/_example-js/initial-messages.d.ts +9 -0
- package/es/chat-engine/_example-js/instance-methods.d.ts +13 -0
- package/es/chat-engine/_example-js/travel-actions.d.ts +91 -0
- package/es/chat-engine/_example-js/travelToolcall.d.ts +1 -0
- package/es/{chatbot/components/toolcall → chat-engine/components/activity}/index.d.ts +1 -0
- package/es/chat-engine/components/activity/index.js +18 -0
- package/es/{chatbot/components/toolcall → chat-engine/components/activity}/index.js.map +1 -1
- package/es/chat-engine/components/activity/registry.d.ts +44 -0
- package/es/{chatbot/components/toolcall → chat-engine/components/activity}/registry.js +32 -22
- package/es/chat-engine/components/activity/registry.js.map +1 -0
- package/es/chat-engine/components/activity/render.d.ts +11 -0
- package/es/chat-engine/components/activity/render.js +107 -0
- package/es/chat-engine/components/activity/render.js.map +1 -0
- package/es/chat-engine/components/activity/types.d.ts +32 -0
- package/es/chat-engine/components/activity/types.js +7 -0
- package/es/chat-engine/components/activity/types.js.map +1 -0
- package/es/chat-engine/components/index.d.ts +3 -0
- package/es/chat-engine/components/index.js +28 -0
- package/es/chat-engine/components/index.js.map +1 -0
- package/es/chat-engine/components/provider/agent-state.js +1 -1
- package/es/chat-engine/components/toolcall/index.js +4 -1
- package/es/chat-engine/components/toolcall/index.js.map +1 -1
- package/es/chat-engine/components/toolcall/registry.js +1 -1
- package/es/chat-engine/components/toolcall/render.js +72 -25
- package/es/chat-engine/components/toolcall/render.js.map +1 -1
- package/es/chat-engine/components/toolcall/types.js +1 -1
- package/es/chat-engine/core/adapters/agui/event-mapper.d.ts +109 -0
- package/es/chat-engine/core/adapters/agui/event-mapper.js +375 -0
- package/es/chat-engine/core/adapters/agui/event-mapper.js.map +1 -0
- package/es/chat-engine/core/adapters/agui/events.d.ts +1550 -0
- package/es/chat-engine/core/adapters/agui/events.js +199 -0
- package/es/chat-engine/core/adapters/agui/events.js.map +1 -0
- package/es/chat-engine/core/adapters/agui/index.d.ts +75 -0
- package/es/chat-engine/core/adapters/agui/index.js +175 -0
- package/es/chat-engine/core/adapters/agui/index.js.map +1 -0
- package/es/chat-engine/core/adapters/agui/state-manager.d.ts +99 -0
- package/es/chat-engine/core/adapters/agui/state-manager.js +168 -0
- package/es/chat-engine/core/adapters/agui/state-manager.js.map +1 -0
- package/es/chat-engine/core/adapters/agui/types.d.ts +817 -0
- package/es/chat-engine/core/adapters/agui/types.js +95 -0
- package/es/chat-engine/core/adapters/agui/types.js.map +1 -0
- package/es/chat-engine/core/adapters/agui/utils.d.ts +197 -0
- package/es/chat-engine/core/adapters/agui/utils.js +311 -0
- package/es/chat-engine/core/adapters/agui/utils.js.map +1 -0
- package/es/chat-engine/core/index.d.ts +132 -0
- package/es/chat-engine/core/index.js +597 -0
- package/es/chat-engine/core/index.js.map +1 -0
- package/es/chat-engine/core/processor/index.d.ts +20 -0
- package/es/chat-engine/core/processor/index.js +146 -0
- package/es/chat-engine/core/processor/index.js.map +1 -0
- package/es/chat-engine/core/server/batch-client.d.ts +20 -0
- package/es/chat-engine/core/server/batch-client.js +114 -0
- package/es/chat-engine/core/server/batch-client.js.map +1 -0
- package/es/chat-engine/core/server/connection-manager.d.ts +39 -0
- package/es/chat-engine/core/server/connection-manager.js +84 -0
- package/es/chat-engine/core/server/connection-manager.js.map +1 -0
- package/es/chat-engine/core/server/errors.d.ts +22 -0
- package/es/chat-engine/core/server/errors.js +80 -0
- package/es/chat-engine/core/server/errors.js.map +1 -0
- package/es/chat-engine/core/server/index.d.ts +11 -0
- package/es/chat-engine/core/server/index.js +26 -0
- package/es/chat-engine/core/server/index.js.map +1 -0
- package/es/chat-engine/core/server/llm-service.d.ts +44 -0
- package/es/chat-engine/core/server/llm-service.js +198 -0
- package/es/chat-engine/core/server/llm-service.js.map +1 -0
- package/es/chat-engine/core/server/sse-client.d.ts +77 -0
- package/es/chat-engine/core/server/sse-client.js +362 -0
- package/es/chat-engine/core/server/sse-client.js.map +1 -0
- package/es/chat-engine/core/server/sse-parser.d.ts +49 -0
- package/es/chat-engine/core/server/sse-parser.js +116 -0
- package/es/chat-engine/core/server/sse-parser.js.map +1 -0
- package/es/chat-engine/core/server/types.d.ts +54 -0
- package/es/chat-engine/core/server/types.js +28 -0
- package/es/chat-engine/core/server/types.js.map +1 -0
- package/es/chat-engine/core/store/message.d.ts +27 -0
- package/es/chat-engine/core/store/message.js +263 -0
- package/es/chat-engine/core/store/message.js.map +1 -0
- package/es/chat-engine/core/store/model.d.ts +8 -0
- package/es/chat-engine/core/store/model.js +65 -0
- package/es/chat-engine/core/store/model.js.map +1 -0
- package/es/chat-engine/core/store/reactiveState.d.ts +52 -0
- package/es/chat-engine/core/store/reactiveState.js +1359 -0
- package/es/chat-engine/core/store/reactiveState.js.map +1 -0
- package/es/chat-engine/core/type.d.ts +255 -0
- package/es/chat-engine/core/type.js +7 -0
- package/es/chat-engine/core/type.js.map +1 -0
- package/es/chat-engine/core/utils/eventEmitter.d.ts +10 -0
- package/es/chat-engine/core/utils/eventEmitter.js +67 -0
- package/es/chat-engine/core/utils/eventEmitter.js.map +1 -0
- package/es/chat-engine/core/utils/index.d.ts +33 -0
- package/es/chat-engine/core/utils/index.js +999 -0
- package/es/chat-engine/core/utils/index.js.map +1 -0
- package/es/chat-engine/core/utils/logger.d.ts +30 -0
- package/es/chat-engine/core/utils/logger.js +87 -0
- package/es/chat-engine/core/utils/logger.js.map +1 -0
- package/es/chat-engine/hooks/index.d.ts +4 -0
- package/es/chat-engine/hooks/index.js +20 -0
- package/es/chat-engine/hooks/index.js.map +1 -0
- package/es/chat-engine/hooks/useAgentActivity.d.ts +16 -0
- package/es/chat-engine/hooks/useAgentActivity.js +73 -0
- package/es/chat-engine/hooks/useAgentActivity.js.map +1 -0
- package/es/chat-engine/hooks/useAgentState.js +1 -1
- package/es/chat-engine/hooks/useAgentState.js.map +1 -1
- package/es/chat-engine/hooks/useAgentToolcall.js +1 -1
- package/es/chat-engine/hooks/useChat.js +3 -3
- package/es/chat-engine/hooks/useChat.js.map +1 -1
- package/es/chat-engine/index.d.ts +3 -1
- package/es/chat-engine/index.js +37 -3
- package/es/chat-engine/index.js.map +1 -1
- package/es/chat-filecard/_example-js/base.d.ts +1 -0
- package/es/chat-filecard/index.js +4 -6
- package/es/chat-filecard/index.js.map +1 -1
- package/es/chat-loading/_example-js/base.d.ts +2 -0
- package/es/chat-loading/_example-js/text.d.ts +2 -0
- package/es/chat-loading/index.js +4 -6
- package/es/chat-loading/index.js.map +1 -1
- package/es/chat-markdown/_example-js/base.d.ts +1 -0
- package/es/chat-markdown/_example-js/custom.d.ts +2 -0
- package/es/chat-markdown/_example-js/event.d.ts +1 -0
- package/es/chat-markdown/_example-js/footnote.d.ts +2 -0
- package/es/chat-markdown/_example-js/plugin.d.ts +2 -0
- package/es/chat-markdown/_example-js/theme.d.ts +2 -0
- package/es/chat-markdown/index.js +4 -6
- package/es/chat-markdown/index.js.map +1 -1
- package/es/chat-message/_example-js/action.d.ts +1 -0
- package/es/chat-message/_example-js/base.d.ts +1 -0
- package/es/chat-message/_example-js/configure.d.ts +1 -0
- package/es/chat-message/_example-js/content.d.ts +1 -0
- package/es/chat-message/_example-js/custom.d.ts +1 -0
- package/es/chat-message/_example-js/handle-actions.d.ts +7 -0
- package/es/chat-message/_example-js/status.d.ts +1 -0
- package/es/chat-message/_example-js/think.d.ts +1 -0
- package/es/chat-message/index.js +4 -6
- package/es/chat-message/index.js.map +1 -1
- package/es/chat-sender/_example-js/attachment.d.ts +2 -0
- package/es/chat-sender/_example-js/base.d.ts +2 -0
- package/es/chat-sender/_example-js/custom.d.ts +2 -0
- package/es/chat-sender/index.js +4 -6
- package/es/chat-sender/index.js.map +1 -1
- package/es/chat-thinking/_example-js/base.d.ts +1 -0
- package/es/chat-thinking/_example-js/style.d.ts +1 -0
- package/es/chat-thinking/index.js +4 -6
- package/es/chat-thinking/index.js.map +1 -1
- package/es/chatbot/_example-js/agent.d.ts +1 -0
- package/es/chatbot/_example-js/agui.d.ts +13 -0
- package/es/chatbot/_example-js/backup/travel.d.ts +1 -0
- package/es/chatbot/_example-js/basic.d.ts +1 -0
- package/es/chatbot/_example-js/code.d.ts +1 -0
- package/es/chatbot/_example-js/components/ItineraryCard.d.ts +3 -0
- package/es/chatbot/_example-js/components/login.d.ts +1 -0
- package/es/chatbot/_example-js/comprehensive.d.ts +1 -0
- package/es/chatbot/_example-js/custom-content.d.ts +1 -0
- package/es/chatbot/_example-js/custom-merge.d.ts +1 -0
- package/es/chatbot/_example-js/custom.d.ts +1 -0
- package/es/chatbot/_example-js/docs.d.ts +1 -0
- package/es/chatbot/_example-js/image.d.ts +1 -0
- package/es/chatbot/_example-js/initial-messages.d.ts +9 -0
- package/es/chatbot/_example-js/instance-methods.d.ts +14 -0
- package/es/chatbot/_example-js/nostream.d.ts +1 -0
- package/es/chatbot/_example-js/quick-start.d.ts +9 -0
- package/es/chatbot/_example-js/research.d.ts +1 -0
- package/es/chatbot/_example-js/role-message-config.d.ts +22 -0
- package/es/chatbot/_example-js/sender-config.d.ts +20 -0
- package/es/chatbot/_example-js/service-config.d.ts +17 -0
- package/es/chatbot/_example-js/simple.d.ts +1 -0
- package/es/chatbot/_example-js/utils/messageRenderer.d.ts +5 -0
- package/es/chatbot/index.js +4 -6
- package/es/chatbot/index.js.map +1 -1
- package/es/index.js +37 -9
- package/es/index.js.map +1 -1
- package/es/style/index.js +1 -1
- package/package.json +2 -2
- package/es/chatbot/components/provider/agent-state.d.ts +0 -5
- package/es/chatbot/components/provider/agent-state.js +0 -28
- package/es/chatbot/components/provider/agent-state.js.map +0 -1
- package/es/chatbot/components/toolcall/index.js +0 -19
- package/es/chatbot/components/toolcall/registry.d.ts +0 -35
- package/es/chatbot/components/toolcall/registry.js.map +0 -1
- package/es/chatbot/components/toolcall/render.d.ts +0 -13
- package/es/chatbot/components/toolcall/render.js +0 -207
- package/es/chatbot/components/toolcall/render.js.map +0 -1
- package/es/chatbot/components/toolcall/types.d.ts +0 -57
- package/es/chatbot/components/toolcall/types.js +0 -15
- package/es/chatbot/components/toolcall/types.js.map +0 -1
- package/es/chatbot/hooks/useAgentState.d.ts +0 -40
- package/es/chatbot/hooks/useAgentState.js +0 -76
- package/es/chatbot/hooks/useAgentState.js.map +0 -1
- package/es/chatbot/hooks/useAgentToolcall.d.ts +0 -28
- package/es/chatbot/hooks/useAgentToolcall.js +0 -78
- package/es/chatbot/hooks/useAgentToolcall.js.map +0 -1
- package/es/chatbot/hooks/useChat.d.ts +0 -11
- package/es/chatbot/hooks/useChat.js +0 -66
- package/es/chatbot/hooks/useChat.js.map +0 -1
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* tdesign v1.0.2-alpha.6
|
|
3
|
+
* (c) 2026 tdesign
|
|
4
|
+
* @license MIT
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import _createClass from '@babel/runtime/helpers/createClass';
|
|
8
|
+
import _classCallCheck from '@babel/runtime/helpers/classCallCheck';
|
|
9
|
+
import _possibleConstructorReturn from '@babel/runtime/helpers/possibleConstructorReturn';
|
|
10
|
+
import _getPrototypeOf from '@babel/runtime/helpers/getPrototypeOf';
|
|
11
|
+
import _inherits from '@babel/runtime/helpers/inherits';
|
|
12
|
+
import _wrapNativeSuper from '@babel/runtime/helpers/wrapNativeSuper';
|
|
13
|
+
import { z } from 'zod';
|
|
14
|
+
|
|
15
|
+
function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
|
|
16
|
+
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
17
|
+
var FunctionCallSchema = z.object({
|
|
18
|
+
name: z.string(),
|
|
19
|
+
arguments: z.string()
|
|
20
|
+
});
|
|
21
|
+
var ToolCallSchema = z.object({
|
|
22
|
+
id: z.string(),
|
|
23
|
+
type: z.literal("function"),
|
|
24
|
+
"function": FunctionCallSchema
|
|
25
|
+
});
|
|
26
|
+
var BaseMessageSchema = z.object({
|
|
27
|
+
id: z.string(),
|
|
28
|
+
role: z.string(),
|
|
29
|
+
content: z.string().optional(),
|
|
30
|
+
name: z.string().optional(),
|
|
31
|
+
timestamp: z.number().optional()
|
|
32
|
+
});
|
|
33
|
+
var DeveloperMessageSchema = BaseMessageSchema.extend({
|
|
34
|
+
role: z.literal("developer"),
|
|
35
|
+
content: z.string()
|
|
36
|
+
});
|
|
37
|
+
var SystemMessageSchema = BaseMessageSchema.extend({
|
|
38
|
+
role: z.literal("system"),
|
|
39
|
+
content: z.string()
|
|
40
|
+
});
|
|
41
|
+
var AssistantMessageSchema = BaseMessageSchema.extend({
|
|
42
|
+
role: z.literal("assistant"),
|
|
43
|
+
content: z.string().optional(),
|
|
44
|
+
reasoningContent: z.string().optional(),
|
|
45
|
+
toolCalls: z.array(ToolCallSchema).optional()
|
|
46
|
+
});
|
|
47
|
+
var UserMessageSchema = BaseMessageSchema.extend({
|
|
48
|
+
role: z.literal("user"),
|
|
49
|
+
content: z.string()
|
|
50
|
+
});
|
|
51
|
+
var ToolMessageSchema = z.object({
|
|
52
|
+
id: z.string(),
|
|
53
|
+
content: z.string(),
|
|
54
|
+
role: z.literal("tool"),
|
|
55
|
+
toolCallId: z.string()
|
|
56
|
+
});
|
|
57
|
+
var ActivityMessageSchema = z.object({
|
|
58
|
+
id: z.string(),
|
|
59
|
+
role: z.literal("activity"),
|
|
60
|
+
activityType: z.string(),
|
|
61
|
+
content: z.record(z.any())
|
|
62
|
+
});
|
|
63
|
+
var MessageSchema = z.discriminatedUnion("role", [DeveloperMessageSchema, SystemMessageSchema, AssistantMessageSchema, UserMessageSchema, ToolMessageSchema, ActivityMessageSchema]);
|
|
64
|
+
var HistoryMessageSchema = z.discriminatedUnion("role", [UserMessageSchema, AssistantMessageSchema, ToolMessageSchema]);
|
|
65
|
+
var RoleSchema = z.union([z.literal("developer"), z.literal("system"), z.literal("assistant"), z.literal("user"), z.literal("tool"), z.literal("activity")]);
|
|
66
|
+
var ContextSchema = z.object({
|
|
67
|
+
description: z.string(),
|
|
68
|
+
value: z.string()
|
|
69
|
+
});
|
|
70
|
+
var ToolSchema = z.object({
|
|
71
|
+
name: z.string(),
|
|
72
|
+
description: z.string(),
|
|
73
|
+
parameters: z.any()
|
|
74
|
+
});
|
|
75
|
+
var RunAgentInputSchema = z.object({
|
|
76
|
+
threadId: z.string(),
|
|
77
|
+
runId: z.string(),
|
|
78
|
+
state: z.any(),
|
|
79
|
+
messages: z.array(MessageSchema),
|
|
80
|
+
tools: z.array(ToolSchema),
|
|
81
|
+
context: z.array(ContextSchema),
|
|
82
|
+
forwardedProps: z.any()
|
|
83
|
+
});
|
|
84
|
+
var StateSchema = z.any();
|
|
85
|
+
var AGUIError = /*#__PURE__*/function (_Error) {
|
|
86
|
+
function AGUIError(message) {
|
|
87
|
+
_classCallCheck(this, AGUIError);
|
|
88
|
+
return _callSuper(this, AGUIError, [message]);
|
|
89
|
+
}
|
|
90
|
+
_inherits(AGUIError, _Error);
|
|
91
|
+
return _createClass(AGUIError);
|
|
92
|
+
}(/*#__PURE__*/_wrapNativeSuper(Error));
|
|
93
|
+
|
|
94
|
+
export { AGUIError, ActivityMessageSchema, AssistantMessageSchema, BaseMessageSchema, ContextSchema, DeveloperMessageSchema, FunctionCallSchema, HistoryMessageSchema, MessageSchema, RoleSchema, RunAgentInputSchema, StateSchema, SystemMessageSchema, ToolCallSchema, ToolMessageSchema, ToolSchema, UserMessageSchema };
|
|
95
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sources":["../../../../../../pro-components/chat/chat-engine/core/adapters/agui/types.ts"],"sourcesContent":["// 这里的类型定义在官方Message Schema基础上扩展而来\n// https://github.com/ag-ui-protocol/ag-ui/blob/main/sdks/typescript/packages/core/src/types.ts\n\nimport { z } from 'zod';\n\nexport const FunctionCallSchema = z.object({\n name: z.string(),\n arguments: z.string(),\n});\n\nexport const ToolCallSchema = z.object({\n id: z.string(),\n type: z.literal('function'),\n function: FunctionCallSchema,\n});\n\nexport const BaseMessageSchema = z.object({\n id: z.string(),\n role: z.string(),\n content: z.string().optional(),\n name: z.string().optional(),\n timestamp: z.number().optional(), // 添加时间戳字段,用于历史消息\n});\n\nexport const DeveloperMessageSchema = BaseMessageSchema.extend({\n role: z.literal('developer'),\n content: z.string(),\n});\n\nexport const SystemMessageSchema = BaseMessageSchema.extend({\n role: z.literal('system'),\n content: z.string(),\n});\n\nexport const AssistantMessageSchema = BaseMessageSchema.extend({\n role: z.literal('assistant'),\n content: z.string().optional(),\n reasoningContent: z.string().optional(),\n toolCalls: z.array(ToolCallSchema).optional(),\n});\n\nexport const UserMessageSchema = BaseMessageSchema.extend({\n role: z.literal('user'),\n content: z.string(),\n});\n\nexport const ToolMessageSchema = z.object({\n id: z.string(),\n content: z.string(),\n role: z.literal('tool'),\n toolCallId: z.string(),\n});\n\nexport const ActivityMessageSchema = z.object({\n id: z.string(),\n role: z.literal(\"activity\"),\n activityType: z.string(),\n content: z.record(z.any()),\n});\n\nexport const MessageSchema = z.discriminatedUnion('role', [\n DeveloperMessageSchema,\n SystemMessageSchema,\n AssistantMessageSchema,\n UserMessageSchema,\n ToolMessageSchema,\n ActivityMessageSchema,\n]);\n\n// 历史消息相关的类型定义\nexport const HistoryMessageSchema = z.discriminatedUnion('role', [\n UserMessageSchema,\n AssistantMessageSchema,\n ToolMessageSchema,\n]);\n\nexport const RoleSchema = z.union([\n z.literal('developer'),\n z.literal('system'),\n z.literal('assistant'),\n z.literal('user'),\n z.literal('tool'),\n z.literal(\"activity\"),\n]);\n\nexport const ContextSchema = z.object({\n description: z.string(),\n value: z.string(),\n});\n\nexport const ToolSchema = z.object({\n name: z.string(),\n description: z.string(),\n parameters: z.any(), // JSON Schema for the tool parameters\n});\n\nexport const RunAgentInputSchema = z.object({\n threadId: z.string(),\n runId: z.string(),\n state: z.any(),\n messages: z.array(MessageSchema),\n tools: z.array(ToolSchema),\n context: z.array(ContextSchema),\n forwardedProps: z.any(),\n});\n\nexport const StateSchema = z.any();\n\nexport type AGUIToolCall = z.infer<typeof ToolCallSchema>;\nexport type FunctionCall = z.infer<typeof FunctionCallSchema>;\nexport type DeveloperMessage = z.infer<typeof DeveloperMessageSchema>;\nexport type SystemMessage = z.infer<typeof SystemMessageSchema>;\nexport type AssistantMessage = z.infer<typeof AssistantMessageSchema>;\nexport type UserMessage = z.infer<typeof UserMessageSchema>;\nexport type ToolMessage = z.infer<typeof ToolMessageSchema>;\nexport type ActivityMessage = z.infer<typeof ActivityMessageSchema>;\nexport type Message = z.infer<typeof MessageSchema>;\nexport type Context = z.infer<typeof ContextSchema>;\nexport type Tool = z.infer<typeof ToolSchema>;\nexport type RunAgentInput = z.infer<typeof RunAgentInputSchema>;\nexport type State = z.infer<typeof StateSchema>;\nexport type Role = z.infer<typeof RoleSchema>;\n\n// 历史消息类型别名,复用已有的类型\nexport type AGUIHistoryMessage = Message;\nexport type AGUIUserHistoryMessage = UserMessage;\nexport type AGUIAssistantHistoryMessage = AssistantMessage;\nexport type AGUIToolHistoryMessage = ToolMessage;\n\nexport class AGUIError extends Error {\n constructor(message: string) {\n super(message);\n }\n}\n"],"names":["FunctionCallSchema","z","object","name","string","arguments","ToolCallSchema","id","type","literal","BaseMessageSchema","role","content","optional","timestamp","number","DeveloperMessageSchema","extend","SystemMessageSchema","AssistantMessageSchema","reasoningContent","toolCalls","array","UserMessageSchema","ToolMessageSchema","toolCallId","ActivityMessageSchema","activityType","record","any","MessageSchema","discriminatedUnion","HistoryMessageSchema","RoleSchema","union","ContextSchema","description","value","ToolSchema","parameters","RunAgentInputSchema","threadId","runId","state","messages","tools","context","forwardedProps","StateSchema","AGUIError","message","_classCallCheck","_callSuper","_inherits","_Error","_createClass","_wrapNativeSuper","Error"],"mappings":"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"}
|
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AGUI适配器工具函数
|
|
3
|
+
* 包含与类无关的纯函数,用于处理AGUI协议相关逻辑
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* 合并字符串内容,处理JSON和普通字符串
|
|
7
|
+
* @param existing 现有内容
|
|
8
|
+
* @param delta 增量内容
|
|
9
|
+
* @returns 合并后的内容
|
|
10
|
+
*/
|
|
11
|
+
export declare function mergeStringContent(existing: string | undefined, delta: string): string;
|
|
12
|
+
/**
|
|
13
|
+
* 从delta事件中提取stateKey
|
|
14
|
+
* @param event delta事件对象
|
|
15
|
+
* @returns stateKey或null
|
|
16
|
+
*/
|
|
17
|
+
export declare function extractStateKeyFromDelta(event: {
|
|
18
|
+
type: string;
|
|
19
|
+
delta?: any[];
|
|
20
|
+
}): string | null;
|
|
21
|
+
/**
|
|
22
|
+
* 处理消息快照
|
|
23
|
+
* @param messages 消息数组
|
|
24
|
+
* @returns 处理后的消息内容数组
|
|
25
|
+
*/
|
|
26
|
+
export declare function handleMessagesSnapshot(messages: any[]): any[];
|
|
27
|
+
/**
|
|
28
|
+
* 处理自定义事件
|
|
29
|
+
* @param event 自定义事件对象
|
|
30
|
+
* @returns 处理结果或undefined
|
|
31
|
+
*/
|
|
32
|
+
export declare function handleCustomEvent(event: any): any;
|
|
33
|
+
/**
|
|
34
|
+
* 解析SSE数据
|
|
35
|
+
* @param data SSE数据,可能是字符串或已解析的对象
|
|
36
|
+
* @returns 解析后的事件对象或null
|
|
37
|
+
*/
|
|
38
|
+
export declare function parseSSEData(data: any): any;
|
|
39
|
+
/**
|
|
40
|
+
* 验证事件对象
|
|
41
|
+
* @param event 事件对象
|
|
42
|
+
* @returns 是否为有效事件
|
|
43
|
+
*/
|
|
44
|
+
export declare function isValidEvent(event: any): boolean;
|
|
45
|
+
/**
|
|
46
|
+
* 生成连接ID
|
|
47
|
+
* @param prefix 前缀
|
|
48
|
+
* @returns 连接ID
|
|
49
|
+
*/
|
|
50
|
+
export declare function generateConnectionId(prefix?: string): string;
|
|
51
|
+
/**
|
|
52
|
+
* 格式化日志消息
|
|
53
|
+
* @param level 日志级别
|
|
54
|
+
* @param message 消息内容
|
|
55
|
+
* @param context 上下文信息
|
|
56
|
+
* @returns 格式化后的日志消息
|
|
57
|
+
*/
|
|
58
|
+
export declare function formatLogMessage(level: string, message: string, context?: any): string;
|
|
59
|
+
/**
|
|
60
|
+
* 创建基础的 AIMessageContent 对象
|
|
61
|
+
* @param type 内容类型
|
|
62
|
+
* @param data 内容数据
|
|
63
|
+
* @param status 状态
|
|
64
|
+
* @param strategy 策略
|
|
65
|
+
* @param ext 扩展属性
|
|
66
|
+
* @returns AIMessageContent 对象
|
|
67
|
+
*/
|
|
68
|
+
export declare function createAIMessageContent(type: string, data: any, status?: 'pending' | 'streaming' | 'complete' | 'error', strategy?: 'append' | 'merge', ext?: any): any;
|
|
69
|
+
/**
|
|
70
|
+
* 创建 reasoning 类型的 AIMessageContent
|
|
71
|
+
* @param data reasoning 数据
|
|
72
|
+
* @param status 状态
|
|
73
|
+
* @param strategy 策略
|
|
74
|
+
* @param collapsed 是否折叠
|
|
75
|
+
* @returns reasoning 类型的 AIMessageContent
|
|
76
|
+
*/
|
|
77
|
+
export declare function createReasoningContent(data: any[], status?: 'streaming' | 'complete', strategy?: 'append' | 'merge', collapsed?: boolean): any;
|
|
78
|
+
/**
|
|
79
|
+
* 创建 thinking 类型的 AIMessageContent
|
|
80
|
+
* @param data thinking 数据
|
|
81
|
+
* @param status 状态
|
|
82
|
+
* @param strategy 策略
|
|
83
|
+
* @param collapsed 是否折叠
|
|
84
|
+
* @returns thinking 类型的 AIMessageContent
|
|
85
|
+
*/
|
|
86
|
+
export declare function createThinkingContent(data: any, status?: 'streaming' | 'complete', strategy?: 'append' | 'merge', collapsed?: boolean): any;
|
|
87
|
+
/**
|
|
88
|
+
* 创建 toolcall 类型的 AIMessageContent
|
|
89
|
+
* @param toolCall 工具调用数据
|
|
90
|
+
* @param status 状态
|
|
91
|
+
* @param strategy 策略(可选)
|
|
92
|
+
* @returns toolcall 类型的 AIMessageContent
|
|
93
|
+
*
|
|
94
|
+
* type 格式: toolcall-${toolCallName}-${toolCallId}
|
|
95
|
+
* - toolCallName: 用于查找对应的渲染组件
|
|
96
|
+
* - toolCallId: 用于区分同名工具的不同调用实例,支持并行工具调用
|
|
97
|
+
*/
|
|
98
|
+
export declare function createToolCallContent(toolCall: any, status?: 'pending' | 'streaming' | 'complete', strategy?: 'append' | 'merge'): any;
|
|
99
|
+
/**
|
|
100
|
+
* 创建 activity 类型的 AIMessageContent
|
|
101
|
+
* @param activityType 活动类型
|
|
102
|
+
* @param content 活动内容
|
|
103
|
+
* @param status 状态
|
|
104
|
+
* @param strategy 策略
|
|
105
|
+
* @returns activity 类型的 AIMessageContent
|
|
106
|
+
*
|
|
107
|
+
* type 格式: activity-${activityType}
|
|
108
|
+
* - activityType: 用于查找对应的渲染组件和区分不同类型的 Activity
|
|
109
|
+
* - 支持并行多个不同类型的 Activity
|
|
110
|
+
*/
|
|
111
|
+
export declare function createActivityContent(activityType: string, content: Record<string, any>, status?: 'streaming' | 'complete', strategy?: 'append' | 'merge'): any;
|
|
112
|
+
/**
|
|
113
|
+
* 创建 markdown 类型的 AIMessageContent
|
|
114
|
+
* @param data markdown 数据
|
|
115
|
+
* @param status 状态
|
|
116
|
+
* @param strategy 策略
|
|
117
|
+
* @returns markdown 类型的 AIMessageContent
|
|
118
|
+
*/
|
|
119
|
+
export declare function createMarkdownContent(data: string, status?: 'streaming' | 'complete', strategy?: 'append' | 'merge'): any;
|
|
120
|
+
/**
|
|
121
|
+
* 创建 suggestion 类型的 AIMessageContent
|
|
122
|
+
* @param data suggestion 数据
|
|
123
|
+
* @returns suggestion 类型的 AIMessageContent
|
|
124
|
+
*/
|
|
125
|
+
export declare function createSuggestionContent(data: any[]): any;
|
|
126
|
+
/**
|
|
127
|
+
* 创建 text 类型的 AIMessageContent
|
|
128
|
+
* @param data 文本数据
|
|
129
|
+
* @param status 状态
|
|
130
|
+
* @returns text 类型的 AIMessageContent
|
|
131
|
+
*/
|
|
132
|
+
export declare function createTextContent(data: string, status?: 'streaming' | 'complete' | 'error'): any;
|
|
133
|
+
/**
|
|
134
|
+
* 更新工具调用对象
|
|
135
|
+
* @param existingToolCall 现有工具调用
|
|
136
|
+
* @param updates 更新内容
|
|
137
|
+
* @returns 更新后的工具调用
|
|
138
|
+
*/
|
|
139
|
+
export declare function updateToolCall(existingToolCall: any, updates: Partial<any>): any;
|
|
140
|
+
/**
|
|
141
|
+
* 处理 suggestion 工具调用的特殊逻辑
|
|
142
|
+
* @param toolCall 工具调用对象
|
|
143
|
+
* @returns suggestion 内容或 null
|
|
144
|
+
*/
|
|
145
|
+
export declare function handleSuggestionToolCall(toolCall: any): any | null;
|
|
146
|
+
/**
|
|
147
|
+
* 更新 reasoning 上下文中的内容
|
|
148
|
+
* @param reasoningData 当前 reasoning 数据
|
|
149
|
+
* @param index 要更新的索引
|
|
150
|
+
* @param newContent 新内容
|
|
151
|
+
* @returns 更新后的 reasoning 数据
|
|
152
|
+
*/
|
|
153
|
+
export declare function updateReasoningData(reasoningData: any[], index: number, newContent: any): any[];
|
|
154
|
+
/**
|
|
155
|
+
* 向 reasoning 数据中添加新内容
|
|
156
|
+
* @param reasoningData 当前 reasoning 数据
|
|
157
|
+
* @param newContent 新内容
|
|
158
|
+
* @returns 更新后的 reasoning 数据和新内容的索引
|
|
159
|
+
*/
|
|
160
|
+
export declare function addToReasoningData(reasoningData: any[], newContent: any): {
|
|
161
|
+
data: any[];
|
|
162
|
+
index: number;
|
|
163
|
+
};
|
|
164
|
+
/**
|
|
165
|
+
* 解析 reasoningContent 字段
|
|
166
|
+
* @param reasoningContent 原始 reasoningContent 数据
|
|
167
|
+
* @returns 解析后的数据和类型信息
|
|
168
|
+
*/
|
|
169
|
+
export declare function parseReasoningContent(reasoningContent: any): {
|
|
170
|
+
type: 'reasoning' | 'thinking';
|
|
171
|
+
data: any;
|
|
172
|
+
};
|
|
173
|
+
/**
|
|
174
|
+
* 转换 reasoning 消息数组为 AIMessageContent 数组
|
|
175
|
+
* @param reasoningMessages reasoning 消息数组
|
|
176
|
+
* @returns 转换后的 AIMessageContent 数组
|
|
177
|
+
*/
|
|
178
|
+
export declare function convertReasoningMessages(reasoningMessages: any[]): any[];
|
|
179
|
+
/**
|
|
180
|
+
* 处理 reasoningContent 并创建对应的 AIMessageContent
|
|
181
|
+
* @param reasoningContent 原始 reasoningContent 数据
|
|
182
|
+
* @returns 创建的 AIMessageContent 或 null
|
|
183
|
+
*/
|
|
184
|
+
export declare function processReasoningContent(reasoningContent: any): any | null;
|
|
185
|
+
/**
|
|
186
|
+
* 处理工具调用并创建对应的 AIMessageContent 数组
|
|
187
|
+
* @param toolCalls 工具调用数组
|
|
188
|
+
* @param toolCallMap 工具调用结果映射
|
|
189
|
+
* @returns 创建的 AIMessageContent 数组
|
|
190
|
+
*/
|
|
191
|
+
export declare function processToolCalls(toolCalls: any[], toolCallMap: Map<string, any>): any[];
|
|
192
|
+
/**
|
|
193
|
+
* 构建工具调用结果映射
|
|
194
|
+
* @param historyMessages 历史消息数组
|
|
195
|
+
* @returns 工具调用结果映射
|
|
196
|
+
*/
|
|
197
|
+
export declare function buildToolCallMap(historyMessages: any[]): Map<string, any>;
|
|
@@ -0,0 +1,311 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* tdesign v1.0.2-alpha.6
|
|
3
|
+
* (c) 2026 tdesign
|
|
4
|
+
* @license MIT
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
|
|
8
|
+
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
9
|
+
import _typeof from '@babel/runtime/helpers/typeof';
|
|
10
|
+
|
|
11
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
12
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
13
|
+
function mergeStringContent(existing, delta) {
|
|
14
|
+
if (!existing) return delta;
|
|
15
|
+
try {
|
|
16
|
+
var existingObj = JSON.parse(existing);
|
|
17
|
+
var deltaObj = JSON.parse(delta);
|
|
18
|
+
if (_typeof(existingObj) === "object" && _typeof(deltaObj) === "object") {
|
|
19
|
+
return JSON.stringify(_objectSpread(_objectSpread({}, existingObj), deltaObj));
|
|
20
|
+
}
|
|
21
|
+
if (Array.isArray(existingObj) && Array.isArray(deltaObj)) {
|
|
22
|
+
return JSON.stringify([].concat(_toConsumableArray(existingObj), _toConsumableArray(deltaObj)));
|
|
23
|
+
}
|
|
24
|
+
return delta;
|
|
25
|
+
} catch (error) {
|
|
26
|
+
return existing + delta;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
function extractStateKeyFromDelta(event) {
|
|
30
|
+
if (event.type === "STATE_DELTA" && event.delta && event.delta.length > 0) {
|
|
31
|
+
var firstDelta = event.delta[0];
|
|
32
|
+
if (firstDelta && firstDelta.path) {
|
|
33
|
+
var pathParts = firstDelta.path.split("/");
|
|
34
|
+
return pathParts.length > 1 ? pathParts[1] : null;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return null;
|
|
38
|
+
}
|
|
39
|
+
function handleMessagesSnapshot(messages) {
|
|
40
|
+
if (!messages) return [];
|
|
41
|
+
return messages.flatMap(function (msg) {
|
|
42
|
+
if (msg.role === "assistant" && Array.isArray(msg.content)) {
|
|
43
|
+
return msg.content.map(function (content) {
|
|
44
|
+
return {
|
|
45
|
+
type: content.type || "markdown",
|
|
46
|
+
data: content.data,
|
|
47
|
+
status: "complete"
|
|
48
|
+
};
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
return [];
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
function handleCustomEvent(event) {
|
|
55
|
+
if (event.name === "suggestion") {
|
|
56
|
+
return {
|
|
57
|
+
type: "suggestion",
|
|
58
|
+
data: event.value || [],
|
|
59
|
+
status: "complete"
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
return void 0;
|
|
63
|
+
}
|
|
64
|
+
function parseSSEData(data) {
|
|
65
|
+
if (typeof data === "string") {
|
|
66
|
+
try {
|
|
67
|
+
return JSON.parse(data);
|
|
68
|
+
} catch (error) {
|
|
69
|
+
console.warn("Failed to parse SSE data:", error);
|
|
70
|
+
return null;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
return data;
|
|
74
|
+
}
|
|
75
|
+
function isValidEvent(event) {
|
|
76
|
+
return event && _typeof(event) === "object" && event.type;
|
|
77
|
+
}
|
|
78
|
+
function generateConnectionId() {
|
|
79
|
+
var prefix = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "sse";
|
|
80
|
+
var timestamp = Date.now();
|
|
81
|
+
return "".concat(prefix, "_").concat(timestamp, "_").concat(Math.random().toString(36).substr(2, 9));
|
|
82
|
+
}
|
|
83
|
+
function formatLogMessage(level, message, context) {
|
|
84
|
+
var timestamp = new Date().toISOString();
|
|
85
|
+
var contextStr = context ? " [".concat(JSON.stringify(context), "]") : "";
|
|
86
|
+
return "[".concat(timestamp, "] [").concat(level.toUpperCase(), "] ").concat(message).concat(contextStr);
|
|
87
|
+
}
|
|
88
|
+
function createAIMessageContent(type, data) {
|
|
89
|
+
var status = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : "complete";
|
|
90
|
+
var strategy = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : "append";
|
|
91
|
+
var ext = arguments.length > 4 ? arguments[4] : undefined;
|
|
92
|
+
var content = {
|
|
93
|
+
type: type,
|
|
94
|
+
data: data,
|
|
95
|
+
status: status,
|
|
96
|
+
strategy: strategy
|
|
97
|
+
};
|
|
98
|
+
if (ext) {
|
|
99
|
+
content.ext = ext;
|
|
100
|
+
}
|
|
101
|
+
return content;
|
|
102
|
+
}
|
|
103
|
+
function createReasoningContent(data) {
|
|
104
|
+
var status = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "streaming";
|
|
105
|
+
var strategy = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : "append";
|
|
106
|
+
var collapsed = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
|
|
107
|
+
return createAIMessageContent("reasoning", data, status, strategy, {
|
|
108
|
+
collapsed: collapsed
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
function createThinkingContent(data) {
|
|
112
|
+
var status = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "streaming";
|
|
113
|
+
var strategy = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : "append";
|
|
114
|
+
var collapsed = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
|
|
115
|
+
return createAIMessageContent("thinking", data, status, strategy, {
|
|
116
|
+
collapsed: collapsed
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
function createToolCallContent(toolCall) {
|
|
120
|
+
var status = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "pending";
|
|
121
|
+
var strategy = arguments.length > 2 ? arguments[2] : undefined;
|
|
122
|
+
var type = "toolcall-".concat(toolCall.toolCallName, "-").concat(toolCall.toolCallId);
|
|
123
|
+
var finalStrategy = strategy || "append";
|
|
124
|
+
return createAIMessageContent(type, toolCall, status, finalStrategy);
|
|
125
|
+
}
|
|
126
|
+
function createActivityContent(activityType, content) {
|
|
127
|
+
var status = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : "complete";
|
|
128
|
+
var strategy = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : "append";
|
|
129
|
+
var type = "activity-".concat(activityType);
|
|
130
|
+
return createAIMessageContent(type, {
|
|
131
|
+
activityType: activityType,
|
|
132
|
+
content: content
|
|
133
|
+
}, status, strategy);
|
|
134
|
+
}
|
|
135
|
+
function createMarkdownContent(data) {
|
|
136
|
+
var status = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "complete";
|
|
137
|
+
var strategy = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : "append";
|
|
138
|
+
return createAIMessageContent("markdown", data, status, strategy);
|
|
139
|
+
}
|
|
140
|
+
function createSuggestionContent(data) {
|
|
141
|
+
return createAIMessageContent("suggestion", data, "complete", "append");
|
|
142
|
+
}
|
|
143
|
+
function createTextContent(data) {
|
|
144
|
+
var status = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "complete";
|
|
145
|
+
return createAIMessageContent("text", data, status, "append");
|
|
146
|
+
}
|
|
147
|
+
function updateToolCall(existingToolCall, updates) {
|
|
148
|
+
return _objectSpread(_objectSpread({}, existingToolCall), updates);
|
|
149
|
+
}
|
|
150
|
+
function handleSuggestionToolCall(toolCall) {
|
|
151
|
+
if (toolCall.toolCallName === "suggestion") {
|
|
152
|
+
try {
|
|
153
|
+
var suggestionData = JSON.parse(toolCall.result || "{}") || [];
|
|
154
|
+
return createSuggestionContent(suggestionData);
|
|
155
|
+
} catch (error) {
|
|
156
|
+
console.warn("Failed to parse suggestion result:", error);
|
|
157
|
+
return null;
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
return null;
|
|
161
|
+
}
|
|
162
|
+
function updateReasoningData(reasoningData, index, newContent) {
|
|
163
|
+
var updatedData = _toConsumableArray(reasoningData);
|
|
164
|
+
if (index >= 0 && index < updatedData.length) {
|
|
165
|
+
updatedData[index] = newContent;
|
|
166
|
+
}
|
|
167
|
+
return updatedData;
|
|
168
|
+
}
|
|
169
|
+
function addToReasoningData(reasoningData, newContent) {
|
|
170
|
+
var updatedData = [].concat(_toConsumableArray(reasoningData), [newContent]);
|
|
171
|
+
return {
|
|
172
|
+
data: updatedData,
|
|
173
|
+
index: updatedData.length - 1
|
|
174
|
+
};
|
|
175
|
+
}
|
|
176
|
+
function parseReasoningContent(reasoningContent) {
|
|
177
|
+
var parsedContent;
|
|
178
|
+
if (typeof reasoningContent === "string") {
|
|
179
|
+
try {
|
|
180
|
+
parsedContent = JSON.parse(reasoningContent);
|
|
181
|
+
} catch (_unused) {
|
|
182
|
+
return {
|
|
183
|
+
type: "thinking",
|
|
184
|
+
data: {
|
|
185
|
+
text: reasoningContent,
|
|
186
|
+
title: "\u601D\u8003\u5B8C\u6210"
|
|
187
|
+
}
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
} else {
|
|
191
|
+
parsedContent = reasoningContent;
|
|
192
|
+
}
|
|
193
|
+
if (Array.isArray(parsedContent)) {
|
|
194
|
+
return {
|
|
195
|
+
type: "reasoning",
|
|
196
|
+
data: parsedContent
|
|
197
|
+
};
|
|
198
|
+
}
|
|
199
|
+
return {
|
|
200
|
+
type: "thinking",
|
|
201
|
+
data: parsedContent
|
|
202
|
+
};
|
|
203
|
+
}
|
|
204
|
+
function convertReasoningMessages(reasoningMessages) {
|
|
205
|
+
var reasoningData = [];
|
|
206
|
+
var toolCallMap = /* @__PURE__ */new Map();
|
|
207
|
+
reasoningMessages.forEach(function (msg) {
|
|
208
|
+
if (msg.role === "tool") {
|
|
209
|
+
toolCallMap.set(msg.toolCallId, {
|
|
210
|
+
toolCallId: msg.toolCallId,
|
|
211
|
+
result: msg.content
|
|
212
|
+
});
|
|
213
|
+
}
|
|
214
|
+
});
|
|
215
|
+
reasoningMessages.forEach(function (msg) {
|
|
216
|
+
if (msg.role === "assistant") {
|
|
217
|
+
if (msg.reasoningContent && typeof msg.reasoningContent === "string") {
|
|
218
|
+
reasoningData.push({
|
|
219
|
+
type: "text",
|
|
220
|
+
data: msg.reasoningContent,
|
|
221
|
+
status: "complete"
|
|
222
|
+
});
|
|
223
|
+
}
|
|
224
|
+
if (msg.content) {
|
|
225
|
+
reasoningData.push({
|
|
226
|
+
type: "text",
|
|
227
|
+
data: msg.content,
|
|
228
|
+
status: "complete"
|
|
229
|
+
});
|
|
230
|
+
}
|
|
231
|
+
if (msg.toolCalls && msg.toolCalls.length > 0) {
|
|
232
|
+
msg.toolCalls.forEach(function (toolCall) {
|
|
233
|
+
var _toolCallMap$get;
|
|
234
|
+
var toolResult = ((_toolCallMap$get = toolCallMap.get(toolCall.id)) === null || _toolCallMap$get === void 0 ? void 0 : _toolCallMap$get.result) || "";
|
|
235
|
+
var toolCallData = {
|
|
236
|
+
toolCallId: toolCall.id,
|
|
237
|
+
toolCallName: toolCall["function"].name,
|
|
238
|
+
args: toolCall["function"].arguments,
|
|
239
|
+
result: toolResult
|
|
240
|
+
};
|
|
241
|
+
reasoningData.push({
|
|
242
|
+
type: "toolcall-".concat(toolCall["function"].name, "-").concat(toolCall.id),
|
|
243
|
+
data: toolCallData,
|
|
244
|
+
status: "complete"
|
|
245
|
+
});
|
|
246
|
+
});
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
});
|
|
250
|
+
return reasoningData;
|
|
251
|
+
}
|
|
252
|
+
function processReasoningContent(reasoningContent) {
|
|
253
|
+
if (!reasoningContent) return null;
|
|
254
|
+
var _parseReasoningConten = parseReasoningContent(reasoningContent),
|
|
255
|
+
type = _parseReasoningConten.type,
|
|
256
|
+
data = _parseReasoningConten.data;
|
|
257
|
+
if (type === "reasoning") {
|
|
258
|
+
var reasoningData = convertReasoningMessages(data);
|
|
259
|
+
return {
|
|
260
|
+
type: "reasoning",
|
|
261
|
+
data: reasoningData,
|
|
262
|
+
status: "complete",
|
|
263
|
+
strategy: "append",
|
|
264
|
+
ext: {
|
|
265
|
+
collapsed: true
|
|
266
|
+
}
|
|
267
|
+
};
|
|
268
|
+
}
|
|
269
|
+
return {
|
|
270
|
+
type: "thinking",
|
|
271
|
+
status: "complete",
|
|
272
|
+
data: data
|
|
273
|
+
};
|
|
274
|
+
}
|
|
275
|
+
function processToolCalls(toolCalls, toolCallMap) {
|
|
276
|
+
return toolCalls.map(function (toolCall) {
|
|
277
|
+
var _toolCallMap$get2;
|
|
278
|
+
var toolResult = ((_toolCallMap$get2 = toolCallMap.get(toolCall.id)) === null || _toolCallMap$get2 === void 0 ? void 0 : _toolCallMap$get2.result) || "";
|
|
279
|
+
if (toolCall["function"].name === "suggestion") {
|
|
280
|
+
return {
|
|
281
|
+
type: "suggestion",
|
|
282
|
+
data: parseSSEData(toolResult) || []
|
|
283
|
+
};
|
|
284
|
+
}
|
|
285
|
+
var toolCallData = {
|
|
286
|
+
toolCallId: toolCall.id,
|
|
287
|
+
toolCallName: toolCall["function"].name,
|
|
288
|
+
args: toolCall["function"].arguments,
|
|
289
|
+
result: toolResult
|
|
290
|
+
};
|
|
291
|
+
return {
|
|
292
|
+
type: "toolcall-".concat(toolCall["function"].name, "-").concat(toolCall.id),
|
|
293
|
+
data: toolCallData
|
|
294
|
+
};
|
|
295
|
+
});
|
|
296
|
+
}
|
|
297
|
+
function buildToolCallMap(historyMessages) {
|
|
298
|
+
var toolCallMap = /* @__PURE__ */new Map();
|
|
299
|
+
historyMessages.forEach(function (msg) {
|
|
300
|
+
if (msg.role === "tool") {
|
|
301
|
+
toolCallMap.set(msg.toolCallId, {
|
|
302
|
+
toolCallId: msg.toolCallId,
|
|
303
|
+
result: msg.content
|
|
304
|
+
});
|
|
305
|
+
}
|
|
306
|
+
});
|
|
307
|
+
return toolCallMap;
|
|
308
|
+
}
|
|
309
|
+
|
|
310
|
+
export { addToReasoningData, buildToolCallMap, convertReasoningMessages, createAIMessageContent, createActivityContent, createMarkdownContent, createReasoningContent, createSuggestionContent, createTextContent, createThinkingContent, createToolCallContent, extractStateKeyFromDelta, formatLogMessage, generateConnectionId, handleCustomEvent, handleMessagesSnapshot, handleSuggestionToolCall, isValidEvent, mergeStringContent, parseReasoningContent, parseSSEData, processReasoningContent, processToolCalls, updateReasoningData, updateToolCall };
|
|
311
|
+
//# sourceMappingURL=utils.js.map
|