forked from
jollywhoppers.com/witchsky.app
Bluesky app fork with some witchin' additions 馃挮
1import {useMemo} from 'react'
2import {View} from 'react-native'
3
4import {createEmbedViewRecordFromPost} from '#/state/queries/postgate/util'
5import {useResolveLinkQuery} from '#/state/queries/resolve-link'
6import {atoms as a, useTheme} from '#/alf'
7import {QuoteEmbed} from '#/components/Post/Embed'
8
9export function LazyQuoteEmbed({uri}: {uri: string}) {
10 const t = useTheme()
11 const {data} = useResolveLinkQuery(uri)
12
13 const view = useMemo(() => {
14 if (!data || data.type !== 'record' || data.kind !== 'post') return
15 return createEmbedViewRecordFromPost(data.view)
16 }, [data])
17
18 return view ? (
19 <QuoteEmbed
20 embed={{
21 type: 'post',
22 view,
23 }}
24 />
25 ) : (
26 <View
27 style={[
28 a.w_full,
29 a.rounded_md,
30 t.atoms.bg_contrast_25,
31 {
32 height: 68,
33 },
34 ]}
35 />
36 )
37}