zxyszx
|
b8632feb86
|
docs: add project screenshots
|
2026-08-02 17:40:38 +08:00 |
|
zxyszx
|
89e46b5748
|
feat: add login name migration
|
2026-08-02 16:56:04 +08:00 |
|
zxyszx
|
0d55200485
|
feat: support username admin login
|
2026-08-02 16:43:54 +08:00 |
|
zxyszx
|
9b59629993
|
feat: align NewSzxcn admin experience
|
2026-08-02 15:07:16 +08:00 |
|
zxyszx
|
7c6b0838b5
|
fix: brand webmail as NewSzxcn
|
2026-08-02 13:09:51 +08:00 |
|
zxyszx
|
2fffb27033
|
fix: align mailbox switcher dropdown width
|
2026-08-02 12:51:09 +08:00 |
|
zxyszx
|
704b976812
|
fix: remove unused mail toolbar icons
|
2026-08-02 12:43:19 +08:00 |
|
zxyszx
|
39f783d3b0
|
fix: match seek mail list width
|
2026-08-02 12:34:44 +08:00 |
|
zxyszx
|
c7be61d3f0
|
fix: prevent stale webmail shell cache
|
2026-08-02 12:25:21 +08:00 |
|
zxyszx
|
a46f375816
|
fix: lock mail list to seek width
|
2026-08-02 12:10:37 +08:00 |
|
zxyszx
|
4ab38c6c69
|
fix: keep desktop mail panes at seek width
|
2026-08-02 12:06:25 +08:00 |
|
zxyszx
|
e9806b4a2a
|
fix: tighten unread states and mail width
|
2026-08-02 11:42:21 +08:00 |
|
zxyszx
|
50d7c091bf
|
fix: align mailbox unread and bulk actions
|
2026-08-02 11:23:44 +08:00 |
|
zxyszx
|
21be227d7b
|
fix: match seek mail layout responsiveness
|
2026-08-02 10:44:29 +08:00 |
|
zxyszx
|
68bcce8091
|
fix: tighten mail layout responsiveness
|
2026-08-02 10:03:34 +08:00 |
|
zxyszx
|
83ca0dd7d7
|
fix: keep forwarding verification links idempotent
|
2026-08-02 09:36:30 +08:00 |
|
zxyszx
|
9f330fdf57
|
feat: require verification for forwarding targets
|
2026-08-02 09:08:20 +08:00 |
|
zxyszx
|
7f05a70f60
|
feat: add personal mailbox forwarding
|
2026-08-02 07:37:07 +08:00 |
|
zxyszx
|
77a0fd254c
|
docs: use Simplified Chinese README
|
2026-08-02 06:03:59 +08:00 |
|
zxyszx
|
5141917d93
|
feat: customize NodeSeek-style webmail
|
2026-08-02 05:55:53 +08:00 |
|
LanQin_
|
47f782a03c
|
feat(api): 升级开放 API 并支持投递回调
- 为 `/api/open/v1` 引入 Token scope、分页游标、幂等发信、发送事件与重试/取消能力。
- 新增投递事件签名回调与状态 webhook outbox,补充相关配置、迁移和测试。
- 同步更新 Web 端 API 类型、个人中心 Token 权限管理,以及中英文文档和 OpenAPI 契约。
|
2026-07-10 10:47:58 +08:00 |
|
LanQin_
|
25f54bc42f
|
docs(API): 补充开放 API 文档细节
- 增加 Base URL、HTTP 状态码与错误响应说明。
- 细化鉴权、权限矩阵以及各接口的请求/响应字段。
- 补充域名、邮箱、发信和收信接口的行为约束与分页规则。
|
2026-07-01 14:09:29 +08:00 |
|
LanQin_
|
3afbdc4d4a
|
feat(open_api): 统一开放接口命名并记录来源
- 将公共 API 相关处理器、路由与测试重命名为 Open API,统一接口语义。
- 新增发送来源 open_api,并在发送审计与队列中保存该来源。
- 前端发送队列来源标签新增 Open API 显示。
|
2026-06-29 16:52:07 +08:00 |
|
LanQin_
|
cb07d5d501
|
fix(api): 修复 API Token 过期校验与更新校验
- 将数据库中的 expires_at 设为必填,并在认证时仅允许未过期的令牌通过
- 增加空过期时间的更新校验,避免写入非法时间值
- 补充过期令牌与空过期时间更新的测试覆盖
- 调整前端日期输入与提交逻辑,避免创建 API Token 时表单异常中断
|
2026-06-29 16:09:40 +08:00 |
|
LanQin_
|
f87ce5fa4f
|
feat(api): 新增开放 API 与 Token 管理
- 新增 API Token 的创建、查询、更新和撤销接口,并支持 Bearer 认证
- 新增 `/api/open` 域名、邮箱、发信与消息查询接口,补充权限校验
- 更新数据库迁移、路由与测试,并新增开放 API 文档
|
2026-06-29 15:52:42 +08:00 |
|
LanQin_
|
eb8b999ce5
|
ci(workflows): 扩展 CI 触发时的忽略路径
- 为 push 和 pull_request 事件补充 docs、Issue 模板、发布配置、AI 评审忽略文件和 LICENSE 等路径的忽略规则。
- 同步为 AI PR Review 工作流增加相同的路径忽略,减少无关变更触发。
|
2026-06-29 14:51:16 +08:00 |
|
LanQin_
|
6a30f8ac60
|
chore(.github/ISSUE_TEMPLATE): 删除过时的 Issue 模板
- 移除 bug 报告和功能建议模板,精简仓库中的 GitHub Issue 配置。
|
2026-06-29 14:43:03 +08:00 |
|
LanQin_
|
d2901dd51f
|
Update issue templates
|
2026-06-29 14:24:41 +08:00 |
|
LanQin
|
a05a7ee503
|
ci(.github/workflows): 更新 Docker 发布工作流环境
Docker Release / Check web and api (push) Waiting to run
Docker Release / Resolve release tag (push) Blocked by required conditions
Docker Release / Build and publish all-in-one (push) Blocked by required conditions
Docker Release / Build and publish api (push) Blocked by required conditions
Docker Release / Build and publish web (push) Blocked by required conditions
Docker Release / Build and publish dovecot (push) Blocked by required conditions
Docker Release / Build and publish postfix (push) Blocked by required conditions
Docker Release / Build and publish rspamd (push) Blocked by required conditions
Docker Release / Create GitHub release (push) Blocked by required conditions
- 将 Node.js 版本升级到 24。
- 在解析发布版本时补充去除前导点和连字符,避免生成的镜像版本号异常。
v1.1.0
|
2026-06-27 15:50:09 +08:00 |
|
LanQin
|
ecc3e8a246
|
feat(mail): 支持邮件正文 HTML 翻译并切换显示译文
- 后端翻译接口新增返回 translatedHtml,优先翻译邮件 HTML 文本节点并跳过脚本、样式等标签。
- 前端合并翻译结果展示,支持在原文与译文之间切换,并直接渲染翻译后的邮件 HTML。
|
2026-06-27 15:35:41 +08:00 |
|
LanQin
|
ed68abb00d
|
feat(mail): 支持外部 IMAP 邮件翻译
Docker Release / Check web and api (push) Waiting to run
Docker Release / Resolve release tag (push) Blocked by required conditions
Docker Release / Build and publish all-in-one (push) Blocked by required conditions
Docker Release / Build and publish api (push) Blocked by required conditions
Docker Release / Build and publish web (push) Blocked by required conditions
Docker Release / Build and publish dovecot (push) Blocked by required conditions
Docker Release / Build and publish postfix (push) Blocked by required conditions
Docker Release / Build and publish rspamd (push) Blocked by required conditions
Docker Release / Create GitHub release (push) Blocked by required conditions
- 新增外部账号邮件翻译接口与路由。
- 前端翻译请求优先走外部账号邮件翻译接口。
v1.0.9
|
2026-06-27 13:30:31 +08:00 |
|
LanQin
|
b8d4553036
|
feat(mail): 增加邮件翻译功能
- 新增邮件翻译接口与响应类型,支持按目标语言翻译当前邮件内容。
- 配置化控制翻译开关与最大字符数,避免超长内容影响请求。
- 在邮件详情页增加翻译提示与译文切换,支持简体中文、繁體中文和英文。
- 补充翻译响应解析与截断逻辑的单元测试。
|
2026-06-27 13:22:45 +08:00 |
|
LanQin
|
587bd77f6a
|
docs(readme): 补充中文文档并更新英文说明
- 新增 `README.zh-CN.md`,完善简体中文使用说明。
- 重写 `README.md` 为英文版,并补充中英文入口链接。
- 统一整理功能特性、部署说明、环境变量和架构介绍。
|
2026-06-27 01:38:48 +08:00 |
|
LanQin
|
ef7af15010
|
i18n(web): 新增界面语言切换与自动翻译支持
- 新增语言状态管理、存储同步与 DOM 自动翻译能力,支持简体中文、繁體中文和英文。
- 在邮件页加入语言切换入口,并接入全局语言同步。
- 补充大量邮件界面文案翻译映射,提升多语言可用性。
|
2026-06-27 01:36:15 +08:00 |
|
LanQin
|
bce259ca8a
|
feat(mail): 优化外部邮箱侧边栏交互
Docker Release / Check web and api (push) Waiting to run
Docker Release / Resolve release tag (push) Blocked by required conditions
Docker Release / Build and publish all-in-one (push) Blocked by required conditions
Docker Release / Build and publish api (push) Blocked by required conditions
Docker Release / Build and publish web (push) Blocked by required conditions
Docker Release / Build and publish dovecot (push) Blocked by required conditions
Docker Release / Build and publish postfix (push) Blocked by required conditions
Docker Release / Build and publish rspamd (push) Blocked by required conditions
Docker Release / Create GitHub release (push) Blocked by required conditions
- 支持外部邮箱账号展开/收起,并在切换时自动保持当前账号展开。
- 增加外部邮箱显示主标题与副标题,提升账号信息可读性。
- 在外部 IMAP 关闭或账号列表变化时,清理已展开状态。
v1.0.8
|
2026-06-25 22:50:32 +08:00 |
|
LanQin
|
707f11687d
|
feat(external-imap): 新增外部 IMAP 全局开关与后台配置
- 支持在系统设置中启用/禁用外部 IMAP,并持久化相关密钥与 OAuth 配置。
- 在公共设置和前端页面中联动开关状态,未启用时隐藏外部 IMAP 相关功能并拦截后端接口。
- 补充外部 IMAP 默认关闭、配置说明与回调地址文档。
|
2026-06-25 22:44:32 +08:00 |
|
LanQin
|
cc75382869
|
fix(external_imap): 修复 IMAP 文件夹列表兼容性
- 在测试外部 IMAP 账号时,将文件夹列表失败提示改为更准确的错误信息。
- 为 OAuth XOAUTH2 认证和文件夹列表补充更明确的错误包装,便于定位问题。
- 对不支持 `LIST RETURN (STATUS ...)` 的 Outlook/Exchange 服务降级为普通 `LIST`,再单独查询文件夹状态。
|
2026-06-25 22:25:30 +08:00 |
|
LanQin
|
efcdc691de
|
refactor(app): 优化后台任务退出与外部 IMAP 认证
- 统一用 `WaitGroup` 管理后台 worker,关闭时等待任务结束后再释放数据库连接。
- 将外部 IMAP 的 OAuth 认证切换为 `XOAUTH2` 客户端实现,并补充对应格式测试。
- 调整发送队列的故障恢复逻辑,超时中断后恢复为排队状态以便重新投递。
|
2026-06-25 21:36:59 +08:00 |
|
LanQin
|
081cfad02d
|
feat(external_imap): 强化 OAuth 外部邮箱授权校验并完善 Outlook 文案
- OAuth 授权改为以服务商返回的真实邮箱为准,补充 ID Token 解析与邮箱一致性校验,避免默认落到本地邮箱。
- 为 Gmail 和 Microsoft 365 / Outlook OAuth 增加必要的 OIDC scope,并补充相关测试覆盖。
- Web 端新增 OAuth 授权弹窗,支持填写外部邮箱与存储模式;同步更新账号展示信息。
- 同步修正 README 与部署说明中的 Outlook 表述。
|
2026-06-25 21:17:04 +08:00 |
|
LanQin_
|
39f5249008
|
feat(mail): 增强外部 IMAP 接入能力。
- 新增 Gmail/Outlook OAuth2 授权接入、附件分片下载、服务端搜索与单文件夹同步历史。
- 扩展外部 IMAP 账户与同步任务数据结构,补充相关路由、配置和前端管理界面。
- 更新部署示例与文档,说明 OAuth 回调地址及后续邮件系统规划。
|
2026-06-25 20:20:37 +08:00 |
|
LanQin_
|
11734bf119
|
feat(mail): 支持外部 IMAP 账号接入。
- 新增外部 IMAP 账号的加密存储、同步任务与远端直连能力。
- Web 端个人邮箱页和邮件列表页支持查看、测试、同步和切换外部邮箱。
- 补充相关配置项、环境变量说明和使用文档。
|
2026-06-25 17:09:46 +08:00 |
|
LanQin_
|
2558aa96ed
|
refactor(mail): 统一右键菜单按钮样式
- 将邮件页右键菜单中的原生 `button` 替换为 `Button` 组件。
- 抽取通用按钮样式,统一打开、刷新、移动、标签等菜单项表现。
- 保持删除等危险操作的视觉强调一致。
|
2026-06-25 16:17:56 +08:00 |
|
LanQin_
|
98e7190512
|
feat(mail): 增强发送队列筛选与投递追踪能力
- 发送队列支持按 Message-ID、收件人和时间范围筛选,并改为稳定游标分页。
- 邮件详情补充关联的发送队列信息,支持从邮件直接查看投递时间线。
- 前端同步接入新筛选条件,并在发送队列页提供清除筛选入口。
|
2026-06-25 16:13:44 +08:00 |
|
LanQin_
|
4ab7815886
|
feat(mail): 支持删除自定义文件夹并回收邮件
- 后端新增文件夹删除接口,禁止删除系统文件夹,并将文件夹内邮件自动移回收件箱。
- 前端补充删除文件夹的 API 调用、侧边栏菜单入口和确认弹窗。
- 增加测试覆盖删除自定义文件夹后的邮件回收与系统文件夹保护。
|
2026-06-25 15:56:57 +08:00 |
|
LanQin_
|
361daf8693
|
feat(mail): 为侧边栏添加右键菜单操作
- 支持对侧边栏条目打开、刷新和新建文件夹。
- 为自定义文件夹增加置顶、上移、下移、置底操作。
|
2026-06-25 15:50:39 +08:00 |
|
LanQin_
|
d2a762a426
|
feat(mail): 支持自定义邮件文件夹排序
- 后端为 `folders` 增加 `sort_order`,并提供文件夹重排接口。
- 前端邮件侧边栏支持自定义文件夹拖拽排序与乐观更新。
- 补充文件夹排序相关测试,并同步更新 API 类型定义。
|
2026-06-25 15:42:36 +08:00 |
|
LanQin_
|
7799d5d5b2
|
feat(mail): 支持创建自定义文件夹与邮件右键操作
- 新增文件夹创建接口与服务端校验,支持创建自定义文件夹并在列表中使用。
- 为邮件列表补充右键菜单,支持打开、回复、转发、标记、归档、移动、打标签和删除。
- 规则编辑中的“移动到”动作支持自定义文件夹名称输入。
- 补充相关测试,覆盖文件夹创建与邮件移动流程。
|
2026-06-25 14:11:38 +08:00 |
|
LanQin_
|
07054ca342
|
refactor(mail): 精简邮件通知与元信息展示
- 点击新邮件提示可直接打开首封新邮件,并兼容键盘回车与空格操作。
- 移除邮件详情中的认证结果展示及相关类型定义,简化消息元信息结构。
|
2026-06-25 11:42:11 +08:00 |
|
LanQin_
|
84657f91f9
|
fix(toast): 修复 Toast 点击交互
- 为可点击的 Toast 添加指针样式,提升交互反馈。
- 阻止关闭按钮点击事件冒泡,避免触发外层点击逻辑。
|
2026-06-25 11:30:37 +08:00 |
|
LanQin
|
a5f5adf752
|
chore: 合并 Maildir 修复与 README 更新
|
2026-06-24 19:55:43 +08:00 |
|