@mastra/ai-sdk 0.0.0-bundle-recursion-20251030002519 → 0.0.0-client-js-listmessages-agentid-fix-20251119175531
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/CHANGELOG.md +110 -3
- package/dist/chat-route.d.ts +52 -2
- package/dist/chat-route.d.ts.map +1 -1
- package/dist/convert-messages.d.ts +10 -0
- package/dist/convert-messages.d.ts.map +1 -0
- package/dist/convert-streams.d.ts +66 -0
- package/dist/convert-streams.d.ts.map +1 -0
- package/dist/helpers.d.ts +1 -2
- package/dist/helpers.d.ts.map +1 -1
- package/dist/index.cjs +189 -34
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +189 -35
- package/dist/index.js.map +1 -1
- package/dist/to-ai-sdk-format.d.ts +15 -16
- package/dist/to-ai-sdk-format.d.ts.map +1 -1
- package/dist/transformers.d.ts +18 -1
- package/dist/transformers.d.ts.map +1 -1
- package/dist/ui.cjs +16 -0
- package/dist/ui.cjs.map +1 -0
- package/dist/ui.d.ts +2 -0
- package/dist/ui.d.ts.map +1 -0
- package/dist/ui.js +13 -0
- package/dist/ui.js.map +1 -0
- package/dist/utils.d.ts +8 -1
- package/dist/utils.d.ts.map +1 -1
- package/dist/workflow-route.d.ts.map +1 -1
- package/package.json +21 -6
package/dist/index.cjs
CHANGED
|
@@ -10,6 +10,26 @@ var stream = require('@mastra/core/stream');
|
|
|
10
10
|
var isDataChunkType = (chunk) => {
|
|
11
11
|
return chunk && typeof chunk === "object" && "type" in chunk && chunk.type?.startsWith("data-");
|
|
12
12
|
};
|
|
13
|
+
function safeParseErrorObject(obj) {
|
|
14
|
+
if (typeof obj !== "object" || obj === null) {
|
|
15
|
+
return String(obj);
|
|
16
|
+
}
|
|
17
|
+
try {
|
|
18
|
+
const stringified = JSON.stringify(obj);
|
|
19
|
+
if (stringified === "{}") {
|
|
20
|
+
return String(obj);
|
|
21
|
+
}
|
|
22
|
+
return stringified;
|
|
23
|
+
} catch {
|
|
24
|
+
return String(obj);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
var isAgentExecutionDataChunkType = (chunk) => {
|
|
28
|
+
return chunk && typeof chunk === "object" && "type" in chunk && chunk.type?.startsWith("agent-execution-event-") && "payload" in chunk && typeof chunk.payload === "object" && "type" in chunk.payload && chunk.payload.type?.startsWith("data-");
|
|
29
|
+
};
|
|
30
|
+
var isWorkflowExecutionDataChunkType = (chunk) => {
|
|
31
|
+
return chunk && typeof chunk === "object" && "type" in chunk && chunk.type?.startsWith("workflow-execution-event-") && "payload" in chunk && typeof chunk.payload === "object" && "type" in chunk.payload && chunk.payload.type?.startsWith("data-");
|
|
32
|
+
};
|
|
13
33
|
|
|
14
34
|
// src/helpers.ts
|
|
15
35
|
function convertMastraChunkToAISDKv5({
|
|
@@ -265,6 +285,14 @@ function convertFullStreamChunkToUIMessageStream({
|
|
|
265
285
|
};
|
|
266
286
|
}
|
|
267
287
|
case "reasoning-delta": {
|
|
288
|
+
if (sendReasoning) {
|
|
289
|
+
return {
|
|
290
|
+
type: "reasoning-delta",
|
|
291
|
+
id: part.id,
|
|
292
|
+
delta: part.text,
|
|
293
|
+
...part.providerMetadata != null ? { providerMetadata: part.providerMetadata } : {}
|
|
294
|
+
};
|
|
295
|
+
}
|
|
268
296
|
return;
|
|
269
297
|
}
|
|
270
298
|
case "reasoning-end": {
|
|
@@ -282,6 +310,25 @@ function convertFullStreamChunkToUIMessageStream({
|
|
|
282
310
|
};
|
|
283
311
|
}
|
|
284
312
|
case "source": {
|
|
313
|
+
if (sendSources && part.sourceType === "url") {
|
|
314
|
+
return {
|
|
315
|
+
type: "source-url",
|
|
316
|
+
sourceId: part.id,
|
|
317
|
+
url: part.url,
|
|
318
|
+
title: part.title,
|
|
319
|
+
...part.providerMetadata != null ? { providerMetadata: part.providerMetadata } : {}
|
|
320
|
+
};
|
|
321
|
+
}
|
|
322
|
+
if (sendSources && part.sourceType === "document") {
|
|
323
|
+
return {
|
|
324
|
+
type: "source-document",
|
|
325
|
+
sourceId: part.id,
|
|
326
|
+
mediaType: part.mediaType,
|
|
327
|
+
title: part.title,
|
|
328
|
+
filename: part.filename,
|
|
329
|
+
...part.providerMetadata != null ? { providerMetadata: part.providerMetadata } : {}
|
|
330
|
+
};
|
|
331
|
+
}
|
|
285
332
|
return;
|
|
286
333
|
}
|
|
287
334
|
case "tool-input-start": {
|
|
@@ -339,6 +386,14 @@ function convertFullStreamChunkToUIMessageStream({
|
|
|
339
386
|
toolCallId: part.toolCallId,
|
|
340
387
|
payload: part.output
|
|
341
388
|
};
|
|
389
|
+
} else if (isDataChunkType(part.output)) {
|
|
390
|
+
if (!("data" in part.output)) {
|
|
391
|
+
throw new Error(
|
|
392
|
+
`UI Messages require a data property when using data- prefixed chunks
|
|
393
|
+
${JSON.stringify(part)}`
|
|
394
|
+
);
|
|
395
|
+
}
|
|
396
|
+
return part.output;
|
|
342
397
|
}
|
|
343
398
|
return;
|
|
344
399
|
}
|
|
@@ -364,21 +419,23 @@ function convertFullStreamChunkToUIMessageStream({
|
|
|
364
419
|
return { type: "finish-step" };
|
|
365
420
|
}
|
|
366
421
|
case "start": {
|
|
367
|
-
{
|
|
422
|
+
if (sendStart) {
|
|
368
423
|
return {
|
|
369
424
|
type: "start",
|
|
370
425
|
...messageMetadataValue != null ? { messageMetadata: messageMetadataValue } : {},
|
|
371
426
|
...responseMessageId != null ? { messageId: responseMessageId } : {}
|
|
372
427
|
};
|
|
373
428
|
}
|
|
429
|
+
return;
|
|
374
430
|
}
|
|
375
431
|
case "finish": {
|
|
376
|
-
{
|
|
432
|
+
if (sendFinish) {
|
|
377
433
|
return {
|
|
378
434
|
type: "finish",
|
|
379
435
|
...messageMetadataValue != null ? { messageMetadata: messageMetadataValue } : {}
|
|
380
436
|
};
|
|
381
437
|
}
|
|
438
|
+
return;
|
|
382
439
|
}
|
|
383
440
|
case "abort": {
|
|
384
441
|
return part;
|
|
@@ -443,20 +500,26 @@ function AgentNetworkToAISDKTransformer() {
|
|
|
443
500
|
}
|
|
444
501
|
});
|
|
445
502
|
}
|
|
446
|
-
function AgentStreamToAISDKTransformer(
|
|
503
|
+
function AgentStreamToAISDKTransformer({
|
|
504
|
+
lastMessageId,
|
|
505
|
+
sendStart,
|
|
506
|
+
sendFinish,
|
|
507
|
+
sendReasoning,
|
|
508
|
+
sendSources
|
|
509
|
+
}) {
|
|
447
510
|
let bufferedSteps = /* @__PURE__ */ new Map();
|
|
448
511
|
return new TransformStream({
|
|
449
512
|
transform(chunk, controller) {
|
|
450
513
|
const part = convertMastraChunkToAISDKv5({ chunk, mode: "stream" });
|
|
451
514
|
const transformedChunk = convertFullStreamChunkToUIMessageStream({
|
|
452
515
|
part,
|
|
453
|
-
sendReasoning
|
|
454
|
-
sendSources
|
|
455
|
-
sendStart
|
|
456
|
-
sendFinish
|
|
457
|
-
responseMessageId:
|
|
458
|
-
onError() {
|
|
459
|
-
return
|
|
516
|
+
sendReasoning,
|
|
517
|
+
sendSources,
|
|
518
|
+
sendStart,
|
|
519
|
+
sendFinish,
|
|
520
|
+
responseMessageId: lastMessageId,
|
|
521
|
+
onError(error) {
|
|
522
|
+
return safeParseErrorObject(error);
|
|
460
523
|
}
|
|
461
524
|
});
|
|
462
525
|
if (transformedChunk) {
|
|
@@ -638,7 +701,9 @@ function transformWorkflow(payload, bufferedWorkflows, isNested) {
|
|
|
638
701
|
name: payload.payload.id,
|
|
639
702
|
status: payload.payload.status,
|
|
640
703
|
input: payload.payload.payload ?? null,
|
|
641
|
-
output: null
|
|
704
|
+
output: null,
|
|
705
|
+
suspendPayload: null,
|
|
706
|
+
resumePayload: null
|
|
642
707
|
};
|
|
643
708
|
bufferedWorkflows.set(payload.runId, current);
|
|
644
709
|
return {
|
|
@@ -671,6 +736,27 @@ function transformWorkflow(payload, bufferedWorkflows, isNested) {
|
|
|
671
736
|
}
|
|
672
737
|
};
|
|
673
738
|
}
|
|
739
|
+
case "workflow-step-suspended": {
|
|
740
|
+
const current = bufferedWorkflows.get(payload.runId);
|
|
741
|
+
if (!current) return null;
|
|
742
|
+
current.steps[payload.payload.id] = {
|
|
743
|
+
...current.steps[payload.payload.id],
|
|
744
|
+
status: payload.payload.status,
|
|
745
|
+
suspendPayload: payload.payload.suspendPayload ?? null,
|
|
746
|
+
resumePayload: payload.payload.resumePayload ?? null,
|
|
747
|
+
output: null
|
|
748
|
+
};
|
|
749
|
+
return {
|
|
750
|
+
type: isNested ? "data-tool-workflow" : "data-workflow",
|
|
751
|
+
id: payload.runId,
|
|
752
|
+
data: {
|
|
753
|
+
name: current.name,
|
|
754
|
+
status: "suspended",
|
|
755
|
+
steps: current.steps,
|
|
756
|
+
output: null
|
|
757
|
+
}
|
|
758
|
+
};
|
|
759
|
+
}
|
|
674
760
|
case "workflow-finish": {
|
|
675
761
|
const current = bufferedWorkflows.get(payload.runId);
|
|
676
762
|
if (!current) return null;
|
|
@@ -745,7 +831,9 @@ function transformNetwork(payload, bufferedNetworks, isNested) {
|
|
|
745
831
|
name: payload.payload.agentId,
|
|
746
832
|
status: "running",
|
|
747
833
|
input: payload.payload.args || null,
|
|
748
|
-
output: null
|
|
834
|
+
output: null,
|
|
835
|
+
suspendPayload: null,
|
|
836
|
+
resumePayload: null
|
|
749
837
|
});
|
|
750
838
|
bufferedNetworks.set(payload.runId, current);
|
|
751
839
|
return {
|
|
@@ -763,7 +851,9 @@ function transformNetwork(payload, bufferedNetworks, isNested) {
|
|
|
763
851
|
name: payload.payload.name,
|
|
764
852
|
status: "running",
|
|
765
853
|
input: payload.payload.args || null,
|
|
766
|
-
output: null
|
|
854
|
+
output: null,
|
|
855
|
+
suspendPayload: null,
|
|
856
|
+
resumePayload: null
|
|
767
857
|
});
|
|
768
858
|
bufferedNetworks.set(payload.runId, current);
|
|
769
859
|
return {
|
|
@@ -781,7 +871,9 @@ function transformNetwork(payload, bufferedNetworks, isNested) {
|
|
|
781
871
|
name: payload.payload.args?.toolName,
|
|
782
872
|
status: "running",
|
|
783
873
|
input: payload.payload.args?.args || null,
|
|
784
|
-
output: null
|
|
874
|
+
output: null,
|
|
875
|
+
suspendPayload: null,
|
|
876
|
+
resumePayload: null
|
|
785
877
|
});
|
|
786
878
|
bufferedNetworks.set(payload.runId, current);
|
|
787
879
|
return {
|
|
@@ -800,7 +892,9 @@ function transformNetwork(payload, bufferedNetworks, isNested) {
|
|
|
800
892
|
name: payload.payload.agentId,
|
|
801
893
|
status: "success",
|
|
802
894
|
input: null,
|
|
803
|
-
output: payload.payload.result
|
|
895
|
+
output: payload.payload.result,
|
|
896
|
+
suspendPayload: null,
|
|
897
|
+
resumePayload: null
|
|
804
898
|
});
|
|
805
899
|
return {
|
|
806
900
|
type: isNested ? "data-tool-network" : "data-network",
|
|
@@ -820,7 +914,9 @@ function transformNetwork(payload, bufferedNetworks, isNested) {
|
|
|
820
914
|
name: payload.payload.toolName,
|
|
821
915
|
status: "success",
|
|
822
916
|
input: null,
|
|
823
|
-
output: payload.payload.result
|
|
917
|
+
output: payload.payload.result,
|
|
918
|
+
suspendPayload: null,
|
|
919
|
+
resumePayload: null
|
|
824
920
|
});
|
|
825
921
|
return {
|
|
826
922
|
type: isNested ? "data-tool-network" : "data-network",
|
|
@@ -839,7 +935,9 @@ function transformNetwork(payload, bufferedNetworks, isNested) {
|
|
|
839
935
|
name: payload.payload.name,
|
|
840
936
|
status: "success",
|
|
841
937
|
input: null,
|
|
842
|
-
output: payload.payload.result
|
|
938
|
+
output: payload.payload.result,
|
|
939
|
+
suspendPayload: null,
|
|
940
|
+
resumePayload: null
|
|
843
941
|
});
|
|
844
942
|
return {
|
|
845
943
|
type: isNested ? "data-tool-network" : "data-network",
|
|
@@ -903,13 +1001,35 @@ function transformNetwork(payload, bufferedNetworks, isNested) {
|
|
|
903
1001
|
}
|
|
904
1002
|
return payload;
|
|
905
1003
|
}
|
|
1004
|
+
if (isAgentExecutionDataChunkType(payload)) {
|
|
1005
|
+
if (!("data" in payload.payload)) {
|
|
1006
|
+
throw new Error(
|
|
1007
|
+
`UI Messages require a data property when using data- prefixed chunks
|
|
1008
|
+
${JSON.stringify(payload)}`
|
|
1009
|
+
);
|
|
1010
|
+
}
|
|
1011
|
+
return payload.payload;
|
|
1012
|
+
}
|
|
1013
|
+
if (isWorkflowExecutionDataChunkType(payload)) {
|
|
1014
|
+
if (!("data" in payload.payload)) {
|
|
1015
|
+
throw new Error(
|
|
1016
|
+
`UI Messages require a data property when using data- prefixed chunks
|
|
1017
|
+
${JSON.stringify(payload)}`
|
|
1018
|
+
);
|
|
1019
|
+
}
|
|
1020
|
+
return payload.payload;
|
|
1021
|
+
}
|
|
906
1022
|
return null;
|
|
907
1023
|
}
|
|
908
1024
|
}
|
|
909
1025
|
}
|
|
910
1026
|
|
|
911
|
-
// src/
|
|
912
|
-
function
|
|
1027
|
+
// src/convert-streams.ts
|
|
1028
|
+
function toAISdkV5Stream(stream, options = {
|
|
1029
|
+
from: "agent",
|
|
1030
|
+
sendStart: true,
|
|
1031
|
+
sendFinish: true
|
|
1032
|
+
}) {
|
|
913
1033
|
const from = options?.from;
|
|
914
1034
|
if (from === "workflow") {
|
|
915
1035
|
return stream.pipeThrough(WorkflowStreamToAISDKTransformer());
|
|
@@ -918,14 +1038,26 @@ function toAISdkFormat(stream, options = { from: "agent" }) {
|
|
|
918
1038
|
return stream.pipeThrough(AgentNetworkToAISDKTransformer());
|
|
919
1039
|
}
|
|
920
1040
|
const agentReadable = "fullStream" in stream ? stream.fullStream : stream;
|
|
921
|
-
return agentReadable.pipeThrough(
|
|
1041
|
+
return agentReadable.pipeThrough(
|
|
1042
|
+
AgentStreamToAISDKTransformer({
|
|
1043
|
+
lastMessageId: options?.lastMessageId,
|
|
1044
|
+
sendStart: options?.sendStart,
|
|
1045
|
+
sendFinish: options?.sendFinish,
|
|
1046
|
+
sendReasoning: options?.sendReasoning,
|
|
1047
|
+
sendSources: options?.sendSources
|
|
1048
|
+
})
|
|
1049
|
+
);
|
|
922
1050
|
}
|
|
923
1051
|
|
|
924
1052
|
// src/chat-route.ts
|
|
925
1053
|
function chatRoute({
|
|
926
1054
|
path = "/chat/:agentId",
|
|
927
1055
|
agent,
|
|
928
|
-
defaultOptions
|
|
1056
|
+
defaultOptions,
|
|
1057
|
+
sendStart = true,
|
|
1058
|
+
sendFinish = true,
|
|
1059
|
+
sendReasoning = false,
|
|
1060
|
+
sendSources = false
|
|
929
1061
|
}) {
|
|
930
1062
|
if (!agent && !path.includes("/:agentId")) {
|
|
931
1063
|
throw new Error("Path must include :agentId to route to the correct agent or pass the agent explicitly");
|
|
@@ -1026,7 +1158,7 @@ function chatRoute({
|
|
|
1026
1158
|
handler: async (c) => {
|
|
1027
1159
|
const { messages, ...rest } = await c.req.json();
|
|
1028
1160
|
const mastra = c.get("mastra");
|
|
1029
|
-
const
|
|
1161
|
+
const requestContext = c.get("requestContext");
|
|
1030
1162
|
let agentToUse = agent;
|
|
1031
1163
|
if (!agent) {
|
|
1032
1164
|
const agentId = c.req.param("agentId");
|
|
@@ -1037,8 +1169,8 @@ function chatRoute({
|
|
|
1037
1169
|
`Fixed agent ID was set together with an agentId path parameter. This can lead to unexpected behavior.`
|
|
1038
1170
|
);
|
|
1039
1171
|
}
|
|
1040
|
-
if (
|
|
1041
|
-
mastra.getLogger()?.warn(`"
|
|
1172
|
+
if (requestContext && defaultOptions?.requestContext) {
|
|
1173
|
+
mastra.getLogger()?.warn(`"requestContext" set in the route options will be overridden by the request's "requestContext".`);
|
|
1042
1174
|
}
|
|
1043
1175
|
if (!agentToUse) {
|
|
1044
1176
|
throw new Error("Agent ID is required");
|
|
@@ -1050,12 +1182,23 @@ function chatRoute({
|
|
|
1050
1182
|
const result = await agentObj.stream(messages, {
|
|
1051
1183
|
...defaultOptions,
|
|
1052
1184
|
...rest,
|
|
1053
|
-
|
|
1185
|
+
requestContext: requestContext || defaultOptions?.requestContext
|
|
1054
1186
|
});
|
|
1187
|
+
let lastMessageId;
|
|
1188
|
+
if (messages.length > 0 && messages[messages.length - 1].role === "assistant") {
|
|
1189
|
+
lastMessageId = messages[messages.length - 1].id;
|
|
1190
|
+
}
|
|
1055
1191
|
const uiMessageStream = ai.createUIMessageStream({
|
|
1056
1192
|
originalMessages: messages,
|
|
1057
1193
|
execute: async ({ writer }) => {
|
|
1058
|
-
for await (const part of
|
|
1194
|
+
for await (const part of toAISdkV5Stream(result, {
|
|
1195
|
+
from: "agent",
|
|
1196
|
+
lastMessageId,
|
|
1197
|
+
sendStart,
|
|
1198
|
+
sendFinish,
|
|
1199
|
+
sendReasoning,
|
|
1200
|
+
sendSources
|
|
1201
|
+
})) {
|
|
1059
1202
|
writer.write(part);
|
|
1060
1203
|
}
|
|
1061
1204
|
}
|
|
@@ -1095,9 +1238,13 @@ function workflowRoute({
|
|
|
1095
1238
|
schema: {
|
|
1096
1239
|
type: "object",
|
|
1097
1240
|
properties: {
|
|
1241
|
+
runId: { type: "string" },
|
|
1242
|
+
resourceId: { type: "string" },
|
|
1098
1243
|
inputData: { type: "object", additionalProperties: true },
|
|
1099
|
-
|
|
1100
|
-
|
|
1244
|
+
resumeData: { type: "object", additionalProperties: true },
|
|
1245
|
+
requestContext: { type: "object", additionalProperties: true },
|
|
1246
|
+
tracingOptions: { type: "object", additionalProperties: true },
|
|
1247
|
+
step: { type: "string" }
|
|
1101
1248
|
}
|
|
1102
1249
|
}
|
|
1103
1250
|
}
|
|
@@ -1115,7 +1262,7 @@ function workflowRoute({
|
|
|
1115
1262
|
}
|
|
1116
1263
|
},
|
|
1117
1264
|
handler: async (c) => {
|
|
1118
|
-
const { inputData, ...rest } = await c.req.json();
|
|
1265
|
+
const { runId, resourceId, inputData, resumeData, ...rest } = await c.req.json();
|
|
1119
1266
|
const mastra = c.get("mastra");
|
|
1120
1267
|
let workflowToUse = workflow;
|
|
1121
1268
|
if (!workflow) {
|
|
@@ -1134,11 +1281,11 @@ function workflowRoute({
|
|
|
1134
1281
|
if (!workflowObj) {
|
|
1135
1282
|
throw new Error(`Workflow ${workflowToUse} not found`);
|
|
1136
1283
|
}
|
|
1137
|
-
const run = await workflowObj.
|
|
1138
|
-
const stream = run.
|
|
1284
|
+
const run = await workflowObj.createRun({ runId, resourceId, ...rest });
|
|
1285
|
+
const stream = resumeData ? run.resumeStream({ resumeData, ...rest }) : run.stream({ inputData, ...rest });
|
|
1139
1286
|
const uiMessageStream = ai.createUIMessageStream({
|
|
1140
1287
|
execute: async ({ writer }) => {
|
|
1141
|
-
for await (const part of
|
|
1288
|
+
for await (const part of toAISdkV5Stream(stream, { from: "workflow" })) {
|
|
1142
1289
|
writer.write(part);
|
|
1143
1290
|
}
|
|
1144
1291
|
}
|
|
@@ -1178,7 +1325,7 @@ function networkRoute({
|
|
|
1178
1325
|
type: "object",
|
|
1179
1326
|
properties: {
|
|
1180
1327
|
messages: { type: "array", items: { type: "object" } },
|
|
1181
|
-
|
|
1328
|
+
requestContext: { type: "object", additionalProperties: true },
|
|
1182
1329
|
runId: { type: "string" },
|
|
1183
1330
|
maxSteps: { type: "number" },
|
|
1184
1331
|
threadId: { type: "string" },
|
|
@@ -1232,7 +1379,7 @@ function networkRoute({
|
|
|
1232
1379
|
});
|
|
1233
1380
|
const uiMessageStream = ai.createUIMessageStream({
|
|
1234
1381
|
execute: async ({ writer }) => {
|
|
1235
|
-
for await (const part of
|
|
1382
|
+
for await (const part of toAISdkV5Stream(result, { from: "network" })) {
|
|
1236
1383
|
writer.write(part);
|
|
1237
1384
|
}
|
|
1238
1385
|
}
|
|
@@ -1242,9 +1389,17 @@ function networkRoute({
|
|
|
1242
1389
|
});
|
|
1243
1390
|
}
|
|
1244
1391
|
|
|
1392
|
+
// src/to-ai-sdk-format.ts
|
|
1393
|
+
function toAISdkFormat() {
|
|
1394
|
+
throw new Error(
|
|
1395
|
+
'toAISdkFormat() has been deprecated. Please use toAISdkStream() instead.\n\nMigration:\n import { toAISdkFormat } from "@mastra/ai-sdk";\n // Change to:\n import { toAISdkStream } from "@mastra/ai-sdk";\n\nThe function signature remains the same.'
|
|
1396
|
+
);
|
|
1397
|
+
}
|
|
1398
|
+
|
|
1245
1399
|
exports.chatRoute = chatRoute;
|
|
1246
1400
|
exports.networkRoute = networkRoute;
|
|
1247
1401
|
exports.toAISdkFormat = toAISdkFormat;
|
|
1402
|
+
exports.toAISdkStream = toAISdkV5Stream;
|
|
1248
1403
|
exports.workflowRoute = workflowRoute;
|
|
1249
1404
|
//# sourceMappingURL=index.cjs.map
|
|
1250
1405
|
//# sourceMappingURL=index.cjs.map
|