From 9f3ba9905d6ed2faacfac05deb9ab344f4aadaaa Mon Sep 17 00:00:00 2001 From: Kha Nguyen Date: Wed, 16 Jul 2025 16:45:36 -0500 Subject: [PATCH 1/2] fix: regenerate video thumbnails when loading project --- apps/web/src/stores/media-store.ts | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/apps/web/src/stores/media-store.ts b/apps/web/src/stores/media-store.ts index 7d4851c2..8af523ef 100644 --- a/apps/web/src/stores/media-store.ts +++ b/apps/web/src/stores/media-store.ts @@ -213,7 +213,28 @@ export const useMediaStore = create((set, get) => ({ try { const mediaItems = await storageService.loadAllMediaItems(projectId); - set({ mediaItems }); + // Regenerate thumbnails for video items + const updatedMediaItems = await Promise.all( + mediaItems.map(async (item) => { + if (item.type === "video" && item.file) { + try { + const { thumbnailUrl, width, height } = await generateVideoThumbnail(item.file); + return { + ...item, + thumbnailUrl, + width: width || item.width, + height: height || item.height + }; + } catch (error) { + console.error(`Failed to regenerate thumbnail for video ${item.id}:`, error); + return item; + } + } + return item; + }) + ); + + set({ mediaItems: updatedMediaItems }); } catch (error) { console.error("Failed to load media items:", error); } finally { From 36df8f2afe7952d7c23e8534375a883b32159ed6 Mon Sep 17 00:00:00 2001 From: Kha Nguyen Date: Wed, 16 Jul 2025 16:55:35 -0500 Subject: [PATCH 2/2] chore: format --- apps/web/src/stores/media-store.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/web/src/stores/media-store.ts b/apps/web/src/stores/media-store.ts index 8af523ef..c4ee5f3e 100644 --- a/apps/web/src/stores/media-store.ts +++ b/apps/web/src/stores/media-store.ts @@ -213,6 +213,7 @@ export const useMediaStore = create((set, get) => ({ try { const mediaItems = await storageService.loadAllMediaItems(projectId); + // Regenerate thumbnails for video items const updatedMediaItems = await Promise.all( mediaItems.map(async (item) => {