11 Commits

Author SHA1 Message Date
ddshi
e7b6864b42 feat: 设置中添加节假日配置功能
- 扩展设置选项:显示数量选择(1/3/5/10个)
- 添加仅显示法定节假日开关
- 添加节假日筛选功能:可选择关注特定节假日
- 更新 AnniversaryList 使用新设置进行过滤

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-28 10:23:49 +08:00
ddshi
2feb02becf feat: 实现浏览器通知提醒功能
- 添加 Service Worker 支持后台定时检查提醒
- 实现浏览器通知 API 集成
- 添加设置页面通知开关和测试功能
- 创建同步服务自动将提醒同步到 SW
- 优化提醒检查逻辑(30秒间隔,10分钟宽限期)

文件变更:
- public/sw.js: Service Worker 主文件
- public/sw-register.ts: SW 注册脚本
- public/manifest.json: PWA 清单文件
- src/services/notification.ts: 通知权限管理
- src/services/swSync.ts: 提醒同步服务
- src/stores/index.ts: 添加同步调用
- src/pages/SettingsPage.tsx: 添加通知开关和测试按钮

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-11 14:42:36 +08:00
ddshi
b39bc5c8bc fix: 修复提醒时间相关的 UTC 时区和继承问题
主要修复:
1. 时间存储格式统一使用 UTC 时区
   - HomePage.tsx: 修复 formDate 处理,使用 new Date() 自动转换
   - 解决用户设置"14:00"保存后显示"22:00"问题

2. 重复计算函数统一使用 UTC
   - calculateNextDueDate: 使用 getUTC*() 和 Date.UTC()
   - calculateReminderTimes: 使用 UTC 时间计算提醒点
   - getReminderValueFromTimes: 使用 UTC 时间戳反推选项

3. 修复重复提醒创建时继承 reminder_times
   - createNextRecurringEventData: 根据新日期重新计算 reminder_times
   - 修改接口类型支持 reminder_times 为 null
   - 解决原提醒"提前15分钟"新提醒变"准时"问题

影响:
- 提醒时间显示正确(无时区偏差)
- 跨天/跨月提醒计算正确
- 重复提醒自动创建时正确继承提醒设置

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-10 11:07:38 +08:00
ddshi
306cb41516 feat: 优化编辑窗口UI
- 优化日期时间选择器为组合布局(同一行按钮)
- 优先级改名为颜色
- 提醒类型移除农历选项
- 使用Popover优化选择器交互
2026-02-06 13:44:07 +08:00
ddshi
f0cbd0e33c feat: 完善提醒卡片右键菜单功能
- 优化checkbox样式:缩小尺寸(14px)、移除阴影、添加白色填充
- 调整布局:标题和内容左对齐
- 重构右键菜单为垂直分类布局:调整时间/颜色/操作
- 添加菜单边缘保护:自动计算位置避免超出浏览器
- 添加点击外部和ESC键关闭菜单
- 编辑弹窗优先级改为颜色圆点选择器
- 添加priority类型定义

🤖 Generated with Claude Code
2026-02-05 17:51:59 +08:00
ddshi
1559e603b0 feat: 实现重复提醒完成移除设置、逾期列表展开收起功能
- 重复提醒完成流程优化:
  - 勾选完成重复提醒后,自动移除repeat_type、repeat_interval、next_reminder_date
  - 自动创建下一周期的新提醒记录
  - 合并API调用,确保状态更新原子性

- 逾期列表展开/收起功能:
  - 默认收起,最多显示3条逾期提醒
  - 超过3条时显示"还有 X 个逾期提醒..."链接
  - 展开后底部显示"收起"按钮

- 时间显示优化:
  - 无时间提醒(00:00)只显示日期,不显示时间
  - 归档列表同样适用此规则

- 其他优化:
  - 归档抖动动画反馈
  - 分类折叠功能

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-04 13:51:38 +08:00
ddshi
9e4b4022bd feat: 优化提醒功能,修复状态保存问题
- 优化提醒分组逻辑,精确判断过期时间
- 已完成但未过期的提醒仍显示在主列表(划掉状态)
- 修复 checkbox 点击事件处理
- 添加乐观更新,UI 即时响应
- 添加归档页和设置页路由
- 修复后端 is_completed 字段验证问题
2026-02-03 13:19:06 +08:00
ddshi
a118346238 fix(auth): 修复登录持久化和路由重定向问题
- 注册成功后直接跳转首页,无需重新登录
- 优化useAuthLoader使用useRef避免闪烁
- 统一错误处理格式
- 修复HTML标签嵌套错误
- 添加XSS防护(rehype-sanitize)
- 修复API credentials配置

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-29 20:04:37 +08:00
ddshi
4dbf9b0bbc feat: 实现Home页四区布局
- 实现纪念日列表组件 (AnniversaryCard, AnniversaryList)
- 实现提醒列表组件 (ReminderCard, ReminderList)
- 实现便签编辑区 (NoteEditor) 带自动保存
- 实现AI对话框 (AIChatBox) 支持自然语言解析
- 更新HomePage实现四区布局和添加/编辑弹窗
- 更新类型定义和数据Store

Co-Authored-By: Claude (MiniMax-M2.1) <noreply@anthropic.com>
2026-01-29 15:30:33 +08:00
ddshi
8801591132 refactor: replace Supabase with self-hosted backend API 2026-01-29 12:58:49 +08:00
ddshi
e1f2c8d536 feat: configure Tailwind CSS, Mantine, Supabase client, and routing 2026-01-29 12:52:28 +08:00