fix: handle viewer load errors
This commit is contained in:
@@ -175,21 +175,28 @@ export function MediaPanel(props: { selectedDayIso: string | null }) {
|
||||
setViewerError(null);
|
||||
setVideoFallback(null);
|
||||
|
||||
if (asset.media_type === "video") {
|
||||
const playback = await loadVideoPlaybackUrl(asset.id);
|
||||
const variantLabel =
|
||||
playback.variant.kind === "video_mp4"
|
||||
? "video_mp4"
|
||||
: playback.variant.kind;
|
||||
setViewer({ asset, url: playback.url, variant: variantLabel });
|
||||
void loadAdminLists();
|
||||
return;
|
||||
}
|
||||
try {
|
||||
if (asset.media_type === "video") {
|
||||
const playback = await loadVideoPlaybackUrl(asset.id);
|
||||
const variantLabel =
|
||||
playback.variant.kind === "video_mp4"
|
||||
? "video_mp4"
|
||||
: playback.variant.kind;
|
||||
setViewer({ asset, url: playback.url, variant: variantLabel });
|
||||
void loadAdminLists();
|
||||
return;
|
||||
}
|
||||
|
||||
const variant: "original" | "thumb_med" | "poster" = "original";
|
||||
const url = await loadSignedUrl(asset.id, variant);
|
||||
setViewer({ asset, url, variant });
|
||||
void loadAdminLists();
|
||||
const variant: "original" | "thumb_med" | "poster" = "original";
|
||||
const url = await loadSignedUrl(asset.id, variant);
|
||||
setViewer({ asset, url, variant });
|
||||
void loadAdminLists();
|
||||
} catch (err) {
|
||||
setViewer(null);
|
||||
setViewerError(
|
||||
err instanceof Error ? err.message : "viewer_open_failed",
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
async function loadAdminLists() {
|
||||
|
||||
Reference in New Issue
Block a user