From 43d1f002f5abbc6f93d4ffad0da60ab06bb0e715 Mon Sep 17 00:00:00 2001 From: Paul Frazee Date: Thu, 17 Aug 2023 17:44:48 -0700 Subject: Dont suggest users that are muted or blocked (close #1185) (#1209) --- src/state/models/discovery/foafs.ts | 21 +++++++++++++++++---- src/state/models/discovery/suggested-actors.ts | 13 +++++++++++-- 2 files changed, 28 insertions(+), 6 deletions(-) (limited to 'src') diff --git a/src/state/models/discovery/foafs.ts b/src/state/models/discovery/foafs.ts index 4bcb2bdd1..580145f65 100644 --- a/src/state/models/discovery/foafs.ts +++ b/src/state/models/discovery/foafs.ts @@ -105,11 +105,24 @@ export class FoafsModel { const profile = profiles.data.profiles[i] const source = this.sources[i] if (res.status === 'fulfilled' && profile) { - // filter out users already followed by the user or that *is* the user + // filter out inappropriate suggestions res.value.data.follows = res.value.data.follows.filter(follow => { - return ( - follow.did !== this.rootStore.me.did && !follow.viewer?.following - ) + const viewer = follow.viewer + if (viewer) { + if ( + viewer.following || + viewer.muted || + viewer.mutedByList || + viewer.blockedBy || + viewer.blocking + ) { + return false + } + } + if (follow.did === this.rootStore.me.did) { + return false + } + return true }) runInAction(() => { diff --git a/src/state/models/discovery/suggested-actors.ts b/src/state/models/discovery/suggested-actors.ts index 533e14eab..0b3d36952 100644 --- a/src/state/models/discovery/suggested-actors.ts +++ b/src/state/models/discovery/suggested-actors.ts @@ -85,8 +85,17 @@ export class SuggestedActorsModel { this.hasMore = !!cursor this.suggestions = this.suggestions.concat( actors.filter(actor => { - if (actor.viewer?.following) { - return false + const viewer = actor.viewer + if (viewer) { + if ( + viewer.following || + viewer.muted || + viewer.mutedByList || + viewer.blockedBy || + viewer.blocking + ) { + return false + } } if (actor.did === this.rootStore.me.did) { return false -- cgit 1.4.1