Refactor: Extract shouldMuteThisNote function
This commit is contained in:
		
							parent
							
								
									311b4e90ca
								
							
						
					
					
						commit
						44f6fe6f1f
					
				
					 6 changed files with 29 additions and 53 deletions
				
			
		| 
						 | 
				
			
			@ -3,6 +3,7 @@ import Xev from 'xev';
 | 
			
		|||
 | 
			
		||||
import { IUser } from '../../../models/user';
 | 
			
		||||
import Mute from '../../../models/mute';
 | 
			
		||||
import shouldMuteThisNote from '../../../misc/should-mute-this-note';
 | 
			
		||||
 | 
			
		||||
export default async function(
 | 
			
		||||
	request: websocket.request,
 | 
			
		||||
| 
						 | 
				
			
			@ -15,17 +16,8 @@ export default async function(
 | 
			
		|||
 | 
			
		||||
	// Subscribe stream
 | 
			
		||||
	subscriber.on('global-timeline', async note => {
 | 
			
		||||
		//#region 流れてきたNoteがミュートしているユーザーが関わるものだったら無視する
 | 
			
		||||
		if (mutedUserIds.indexOf(note.userId) != -1) {
 | 
			
		||||
			return;
 | 
			
		||||
		}
 | 
			
		||||
		if (note.reply != null && mutedUserIds.indexOf(note.reply.userId) != -1) {
 | 
			
		||||
			return;
 | 
			
		||||
		}
 | 
			
		||||
		if (note.renote != null && mutedUserIds.indexOf(note.renote.userId) != -1) {
 | 
			
		||||
			return;
 | 
			
		||||
		}
 | 
			
		||||
		//#endregion
 | 
			
		||||
		// 流れてきたNoteがミュートしているユーザーが関わるものだったら無視する
 | 
			
		||||
		if (shouldMuteThisNote(note, mutedUserIds)) return;
 | 
			
		||||
 | 
			
		||||
		connection.send(JSON.stringify({
 | 
			
		||||
			type: 'note',
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -4,6 +4,7 @@ import Xev from 'xev';
 | 
			
		|||
import { IUser } from '../../../models/user';
 | 
			
		||||
import Mute from '../../../models/mute';
 | 
			
		||||
import { pack } from '../../../models/note';
 | 
			
		||||
import shouldMuteThisNote from '../../../misc/should-mute-this-note';
 | 
			
		||||
 | 
			
		||||
export default async function(
 | 
			
		||||
	request: websocket.request,
 | 
			
		||||
| 
						 | 
				
			
			@ -28,17 +29,8 @@ export default async function(
 | 
			
		|||
			});
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		//#region 流れてきたNoteがミュートしているユーザーが関わるものだったら無視する
 | 
			
		||||
		if (mutedUserIds.indexOf(note.userId) != -1) {
 | 
			
		||||
			return;
 | 
			
		||||
		}
 | 
			
		||||
		if (note.reply != null && mutedUserIds.indexOf(note.reply.userId) != -1) {
 | 
			
		||||
			return;
 | 
			
		||||
		}
 | 
			
		||||
		if (note.renote != null && mutedUserIds.indexOf(note.renote.userId) != -1) {
 | 
			
		||||
			return;
 | 
			
		||||
		}
 | 
			
		||||
		//#endregion
 | 
			
		||||
		// 流れてきたNoteがミュートしているユーザーが関わるものだったら無視する
 | 
			
		||||
		if (shouldMuteThisNote(note, mutedUserIds)) return;
 | 
			
		||||
 | 
			
		||||
		connection.send(JSON.stringify({
 | 
			
		||||
			type: 'note',
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -8,6 +8,7 @@ import { pack as packNote, pack } from '../../../models/note';
 | 
			
		|||
import readNotification from '../common/read-notification';
 | 
			
		||||
import call from '../call';
 | 
			
		||||
import { IApp } from '../../../models/app';
 | 
			
		||||
import shouldMuteThisNote from '../../../misc/should-mute-this-note';
 | 
			
		||||
 | 
			
		||||
const log = debug('misskey');
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -45,15 +46,7 @@ export default async function(
 | 
			
		|||
 | 
			
		||||
		//#region 流れてきたメッセージがミュートしているユーザーが関わるものだったら無視する
 | 
			
		||||
		if (x.type == 'note') {
 | 
			
		||||
			if (mutedUserIds.includes(x.body.userId)) {
 | 
			
		||||
				return;
 | 
			
		||||
			}
 | 
			
		||||
			if (x.body.reply != null && mutedUserIds.includes(x.body.reply.userId)) {
 | 
			
		||||
				return;
 | 
			
		||||
			}
 | 
			
		||||
			if (x.body.renote != null && mutedUserIds.includes(x.body.renote.userId)) {
 | 
			
		||||
				return;
 | 
			
		||||
			}
 | 
			
		||||
			if (shouldMuteThisNote(x.body, mutedUserIds)) return;
 | 
			
		||||
		} else if (x.type == 'notification') {
 | 
			
		||||
			if (mutedUserIds.includes(x.body.userId)) {
 | 
			
		||||
				return;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -4,6 +4,7 @@ import Xev from 'xev';
 | 
			
		|||
import { IUser } from '../../../models/user';
 | 
			
		||||
import Mute from '../../../models/mute';
 | 
			
		||||
import { pack } from '../../../models/note';
 | 
			
		||||
import shouldMuteThisNote from '../../../misc/should-mute-this-note';
 | 
			
		||||
 | 
			
		||||
export default async function(
 | 
			
		||||
	request: websocket.request,
 | 
			
		||||
| 
						 | 
				
			
			@ -26,17 +27,8 @@ export default async function(
 | 
			
		|||
			});
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		//#region 流れてきたNoteがミュートしているユーザーが関わるものだったら無視する
 | 
			
		||||
		if (mutedUserIds.indexOf(note.userId) != -1) {
 | 
			
		||||
			return;
 | 
			
		||||
		}
 | 
			
		||||
		if (note.reply != null && mutedUserIds.indexOf(note.reply.userId) != -1) {
 | 
			
		||||
			return;
 | 
			
		||||
		}
 | 
			
		||||
		if (note.renote != null && mutedUserIds.indexOf(note.renote.userId) != -1) {
 | 
			
		||||
			return;
 | 
			
		||||
		}
 | 
			
		||||
		//#endregion
 | 
			
		||||
		// 流れてきたNoteがミュートしているユーザーが関わるものだったら無視する
 | 
			
		||||
		if (shouldMuteThisNote(note, mutedUserIds)) return;
 | 
			
		||||
 | 
			
		||||
		connection.send(JSON.stringify({
 | 
			
		||||
			type: 'note',
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -4,6 +4,7 @@ import Xev from 'xev';
 | 
			
		|||
import { IUser } from '../../../models/user';
 | 
			
		||||
import Mute from '../../../models/mute';
 | 
			
		||||
import { pack } from '../../../models/note';
 | 
			
		||||
import shouldMuteThisNote from '../../../misc/should-mute-this-note';
 | 
			
		||||
 | 
			
		||||
export default async function(
 | 
			
		||||
	request: websocket.request,
 | 
			
		||||
| 
						 | 
				
			
			@ -23,17 +24,8 @@ export default async function(
 | 
			
		|||
			});
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		//#region 流れてきたNoteがミュートしているユーザーが関わるものだったら無視する
 | 
			
		||||
		if (mutedUserIds.indexOf(note.userId) != -1) {
 | 
			
		||||
			return;
 | 
			
		||||
		}
 | 
			
		||||
		if (note.reply != null && mutedUserIds.indexOf(note.reply.userId) != -1) {
 | 
			
		||||
			return;
 | 
			
		||||
		}
 | 
			
		||||
		if (note.renote != null && mutedUserIds.indexOf(note.renote.userId) != -1) {
 | 
			
		||||
			return;
 | 
			
		||||
		}
 | 
			
		||||
		//#endregion
 | 
			
		||||
		// 流れてきたNoteがミュートしているユーザーが関わるものだったら無視する
 | 
			
		||||
		if (shouldMuteThisNote(note, mutedUserIds)) return;
 | 
			
		||||
 | 
			
		||||
		connection.send(JSON.stringify({
 | 
			
		||||
			type: 'note',
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue