import { NextResponse } from "next/server";
import { isConvexEnabled } from "@/lib/convex/enabled";
import { isDevAuthEnabled } from "@/lib/auth/devUser";

interface SignInRequest {
  email: string;
  password: string;
  name?: string;
  flow: "signIn" | "signUp";
}

/**
 * POST /api/auth/signin
 *
 * 处理登录/注册请求
 * - 在 Convex 模式下调用 Convex mutation
 * - 在 Supabase 模式下调用 Supabase Auth
 */
export async function POST(request: Request) {
  // Convex 模式
  if (isConvexEnabled()) {
    try {
      await request.json().catch(() => null);

      // 说明：当前项目默认使用开发用户鉴权（USE_CONVEX=1），无需走登录/注册。
      if (isDevAuthEnabled()) {
        return NextResponse.json({ ok: true, mode: "dev_user" });
      }

      return NextResponse.json({ error: "Convex Auth 登录/注册尚未接入" }, { status: 501 });
    } catch (error) {
      console.error("Convex Auth error:", error);
      return NextResponse.json(
        { error: "服务器错误" },
        { status: 500 }
      );
    }
  }

  return NextResponse.json({ error: "仅支持 Convex 模式" }, { status: 501 });
}
