blob: 956f1d7e9522c8ba7553a04aa8648a6e4e1e3032 [file] [log] [blame]
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);
}