singularity-forge/web/pages/api/login.ts
2026-05-17 20:07:36 +02:00

20 lines
735 B
TypeScript

import type { NextApiRequest, NextApiResponse } from "next";
const USERNAME = process.env.SF_WEB_USERNAME;
const PASSWORD = process.env.SF_WEB_PASSWORD || "devpass";
const TOKEN = process.env.SF_WEB_AUTH_TOKEN || "dev-token";
function isValidUsername(username: unknown): boolean {
if (!USERNAME) return true;
return typeof username === "string" && username === USERNAME;
}
export default function handler(req: NextApiRequest, res: NextApiResponse) {
if (req.method !== "POST") return res.status(405).end();
const { password, username } = req.body ?? {};
if (isValidUsername(username) && password === PASSWORD) {
res.status(200).json({ token: TOKEN });
} else {
res.status(401).json({ error: "Invalid credentials" });
}
}