파일, 카테고리, 디렉터리 정보를 불러올 때 특정 조건에서 네트워크 요청이 여러 번 발생할 수 있는 버그 수정

This commit is contained in:
static
2026-01-05 06:49:12 +09:00
parent f10a0a2da3
commit ae1d34fc6b
14 changed files with 467 additions and 501 deletions

View File

@@ -13,15 +13,15 @@ interface FileInfo {
contentType: string;
createdAt?: Date;
lastModifiedAt: Date;
categoryIds: number[];
categoryIds?: number[];
}
interface CategoryInfo {
id: number;
parentId: CategoryId;
name: string;
files: { id: number; isRecursive: boolean }[];
isFileRecursive: boolean;
files?: { id: number; isRecursive: boolean }[];
isFileRecursive?: boolean;
}
const filesystem = new Dexie("filesystem") as Dexie & {
@@ -55,7 +55,7 @@ export const getDirectoryInfo = async (id: number) => {
};
export const storeDirectoryInfo = async (directoryInfo: DirectoryInfo) => {
await filesystem.directory.put(directoryInfo);
await filesystem.directory.upsert(directoryInfo.id, { ...directoryInfo });
};
export const deleteDirectoryInfo = async (id: number) => {
@@ -89,7 +89,7 @@ export const bulkGetFileInfos = async (ids: number[]) => {
};
export const storeFileInfo = async (fileInfo: FileInfo) => {
await filesystem.file.put(fileInfo);
await filesystem.file.upsert(fileInfo.id, { ...fileInfo });
};
export const deleteFileInfo = async (id: number) => {
@@ -112,7 +112,7 @@ export const getCategoryInfo = async (id: number) => {
};
export const storeCategoryInfo = async (categoryInfo: CategoryInfo) => {
await filesystem.category.put(categoryInfo);
await filesystem.category.upsert(categoryInfo.id, { ...categoryInfo });
};
export const updateCategoryInfo = async (id: number, changes: { isFileRecursive?: boolean }) => {