From 6885fb2b41efdb29e386cf696ea7304baf3a87c8 Mon Sep 17 00:00:00 2001 From: Paul Frazee Date: Mon, 2 Jan 2023 20:56:35 -0600 Subject: Bump api@0.0.5 and use the type guard helpers --- src/view/com/util/PostEmbeds.tsx | 28 +++++++++++++--------------- 1 file changed, 13 insertions(+), 15 deletions(-) (limited to 'src/view/com/util/PostEmbeds.tsx') diff --git a/src/view/com/util/PostEmbeds.tsx b/src/view/com/util/PostEmbeds.tsx index df2de681c..611cedf55 100644 --- a/src/view/com/util/PostEmbeds.tsx +++ b/src/view/com/util/PostEmbeds.tsx @@ -1,5 +1,5 @@ import React from 'react' -import {ImageStyle, StyleSheet, StyleProp, View, ViewStyle} from 'react-native' +import {StyleSheet, StyleProp, View, ViewStyle} from 'react-native' import {AppBskyEmbedImages, AppBskyEmbedExternal} from '@atproto/api' import {Link} from '../util/Link' import {Text} from './text/Text' @@ -23,39 +23,38 @@ export function PostEmbeds({ }) { const pal = usePalette('default') const store = useStores() - if (embed?.$type === 'app.bsky.embed.images#presented') { - const imgEmbed = embed as AppBskyEmbedImages.Presented - if (imgEmbed.images.length > 0) { - const uris = imgEmbed.images.map(img => img.fullsize) + if (AppBskyEmbedImages.isPresented(embed)) { + if (embed.images.length > 0) { + const uris = embed.images.map(img => img.fullsize) const openLightbox = (index: number) => { store.shell.openLightbox(new ImagesLightbox(uris, index)) } - if (imgEmbed.images.length === 4) { + if (embed.images.length === 4) { return ( img.thumb)} + uris={embed.images.map(img => img.thumb)} onPress={openLightbox} /> ) - } else if (imgEmbed.images.length === 3) { + } else if (embed.images.length === 3) { return ( img.thumb)} + uris={embed.images.map(img => img.thumb)} onPress={openLightbox} /> ) - } else if (imgEmbed.images.length === 2) { + } else if (embed.images.length === 2) { return ( img.thumb)} + uris={embed.images.map(img => img.thumb)} onPress={openLightbox} /> @@ -64,7 +63,7 @@ export function PostEmbeds({ return ( openLightbox(0)} containerStyle={{borderRadius: 4}} /> @@ -73,9 +72,8 @@ export function PostEmbeds({ } } } - if (embed?.$type === 'app.bsky.embed.external#presented') { - const externalEmbed = embed as AppBskyEmbedExternal.Presented - const link = externalEmbed.external + if (AppBskyEmbedExternal.isPresented(embed)) { + const link = embed.external return (