feat: add WebSocket notifications for new comments
- Introduced enriched comment retrieval with user information and like statistics. - Implemented WebSocket notifications to notify users of new comments on content. - Updated dependency injection to include `EventsGateway` and `RealtimeModule`.
This commit is contained in:
@@ -45,6 +45,27 @@ export class CommentsRepository {
|
||||
return results[0];
|
||||
}
|
||||
|
||||
async findOneEnriched(id: string) {
|
||||
const results = await this.databaseService.db
|
||||
.select({
|
||||
id: comments.id,
|
||||
text: comments.text,
|
||||
parentId: comments.parentId,
|
||||
createdAt: comments.createdAt,
|
||||
updatedAt: comments.updatedAt,
|
||||
user: {
|
||||
uuid: users.uuid,
|
||||
username: users.username,
|
||||
displayName: users.displayName,
|
||||
avatarUrl: users.avatarUrl,
|
||||
},
|
||||
})
|
||||
.from(comments)
|
||||
.innerJoin(users, eq(comments.userId, users.uuid))
|
||||
.where(and(eq(comments.id, id), isNull(comments.deletedAt)));
|
||||
return results[0];
|
||||
}
|
||||
|
||||
async delete(id: string) {
|
||||
await this.databaseService.db
|
||||
.update(comments)
|
||||
|
||||
Reference in New Issue
Block a user