@plteam/chat-ui
Version:
CUI Kit is a free and open-source library for creating AI assistant chat interfaces, built with React, Material UI, and TypeScript
23 lines (22 loc) • 921 B
JavaScript
import AttachmentModel from "./AttachmentModel";
import { ObservableReactValue } from "../utils/observers/ObservableReactValue";
import attachmentsStore from "./AttachmentsStore";
class MessageAttachmentsModel {
deletedIds = new ObservableReactValue([]);
itemsAll = new ObservableReactValue([]);
init = (attachments) => {
const buffer = [];
for (const attachment of attachments) {
const cacheItem = attachmentsStore.items.find((i) => i.id === attachment.id);
if (cacheItem) {
buffer.push(cacheItem);
attachmentsStore.items = attachmentsStore.items.filter((a) => a.id !== attachment.id);
continue;
}
const model = new AttachmentModel(attachment);
buffer.push(model);
}
this.itemsAll.value = buffer;
};
}
export default MessageAttachmentsModel;