diff --git a/app/javascript/flavours/glitch/api_types/statuses.ts b/app/javascript/flavours/glitch/api_types/statuses.ts index 4ecb34bfe1..36468ce3bf 100644 --- a/app/javascript/flavours/glitch/api_types/statuses.ts +++ b/app/javascript/flavours/glitch/api_types/statuses.ts @@ -51,7 +51,7 @@ export interface ApiPreviewCardJSON { html: string; width: number; height: number; - image: string; + image: string | null; image_description: string; embed_url: string; blurhash: string; diff --git a/app/javascript/flavours/glitch/features/status/components/card.tsx b/app/javascript/flavours/glitch/features/status/components/card.tsx index 42ad34fe41..ef1b05064f 100644 --- a/app/javascript/flavours/glitch/features/status/components/card.tsx +++ b/app/javascript/flavours/glitch/features/status/components/card.tsx @@ -103,9 +103,9 @@ const Card: React.FC = ({ card, sensitive }) => { : card.get('provider_name'); const interactive = card.get('type') === 'video'; const language = card.get('language') || ''; + const hasImage = (card.get('image')?.length ?? 0) > 0; const largeImage = - (card.get('image').length > 0 && card.get('width') > card.get('height')) || - interactive; + (hasImage && card.get('width') > card.get('height')) || interactive; const showAuthor = !!card.getIn(['authors', 0, 'accountId']); const description = ( @@ -171,7 +171,7 @@ const Card: React.FC = ({ card, sensitive }) => { const thumbnailDescription = card.get('image_description'); const thumbnail = (