// /pages/api/cpl/kueSingleModuleUpdateMock.ts
import type { NextApiRequest, NextApiResponse } from "next";
import fs from "fs";
import path from "path";

// Hilfsfunktion für künstliche Verzögerung
const delay = (ms: number) => new Promise((resolve) => setTimeout(resolve, ms));

export default async function handler(
  req: NextApiRequest,
  res: NextApiResponse
) {
  const filePath = path.join(
    process.cwd(),
    "mocks/device-cgi-simulator/firmwareUpdate/singleModuleUpdateResponse.json"
  );

  try {
    // ⏱️ 10 Sekunden warten
    await delay(25000); // 5 Minuten simulieren (300.000 ms)

    const fileContents = fs.readFileSync(filePath, "utf-8");
    const responseData = JSON.parse(fileContents);

    const slot = req.query.slot ?? "X";
    responseData.message = `Update erfolgreich gestartet für Slot ${slot}`;

    res.status(200).json(responseData);
  } catch (error) {
    console.error("Fehler beim Lesen der Mock-Datei:", error);
    res.status(500).json({ error: "Fehler beim Mock-Update" });
  }
}
