@assistant-ui/react
Version:
React components for AI chat.
128 lines (127 loc) • 4.37 kB
JavaScript
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
// src/api/ThreadListRuntime.ts
var ThreadListRuntime_exports = {};
__export(ThreadListRuntime_exports, {
ThreadListRuntimeImpl: () => ThreadListRuntimeImpl
});
module.exports = __toCommonJS(ThreadListRuntime_exports);
var import_LazyMemoizeSubject = require("./subscribable/LazyMemoizeSubject.cjs");
var import_ThreadListItemRuntime = require("./ThreadListItemRuntime.cjs");
var import_SKIP_UPDATE = require("./subscribable/SKIP_UPDATE.cjs");
var getThreadListState = (threadList) => {
return {
threads: threadList.threads,
archivedThreads: threadList.archivedThreads
};
};
var THREAD_MANAGER_PATH = {
ref: "ThreadList"
};
var ThreadListRuntimeImpl = class {
constructor(_core) {
this._core = _core;
const stateBinding = new import_LazyMemoizeSubject.LazyMemoizeSubject({
path: THREAD_MANAGER_PATH,
getState: () => getThreadListState(_core),
subscribe: (callback) => _core.subscribe(callback)
});
this._getState = stateBinding.getState.bind(stateBinding);
}
get path() {
return THREAD_MANAGER_PATH;
}
_getState;
getState() {
return this._getState();
}
rename(threadId, newTitle) {
return this._core.rename(threadId, newTitle);
}
archive(threadId) {
return this._core.archive(threadId);
}
unarchive(threadId) {
return this._core.unarchive(threadId);
}
delete(threadId) {
return this._core.delete(threadId);
}
subscribe(callback) {
return this._core.subscribe(callback);
}
getThreadListItemByIndex(idx) {
return new import_ThreadListItemRuntime.ThreadListItemRuntimeImpl(
new import_LazyMemoizeSubject.LazyMemoizeSubject({
path: {
ref: this.path.ref + `${this.path.ref}.threadItems[${idx}]`,
threadSelector: { type: "index", index: idx }
},
getState: () => {
const threads = this._core.threads;
const thread = threads[idx];
if (!thread) return import_SKIP_UPDATE.SKIP_UPDATE;
return thread;
},
subscribe: (callback) => this._core.subscribe(callback)
}),
this._core
);
}
getThreadListArchivedItemByIndex(idx) {
return new import_ThreadListItemRuntime.ThreadListItemRuntimeImpl(
new import_LazyMemoizeSubject.LazyMemoizeSubject({
path: {
ref: this.path.ref + `${this.path.ref}.archivedThreadItems[${idx}]`,
threadSelector: { type: "archiveIndex", index: idx }
},
getState: () => {
const threads = this._core.archivedThreads;
const thread = threads[idx];
if (!thread) return import_SKIP_UPDATE.SKIP_UPDATE;
return thread;
},
subscribe: (callback) => this._core.subscribe(callback)
}),
this._core
);
}
getThreadListItemById(threadId) {
return new import_ThreadListItemRuntime.ThreadListItemRuntimeImpl(
new import_LazyMemoizeSubject.LazyMemoizeSubject({
path: {
ref: this.path.ref + `${this.path.ref}.threadItems[threadId=${threadId}]`,
threadSelector: { type: "threadId", threadId }
},
getState: () => {
const threadItem = this._core.getThreadMetadataById(threadId);
if (!threadItem) return import_SKIP_UPDATE.SKIP_UPDATE;
return threadItem;
},
subscribe: (callback) => this._core.subscribe(callback)
}),
this._core
);
}
};
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
ThreadListRuntimeImpl
});
//# sourceMappingURL=ThreadListRuntime.js.map
;