From a4a1b8bb8b9db72e7be45bf44fd19b36fa8e81f4 Mon Sep 17 00:00:00 2001 From: Mar0xy Date: Wed, 18 Oct 2023 13:34:16 +0200 Subject: add: isSilenced handling to user and timeline --- packages/backend/src/server/api/endpoints/notes/local-timeline.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'packages/backend/src/server/api/endpoints/notes/local-timeline.ts') diff --git a/packages/backend/src/server/api/endpoints/notes/local-timeline.ts b/packages/backend/src/server/api/endpoints/notes/local-timeline.ts index 0f7a2d31f6..ea24d2643e 100644 --- a/packages/backend/src/server/api/endpoints/notes/local-timeline.ts +++ b/packages/backend/src/server/api/endpoints/notes/local-timeline.ts @@ -83,14 +83,16 @@ export default class extends Endpoint { // eslint- } const [ + followings, userIdsWhoMeMuting, userIdsWhoMeMutingRenotes, userIdsWhoBlockingMe, ] = me ? await Promise.all([ + this.cacheService.userFollowingsCache.fetch(me.id), this.cacheService.userMutingsCache.fetch(me.id), this.cacheService.renoteMutingsCache.fetch(me.id), this.cacheService.userBlockedCache.fetch(me.id), - ]) : [new Set(), new Set(), new Set()]; + ]) : [undefined, new Set(), new Set(), new Set()]; let noteIds: string[]; @@ -137,6 +139,7 @@ export default class extends Endpoint { // eslint- if (ps.withRenotes === false) return false; } } + if (note.user?.isSilenced && me && followings && note.userId !== me.id && !followings[note.userId]) return false; return true; }); -- cgit v1.2.3-freya