@assistant-ui/react 0.7.36 → 0.7.38

Sign up to get free protection for your applications and to get access to all the features.
Files changed (58) hide show
  1. package/dist/api/MessageRuntime.d.ts.map +1 -1
  2. package/dist/api/MessageRuntime.js +1 -0
  3. package/dist/api/MessageRuntime.js.map +1 -1
  4. package/dist/api/MessageRuntime.mjs +1 -0
  5. package/dist/api/MessageRuntime.mjs.map +1 -1
  6. package/dist/api/ThreadRuntime.d.ts +15 -4
  7. package/dist/api/ThreadRuntime.d.ts.map +1 -1
  8. package/dist/api/ThreadRuntime.js +11 -1
  9. package/dist/api/ThreadRuntime.js.map +1 -1
  10. package/dist/api/ThreadRuntime.mjs +11 -1
  11. package/dist/api/ThreadRuntime.mjs.map +1 -1
  12. package/dist/api/index.d.ts +1 -1
  13. package/dist/api/index.d.ts.map +1 -1
  14. package/dist/api/index.js.map +1 -1
  15. package/dist/internal.d.ts +1 -0
  16. package/dist/internal.d.ts.map +1 -1
  17. package/dist/internal.js +3 -0
  18. package/dist/internal.js.map +1 -1
  19. package/dist/internal.mjs +2 -0
  20. package/dist/internal.mjs.map +1 -1
  21. package/dist/runtimes/composer/BaseComposerRuntimeCore.d.ts +1 -1
  22. package/dist/runtimes/composer/BaseComposerRuntimeCore.d.ts.map +1 -1
  23. package/dist/runtimes/composer/BaseComposerRuntimeCore.js.map +1 -1
  24. package/dist/runtimes/composer/BaseComposerRuntimeCore.mjs.map +1 -1
  25. package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.d.ts +2 -1
  26. package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.d.ts.map +1 -1
  27. package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.js +4 -1
  28. package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.js.map +1 -1
  29. package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.mjs +4 -1
  30. package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.mjs.map +1 -1
  31. package/dist/runtimes/composer/DefaultThreadComposerRuntimeCore.d.ts +1 -1
  32. package/dist/runtimes/composer/DefaultThreadComposerRuntimeCore.d.ts.map +1 -1
  33. package/dist/runtimes/composer/DefaultThreadComposerRuntimeCore.js +2 -1
  34. package/dist/runtimes/composer/DefaultThreadComposerRuntimeCore.js.map +1 -1
  35. package/dist/runtimes/composer/DefaultThreadComposerRuntimeCore.mjs +2 -1
  36. package/dist/runtimes/composer/DefaultThreadComposerRuntimeCore.mjs.map +1 -1
  37. package/dist/runtimes/core/ThreadRuntimeCore.d.ts +2 -1
  38. package/dist/runtimes/core/ThreadRuntimeCore.d.ts.map +1 -1
  39. package/dist/runtimes/core/ThreadRuntimeCore.js.map +1 -1
  40. package/dist/runtimes/local/LocalThreadRuntimeCore.d.ts.map +1 -1
  41. package/dist/runtimes/local/LocalThreadRuntimeCore.js +1 -0
  42. package/dist/runtimes/local/LocalThreadRuntimeCore.js.map +1 -1
  43. package/dist/runtimes/local/LocalThreadRuntimeCore.mjs +1 -0
  44. package/dist/runtimes/local/LocalThreadRuntimeCore.mjs.map +1 -1
  45. package/dist/types/AssistantTypes.d.ts +3 -2
  46. package/dist/types/AssistantTypes.d.ts.map +1 -1
  47. package/dist/types/AssistantTypes.js.map +1 -1
  48. package/package.json +1 -1
  49. package/src/api/MessageRuntime.ts +1 -0
  50. package/src/api/ThreadRuntime.ts +26 -3
  51. package/src/api/index.ts +6 -1
  52. package/src/internal.ts +1 -0
  53. package/src/runtimes/composer/BaseComposerRuntimeCore.tsx +4 -2
  54. package/src/runtimes/composer/DefaultEditComposerRuntimeCore.tsx +7 -2
  55. package/src/runtimes/composer/DefaultThreadComposerRuntimeCore.tsx +4 -1
  56. package/src/runtimes/core/ThreadRuntimeCore.tsx +2 -1
  57. package/src/runtimes/local/LocalThreadRuntimeCore.tsx +1 -0
  58. package/src/types/AssistantTypes.ts +5 -2
@@ -36,11 +36,27 @@ import {
36
36
  ThreadRuntimePath,
37
37
  } from "./RuntimePathTypes";
38
38
  import { ThreadListItemState } from "./ThreadListItemRuntime";
39
+ import { RunConfig } from "../types/AssistantTypes";
40
+
41
+ export type CreateStartRunConfig = {
42
+ parentId: string | null;
43
+ sourceId?: string | null | undefined;
44
+ runConfig?: RunConfig | undefined;
45
+ };
46
+
47
+ const toStartRunConfig = (message: CreateStartRunConfig): StartRunConfig => {
48
+ return {
49
+ parentId: message.parentId ?? null,
50
+ sourceId: message.sourceId ?? null,
51
+ runConfig: message.runConfig ?? {},
52
+ };
53
+ };
39
54
 
40
55
  export type CreateAppendMessage =
41
56
  | string
42
57
  | {
43
58
  parentId?: string | null | undefined;
59
+ sourceId?: string | null | undefined;
44
60
  role?: AppendMessage["role"] | undefined;
45
61
  content: AppendMessage["content"];
46
62
  attachments?: AppendMessage["attachments"] | undefined;
@@ -54,6 +70,8 @@ const toAppendMessage = (
54
70
  if (typeof message === "string") {
55
71
  return {
56
72
  parentId: messages.at(-1)?.id ?? null,
73
+ sourceId: null,
74
+ runConfig: {},
57
75
  role: "user",
58
76
  content: [{ type: "text", text: message }],
59
77
  attachments: [],
@@ -67,6 +85,7 @@ const toAppendMessage = (
67
85
  return {
68
86
  ...message,
69
87
  parentId: message.parentId ?? messages.at(-1)?.id ?? null,
88
+ sourceId: message.sourceId ?? null,
70
89
  role: message.role ?? "user",
71
90
  attachments: message.attachments ?? [],
72
91
  } as AppendMessage;
@@ -193,7 +212,11 @@ export type ThreadRuntime = {
193
212
  * @deprecated pass an object with `parentId` instead. This will be removed in 0.8.0.
194
213
  */
195
214
  startRun(parentId: string | null): void;
196
- startRun(config: StartRunConfig): void;
215
+ /**
216
+ * Start a new run with the given configuration.
217
+ * @param config The configuration for starting the run
218
+ */
219
+ startRun(config: CreateStartRunConfig): void;
197
220
  subscribe(callback: () => void): Unsubscribe;
198
221
  cancelRun(): void;
199
222
  getModelConfig(): ModelConfig;
@@ -287,12 +310,12 @@ export class ThreadRuntimeImpl implements ThreadRuntime {
287
310
  return this._threadBinding.getState().getModelConfig();
288
311
  }
289
312
 
290
- public startRun(configOrParentId: string | null | StartRunConfig) {
313
+ public startRun(configOrParentId: string | null | CreateStartRunConfig) {
291
314
  const config =
292
315
  configOrParentId === null || typeof configOrParentId === "string"
293
316
  ? { parentId: configOrParentId }
294
317
  : configOrParentId;
295
- return this._threadBinding.getState().startRun(config);
318
+ return this._threadBinding.getState().startRun(toStartRunConfig(config));
296
319
  }
297
320
 
298
321
  public cancelRun() {
package/src/api/index.ts CHANGED
@@ -1,5 +1,10 @@
1
1
  export type { AssistantRuntime } from "./AssistantRuntime";
2
- export type { ThreadRuntime, ThreadState } from "./ThreadRuntime";
2
+ export type {
3
+ ThreadRuntime,
4
+ ThreadState,
5
+ CreateAppendMessage,
6
+ CreateStartRunConfig,
7
+ } from "./ThreadRuntime";
3
8
  export type { MessageRuntime, MessageState } from "./MessageRuntime";
4
9
  export type {
5
10
  ContentPartRuntime,
package/src/internal.ts CHANGED
@@ -14,5 +14,6 @@ export {
14
14
  } from "./api/ThreadRuntime";
15
15
  export { fromThreadMessageLike } from "./runtimes/external-store/ThreadMessageLike";
16
16
  export { getAutoStatus } from "./runtimes/external-store/auto-status";
17
+ export { EdgeRuntimeRequestOptionsSchema } from "./runtimes/edge/EdgeRuntimeRequestOptions";
17
18
 
18
19
  export * from "./utils/smooth";
@@ -133,7 +133,7 @@ export abstract class BaseComposerRuntimeCore
133
133
  )
134
134
  : [];
135
135
 
136
- const message: Omit<AppendMessage, "parentId"> = {
136
+ const message: Omit<AppendMessage, "parentId" | "sourceId"> = {
137
137
  role: this.role,
138
138
  content: this.text ? [{ type: "text", text: this.text }] : [],
139
139
  attachments,
@@ -149,7 +149,9 @@ export abstract class BaseComposerRuntimeCore
149
149
  this.handleCancel();
150
150
  }
151
151
 
152
- protected abstract handleSend(message: Omit<AppendMessage, "parentId">): void;
152
+ protected abstract handleSend(
153
+ message: Omit<AppendMessage, "parentId" | "sourceId">,
154
+ ): void;
153
155
  protected abstract handleCancel(): void;
154
156
 
155
157
  async addAttachment(file: File) {
@@ -16,6 +16,7 @@ export class DefaultEditComposerRuntimeCore extends BaseComposerRuntimeCore {
16
16
  private _nonTextParts;
17
17
  private _previousText;
18
18
  private _parentId;
19
+ private _sourceId;
19
20
  constructor(
20
21
  private runtime: Omit<ThreadRuntimeCore, "composer"> & {
21
22
  adapters?: { attachments?: AttachmentAdapter | undefined } | undefined;
@@ -25,6 +26,7 @@ export class DefaultEditComposerRuntimeCore extends BaseComposerRuntimeCore {
25
26
  ) {
26
27
  super();
27
28
  this._parentId = parentId;
29
+ this._sourceId = message.id;
28
30
  this._previousText = getThreadMessageText(message);
29
31
  this.setText(this._previousText);
30
32
 
@@ -36,13 +38,16 @@ export class DefaultEditComposerRuntimeCore extends BaseComposerRuntimeCore {
36
38
  );
37
39
  }
38
40
 
39
- public async handleSend(message: Omit<AppendMessage, "parentId">) {
41
+ public async handleSend(
42
+ message: Omit<AppendMessage, "parentId" | "sourceId">,
43
+ ) {
40
44
  const text = getThreadMessageText(message as AppendMessage);
41
45
  if (text !== this._previousText) {
42
46
  this.runtime.append({
43
- ...(message as AppendMessage),
47
+ ...message,
44
48
  content: [...message.content, ...this._nonTextParts] as any,
45
49
  parentId: this._parentId,
50
+ sourceId: this._sourceId,
46
51
  });
47
52
  }
48
53
 
@@ -39,10 +39,13 @@ export class DefaultThreadComposerRuntimeCore
39
39
  });
40
40
  }
41
41
 
42
- public async handleSend(message: Omit<AppendMessage, "parentId">) {
42
+ public async handleSend(
43
+ message: Omit<AppendMessage, "parentId" | "sourceId">,
44
+ ) {
43
45
  this.runtime.append({
44
46
  ...(message as AppendMessage),
45
47
  parentId: this.runtime.messages.at(-1)?.id ?? null,
48
+ sourceId: null,
46
49
  });
47
50
  }
48
51
 
@@ -51,7 +51,8 @@ export type ThreadRuntimeEventType =
51
51
 
52
52
  export type StartRunConfig = {
53
53
  parentId: string | null;
54
- runConfig?: RunConfig | undefined;
54
+ sourceId: string | null;
55
+ runConfig: RunConfig;
55
56
  };
56
57
 
57
58
  export type ThreadRuntimeCore = Readonly<{
@@ -97,6 +97,7 @@ export class LocalThreadRuntimeCore
97
97
  if (startRun) {
98
98
  await this.startRun({
99
99
  parentId: newMessage.id,
100
+ sourceId: message.sourceId,
100
101
  runConfig: message.runConfig ?? {},
101
102
  });
102
103
  } else {
@@ -198,10 +198,13 @@ export type RunConfig = {
198
198
 
199
199
  export type AppendMessage = CoreMessage & {
200
200
  parentId: string | null;
201
+
202
+ /** The ID of the message that was edited or undefined. */
203
+ sourceId: string | null;
204
+ runConfig: RunConfig | undefined;
205
+
201
206
  attachments: readonly CompleteAttachment[];
202
207
  startRun?: boolean | undefined;
203
- /** TODO: make required in 0.8.0 */
204
- runConfig?: RunConfig | undefined;
205
208
  };
206
209
 
207
210
  type BaseThreadMessage = {