qzl
|
a10a2db27a
|
feat: 添加视觉设计语言系统并重构认证页面UI
- 新增 visual_design_language.md 设计规范文档
- 新增 auth 设计 tokens (authBackground, authCard, authInput, feedback 系列等)
- 重构登录/注册/验证码/重置密码页面为新设计系统
- 新增 AuthHeroHeader, AuthSurfaceCard, AuthSection, AuthField, PasswordField 组件
- 重构 AppBanner 和 Toast 支持多类型配置 (info/success/warning/error)
- 后端 AgentScope: 重整 schemas/prompts/tools 作用域, 新增协议文档
- 更新 AGENTS.md 集成视觉设计语言约束
|
2026-03-13 14:10:13 +08:00 |
|
qzl
|
01c36eb32e
|
refactor: 移除前端 Mock API,新增共享组件,优化认证流程
- 删除 mock_api_client、mock_calendar_service、mock_history_service
- 新增 fixed_length_code_input、link_button、message_composer 共享组件
- 优化登录/注册/密码重置页面使用新组件
- 简化 injection.dart 移除 mock 分支
- 更新 env.dart 配置(BACKEND_URL 替换 API_URL)
- 后端 agentscope 工具和测试更新
- 重构 AGENTS.md 文档结构
- 新增 deploy/ 目录和 protocol 文档
|
2026-03-12 16:41:45 +08:00 |
|
qzl
|
18db6c50e7
|
fix(redis): 修复 Redis 流读取兼容性问题
- 支持 bytes 和 str 类型的 entry_id
- 支持 list 类型响应格式
- 优化 payload 解码处理
|
2026-03-11 21:33:25 +08:00 |
|
qzl
|
e20e7d2a02
|
feat: 增强日历功能并集成 AgentScope 代理服务
|
2026-03-11 15:28:29 +08:00 |
|
qzl
|
8dd48ec15b
|
feat: 重构认证页面使用 AuthPageScaffold 组件
|
2026-03-10 17:42:57 +08:00 |
|
zl-q
|
ec33bb0cee
|
refactor: 统一认证端点并删除冗余 profile 模块
- 合并 auth 端点: /verifications/verify → /verify, /verifications/resend → /resend
- 整合密码重置到 /verify 端点 (type=recovery)
- 移除未使用的 /auth/users 端点
- 添加 redirect URL 白名单验证 (site_url + additional_redirect_urls)
- 限流改用 Redis + IP 标识,替代内存锁
- 删除 v1/profile 死代码模块
- 更新前端 auth_api 适配新端点
- 添加 supabase site_url 和 additional_redirect_urls 配置
|
2026-03-07 14:55:00 +08:00 |
|
qzl
|
5e169251fe
|
refactor(apps): simplify API layer by removing redundant wrapper classes
- Remove ApiClientWrapper and MockApiClientWrapper
- Simplify IApiClient interface
- Update dependency injection configuration
- Optimize calendar service and AG-UI chat models
|
2026-03-03 10:12:46 +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
|
cc7a70d793
|
fix(auth): correct resend response type and improve error messages
|
2026-02-26 12:13:50 +08:00 |
|
qzl
|
11666e6492
|
fix(auth): validation toast and rate limit adjustment
|
2026-02-26 12:07:40 +08:00 |
|
qzl
|
56bee56415
|
fix(auth): fixed width resend button with border
|
2026-02-26 11:59:22 +08:00 |
|
qzl
|
76620cde6f
|
style(auth): simplify resend button to text link style
|
2026-02-26 11:53:06 +08:00 |
|
qzl
|
d50a1a0f8e
|
fix(auth): show validation error toast on register form
|
2026-02-26 11:40:49 +08:00 |
|
qzl
|
b80b9e795d
|
fix(auth): allow immediate resend on first send failure
|
2026-02-26 11:31:35 +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
|
656b2a1793
|
fix(auth): improve error toast trigger condition
|
2026-02-26 11:18:56 +08:00 |
|
qzl
|
74dc44b0b0
|
feat(auth): add toast feedback for code sending
|
2026-02-26 11:15:49 +08:00 |
|
qzl
|
8235ac5cd9
|
fix(auth): improve resendCode with status tracking and return value
|
2026-02-26 11:12:04 +08:00 |
|
qzl
|
d1e224ece4
|
fix(auth): reset countdown after resend and add sending state
|
2026-02-26 11:06:16 +08:00 |
|
qzl
|
25b8a2b569
|
feat(auth): improve resend button style with countdown
|
2026-02-26 11:02:30 +08:00 |
|
qzl
|
1f253c54e9
|
feat(auth): add countdown timer for resend button
|
2026-02-26 10:58:29 +08:00 |
|
qzl
|
deba6cc435
|
fix(auth): add navigation debounce for register next button
|
2026-02-26 10:52:44 +08:00 |
|
qzl
|
8f8b6ac263
|
feat(auth): optimistic navigation to verification screen
|
2026-02-26 10:48:48 +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
|
8c1dfa9987
|
feat(apps): integrate auth cubits with register and login screens
|
2026-02-25 15:21:26 +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 |
|
qzl
|
b00cfc80ab
|
feat(apps): add auth repository
|
2026-02-25 14:51:21 +08:00 |
|
qzl
|
bfec6ffd7d
|
feat(apps): add auth data models
|
2026-02-25 14:45:08 +08:00 |
|
qzl
|
02e5e52e1f
|
fix: add navigation links and account screen
- Fix empty onPressed handlers in login/home screens
- Add todo/calendar toggle navigation in bottom dock
- Fix message invite detail path (/messages/invites/:id)
- Add account screen with logout/switch account dialogs
- Add /settings/account route
|
2026-02-25 12:06:14 +08:00 |
|
qzl
|
4fb90de1f5
|
feat(flutter): add auth module with router and screens
- Add app_router.dart with auth routes (login, register)
- Update main.dart with MaterialApp.router
- Add 5 auth screens:
- LoginEmailScreen with email validation
- LoginPasswordScreen with password visibility toggle
- LoginCodeScreen with verification code input
- RegisterScreen with step indicator
- RegisterStep2Screen with password/code/invite inputs
|
2026-02-25 10:57:43 +08:00 |
|