turn task into a function
This commit is contained in:
		
							parent
							
								
									badb5de8c7
								
							
						
					
					
						commit
						7a99bf76ea
					
				|  | @ -10,6 +10,7 @@ import { isRenotePacked, isQuotePacked } from '@/misc/is-renote.js'; | |||
| import type { Packed } from '@/misc/json-schema.js'; | ||||
| import type { JsonObject, JsonValue } from '@/misc/json-value.js'; | ||||
| import type Connection from './Connection.js'; | ||||
| import { NoteEntityService } from '@/core/entities/NoteEntityService.js'; | ||||
| 
 | ||||
| /** | ||||
|  * Stream channel | ||||
|  | @ -101,6 +102,14 @@ export default abstract class Channel { | |||
| 	public dispose?(): void; | ||||
| 
 | ||||
| 	public onMessage?(type: string, body: JsonValue): void; | ||||
| 
 | ||||
| 	public async assignMyReaction(note: Packed<'Note'>, noteEntityService: NoteEntityService) { | ||||
| 		if (this.user === undefined) { return; } | ||||
| 		if (Object.keys(note.reactions).length > 0) { | ||||
| 			const myReaction = await noteEntityService.populateMyReaction(note, this.user.id); | ||||
| 			note.myReaction = myReaction; | ||||
| 		} | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
| export type MiChannelService<T extends boolean> = { | ||||
|  |  | |||
|  | @ -55,25 +55,19 @@ class GlobalTimelineChannel extends Channel { | |||
| 
 | ||||
| 		if (this.isNoteMutedOrBlocked(note)) return; | ||||
| 
 | ||||
| 		const reactionsToFetch = []; | ||||
| 		if (this.user && isRenotePacked(note) && !isQuotePacked(note)) { | ||||
| 			if (note.renote && Object.keys(note.renote.reactions).length > 0) { | ||||
| 				const myRenoteReaction = await this.noteEntityService.populateMyReaction(note.renote, this.user.id); | ||||
| 				note.renote.myReaction = myRenoteReaction; | ||||
| 			} | ||||
| 			if (note.renote && note.renote.reply) { | ||||
| 				if (Object.keys(note.renote.reply.reactions).length > 0) { | ||||
| 					const myReplyReaction = await this.noteEntityService.populateMyReaction(note.renote.reply, this.user.id); | ||||
| 					note.renote.reply.myReaction = myReplyReaction; | ||||
| 			if (note.renote) { | ||||
| 				reactionsToFetch.push(this.assignMyReaction(note.renote, this.noteEntityService)); | ||||
| 				if (note.renote.reply) { | ||||
| 					reactionsToFetch.push(this.assignMyReaction(note.renote.reply, this.noteEntityService)); | ||||
| 				} | ||||
| 			} | ||||
| 		} else if (this.user && note.reply) { | ||||
| 			reactionsToFetch.push(this.assignMyReaction(note.reply, this.noteEntityService)); | ||||
| 		} | ||||
| 
 | ||||
| 		if (this.user && note.reply) { | ||||
| 			if (Object.keys(note.reply.reactions).length > 0) { | ||||
| 				const myReplyReaction = await this.noteEntityService.populateMyReaction(note.reply, this.user.id); | ||||
| 				note.reply.myReaction = myReplyReaction; | ||||
| 			} | ||||
| 		} | ||||
| 		await Promise.all(reactionsToFetch); | ||||
| 
 | ||||
| 		this.connection.cacheNote(note); | ||||
| 
 | ||||
|  |  | |||
|  | @ -79,25 +79,19 @@ class HomeTimelineChannel extends Channel { | |||
| 
 | ||||
| 		if (this.isNoteMutedOrBlocked(note)) return; | ||||
| 
 | ||||
| 		const reactionsToFetch = []; | ||||
| 		if (this.user && isRenotePacked(note) && !isQuotePacked(note)) { | ||||
| 			if (note.renote && Object.keys(note.renote.reactions).length > 0) { | ||||
| 				const myRenoteReaction = await this.noteEntityService.populateMyReaction(note.renote, this.user.id); | ||||
| 				note.renote.myReaction = myRenoteReaction; | ||||
| 			} | ||||
| 			if (note.renote && note.renote.reply) { | ||||
| 				if (Object.keys(note.renote.reply.reactions).length > 0) { | ||||
| 					const myReplyReaction = await this.noteEntityService.populateMyReaction(note.renote.reply, this.user.id); | ||||
| 					note.renote.reply.myReaction = myReplyReaction; | ||||
| 			if (note.renote) { | ||||
| 				reactionsToFetch.push(this.assignMyReaction(note.renote, this.noteEntityService)); | ||||
| 				if (note.renote.reply) { | ||||
| 					reactionsToFetch.push(this.assignMyReaction(note.renote.reply, this.noteEntityService)); | ||||
| 				} | ||||
| 			} | ||||
| 		} else if (this.user && note.reply) { | ||||
| 			reactionsToFetch.push(this.assignMyReaction(note.reply, this.noteEntityService)); | ||||
| 		} | ||||
| 
 | ||||
| 		if (this.user && note.reply) { | ||||
| 			if (Object.keys(note.reply.reactions).length > 0) { | ||||
| 				const myReplyReaction = await this.noteEntityService.populateMyReaction(note.reply, this.user.id); | ||||
| 				note.reply.myReaction = myReplyReaction; | ||||
| 			} | ||||
| 		} | ||||
| 		await Promise.all(reactionsToFetch); | ||||
| 
 | ||||
| 		this.connection.cacheNote(note); | ||||
| 
 | ||||
|  |  | |||
|  | @ -93,26 +93,19 @@ class HybridTimelineChannel extends Channel { | |||
| 			} | ||||
| 		} | ||||
| 
 | ||||
| 		if (this.user && note.renoteId && !note.text) { | ||||
| 			if (note.renote && Object.keys(note.renote.reactions).length > 0) { | ||||
| 				console.log(note.renote.reactionAndUserPairCache); | ||||
| 				const myRenoteReaction = await this.noteEntityService.populateMyReaction(note.renote, this.user.id); | ||||
| 				note.renote.myReaction = myRenoteReaction; | ||||
| 			} | ||||
| 			if (note.renote && note.renote.reply) { | ||||
| 				if (Object.keys(note.renote.reply.reactions).length > 0) { | ||||
| 					const myReplyReaction = await this.noteEntityService.populateMyReaction(note.renote.reply, this.user.id); | ||||
| 					note.renote.reply.myReaction = myReplyReaction; | ||||
| 		const reactionsToFetch = []; | ||||
| 		if (this.user && isRenotePacked(note) && !isQuotePacked(note)) { | ||||
| 			if (note.renote) { | ||||
| 				reactionsToFetch.push(this.assignMyReaction(note.renote, this.noteEntityService)); | ||||
| 				if (note.renote.reply) { | ||||
| 					reactionsToFetch.push(this.assignMyReaction(note.renote.reply, this.noteEntityService)); | ||||
| 				} | ||||
| 			} | ||||
| 		} else if (this.user && note.reply) { | ||||
| 			reactionsToFetch.push(this.assignMyReaction(note.reply, this.noteEntityService)); | ||||
| 		} | ||||
| 
 | ||||
| 		if (this.user && note.reply) { | ||||
| 			if (Object.keys(note.reply.reactions).length > 0) { | ||||
| 				const myReplyReaction = await this.noteEntityService.populateMyReaction(note.reply, this.user.id); | ||||
| 				note.reply.myReaction = myReplyReaction; | ||||
| 			} | ||||
| 		} | ||||
| 		await Promise.all(reactionsToFetch); | ||||
| 
 | ||||
| 		this.connection.cacheNote(note); | ||||
| 
 | ||||
|  |  | |||
|  | @ -65,25 +65,19 @@ class LocalTimelineChannel extends Channel { | |||
| 
 | ||||
| 		if (this.isNoteMutedOrBlocked(note)) return; | ||||
| 
 | ||||
| 		const reactionsToFetch = []; | ||||
| 		if (this.user && isRenotePacked(note) && !isQuotePacked(note)) { | ||||
| 			if (note.renote && Object.keys(note.renote.reactions).length > 0) { | ||||
| 				const myRenoteReaction = await this.noteEntityService.populateMyReaction(note.renote, this.user.id); | ||||
| 				note.renote.myReaction = myRenoteReaction; | ||||
| 			} | ||||
| 			if (note.renote && note.renote.reply) { | ||||
| 				if (Object.keys(note.renote.reply.reactions).length > 0) { | ||||
| 					const myReplyReaction = await this.noteEntityService.populateMyReaction(note.renote.reply, this.user.id); | ||||
| 					note.renote.reply.myReaction = myReplyReaction; | ||||
| 			if (note.renote) { | ||||
| 				reactionsToFetch.push(this.assignMyReaction(note.renote, this.noteEntityService)); | ||||
| 				if (note.renote.reply) { | ||||
| 					reactionsToFetch.push(this.assignMyReaction(note.renote.reply, this.noteEntityService)); | ||||
| 				} | ||||
| 			} | ||||
| 		} else if (this.user && note.reply) { | ||||
| 			reactionsToFetch.push(this.assignMyReaction(note.reply, this.noteEntityService)); | ||||
| 		} | ||||
| 
 | ||||
| 		if (this.user && note.reply) { | ||||
| 			if (Object.keys(note.reply.reactions).length > 0) { | ||||
| 				const myReplyReaction = await this.noteEntityService.populateMyReaction(note.reply, this.user.id); | ||||
| 				note.reply.myReaction = myReplyReaction; | ||||
| 			} | ||||
| 		} | ||||
| 		await Promise.all(reactionsToFetch); | ||||
| 
 | ||||
| 		this.connection.cacheNote(note); | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue