refactor: relocate components to app directory structure

This commit is contained in:
2026-06-09 14:43:10 +08:00
parent f060301c24
commit cda55c8f9b
61 changed files with 19 additions and 27 deletions
@@ -0,0 +1,47 @@
"use client";
/**
* Email 面板
*
* 原始 Dart: lib/ui/auth/widgets/auth_email_panel.dart
*
* 行为:
* - 内部 `authMode`login/register)切换显示 Login / Register 表单
* - 提交派发 `AuthEmailLoginSubmitted` 或 `AuthEmailRegisterSubmitted`
*/
import { useState } from "react";
import { useAuthState } from "@/contexts/auth/auth-context";
import { EmailLoginForm } from "./email-login-form";
import { EmailRegisterForm } from "./email-register-form";
import styles from "./auth-email-panel.module.css";
export interface AuthEmailPanelProps {
onBack: () => void;
}
export function AuthEmailPanel({ onBack }: AuthEmailPanelProps) {
const state = useAuthState();
const [mode, setMode] = useState<"login" | "register">("login");
return (
<div className={styles.panel}>
<button type="button" className={styles.backButton} onClick={onBack}>
Back
</button>
{mode === "login" ? (
<EmailLoginForm
onSwitchToRegister={() => setMode("register")}
globalError={state.errorMessage}
isLoading={state.isLoading}
/>
) : (
<EmailRegisterForm
onSwitchToLogin={() => setMode("login")}
globalError={state.errorMessage}
isLoading={state.isLoading}
/>
)}
</div>
);
}