import { BaseEvent } from '#application/base/baseEvent' import { Character } from '#entities/character' import CharacterRepository from '#repositories/characterRepository' export default class CharacterListEvent extends BaseEvent { public listen(): void { this.socket.on('character:list', this.handleEvent.bind(this)) } private async handleEvent(data: any): Promise { try { const characterRepository = new CharacterRepository() let characters: Character[] = await characterRepository.getByUserId(this.socket.userId!) this.socket.emit('character:list', characters) } catch (error: any) { this.logger.error('character:list error', error.message) } } }