qzl
2cdf075e92
feat: 添加用户行为分析功能
2026-04-01 18:35:32 +08:00
qzl
19aa33a609
fix: correct test failures and error propagation
...
- Add CacheScope provider in UserProfileCacheRepository tests
- Remove catch blocks that swallowed errors in _loadHistory/_loadMoreHistory
- Errors now properly propagate to switchUser() caller
2026-04-01 15:11:49 +08:00
qzl
63d225c567
feat(logging): add logging to auth feature
2026-04-01 14:28:30 +08:00
zl-q
60318b7aaa
chore: 更新国际化翻译及 UI 组件优化
2026-03-30 09:07:30 +08:00
zl-q
4db9a13bfe
refactor(apps): 重构数据层目录结构并新增启动预热编排器
2026-03-29 20:26:30 +08:00
qzl
ae29a8209b
refactor(apps): 主题系统迁移至 ColorScheme + 扩展架构并支持 Dark Mode
2026-03-27 19:07:39 +08:00
qzl
c592cc7854
feat(apps): 重构 UI 架构为 presentation 层并新增 l10n 国际化支持
2026-03-27 14:05:03 +08:00
qzl
fcf98b1142
feat(apps): refine login consent and calendar day/month UX
2026-03-20 19:00:24 +08:00
qzl
0661016827
feat(auth): transition from email to phone-based OTP authentication
...
- Replace Email+Password login with Phone+OTP flow
- Remove RegisterCubit and registration screens (email verification)
- Remove ResetPasswordCubit and reset password screens
- Add phone normalization and international dial code support
- Update LoginCubit with sendCode/resend cooldown logic
- Add new widgets: phone prefix selector, confirm sheet
- Update all auth API endpoints: /otp/send, /phone-session
- Update form inputs: Email -> Phone with E.164 validation
- Update tests for new auth flow
2026-03-19 18:42:05 +08:00
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