@assistant-ui/react 0.12.14 → 0.12.16

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 (102) hide show
  1. package/dist/index.d.ts +1 -1
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +1 -1
  4. package/dist/index.js.map +1 -1
  5. package/dist/internal.d.ts +1 -1
  6. package/dist/internal.d.ts.map +1 -1
  7. package/dist/internal.js +1 -1
  8. package/dist/internal.js.map +1 -1
  9. package/dist/legacy-runtime/cloud/AssistantCloudThreadHistoryAdapter.d.ts +1 -4
  10. package/dist/legacy-runtime/cloud/AssistantCloudThreadHistoryAdapter.d.ts.map +1 -1
  11. package/dist/legacy-runtime/cloud/AssistantCloudThreadHistoryAdapter.js +2 -527
  12. package/dist/legacy-runtime/cloud/AssistantCloudThreadHistoryAdapter.js.map +1 -1
  13. package/dist/legacy-runtime/hooks/AttachmentContext.d.ts +96 -96
  14. package/dist/legacy-runtime/runtime-cores/adapters/RuntimeAdapterProvider.d.ts +1 -16
  15. package/dist/legacy-runtime/runtime-cores/adapters/RuntimeAdapterProvider.d.ts.map +1 -1
  16. package/dist/legacy-runtime/runtime-cores/adapters/RuntimeAdapterProvider.js +1 -14
  17. package/dist/legacy-runtime/runtime-cores/adapters/RuntimeAdapterProvider.js.map +1 -1
  18. package/dist/legacy-runtime/runtime-cores/adapters/attachment/CloudFileAttachmentAdapter.d.ts +1 -13
  19. package/dist/legacy-runtime/runtime-cores/adapters/attachment/CloudFileAttachmentAdapter.d.ts.map +1 -1
  20. package/dist/legacy-runtime/runtime-cores/adapters/attachment/CloudFileAttachmentAdapter.js +2 -82
  21. package/dist/legacy-runtime/runtime-cores/adapters/attachment/CloudFileAttachmentAdapter.js.map +1 -1
  22. package/dist/legacy-runtime/runtime-cores/assistant-transport/useToolInvocations.d.ts +1 -23
  23. package/dist/legacy-runtime/runtime-cores/assistant-transport/useToolInvocations.d.ts.map +1 -1
  24. package/dist/legacy-runtime/runtime-cores/assistant-transport/useToolInvocations.js +1 -305
  25. package/dist/legacy-runtime/runtime-cores/assistant-transport/useToolInvocations.js.map +1 -1
  26. package/dist/legacy-runtime/runtime-cores/external-store/createMessageConverter.d.ts +1 -16
  27. package/dist/legacy-runtime/runtime-cores/external-store/createMessageConverter.d.ts.map +1 -1
  28. package/dist/legacy-runtime/runtime-cores/external-store/createMessageConverter.js +1 -48
  29. package/dist/legacy-runtime/runtime-cores/external-store/createMessageConverter.js.map +1 -1
  30. package/dist/legacy-runtime/runtime-cores/external-store/external-message-converter.d.ts +1 -33
  31. package/dist/legacy-runtime/runtime-cores/external-store/external-message-converter.d.ts.map +1 -1
  32. package/dist/legacy-runtime/runtime-cores/external-store/external-message-converter.js +1 -295
  33. package/dist/legacy-runtime/runtime-cores/external-store/external-message-converter.js.map +1 -1
  34. package/dist/legacy-runtime/runtime-cores/external-store/useExternalStoreRuntime.d.ts +1 -3
  35. package/dist/legacy-runtime/runtime-cores/external-store/useExternalStoreRuntime.d.ts.map +1 -1
  36. package/dist/legacy-runtime/runtime-cores/external-store/useExternalStoreRuntime.js +1 -17
  37. package/dist/legacy-runtime/runtime-cores/external-store/useExternalStoreRuntime.js.map +1 -1
  38. package/dist/legacy-runtime/runtime-cores/local/LocalRuntimeOptions.d.ts +1 -1
  39. package/dist/legacy-runtime/runtime-cores/remote-thread-list/RemoteThreadListHookInstanceManager.d.ts +1 -96
  40. package/dist/legacy-runtime/runtime-cores/remote-thread-list/RemoteThreadListHookInstanceManager.d.ts.map +1 -1
  41. package/dist/legacy-runtime/runtime-cores/remote-thread-list/RemoteThreadListHookInstanceManager.js +1 -110
  42. package/dist/legacy-runtime/runtime-cores/remote-thread-list/RemoteThreadListHookInstanceManager.js.map +1 -1
  43. package/dist/legacy-runtime/runtime-cores/remote-thread-list/RemoteThreadListThreadListRuntimeCore.d.ts +1 -112
  44. package/dist/legacy-runtime/runtime-cores/remote-thread-list/RemoteThreadListThreadListRuntimeCore.d.ts.map +1 -1
  45. package/dist/legacy-runtime/runtime-cores/remote-thread-list/RemoteThreadListThreadListRuntimeCore.js +1 -439
  46. package/dist/legacy-runtime/runtime-cores/remote-thread-list/RemoteThreadListThreadListRuntimeCore.js.map +1 -1
  47. package/dist/legacy-runtime/runtime-cores/remote-thread-list/adapter/cloud.d.ts +1 -12
  48. package/dist/legacy-runtime/runtime-cores/remote-thread-list/adapter/cloud.d.ts.map +1 -1
  49. package/dist/legacy-runtime/runtime-cores/remote-thread-list/adapter/cloud.js +1 -102
  50. package/dist/legacy-runtime/runtime-cores/remote-thread-list/adapter/cloud.js.map +1 -1
  51. package/dist/legacy-runtime/runtime-cores/remote-thread-list/useRemoteThreadListRuntime.d.ts +1 -3
  52. package/dist/legacy-runtime/runtime-cores/remote-thread-list/useRemoteThreadListRuntime.d.ts.map +1 -1
  53. package/dist/legacy-runtime/runtime-cores/remote-thread-list/useRemoteThreadListRuntime.js +1 -46
  54. package/dist/legacy-runtime/runtime-cores/remote-thread-list/useRemoteThreadListRuntime.js.map +1 -1
  55. package/dist/primitives/actionBar/ActionBarInteractionContext.d.ts +6 -0
  56. package/dist/primitives/actionBar/ActionBarInteractionContext.d.ts.map +1 -0
  57. package/dist/primitives/actionBar/ActionBarInteractionContext.js +5 -0
  58. package/dist/primitives/actionBar/ActionBarInteractionContext.js.map +1 -0
  59. package/dist/primitives/actionBar/ActionBarRoot.d.ts.map +1 -1
  60. package/dist/primitives/actionBar/ActionBarRoot.js +18 -4
  61. package/dist/primitives/actionBar/ActionBarRoot.js.map +1 -1
  62. package/dist/primitives/actionBar/useActionBarFloatStatus.d.ts +2 -1
  63. package/dist/primitives/actionBar/useActionBarFloatStatus.d.ts.map +1 -1
  64. package/dist/primitives/actionBar/useActionBarFloatStatus.js +3 -2
  65. package/dist/primitives/actionBar/useActionBarFloatStatus.js.map +1 -1
  66. package/dist/primitives/actionBarMore/ActionBarMoreRoot.d.ts.map +1 -1
  67. package/dist/primitives/actionBarMore/ActionBarMoreRoot.js +35 -2
  68. package/dist/primitives/actionBarMore/ActionBarMoreRoot.js.map +1 -1
  69. package/dist/utils/createActionButton.js +1 -1
  70. package/dist/utils/createActionButton.js.map +1 -1
  71. package/dist/utils/json/is-json-equal.d.ts +2 -0
  72. package/dist/utils/json/is-json-equal.d.ts.map +1 -0
  73. package/dist/utils/json/is-json-equal.js +31 -0
  74. package/dist/utils/json/is-json-equal.js.map +1 -0
  75. package/dist/utils/json/is-json.d.ts +1 -0
  76. package/dist/utils/json/is-json.d.ts.map +1 -1
  77. package/dist/utils/json/is-json.js +5 -3
  78. package/dist/utils/json/is-json.js.map +1 -1
  79. package/package.json +8 -8
  80. package/src/index.ts +1 -1
  81. package/src/internal.ts +1 -1
  82. package/src/legacy-runtime/cloud/AssistantCloudThreadHistoryAdapter.ts +2 -784
  83. package/src/legacy-runtime/runtime-cores/adapters/RuntimeAdapterProvider.tsx +5 -43
  84. package/src/legacy-runtime/runtime-cores/adapters/attachment/CloudFileAttachmentAdapter.ts +2 -100
  85. package/src/legacy-runtime/runtime-cores/assistant-transport/useToolInvocations.test.ts +225 -2
  86. package/src/legacy-runtime/runtime-cores/assistant-transport/useToolInvocations.ts +4 -439
  87. package/src/legacy-runtime/runtime-cores/external-store/createMessageConverter.ts +1 -76
  88. package/src/legacy-runtime/runtime-cores/external-store/external-message-converter.ts +4 -465
  89. package/src/legacy-runtime/runtime-cores/external-store/useExternalStoreRuntime.ts +1 -27
  90. package/src/legacy-runtime/runtime-cores/remote-thread-list/RemoteThreadListHookInstanceManager.tsx +1 -178
  91. package/src/legacy-runtime/runtime-cores/remote-thread-list/RemoteThreadListThreadListRuntimeCore.tsx +1 -529
  92. package/src/legacy-runtime/runtime-cores/remote-thread-list/adapter/cloud.tsx +1 -152
  93. package/src/legacy-runtime/runtime-cores/remote-thread-list/useRemoteThreadListRuntime.ts +1 -80
  94. package/src/primitives/actionBar/ActionBarInteractionContext.ts +13 -0
  95. package/src/primitives/actionBar/ActionBarRoot.tsx +38 -8
  96. package/src/primitives/actionBar/useActionBarFloatStatus.ts +4 -1
  97. package/src/primitives/actionBarMore/ActionBarMoreRoot.tsx +52 -2
  98. package/src/tests/BaseComposerRuntimeCore.test.ts +2 -3
  99. package/src/tests/external-message-converter.test.ts +80 -0
  100. package/src/utils/createActionButton.tsx +1 -1
  101. package/src/utils/json/is-json-equal.ts +48 -0
  102. package/src/utils/json/is-json.ts +6 -3
@@ -1,83 +1,3 @@
1
- const guessAttachmentType = (contentType) => {
2
- if (contentType.startsWith("image/"))
3
- return "image";
4
- if (contentType.startsWith("text/"))
5
- return "document";
6
- return "file";
7
- };
8
- export class CloudFileAttachmentAdapter {
9
- cloud;
10
- accept = "*";
11
- constructor(cloud) {
12
- this.cloud = cloud;
13
- }
14
- uploadedUrls = new Map();
15
- async *add({ file, }) {
16
- const id = crypto.randomUUID();
17
- const type = guessAttachmentType(file.type);
18
- let attachment = {
19
- id,
20
- type,
21
- name: file.name,
22
- contentType: file.type,
23
- file,
24
- status: { type: "running", reason: "uploading", progress: 0 },
25
- };
26
- yield attachment;
27
- try {
28
- const { signedUrl, publicUrl } = await this.cloud.files.generatePresignedUploadUrl({
29
- filename: file.name,
30
- });
31
- await fetch(signedUrl, {
32
- method: "PUT",
33
- body: file,
34
- headers: {
35
- "Content-Type": file.type,
36
- },
37
- mode: "cors",
38
- });
39
- this.uploadedUrls.set(id, publicUrl);
40
- attachment = {
41
- ...attachment,
42
- status: { type: "requires-action", reason: "composer-send" },
43
- };
44
- yield attachment;
45
- }
46
- catch {
47
- attachment = {
48
- ...attachment,
49
- status: { type: "incomplete", reason: "error" },
50
- };
51
- yield attachment;
52
- }
53
- }
54
- async remove(attachment) {
55
- this.uploadedUrls.delete(attachment.id);
56
- }
57
- async send(attachment) {
58
- const url = this.uploadedUrls.get(attachment.id);
59
- if (!url)
60
- throw new Error("Attachment not uploaded");
61
- this.uploadedUrls.delete(attachment.id);
62
- let content;
63
- if (attachment.type === "image") {
64
- content = [{ type: "image", image: url, filename: attachment.name }];
65
- }
66
- else {
67
- content = [
68
- {
69
- type: "file",
70
- data: url,
71
- mimeType: attachment.contentType ?? "",
72
- filename: attachment.name,
73
- },
74
- ];
75
- }
76
- return {
77
- ...attachment,
78
- status: { type: "complete" },
79
- content,
80
- };
81
- }
82
- }
1
+ "use client";
2
+ export { CloudFileAttachmentAdapter } from "@assistant-ui/core/react";
83
3
  //# sourceMappingURL=CloudFileAttachmentAdapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CloudFileAttachmentAdapter.js","sourceRoot":"","sources":["../../../../../src/legacy-runtime/runtime-cores/adapters/attachment/CloudFileAttachmentAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CloudFileAttachmentAdapter.js","sourceRoot":"","sources":["../../../../../src/legacy-runtime/runtime-cores/adapters/attachment/CloudFileAttachmentAdapter.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC"}
@@ -1,24 +1,2 @@
1
- import { type Tool } from "assistant-stream";
2
- import type { AssistantTransportCommand, AssistantTransportState } from "./types.js";
3
- type UseToolInvocationsParams = {
4
- state: AssistantTransportState;
5
- getTools: () => Record<string, Tool> | undefined;
6
- onResult: (command: AssistantTransportCommand) => void;
7
- setToolStatuses: (updater: Record<string, ToolExecutionStatus> | ((prev: Record<string, ToolExecutionStatus>) => Record<string, ToolExecutionStatus>)) => void;
8
- };
9
- export type ToolExecutionStatus = {
10
- type: "executing";
11
- } | {
12
- type: "interrupt";
13
- payload: {
14
- type: "human";
15
- payload: unknown;
16
- };
17
- };
18
- export declare function useToolInvocations({ state, getTools, onResult, setToolStatuses, }: UseToolInvocationsParams): {
19
- reset: () => void;
20
- abort: () => Promise<void>;
21
- resume: (toolCallId: string, payload: unknown) => void;
22
- };
23
- export {};
1
+ export { useToolInvocations, type ToolExecutionStatus, } from "@assistant-ui/core/react";
24
2
  //# sourceMappingURL=useToolInvocations.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useToolInvocations.d.ts","sourceRoot":"","sources":["../../../../src/legacy-runtime/runtime-cores/assistant-transport/useToolInvocations.ts"],"names":[],"mappings":"AACA,OAAO,EAKL,KAAK,IAAI,EACV,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EACV,yBAAyB,EACzB,uBAAuB,EACxB,mBAAgB;AAejB,KAAK,wBAAwB,GAAG;IAC9B,KAAK,EAAE,uBAAuB,CAAC;IAC/B,QAAQ,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,SAAS,CAAC;IACjD,QAAQ,EAAE,CAAC,OAAO,EAAE,yBAAyB,KAAK,IAAI,CAAC;IACvD,eAAe,EAAE,CACf,OAAO,EACH,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,GACnC,CAAC,CACC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,KACtC,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,KAC1C,IAAI,CAAC;CACX,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAC3B;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,GACrB;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAA;CAAE,CAAC;AAUxE,wBAAgB,kBAAkB,CAAC,EACjC,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,eAAe,GAChB,EAAE,wBAAwB;;iBAkVP,OAAO,CAAC,IAAI,CAAC;yBA4BR,MAAM,WAAW,OAAO;EAgBhD"}
1
+ {"version":3,"file":"useToolInvocations.d.ts","sourceRoot":"","sources":["../../../../src/legacy-runtime/runtime-cores/assistant-transport/useToolInvocations.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,KAAK,mBAAmB,GACzB,MAAM,0BAA0B,CAAC"}
@@ -1,306 +1,2 @@
1
- import { useEffect, useRef, useState } from "react";
2
- import { createAssistantStreamController, ToolResponse, unstable_toolResultStream, } from "assistant-stream";
3
- import { AssistantMetaTransformStream, } from "assistant-stream/utils";
4
- const isArgsTextComplete = (argsText) => {
5
- try {
6
- JSON.parse(argsText);
7
- return true;
8
- }
9
- catch {
10
- return false;
11
- }
12
- };
13
- export function useToolInvocations({ state, getTools, onResult, setToolStatuses, }) {
14
- const lastToolStates = useRef({});
15
- const humanInputRef = useRef(new Map());
16
- const acRef = useRef(new AbortController());
17
- const executingCountRef = useRef(0);
18
- const settledResolversRef = useRef([]);
19
- const toolCallIdAliasesRef = useRef(new Map());
20
- const ignoredResultToolCallIdsRef = useRef(new Set());
21
- const rewriteCounterRef = useRef(0);
22
- const getLogicalToolCallId = (toolCallId) => {
23
- return toolCallIdAliasesRef.current.get(toolCallId) ?? toolCallId;
24
- };
25
- const shouldIgnoreAndCleanupResult = (toolCallId) => {
26
- if (!ignoredResultToolCallIdsRef.current.has(toolCallId))
27
- return false;
28
- ignoredResultToolCallIdsRef.current.delete(toolCallId);
29
- toolCallIdAliasesRef.current.delete(toolCallId);
30
- return true;
31
- };
32
- const getWrappedTools = () => {
33
- const tools = getTools();
34
- if (!tools)
35
- return undefined;
36
- return Object.fromEntries(Object.entries(tools).map(([name, tool]) => {
37
- const execute = tool.execute;
38
- const streamCall = tool.streamCall;
39
- const wrappedTool = {
40
- ...tool,
41
- ...(execute !== undefined && {
42
- execute: (...[args, context]) => execute(args, {
43
- ...context,
44
- toolCallId: getLogicalToolCallId(context.toolCallId),
45
- }),
46
- }),
47
- ...(streamCall !== undefined && {
48
- streamCall: (...[reader, context]) => streamCall(reader, {
49
- ...context,
50
- toolCallId: getLogicalToolCallId(context.toolCallId),
51
- }),
52
- }),
53
- };
54
- return [name, wrappedTool];
55
- }));
56
- };
57
- const [controller] = useState(() => {
58
- const [stream, controller] = createAssistantStreamController();
59
- const transform = unstable_toolResultStream(getWrappedTools, () => acRef.current?.signal ?? new AbortController().signal, (toolCallId, payload) => {
60
- const logicalToolCallId = getLogicalToolCallId(toolCallId);
61
- return new Promise((resolve, reject) => {
62
- // Reject previous human input request if it exists
63
- const previous = humanInputRef.current.get(logicalToolCallId);
64
- if (previous) {
65
- previous.reject(new Error("Human input request was superseded by a new request"));
66
- }
67
- humanInputRef.current.set(logicalToolCallId, { resolve, reject });
68
- setToolStatuses((prev) => ({
69
- ...prev,
70
- [logicalToolCallId]: {
71
- type: "interrupt",
72
- payload: { type: "human", payload },
73
- },
74
- }));
75
- });
76
- }, {
77
- onExecutionStart: (toolCallId) => {
78
- if (ignoredResultToolCallIdsRef.current.has(toolCallId)) {
79
- return;
80
- }
81
- const logicalToolCallId = getLogicalToolCallId(toolCallId);
82
- executingCountRef.current++;
83
- setToolStatuses((prev) => ({
84
- ...prev,
85
- [logicalToolCallId]: { type: "executing" },
86
- }));
87
- },
88
- onExecutionEnd: (toolCallId) => {
89
- if (ignoredResultToolCallIdsRef.current.has(toolCallId)) {
90
- return;
91
- }
92
- const logicalToolCallId = getLogicalToolCallId(toolCallId);
93
- executingCountRef.current--;
94
- setToolStatuses((prev) => {
95
- const next = { ...prev };
96
- delete next[logicalToolCallId];
97
- return next;
98
- });
99
- // Resolve any waiting abort promises when all tools have settled
100
- if (executingCountRef.current === 0) {
101
- settledResolversRef.current.forEach((resolve) => resolve());
102
- settledResolversRef.current = [];
103
- }
104
- },
105
- });
106
- stream
107
- .pipeThrough(transform)
108
- .pipeThrough(new AssistantMetaTransformStream())
109
- .pipeTo(new WritableStream({
110
- write(chunk) {
111
- if (chunk.type === "result") {
112
- if (shouldIgnoreAndCleanupResult(chunk.meta.toolCallId)) {
113
- return;
114
- }
115
- const logicalToolCallId = getLogicalToolCallId(chunk.meta.toolCallId);
116
- if (logicalToolCallId !== chunk.meta.toolCallId) {
117
- toolCallIdAliasesRef.current.delete(chunk.meta.toolCallId);
118
- }
119
- // the tool call result was already set by the backend
120
- if (lastToolStates.current[logicalToolCallId]?.hasResult)
121
- return;
122
- onResult({
123
- type: "add-tool-result",
124
- toolCallId: logicalToolCallId,
125
- toolName: chunk.meta.toolName,
126
- result: chunk.result,
127
- isError: chunk.isError,
128
- ...(chunk.artifact && { artifact: chunk.artifact }),
129
- });
130
- }
131
- },
132
- }));
133
- return controller;
134
- });
135
- const ignoredToolIds = useRef(new Set());
136
- const isInitialState = useRef(true);
137
- useEffect(() => {
138
- const createToolState = ({ controller, streamToolCallId, }) => ({
139
- argsText: "",
140
- hasResult: false,
141
- argsComplete: false,
142
- streamToolCallId,
143
- controller,
144
- });
145
- const setToolState = (toolCallId, state) => {
146
- lastToolStates.current[toolCallId] = state;
147
- return state;
148
- };
149
- const patchToolState = (toolCallId, state, patch) => {
150
- return setToolState(toolCallId, { ...state, ...patch });
151
- };
152
- const processMessages = (messages) => {
153
- messages.forEach((message) => {
154
- message.content.forEach((content) => {
155
- if (content.type === "tool-call") {
156
- if (isInitialState.current) {
157
- ignoredToolIds.current.add(content.toolCallId);
158
- }
159
- else {
160
- if (ignoredToolIds.current.has(content.toolCallId)) {
161
- return;
162
- }
163
- let lastState = lastToolStates.current[content.toolCallId];
164
- if (!lastState) {
165
- toolCallIdAliasesRef.current.set(content.toolCallId, content.toolCallId);
166
- const toolCallController = controller.addToolCallPart({
167
- toolName: content.toolName,
168
- toolCallId: content.toolCallId,
169
- });
170
- lastState = setToolState(content.toolCallId, createToolState({
171
- controller: toolCallController,
172
- streamToolCallId: content.toolCallId,
173
- }));
174
- }
175
- if (content.argsText !== lastState.argsText) {
176
- if (lastState.argsComplete) {
177
- if (process.env.NODE_ENV !== "production") {
178
- console.warn("argsText updated after controller was closed:", {
179
- previous: lastState.argsText,
180
- next: content.argsText,
181
- });
182
- }
183
- }
184
- else {
185
- if (!content.argsText.startsWith(lastState.argsText)) {
186
- // Check if this is key reordering (both are complete JSON)
187
- // This happens when transitioning from streaming to complete state
188
- // and the provider returns keys in a different order
189
- if (isArgsTextComplete(lastState.argsText) &&
190
- isArgsTextComplete(content.argsText)) {
191
- lastState.controller.argsText.close();
192
- patchToolState(content.toolCallId, lastState, {
193
- argsText: content.argsText,
194
- argsComplete: true,
195
- });
196
- return; // Continue to next content part
197
- }
198
- if (process.env.NODE_ENV !== "production") {
199
- console.warn("argsText rewrote previous snapshot, restarting tool args stream:", {
200
- previous: lastState.argsText,
201
- next: content.argsText,
202
- toolCallId: content.toolCallId,
203
- });
204
- }
205
- ignoredResultToolCallIdsRef.current.add(lastState.streamToolCallId);
206
- lastState.controller.argsText.close();
207
- const streamToolCallId = `${content.toolCallId}:rewrite:${rewriteCounterRef.current++}`;
208
- toolCallIdAliasesRef.current.set(streamToolCallId, content.toolCallId);
209
- const toolCallController = controller.addToolCallPart({
210
- toolName: content.toolName,
211
- toolCallId: streamToolCallId,
212
- });
213
- if (process.env.NODE_ENV !== "production") {
214
- console.warn("started replacement stream tool call", {
215
- toolCallId: content.toolCallId,
216
- streamToolCallId,
217
- });
218
- }
219
- lastState = setToolState(content.toolCallId, {
220
- ...createToolState({
221
- controller: toolCallController,
222
- streamToolCallId,
223
- }),
224
- hasResult: lastState.hasResult,
225
- });
226
- }
227
- const argsTextDelta = content.argsText.slice(lastState.argsText.length);
228
- lastState.controller.argsText.append(argsTextDelta);
229
- const shouldClose = isArgsTextComplete(content.argsText);
230
- if (shouldClose) {
231
- lastState.controller.argsText.close();
232
- }
233
- patchToolState(content.toolCallId, lastState, {
234
- argsText: content.argsText,
235
- argsComplete: shouldClose,
236
- });
237
- }
238
- }
239
- if (content.result !== undefined && !lastState.hasResult) {
240
- patchToolState(content.toolCallId, lastState, {
241
- hasResult: true,
242
- argsComplete: true,
243
- });
244
- lastState.controller.setResponse(new ToolResponse({
245
- result: content.result,
246
- artifact: content.artifact,
247
- isError: content.isError,
248
- }));
249
- lastState.controller.close();
250
- }
251
- }
252
- // Recursively process nested messages
253
- if (content.messages) {
254
- processMessages(content.messages);
255
- }
256
- }
257
- });
258
- });
259
- };
260
- processMessages(state.messages);
261
- if (isInitialState.current) {
262
- isInitialState.current = false;
263
- }
264
- }, [state, controller]);
265
- const abort = () => {
266
- humanInputRef.current.forEach(({ reject }) => {
267
- reject(new Error("Tool execution aborted"));
268
- });
269
- humanInputRef.current.clear();
270
- acRef.current.abort();
271
- acRef.current = new AbortController();
272
- // Return a promise that resolves when all executing tools have settled
273
- if (executingCountRef.current === 0) {
274
- return Promise.resolve();
275
- }
276
- return new Promise((resolve) => {
277
- settledResolversRef.current.push(resolve);
278
- });
279
- };
280
- return {
281
- reset: () => {
282
- isInitialState.current = true;
283
- void abort().finally(() => {
284
- toolCallIdAliasesRef.current.clear();
285
- ignoredResultToolCallIdsRef.current.clear();
286
- rewriteCounterRef.current = 0;
287
- });
288
- },
289
- abort,
290
- resume: (toolCallId, payload) => {
291
- const handlers = humanInputRef.current.get(toolCallId);
292
- if (handlers) {
293
- humanInputRef.current.delete(toolCallId);
294
- setToolStatuses((prev) => ({
295
- ...prev,
296
- [toolCallId]: { type: "executing" },
297
- }));
298
- handlers.resolve(payload);
299
- }
300
- else {
301
- throw new Error(`Tool call ${toolCallId} is not waiting for human input`);
302
- }
303
- },
304
- };
305
- }
1
+ export { useToolInvocations, } from "@assistant-ui/core/react";
306
2
  //# sourceMappingURL=useToolInvocations.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useToolInvocations.js","sourceRoot":"","sources":["../../../../src/legacy-runtime/runtime-cores/assistant-transport/useToolInvocations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useToolInvocations.js","sourceRoot":"","sources":["../../../../src/legacy-runtime/runtime-cores/assistant-transport/useToolInvocations.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,GAEnB,MAAM,0BAA0B,CAAC"}
@@ -1,17 +1,2 @@
1
- import type { ThreadMessage } from "@assistant-ui/core";
2
- import { ThreadState } from "../../runtime/index.js";
3
- import { useExternalMessageConverter } from "./external-message-converter.js";
4
- export declare const createMessageConverter: <T extends object>(callback: useExternalMessageConverter.Callback<T>) => {
5
- useThreadMessages: ({ messages, isRunning, joinStrategy, metadata, }: {
6
- messages: T[];
7
- isRunning: boolean;
8
- joinStrategy?: "concat-content" | "none" | undefined;
9
- metadata?: useExternalMessageConverter.Metadata;
10
- }) => ThreadMessage[];
11
- toThreadMessages: (messages: T[], isRunning?: boolean, metadata?: useExternalMessageConverter.Metadata) => ThreadMessage[];
12
- toOriginalMessages: (input: ThreadState | ThreadMessage | ThreadMessage["content"][number]) => unknown[];
13
- toOriginalMessage: (input: ThreadState | ThreadMessage | ThreadMessage["content"][number]) => {};
14
- useOriginalMessage: () => {};
15
- useOriginalMessages: () => unknown[];
16
- };
1
+ export { createMessageConverter } from "@assistant-ui/core/react";
17
2
  //# sourceMappingURL=createMessageConverter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createMessageConverter.d.ts","sourceRoot":"","sources":["../../../../src/legacy-runtime/runtime-cores/external-store/createMessageConverter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,+BAAsB;AAE5C,OAAO,EACL,2BAA2B,EAE5B,wCAAqC;AAGtC,eAAO,MAAM,sBAAsB,GAAI,CAAC,SAAS,MAAM,EACrD,UAAU,2BAA2B,CAAC,QAAQ,CAAC,CAAC,CAAC;0EAQ5C;QACD,QAAQ,EAAE,CAAC,EAAE,CAAC;QACd,SAAS,EAAE,OAAO,CAAC;QACnB,YAAY,CAAC,EAAE,gBAAgB,GAAG,MAAM,GAAG,SAAS,CAAC;QACrD,QAAQ,CAAC,EAAE,2BAA2B,CAAC,QAAQ,CAAC;KACjD;iCAUW,CAAC,EAAE,kCAEH,2BAA2B,CAAC,QAAQ;gCAKvC,WAAW,GAAG,aAAa,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;+BAO9D,WAAW,GAAG,aAAa,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;;;CA4B1E,CAAC"}
1
+ {"version":3,"file":"createMessageConverter.d.ts","sourceRoot":"","sources":["../../../../src/legacy-runtime/runtime-cores/external-store/createMessageConverter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC"}
@@ -1,50 +1,3 @@
1
1
  "use client";
2
- import { useAui, useAuiState } from "@assistant-ui/store";
3
- import { useExternalMessageConverter, convertExternalMessages, } from "./external-message-converter.js";
4
- import { getExternalStoreMessages } from "./getExternalStoreMessage.js";
5
- export const createMessageConverter = (callback) => {
6
- const result = {
7
- useThreadMessages: ({ messages, isRunning, joinStrategy, metadata, }) => {
8
- return useExternalMessageConverter({
9
- callback,
10
- messages,
11
- isRunning,
12
- joinStrategy,
13
- metadata,
14
- });
15
- },
16
- toThreadMessages: (messages, isRunning = false, metadata = {}) => {
17
- return convertExternalMessages(messages, callback, isRunning, metadata);
18
- },
19
- toOriginalMessages: (input) => {
20
- const messages = getExternalStoreMessages(input);
21
- if (messages.length === 0)
22
- throw new Error("No original messages found");
23
- return messages;
24
- },
25
- toOriginalMessage: (input) => {
26
- const messages = result.toOriginalMessages(input);
27
- return messages[0];
28
- },
29
- useOriginalMessage: () => {
30
- const messageMessages = result.useOriginalMessages();
31
- const first = messageMessages[0];
32
- return first;
33
- },
34
- useOriginalMessages: () => {
35
- const aui = useAui();
36
- const partMessages = useAuiState((s) => {
37
- if (aui.part.source)
38
- return getExternalStoreMessages(s.part);
39
- return undefined;
40
- });
41
- const messageMessages = useAuiState((s) => getExternalStoreMessages(s.message));
42
- const messages = partMessages ?? messageMessages;
43
- if (messages.length === 0)
44
- throw new Error("No original messages found");
45
- return messages;
46
- },
47
- };
48
- return result;
49
- };
2
+ export { createMessageConverter } from "@assistant-ui/core/react";
50
3
  //# sourceMappingURL=createMessageConverter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"createMessageConverter.js","sourceRoot":"","sources":["../../../../src/legacy-runtime/runtime-cores/external-store/createMessageConverter.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAGb,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EACL,2BAA2B,EAC3B,uBAAuB,GACxB,wCAAqC;AACtC,OAAO,EAAE,wBAAwB,EAAE,qCAAkC;AAErE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CACpC,QAAiD,EACjD,EAAE;IACF,MAAM,MAAM,GAAG;QACb,iBAAiB,EAAE,CAAC,EAClB,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,QAAQ,GAMT,EAAE,EAAE;YACH,OAAO,2BAA2B,CAAI;gBACpC,QAAQ;gBACR,QAAQ;gBACR,SAAS;gBACT,YAAY;gBACZ,QAAQ;aACT,CAAC,CAAC;QACL,CAAC;QACD,gBAAgB,EAAE,CAChB,QAAa,EACb,SAAS,GAAG,KAAK,EACjB,WAAiD,EAAE,EACnD,EAAE;YACF,OAAO,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC1E,CAAC;QACD,kBAAkB,EAAE,CAClB,KAAqE,EACrE,EAAE;YACF,MAAM,QAAQ,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;YACjD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;YACzE,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,iBAAiB,EAAE,CACjB,KAAqE,EACrE,EAAE;YACF,MAAM,QAAQ,GAAG,MAAM,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;YAClD,OAAO,QAAQ,CAAC,CAAC,CAAE,CAAC;QACtB,CAAC;QACD,kBAAkB,EAAE,GAAG,EAAE;YACvB,MAAM,eAAe,GAAG,MAAM,CAAC,mBAAmB,EAAE,CAAC;YACrD,MAAM,KAAK,GAAG,eAAe,CAAC,CAAC,CAAE,CAAC;YAClC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,mBAAmB,EAAE,GAAG,EAAE;YACxB,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC;YACrB,MAAM,YAAY,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE;gBACrC,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM;oBAAE,OAAO,wBAAwB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAC7D,OAAO,SAAS,CAAC;YACnB,CAAC,CAAC,CAAC;YAEH,MAAM,eAAe,GAAG,WAAW,CAAM,CAAC,CAAC,EAAE,EAAE,CAC7C,wBAAwB,CAAC,CAAC,CAAC,OAAO,CAAC,CACpC,CAAC;YAEF,MAAM,QAAQ,GAAG,YAAY,IAAI,eAAe,CAAC;YACjD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;YACzE,OAAO,QAAQ,CAAC;QAClB,CAAC;KACF,CAAC;IAEF,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC"}
1
+ {"version":3,"file":"createMessageConverter.js","sourceRoot":"","sources":["../../../../src/legacy-runtime/runtime-cores/external-store/createMessageConverter.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AACb,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC"}
@@ -1,34 +1,2 @@
1
- import { ThreadMessageLike } from "./ThreadMessageLike.js";
2
- import { ToolExecutionStatus } from "../assistant-transport/useToolInvocations.js";
3
- import { ReadonlyJSONValue } from "assistant-stream/utils";
4
- import type { MessageTiming, ThreadMessage } from "@assistant-ui/core";
5
- export declare namespace useExternalMessageConverter {
6
- type Message = (ThreadMessageLike & {
7
- readonly convertConfig?: {
8
- readonly joinStrategy?: "concat-content" | "none";
9
- };
10
- }) | {
11
- role: "tool";
12
- toolCallId: string;
13
- toolName?: string | undefined;
14
- result: any;
15
- artifact?: any;
16
- isError?: boolean;
17
- messages?: readonly ThreadMessage[];
18
- };
19
- type Metadata = {
20
- readonly toolStatuses?: Record<string, ToolExecutionStatus>;
21
- readonly error?: ReadonlyJSONValue;
22
- readonly messageTiming?: Record<string, MessageTiming>;
23
- };
24
- type Callback<T> = (message: T, metadata: Metadata) => Message | Message[];
25
- }
26
- export declare const convertExternalMessages: <T extends WeakKey>(messages: T[], callback: useExternalMessageConverter.Callback<T>, isRunning: boolean, metadata: useExternalMessageConverter.Metadata) => ThreadMessage[];
27
- export declare const useExternalMessageConverter: <T extends WeakKey>({ callback, messages, isRunning, joinStrategy, metadata, }: {
28
- callback: useExternalMessageConverter.Callback<T>;
29
- messages: T[];
30
- isRunning: boolean;
31
- joinStrategy?: "concat-content" | "none" | undefined;
32
- metadata?: useExternalMessageConverter.Metadata | undefined;
33
- }) => ThreadMessage[];
1
+ export { useExternalMessageConverter, convertExternalMessages, } from "@assistant-ui/core/react";
34
2
  //# sourceMappingURL=external-message-converter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"external-message-converter.d.ts","sourceRoot":"","sources":["../../../../src/legacy-runtime/runtime-cores/external-store/external-message-converter.ts"],"names":[],"mappings":"AASA,OAAO,EAAyB,iBAAiB,EAAE,+BAA4B;AAE/E,OAAO,EAAE,mBAAmB,EAAE,qDAAkD;AAChF,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,OAAO,KAAK,EACV,aAAa,EAEb,aAAa,EAEd,MAAM,oBAAoB,CAAC;AAE5B,yBAAiB,2BAA2B,CAAC;IAC3C,KAAY,OAAO,GACf,CAAC,iBAAiB,GAAG;QACnB,QAAQ,CAAC,aAAa,CAAC,EAAE;YACvB,QAAQ,CAAC,YAAY,CAAC,EAAE,gBAAgB,GAAG,MAAM,CAAC;SACnD,CAAC;KACH,CAAC,GACF;QACE,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QAC9B,MAAM,EAAE,GAAG,CAAC;QACZ,QAAQ,CAAC,EAAE,GAAG,CAAC;QACf,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,QAAQ,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;KACrC,CAAC;IAEN,KAAY,QAAQ,GAAG;QACrB,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;QAC5D,QAAQ,CAAC,KAAK,CAAC,EAAE,iBAAiB,CAAC;QACnC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;KACxD,CAAC;IAEF,KAAY,QAAQ,CAAC,CAAC,IAAI,CACxB,OAAO,EAAE,CAAC,EACV,QAAQ,EAAE,QAAQ,KACf,OAAO,GAAG,OAAO,EAAE,CAAC;CAC1B;AAyPD,eAAO,MAAM,uBAAuB,GAAI,CAAC,SAAS,OAAO,EACvD,UAAU,CAAC,EAAE,EACb,UAAU,2BAA2B,CAAC,QAAQ,CAAC,CAAC,CAAC,EACjD,WAAW,OAAO,EAClB,UAAU,2BAA2B,CAAC,QAAQ,oBA4C/C,CAAC;AAEF,eAAO,MAAM,2BAA2B,GAAI,CAAC,SAAS,OAAO,EAAE,4DAM5D;IACD,QAAQ,EAAE,2BAA2B,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAClD,QAAQ,EAAE,CAAC,EAAE,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,gBAAgB,GAAG,MAAM,GAAG,SAAS,CAAC;IACrD,QAAQ,CAAC,EAAE,2BAA2B,CAAC,QAAQ,GAAG,SAAS,CAAC;CAC7D,oBAkGA,CAAC"}
1
+ {"version":3,"file":"external-message-converter.d.ts","sourceRoot":"","sources":["../../../../src/legacy-runtime/runtime-cores/external-store/external-message-converter.ts"],"names":[],"mappings":"AACA,OAAO,EACL,2BAA2B,EAC3B,uBAAuB,GACxB,MAAM,0BAA0B,CAAC"}