import * as fs from "fs";
import * as crypto from "crypto";
import client from "../client.js";
import * as path from "path";
import {fileURLToPath} from "url";
const __filename = fileURLToPath(import.meta.url);
const __dirname = path.dirname(__filename);

export default function generateFileName(ending: string): string {
    let fileName = crypto.randomBytes(35).toString("hex");
    fileName = fileName.replace(/([a-zA-Z0-9]{8})/g, "$1-");
    if (fs.existsSync(`./${fileName}`)) {
        fileName = generateFileName(ending);
    }
    client.database.eventScheduler.schedule("deleteFile", new Date().getTime() + (60 * 1000), {fileName: `${fileName}.${ending}`});
    return path.join(__dirname, fileName + "." + ending);
}
