@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.
Files changed (93) hide show
  1. package/dist/runtimes/core/BaseThreadRuntimeCore.d.ts +1 -1
  2. package/dist/runtimes/core/BaseThreadRuntimeCore.d.ts.map +1 -1
  3. package/dist/runtimes/edge/converters/fromCoreMessage.d.ts.map +1 -1
  4. package/dist/runtimes/edge/converters/fromCoreMessage.js +6 -1
  5. package/dist/runtimes/edge/converters/fromCoreMessage.js.map +1 -1
  6. package/dist/runtimes/edge/converters/fromCoreMessage.mjs +6 -1
  7. package/dist/runtimes/edge/converters/fromCoreMessage.mjs.map +1 -1
  8. package/dist/runtimes/edge/createEdgeRuntimeAPI.d.ts +1 -1
  9. package/dist/runtimes/edge/createEdgeRuntimeAPI.d.ts.map +1 -1
  10. package/dist/runtimes/edge/createEdgeRuntimeAPI.js.map +1 -1
  11. package/dist/runtimes/edge/createEdgeRuntimeAPI.mjs.map +1 -1
  12. package/dist/runtimes/edge/streams/assistantDecoderStream.d.ts.map +1 -1
  13. package/dist/runtimes/edge/streams/assistantDecoderStream.js +6 -1
  14. package/dist/runtimes/edge/streams/assistantDecoderStream.js.map +1 -1
  15. package/dist/runtimes/edge/streams/assistantDecoderStream.mjs +6 -1
  16. package/dist/runtimes/edge/streams/assistantDecoderStream.mjs.map +1 -1
  17. package/dist/runtimes/edge/streams/assistantEncoderStream.d.ts.map +1 -1
  18. package/dist/runtimes/edge/streams/assistantEncoderStream.js +7 -0
  19. package/dist/runtimes/edge/streams/assistantEncoderStream.js.map +1 -1
  20. package/dist/runtimes/edge/streams/assistantEncoderStream.mjs +7 -0
  21. package/dist/runtimes/edge/streams/assistantEncoderStream.mjs.map +1 -1
  22. package/dist/runtimes/edge/streams/runResultStream.d.ts.map +1 -1
  23. package/dist/runtimes/edge/streams/runResultStream.js +17 -0
  24. package/dist/runtimes/edge/streams/runResultStream.js.map +1 -1
  25. package/dist/runtimes/edge/streams/runResultStream.mjs +17 -0
  26. package/dist/runtimes/edge/streams/runResultStream.mjs.map +1 -1
  27. package/dist/runtimes/edge/streams/toolResultStream.d.ts +3 -0
  28. package/dist/runtimes/edge/streams/toolResultStream.d.ts.map +1 -1
  29. package/dist/runtimes/edge/streams/toolResultStream.js +1 -0
  30. package/dist/runtimes/edge/streams/toolResultStream.js.map +1 -1
  31. package/dist/runtimes/edge/streams/toolResultStream.mjs +1 -0
  32. package/dist/runtimes/edge/streams/toolResultStream.mjs.map +1 -1
  33. package/dist/runtimes/external-store/ExternalStoreAdapter.d.ts +1 -1
  34. package/dist/runtimes/external-store/ExternalStoreAdapter.d.ts.map +1 -1
  35. package/dist/runtimes/external-store/ExternalStoreAdapter.js.map +1 -1
  36. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.d.ts.map +1 -1
  37. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.js +1 -3
  38. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.js.map +1 -1
  39. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.mjs +1 -3
  40. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.mjs.map +1 -1
  41. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.d.ts +2 -2
  42. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.d.ts.map +1 -1
  43. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.js.map +1 -1
  44. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.mjs.map +1 -1
  45. package/dist/runtimes/external-store/ThreadMessageConverter.d.ts +1 -1
  46. package/dist/runtimes/external-store/ThreadMessageConverter.d.ts.map +1 -1
  47. package/dist/runtimes/external-store/ThreadMessageConverter.js.map +1 -1
  48. package/dist/runtimes/external-store/ThreadMessageConverter.mjs.map +1 -1
  49. package/dist/runtimes/external-store/ThreadMessageLike.d.ts +2 -1
  50. package/dist/runtimes/external-store/ThreadMessageLike.d.ts.map +1 -1
  51. package/dist/runtimes/external-store/ThreadMessageLike.js +1 -0
  52. package/dist/runtimes/external-store/ThreadMessageLike.js.map +1 -1
  53. package/dist/runtimes/external-store/ThreadMessageLike.mjs +1 -0
  54. package/dist/runtimes/external-store/ThreadMessageLike.mjs.map +1 -1
  55. package/dist/runtimes/external-store/external-message-converter.d.ts.map +1 -1
  56. package/dist/runtimes/external-store/external-message-converter.js +6 -0
  57. package/dist/runtimes/external-store/external-message-converter.js.map +1 -1
  58. package/dist/runtimes/external-store/external-message-converter.mjs +6 -0
  59. package/dist/runtimes/external-store/external-message-converter.mjs.map +1 -1
  60. package/dist/runtimes/local/ChatModelAdapter.d.ts +17 -16
  61. package/dist/runtimes/local/ChatModelAdapter.d.ts.map +1 -1
  62. package/dist/runtimes/local/ChatModelAdapter.js.map +1 -1
  63. package/dist/runtimes/local/LocalThreadRuntimeCore.d.ts.map +1 -1
  64. package/dist/runtimes/local/LocalThreadRuntimeCore.js +10 -1
  65. package/dist/runtimes/local/LocalThreadRuntimeCore.js.map +1 -1
  66. package/dist/runtimes/local/LocalThreadRuntimeCore.mjs +10 -1
  67. package/dist/runtimes/local/LocalThreadRuntimeCore.mjs.map +1 -1
  68. package/dist/runtimes/utils/MessageRepository.d.ts +2 -1
  69. package/dist/runtimes/utils/MessageRepository.d.ts.map +1 -1
  70. package/dist/runtimes/utils/MessageRepository.js +25 -1
  71. package/dist/runtimes/utils/MessageRepository.js.map +1 -1
  72. package/dist/runtimes/utils/MessageRepository.mjs +25 -1
  73. package/dist/runtimes/utils/MessageRepository.mjs.map +1 -1
  74. package/dist/types/AssistantTypes.d.ts +2 -0
  75. package/dist/types/AssistantTypes.d.ts.map +1 -1
  76. package/dist/types/AssistantTypes.js.map +1 -1
  77. package/package.json +1 -1
  78. package/src/runtimes/edge/converters/fromCoreMessage.ts +6 -1
  79. package/src/runtimes/edge/createEdgeRuntimeAPI.ts +1 -1
  80. package/src/runtimes/edge/streams/assistantDecoderStream.ts +7 -1
  81. package/src/runtimes/edge/streams/assistantEncoderStream.ts +8 -0
  82. package/src/runtimes/edge/streams/runResultStream.ts +22 -0
  83. package/src/runtimes/edge/streams/toolResultStream.ts +5 -0
  84. package/src/runtimes/external-store/ExternalStoreAdapter.tsx +1 -1
  85. package/src/runtimes/external-store/ExternalStoreRuntimeCore.tsx +1 -3
  86. package/src/runtimes/external-store/ExternalStoreThreadRuntimeCore.tsx +5 -4
  87. package/src/runtimes/external-store/ThreadMessageConverter.ts +1 -1
  88. package/src/runtimes/external-store/ThreadMessageLike.tsx +3 -1
  89. package/src/runtimes/external-store/external-message-converter.tsx +6 -0
  90. package/src/runtimes/local/ChatModelAdapter.tsx +18 -17
  91. package/src/runtimes/local/LocalThreadRuntimeCore.tsx +14 -1
  92. package/src/runtimes/utils/MessageRepository.tsx +33 -1
  93. 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
- getMessages() {
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>;