Bluesky app fork with some witchin' additions 💫
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

add hideRecord prop (#3527)

authored by

Samuel Newman and committed by
GitHub
acbadc61 c1137c39

+20 -14
+20 -14
bskyembed/src/components/embed.tsx
··· 19 19 export function Embed({ 20 20 content, 21 21 labels, 22 + hideRecord, 22 23 }: { 23 24 content: AppBskyFeedDefs.PostView['embed'] 24 25 labels: AppBskyFeedDefs.PostView['labels'] 26 + hideRecord?: boolean 25 27 }) { 26 28 const labelInfo = useMemo(() => labelsToInfo(labels), [labels]) 27 29 ··· 40 42 41 43 // Case 3: Record (quote or linked post) 42 44 if (AppBskyEmbedRecord.isView(content)) { 45 + if (hideRecord) { 46 + return null 47 + } 48 + 43 49 const record = content.record 44 50 45 51 // Case 3.1: Post ··· 84 90 </p> 85 91 </div> 86 92 {text && <p className="text-sm">{text}</p>} 87 - {record.embeds 88 - ?.filter(embed => { 89 - if (AppBskyEmbedImages.isView(embed)) return true 90 - if (AppBskyEmbedExternal.isView(embed)) return true 91 - return false 92 - }) 93 - .map(embed => ( 94 - <Embed 95 - key={embed.$type} 96 - content={embed} 97 - labels={record.labels} 98 - /> 99 - ))} 93 + {record.embeds?.map(embed => ( 94 + <Embed 95 + key={embed.$type} 96 + content={embed} 97 + labels={record.labels} 98 + hideRecord 99 + /> 100 + ))} 100 101 </Link> 101 102 ) 102 103 } ··· 164 165 ) { 165 166 return ( 166 167 <div className="flex flex-col gap-2"> 167 - <Embed content={content.media} labels={labels} /> 168 + <Embed 169 + content={content.media} 170 + labels={labels} 171 + hideRecord={hideRecord} 172 + /> 168 173 <Embed 169 174 content={{ 170 175 $type: 'app.bsky.embed.record#view', 171 176 record: content.record.record, 172 177 }} 173 178 labels={content.record.record.labels} 179 + hideRecord={hideRecord} 174 180 /> 175 181 </div> 176 182 )