UNPKG

@lobehub/chat

Version:

Lobe Chat - an open-source, high-performance chatbot framework that supports speech synthesis, multimodal, and extensible Function Call plugin system. Supports one-click free deployment of your private ChatGPT/LLM web application.

31 lines (24 loc) 940 B
import { UPLOAD_STATUS_SET } from '@/types/files/upload'; import { FilesStoreState } from '../../initialState'; const chatUploadFileList = (s: FilesStoreState) => s.chatUploadFileList; const isImageUploading = (s: FilesStoreState) => s.uploadingIds.length > 0; const chatRawFileList = (s: FilesStoreState) => s.chatUploadFileList.map((item) => item.file); const chatUploadFileListHasItem = (s: FilesStoreState) => s.chatUploadFileList.length > 0; const isUploadingFiles = (s: FilesStoreState) => s.chatUploadFileList.some( (file) => // is file status in uploading UPLOAD_STATUS_SET.has(file.status) || // or file has tasks but not finish embedding (file.tasks && !file.tasks?.finishEmbedding), ); export const filesSelectors = { chatUploadFileList, isImageUploading, }; export const fileChatSelectors = { chatRawFileList, chatUploadFileList, chatUploadFileListHasItem, isUploadingFiles, };