diff --git a/src/view/com/util/post-embeds/index.tsx b/src/view/com/util/post-embeds/index.tsx index 3fd55f5c21..eec17e6d0a 100644 --- a/src/view/com/util/post-embeds/index.tsx +++ b/src/view/com/util/post-embeds/index.tsx @@ -15,6 +15,8 @@ import { AppBskyEmbedRecordWithMedia, AppBskyFeedDefs, AppBskyGraphDefs, + moderateFeedGenerator, + moderateUserList, ModerationDecision, } from '@atproto/api' @@ -30,6 +32,7 @@ import {ListEmbed} from './ListEmbed' import {MaybeQuoteEmbed} from './QuoteEmbed' import hairlineWidth = StyleSheet.hairlineWidth import {useLargeAltBadgeEnabled} from '#/state/preferences/large-alt-badge' +import {useModerationOpts} from '#/state/preferences/moderation-opts' import {Embed as StarterPackCard} from '#/components/StarterPack/StarterPackCard' type Embed = @@ -55,6 +58,7 @@ export function PostEmbeds({ const pal = usePalette('default') const {openLightbox} = useLightboxControls() const largeAltBadge = useLargeAltBadgeEnabled() + const moderationOpts = useModerationOpts() // quote post with media // = @@ -75,20 +79,30 @@ export function PostEmbeds({ // custom feed embed (i.e. generator view) // = if (AppBskyFeedDefs.isGeneratorView(embed.record)) { - // TODO moderation + const moderation = moderationOpts + ? moderateFeedGenerator(embed.record, moderationOpts) + : undefined return ( - + + + ) } // list embed if (AppBskyGraphDefs.isListView(embed.record)) { - // TODO moderation - return + const moderation = moderationOpts + ? moderateUserList(embed.record, moderationOpts) + : undefined + return ( + + + + ) } if (AppBskyGraphDefs.isStarterPackViewBasic(embed.record)) {