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.
This commit is contained in:
2026-06-29 11:31:21 +08:00
parent cdaf3cc365
commit 6e51cb7d16
119 changed files with 116 additions and 128 deletions
@@ -1,7 +1,7 @@
/** /**
* 底部弹层样式 * 底部弹层样式
* *
* 原始 Dart: showModalBottomSheet(透明背景,底部白卡 + 顶部圆角 radius28) *
*/ */
.scrim { .scrim {
position: fixed; position: fixed;
+1 -1
View File
@@ -2,7 +2,7 @@
/** /**
* 通用底部弹层(Bottom Sheet * 通用底部弹层(Bottom Sheet
* *
* 原始 Dart: 散落在各处的 `showModalBottomSheet`auth_other_options_dialog 等) *
* *
* 设计目标: * 设计目标:
* - portal 渲染到 body * - portal 渲染到 body
+1 -1
View File
@@ -2,7 +2,7 @@
/** /**
* 通用 Dialog 基础组件(headless + 简单样式) * 通用 Dialog 基础组件(headless + 简单样式)
* *
* 原始 Dart: 散落在各处的 `showDialog` + `Dialog` widgetquota_dialog, pwa_install_dialog, *
* username_dialog, pronouns_dialog, subscription_dialog, environment_dialog, auth_other_options_dialog, * username_dialog, pronouns_dialog, subscription_dialog, environment_dialog, auth_other_options_dialog,
* facebook_login_dialog, external_browser_dialog)。 * facebook_login_dialog, external_browser_dialog)。
* *
@@ -2,7 +2,7 @@
/** /**
* 通用加载指示器 * 通用加载指示器
* *
* 原始 Dart: lib/ui/core/loading_indicator.dart *
* *
* 行为对齐 Flutter `CircularProgressIndicator` * 行为对齐 Flutter `CircularProgressIndicator`
* - `size`:圆圈直径(默认 32 * - `size`:圆圈直径(默认 32
+1 -1
View File
@@ -1,7 +1,7 @@
/** /**
* 500px 移动端 ShellServer Component * 500px 移动端 ShellServer Component
* *
* 原始 Dart: 每个屏幕的 `Scaffold → SafeArea → Center → ConstrainedBox(maxWidth: 500)` 模式 *
* `Breakpoints.mobileMaxWidth = 500.0`)。 * `Breakpoints.mobileMaxWidth = 500.0`)。
* *
* 集中封装,调用方仅需 `<MobileShell>{...}</MobileShell>` 即可获得统一的移动端宽度约束。 * 集中封装,调用方仅需 `<MobileShell>{...}</MobileShell>` 即可获得统一的移动端宽度约束。
@@ -2,7 +2,7 @@
/** /**
* 设置项列表 Section * 设置项列表 Section
* *
* 原始 Dart: lib/ui/core/settings_section.dart *
* *
* 渲染一组 SettingItem:图标 + 标题 + 副标题/值 + 右侧 chevron + 可选 divider。 * 渲染一组 SettingItem:图标 + 标题 + 副标题/值 + 右侧 chevron + 可选 divider。
*/ */
+1 -1
View File
@@ -2,7 +2,7 @@
/** /**
* Auth 屏 * Auth 屏
* *
* 原始 Dart: lib/ui/auth/auth_screen.dart *
*/ */
import { useEffect, useSyncExternalStore } from "react"; import { useEffect, useSyncExternalStore } from "react";
import { useRouter } from "next/navigation"; import { useRouter } from "next/navigation";
+1 -1
View File
@@ -2,7 +2,7 @@
/** /**
* "OR" 分隔符 * "OR" 分隔符
* *
* 原始 Dart: lib/ui/auth/widgets/auth_divider.dart *
*/ */
import styles from "./auth-divider.module.css"; import styles from "./auth-divider.module.css";
@@ -1,4 +1,4 @@
/* 原始 Dart: lib/ui/auth/widgets/auth_email_panel.dart /*
* *
* 视觉规格(与 Dart 对齐): * 视觉规格(与 Dart 对齐):
* - 顶部:login 模式有 logo + 24px spacerregister 模式两个 24px spacer * - 顶部:login 模式有 logo + 24px spacerregister 模式两个 24px spacer
+1 -1
View File
@@ -2,7 +2,7 @@
/** /**
* Email 面板(login/register 内部切换) * Email 面板(login/register 内部切换)
* *
* 原始 Dart: lib/ui/auth/widgets/auth_email_panel.dart *
* *
* 视觉规格(与 Dart 对齐): * 视觉规格(与 Dart 对齐):
* - login 模式:顶部 24px spacer + logo120h + 24px gap * - login 模式:顶部 24px spacer + logo120h + 24px gap
@@ -1,4 +1,4 @@
/* 原始 Dart: lib/ui/auth/widgets/auth_error_message.dart /*
* *
* 视觉规格(与 Dart 对齐): * 视觉规格(与 Dart 对齐):
* - 细小红字,无背景,无圆角,无边框 * - 细小红字,无背景,无圆角,无边框
@@ -2,7 +2,7 @@
/** /**
* 错误消息展示 * 错误消息展示
* *
* 原始 Dart: lib/ui/auth/widgets/auth_error_message.dart *
*/ */
import styles from "./auth-error-message.module.css"; import styles from "./auth-error-message.module.css";
@@ -1,4 +1,4 @@
/* 原始 Dart: lib/ui/auth/widgets/auth_facebook_panel.dart /*
* *
* 视觉规格(与 Dart 对齐): * 视觉规格(与 Dart 对齐):
* - Spacer → logo120h)→ Spacer → Facebook 主按钮 → 链接 → Spacer → 法律 * - Spacer → logo120h)→ Spacer → Facebook 主按钮 → 链接 → Spacer → 法律
@@ -2,7 +2,7 @@
/** /**
* Facebook 面板(默认登录面板) * Facebook 面板(默认登录面板)
* *
* 原始 Dart: lib/ui/auth/widgets/auth_facebook_panel.dart *
* *
* 视觉规格(与 Dart 对齐): * 视觉规格(与 Dart 对齐):
* - Spacer → logo120h)→ Spacer → Facebook 主按钮 → 链接 → Spacer → 法律 * - Spacer → logo120h)→ Spacer → Facebook 主按钮 → 链接 → Spacer → 法律
@@ -1,4 +1,4 @@
/* 原始 Dart: lib/ui/auth/widgets/auth_legal_text.dart /*
* *
* 视觉规格(与 Dart 对齐): * 视觉规格(与 Dart 对齐):
* - 行:16px 白色圆形复选框 + 12px 富文本 * - 行:16px 白色圆形复选框 + 12px 富文本
+1 -1
View File
@@ -2,7 +2,7 @@
/** /**
* 法律声明(Terms / Privacy + 复选框) * 法律声明(Terms / Privacy + 复选框)
* *
* 原始 Dart: lib/ui/auth/widgets/auth_legal_text.dart *
* *
* 视觉规格(与 Dart 对齐): * 视觉规格(与 Dart 对齐):
* - 行:16px 白色圆形复选框 + 12px 富文本 * - 行:16px 白色圆形复选框 + 12px 富文本
@@ -1,4 +1,4 @@
/* 原始 Dart: lib/ui/auth/widgets/auth_other_options_dialog.dart /*
* *
* 视觉规格(与 Dart 对齐): * 视觉规格(与 Dart 对齐):
* - drag handle 40×4 灰胶囊 * - drag handle 40×4 灰胶囊
@@ -1,4 +1,4 @@
/* 原始 Dart: lib/ui/auth/widgets/auth_panel.dart /*
* *
* 视觉规格(与 Dart 对齐): * 视觉规格(与 Dart 对齐):
* - panelShell 包裹整个面板(position: relative * - panelShell 包裹整个面板(position: relative
@@ -1,4 +1,4 @@
/* 原始 Dart: lib/ui/auth/widgets/auth_primary_button.dart /*
* *
* 视觉规格(与 Dart 对齐): * 视觉规格(与 Dart 对齐):
* - 46px 高 * - 46px 高
@@ -2,7 +2,7 @@
/** /**
* 认证主按钮(粉渐变,46px * 认证主按钮(粉渐变,46px
* *
* 原始 Dart: lib/ui/auth/widgets/auth_primary_button.dart *
* *
* 视觉规格(与 Dart 对齐): * 视觉规格(与 Dart 对齐):
* - 46px 高 * - 46px 高
@@ -1,4 +1,4 @@
/* 原始 Dart: lib/ui/auth/widgets/auth_social_button.dart /*
* *
* 视觉规格(与 Dart 弹层按钮对齐): * 视觉规格(与 Dart 弹层按钮对齐):
* - 40px 高 * - 40px 高
@@ -2,7 +2,7 @@
/** /**
* 社交/选项登录按钮(用于底部弹层) * 社交/选项登录按钮(用于底部弹层)
* *
* 原始 Dart: lib/ui/auth/widgets/auth_social_button.dart *
* *
* 视觉规格(与 Dart 弹层按钮对齐): * 视觉规格(与 Dart 弹层按钮对齐):
* - 40px 高 * - 40px 高
@@ -2,7 +2,7 @@
/** /**
* 社交登录按钮组合 * 社交登录按钮组合
* *
* 原始 Dart: lib/ui/auth/widgets/auth_social_buttons.dart *
* *
* 包含 Facebook / Google / Apple 三个按钮的竖排列表。 * 包含 Facebook / Google / Apple 三个按钮的竖排列表。
*/ */
@@ -1,4 +1,4 @@
/* 原始 Dart: lib/ui/auth/widgets/auth_text_field.dart /*
* *
* 视觉规格(与 Dart 对齐): * 视觉规格(与 Dart 对齐):
* - 46px 高 * - 46px 高
+1 -1
View File
@@ -2,7 +2,7 @@
/** /**
* 通用文本输入框 * 通用文本输入框
* *
* 原始 Dart: lib/ui/auth/widgets/auth_text_field.dart *
*/ */
import { import {
type ChangeEvent, type ChangeEvent,
+1 -1
View File
@@ -1,7 +1,7 @@
/** /**
* 认证表单校验 * 认证表单校验
* *
* 原始 Dart: lib/ui/auth/widgets/auth_validators.dart *
* *
* 业务行为: * 业务行为:
* - validateEmail:使用 Zod (项目已有依赖) 校验邮箱格式 * - validateEmail:使用 Zod (项目已有依赖) 校验邮箱格式
@@ -1,6 +1,6 @@
/* 邮箱登录/注册表单样式 /* 邮箱登录/注册表单样式
* *
* 原始 Dart: lib/ui/auth/widgets/email_login_form.dart *
* *
* 视觉规格(与 Dart 对齐): * 视觉规格(与 Dart 对齐):
* - 字段间距 12pxDart AppSpacing.md * - 字段间距 12pxDart AppSpacing.md
@@ -2,7 +2,7 @@
/** /**
* 邮箱注册表单 * 邮箱注册表单
* *
* 原始 Dart: lib/ui/auth/widgets/email_register_form.dart *
* *
* 视觉规格(与 Dart 对齐): * 视觉规格(与 Dart 对齐):
* - 4 字段:username / email / password / confirmPassword(顺序与 Dart 一致) * - 4 字段:username / email / password / confirmPassword(顺序与 Dart 一致)
-1
View File
@@ -116,7 +116,6 @@ export function ChatScreen() {
return ( return (
<MobileShell> <MobileShell>
<div className={styles.shell}> <div className={styles.shell}>
{/* 背景图(与原 Dart MobileLayout 一致) */}
<div className={styles.background}> <div className={styles.background}>
<Image <Image
src="/images/chat/bg-chatpage.png" src="/images/chat/bg-chatpage.png"
@@ -2,7 +2,7 @@
/** /**
* AiDisclosureBanner AI 声明横幅 * AiDisclosureBanner AI 声明横幅
* *
* 原始 Dart: lib/ui/chat/widgets/ai_disclosure_banner.dart17 行) *
* *
* 视觉:居中灰色小字 "All content is generated by AI" * 视觉:居中灰色小字 "All content is generated by AI"
* 用途:位于聊天区顶部,声明 AI 生成内容(合规 / 法律要求) * 用途:位于聊天区顶部,声明 AI 生成内容(合规 / 法律要求)
@@ -2,7 +2,7 @@
/** /**
* BrowserHintOverlay 浏览器提示 * BrowserHintOverlay 浏览器提示
* *
* 原始 Dart: lib/ui/chat/widgets/browser_hint_overlay.dart76 行) *
* *
* 用途:在应用内浏览器(WebView、微信内置浏览器等)中显示提示, * 用途:在应用内浏览器(WebView、微信内置浏览器等)中显示提示,
* 引导用户使用外部浏览器访问。 * 引导用户使用外部浏览器访问。
@@ -2,7 +2,7 @@
/** /**
* ChatInputTextField 输入框 * ChatInputTextField 输入框
* *
* 原始 Dart: lib/ui/chat/widgets/chat_input_text_field.dart75 行) *
* *
* 行为: * 行为:
* - 多行输入(min 1 行 / max 5 行 ≈ max-height 120px * - 多行输入(min 1 行 / max 5 行 ≈ max-height 120px
+1 -1
View File
@@ -2,7 +2,7 @@
/** /**
* ChatSendButton 发送按钮 * ChatSendButton 发送按钮
* *
* 原始 Dart: lib/ui/chat/widgets/chat_send_button.dart37 行) *
* *
* 视觉: * 视觉:
* - 默认:粉色背景 + 渐变边缘 * - 默认:粉色背景 + 渐变边缘
+1 -1
View File
@@ -2,7 +2,7 @@
/** /**
* DateHeader 日期分隔条 * DateHeader 日期分隔条
* *
* 原始 Dart: lib/ui/chat/widgets/date_header.dart26 行) *
* *
* 视觉:居中灰色 chip"今天 14:32" / "昨天 09:15" / 具体日期) * 视觉:居中灰色 chip"今天 14:32" / "昨天 09:15" / 具体日期)
*/ */
@@ -2,7 +2,7 @@
/** /**
* FullscreenImageViewer 全屏图片查看器 * FullscreenImageViewer 全屏图片查看器
* *
* 原始 Dart: lib/ui/chat/widgets/fullscreen_image_viewer.dart76 行) *
* *
* 行为: * 行为:
* - 全屏黑色背景 + 图片居中(contain) * - 全屏黑色背景 + 图片居中(contain)
+1 -1
View File
@@ -2,7 +2,7 @@
/** /**
* LanguageDialog 语言切换弹窗 * LanguageDialog 语言切换弹窗
* *
* 原始 Dart: lib/ui/chat/widgets/language_dialog.dart222 行) *
* *
* 简化版:单语种列表选择(保留可扩展性) * 简化版:单语种列表选择(保留可扩展性)
* - 支持未来添加更多语言 * - 支持未来添加更多语言
@@ -2,7 +2,7 @@
/** /**
* LottieMessageBubble 动画消息气泡 * LottieMessageBubble 动画消息气泡
* *
* 原始 Dart: lib/ui/chat/widgets/lottie_message_bubble.dart51 行) *
* *
* 原始实现:使用 lottie SDK 渲染"打字指示器"动画 * 原始实现:使用 lottie SDK 渲染"打字指示器"动画
* 本轮实现:使用 CSS keyframes 模拟(无 lottie 依赖) * 本轮实现:使用 CSS keyframes 模拟(无 lottie 依赖)
+1 -1
View File
@@ -2,7 +2,7 @@
/** /**
* MessageBubble 消息气泡(容器) * MessageBubble 消息气泡(容器)
* *
* 原始 Dart: lib/ui/chat/widgets/message_bubble.dart52 行) *
* *
* 组成(从左到右): * 组成(从左到右):
* - AI[Avatar] [Content] [占位 spacer] * - AI[Avatar] [Content] [占位 spacer]
@@ -1,5 +1,5 @@
/* PwaInstallDialog PWA 安装弹窗样式 /* PwaInstallDialog PWA 安装弹窗样式
* 原始 Dart: lib/ui/chat/widgets/pwa_install_dialog.dart *
* 视觉规格:白底 + 大圆角 + 渐变按钮 + 86×86 图标 * 视觉规格:白底 + 大圆角 + 渐变按钮 + 86×86 图标
*/ */
@@ -2,7 +2,7 @@
/** /**
* PwaInstallDialog PWA 安装弹窗 * PwaInstallDialog PWA 安装弹窗
* *
* 原始 Dart: lib/ui/chat/widgets/pwa_install_dialog.dart145 行) *
* *
* 用途:引导用户将 Web App 安装到桌面 * 用途:引导用户将 Web App 安装到桌面
* 触发:由 PwaInstallOverlay 在延迟 3.5s 后自动显示 * 触发:由 PwaInstallOverlay 在延迟 3.5s 后自动显示
+1 -1
View File
@@ -2,7 +2,7 @@
/** /**
* TextBubble 文字气泡 * TextBubble 文字气泡
* *
* 原始 Dart: lib/ui/chat/widgets/text_bubble.dart41 行) *
* *
* 视觉差异: * 视觉差异:
* - AI 消息:白底黑字 + 左上角尖角 * - AI 消息:白底黑字 + 左上角尖角
+1 -1
View File
@@ -28,7 +28,7 @@ const VIP_SUBSCRIPTION_URL = `${ROUTES.subscription}?type=vip`;
* - member:已登录未购买 VIP * - member:已登录未购买 VIP
* - vip:已登录且购买 VIP * - vip:已登录且购买 VIP
* *
* 原始 Dart: lib/ui/sidebar/sidebar_screen.dart + profile_view.dart *
*/ */
export function SidebarScreen() { export function SidebarScreen() {
const router = useRouter(); const router = useRouter();
@@ -1,7 +1,7 @@
/** /**
* Splash 背景图片 * Splash 背景图片
* *
* 原始 Dart: lib/ui/splash/widgets/splash_background.dart *
* `SizedBox.expand(child: Assets.images.picBgHome.image(fit: BoxFit.cover))` * `SizedBox.expand(child: Assets.images.picBgHome.image(fit: BoxFit.cover))`
* 资源: /public/images/splash/pic-bg-home.png (kebab-case 重命名后) * 资源: /public/images/splash/pic-bg-home.png (kebab-case 重命名后)
* 原名: pic_bg_home.png (snake_case) * 原名: pic_bg_home.png (snake_case)
+1 -1
View File
@@ -1,7 +1,7 @@
/** /**
* Splash 加载状态 * Splash 加载状态
* *
* 原始 Dart: lib/ui/splash/widgets/splash_loading.dart *
* *
* 包装 `<LoadingIndicator>`splash 阶段可能用于等待 auth 检查。 * 包装 `<LoadingIndicator>`splash 阶段可能用于等待 auth 检查。
*/ */
@@ -1,7 +1,7 @@
/** /**
* Splash 进度条 * Splash 进度条
* *
* 原始 Dart: lib/ui/splash/widgets/splash_progress.dart *
* *
* 当前实现:简单 CSS 动画进度条,0 → 100% 1.5s。 * 当前实现:简单 CSS 动画进度条,0 → 100% 1.5s。
*/ */
+1 -1
View File
@@ -1,7 +1,7 @@
/** /**
* 响应式断点常量 * 响应式断点常量
* *
* 原始 Dart: lib/ui/core/responsive.dart *
* *
* 与 `src/design/breakpoints.css` 中的 CSS 变量保持一致: * 与 `src/design/breakpoints.css` 中的 CSS 变量保持一致:
* - 客户端运行时检查(matchMedia)通过 `useBreakpoint` hook * - 客户端运行时检查(matchMedia)通过 `useBreakpoint` hook
+1 -1
View File
@@ -2,7 +2,7 @@
* API 配置管理 * API 配置管理
* *
* 通过环境变量配置后端服务地址与超时时间。 * 通过环境变量配置后端服务地址与超时时间。
* 原始 Dart: lib/core/net/service_manager.dart *
*/ */
import { AppEnvUtil, type AppEnv } from "@/utils"; import { AppEnvUtil, type AppEnv } from "@/utils";
@@ -2,7 +2,7 @@
* 认证刷新拦截器 * 认证刷新拦截器
* *
* 处理 401 错误,自动刷新 token 并重试原请求。 * 处理 401 错误,自动刷新 token 并重试原请求。
* 原始 Dart: lib/core/net/interceptor/auth_interceptor.dart *
*/ */
import type { FetchHook } from "ofetch"; import type { FetchHook } from "ofetch";
import { ApiPath } from "../../../data/services/api/api_path"; import { ApiPath } from "../../../data/services/api/api_path";
@@ -2,7 +2,7 @@
* 日志拦截器 * 日志拦截器
* *
* 在开发模式下记录请求/响应/错误日志。 * 在开发模式下记录请求/响应/错误日志。
* 原始 Dart: lib/core/net/interceptor/app_interceptor.dart 中的日志部分。 *
*/ */
import type { FetchHook } from "ofetch"; import type { FetchHook } from "ofetch";
@@ -3,7 +3,7 @@
* *
* 在请求头中注入 Authorization: Bearer <token>。 * 在请求头中注入 Authorization: Bearer <token>。
* 跳过不需要 token 的路径(登录、注册、发送验证码、刷新等)。 * 跳过不需要 token 的路径(登录、注册、发送验证码、刷新等)。
* 原始 Dart: lib/core/net/interceptor/token_interceptor.dart + token_paths.dart *
*/ */
import type { FetchHook } from "ofetch"; import type { FetchHook } from "ofetch";
import { Logger } from "@/utils"; import { Logger } from "@/utils";
+1 -1
View File
@@ -1,7 +1,7 @@
/** /**
* 认证模式(登录 / 注册) * 认证模式(登录 / 注册)
* *
* 原始 Dart: lib/ui/auth/model/auth_mode.dart *
*/ */
export const AuthMode = { export const AuthMode = {
Login: "login", Login: "login",
+1 -1
View File
@@ -1,7 +1,7 @@
/** /**
* 认证面板模式(Facebook / Email * 认证面板模式(Facebook / Email
* *
* 原始 Dart: lib/ui/auth/model/auth_panel_mode.dart *
*/ */
export const AuthPanelMode = { export const AuthPanelMode = {
Facebook: "facebook", Facebook: "facebook",
+1 -1
View File
@@ -1,7 +1,7 @@
/** /**
* Facebook 用户数据 DTO * Facebook 用户数据 DTO
* *
* 原始 Dart: FacebookUserData (lib/data/services/auth/auth_platform.dart) *
*/ */
import { import {
FacebookUserDataSchema, FacebookUserDataSchema,
+1 -1
View File
@@ -1,7 +1,7 @@
/** /**
* 聊天列表项 discriminated union * 聊天列表项 discriminated union
* *
* 原始 Dart: lib/ui/chat/models/chat_list_item.dart *
* *
* 4 种类型: * 4 种类型:
* - ai-disclosure:顶部 AI 披露横幅 * - ai-disclosure:顶部 AI 披露横幅
+1 -1
View File
@@ -1,7 +1,7 @@
/** /**
* 聊天 UI 消息模型 * 聊天 UI 消息模型
* *
* 原始 Dart: lib/ui/chat/models/message.dartfreezed + json_serializable 生成) *
* *
* 字段:content、isFromAI、date、imageUrl(可选)、audioUrl(可选) * 字段:content、isFromAI、date、imageUrl(可选)、audioUrl(可选)
*/ */
+1 -1
View File
@@ -1,7 +1,7 @@
/** /**
* UI 侧用户模型(基于 data/dto/user/user + user_storage 重新导出 view-model * UI 侧用户模型(基于 data/dto/user/user + user_storage 重新导出 view-model
* *
* 原始 Dart: lib/data/models/user/user.dart *
*/ */
import { z } from "zod"; import { z } from "zod";
+1 -1
View File
@@ -10,7 +10,7 @@
* - `getCurrentUser` 成功后尽力写本地 User 缓存(不因缓存失败影响主流程) * - `getCurrentUser` 成功后尽力写本地 User 缓存(不因缓存失败影响主流程)
* - 写 storage 失败用 `Logger.warn` 记录,不让本地缓存失败影响主流程 * - 写 storage 失败用 `Logger.warn` 记录,不让本地缓存失败影响主流程
* *
* 原始 Dart: lib/data/repositories/auth_repository_impl.dart *
*/ */
import { AuthApi, authApi } from "@/data/services/api"; import { AuthApi, authApi } from "@/data/services/api";
import { import {
@@ -10,7 +10,7 @@
* - `Promise<Result<T>>` Dart `Future<Result<T>>` * - `Promise<Result<T>>` Dart `Future<Result<T>>`
* *
* `_socialLogin` / `_saveLoginData` * `_socialLogin` / `_saveLoginData`
* Dart: lib/data/repositories/auth_repository_impl.dart *
*/ */
import type { Result } from "@/utils"; import type { Result } from "@/utils";
@@ -8,7 +8,7 @@
* - / / / / * - / / / /
* *
* `_chatToLocal` / `_localToChat` / `_mapLocalStorageResult` * `_chatToLocal` / `_localToChat` / `_mapLocalStorageResult`
* Dart: lib/data/repositories/chat_repository_impl.dart *
*/ */
import type { Result } from "@/utils"; import type { Result } from "@/utils";
@@ -6,7 +6,7 @@
* Dart `MetricsRepository` lib/data/repositories/metrics_repository.dart * Dart `MetricsRepository` lib/data/repositories/metrics_repository.dart
* - fire-and-forget * - fire-and-forget
* *
* Dart: lib/data/repositories/metrics_repository_impl.dart *
*/ */
import type { Result } from "@/utils"; import type { Result } from "@/utils";
@@ -6,7 +6,7 @@
* Dart `UserRepository` lib/data/repositories/user_repository.dart * Dart `UserRepository` lib/data/repositories/user_repository.dart
* - storage AuthRepository * - storage AuthRepository
* *
* Dart: lib/data/repositories/user_repository_impl.dart *
*/ */
import type { Result } from "@/utils"; import type { Result } from "@/utils";
@@ -4,8 +4,6 @@
* MetricsRepository * MetricsRepository
* *
* / fire-and-forget * / fire-and-forget
*
* Dart: lib/data/repositories/metrics_repository_impl.dart
*/ */
import { MetricsApi, metricsApi } from "@/data/services/api"; import { MetricsApi, metricsApi } from "@/data/services/api";
import { AppEvent, PwaEvent } from "@/data/dto/metrics"; import { AppEvent, PwaEvent } from "@/data/dto/metrics";
-9
View File
@@ -1,13 +1,4 @@
"use client"; "use client";
/**
* UserRepository
*
* storage
* AuthRepository
*
* Dart: lib/data/repositories/user_repository_impl.dart
*/
import { UserApi, userApi } from "@/data/services/api"; import { UserApi, userApi } from "@/data/services/api";
import { import {
CreditsData, CreditsData,
+1 -1
View File
@@ -1,6 +1,6 @@
/** /**
* Apple * Apple
* Dart: AppleLoginRequest (lib/data/models/auth/auth_request.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
@@ -1,6 +1,6 @@
/** /**
* Facebook * Facebook
* Dart: FacebookLoginRequest (lib/data/models/auth/auth_request.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
+1 -1
View File
@@ -1,6 +1,6 @@
/** /**
* Facebook schema * Facebook schema
* Dart: FacebookUserData (lib/data/services/auth/auth_platform.dart) *
* *
* Dart `String?` `null` * Dart `String?` `null`
*/ */
+1 -1
View File
@@ -1,6 +1,6 @@
/** /**
* Facebook ID * Facebook ID
* Dart: FbIdLoginRequest (lib/data/models/auth/auth_request.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
@@ -1,6 +1,6 @@
/** /**
* Google * Google
* Dart: GoogleLoginRequest (lib/data/models/auth/auth_request.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
+1 -1
View File
@@ -1,6 +1,6 @@
/** /**
* *
* Dart: GuestLoginRequest (lib/data/models/auth/auth_request.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
@@ -1,6 +1,6 @@
/** /**
* *
* Dart: GuestLoginResponse (lib/data/models/auth/auth_response.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
import { UserSchema } from "../user/user"; import { UserSchema } from "../user/user";
+1 -1
View File
@@ -1,6 +1,6 @@
/** /**
* *
* Dart: LoginRequest (lib/data/models/auth/auth_request.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
+1 -1
View File
@@ -1,6 +1,6 @@
/** /**
* *
* Dart: LoginResponse (lib/data/models/auth/auth_response.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
import { UserSchema } from "../user/user"; import { UserSchema } from "../user/user";
+1 -1
View File
@@ -1,6 +1,6 @@
/** /**
* 退 * 退
* Dart: LogoutResponse (lib/data/models/auth/auth_response.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
@@ -1,6 +1,6 @@
/** /**
* Token * Token
* Dart: RefreshTokenRequest (lib/data/models/auth/auth_request.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
@@ -1,6 +1,6 @@
/** /**
* Token * Token
* Dart: RefreshTokenResponse (lib/data/models/auth/auth_response.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
+1 -1
View File
@@ -1,6 +1,6 @@
/** /**
* *
* Dart: RegisterRequest (lib/data/models/auth/auth_request.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
+1 -1
View File
@@ -1,6 +1,6 @@
/** /**
* *
* Dart: SendCodeRequest (lib/data/models/auth/auth_request.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
@@ -1,6 +1,6 @@
/** /**
* *
* Dart: ChatHistoryResponse (lib/data/models/chat/chat_response.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
import { ChatMessageSchema } from "./chat_message"; import { ChatMessageSchema } from "./chat_message";
+1 -1
View File
@@ -1,6 +1,6 @@
/** /**
* *
* Dart: ChatMessage (lib/data/models/chat/chat_response.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
import { ChatImageSchema, ChatLockDetailSchema } from "./chat_payloads"; import { ChatImageSchema, ChatLockDetailSchema } from "./chat_payloads";
+1 -1
View File
@@ -1,6 +1,6 @@
/** /**
* *
* Dart: ChatSendResponse (lib/data/models/chat/chat_response.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
import { ChatImageSchema, ChatLockDetailSchema } from "./chat_payloads"; import { ChatImageSchema, ChatLockDetailSchema } from "./chat_payloads";
+1 -1
View File
@@ -1,6 +1,6 @@
/** /**
* *
* Dart: ChatSyncData (lib/data/models/chat/chat_sync.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
+1 -1
View File
@@ -1,6 +1,6 @@
/** /**
* *
* Dart: ChatSyncRequest (lib/data/models/chat/chat_sync.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
import { SyncMessageSchema } from "./sync_message"; import { SyncMessageSchema } from "./sync_message";
@@ -1,6 +1,6 @@
/** /**
* *
* Dart: ImageUploadResponse (lib/data/models/chat/image_upload_response.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
@@ -1,6 +1,6 @@
/** /**
* *
* Dart: SendMessageRequest (lib/data/models/chat/send_message_request.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
+1 -1
View File
@@ -1,6 +1,6 @@
/** /**
* STT * STT
* Dart: SttData (lib/data/models/chat/stt_response.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
+1 -1
View File
@@ -1,6 +1,6 @@
/** /**
* *
* Dart: SyncMessage (lib/data/models/chat/chat_sync.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
+1 -1
View File
@@ -1,6 +1,6 @@
/** /**
* *
* Dart: AppEvent (lib/data/models/metrics/app_event.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
+1 -1
View File
@@ -1,6 +1,6 @@
/** /**
* PWA * PWA
* Dart: PwaEvent (lib/data/models/metrics/pwa_event.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
+1 -1
View File
@@ -1,6 +1,6 @@
/** /**
* *
* Dart: AvatarData (lib/data/models/user/user.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
+1 -1
View File
@@ -1,6 +1,6 @@
/** /**
* *
* Dart: CreditsData (lib/data/models/user/user.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
@@ -1,6 +1,6 @@
/** /**
* *
* Dart: CreditsHistoryData (lib/data/models/user/user.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
+1 -1
View File
@@ -1,6 +1,6 @@
/** /**
* *
* Dart: PersonalityTraits (lib/data/models/user/user.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
+1 -1
View File
@@ -1,6 +1,6 @@
/** /**
* *
* Dart: RecentMemory (lib/data/models/user/recent_memory.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
@@ -1,6 +1,6 @@
/** /**
* *
* Dart: UpdateProfileRequest (lib/data/models/user/user.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
+1 -1
View File
@@ -1,6 +1,6 @@
/** /**
* *
* Dart: User (lib/data/models/user/user.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
import { PersonalityTraitsSchema, PERSONALITY_TRAITS_DEFAULTS } from "./personality_traits"; import { PersonalityTraitsSchema, PERSONALITY_TRAITS_DEFAULTS } from "./personality_traits";
+1 -1
View File
@@ -1,6 +1,6 @@
/** /**
* *
* Dart: UserStatsResponse (lib/data/models/user/user_stats_response.dart) *
*/ */
import { z } from "zod"; import { z } from "zod";
import { PersonalityTraitsSchema, PERSONALITY_TRAITS_DEFAULTS } from "./personality_traits"; import { PersonalityTraitsSchema, PERSONALITY_TRAITS_DEFAULTS } from "./personality_traits";
+1 -1
View File
@@ -1,7 +1,7 @@
/** /**
* API * API
* *
* Dart: lib/data/services/api/api_path.dart *
*/ */
export class ApiPath { export class ApiPath {
private constructor() {} private constructor() {}
+1 -1
View File
@@ -2,7 +2,7 @@
* Auth API * Auth API
* *
* *
* Dart: lib/data/services/api/auth_api_client.dart *
*/ */
import { z } from "zod"; import { z } from "zod";
+1 -1
View File
@@ -2,7 +2,7 @@
* Chat API * Chat API
* *
* *
* Dart: lib/data/services/api/chat_api_client.dart *
*/ */
import { httpClient } from "./http_client"; import { httpClient } from "./http_client";
import { ApiPath } from "./api_path"; import { ApiPath } from "./api_path";
+1 -1
View File
@@ -2,7 +2,7 @@
* HTTP * HTTP
* *
* ofetch * ofetch
* Dart: lib/core/net/backend_service.dart *
*/ */
import { ofetch, type $Fetch, type FetchHook } from "ofetch"; import { ofetch, type $Fetch, type FetchHook } from "ofetch";
import { ApiError, ErrorCode } from "./api_result"; import { ApiError, ErrorCode } from "./api_result";

Some files were not shown because too many files have changed in this diff Show More