Add alerts to embeds (#1138)

* Add alerts to embeds

* Add images to the mock data

* Fix types
This commit is contained in:
Paul Frazee 2023-08-08 15:54:36 -07:00 committed by GitHub
parent e51dbefd0a
commit bbe9861eef
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 80 additions and 15 deletions

View file

@ -5,6 +5,7 @@ import {
AppBskyFeedPost,
AppBskyEmbedImages,
AppBskyEmbedRecordWithMedia,
ModerationUI,
} from '@atproto/api'
import {AtUri} from '@atproto/api'
import {PostMeta} from '../PostMeta'
@ -13,14 +14,17 @@ import {Text} from '../text/Text'
import {usePalette} from 'lib/hooks/usePalette'
import {ComposerOptsQuote} from 'state/models/ui/shell'
import {PostEmbeds} from '.'
import {PostAlerts} from '../moderation/PostAlerts'
import {makeProfileLink} from 'lib/routes/links'
import {InfoCircleIcon} from 'lib/icons'
export function MaybeQuoteEmbed({
embed,
moderation,
style,
}: {
embed: AppBskyEmbedRecord.View
moderation: ModerationUI
style?: StyleProp<ViewStyle>
}) {
const pal = usePalette('default')
@ -39,6 +43,7 @@ export function MaybeQuoteEmbed({
text: embed.record.value.text,
embeds: embed.record.embeds,
}}
moderation={moderation}
style={style}
/>
)
@ -66,9 +71,11 @@ export function MaybeQuoteEmbed({
export function QuoteEmbed({
quote,
moderation,
style,
}: {
quote: ComposerOptsQuote
moderation?: ModerationUI
style?: StyleProp<ViewStyle>
}) {
const pal = usePalette('default')
@ -100,16 +107,19 @@ export function QuoteEmbed({
postHref={itemHref}
timestamp={quote.indexedAt}
/>
{moderation ? (
<PostAlerts moderation={moderation} style={styles.alert} />
) : null}
{!isEmpty ? (
<Text type="post-text" style={pal.text} numberOfLines={6}>
{quote.text}
</Text>
) : null}
{AppBskyEmbedImages.isView(imagesEmbed) && (
<PostEmbeds embed={imagesEmbed} />
<PostEmbeds embed={imagesEmbed} moderation={{}} />
)}
{AppBskyEmbedRecordWithMedia.isView(imagesEmbed) && (
<PostEmbeds embed={imagesEmbed.media} />
<PostEmbeds embed={imagesEmbed.media} moderation={{}} />
)}
</Link>
)
@ -140,4 +150,7 @@ const styles = StyleSheet.create({
paddingHorizontal: 14,
borderWidth: 1,
},
alert: {
marginBottom: 6,
},
})