From 4e382c91242656a233e6ec20b8e95da77867ee17 Mon Sep 17 00:00:00 2001 From: naskya Date: Sun, 11 Jun 2023 11:46:18 +0000 Subject: [PATCH] fix boost mutes --- packages/backend/src/server/api/stream/channels/antenna.ts | 2 +- packages/backend/src/server/api/stream/channels/channel.ts | 3 +-- .../backend/src/server/api/stream/channels/global-timeline.ts | 3 +-- packages/backend/src/server/api/stream/channels/hashtag.ts | 3 +-- .../backend/src/server/api/stream/channels/home-timeline.ts | 3 +-- .../backend/src/server/api/stream/channels/hybrid-timeline.ts | 3 +-- .../backend/src/server/api/stream/channels/local-timeline.ts | 3 +-- .../src/server/api/stream/channels/recommended-timeline.ts | 3 +-- packages/backend/src/server/api/stream/channels/user-list.ts | 3 +-- 9 files changed, 9 insertions(+), 17 deletions(-) diff --git a/packages/backend/src/server/api/stream/channels/antenna.ts b/packages/backend/src/server/api/stream/channels/antenna.ts index 050a8d101..ec5a8b175 100644 --- a/packages/backend/src/server/api/stream/channels/antenna.ts +++ b/packages/backend/src/server/api/stream/channels/antenna.ts @@ -34,7 +34,7 @@ export default class extends Channel { // 流れてきたNoteがブロックされているユーザーが関わるものだったら無視する if (isUserRelated(note, this.blocking)) return; - if (note.renote && !note.text && isUserRelated(note, this.renoteMuting)) + if (note.renote && !note.text && this.renoteMuting.has(note.userId)) return; this.connection.cacheNote(note); diff --git a/packages/backend/src/server/api/stream/channels/channel.ts b/packages/backend/src/server/api/stream/channels/channel.ts index 75768ecca..2ff4e0820 100644 --- a/packages/backend/src/server/api/stream/channels/channel.ts +++ b/packages/backend/src/server/api/stream/channels/channel.ts @@ -37,8 +37,7 @@ export default class extends Channel { // 流れてきたNoteがブロックされているユーザーが関わるものだったら無視する if (isUserRelated(note, this.blocking)) return; - if (note.renote && !note.text && isUserRelated(note, this.renoteMuting)) - return; + if (note.renote && !note.text && this.renoteMuting.has(note.userId)) return; this.connection.cacheNote(note); diff --git a/packages/backend/src/server/api/stream/channels/global-timeline.ts b/packages/backend/src/server/api/stream/channels/global-timeline.ts index 07ac38026..4e8263bbe 100644 --- a/packages/backend/src/server/api/stream/channels/global-timeline.ts +++ b/packages/backend/src/server/api/stream/channels/global-timeline.ts @@ -56,8 +56,7 @@ export default class extends Channel { // 流れてきたNoteがブロックされているユーザーが関わるものだったら無視する if (isUserRelated(note, this.blocking)) return; - if (note.renote && !note.text && isUserRelated(note, this.renoteMuting)) - return; + if (note.renote && !note.text && this.renoteMuting.has(note.userId)) return; // 流れてきたNoteがミュートすべきNoteだったら無視する // TODO: 将来的には、単にMutedNoteテーブルにレコードがあるかどうかで判定したい(以下の理由により難しそうではある) diff --git a/packages/backend/src/server/api/stream/channels/hashtag.ts b/packages/backend/src/server/api/stream/channels/hashtag.ts index f1ba0a9dc..011bb0889 100644 --- a/packages/backend/src/server/api/stream/channels/hashtag.ts +++ b/packages/backend/src/server/api/stream/channels/hashtag.ts @@ -38,8 +38,7 @@ export default class extends Channel { // 流れてきたNoteがブロックされているユーザーが関わるものだったら無視する if (isUserRelated(note, this.blocking)) return; - if (note.renote && !note.text && isUserRelated(note, this.renoteMuting)) - return; + if (note.renote && !note.text && this.renoteMuting.has(note.userId)) return; this.connection.cacheNote(note); diff --git a/packages/backend/src/server/api/stream/channels/home-timeline.ts b/packages/backend/src/server/api/stream/channels/home-timeline.ts index dd36c60a1..bdcd8a283 100644 --- a/packages/backend/src/server/api/stream/channels/home-timeline.ts +++ b/packages/backend/src/server/api/stream/channels/home-timeline.ts @@ -55,8 +55,7 @@ export default class extends Channel { // 流れてきたNoteがブロックされているユーザーが関わるものだったら無視する if (isUserRelated(note, this.blocking)) return; - if (note.renote && !note.text && isUserRelated(note, this.renoteMuting)) - return; + if (note.renote && !note.text && this.renoteMuting.has(note.userId)) return; // 流れてきたNoteがミュートすべきNoteだったら無視する // TODO: 将来的には、単にMutedNoteテーブルにレコードがあるかどうかで判定したい(以下の理由により難しそうではある) diff --git a/packages/backend/src/server/api/stream/channels/hybrid-timeline.ts b/packages/backend/src/server/api/stream/channels/hybrid-timeline.ts index d734f59df..9205d609d 100644 --- a/packages/backend/src/server/api/stream/channels/hybrid-timeline.ts +++ b/packages/backend/src/server/api/stream/channels/hybrid-timeline.ts @@ -72,8 +72,7 @@ export default class extends Channel { // 流れてきたNoteがブロックされているユーザーが関わるものだったら無視する if (isUserRelated(note, this.blocking)) return; - if (note.renote && !note.text && isUserRelated(note, this.renoteMuting)) - return; + if (note.renote && !note.text && this.renoteMuting.has(note.userId)) return; // 流れてきたNoteがミュートすべきNoteだったら無視する // TODO: 将来的には、単にMutedNoteテーブルにレコードがあるかどうかで判定したい(以下の理由により難しそうではある) diff --git a/packages/backend/src/server/api/stream/channels/local-timeline.ts b/packages/backend/src/server/api/stream/channels/local-timeline.ts index 19bf43be2..df0845b5b 100644 --- a/packages/backend/src/server/api/stream/channels/local-timeline.ts +++ b/packages/backend/src/server/api/stream/channels/local-timeline.ts @@ -48,8 +48,7 @@ export default class extends Channel { // 流れてきたNoteがブロックされているユーザーが関わるものだったら無視する if (isUserRelated(note, this.blocking)) return; - if (note.renote && !note.text && isUserRelated(note, this.renoteMuting)) - return; + if (note.renote && !note.text && this.renoteMuting.has(note.userId)) return; // 流れてきたNoteがミュートすべきNoteだったら無視する // TODO: 将来的には、単にMutedNoteテーブルにレコードがあるかどうかで判定したい(以下の理由により難しそうではある) diff --git a/packages/backend/src/server/api/stream/channels/recommended-timeline.ts b/packages/backend/src/server/api/stream/channels/recommended-timeline.ts index d2e60f3b5..d030c1e7e 100644 --- a/packages/backend/src/server/api/stream/channels/recommended-timeline.ts +++ b/packages/backend/src/server/api/stream/channels/recommended-timeline.ts @@ -70,8 +70,7 @@ export default class extends Channel { // 流れてきたNoteがブロックされているユーザーが関わるものだったら無視する if (isUserRelated(note, this.blocking)) return; - if (note.renote && !note.text && isUserRelated(note, this.renoteMuting)) - return; + if (note.renote && !note.text && this.renoteMuting.has(note.userId)) return; // 流れてきたNoteがミュートすべきNoteだったら無視する // TODO: 将来的には、単にMutedNoteテーブルにレコードがあるかどうかで判定したい(以下の理由により難しそうではある) diff --git a/packages/backend/src/server/api/stream/channels/user-list.ts b/packages/backend/src/server/api/stream/channels/user-list.ts index c2b62c05a..0b52f6912 100644 --- a/packages/backend/src/server/api/stream/channels/user-list.ts +++ b/packages/backend/src/server/api/stream/channels/user-list.ts @@ -57,8 +57,7 @@ export default class extends Channel { // 流れてきたNoteがブロックされているユーザーが関わるものだったら無視する if (isUserRelated(note, this.blocking)) return; - if (note.renote && !note.text && isUserRelated(note, this.renoteMuting)) - return; + if (note.renote && !note.text && this.renoteMuting.has(note.userId)) return; this.send("note", note); }