Remove remaining items

This commit is contained in:
Eric Bailey
2025-06-11 11:15:00 -05:00
parent e215e17a18
commit 135d4562d7
2 changed files with 26 additions and 85 deletions
+26 -5
View File
@@ -1,19 +1,20 @@
import React from 'react'
import {StyleProp, View, ViewStyle} from 'react-native'
import {type StyleProp, View, type ViewStyle} from 'react-native'
import {cleanError} from '#/lib/strings/errors'
import {
useResolveGifQuery,
useResolveLinkQuery,
} from '#/state/queries/resolve-link'
import {Gif} from '#/state/queries/tenor'
import {type Gif} from '#/state/queries/tenor'
import {ExternalEmbedRemoveBtn} from '#/view/com/composer/ExternalEmbedRemoveBtn'
import {atoms as a, useTheme} from '#/alf'
import {Loader} from '#/components/Loader'
import {ExternalEmbed} from '#/components/Post/Embed/ExternalEmbed'
import {ModeratedFeedEmbed} from '#/components/Post/Embed/FeedEmbed'
import {ModeratedListEmbed} from '#/components/Post/Embed/ListEmbed'
import {Embed as StarterPackEmbed} from '#/components/StarterPack/StarterPackCard'
import {Text} from '#/components/Typography'
import {MaybeFeedCard, MaybeListCard} from '../util/post-embeds'
export const ExternalEmbedGif = ({
onRemove,
@@ -91,9 +92,29 @@ export const ExternalEmbedLink = ({
/>
)
} else if (data.kind === 'feed') {
return <MaybeFeedCard view={data.view} />
return (
<ModeratedFeedEmbed
embed={{
type: 'feed',
view: {
$type: 'app.bsky.feed.defs#generatorView',
...data.view,
},
}}
/>
)
} else if (data.kind === 'list') {
return <MaybeListCard view={data.view} />
return (
<ModeratedListEmbed
embed={{
type: 'list',
view: {
$type: 'app.bsky.graph.defs#listView',
...data.view,
},
}}
/>
)
} else if (data.kind === 'starter-pack') {
return <StarterPackEmbed starterPack={data.view} />
}
-80
View File
@@ -1,80 +0,0 @@
import React from 'react'
import {StyleSheet, View} from 'react-native'
import {
type AppBskyFeedDefs,
type AppBskyGraphDefs,
moderateFeedGenerator,
moderateUserList,
} from '@atproto/api'
import {usePalette} from '#/lib/hooks/usePalette'
import {useModerationOpts} from '#/state/preferences/moderation-opts'
import {FeedSourceCard} from '#/view/com/feeds/FeedSourceCard'
import {atoms as a, useTheme} from '#/alf'
import * as ListCard from '#/components/ListCard'
import {ContentHider} from '../../../../components/moderation/ContentHider'
export function MaybeFeedCard({view}: {view: AppBskyFeedDefs.GeneratorView}) {
const pal = usePalette('default')
const moderationOpts = useModerationOpts()
const moderation = React.useMemo(() => {
return moderationOpts
? moderateFeedGenerator(view, moderationOpts)
: undefined
}, [view, moderationOpts])
return (
<ContentHider modui={moderation?.ui('contentList')}>
<FeedSourceCard
feedUri={view.uri}
style={[pal.view, pal.border, styles.customFeedOuter]}
showLikes
/>
</ContentHider>
)
}
export function MaybeListCard({view}: {view: AppBskyGraphDefs.ListView}) {
const moderationOpts = useModerationOpts()
const moderation = React.useMemo(() => {
return moderationOpts ? moderateUserList(view, moderationOpts) : undefined
}, [view, moderationOpts])
const t = useTheme()
return (
<ContentHider modui={moderation?.ui('contentList')}>
<View
style={[
a.border,
t.atoms.border_contrast_medium,
a.p_md,
a.rounded_sm,
]}>
<ListCard.Default view={view} />
</View>
</ContentHider>
)
}
const styles = StyleSheet.create({
altContainer: {
backgroundColor: 'rgba(0, 0, 0, 0.75)',
borderRadius: 6,
paddingHorizontal: 6,
paddingVertical: 3,
position: 'absolute',
right: 6,
bottom: 6,
},
alt: {
color: 'white',
fontSize: 7,
fontWeight: '600',
},
customFeedOuter: {
borderWidth: StyleSheet.hairlineWidth,
borderRadius: 8,
paddingHorizontal: 12,
paddingVertical: 12,
},
})