import React from 'react' import {Image} from 'expo-image' import {Text} from '../text/Text' import {StyleSheet, View} from 'react-native' import {usePalette} from 'lib/hooks/usePalette' import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' import {AppBskyEmbedExternal} from '@atproto/api' import {toNiceDomain} from 'lib/strings/url-helpers' export const ExternalLinkEmbed = ({ link, imageChild, }: { link: AppBskyEmbedExternal.ViewExternal imageChild?: React.ReactNode }) => { const pal = usePalette('default') const {isMobile} = useWebMediaQueries() return ( {link.thumb ? ( {imageChild} ) : undefined} {toNiceDomain(link.uri)} {link.title || link.uri} {link.description ? ( {link.description} ) : undefined} ) } const styles = StyleSheet.create({ extImage: { width: '100%', height: 200, }, extUri: { marginTop: 2, }, extDescription: { marginTop: 4, }, })