feat: implement email notification system for comments

- Added MailModule to handle email notifications for comment events.
- Introduced CommentCreatedEvent to encapsulate comment creation details.
- Implemented CommentNotificationListener to send notifications to relevant users when a comment is created.
- Integrated Resend service for sending emails, with templates for comment notifications.
- Updated various modules to support the new email notification feature.

Signed-off-by: Innei <tukon479@gmail.com>
This commit is contained in:
Innei
2025-12-03 20:57:26 +08:00
parent 1aac293020
commit ced9e747aa
26 changed files with 455 additions and 36 deletions

View File

@@ -52,7 +52,6 @@
"comments.chooseProvider": "Choose sign in method",
"comments.empty": "No comments yet. Be the first to comment!",
"comments.error": "Failed to load comments",
"comments.hint": "Press Enter to send, Shift+Enter for new line",
"comments.loadMore": "Load more",
"comments.loading": "Loading comments...",
"comments.loginRequired": "Please sign in to leave a comment.",
@@ -421,4 +420,4 @@
"video.format.mov.not.supported": "Browser does not support MOV format, conversion required",
"video.format.mov.supported": "Browser natively supports MOV format, skipping conversion",
"video.motion-photo.extracting": "Extracting embedded video..."
}
}

View File

@@ -49,7 +49,6 @@
"comments.chooseProvider": "选择登录方式",
"comments.empty": "暂无评论。快来发表第一条评论吧!",
"comments.error": "评论加载失败",
"comments.hint": "按 Enter 发送,Shift+Enter 换行",
"comments.loadMore": "加载更多",
"comments.loading": "正在加载评论…",
"comments.loginRequired": "登录后才能发表评论。",
@@ -418,4 +417,4 @@
"video.format.mov.not.supported": "浏览器不支持 MOV 格式,需要转换",
"video.format.mov.supported": "浏览器原生支持 MOV 格式,跳过转换",
"video.motion-photo.extracting": "正在提取嵌入的视频..."
}
}