From 6e51cb7d163bdd8dd0998c9c7a88209a8a9eb32b Mon Sep 17 00:00:00 2001 From: chenhang Date: Mon, 29 Jun 2026 11:31:21 +0800 Subject: [PATCH] Refactor: Remove original Dart references from comments across multiple files - Updated comments in various components, schemas, and repositories to remove references to original Dart files. - Ensured consistency in documentation while maintaining the context of the code. --- src/app/_components/core/bottom-sheet.module.css | 2 +- src/app/_components/core/bottom-sheet.tsx | 2 +- src/app/_components/core/dialog.tsx | 2 +- src/app/_components/core/loading-indicator.tsx | 2 +- src/app/_components/core/mobile-shell.tsx | 2 +- src/app/_components/core/settings-section.tsx | 2 +- src/app/auth/auth-screen.tsx | 2 +- src/app/auth/components/auth-divider.tsx | 2 +- src/app/auth/components/auth-email-panel.module.css | 2 +- src/app/auth/components/auth-email-panel.tsx | 2 +- src/app/auth/components/auth-error-message.module.css | 2 +- src/app/auth/components/auth-error-message.tsx | 2 +- src/app/auth/components/auth-facebook-panel.module.css | 2 +- src/app/auth/components/auth-facebook-panel.tsx | 2 +- src/app/auth/components/auth-legal-text.module.css | 2 +- src/app/auth/components/auth-legal-text.tsx | 2 +- .../auth/components/auth-other-options-dialog.module.css | 2 +- src/app/auth/components/auth-panel.module.css | 2 +- src/app/auth/components/auth-primary-button.module.css | 2 +- src/app/auth/components/auth-primary-button.tsx | 2 +- src/app/auth/components/auth-social-button.module.css | 2 +- src/app/auth/components/auth-social-button.tsx | 2 +- src/app/auth/components/auth-social-buttons.tsx | 2 +- src/app/auth/components/auth-text-field.module.css | 2 +- src/app/auth/components/auth-text-field.tsx | 2 +- src/app/auth/components/auth-validators.ts | 2 +- src/app/auth/components/email-form.module.css | 2 +- src/app/auth/components/email-register-form.tsx | 2 +- src/app/chat/chat-screen.tsx | 1 - src/app/chat/components/ai-disclosure-banner.tsx | 2 +- src/app/chat/components/browser-hint-overlay.tsx | 2 +- src/app/chat/components/chat-input-text-field.tsx | 2 +- src/app/chat/components/chat-send-button.tsx | 2 +- src/app/chat/components/date-header.tsx | 2 +- src/app/chat/components/fullscreen-image-viewer.tsx | 2 +- src/app/chat/components/language-dialog.tsx | 2 +- src/app/chat/components/lottie-message-bubble.tsx | 2 +- src/app/chat/components/message-bubble.tsx | 2 +- src/app/chat/components/pwa-install-dialog.module.css | 2 +- src/app/chat/components/pwa-install-dialog.tsx | 2 +- src/app/chat/components/text-bubble.tsx | 2 +- src/app/sidebar/sidebar-screen.tsx | 2 +- src/app/splash/components/splash-background.tsx | 2 +- src/app/splash/components/splash-loading.tsx | 2 +- src/app/splash/components/splash-progress.tsx | 2 +- src/core/breakpoints.ts | 2 +- src/core/net/config/api_config.ts | 2 +- src/core/net/interceptor/auth_refresh_interceptor.ts | 2 +- src/core/net/interceptor/logging_interceptor.ts | 2 +- src/core/net/interceptor/token_interceptor.ts | 2 +- src/data/dto/auth/auth_mode.ts | 2 +- src/data/dto/auth/auth_panel_mode.ts | 2 +- src/data/dto/auth/facebook_user_data.ts | 2 +- src/data/dto/chat/chat_list_item.ts | 2 +- src/data/dto/chat/ui_message.ts | 2 +- src/data/dto/user/user_view.ts | 2 +- src/data/repositories/auth_repository.ts | 2 +- src/data/repositories/interfaces/iauth_repository.ts | 2 +- src/data/repositories/interfaces/ichat_repository.ts | 2 +- src/data/repositories/interfaces/imetrics_repository.ts | 2 +- src/data/repositories/interfaces/iuser_repository.ts | 2 +- src/data/repositories/metrics_repository.ts | 2 -- src/data/repositories/user_repository.ts | 9 --------- src/data/schemas/auth/apple_login_request.ts | 2 +- src/data/schemas/auth/facebook_login_request.ts | 2 +- src/data/schemas/auth/facebook_user_data.ts | 2 +- src/data/schemas/auth/fb_id_login_request.ts | 2 +- src/data/schemas/auth/google_login_request.ts | 2 +- src/data/schemas/auth/guest_login_request.ts | 2 +- src/data/schemas/auth/guest_login_response.ts | 2 +- src/data/schemas/auth/login_request.ts | 2 +- src/data/schemas/auth/login_response.ts | 2 +- src/data/schemas/auth/logout_response.ts | 2 +- src/data/schemas/auth/refresh_token_request.ts | 2 +- src/data/schemas/auth/refresh_token_response.ts | 2 +- src/data/schemas/auth/register_request.ts | 2 +- src/data/schemas/auth/send_code_request.ts | 2 +- src/data/schemas/chat/chat_history_response.ts | 2 +- src/data/schemas/chat/chat_message.ts | 2 +- src/data/schemas/chat/chat_send_response.ts | 2 +- src/data/schemas/chat/chat_sync_data.ts | 2 +- src/data/schemas/chat/chat_sync_request.ts | 2 +- src/data/schemas/chat/image_upload_response.ts | 2 +- src/data/schemas/chat/send_message_request.ts | 2 +- src/data/schemas/chat/stt_data.ts | 2 +- src/data/schemas/chat/sync_message.ts | 2 +- src/data/schemas/metrics/app_event.ts | 2 +- src/data/schemas/metrics/pwa_event.ts | 2 +- src/data/schemas/user/avatar_data.ts | 2 +- src/data/schemas/user/credits_data.ts | 2 +- src/data/schemas/user/credits_history_data.ts | 2 +- src/data/schemas/user/personality_traits.ts | 2 +- src/data/schemas/user/recent_memory.ts | 2 +- src/data/schemas/user/update_profile_request.ts | 2 +- src/data/schemas/user/user.ts | 2 +- src/data/schemas/user/user_stats_response.ts | 2 +- src/data/services/api/api_path.ts | 2 +- src/data/services/api/auth_api.ts | 2 +- src/data/services/api/chat_api.ts | 2 +- src/data/services/api/http_client.ts | 2 +- src/data/services/api/metrics_api.ts | 2 +- src/data/services/api/response_helper.ts | 2 +- src/data/services/api/user_api.ts | 2 +- src/hooks/use-breakpoint.ts | 2 +- src/hooks/use-pull-to-refresh.ts | 2 +- src/integrations/media-recorder.ts | 2 +- src/lib/auth/auth_platform.ts | 2 +- src/lib/auth/logout.ts | 2 +- src/tokens/border-widths.css | 2 +- src/tokens/breakpoints.css | 2 +- src/tokens/colors.css | 2 +- src/tokens/dimensions.css | 2 +- src/tokens/icon-sizes.css | 2 +- src/tokens/radius.css | 2 +- src/tokens/spacing.css | 2 +- src/tokens/typography.css | 2 +- src/utils/app-env.ts | 2 +- src/utils/date.ts | 2 +- src/utils/device_identifier.ts | 2 +- 119 files changed, 116 insertions(+), 128 deletions(-) diff --git a/src/app/_components/core/bottom-sheet.module.css b/src/app/_components/core/bottom-sheet.module.css index 2ecccd2d..bd802a74 100644 --- a/src/app/_components/core/bottom-sheet.module.css +++ b/src/app/_components/core/bottom-sheet.module.css @@ -1,7 +1,7 @@ /** * 底部弹层样式 * - * 原始 Dart: showModalBottomSheet(透明背景,底部白卡 + 顶部圆角 radius28) + * */ .scrim { position: fixed; diff --git a/src/app/_components/core/bottom-sheet.tsx b/src/app/_components/core/bottom-sheet.tsx index b9b1a333..f765f678 100644 --- a/src/app/_components/core/bottom-sheet.tsx +++ b/src/app/_components/core/bottom-sheet.tsx @@ -2,7 +2,7 @@ /** * 通用底部弹层(Bottom Sheet) * - * 原始 Dart: 散落在各处的 `showModalBottomSheet`(auth_other_options_dialog 等) + * * * 设计目标: * - portal 渲染到 body diff --git a/src/app/_components/core/dialog.tsx b/src/app/_components/core/dialog.tsx index b3d47111..e6db488b 100644 --- a/src/app/_components/core/dialog.tsx +++ b/src/app/_components/core/dialog.tsx @@ -2,7 +2,7 @@ /** * 通用 Dialog 基础组件(headless + 简单样式) * - * 原始 Dart: 散落在各处的 `showDialog` + `Dialog` widget(quota_dialog, pwa_install_dialog, + * * username_dialog, pronouns_dialog, subscription_dialog, environment_dialog, auth_other_options_dialog, * facebook_login_dialog, external_browser_dialog)。 * diff --git a/src/app/_components/core/loading-indicator.tsx b/src/app/_components/core/loading-indicator.tsx index 9a9bb9c3..0593f270 100644 --- a/src/app/_components/core/loading-indicator.tsx +++ b/src/app/_components/core/loading-indicator.tsx @@ -2,7 +2,7 @@ /** * 通用加载指示器 * - * 原始 Dart: lib/ui/core/loading_indicator.dart + * * * 行为对齐 Flutter `CircularProgressIndicator`: * - `size`:圆圈直径(默认 32) diff --git a/src/app/_components/core/mobile-shell.tsx b/src/app/_components/core/mobile-shell.tsx index a0c432e0..52939c86 100644 --- a/src/app/_components/core/mobile-shell.tsx +++ b/src/app/_components/core/mobile-shell.tsx @@ -1,7 +1,7 @@ /** * 500px 移动端 Shell(Server Component) * - * 原始 Dart: 每个屏幕的 `Scaffold → SafeArea → Center → ConstrainedBox(maxWidth: 500)` 模式 + * * (`Breakpoints.mobileMaxWidth = 500.0`)。 * * 集中封装,调用方仅需 `{...}` 即可获得统一的移动端宽度约束。 diff --git a/src/app/_components/core/settings-section.tsx b/src/app/_components/core/settings-section.tsx index d8bcbc73..1bb6256b 100644 --- a/src/app/_components/core/settings-section.tsx +++ b/src/app/_components/core/settings-section.tsx @@ -2,7 +2,7 @@ /** * 设置项列表 Section * - * 原始 Dart: lib/ui/core/settings_section.dart + * * * 渲染一组 SettingItem:图标 + 标题 + 副标题/值 + 右侧 chevron + 可选 divider。 */ diff --git a/src/app/auth/auth-screen.tsx b/src/app/auth/auth-screen.tsx index 63d31746..6d611a65 100644 --- a/src/app/auth/auth-screen.tsx +++ b/src/app/auth/auth-screen.tsx @@ -2,7 +2,7 @@ /** * Auth 屏 * - * 原始 Dart: lib/ui/auth/auth_screen.dart + * */ import { useEffect, useSyncExternalStore } from "react"; import { useRouter } from "next/navigation"; diff --git a/src/app/auth/components/auth-divider.tsx b/src/app/auth/components/auth-divider.tsx index c6b61417..d51602f7 100644 --- a/src/app/auth/components/auth-divider.tsx +++ b/src/app/auth/components/auth-divider.tsx @@ -2,7 +2,7 @@ /** * "OR" 分隔符 * - * 原始 Dart: lib/ui/auth/widgets/auth_divider.dart + * */ import styles from "./auth-divider.module.css"; diff --git a/src/app/auth/components/auth-email-panel.module.css b/src/app/auth/components/auth-email-panel.module.css index bd95551f..f8ada505 100644 --- a/src/app/auth/components/auth-email-panel.module.css +++ b/src/app/auth/components/auth-email-panel.module.css @@ -1,4 +1,4 @@ -/* 原始 Dart: lib/ui/auth/widgets/auth_email_panel.dart +/* * * 视觉规格(与 Dart 对齐): * - 顶部:login 模式有 logo + 24px spacer;register 模式两个 24px spacer diff --git a/src/app/auth/components/auth-email-panel.tsx b/src/app/auth/components/auth-email-panel.tsx index 8350ab59..7142908f 100644 --- a/src/app/auth/components/auth-email-panel.tsx +++ b/src/app/auth/components/auth-email-panel.tsx @@ -2,7 +2,7 @@ /** * Email 面板(login/register 内部切换) * - * 原始 Dart: lib/ui/auth/widgets/auth_email_panel.dart + * * * 视觉规格(与 Dart 对齐): * - login 模式:顶部 24px spacer + logo(120h) + 24px gap diff --git a/src/app/auth/components/auth-error-message.module.css b/src/app/auth/components/auth-error-message.module.css index 608e3980..2b6d1328 100644 --- a/src/app/auth/components/auth-error-message.module.css +++ b/src/app/auth/components/auth-error-message.module.css @@ -1,4 +1,4 @@ -/* 原始 Dart: lib/ui/auth/widgets/auth_error_message.dart +/* * * 视觉规格(与 Dart 对齐): * - 细小红字,无背景,无圆角,无边框 diff --git a/src/app/auth/components/auth-error-message.tsx b/src/app/auth/components/auth-error-message.tsx index 99c43c46..8930edb0 100644 --- a/src/app/auth/components/auth-error-message.tsx +++ b/src/app/auth/components/auth-error-message.tsx @@ -2,7 +2,7 @@ /** * 错误消息展示 * - * 原始 Dart: lib/ui/auth/widgets/auth_error_message.dart + * */ import styles from "./auth-error-message.module.css"; diff --git a/src/app/auth/components/auth-facebook-panel.module.css b/src/app/auth/components/auth-facebook-panel.module.css index f1c55ce4..9830afef 100644 --- a/src/app/auth/components/auth-facebook-panel.module.css +++ b/src/app/auth/components/auth-facebook-panel.module.css @@ -1,4 +1,4 @@ -/* 原始 Dart: lib/ui/auth/widgets/auth_facebook_panel.dart +/* * * 视觉规格(与 Dart 对齐): * - Spacer → logo(120h)→ Spacer → Facebook 主按钮 → 链接 → Spacer → 法律 diff --git a/src/app/auth/components/auth-facebook-panel.tsx b/src/app/auth/components/auth-facebook-panel.tsx index 74800de7..2c0b7a2d 100644 --- a/src/app/auth/components/auth-facebook-panel.tsx +++ b/src/app/auth/components/auth-facebook-panel.tsx @@ -2,7 +2,7 @@ /** * Facebook 面板(默认登录面板) * - * 原始 Dart: lib/ui/auth/widgets/auth_facebook_panel.dart + * * * 视觉规格(与 Dart 对齐): * - Spacer → logo(120h)→ Spacer → Facebook 主按钮 → 链接 → Spacer → 法律 diff --git a/src/app/auth/components/auth-legal-text.module.css b/src/app/auth/components/auth-legal-text.module.css index 1a6c4a4e..e4d4d2c1 100644 --- a/src/app/auth/components/auth-legal-text.module.css +++ b/src/app/auth/components/auth-legal-text.module.css @@ -1,4 +1,4 @@ -/* 原始 Dart: lib/ui/auth/widgets/auth_legal_text.dart +/* * * 视觉规格(与 Dart 对齐): * - 行:16px 白色圆形复选框 + 12px 富文本 diff --git a/src/app/auth/components/auth-legal-text.tsx b/src/app/auth/components/auth-legal-text.tsx index 43dac5c8..d319d4a5 100644 --- a/src/app/auth/components/auth-legal-text.tsx +++ b/src/app/auth/components/auth-legal-text.tsx @@ -2,7 +2,7 @@ /** * 法律声明(Terms / Privacy + 复选框) * - * 原始 Dart: lib/ui/auth/widgets/auth_legal_text.dart + * * * 视觉规格(与 Dart 对齐): * - 行:16px 白色圆形复选框 + 12px 富文本 diff --git a/src/app/auth/components/auth-other-options-dialog.module.css b/src/app/auth/components/auth-other-options-dialog.module.css index c8e6a34d..e0410cc9 100644 --- a/src/app/auth/components/auth-other-options-dialog.module.css +++ b/src/app/auth/components/auth-other-options-dialog.module.css @@ -1,4 +1,4 @@ -/* 原始 Dart: lib/ui/auth/widgets/auth_other_options_dialog.dart +/* * * 视觉规格(与 Dart 对齐): * - drag handle 40×4 灰胶囊 diff --git a/src/app/auth/components/auth-panel.module.css b/src/app/auth/components/auth-panel.module.css index 9161dfe0..51303282 100644 --- a/src/app/auth/components/auth-panel.module.css +++ b/src/app/auth/components/auth-panel.module.css @@ -1,4 +1,4 @@ -/* 原始 Dart: lib/ui/auth/widgets/auth_panel.dart +/* * * 视觉规格(与 Dart 对齐): * - panelShell 包裹整个面板(position: relative) diff --git a/src/app/auth/components/auth-primary-button.module.css b/src/app/auth/components/auth-primary-button.module.css index 2d2fcf6f..046dfc76 100644 --- a/src/app/auth/components/auth-primary-button.module.css +++ b/src/app/auth/components/auth-primary-button.module.css @@ -1,4 +1,4 @@ -/* 原始 Dart: lib/ui/auth/widgets/auth_primary_button.dart +/* * * 视觉规格(与 Dart 对齐): * - 46px 高 diff --git a/src/app/auth/components/auth-primary-button.tsx b/src/app/auth/components/auth-primary-button.tsx index a85f50dd..363dcd58 100644 --- a/src/app/auth/components/auth-primary-button.tsx +++ b/src/app/auth/components/auth-primary-button.tsx @@ -2,7 +2,7 @@ /** * 认证主按钮(粉渐变,46px) * - * 原始 Dart: lib/ui/auth/widgets/auth_primary_button.dart + * * * 视觉规格(与 Dart 对齐): * - 46px 高 diff --git a/src/app/auth/components/auth-social-button.module.css b/src/app/auth/components/auth-social-button.module.css index b2822c79..f86c01a1 100644 --- a/src/app/auth/components/auth-social-button.module.css +++ b/src/app/auth/components/auth-social-button.module.css @@ -1,4 +1,4 @@ -/* 原始 Dart: lib/ui/auth/widgets/auth_social_button.dart +/* * * 视觉规格(与 Dart 弹层按钮对齐): * - 40px 高 diff --git a/src/app/auth/components/auth-social-button.tsx b/src/app/auth/components/auth-social-button.tsx index 760d08fc..1e3cddcd 100644 --- a/src/app/auth/components/auth-social-button.tsx +++ b/src/app/auth/components/auth-social-button.tsx @@ -2,7 +2,7 @@ /** * 社交/选项登录按钮(用于底部弹层) * - * 原始 Dart: lib/ui/auth/widgets/auth_social_button.dart + * * * 视觉规格(与 Dart 弹层按钮对齐): * - 40px 高 diff --git a/src/app/auth/components/auth-social-buttons.tsx b/src/app/auth/components/auth-social-buttons.tsx index 7ee28dc2..54f916cb 100644 --- a/src/app/auth/components/auth-social-buttons.tsx +++ b/src/app/auth/components/auth-social-buttons.tsx @@ -2,7 +2,7 @@ /** * 社交登录按钮组合 * - * 原始 Dart: lib/ui/auth/widgets/auth_social_buttons.dart + * * * 包含 Facebook / Google / Apple 三个按钮的竖排列表。 */ diff --git a/src/app/auth/components/auth-text-field.module.css b/src/app/auth/components/auth-text-field.module.css index 63e9c7a1..f6a23e09 100644 --- a/src/app/auth/components/auth-text-field.module.css +++ b/src/app/auth/components/auth-text-field.module.css @@ -1,4 +1,4 @@ -/* 原始 Dart: lib/ui/auth/widgets/auth_text_field.dart +/* * * 视觉规格(与 Dart 对齐): * - 46px 高 diff --git a/src/app/auth/components/auth-text-field.tsx b/src/app/auth/components/auth-text-field.tsx index f1a31597..372fb7a1 100644 --- a/src/app/auth/components/auth-text-field.tsx +++ b/src/app/auth/components/auth-text-field.tsx @@ -2,7 +2,7 @@ /** * 通用文本输入框 * - * 原始 Dart: lib/ui/auth/widgets/auth_text_field.dart + * */ import { type ChangeEvent, diff --git a/src/app/auth/components/auth-validators.ts b/src/app/auth/components/auth-validators.ts index 4153ed23..9b57c057 100644 --- a/src/app/auth/components/auth-validators.ts +++ b/src/app/auth/components/auth-validators.ts @@ -1,7 +1,7 @@ /** * 认证表单校验 * - * 原始 Dart: lib/ui/auth/widgets/auth_validators.dart + * * * 业务行为: * - validateEmail:使用 Zod (项目已有依赖) 校验邮箱格式 diff --git a/src/app/auth/components/email-form.module.css b/src/app/auth/components/email-form.module.css index c06e9c28..4b9a45ca 100644 --- a/src/app/auth/components/email-form.module.css +++ b/src/app/auth/components/email-form.module.css @@ -1,6 +1,6 @@ /* 邮箱登录/注册表单样式 * - * 原始 Dart: lib/ui/auth/widgets/email_login_form.dart + * * * 视觉规格(与 Dart 对齐): * - 字段间距 12px(Dart AppSpacing.md) diff --git a/src/app/auth/components/email-register-form.tsx b/src/app/auth/components/email-register-form.tsx index 7be6f5dc..9a9366c3 100644 --- a/src/app/auth/components/email-register-form.tsx +++ b/src/app/auth/components/email-register-form.tsx @@ -2,7 +2,7 @@ /** * 邮箱注册表单 * - * 原始 Dart: lib/ui/auth/widgets/email_register_form.dart + * * * 视觉规格(与 Dart 对齐): * - 4 字段:username / email / password / confirmPassword(顺序与 Dart 一致) diff --git a/src/app/chat/chat-screen.tsx b/src/app/chat/chat-screen.tsx index 876f24a1..e69ff14e 100644 --- a/src/app/chat/chat-screen.tsx +++ b/src/app/chat/chat-screen.tsx @@ -116,7 +116,6 @@ export function ChatScreen() { return (
- {/* 背景图(与原 Dart MobileLayout 一致) */}
`,splash 阶段可能用于等待 auth 检查。 */ diff --git a/src/app/splash/components/splash-progress.tsx b/src/app/splash/components/splash-progress.tsx index a10c7c51..17b21a48 100644 --- a/src/app/splash/components/splash-progress.tsx +++ b/src/app/splash/components/splash-progress.tsx @@ -1,7 +1,7 @@ /** * Splash 进度条 * - * 原始 Dart: lib/ui/splash/widgets/splash_progress.dart + * * * 当前实现:简单 CSS 动画进度条,0 → 100% 1.5s。 */ diff --git a/src/core/breakpoints.ts b/src/core/breakpoints.ts index 4f762202..16bd50b2 100644 --- a/src/core/breakpoints.ts +++ b/src/core/breakpoints.ts @@ -1,7 +1,7 @@ /** * 响应式断点常量 * - * 原始 Dart: lib/ui/core/responsive.dart + * * * 与 `src/design/breakpoints.css` 中的 CSS 变量保持一致: * - 客户端运行时检查(matchMedia)通过 `useBreakpoint` hook diff --git a/src/core/net/config/api_config.ts b/src/core/net/config/api_config.ts index 85e0f7d4..0ed59abd 100644 --- a/src/core/net/config/api_config.ts +++ b/src/core/net/config/api_config.ts @@ -2,7 +2,7 @@ * API 配置管理 * * 通过环境变量配置后端服务地址与超时时间。 - * 原始 Dart: lib/core/net/service_manager.dart + * */ import { AppEnvUtil, type AppEnv } from "@/utils"; diff --git a/src/core/net/interceptor/auth_refresh_interceptor.ts b/src/core/net/interceptor/auth_refresh_interceptor.ts index bf0e5fa1..10c7dbac 100644 --- a/src/core/net/interceptor/auth_refresh_interceptor.ts +++ b/src/core/net/interceptor/auth_refresh_interceptor.ts @@ -2,7 +2,7 @@ * 认证刷新拦截器 * * 处理 401 错误,自动刷新 token 并重试原请求。 - * 原始 Dart: lib/core/net/interceptor/auth_interceptor.dart + * */ import type { FetchHook } from "ofetch"; import { ApiPath } from "../../../data/services/api/api_path"; diff --git a/src/core/net/interceptor/logging_interceptor.ts b/src/core/net/interceptor/logging_interceptor.ts index 2064fd63..0051db95 100644 --- a/src/core/net/interceptor/logging_interceptor.ts +++ b/src/core/net/interceptor/logging_interceptor.ts @@ -2,7 +2,7 @@ * 日志拦截器 * * 在开发模式下记录请求/响应/错误日志。 - * 原始 Dart: lib/core/net/interceptor/app_interceptor.dart 中的日志部分。 + * */ import type { FetchHook } from "ofetch"; diff --git a/src/core/net/interceptor/token_interceptor.ts b/src/core/net/interceptor/token_interceptor.ts index 2cbca09c..58865347 100644 --- a/src/core/net/interceptor/token_interceptor.ts +++ b/src/core/net/interceptor/token_interceptor.ts @@ -3,7 +3,7 @@ * * 在请求头中注入 Authorization: Bearer 。 * 跳过不需要 token 的路径(登录、注册、发送验证码、刷新等)。 - * 原始 Dart: lib/core/net/interceptor/token_interceptor.dart + token_paths.dart + * */ import type { FetchHook } from "ofetch"; import { Logger } from "@/utils"; diff --git a/src/data/dto/auth/auth_mode.ts b/src/data/dto/auth/auth_mode.ts index 6ebd67c0..37bb179a 100644 --- a/src/data/dto/auth/auth_mode.ts +++ b/src/data/dto/auth/auth_mode.ts @@ -1,7 +1,7 @@ /** * 认证模式(登录 / 注册) * - * 原始 Dart: lib/ui/auth/model/auth_mode.dart + * */ export const AuthMode = { Login: "login", diff --git a/src/data/dto/auth/auth_panel_mode.ts b/src/data/dto/auth/auth_panel_mode.ts index d55d2414..c84cce62 100644 --- a/src/data/dto/auth/auth_panel_mode.ts +++ b/src/data/dto/auth/auth_panel_mode.ts @@ -1,7 +1,7 @@ /** * 认证面板模式(Facebook / Email) * - * 原始 Dart: lib/ui/auth/model/auth_panel_mode.dart + * */ export const AuthPanelMode = { Facebook: "facebook", diff --git a/src/data/dto/auth/facebook_user_data.ts b/src/data/dto/auth/facebook_user_data.ts index 29361bc9..f04fa071 100644 --- a/src/data/dto/auth/facebook_user_data.ts +++ b/src/data/dto/auth/facebook_user_data.ts @@ -1,7 +1,7 @@ /** * Facebook 用户数据 DTO * - * 原始 Dart: FacebookUserData (lib/data/services/auth/auth_platform.dart) + * */ import { FacebookUserDataSchema, diff --git a/src/data/dto/chat/chat_list_item.ts b/src/data/dto/chat/chat_list_item.ts index 2cea1c76..c1b42f0d 100644 --- a/src/data/dto/chat/chat_list_item.ts +++ b/src/data/dto/chat/chat_list_item.ts @@ -1,7 +1,7 @@ /** * 聊天列表项 discriminated union * - * 原始 Dart: lib/ui/chat/models/chat_list_item.dart + * * * 4 种类型: * - ai-disclosure:顶部 AI 披露横幅 diff --git a/src/data/dto/chat/ui_message.ts b/src/data/dto/chat/ui_message.ts index e9670ff5..647ac3d2 100644 --- a/src/data/dto/chat/ui_message.ts +++ b/src/data/dto/chat/ui_message.ts @@ -1,7 +1,7 @@ /** * 聊天 UI 消息模型 * - * 原始 Dart: lib/ui/chat/models/message.dart(freezed + json_serializable 生成) + * * * 字段:content、isFromAI、date、imageUrl(可选)、audioUrl(可选) */ diff --git a/src/data/dto/user/user_view.ts b/src/data/dto/user/user_view.ts index 8ae83448..8e01c26e 100644 --- a/src/data/dto/user/user_view.ts +++ b/src/data/dto/user/user_view.ts @@ -1,7 +1,7 @@ /** * UI 侧用户模型(基于 data/dto/user/user + user_storage 重新导出 view-model) * - * 原始 Dart: lib/data/models/user/user.dart + * */ import { z } from "zod"; diff --git a/src/data/repositories/auth_repository.ts b/src/data/repositories/auth_repository.ts index a228e10d..3f9ab922 100644 --- a/src/data/repositories/auth_repository.ts +++ b/src/data/repositories/auth_repository.ts @@ -10,7 +10,7 @@ * - `getCurrentUser` 成功后尽力写本地 User 缓存(不因缓存失败影响主流程) * - 写 storage 失败用 `Logger.warn` 记录,不让本地缓存失败影响主流程 * - * 原始 Dart: lib/data/repositories/auth_repository_impl.dart + * */ import { AuthApi, authApi } from "@/data/services/api"; import { diff --git a/src/data/repositories/interfaces/iauth_repository.ts b/src/data/repositories/interfaces/iauth_repository.ts index 5764b46a..70d28a20 100644 --- a/src/data/repositories/interfaces/iauth_repository.ts +++ b/src/data/repositories/interfaces/iauth_repository.ts @@ -10,7 +10,7 @@ * - 所有方法返回 `Promise>`,与 Dart `Future>` 对齐 * * 注:仓库内私有方法(`_socialLogin` / `_saveLoginData`)不暴露在接口上。 - * 原始 Dart: lib/data/repositories/auth_repository_impl.dart + * */ import type { Result } from "@/utils"; diff --git a/src/data/repositories/interfaces/ichat_repository.ts b/src/data/repositories/interfaces/ichat_repository.ts index 4a910cc6..751ee67b 100644 --- a/src/data/repositories/interfaces/ichat_repository.ts +++ b/src/data/repositories/interfaces/ichat_repository.ts @@ -8,7 +8,7 @@ * - 本地:写入 / 批量覆盖 / 读取 / 清空 / 计数 * * 私有助手(`_chatToLocal` / `_localToChat` / `_mapLocalStorageResult`)不暴露。 - * 原始 Dart: lib/data/repositories/chat_repository_impl.dart + * */ import type { Result } from "@/utils"; diff --git a/src/data/repositories/interfaces/imetrics_repository.ts b/src/data/repositories/interfaces/imetrics_repository.ts index 45e95f68..05dae80f 100644 --- a/src/data/repositories/interfaces/imetrics_repository.ts +++ b/src/data/repositories/interfaces/imetrics_repository.ts @@ -6,7 +6,7 @@ * 对齐 Dart 端 `MetricsRepository` 抽象(lib/data/repositories/metrics_repository.dart): * - 纯远程 fire-and-forget 上报,无本地状态 * - * 原始 Dart: lib/data/repositories/metrics_repository_impl.dart + * */ import type { Result } from "@/utils"; diff --git a/src/data/repositories/interfaces/iuser_repository.ts b/src/data/repositories/interfaces/iuser_repository.ts index c093d97a..7d0e72d2 100644 --- a/src/data/repositories/interfaces/iuser_repository.ts +++ b/src/data/repositories/interfaces/iuser_repository.ts @@ -6,7 +6,7 @@ * 对齐 Dart 端 `UserRepository` 抽象(lib/data/repositories/user_repository.dart): * - 纯远程调用,不直接写本地 storage(持久化由 AuthRepository 在登录流程中处理) * - * 原始 Dart: lib/data/repositories/user_repository_impl.dart + * */ import type { Result } from "@/utils"; diff --git a/src/data/repositories/metrics_repository.ts b/src/data/repositories/metrics_repository.ts index d0b4bbf4..a378e868 100644 --- a/src/data/repositories/metrics_repository.ts +++ b/src/data/repositories/metrics_repository.ts @@ -4,8 +4,6 @@ * MetricsRepository * * 指标/埋点仓库:纯远程 fire-and-forget 上报,无本地状态。 - * - * 原始 Dart: lib/data/repositories/metrics_repository_impl.dart */ import { MetricsApi, metricsApi } from "@/data/services/api"; import { AppEvent, PwaEvent } from "@/data/dto/metrics"; diff --git a/src/data/repositories/user_repository.ts b/src/data/repositories/user_repository.ts index 43ff20c3..59c4cef6 100644 --- a/src/data/repositories/user_repository.ts +++ b/src/data/repositories/user_repository.ts @@ -1,13 +1,4 @@ "use client"; - -/** - * UserRepository - * - * 用户信息仓库:纯远程调用,不直接写入本地 storage - * (用户数据持久化由 AuthRepository 在登录流程中统一处理)。 - * - * 原始 Dart: lib/data/repositories/user_repository_impl.dart - */ import { UserApi, userApi } from "@/data/services/api"; import { CreditsData, diff --git a/src/data/schemas/auth/apple_login_request.ts b/src/data/schemas/auth/apple_login_request.ts index 7edbb09c..c3a58b40 100644 --- a/src/data/schemas/auth/apple_login_request.ts +++ b/src/data/schemas/auth/apple_login_request.ts @@ -1,6 +1,6 @@ /** * Apple 登录请求 - * 原始 Dart: AppleLoginRequest (lib/data/models/auth/auth_request.dart) + * */ import { z } from "zod"; diff --git a/src/data/schemas/auth/facebook_login_request.ts b/src/data/schemas/auth/facebook_login_request.ts index 48af4794..df82c4ac 100644 --- a/src/data/schemas/auth/facebook_login_request.ts +++ b/src/data/schemas/auth/facebook_login_request.ts @@ -1,6 +1,6 @@ /** * Facebook 登录请求 - * 原始 Dart: FacebookLoginRequest (lib/data/models/auth/auth_request.dart) + * */ import { z } from "zod"; diff --git a/src/data/schemas/auth/facebook_user_data.ts b/src/data/schemas/auth/facebook_user_data.ts index 0389221b..4365c35c 100644 --- a/src/data/schemas/auth/facebook_user_data.ts +++ b/src/data/schemas/auth/facebook_user_data.ts @@ -1,6 +1,6 @@ /** * Facebook 用户数据 schema - * 原始 Dart: FacebookUserData (lib/data/services/auth/auth_platform.dart) + * * * 字段对齐 Dart 端 `String?` 可空语义:缺字段时存 `null`。 */ diff --git a/src/data/schemas/auth/fb_id_login_request.ts b/src/data/schemas/auth/fb_id_login_request.ts index 3efcf151..c551b641 100644 --- a/src/data/schemas/auth/fb_id_login_request.ts +++ b/src/data/schemas/auth/fb_id_login_request.ts @@ -1,6 +1,6 @@ /** * Facebook ID 登录请求 - * 原始 Dart: FbIdLoginRequest (lib/data/models/auth/auth_request.dart) + * */ import { z } from "zod"; diff --git a/src/data/schemas/auth/google_login_request.ts b/src/data/schemas/auth/google_login_request.ts index b3d81947..c0d9ebb1 100644 --- a/src/data/schemas/auth/google_login_request.ts +++ b/src/data/schemas/auth/google_login_request.ts @@ -1,6 +1,6 @@ /** * Google 登录请求 - * 原始 Dart: GoogleLoginRequest (lib/data/models/auth/auth_request.dart) + * */ import { z } from "zod"; diff --git a/src/data/schemas/auth/guest_login_request.ts b/src/data/schemas/auth/guest_login_request.ts index d67bf0d5..d7c7dcf6 100644 --- a/src/data/schemas/auth/guest_login_request.ts +++ b/src/data/schemas/auth/guest_login_request.ts @@ -1,6 +1,6 @@ /** * 游客登录请求 - * 原始 Dart: GuestLoginRequest (lib/data/models/auth/auth_request.dart) + * */ import { z } from "zod"; diff --git a/src/data/schemas/auth/guest_login_response.ts b/src/data/schemas/auth/guest_login_response.ts index 86e67eb1..667609dc 100644 --- a/src/data/schemas/auth/guest_login_response.ts +++ b/src/data/schemas/auth/guest_login_response.ts @@ -1,6 +1,6 @@ /** * 游客登录响应 - * 原始 Dart: GuestLoginResponse (lib/data/models/auth/auth_response.dart) + * */ import { z } from "zod"; import { UserSchema } from "../user/user"; diff --git a/src/data/schemas/auth/login_request.ts b/src/data/schemas/auth/login_request.ts index bdbcc324..aeb67e08 100644 --- a/src/data/schemas/auth/login_request.ts +++ b/src/data/schemas/auth/login_request.ts @@ -1,6 +1,6 @@ /** * 登录请求 - * 原始 Dart: LoginRequest (lib/data/models/auth/auth_request.dart) + * */ import { z } from "zod"; diff --git a/src/data/schemas/auth/login_response.ts b/src/data/schemas/auth/login_response.ts index c7f31063..7231abcf 100644 --- a/src/data/schemas/auth/login_response.ts +++ b/src/data/schemas/auth/login_response.ts @@ -1,6 +1,6 @@ /** * 登录响应 - * 原始 Dart: LoginResponse (lib/data/models/auth/auth_response.dart) + * */ import { z } from "zod"; import { UserSchema } from "../user/user"; diff --git a/src/data/schemas/auth/logout_response.ts b/src/data/schemas/auth/logout_response.ts index 01f4d2d6..c200d606 100644 --- a/src/data/schemas/auth/logout_response.ts +++ b/src/data/schemas/auth/logout_response.ts @@ -1,6 +1,6 @@ /** * 退出登录响应 - * 原始 Dart: LogoutResponse (lib/data/models/auth/auth_response.dart) + * */ import { z } from "zod"; diff --git a/src/data/schemas/auth/refresh_token_request.ts b/src/data/schemas/auth/refresh_token_request.ts index 4db3e522..a1cce575 100644 --- a/src/data/schemas/auth/refresh_token_request.ts +++ b/src/data/schemas/auth/refresh_token_request.ts @@ -1,6 +1,6 @@ /** * 刷新 Token 请求 - * 原始 Dart: RefreshTokenRequest (lib/data/models/auth/auth_request.dart) + * */ import { z } from "zod"; diff --git a/src/data/schemas/auth/refresh_token_response.ts b/src/data/schemas/auth/refresh_token_response.ts index d0a6fe5c..e8f323b9 100644 --- a/src/data/schemas/auth/refresh_token_response.ts +++ b/src/data/schemas/auth/refresh_token_response.ts @@ -1,6 +1,6 @@ /** * 刷新 Token 响应 - * 原始 Dart: RefreshTokenResponse (lib/data/models/auth/auth_response.dart) + * */ import { z } from "zod"; diff --git a/src/data/schemas/auth/register_request.ts b/src/data/schemas/auth/register_request.ts index 7afec37b..ad594ba3 100644 --- a/src/data/schemas/auth/register_request.ts +++ b/src/data/schemas/auth/register_request.ts @@ -1,6 +1,6 @@ /** * 注册请求 - * 原始 Dart: RegisterRequest (lib/data/models/auth/auth_request.dart) + * */ import { z } from "zod"; diff --git a/src/data/schemas/auth/send_code_request.ts b/src/data/schemas/auth/send_code_request.ts index 9ff3b115..4c7d64ca 100644 --- a/src/data/schemas/auth/send_code_request.ts +++ b/src/data/schemas/auth/send_code_request.ts @@ -1,6 +1,6 @@ /** * 发送验证码请求 - * 原始 Dart: SendCodeRequest (lib/data/models/auth/auth_request.dart) + * */ import { z } from "zod"; diff --git a/src/data/schemas/chat/chat_history_response.ts b/src/data/schemas/chat/chat_history_response.ts index 68a683d5..ad812a51 100644 --- a/src/data/schemas/chat/chat_history_response.ts +++ b/src/data/schemas/chat/chat_history_response.ts @@ -1,6 +1,6 @@ /** * 聊天历史响应 - * 原始 Dart: ChatHistoryResponse (lib/data/models/chat/chat_response.dart) + * */ import { z } from "zod"; import { ChatMessageSchema } from "./chat_message"; diff --git a/src/data/schemas/chat/chat_message.ts b/src/data/schemas/chat/chat_message.ts index e4c6d912..7a212f9b 100644 --- a/src/data/schemas/chat/chat_message.ts +++ b/src/data/schemas/chat/chat_message.ts @@ -1,6 +1,6 @@ /** * 聊天历史中的单条消息 - * 原始 Dart: ChatMessage (lib/data/models/chat/chat_response.dart) + * */ import { z } from "zod"; import { ChatImageSchema, ChatLockDetailSchema } from "./chat_payloads"; diff --git a/src/data/schemas/chat/chat_send_response.ts b/src/data/schemas/chat/chat_send_response.ts index c68e0a83..438b0d95 100644 --- a/src/data/schemas/chat/chat_send_response.ts +++ b/src/data/schemas/chat/chat_send_response.ts @@ -1,6 +1,6 @@ /** * 发送消息响应 - * 原始 Dart: ChatSendResponse (lib/data/models/chat/chat_response.dart) + * */ import { z } from "zod"; import { ChatImageSchema, ChatLockDetailSchema } from "./chat_payloads"; diff --git a/src/data/schemas/chat/chat_sync_data.ts b/src/data/schemas/chat/chat_sync_data.ts index a541880e..2929eb10 100644 --- a/src/data/schemas/chat/chat_sync_data.ts +++ b/src/data/schemas/chat/chat_sync_data.ts @@ -1,6 +1,6 @@ /** * 消息同步响应 - * 原始 Dart: ChatSyncData (lib/data/models/chat/chat_sync.dart) + * */ import { z } from "zod"; diff --git a/src/data/schemas/chat/chat_sync_request.ts b/src/data/schemas/chat/chat_sync_request.ts index 2995a544..2c2ce48d 100644 --- a/src/data/schemas/chat/chat_sync_request.ts +++ b/src/data/schemas/chat/chat_sync_request.ts @@ -1,6 +1,6 @@ /** * 消息同步请求 - * 原始 Dart: ChatSyncRequest (lib/data/models/chat/chat_sync.dart) + * */ import { z } from "zod"; import { SyncMessageSchema } from "./sync_message"; diff --git a/src/data/schemas/chat/image_upload_response.ts b/src/data/schemas/chat/image_upload_response.ts index 569734c7..ba220375 100644 --- a/src/data/schemas/chat/image_upload_response.ts +++ b/src/data/schemas/chat/image_upload_response.ts @@ -1,6 +1,6 @@ /** * 图片上传响应 - * 原始 Dart: ImageUploadResponse (lib/data/models/chat/image_upload_response.dart) + * */ import { z } from "zod"; diff --git a/src/data/schemas/chat/send_message_request.ts b/src/data/schemas/chat/send_message_request.ts index 445f065e..c0d0df6f 100644 --- a/src/data/schemas/chat/send_message_request.ts +++ b/src/data/schemas/chat/send_message_request.ts @@ -1,6 +1,6 @@ /** * 发送消息请求 - * 原始 Dart: SendMessageRequest (lib/data/models/chat/send_message_request.dart) + * */ import { z } from "zod"; diff --git a/src/data/schemas/chat/stt_data.ts b/src/data/schemas/chat/stt_data.ts index 75a3315f..f542642b 100644 --- a/src/data/schemas/chat/stt_data.ts +++ b/src/data/schemas/chat/stt_data.ts @@ -1,6 +1,6 @@ /** * STT(语音转文字)响应 - * 原始 Dart: SttData (lib/data/models/chat/stt_response.dart) + * */ import { z } from "zod"; diff --git a/src/data/schemas/chat/sync_message.ts b/src/data/schemas/chat/sync_message.ts index cd05666b..8237547e 100644 --- a/src/data/schemas/chat/sync_message.ts +++ b/src/data/schemas/chat/sync_message.ts @@ -1,6 +1,6 @@ /** * 待同步的单条消息 - * 原始 Dart: SyncMessage (lib/data/models/chat/chat_sync.dart) + * */ import { z } from "zod"; diff --git a/src/data/schemas/metrics/app_event.ts b/src/data/schemas/metrics/app_event.ts index 1dd832c9..731bebf3 100644 --- a/src/data/schemas/metrics/app_event.ts +++ b/src/data/schemas/metrics/app_event.ts @@ -1,6 +1,6 @@ /** * 应用事件上报请求 - * 原始 Dart: AppEvent (lib/data/models/metrics/app_event.dart) + * */ import { z } from "zod"; diff --git a/src/data/schemas/metrics/pwa_event.ts b/src/data/schemas/metrics/pwa_event.ts index 56c80d1a..4610f775 100644 --- a/src/data/schemas/metrics/pwa_event.ts +++ b/src/data/schemas/metrics/pwa_event.ts @@ -1,6 +1,6 @@ /** * PWA 事件上报请求 - * 原始 Dart: PwaEvent (lib/data/models/metrics/pwa_event.dart) + * */ import { z } from "zod"; diff --git a/src/data/schemas/user/avatar_data.ts b/src/data/schemas/user/avatar_data.ts index a985c8c4..1d00b7b3 100644 --- a/src/data/schemas/user/avatar_data.ts +++ b/src/data/schemas/user/avatar_data.ts @@ -1,6 +1,6 @@ /** * 头像数据模型 - * 原始 Dart: AvatarData (lib/data/models/user/user.dart) + * */ import { z } from "zod"; diff --git a/src/data/schemas/user/credits_data.ts b/src/data/schemas/user/credits_data.ts index aae7a373..e72fa12c 100644 --- a/src/data/schemas/user/credits_data.ts +++ b/src/data/schemas/user/credits_data.ts @@ -1,6 +1,6 @@ /** * 积分数据模型 - * 原始 Dart: CreditsData (lib/data/models/user/user.dart) + * */ import { z } from "zod"; diff --git a/src/data/schemas/user/credits_history_data.ts b/src/data/schemas/user/credits_history_data.ts index 0b531479..b81f3bdf 100644 --- a/src/data/schemas/user/credits_history_data.ts +++ b/src/data/schemas/user/credits_history_data.ts @@ -1,6 +1,6 @@ /** * 积分历史记录模型 - * 原始 Dart: CreditsHistoryData (lib/data/models/user/user.dart) + * */ import { z } from "zod"; diff --git a/src/data/schemas/user/personality_traits.ts b/src/data/schemas/user/personality_traits.ts index 73799c35..955a9160 100644 --- a/src/data/schemas/user/personality_traits.ts +++ b/src/data/schemas/user/personality_traits.ts @@ -1,6 +1,6 @@ /** * 个性特征模型 - * 原始 Dart: PersonalityTraits (lib/data/models/user/user.dart) + * */ import { z } from "zod"; diff --git a/src/data/schemas/user/recent_memory.ts b/src/data/schemas/user/recent_memory.ts index 2b052a1a..130fb74b 100644 --- a/src/data/schemas/user/recent_memory.ts +++ b/src/data/schemas/user/recent_memory.ts @@ -1,6 +1,6 @@ /** * 最近记忆模型 - * 原始 Dart: RecentMemory (lib/data/models/user/recent_memory.dart) + * */ import { z } from "zod"; diff --git a/src/data/schemas/user/update_profile_request.ts b/src/data/schemas/user/update_profile_request.ts index 574c55a3..c9c6e64d 100644 --- a/src/data/schemas/user/update_profile_request.ts +++ b/src/data/schemas/user/update_profile_request.ts @@ -1,6 +1,6 @@ /** * 更新个人资料请求 - * 原始 Dart: UpdateProfileRequest (lib/data/models/user/user.dart) + * */ import { z } from "zod"; diff --git a/src/data/schemas/user/user.ts b/src/data/schemas/user/user.ts index a49a0adf..f5910d0c 100644 --- a/src/data/schemas/user/user.ts +++ b/src/data/schemas/user/user.ts @@ -1,6 +1,6 @@ /** * 用户模型 - * 原始 Dart: User (lib/data/models/user/user.dart) + * */ import { z } from "zod"; import { PersonalityTraitsSchema, PERSONALITY_TRAITS_DEFAULTS } from "./personality_traits"; diff --git a/src/data/schemas/user/user_stats_response.ts b/src/data/schemas/user/user_stats_response.ts index 0fb987c2..a1fce600 100644 --- a/src/data/schemas/user/user_stats_response.ts +++ b/src/data/schemas/user/user_stats_response.ts @@ -1,6 +1,6 @@ /** * 用户统计响应 - * 原始 Dart: UserStatsResponse (lib/data/models/user/user_stats_response.dart) + * */ import { z } from "zod"; import { PersonalityTraitsSchema, PERSONALITY_TRAITS_DEFAULTS } from "./personality_traits"; diff --git a/src/data/services/api/api_path.ts b/src/data/services/api/api_path.ts index 6f2c91c8..73357f06 100644 --- a/src/data/services/api/api_path.ts +++ b/src/data/services/api/api_path.ts @@ -1,7 +1,7 @@ /** * API 路径管理 * 统一管理所有接口路径 - * 原始 Dart: lib/data/services/api/api_path.dart + * */ export class ApiPath { private constructor() {} diff --git a/src/data/services/api/auth_api.ts b/src/data/services/api/auth_api.ts index 7c5f4330..c292552b 100644 --- a/src/data/services/api/auth_api.ts +++ b/src/data/services/api/auth_api.ts @@ -2,7 +2,7 @@ * Auth API * * 认证相关接口 - * 原始 Dart: lib/data/services/api/auth_api_client.dart + * */ import { z } from "zod"; diff --git a/src/data/services/api/chat_api.ts b/src/data/services/api/chat_api.ts index d60af6bd..7926957a 100644 --- a/src/data/services/api/chat_api.ts +++ b/src/data/services/api/chat_api.ts @@ -2,7 +2,7 @@ * Chat API * * 聊天相关接口 - * 原始 Dart: lib/data/services/api/chat_api_client.dart + * */ import { httpClient } from "./http_client"; import { ApiPath } from "./api_path"; diff --git a/src/data/services/api/http_client.ts b/src/data/services/api/http_client.ts index fa94a6fd..be1fff5f 100644 --- a/src/data/services/api/http_client.ts +++ b/src/data/services/api/http_client.ts @@ -2,7 +2,7 @@ * HTTP 客户端工厂 * * 创建配置好拦截器的 ofetch 实例。 - * 原始 Dart: lib/core/net/backend_service.dart + * */ import { ofetch, type $Fetch, type FetchHook } from "ofetch"; import { ApiError, ErrorCode } from "./api_result"; diff --git a/src/data/services/api/metrics_api.ts b/src/data/services/api/metrics_api.ts index 78ebc402..4311a039 100644 --- a/src/data/services/api/metrics_api.ts +++ b/src/data/services/api/metrics_api.ts @@ -2,7 +2,7 @@ * Metrics API * * 数据看板/上报相关接口 - * 原始 Dart: lib/data/services/api/metrics_api_client.dart + * */ import { httpClient } from "./http_client"; import { ApiPath } from "./api_path"; diff --git a/src/data/services/api/response_helper.ts b/src/data/services/api/response_helper.ts index fb14ba09..ff58efe4 100644 --- a/src/data/services/api/response_helper.ts +++ b/src/data/services/api/response_helper.ts @@ -8,7 +8,7 @@ * 行为升级:失败时抛 `ApiError`(`ApiError extends Error`),而不是裸 `Error`。 * 这样调用方在 `Result.err` 内能 `instanceof ApiError` 检查 `.code` / `.status`。 * - * 原始 Dart: lib/data/services/api/api_client.dart 的 `NetResult` 解析。 + * */ import { ApiError, ErrorCode } from "./api_result"; diff --git a/src/data/services/api/user_api.ts b/src/data/services/api/user_api.ts index 8f82ad75..2118da2b 100644 --- a/src/data/services/api/user_api.ts +++ b/src/data/services/api/user_api.ts @@ -2,7 +2,7 @@ * User API * * 用户相关接口 - * 原始 Dart: lib/data/services/api/user_api_client.dart + * */ import { httpClient } from "./http_client"; import { ApiPath } from "./api_path"; diff --git a/src/hooks/use-breakpoint.ts b/src/hooks/use-breakpoint.ts index 63596a96..f28277e6 100644 --- a/src/hooks/use-breakpoint.ts +++ b/src/hooks/use-breakpoint.ts @@ -2,7 +2,7 @@ /** * 响应式断点 hook * - * 原始 Dart: lib/ui/core/responsive.dart 的 `Responsive` widget + `isDesktop/isTablet/isMobile` 静态方法。 + * * * 实现要点(与 `src/lib/auth/use-auth-gate.tsx` 同款 `useSyncExternalStore` 模式): * - `subscribe` 监听 3 个 media query 的 change 事件,调用方重读 snapshot。 diff --git a/src/hooks/use-pull-to-refresh.ts b/src/hooks/use-pull-to-refresh.ts index e85521ae..929ae408 100644 --- a/src/hooks/use-pull-to-refresh.ts +++ b/src/hooks/use-pull-to-refresh.ts @@ -2,7 +2,7 @@ /** * 下拉刷新 hook(占位实现) * - * 原始 Dart: `easy_refresh` 包的 `EasyRefresh.builder`(chat_area.dart 用来加载更多历史消息)。 + * * * 当前实现:最小可用版本 —— 监听顶部 overscroll 触发 onRefresh。 * 后续可替换为 react-use / react-easy-refresh。 diff --git a/src/integrations/media-recorder.ts b/src/integrations/media-recorder.ts index 4896636f..57b058f0 100644 --- a/src/integrations/media-recorder.ts +++ b/src/integrations/media-recorder.ts @@ -1,7 +1,7 @@ /** * 语音输入:Web Speech API + MediaRecorder * - * 原始 Dart: `speech_to_text` 包(`lib/ui/chat/widgets/voice_input_button.dart`)。 + * * * 浏览器方案: * - 首选 Web Speech API (`SpeechRecognition` / `webkitSpeechRecognition`):实时转写。 diff --git a/src/lib/auth/auth_platform.ts b/src/lib/auth/auth_platform.ts index a621e47c..f82e0ec8 100644 --- a/src/lib/auth/auth_platform.ts +++ b/src/lib/auth/auth_platform.ts @@ -13,7 +13,7 @@ * 4. 重定向到 callbackUrl (默认 /chat) * * 不做任何持久化(不写 unstorage / 不调后端 / 不设自定义 cookie)。 - * 原始 Dart: nextauth-helpers.{googleLogin, facebookLogin}() + * */ import { signIn } from "next-auth/react"; diff --git a/src/lib/auth/logout.ts b/src/lib/auth/logout.ts index 8251ef61..92c3ac3f 100644 --- a/src/lib/auth/logout.ts +++ b/src/lib/auth/logout.ts @@ -4,7 +4,7 @@ * * 调用 `signOut()` 清除 NextAuth session cookie 并重定向。 * 不做任何持久化(不写 unstorage / 不调后端 / 不设自定义 cookie)。 - * 原始 Dart: nextauth-helpers.logout() + * */ import { signOut } from "next-auth/react"; diff --git a/src/tokens/border-widths.css b/src/tokens/border-widths.css index 65b1823f..cd8285d0 100644 --- a/src/tokens/border-widths.css +++ b/src/tokens/border-widths.css @@ -1,6 +1,6 @@ /** * 边框宽度 token - * 原始 Dart: lib/design/border_widths.dart + * */ @theme { --border-thin: 0.5px; diff --git a/src/tokens/breakpoints.css b/src/tokens/breakpoints.css index 8574bde6..fc5ae0f5 100644 --- a/src/tokens/breakpoints.css +++ b/src/tokens/breakpoints.css @@ -1,6 +1,6 @@ /** * 响应式断点 token - * 原始 Dart: lib/ui/core/responsive.dart + * */ :root { --bp-mobile-max: 599.98px; diff --git a/src/tokens/colors.css b/src/tokens/colors.css index 4edab726..f22a0130 100644 --- a/src/tokens/colors.css +++ b/src/tokens/colors.css @@ -1,6 +1,6 @@ /** * 颜色 token - * 原始 Dart: lib/design/colors.dart (light 主题) + * * * 使用 `@theme` 直接声明,Tailwind 4 自动生成 utility 类: * - bg-accent / text-primary / border-error diff --git a/src/tokens/dimensions.css b/src/tokens/dimensions.css index baf2529f..f03b3d7a 100644 --- a/src/tokens/dimensions.css +++ b/src/tokens/dimensions.css @@ -1,6 +1,6 @@ /** * 固定尺寸 token - * 原始 Dart: lib/design/app_dimensions.dart + * * * 注:这些是不应通过 Tailwind 缩放变化的硬尺寸(如按钮高度、对话框宽度) */ diff --git a/src/tokens/icon-sizes.css b/src/tokens/icon-sizes.css index d101af9c..1d69884d 100644 --- a/src/tokens/icon-sizes.css +++ b/src/tokens/icon-sizes.css @@ -1,6 +1,6 @@ /** * 图标尺寸 token - * 原始 Dart: lib/design/icon_sizes.dart + * */ @theme { --icon-size-sm: 16px; diff --git a/src/tokens/radius.css b/src/tokens/radius.css index 75998fb5..2dce3c95 100644 --- a/src/tokens/radius.css +++ b/src/tokens/radius.css @@ -1,6 +1,6 @@ /** * 圆角 token - * 原始 Dart: lib/design/radius.dart + * */ @theme { --radius-sm: 4px; diff --git a/src/tokens/spacing.css b/src/tokens/spacing.css index 266cfd4f..72353542 100644 --- a/src/tokens/spacing.css +++ b/src/tokens/spacing.css @@ -1,6 +1,6 @@ /** * 间距 token - * 原始 Dart: lib/design/spacing.dart + * */ @theme { --spacing-xs: 4px; diff --git a/src/tokens/typography.css b/src/tokens/typography.css index c4dbf459..666cd430 100644 --- a/src/tokens/typography.css +++ b/src/tokens/typography.css @@ -1,6 +1,6 @@ /** * 字体 token - * 原始 Dart: lib/design/fonts.dart + font_sizes.dart + * * * body 使用跨平台系统字体栈 * Athelas 为 Apple 平台专用字体(通过 `next/font/local` 加载) diff --git a/src/utils/app-env.ts b/src/utils/app-env.ts index 1e7e5b74..ab24a2f0 100644 --- a/src/utils/app-env.ts +++ b/src/utils/app-env.ts @@ -1,7 +1,7 @@ /** * 应用环境检测 * - * 原始 Dart: lib/utils/app_env_util.dart + * * * 基于 `.env*` 中的 `NEXT_PUBLIC_APP_ENV` 判断当前业务环境。 * diff --git a/src/utils/date.ts b/src/utils/date.ts index 0fb26dd9..8f30eec5 100644 --- a/src/utils/date.ts +++ b/src/utils/date.ts @@ -1,7 +1,7 @@ /** * 日期工具 * - * 原始 Dart: lib/utils/date_utils.dart(app_date_utils.DateUtils) + * * * 业务侧用 `formatDate(date)` 生成聊天时间戳,`todayString()` 用于每日配额 key。 */ diff --git a/src/utils/device_identifier.ts b/src/utils/device_identifier.ts index 4c29691f..56efeaae 100644 --- a/src/utils/device_identifier.ts +++ b/src/utils/device_identifier.ts @@ -5,7 +5,7 @@ * * 生产环境使用 fingerprintjs 生成客户端设备指纹。 * 非生产环境使用本地 UUID,避免开发 / 预发布调试依赖真实设备指纹。 - * 原始 Dart: lib/data/services/device_id_service_impl.dart + * * * 注:仅在浏览器环境可用;SSR/Server Components 中调用会抛错。 */