Commit Graph

12 Commits

Author SHA1 Message Date
qzl b34697660d feat: 实现 Auth 全局状态机与 401 统一处理机制
- 新增 AuthSessionInvalidated 事件处理 token 失效场景
- ApiInterceptor 新增 authFailureCallback 单飞机制
- AuthBloc 区分 manual logout 与 auto expiry 语义
- 新增 startup recovery fallback 防止启动卡死

feat: 重构 Calendar DayWeek 视图事件布局引擎

- 新增 DayEventLayoutEngine 解耦事件计算与渲染
- 新增 DayTimelineMetrics 统一时间轴常量
- 新增 DayViewScale 支持捏合缩放

feat: 新增 Settings 页面共享 UI 组件

- 新增 BackTitlePageHeader 统一页面 header
- 新增 DetailHeaderActionMenu 统一操作菜单
- 新增 DestructiveActionSheet 统一删除确认
- 新增 AppToggleSwitch 统一开关组件

feat: Chat UI Schema 支持导航操作

- 支持 navigation 类型 action 触发内部路由跳转
- 新增路径验证与参数处理

chore: 更新相关测试覆盖 auth 失效路径
2026-03-18 13:35:25 +08:00
qzl e4e995854d feat: 实现密码重置功能与用户搜索API,优化注册登录流程
- 新增忘记密码页面与重置密码确认流程(前端+后端)
- 修复注册验证码页登录跳转路由
- 新增用户搜索API(按邮箱查询)
- 简化infra脚本,统一为app.sh
- 补充密码重置与用户API测试覆盖
- 更新runtime文档与AGENTS配置
2026-02-27 15:22:42 +08:00
qzl d635d9a5e0 refactor(frontend): adapt to RESTful API routes 2026-02-26 14:28:58 +08:00
qzl a6fbf70ad5 fix(auth): reset state properly in sendCodeSilently 2026-02-26 11:28:33 +08:00
qzl 4f9889bb3f fix(auth): set failure status on sendCodeSilently error 2026-02-26 11:25:51 +08:00
qzl 8235ac5cd9 fix(auth): improve resendCode with status tracking and return value 2026-02-26 11:12:04 +08:00
qzl 8e8bcfa4f5 fix(auth): prevent concurrent sendCodeSilently and add edge case tests 2026-02-26 10:46:16 +08:00
qzl 175da2a8b7 feat(auth): add sendCodeSilently with isSending state 2026-02-26 10:37:02 +08:00
qzl e20b1905cb fix(apps): consolidate FormzInput validators and fix login screen
- Move FormzInput validators to core/form_inputs/form_inputs.dart
- Fix login_screen.dart syntax error (missing 'class' keyword)
- Remove unused _isLoading field
- Fix unnecessary const keywords
- Update login_cubit and register_cubit imports
- Remove duplicate FormzInput definitions from register_cubit
- Add Toast and Banner UI feedback system
- Remove legacy login/register screens (login_code, login_email, login_password, register_step2)
- Remove unused warning_banner widget
- Update tests for new error messages and DI setup
2026-02-25 18:00:02 +08:00
qzl c9195b81b6 feat(apps): add LoginCubit for login form 2026-02-25 15:09:29 +08:00
qzl 89d2722241 feat(apps): add RegisterCubit for signup form 2026-02-25 15:05:29 +08:00
qzl 9b51c8b293 feat(apps): add AuthBloc for global auth state 2026-02-25 14:59:20 +08:00