diff --git a/src/components/Post/Embed/FeedEmbed.tsx b/src/components/Post/Embed/FeedEmbed.tsx
index 8431fc7c08..4eab79534e 100644
--- a/src/components/Post/Embed/FeedEmbed.tsx
+++ b/src/components/Post/Embed/FeedEmbed.tsx
@@ -1,7 +1,11 @@
+import React from 'react'
import {StyleSheet} from 'react-native'
+import {moderateFeedGenerator} from '@atproto/api'
import {usePalette} from '#/lib/hooks/usePalette'
+import {useModerationOpts} from '#/state/preferences/moderation-opts'
import {FeedSourceCard} from '#/view/com/feeds/FeedSourceCard'
+import {ContentHider} from '#/components/moderation/ContentHider'
import {EmbedType} from '#/types/bsky/post'
import {CommonProps} from './types'
@@ -20,6 +24,25 @@ export function FeedEmbed({
)
}
+export function ModeratedFeedEmbed({
+ embed,
+}: CommonProps & {
+ embed: EmbedType<'feed'>
+}) {
+ const moderationOpts = useModerationOpts()
+ const moderation = React.useMemo(() => {
+ return moderationOpts
+ ? moderateFeedGenerator(embed.view, moderationOpts)
+ : undefined
+ }, [embed.view, moderationOpts])
+ console.log(moderation)
+ return (
+
+
+
+ )
+}
+
const styles = StyleSheet.create({
customFeedOuter: {
borderWidth: StyleSheet.hairlineWidth,
diff --git a/src/components/Post/Embed/ListEmbed.tsx b/src/components/Post/Embed/ListEmbed.tsx
index 947b4b9a28..dc79a75798 100644
--- a/src/components/Post/Embed/ListEmbed.tsx
+++ b/src/components/Post/Embed/ListEmbed.tsx
@@ -1,7 +1,11 @@
+import React from 'react'
import {View} from 'react-native'
+import {moderateUserList} from '@atproto/api'
+import {useModerationOpts} from '#/state/preferences/moderation-opts'
import {atoms as a, useTheme} from '#/alf'
import * as ListCard from '#/components/ListCard'
+import {ContentHider} from '#/components/moderation/ContentHider'
import {EmbedType} from '#/types/bsky/post'
import {CommonProps} from './types'
@@ -18,3 +22,21 @@ export function ListEmbed({
)
}
+
+export function ModeratedListEmbed({
+ embed,
+}: CommonProps & {
+ embed: EmbedType<'list'>
+}) {
+ const moderationOpts = useModerationOpts()
+ const moderation = React.useMemo(() => {
+ return moderationOpts
+ ? moderateUserList(embed.view, moderationOpts)
+ : undefined
+ }, [embed.view, moderationOpts])
+ return (
+
+
+
+ )
+}
diff --git a/src/components/Post/Embed/index.tsx b/src/components/Post/Embed/index.tsx
index 013dcdbc2d..dfa539f4a6 100644
--- a/src/components/Post/Embed/index.tsx
+++ b/src/components/Post/Embed/index.tsx
@@ -28,9 +28,9 @@ import {SubtleWebHover} from '#/components/SubtleWebHover'
import * as bsky from '#/types/bsky'
import {Embed as TEmbed, EmbedType, parseEmbed} from '#/types/bsky/post'
import {ExternalEmbed} from './ExternalEmbed'
-import {FeedEmbed} from './FeedEmbed'
+import {ModeratedFeedEmbed} from './FeedEmbed'
import {ImageEmbed} from './ImageEmbed'
-import {ListEmbed} from './ListEmbed'
+import {ModeratedListEmbed} from './ListEmbed'
import {PostPlaceholder as PostPlaceholderText} from './PostPlaceholder'
import {
CommonProps,
@@ -123,18 +123,14 @@ function RecordEmbed({
case 'feed': {
return (
-
-
-
+
)
}
case 'list': {
return (
-
-
-
+
)
}