19 lines
815 B
TypeScript
19 lines
815 B
TypeScript
export default function(me, settings, note) {
|
|
const isMyNote = note.userId == me.id;
|
|
const isPureRenote = note.renoteId != null && note.text == null && note.fileIds.length == 0 && note.poll == null;
|
|
|
|
const includesMutedWords = (text: string) =>
|
|
text
|
|
? settings.mutedWords.some(q => q.length > 0 && !q.some(word => !text.includes(word)))
|
|
: false;
|
|
|
|
return (
|
|
(!isMyNote && note.reply && includesMutedWords(note.reply.text)) ||
|
|
(!isMyNote && note.renote && includesMutedWords(note.renote.text)) ||
|
|
(settings.showMyRenotes === false && isMyNote && isPureRenote) ||
|
|
(settings.showRenotedMyNotes === false && isPureRenote && note.renote.userId == me.id) ||
|
|
(settings.showLocalRenotes === false && isPureRenote && note.renote.user.host == null) ||
|
|
(!isMyNote && includesMutedWords(note.text))
|
|
);
|
|
}
|