@assistant-ui/react 0.7.55 → 0.7.57
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/runtimes/core/BaseThreadRuntimeCore.d.ts +1 -1
- package/dist/runtimes/core/BaseThreadRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/edge/converters/fromCoreMessage.d.ts.map +1 -1
- package/dist/runtimes/edge/converters/fromCoreMessage.js +6 -1
- package/dist/runtimes/edge/converters/fromCoreMessage.js.map +1 -1
- package/dist/runtimes/edge/converters/fromCoreMessage.mjs +6 -1
- package/dist/runtimes/edge/converters/fromCoreMessage.mjs.map +1 -1
- package/dist/runtimes/edge/createEdgeRuntimeAPI.d.ts +1 -1
- package/dist/runtimes/edge/createEdgeRuntimeAPI.d.ts.map +1 -1
- package/dist/runtimes/edge/createEdgeRuntimeAPI.js.map +1 -1
- package/dist/runtimes/edge/createEdgeRuntimeAPI.mjs.map +1 -1
- package/dist/runtimes/edge/streams/assistantDecoderStream.d.ts.map +1 -1
- package/dist/runtimes/edge/streams/assistantDecoderStream.js +6 -1
- package/dist/runtimes/edge/streams/assistantDecoderStream.js.map +1 -1
- package/dist/runtimes/edge/streams/assistantDecoderStream.mjs +6 -1
- package/dist/runtimes/edge/streams/assistantDecoderStream.mjs.map +1 -1
- package/dist/runtimes/edge/streams/assistantEncoderStream.d.ts.map +1 -1
- package/dist/runtimes/edge/streams/assistantEncoderStream.js +7 -0
- package/dist/runtimes/edge/streams/assistantEncoderStream.js.map +1 -1
- package/dist/runtimes/edge/streams/assistantEncoderStream.mjs +7 -0
- package/dist/runtimes/edge/streams/assistantEncoderStream.mjs.map +1 -1
- package/dist/runtimes/edge/streams/runResultStream.d.ts.map +1 -1
- package/dist/runtimes/edge/streams/runResultStream.js +17 -0
- package/dist/runtimes/edge/streams/runResultStream.js.map +1 -1
- package/dist/runtimes/edge/streams/runResultStream.mjs +17 -0
- package/dist/runtimes/edge/streams/runResultStream.mjs.map +1 -1
- package/dist/runtimes/edge/streams/toolResultStream.d.ts +3 -0
- package/dist/runtimes/edge/streams/toolResultStream.d.ts.map +1 -1
- package/dist/runtimes/edge/streams/toolResultStream.js +1 -0
- package/dist/runtimes/edge/streams/toolResultStream.js.map +1 -1
- package/dist/runtimes/edge/streams/toolResultStream.mjs +1 -0
- package/dist/runtimes/edge/streams/toolResultStream.mjs.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreAdapter.d.ts +1 -1
- package/dist/runtimes/external-store/ExternalStoreAdapter.d.ts.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreAdapter.js.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreRuntimeCore.js +1 -3
- package/dist/runtimes/external-store/ExternalStoreRuntimeCore.js.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreRuntimeCore.mjs +1 -3
- package/dist/runtimes/external-store/ExternalStoreRuntimeCore.mjs.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.d.ts +2 -2
- package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.js.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.mjs.map +1 -1
- package/dist/runtimes/external-store/ThreadMessageConverter.d.ts +1 -1
- package/dist/runtimes/external-store/ThreadMessageConverter.d.ts.map +1 -1
- package/dist/runtimes/external-store/ThreadMessageConverter.js.map +1 -1
- package/dist/runtimes/external-store/ThreadMessageConverter.mjs.map +1 -1
- package/dist/runtimes/external-store/ThreadMessageLike.d.ts +2 -1
- package/dist/runtimes/external-store/ThreadMessageLike.d.ts.map +1 -1
- package/dist/runtimes/external-store/ThreadMessageLike.js +1 -0
- package/dist/runtimes/external-store/ThreadMessageLike.js.map +1 -1
- package/dist/runtimes/external-store/ThreadMessageLike.mjs +1 -0
- package/dist/runtimes/external-store/ThreadMessageLike.mjs.map +1 -1
- package/dist/runtimes/external-store/external-message-converter.d.ts.map +1 -1
- package/dist/runtimes/external-store/external-message-converter.js +6 -0
- package/dist/runtimes/external-store/external-message-converter.js.map +1 -1
- package/dist/runtimes/external-store/external-message-converter.mjs +6 -0
- package/dist/runtimes/external-store/external-message-converter.mjs.map +1 -1
- package/dist/runtimes/local/ChatModelAdapter.d.ts +17 -16
- package/dist/runtimes/local/ChatModelAdapter.d.ts.map +1 -1
- package/dist/runtimes/local/ChatModelAdapter.js.map +1 -1
- package/dist/runtimes/local/LocalThreadRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/local/LocalThreadRuntimeCore.js +10 -1
- package/dist/runtimes/local/LocalThreadRuntimeCore.js.map +1 -1
- package/dist/runtimes/local/LocalThreadRuntimeCore.mjs +10 -1
- package/dist/runtimes/local/LocalThreadRuntimeCore.mjs.map +1 -1
- package/dist/runtimes/utils/MessageRepository.d.ts +2 -1
- package/dist/runtimes/utils/MessageRepository.d.ts.map +1 -1
- package/dist/runtimes/utils/MessageRepository.js +25 -1
- package/dist/runtimes/utils/MessageRepository.js.map +1 -1
- package/dist/runtimes/utils/MessageRepository.mjs +25 -1
- package/dist/runtimes/utils/MessageRepository.mjs.map +1 -1
- package/dist/types/AssistantTypes.d.ts +2 -0
- package/dist/types/AssistantTypes.d.ts.map +1 -1
- package/dist/types/AssistantTypes.js.map +1 -1
- package/package.json +1 -1
- package/src/runtimes/edge/converters/fromCoreMessage.ts +6 -1
- package/src/runtimes/edge/createEdgeRuntimeAPI.ts +1 -1
- package/src/runtimes/edge/streams/assistantDecoderStream.ts +7 -1
- package/src/runtimes/edge/streams/assistantEncoderStream.ts +8 -0
- package/src/runtimes/edge/streams/runResultStream.ts +22 -0
- package/src/runtimes/edge/streams/toolResultStream.ts +5 -0
- package/src/runtimes/external-store/ExternalStoreAdapter.tsx +1 -1
- package/src/runtimes/external-store/ExternalStoreRuntimeCore.tsx +1 -3
- package/src/runtimes/external-store/ExternalStoreThreadRuntimeCore.tsx +5 -4
- package/src/runtimes/external-store/ThreadMessageConverter.ts +1 -1
- package/src/runtimes/external-store/ThreadMessageLike.tsx +3 -1
- package/src/runtimes/external-store/external-message-converter.tsx +6 -0
- package/src/runtimes/local/ChatModelAdapter.tsx +18 -17
- package/src/runtimes/local/LocalThreadRuntimeCore.tsx +14 -1
- package/src/runtimes/utils/MessageRepository.tsx +33 -1
- package/src/types/AssistantTypes.ts +2 -0
@@ -34,6 +34,23 @@ const findHead = (
|
|
34
34
|
return null;
|
35
35
|
};
|
36
36
|
|
37
|
+
class CachedValue<T> {
|
38
|
+
private _value: T | null = null;
|
39
|
+
|
40
|
+
constructor(private func: () => T) {}
|
41
|
+
|
42
|
+
get value() {
|
43
|
+
if (this._value === null) {
|
44
|
+
this._value = this.func();
|
45
|
+
}
|
46
|
+
return this._value;
|
47
|
+
}
|
48
|
+
|
49
|
+
dirty() {
|
50
|
+
this._value = null;
|
51
|
+
}
|
52
|
+
}
|
53
|
+
|
37
54
|
export class MessageRepository {
|
38
55
|
private messages = new Map<string, RepositoryMessage>(); // message_id -> item
|
39
56
|
private head: RepositoryMessage | null = null;
|
@@ -101,12 +118,17 @@ export class MessageRepository {
|
|
101
118
|
child.prev = newParent;
|
102
119
|
}
|
103
120
|
}
|
104
|
-
|
121
|
+
|
122
|
+
private _messages = new CachedValue<readonly ThreadMessage[]>(() => {
|
105
123
|
const messages = new Array<ThreadMessage>(this.head?.level ?? 0);
|
106
124
|
for (let current = this.head; current; current = current.prev) {
|
107
125
|
messages[current.level] = current.current;
|
108
126
|
}
|
109
127
|
return messages;
|
128
|
+
});
|
129
|
+
|
130
|
+
getMessages() {
|
131
|
+
return this._messages.value;
|
110
132
|
}
|
111
133
|
|
112
134
|
addOrUpdateMessage(parentId: string | null, message: ThreadMessage) {
|
@@ -121,6 +143,7 @@ export class MessageRepository {
|
|
121
143
|
if (existingItem) {
|
122
144
|
existingItem.current = message;
|
123
145
|
this.performOp(prev, existingItem, "relink");
|
146
|
+
this._messages.dirty();
|
124
147
|
return;
|
125
148
|
}
|
126
149
|
|
@@ -139,6 +162,8 @@ export class MessageRepository {
|
|
139
162
|
if (this.head === prev) {
|
140
163
|
this.head = newItem;
|
141
164
|
}
|
165
|
+
|
166
|
+
this._messages.dirty();
|
142
167
|
}
|
143
168
|
|
144
169
|
getMessage(messageId: string) {
|
@@ -205,6 +230,8 @@ export class MessageRepository {
|
|
205
230
|
if (this.head === message) {
|
206
231
|
this.head = findHead(replacement ?? this.root);
|
207
232
|
}
|
233
|
+
|
234
|
+
this._messages.dirty();
|
208
235
|
}
|
209
236
|
|
210
237
|
getBranches(messageId: string) {
|
@@ -229,11 +256,14 @@ export class MessageRepository {
|
|
229
256
|
prevOrRoot.next = message;
|
230
257
|
|
231
258
|
this.head = findHead(message);
|
259
|
+
|
260
|
+
this._messages.dirty();
|
232
261
|
}
|
233
262
|
|
234
263
|
resetHead(messageId: string | null) {
|
235
264
|
if (messageId === null) {
|
236
265
|
this.head = null;
|
266
|
+
this._messages.dirty();
|
237
267
|
return;
|
238
268
|
}
|
239
269
|
|
@@ -253,6 +283,8 @@ export class MessageRepository {
|
|
253
283
|
current.prev.next = current;
|
254
284
|
}
|
255
285
|
}
|
286
|
+
|
287
|
+
this._messages.dirty();
|
256
288
|
}
|
257
289
|
|
258
290
|
export(): ExportedMessageRepository {
|
@@ -185,6 +185,7 @@ export type ThreadAssistantMessage = MessageCommonProps & {
|
|
185
185
|
readonly content: readonly ThreadAssistantContentPart[];
|
186
186
|
readonly status: MessageStatus;
|
187
187
|
readonly metadata: {
|
188
|
+
readonly unstable_annotations: readonly unknown[];
|
188
189
|
readonly unstable_data: readonly unknown[];
|
189
190
|
readonly steps: readonly ThreadStep[];
|
190
191
|
readonly custom: Record<string, unknown>;
|
@@ -210,6 +211,7 @@ export type AppendMessage = CoreMessage & {
|
|
210
211
|
type BaseThreadMessage = {
|
211
212
|
readonly status?: ThreadAssistantMessage["status"];
|
212
213
|
readonly metadata: {
|
214
|
+
readonly unstable_annotations?: readonly unknown[];
|
213
215
|
readonly unstable_data?: readonly unknown[];
|
214
216
|
readonly steps?: readonly ThreadStep[];
|
215
217
|
readonly custom: Record<string, unknown>;
|