fix (backend): check word mutes in lists
This commit is contained in:
parent
0ba868cc3c
commit
0edf177e99
2 changed files with 14 additions and 0 deletions
|
@ -5,6 +5,7 @@ import define from "@/server/api/define.js";
|
|||
import { ApiError } from "@/server/api/error.js";
|
||||
import { makePaginationQuery } from "@/server/api/common/make-pagination-query.js";
|
||||
import { generateVisibilityQuery } from "@/server/api/common/generate-visibility-query.js";
|
||||
import { generateMutedNoteQuery } from "@/server/api/common/generate-muted-note-query.js";
|
||||
|
||||
export const meta = {
|
||||
tags: ["notes", "lists"],
|
||||
|
@ -95,6 +96,7 @@ export default define(meta, paramDef, async (ps, user) => {
|
|||
});
|
||||
|
||||
generateVisibilityQuery(query, user);
|
||||
generateMutedNoteQuery(query, user);
|
||||
|
||||
if (ps.includeMyRenotes === false) {
|
||||
query.andWhere(
|
||||
|
|
|
@ -3,6 +3,7 @@ import { UserListJoinings, UserLists } from "@/models/index.js";
|
|||
import type { User } from "@/models/entities/user.js";
|
||||
import { isUserRelated } from "@/misc/is-user-related.js";
|
||||
import type { Packed } from "@/misc/schema.js";
|
||||
import { checkWordMute } from "backend-rs";
|
||||
|
||||
export default class extends Channel {
|
||||
public readonly chName = "userList";
|
||||
|
@ -58,6 +59,17 @@ export default class extends Channel {
|
|||
if (note.renote && !note.text && this.renoteMuting.has(note.userId)) return;
|
||||
if (note.replyId != null && this.replyMuting.has(note.userId)) return;
|
||||
|
||||
if (
|
||||
this.userProfile &&
|
||||
this.user?.id !== note.userId &&
|
||||
(await checkWordMute(
|
||||
note,
|
||||
this.userProfile.mutedWords,
|
||||
this.userProfile.mutedPatterns,
|
||||
))
|
||||
)
|
||||
return;
|
||||
|
||||
this.send("note", note);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue