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)) {