From 517543f13a4f15c938efc83f9a08d5e714bc36f1 Mon Sep 17 00:00:00 2001 From: Eric Bailey Date: Thu, 2 Jan 2025 16:15:53 -0600 Subject: [PATCH] Improve MediaPreview types --- src/components/MediaPreview.tsx | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/src/components/MediaPreview.tsx b/src/components/MediaPreview.tsx index 9a05b54dff..0d5ef05fc8 100644 --- a/src/components/MediaPreview.tsx +++ b/src/components/MediaPreview.tsx @@ -6,6 +6,7 @@ import { AppBskyEmbedImages, AppBskyEmbedRecordWithMedia, AppBskyEmbedVideo, + AppBskyFeedDefs, } from '@atproto/api' import {Trans} from '@lingui/macro' @@ -22,17 +23,12 @@ export function Embed({ embed, style, }: { - embed?: - | AppBskyEmbedImages.View - | AppBskyEmbedRecordWithMedia.View - | AppBskyEmbedExternal.View - | AppBskyEmbedVideo.View - | {[k: string]: unknown} + embed?: AppBskyFeedDefs.PostView['embed'] style?: StyleProp }) { let media = AppBskyEmbedRecordWithMedia.isView(embed) ? embed.media : embed - if (AppBskyEmbedImages.isView(media)) { + if (AppBskyEmbedImages.isValidView(media)) { return ( {media.images.map(image => ( @@ -44,7 +40,7 @@ export function Embed({ ))} ) - } else if (AppBskyEmbedExternal.isView(media) && media.external.thumb) { + } else if (AppBskyEmbedExternal.isValidView(media) && media.external.thumb) { let url: URL | undefined try { url = new URL(media.external.uri) @@ -62,7 +58,7 @@ export function Embed({ ) } } - } else if (AppBskyEmbedVideo.isView(media)) { + } else if (AppBskyEmbedVideo.isValidView(media)) { return (