This commit is contained in:
2025-11-22 01:17:25 +01:00
parent ab3faad6af
commit 7bee56b960
5 changed files with 31 additions and 38 deletions
@@ -1,6 +1,4 @@
import { useEffect, useState } from 'react';
import { createAssetView } from '../../asset_manager';
interface DocumentLike {
id?: string | number;
current_version?: unknown;
@@ -47,8 +45,7 @@ const usePreviewMetadata = (
const resolveAsset = (type: string) => getDocumentAsset?.(doc, type) ?? null;
let asset = resolveAsset('preview') || resolveAsset('thumbnail');
let view = createAssetView(asset);
let metadata = view.getPrimaryMetadata();
let metadata = (asset?.metadata as { width?: number; height?: number } | null) || null;
const hasDimensions = (meta: { width?: number | string; height?: number | string } | null) =>
Number.isFinite(Number(meta?.width)) &&
@@ -58,11 +55,10 @@ const usePreviewMetadata = (
if (!hasDimensions(metadata) && ensureAssetUrl && docId && asset?.id) {
try {
const ensured = await ensureAssetUrl(doc.id, asset, { force: true });
const ensured = await ensureAssetUrl(doc.id, asset);
if (ensured) {
asset = ensured;
view = createAssetView(asset);
metadata = view.getPrimaryMetadata();
metadata = (asset?.metadata as { width?: number; height?: number } | null) || null;
}
} catch (error) {
console.warn('[desk] ensureDocumentSize metadata fetch failed', error);