@assistant-ui/react-ai-sdk 0.5.1 → 0.5.2
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/dist/index.d.mts +3 -40
- package/dist/index.d.ts +3 -40
- package/dist/index.js +72 -200
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +72 -198
- package/dist/index.mjs.map +1 -1
- package/package.json +3 -3
package/dist/index.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as _assistant_ui_react from '@assistant-ui/react';
|
|
2
|
-
import { AppendMessage,
|
|
2
|
+
import { AppendMessage, ThreadMessage, ReactThreadRuntime, Unsubscribe, AddToolResultOptions, ModelConfigProvider, INTERNAL } from '@assistant-ui/react';
|
|
3
3
|
import { ReactNode } from 'react';
|
|
4
4
|
import { useChat, useAssistant } from 'ai/react';
|
|
5
5
|
import { Message } from 'ai';
|
|
@@ -23,46 +23,9 @@ type VercelRSCAdapterBase<T> = {
|
|
|
23
23
|
};
|
|
24
24
|
type VercelRSCAdapter<T = VercelRSCMessage> = VercelRSCAdapterBase<T> & (T extends VercelRSCMessage ? object : RSCMessageConverter<T>);
|
|
25
25
|
|
|
26
|
-
declare
|
|
27
|
-
adapter: VercelRSCAdapter<T>;
|
|
28
|
-
private useAdapter;
|
|
29
|
-
readonly capabilities: Readonly<{
|
|
30
|
-
edit: false;
|
|
31
|
-
reload: false;
|
|
32
|
-
cancel: false;
|
|
33
|
-
copy: false;
|
|
34
|
-
}>;
|
|
35
|
-
private _subscriptions;
|
|
36
|
-
isRunning: boolean;
|
|
37
|
-
messages: ThreadMessage[];
|
|
38
|
-
constructor(adapter: VercelRSCAdapter<T>);
|
|
39
|
-
private withRunning;
|
|
40
|
-
getBranches(): readonly string[];
|
|
41
|
-
switchToBranch(): void;
|
|
42
|
-
append(message: AppendMessage): Promise<void>;
|
|
43
|
-
startRun(parentId: string | null): Promise<void>;
|
|
44
|
-
cancelRun(): void;
|
|
45
|
-
subscribe(callback: () => void): Unsubscribe;
|
|
46
|
-
onAdapterUpdated(): void;
|
|
47
|
-
private updateData;
|
|
48
|
-
unstable_synchronizer: () => null;
|
|
49
|
-
addToolResult(): void;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
declare const BaseAssistantRuntime$2: typeof INTERNAL.BaseAssistantRuntime;
|
|
53
|
-
declare class VercelRSCRuntime<T extends WeakKey = VercelRSCMessage> extends BaseAssistantRuntime$2<VercelRSCThreadRuntime<T>> {
|
|
54
|
-
private readonly _proxyConfigProvider;
|
|
55
|
-
constructor(adapter: VercelRSCAdapter<T>);
|
|
56
|
-
set adapter(adapter: VercelRSCAdapter<T>);
|
|
57
|
-
onAdapterUpdated(): void;
|
|
58
|
-
getModelConfig(): _assistant_ui_react.ModelConfig;
|
|
59
|
-
registerModelConfigProvider(provider: ModelConfigProvider): () => void;
|
|
60
|
-
switchToThread(): void;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
declare const useVercelRSCRuntime: <T extends WeakKey>(adapter: VercelRSCAdapter<T>) => VercelRSCRuntime<T>;
|
|
26
|
+
declare const useVercelRSCRuntime: <T extends WeakKey>(adapter: VercelRSCAdapter<T>) => _assistant_ui_react.ExternalStoreRuntime;
|
|
64
27
|
|
|
65
|
-
declare const getVercelRSCMessage:
|
|
28
|
+
declare const getVercelRSCMessage: (message: ThreadMessage) => unknown;
|
|
66
29
|
|
|
67
30
|
declare class VercelUseChatThreadRuntime implements ReactThreadRuntime {
|
|
68
31
|
vercel: ReturnType<typeof useChat>;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as _assistant_ui_react from '@assistant-ui/react';
|
|
2
|
-
import { AppendMessage,
|
|
2
|
+
import { AppendMessage, ThreadMessage, ReactThreadRuntime, Unsubscribe, AddToolResultOptions, ModelConfigProvider, INTERNAL } from '@assistant-ui/react';
|
|
3
3
|
import { ReactNode } from 'react';
|
|
4
4
|
import { useChat, useAssistant } from 'ai/react';
|
|
5
5
|
import { Message } from 'ai';
|
|
@@ -23,46 +23,9 @@ type VercelRSCAdapterBase<T> = {
|
|
|
23
23
|
};
|
|
24
24
|
type VercelRSCAdapter<T = VercelRSCMessage> = VercelRSCAdapterBase<T> & (T extends VercelRSCMessage ? object : RSCMessageConverter<T>);
|
|
25
25
|
|
|
26
|
-
declare
|
|
27
|
-
adapter: VercelRSCAdapter<T>;
|
|
28
|
-
private useAdapter;
|
|
29
|
-
readonly capabilities: Readonly<{
|
|
30
|
-
edit: false;
|
|
31
|
-
reload: false;
|
|
32
|
-
cancel: false;
|
|
33
|
-
copy: false;
|
|
34
|
-
}>;
|
|
35
|
-
private _subscriptions;
|
|
36
|
-
isRunning: boolean;
|
|
37
|
-
messages: ThreadMessage[];
|
|
38
|
-
constructor(adapter: VercelRSCAdapter<T>);
|
|
39
|
-
private withRunning;
|
|
40
|
-
getBranches(): readonly string[];
|
|
41
|
-
switchToBranch(): void;
|
|
42
|
-
append(message: AppendMessage): Promise<void>;
|
|
43
|
-
startRun(parentId: string | null): Promise<void>;
|
|
44
|
-
cancelRun(): void;
|
|
45
|
-
subscribe(callback: () => void): Unsubscribe;
|
|
46
|
-
onAdapterUpdated(): void;
|
|
47
|
-
private updateData;
|
|
48
|
-
unstable_synchronizer: () => null;
|
|
49
|
-
addToolResult(): void;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
declare const BaseAssistantRuntime$2: typeof INTERNAL.BaseAssistantRuntime;
|
|
53
|
-
declare class VercelRSCRuntime<T extends WeakKey = VercelRSCMessage> extends BaseAssistantRuntime$2<VercelRSCThreadRuntime<T>> {
|
|
54
|
-
private readonly _proxyConfigProvider;
|
|
55
|
-
constructor(adapter: VercelRSCAdapter<T>);
|
|
56
|
-
set adapter(adapter: VercelRSCAdapter<T>);
|
|
57
|
-
onAdapterUpdated(): void;
|
|
58
|
-
getModelConfig(): _assistant_ui_react.ModelConfig;
|
|
59
|
-
registerModelConfigProvider(provider: ModelConfigProvider): () => void;
|
|
60
|
-
switchToThread(): void;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
declare const useVercelRSCRuntime: <T extends WeakKey>(adapter: VercelRSCAdapter<T>) => VercelRSCRuntime<T>;
|
|
26
|
+
declare const useVercelRSCRuntime: <T extends WeakKey>(adapter: VercelRSCAdapter<T>) => _assistant_ui_react.ExternalStoreRuntime;
|
|
64
27
|
|
|
65
|
-
declare const getVercelRSCMessage:
|
|
28
|
+
declare const getVercelRSCMessage: (message: ThreadMessage) => unknown;
|
|
66
29
|
|
|
67
30
|
declare class VercelUseChatThreadRuntime implements ReactThreadRuntime {
|
|
68
31
|
vercel: ReturnType<typeof useChat>;
|
package/dist/index.js
CHANGED
|
@@ -29,39 +29,7 @@ __export(src_exports, {
|
|
|
29
29
|
module.exports = __toCommonJS(src_exports);
|
|
30
30
|
|
|
31
31
|
// src/rsc/useVercelRSCRuntime.tsx
|
|
32
|
-
var
|
|
33
|
-
|
|
34
|
-
// src/rsc/VercelRSCRuntime.tsx
|
|
35
|
-
var import_react3 = require("@assistant-ui/react");
|
|
36
|
-
|
|
37
|
-
// src/rsc/VercelRSCThreadRuntime.tsx
|
|
38
|
-
var import_react2 = require("@assistant-ui/react");
|
|
39
|
-
var import_zustand = require("zustand");
|
|
40
|
-
|
|
41
|
-
// src/rsc/useVercelRSCSync.tsx
|
|
42
|
-
var import_react = require("react");
|
|
43
|
-
|
|
44
|
-
// src/utils/ThreadMessageConverter.ts
|
|
45
|
-
var ThreadMessageConverter = class {
|
|
46
|
-
cache = /* @__PURE__ */ new WeakMap();
|
|
47
|
-
convertMessages(messages, converter, keyMapper = (key) => key) {
|
|
48
|
-
return messages.map((m) => {
|
|
49
|
-
const key = keyMapper(m);
|
|
50
|
-
const cached = this.cache.get(key);
|
|
51
|
-
const newMessage = converter(m, cached);
|
|
52
|
-
this.cache.set(key, newMessage);
|
|
53
|
-
return newMessage;
|
|
54
|
-
});
|
|
55
|
-
}
|
|
56
|
-
};
|
|
57
|
-
|
|
58
|
-
// src/rsc/getVercelRSCMessage.tsx
|
|
59
|
-
var symbolInnerRSCMessage = Symbol("innerVercelRSCMessage");
|
|
60
|
-
var getVercelRSCMessage = (message) => {
|
|
61
|
-
return message[symbolInnerRSCMessage];
|
|
62
|
-
};
|
|
63
|
-
|
|
64
|
-
// src/rsc/useVercelRSCSync.tsx
|
|
32
|
+
var import_react = require("@assistant-ui/react");
|
|
65
33
|
var vercelToThreadMessage = (converter, rawMessage) => {
|
|
66
34
|
const message = converter(rawMessage);
|
|
67
35
|
return {
|
|
@@ -69,152 +37,40 @@ var vercelToThreadMessage = (converter, rawMessage) => {
|
|
|
69
37
|
role: message.role,
|
|
70
38
|
content: [{ type: "ui", display: message.display }],
|
|
71
39
|
createdAt: message.createdAt ?? /* @__PURE__ */ new Date(),
|
|
72
|
-
...{ status: { type: "complete", reason: "unknown" } }
|
|
73
|
-
[symbolInnerRSCMessage]: rawMessage
|
|
40
|
+
...{ status: { type: "complete", reason: "unknown" } }
|
|
74
41
|
};
|
|
75
42
|
};
|
|
76
|
-
var
|
|
77
|
-
const
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
updateData(converter.convertMessages(adapter.messages, convertCallback));
|
|
87
|
-
}, [updateData, converter, convertCallback, adapter.messages]);
|
|
88
|
-
};
|
|
89
|
-
|
|
90
|
-
// src/rsc/VercelRSCThreadRuntime.tsx
|
|
91
|
-
var { ProxyConfigProvider } = import_react2.INTERNAL;
|
|
92
|
-
var EMPTY_BRANCHES = Object.freeze([]);
|
|
93
|
-
var CAPABILITIES = Object.freeze({
|
|
94
|
-
edit: false,
|
|
95
|
-
reload: false,
|
|
96
|
-
cancel: false,
|
|
97
|
-
copy: false
|
|
98
|
-
});
|
|
99
|
-
var VercelRSCThreadRuntime = class {
|
|
100
|
-
constructor(adapter) {
|
|
101
|
-
this.adapter = adapter;
|
|
102
|
-
this.useAdapter = (0, import_zustand.create)(() => ({
|
|
103
|
-
adapter
|
|
104
|
-
}));
|
|
105
|
-
}
|
|
106
|
-
useAdapter;
|
|
107
|
-
capabilities = CAPABILITIES;
|
|
108
|
-
_subscriptions = /* @__PURE__ */ new Set();
|
|
109
|
-
isRunning = false;
|
|
110
|
-
messages = [];
|
|
111
|
-
withRunning = (callback) => {
|
|
112
|
-
this.isRunning = true;
|
|
113
|
-
return callback.finally(() => {
|
|
114
|
-
this.isRunning = false;
|
|
115
|
-
});
|
|
116
|
-
};
|
|
117
|
-
getBranches() {
|
|
118
|
-
return EMPTY_BRANCHES;
|
|
119
|
-
}
|
|
120
|
-
switchToBranch() {
|
|
121
|
-
throw new Error(
|
|
122
|
-
"Branch switching is not supported by VercelRSCAssistantProvider."
|
|
123
|
-
);
|
|
124
|
-
}
|
|
125
|
-
async append(message) {
|
|
126
|
-
if (message.role !== "user")
|
|
127
|
-
throw new Error(
|
|
128
|
-
"Only appending user messages are supported in VercelRSCRuntime. This is likely an internal bug in assistant-ui."
|
|
129
|
-
);
|
|
130
|
-
if (message.parentId !== (this.messages.at(-1)?.id ?? null)) {
|
|
131
|
-
if (!this.adapter.edit)
|
|
132
|
-
throw new Error(
|
|
133
|
-
"Message editing is not enabled, please provide an edit callback to VercelRSCAssistantProvider."
|
|
134
|
-
);
|
|
135
|
-
await this.withRunning(this.adapter.edit(message));
|
|
136
|
-
} else {
|
|
137
|
-
await this.withRunning(this.adapter.append(message));
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
async startRun(parentId) {
|
|
141
|
-
if (!this.adapter.reload)
|
|
142
|
-
throw new Error(
|
|
143
|
-
"Message reloading is not enabled, please provide a reload callback to VercelRSCAssistantProvider."
|
|
144
|
-
);
|
|
145
|
-
await this.withRunning(this.adapter.reload(parentId));
|
|
146
|
-
}
|
|
147
|
-
cancelRun() {
|
|
148
|
-
throw new Error("VercelRSCRuntime does not support cancelling runs.");
|
|
149
|
-
}
|
|
150
|
-
subscribe(callback) {
|
|
151
|
-
this._subscriptions.add(callback);
|
|
152
|
-
return () => this._subscriptions.delete(callback);
|
|
153
|
-
}
|
|
154
|
-
onAdapterUpdated() {
|
|
155
|
-
if (this.useAdapter.getState().adapter !== this.adapter) {
|
|
156
|
-
this.useAdapter.setState({ adapter: this.adapter });
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
|
-
updateData = (messages) => {
|
|
160
|
-
this.messages = messages;
|
|
161
|
-
for (const callback of this._subscriptions) callback();
|
|
162
|
-
};
|
|
163
|
-
unstable_synchronizer = () => {
|
|
164
|
-
const { adapter } = this.useAdapter();
|
|
165
|
-
useVercelRSCSync(adapter, this.updateData);
|
|
166
|
-
return null;
|
|
43
|
+
var useVercelRSCRuntime = (adapter) => {
|
|
44
|
+
const eAdapter = {
|
|
45
|
+
messages: adapter.messages,
|
|
46
|
+
onNew: adapter.append,
|
|
47
|
+
onEdit: adapter.edit,
|
|
48
|
+
onReload: adapter.reload,
|
|
49
|
+
convertMessage: (m) => vercelToThreadMessage(
|
|
50
|
+
adapter.convertMessage ?? ((m2) => m2),
|
|
51
|
+
m
|
|
52
|
+
)
|
|
167
53
|
};
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
}
|
|
171
|
-
};
|
|
172
|
-
|
|
173
|
-
// src/rsc/VercelRSCRuntime.tsx
|
|
174
|
-
var { BaseAssistantRuntime } = import_react3.INTERNAL;
|
|
175
|
-
var VercelRSCRuntime = class extends BaseAssistantRuntime {
|
|
176
|
-
_proxyConfigProvider = new ProxyConfigProvider();
|
|
177
|
-
constructor(adapter) {
|
|
178
|
-
super(new VercelRSCThreadRuntime(adapter));
|
|
179
|
-
}
|
|
180
|
-
set adapter(adapter) {
|
|
181
|
-
this.thread.adapter = adapter;
|
|
182
|
-
}
|
|
183
|
-
onAdapterUpdated() {
|
|
184
|
-
return this.thread.onAdapterUpdated();
|
|
185
|
-
}
|
|
186
|
-
getModelConfig() {
|
|
187
|
-
return this._proxyConfigProvider.getModelConfig();
|
|
188
|
-
}
|
|
189
|
-
registerModelConfigProvider(provider) {
|
|
190
|
-
return this._proxyConfigProvider.registerModelConfigProvider(provider);
|
|
191
|
-
}
|
|
192
|
-
switchToThread() {
|
|
193
|
-
throw new Error("VercelRSCRuntime does not support switching threads");
|
|
194
|
-
}
|
|
54
|
+
const runtime = (0, import_react.useExternalStoreRuntime)(eAdapter);
|
|
55
|
+
return runtime;
|
|
195
56
|
};
|
|
196
57
|
|
|
197
|
-
// src/rsc/
|
|
198
|
-
var
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
});
|
|
203
|
-
(0, import_react4.useEffect)(() => {
|
|
204
|
-
runtime.onAdapterUpdated();
|
|
205
|
-
});
|
|
206
|
-
return runtime;
|
|
58
|
+
// src/rsc/getVercelRSCMessage.tsx
|
|
59
|
+
var import_react2 = require("@assistant-ui/react");
|
|
60
|
+
var symbolInnerRSCMessage = Symbol("innerVercelRSCMessage");
|
|
61
|
+
var getVercelRSCMessage = (message) => {
|
|
62
|
+
return (0, import_react2.getExternalStoreMessage)(message);
|
|
207
63
|
};
|
|
208
64
|
|
|
209
65
|
// src/ui/use-chat/useVercelUseChatRuntime.tsx
|
|
210
|
-
var
|
|
66
|
+
var import_react8 = require("react");
|
|
211
67
|
|
|
212
68
|
// src/ui/use-chat/VercelUseChatRuntime.tsx
|
|
213
|
-
var
|
|
69
|
+
var import_react7 = require("@assistant-ui/react");
|
|
214
70
|
|
|
215
71
|
// src/ui/use-chat/VercelUseChatThreadRuntime.tsx
|
|
216
|
-
var
|
|
217
|
-
var
|
|
72
|
+
var import_react6 = require("@assistant-ui/react");
|
|
73
|
+
var import_zustand = require("zustand");
|
|
218
74
|
|
|
219
75
|
// src/ui/getVercelAIMessage.tsx
|
|
220
76
|
var symbolInnerAIMessage = Symbol("innerVercelAIUIMessage");
|
|
@@ -237,11 +93,11 @@ var sliceMessagesUntil = (messages, messageId) => {
|
|
|
237
93
|
};
|
|
238
94
|
|
|
239
95
|
// src/ui/utils/useVercelAIComposerSync.tsx
|
|
240
|
-
var
|
|
241
|
-
var
|
|
96
|
+
var import_react3 = require("@assistant-ui/react");
|
|
97
|
+
var import_react4 = require("react");
|
|
242
98
|
var useVercelAIComposerSync = (vercel) => {
|
|
243
|
-
const { useComposer } = (0,
|
|
244
|
-
(0,
|
|
99
|
+
const { useComposer } = (0, import_react3.useThreadContext)();
|
|
100
|
+
(0, import_react4.useEffect)(() => {
|
|
245
101
|
useComposer.setState({
|
|
246
102
|
value: vercel.input,
|
|
247
103
|
setValue: vercel.setInput
|
|
@@ -250,7 +106,23 @@ var useVercelAIComposerSync = (vercel) => {
|
|
|
250
106
|
};
|
|
251
107
|
|
|
252
108
|
// src/ui/utils/useVercelAIThreadSync.tsx
|
|
253
|
-
var
|
|
109
|
+
var import_react5 = require("react");
|
|
110
|
+
|
|
111
|
+
// src/utils/ThreadMessageConverter.ts
|
|
112
|
+
var ThreadMessageConverter = class {
|
|
113
|
+
cache = /* @__PURE__ */ new WeakMap();
|
|
114
|
+
convertMessages(messages, converter, keyMapper = (key) => key) {
|
|
115
|
+
return messages.map((m) => {
|
|
116
|
+
const key = keyMapper(m);
|
|
117
|
+
const cached = this.cache.get(key);
|
|
118
|
+
const newMessage = converter(m, cached);
|
|
119
|
+
this.cache.set(key, newMessage);
|
|
120
|
+
return newMessage;
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
};
|
|
124
|
+
|
|
125
|
+
// src/ui/utils/useVercelAIThreadSync.tsx
|
|
254
126
|
var getIsRunning = (vercel) => {
|
|
255
127
|
if ("isLoading" in vercel) return vercel.isLoading;
|
|
256
128
|
return vercel.status === "in_progress";
|
|
@@ -352,8 +224,8 @@ var shallowArrayEqual = (a, b) => {
|
|
|
352
224
|
};
|
|
353
225
|
var useVercelAIThreadSync = (vercel, updateData) => {
|
|
354
226
|
const isRunning = getIsRunning(vercel);
|
|
355
|
-
const converter = (0,
|
|
356
|
-
(0,
|
|
227
|
+
const converter = (0, import_react5.useMemo)(() => new ThreadMessageConverter(), []);
|
|
228
|
+
(0, import_react5.useEffect)(() => {
|
|
357
229
|
const lastMessageId = vercel.messages.at(-1)?.id;
|
|
358
230
|
const convertCallback = (messages2, cache) => {
|
|
359
231
|
const status = lastMessageId === messages2[0].id && isRunning ? {
|
|
@@ -376,11 +248,11 @@ var useVercelAIThreadSync = (vercel, updateData) => {
|
|
|
376
248
|
};
|
|
377
249
|
|
|
378
250
|
// src/ui/use-chat/VercelUseChatThreadRuntime.tsx
|
|
379
|
-
var { MessageRepository } =
|
|
251
|
+
var { MessageRepository } = import_react6.INTERNAL;
|
|
380
252
|
var hasUpcomingMessage = (isRunning, messages) => {
|
|
381
253
|
return isRunning && messages[messages.length - 1]?.role !== "assistant";
|
|
382
254
|
};
|
|
383
|
-
var
|
|
255
|
+
var CAPABILITIES = Object.freeze({
|
|
384
256
|
edit: true,
|
|
385
257
|
reload: true,
|
|
386
258
|
cancel: true,
|
|
@@ -389,7 +261,7 @@ var CAPABILITIES2 = Object.freeze({
|
|
|
389
261
|
var VercelUseChatThreadRuntime = class {
|
|
390
262
|
constructor(vercel) {
|
|
391
263
|
this.vercel = vercel;
|
|
392
|
-
this.useVercel = (0,
|
|
264
|
+
this.useVercel = (0, import_zustand.create)(() => ({
|
|
393
265
|
vercel
|
|
394
266
|
}));
|
|
395
267
|
}
|
|
@@ -397,7 +269,7 @@ var VercelUseChatThreadRuntime = class {
|
|
|
397
269
|
repository = new MessageRepository();
|
|
398
270
|
assistantOptimisticId = null;
|
|
399
271
|
useVercel;
|
|
400
|
-
capabilities =
|
|
272
|
+
capabilities = CAPABILITIES;
|
|
401
273
|
messages = [];
|
|
402
274
|
isRunning = false;
|
|
403
275
|
getBranches(messageId) {
|
|
@@ -477,7 +349,7 @@ var VercelUseChatThreadRuntime = class {
|
|
|
477
349
|
vm.at(-1)?.id ?? null,
|
|
478
350
|
{
|
|
479
351
|
role: "assistant",
|
|
480
|
-
content: [
|
|
352
|
+
content: []
|
|
481
353
|
}
|
|
482
354
|
);
|
|
483
355
|
}
|
|
@@ -500,9 +372,9 @@ var VercelUseChatThreadRuntime = class {
|
|
|
500
372
|
};
|
|
501
373
|
|
|
502
374
|
// src/ui/use-chat/VercelUseChatRuntime.tsx
|
|
503
|
-
var { ProxyConfigProvider
|
|
504
|
-
var VercelUseChatRuntime = class extends
|
|
505
|
-
_proxyConfigProvider = new
|
|
375
|
+
var { ProxyConfigProvider, BaseAssistantRuntime } = import_react7.INTERNAL;
|
|
376
|
+
var VercelUseChatRuntime = class extends BaseAssistantRuntime {
|
|
377
|
+
_proxyConfigProvider = new ProxyConfigProvider();
|
|
506
378
|
constructor(vercel) {
|
|
507
379
|
super(new VercelUseChatThreadRuntime(vercel));
|
|
508
380
|
}
|
|
@@ -534,26 +406,26 @@ var VercelUseChatRuntime = class extends BaseAssistantRuntime2 {
|
|
|
534
406
|
|
|
535
407
|
// src/ui/use-chat/useVercelUseChatRuntime.tsx
|
|
536
408
|
var useVercelUseChatRuntime = (chatHelpers) => {
|
|
537
|
-
const [runtime] = (0,
|
|
538
|
-
(0,
|
|
409
|
+
const [runtime] = (0, import_react8.useState)(() => new VercelUseChatRuntime(chatHelpers));
|
|
410
|
+
(0, import_react8.useInsertionEffect)(() => {
|
|
539
411
|
runtime.vercel = chatHelpers;
|
|
540
412
|
});
|
|
541
|
-
(0,
|
|
413
|
+
(0, import_react8.useEffect)(() => {
|
|
542
414
|
runtime.onVercelUpdated();
|
|
543
415
|
});
|
|
544
416
|
return runtime;
|
|
545
417
|
};
|
|
546
418
|
|
|
547
419
|
// src/ui/use-assistant/useVercelUseAssistantRuntime.tsx
|
|
548
|
-
var
|
|
420
|
+
var import_react10 = require("react");
|
|
549
421
|
|
|
550
422
|
// src/ui/use-assistant/VercelUseAssistantRuntime.tsx
|
|
551
|
-
var
|
|
423
|
+
var import_react9 = require("@assistant-ui/react");
|
|
552
424
|
|
|
553
425
|
// src/ui/use-assistant/VercelUseAssistantThreadRuntime.tsx
|
|
554
|
-
var
|
|
555
|
-
var
|
|
556
|
-
var
|
|
426
|
+
var import_zustand2 = require("zustand");
|
|
427
|
+
var EMPTY_BRANCHES = Object.freeze([]);
|
|
428
|
+
var CAPABILITIES2 = Object.freeze({
|
|
557
429
|
edit: false,
|
|
558
430
|
reload: false,
|
|
559
431
|
cancel: false,
|
|
@@ -562,17 +434,17 @@ var CAPABILITIES3 = Object.freeze({
|
|
|
562
434
|
var VercelUseAssistantThreadRuntime = class {
|
|
563
435
|
constructor(vercel) {
|
|
564
436
|
this.vercel = vercel;
|
|
565
|
-
this.useVercel = (0,
|
|
437
|
+
this.useVercel = (0, import_zustand2.create)(() => ({
|
|
566
438
|
vercel
|
|
567
439
|
}));
|
|
568
440
|
}
|
|
569
441
|
_subscriptions = /* @__PURE__ */ new Set();
|
|
570
|
-
capabilities =
|
|
442
|
+
capabilities = CAPABILITIES2;
|
|
571
443
|
useVercel;
|
|
572
444
|
messages = [];
|
|
573
445
|
isRunning = false;
|
|
574
446
|
getBranches() {
|
|
575
|
-
return
|
|
447
|
+
return EMPTY_BRANCHES;
|
|
576
448
|
}
|
|
577
449
|
switchToBranch() {
|
|
578
450
|
throw new Error(
|
|
@@ -621,7 +493,7 @@ var VercelUseAssistantThreadRuntime = class {
|
|
|
621
493
|
createdAt: /* @__PURE__ */ new Date(),
|
|
622
494
|
status: { type: "running" },
|
|
623
495
|
role: "assistant",
|
|
624
|
-
content: [
|
|
496
|
+
content: []
|
|
625
497
|
});
|
|
626
498
|
}
|
|
627
499
|
this.messages = vm;
|
|
@@ -642,12 +514,12 @@ var VercelUseAssistantThreadRuntime = class {
|
|
|
642
514
|
};
|
|
643
515
|
|
|
644
516
|
// src/ui/use-assistant/VercelUseAssistantRuntime.tsx
|
|
645
|
-
var { ProxyConfigProvider:
|
|
517
|
+
var { ProxyConfigProvider: ProxyConfigProvider2, BaseAssistantRuntime: BaseAssistantRuntime2 } = import_react9.INTERNAL;
|
|
646
518
|
var hasUpcomingMessage2 = (isRunning, messages) => {
|
|
647
519
|
return isRunning && messages[messages.length - 1]?.role !== "assistant";
|
|
648
520
|
};
|
|
649
|
-
var VercelUseAssistantRuntime = class extends
|
|
650
|
-
_proxyConfigProvider = new
|
|
521
|
+
var VercelUseAssistantRuntime = class extends BaseAssistantRuntime2 {
|
|
522
|
+
_proxyConfigProvider = new ProxyConfigProvider2();
|
|
651
523
|
constructor(vercel) {
|
|
652
524
|
super(new VercelUseAssistantThreadRuntime(vercel));
|
|
653
525
|
}
|
|
@@ -677,13 +549,13 @@ var VercelUseAssistantRuntime = class extends BaseAssistantRuntime3 {
|
|
|
677
549
|
|
|
678
550
|
// src/ui/use-assistant/useVercelUseAssistantRuntime.tsx
|
|
679
551
|
var useVercelUseAssistantRuntime = (assistantHelpers) => {
|
|
680
|
-
const [runtime] = (0,
|
|
552
|
+
const [runtime] = (0, import_react10.useState)(
|
|
681
553
|
() => new VercelUseAssistantRuntime(assistantHelpers)
|
|
682
554
|
);
|
|
683
|
-
(0,
|
|
555
|
+
(0, import_react10.useInsertionEffect)(() => {
|
|
684
556
|
runtime.vercel = assistantHelpers;
|
|
685
557
|
});
|
|
686
|
-
(0,
|
|
558
|
+
(0, import_react10.useEffect)(() => {
|
|
687
559
|
runtime.onVercelUpdated();
|
|
688
560
|
});
|
|
689
561
|
return runtime;
|