From aeafa3a8cd2a4550faeea73d762a99f548c18064 Mon Sep 17 00:00:00 2001 From: Paul Frazee Date: Thu, 7 Dec 2023 13:04:22 -0800 Subject: Fix: remove replies to deleted and blocked posts from feeds (#2130) --- src/lib/api/feed-manip.ts | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'src/lib/api/feed-manip.ts') diff --git a/src/lib/api/feed-manip.ts b/src/lib/api/feed-manip.ts index 1123c4e23..622724b35 100644 --- a/src/lib/api/feed-manip.ts +++ b/src/lib/api/feed-manip.ts @@ -146,6 +146,19 @@ export class FeedTuner { ): FeedViewPostsSlice[] { let slices: FeedViewPostsSlice[] = [] + // remove posts that are replies, but which don't have the parent + // hydrated. this means the parent was either deleted or blocked + feed = feed.filter(item => { + if ( + AppBskyFeedPost.isRecord(item.post.record) && + item.post.record.reply && + !item.reply + ) { + return false + } + return true + }) + if (maintainOrder) { slices = feed.map( item => new FeedViewPostsSlice([item], `slice-${this.keyCounter++}`), -- cgit 1.4.1