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 050a8d1019..ec5a8b175f 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 75768ecca9..2ff4e08209 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 07ac380265..4e8263bbed 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 f1ba0a9dc7..011bb0889d 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 dd36c60a1a..bdcd8a2839 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 d734f59df0..9205d609d1 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 19bf43be22..df0845b5b3 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 d2e60f3b59..d030c1e7e1 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 c2b62c05a7..0b52f69127 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); }