forked from FoundKeyGang/FoundKey
backend: improve mutes and blocks
Mutes and blocks now also apply recursively to replies and renotes. Furthermore, any mentioned user being muted or blocked will also apply.
This commit is contained in:
parent
63c8992cb8
commit
0f6d94f1e7
1 changed files with 5 additions and 13 deletions
|
@ -1,15 +1,7 @@
|
|||
export function isUserRelated(note: any, userIds: Set<string>): boolean {
|
||||
if (userIds.has(note.userId)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (note.reply != null && userIds.has(note.reply.userId)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (note.renote != null && userIds.has(note.renote.userId)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
export function isUserRelated(note: any, ids: Set<string>): boolean {
|
||||
if(ids.has(note.userId)) return true; // note author is muted
|
||||
if(note.mentions && note.mentions.some((user: string) => ids.has(user))) return true; // any of mentioned users are muted
|
||||
if(note.reply && isUserRelated(note.reply, ids)) return true; // also check reply target
|
||||
if(note.renote && isUserRelated(note.renote, ids)) return true; // also check renote target
|
||||
return false;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue