파일 썸네일이 캐시되는 OPFS의 경로 변경

This commit is contained in:
static
2025-07-07 18:29:04 +09:00
parent d3de06a7f9
commit 40a87aa81f
10 changed files with 56 additions and 58 deletions

View File

@@ -2,7 +2,6 @@
import type { Writable } from "svelte/store";
import { ActionEntryButton } from "$lib/components/atoms";
import { DirectoryEntryLabel } from "$lib/components/molecules";
import { getFileThumbnail } from "$lib/modules/file";
import type { FileInfo } from "$lib/modules/filesystem";
import { formatDateTime } from "$lib/modules/util";
import { requestFileThumbnailDownload } from "./service";
@@ -36,10 +35,7 @@
$effect(() => {
if ($info?.dataKey) {
getFileThumbnail($info.id)
.then(
(thumbnailUrl) => thumbnailUrl || requestFileThumbnailDownload($info.id, $info.dataKey!),
)
requestFileThumbnailDownload($info.id, $info.dataKey)
.then((thumbnailUrl) => {
thumbnail = thumbnailUrl ?? undefined;
})

View File

@@ -5,8 +5,8 @@ import { generateDataKey, wrapDataKey, unwrapHmacSecret, encryptString } from "$
import {
storeFileCache,
deleteFileCache,
storeFileThumbnail,
deleteFileThumbnail,
storeFileThumbnailCache,
deleteFileThumbnailCache,
uploadFile,
} from "$lib/modules/file";
import type {
@@ -88,7 +88,7 @@ export const requestFileUpload = async (
storeFileCache(res.fileId, res.fileBuffer); // Intended
if (res.thumbnailBuffer) {
storeFileThumbnail(res.fileId, res.thumbnailBuffer); // Intended
storeFileThumbnailCache(res.fileId, res.thumbnailBuffer); // Intended
}
return true;
@@ -121,11 +121,11 @@ export const requestEntryDeletion = async (entry: SelectedEntry) => {
if (entry.type === "directory") {
const { deletedFiles }: DirectoryDeleteResponse = await res.json();
await Promise.all(
deletedFiles.flatMap((fileId) => [deleteFileCache(fileId), deleteFileThumbnail(fileId)]),
deletedFiles.flatMap((fileId) => [deleteFileCache(fileId), deleteFileThumbnailCache(fileId)]),
);
return true;
} else {
await Promise.all([deleteFileCache(entry.id), deleteFileThumbnail(entry.id)]);
await Promise.all([deleteFileCache(entry.id), deleteFileThumbnailCache(entry.id)]);
return true;
}
};