@assistant-ui/react
Version:
React components for AI chat.
53 lines • 1.58 kB
JavaScript
// src/runtimes/local/LocalRuntimeCore.tsx
import { BaseAssistantRuntimeCore } from "../core/BaseAssistantRuntimeCore.mjs";
import { LocalThreadRuntimeCore } from "./LocalThreadRuntimeCore.mjs";
import { fromCoreMessages } from "../edge/converters/fromCoreMessage.mjs";
import { LocalThreadListRuntimeCore } from "./LocalThreadListRuntimeCore.mjs";
var getExportFromInitialMessages = (initialMessages) => {
const messages = fromCoreMessages(initialMessages);
return {
messages: messages.map((m, idx) => ({
parentId: messages[idx - 1]?.id ?? null,
message: m
}))
};
};
var LocalRuntimeCore = class extends BaseAssistantRuntimeCore {
threadList;
_options;
constructor(options, initialMessages) {
super();
this._options = options;
this.threadList = new LocalThreadListRuntimeCore((threadId, data) => {
const thread = new LocalThreadRuntimeCore(
this._proxyConfigProvider,
threadId,
this._options
);
thread.import(data);
return thread;
});
if (initialMessages) {
this.threadList.mainThread.import(
getExportFromInitialMessages(initialMessages)
);
}
}
setOptions(options) {
this._options = options;
this.threadList.mainThread.setOptions(options);
}
reset({
initialMessages
} = {}) {
this.threadList.switchToNewThread();
if (!initialMessages) return;
this.threadList.mainThread.import(
getExportFromInitialMessages(initialMessages)
);
}
};
export {
LocalRuntimeCore
};
//# sourceMappingURL=LocalRuntimeCore.mjs.map